@font-face{font-family:Hesabak;src:url(hesabak-Regular.woff2) format("woff2");font-weight:400;font-display:swap;unicode-range:U+0020-0040,U+005B-0060,U+007B-007E,U+00A0,U+00AB,U+00BB,U+00D7,U+0600-06FF,U+200C-200F,U+2013-2014,U+2018-201D,U+2022,U+2026,U+2212,U+FB50-FDFF,U+FE70-FEFF}
@font-face{font-family:Hesabak;src:url(hesabak-Bold.woff2) format("woff2");font-weight:700;font-display:swap;unicode-range:U+0020-0040,U+005B-0060,U+007B-007E,U+00A0,U+00AB,U+00BB,U+00D7,U+0600-06FF,U+200C-200F,U+2013-2014,U+2018-201D,U+2022,U+2026,U+2212,U+FB50-FDFF,U+FE70-FEFF}

/* ── Tokens. Ledger tones mirror LedgerTones in lib/Pages/CustomLibs/LedgerUi.dart ── */
:root{
  color-scheme:light;
  --bg:#f7f6fb;--bg-2:#efedf6;--surface:#ffffff;--surface-2:#f0eef6;--surface-3:#e6e3ef;
  --text:#1b1a21;--muted:#625f6e;--faint:#8c8999;--line:rgba(44,32,84,.12);--line-strong:rgba(44,32,84,.22);
  --accent:#604e94;--accent-2:#8f7cca;--on-accent:#ffffff;
  --in:#388e3c;--out:#d32f2f;--sale:#b23a48;--buy:#1e6fa8;--ret:#9e7026;--prod:#00796b;--cons:#a86034;--warn:#ef6c00;--amber:#9e7026;
  --shadow:0 1px 2px rgba(30,20,60,.06),0 12px 32px -12px rgba(30,20,60,.18);
  --shadow-lg:0 2px 4px rgba(30,20,60,.05),0 30px 70px -24px rgba(50,30,110,.35);
  --glow:rgba(96,78,148,.18);--rh-bg:#E2E1EA;--rh-title:#23233A;--rh-sub:#757575;--rh-sec:#3A3A55;--rh-btn:#ffffff;--rh-btn-b:rgba(0,0,0,.055);--rh-ico:#616161;
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    color-scheme:dark;
    --bg:#0e0d13;--bg-2:#131219;--surface:#17161e;--surface-2:#201e29;--surface-3:#2a2735;
    --text:#ecebf2;--muted:#a3a0b0;--faint:#7a7788;--line:rgba(255,255,255,.09);--line-strong:rgba(255,255,255,.18);
    --accent:#c4b8e8;--accent-2:#907cca;--on-accent:#1b1530;
    --in:#81c784;--out:#e57373;--sale:#f28b96;--buy:#8cc4f0;--ret:#ffd54f;--prod:#80cbc4;--cons:#ffb74d;--warn:#ffb74d;--amber:#ffd54f;
    --shadow:0 1px 2px rgba(0,0,0,.4),0 12px 32px -12px rgba(0,0,0,.6);
    --shadow-lg:0 2px 4px rgba(0,0,0,.3),0 30px 70px -24px rgba(0,0,0,.8);
    --glow:rgba(144,124,202,.2);--rh-bg:#14151A;--rh-title:#ffffff;--rh-sub:rgba(255,255,255,.54);--rh-sec:rgba(255,255,255,.7);--rh-btn:rgba(255,255,255,.1);--rh-btn-b:transparent;--rh-ico:rgba(255,255,255,.7);
  }
}
:root[data-theme="dark"]{
  color-scheme:dark;
  --bg:#0e0d13;--bg-2:#131219;--surface:#17161e;--surface-2:#201e29;--surface-3:#2a2735;
  --text:#ecebf2;--muted:#a3a0b0;--faint:#7a7788;--line:rgba(255,255,255,.09);--line-strong:rgba(255,255,255,.18);
  --accent:#c4b8e8;--accent-2:#907cca;--on-accent:#1b1530;
  --in:#81c784;--out:#e57373;--sale:#f28b96;--buy:#8cc4f0;--ret:#ffd54f;--prod:#80cbc4;--cons:#ffb74d;--warn:#ffb74d;--amber:#ffd54f;
  --shadow:0 1px 2px rgba(0,0,0,.4),0 12px 32px -12px rgba(0,0,0,.6);
  --shadow-lg:0 2px 4px rgba(0,0,0,.3),0 30px 70px -24px rgba(0,0,0,.8);
  --glow:rgba(144,124,202,.2);--rh-bg:#14151A;--rh-title:#ffffff;--rh-sub:rgba(255,255,255,.54);--rh-sec:rgba(255,255,255,.7);--rh-btn:rgba(255,255,255,.1);--rh-btn-b:transparent;--rh-ico:rgba(255,255,255,.7);
}

/* ── Base ── */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:128px}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
body{margin:0;background:var(--bg);color:var(--text);font:16px/1.6 system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}
html[lang="fa"] body,.app,.fa{font-family:Hesabak,system-ui,-apple-system,"Segoe UI",Tahoma,sans-serif}
html[lang="fa"] body{line-height:1.85}
html[lang="fa"] .en,html:not([lang="fa"]) .fa{display:none!important}
h1,h2,h3,h4,h5,p{margin:0}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer;padding:0}
svg{flex:none}
.ico{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:8px}
.wrap{max-width:1200px;margin-inline:auto;padding-inline:16px}
@media (min-width:720px){.wrap{padding-inline:28px}}
.mut{color:var(--muted)}
html[dir="rtl"] .flip{transform:scaleX(-1)}

/* ── Nav ── */
.nav{position:sticky;top:env(safe-area-inset-top,0px);z-index:30;backdrop-filter:saturate(1.6) blur(14px);-webkit-backdrop-filter:saturate(1.6) blur(14px);background:color-mix(in srgb,var(--bg) 80%,transparent);border-bottom:1px solid var(--line)}
.nav .wrap{display:flex;align-items:center;gap:12px;height:64px}
.brand{display:flex;align-items:center;gap:10px;font-weight:700;letter-spacing:-.01em}
.brand img{width:34px;height:34px;border-radius:10px;background:#fff;box-shadow:0 0 0 1px var(--line)}
.brand small{display:block;font-weight:400;font-size:12px;color:var(--muted);line-height:1.2}
.links{display:none;gap:2px;margin-inline-start:18px}
.links a{padding:8px 10px;border-radius:10px;color:var(--muted);font-size:14.5px;white-space:nowrap;transition:color .15s,background .15s}
.links a:hover{color:var(--text);background:var(--surface-2)}
@media (min-width:1180px){.links{display:flex}}
.nav-end{margin-inline-start:auto;display:flex;gap:8px;align-items:center}
.chip-btn{display:inline-flex;align-items:center;gap:8px;height:38px;padding:0 12px;border-radius:12px;border:1px solid var(--line);background:var(--surface);font-size:14px;transition:border-color .15s}
.chip-btn:hover{border-color:var(--line-strong)}
.chip-btn .ico{width:18px;height:18px}
.icon-only{width:38px;padding:0;justify-content:center}
.nav-dl{display:none}
@media (min-width:640px){.nav-dl{display:inline-flex;background:var(--accent);color:var(--on-accent);border-color:transparent;font-weight:600}}
.theme-btn .sun{display:none}
:root[data-theme="dark"] .theme-btn .sun{display:block}:root[data-theme="dark"] .theme-btn .moon{display:none}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .theme-btn .sun{display:block}:root:not([data-theme="light"]) .theme-btn .moon{display:none}}

/* ── Buttons ── */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:52px;padding:0 24px;border-radius:14px;font-weight:600;font-size:15.5px;transition:transform .15s,box-shadow .15s,background .15s}
.btn:active{transform:translateY(1px)}
.btn-primary{background:var(--accent);color:var(--on-accent);box-shadow:0 10px 28px -10px var(--accent)}
.btn-primary:hover{box-shadow:0 14px 34px -10px var(--accent)}
.btn-ghost{border:1px solid var(--line-strong);background:var(--surface)}
.btn-ghost:hover{background:var(--surface-2)}

