/* =====================================================================================================
   Zihnelo "Wow" design system (2026-10-09) — shared by EVERY page (home, chat, content pages, legal, privacy, 404).
   Dark cinematic base, vivid gradients from the Zihnelo mark (mint #22f2c4 → pink #ff4fa3 → coral #ff8a4c).
   Self-hosted fonts only (Inter 4.1 variable "Zihnelo Sans", Noto Sans Arabic; Chinese = system CJK). No external hosts.
   Gradient text contract: ONLY inline elements (.g / .gt) get background-clip:text. Headings themselves never get a background.
   Motion: html.mo-full (default) / mo-calm (OS reduce-motion: fades only) / mo-off (footer toggle: static) — see motion.js.
   ===================================================================================================== */
@font-face{font-family:"Zihnelo Sans";font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/fonts/inter-core-v4.1.woff2) format("woff2");
  unicode-range:U+0000-00FF,U+0130-0131,U+011E-011F,U+015E-015F,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0300-0308,U+0327,U+0329,U+2000-206F,U+20AC,U+20BA,U+2122,U+2190-2199,U+21A9,U+2212,U+2215,U+2713,U+2715,U+FEFF,U+FFFD}
@font-face{font-family:"Zihnelo Sans";font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/fonts/inter-ext-v4.1.woff2) format("woff2");
  unicode-range:U+0100-010F,U+0110-011D,U+0120-012F,U+0132-0151,U+0154-015D,U+0160-024F,U+0259,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20B9,U+20BB-20C0,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Zihnelo Sans";font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/fonts/inter-cyr-v4.1.woff2) format("woff2");
  unicode-range:U+0400-052F,U+1C80-1C88,U+2116,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
@font-face{font-family:"Zihnelo Arabic";font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/fonts/noto-sans-arabic-v2.woff2) format("woff2");
  unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC}

