/* CCUX Guard — marketing site design system (index, guide, manual, help, privacy, terms).
   Same visual language as the control panel: dark ink floor, desk-like panels, Alexandria for UI text,
   JetBrains Mono for numbers, cloud blue #1A7BCB as the brand anchor, line colours WAN 1 blue / WAN 2 violet.
   RTL-first: every horizontal rule uses logical properties (inline-start / inline-end). No glass, no emoji. */
:root{
  /* panel tokens (dark) */
  --bg:#0B0E13;--bg2:#0C1016;--panel:#121821;--panel2:#151B24;--desk:#1A2029;--desk-edge:#252D39;--sunken:#0F141B;
  --line:#1F2732;--line2:#2A3341;--txt:#EEF2F7;--txt2:#A9B3C1;--muted:#A9B3C1;--dim:#7D8898;
  --brand:#58B4FF;--brand2:#9FD0FF;--cloud:#1A7BCB;--cta:#1670B9;--cta-hi:#1A7BCB;--cta-ring:#2B8EE0;--ink:#06111C;
  --ok:#3DDC97;--warn:#FFB547;--bad:#FF6A5B;--wa:#25D366;
  --l1:#3FA3FF;--l2:#B48CFF;
  --g-val:#FF4655;--g-cs2:#F5A524;--g-pubg:#E9C84A;--g-fc:#36D7A0;--g-lol:#D2B47C;
  --tile:rgba(255,255,255,.028);
  /* legacy aliases used by the docs pages */
  --surface:var(--panel);--surface2:var(--panel2);--surface3:var(--desk);
  --r-sm:8px;--r:12px;--r-lg:16px;--r-xl:20px;
  --shadow:0 14px 34px rgba(0,0,0,.45);
  --font:'Alexandria',system-ui,-apple-system,'Segoe UI',Tahoma,sans-serif;
  --display:var(--font);
  --mono:'JetBrains Mono',ui-monospace,Consolas,'Alexandria',monospace;
  --hdr:64px;--wrap:1200px;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--hdr) + 16px);background:var(--bg)}