/* ── Hero ── */
.hero{position:relative;padding:72px 0 64px;overflow:hidden}
.hero::before{content:"";position:absolute;inset:-20% -10% auto;height:760px;background:radial-gradient(50% 50% at 50% 30%,var(--glow),transparent 70%);pointer-events:none}
.hero::after{content:"";position:absolute;inset:0;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:44px 44px;mask-image:radial-gradient(60% 60% at 50% 25%,#000 20%,transparent 75%);-webkit-mask-image:radial-gradient(60% 60% at 50% 25%,#000 20%,transparent 75%);opacity:.5;pointer-events:none}
.hero .wrap{position:relative;z-index:1;text-align:center}
.eyebrow{display:inline-flex;align-items:center;gap:8px;padding:6px 14px 6px 8px;border-radius:999px;background:var(--surface);border:1px solid var(--line);font-size:13.5px;color:var(--muted);box-shadow:var(--shadow)}
html[dir="rtl"] .eyebrow{padding:6px 8px 6px 14px}
.eyebrow b{background:color-mix(in srgb,var(--accent) 16%,transparent);color:var(--accent);padding:2px 9px;border-radius:999px;font-weight:600;font-size:12.5px}
.hero h1{margin:24px auto 0;max-width:940px;font-size:clamp(38px,6.6vw,74px);line-height:1.04;letter-spacing:-.035em;font-weight:750}
html[lang="fa"] .hero h1{letter-spacing:0;line-height:1.3;font-weight:700}
.grad{background:linear-gradient(100deg,var(--accent) 10%,var(--sale) 55%,var(--cons));-webkit-background-clip:text;background-clip:text;color:transparent}
.hero .lead{margin:24px auto 0;max-width:760px;font-size:clamp(17px,2vw,20px);color:var(--muted)}
.cta{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:34px}
.meta{margin-top:20px;display:flex;flex-wrap:wrap;justify-content:center;gap:6px 18px;color:var(--faint);font-size:13.5px}
.meta span{display:inline-flex;align-items:center;gap:6px}
.meta .ico{width:16px;height:16px;color:var(--in)}
.aud{margin-top:52px;display:flex;flex-wrap:wrap;justify-content:center;gap:10px}
.aud span{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:12px;background:var(--surface);border:1px solid var(--line);font-size:14px;color:var(--muted)}
.aud .ico{width:17px;height:17px;color:var(--accent)}
.aud-label{width:100%;font-size:13px;color:var(--faint);margin-bottom:2px}

/* ── Sections ── */
section{padding:96px 0}
.alt{background:var(--bg-2);border-block:1px solid var(--line)}
.head{max-width:760px;margin:0 auto 52px;text-align:center}
.kicker{font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}
html[lang="fa"] .kicker{letter-spacing:0;font-size:14px}
.head h2,.big-h{margin-top:10px;font-size:clamp(30px,4.4vw,48px);line-height:1.1;letter-spacing:-.025em;font-weight:700}
html[lang="fa"] .head h2,html[lang="fa"] .big-h{letter-spacing:0;line-height:1.4}
.head p{margin-top:16px;color:var(--muted);font-size:17.5px}

/* why */
.why{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(min(100%,270px),1fr))}
@media (min-width:900px){.why{grid-template-columns:repeat(3,1fr)}}
.reason{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:24px;position:relative;overflow:hidden}
.reason::after{content:"";position:absolute;inset:auto -40px -60px auto;width:140px;height:140px;border-radius:50%;background:radial-gradient(closest-side,color-mix(in srgb,var(--tone,var(--accent)) 16%,transparent),transparent)}
html[dir="rtl"] .reason::after{inset:auto auto -60px -40px}
.reason .tile{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;color:var(--tone,var(--accent));background:color-mix(in srgb,var(--tone,var(--accent)) 14%,transparent);border:1px solid color-mix(in srgb,var(--tone,var(--accent)) 26%,transparent)}
.reason .tile .ico{width:22px;height:22px}
.reason h3{margin-top:16px;font-size:18px;font-weight:650;line-height:1.35}
.reason p{margin-top:8px;color:var(--muted);font-size:15px}


/* stats */
.stats{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:20px;overflow:hidden}
@media (min-width:820px){.stats{grid-template-columns:repeat(4,1fr)}}
.stat{background:var(--surface);padding:24px 22px}
.stat strong{display:block;font-size:32px;font-weight:700;letter-spacing:-.02em}
.stat span{color:var(--muted);font-size:14px}

/* steps */
.steps{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr));counter-reset:s}
.step{position:relative;padding:24px;border-radius:20px;background:var(--surface);border:1px solid var(--line)}
.step::before{counter-increment:s;content:counter(s);display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--accent);color:var(--on-accent);font-weight:700;font-size:15px}
.step h3{margin-top:14px;font-size:17px}
.step p{margin-top:6px;color:var(--muted);font-size:14.5px}

/* sub-nav for the screens */
.subnav{position:sticky;top:calc(64px + env(safe-area-inset-top,0px));z-index:20;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.subnav .wrap{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding-block:10px}
.subnav .wrap::-webkit-scrollbar{display:none}
.subnav a{flex:none;display:inline-flex;align-items:center;gap:7px;padding:7px 13px;border-radius:10px;font-size:14px;color:var(--muted);border:1px solid transparent;transition:background .15s,color .15s}
.subnav a .ico{width:16px;height:16px}
.subnav a:hover{color:var(--text);background:var(--surface-2)}
.subnav a.on{background:var(--surface);color:var(--text);border-color:var(--line-strong);box-shadow:var(--shadow)}

/* group + feature rows */
.group{padding:88px 0 24px}
.group + .group{border-top:1px solid var(--line)}
.ghead{display:flex;flex-wrap:wrap;gap:18px;align-items:flex-end;justify-content:space-between;margin-bottom:12px}
.ghead .gt{display:flex;gap:16px;align-items:center}
.ghead .gi{width:56px;height:56px;border-radius:17px;display:grid;place-items:center;color:var(--tone);background:color-mix(in srgb,var(--tone) 14%,transparent);border:1px solid color-mix(in srgb,var(--tone) 30%,transparent)}
.ghead .gi .ico{width:27px;height:27px}
.ghead h2{font-size:clamp(26px,3.4vw,38px);line-height:1.15;letter-spacing:-.02em}
html[lang="fa"] .ghead h2{letter-spacing:0;line-height:1.5}
.ghead p{color:var(--muted);max-width:560px;font-size:16px}
.feat{display:grid;gap:28px;align-items:center;padding:48px 0;border-top:1px dashed var(--line)}
.ghead + .feat{border-top:0}
@media (min-width:1180px){.feat{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:56px}.feat.rev{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}.feat.rev .ft{order:2}}
.ftag{display:inline-flex;align-items:center;gap:9px;padding:5px 12px 5px 6px;border-radius:12px;background:color-mix(in srgb,var(--tone) 11%,transparent);border:1px solid color-mix(in srgb,var(--tone) 26%,transparent);color:var(--tone);font-weight:700;font-size:14px;font-family:Hesabak,system-ui,sans-serif}
html[dir="rtl"] .ftag{padding:5px 6px 5px 12px}
.ftag i{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;background:var(--tone);color:var(--surface)}
.ftag i .ico{width:16px;height:16px}
.ftag small{font-weight:400;color:var(--muted);font-family:system-ui,sans-serif;font-size:12.5px}
html[lang="fa"] .ftag small{display:none}
.ft h3{margin-top:16px;font-size:clamp(22px,2.6vw,29px);font-weight:700;letter-spacing:-.02em;line-height:1.25}
html[lang="fa"] .ft h3{letter-spacing:0;line-height:1.55}
.ft > p{margin-top:12px;color:var(--muted);font-size:16.5px}
.ft .fl{margin-top:20px;font-size:12.5px;font-weight:600;color:var(--faint);text-transform:uppercase;letter-spacing:.06em}
html[lang="fa"] .ft .fl{text-transform:none;letter-spacing:0;font-size:13.5px}
.fields{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.fields li{padding:4px 11px;border-radius:9px;background:var(--surface);border:1px solid var(--line);font-size:13.5px}
.points{list-style:none;margin:18px 0 0;padding:0;display:grid;gap:10px}
.points li{display:flex;gap:11px;align-items:flex-start;font-size:15.5px}
.points li .ico{margin-top:3px;width:18px;height:18px;color:var(--tone,var(--accent));flex:none}
.hint-live{margin-top:18px;font-size:13.5px;color:var(--faint);display:flex;gap:8px;align-items:center}
.hint-live i{width:8px;height:8px;border-radius:50%;background:var(--in);box-shadow:0 0 0 4px color-mix(in srgb,var(--in) 22%,transparent)}

/* twins: mirror tiles */
.twins{display:grid;gap:16px;padding:40px 0;border-top:1px dashed var(--line);grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr))}
.twin{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:20px;display:flex;flex-direction:column;gap:12px}
.twin h3{font-size:18px;margin-top:4px}
.twin p{color:var(--muted);font-size:14.5px}
.twin .mini{margin-top:auto}

/* shortcuts */
.keys{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(min(100%,210px),1fr))}
.key{display:flex;align-items:center;gap:14px;padding:16px;border-radius:16px;background:var(--surface);border:1px solid var(--line)}
kbd{display:inline-grid;place-items:center;min-width:34px;height:34px;padding:0 10px;border-radius:9px;background:var(--surface-2);border:1px solid var(--line-strong);border-bottom-width:3px;font:600 13px/1 ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--text)}
.key span{color:var(--muted);font-size:14.5px}
.combo{display:flex;gap:4px;align-items:center;direction:ltr}

