:root{color-scheme:light;--bg:#f5f7fb;--panel:#fff;--line:#e4eaf3;--text:#172b48;--muted:#63758c;--primary:#236ad2;--surface:#fff;--field:#f8fafd;--table:#f0f5fc;--highlight:#eaf2ff;--danger:#9e2837;--ok:#176546}
:root[data-theme=dark]{color-scheme:dark;--bg:#091426;--panel:#11233d;--line:#2b4668;--text:#eff7ff;--muted:#bed0e7;--surface:#0b192d;--field:#0a1a30;--table:#1c3859;--highlight:#23476d;--danger:#ffc1c3;--ok:#aaf0cf}
body{font:14px/1.6 Inter,ui-sans-serif,system-ui,sans-serif}a{color:var(--primary)}h1{font-size:2rem;margin:.3rem 0;font-weight:750;letter-spacing:-.04em}h2{font-size:1.05rem;margin:0;letter-spacing:-.015em}p{margin:.35rem 0 1rem}small{letter-spacing:0}.brand{color:var(--text)}.app{grid-template-columns:250px minmax(0,1fr)}aside{background:var(--surface);padding:28px 18px;position:sticky;top:0;height:100vh;overflow-y:auto}aside>small{font-size:9px;letter-spacing:.15em;padding-left:5px}nav a{color:var(--muted);font-weight:600;font-size:13px}nav a.active,nav a:hover{background:var(--highlight);color:var(--primary)}header{background:var(--surface);padding:16px 30px;min-height:82px}.content{max-width:1450px;padding:32px;min-width:0}label{color:var(--text)}input,select{background:var(--field);color:var(--text);border-color:var(--line)}select{color:var(--text)}button,.btn,.quick a{background:#236ad2;border-color:#236ad2;border-radius:10px;font-size:13px}button.secondary{background:var(--surface);color:var(--text);border-color:var(--line)}button:hover,.btn:hover,.quick a:hover{background:#1858b5;color:white}th{background:var(--table);color:var(--muted);font-size:11px;font-weight:700}td,th{border-color:var(--line)}tr:hover td{background:var(--field)}.panel{box-shadow:0 3px 14px #142d5010;border-radius:16px;border-color:var(--line);margin-top:22px;padding:24px}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:8px 0 26px}.eyebrow{font-size:10px;letter-spacing:.12em;font-weight:700;color:var(--muted)}.page-heading p{margin-bottom:0}.dashboard-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.kpi{border:1px solid var(--line);background:var(--panel);padding:23px;border-radius:16px;box-shadow:0 3px 14px #142d5008;min-width:0}.kpi>span{font-size:12px;color:var(--muted);font-weight:600}.kpi strong{display:block;font-size:clamp(19px,1.7vw,27px);letter-spacing:-.045em;white-space:nowrap;margin:12px 0}.kpi small{display:block;font-size:10px;color:var(--muted)}.dashboard-columns{display:grid;grid-template-columns:1.2fr 1fr;gap:22px;min-width:0}.dashboard-columns>.panel{min-width:0}.panel-heading{display:flex;justify-content:space-between;align-items:start;gap:12px;margin-bottom:14px}.panel-heading p{font-size:12px;margin:.3rem 0;color:var(--muted)}.panel-heading>a{font-size:12px;white-space:nowrap;text-decoration:none}.status-pill,.reference-pill{display:inline-block;background:var(--highlight);color:var(--primary);font-size:10px;font-weight:700;border-radius:7px;padding:5px 9px;white-space:nowrap}.monthly-chart{display:block;width:100%;height:auto;color:var(--muted)}summary{cursor:pointer;color:var(--primary);font-size:12px;padding:8px 0}.dashboard-task{display:flex;align-items:center;gap:13px;padding:17px 0;border-top:1px solid var(--line);color:var(--text);text-decoration:none}.dashboard-task:hover{color:var(--primary)}.dashboard-task>span:last-child{margin-left:auto}.dashboard-task strong{display:block;font-size:12px}.dashboard-task small{display:block;color:var(--muted);font-size:11px}.task-icon{display:grid;place-items:center;background:var(--highlight);color:var(--primary);width:40px;height:40px;border-radius:11px;flex-shrink:0;font-size:19px}.dashboard-shortcuts{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.dashboard-shortcuts a{display:flex;align-items:center;justify-content:center;text-decoration:none;text-align:center;color:var(--text);font-size:12px;font-weight:650;padding:17px 12px;border:1px solid var(--line);border-radius:11px;background:var(--field)}.dashboard-shortcuts a:hover{border-color:var(--primary);color:var(--primary)}.empty-state{padding:30px;text-align:center}.empty-state strong{font-size:18px}.empty-state p{margin-top:8px}.alert{background:var(--panel);color:var(--danger)}.ok{background:var(--panel);color:var(--ok)}.period-switch select{max-width:270px}.theme-toggle{white-space:nowrap}
@media(min-width:801px) and (max-width:1200px){.dashboard-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-columns{grid-template-columns:1fr}.dashboard-shortcuts{grid-template-columns:repeat(2,1fr)}}
@media(max-width:800px){.app{display:block}aside{position:static;height:auto;padding:16px}aside nav{flex-wrap:nowrap;overflow-x:auto}nav a{white-space:nowrap}aside>small{display:none}.content{padding:20px 16px}header{padding:12px 16px;gap:12px}.page-heading{align-items:start;flex-direction:column}.page-heading h1{font-size:1.7rem}.dashboard-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.kpi{padding:16px}.kpi strong{font-size:17px;white-space:normal;overflow-wrap:anywhere}.dashboard-columns{grid-template-columns:1fr;gap:0}.dashboard-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr))}.panel{padding:17px}.period-switch{max-width:100%}.period-switch label{min-width:0}.period-switch select{max-width:100%;min-width:0}}
@media print{aside,header,.page-heading>.btn{display:none!important}.dashboard-cards{grid-template-columns:repeat(2,1fr)}.dashboard-columns{grid-template-columns:1fr}.panel,.kpi{box-shadow:none;background:white;color:black}.content{padding:0}.monthly-chart{max-height:200px}}
input[type=checkbox]{display:inline-block;width:auto;margin-right:.5rem}nav.quick{display:flex;align-items:center}section article.panel{box-shadow:none}tfoot th{font-weight:700}small{overflow-wrap:anywhere}
:root[data-theme=dark]{--bg:#091322;--panel:#13253c;--line:#35516e;--text:#edf5ff;--muted:#b4c5dd;--primary:#57cefa;--surface:#0b1729;--field:#14273f;--table:#1c3450;--highlight:#173d6a;background:#091322}
[data-theme=dark] body{background:radial-gradient(ellipse at 65% 0%,#17416966,transparent 45%),linear-gradient(140deg,#0b1729,#07111e)}
[data-theme=dark] aside{background:linear-gradient(170deg,#0c1627,#10223a);border-right-color:#294560}
[data-theme=dark] header{background:linear-gradient(100deg,#101b2e,#15283e);box-shadow:0 8px 28px #0002}
[data-theme=dark] .panel,[data-theme=dark] .kpi{background:linear-gradient(130deg,#233851ed,#112239f5);border-color:#47627e;box-shadow:0 10px 26px #0003,inset 0 1px 0 #ffffff0b}
[data-theme=dark] .kpi:first-child{background:linear-gradient(135deg,#124957e8,#11273d);border-color:#258696}
[data-theme=dark] .kpi strong{color:#f5fbff}[data-theme=dark] .kpi>span{color:#d4e9f7}[data-theme=dark] .kpi small{color:#b6c9dd}
[data-theme=dark] nav a.active{background:linear-gradient(100deg,#225de3,#1645aa);border:1px solid #4f7bec;color:white;box-shadow:0 4px 18px #0a36a73d}
[data-theme=dark] .page-heading{border-left:5px solid #38e1e0;padding:10px 0 10px 18px}
[data-theme=dark] .task-icon{color:#51dbef;background:#1b4259;border:1px solid #38748b}
[data-theme=dark] button:not(.secondary),[data-theme=dark] .btn,[data-theme=dark] .quick a{background:linear-gradient(100deg,#158fdc,#2459ec);border-color:#5996ff}
[data-theme=dark] .dashboard-shortcuts a{background:linear-gradient(130deg,#263f5a,#172a42);border-color:#4b6988;color:#e8f7ff}
[data-theme=dark] .drop-zone{background:linear-gradient(120deg,#18435c88,#13283f);border-color:#51dbe8}
.global-search{display:flex;gap:6px;flex:1;min-width:170px;max-width:430px}.global-search input{min-width:0}.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}
@media(max-width:800px){.global-search{flex-basis:100%;max-width:none}[data-theme=dark] .page-heading{padding-left:12px}.page-heading h1{font-size:1.6rem}}
@media print{[data-theme=dark] body,[data-theme=dark] .panel,[data-theme=dark] .kpi{background:white!important;color:black!important;box-shadow:none}[data-theme=dark] .kpi strong,[data-theme=dark] .kpi>span,[data-theme=dark] .kpi small{color:black!important}}
.receipt-image{display:block;max-width:100%;max-height:650px;object-fit:contain;margin:20px auto;border:1px solid var(--line);border-radius:12px;background:white}textarea{width:100%;font:inherit;color:var(--text);background:var(--field);border:1px solid var(--line);border-radius:10px;padding:12px}.feature-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 0;border-bottom:1px solid var(--line)}button.visual-switch{position:relative;display:flex;align-items:center;justify-content:space-between;min-width:96px;padding:7px 10px;border:1px solid #6b7b8f;background:#35445a;color:#edf5ff;border-radius:30px;gap:10px}button.visual-switch[aria-checked=true]{background:linear-gradient(100deg,#138d98,#2369e4);border-color:#58e2ee}.switch-knob{display:block;width:22px;height:22px;border-radius:50%;background:#eff8ff;box-shadow:0 2px 5px #0004}.visual-switch[aria-checked=true] .switch-knob{order:2}.switch-label{display:flex;align-items:center;gap:12px}.switch-checkbox{appearance:none;width:58px!important;height:30px;border-radius:20px;background:#48566c;position:relative;cursor:pointer}.switch-checkbox:before{content:'';position:absolute;left:5px;top:5px;width:18px;height:18px;border-radius:50%;background:white}.switch-checkbox:checked{background:#158f9c}.switch-checkbox:checked:before{left:33px}.demo-banner{padding:14px 18px;border:1px solid #35bdcf;background:#10445a;color:#e2fcff;border-radius:12px;font-weight:700}.receipt-upload[aria-busy=true]{opacity:.85}.upload-status{min-height:1.5rem}
button:disabled{cursor:not-allowed;opacity:.6}.receipt-upload input[type=file]{max-width:100%;font-size:13px}.auth-box .visual-switch{margin-left:auto}
.receipt-review-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:start}.receipt-review-grid>section{min-width:0}.receipt-review-grid .entry-form{max-width:none}.receipt-review-grid .receipt-image{max-height:650px;margin-top:24px}@media(max-width:1000px){.receipt-review-grid{grid-template-columns:1fr}.receipt-review-grid .receipt-image{max-height:420px}}@media print{.receipt-review-grid{display:block}}
.full-width{grid-column:1/-1}.description-field{position:relative}.description-suggestions{list-style:none;position:absolute;top:76px;left:0;right:0;z-index:20;margin:0;padding:6px;background:var(--panel);border:1px solid var(--line);border-radius:10px;box-shadow:0 8px 30px #0004;max-height:260px;overflow-y:auto}.description-suggestions li{padding:9px 12px;border-radius:7px;cursor:pointer;overflow-wrap:anywhere}.description-suggestions li[aria-selected=true],.description-suggestions li:hover{background:var(--highlight);color:var(--primary)}.fast-entry .entry-vat{border:1px solid var(--line);border-radius:10px;padding:8px 12px}.entry-vat summary{font-weight:650}.fast-entry button:disabled{opacity:.65}.fast-entry small{font-size:12px;color:var(--muted)}
