.login{min-height:100dvh;display:grid;grid-template-columns:1fr;background:var(--muslin)}
.login-art{display:none}
.login-panel{display:flex;flex-direction:column;padding:16px 16px 40px}
.login-top{display:flex;justify-content:flex-end}
.login-box{width:100%;max-width:440px;margin:0 auto;display:flex;flex-direction:column;gap:24px;padding-top:12px}
.login-box.center{align-items:center;justify-content:center;min-height:80dvh}
.mark-l{width:56px;height:56px}
.mark-s{width:30px;height:30px;display:block}
.login-brand{display:flex;flex-direction:column;gap:10px}
.login-brand b{font:600 34px/1 var(--display);letter-spacing:-.02em}
.login-brand p{font:500 17px/1.4 var(--display);color:var(--ink-2);text-wrap:balance}
.role-list{display:flex;flex-direction:column;gap:8px}
.role-list button{display:flex;align-items:center;gap:14px;width:100%;padding:14px 14px 14px 12px;border-radius:var(--r-l);border:1px solid var(--seam);background:var(--cotton);text-align:left;box-shadow:var(--sh-1);transition:border-color .15s,transform .1s,box-shadow .15s}
.role-list button:hover{border-color:var(--nil-line);box-shadow:var(--sh-2)}
.role-list button:active{transform:scale(.99)}
.role-list button.busy{opacity:.6}
.role-list .ri{display:grid;place-items:center;width:44px;height:44px;border-radius:var(--r-m);background:var(--nil-wash);color:var(--nil);flex:none}
.role-list b{display:block;font:600 17px/1.2 var(--display)}
.role-list small{display:block;font-size:13px;color:var(--ink-3);margin-top:2px}
.role-list>button>.ic:last-child{color:var(--ink-3)}
.login-form{padding:20px;border-radius:var(--r-l);background:var(--cotton);border:1px solid var(--seam)}
.login-form.collapsed{display:none}
@media (min-width:960px){
  .login{grid-template-columns:minmax(380px,46%) 1fr}
  .login-art{display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden;padding:40px 48px;background:#141A2E;color:#E8EBF5}
  .la-top{display:flex;align-items:center;gap:14px}
  .la-top b{font:600 30px/1 var(--display);color:#fff}
  .la-mid h2{font:600 clamp(28px,2.6vw,40px)/1.15 var(--display);letter-spacing:-.02em;color:#fff;max-width:15ch;margin-bottom:28px}
  .la-mid ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:16px;max-width:420px}
  .la-mid li{display:flex;gap:14px;align-items:flex-start;font-size:16px;color:#C9CEE0}
  .la-mid li .ic{color:#8FA0F2;margin-top:2px}
  .la-rack{position:relative;height:150px;display:flex;align-items:flex-end;gap:10px;padding-top:26px;border-top:3px solid #4A5579}
  .la-rack::before{content:"";position:absolute;left:-48px;right:-48px;top:-3px;height:3px;background:#4A5579}
  .la-rack i{position:relative;flex:1;max-width:58px;height:110px;border-radius:4px 4px 10px 10px;background:var(--c);box-shadow:inset 0 -18px 30px -18px rgba(0,0,0,.35),inset 1px 0 0 rgba(255,255,255,.2);transform-origin:top center;animation:sway 6s ease-in-out infinite}
  .la-rack i:nth-child(2n){height:124px;animation-delay:-2s}
  .la-rack i:nth-child(3n){height:98px;animation-delay:-4s}
  .la-rack i::before{content:"";position:absolute;left:50%;top:-24px;width:14px;height:24px;margin-left:-7px;border:2px solid #8E95B0;border-bottom:0;border-radius:8px 8px 0 0}
  .login-panel{justify-content:center;padding:28px 40px}
  .login-top{position:absolute;top:22px;right:28px}
  .login-box{padding-top:0}
}
@keyframes sway{0%,100%{transform:rotate(-1.2deg)}50%{transform:rotate(1.2deg)}}

.counter-shell .view{padding:0;max-width:none}
.counter{display:grid;grid-template-columns:1fr;min-height:calc(100dvh - 60px)}
.cat{display:flex;flex-direction:column;gap:12px;padding:6px 16px 120px;min-width:0}
.scanbar{position:relative;display:flex;align-items:center;gap:10px;height:56px;padding:0 14px;border-radius:var(--r-l);background:var(--cotton);border:1.5px solid var(--seam-2);box-shadow:var(--sh-1);transition:border-color .15s,box-shadow .15s}
.scanbar:focus-within{border-color:var(--nil);box-shadow:0 0 0 4px var(--nil-wash)}
.scanbar>.ic{color:var(--nil);width:24px;height:24px}
.scan-in{flex:1;min-width:0;height:100%;border:0;background:transparent;font-size:17px;outline:0}
.scan-in::-webkit-search-cancel-button{display:none}
.scan-in::placeholder{color:var(--ink-3)}
.catchips{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin:0 -16px;padding:0 16px}
.catchips::-webkit-scrollbar{display:none}
.pgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(158px,1fr));gap:10px;align-content:start}
.pcard{position:relative;display:flex;flex-direction:column;gap:6px;min-height:150px;padding:12px 12px 11px;border-radius:var(--r-m);border:1px solid var(--seam);background:var(--cotton);text-align:left;box-shadow:var(--sh-1);transition:border-color .12s,transform .08s,box-shadow .15s}
.pcard:hover{border-color:var(--nil-line);box-shadow:var(--sh-2)}
.pcard:active{transform:scale(.985)}
.pcard.out{opacity:.62}
.pc-top{display:flex;align-items:center;justify-content:space-between;gap:6px}
.sws{display:inline-flex;align-items:center}
.sws .swatch{margin-right:-4px;box-shadow:0 0 0 2px var(--cotton),inset 0 0 0 1px rgba(20,26,46,.18)}
.sws em{font-style:normal;font-size:11.5px;color:var(--ink-3);margin-left:8px}
.pc-code{font-size:11.5px;color:var(--ink-3);letter-spacing:.02em}
.pc-name{font:600 15.5px/1.25 var(--display);color:var(--ink);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-wrap:balance}
.pc-sizes{font-size:12px;color:var(--ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pc-foot{margin-top:auto;display:flex;align-items:flex-end;justify-content:space-between;gap:6px}
.pc-price{display:flex;flex-direction:column;line-height:1.1}
.pc-price s{font-size:12px;color:var(--ink-3)}
.pc-price b{font:600 17px/1.1 var(--display)}
.pc-q{font-size:12px;color:var(--ink-3);white-space:nowrap}
.pc-q.low{color:var(--haldi);font-weight:600}
.pc-off{position:absolute;top:-7px;right:10px;height:20px;padding:0 7px;border-radius:5px;background:var(--alta);color:#fff;font-size:11.5px;font-weight:700;line-height:20px;box-shadow:0 4px 10px -4px var(--alta)}
.grid-more{grid-column:1/-1;text-align:center;padding:8px}

.cart{display:none}
.counter.show-cart .cart{display:flex;position:fixed;inset:0;z-index:60;background:var(--cotton)}
.cart-in{display:flex;flex-direction:column;width:100%;height:100%;min-height:0}
.cart-h{display:flex;align-items:center;gap:2px;padding:14px 12px 10px 18px}
.cart-h h2{font-size:19px}
.cart-h .iconbtn{position:relative}
.cart-h .iconbtn[disabled]{opacity:.35;pointer-events:none}
.badge{position:absolute;top:3px;right:2px;min-width:17px;height:17px;padding:0 4px;border-radius:9px;background:var(--alta);color:#fff;font-size:10.5px;font-weight:700;line-height:17px;text-align:center}
.cust{display:flex;align-items:center;gap:10px;margin:0 14px;min-height:44px;padding:0 12px;border-radius:var(--r-s);border:1px dashed var(--seam-2);background:transparent;color:var(--ink-2);font-size:14.5px;text-align:left}
.cust:hover{border-color:var(--nil);color:var(--nil)}
.cust.on{border-style:solid;border-color:var(--nil-line);background:var(--nil-wash);color:var(--ink)}
.cust.on .ic{color:var(--nil)}
.smrow{display:flex;align-items:center;gap:6px;padding:10px 14px 2px;overflow-x:auto;scrollbar-width:none}
.smrow .meta{flex:none;margin-right:2px}
.smchip{flex:none;height:30px;padding:0 11px;border-radius:999px;border:1px solid var(--seam-2);background:transparent;font-size:13px;font-weight:600;color:var(--ink-2)}
.smchip[aria-pressed="true"]{background:var(--ink);color:var(--cotton);border-color:var(--ink)}
.cart-lines{flex:1;min-height:0;overflow-y:auto;padding:8px 6px 8px 8px;overscroll-behavior:contain}
.cart-empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;padding:40px 20px;color:var(--ink-3)}
.cart-empty .ic{color:var(--nil-line);width:48px;height:48px;margin-bottom:6px}
.cart-empty b{font:600 16px/1.3 var(--display);color:var(--ink-2)}
.cart-empty .btn{margin-top:14px}
.cl-group{margin-bottom:6px}
.cl-group ul{list-style:none;margin:0;padding:0}
.cl-gh{display:flex;align-items:center;gap:6px;padding:8px 10px 4px;font-size:12.5px;font-weight:700;color:var(--ink-3)}
.alta-g{border-radius:var(--r-m);background:var(--alta-wash);padding-bottom:4px}
.alta-g .cl-gh{color:var(--alta)}
.cl{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:10px;padding:8px 8px 8px 10px;border-radius:var(--r-s)}
.cl+.cl{border-top:1px solid var(--seam)}
.alta-g .cl+.cl{border-top-color:color-mix(in oklab,var(--alta) 18%,transparent)}
.cl.flash{animation:flash .9s var(--ease)}
@keyframes flash{0%{background:var(--nil-wash)}100%{background:transparent}}
.cl-main{border:0;background:transparent;padding:0;text-align:left;min-width:0}
.cl-name{font-weight:600;font-size:14.5px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cl-sub{font-size:12.5px;color:var(--ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cl-price{font-size:12.5px;color:var(--ink-2)}
.cl-price s{color:var(--ink-3)}
.cl-t{font:600 15px/1 var(--display);min-width:64px;text-align:right}
.cl.ret .cl-t{color:var(--alta)}
.cl.ret{grid-template-columns:auto 1fr auto auto}
.cl-q{font-size:13px;color:var(--ink-2)}
.step{display:inline-flex;align-items:center;border-radius:var(--r-s);border:1px solid var(--seam-2);background:var(--cotton);height:34px}
.step button{display:grid;place-items:center;width:30px;height:100%;border:0;background:transparent;color:var(--ink-2)}
.step button:hover{color:var(--nil)}
.step button[disabled]{opacity:.3}
.step b{min-width:22px;text-align:center;font-size:14.5px}
.step.lg{height:46px}.step.lg button{width:44px}.step.lg b{min-width:40px;font-size:19px}
.cart-f{border-top:1px solid var(--seam);padding:12px 16px calc(14px + var(--safe-b));background:var(--cotton-2)}
.sums{margin:0 0 6px;display:flex;flex-direction:column;gap:3px;font-size:14px}
.sums>div{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:26px}
.sums dt{display:flex;align-items:center;gap:6px;color:var(--ink-2)}
.sums dd{margin:0;display:flex;align-items:center;gap:6px}
.sums .kach dt,.sums .kach dd{color:var(--kach)}
.sums .alta dt,.sums .alta dd{color:var(--alta)}
.sums .haldi dt,.sums .haldi dd{color:var(--haldi)}
.linkbtn{display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;padding:0;color:var(--nil);font-weight:600;font-size:14px}
.grand{display:flex;align-items:baseline;justify-content:space-between;padding:6px 0 12px}
.grand span{font:600 15px/1 var(--display);color:var(--ink-2)}
.grand b{font:700 34px/1 var(--display);letter-spacing:-.02em}
.cart-f .btn.lg{min-height:58px}
.cart-f .btn.lg .grow{text-align:left}
.haldi-btn{background:var(--haldi)!important;border-color:var(--haldi)!important;box-shadow:0 6px 14px -8px var(--haldi)!important}
.cartbar{position:fixed;left:12px;right:12px;bottom:calc(72px + var(--safe-b));z-index:35;display:flex;align-items:center;gap:12px;height:56px;padding:0 16px 0 10px;border-radius:var(--r-l);border:0;background:var(--nil);color:var(--on-nil);font-weight:600;box-shadow:var(--sh-3);animation:rise .25s var(--ease)}
.cb-n{display:grid;place-items:center;min-width:34px;height:34px;padding:0 6px;border-radius:10px;background:rgba(255,255,255,.18);font-weight:700}
.cartbar b{font:700 18px/1 var(--display)}
.avatar{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--nil-wash);color:var(--nil);flex:none}

@media (min-width:1024px){
  .counter{grid-template-columns:minmax(0,1fr) clamp(380px,32vw,460px);min-height:calc(100dvh - var(--top))}
  .cat{padding:4px 22px 32px 28px}
  .catchips{margin:0;padding:0;flex-wrap:wrap;overflow:visible}
  .pgrid{grid-template-columns:repeat(auto-fill,minmax(164px,1fr))}
  .cart{display:flex;position:sticky;top:var(--top);height:calc(100dvh - var(--top));background:var(--cotton);border-left:1px solid var(--seam);box-shadow:-18px 0 40px -36px rgba(20,26,46,.5)}
  .counter.show-cart .cart{position:sticky;inset:auto}
}

.picker{display:flex;flex-direction:column;gap:14px}
.pk-price{font-size:15px;margin-top:2px}
.pk-price s{color:var(--ink-3);font-size:13px}
.pk-price b{font:600 22px/1.2 var(--display)}
.matrix-wrap{overflow-x:auto;overflow-y:hidden;padding:2px 0}
.sb .matrix-wrap{margin:0 -22px;padding:2px 22px}
.matrix{border-collapse:separate;border-spacing:6px;margin:0 -6px}
.matrix th{font-size:12.5px;font-weight:600;color:var(--ink-2);padding:2px 4px;white-space:nowrap}
.matrix thead th{vertical-align:bottom;text-align:center}
.matrix thead th .swatch{margin:0 auto 4px}
.matrix tbody th{text-align:right;padding-right:8px;font:600 15px/1 var(--display);color:var(--ink)}
.mx{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;width:74px;height:62px;border-radius:var(--r-s);border:1.5px solid var(--seam-2);background:var(--cotton);transition:border-color .12s,background .12s,transform .08s}
.mx:hover{border-color:var(--nil);background:var(--nil-wash)}
.mx:active{transform:scale(.96)}
.mx-q{font:600 20px/1 var(--display)}
.mx-l{font-size:11px;color:var(--ink-3)}
.mx-p{font-size:10.5px;color:var(--haldi);font-weight:600}
.mx.zero{background:repeating-linear-gradient(135deg,var(--cotton-2) 0 6px,var(--press) 6px 7px);border-style:dashed}
.mx.zero .mx-q{color:var(--ink-3)}
.mx.has{border-color:var(--nil);box-shadow:0 0 0 2px var(--nil-wash)}
.mx-n{position:absolute;top:-8px;right:-8px;min-width:22px;height:22px;padding:0 6px;border-radius:11px;background:var(--nil);color:var(--on-nil);font-size:12px;font-weight:700;line-height:22px}
.mx-na{display:grid;place-items:center;width:74px;height:62px;color:var(--seam-2)}
.pk-foot{position:sticky;bottom:0;background:var(--cotton);padding-top:6px}

.pay{display:flex;flex-direction:column;gap:16px}
.pay-total{display:flex;flex-direction:column;align-items:center;gap:2px;padding:14px;border-radius:var(--r-l);background:var(--nil-wash);text-align:center}
.pay-total b{font:700 44px/1.05 var(--display);letter-spacing:-.02em;color:var(--nil-deep)}
:root[data-theme="dark"] .pay-total b{color:var(--nil)}
.tender{display:flex;flex-direction:column;gap:8px;padding:12px;border-radius:var(--r-m);border:1px solid var(--seam)}
.tseg{display:flex}
.tseg button{flex:1;padding:0 8px}
.t-amt{font:600 22px/1 var(--display);height:52px}
.t-ref{width:140px;flex:none}
.t-ref.vref{width:160px;text-transform:uppercase}
.pay-sum{display:flex;flex-direction:column;gap:6px}
.pay-sum>div{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-radius:var(--r-m);background:var(--cotton-2);font-weight:600}
.pay-sum b{font:700 22px/1 var(--display)}
.pay-sum .haldi{background:var(--haldi-wash);color:var(--haldi)}
.pay-sum .alta{background:var(--alta-wash);color:var(--alta)}
.change{background:var(--kach-wash)!important;color:var(--kach)}
.change.big{display:flex;align-items:center;justify-content:space-between;width:100%;padding:16px 18px;border-radius:var(--r-l);font-weight:600}
.change.big b{font:700 34px/1 var(--display)}
.pinbox{display:flex;flex-direction:column;gap:8px;padding:14px;border-radius:var(--r-m);background:var(--haldi-wash)}
.pinbox .ic{color:var(--haldi)}
.pin-in{font:600 22px/1 var(--display);letter-spacing:.3em;text-align:center;height:52px}
.pay-done{display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center;padding:4px 0 6px}
.pd-check{display:grid;place-items:center;width:72px;height:72px;border-radius:50%;background:var(--kach);color:#fff;animation:pop .45s var(--ease)}
.pd-check .ic{width:38px;height:38px;stroke-width:2.4}
@keyframes pop{0%{transform:scale(.5);opacity:0}70%{transform:scale(1.08)}}
.pd-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:100%}
.pd-actions .btn.primary{grid-column:1/-1}
.pd-actions .btn span{flex:1;text-align:left}
.vcard{display:flex;flex-direction:column;align-items:center;gap:2px;width:100%;padding:14px;border-radius:var(--r-l);border:1.5px dashed var(--haldi);background:var(--haldi-wash);color:var(--haldi)}
.vcard b{font:700 28px/1.1 var(--display);letter-spacing:.04em;color:var(--ink)}
.newcust{border-color:var(--nil-line)}
.wa-text{white-space:pre-wrap;font:13.5px/1.5 var(--body);padding:12px;border-radius:var(--r-m);background:var(--cotton-2);margin:0}

.exchange{max-width:860px;margin:0 auto;padding-bottom:110px}
.exbill{padding:16px}
.exbill header{margin-bottom:8px}
.exlines{list-style:none;margin:0;padding:0}
.exlines li{display:flex;align-items:center;gap:12px;padding:12px 0;border-top:1px solid var(--seam)}
.exlines li.done{opacity:.55}
.exlines .t{font-weight:600}
.reasons{margin-top:8px}
.reasons .chip{min-height:30px;font-size:12.5px}
.exfoot{position:fixed;left:12px;right:12px;bottom:calc(72px + var(--safe-b));z-index:35;display:flex;align-items:center;gap:12px;max-width:860px;margin:0 auto;padding:12px 12px 12px 18px;border-radius:var(--r-l);background:var(--cotton);border:1px solid var(--seam);box-shadow:var(--sh-3)}
.exfoot b{font:700 19px/1.2 var(--display)}
@media (min-width:1024px){.exfoot{left:calc(var(--rail) + 28px);right:28px;bottom:20px}}

.pc-sizes .gone{text-decoration:line-through;text-decoration-thickness:1.5px;opacity:.55}
.cl-main{border-radius:var(--r-xs);margin:-4px -6px;padding:4px 6px}
.cl-main:hover{background:var(--cotton-2)}
@media (pointer:coarse){
  kbd{display:none}
  .step{height:42px}.step button{width:40px}
  .smchip{height:38px;padding:0 14px}
  .chip{min-height:40px}
  .iconbtn{width:44px;height:44px}
}
.login:has(.login-box.center){grid-template-columns:1fr}
