:root{color-scheme:light;--bg: #f8fafc;--panel: #ffffff;--panel-soft: #f1f5f9;--line: #e2e8f0;--line-soft: #eef2f7;--line-strong: #cbd5e1;--text: #0f172a;--muted: #64748b;--muted-soft: #94a3b8;--blue: #2563eb;--blue-hover: #1d4ed8;--blue-soft: #eff6ff;--green: #16a34a;--green-soft: #dcfce7;--green-text: #15803d;--amber: #f59e0b;--amber-soft: #fef3c7;--amber-text: #b45309;--red: #ef4444;--red-soft: #fee2e2;--red-text: #b91c1c;--info: #0ea5e9;--info-soft: #e0f2fe;--info-text: #0369a1;--cyan-soft: #e0f2fe;--radius-control: 10px;--radius-card: 14px;--radius-panel: 18px;--shadow-card: 0 8px 24px rgba(15, 23, 42, .06);--shadow-panel: 0 18px 44px rgba(15, 23, 42, .08);--shadow: var(--shadow-card)}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:linear-gradient(180deg,#ffffffb8,#fff0) 0 0 / 100% 320px no-repeat,var(--bg);color:var(--text);font-family:Geist,Inter Tight,Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-variant-numeric:tabular-nums;text-rendering:geometricPrecision;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}button,input,select{font:inherit}button{cursor:pointer}.app-shell{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100vh}.sidebar{display:flex;flex-direction:column;gap:18px;padding:18px 14px;background:#182235;color:#f8fbff}.brand{display:flex;align-items:center;gap:12px;min-height:52px;padding:8px}.brand-mark{display:grid;width:38px;height:38px;place-items:center;border:1px solid rgba(255,255,255,.16);border-radius:8px;background:#0f1726;color:#5ec7ff;font-weight:800}.brand strong,.brand span{display:block}.brand span{margin-top:2px;color:#9fb0c8;font-size:12px}.main-nav{display:grid;gap:6px}.nav-button,.icon-button,.primary-button,.tab,.kiosk-row,.command-tile{border:0}.nav-button{display:flex;align-items:center;gap:10px;width:100%;min-height:38px;padding:9px 10px;border-radius:8px;background:transparent;color:#cbd6e7;text-align:left}.nav-button:hover,.nav-button.active{background:#26344e;color:#fff}.sidebar-card{margin-top:auto;padding:12px;border:1px solid rgba(255,255,255,.12);border-radius:8px;background:#111a2a}.sidebar-card span,.sidebar-card small{display:block;color:#9fb0c8}.sidebar-card strong{display:block;margin:5px 0;color:#fff}.page{min-width:0;padding:20px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}h1,h2,p{margin:0}h1{font-size:24px;line-height:1.2}h2{font-size:22px;line-height:1.2}.crumbs{display:flex;align-items:center;gap:6px;margin-top:6px;color:var(--muted);font-size:13px}.top-actions{display:flex;align-items:center;gap:8px}.icon-button,.primary-button{display:inline-flex;align-items:center;justify-content:center;min-height:38px;border-radius:8px}.icon-button{width:38px;border:1px solid var(--line);background:var(--panel);color:var(--text)}.icon-button.compact{width:36px;min-height:36px}.icon-button.active{border-color:#bcd6ff;background:var(--blue-soft);color:var(--blue)}.primary-button{gap:8px;padding:0 14px;background:var(--blue);color:#fff;font-weight:700}.secondary-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:38px;padding:0 14px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--blue);font-weight:700}.secondary-button:disabled{color:var(--muted);cursor:not-allowed;opacity:.62}.secondary-button.compact{min-height:32px;padding:0 10px;font-size:12px}.secondary-button.danger{border-color:#fecaca;background:#fef2f2;color:#b91c1c}.secondary-button.ok{border-color:#bbf7d0;background:#f0fdf4;color:#047857}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:12px;margin-bottom:14px}.status-strip{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:14px}.data-source{display:inline-flex;align-items:center;gap:8px;min-height:34px;padding:0 11px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--muted);font-size:13px}.data-source.live{border-color:#b9e6cf;background:var(--green-soft);color:var(--green)}.data-source.demo{border-color:#f1d19a;background:var(--amber-soft);color:var(--amber)}.data-source.ok{border-color:#b9e6cf;background:var(--green-soft);color:var(--green)}.data-source.danger{border-color:#f7b4b4;background:var(--red-soft);color:var(--red)}.data-source.muted{border-color:var(--line);background:#fff;color:var(--muted)}.worker-health{display:inline-flex;align-items:center;gap:8px;min-height:34px;padding:0 11px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--muted);font-size:13px}.worker-health.ok{border-color:#b9e6cf;background:var(--green-soft);color:var(--green)}.worker-health.warn{border-color:#f1d19a;background:var(--amber-soft);color:var(--amber)}.metric{display:grid;grid-template-columns:42px 1fr;align-items:center;min-height:82px;padding:14px;border:1px solid var(--line);border-radius:8px;background:var(--panel);box-shadow:0 10px 26px #17284012;font:inherit}.metric.clickable{cursor:pointer;text-align:left;transition:border-color .16s ease,transform .16s ease,box-shadow .16s ease}.metric.clickable:hover,.metric.clickable.active{border-color:#bcd6ff;box-shadow:0 14px 32px #2563eb1f}.metric.clickable:hover{transform:translateY(-1px)}.metric-icon{display:grid;width:34px;height:34px;place-items:center;grid-row:span 2;border-radius:8px}.metric span{color:var(--muted);font-size:13px}.metric strong{font-size:23px}.metric.ok .metric-icon,.health-badge.ok,.status-tile.ok{background:var(--green-soft);color:var(--green)}.metric.warn .metric-icon,.health-badge.warn,.status-tile.warn{background:var(--amber-soft);color:var(--amber)}.metric.neutral .metric-icon,.status-tile.muted{background:var(--blue-soft);color:var(--blue)}.metric.cash .metric-icon{background:var(--cyan-soft);color:#077487}.workspace{display:grid;grid-template-columns:390px minmax(0,1fr);gap:14px;align-items:stretch}.kiosk-map-workspace{display:grid;gap:14px}.kiosk-map-head,.kiosk-map-board,.kiosk-map-details{border:1px solid var(--line);border-radius:8px;background:#fffffff0;box-shadow:var(--shadow)}.kiosk-map-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px}.kiosk-map-head p{margin-top:5px;color:var(--muted)}.kiosk-map-summary,.kiosk-map-legend{display:flex;flex-wrap:wrap;gap:8px}.map-pill{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;min-width:124px;min-height:54px;padding:8px 12px;border:1px solid transparent;border-left-width:5px;border-radius:8px;font-weight:800;text-align:left;transition:transform .12s ease,box-shadow .12s ease,outline-color .12s ease}.map-pill:hover,.map-pill.active{transform:translateY(-1px);outline:3px solid rgba(37,99,235,.16);box-shadow:0 10px 20px #0f172a1a}.map-pill b{font-size:24px;line-height:1}.map-pill small{color:currentColor;font-size:12px;font-weight:800;line-height:1.15;opacity:.86}.map-pill.online{border-color:#a7e3c0;border-left-color:var(--green);background:var(--green-soft);color:var(--green)}.map-pill.warn{border-color:#f6d9a6;border-left-color:#db8a16;background:var(--amber-soft);color:var(--amber)}.map-pill.offline{border-color:#f5b8b8;border-left-color:var(--red);background:var(--red-soft);color:var(--red)}.kiosk-map-body{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:14px;align-items:start}.kiosk-map-board{min-height:620px;padding:16px}.kiosk-map-legend{margin-bottom:14px;color:var(--muted);font-size:13px;font-weight:700}.kiosk-map-legend button{display:inline-flex;align-items:center;gap:6px;min-height:30px;padding:0 10px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--muted);font-weight:800}.kiosk-map-legend button:hover,.kiosk-map-legend button.active{border-color:#b7cef9;background:var(--blue-soft);color:var(--blue)}.kiosk-map-filter-note{margin-bottom:12px;color:var(--muted);font-size:12px;font-weight:700}.map-square-dot{width:12px;height:12px;border-radius:3px}.map-square-dot.online,.kiosk-map-tile.online{background:var(--green)}.map-square-dot.warn,.kiosk-map-tile.warn{background:#db8a16}.map-square-dot.offline,.kiosk-map-tile.offline{background:var(--red)}.kiosk-map-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(34px,1fr));gap:8px}.kiosk-map-empty{grid-column:1 / -1;padding:18px;border:1px dashed var(--line);border-radius:8px;color:var(--muted);background:var(--panel-soft)}.kiosk-map-tile{display:grid;aspect-ratio:1;min-width:0;place-items:center;border:2px solid transparent;border-radius:7px;color:#fff;font-size:12px;font-weight:900;box-shadow:0 8px 18px #0f172a1a}.kiosk-map-tile:hover,.kiosk-map-tile.active{border-color:#0f172a;outline:3px solid rgba(37,99,235,.14)}.kiosk-map-details{display:grid;gap:14px;padding:14px}.map-selected-head{display:grid;grid-template-columns:12px minmax(0,1fr);align-items:center;gap:10px}.map-selected-head div{display:grid;gap:3px}.map-selected-head small{color:var(--muted)}.map-selected-head strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:18px}.map-selected-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.map-selected-grid div{display:grid;gap:4px;min-height:64px;padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--panel-soft)}.map-selected-grid span,.map-problems small{color:var(--muted);font-size:12px}.map-selected-grid b{overflow-wrap:anywhere}.map-open-button{width:100%}.map-problems{display:grid;gap:8px;padding-top:12px;border-top:1px solid var(--line)}.map-problems button{display:grid;grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:8px;min-height:34px;padding:7px 8px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--text);text-align:left}.map-problems button:hover{background:var(--blue-soft)}.map-center-embed,.audit-center-embed{display:grid;gap:14px;min-height:760px}.map-center-embed-head,.map-center-embed-frame,.audit-center-embed-head,.audit-center-embed-frame{border:1px solid var(--line);border-radius:8px;background:#fffffff5;box-shadow:var(--shadow)}.map-center-embed-head,.audit-center-embed-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px}.map-center-embed-head p,.audit-center-embed-head p{margin-top:5px;color:var(--muted)}.map-center-embed-actions,.audit-center-embed-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px}.map-center-embed-stat{display:grid;min-width:82px;min-height:44px;padding:7px 10px;border:1px solid var(--line);border-radius:8px;background:#fff}.map-center-embed-stat b{font-size:18px;line-height:1}.map-center-embed-stat span{color:var(--muted);font-size:12px;font-weight:700}.map-center-embed-stat.online{border-color:#b9e7cd;background:var(--green-soft);color:var(--green)}.map-center-embed-stat.offline{border-color:#f3b9b9;background:var(--red-soft);color:var(--red)}.map-center-embed-stat.warn{border-color:#f3d8a6;background:var(--amber-soft);color:var(--amber)}.map-center-embed-frame,.audit-center-embed-frame{width:100%;min-height:760px;border:0;overflow:hidden}.analytics-center-embed-frame{min-height:1460px}.reports-center-embed-frame{min-height:1580px}.kiosk-panel,.detail-panel,.data-card{border:1px solid var(--line);border-radius:8px;background:#ffffffeb;box-shadow:var(--shadow)}.kiosk-panel{min-height:680px;overflow:hidden}.toolbar{display:flex;gap:8px;padding:12px;border-bottom:1px solid var(--line)}.search-box{display:flex;align-items:center;flex:1;gap:8px;min-width:0;min-height:36px;padding:0 10px;border:1px solid var(--line);border-radius:8px;background:var(--panel-soft);color:var(--muted)}.search-box input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--text)}.kiosk-list-controls{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(150px,.9fr);gap:10px;padding:10px 12px;border-bottom:1px solid var(--line);background:#f8fbff}.kiosk-list-controls>div,.kiosk-list-controls label{display:grid;gap:6px}.kiosk-list-controls span{color:var(--muted);font-size:12px;font-weight:700}.kiosk-list-controls select{min-height:36px;padding:0 10px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--text)}.segmented-control{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:3px;border:1px solid var(--line);border-radius:8px;background:#fff}.segmented-control button{min-height:30px;border:0;border-radius:6px;background:transparent;color:var(--muted);font-size:12px;font-weight:700}.segmented-control button.active{background:var(--blue-soft);color:var(--blue)}.group-title{display:flex;align-items:center;gap:8px;padding:12px 14px 8px;color:var(--muted);font-size:13px}.group-title strong{margin-left:auto;color:var(--text)}.kiosk-list{display:block;padding:8px 10px 12px;max-height:min(560px,calc(100vh - 360px));overflow-y:auto;overscroll-behavior:contain}.kiosk-row{display:grid;grid-template-columns:12px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:66px;height:66px;padding:10px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--text);text-align:left;width:100%;margin-bottom:6px}.kiosk-row:hover,.kiosk-row.active{border-color:var(--line-strong);background:var(--panel-soft)}.kiosk-main,.kiosk-side{display:grid;gap:3px}.kiosk-main{min-width:0}.kiosk-main strong,.kiosk-main small,.kiosk-side strong,.kiosk-side small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kiosk-main strong.kiosk-title-line{display:flex;align-items:center;gap:6px;min-width:0}.kiosk-title-line>span:first-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kiosk-main small,.kiosk-side small{color:var(--muted)}.kiosk-main small.kiosk-meta-line{display:flex;align-items:center;gap:5px;min-width:0}.kiosk-meta-line>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kiosk-route-chip{display:inline-flex;align-items:center;gap:3px;flex:0 1 auto;max-width:165px;padding:1px 6px;border-radius:999px;background:#eaf2ff;color:#1d4ed8;font-weight:800;font-size:11px;line-height:1.45}.kiosk-route-chip svg{flex:0 0 auto}.kiosk-side{text-align:right}.inline-temp{display:inline-flex;align-items:center;min-height:20px;margin-left:8px;padding:0 6px;border-radius:999px;background:var(--green-soft);color:var(--green);font-weight:700}.status-dot{width:10px;height:10px;border-radius:50%}.status-dot.ok,.event-row.ok .event-code{background:var(--green)}.status-dot.warn{background:#db8a16}.status-dot.danger{background:var(--red)}.detail-panel{min-width:0;min-height:680px;overflow:hidden}.reports-page,.cards-page{display:grid;gap:14px;min-width:0}.cards-toolbar{display:flex;gap:10px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:8px;background:#fffffff0}.cards-toolbar .search-box{width:min(520px,100%)}.cards-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.45fr);gap:14px;align-items:start}.cards-side-forms{display:grid;gap:14px}.card-create-form{display:grid;gap:12px;padding:14px;border:1px solid var(--line);border-radius:8px;background:#fffffff5}.card-create-form h2{margin:0;font-size:16px}.form-title-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.mini-badge{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border-radius:8px;background:#eaf2ff;color:var(--blue);font-size:12px;font-weight:900}.card-create-form label{display:grid;gap:6px;color:var(--muted);font-size:12px;font-weight:700}.card-create-form input,.card-create-form select,.card-create-form textarea{width:100%;min-height:38px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font:inherit;padding:0 10px}.card-create-form textarea{min-height:82px;padding:10px;resize:vertical}.card-create-form .checkbox-line{display:flex;align-items:center;gap:8px}.card-create-form .checkbox-line input{width:16px;min-height:16px}.card-bulk-switch{min-height:32px}.card-bulk-switch i{width:44px;height:26px}.card-bulk-switch i:after{width:18px;height:18px}.card-bulk-switch input:checked+i:after{transform:translate(18px)}.card-range-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.bulk-card-hint{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:0 10px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--muted);font-size:13px;font-weight:700}.bulk-card-hint.ok{border-color:#bde8cd;background:var(--green-soft);color:var(--green)}.empty-edit-state{min-height:86px;display:grid;place-items:center;padding:16px;border:1px dashed #bfd0e6;border-radius:8px;color:var(--muted);background:#f7fbff;text-align:center;line-height:1.4}.table-link{border:0;background:transparent;color:var(--blue);font:inherit;font-weight:900;cursor:pointer;padding:0}.table-link.active{color:var(--green)}.table-link:hover{text-decoration:underline}.card-number-link.money{color:var(--green)}.card-number-link.liters{color:var(--blue)}.card-number-link.service{color:#7c3aed}.card-number-link.active{text-decoration:underline}.card-type-badge,.card-sync-badge{display:inline-flex;align-items:center;min-height:24px;padding:2px 9px;border-radius:999px;font-size:12px;font-weight:900;white-space:nowrap}.card-type-badge.money{background:var(--green-soft);color:var(--green)}.card-type-badge.liters{background:var(--blue-soft);color:var(--blue)}.card-type-badge.service{background:#ede9fe;color:#7c3aed}.card-sync-badge.pending{background:var(--amber-soft);color:var(--amber)}.card-sync-badge.ready{background:#eef2f7;color:var(--muted)}.reports-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) minmax(180px,.7fr) 150px 150px auto auto;gap:10px;align-items:end;padding:14px;border:1px solid var(--line);border-radius:8px;background:#fffffff0}.reports-toolbar label{display:grid;gap:6px;color:var(--muted);font-size:12px;font-weight:700}.reports-toolbar input,.reports-toolbar select{width:100%;min-height:38px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font:inherit;padding:0 10px}.report-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}.charts-page{display:grid;gap:14px;min-width:0}.charts-hero,.charts-toolbar,.chart-card,.chart-breakdown-card,.payment-split-card{border:1px solid var(--line);border-radius:8px;background:#fffffff5;box-shadow:var(--shadow)}.charts-hero{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px;overflow:hidden}.charts-hero span,.chart-card-head span,.payment-split-card span{color:var(--muted);font-size:13px;font-weight:800}.charts-hero h2,.chart-card-head h3,.chart-breakdown-card h3{margin:4px 0;color:var(--ink)}.charts-hero p{max-width:760px;margin:0;color:var(--muted);line-height:1.45}.charts-toolbar{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:10px;align-items:end;padding:14px}.charts-toolbar label{display:grid;gap:6px;color:var(--muted);font-size:12px;font-weight:800}.charts-toolbar input,.charts-toolbar select{width:100%;min-height:38px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font:inherit;padding:0 10px}.charts-kpis{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:12px}.chart-card{min-width:0;overflow:hidden;padding:16px}.chart-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:12px}.chart-legend{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.chart-legend span{display:inline-flex;align-items:center;gap:7px;min-height:30px;padding:0 10px;border-radius:999px;background:#f6f9fd;color:var(--ink);font-size:12px;font-weight:800}.chart-legend i{width:10px;height:10px;border-radius:999px}.line-chart-wrap{width:100%;min-width:0;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:#bfd0e6 transparent}.line-chart{display:block;width:100%;min-width:760px;height:auto}.line-chart line{stroke:#e8eef7;stroke-width:1}.line-chart text{fill:var(--muted);font-size:12px;font-weight:700}.line-chart .x-label{fill:var(--ink)}.chart-empty{display:grid;place-items:center;min-height:220px;border:1px dashed #bfd0e6;border-radius:8px;background:#f8fbff;color:var(--muted);font-weight:800;text-align:center}.chart-empty.compact{min-height:74px}.donut-card{overflow:hidden}.donut-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:18px;align-items:center}.donut-visual{display:grid;place-items:center;min-height:280px;border-radius:8px;background:#f8fbff}.donut-chart{width:min(260px,100%);height:auto;transform:rotate(-90deg)}.donut-track{stroke:#e8eef7}.donut-segment{transition:stroke-dasharray .18s ease,stroke-dashoffset .18s ease}.donut-total-label,.donut-total-value{transform:rotate(90deg);transform-origin:center;fill:var(--ink)}.donut-total-label{fill:var(--muted);font-size:13px;font-weight:800}.donut-total-value{font-size:19px;font-weight:900}.donut-list{display:grid;gap:10px}.donut-row{display:grid;grid-template-columns:12px minmax(0,1fr) auto;gap:10px;align-items:center;min-height:58px;padding:10px;border:1px solid #e5edf7;border-radius:8px;background:#fbfdff}.donut-row i{width:12px;height:36px;border-radius:999px}.donut-row strong,.donut-row span{display:block}.donut-row strong{color:var(--ink)}.donut-row span{color:var(--muted);font-size:12px;font-weight:700}.donut-row b{color:var(--ink);font-size:20px}.payment-split-grid,.chart-breakdown-grid{display:grid;grid-template-columns:repeat(4,minmax(160px,1fr));gap:12px}.chart-breakdown-grid{grid-template-columns:repeat(3,minmax(220px,1fr))}.payment-split-card{display:grid;gap:8px;padding:14px}.payment-split-card strong{color:var(--ink);font-size:24px}.payment-split-card small{color:var(--muted);font-weight:700}.chart-breakdown-card{display:grid;gap:10px;padding:14px}.chart-breakdown-row{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;min-height:58px;padding:10px;border:1px solid #e5edf7;border-radius:8px;overflow:hidden;background:#fbfdff}.chart-breakdown-row div,.chart-breakdown-row b{position:relative;z-index:1}.chart-breakdown-row strong,.chart-breakdown-row span{display:block}.chart-breakdown-row strong{overflow:hidden;color:var(--ink);text-overflow:ellipsis;white-space:nowrap}.chart-breakdown-row span{color:var(--muted);font-size:12px;font-weight:700}.chart-breakdown-row b{color:var(--ink)}.chart-breakdown-row i{position:absolute;inset:auto auto 0 0;height:4px;border-radius:0 999px 999px 0;background:var(--blue);opacity:.72}.report-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.65fr);gap:14px;min-width:0}.report-card{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#fffffff5}.report-card h2{margin:0;padding:12px 14px;border-bottom:1px solid var(--line);background:#f6f9fd;font-size:16px}.report-table-wrap{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:#bfd0e6 transparent}.report-table-wrap::-webkit-scrollbar,.sales-table-wrap::-webkit-scrollbar,.line-chart-wrap::-webkit-scrollbar,.management-table-wrap::-webkit-scrollbar{height:8px}.report-table-wrap::-webkit-scrollbar-thumb,.sales-table-wrap::-webkit-scrollbar-thumb,.line-chart-wrap::-webkit-scrollbar-thumb,.management-table-wrap::-webkit-scrollbar-thumb{border-radius:999px;background:#bfd0e6}.report-table{width:max-content;min-width:100%;border-collapse:collapse}.report-table th,.report-table td{padding:9px 11px;border-bottom:1px solid #e8eef7;text-align:left;white-space:nowrap;font-size:13px}.report-table th{color:var(--muted);background:#fbfdff;font-weight:800}.report-table tbody tr:hover{background:#f7fbff}.report-empty{padding:28px 14px;color:var(--muted);text-align:center}.management-workspace{display:grid;grid-template-columns:260px minmax(0,1fr);gap:14px;align-items:stretch}.management-menu,.management-main,.management-details{border:1px solid var(--line);border-radius:8px;background:#fffffff0;box-shadow:var(--shadow)}.management-menu{min-height:680px;padding:10px}.management-menu-title{padding:8px 10px 12px;color:var(--muted);font-size:13px;font-weight:700}.management-menu-button{display:flex;align-items:center;gap:9px;width:100%;min-height:36px;padding:8px 10px;border:0;border-radius:8px;background:transparent;color:var(--text);text-align:left}.management-menu-button:hover,.management-menu-button.active{background:var(--blue-soft);color:var(--blue)}.management-main{min-width:0;min-height:680px;overflow:hidden}.management-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px;border-bottom:1px solid var(--line)}.management-head p{margin-top:5px;color:var(--muted)}.management-count{display:grid;min-width:42px;height:34px;place-items:center;border-radius:8px;background:var(--blue-soft);color:var(--blue);font-weight:800}.management-head-actions{display:inline-flex;align-items:center;gap:8px}.management-body{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:14px;padding:14px}.management-table-wrap{min-width:0;overflow:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:#bfd0e6 transparent;border:1px solid var(--line);border-radius:8px}.user-create-form{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr));gap:10px;padding:12px;border-bottom:1px solid var(--line);background:var(--panel-soft)}.business-unit-form,.contractor-form{display:grid;grid-template-columns:repeat(3,minmax(160px,1fr));gap:10px;padding:12px;border-bottom:1px solid var(--line);background:var(--panel-soft)}.user-create-form label,.user-edit-form label,.business-unit-form label,.contractor-form label{display:grid;gap:5px;min-width:0;color:var(--muted);font-size:12px}.user-create-form .checkbox-field{display:inline-flex;align-items:center;align-self:end;gap:8px;min-height:34px;color:var(--text);font-weight:700}.user-edit-form .inline-check{display:inline-flex;align-items:center;gap:8px;color:var(--text);font-weight:700}.user-create-form input,.user-create-form select,.user-edit-form input,.user-edit-form select,.business-unit-form input,.business-unit-form select,.contractor-form input,.contractor-form select{width:100%;min-width:0;min-height:34px;padding:0 9px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--text)}.business-unit-form .wide,.contractor-form .wide{grid-column:span 2}.contractor-form .primary-button{align-self:end;min-height:38px}.management-inline-status{display:inline-flex;align-items:center;gap:8px;width:fit-content;max-width:calc(100% - 24px);min-height:36px;margin:12px 12px 0;padding:0 12px;border:1px solid var(--line);border-radius:8px;background:var(--panel-soft);color:var(--muted);font-size:13px}.management-inline-status.ok{border-color:#b9e6cf;background:var(--green-soft);color:var(--green)}.management-inline-status.warn{border-color:#f1d19a;background:var(--amber-soft);color:var(--amber)}.management-inline-status.danger{border-color:#ffc1bb;background:var(--red-soft);color:var(--red)}.user-create-form .checkbox-field input,.user-edit-form .inline-check input{min-height:auto;width:16px;height:16px;padding:0}.user-create-form .form-status,.user-create-form .form-button{align-self:end}.management-table{width:100%;border-collapse:collapse;background:var(--panel);font-size:13px}.management-table th,.management-table td{min-height:36px;padding:9px 10px;border-bottom:1px solid var(--line);text-align:left;white-space:nowrap}.management-table th{background:var(--panel-soft);color:var(--muted);font-weight:700}.management-table tbody tr:hover{background:var(--blue-soft)}.management-table tbody tr{cursor:pointer}.management-table tbody tr.selected{background:#fff7d6}.logo-cell{display:inline-flex;align-items:center;gap:10px;min-width:220px}.logo-cell img{display:block;width:52px;height:36px;object-fit:contain;padding:3px;border:1px solid var(--line);border-radius:4px;background:linear-gradient(45deg,#edf2f7 25%,transparent 25%),linear-gradient(-45deg,#edf2f7 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#edf2f7 75%),linear-gradient(-45deg,transparent 75%,#edf2f7 75%),#fff;background-position:0 0,0 6px,6px -6px,-6px 0;background-size:12px 12px}.management-details{min-width:0;max-height:calc(100vh - 190px);padding:14px;overflow:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:#bfd0e6 transparent;box-shadow:none}.management-details>strong{display:block;margin-bottom:12px;font-size:18px}.user-edit-form{display:grid;gap:10px;margin-bottom:14px;padding-bottom:14px;border-bottom:1px solid var(--line)}.user-edit-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px;border:1px solid var(--line);border-radius:8px;background:var(--panel-soft)}.user-edit-head span{font-weight:800;color:var(--text)}.business-unit-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.user-edit-form .form-button{min-height:38px}.management-details p{color:var(--muted)}.business-unit-assignment{display:grid;gap:10px;margin-bottom:14px;padding-bottom:14px;border-bottom:1px solid var(--line)}.assignment-head,.assignment-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.assignment-head{color:var(--muted);font-size:13px;font-weight:800}.assignment-list{display:grid;gap:8px;max-height:320px;overflow:auto}.assignment-row{padding:8px;border:1px solid var(--line);border-radius:8px;background:var(--panel-soft)}.assignment-row span{display:grid;min-width:0}.assignment-row small{color:var(--muted)}.assignment-row select{min-width:130px;min-height:32px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--text)}.management-logo-preview{display:grid;min-height:180px;place-items:center;margin-bottom:14px;border:1px solid var(--line);border-radius:8px;background:linear-gradient(45deg,#edf2f7 25%,transparent 25%),linear-gradient(-45deg,#edf2f7 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#edf2f7 75%),linear-gradient(-45deg,transparent 75%,#edf2f7 75%),#fff;background-position:0 0,0 10px,10px -10px,-10px 0;background-size:20px 20px}.management-logo-preview img{display:block;max-width:260px;max-height:150px;object-fit:contain;filter:drop-shadow(0 6px 12px rgba(21,32,51,.18))}.management-kv{display:grid;gap:8px}.management-kv div{display:grid;gap:3px;padding-bottom:8px;border-bottom:1px solid var(--line)}.management-kv span{color:var(--muted);font-size:12px}.management-kv b{overflow-wrap:anywhere;font-size:13px}.audit-details{max-height:210px;margin:0 0 12px;padding:12px;overflow:auto;border:1px solid var(--line);border-radius:8px;background:#0f172a;color:#dbeafe;font-size:12px;line-height:1.45;white-space:pre-wrap}.audit-toolbar{display:flex;flex-wrap:wrap;align-items:end;gap:10px;padding:12px;border-bottom:1px solid var(--line);background:var(--panel-soft)}.audit-toolbar label{display:grid;gap:5px;min-width:150px;color:var(--muted);font-size:12px}.audit-toolbar input{min-height:34px;padding:0 9px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--text)}.audit-card{display:grid;gap:12px}.audit-card-section,.audit-card-grid>div,.audit-human-details>div{display:grid;gap:4px;padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--panel-soft)}.audit-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.audit-card span,.audit-human-details span{color:var(--muted);font-size:12px}.audit-card b,.audit-human-details b{overflow-wrap:anywhere;color:var(--text);font-size:13px}.audit-human-details{display:grid;gap:8px;max-height:420px;overflow:auto;padding-right:2px}.audit-human-details p{margin:0;color:var(--muted)}.detail-head{display:flex;justify-content:space-between;gap:14px;padding:18px;border-bottom:1px solid var(--line)}.detail-head p{margin-top:6px;color:var(--muted)}.kiosk-eyebrow{margin-bottom:5px;color:var(--muted);font-size:13px}.health-badge{display:inline-flex;align-items:center;align-self:flex-start;gap:7px;min-height:32px;padding:0 10px;border-radius:8px;font-size:13px;font-weight:700}.health-badge.danger,.status-tile.danger{background:var(--red-soft);color:var(--red)}.tabbar{display:flex;gap:4px;padding:10px 12px;border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:thin}.tab{display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:0 10px;border-radius:8px;background:transparent;color:var(--muted);white-space:nowrap}.tab:hover,.tab.active{background:var(--blue-soft);color:var(--blue)}.content-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,.55fr);gap:14px;padding:14px}.content-grid.single{grid-template-columns:1fr}.status-board{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:10px}.status-tile{display:grid;min-height:118px;align-content:center;justify-items:start;gap:8px;padding:14px;border:1px solid var(--line);border-radius:8px;background:var(--panel-soft)}.status-tile span{color:var(--muted);font-size:13px}.status-tile strong{color:var(--text);font-size:22px}.status-mark{display:block}.status-mark.ok{color:var(--green)}.status-mark.danger{color:var(--red)}.data-card{min-width:0;padding:14px;box-shadow:none}.telemetry-page{display:grid;gap:14px;padding:16px;background:#f8fafc}.telemetry-layout{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));align-items:stretch;gap:14px}.telemetry-card,.telemetry-problems{min-width:0;border:1px solid var(--line);border-radius:var(--radius-panel);background:linear-gradient(180deg,#fff,#fff 72%,#fbfdff);box-shadow:var(--shadow-card)}.telemetry-card{display:grid;grid-template-rows:auto 1fr;gap:14px;min-height:258px;padding:18px;overflow:hidden;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.telemetry-card:hover{border-color:#cbd5e1;box-shadow:0 14px 34px #0f172a14;transform:translateY(-1px)}.telemetry-card-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;min-width:0;min-height:58px}.telemetry-title{display:flex;align-items:center;gap:12px;min-width:0}.telemetry-title>span:last-child{display:grid;gap:3px;min-width:0}.telemetry-title strong{min-width:0;color:var(--text);font-size:16px;font-weight:600;line-height:1.18;overflow-wrap:anywhere}.telemetry-title small{min-width:0;color:var(--muted);font-size:13px;font-weight:400;line-height:1.2}.telemetry-icon{display:grid;flex:0 0 auto;width:50px;height:50px;place-items:center;color:var(--blue)}.telemetry-icon img{display:block;width:50px;height:50px;object-fit:contain}.telemetry-icon.sbp,.telemetry-icon.coin,.telemetry-icon.bill,.telemetry-icon.bank{width:50px;height:50px}.telemetry-icon.water{color:var(--green)}.telemetry-icon.host{color:var(--blue)}.telemetry-badge{display:inline-flex;align-items:center;justify-content:center;min-width:56px;max-width:132px;min-height:30px;overflow:hidden;padding:5px 10px;border-radius:999px;font-size:12px;font-weight:600;letter-spacing:0;text-overflow:ellipsis;white-space:nowrap}.telemetry-badge.ok{background:#dcfce7;color:#047857}.telemetry-badge.warn{background:#ffedd5;color:#c2410c}.telemetry-badge.danger{background:#fee2e2;color:#dc2626}.telemetry-badge.muted{background:#f1f5f9;color:#64748b}.telemetry-rows{display:grid;align-content:start}.telemetry-row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;border-top:1px solid var(--line-soft)}.telemetry-row:after{flex:0 0 auto;color:#cbd5e1;font-size:19px;line-height:1;content:"›"}.telemetry-row>span{min-width:0;flex:1 1 auto;color:var(--muted);font-size:13px;font-weight:400;line-height:1.25}.telemetry-value{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0;flex:0 1 50%;color:var(--text);font-size:14px;font-weight:600;line-height:1.25;text-align:right}.telemetry-value.ok{color:var(--green-text)}.telemetry-value.warn{color:var(--amber-text)}.telemetry-value.danger{color:var(--red-text)}.telemetry-value.muted{color:#64748b}.telemetry-value-text{min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.telemetry-value-text[title]{cursor:default}.telemetry-duo{display:inline-flex;flex-wrap:wrap;justify-content:flex-end;gap:4px 10px;max-width:100%;white-space:normal}.telemetry-duo span{white-space:nowrap}.telemetry-value small{display:block;min-width:max-content;color:var(--muted);font-size:12px;font-weight:400}.telemetry-pills{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.telemetry-pills em{min-width:42px;padding:6px 9px;border:1px solid #dbe4ef;border-radius:var(--radius-control);background:#f8fafc;color:var(--muted);font-style:normal;font-weight:500;text-align:center}.telemetry-pills em:first-child{border-color:#bbf7d0;background:#dcfce7;color:#047857}.copy-button{display:inline-grid;flex:0 0 auto;width:26px;height:26px;place-items:center;border:1px solid #dbe4ef;border-radius:8px;background:#fff;color:var(--muted);cursor:pointer}.copy-button:hover,.copy-button.copied{border-color:#93c5fd;color:var(--blue);background:#eff6ff}.telemetry-problems{padding:16px 18px;border-color:#fde68a;background:#fffbeb}.telemetry-problem-list{display:grid;gap:8px}.telemetry-problem-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;min-height:36px;padding-top:8px;border-top:1px solid #fde68a}.telemetry-problem-badge{padding:4px 8px;border-radius:999px;font-size:12px;font-weight:500}.telemetry-problem-badge.warn{background:#fff1c2;color:var(--amber)}.telemetry-problem-badge.danger{background:var(--red-soft);color:var(--red)}.telemetry-empty{color:var(--muted)}.telemetry-statusbar{display:flex;align-items:center;gap:14px;justify-content:flex-end;min-height:44px;padding:0 4px;color:var(--muted);font-size:13px}.telemetry-statusbar span{display:inline-flex;align-items:center;gap:8px;margin-right:auto;padding:8px 12px;border-radius:999px;background:var(--green-soft);color:var(--green-text);font-weight:500}.telemetry-statusbar strong{color:var(--muted);font-weight:500}@media(max-width:860px){.telemetry-page{padding:10px}.telemetry-layout{grid-template-columns:minmax(0,1fr)}.telemetry-card{min-height:0;padding:18px}.telemetry-row{align-items:flex-start}.telemetry-value{flex-basis:48%}.telemetry-statusbar{flex-wrap:wrap;justify-content:flex-start}}.detail-summary{grid-column:1 / -1;display:grid;grid-template-columns:repeat(3,minmax(240px,1fr));gap:8px}.detail-summary-section{overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#fffffff0}.detail-summary-section h3{margin:0;padding:6px 10px;border-bottom:1px solid var(--line);background:#dceaff;color:#08214a;font-size:13px}.detail-summary-rows{display:grid}.detail-summary-row{display:grid;grid-template-columns:minmax(128px,.72fr) minmax(0,1fr);min-height:28px;border-bottom:1px solid #e8eef7}.detail-summary-row:last-child{border-bottom:0}.detail-summary-row span,.detail-summary-row strong{display:flex;align-items:center;padding:5px 10px;font-size:12px;line-height:1.25}.detail-summary-row span{color:var(--muted)}.detail-summary-row strong{border-left:1px solid #e8eef7;color:var(--ink);font-weight:700}.detail-summary-section.compact{border-color:#b9d5ff;background:#f7fbff}.detail-summary-section.compact h3{background:#e8f2ff}.inline-badge{display:inline-flex;align-items:center;width:fit-content;max-width:100%;min-height:22px;padding:2px 8px;border-radius:999px;font-size:12px;font-weight:800}.inline-badge.ok{background:#dcfce7;color:#047857}.inline-badge.muted{background:#eef2f7;color:var(--muted)}.card-title{display:flex;align-items:center;gap:8px;margin-bottom:12px}.kv-list{display:grid;gap:8px}.kv-list div{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:34px;padding:8px 0;border-bottom:1px solid var(--line)}.kv-list div:last-child{border-bottom:0}.kv-list span{color:var(--muted)}.sales-layout{display:grid;grid-template-columns:minmax(0,1fr) 268px;gap:14px;padding:14px}.sales-table-card{min-width:0}.sales-toolbar{display:grid;grid-template-columns:136px 136px 150px minmax(190px,1fr);gap:8px;align-items:center;margin-bottom:12px}.sales-toolbar input,.sales-toolbar select{min-width:0;height:38px;padding:0 10px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--text);font:inherit}.sales-toolbar .form-status{grid-column:1 / -1;width:fit-content;margin:0}.sales-table-wrap{max-width:100%;overflow:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:#bfd0e6 transparent;border:1px solid var(--line);border-radius:8px}.sales-table{width:100%;min-width:760px;table-layout:fixed;border-collapse:collapse;background:#fff}.sales-table th,.sales-table td{padding:10px 8px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;white-space:normal}.sales-table th{background:#f3f7fc;color:var(--muted);font-size:11px;font-weight:800}.sales-table th:nth-child(1),.sales-table td:nth-child(1){width:150px}.sales-table th:nth-child(2),.sales-table td:nth-child(2){width:102px}.sales-table th:nth-child(3),.sales-table td:nth-child(3),.sales-table th:nth-child(6),.sales-table td:nth-child(6),.sales-table th:nth-child(7),.sales-table td:nth-child(7),.sales-table th:nth-child(8),.sales-table td:nth-child(8){width:74px}.sales-table th:nth-child(4),.sales-table td:nth-child(4){width:70px}.sales-table th:nth-child(5),.sales-table td:nth-child(5){width:52px}.sales-table th:nth-child(9),.sales-table td:nth-child(9){width:64px}.sales-table tbody tr:hover{background:#f8fbff}.sales-table td:first-child{display:grid;gap:3px}.sales-table td:first-child span{color:var(--muted);font-size:12px}.payment-badge{display:inline-flex;align-items:center;justify-content:center;min-width:72px;min-height:26px;padding:0 9px;border-radius:999px;font-size:12px;font-weight:800}.payment-badge.cash{background:var(--green-soft);color:var(--green)}.payment-badge.bank{background:#dbeafe;color:var(--blue)}.payment-badge.card{background:#fef3c7;color:#9a5a00}.payment-badge.sbp{background:#efe7ff;color:#6d28d9}.payment-badge.service{background:#eef2ff;color:#3730a3}.sale-log-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;height:34px;padding:0 12px;border:1px solid #bfdbfe;border-radius:8px;background:#eff6ff;color:var(--blue);font-weight:800;cursor:pointer}.sale-log-button.compact{height:30px;padding:0 8px}.sale-log-button:hover{border-color:#93c5fd;background:#dbeafe}.sales-side{display:grid;align-content:start;gap:14px}.sales-kpis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.sales-kpi{display:grid;gap:8px;min-height:88px;align-content:center;padding:14px;border:1px solid var(--line);border-radius:8px;background:var(--green-soft)}.sales-kpi span{color:var(--muted);font-size:13px}.sales-kpi strong{color:var(--text);font-size:19px}.empty-state{display:flex;align-items:center;min-height:48px;padding:12px;border:1px dashed var(--line);border-radius:8px;color:var(--muted);background:#f8fbff}.events-toolbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:10px}.events-toolbar input,.events-toolbar select{flex:1 1 136px;min-width:0;height:38px;padding:0 10px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--text);font:inherit}.events-toolbar select{flex-basis:150px;max-width:190px}.events-toolbar input[inputmode=numeric]{flex:0 1 78px}.events-toolbar input[placeholder="Текст события"]{flex:2 1 220px;min-width:180px}.events-toolbar input[type=date]{flex:1 1 132px;max-width:150px}.events-toolbar .secondary-button{flex:0 0 auto;min-height:38px;white-space:nowrap}.events-toolbar .primary-button{flex:0 0 auto;min-height:38px;padding-inline:14px;white-space:nowrap}.switch-field{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:flex-end;gap:9px;min-height:38px;color:var(--muted);font-size:13px;font-weight:800;white-space:nowrap}.switch-field input{position:absolute;opacity:0;pointer-events:none}.switch-field i{position:relative;display:inline-block;width:48px;height:28px;border:1px solid #cbd5e1;border-radius:999px;background:#e2e8f0;box-shadow:inset 0 1px 2px #0f172a24;transition:background .18s ease,border-color .18s ease}.switch-field i:after{position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 2px 5px #0f172a3d;content:"";transition:transform .18s ease}.switch-field input:checked+i{border-color:#62c88a;background:var(--green)}.switch-field input:checked+i:after{transform:translate(20px)}.data-card>.form-status{margin-bottom:10px}.event-list{display:grid;gap:7px}.event-row{display:grid;grid-template-columns:86px 132px minmax(0,1fr);gap:10px;align-items:start;min-height:42px;padding:10px;border-radius:8px;border-left:4px solid transparent}.event-row.plain{background:#f8fbff}.event-row.ok{background:var(--green-soft)}.event-row.warn{background:var(--amber-soft)}.event-row.danger{background:var(--red-soft)}.event-row.muted{background:#f6f8fb;color:#64748b}.event-row.is-unread.plain{border-left-color:var(--line)}.event-row.is-unread.ok{border-left-color:var(--green)}.event-row.is-unread.warn{border-left-color:#db8a16}.event-row.is-unread.danger{border-left-color:var(--red)}.event-row.is-unread.muted{border-left-color:#94a3b8}.event-row.is-read{border-left-color:transparent}.event-row span,.event-row strong{font-size:13px}.event-row p{color:var(--text)}.event-row.muted p{color:#475569}.command-layout{display:grid;gap:12px;padding:14px}.command-grid{display:grid;grid-template-columns:repeat(3,minmax(170px,1fr));gap:12px}.command-tile{display:grid;min-height:112px;align-content:center;justify-items:start;gap:12px;padding:16px;border:1px solid var(--line);border-radius:8px;background:var(--panel-soft);color:var(--text);text-align:left}.command-tile:hover{border-color:var(--blue);background:var(--blue-soft)}.command-tile:disabled{cursor:wait;opacity:.68}.command-result{display:inline-flex;align-items:center;gap:8px;min-height:38px;width:fit-content;max-width:100%;padding:0 12px;border:1px solid var(--line);border-radius:8px;background:var(--panel-soft);color:var(--muted)}.command-result.ok{border-color:#b9e6cf;background:var(--green-soft);color:var(--green)}.command-result.warn{border-color:#f1d19a;background:var(--amber-soft);color:var(--amber)}.command-result.danger{border-color:#ffc1bb;background:var(--red-soft);color:var(--red)}.remote-pour-panel{display:grid;gap:12px;padding:14px;border:1px solid #fecaca;border-radius:8px;background:#fff7f7}.remote-pour-head{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--red)}.remote-pour-head div{display:grid;gap:4px}.remote-pour-head span{color:var(--muted);font-size:13px}.remote-pour-form{display:grid;grid-template-columns:minmax(120px,160px) minmax(220px,1fr) max-content;gap:10px;align-items:end}.remote-pour-form label{display:grid;gap:6px;color:var(--muted);font-size:13px}.remote-pour-form input{min-height:38px;padding:0 10px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--text)}.tray-unlock-panel{border-color:#fed7aa;background:#fff8ed}.tray-unlock-panel .remote-pour-head{color:#c2410c}.tray-unlock-form{grid-template-columns:minmax(120px,150px) minmax(220px,1fr) minmax(150px,max-content) max-content}.dry-run-toggle{display:inline-flex!important;align-items:center;align-self:end;gap:8px;min-height:38px;padding:0 12px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--text)!important;font-weight:700}.dry-run-toggle input{min-height:auto;margin:0}.tray-action{border-color:#fb923c;background:#ea580c}.tray-action:hover{background:#c2410c}.danger-action{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:38px;padding:0 14px;border:1px solid #fca5a5;border-radius:8px;background:#dc2626;color:#fff;font-weight:800}.danger-action:hover{background:#b91c1c}.danger-action:disabled{cursor:not-allowed;opacity:.6}.screenshot-box{display:grid;min-height:240px;place-items:center;overflow:hidden;border:0;border-radius:0;background:transparent;padding:0}.screenshot-box img{display:block;width:min(100%,760px);height:auto;max-height:420px;object-fit:contain;border:0;border-radius:0;background:transparent;box-shadow:none}.screenshot-box div{display:grid;justify-items:center;gap:10px;max-width:360px;padding:24px;color:var(--muted);text-align:center}.screenshot-history{grid-column:span 2}.screenshot-history .card-title{align-items:center;justify-content:space-between}.screenshot-history-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin-top:12px}.screenshot-history-item{display:grid;gap:8px;padding:8px;border:1px solid var(--line);border-radius:8px;background:var(--panel-soft)}.screenshot-history-item img{display:block;width:100%;aspect-ratio:16 / 9;object-fit:cover;border:1px solid var(--line);border-radius:6px;background:#fff}.screenshot-history-item div{display:grid;gap:2px}.screenshot-history-item strong{font-size:13px}.screenshot-history-item span{color:var(--muted);font-size:12px}.screenshot-actions{display:flex!important;grid-template-columns:none!important;gap:8px!important}.screenshot-empty{display:grid;min-height:180px;place-items:center;gap:10px;margin-top:12px;border:1px dashed #bfdbfe;border-radius:8px;color:var(--muted);text-align:center}.settings-form{display:grid;grid-template-columns:repeat(2,minmax(240px,1fr));align-items:start;gap:12px;padding:14px}.stock-form{display:grid;grid-template-columns:repeat(3,minmax(160px,1fr));align-items:start;gap:12px;padding:14px}.stock-hero{display:flex;grid-column:1 / -1;align-items:center;justify-content:space-between;min-height:72px;padding:14px 16px;border:1px solid #bfdbfe;border-radius:8px;background:linear-gradient(135deg,#eff6ff,#f8fbff);color:var(--blue)}.stock-hero div{display:grid;gap:4px}.stock-hero span{color:var(--muted);font-size:13px}.stock-hero strong{color:var(--text);font-size:22px}.logo-grid{grid-template-columns:minmax(0,1fr) 320px}.logo-upload{display:grid;gap:12px;padding:14px;border:1px solid var(--line);border-radius:8px;background:var(--panel)}.library-upload{margin-bottom:12px;grid-template-columns:repeat(2,minmax(180px,1fr));align-items:end}.library-upload .card-title,.library-upload .form-status{grid-column:1 / -1}.library-upload .logo-preview{min-height:64px}.library-upload .form-button{width:max-content;min-height:38px}.settings-form label,.stock-form label,.logo-upload label{display:grid;gap:6px;color:var(--muted);font-size:13px}.settings-form input,.settings-form select,.stock-form input,.logo-upload input{min-height:38px;padding:0 10px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--text)}.settings-control{display:grid;gap:8px}.compact-control{align-self:start}.settings-control-head{display:flex;align-items:center;justify-content:flex-start;gap:10px;color:var(--muted);font-size:13px}.settings-control-head strong{display:inline-flex;min-height:22px;align-items:center;padding:0 8px;border-radius:999px;background:var(--panel-soft);color:var(--text);font-size:13px}.backlight-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.backlight-actions.two-options{grid-template-columns:repeat(2,minmax(0,1fr))}.mode-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:38px;padding:0 8px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--text);font-weight:700}.mode-button.active{border-color:#96d9b5;background:var(--green-soft);color:var(--green)}.mode-button.danger.active{border-color:#ffc1bb;background:var(--red-soft);color:var(--red)}.schedule-field{margin-top:2px}.time-range-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.time-range-grid input:disabled{background:var(--panel-soft);color:var(--muted)}.switch-row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:50px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:var(--panel-soft)}.switch-row>span{display:grid;gap:3px;color:var(--text);font-size:13px;font-weight:700}.switch-row small{color:var(--muted);font-size:12px;font-weight:500}.ios-switch{position:relative;flex:0 0 auto;width:50px;height:28px;border:0;border-radius:999px;background:#cbd5e1;transition:background .16s ease}.ios-switch span{position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 2px 6px #0f172a38;transition:transform .16s ease}.ios-switch.active{background:var(--blue)}.ios-switch.active span{transform:translate(22px)}.light-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:42px;padding:9px 12px;border-radius:8px;background:var(--green-soft);color:var(--green)}.light-summary span{color:var(--muted);font-size:13px}.light-summary strong{font-size:15px}.logo-upload input[type=file]{padding:7px 10px}.logo-preview{display:grid;min-height:210px;place-items:center;overflow:hidden;border:1px dashed var(--line-strong);border-radius:8px;background:var(--panel-soft)}.logo-preview img{display:block;max-width:min(100%,360px);max-height:190px;object-fit:contain}.logo-preview span{color:var(--muted)}.settings-footer{display:flex;grid-column:1 / -1;align-items:center;gap:12px;padding-top:2px}.stock-footer{padding-top:8px}.form-button{flex:0 0 auto}.form-button:disabled{cursor:wait;opacity:.72}.form-status{display:inline-flex;align-items:center;gap:8px;min-height:38px;width:fit-content;max-width:100%;padding:0 12px;border:1px solid var(--line);border-radius:8px;background:var(--panel-soft);color:var(--muted);font-size:13px}.form-status.ok{border-color:#b9e6cf;background:var(--green-soft);color:var(--green)}.form-status.warn{border-color:#f1d19a;background:var(--amber-soft);color:var(--amber)}.form-status.danger{border-color:#ffc1bb;background:var(--red-soft);color:var(--red)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:flex;align-items:center;justify-content:center;padding:24px;background:#0f172a61}.sale-details-modal{width:min(760px,calc(100vw - 32px));max-height:min(760px,calc(100vh - 48px));overflow:hidden;border:1px solid #cbd5e1;border-radius:8px;background:#fff;box-shadow:0 22px 60px #0f172a47}.modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid var(--line);background:#f8fbff}.modal-head div{display:grid;gap:2px}.modal-head span{color:var(--muted);font-size:13px}.modal-head strong{font-size:18px}.sale-details-list{display:grid;gap:8px;max-height:calc(100vh - 160px);overflow:auto;padding:14px}.sale-detail-row{display:grid;grid-template-columns:150px minmax(0,1fr);gap:12px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:#fff}.sale-detail-time{display:grid;align-content:start;gap:4px}.sale-detail-time span{color:var(--muted);font-size:12px}.sale-detail-row p{line-height:1.45}.modal-empty{margin:14px;padding:14px;border:1px dashed var(--line);border-radius:8px;color:var(--muted);background:#f8fbff}.modal-empty.danger{border-color:#ffc1bb;color:var(--red);background:var(--red-soft)}@media(max-width:1180px){.workspace{grid-template-columns:340px minmax(0,1fr)}.metric-grid{grid-template-columns:repeat(2,minmax(150px,1fr))}.content-grid,.command-grid,.remote-pour-form,.settings-form,.user-create-form,.business-unit-form,.contractor-form,.cards-grid,.charts-toolbar,.chart-breakdown-grid,.donut-layout,.reports-toolbar,.report-grid,.management-workspace,.management-body,.kiosk-map-body{grid-template-columns:1fr}.charts-kpis,.payment-split-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.management-menu{min-height:0}}@media(max-width:1450px){.content-grid{grid-template-columns:1fr}}@media(max-width:820px){.app-shell{grid-template-columns:1fr}.sidebar{position:sticky;top:0;z-index:4;flex-direction:column;align-items:stretch;gap:10px;padding:12px}.main-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;min-width:0}.nav-button{flex-direction:column;justify-content:center;gap:5px;min-width:0;min-height:62px;padding:8px;font-size:13px}.nav-button span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.page{overflow-x:hidden;padding:14px}.brand{min-width:0;padding:4px}.top-actions{width:100%;flex-wrap:wrap}.top-actions .primary-button{flex:1}.sidebar-card{display:none}.workspace,.status-board,.kiosk-map-head,.map-center-embed-head,.audit-center-embed-head,.map-selected-grid,.report-metrics,.charts-kpis,.payment-split-grid,.detail-summary{grid-template-columns:1fr}.map-center-embed,.audit-center-embed{min-height:720px}.map-center-embed-head,.audit-center-embed-head{align-items:stretch;flex-direction:column}.map-center-embed-actions,.audit-center-embed-actions{justify-content:stretch}.map-center-embed-actions>button,.audit-center-embed-actions>button,.map-center-embed-stat{flex:1 1 130px}.map-center-embed-frame,.audit-center-embed-frame{min-height:720px}.analytics-center-embed-frame{min-height:1500px}.reports-center-embed-frame{min-height:1660px}.charts-hero,.chart-card-head{align-items:stretch;flex-direction:column}.chart-legend{justify-content:flex-start}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.metric{min-height:70px;padding:10px}.metric strong{font-size:20px}.kiosk-map-head{align-items:stretch}.kiosk-panel,.detail-panel{min-height:0}.kiosk-list{max-height:260px;overflow-y:auto;padding-bottom:10px}.kiosk-list-controls{grid-template-columns:1fr}.segmented-control{grid-template-columns:repeat(2,minmax(0,1fr))}.kiosk-row{min-height:58px;grid-template-columns:10px minmax(0,1fr) auto}.detail-head{align-items:flex-start;gap:10px;padding:14px}.detail-head p{display:none}.detail-head .health-badge{min-height:28px;padding:0 9px;white-space:nowrap}.tabbar{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:0;padding:8px 10px 10px;overflow:visible;scroll-snap-type:none}.tab{justify-content:center;min-width:0;min-height:40px;padding:0 7px;font-size:12px}.tab span{min-width:0;overflow:hidden;text-overflow:ellipsis}.content-grid{padding:10px}.status-tile{min-height:96px}.events-toolbar,.sales-toolbar,.settings-form,.stock-form{grid-template-columns:1fr}.sales-layout,.telemetry-layout{grid-template-columns:1fr;gap:10px;padding:10px}.telemetry-card{min-height:0;padding:12px}.telemetry-card-head{align-items:flex-start}.telemetry-title{font-size:16px}.telemetry-icon{width:54px;height:46px}.telemetry-icon.coin,.telemetry-icon.bill{width:58px;height:48px}.telemetry-icon.bank{width:68px;height:46px}.telemetry-row{grid-template-columns:minmax(0,1fr);gap:3px}.telemetry-row strong{text-align:left}.telemetry-duo{justify-content:flex-start}.sales-table-card{overflow:visible}.report-table-wrap,.sales-table-wrap,.management-table-wrap,.line-chart-wrap{margin-right:-2px;padding-bottom:2px}.report-table{min-width:680px}.report-table th,.report-table td,.sales-table th,.sales-table td{padding:8px 9px}.report-card h2{padding:10px 12px;font-size:15px}.reports-toolbar .primary-button,.reports-toolbar .secondary-button,.cards-toolbar .primary-button,.cards-toolbar .secondary-button{justify-content:center;width:100%}.sales-side{gap:10px}.sales-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.sales-kpi{min-height:72px;padding:10px}.sales-kpi strong{font-size:18px}.sales-toolbar .form-status{width:100%}.events-toolbar .secondary-button,.events-toolbar .primary-button,.events-toolbar .switch-field{justify-content:center;width:100%}.events-toolbar input,.events-toolbar select,.events-toolbar input[type=date]{max-width:none}.event-row{grid-template-columns:1fr;gap:5px;padding:11px 12px}.event-row span,.event-row strong{font-size:12px}.event-row p{font-size:14px;line-height:1.35}.detail-summary-row{grid-template-columns:1fr}.detail-summary-row strong{border-left:0;padding-top:0}.topbar{align-items:flex-start;flex-direction:column}.detail-head{align-items:flex-start;flex-direction:row}}@media(max-width:480px){.tabbar{grid-template-columns:repeat(2,minmax(0,1fr))}.card-range-grid{grid-template-columns:1fr}}.list-load-more{display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:40px;margin-top:10px;border:1px dashed #b8c7dc;border-radius:8px;background:#f8fbff;color:var(--blue);font-weight:700}.list-load-more:hover{border-color:var(--blue);background:#edf4ff}.list-load-more.table-more{margin-top:12px}html{background:var(--bg)}body{background:radial-gradient(circle at 50% -20%,rgba(37,99,235,.08),transparent 34rem),var(--bg)}button,input,select,textarea{font-weight:400}.app-shell{grid-template-columns:248px minmax(0,1fr)}.sidebar{background:linear-gradient(180deg,rgba(37,99,235,.1),transparent 24rem),linear-gradient(180deg,#0b1220,#111827);box-shadow:inset -1px 0 #ffffff12}.brand{padding:10px 8px 12px}.brand-mark{border-radius:12px;background:linear-gradient(145deg,#2563eb38,#0f172ae6);color:#fff;font-weight:600;letter-spacing:0}.brand strong{font-size:15px;font-weight:600}.brand span,.nav-button,.sidebar-card,.sidebar-user,.topbar p,.data-source,.worker-health{font-weight:400}.nav-button{min-height:42px;border-radius:10px;color:#d6e0ef;font-weight:500;transition:background .16s ease,color .16s ease,transform .16s ease}.nav-button:hover{background:#94a3b81f;color:#fff}.nav-button.active{background:#2563eb38;color:#fff;box-shadow:inset 0 0 0 1px #93c5fd1f}.page{padding:24px 20px}.topbar{margin-bottom:16px}.topbar h1,.detail-head h2,.data-card h2,.management-page h1,.reports-page h1,.charts-page h1{letter-spacing:0;font-weight:600}.topbar h1{font-size:28px;line-height:1.2}.topbar p,.detail-head p,.kiosk-eyebrow,.metric span,.detail-summary-row span,.status-tile span,.events-toolbar,.sales-filter-row,.sales-table td,.report-table td,.management-table td{color:var(--muted)}.metric-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;margin-bottom:16px}.metric,.kiosk-panel,.detail-panel,.data-card,.kiosk-map-head,.kiosk-map-board,.kiosk-map-details,.management-card,.report-card,.chart-card{border-color:var(--line);background:#fffffff5;box-shadow:var(--shadow-card)}.metric{min-height:88px;grid-template-columns:44px 1fr;gap:12px;padding:16px;border-radius:var(--radius-card)}.metric-icon{width:36px;height:36px;border-radius:10px}.metric span{font-size:13px}.metric strong{margin-top:2px;color:var(--text);font-size:25px;line-height:1.18;font-weight:600;letter-spacing:0}.metric.clickable:hover,.metric.clickable.active{border-color:#bfdbfe;box-shadow:0 12px 30px #2563eb1a}.status-strip{margin-bottom:16px}.data-source,.worker-health{min-height:34px;border-radius:10px;border-color:#bbf7d0;background:#f0fdf4;color:var(--green-text);font-size:13px}.workspace{grid-template-columns:minmax(320px,360px) minmax(0,1fr);gap:16px;align-items:start}.kiosk-panel,.detail-panel{border-radius:var(--radius-panel)}.kiosk-panel{min-height:680px}.toolbar{gap:10px;padding:12px;border-bottom-color:var(--line)}.search-box{height:40px;border-color:var(--line);border-radius:var(--radius-control);background:#fff}.search-box input{font-size:15px}.icon-button,.primary-button,.secondary-button,.list-load-more{border-radius:var(--radius-control);font-weight:500}.icon-button{border:1px solid var(--line);background:#fff;color:var(--text)}.icon-button:hover{border-color:#bfdbfe;background:var(--blue-soft);color:var(--blue)}.primary-button{background:var(--blue);font-weight:600;box-shadow:0 8px 18px #2563eb2e}.primary-button:hover{background:var(--blue-hover)}.secondary-button{border-color:var(--line);color:var(--blue);font-weight:500}.kiosk-list-controls{margin:0 12px 12px;border-color:var(--line-soft);border-radius:14px;background:#fff}.kiosk-list-controls label,.group-title,.filter-menu strong,.detail-summary-section h3,.report-card h2,.chart-card h2,.data-card h2{font-weight:600}.kiosk-list{gap:8px;padding:12px;max-height:min(620px,calc(100vh - 330px))}.kiosk-row{min-height:70px;height:auto;padding:11px 10px;border:1px solid transparent;border-radius:12px;background:#fff;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease,transform .16s ease}.kiosk-row:hover{border-color:var(--line-strong);background:#fff;box-shadow:0 8px 18px #0f172a0d}.kiosk-row.selected{border-color:#bfdbfe;background:var(--blue-soft);box-shadow:0 8px 22px #2563eb14}.kiosk-row strong,.detail-head h2{font-weight:600}.kiosk-row small,.kiosk-eyebrow{color:var(--muted)}.kiosk-route-chip{border-radius:999px;background:#eef4ff;color:var(--blue);font-weight:500}.inline-temp{min-width:34px;min-height:24px;border-radius:999px;font-weight:500}.status-dot{width:9px;height:9px}.detail-panel{min-height:680px;box-shadow:var(--shadow-panel)}.detail-head{padding:20px;border-bottom-color:var(--line)}.detail-head h2{margin:2px 0 0;font-size:22px;line-height:1.25}.health-badge{min-height:32px;padding:0 12px;border-radius:10px;font-size:13px;font-weight:500}.tabbar{gap:18px;min-height:52px;padding:0 18px;border-bottom-color:var(--line);scrollbar-width:none}.tabbar::-webkit-scrollbar{display:none}.tab{position:relative;min-height:52px;padding:0 2px;border-radius:0;color:var(--muted);font-weight:500}.tab svg{width:16px;height:16px}.tab:hover,.tab.active{background:transparent;color:var(--blue)}.tab.active:after{content:"";position:absolute;right:0;bottom:-1px;left:0;height:2px;border-radius:999px;background:var(--blue)}.content-grid{gap:16px;padding:16px}.status-board{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}.status-tile{min-height:116px;padding:16px;border-radius:var(--radius-card);background:#fff}.status-tile.ok,.status-tile.warn,.status-tile.danger,.status-tile.muted{background:#fff;color:var(--text)}.status-tile.ok{border-color:#bbf7d0}.status-tile.warn{border-color:#fde68a}.status-tile.danger{border-color:#fecaca}.status-tile strong{color:var(--text);font-size:22px;line-height:1.22;font-weight:600}.status-tile span{font-weight:400}.detail-summary-grid{gap:12px}.detail-summary-section{border-color:var(--line);border-radius:var(--radius-card);background:#fff;box-shadow:none}.detail-summary-section h3{padding:9px 12px;border-bottom-color:var(--line);background:var(--panel-soft);color:var(--text);font-size:13px}.detail-summary-row{min-height:34px;border-bottom-color:var(--line-soft)}.detail-summary-row span,.detail-summary-row strong{padding:8px 12px;font-size:13px}.detail-summary-row strong{color:var(--text);font-weight:500}.events-toolbar input,.events-toolbar select,.events-toolbar input[type=date],.sales-filter-row input,.sales-filter-row select,.management-form input,.management-form select,.management-form textarea{min-height:40px;border-color:var(--line);border-radius:var(--radius-control);background:#fff;color:var(--text)}.event-row{min-height:44px;border-radius:10px}.event-row strong,.event-row span{font-weight:500}.event-row.ok{background:#ecfdf5}.event-row.warn{background:#fffbeb}.event-row.danger{background:#fef2f2}.event-row.plain{background:#f8fafc}.event-row.read{border-left-width:1px}.sales-kpi,.sales-table-wrap,.report-table-wrap,.management-table-wrap{border-color:var(--line);border-radius:var(--radius-card);background:#fff}.sales-kpi{background:#fff}.sales-kpi strong,.sales-summary-card strong{color:var(--text);font-weight:600}.sales-table,.report-table,.management-table{border-collapse:separate;border-spacing:0}.sales-table th,.report-table th,.management-table th{background:#f8fafc;color:var(--muted);font-weight:500}.sales-table th,.sales-table td,.report-table th,.report-table td,.management-table th,.management-table td{border-bottom-color:var(--line-soft);font-size:13px}.payment-badge,.inline-badge,.chip,.status-pill{font-weight:500}.payment-badge{min-height:24px}.sale-log-button{font-weight:500}.list-load-more{min-height:42px;border-color:var(--line);background:#fff}@media(max-width:1280px){.workspace{grid-template-columns:minmax(300px,340px) minmax(0,1fr)}.metric-grid{grid-template-columns:repeat(2,minmax(210px,1fr))}}@media(max-width:1024px){.app-shell{grid-template-columns:1fr}.sidebar{position:static;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:16px}.brand{grid-column:1 / -1}.workspace{grid-template-columns:1fr}.kiosk-panel{min-height:auto}.kiosk-list{max-height:none}}@media(max-width:820px){.page{padding:14px 10px}.status-strip{display:grid;grid-template-columns:1fr}.data-source,.worker-health{width:100%;justify-content:flex-start;white-space:normal}.metric-grid{grid-template-columns:1fr}.detail-head{flex-direction:column;padding:16px}.tabbar{display:flex;gap:16px;overflow-x:auto;padding:0 14px}.content-grid{grid-template-columns:1fr;padding:12px}.status-board{grid-template-columns:repeat(2,minmax(0,1fr))}.sales-table-wrap,.report-table-wrap,.management-table-wrap{overflow-x:auto}}@media(max-width:560px){.sidebar{grid-template-columns:repeat(2,minmax(0,1fr))}.topbar h1{font-size:24px}.kiosk-row{grid-template-columns:12px minmax(0,1fr) auto}.status-board{grid-template-columns:1fr}}.detail-panel .content-grid,.detail-panel .sales-layout,.detail-panel .command-layout,.detail-panel .settings-form,.detail-panel .stock-form{gap:16px;padding:16px;background:#f8fafc}.detail-panel .data-card,.detail-panel .logo-upload,.detail-panel .remote-pour-panel{border:1px solid var(--line);border-radius:var(--radius-panel);background:linear-gradient(180deg,#fff,#fff 74%,#fbfdff);box-shadow:var(--shadow-card)}.detail-panel .data-card,.detail-panel .logo-upload{padding:18px}.detail-panel .card-title{min-height:38px;margin-bottom:14px;gap:10px;color:var(--text)}.detail-panel .card-title>svg{box-sizing:content-box;width:18px;height:18px;padding:8px;border-radius:12px;background:var(--blue-soft);color:var(--blue)}.detail-panel .card-title strong{color:var(--text);font-size:16px;font-weight:600;line-height:1.2}.detail-panel .tabbar{display:flex;gap:18px;overflow-x:auto;overflow-y:hidden;scrollbar-width:none}.detail-panel .tabbar::-webkit-scrollbar{display:none}.detail-panel .tab{flex:0 0 auto;min-width:max-content}.detail-panel .tab span{overflow:visible;text-overflow:clip}.detail-panel .kv-list{gap:0}.detail-panel .kv-list div{min-height:42px;padding:9px 0;border-bottom-color:var(--line-soft)}.detail-panel .kv-list span{color:var(--muted);font-size:13px;font-weight:400}.detail-panel .kv-list strong{color:var(--text);font-size:14px;font-weight:600;text-align:right}.detail-panel .events-toolbar,.detail-panel .sales-toolbar{gap:10px;margin-bottom:12px;padding:10px;border:1px solid var(--line);border-radius:var(--radius-card);background:#f8fafc}.detail-panel .events-toolbar input,.detail-panel .events-toolbar select,.detail-panel .sales-toolbar input,.detail-panel .sales-toolbar select,.detail-panel .settings-form input,.detail-panel .settings-form select,.detail-panel .stock-form input,.detail-panel .logo-upload input,.detail-panel .remote-pour-form input{min-height:40px;border-color:var(--line);border-radius:var(--radius-control);background:#fff;color:var(--text);font-weight:400;box-shadow:0 1px #0f172a05}.detail-panel .events-toolbar input:focus,.detail-panel .events-toolbar select:focus,.detail-panel .sales-toolbar input:focus,.detail-panel .sales-toolbar select:focus,.detail-panel .settings-form input:focus,.detail-panel .settings-form select:focus,.detail-panel .stock-form input:focus,.detail-panel .logo-upload input:focus,.detail-panel .remote-pour-form input:focus{border-color:#93c5fd;outline:3px solid rgba(37,99,235,.12)}.detail-panel .form-status,.detail-panel .command-result{min-height:36px;border-radius:999px;font-weight:500}.detail-panel .switch-field{min-height:40px;padding:0 4px;font-weight:500}.detail-panel .switch-field i{width:46px;height:26px}.detail-panel .switch-field i:after{width:18px;height:18px}.detail-panel .switch-field input:checked+i:after{transform:translate(20px)}.detail-panel .event-list{gap:8px}.detail-panel .event-row{grid-template-columns:96px 118px minmax(0,1fr);align-items:center;min-height:46px;padding:10px 12px;border-radius:var(--radius-control);border-left-width:3px}.detail-panel .event-row span,.detail-panel .event-row strong{font-size:13px;font-weight:500}.detail-panel .event-row p{margin:0;color:var(--text);font-size:14px;line-height:1.35}.detail-panel .event-row.is-read{border-left-color:transparent;opacity:.92}.detail-panel .event-row.is-unread{box-shadow:inset 1px 0 #0f172a05}.detail-panel .sales-layout{grid-template-columns:minmax(0,1fr)}.detail-panel .sales-toolbar{grid-template-columns:repeat(auto-fit,minmax(145px,1fr))}.detail-panel .sales-toolbar input[placeholder="ID продажи или карты"]{grid-column:span 2}.detail-panel .sales-side{grid-template-columns:minmax(0,1fr);gap:12px}.detail-panel .sales-kpis{grid-template-columns:repeat(4,minmax(120px,1fr))}.detail-panel .sales-kpi{min-height:92px;border-radius:var(--radius-card);background:#fff;box-shadow:var(--shadow-card)}.detail-panel .sales-kpi span{font-size:13px;font-weight:400}.detail-panel .sales-kpi strong{font-size:20px;font-weight:600}.detail-panel .sales-table-wrap{border-radius:var(--radius-card);background:#fff;box-shadow:0 1px #0f172a08}.detail-panel .sales-table th,.detail-panel .sales-table td{padding:11px 10px;border-bottom-color:var(--line-soft);font-size:13px}.detail-panel .sales-table th{background:#f8fafc;color:var(--muted);font-size:12px;font-weight:500}.detail-panel .sales-table td:first-child strong{font-weight:600}.detail-panel .payment-badge,.detail-panel .inline-badge{font-weight:500}.detail-panel .sale-log-button,.detail-panel .list-load-more{border-radius:var(--radius-control);font-weight:500}.detail-panel .command-grid{grid-template-columns:repeat(auto-fit,minmax(176px,1fr));gap:12px}.detail-panel .command-tile{position:relative;min-height:108px;padding:16px;border-radius:var(--radius-card);background:#fff;box-shadow:var(--shadow-card);transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.detail-panel .command-tile svg{box-sizing:content-box;padding:8px;border-radius:12px;background:var(--blue-soft);color:var(--blue)}.detail-panel .command-tile span{font-weight:600}.detail-panel .command-tile:hover{border-color:#bfdbfe;background:#fff;box-shadow:0 14px 34px #2563eb1a;transform:translateY(-1px)}.detail-panel .remote-pour-panel{padding:18px;border-color:#fecaca;background:linear-gradient(180deg,#fff7f7,#fff)}.detail-panel .tray-unlock-panel{border-color:#fed7aa;background:linear-gradient(180deg,#fff8ed,#fff)}.detail-panel .remote-pour-head strong{color:var(--text);font-size:16px;font-weight:600}.detail-panel .remote-pour-head span{font-weight:400}.detail-panel .remote-pour-head>svg{box-sizing:content-box;width:22px;height:22px;padding:8px;border-radius:12px;background:var(--red-soft)}.detail-panel .tray-unlock-panel .remote-pour-head>svg{background:var(--amber-soft)}.detail-panel .danger-action,.detail-panel .tray-action{min-height:40px;border-radius:var(--radius-control);font-weight:600}.detail-panel .settings-form,.detail-panel .stock-form{align-items:stretch}.detail-panel .settings-form label,.detail-panel .stock-form label,.detail-panel .logo-upload label,.detail-panel .remote-pour-form label{color:var(--muted);font-size:13px;font-weight:400}.detail-panel .settings-control,.detail-panel .stock-form label,.detail-panel .settings-form>label{min-width:0}.detail-panel .settings-control{gap:10px;padding:14px;border:1px solid var(--line);border-radius:var(--radius-card);background:#fff}.detail-panel .settings-control-head{min-height:24px;justify-content:space-between}.detail-panel .settings-control-head strong{background:var(--blue-soft);color:var(--blue);font-weight:500}.detail-panel .mode-button{min-height:40px;border-radius:var(--radius-control);font-weight:500}.detail-panel .switch-row{border-radius:var(--radius-control);background:#f8fafc}.detail-panel .stock-hero{min-height:82px;border-radius:var(--radius-panel);background:linear-gradient(135deg,#eff6ff,#fff);box-shadow:var(--shadow-card)}.detail-panel .stock-hero strong{font-weight:600}.detail-panel .settings-footer,.detail-panel .stock-footer{align-items:center;gap:12px}.detail-panel .form-button{min-height:40px;border-radius:var(--radius-control);font-weight:600}.detail-panel .logo-grid{grid-template-columns:minmax(0,1fr) minmax(260px,320px)}.detail-panel .logo-preview{min-height:220px;border-color:#cbd5e1;border-radius:var(--radius-card);background:linear-gradient(45deg,#f1f5f9 25%,transparent 25%),linear-gradient(-45deg,#f1f5f9 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#f1f5f9 75%),linear-gradient(-45deg,transparent 75%,#f1f5f9 75%),#fff;background-position:0 0,0 8px,8px -8px,-8px 0;background-size:16px 16px}.detail-panel .screenshot-history{grid-column:span 2}.detail-panel .screenshot-history-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.detail-panel .screenshot-history-item{border-radius:var(--radius-card);background:#fff;box-shadow:0 1px #0f172a08}.detail-panel .screenshot-history-item img{border-radius:var(--radius-control);object-fit:contain}@media(max-width:1180px){.detail-panel .sales-layout,.detail-panel .logo-grid{grid-template-columns:1fr}.detail-panel .remote-pour-form,.detail-panel .tray-unlock-form{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-panel .danger-action,.detail-panel .tray-action{grid-column:1 / -1}}@media(max-width:820px){.detail-panel .content-grid,.detail-panel .sales-layout,.detail-panel .command-layout,.detail-panel .settings-form,.detail-panel .stock-form{padding:12px}.detail-panel .events-toolbar,.detail-panel .sales-toolbar{display:grid;grid-template-columns:1fr}.detail-panel .events-toolbar input,.detail-panel .events-toolbar select,.detail-panel .events-toolbar input[type=date],.detail-panel .events-toolbar .secondary-button,.detail-panel .events-toolbar .primary-button,.detail-panel .sales-toolbar input,.detail-panel .sales-toolbar select{width:100%;max-width:none}.detail-panel .sales-toolbar input[placeholder="ID продажи или карты"]{grid-column:auto}.detail-panel .event-row{grid-template-columns:1fr;gap:4px}.detail-panel .tabbar{gap:14px;padding-inline:14px}.detail-panel .tab{min-width:max-content;padding-inline:2px;font-size:14px}.detail-panel .sales-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-panel .settings-form,.detail-panel .stock-form{grid-template-columns:1fr}.detail-panel .screenshot-history{grid-column:auto}}@media(max-width:560px){.detail-panel .sales-kpis,.detail-panel .remote-pour-form,.detail-panel .tray-unlock-form{grid-template-columns:1fr}.detail-panel .settings-footer,.detail-panel .stock-footer{flex-direction:column;align-items:stretch}.detail-panel .settings-footer .form-status,.detail-panel .stock-footer .form-status,.detail-panel .form-button{width:100%;justify-content:center}}.map-center-embed{gap:18px;min-width:0;min-height:760px}.map-center-embed-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;padding:18px;border-radius:var(--radius-panel);background:radial-gradient(circle at 0 0,rgba(37,99,235,.08),transparent 34%),#fffffffa;box-shadow:var(--shadow-soft)}.map-center-embed-head h2{margin:0;color:var(--ink);font-size:24px;line-height:1.1;letter-spacing:0}.map-center-embed-head p{max-width:620px;margin-top:6px;color:var(--muted);font-size:14px;line-height:1.45}.map-center-embed-actions{display:grid;grid-template-columns:repeat(3,minmax(88px,1fr)) auto auto;align-items:stretch;gap:10px}.map-center-embed-stat{position:relative;min-width:0;min-height:58px;padding:10px 12px 10px 36px;border-radius:14px;background:#fff;box-shadow:0 10px 24px #0f172a0f}.map-center-embed-stat:before{content:"";position:absolute;top:18px;left:14px;width:10px;height:10px;border-radius:999px;background:currentColor;box-shadow:0 0 0 5px #0f172a0f}.map-center-embed-stat b{color:var(--ink);font-size:22px;line-height:1}.map-center-embed-stat span{margin-top:4px;color:var(--muted);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.02em}.map-center-embed-actions>.primary-button,.map-center-embed-actions>.secondary-button{min-height:58px;border-radius:14px;white-space:nowrap}.map-center-embed-frame{min-height:760px;border:1px solid var(--line);border-radius:var(--radius-panel);background:#fff;box-shadow:var(--shadow-soft)}.cards-page{gap:18px;min-width:0}.cards-toolbar{min-width:0;padding:16px;border-radius:var(--radius-panel);background:radial-gradient(circle at 100% 0,rgba(16,185,129,.08),transparent 30%),#fffffffa;box-shadow:var(--shadow-soft)}.cards-toolbar .search-box{width:min(560px,100%);min-height:44px;border-radius:14px;background:#fff}.cards-page .data-source{width:fit-content;min-height:34px;padding:0 12px;border-radius:12px;box-shadow:0 8px 20px #05966914}.cards-page .report-metrics{gap:14px}.cards-page .metric,.cards-page .report-card,.card-create-form{border-radius:var(--radius-panel);background:#fffffffa;box-shadow:var(--shadow-soft)}.cards-page .metric{min-height:92px;border-color:#dce8f7}.cards-grid{grid-template-columns:minmax(0,1fr) minmax(360px,420px);gap:18px}.cards-side-forms{gap:18px}.card-create-form{gap:14px;padding:18px}.card-create-form h2{color:var(--ink);font-size:18px;line-height:1.2}.form-title-row{align-items:flex-start;padding-bottom:4px}.card-create-form label{gap:7px;color:#60708a;font-size:12px;font-weight:800}.card-create-form input,.card-create-form select,.card-create-form textarea{min-height:42px;border-color:#d7e2f1;border-radius:12px;background:#fbfdff;color:var(--ink);font-size:14px;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}.card-create-form textarea{min-height:92px}.card-create-form input:focus,.card-create-form select:focus,.card-create-form textarea:focus{border-color:#93b8ff;background:#fff;box-shadow:0 0 0 4px #2563eb1a;outline:0}.card-create-form .primary-button{min-height:46px;border-radius:13px}.card-create-form .checkbox-line{min-height:42px;padding:8px 10px;border:1px solid #d7e2f1;border-radius:12px;background:#fbfdff;color:var(--ink);font-size:13px;font-weight:800}.card-range-grid{gap:12px}.bulk-card-hint,.empty-edit-state{border-radius:14px}.bulk-card-hint{min-height:42px;background:#fbfdff}.empty-edit-state{min-height:118px;background:linear-gradient(135deg,#eff6fff0,#fffffff0)}.cards-page .report-card h2{padding:16px 18px;background:linear-gradient(180deg,#f8fbff,#f2f7ff);color:var(--ink);font-size:17px}.cards-page .report-table th,.cards-page .report-table td{padding:11px 14px;font-size:13px}.cards-page .report-table th{background:#f8fbff;color:#66758e;font-weight:900}.cards-page .report-table tbody tr:hover{background:#f7fbff}.card-number-link{font-weight:950;letter-spacing:0}.card-type-badge,.card-sync-badge,.mini-badge{min-height:26px;border-radius:999px;font-weight:900}@media(max-width:1320px){.map-center-embed-head{grid-template-columns:1fr}.map-center-embed-actions{grid-template-columns:repeat(3,minmax(92px,1fr)) repeat(2,minmax(150px,auto))}.cards-grid{grid-template-columns:1fr}}@media(max-width:820px){.map-center-embed{gap:12px;min-height:720px}.map-center-embed-head,.cards-toolbar,.card-create-form{padding:14px;border-radius:16px}.map-center-embed-head h2{font-size:21px}.map-center-embed-actions{grid-template-columns:repeat(3,minmax(0,1fr))}.map-center-embed-actions>.primary-button,.map-center-embed-actions>.secondary-button{grid-column:span 3}.map-center-embed-stat{min-height:56px;padding:9px 9px 9px 30px}.map-center-embed-stat:before{left:11px}.map-center-embed-stat b{font-size:19px}.map-center-embed-frame{min-height:720px;border-radius:16px}.cards-page{gap:12px}.cards-toolbar{flex-direction:column;align-items:stretch}.cards-toolbar .search-box{width:100%}.card-range-grid{grid-template-columns:1fr}.cards-page .report-table{min-width:760px}}
