/* =========================================================
   Strikeistan v3 "HOLO VAULT" — identity layer over the component system.
   Violet-black void · Fade spectrum light · foil cards · glass chrome.
   ========================================================= */
:root{
  --bg:#07060b; --bg-2:#0d0b15; --surface:#13111d; --raised:#1a1726; --raised-2:#221e31;
  --line:rgba(232,226,255,.10); --line-2:rgba(232,226,255,.18); --line-3:rgba(232,226,255,.28);
  --fg:#f3f0f9; --fg-2:#d6d1e3; --muted:#a8a2ba; --dim:#736d87;
  --gold:#ffd36e; --pink:#ff6fb5; --violet:#9b7bff; --sky:#49c6ff;
  --ember:#ff6fb5; --apricot:#ffd36e; --teal:#49c6ff; --rose:#9b7bff;
  --accent:#ff6fb5; --accent-ink:#120d1c; --accent-soft:rgba(255,111,181,.16); --accent-line:rgba(255,111,181,.55);
  --grad:linear-gradient(100deg,#ffd36e 0%,#ff9a8a 26%,#ff6fb5 46%,#9b7bff 72%,#49c6ff 100%);
  --grad-soft:linear-gradient(100deg,rgba(255,111,181,.9),rgba(155,123,255,.9));
  --grad-line:linear-gradient(90deg,transparent,rgba(255,111,181,.7),rgba(73,198,255,.6),transparent);
  --fade:var(--grad);
  --fade-c:conic-gradient(from var(--spin,0deg),#ffd36e,#ff6fb5,#9b7bff,#49c6ff,#9b7bff,#ff6fb5,#ffd36e);
  --f-display:"Bricolage Grotesque","Arial Black",system-ui,sans-serif;
  --f-body:"Geist",system-ui,-apple-system,"Segoe UI",sans-serif;
  --f-mono:"Geist Mono",ui-monospace,Menlo,monospace;
  --r-sm:10px; --r-md:16px; --r-lg:24px;
  --header-h:84px;
  --ease-x:cubic-bezier(.16,1,.3,1);
}
@property --spin{syntax:"<angle>";inherits:true;initial-value:0deg}
@keyframes hv-spin{to{--spin:360deg}}
@keyframes hv-pan{to{background-position:100% 0}}
html{background:var(--bg)}
body{background:var(--bg);font-family:var(--f-body)}
body::before{background:
  radial-gradient(900px 600px at 85% -10%,rgba(155,123,255,.16),transparent 60%),
  radial-gradient(800px 600px at -10% 40%,rgba(73,198,255,.07),transparent 60%),
  radial-gradient(700px 500px at 60% 110%,rgba(255,111,181,.08),transparent 60%);opacity:1}
body::after{opacity:.06;z-index:400}
::selection{background:var(--pink);color:var(--bg)}
:focus-visible{outline:2px solid var(--sky);outline-offset:3px;border-radius:8px}
.aurora i:nth-child(1){background:radial-gradient(circle,rgba(155,123,255,.22),transparent 60%)}
.aurora i:nth-child(2){background:radial-gradient(circle,rgba(73,198,255,.12),transparent 60%)}
.aurora i:nth-child(3){background:radial-gradient(circle,rgba(255,111,181,.14),transparent 60%)}
.spot{background:radial-gradient(circle,rgba(200,160,255,.07),transparent 60%)}
.scroll-prog{background:var(--grad);height:2px}

/* ---------- cursor ---------- */
.cursor,.cursor-dot{position:fixed;left:0;top:0;z-index:500;pointer-events:none;border-radius:50%;display:none}
.cursor{width:34px;height:34px;margin:-17px 0 0 -17px;border:1.5px solid rgba(255,255,255,.55);transition:width .35s var(--ease-x),height .35s var(--ease-x),margin .35s var(--ease-x),background .35s}
.cursor-dot{width:6px;height:6px;margin:-3px 0 0 -3px;background:#fff}
.cursor.big{width:76px;height:76px;margin:-38px 0 0 -38px;background:#fff}
@media (hover:hover) and (pointer:fine){.cursor,.cursor-dot{display:block}}

/* ---------- type ---------- */
.display,.h-xl,.h-lg,.h-md,.skin-title,.card-name,.index-name,.drawer-link,.footer-word,.brand-word,.float-readout,.countdown b,.map-tile h3,.tile h3,.marquee a,.prose h2,.hud b,.slot-card .slot-name,.pick b,.float-tier{font-family:var(--f-display)}
.h-xl{font-weight:800;font-size:clamp(40px,7vw,104px);line-height:.92;letter-spacing:-.05em}
.h-lg{font-weight:800;font-size:clamp(32px,4.6vw,66px);line-height:.95;letter-spacing:-.04em}
.h-md{font-weight:700;letter-spacing:-.025em}
.h-xl,.h-lg{text-shadow:none}
.h-xl em,.h-lg em,.serif{font-family:var(--f-display);font-style:normal;font-weight:800;letter-spacing:inherit;background:var(--grad);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:hv-pan 8s ease-in-out infinite alternate}
.tag{font:500 12px/1 var(--f-mono);letter-spacing:.16em;color:var(--muted)}
.tag--accent{display:inline-flex;align-items:center;gap:10px;color:var(--fg-2);background:none;-webkit-background-clip:border-box;background-clip:border-box}
.tag--accent::before{content:"";width:22px;height:1px;background:var(--grad)}
.fade-text{background:var(--grad);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:hv-pan 8s ease-in-out infinite alternate}
.lnk{background:var(--grad) 0 100%/0 1.5px no-repeat}
.lnk:hover,.lnk:focus-visible{color:var(--fg);background-size:100% 1.5px}
.arrow-link:hover{color:var(--fg)}
.prose a{background:linear-gradient(var(--line-3),var(--line-3)) 0 100%/100% 1px no-repeat,var(--grad) 0 100%/0 1.5px no-repeat}
.prose a:hover{color:var(--fg);background-size:100% 1px,100% 1.5px}

/* ---------- buttons ---------- */
.btn{border-radius:999px;font:600 15px/1 var(--f-body);letter-spacing:.01em;transition:transform .25s var(--ease-x),box-shadow .5s var(--ease-x),background .3s,border-color .3s,color .3s}
.btn:hover svg.i-arrow{transform:translateX(4px) rotate(-45deg)}
.btn--primary{color:#120d1c;background:#fff;box-shadow:none;overflow:hidden}
.btn--primary::before{content:"";position:absolute;inset:0;z-index:-2;background:var(--fade-c);animation:hv-spin 5s linear infinite;opacity:.95;transform:none;transition:none}
.btn--primary::after{content:"";position:absolute;inset:2px;z-index:-1;border-radius:inherit;background:linear-gradient(180deg,#fff,#f0eaff);transition:opacity .5s var(--ease-x)}
.btn--primary:hover{background:#fff;box-shadow:0 0 0 6px rgba(255,111,181,.14),0 18px 50px -12px rgba(155,123,255,.8)}
.btn--primary:hover::before{transform:none}
.btn--primary:hover::after{opacity:0}
.btn--ghost{background:rgba(232,226,255,.05);border-color:var(--line-2);color:var(--fg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.btn--ghost::before{background:radial-gradient(140px circle at var(--mx,50%) var(--my,50%),rgba(255,111,181,.35),rgba(155,123,255,.2) 40%,transparent 70%);transform:none;opacity:0;transition:opacity .4s}
.btn--ghost:hover::before{transform:none;opacity:1}
.btn--ghost::after{background:conic-gradient(from var(--ang,0deg),transparent 0 62%,var(--pink) 76%,var(--sky) 88%,transparent 100%)}
.btn--ghost:hover{border-color:rgba(232,226,255,.36)}
.btn.is-loading::after{border-color:#120d1c transparent #120d1c transparent}
.icon-btn{border-radius:50%;background:rgba(232,226,255,.05);border-color:var(--line-2)}
.icon-btn:hover{background:rgba(232,226,255,.12);border-color:rgba(232,226,255,.36);transform:rotate(-8deg);color:var(--fg);box-shadow:none}
.chip{border-radius:999px;background:rgba(232,226,255,.04);border-color:var(--line-2)}
.chip:hover{border-color:rgba(232,226,255,.4);color:var(--fg);transform:translateY(-2px);box-shadow:none}
.chip[aria-pressed="true"]{background:var(--grad);color:#120d1c;border-color:transparent;box-shadow:0 10px 30px -12px rgba(255,111,181,.8)}

/* ---------- header: floating glass pill ---------- */
.site-header{position:sticky;top:0;height:auto;padding-top:14px;background:none!important;border:0!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
.site-header::after{display:none}
.header-inner{height:64px;padding:0 8px 0 18px!important;border-radius:999px;border:1px solid var(--line);background:rgba(13,11,21,.62);backdrop-filter:blur(18px) saturate(1.4);-webkit-backdrop-filter:blur(18px) saturate(1.4);transition:box-shadow .5s var(--ease-x),background .5s;max-width:calc(var(--wrap) - 2 * var(--gutter));width:calc(100% - 2 * max(16px,var(--gutter)));margin-inline:auto}
.site-header.is-scrolled .header-inner{background:rgba(13,11,21,.84);box-shadow:0 20px 60px -30px #000,0 0 0 1px rgba(155,123,255,.14)}
.brand-word{font:800 17px/1 var(--f-display);letter-spacing:.06em;text-transform:uppercase}
.brand:hover svg{transform:rotate(180deg)}
.nav{justify-content:center;margin-left:0}
.nav-link{height:42px;padding:0 13px;border-radius:999px;font-weight:600;color:var(--fg-2)}
.nav-link::before,.nav-link::after{display:none}
.nav-link:hover,.nav-item.is-open>.nav-link{background:rgba(232,226,255,.07);color:var(--fg);text-shadow:none}
.nav-link.is-section,.nav-link[aria-current="page"]{color:var(--fg);background:rgba(232,226,255,.07);box-shadow:inset 0 -2px 0 -0px rgba(255,111,181,.0)}
.nav-link.is-section::after,.nav-link[aria-current="page"]::after{display:block;content:"";position:absolute;left:50%;bottom:3px;width:4px;height:4px;margin-left:-2px;border-radius:50%;background:var(--pink);box-shadow:0 0 10px var(--pink);opacity:1;transform:none;border:0;top:auto;right:auto}
.dropdown{top:calc(100% + 14px);background:rgba(13,11,21,.94);backdrop-filter:blur(20px) saturate(1.4);-webkit-backdrop-filter:blur(20px) saturate(1.4);border:1px solid var(--line-2);border-radius:var(--r-lg);box-shadow:0 40px 100px -30px #000,0 0 0 1px rgba(155,123,255,.08);padding:14px}
.dropdown::before{top:-16px;height:16px}
.dd-link{border-radius:14px}
.dd-link::before{background:linear-gradient(100deg,rgba(255,111,181,.12),rgba(155,123,255,.08) 60%,transparent)}
.dd-ico{border-radius:12px;background:rgba(232,226,255,.05);border-color:var(--line-2)}
.dd-link:hover .dd-ico{color:var(--pink);border-color:var(--accent-line);box-shadow:0 0 22px -6px rgba(255,111,181,.8)}
.drawer{background:radial-gradient(800px 500px at 100% 0,rgba(155,123,255,.2),transparent 60%),radial-gradient(600px 500px at 0 100%,rgba(255,111,181,.12),transparent 60%),var(--bg);padding-top:calc(var(--header-h) + 18px)}
.drawer-link{font:800 clamp(28px,8vw,44px)/1.05 var(--f-display);letter-spacing:-.04em;text-transform:none}
.drawer-link:hover{color:var(--pink)}

/* ---------- footer ---------- */
.site-footer{background:linear-gradient(var(--bg),#0b0912);border-top:1px solid var(--line)}
.footer-word{font:800 clamp(64px,17vw,260px)/.8 var(--f-display);letter-spacing:-.06em;text-transform:none;color:transparent;-webkit-text-stroke:0;background:var(--grad);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;opacity:.16;transition:opacity .8s var(--ease-x);animation:hv-pan 10s ease-in-out infinite alternate}
.site-footer:hover .footer-word{opacity:.5}
.footer-grid h2{font:500 12px/1 var(--f-mono);letter-spacing:.16em}

/* ---------- page head ---------- */
.page-head{padding-block:clamp(56px,8vw,110px) clamp(40px,6vw,80px);isolation:isolate}
.page-head::before{content:"";position:absolute;z-index:-1;width:min(70vw,820px);aspect-ratio:1;right:-12%;top:-40%;border-radius:50%;background:radial-gradient(closest-side,rgba(155,123,255,.28),rgba(255,111,181,.12) 50%,transparent);filter:blur(30px);animation:ph-float 14s ease-in-out infinite alternate;pointer-events:none}
@keyframes ph-float{to{transform:translate(-8%,10%) scale(1.1)}}
.page-head::after{font:800 clamp(90px,16vw,240px)/.8 var(--f-display);letter-spacing:-.06em;text-transform:none;-webkit-text-stroke:1px rgba(232,226,255,.07)}
.crumbs{font-family:var(--f-mono);font-size:12px;letter-spacing:.06em}

/* ---------- surfaces ---------- */
.panel{background:linear-gradient(170deg,var(--raised),var(--bg-2));border-color:var(--line);border-radius:var(--r-lg)}
.corners::before,.corners::after{display:none}
.notice{border-radius:var(--r-md)}
.empty{border-radius:var(--r-lg)}

/* ---------- cards: foil specimen ---------- */
.card{--rx:0deg;--ry:0deg;--gx:50%;--gy:50%;background:linear-gradient(170deg,var(--raised),var(--bg-2));border-radius:var(--r-lg);transform:perspective(900px) rotateX(var(--rx)) rotateY(var(--ry));transition:transform .5s var(--ease-x),border-color .4s,box-shadow .5s}
.card.live{transition:transform .1s linear,border-color .4s,box-shadow .5s}
.card::after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;border-radius:inherit;background:radial-gradient(360px circle at var(--gx) var(--gy),rgba(255,255,255,.12),transparent 45%),linear-gradient(115deg,transparent 30%,rgba(255,111,181,.12) 45%,rgba(73,198,255,.12) 55%,transparent 70%);background-size:100% 100%,250% 250%;background-position:0 0,var(--gx) var(--gy);mix-blend-mode:screen;opacity:0;transition:opacity .4s}
.card:hover{transform:perspective(900px) rotateX(var(--rx)) rotateY(var(--ry)) translateY(-4px);border-color:rgba(232,226,255,.26);box-shadow:0 40px 70px -40px rgba(0,0,0,.95),0 0 60px -30px var(--rc)}
.card:hover::after{opacity:1}
.card-media{padding:18px}
.card-media .art-svg{width:92%;height:auto;filter:drop-shadow(0 16px 18px rgba(0,0,0,.6));transition:transform .6s var(--ease-x)}
.card:hover .card-media .art-svg{transform:translateY(-6px) scale(1.06) rotate(-3deg)}
.card-name{font:800 23px/1.05 var(--f-display);text-transform:none;letter-spacing:-.03em}
.card-weapon{font-family:var(--f-mono)}
.card-bar{height:2px}

/* art in other containers */
.art-svg{display:block;max-width:100%;overflow:visible}
.art-svg .sheen{animation:sheen 3.6s linear infinite}
@keyframes sheen{from{transform:skewX(-20deg) translateX(-60px)}to{transform:skewX(-20deg) translateX(900px)}}
.skin-stage .art-svg{width:86%;filter:drop-shadow(0 30px 30px rgba(0,0,0,.6));animation:hv-hover 6s ease-in-out infinite;position:relative;z-index:1}
@keyframes hv-hover{50%{transform:translateY(-10px) rotate(-1.5deg)}}
.slot .art-svg,.slot-img .art-svg,.pick .art-svg{width:88%;margin:auto}
.slot-img{display:grid;place-items:center}
.rail-btn .art-svg{width:58px}
.index-peek .art-svg{width:100%}
.skin-stage{border-radius:var(--r-lg);background:radial-gradient(60% 60% at 50% 55%,color-mix(in srgb,var(--rc) 22%,transparent),transparent 70%),linear-gradient(160deg,#1c1830,#0c0a14 60%)}
.skin-title{font-weight:800;letter-spacing:-.045em;text-transform:none}
.skin-title small{font-family:var(--f-mono);letter-spacing:.16em}

/* forms */
.input,select.input,textarea.input{border-radius:14px;background:rgba(13,11,21,.7);border-color:var(--line-2)}
.input:focus{border-color:rgba(255,111,181,.6);box-shadow:0 0 0 5px rgba(255,111,181,.14),0 0 40px -10px rgba(155,123,255,.8);outline:none}
.searchbox .input{border-radius:999px}
.range{accent-color:var(--pink)}

/* FAQ */
.faq details{border-color:var(--line)}
.faq summary{font-family:var(--f-body);font-weight:600}
.faq details[open] summary{color:var(--fg)}

/* tiles & misc */
.tile{border-radius:var(--r-lg);background:linear-gradient(170deg,var(--raised),var(--bg-2))}
.map-tile{border-radius:var(--r-lg)}
.countdown div{border-radius:18px}
.marquee a:nth-child(even){color:transparent;-webkit-text-stroke:1px rgba(232,226,255,.5)}
.marquee a:hover{color:var(--fg);-webkit-text-stroke:0}
.status.live{color:#8cf0c8}

/* ---------- table (legal / data) ---------- */
.dt{width:100%;border-collapse:collapse;font-size:15px}
.dt th,.dt td{text-align:left;padding:12px 14px;border-bottom:1px solid var(--line)}
.dt th{font:500 12px var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.dt tr:hover td{background:rgba(232,226,255,.03)}

/* ---------- index grids (hubs: cases, collections, sitemap) ---------- */
.hub-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:14px}
.hub{--mx:50%;--my:50%;position:relative;display:flex;flex-direction:column;gap:10px;padding:22px;border-radius:var(--r-lg);border:1px solid var(--line);background:linear-gradient(170deg,var(--raised),var(--bg-2));overflow:hidden;isolation:isolate;transition:transform .5s var(--ease-x),border-color .4s}
.hub::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(380px circle at var(--mx) var(--my),rgba(255,111,181,.16),rgba(155,123,255,.08) 40%,transparent 70%);opacity:0;transition:opacity .4s}
.hub:hover{transform:translateY(-4px);border-color:rgba(232,226,255,.26)}
.hub:hover::before{opacity:1}
.hub h3{font:800 22px/1.1 var(--f-display);letter-spacing:-.03em}
.hub p{color:var(--muted);font-size:14px}
.hub .hub-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto;font:500 12px var(--f-mono);color:var(--fg-2)}
.hub .hub-meta span{padding:5px 10px;border-radius:999px;border:1px solid var(--line-2)}
.hub .hub-art{display:flex;gap:6px;height:64px;align-items:center}
.hub .hub-art .art-svg{height:46px;width:auto;flex:none;filter:drop-shadow(0 8px 10px rgba(0,0,0,.5))}
.hub a.stretch::after{content:"";position:absolute;inset:0}
.sitemap-cols{columns:3 260px;column-gap:40px}
.sitemap-cols section{break-inside:avoid;margin-bottom:28px}
.sitemap-cols h2{font:500 12px var(--f-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:10px}
.sitemap-cols ul{list-style:none;display:grid;gap:6px}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.form-grid label{display:grid;gap:6px;font-size:14px;color:var(--fg-2)}
.form-grid .full{grid-column:1/-1}
@media (max-width:640px){.form-grid{grid-template-columns:1fr}}

/* =========================================================
   HOME (.hv) — holographic hero + rooms + CTA
   ========================================================= */
.hv-hero{position:relative;padding-block:clamp(30px,5vw,60px) 40px;overflow:hidden;isolation:isolate;margin-top:calc(-1 * var(--header-h));padding-top:calc(var(--header-h) + clamp(30px,5vw,60px))}
.hv-hero canvas{position:absolute;inset:0;width:100%;height:100%;z-index:-2}
.hv-hero::after{content:"";position:absolute;inset:auto 0 0;height:160px;z-index:-1;background:linear-gradient(transparent,var(--bg))}
.hv-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:40px;align-items:center}
.hv-kicker{display:inline-flex;align-items:center;flex-wrap:wrap;gap:10px;padding:7px 14px 7px 10px;border-radius:999px;border:1px solid var(--line-2);background:rgba(232,226,255,.04);font:500 12px var(--f-mono);letter-spacing:.08em;color:var(--fg-2)}
.hv-kicker b{display:inline-grid;place-items:center;height:22px;padding:0 8px;border-radius:999px;background:var(--grad);color:#120d1c;font-weight:600}
.hv-h1{margin-top:22px;font:800 clamp(46px,8.2vw,124px)/.9 var(--f-display);letter-spacing:-.055em}
.hv-h1 .hk{display:block;font:500 13px/1.4 var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:18px}
.hv-h1 .w{display:inline-block;overflow:hidden;vertical-align:bottom;padding-bottom:.08em;margin-bottom:-.08em}
.hv-h1 .w>span{display:inline-block;animation:hv-rise 1.1s var(--ease-x) both;animation-delay:calc(.25s + var(--i) * 70ms)}
.hv-h1 em{font-style:normal}
.hv-h1 em .w>span{background:var(--grad);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;padding-right:.04em}
@keyframes hv-rise{from{transform:translateY(105%) rotate(4deg)}}
.hv-lede{margin-top:24px;max-width:46ch;font-size:clamp(16px,1.4vw,19px);color:var(--fg-2)}
.hv-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.hv-search{position:relative;margin-top:22px;max-width:480px}
.hv-search svg{position:absolute;left:18px;top:50%;transform:translateY(-50%);color:var(--muted)}
.hv-search input{width:100%;height:54px;padding:0 54px 0 48px;border-radius:999px;border:1px solid var(--line-2);background:rgba(13,11,21,.7);font-size:16px;transition:border-color .3s,box-shadow .4s}
.hv-search input:focus{outline:none;border-color:rgba(255,111,181,.6);box-shadow:0 0 0 5px rgba(255,111,181,.14),0 0 40px -10px rgba(155,123,255,.8)}
.hv-search kbd{position:absolute;right:14px;top:50%;transform:translateY(-50%);font:500 12px var(--f-mono);padding:3px 8px;border:1px solid var(--line-2);border-radius:6px;color:var(--muted)}
.hv-stage{position:relative;perspective:1200px;display:grid;justify-items:center;gap:18px}
.holo{--rx:0deg;--ry:0deg;--gx:50%;--gy:50%;position:relative;display:block;width:min(100%,520px);aspect-ratio:5/6;border-radius:30px;transform:rotateX(var(--rx)) rotateY(var(--ry));transform-style:preserve-3d;transition:transform .6s var(--ease-x);background:linear-gradient(160deg,#1c1830,#0c0a14 60%);border:1px solid var(--line-2);box-shadow:0 60px 120px -50px rgba(0,0,0,.9),0 0 90px -40px var(--glow,#9b7bff)}
.holo.live{transition:transform .12s linear}
.holo-in{position:absolute;inset:0;border-radius:inherit;overflow:hidden}
.holo-foil{position:absolute;inset:-40%;background:var(--fade-c);animation:hv-spin 14s linear infinite;opacity:.13;mix-blend-mode:screen;filter:blur(30px)}
.holo-lines{position:absolute;inset:0;background:repeating-linear-gradient(115deg,transparent 0 9px,rgba(255,255,255,.035) 9px 10px);mix-blend-mode:overlay}
.holo-glare{position:absolute;inset:0;background:radial-gradient(420px circle at var(--gx) var(--gy),rgba(255,255,255,.22),transparent 45%);mix-blend-mode:overlay}
.holo-top{position:absolute;left:24px;right:24px;top:22px;display:flex;justify-content:space-between;font:500 11px var(--f-mono);letter-spacing:.14em;color:var(--muted);transform:translateZ(30px)}
.holo-art{position:absolute;inset:16% 4% 30%;display:grid;place-items:center;transform:translateZ(70px)}
.holo-art .art-svg{width:96%;max-width:none;filter:drop-shadow(0 30px 30px rgba(0,0,0,.6));animation:hv-hover 6s ease-in-out infinite;transition:opacity .4s,transform .6s var(--ease-x)}
.holo-art.swap .art-svg{opacity:0;transform:translateX(30px) scale(.94)}
.holo-floor{position:absolute;left:14%;right:14%;bottom:31%;height:10%;border-radius:50%;background:radial-gradient(closest-side,var(--glow,#9b7bff),transparent);opacity:.5;filter:blur(14px)}
.holo-info{position:absolute;left:24px;right:24px;bottom:22px;transform:translateZ(50px)}
.holo-info .hw{font:500 12px var(--f-mono);letter-spacing:.14em;color:var(--muted)}
.holo-info h2{font:800 clamp(28px,3.2vw,40px)/1 var(--f-display);letter-spacing:-.04em;margin-top:6px}
.holo-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.htag{display:inline-flex;align-items:center;gap:8px;height:28px;padding:0 12px;border-radius:999px;border:1px solid var(--line-2);background:rgba(7,6,11,.5);font:500 12px var(--f-mono);color:var(--fg-2)}
.htag i{width:8px;height:8px;border-radius:50%;background:var(--c,#999);box-shadow:0 0 10px var(--c,#999)}
.holo-ring{position:absolute;inset:-26px;border-radius:44px;border:1px dashed rgba(232,226,255,.12);pointer-events:none}
.finishes{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;max-width:560px}
.finish{position:relative;display:flex;align-items:center;gap:10px;height:46px;padding:0 16px 0 8px;border-radius:999px;border:1px solid var(--line);background:rgba(13,11,21,.6);font-size:14px;font-weight:600;color:var(--muted);overflow:hidden;transition:all .4s var(--ease-x)}
.finish .sw{width:30px;height:30px;border-radius:50%;background:var(--sw);box-shadow:inset 0 0 0 1px rgba(255,255,255,.2)}
.finish:hover{color:var(--fg);border-color:var(--line-2);transform:translateY(-2px)}
.finish[aria-pressed="true"]{color:var(--fg);border-color:rgba(232,226,255,.4);background:rgba(232,226,255,.08)}
.finish .bar{position:absolute;left:0;bottom:0;height:2px;width:100%;background:var(--grad);transform:scaleX(0);transform-origin:left}
.finish[aria-pressed="true"] .bar{animation:hv-fill 6s linear forwards}
.hv-stage.paused .finish .bar{animation-play-state:paused}
@keyframes hv-fill{to{transform:scaleX(1)}}
.hv-note{font:400 12px var(--f-mono);color:var(--dim);text-align:center}

.rooms{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:14px}
.room{--mx:50%;--my:50%;position:relative;grid-column:span 4;min-height:250px;padding:26px;border-radius:var(--r-lg);background:linear-gradient(170deg,var(--raised),var(--bg-2));border:1px solid var(--line);display:flex;flex-direction:column;justify-content:space-between;gap:20px;overflow:hidden;isolation:isolate;transition:transform .6s var(--ease-x),border-color .4s}
.room::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(420px circle at var(--mx) var(--my),rgba(255,111,181,.18),rgba(155,123,255,.1) 35%,transparent 65%);opacity:0;transition:opacity .5s}
.room::after{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;background:radial-gradient(300px circle at var(--mx) var(--my),rgba(255,211,110,.9),rgba(155,123,255,.6) 40%,transparent 70%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .5s;pointer-events:none}
.room:hover{transform:translateY(-6px);border-color:transparent}
.room:hover::before,.room:hover::after{opacity:1}
.room.big{grid-column:span 8;grid-row:span 2;min-height:520px}
.room.wide{grid-column:span 6}
.room h3{font:800 clamp(24px,2.6vw,36px)/1 var(--f-display);letter-spacing:-.04em}
.room p{color:var(--muted);margin-top:10px;max-width:40ch}
.room .row-top{display:flex;justify-content:space-between;align-items:center}
.room .st{font:500 11px var(--f-mono);letter-spacing:.14em;color:var(--muted);padding:6px 10px;border-radius:999px;border:1px solid var(--line-2)}
.room .go{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--line-2);transition:all .5s var(--ease-x)}
.room:hover .go{background:#fff;color:#120d1c;transform:rotate(-45deg);border-color:#fff}
.room .ico{width:54px;height:54px;border-radius:16px;display:grid;place-items:center;background:rgba(232,226,255,.06);border:1px solid var(--line-2);transition:transform .6s var(--ease-x)}
.room:hover .ico{transform:rotate(-10deg) scale(1.08)}
.room .rart{position:absolute;right:-8%;top:24%;width:78%;opacity:.9;transition:transform 1s var(--ease-x);z-index:-1}
.room:hover .rart{transform:translateX(-4%) rotate(-4deg) scale(1.04)}
.room a.stretch::after{content:"";position:absolute;inset:0;z-index:2}

.big-cta{position:relative;text-align:center;padding-block:clamp(90px,14vw,190px);overflow:hidden;isolation:isolate}
.big-cta::before{content:"";position:absolute;inset:auto 0 -40%;margin:auto;width:min(1100px,120vw);aspect-ratio:1;border-radius:50%;background:var(--fade-c);filter:blur(90px);opacity:.28;z-index:-1;animation:hv-spin 18s linear infinite}
.big-cta h2{font:800 clamp(48px,10vw,160px)/.86 var(--f-display);letter-spacing:-.06em}
.big-cta p{max-width:46ch;margin:22px auto 34px;color:var(--fg-2);font-size:clamp(16px,1.5vw,19px)}

/* reveal for home blocks */
.rv{opacity:0;transform:translateY(36px);transition:opacity 1s var(--ease-x),transform 1.1s var(--ease-x)}
.rv.in{opacity:1;transform:none}
.no-js .rv{opacity:1;transform:none}

@media (max-width:1020px){
  .hv-grid{grid-template-columns:1fr}
  .room,.room.wide{grid-column:span 6}
  .room.big{grid-column:span 12;min-height:420px}
  .nav{display:none}
  .menu-toggle{display:inline-grid}
}
@media (max-width:640px){
  .room,.room.wide,.room.big{grid-column:span 12;min-height:220px}
  .room.big{min-height:360px}
  .holo{width:100%}
  .finish{height:40px;font-size:13px}
  .finish .sw{width:24px;height:24px}
  .header-actions .btn{display:none}
  .header-inner{width:calc(100% - 32px)}
  .page-head::after{display:none}
  .hv-kicker{border-radius:16px}
}
@media (prefers-reduced-motion:reduce){
  .hv-h1 .w>span,.holo-art .art-svg,.art-svg .sheen,.holo-foil,.btn--primary::before,.big-cta::before,.page-head::before{animation:none!important}
  .rv{opacity:1;transform:none}
}
.room>a.stretch,.hub>a.stretch{position:absolute;inset:0;z-index:2;border-radius:inherit}
.room>a.stretch::after,.hub>a.stretch::after{display:none}
.room>a.stretch:focus-visible,.hub>a.stretch:focus-visible{outline:2px solid var(--sky);outline-offset:-4px}

/* =========================================================
   v3.1 — clean hovers (no gradient fills), mega menu, mobile shell
   ========================================================= */
/* buttons: solid, calm hover = lift + light, never a gradient wash */
.btn--primary{background:#fff;color:#120d1c;box-shadow:0 10px 30px -14px rgba(255,255,255,.45)}
.btn--primary::before,.btn--primary::after{display:none!important}
.btn--primary:hover{background:#fff;transform:translateY(-2px);box-shadow:0 0 0 4px rgba(255,255,255,.12),0 18px 40px -16px rgba(255,255,255,.55)}
.btn--primary:active{transform:translateY(0) scale(.98)}
.btn--ghost::before,.btn--ghost::after{display:none!important}
.btn--ghost:hover{background:rgba(232,226,255,.11);border-color:rgba(232,226,255,.42);transform:translateY(-2px)}
.btn--quiet:hover{background:rgba(232,226,255,.08)}
.btn:hover svg.i-arrow{transform:translateX(4px)}
.chip[aria-pressed="true"],.chip.is-on{background:#fff;color:#120d1c;border-color:#fff;box-shadow:none}
.chip:hover{background:rgba(232,226,255,.1)}
.icon-btn:hover{transform:none;background:rgba(232,226,255,.14)}
.lnk{background:linear-gradient(currentColor,currentColor) 0 100%/0 1px no-repeat}
.lnk:hover,.lnk:focus-visible{background-size:100% 1px}
.prose a{background:linear-gradient(var(--line-3),var(--line-3)) 0 100%/100% 1px no-repeat}
.prose a:hover{background:linear-gradient(currentColor,currentColor) 0 100%/100% 1px no-repeat}
.card::after{background:radial-gradient(320px circle at var(--gx) var(--gy),rgba(255,255,255,.07),transparent 50%)!important;mix-blend-mode:normal}
.card:hover{box-shadow:0 30px 60px -36px rgba(0,0,0,.95)}
.room::before,.room::after,.hub::before{display:none!important}
.room:hover,.hub:hover{border-color:rgba(232,226,255,.3);background:linear-gradient(170deg,#1f1b2e,var(--bg-2))}
.dd-link::before{background:rgba(232,226,255,.06)!important}
.tile::before,.tile::after{display:none!important}
.finish:hover{background:rgba(232,226,255,.08)}

/* mega menu */
.nav-item--mega{position:static}
.dropdown.mega{left:50%;right:auto;transform:translate(-50%,8px);width:min(1180px,calc(100vw - 48px));min-width:0;display:block;padding:18px}
.nav-item.is-open .dropdown.mega{transform:translate(-50%,0)}
.mega-quick{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;padding-bottom:14px;margin-bottom:14px;border-bottom:1px solid var(--line)}
.mega-q{display:flex;gap:10px;align-items:center;padding:10px 12px;border-radius:14px;border:1px solid var(--line);transition:background .25s,border-color .25s}
.mega-q:hover{background:rgba(232,226,255,.07);border-color:var(--line-2)}
.mega-q b{display:block;font-size:14px}
.mega-q small{display:block;font-size:12px;color:var(--muted)}
.mega-cols{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) minmax(0,2fr) repeat(2,minmax(0,1fr));gap:18px}
.mega-h{display:flex;align-items:baseline;justify-content:space-between;gap:8px;font:700 15px var(--f-display);letter-spacing:-.01em;padding:6px 8px;border-radius:10px;margin-bottom:6px}
.mega-h span{font:500 11px var(--f-mono);color:var(--muted)}
.mega-h:hover{background:rgba(232,226,255,.07)}
.mega-links{display:grid;gap:1px}
.mega-col--wide .mega-links{grid-template-columns:1fr 1fr;column-gap:8px}
.mega-link{display:block;padding:5px 8px;border-radius:8px;font-size:13.5px;color:var(--fg-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:background .2s,color .2s}
.mega-link:hover{background:rgba(232,226,255,.07);color:var(--fg)}
.nav-item.is-open .dropdown.mega .mega-link,.nav-item.is-open .dropdown.mega .mega-q{opacity:1}

/* weapon tiles */
.weapon-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,190px),1fr));gap:12px}
.wtile{padding:16px;gap:6px}
.wtile .wt-art{height:84px;display:grid;place-items:center}
.wtile .wt-art .art-svg{max-height:84px;width:92%;filter:drop-shadow(0 10px 12px rgba(0,0,0,.55));transition:transform .5s var(--ease-x)}
.wtile:hover .wt-art .art-svg{transform:translateY(-4px) rotate(-3deg)}
.wtile h3{font-size:18px}
.wgroup{margin-bottom:40px}
.wgroup-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:14px}
.chip-row{display:flex;flex-wrap:wrap;gap:8px}

/* drawer accordion */
.drawer{padding:calc(var(--header-h) + 14px) max(16px,var(--gutter)) 120px}
.drawer-search{position:relative;margin-bottom:10px}
.drawer-search svg{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--muted)}
.drawer-search input{width:100%;height:50px;padding:0 16px 0 46px;border-radius:999px;border:1px solid var(--line-2);background:rgba(13,11,21,.7);font-size:16px}
.drawer-group{border-top:1px solid var(--line);padding:0}
.drawer-h{width:100%;display:flex;justify-content:space-between;align-items:center;padding:16px 2px;border:0;background:none;font:800 26px/1.1 var(--f-display);letter-spacing:-.03em;color:var(--fg);text-align:left}
.drawer-h svg{transition:transform .35s var(--ease-x);color:var(--muted)}
.drawer-group.is-open .drawer-h svg{transform:rotate(180deg)}
.drawer-panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .4s var(--ease-x)}
.drawer-group.is-open .drawer-panel{grid-template-rows:1fr}
.drawer-inner{overflow:hidden;display:grid;grid-template-columns:1fr 1fr;gap:4px 12px}
.drawer-group.is-open .drawer-inner{padding-bottom:14px}
.drawer .drawer-link{opacity:1!important;transform:none!important;font:600 16px/1.3 var(--f-body);letter-spacing:0;padding:10px 12px;border-radius:12px;background:rgba(232,226,255,.04);border:1px solid var(--line)}
.drawer .drawer-link:hover,.drawer .drawer-link:active{background:rgba(232,226,255,.1);color:var(--fg)}

/* mobile tab bar */
.tabbar{display:none}
@media (max-width:760px){
  .tabbar{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;left:10px;right:10px;bottom:calc(10px + env(safe-area-inset-bottom,0px));z-index:180;height:64px;border-radius:22px;border:1px solid var(--line-2);background:rgba(13,11,21,.88);backdrop-filter:blur(18px) saturate(1.4);-webkit-backdrop-filter:blur(18px) saturate(1.4);box-shadow:0 20px 50px -20px #000}
  .tab{display:grid;place-items:center;align-content:center;gap:3px;font:600 11px var(--f-body);color:var(--muted);border-radius:18px;margin:6px 3px}
  .tab.is-on{color:#120d1c;background:#fff}
  .tab:active{transform:scale(.95)}
  body{padding-bottom:calc(84px + env(safe-area-inset-bottom,0px))}
  .toast{bottom:calc(92px + env(safe-area-inset-bottom,0px))!important}
}

/* ---------- mobile polish ---------- */
@media (max-width:1020px){
  .header-cta{display:none}
}
@media (max-width:760px){
  :root{--header-h:72px}
  .site-header{padding-top:10px}
  .header-inner{height:56px;padding:0 6px 0 14px!important}
  .brand-word{font-size:15px}
  .icon-btn{width:42px;height:42px}
  .section{padding-block:56px}
  .page-head{padding-block:28px 24px}
  .h-xl{font-size:clamp(34px,10vw,52px)}
  .h-lg{font-size:clamp(28px,8.4vw,42px)}
  .lead{font-size:16px}
  .section-head{margin-bottom:20px}
  .grid-items{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .card-media{padding:10px}
  .card-body{padding:10px 12px 12px}
  .card-name{font-size:17px}
  .card-meta{font-size:11px}
  .card-go{display:none}
  .weapon-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .wtile{padding:12px}
  .wtile .wt-art{height:60px}
  .wtile h3{font-size:15px}
  .hub-grid{grid-template-columns:1fr}
  .hv-hero{padding-top:calc(var(--header-h) + 18px)}
  .hv-h1{font-size:clamp(42px,13vw,64px)}
  .hv-h1 .hk{font-size:11px;margin-bottom:12px}
  .hv-cta .btn{flex:1 1 auto}
  .holo{aspect-ratio:4/5}
  .finishes{flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;max-width:100%;padding-bottom:6px;scrollbar-width:none;-webkit-mask-image:linear-gradient(90deg,#000 85%,transparent);mask-image:linear-gradient(90deg,#000 85%,transparent)}
  .finish{flex:none}
  .dt{font-size:13px}
  .dt th,.dt td{padding:10px 8px}
  .skin-hero{gap:22px}
  .skin-hero>div:first-child{position:static!important}
  .spec{grid-template-columns:1fr 1fr}
  .footer-grid{grid-template-columns:1fr 1fr;gap:28px}
  .footer-grid>div:first-child{grid-column:1/-1}
  .big-cta h2{font-size:clamp(44px,14vw,72px)}
  .rooms{gap:10px}
  .room{padding:20px;min-height:180px}
  input,select,textarea{font-size:16px}
}
@media (max-width:380px){
  .grid-items{grid-template-columns:1fr 1fr}
  .drawer-inner{grid-template-columns:1fr}
}
@media (hover:none){
  .card:hover,.room:hover,.hub:hover,.btn:hover{transform:none}
}

/* ---------- home v3.1 sections ---------- */
.stats-strip{padding:26px 0 34px}
.stats-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.stat{padding:18px 20px;border-radius:20px;border:1px solid var(--line);background:rgba(232,226,255,.03)}
.stat b{display:block;font:800 clamp(30px,3.6vw,48px)/1 var(--f-display);letter-spacing:-.04em}
.stat span{display:block;margin-top:8px;font-size:13px;color:var(--muted)}
.stat--promise b{color:#8cf0c8}
.stats-src{margin-top:12px;font:400 12px var(--f-mono);color:var(--dim)}
.cat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.cat-card{position:relative;display:grid;grid-template-rows:auto 1fr auto auto;min-height:250px;padding:20px;border-radius:24px;border:1px solid var(--line);background:linear-gradient(170deg,var(--raised),var(--bg-2));overflow:hidden;transition:transform .5s var(--ease-x),border-color .3s,background .3s}
.cat-card:first-child{grid-column:span 2;grid-row:span 2;min-height:520px}
.cat-card:hover{transform:translateY(-6px);border-color:rgba(232,226,255,.3);background:linear-gradient(170deg,#1f1b2e,var(--bg-2))}
.cat-n{font:500 11px var(--f-mono);letter-spacing:.12em;color:var(--muted);text-transform:uppercase}
.cat-art{display:grid;place-items:center;padding:10px 0}
.cat-art .art-svg{width:88%;filter:drop-shadow(0 20px 22px rgba(0,0,0,.6));transition:transform .7s var(--ease-x)}
.cat-card:hover .cat-art .art-svg{transform:translateY(-8px) rotate(-4deg) scale(1.05)}
.cat-name{font:800 clamp(24px,2.4vw,36px)/1 var(--f-display);letter-spacing:-.04em}
.cat-card:first-child .cat-name{font-size:clamp(36px,4.4vw,64px)}
.cat-sub{font-size:13px;color:var(--muted);margin-top:4px}
.cat-go{position:absolute;right:18px;bottom:18px;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--line-2);transition:background .3s,color .3s,transform .4s var(--ease-x)}
.cat-card:hover .cat-go{background:#fff;color:#120d1c;transform:translateX(3px)}
.art-wall{padding:clamp(40px,6vw,80px) 0;overflow:hidden;display:grid;gap:14px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.wall-track{display:flex;gap:14px;width:max-content;animation:marq 60s linear infinite}
.wall-row--rev .wall-track{animation-direction:reverse;animation-duration:70s}
.art-wall:hover .wall-track{animation-play-state:paused}
.wall-card{display:flex;align-items:center;gap:14px;width:300px;padding:14px 18px;border-radius:20px;border:1px solid var(--line);background:linear-gradient(120deg,color-mix(in srgb,var(--rc) 14%,var(--raised)),var(--bg-2));transition:border-color .3s,transform .4s var(--ease-x)}
.wall-card:hover{border-color:rgba(232,226,255,.35);transform:translateY(-3px)}
.wall-card .art-svg{width:110px;flex:none;filter:drop-shadow(0 8px 10px rgba(0,0,0,.5))}
.wall-card b{display:block;font:700 16px/1.1 var(--f-display);letter-spacing:-.02em}
.wall-card span{font-size:12px;color:var(--muted);min-width:0}
@keyframes marq{to{transform:translateX(-50%)}}
.shuffle{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(24px,5vw,64px);align-items:center}
.reel{border-radius:28px;border:1px solid var(--line-2);background:linear-gradient(160deg,#1c1830,#0c0a14 70%);padding:18px;overflow:hidden}
.reel-win{position:relative;overflow:hidden;border-radius:18px;background:rgba(7,6,11,.6);padding:16px 0;-webkit-mask-image:linear-gradient(90deg,transparent,#000 15%,#000 85%,transparent);mask-image:linear-gradient(90deg,transparent,#000 15%,#000 85%,transparent)}
.reel-track{display:flex;gap:12px;padding-left:12px;will-change:transform}
.reel-card{flex:none;width:170px;padding:12px;border-radius:16px;border:1px solid var(--line);background:linear-gradient(170deg,color-mix(in srgb,var(--rc) 18%,var(--raised)),var(--bg-2));display:grid;gap:8px;transition:border-color .4s,transform .4s var(--ease-x),box-shadow .4s}
.reel-card .art-svg{height:62px;width:100%}
.reel-card b{display:block;font:700 14px/1.15 var(--f-display);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.reel-card span{font-size:11px;color:var(--muted);min-width:0}
.reel-card.is-win{border-color:#fff;transform:scale(1.06);box-shadow:0 0 0 3px rgba(255,255,255,.15),0 20px 40px -20px var(--rc)}
.reel-mark{position:absolute;left:50%;top:6px;bottom:6px;width:2px;margin-left:-1px;background:#fff;border-radius:2px;box-shadow:0 0 14px #fff}
.reel-out{display:flex;align-items:center;gap:14px;min-height:64px;margin-top:16px;padding:12px 14px;border-radius:16px;border:1px solid var(--line);background:rgba(232,226,255,.03)}
.reel-out b{display:block}
.reel-out small{display:block;font-size:12px;color:var(--muted)}
.reel-out .btn{margin-left:auto}
.mini-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.mini{padding:22px;display:flex;flex-direction:column;gap:8px}
.mini-top{display:flex;justify-content:space-between;align-items:center}
.mini-open{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--line-2);transition:background .3s,color .3s}
.mini-open:hover{background:#fff;color:#120d1c}
.mini-big{font:800 clamp(36px,3.6vw,52px)/1 var(--f-display);letter-spacing:-.03em;margin-top:6px}
.mini-big.mono{font-family:var(--f-display)}
.mini-sub{color:var(--sky);font-weight:600}
.mini-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:8px}
.mini-fields label,.mini-sliders label{display:grid;gap:6px;font-size:13px;color:var(--fg-2)}
.mini-fields .input{height:46px;padding:0 14px;width:100%}
.mini-sliders{display:grid;gap:8px;margin-top:8px}
.xh-stage{border-radius:14px;overflow:hidden;border:1px solid var(--line)}
.xh-stage canvas{display:block;width:100%;height:140px}
.news-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:14px}
.news-major{padding:24px;grid-row:span 1}
.news-card{display:flex;flex-direction:column;gap:10px;padding:22px;transition:transform .5s var(--ease-x),border-color .3s}
.news-card:hover{transform:translateY(-4px);border-color:rgba(232,226,255,.3)}
.news-card h3{font:800 21px/1.12 var(--f-display);letter-spacing:-.03em}
.news-card p{color:var(--muted);font-size:14px}
.news-go{margin-top:auto;display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:14px}
.countdown{display:flex;gap:8px;flex-wrap:wrap}
.countdown div{min-width:62px}
@media (max-width:1020px){
  .stats-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .cat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cat-card:first-child{min-height:380px}
  .shuffle,.mini-grid{grid-template-columns:1fr}
  .news-grid{grid-template-columns:1fr 1fr}
  .news-major{grid-column:1/-1}
  .mega-cols{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media (max-width:760px){
  .stats-grid{grid-template-columns:1fr 1fr;gap:8px}
  .stat{padding:14px}
  .stat--promise{grid-column:1/-1}
  .cat-grid{gap:10px}
  .cat-card{min-height:190px;padding:14px;border-radius:20px}
  .cat-card:first-child{grid-column:1/-1;grid-row:auto;min-height:280px}
  .cat-go{width:34px;height:34px;right:12px;bottom:12px}
  .wall-card{width:230px;padding:10px 12px}
  .wall-card .art-svg{width:80px}
  .reel-card{width:140px}
  .reel-out{flex-wrap:wrap}
  .reel-out .btn{margin-left:0;width:100%}
  .news-grid{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){.wall-track{animation:none}}

.cursor.hov{width:46px;height:46px;margin:-23px 0 0 -23px;border-color:rgba(255,255,255,.9)}
.cursor.big{width:46px;height:46px;margin:-23px 0 0 -23px;background:none}
.drawer-inner{visibility:hidden;transition:visibility 0s linear .4s}
.drawer-group.is-open .drawer-inner{visibility:visible;transition-delay:0s}

.cat-card:nth-child(6),.cat-card:nth-child(7){grid-column:span 2}
.mega-cols{grid-template-columns:1fr 1fr .9fr .9fr 2fr 1.3fr .8fr}
.xh-preview{position:relative}
.xh-zoom{position:absolute;right:10px;top:10px;gap:6px}
.xh-zoom .chip{height:32px;padding:0 12px;background:rgba(7,6,11,.6)}
@media (max-width:1020px){.cat-card:nth-child(6),.cat-card:nth-child(7){grid-column:span 1}.mega-cols{grid-template-columns:repeat(4,minmax(0,1fr))}}

@media (max-width:760px){
  [data-slots]{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  .slot-card{min-height:0!important;padding:10px!important}
  .slot-card .slot-img{height:70px}
  .slot-card .slot-label{font-size:10px}
  .tool-grid{grid-template-columns:1fr!important}
}
body:has(.drawer.is-open) .tabbar{display:none}
.spa-loading main{opacity:.45;transition:opacity .2s}
main{transition:opacity .25s}

/* =========================================================
   v3.3 — builder v2, accounts, profile, tools
   ========================================================= */
/* favourites */
.fav-btn{position:absolute;top:10px;right:10px;z-index:3;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--line-2);background:rgba(7,6,11,.6);color:var(--fg-2);backdrop-filter:blur(8px);transition:transform .25s var(--ease-x),color .2s,background .2s}
.fav-btn:hover{color:#fff;transform:scale(1.08)}
.fav-btn[aria-pressed="true"]{color:#ff5c93;border-color:rgba(255,92,147,.5);background:rgba(255,92,147,.14)}
.fav-btn[aria-pressed="true"] svg path,.fav-text[aria-pressed="true"] svg path{fill:currentColor}
.fav-text[aria-pressed="true"]{color:#ff5c93;border-color:rgba(255,92,147,.5)}
.fav-text[aria-pressed="true"] span{font-size:0}.fav-text[aria-pressed="true"] span::after{content:"Favourited";font-size:15px}
.picker .fav-btn,.editor .fav-btn{position:static}
/* avatar + account button */
.avatar{--h:280;display:inline-grid;place-items:center;width:40px;height:40px;border-radius:50%;flex:none;font:800 15px var(--f-display);color:#120d1c;background:linear-gradient(135deg,hsl(var(--h),85%,72%),hsl(calc(var(--h) + 50),80%,62%))}
.avatar--sm{width:30px;height:30px;font-size:12px}
.avatar--xl{width:96px;height:96px;font-size:36px}
.account-btn.is-user{padding:0;border-color:transparent;background:none}
.badge{display:inline-flex;align-items:center;height:28px;padding:0 12px;border-radius:999px;border:1px solid var(--line-2);font-size:13px;color:var(--fg-2);background:rgba(232,226,255,.04)}
a.badge:hover{color:var(--fg);border-color:var(--line-3)}
.err{color:#ff8a9e;font-size:14px}
.danger{color:#ff8a9e!important}
/* builder v2 */
.side-tabs{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:20px}
.side-tab{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:16px 20px;border-radius:18px;border:1px solid var(--line-2);background:rgba(232,226,255,.03);text-align:left;transition:border-color .25s,background .25s}
.side-tab b{font:800 clamp(18px,2vw,24px) var(--f-display);letter-spacing:-.02em}
.side-tab span{font:500 12px var(--f-mono);color:var(--muted)}
.side-ct.on{border-color:#5aa9ff;background:linear-gradient(120deg,rgba(90,169,255,.18),rgba(90,169,255,.04))}
.side-t.on{border-color:#e8b14a;background:linear-gradient(120deg,rgba(232,177,74,.18),rgba(232,177,74,.04))}
.side-tab:hover{border-color:var(--line-3)}
.b2-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:24px;align-items:start}
.b2-side{position:sticky;top:calc(var(--header-h) + 12px)}
.b2-actions{display:grid;gap:10px;margin-top:16px}
.b2-actions .btn{width:100%;justify-content:center;white-space:normal;height:auto;min-height:46px;padding-block:10px;text-align:center}
.b2-row{display:flex;flex-wrap:wrap;gap:6px}
.lgroup{margin-bottom:28px}
.lgroup-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:12px;gap:10px}
.lgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,190px),1fr));gap:10px}
.lcard{position:relative;display:flex;flex-direction:column;gap:8px;padding:12px;border-radius:18px;border:1px solid var(--line);background:linear-gradient(170deg,color-mix(in srgb,var(--rc) 10%,var(--raised)),var(--bg-2));transition:border-color .25s,opacity .25s}
.lcard.filled{border-color:color-mix(in srgb,var(--rc) 45%,var(--line))}
.lcard.benched{opacity:.55}
.lcard:hover{border-color:var(--line-3);opacity:1}
.lcard-top{display:flex;justify-content:space-between;align-items:center;gap:6px}
.lcard-w{font:600 13px var(--f-body)}
.eq{height:24px;padding:0 9px;border-radius:999px;border:1px solid var(--line-2);background:none;font:600 11px var(--f-body);color:var(--muted)}
.eq.on{background:#8cf0c8;color:#08201a;border-color:#8cf0c8}
.eq.fixed{display:inline-flex;align-items:center}
.lcard-art{display:grid;place-items:center;height:86px;border-radius:12px;border:1px dashed var(--line-2);background:rgba(7,6,11,.35);padding:6px}
.lcard.filled .lcard-art{border-style:solid;border-color:transparent;background:radial-gradient(60% 70% at 50% 55%,color-mix(in srgb,var(--rc) 22%,transparent),transparent)}
.lcard-art .art-svg{max-height:74px;width:92%;filter:drop-shadow(0 8px 10px rgba(0,0,0,.5));transition:transform .4s var(--ease-x)}
.lcard-art:hover .art-svg{transform:scale(1.06) rotate(-2deg)}
.lcard-foot{display:grid;gap:2px;min-height:38px}
.lcard-name{font:700 14px/1.2 var(--f-display);letter-spacing:-.01em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lcard-meta{font:400 11px var(--f-mono);color:var(--muted)}
.lcard-act{display:flex;gap:6px}
.mini-btn{flex:1;height:30px;border-radius:999px;border:1px solid var(--line-2);background:none;font:600 12px var(--f-body);display:grid;place-items:center;color:var(--fg-2);transition:background .2s,color .2s}
.mini-btn:hover{background:rgba(232,226,255,.1);color:var(--fg)}
.pick-art{display:grid;place-items:center;height:70px}
.pick-art .art-svg{max-height:62px;width:90%}
.pick.is-cur{border-color:#fff}
.pick-default .slot-plus{font-size:22px}
.editor-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px;align-items:start}
.editor-art{display:grid;place-items:center;min-height:220px;border-radius:18px;background:radial-gradient(60% 60% at 50% 55%,color-mix(in srgb,var(--rc) 24%,transparent),transparent),linear-gradient(160deg,#1c1830,#0c0a14)}
.editor-art .art-svg{width:88%}
.editor-form{display:grid;gap:14px}
.editor-form .field{display:grid;gap:6px;font-size:14px;color:var(--fg-2)}
.iq-list{list-style:none;display:grid;gap:8px;counter-reset:iq}
.iq-list li{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:14px;border:1px solid var(--line);counter-increment:iq}
.iq-list li::before{content:counter(iq);font:500 12px var(--f-mono);color:var(--muted);width:20px}
.iq-list li.done{border-color:#8cf0c8}
.iq-art{width:90px;flex:none}.iq-art .art-svg{width:100%}
.iq-t{flex:1;min-width:0}.iq-t b{display:block;font-size:14px}.iq-t small{color:var(--muted);font-size:12px}
@media (max-width:1020px){.b2-grid{grid-template-columns:1fr}.b2-side{position:static}}
@media (max-width:760px){.lgrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.lcard{padding:10px}.lcard-art{height:66px}.editor-body{grid-template-columns:1fr}.side-tab{padding:12px 14px}.iq-art{width:60px}}
/* auth */
.auth{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,460px);gap:clamp(24px,5vw,64px);align-items:center}
.auth-list{list-style:none;display:grid;gap:12px;margin-top:22px;color:var(--fg-2)}
.auth-list li{display:flex;gap:10px;align-items:center}
.auth-card{padding:clamp(20px,3vw,32px)}
.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:5px;border-radius:999px;border:1px solid var(--line-2);margin-bottom:18px}
.auth-tabs button{height:40px;border-radius:999px;border:0;background:none;font-weight:600;color:var(--muted)}
.auth-tabs button[aria-selected="true"]{background:#fff;color:#120d1c}
.auth-form{display:grid;gap:14px}
.auth-form label{display:grid;gap:6px;font-size:14px;color:var(--fg-2)}
.pw-wrap{position:relative;display:block}
.pw-wrap .input{width:100%;padding-right:70px}
.pw-show{position:absolute;right:8px;top:50%;transform:translateY(-50%);height:32px;padding:0 12px;border-radius:999px;border:1px solid var(--line-2);background:none;font-size:12px;color:var(--fg-2)}
.meter{--s:0;position:relative;display:block;height:6px;border-radius:6px;background:rgba(232,226,255,.08);margin-top:4px}
.meter i{position:absolute;inset:0 auto 0 0;width:calc(var(--s) * 20%);border-radius:6px;background:linear-gradient(90deg,#ff8a9e,#ffd36e,#8cf0c8);transition:width .3s}
.meter::after{content:attr(data-label);position:absolute;right:0;top:8px;font-size:11px;color:var(--muted)}
@media (max-width:860px){.auth{grid-template-columns:1fr}}
/* profile */
.phead{display:flex;gap:22px;align-items:center;flex-wrap:wrap}
.phead-t{flex:1;min-width:0}
.pstats{margin:24px 0}
.pstats{grid-template-columns:repeat(6,minmax(0,1fr))}
.ptabs{display:flex;gap:6px;overflow-x:auto;padding:5px;border-radius:999px;border:1px solid var(--line-2);margin-bottom:20px;scrollbar-width:none}
.ptabs button{flex:none;height:40px;padding:0 16px;border-radius:999px;border:0;background:none;font-weight:600;color:var(--muted)}
.ptabs button[aria-selected="true"]{background:#fff;color:#120d1c}
.plist{display:grid;gap:10px}
.prow{display:flex;align-items:center;gap:14px;padding:12px 14px;border-radius:18px;border:1px solid var(--line);background:linear-gradient(170deg,var(--raised),var(--bg-2));flex-wrap:wrap}
.prow-art{width:120px;flex:none;display:grid;place-items:center}.prow-art .art-svg{width:100%}.prow-art canvas{width:120px;height:64px;border-radius:10px}
.prow-t{flex:1;min-width:160px}.prow-t b{display:block;font:700 17px var(--f-display)}.prow-t small{color:var(--muted);font-size:13px}
.prow-a{display:flex;gap:6px;flex-wrap:wrap}
@media (max-width:1020px){.pstats{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:760px){.pstats{grid-template-columns:repeat(2,minmax(0,1fr))}.avatar--xl{width:72px;height:72px;font-size:28px}.prow-art{width:80px}}
/* crosshair library + config */
.xgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr));gap:12px}
.xcard{display:grid;gap:10px;padding:12px;border-radius:18px;border:1px solid var(--line);background:linear-gradient(170deg,var(--raised),var(--bg-2))}
.xcard canvas{width:100%;height:120px;border-radius:12px;display:block}
.cfg{display:grid;gap:8px}
.cfg-row{display:flex;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:12px;background:rgba(232,226,255,.04)}
.cfg-row span{color:var(--muted);font-size:14px}.cfg-row b{font-family:var(--f-mono);font-weight:500;text-align:right}
/* teammates */
.tm{display:grid;grid-template-columns:340px minmax(0,1fr);gap:24px;align-items:start}
.tm-filter{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.tm-filter label{display:grid;gap:6px;font-size:13px;color:var(--fg-2)}
.tm-list{display:grid;gap:10px}
.tm-card{display:grid;gap:10px;padding:16px;border-radius:18px;border:1px solid var(--line);background:linear-gradient(170deg,var(--raised),var(--bg-2))}
.tm-top{display:flex;gap:12px;align-items:center}.tm-top b{display:block}.tm-top small{color:var(--muted);font-size:12px}.tm-top .badge{margin-left:auto}
.tm-msg{color:var(--fg-2);font-size:15px}
@media (max-width:1020px){.tm{grid-template-columns:1fr}.tm-filter{grid-template-columns:1fr 1fr}}
details.imp summary{cursor:pointer;color:var(--fg-2);font-size:14px;padding:6px 0}
.ingen .code-box{word-break:break-all}
/* ===== v3.4 components ===== */
.card-acts{display:flex;gap:4px;flex-wrap:wrap;padding:0 12px 12px}
.card-acts button,.card-acts a{height:30px;padding:0 10px;border-radius:999px;border:1px solid var(--line-2);background:transparent;color:var(--fg-2);font-size:12px;font-weight:600;display:inline-flex;align-items:center;gap:4px;cursor:pointer}
.card-acts button:hover,.card-acts a:hover{border-color:var(--line-3);color:var(--fg);background:rgba(232,226,255,.06)}
.card-acts [aria-pressed="true"]{border-color:var(--sky);color:var(--sky)}
.cmp-tray{position:fixed;left:50%;bottom:calc(16px + env(safe-area-inset-bottom));transform:translateX(-50%);z-index:300;display:flex;gap:8px;align-items:center;flex-wrap:wrap;max-width:calc(100% - 32px);padding:10px 12px;border-radius:20px;border:1px solid var(--line-2);background:var(--raised);box-shadow:0 20px 60px rgba(0,0,0,.5)}
.cmp-tray[hidden]{display:none}
.cmp-chip{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 6px 0 12px;border-radius:999px;background:var(--bg-2);border:1px solid var(--line);font-size:13px;max-width:200px}
.cmp-chip span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cmp-chip button{width:22px;height:22px;border-radius:50%;border:0;background:rgba(232,226,255,.08);color:var(--fg)}
@media (max-width:760px){.cmp-tray{bottom:calc(76px + env(safe-area-inset-bottom))}}
.count-row{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 14px;color:var(--muted);font-size:14px}
.sel-l{display:grid;gap:6px;font-size:13px;color:var(--fg-2)}
.related-bar{display:flex;gap:8px;overflow-x:auto;padding-bottom:6px;scrollbar-width:thin}
.related-bar>*{flex:none}
/* sponsored */
.sp-card{position:relative;display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:16px 16px 16px 16px;margin:0 0 10px;border-radius:18px;border:1px dashed var(--line-3);background:var(--surface)}
.sp-label{position:absolute;top:-10px;left:14px;padding:2px 10px;border-radius:999px;background:var(--gold);color:#120d1c;font:700 11px var(--f-mono);letter-spacing:.06em;text-transform:uppercase}
.sp-logo{width:44px;height:44px;flex:none;border-radius:12px;display:grid;place-items:center;background:var(--raised-2);font:700 15px var(--f-display)}
.sp-t{flex:1;min-width:180px;display:grid;gap:2px}.sp-t span{color:var(--fg-2);font-size:14px}.sp-t small{color:var(--muted);font-size:12px}
.sp-compact{padding:14px 12px 12px}.sp-compact .sp-logo{width:36px;height:36px}
.sp-note{font-size:12px;margin:-2px 0 16px}
[data-sponsor-slot]{margin:16px 0}
/* offers */
.offers{margin-top:40px}
.off-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:18px}
.off-empty{text-align:left}
.table-wrap{overflow-x:auto;border-radius:16px;border:1px solid var(--line)}
.table-wrap table{min-width:640px;width:100%}
/* cases & collections */
.case-hero{display:grid;grid-template-columns:minmax(0,380px) minmax(0,1fr);gap:28px;align-items:center}
.case-art,.crate-art{display:grid;place-items:center}
.case-art svg,.crate-art svg{width:100%;height:auto;max-width:380px}
.hub-crate svg{width:100%;height:auto}
@media (max-width:860px){.case-hero{grid-template-columns:1fr}}
.lf-bar{display:flex;gap:10px;flex-wrap:wrap;align-items:end;margin:0 0 20px;padding:12px;border-radius:18px;border:1px solid var(--line);background:var(--surface)}
.lf-bar label{display:grid;gap:6px;font-size:13px;color:var(--fg-2);flex:1;min-width:150px}
.rgroup{margin:28px 0}
.rgroup-h{display:flex;align-items:center;gap:10px;margin:0 0 12px;font:700 20px var(--f-display)}
.rgroup-h i{width:12px;height:12px;border-radius:4px;display:inline-block}
/* finish matrix */
.mx{border-collapse:separate;border-spacing:3px;font-size:12px}
.mx th{font-weight:600;color:var(--muted);text-align:left;padding:4px 8px;white-space:nowrap}
.mx td{width:26px;height:26px;border-radius:6px;text-align:center}
.mx-on{background:rgba(73,198,255,.28)}.mx-on a{display:block;width:100%;height:100%}
.mx-off{background:rgba(232,226,255,.04)}
/* stickers db */
.stk-db{display:grid;grid-template-columns:280px minmax(0,1fr);gap:24px;align-items:start}
@media (max-width:1020px){.stk-db{grid-template-columns:1fr}}
.notice--warn{border-color:rgba(255,211,110,.45);background:rgba(255,211,110,.07)}
.b2-extra{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:28px}
@media (max-width:860px){.b2-extra{grid-template-columns:1fr}}
.ov-strip{display:grid;grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:8px}
.ov-strip a,.ov-strip div{display:grid;gap:4px;padding:6px;border-radius:12px;background:var(--bg-2);border:1px solid var(--line);font-size:11px;color:var(--muted);text-align:center}
.ov-strip .art-svg{width:100%}
.ov-bar{display:flex;height:10px;border-radius:999px;overflow:hidden;margin:12px 0 6px;background:var(--bg-2)}
.ov-bar i{display:block;height:100%}
.mine-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:10px 0;border-top:1px solid var(--line)}
.mine-row:first-child{border-top:0}.mine-row b{flex:1;min-width:120px}
/* global search */
.sr-open body{overflow:hidden}
.sr-pal{position:fixed;inset:0;z-index:600;display:grid;justify-items:center;align-items:start;padding:clamp(16px,10vh,120px) 16px 16px}
.sr-pal[hidden]{display:none}
.sr-back{position:absolute;inset:0;background:rgba(7,6,11,.72);backdrop-filter:blur(6px)}
.sr-box{position:relative;width:min(720px,100%);max-height:min(640px,calc(100vh - 32px));display:flex;flex-direction:column;border-radius:22px;border:1px solid var(--line-2);background:var(--surface);box-shadow:0 30px 90px rgba(0,0,0,.6);overflow:hidden}
.sr-in{display:flex;align-items:center;gap:10px;padding:0 14px;border-bottom:1px solid var(--line)}
.sr-in input{flex:1;height:58px;border:0;background:none;color:var(--fg);font-size:17px;outline:none;min-width:0}
.sr-esc{height:28px;padding:0 8px;border-radius:8px;border:1px solid var(--line-2);background:none;color:var(--muted);font:500 12px var(--f-mono)}
.sr-chips{display:flex;gap:6px;padding:10px 14px;overflow-x:auto;scrollbar-width:none;border-bottom:1px solid var(--line)}
.sr-chips .chip{flex:none}
.sr-list{overflow-y:auto;padding:8px;display:grid;gap:2px;align-content:start}
.sr-h{display:flex;justify-content:space-between;color:var(--muted);font-size:12px;letter-spacing:.06em;text-transform:uppercase;margin:10px 8px 8px}
.sr-list .chip-row{padding:0 8px}
.sr-note{color:var(--dim);font-size:12px;margin:10px 8px}
.sr-row{display:flex;align-items:center;gap:12px;padding:10px 10px;border-radius:12px;color:var(--fg);text-decoration:none}
.sr-row:hover,.sr-row[aria-selected="true"]{background:rgba(232,226,255,.07)}
.sr-dot{width:10px;height:10px;border-radius:3px;flex:none;background:var(--dot)}
.sr-t{flex:1;min-width:0;display:grid}.sr-t b{font-weight:600;font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sr-t small{color:var(--muted);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sr-k{flex:none;font:500 11px var(--f-mono);color:var(--muted);padding:3px 8px;border-radius:999px;border:1px solid var(--line)}
.sr-all{display:block;padding:12px 10px;color:var(--sky);font-size:14px}
.sr-foot{display:flex;gap:16px;padding:10px 14px;border-top:1px solid var(--line);color:var(--dim);font-size:12px}
.sr-foot kbd,.sr-in kbd{font:500 11px var(--f-mono);padding:1px 6px;border-radius:6px;border:1px solid var(--line-2);margin-right:3px}
@media (max-width:640px){.sr-foot{display:none}.sr-pal{padding:8px}.sr-box{max-height:calc(100vh - 16px)}}
.sr-page{padding:0;border-radius:18px;border:1px solid var(--line);background:var(--surface)}
/* community */
.comm{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:24px;align-items:start}
@media (max-width:1020px){.comm{grid-template-columns:1fr}}
.post-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));gap:14px}
.post{display:grid;grid-template-rows:auto 1fr;border-radius:18px;border:1px solid var(--line);background:var(--surface);overflow:hidden}
.post-art{display:grid;place-items:center;min-height:130px;padding:12px;background:var(--bg-2)}.post-art .art-svg{width:100%}.post-art canvas{width:100%;height:120px;border-radius:10px}
.post-b{display:grid;gap:8px;padding:14px;align-content:start}.post-b h3{font:700 18px var(--f-display)}.post-b p{color:var(--fg-2);font-size:14px}
.post-by{display:flex;align-items:center;gap:8px;color:var(--fg-2);font-size:13px;text-decoration:none}.post-by .avatar{width:28px;height:28px;font-size:11px}.post-by small{color:var(--muted)}
.post-a{display:flex;gap:6px;flex-wrap:wrap}
.mini-btn[aria-pressed="true"]{color:var(--pink);border-color:var(--pink)}
.rp-box{margin-top:10px;padding:12px;border-radius:12px;border:1px solid var(--line-2);background:var(--bg-2)}
.phead{display:flex;gap:18px;align-items:center;flex-wrap:wrap}.phead>div{flex:1;min-width:200px}
.lb-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;margin-bottom:16px}
@media (max-width:1020px){.lb-grid{grid-template-columns:1fr}}
.lb{list-style:none;display:grid;gap:4px;margin-top:12px}
.lb li{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:12px;background:rgba(232,226,255,.03)}
.lb li.me{outline:1px solid var(--sky)}
.lb li a{flex:1;color:var(--fg);text-decoration:none;font-weight:600;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lb .avatar{width:28px;height:28px;font-size:11px}
.lb-n{width:26px;text-align:right;font:600 13px var(--f-mono);color:var(--muted)}
.lb li:nth-child(-n+3) .lb-n{color:var(--gold)}
.badge--on{border-color:var(--gold);color:var(--gold)}
/* advertise + admin */
.adv{display:grid;gap:16px}
.adm-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:16px}
.adm-flags{display:grid;gap:6px;margin-top:10px;padding-left:18px;font-size:14px}
.adm-req{padding:6px 0;border-top:1px solid var(--line);font-size:13px}.adm-req:first-child{border-top:0}
[data-admin] .dt td,[data-admin] .dt th{font-size:13px;vertical-align:top}
/* feeds */
.feed{display:grid;gap:12px}
.feed-i{display:grid;gap:8px;padding:16px;border-radius:18px;border:1px solid var(--line);background:var(--surface)}
.feed-i h3{font:700 19px var(--f-display)}.feed-i p{color:var(--fg-2)}.feed-i ul,.feed-i ol{padding-left:20px;color:var(--fg-2);display:grid;gap:4px}
.src{font-size:12px;color:var(--muted)!important}
.home-banner{padding:10px 0;margin-top:var(--header-h);background:rgba(255,211,110,.1);border-bottom:1px solid rgba(255,211,110,.3);font-size:14px;text-align:center}
.home-banner[hidden]{display:none}
/* maps */
.map-top{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;align-items:center}
@media (max-width:860px){.map-top{grid-template-columns:1fr}}
.lane-svg{width:100%;height:auto;border-radius:18px;border:1px solid var(--line);background:var(--bg-2)}
.lane-svg rect{fill:var(--raised);stroke:var(--line-3)}.lane-svg rect.site{fill:rgba(255,111,181,.14);stroke:var(--pink)}
.lane-svg path{fill:none;stroke:var(--sky);stroke-width:2;stroke-dasharray:6 6}
.lane-svg text{fill:var(--fg);font:600 13px var(--f-body);text-anchor:middle}.lane-svg text.lbl{fill:var(--muted);font-size:11px}.lane-svg text.cap{fill:var(--dim);font-size:10px}
.prose-list{display:grid;gap:8px;padding-left:20px;margin-top:12px;color:var(--fg-2)}
.co-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:14px}
.co-g{padding:14px;border-radius:16px;border:1px solid var(--line);background:var(--surface)}.co-g h3{font:700 16px var(--f-display);margin-bottom:10px}
/* tracker + tools */
.tr-form{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:12px;align-items:end}
.tr-form .actions{grid-column:1/-1}
.tr-form .sr-list{position:absolute;left:0;right:0;top:100%;z-index:20;background:var(--surface);border-radius:12px;border:1px solid var(--line);padding:4px}
.tr-form .sr-list:empty{display:none}
@media (max-width:860px){.tr-form{grid-template-columns:1fr 1fr}.tr-form .field{grid-column:1/-1}}
[data-fsug]:empty{display:none}[data-fsug]{margin-top:6px;border:1px solid var(--line);border-radius:12px;padding:4px}
.sr-row{width:100%;border:0;background:none;text-align:left;cursor:pointer;font:inherit}
.cmp-bars{display:grid;gap:6px;margin-top:8px}
.cmp-bar{display:grid;grid-template-columns:110px 1fr 60px auto;gap:8px;align-items:center;font-size:13px}
.cmp-bar i{display:block;height:8px;border-radius:999px;background:var(--sky)}
.calc{padding:12px;border-radius:12px;background:var(--bg-2);border:1px solid var(--line)}
/* ===== v3.5 play tools ===== */
.g-bar{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-bottom:14px}
.g-head{display:flex;gap:20px;flex-wrap:wrap;font-size:13px;color:var(--muted);margin:0 0 10px}.g-head b{color:var(--fg)}
/* roulette */
.rt-filters{display:grid;gap:12px;margin-bottom:18px}.rt-filters .tag{margin-bottom:6px}
.rt-reel{position:relative;overflow:hidden;border-radius:22px;border:1px solid var(--line-2);background:var(--bg-2);padding:16px 0}
.rt-track{display:flex;gap:12px;padding-left:12px;will-change:transform}
.rt-cell{flex:none;width:156px;display:grid;gap:4px;padding:10px;border-radius:14px;background:var(--surface);border-bottom:3px solid var(--rc);font-size:12px;text-align:center}
.rt-cell b{font-size:12px;color:var(--muted)}.rt-cell span{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rt-cell.is-win{outline:2px solid var(--gold);box-shadow:0 0 40px rgba(255,211,110,.35)}
.rt-art .art-svg{width:100%}
.rt-mark{position:absolute;top:0;bottom:0;left:50%;width:2px;background:var(--gold);box-shadow:0 0 16px var(--gold)}
.rt-result{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:center;padding:20px;border-radius:22px;border:1px solid var(--line-2);background:linear-gradient(170deg,var(--raised),var(--bg-2));animation:rt-in .6s var(--ease-x)}
@keyframes rt-in{from{opacity:0;transform:translateY(16px) scale(.98)}}
.rt-big .art-svg{width:100%}
@media (max-width:760px){.rt-result{grid-template-columns:1fr}.rt-cell{width:120px}}
.rt-hist{display:flex;gap:8px;flex-wrap:wrap}.rt-h{width:84px;padding:6px;border-radius:10px;background:var(--surface);border-bottom:2px solid var(--rc)}.rt-h .art-svg{width:100%}
/* guess */
.g-box{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:24px;align-items:start}
@media (max-width:860px){.g-box{grid-template-columns:1fr}}
.g-stage{position:relative;border-radius:18px;overflow:hidden;background:var(--bg-2);display:grid;place-items:center;min-height:240px}
.g-art{width:100%;transition:filter .5s}.g-art .art-svg{width:100%}
.g-q{position:absolute;font:800 72px var(--f-display);color:rgba(255,255,255,.5)}
.g-side{display:grid;gap:12px}
.g-clues{list-style:none;display:grid;gap:6px}.g-clues li{display:flex;justify-content:space-between;gap:10px;padding:8px 12px;border-radius:10px;background:rgba(232,226,255,.03);color:var(--dim);font-size:14px}.g-clues li.on{color:var(--fg);background:rgba(73,198,255,.08)}.g-clues li span{color:var(--muted)}
.g-form{display:flex;gap:8px}.g-form .input{flex:1;min-width:0}
.g-reveal{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:center}@media (max-width:760px){.g-reveal{grid-template-columns:1fr}}
/* battle */
.battle{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:24px;align-items:start}@media (max-width:1020px){.battle{grid-template-columns:1fr}}
.b-arena{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:16px}
.b-card{position:relative;display:grid;gap:10px;padding:16px;border-radius:22px;border:1px solid var(--line-2);background:linear-gradient(170deg,var(--raised),var(--bg-2));color:var(--fg);text-align:left;cursor:pointer;transition:transform .25s var(--ease-x),border-color .25s}
.b-card:hover{transform:translateY(-4px);border-color:var(--rc)}.b-card.mine{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold)}
.b-art .art-svg{width:100%}.b-name small{display:block;color:var(--muted)}.b-name b{display:block;font:700 20px var(--f-display);margin-bottom:6px}
.b-bar{height:8px;border-radius:999px;background:var(--bg-2);overflow:hidden;opacity:0;transition:opacity .3s}.b-bar i{display:block;height:100%;width:0;background:var(--rc);transition:width .8s var(--ease-x)}
.b-card.done .b-bar{opacity:1}.b-pct{font-size:14px;min-height:1em}
.b-vs{position:absolute;left:50%;top:40%;transform:translate(-50%,-50%);z-index:2;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:var(--bg);border:1px solid var(--line-3);font:800 18px var(--f-display);pointer-events:none}
@media (max-width:560px){.b-arena{grid-template-columns:1fr}.b-vs{top:50%}}
.b-side{display:grid;gap:14px}.b-mini{display:block;width:100%;text-align:left;padding:8px 10px;margin-top:6px;border-radius:10px;border:1px solid var(--line);background:none;color:var(--fg);font-size:13px;cursor:pointer}.b-mini span{color:var(--muted)}.b-mini small{float:right;color:var(--muted)}
.b-sug{display:grid;gap:8px;margin-top:12px}
/* dream */
.d-sum{grid-template-columns:repeat(4,minmax(0,1fr))}.d-sum .neg{color:var(--pink)}.d-meter{grid-column:1/-1;height:10px;border-radius:999px;background:var(--bg-2);overflow:hidden}.d-meter i{display:block;height:100%;transition:width .4s}
@media (max-width:760px){.d-sum{grid-template-columns:1fr 1fr}}
.d-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,180px),1fr));gap:12px}
.d-slot{display:grid;gap:6px;padding:12px;border-radius:18px;border:1px dashed var(--line-2);background:var(--surface);font-size:13px}.d-slot.on{border-style:solid;border-bottom:3px solid var(--rc)}
.d-lab{font:600 11px var(--f-mono);color:var(--muted);text-transform:uppercase}.d-art{border:0;background:var(--bg-2);border-radius:12px;min-height:90px;display:grid;place-items:center;cursor:pointer;color:var(--muted)}.d-art .art-svg{width:100%}
.d-slot span{color:var(--fg-2)}
/* patterns */
.pe-top{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:16px}@media (max-width:860px){.pe-top{grid-template-columns:1fr}}
.p-chip{display:inline-flex;gap:6px;align-items:center;margin:2px;padding:4px 10px;border-radius:999px;border:1px solid var(--line-2);background:none;color:var(--fg);font-size:12px;cursor:pointer}.p-chip[style*="--gem"]{border-color:var(--gem);box-shadow:inset 0 0 0 999px color-mix(in srgb,var(--gem) 25%,transparent)}
.p-lab-top{display:flex;gap:14px;align-items:center;margin-bottom:12px}.p-art{width:140px}.p-art .art-svg{width:100%}
.p-seeds{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:12px;margin-bottom:10px}.p-seed{display:grid;gap:8px;padding:12px;border-radius:14px;background:var(--bg-2)}.p-seed label{display:grid;gap:6px;font-size:13px;color:var(--fg-2)}
/* sticker challenges */
.sc-head{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}.sc-sub{display:grid;gap:8px;align-content:start;min-width:220px}
.sc-art{position:relative}.sc-stk{position:absolute;left:8px;right:8px;bottom:6px;display:flex;gap:4px;justify-content:center}.sc-stk img{width:30px;height:30px;border-radius:6px;background:var(--bg)}
/* lineups */
.lu-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:14px}
.lu-card{display:grid;border-radius:18px;border:1px solid var(--line);background:var(--surface);overflow:hidden}.lu-media{aspect-ratio:16/9;display:grid;place-items:center;background:var(--bg-2)}.lu-media img{width:100%;height:100%;object-fit:cover}
.lu-body{display:grid;gap:8px;padding:14px}.lu-body h3{font:700 18px var(--f-display)}.lu-steps{padding-left:18px;display:grid;gap:4px;color:var(--fg-2);font-size:14px}
/* map quiz */
.mq-opts{display:grid;grid-template-columns:1fr 1fr;gap:10px}@media (max-width:560px){.mq-opts{grid-template-columns:1fr}}
.mq-opt{display:flex;gap:10px;align-items:center;padding:14px 16px;border-radius:14px;border:1px solid var(--line-2);background:var(--bg-2);color:var(--fg);font-size:15px;text-align:left;cursor:pointer}
.mq-opt:hover:not(:disabled){border-color:var(--sky)}.mq-opt kbd{font:500 11px var(--f-mono);padding:1px 6px;border-radius:6px;border:1px solid var(--line-2);color:var(--muted)}
.mq-opt.ok{border-color:#3ecf8e;background:rgba(62,207,142,.12)}.mq-opt.bad{border-color:var(--pink);background:rgba(255,111,181,.1)}
/* trainer */
.tr-stage{border-radius:18px;overflow:hidden;border:1px solid var(--line-2)}.tr-stage canvas{display:block;width:100%;height:auto;cursor:crosshair;aspect-ratio:16/9}
.tr-spark{display:flex;gap:4px;align-items:flex-end;height:60px;margin-top:10px}.tr-spark i{flex:1;max-width:20px;background:var(--sky);border-radius:4px 4px 0 0}
/* colours */
.c-top{display:grid;gap:14px}.c-picks,.c-pals{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:6px}
.c-pick{display:flex;align-items:center;gap:8px;padding:4px 10px 4px 4px;border-radius:999px;border:1px solid var(--line-2);background:var(--bg-2)}.c-pick input{width:34px;height:34px;border:0;padding:0;background:none;cursor:pointer}.c-pick button{border:0;background:none;color:var(--muted);cursor:pointer}
.c-pal{display:inline-flex;align-items:center;gap:0;border:1px solid var(--line-2);border-radius:999px;overflow:hidden;background:var(--bg-2);color:var(--fg-2);font-size:12px;cursor:pointer;padding:0}.c-pal i{width:20px;height:28px;display:block}.c-pal span{padding:0 10px}
.c-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,170px),1fr));gap:12px}
.c-hit{display:grid;gap:4px;padding:10px;border-radius:16px;background:var(--surface);border:1px solid var(--line);border-bottom:3px solid var(--rc);color:var(--fg);text-decoration:none;font-size:13px}.c-hit:hover{border-color:var(--rc)}.c-art .art-svg{width:100%}
.c-sw{display:flex;gap:3px}.c-sw i{width:16px;height:6px;border-radius:3px}.c-hit b{color:var(--muted);font-size:12px}.c-hit small{color:var(--sky);font:500 11px var(--f-mono)}
/* budget */
.bf-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.bf-form .full{grid-column:1/-1}@media (max-width:860px){.bf-form{grid-template-columns:1fr 1fr}}
.bf-list{display:grid;gap:8px}.bf-row{display:grid;grid-template-columns:120px minmax(0,1fr) 110px auto;gap:14px;align-items:center;padding:10px 14px;border-radius:16px;background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--rc)}
.bf-art .art-svg{width:100%}.bf-t{display:grid;gap:4px}.bf-t small{color:var(--muted)}.bf-ext{display:flex;gap:4px;flex-wrap:wrap}.mini-btn.on{border-color:var(--sky);color:var(--sky)}.bf-p{display:grid;font-size:13px}
@media (max-width:760px){.bf-row{grid-template-columns:80px minmax(0,1fr)}.bf-p{grid-column:2}}
/* daily */
.dh-top{display:grid;grid-template-columns:auto minmax(0,1fr);gap:24px;align-items:center;margin-bottom:16px}@media (max-width:760px){.dh-top{grid-template-columns:1fr}}
.dh-lv{display:flex;gap:16px;align-items:center}.dh-ring{width:96px;height:96px;border-radius:50%;display:grid;place-items:center;align-content:center;background:conic-gradient(var(--gold) calc(var(--p)*1%),var(--bg-2) 0);position:relative}.dh-ring::before{content:"";position:absolute;inset:8px;border-radius:50%;background:var(--surface)}.dh-ring b,.dh-ring span{position:relative}.dh-ring b{font:800 30px var(--f-display);line-height:1}.dh-ring span{font:600 10px var(--f-mono);color:var(--muted)}
.dh-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr));gap:12px}
.dh-card{position:relative;display:grid;gap:8px;align-content:start;padding:16px;border-radius:18px;border:1px solid var(--line);background:linear-gradient(170deg,var(--raised),var(--bg-2))}.dh-card.done{border-color:rgba(62,207,142,.5)}
.dh-card h3{font:700 18px var(--f-display)}.dh-card p{color:var(--fg-2);font-size:14px}.dh-xp{position:absolute;top:14px;right:14px;font:600 12px var(--f-mono);color:var(--gold)}.dh-st{font:600 11px var(--f-mono);color:var(--muted);text-transform:uppercase}.dh-card.done .dh-st{color:#3ecf8e}
.dh-myst{border-radius:12px;background:var(--bg-2);padding:6px}.dh-myst .art-svg{width:100%}.dh-myst.blur{filter:blur(14px) saturate(.5)}
.dh-achs{display:grid;gap:6px}.dh-ach{display:grid;grid-template-columns:24px 1fr;gap:2px 10px;padding:8px 10px;border-radius:10px;background:rgba(232,226,255,.03);color:var(--dim)}.dh-ach span{grid-row:span 2;font-size:18px}.dh-ach small{font-size:12px}.dh-ach.on{color:var(--fg)}.dh-ach.on span{color:var(--gold)}
.dh-log{list-style:none;display:grid;gap:6px;font-size:14px}.dh-log b{color:var(--gold)}
/* inventory */
.inv-steps{padding-left:18px;display:grid;gap:8px;font-size:14px;color:var(--fg-2)}
.inv-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,160px),1fr));gap:10px}.inv-item{display:grid;gap:4px;padding:10px;border-radius:14px;background:var(--surface);border-bottom:3px solid var(--rc);font-size:12px}.inv-item b{font-size:13px}.inv-item small{color:var(--muted)}.inv-art{min-height:60px;display:grid;place-items:center}.inv-art .art-svg{width:100%}
/* trade-up */
.tu-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}@media (max-width:860px){.tu-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.tu-slot{display:grid;gap:6px;padding:10px;border-radius:16px;border:1px dashed var(--line-2);background:var(--surface);font-size:12px}.tu-slot.on{border-style:solid;border-bottom:3px solid var(--rc)}
.tu-art{border:0;background:var(--bg-2);border-radius:10px;min-height:70px;display:grid;place-items:center;cursor:pointer;color:var(--muted)}.tu-art .art-svg{width:100%}.tu-f{display:grid;gap:4px;color:var(--muted)}.tu-f .input{height:34px;font-size:12px}
/* collection tracker */
.ct-list{display:grid;gap:8px}.ct-col{border-radius:16px;border:1px solid var(--line);background:var(--surface)}.ct-col summary{display:grid;grid-template-columns:minmax(0,1fr) 160px 70px;gap:12px;align-items:center;padding:12px 16px;cursor:pointer}
.ct-bar{height:8px;border-radius:999px;background:var(--bg-2);overflow:hidden}.ct-bar i{display:block;height:100%;background:#3ecf8e;transition:width .3s}
.ct-items{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,230px),1fr));gap:8px;padding:0 12px 12px}
.ct-item{display:grid;grid-template-columns:auto 64px 1fr;gap:8px;align-items:center;padding:6px 8px;border-radius:12px;background:var(--bg-2);border-left:3px solid var(--rc);font-size:12px;cursor:pointer;opacity:.6}.ct-item.on{opacity:1}.ct-art .art-svg{width:100%}.ct-item small{display:block;color:var(--muted)}
@media (max-width:560px){.ct-col summary{grid-template-columns:1fr 70px}.ct-bar{display:none}}
.b-side .pstats{grid-template-columns:repeat(3,minmax(0,1fr))}.b-side .stat b{font-size:22px}
/* ===== brand mark: crosshair "S" ===== */
.brand:hover svg,.brand svg{transform:none!important}
.sk-logo{overflow:visible;flex:none}
.skl-ring,.skl-ticks,.skl-dot,.skl-glint{transform-box:view-box;transform-origin:60px 60px}
.skl-ring{animation:skl-spin 24s linear infinite}
.skl-glint{transform:translateX(-130px) skewX(-20deg);animation:skl-gl 4.2s ease-in-out 1.4s infinite both}
.skl-dot{animation:skl-pu 2.4s ease-in-out infinite}
.skl-ticks{transition:transform .45s var(--ease-x)}
.brand:hover .skl-ticks{transform:scale(.82)}
.brand:hover .skl-ring{animation-duration:3s}
.brand:hover .skl-dot{animation-duration:.8s}
html.logo-intro .skl-ring{animation:skl-in .9s cubic-bezier(.16,1,.3,1) both,skl-spin 24s linear 1s infinite}
html.logo-intro .skl-ticks{animation:skl-tk .7s cubic-bezier(.16,1,.3,1) .35s both}
html.logo-intro .skl-s{stroke-dasharray:190;animation:skl-dr .8s cubic-bezier(.65,0,.35,1) .25s both}
@keyframes skl-spin{to{transform:rotate(360deg)}}
@keyframes skl-in{from{opacity:0;transform:scale(.6) rotate(-120deg)}}
@keyframes skl-tk{from{opacity:0;transform:scale(1.5)}}
@keyframes skl-dr{from{stroke-dashoffset:190}to{stroke-dashoffset:0}}
@keyframes skl-gl{0%,55%{transform:translateX(-130px) skewX(-20deg)}85%,100%{transform:translateX(130px) skewX(-20deg)}}
@keyframes skl-pu{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.55;transform:scale(.7)}}
@media (prefers-reduced-motion:reduce){.skl-ring,.skl-ticks,.skl-s,.skl-glint,.skl-dot{animation:none!important}.skl-glint{opacity:0}}
/* ===== real images + agents ===== */
.art-img{display:block;width:100%;height:auto;object-fit:contain}
.rimg{position:relative;display:block}.rimg>svg{display:block;width:100%;height:auto}
.rimg.has-real>svg{display:none}.rimg-img{display:block;width:100%;height:100%;object-fit:contain}
.hub-crate .rimg-img,.case-art .rimg-img{max-height:220px;margin:0 auto}
.ag-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,200px),1fr));gap:14px}
.ag-card{position:relative;display:grid;border-radius:20px;border:1px solid var(--line);background:linear-gradient(170deg,var(--raised),var(--bg-2));overflow:hidden;transition:transform .3s var(--ease-x),border-color .3s}
.ag-card:hover{transform:translateY(-4px);border-color:var(--rc)}
.ag-card[hidden]{display:none}
.ag-media{position:relative;aspect-ratio:5/6;background:radial-gradient(120% 80% at 50% 0%,color-mix(in srgb,var(--rc) 28%,transparent),transparent 70%);border-bottom:3px solid var(--rc)}
.ag-media .rimg,.ag-media .rimg-img,.ag-media .ag-fb{width:100%;height:100%}.ag-media .rimg-img{object-fit:cover;object-position:top center}
.ag-team{position:absolute;top:10px;right:10px;padding:2px 9px;border-radius:999px;font:700 11px var(--f-mono);letter-spacing:.06em}
.ag-ct{background:rgba(91,156,255,.2);color:#9fc3ff;border:1px solid rgba(91,156,255,.5)}.ag-t{background:rgba(255,179,71,.18);color:#ffd08a;border:1px solid rgba(255,179,71,.5)}
.ag-body{display:grid;gap:4px;padding:12px 14px 14px}.ag-name{font:700 18px var(--f-display)}.ag-grp{color:var(--muted);font-size:13px}
.ag-bar label{min-width:140px}
.ag-stage{aspect-ratio:5/6;max-width:440px;padding:0;overflow:hidden}.ag-stage .rimg,.ag-stage .ag-fb,.ag-stage .rimg-img{width:100%;height:100%}.ag-stage .rimg-img{object-fit:cover;object-position:top}
.ag-quote{margin-top:16px;padding:12px 16px;border-left:3px solid var(--rc,var(--pink));color:var(--fg-2);font-style:italic}
html.real-img .fb-note{display:none}
/* v3.7: case simulator / battle */
.cs-note{padding:12px 16px;border-radius:14px;border:1px solid rgba(62,207,142,.35);background:rgba(62,207,142,.07);font-size:14px;margin-bottom:16px;color:var(--fg-2)}.cs-note b{color:var(--fg)}
.cs-bar{display:flex;gap:16px;align-items:end;flex-wrap:wrap;margin-bottom:16px}
.cs-res{display:flex;gap:12px;flex-wrap:wrap}
.cs-drop{width:170px;display:grid;gap:3px;padding:12px;border-radius:16px;background:linear-gradient(170deg,var(--raised),var(--bg-2));border:1px solid var(--line-2);border-bottom:3px solid var(--rc);font-size:13px;animation:rt-in .5s var(--ease-x)}
.cs-drop b{font-size:12px;color:var(--muted)}.cs-drop span{font-weight:700}.cs-drop small{color:var(--muted);font-size:11px}.cs-drop .art-svg,.cs-drop .art-img{width:100%}
.cs-drop.sm{width:118px;padding:8px;font-size:11px;animation:none}.cs-drop.sm span{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cs-inv{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px;max-height:520px;overflow:auto}
.cs-tier{margin-bottom:18px}.cs-th{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:8px}.cs-th .mono{margin-left:auto;font-size:12px;color:var(--muted)}
.cs-items{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px}
.cs-item{display:grid;gap:4px;padding:8px;border-radius:12px;background:var(--surface);border-bottom:2px solid var(--rc);font-size:12px;text-decoration:none;color:var(--fg)}.cs-item:hover{background:var(--raised)}.cs-item .art-svg,.cs-item .art-img{width:100%}
.cb-setup{display:grid;gap:16px}.cb-row{display:flex;gap:12px;align-items:end;flex-wrap:wrap}.cb-rounds{display:flex;gap:6px;flex-wrap:wrap}.cb-rounds .badge button{background:none;border:0;color:var(--muted);cursor:pointer;font-size:16px;margin-left:4px}
.cb-names{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px}
.cb-cols{display:grid;grid-template-columns:repeat(var(--n),minmax(0,1fr));gap:12px}
.cb-col{padding:10px;border-radius:18px;border:1px solid var(--line-2);background:var(--bg-2);min-width:0;transition:border-color .3s,box-shadow .3s}.cb-col.win{border-color:var(--gold);box-shadow:0 0 30px rgba(255,211,110,.2)}
.cb-head{display:flex;justify-content:space-between;gap:8px;margin-bottom:8px}.cb-head b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cb-reel{padding:10px 0;border-radius:14px}.cb-reel .rt-cell{width:118px}
.cb-drops{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}.cb-drops .cs-drop.sm{width:calc(50% - 3px)}
@media (max-width:760px){.cb-cols{grid-template-columns:1fr 1fr}.cs-drop{width:calc(50% - 6px)}}
/* complete the look */
.lk-start{display:grid;gap:14px;justify-items:start}
.lk-base{display:grid;grid-template-columns:200px minmax(0,1fr);gap:20px;align-items:center;padding:16px;border-radius:20px;border:1px solid var(--line-2);border-left:4px solid var(--rc);background:linear-gradient(170deg,var(--raised),var(--bg-2));margin-bottom:24px}
.lk-art .art-svg,.lk-art .art-img{width:100%}
.lk-group{margin-bottom:24px}.lk-group h3{margin-bottom:10px}
.lk-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}
.lk-card{display:grid;gap:4px;align-content:start;padding:12px;border-radius:16px;background:var(--surface);border-bottom:3px solid var(--rc);font-size:13px}.lk-card.best{outline:1px solid var(--rc)}
.lk-card b{font-size:12px;color:var(--muted)}.lk-card>span{font-weight:700}.lk-card ul{margin:4px 0 6px;padding-left:16px;color:var(--muted);font-size:12px}.lk-a .art-svg,.lk-a .art-img{width:100%}
@media (max-width:600px){.lk-base{grid-template-columns:1fr}}
/* loadout builder agent + discover */
.b2-agent{display:flex;gap:16px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:12px 14px;border-radius:18px;border:1px solid var(--line-2);background:var(--bg-2);margin-bottom:16px}.b2-agent:empty{display:none}
.b2-ag-cur{display:flex;gap:12px;align-items:center}.b2-ag-cur b{display:block}.b2-ag-cur small{font-size:12px}
.b2-ag-art{display:grid;place-items:center;width:56px;height:68px;border-radius:12px;overflow:hidden;background:linear-gradient(180deg,color-mix(in srgb,var(--rc,#9b7bff) 45%,transparent),var(--bg));border:1px solid var(--line-2);flex:none}
.b2-ag-art b{font-size:18px;color:rgba(255,255,255,.8)}.b2-ag-art img{width:100%;height:100%;object-fit:cover;object-position:top}
.pick .b2-ag-art{width:100%;height:120px}
.b2-ag-act{display:flex;gap:6px;flex-wrap:wrap}
.disc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.disc-card{display:grid;gap:4px;padding:10px;border-radius:14px;background:var(--surface);border-bottom:2px solid var(--rc,var(--line-2));text-decoration:none;color:var(--fg);font-size:13px}.disc-card:hover{background:var(--raised)}.disc-art .art-svg,.disc-art .art-img{width:100%}
/* v3.8 SEO content blocks */
.quick-answer{margin:0 0 28px;padding:16px 20px;border-radius:16px;border:1px solid var(--line-2);border-left:4px solid var(--accent,#ff6fb5);background:linear-gradient(170deg,var(--raised),var(--bg-2))}
.quick-answer .tag{margin:0 0 6px}.quick-answer p:last-child{margin:0;font-size:17px;line-height:1.6;color:var(--fg)}
.seo-about h2{margin-top:0}.seo-about ol,.seo-about ul{margin:8px 0 20px}
.skin-tools a{white-space:nowrap}
/* ===================== Strikeistan AI widget ===================== */
.sksai{--ai-w:400px;font-family:var(--f-body)}
.sksai[hidden]{display:none}
.sksai-fab{position:fixed;right:24px;bottom:calc(24px + env(safe-area-inset-bottom,0px));z-index:190;width:60px;height:60px;border-radius:50%;border:0;padding:0;cursor:pointer;background:#0d0b15;color:#fff;display:grid;place-items:center;box-shadow:0 14px 40px -12px rgba(155,123,255,.7),0 0 0 1px rgba(232,226,255,.12);transition:transform .25s var(--ease-out),box-shadow .25s,bottom .25s var(--ease-out),opacity .2s}
.sksai-fab-ring{position:absolute;inset:-2px;border-radius:50%;background:conic-gradient(from var(--a,0deg),#ffd36e,#ff6fb5,#9b7bff,#49c6ff,#ffd36e);-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 2.5px),#000 calc(100% - 2px));mask:radial-gradient(farthest-side,transparent calc(100% - 2.5px),#000 calc(100% - 2px));animation:sksai-spin 6s linear infinite}
@property --a{syntax:'<angle>';inherits:false;initial-value:0deg}
@keyframes sksai-spin{to{--a:360deg}}
.sksai-fab-ico{width:30px;height:30px;display:grid;place-items:center;background:var(--grad);-webkit-background-clip:text;color:#ffb0d6;transition:transform .35s var(--ease-out)}
.sksai-fab-ico svg,.sksai-ava svg{width:100%;height:100%;display:block}
.sksai-fab:hover{transform:translateY(-3px) scale(1.04);box-shadow:0 18px 50px -12px rgba(255,111,181,.75),0 0 0 1px rgba(232,226,255,.2)}
.sksai-fab:hover .sksai-fab-ico{transform:rotate(45deg)}
.sksai-fab:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
.sksai-fab-tip{position:absolute;right:calc(100% + 12px);top:50%;transform:translate(6px,-50%);white-space:nowrap;padding:7px 12px;border-radius:10px;background:var(--raised);border:1px solid var(--line-2);color:var(--fg);font-size:13px;font-weight:600;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s var(--ease-out)}
.sksai-fab:hover .sksai-fab-tip,.sksai-fab.is-hello .sksai-fab-tip{opacity:1;transform:translate(0,-50%)}
.sksai-fab.is-hello{animation:sksai-hello 2.4s var(--ease-out) 1.2s 2}
@keyframes sksai-hello{0%,100%{transform:none}20%{transform:translateY(-6px) scale(1.06)}40%{transform:none}}
.sksai.is-open .sksai-fab .sksai-fab-tip{display:none}
body:has(.cmp-tray:not([hidden])) .sksai-fab{bottom:calc(92px + env(safe-area-inset-bottom,0px))}
.sksai-win{position:fixed;right:24px;bottom:calc(96px + env(safe-area-inset-bottom,0px));z-index:360;width:min(var(--ai-w),calc(100vw - 32px));height:min(640px,calc(100vh - 128px));height:min(640px,calc(100dvh - 128px));display:flex;flex-direction:column;border-radius:22px;background:rgba(13,11,21,.94);-webkit-backdrop-filter:blur(18px) saturate(1.3);backdrop-filter:blur(18px) saturate(1.3);box-shadow:0 30px 80px -20px rgba(0,0,0,.8),0 0 0 1px rgba(232,226,255,.1);opacity:0;transform:translateY(16px) scale(.97);transform-origin:100% 100%;transition:opacity .22s var(--ease-out),transform .28s var(--ease-out);overflow:hidden}
.sksai-win::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;background:linear-gradient(140deg,rgba(255,211,110,.55),rgba(255,111,181,.35) 35%,rgba(155,123,255,.15) 65%,rgba(73,198,255,.4));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
.sksai-win.is-in{opacity:1;transform:none}.sksai-win.no-anim{transition:none}
.sksai-win[hidden]{display:none}
.sksai-head{display:flex;align-items:center;gap:10px;padding:14px 12px 12px 16px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,rgba(255,111,181,.07),transparent)}
.sksai-ava{width:36px;height:36px;flex:none;border-radius:12px;padding:6px;color:#ffb0d6;background:radial-gradient(circle at 30% 20%,rgba(255,211,110,.25),transparent 60%),#1a1726;box-shadow:inset 0 0 0 1px rgba(232,226,255,.12)}
.sksai-id{flex:1;min-width:0;display:grid}.sksai-id b{font-family:var(--f-display);font-size:16px;letter-spacing:.01em}
.sksai-status{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted)}.sksai-status i{width:7px;height:7px;border-radius:50%;background:var(--dim)}
.sksai-status.is-on i{background:var(--ok);box-shadow:0 0 8px var(--ok)}.sksai-status.is-off i{background:#ffd36e}.sksai-status.is-wait i{background:var(--muted);animation:sksai-blink 1s infinite}
@keyframes sksai-blink{50%{opacity:.3}}
.sksai-ib{width:34px;height:34px;flex:none;border-radius:10px;border:1px solid transparent;background:transparent;color:var(--muted);cursor:pointer;display:grid;place-items:center;transition:background .15s,color .15s,border-color .15s}
.sksai-ib svg{width:18px;height:18px}.sksai-ib:hover{background:rgba(232,226,255,.07);color:var(--fg)}.sksai-ib:focus-visible{outline:2px solid var(--accent);outline-offset:1px}
.sksai-ib.is-armed{color:var(--danger);border-color:rgba(255,107,94,.5)}
.sksai-log{flex:1;overflow-y:auto;overscroll-behavior:contain;padding:16px 14px 6px;display:flex;flex-direction:column;gap:12px;scrollbar-width:thin}
.sksai-msg{display:flex;flex-direction:column;max-width:88%;animation:sksai-in .25s var(--ease-out)}
@keyframes sksai-in{from{opacity:0;transform:translateY(6px)}}
.sksai-me{align-self:flex-end;align-items:flex-end}.sksai-ai{align-self:flex-start}
.sksai-bub{padding:10px 13px;border-radius:16px;font-size:14.5px;line-height:1.55;color:var(--fg);overflow-wrap:anywhere}
.sksai-me .sksai-bub{background:linear-gradient(120deg,rgba(255,111,181,.92),rgba(155,123,255,.92));color:#fff;border-bottom-right-radius:6px}
.sksai-ai .sksai-bub{background:#1a1726;border:1px solid var(--line);border-bottom-left-radius:6px}
.sksai-msg.is-err .sksai-bub{border-color:rgba(255,107,94,.45);background:rgba(255,107,94,.08)}
.sksai-bub p{margin:0}.sksai-bub p+p,.sksai-bub ul,.sksai-bub ol{margin-top:8px}.sksai-bub ul,.sksai-bub ol{margin-bottom:0;padding-left:20px}.sksai-bub li+li{margin-top:3px}
.sksai-bub .sksai-h{font-weight:700;margin-top:8px}.sksai-bub code{font-family:var(--f-mono);font-size:12.5px;background:rgba(232,226,255,.08);padding:1px 5px;border-radius:5px}
.sksai-bub a{color:#ffb0d6;text-decoration:underline;text-underline-offset:2px}.sksai-me .sksai-bub a{color:#fff}
.sksai-meta{font-size:11px;color:var(--dim);margin:4px 4px 0}
.sksai-chips,.sksai-sugg{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.sksai-sugg{padding:0 14px 10px;margin:0}.sksai-sugg[hidden]{display:none}
.sksai-chip{border:1px solid var(--line-2);background:rgba(232,226,255,.04);color:var(--fg-2);border-radius:999px;padding:6px 11px;font:500 12.5px var(--f-body);cursor:pointer;text-align:left;transition:border-color .15s,background .15s,color .15s}
.sksai-chip:hover{border-color:var(--accent-line);background:var(--accent-soft);color:var(--fg)}.sksai-chip:focus-visible{outline:2px solid var(--accent)}
.sksai-links{display:grid;gap:6px;margin-top:8px;width:100%}
.sksai-link{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 11px;border-radius:12px;border:1px solid var(--line-2);background:rgba(73,198,255,.05);color:var(--fg);font-size:13px;font-weight:600;text-decoration:none;transition:border-color .15s,background .15s}
.sksai-link svg{width:16px;height:16px;flex:none;color:var(--teal)}.sksai-link:hover{border-color:rgba(73,198,255,.5);background:rgba(73,198,255,.1)}
.sksai-typing .sksai-bub{display:flex;gap:5px;padding:13px 14px}.sksai-typing i{width:7px;height:7px;border-radius:50%;background:var(--muted);animation:sksai-dot 1.1s infinite}
.sksai-typing i:nth-child(2){animation-delay:.15s}.sksai-typing i:nth-child(3){animation-delay:.3s}
@keyframes sksai-dot{0%,80%,100%{opacity:.25;transform:none}40%{opacity:1;transform:translateY(-3px)}}
.sksai-form{display:flex;align-items:flex-end;gap:8px;margin:0 12px;padding:8px;border-radius:16px;border:1px solid var(--line-2);background:#100e18;transition:border-color .15s}
.sksai-form:focus-within{border-color:var(--accent-line)}
.sksai-form textarea{flex:1;min-height:24px;max-height:120px;resize:none;border:0;background:transparent;color:var(--fg);font:15px/1.5 var(--f-body);padding:4px 6px;outline:none}
.sksai-form textarea::placeholder{color:var(--dim)}
.sksai-send{width:38px;height:38px;flex:none;border:0;border-radius:12px;background:var(--grad);color:#160d1f;cursor:pointer;display:grid;place-items:center;transition:transform .15s,opacity .15s}
.sksai-send svg{width:18px;height:18px}.sksai-send:hover{transform:scale(1.06)}.sksai-form.is-busy .sksai-send{opacity:.45;pointer-events:none}
.sksai-foot{margin:0;padding:8px 16px 12px;font-size:11px;line-height:1.4;color:var(--dim)}.sksai-foot a{color:var(--muted)}
@media (max-width:760px){
  .sksai-fab{right:14px;bottom:calc(86px + env(safe-area-inset-bottom,0px));width:54px;height:54px}
  body:has(.cmp-tray:not([hidden])) .sksai-fab{bottom:calc(150px + env(safe-area-inset-bottom,0px))}
  .sksai-fab-tip{display:none}
  .sksai.is-open .sksai-fab{opacity:0;pointer-events:none}
  .sksai-win{inset:0;width:100%;height:100%;border-radius:0;padding-bottom:env(safe-area-inset-bottom,0px);transform:translateY(24px)}
  .sksai-win::before{display:none}
  .sksai-head{padding-top:calc(12px + env(safe-area-inset-top,0px))}
  .sksai-form textarea{font-size:16px}
}
@media (prefers-reduced-motion:reduce){.sksai-fab-ring,.sksai-fab.is-hello{animation:none}.sksai-win,.sksai-msg{transition:none;animation:none}}
.sksai-bub ul+p,.sksai-bub ol+p{margin-top:8px}
/* cookie notice */
.sks-cookie{position:fixed;left:24px;bottom:calc(24px + env(safe-area-inset-bottom,0px));z-index:350;width:min(440px,calc(100vw - 120px));padding:16px 18px;border-radius:18px;background:rgba(19,17,29,.96);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--line-2);box-shadow:0 24px 60px -20px rgba(0,0,0,.8);color:var(--fg-2);font-size:14px;line-height:1.5;animation:sksai-in .35s var(--ease-out)}
.sks-cookie p{margin:0}.sks-cookie b{color:var(--fg)}
.sks-cookie-act{display:flex;gap:8px;justify-content:flex-end;margin-top:12px;flex-wrap:wrap}
.sks-cookie.is-out{opacity:0;transform:translateY(10px);transition:opacity .25s,transform .25s}
@media (max-width:760px){
  .sks-cookie{left:10px;right:10px;width:auto;bottom:calc(84px + env(safe-area-inset-bottom,0px));font-size:13.5px;padding:14px}
  body:has(.sks-cookie) .sksai-fab{bottom:calc(96px + var(--ck-h,190px) + env(safe-area-inset-bottom,0px))}
  body:has(.sks-cookie) .cmp-tray{bottom:calc(92px + var(--ck-h,190px) + env(safe-area-inset-bottom,0px))}
}
/* ===================== v4.0 company / legal / support pages ===================== */
.doc-wrap{padding-top:var(--s-4)}
.doc-grid{display:grid;grid-template-columns:240px minmax(0,1fr);gap:56px;align-items:start}
.doc-toc{position:sticky;top:calc(var(--header-h) + 28px)}
.doc-toc-h,.doc-toc summary{font:500 12px/1 var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);cursor:pointer;list-style:none;margin-bottom:14px}
.doc-toc summary::-webkit-details-marker{display:none}
.doc-toc ol{list-style:none;margin:0;padding:0;display:grid;gap:2px;border-left:1px solid var(--line-2)}
.doc-toc a{display:block;padding:6px 0 6px 14px;margin-left:-1px;border-left:2px solid transparent;color:var(--fg-2);font-size:14px;line-height:1.35;text-decoration:none;transition:color .15s,border-color .15s}
.doc-toc a:hover,.doc-toc a:focus-visible{color:var(--fg);border-left-color:var(--accent)}
.doc{max-width:760px}.doc-meta{font:400 13px var(--f-mono);color:var(--muted);margin:0 0 20px}
.doc-draft{margin-bottom:28px}
.doc-sec{scroll-margin-top:calc(var(--header-h) + 24px);padding-top:8px}.doc-sec+.doc-sec{margin-top:8px}
.doc-sec h2{margin-top:28px}.doc .sk-form{margin-top:12px}
.doc table{width:100%;border-collapse:collapse;font-size:14.5px;margin:12px 0}.doc th,.doc td{text-align:left;padding:9px 10px;border-top:1px solid var(--line-2);vertical-align:top}.doc thead th{color:var(--fg);font-weight:600;border-top:0}
.legal-todo{background:rgba(255,211,110,.12);color:#ffd36e;border:1px dashed rgba(255,211,110,.6);border-radius:6px;padding:1px 6px;font-weight:600;font-size:.92em}
.legal-review{display:inline-block;vertical-align:middle;margin-left:4px;padding:1px 8px;border-radius:999px;font:600 11px/1.6 var(--f-body);letter-spacing:.02em;color:#9b7bff;border:1px solid rgba(155,123,255,.5);background:rgba(155,123,255,.1);cursor:help}
.doc-toc-h{margin:0 0 14px}.doc-toc-m{display:none}
@media (max-width:900px){.doc-grid{grid-template-columns:1fr;gap:20px}.doc-toc{position:static}.doc-toc-d{display:none}.doc-toc-m{display:block;border:1px solid var(--line-2);border-radius:14px;padding:12px 14px}.doc-toc-m summary{margin:0}.doc-toc-m[open] summary{margin-bottom:10px}}
/* forms */
.sk-form .ff{display:grid;gap:6px;align-content:start}.sk-form label.check{display:flex;align-items:flex-start;gap:10px;font-size:14.5px;line-height:1.5}.sk-form label.check input{margin-top:4px;flex:none}.sk-form .ff.full{grid-column:1/-1}.sk-form .ff>label:not(.check){font-size:14px;color:var(--fg-2);font-weight:600}
.sk-form .ff-hint{margin:0;font-size:12.5px;color:var(--muted)}.sk-form .ff-err{margin:0;font-size:13px;color:var(--danger)}
.sk-form [aria-invalid="true"]{border-color:var(--danger)!important;box-shadow:0 0 0 3px rgba(255,107,94,.15)}
.sk-form .ff-hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.sk-form .ff-note{font-size:13px;margin-top:14px}.sk-form textarea.input{height:auto;padding:12px 14px;line-height:1.5}
.sk-form-status{margin-top:16px;padding:14px 16px;border-radius:14px;border:1px solid var(--line-2);font-size:14.5px}.sk-form-status p{margin:0}.sk-form-status p+p{margin-top:8px}
.sk-form-status.is-ok{border-color:rgba(62,207,142,.5);background:rgba(62,207,142,.08)}.sk-form-status.is-err{border-color:rgba(255,107,94,.5);background:rgba(255,107,94,.07)}.sk-form-status.is-warn{border-color:rgba(255,211,110,.5);background:rgba(255,211,110,.07)}
.sk-form-status .actions{display:flex;gap:8px;flex-wrap:wrap}
/* contact / support / features */
.contact-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:32px;align-items:start}
.contact-side{display:grid;gap:14px}.contact-mail{font:700 clamp(18px,2vw,22px) var(--f-display);margin:8px 0}.contact-mail a{color:var(--fg);text-decoration:none;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.contact-links{list-style:none;padding:0;margin:8px 0 0;display:grid;gap:8px;font-size:14.5px;color:var(--fg-2)}
.feat-wrap{display:grid;gap:40px}.feat-sec h2{margin-bottom:14px}
.feat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px}
.feat-card{display:grid;gap:6px;align-content:start;padding:16px 18px;border-radius:16px;border:1px solid var(--line-2);background:linear-gradient(170deg,var(--raised),var(--bg-2));color:var(--fg);text-decoration:none;transition:transform .2s var(--ease-out),border-color .2s,box-shadow .2s}
.feat-card b{font-size:15.5px}.feat-card span{font-size:13.5px;color:var(--muted);line-height:1.45}
.feat-card:hover,.feat-card:focus-visible{transform:translateY(-2px);border-color:var(--accent-line);box-shadow:0 14px 40px -24px rgba(255,111,181,.6)}
.sup-grid{margin-bottom:36px}.sup-cols{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:32px;align-items:start}
@media (max-width:860px){.contact-grid,.sup-cols{grid-template-columns:1fr}}
/* footer with five link groups */
@media (min-width:1101px){.footer-grid.footer-grid--6{grid-template-columns:1.25fr repeat(5,minmax(0,1fr));gap:28px}}
@media (min-width:761px) and (max-width:1100px){.footer-grid.footer-grid--6{grid-template-columns:repeat(3,minmax(0,1fr))}.footer-grid.footer-grid--6>div:first-child{grid-column:1/-1}}
.footer-mail{margin-top:12px;font-size:14px}

/* ===== v5.0 CMS: articles, news listings, editor blocks, announcement bar ===== */
.announce{position:relative;z-index:180;font-size:14px;border-bottom:1px solid var(--line-2);background:linear-gradient(90deg,rgba(255,111,181,.16),rgba(73,198,255,.12))}
.announce--info{background:rgba(73,198,255,.12)}.announce--warn{background:rgba(255,211,110,.14)}
.announce p{margin:0;padding:9px 0;text-align:center;color:var(--fg)}
.doc-grid--single{grid-template-columns:minmax(0,1fr);max-width:820px;margin-inline:auto}
.cms-byline{margin-top:18px;font:500 13px/1.6 var(--f-mono);letter-spacing:.04em;color:var(--muted)}
.cms-prose{font-size:17px;line-height:1.75}
.cms-prose img{max-width:100%;height:auto;border-radius:var(--r-md,14px)}
.cms-prose figure{margin:28px 0}.cms-prose figcaption{margin-top:8px;font-size:13px;color:var(--muted)}
.cms-prose blockquote{margin:24px 0;padding:6px 0 6px 20px;border-left:2px solid var(--accent);color:var(--fg-2);font-style:italic}
.cms-prose table{width:100%;border-collapse:collapse;margin:24px 0;font-size:15px}.cms-prose th,.cms-prose td{padding:10px 12px;border-bottom:1px solid var(--line-2);text-align:left}
.cms-prose pre{overflow:auto;padding:16px;border-radius:12px;background:var(--bg-2);border:1px solid var(--line)}
.cms-prose iframe{width:100%;aspect-ratio:16/9;height:auto;border:0;border-radius:14px}
.cms-hero{margin:0 0 28px}.cms-hero img{width:100%;aspect-ratio:16/9;object-fit:cover}
.tldr,.callout{margin:0 0 28px;padding:18px 20px;border:1px solid var(--accent-line);border-radius:16px;background:var(--accent-soft)}
.tldr-h{margin:0 0 8px;font:600 12px/1 var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}
.tldr ul{margin:0;padding-left:20px}.tldr li+li{margin-top:6px}
.callout--info{border-color:rgba(73,198,255,.5);background:rgba(73,198,255,.08)}.callout--warn{border-color:rgba(255,211,110,.5);background:rgba(255,211,110,.08)}.callout--tip{border-color:rgba(120,230,170,.45);background:rgba(120,230,170,.07)}
.cms-faq{margin-top:40px}.cms-faq h2{margin-bottom:16px}
.cms-author{margin-top:40px;padding:20px;border:1px solid var(--line-2);border-radius:16px;background:var(--bg-2)}.cms-author p{margin:6px 0 0;color:var(--fg-2);font-size:15px}
.cms-tags{margin-top:28px;display:flex;flex-wrap:wrap;gap:8px}.cms-tags .chip,.cms-cats .chip{display:inline-flex;align-items:center;height:30px;padding:0 12px;font-size:13px;border:1px solid var(--line-2)}
.cms-cats{margin-top:22px;display:flex;flex-wrap:wrap;gap:8px}
.cms-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}
.cms-card{display:flex;flex-direction:column;border:1px solid var(--line-2);border-radius:18px;overflow:hidden;background:linear-gradient(170deg,var(--raised),var(--bg-2));transition:transform .25s,border-color .25s}
.cms-card:hover{transform:translateY(-3px);border-color:var(--accent-line)}
.cms-card-img{display:block;aspect-ratio:16/9;background:radial-gradient(120% 120% at 20% 0%,rgba(255,111,181,.25),transparent 60%),radial-gradient(120% 120% at 100% 100%,rgba(73,198,255,.2),transparent 60%),var(--bg-2)}
.cms-card-img img{width:100%;height:100%;object-fit:cover;display:block}
.cms-card-body{display:grid;gap:8px;padding:18px 18px 22px}.cms-card-body small{font:500 12px/1 var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.cms-card-body b{font:700 20px/1.25 var(--f-display);color:var(--fg)}.cms-card-body span{color:var(--fg-2);font-size:15px;line-height:1.55}
.cms-pager{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:36px;color:var(--muted);font-size:14px}
.cms-related{padding-top:0}
.footer-social{display:flex;flex-wrap:wrap;gap:6px 12px;margin-top:10px;font-size:14px}
@media (max-width:860px){.cms-prose{font-size:16px}}

/* ---------- v5.2 live prices ---------- */
.pr-card{display:grid;gap:1px;margin:4px 0 0;padding:7px 9px;border-radius:10px;background:rgba(62,207,142,.07);border:1px solid rgba(62,207,142,.18);position:relative;z-index:2}
.pr-card .pr-range{font:600 14px var(--f-mono);font-variant-numeric:tabular-nums;color:var(--fg);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pr-card .pr-range i{font-style:normal;color:var(--muted)}
.pr-card .pr-sub{font-size:11.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pr-card .pr-sub b{color:var(--fg-2);font-weight:600}
.pr-card.pr-na{background:transparent;border-style:dashed;border-color:var(--line);font-size:11.5px;color:var(--dim)}
.pr-in{display:inline-grid;gap:1px;line-height:1.25}.pr-in b{font:600 13px var(--f-mono);color:var(--fg)}.pr-in small{font-size:11px;color:var(--muted)}.pr-in.pr-na{font-size:12px;color:var(--dim)}
.sr-pr{margin-left:auto;padding:0 10px;text-align:right;flex:none}.sr-pr .pr-in b{font-size:12px}
.pick-pr{display:block;margin-top:2px}.pick-pr .pr-in b{font-size:11.5px}
.pr-cur select{height:34px;padding:0 28px 0 10px;border-radius:10px;border:1px solid var(--line-2);background:var(--raised);color:var(--fg);font:500 13px var(--f-mono)}
.pr-range-f{display:flex;gap:8px;align-items:center}.pr-range-f .input{height:40px;min-width:0}
.pr-hero{margin-top:24px}
.pr-hero-in{display:flex;flex-wrap:wrap;gap:14px 28px;align-items:center;padding:18px 20px;border-radius:18px;border:1px solid rgba(62,207,142,.25);background:linear-gradient(135deg,rgba(62,207,142,.08),rgba(255,111,181,.05))}
.pr-hero-in>div{display:grid;gap:2px;min-width:0}.pr-hero-in small{font-size:12px;color:var(--muted)}.pr-hero-in b{font:700 22px var(--f-mono);font-variant-numeric:tabular-nums}.pr-hero-in span{font-size:13px;color:var(--fg-2)}
.pr-panel{margin:var(--s-6,48px) 0 0;display:grid;gap:18px}
.pr-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.pr-grid{display:grid;grid-template-columns:minmax(220px,300px) minmax(0,1fr);gap:20px;align-items:start}
@media (max-width:860px){.pr-grid{grid-template-columns:1fr}}
.pr-side{display:grid;gap:12px;position:sticky;top:calc(var(--header-h,64px) + 12px)}
@media (max-width:860px){.pr-side{position:static}}
.pr-types,.pr-tabs{display:flex;gap:4px;padding:4px;border-radius:14px;background:var(--surface);border:1px solid var(--line)}
.pr-types button,.pr-tabs button{flex:1;min-height:38px;border:0;border-radius:10px;background:transparent;color:var(--muted);font:600 13px var(--f-body);letter-spacing:.04em;cursor:pointer}
.pr-types button[aria-selected=true],.pr-tabs button[aria-selected=true]{background:var(--raised-2);color:var(--fg)}
.pr-wears{display:grid;border-radius:16px;overflow:hidden;border:1px solid var(--line);background:var(--surface)}
.pr-wear{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:12px 14px;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--fg);text-align:left;cursor:pointer;font:inherit}
.pr-wear:last-child{border-bottom:0}.pr-wear:hover{background:var(--raised)}.pr-wear.on{background:var(--raised-2)}
.pr-w-tag{display:grid;place-items:center;width:34px;height:30px;border-radius:8px;background:var(--raised-2);font:700 11px var(--f-mono);color:var(--accent)}
.pr-w-n{display:grid;min-width:0}.pr-w-n b{font-size:14px;font-weight:600}.pr-w-n small{font:400 11px var(--f-mono);color:var(--muted)}
.pr-w-p{font:600 15px var(--f-mono);font-variant-numeric:tabular-nums;white-space:nowrap}
.pr-main{display:grid;gap:14px;min-width:0}
.pr-variant{margin:0;font-size:13px;color:var(--fg-2);overflow-wrap:anywhere}
.pr-sum{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
@media (max-width:640px){.pr-sum{grid-template-columns:repeat(2,minmax(0,1fr))}}
.pr-sum>div{display:grid;gap:2px;padding:12px 14px;border-radius:14px;background:var(--surface);border:1px solid var(--line);min-width:0}
.pr-sum small{font-size:12px;color:var(--muted)}.pr-sum b{font:700 19px var(--f-mono);font-variant-numeric:tabular-nums}.pr-sum span{font-size:12px;color:var(--fg-2);overflow-wrap:anywhere}.pr-sum i{font-style:normal;color:var(--muted)}
.pr-list{display:grid;gap:10px}
.pr-offer{position:relative;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,.8fr) minmax(0,1fr) auto;gap:14px;align-items:center;padding:16px 18px;border-radius:16px;background:var(--surface);border:1px solid var(--line)}
@media (max-width:640px){.pr-offer{grid-template-columns:1fr 1fr;padding:14px}.pr-o-mk{grid-column:1/-1}.pr-o-go{grid-column:1/-1;justify-content:center}}
.pr-offer.is-best{border-color:rgba(62,207,142,.55);box-shadow:0 0 0 1px rgba(62,207,142,.25) inset}
.pr-offer.is-stale{opacity:.6}
.pr-best{position:absolute;top:-1px;left:-1px;padding:3px 10px;border-radius:16px 0 10px 0;background:var(--ok);color:#06140d;font:700 11px var(--f-body);letter-spacing:.03em}
.pr-o-mk{display:flex;gap:12px;align-items:center;min-width:0}.pr-o-mk>div{display:grid;min-width:0}.pr-o-mk b{font-size:15px}.pr-o-mk small{font-size:12px;color:var(--muted);overflow-wrap:anywhere}
.pr-logo{flex:none;width:34px;height:34px;border-radius:10px;object-fit:contain;background:var(--raised-2)}
.pr-mono{display:grid;place-items:center;font:700 12px var(--f-mono);color:var(--fg-2);border:1px solid var(--line-2)}
.pr-o-n,.pr-o-p{display:grid;gap:1px;min-width:0}.pr-o-n small,.pr-o-p small{font-size:12px;color:var(--muted)}.pr-o-n b{font:600 15px var(--f-mono)}.pr-o-p b{font:700 20px var(--f-mono);font-variant-numeric:tabular-nums}
.pr-warn{color:var(--warn)!important}
.pr-o-go{white-space:nowrap;letter-spacing:.04em}
.pr-sps{display:grid;gap:10px}
.pr-sp{border:1px solid var(--accent-line);background:linear-gradient(135deg,rgba(255,111,181,.08),var(--surface) 60%);padding-top:26px}
.pr-sp-label{position:absolute;top:-1px;left:-1px;padding:3px 12px;border-radius:16px 0 10px 0;background:var(--accent);color:var(--accent-ink);font:700 11px var(--f-body);letter-spacing:.04em}
.pr-sp-compact{grid-template-columns:minmax(0,1fr) auto;margin-bottom:10px}
.pr-note{margin:0;font-size:12px;color:var(--muted)}
.pr-disc{margin:0;font-size:12px;line-height:1.55;color:var(--dim)}
.pr-partner{display:flex;gap:16px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:18px 20px;border-radius:16px;border:1px dashed var(--line-3);background:var(--bg-2)}
.pr-partner>div{display:grid;gap:4px;max-width:640px}.pr-partner span{font-size:14px;color:var(--fg-2)}
section.pr-partner{display:flex}
.pr-hist{display:grid;gap:10px;padding:16px 18px;border-radius:16px;background:var(--surface);border:1px solid var(--line)}
.pr-hist-h{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.pr-chgs{display:flex;gap:8px}.pr-chg{display:grid;padding:6px 10px;border-radius:10px;background:var(--raised);min-width:72px}.pr-chg small{font-size:11px;color:var(--muted)}.pr-chg b{font:600 14px var(--f-mono)}.pr-chg.up b{color:var(--ok)}.pr-chg.down b{color:var(--danger)}
.pr-chart{width:100%;height:160px;display:block}.pr-chart-l{fill:none;stroke:var(--ok);stroke-width:2;vector-effect:non-scaling-stroke}.pr-chart-a{fill:rgba(62,207,142,.1)}
.pr-chart-x{display:flex;justify-content:space-between;font:400 11px var(--f-mono);color:var(--muted)}
.pr-rec{font-size:12px;margin:0}
.pr-best-s{display:inline-block;padding:1px 7px;border-radius:999px;background:rgba(62,207,142,.15);color:var(--ok);font-size:11px;font-weight:700}
.pr-board{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,380px),1fr));gap:20px}
.pr-board>div{display:grid;gap:6px;align-content:start}.pr-board h3{margin:0 0 6px}
.pr-brow{display:flex;gap:10px;align-items:center;padding:10px 12px;border-radius:12px;background:var(--surface);border:1px solid var(--line);color:inherit;text-decoration:none}
.pr-brow:hover{border-color:var(--line-3)}.pr-b-n{display:grid;min-width:0;flex:1}.pr-b-n b{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pr-b-n small,.pr-b-p small{font-size:11.5px;color:var(--muted)}
.pr-b-p{display:grid;text-align:right}.pr-b-p b{font:600 13px var(--f-mono);white-space:nowrap}
.skin-hero>*{min-width:0}
.skin-tools{overflow-wrap:anywhere}
@media (max-width:640px){.pr-offer.is-best,.pr-offer.pr-sp{padding-top:30px}}
.pr-card .pr-sub{white-space:normal}
.cmp-art{width:150px;max-width:100%;aspect-ratio:4/3;display:grid;place-items:center}.cmp-art img,.cmp-art svg{max-width:100%;max-height:100%}.cmp-table td{vertical-align:top;min-width:180px}
/* v5.3 budget finder */
.bf-budget{display:grid;gap:12px}.bf-b-top{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.bf-b-val{display:flex;align-items:center;gap:8px}.bf-b-val span{font:600 14px var(--f-mono);color:var(--muted)}.bf-b-val .input{width:140px;height:46px;font-size:20px;font-weight:700}
.bf-quick .chip{min-width:56px}
.bf-badge{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--accent);color:var(--accent-ink);font-size:11px;margin-left:4px}
.bf-row{grid-template-columns:96px minmax(0,1fr) auto auto!important}
@media (max-width:640px){.bf-row{grid-template-columns:72px minmax(0,1fr)!important}.bf-row .bf-p,.bf-row .bf-acts{grid-column:2}}
.bf-acts{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.bf-e{font:500 11px var(--f-mono);cursor:default}
.bf-sum{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:12px}
.bf-sum>div{display:grid;gap:2px}.bf-sum b{font:700 22px var(--f-mono)}.bf-sum span{font-size:12px;color:var(--muted)}
.bf-bar{grid-column:1/-1;height:8px;border-radius:999px;background:var(--raised-2);overflow:hidden}.bf-bar i{display:block;height:100%;background:var(--ok);transition:width .3s}
.bf-lo{display:grid;gap:8px}
.bf-lrow{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:14px;align-items:center;padding:14px 16px;border-radius:14px;background:var(--surface);border:1px solid var(--line)}
@media (max-width:640px){.bf-lrow{grid-template-columns:1fr}}
.bf-alt{margin-top:6px;display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.lcard-pr{display:block;font-size:12px;margin-top:2px}
/* v5.3 colour matcher */
.c-swatches{display:flex;flex-wrap:wrap;gap:6px}.c-swb{width:26px;height:26px;border-radius:8px;border:1px solid var(--line-2);cursor:pointer}.c-swb:hover{transform:scale(1.12)}
.c-pal span{font-size:11px;color:var(--muted);margin-left:4px}
.c-pick small{font-size:10px;color:var(--accent);margin-left:4px}
.c-hit{display:grid;gap:8px;padding:12px;border-radius:16px;background:var(--surface);border:1px solid var(--line)}
.c-hit .c-art{display:grid;place-items:center;aspect-ratio:4/3}.c-meta{display:grid;gap:4px}.c-meta b{font-size:14px}
.c-sw{display:flex;gap:4px;align-items:center;flex-wrap:wrap}.c-sw i{width:18px;height:18px;border-radius:6px;border:1px solid var(--line-2)}
.c-acts{display:flex;gap:6px;flex-wrap:wrap}.c-pr{font-size:13px}
.c-lo-list{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}.c-lo-i{display:inline-flex;gap:6px;align-items:center;padding:6px 10px;border-radius:10px;background:var(--raised);font-size:13px}
.st-val{list-style:none;padding:0;margin:8px 0 0;display:grid;gap:4px;font-size:13px}.st-val li{display:flex;justify-content:space-between;gap:8px}
/* v5.3 loadouts + crafts */
.lo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:14px}
.lo-card{display:grid;gap:10px;padding:14px;border-radius:18px;background:var(--surface);border:1px solid var(--line);color:inherit;text-decoration:none;transition:border-color .2s,transform .2s}.lo-card:hover{border-color:var(--line-3);transform:translateY(-2px)}
.lo-card-art{display:grid;grid-template-columns:1fr 1fr;gap:6px;aspect-ratio:16/9;align-items:center}.lo-card-art img{width:100%;height:100%;object-fit:contain}
.lo-card-b h3{margin:6px 0 2px;font-size:17px}.lo-card-p{margin:6px 0 0;font-size:14px}
.lo-total{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:14px}.lo-sum{font:700 24px var(--f-mono);margin:2px 0 0}
.lo-theme{display:inline-flex;gap:8px;align-items:center;font-size:14px;color:var(--fg-2)}.lo-theme i{width:16px;height:16px;border-radius:5px}
.lo-items{display:grid;gap:8px}.lo-item{display:grid;grid-template-columns:120px minmax(0,1fr) auto auto;gap:14px;align-items:center;padding:10px 14px;border-radius:14px;background:var(--surface);border:1px solid var(--line)}
@media (max-width:640px){.lo-item{grid-template-columns:80px minmax(0,1fr)}.lo-item .lo-p,.lo-item .mini-btn{grid-column:2}}
.lo-art img{width:100%;aspect-ratio:4/3;object-fit:contain}.lo-t{display:grid;gap:2px;min-width:0}
.cr-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:14px}
.cr-card{display:grid;border-radius:18px;background:var(--surface);border:1px solid var(--line);overflow:hidden}
.cr-art{position:relative;aspect-ratio:16/9;background:radial-gradient(circle at 50% 60%,color-mix(in srgb,var(--rc) 25%,transparent),transparent 70%)}.cr-w{position:absolute;inset:8% 4%;width:92%;height:84%;object-fit:contain}
.cr-s{position:absolute;bottom:22%;width:15%;aspect-ratio:1;object-fit:contain;filter:drop-shadow(0 2px 4px rgba(0,0,0,.5))}
.cr-b{display:grid;gap:4px;padding:14px}.cr-b h3{margin:4px 0 0}.cr-st{font-size:13px;color:var(--fg-2);margin:0}.cr-val{margin:6px 0}
/* v5.3 crosshair generator */
.xh2{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(280px,1fr);gap:18px;align-items:start}@media (max-width:900px){.xh2{grid-template-columns:1fr}}
.xh2-left{display:grid;gap:12px}
.xh2-stage{position:relative;aspect-ratio:16/10;border-radius:18px;overflow:hidden;border:1px solid var(--line)}.xh2-stage canvas{width:100%;height:100%;display:block}
.xh2-stage[data-bg=dust]{background:linear-gradient(180deg,#c9b48a 0,#a68b5b 55%,#7d6440 100%)}.xh2-stage[data-bg=sky]{background:linear-gradient(180deg,#9ec9ef,#dbeaf5 60%,#b9a27a 61%)}
.xh2-stage[data-bg=dark]{background:#14161a}.xh2-stage[data-bg=light]{background:#e9e7e2}.xh2-stage[data-bg=green]{background:linear-gradient(180deg,#6e8d4a,#46602c)}
.xh2-style{position:absolute;left:12px;top:10px;padding:3px 10px;border-radius:999px;background:rgba(0,0,0,.45);color:#fff;font-size:12px}
.xh2-bar{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}
.xh2-out{display:grid;gap:10px}.xh2-code{display:block;padding:12px;border-radius:12px;background:var(--bg-2);font:600 14px var(--f-mono);overflow-wrap:anywhere;user-select:all}
.xh2-cmds{list-style:none;padding:0;margin:8px 0 0;display:grid;gap:4px;max-height:280px;overflow:auto}.xh2-cmds li{display:flex;justify-content:space-between;gap:8px;align-items:center;font-size:12px}
.xh2-save{display:flex;gap:8px}.xh2-saved{list-style:none;padding:0;margin:0;display:grid;gap:4px;font-size:13px}
.xh2-form{display:grid;gap:12px}.xh2-row{display:flex;gap:10px;flex-wrap:wrap;align-items:end}.xh2-row .input{width:76px}.xh2-form input[type=color]{width:64px;height:40px;border:1px solid var(--line-2);border-radius:10px;background:var(--bg-2)}
.xh2-form fieldset{display:grid;gap:10px;border:1px solid var(--line);border-radius:14px;padding:12px}
.px-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));gap:12px;margin-top:12px}
.px-card{display:grid;border-radius:16px;background:var(--surface);border:1px solid var(--line);overflow:hidden}.px-card.is-old{opacity:.75}
.px-card canvas{width:100%;height:120px;display:block;background:linear-gradient(180deg,#c9b48a,#8a7048)}
.px-b{display:grid;gap:4px;padding:12px}.px-b h3{margin:0}.px-s{font-size:13px;margin:0}.px-sw{display:inline-block;width:10px;height:10px;border-radius:3px;vertical-align:middle}
.tu-guide{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:12px;margin-bottom:14px;align-items:end}.tu-guide>div{display:grid;gap:4px}.tu-guide span{font-size:13px;color:var(--muted)}
.tu-sum{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,170px),1fr));gap:10px;margin-bottom:12px}.tu-sum>div{display:grid;gap:2px;padding:12px;border-radius:14px;background:var(--surface);border:1px solid var(--line)}
.tu-sum small{font-size:12px;color:var(--muted)}.tu-sum b{font:700 19px var(--f-mono)}.tu-sum span{font-size:12px;color:var(--fg-2)}.tu-up{color:var(--ok)}.tu-down{color:var(--danger)}
.tu-bar{height:4px;border-radius:99px;background:var(--raised-2);margin-top:4px;overflow:hidden}.tu-bar i{display:block;height:100%;background:var(--accent)}.tu-win td:first-child b{color:var(--ok)}
/* v53e maps db */
.mp-svg .mp-z{cursor:pointer;outline:none}.mp-svg .mp-z rect{transition:fill .2s,stroke .2s}.mp-svg .mp-z:hover rect,.mp-svg .mp-z:focus-visible rect,.mp-svg .mp-z.on rect{fill:rgba(120,200,255,.22);stroke:var(--sky);stroke-width:2}
.co-list{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:6px;font-size:14px}.co-list li{padding:6px 10px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}
.co-g h3 small{font-weight:500;font-size:12px}.mp-two{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:24px}
.mp-src ul{margin:8px 0 0;padding-left:18px;font-size:13px}
/* v54 online play */
.on-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:22px}
.on-row{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-end;margin:6px 0}.on-row .select,.on-row .input{width:auto}
.on-cases{margin:6px 0 10px;padding-left:20px;font-size:14px}.on-lob{list-style:none;padding:0;margin:6px 0;display:grid;gap:6px}.on-lob li{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:8px 12px;border:1px solid var(--line);border-radius:12px}
.on-head{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-bottom:14px}.on-head .btn{margin-left:auto}
.on-seats{list-style:none;padding:0;margin:0 0 12px;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:8px}.on-seats li{padding:10px 12px;border:1px solid var(--line);border-radius:12px;display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.on-seats li.me{border-color:var(--sky)}.on-seats li.win{border-color:#ffd36e;box-shadow:0 0 0 1px #ffd36e inset}.on-tot{margin-left:auto;font-weight:700}
.on-round{margin:14px 0}.on-cells{display:grid;grid-template-columns:repeat(var(--n,2),minmax(0,1fr));gap:8px;margin-top:6px}
.on-cell{border:1px solid var(--line);border-top:3px solid var(--rc,var(--line));border-radius:12px;padding:10px;display:flex;flex-direction:column;gap:4px;font-size:13px;min-height:120px;background:var(--surface);overflow-wrap:anywhere}
.on-cell.wait{align-items:center;justify-content:center;color:var(--muted)}.on-cell.pop{animation:onpop .7s cubic-bezier(.2,.9,.3,1.3)}.on-cell.t-v,.on-cell.t-x{box-shadow:0 0 18px -4px var(--rc)}
.on-art{height:70px;display:flex;align-items:center;justify-content:center}.on-art img,.on-art svg{max-height:70px;max-width:100%}
.on-spin{width:22px;height:22px;border-radius:50%;border:3px solid var(--line-2);border-top-color:var(--sky);animation:onspin 1s linear infinite;margin-bottom:6px}
@keyframes onpop{0%{transform:scale(.6) rotateY(90deg);opacity:0}100%{transform:none;opacity:1}}@keyframes onspin{to{transform:rotate(360deg)}}
.on-fair{margin-top:16px;padding:12px 14px;border:1px dashed var(--line-2);border-radius:12px}
.on-arena .b-card.picked{outline:2px solid var(--sky)}.on-arena .b-card.won{outline:2px solid #7dffb0}.on-arena .b-card.lost{opacity:.6}.on-val{font-weight:700;font-size:16px}
@media (prefers-reduced-motion:reduce){.on-cell.pop,.on-spin{animation:none}}
/* v54 drills */
.react-pad{position:relative;overflow:hidden}.react-pad.m-target.go{background:var(--surface)}.react-pad.go-snd,.react-pad.early,.react-pad.between{background:var(--surface)}.react-pad.early{color:#ff8a7a}
.react-pad small{font-size:14px;font-weight:500;letter-spacing:0;text-transform:none;opacity:.8}.react-pad.idle span{font-size:clamp(18px,2.4vw,26px);line-height:1.3}
.rx-t{position:absolute;width:54px;height:54px;margin:-27px 0 0 -27px;border-radius:50%;background:radial-gradient(circle,var(--apricot,#ffd36e) 0 22%,transparent 23% 40%,var(--ember,#ff6f5a) 41% 56%,transparent 57%);box-shadow:0 0 18px rgba(255,111,181,.7)}
.target.mv{transition:none}.target.on{filter:drop-shadow(0 0 16px #7dffb0)}.arena.miss{box-shadow:inset 0 0 0 2px rgba(255,90,90,.6)}
/* v55 community */
.lb-who{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.lb-who img{border-radius:50%}.lb-who .btn{margin-left:auto}
.lb-tabs{flex-wrap:wrap}.lb-t tr.me td{background:rgba(120,200,255,.08)}.lb-p{display:inline-flex;align-items:center;gap:8px;color:inherit;text-decoration:none}.lb-p img{border-radius:50%}
.lb-av{width:28px;height:28px;border-radius:50%;display:inline-grid;place-items:center;background:var(--raised,#222);font-weight:700;font-size:13px}
.tm-card .tm-top{display:flex;gap:10px;align-items:center}.tm-card .tm-top img{border-radius:50%}.tm-card.mine{border-color:var(--sky)}
.steam-btn{display:inline-flex;align-items:center;gap:8px}
/* v56 tools */
.ax-g{border:1px solid var(--line);border-radius:14px;padding:12px 14px;margin:0 0 12px;display:grid;gap:8px}.ax-row{display:grid;grid-template-columns:22px 1fr;gap:4px 8px;align-items:end}.ax-row small{grid-column:2}.ax-row .sel-l,.ax-row .check{margin:0}
.ax-out{white-space:pre;overflow:auto;max-height:520px;font-size:12px;background:var(--bg-2,#0b0a10);border:1px solid var(--line);border-radius:12px;padding:12px;margin:8px 0 12px}
.odds-bar{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end}.odds-bar .sel-l{margin:0}