/* theme split */
.split{display:grid;gap:18px}
@media (min-width:860px){.split{grid-template-columns:1fr 1fr}}
.force-light,.force-dark{border-radius:22px;padding:22px;border:1px solid var(--line)}
.force-light{color-scheme:light;--bg:#f7f6fb;--surface:#fff;--surface-2:#f0eef6;--surface-3:#e6e3ef;--text:#1b1a21;--muted:#625f6e;--faint:#8c8999;--line:rgba(44,32,84,.12);--line-strong:rgba(44,32,84,.22);--accent:#604e94;--on-accent:#fff;--in:#388e3c;--out:#d32f2f;--sale:#b23a48;--buy:#1e6fa8;--ret:#9e7026;--prod:#00796b;--cons:#a86034;--warn:#ef6c00;--amber:#9e7026;--rh-bg:#E2E1EA;--rh-title:#23233A;--rh-sub:#757575;--rh-sec:#3A3A55;--rh-btn:#ffffff;--rh-btn-b:rgba(0,0,0,.055);--rh-ico:#616161;background:#f7f6fb;color:#1b1a21}
.force-dark{color-scheme:dark;--bg:#0e0d13;--surface:#17161e;--surface-2:#201e29;--surface-3:#2a2735;--text:#ecebf2;--muted:#a3a0b0;--faint:#7a7788;--line:rgba(255,255,255,.09);--line-strong:rgba(255,255,255,.18);--accent:#c4b8e8;--on-accent:#1b1530;--in:#81c784;--out:#e57373;--sale:#f28b96;--buy:#8cc4f0;--ret:#ffd54f;--prod:#80cbc4;--cons:#ffb74d;--warn:#ffb74d;--amber:#ffd54f;--rh-bg:#14151A;--rh-title:#ffffff;--rh-sub:rgba(255,255,255,.54);--rh-sec:rgba(255,255,255,.7);--rh-btn:rgba(255,255,255,.1);--rh-btn-b:transparent;--rh-ico:rgba(255,255,255,.7);background:#0e0d13;color:#ecebf2}
.split .label{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted);margin-bottom:14px}
.split .label .ico{width:16px;height:16px}

/* download */
.dl{display:grid;gap:28px;align-items:center;padding:36px;border-radius:28px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 16%,var(--surface)),var(--surface) 60%);border:1px solid color-mix(in srgb,var(--accent) 30%,var(--line));box-shadow:var(--shadow-lg)}
@media (min-width:900px){.dl{grid-template-columns:1.1fr 1fr;padding:48px}}
.dl h2{font-size:clamp(28px,4vw,42px);line-height:1.15;letter-spacing:-.02em}
html[lang="fa"] .dl h2{letter-spacing:0;line-height:1.45}
.dl p{margin-top:12px;color:var(--muted)}
.plats{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.plat{position:relative;display:flex;align-items:center;gap:12px;padding:14px;border-radius:14px;background:var(--surface);border:1px solid var(--line);font-weight:600;font-size:15px}
.plat small{display:block;font-weight:400;color:var(--muted);font-size:12.5px}
.plat .ico{width:22px;height:22px;color:var(--accent)}
.plat.main{grid-column:1/-1;background:var(--accent);color:var(--on-accent);border-color:transparent}
.plat.main .ico,.plat.main small{color:inherit}.plat.main small{opacity:.8}
.plat.soon{opacity:.72;border-style:dashed}
.soon-tag{position:absolute;top:10px;inset-inline-end:10px;font-size:11px;font-weight:700;padding:1px 8px;border-radius:999px;background:color-mix(in srgb,var(--warn) 16%,transparent);color:var(--warn)}

/* changelog */
.full-log{margin-top:24px;text-align:center}
.full-log .btn{height:44px;font-size:14.5px}
.full-log .ico{width:18px;height:18px}
.release{max-width:780px;margin:0 auto;background:var(--surface);border:1px solid var(--line);border-radius:20px;overflow:hidden}
.release header{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid var(--line);background:var(--surface-2)}
.release header b{font-size:18px}
.release header span{color:var(--muted);font-size:14px}
.release ul{margin:0;padding:10px 22px 18px;list-style:none}
.release li{display:flex;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);font-size:15.5px}
.release li:last-child{border-bottom:0}
.release li::before{content:"";flex:none;width:7px;height:7px;border-radius:50%;margin-top:.7em;background:var(--accent)}

/* faq */
.faq{max-width:840px;margin:0 auto;display:grid;gap:10px}
details{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:0 20px;transition:border-color .2s}
details[open]{border-color:color-mix(in srgb,var(--accent) 40%,var(--line))}
summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 0;font-weight:600;font-size:16.5px}
summary::-webkit-details-marker{display:none}
summary .ico{transition:transform .2s;color:var(--muted)}
details[open] summary .ico{transform:rotate(45deg)}
details p{padding:0 0 18px;color:var(--muted)}

/* final cta + footer */
.final{text-align:center}
.final .big-h{max-width:820px;margin-inline:auto}
.final p{max-width:620px;margin:16px auto 0;color:var(--muted);font-size:17px}
footer{padding:48px 0 56px;border-top:1px solid var(--line);color:var(--muted);font-size:14px}
.fgrid{display:grid;gap:28px;grid-template-columns:repeat(auto-fill,minmax(min(100%,180px),1fr))}
.fgrid h4{font-size:13px;color:var(--text);margin-bottom:10px}
.fgrid a{display:block;padding:3px 0}
.fgrid a:hover{color:var(--text)}
.fbot{margin-top:36px;padding-top:20px;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between}

/* ═════════════════════════  APP RENDERINGS (Daftar)  ═════════════════════════
   Built in HTML/CSS, not screenshots, so they follow the page theme. Always RTL,
   like the app. Digits render in Persian through the FaNum font. */
