:root{
  /* SmartDukkan theme: dark blue + black */
  --ground:#EEF1F7; --card:#FFFFFF; --ink:#0B1220; --muted:#566178; --line:#DAE0EB; --line2:#C5CDDC;
  --deep:#05070D; --deep2:#0B1631; --green:#1D4ED8; --saffron:#2563EB; --accent:#2563EB; --onaccent:#FFFFFF;
  --okfg:#15803D; --okbg:#E4F4EA; --okline:#9FD5B4;
  --warnbg:#FDF1DC; --warnline:#E9C98C; --errbg:#FBE4E1; --err:#B3261E; --onDeep:#FFFFFF;
  --navtext:#D3DCEE; --navtitle:#7D8FB3; --navhover:#15264F; --topline:#34446A; --topsub:#A9B8D6;
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --ground:#070A12; --card:#101828; --ink:#E6EBF5; --muted:#97A3BB; --line:#1E2840; --line2:#2C3A5A;
    --deep:#020308; --deep2:#08112A; --green:#3B82F6; --saffron:#3B82F6; --accent:#3B82F6;
    --okfg:#4ADE80; --okbg:#0F2A1D; --okline:#1F5A3A;
    --warnbg:#3A2C12; --warnline:#6B5320; --errbg:#3D1D1A; --err:#FF8A80;
  }
}
:root[data-theme="dark"]{
    --ground:#070A12; --card:#101828; --ink:#E6EBF5; --muted:#97A3BB; --line:#1E2840; --line2:#2C3A5A;
    --deep:#020308; --deep2:#08112A; --green:#3B82F6; --saffron:#3B82F6; --accent:#3B82F6;
    --okfg:#4ADE80; --okbg:#0F2A1D; --okline:#1F5A3A;
    --warnbg:#3A2C12; --warnline:#6B5320; --errbg:#3D1D1A; --err:#FF8A80;
  }
