:root{--brand:#714B67;--bar:var(--brand);--brand-soft:var(--brand-soft-l, #f0e9ef);--brand-text:var(--brand);--pay:#017E84;--pay-hover:#016a70;--bg:#f4f3f6;--surface:#ffffff;--surface2:#f7f6f9;--border:#e2e0e6;--text:#1f1d24;--muted:#6c6875;--danger:#b3261e;--danger-bg:#fdecea;--warn:#9a5800;--warn-bg:#fff3dc;--ok:#1d7a4c;--ok-bg:#e4f4ea;--info:#015f64;--info-bg:#e1f3f4;--sel:var(--brand-soft-l, #f0e9ef);--shadow:0 1px 3px rgba(20,10,30,.08);--radius:10px;color-scheme:light}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--brand-soft:var(--brand-soft-d, #3a2b37);--brand-text:var(--brand-text-d, #b9a5b3);--bg:#151419;--surface:#201e25;--surface2:#29272f;--border:#3a3741;--text:#ecebf0;--muted:#a6a2b0;--danger:#ff8a80;--danger-bg:#3d1f1d;--warn:#f2b45c;--warn-bg:#3a2c13;--ok:#6fd6a0;--ok-bg:#163021;--info:#7fd6db;--info-bg:#123335;--sel:var(--brand-soft-d, #3a2b37);--shadow:0 1px 3px rgba(0,0,0,.4);color-scheme:dark}}:root[data-theme=dark]{--brand-soft:var(--brand-soft-d, #3a2b37);--brand-text:var(--brand-text-d, #b9a5b3);--bg:#151419;--surface:#201e25;--surface2:#29272f;--border:#3a3741;--text:#ecebf0;--muted:#a6a2b0;--danger:#ff8a80;--danger-bg:#3d1f1d;--warn:#f2b45c;--warn-bg:#3a2c13;--ok:#6fd6a0;--ok-bg:#163021;--info:#7fd6db;--info-bg:#123335;--sel:var(--brand-soft-d, #3a2b37);--shadow:0 1px 3px rgba(0,0,0,.4);color-scheme:dark}*{box-sizing:border-box}html,body{margin:0}body{font:15px/1.45 system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background:var(--bg);color:var(--text);min-height:100vh;overflow-x:hidden}button,input,select{font:inherit;color:inherit}button{cursor:pointer}h2{font-size:19px;margin:0}h3{font-size:16px;margin:22px 0 10px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.muted{color:var(--muted)}.small{font-size:13px}.topbar{background:var(--bar);transition:background-color .2s;color:#fff;display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;padding:8px 16px;position:sticky;top:0;z-index:20;box-shadow:0 2px 6px #00000026}.brand{font-weight:700;font-size:17px;white-space:nowrap;margin-right:6px;max-width:240px;overflow:hidden;text-overflow:ellipsis}.login-switch{margin-top:12px;text-align:center}.login-card.signup-card{max-width:680px}.login-card.suspended-card{max-width:560px}.suspended-card h2{font-size:17px;margin:18px 0 8px}.appeals .list li{align-items:flex-start}.appeal-msg{white-space:pre-wrap;margin-top:4px;color:var(--muted)}.appeal-response{margin-top:6px;padding:8px 10px;border-radius:8px;background:var(--info-bg);color:var(--info)}.appeal-status{font-weight:700}.appeal-status.resolved{color:var(--ok, #0f7b6c)}.appeal-status.rejected{color:var(--danger, #b42318)}.signup-sec{border:1px solid var(--border);border-radius:var(--radius);padding:2px 16px 6px;margin:16px 0;min-width:0}.signup-sec>legend{font-weight:700;font-size:15px;padding:0 6px}.signup-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px}.signup-card .field>.input,.signup-card .field>select{width:100%}.signup-card .phone-field legend{font-weight:600;font-size:14px}.pin-input{letter-spacing:6px;font-weight:700;font-size:18px}@media(max-width:640px){.signup-grid{grid-template-columns:minmax(0,1fr)}.signup-sec{padding:2px 12px 6px}}.tabs{display:flex;gap:2px;flex-wrap:wrap}.tab{background:transparent;border:0;color:#fff;opacity:.82;padding:8px 12px;border-radius:8px;font-weight:600;white-space:nowrap}.tab:hover{opacity:1;background:#ffffff1a}.tab[aria-current=page]{background:#fff3;opacity:1}.count{display:inline-block;background:#fff;color:var(--bar);border-radius:999px;padding:0 7px;font-size:12px;margin-left:4px;line-height:18px}.spacer{flex:1}.top-ctrl{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.top-ctrl select,.top-ctrl .tbtn{background:#ffffff24;border:1px solid rgba(255,255,255,.28);color:#fff;border-radius:8px;padding:6px 10px;max-width:220px}.top-ctrl select option{color:#1f1d24;background:#fff}.tbtn:hover{background:#ffffff3d}.top-ctrl .sync-chip{white-space:nowrap;font-size:13px}.top-ctrl .sync-chip.warn{background:#b7791f;border-color:#b7791f}.top-ctrl .sync-chip.bad{background:#c53030;border-color:#c53030}.offline-sales{border:1px solid var(--border);border-radius:var(--radius);padding:8px 12px;margin:8px 0;background:var(--surface)}.offline-sales .os-head{display:flex;justify-content:space-between;gap:12px;align-items:baseline}.offline-sales .os-head b{font-size:1.15em}.offline-sales .os-split{display:flex;gap:14px;flex-wrap:wrap;margin-top:4px}.offline-banner .offline-sales{margin:0;flex:1 1 260px}.bell{position:relative}.bell .badge{position:absolute;top:-7px;right:-7px;background:#e5484d;color:#fff;border-radius:999px;font-size:11px;min-width:19px;height:19px;line-height:19px;text-align:center;padding:0 5px;font-weight:700}.admin-badge{background:#fff;color:var(--bar);font-weight:700;border-radius:999px;padding:3px 10px;font-size:13px;white-space:nowrap}.user-menu{position:relative;min-width:0}.user-menu>.admin-badge{border:0;cursor:pointer;font:inherit;font-size:13px;font-weight:700;max-width:100%;overflow:hidden;text-overflow:ellipsis}.user-menu>.admin-badge:focus-visible{outline:2px solid #fff;outline-offset:2px}.user-menu .chev{display:inline-block;transition:transform .15s}.user-menu>[aria-expanded=true] .chev{transform:rotate(180deg)}.user-menu .menu{position:absolute;left:0;top:calc(100% + 6px);min-width:200px;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 6px 18px #140a1e2e;padding:4px;z-index:30}.user-menu .menu button,.user-menu .menu .menu-link{display:block;text-decoration:none;box-sizing:border-box;width:100%;text-align:left;background:none;border:0;border-radius:8px;padding:9px 12px;color:inherit;font:inherit;cursor:pointer}.user-menu .menu button:hover,.user-menu .menu button:focus-visible,.user-menu .menu .menu-link:hover,.user-menu .menu .menu-link:focus-visible{background:var(--surface2);outline:none}body.auth .topbar{display:none}.login-wrap{min-height:calc(100vh - 32px);min-height:calc(100dvh - 32px);display:flex;align-items:center;justify-content:center;padding:16px 0}.login-card{width:100%;max-width:420px;padding:28px 24px}.login-card h1{font-size:22px;margin:6px 0 4px}.login-brand{display:inline-flex;align-items:center;gap:10px}.login-brand .logo-mark{border-radius:10px;box-shadow:0 2px 8px #3b223640}.brand-name{font-size:24px;font-weight:800;letter-spacing:-.02em;color:var(--text)}.brand-tag{font-size:12px;font-weight:700;letter-spacing:.12em;color:#fff;background:var(--brand);border-radius:6px;padding:3px 7px}.logo-mark{display:inline-block;vertical-align:middle;flex:none}.brand .logo-mark{border-radius:7px;margin-right:6px;vertical-align:-7px}.login-btn{padding:14px;font-size:17px;margin-top:6px}.demo-accounts{margin-top:16px}.demo-accounts summary{cursor:pointer;font-weight:600;color:var(--pay)}.demo-accounts .list{max-height:240px}.login-tools{display:flex;gap:8px;justify-content:flex-end;margin-top:14px}.login-tools .input.sm{width:auto}.login-card .phone-row select{flex:1 1 180px}.login-card .phone-row input{flex:1 1 120px}.banner{display:flex;gap:12px;align-items:center;justify-content:space-between;background:var(--info-bg);color:var(--info);padding:10px 16px;border-bottom:1px solid var(--border);font-size:14px}.banner .btn{flex:none}main{padding:16px;max-width:1440px;margin:0 auto}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.pad{padding:16px}.btn{border:1px solid var(--border);background:var(--surface2);border-radius:8px;padding:9px 13px;font-weight:600;line-height:1.2}.btn:hover:not(:disabled){border-color:var(--muted)}.btn.primary{background:var(--brand);color:#fff;border-color:var(--brand)}.btn.pay{background:var(--pay);color:#fff;border-color:var(--pay)}.btn.pay:hover:not(:disabled){background:var(--pay-hover)}.btn.danger{color:var(--danger)}.btn.danger-fill{background:var(--danger);color:#fff;border-color:var(--danger)}.del-list{margin:6px 0 10px;padding-left:20px}.del-list li{margin:2px 0}.del-cashiers{border:1px solid var(--border);border-radius:10px;padding:8px 12px}.del-cashiers .inline{margin:6px 0;font-weight:400;flex-wrap:wrap}.btn.sm{padding:6px 10px;font-size:13px}.btn:disabled{opacity:.45;cursor:not-allowed}.input{border:1px solid var(--border);background:var(--surface);border-radius:8px;padding:9px 11px;min-width:0;max-width:100%}.input:focus,.btn:focus-visible,.card:focus-visible,.line:focus-visible{outline:2px solid var(--pay);outline-offset:1px}.input.sm{padding:6px 8px;width:92px}.w100{width:100%}.err{color:var(--danger);background:var(--danger-bg);border-radius:8px;padding:8px 10px;margin:10px 0 0;font-weight:600}.empty{color:var(--muted);padding:18px 14px;text-align:center;list-style:none}.pill{display:inline-block;border-radius:999px;padding:2px 9px;font-size:12px;font-weight:700;white-space:nowrap}.pill.open{background:var(--info-bg);color:var(--info)}.pill.late{background:var(--danger-bg);color:var(--danger)}.pill.paid{background:var(--ok-bg);color:var(--ok)}.pill.low{background:var(--warn-bg);color:var(--warn)}.pill.out{background:var(--danger-bg);color:var(--danger)}.pos{display:grid;grid-template-columns:minmax(300px,390px) minmax(0,1fr);gap:16px;align-items:start}.order{display:flex;flex-direction:column;position:sticky;top:calc(72px + env(safe-area-inset-top));max-height:calc(100vh - 88px - env(safe-area-inset-top));overflow:hidden}.lines{list-style:none;margin:0;padding:0;overflow:auto;flex:1 1 auto;min-height:110px}.line{padding:10px 14px;border-bottom:1px solid var(--border);cursor:pointer;display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.line:hover{background:var(--surface2)}.line.sel{background:var(--sel);box-shadow:inset 3px 0 0 var(--brand)}.lname{font-weight:600}.meta{color:var(--muted);font-size:13px}.ltotal{font-weight:700;white-space:nowrap}.total{display:flex;justify-content:space-between;padding:12px 14px;font-size:21px;font-weight:700;border-top:1px solid var(--border)}.order-cust{padding:0 14px 8px;font-size:13px;color:var(--muted)}.order-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:0 14px 10px}.order-actions .btn{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.paybtn{margin:0 14px 10px;padding:15px;font-size:18px}.pay-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:8px;margin:0 14px 10px}.pay-row .paybtn{margin:0}.order-bound{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:8px 14px;background:var(--info-bg);color:var(--info);border-bottom:1px solid var(--border)}.orders-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}.order-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:12px 14px;display:flex;flex-direction:column;gap:6px}.order-card header{display:flex;justify-content:space-between;align-items:baseline;gap:8px;font-size:16px}.order-lines{list-style:none;margin:4px 0;padding:0;font-size:14px}.order-lines li{display:flex;justify-content:space-between;gap:10px;padding:2px 0}.order-total{display:flex;justify-content:space-between;align-items:baseline;border-top:1px dashed var(--border);padding-top:6px}.order-total b{font-size:19px}.order-actions-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:auto}.ob-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.req{color:var(--danger,#c0392b);font-weight:700}.linkbtn{background:none;border:0;padding:0;color:var(--brand-text);font:inherit;font-weight:600;cursor:pointer;text-decoration:underline dotted}.numpad{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;padding:0 14px 14px}.numpad button{padding:11px 0;border:1px solid var(--border);background:var(--surface2);border-radius:8px;font-size:17px;font-weight:600}.numpad button:hover{border-color:var(--muted)}.numpad .mode{font-size:13px}.numpad .mode.on{background:var(--brand);color:#fff;border-color:var(--brand)}.catalog{padding:14px;min-width:0}.chips{display:flex;gap:6px;overflow-x:auto;padding-bottom:4px;scrollbar-width:thin}.chip{border:1px solid var(--border);background:var(--surface2);border-radius:999px;padding:6px 14px;white-space:nowrap;font-weight:600}.chip.on{background:var(--brand);color:#fff;border-color:var(--brand)}.cat-row{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:12px 0}.cat-row .search{flex:1 1 200px}.shop-label{font-weight:700;white-space:nowrap}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}.card{border:1px solid var(--border);background:var(--surface);border-radius:var(--radius);padding:12px;text-align:left;display:flex;flex-direction:column;gap:3px;min-height:146px;transition:border-color .12s,transform .06s}.card:hover{border-color:var(--brand)}.card:active{transform:scale(.98)}.card .card-vis.vis-emoji{font-size:34px;line-height:1.2}.card .card-vis.vis-img{width:100%;height:92px;object-fit:cover;border-radius:8px;background:var(--surface2);display:block}.inline-vis.vis-img{width:22px;height:22px;object-fit:cover;border-radius:4px;vertical-align:middle}.art-cell{display:inline-flex;align-items:center;gap:10px}.vis-btn{position:relative;border:1px solid var(--border);background:var(--surface2);border-radius:8px;padding:0;width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;overflow:hidden;flex:none}.vis-btn:hover{border-color:var(--brand)}.mini-vis.vis-img{width:100%;height:100%;object-fit:cover}.mini-vis.vis-emoji{font-size:22px}.vis-edit{position:absolute;right:-1px;bottom:-1px;font-size:10px;background:var(--surface);border-radius:4px 0 0;line-height:1;padding:1px}.vis-field{border:0;padding:0}.vis-field legend{padding:0;margin-bottom:6px}.vis-toggle{display:flex;gap:6px;margin-bottom:8px}.img-picker{display:flex;gap:12px;align-items:center;border:1px dashed var(--border);border-radius:10px;padding:10px;font-weight:400}.img-picker[hidden]{display:none}.img-picker.drag{border-color:var(--pay);background:var(--info-bg)}.img-preview{width:96px;height:96px;flex:none;border-radius:8px;background:var(--surface2);display:flex;align-items:center;justify-content:center;overflow:hidden;text-align:center;padding:4px}.img-preview img{width:100%;height:100%;object-fit:cover;border-radius:6px}.img-actions{display:flex;flex-direction:column;gap:6px;min-width:0;flex:1;align-items:flex-start}@media(max-width:480px){.img-picker{flex-direction:column;align-items:flex-start}}.card .name{font-weight:600}.card .price{color:var(--pay);font-weight:700}.card .stock{font-size:12px;color:var(--muted);margin-top:auto}.card.out{opacity:.45;filter:grayscale(1);cursor:not-allowed}.lowtxt{color:var(--warn);font-weight:700;display:block}.qty-product{display:flex;gap:12px;align-items:center;background:var(--surface2);border-radius:10px;padding:10px 12px}.qty-vis.vis-emoji{font-size:38px;line-height:1}.qty-vis.vis-img{width:56px;height:56px;object-fit:cover;border-radius:8px;flex:none}.qty-stepper{display:grid;grid-template-columns:56px minmax(0,1fr) 56px;gap:8px;margin-bottom:12px}.qty-stepper .btn{font-size:24px;padding:0;min-height:52px}.qty-stepper .input{text-align:center;min-height:52px}.outtxt{color:var(--danger);font-weight:700}.table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.table-wrap.scroll-y{overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.fit-scroll{overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;flex:0 1 auto}.fit-scroll:not([data-end]){-webkit-mask-image:linear-gradient(#000 calc(100% - 28px),transparent);mask-image:linear-gradient(#000 calc(100% - 28px),transparent)}.fit-scroll:not([data-start]):not([data-end]){-webkit-mask-image:linear-gradient(transparent,#000 22px,#000 calc(100% - 28px),transparent);mask-image:linear-gradient(transparent,#000 22px,#000 calc(100% - 28px),transparent)}.fit-scroll[data-end]:not([data-start]){-webkit-mask-image:linear-gradient(transparent,#000 22px);mask-image:linear-gradient(transparent,#000 22px)}.table-wrap.scroll-y thead th{position:sticky;top:0;z-index:2}.table-wrap.scroll-y tr.total-row td{position:sticky;bottom:0;z-index:1}table{width:100%;border-collapse:collapse;font-size:14px}th,td{padding:8px 10px;border-bottom:1px solid var(--border);text-align:left;white-space:nowrap;vertical-align:middle}th{background:var(--surface2);font-size:12px;text-transform:uppercase;letter-spacing:.03em;color:var(--muted)}tr:last-child td{border-bottom:0}td.num,th.num{text-align:right}.pays{font-size:12px;color:var(--muted);white-space:normal;min-width:180px}.inline{display:flex;gap:6px;align-items:center}.filters{display:flex;flex-direction:column;gap:6px}.filter-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(140px,100%),1fr));gap:0 12px}.filter-row .field,.form-grid>*{min-width:0}.f-dates{display:contents}.lbl-short,.filters-bar{display:none}.filter-row .field{margin:6px 0}tr.total-row td{border-top:2px solid var(--border);font-weight:700;background:var(--surface2)}.debt-sum{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:baseline;margin:0 0 10px}.debt-sum b{font-size:22px}.toast-act{display:block;margin-top:8px}.low-right{display:inline-flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.find-btn{padding:3px 8px;font-size:12px}.sources li{align-items:flex-start}.src-main{display:flex;flex-direction:column;gap:3px;min-width:0}.contact{font-size:13px;display:flex;flex-wrap:wrap;gap:4px 10px}.contact a{color:var(--pay);text-decoration:none;font-weight:600}.ok-txt{color:var(--ok)}.neg-txt{color:var(--danger)}.tr-actions{display:flex;gap:6px;flex-wrap:wrap}.reception{border-color:#e8a33d;box-shadow:0 0 0 2px var(--warn-bg)}.sign{align-items:flex-start;margin:12px 0;font-weight:600;line-height:1.35}.sign input{margin-top:3px;flex:none}.info-note{background:var(--info-bg);color:var(--info);border-radius:8px;padding:8px 10px}textarea.input{width:100%;resize:vertical;font:inherit}.cat-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.stock-search{flex:1 1 220px;max-width:360px}.day-banner{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;background:var(--warn-bg);color:var(--text);border:1px solid #e8a33d;border-radius:var(--radius);padding:10px 14px;margin-bottom:12px}.closing-figs{background:var(--surface2);border-radius:10px;padding:8px 14px;margin:10px 0}.closing-figs .t-row{align-items:center}.closing-figs .t-row>:last-child{white-space:nowrap;text-align:right}.kpi .v.neg{color:var(--danger)}.proof-grid{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0 10px}.proof-thumb{display:inline-flex;align-items:center;justify-content:center;width:88px;height:88px;border:1px solid var(--border);border-radius:8px;overflow:hidden;background:var(--surface2)}.proof-thumb img{width:100%;height:100%;object-fit:cover}.proof-new{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-weight:400}.proof-new img{width:88px;height:88px;object-fit:cover;border-radius:8px;border:1px solid var(--border)}.timeline{max-height:220px}label.btn{display:inline-flex;align-items:center;cursor:pointer}label.btn.disabled{opacity:.45;cursor:not-allowed}.stack{display:flex;flex-direction:column;gap:16px}.sec-head{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px}.shop-item{border:1px solid var(--border);border-radius:var(--radius);margin-bottom:10px;overflow:hidden}.shop-head{width:100%;display:flex;align-items:center;gap:10px;justify-content:space-between;background:var(--surface2);border:0;padding:12px 14px;text-align:left;flex-wrap:wrap}.shop-row{display:flex;align-items:center;gap:8px;background:var(--surface2);padding-right:10px}.shop-row>.shop-head{flex:1;min-width:0}.shop-head .chev{display:inline-block;transition:transform .15s}.shop-item.open .shop-head .chev{transform:rotate(180deg)}.shop-body{padding:14px;border-top:1px solid var(--border)}.fold{border:1px solid var(--border);border-radius:var(--radius);margin-top:12px;overflow:hidden}.fold-head{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;background:var(--surface);border:0;padding:11px 14px;text-align:left}.fold-head:hover{background:var(--surface2)}.fold-title{font-weight:700;font-size:15px}.fold .chev{display:inline-block;transition:transform .15s}.fold.open .chev{transform:rotate(180deg)}.fold-body{padding:12px 14px;border-top:1px solid var(--border)}.fold-body>.sec-head{margin-bottom:10px}.fold.top{border:0;margin:0}.fold.top>.fold-head{padding:16px;border-radius:var(--radius)}.fold.top>.fold-body{padding:12px 16px 16px}.fold-h2{font-size:19px;font-weight:700}.phone-field{border:0;padding:0;min-width:0}fieldset{min-width:0}.phone-field legend{padding:0;margin-bottom:5px}.phone-row{display:flex;gap:8px;align-items:center}.phone-row select{flex:0 1 230px;min-width:0}.phone-row input{flex:1 1 140px;min-width:0}.dial{font-weight:700;color:var(--muted);white-space:nowrap}.dial:empty{display:none}@media(max-width:480px){.phone-row{flex-wrap:wrap}.phone-row select{flex:1 1 100%}}.checks .taken{opacity:.6}.no-shop{max-width:560px;margin:40px auto;text-align:center}.no-shop .contact{justify-content:center}.checks{display:flex;flex-wrap:wrap;gap:4px 14px;align-items:center}.input.sm.cat{width:auto;max-width:170px}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.kpi{background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius);padding:12px}.kpi .k{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.03em}.kpi .v{font-size:20px;font-weight:700;margin-top:2px;overflow-wrap:anywhere}.form-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.reset-row{text-align:right}.modal-back{position:fixed;inset:0;background:#0f0a1480;display:flex;align-items:center;justify-content:center;padding:16px;z-index:50}.modal{background:var(--surface);color:var(--text);border-radius:14px;max-width:520px;width:100%;max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);overflow:auto;padding:20px;box-shadow:0 12px 40px #0000004d}.modal.side{max-width:440px}.modal h2{margin-bottom:14px}.field{display:flex;flex-direction:column;gap:5px;margin:12px 0;font-weight:600;font-size:14px}.field .input{font-weight:400}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 10px}.form-grid .full{grid-column:1/-1}.actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px;flex-wrap:wrap}.seg{display:grid;grid-template-columns:1fr 1fr;gap:8px;border:0;padding:0;margin:12px 0}.seg legend{font-weight:600;font-size:14px;margin-bottom:5px;padding:0}.seg-btn{border:2px solid var(--border);background:var(--surface2);border-radius:10px;padding:12px;font-weight:700}.seg-btn.on{border-color:var(--pay);background:var(--info-bg);color:var(--info)}.pay-total{display:flex;justify-content:space-between;align-items:baseline;background:var(--surface2);border-radius:10px;padding:12px 14px}.pay-total b{font-size:26px}.big{font-size:22px;font-weight:700!important}.inforow{display:flex;justify-content:space-between;align-items:baseline;padding:10px 14px;border-radius:10px;margin:8px 0;font-weight:600}.inforow b{font-size:20px}.inforow.change{background:var(--ok-bg);color:var(--ok)}.inforow.rest{background:var(--warn-bg);color:var(--warn)}.inforow.bad{background:var(--danger-bg);color:var(--danger)}.cust-box{display:flex;justify-content:space-between;gap:10px;align-items:center;border:1px dashed var(--border);border-radius:10px;padding:10px 12px;flex-wrap:wrap}.cust-box.missing{border-color:var(--danger);color:var(--danger)}.list{list-style:none;margin:10px 0;padding:0;border:1px solid var(--border);border-radius:10px;max-height:260px;overflow:auto}.list li{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:9px 12px;border-bottom:1px solid var(--border)}.list li:last-child{border-bottom:0}.list li.cur{background:var(--sel)}.notif{display:block!important}.notif.unread{background:var(--brand-soft)}.notif .when{font-size:12px;color:var(--muted)}.ticket{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:14px}.ticket .t-head{text-align:center;border-bottom:1px dashed var(--border);padding-bottom:10px;margin-bottom:10px}.ticket table{font-size:13px}.ticket td{border:0;padding:3px 0;white-space:normal}.t-row{display:flex;justify-content:space-between;gap:10px;padding:3px 0}.t-sep{border-top:1px dashed var(--border);margin:8px 0}.t-big{font-size:18px;font-weight:700}.t-stamp{display:inline-block;margin:6px 0;padding:2px 12px;border:2px solid currentColor;border-radius:6px;font-weight:800;letter-spacing:2px;transform:rotate(-3deg)}.t-stamp.unpaid{color:#c0392b;font-size:20px}.t-foot{text-align:center;margin-top:8px}.toasts{position:fixed;bottom:16px;right:16px;display:flex;flex-direction:column;gap:8px;z-index:100;max-width:min(420px,calc(100vw - 32px))}.toast{background:var(--surface);color:var(--text);border:1px solid var(--border);border-left:5px solid var(--pay);border-radius:10px;padding:11px 14px;box-shadow:0 6px 20px #0000002e;font-weight:600;transition:opacity .3s,transform .3s}.toast.error{border-left-color:var(--danger)}.toast.warn{border-left-color:#e8a33d}.toast.ok{border-left-color:var(--ok)}.toast.hide{opacity:0;transform:translateY(8px)}.only-sm,.cart-bar,.sheet-head,.sheet-back,.menu-head{display:none}@media(pointer:coarse){.btn{min-height:42px}.btn.sm,.find-btn{min-height:36px}.tab,.chip,.tbtn,.top-ctrl select{min-height:40px}.input,select,textarea{font-size:16px}.input{min-height:44px}.numpad button{min-height:48px}.user-menu .menu button,.user-menu .menu .menu-link{min-height:44px}}@media(max-width:1024px){.ub-text{display:none}.menu-head{display:block;padding:8px 12px;font-weight:700;font-size:13px;border-bottom:1px solid var(--border);margin-bottom:4px}.user-menu>.admin-badge{padding:6px 10px;font-size:15px}.user-menu .menu{left:auto;right:0;min-width:240px;max-width:calc(100vw - 16px)}.brand{font-size:16px}}@media(min-width:641px)and (max-width:900px){.pos{grid-template-columns:minmax(270px,330px) minmax(0,1fr);gap:12px}.grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}main{padding:12px}}@media(max-width:900px){.filter-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px}.filter-row .input{width:100%}.filter-row .field{margin:4px 0}.f-wide{grid-column:1/-1}.f-dates{display:grid;grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px}}@media(max-width:640px){.hide-sm{display:none!important}.user-menu .menu button.only-sm{display:block}.topbar{flex-wrap:nowrap;gap:4px;padding:6px max(8px,env(safe-area-inset-right)) 6px max(8px,env(safe-area-inset-left))}.brand,.spacer{display:none}.tabs{flex:1 1 auto;min-width:0;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}.tab{padding:8px 9px}.count{margin-left:3px;padding:0 6px}.top-ctrl{width:auto;flex:none;flex-wrap:nowrap;gap:4px}main{padding:10px max(10px,env(safe-area-inset-left)) calc(16px + env(safe-area-inset-bottom))}.pad{padding:12px}h2,.fold-h2{font-size:17px}.fold.top>.fold-head{padding:14px 12px}.fold.top>.fold-body{padding:10px 12px 14px}.fold-body,.shop-body{padding:10px}.stack{gap:12px}.banner{flex-direction:column;align-items:flex-start}.shop-row{flex-wrap:wrap;padding-bottom:6px}.shop-row>.shop-head{flex-basis:100%}.shop-row>.tr-actions{margin-left:auto;padding:0 0 2px 10px}.stock-search{max-width:none}.chips.period{overflow:visible;gap:6px}.chips.period .chip{flex:1 1 auto;padding:6px 8px;text-align:center}.lbl-long{display:none}.lbl-short{display:inline}.filters-bar{display:flex;gap:8px;flex-wrap:wrap;margin-top:4px}.filters-bar [aria-expanded=true] .chev{display:inline-block;transform:rotate(180deg)}#results-filters:not(.open){display:none}.form-grid{grid-template-columns:1fr}.pos{display:block;padding-bottom:calc(72px + env(safe-area-inset-bottom))}.catalog{padding:10px}.grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px}.card{min-height:0;padding:10px}.card .card-vis.vis-img{height:78px}.order{position:fixed;inset:auto 0 0;z-index:45;max-height:88vh;max-height:88dvh;border-radius:16px 16px 0 0;padding-bottom:env(safe-area-inset-bottom);box-shadow:0 -8px 30px #00000040;transform:translateY(105%);visibility:hidden;transition:transform .22s ease,visibility 0s .22s}.pos.order-open .order{transform:none;visibility:visible;transition:transform .22s ease}.sheet-head{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:10px 14px;border-bottom:1px solid var(--border)}.sheet-back{display:block;position:fixed;inset:0;background:#0f0a1473;z-index:44}.lines{min-height:56px}.cart-bar{display:flex;gap:8px;position:fixed;left:0;right:0;bottom:0;z-index:30;background:var(--surface);padding:8px max(10px,env(safe-area-inset-right)) calc(8px + env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left));border-top:1px solid var(--border);box-shadow:0 -4px 14px #0000001f}.cart-sum{flex:1;min-width:0;display:flex;justify-content:space-between;align-items:center;gap:8px;border:1px solid var(--border);background:var(--surface2);border-radius:10px;padding:8px 12px;font-weight:600;min-height:46px}.cart-sum b{font-size:17px;white-space:nowrap}.cart-bar .btn.pay{padding:10px 18px;font-size:16px;min-height:46px}.toasts{left:10px;right:10px;max-width:none;bottom:auto;top:calc(58px + env(safe-area-inset-top))}.kpis{grid-template-columns:1fr 1fr;gap:8px}.kpi{padding:10px}.kpi .k{font-size:11px}.kpi .v{font-size:clamp(14px,4.3vw,18px)}.debt-sum b{font-size:19px}.modal-back{align-items:flex-end;padding:0}.modal,.modal.side{max-width:none;border-radius:16px 16px 0 0;max-height:92vh;max-height:92dvh;padding:16px 16px calc(12px + env(safe-area-inset-bottom))}.modal .actions{position:sticky;bottom:calc(-12px - env(safe-area-inset-bottom));background:var(--surface);margin:12px -16px 0;padding:10px 16px calc(10px + env(safe-area-inset-bottom));border-top:1px solid var(--border);z-index:1}.modal .actions>.btn,.modal .actions>span>.btn{flex:1 1 auto}.pay-total b{font-size:22px}.login-card{padding:22px 16px}}@media(max-width:900px){.table-wrap:has(>table.cards){border:0;background:none;overflow:visible}.table-wrap.scroll-y:has(>table.cards){overflow-y:auto;overflow-x:hidden;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface2);padding:6px 6px 0;-webkit-overflow-scrolling:touch}.table-wrap.scroll-y:has(>table.cards):not([data-end]){-webkit-mask-image:linear-gradient(#000 calc(100% - 36px),transparent);mask-image:linear-gradient(#000 calc(100% - 36px),transparent)}.table-wrap.scroll-y:has(>table.cards):not([data-start]):not([data-end]){-webkit-mask-image:linear-gradient(transparent,#000 28px,#000 calc(100% - 36px),transparent);mask-image:linear-gradient(transparent,#000 28px,#000 calc(100% - 36px),transparent)}.table-wrap.scroll-y:has(>table.cards)[data-end]:not([data-start]){-webkit-mask-image:linear-gradient(transparent,#000 28px);mask-image:linear-gradient(transparent,#000 28px)}.table-wrap.scroll-y tr.total-row td{position:static}table.cards,table.cards tbody{display:block;width:100%}table.cards thead{display:none}table.cards tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:8px;padding:2px 0 6px}table.cards td{display:block;min-width:0;border:0;padding:4px 12px;white-space:normal;text-align:left;overflow-wrap:anywhere}table.cards td:before{content:attr(data-label);display:block;font-size:10.5px;font-weight:600;line-height:1.3;color:var(--muted);text-transform:uppercase;letter-spacing:.03em;margin-bottom:1px}table.cards td[data-label=""]:before,table.cards td:first-child:before{display:none}table.cards td:empty{display:none}table.cards td.num,table.cards th.num{text-align:left}table.cards td:first-child,table.cards td[colspan],table.cards td[data-label=""],table.cards td.pays,table.cards td:has(form),table.cards td:has(.tr-actions),table.cards td:has(.checks){grid-column:1/-1}table.cards td:first-child{display:flex;align-items:center;flex-wrap:wrap;gap:6px;font-size:15px;font-weight:700;border-bottom:1px solid var(--border);padding:8px 12px;margin-bottom:2px}table.cards td[colspan]{text-align:center}table.cards tr[data-has-action]>td:first-child{grid-column:1;grid-row:1}table.cards td[data-action]{grid-column:2;grid-row:1;display:flex;justify-content:flex-end;align-items:center;border-bottom:1px solid var(--border);padding:6px 12px;margin-bottom:2px}table.cards td:has(.tr-actions){padding-top:6px}table.cards td:has(form){display:flex;justify-content:space-between;align-items:center;gap:10px}table.cards td:has(form):before{margin:0}table.cards form.inline .btn{white-space:nowrap}table.cards td .input.sm,table.cards td .input.sm.cat,table.cards td select.input{width:100%;max-width:none}table.cards form.inline{flex:0 1 auto;min-width:0}table.cards form.inline .input.sm{width:84px}table.cards .tr-actions{justify-content:flex-end;width:100%}table.cards tr.total-row{background:var(--surface2)}table.cards tr.total-row td{border-top:0}table.cards tr.cur{background:var(--sel)}.pays{min-width:0}}@media(min-width:641px)and (max-width:900px){table.cards tbody{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:start}table.cards tr{margin:0}table.cards tr:has(td[colspan]){grid-column:1/-1}}@media print{body>*:not(.modal-back.printable){display:none!important}.modal-back.printable{position:static;background:none;padding:0;display:block}.modal{box-shadow:none;max-height:none;max-width:none}.no-print{display:none!important}}.bar-colors{display:flex;flex-wrap:wrap;gap:10px;border:0;padding:0;margin:0 0 10px}.bar-colors legend{padding:0;margin-bottom:8px}.bar-swatch{display:flex;flex-direction:column;align-items:center;gap:6px;cursor:pointer;font-size:13px;min-width:76px}.bar-swatch input{position:absolute;opacity:0;pointer-events:none}.bar-swatch .sw{width:64px;height:28px;border-radius:8px;border:2px solid var(--border);box-shadow:inset 0 -8px #ffffff2e;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700}.bar-swatch input:checked+.sw{border-color:var(--text);outline:2px solid var(--surface);outline-offset:-4px}.bar-swatch input:focus-visible+.sw{outline:3px solid var(--text);outline-offset:2px}.topbar{padding-top:calc(8px + env(safe-area-inset-top))}.login-wrap{padding-top:max(16px,env(safe-area-inset-top));padding-bottom:max(16px,env(safe-area-inset-bottom))}@media(display-mode:standalone){body{overscroll-behavior-y:none}}.install-steps{margin:10px 0 14px;padding-left:22px;line-height:1.6}.install-steps li{margin-bottom:6px}
