:root{--ink:#172026;--muted:#68747c;--paper:#f4f7f6;--surface:#fff;--line:#dce4e1;--green:#0c7a62;--green2:#075947;--red:#c34747;--amber:#f0b44d;--shadow:0 12px 30px rgba(23,32,38,.08)}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.5 system-ui,-apple-system,"Segoe UI",sans-serif}header{height:68px;background:#142b2a;color:white;display:flex;align-items:center;padding:0 max(4vw,20px);gap:35px;position:sticky;top:0;z-index:10}.brand{color:white;text-decoration:none;font-weight:900;letter-spacing:.08em}.brand span{color:#68d5b8}nav{display:flex;gap:7px;flex:1}nav a{color:#dcebea;text-decoration:none;padding:10px 12px;border-radius:8px;font-size:.9rem}nav a:hover{background:#24403f}.menu{display:none;margin-left:auto}main{max-width:1500px;margin:auto;padding:34px max(3vw,18px) 70px}.heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:24px}.eyebrow{margin:0;color:var(--green);font-size:.76rem;font-weight:800;letter-spacing:.16em}h1{font-size:clamp(2rem,4vw,3.5rem);line-height:1;margin:.2rem 0 0;letter-spacing:-.04em}h2{margin-top:0}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:22px}.cards article,.panel{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:20px;box-shadow:var(--shadow)}.cards span{color:var(--muted);font-size:.85rem}.cards strong{display:block;font-size:1.8rem;margin-top:4px}.toolbar{display:flex;gap:10px;align-items:center;margin:18px 0}.toolbar input,.toolbar select{max-width:280px}.toolbar a{color:var(--green)}input,select,textarea,button{font:inherit}input,select,textarea{width:100%;padding:12px 14px;border:1px solid #cbd6d2;border-radius:10px;background:white;color:var(--ink)}textarea{min-height:90px}.toolbar button,.button,button{border:0;border-radius:10px;padding:11px 16px;background:#e8eeec;color:var(--ink);font-weight:750;text-decoration:none;cursor:pointer;display:inline-block}.button.primary,.toolbar button{background:var(--green);color:white}.button.primary:hover{background:var(--green2)}.button.danger{background:#fff0ef;color:#a52f2f}.table-wrap{background:white;border:1px solid var(--line);border-radius:16px;overflow:auto;box-shadow:var(--shadow)}table{border-collapse:collapse;width:100%;min-width:850px}th,td{padding:13px 14px;border-bottom:1px solid #e8eeec;text-align:left;white-space:nowrap}th{position:sticky;top:0;background:#f9fbfa;color:#63706e;text-transform:uppercase;font-size:.72rem;letter-spacing:.08em}tr:hover td{background:#fbfdfc}tr.low td:first-child{box-shadow:inset 4px 0 var(--amber)}.actions{display:flex;gap:7px}.qty{font-variant-numeric:tabular-nums}.negative{color:var(--red);font-weight:700}.positive{color:var(--green);font-weight:700}.tag{display:inline-block;background:#eef2f1;padding:4px 8px;border-radius:20px;font-size:.75rem}.tag.consumption{background:#fff0ef;color:#9b3434}.tag.receipt{background:#e5f6f1;color:#07624f}.form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;max-width:800px}.form label,.panel form label{display:grid;gap:7px;font-weight:700}.form small,.panel p{font-weight:400;color:var(--muted)}.wide{grid-column:1/-1}.split{display:grid;grid-template-columns:1fr 1fr;gap:18px}.stack{display:flex;flex-direction:column;gap:10px}.monthly th,.monthly td{padding:9px 10px;font-size:.8rem}.monthly th:first-child,.monthly td:first-child{position:sticky;left:0;background:white;z-index:2}.empty{text-align:center;color:var(--muted);padding:50px}details form{display:flex;gap:6px;margin-top:7px}@media(max-width:850px){header{height:auto;min-height:64px;flex-wrap:wrap;padding-block:13px}.menu{display:block}nav{display:none;flex-basis:100%;flex-direction:column}nav.open{display:flex}.cards{grid-template-columns:1fr 1fr}.heading{align-items:flex-start;gap:18px}.split,.form{grid-template-columns:1fr}.wide{grid-column:auto}.toolbar{align-items:stretch;flex-wrap:wrap}.toolbar input,.toolbar select{max-width:none;flex:1 1 180px}}@media(max-width:500px){.cards{grid-template-columns:1fr}.heading{flex-direction:column}main{padding-top:24px}}
.notice{padding:13px 16px;border-radius:12px;margin:0 0 18px;border:1px solid var(--line);background:white}.notice.success{background:#e8f7f2;color:#075947;border-color:#b9e4d6}.notice.error{background:#fff0ef;color:#9b3434;border-color:#f0c7c3}.danger-panel{border-color:#efc8c5}.hint{margin:0!important;font-size:.85rem}.admin-list{margin-top:20px}.heading.compact{margin-bottom:4px}.check{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center;gap:8px!important;font-weight:600!important}.check input{width:auto}.inactive-row{opacity:.58}.admin-grid .panel{min-width:0}
.lang-switch{display:flex;gap:4px;margin-left:auto}.lang-switch a{color:#dcebea;text-decoration:none;padding:7px 9px;border-radius:8px;font-size:.78rem;font-weight:800}.lang-switch a:hover,.lang-switch a.active{background:#24403f;color:white}@media(max-width:850px){.lang-switch{order:2}.menu{order:3}nav{order:4}}

.userbox{display:flex;gap:.5rem;align-items:center;margin-left:auto}.userbox small{opacity:.7}.userbox form{margin:0}.login-wrap{max-width:460px;margin:8vh auto}.login-card form{display:grid;gap:1rem}.login-card input{width:100%;box-sizing:border-box}

.low-stock-badge{display:inline-block;margin-top:.3rem;font-weight:800;font-size:.78rem}.cards article a{display:block;margin-top:.35rem;font-size:.8rem}

.quick-form{max-width:850px}.quick-form #product-search{font-size:1.15rem;font-weight:700}.quick-form #quantity{font-size:1.35rem;font-weight:800}.quick-actions{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}.quick-actions .primary{font-size:1.05rem;padding:.9rem 1.2rem}

.quick-type-bar{display:flex;gap:.55rem;flex-wrap:wrap;margin:0 0 1rem}.quick-type{display:inline-flex;padding:.65rem .9rem;border:1px solid var(--border);border-radius:.65rem;text-decoration:none;font-weight:800;background:var(--surface)}.quick-type.active{outline:3px solid currentColor}.quick-selected{display:flex;gap:1rem;align-items:center;margin-bottom:1rem}.quick-selected strong{font-size:1.25rem}

.stats-grid{align-items:start}.bar-list{display:grid;gap:.9rem}.bar-row>div:first-child{display:flex;justify-content:space-between;gap:1rem;margin-bottom:.3rem}.bar-track{height:12px;border-radius:999px;background:rgba(127,127,127,.16);overflow:hidden}.bar-fill{height:100%;background:currentColor;border-radius:999px;min-width:2px}.stats-cards strong{font-size:1.65rem}

/* CONCEPT DASHBOARD */
body{background:#f5f7fa;color:#152235}.app-shell{display:flex;min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:252px;background:#102136;color:#fff;padding:18px 15px;display:flex;flex-direction:column;z-index:30}.brand-side{display:flex;gap:11px;align-items:center;color:#fff;text-decoration:none;padding:5px 8px 22px}.brand-side strong{display:block;font-size:14px}.brand-side small{display:block;font-size:10px;color:#9fb0c2;margin-top:3px}.brand-mark{width:35px;height:35px;background:#1475eb;border-radius:10px;display:grid;place-items:center}.side-nav{display:flex!important;flex-direction:column;gap:3px}.side-nav a{display:flex;gap:12px;align-items:center;padding:10px 12px;color:#dce5ee!important;text-decoration:none;border-radius:7px;font-size:13px}.side-nav a:hover,.side-nav .home-link{background:#1475eb;color:#fff!important}.nav-label{font-size:9px;letter-spacing:.09em;color:#8093a8;margin:17px 11px 5px}.side-foot{margin-top:auto;border-top:1px solid #2b3b4d;padding:17px 10px;color:#71859b;font-size:10px}
.workspace{margin-left:252px;width:calc(100% - 252px)}.topbar{height:76px;background:#fff;border-bottom:1px solid #e4e9ef;display:flex;align-items:center;padding:0 28px;position:sticky;top:0;z-index:20}.welcome{display:flex;flex-direction:column}.welcome strong{font-size:15px}.welcome small{font-size:11px;color:#718096;margin-top:2px}.top-actions{margin-left:auto;display:flex;align-items:center;gap:18px}.lang-switch{display:flex;border:1px solid #dfe5eb;border-radius:8px;overflow:hidden}.lang-switch a{padding:8px 10px;text-decoration:none;color:#475569}.lang-switch a.active{background:#1475eb;color:#fff}.userbox{display:flex!important;align-items:center;gap:8px}.avatar{width:34px;height:34px;border-radius:50%;background:#edf1f5;display:grid;place-items:center;font-weight:800}.userbox>div{display:flex;flex-direction:column}.userbox small{font-size:9px;color:#7c8998}.userbox form{margin:0}.userbox button{border:0;background:transparent}.sidebar-toggle{display:none}.workspace main{max-width:1560px;margin:auto;padding:24px 28px 50px}
.dash-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:15px}.dash-cards article{background:#fff;border:1px solid #e2e8ef;border-radius:12px;padding:20px;display:flex;align-items:center;gap:16px;box-shadow:0 2px 8px rgba(16,33,54,.04)}.dash-cards .ico{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;color:#fff;font-style:normal;font-size:24px;font-weight:800}.blue{background:#1976e9}.green{background:#27b86b}.purple{background:#9254de}.orange{background:#ff780d}.dash-cards small{display:block;font-size:10px;font-weight:800;color:#526174}.dash-cards strong{display:block;font-size:24px;margin:4px 0}.dash-cards span{font-size:10px;color:#778394}
.panel{background:#fff;border:1px solid #e2e8ef;border-radius:12px;box-shadow:0 2px 8px rgba(16,33,54,.04);overflow:hidden}.panel-head{min-height:54px;padding:0 18px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #edf0f4}.panel-head h2{font-size:12px;margin:0}.panel-head a,.bottom-link{font-size:11px;color:#126bd2;text-decoration:none}.dash-row{display:grid;gap:14px;margin-bottom:15px}.dash-main{grid-template-columns:1.5fr 1fr .7fr}.dash-bottom{grid-template-columns:1fr 1.2fr .65fr}.procurement table{width:100%;border-collapse:collapse}.procurement th{font-size:9px;color:#65758a;text-align:left;background:#f8fafc;padding:10px 16px}.procurement td{font-size:11px;padding:12px 16px;border-top:1px solid #edf0f4}.negative{color:#df2c2c;font-weight:700}
.quick-box{padding-bottom:16px}.type-chips{display:flex;gap:5px;padding:16px 16px 7px;flex-wrap:wrap}.type-chips a{font-size:9px;text-decoration:none;padding:7px 8px;border-radius:6px;background:#f1f4f7;color:#3e4c5e}.type-chips a.active{background:#1475eb;color:#fff}.quick-inputs{display:grid;grid-template-columns:1fr 20px 1fr;align-items:end;gap:8px;padding:12px 16px}.quick-inputs label{font-size:10px;color:#59687b}.quick-inputs input{width:100%;margin-top:5px;padding:11px;border:1px solid #dce3ea;border-radius:6px}.quick-inputs>span{padding-bottom:10px;color:#1475eb}.big-save{display:block;width:calc(100% - 32px);margin:10px 16px;background:#1475eb;color:#fff;border:0;border-radius:6px;padding:12px;font-weight:800}.keyhint{display:block;text-align:center;color:#8490a0}
.quick-actions{padding-bottom:12px}.quick-actions>a{display:block;margin:10px 14px;padding:11px;border:1px solid #dfe5eb;border-radius:7px;text-decoration:none;color:#176fd4;font-size:11px}
.metric-list{padding:15px 18px}.metric-list>div{margin-bottom:12px}.metric-list span{display:flex;justify-content:space-between;font-size:10px}.metric-list em,.top-list em{font-style:normal}.metric-track,.mini-track{display:block;height:7px;background:#edf1f5;border-radius:99px;overflow:hidden;margin-top:5px}.metric-track i,.mini-track i{display:block;height:100%;background:#1475eb;border-radius:99px}.bottom-link{display:block;padding:0 18px 16px}.top-list{padding:14px 18px}.top-list>div{display:grid;grid-template-columns:130px 1fr 80px;align-items:center;gap:10px;margin:9px 0;font-size:10px}.top-list .mini-track{margin:0}.system-info dl{margin:0;padding:8px 16px}.system-info dl>div{display:contents}.system-info dt,.system-info dd{font-size:10px;margin:0;padding:11px 0;border-bottom:1px solid #edf0f4}.system-info dt{float:left;clear:left;color:#69778a}.system-info dd{text-align:right}.system-info .status{color:#1a9d59}
@media(max-width:1150px){.dash-cards{grid-template-columns:1fr 1fr}.dash-main,.dash-bottom{grid-template-columns:1fr}.sidebar{transform:translateX(-100%);transition:.2s}.sidebar.open{transform:translateX(0)}.workspace{margin-left:0;width:100%}.sidebar-toggle{display:block;margin-right:15px}}
@media(max-width:600px){.dash-cards{grid-template-columns:1fr}.workspace main{padding:15px 10px}.welcome small,.userbox>div{display:none}.topbar{padding:0 12px}}

/* ===== DASHBOARD PIXEL PASS ===== */
:root{
  --navy:#0e2034; --navy2:#12283f; --blue:#1677ff; --green:#27b96f;
  --purple:#914fe2; --orange:#ff6f0d; --cyan:#18a9c6; --bg:#f4f7fa;
  --line:#e2e8ef; --text:#142136; --muted:#708095; --card:#ffffff;
}
body{background:var(--bg)!important;color:var(--text)!important}
.sidebar{width:230px!important;background:linear-gradient(180deg,#0c1f33 0%,#11283f 100%)!important;padding:18px 14px!important}
.workspace{margin-left:230px!important;width:calc(100% - 230px)!important}
.brand-side{padding:4px 8px 22px!important}
.brand-side strong{font-size:15px!important;letter-spacing:.01em}
.brand-side small{font-size:10px!important}
.brand-mark{width:34px!important;height:34px!important;border-radius:10px!important}
.side-nav{gap:2px!important}
.side-nav a{font-size:13px!important;padding:10px 11px!important;border-radius:7px!important}
.side-nav .home-link{background:#1677ff!important;box-shadow:0 6px 16px rgba(22,119,255,.22)}
.nav-label{font-size:9px!important;margin:17px 10px 5px!important}
.topbar{height:76px!important;padding:0 26px!important;background:#fff!important;border-bottom:1px solid #e7ebf0!important}
.welcome strong{display:block!important;font-size:15px!important;color:#162033!important}
.welcome small{display:block!important;font-size:11px!important;color:#6d7b90!important}
.top-actions{gap:16px!important}
.workspace main{max-width:1600px!important;padding:20px 24px 42px!important}
.hero-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:14px}
.kpi-card{position:relative;min-height:138px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:20px 18px 25px;display:flex;align-items:flex-start;gap:16px;box-shadow:0 2px 8px rgba(15,30,48,.045);overflow:hidden}
.kpi-icon{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;color:#fff;font-size:25px;font-weight:800;flex:0 0 48px}
.kpi-body{min-width:0;padding-top:1px}.kpi-label{display:block;font-size:9px;font-weight:800;letter-spacing:.03em;color:#4a596d;margin-bottom:6px}
.kpi-body strong{display:block;font-size:24px;line-height:1.05;letter-spacing:-.03em;color:#0d1d32}
.kpi-body small{display:block;font-size:10px;color:#7a8899;margin-top:7px}
.kpi-line{position:absolute;left:18px;right:18px;bottom:15px;height:4px;border-radius:99px;background:#edf1f5}
.kpi-line:after{content:"";display:block;height:100%;border-radius:99px;width:38%}
.blue-line:after{background:var(--blue)}.green-line:after{background:var(--green);width:52%}.purple-line:after{background:var(--purple);width:58%}.orange-line:after{background:var(--orange);width:57%}
.dashboard-grid{display:grid;gap:14px;margin-bottom:14px}.top-grid{grid-template-columns:1.48fr 1.04fr .66fr}.bottom-grid{grid-template-columns:1.05fr 1.34fr .72fr}
.dash-panel{background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 2px 8px rgba(15,30,48,.045);overflow:hidden;min-width:0}
.dash-panel-head{height:54px;padding:0 18px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #edf1f4}
.dash-panel-head>div{display:flex;align-items:center;gap:10px}.dash-panel-head h2{margin:0;font-size:12px!important;letter-spacing:.01em;color:#152033}
.dash-panel-head a{font-size:10px;color:#1677ff;text-decoration:none}
.count-badge{background:#fff0f0;border:1px solid #ffd6d6;color:#df3434;font-size:9px;padding:4px 7px;border-radius:999px}
.dash-table{width:100%;border-collapse:collapse}.dash-table th{font-size:8.5px!important;font-weight:800;color:#66768a;background:#f8fafc!important;text-align:left;padding:9px 17px;border-bottom:1px solid #edf1f4}
.dash-table td{font-size:10.5px;padding:11px 17px;border-bottom:1px solid #edf1f4;white-space:nowrap}.dash-table td strong{font-size:11px}.danger-text{color:#e43838;font-weight:700}
.dot{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:7px}.dot-1{background:#1677ff}.dot-2{background:#26b9c7}.dot-3{background:#ef3d9b}.dot-4{background:#f0aa00}.dot-5{background:#7c4bd9}
.empty-ok{color:#1d9b5b!important}.panel-footer-link{display:block;padding:11px 18px;color:#1677ff;text-decoration:none;font-size:10px}
.quick-panel{padding-bottom:10px}.quick-tabs{display:flex;gap:5px;flex-wrap:wrap;padding:15px 15px 8px}.quick-tabs a{padding:7px 8px;border-radius:5px;background:#f0f3f6;color:#455366;text-decoration:none;font-size:8.5px;border:1px solid #e5e9ef}.quick-tabs a.active{background:#1677ff;color:#fff;border-color:#1677ff}
.quick-fields{display:grid;grid-template-columns:1fr 20px 1fr;gap:8px;align-items:end;padding:9px 15px}.quick-fields label{font-size:9.5px;color:#5a697d}.quick-fields input{width:100%;margin-top:5px;padding:10px 9px;border:1px solid #d9e1e9;border-radius:6px;background:#fff}.quick-fields .arrow{padding-bottom:9px;text-align:center;color:#1677ff;font-weight:800}
.save-main{width:calc(100% - 30px);margin:10px 15px 7px;background:#1677ff;color:#fff;border:0;border-radius:6px;padding:12px;font-weight:800;font-size:12px}.shortcut-row{text-align:center;color:#8793a3;font-size:9px}
.actions-panel{padding-bottom:12px}.action-stack{display:grid;gap:10px;padding:13px}.act{display:flex;align-items:center;gap:9px;padding:11px;border:1px solid #dde4eb;border-radius:6px;text-decoration:none;background:#fff;font-size:10px;font-weight:600}.green-act{color:#18a85d}.purple-act{color:#8c4be0}.blue-act{color:#1677ff}.orange-act{color:#f28b00}.cyan-act{color:#1295aa}
.donut-layout{display:grid;grid-template-columns:180px 1fr;gap:18px;align-items:center;padding:18px}
.donut{width:165px;height:165px;border-radius:50%;display:grid;place-items:center;position:relative}.donut-hole{width:92px;height:92px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;flex-direction:column;box-shadow:inset 0 0 0 1px #edf1f4}.donut-hole strong{font-size:14px}.donut-hole span{font-size:9px;color:#7b8797;margin-top:3px}
.legend{display:grid;gap:10px}.legend>div{display:grid;grid-template-columns:1fr auto 42px;align-items:center;gap:9px;font-size:9.5px}.legend span{display:flex;align-items:center;gap:7px}.legend span i{width:8px;height:8px;border-radius:50%}.legend strong{font-size:9.5px}.legend em{font-style:normal;color:#65758a;text-align:right}
.rank-head{display:grid;grid-template-columns:1fr 90px 52px;padding:9px 18px 5px;color:#68778a;font-size:8px;font-weight:800}.rank-list{padding:0 18px 14px}.rank-row{display:grid;grid-template-columns:135px 1fr 72px 44px;gap:10px;align-items:center;margin:8px 0;font-size:9px}.rank-row>span:first-child{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rank-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#6b7280;margin-right:7px}.rank-2{background:#ec4899}.rank-3{background:#8b5cf6}.rank-4{background:#f59e0b}.rank-5{background:#14b8a6}
.rank-bar{height:6px;background:#edf1f5;border-radius:99px;overflow:hidden}.rank-bar i{display:block;height:100%;background:#1677ff;border-radius:99px}.rank-row strong{font-size:9px;text-align:right}.rank-row em{font-style:normal;color:#617186;text-align:right}
.system-list{padding:4px 16px;margin:0}.system-list>div{display:flex;justify-content:space-between;gap:10px;padding:11px 0;border-bottom:1px solid #edf1f4}.system-list dt,.system-list dd{margin:0;font-size:9px}.system-list dt{color:#6f7e90}.system-list dd{color:#172136;text-align:right}.status-pill{background:#eaf8ef;color:#16954f;border:1px solid #bee8cb;border-radius:999px;padding:3px 6px}.system-button{display:block;margin:12px 16px 14px;padding:9px;border:1px solid #9ec7ff;border-radius:6px;text-align:center;color:#1677ff;text-decoration:none;font-size:9.5px}
@media(max-width:1250px){.top-grid,.bottom-grid{grid-template-columns:1fr 1fr}.actions-panel,.system-panel{grid-column:span 2}.hero-kpis{grid-template-columns:1fr 1fr}}
@media(max-width:950px){.sidebar{transform:translateX(-100%)}.sidebar.open{transform:translateX(0)}.workspace{margin-left:0!important;width:100%!important}.sidebar-toggle{display:block!important;margin-right:12px}.top-grid,.bottom-grid{grid-template-columns:1fr}.actions-panel,.system-panel{grid-column:auto}}
@media(max-width:600px){.hero-kpis{grid-template-columns:1fr}.workspace main{padding:12px 9px 30px!important}.topbar{padding:0 12px!important}.welcome small,.userbox>div{display:none!important}.donut-layout{grid-template-columns:1fr}.donut{margin:auto}.rank-row{grid-template-columns:110px 1fr 62px}.rank-row em{display:none}.dash-table-wrap{overflow:auto}}

/* QUICK MENU USABILITY PASS */
.quick-picker{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;padding:14px 15px 4px;border-bottom:1px solid #f0f3f6}
.quick-picker .quick-tabs{padding:0;flex:1}
.quick-select-wrap{display:flex;flex-direction:column;gap:4px;font-size:8.5px;color:#64748b;min-width:132px}
.quick-select-wrap select{height:32px;padding:0 8px;border:1px solid #d9e1e9;border-radius:6px;background:#fff;font-size:9px}
.active-quick-type{display:flex;align-items:center;justify-content:space-between;padding:10px 15px 2px;color:#66768a;font-size:9px}
.active-quick-type strong{color:#152033;font-size:11px}
.quick-fields{padding-top:6px}
.quick-panel .save-main{margin-top:14px;font-size:13px}
.quick-panel .shortcut-row{font-size:9.5px;color:#64748b;padding-bottom:4px}
@media(max-width:650px){.quick-picker{align-items:stretch;flex-direction:column}.quick-select-wrap{min-width:0;width:100%}}

/* REAL KPI PROGRESS + THEME TOGGLE */
.kpi-line:after{display:none!important}
.kpi-line i{display:block;height:100%;border-radius:99px;transition:width .25s ease}
.blue-line i{background:var(--blue)}.green-line i{background:var(--green)}.purple-line i{background:var(--purple)}.orange-line i{background:var(--orange)}
.theme-toggle{width:36px;height:36px;border:1px solid #dfe5eb;border-radius:9px;background:#fff;color:#243247;font-size:18px;display:grid;place-items:center;cursor:pointer}
.theme-toggle:hover{background:#f5f7fa}

html[data-theme="dark"]{
  --bg:#0b1220;--card:#111827;--line:#263244;--text:#e5edf7;--muted:#93a4b8;
}
html[data-theme="dark"] body{background:#0b1220!important;color:#e5edf7!important}
html[data-theme="dark"] .workspace{background:#0b1220}
html[data-theme="dark"] .topbar{background:#0f172a!important;border-color:#253146!important}
html[data-theme="dark"] .welcome strong,
html[data-theme="dark"] .kpi-body strong,
html[data-theme="dark"] .dash-panel-head h2,
html[data-theme="dark"] .active-quick-type strong{color:#eef4fb!important}
html[data-theme="dark"] .welcome small,
html[data-theme="dark"] .kpi-body small,
html[data-theme="dark"] .kpi-label,
html[data-theme="dark"] .shortcut-row,
html[data-theme="dark"] .quick-select-wrap,
html[data-theme="dark"] .quick-fields label{color:#93a4b8!important}
html[data-theme="dark"] .kpi-card,
html[data-theme="dark"] .dash-panel,
html[data-theme="dark"] .panel,
html[data-theme="dark"] .card,
html[data-theme="dark"] .cards article,
html[data-theme="dark"] .table-wrap,
html[data-theme="dark"] .toolbar{background:#111827!important;border-color:#263244!important;box-shadow:0 2px 10px rgba(0,0,0,.2)!important}
html[data-theme="dark"] .dash-panel-head,
html[data-theme="dark"] .system-list>div,
html[data-theme="dark"] .dash-table td{border-color:#263244!important}
html[data-theme="dark"] .dash-table th,
html[data-theme="dark"] th{background:#162033!important;color:#91a1b6!important}
html[data-theme="dark"] .dash-table td,
html[data-theme="dark"] td,
html[data-theme="dark"] .system-list dd,
html[data-theme="dark"] .legend strong,
html[data-theme="dark"] .rank-row strong{color:#e5edf7!important}
html[data-theme="dark"] .dash-table tbody tr:hover,
html[data-theme="dark"] tbody tr:hover{background:#172235!important}
html[data-theme="dark"] input,
html[data-theme="dark"] select,
html[data-theme="dark"] textarea{background:#0f172a!important;border-color:#334155!important;color:#e5edf7!important}
html[data-theme="dark"] input::placeholder{color:#64748b}
html[data-theme="dark"] .quick-tabs a{background:#1b2638;color:#cbd5e1;border-color:#2b394c}
html[data-theme="dark"] .quick-tabs a.active{background:#1677ff;color:#fff;border-color:#1677ff}
html[data-theme="dark"] .act,
html[data-theme="dark"] .system-button,
html[data-theme="dark"] .theme-toggle,
html[data-theme="dark"] .lang-switch{background:#111827!important;border-color:#334155!important}
html[data-theme="dark"] .theme-toggle{color:#f8fafc}
html[data-theme="dark"] .lang-switch a{color:#cbd5e1}
html[data-theme="dark"] .donut-hole{background:#111827;box-shadow:inset 0 0 0 1px #263244}
html[data-theme="dark"] .metric-track,
html[data-theme="dark"] .rank-bar,
html[data-theme="dark"] .kpi-line{background:#263244!important}
html[data-theme="dark"] .tag{background:#1f2937!important;color:#dbe5f1!important}
html[data-theme="dark"] a{color:#68a7ff}

/* ===== MYZIP POLISH PASS ===== */
.myzip-brand{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:3px!important;padding:2px 8px 20px!important}
.myzip-brand img{display:block;width:142px;height:auto;max-height:64px;object-fit:contain;object-position:left center;filter:brightness(0) invert(1)}
.myzip-brand small{margin-left:6px!important;color:#9fb0c2!important;font-size:10px!important;letter-spacing:.02em}
.logout-button{display:inline-flex!important;align-items:center!important;gap:7px!important;background:#ef3340!important;color:#fff!important;border:1px solid #ef3340!important;border-radius:8px!important;padding:8px 10px!important;font-size:11px!important;font-weight:800!important;box-shadow:0 5px 14px rgba(239,51,64,.18)!important;cursor:pointer}
.logout-button:hover{background:#d92532!important;border-color:#d92532!important}
.logout-button span{display:inline!important}
html[data-theme="dark"] .logout-button{background:#ef3340!important;border-color:#ef3340!important;color:#fff!important}
html[data-theme="dark"] .myzip-brand img{filter:brightness(0) invert(1)}
@media(max-width:700px){.logout-button span{display:none!important}.logout-button{width:36px;height:36px;padding:0!important;justify-content:center!important}}

/* HD MYZIP LOGO */
.myzip-brand img{width:150px!important;max-height:68px!important;object-fit:contain!important;object-position:left center!important;filter:none!important}
html[data-theme="dark"] .myzip-brand img{filter:none!important}

/* DARK MYZIP LOGIN */
.login-dark{min-height:100vh;background:radial-gradient(circle at 50% 20%,#173453 0,#0d2136 38%,#081523 100%)!important;color:#eef5fc!important}
.myzip-login-wrap{min-height:100vh;display:grid;place-items:center;padding:24px!important}
.myzip-login-card{width:min(420px,calc(100vw - 32px));background:rgba(13,30,49,.92)!important;border:1px solid #29435e!important;border-radius:16px!important;padding:34px 36px 28px!important;box-shadow:0 28px 70px rgba(0,0,0,.38)!important}
.login-brand{display:flex;flex-direction:column;align-items:center;margin-bottom:27px}.login-brand img{width:205px;height:auto;max-height:96px;object-fit:contain;filter:none!important}.login-brand span{font-size:11px;color:#8faac3;margin-top:3px;letter-spacing:.03em}
.login-heading{text-align:center;margin-bottom:24px}.login-heading h1{font-size:25px;margin:0 0 7px;color:#fff}.login-heading p{font-size:11px;color:#8fa0b3;margin:0}
.myzip-login-card form{display:grid;gap:15px}.myzip-login-card label{font-size:10px;color:#aab9c9;font-weight:700}.myzip-login-card input{display:block;width:100%;margin-top:6px;padding:12px 13px!important;background:#0a1929!important;border:1px solid #31465d!important;border-radius:8px!important;color:#fff!important;outline:none}.myzip-login-card input:focus{border-color:#1677ff!important;box-shadow:0 0 0 3px rgba(22,119,255,.14)}.login-submit{margin-top:5px;background:#1677ff!important;color:#fff!important;border:0!important;border-radius:8px!important;padding:12px!important;font-size:11px!important;font-weight:800!important;letter-spacing:.03em;box-shadow:0 8px 20px rgba(22,119,255,.2)}.login-submit:hover{background:#0e68db!important}
.login-footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #263c53;margin-top:25px;padding-top:18px}.login-footer small{font-size:9px;color:#657b91}.login-lang{display:flex;border:1px solid #30475f;border-radius:7px;overflow:hidden}.login-lang a{padding:6px 9px;color:#9fb0c2;text-decoration:none;font-size:9px}.login-lang a.active{background:#1677ff;color:#fff}

/* ===== FINAL DARK-ONLY UNIFIED MYZIP THEME ===== */
:root{
  --app-blue:#0f2238;
  --app-blue-2:#10263d;
  --app-blue-3:#142c46;
  --app-card:#13283f;
  --app-line:#28415a;
  --app-text:#eef5fc;
  --app-muted:#9bb0c5;
  --app-accent:#1677ff;
}
html,body{background:var(--app-blue)!important;color:var(--app-text)!important}
body{min-height:100vh}
.sidebar{
  background:var(--app-blue)!important;
  border-right:1px solid var(--app-line)!important;
  box-shadow:none!important;
}
.workspace,.workspace main{background:var(--app-blue)!important}
.topbar{
  background:var(--app-blue)!important;
  border-bottom:1px solid var(--app-line)!important;
}
.kpi-card,.dash-panel,.panel,.card,.cards article,.table-wrap,.toolbar{
  background:var(--app-card)!important;
  border-color:var(--app-line)!important;
  box-shadow:0 4px 14px rgba(0,0,0,.12)!important;
}
.dash-panel-head,.system-list>div,.dash-table td,td{
  border-color:var(--app-line)!important;
}
.dash-table th,th{
  background:var(--app-blue-2)!important;
  color:var(--app-muted)!important;
}
.dash-table td,td,.system-list dd,.legend strong,.rank-row strong,
.kpi-body strong,.dash-panel-head h2,.welcome strong,.active-quick-type strong{
  color:var(--app-text)!important;
}
.welcome small,.kpi-body small,.kpi-label,.shortcut-row,.quick-select-wrap,
.quick-fields label,.system-list dt,.legend em,.rank-row em{
  color:var(--app-muted)!important;
}
input,select,textarea{
  background:var(--app-blue-2)!important;
  border-color:#35516d!important;
  color:var(--app-text)!important;
}
input::placeholder,textarea::placeholder{color:#6f879d!important}
.quick-tabs a,.act,.system-button,.lang-switch{
  background:var(--app-blue-2)!important;
  border-color:#35516d!important;
}
.quick-tabs a{color:#cfdae5!important}
.quick-tabs a.active,.lang-switch a.active{background:var(--app-accent)!important;color:#fff!important;border-color:var(--app-accent)!important}
.tag{background:var(--app-blue-3)!important;color:#dfeaf5!important}
.kpi-line,.rank-bar,.metric-track{background:#233a51!important}
.donut-hole{background:var(--app-card)!important;box-shadow:inset 0 0 0 1px var(--app-line)!important}
tbody tr:hover,.dash-table tbody tr:hover{background:#17314d!important}

/* One exact color behind/around the logo: transparent PNG sits directly on sidebar. */
.myzip-brand{
  background:transparent!important;
  padding:6px 8px 18px!important;
  overflow:visible!important;
}
.myzip-brand img{
  width:154px!important;
  max-height:none!important;
  height:auto!important;
  object-fit:contain!important;
  object-position:left center!important;
  filter:none!important;
  background:transparent!important;
  display:block!important;
}
.myzip-brand small{
  color:#9bb0c5!important;
  margin:2px 0 0 5px!important;
}

/* Cleaner SVG menu icons */
.nav-ico{
  width:17px;
  height:17px;
  flex:0 0 17px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.side-nav a{color:#d9e5ef!important}
.side-nav a:hover{background:#17344f!important}
.side-nav .home-link{background:var(--app-accent)!important;color:#fff!important}

/* Dark login uses the very same base blue, no separate gradient. */
.login-dark,
.myzip-login-wrap{
  background:var(--app-blue)!important;
}
.myzip-login-card{
  background:var(--app-card)!important;
  border-color:var(--app-line)!important;
  box-shadow:0 20px 55px rgba(0,0,0,.28)!important;
}
.login-brand img{
  width:230px!important;
  max-height:none!important;
  height:auto!important;
  filter:none!important;
  background:transparent!important;
}
.login-brand span{color:var(--app-muted)!important}
.myzip-login-card input{
  background:var(--app-blue-2)!important;
  border-color:#35516d!important;
}
.login-footer{border-color:var(--app-line)!important}

/* light-theme artifacts are disabled */
.theme-toggle{display:none!important}

/* CLEAN LOGO FIX */
.myzip-brand{overflow:hidden!important}
.myzip-brand img{
  width:142px!important;
  height:74px!important;
  max-width:142px!important;
  max-height:74px!important;
  object-fit:contain!important;
  object-position:left center!important;
  filter:none!important;
  background:transparent!important;
}
.login-brand img{
  width:190px!important;
  height:104px!important;
  max-width:190px!important;
  max-height:104px!important;
  object-fit:contain!important;
  filter:none!important;
  background:transparent!important;
}

/* ===== DARK POLISH: SELECTION + MONTHLY VIEW ===== */

/* Text / table selection should stay in-theme instead of flashing white. */
::selection{
  background:#1f6fd6;
  color:#ffffff;
}
::-moz-selection{
  background:#1f6fd6;
  color:#ffffff;
}

/* Keyboard/click selection inside table rows and cells */
table tr:focus,
table td:focus,
table th:focus{
  outline:2px solid #2f86ff;
  outline-offset:-2px;
  background:#183552!important;
  color:#ffffff!important;
}

/* Monthly view: remove the remaining bright/white sticky cells. */
.monthly-table th,
.monthly-table td{
  background:#13283f!important;
  color:#e8f1fa!important;
  border-color:#2a435c!important;
}
.monthly-table thead th{
  background:#10243a!important;
  color:#a9bdd0!important;
}
.monthly-table tbody tr:hover td{
  background:#183552!important;
}
.monthly-table .sticky-col,
.monthly-table th:first-child,
.monthly-table td:first-child{
  background:#10263d!important;
  color:#e8f1fa!important;
}
.monthly-table .sticky-col-2,
.monthly-table th:nth-child(2),
.monthly-table td:nth-child(2){
  background:#112940!important;
  color:#e8f1fa!important;
}

/* Some older monthly/table CSS uses generic sticky positioning without a class. */
table.monthly th[style*="sticky"],
table.monthly td[style*="sticky"],
.monthly-grid th[style*="sticky"],
.monthly-grid td[style*="sticky"]{
  background:#10263d!important;
  color:#e8f1fa!important;
}

/* Generic table selected/active states */
tr.selected td,
td.selected,
tr:target td{
  background:#1a3a59!important;
  color:#ffffff!important;
}

.table-wrap.monthly table th,
.table-wrap.monthly table td{
  background:#13283f!important;
  color:#e8f1fa!important;
  border-color:#2a435c!important;
}
.table-wrap.monthly table thead th{
  background:#10243a!important;
  color:#a9bdd0!important;
}
.table-wrap.monthly table tbody td:first-child,
.table-wrap.monthly table thead th:first-child{
  background:#10263d!important;
  color:#e8f1fa!important;
}
.table-wrap.monthly table tbody td:nth-child(2),
.table-wrap.monthly table thead th:nth-child(2){
  background:#112940!important;
  color:#e8f1fa!important;
}
.table-wrap.monthly table tbody tr:hover td{
  background:#183552!important;
}
.table-wrap.monthly .positive{color:#4ade80!important}
.table-wrap.monthly .negative{color:#fb7185!important}

/* ===== HOVER FIX =====
   The old theme painted hovered table CELLS white. Override the cells themselves,
   not only the row background. */
html[data-theme="dark"] table tbody tr:hover td,
html[data-theme="dark"] .table-wrap table tbody tr:hover td,
html[data-theme="dark"] .dash-table tbody tr:hover td,
table tbody tr:hover td,
.table-wrap table tbody tr:hover td,
.dash-table tbody tr:hover td{
  background:#183552!important;
  color:#f4f8fc!important;
}

/* Keep pills/buttons intact while the row is hovered. */
table tbody tr:hover .tag{
  background:#223a53!important;
  color:#dce9f5!important;
}

/* ===== MOBILE / TABLET PASS ===== */
@media (max-width: 900px){
  .topbar{height:64px!important;padding:0 10px!important}
  .workspace main{padding:12px 10px 28px!important}
  .welcome strong{font-size:14px!important}
  .welcome small{display:none!important}
  .top-actions{gap:8px!important}
  .userbox .avatar{width:30px!important;height:30px!important}
  .logout-button{width:36px!important;height:36px!important;padding:0!important;justify-content:center!important}
  .logout-button span{display:none!important}

  .heading{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important}
  .heading h1{font-size:28px!important}
  .heading .button,.heading button{font-size:11px!important;padding:10px 12px!important}

  .hero-kpis{grid-template-columns:1fr 1fr!important;gap:9px!important}
  .kpi-card{min-height:112px!important;padding:14px 12px 21px!important;gap:10px!important}
  .kpi-icon{width:38px!important;height:38px!important;flex-basis:38px!important;font-size:18px!important}
  .kpi-label{font-size:8px!important}
  .kpi-body strong{font-size:19px!important}
  .kpi-body small{font-size:8.5px!important}

  .top-grid,.bottom-grid{grid-template-columns:1fr!important}
  .actions-panel,.system-panel{grid-column:auto!important}
  .dash-panel-head{height:48px!important;padding:0 12px!important}
  .dash-panel-head h2{font-size:11px!important}
  .dash-table-wrap,.table-wrap{overflow-x:auto!important;-webkit-overflow-scrolling:touch}
  table{min-width:720px}
  .dash-table th,.dash-table td{padding:10px 11px!important}

  .quick-picker{flex-direction:column!important;align-items:stretch!important}
  .quick-tabs{display:flex!important;overflow-x:auto!important;flex-wrap:nowrap!important;padding-bottom:4px!important}
  .quick-tabs a{white-space:nowrap!important}
  .quick-fields{grid-template-columns:1fr!important}
  .quick-fields .arrow{display:none!important}
  .save-main{padding:13px!important;font-size:13px!important}

  .action-stack{grid-template-columns:1fr 1fr!important}
  .act{min-height:48px!important}

  .donut-layout{grid-template-columns:1fr!important}
  .donut{margin:auto!important}
  .legend{grid-template-columns:1fr 1fr!important}
  .rank-row{grid-template-columns:120px 1fr 65px!important}
  .rank-row em{display:none!important}

  .toolbar{display:grid!important;grid-template-columns:1fr!important;gap:8px!important}
  .toolbar input,.toolbar select,.toolbar button,.toolbar a{width:100%!important;min-width:0!important}

  .cards{grid-template-columns:1fr 1fr!important}
  .cards article{padding:14px!important}
}

@media (max-width: 560px){
  .hero-kpis{grid-template-columns:1fr!important}
  .cards{grid-template-columns:1fr!important}
  .heading h1{font-size:25px!important}
  .action-stack{grid-template-columns:1fr!important}
  .legend{grid-template-columns:1fr!important}

  /* Stock list becomes card-like on phones */
  .stock-mobile table{min-width:0!important}
  .table-wrap table{font-size:12px}
  .table-wrap:not(.monthly) table thead{display:none}
  .table-wrap:not(.monthly) table,
  .table-wrap:not(.monthly) tbody,
  .table-wrap:not(.monthly) tr,
  .table-wrap:not(.monthly) td{display:block;width:100%}
  .table-wrap:not(.monthly) tr{border:1px solid var(--app-line);border-radius:10px;margin:0 0 9px;overflow:hidden;background:var(--app-card)}
  .table-wrap:not(.monthly) td{border-bottom:1px solid var(--app-line)!important;padding:10px 12px!important}
  .table-wrap:not(.monthly) td:last-child{border-bottom:0!important}

  /* Monthly stays horizontally scrollable because 31 days cannot sensibly collapse */
  .table-wrap.monthly table{min-width:1500px!important}
}

/* Full-screen sidebar on small phones */
@media(max-width:700px){
  .sidebar{width:min(84vw,300px)!important}
  .sidebar.open{box-shadow:18px 0 50px rgba(0,0,0,.35)!important}
}

/* ===== COMPACT STOCK MOVEMENT FORM ===== */
.movement-compact-form{
  max-width:980px!important;
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:14px 18px!important;
  padding:20px!important;
}
.movement-product-picker{
  display:grid;
  grid-template-columns:1fr 1.2fr;
  gap:14px 18px;
  padding-bottom:4px;
  border-bottom:1px solid var(--app-line);
}
.movement-product-picker label,
.movement-compact-form>label{
  margin:0!important;
}
.movement-product-picker select,
.movement-product-picker input,
.movement-compact-form select,
.movement-compact-form input{
  min-height:48px;
}
#movement-stock-hint{
  display:block;
  min-height:16px;
  margin-top:5px;
  color:#72b8ff!important;
  font-size:10px!important;
}
.movement-compact-form .wide{grid-column:1 / -1}
.movement-compact-form button.wide{
  min-height:48px;
  margin-top:2px;
}
@media(max-width:700px){
  .movement-compact-form{grid-template-columns:1fr!important;padding:14px!important}
  .movement-product-picker{grid-template-columns:1fr!important}
  .movement-compact-form .wide{grid-column:auto}
}

/* ===== FINAL LOGIN POLISH ===== */
.login-dark{
  margin:0!important;
  min-height:100vh!important;
  background:#0f2238!important;
}
.login-screen{
  min-height:100vh;
  width:100%;
  display:grid;
  place-items:center;
  padding:32px 18px;
  background:
    radial-gradient(circle at 50% 35%, rgba(27,73,116,.18), transparent 36%),
    #0f2238;
}
.login-shell{
  width:min(460px,calc(100vw - 30px));
  background:#13283f;
  border:1px solid #2b4661;
  border-radius:18px;
  padding:34px 38px 26px;
  box-shadow:0 24px 70px rgba(0,0,0,.34);
}
.login-brand{
  display:flex;
  flex-direction:column;
  align-items:center;
  margin:0 0 20px;
}
.login-brand img{
  width:220px!important;
  height:116px!important;
  max-width:220px!important;
  max-height:116px!important;
  object-fit:contain!important;
  filter:none!important;
  background:transparent!important;
}
.login-brand span{
  margin-top:-4px!important;
  color:#9db3c9!important;
  font-size:10px!important;
  letter-spacing:.04em;
}
.login-heading{
  text-align:center;
  margin-bottom:24px;
}
.login-heading h1{
  margin:0 0 7px!important;
  font-size:28px!important;
  color:#f3f8fd!important;
  letter-spacing:-.02em;
}
.login-heading p{
  margin:0!important;
  color:#91a6bb!important;
  font-size:11px!important;
}
.login-form{
  display:grid;
  gap:16px;
}
.login-form label{
  display:block;
  color:#c1cfdd!important;
  font-size:10px!important;
  font-weight:700!important;
}
.login-form input{
  width:100%;
  min-height:48px;
  margin-top:6px;
  padding:0 13px!important;
  background:#0d1c2e!important;
  border:1px solid #35516d!important;
  border-radius:9px!important;
  color:#eef5fc!important;
  font-size:13px!important;
}
.login-form input:focus{
  border-color:#1677ff!important;
  box-shadow:0 0 0 3px rgba(22,119,255,.18)!important;
  outline:none!important;
}
.login-submit{
  min-height:50px;
  margin-top:4px;
  background:#1677ff!important;
  color:#fff!important;
  border:0!important;
  border-radius:9px!important;
  font-size:12px!important;
  font-weight:800!important;
  letter-spacing:.04em;
  box-shadow:0 10px 24px rgba(22,119,255,.22)!important;
}
.login-submit:hover{
  background:#0f68dc!important;
}
.login-footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-top:24px;
  padding-top:18px;
  border-top:1px solid #2a435c!important;
}
.login-footer small{
  color:#71879d!important;
  font-size:9px!important;
}
.login-lang{
  display:flex;
  border:1px solid #34506c;
  border-radius:7px;
  overflow:hidden;
}
.login-lang a{
  padding:7px 10px;
  color:#9fb0c2;
  text-decoration:none;
  font-size:9px;
}
.login-lang a.active{
  background:#1677ff;
  color:#fff;
}
.login-error{
  margin:-8px 0 16px!important;
  padding:10px 12px!important;
  border-radius:8px!important;
}
@media(max-width:560px){
  .login-screen{padding:18px 12px}
  .login-shell{
    width:100%;
    padding:28px 20px 22px;
    border-radius:14px;
  }
  .login-brand img{
    width:190px!important;
    height:100px!important;
  }
  .login-heading h1{font-size:24px!important}
}


/* ===== mas2003 BRAND OVERRIDES ===== */
.mas2003-brand{
  align-items:center!important;
  padding:6px 8px 18px!important;
  overflow:visible!important;
}
.mas2003-brand img{
  display:block!important;
  width:190px!important;
  height:auto!important;
  max-width:100%!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center!important;
  filter:none!important;
  background:#fff!important;
  border-radius:10px!important;
  padding:7px 8px!important;
  box-shadow:0 8px 22px rgba(0,0,0,.20)!important;
}
.mas2003-brand small{
  margin:5px 0 0!important;
  text-align:center!important;
  width:100%!important;
  color:#9bb0c5!important;
}
.login-brand img{
  width:min(330px,100%)!important;
  height:auto!important;
  max-width:330px!important;
  max-height:none!important;
  object-fit:contain!important;
  filter:none!important;
  background:#fff!important;
  border-radius:12px!important;
  padding:10px 12px!important;
  box-shadow:0 10px 28px rgba(0,0,0,.22)!important;
}
.login-brand span{
  margin-top:7px!important;
}
@media(max-width:560px){
  .mas2003-brand img{width:182px!important}
  .login-brand img{width:min(290px,100%)!important}
}

/* ===== MODERN USERS ADMIN ===== */
.users-page{display:grid;gap:16px}
.users-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:2px 0 4px}
.users-heading h1{margin:2px 0 8px!important;font-size:clamp(28px,3vw,42px)!important;color:var(--app-text)!important;letter-spacing:-.035em}
.users-heading>div>p:last-child{margin:0;color:var(--app-muted)!important;font-size:12px}
.users-eyebrow{margin:0!important;color:#5fa2ff!important;font-size:9px!important;font-weight:900!important;letter-spacing:.16em}
.users-summary{min-width:94px;padding:12px 15px;border:1px solid var(--app-line);background:var(--app-card);border-radius:12px;text-align:center}
.users-summary span{display:block;font-size:24px;font-weight:900;color:#fff;line-height:1}
.users-summary small{display:block;margin-top:5px;color:var(--app-muted);font-size:9px}
.users-create-card,.users-list-card{padding:0!important;overflow:hidden}
.users-card-title,.users-list-head{display:flex;align-items:center;gap:12px;padding:17px 19px;border-bottom:1px solid var(--app-line)}
.users-card-title h2,.users-list-head h2{margin:0!important;font-size:13px!important;color:var(--app-text)!important}
.users-card-title p,.users-list-head p{margin:3px 0 0!important;font-size:9.5px!important;color:var(--app-muted)!important}
.users-title-icon{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;background:rgba(22,119,255,.16);border:1px solid rgba(22,119,255,.34);color:#66a9ff;font-size:20px;font-weight:400}
.users-create-form{display:grid;grid-template-columns:1.1fr 1.1fr 1.1fr .8fr auto;gap:12px;align-items:end;padding:16px 19px 19px}
.users-create-form label{display:flex!important;flex-direction:column;gap:6px!important;color:#a9bbcd!important;font-size:9px!important;font-weight:800!important;letter-spacing:.01em}
.users-create-form input,.users-create-form select{height:42px!important;margin:0!important;padding:0 11px!important;background:#0e1f33!important;border:1px solid #35506a!important;border-radius:8px!important;color:#eef5fc!important;font-size:11px!important}
.users-create-form input:focus,.users-create-form select:focus,.user-password-form input:focus{outline:none!important;border-color:#1677ff!important;box-shadow:0 0 0 3px rgba(22,119,255,.14)!important}
.users-create-button{height:42px!important;white-space:nowrap;background:#1677ff!important;color:#fff!important;border:0!important;border-radius:8px!important;padding:0 16px!important;font-size:10px!important;font-weight:900!important;box-shadow:0 7px 18px rgba(22,119,255,.18)!important}
.users-create-button:hover{background:#0f68dd!important}
.users-table-wrap{overflow:auto}
.users-table{width:100%;min-width:820px;border-collapse:collapse}
.users-table th{padding:11px 18px!important;background:#10263d!important;border-bottom:1px solid var(--app-line)!important;color:#8298ad!important;font-size:8px!important;letter-spacing:.1em!important}
.users-table td{padding:13px 18px!important;background:transparent!important;border-bottom:1px solid rgba(40,65,90,.72)!important;vertical-align:middle}
.users-table tbody tr:last-child td{border-bottom:0!important}
.users-table tbody tr:hover td{background:#162e48!important}
.users-table tbody tr.user-inactive{opacity:.58}
.user-identity{display:flex;align-items:center;gap:11px;min-width:190px}
.user-avatar{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:#1a3a5b;border:1px solid #325879;color:#8fc1ff;font-size:13px;font-weight:900;text-transform:uppercase}
.user-identity strong{display:block;color:#eef5fc!important;font-size:11px!important;line-height:1.2}
.user-identity small{display:block;margin-top:4px;color:#8297aa!important;font-size:9px!important}
.role-badge,.status-badge{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:6px 9px;font-size:8.5px;font-weight:900;white-space:nowrap}
.role-badge.admin{background:rgba(145,84,222,.16);border:1px solid rgba(145,84,222,.3);color:#c59cff}
.role-badge.user{background:rgba(22,119,255,.14);border:1px solid rgba(22,119,255,.28);color:#7db6ff}
.status-badge.active{background:rgba(39,184,107,.13);border:1px solid rgba(39,184,107,.27);color:#68d89b}
.status-badge.inactive{background:rgba(239,51,64,.12);border:1px solid rgba(239,51,64,.26);color:#ff7d86}
.status-badge i{width:6px;height:6px;border-radius:50%;background:currentColor;box-shadow:0 0 0 3px color-mix(in srgb,currentColor 13%,transparent)}
.user-actions-modern{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:360px}
.user-password-form{display:flex!important;align-items:center;gap:6px!important;margin:0!important}
.user-password-form input{width:132px!important;height:34px!important;padding:0 9px!important;background:#0e1f33!important;border:1px solid #35506a!important;border-radius:7px!important;color:#eef5fc!important;font-size:9px!important}
.user-action-button{height:34px!important;padding:0 10px!important;border-radius:7px!important;border:1px solid transparent!important;font-size:8.5px!important;font-weight:900!important;white-space:nowrap}
.user-action-button.secondary{background:#1c3550!important;border-color:#35526e!important;color:#dce9f6!important}
.user-action-button.secondary:hover{background:#244360!important}
.user-action-button.danger{background:rgba(239,51,64,.13)!important;border-color:rgba(239,51,64,.3)!important;color:#ff7c85!important}
.user-action-button.danger:hover{background:rgba(239,51,64,.22)!important}
.user-action-button.success{background:rgba(39,184,107,.13)!important;border-color:rgba(39,184,107,.3)!important;color:#69d99d!important}
.user-action-button.success:hover{background:rgba(39,184,107,.22)!important}
.self-account{padding:6px 8px;color:#72879b;font-size:8.5px;white-space:nowrap}
@media(max-width:1180px){.users-create-form{grid-template-columns:repeat(2,minmax(0,1fr))}.users-create-button{grid-column:1/-1;width:100%}.user-actions-modern{justify-content:flex-start}}
@media(max-width:700px){.users-heading{align-items:flex-start}.users-summary{min-width:78px}.users-create-form{grid-template-columns:1fr;padding:14px}.users-create-button{grid-column:auto}.users-card-title,.users-list-head{padding:14px}.users-table{min-width:760px}.users-table th,.users-table td{padding-left:13px!important;padding-right:13px!important}}

/* ===== v25 MOVEMENT REVERSAL ===== */
.movement-subtitle{margin:6px 0 0;color:var(--app-muted);font-size:11px;max-width:760px}
.correction-pair-panel{border-color:#31516e!important;background:linear-gradient(180deg,rgba(22,119,255,.055),transparent),var(--app-card)!important}
.correction-pair-panel summary{cursor:pointer;font-weight:900;color:#dcecff;font-size:11px}
.correction-pair-panel>p{margin:12px 0;color:var(--app-muted);font-size:10px;line-height:1.55;max-width:900px}
.correction-pair-form{display:grid;grid-template-columns:160px 160px minmax(230px,1fr) auto;gap:10px;align-items:end}
.correction-pair-form label{display:flex!important;flex-direction:column;gap:6px!important;color:#9eb2c6!important;font-size:9px!important;font-weight:800!important}
.correction-pair-form input{height:38px!important;margin:0!important;background:#0e1f33!important;border:1px solid #35506a!important;border-radius:8px!important;color:#eef5fc!important;padding:0 10px!important}
.correction-pair-form button{height:38px!important;white-space:nowrap}
.movements-modern-wrap{margin-top:14px}
.movements-modern{min-width:1180px}
.movements-modern th{font-size:8px!important;letter-spacing:.07em!important;color:#8298ad!important}
.movements-modern td{vertical-align:middle!important}
.movements-modern tr.movement-voided td{opacity:.66;background:rgba(110,130,150,.035)!important}
.movements-modern tr.movement-voided:hover td{opacity:.82;background:#162e48!important}
.movement-id{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:#8fa7bd;font-size:9px;font-weight:800}
.movement-note{max-width:280px;white-space:normal!important;line-height:1.35}
.movement-state{display:inline-flex;align-items:center;gap:4px;padding:5px 8px;border-radius:999px;font-size:8px;font-weight:900;white-space:nowrap}
.movement-state.active{color:#67d99b;background:rgba(39,184,107,.12);border:1px solid rgba(39,184,107,.24)}
.movement-state.voided{color:#ff9098;background:rgba(239,51,64,.12);border:1px solid rgba(239,51,64,.25)}
.movement-state.correction{color:#9ec8ff;background:rgba(22,119,255,.12);border:1px solid rgba(22,119,255,.25)}
.movement-state.excluded{color:#d9b56f;background:rgba(217,181,111,.10);border:1px solid rgba(217,181,111,.23)}
.reverse-control summary{cursor:pointer;color:#83b9ff;font-size:9px;font-weight:900;white-space:nowrap}
.reverse-control form{display:flex;gap:6px;align-items:center;margin-top:7px;min-width:245px}
.reverse-control input{height:34px!important;width:160px!important;margin:0!important;background:#0e1f33!important;border:1px solid #35506a!important;border-radius:7px!important;color:#eef5fc!important;padding:0 8px!important;font-size:9px!important}
.reverse-control button{height:34px!important;padding:0 9px!important;font-size:8px!important;white-space:nowrap}
.muted-dash{color:#607589}
@media(max-width:900px){.correction-pair-form{grid-template-columns:1fr 1fr}.correction-pair-form .pair-reason{grid-column:1/-1}.correction-pair-form button{grid-column:1/-1;width:100%}}
@media(max-width:560px){.correction-pair-form{grid-template-columns:1fr}.correction-pair-form .pair-reason,.correction-pair-form button{grid-column:auto}.movement-subtitle{font-size:10px}}

/* v26 – egyedi készletkorrekció */
.product-actions{display:flex;gap:8px;align-items:flex-start}
.stock-adjust{position:relative}
.stock-adjust>summary{list-style:none;white-space:nowrap}
.stock-adjust>summary::-webkit-details-marker{display:none}
.stock-adjust-form{position:absolute;right:0;top:44px;z-index:30;width:320px;padding:16px;background:var(--app-card,#13283f);border:1px solid var(--app-line,#28415a);border-radius:14px;box-shadow:0 18px 40px rgba(0,0,0,.35);display:grid;gap:12px}
.stock-adjust-form label{display:grid;gap:6px}
@media(max-width:760px){.product-actions{flex-direction:column}.stock-adjust-form{position:fixed;left:16px;right:16px;top:20%;width:auto}}


.live-refresh-status{display:flex;align-items:center;gap:.45rem;margin-top:.45rem;font-size:.78rem;color:var(--muted,#9aa8b8)}
.live-dot{width:.5rem;height:.5rem;border-radius:50%;background:#2ecc71;box-shadow:0 0 0 .18rem rgba(46,204,113,.12)}
.live-refresh-status.refreshing .live-dot{animation:live-pulse .8s ease-in-out infinite alternate}
.live-refresh-status.offline .live-dot{background:#f5a623;box-shadow:0 0 0 .18rem rgba(245,166,35,.12)}
@keyframes live-pulse{from{opacity:.35;transform:scale(.85)}to{opacity:1;transform:scale(1.1)}}
