/* ==========================================================================
   HASHY — inner pages on the "Contour × Kinetic" system   (loads after hc.css)
   Re-skins the legacy base.css/store.css components (shop, mod page, account,
   community, legal, news, gamification…) so every storefront page matches the
   homepage: mono kickers + Anton/Saira headings, glass panels with hairline
   borders and 12–22px radii, accent/--grad driven, light + dark.
   Only tokens from hc.css are used, so Mode + Color swatches retune everything.
   ========================================================================== */

/* ---------- tokens / legacy overrides ---------- */
html:root{--radius:16px;--radius-sm:12px;--radius-xs:8px;--card:var(--surface);
  --hp-panel:linear-gradient(180deg,var(--surface),color-mix(in srgb,var(--bg2) 82%,transparent));
  --hp-field:color-mix(in srgb,var(--surface-2) 85%,transparent);
  --hp-ring:0 0 0 4px color-mix(in srgb,var(--accent) 20%,transparent)}
/* text-safe accent: game/admin accents set --accent-ink to the raw accent, which is unreadable on light paper */
html:root[data-theme="light"]{--accent-ink:color-mix(in srgb,var(--accent) 60%,#04121a);--hp-field:#fff;--surface-2:#f1f5f7}
.ci-home,.ci-product{--ci-bg:transparent;--ci-bg2:var(--bg2);--ci-surface:var(--surface);--ci-surface2:var(--surface-2);
  --ci-line:var(--line);--ci-line2:var(--line2);--ci-fg:var(--text);--ci-muted:var(--muted);--ci-faint:var(--dim);
  --ci-amber:var(--accent);--ci-amber-ink:var(--accent-ink);--ci-ink:var(--accent-text);background:transparent;color:var(--text)}
html.js:not(.no-motion) main{animation:hcFade .45s ease both}
.wrap,.ci-wrap{max-width:1180px;padding-inline:max(20px,env(safe-area-inset-left))}
@media (max-width:600px){.wrap,.ci-wrap{padding-inline:16px}}
.narrow{max-width:820px}
/* narrow content columns line up with the page hero instead of floating centred */
.wrap.narrow{max-width:1180px}
.wrap.narrow>*{max-width:860px}
.help-search{margin-left:0}
.newscard__img--ph svg{width:22%!important}
.muted{color:var(--muted)}
a.link,.link,.rte a,.legal__body a,.help-article a,.mention,.comm__ro a,.cookie__inner a,.ci-allaccess a,.changelog-link,.card__cta,.gpick__from{color:var(--accent-ink)}
.link:hover,.legal__body a:hover{color:var(--text)}

/* ---------- type ---------- */
body{font-family:var(--font)}
h1,h2,h3,h4{text-wrap:balance}
.eyebrow,.ci-eyebrow,.ci-choose,.choose{display:inline-flex;align-items:center;gap:12px;margin:0 0 14px;color:var(--accent-ink);
  font:500 .72rem/1 var(--font-mono);letter-spacing:.16em;text-transform:uppercase}
.eyebrow::before,.ci-eyebrow::before,.ci-choose::before{content:"";width:28px;height:1px;background:currentColor;opacity:.8;border-radius:0}
.hero--game .eyebrow::before{background:currentColor}
.ci-choose{color:var(--dim);margin:24px 0 12px}
/* section heads: big Anton like the home's "LATEST DROPS" */
.section__head{align-items:flex-end;gap:20px;flex-wrap:wrap;margin-bottom:clamp(22px,3vw,36px)}
.section__head h1,.section__head h2,.modgrid__bar h2,.sh h2{font:400 clamp(2.2rem,1.3rem + 3vw,4rem)/.92 var(--font-disp);text-transform:uppercase;letter-spacing:.005em;margin:0}
.section__head h2 .stars{font:1.4rem/1 var(--font);vertical-align:middle;margin-left:6px}
.section__head h2 .muted{font:500 .9rem/1 var(--font-mono);letter-spacing:.1em;vertical-align:middle;color:var(--dim)}
.section__head>a{position:relative;font:700 .95rem/1 var(--font);color:var(--text);padding:6px 0}
.section__head>a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--accent);transform:scaleX(.35);transform-origin:0 50%;transition:transform .32s var(--e-out)}
.section__head>a:hover::after{transform:none}
.page-head__desc,.sh__text{color:var(--muted)}

/* ---------- inner-page hero (soft, no hard band) ---------- */
.hero--game,html[data-glow] .hero--game{background:none!important;overflow:visible}
.hero.hero--game{padding:clamp(56px,8vw,112px) 0 clamp(20px,3vw,40px);min-height:0}
.hero--game::before,.hero:not(:has(.hero__bg))::before{background:radial-gradient(55% 90% at 12% 0%,color-mix(in srgb,var(--accent) 13%,transparent),transparent 72%)!important;inset:-20% 0 0}
.hero--game .hero__title,.hero__title,.legal__h{font:400 clamp(3rem,1.5rem + 5.4vw,6.6rem)/.9 var(--font-disp)!important;letter-spacing:.004em!important;text-transform:uppercase;
  background:var(--grad)!important;background-size:100% 100%!important;-webkit-background-clip:text!important;background-clip:text!important;-webkit-text-fill-color:transparent;color:transparent;
  animation:none!important;margin:0 0 18px;padding:0 .04em .04em 0;max-width:16ch;overflow-wrap:anywhere}
