/* ==========================================================================
   DAKO — dark studio layer (layout inspired by hyper3d.ai, Dako brand colors)
   Loaded after style.css and design.css. Rules are scoped to body.lab so they
   win over the older layers without changing the markup the scripts rely on.
   Brand: Dako green #0E4D45, off-white #F8F8F5, logo gold #D4AF37.
   Previous light version lives in _backup-light/.
   ========================================================================== */
:root{
  color-scheme:dark;
  --bg:#0E1211;
  --surface:#161B1A;
  --surface-2:#1D2322;
  --surface-3:#242B29;
  --line:#2A3230;
  --text:#F2F1EC;
  --muted:#9AA6A2;
  --brand:#0E4D45;
  --brand-2:#1F6B5F;
  --mint:#A7E8D2;
  --gold:#D4AF37;
  --gold-soft:#E9C979;
  --pill:linear-gradient(181deg,#C9F0E0 0%,#E6C56E 120%);
  --pill-glow:0 12px 34px rgba(31,107,95,.45),0 0 18px rgba(212,175,55,.28);
  --fa:"Vazirmatn", Tahoma, sans-serif;
  --latin:"Poppins", "Vazirmatn", sans-serif;
  --kufi:"Noto Kufi Arabic", "Vazirmatn", Tahoma, sans-serif;
  --mono:"IBM Plex Mono", ui-monospace, Menlo, monospace;
  --r-xl:28px;
  --r-lg:22px;
  --r-md:16px;
  --r-sm:12px;
  --gutter:clamp(16px,5vw,72px);
  --wrap:1400px;
  /* older layers read these */
  --ink:#F2F1EC;--deep:#0E4D45;--deepest:#0A2F2A;--cream:#0E1211;--stroke:#2A3230;--body:#9AA6A2;
}
html:has(body.lab){background:var(--bg)}
body.lab{background:var(--bg);color:var(--text);font-family:var(--fa);overflow-x:clip}
body.lab main{overflow-x:clip}
body.lab :focus-visible{outline:2px solid var(--mint);outline-offset:3px}
.lab-mono{font-family:var(--mono);direction:ltr;unicode-bidi:isolate}

/* ---------- buttons ---------- */
.hx-pill{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:54px;padding:15px 34px;border:0;border-radius:999px;background:var(--pill);color:#0B1110;font:700 16px var(--fa);box-shadow:var(--pill-glow);cursor:pointer;transition:transform .2s,box-shadow .2s,filter .2s}
.hx-pill:hover{transform:translateY(-2px);filter:brightness(1.05);box-shadow:0 16px 40px rgba(31,107,95,.55),0 0 26px rgba(212,175,55,.4)}
.hx-pill:active{transform:translateY(0)}
.hx-ghost{display:inline-flex;align-items:center;gap:8px;min-height:54px;padding:0 10px;color:var(--text);font-weight:600;font-size:15px}
.hx-ghost:hover{color:var(--mint)}
body.lab .primary{background:var(--brand-2);color:#fff;border-radius:999px}
body.lab .primary:hover{background:var(--brand)}
body.lab .outline{border-color:var(--line);color:var(--text);border-radius:999px}

/* ---------- top bars ---------- */
body.lab .preview{background:#0A0D0C;color:var(--muted);font-size:11.5px;text-align:center;border-bottom:1px solid var(--line)}
body.lab header{position:sticky;top:0;z-index:40;min-height:0;padding:14px var(--gutter);background:rgba(14,18,17,.72);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.06);box-shadow:none}
body.lab header .brand{display:block;color:var(--text);font-family:var(--latin);font-weight:700;font-size:22px;letter-spacing:.22em;text-align:center;text-indent:.22em;line-height:1.2}
body.lab header .brand span{display:block;margin-top:6px;text-align:center}
body.lab header .brand span{font-family:var(--mono);font-size:8px;letter-spacing:.3em;color:var(--muted)}
body.lab header nav{font-size:14px;color:var(--muted)}
body.lab header nav a:hover,body.lab header nav .text-link:hover{color:var(--text)}
body.lab header nav a:after{background:var(--mint)}
body.lab header nav .text-link{color:var(--muted)}
body.lab header .header-actions .outline{background:var(--pill);border:0;color:#0B1110;border-radius:999px;min-height:42px;padding:10px 20px;font-size:13.5px;font-weight:700;box-shadow:0 6px 18px rgba(31,107,95,.35)}
body.lab header .header-actions .outline:hover{filter:brightness(1.05)}
body.lab header .lab-account{display:grid;place-items:center;width:44px;height:44px;padding:0;border-radius:50%;border:1px solid var(--line);background:var(--surface-2);color:var(--text);cursor:pointer;transition:border-color .2s,color .2s,background .2s}
body.lab header .lab-account:hover{border-color:rgba(167,232,210,.45);color:var(--mint);background:var(--surface-3)}
body.lab header .lab-account svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round}
body.lab header .mobile-account{display:none!important}
body.lab #dashboard-open{display:none!important}
body.lab header .notification-open{position:relative;display:grid;place-items:center;width:44px;height:44px;min-height:0;padding:0;border-radius:50%;border:1px solid var(--line);background:var(--surface-2);color:var(--text);cursor:pointer;transition:border-color .2s,color .2s,background .2s}
body.lab header .notification-open:hover{border-color:rgba(167,232,210,.45);color:var(--mint);background:var(--surface-3)}
body.lab header .notification-open svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.lab-bell-count{position:absolute;top:-3px;left:-3px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--gold);color:#130E05;font:700 10.5px/18px var(--fa);text-align:center;box-shadow:0 0 0 2px var(--bg)}
body.lab header nav a{font-weight:500}
body.lab header .notification-open,body.lab .menu-toggle{background:var(--surface-2);border:1px solid var(--line);color:var(--text)}
body.lab .menu-toggle span{background:var(--text)}
body.lab .exchange-strip{margin:14px var(--gutter) 0;border-radius:var(--r-sm);background:var(--surface);border:1px solid var(--line);color:var(--muted)}
body.lab .exchange-strip b{color:var(--text)}
@media (max-width:1120px){body.lab header nav.is-open,body.lab #site-nav.is-open{background:var(--surface);border:1px solid var(--line);color:var(--text)}}

/* ---------- hero ---------- */
.hx-hero{position:relative;display:grid;grid-template-columns:1fr 1.05fr;gap:clamp(24px,4vw,64px);align-items:center;max-width:var(--wrap);margin-inline:auto;padding:clamp(40px,6vw,88px) var(--gutter) 36px;isolation:isolate}
.hx-hero::before{content:"";position:absolute;z-index:-1;inset:-10% 0 0;pointer-events:none;background:
  radial-gradient(38% 50% at 30% 45%,rgba(31,107,95,.55),transparent 70%),
  radial-gradient(30% 40% at 12% 70%,rgba(212,175,55,.16),transparent 70%),
  radial-gradient(40% 50% at 80% 30%,rgba(14,77,69,.35),transparent 70%)}
.hx-hero-copy{display:grid;gap:22px;align-content:center}
.hx-chip{justify-self:start;font-family:var(--latin);font-size:11.5px;font-weight:600;letter-spacing:.18em;color:var(--mint);padding:7px 14px;border-radius:999px;border:1px solid rgba(167,232,210,.25);background:rgba(167,232,210,.06);direction:ltr}
.hx-hero h1{margin:0;font-family:var(--fa);font-weight:300;font-size:clamp(26px,2.5vw,40px);line-height:1.6;letter-spacing:0;color:#E4E8E6;white-space:nowrap}
@media (max-width:640px){.hx-hero h1{white-space:normal;font-size:clamp(24px,7vw,32px)}}
.hx-hero h1 b{display:inline-block;font-weight:700;background:var(--pill);-webkit-background-clip:text;background-clip:text;color:transparent}
.hx-lede{margin:0;max-width:30em;font-size:15.5px;line-height:2.1;color:var(--muted)}
.hx-ctas{display:flex;flex-wrap:wrap;align-items:center;gap:12px}

.hx-peek{justify-self:start;display:flex;align-items:center;gap:0;padding:6px 6px 6px 18px;border-radius:999px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);transition:border-color .2s,background .2s}
.hx-peek:hover{border-color:rgba(167,232,210,.4);background:rgba(255,255,255,.08)}
.hx-peek img{width:46px;height:46px;border-radius:50%;object-fit:cover;border:2px solid var(--bg)}
.hx-peek img+img{margin-inline-start:-14px}
.hx-peek span{display:grid;margin-inline-start:12px;line-height:1.5}
.hx-peek b{font-size:13.5px;color:var(--text)}
.hx-peek small{font-size:11px;color:var(--muted)}

/* generator-style panel */
.hx-panel{position:relative;display:grid;grid-template-columns:auto 1fr;grid-template-rows:1fr auto;gap:14px;padding:14px;border-radius:var(--r-xl);background:linear-gradient(160deg,rgba(255,255,255,.07),rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.09);box-shadow:0 40px 80px -30px rgba(0,0,0,.7),inset 0 1px 0 rgba(255,255,255,.06);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.hx-tools{grid-row:1/3;display:flex;flex-direction:column;gap:8px;padding:6px;border-radius:var(--r-md);background:rgba(0,0,0,.25)}
.hx-tools>*{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;border:1px solid transparent;background:transparent;color:var(--muted);cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.hx-tools>*:hover{background:var(--surface-3);color:var(--text);border-color:var(--line)}
.hx-tools>*:first-child{background:var(--surface-3);color:var(--mint);border-color:rgba(167,232,210,.25)}
.hx-tools svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.hx-viewer{position:relative;min-height:clamp(340px,34vw,480px);border-radius:var(--r-lg);overflow:hidden;background:radial-gradient(70% 70% at 50% 45%,#17574D 0%,#0A2A25 75%);border:1px solid rgba(255,255,255,.06)}
.hx-viewer #hero-3d-canvas{position:absolute;inset:0;z-index:1;touch-action:none;cursor:grab}
.hx-viewer #hero-3d-canvas:active{cursor:grabbing}
.hx-viewer #hero-3d-canvas canvas{display:block;width:100%;height:100%}
.hx-viewer-tab{position:absolute;z-index:2;top:12px;inset-inline:12px;display:flex;justify-content:space-between;align-items:center;gap:10px;pointer-events:none}
.hx-viewer-tab>span{padding:6px 12px;border-radius:999px;background:rgba(0,0,0,.35);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);font-size:12.5px;color:var(--text);display:flex;align-items:center;gap:8px}
.hx-viewer-tab i{width:7px;height:7px;border-radius:50%;background:var(--mint);box-shadow:0 0 0 4px rgba(167,232,210,.18)}
.hx-viewer-tab .lab-mono{font-size:11px;color:var(--muted)}
.hx-viewer-tab b{color:var(--mint);font-weight:500}
.lab-status{position:absolute;z-index:2;inset-inline:12px;bottom:12px;padding:12px 14px;border-radius:var(--r-md);background:rgba(10,14,13,.6);border:1px solid rgba(255,255,255,.08);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.lab-status ol{list-style:none;margin:0;padding:0;display:flex;justify-content:space-between;gap:8px;font-size:12.5px}
.lab-status li{display:flex;align-items:center;gap:7px;color:var(--muted)}
.lab-status li::before{content:"";flex:none;width:8px;height:8px;border-radius:50%;border:1.5px solid #52605C}
.lab-status li.done{color:var(--text)}
.lab-status li.done::before{background:var(--mint);border-color:var(--mint)}
.lab-status li.now{color:var(--text);font-weight:700}
.lab-status li.now::before{border-color:var(--mint);box-shadow:0 0 0 3px rgba(167,232,210,.2)}
.lab-status li.gold.now::before,.lab-status li.gold.done::before{background:var(--gold);border-color:var(--gold);box-shadow:0 0 0 3px rgba(212,175,55,.25)}
.lab-status li.gold.done{color:var(--gold-soft)}
.lab-pct{font-family:var(--mono);font-size:11px;color:var(--mint);direction:ltr}
.lab-pbar{height:3px;margin-top:10px;border-radius:3px;background:rgba(255,255,255,.08);overflow:hidden}
.lab-pbar i{display:block;width:0;height:100%;background:var(--pill)}
.hx-controls{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}
.lab-toolbar{display:flex;gap:3px;padding:4px;border-radius:999px;background:rgba(0,0,0,.28);border:1px solid rgba(255,255,255,.07)}
.lab-toolbar button{border:0;background:transparent;color:var(--muted);font:500 12.5px var(--fa);padding:7px 13px;border-radius:999px;cursor:pointer}
.lab-toolbar button[aria-pressed="true"]{background:var(--surface-3);color:var(--text)}
.hx-generate{order:3;flex-basis:100%;display:flex;align-items:center;justify-content:center;gap:8px;min-height:52px;border:0;border-radius:999px;background:var(--pill);color:#0B1110;font:800 15px var(--fa);letter-spacing:.02em;box-shadow:var(--pill-glow);cursor:pointer;transition:filter .2s,transform .2s}
.hx-generate:hover{filter:brightness(1.06);transform:translateY(-1px)}
.hx-meta{font-size:11px;letter-spacing:.14em;color:var(--muted)}

/* studio stories: cards that fill the strip edge to edge */
body.lab .hero-stories.lab-stories{position:static;inset:auto;display:grid;grid-template-columns:minmax(0,1fr);justify-content:stretch;justify-items:stretch;align-items:stretch;gap:14px;min-height:0;max-width:var(--wrap);margin:0 auto;padding:26px var(--gutter) 10px;border:0;border-radius:0;background:transparent;box-shadow:none}
body.lab .lab-stories .hero-stories-label{display:block;font-size:14px;font-weight:700;color:var(--text)}
body.lab .lab-stories .stories-row{width:100%;flex:none;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:12px;padding:0;overflow:visible;direction:rtl;justify-content:stretch}
body.lab .lab-stories .studio-story{position:relative;display:block;flex:none;width:auto;height:auto;aspect-ratio:4/5;padding:0;border:0;border-radius:20px;background:none;cursor:pointer;transition:transform .25s}
body.lab .lab-stories .studio-story:hover{transform:translateY(-3px)}
body.lab .lab-stories .story-orbit{display:block;width:100%;height:100%;padding:2px;border-radius:20px;background:var(--pill);box-shadow:none;transform:none}
body.lab .lab-stories .studio-story.is-seen .story-orbit{background:var(--line)}
body.lab .lab-stories .story-thumb{position:relative;display:block;width:100%;height:100%;border:2px solid var(--bg);border-radius:18px;overflow:hidden;background:var(--surface)}
body.lab .lab-stories .story-thumb img{display:block;width:100%;height:100%;object-fit:cover;border-radius:0;transition:transform .6s}
body.lab .lab-stories .studio-story:hover .story-thumb img{transform:scale(1.05)}
body.lab .lab-stories .story-thumb::after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.72));pointer-events:none}
body.lab .lab-stories .studio-story strong,body.lab .lab-stories .studio-story small{position:absolute;z-index:2;inset-inline:14px;display:block;width:auto;text-align:right;color:#fff;pointer-events:none}
body.lab .lab-stories .studio-story strong{bottom:30px;font-size:14px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
body.lab .lab-stories .studio-story small{bottom:12px;margin:0;font-size:11.5px;color:rgba(255,255,255,.75)}
body.lab .lab-stories .story-video{top:10px;left:10px;right:auto;bottom:auto;inset:10px auto auto 10px;width:24px;height:24px;font-size:8px;z-index:2}
body.lab .lab-stories .story-fresh{display:none}
@media (max-width:760px){
  body.lab .lab-stories .stories-row{grid-auto-columns:40%;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:4px}
  body.lab .lab-stories .stories-row::-webkit-scrollbar{display:none}
  body.lab .lab-stories .studio-story{scroll-snap-align:start}
}

/* story viewer (Instagram-style), built by lab-stories.js */
body.lab .story-dialog.ig-story{width:min(420px,calc(100% - 24px));max-height:calc(100dvh - 24px);padding:0;border:0;border-radius:22px;overflow:hidden;background:#000;color:#fff;box-shadow:0 40px 120px rgba(0,0,0,.8)}
body.lab .story-dialog.ig-story::backdrop{background:rgba(5,8,7,.86);backdrop-filter:blur(8px)}
.ig-story .story-stage{position:relative;height:min(70dvh,680px);background:#0B1A18}
.ig-story .story-stage img,.ig-story .story-stage video{width:100%;height:100%;object-fit:cover}
.ig-story .story-stage::before{content:"";position:absolute;z-index:1;inset:0 0 auto;height:110px;background:linear-gradient(rgba(0,0,0,.55),transparent);pointer-events:none}
.ig-bars{position:absolute;z-index:5;top:10px;inset-inline:12px;display:flex;gap:4px}
.ig-bars span{flex:1;height:3px;border-radius:3px;background:rgba(255,255,255,.3);overflow:hidden}
.ig-bars i{display:block;height:100%;width:0;background:#fff;border-radius:3px}
.ig-head{position:absolute;z-index:5;top:22px;inset-inline:12px 56px;display:flex;align-items:center;gap:8px}
.ig-avatar{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--pill);color:#0B1110;font:800 14px var(--latin)}
.ig-head b{font-size:14px}
.ig-head small{font-size:12px;color:rgba(255,255,255,.7)}
.ig-pause{margin-inline-start:auto;width:32px;height:32px;border:0;border-radius:50%;background:rgba(0,0,0,.35);color:#fff;font-size:11px;cursor:pointer}
body.lab .ig-story .story-close{top:22px;left:12px;width:32px;height:32px;z-index:6;font-size:20px;border:0;background:rgba(0,0,0,.35)}
.ig-zones{position:absolute;z-index:3;top:0;left:0;right:0;height:min(70dvh,680px);display:flex;direction:ltr}
.ig-zone{flex:1;border:0;background:transparent;cursor:pointer;-webkit-tap-highlight-color:transparent}
.ig-zone:focus-visible{outline:2px solid rgba(255,255,255,.6);outline-offset:-6px}
.ig-arrows{position:absolute;z-index:5;top:calc(min(70dvh,680px)/2 - 20px);left:10px;right:10px;display:flex;justify-content:space-between;direction:ltr;pointer-events:none}
.ig-arrow{pointer-events:auto;width:40px;height:40px;border:0;border-radius:50%;background:rgba(255,255,255,.85);color:#0B1110;font-size:24px;line-height:1;cursor:pointer;box-shadow:0 6px 18px rgba(0,0,0,.35);transition:transform .15s}
.ig-arrow:hover{transform:scale(1.08)}
.ig-fallback{display:grid;place-content:center;gap:10px;width:100%;height:100%;text-align:center;background:radial-gradient(70% 60% at 50% 40%,#1F6B5F,#0A2A25 75%)}
.ig-fallback span{font:700 13px var(--latin);letter-spacing:.3em;color:var(--mint)}
.ig-fallback b{font-size:22px;color:#fff}
body.lab .ig-story .story-caption{padding:16px 20px 20px;background:#0E1211}
body.lab .ig-story .story-caption h2{font-size:19px;margin:4px 0 6px}
body.lab .ig-story .story-caption p{font-size:13px;color:var(--muted)}
@media (hover:none){.ig-arrows{display:none}}

/* ---------- section scaffolding ---------- */
body.lab section[id]{padding:120px var(--gutter) 0;max-width:var(--wrap);margin-inline:auto}
body.lab .section-top{align-items:end;margin-bottom:34px}
body.lab .section-top .eyebrow,body.lab .about .eyebrow{font-family:var(--latin);font-weight:600;font-size:11.5px;letter-spacing:.18em;color:var(--mint)}
body.lab .section-top h2,body.lab .about h2{font-family:var(--fa);font-weight:800;font-size:clamp(30px,3.6vw,50px);line-height:1.35;letter-spacing:-.01em;color:var(--text);text-wrap:balance}
body.lab .section-top .muted,body.lab .muted{color:var(--muted)}
body.lab p{color:inherit}

/* ---------- collections (card shape from the Dako Lab reference) ---------- */
body.lab #category-bar{gap:6px;margin:0 0 24px}
body.lab .filter{border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--muted);padding:8px 18px;font-size:13.5px}
body.lab .filter:hover{border-color:var(--mint);color:var(--text)}
body.lab .filter.active{background:var(--brand-2);border-color:var(--brand-2);color:#fff}
body.lab #collections .gallery{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}
body.lab #collections .gallery .product{display:flex;flex-direction:column;padding:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;box-shadow:none}
body.lab #collections .gallery .product:hover{transform:translateY(-4px);border-color:rgba(167,232,210,.35);box-shadow:0 30px 60px -30px rgba(0,0,0,.8)}
body.lab #collections .gallery .product .render-open{display:block;width:100%;padding:0;border:0;background:none}
body.lab #collections .gallery .product .picture{position:relative;height:auto;aspect-ratio:5/4;border-radius:0;background:radial-gradient(80% 80% at 50% 45%,#17574D,#0A2A25)}
body.lab #collections .gallery .product .picture img{width:100%;height:100%;object-fit:cover}
.lc-badge{position:absolute;top:12px;left:12px;z-index:2;font-size:10.5px;letter-spacing:.08em;padding:4px 10px;border-radius:999px;background:rgba(10,20,18,.72);border:1px solid rgba(212,175,55,.5);color:var(--gold-soft);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.lc-code{display:block;margin:16px 18px 0;font-size:11.5px;letter-spacing:.08em;color:var(--muted);text-align:right}
body.lab #collections .gallery .product h3{font-weight:800;font-size:18px;color:var(--text);margin:4px 18px 2px}
body.lab #collections .gallery .product>p{margin:0 18px 14px;min-height:0;font-size:13px;color:var(--muted)}
.lc-meta{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:auto 18px 0;padding:12px 0 16px;border-top:1px solid var(--line);font-size:13px;color:var(--muted)}
body.lab #collections .gallery .product .lc-meta>[data-detail],body.lab #collections .gallery .product .lc-meta>[data-start],body.lab.free-mode #collections .gallery .product .lc-meta [data-detail]{display:inline;width:auto;min-height:0;margin:0;padding:0;border:0;border-radius:0;background:none;color:var(--mint);font-weight:700;font-size:13.5px}
body.lab #collections .gallery .product .lc-meta>[data-detail]:hover{color:var(--gold-soft);background:none}
body.lab.free-mode #collections .gallery .product:after{display:none}

body.lab section#material-credit{background:none;border:0;padding:120px var(--gutter) 0;margin:0 auto;max-width:var(--wrap)}
body.lab .lab-credit .credit-balances{grid-template-columns:1fr}
body.lab .lab-credit .credit-summary{padding:0;background:none;border-radius:0}
body.lab .lab-credit .credit-pack small{font-size:11.5px}
body.lab.free-mode #collections .gallery .render-open:after{display:none}


/* favourites */
.lc-fav{position:absolute;z-index:3;top:12px;right:12px;display:grid;place-items:center;width:40px;height:40px;padding:0;border:1px solid rgba(255,255,255,.15);border-radius:50%;background:rgba(10,20,18,.6);color:#fff;cursor:pointer;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:transform .2s,background .2s,color .2s}
.lc-fav svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linejoin:round}
.lc-fav:hover{transform:scale(1.08)}
.lc-fav[aria-pressed="true"]{background:#fff;color:#D2566E;border-color:#fff}
.lc-fav[aria-pressed="true"] svg{fill:currentColor}
.lc-fav[aria-pressed="true"]{animation:lc-pop .3s ease-out}
@keyframes lc-pop{50%{transform:scale(1.2)}}
.lab-coll .lcl-top-actions{display:flex;align-items:center;gap:8px}
.lab-coll .lcl-fav{position:static;width:42px;height:42px;background:var(--surface-2);border-color:var(--line)}
body.lab .lc-fav-chip{display:inline-flex;align-items:center;gap:6px}
body.lab .lc-fav-chip svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8}
body.lab .lc-fav-chip b{min-width:20px;padding:0 6px;border-radius:999px;background:var(--surface-3);font-size:11.5px;line-height:20px;text-align:center}
body.lab .lc-fav-chip.active{background:#D2566E;border-color:#D2566E;color:#fff}
body.lab .lc-fav-chip.active svg{fill:currentColor}
body.lab .lc-fav-chip.active b{background:rgba(255,255,255,.25)}
#gallery.lc-fav-only .product:not(.is-fav){display:none!important}
.lc-fav-empty{display:flex;align-items:center;justify-content:center;gap:6px;margin:0;padding:40px 20px;border:1.5px dashed #3A4441;border-radius:22px;color:var(--muted);font-size:14px}
.lc-fav-empty svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8}

/* ---------- on-page order tool ---------- */
/* print section: one-line two-tone title, closer to the stories strip */
body.lab section#upload{padding-top:56px}
body.lab .section-top h2.lo-title{font-weight:300;font-size:clamp(24px,2.4vw,36px);line-height:1.6;color:#E4E8E6;white-space:nowrap}
body.lab .section-top h2.lo-title b{font-weight:700;background:var(--pill);-webkit-background-clip:text;background-clip:text;color:transparent}
@media (max-width:760px){body.lab .section-top h2.lo-title{white-space:normal}body.lab section#upload{padding-top:40px}}

.lab-formats{display:flex;flex-wrap:wrap;gap:6px}
.lab-formats i{font-style:normal;font-family:var(--mono);font-size:11px;padding:2px 9px;border-radius:999px;border:1px solid var(--line);color:var(--muted);background:var(--surface-2)}

body.lab .section-top h2 b{color:var(--mint);font-weight:800}
.lo-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:16px;align-items:stretch}
.lo-viewer{position:relative;min-height:520px;border-radius:var(--r-xl);overflow:hidden;border:1px solid var(--line);background:linear-gradient(rgba(167,232,210,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(167,232,210,.05) 1px,transparent 1px),radial-gradient(70% 70% at 50% 45%,#133F38,#0B1A18 75%);background-size:32px 32px,32px 32px,auto}
#lo-canvas{position:absolute;inset:0;touch-action:none;cursor:grab}
#lo-canvas:active{cursor:grabbing}
#lo-canvas canvas{display:block;width:100%;height:100%}
.lo-tag{position:absolute;z-index:2;top:14px;right:14px;font-size:12px;padding:5px 12px;border-radius:999px;background:rgba(0,0,0,.35);color:var(--text)}
.lo-dims{position:absolute;z-index:2;bottom:14px;left:14px;font-size:12px;color:var(--muted)}
.lo-hint{position:absolute;z-index:2;bottom:14px;right:14px;font-size:12px;color:var(--muted)}
.lo-form{display:grid;gap:12px;align-content:start}
.lo-drop{position:relative;display:grid;gap:6px;justify-items:center;text-align:center;padding:26px 18px;border:1.5px dashed #3A4441;border-radius:var(--r-lg);background:var(--surface);cursor:pointer;transition:border-color .2s,background .2s}
.lo-drop:hover,.lo-drop.over{border-color:var(--mint);background:var(--surface-2)}
.lo-drop strong{font-size:16px;color:var(--text)}
.lo-drop>span{font-size:13px;color:var(--muted)}
.lo-drop input{position:absolute;width:1px;height:1px;opacity:0}
.lo-file{display:flex;justify-content:space-between;gap:12px;padding:12px 16px;border-radius:var(--r-sm);background:var(--surface-2);border:1px solid var(--line);font-size:13.5px;color:var(--text)}
.lo-file .lab-mono{font-size:12px;color:var(--muted)}
/* model list (files and ZIP/RAR contents) */
.lo-models{display:grid;gap:8px}
.lo-models-head{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:13px;color:var(--muted)}
.lo-models-head b{color:var(--text);font-weight:700}
.lo-all{padding:5px 12px;border:1px solid var(--line);border-radius:999px;background:var(--surface-2);color:var(--mint);font:600 12px var(--fa);cursor:pointer}
.lo-model-list{display:grid;gap:6px;max-height:268px;overflow:auto;padding-inline-end:2px;scrollbar-width:thin;scrollbar-color:var(--line) transparent}
.lo-model{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 14px;border:1px solid var(--line);border-radius:14px;background:var(--surface);transition:border-color .2s,background .2s}
.lo-model:hover{border-color:rgba(167,232,210,.3)}
.lo-model.is-active{border-color:var(--mint);background:var(--surface-2);box-shadow:0 0 0 3px rgba(167,232,210,.1)}
.lo-model.is-off{opacity:.65}
.lo-check{position:relative;display:grid;place-items:center;width:22px;height:22px;cursor:pointer}
.lo-check input{position:absolute;inset:0;margin:0;opacity:0;cursor:pointer}
.lo-check i{width:20px;height:20px;border:1.5px solid #52605C;border-radius:6px;background:var(--surface-3);transition:background .15s,border-color .15s}
.lo-check input:checked+i{border-color:transparent;background:var(--pill)}
.lo-check input:checked+i::after{content:"✓";display:grid;place-items:center;height:100%;font:800 12px var(--latin);color:#0B1110}
.lo-check input:focus-visible+i{outline:2px solid var(--mint);outline-offset:2px}
.lo-check input:disabled+i{opacity:.4}
.lo-model-btn{display:grid;gap:2px;min-width:0;padding:0;border:0;background:none;color:inherit;text-align:right;cursor:pointer;font-family:var(--fa)}
.lo-model-title{font-size:14px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;direction:ltr;text-align:right}
.lo-model-title small{font-size:11.5px;font-weight:400;color:var(--muted);direction:rtl}
.lo-model-meta{font-size:11.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lo-model-w{font-size:13.5px;font-weight:500;color:var(--gold-soft);white-space:nowrap}
.lo-loading{padding:18px;border:1.5px dashed #3A4441;border-radius:14px;text-align:center;font-size:13.5px;color:var(--muted)}
.lo-nav{position:absolute;inset:0;z-index:3;pointer-events:none}
.lo-nav[hidden]{display:none}
.lo-nav-btn{position:absolute;top:50%;transform:translateY(-50%);width:42px;height:42px;border:1px solid rgba(255,255,255,.15);border-radius:50%;background:rgba(10,20,18,.6);color:var(--text);font-size:24px;line-height:1;cursor:pointer;pointer-events:auto;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:background .2s,color .2s,border-color .2s}
.lo-nav-btn:hover{background:var(--pill);border-color:transparent;color:#0B1110}
.lo-nav-btn{direction:ltr;unicode-bidi:isolate}
.lo-nav-next{left:14px}
.lo-nav-prev{right:14px}
.lo-dots{position:absolute;left:50%;bottom:44px;transform:translateX(-50%);display:flex;gap:6px;padding:6px 10px;border-radius:999px;background:rgba(0,0,0,.35);pointer-events:auto;direction:rtl;max-width:80%;overflow-x:auto;scrollbar-width:none}
.lo-dots button{flex:none;width:8px;height:8px;padding:0;border:0;border-radius:999px;background:rgba(255,255,255,.35);cursor:pointer;transition:width .25s,background .25s}
.lo-dots button.is-unpicked{background:rgba(255,255,255,.15)}
.lo-dots button.is-on{width:22px;background:var(--pill)}
.lo-viewer:focus-visible{outline:2px solid var(--mint);outline-offset:3px}
.lo-model-name{position:absolute;z-index:2;top:14px;left:14px;max-width:55%;padding:5px 12px;border-radius:999px;background:rgba(0,0,0,.35);font:500 12px var(--mono);color:var(--text);direction:ltr;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lo-model-name:empty{display:none}
.lo-row{display:grid;grid-template-columns:1fr auto;gap:12px}
.lo-seg{display:grid;grid-template-columns:1fr 1fr;gap:5px;padding:5px;border-radius:999px;background:var(--surface);border:1px solid var(--line)}
.lo-seg button{display:flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:999px;background:transparent;color:var(--muted);font:500 13.5px var(--fa);padding:10px;cursor:pointer}
.lo-seg button::before{content:"";width:9px;height:9px;border-radius:50%;background:#C66B80}
.lo-seg button[data-m="resin"]::before,.lo-seg button[data-credit-m="resin"]::before{background:#3FB39A}
.lo-seg button[aria-pressed="true"]{background:var(--surface-3);color:var(--text);font-weight:700}
.lo-qty{display:flex;align-items:center;gap:8px;padding:5px 5px 5px 14px;border-radius:999px;background:var(--surface);border:1px solid var(--line);font-size:13.5px;color:var(--muted)}
.lo-qty span{padding-inline:8px 4px}
.lo-qty button{width:36px;height:36px;border-radius:50%;border:1px solid var(--line);background:var(--surface-2);color:var(--text);font-size:16px;cursor:pointer}
.lo-qty output{min-width:28px;text-align:center;font-size:16px;color:var(--text)}
.lo-est{display:grid;gap:14px;padding:20px;border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--line)}
.lo-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.lo-kpis>div{display:grid;gap:2px;justify-items:center;align-content:center;text-align:center;padding:14px;border-radius:var(--r-md);background:var(--surface-2);border:1px solid var(--line)}
.lo-kpis span{font-size:12.5px;color:var(--muted)}
.lo-kpis b{font-size:24px;font-weight:500;color:var(--text);text-align:center}
.lo-kpis small{font-size:11.5px;color:var(--muted)}
.lo-kpis .lo-cost{background:linear-gradient(160deg,rgba(212,175,55,.16),rgba(212,175,55,.04));border-color:rgba(212,175,55,.35)}
.lo-kpis .lo-cost b{color:var(--gold-soft)}
.lo-credit{display:grid;gap:8px}
.lo-credit-head{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:13.5px;color:var(--muted)}
.lo-credit-head b{color:var(--text)}
.lo-chip{font-size:12px;padding:3px 10px;border-radius:999px;background:var(--surface-3);color:var(--muted)}
.lo-chip[data-state="ok"]{background:rgba(63,179,154,.16);color:var(--mint)}
.lo-chip[data-state="low"]{background:rgba(212,175,55,.14);color:var(--gold-soft)}
.lo-meter{position:relative;height:12px;border-radius:999px;background:var(--surface-3);overflow:visible}
.lo-meter i{position:absolute;inset-block:0;inset-inline-start:0;border-radius:999px;background:linear-gradient(90deg,#1F6B5F,#3FB39A);transition:width .5s cubic-bezier(.2,.7,.2,1)}
[data-material="wax"] .lo-meter i{background:linear-gradient(90deg,#8E3F51,#C66B80)}
.lo-meter em{position:absolute;top:-5px;bottom:-5px;width:3px;margin-inline-start:-1.5px;border-radius:2px;background:var(--gold);box-shadow:0 0 10px rgba(212,175,55,.6);transition:inset-inline-start .5s cubic-bezier(.2,.7,.2,1)}
.lo-legend{display:flex;justify-content:space-between;gap:10px;font-size:12.5px;color:var(--muted)}
.lo-legend b{color:var(--text);font-weight:500}
.lo-compare{display:grid;gap:8px;padding-top:12px;border-top:1px dashed var(--line)}
.lo-compare>div{display:grid;grid-template-columns:52px 1fr 64px;align-items:center;gap:10px;font-size:13px;color:var(--muted);opacity:.6;transition:opacity .2s}
.lo-compare>div.is-on{opacity:1;color:var(--text)}
.lo-bar{height:8px;border-radius:999px;background:var(--surface-3);overflow:hidden}
.lo-bar i{display:block;height:100%;border-radius:999px;background:#C66B80;transition:width .5s cubic-bezier(.2,.7,.2,1)}
#lo-bar-resin{background:#3FB39A}
.lo-compare b{font-weight:500;text-align:left;color:inherit}
.lo-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.lo-submit{flex:1;transition:filter .2s,opacity .2s,box-shadow .2s,transform .2s}
.lo-submit:disabled{opacity:.4;filter:grayscale(1);box-shadow:none;cursor:not-allowed;transform:none}
.lo-credit-link{display:inline-flex;align-items:center;gap:8px;min-height:54px;padding:0 18px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-weight:600;font-size:14.5px;transition:color .25s,border-color .25s,background .25s,box-shadow .25s}
.lo-credit-link svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linejoin:round}
.lo-credit-link:hover{color:var(--text);border-color:rgba(167,232,210,.4)}
.lo-credit-link.is-needed{background:var(--pill);border-color:transparent;color:#0B1110;box-shadow:var(--pill-glow);animation:lo-nudge 2.4s ease-in-out infinite}
.lo-credit-link.is-needed:hover{filter:brightness(1.06)}
@keyframes lo-nudge{0%,100%{transform:translateY(0)}50%{transform:translateY(-2px)}}
.lo-need-credit{margin:0;font-size:13px;color:var(--gold-soft)}
@media (prefers-reduced-motion:reduce){.lo-credit-link.is-needed{animation:none}}
.lo-msg{margin:0;min-height:1.4em;font-size:13.5px;color:var(--gold-soft)}
.lo-note{margin:0;font-size:12.5px;line-height:1.9;color:var(--muted)}

/* ---------- gram credit purchase ---------- */
body.lab .lab-credit .credit-layout{display:grid;grid-template-columns:1fr 1.2fr;gap:16px}
body.lab .lab-credit .credit-balances,body.lab .lab-credit .credit-buy{display:grid;gap:16px;align-content:start;padding:24px;border-radius:var(--r-xl);background:var(--surface);border:1px solid var(--line)}
.lc-title{margin:0;font-size:13.5px;color:var(--muted)}
.lc-tiles{display:grid;grid-template-columns:1fr 1fr;gap:10px}
body.lab .lab-credit .lc-tiles article{display:grid;gap:4px;padding:18px;border-radius:var(--r-md);background:var(--surface-2);border:1px solid var(--line)}
body.lab .lab-credit .lc-tiles span{display:flex;align-items:center;gap:8px;font-size:13.5px;color:var(--muted)}
body.lab .lab-credit .lc-tiles span::before{content:"";width:9px;height:9px;border-radius:50%;background:#C66B80}
body.lab .lab-credit .lc-resin span::before{background:#3FB39A}
body.lab .lab-credit .lc-tiles strong{font-size:14px;font-weight:500;color:var(--muted)}
body.lab .lab-credit .lc-tiles strong b{font-family:var(--latin);font-size:34px;font-weight:600;color:var(--text);margin-inline-end:4px}
body.lab .lab-credit .lc-tiles small{font-size:12px;color:var(--muted)}
.lc-share{display:grid;gap:8px}
.lc-track{height:10px;border-radius:999px;background:var(--surface-3);overflow:hidden}
.lc-track i{display:block;height:100%;width:0;border-radius:999px;background:linear-gradient(90deg,#8E3F51,#C66B80);transition:width .5s}
.lc-track-resin i{background:linear-gradient(90deg,#1F6B5F,#3FB39A)}
.lc-legend{display:flex;justify-content:space-between;margin:0;font-size:12.5px;color:var(--muted)}
.lc-legend b{color:var(--text);font-weight:600}
.lc-hidden-select{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
body.lab .lab-credit .credit-packs{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
body.lab .lab-credit .credit-pack{display:grid;gap:2px;justify-items:center;padding:16px 6px;border-radius:var(--r-md);border:1px solid var(--line);background:var(--surface-2);color:var(--text);cursor:pointer;transition:border-color .2s,box-shadow .2s,transform .2s}
body.lab .lab-credit .credit-pack:hover{transform:translateY(-2px);border-color:rgba(167,232,210,.35)}
body.lab .lab-credit .credit-pack b{font-size:18px;font-weight:800}
body.lab .lab-credit .credit-pack small{font-size:11.5px;color:var(--muted)}
.lc-price{font-style:normal;font-size:13px;color:var(--gold-soft);margin-top:4px}
body.lab .lab-credit .credit-pack.selected{border-color:var(--mint);box-shadow:0 0 0 3px rgba(167,232,210,.15);background:var(--surface-3)}
.lc-sum{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;padding-top:16px;border-top:1px dashed var(--line)}
body.lab .lab-credit .credit-summary{font-size:14px;color:var(--muted)}
body.lab .lab-credit .credit-summary b{display:block;font-family:var(--latin);font-size:28px;font-weight:600;color:var(--text)}
body.lab .lab-credit small.muted{font-size:12px;line-height:1.9}
body.lab .credit-toast{margin-top:8px;padding:10px 14px;border-radius:var(--r-sm);background:rgba(63,179,154,.14);color:var(--mint);font-size:13px}

/* ---------- prices (if a later layer shows the section) ---------- */
body.lab .rates{gap:14px}
body.lab .rates article,body.lab .rates article+article{border:1px solid var(--line);border-radius:var(--r-xl);background:var(--surface);color:var(--text)}
body.lab .rates article:nth-child(2){background:var(--brand);border-color:var(--brand)}

/* ---------- membership ---------- */
body.lab #pro>p{color:var(--muted)}
body.lab #pro .plan-matrix{gap:16px;margin:34px 0 22px;align-items:stretch}
body.lab #pro .plan-matrix{padding-top:14px}
body.lab #pro .plan-matrix article{overflow:visible!important;position:relative;display:flex;flex-direction:column;gap:6px;padding:30px 28px 28px;border-radius:26px;border:1px solid var(--line);background:linear-gradient(180deg,var(--surface-2),var(--surface) 55%);color:var(--text);box-shadow:none;transform:none;cursor:pointer;transition:transform .25s,border-color .25s,box-shadow .25s}
body.lab #pro .plan-matrix article:before{display:none}
body.lab #pro .plan-matrix article:hover{transform:translateY(-4px);border-color:rgba(167,232,210,.35);box-shadow:0 30px 60px -30px rgba(0,0,0,.8)}
body.lab #pro .plan-matrix .en{font-family:var(--latin);font-weight:700;font-size:12px;letter-spacing:.2em;color:var(--mint)}
.lp-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:2px 0 4px}
.lp-deal{padding:4px 12px;border-radius:999px;background:rgba(167,232,210,.1);color:var(--mint);font-size:12.5px;font-weight:700}
.lp-ribbon{padding:4px 12px;border-radius:999px;background:var(--pill);color:#0B1110;font-size:12px;font-weight:800;box-shadow:0 6px 18px rgba(212,175,55,.3)}
body.lab #pro .plan-matrix h3{margin:4px 0 0;font-weight:800;font-size:30px;color:var(--text);letter-spacing:-.01em}
body.lab #pro .plan-matrix p{min-height:0;margin:0 0 8px;color:var(--muted);font-size:13.5px;line-height:2}
body.lab #pro .plan-matrix b{order:0;font-family:var(--fa);font-size:24px;font-weight:800;color:var(--text)}
body.lab #pro .plan-matrix .plan-features{padding:16px 0 0;margin:14px 0 0;border-top:1px dashed var(--line);list-style:none;display:grid;gap:10px;font-size:13.5px;color:#C9D1CE}
body.lab #pro .plan-matrix .plan-features li{display:flex;gap:10px;align-items:baseline}
body.lab #pro .plan-matrix .plan-features li::before{content:"✓";flex:none;font-family:var(--latin);font-weight:700;color:var(--mint);margin:0}
/* Pro: gold-edged featured card */
body.lab #pro .plan-matrix article.plan-featured{background:radial-gradient(120% 60% at 100% 0%,rgba(212,175,55,.18),transparent 55%),linear-gradient(180deg,#123E37,#0D2320 60%,var(--surface));border-color:rgba(212,175,55,.55);transform:translateY(-8px);box-shadow:0 30px 70px -30px rgba(212,175,55,.35)}
body.lab #pro .plan-matrix article.plan-featured:hover{transform:translateY(-12px)}
body.lab #pro .plan-matrix article.plan-featured .en,body.lab #pro .plan-matrix article.plan-featured b{color:var(--gold-soft)}
body.lab #pro .plan-matrix article.plan-featured .lp-deal{background:rgba(212,175,55,.16);color:var(--gold-soft)}
body.lab #pro .plan-matrix article.plan-featured h3{color:#fff}
body.lab #pro .plan-matrix article.plan-featured p{color:#C3D8D1}
body.lab #pro .plan-matrix article.plan-featured .plan-features li::before{color:var(--gold)}
/* selected tier */
body.lab #pro .plan-matrix article.is-selected{border-color:var(--mint);box-shadow:0 0 0 3px rgba(167,232,210,.18),0 30px 60px -30px rgba(0,0,0,.8);background:linear-gradient(180deg,#16332D,var(--surface) 60%)}
body.lab #pro .plan-matrix article.plan-featured.is-selected{border-color:var(--gold);box-shadow:0 0 0 3px rgba(212,175,55,.3),0 30px 70px -30px rgba(212,175,55,.4);background:radial-gradient(120% 60% at 100% 0%,rgba(212,175,55,.22),transparent 55%),linear-gradient(180deg,#123E37,#0D2320 60%,var(--surface))}
/* one badge style for plan + duration cards: a pill centred on the top edge */
body.lab #pro .plan-matrix article.is-selected::after,body.lab #pro .plan-matrix article.lp-picked::after,body.lab #pro .subscription-plans article.lp-popular::before,body.lab #pro .subscription-plans article.lp-best::before{position:absolute;top:-14px;left:50%;transform:translateX(-50%);padding:5px 16px;border-radius:999px;font:800 12.5px var(--fa);white-space:nowrap;box-shadow:0 6px 16px rgba(0,0,0,.35)}
body.lab #pro .plan-matrix article.is-selected::after{content:"✓ پلن فعلی شما";background:var(--mint);color:#0B1110}
body.lab #pro .plan-matrix article.lp-picked::after{content:"انتخاب شما";background:var(--surface-3);color:var(--text);border:1px solid var(--mint)}
body.lab #pro .plan-matrix article.plan-featured.lp-picked::after{border-color:var(--gold);color:var(--gold-soft)}
body.lab #pro .plan-matrix article.lp-picked{border-color:var(--mint);box-shadow:0 0 0 3px rgba(167,232,210,.18),0 30px 60px -30px rgba(0,0,0,.8)}
body.lab #pro .plan-matrix article.plan-featured.lp-picked{border-color:var(--gold);box-shadow:0 0 0 3px rgba(212,175,55,.3),0 30px 70px -30px rgba(212,175,55,.4)}
.lp-free-note{margin:14px 0 0!important;padding:10px 12px;border-radius:12px;background:rgba(167,232,210,.08);color:var(--mint)!important;font-size:12.5px!important;line-height:1.9!important}
.lp-free-back{margin-top:10px;padding:6px 12px;border:1px dashed var(--line);border-radius:999px;background:none;color:var(--muted);font:500 12px var(--fa);cursor:pointer}
.lp-free-back[hidden]{display:none}
.lp-toast{position:absolute;inset-inline:16px;bottom:16px;padding:10px 14px;border-radius:12px;background:var(--mint);color:#0B1110;font:700 13px var(--fa);box-shadow:0 10px 24px rgba(0,0,0,.4);animation:lp-in .2s ease-out}
@keyframes lp-in{from{opacity:0;transform:translateY(6px)}}
body.lab #pro .plan-matrix article.is-selected h3,body.lab #pro .plan-matrix article.is-selected li{color:var(--text)}
body.lab #pro .plan-matrix article.is-selected p{color:#C3D8D1}

/* duration cards (shown after choosing Plus or Pro) */
.lp-dur-title{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:34px 0 14px;padding-top:26px;border-top:1px solid var(--line)}
.lp-dur-title b{font-size:20px;font-weight:800;color:var(--text)}
.lp-dur-title span{font-size:13.5px;color:var(--muted)}
#pro:has(.subscription-plans[style*="none"]) .lp-dur-title{display:none}
body.lab #pro .subscription-plans{gap:14px;margin:0 0 18px}
body.lab #pro .subscription-plans{padding-top:14px}
body.lab #pro .subscription-plans article{overflow:visible!important;position:relative;display:flex;flex-direction:column;gap:4px;min-height:0;padding:26px 24px 22px;border:1px solid var(--line);border-radius:22px;background:var(--surface);color:var(--text);box-shadow:none;transform:none;text-align:right;cursor:pointer;transition:transform .25s,border-color .25s,box-shadow .25s}
body.lab #pro .subscription-plans article:hover{transform:translateY(-3px);border-color:rgba(167,232,210,.35)}
body.lab #pro .subscription-plans article .en{margin:0;font:700 11.5px var(--fa);letter-spacing:0;color:var(--muted)}
body.lab #pro .subscription-plans article h3{margin:2px 0 6px;font-size:20px;font-weight:800;color:var(--text)}
body.lab #pro .subscription-plans .plan-price b{font-family:var(--fa);font-size:32px;font-weight:800;letter-spacing:0;color:var(--text)}
.lp-per{margin:2px 0 6px!important;font-size:13px!important;color:var(--muted)!important}
.lp-per em{font-style:normal;font-weight:700;color:var(--mint)}
body.lab #pro .subscription-plans article>p:not(.lp-per){margin:0 0 14px;font-size:12.5px;color:var(--muted);opacity:.85}
body.lab #pro .subscription-plans article button{margin-top:auto;min-height:48px;border-radius:999px;font:700 14px var(--fa);border:1px solid var(--line);background:var(--surface-3);color:var(--text)}
body.lab #pro .subscription-plans article button.primary{border:0;background:var(--pill);color:#0B1110;box-shadow:var(--pill-glow)}
body.lab #pro .subscription-plans article.lp-popular::before{content:"محبوب";background:var(--mint);color:#0B1110}
body.lab #pro .subscription-plans article.lp-best::before{content:"به‌صرفه‌ترین";background:var(--gold);color:#130E05}
body.lab #pro .subscription-plans article.plan-featured{border-color:rgba(167,232,210,.35)}
body.lab #pro .subscription-plans article.is-selected{border-color:var(--mint);background:linear-gradient(180deg,#16332D,var(--surface) 70%);box-shadow:0 0 0 3px rgba(167,232,210,.18)}
body.lab #pro .subscription-plans article.is-selected h3,body.lab #pro .subscription-plans article.is-selected .plan-price,body.lab #pro .subscription-plans article.is-selected .en{color:var(--text)}
body.lab #pro .notice{border:1px solid var(--line);border-inline-start:3px solid var(--gold);border-radius:14px;background:var(--surface);color:var(--muted)}


/* membership dialogs from stories.js: payment + "Free activated" */
body.lab dialog.plan-payment-dialog,body.lab dialog.free-activation-dialog{color-scheme:dark;width:min(520px,calc(100% - 24px));padding:28px;border:1px solid var(--line);border-radius:26px;background:radial-gradient(120% 60% at 100% 0%,rgba(212,175,55,.16),transparent 60%),var(--surface);color:var(--text);box-shadow:0 40px 120px rgba(0,0,0,.75)}
body.lab dialog.plan-payment-dialog::backdrop,body.lab dialog.free-activation-dialog::backdrop{background:rgba(5,8,7,.8);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
body.lab :is(.plan-payment-dialog,.free-activation-dialog) .dialog-top{display:flex;justify-content:space-between;align-items:center;margin:0 0 8px;padding:0;border:0}
body.lab :is(.plan-payment-dialog,.free-activation-dialog) .eyebrow{font-family:var(--latin);font-weight:600;font-size:11.5px;letter-spacing:.18em;color:var(--mint)}
body.lab :is(.plan-payment-dialog,.free-activation-dialog) .icon{display:grid;place-items:center;width:40px;height:40px;padding:0;border:1px solid var(--line);border-radius:50%;background:var(--surface-2);color:var(--text);font-size:20px;cursor:pointer}
body.lab :is(.plan-payment-dialog,.free-activation-dialog) h2{margin:4px 0 6px;font-size:26px;font-weight:800;color:var(--text)}
body.lab :is(.plan-payment-dialog,.free-activation-dialog) p{color:#C9D1CE;font-size:14.5px}
body.lab .plan-payment-dialog>p:first-of-type{display:inline-block;margin:0 0 18px;padding:5px 14px;border-radius:999px;background:rgba(212,175,55,.14);color:var(--gold-soft);font-weight:700}
body.lab .plan-payment-dialog .payment-choice{display:grid;gap:10px;margin:0 0 14px}
body.lab :is(.plan-payment-dialog,.free-activation-dialog) button.primary{min-height:52px;border:0;border-radius:999px;background:var(--pill);color:#0B1110;font:800 15px var(--fa);box-shadow:var(--pill-glow)}
body.lab .plan-payment-dialog button.outline{min-height:52px;border:1px solid var(--line);border-radius:999px;background:var(--surface-2);color:var(--text);font:700 15px var(--fa)}
body.lab .plan-payment-dialog button.outline:hover{border-color:rgba(167,232,210,.45);color:var(--mint)}
body.lab .plan-payment-dialog .payment-info{border-radius:16px;font-size:14px;line-height:2.1;color:var(--text)}
body.lab .plan-payment-dialog .payment-info:not(:empty){padding:16px 18px;border:1px solid var(--line);border-inline-start:3px solid var(--gold);background:var(--surface-2)}
body.lab .plan-payment-dialog .payment-info strong{color:var(--gold-soft)}
body.lab .plan-payment-dialog .payment-info span[dir="ltr"]{font-family:var(--mono);font-size:13.5px;letter-spacing:.02em}
body.lab .plan-payment-dialog .payment-info small{color:var(--muted)}
body.lab :is(.plan-payment-dialog,.free-activation-dialog) .muted{margin:14px 0 0;font-size:12.5px;color:var(--muted)}
body.lab .free-activation-dialog .notice{margin:12px 0 18px;padding:14px 16px;border:1px solid var(--line);border-inline-start:3px solid var(--mint);border-radius:14px;background:var(--surface-2);color:var(--muted);font-size:13.5px;line-height:2}
body.lab .free-activation-dialog .free-close{width:100%}


/* ---------- payment page (lab-payment.js) ---------- */
body.lab dialog.dashboard.lpp{width:min(620px,calc(100% - 24px))}
.lpp-sum{margin:-6px 0 14px}
.lpp-chip{display:inline-block;padding:5px 14px;border-radius:999px;background:rgba(212,175,55,.14);color:var(--gold-soft);font-weight:700;font-size:13.5px}
.lpp-rate{position:relative;display:grid;grid-template-columns:1fr 1.3fr 1.3fr;gap:8px;margin-bottom:16px}
.lpp-rate[hidden]{display:none}
.lpp-rate-cell{display:grid;gap:2px;align-content:center;justify-items:center;text-align:center;padding:14px 10px;border:1px solid var(--line);border-radius:16px;background:var(--surface-2);font-size:12.5px;color:var(--muted)}
.lpp-rate-cell b{font-size:19px;color:var(--text);font-weight:800}
.lpp-rate-cell small{font-size:11px;color:var(--muted);line-height:1.6}
.lpp-rate-cell.is-total{background:linear-gradient(160deg,rgba(212,175,55,.16),rgba(212,175,55,.03));border-color:rgba(212,175,55,.4)}
.lpp-rate-cell.is-total b{color:var(--gold-soft);font-size:22px}
.lpp-refresh{position:absolute;top:-10px;left:-10px;width:30px;height:30px;border:1px solid var(--line);border-radius:50%;background:var(--surface-3);color:var(--text);cursor:pointer}
.lpp-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;margin-bottom:14px;border-radius:999px;background:var(--surface-2);border:1px solid var(--line)}
.lpp-tabs[hidden]{display:none}
.lpp-tabs button{padding:10px;border:0;border-radius:999px;background:transparent;color:var(--muted);font:600 13.5px var(--fa);cursor:pointer}
.lpp-tabs button[aria-selected="true"]{background:var(--pill);color:#0B1110;font-weight:800}
.lpp-pane[hidden]{display:none}
.lpp-card{display:grid;gap:6px;padding:10px;border:1px solid var(--line);border-radius:18px;background:var(--surface-2);margin-bottom:14px}
.lpp-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 12px;border-radius:12px;background:var(--surface)}
.lpp-row[hidden]{display:none}
.lpp-row>span{font-size:12.5px;color:var(--muted);white-space:nowrap}
.lpp-row>b{font-size:15px;font-weight:600;color:var(--text);text-align:left;overflow-wrap:anywhere}
.lpp-row.is-text>b{font-family:var(--fa);direction:rtl;text-align:right}
.lpp-row.is-info{grid-template-columns:auto minmax(0,1fr)}
.lpp-row.lpp-amount-row{background:linear-gradient(160deg,rgba(212,175,55,.14),var(--surface));}
.lpp-row.lpp-amount-row>b{color:var(--gold-soft)}
.lpp-copy{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border:1px solid var(--line);border-radius:999px;background:var(--surface-3);color:var(--text);font:600 12px var(--fa);cursor:pointer;transition:all .2s}
.lpp-copy svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.7}
.lpp-copy i{font-style:normal}
.lpp-copy:hover{border-color:var(--mint);color:var(--mint)}
.lpp-copy.is-done{background:var(--mint);border-color:var(--mint);color:#0B1110}
.lpp-steps{margin:0 0 14px;padding-inline-start:20px;display:grid;gap:4px;font-size:13px;color:var(--muted);line-height:1.9}
.lpp-receipt{display:grid;gap:12px}
.lpp-drop{position:relative;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:84px;padding:14px 18px;border:1.5px dashed #3A4441;border-radius:16px;background:var(--surface);cursor:pointer;transition:border-color .2s}
.lpp-drop:hover{border-color:var(--mint)}
.lpp-drop input{position:absolute;inset:0;opacity:0;cursor:pointer}
.lpp-drop-text{display:grid;gap:2px}
.lpp-drop-text b{font-size:14.5px;color:var(--text);overflow-wrap:anywhere}
.lpp-drop-text small{font-size:12px;color:var(--muted)}
.lpp-thumb{width:56px;height:56px;border-radius:10px;object-fit:cover;border:1px solid var(--line)}
.lpp-thumb[hidden]{display:none}
.lpp-field{display:grid;gap:6px;font-size:13px;color:var(--muted)}
body.lab dialog.lpp .lpp-field input{min-height:46px;padding:10px 14px;font:inherit;font-size:15px}
.lpp-error{margin:0;min-height:1.2em;font-size:13px;color:var(--gold-soft)}
.lpp-receipt .hx-pill,.lpp-cash-btn{width:100%}
.lpp-cash p{margin:4px 6px 6px;font-size:13.5px;line-height:2;color:#C9D1CE}
.lpp-map{justify-self:start;margin:2px 6px 6px;font-size:13px;color:var(--mint)}
.lpp-done[hidden]{display:none}
.lpp-done h3{margin:0 0 8px;text-align:center;font-size:20px;color:var(--text)}
.lpp-done>p{margin:0 0 14px;text-align:center;font-size:14px;line-height:2;color:#C9D1CE}
.lpp-done .lab-done-grid{grid-template-columns:repeat(3,1fr)}
.lpp-test{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin:6px 0 10px;padding:12px 14px;border:1px dashed rgba(212,175,55,.45);border-radius:14px;font-size:12.5px;color:var(--muted)}
.lpp-approve{padding:8px 16px;border:0;border-radius:999px;background:var(--gold);color:#130E05;font:800 13px var(--fa);cursor:pointer}
@media (max-width:560px){.lpp-rate{grid-template-columns:1fr 1fr}.lpp-rate-cell.is-total{grid-column:1/-1}.lpp-row{grid-template-columns:1fr auto}.lpp-row>span{grid-column:1/-1}}


/* current duration + subscription status card */
body.lab #pro .subscription-plans article.lp-current{border-color:var(--mint);box-shadow:0 0 0 3px rgba(167,232,210,.18);background:linear-gradient(180deg,#16332D,var(--surface) 70%)}
body.lab #pro .subscription-plans article.lp-current::before{display:none}
body.lab #pro .subscription-plans article.lp-current::after{content:"✓ مدت فعلی شما";position:absolute;top:-14px;left:50%;transform:translateX(-50%);padding:5px 16px;border-radius:999px;background:var(--mint);color:#0B1110;font:800 12.5px var(--fa);white-space:nowrap;box-shadow:0 6px 16px rgba(0,0,0,.35)}
body.lab dialog.dashboard .plan-status{display:none}
.lp-acc{margin:0 0 14px;padding:14px 16px;border:1px solid var(--line);border-radius:16px;background:var(--surface-2)}
.lp-acc.is-pro{border-color:rgba(212,175,55,.45);background:linear-gradient(160deg,rgba(212,175,55,.12),var(--surface-2) 60%)}
.lp-acc.is-plus{border-color:rgba(167,232,210,.35)}
.lp-acc-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.lp-acc-name{padding:3px 12px;border-radius:999px;background:var(--surface-3);font:800 13px var(--latin);color:var(--text)}
.lp-acc-name.is-plus{background:var(--mint);color:#0B1110}
.lp-acc-name.is-pro{background:var(--pill);color:#0B1110}
.lp-acc-state{font-size:13.5px;color:var(--text)}
.lp-acc-days{margin-inline-start:auto;font-size:14px;color:var(--gold-soft)}
.lp-acc-bar{height:6px;margin:12px 0 8px;border-radius:999px;background:var(--surface-3);overflow:hidden}
.lp-acc-bar i{display:block;height:100%;border-radius:999px;background:var(--pill)}
.lp-acc-dates{display:flex;justify-content:space-between;gap:10px;font-size:12px;color:var(--muted)}
.lp-acc-note{margin:8px 0 0!important;font-size:13px;color:var(--muted)}
.lp-acc-note a{color:var(--mint);font-weight:700}


/* credit ring gauges */
.lc-share[hidden]{display:none}
.lc-rings{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.lc-ring{position:relative;display:grid;justify-items:center;gap:8px;padding:18px 10px 14px;border:0;border-radius:0;background:none}
.lc-ring svg{width:min(100%,176px);aspect-ratio:1;transform:rotate(-90deg)}
.lc-ring-track{fill:none;stroke:#0E1413;stroke-width:12}
.lc-ring-fill{fill:none;stroke-width:12;stroke-linecap:round;transition:stroke-dashoffset .9s cubic-bezier(.2,.7,.2,1)}
.lc-ring.is-empty .lc-ring-fill{opacity:0}
.lc-ring-in{position:absolute;top:24px;inset-inline:0;height:min(calc(100% - 60px),176px);display:grid;place-content:center;justify-items:center;gap:2px;text-align:center;pointer-events:none}
.lc-ring-val{font-family:var(--fa);font-size:30px;font-weight:800;line-height:1.2;color:var(--text)}
.lc-ring-sub{font-size:12px;color:var(--muted)}
.lc-ring-in i{display:block;width:70px;height:1px;margin:6px 0 4px;background:var(--line)}
.lc-ring.is-empty .lc-ring-in i{display:none}
.lc-ring.is-empty .lc-ring-sub{font-size:13.5px;color:#C9D1CE}
.lc-ring-pct{font-size:12.5px;font-weight:700}
.lc-ring.is-wax .lc-ring-pct{color:#E7A0B0}
.lc-ring.is-resin .lc-ring-pct{color:var(--mint)}
.lc-ring-label{display:grid;justify-items:center;gap:2px;margin:0;font-size:15px;font-weight:700;color:var(--text)}
.lc-ring-label small{font-size:12px;font-weight:500;color:var(--muted)}
/* balance tiles stay in the DOM (credits.js writes the numbers there) but only the rings are shown */
body.lab .lab-credit .lc-tiles{display:none}
body.lab .lab-credit .credit-balances .lc-title{margin-bottom:2px}
.lc-rings{gap:12px}
.lc-ring{padding:24px 12px 18px}
@media (prefers-reduced-motion:reduce){.lc-ring-fill{transition:none}}

/* ---------- about + footer ---------- */
body.lab section.about.lab-about[id]{position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:1.05fr 1fr;column-gap:clamp(24px,5vw,72px);align-items:center;max-width:calc(var(--wrap) - 2*var(--gutter));width:calc(100% - 2*var(--gutter));margin:120px auto 0;padding:clamp(28px,5vw,64px)!important;border-radius:36px;border:1px solid rgba(255,255,255,.08);color:var(--text);background:
  radial-gradient(60% 80% at 100% 0%,rgba(31,107,95,.55),transparent 60%),
  radial-gradient(45% 60% at 0% 100%,rgba(212,175,55,.22),transparent 65%),
  radial-gradient(40% 50% at 30% 20%,rgba(167,232,210,.10),transparent 70%),
  linear-gradient(160deg,#10231F,#0D1614 55%,#141A15)}
/* fine blueprint grid + oversized watermark behind everything */
.lab-about::before{content:"";position:absolute;inset:0;z-index:-1;background-image:linear-gradient(rgba(167,232,210,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(167,232,210,.05) 1px,transparent 1px);background-size:44px 44px;-webkit-mask-image:radial-gradient(80% 80% at 50% 50%,#000 30%,transparent 80%);mask-image:radial-gradient(80% 80% at 50% 50%,#000 30%,transparent 80%)}
.lab-about::after{content:"DAKO";position:absolute;z-index:-1;left:-2%;bottom:-8%;font:800 clamp(120px,18vw,260px)/1 var(--latin);letter-spacing:.08em;color:transparent;-webkit-text-stroke:1px rgba(212,175,55,.12);pointer-events:none;direction:ltr}
.la-copy{display:grid;gap:18px;align-content:center}
body.lab .lab-about .eyebrow{margin:0;font-family:var(--latin);font-weight:600;font-size:12px;letter-spacing:.2em;color:var(--mint)}
body.lab .lab-about h2{margin:0;font-family:var(--fa);font-weight:300;font-size:clamp(28px,3vw,44px);line-height:1.5;color:#E4E8E6;text-wrap:balance}
body.lab .lab-about h2 b{font-weight:800;background:var(--pill);-webkit-background-clip:text;background-clip:text;color:transparent}
body.lab .lab-about p{margin:0;max-width:34em;font-size:15.5px;line-height:2.15;color:#C9D1CE}
.la-facts{list-style:none;margin:6px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.la-facts li{display:grid;gap:4px;justify-items:center;align-content:center;text-align:center;padding:16px 12px;border:1px solid rgba(255,255,255,.08);border-radius:16px;background:rgba(10,20,18,.45);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.la-facts b{font-size:22px;font-weight:800;color:var(--text);text-align:center}
.la-facts li:first-child b,.la-facts li:nth-child(2) b{color:var(--gold-soft)}
.la-facts span{font-size:12.5px;line-height:1.8;color:var(--muted)}
@media (max-width:900px){.la-facts{grid-template-columns:1fr 1fr}.la-facts li:last-child{grid-column:1/-1}}
.la-steps{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:13px;color:#C9D1CE}
.la-steps span{padding:5px 12px;border-radius:999px;border:1px solid rgba(167,232,210,.25);background:rgba(167,232,210,.06)}
.la-steps i{width:18px;height:1px;background:linear-gradient(90deg,var(--mint),var(--gold))}
.la-visual{position:relative;min-height:420px}
.la-ring{position:absolute;inset:8% 6% 6% 10%;border-radius:50%;border:1px solid rgba(212,175,55,.25);box-shadow:0 0 0 30px rgba(212,175,55,.04),0 0 0 62px rgba(167,232,210,.03)}
.la-img{position:absolute;object-fit:cover;border-radius:26px;border:1px solid rgba(255,255,255,.12);box-shadow:0 30px 60px -20px rgba(0,0,0,.7)}
.la-img-main{top:0;right:0;width:72%;height:82%}
.la-img-side{left:0;bottom:0;width:46%;height:52%;border-radius:22px;outline:6px solid #0F1A17}
.la-tag{position:absolute;right:6%;bottom:8%;display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:rgba(10,20,18,.75);border:1px solid rgba(255,255,255,.1);font-size:12.5px;color:var(--text);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.la-tag i{width:8px;height:8px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 4px rgba(212,175,55,.2)}
@media (max-width:900px){body.lab section.about.lab-about[id]{grid-template-columns:1fr;row-gap:28px}.la-visual{min-height:320px}}
body.lab footer{margin-top:100px;padding:52px var(--gutter) 28px;background:#0A0D0C;border-top:1px solid var(--line);color:var(--text);grid-template-columns:1.3fr 1fr 1fr;column-gap:clamp(32px,6vw,96px)}
body.lab footer .brand{justify-self:start;text-align:right;color:var(--text);font-family:var(--latin);font-weight:700;letter-spacing:.22em}
body.lab footer .brand span{text-align:right}
body.lab footer h3{font-size:14px;font-weight:700;color:var(--text)}
body.lab footer a{color:var(--muted)}
body.lab footer a:hover{color:var(--mint)}
body.lab footer .copyright{color:var(--muted)}
@media (max-width:760px){body.lab footer{grid-template-columns:1fr;row-gap:24px}}

/* ---------- dialogs keep their light palette; only soften the edges ---------- */
body.lab dialog{border-radius:var(--r-lg);color-scheme:light}


/* ---------- account + notifications dialogs (dialog.dashboard) in the dark studio theme ---------- */
body.lab dialog.dashboard{color-scheme:dark;width:min(780px,calc(100% - 24px));max-height:calc(100dvh - 40px);overflow:auto;padding:28px;border:1px solid var(--line);border-radius:28px;background:radial-gradient(120% 60% at 100% 0%,rgba(31,107,95,.28),transparent 60%),var(--surface);color:var(--text);box-shadow:0 40px 120px rgba(0,0,0,.75);scrollbar-width:thin;scrollbar-color:var(--line) transparent}
body.lab dialog.dashboard::backdrop{background:rgba(5,8,7,.8);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
body.lab dialog.dashboard .dialog-top{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin:0 0 20px;padding:0;border:0}
body.lab dialog.dashboard .dialog-top .eyebrow{display:block;font-family:var(--latin);font-weight:600;font-size:11.5px;letter-spacing:.18em;color:var(--mint);text-align:right}
body.lab dialog.dashboard h2{margin:6px 0 0;font-family:var(--fa);font-weight:800;font-size:clamp(24px,3vw,32px);color:var(--text)}
body.lab dialog.dashboard .dialog-top .icon{flex:none;display:grid;place-items:center;width:42px;height:42px;padding:0;border:1px solid var(--line);border-radius:50%;background:var(--surface-2);color:var(--text);font-size:22px;line-height:1;cursor:pointer;transition:border-color .2s,color .2s}
body.lab dialog.dashboard .dialog-top .icon:hover{border-color:rgba(167,232,210,.45);color:var(--mint)}
body.lab dialog.dashboard .notice{margin:0 0 14px;padding:14px 16px;border:1px solid var(--line);border-inline-start:3px solid var(--gold);border-radius:14px;background:var(--surface-2);color:var(--muted);font-size:13.5px;line-height:2}
body.lab dialog.dashboard .notice strong{color:var(--gold-soft)}
body.lab dialog.dashboard .plan-status{border-inline-start-color:var(--mint)}
body.lab dialog.dashboard .plan-status strong{color:var(--mint)}
body.lab dialog.dashboard .dashboard-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:0 0 14px}
body.lab dialog.dashboard .dashboard-stats>div{display:grid;gap:4px;padding:18px;border:1px solid var(--line);border-radius:18px;background:var(--surface-2);color:var(--muted);font-size:13px}
body.lab dialog.dashboard .dashboard-stats b{font-family:var(--latin);font-size:28px;font-weight:600;line-height:1.3;color:var(--text)}
body.lab dialog.dashboard .dashboard-stats>div:last-child b{font-family:var(--fa);font-size:18px;font-weight:800;color:var(--gold-soft)}
body.lab dialog.dashboard .dashboard-tabs{display:flex;flex-wrap:wrap;gap:6px;margin:18px 0 16px}
body.lab dialog.dashboard .dashboard-tabs .filter{padding:9px 16px;border:1px solid var(--line);border-radius:999px;background:var(--surface-2);color:var(--muted);font-size:13.5px}
body.lab dialog.dashboard .dashboard-tabs .filter:hover{border-color:rgba(167,232,210,.4);color:var(--text)}
body.lab dialog.dashboard .dashboard-tabs .filter.active{background:var(--pill);border-color:transparent;color:#0B1110;font-weight:700}
body.lab dialog.dashboard #dash-content{color:var(--text)}
body.lab dialog.dashboard .empty-state{margin:6px 0 0;padding:40px 20px;border:1.5px dashed #3A4441;border-radius:18px;background:transparent;color:var(--muted);text-align:center;font-size:14px}
body.lab dialog.dashboard .summary,body.lab dialog.dashboard article{border:1px solid var(--line);border-radius:16px;background:var(--surface-2);color:var(--text)}
body.lab dialog.dashboard .summary{padding:16px 18px;margin:0 0 10px}
body.lab dialog.dashboard .summary h3{color:var(--text)}
body.lab dialog.dashboard .summary p,body.lab dialog.dashboard .muted,body.lab dialog.dashboard small{color:var(--muted)}
body.lab dialog.dashboard input,body.lab dialog.dashboard select,body.lab dialog.dashboard textarea{border:1px solid var(--line);border-radius:12px;background:var(--surface-3);color:var(--text)}
body.lab dialog.dashboard label{color:var(--muted)}
body.lab dialog.dashboard .outline{border:1px solid var(--line);border-radius:999px;background:var(--surface-3);color:var(--text)}
body.lab dialog.dashboard .primary,body.lab dialog.dashboard #dash-new{display:inline-flex;align-items:center;justify-content:center;min-height:50px;margin-top:18px;padding:12px 30px;border:0;border-radius:999px;background:var(--pill);color:#0B1110;font-weight:800;box-shadow:var(--pill-glow)}
body.lab dialog.dashboard .credit-balances{display:grid;grid-template-columns:1fr 1fr;gap:10px}
body.lab dialog.dashboard .credit-balances strong b{font-family:var(--latin);color:var(--text)}
@media (max-width:560px){
  body.lab dialog.dashboard{padding:20px;border-radius:22px}
  body.lab dialog.dashboard .dashboard-stats{grid-template-columns:1fr 1fr}
  body.lab dialog.dashboard .dashboard-stats>div:last-child{grid-column:1/-1}
  body.lab dialog.dashboard .dashboard-tabs{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}
  body.lab dialog.dashboard .dashboard-tabs .filter{flex:none}
}


/* sign-in + order confirmation (built by lab-order.js, share the dashboard dialog look) */
body.lab dialog.lab-flow-dialog{width:min(560px,calc(100% - 24px))}
.lab-login-form{display:grid;gap:14px}
.lab-login-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.lab-login-form label{display:grid;gap:6px;font-size:13px}
body.lab dialog.lab-flow-dialog input{min-height:48px;padding:10px 14px;font:inherit;font-size:15px}
body.lab dialog.lab-flow-dialog input:focus{outline:none;border-color:var(--mint);box-shadow:0 0 0 3px rgba(167,232,210,.15)}
.lab-login-error{margin:0;min-height:1.2em;font-size:13px;color:var(--gold-soft)}
.lab-login-form .hx-pill{width:100%}
.lab-done-mark{display:grid;place-items:center;width:64px;height:64px;margin:4px auto 14px;border-radius:50%;background:var(--pill);color:#0B1110;font:800 28px var(--latin);box-shadow:var(--pill-glow)}
.lab-done-lead{margin:0 0 16px;text-align:center;font-size:15px;line-height:2.1;color:#C9D1CE}
.lab-done-lead b{color:var(--mint)}
.lab-done-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:12px}
.lab-done-grid>div{display:grid;gap:2px;justify-items:center;padding:12px 8px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2);font-size:12px;color:var(--muted)}
.lab-done-grid b{font-size:16px;color:var(--text)}
.lab-done-files{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin:0 0 14px}
.lab-done-files span{padding:3px 10px;border-radius:999px;border:1px solid var(--line);font-size:11.5px;color:var(--muted)}
.lab-done-steps{list-style:none;margin:0 0 14px;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:6px;counter-reset:s}
.lab-done-steps li{position:relative;padding-top:18px;font-size:12px;text-align:center;color:var(--muted)}
.lab-done-steps li::before{content:"";position:absolute;top:4px;inset-inline:0;height:4px;border-radius:4px;background:var(--surface-3)}
.lab-done-steps li.is-done{color:var(--text)}
.lab-done-steps li.is-done::before{background:var(--mint)}
.lab-done-steps li.is-now{color:var(--gold-soft);font-weight:700}
.lab-done-steps li.is-now::before{background:linear-gradient(90deg,var(--surface-3),var(--gold))}
.lab-done-actions{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin-top:6px}
body.lab dialog .lab-done-actions .hx-ghost{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:0 30px;border:1px solid var(--line);border-radius:999px;background:var(--surface-2);color:var(--text);font:600 15px var(--fa);cursor:pointer;transition:border-color .2s,color .2s,background .2s}
body.lab dialog .lab-done-actions .hx-ghost:hover{border-color:rgba(167,232,210,.45);color:var(--mint);background:var(--surface-3)}
body.lab dialog.lab-flow-dialog .hx-pill{margin-top:0}
body.lab header .lab-account.is-in{position:relative}
body.lab header .lab-account.is-in::after{content:"";position:absolute;top:2px;left:2px;width:10px;height:10px;border-radius:50%;background:#3FB39A;box-shadow:0 0 0 2px var(--bg)}
@media (max-width:520px){.lab-login-grid,.lab-done-grid{grid-template-columns:1fr 1fr}.lab-done-steps{grid-template-columns:1fr 1fr;row-gap:12px}}


/* account bar inside "استودیوی من" */
.lab-account-bar{display:flex;align-items:center;gap:12px;margin:0 0 14px;padding:12px 14px;border:1px solid var(--line);border-radius:16px;background:var(--surface-2)}
.lab-avatar{flex:none;display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--pill);color:#0B1110;font:800 17px var(--fa)}
.lab-avatar.is-guest{background:var(--surface-3);color:var(--muted)}
.lab-account-who{display:grid;gap:2px;min-width:0;flex:1}
.lab-account-who b{font-size:15px;color:var(--text)}
.lab-account-who small{font-size:12px;color:var(--muted);text-align:right}
.lab-signout,.lab-signin{flex:none;display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 16px;border-radius:999px;font:600 13.5px var(--fa);cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.lab-signout{border:1px solid rgba(214,110,128,.45);background:transparent;color:#E59AA8}
.lab-signout:hover{background:rgba(214,110,128,.14);border-color:#E59AA8}
.lab-signout svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.lab-signin{border:0;background:var(--pill);color:#0B1110}
.lab-signout-note{margin:-6px 0 12px;font-size:13px;color:var(--mint)}
@media (max-width:520px){.lab-account-bar{flex-wrap:wrap}.lab-signout,.lab-signin{width:100%;justify-content:center}}


/* ---------- collection viewer + order (lab-collection.js) ---------- */
body.lab dialog.dashboard.lab-coll{width:min(1180px,calc(100% - 24px));max-height:calc(100dvh - 32px);padding:24px}
.lab-coll .dialog-top{margin-bottom:16px}
.lcl-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:16px;align-items:start}
.lcl-stage{position:relative;min-height:560px;height:100%;border-radius:22px;overflow:hidden;border:1px solid var(--line);background:radial-gradient(70% 70% at 50% 45%,#133F38,#0B1A18 75%)}
.lcl-stage:focus-visible{outline:2px solid var(--mint);outline-offset:3px}
.lcl-render{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.lcl-render{transform-origin:0 0;transition:transform .12s ease-out;will-change:transform}
.lcl-stage:not(.is-zoomed) .lcl-render{cursor:zoom-in}
.lcl-stage.is-zoomed .lcl-render{cursor:grab}
.lcl-stage.is-dragging .lcl-render{cursor:grabbing;transition:none}
.lcl-stage{touch-action:none;user-select:none;-webkit-user-select:none}
.lcl-zoom{position:absolute;z-index:4;bottom:14px;left:14px;display:flex;align-items:center;gap:6px}
.lcl-zoom[hidden]{display:none}
.lcl-zoom-hint{padding:5px 12px;border-radius:999px;background:rgba(0,0,0,.5);font-size:11.5px;color:rgba(255,255,255,.8);pointer-events:none}
.lcl-zoom-level{padding:5px 10px;border-radius:999px;background:rgba(0,0,0,.55);font-size:12px;color:#fff}
.lcl-zoom-reset{width:32px;height:32px;border:0;border-radius:50%;background:var(--pill);color:#0B1110;font-size:16px;cursor:pointer}
.lcl-zoom-hint[hidden],.lcl-zoom-level[hidden],.lcl-zoom-reset[hidden]{display:none}
@media (hover:none){.lcl-zoom-hint{display:none}}
.lcl-3d{position:absolute;inset:0;touch-action:none;cursor:grab}
.lcl-3d canvas{display:block;width:100%;height:100%}
.lcl-3d[hidden],.lcl-render[hidden],.lcl-3d-lock[hidden]{display:none}
.lcl-3d-lock{position:absolute;inset:0;z-index:2;display:grid;place-content:center;justify-items:center;gap:10px;padding:24px;text-align:center;background:linear-gradient(rgba(11,26,24,.55),rgba(11,26,24,.9)),var(--lcl-bg,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.lcl-3d-lock svg{width:44px;height:44px;fill:none;stroke:var(--gold-soft);stroke-width:1.5}
.lcl-3d-lock b{font-size:18px;color:var(--text)}
.lcl-3d-lock span{max-width:26em;font-size:13.5px;line-height:2;color:var(--muted)}
.lcl-tabs{position:absolute;z-index:4;top:14px;right:14px;display:flex;gap:3px;padding:4px;border-radius:999px;background:rgba(0,0,0,.45);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.lcl-tabs button{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border:0;border-radius:999px;background:transparent;color:var(--muted);font:600 12.5px var(--fa);cursor:pointer}
.lcl-tabs button[aria-pressed="true"]{background:var(--pill);color:#0B1110}
.lcl-tab-lock{display:inline-flex;align-items:center;gap:3px;font:700 10.5px var(--latin);color:var(--gold-soft)}
.lcl-tabs button[aria-pressed="true"] .lcl-tab-lock{color:#0B1110}
.lcl-tab-lock svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:2}
.lcl-looks{position:absolute;z-index:4;bottom:48px;left:50%;transform:translateX(-50%);display:flex;gap:4px;padding:4px;border-radius:999px;background:rgba(0,0,0,.5);border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.lcl-looks[hidden]{display:none}
.lcl-looks button{display:inline-flex;align-items:center;gap:7px;padding:8px 16px;border:0;border-radius:999px;background:transparent;color:var(--muted);font:600 13px var(--fa);cursor:pointer}
.lcl-looks button i{width:10px;height:10px;border-radius:50%;background:linear-gradient(135deg,#FFE9A8,#D4AF37)}
.lcl-looks button[data-look="resin"] i{background:#3FB39A}
.lcl-looks button[data-look="wax"] i{background:#C66B80}
.lcl-looks button[aria-pressed="true"]{background:rgba(255,255,255,.14);color:#fff}
.lcl-stage:has(.lcl-looks:not([hidden])) .lo-dots{bottom:14px}
.lcl-stage .lo-nav{z-index:3}
.lcl-stage-name{position:absolute;z-index:3;top:16px;left:16px;padding:5px 12px;border-radius:999px;background:rgba(0,0,0,.45);font-size:12px;color:var(--text)}
.lcl-stage-info{position:absolute;z-index:3;bottom:14px;left:14px;font-size:12px;color:var(--text);text-shadow:0 1px 6px rgba(0,0,0,.8)}
.lcl-stage-info:empty,.lcl-stage-name:empty{display:none}
.lcl-side{display:grid;gap:12px;align-content:start}
.lcl-plan-chip{padding:3px 10px;border-radius:999px;background:rgba(212,175,55,.14);color:var(--gold-soft);font-size:12px;font-weight:700}
.lcl-list{max-height:250px}
.lcl-row{grid-template-columns:auto minmax(0,1fr) auto;cursor:pointer}
.lcl-thumb{width:44px;height:44px;border-radius:10px;object-fit:cover;border:1px solid var(--line)}
.lcl-gold{background:linear-gradient(160deg,rgba(212,175,55,.12),rgba(212,175,55,.02))!important;border-color:rgba(212,175,55,.3)!important}
.lcl-gold b{color:#F2D98C!important}
.lo-kpis small em{font-style:normal}
.lo-kpis small s{color:var(--muted);opacity:.8}
[data-material="resin"] .lcl-have{background:linear-gradient(90deg,#1F6B5F,#3FB39A)}
[data-material="wax"] .lcl-have{background:linear-gradient(90deg,#8E3F51,#C66B80)}

/* Free: cover + locked models */
.lcl-free{display:grid;grid-template-columns:1.1fr 1fr;gap:18px;align-items:stretch}
.lcl-cover{position:relative;min-height:460px;border-radius:22px;overflow:hidden;border:1px solid var(--line)}
.lcl-cover img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.lcl-cover-tag{position:absolute;bottom:14px;right:14px;padding:6px 14px;border-radius:999px;background:rgba(0,0,0,.55);color:#fff;font-size:13px}
.lcl-free-side{display:grid;gap:14px;align-content:start}
.lcl-desc{margin:0;color:#C9D1CE;font-size:15px;line-height:2}
.lcl-locked-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px}
.lcl-locked{position:relative;aspect-ratio:1;border-radius:14px;overflow:hidden;border:1px solid var(--line);background:var(--surface-2)}
.lcl-locked img{width:100%;height:100%;object-fit:cover;filter:blur(14px) saturate(.4) brightness(.45);transform:scale(1.2)}
.lcl-lock{position:absolute;inset:0;display:grid;place-items:center}
.lcl-lock svg{width:26px;height:26px;fill:none;stroke:var(--gold-soft);stroke-width:1.6}
.lcl-locked b{position:absolute;inset-inline:0;bottom:6px;text-align:center;font-size:10.5px;font-weight:500;color:var(--muted)}
.lcl-free-note{margin:0;font-size:13px;color:var(--gold-soft)}
.lcl-plans{display:grid;gap:8px}
.lcl-plans>div{display:grid;gap:2px;padding:12px 16px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2)}
.lcl-plans>div.is-pro{border-color:rgba(212,175,55,.45);background:linear-gradient(160deg,rgba(212,175,55,.1),var(--surface-2))}
.lcl-plans b{font-family:var(--latin);font-size:15px;color:var(--mint)}
.lcl-plans .is-pro b{color:var(--gold-soft)}
.lcl-plans ul{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.lcl-plans li{padding:3px 10px;border-radius:999px;background:var(--surface-3);font-size:12.5px;color:var(--muted)}
.lcl-plans li.is-deal{background:rgba(167,232,210,.12);color:var(--mint);font-weight:700}
.lcl-plans .is-pro li.is-deal{background:rgba(212,175,55,.16);color:var(--gold-soft)}
@media (max-width:900px){.lcl-grid,.lcl-free{grid-template-columns:1fr}.lcl-stage{min-height:380px}.lcl-cover{min-height:300px}}

/* floating "گفت‌وگو با داکو" launcher (experience.js) is not used in this design */
body.lab .assistant-launch{display:none!important}

/* ---------- responsive ---------- */
@media (max-width:1060px){
  .hx-hero{grid-template-columns:1fr}
}
@media (max-width:700px){body.lab section#material-credit{padding:80px var(--gutter) 0;margin:0 auto}}
@media (max-width:980px){
  .lo-grid{grid-template-columns:1fr}
  .lo-viewer{min-height:380px}
  body.lab .lab-credit .credit-layout{grid-template-columns:1fr}
}
@media (max-width:760px){
  body.lab .about,body.lab section.about[id]{grid-template-columns:1fr}
  .hx-panel{grid-template-columns:1fr;padding:10px}
  .hx-tools{grid-row:auto;flex-direction:row;justify-content:center}
}
@media (max-width:520px){
  .lo-row{grid-template-columns:1fr}
  .lo-kpis b{font-size:19px}
  body.lab .lab-credit .credit-packs{grid-template-columns:1fr 1fr}

  .hx-ctas .hx-pill{flex:1}
  .lab-status ol{font-size:11.5px}
  .lab-toolbar{width:100%;justify-content:space-between}
  .hx-meta{display:none}
}
@media (prefers-reduced-motion:reduce){body.lab *{transition:none!important}}

/* ---------- section subtitles: brighter callout beside each title ---------- */
body.lab .section-top>.muted,body.lab .section-top>span.muted{position:relative;max-width:430px;padding:6px 18px 6px 0;margin:0 0 6px;font-size:15px;line-height:2;font-weight:500;color:#D6DEDA!important;border-inline-start:2px solid transparent;border-image:linear-gradient(180deg,#A7E8D2,#D4AF37) 1;text-wrap:pretty}
body.lab .section-top>.muted::before{content:"";position:absolute;inset-inline-start:-6px;top:0;width:10px;height:10px;border-radius:50%;background:var(--mint);box-shadow:0 0 14px rgba(167,232,210,.8)}
@media (max-width:760px){body.lab .section-top>.muted,body.lab .section-top>span.muted{font-size:14px;max-width:none;margin-top:12px}}

/* ---------- print tool: supports & casting sprue (resin) ---------- */
.lo-prep{display:grid;gap:10px;padding:14px;border-radius:var(--r-md);background:linear-gradient(160deg,rgba(31,138,116,.14),rgba(31,138,116,.03));border:1px solid rgba(167,232,210,.22)}
.lo-prep[hidden]{display:none}
.lo-prep-head{display:flex;gap:12px;align-items:center}
.lo-prep-head svg{flex:none;width:34px;height:34px;padding:7px;border-radius:10px;background:rgba(167,232,210,.12);fill:none;stroke:var(--mint);stroke-width:1.8;stroke-linecap:round}
.lo-prep-head b{display:block;font-size:14px;color:var(--text)}
.lo-prep-head span{font-size:12.5px;color:var(--muted)}
.lo-prep-msg{margin:0;font-size:12.5px;line-height:1.9;color:#C9D3CF}
.lo-prep-msg b{color:var(--mint)}
.lo-kpis small em,.lo-kpis #lo-gr-sub em{font-style:normal;color:var(--mint);font-size:11px}
/* collection dialog: model + sprue = print weight */
.lcl-prep{display:grid;gap:8px;padding:12px 14px;border-radius:var(--r-md);background:var(--surface-2);border:1px dashed rgba(167,232,210,.3)}
.lcl-prep-flow{display:flex;align-items:center;justify-content:space-between;gap:6px;text-align:center}
.lcl-prep-flow span{display:grid;gap:2px;flex:1}
.lcl-prep-flow small{font-size:11.5px;color:var(--muted)}
.lcl-prep-flow b{font-size:15px;font-weight:500;color:var(--text)}
.lcl-prep-flow .is-total b{color:var(--mint)}
.lcl-prep-flow i{font-style:normal;color:var(--muted);font-size:16px}
.lcl-prep-msg{margin:0;font-size:12px;line-height:1.85;color:var(--muted)}
.lcl-prep-msg b{color:var(--text);font-weight:600}

/* ---------- plans: AI perk ---------- */
body.lab #pro .plan-matrix .plan-features li.lp-ai{cursor:pointer;padding:9px 10px;margin:0 -10px;border-radius:12px;background:linear-gradient(100deg,rgba(167,232,210,.12),rgba(212,175,55,.12));border:1px solid rgba(212,175,55,.3);color:var(--text);align-items:center;transition:transform .2s,border-color .2s}
body.lab #pro .plan-matrix .plan-features li.lp-ai:hover{transform:translateY(-1px);border-color:rgba(212,175,55,.6)}
body.lab #pro .plan-matrix .plan-features li.lp-ai::before{content:none}
body.lab #pro .plan-matrix .plan-features li.lp-ai b{font-weight:700;background:var(--pill);-webkit-background-clip:text;background-clip:text;color:transparent}
.lp-ai-tag{flex:none;font-family:var(--latin);font-size:10.5px;font-weight:700;letter-spacing:.06em;padding:3px 8px;border-radius:999px;background:var(--pill);color:#0B1110;direction:ltr}

/* ---------- account panel: AI tab & support tab ---------- */
body.lab dialog.dashboard .dashboard-tabs .filter.lai-tab{display:inline-flex;align-items:center;gap:6px;border-color:rgba(212,175,55,.45);color:var(--gold-soft);background:linear-gradient(100deg,rgba(167,232,210,.1),rgba(212,175,55,.14))}
body.lab dialog.dashboard .dashboard-tabs .filter.lai-tab svg{width:15px;height:15px;fill:currentColor}
body.lab dialog.dashboard .dashboard-tabs .filter.lai-tab.active{background:var(--pill);color:#0B1110}
body.lab dialog.dashboard .dashboard-tabs .filter.lt-tab::before{content:"?";display:inline-grid;place-items:center;width:17px;height:17px;margin-inline-end:6px;border-radius:50%;border:1px solid currentColor;font-size:11px;font-weight:700}
.lai-dash{display:grid;gap:14px}
.lai-dash-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center;padding:22px;border-radius:22px;border:1px solid rgba(212,175,55,.35);background:radial-gradient(120% 140% at 100% 0%,rgba(31,138,116,.45),transparent 60%),radial-gradient(90% 120% at 0% 100%,rgba(212,175,55,.22),transparent 60%),var(--surface-2)}
.lai-dash-hero h3{margin:4px 0 6px;font-size:19px;font-weight:800;color:var(--text)}
.lai-dash-hero p{margin:0;font-size:13px;line-height:1.9;color:#C9D3CF}
.lai-dash-hero .eyebrow{font-family:var(--latin);font-size:10.5px;letter-spacing:.18em;color:var(--gold-soft)}
.lai-dash-hero .hx-pill{grid-column:1/-1;justify-self:start;display:inline-flex;align-items:center;gap:8px}
.lai-dash-hero .hx-pill svg{width:18px;height:18px;fill:currentColor}
.lai-orb{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(from 0deg,#A7E8D2,#D4AF37,#1F8A74,#A7E8D2);animation:lai-spin 6s linear infinite;box-shadow:0 0 30px rgba(212,175,55,.35)}
.lai-orb svg{width:30px;height:30px;fill:#0B1110;animation:lai-spin 6s linear infinite reverse}
@keyframes lai-spin{to{transform:rotate(360deg)}}
.lai-dash-q{display:grid;justify-items:center;text-align:center;gap:2px;min-width:92px}
.lai-dash-q b{font-size:30px;font-weight:600;color:var(--text)}
.lai-dash-q b small{font-size:15px;color:var(--muted)}
.lai-dash-q span{font-size:11.5px;color:var(--muted)}
.lai-dash-list{display:grid;gap:8px}
.lai-req{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:10px;border-radius:16px;background:var(--surface-2);border:1px solid var(--line)}
.lai-req img,.lai-req-file{width:52px;height:52px;border-radius:12px;object-fit:cover;background:#0B1110;display:grid;place-items:center;font-family:var(--latin);font-size:12px;color:var(--mint)}
.lai-req b{font-size:14px}.lai-req p{margin:2px 0;font-size:12.5px;color:#C9D3CF}.lai-req small{font-size:11px;color:var(--muted)}
.lai-status,.lt-status{font-size:11.5px;padding:4px 10px;border-radius:999px;background:rgba(212,175,55,.14);color:var(--gold-soft);white-space:nowrap}
.lai-dash-hint{margin:0;font-size:12.5px;color:var(--muted)}
.lai-dash-hint button,.lt-ai-hint button{all:unset;cursor:pointer;color:var(--mint);text-decoration:underline;text-underline-offset:3px;display:inline-flex;align-items:center;gap:4px}
.lt-ai-hint button svg{width:13px;height:13px;fill:currentColor}
@media (max-width:640px){.lai-dash-hero{grid-template-columns:auto 1fr}.lai-dash-q{grid-column:1/-1;grid-row:3;justify-items:start;text-align:start}.lai-orb{width:52px;height:52px}}
/* support tickets: calm and plain, clearly not the AI tool */
.lt{display:grid;gap:14px}
.lt-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;padding:16px;border-radius:18px;background:var(--surface-2);border:1px solid var(--line)}
.lt-head b{display:block;font-size:16px;margin-bottom:4px}.lt-head span{font-size:13px;line-height:1.9;color:var(--muted)}
.lt-badge{flex:none;font-size:11.5px!important;padding:4px 10px;border-radius:999px;background:rgba(167,232,210,.12);color:var(--mint)!important}
.lt-form{display:grid;gap:10px}
.lt-topics{display:flex;flex-wrap:wrap;gap:6px}
.lt-topics button{padding:7px 14px;border-radius:999px;border:1px solid var(--line);background:transparent;color:var(--muted);font:inherit;font-size:13px;cursor:pointer}
.lt-topics button[aria-pressed="true"]{border-color:var(--mint);color:var(--mint);background:rgba(167,232,210,.08)}
body.lab .lt-form textarea{min-height:110px;padding:12px 14px;border-radius:14px;border:1px solid var(--line);background:var(--bg);color:var(--text);font:inherit;font-size:14px;resize:vertical}
body.lab .lt-form textarea:focus{outline:none;border-color:var(--mint)}
.lt-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between}
.lt-row .hx-pill{margin:0}
.lt-ai-hint{font-size:12.5px;color:var(--muted)}
.lt-list{display:grid;gap:8px}
.lt-list article{display:grid;gap:4px;padding:12px 14px;border-radius:14px;background:var(--surface-2);border:1px solid var(--line);position:relative}
.lt-list article div{display:flex;gap:10px;align-items:baseline}.lt-list small{font-size:11px;color:var(--muted)}
.lt-list p{margin:0;font-size:13px;color:#C9D3CF;padding-inline-end:110px}
.lt-list .lt-status{position:absolute;inset-inline-end:12px;top:12px;background:var(--surface-3);color:var(--muted)}

/* ---------- AI edit studio dialog ---------- */
body.lab dialog.lab-ai{width:min(960px,calc(100% - 24px));overflow:hidden auto;position:fixed}
.lai-glow{position:absolute;inset:-40% -20% auto auto;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(212,175,55,.18),transparent 65%);pointer-events:none}
body.lab dialog.lab-ai h2 b{background:var(--pill);-webkit-background-clip:text;background-clip:text;color:transparent}
body.lab dialog.lab-ai .eyebrow{color:var(--gold-soft)}
.lai-quota{display:flex;align-items:center;gap:12px;margin:14px 0 16px;font-size:13px;color:var(--muted)}
.lai-quota b{color:var(--text);font-size:15px}
.lai-q-bar{flex:0 0 140px;height:6px;border-radius:9px;background:var(--surface-3);overflow:hidden}
.lai-q-bar i{display:block;height:100%;background:var(--pill);border-radius:inherit;transition:width .5s}
.lai-q-lock{color:var(--gold-soft)}
.lai-plan{margin-inline-start:auto;font-family:var(--latin);font-size:11.5px;font-weight:700;padding:3px 10px;border-radius:999px;border:1px solid var(--line);color:var(--text)}
.lai-grid{display:grid;grid-template-columns:300px 1fr;gap:16px;min-height:430px}
.lai-pick{display:grid;align-content:start;gap:10px}
.lai-stage{position:relative;aspect-ratio:1;border-radius:20px;overflow:hidden;background:radial-gradient(circle at 50% 40%,#1F2A28,#0B1110);border:1px solid var(--line);display:grid;place-items:center}
.lai-stage-img{width:100%;height:100%;object-fit:cover}
.lai-stage-name{position:absolute;bottom:10px;inset-inline-start:10px;font-family:var(--latin);font-size:12px;padding:4px 10px;border-radius:999px;background:rgba(11,17,16,.7);backdrop-filter:blur(6px);color:var(--text)}
.lai-scan{position:absolute;inset:0;background:linear-gradient(180deg,transparent 0%,rgba(167,232,210,.35) 50%,transparent 52%);transform:translateY(-100%);pointer-events:none}
.lai-stage.is-scan .lai-scan{animation:lai-scan 1.3s ease-out}
@keyframes lai-scan{to{transform:translateY(100%)}}
.lai-label{margin:4px 0 0;font-size:12.5px;color:var(--muted)}
.lai-models{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}
.lai-m{aspect-ratio:1;padding:0;border-radius:10px;overflow:hidden;border:1.5px solid var(--line);background:var(--surface-2);cursor:pointer;display:grid;place-items:center}
.lai-m img{width:100%;height:100%;object-fit:cover}
.lai-m.is-on{border-color:var(--gold);box-shadow:0 0 0 3px rgba(212,175,55,.2)}
.lai-own span{display:grid;justify-items:center;font-size:18px;color:var(--mint);line-height:1}
.lai-own small{font-size:9px;color:var(--muted);margin-top:3px}
.lai-chat{position:relative;display:grid;grid-template-rows:1fr auto auto;gap:10px;min-height:0;padding:14px;border-radius:20px;background:var(--surface-2);border:1px solid var(--line)}
.lai-log{overflow:auto;max-height:430px;display:flex;flex-direction:column;gap:10px;padding:4px}
.lai-msg{display:flex;gap:8px;align-items:flex-start;max-width:92%;animation:lai-in .3s ease-out}
@keyframes lai-in{from{opacity:0;transform:translateY(6px)}}
.lai-msg>div{padding:10px 14px;border-radius:16px;font-size:13.5px;line-height:1.95}
.lai-msg p{margin:0}.lai-msg p+p{margin-top:6px}
.lai-msg.is-ai>div{background:var(--surface-3);border-start-start-radius:4px;color:#E4E8E6}
.lai-msg.is-ai b{color:var(--mint)}
.lai-msg.is-me{align-self:flex-end}
.lai-msg.is-me>div{background:linear-gradient(135deg,#1F6B5F,#0E4D45);color:#F2F1EC;border-start-end-radius:4px}
.lai-ava{flex:none;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#A7E8D2,#D4AF37,#A7E8D2)}
.lai-ava svg{width:15px;height:15px;fill:#0B1110}
.lai-typing{display:inline-flex;gap:4px;padding:4px 0}
.lai-typing i{width:6px;height:6px;border-radius:50%;background:var(--mint);animation:lai-dot 1s infinite}
.lai-typing i:nth-child(2){animation-delay:.15s}.lai-typing i:nth-child(3){animation-delay:.3s}
@keyframes lai-dot{50%{opacity:.25;transform:translateY(-3px)}}
.lai-brief{margin-top:8px;padding:12px;border-radius:14px;background:#111716;border:1px solid rgba(212,175,55,.35)}
.lai-brief-top{display:flex;gap:10px;align-items:center;margin-bottom:8px}
.lai-brief-top img{width:44px;height:44px;border-radius:10px;object-fit:cover}
.lai-brief-top small{display:block;font-size:11px;color:var(--gold-soft)}
.lai-brief ul{list-style:none;margin:0 0 10px;padding:0;display:grid;gap:4px}
.lai-brief li{display:flex;justify-content:space-between;gap:10px;padding:6px 0;border-bottom:1px dashed var(--line);font-size:13px}
.lai-brief li span{color:var(--muted)}.lai-brief li b{color:var(--text)!important;font-weight:600}
.lai-brief-act{display:flex;flex-wrap:wrap;gap:8px}
.lai-brief-act .hx-pill{margin:0;padding:10px 18px;font-size:13.5px}
.lai-brief-act .hx-pill small{opacity:.7;font-size:11px;margin-inline-start:4px}
.lai-brief-act .hx-ghost{padding:10px 16px;font-size:13px}
.lai-ok{color:var(--mint);font-weight:700}
.lai-quick{display:flex;flex-wrap:wrap;gap:6px}
.lai-quick button{padding:6px 12px;border-radius:999px;border:1px solid rgba(212,175,55,.35);background:rgba(212,175,55,.06);color:var(--gold-soft);font:inherit;font-size:12.5px;cursor:pointer}
.lai-quick button:hover{background:rgba(212,175,55,.16)}
.lai-input{display:flex;gap:8px;align-items:flex-end;padding:6px;border-radius:18px;background:var(--bg);border:1px solid var(--line)}
.lai-input:focus-within{border-color:rgba(212,175,55,.6);box-shadow:0 0 0 3px rgba(212,175,55,.12)}
body.lab .lai-input textarea{flex:1;min-height:40px;max-height:120px;padding:9px 10px;border:0;background:transparent;color:var(--text);font:inherit;font-size:14px;resize:none;outline:none}
.lai-send{flex:none;width:42px;height:42px;border:0;border-radius:50%;background:var(--pill);display:grid;place-items:center;cursor:pointer;box-shadow:var(--pill-glow)}
.lai-send svg{width:20px;height:20px;fill:#0B1110}
.lai-lock{position:absolute;inset:0;display:grid;place-items:center;padding:20px;border-radius:inherit;background:rgba(14,18,17,.82);backdrop-filter:blur(5px);text-align:center}
.lai-lock>div{display:grid;justify-items:center;gap:8px;max-width:340px}
.lai-lock svg{width:40px;height:40px;fill:var(--gold)}
.lai-lock b{font-size:16px}.lai-lock p{margin:0;font-size:13px;line-height:1.9;color:var(--muted)}
.lai-lock .hx-pill{margin-top:6px}
.lai-flow{list-style:none;display:flex;flex-wrap:wrap;gap:6px 18px;justify-content:center;margin:16px 0 4px;padding:0;font-size:12.5px;color:var(--muted)}
.lai-flow li{display:flex;align-items:center;gap:6px}
.lai-flow b{width:20px;height:20px;border-radius:50%;display:grid;place-items:center;font-size:11px;background:var(--surface-3);color:var(--mint)}
.lai-foot{margin:4px 0 0;text-align:center;font-size:11.5px;color:var(--muted);opacity:.8}
@media (max-width:760px){.lai-grid{grid-template-columns:1fr}.lai-pick{grid-template-columns:120px 1fr;align-items:start}.lai-stage{grid-row:span 2}.lai-models{grid-template-columns:repeat(5,1fr)}.lai-log{max-height:340px}.lai-q-bar{flex-basis:80px}}
.lo-prep-seg button::before{content:none}
.lo-prep-seg button[aria-pressed="true"]{background:rgba(167,232,210,.14);color:var(--mint)}
body.lab dialog.lab-ai .lai-input textarea{background:transparent!important;border:0!important;box-shadow:none!important;min-height:40px}
body.lab dialog.lab-ai .lai-more{padding:10px 16px;border-radius:999px;border:1px solid var(--line)!important;background:transparent!important;color:var(--text)!important;font:inherit;font-size:13px;cursor:pointer}
body.lab dialog.lab-ai .lai-more:hover{border-color:var(--mint)!important;color:var(--mint)!important}
body.lab #pro .plan-matrix .plan-features li.lp-ai b{display:inline;font-size:inherit!important;line-height:inherit;margin:0;font-family:var(--fa)}
body.lab #pro .plan-matrix .plan-features li.lp-ai>span:last-child{line-height:1.8}

/* ---------- AI support chat (mint accent, distinct from the gold edit studio) ---------- */
body.lab dialog.dashboard .dashboard-tabs .filter.lt-tab::before{content:none}
body.lab dialog.dashboard .dashboard-tabs .filter.lt-tab{display:inline-flex;align-items:center;gap:6px;border-color:rgba(167,232,210,.4);color:var(--mint)}
body.lab dialog.dashboard .dashboard-tabs .filter.lt-tab em{font-style:normal;font-family:var(--latin);font-size:9.5px;font-weight:700;padding:1px 6px;border-radius:999px;background:rgba(167,232,210,.16)}
body.lab dialog.dashboard .dashboard-tabs .filter.lt-tab.active em{background:rgba(11,17,16,.15)}
.ls{display:grid;gap:12px}
.ls-head{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:18px;border:1px solid rgba(167,232,210,.3);background:radial-gradient(120% 160% at 100% 0%,rgba(31,138,116,.4),transparent 60%),var(--surface-2)}
.ls-head b{display:block;font-size:16px}
.ls-head span{display:flex;align-items:center;gap:6px;font-size:12.5px;color:var(--muted)}
.ls-live{width:8px;height:8px;border-radius:50%;background:#4ADE9A;box-shadow:0 0 0 0 rgba(74,222,154,.6);animation:ls-pulse 1.8s infinite}
@keyframes ls-pulse{70%{box-shadow:0 0 0 8px rgba(74,222,154,0)}100%{box-shadow:0 0 0 0 rgba(74,222,154,0)}}
.ls-ava{flex:none;width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(from 90deg,#A7E8D2,#1F8A74,#A7E8D2);animation:lai-spin 8s linear infinite}
.ls-ava svg{width:22px;height:22px;fill:#0B1110;animation:lai-spin 8s linear infinite reverse}
.ls-badge{margin-inline-start:auto;font-family:var(--latin);font-size:10.5px;font-weight:700;letter-spacing:.12em;padding:4px 10px;border-radius:999px;background:rgba(167,232,210,.12);color:var(--mint)}
.ls-chat{display:grid;gap:10px;padding:12px;border-radius:18px;background:var(--surface-2);border:1px solid var(--line)}
.ls-log{min-height:220px;max-height:360px}
.ls .lai-msg.is-me>div{background:linear-gradient(135deg,#1F8A74,#0E4D45)}
.ls .lai-ava{background:conic-gradient(#A7E8D2,#1F8A74,#A7E8D2)}
.ls-quick button{border-color:rgba(167,232,210,.3);background:rgba(167,232,210,.06);color:var(--mint)}
.ls-quick button:hover{background:rgba(167,232,210,.14)}
.ls-input:focus-within{border-color:rgba(167,232,210,.6);box-shadow:0 0 0 3px rgba(167,232,210,.12)}
body.lab .ls-input textarea{flex:1;min-height:40px;max-height:120px;padding:9px 10px;border:0!important;background:transparent!important;box-shadow:none!important;color:var(--text);font:inherit;font-size:14px;resize:none;outline:none}
.ls-input .lai-send{background:linear-gradient(135deg,#C9F0E0,#3FB39A)}
.ls-ul{margin:4px 0;padding-inline-start:18px}
.ls-acts{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.ls-act{display:inline-flex;align-items:center;gap:5px;padding:6px 12px;border-radius:999px;border:1px solid rgba(167,232,210,.4);background:rgba(167,232,210,.1);color:var(--mint);font:inherit;font-size:12.5px;cursor:pointer}
.ls-act svg{width:13px;height:13px;fill:currentColor}
.ls-act.is-soft{border-color:var(--line);background:transparent;color:var(--muted)}
.ls-act:hover{border-color:var(--mint);color:var(--text)}
.ls-tickets summary{cursor:pointer;font-size:13px;color:var(--muted);padding:6px 0}
.ls-tickets .lt-list{margin-top:8px}

/* ==========================================================================
   استودیوی من — account studio (lab-studio.js)
   ========================================================================== */
body.lab dialog.lst{color-scheme:dark;width:min(1180px,calc(100% - 32px));height:min(820px,calc(100dvh - 40px));max-width:none;max-height:none;padding:0;border:1px solid var(--line);border-radius:28px;background:#0C100F;color:var(--text);overflow:hidden;box-shadow:0 40px 120px rgba(0,0,0,.6)}
body.lab dialog.lst::backdrop{background:rgba(5,8,7,.72);backdrop-filter:blur(8px)}
.lst-shell{display:grid;grid-template-columns:264px 1fr;height:100%}
.lst-i{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}
/* sidebar */
.lst-side{display:flex;flex-direction:column;gap:18px;padding:22px 16px;background:radial-gradient(140% 60% at 100% 0%,rgba(31,138,116,.28),transparent 70%),#111615;border-inline-end:1px solid var(--line);min-height:0}
.lst-me{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;align-items:center;padding:14px;border-radius:20px;background:rgba(255,255,255,.03);border:1px solid var(--line)}
.lst-ava{grid-row:span 2;width:48px;height:48px;border-radius:50%;display:grid;place-items:center;font-size:20px;font-weight:800;color:#0B1110;background:var(--pill);box-shadow:0 0 0 3px #111615,0 0 0 5px rgba(212,175,55,.45)}
.lst-ava.is-guest{background:var(--surface-3);color:var(--muted);box-shadow:0 0 0 3px #111615,0 0 0 5px var(--line)}
.lst-me b{font-size:14.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lst-me small{font-size:11.5px;color:var(--muted);direction:ltr;text-align:right}
.lst-tier{grid-column:1/-1;justify-self:start;margin-top:8px;font-family:var(--latin);font-size:11px;font-weight:700;letter-spacing:.06em;padding:3px 12px;border-radius:999px;border:1px solid var(--line);color:var(--muted)}
.lst-tier.is-plus{border-color:rgba(167,232,210,.5);color:var(--mint)}
.lst-tier.is-pro{border:0;background:linear-gradient(100deg,#E9C979,#D4AF37);color:#1A1405}
.lst-nav{display:grid;gap:4px;overflow:auto;scrollbar-width:none}
.lst-nav button{position:relative;display:flex;align-items:center;gap:12px;padding:11px 14px;border:0;border-radius:14px;background:transparent;color:#AEB9B5;font:500 14px var(--fa);cursor:pointer;text-align:start;transition:background .2s,color .2s}
.lst-nav button:hover{background:rgba(255,255,255,.04);color:var(--text)}
.lst-nav button.is-on{background:linear-gradient(100deg,rgba(167,232,210,.16),rgba(167,232,210,.04));color:var(--text)}
.lst-nav button.is-on::before{content:"";position:absolute;inset-inline-start:-16px;top:10px;bottom:10px;width:3px;border-radius:3px;background:var(--mint)}
.lst-nav button.is-on .lst-i{stroke:var(--mint)}
.lst-nav button em{margin-inline-start:auto;font-style:normal;font-size:11px;min-width:22px;padding:1px 7px;border-radius:999px;background:var(--surface-3);color:var(--text);text-align:center}
.lst-nav button[data-view="notifications"] em{background:#D4AF37;color:#1A1405;font-weight:700}
.lst-nav button.is-ai{color:var(--gold-soft)}.lst-nav button.is-ai .lst-i{stroke:var(--gold-soft)}
.lst-nav button.is-ai.is-on{background:linear-gradient(100deg,rgba(212,175,55,.2),rgba(212,175,55,.04))}.lst-nav button.is-ai.is-on::before{background:var(--gold)}
.lst-nav button.is-sup .lst-i{stroke:var(--mint)}
.lst-side-foot{margin-top:auto}
.lst-out{display:flex;align-items:center;gap:10px;width:100%;padding:11px 14px;border:1px solid var(--line);border-radius:14px;background:transparent;color:var(--muted);font:500 13.5px var(--fa);cursor:pointer}
.lst-out:hover{border-color:rgba(230,120,120,.5);color:#F2B8B8}
.lst-side-foot .lst-btn{width:100%;justify-content:center}
/* main */
.lst-main{position:relative;overflow:auto;min-height:0;padding:0 30px 34px;scroll-behavior:smooth}
.lst-top{position:sticky;top:0;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 -30px 18px;padding:22px 30px 16px;background:linear-gradient(#0C100F 70%,rgba(12,16,15,0))}
.lst-top h2{margin:0;font-size:24px;font-weight:800}
.lst-top p{margin:2px 0 0;font-size:13px;color:var(--muted)}
.lst-close{width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:var(--surface-2);color:var(--text);display:grid;place-items:center;cursor:pointer}
.lst-close:hover{border-color:var(--mint)}
.lst-view{display:grid;gap:18px;animation:lst-in .35s ease-out}
@keyframes lst-in{from{opacity:0;transform:translateY(8px)}}
.lst-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:999px;border:1px solid var(--line);background:var(--surface-2);color:var(--text);font:600 13.5px var(--fa);cursor:pointer;white-space:nowrap;transition:transform .15s,border-color .2s}
.lst-btn:hover{border-color:rgba(167,232,210,.5);transform:translateY(-1px)}
.lst-btn.is-main{border:0;background:var(--pill);color:#0B1110;box-shadow:var(--pill-glow)}
.lst-btn.is-ai{border-color:rgba(212,175,55,.45);color:var(--gold-soft);background:rgba(212,175,55,.08)}
.lst-link{border:0;background:none;color:var(--mint);font:500 13px var(--fa);cursor:pointer;padding:0}
.lst-link:hover{text-decoration:underline;text-underline-offset:4px}
/* overview */
.lst-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:1fr 280px;gap:10px;align-items:center;min-height:210px;padding:26px 28px;border-radius:26px;border:1px solid rgba(167,232,210,.22);background:radial-gradient(90% 140% at 100% 0%,rgba(31,138,116,.55),transparent 60%),radial-gradient(60% 120% at 0% 100%,rgba(212,175,55,.22),transparent 60%),linear-gradient(135deg,#132220,#0E1413)}
.lst-hero::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,rgba(255,255,255,.025) 0 1px,transparent 1px 44px),repeating-linear-gradient(0deg,rgba(255,255,255,.025) 0 1px,transparent 1px 44px);mask:linear-gradient(90deg,transparent,#000);pointer-events:none}
.lst-hero-txt{position:relative;z-index:1}
.lst-hero .eyebrow{font-family:var(--latin);font-size:10.5px;letter-spacing:.2em;color:var(--mint)}
.lst-hero h3{margin:6px 0 8px;font-size:clamp(24px,2.6vw,32px);font-weight:800}
.lst-hero p{margin:0 0 18px;font-size:14px;line-height:1.9;color:#C9D3CF;max-width:460px}
.lst-quick{display:flex;flex-wrap:wrap;gap:8px}
.lst-hero-art{position:relative;z-index:1;height:180px}
.lst-hero-art span{position:absolute;top:50%;left:50%;width:120px;height:120px;border-radius:24px;overflow:hidden;background:#0B1110;border:1px solid rgba(255,255,255,.08);box-shadow:0 18px 40px rgba(0,0,0,.45);transform:translate(calc(-50% + (var(--i) - 2) * 46px),calc(-50% + (var(--i) - 2) * (var(--i) - 2) * 6px)) rotate(calc((var(--i) - 2) * 8deg));transition:transform .4s}
.lst-hero-art span:nth-child(3){z-index:3;width:136px;height:136px}.lst-hero-art span:nth-child(2),.lst-hero-art span:nth-child(4){z-index:2}
.lst-hero:hover .lst-hero-art span{transform:translate(calc(-50% + (var(--i) - 2) * 56px),-50%) rotate(calc((var(--i) - 2) * 4deg))}
.lst-hero-art img{width:100%;height:100%;object-fit:cover}
.lst-orb{inset:50% auto auto 50%!important;width:150px!important;height:150px!important;border-radius:50%!important;background:conic-gradient(from 0deg,#A7E8D2,#D4AF37,#1F8A74,#A7E8D2)!important;filter:blur(2px);opacity:.7;animation:lai-spin 10s linear infinite}
.lst-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.lst-stats div{display:grid;gap:4px;padding:16px 18px;border-radius:20px;background:var(--surface);border:1px solid var(--line)}
.lst-stats span{font-size:12.5px;color:var(--muted)}
.lst-stats b{font-size:28px;font-weight:600}
.lst-stats small{font-size:13px;color:var(--muted)}
.lst-duo{display:grid;grid-template-columns:1.2fr 1fr;gap:10px}
.lst-card{padding:18px;border-radius:22px;background:var(--surface);border:1px solid var(--line)}
.lst-card-h{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}
.lst-card-h b{font-size:15px}
.lst-rings{display:flex;justify-content:space-around;gap:10px}
.lst-ring{position:relative;display:grid;justify-items:center;gap:6px}
.lst-ring svg{width:104px;height:104px;transform:rotate(-90deg)}
.lst-ring circle{fill:none;stroke:var(--surface-3);stroke-width:7}
.lst-ring circle.f{stroke-linecap:round;transition:stroke-dashoffset 1s ease}
.lst-ring.is-wax circle.f{stroke:#D98BA0}.lst-ring.is-resin circle.f{stroke:#4CC3A6}
.lst-ring>div{position:absolute;top:0;height:104px;display:grid;place-content:center;text-align:center}
.lst-ring>div b{font-size:20px;font-weight:600;line-height:1.1}.lst-ring>div small{font-size:11px;color:var(--muted)}
.lst-ring>span{font-size:13px;color:#C9D3CF}
.lst-plan-name{font-family:var(--latin);font-size:30px;font-weight:700;line-height:1.1}
.lst-plan.is-pro .lst-plan-name{background:linear-gradient(100deg,#F3DD9A,#D4AF37);-webkit-background-clip:text;background-clip:text;color:transparent}
.lst-plan.is-plus .lst-plan-name{color:var(--mint)}
.lst-plan p{margin:4px 0 12px;font-size:13px;color:#C9D3CF}
.lst-plan-bar{height:6px;border-radius:9px;background:var(--surface-3);overflow:hidden;margin-bottom:10px}
.lst-plan-bar i{display:block;height:100%;border-radius:inherit;background:var(--pill)}
.lst-plan small{font-size:12px;color:var(--muted);line-height:1.8}
.lst-block{display:grid;gap:12px}
.lst-block-h{display:flex;justify-content:space-between;align-items:center}
.lst-block-h b{font-size:16px}
/* orders */
.lst-orders{display:grid;gap:10px}
.lst-order{display:grid;grid-template-columns:1fr auto;align-items:start;gap:0 12px;padding:12px;border-radius:22px;background:var(--surface);border:1px solid var(--line);transition:border-color .2s,background .2s}
.lst-order:hover,.lst-order.is-open{border-color:rgba(167,232,210,.3)}
.lst-order.is-open{background:linear-gradient(180deg,#141B1A,var(--surface))}
.lst-o-head{display:grid;grid-template-columns:auto 1fr auto auto;gap:14px;align-items:center;padding:0;border:0;background:none;color:inherit;font:inherit;text-align:start;cursor:pointer;min-width:0}
.lst-stack{position:relative;display:flex;width:96px;height:64px}
.lst-stack span{position:absolute;top:0;width:64px;height:64px;border-radius:16px;overflow:hidden;background:#0B1110;border:2px solid var(--surface);box-shadow:0 6px 16px rgba(0,0,0,.4)}
.lst-stack span:nth-child(1){inset-inline-start:0;z-index:3}.lst-stack span:nth-child(2){inset-inline-start:16px;z-index:2;transform:scale(.92)}.lst-stack span:nth-child(3){inset-inline-start:32px;z-index:1;transform:scale(.84)}
.lst-stack img,.lst-o-models img,.lst-lib-img img{width:100%;height:100%;object-fit:cover}
.lst-stack em{position:absolute;bottom:-4px;inset-inline-start:48px;z-index:4;font-style:normal;font-size:10.5px;font-weight:700;padding:1px 7px;border-radius:999px;background:var(--gold);color:#1A1405}
.lst-noimg{display:grid;place-items:center;width:100%;height:100%;font-family:var(--latin);font-size:11px;font-weight:700;color:var(--mint);background:radial-gradient(circle at 50% 35%,#1F2A28,#0B1110)}
.lst-o-main{display:grid;gap:6px;min-width:0}
.lst-o-title{display:flex;align-items:center;gap:8px;min-width:0}
.lst-o-title b{font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lst-kind{flex:none;font-size:10.5px;padding:2px 9px;border-radius:999px;background:rgba(167,232,210,.1);color:var(--mint)}
.lst-kind.is-collection{background:rgba(212,175,55,.12);color:var(--gold-soft)}
.lst-o-meta{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:12px;color:var(--muted)}
.lst-mat{padding-inline-start:12px;position:relative}.lst-mat::before{content:"";position:absolute;inset-inline-start:0;top:50%;width:7px;height:7px;margin-top:-3.5px;border-radius:50%;background:#C66B80}.lst-mat.is-resin::before{background:#3FB39A}
.lst-o-state{font-size:12px;padding:5px 12px;border-radius:999px;background:rgba(212,175,55,.12);color:var(--gold-soft);white-space:nowrap}
.lst-o-state.is-ready{background:rgba(74,222,154,.14);color:#7EE8B5}
.lst-chev{transform:rotate(90deg);color:var(--muted);transition:transform .25s}
.lst-order.is-open .lst-chev{transform:rotate(-90deg)}
.lst-o-act{align-self:center}
.lst-o-act .lst-btn{padding:9px 14px;font-size:13px}
.lst-order>.lst-steps,.lst-o-more{grid-column:1/-1}
.lst-steps{list-style:none;display:grid;grid-template-columns:repeat(5,1fr);margin:14px 4px 4px;padding:0}
.lst-steps li{position:relative;display:grid;justify-items:center;gap:6px;text-align:center;font-size:11px;color:var(--muted)}
.lst-steps li::before{content:"";position:absolute;top:6px;inset-inline-start:50%;width:100%;height:2px;background:var(--surface-3);z-index:0}
.lst-steps li:last-child::before{display:none}
.lst-steps li.is-done::before{background:var(--mint)}
.lst-steps i{position:relative;z-index:1;width:14px;height:14px;border-radius:50%;background:var(--surface-3);border:2px solid var(--surface)}
.lst-steps li.is-done i{background:var(--mint)}
.lst-steps li.is-now i{background:var(--gold);box-shadow:0 0 0 4px rgba(212,175,55,.2);animation:ls-pulse 1.8s infinite}
.lst-steps li.is-now{color:var(--text);font-weight:600}
.lst-o-more{display:grid;gap:12px;padding-top:6px}
.lst-o-more[hidden]{display:none}
.lst-o-models{display:grid;grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:8px}
.lst-o-models div{display:grid;gap:4px;padding:6px;border-radius:14px;background:var(--surface-2);border:1px solid var(--line)}
.lst-o-models div>img,.lst-o-models .lst-noimg{aspect-ratio:1;border-radius:10px;overflow:hidden}
.lst-o-models b{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lst-o-models small{font-size:11px;color:var(--muted)}
.lst-o-note{margin:0;font-size:12.5px;color:var(--muted)}
.lst-demo{justify-self:start;border:1px dashed var(--line);border-radius:999px;background:transparent;color:var(--muted);font:12px var(--fa);padding:6px 12px;cursor:pointer}
.lst-demo:hover{color:var(--text);border-color:var(--muted)}
/* toolbar */
.lst-tools{display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;align-items:center}
.lst-seg{display:flex;gap:4px;padding:4px;border-radius:999px;background:var(--surface);border:1px solid var(--line)}
.lst-seg button{padding:8px 14px;border:0;border-radius:999px;background:transparent;color:var(--muted);font:500 13px var(--fa);cursor:pointer}
.lst-seg button em{font-style:normal;font-size:11px;opacity:.7;margin-inline-start:3px}
.lst-seg button[aria-pressed="true"]{background:var(--surface-3);color:var(--text)}
.lst-search{display:flex;align-items:center;gap:8px;flex:1;max-width:320px;min-width:200px;padding:0 14px;border-radius:999px;background:var(--surface);border:1px solid var(--line);color:var(--muted)}
.lst-search:focus-within{border-color:var(--mint)}
body.lab .lst-search input{flex:1;min-width:0;height:40px;border:0!important;background:transparent!important;box-shadow:none!important;color:var(--text);font:inherit;font-size:13.5px;outline:none;padding:0}
.lst-none,.lst-hint{margin:0;font-size:12.5px;color:var(--muted);text-align:center}
.lst-none[hidden]{display:none}
/* library */
.lst-lib-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px}
.lst-lib-row{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(180px,200px);gap:12px;overflow-x:auto;padding-bottom:6px;scrollbar-width:thin}
.lst-lib{display:grid;gap:10px;padding:10px;border-radius:22px;background:var(--surface);border:1px solid var(--line);transition:transform .25s,border-color .25s}
.lst-lib:hover{transform:translateY(-3px);border-color:rgba(212,175,55,.35)}
.lst-lib[hidden]{display:none}
.lst-lib-img{position:relative;aspect-ratio:1;border-radius:16px;overflow:hidden;background:radial-gradient(circle at 50% 35%,#1F2A28,#0B1110)}
.lst-lib-img img{transition:transform .5s}
.lst-lib:hover .lst-lib-img img{transform:scale(1.06)}
.lst-lib-img .lst-kind{position:absolute;top:8px;inset-inline-start:8px;backdrop-filter:blur(6px);background:rgba(11,17,16,.65)}
.lst-lib-body{display:grid;gap:2px;min-width:0;padding:0 4px}
.lst-lib-body b{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lst-lib-body small{font-size:11.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lst-lib-meta{display:flex;justify-content:space-between;margin-top:6px;font-size:11.5px;color:#C9D3CF}
.lst-lib .lst-btn{justify-content:center;padding:9px 12px;font-size:13px}
/* payments & notices */
.lst-pay-sum{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.lst-pay-sum div{display:grid;gap:4px;padding:16px 18px;border-radius:20px;background:var(--surface);border:1px solid var(--line)}
.lst-pay-sum span{font-size:12.5px;color:var(--muted)}.lst-pay-sum b{font-size:26px;font-weight:600}
.lst-pays,.lst-notes{display:grid;gap:8px}
.lst-pay{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;padding:14px;border-radius:18px;background:var(--surface);border:1px solid var(--line)}
.lst-pay-ic{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:rgba(167,232,210,.1);color:var(--mint)}
.lst-pay-ic.is-plan{background:rgba(212,175,55,.12);color:var(--gold-soft)}
.lst-pay b{font-size:14px}.lst-pay small{display:block;font-size:11.5px;color:var(--muted)}
.lst-pay-end{display:grid;justify-items:end;gap:4px}
.lst-pill{font-size:11px;padding:3px 10px;border-radius:999px;background:rgba(212,175,55,.12);color:var(--gold-soft)}
.lst-pill.is-ok{background:rgba(74,222,154,.14);color:#7EE8B5}
.lst-notes article{display:grid;grid-template-columns:auto 1fr;gap:12px;padding:14px;border-radius:18px;background:var(--surface);border:1px solid var(--line)}
.lst-notes article>i{width:9px;height:9px;margin-top:8px;border-radius:50%;background:var(--surface-3)}
.lst-notes article.is-new{border-color:rgba(212,175,55,.35)}
.lst-notes article.is-new>i{background:var(--gold);box-shadow:0 0 10px rgba(212,175,55,.7)}
.lst-notes p{margin:0 0 4px;font-size:13.5px;line-height:1.8}.lst-notes small{font-size:11.5px;color:var(--muted)}
.lst-empty{display:grid;justify-items:center;gap:8px;padding:48px 20px;border-radius:24px;border:1px dashed var(--line);text-align:center}
.lst-empty .lst-i{width:44px;height:44px;padding:10px;border-radius:16px;background:var(--surface-2);color:var(--mint);box-sizing:content-box}
.lst-empty b{font-size:16px}.lst-empty p{margin:0 0 6px;max-width:380px;font-size:13px;line-height:1.9;color:var(--muted)}
.lst-toast{position:absolute;bottom:22px;left:50%;z-index:9;transform:translate(-50%,20px);opacity:0;pointer-events:none;padding:11px 18px;border-radius:999px;background:#1B2422;border:1px solid rgba(167,232,210,.35);font-size:13px;color:var(--text);box-shadow:0 12px 30px rgba(0,0,0,.5);transition:.3s}
.lst-toast.is-on{opacity:1;transform:translate(-50%,0)}
.lst .empty-state{margin:0;padding:24px;border-radius:18px;border:1px dashed var(--line);text-align:center;color:var(--muted);font-size:13px}
/* responsive */
@media (max-width:900px){
 .lst-hero{grid-template-columns:1fr}.lst-hero-art{display:none}
 .lst-stats{grid-template-columns:repeat(2,1fr)}.lst-duo{grid-template-columns:1fr}
}
@media (max-width:760px){
 body.lab dialog.lst{width:100%;height:100dvh;max-height:100dvh;border-radius:0;border:0}
 .lst-shell{grid-template-columns:1fr;grid-template-rows:auto 1fr}
 .lst-side{flex-direction:column;gap:10px;padding:12px 14px 8px;border-inline-end:0;border-bottom:1px solid var(--line)}
 .lst-me{grid-template-columns:auto 1fr auto;padding:8px 10px;border-radius:16px}
 .lst-ava{grid-row:auto;width:38px;height:38px;font-size:16px}
 .lst-me>div{min-width:0}.lst-tier{grid-column:auto;margin:0}
 .lst-nav{display:flex;overflow-x:auto;gap:4px;margin:0 -14px;padding:0 14px}
 .lst-nav button{flex:none;padding:8px 12px;font-size:13px}
 .lst-nav button.is-on::before{inset-inline-start:12px;inset-inline-end:12px;top:auto;bottom:0;width:auto;height:2px}
 .lst-side-foot{display:none}
 .lst-main{padding:0 14px 28px}.lst-top{margin:0 -14px 12px;padding:14px 14px 10px}.lst-top h2{font-size:20px}
 .lst-hero{padding:20px;min-height:0}
 .lst-o-head{grid-template-columns:auto 1fr;row-gap:8px}.lst-o-state{grid-column:2;justify-self:start}.lst-chev{display:none}
 .lst-stack{width:80px;height:56px}.lst-stack span{width:56px;height:56px;border-radius:14px}
 .lst-order{grid-template-columns:1fr}.lst-o-act{margin-top:10px}.lst-o-act .lst-btn{width:100%;justify-content:center}
 .lst-steps span{font-size:9.5px}
 .lst-lib-grid{grid-template-columns:repeat(2,1fr);gap:8px}
 .lst-search{max-width:none}
}
.lst-me-out{display:none}
@media (max-width:760px){.lst-me{grid-template-columns:auto 1fr auto auto}.lst-me-out{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;border:1px solid var(--line);background:transparent;color:var(--muted)}}
.lst-me>div{display:grid;gap:2px;min-width:0}
.lst-me small{direction:ltr;unicode-bidi:isolate;white-space:nowrap;justify-self:start}
.lst-main:focus{outline:none}
.lst button:focus:not(:focus-visible){outline:none}
.lst button:focus-visible{outline:2px solid var(--mint);outline-offset:2px}
.lst-o-act{grid-row:1;grid-column:2}
@media (max-width:760px){.lst-o-act{grid-row:auto;grid-column:1}}
body.lab dialog.lst .lst-main:focus,body.lab dialog.lst .lst-main:focus-visible{outline:none!important}
.lst-shell{grid-template-columns:264px minmax(0,1fr);grid-template-rows:minmax(0,1fr)}
.lst-side{min-width:0}
@media (max-width:760px){.lst-shell{grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr)}}
.lt-reply{margin:6px 0 0!important;padding:8px 12px;border-radius:12px;background:rgba(167,232,210,.08);color:var(--mint)!important;font-size:12.5px}
.lab-link{border:0;background:none;padding:0;color:var(--mint);font:inherit;font-size:13px;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.lab-link:disabled{color:var(--muted);text-decoration:none;cursor:default}
body.lab dialog.lab-flow-dialog input.lab-otp{letter-spacing:.5em;text-align:center;font-family:var(--mono);font-size:22px}
.hx-pill.is-busy,.lst-btn.is-busy{opacity:.6;pointer-events:none}
html[data-backend="on"] body.lab .preview{display:none!important}
