:root{--bg:#eaeded;--panel:#fff;--ink:#111827;--muted:#565959;--line:#d5d9d9;--brand:#131921;--brand2:#232f3e;--accent:#ff9900;--bad:#b12704;--good:#007600;--r:6px;--shadow:0 2px 10px rgba(15,23,42,.12);--nav-hover:#37475a;--panel-border:#ddd;--input-bg:#fff;--hero-from:#131921;--hero-to:#232f3e;--sidebar-text:rgba(255,255,255,.84);--brand-border:rgba(255,255,255,.12);--brand-bg:rgba(255,255,255,.06);--topbar-bg:#fff;--badge-bg:#b12704}
[data-theme="dark"]{--bg:#0f172a;--panel:#1e293b;--ink:#f1f5f9;--muted:#94a3b8;--line:#334155;--brand:#0f172a;--brand2:#1e293b;--accent:#fbbf24;--bad:#ef4444;--good:#22c55e;--shadow:0 2px 10px rgba(0,0,0,.4);--nav-hover:#334155;--panel-border:#334155;--input-bg:#1e293b;--hero-from:#0f172a;--hero-to:#1e293b;--sidebar-text:#f1f5f9;--brand-border:rgba(255,255,255,.08);--brand-bg:rgba(255,255,255,.04);--topbar-bg:#1e293b;--badge-bg:#ef4444}
*{box-sizing:border-box}body{margin:0;min-height:100dvh;background:var(--bg);color:var(--ink);font-family:'Inter',Arial,Helvetica,sans-serif;-webkit-tap-highlight-color:transparent;overscroll-behavior:none}
button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.55;cursor:not-allowed}
/* ═══ TOUCH TARGETS ═══ */
button,input,select,textarea,.nav-item,.product,.btn,.btn-icon-sm,[data-nav],[data-action]{touch-action:manipulation}
/* ═══ LOGIN ═══ */
.login-page{min-height:100dvh;display:grid;grid-template-columns:minmax(340px,460px) 1fr;background:linear-gradient(110deg,rgba(19,25,33,.98),rgba(35,47,62,.92))}.login-card{margin:auto;width:min(92vw,390px);background:#fff;border:1px solid #f0c14b;border-radius:var(--r);padding:24px;box-shadow:0 18px 48px rgba(0,0,0,.25)}.login-brand{display:flex;gap:12px;align-items:center;border-bottom:1px solid var(--line);padding-bottom:16px;margin-bottom:16px}.login-mark,.brand-mark{width:42px;height:42px;border-radius:6px;display:grid;place-items:center;background:var(--accent);font-weight:900;color:#111}.login-brand strong{display:block;font-size:20px;color:#111}.login-brand span{color:#565959;font-size:13px}.login-card label,.cart label{display:grid;gap:6px;margin-bottom:12px;font-weight:800;color:#565959;font-size:12px;text-transform:uppercase}.login-card input,.login-card select,input,select,textarea{width:100%;min-height:48px;border:1px solid #a6a6a6;border-radius:4px;padding:12px;background:var(--input-bg);color:var(--ink);font-size:16px}.login-aside{display:grid;align-content:center;padding:50px;color:#fff}.login-aside h1{font-size:clamp(42px,6vw,78px);line-height:1;margin:0 0 14px}.login-aside p{font-size:18px;max-width:620px;color:rgba(255,255,255,.82)}
.login-tabs{display:flex;gap:4px;margin-bottom:16px;border-bottom:2px solid var(--line);padding-bottom:8px}.login-tab{flex:1;min-height:48px;border:0;border-radius:6px;background:transparent;color:var(--muted);font-weight:700;font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px}.login-tab.active{background:var(--accent);color:#111;box-shadow:0 2px 8px rgba(255,153,0,.3)}.login-locked{background:#fef2f2;border:1px solid #fecaca;color:#991b1b;border-radius:6px;padding:12px;margin-bottom:12px;font-weight:700;font-size:13px}
/* ═══ APP SHELL ═══ */
.app-shell{min-height:100dvh;display:grid;grid-template-columns:250px 1fr}.sidebar{position:sticky;top:0;height:100vh;background:linear-gradient(180deg,var(--brand),var(--brand2));color:var(--sidebar-text);padding:14px;overflow:auto;display:flex;flex-direction:column}.brand{display:flex;gap:10px;align-items:center;padding:12px;border:1px solid var(--brand-border);border-radius:6px;background:var(--brand-bg);margin-bottom:14px}.brand strong{display:block;color:#fff}.brand span{font-size:12px;color:rgba(255,255,255,.7)}.sidebar nav{flex:1;display:grid;gap:4px}.sidebar-footer{margin-top:auto;border-top:1px solid var(--brand-border);padding-top:10px}.nav-item{display:flex;align-items:center;gap:10px;min-height:48px;border:0;border-radius:4px;background:transparent;color:var(--sidebar-text);font-weight:600;text-align:left;padding:10px 12px;cursor:pointer;font-size:15px}.nav-item i{width:20px;text-align:center;font-size:16px}.nav-item.active,.nav-item:hover{background:var(--nav-hover);box-shadow:inset 0 -3px 0 var(--accent)}.nav-item.active{font-weight:700}
main{min-width:0;display:flex;flex-direction:column}.topbar{position:sticky;top:0;z-index:5;display:flex;justify-content:space-between;gap:14px;align-items:center;background:var(--topbar-bg);border-bottom:3px solid var(--accent);padding:12px 18px;box-shadow:var(--shadow)}.topbar h1{margin:0;font-size:22px;color:var(--ink)}.topbar p{margin:4px 0 0;color:var(--muted);font-size:13px}.actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.content{padding:18px;flex:1;padding-bottom:80px}
/* ═══ BOTTOM NAV ═══ */
.mobile-bottom-nav{display:none}
.btn-icon{background:transparent;border:0;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;color:var(--ink);position:relative;cursor:pointer}.btn-icon:hover{background:var(--line)}.notif-btn .notif-badge{position:absolute;top:-2px;right:-2px;background:var(--badge-bg);color:#fff;font-size:10px;font-weight:900;min-width:18px;height:18px;border-radius:9px;display:grid;place-items:center;padding:0 4px;box-shadow:0 2px 4px rgba(0,0,0,.3)}
.grid{display:grid;gap:14px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}
.panel,.metric{background:var(--panel);border:1px solid var(--panel-border);border-radius:8px;box-shadow:var(--shadow);padding:16px}.hero{border-radius:8px;background:linear-gradient(135deg,var(--hero-from),var(--hero-to) 58%,#37475a);color:#fff;padding:24px;margin-bottom:14px}.hero h2{font-size:clamp(30px,4vw,56px);line-height:1;margin:0 0 10px}.hero p{margin:0;color:rgba(255,255,255,.78)}.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}.metric span{display:block;color:var(--muted);font-size:12px;text-transform:uppercase;font-weight:900}.metric strong{display:block;margin-top:8px;font-size:26px;color:var(--bad)}.charts-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}.chart-panel{min-height:260px}.chart-panel canvas{max-height:200px;width:100%!important}
.section-title{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:12px}.section-title h2{margin:0;font-size:18px}.btn{border:1px solid #a88734;background:linear-gradient(#f7dfa5,#f0c14b);border-radius:6px;min-height:48px;padding:12px 16px;font-weight:700;color:#111827;display:inline-flex;align-items:center;gap:8px;font-size:15px;justify-content:center}.btn:hover{transform:translateY(-1px);box-shadow:0 2px 8px rgba(0,0,0,.15)}.btn.primary{background:linear-gradient(#ffd978,#ff9900);border-color:#a15c00}.btn.bad{background:linear-gradient(#d13212,#b12704);border-color:#8f1f00;color:#fff}.btn.full{width:100%;justify-content:center}.btn.sm{min-height:40px;padding:8px 12px;font-size:13px}
/* ═══ POS ═══ */
.pos-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(360px,.85fr);gap:14px;align-items:start}.cart{position:sticky;top:84px}.products{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px}.product{min-height:240px;display:flex;flex-direction:column;gap:6px;text-align:left;background:var(--panel);border:1px solid var(--panel-border);border-radius:8px;padding:14px;box-shadow:var(--shadow)}.product:active{transform:scale(.97)}.product-img{height:120px;width:100%;object-fit:cover;border-radius:4px;background:#f1f5f9;flex-shrink:0}.photo{height:120px;display:grid;place-items:center;border-radius:4px;background:linear-gradient(135deg,#0ea5e9,#123c69);color:#fff;font-size:28px;font-weight:900;flex-shrink:0}.product b{color:var(--bad);font-size:17px}.product small{color:var(--muted);font-size:12px}
.pos-actions{display:grid;gap:10px;margin-top:12px}
.cart-line{display:grid;gap:12px;padding:16px;margin-bottom:12px;border:1px solid var(--panel-border);border-radius:8px;background:var(--panel)}.cart-line small{display:block;color:var(--muted);margin-top:3px;font-size:13px}.mix-note{color:#007185!important;font-weight:900}.qty{display:inline-flex;align-items:center;gap:8px}.qty button{width:36px;height:36px;border:1px solid var(--line);border-radius:6px;background:var(--input-bg);font-weight:900;font-size:18px;cursor:pointer;display:grid;place-items:center}.price-tools{display:grid;grid-template-columns:88px minmax(90px,1fr) auto auto;gap:8px;align-items:center}.price-tools label{font-size:11px;font-weight:900;color:var(--muted);text-transform:uppercase}.mix-tools{display:grid;grid-template-columns:minmax(150px,1fr) 70px auto;gap:8px}.chips{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.chips span{display:inline-flex;gap:6px;align-items:center;background:#e7f4f5;color:#007185;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:900}.chips button{border:0;border-radius:50%;background:#007185;color:#fff;width:20px;height:20px;font-weight:900;cursor:pointer;display:grid;place-items:center}
.total{background:var(--brand2);color:#fff;border-top:4px solid var(--accent);border-radius:8px;padding:20px;margin:16px 0}.total span{display:block;color:rgba(255,255,255,.7);font-size:12px;text-transform:uppercase;font-weight:900}.total strong{display:block;font-size:32px;margin-top:4px}
.row,.tr{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;align-items:center;padding:12px 10px;border-bottom:1px solid var(--line)}.row{display:flex;justify-content:space-between}.table{margin-top:12px;border:1px solid var(--line);border-radius:8px;overflow:auto}.empty{min-height:120px;display:grid;place-items:center;text-align:center;border:1px dashed var(--line);color:var(--muted);background:var(--panel);border-radius:8px;padding:20px}
.tr-stock{grid-template-columns:50px 1fr auto auto 70px auto auto;grid-template-rows:auto;align-items:center;gap:8px;padding:10px;display:grid;border-bottom:1px solid var(--line)}.stock-photo-thumb{width:40px;height:40px;border-radius:6px;overflow:hidden;background:var(--line);display:grid;place-items:center;flex-shrink:0}.stock-photo-thumb img{width:100%;height:100%;object-fit:cover}.prod-cat{font-size:12px;color:var(--muted);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.theme-switch{display:flex;align-items:center;justify-content:space-between;padding:14px;background:var(--bg);border-radius:6px}.toggle{position:relative;display:inline-block;width:48px;height:26px}.toggle input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background:#ccc;border-radius:26px}.slider:before{position:absolute;content:"";width:20px;height:20px;left:3px;bottom:3px;background:#fff;border-radius:50%}.toggle input:checked+.slider{background:var(--accent)}.toggle input:checked+.slider:before{transform:translateX(22px)}
.notif-panel{position:fixed;top:70px;right:16px;width:360px;max-height:480px;background:var(--panel);border:1px solid var(--panel-border);border-radius:8px;box-shadow:0 8px 32px rgba(0,0,0,.2);z-index:100;overflow:auto}.notif-header{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--panel)}.notif-header h3{margin:0;font-size:16px}.notif-item{padding:14px;border-bottom:1px solid var(--line);cursor:pointer}.notif-item.read{opacity:.6}.notif-item b{display:block;font-size:14px}.notif-item p{margin:4px 0;font-size:13px;color:var(--muted)}
.toast{position:fixed;right:16px;bottom:100px;z-index:99;background:var(--brand2);color:#fff;border-top:4px solid var(--accent);border-radius:8px;padding:14px 18px;box-shadow:var(--shadow);font-weight:700;animation:slideIn .3s ease;max-width:90vw}@keyframes slideIn{from{transform:translateX(100px);opacity:0}to{transform:translateX(0);opacity:1}}
.panel h2 i{margin-right:6px;color:var(--accent)}
.actions-row{display:flex;gap:6px;justify-content:flex-end}.btn-icon-sm{width:36px;height:36px;border:0;border-radius:6px;background:transparent;cursor:pointer;display:grid;place-items:center;font-size:18px}.btn-icon-sm:active{background:var(--line)}
.modal-overlay{position:fixed;inset:0;z-index:200;background:rgba(0,0,0,.5);display:grid;place-items:center;padding:20px}.modal-box{background:var(--panel);border-radius:12px;padding:24px;max-width:520px;width:100%;max-height:90dvh;overflow:auto;box-shadow:0 20px 60px rgba(0,0,0,.3)}.modal-box h2{margin-top:0}
.badge-warn{background:#fef3c7;color:#92400e;padding:4px 10px;border-radius:999px;font-size:11px;font-weight:700;white-space:nowrap}
.order-filters{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}.order-row{display:grid;grid-template-columns:1.5fr 1.5fr 1fr auto;gap:10px;align-items:center;padding:12px;border-bottom:1px solid var(--line)}.order-info{display:flex;gap:8px;align-items:center}.order-status{font-size:11px;font-weight:700;padding:4px 10px;border-radius:999px;white-space:nowrap}.order-items{font-size:13px;color:var(--muted)}.order-meta{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:13px}
.ai-chat-panel{display:flex;flex-direction:column;gap:10px}.ai-messages{max-height:340px;overflow-y:auto;display:flex;flex-direction:column;gap:10px;padding:8px;background:var(--bg);border-radius:6px}.ai-msg{display:flex;gap:10px;align-items:flex-start}.ai-msg i{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;flex-shrink:0;font-size:13px}.ai-msg.ai i{background:var(--accent);color:#111}.ai-msg.user i{background:var(--brand2);color:#fff}.ai-msg > div{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:10px 12px;max-width:420px;font-size:13px}.ai-msg.ai > div{border-left:3px solid var(--accent)}.ai-msg b{display:block;font-size:12px;color:var(--muted);margin-bottom:4px}.ai-input{display:flex;gap:6px}.ai-input input{flex:1;min-height:48px}.ai-quick{display:flex;gap:6px;flex-wrap:wrap}.ai-quick .btn{min-height:40px;font-size:12px;padding:8px 12px}
.ai-insight{display:flex;gap:12px;padding:14px;align-items:center;border-bottom:1px solid var(--line)}.ai-insight i{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--bg);color:var(--accent);font-size:16px;flex-shrink:0}.ai-insight b{display:block;font-size:14px}.ai-insight p{margin:4px 0 0;font-size:12px;color:var(--muted)}
.loyalty-badge{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:999px;font-size:12px;font-weight:700;white-space:nowrap}.loyalty-bronze{background:#fef3c7;color:#92400e}.loyalty-argent{background:#e2e8f0;color:#475569}.loyalty-or{background:#fef3c7;color:#b45309}.loyalty-platine{background:#ede9fe;color:#7c3aed}
.points-option{margin-top:8px;display:flex;align-items:center;gap:8px;padding:12px;background:#fef3c7;border-radius:6px;font-weight:700;font-size:13px;cursor:pointer}.points-option input{width:auto;min-height:auto}
.badge-discount{display:inline-flex;align-items:center;background:var(--good);color:#fff;padding:4px 10px;border-radius:999px;font-size:11px;font-weight:700;white-space:nowrap}
.cat-stats{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px;padding:4px 0}.cat-stat{display:inline-flex;gap:6px;align-items:center;padding:6px 14px;border-radius:999px;font-size:13px;font-weight:600;background:var(--bg);border:1px solid var(--line);color:var(--muted);cursor:pointer;transition:all .15s ease}.cat-stat:hover{border-color:var(--accent);color:var(--ink)}.cat-stat.active{background:var(--accent);color:#111;border-color:var(--accent);font-weight:700}.cat-stat strong{font-size:15px}.cat-stat .sales-count{display:block;font-size:10px;font-weight:400;color:var(--muted);margin-top:1px}.cat-stat.active .sales-count{color:rgba(0,0,0,.6)}
.user-role-badge{display:inline-flex;padding:4px 12px;border-radius:999px;font-size:11px;font-weight:700;white-space:nowrap}.role-super{background:#fef3c7;color:#92400e}.role-owner{background:#ede9fe;color:#7c3aed}.role-manager{background:#e0f2fe;color:#0369a1}.role-cashier{background:#f3f4f6;color:#4b5563}
.stats-bar{display:flex;gap:8px;margin-bottom:14px;flex-wrap:wrap}.stat-evo{display:flex;gap:6px;align-items:center;padding:10px 16px;background:var(--panel);border:1px solid var(--panel-border);border-radius:8px;font-size:13px;font-weight:700;box-shadow:var(--shadow)}.evo-up{color:var(--good)}.evo-down{color:var(--bad)}
.dash-date-filter{display:flex;gap:10px;flex-wrap:wrap;align-items:center;padding:12px 16px;background:var(--panel);border:1px solid var(--panel-border);border-radius:8px;box-shadow:var(--shadow);margin-bottom:14px}.dash-date-filter label{white-space:nowrap}.dash-date-filter input[type=date]{min-height:36px;padding:4px 8px;border:1px solid var(--line);border-radius:6px;background:var(--input-bg);color:var(--ink);font-size:14px}
/* ═══ CALENDAR GRID ═══ */
.cal-panel{max-width:100%;overflow:auto}.cal-header{display:flex;gap:10px;align-items:center;justify-content:center;margin-bottom:16px;flex-wrap:wrap}.cal-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:16px}.cal-kpis .metric{padding:12px}.cal-kpis .metric strong{font-size:18px}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;min-width:560px}.cal-day-header{text-align:center;font-size:11px;font-weight:800;text-transform:uppercase;color:var(--muted);padding:6px 0;border-bottom:2px solid var(--accent)}.cal-day{display:flex;flex-direction:column;gap:2px;min-height:72px;padding:6px 4px;border:1px solid var(--line);border-radius:6px;background:var(--panel);cursor:pointer;transition:all .12s ease;text-align:left;font-size:inherit;color:inherit;overflow:hidden}.cal-day:hover{border-color:var(--accent);box-shadow:0 2px 8px rgba(0,0,0,.1)}.cal-day:active{transform:scale(.96)}.cal-day.cal-empty{background:transparent;border-color:transparent;cursor:default;min-height:auto}.cal-day.cal-today{border-color:var(--accent);border-width:2px;background:linear-gradient(135deg,var(--panel),rgba(255,153,0,.06))}.cal-day.cal-has-data{box-shadow:inset 0 -2px 0 var(--accent)}.cal-day-num{font-weight:700;font-size:12px;color:var(--ink);margin-bottom:2px}.cal-today .cal-day-num{background:var(--accent);color:#111;border-radius:50%;width:22px;height:22px;display:grid;place-items:center;font-size:11px}.cal-sale{font-size:9px;font-weight:700;color:var(--good);line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cal-exp{font-size:9px;font-weight:700;color:var(--bad);line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:768px){
.cal-kpis{grid-template-columns:1fr;gap:8px}
.cal-grid{min-width:auto;gap:3px}
.cal-day{min-height:56px;padding:4px 3px}
.cal-sale,.cal-exp{font-size:8px}
}
/* ═══ MOBILE FIRST ═══ */
@media(max-width:768px){
.app-shell{grid-template-columns:1fr}
.sidebar{display:none}
.mobile-bottom-nav{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:50;background:var(--brand);padding:4px 0;padding-bottom:env(safe-area-inset-bottom,4px);box-shadow:0 -4px 20px rgba(0,0,0,.3);justify-content:space-around;align-items:stretch}
.mobile-bottom-nav .nav-item{flex-direction:column;gap:2px;padding:6px 4px;min-height:auto;font-size:10px;text-align:center;border-radius:0;background:transparent;color:rgba(255,255,255,.6);flex:1;justify-content:center;border-top:2px solid transparent}
.mobile-bottom-nav .nav-item i{font-size:18px;width:auto}
.mobile-bottom-nav .nav-item.active,.mobile-bottom-nav .nav-item:hover{background:rgba(255,255,255,.08);box-shadow:none;color:#fff;border-top-color:var(--accent)}
.mobile-bottom-nav .nav-item span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;font-size:9px;line-height:1.2}
.topbar{position:static;flex-direction:column;align-items:stretch;padding:10px 12px}
.topbar .actions{justify-content:flex-start;flex-wrap:wrap;gap:6px}
.topbar .actions .btn{min-height:40px;padding:8px 12px;font-size:12px;flex:1;min-width:0}
.topbar h1{font-size:18px}
.topbar p{font-size:12px}
.content{padding:10px;padding-bottom:80px}
.kpis{grid-template-columns:repeat(2,1fr);gap:8px}
.metric{padding:12px}
.metric strong{font-size:20px}
.charts-row{grid-template-columns:1fr}
.pos-layout{grid-template-columns:1fr}
.cart{position:static}
.products{grid-template-columns:repeat(2,1fr);gap:8px}
.product{min-height:200px;padding:10px}
.product-img,.photo{height:90px}
.grid.two,.grid.three,.grid.four{grid-template-columns:1fr}
.tr,.tr-stock{grid-template-columns:1fr 1fr;gap:6px;font-size:13px;padding:10px 8px}
.tr > *:nth-child(n+3),.tr-stock > *:nth-child(n+3){grid-column:span 2}
.stock-photo-thumb{width:36px;height:36px}
.order-row{grid-template-columns:1fr;gap:6px;font-size:13px}
.login-page{grid-template-columns:1fr;background:var(--bg)}
.login-aside{display:none}
.login-card{margin:0;width:100%;min-height:100dvh;border:0;border-radius:0;padding:24px 16px;box-shadow:none;display:flex;flex-direction:column;justify-content:center}
.login-card .btn{padding:14px;min-height:52px;font-size:16px}
.login-card input,.login-card select{min-height:52px;font-size:16px}
.login-tab{min-height:48px;font-size:14px}
.modal-box{padding:16px;max-width:100%;margin:auto}
.cart-line{padding:12px}
.price-tools,.mix-tools{grid-template-columns:1fr;gap:6px}
.total{padding:16px}
.total strong{font-size:26px}
.notif-panel{width:calc(100% - 16px);right:8px;left:8px;top:60px}
.actions-row{gap:4px}
.btn-icon-sm{width:32px;height:32px;font-size:16px}
.ai-quick{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px}
.ai-quick .btn{white-space:nowrap;flex-shrink:0}
}
@media(max-width:420px){
.products{grid-template-columns:repeat(2,1fr);gap:6px}
.product{min-height:170px;padding:8px}
.product-img,.photo{height:75px}
.product b{font-size:14px}
.kpis{grid-template-columns:repeat(2,1fr);gap:6px}
.metric{padding:10px}
.metric strong{font-size:17px}
.toast{right:8px;bottom:90px;font-size:13px;padding:12px 14px}
}