.legal__h{font-size:clamp(2.6rem,1.4rem + 4vw,5.2rem)!important;margin:6px 0 14px}
.hero__lead,.hero__sub{color:var(--muted);font-size:clamp(1.02rem,.94rem + .4vw,1.24rem);line-height:1.55;max-width:46ch;margin:0 0 24px}
.hero__lead a{color:var(--accent-ink)}
.hero__ctas{gap:10px}

/* ---------- buttons ---------- */
.btn{text-transform:none;font:800 .95rem/1 var(--font);letter-spacing:.005em;min-height:48px;padding:0 22px;border-radius:14px;gap:9px}
.btn--sm{min-height:38px;padding:0 15px;font-size:.85rem;border-radius:11px}
.btn--lg{min-height:56px;padding:0 28px;font-size:1.05rem}
.btn--ghost{border:1px solid var(--line2)}
.btn--discord,.btn--discord:hover,.ci-btn--discord{background:#5865f2;color:#fff;box-shadow:0 10px 26px -14px rgba(88,101,242,.8)}
.btn--discord:hover{background:#4752e0;color:#fff}
.btn--ok,.btn.is-added{background:var(--ok);color:#06240f}
.btn[disabled],.btn:disabled{opacity:.45;transform:none!important}
.ci-btn{text-transform:none;font:800 .92rem/1 var(--font);letter-spacing:.005em;border-radius:14px;padding:14px 22px}
.link-arrow{font:700 .95rem/1 var(--font);letter-spacing:0;text-transform:none;color:var(--accent-ink)}
button.link{background:none;border:0;padding:0;font:600 .85rem/1 var(--font);color:var(--accent-ink);text-decoration:underline;text-underline-offset:3px;cursor:pointer}

/* ---------- form fields ---------- */
main input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):not([type=submit]):not([type=button]):not(.sw),
main select,main textarea,.chatpanel__foot input,.modal__card input,.modal__card textarea,.aibot__form input{
  background:var(--hp-field);color:var(--text);border:1px solid var(--line2);border-radius:12px;padding:12px 14px;font:500 .95rem/1.3 var(--font);
  transition:border-color .18s,box-shadow .25s var(--e-out),background-color .18s}
main textarea{line-height:1.5;min-height:90px}
main input:not([type=checkbox]):not([type=radio]):not([type=range]):hover,main select:hover,main textarea:hover{border-color:color-mix(in srgb,var(--accent) 40%,var(--line2))}
main input:focus,main select:focus,main textarea:focus,.chatpanel__foot input:focus,.modal__card input:focus,.modal__card textarea:focus{outline:none;border-color:var(--accent);box-shadow:var(--hp-ring)}
main input::placeholder,main textarea::placeholder{color:var(--dim);opacity:1}
main select{appearance:none;-webkit-appearance:none;padding-right:38px;cursor:pointer;
  background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);
  background-position:calc(100% - 19px) 52%,calc(100% - 14px) 52%;background-size:5px 5px;background-repeat:no-repeat}
main select option{background:var(--bg);color:var(--text)}
input[type=checkbox],input[type=radio],input[type=range]{accent-color:var(--accent)}
.form label,.field-label,.qf label,.settings__field>span{font:500 .7rem/1.2 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--dim)}
.sortsel__arr{display:none}
.sw{background:color-mix(in srgb,var(--text) 14%,transparent)}

/* ---------- chips / badges / tags ---------- */
.badge,.mbadge,.pbadge,.karma-badge,.tier-badge,.mod-badge,.plan__badge,.plan__tag,.vbadge,.kchip{border-radius:999px;font:600 .62rem/1 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;padding:5px 9px}
.badge--own{background:color-mix(in srgb,var(--accent) 16%,transparent);color:var(--accent-ink);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 35%,transparent)}
.badge--ok,.vbadge{background:color-mix(in srgb,var(--ok) 16%,transparent);color:color-mix(in srgb,var(--ok) 70%,var(--text))}
.badge--off{background:color-mix(in srgb,var(--bad) 16%,transparent);color:color-mix(in srgb,var(--bad) 75%,var(--text))}
.mbadge--new{color:var(--accent-ink)}
:root[data-theme="light"] .mbadge--upd{color:#1d7a3a}:root[data-theme="light"] .mbadge--hot{color:#b4541b}
.ci-tag{font:500 .64rem/1 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);background:color-mix(in srgb,var(--surface-2) 70%,transparent);
  border:1px solid var(--line2);border-radius:8px;padding:6px 10px}
.chip{font:500 .64rem/1 var(--font-mono);letter-spacing:.1em;border-color:var(--line2)}
.chip--accent{border-color:color-mix(in srgb,var(--accent) 50%,transparent);color:var(--accent-ink)}
.mention{font-weight:700}

/* ---------- shared glass panel ---------- */
.gcard,.box,.postbox,.post,.comm__chat,.req,.reviewform,.legal__body,.dpanel,.cf,.cf-banner,.mys,.newscard,.help-card,.aisearch,.statcard,.credit,.auth,.empty,.ci-empty,.pprofile header,.qvmodal__card,.modal__card,.chatpanel,.cart__sum,.delivery{
  background:var(--hp-panel);border:1px solid var(--border);border-radius:20px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:none;clip-path:none}
