.document-vault,.vault-summary{margin:18px 0;padding:24px;border:1px solid #aac1ba;border-radius:18px;background:linear-gradient(140deg,#f3faf7,#fff);color:#17384a;box-shadow:0 10px 25px rgba(16,55,65,.08)}
.vault-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:22px;align-items:center}.vault-hero :is(h2,p),.vault-summary :is(h3,p){margin:0}.vault-hero h2{margin:.25rem 0;font-size:clamp(1.55rem,3vw,2.3rem)}.vault-hero>div:first-child>p:last-child{max-width:680px;color:#58717a}
.vault-readiness{display:grid;grid-template-columns:repeat(2,140px);gap:9px}.vault-readiness article{display:grid;gap:6px;padding:14px;border-radius:11px;background:#fff;border:1px solid #d5b15b}.vault-readiness article.ready{border-color:#458779;background:#f1faf6}.vault-readiness span{font-size:.72rem;font-weight:900;text-transform:uppercase}.vault-readiness strong{font-size:1.8rem}
.vault-required-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:18px 0}.vault-required{display:grid;gap:4px;padding:13px;border:1px solid #d6c27f;border-radius:9px;background:#fff9e6}.vault-required.ready{border-color:#77a997;background:#eff9f5}.vault-required span{font-size:.68rem;font-weight:900;text-transform:uppercase;color:#8b1d23}.vault-required.ready span{color:#176c57}.vault-required small{color:#58717a}
.vault-upload{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;padding:16px;border-radius:12px;background:#103f4b}.vault-upload label,.vault-toolbar label{display:grid;gap:5px;color:#fff;font-size:.7rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.vault-upload :is(input,select),.vault-toolbar input{min-height:42px;padding:0 10px;border:1px solid #a9c4c4;border-radius:7px;background:#fff;color:#17384a;font:700 .86rem Manrope,sans-serif}.vault-upload .vault-file{grid-column:span 2}.vault-upload input[type=file]{padding:8px}.vault-upload button{align-self:end;min-height:42px;border:0;border-radius:7px;background:#f6c85f;color:#172536;font-weight:900;cursor:pointer}
.vault-toolbar{display:flex;justify-content:space-between;gap:16px;align-items:end;margin:18px 0 10px}.vault-toolbar label{color:#294555;min-width:min(360px,100%)}.vault-toolbar p{margin:0;color:#58717a;font-size:.85rem}.vault-list{display:grid;gap:8px}.vault-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;padding:13px;border:1px solid #c8d9d5;border-radius:10px;background:#fff}.vault-row.alert{border-left:5px solid #aa4135;background:#fff8f6}.vault-row>div:first-child{display:grid;gap:3px}.vault-row span{color:#8b1d23;font-size:.7rem;font-weight:900;text-transform:uppercase}.vault-row small{color:#58717a}.vault-row>div:last-child{display:flex;gap:6px}.vault-row button,.vault-summary>a{display:inline-flex;min-height:36px;align-items:center;padding:0 11px;border:1px solid #7e9d98;border-radius:7px;background:#edf5f2;color:#174d59;font-weight:900;text-decoration:none;cursor:pointer}.vault-row button.danger{background:#fff;color:#963f32}.vault-empty,.vault-disclaimer,.vault-status{color:#58717a;font-size:.8rem}.vault-status{min-height:1.2em;font-weight:900}.vault-status.error{color:#963f32}
.vault-summary{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:18px;align-items:center}.vault-summary-scores{display:flex;gap:7px}.vault-summary-scores span{display:grid;gap:2px;padding:9px 12px;border-radius:8px;background:#fff7df;color:#785b15;font-size:.74rem;font-weight:900}.vault-summary-scores span.ready{background:#edf8f3;color:#176c57}.vault-summary>a{background:#9b1c1c;color:#fff;border-color:#9b1c1c}.vault-summary .vault-status{grid-column:1/-1;margin:0}
@media(max-width:820px){.vault-hero,.vault-summary{grid-template-columns:1fr}.vault-readiness{grid-template-columns:repeat(2,minmax(0,1fr))}.vault-required-grid,.vault-upload{grid-template-columns:repeat(2,minmax(0,1fr))}.vault-summary-scores{justify-content:start}}
@media(max-width:520px){.document-vault,.vault-summary{padding:17px}.vault-required-grid,.vault-upload{grid-template-columns:1fr}.vault-upload .vault-file{grid-column:auto}.vault-toolbar{align-items:start;flex-direction:column}.vault-row{grid-template-columns:1fr}.vault-row>div:last-child{display:grid;grid-template-columns:repeat(3,1fr)}.vault-readiness{grid-template-columns:1fr 1fr}}
