:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#10213a;background:#f3f6f9;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button,a{touch-action:manipulation}a{color:inherit}.topbar{height:62px;background:#061b34;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(16px,3vw,42px)}.brand{display:flex;align-items:center;gap:12px;font-size:17px}.brand-icon,.sign-in-icon{display:grid;place-items:center;background:#203953;border-radius:9px;color:#fff;font-size:25px;font-weight:700;width:34px;height:34px}.header-user{display:flex;align-items:center;gap:20px;font-size:13px;color:#c2d0e4}.header-user a{text-decoration:none;color:#fff}.app{max-width:1540px;margin:0 auto;padding:26px clamp(14px,2.8vw,42px) 55px}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:22px}.page-heading h1{font-size:clamp(26px,3vw,34px);line-height:1.16;margin:2px 0 8px;letter-spacing:-.025em}.page-heading p:not(.eyebrow){color:#63758d;margin:0}.eyebrow{font-size:11px;font-weight:800;letter-spacing:.13em;color:#3771d3;margin:0 0 8px}.progress-card{min-width:150px;padding:16px 18px;background:#fff;border:1px solid #dbe2eb;box-shadow:0 1px 4px #0b294011;border-radius:12px;display:flex;flex-direction:column;gap:4px}.progress-card strong{font-size:22px}.progress-card span{font-size:12px;color:#65778f}.progress-track{height:7px;background:#e6edf5;border-radius:10px;margin-top:7px;overflow:hidden}.progress-track div{height:100%;width:0;background:#3182ed;transition:width .25s}.upload-zone{background:#fff;border:2px dashed #cbd9ec;border-radius:15px;min-height:178px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px;cursor:pointer;transition:background .15s,border-color .15s}.upload-zone:hover,.upload-zone.dragging,.upload-zone:focus-visible{border-color:#478afa;background:#f8fbff;outline:none}.upload-zone.busy{opacity:.6;pointer-events:none}.upload-symbol{width:43px;height:43px;display:grid;place-items:center;border-radius:50%;background:#eaf2ff;color:#2774ec;font-size:30px;font-weight:700;margin-bottom:10px}.upload-zone h2{font-size:17px;margin:0 0 5px}.upload-zone p{font-size:14px;color:#64748b;margin:0}.file-chips{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin-top:16px}.file-chips span,.code-chip{font-size:10px;font-weight:800;letter-spacing:.02em;color:#2665dd;background:#eaf1ff;border-radius:4px;padding:4px 6px}.file-chips span{background:#f1f4f8;color:#74849a}.notice{margin:16px 0;padding:12px 15px;border-radius:8px;background:#e8f6ed;border:1px solid #b5e0c4;color:#145a2b;font-size:14px}.notice.error{background:#fff0ee;border-color:#f2c4bd;color:#9b2c22}.reports-section{margin-top:29px}.section-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;gap:10px}.section-heading h2{font-size:19px;margin:0}.section-heading span{font-size:12px;color:#687b93}.report-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.report-card{background:#fff;border:1px solid #d8e0e9;border-radius:10px;box-shadow:0 1px 3px #173d5e16;padding:15px;display:flex;flex-direction:column;min-height:224px}.card-top{display:flex;align-items:center;justify-content:space-between;gap:6px}.badge{font-size:11px;font-weight:700;border-radius:99px;padding:4px 8px;background:#fff4cc;color:#9c6500;white-space:nowrap}.badge.current{background:#dff7e7;color:#16743b}.badge.old{background:#e9eef5;color:#53657a}.report-card h3{font-size:15px;line-height:1.3;margin:9px 0 4px}.qb-path{font-size:11px;color:#687b93;line-height:1.35;margin:0 0 10px;min-height:30px}.use-tags{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:11px}.use-tags span{font-size:10px;color:#6148cc;background:#f0ecff;border-radius:3px;padding:3px 6px}.meta{background:#f6f8fa;border-radius:6px;padding:8px 10px;display:grid;gap:5px;font-size:11px;margin-top:auto}.meta div{display:flex;justify-content:space-between;gap:8px}.meta span{color:#65768b}.meta strong{font-weight:600;text-align:right}.card-actions{display:flex;gap:8px;margin-top:10px}.upload-one{background:#fff;border:1px dashed #c8d4e2;border-radius:6px;flex:1;color:#526a87;padding:8px 10px;cursor:pointer;font-size:12px}.upload-one:hover{border-color:#3781ec;color:#1f68cf}.download-one{border:1px solid #d6e2ee;border-radius:6px;padding:8px;text-decoration:none;color:#2365bd;font-size:12px}.shortfalls-panel{margin-top:26px;padding:22px;background:#fff;border:1px solid #d8e0e9;border-radius:12px;display:grid;grid-template-columns:1fr auto;gap:12px 20px;align-items:center}.shortfalls-panel h2{margin:0 0 5px}.shortfalls-panel p:not(.eyebrow){color:#64748b;font-size:13px;margin:0}.shortfalls-actions{display:flex;gap:9px}.primary-button,.secondary-button{border-radius:8px;padding:11px 15px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.primary-button{background:#256ee7;color:#fff;border:1px solid #256ee7}.primary-button:hover{background:#145bd0}.secondary-button{background:#fff;color:#29537b;border:1px solid #c9d8e9}.secondary-button:hover{background:#f4f8fd}.shortfalls-result{grid-column:1/-1}.sign-in{min-height:calc(100vh - 62px);display:grid;place-items:center;padding:25px}.sign-in-card{background:#fff;border:1px solid #d9e2ec;border-radius:16px;box-shadow:0 12px 36px #0b294012;max-width:440px;padding:39px;text-align:center}.sign-in-icon{width:50px;height:50px;margin:0 auto 16px;font-size:35px;background:#256ee7}.sign-in-card h1{margin:0 0 9px}.sign-in-card p{color:#64748b;line-height:1.5;margin:0 0 25px}.sign-in-card a{width:100%}[hidden]{display:none!important}@media(max-width:1050px){.report-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.topbar{height:56px}.app{padding-top:18px}.page-heading{align-items:flex-start}.progress-card{min-width:110px;padding:10px}.progress-card strong{font-size:17px}.page-heading h1{font-size:25px}.report-grid{grid-template-columns:1fr}.shortfalls-panel{grid-template-columns:1fr}.shortfalls-actions{flex-wrap:wrap}.upload-zone{min-height:160px}.file-chips{display:none}}
#post-upload-dialog{border:0;border-radius:16px;max-width:430px;width:calc(100% - 32px);padding:0;box-shadow:0 24px 72px #061b3455;color:#10213a}#post-upload-dialog::backdrop{background:#061b3488}.post-upload-content{padding:25px}.post-upload-content h2{margin:0 0 9px;font-size:22px}.post-upload-content p:not(.eyebrow){font-size:13px;line-height:1.5;color:#53657a;margin:0 0 18px}.post-upload-actions{display:grid;gap:9px}.post-upload-actions>*{width:100%;min-height:40px}.post-upload-close{display:block;margin:17px auto 0;border:0;background:transparent;color:#526a87;cursor:pointer;font-size:13px}
@media(min-width:1100px){.topbar{height:52px}.app{padding-top:12px;padding-bottom:20px}.page-heading{margin-bottom:10px}.page-heading h1{font-size:24px;margin:0 0 3px}.page-heading p:not(.eyebrow){font-size:12px}.eyebrow{font-size:10px;margin:0 0 3px}.progress-card{padding:8px 12px;min-width:120px}.progress-card strong{font-size:18px}.progress-card span{font-size:10px}.progress-track{margin-top:3px;height:5px}.upload-zone{min-height:112px;padding:10px 14px}.upload-symbol{height:25px;width:25px;font-size:17px;margin-bottom:3px}.upload-zone h2{font-size:14px;margin-bottom:2px}.upload-zone p{font-size:11px}.file-chips{margin-top:7px}.file-chips span{font-size:9px;padding:2px 4px}.notice{margin:8px 0;padding:6px 10px;font-size:12px}.reports-section{margin-top:12px}.section-heading{margin-bottom:6px}.section-heading h2{font-size:15px}.report-grid{gap:8px}.report-card{padding:8px 10px;min-height:0}.badge{font-size:9px;padding:2px 6px}.report-card h3{font-size:12px;margin:5px 0 2px;line-height:1.2}.qb-path{font-size:9px;margin:0 0 4px;min-height:0;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.use-tags{margin-bottom:5px;gap:3px}.use-tags span{font-size:9px;padding:2px 4px}.meta{padding:5px 7px;gap:3px;font-size:10px}.card-actions{margin-top:5px}.upload-one,.download-one{font-size:10px;padding:4px 7px}.shortfalls-panel{margin-top:12px;padding:14px}}
