:root{--bg:#0f0f11;--bg2:#16161a;--bg3:#1e1e24;--border:rgba(255,255,255,0.07);--border2:rgba(255,255,255,0.12);--text:#e8e6e0;--text2:#8a8880;--text3:#5a5856;--red-dim:rgba(248,113,113,0.12);--accent:#4ade80;--accent2:#22c55e;--accent-dim:rgba(74,222,128,0.12);--blue:#60a5fa;--blue-dim:rgba(96,165,250,0.12);--amber:#fbbf24;--amber-dim:rgba(251,191,36,0.12);--red:#f87171;--purple:#a78bfa;--mono:'IBM Plex Mono',monospace;--sans:'DM Sans',sans-serif;}
*{box-sizing:border-box;margin:0;padding:0;}
body{background:var(--bg);color:var(--text);font-family:var(--sans);font-size:14px;line-height:1.5;}
#login-screen{display:flex;align-items:center;justify-content:center;min-height:100vh;}
.login-box{background:var(--bg2);border:1px solid var(--border2);border-radius:14px;padding:40px 36px;width:360px;}
.login-logo{font-size:13px;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;color:var(--accent);margin-bottom:6px;}
.login-sub{font-size:12px;color:var(--text3);font-family:var(--mono);margin-bottom:28px;}
.form-group{margin-bottom:16px;}
.form-label{font-size:11px;color:var(--text3);font-family:var(--mono);text-transform:uppercase;letter-spacing:0.06em;margin-bottom:6px;display:block;}
.form-input{width:100%;padding:9px 12px;background:var(--bg3);border:1px solid var(--border2);color:var(--text);border-radius:7px;font-family:var(--mono);font-size:13px;outline:none;}
.form-input:focus{border-color:var(--accent);}
.input-wrap{position:relative;}
.input-wrap .form-input.has-toggle{padding-right:38px;}
.input-wrap input[type="password"].has-toggle,.input-wrap input[type="text"].has-toggle{padding-right:38px;}
.pass-toggle{position:absolute;right:6px;top:50%;transform:translateY(-50%);background:transparent;border:none;color:var(--text3);cursor:pointer;font-size:14px;padding:4px 7px;border-radius:5px;line-height:1;display:flex;align-items:center;justify-content:center;transition:color .15s,background .15s;}
.pass-toggle:hover{color:var(--text);background:var(--border2);}
.pass-toggle.active{color:var(--accent);}
.btn-login{width:100%;padding:10px;background:var(--accent);color:#0a1a0f;border:none;border-radius:7px;font-family:var(--sans);font-size:14px;font-weight:600;cursor:pointer;margin-top:8px;}
.btn-login:hover{background:var(--accent2);}
.login-error{color:var(--red);font-size:12px;font-family:var(--mono);margin-top:10px;display:none;}
#app{display:none;}
.shell{display:flex;min-height:100vh;}
.sidebar{width:220px;flex-shrink:0;background:var(--bg2);border-right:1px solid var(--border);display:flex;flex-direction:column;position:sticky;top:0;height:100vh;overflow-y:auto;}
.main{flex:1;min-width:0;padding:24px 28px;}
.logo{padding:20px 18px 14px;border-bottom:1px solid var(--border);}
.logo-name{font-size:13px;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;color:var(--accent);}
.logo-sub{font-size:11px;color:var(--text3);font-family:var(--mono);margin-top:2px;}
.nav{padding:10px 0;flex:1;}
.nav-section{padding:8px 18px 4px;font-size:10px;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:var(--text3);}
.nav-item{display:flex;align-items:center;gap:10px;padding:8px 18px;cursor:pointer;border-left:2px solid transparent;font-size:13px;color:var(--text2);transition:background 0.15s;}
.nav-item:hover{background:rgba(255,255,255,0.04);color:var(--text);}
.nav-item.active{background:rgba(74,222,128,0.06);border-left-color:var(--accent);color:var(--accent);font-weight:500;}
.conn-status{padding:12px 18px;border-top:1px solid var(--border);font-size:11px;color:var(--text3);font-family:var(--mono);}
.conn-dot{display:inline-block;width:6px;height:6px;background:var(--accent);border-radius:50%;margin-right:6px;animation:pulse 2s ease-in-out infinite;}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:0.4}}
.page{display:none;}.page.active{display:block;}
.page-header{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid var(--border);}
.page-title{font-size:20px;font-weight:500;}
.page-sub{font-size:12px;color:var(--text3);font-family:var(--mono);margin-top:3px;}
.filters-panel{background:var(--bg2);border:1px solid var(--border);border-radius:10px;padding:18px 20px;margin-bottom:20px;}
.filters-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;}
.filter-group{display:flex;flex-direction:column;gap:5px;}
.filter-label{font-size:11px;color:var(--text2);font-family:var(--mono);text-transform:uppercase;letter-spacing:0.07em;font-weight:600;}

