:root{--acc:#E6DB00;--acc-soft:#FBF8C8;--ink:#121212;--ink-2:#1E2124;--gray:#A3A5A8;--muted:#7B8085;--bg:#F3F4F5;--surf:#fff;--line:#E4E6E8;--ok:#2F8F53;--bad:#C0453C;--r:12px}*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg);color:#333;font-size:14px;line-height:1.5}h1,h2,h3{color:var(--ink);line-height:1.2}.muted{color:var(--muted)}.strong{font-weight:700;color:var(--ink)}.center{display:grid;place-items:center;height:100vh}.sp{flex:1}.ball{width:22px;height:22px;border-radius:50%;background:var(--acc);flex-shrink:0;background-image:radial-gradient(circle at 50% -20%,transparent 60%,rgba(0,0,0,.18) 61%),radial-gradient(circle at 50% 120%,transparent 60%,rgba(0,0,0,.18) 61%)}.login-wrap{min-height:100vh;display:grid;place-items:center;background:var(--ink);padding:24px}.login-card{width:380px;max-width:100%;background:var(--surf);border-radius:18px;padding:34px;box-shadow:0 18px 50px #00000047;animation:popIn .35s cubic-bezier(.22,.7,.3,1)}.login-brand{display:flex;align-items:center;justify-content:center;margin-bottom:20px}.login-logo{height:96px;width:auto}.login-card h1{font-size:22px;margin-bottom:4px}.field{display:block;margin-top:16px}.field span{display:block;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:6px}.field input{width:100%;padding:12px 13px;border:1.5px solid var(--line);border-radius:10px;font-size:14px;transition:border-color .16s,box-shadow .16s}.field input:focus{outline:none;border-color:var(--acc);box-shadow:0 0 0 3px var(--acc-soft)}.btn-primary{width:100%;margin-top:22px;padding:13px;background:var(--acc);color:var(--ink);font-weight:700;border-radius:10px;font-size:15px;cursor:pointer;transition:background-color .16s,opacity .16s}.btn-primary:hover{background:#d4ca00}.btn-primary:active{background:#c3ba00}.hint{margin-top:14px;font-size:12px;color:var(--muted);text-align:center}.alert-bad{margin-top:16px;padding:11px 13px;background:#faeceb;color:var(--bad);border-radius:10px;font-size:13px}.shell{display:flex;height:100vh}.side{width:230px;flex-shrink:0;background:var(--ink);display:flex;flex-direction:column;overflow:hidden;transition:width .24s cubic-bezier(.4,0,.2,1)}.side-brand{display:flex;align-items:center;justify-content:center;padding:20px 16px 14px;min-height:78px}.side-logo{height:56px;width:auto;transition:opacity .18s}.side-nav{flex:1;overflow-y:auto;overflow-x:hidden;padding:6px 12px}.nav-item{display:flex;align-items:center;gap:11px;padding:10px 12px;border-radius:9px;color:#c3c6c9;text-decoration:none;font-size:14px;font-weight:500;margin-bottom:2px;white-space:nowrap;transition:background-color .15s,color .15s}.nav-item:hover{background:#26292d;color:#fff}.nav-item.on{background:var(--acc);color:var(--ink);font-weight:700}.nav-icon{width:19px;height:19px;flex-shrink:0}.nav-label{flex:1;transition:opacity .15s}.nav-item .soon{font-size:10px;color:#6e7378;font-weight:600}.nav-item.on .soon{color:#00000080}.side-backdrop{display:none}.shell.collapsed .side{width:66px}.shell.collapsed .side-logo{height:34px}.shell.collapsed .nav-item{justify-content:center;padding:10px 0}.shell.collapsed .nav-label,.shell.collapsed .nav-item .soon{opacity:0;width:0;overflow:hidden;pointer-events:none}.main{flex:1;display:flex;flex-direction:column;min-width:0}.topbar{height:60px;background:var(--surf);border-bottom:1px solid var(--line);display:flex;align-items:center;gap:8px;padding:0 20px}.burger{width:38px;height:38px;border-radius:9px;display:grid;place-items:center;color:#555;cursor:pointer;background:none;flex-shrink:0;transition:background-color .15s}.burger:hover{background:var(--bg);color:var(--ink)}.burger svg{width:20px;height:20px}.me{display:flex;align-items:center;gap:11px}.avatar{width:34px;height:34px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;font-weight:700;font-size:12px}.me-txt b{display:block;font-size:13px;color:var(--ink)}.me-txt s{font-size:11px;color:var(--muted);text-decoration:none}.btn-ghost{margin-left:8px;padding:7px 13px;border:1px solid var(--line);border-radius:8px;font-size:13px;color:#555;cursor:pointer;background:#fff;transition:background-color .15s,border-color .15s}.btn-ghost:hover{background:var(--bg);border-color:var(--gray)}.view{flex:1;overflow-y:auto;padding:24px}.view-anim{animation:fadeUp .28s cubic-bezier(.22,.7,.3,1)}.page-head{display:flex;align-items:center;margin-bottom:18px}.page-head h2{font-size:20px}.card{background:var(--surf);border:1px solid var(--line);border-radius:var(--r);overflow:hidden}.card.pad{padding:20px}.table{width:100%;border-collapse:collapse}.table th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:700;padding:11px 14px;border-bottom:1px solid var(--line);background:#fbfbfc}.table td{padding:11px 14px;border-bottom:1px solid #F0F1F2;font-size:13.5px}.table tr:last-child td{border-bottom:none}.num{text-align:right;font-variant-numeric:tabular-nums}.tag{display:inline-block;font-size:11px;font-weight:700;padding:2px 8px;border-radius:12px;background:#f1f2f3;color:#555}.tag-y{background:var(--acc-soft);color:#8a8422}.tag-ok{background:#eaf4ed;color:#2f8f53}.tag-bad{background:#faeceb;color:#c0453c}.low{color:var(--bad);font-weight:700}.mono{font-variant-numeric:tabular-nums}.grid-2{display:grid;grid-template-columns:1.4fr 1fr;gap:16px;align-items:start}.card-h{padding:14px 16px;border-bottom:1px solid var(--line)}.card-h h3{font-size:15px}.kv{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #F0F1F2;font-size:14px}.kv:last-child{border:none}.kv span{color:var(--muted)}.kv b{color:var(--ink)}.kv.big{padding:12px 0;border-top:2px solid var(--line);margin-top:4px}.kv.big b{font-size:18px}.hint{font-size:12px;color:var(--muted);margin-top:6px}.alert-ok{padding:11px 13px;background:#eaf4ed;color:#2f8f53;border-radius:10px;font-size:13px}.link-btn{margin-left:auto;font-size:12px;color:var(--muted);font-weight:700;cursor:pointer;background:none}.link-btn:hover{color:var(--bad)}.btn-xs{padding:5px 10px;font-size:12px}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px}.kpi{background:var(--surf);border:1px solid var(--line);border-radius:var(--r);padding:16px}.kpi s{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);text-decoration:none;margin-bottom:8px;font-weight:700}.kpi b{font-size:24px;color:var(--ink);letter-spacing:-.02em}.pos{display:grid;grid-template-columns:1fr 360px;gap:16px;align-items:start}.pos-cats{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:14px}.chip{padding:8px 14px;border-radius:20px;border:1.5px solid var(--line);background:#fff;font-size:13px;font-weight:700;color:#555;cursor:pointer;display:flex;align-items:center;gap:6px;transition:background-color .15s,border-color .15s,color .15s}.chip:hover{border-color:var(--gray)}.chip.on{background:var(--ink);border-color:var(--ink);color:#fff}.mot-dot{width:6px;height:6px;border-radius:50%;background:var(--acc)}.pos-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}.tile{background:#fff;border:1.5px solid var(--line);border-radius:11px;padding:13px;text-align:left;cursor:pointer;min-height:92px;display:flex;flex-direction:column;transition:border-color .15s,background-color .15s}.tile:hover{border-color:var(--acc);background:#fefef3}.tile:active{background:var(--acc-soft)}.tile.out{opacity:.5;cursor:default}.tile-name{font-weight:700;color:var(--ink);font-size:13px;line-height:1.3}.tile-price{font-size:16px;font-weight:700;color:var(--ink);margin-top:auto}.tile-stock{font-size:11px;color:var(--muted);margin-top:3px}.pos-cart{position:sticky;top:16px;display:flex;flex-direction:column;max-height:calc(100vh - 150px)}.cart-items{flex:1;overflow-y:auto;padding:8px}.cart-row{display:flex;align-items:center;gap:10px;padding:8px}.cart-info{flex:1;min-width:0}.cart-info b{display:block;font-size:13px;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cart-info s{font-size:11px;color:var(--muted);text-decoration:none}.qty{display:flex;align-items:center;gap:2px;background:#f2f3f4;border-radius:7px;padding:2px}.qty button{width:24px;height:24px;border-radius:5px;font-weight:700;color:#555;cursor:pointer;background:none;font-size:15px}.qty button:hover{background:#fff}.qty span{width:24px;text-align:center;font-weight:700;font-size:13px}.cart-sum{width:70px;text-align:right;font-weight:700;font-size:13px;font-variant-numeric:tabular-nums}.cart-foot{border-top:1px solid var(--line);padding:14px 16px}.cart-total{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:12px}.cart-total span{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:700}.cart-total b{font-size:26px;color:var(--ink);letter-spacing:-.03em}.pays{display:grid;grid-template-columns:1fr 1fr;gap:8px}.pay{padding:12px;border:1.5px solid var(--line);border-radius:10px;font-weight:700;font-size:13px;color:#555;cursor:pointer;background:#fff;transition:background-color .15s,border-color .15s,color .15s}.pay:hover{border-color:var(--gray)}.pay.on{border-color:var(--acc);background:var(--acc-soft);color:var(--ink)}.btn-primary:disabled{opacity:.55;cursor:default}.toolbar{display:flex;align-items:center;gap:10px;margin-bottom:14px;flex-wrap:wrap}.btn-inline{display:inline-flex;align-items:center;width:auto;margin:0;padding:9px 16px;font-size:14px}.sched-wrap{overflow:hidden}.sched-scroll{overflow:auto;max-height:calc(100vh - 250px)}.sched{border-collapse:separate;border-spacing:0;min-width:760px;width:100%}.sched th{position:sticky;top:0;z-index:3;background:#fbfbfc;border-bottom:1px solid var(--line);padding:9px 6px;text-align:center}.sched th.tcol{left:0;z-index:4;width:58px;min-width:58px}.sched th .cn{font-size:12.5px;font-weight:700;color:var(--ink);text-transform:none;letter-spacing:0}.sched th .ct{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-top:2px}.sched td.tcell{position:sticky;left:0;z-index:2;background:#fff;width:58px;min-width:58px;text-align:center;font-size:11.5px;font-weight:700;color:var(--muted);border-right:1px solid var(--line);border-bottom:1px solid #F0F1F2;height:44px}.sched td.slot{height:44px;padding:2px;border-bottom:1px solid #F0F1F2;border-right:1px solid #F0F1F2;cursor:pointer;position:relative}.sched td.slot.free:hover{background:var(--acc-soft)}.sched td.slot.free:hover:after{content:"+";position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:var(--gray);font-size:16px;font-weight:700}.bk{height:100%;border-radius:6px;padding:4px 7px;font-size:11px;line-height:1.25;overflow:hidden;border-left:3px solid;display:flex;flex-direction:column;justify-content:center}.bk-name{font-weight:700;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bk-meta{font-size:10px;color:#444;opacity:.85;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bk-paid{background:#eaf4ed;border-color:#2f8f53}.bk-wait{background:var(--acc-soft);border-color:#e6db00}.bk-train{background:#eef0fa;border-color:#7a86c4}.bk-block{background:#f1f2f3;border-color:#a3a5a8}.legend{display:flex;gap:16px;padding:11px 16px;border-top:1px solid var(--line);flex-wrap:wrap;background:#fbfbfc}.legend span{display:flex;align-items:center;gap:6px;font-size:11.5px;color:#444}.legend i{width:11px;height:11px;border-radius:3px;display:block}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#12121280;z-index:100;display:flex;align-items:center;justify-content:center;padding:24px;animation:fadeIn .18s ease}.modal{background:#fff;border-radius:16px;width:100%;max-width:520px;max-height:88vh;display:flex;flex-direction:column;box-shadow:0 24px 60px #00000047;animation:popIn .24s cubic-bezier(.22,.7,.3,1)}.modal-h{padding:18px 22px;border-bottom:1px solid var(--line);display:flex;align-items:flex-start;gap:12px}.modal-h h3{font-size:17px}.modal-h .muted{font-size:12.5px;margin-top:2px}.modal-x{margin-left:auto;width:30px;height:30px;border-radius:8px;color:var(--muted);cursor:pointer;background:none;font-size:15px}.modal-x:hover{background:#f2f3f4;color:var(--ink)}.modal-b{padding:22px;overflow-y:auto}.modal-f{padding:15px 22px;border-top:1px solid var(--line);display:flex;gap:9px;align-items:center;background:#fbfbfc;border-radius:0 0 16px 16px}.row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field select{width:100%;padding:11px 12px;border:1.5px solid var(--line);border-radius:10px;font-size:14px;background:#fff;cursor:pointer}.field select:focus{outline:none;border-color:var(--acc)}.quote-box{margin-top:16px;padding:14px;background:var(--acc-soft);border-radius:10px}.quote-box b{font-size:20px}.pending-row{display:flex;align-items:center;gap:10px;padding:11px;border:1px solid var(--line);border-radius:10px;margin-bottom:8px}.pending-row div{flex:1}.pending-row b{display:block;font-size:14px;color:var(--ink)}.pending-row s{font-size:12px;color:var(--muted);text-decoration:none}.tabs{display:flex;gap:3px;background:#edeeef;padding:3px;border-radius:10px;width:fit-content;margin-bottom:16px;flex-wrap:wrap}.tab{padding:8px 15px;border-radius:7px;font-size:13px;font-weight:700;color:#555;background:none;cursor:pointer;transition:background-color .15s,color .15s}.tab:hover{color:var(--ink)}.tab.on{background:#fff;color:var(--ink);box-shadow:0 1px 2px #00000014}.bars{display:flex;align-items:flex-end;gap:8px;height:150px;padding-top:8px}.bar-col{flex:1;display:flex;flex-direction:column;align-items:center;gap:7px;height:100%;justify-content:flex-end}.bar{width:100%;max-width:34px;border-radius:5px 5px 0 0;background:var(--acc);min-height:2px}.bar-col span{font-size:10.5px;color:var(--muted);font-weight:700;white-space:nowrap}.bar-track{height:7px;background:#edeeef;border-radius:5px;overflow:hidden}.bar-track i{display:block;height:100%;background:var(--acc);border-radius:5px;transition:width .4s}.bar-track.green i{background:#2f8f53}.bar-track.red i{background:#c0453c}.tiny{font-size:11.5px}.sec-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:18px 0 10px}.mini-card{padding:12px;background:#fafafa;border:1px solid var(--line);border-radius:10px;margin-bottom:8px}.cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}.clickable{cursor:pointer;transition:background-color .13s}.clickable:hover{background:#fafafa}.card{transition:border-color .15s,box-shadow .15s}.avatar.y{background:var(--acc);color:var(--ink)}.search-inp{padding:9px 13px;border:1.5px solid var(--line);border-radius:10px;font-size:14px;width:280px;max-width:100%}.search-inp:focus{outline:none;border-color:var(--acc)}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes popIn{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){*,.view-anim,.modal,.overlay,.login-card,.side{animation:none!important;transition:none!important}}@media (max-width:900px){.grid-2,.pos{grid-template-columns:1fr}.pos-cart{position:static;max-height:none}.row2,.cards-grid{grid-template-columns:1fr}.side{position:fixed;left:0;top:0;bottom:0;z-index:60;width:230px;transform:translate(0);transition:transform .24s cubic-bezier(.4,0,.2,1)}.shell.collapsed .side{width:230px;transform:translate(-100%)}.shell.collapsed .side-logo{height:56px}.shell.collapsed .nav-item{justify-content:flex-start;padding:10px 12px}.shell.collapsed .nav-label,.shell.collapsed .nav-item .soon{opacity:1;width:auto;overflow:visible}.side-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:55;background:#0006;opacity:1;transition:opacity .24s}.shell.collapsed .side-backdrop{opacity:0;pointer-events:none}}
