/* MplusKASSA huisstijl: https://www.mpluskassa.nl/ — lokaal, zonder externe fonts of scripts. */
:root{--orange:#e94e1b;--teal:#b93c15;--dark:#1d1d1b;--bg:#f5f4f1;--border:#e6e4df;--muted:#6f6c67;--blue:#8b939a;--soft:#fff0e9;--button:#c94116}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--dark);font:14px/1.5 "Segoe UI",Arial,sans-serif}button,input,select{font:inherit}button{cursor:pointer;transition:background .15s,border-color .15s,box-shadow .15s}button:disabled{opacity:.45;cursor:default}[hidden]{display:none!important}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--orange);outline-offset:3px}
.sidebar{position:fixed;inset:0 auto 0 0;width:248px;background:#fff;border-right:1px solid var(--border);padding:32px 22px 24px;display:flex;flex-direction:column;z-index:2}.brand{display:flex;flex-direction:column;align-items:flex-start;gap:12px;text-decoration:none;color:var(--dark)}.brand-logo{display:block;width:200px;max-width:100%;height:auto}.brand-sub{display:block;padding-left:1px;font-size:10px;letter-spacing:2px;text-transform:uppercase;font-weight:600;color:var(--muted)}.nav-caption{font-size:10px;letter-spacing:1.7px;font-weight:700;color:var(--muted);margin:46px 12px 14px}nav{display:grid;gap:8px}nav button{display:flex;align-items:center;gap:12px;padding:14px 12px;background:transparent;border:1px solid transparent;border-radius:12px;text-align:left;color:#5f5c57;font-size:13px}nav button:hover{background:#f7f6f3}nav button.active{color:#a83410;background:var(--soft);font-weight:700;border-color:#f9d9cb}.sidebar-bottom{margin-top:auto;border-top:1px solid var(--border);padding-top:20px;font-size:12px;font-weight:600}.sidebar-bottom div{font-size:10px;color:var(--muted);font-weight:400;margin-top:5px}.dot{display:inline-block;background:var(--orange);width:7px;height:7px;border-radius:50%;margin-right:7px}
main{margin-left:248px;padding:34px 34px 22px;max-width:1920px}header{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:24px}.eyebrow{font-size:10px;letter-spacing:1.7px;font-weight:750;color:#a83410;display:flex;align-items:center;gap:8px}.eyebrow:before{content:"";width:7px;height:7px;border:2px solid var(--orange)}h1{font:800 34px/1.15 Arial,Helvetica,sans-serif;letter-spacing:-1.1px;margin:10px 0 9px}header p{margin:0;color:var(--muted);font-size:12px}.header-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.primary,.secondary,.danger{padding:11px 18px;border-radius:999px;font-size:12px;font-weight:700;min-height:42px;white-space:nowrap}.primary{background:var(--button);border:1px solid var(--button);color:#fff}.primary:hover{background:#ad3511;border-color:#ad3511}.secondary{background:#fff;border:1px solid #d6d3cd;color:var(--dark)}.secondary:hover{background:#f4f2ee;border-color:#aaa59c}.text-button{border:0;background:none;color:#a83410;padding:10px 5px;font-size:12px;font-weight:600}.text-button:hover{text-decoration:underline}.app-state{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:6px;font-size:11px;color:var(--muted)}.status{font-size:11px;color:var(--muted);margin-bottom:18px;line-height:1.6}
.filters{display:flex;align-items:flex-end;flex-wrap:wrap;gap:12px;background:#fff;border:1px solid var(--border);border-radius:18px;padding:20px;margin-bottom:22px}.filters label{display:grid;gap:7px;flex:1;min-width:135px;font-size:10px;font-weight:650;color:var(--muted);letter-spacing:.2px}input,select{padding:10px 11px;border:1px solid #dcd9d2;background:#fff;border-radius:8px;color:var(--dark);min-height:40px;min-width:0;width:100%}input:hover,select:hover{border-color:#aaa59c}input:focus,select:focus{border-color:var(--orange)}
.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:24px}.metrics article{position:relative;overflow:hidden;border:1px solid var(--border);border-radius:18px;background:#fff;padding:22px 20px}.metrics article:before{content:"";position:absolute;top:0;left:20px;right:20px;height:3px;background:#d8d4cc}.metrics article:first-child:before{background:var(--orange)}.metrics article:first-child{background:#fffaf7;border-color:#f1c7b6}.metrics span{font-size:11px;color:var(--muted);font-weight:600}.metrics strong{display:block;font:800 clamp(23px,2vw,31px)/1.2 Arial,Helvetica,sans-serif;letter-spacing:-.9px;white-space:nowrap;margin:12px 0 10px}.metrics small{font-size:10px;color:var(--muted)}
.overview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.price-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.card{min-width:0;background:#fff;border:1px solid var(--border);border-radius:18px;padding:23px;box-shadow:0 3px 12px #1d1d1b03}.price-grid .card{padding:20px}.wide{grid-column:span 2}.card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px}h2{font:750 17px/1.35 Arial,Helvetica,sans-serif;letter-spacing:-.3px;margin:0}h2+p{font-size:11px;color:var(--muted);margin:7px 0 0}.pill{border:1px solid #f2c5b3;border-radius:999px;background:#fff4ef;color:#a83410;padding:5px 11px;font-size:10px;font-weight:600;white-space:nowrap}.price-note{margin:14px 2px 24px;font-size:10px;line-height:1.8;color:var(--muted)}.trend{height:218px}.trend svg{height:100%;width:100%;overflow:visible}.trend svg text{fill:var(--muted)}.bar-row{margin:18px 0}.bar-label{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:8px;font-size:12px}.bar-label span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bar-label strong{font-weight:700;white-space:nowrap}.bar-track{height:8px;border-radius:99px;background:#f0eeea}.bar-fill{height:100%;border-radius:99px;min-width:0;background:var(--orange)}.bar-sub{font-size:10px;color:var(--muted);margin-top:6px;line-height:1.6}.chart-note{font-size:10px;color:var(--muted);line-height:1.8;margin-top:18px}.no-data{padding:25px 0;font-size:12px;color:var(--muted)}.rauwkost-summary{display:block;padding:18px 20px;margin-top:22px;background:#f6f4f0;border-radius:12px;border-left:3px solid var(--orange)}.rauwkost-summary span{font-size:11px;color:#a83410;font-weight:600}.rauwkost-summary strong{display:block;font:800 25px/1.3 Arial,Helvetica,sans-serif;margin:7px 0;color:var(--dark)}.rauwkost-summary small{font-size:10px;color:var(--muted)}.quarter-card{margin-top:24px}.quarter-card .trend{height:260px}
.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:12px;white-space:nowrap}th,td{text-align:right;padding:14px 12px;border-bottom:1px solid #efede9}th{font-size:11px;font-weight:650;background:#f6f4f0;color:#625f59}th:first-child,td:first-child,th:nth-child(2),td:nth-child(2){text-align:left}thead tr:first-child th[colspan]{text-align:center;color:#a83410}tbody tr:hover{background:#fff6f1}tfoot{font-weight:700}.table-foot{margin-top:16px;font-size:11px;color:var(--muted)}.search{max-width:250px}.info{display:grid;gap:8px;border-radius:14px;background:#eeece7;padding:20px 22px;margin-top:24px;font-size:11px;color:#66625b;line-height:1.8}.info strong{font-size:12px;color:var(--dark)}.selection-empty{padding:24px;text-align:center;color:var(--muted)}
.empty{position:relative;text-align:center;padding:64px 24px;min-height:440px;border:1px solid var(--border);border-radius:22px;background:#fff;overflow:hidden}.empty:before{content:"";display:block;width:42px;height:42px;border:7px solid var(--orange);border-radius:6px;transform:rotate(-7deg);margin:0 auto 25px}.empty-icon{display:none}.empty h2{font-size:30px;font-weight:800;letter-spacing:-.7px}.empty p{font-size:14px;color:var(--muted);line-height:1.9}.empty-steps{display:flex;justify-content:center;gap:18px;margin:28px 0 0;font-size:11px;color:#a83410;font-weight:600}.empty-steps span{background:#fff3ed;padding:9px 14px;border-radius:999px}.empty .muted{font-size:11px}footer{display:flex;justify-content:space-between;gap:18px;margin-top:28px;font-size:10px;color:var(--muted);line-height:1.8}
dialog{border:1px solid var(--border);border-radius:20px;padding:28px;width:480px;max-width:95vw;color:var(--dark);box-shadow:0 24px 80px #1d1d1b33}dialog::backdrop{background:#1d1d1b77;backdrop-filter:blur(3px)}dialog p{font-size:12px;color:var(--muted);line-height:1.8}.dialog-head{display:flex;justify-content:space-between;align-items:center;gap:15px}dialog label{display:grid;gap:8px;margin:16px 0;font-size:12px;color:var(--muted)}.dialog-actions,.week-inputs{display:flex;gap:12px}.week-inputs label{flex:1}.checkbox{display:flex!important;align-items:center;gap:10px}.checkbox input{width:17px;min-height:17px;accent-color:var(--orange)}#settings-status,#request-error{min-height:18px;color:#a83410}.update-progress{display:flex;align-items:center;gap:15px;background:#fff0e9;border:1px solid #f4d1c2;border-radius:12px;padding:16px 20px;margin-bottom:16px;color:#a83410}.update-progress progress{flex:1;accent-color:var(--orange);height:9px}.update-progress span{font-size:12px}.danger-zone{border-top:1px solid var(--border);padding-top:18px;margin-top:24px}.danger-zone h3{font-size:14px;color:#a53535}.danger{background:#a53535;border:1px solid #a53535;color:#fff}.danger:hover{background:#8c2929}#clear-error{color:#a53535}
@media(min-width:1700px){.price-grid{gap:20px}.metrics strong{font-size:34px}}
@media(max-width:1450px){.price-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.metrics strong{font-size:25px}.header-actions{max-width:440px}main{padding:28px 24px}.overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1100px){.sidebar{width:214px;padding:28px 18px}.brand-logo{width:176px}main{margin-left:214px;padding:24px 20px}header{align-items:flex-start;flex-direction:column}.header-actions{justify-content:flex-start;max-width:none}.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.filters label{min-width:140px}}
@media(max-width:800px){.sidebar{position:static;width:100%;padding:20px;border-right:0;border-bottom:1px solid var(--border)}.brand{flex-direction:row;align-items:center;justify-content:space-between}.brand-logo{width:185px}.brand-sub{font-size:9px}.nav-caption,.sidebar-bottom{display:none}nav{display:flex;overflow:auto;gap:6px;margin-top:20px}nav button{padding:10px 12px;white-space:nowrap;font-size:12px}main{margin-left:0;padding:24px 16px}h1{font-size:30px}.overview-grid{grid-template-columns:1fr}.wide{grid-column:auto}.card-head{flex-wrap:wrap}.empty-steps{flex-direction:column;gap:10px;max-width:280px;margin-left:auto;margin-right:auto}.empty{padding:45px 20px}.filters{padding:16px}.quarter-card .trend{height:220px}footer{flex-direction:column;gap:5px}}
@media(max-width:520px){.price-grid{grid-template-columns:1fr}.metrics{gap:10px}.metrics article{padding:18px 14px}.metrics strong{font-size:22px}.metrics span{font-size:10px}.filters label{min-width:125px}.app-state{align-items:flex-start}.header-actions{gap:6px}.primary,.secondary{font-size:11px;padding:10px 14px}.card{padding:20px}.update-progress{flex-wrap:wrap}.update-progress progress{min-width:100px}.dialog-actions{flex-wrap:wrap}.empty h2{font-size:26px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
@media print{.sidebar,.filters,.header-actions,.app-state,footer,.info{display:none}main{margin:0;padding:0}body{background:#fff}.card,.metrics{break-inside:avoid}.card{box-shadow:none}.metrics strong{font-size:24px}}

.loading-state{min-height:440px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:#fff;border:1px solid var(--border);border-radius:22px;padding:48px 24px;gap:12px}.loading-spinner{display:block;width:48px;height:48px;border:4px solid #f4ddd3;border-top-color:var(--orange);border-radius:50%;animation:dashboard-loading .85s linear infinite;margin-bottom:14px}.loading-state h2{font-size:24px}.loading-state p{max-width:540px;margin:0;color:var(--muted);line-height:1.8}.loading-state button{margin-top:12px}@keyframes dashboard-loading{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.loading-spinner{animation-duration:2s}}
.login-page{min-height:100dvh;display:grid;place-items:center;padding:24px}.login-card{width:min(440px,100%);padding:36px;background:white;border-radius:20px;border:1px solid #e8e6e2}.login-card h1{font-size:32px}.login-card label,dialog label{display:grid;gap:8px;margin:16px 0}.login-error{color:#a12212}.tenant-bar{display:flex;align-items:end;gap:18px;margin:0 0 20px;padding:18px;background:white;border-radius:14px;border:1px solid #e8e6e2;flex-wrap:wrap}.tenant-bar label{display:grid;gap:6px;min-width:220px}.management{width:min(960px,94vw);max-width:960px}.manage-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.manage-grid form{border:1px solid #e8e6e2;padding:20px;border-radius:12px}.manage-grid small{display:block;color:#6f6c67;margin:8px 0 16px}.manage-grid .check{display:flex;align-items:center;gap:8px}.manage-grid .check input{width:auto}#admin-message:empty{display:none}#admin-message{padding:12px;background:#fff0e9;border-radius:8px}@media(max-width:700px){.manage-grid{grid-template-columns:1fr}.tenant-bar{align-items:stretch}.tenant-bar>*{width:100%}}
.account-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap}

/* Interactieve kwartiergrafiek */
.quarter-card{margin-top:0}#quarters{position:relative;touch-action:pan-y}#quarters svg{display:block;overflow:hidden}#quarters .quarter-unit{font-size:10px;fill:var(--muted)}.quarter-tooltip{position:absolute;top:12px;width:220px;max-width:calc(100% - 8px);pointer-events:none;z-index:1;border:1px solid var(--border);border-radius:12px;padding:12px 14px;background:rgba(255,255,255,.98);box-shadow:0 5px 20px #1d1d1b18;color:var(--dark);font-size:12px}.quarter-tooltip>strong{display:block;margin-bottom:9px;font-size:13px}.quarter-tooltip>div{display:flex;justify-content:space-between;gap:18px;margin:6px 0}.quarter-tooltip b{font-variant-numeric:tabular-nums;white-space:nowrap}.quarter-tooltip small{display:block;color:var(--muted);font-size:10px;margin-top:8px}.quarter-total{border-top:1px solid var(--border);padding-top:7px}.quarter-dot{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:7px}.quarter-dot.external{background:var(--orange)}.quarter-dot.internal{background:#30302d}.quarter-picker{display:flex;align-items:center;gap:12px;margin-top:12px;color:var(--muted);font-size:11px}.quarter-picker input{width:auto;min-width:70px;flex:1;accent-color:var(--orange)}.quarter-picker output{font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--dark)}@media(max-width:480px){.quarter-picker{flex-wrap:wrap;gap:8px}.quarter-picker>span{width:100%}}.management-tabs{display:flex;gap:10px;margin:20px 0}.management-tabs [aria-selected=true]{border-color:var(--orange);background:var(--soft);color:#a83410}.users-table th,.users-table td{text-align:left}.users-table td:last-child{white-space:normal;min-width:180px}.users-table td .text-button{margin-right:10px}.user-add{margin-top:26px;border-top:1px solid var(--border);padding-top:12px}.user-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}.login-filters{display:flex;align-items:end;gap:16px}.login-filters label{min-width:230px;margin:10px 0}.login-filters button{margin:10px 0}#users-message:not(:empty){padding:12px;background:var(--soft);border-radius:10px}#logins-more{margin-top:18px}@media(max-width:600px){.user-fields{grid-template-columns:1fr;gap:0}.login-filters{align-items:stretch;flex-direction:column;gap:0}.management{padding:20px}}
/* Vergrote rapportages, met lokale doorklikdetails. */
.detail-open{padding:7px 12px;min-height:34px;font-size:11px}.detail-dialog{width:min(1440px,96vw);max-width:1440px;max-height:92dvh;overflow:auto}.detail-dialog>.dialog-head{position:sticky;top:-28px;background:#fff;z-index:5;padding:10px 0;border-bottom:1px solid var(--border);align-items:flex-start}.detail-dialog h2{font-size:21px;overflow-wrap:anywhere}.detail-dialog .dialog-head p{margin:8px 0;font-size:12px}.detail-navigation{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:12px 0}.detail-navigation>span{flex:1;color:var(--muted);font-size:12px}.detail-note{background:#f6f4f0;border-radius:10px;padding:12px 15px}.detail-controls{display:flex;gap:18px;align-items:end;flex-wrap:wrap;margin:18px 0}.detail-controls label{min-width:180px;flex:1;margin:0}.detail-prices{display:flex;border:1px solid var(--border);border-radius:999px;padding:4px;gap:3px}.detail-prices button{border:0;background:transparent;border-radius:999px;padding:9px 16px;color:var(--muted)}.detail-prices [aria-pressed=true]{background:var(--soft);color:#a83410;font-weight:700}.detail-chart{display:grid;grid-template-columns:1fr 1fr;gap:5px 28px;margin:24px 0}.detail-chart:empty{display:none}.detail-chart-caption{grid-column:1/-1;margin:0 0 8px;color:var(--muted)}.detail-bar{position:relative;border:0;background:#fff;text-align:left;padding:9px 0 13px;min-width:0}.detail-bar-label{display:flex;justify-content:space-between;align-items:baseline;gap:18px;font-size:12px;margin-bottom:7px}.detail-bar-label>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.detail-bar-label strong{white-space:nowrap}.detail-bar-track{display:block;height:8px;background:#f0eeea;border-radius:99px}.detail-bar-track>span{display:block;height:100%;background:#30302d;border-radius:99px}.detail-bar.external .detail-bar-track>span{background:var(--orange)}.detail-bar.negative .detail-bar-track>span{background:#a53535}.detail-bar:hover .detail-bar-label>span{text-decoration:underline}.detail-hover{display:none;position:absolute;right:0;top:100%;width:250px;background:#fff;border:1px solid var(--border);border-radius:10px;padding:12px 14px;box-shadow:0 5px 20px #1d1d1b26;z-index:3;pointer-events:none;font-size:12px}.detail-hover>span{display:flex;justify-content:space-between;gap:18px;margin:5px 0}.detail-bar:hover .detail-hover,.detail-bar:focus-visible .detail-hover{display:block}.detail-table th{white-space:normal;min-width:100px}.detail-table th,.detail-table td{font-size:12px;padding:12px 10px}.detail-table td small{display:block;color:var(--muted);font-size:10px}.detail-link{background:none;border:0;color:#a83410;padding:3px 0;text-align:left;max-width:330px;white-space:normal;overflow-wrap:anywhere}.detail-link:hover{text-decoration:underline}.detail-pagination{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:20px}.detail-pagination span,#detail-summary{color:var(--muted);font-size:12px}.detail-table-wrap{border:1px solid var(--border);border-radius:12px}.detail-table tr:last-child td{border-bottom:0}.detail-table td:nth-child(n+3){text-align:right}@media(max-width:750px){.detail-dialog{padding:18px}.detail-dialog>.dialog-head{top:-18px}.detail-chart{grid-template-columns:1fr}.detail-prices{width:100%}.detail-prices button{flex:1}.detail-controls{gap:12px}.detail-dialog h2{font-size:18px}.detail-pagination{gap:10px}.detail-pagination button{padding:9px 12px}}

.rauwkost-blocks{display:grid;gap:12px}.rauwkost-blocks .rauwkost-summary{margin-top:0;padding:14px 18px}.rauwkost-summary.total{background:var(--soft)}.rauwkost-summary.internal{border-left-color:#30302d}.rauwkost-summary.internal span{color:#30302d}
/* Drie vergelijkingsbalken per groep, betaalmethode of artikel. */
.comparison-item{margin:20px 0 24px}.comparison-name{font-size:12px;margin-bottom:10px;line-height:1.5;overflow-wrap:anywhere}.comparison-line{display:grid;grid-template-columns:48px minmax(30px,1fr) 85px;align-items:center;gap:10px;margin:7px 0;font-size:11px}.comparison-line>span{color:var(--muted)}.comparison-line>strong{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.comparison-track{height:7px;background:#f0eeea;border-radius:99px;overflow:hidden}.comparison-track>div{height:100%;border-radius:99px;background:#287d88}.comparison-line.external .comparison-track>div{background:var(--orange)}.comparison-line.internal .comparison-track>div{background:#30302d}.comparison-line.total>span{color:#287d88}.comparison-line.external>span{color:#b93c15}.comparison-line.internal>span{color:#30302d}.comparison-foot{font-size:10px;color:var(--muted);margin-top:8px;line-height:1.6}.comparison-foot:empty{display:none}@media(max-width:520px){.comparison-line{grid-template-columns:43px minmax(25px,1fr) 78px;gap:8px}}
.detail-comparison{text-align:left;min-width:0;padding:12px 0 18px}.detail-comparison .comparison-name{display:block}.detail-comparison .comparison-track>span{display:block;height:100%;border-radius:99px;background:#287d88}.detail-comparison .external .comparison-track>span{background:var(--orange)}.detail-comparison .internal .comparison-track>span{background:#30302d}.detail-comparison .comparison-foot{display:block}.detail-comparison:hover .comparison-name{text-decoration:underline}
.timeline-mode{display:grid;gap:6px;font-size:11px;color:var(--muted);min-width:200px;max-width:260px}.timeline-mode select{font-size:12px}.quarter-card .card-head{flex-wrap:wrap}.timeline-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:12px}.timeline-actions>span{font-size:11px;color:var(--muted)}.timeline-actions .secondary{min-height:34px;padding:7px 12px;font-size:11px}

.rauwkost-summary .rauwkost-revenue{display:block;font-size:12px;font-weight:600;color:var(--dark);margin-top:6px}
/* Licht/donker: keuze per browser, zonder wijzigingen aan de omzetgegevens. */
:root{--surface:#fff;--surface-alt:#f6f4f0;--chart-grid:#e8e6e2;--series-external:#e94e1b;--series-internal:#30302d;--series-bpe:#8b939a}.brand-logo-dark{display:none}
:root[data-theme=dark]{color-scheme:dark;--bg:#12171c;--surface:#1b232b;--surface-alt:#25303a;--track:#35424e;--border:#3b4854;--dark:#edf2f5;--muted:#b7c2cb;--soft:#382a24;--orange:#ff8056;--teal:#ffb596;--chart-grid:#3b4854;--series-external:#ff8056;--series-internal:#dce3e8;--series-bpe:#abb8c3}
:root[data-theme=dark] .brand-logo-light{display:none}:root[data-theme=dark] .brand-logo-dark{display:block}
[data-theme=dark] :is(.sidebar,.card,.filters,.metrics article,.empty,.loading-state,.login-card,dialog,.detail-bar,.detail-dialog>.dialog-head){background:var(--surface);color:var(--dark);border-color:var(--border)}
[data-theme=dark] :is(input,select,.secondary){background:var(--surface-alt);color:var(--dark);border-color:var(--border)}
[data-theme=dark] :is(.secondary:hover,nav button:hover){background:#303d49;border-color:#697b8a}
[data-theme=dark] nav button{color:#d2dbe2}[data-theme=dark] nav button.active{background:var(--soft);color:#ffb596;border-color:#82543d}
[data-theme=dark] :is(.text-button,.detail-link,.eyebrow,.empty-steps,.rauwkost-summary span,.pill){color:#ffb596}
[data-theme=dark] .metrics article:first-child{background:var(--soft);border-color:#82543d}[data-theme=dark] .metrics article:before{background:var(--border)}[data-theme=dark] .metrics article:first-child:before{background:var(--orange)}
[data-theme=dark] :is(th,.info,.detail-note,.rauwkost-summary){background:var(--surface-alt);color:var(--muted)}[data-theme=dark] :is(th,.info strong){color:var(--dark)}[data-theme=dark] :is(th,td){border-color:var(--border)}[data-theme=dark] tbody tr:hover{background:#293641}
[data-theme=dark] :is(.bar-track,.comparison-track,.detail-bar-track){background:var(--track)}
[data-theme=dark] :is(.quarter-tooltip,.detail-hover){background:var(--surface);color:var(--dark);border-color:var(--border);box-shadow:0 5px 24px #0008}
[data-theme=dark] .quarter-dot.external{background:var(--series-external)}[data-theme=dark] .quarter-dot.internal{background:var(--series-internal)}
[data-theme=dark] :is(.rauwkost-summary.total,.empty-steps span,.pill,.update-progress,#users-message:not(:empty),#admin-message,.management-tabs [aria-selected=true]){background:var(--soft);border-color:#82543d;color:#ffb596}
[data-theme=dark] .rauwkost-summary.internal{border-left-color:var(--series-internal)}[data-theme=dark] .rauwkost-summary.internal span{color:var(--series-internal)}
[data-theme=dark] :is(.comparison-line.total>span){color:#70cdd4}[data-theme=dark] .comparison-track>div,[data-theme=dark] .detail-comparison .comparison-track>span{background:#70cdd4}
[data-theme=dark] .comparison-line.external>span{color:#ffb596}[data-theme=dark] .comparison-line.external .comparison-track>div,[data-theme=dark] .detail-comparison .external .comparison-track>span{background:var(--series-external)}
[data-theme=dark] .comparison-line.internal>span{color:var(--series-internal)}[data-theme=dark] .comparison-line.internal .comparison-track>div,[data-theme=dark] .detail-comparison .internal .comparison-track>span{background:var(--series-internal)}
[data-theme=dark] :is(#settings-status,#request-error){color:#ffb596}[data-theme=dark] :is(.login-error,#clear-error,.danger-zone h3){color:#ffa89d}[data-theme=dark] .manage-grid form{border-color:var(--border)}
@media print{:root[data-theme=dark]{color-scheme:light!important;--bg:#fff;--surface:#fff;--surface-alt:#f6f4f0;--track:#eee;--border:#ddd;--dark:#1d1d1b;--muted:#625f59;--soft:#fff0e9;--orange:#e94e1b;--chart-grid:#ddd;--series-external:#e94e1b;--series-internal:#30302d;--series-bpe:#8b939a}#theme-toggle{display:none!important}[data-theme=dark] body{background:#fff;color:#1d1d1b}}
[data-theme=dark] input::placeholder{color:#b0bdc7;opacity:1}
