/* Katalog — app shell */
a.btn{text-decoration:none;color:inherit}a.btn.pri{color:#fff}
:root{
  --bg:#F4F5F8;--panel:#FFFFFF;--fg:#14161B;--mut:#636A79;--ln:#E1E4EA;--ln2:#CDD2DB;--soft:#F7F8FA;
  --ac:#1F4FE0;--ac-soft:#E8EEFE;--ok:#16794C;--ok-soft:#E3F4EA;--warn:#A05A00;--warn-soft:#FDF1DD;--bad:#B4231B;--bad-soft:#FBE6E4;
  --r:12px;--f:'IBM Plex Sans Arabic',system-ui,-apple-system,'Segoe UI',sans-serif;color-scheme:light}
*{box-sizing:border-box}
html,body{margin:0;height:100%}
body{background:var(--bg);color:var(--fg);font:15px/1.6 var(--f);direction:rtl;-webkit-text-size-adjust:100%}
button,input,select,textarea{font:inherit;color:inherit}
[hidden]{display:none!important}
a{color:var(--ac)}
:focus-visible{outline:2px solid var(--ac);outline-offset:2px}
.nm{direction:ltr;unicode-bidi:isolate;font-variant-numeric:tabular-nums}

/* shell */
.shell{display:grid;grid-template-columns:232px 1fr;min-height:100vh}
.side{background:var(--panel);border-inline-end:1px solid var(--ln);padding:18px 14px;display:flex;flex-direction:column;gap:4px;position:sticky;top:0;height:100vh}
.brand{display:flex;align-items:center;gap:10px;padding:4px 8px 18px;font-weight:600;font-size:17px}
.brand svg{flex:none}
.nav{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;border:0;background:none;cursor:pointer;color:var(--mut);text-align:right;width:100%;font-size:15px}
.nav svg{width:20px;height:20px;flex:none}
.nav:hover{background:var(--soft);color:var(--fg)}
.nav[aria-current="page"]{background:var(--ac-soft);color:var(--ac);font-weight:500}
.side .sp{flex:1}
.lic-badge{font-size:12.5px;color:var(--mut);padding:10px 12px;border-top:1px solid var(--ln);line-height:1.5}
.lic-badge b{display:block;color:var(--fg);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lic-badge .trial{color:var(--warn);font-weight:500}
.main{min-width:0;padding:26px 32px 60px}
.ph{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:20px}
.ph h1{font-size:24px;font-weight:600;margin:0}
.ph .sp{flex:1}
.ph .sub{color:var(--mut);font-size:14px;width:100%;margin-top:-6px}

/* controls */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:40px;padding:0 16px;border-radius:10px;border:1px solid var(--ln2);background:var(--panel);cursor:pointer;font-weight:500;white-space:nowrap;font-size:14.5px}
.btn:hover{border-color:var(--fg)}
.btn svg{width:18px;height:18px}
.btn.pri{background:var(--ac);border-color:var(--ac);color:#fff}
.btn.pri:hover{filter:brightness(1.08)}
.btn.ghost{border-color:transparent;background:transparent}
.btn.ghost:hover{background:var(--soft)}
.btn.sm{height:34px;padding:0 12px;font-size:13.5px}
.btn.danger{color:var(--bad)}
.btn[disabled]{opacity:.5;cursor:default}
.ib{width:34px;height:34px;border-radius:9px;border:1px solid var(--ln);background:var(--panel);display:inline-grid;place-items:center;cursor:pointer;color:var(--mut);padding:0}
.ib:hover{color:var(--fg);border-color:var(--ln2)}
.ib svg{width:16px;height:16px}
label.f{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--mut);min-width:0}
input.i,select.i,textarea.i{width:100%;border:1px solid var(--ln2);background:var(--panel);border-radius:10px;padding:9px 12px;font-size:15px;color:var(--fg);min-height:42px}
textarea.i{resize:vertical;line-height:1.7}
input.i:focus,select.i:focus,textarea.i:focus{border-color:var(--ac);outline:none;box-shadow:0 0 0 3px var(--ac-soft)}
input.i[dir=ltr]{text-align:left}
.g2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.g3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.chk{display:inline-flex;align-items:center;gap:8px;font-size:14px;color:var(--fg);cursor:pointer;user-select:none}
.chk input{width:18px;height:18px;accent-color:var(--ac)}
.seg{display:inline-flex;background:var(--soft);border:1px solid var(--ln);border-radius:10px;padding:3px;gap:2px}
.seg button{border:0;background:transparent;padding:6px 14px;border-radius:8px;cursor:pointer;color:var(--mut);font-size:14px}
.seg button[aria-pressed="true"]{background:var(--panel);color:var(--fg);box-shadow:0 1px 2px rgba(0,0,0,.08);font-weight:500}

/* cards */
.card{background:var(--panel);border:1px solid var(--ln);border-radius:16px;padding:20px}
.card h2{font-size:16px;font-weight:600;margin:0 0 14px;display:flex;align-items:center;gap:10px}
.card h2 small{font-weight:400;color:var(--mut);font-size:13px}
.card h2 .sp{flex:1}
.stack{display:flex;flex-direction:column;gap:14px}
.banner{display:flex;align-items:center;gap:14px;border-radius:14px;padding:14px 18px;margin-bottom:16px;font-size:14px;flex-wrap:wrap}
.banner b{font-weight:600}
.banner .sp{flex:1}
.banner.warn{background:var(--warn-soft);color:#5c3a00}
.banner.info{background:var(--ac-soft);color:#14306f}

/* home */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}
.stat{background:var(--panel);border:1px solid var(--ln);border-radius:16px;padding:16px 18px}
.stat span{font-size:13px;color:var(--mut)}
.stat b{display:block;font-size:24px;font-weight:600;margin-top:4px}
.stat b small{font-size:13px;font-weight:400;color:var(--mut);margin-inline-start:4px}
.quick{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;margin-bottom:18px}
.qa{display:flex;align-items:center;gap:12px;background:var(--panel);border:1px solid var(--ln);border-radius:16px;padding:14px 16px;cursor:pointer;text-align:right;width:100%}
.qa:hover{border-color:var(--ac)}
.qa i{width:42px;height:42px;border-radius:12px;background:var(--ac-soft);color:var(--ac);display:grid;place-items:center;flex:none}
.qa i svg{width:22px;height:22px}
.qa b{display:block;font-size:15px;font-weight:600}
.qa span{line-height:1.4}
.qa span{font-size:13px;color:var(--mut)}

/* lists */
.list{display:flex;flex-direction:column}
.row{display:grid;grid-template-columns:110px 150px 1fr 110px 130px 120px;gap:12px;align-items:center;padding:12px 14px;border-bottom:1px solid var(--ln);cursor:pointer;background:none;border-inline:0;border-top:0;text-align:right;width:100%;font-size:14px}
.row:hover{background:var(--soft)}
.row .cl{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.row .mut{color:var(--mut);font-size:13px}
.row .amt{text-align:left;font-weight:600}
.lhead{display:grid;grid-template-columns:110px 150px 1fr 110px 130px 120px;gap:12px;padding:0 14px 8px;font-size:12.5px;color:var(--mut);border-bottom:1px solid var(--ln2)}
.lhead span:nth-child(5){text-align:left}
.chip{display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 10px;border-radius:999px;font-size:12.5px;font-weight:500;background:var(--soft);color:var(--mut);white-space:nowrap;justify-self:start}
.chip.t-quote{background:#EEF0FF;color:#3B3FB5}.chip.t-invoice{background:#E7F3F2;color:#0F6E6A}.chip.t-receipt{background:#E3F4EA;color:#16794C}.chip.t-payment{background:#FBEFE6;color:#9A4512}.chip.t-handover{background:#F1ECFA;color:#5B3BA0}
.chip.s-issued,.chip.s-signed{background:var(--ok-soft);color:var(--ok)}
.chip.s-draft{background:#F0F1F4;color:#5B6170}.chip.s-sent{background:var(--ac-soft);color:var(--ac)}
.chip.s-accepted,.chip.s-paid{background:var(--ok-soft);color:var(--ok)}.chip.s-partial{background:var(--warn-soft);color:var(--warn)}
.chip.s-rejected,.chip.s-void{background:var(--bad-soft);color:var(--bad)}
.filters{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:12px}
.filters .i{width:auto;min-width:160px}
.filters input.i{flex:1;min-width:200px}
.empty{padding:40px 20px;text-align:center;color:var(--mut)}
.empty b{display:block;color:var(--fg);font-size:16px;margin-bottom:6px}
.crow{display:grid;grid-template-columns:1fr 160px 180px 90px;gap:12px;align-items:center;padding:12px 14px;border-bottom:1px solid var(--ln)}
.crow b{font-weight:500}.crow .mut{color:var(--mut);font-size:13px}
.crow .acts{display:flex;gap:6px;justify-content:flex-end}

/* editor */
.ed{display:grid;grid-template-columns:minmax(380px,520px) 1fr;gap:22px;align-items:start}
.ed>*{min-width:0}
.ed-form{display:flex;flex-direction:column;gap:14px}
.ed-prev{position:sticky;top:16px}
.prev-wrap{background:#E6E8EE;border-radius:16px;padding:18px;overflow:auto;max-height:calc(100vh - 110px)}
.prev-pages{display:flex;flex-direction:column;align-items:center;gap:16px}
.prev-pages .sc{box-shadow:0 1px 3px rgba(0,0,0,.12);background:#fff;overflow:hidden;flex:none;direction:ltr}
.prev-pages .sc>.pg{transform-origin:0 0}
.prev-meta{display:flex;justify-content:space-between;font-size:12.5px;color:var(--mut);margin-bottom:10px}
.item{border:1px solid var(--ln);border-radius:12px;padding:12px;background:var(--soft);display:flex;flex-direction:column;gap:8px}
.item .ih{display:flex;align-items:center;gap:6px;font-size:12.5px;color:var(--mut)}
.item .ih .sp{flex:1}
.item .q3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}
.item .amtline{display:flex;justify-content:space-between;font-size:13px;color:var(--mut)}
.item .amtline b{color:var(--fg)}
.sumbox{background:var(--ac-soft);border-radius:12px;padding:12px 14px;display:flex;flex-direction:column;gap:4px;font-size:14px}
.sumbox div{display:flex;justify-content:space-between}
.sumbox .gt{font-size:18px;font-weight:600;border-top:1px solid rgba(31,79,224,.2);padding-top:6px;margin-top:4px}
.edbar{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.saved{font-size:12.5px;color:var(--mut)}
.mtabs{display:none}

/* settings */
.set{display:grid;grid-template-columns:220px 1fr;gap:22px;align-items:start}
.set-nav{display:flex;flex-direction:column;gap:2px;position:sticky;top:16px}
.set-nav .nav{font-size:14px;padding:9px 12px}
.up{display:flex;flex-direction:column;gap:8px}
.up .box{border:1.5px dashed var(--ln2);border-radius:14px;height:130px;display:grid;place-items:center;background:var(--soft);cursor:pointer;position:relative;overflow:hidden}
.up .box:hover{border-color:var(--ac)}
.up .box img{max-width:85%;max-height:100px;object-fit:contain}
.up .box .ph2{display:flex;flex-direction:column;align-items:center;gap:6px;color:var(--mut);font-size:13px}
.up .box .ph2 svg{width:26px;height:26px}
.up .row2{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:var(--mut)}
.swatches{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.sw{width:38px;height:38px;border-radius:50%;border:3px solid #fff;outline:1.5px solid var(--ln2);cursor:pointer;padding:0}
.sw[aria-pressed="true"]{outline:2.5px solid var(--fg)}
.sw-pick{position:relative;width:38px;height:38px;border-radius:50%;overflow:hidden;outline:1.5px solid var(--ln2);background:conic-gradient(#e53935,#fdd835,#43a047,#1e88e5,#8e24aa,#e53935)}
.sw-pick input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}
.styles{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.sty{border:1.5px solid var(--ln);border-radius:12px;padding:0 0 8px;cursor:pointer;background:var(--panel);text-align:center;font-size:13.5px;overflow:hidden}
.sty .th{height:150px;direction:ltr;overflow:hidden;background:#fff;border-bottom:1px solid var(--ln);position:relative}
.sty .th .pg{transform:scale(.19);transform-origin:top right;position:absolute;top:0;right:0;pointer-events:none}
.sty[aria-pressed="true"]{border:2.5px solid var(--ac);color:var(--ac);font-weight:600}
.sty span{display:block;margin-top:6px}
.fonts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.fnt{border:1.5px solid var(--ln);border-radius:12px;padding:12px;cursor:pointer;background:var(--panel);text-align:right}
.fnt b{display:block;font-size:20px;font-weight:600}
.fnt span{font-size:12px;color:var(--mut)}
.fnt[aria-pressed="true"]{border:2.5px solid var(--ac)}
.hint{font-size:13px;color:var(--mut);line-height:1.7}

/* modal + wizard */
.ov{position:fixed;inset:0;background:rgba(20,22,27,.45);display:grid;place-items:center;z-index:50;padding:16px}
.modal{background:var(--panel);border-radius:18px;width:min(520px,100%);max-height:calc(100vh - 32px);overflow:auto;padding:22px}
.modal h3{margin:0 0 6px;font-size:18px}
.modal .acts{display:flex;gap:8px;justify-content:flex-start;margin-top:18px;flex-wrap:wrap}
.wz{position:fixed;inset:0;background:var(--bg);z-index:40;display:grid;grid-template-columns:minmax(420px,560px) 1fr;overflow:auto}
.wz-l{background:var(--panel);border-inline-end:1px solid var(--ln);padding:34px 40px;display:flex;flex-direction:column;gap:18px;min-height:100vh}
.wz-r{padding:30px;display:flex;flex-direction:column;align-items:center;gap:12px}
.wz-r .lbl{font-size:13px;color:var(--mut)}
.steps{display:flex;gap:6px}
.steps i{flex:1;height:5px;border-radius:9px;background:var(--ln)}
.steps i.on{background:var(--ac)}
.wz h2{font-size:24px;margin:0}
.wz .lead{color:var(--mut);margin:0}
.wz-acts{display:flex;gap:10px;margin-top:auto;padding-top:10px;align-items:center}
.wz-acts .sp{flex:1}
.welcome{max-width:560px;margin:auto;text-align:center;display:flex;flex-direction:column;gap:16px;align-items:center;padding:40px 20px}
.welcome h1{font-size:34px;margin:0}
.welcome p{color:var(--mut);font-size:16px;margin:0}
.welcome .btns{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}

.toast{position:fixed;bottom:calc(22px + var(--tb,0px));left:50%;transform:translate(-50%,20px);background:var(--fg);color:#fff;padding:10px 18px;border-radius:12px;font-size:14px;opacity:0;transition:.2s;pointer-events:none;z-index:99}
.toast.on{opacity:1;transform:translate(-50%,0)}
.render-host{position:fixed;left:-10000px;top:0}

/* responsive */
@media (max-width:1100px){
  .ed{grid-template-columns:1fr}
  .ed-prev{position:static}
  .mtabs{display:flex;margin-bottom:12px}
  .ed[data-tab="form"] .ed-prev{display:none}
  .ed[data-tab="prev"] .ed-form{display:none}
  .stats{grid-template-columns:repeat(2,1fr)}
  .wz{grid-template-columns:1fr}
  .wz-r{display:none}
}
@media (max-width:800px){
  .shell{grid-template-columns:1fr}
  .side{position:fixed;bottom:0;top:auto;height:auto;width:100%;flex-direction:row;z-index:30;padding:6px 8px calc(6px + env(safe-area-inset-bottom));border-inline-end:0;border-top:1px solid var(--ln);justify-content:space-around}
  .side .brand,.side .sp,.lic-badge{display:none}
  .nav{flex-direction:column;gap:2px;font-size:11px;padding:6px 4px;width:auto;flex:1;text-align:center}
  .main{padding:16px 16px 96px}
  :root{--tb:72px}
  .row{grid-template-columns:1fr auto;grid-template-areas:"cl amt" "no st";row-gap:4px}
  .row>*:nth-child(1),.row>*:nth-child(4){display:none}
  .row .no{grid-area:no}.row .cl{grid-area:cl}.row .amt{grid-area:amt}.row .st{grid-area:st;justify-self:end}
  .lhead{display:none}
  .crow{grid-template-columns:1fr auto}.crow>.mut{display:none}
  .set{grid-template-columns:1fr}.set-nav{flex-direction:row;overflow:auto;position:static}
  .set-nav .nav{flex-direction:row;font-size:13px;white-space:nowrap;flex:none}
  .g3,.styles,.fonts{grid-template-columns:1fr 1fr}
  .quick{grid-template-columns:1fr}
  .wz-l{padding:22px 18px;min-height:100vh}
}

.bizs{display:grid;grid-template-columns:1fr;gap:10px}
.biz{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:14px;align-items:center;text-align:right;border:1.5px solid var(--ln);border-radius:14px;padding:14px 16px;background:var(--panel);cursor:pointer}
.biz i{grid-row:span 2;width:44px;height:44px;border-radius:12px;background:var(--soft);display:grid;place-items:center;color:var(--mut)}
.biz b{font-size:16px;font-weight:600}.biz span{font-size:13px;color:var(--mut)}
.biz:hover{border-color:var(--ln2)}
.biz[aria-pressed="true"]{border:2px solid var(--ac);background:var(--ac-soft)}.biz[aria-pressed="true"] i{background:var(--ac);color:#fff}

/* ===== cloud ===== */
.auth{min-height:100vh;display:grid;place-items:center;padding:24px 16px}
.auth-card{width:min(420px,100%);background:var(--panel);border:1px solid var(--ln);border-radius:20px;padding:32px 28px;display:flex;flex-direction:column;gap:12px;text-align:center;align-items:center}
.auth-card h1{margin:4px 0 0;font-size:26px}.auth-card h1 span{font-weight:300;color:var(--mut)}
.auth-card form{width:100%;text-align:right;margin-top:6px}
.auth-card .btn.pri{height:46px;width:100%;font-size:16px}
.auth-err{color:var(--bad);font-size:13.5px;min-height:20px}
.auth-sw{margin:0;font-size:14px;color:var(--mut)}.auth-beta{margin:0;font-size:12px}
.stack{display:flex;flex-direction:column;gap:12px}
.nav{position:relative}
.nav .sh{display:none}.nav b{font-weight:inherit}
.badge{font-style:normal;min-width:20px;height:20px;border-radius:10px;background:var(--bad);color:#fff;font-size:11.5px;font-weight:600;display:inline-grid;place-items:center;padding:0 6px;margin-inline-start:auto}
.lic-badge .nm{display:block;font-size:12px;overflow:hidden;text-overflow:ellipsis}
.lic-badge a{font-size:12.5px}
.sync{font-size:12px;margin:6px 0 4px;display:flex;align-items:center;gap:6px}
.sync::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--ok)}
.sync[data-s=busy]::before{background:var(--warn)}.sync[data-s=err]{color:var(--bad)}.sync[data-s=err]::before{background:var(--bad)}
.i.ro{border:1px solid var(--ln);background:var(--soft);border-radius:10px;padding:9px 12px;min-height:42px;color:var(--fg);font-size:15px}
div.f{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--mut);min-width:0}
select.i.sm{min-height:34px;height:34px;padding:4px 10px;font-size:13.5px;width:auto}
.lib-t{display:flex;align-items:center;gap:12px;min-width:0}
.lib-img{width:44px;height:44px;border-radius:10px;object-fit:cover;background:var(--soft);border:1px solid var(--ln);flex:none}
.cat-box{border:1px solid var(--ln);background:var(--soft);border-radius:14px;padding:14px;display:flex;flex-direction:column;gap:12px}
.img-pick{display:flex;align-items:center;gap:8px}
.img-pick .box{width:96px;height:72px;border:1.5px dashed var(--ln2);border-radius:12px;background:var(--panel);display:grid;place-items:center;cursor:pointer;overflow:hidden;padding:0}
.img-pick .box img{width:100%;height:100%;object-fit:cover}
.img-pick .ph2{display:flex;flex-direction:column;align-items:center;font-size:11.5px;color:var(--mut)}.img-pick .ph2 svg{width:20px;height:20px}
.tbl-wrap{overflow:auto}.tbl{width:100%;border-collapse:collapse;font-size:13.5px}
.tbl th{text-align:right;font-weight:500;color:var(--mut);font-size:12.5px;padding:8px 10px;border-bottom:1px solid var(--ln2);white-space:nowrap}
.tbl td{padding:9px 10px;border-bottom:1px solid var(--ln);white-space:nowrap}
/* orders */
.orders{display:flex;flex-direction:column;gap:12px}
.ord{display:flex;flex-direction:column;gap:14px;padding:18px}
.ord.fresh{border-color:var(--ac);box-shadow:0 0 0 3px var(--ac-soft)}
.ord-h{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ord-h .sp{flex:1}.ord-h b{font-size:16px}
.ord-b{display:grid;grid-template-columns:minmax(180px,1fr) 1.6fr auto;gap:18px;align-items:start}
.ord-note{margin-top:8px;background:var(--soft);border-radius:10px;padding:8px 12px;font-size:13.5px;color:var(--fg)}
.ord-items{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;font-size:14px}
.ord-items li{display:grid;grid-template-columns:1fr 60px 110px;gap:10px}.ord-items li>:last-child{text-align:left}
.ord-t{text-align:left;display:flex;flex-direction:column;gap:2px;font-size:13px}.ord-t b{font-size:18px}
.ord-a{display:flex;gap:8px;flex-wrap:wrap;align-items:center;border-top:1px solid var(--ln);padding-top:14px}.ord-a .sp{flex:1}
.ord-a .btn svg{width:16px;height:16px}
/* catalog builder */
.catb{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:20px;align-items:start}
.catb-prev{position:sticky;top:20px}
.phone{position:relative;width:390px;height:780px;border:10px solid #14161B;border-radius:44px;overflow:hidden;background:#fff;margin-inline:auto}
.phone iframe{width:100%;height:100%;border:0;display:block}
.slug{display:flex;align-items:center;gap:8px;border:1px solid var(--ln2);border-radius:10px;padding:0 0 0 4px;direction:ltr;background:var(--soft)}
.slug>span{padding-left:12px;color:var(--mut);font-size:14px;white-space:nowrap}
.slug input.i{border:0;border-radius:0;padding-left:0;background:var(--panel);box-shadow:none!important;min-width:0}
.slug .btn{height:34px}
.share-row{display:flex;gap:8px}.share-row input{flex:1;min-width:0}
.chk.big{align-items:flex-start;border:1px solid var(--ln);border-radius:12px;padding:12px 14px}
.chk.big span{display:flex;flex-direction:column}.chk.big small{color:var(--mut);font-size:12.5px}.chk.big input{margin-top:3px}
.stat-in{display:flex;flex-direction:column;gap:6px}.stat-in input:first-child{font-weight:600;text-align:center}
.cat-row{grid-template-columns:auto auto 1fr auto!important;cursor:pointer}
.cat-row input{width:18px;height:18px;accent-color:var(--ac)}
/* quick sale */
.modal.wide{width:min(1040px,100%);padding:20px}
.qs-h{display:flex;align-items:center;gap:8px;margin-bottom:12px}.qs-h .sp{flex:1}.qs-h h3{margin:0}
.qs{display:grid;grid-template-columns:1fr 340px;gap:18px}
.qs-l{display:flex;flex-direction:column;gap:12px;min-width:0}
.qs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;max-height:60vh;overflow:auto;padding:2px}
.qs-it{position:relative;display:flex;flex-direction:column;gap:4px;align-items:stretch;text-align:right;border:1.5px solid var(--ln);border-radius:14px;padding:10px;background:var(--panel);cursor:pointer;font-size:13.5px}
.qs-it:hover{border-color:var(--ac)}.qs-it.on{border-color:var(--ac);background:var(--ac-soft)}.qs-it[disabled]{opacity:.45;cursor:default}
.qs-it img,.qs-it i{width:100%;aspect-ratio:4/3;border-radius:10px;object-fit:cover;background:var(--soft);display:grid;place-items:center;color:var(--mut)}
.qs-it b{font-weight:500;line-height:1.4}.qs-it span{font-weight:600}.qs-it small{color:var(--mut);font-size:12px}
.qs-it em{position:absolute;top:6px;left:6px;font-style:normal;min-width:26px;height:26px;border-radius:13px;background:var(--ac);color:#fff;display:grid;place-items:center;font-weight:600;font-size:13px}
.qs-r{display:flex;flex-direction:column;gap:12px;background:var(--soft);border-radius:14px;padding:14px}
.qs-cart{display:flex;flex-direction:column;gap:8px;max-height:30vh;overflow:auto}
.qs-li{display:grid;grid-template-columns:1fr auto 80px;gap:8px;align-items:center;font-size:13.5px}.qs-li>:last-child{text-align:left}
.qs-step{display:inline-flex;align-items:center;gap:6px}.qs-step .ib{width:28px;height:28px;font-size:16px}
.qs-r .btn.pri{height:46px}
.qa.qsale i{background:var(--ac);color:#fff}
@media (max-width:1100px){.catb{grid-template-columns:1fr}.catb-prev{display:none}.ord-b{grid-template-columns:1fr}.ord-t{text-align:right}}
@media (max-width:800px){
  .nav{font-size:10px;padding:6px 1px;white-space:nowrap}.nav .lg{display:none}.nav .sh{display:inline}.nav svg{width:19px;height:19px}
  .badge{position:absolute;top:0;left:calc(50% - 22px);min-width:17px;height:17px;font-size:10px;padding:0 4px}
  .qs{grid-template-columns:1fr}.qs-grid{max-height:38vh;grid-template-columns:repeat(2,1fr)}
  .ord-items li{grid-template-columns:1fr 44px 90px}
  .share-row{flex-wrap:wrap}
}