*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none !important}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--ground);color:var(--ink);font-family:'IBM Plex Sans Arabic','Noto Sans Bengali','Segoe UI',Tahoma,Arial,sans-serif;font-size:16px;line-height:1.45}
a{color:var(--green)}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
:focus-visible{outline:3px solid #60A5FA;outline-offset:2px}
h1{margin:0;font-size:24px;line-height:1.25}
h2{margin:0;font-size:18px}
p{margin:0}
.muted{color:var(--muted)}
.small{font-size:13px}

/* top bar */
.top{background:var(--deep);color:var(--onDeep);padding:10px 16px;display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between}
.brand-row{display:flex;align-items:center;gap:10px}
.brand-row b{font-size:18px}
.logo{width:38px;height:38px;border-radius:11px;background:url(icons/logo.svg) center/cover no-repeat;color:transparent;font-size:0;display:inline-flex;align-items:center;justify-content:center;font-weight:700;flex:none;overflow:hidden}
.top small{display:block;color:var(--topsub);font-size:13px}
.top-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.top-btn{min-height:44px;padding:0 14px;border-radius:10px;border:1px solid var(--topline);background:transparent;color:#fff;font-weight:600;text-decoration:none;display:inline-flex;align-items:center}
.pill{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;font-size:13px;font-weight:600}
.pill.trial{background:#5A3E0B;color:#FFE7BD}
.pill.active{background:#134A3D;color:#CFEFE2}
.pill.expired{background:#5A1D18;color:#FFD6D1}
.menu-btn{display:none;width:44px;height:44px;border-radius:10px;border:1px solid var(--topline);background:transparent;color:#fff;align-items:center;justify-content:center}
.shell{display:flex;align-items:stretch;min-height:calc(100vh - 64px)}
.sidenav{flex:0 0 232px;background:var(--deep2);padding:14px 10px 32px}
.nav-inner{position:sticky;top:12px;display:flex;flex-direction:column;gap:2px}
.nav-group{display:flex;flex-direction:column;gap:2px}
.nav-title{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--navtitle);padding:4px 12px}
.sidenav a{display:flex;align-items:center;gap:12px;min-height:44px;padding:0 12px;border-radius:10px;color:var(--navtext);text-decoration:none;font-weight:500}
.sidenav a:hover{background:var(--navhover)}
.sidenav a[aria-current="page"]{background:var(--accent);color:#fff;font-weight:700;box-shadow:inset 3px 0 0 #93C5FD}
.sidenav svg{flex:none}
@media (max-width:900px){
  .menu-btn{display:inline-flex}
  .shell{display:block}
  .sidenav{display:none}
  .sidenav.open{display:block}
}
main.page{flex:1 1 auto;min-width:0;max-width:1240px;margin:0 auto;padding:18px 16px 48px;display:flex;flex-direction:column;gap:16px}
.head{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;justify-content:space-between}

/* boxes */
.card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:18px}
.grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
.grid2{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.kpi span{color:var(--muted);font-size:14px}
.kpi b{display:block;font-size:24px;font-variant-numeric:tabular-nums}
.ok-box,.warn-box,.err-box,.note-box{padding:12px 16px;border-radius:12px;font-weight:600}
.ok-box{background:var(--okbg);border:1px solid var(--okline)}
.warn-box{background:var(--warnbg);border:1px solid var(--warnline)}
.err-box{background:var(--errbg);border:1px solid var(--err);color:var(--err)}
.note-box{background:var(--card);border:1px dashed var(--line2);font-weight:400}

/* forms */
.stack{display:flex;flex-direction:column;gap:14px}
label{display:flex;flex-direction:column;gap:6px;font-weight:600;font-size:14px}
label.check{flex-direction:row;align-items:center;gap:10px;min-height:44px;font-weight:500}
label.check input{width:22px;height:22px;min-height:0;accent-color:var(--green)}
input,select,textarea{width:100%;min-height:46px;padding:0 14px;border-radius:10px;border:1px solid var(--line2);background:var(--card);font-weight:400}
textarea{padding:10px 14px;min-height:96px;resize:vertical}
.hint{font-size:13px;color:var(--muted);font-weight:400}
.ferr{font-size:13px;color:var(--err);font-weight:600}
.req{color:var(--err)}

/* buttons */
.btn{min-height:48px;padding:0 20px;border-radius:12px;border:none;background:var(--green);color:#fff;font-weight:700;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px}
.btn.alt{background:var(--deep);color:#fff}
.btn:hover{filter:brightness(1.08)}
.btn.ghost{background:transparent;border:1px solid var(--line2);color:var(--ink);font-weight:600}
.btn.danger{background:transparent;border:1px solid var(--err);color:var(--err)}
.btn.sm{min-height:40px;padding:0 14px;font-size:14px}
.btn[disabled]{opacity:.5;cursor:not-allowed}
.row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.between{justify-content:space-between}
form.inline{display:inline}

/* tables */
.table{overflow-x:auto;border:1px solid var(--line);border-radius:14px;background:var(--card)}
table{border-collapse:collapse;width:100%;min-width:600px}
th,td{padding:11px 14px;text-align:start;border-bottom:1px solid var(--line);font-size:14px;font-variant-numeric:tabular-nums;vertical-align:middle}
th{background:var(--ground);font-size:13px;color:var(--muted);font-weight:700}
tr:last-child td{border-bottom:none}
.empty{padding:28px 16px;text-align:center;color:var(--muted)}
.badge{display:inline-block;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:700;background:var(--ground);color:var(--muted)}
.badge.ok{background:var(--okbg);color:var(--okfg)}
.badge.warn{background:var(--warnbg);color:#9A5B00}
.badge.err{background:var(--errbg);color:var(--err)}

/* auth */
body.auth{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:32px 16px;gap:16px}
.auth-card{width:100%;max-width:720px;background:var(--card);border:1px solid var(--line);border-radius:20px;padding:24px;display:flex;flex-direction:column;gap:16px}
.auth-card.narrow{max-width:420px}

/* POS */
.pos{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-start}
.pos-left{flex:999 1 440px;min-width:0;display:flex;flex-direction:column;gap:12px}
.pos-right{flex:1 1 340px;min-width:0;position:sticky;top:12px}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{min-height:44px;padding:0 16px;border-radius:999px;border:1px solid var(--line2);background:var(--card);font-weight:600}
.chip[aria-pressed="true"]{background:var(--deep);border-color:var(--deep);color:#fff}
.prods{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}
.prod{text-align:start;display:flex;flex-direction:column;gap:4px;padding:14px;min-height:112px;border-radius:14px;border:1px solid var(--line);background:var(--card)}
.prod b{font-size:15px;line-height:1.3}
.prod small{color:var(--muted)}
.prod small.low{color:#9A5B00;font-weight:600}
.prod strong{margin-top:auto;font-size:17px;font-variant-numeric:tabular-nums}
.prod[disabled]{opacity:.45}
.line{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 0;border-bottom:1px solid var(--line)}
.line .n{flex:1 1 0;min-width:0;font-weight:600}
.line input.imei{flex:1 1 100%;min-height:40px}
.qbtn{width:44px;height:44px;border-radius:10px;border:1px solid var(--line2);background:var(--card);font-size:20px}
.tot{display:flex;justify-content:space-between;align-items:baseline;padding:14px;border-radius:14px;background:var(--deep);color:#fff;margin:8px 0}
.tot b{font-size:26px;font-variant-numeric:tabular-nums}
.sumrow{display:flex;justify-content:space-between;gap:8px;color:var(--muted);font-variant-numeric:tabular-nums}
.paybtns{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}
.paybtns .btn{min-height:56px;font-size:16px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

@media (max-width:700px){
  .pos-right{position:static}
  h1{font-size:21px}
}

/* v0.3 POS extras */
.paybtns.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.paybtns.three .btn{min-height:46px;font-size:14px;padding:0 6px}
.disc{align-items:flex-end;gap:8px}
.sumrow.big{font-size:18px;color:var(--ink);padding:6px 0}
.dlg{border:none;border-radius:18px;padding:20px;width:min(420px,calc(100vw - 32px));background:var(--card);color:var(--ink);box-shadow:0 20px 60px rgba(0,0,0,.35)}
.dlg::backdrop{background:rgba(5,8,20,.6)}
.quick{gap:6px;flex-wrap:wrap}
.holds{position:relative}
.holds>summary{list-style:none}
.holds>summary::-webkit-details-marker{display:none}
.holds-list{position:absolute;inset-inline-end:0;top:calc(100% + 6px);z-index:20;width:min(460px,calc(100vw - 32px));max-height:60vh;overflow:auto;display:flex;flex-direction:column;gap:2px;padding:10px;box-shadow:0 12px 40px rgba(0,0,0,.18)}
.hold-row{padding:8px 4px;border-bottom:1px solid var(--line);flex-wrap:nowrap}
.hold-row>div:first-child{display:flex;flex-direction:column;min-width:0}
.cust label{margin:0}
@media (max-width:420px){.paybtns.three{grid-template-columns:1fr 1fr}}
@media print{
  .top,.sidenav,.noprint,.menu-btn{display:none !important}
  body{background:#fff}
  main.page{padding:0;max-width:none}
  .card{border-color:#bbb}
}

/* scan / search picker */
.picker{position:relative;display:flex;flex-direction:column;gap:4px}
.pick-list{position:absolute;top:100%;inset-inline:0;z-index:30;background:var(--card);border:1px solid var(--line2);border-radius:12px;box-shadow:0 12px 30px rgba(0,0,0,.15);display:flex;flex-direction:column;padding:4px;max-height:320px;overflow:auto}
.pick-opt{display:flex;gap:8px;align-items:baseline;justify-content:space-between;text-align:start;min-height:44px;padding:8px 12px;border:none;background:none;border-radius:8px}
.pick-opt:hover,.pick-opt:focus{background:var(--okbg)}
.item-row{display:flex;flex-direction:column;gap:6px;padding:6px 0;border-bottom:1px dashed var(--line)}
.item-row textarea{min-height:76px;padding:8px 12px;font-family:ui-monospace,Consolas,monospace}
@keyframes sdflash{from{background:var(--okbg)}to{background:transparent}}
.flash{animation:sdflash .9s ease-out}
.scan-bad{animation:sdshake .3s}
@keyframes sdshake{25%{transform:translateX(-6px)}75%{transform:translateX(6px)}}
.sound-btn{min-width:44px}

/* footer */
.copy{margin-top:auto;padding:18px 0 4px;text-align:center;font-size:13px;color:var(--muted)}
body.auth .copy{margin-top:8px}
[dir="rtl"] .sidenav a[aria-current="page"]{box-shadow:inset -3px 0 0 #93C5FD}

/* ===== POS v2: screen-fit layout, compact cart, fixed pay area ===== */
.pos-head{gap:8px}
.pos-head h1{font-size:22px}
.pill.reg-on{background:var(--okbg);color:var(--okfg);border:1px solid var(--okline);text-decoration:none;min-height:40px}
.btn.reg-off{background:#B45309}
.pos{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,400px);gap:14px;align-items:stretch;height:var(--pos-h,auto)}
.pos-left{display:flex;flex-direction:column;gap:10px;min-height:0}
.scanrow{display:flex;gap:8px;align-items:center}
.scanrow #scan{flex:1}
.viewtgl{display:flex;gap:4px}
.viewtgl .btn{min-width:44px;padding:0 10px}
.viewtgl .btn[aria-pressed="true"]{background:var(--deep2);color:#fff;border-color:var(--deep2)}
.chips{flex-wrap:nowrap;overflow-x:auto;padding-bottom:2px;scrollbar-width:thin}
.chip{flex:none;min-height:40px}
.prods{flex:1;min-height:0;overflow:auto;align-content:start;padding:2px}
.prods.list{display:flex;flex-direction:column;gap:0;border:1px solid var(--line);border-radius:12px;background:var(--card)}
.prods.list .prod{flex-direction:row;align-items:center;min-height:44px;padding:6px 12px;border:none;border-bottom:1px solid var(--line);border-radius:0;gap:12px}
.prods.list .prod b{flex:1;min-width:0;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.prods.list .prod small{flex:none;width:90px;text-align:end}
.prods.list .prod strong{margin:0;flex:none;width:110px;text-align:end;font-size:15px}
.prod:hover:not([disabled]){border-color:var(--accent)}

.pos-right{position:static;display:flex;flex-direction:column;padding:0;overflow:hidden;min-height:0}
.cart-head{padding:10px 12px;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:8px}
.cust{display:flex;gap:6px;align-items:center}
.cust input{min-height:40px;flex:1}
.cinfo{flex:1;display:flex;align-items:center;gap:6px;justify-content:space-between;font-size:14px;min-width:0}
.cinfo #cname{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cnew{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.cnew input{min-height:38px}
.cart-close{display:none}
.cart-lines{flex:1;min-height:0;overflow:auto;padding:0 12px}
.cart-lines .empty{margin:12px 0;border:1px dashed var(--line2);border-radius:12px}
#lines .line{display:flex;flex-wrap:nowrap;align-items:center;gap:6px;padding:4px 0;min-height:40px;border-bottom:1px solid var(--line)}
#lines .line .n{flex:1;min-width:0;font-weight:600;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#lines .line .n small{font-weight:400;color:var(--muted);margin-inline-start:6px}
#lines .qbtn{width:30px;height:30px;font-size:17px;border-radius:8px;line-height:1;padding:0}
#lines .q{min-width:24px;text-align:center;font-weight:700;font-size:14px}
#lines .lt{min-width:76px;text-align:end;font-weight:700;font-size:14px;font-variant-numeric:tabular-nums}
#lines .del{border-color:transparent;color:var(--muted)}
#lines input.imei{flex:0 1 160px;min-width:110px;min-height:32px;height:32px;padding:0 8px;font-size:13px;font-family:ui-monospace,Consolas,monospace}
.cart-foot{border-top:1px solid var(--line);padding:10px 12px 12px;display:flex;flex-direction:column;gap:8px;background:var(--card)}
.footrow{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:13px}
.footrow .disc-l{font-size:13px;font-weight:600}
.footrow #dval{width:84px;min-height:34px;padding:0 8px}
.footrow #dtype{width:auto;min-height:34px;padding:0 6px}
.footrow .sums{flex:1;text-align:end;color:var(--muted);font-variant-numeric:tabular-nums}
.footrow .sums b{color:var(--ink);font-weight:600}
.cart-foot .tot{margin:0;padding:10px 14px;border-radius:12px;background:var(--deep)}
.cart-foot .tot b{font-size:24px}
.cart-foot .tot small{color:var(--topsub);font-weight:400}
.cart-foot .paybtns .btn{min-height:50px}
.cart-foot .paybtns.three .btn{min-height:40px}
.cart-foot .err-box{padding:8px 12px;font-size:14px}
kbd{font:inherit;font-size:11px;opacity:.7;border:1px solid currentColor;border-radius:4px;padding:0 4px;margin-inline-start:4px}
.cartbar{display:none}

@media (max-width:899px){
  .pos{display:flex;flex-direction:column;height:auto}
  .prods{overflow:visible;padding-bottom:84px}
  .viewtgl{display:flex}
  .pos-right{position:fixed;inset:0;z-index:60;border-radius:0;border:none;transform:translateY(100%);transition:transform .22s ease;visibility:hidden}
  .pos-right.open{transform:none;visibility:visible}
  .cart-close{display:inline-flex}
  .cartbar{display:flex;position:fixed;inset-inline:12px;bottom:12px;z-index:50;align-items:center;justify-content:space-between;gap:10px;min-height:56px;padding:0 18px;border:none;border-radius:16px;background:var(--deep2);color:#fff;font-size:16px;box-shadow:0 10px 30px rgba(5,8,20,.35)}
  .cartbar span{display:inline-flex;align-items:center;gap:6px}
  .cartbar .cb-go{background:var(--accent);padding:6px 12px;border-radius:10px;font-weight:700}
  .cartbar.bump{animation:sdflash .6s}
  kbd{display:none}
}
/* POS v2 tuning */
.cart-head{padding:8px 10px}
.cust input{min-height:38px}
.cust .btn.sm{min-height:38px}
.cart-foot{gap:6px;padding:8px 10px 10px}
.cart-foot .tot{padding:7px 12px}
.cart-foot .tot b{font-size:22px}
.cart-foot .paybtns{gap:8px}
.cart-foot .paybtns .btn{min-height:46px}
.cart-foot .paybtns.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.cart-foot .paybtns.three .btn{min-height:36px;font-size:13px}
#lines .line{min-height:38px;padding:3px 0}
@media (max-width:899px){
  .pos-left{min-height:auto}
  .prods{flex:none}
}
.pos-left{min-width:0;width:100%}
.cart-foot .tot{flex-wrap:nowrap;gap:10px;align-items:center}
.cart-foot .tot>span{font-size:14px;line-height:1.25;min-width:0}
.cart-foot .tot b{white-space:nowrap}
@keyframes sdpulse{0%{transform:scale(1)}40%{transform:scale(1.04)}100%{transform:scale(1)}}
@media (max-width:899px){.cartbar.bump{animation:sdpulse .35s ease-out}}

/* phone: the owner checks numbers — keep it compact */
@media (max-width:600px){
  .top{padding:8px 12px;gap:8px}
  .top-actions{gap:6px}
  .top-btn{min-height:40px;padding:0 10px;font-size:14px}
  .pill{padding:5px 10px;font-size:12px}
  main.page{padding:14px 12px 32px;gap:12px}
  .grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .card.kpi{padding:12px 14px}
  .card.kpi b{font-size:18px}
}

/* warnings list + terms */
.warn-list h2{font-size:17px}
.warn-item{gap:12px}
.warn-item span{min-width:0;flex:1 1 260px}
.terms h2{font-size:16px;margin-bottom:4px}
.terms p{line-height:1.7}
.copy a{color:inherit}

/* nav badge, help articles */
.nav-badge{margin-inline-start:auto;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:#EF4444;color:#fff;font-size:12px;display:inline-flex;align-items:center;justify-content:center}
a.article-row{display:flex;flex-direction:column;gap:6px;color:inherit;text-decoration:none}
a.article-row:hover{border-color:var(--accent)}
.article-body p{margin:0 0 10px;line-height:1.7}
a.chip{text-decoration:none;color:inherit;display:inline-flex;align-items:center}

/* menu: sections that open to show their pages */
.nav-sec>summary{list-style:none;display:flex;align-items:center;gap:12px;min-height:44px;padding:0 12px;border-radius:10px;color:var(--navtext);font-weight:500;cursor:pointer;user-select:none}
.nav-sec>summary::-webkit-details-marker{display:none}
.nav-sec>summary:hover{background:var(--navhover)}
.nav-sec>summary.here{color:#fff;font-weight:700}
.nav-sec>summary .chev{margin-inline-start:auto;transition:transform .15s;opacity:.8}
.nav-sec[open]>summary{background:var(--navhover)}
.nav-sec[open]>summary .chev{transform:rotate(90deg)}
[dir="rtl"] .nav-sec>summary .chev{transform:scaleX(-1)}
[dir="rtl"] .nav-sec[open]>summary .chev{transform:rotate(90deg)}
.nav-subs{display:flex;flex-direction:column;gap:1px;margin:4px 0 8px;margin-inline-start:22px;padding-inline-start:10px;border-inline-start:2px solid var(--topline)}
.sidenav .nav-subs a{min-height:38px;font-size:14px;padding:0 10px;border-radius:8px}
.sidenav .nav-subs a[aria-current="page"]{box-shadow:none}

/* WhatsApp support button */
.wa-float{position:fixed;bottom:18px;inset-inline-end:18px;z-index:70;display:inline-flex;align-items:center;gap:8px;min-height:52px;padding:0 18px 0 14px;border-radius:999px;background:#128C4A;color:#fff;font-weight:700;text-decoration:none;box-shadow:0 10px 28px rgba(0,0,0,.25)}
.wa-float:hover{background:#0E7A40}
.wa-float:focus-visible{outline:3px solid #60A5FA;outline-offset:3px}
@media (max-width:600px){.wa-float span{display:none}.wa-float{padding:0;width:54px;justify-content:center}}
@media print{.wa-float{display:none}}
.btn.wa{background:#128C4A;border-color:#128C4A;color:#fff}

/* barcode label screen */
.lbl-wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,440px);gap:16px;align-items:start}
.lbl-options{position:sticky;top:12px}
.lbl-rows{display:flex;flex-direction:column;max-height:60vh;overflow:auto}
.lbl-row{display:flex;align-items:center;gap:8px;padding:6px 0;border-bottom:1px solid var(--line)}
.lbl-row .n{flex:1;min-width:0;display:flex;flex-direction:column}
.lbl-row .n b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lbl-row input{width:90px;min-height:40px}
.lbl-show{border:1px solid var(--line);border-radius:12px;padding:12px}
.lbl-show legend{font-weight:700;padding:0 6px}
.lbl-show label.check{min-height:36px}
.lbl-more>summary{cursor:pointer;font-weight:600;min-height:32px}
.lbl-preview{border:1px dashed var(--line2);border-radius:12px;overflow:hidden;background:#E8ECF4}
.lbl-preview iframe{display:block;width:100%;height:200px;border:0}
.grid3{display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:900px){.lbl-wrap{grid-template-columns:1fr}.lbl-options{position:static}.grid3{grid-template-columns:1fr 1fr}}

/* ===== v0.6 design polish: calmer surfaces, clear type scale, easy tables ===== */
:root{--r-card:16px;--shadow:0 1px 2px rgba(15,23,42,.04),0 2px 8px rgba(15,23,42,.05);--shadow-lg:0 12px 32px rgba(15,23,42,.14);--rowhover:#F5F8FD;--thbg:#F3F6FB}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){--shadow:0 1px 2px rgba(0,0,0,.4);--shadow-lg:0 12px 32px rgba(0,0,0,.5);--rowhover:#141E33;--thbg:#0D1525}}
:root[data-theme="dark"]{--shadow:0 1px 2px rgba(0,0,0,.4);--shadow-lg:0 12px 32px rgba(0,0,0,.5);--rowhover:#141E33;--thbg:#0D1525}
body{font-size:15.5px;-webkit-font-smoothing:antialiased}
h1{font-size:25px;font-weight:700;letter-spacing:-.01em}
h2{font-size:17px;font-weight:700}
main.page{max-width:1280px;padding:22px 24px 48px;gap:18px}
.head{align-items:center}
.head h1+p,.head .muted{margin-top:4px}
.card{border-radius:var(--r-card);box-shadow:var(--shadow);padding:20px}
.note-box{border-radius:12px}
.ok-box,.warn-box,.err-box{border-radius:12px;font-weight:600}
/* buttons */
.btn{transition:background-color .15s,border-color .15s,filter .15s,transform .05s;border-radius:11px;letter-spacing:.005em}
.btn:active{transform:translateY(1px)}
.btn.ghost{background:var(--card)}
.btn.ghost:hover{filter:none;border-color:var(--accent);color:var(--accent)}
.btn.alt:hover{filter:none;background:#1A2540}
.btn svg{flex:none}
/* inputs */
input,select,textarea{transition:border-color .15s,box-shadow .15s}
input:hover,select:hover,textarea:hover{border-color:#A9B5CB}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(37,99,235,.18)}
label.check input:focus{box-shadow:none}
/* KPI cards */
.card.kpi{position:relative;padding:16px 18px;display:flex;flex-direction:column;gap:6px;overflow:hidden}
.card.kpi::before{content:"";position:absolute;inset-block:14px;inset-inline-start:0;width:3px;border-radius:0 3px 3px 0;background:var(--accent);opacity:.85}
[dir="rtl"] .card.kpi::before{border-radius:3px 0 0 3px}
.kpi span{font-size:13px;font-weight:600;letter-spacing:.01em}
.kpi b{font-size:22px;font-weight:700;letter-spacing:-.01em}
/* tables */
.table{border-radius:14px;box-shadow:var(--shadow)}
th{background:var(--thbg);font-size:12.5px;letter-spacing:.02em;color:var(--muted);white-space:nowrap;padding-block:12px}
td{padding-block:12px}
tbody tr{transition:background-color .12s}
tbody tr:hover{background:var(--rowhover)}
td .btn.sm{min-height:36px}
th.t-sort{cursor:pointer;user-select:none}
th.t-sort:hover{color:var(--ink)}
th.t-sort::after{content:"";display:inline-block;width:0;height:0;margin-inline-start:6px;vertical-align:middle;border:4px solid transparent;border-top-color:currentColor;opacity:.25;transform:translateY(2px)}
th[aria-sort="ascending"]::after{border-top-color:transparent;border-bottom-color:currentColor;opacity:.9;transform:translateY(-2px)}
th[aria-sort="descending"]::after{opacity:.9}
.t-hide{display:none !important}
.t-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:-6px}
.t-find{flex:1 1 240px;max-width:380px;position:relative;flex-direction:row;align-items:center;gap:0;margin:0}
.t-find svg{position:absolute;inset-inline-start:12px;color:var(--muted);pointer-events:none}
.t-find input{min-height:40px;padding-inline-start:38px;border-radius:10px}
.t-count{white-space:nowrap}
.t-tools{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-inline-start:auto}
.t-size{flex-direction:row;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--muted)}
.t-size select{width:auto;min-height:40px;padding:0 10px}
.t-cols{position:relative}
.t-cols>summary{list-style:none}
.t-cols>summary::-webkit-details-marker{display:none}
.t-menu{position:absolute;top:calc(100% + 6px);inset-inline-end:0;z-index:40;min-width:230px;max-height:60vh;overflow:auto;padding:10px 12px;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;gap:0}
.t-menu p{margin-bottom:4px}
.t-menu label.check{min-height:38px;font-size:14px}
.t-pager{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin-top:-6px}
.t-pager .btn{min-width:40px;padding:0 12px}
.t-pager .btn.cur{background:var(--accent);border-color:var(--accent);color:#fff}
/* phones: each row becomes a small card, label on the left, value on the right */
@media (max-width:640px){
  main.page{padding:14px 12px 32px}
  .t-cards{border:none;background:transparent;box-shadow:none;overflow:visible}
  .t-cards table{min-width:0 !important}
  .t-cards thead{display:none}
  .t-cards tbody,.t-cards tr,.t-cards td{display:block}
  .t-cards tr{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:6px 14px;margin-bottom:10px;box-shadow:var(--shadow)}
  .t-cards tbody tr:hover{background:var(--card)}
  .t-cards td{display:flex;justify-content:space-between;gap:12px;align-items:baseline;padding:7px 0;border-bottom:1px dashed var(--line);text-align:end}
  .t-cards td::before{content:attr(data-label);font-size:12.5px;font-weight:600;color:var(--muted);text-align:start;flex:none;max-width:45%}
  .t-cards td.t-act{justify-content:flex-end;border-bottom:none;padding-top:8px}
  .t-cards td.t-act::before{content:none}
  .t-cards tr td:last-child{border-bottom:none}
  .t-cards td>*{min-width:0}
  .t-find{max-width:none}
  .t-tools{margin-inline-start:0;width:100%}
  .t-tools .btn span{display:none}
}
@media print{.t-bar,.t-pager{display:none !important}}
/* vendor company block */
.vendor{display:flex;flex-direction:column;gap:2px;font-size:13px;color:var(--muted);text-align:center}
.vendor b{color:var(--ink);font-size:14px}
.vendor-card{display:flex;flex-direction:column;gap:3px;font-size:14px;color:var(--muted)}
.vendor-card b{color:var(--ink);font-size:15px}
.vendor-left{text-align:start;margin-top:6px}
.t-v{display:contents}
@media (max-width:640px){.t-cards .t-v{display:block;min-width:0;overflow-wrap:anywhere}}
@media (max-width:640px){
  .t-cards td.t-empty{display:none}
  .t-cards td:first-child{display:block;text-align:start;font-size:15px;padding:8px 0 10px}
  .t-cards td:first-child::before{content:none}
  .t-cards td:first-child [dir="rtl"]{text-align:start}
}
@media (max-width:600px){
  .top{flex-wrap:nowrap;flex-direction:column;align-items:stretch}
  .top-actions{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}
  .top-actions::-webkit-scrollbar{display:none}
  .top-actions>*{flex:none}
}
.card.pos-right{padding:0}
@media (max-width:600px){.top-actions{gap:5px}.top-actions .top-btn{min-height:36px;padding:0 9px;font-size:13px}.top-actions .pill{font-size:11.5px;padding:4px 8px}}
.card.holds-list{padding:10px}
.card.empty{padding:32px 20px}
/* printers & scanner */
.prn-wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,400px);gap:18px;align-items:start}
.prn-side{position:sticky;top:12px}
.prn-preview{border:1px dashed var(--line2);border-radius:12px;overflow:hidden;background:#E8ECF4}
.prn-preview iframe{display:block;width:100%;height:560px;border:0}
.tips{margin:0;padding-inline-start:18px;display:flex;flex-direction:column;gap:8px;color:var(--muted);line-height:1.5}
.logo-box{border:1px solid var(--line);border-radius:12px;padding:8px;background:#fff}
.logo-box img{display:block;max-height:64px;max-width:200px}
@media (max-width:900px){.prn-wrap{grid-template-columns:1fr}.prn-side{position:static}}
/* support view banner */
.support-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px;padding:8px 16px;background:#B45309;color:#fff;font-weight:600;font-size:14px}
.support-bar .btn{background:#fff;color:#7C2D12;min-height:34px}
@media print{.support-bar{display:none}}
/* v0.6.1 top bar quick buttons */
.top-btn.ico{gap:7px;padding:0 12px;position:relative}
.top-quick{position:relative}
.top-quick>summary{list-style:none;cursor:pointer}
.top-quick>summary::-webkit-details-marker{display:none}
.top-menu{position:absolute;top:calc(100% + 8px);inset-inline-end:0;z-index:80;min-width:200px;padding:6px;display:flex;flex-direction:column;box-shadow:var(--shadow-lg)}
.top-menu a{padding:10px 12px;border-radius:8px;color:var(--ink);text-decoration:none;font-weight:600;font-size:14px}
.top-menu a:hover{background:var(--rowhover);color:var(--accent)}
.top-dot{position:absolute;top:4px;inset-inline-end:4px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#EF4444;color:#fff;font-size:11px;display:inline-flex;align-items:center;justify-content:center}
/* sidebar search */
.nav-find{position:relative;flex-direction:row;align-items:center;margin:0 0 10px;gap:0}
.nav-find svg{position:absolute;inset-inline-start:12px;color:var(--navtitle);pointer-events:none}
.nav-find input{min-height:40px;padding-inline-start:40px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid var(--topline);color:#fff;font-size:14px}
.nav-find input::placeholder{color:var(--navtitle)}
.nav-find input:focus{border-color:#60A5FA;box-shadow:0 0 0 3px rgba(96,165,250,.25)}
@media (max-width:600px){.top-btn.ico span:not(.sr){display:none}}
/* v0.6.1 dashboard (SmartDukkan dark blue) */
.dash-hero{background:linear-gradient(120deg,#05070D 0%,#0B1631 45%,#1E3A8A 100%);color:#fff;border-radius:20px;padding:24px 26px;display:flex;flex-direction:column;gap:18px;box-shadow:0 10px 30px rgba(11,22,49,.25);position:relative;overflow:hidden}
.dash-hero::after{content:"";position:absolute;inset-inline-end:-80px;top:-80px;width:280px;height:280px;border-radius:50%;background:radial-gradient(circle,rgba(59,130,246,.35),transparent 70%);pointer-events:none}
.dash-hero-top{display:flex;flex-wrap:wrap;gap:14px;align-items:flex-start;justify-content:space-between;position:relative;z-index:1}
.dash-hero h1{font-size:26px;color:#fff}
.dash-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.dash-chips span{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:999px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);font-size:13px;font-weight:600}
.dash-actions{display:flex;flex-wrap:wrap;gap:8px}
.hbtn{display:inline-flex;align-items:center;gap:7px;min-height:40px;padding:0 14px;border-radius:10px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.22);color:#fff;font-weight:700;font-size:14px;text-decoration:none;cursor:pointer}
.hbtn:hover{background:rgba(255,255,255,.18)}
.dash-actions .hbtn:first-child{background:#2563EB;border-color:#2563EB}
.dash-filter{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;position:relative;z-index:1}
.dash-periods{display:flex;flex-wrap:wrap;gap:6px}
.dash-periods a{padding:7px 12px;border-radius:999px;color:#C9D6F2;text-decoration:none;font-size:13px;font-weight:600;border:1px solid transparent}
.dash-periods a:hover{background:rgba(255,255,255,.08)}
.dash-periods a[aria-current="true"]{background:#fff;color:#0B1631}
.dash-custom{display:flex;align-items:center;gap:6px}
.dash-custom input{width:auto;min-height:38px;background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.22);color:#fff;color-scheme:dark;padding:0 10px}
.dash-range{margin:-6px 2px -8px}
.kgrid{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}
.kcard{display:flex;gap:14px;align-items:flex-start;padding:18px;text-decoration:none;color:inherit;transition:border-color .15s,transform .15s,box-shadow .15s}
a.kcard:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:var(--shadow-lg)}
.kicon{flex:none;width:44px;height:44px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;color:#fff}
.kicon.c1{background:#2563EB}.kicon.c2{background:#1D4ED8}.kicon.c3{background:#D97706}.kicon.c4{background:#475569}
.kicon.c5{background:#059669}.kicon.c6{background:#0EA5E9}.kicon.c7{background:#B45309}.kicon.c8{background:#DC2626}
.ktext{display:flex;flex-direction:column;gap:3px;min-width:0}
.klabel{font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}
.ktext b{font-size:22px;font-variant-numeric:tabular-nums;white-space:nowrap}
.ktext small{color:var(--muted);font-size:12.5px}
.dash-chart{width:100%;height:auto;display:block}
.dash-chart .gl{stroke:var(--line);stroke-width:1}
.dash-chart .ax{fill:var(--muted);font-size:11px;font-family:inherit}
.dash-chart .bar{fill:#3B82F6;opacity:.85}
.dash-chart .bar.now{fill:#1E3A8A;opacity:1}
.dash-chart .bar:hover{opacity:1;fill:#1D4ED8}
@media (max-width:700px){.dash-hero{padding:18px}.dash-hero h1{font-size:21px}.dash-custom{width:100%}.dash-custom input{flex:1}}
.tabs{display:flex;flex-wrap:wrap;gap:4px;padding:6px;background:var(--card);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow)}
.tabs a{padding:9px 16px;border-radius:10px;color:var(--muted);text-decoration:none;font-weight:600;font-size:14px}
.tabs a:hover{color:var(--ink);background:var(--rowhover)}
.tabs a[aria-current="page"]{background:var(--deep2);color:#fff}
.sidenav{flex-basis:250px}
.sidenav a span,.nav-sec>summary span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.kgrid.k5{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}
.seg{display:flex;flex-wrap:wrap;gap:6px}
.seg label{flex-direction:row;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--line2);border-radius:10px;font-weight:600;font-size:13.5px;cursor:pointer;background:var(--card)}
.seg label:has(input:checked){border-color:var(--accent);background:rgba(37,99,235,.08);color:var(--accent)}
.seg input{width:16px;height:16px;min-height:0;accent-color:var(--accent)}
/* plans & prices */
.auth-card.wide{max-width:1120px}
.plans{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));align-items:stretch}
.plan{position:relative;display:flex;flex-direction:column;gap:12px;padding:24px 22px 22px}
.plan.best{border:2px solid var(--accent);box-shadow:0 10px 30px rgba(37,99,235,.15)}
.plan.mine{border:2px solid var(--okfg)}
.plan-flag{position:absolute;top:-12px;inset-inline-start:18px;background:var(--deep2);color:#fff;font-size:12px;font-weight:700;padding:4px 12px;border-radius:999px}
.plan.best .plan-flag{background:var(--accent)}
.plan.mine .plan-flag{background:var(--okfg)}
.plan h3{margin:4px 0 0;font-size:20px}
.plan-price b{font-size:30px;letter-spacing:-.02em;display:block}
.plan-price span{color:var(--muted);font-size:13px;font-weight:600}
.plan-alt{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:14px;color:var(--muted)}
.plan-facts{margin:0;padding:10px 12px;list-style:none;display:flex;flex-direction:column;gap:6px;background:var(--ground);border-radius:10px;font-size:13.5px}
.plan-feat{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px;font-size:14px}
.plan-feat li{position:relative;padding-inline-start:24px}
.plan-feat li::before{content:"";position:absolute;inset-inline-start:2px;top:4px;width:12px;height:7px;border-inline-start:2.5px solid var(--okfg);border-bottom:2.5px solid var(--okfg);transform:rotate(-45deg)}
[dir="rtl"] .plan-feat li::before{transform:rotate(45deg) scaleX(-1)}
.faq dl{margin:0;display:grid;grid-template-columns:minmax(140px,220px) 1fr;gap:10px 18px}
.faq dt{font-weight:700}
.faq dd{margin:0;color:var(--muted);line-height:1.6}
@media (max-width:640px){.faq dl{grid-template-columns:1fr}.faq dd{margin-bottom:6px}}
/* name translator */
.tr-btn{margin-inline-start:8px;border:1px solid var(--line2);background:var(--card);color:var(--accent);border-radius:8px;padding:2px 8px;font-size:12px;font-weight:700;cursor:pointer}
.tr-btn:hover{border-color:var(--accent)}
.tr-note{color:#9A5B00}
/* light / dark switch */
:root[data-theme="dark"]{color-scheme:dark}
:root[data-theme="light"]{color-scheme:light}
.theme-btn{padding:0 11px}
.theme-btn .sun{display:none}
:root[data-theme="dark"] .theme-btn .sun{display:block}
:root[data-theme="dark"] .theme-btn .moon{display:none}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .theme-btn .sun{display:block}:root:not([data-theme="light"]) .theme-btn .moon{display:none}}
/* live demo */
.demo-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px;padding:8px 16px;background:linear-gradient(90deg,#1E3A8A,#2563EB);color:#fff;font-weight:600;font-size:14px}
.demo-bar .btn{background:#fff;color:#1E3A8A;min-height:34px}
.demo-try{width:100%}
@media print{.demo-bar{display:none}}
/* v0.9 — pay and renew, WhatsApp add-on */
ul.ticks{list-style:none;margin:0;padding:0;display:grid;gap:6px}
ul.ticks li{position:relative;padding-inline-start:26px}
ul.ticks li::before{content:"";position:absolute;inset-inline-start:4px;top:.45em;width:11px;height:6px;border-left:2.5px solid var(--green);border-bottom:2.5px solid var(--green);transform:rotate(-45deg)}
.addon-card{border-inline-start:4px solid #128C4A}
ol.paysteps{list-style:none;counter-reset:ps;margin:0;padding:0;display:grid;gap:22px}
ol.paysteps>li{counter-increment:ps;position:relative;padding-inline-start:44px}
ol.paysteps>li::before{content:counter(ps);position:absolute;inset-inline-start:0;top:0;width:30px;height:30px;border-radius:50%;background:var(--accent);color:#fff;font-weight:700;display:grid;place-items:center}
ol.paysteps h3{margin:3px 0 0;font-size:16px}
.pay-total{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 12px;padding:12px 16px;border-radius:12px;background:color-mix(in srgb,var(--accent) 10%,transparent);border:1px solid color-mix(in srgb,var(--accent) 30%,transparent)}
.pay-total b{font-size:24px;font-variant-numeric:tabular-nums}
.pay-total small{flex-basis:100%}
code.iban{font-size:15px;font-weight:600;letter-spacing:.02em;word-break:break-all;flex:1}
.wa-send{display:flex;flex-direction:column;gap:4px}
@media (max-width:600px){ol.paysteps>li{padding-inline-start:0;padding-top:38px}}
.prod em.cond{font-style:normal;font-size:11px;font-weight:700;color:#B45309;background:#FEF3C7;border-radius:6px;padding:1px 6px;align-self:flex-start}
:root[data-theme="dark"] .prod em.cond{background:#3B2A0B;color:#FBBF24}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .prod em.cond{background:#3B2A0B;color:#FBBF24}}
.perm-grid{display:grid;gap:4px 18px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
label.check.perm{align-items:flex-start}
label.check.perm span{display:flex;flex-direction:column;gap:1px;line-height:1.35}
label.check.perm input{margin-top:2px}
.appr-card .appr-what{font-size:18px;font-weight:600;margin:0}
.appr-wait{display:flex;align-items:center;gap:8px}
.spin{width:14px;height:14px;border-radius:50%;border:2px solid var(--line2);border-top-color:var(--accent);animation:sdspin 1s linear infinite;display:inline-block}
@keyframes sdspin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.spin{animation:none}}
.stock-locked input{background:var(--ground);border-style:dashed;pointer-events:none}
dialog.odlg{max-width:520px;width:calc(100% - 32px);border:1px solid var(--line);color:var(--ink);background:var(--card)}
dialog.odlg::backdrop{background:rgba(5,7,13,.55)}
.open-scan input#oscan{font-size:20px;min-height:52px}
.terms-toc ol{margin:0;padding-inline-start:22px;columns:2;column-gap:24px}
.terms-toc li{margin:2px 0;break-inside:avoid}
@media (max-width:640px){.terms-toc ol{columns:1}}
.terms ul{margin:6px 0;padding-inline-start:20px}
.terms li{margin:4px 0}
.terms section{scroll-margin-top:80px}

/* language picker: English / العربية / বাংলা */
/* language dropdown */
.lang-menu{position:relative;display:inline-block}
.lang-menu>summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:6px;user-select:none}
.lang-menu>summary::-webkit-details-marker{display:none}
.lang-menu .lm-caret{font-size:11px;opacity:.7}
.lang-list{position:absolute;inset-inline-start:0;max-width:calc(100vw - 32px);top:calc(100% + 6px);z-index:90;margin:0;padding:6px;list-style:none;min-width:200px;max-height:70vh;overflow-y:auto;background:var(--card,#fff);color:var(--ink,#111);border:1px solid var(--line,#d5dbe8);border-radius:12px;box-shadow:0 12px 32px rgba(0,0,0,.28);display:flex;flex-direction:column;gap:2px}
.lang-menu.end .lang-list{inset-inline-start:auto;inset-inline-end:0}
.lang-list a,.lang-list b,.lang-list .soon{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:9px 12px;border-radius:8px;text-decoration:none;color:inherit;font-weight:500}
.lang-list a:hover,.lang-list a:focus-visible{background:rgba(91,155,255,.16)}
.lang-list b.on{background:var(--accent,#2f6df0);color:#fff}
.lang-list .soon{opacity:.55;cursor:not-allowed}
.lang-list .soon em{font-style:normal;font-size:11px;border:1px solid currentColor;border-radius:999px;padding:1px 8px;white-space:nowrap}
body.land .lang-list{background:#0d1836;color:#e8eefb;border-color:#2b407a}
.top-btn.lang-mini{padding-inline:8px}
html[lang="bn"] body{line-height:1.55}

/* ---------- v0.15 sign-in / landing page ---------- */
body.land{--l-bg:#060b1a;--l-bar:#08102a;--l-card:#0d1836;--l-line:#1f3166;--l-text:#e8eefb;--l-mute:#a9b6d4;--l-acc:#5b9bff;
  display:block;padding:0;gap:0;background:var(--l-bg);color:var(--l-text);align-items:stretch}
body.land a{color:#9ab8ff}
body.land .muted{color:var(--l-mute)}
.land-head,.land-hero,.land-sec,.land-foot{padding-inline:max(16px,env(safe-area-inset-left,0px));}
.land-head{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;padding-block:14px;background:var(--l-bar);border-bottom:1px solid var(--l-line)}
.land-head .brand-row{margin-inline-end:auto}
.land-head .brand-row b{color:var(--l-text)}
.land-head nav{display:flex;flex-wrap:wrap;gap:6px 22px;font-size:15px}
.land-head nav a{color:var(--l-mute);text-decoration:none}
.land-head nav a:hover{color:#fff}
.land-head .btn.ghost,.land-login .btn.ghost,.land-offer .btn.ghost{background:transparent;color:#fff;border:1px solid #3a4f8a}
.land-hero{display:flex;flex-wrap:wrap;gap:36px 48px;padding-block:48px 40px;max-width:1180px;margin-inline:auto;align-items:flex-start}
.land-copy{flex:1 1 440px;min-width:0;display:flex;flex-direction:column;gap:18px}
.land-eyebrow{font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--l-acc);font-weight:600}
.land-copy h1{margin:0;font-size:clamp(28px,5vw,46px);line-height:1.14;text-wrap:balance;color:#fff}
.land-copy p{margin:0;font-size:17px;line-height:1.65;color:var(--l-mute);max-width:560px}
.land-chips{display:flex;flex-wrap:wrap;gap:10px;font-size:14px}
.land-chips span{border:1px solid #223463;border-radius:999px;padding:7px 14px;color:#c6d2ee}
.land-login{flex:0 1 400px;min-width:0;width:100%;box-sizing:border-box;background:var(--l-card);border:1px solid var(--l-line);border-radius:16px;padding:26px;display:flex;flex-direction:column;gap:14px}
.land-login h2{margin:0;font-size:22px;color:#fff}
.land-login label,.land-login .hint{color:var(--l-mute)}
.land-login input{background:#07102a;border-color:#2b407a;color:#fff}
.land-sec{max-width:1180px;margin-inline:auto;padding-block:28px;display:flex;flex-direction:column;gap:18px}
.land-sec h2{margin:0;font-size:26px;color:#fff}
.land-row{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px 16px}
.land-tag{font-size:12px;color:var(--l-mute);border:1px dashed #3a4f8a;border-radius:6px;padding:4px 10px}
.land-note{margin:0;color:var(--l-mute)}
.land-grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.land-grid4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.land-card{background:#0b1530;border:1px solid #1c2c5a;border-radius:12px;padding:22px;display:flex;flex-direction:column;gap:10px;min-width:0;color:var(--l-acc)}
.land-card h3{margin:0;font-size:18px;color:#fff}
.land-card p{margin:0;font-size:15px;line-height:1.55;color:var(--l-mute)}
.land-card.small{padding:16px}.land-card.small h3{font-size:16px}
.land-card.plan{color:var(--l-text);gap:8px}
.land-card.best{border-color:var(--l-acc);box-shadow:0 0 0 1px var(--l-acc) inset}
.land-price b{font-size:30px;color:#fff}.land-price span{margin-inline-start:6px;color:var(--l-mute);font-size:14px}
.land-alt{font-size:14px;color:var(--l-mute)}
.land-facts,.land-feat{margin:0;padding-inline-start:18px;display:flex;flex-direction:column;gap:5px;font-size:14px;color:#c6d2ee}
.land-feat{border-top:1px solid #1c2c5a;padding-top:12px;margin-top:6px}
.land-analysis{display:flex;flex-wrap:wrap;gap:18px}
.land-kpis{flex:1 1 360px;min-width:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.land-kpi{background:#0b1530;border:1px solid #1c2c5a;border-radius:12px;padding:18px;display:flex;flex-direction:column;gap:6px}
.land-kpi span{font-size:14px;color:var(--l-mute)}.land-kpi b{font-size:24px;color:#fff;font-variant-numeric:tabular-nums}
.land-chart{flex:1 1 320px;min-width:0;margin:0;background:#0b1530;border:1px solid #1c2c5a;border-radius:12px;padding:18px;color:var(--l-acc);display:flex;flex-direction:column;gap:10px}
.land-chart figcaption{font-size:14px;color:var(--l-mute)}
.land-chart svg{width:100%;height:150px}
.land-offer{display:flex;flex-wrap:wrap;align-items:center;gap:14px 18px;background:#0d1836;border:1px solid var(--l-line);border-radius:12px;padding:18px 22px}
.land-offer>div{flex:1 1 280px;min-width:0;display:flex;flex-direction:column;gap:4px}
.land-offer span{font-size:14px;color:var(--l-mute)}
.land-foot{background:#08102a;border-top:1px solid var(--l-line);padding-block:28px;margin-top:24px;display:flex;flex-direction:column;align-items:center;gap:10px;color:var(--l-mute)}
.land-foot .vendor{color:var(--l-mute)}.land-foot .vendor b{color:#fff}
@media (max-width:860px){.land-grid3{grid-template-columns:1fr}.land-grid4{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* wordmark: italic Smart + blue DUKKAN, optional small line under it */
.bw{letter-spacing:-.01em;font-weight:900;font-style:italic;white-space:nowrap}
.bw i{font-style:italic;color:#3B82F6;margin-inline-start:0}
.bw em{font-style:normal;font-weight:600;letter-spacing:.04em;margin-inline-start:.45em;opacity:.8}
body.land .bw,header.top .bw,.sidenav .bw,.sa-brand .bw,.sa-side-brand .bw,.pg-brand .bw{font-weight:900;color:#fff}
body.land .bw i,header.top .bw i,.sidenav .bw i,.sa-brand .bw i,.sa-side-brand .bw i,.pg-brand .bw i{color:#60A5FA;font-weight:900}
.bt{display:block;font-style:normal;font-weight:500;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#9FB0D6;margin-top:2px;white-space:nowrap}
.pg-brand>b{display:flex;flex-direction:column;line-height:1.1}
html[lang="ar"] .bt,html[lang="bn"] .bt{letter-spacing:.02em;text-transform:none;font-size:12px}

/* ---------- visitor chat (sign-in page) ---------- */
#vchat{position:fixed;inset-block-end:max(18px,env(safe-area-inset-bottom,0px));inset-inline-end:18px;z-index:80;display:flex;flex-direction:column;align-items:flex-end;gap:10px}
.vc-fab{display:inline-flex;align-items:center;gap:8px;min-height:52px;padding:0 20px 0 16px;border:0;border-radius:999px;background:#2f6df0;color:#fff;font:700 15px inherit;font-family:inherit;cursor:pointer;box-shadow:0 10px 28px rgba(0,0,0,.35)}
.vc-fab:hover{background:#2459cf}.vc-fab:focus-visible,.vc-send:focus-visible,.vc-x:focus-visible{outline:3px solid #9ab8ff;outline-offset:2px}
.vc-panel{width:min(360px,calc(100vw - 32px));max-height:min(520px,calc(100vh - 110px));display:flex;flex-direction:column;background:#0d1836;color:#e8eefb;border:1px solid #2b407a;border-radius:16px;overflow:hidden;box-shadow:0 18px 50px rgba(0,0,0,.5)}
.vc-panel[hidden]{display:none}
.vc-panel header{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;padding:14px 16px;background:#08102a;border-bottom:1px solid #1f3166}
.vc-panel header div{display:flex;flex-direction:column;gap:2px;min-width:0}.vc-panel header small{color:#a9b6d4;font-size:13px;line-height:1.4}
.vc-x{background:transparent;border:0;color:#a9b6d4;cursor:pointer;padding:6px;border-radius:8px}
.vc-log{flex:1;min-height:120px;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:10px}
.vc-m{display:flex;flex-direction:column;gap:3px;max-width:86%}.vc-m small{font-size:11px;color:#8d9bbd}
.vc-m.me{align-self:flex-end;align-items:flex-end}.vc-m.them{align-self:flex-start}.vc-m.sys{align-self:center;max-width:100%}
.vc-t{padding:9px 13px;border-radius:14px;font-size:15px;line-height:1.45;white-space:pre-wrap;overflow-wrap:anywhere}
.vc-m.me .vc-t{background:#2f6df0;color:#fff;border-end-end-radius:4px}
.vc-m.them .vc-t{background:#16244b;color:#e8eefb;border-end-start-radius:4px}
.vc-m.sys .vc-t{background:transparent;color:#a9b6d4;font-size:13px;text-align:center}
.vc-form{display:flex;flex-direction:column;gap:8px;padding:12px;border-top:1px solid #1f3166}
.vc-who{display:grid;grid-template-columns:1fr 1fr;gap:8px}.vc-who[hidden]{display:none}
.vc-form input,.vc-form textarea{font:inherit;font-size:15px;color:#fff;background:#07102a;border:1px solid #2b407a;border-radius:10px;padding:10px 12px;min-width:0;width:100%;box-sizing:border-box}
.vc-form textarea{resize:none;max-height:110px}
.vc-hp{position:absolute!important;inset-inline-start:-9999px;width:1px;height:1px;opacity:0}
.vc-row{display:flex;gap:8px;align-items:flex-end}
.vc-send{flex:none;border:0;border-radius:10px;background:#2f6df0;color:#fff;font:700 15px inherit;font-family:inherit;padding:11px 16px;cursor:pointer}.vc-send:disabled{opacity:.6}
.vc-err{margin:0;color:#ff8f8f;font-size:13px}
@media (max-width:420px){.vc-who{grid-template-columns:1fr}}

/* ---- v0.16.5: blue bar, white plan cards and register page (shared by sign-in, pricing, register) ---- */
body.pg{padding:0;gap:0;align-items:stretch;background:#050b1f linear-gradient(180deg,#0b2a7a 0,#071a4d 340px,#050b1f 700px) no-repeat;color:#e8eefb;--card:#0e1a3d;--ink:#e8eefb;--muted:#a9b8da;--line:#1c2c5a;--line2:#2a3f78;--ground:#071029}
.pg-bar{background:linear-gradient(90deg,#1d4ed8,#1e3a8a);box-shadow:0 2px 14px rgba(0,0,0,.35)}
.pg-bar-in{max-width:1180px;margin:0 auto;padding:12px 20px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}
.pg-brand{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none;font-size:19px}
.pg-nav{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.pg-pill{display:inline-flex;align-items:center;gap:6px;min-height:38px;padding:0 16px;border-radius:999px;font-weight:700;font-size:14px;color:#fff;background:rgba(255,255,255,.16);border:1px solid transparent;text-decoration:none;cursor:pointer;list-style:none}
.pg-pill.yel{background:#facc15;color:#1a1400}
.pg-pill.out{background:transparent;border-color:rgba(255,255,255,.7)}
.pg-pill.on{box-shadow:0 0 0 2px rgba(255,255,255,.55)}
.pg-main{width:100%;max-width:1180px;margin:0 auto;padding:40px 20px 24px;display:flex;flex-direction:column;gap:28px}
.pg-title{text-align:center;display:flex;flex-direction:column;gap:8px}
.pg-title h1{margin:0;font-size:clamp(28px,5vw,46px);line-height:1.1;color:#fff}
.pg-title p{margin:0;font-size:18px;color:#c9d6f5}
.pgp{display:flex;flex-direction:column;gap:26px;align-items:stretch}
.pgp-tog{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap}
.pgp-seg{display:inline-flex;padding:4px;border-radius:999px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2)}
.pgp-seg button{min-height:38px;padding:0 20px;border-radius:999px;border:0;background:transparent;color:#d7e1fa;font-weight:700;font-size:14px;cursor:pointer}
.pgp-seg button.on{background:#fff;color:#0b1220}
.pgp-save{background:#facc15;color:#1a1400;font-weight:800;font-size:12px;padding:7px 12px;border-radius:999px}
.pgp-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;align-items:stretch}
.pgp-card{position:relative;background:#fff;color:#0b1220;border-radius:20px;padding:24px;display:flex;flex-direction:column;gap:8px;border:2px solid transparent;min-width:0}
.pgp-card.best{border-color:#facc15;box-shadow:0 10px 34px rgba(250,204,21,.18)}
.pgp-flag{position:absolute;top:-13px;inset-inline-start:50%;transform:translateX(-50%);background:#facc15;color:#1a1400;font-weight:800;font-size:11px;letter-spacing:.06em;text-transform:uppercase;padding:5px 14px;border-radius:999px;white-space:nowrap}
[dir=rtl] .pgp-flag{transform:translateX(50%)}
.pgp-ico{width:44px;height:44px;border-radius:12px;background:#eef3ff;color:#1d4ed8;display:inline-flex;align-items:center;justify-content:center;margin-bottom:8px}
.pgp-ico svg{width:22px;height:22px}
.pgp-card.best .pgp-ico{background:#fff6cc;color:#a16207}
.pgp-card h3{margin:6px 0 0;font-size:16px;color:#0b1220}
.pgp-price{font-size:34px;font-weight:800;line-height:1.1;color:#0b1220;font-variant-numeric:tabular-nums}
.pgp-price small{font-size:14px;font-weight:700;color:#566178}
.pgp-per{font-size:13px;color:#566178;min-height:18px}
.pgp-desc{margin:8px 0 4px;font-size:13.5px;line-height:1.55;color:#566178}
.pgp-feat{list-style:none;margin:6px 0 10px;padding:0;display:flex;flex-direction:column;gap:9px;font-size:14px;color:#1c2942}
.pgp-feat li{position:relative;padding-inline-start:26px}
.pgp-feat li::before{content:"";position:absolute;inset-inline-start:0;top:2px;width:16px;height:16px;background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2316a34a' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E")}
.pgp-btn{margin-top:auto;display:flex;align-items:center;justify-content:center;min-height:46px;border-radius:10px;border:1px solid #cdd6e6;background:#fff;color:#0b1220;font-weight:800;font-size:14px;text-decoration:none}
.pgp-btn:hover{border-color:#1d4ed8;color:#1d4ed8}
.pgp-btn.yel{background:#facc15;border-color:#facc15;color:#1a1400}
.pgp-btn.yel:hover{color:#1a1400;filter:brightness(.96)}
.pgp-foot{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 34px;color:#d7e1fa;font-size:14px;font-weight:600}
.pg-faq{display:flex;flex-direction:column;gap:14px}
.pg-faq .faq{background:#0e1a3d;border-color:#1c2c5a;color:#e8eefb}
.pg-faq a,.pg-more a{color:#9ec0ff}
.pg-more{text-align:center;color:#c9d6f5}
/* register page */
.pg-reg{width:100%;max-width:1180px;margin:0 auto;padding:40px 20px 24px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,520px);gap:48px;align-items:start}
.pg-hero{display:flex;flex-direction:column;gap:18px;min-width:0}
.pg-badge{align-self:flex-start;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.25);color:#facc15;font-weight:800;font-size:12px;letter-spacing:.07em;text-transform:uppercase;padding:8px 16px;border-radius:999px}
.pg-hero h1{margin:0;font-size:clamp(32px,5vw,52px);line-height:1.08;color:#fff}
.pg-hero>p{margin:0;font-size:18px;line-height:1.6;color:#c9d6f5;max-width:520px}
.pg-bul{list-style:none;margin:6px 0;padding:0;display:flex;flex-direction:column;gap:12px}
.pg-bul li{display:flex;align-items:center;gap:14px;font-size:17px;color:#fff;font-weight:500}
.pg-bul span{width:42px;height:42px;border-radius:10px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);color:#facc15;display:inline-flex;align-items:center;justify-content:center;flex:none}
.pg-bul svg{width:20px;height:20px}
.pg-prev{background:#fff;color:#0b1220;border-radius:18px;padding:18px;display:flex;flex-direction:column;gap:12px;max-width:520px;margin-top:6px}
.pg-prev-k{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.pg-prev-k>div{border:1px solid #dae0eb;border-radius:10px;padding:12px;display:flex;flex-direction:column;gap:4px}
.pg-prev-k small,.pg-prev-n{font-size:12px;color:#566178}
.pg-prev-k b{font-size:20px}
.pg-prev-b{height:90px;display:flex;align-items:flex-end;gap:8px;border:1px solid #dae0eb;border-radius:10px;padding:12px}
.pg-prev-b i{flex:1;background:linear-gradient(#3b82f6,#1d4ed8);border-radius:5px 5px 0 0}
.pg-white{--card:#fff;--ink:#0b1220;--muted:#566178;--line:#dae0eb;--line2:#c5cdda;--ground:#eef1f7;background:#fff;color:#0b1220}
.pg-white label,.pg-white .field>span{color:#0b1220}
.pg-white a{color:#1d4ed8}
.pg-form{border-radius:22px;padding:30px;display:flex;flex-direction:column;gap:12px;min-width:0}
.pg-tag{align-self:flex-start;background:#fff6cc;color:#a16207;font-weight:800;font-size:11px;letter-spacing:.07em;text-transform:uppercase;padding:6px 12px;border-radius:999px}
.pg-h{margin:0;font-size:30px;color:#0b1220}
.pg-form h2:not(.pg-h){font-size:15px;text-transform:uppercase;letter-spacing:.05em;color:#566178;margin:10px 0 0}
.pg-chosen{display:flex;flex-wrap:wrap;align-items:center;gap:10px;background:#eef3ff;border:1px solid #c9d7ff;border-radius:12px;padding:10px 14px;font-size:14px}
.pg-chosen span{color:#566178}.pg-chosen a{margin-inline-start:auto}
.pg-submit{min-height:52px;border-radius:12px;border:0;background:#facc15;color:#1a1400;font-weight:800;font-size:16px;cursor:pointer;box-shadow:0 6px 18px rgba(250,204,21,.35)}
.pg-submit:hover{filter:brightness(.96)}
.pg-or{display:flex;align-items:center;gap:12px;color:#8a94a8;font-size:13px;margin:6px 0;text-align:center}
.pg-or::before,.pg-or::after{content:"";flex:1;height:1px;background:#dae0eb}
body.pg .copy{color:#a9b8da;margin:0;padding:18px 0}
body.pg .vendor{color:#a9b8da}
@media (max-width:1020px){.pgp-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pg-reg{grid-template-columns:1fr;gap:28px}}
@media (max-width:620px){.pgp-grid{grid-template-columns:1fr}.pg-form{padding:20px}.pg-bar-in{padding:10px 14px}.pg-nav{gap:6px}.pg-pill{padding:0 12px}.pgp-card.best{margin-top:10px}}
/* sign-in landing: same bar look + plans block */
body.land .land-head{background:linear-gradient(90deg,#1d4ed8,#1e3a8a)!important;border-bottom:0}
body.land #plans .pgp{margin-top:18px}
body .pgp a.pgp-btn{color:#0b1220;text-decoration:none}
body .pgp a.pgp-btn:hover{color:#1d4ed8}
body .pgp a.pgp-btn.yel,body .pgp a.pgp-btn.yel:hover{color:#1a1400}

/* register: one screen, no scrolling on a PC */
.pg-fm{display:flex;flex-direction:column;gap:10px}
.pg-g2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.pg-g2>*,.pg-fm>*{min-width:0}
.pg-fm input,.pg-fm select{min-height:42px}
.pg-code summary{cursor:pointer;color:#1d4ed8;font-weight:600;font-size:14px}
.pg-code[open] summary{margin-bottom:8px}
.pg-later{margin:0;font-size:12.5px;color:#566178}
.pg-form{gap:8px;padding:24px 28px}
.pg-reg{padding-top:28px;padding-bottom:12px;align-items:center}
.pg-hero{gap:14px}
@media (max-height:860px){.pg-prev{display:none}.pg-hero h1{font-size:clamp(30px,4vw,42px)}.pg-form{padding:18px 24px}.pg-fm{gap:7px}.pg-fm input,.pg-fm select{min-height:38px}.pg-h{font-size:24px}}
@media (max-width:520px){.pg-g2{grid-template-columns:1fr}}

/* ---- one screen, no scrolling: extra content lives in in-page tabs ---- */
.pg-tabs{display:flex;flex-wrap:wrap;gap:4px;margin-inline:auto}
.pg-tabs a{color:#dbe6ff;text-decoration:none;font-weight:600;font-size:14px;padding:8px 12px;border-radius:8px;white-space:nowrap}
.pg-tabs a:hover{color:#fff;background:rgba(255,255,255,.1)}
.pg-tabs a.on{background:rgba(255,255,255,.2);color:#fff}
html.pgjs .pg-panel:not(.on){display:none}
.pg-stage .land-sec,.pg-stage .land-hero{max-width:1180px;margin-inline:auto;width:100%;box-sizing:border-box}
@media (min-width:900px) and (min-height:540px){
  html.pgjs body.pgfit{height:100vh;overflow:hidden;display:flex;flex-direction:column}
  html.pgjs body.pgfit .pg-stage{flex:1;min-height:0;overflow:auto;display:flex;flex-direction:column;justify-content:center}
  html.pgjs body.pgfit .pg-stage>*{flex:none}
  html.pgjs body.pgfit .copy{padding:6px 0;margin:0;font-size:12px}
  html.pgjs body.pgfit .pg-main{padding-top:14px;padding-bottom:10px;gap:14px}
  html.pgjs body.pgfit .land-hero{padding-block:18px}
  html.pgjs body.pgfit .land-sec{padding-block:14px;gap:12px}
  html.pgjs body.pgfit .pgp{gap:14px}
  html.pgjs body.pgfit .pg-title h1{font-size:clamp(24px,3.4vw,36px)}
  html.pgjs body.pgfit .pg-title p{font-size:15px}
  html.pgjs body.pgfit .land-note{display:none}
}
@media (min-width:900px) and (max-height:820px){
  .pgp-desc{display:none}.pgp-ico{display:none}.pgp-card{padding:16px 18px;gap:5px}.pgp-card h3{margin-top:2px}.pgp-price{font-size:28px}.pgp-feat{gap:6px;font-size:13.5px;margin:4px 0 8px}.pgp-btn{min-height:40px}
  .pg-title{gap:4px}
}
.land-foot-in{display:flex;flex-direction:column;gap:12px;color:var(--l-mute)}
@media (max-width:1100px){.pg-tabs{order:3;width:100%;margin:0}}
@media (min-width:900px) and (max-height:1000px){
  .pgp-desc{display:none}.pgp-ico{display:none}.pgp-card{padding:16px 18px;gap:5px}.pgp-card h3{margin-top:2px}.pgp-price{font-size:28px}.pgp-feat{gap:6px;font-size:13.5px;margin:4px 0 8px}.pgp-btn{min-height:40px}
  .pg-title{gap:4px}
  html.pgjs body.pgfit .land-sec .pgp-foot{display:none}
  html.pgjs body.pgfit .land-offer{padding:10px 16px}
  html.pgjs body.pgfit .pg-faq .faq dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 28px}
  html.pgjs body.pgfit .pg-faq .faq dl>div,html.pgjs body.pgfit .pg-faq .faq dt{margin:0}
}
@media (min-width:900px) and (max-height:700px){
  .pgp-card{padding:12px 16px;gap:3px}.pgp-price{font-size:25px}.pgp-feat{gap:4px;font-size:13px;margin:2px 0 6px}.pgp-btn{min-height:36px}.pgp-per{min-height:0}
  .pgp{gap:10px}.pgp-foot{font-size:12.5px}
  html.pgjs body.pgfit .pg-title p{display:none}
  .pg-later{display:none}.pg-hero>p,.pg-bul{display:none}.pg-form{padding:14px 22px;gap:5px}.pg-fm{gap:5px}.pg-fm input,.pg-fm select{min-height:34px}.pg-h{font-size:20px}.pg-tag{display:none}
}
.faq dl{display:block}
.faq dl>div{display:grid;grid-template-columns:minmax(140px,220px) 1fr;gap:4px 18px;margin-bottom:10px}
@media (max-width:640px){.faq dl>div{grid-template-columns:1fr}}
@media (min-width:900px) and (max-height:1000px){
  html.pgjs body.pgfit .pg-faq .faq dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 28px}
  html.pgjs body.pgfit .pg-faq .faq dl>div{display:block;margin:0}
  html.pgjs body.pgfit .pg-faq .faq dd{font-size:13px;line-height:1.45}
  html.pgjs body.pgfit .pg-faq .faq h2{font-size:18px;margin:0}
  html.pgjs body.pgfit .pg-faq .faq{padding:14px 18px;gap:8px}
}
@media (min-width:900px) and (max-height:700px){
  html.pgjs body.pgfit #plans.land-sec>.land-row{display:none}
  html.pgjs body.pgfit .land-offer span{display:none}
  html.pgjs body.pgfit .pg-more,html.pgjs body.pgfit .pg-faq .faq h2{display:none}
  html.pgjs body.pgfit .pg-faq .faq dd{font-size:12.5px;line-height:1.4}
  html.pgjs body.pgfit .pg-faq .faq{padding:10px 16px}
  html.pgjs body.pgfit .pg-faq.pg-main{padding-top:8px}
  .pg-reg{padding:10px 20px 4px;gap:36px}
  .pg-form .muted{display:none}
  .pg-chosen{padding:6px 12px}
  .pg-reg ~ .copy{padding:4px 0;margin:0}
  .pg-submit{min-height:42px}
}
@media (min-width:900px) and (max-height:700px){
  html.pgjs body.pgfit .land-sec{padding-block:4px;gap:8px}
  html.pgjs body.pgfit .pgp{gap:8px}
  html.pgjs body.pgfit .pg-faq.pg-main{padding-top:4px;padding-bottom:2px}
  html.pgjs body.pgfit .pg-faq .faq dl{gap:6px 24px}
}
@media (min-width:900px) and (max-height:700px){
  html.pgjs body.pgfit .pgp-tog{margin-top:0}.pgp-seg button{min-height:32px}.pgp-card.best{margin-top:6px}
}
.pg-bar-in{max-width:1320px;gap:8px 12px}
.pg-tabs a{padding:8px 10px;font-size:13.5px}

/* ---- app pages (PC): the header and menu stay fixed, only the page content scrolls, and spacing is tighter so it scrolls less ---- */
html.fit body{height:100vh;overflow:hidden;display:flex;flex-direction:column}
html.fit .shell{flex:1 1 auto;min-height:0;align-items:stretch}
html.fit .sidenav{overflow-y:auto;min-height:0}
html.fit .nav-inner{position:static}
html.fit main.page{overflow-y:auto;min-height:0;padding:12px 16px 10px;gap:12px;max-width:none;margin:0;width:100%;box-sizing:border-box}
html.fit main.page h1{font-size:22px;margin:0}
html.fit main.page .card{padding:14px}
html.fit main.page .warn-box,html.fit main.page .err-box,html.fit main.page .ok-box{padding:8px 12px;font-size:14px}
/* sub-app sign-in pages use the shop sign-in look */
.pg-app{font-style:normal;margin-inline-start:6px;padding:3px 11px;border-radius:999px;background:rgba(255,255,255,.16);color:#fff;font-size:14px;font-weight:600}
body.pgsub .land-login .err-box{margin:0}
/* PC app shell: page blocks keep their own height (the dashboard card was squeezed to 48px and hid its buttons) */
html.fit main.page>*{flex-shrink:0}
html.fit .dash-hero{padding:16px 20px;gap:12px}
.land-login label.remember{display:flex;align-items:center;gap:9px;font-size:14.5px;cursor:pointer}
.land-login label.remember input{width:18px;height:18px;min-height:0;accent-color:#2563eb;flex:none}

/* ---- v0.19.3: terms, help & news pages ---- */
.lg-page{max-width:1100px;margin:0 auto;width:100%;display:flex;flex-direction:column;gap:16px;padding:18px 16px 40px}
.lg-hero{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:20px;border-radius:20px;background:linear-gradient(135deg,#0b1631,#14275a);color:#fff;border:1px solid #1E2C52;box-shadow:0 10px 30px rgba(5,10,30,.25)}
.lg-hero h1{margin:0;font-size:24px;color:#fff}.lg-hero p{margin:4px 0 0;color:#B8C6E6}.lg-hero .muted{color:#B8C6E6}
.lg-hero-t{flex:1 1 220px;min-width:0}
.lg-ic{width:52px;height:52px;border-radius:15px;background:#2563EB;display:grid;place-items:center;color:#fff;flex:none;box-shadow:0 8px 20px rgba(37,99,235,.45)}
.lg-pill{display:inline-block;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);border-radius:999px;padding:2px 12px;font-size:12px;font-weight:700;color:#fff}
.lg-hero .btn.ghost{color:#fff;background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.4)}
.lg-cols{display:grid;grid-template-columns:260px minmax(0,1fr);gap:18px;align-items:start}
.lg-toc{position:sticky;top:76px;background:var(--card);border:1px solid var(--line);border-radius:16px;padding:14px;max-height:calc(100vh - 100px);overflow:auto}
.lg-toc>b{display:block;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:0 6px 8px}
.lg-toc ol{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}
.lg-toc a{display:flex;gap:10px;align-items:flex-start;padding:8px 10px;border-radius:10px;color:var(--ink);text-decoration:none;font-size:13.5px;line-height:1.35}
.lg-toc a span{flex:none;width:22px;height:22px;border-radius:7px;background:var(--line);display:grid;place-items:center;font-size:11px;font-weight:700;color:var(--muted)}
.lg-toc a:hover{background:var(--line)}
.lg-toc a.on{background:rgba(37,99,235,.14);font-weight:700}.lg-toc a.on span{background:#2563EB;color:#fff}
.lg-body{display:flex;flex-direction:column;gap:14px}
.lg-sec{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:20px 22px;scroll-margin-top:84px}
.lg-sec h2{display:flex;align-items:center;gap:12px;font-size:18px;margin:0 0 10px}
.lg-n{width:32px;height:32px;border-radius:10px;background:#2563EB;color:#fff;display:grid;place-items:center;font-size:14px;font-weight:800;flex:none}
.lg-sec p{line-height:1.8;margin:8px 0}.lg-sec ul{margin:8px 0;padding-inline-start:22px}.lg-sec li{margin:6px 0;line-height:1.7}
.lg-vendor{border-radius:16px}
.lg-back{text-align:center;margin:6px 0}.lg-back a{color:#9DB9FF}
body.lg-bare{display:block}
body.lg-bare .lg-page{padding-top:22px}
body.lg-bare .lg-sec,body.lg-bare .lg-toc{background:#0e1a3d;border-color:#1c2c5a}
@media (max-width:900px){
  .lg-cols{grid-template-columns:1fr}
  .lg-toc{position:static;max-height:none;padding:10px}
  .lg-toc ol{flex-direction:row;overflow-x:auto;gap:6px;padding-bottom:4px}
  .lg-toc a{white-space:nowrap;background:var(--line);border-radius:999px;padding:6px 12px}.lg-toc a span{display:none}
  .lg-hero h1{font-size:20px}.lg-sec{padding:16px}
}
/* help & news */
.lg-arthead{padding:4px 0}.lg-art{padding:24px 26px;line-height:1.85;font-size:16px;max-width:820px}
.lg-art h2,.lg-art h3{margin-top:18px}
.article-row{display:flex;flex-direction:column;gap:6px;text-decoration:none;color:inherit;border-inline-start:4px solid var(--line2);transition:transform .15s,box-shadow .15s}
.article-row:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(0,0,0,.12)}
.article-row h2{margin:2px 0 0;font-size:18px}
.article-row.ar-notice{border-inline-start-color:#F59E0B}.article-row.ar-help{border-inline-start-color:#22C55E}.article-row.ar-news{border-inline-start-color:#2563EB}

/* ---- v0.20.0: invoice card on the POS ---- */
.invdlg{width:min(430px,calc(100vw - 24px));padding:0;overflow:hidden;display:none;flex-direction:column;max-height:calc(100vh - 24px)}
.invdlg[open]{display:flex}
.invbar{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;background:#0B1631;color:#fff}
.invbar .btn{color:#fff;border-color:rgba(255,255,255,.35)}
.invchg{padding:10px 14px;background:rgba(37,99,235,.14);font-size:18px}
.invdlg iframe{border:0;width:100%;height:min(56vh,520px);background:#fff;flex:none}
.invact{padding:12px 14px;gap:10px;flex-wrap:nowrap}.invact .btn{flex:1}
/* ---- Print Station ---- */
.st-main{max-width:760px;margin:0 auto;padding:28px 16px 40px;display:flex;flex-direction:column;gap:18px;width:100%}
.st-card{text-align:center;padding:34px 22px;border-radius:22px;background:linear-gradient(160deg,#0b1631,#14275a);border:1px solid #1E2C52;color:#fff;box-shadow:0 14px 40px rgba(0,0,0,.35)}
.st-card h1{margin:12px 0 6px;font-size:26px;color:#fff}
.st-ic{width:76px;height:76px;margin:0 auto;border-radius:22px;background:#2563EB;display:grid;place-items:center;color:#fff;box-shadow:0 10px 26px rgba(37,99,235,.5)}
.st-card[data-state="print"] .st-ic{background:#16A34A;animation:stp 1s infinite alternate}
@keyframes stp{to{transform:scale(1.08)}}
.st-stat{font-size:22px;font-weight:700;margin:10px 0}.st-sub{color:#B8C6E6;margin:0 0 16px}
.st-count{display:inline-flex;gap:10px;align-items:center;background:rgba(255,255,255,.08);border-radius:999px;padding:6px 16px;color:#B8C6E6}.st-count b{color:#fff;font-size:18px}
.st-help{background:#0e1a3d;border:1px solid #1c2c5a;border-radius:18px;padding:20px 22px;color:#e8eefb}
.st-help h2{font-size:16px;margin:0 0 8px}.st-help h2:not(:first-child){margin-top:18px}.st-help li{margin:6px 0;line-height:1.6}.st-help p{color:#B8C6E6;line-height:1.6}
.invbar .btn.ghost{background:rgba(255,255,255,.12);color:#fff;border-color:rgba(255,255,255,.35);min-width:40px}
.st-help .btn{color:#fff}

/* ---- home: product pictures + partners slider (v0.21.0) ---- */
.land-pics{position:relative;width:100%;max-width:520px;aspect-ratio:520/262;margin-top:6px}
.lp-lap{position:absolute;inset-inline-start:0;top:0;width:82%;border:6px solid #16213f;border-bottom-width:10px;border-radius:12px 12px 4px 4px;overflow:hidden;box-shadow:0 22px 50px rgba(0,0,0,.55);background:#fff}
.lp-lap img,.lp-ph img{display:block;width:100%;height:auto}
.lp-ph{position:absolute;inset-inline-end:0;top:14%;width:23%;border:5px solid #0b1430;border-radius:20px;overflow:hidden;box-shadow:0 22px 50px rgba(0,0,0,.65),0 0 0 1px #2a3a66}
.lp-chip{position:absolute;display:flex;align-items:center;gap:8px;background:#fff;color:#0b1631;border-radius:11px;padding:6px 11px;font-size:12px;font-weight:600;box-shadow:0 10px 26px rgba(0,0,0,.5);white-space:nowrap}
.lp-chip i{font-style:normal;width:20px;height:20px;border-radius:6px;background:#e0eaff;color:#2563eb;display:grid;place-items:center;font-size:12px}
.lp-chip.c1{inset-inline-start:-6px;bottom:-4px}.lp-chip.c2{inset-inline-start:46%;bottom:-14px}
.land-partners{flex:1 0 100%;display:flex;align-items:center;gap:16px;border-top:1px solid #16224a;padding-top:12px;min-height:60px}
.lpt-label{flex:none;font-size:11px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:#8fa2cf}
.lpt-slides{flex:1;min-width:0;position:relative;display:grid}
.lpt-slide{grid-area:1/1;display:flex;align-items:center;gap:12px;min-width:0;opacity:0;visibility:hidden;transition:opacity .45s}
.lpt-slide.on{opacity:1;visibility:visible}
.lpt-logo{width:42px;height:42px;border-radius:11px;background:#fff;object-fit:contain;flex:none}
.lpt-ini{display:grid;place-items:center;color:#0b1631;font:800 18px Poppins,Inter,sans-serif}
.lpt-txt{display:flex;flex-direction:column;min-width:0;flex:1}
.lpt-txt b{color:#fff;font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lpt-txt small{color:var(--l-mute);font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lpt-acts{display:flex;gap:6px;flex:none}
.lpt-acts a{display:inline-flex;align-items:center;gap:6px;padding:7px 11px;border-radius:9px;font-size:12.5px;font-weight:600;color:#fff;text-decoration:none;border:1px solid #2a3a66;background:transparent}
.lpt-acts a:hover{background:rgba(255,255,255,.1)}
.lpt-acts .lpt-call{background:#2563eb;border-color:#2563eb}.lpt-acts .lpt-wa{background:#16a34a;border-color:#16a34a}
.lpt-dots{display:flex;gap:5px;flex:none}
.lpt-dots button{width:7px;height:7px;min-height:0;padding:0;border:0;border-radius:9px;background:#2a3a66;cursor:pointer;transition:width .25s,background .25s}
.lpt-dots button.on{width:20px;background:#60a5fa}
@media (max-width:899px){
  .land-pics{max-width:420px}
  .land-partners{flex-wrap:wrap;gap:10px}
  .lpt-slides{flex:1 0 100%;order:3}
  .lpt-slide{flex-wrap:wrap}
  .lpt-txt{flex:1 1 60%}
  .lpt-acts{flex:1 0 100%}
  .lpt-acts a{flex:1;justify-content:center}
}
@media (min-width:900px) and (max-height:820px){
  .land-pics{max-width:380px;margin-top:0}
  html.pgjs body.pgfit .land-copy{gap:12px}
  html.pgjs body.pgfit .land-copy p{font-size:15.5px;line-height:1.5}
  html.pgjs body.pgfit .land-copy h1{font-size:clamp(26px,3.3vw,40px)}
  html.pgjs body.pgfit .land-login{gap:10px;padding:20px}
  html.pgjs body.pgfit .land-hero{gap:18px 48px;padding-block:8px}
  html.pgjs body.pgfit .land-partners{padding-top:8px;min-height:50px}
}
@media (min-width:900px) and (max-height:760px){
  html.pgjs body.pgfit .land-chips{display:none}
  .lp-chip{display:none}
  .land-pics{max-width:340px}
}
@media (max-width:560px){.lp-chip{display:none}.land-pics{margin-bottom:6px}}

/* cash counting helper */
.notes{padding:10px;margin:0}
.notes-g{display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:8px;margin:10px 0}
.notes-g label{display:flex;flex-direction:column;gap:2px;font-size:12px}
.notes-g label span{font-weight:700}
.notes-t{display:flex;justify-content:space-between;align-items:center;gap:8px}