/* DATETIME PICKER CUSTOM */
.dt-group{display:flex;flex-direction:column;gap:5px;}
.dt-inputs{display:flex;gap:6px;align-items:center;}
.dt-date{background:var(--bg3);border:1px solid var(--border2);color:var(--text);padding:7px 10px;border-radius:6px;font-family:var(--mono);font-size:12px;outline:none;width:110px;}
.dt-time{background:var(--bg3);border:1px solid var(--border2);color:var(--text);padding:7px 8px;border-radius:6px;font-family:var(--mono);font-size:12px;outline:none;width:72px;}
.dt-date:focus,.dt-time:focus{border-color:var(--accent);}
.dt-sep{color:var(--text3);font-size:11px;font-family:var(--mono);}
.dt-cal-btn{background:var(--bg3);border:1px solid var(--border2);color:var(--text2);cursor:pointer;padding:6px 10px;border-radius:6px;font-size:14px;}
.dt-cal-btn:hover{color:var(--accent);border-color:var(--accent);}

select{background:var(--bg3);border:1px solid var(--border2);color:var(--text);padding:7px 10px;border-radius:6px;font-family:var(--mono);font-size:12px;cursor:pointer;outline:none;appearance:none;width:100%;}
select:focus{border-color:var(--accent);}
.filters-actions{display:flex;gap:10px;margin-top:16px;padding-top:14px;border-top:1px solid var(--border);align-items:center;flex-wrap:wrap;}
.btn{padding:8px 20px;background:var(--accent);color:#0a1a0f;border:none;border-radius:6px;font-family:var(--sans);font-size:13px;font-weight:600;cursor:pointer;}
.btn:hover{background:var(--accent2);}
.btn-ghost{background:var(--bg3);color:var(--text2);border:1px solid var(--border2);}
.btn-ghost:hover{background:rgba(255,255,255,0.06);color:var(--text);}
.btn-sm{padding:5px 14px;font-size:12px;}
.radio-group{display:flex;flex-direction:column;gap:6px;}
.radio-item{display:flex;align-items:center;gap:6px;cursor:pointer;}
.radio-item input{accent-color:var(--accent);cursor:pointer;}
.radio-item label{font-size:12px;color:var(--text2);cursor:pointer;font-family:var(--mono);}
.card{background:var(--bg2);border:1px solid var(--border);border-radius:10px;overflow:hidden;margin-bottom:16px;}
.card-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border);}
.card-title{font-size:13px;font-weight:500;}
.card-badge{font-size:10px;font-family:var(--mono);padding:2px 8px;border-radius:20px;font-weight:500;}
.badge-green{background:var(--accent-dim);color:var(--accent);}
.badge-blue{background:var(--blue-dim);color:var(--blue);}
.badge-amber{background:var(--amber-dim);color:var(--amber);}
.tbl-wrap{overflow-x:auto;}
table{width:100%;border-collapse:collapse;}
th{padding:8px 12px;text-align:left;font-size:12px;font-weight:600;letter-spacing:0.07em;text-transform:uppercase;color:var(--text2);border-bottom:1px solid var(--border);font-family:var(--mono);white-space:nowrap;}
th.right,td.right{text-align:right;}
td{padding:8px 12px;font-size:12px;border-bottom:1px solid var(--border);color:var(--text2);font-family:var(--mono);white-space:nowrap;}
tr:last-child td{border-bottom:none;}
tr:hover td{background:rgba(255,255,255,0.02);}
td.val{font-weight:500;color:var(--text);}
td.pos{color:var(--accent);font-weight:500;}
td.neg{color:var(--red);}
td.name{font-family:var(--sans);color:var(--text);white-space:normal;max-width:280px;}
td.nr{color:var(--text3);text-align:right;}
td.ora{color:var(--blue);font-family:var(--mono);}
tr.total-row td{background:rgba(74,222,128,0.08);border-top:2px solid var(--accent);font-weight:600;color:var(--text);}
tr.subtotal-row td{background:rgba(96,165,250,0.06);border-top:1px solid rgba(96,165,250,0.2);font-weight:500;color:var(--blue);}
tr.grup-header td{background:rgba(251,191,36,0.08);border-top:1px solid rgba(251,191,36,0.2);font-weight:600;font-size:11px;color:var(--amber);letter-spacing:0.05em;text-transform:uppercase;}
.tva-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;padding:16px;}
.tva-card{background:var(--bg3);border:1px solid var(--border);border-radius:8px;padding:14px 16px;}
.tva-label{font-size:10px;color:var(--text3);font-family:var(--mono);text-transform:uppercase;letter-spacing:0.07em;margin-bottom:6px;}
.tva-val{font-size:18px;font-weight:500;font-family:var(--mono);color:var(--accent);}
.tva-sub{font-size:11px;color:var(--text3);font-family:var(--mono);margin-top:4px;}
.state-box{padding:36px;text-align:center;color:var(--text);font-family:var(--mono);font-size:12px;}
.state-box.loading::before{content:'⟳ ';animation:spin 1s linear infinite;display:inline-block;}
@keyframes spin{to{transform:rotate(360deg)}}
.state-box.error{color:var(--red);}
.opts-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px;margin-top:16px;padding-top:14px;border-top:1px solid var(--border);}
@media(max-width:900px){.opts-grid{grid-template-columns:1fr;}}
::-webkit-scrollbar{width:4px;height:4px;}
::-webkit-scrollbar-thumb{background:rgba(255,255,255,0.1);border-radius:2px;}
@media print{.sidebar,.filters-panel,.filters-actions,.btn,.btn-ghost{display:none!important;}.main{padding:0;}body{background:white;color:black;}.card{border:1px solid #ccc;}th{background:#f5f5f5!important;color:#333!important;}td{color:#333!important;}}

/* ── LOGO Master Computers (Nivel 1: doar logo, paleta dark/verde NEATINSĂ) ── */
/* Raport logo 2.4:1 (600×250) → height:auto ca să nu se deformeze. */
.brand-logo{display:block;height:auto;max-width:100%;}
.brand-logo--sidebar{width:170px;margin:0 0 10px;}
.brand-logo--login{width:220px;margin:0 auto 12px;}
.login-box .login-sub{text-align:center;}
/* ── Starea rezervoarelor (CostEngine wet) ─────────────── */
/* Singurul filtru e Locația (gestiunea a fost scoasă) → dropdown la 25% din lățime,
   cu podea de 180px pe ecrane înguste. Scoped pe pagina asta — NU atinge .filters-grid
   global (celelalte rapoarte au locație+gestiune și își păstrează layout-ul). */
#page-stare-rezervoare .filters-grid{grid-template-columns:minmax(180px,25%);}
.sr-row{padding:16px 4px;border-bottom:1px solid var(--border);}
.sr-row:last-child{border-bottom:none;}
.sr-row-head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin-bottom:12px;}
.sr-name{font-size:16px;font-weight:600;letter-spacing:.01em;}
.sr-code{font-size:12px;color:var(--text3);font-family:var(--mono);}
/* Cele trei valori pe linie proprie sub denumire — etichetă mică deasupra, cifră lizibilă. */
.sr-metrics{display:flex;flex-wrap:wrap;gap:14px 40px;}
.sr-metric{display:flex;flex-direction:column;gap:3px;}
.sr-metric-lbl{font-size:10px;color:var(--text3);font-family:var(--mono);text-transform:uppercase;letter-spacing:.07em;}
.sr-metric-val{font-size:16px;font-weight:500;font-family:var(--mono);color:var(--text);}
.sr-metric-val.sr-metric-accent{color:var(--accent);font-weight:600;}
.sr-bar{height:10px;background:var(--bg3);border:1px solid var(--border);border-radius:6px;overflow:hidden;margin-top:14px;}
.sr-fill{height:100%;border-radius:6px;transition:width .4s ease;}
.sr-bar-meta{display:flex;justify-content:space-between;margin-top:6px;font-family:var(--mono);font-size:12px;color:var(--text2);}
/* ── Stare rezervoare v2: meter cu prag, badge-uri de stare, custodie ──────
   Culorile de carburant sunt CATEGORICE (identitate), validate cu
   dataviz/scripts/validate_palette.js pe suprafața dark #16161a: L în banda
   0.48–0.67, ΔE CVD adiacent ≥ 12.6, contrast ≥ 3:1, toate PASS.
   Amber și roșu NU apar aici: sunt rezervate STĂRILOR pe aceeași bară
   (aproape de prag / sub prag) — altfel motorina normală ar arăta ca o alertă.
   Identitatea nu stă niciodată doar în culoare: fiecare rând poartă denumirea
   carburantului ca etichetă directă. */
/* Sloturi CATEGORICE per CodCarb — paleta din mockup (raport-rezervoare Claude V2.html):
   motorină verde, benzină 95 albastru, benzină 98 portocaliu, GPL violet, AdBlue cyan.
   Portocaliul poate sta aici DOAR pentru că în modul dashboard starea nu se codifică prin
   umplere, ci prin cele două linii întrerupte trase peste butoi (amber la prag minim, roșu
   la stoc mort) plus badge. În tabel, unde bara SE recolorează după stare, culoarea de
   carburant nu se folosește pentru fill. */
:root{--fuel-1:#4fb833;--fuel-2:#2f8ee0;--fuel-3:#e59623;--fuel-4:#a05fd6;--fuel-5:#29b0e8;--fuel-6:#d9557c;--fuel-alt:#7c8794;
      --orange:#f0a92e;}
.sr-row.sr-row-alert{background:linear-gradient(90deg,var(--red-dim),transparent 55%);border-radius:8px;padding-left:12px;}
.sr-row.sr-row-idle .sr-name{color:var(--text2);}
.sr-head-right{margin-left:auto;display:flex;align-items:center;gap:14px;}
.sr-badge{font-size:10px;font-family:var(--mono);text-transform:uppercase;letter-spacing:.06em;padding:3px 8px;border-radius:5px;white-space:nowrap;}
.sr-badge-ok{background:var(--accent-dim);color:var(--accent);}
.sr-badge-crit{background:rgba(251,146,60,.15);color:var(--orange);}
.sr-badge-stop{background:var(--red);color:#1a0b0b;font-weight:700;}
.sr-badge-warn{background:var(--amber-dim);color:var(--amber);}
.sr-badge-none{background:rgba(255,255,255,.05);color:var(--text3);}
.sr-thresh-mort{background:var(--text3);opacity:.7;}
.sr-val-pos{color:var(--accent);}
/* ── MOD DASHBOARD ─────────────────────────────────────────────────────────────────── */
.sr-dash-2col{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
@media (max-width:1100px){.sr-dash-2col{grid-template-columns:1fr;}}
.sr-kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;}
.sr-kpi{background:var(--bg3);border:1px solid var(--border);border-radius:9px;padding:12px 14px;}
.sr-kpi-head{display:flex;align-items:center;gap:7px;margin-bottom:8px;}
.sr-kpi-name{font-size:11px;color:var(--text2);font-weight:600;letter-spacing:.02em;line-height:1.25;}
.sr-kpi-val{font-family:var(--mono);font-size:20px;font-weight:600;}
.sr-kpi-unit{font-size:12px;color:var(--text3);font-weight:400;}
.sr-kpi-sub{font-size:10px;color:var(--text3);font-family:var(--mono);margin-bottom:8px;}
.sr-kpi-row{display:flex;justify-content:space-between;font-size:10px;color:var(--text3);font-family:var(--mono);padding:2px 0;}
.sr-kpi-row b{color:var(--text);font-weight:600;}
.sr-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0;display:inline-block;}
.sr-tank-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:14px;}
.sr-tank{text-align:center;background:var(--bg3);border:1px solid var(--border);border-radius:9px;padding:10px 8px 12px;}
.sr-tank-svg{width:100%;max-width:110px;height:auto;}
.sr-tank-shell{fill:var(--bg);stroke:var(--border2);stroke-width:1.5;}
.sr-tank-empty{stroke-dasharray:4 3;}
.sr-tank-thresh{stroke:var(--red);stroke-width:1.6;}
.sr-tank-mort{stroke:var(--text3);stroke-width:1.2;stroke-dasharray:3 2;}
.sr-tank-pct{fill:var(--text);font-family:var(--mono);font-size:15px;font-weight:600;text-anchor:middle;paint-order:stroke;stroke:var(--bg);stroke-width:3px;}
.sr-tank-na{fill:var(--text3);font-family:var(--mono);font-size:15px;text-anchor:middle;}
.sr-tank-name{font-size:10px;font-weight:600;margin-top:6px;line-height:1.25;}
.sr-tank-code{font-size:10px;color:var(--text3);font-family:var(--mono);}
.sr-tank-qty{font-family:var(--mono);font-size:14px;font-weight:600;margin-top:4px;}
.sr-tank-cap{font-size:10px;color:var(--text3);font-family:var(--mono);margin-bottom:6px;}
.sr-alert-row,.sr-need-row{display:flex;align-items:center;gap:9px;padding:7px 0;border-bottom:1px solid var(--border);font-size:12px;}
.sr-alert-row:last-child,.sr-need-row:last-child{border-bottom:none;}
.sr-alert-name{font-weight:600;flex:1;min-width:0;}
.sr-alert-qty,.sr-need-qty{font-family:var(--mono);font-weight:600;}
.sr-alert-note{font-size:11px;color:var(--text2);font-family:var(--mono);}
.sr-need-qty{margin-left:auto;color:var(--accent);}
.sr-need-total{display:flex;justify-content:space-between;padding:10px 0 2px;margin-top:6px;border-top:1px solid var(--border2);font-size:12px;color:var(--text2);}
.sr-need-total b{font-family:var(--mono);font-size:15px;color:var(--text);}
/* Bare de nivel: eticheta, bara și procentul pe ACELAȘI rând — altfel nu se vede care e care. */
.sr-lvl-row{display:flex;align-items:center;gap:10px;padding:5px 0;}
.sr-lvl-name{width:150px;flex-shrink:0;font-size:11px;font-family:var(--mono);color:var(--text);}
.sr-lvl-fuel{display:block;color:var(--text3);font-size:9px;line-height:1.2;}
.sr-lvl-track{position:relative;flex:1;height:9px;background:var(--bg3);border:1px solid var(--border);border-radius:5px;}
.sr-lvl-fill{position:absolute;left:0;top:0;bottom:0;border-radius:4px;}
.sr-lvl-thresh{position:absolute;top:-3px;bottom:-3px;width:2px;background:var(--red);border-radius:1px;}
.sr-lvl-pct{width:56px;text-align:right;font-family:var(--mono);font-size:12px;flex-shrink:0;}
/* Semnul marjei trebuie să bată specificitatea lui .sr-kpi-row b, altfel marja negativă
   rămâne albă și se pierde exact informația care contează. */
.sr-kpi-row b.sr-val-neg{color:var(--red);}
.sr-kpi-row b.sr-val-pos{color:var(--accent);}
.sr-donut-wrap{display:flex;gap:18px;align-items:center;flex-wrap:wrap;}
.sr-donut-svg{width:150px;height:150px;flex-shrink:0;}
.sr-donut-c1{fill:var(--text);font-family:var(--mono);font-size:15px;font-weight:600;text-anchor:middle;}
.sr-donut-c2{fill:var(--text3);font-family:var(--mono);font-size:9px;text-anchor:middle;}
.sr-donut-legend{flex:1;min-width:170px;}
.sr-legend-row{display:flex;align-items:center;gap:8px;font-size:11px;padding:3px 0;}
.sr-legend-name{flex:1;min-width:0;color:var(--text2);}
.sr-legend-row b{font-family:var(--mono);color:var(--text);}
.sr-legend-pct{font-family:var(--mono);color:var(--text3);min-width:44px;text-align:right;}
.sr-daily-svg{width:100%;display:block;}
.sr-daily-x{fill:var(--text2);font-family:var(--mono);font-size:9px;text-anchor:middle;}
.sr-daily-tot{fill:var(--text3);font-family:var(--mono);font-size:8px;text-anchor:middle;}
.sr-suggest{text-align:right;font-family:var(--mono);line-height:1.2;}
.sr-suggest-lbl{display:block;font-size:9px;color:var(--text3);text-transform:uppercase;letter-spacing:.07em;}
.sr-suggest-val{display:block;font-size:15px;font-weight:600;color:var(--text);}
.sr-val-neg{color:var(--red);}
/* Track FĂRĂ overflow:hidden — marcajul de prag trebuie să iasă peste bară ca
   să fie vizibil; umplerea e clampată la 100% în JS, deci nu depășește. */
.sr-track{position:relative;height:10px;background:var(--bg3);border:1px solid var(--border);border-radius:6px;margin-top:16px;}
.sr-track-fill{height:100%;border-radius:5px;transition:width .4s ease;}
.sr-thresh{position:absolute;top:-4px;bottom:-4px;width:2px;background:var(--red);border-radius:1px;}
.sr-track-meta{display:flex;justify-content:space-between;gap:12px;margin-top:7px;font-family:var(--mono);font-size:12px;color:var(--text2);}
.sr-state{display:inline-flex;align-items:center;gap:5px;font-weight:600;}
.sr-margin{margin-top:8px;font-size:12px;color:var(--text2);}
.sr-margin strong{color:var(--text);font-family:var(--mono);font-weight:600;}
.sr-margin-crit{color:var(--red);}
.sr-margin-crit strong{color:var(--red);}
.sr-note{margin-top:12px;font-size:12px;color:var(--text3);font-style:italic;}
.sr-custody{margin:0 0 20px;padding:11px 14px;background:var(--bg2);border:1px dashed var(--border2);border-radius:10px;font-size:12px;color:var(--text2);display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;}
.sr-custody-val{font-family:var(--mono);font-size:15px;font-weight:600;color:var(--text);}
.sr-custody-note{color:var(--text3);}
/* ── Profit Lunar: tab-uri de mod + bară de pivot ─────── */
.pl-tabs{display:flex;gap:4px;margin-bottom:16px;border-bottom:1px solid var(--border);}
.pl-tab{padding:10px 18px;cursor:pointer;font-size:13px;border-bottom:2px solid transparent;color:var(--text2);font-family:var(--mono);}
.pl-tab.active{border-bottom-color:var(--accent);color:var(--accent);font-weight:500;}
/* Profit Lunar: un singur rând de controale — filtre de bază COMPACTE + pivot inline. */
#page-profit-lunar .pl-controls{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px 10px;}
#page-profit-lunar .pl-f{display:flex;flex-direction:column;gap:4px;}
#page-profit-lunar .pl-controls select{width:auto;min-width:0;}
#page-profit-lunar #pl-loc{width:150px;}
#page-profit-lunar #pl-gest{width:140px;}
#page-profit-lunar #pl-an{width:62px;}
/* Titlurile centrate pe mijlocul câmpului lor (label = bloc pe toată lățimea câmpului). */
#page-profit-lunar .filter-label{font-size:10px;text-align:center;display:block;width:100%;}
/* Status deasupra butonului Generare (eliberează spațiu orizontal pe rând). */
#page-profit-lunar .pl-btn-group{display:flex;flex-direction:column;gap:4px;align-items:center;}
#page-profit-lunar #pl-status{text-align:center;}
/* Controalele de pivot: umplu spațiul din dreapta pe același rând, separate vizual. */
.pl-pivot-inline{align-items:flex-end;gap:8px 10px;padding-left:10px;border-left:1px solid var(--border2);}
.pl-ctl{display:flex;flex-direction:column;gap:4px;font-family:var(--mono);}
.pl-ctl>span{font-size:10px;color:var(--text3);text-transform:uppercase;letter-spacing:.06em;text-align:center;display:block;width:100%;}
.pl-ctl select{width:116px;min-width:0;}

/* Alimentări pe client: același tratament compact — rând unic, titluri centrate, status peste butoane. */
#page-alimentari-client .ac-controls{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px 12px;}
#page-alimentari-client .filter-group{display:flex;flex-direction:column;gap:4px;}
#page-alimentari-client .filter-label{font-size:10px;text-align:center;display:block;width:100%;}
#page-alimentari-client .ac-controls select{width:auto;min-width:0;}
#page-alimentari-client #ac-loc{width:150px;}
#page-alimentari-client #ac-client{width:230px;}
#page-alimentari-client .ac-btn-group{display:flex;flex-direction:column;gap:4px;align-items:center;}
#page-alimentari-client #ac-status{text-align:center;}
#page-alimentari-client .ac-btns{display:flex;gap:8px;}
.pl-section-h{padding:12px 16px 6px;font-size:12px;font-weight:600;color:var(--text2);font-family:var(--mono);text-transform:uppercase;letter-spacing:.05em;border-top:1px solid var(--border);}

/* ── Dashboard: butoaie + KPI + axe grafice (vizualul din mockup) ──────────────────── */
.sr-tank-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(258px,1fr));gap:14px;}
.sr-tank{background:var(--bg3);border:1px solid var(--border);border-radius:10px;padding:12px 12px 10px;}
.sr-tank-stop{border-color:var(--red);box-shadow:inset 0 0 0 1px rgba(248,113,113,.25);}
.sr-tk{width:100%;height:auto;display:block;margin:2px 0 6px;}
.sr-tk-gol{padding:7px 8px;display:flex;align-items:center;justify-content:center;text-align:center;
  border:1px dashed var(--border2);border-radius:7px;color:var(--text3);font-family:var(--mono);font-size:10px;
  line-height:1.35;margin:4px 0 2px;}