:root[data-theme="light"] :is(.gcard,.box,.postbox,.post,.comm__chat,.req,.reviewform,.legal__body,.dpanel,.cf,.cf-banner,.mys,.newscard,.help-card,.aisearch,.statcard,.credit,.empty,.pprofile header,.chatpanel,.cart__sum){border-color:var(--line2);box-shadow:0 18px 40px -30px rgba(10,30,40,.35)}
.gcard h3,.box h3,.dpanel h3,.cf h3,.mys h3,.newscard h3,.ownersay__head h3,.help-cat>h2,.help-more h3,.drawer__head h2{font:800 1.08rem/1.1 var(--font-head);font-stretch:118%;text-transform:uppercase;letter-spacing:.01em}
.gcard h4{font:500 .7rem/1.2 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--dim);margin:18px 0 10px}
.gcard{padding:22px;margin-bottom:16px}
.code,.own,.gitem,.kissue,.contact__way,.giftbox,.ci-spec__item,.ci-note,.mys__win,.milestone,.verify-banner,.note-discord{border-radius:14px}
.code{background:color-mix(in srgb,var(--surface-2) 70%,transparent);border:1px dashed var(--line2);font-family:var(--font)}
.code code,.code__v{font-family:var(--font-mono);letter-spacing:.06em}
.tier{clip-path:none!important;border-radius:16px}
.gcard .tier{background:color-mix(in srgb,var(--accent) 8%,var(--surface-2));border:1px solid color-mix(in srgb,var(--accent) 25%,var(--line));padding:14px 16px;margin:0 0 12px;font-size:.95rem}
.table th{font:500 .66rem/1 var(--font-mono);letter-spacing:.14em;color:var(--dim)}
.table td,.table th{border-color:var(--line)}

/* empty states */
.empty,.ci-empty,.modgrid__empty{border:1px dashed var(--line2);background:color-mix(in srgb,var(--surface) 55%,transparent);border-radius:22px;padding:clamp(36px,6vw,64px) 20px;text-align:center;color:var(--muted)}
.empty h2,.empty h3,.ci-empty h3{font:400 clamp(1.8rem,1.3rem + 1.6vw,2.6rem)/.95 var(--font-disp);text-transform:uppercase;color:var(--text);margin:0 0 10px}
.empty p{color:var(--muted)}

/* ---------- product cards / grids ---------- */
.grid--mods,.grid--cards,.ci-grid{gap:clamp(14px,1.6vw,22px)}
.card__body{padding:18px 18px 20px}
.card__title{font:800 1.08rem/1.12 var(--font-head);font-stretch:112%;letter-spacing:.005em}
.card__meta{border-top:1px solid var(--line)}
.card__price{font:400 1.6rem/1 var(--font-disp);letter-spacing:.01em}
.card__cta{font:700 .88rem/1 var(--font)}
.card__game{background:color-mix(in srgb,var(--bg) 70%,transparent);border-color:var(--line2);backdrop-filter:blur(6px);color:var(--text);font-size:.62rem}
.card__eyebrow{font:500 .66rem/1 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--accent-ink)}
.qvbtn{border-radius:12px;border-color:var(--line2)}
.merch-sold{border-radius:999px;font:600 .62rem/1 var(--font-mono);letter-spacing:.12em;padding:6px 10px}

/* ---------- shop: filters / AI search ---------- */
.filterwrap{margin-bottom:28px}
.gpills{gap:8px}
.gpill{border-radius:999px;font:600 .68rem/1 var(--font-mono);letter-spacing:.14em;padding:10px 16px;background:color-mix(in srgb,var(--surface) 80%,transparent);border-color:var(--line2);backdrop-filter:blur(6px)}
.gpill::after{display:none}
.gpill:hover{border-color:var(--tab,var(--accent))}
.gpill.is-on{background:var(--tab,var(--accent));border-color:var(--tab,var(--accent));color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.35);box-shadow:0 10px 24px -14px var(--tab,var(--glow))}
.gpill:not([style*="--tab"]).is-on{color:var(--accent-text);text-shadow:none}
.filterbar{gap:10px}
.filterbar .btn{min-height:46px}
.pricefilter{font:500 .7rem/1 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--dim);gap:14px;margin-top:14px}
.pricefilter label{display:inline-flex;gap:8px;align-items:center}
.pricefilter strong{font:400 1.1rem/1 var(--font-disp);letter-spacing:.02em;color:var(--text)}
.pricefilter .link{font:600 .66rem/1 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;padding:7px 11px;border:1px solid var(--line2);border-radius:999px;text-decoration:none;background:none;color:var(--muted)}
.pricefilter .link:hover{border-color:var(--accent);color:var(--text)}
.aisearch{padding:16px 18px;border-radius:20px;margin-bottom:24px}
.aisearch__hint{color:var(--dim)}
.aisearch__spark{font-size:1rem}

