:root{--accent:#f97316;--accent-dark:#ea580c;--accent-soft:#fff7ed;--bg:#f6f7fb;--surface:#fff;--surface-2:#f8fafc;--ink:#18202e;--muted:#667085;--line:#e4e7ec;--success:#067647;--success-bg:#ecfdf3;--warn:#b54708;--warn-bg:#fffaeb;--danger:#b42318;--danger-bg:#fef3f2;--shadow:0 12px 36px rgba(16,24,40,.08);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color-scheme:light dark}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--ink)}button,input,select,textarea{font:inherit}button{cursor:pointer}.hidden{display:none!important}.muted{color:var(--muted)}.small{font-size:.82rem}.mono{font-variant-numeric:tabular-nums}.boot{min-height:100vh;display:grid;place-content:center;gap:12px;color:var(--muted)}.spinner{display:inline-block;width:22px;height:22px;border:3px solid var(--line);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
.shell{min-height:100vh}.topbar{position:sticky;top:0;z-index:20;height:70px;background:rgba(255,255,255,.94);border-bottom:1px solid var(--line);backdrop-filter:blur(12px);display:flex;align-items:center;padding:0 max(20px,calc((100vw - 1440px)/2));gap:14px}.brand{display:flex;align-items:center;gap:11px;font-weight:800;white-space:nowrap}.brandmark{width:38px;height:38px;border-radius:11px;background:var(--accent);color:white;display:grid;place-items:center;font-size:.9rem}.nav{display:flex;align-items:center;gap:4px;flex:1;min-width:max-content}.nav a{color:var(--muted);text-decoration:none;padding:10px 12px;border-radius:9px;font-weight:650;font-size:.92rem}.nav a.active,.nav a:hover{background:var(--accent-soft);color:var(--accent)}.userbox{display:flex;align-items:center;gap:10px;margin-left:auto;white-space:nowrap}.theme-toggle{min-height:34px;padding:5px 10px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink);display:inline-flex;align-items:center;gap:7px;font-size:.78rem;font-weight:750}.theme-toggle:hover{border-color:#c9cdd5;background:var(--surface-2)}.theme-toggle:focus-visible{outline:3px solid rgba(249,115,22,.24);outline-offset:2px}.theme-toggle-icon{width:18px;height:18px;border-radius:50%;background:var(--accent-soft);color:var(--accent-dark);display:grid;place-items:center;font-size:.9rem;line-height:1}.user-identity{display:flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none;border-radius:9px;padding:3px}.user-identity:hover{background:var(--accent-soft);color:var(--accent-dark)}.userbadge{width:34px;height:34px;border-radius:50%;background:#f2f4f7;display:grid;place-items:center;font-weight:800;color:var(--accent);flex:0 0 auto}
.page{max-width:1400px;margin:0 auto;padding:30px 24px 70px}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:24px}.page-head h1{font-size:1.65rem;letter-spacing:-.03em;margin:0 0 7px}.page-head p{margin:0;color:var(--muted)}.actions{display:flex;gap:9px;flex-wrap:wrap}.btn{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:10px;padding:10px 15px;min-height:42px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:7px}.btn:hover{border-color:#c9cdd5;background:var(--surface-2)}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.primary:hover{background:var(--accent-dark)}.btn.danger{color:var(--danger);border-color:#fecdca}.btn.smallbtn{min-height:34px;padding:6px 10px;font-size:.82rem}.btn:disabled{opacity:.5;cursor:not-allowed}.iconbtn{width:38px;height:38px;padding:0}.card{background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:0 1px 2px rgba(16,24,40,.02)}.cardpad{padding:22px}.grid{display:grid;gap:16px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}
.field{display:grid;gap:7px}.field label{font-size:.82rem;font-weight:750;color:#475467}.field input,.field select,.field textarea,.input{width:100%;border:1px solid #d0d5dd;background:var(--surface);color:var(--ink);border-radius:9px;padding:10px 11px;min-height:42px;outline:none}.field input:focus,.field select:focus,.field textarea:focus,.input:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(249,115,22,.14)}.field textarea{resize:vertical;min-height:84px}.help{font-size:.78rem;color:var(--muted)}
.login-wrap{min-height:100vh;display:grid;grid-template-columns:minmax(320px,520px) 1fr}.login-panel{padding:clamp(30px,7vw,80px);background:var(--surface);display:flex;flex-direction:column;justify-content:center}.login-panel .brand{margin-bottom:50px}.login-panel h1{font-size:2rem;letter-spacing:-.04em;margin:0 0 8px}.login-panel form{display:grid;gap:16px;margin-top:28px}.login-art{position:relative;overflow:hidden;background:radial-gradient(circle at 20% 20%,#fdba74 0,transparent 28%),linear-gradient(145deg,#9a3412,#f97316 55%,#fb923c);display:grid;place-content:center;color:#fff;padding:60px}.login-art:after{content:"";position:absolute;inset:8%;border:1px solid rgba(255,255,255,.22);border-radius:32px;transform:rotate(-5deg)}.login-art blockquote{font-size:clamp(1.5rem,3vw,2.8rem);font-weight:750;max-width:650px;line-height:1.15;letter-spacing:-.04em;margin:0;z-index:1}.errorbox,.notice,.successbox{border-radius:10px;padding:12px 14px;font-size:.9rem}.errorbox{background:var(--danger-bg);color:var(--danger);border:1px solid #fecdca}.notice{background:var(--warn-bg);color:var(--warn);border:1px solid #fedf89}.successbox{background:var(--success-bg);color:var(--success);border:1px solid #abefc6}
.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.stat{padding:18px}.stat .label{font-size:.8rem;color:var(--muted);font-weight:700}.stat .value{font-size:1.55rem;font-weight:800;margin-top:8px;letter-spacing:-.03em}.stat .delta{font-size:.78rem;margin-top:5px;color:var(--muted)}.status{display:inline-flex;align-items:center;gap:6px;text-transform:capitalize;font-size:.76rem;font-weight:800;padding:5px 9px;border-radius:99px;background:#f2f4f7;color:#475467}.status.submitted{background:#eff8ff;color:#175cd3}.status.finalized{background:var(--success-bg);color:var(--success)}.status.returned{background:var(--danger-bg);color:var(--danger)}
.tablewrap{overflow:auto}.table{width:100%;border-collapse:collapse;min-width:720px}.table th{text-align:left;padding:11px 14px;color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--line);background:var(--surface-2)}.table td{padding:13px 14px;border-bottom:1px solid var(--line);font-size:.9rem;vertical-align:middle}.table tr:last-child td{border-bottom:0}.table tbody tr.clickable:hover{background:var(--accent-soft);cursor:pointer}.amount{text-align:right;font-variant-numeric:tabular-nums}.flag{display:inline-flex;padding:4px 8px;border-radius:99px;font-size:.72rem;font-weight:800;margin:2px}.flag.block{background:var(--danger-bg);color:var(--danger)}.flag.warn{background:var(--warn-bg);color:var(--warn)}
.stepper{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-bottom:20px}.step{appearance:none;position:relative;text-align:center;color:var(--muted);font-size:.78rem;font-weight:700;padding:33px 4px 0;border:0;background:transparent;cursor:pointer}.step:focus-visible{outline:3px solid rgba(249,115,22,.28);outline-offset:4px;border-radius:8px}.step:before{content:attr(data-step);position:absolute;top:0;left:50%;translate:-50%;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:#e4e7ec;color:#475467;z-index:2}.step:after{content:"";height:2px;background:#e4e7ec;position:absolute;top:12px;left:0;right:0}.step:first-child:after{left:50%}.step:last-child:after{right:50%}.step.active,.step.done{color:var(--accent)}.step.active:before,.step.done:before{background:var(--accent);color:#fff}.step.done:after{background:var(--accent)}
.dropzone{display:block;width:100%;border:2px dashed #d0d5dd;border-radius:15px;padding:42px 20px;text-align:center;background:var(--surface-2);transition:.2s}.dropzone.drag{border-color:var(--accent);background:var(--accent-soft)}.dropzone strong{display:block;font-size:1.05rem;margin-bottom:6px}.progress-list{display:grid;gap:8px;margin-top:14px}.progress-row{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:9px}.progress-row .grow{flex:1}.manual-actions{margin-bottom:16px;padding:16px 18px;border:1px solid #fdba74;border-left:5px solid var(--accent);border-radius:14px;background:var(--surface);box-shadow:0 5px 16px rgba(249,115,22,.08)}.manual-actions>strong{display:block;margin-bottom:11px;font-size:.86rem;color:var(--accent-dark);text-transform:uppercase;letter-spacing:.04em}.manual-actions .btn{border-color:#fdba74;background:var(--accent-soft);color:var(--accent-dark)}.manual-actions .attention-count{margin-left:auto}.review-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}.review-table{max-height:360px;overflow:auto}.editor{position:static;max-height:none;overflow:visible}.receipt{background:#20242c;border-radius:11px;min-height:260px;display:grid;place-items:center;overflow:auto;padding:12px}.receipt img{max-width:100%;transform-origin:center;transition:.15s}.receipt.empty{color:#98a2b3}.editor-section{padding:18px;border-bottom:1px solid var(--line)}.editor-section:last-child{border-bottom:0}.editor-section h3{margin:0 0 13px;font-size:.94rem}.chips{display:flex;gap:7px;flex-wrap:wrap}.chip{border:1px solid #d0d5dd;background:var(--surface);color:var(--ink);padding:8px 10px;border-radius:99px;font-size:.78rem;font-weight:750}.chip.active{background:var(--accent-soft);border-color:#fdba74;color:var(--accent-dark)}.savebar{position:sticky;bottom:0;padding:12px 18px;background:rgba(255,255,255,.95);display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line)}
.summary-list{display:grid}.summary-row{display:grid;grid-template-columns:34px 1fr auto;gap:10px;padding:9px 0;border-bottom:1px solid var(--line);align-items:center}.summary-row strong:last-child{font-variant-numeric:tabular-nums}.summary-row.total{font-size:1.02rem;border-bottom:0;padding-top:13px}.summary-code{font-weight:850;color:var(--accent)}.checklist{display:grid;gap:8px}.check{padding:11px;border:1px solid var(--line);border-radius:9px;display:flex;gap:9px;align-items:flex-start;background:var(--surface-2);color:var(--ink)}.check.bad{border-color:#fecdca;background:var(--danger-bg);color:#912018}.check.good{border-color:#abefc6;background:var(--success-bg);color:#05603a}
.inbox-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr);gap:16px}.list-item{padding:15px 17px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:14px;align-items:center}.list-item:last-child{border-bottom:0}.list-item:hover{background:var(--surface-2);cursor:pointer}.empty-state{text-align:center;padding:52px 20px;color:var(--muted)}
.kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.chart{padding:19px;min-height:270px}.chart h3{margin:0 0 18px;font-size:.95rem}.bars{height:190px;display:flex;align-items:flex-end;gap:8px;border-bottom:1px solid var(--line)}.bar{flex:1;background:linear-gradient(var(--accent),#fb923c);border-radius:6px 6px 0 0;min-height:2px;position:relative}.bar span{position:absolute;bottom:-24px;left:50%;translate:-50%;font-size:.7rem;color:var(--muted)}.heatmap{display:grid;grid-template-columns:50px repeat(12,1fr);gap:3px;font-size:.65rem}.heat{aspect-ratio:1;background:color-mix(in srgb,var(--accent) calc(var(--v)*1%),#f2f4f7);border-radius:3px}.audit{display:grid;gap:7px}.audit-item{border-left:3px solid var(--line);padding:4px 0 4px 11px;font-size:.82rem}.toast{position:fixed;z-index:99;right:20px;bottom:20px;background:#101828;color:#fff;padding:12px 16px;border-radius:10px;box-shadow:var(--shadow);opacity:0;translate:0 12px;pointer-events:none;transition:.2s}.toast.show{opacity:1;translate:0}.saving{font-size:.78rem;color:var(--muted)}
.change-pin-form{display:grid;gap:16px;max-width:520px}.start-day-form{display:grid;grid-template-columns:minmax(240px,1fr) minmax(280px,1fr) auto;gap:16px;align-items:start}.start-day-action{padding-top:24px}.dashboard-filters{align-items:flex-end;justify-content:flex-end}.dashboard-filters>select{width:auto;min-width:150px}.range-fields{display:flex;align-items:flex-end;gap:8px}.range-fields label{display:grid;gap:4px;color:var(--muted);font-size:.72rem;font-weight:750}.range-fields input{min-width:145px}
.dashboard-metric-customizer{padding:16px;margin-bottom:16px;border-color:#fdba74;background:var(--accent-soft)}
.dashboard-customizer-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px}
.dashboard-customizer-head>div{display:grid;gap:3px}.dashboard-customizer-head span{font-size:.78rem;color:var(--muted)}
.dashboard-metric-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(275px,1fr));gap:9px}
.dashboard-metric-option{display:flex;align-items:center;gap:8px;padding:7px;border:1px solid var(--line);border-radius:11px;background:var(--surface)}
.dashboard-metric-option>.metric-visibility{flex:1;justify-content:flex-start}
.dashboard-metric-option>.metric-visibility.active{border-color:var(--accent);background:var(--accent);color:#000}
.dashboard-metric-option .actions{flex-wrap:nowrap;gap:5px}.dashboard-metric-option .iconbtn{min-width:34px;width:34px;padding:0}
.dashboard-empty-metrics{grid-column:1/-1}
.dashboard-panel-customizer{margin-top:-8px}
.dashboard-panels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px}
.dashboard-panels>.card{min-width:0}.dashboard-empty-panels{grid-column:1/-1}
.review-title-row{display:flex;align-items:center;gap:12px;margin-top:12px}.review-title-row h1{margin:0}.review-title-row .status{flex:0 0 auto}
@media(max-width:1000px){.dashboard-panels{grid-template-columns:1fr}}
@media(max-width:1000px){.kpis{grid-template-columns:repeat(3,1fr)}.stats{grid-template-columns:repeat(2,1fr)}.review-layout,.inbox-grid{grid-template-columns:1fr}.editor{position:static;max-height:none}.grid.four{grid-template-columns:repeat(2,1fr)}.dashboard-filters{justify-content:flex-start}.range-fields{width:100%;flex-wrap:wrap}.start-day-form{grid-template-columns:1fr 1fr}.start-day-action{grid-column:1/-1;padding-top:0}}
@media(max-width:560px){.login-wrap{grid-template-columns:1fr}.login-art{display:none}.topbar{height:auto;min-height:64px;padding:10px 14px;flex-wrap:wrap;gap:8px}.nav{order:3;width:100%;flex:0 0 100%;overflow:auto}.nav a{padding:8px 10px}.page{padding:22px 14px 80px}.page-head{display:grid}.grid.two,.grid.three,.grid.four,.stats,.kpis,.start-day-form{grid-template-columns:1fr}.step{font-size:.68rem}.review-layout{display:block}.review-table .table{min-width:640px}.editor{margin-top:14px}.summary-row{grid-template-columns:26px 1fr auto}.actions .btn{flex:1}.login-panel{padding:32px 22px}.cardpad{padding:17px}}
@media(max-width:480px){.userbox .username,.theme-toggle-label{display:none}.brand>span:last-child{display:none}.theme-toggle{padding:5px 7px}}
:root[data-theme="dark"]{--bg:#0c111d;--surface:#151b26;--surface-2:#1d2430;--ink:#f2f4f7;--muted:#98a2b3;--line:#2d3543;--accent-soft:#3b2416}
:root[data-theme="dark"] .topbar{background:rgba(21,27,38,.94)}
:root[data-theme="dark"] .field label{color:#cbd1da}
:root[data-theme="dark"] .field input,:root[data-theme="dark"] .field select,:root[data-theme="dark"] .field textarea,:root[data-theme="dark"] .input{border-color:#3d4655}
:root[data-theme="dark"] .userbadge{background:#242c38}
:root[data-theme="dark"] .btn,:root[data-theme="dark"] .theme-toggle{border-color:#344054}
:root[data-theme="dark"] .theme-toggle:hover{border-color:#475467}
:root[data-theme="dark"] .savebar{background:rgba(21,27,38,.96)}
:root[data-theme="dark"] .receipt{background:#090d14}
:root[data-theme="dark"] .status{background:#242c38;color:#cbd1da}
:root[data-theme="dark"] .status.finalized{background:#073b2a;color:#75e0a7;border:1px solid #16865b}
:root[data-theme="dark"] .status.submitted{background:#102a56;color:#84adff;border:1px solid #175cd3}
:root[data-theme="dark"] .status.returned{background:#481b18;color:#fda29b;border:1px solid #d92d20}
:root[data-theme="dark"] .step{color:#98a2b3}
:root[data-theme="dark"] .step:before{background:#344054;color:#e4e7ec;border:1px solid #475467}
:root[data-theme="dark"] .step:after{background:#475467}
:root[data-theme="dark"] .step.active,:root[data-theme="dark"] .step.done{color:#fdba74}
:root[data-theme="dark"] .step.active:before,:root[data-theme="dark"] .step.done:before{background:#f97316;color:#111827;border-color:#fb923c;box-shadow:0 0 0 3px rgba(249,115,22,.18)}
:root[data-theme="dark"] .step.done:after{background:#f97316}
:root[data-theme="dark"] .manual-actions{border-color:#f97316;background:#171f2b;box-shadow:0 5px 18px rgba(249,115,22,.12)}
:root[data-theme="dark"] .manual-actions>strong{color:#fb923c}
:root[data-theme="dark"] .manual-actions .btn{border-color:#c2410c;background:#3b2416;color:#fdba74}
:root[data-theme="dark"] .manual-actions .btn:hover{border-color:#fb923c;background:#542b14;color:#fed7aa}
:root[data-theme="dark"] .chip{border-color:#667085;background:#151b26;color:#f2f4f7}
:root[data-theme="dark"] .chip:hover{border-color:#fdba74;background:#242c38}
:root[data-theme="dark"] .chip.active{border-color:#fdba74;background:#f97316;color:#111827;box-shadow:0 0 0 3px rgba(249,115,22,.22);font-weight:850}
:root[data-theme="dark"] .check{border-color:#344054;background:#1d2430;color:#e4e7ec}
:root[data-theme="dark"] .check.good{border-color:#16865b;background:#073b2a;color:#a6f4c5}
:root[data-theme="dark"] .check.bad{border-color:#d92d20;background:#481b18;color:#fecdca}
@media print{body{background:#fff;color:#000}.topbar,.no-print,.toast{display:none!important}.page{max-width:none;padding:0}.card{border:0;box-shadow:none}.print-page{font-size:10pt}.table{min-width:0}.table th,.table td{padding:5px 6px;color:#000}.page-break{break-before:page}}
@media print{.print-page>.grid.two{display:flex;align-items:flex-start;gap:16px;break-inside:avoid;page-break-inside:avoid}.print-page>.grid.two>section{flex:1;min-width:0;break-inside:avoid;page-break-inside:avoid}.print-page>footer{break-inside:avoid;page-break-inside:avoid}}
.print-supporting-document{margin-top:28px}.print-supporting-document>header{border-bottom:2px solid #18202e;padding-bottom:10px;margin-bottom:16px}.print-supporting-document h2,.print-supporting-document p{margin:0}.print-supporting-document p{margin-top:6px;color:var(--muted)}.print-supporting-image{display:grid;place-items:center;min-height:320px;background:var(--surface-2);border:1px solid var(--line);border-radius:10px;padding:12px}.print-supporting-image img{display:block;max-width:100%;max-height:900px;object-fit:contain}
@media print{.print-supporting-document{break-before:page;page-break-before:always;break-inside:avoid;page-break-inside:avoid;margin:0}.print-supporting-document>header{border-color:#000}.print-supporting-document p{color:#000}.print-supporting-image{min-height:0;height:245mm;border:0;border-radius:0;padding:0;background:#fff}.print-supporting-image img{max-width:100%;max-height:240mm;width:auto;height:auto;object-fit:contain}}
.flag{border:1px solid #000}
.summary-list>.summary-row{grid-template-columns:1fr auto;padding-left:12px;padding-right:12px}
.summary-list .summary-code{display:none}
.summary-list>.summary-row:nth-child(3),.summary-list>.summary-row:nth-child(10){border:0;border-top:2px solid #000;border-bottom:2px solid #000;border-radius:0;padding:10px 12px;margin:4px 0;font-weight:800}
.summary-list>.summary-row:nth-child(11)>strong{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px}
.summary-list>.summary-row:nth-child(14){background:var(--accent);color:#fff;border-radius:8px;padding:12px;margin-top:7px}
.editor .editor-section{padding:11px 16px}
.editor .editor-section h3{margin-bottom:8px;font-size:.86rem}
.editor .grid{gap:9px 12px}
.editor .grid.two{grid-template-columns:repeat(3,minmax(0,1fr))}
.editor .field{gap:4px}
.editor .field label{font-size:.76rem}
.editor .field input,.editor .field select{min-height:36px;padding:7px 9px}
.editor .field textarea{min-height:48px;padding:7px 9px}
.editor .chips{gap:5px}
.editor .chip{padding:6px 9px;font-size:.72rem}
.editor .flag{padding:3px 7px;font-size:.68rem}
.editor .savebar{padding:8px 16px}
@media(max-width:800px){.editor .grid.two{grid-template-columns:1fr}.editor .editor-section{padding:12px}}
.review-table .table th:nth-child(5),.review-table .table th:nth-child(6),.review-table .table td:nth-child(2){white-space:nowrap}
#step-body .review-table{max-height:none;overflow:hidden}
#step-body .review-table .tablewrap{max-height:360px;overflow:auto;scrollbar-width:none;-ms-overflow-style:none}
#step-body .review-table .tablewrap::-webkit-scrollbar{display:none}
#step-body .review-table .table thead th{position:sticky;top:0;z-index:3;box-shadow:0 1px 0 var(--line)}
.review-table{position:relative}
.table-scroll-controls{position:absolute;right:22px;top:50%;z-index:7;display:grid;gap:8px;transform:translateY(-50%);pointer-events:none}
.table-scroll-button{min-width:122px;height:38px;padding:0 11px;border:2px solid #000;border-radius:999px;background:var(--accent);color:#000;box-shadow:0 3px 8px rgba(0,0,0,.18);font-size:.74rem;font-weight:850;display:flex;align-items:center;justify-content:center;gap:7px;pointer-events:auto;user-select:none}
.table-scroll-button:hover:not(:disabled){background:#fb923c;transform:translateY(-1px)}
.table-scroll-button:active:not(:disabled){transform:translateY(1px);box-shadow:0 1px 4px rgba(0,0,0,.2)}
.table-scroll-button:disabled{opacity:.28;cursor:not-allowed;box-shadow:none}
@media(max-width:800px){.table-scroll-controls{right:18px}.table-scroll-button{min-width:38px;width:38px;padding:0}.table-scroll-button span{display:none}}
#line-editor{scroll-margin-top:78px}
.transaction-detail{display:grid;gap:16px;min-width:0;scroll-margin-top:78px}
.receipt-preview-card{width:70%;justify-self:center;padding:12px;overflow:hidden}
.receipt-preview-card .receipt{width:100%}
@media(max-width:800px){.receipt-preview-card{width:100%}}
#line-editor .savebar{gap:10px}
#line-editor .savebar>.saving{margin-left:auto}
.receipt-preview-card .receipt img{max-width:92%}
@media (min-width:1400px) and (max-width:1650px) and (min-height:820px) and (max-height:950px){
  .topbar{height:60px;padding-left:20px;padding-right:20px}
  .page{max-width:1560px;padding:16px 20px 36px}
  .page-head{margin-bottom:14px}
  .page-head h1{font-size:1.45rem;margin-bottom:4px}
  .stepper{margin-bottom:12px}
  .step{padding-top:29px}
  .manual-actions{margin-bottom:10px;padding:10px 14px}
  .manual-actions>strong{margin-bottom:7px}
  #step-body .review-table .tablewrap{max-height:280px}
  .table th{padding:9px 11px}
  .table td{padding:10px 11px}
  .editor .editor-section{padding:9px 14px}
  .editor .editor-section h3{margin-bottom:6px}
  .editor .field input,.editor .field select{min-height:34px;padding:6px 8px}
  .editor .field textarea{min-height:44px}
  .editor .chip{padding:5px 8px}
  .editor .savebar{padding:7px 14px}
  #line-editor .editor-section{scroll-margin-top:66px}
}
.manual-actions .attention-count{background:#facc15;color:#000;border:2px solid #000;font-weight:900;box-shadow:0 3px 8px rgba(0,0,0,.16);padding:7px 12px}
.review-layout+.actions{justify-content:center}
.review-layout+.actions .btn.primary{background:var(--success);border-color:var(--success)}
.review-layout+.actions .btn.primary:hover{background:#05603a;border-color:#05603a}
#submit-report.btn.primary{width:max-content;max-width:100%;margin-top:16px;background:var(--success);border-color:var(--success)}
#submit-report.btn.primary:hover{background:#05603a;border-color:#05603a}
.transaction-nav .btn{background:var(--accent);border-color:#000;color:#000}
.transaction-nav .btn:hover:not(:disabled){background:#fb923c;border-color:#000}
.editor-section:has([data-field="time"]) .grid.two{width:60%}
@media(max-width:800px){.editor-section:has([data-field="time"]) .grid.two{width:100%}}
#line-editor .grid.two,#line-editor textarea{width:60%}
@media(max-width:800px){#line-editor .grid.two,#line-editor textarea{width:100%}}
#line-editor .field input,#line-editor .field select,#line-editor .supporting-upload{height:36px;min-height:36px}
#line-editor .field input:focus,#line-editor .field select:focus{box-shadow:inset 0 0 0 2px rgba(249,115,22,.22)}
.supporting-upload+.help{display:none}
.print-page>.grid.two>section:first-child .summary-row{grid-template-columns:1fr auto;padding-left:12px;padding-right:12px}
.print-page>.grid.two>section:first-child .summary-row>span:first-child{display:none}
.print-page>.grid.two>section:first-child .summary-row:nth-child(3),.print-page>.grid.two>section:first-child .summary-row:nth-child(10){border:0;border-top:2px solid #000;border-bottom:2px solid #000;border-radius:0;padding:10px 12px;margin:4px 0;font-weight:800}
.print-page>.grid.two>section:first-child .summary-row:nth-child(11)>strong{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px}
.print-page>.grid.two>section:first-child .summary-row:nth-child(14){background:var(--accent);color:#fff;border-radius:8px;padding:12px;margin-top:7px;-webkit-print-color-adjust:exact;print-color-adjust:exact}
.table th.amount{text-align:right;white-space:nowrap}
.review-table:has(>.actions.cardpad){max-height:none;overflow:hidden}
.review-table:has(>.actions.cardpad)>.tablewrap{max-height:430px;overflow:auto}
.review-table:has(>.actions.cardpad) .table thead th{position:sticky;top:0;z-index:3;box-shadow:0 1px 0 var(--line)}
.review-table>.actions.cardpad .status:first-child{background:#facc15;color:#000;border:2px solid #000;font-weight:900;box-shadow:0 3px 8px rgba(0,0,0,.16);padding:7px 12px}
.review-table>.actions.cardpad .status:nth-child(2){background:var(--surface);color:var(--ink);border:1px solid #000;font-weight:800;padding:7px 12px}
#system-balance,#manager-note{width:60%;height:36px;min-height:36px}
.page:has(.review-layout #manager-image){padding-bottom:calc(100vh - 80px)}
.review-layout>.editor .editor-section:has(>h3){scroll-margin-top:0}
.receipt[data-preview-ready]{display:grid;grid-template-rows:auto auto;align-content:start;place-items:initial;padding:0;min-height:0;background:#eef1f5}
.receipt[data-preview-ready].receipt-collapsed{height:48px;overflow:hidden}
.receipt[data-preview-ready].receipt-collapsed>.receipt-image-stage{display:none}
.receipt[data-preview-ready].receipt-expanded{height:auto;min-height:0;padding:0}
.receipt-preview-toolbar{position:relative;z-index:1;width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:7px 10px;background:#f8fafc;border-bottom:1px solid #d0d5dd}
.receipt-preview-title{color:#18202e;font-weight:850;white-space:nowrap}
.receipt-preview-tools{display:flex;align-items:center;gap:8px;margin-left:auto}
.receipt-preview-toggle{min-height:32px;padding:5px 9px;border:0;background:transparent;color:#18202e;display:inline-flex;align-items:center;justify-content:center;font-weight:800;cursor:pointer}
.receipt-preview-toggle strong{color:#ea580c;white-space:nowrap}
.receipt-preview-zoom{display:flex;gap:6px}
.receipt-preview-zoom[hidden]{display:none!important}
.receipt-preview-zoom .btn{min-height:32px;background:var(--accent);border-color:#000;color:#000;padding:5px 9px}
.receipt-image-stage{width:100%;display:grid;place-items:center;overflow:auto;padding:14px;background:#eef1f5;transition:height .2s ease}
.receipt-image-stage>img{display:block;width:auto;height:auto;margin:0;border:1px solid #c9cdd5;background:#fff;box-shadow:0 4px 14px rgba(16,24,40,.14);transform-origin:center;transition:transform .18s ease}
@media(max-width:700px){.receipt-preview-title{font-size:.86rem}.receipt-preview-tools{gap:4px}.receipt-preview-zoom{gap:4px}.receipt-preview-zoom .btn,.receipt-preview-toggle{padding:5px 7px;font-size:.72rem}}
.editor-section>.receipt+.actions{display:none}
.editor .savebar{z-index:10}
.receipt-preview-message{padding:24px;text-align:center;color:#475467;font-weight:750}
.receipt-image-stage>img[hidden]{display:none}
.receipt-preview-toolbar{flex-wrap:wrap}
.receipt-preview-tools,.receipt-preview-zoom{flex-wrap:wrap}
dialog.card { width: min(600px, 90vw); max-height: 85vh; overflow: auto; }
dialog.card::backdrop { background: rgba(16, 24, 40, .55); }
.page-head > .report-header-actions { align-items: center; justify-content: flex-end; gap: 8px 12px; margin-left: auto; }
.report-header-actions > .btn { height: 36px; min-height: 36px; padding: 0 12px; white-space: nowrap; }
.report-header-actions > .saving { display: flex; flex: 0 0 100%; order: -1; justify-content: flex-end; align-items: center; min-height: 20px; margin: 0; white-space: nowrap; }
@media (min-width: 801px) { .page-head:has(a[href="#/manager"]) > .report-header-actions > .btn { margin-top: 30px; } }
@media (max-width: 560px) { .page-head > .report-header-actions { width: 100%; } .report-header-actions > .btn { flex: 0 0 auto; } }
.page-head .actions > a.btn[href="#/teller"] { background: var(--accent); color: #000; border: 1px solid #000; height: 40px; min-height: 40px; padding: 0 16px; font-weight: 800; text-decoration: none; box-shadow: 0 2px 4px rgba(0, 0, 0, .14); }
.page-head .actions > a.btn[href="#/teller"]:hover { background: #fb923c; border-color: #000; }
.page-head .actions > a.btn[href="#/teller"]:focus-visible { outline: 3px solid #000; outline-offset: 3px; }

.supporting-upload-status{display:inline-flex;align-items:center;gap:8px;width:max-content;max-width:100%;padding:7px 10px;border:1px solid #abefc6;border-left:4px solid var(--success);border-radius:8px;background:var(--success-bg);color:var(--success);font-size:.8rem;line-height:1.4;white-space:nowrap}
.supporting-upload-status strong{font-weight:800}
.card:has(#counted)> .summary-row.total{display:flex;justify-content:flex-end;align-items:center;gap:12px}
.card:has(#counted)> .summary-row.total>span:first-child{display:none}
.flag.cleared{background:#067647;color:#fff;border:1px solid #054f31;padding:6px 12px;font-weight:850;box-shadow:0 2px 4px rgba(6,118,71,.2);white-space:nowrap}
.btn[data-transaction-filter="attention"]{background:#fdd744;color:#000;border:2px solid #18202e;font-weight:800}
.btn[data-transaction-filter="attention"]:hover{background:#facc15;color:#000}
.btn[data-transaction-filter="attention"][aria-pressed="true"]{box-shadow:0 0 0 3px rgba(24,32,46,.18);border-color:#000}
.btn[data-transaction-filter="attention"]:focus-visible{outline:3px solid #18202e;outline-offset:3px}
.btn[data-transaction-filter="attention"].is-clear{background:#d1fadf;color:#05603a;border-color:#067647}
.btn[data-transaction-filter="attention"].is-clear:hover{background:#a6f4c5;color:#054f31}
.btn[data-transaction-filter="attention"].is-clear[aria-pressed="true"]{border-color:#054f31;box-shadow:0 0 0 3px rgba(6,118,71,.18)}
.transaction-search-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid var(--line);background:var(--surface)}
#step-body>.manual-actions{box-sizing:border-box;width:max-content;max-width:100%;margin:0 0 12px auto;padding:10px 12px}
#step-body>.manual-actions>strong{margin-bottom:7px}
#step-body>.manual-actions .actions{flex-wrap:wrap}
.transaction-search-toolbar>span{font-size:.8rem;color:var(--muted);font-weight:650}
.transaction-search-toolbar>.field{margin-left:auto;width:min(320px,100%)}
.transaction-search-toolbar input{height:36px;min-height:36px;width:100%}
.transaction-search-toolbar .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.review-table:has(>.transaction-search-toolbar){max-height:none;overflow:hidden}
.review-table:has(>.transaction-search-toolbar)>.tablewrap{max-height:360px;overflow:auto}
@media(max-width:560px){.transaction-search-toolbar{flex-wrap:wrap}.transaction-search-toolbar>.field{width:100%}}
.review-table .table tbody tr[aria-selected="true"]>td{background:#ffddb5;color:#18202e}
.review-table .table tbody tr[aria-selected="true"]>td:first-child{box-shadow:inset 5px 0 0 #ea580c;font-weight:800}
.review-table .table tbody tr[aria-selected="true"]:hover>td{background:#ffddb5}
.supporting-upload-status span{font-size:.75rem;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.field:has(> .supporting-upload-status){display:grid;grid-template-columns:140px minmax(0,1fr);align-items:center;gap:8px 12px}
.field:has(> .supporting-upload-status)>label:first-child{grid-column:1 / -1}
.field:has(> .supporting-upload-status)>.supporting-upload{grid-column:1;width:100%;margin:0}
.field>.supporting-upload{width:140px;max-width:100%;justify-self:start;align-self:start;margin:0;flex:none}
.field:has(> .supporting-upload-status)>.supporting-upload-status{grid-column:2;min-width:0;justify-self:start}
@media(max-width:560px){.field:has(> .supporting-upload-status){grid-template-columns:minmax(0,1fr)}.field:has(> .supporting-upload-status)>.supporting-upload-status{grid-column:1}}
#line-editor .grid.two:has(.supporting-upload){width:100%;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,3fr)}
@media(min-width:1000px){#line-editor .supporting-upload-status strong{white-space:nowrap}}
@media(max-width:800px){#line-editor .grid.two:has(.supporting-upload){grid-template-columns:minmax(0,1fr)}}
/* Keep the clear status compact and give comments an independent, stable row. */
#line-editor .editor-section:has(textarea[data-field="tellerComment"]) { display: grid; grid-template-columns: max-content minmax(0, 1fr); align-items: center; gap: 12px; }
#line-editor .editor-section:has(textarea[data-field="tellerComment"]) > h3 { margin: 0; }
#line-editor .editor-section:has(textarea[data-field="tellerComment"]) > div:not(.field) { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; min-width: 0; }
#line-editor .editor-section:has(textarea[data-field="tellerComment"]) > div:has(.flag) { grid-column: 1 / -1; }
#line-editor .editor-section:has(textarea[data-field="tellerComment"]) .successbox { display: inline-flex; align-items: center; gap: 6px; padding: 4px 10px; border-radius: 99px; font-size: .76rem; font-weight: 700; line-height: 1.4; }
#line-editor .editor-section:has(textarea[data-field="tellerComment"]) .successbox::before { content: "✓"; }
#line-editor .editor-section:has(textarea[data-field="tellerComment"]) .flag { margin: 0; }
#line-editor .editor-section:has(textarea[data-field="tellerComment"]) > .field { grid-column: 1 / -1; margin-top: 0 !important; }
#line-editor textarea[data-field="tellerComment"] { display: block; min-height: 72px; padding: 10px 12px; line-height: 1.45; resize: vertical; }
@media (max-width: 560px) {
  #line-editor .editor-section:has(textarea[data-field="tellerComment"]) { grid-template-columns: minmax(0, 1fr); gap: 10px; }
}
.dropzone{cursor:pointer}
label.btn:has(input[type="file"]){cursor:pointer}
label.btn:has(input[type="file"]:disabled){cursor:not-allowed;opacity:.5}
.ria-exception{align-items:center;justify-content:space-between;flex-wrap:wrap}
.ria-exception-copy{flex:1;min-width:min(100%,280px)}
.ria-exception-copy .small{margin-top:5px}
.receipt-preview-card{scroll-margin-top:84px}
.inbox-grid .card{overflow:hidden}
.inbox-grid .list-item{background:#f6f7f9}
.inbox-grid .list-item:hover{background:#eceff3}
:root[data-theme="dark"] .inbox-grid .list-item{background:var(--surface-2);color:var(--ink)}
:root[data-theme="dark"] .inbox-grid .list-item:hover{background:#273140}
.transaction-mix-row{grid-template-columns:1fr auto;gap:10px;border-bottom:0;padding:9px 12px}
.transaction-mix-row>span:first-child{display:none}
.transaction-mix-track{height:6px;margin:-5px 12px 8px;border-radius:9px;background:var(--surface-2);overflow:hidden}
.transaction-mix-bar{height:100%;border-radius:9px;background:var(--accent)}
.ocr-order-review{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin:10px 0;padding:12px 14px;border:2px solid #d97706;border-radius:10px;background:#fffbeb;color:#7c2d12}
.ocr-order-review>strong{font-weight:850}
.ocr-order-review>span:not(.ocr-order-confirmed){flex-basis:100%;font-size:.85rem;overflow-wrap:anywhere}
.ocr-order-review>.btn{background:#fff;border-color:#92400e;color:#78350f;font-weight:800}
.ocr-order-confirmed{font-weight:800;color:#067647}
.review-layout>.editor .editor-section:has(textarea[data-field="managerComment"])>h3{margin-bottom:18px}
.review-layout>.editor .editor-section:has(textarea[data-field="managerComment"])>.field{width:30%;min-width:280px;max-width:100%}
@media(max-width:800px){.review-layout>.editor .editor-section:has(textarea[data-field="managerComment"])>.field{width:100%;min-width:0}}
.heat--0{background:#e9edf3}
.heat--1{background:#80cf9a}
.heat--2{background:#f9dc69}
.heat--3{background:#f9a15e}
.heat--4{background:#eb6c65}
.heat-legend{display:flex;flex-wrap:wrap;align-items:center;gap:7px 12px;margin-top:12px;font-size:.7rem;color:var(--muted)}
.heat-legend>span{display:inline-flex;align-items:center;gap:5px}
.heat-legend .heat{display:inline-block;width:12px;height:12px;aspect-ratio:auto;flex:none}
.bars .bar{background:#2563eb}
.heatmap{grid-template-columns:40px repeat(10,minmax(0,1fr));gap:3px;width:100%;overflow:visible;align-items:center}
.heatmap>.heat{width:100%;max-width:54px;justify-self:center}
.heatmap-hour,.heatmap-count{text-align:center;min-width:0;font-variant-numeric:tabular-nums}
.heatmap-hour{font-size:.6rem;line-height:1.1}
.heatmap-count{font-size:.75rem;font-weight:750;color:var(--ink)}