/* Rezervoarele fără nivel nu au butoi de desenat, deci cardul nu trebuie să ocupe cât unul
   cu butoi: se aliniază sus și se strânge la conținut. */
.sr-tank-mic{align-self:start;}
.sr-tk-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.sr-tk-code{font-family:var(--mono);font-size:12px;font-weight:600;color:var(--text);}
.sr-tk-name{font-size:10px;color:var(--text2);flex:1;min-width:0;line-height:1.25;}
.sr-tk-pct{font-family:var(--mono);font-size:19px;font-weight:600;display:flex;align-items:baseline;gap:8px;}
.sr-tk-pct span{font-size:11px;font-weight:400;color:var(--text3);}
.sr-tk-rows{margin-top:8px;display:grid;grid-template-columns:1fr 1fr;gap:2px 12px;}
.sr-tk-rows div{display:flex;justify-content:space-between;font-size:10px;color:var(--text3);font-family:var(--mono);}
.sr-tk-rows b{color:var(--text);font-weight:600;}
.sr-kpi-k{font-size:10px;color:var(--text3);font-family:var(--mono);text-transform:uppercase;letter-spacing:.07em;}
.sr-kpi-v{font-family:var(--mono);font-size:22px;font-weight:600;margin:4px 0 3px;color:var(--accent);}
.sr-kpi-v.sr-kpi-neutru{color:var(--text);}
.sr-kpi-v.sr-kpi-warn{color:var(--red);}
.sr-kpi-d{font-size:10px;color:var(--text3);line-height:1.4;}
.sr-ax{fill:var(--text3);font-family:var(--mono);font-size:10px;}
.sr-vl{fill:var(--text2);font-family:var(--mono);font-size:10px;font-weight:600;}