/* ---------- MOD PAGE ---------- */
.ci-product .ci-section{border-top:1px solid var(--line);padding-block:clamp(28px,4vw,48px)}
.ci-product>.ci-section:first-child{padding-top:clamp(24px,4vw,48px)}
.ci-product__grid{gap:clamp(24px,4vw,56px);padding-block:0 clamp(20px,3vw,36px);align-items:start}
.ci-section>h2{display:flex;align-items:center;gap:14px;font:400 clamp(1.9rem,1.3rem + 1.8vw,2.8rem)/.95 var(--font-disp);text-transform:uppercase;letter-spacing:.01em;margin:0 0 20px}
.hc-upclose>h2{margin-top:14px}.hc-upclose>h2::before{display:none}
#reviews{padding-top:clamp(28px,4vw,56px)}
.ci-section>h2::before{content:"";width:28px;height:2px;border-radius:2px;background:var(--grad);flex:none}
.ci-gal__main{border-radius:22px;border-color:var(--line2);box-shadow:0 40px 80px -46px color-mix(in srgb,var(--accent) 40%,#000)}
.ci-gal__arrow{width:44px;height:44px;border-radius:12px;border-color:rgba(255,255,255,.18);background:rgba(6,8,15,.55);color:#eef3ff;backdrop-filter:blur(6px)}
.ci-gal__arrow:hover{background:var(--accent);border-color:var(--accent);color:var(--accent-text)}
.ci-gal__cap{font:500 .66rem/1 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:rgba(238,243,255,.8);background:linear-gradient(0deg,rgba(6,8,15,.75),transparent)}
.ci-gal__thumbs{gap:10px}
.ci-thumb{border-radius:12px;border-color:var(--line2)}
.ci-thumb.on{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent),0 10px 24px -14px var(--glow)}
.ci-gal{position:sticky;top:calc(var(--navh) + 20px)}
.ci-info h1{font:400 clamp(2.5rem,1.5rem + 2.8vw,4.2rem)/.92 var(--font-disp);text-transform:uppercase;letter-spacing:.005em;margin:10px 0 12px}
.ci-info .ci-sub{color:var(--muted);font-size:1.04rem;line-height:1.55;max-width:44ch}
.ci-info .ci-price{display:flex;align-items:baseline;gap:10px;font:400 clamp(3rem,2.2rem + 2vw,4.2rem)/.9 var(--font-disp);letter-spacing:-.005em;margin:18px 0 0}
.ci-info .ci-price span{font:500 .74rem/1 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--dim)}
.ci-info .ci-price s{font:400 .45em/1 var(--font-disp);color:var(--dim)}
.ci-meta-row{gap:14px}
.ci-meta-row .stars{color:var(--accent)}
.mbadges{margin:0 0 4px}
.plans{gap:10px}
.plan{border-radius:16px;padding:16px 18px;background:color-mix(in srgb,var(--surface) 90%,transparent);border:1px solid var(--line2);transition:border-color .18s,background-color .18s,transform .32s var(--e-out)}
.plan:hover{border-color:color-mix(in srgb,var(--accent) 50%,var(--line2))}
.plan.is-selected,.plan:has(input:checked){border-color:var(--accent);background:color-mix(in srgb,var(--accent) 9%,var(--surface));box-shadow:0 14px 34px -22px var(--glow)}
.plan__radio,.plan__dot{border-color:var(--line2)}
.plan__main strong,.plan__name{font:800 .92rem/1.15 var(--font-head);font-stretch:115%;letter-spacing:.02em}
.plan__main span,.plan__desc{color:var(--muted)}
.plan__price{font:400 1.5rem/1 var(--font-disp);letter-spacing:.01em}
.product__actions{gap:10px}
.product__actions .btn--accent{flex:1;min-height:54px;font-size:1rem}
.wishbtn{min-height:54px;width:54px;padding:0;font-size:1.2rem}
.wishbtn.on{color:var(--hot);border-color:var(--hot)}
.coupon{margin-top:12px}
.coupon__toggle{color:var(--muted);font:600 .68rem/1 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;text-decoration:none;border-bottom:1px solid var(--line2);padding-bottom:4px}
.coupon__toggle:hover{color:var(--text);border-color:var(--accent)}
.coupon__input{font-family:var(--font-mono)!important;letter-spacing:.1em}
.coupon__msg.is-ok{color:color-mix(in srgb,var(--ok) 70%,var(--text))}
.coupon__msg.is-err{color:color-mix(in srgb,var(--bad) 75%,var(--text))}
.ci-spec{margin:16px 0 6px}
.ci-spec__item{border-radius:999px;background:color-mix(in srgb,var(--surface-2) 70%,transparent);border-color:var(--line2);font:500 .68rem/1 var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--dim);padding:8px 12px}
.ci-spec__item b{font:600 .78rem/1 var(--font-mono);color:var(--text)}
.ci-spec__item svg{color:var(--accent-ink)}
.ci-allaccess{color:var(--muted);font-size:.92rem}
.ci-allaccess a{font-weight:700;text-decoration-color:color-mix(in srgb,var(--accent) 50%,transparent);text-underline-offset:3px}
.giftbox{background:color-mix(in srgb,var(--surface) 80%,transparent);border:1px solid var(--line2);padding:13px 16px;margin-top:14px}
.giftbox .inline{font-weight:600;color:var(--text)}
.ci-tags{gap:6px;margin-top:18px}
.sharebar{margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}
.sharebar__lbl{font:500 .66rem/1 var(--font-mono);letter-spacing:.16em;color:var(--dim)}
.sharebtn{border-radius:10px;border-color:var(--line2);background:color-mix(in srgb,var(--surface) 80%,transparent);min-width:36px;height:36px;font-weight:700}
.sharebtn:hover{border-color:var(--accent);color:var(--accent-ink)}
.ci-note{background:color-mix(in srgb,var(--accent) 7%,var(--surface));border:1px solid color-mix(in srgb,var(--accent) 28%,var(--line));border-left:3px solid var(--accent);border-radius:14px;padding:14px 18px;color:var(--muted)}
.ci-note b{color:var(--text)}
.ci-feat li::before{color:var(--accent)}
.ci-product .faq{max-width:none}
.liveview{font:500 .66rem/1 var(--font-mono);letter-spacing:.12em;text-transform:uppercase}
.kissue{background:color-mix(in srgb,var(--surface-2) 70%,transparent);border-color:var(--line2);border-left-width:3px}
.kchip.ki-inv{color:var(--accent-ink)}
.credits .credit{border-radius:16px}
.ci-video{border-radius:20px;border-color:var(--line2)}
.ci-wm{opacity:.18}
/* reviews */
#reviews .wrap{max-width:1180px}
#reviews .reviews{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));gap:14px}
.review{border:1px solid var(--line);border-radius:18px;padding:18px 20px;background:var(--hp-panel)}
.review__head{gap:10px;margin-bottom:8px}
.review__head strong{font-weight:800}
.review p{color:var(--muted)}
.stars .star.on,.reviewform .rate .star.on{color:#ffb64d}
.rvote button{border-radius:999px;border-color:var(--line2);background:transparent;padding:5px 12px}
.ownersay{border-radius:18px;background:color-mix(in srgb,var(--accent) 6%,var(--surface));border:1px solid color-mix(in srgb,var(--accent) 25%,var(--line));border-left:3px solid var(--accent);margin-bottom:28px}
.ownersay__meta,.ownersay__basic{color:var(--muted)}
.reviewform{padding:18px 20px;margin-bottom:20px}
.reviewform textarea{background:var(--hp-field)!important;border-radius:12px!important}
/* FAQ accordion */
.faq{gap:10px;max-width:880px}
.faq__item{border-radius:16px!important;background:var(--hp-panel);border:1px solid var(--border)}
:root[data-theme="light"] .faq__item{border-color:var(--line2)}
.faq__item.open{border-color:color-mix(in srgb,var(--accent) 50%,var(--line2));box-shadow:0 20px 44px -30px var(--glow)}
.faq__q{font:800 .98rem/1.3 var(--font-head);font-stretch:112%;letter-spacing:.01em;padding:18px 20px}
.faq__ic{width:30px;height:30px;border-radius:50%;border:1px solid var(--line2);color:var(--accent-ink);font:400 1.15rem/1 var(--font);transition:transform .32s var(--e-out),background-color .18s,border-color .18s}
.faq__item.open .faq__ic{background:var(--accent);border-color:var(--accent);color:var(--accent-text)}
.faq__item.open .faq__a>div{color:var(--muted);padding:0 20px 20px}
.faq details{border-color:var(--line)}
.faq summary{font:800 1.05rem/1.2 var(--font-head);font-stretch:112%}

/* ---------- ACCOUNT / GARAGE ---------- */
.garage{display:block}
.garage__grid{grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:18px;align-items:start}
.gside{columns:2 300px;column-gap:16px}
.gside>.gcard{break-inside:avoid;display:inline-block;width:100%;margin:0 0 16px}
.gitems{gap:10px}
.gitem{flex-wrap:wrap;background:color-mix(in srgb,var(--surface-2) 70%,transparent);border:1px solid var(--line);padding:12px}
.gitem__ph{border-radius:12px;background:radial-gradient(80% 80% at 30% 20%,var(--deep),var(--bg2));border-color:var(--line2);color:var(--accent-ink);opacity:1}
.gitem__body{min-width:140px}
.gitem__body h4{font:800 .95rem/1.15 var(--font-head);font-stretch:112%;text-transform:uppercase;margin:0 0 6px;color:var(--text);letter-spacing:.01em}
.gitem__body h4 .badge{margin:4px 0 0;display:inline-flex}
.dpanel{padding:clamp(22px,3vw,34px);border-radius:22px;background:radial-gradient(70% 120% at 0% 0%,rgba(88,101,242,.22),transparent 60%),var(--hp-panel);border-color:color-mix(in srgb,#5865f2 35%,var(--line2))}
.dpanel__icon{border-radius:16px;box-shadow:0 14px 30px -14px rgba(88,101,242,.8)}
.dpanel h3{font:400 clamp(1.8rem,1.3rem + 1.4vw,2.6rem)/.95 var(--font-disp);text-transform:uppercase;margin-bottom:10px}
.account .section__head h1{font-size:clamp(2.6rem,1.6rem + 3.6vw,5rem)}
.xpcard .xpbar,.questcard .xpbar,.rw__bar{border-radius:999px;background:color-mix(in srgb,var(--text) 8%,transparent);border:0;height:8px}
.streaknum{font:400 2.2rem/1 var(--font-disp)}
.creditcard .credbal,.refstats .rs b{font-family:var(--font-disp)!important;font-weight:400!important;color:var(--accent-ink)!important;letter-spacing:.01em}
.creditcard .credbal{font-size:2.4rem!important}
.refstats .rs span{font:500 .6rem/1 var(--font-mono);letter-spacing:.12em}
.credledger .cl .pos{color:color-mix(in srgb,var(--ok) 75%,var(--text))}
.spincard .wheel{border-color:var(--accent);border-style:dashed}
.ach{border-radius:14px;border-color:var(--line2)}
.calcell{border-radius:9px;border-color:var(--line)}
.calcell--claimed{color:var(--accent-ink)}
.own__badge.is-active{border-radius:999px}
.verify-banner,.note-discord{border-radius:14px}
.settings__row{border-radius:12px}
[data-apitok-name]{text-transform:none!important}

/* ---------- PUBLIC PROFILE ---------- */
.pprofile header{padding:clamp(20px,3vw,32px)!important;border-radius:22px!important;background:radial-gradient(60% 140% at 0% 0%,color-mix(in srgb,var(--accent) 14%,transparent),transparent 65%),var(--hp-panel)!important}
.pprofile h1{font:400 clamp(2.2rem,1.6rem + 2vw,3.4rem)/.92 var(--font-disp)!important;letter-spacing:.01em!important}
.pprofile .garage__grid{grid-template-columns:minmax(0,1fr)!important}
.pfp{border-radius:22px!important;box-shadow:0 0 0 2px var(--bg),0 0 0 3px color-mix(in srgb,var(--accent) 60%,transparent)}
.pstat{display:inline-flex;align-items:baseline;gap:6px}
.pstat strong{font:400 1.3rem/1 var(--font-disp);letter-spacing:.02em}
.pstat .muted{font:500 .62rem/1 var(--font-mono);letter-spacing:.12em;text-transform:uppercase}
.pshow__item{border-radius:14px!important;border-color:var(--line2)!important}
.ppost{border-top-color:var(--line)!important}

/* ---------- COMMUNITY ---------- */
.comm{grid-template-columns:minmax(0,1fr) 360px;gap:22px}
.comm__feed{gap:14px}
.post{padding:18px 20px;border-radius:18px}
.post__head b,.post__head strong,.post__who b{font:800 .95rem/1.1 var(--font);text-transform:none}
.post__img{border-radius:14px;border-color:var(--line2)}
.post__like,.post__btn{border-radius:999px;padding:4px 8px}
.post__like.on,.post__btn.on{color:var(--hot)}
.post__mod button{border-radius:8px}
.rbtn{border-color:var(--line2);background:color-mix(in srgb,var(--surface-2) 70%,transparent)}
.rbtn.on{background:color-mix(in srgb,var(--accent) 16%,transparent)}
.rbtn.on .rbtn__n{color:var(--accent-ink)}
.post__comments{border-top:1px solid var(--line);padding-top:10px}
.cmt-form input,.comment__form input{border-radius:999px!important}
.postbox{padding:16px;border-radius:18px}
.postbox textarea{border-radius:14px!important}
.comm__chat{border-radius:20px;overflow:hidden;top:calc(var(--navh) + 20px)}
.comm__chat-head{display:flex;align-items:center;gap:10px;font:500 .72rem/1 var(--font-mono);letter-spacing:.16em;color:var(--accent-ink);padding:16px 18px;border-color:var(--line)}
.comm__chat-head::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--hot);animation:hxPulse 1.9s ease-out infinite;flex:none}
.comm__chat-msgs{padding:14px 18px;gap:10px}
.cmsg{padding:9px 12px;border-radius:14px 14px 14px 4px;background:color-mix(in srgb,var(--surface-2) 80%,transparent);border:1px solid var(--line);align-self:flex-start;max-width:92%;color:var(--muted)}
.cmsg strong{color:var(--text)}
.comm__chat-foot{border-color:var(--line);padding:12px}
.comm__chat-foot button{border-radius:12px;color:var(--accent-text)}
.comm__ro{border-color:var(--line);color:var(--muted)}
.community .empty,.comm__main>.empty{padding:28px 22px;border-radius:20px;margin-bottom:16px}
.comm__login{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:16px}
.comm__login .btn--ghost,.comm__login>span,.comm__login>a:not(.btn--discord){border-radius:14px}
.feed__end,.feed__more{font:500 .66rem/1 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--dim)}
.mention-ac{border-radius:12px;border-color:var(--line2);background:var(--bg)}
@media(max-width:900px){.comm{grid-template-columns:1fr}.comm__chat{position:static;height:60vh}}