.window{background:var(--surface);border:1px solid var(--line-strong);border-radius:18px;box-shadow:var(--shadow-lg);overflow:hidden;text-align:start}
.titlebar{display:flex;align-items:center;gap:8px;height:36px;padding:0 14px;background:var(--surface-2);border-bottom:1px solid var(--line);direction:ltr}
.titlebar i{width:11px;height:11px;border-radius:50%;background:#ff5f57}.titlebar i:nth-child(2){background:#febc2e}.titlebar i:nth-child(3){background:#28c840}
.titlebar span{flex:1;text-align:center;font-size:12.5px;color:var(--muted);font-family:Hesabak,system-ui,sans-serif;margin-inline-end:45px}
.app{direction:rtl;text-align:right;color:var(--text);font-size:13.5px;line-height:1.7}
.app .num{font-weight:700;font-variant-numeric:tabular-nums}
.app-body{padding:18px}
.scroll-x{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
.scroll-x > .tbl{min-width:min-content}
/* Phones: a wide table fades at the edge that has more columns, and its window gets a «full view» button
   that lays the whole sample out at desktop width and scales it to the screen (rotating the phone makes it larger). */
.scroll-x.more-l{-webkit-mask-image:linear-gradient(to right,transparent,#000 36px);mask-image:linear-gradient(to right,transparent,#000 36px)}
.scroll-x.more-r{-webkit-mask-image:linear-gradient(to left,transparent,#000 36px);mask-image:linear-gradient(to left,transparent,#000 36px)}
.scroll-x.more-l.more-r{-webkit-mask-image:linear-gradient(to right,transparent,#000 36px,#000 calc(100% - 36px),transparent);mask-image:linear-gradient(to right,transparent,#000 36px,#000 calc(100% - 36px),transparent)}
.fv-btn{display:none;align-items:center;gap:5px;height:24px;padding:0 9px;margin-inline-start:auto;border-radius:7px;border:1px solid var(--line-strong);background:var(--surface);color:var(--text);font:600 11.5px/1 Hesabak,system-ui,sans-serif;cursor:pointer;white-space:nowrap}
.fv-btn .ico{width:13px;height:13px}
.window.has-fv .titlebar span{margin-inline-end:0}
@media (max-width:719px){.window.has-fv .fv-btn{display:inline-flex}}
.fv{position:fixed;inset:0;z-index:100;display:grid;align-content:safe center;background:color-mix(in srgb,var(--bg) 94%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);overflow:auto;overscroll-behavior:contain;padding:56px 12px 24px}
.fv[hidden]{display:none}
.fv-bar{position:fixed;top:0;inset-inline:0;display:flex;align-items:center;gap:10px;height:48px;padding:0 12px;background:var(--surface);border-bottom:1px solid var(--line);font-size:13px;color:var(--muted);z-index:1}
.fv-bar .fv-close{margin-inline-start:auto;display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 12px;border-radius:9px;border:0;background:var(--accent);color:var(--on-accent);font:700 13px/1 Hesabak,system-ui,sans-serif;cursor:pointer}
.fv-bar .fv-close .ico{width:15px;height:15px}
.fv .window{width:680px;margin-inline:auto}
.fv .window .fv-btn{display:none!important}
@media (orientation:landscape){.fv-rot{display:none}}
body.fv-open{overflow:hidden}
.sub{font-size:12.5px;font-weight:700;color:var(--muted);margin:14px 0 8px;display:flex;align-items:center;gap:8px}
.sub::after{content:"";flex:1;height:1px;background:var(--line)}

.lh{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.lh > div:nth-child(2){min-width:0}
.lh .ti{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;color:var(--tone,var(--accent));background:color-mix(in srgb,var(--tone,var(--accent)) 14%,transparent);flex:none}
.lh .ti .ico{width:21px;height:21px}
.lh h4{font-size:16px;font-weight:700;line-height:1.3}
.lh small{display:block;color:var(--muted);font-size:12px}
.lh .trail{margin-right:auto;display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}

.badge{display:inline-flex;align-items:center;gap:5px;padding:1px 9px;border-radius:999px;font-size:11.5px;font-weight:700;color:var(--tone);background:color-mix(in srgb,var(--tone) 14%,transparent);border:1px solid color-mix(in srgb,var(--tone) 28%,transparent);white-space:nowrap}
.pill{display:inline-flex;align-items:baseline;gap:6px;padding:6px 14px;border-radius:12px;background:color-mix(in srgb,var(--tone,var(--accent)) 12%,transparent);border:1px solid color-mix(in srgb,var(--tone,var(--accent)) 28%,transparent);color:var(--tone,var(--accent));white-space:nowrap}
.pill .num{font-size:17px}.pill small{font-size:11px;color:var(--muted)}
.minibtn{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 12px;border-radius:9px;background:var(--accent);color:var(--on-accent);font-size:12px;font-weight:700;white-space:nowrap}
.minibtn.ghost{background:var(--surface-2);color:var(--text);border:1px solid var(--line)}
.minibtn.danger{background:var(--out);color:#fff}
.minibtn.tone{background:var(--tone);color:var(--surface)}
.minibtn .ico{width:15px;height:15px}
@media (max-width:520px){.lh .trail .minibtn.ghost{font-size:0;gap:0;padding:0 8px}.lh .trail .minibtn.ghost .ico{width:17px;height:17px}}
.in{color:var(--in)}.out{color:var(--out)}
.sa{display:inline-flex;align-items:center;gap:4px;direction:ltr;font-weight:700}
.sa.pos::before{content:"+"}.sa.neg::before{content:"−"}
.mk{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--warn);color:#fff;font:700 11px/1 Hesabak,system-ui,sans-serif;font-style:normal;box-shadow:0 0 0 3px color-mix(in srgb,var(--warn) 25%,transparent);flex:none;vertical-align:middle}

/* home */
.metrics{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
@media (min-width:760px){.metrics{grid-template-columns:repeat(4,1fr)}}
.metric{padding:12px 14px;border-radius:14px;background:linear-gradient(160deg,color-mix(in srgb,var(--tone) 14%,var(--surface)),var(--surface));border:1px solid color-mix(in srgb,var(--tone) 30%,transparent)}
.metric .top{display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:12px}
.metric .top .ico{width:17px;height:17px;color:var(--tone)}
.metric .num{display:block;margin-top:4px;font-size:19px;color:var(--text)}
.metric .num small{font-size:11px;font-weight:400;color:var(--muted);margin-right:4px}
.sections{display:grid;gap:14px;margin-top:16px}
@media (min-width:760px){.sections{grid-template-columns:repeat(3,1fr)}}
.sec h5{font-size:13px;font-weight:700;color:var(--muted);margin:0 0 8px;display:flex;align-items:center;gap:8px}
.sec h5::after{content:"";flex:1;height:1px;background:var(--line)}
.tiles{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.htile{display:flex;align-items:center;gap:9px;padding:10px;border-radius:12px;background:color-mix(in srgb,var(--tone) 9%,var(--surface));border:1px solid color-mix(in srgb,var(--tone) 22%,transparent);font-size:12.5px;font-weight:700;transition:transform .15s,box-shadow .15s;min-width:0}
a.htile:hover{transform:translateY(-2px);box-shadow:0 8px 18px -10px var(--tone)}
.htile .ico{width:18px;height:18px;color:var(--tone)}
.htile.fill{background:linear-gradient(135deg,var(--tone),color-mix(in srgb,var(--tone) 70%,#000));color:#fff;border-color:transparent}
.htile.fill .ico{color:#fff}
:root[data-theme="dark"] .htile.fill,:root[data-theme="dark"] .htile.fill .ico{color:#15121e}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .htile.fill,:root:not([data-theme="light"]) .htile.fill .ico{color:#15121e}}
.force-dark .htile.fill,.force-dark .htile.fill .ico{color:#15121e}.force-light .htile.fill,.force-light .htile.fill .ico{color:#fff}
.userchip{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 10px;border-radius:9px;border:1px solid var(--line);font-size:12px;font-weight:700}
.userchip i{width:20px;height:20px;border-radius:50%;background:var(--accent);color:var(--on-accent);display:grid;place-items:center;font-style:normal;font-size:11px}
.legend{margin-top:22px;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr))}
.legend div{display:flex;gap:12px;align-items:flex-start;padding:14px;border-radius:14px;background:var(--surface);border:1px solid var(--line);font-size:14.5px}
.legend b{display:block;font-size:15px}
.legend span.t{color:var(--muted);font-size:14px}

/* table */
.tbl{border:1px solid var(--line);border-radius:14px;overflow:hidden}
.tbl table{width:100%;border-collapse:collapse}
.tbl th{background:var(--surface-3);color:var(--muted);font-weight:400;font-size:12px;padding:8px 11px;text-align:right;white-space:nowrap}
.tbl td{padding:8px 11px;border-top:1px solid var(--line);white-space:nowrap}
.tbl td:has(> br),.tbl td:has(> small){white-space:normal;min-width:170px}
.tbl:has(th:nth-child(8)) table{font-size:12px}
.tbl:has(th:nth-child(8)) :is(th,td){padding-inline:6px}
.tbl:has(th:nth-child(8)) th{white-space:normal}
.tbl tbody tr:nth-child(even) td{background:color-mix(in srgb,var(--surface-2) 55%,transparent)}
.tbl .l{text-align:left}
.tbl tfoot td{background:var(--surface-2);font-weight:700}

/* forms */
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
@media (max-width:480px){.grid3{grid-template-columns:1fr 1fr}}
.field{border:1px solid var(--line-strong);border-radius:10px;padding:5px 10px;min-width:0;background:var(--surface)}
.field small{display:block;color:var(--muted);font-size:10.5px;line-height:1.3}
.field b{font-size:13px;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.field.focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}
.field.wide{grid-column:1/-1}
.seg{display:flex;flex-wrap:wrap;gap:6px}
.seg span{padding:4px 12px;border-radius:9px;border:1px solid var(--line-strong);font-size:12px;color:var(--muted);display:inline-flex;align-items:center;gap:6px}
.seg span .ico{width:15px;height:15px}
.seg span.on{background:var(--tone,var(--accent));border-color:transparent;color:var(--surface);font-weight:700}
.card-sec{border:1px solid var(--line);border-radius:14px;padding:12px;background:var(--surface)}
.card-sec + .card-sec{margin-top:10px}
.card-sec h6{margin:0 0 8px;font-size:12.5px;display:flex;align-items:center;gap:8px}
.card-sec h6 .ico{width:16px;height:16px;color:var(--accent)}
.note{padding:10px 12px;border-radius:12px;font-size:12px;color:var(--muted);background:var(--surface-2);border:1px solid var(--line)}
.note.amber{color:var(--text);line-height:1.8;background:color-mix(in srgb,var(--amber) 14%,var(--surface));border-color:color-mix(in srgb,var(--amber) 45%,transparent)}
.fx{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border-radius:12px;font-size:12px;color:var(--amber);background:color-mix(in srgb,var(--amber) 11%,transparent);border:1px solid color-mix(in srgb,var(--amber) 30%,transparent)}
.fx .ico{width:17px;height:17px;margin-top:2px}
.fx.miss{color:var(--warn);background:color-mix(in srgb,var(--warn) 10%,transparent);border-color:color-mix(in srgb,var(--warn) 30%,transparent)}
.fx.ok{color:var(--in);background:color-mix(in srgb,var(--in) 10%,transparent);border-color:color-mix(in srgb,var(--in) 30%,transparent)}
.fx.bad{color:var(--out);background:color-mix(in srgb,var(--out) 9%,transparent);border-color:color-mix(in srgb,var(--out) 30%,transparent)}
.actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.search{display:flex;align-items:center;gap:8px;height:34px;padding:0 12px;border-radius:10px;background:var(--surface-2);border:1px solid var(--line);color:var(--faint);font-size:12.5px;flex:1;min-width:0}
.search .ico{width:16px;height:16px}
.toolbar{display:flex;gap:8px;align-items:center;margin-bottom:12px;flex-wrap:wrap}
.check{display:inline-grid;place-items:center;width:17px;height:17px;border-radius:5px;border:1.5px solid var(--line-strong);flex:none}
.check.on{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}
.check.on::after{content:"";width:8px;height:5px;border:2px solid currentColor;border-top:0;border-right:0;transform:rotate(-45deg) translate(1px,-1px)}
.switch{width:34px;height:20px;border-radius:999px;background:var(--surface-3);position:relative;flex:none}
.switch::after{content:"";position:absolute;top:3px;right:3px;width:14px;height:14px;border-radius:50%;background:var(--faint);transition:all .2s}
.switch.on{background:var(--accent)}.switch.on::after{right:17px;background:var(--on-accent)}
.row{display:flex;align-items:center;justify-content:space-between;gap:10px}
.list-row{display:flex;align-items:center;gap:10px;padding:9px 12px;border-bottom:1px solid var(--line)}
.list-row:last-child{border-bottom:0}
.list-row .grow{flex:1;min-width:0}
.list-row small{display:block;color:var(--muted);font-size:11.5px}
.boxed{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--surface)}

/* invoice */
.qty{display:inline-flex;align-items:center;gap:2px;border:1px solid var(--line);border-radius:9px;padding:2px}
.qty button{width:24px;height:24px;border-radius:7px;display:grid;place-items:center;color:var(--accent);font-weight:700;font-size:15px;line-height:1}
.qty button:hover{background:color-mix(in srgb,var(--accent) 14%,transparent)}
.qty output{min-width:26px;text-align:center;font-weight:700}
.inv-foot{display:grid;gap:12px;margin-top:12px}
@media (min-width:640px){.inv-foot{grid-template-columns:1fr 1.05fr}}
.totals{border:1px solid var(--line);border-radius:14px;padding:6px 14px;background:var(--surface)}
.totals div{display:flex;justify-content:space-between;gap:10px;padding:6px 0;border-bottom:1px dashed var(--line)}
.totals div:last-child{border:0}
.totals .grand{font-size:15px}.totals .grand .num{font-size:19px;color:var(--tone,var(--sale))}
.totals div span:first-child{color:var(--muted)}
.totals .grand span:first-child{color:var(--text);font-weight:700}
.pays .list-row .badge{min-width:64px;justify-content:center}

/* cards: persons / products / accounts */
.cards{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(190px,1fr))}
.pcard{padding:12px;border-radius:14px;border:1px solid var(--line);background:var(--surface)}
.pcard .row b{font-size:13.5px}
.pcard small{display:block;color:var(--muted);font-size:11.5px}
.pcard .num{font-size:16px;display:block;margin-top:6px}
.acard{position:relative;padding:14px;border-radius:16px;background:linear-gradient(150deg,color-mix(in srgb,var(--tone) 18%,var(--surface)),var(--surface) 70%);border:1px solid color-mix(in srgb,var(--tone) 40%,transparent);overflow:hidden}
.acard .num{display:block;font-size:22px;margin:8px 0 2px}
.acard small{color:var(--muted);font-size:11.5px;display:block}
.acard .mono{direction:ltr;text-align:right;font-size:12px;color:var(--muted);letter-spacing:.06em}

/* checks */
.filters{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}
.filters button{padding:3px 12px;border-radius:999px;border:1px solid var(--line-strong);font-size:12px;color:var(--muted)}
.filters button[aria-pressed="true"]{background:var(--accent);border-color:transparent;color:var(--on-accent);font-weight:700}
.checks{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}
.cheque{position:relative;padding:12px 14px 12px 12px;border-radius:14px;border:1px solid var(--line);background:var(--surface);overflow:hidden}
.cheque::before{content:"";position:absolute;inset-block:0;right:0;width:4px;background:var(--tone)}
.cheque .row{align-items:center}
.cheque .num{font-size:17px;display:block;margin:6px 0 2px}
.cheque small{color:var(--muted);font-size:11.5px}
.cheque[hidden]{display:none}

/* payroll */
.pay{display:grid;gap:10px}
@media (min-width:640px){.pay{grid-template-columns:1fr 1fr 1fr}}
.dest{padding:14px;border-radius:14px;background:linear-gradient(160deg,color-mix(in srgb,var(--tone) 13%,var(--surface)),var(--surface));border:1px solid color-mix(in srgb,var(--tone) 32%,transparent)}
.dest small{color:var(--muted);font-size:11.5px;display:block}
.dest .num{font-size:20px;display:block;margin:4px 0;color:var(--tone)}
.dest .who{font-size:12px;font-weight:700}
.slip{margin-top:12px;display:grid;gap:12px}
@media (min-width:640px){.slip{grid-template-columns:1fr 1fr}}
.cost{margin-top:12px;display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;justify-content:space-between;padding:12px 14px;border-radius:14px;background:color-mix(in srgb,var(--warn) 10%,transparent);border:1px solid color-mix(in srgb,var(--warn) 30%,transparent);color:var(--warn);font-size:12.5px}
.cost .num{font-size:18px}

/* p&l, summary */
.pl{display:grid;gap:12px}
@media (min-width:640px){.pl{grid-template-columns:1.3fr 1fr}}
.bars{display:grid;gap:10px;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}
.bar{display:grid;grid-template-columns:96px 1fr auto;gap:10px;align-items:center;font-size:12.5px}
.bar .track{height:12px;border-radius:6px;background:var(--surface-2);overflow:hidden}
.bar .track i{display:block;height:100%;border-radius:6px;background:var(--tone);width:var(--w)}
.net{padding:16px;border-radius:14px;background:linear-gradient(160deg,color-mix(in srgb,var(--tone,var(--in)) 14%,var(--surface)),var(--surface));border:1px solid color-mix(in srgb,var(--tone,var(--in)) 32%,transparent)}
.net small{color:var(--muted)}.net .num{display:block;font-size:26px;color:var(--tone,var(--in));margin-top:4px}
.bal{display:grid;gap:12px}
@media (min-width:640px){.bal{grid-template-columns:1fr 1fr}}

/* cost method / production */
.comp{display:grid;grid-template-columns:auto 1fr auto auto;gap:10px;align-items:center;padding:9px 12px;border-radius:12px;border:1px solid var(--line);background:var(--surface);margin-bottom:8px}
.comp .ti{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;background:color-mix(in srgb,var(--cons) 14%,transparent);color:var(--cons)}
.comp .ti .ico{width:16px;height:16px}
.comp small{display:block;color:var(--muted);font-size:11.5px}
.comp .num{color:var(--cons)}
.comp.off{opacity:.45}
.unit-cost{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;padding:14px;border-radius:14px;background:linear-gradient(160deg,color-mix(in srgb,var(--prod) 14%,var(--surface)),var(--surface));border:1px solid color-mix(in srgb,var(--prod) 32%,transparent)}
.unit-cost .num{font-size:24px;color:var(--prod)}
.flow{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:12px}
.flow div{padding:10px;border-radius:12px;text-align:center;font-size:12px;font-weight:700;color:var(--tone);background:color-mix(in srgb,var(--tone) 10%,transparent);border:1px solid color-mix(in srgb,var(--tone) 26%,transparent)}
.flow .ico{width:18px;height:18px;display:block;margin:0 auto 4px}

/* dialogs */
.dlg{border-radius:18px;border:1px solid var(--line-strong);background:var(--surface);box-shadow:var(--shadow-lg);padding:18px}
.dlg h4{font-size:15px;display:flex;align-items:center;gap:10px}
.dlg h4 .ti{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;color:var(--tone,var(--accent));background:color-mix(in srgb,var(--tone,var(--accent)) 14%,transparent)}
.dlg h4 .ti .ico{width:18px;height:18px}
.dlg p{margin-top:10px;color:var(--muted);font-size:12.5px}
.dlg .actions{justify-content:flex-start}
.progress{height:8px;border-radius:4px;background:var(--surface-3);overflow:hidden;margin-top:12px}
.progress i{display:block;height:100%;width:var(--w);background:var(--accent);border-radius:4px}
.dropzone{border:2px dashed color-mix(in srgb,var(--accent) 45%,var(--line));border-radius:14px;padding:16px;text-align:center;color:var(--muted);font-size:12.5px;background:color-mix(in srgb,var(--accent) 5%,transparent)}
.dropzone .ico{width:26px;height:26px;color:var(--accent);display:block;margin:0 auto 6px}
.otp{display:flex;gap:6px;direction:ltr;justify-content:center}
.otp span{width:38px;height:44px;border-radius:10px;border:1px solid var(--line-strong);display:grid;place-items:center;font-weight:700;font-size:18px}
.otp span.cur{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}
.stack{display:grid;gap:14px}
.stack-2{display:grid;gap:14px}
@media (min-width:700px){.stack-2{grid-template-columns:1fr 1fr}}

/* ═════════ PDF papers (paper is always white, like a real sheet) ═════════ */
.pdf-lab{display:grid;gap:24px;align-items:start}
@media (min-width:1000px){.pdf-lab{grid-template-columns:minmax(0,360px) minmax(0,1fr)}}
.sheet{border-radius:20px 20px 16px 16px;border:1px solid var(--line-strong);background:var(--surface);box-shadow:var(--shadow-lg);padding:18px}
.sheet .grip{width:40px;height:4px;border-radius:2px;background:var(--line-strong);margin:0 auto 12px}
.sheet h4{font-size:15px;text-align:center;margin-bottom:12px}
.sheet .lbl{font-size:12px;color:var(--muted);margin:12px 0 6px}
.opts{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.opt{display:flex;align-items:center;justify-content:center;gap:8px;height:42px;border-radius:12px;border:1px solid var(--line-strong);font-size:13px;font-weight:700;color:var(--muted);transition:all .15s}
.opt .ico{width:18px;height:18px}
.opt[aria-pressed="true"]{border-color:var(--accent);color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent)}
.printbtn{margin-top:16px;width:100%;height:44px;border-radius:12px;background:var(--accent);color:var(--on-accent);font-weight:700;display:flex;align-items:center;justify-content:center;gap:8px}
.printbtn .ico{width:18px;height:18px}
.sheet .alts{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}
.sheet .alts span{display:flex;align-items:center;justify-content:center;gap:6px;height:38px;border-radius:10px;border:1px solid var(--line);font-size:11.5px;text-align:center;padding:0 6px}
.sheet .alts span .ico{width:15px;height:15px}
.sheet .alts span.w{grid-column:1/-1}
.stage{display:grid;place-items:center;min-height:600px;padding:28px;border-radius:22px;background:repeating-linear-gradient(45deg,color-mix(in srgb,var(--surface-2) 55%,transparent) 0 12px,transparent 12px 24px),var(--bg-2);border:1px solid var(--line)}
@media (max-width:700px){.stage{min-height:0;padding:16px}}
.stage-cap{margin-top:12px;text-align:center;font-size:13.5px;color:var(--muted)}
.paper{container-type:inline-size;background:#fff;color:#1f1d26;border-radius:3px;box-shadow:0 2px 6px rgba(0,0,0,.12),0 24px 50px -18px rgba(0,0,0,.4);direction:rtl;text-align:right;font-family:Hesabak,system-ui,sans-serif;transition:width .35s cubic-bezier(.2,.8,.2,1),aspect-ratio .35s;overflow:hidden;position:relative}
.paper.bw{filter:grayscale(1) contrast(1.05)}
.pp{position:absolute;inset:0;padding:5cqw 5.5cqw;display:flex;flex-direction:column;font-size:2.15cqw;line-height:1.55}
.pp .num{font-weight:700}
.pp-h{display:flex;align-items:center;gap:3cqw;padding-bottom:2cqw;border-bottom:.35cqw solid #604e94}
.pp-logo{width:9cqw;height:9cqw;flex:none}
.pp-h b{font-size:3.4cqw;display:block;line-height:1.3}
.pp-h small{color:#6b6878;font-size:1.8cqw;display:block}
.pp-h .doc{margin-right:auto;text-align:left;direction:rtl}
.pp-h .doc b{color:#b23a48;font-size:3cqw}
.pp-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:1cqw 3cqw;padding:2cqw 0;font-size:1.9cqw;color:#3b3946}
.pp-meta span b{font-weight:700;color:#1f1d26}
.pp table{width:100%;border-collapse:collapse;font-size:1.9cqw}
.pp th{background:#efedf6;color:#4d4a5a;font-weight:400;padding:1cqw 1.2cqw;text-align:right}
.pp td{padding:1cqw 1.2cqw;border-bottom:.15cqw solid #e4e1ec}
.pp td.l,.pp th.l{text-align:left}
.pp-foot{display:grid;grid-template-columns:1.2fr 1fr;gap:3cqw;margin-top:2cqw}
.pp-words{font-size:1.8cqw;color:#3b3946;padding:1.5cqw 2cqw;border-radius:1.2cqw;background:#f6f5fa}
.pp-tot div{display:flex;justify-content:space-between;padding:.6cqw 0;border-bottom:.15cqw dashed #dcd8e6;font-size:1.9cqw}
.pp-tot div.g{font-size:2.5cqw;border:0;color:#b23a48}
.pp-bal{margin-top:1.5cqw;display:grid;grid-template-columns:1fr 1fr;gap:2cqw;font-size:1.7cqw}
.pp-bal div{padding:1.2cqw 1.8cqw;border-radius:1.2cqw;border:.15cqw solid #e4e1ec}
.pp-sum{margin-top:1.5cqw;display:grid;grid-template-columns:repeat(4,1fr);gap:1.2cqw}
.pp-sum div{padding:1.2cqw;border-radius:1.2cqw;background:#f3f1f8;font-size:1.6cqw;color:#5b5868}
.pp-sum div b{display:block;color:#1f1d26;font-size:2.1cqw}
.pp-sign{margin-top:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:3cqw;padding-top:3cqw;font-size:1.7cqw;color:#6b6878;text-align:center}
.pp-sign div{border-top:.15cqw solid #bdb8cc;padding-top:1cqw}
.paper.land .pp{font-size:1.5cqw;padding:3.2cqw 4.2cqw}
.paper.land .pp-h b{font-size:2.5cqw}.paper.land .pp-logo{width:6.5cqw;height:6.5cqw}
.paper.land .pp-h .doc b{font-size:2.2cqw}
.paper.land .pp-meta,.paper.land .pp table,.paper.land .pp-tot div{font-size:1.4cqw}
.paper.land .pp-words,.paper.land .pp-bal,.paper.land .pp-sign{font-size:1.3cqw}
.paper.land .pp-sum div{font-size:1.2cqw}.paper.land .pp-sum div b{font-size:1.6cqw}
.paper.land .pp-tot div.g{font-size:1.9cqw}
.paper.land .pp th,.paper.land .pp td{padding:.55cqw 1cqw}.paper.land .pp-meta{padding:1.2cqw 0;gap:.4cqw 3cqw}.paper.land .pp-tot div{padding:.18cqw 0}.paper.land .pp-bal{margin-top:1cqw}.paper.land .pp-bal div{padding:.8cqw 1.4cqw}.paper.land .pp-sum{margin-top:1cqw}.paper.land .pp-sum div{padding:.8cqw}.paper.land .pp-sign{padding-top:1.5cqw}.paper.land .pp-h{padding-bottom:1.2cqw}.paper.land .pp-foot{margin-top:1.2cqw}
.paper.land .pp-h small{font-size:1.35cqw}
.gallery{display:grid;gap:22px;grid-template-columns:repeat(auto-fill,minmax(min(100%,230px),1fr));margin-top:48px}
.gal figure{margin:0}
.gal .paper{width:100%}
.gal figcaption{margin-top:12px;font-size:14.5px;font-weight:600}
.gal figcaption small{display:block;color:var(--muted);font-weight:400;font-size:13px}
.mp{position:absolute;inset:0;padding:6cqw;font-size:3.6cqw;line-height:1.5;display:flex;flex-direction:column;gap:2.4cqw}
.mp .t{font-weight:700;font-size:5.4cqw;border-bottom:.6cqw solid var(--c,#604e94);padding-bottom:2cqw;display:flex;justify-content:space-between;align-items:center}
.mp .t small{font-weight:400;font-size:3.2cqw;color:#6b6878}
.mp table{width:100%;border-collapse:collapse;font-size:3.1cqw}
.mp th{background:#efedf6;font-weight:400;color:#4d4a5a;padding:1.2cqw 1.6cqw;text-align:right}
.mp td{padding:1.2cqw 1.6cqw;border-bottom:.3cqw solid #ebe8f1}
.mp .box{padding:2.4cqw;border-radius:2cqw;background:#f5f4f9;display:flex;justify-content:space-between}
.mp .r{color:#c62828}.mp .g{color:#2e7d32}
.mp .foot{margin-top:auto;display:flex;justify-content:space-between;color:#8c8999;font-size:2.8cqw}
.paper.land .mp{font-size:2.6cqw;padding:4.5cqw}.paper.land .mp table{font-size:2.3cqw}.paper.land .mp .t{font-size:4cqw}

/* ── Real home screen (HomePage.dart): page tint, header buttons, 5-card strip, sections of solid tiles ── */
.hero-shot{margin:56px auto 0;max-width:1140px;text-align:start}
.rh{background:var(--rh-bg);padding:14px 16px 22px;color:var(--rh-title)}
.rh-head{display:flex;align-items:center;gap:8px}
.rh-logo{width:46px;height:46px;border-radius:14px;background:rgba(0,150,136,.12);color:#009688;display:grid;place-items:center;flex:none;margin-left:4px}
.rh-logo .ico{width:26px;height:26px;fill:rgba(0,150,136,.25)}
.rh-title{flex:1;min-width:0}
.rh-title b{display:block;font-size:18px;color:var(--rh-title);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rh-title small{display:block;font-size:12px;color:var(--rh-sub);margin-top:2px}
.rh-btn{height:42px;min-width:42px;border-radius:12px;background:var(--rh-btn);border:1px solid var(--rh-btn-b);display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 10px;color:var(--rh-ico);font-size:11.5px;font-weight:700;flex:none;transition:background .15s,border-color .15s}
.rh-btn:hover{background:color-mix(in srgb,#FFC107 30%,var(--rh-btn));border-color:rgba(255,193,7,.6)}
.rh-btn .ico{width:20px;height:20px}
.rh-strip{display:flex;flex-wrap:wrap;gap:12px;padding:16px 0 10px;align-items:center}
.rm{width:185px;height:78px;border-radius:16px;background:color-mix(in srgb,var(--c) 10%,transparent);padding:12px 14px;display:flex;flex-direction:column;justify-content:space-between;color:var(--c)}
.rm-top{display:flex;justify-content:space-between;align-items:center;font-size:12.5px;font-weight:700}
.rm-top .ico{width:18px;height:18px}
.rm-v{font-size:19px;font-weight:700;white-space:nowrap}
.rm-v small{font-size:11px;font-weight:400;opacity:.8;margin-right:6px}
.rh-sec{padding:10px 0 4px}
.rh-sec h5{display:flex;align-items:center;gap:8px;font-size:14.5px;font-weight:700;color:var(--rh-sec);margin:0 2px 10px}
.rh-sec h5::before{content:"";width:4px;height:16px;border-radius:4px;background:var(--c)}
.rh-tiles{display:flex;flex-wrap:wrap;gap:12px}
.rt{position:relative;overflow:hidden;width:185px;display:flex;align-items:center;gap:10px;padding:12px;border-radius:18px;background:var(--c);color:#fff;font-size:12.5px;font-weight:700;line-height:1.25;box-shadow:0 2px 5px color-mix(in srgb,var(--c) 47%,transparent);transition:transform .17s cubic-bezier(.2,.8,.2,1),box-shadow .17s}
.rt::after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(to bottom left,rgba(255,255,255,.18),rgba(255,255,255,.03) 45%,transparent);opacity:0;transition:opacity .17s}
.rt:hover,.rt:focus-visible{transform:translateY(-2px) scale(1.035);box-shadow:0 12px 24px -6px color-mix(in srgb,var(--c) 75%,transparent)}
.rt:hover::after,.rt:focus-visible::after{opacity:1}
.ri{width:44px;height:44px;border-radius:14px;background:rgba(255,255,255,.19);display:grid;place-items:center;flex:none;transition:background .17s}
.rt:hover .ri{background:rgba(255,255,255,.3)}
.ri .ico{width:24px;height:24px;color:#fff}
@media (max-width:600px){.rm,.rt{width:calc(50% - 6px)}.rt{padding:10px;gap:8px}.ri{width:38px;height:38px}.rh-head .rh-btn:not(:first-of-type){display:none}}

/* ── ledger-style section header (LedgerHeader) used by the settings render ── */
.ls{border:1px solid var(--line);border-radius:16px;background:var(--surface);padding:14px}
.ls + .ls{margin-top:10px}
.ls-h{display:flex;gap:10px;align-items:center;margin-bottom:10px}
.ls-h .ti{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;color:var(--tone,var(--accent));background:color-mix(in srgb,var(--tone,var(--accent)) 14%,transparent);flex:none}
.ls-h .ti .ico{width:18px;height:18px}
.ls-h b{display:block;font-size:13.5px}
.ls-h small{display:block;color:var(--muted);font-size:11.5px;line-height:1.5}
.logo-pick{position:relative;display:flex;align-items:center;justify-content:center;gap:14px;height:124px;border-radius:14px;border:1px dashed var(--line-strong);background:repeating-conic-gradient(color-mix(in srgb,var(--surface-2) 70%,transparent) 0 25%,transparent 0 50%) 0 0/16px 16px}
.logo-pick svg.logo{width:84px;height:84px;filter:drop-shadow(0 6px 14px rgba(225,29,72,.25))}
.logo-pick .wm b{display:block;font-size:20px;line-height:1.3}
.logo-pick .wm small{display:block;font-size:11px;color:var(--muted);letter-spacing:.12em;direction:ltr;text-align:right;font-family:system-ui,sans-serif}
.logo-pick .x{position:absolute;top:8px;left:8px;width:24px;height:24px;border-radius:50%;background:var(--out);color:#fff;display:grid;place-items:center}
.logo-pick .x .ico{width:14px;height:14px;stroke-width:2.4}

/* ── Drag & drop to messengers ── */
.bi{width:24px;height:24px;flex:none}
.dnd{position:relative;display:grid;gap:40px;direction:ltr;margin-top:8px}
@media (min-width:880px){.dnd{grid-template-columns:1fr 1fr;align-items:center;gap:72px}}
.dnd .window{direction:rtl}
.fcard{display:flex;align-items:center;gap:12px;padding:12px;border-radius:14px;border:1px solid var(--line-strong);background:var(--surface);cursor:grab}
.fcard .pdf{width:40px;height:48px;border-radius:6px;background:#E53935;color:#fff;display:grid;place-items:end center;padding-bottom:6px;font:800 10px/1 system-ui,sans-serif;position:relative;flex:none}
.fcard .pdf::before{content:"";position:absolute;top:0;right:0;width:12px;height:12px;background:linear-gradient(225deg,var(--surface) 50%,#B71C1C 50%);border-bottom-left-radius:3px}
.fcard b{display:block;font-size:12.5px}
.fcard small{display:block;color:var(--muted);font-size:11px}
.chats{display:grid;gap:14px}
.chat{border-radius:18px;overflow:hidden;border:1px solid var(--line-strong);background:var(--surface);box-shadow:var(--shadow);direction:rtl;text-align:right}
.chat-h{display:flex;align-items:center;gap:10px;padding:10px 14px;color:#fff}
.chat.tg .chat-h{background:#2AABEE}.chat.wa .chat-h{background:#128C7E}
.chat-h .av{width:30px;height:30px;border-radius:50%;background:rgba(255,255,255,.25);display:grid;place-items:center;font-weight:700;font-size:13px}
.chat-h b{font-size:13px;display:block}.chat-h small{font-size:10.5px;opacity:.85;display:block}
.chat-h .bi{margin-right:auto;width:26px;height:26px}
.chat-b{position:relative;padding:12px 14px;display:grid;gap:8px;min-height:120px;font-size:12.5px}
.chat.tg .chat-b{background:color-mix(in srgb,#2AABEE 7%,var(--surface))}.chat.wa .chat-b{background:color-mix(in srgb,#25D366 7%,var(--surface))}
.bub{max-width:78%;padding:7px 11px;border-radius:12px;background:var(--surface);border:1px solid var(--line);justify-self:end}
.bub.me{justify-self:start;background:color-mix(in srgb,#2AABEE 18%,var(--surface));border-color:transparent}
.chat.wa .bub.me{background:color-mix(in srgb,#25D366 20%,var(--surface))}
.bub.file{display:flex;align-items:center;gap:10px}
.bub.file .pdf{width:30px;height:36px;border-radius:5px;background:#E53935;color:#fff;display:grid;place-items:end center;padding-bottom:4px;font:800 8px/1 system-ui,sans-serif;flex:none}
.bub.file small{display:block;color:var(--muted);font-size:10.5px}
.tick{color:#34B7F1;font-size:11px;margin-right:4px}
.drop{position:absolute;inset:8px;border:2px dashed #2AABEE;border-radius:12px;display:grid;place-items:center;color:#1E88C7;font-weight:700;background:color-mix(in srgb,#2AABEE 10%,transparent);opacity:0}
.dghost{position:absolute;z-index:3;pointer-events:none;display:flex;align-items:center;gap:8px;padding:8px 12px 8px 8px;border-radius:12px;background:var(--surface);border:1px solid var(--line-strong);box-shadow:0 18px 40px -10px rgba(0,0,0,.45);font-size:12px;font-weight:700;direction:rtl;opacity:0}
.dghost .pdf{width:24px;height:30px;border-radius:4px;background:#E53935;color:#fff;display:grid;place-items:end center;padding-bottom:3px;font:800 7px/1 system-ui,sans-serif}
.dghost .cur{position:absolute;left:-10px;bottom:-14px;width:22px;height:22px;color:var(--text)}
.dghost .cur path{fill:var(--surface);stroke:var(--text);stroke-width:1.5}
.sent{opacity:0}
@media (min-width:880px){
  .dghost{animation:drag-x 6s cubic-bezier(.45,.05,.3,1) infinite}
  @keyframes drag-x{0%,6%{left:20%;top:52%;opacity:0;transform:scale(.9)}12%{left:20%;top:52%;opacity:1;transform:scale(1.04) rotate(-3deg)}52%{left:68%;top:22%;opacity:1;transform:scale(1.04) rotate(-3deg)}60%,100%{left:68%;top:22%;opacity:0;transform:scale(.7)}}
}
@media (max-width:879px){
  .dghost{animation:drag-y 6s cubic-bezier(.45,.05,.3,1) infinite}
  @keyframes drag-y{0%,6%{left:25%;top:26%;opacity:0}12%{left:25%;top:26%;opacity:1;transform:rotate(-3deg)}52%{left:30%;top:60%;opacity:1;transform:rotate(-3deg)}60%,100%{left:30%;top:60%;opacity:0}}
}
.drop{animation:drop-hl 6s linear infinite}
@keyframes drop-hl{0%,34%{opacity:0}40%,55%{opacity:1}60%,100%{opacity:0}}
.sent{animation:sent-in 6s ease infinite}
@keyframes sent-in{0%,56%{opacity:0;transform:translateY(8px)}62%,94%{opacity:1;transform:none}100%{opacity:0}}
@media (prefers-reduced-motion:reduce){.dghost,.drop{display:none}.sent{animation:none;opacity:1}}
.mini .rm{width:calc(50% - 6px)}
.targets{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:28px}
.targets span{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:12px;background:var(--surface);border:1px solid var(--line);font-size:14px}
.targets .ico{width:22px;height:22px;color:var(--accent)}
.usb{display:grid;place-items:center;gap:8px;text-align:center}
.usb .plug{width:64px;height:64px;border-radius:18px;display:grid;place-items:center;background:color-mix(in srgb,var(--in) 14%,transparent);color:var(--in)}
.usb .plug .ico{width:34px;height:34px}

/* ── Home layouts (HomeLayouts.dart): ltr, top-to-bottom columns, list table, bottom dock ── */
.layouts{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px;margin-bottom:14px}
.layouts .lbl{font-size:14px;color:var(--muted);margin-inline-end:6px}
.layouts button{padding:7px 14px;border-radius:10px;border:1px solid var(--line-strong);background:var(--surface);font-size:14px;color:var(--muted)}
.layouts button[aria-pressed="true"]{background:#009688;border-color:transparent;color:#fff;font-weight:700}
.rh-dock{display:none}
.rh[data-layout="ltr"] .rh-secs{direction:ltr}
.rh[data-layout="ttb"] .rh-secs,.rh[data-layout="list"] .rh-secs{display:grid;grid-template-columns:repeat(7,minmax(140px,1fr));gap:10px;overflow-x:auto;padding-bottom:6px}
.rh[data-layout="ttb"] .rh-tiles,.rh[data-layout="list"] .rh-tiles{flex-direction:column;flex-wrap:nowrap;gap:10px}
.rh[data-layout="ttb"] .rt{width:100%}
.rh[data-layout="list"] .rh-secs{gap:0;background:var(--rh-btn);border:1px solid var(--line);border-radius:16px;padding:6px 0}
.rh[data-layout="list"] .rh-sec{padding:6px 10px;border-inline-start:1px solid var(--line)}
.rh[data-layout="list"] .rh-sec:first-child{border-inline-start:0}
.rh[data-layout="list"] .rh-tiles{gap:2px}
.rh[data-layout="list"] .rt{width:100%;background:none!important;color:var(--rh-title);box-shadow:none;border-radius:10px;padding:6px;gap:8px}
.rh[data-layout="list"] .rt::after{display:none}
.rh[data-layout="list"] .rt .ri{width:30px;height:30px;border-radius:9px;background:var(--c)}
.rh[data-layout="list"] .rt .ri .ico{width:17px;height:17px}
.rh[data-layout="list"] .rt:hover{transform:none;background:color-mix(in srgb,var(--c) 12%,transparent)!important}
.rh[data-layout="btt"] .rh-secs{display:none}
.rh[data-layout="btt"] .rh-dock{display:flex}
.rh-dock{justify-content:center;align-items:flex-end;gap:10px;width:max-content;max-width:100%;margin:430px auto 0;padding:10px 14px;border-radius:22px;background:var(--rh-btn);border:1px solid var(--line);box-shadow:var(--shadow)}
.dk{position:relative;outline:none}
.dk-i{width:52px;height:52px;border-radius:16px;background:var(--c);color:#fff;display:grid;place-items:center;transition:transform .18s cubic-bezier(.2,.8,.2,1);box-shadow:0 4px 10px -4px var(--c)}
.dk-i .ico{width:26px;height:26px}
.dk:hover .dk-i,.dk.open .dk-i,.dk:focus-visible .dk-i{transform:translateY(-6px) scale(1.18)}
.dk-col{position:absolute;bottom:calc(100% + 18px);left:50%;transform:translateX(-50%);display:none;flex-direction:column;gap:8px;width:185px}
.dk.open .dk-col{display:flex}
.dk-col h6{margin:0 0 2px;text-align:center;font-size:13px;color:var(--rh-sec)}
.dk-col .rt{width:100%}
@media (max-width:600px){.dk-i{width:38px;height:38px;border-radius:12px}.dk-i .ico{width:20px;height:20px}.rh-dock{gap:6px;padding:8px}.dk-col{width:160px}}

/* ── Warehouses, tax, database renders ── */
.grid4{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
@media (min-width:640px){.grid4{grid-template-columns:repeat(4,1fr)}}
.stile{padding:12px;border-radius:14px;background:color-mix(in srgb,var(--tone) 10%,var(--surface));border:1px solid color-mix(in srgb,var(--tone) 26%,transparent)}
.stile small{display:block;color:var(--muted);font-size:11px;line-height:1.4}
.stile .num{display:block;font-size:16px;margin-top:4px;color:var(--tone)}
.opt-card{display:flex;gap:10px;align-items:flex-start;padding:12px;border-radius:14px;border:1px solid var(--line-strong);background:var(--surface)}
.opt-card.on{border-color:#009688;background:color-mix(in srgb,#009688 8%,var(--surface));box-shadow:0 0 0 3px color-mix(in srgb,#009688 16%,transparent)}
.opt-card .dot{width:18px;height:18px;border-radius:50%;border:2px solid var(--line-strong);flex:none;margin-top:2px}
.opt-card.on .dot{border:5px solid #009688}
.opt-card b{display:block;font-size:13px}
.opt-card small{display:block;color:var(--muted);font-size:11.5px;line-height:1.6}
.steps-l{display:grid;gap:2px;margin-top:12px}
.steps-l div{display:flex;align-items:center;gap:10px;padding:7px 4px;font-size:12.5px;border-bottom:1px dashed var(--line)}
.steps-l div:last-child{border:0}
.steps-l i{width:20px;height:20px;border-radius:50%;display:grid;place-items:center;flex:none;font-style:normal;font-size:11px;border:2px solid var(--line-strong)}
.steps-l .ok i{background:var(--in);border-color:var(--in);color:#fff}
.steps-l .now i{border-color:#009688;border-top-color:transparent;animation:spin 1s linear infinite}
.steps-l .now{font-weight:700}
.steps-l .todo{color:var(--faint)}
@keyframes spin{to{transform:rotate(360deg)}}
.files{display:grid;gap:6px;margin-top:10px;direction:ltr}
.files div{display:flex;align-items:center;gap:8px;padding:7px 10px;border-radius:10px;border:1px solid var(--line);font:12px ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--muted)}
.files div .ico{width:16px;height:16px}
.files div span{margin-left:auto;font-family:Hesabak,system-ui,sans-serif}
.files .hot{border-color:color-mix(in srgb,var(--in) 50%,transparent);background:color-mix(in srgb,var(--in) 9%,transparent);color:var(--text)}
.files .hot span{color:var(--in);font-weight:700}
@media (min-width:900px){.why.four{grid-template-columns:repeat(4,1fr)}}
.hint-last{display:block;font-size:11px;color:var(--amber)}
/* grid and stack children may shrink below their content; wide tables scroll inside their own box */
.feat > *,.stack > *,.stack-2 > *,.split > *,.pdf-lab > *,.dnd > *{min-width:0}
.force-light .rh,.force-dark .rh{overflow:hidden}
@media (max-width:600px){.rm-v{font-size:16px}}