body{font-family:var(--font);background:var(--bg);color:var(--txt);line-height:1.7;font-size:16px;overflow-x:hidden;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
html[lang=ar] body{line-height:1.85}
html[lang=ru] body{--font:system-ui,-apple-system,'Segoe UI',Roboto,'Alexandria',sans-serif}
img,svg{max-width:100%;display:block}
img{height:auto}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
::selection{background:color-mix(in srgb,var(--cloud) 55%,transparent);color:#fff}
:focus-visible{outline:3px solid var(--brand2);outline-offset:3px;border-radius:6px}
.num,.mono{font-family:var(--mono);direction:ltr;unicode-bidi:isolate;font-feature-settings:"tnum"}
.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.sr:focus{position:fixed!important;top:8px;inset-inline-start:8px;width:auto;height:auto;clip:auto;z-index:100;padding:10px 16px;border-radius:10px;background:var(--cta);color:#fff;font-weight:700}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 24px;position:relative}
@media(max-width:640px){.wrap{padding:0 16px}}

/* background: the café floor — a faint tile grid near the top, then plain ink */
.ambient{position:fixed;inset:0;z-index:-1;pointer-events:none;
  background:linear-gradient(var(--tile) 1px,transparent 1px) 0 0/48px 48px,linear-gradient(90deg,var(--tile) 1px,transparent 1px) 0 0/48px 48px;
  mask-image:linear-gradient(#000,transparent 70%);-webkit-mask-image:linear-gradient(#000,transparent 70%)}
.floorbg{background:
  linear-gradient(var(--tile) 1px,transparent 1px) 0 0/48px 48px,
  linear-gradient(90deg,var(--tile) 1px,transparent 1px) 0 0/48px 48px,
  radial-gradient(ellipse 70% 60% at 50% 30%,#141A23,transparent 75%)}

/* ---------- buttons ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:46px;padding:0 20px;border-radius:12px;font-weight:700;font-size:15px;line-height:1.2;white-space:nowrap;border:1px solid var(--line2);background:var(--desk);color:var(--txt);transition:background .15s,border-color .15s,transform .15s}
.btn:hover{border-color:#3A4556;background:#1F2631}
.btn:active{transform:translateY(1px)}
.btn svg{width:18px;height:18px;flex-shrink:0}
.btn-pri{background:var(--cta);color:#fff;border-color:transparent;box-shadow:0 0 0 1px var(--cta-ring) inset}
.btn-pri:hover{background:#1774C1;border-color:transparent}
.btn-wa{background:var(--wa);color:#05240f;border-color:transparent}
.btn-wa:hover{background:#3be07f;border-color:transparent}
.btn-lg{min-height:54px;padding:0 26px;font-size:16px;border-radius:14px}
.btn-sm{min-height:38px;padding:0 14px;font-size:13.5px;border-radius:10px}
.btn-block{width:100%}

/* ---------- header (same top bar idea as the panel) ---------- */
.hdr{position:sticky;top:0;z-index:60;height:var(--hdr);background:var(--bg);border-bottom:1px solid transparent;transition:border-color .2s}
.hdr.sc{border-bottom-color:var(--line)}
.hdr .wrap{display:flex;align-items:center;gap:18px;height:100%;max-width:1280px}
.brand{display:flex;align-items:center;gap:11px;flex-shrink:0;direction:ltr}
.brand .mk{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;overflow:hidden;flex:none}
.brand .mk img,.brand img.mk{width:38px;height:38px;object-fit:contain}
.brand .bt{display:flex;flex-direction:column;line-height:1.1}
.brand .bt b{font-size:16.5px;font-weight:800;letter-spacing:-.01em}
.brand .bt small{font:600 9.5px var(--mono);color:var(--dim);letter-spacing:.24em;margin-top:3px}
.hnav{display:flex;align-items:center;gap:2px;margin-inline-start:14px}
.hnav a{padding:8px 12px;border-radius:9px;font-size:14px;font-weight:500;color:var(--txt2);transition:color .15s,background .15s;position:relative}
.hnav a:hover{color:var(--txt);background:rgba(255,255,255,.04)}
.hnav a[aria-current=page]{color:var(--txt);background:rgba(26,123,203,.16)}
.hact{display:flex;align-items:center;gap:8px;margin-inline-start:auto}
.langsel{appearance:none;-webkit-appearance:none;height:38px;padding:0 30px 0 12px;border-radius:10px;border:1px solid var(--line2);background:var(--panel) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23A9B3C1' stroke-width='1.6' fill='none'/%3E%3C/svg%3E") no-repeat right 11px center;color:var(--txt);font:500 13px var(--font);cursor:pointer}
html[dir=rtl] .langsel{padding:0 12px 0 30px;background-position:left 11px center}
.burger{display:none;width:42px;height:42px;border-radius:11px;border:1px solid var(--line2);background:var(--panel);place-items:center}
.burger svg{width:20px;height:20px}
.mnav{position:fixed;inset:var(--hdr) 0 auto 0;z-index:59;background:var(--bg2);box-shadow:0 30px 60px rgba(0,0,0,.7);border-bottom:1px solid var(--line);padding:10px 16px 20px;display:none;flex-direction:column;gap:2px;max-height:calc(100vh - var(--hdr));overflow:auto}
.mnav.open{display:flex}
.mnav a{padding:14px 12px;border-radius:10px;font-weight:500;font-size:16px;border-bottom:1px solid var(--line)}
.mnav a:last-child{border:0}
.mnav .btn{margin-top:12px;font-weight:700}
@media(max-width:1100px){.hnav{display:none}.burger{display:grid}}
@media(max-width:600px){.hact .btn-login,.hact .btn-start{display:none}.brand .bt small{display:none}.hdr .wrap{gap:10px}.langsel{max-width:112px}}

/* ---------- sections / type ---------- */
.sec{padding:96px 0;position:relative}
@media(max-width:760px){.sec{padding:64px 0}}
.sh{max-width:780px;margin-bottom:44px}
.sh.c{text-align:center;margin-inline:auto}
/* section label: the panel's "blue bar + title" heading, set small */
.kick{display:inline-flex;align-items:center;gap:10px;font:600 12.5px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--brand);margin-bottom:16px}
.kick::before{content:"";width:3px;height:16px;border-radius:2px;background:var(--cloud)}
html[lang=ar] .kick{font-family:var(--font);letter-spacing:0;font-size:14px;text-transform:none}
h1,h2,h3,h4{font-family:var(--display);line-height:1.18;letter-spacing:-.02em;font-weight:700}
html[lang=ar] :is(h1,h2,h3,h4){letter-spacing:0;line-height:1.4}
.h2{font-size:clamp(27px,3.4vw,40px)}
h1,h2,h3{text-wrap:balance}
.lead{font-size:clamp(16px,1.5vw,18px);color:var(--txt2);margin-top:14px;max-width:640px}
.sh.c .lead{margin-inline:auto}
.grad{color:var(--brand)}

/* ---------- desk panels ---------- */
.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--r-lg)}
.desk{background:var(--desk);border:1px solid var(--desk-edge);border-radius:var(--r-lg)}
.chip{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:999px;font-size:13px;font-weight:500;background:var(--panel);border:1px solid var(--line2);color:var(--txt2)}
.chip .dot{width:7px;height:7px;border-radius:50%;background:var(--ok);box-shadow:0 0 0 3px color-mix(in srgb,var(--ok) 22%,transparent)}
.pill{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;padding:2px 9px;border-radius:999px;font-weight:600;white-space:nowrap;line-height:1.6}
.pill.ok{background:color-mix(in srgb,var(--ok) 13%,transparent);color:var(--ok)}
.pill.warn{background:color-mix(in srgb,var(--warn) 13%,transparent);color:var(--warn)}
.pill.bad{background:color-mix(in srgb,var(--bad) 13%,transparent);color:var(--bad)}
.pill.brand{background:rgba(26,123,203,.18);color:var(--brand)}
.pill.mut{background:rgba(255,255,255,.06);color:var(--txt2)}

/* ---------- reveal ---------- */
html.js .rv{opacity:0;transform:translateY(16px);transition:opacity .6s cubic-bezier(.16,1,.3,1),transform .6s cubic-bezier(.16,1,.3,1)}
html.js .rv.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  html.js .rv{opacity:1;transform:none;transition:none}
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
}

/* ---------- footer ---------- */
.ftr{border-top:1px solid var(--line);padding:56px 0 28px;margin-top:40px;background:var(--bg2)}
.ftr .cols{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:40px}
.ftr .about p{color:var(--txt2);font-size:14px;margin-top:16px;max-width:340px}
.ftr h4{font:600 12px var(--mono);color:var(--dim);text-transform:uppercase;letter-spacing:.14em;margin-bottom:14px}
html[lang=ar] .ftr h4{font-family:var(--font);letter-spacing:0;font-size:14px;text-transform:none}
.ftr ul{list-style:none;display:grid;gap:10px}
.ftr ul a{color:var(--txt2);font-size:14.5px;transition:color .15s}
.ftr ul a:hover{color:var(--brand)}
.ftr .bot{display:flex;flex-wrap:wrap;gap:12px 24px;justify-content:space-between;align-items:center;margin-top:44px;padding-top:22px;border-top:1px solid var(--line);color:var(--dim);font-size:13px}
.ftr .bot .legal{display:flex;flex-wrap:wrap;gap:6px 18px}
.ftr .bot .legal a{color:var(--txt2);text-decoration:underline;text-decoration-color:var(--line2);text-underline-offset:4px}
.ftr .bot .legal a:hover{color:var(--brand)}
.socials{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}
.socials a{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;border:1px solid var(--line2);background:var(--panel);transition:border-color .15s}
.socials a svg{width:17px;height:17px;fill:var(--txt2)}
.socials a:hover{border-color:var(--brand)}
.socials a:hover svg{fill:var(--brand)}
@media(max-width:860px){.ftr .cols{grid-template-columns:1fr 1fr}.ftr .about{grid-column:1/-1}}

/* ---------- sticky mobile CTA ---------- */
.mcta{position:fixed;inset-inline:0;bottom:0;z-index:55;display:none;gap:10px;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:var(--bg2);border-top:1px solid var(--line);transform:translateY(110%);transition:transform .25s}
.mcta .btn{flex:1;min-height:48px}
.mcta.on{transform:none}
@media(max-width:760px){.mcta{display:flex}body.has-mcta{padding-bottom:76px}}

/* =========================================================
   DOCS (guide / manual / help / privacy / terms)
   ========================================================= */
.readbar{position:fixed;top:0;inset-inline-start:0;height:3px;width:0;background:var(--cloud);z-index:70;transition:width .1s linear}
.dhero{padding:64px 0 36px;border-bottom:1px solid var(--line);position:relative}
.dhero::before{content:"";position:absolute;inset-inline-start:0;top:64px;width:3px;height:44px;border-radius:2px;background:var(--cloud)}
.dhero>*{padding-inline-start:20px}
.dhero .crumb{font-size:13px;color:var(--dim);margin-bottom:16px;display:flex;gap:8px;align-items:center}
.dhero .crumb a{color:var(--txt2)}.dhero .crumb a:hover{color:var(--brand)}
.dhero h1{font-size:clamp(30px,4.6vw,52px);max-width:840px}
.dhero p{color:var(--txt2);font-size:clamp(16px,1.5vw,18.5px);max-width:700px;margin-top:14px}
.dhero .meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
.dgrid{display:grid;grid-template-columns:250px minmax(0,1fr);gap:56px;padding:44px 0 40px;align-items:start}
.toc{position:sticky;top:calc(var(--hdr) + 24px);max-height:calc(100vh - var(--hdr) - 48px);overflow:auto;padding-inline-end:6px;scrollbar-width:thin}
.toc .tt{font:600 11.5px var(--mono);color:var(--dim);text-transform:uppercase;letter-spacing:.14em;margin-bottom:12px}
html[lang=ar] .toc .tt{font-family:var(--font);letter-spacing:0;font-size:13px;text-transform:none}
.toc ol{list-style:none;display:grid;gap:2px;border-inline-start:1px solid var(--line)}
.toc ol a{display:flex;gap:10px;align-items:baseline;padding:7px 14px;margin-inline-start:-1px;border-inline-start:3px solid transparent;font-size:14px;color:var(--txt2);font-weight:500;line-height:1.5;transition:color .15s,background .15s}
.toc ol a .n{font-family:var(--mono);font-size:11px;color:var(--dim);min-width:16px}
.toc ol a:hover{color:var(--txt)}
.toc ol a.on{color:var(--txt);border-inline-start-color:var(--cloud);background:rgba(26,123,203,.10)}
.toc ol a.sub{padding-inline-start:30px;font-size:13px}
.toc .help{margin-top:24px;padding:16px;border-radius:var(--r);background:var(--desk);border:1px solid var(--desk-edge);font-size:13px;color:var(--txt2)}
.toc .help b{display:block;color:var(--txt);font-size:14px;margin-bottom:4px}
.toc .help .btn{margin-top:12px;width:100%}
.tocm{display:none}
@media(max-width:980px){
  .dgrid{grid-template-columns:1fr;gap:24px;padding-top:24px}
  .toc{display:none}
  .tocm{display:block;position:sticky;top:var(--hdr);z-index:40;margin:0 -16px;padding:10px 16px;background:var(--bg);border-bottom:1px solid var(--line)}
  .tocm select{width:100%;height:44px;border-radius:11px;border:1px solid var(--line2);background:var(--panel);color:var(--txt);font:500 14px var(--font);padding:0 12px}
}
.art{min-width:0}
.art section,.art .sect{scroll-margin-top:calc(var(--hdr) + 70px)}
.art p{color:color-mix(in srgb,var(--txt) 90%,var(--txt2))}
.art strong,.art b{color:var(--txt)}
.art a:not(.btn){color:var(--brand);text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--brand) 40%,transparent);text-underline-offset:3px}
.art code{font-family:var(--mono);font-size:.88em;padding:2px 6px;border-radius:6px;background:var(--sunken);border:1px solid var(--line);direction:ltr;unicode-bidi:isolate}

/* step blocks (guide) */
.stp{position:relative;padding-inline-start:68px;padding-bottom:48px}
.stp::before{content:"";position:absolute;inset-inline-start:21px;top:52px;bottom:0;width:2px;background:repeating-linear-gradient(var(--line2) 0 6px,transparent 6px 12px)}
.stp:last-of-type::before{display:none}
.stp .sn{position:absolute;inset-inline-start:0;top:0;width:44px;height:44px;border-radius:12px;display:grid;place-items:center;font:700 17px var(--mono);background:var(--desk);border:1px solid var(--desk-edge);color:var(--brand)}
.stp.done .sn{background:var(--cta);color:#fff;border-color:transparent}
.stp h2{font-size:clamp(22px,2.6vw,28px)}
.stp h2 .sub{display:block;font-family:var(--font);font-size:15px;font-weight:400;color:var(--txt2);margin-top:6px;letter-spacing:0}
.stp .body{margin-top:20px}
.stp .body>p{margin-bottom:14px}
.stp ol,.stp ul,.blk ul,.blk ol{padding-inline-start:22px;margin:12px 0 16px;display:grid;gap:10px}
.stp li,.blk li{padding-inline-start:4px}
.stp li::marker,.blk li::marker{color:var(--brand);font-weight:700}
.stp .hd{font-size:16px;font-weight:700;color:var(--txt);margin:26px 0 8px;display:flex;gap:10px;align-items:center}
.stp .hd::before{content:"";width:3px;height:14px;border-radius:2px;background:var(--cloud)}
@media(max-width:640px){.stp{padding-inline-start:0}.stp::before{display:none}.stp .sn{position:static;margin-bottom:14px}}

/* manual blocks */
.chap{padding-top:16px;margin-bottom:64px}
.chap-h{display:flex;align-items:center;gap:16px;padding-bottom:20px;margin-bottom:28px;border-bottom:1px solid var(--line)}
.chap-h .ci{width:52px;height:52px;border-radius:14px;display:grid;place-items:center;flex-shrink:0;background:var(--desk);border:1px solid var(--desk-edge);color:var(--brand)}
.chap-h .ci svg{width:24px;height:24px}
.chap-h h2{font-size:clamp(24px,3vw,32px)}
.chap-h .s{display:block;font-size:14.5px;color:var(--txt2);font-weight:400;font-family:var(--font);margin-top:4px;letter-spacing:0}
.chap-h .up{margin-inline-start:auto;font-size:12.5px;color:var(--txt2);padding:6px 12px;border-radius:9px;border:1px solid var(--line2);white-space:nowrap}
.chap-h .up:hover{color:var(--brand);border-color:var(--brand)}
.blk{margin-bottom:28px;scroll-margin-top:calc(var(--hdr) + 70px)}
.blk-h{margin-bottom:14px}
.blk-h h3{font-size:21px}
.blk-h .s{display:block;font-size:14px;color:var(--txt2);margin-top:4px;font-weight:400}
.blk-b>p{margin-bottom:14px}
.blk-b ul{list-style:none;padding:0}
.blk-b ul li{position:relative;padding-inline-start:22px}
.blk-b ul li::before{content:"";position:absolute;inset-inline-start:4px;top:.72em;width:7px;height:7px;border-radius:2px;background:var(--cloud)}
.subt{border:1px solid var(--desk-edge);border-radius:var(--r);padding:18px 20px;margin:14px 0;background:var(--desk)}
.subt>b{display:block;font-size:15.5px;color:var(--brand);margin-bottom:6px}
.subt p{margin:0}
.hh{font-size:16px;font-weight:700;color:var(--txt);margin:22px 0 6px}

/* notes */
.note{display:flex;gap:14px;align-items:flex-start;padding:16px 18px;border-radius:var(--r);margin:18px 0;font-size:15px;border:1px solid;border-inline-start-width:3px;background:var(--panel)}
.note .ni{font-size:18px;line-height:1.5;flex-shrink:0}
.note.tip{border-color:color-mix(in srgb,var(--brand) 22%,transparent);border-inline-start-color:var(--brand)}
.note.warn{border-color:color-mix(in srgb,var(--warn) 25%,transparent);border-inline-start-color:var(--warn)}
.note.ok{border-color:color-mix(in srgb,var(--ok) 25%,transparent);border-inline-start-color:var(--ok)}

/* code */
.code{position:relative;font:500 13.5px/1.7 var(--mono);direction:ltr;text-align:left;color:#cfe6ff;background:var(--sunken);border:1px solid var(--line2);border-radius:12px;padding:16px 84px 16px 18px;margin:14px 0;overflow-x:auto;white-space:pre-wrap;word-break:break-all}
.code::before{content:"$ ";color:var(--dim)}
.code b{color:var(--warn);font-weight:700}
.code .cp{position:absolute;top:10px;right:10px;height:32px;padding:0 12px;border-radius:8px;font:600 12px var(--font);background:var(--desk);border:1px solid var(--line2);color:var(--txt);cursor:pointer}
.code .cp:hover{border-color:var(--brand);color:var(--brand)}

/* tables */
.tblw{overflow-x:auto;margin:16px 0;border:1px solid var(--line);border-radius:var(--r)}
.tbl{width:100%;border-collapse:collapse;font-size:14.5px}
.tbl th,.tbl td{padding:13px 16px;text-align:start;border-bottom:1px solid var(--line)}
.tbl tr:last-child td{border-bottom:0}
.tbl th{font:600 11.5px var(--mono);color:var(--dim);text-transform:uppercase;letter-spacing:.1em;background:var(--panel)}
html[lang=ar] .tbl th{font-family:var(--font);letter-spacing:0;font-size:13px;text-transform:none}
.tbl td:first-child{font-weight:600}

/* mock UI frames (styled HTML screenshots in the docs) */
.ui{background:var(--bg2);border:1px solid var(--line2);border-radius:16px;overflow:hidden;margin:20px 0 6px;box-shadow:var(--shadow)}
.ui-bar{display:flex;align-items:center;gap:7px;padding:11px 14px;background:var(--panel);border-bottom:1px solid var(--line)}
.ui-bar i{width:9px;height:9px;border-radius:50%;display:block;background:#2a3341!important}
.ui-bar .t{margin-inline-start:auto;font-family:var(--mono);font-size:11px;color:var(--dim)}
.ui-body{padding:16px}
.ui-tabs{display:flex;gap:4px;padding:0 12px;border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:none}
.ui-tabs span{padding:11px 12px;font-size:12.5px;color:var(--dim);white-space:nowrap;border-bottom:2px solid transparent;font-weight:600}
.ui-tabs span.on{color:var(--txt);border-bottom-color:var(--cloud)}
.ui-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:9px;font-size:12.5px;font-weight:700;background:var(--cta);color:#fff;white-space:nowrap}
.ui-btn.gh{background:transparent;border:1px solid var(--line2);color:var(--txt)}
.ui-btn.sm{padding:5px 11px;font-size:11.5px}
.ui-row{display:flex;align-items:center;gap:11px;padding:11px 12px;border-radius:11px;background:var(--desk);border:1px solid var(--desk-edge);margin-bottom:8px;flex-wrap:wrap}
.ui-row .ic{width:32px;height:32px;border-radius:9px;background:var(--sunken);display:grid;place-items:center;font-size:14px;flex-shrink:0}
.ui-row .nm{flex:1;min-width:120px}
.ui-row .nm b{font-size:13px;display:block}
.ui-row .nm s{font-size:10.5px;color:var(--dim);font-family:var(--mono);text-decoration:none;display:block}
.big{font-family:var(--mono);font-size:14px;color:var(--brand);font-weight:700;min-width:50px;text-align:end}
.gauge{height:6px;border-radius:4px;background:rgba(255,255,255,.07);overflow:hidden;margin-top:5px}
.gauge i{display:block;height:100%;border-radius:4px;background:var(--l1)}
.cap{font-size:12.5px;color:var(--dim);text-align:center;margin:8px 0 20px}
.arrow{display:inline-block;animation:pt 1.6s ease-in-out infinite}
@keyframes pt{0%,100%{transform:translateX(0)}50%{transform:translateX(-4px)}}
.ui-grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}
.ui-card{padding:14px 10px;border-radius:12px;background:var(--desk);border:1px solid var(--desk-edge);text-align:center}
.ui-card.on{border-color:color-mix(in srgb,var(--brand) 60%,transparent);background:color-mix(in srgb,var(--cloud) 10%,var(--desk))}
.ui-card .e{font-size:22px;margin-bottom:5px}
.ui-card b{font-size:12.5px;display:block;margin-bottom:3px}
.ui-card span{font-size:10.5px;color:var(--dim);line-height:1.5;display:block}
.ui-msg{margin-top:11px;padding:10px 12px;border-radius:10px;font-size:12px}
.ui-msg.ok{background:color-mix(in srgb,var(--ok) 8%,transparent);border:1px solid color-mix(in srgb,var(--ok) 25%,transparent);color:var(--ok);text-align:center}
.ui-msg.warn{background:color-mix(in srgb,var(--warn) 8%,transparent);border:1px solid color-mix(in srgb,var(--warn) 25%,transparent);color:var(--warn)}
.ui-stat{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.ui-stat>div{padding:13px;border-radius:11px;background:var(--desk);border:1px solid var(--desk-edge);text-align:center}
.ui-stat .l{font-size:11px;color:var(--dim);margin-bottom:3px}
.ui-stat .v{font-family:var(--mono);font-size:21px;font-weight:700}
@media(max-width:560px){.ui-grid3{grid-template-columns:1fr}}

/* end-of-doc CTA */
.endcta{margin:24px 0 16px;padding:40px 32px;border-radius:var(--r-xl);text-align:center;background:var(--desk);border:1px solid var(--desk-edge);position:relative;overflow:hidden}
.endcta::before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,var(--l1),var(--l2))}
.endcta h2{font-size:clamp(22px,3vw,30px);margin-bottom:8px}
.endcta p{color:var(--txt2);margin-bottom:22px}
.endcta .row{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.hide{display:none!important}
@media print{.hdr,.mnav,.mcta,.toc,.tocm,.ftr,.endcta,.readbar,.ambient{display:none!important}body{background:#fff;color:#000}.dgrid{display:block}}