/* requests */
.reqs{gap:12px}
.req{padding:16px 18px;border-radius:18px;align-items:center}
.req__vote{border-radius:14px;border-color:var(--line2);background:color-mix(in srgb,var(--surface-2) 70%,transparent);font:600 .62rem/1 var(--font-mono);letter-spacing:.1em;padding:9px 12px;min-width:56px;gap:5px}
.req__vote span{font:400 1.3rem/1 var(--font-disp)}
.req__vote.on{border-color:var(--accent);color:var(--accent-ink);background:color-mix(in srgb,var(--accent) 12%,transparent)}
.req__body h4{font:800 1rem/1.2 var(--font-head);font-stretch:112%;text-transform:uppercase;margin:0 0 4px}

/* leaderboard */
.lbtabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}
.lb .code{border-style:solid;border-color:var(--line);background:color-mix(in srgb,var(--surface-2) 55%,transparent)}
.lb .code:first-of-type{border-color:color-mix(in srgb,var(--accent) 45%,var(--line));background:color-mix(in srgb,var(--accent) 9%,var(--surface-2))}

/* ---------- LEGAL / ABOUT / NEWS POST ---------- */
.legal__body{padding:clamp(22px,3.4vw,44px);margin-top:26px;border-radius:22px;font-size:1.02rem;line-height:1.75;color:color-mix(in srgb,var(--text) 88%,var(--muted))}
.legal__body h2{display:flex;align-items:center;gap:12px;font:800 1.22rem/1.15 var(--font-head);font-stretch:118%;text-transform:uppercase;letter-spacing:.01em;margin:1.8em 0 .6em;color:var(--text)}
.legal__body h2::before{content:"";width:18px;height:2px;border-radius:2px;background:var(--grad);flex:none}
.legal__body h3{font:800 1rem/1.2 var(--font-head);font-stretch:112%;text-transform:uppercase}
.legal__body ul,.legal__body ol{padding-left:22px}
.legal__body li::marker{color:var(--accent-ink)}
.legal__body code{font-family:var(--font-mono);font-size:.88em;padding:2px 6px;border-radius:6px;background:color-mix(in srgb,var(--text) 8%,transparent)}
.legal__body blockquote,.rte blockquote{border-left:3px solid var(--accent);padding-left:16px;margin:1.4em 0;color:var(--muted)}
.legal>.wrap>.muted.small,.legal .muted.small{font:500 .7rem/1.4 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--dim)}
.contact__ways{gap:10px}
.contact__way{border-radius:14px;background:color-mix(in srgb,var(--surface) 85%,transparent);border-color:var(--line2);font-weight:700}
.contact__way svg{color:var(--accent-ink)}
.newspost__cover{border-radius:22px;border:1px solid var(--line2)}

