*{box-sizing:border-box}html{scroll-behavior:auto;scroll-padding-top:6rem}body{margin:0;background:#f4f6f8;color:#162839;font:16px/1.55 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:#176b70}button,input,textarea,select{font:inherit}button,.download{border:1px solid #166b70;border-radius:8px;background:#166b70;color:white;padding:.65rem 1rem;cursor:pointer;font-weight:600;min-height:44px;text-decoration:none}button:hover,.download:hover{background:#10575c}button:disabled{opacity:.55;cursor:wait}.secondary{background:white;color:#175d64;border-color:#bccdd0}.secondary:hover{background:#edf5f4}.danger{color:#9b3b27;background:#fff6f2;border-color:#d7aa9e}.danger:hover{background:#fde9df}:focus-visible{outline:3px solid #bd7d18;outline-offset:3px}input,select,textarea{display:block;width:100%;min-width:0;border:1px solid #b7c4cb;border-radius:7px;padding:.6rem;background:white;color:#162839}label{display:block;font-size:.875rem;font-weight:600}label input,label textarea,label select{margin-top:.3rem}textarea{resize:vertical}h1,h2,h3,p{margin:0 0 .8rem}h1{font-size:clamp(1.8rem,4vw,2.5rem);line-height:1.15;letter-spacing:-.035em}h2{font-size:1.35rem;line-height:1.3}h3{font-size:1.05rem}.topbar{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 2rem;background:#102738;color:white;border-bottom:3px solid #238488}.brand{display:flex;align-items:center;gap:.6rem;color:white;text-decoration:none;font-size:1.15rem;font-weight:700;flex-wrap:wrap}.mark{display:grid;place-items:center;border:1px solid #65a8a4;border-radius:8px;width:32px;height:32px;color:#8ad1c2}.brand-note{font-size:.8rem;font-weight:400;color:#bdd1dc;margin-left:1rem}.pill{font-size:.75rem;border:1px solid #476b74;border-radius:99px;padding:.35rem .6rem;white-space:normal}.layout{display:grid;grid-template-columns:220px minmax(0,1fr);max-width:1480px;margin:auto}.sidebar{padding:2.2rem 1.5rem;border-right:1px solid #dce3e7}.eyebrow{font-size:.7rem;font-weight:750;letter-spacing:.12em;color:#486776;margin-bottom:.55rem}nav a{display:flex;gap:1rem;margin:.4rem 0;padding:.65rem 0;text-decoration:none;color:#526977;font-size:.8rem}nav a span{font-size:.9rem;font-weight:600;color:#182f40}.session-note{border-top:1px solid #d4dfe4;margin-top:2rem;padding-top:1.5rem;font-size:.8rem;color:#536c79}.session-note strong{color:#1b3948}main{padding:2.3rem clamp(1rem,3vw,3rem);min-width:0}.intro{margin-bottom:1.5rem}.intro>p:last-child{max-width:660px;color:#506779}.warning{border:1px solid #e1c58e;background:#fffbef;border-radius:10px;padding:1rem 1.2rem;font-size:.875rem;margin-bottom:1.3rem}.panel{background:white;border:1px solid #dce3e8;border-radius:12px;padding:1.4rem;margin:1.2rem 0;box-shadow:0 2px 8px #18384704;min-width:0}.section-head{display:flex;justify-content:space-between;align-items:start;flex-wrap:wrap;gap:1rem;margin-bottom:1rem}.period{display:flex;gap:.65rem;align-items:end;flex-wrap:wrap}.period label{max-width:190px}.muted{font-size:.8rem;color:#55707e}.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;margin:1rem 0}.stat{padding:1rem;border:1px solid #deeaec;border-radius:9px;background:#f8fbfb}.stat strong{display:block;font-size:clamp(1.1rem,2vw,1.55rem);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.stat span{font-size:.78rem;color:#466b76}.category-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.4rem 1rem;margin:1rem 0}.category-list p{font-size:.85rem;overflow-wrap:anywhere}details>summary{cursor:pointer;color:#205e68;font-weight:600;padding:.5rem 0;min-height:44px}details[open]>summary{margin-bottom:.5rem}.file-form{display:flex;gap:1rem;align-items:end;flex-wrap:wrap}.file-form label{flex:1;min-width:min(100%,220px)}input[type=file]{font-size:.8rem;padding:.6rem}.sample-row{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center;margin-top:1.2rem;font-size:.8rem}.preview{border:1px solid #a8c8c4;background:#f5faf8;padding:1rem;margin-top:1rem;border-radius:8px}.actions{display:flex;gap:.7rem;flex-wrap:wrap;margin:.7rem 0}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.wide{grid-column:1/-1}.job-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1rem}.job{padding:1rem;border:1px solid #d9e4e8;border-radius:8px;min-width:0}.job p{font-size:.85rem}.badge{display:inline-block;border:1px solid #b8cbce;border-radius:5px;padding:.1rem .4rem;font-size:.72rem;margin:.25rem .3rem .25rem 0;background:#f1f7f7}.badge.review{border-color:#d6b67a;background:#fff8e8;color:#805515}.numbers{display:flex;flex-wrap:wrap;gap:.5rem 1rem;font-size:.8rem;font-variant-numeric:tabular-nums}.receipt{border-top:1px solid #dce6e9;padding:1.15rem 0}.receipt:first-child{border-top:0}.receipt-head{display:flex;gap:1rem;justify-content:space-between;flex-wrap:wrap}.receipt-head strong{font-size:1.05rem}.receipt-controls{display:flex;gap:.6rem;flex-wrap:wrap;align-items:end;margin:.6rem 0}.receipt-controls label{flex:1;min-width:min(180px,100%)}.provenance{display:grid;grid-template-columns:minmax(100px,170px) minmax(0,1fr);font-size:.78rem;gap:.4rem 1rem}.provenance dt{color:#617581}.provenance dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.empty{border:1px dashed #c8d8dd;padding:1.2rem;text-align:center;color:#59717c;margin-top:1rem;border-radius:8px}.downloads{display:flex;gap:.5rem;flex-wrap:wrap;padding:1rem 0}.download{font-size:.75rem;background:#eef7f5;color:#135e62}code{font: .8rem ui-monospace,monospace;overflow-wrap:anywhere}#message:not(:empty){padding:1rem;border:1px solid #b7cecf;background:#edf7f3;border-radius:9px;white-space:pre-wrap;overflow-wrap:anywhere}#message.error{border-color:#dcbaac;background:#fff3ed;color:#873c2d}#history p{font-size:.8rem;border-bottom:1px solid #e4ebee;padding:.6rem 0;overflow-wrap:anywhere}dialog{max-width:min(540px,calc(100% - 2rem));border:1px solid #b6c9cd;border-radius:12px;padding:1.5rem;color:#162839}dialog::backdrop{background:#10273890}footer{font-size:.75rem;color:#59717e;padding:1rem 0 2rem;max-width:800px}.skip{position:absolute;left:1rem;top:0;transform:translateY(-100%);background:white;padding:.6rem;z-index:2}.skip:focus{top:1rem;transform:none}@media(max-width:900px){.layout{grid-template-columns:1fr}.sidebar{padding:.8rem 1rem;border-right:0;border-bottom:1px solid #dce3e7}.sidebar>.eyebrow,.session-note{display:none}nav{display:flex;justify-content:space-between;gap:.6rem;flex-wrap:wrap}nav a{gap:.4rem;margin:0;padding:.4rem 0}main{padding:1.5rem 1rem}.brand-note{display:none}.topbar{padding:.8rem 1rem}}@media(max-width:540px){.topbar{align-items:start}.pill{max-width:120px}.panel{padding:1rem}.stats,.job-grid,.form-grid{grid-template-columns:1fr}.category-list{grid-template-columns:1fr}.period{width:100%}.period label{max-width:none;flex:1 1 130px}.period button{width:100%}.provenance{grid-template-columns:1fr;gap:.15rem}.provenance dd{margin-bottom:.5rem}.receipt-controls>button{flex:1 1 100px}.sample-row button{width:100%}nav a{flex:1 1 40%;font-size:.7rem}.warning{padding:.8rem}main{padding:1rem .7rem}}

.topbar{flex-wrap:wrap}.brand{font-size:1rem}button,.download{max-width:100%;min-width:0;overflow-wrap:anywhere}h1,h2,h3,p,summary,label,strong{overflow-wrap:anywhere}

label{min-width:0}input[type=month],input[type=date]{max-width:100%}@media(max-width:540px){.stats,.job-grid,.form-grid{grid-template-columns:minmax(0,1fr)}}

/* WEBFIX002: decorative glyph stays in its mark; scaled prototype text stays rectangular. */
.mark{width:2em;height:2em;font-size:16px;line-height:1;flex:0 0 2em}.topbar .pill{max-width:100%;border-radius:.4rem;line-height:1.35}

/* C3 */
.start-row{margin:0 0 1.2rem;font-size:1rem}.start-row span{font-weight:600;color:#162839}
.receipt-uncounted{border-left:4px dashed #6b7280;padding-left:.8rem}.amount-uncounted{font-weight:400;font-size:1.05rem;color:#4b5563}.amount-flag{font-size:.875rem}.badge-uncounted{border:2px dashed #6b7280;background:#f3f4f6;color:#374151;font-size:.875rem;padding:.15rem .5rem;overflow-wrap:anywhere}
.conflict-note{background:#fff8e8;color:#5c3a0a;border-left:4px solid #9a6a1a;padding:.6rem .8rem;border-radius:6px;font-size:.875rem}
#stats .empty{grid-column:1/-1}
.result-note,.result-slot:not(:empty){padding:.7rem 1rem;border:1px solid #b7cecf;background:#edf7f3;color:#162839;border-radius:9px;font-size:.875rem;overflow-wrap:anywhere}.result-note.error,.result-slot.error{border-color:#dcbaac;background:#fff3ed;color:#873c2d}#decision-error:not(:empty){padding:.7rem 1rem;border:1px solid #dcbaac;background:#fff3ed;color:#873c2d;border-radius:9px;font-size:.875rem;overflow-wrap:anywhere;margin:.6rem 0}.result-note:focus,#decision-error:focus{outline:3px solid #bd7d18;outline-offset:3px}
.job-notes{white-space:pre-wrap}
.download:hover{background:#d3e9e5;color:#0b3f43}
#import-preview{scroll-margin-top:1rem}#preview-text:focus{outline:3px solid #bd7d18;outline-offset:3px}
