@font-face{font-family:Archivo;src:url(/fonts/archivo-600.woff2) format("woff2");font-weight:600;font-display:swap}@font-face{font-family:Archivo;src:url(/fonts/archivo-700.woff2) format("woff2");font-weight:700;font-display:swap}@font-face{font-family:Archivo;src:url(/fonts/archivo-800.woff2) format("woff2");font-weight:800;font-display:swap}@font-face{font-family:Archivo;src:url(/fonts/archivo-900.woff2) format("woff2");font-weight:900;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/inter-400.woff2) format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/inter-500.woff2) format("woff2");font-weight:500;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/inter-600.woff2) format("woff2");font-weight:600;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/inter-700.woff2) format("woff2");font-weight:700;font-display:swap}:root{--ink:#0d1117;--ink-2:#151b24;--ink-3:#1d2530;--white:#ffffff;--mist:#f2f5f8;--mist-2:#e7edf3;--blue:#44aaff;--blue-deep:#1c8de8;--blue-ink:#0a5ea8;--blue-soft:#e8f4ff;--text:#0d1117;--muted:#5a6675;--muted-light:#a9b6c6;--line:#e3e9f0;--green:#16a34a;--green-soft:#e7f7ed;--amber:#d97706;--amber-soft:#fff4e0;--red:#dc2626;--red-soft:#fdecec;--radius:18px;--radius-sm:12px;--shadow:0 1px 2px rgba(13,17,23,.04),0 4px 16px rgba(13,17,23,.05);--shadow-lg:0 20px 60px rgba(13,17,23,.18);--side-w:256px;--display:"Archivo",system-ui,sans-serif;--body:"Inter",system-ui,-apple-system,sans-serif}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--mist);color:var(--text);font-family:var(--body);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select{font:inherit;color:inherit}h1,h2,h3{font-family:var(--display);letter-spacing:-.02em;margin:0}.tnum{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.shell{display:flex;min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:var(--side-w);background:var(--white);border-right:1px solid var(--line);display:flex;flex-direction:column;padding:22px 16px;z-index:20}.sidebar .logo{display:block;padding:2px 10px 26px}.sidebar .logo img{height:46px;width:auto;display:block}.nav{flex-direction:column;gap:2px}.nav,.nav a{display:flex}.nav a{align-items:center;gap:12px;padding:11px 12px;border-radius:12px;color:var(--muted);font-weight:600;font-size:14.5px;transition:background .15s,color .15s}.nav a svg{width:20px;height:20px;flex:none}.nav a:hover{background:var(--mist);color:var(--ink)}.nav a.active{background:var(--blue-soft);color:var(--blue-ink)}.nav-label{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted-light);padding:18px 12px 6px}.side-foot{margin-top:auto;border-top:1px solid var(--line);padding-top:14px}.who{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:12px}.who:hover{background:var(--mist)}.avatar{width:36px;height:36px;border-radius:50%;background:var(--ink);color:var(--white);display:grid;place-items:center;font-family:var(--display);font-weight:800;font-size:14px;flex:none}.who .name{font-weight:600;font-size:14px;line-height:1.2}.who .sub{font-size:12px;color:var(--muted)}.main{flex:1 1;margin-left:var(--side-w);min-width:0}.content{max-width:1240px;margin:0 auto;padding:32px 36px 64px}.tabbar,.topbar{display:none}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:24px;flex-wrap:wrap}.eyebrow{font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--blue-deep);margin-bottom:6px}.page-head h1{font-size:32px;font-weight:800;line-height:1.1}.page-head p{margin:6px 0 0;color:var(--muted)}.card{background:var(--white);border-radius:var(--radius);box-shadow:var(--shadow);padding:22px}.card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.card-head h2{font-size:18px;font-weight:700}.card-head .hint{font-size:13px;color:var(--muted)}.link{color:var(--blue-deep);font-weight:600;font-size:14px}.link:hover{color:var(--blue-ink)}.grid{display:grid;grid-gap:18px;gap:18px}.g-3{grid-template-columns:repeat(3,minmax(0,1fr))}.g-2{grid-template-columns:repeat(2,minmax(0,1fr))}.g-main{grid-template-columns:minmax(0,1.7fr) minmax(0,1fr)}.stack{display:flex;flex-direction:column;gap:18px}.kpi{position:relative;overflow:hidden}.kpi .label{font-size:13px;font-weight:600;color:var(--muted);display:flex;justify-content:space-between;align-items:center}.kpi .value{font-family:var(--display);font-weight:800;font-size:38px;letter-spacing:-.03em;line-height:1.1;margin:10px 0 2px}.kpi .meta{font-size:13px;color:var(--muted)}.kpi.hero{background:var(--ink);color:var(--white)}.kpi.hero .label,.kpi.hero .meta{color:var(--muted-light)}.split{margin-top:16px}.split-bar{display:flex;height:6px;border-radius:6px;overflow:hidden;background:var(--mist-2)}.split-bar span:first-child{background:var(--blue)}.split-bar span:last-child{background:var(--ink-3)}.kpi.hero .split-bar{background:rgba(255,255,255,.12)}.kpi.hero .split-bar span:last-child{background:rgba(255,255,255,.55)}.split-legend{display:flex;justify-content:space-between;font-size:12.5px;margin-top:8px;color:var(--muted)}.kpi.hero .split-legend{color:var(--muted-light)}.split-legend b{color:var(--text);font-weight:600}.kpi.hero .split-legend b{color:var(--white)}.dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px;vertical-align:1px}.chip{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:700;padding:3px 8px;border-radius:999px}.chip.up{background:var(--green-soft);color:var(--green)}.chip.down{background:var(--red-soft);color:var(--red)}.kpi.hero .chip.up{background:rgba(22,163,74,.2);color:#6ee79a}.kpi.hero .chip.down{background:rgba(220,38,38,.2);color:#ff9b9b}.badge{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;padding:4px 10px;border-radius:999px;white-space:nowrap}.badge.online{background:var(--green-soft);color:var(--green)}.badge.offline{background:var(--red-soft);color:var(--red)}.badge.vat7{background:var(--blue-soft);color:var(--blue-ink)}.badge.vat19{background:var(--ink);color:var(--white)}.badge.neutral{background:var(--mist);color:var(--muted)}.badge.warn{background:var(--amber-soft);color:var(--amber)}.badge .pulse{width:7px;height:7px;border-radius:50%;background:currentColor}.badge.online .pulse{box-shadow:0 0 0 0 rgba(22,163,74,.5);animation:pulse 2s infinite}@keyframes pulse{70%{box-shadow:0 0 0 6px rgba(22,163,74,0)}to{box-shadow:0 0 0 0 rgba(22,163,74,0)}}.chart{width:100%;height:220px;display:block}.chart .bar{fill:var(--blue);transition:fill .15s}.chart .bar.weekend{fill:#9fd2ff}.chart .bar.today{fill:var(--ink)}.chart g:hover .bar{fill:var(--blue-ink)}.chart .grid-line{stroke:var(--line);stroke-dasharray:3 4}.chart text{font-size:11px;fill:var(--muted);font-family:var(--body)}.machine-row{display:flex;align-items:center;gap:16px;padding:16px 0;border-top:1px solid var(--line)}.machine-row:first-of-type{border-top:0;padding-top:4px}.machine-icon{width:44px;height:44px;border-radius:12px;background:var(--mist);display:grid;place-items:center;color:var(--ink);flex:none}.machine-icon svg{width:22px;height:22px}.machine-row .info{flex:1 1;min-width:0}.machine-row .title{font-weight:700;font-size:15px}.machine-row .sub{font-size:13px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.machine-row .right{text-align:right;flex:none}.machine-row .amount{font-family:var(--display);font-weight:800;font-size:18px}.fill{height:6px;background:var(--mist-2);overflow:hidden;margin-top:8px;max-width:260px}.fill,.fill span{border-radius:6px}.fill span{display:block;height:100%;background:var(--green)}.fill span.mid{background:var(--amber)}.fill span.low{background:var(--red)}.machine-card{display:block;transition:transform .15s,box-shadow .15s}.machine-card:hover{transform:translateY(-2px);box-shadow:0 10px 30px rgba(13,17,23,.08)}.machine-card .top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.machine-card h3{font-size:19px;font-weight:800}.machine-card .serial{font-size:12.5px;color:var(--muted);margin-top:2px}.machine-card .stats{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:12px;gap:12px;margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}.machine-card .stats .v{font-family:var(--display);font-weight:800;font-size:20px}.machine-card .stats .l{font-size:12px;color:var(--muted)}.rank{display:flex;align-items:center;gap:12px;padding:10px 0}.rank+.rank{border-top:1px solid var(--line)}.rank .pos{width:26px;height:26px;border-radius:8px;background:var(--mist);display:grid;place-items:center;font-size:12px;font-weight:700;color:var(--muted);flex:none}.rank:first-child .pos{background:var(--blue);color:var(--white)}.rank .nm{flex:1 1;font-weight:600;font-size:14px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rank .ct{font-size:12.5px;color:var(--muted)}.rank .gr{font-weight:700;font-size:14px;min-width:76px;text-align:right}.grid-tools{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px}.grid-tools,.tray-legend{display:flex;flex-wrap:wrap}.tray-legend{gap:16px;font-size:12.5px;color:var(--muted)}.merge-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;background:var(--blue-soft);color:var(--blue-ink);border-radius:12px;padding:10px 12px 10px 16px;margin-bottom:14px;font-size:14px;font-weight:500}.machine-frame{background:var(--ink);border-radius:20px;padding:14px;container-type:inline-size}.drawer{display:flex;gap:10px;align-items:stretch}.drawer+.drawer{margin-top:10px;padding-top:10px;border-top:2px solid var(--ink-3)}.drawer-no{width:18px;flex:none;display:grid;place-items:center;color:var(--muted-light);font-size:12px;font-weight:700}.tray-row{flex:1 1;min-width:0;display:grid;grid-gap:6px;gap:6px;grid-template-columns:repeat(10,minmax(0,1fr))}.tray{all:unset;box-sizing:border-box;cursor:pointer;background:var(--white);border-radius:10px;padding:8px 8px 9px;min-height:104px;min-width:0;display:flex;flex-direction:column;position:relative;transition:transform .1s,box-shadow .15s}.tray:hover{box-shadow:0 0 0 2px var(--blue)}.tray:focus-visible{box-shadow:0 0 0 3px var(--blue)}.tray.none{background:var(--ink-2);color:var(--muted-light)}.tray .no{font-size:10.5px;font-weight:700;color:var(--muted)}.tray.none .no{color:var(--muted-light)}.tray .pn{font-size:12px;font-weight:600;line-height:1.25;margin:3px 0 auto;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}.tray .empty-txt{color:var(--muted-light);font-weight:500}.tray .qty{font-family:var(--display);font-weight:800;font-size:19px;line-height:1;margin-top:6px;white-space:nowrap}.tray .qty small{font-family:var(--body);font-size:11px;font-weight:600;color:var(--muted);margin-left:1px}.tray .meter{display:block;height:4px;border-radius:4px;background:var(--mist-2);margin-top:6px;overflow:hidden}.tray .meter span{display:block;height:100%;background:var(--green)}.tray.mid .meter span{background:var(--amber)}.tray.low .meter span,.tray.zero .meter span{background:var(--red)}.tray.zero{box-shadow:inset 0 0 0 2px var(--red)}.tray.zero .qty{color:var(--red)}.tray.low{box-shadow:inset 0 0 0 2px #f5b4b4}.machine-frame.merging .tray.double{opacity:.35;cursor:not-allowed}.tray.selected{box-shadow:0 0 0 3px var(--blue)!important;transform:translateY(-2px)}@container (max-width: 760px){.tray{min-height:58px;padding:5px 4px;align-items:center;justify-content:center;text-align:center;border-radius:7px}.tray .meter,.tray .pn,.tray .qty small{display:none}.tray .no{font-size:9px;position:absolute;top:3px;left:4px}.tray .qty{font-size:15px;margin:8px 0 0}.tray.ok{background:var(--green-soft)}.tray.mid{background:var(--amber-soft)}.tray.low,.tray.zero{background:var(--red-soft)}.tray-row{gap:4px}.drawer{gap:6px}.drawer+.drawer{margin-top:6px;padding-top:6px}}@container (max-width: 420px){.tray{min-height:46px;padding:3px 2px}.tray .no{display:none}.tray .qty{font-size:13px;margin:0}.tray-row{gap:3px}.drawer-no{width:12px;font-size:10px}}.slot-status{display:flex;align-items:baseline;gap:10px;padding:12px 14px;border-radius:12px;margin-top:12px;background:var(--green-soft);color:#166534;font-size:14px}.slot-status.mid{background:var(--amber-soft);color:#92400e}.slot-status.low,.slot-status.zero{background:var(--red-soft);color:#991b1b}.alert-btn{position:relative;z-index:2;border:0;cursor:pointer;height:32px;min-width:32px;padding:0 10px;border-radius:999px;background:var(--red);color:var(--white);font-family:var(--display);font-weight:900;font-size:17px;display:inline-flex;align-items:center;justify-content:center;gap:8px;flex:none}.alert-btn:hover{background:#b91c1c}.alert-btn.lg{height:42px;padding:0 16px 0 14px;font-size:19px}.alert-label{font-family:var(--body);font-weight:600;font-size:14px}.alert-count{position:absolute;top:-5px;right:-5px;background:var(--ink);color:var(--white);font-size:10.5px;font-family:var(--body);font-weight:700;min-width:18px;height:18px;border-radius:9px;display:grid;place-items:center;border:2px solid var(--white)}.alert-btn.lg .alert-count{position:static;border:0;background:rgba(255,255,255,.25)}.alert-item{display:flex;gap:12px;padding:14px;border-radius:14px;background:var(--red-soft)}.alert-ico{width:34px;height:34px;border-radius:10px;background:var(--red);color:var(--white);display:grid;place-items:center;flex:none}.alert-ico svg{width:18px;height:18px}.notice.danger{background:var(--red-soft);color:#991b1b}.has-stretch{position:relative}.stretch:after{content:"";position:absolute;inset:0;z-index:1}.sub-box{border-top:1px solid var(--line);margin-top:14px;padding-top:12px}.sub-head{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}.link-btn{all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:5px;color:var(--blue-deep);font-weight:600;font-size:13.5px;text-transform:none;letter-spacing:0}.link-btn:hover{color:var(--blue-ink)}.assign-row{display:flex;align-items:center;gap:10px;padding:6px 0;font-size:14px}.assign-row+.assign-row{border-top:1px dashed var(--line)}.check-list{border:1.5px solid var(--line);border-radius:12px;overflow:hidden}.check-list label{display:flex;align-items:center;gap:10px;padding:11px 14px;cursor:pointer;font-size:14px}.check-list label+label{border-top:1px solid var(--line)}.check-list input{width:18px;height:18px;accent-color:var(--blue-deep)}.check-list b{font-weight:600}.form-section{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--blue-deep);margin-top:8px;padding-top:14px;border-top:1px solid var(--line)}.table-wrap{overflow-x:auto;margin:0 -22px;padding:0 22px}table{width:100%;border-collapse:collapse;font-size:14px}th{text-align:left;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);padding:10px 12px;white-space:nowrap}td,th{border-bottom:1px solid var(--line)}td{padding:13px 12px;vertical-align:middle}tr:last-child td{border-bottom:0}tbody tr:hover td{background:#fafcfe}td.r,th.r{text-align:right}tfoot td{font-weight:700;border-top:2px solid var(--ink);border-bottom:0}.prod-cell{display:flex;align-items:center;gap:12px}.prod-thumb{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;font-family:var(--display);font-weight:800;font-size:14px;flex:none;background:var(--blue-soft);color:var(--blue-ink)}.prod-thumb.d{background:var(--ink);color:var(--white)}.muted{color:var(--muted)}.small{font-size:13px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;cursor:pointer;background:var(--blue-deep);color:var(--white);font-weight:600;font-size:14.5px;padding:11px 18px;border-radius:12px;transition:background .15s,transform .1s;white-space:nowrap}.btn:hover{background:var(--blue-ink)}.btn:active{transform:scale(.98)}.btn svg{width:18px;height:18px}.btn.dark{background:var(--ink)}.btn.dark:hover{background:var(--ink-3)}.btn.ghost{background:var(--mist);color:var(--ink)}.btn.ghost:hover{background:var(--mist-2)}.btn.danger{background:var(--red-soft);color:var(--red)}.btn.sm{padding:7px 12px;font-size:13px;border-radius:10px}.btn.block{width:100%}.btn[disabled]{opacity:.6;cursor:default}.icon-btn{background:none;border:0;cursor:pointer;padding:8px;border-radius:10px;color:var(--muted);display:inline-grid;place-items:center}.icon-btn:hover{background:var(--mist);color:var(--ink)}.icon-btn svg{width:18px;height:18px}.field{display:flex;flex-direction:column;gap:6px}.field label{font-size:13px;font-weight:600;color:var(--ink)}.field .help{font-size:12px;color:var(--muted)}.input,select.input{width:100%;border:1.5px solid var(--line);background:var(--white);border-radius:12px;padding:11px 14px;font-size:16px;outline:none;transition:border-color .15s,box-shadow .15s;min-height:46px}.input:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(68,170,255,.15)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px;gap:16px}.form-grid .full{grid-column:1/-1}.seg{display:inline-flex;background:var(--mist);border-radius:12px;padding:4px;gap:2px}.seg a,.seg button,.seg label{border:0;background:none;padding:8px 14px;border-radius:9px;font-weight:600;font-size:13.5px;color:var(--muted);cursor:pointer;white-space:nowrap}.seg .on,.seg input:checked+span{background:var(--white);color:var(--ink);box-shadow:var(--shadow)}.seg label{padding:0}.seg label span{display:block;padding:8px 16px;border-radius:9px}.seg input{display:none}.toggle{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border:1.5px solid var(--line);border-radius:12px;cursor:pointer}.toggle input{width:44px;height:26px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--mist-2);border-radius:26px;position:relative;cursor:pointer;transition:background .2s;flex:none}.toggle input:after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:var(--white);box-shadow:0 1px 3px rgba(0,0,0,.2);transition:transform .2s}.toggle input:checked{background:var(--blue)}.toggle input:checked:after{transform:translateX(18px)}.toolbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:16px}.search{position:relative;flex:1 1;min-width:200px;max-width:360px}.search svg{position:absolute;left:13px;top:50%;transform:translateY(-50%);width:18px;height:18px;color:var(--muted)}.search .input{padding-left:40px}.modal-bg{position:fixed;inset:0;background:rgba(13,17,23,.45);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:50;display:grid;place-items:center;padding:16px;animation:fade .15s}.modal{background:var(--white);border-radius:22px;width:100%;max-width:520px;max-height:calc(100vh - 32px);overflow:auto;box-shadow:var(--shadow-lg);padding:26px;animation:rise .2s}.modal h2{font-size:22px;font-weight:800;margin-bottom:4px}.modal .actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}@keyframes fade{0%{opacity:0}}@keyframes rise{0%{transform:translateY(12px);opacity:0}}.notice{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;border-radius:14px;background:var(--blue-soft);color:var(--blue-ink);font-size:14px;margin-bottom:18px}.notice svg{width:20px;height:20px;flex:none;margin-top:1px}.notice.warn{background:var(--amber-soft);color:#92400e}.notice.ok{background:var(--green-soft);color:#166534}.notice b{font-weight:700}.empty{text-align:center;padding:40px 16px;color:var(--muted)}.code-box{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;background:var(--mist);border-radius:10px;padding:10px 12px;font-size:14px;-webkit-user-select:all;-moz-user-select:all;user-select:all}.login{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;background:var(--white)}.login-art{background:var(--ink);color:var(--white);padding:48px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.login-art h2{font-size:52px;font-weight:900;line-height:1.02;letter-spacing:-.035em;position:relative}.login-art h2 span{color:var(--blue)}.login-art p{color:var(--muted-light);max-width:420px;position:relative}.login-art .pill{display:inline-flex;align-items:center;gap:10px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:12px 16px;font-size:14px;position:relative;width:-moz-fit-content;width:fit-content}.login-form{display:grid;place-items:center;padding:32px 16px}.login-form form{width:100%;max-width:380px;display:flex;flex-direction:column;gap:16px}.login-form img{height:64px;width:auto;align-self:flex-start;margin-bottom:12px}.login-form h1{font-size:30px;font-weight:800}.err{background:var(--red-soft);color:var(--red);padding:10px 14px;border-radius:12px;font-size:14px;font-weight:500}@media (max-width:1100px){.g-main{grid-template-columns:1fr}}@media (max-width:900px){.sidebar{display:none}.main{margin-left:0}.content{padding:20px 16px 110px}.topbar{display:flex;align-items:center;justify-content:space-between;position:-webkit-sticky;position:sticky;top:0;z-index:20;background:rgba(255,255,255,.92);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);padding:10px 16px}.topbar img{height:36px;width:auto;display:block}.tabbar{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;position:fixed;left:0;right:0;bottom:0;z-index:30;background:rgba(255,255,255,.96);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--line);padding:6px 4px calc(6px + env(safe-area-inset-bottom))}.tabbar a,.tabbar button{all:unset;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:3px;padding:7px 2px;min-height:44px;box-sizing:border-box;font-size:11px;font-weight:600;color:var(--muted);border-radius:12px}.tabbar a svg,.tabbar button svg{width:23px;height:23px}.tabbar a.active,.tabbar button.active{color:var(--blue-deep)}.tabbar{z-index:45}.modal-bg{align-items:end;padding:0}.modal{max-width:none!important;border-radius:22px 22px 0 0;max-height:92vh;padding:22px 18px calc(20px + env(safe-area-inset-bottom));animation:slideup .22s ease-out}.modal .actions{position:-webkit-sticky;position:sticky;bottom:calc(-20px - env(safe-area-inset-bottom));background:var(--white);margin:20px -18px calc(-20px - env(safe-area-inset-bottom));padding:12px 18px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--line)}.modal .actions .btn{flex:1 1}.btn{min-height:46px}.btn.sm{min-height:38px}.icon-btn{min-width:44px;min-height:44px}.page-head{margin-bottom:18px}.page-head .seg,.page-head>div:last-child:not(:first-child){width:100%}.page-head .seg a{flex:1 1;text-align:center}.toolbar .search{max-width:none;flex-basis:100%}.toolbar>.seg,.toolbar>.seg button{flex:1 1}.cash-amount .value{font-size:30px}.sign{grid-template-columns:1fr;gap:24px}.legal-body h1{font-size:28px}.list-row .badge{display:none}.topbar{padding-top:calc(10px + env(safe-area-inset-top))}.g-3{gap:12px}.g-2,.g-3{grid-template-columns:1fr}.page-head h1{font-size:26px}.kpi .value{font-size:32px}.card{padding:18px}.table-wrap{margin:0 -18px;padding:0 18px}.form-grid,.login{grid-template-columns:1fr}.login-art{display:none}.machine-frame{padding:8px;border-radius:14px}.hide-m{display:none!important}.machine-card .machine-icon{display:none}.g-3.compact{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.g-3.compact .card{padding:12px;border-radius:14px}.g-3.compact .value{font-size:18px;margin:6px 0 0}.g-3.compact .label{font-size:12px}.g-3.compact .meta{display:none}.modal{padding:20px}}@media (min-width:901px){.show-m{display:none!important}}.row-tools{display:flex;gap:10px;align-items:center;justify-content:space-between}@media (max-width:900px){.kpi-pair{grid-template-columns:1.4fr 1fr!important;gap:8px}.kpi-pair .card{padding:14px}.kpi-pair .value{font-size:24px}.kpi-pair .meta{font-size:12px}}.btn.big{padding:15px 20px;font-size:16px;border-radius:14px}.code-input{font-family:var(--display);font-size:24px!important;letter-spacing:.3em;text-align:center}.legal-links a{color:var(--muted);text-decoration:underline}.cash-card{display:flex;flex-direction:column}.cash-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.cash-amount{background:var(--mist);border-radius:14px;padding:16px;margin:16px 0}.cash-amount .value{font-family:var(--display);font-weight:800;font-size:34px;letter-spacing:-.03em;line-height:1.15;margin:4px 0 2px}.money-input{display:flex;align-items:center;border:2px solid var(--line);border-radius:16px;padding:4px 18px;margin-top:16px;transition:border-color .15s}.money-input:focus-within{border-color:var(--blue)}.money-input input{all:unset;flex:1 1;min-width:0;font-size:40px;letter-spacing:-.02em;padding:6px 0}.money-input input,.money-input span{font-family:var(--display);font-weight:800}.money-input span{font-size:28px;color:var(--muted)}.money-input.sm{margin-top:0;padding:0 14px;border-width:1.5px;border-radius:12px;min-height:46px}.money-input.sm input{font-weight:600}.money-input.sm input,.money-input.sm span{font-family:var(--body);font-size:16px}.list{display:flex;flex-direction:column}.list-row{display:flex;align-items:center;gap:12px;padding:12px 0;border-top:1px solid var(--line)}.list-row:first-child{border-top:0}.neg{color:var(--red)}.neg,.pos{font-weight:600}.pos{color:var(--green)}.chips{display:flex;flex-wrap:wrap;gap:6px}.chip-btn{border:1.5px solid var(--line);background:var(--white);border-radius:999px;padding:8px 14px;font-size:14px;font-weight:500;cursor:pointer}.chip-btn.on{border-color:var(--blue-deep);background:var(--blue-soft);color:var(--blue-ink);font-weight:600}.price-line{padding:12px 14px;border-radius:12px;margin-top:8px;font-size:14px}.price-line,.push-device{display:flex;justify-content:space-between;align-items:center;background:var(--mist)}.push-device{gap:10px;flex-wrap:wrap;padding:14px;border-radius:14px}.totp-qr{width:180px;height:180px;border:1.5px solid var(--line);border-radius:12px;padding:8px;background:#fff}.totp-qr svg{width:100%;height:100%;display:block}.link-list{display:flex;flex-direction:column}.link-list a{display:flex;align-items:center;gap:12px;padding:13px 4px;border-top:1px solid var(--line);font-weight:500;font-size:15px}.link-list a:first-child{border-top:0}.link-list a:hover{color:var(--blue-ink)}.link-list svg{width:18px;height:18px;color:var(--muted);flex:none}.legal{min-height:100vh;background:var(--white)}.legal-head{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-bottom:1px solid var(--line);max-width:860px;margin:0 auto}.legal-head img{height:40px;width:auto;display:block}.legal-body{max-width:760px;margin:0 auto;padding:32px 24px 80px;line-height:1.65}.legal-body h1{font-size:34px;font-weight:800;margin-bottom:18px}.legal-body h2{font-size:18px;font-weight:700;margin:28px 0 8px}.doc a,.legal-body a{color:var(--blue-deep)}.doc ul,.legal-body ul{padding-left:20px}.doc li,.legal-body li{margin-bottom:6px}.doc{line-height:1.65;max-width:860px}.doc h2{font-size:22px;font-weight:800;margin-bottom:18px}.doc h3{font-size:15px;font-weight:700;margin:22px 0 6px}.sign{display:grid;grid-template-columns:1fr 1fr;grid-gap:40px;gap:40px;margin-top:48px;font-size:13px;color:var(--muted)}.sign-line{border-bottom:1px solid var(--ink);height:36px;margin-bottom:6px}.sheet-bg{position:fixed;inset:0;z-index:40;background:rgba(13,17,23,.4);animation:fade .15s}.sheet{position:absolute;left:0;right:0;bottom:0;background:var(--white);border-radius:22px 22px 0 0;padding:8px 12px calc(84px + env(safe-area-inset-bottom));animation:slideup .2s ease-out}.sheet-grip{width:40px;height:5px;border-radius:3px;background:var(--mist-2);margin:4px auto 10px}.sheet-item{all:unset;box-sizing:border-box;width:100%;display:flex;align-items:center;gap:14px;padding:15px 12px;border-radius:12px;font-weight:600;font-size:16px;cursor:pointer}.sheet-item>svg:first-child{width:22px;height:22px;color:var(--muted)}.sheet-item>svg:last-child:not(:first-child){margin-left:auto}.sheet-item.active{background:var(--blue-soft);color:var(--blue-ink)}.sheet-item.danger{color:var(--red)}.sheet-item.danger svg{color:var(--red)!important}@keyframes slideup{0%{transform:translateY(100%)}}@media print{.no-print,.sidebar,.tabbar,.topbar{display:none!important}body{background:#fff}.main{margin:0}.content{padding:0;max-width:none}.card{box-shadow:none;padding:0}}