/* ---------- NEWS / GIVEAWAYS / CROWDFUND / MYSTERY / QUIZ / HELP ---------- */
.newsgrid,.ggrid,.cfgrid,.mysgrid,.help-list{gap:clamp(14px,1.6vw,22px)}
.newscard{transition:transform .32s var(--e-out),border-color .18s,box-shadow .32s var(--e-out)}
.newscard:hover,.help-card:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--accent) 50%,var(--line2));box-shadow:0 30px 60px -34px var(--glow)}
.newscard__img{border-bottom:1px solid var(--line)}
.newscard__img--ph{background:url(topo.svg) center/500px,radial-gradient(80% 80% at 30% 20%,var(--deep),var(--bg2) 75%)}
.newscard__img--ph svg{color:var(--accent);opacity:.5}
.newscard__body{padding:18px 20px 20px}
.newscard__body h3{font-size:1.15rem;margin:8px 0}
.newscard__date{font:500 .64rem/1 var(--font-mono);letter-spacing:.16em;color:var(--accent-ink)}
.gcard__prize{color:var(--text)!important}
.gcard__foot{border-top:1px solid var(--line);padding-top:14px;margin-top:16px}
.cf{padding:22px}
.cf__top h3{font:800 1.08rem/1.1 var(--font-head);font-stretch:118%;text-transform:uppercase}
.cf__bar{height:8px;background:color-mix(in srgb,var(--text) 9%,transparent)}
.cf__bar span{background:var(--grad);box-shadow:0 0 14px var(--glow)}
.cf__meta b,.cf__meta strong{font:400 1.4rem/1 var(--font-disp);letter-spacing:.01em}
.cf__funded{color:color-mix(in srgb,var(--ok) 75%,var(--text))}
.cf-banner{border-radius:18px}
.mys{padding:clamp(24px,3vw,34px);border-radius:22px;background:radial-gradient(70% 70% at 80% -10%,color-mix(in srgb,var(--g3) 22%,transparent),transparent 70%),var(--hp-panel)}
.mys::before{content:"";position:absolute;inset:0;background:url(topo-b.svg) 60% 0/600px auto;opacity:.35;pointer-events:none}
.mys>*{position:relative}
.mys__q{font:400 5rem/1 var(--font-disp);background:var(--grad);-webkit-background-clip:text;background-clip:text}
.mys__price{font:400 2.6rem/1 var(--font-disp);letter-spacing:.01em}
.mys__win{background:color-mix(in srgb,var(--ok) 12%,transparent);border-color:color-mix(in srgb,var(--ok) 35%,transparent)}
.qf label{margin-bottom:8px}
.postbox.reveal,main .narrow>.postbox{padding:clamp(20px,3vw,30px)}
.help-search input{border-radius:16px!important;padding:16px 18px!important;font-size:1rem!important}
.help-cat>h2{display:flex;align-items:center;gap:12px;font-size:1.1rem;margin-bottom:16px}
.help-cat>h2::before{content:"";width:18px;height:2px;border-radius:2px;background:var(--grad);flex:none}
.help-card{padding:18px 20px;border-radius:18px;transition:transform .32s var(--e-out),border-color .18s,box-shadow .32s}
.help-card h3{font:700 1rem/1.3 var(--font)}
.help-article h2{font:800 1.15rem/1.2 var(--font-head);font-stretch:115%;text-transform:uppercase}
.help-more{border-color:var(--line)}
.statcard{border-radius:18px}
.statcard__n{font:400 2.6rem/1 var(--font-disp);background:var(--grad);-webkit-background-clip:text;background-clip:text}
.statcard__l{font-family:var(--font-mono)}