:root{
  --bg:#05040a;--bg2:#0a0812;--ink:#f6f3fb;--ink2:#c9c3d6;--mute:#8d869c;--faint:#5d576b;
  --line:rgba(255,255,255,.08);--line2:rgba(255,255,255,.14);--glass:rgba(17,13,26,.62);--card:#0c0a14;--card2:#110e1b;
  --mint:#22f2c4;--pink:#ff4fa3;--coral:#ff8a4c;--violet:#9b7bff;--amber:#ffc35a;--red:#ff5c6c;--green:#3fe0a1;
  --grad:linear-gradient(100deg,var(--mint) 0%,var(--pink) 52%,var(--coral) 100%);
  --grad2:linear-gradient(120deg,#ff7ac0,#ff4fa3 40%,#ff8a4c);
  --grad-soft:linear-gradient(180deg,#fff 30%,#ffc8e4 100%);
  --f:"Zihnelo Sans",Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --mono:ui-monospace,"SF Mono",SFMono-Regular,"Cascadia Mono","JetBrains Mono",Menlo,Consolas,monospace;
  --r:22px;--r2:30px;--r3:14px;--pad:clamp(20px,4vw,40px);--max:1200px;
  --e:cubic-bezier(.2,.8,.2,1);--e2:cubic-bezier(.7,0,.2,1);
  --sh:0 30px 80px -30px rgba(0,0,0,.8),0 0 0 1px var(--line);
  --lh:1.6;--ls:-.011em;--lsh:-.035em;
  color-scheme:dark;
}
:lang(ar){--f:"Zihnelo Arabic","Zihnelo Sans","Noto Sans Arabic","Segoe UI",Tahoma,system-ui,sans-serif;--lh:1.85;--ls:0;--lsh:0}
:lang(zh-Hans),:lang(zh){--f:"Zihnelo Sans","PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans CJK SC","Noto Sans SC",system-ui,sans-serif;--lh:1.8;--ls:.01em;--lsh:0}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:90px;background:var(--bg)}
html.mo-off,html.mo-calm{scroll-behavior:auto}
body{margin:0;min-height:100vh;background:var(--bg);color:var(--ink);font-family:var(--f);font-size:1.0625rem;line-height:var(--lh);letter-spacing:var(--ls);
  font-optical-sizing:auto;font-kerning:normal;font-feature-settings:"kern","liga","calt","cv11";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;
  text-rendering:optimizeLegibility;overflow-x:hidden}
@media (max-width:760px){body{font-size:1rem}}
img,svg,video,canvas{display:block;max-width:100%}
img{height:auto}
a{color:inherit;text-decoration-color:rgba(255,79,163,.5);text-underline-offset:.18em}
a:hover{text-decoration-color:var(--pink)}
button,input,select,textarea{font:inherit;letter-spacing:inherit;color:inherit}
button{cursor:pointer}
code,kbd,pre,samp,.mono{font-family:var(--mono);letter-spacing:0;font-feature-settings:normal}
p,li,dd,blockquote,figcaption{text-wrap:pretty}
h1,h2,h3,h4{margin:0;font-weight:680;letter-spacing:var(--lsh);line-height:1.06;text-wrap:balance;color:#fff}
h3{font-weight:620;letter-spacing:-.018em;line-height:1.22}
:lang(ar) h1,:lang(ar) h2,:lang(ar) h3,:lang(zh-Hans) h1,:lang(zh-Hans) h2,:lang(zh-Hans) h3{line-height:1.3;letter-spacing:0}
::selection{background:rgba(255,79,163,.35);color:#fff}
:focus-visible{outline:2px solid var(--mint);outline-offset:3px;border-radius:8px}
.sr,.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.skip{position:fixed;inset-inline-start:12px;top:-60px;z-index:200;padding:10px 16px;border-radius:12px;background:#fff;color:#000;font-weight:600;text-decoration:none;transition:top .2s}
.skip:focus{top:12px}
[hidden]{display:none!important}

/* ---------- gradient text (inline only) ---------- */
.g,.gt{background-image:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;
  -webkit-box-decoration-break:clone;box-decoration-break:clone;padding-block:.06em .12em;margin-block:-.06em -.12em;padding-inline:.02em;display:inline}
.g-pink{background-image:var(--grad2)}
.gt-soft{background-image:var(--grad-soft)}
html.mo-full .g.flow{background-size:220% 100%;animation:zw-flow 7s ease-in-out infinite alternate}
@keyframes zw-flow{to{background-position:100% 0}}
@supports not ((-webkit-background-clip:text) or (background-clip:text)){.g,.gt{color:#ff8fc7;-webkit-text-fill-color:currentColor;background:none}}
@media (forced-colors:active){.g,.gt{color:CanvasText;-webkit-text-fill-color:CanvasText;background:none}}

/* ---------- backdrop: aurora + grid + grain (cheap: 2 fixed layers) ---------- */
body::before{content:"";position:fixed;inset:-20vh -20vw auto;height:120vh;z-index:-2;pointer-events:none;
  background:radial-gradient(40% 50% at 18% 12%,rgba(34,242,196,.10),transparent 70%),radial-gradient(45% 55% at 82% 8%,rgba(255,79,163,.16),transparent 70%),radial-gradient(40% 40% at 60% 60%,rgba(255,138,76,.06),transparent 70%)}
body::after{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.5;
  background-image:linear-gradient(rgba(255,255,255,.028) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.028) 1px,transparent 1px);background-size:64px 64px;
  -webkit-mask-image:radial-gradient(ellipse 80% 60% at 50% 0%,#000 30%,transparent 75%);mask-image:radial-gradient(ellipse 80% 60% at 50% 0%,#000 30%,transparent 75%)}

/* ---------- layout ---------- */
.wrap{width:min(100% - 2*var(--pad),var(--max));margin-inline:auto}
.wrap-n{width:min(100% - 2*var(--pad),880px);margin-inline:auto}
.sec{position:relative;padding-block:clamp(84px,12vw,160px)}
.kick{display:inline-flex;align-items:center;gap:10px;font:600 .74rem/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink2);margin:0 0 22px}
.kick::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--mint);box-shadow:0 0 0 4px rgba(34,242,196,.14),0 0 16px var(--mint)}
.kick.pink::before{background:var(--pink);box-shadow:0 0 0 4px rgba(255,79,163,.16),0 0 16px var(--pink)}
:lang(ar) .kick,:lang(zh-Hans) .kick{letter-spacing:.02em;font-family:var(--f)}
.h-xl{font-size:clamp(2.6rem,1.2rem + 6.2vw,6.2rem);letter-spacing:-.045em;line-height:.98;font-weight:700}
.h-l{font-size:clamp(2.1rem,1.2rem + 3.6vw,4.4rem);letter-spacing:-.04em;line-height:1.02}
.h-m{font-size:clamp(1.6rem,1.15rem + 1.8vw,2.6rem);letter-spacing:-.03em;line-height:1.08}
:lang(ar) .h-xl,:lang(ar) .h-l,:lang(ar) .h-m,:lang(zh-Hans) .h-xl,:lang(zh-Hans) .h-l,:lang(zh-Hans) .h-m{letter-spacing:0;line-height:1.25}
.lead{font-size:clamp(1.08rem,1rem + .45vw,1.32rem);line-height:1.55;color:var(--ink2);max-width:62ch;margin:22px 0 0;letter-spacing:-.014em}
.muted{color:var(--mute)}
.center{text-align:center}.center .lead{margin-inline:auto}
.sec-head{max-width:860px;margin-bottom:clamp(40px,6vw,72px)}
.sec-head.center{margin-inline:auto}

/* ---------- buttons ---------- */
.btn{--bg:#fff;--fg:#07050d;position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:50px;padding:0 24px;border-radius:999px;
  border:0;background:var(--bg);color:var(--fg);font-weight:620;font-size:1rem;letter-spacing:-.01em;text-decoration:none;white-space:nowrap;isolation:isolate;
  transition:transform .35s var(--e),box-shadow .35s var(--e),background .3s,color .3s;will-change:transform}
.btn svg{width:18px;height:18px;flex:none}
.btn::before{content:"";position:absolute;inset:-2px;border-radius:inherit;z-index:-1;background:var(--grad);opacity:0;filter:blur(14px);transition:opacity .4s}
.btn:hover::before{opacity:.75}
.btn:hover{box-shadow:0 0 0 1px rgba(255,255,255,.6)}
.btn:active{transform:scale(.97)}
.btn-glass{--bg:rgba(255,255,255,.06);--fg:#fff;box-shadow:inset 0 0 0 1px var(--line2);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}
.btn-glass::before{display:none}
.btn-glass:hover{--bg:rgba(255,255,255,.1);box-shadow:inset 0 0 0 1px rgba(255,255,255,.3)}
.btn-grad{--bg:var(--grad);--fg:#140812;background:var(--grad)}
.btn-sm{min-height:40px;padding:0 16px;font-size:.92rem}
.btn[aria-disabled="true"],.btn:disabled{opacity:.55;cursor:not-allowed}
.link-arrow{display:inline-flex;align-items:center;gap:8px;font-weight:600;color:#fff;text-decoration:none}
.link-arrow svg{width:16px;height:16px;transition:transform .3s var(--e)}
.link-arrow:hover svg{transform:translateX(4px)}
[dir=rtl] .link-arrow svg,[dir=rtl] .btn .arr{transform:scaleX(-1)}
[dir=rtl] .link-arrow:hover svg{transform:scaleX(-1) translateX(4px)}

/* ---------- chips / pills ---------- */
.pill{display:inline-flex;align-items:center;gap:8px;padding:7px 13px;border-radius:999px;font-size:.82rem;font-weight:560;color:var(--ink2);background:rgba(255,255,255,.04);box-shadow:inset 0 0 0 1px var(--line);white-space:nowrap}
.pill .dot{width:7px;height:7px;border-radius:50%;background:var(--mint);box-shadow:0 0 10px var(--mint)}
.pill.amber{color:#ffe1a6;background:rgba(255,195,90,.08);box-shadow:inset 0 0 0 1px rgba(255,195,90,.3)}
.pill.amber .dot{background:var(--amber);box-shadow:0 0 10px var(--amber)}
html.mo-full .pill .dot.pulse,html.mo-calm .pill .dot.pulse{animation:zw-pulse 2s ease-in-out infinite}
@keyframes zw-pulse{50%{opacity:.35;transform:scale(.8)}}

/* ---------- cards ---------- */
.card{position:relative;border-radius:var(--r);background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.012)) ,var(--card);
  box-shadow:inset 0 0 0 1px var(--line),0 1px 0 rgba(255,255,255,.04) inset;overflow:hidden;isolation:isolate}
.card::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:-1;opacity:0;transition:opacity .4s;
  background:radial-gradient(420px circle at var(--mx,50%) var(--my,0%),rgba(255,79,163,.13),transparent 60%)}
.card:hover::after{opacity:1}
.card.glow{box-shadow:inset 0 0 0 1px var(--line),0 40px 120px -50px rgba(255,79,163,.45)}
.ring{position:relative}
.ring::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;pointer-events:none;
  background:linear-gradient(140deg,rgba(34,242,196,.55),rgba(255,79,163,.4) 45%,rgba(255,138,76,.0) 70%,rgba(255,138,76,.5));
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0)}

/* ---------- reveal on scroll ---------- */
html.js .rv{opacity:0;transform:translateY(28px);transition:opacity .9s var(--e),transform 1s var(--e);transition-delay:var(--d,0s)}
html.js .rv.in{opacity:1;transform:none}
html.mo-calm .rv{transform:none!important}
html.mo-off .rv,html.mo-safe .rv{opacity:1!important;transform:none!important;transition:none!important}

/* ---------- top navigation (all pages) ---------- */
.znav{position:fixed;top:14px;inset-inline:0;z-index:100;display:flex;justify-content:center;pointer-events:none;padding-inline:12px}
.znav-in{pointer-events:auto;display:flex;align-items:center;gap:6px;width:min(100%,1120px);padding:7px 7px 7px 16px;border-radius:999px;
  background:rgba(10,8,16,.55);-webkit-backdrop-filter:blur(20px) saturate(160%);backdrop-filter:blur(20px) saturate(160%);
  box-shadow:inset 0 0 0 1px var(--line),0 20px 50px -20px rgba(0,0,0,.7);transition:background .4s,box-shadow .4s,width .5s var(--e)}
[dir=rtl] .znav-in{padding:7px 16px 7px 7px}
.znav.scrolled .znav-in{background:rgba(8,6,13,.82);box-shadow:inset 0 0 0 1px var(--line2),0 20px 50px -20px rgba(0,0,0,.9)}
.zbrand{display:flex;align-items:center;gap:10px;text-decoration:none;color:#fff;font-weight:700;font-size:1.06rem;letter-spacing:-.02em;margin-inline-end:auto}
.zbrand img,.zbrand svg{width:28px;height:28px}
.zlinks{display:flex;align-items:center;gap:2px;margin:0;padding:0;list-style:none}
.zlinks a{display:block;padding:8px 13px;border-radius:999px;color:var(--ink2);text-decoration:none;font-size:.92rem;font-weight:520;transition:color .25s,background .25s}
.zlinks a:hover,.zlinks a[aria-current]{color:#fff;background:rgba(255,255,255,.07)}
.zlang{position:relative}
.zlang>summary,.zlang>button{list-style:none;display:flex;align-items:center;gap:6px;padding:8px 12px;border-radius:999px;color:var(--ink2);font-size:.85rem;font-weight:600;cursor:pointer;background:none;border:0}
.zlang>summary::-webkit-details-marker{display:none}
.zlang>summary:hover{color:#fff;background:rgba(255,255,255,.07)}
.zlang svg{width:17px;height:17px}
.zlang ul{position:absolute;top:calc(100% + 10px);inset-inline-end:0;min-width:170px;margin:0;padding:6px;list-style:none;border-radius:18px;background:rgba(14,11,22,.96);
  -webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:inset 0 0 0 1px var(--line2),0 30px 60px -20px #000}
.zlang a{display:block;padding:9px 12px;border-radius:12px;text-decoration:none;color:var(--ink2);font-size:.93rem}
.zlang a:hover,.zlang a[aria-current],.zlang a.cur{background:rgba(255,255,255,.07);color:#fff}
.znav .btn{min-height:40px;padding:0 16px;font-size:.92rem}
.zmenu{display:none;width:42px;height:42px;border-radius:50%;border:0;background:rgba(255,255,255,.06);align-items:center;justify-content:center}
.zmenu svg{width:20px;height:20px;stroke:#fff;fill:none;stroke-width:1.8;stroke-linecap:round}
@media (max-width:980px){
  .zlinks{display:none}
  .zmenu{display:inline-flex}
  .znav.open .zlinks{display:flex;position:absolute;top:calc(100% + 10px);inset-inline:12px;flex-direction:column;align-items:stretch;padding:10px;border-radius:24px;
    background:rgba(12,9,19,.97);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:inset 0 0 0 1px var(--line2),0 30px 60px -20px #000}
  .znav.open .zlinks a{padding:13px 14px;font-size:1.02rem}
}
@media (max-width:520px){.znav .btn .t{display:none}.znav .btn{width:42px;padding:0}.zbrand span{font-size:1rem}}

/* ---------- footer (all pages) ---------- */
.zfoot{position:relative;margin-top:clamp(60px,10vw,120px);border-top:1px solid var(--line);padding:clamp(56px,8vw,96px) 0 40px;overflow:hidden}
.zfoot::before{content:"";position:absolute;inset:auto 0 -40% 0;height:80%;background:radial-gradient(50% 60% at 50% 100%,rgba(255,79,163,.16),transparent 70%);pointer-events:none;z-index:-1}
.zf-top{display:grid;grid-template-columns:1.4fr repeat(4,1fr);gap:36px}
.zf-brand p{color:var(--mute);font-size:.95rem;max-width:34ch;margin:14px 0 18px}
.zf-col h3{font:600 .72rem/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--faint);margin:6px 0 16px}
:lang(ar) .zf-col h3,:lang(zh-Hans) .zf-col h3{font-family:var(--f);letter-spacing:0;font-size:.85rem}
.zf-col ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.zf-col a{color:var(--ink2);text-decoration:none;font-size:.95rem}
.zf-col a:hover{color:#fff}
.zf-col .soon{color:var(--faint);font-size:.95rem}
.zf-word{margin:clamp(40px,7vw,80px) 0 0;font-weight:760;font-size:clamp(4rem,17vw,15rem);line-height:.8;letter-spacing:-.06em;text-align:center;user-select:none;
  background:linear-gradient(180deg,rgba(255,255,255,.14),rgba(255,255,255,0) 85%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.zf-risk{margin:32px 0 0;padding:18px 20px;border-radius:18px;background:rgba(255,195,90,.04);box-shadow:inset 0 0 0 1px rgba(255,195,90,.16);color:#e8dcc0;font-size:.88rem;line-height:1.6}
.foot-bot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px;margin-top:26px;color:var(--faint);font-size:.85rem}
.foot-bot p{margin:0}
.foot-bot .langs{display:flex;flex-wrap:wrap;gap:4px}
.foot-bot .langs a{padding:5px 10px;border-radius:999px;color:var(--mute);text-decoration:none}
.foot-bot .langs a:hover,.foot-bot .langs a[aria-current]{color:#fff;background:rgba(255,255,255,.06)}
.age{display:inline-flex;align-items:center;gap:6px}
.age b{display:inline-grid;place-items:center;min-width:34px;height:22px;border-radius:6px;font:700 .72rem/1 var(--mono);color:#ffe1a6;box-shadow:inset 0 0 0 1px rgba(255,195,90,.4)}
@media (max-width:900px){.zf-top{grid-template-columns:1fr 1fr}.zf-brand{grid-column:1/-1}}
/* motion toggle (injected by motion.js into footer .foot-bot) */
.mo-tg-wrap{margin:0}
.mo-tg{display:inline-flex;align-items:center;gap:9px;padding:7px 12px;border-radius:999px;border:0;background:rgba(255,255,255,.05);color:var(--ink2);font-size:.85rem;box-shadow:inset 0 0 0 1px var(--line)}
.mo-tg:hover{color:#fff}
.mo-sw{position:relative;width:30px;height:17px;border-radius:99px;background:rgba(255,255,255,.14);transition:background .3s}
.mo-sw::after{content:"";position:absolute;top:2px;inset-inline-start:2px;width:13px;height:13px;border-radius:50%;background:#fff;transition:transform .3s var(--e)}
.mo-tg[aria-pressed=true] .mo-sw{background:var(--pink)}
.mo-tg[aria-pressed=true] .mo-sw::after{transform:translateX(13px)}
[dir=rtl] .mo-tg[aria-pressed=true] .mo-sw::after{transform:translateX(-13px)}

/* ---------- toast ---------- */
.ztoast{position:fixed;left:50%;bottom:28px;z-index:300;transform:translate(-50%,20px);opacity:0;padding:12px 18px;border-radius:999px;background:#fff;color:#07050d;font-weight:600;font-size:.92rem;
  box-shadow:0 20px 50px -10px rgba(0,0,0,.6);transition:opacity .3s,transform .4s var(--e);pointer-events:none}
.ztoast.on{opacity:1;transform:translate(-50%,0)}

/* ---------- page transitions (cross-document View Transitions; ignored where unsupported) ---------- */
@view-transition{navigation:auto}
::view-transition-old(root){animation:zw-vt-out .28s var(--e2) both}
::view-transition-new(root){animation:zw-vt-in .5s var(--e) both}
@keyframes zw-vt-out{to{opacity:0;transform:scale(.985);filter:blur(6px)}}
@keyframes zw-vt-in{from{opacity:0;transform:scale(1.01);filter:blur(8px)}}
html.mo-off::view-transition-old(root),html.mo-off::view-transition-new(root),html.mo-calm::view-transition-old(root),html.mo-calm::view-transition-new(root){animation-duration:.01s}
/* page enter handled by view transitions (no body fade: keeps LCP fast) */

/* ---------- copy field (contract address etc.) ---------- */
.copyf{display:flex;align-items:center;gap:8px;padding:8px 8px 8px 16px;border-radius:16px;background:rgba(0,0,0,.35);box-shadow:inset 0 0 0 1px var(--line2);max-width:100%}
[dir=rtl] .copyf{padding:8px 16px 8px 8px}
.copyf code{flex:1;min-width:0;overflow-wrap:anywhere;font-size:.86rem;color:#fff;line-height:1.45}
.copyf button{flex:none;display:inline-flex;align-items:center;gap:6px;padding:9px 13px;border-radius:11px;border:0;background:rgba(255,255,255,.08);color:#fff;font-size:.85rem;font-weight:600}
.copyf button:hover{background:rgba(255,255,255,.14)}
.copyf button.ok{background:rgba(63,224,161,.18);color:#bfffe6}
.copyf svg{width:16px;height:16px}

/* ---------- forced colours / print ---------- */
@media (forced-colors:active){.card,.btn,.pill{border:1px solid CanvasText}}
@media print{body::before,body::after,.znav,.zfoot .zf-word{display:none}body{background:#fff;color:#000}}