/* ---------- tiers / plans on store pages ---------- */
.tiers{gap:16px}
.tier:not(.gcard .tier){background:var(--hp-panel);border:1px solid var(--border);border-radius:20px}
.tier--hot{border-color:color-mix(in srgb,var(--accent) 55%,transparent)!important;box-shadow:0 30px 60px -34px var(--glow)}
.tier__flag{border-radius:999px;top:-11px;font:600 .62rem/1 var(--font-mono);letter-spacing:.12em;padding:6px 10px}
.tier__label{font:500 .7rem/1 var(--font-mono);letter-spacing:.16em}
.tier__price{font:400 3.6rem/1 var(--font-disp)}

/* ---------- global chrome: cookie bar / chat / toast / modals ---------- */
.cookie{left:16px;right:16px;bottom:16px;max-width:980px;margin:0 auto;border-radius:20px;border:1px solid var(--line2);
  background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(16px) saturate(1.3);box-shadow:0 30px 70px -30px rgba(0,0,0,.6)}
.cookie__inner{width:auto;padding:14px 16px 14px 22px}
.cookie__inner strong{font:500 .7rem/1 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--accent-ink);margin-right:6px}
body:has(.cookie:not([hidden])) .chatbubble{bottom:120px}
.chatbubble{width:56px;height:56px;border-radius:18px;background:var(--accent);color:var(--accent-text);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 50%,transparent),0 16px 34px -14px var(--glow)}
.chatbubble:hover{transform:translateY(-3px);box-shadow:0 0 0 1px var(--accent),0 20px 40px -14px var(--glow)}
.chatbubble__dot{background:var(--hot)}
.chatpanel{border-radius:22px;overflow:hidden;background:color-mix(in srgb,var(--bg) 94%,var(--text) 6%);border-color:var(--line2);box-shadow:0 40px 80px -30px rgba(0,0,0,.7)}
.chatpanel__head{font:500 .72rem/1 var(--font-mono);letter-spacing:.16em;color:var(--accent-ink);background:transparent;border-color:var(--line);padding:16px 18px}
.chatpanel__foot{border-color:var(--line)}
.chatpanel__foot button{border-radius:12px;font-weight:800}
.chatmsg{border-radius:16px 16px 16px 4px}
.chatmsg--admin{background:color-mix(in srgb,var(--surface-2) 90%,transparent);border:1px solid var(--line)}
.chatmsg--me{border-radius:16px 16px 4px 16px}
.toast{border-radius:14px;background:color-mix(in srgb,var(--bg) 90%,var(--text) 10%);color:var(--text);border:1px solid var(--line2);backdrop-filter:blur(14px);font:700 .92rem/1.3 var(--font);box-shadow:0 24px 50px -24px rgba(0,0,0,.6)}
.modal,.qvmodal{background:color-mix(in srgb,#03050a 72%,transparent);backdrop-filter:blur(6px)}
.modal__card,.qvmodal__card{background:color-mix(in srgb,var(--bg) 94%,var(--text) 6%);border-color:var(--line2);border-radius:22px;box-shadow:0 40px 90px -30px rgba(0,0,0,.7)}
.modal__card h3,.qvmodal__body h3{font:800 1.2rem/1.1 var(--font-head);font-stretch:118%;text-transform:uppercase}
.modal__x,.qvmodal__x{border-radius:10px}
.qvmodal__game{border-radius:999px;font:600 .6rem/1 var(--font-mono);letter-spacing:.12em}
.qvmodal__price{font:400 1.8rem/1 var(--font-disp);color:var(--text)}
.lightbox__x,.lightbox__nav{border-radius:14px}
.drawer__panel{background:color-mix(in srgb,var(--bg) 96%,var(--text) 4%);border-color:var(--line2)}
.aibot__panel{border-radius:20px;background:color-mix(in srgb,var(--bg) 94%,var(--text) 6%);border-color:var(--line2)}
.aibot__msg--me{color:var(--accent-text)}
.annbar__link{color:var(--accent-ink)}
.adbar__x{border-radius:10px}

/* footer: give the newsletter card room above the link columns */
.ftr__news{margin-top:28px;margin-bottom:44px}
.ftr__newsform input{min-height:46px}

/* ---------- 404 / error card (server PAGE) ---------- */
.hp-err{min-height:100vh;display:grid;place-items:center;padding:24px 16px;text-align:center}
.hp-err__card{position:relative;width:min(480px,100%);padding:clamp(32px,6vw,52px) clamp(24px,5vw,40px);border-radius:24px;border:1px solid var(--line2);background:var(--hp-panel);backdrop-filter:blur(12px);overflow:hidden}
.hp-err__card::before{content:"";position:absolute;inset:0;background:url(/assets/topo-b.svg) 60% 0/600px auto;opacity:.4;pointer-events:none}
.hp-err__card>*{position:relative}
:root[data-theme="light"] .hp-err__mk{background-color:#0a0f1c;border-radius:18px;background-size:84%}
.hp-err__mk{width:72px;height:72px;margin:0 auto 22px;background:var(--logo-hs) center/contain no-repeat;filter:drop-shadow(0 0 16px var(--logo-glow))}
.hp-err__code{font:400 clamp(4.5rem,3rem + 6vw,7rem)/.85 var(--font-disp);background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;margin:10px 0 6px}
.hp-err h1{font:800 1.3rem/1.1 var(--font-head);font-stretch:125%;text-transform:uppercase;margin:0 0 10px}
.hp-err p{color:var(--muted);margin:0 0 24px}
.hp-err .hx-kick{justify-content:center}
.hp-err__btns{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}

/* ---------- responsive ---------- */
@media (max-width:1100px){.garage__grid{grid-template-columns:minmax(0,1fr)}.garage .garage__grid>.gcard:first-child{position:static}}
.vbadge{white-space:nowrap}
.review__head{flex-wrap:wrap}
#reviews .section__head{margin-top:8px}
@media (max-width:900px){.ci-gal{position:static}.product__grid,.ci-product__grid{grid-template-columns:minmax(0,1fr)}}
@media (max-width:640px){
  .hero.hero--game{padding-top:44px}
  .gside{columns:1}
  .gcard{padding:18px}
  .ci-gal__thumbs{grid-template-columns:repeat(4,minmax(0,1fr))}
  .cookie{left:10px;right:10px;bottom:calc(70px + env(safe-area-inset-bottom,0px))}
  .cookie__inner{padding:14px 16px}
  .chatpanel{bottom:140px;max-height:calc(100vh - 230px)}
  body:has(.cookie:not([hidden])) .chatpanel{bottom:266px;max-height:calc(100vh - 340px)}
  .chatpanel__body{max-height:none;flex:1;min-height:0}
  body:has(.cookie:not([hidden])) .chatbubble{bottom:200px!important}
  .section__head h2 .stars{display:block;margin:10px 0 0}
  .req{align-items:flex-start}
  .filterbar input[type=search]{flex-basis:100%}
  .ftr__news{margin-bottom:32px}
}
@media (prefers-reduced-motion:reduce){.comm__chat-head::before{animation:none}}
.no-motion .comm__chat-head::before{animation:none}
