/* the request form + galaxy buttons, pulled from the old homepage by extract-request.js */
/* ================= CHASSIS TOKENS (structural, never move) ================= */
:root{
  --chassis-bg:#06060a;
  --chassis-line:rgba(255,255,255,.08);
  --font-mono:'JetBrains Mono',monospace;
  --transition-slow:.7s cubic-bezier(.2,.7,.2,1);
}
/* ================= UNIVERSE: COSMIC (default) ================= */
[data-universe="cosmic"]{
  --bg:#06060c; --panel:#0f0f1a; --panel-2:#161628;
  --ink:#f2f1fa; --ink-muted:#c3c1dc;
  --accent:#7b61ff; --accent-2:#33e6c8;
  --line:#232236; --radius:999px; --radius-card:20px;
  --font-display:'Space Grotesk',sans-serif; --font-body:'Space Grotesk',sans-serif;
  --display-weight:700; --display-transform:none; --display-style:normal; --display-tracking:-0.01em;
  --menu-hue-shift:75deg; --menu-accent:#33e6c8;
}
.csd-icon-stack{position:relative;width:220px;height:220px;margin:60px auto 0;display:flex;align-items:center;justify-content:center;}
.csd-icon-stack::before,.csd-icon-stack::after{
  content:''; position:absolute; border-radius:50%; pointer-events:none; z-index:0;
  -webkit-mask:linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor; mask-composite: exclude;
}
.csd-icon-stack::before{
  inset:-24px; padding:2.5px;
  background:conic-gradient(from 0deg, transparent 0%, #fff 3%, var(--accent-2) 9%, var(--accent) 17%, transparent 28%, transparent 100%);
  animation: csdRingSpin 5.5s linear infinite; opacity:.9;
}
.csd-icon-stack::after{
  inset:-42px; padding:2px;
  background:conic-gradient(from 180deg, transparent 0%, var(--accent) 4%, #fff 9%, transparent 18%, transparent 100%);
  animation: csdRingSpinReverse 8.5s linear infinite; opacity:.7;
}
.csd-orbit-label{
  position:absolute; top:100%; left:50%; transform:translateX(-50%);
  margin-top:6px; white-space:nowrap; pointer-events:none; z-index:5;
  font-family:var(--font-mono); font-size:10px; letter-spacing:.06em; text-transform:uppercase;
  color:#fff; background:rgba(5,5,10,.8); padding:3px 8px; border-radius:4px;
  border:1px solid color-mix(in srgb, var(--accent) 55%, transparent);
  opacity:1; transition:opacity .2s ease;
  text-shadow:0 0 6px color-mix(in srgb, var(--accent) 70%, transparent);
}
.csd-orbit-badge{position:absolute;inset:0;width:100%;height:100%;}
.csd-orbit-glyph{position:absolute;top:50%;left:50%;width:64%;height:64%;transform:translate(-50%,-50%);object-fit:contain;pointer-events:none;filter:drop-shadow(0 0 3px rgba(0,0,0,.5));}
.csd-icon-swirl{
  position:absolute;width:220px;height:220px;display:block;border-radius:50%;
  filter:drop-shadow(0 0 44px rgba(123,97,255,.5));
  animation:csdSwirlSpin 16s linear infinite;
}
.csd-icon-rift{
  position:absolute;z-index:2;width:150px;height:auto;display:block;overflow:visible;
  filter:drop-shadow(0 0 26px color-mix(in srgb, var(--accent-2) 65%, transparent));
  animation:csdRiftGlitch 4.4s infinite;
  transition:filter var(--transition-slow);
}
.csd-rift-glow{animation:csdRiftPulse 3.6s ease-in-out infinite;}
.csd-rift-spark{animation:csdRiftTwinkle 1.8s ease-in-out infinite;}
.csd-rift-spark:nth-child(3){animation-delay:.3s;}
.csd-rift-spark:nth-child(4){animation-delay:.9s;}
.csd-rift-spark:nth-child(5){animation-delay:.5s;}
.csd-rift-spark:nth-child(6){animation-delay:1.2s;}
.csd-rift-c{fill:var(--accent);mix-blend-mode:screen;animation:csdRiftJitterC 2.4s steps(1) infinite;}
.csd-rift-m{fill:var(--accent-2);mix-blend-mode:screen;animation:csdRiftJitterM 2.7s steps(1) infinite;}
.csd-rift-w{fill:#f4f4fb;}
@media (max-width:600px){
.csd-icon-stack{width:170px;height:170px;}
.csd-icon-swirl{width:170px;height:170px;}
.csd-icon-rift{width:118px;}
}
@media (prefers-reduced-motion:reduce){
.csd-icon-swirl,.csd-icon-rift,.csd-rift-glow,.csd-rift-spark,.csd-rift-c,.csd-rift-m,.csd-icon-stack::before,.csd-icon-stack::after{animation:none;}
}
/* ---- CSD Bot: site-wide guided FAQ assistant ---- */
.csd-bot-shell{
  position:fixed; z-index:970; right:24px; bottom:24px; left:auto; top:auto;
  width:400px; max-width:calc(100vw - 32px); max-height:min(600px,80vh);
  opacity:0; pointer-events:none; transform:translateY(20px) scale(.96);
  transition:opacity .28s ease, transform .32s cubic-bezier(.2,.8,.2,1);
}
.csd-bot-shell.is-open{ opacity:1; pointer-events:auto; transform:translateY(0) scale(1); }
.csd-bot-shell .audit-book-panel{ max-height:min(600px,80vh); height:100%; transform:none; transition:none; }
@media (max-width:520px){
.csd-bot-shell{ right:12px; left:12px; bottom:12px; width:auto; max-width:none; }
}
.csd-bot-panel{ max-width:600px; text-align:left; }
.csd-bot-header{ position:relative; z-index:1; display:flex; align-items:center; gap:14px; }
.csd-bot-header .cap-book-eyebrow-tab{ align-self:center; }
.csd-bot-header-avatar{
  width:52px; height:52px; border-radius:50%; object-fit:cover; flex-shrink:0;
  border:2px solid #17e6c4; background:#171728; box-shadow:0 0 14px rgba(23,230,196,.5);
}
.csd-bot-header-title{ display:flex; flex-direction:column; gap:4px; }
.csd-bot-heading{
  font-family:'Bebas Neue',sans-serif; font-weight:400; font-size:1.4rem; letter-spacing:.02em; color:#eef0f6;
}
.csd-bot-log{
  position:relative; z-index:1; display:flex; flex-direction:column; gap:14px;
  margin-top:20px; max-height:320px; overflow-y:auto; padding-right:6px;
}
.csd-bot-msg{ display:flex; gap:10px; align-items:flex-end; }
.csd-bot-msg-avatar{
  width:28px; height:28px; border-radius:50%; object-fit:cover; flex-shrink:0;
  border:2px solid #17e6c4; background:#171728;
}
.csd-bot-bubble{
  position:relative; background:#fff; border:2px solid #171728; border-radius:14px; padding:11px 16px;
  font-family:'Space Grotesk',sans-serif; font-size:.92rem; line-height:1.5; color:#171717;
  box-shadow:3px 3px 0 #07070c; max-width:80%;
}
.csd-bot-msg-user{ justify-content:flex-end; }
.csd-bot-msg-user .csd-bot-bubble{ background:#7b61ff; color:#fff; border-color:#07070c; }
.csd-bot-cta{
  display:inline-flex; align-items:center; gap:6px; margin:2px 0 0 38px; padding:8px 16px;
  background:#e5c506; color:#141200; border:2px solid #07070c; border-radius:999px;
  font-family:'Bebas Neue',sans-serif; font-size:.9rem; letter-spacing:.03em; text-transform:uppercase;
  cursor:pointer; box-shadow:3px 3px 0 #07070c; transition:transform .15s ease, box-shadow .15s ease;
}
.csd-bot-cta:hover{ transform:translate(-1px,-1px); box-shadow:4px 4px 0 #07070c; }
.csd-bot-cta:active{ transform:translate(0,0); box-shadow:2px 2px 0 #07070c; }
.csd-bot-options{
  position:relative; z-index:1; display:flex; flex-wrap:wrap; gap:10px;
  margin-top:18px; padding-top:16px; border-top:1px solid rgba(255,255,255,.1);
}
.csd-bot-option{
  padding:8px 14px; border:2px solid rgba(255,255,255,.18); border-radius:999px;
  background:rgba(255,255,255,.04); color:#eef0f6; font-family:'Space Grotesk',sans-serif;
  font-size:.85rem; cursor:pointer; transition:border-color .15s ease, background .15s ease;
}
.csd-bot-option:hover{ border-color:#7b61ff; background:rgba(123,97,255,.14); }
@media (max-width:600px){
.csd-bot-bubble{ max-width:100%; }
.csd-bot-cta{ margin-left:0; }
}
/* ================ INTAKE (TRANSMISSION CONSOLE) ================ */
    .csd-root{ position:relative; margin-top:26px; }
.csd-root *{ box-sizing:border-box; }
.csd-root button{ cursor:pointer; font-family:inherit; }
.csd-overlay{
      position:fixed; inset:0; z-index:960; display:flex; align-items:center; justify-content:center;
      padding:20px; opacity:0; pointer-events:none; transition:opacity .3s ease;
    }
.csd-overlay.is-open{ opacity:1; pointer-events:auto; }
.csd-overlay-backdrop{ position:absolute; inset:0; background:rgba(4,4,8,.82); backdrop-filter:blur(6px); -webkit-backdrop-filter:blur(6px); }
.csd-panel{
      position:relative;
      width:100%; max-width:1100px; height:88vh; max-height:900px;
      display:flex; flex-direction:column;
      background-color:#f6f7fb;
      border:4px solid #0b0b0f; border-radius:12px;
      box-shadow:7px 7px 0 #0b0b0f, 0 0 0 2px rgba(0,0,0,.06) inset;
      overflow:hidden;
      color:#171717;
    }
.csd-panel-close{
      position:absolute; top:10px; right:10px; z-index:6;
      background:none; border:none; padding:0; cursor:pointer; line-height:0;
      transition:transform .12s ease;
    }
.csd-panel-close img{ height:40px; display:block; }
.csd-panel-close:hover{transform:translateY(-1px) scale(1.03);}
.csd-panel-close:active{transform:translateY(0) scale(1);}
.csd-head{ position:relative; z-index:2; padding:18px 20px 14px; border-bottom:1px solid rgba(11,11,15,.12); }
.csd-eyebrow{ font-family:'JetBrains Mono',monospace; font-size:.7rem; letter-spacing:.1em; color:#7b61ff; text-transform:uppercase; display:block; margin-bottom:2px; }
.csd-title{ font-family:'Bebas Neue',sans-serif; font-size:1.5rem; letter-spacing:.03em; line-height:1; color:#0b0b0f; }
.csd-hud{ position:relative; z-index:2; display:flex; align-items:center; gap:14px; padding:12px 20px; border-bottom:1px solid rgba(11,11,15,.12); }
.csd-hud-label{ font-family:'Space Grotesk',sans-serif; font-size:.8rem; color:#54566b; white-space:nowrap; }
.csd-bars{ display:flex; gap:4px; flex:1; }
.csd-bar{ flex:1; height:5px; border-radius:3px; background:#e2e3ee; overflow:hidden; }
.csd-bar i{ display:block; height:100%; width:0%; background:#7b61ff; transition:width .5s cubic-bezier(.2,.7,.2,1); }
.csd-bar.is-fill i{ width:100%; }
.csd-bar.is-current i{ width:55%; }
.csd-stage{ position:relative; z-index:2; padding:22px 20px 8px; flex:1; min-height:0; overflow-y:auto; }
.csd-step{ animation:csd-step-in .3s ease-out; }
.csd-step.leaving{ animation:csd-step-out .15s ease-in forwards; }
.csd-porthole-wrap{ max-width:480px; margin:6px auto 22px; }
.csd-step-split{ display:flex; gap:24px; align-items:flex-start; }
.csd-step-split-fields{ flex:1; min-width:0; }
.csd-porthole-wrap.is-split{ max-width:none; margin:0; flex:0 0 42%; }
@media (max-width:640px){
.csd-step-split{ flex-direction:column; }
.csd-porthole-wrap.is-split{ flex:0 0 auto; width:100%; }
}
.csd-porthole{
      position:relative; overflow:hidden; border:3px solid #0b0b0f; border-radius:8px;
      box-shadow:4px 4px 0 rgba(11,11,15,.18);
      background-color:#e2e3ee; background-repeat:no-repeat; background-size:100% 100%; background-position:center;
    }
.csd-porthole-cap{
      position:absolute; left:12px; bottom:12px; z-index:2; font-family:'JetBrains Mono',monospace; font-size:.66rem; letter-spacing:.06em;
      color:#fff; background:#0b0b0f; text-transform:uppercase; padding:5px 12px; border-radius:999px;
    }
.csd-question{ font-family:'Space Grotesk',sans-serif; font-weight:600; font-size:1.18rem; line-height:1.35; margin:0 0 14px; text-wrap:balance; color:#0b0b0f; }
.csd-field{ margin-bottom:14px; }
.csd-field-label{ display:block; font-family:'Space Grotesk',sans-serif; font-weight:600; font-size:.82rem; color:#3d3d47; margin-bottom:8px; }
.csd-input,.csd-textarea{
      width:100%; background:#fff; border:2px solid #d8d9e4; border-radius:8px; color:#101014;
      font-family:'Space Grotesk',sans-serif; font-size:1rem; padding:10px 12px; transition:border-color .2s;
    }
.csd-input:focus,.csd-textarea:focus{ outline:none; border-color:#7b61ff; }
.csd-input::placeholder,.csd-textarea::placeholder{ color:#8d8fa0; opacity:1; }
.csd-textarea{ resize:vertical; min-height:76px; line-height:1.5; }
.csd-chips{ display:flex; flex-wrap:wrap; gap:11px; }
.csd-chips.is-stacked{ flex-direction:column; align-items:stretch; }
.csd-chip{
      padding:.6em 1em .6em .7em; border-radius:999px; border:2px solid #d8d9e4; background:#fff;
      color:#171717; font-size:.92rem; font-family:'Space Grotesk',sans-serif; display:flex; align-items:center; gap:9px;
      transition:border-color .16s,background .16s;
    }
.csd-chip:hover{ border-color:#7b61ff; }
.csd-chip .csd-dot{ width:16px; height:16px; flex-shrink:0; border-radius:50%; border:2px solid #c7c8d4; display:flex; align-items:center; justify-content:center; color:#fff; transition:background .16s,border-color .16s; }
.csd-chip .csd-dot svg{ width:70%; height:70%; display:block; }
.csd-chip.is-selected{ border-color:#7b61ff; background:#eee9ff; font-weight:600; }
.csd-needs-grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(130px,1fr)); gap:12px; }
.csd-needs-card{
      position:relative; display:flex; flex-direction:column; align-items:center; gap:8px;
      padding:18px 10px 14px; border-radius:12px; border:2px solid #d8d9e4; background:#fff;
      color:#171717; cursor:pointer; transition:border-color .16s,background .16s,transform .12s;
    }
.csd-needs-card:hover{ border-color:#7b61ff; transform:translateY(-2px); }
.csd-needs-card.is-selected{ border-color:#7b61ff; background:#eee9ff; }
.csd-needs-icon{ width:32px; height:32px; }
.csd-needs-icon-img{ width:44px; height:44px; object-fit:contain; }
.csd-needs-icon-emoji{
      width:44px; height:44px; border-radius:12px; background:#171728;
      display:flex; align-items:center; justify-content:center; font-size:26px; line-height:1;
      box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);
    }
.csd-needs-icon-svg{
      width:44px; height:44px; border-radius:12px; background:#171728; color:#fff;
      display:flex; align-items:center; justify-content:center;
      box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);
    }
.csd-needs-icon-svg svg{ width:24px; height:24px; display:block; }
.csd-needs-icon-idea{
      position:relative; width:44px; height:44px; border-radius:12px; background:#171728;
      display:flex; align-items:center; justify-content:center; font-size:24px;
      box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);
    }
.csd-idea-q, .csd-idea-bulb{ position:absolute; inset:0; display:flex; align-items:center; justify-content:center; }
.csd-idea-q{ animation:csd-idea-q-fade 3.4s ease-in-out infinite; }
.csd-idea-bulb{ animation:csd-idea-bulb-fade 3.4s ease-in-out infinite; }
@media (prefers-reduced-motion:reduce){
.csd-idea-q, .csd-idea-bulb{ animation:none; }
.csd-idea-bulb{ opacity:0; }
}
.csd-needs-label{ font-family:'Space Grotesk',sans-serif; font-size:.85rem; font-weight:600; text-align:center; line-height:1.25; }
.csd-needs-check{
      position:absolute; top:8px; right:8px; width:18px; height:18px; border-radius:50%;
      border:2px solid #c7c8d4; display:flex; align-items:center; justify-content:center; color:#fff;
      background:#fff; opacity:0; transition:opacity .12s,background .12s,border-color .12s;
    }
.csd-needs-check svg{ width:11px; height:11px; }
.csd-needs-card.is-selected .csd-needs-check{ opacity:1; background:#7b61ff; border-color:#7b61ff; }
.csd-link-fills{ display:flex; flex-direction:column; gap:10px; margin-top:16px; }
.csd-link-fill-row{ margin-bottom:0; }
.csd-chip.is-selected .csd-dot{ background:#7b61ff; border-color:#7b61ff; }
.csd-tier-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:14px; }
.csd-tier-grid.is-stacked{ grid-template-columns:1fr; }
.csd-tier-card{
      position:relative; display:flex; flex-direction:column; align-items:flex-start; gap:4px; text-align:left;
      padding:14px 16px 14px; border-radius:14px; border:2px solid #d8d9e4; background:#fff;
      color:#171717; cursor:pointer; transition:border-color .16s,background .16s,transform .12s;
    }
.csd-tier-card:hover{ border-color:#7b61ff; transform:translateY(-2px); }
.csd-tier-card.is-selected{ border-color:#7b61ff; background:#eee9ff; }
.csd-tier-name{ font-family:'Bebas Neue',sans-serif; font-size:1.15rem; letter-spacing:.02em; padding-right:26px; }
.csd-tier-price{ font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:.82rem; color:#7b61ff; }
.csd-tier-desc{ font-family:'Space Grotesk',sans-serif; font-size:.82rem; line-height:1.4; color:#3d3d47; }
.csd-tier-check{ position:absolute; top:16px; right:16px; }
.csd-info-list{ display:flex; flex-direction:column; gap:26px; }
.csd-info-row{ display:flex; gap:26px; align-items:center; }
.csd-info-row-content{ flex:1; min-width:0; display:flex; flex-direction:column; gap:8px; }
.csd-info-row-content .csd-tier-name{ font-size:1.4rem; padding-right:0; }
.csd-info-frame{
      flex:0 0 46%; max-width:300px; aspect-ratio:4/3; border:4px solid #07070c; border-radius:8px;
      background:#050509; box-shadow:6px 6px 0 #23253f; overflow:hidden;
      display:flex; align-items:center; justify-content:center;
    }
.csd-info-frame img{ width:100%; height:100%; object-fit:contain; display:block; }
@media (max-width:640px){
.csd-info-row{ flex-direction:column; }
.csd-info-frame{ flex:0 0 auto; width:100%; max-width:320px; }
}
.csd-book{ display:flex; gap:22px; align-items:flex-start; }
.csd-book-list{ display:flex; flex-direction:column; gap:8px; flex:0 0 34%; width:34%; }
.csd-book-item{
      position:relative; display:flex; flex-direction:row; align-items:baseline; justify-content:space-between; gap:8px; text-align:left;
      padding:10px 32px 10px 14px; border-radius:12px; border:2px solid #d8d9e4; background:#fff;
      color:#171717; cursor:pointer; transition:border-color .16s,background .16s,transform .12s;
    }
.csd-book-item:hover{ border-color:#7b61ff; transform:translateX(2px); }
.csd-book-item.is-selected{ border-color:#7b61ff; background:#eee9ff; }
.csd-book-item-name{ font-family:'Bebas Neue',sans-serif; font-size:.95rem; letter-spacing:.02em; line-height:1.15; }
.csd-book-item-price{ font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:.76rem; color:#7b61ff; flex-shrink:0; white-space:nowrap; }
.csd-book-check{ position:absolute; top:50%; right:10px; transform:translateY(-50%); }
.csd-book-frame-wrap{ flex:1; min-width:0; }
.csd-book-frame{
      position:relative; overflow:hidden; border:4px solid #07070c; border-radius:6px;
      box-shadow:0 0 0 2px rgba(255,255,255,.06) inset, 6px 6px 0 #23253f;
      max-height:340px; display:flex; align-items:center; justify-content:center; background:#050509;
    }
.csd-book-frame img{ width:100%; height:auto; max-height:340px; object-fit:contain; display:block; }
.csd-book-desc{ margin-top:4px; font-family:'Space Grotesk',sans-serif; font-size:.85rem; line-height:1.4; color:#3d3d47; }
@media (max-width:640px){
.csd-book{ flex-direction:column; }
.csd-book-list{ width:100%; flex:0 0 auto; flex-direction:row; flex-wrap:wrap; }
.csd-book-item{ flex:1 1 auto; }
}
.csd-dm{ margin:14px 0 0; text-align:center; font-size:14px; color:#5b5f73; }
.csd-dm a{ color:#6d4aff; font-weight:700; }
.csd-tip{ display:flex; align-items:center; justify-content:center; gap:16px; margin-top:4px; }
.csd-tip-avatar{
      flex:0 0 auto; width:64px; height:64px; border-radius:50%; background:#171728; border:2px solid #17e6c4;
      padding:7px; box-shadow:0 0 18px rgba(23,230,196,.55); animation:csd-tip-bob 2.6s ease-in-out infinite;
    }
.csd-tip-avatar img{ width:100%; height:100%; object-fit:contain; display:block; }
.csd-tip-bubble{
      position:relative; background:#ffffff; border:2px solid #171728; border-radius:16px; padding:13px 20px;
      font-family:'Space Grotesk',sans-serif; font-size:1rem; line-height:1.45; color:#171717; max-width:560px;
      box-shadow:4px 4px 0 #0b0b0f;
    }
.csd-tip-bubble::before{
      content:''; position:absolute; left:-11px; top:50%; transform:translateY(-50%); width:0; height:0;
      border-top:10px solid transparent; border-bottom:10px solid transparent; border-right:11px solid #171728;
    }
.csd-tip-bubble::after{
      content:''; position:absolute; left:-7px; top:50%; transform:translateY(-50%); width:0; height:0;
      border-top:9px solid transparent; border-bottom:9px solid transparent; border-right:9px solid #fff;
    }
@media (prefers-reduced-motion:reduce){
.csd-tip-avatar{ animation:none; }
}
.csd-manifest{ display:flex; flex-direction:column; gap:11px; }
.csd-manifest-row{ display:flex; justify-content:space-between; gap:16px; padding-bottom:11px; border-bottom:1px solid rgba(11,11,15,.1); font-family:'Space Grotesk',sans-serif; }
.csd-manifest-k{ font-family:'Space Grotesk',sans-serif; font-weight:600; font-size:.78rem; color:#54566b; flex-shrink:0; max-width:46%; }
.csd-manifest-v{ font-size:.92rem; text-align:right; color:#171717; }
.csd-send-error{ font-family:'Space Grotesk',sans-serif; font-size:.85rem; color:#b3261e; text-align:center; margin:14px 0 0; }
.csd-success{ display:flex; flex-direction:column; align-items:center; text-align:center; padding:38px 8px; }
.csd-success-ring{
      position:relative; width:68px; height:68px; border-radius:50%; background:#7b61ff; border:3px solid #0b0b0f;
      display:flex; align-items:center; justify-content:center; margin-bottom:24px; box-shadow:5px 5px 0 #0b0b0f;
      animation:csd-ring-in .4s ease-out;
    }
.csd-success h3{ font-family:'Bebas Neue',sans-serif; font-size:1.9rem; letter-spacing:.03em; margin:0 0 10px; color:#0b0b0f; }
.csd-success p{ color:#3d3d47; font-size:.95rem; line-height:1.6; max-width:38ch; font-family:'Space Grotesk',sans-serif; }
.csd-foot{ position:relative; z-index:2; display:flex; align-items:center; gap:10px; padding:16px 20px 20px; border-top:1px solid rgba(11,11,15,.12); }
.csd-btn{
      padding:.5em 1.2em; border-radius:8px; font-size:1.05rem; font-family:'Bebas Neue',sans-serif; letter-spacing:.04em;
      text-transform:uppercase; border:3px solid #0b0b0f; transition:transform .12s,box-shadow .12s,opacity .2s;
    }
.csd-btn-ghost{ background:transparent; border-color:#d8d9e4; color:#54566b; }
.csd-btn-ghost:hover{ border-color:#54566b; color:#0b0b0f; }
.csd-btn-solid{ margin-left:auto; background:#7b61ff; color:#fff; box-shadow:4px 4px 0 #0b0b0f; }
.csd-btn-solid:disabled{ opacity:.4; cursor:not-allowed; box-shadow:2px 2px 0 #0b0b0f; }
.csd-btn-solid:not(:disabled):hover{ transform:translate(-2px,-2px); box-shadow:6px 6px 0 #0b0b0f; }
.csd-btn-solid:not(:disabled):active{ transform:translate(0,0); box-shadow:2px 2px 0 #0b0b0f; }
.csd-btn-img{ background:none; border:none; box-shadow:none; padding:0; }
.csd-btn-img img{ height:88px; display:block; }
.csd-btn-img:not(:disabled):hover{ box-shadow:none; }
.csd-btn-img:not(:disabled):active{ box-shadow:none; }
@media (max-width:480px){
.csd-manifest-row{flex-direction:column;}
.csd-manifest-v{text-align:left;}
}
@media (max-width:600px){
.csd-foot{padding:14px 14px 16px;}
.csd-btn-img img{height:62px;}
}
/* ---- the request form follows the site's theme (every universe restyles it) ---- */
    .csd-panel{ --m-bg:color-mix(in srgb,var(--accent) 22%,var(--panel)); --m-card:color-mix(in srgb,var(--accent) 30%,var(--panel-2)); --line:color-mix(in srgb,var(--accent) 35%,rgba(255,255,255,.14));
      background:var(--m-bg); color:var(--ink); isolation:isolate; border:1px solid var(--line); border-radius:calc(var(--radius-card) + 6px); box-shadow:0 40px 100px rgba(0,0,0,.6); }
.csd-panel::before{ content:""; position:absolute; inset:-1px; border-radius:inherit; padding:1px; pointer-events:none; z-index:5;
      background:linear-gradient(135deg,var(--accent),transparent 35%,transparent 65%,var(--accent-2)); -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0); -webkit-mask-composite:xor; mask-composite:exclude; }
.csd-head,.csd-hud{ border-bottom-color:var(--line); }
.csd-foot{ border-top-color:var(--line); }
.csd-eyebrow{ color:var(--accent-2); }
.csd-title{ font-family:var(--font-display); font-weight:var(--display-weight); text-transform:var(--display-transform); color:var(--ink); font-size:1.6rem; }
.csd-hud-label,.csd-field-label,.csd-manifest-k{ color:var(--ink-muted); }
.csd-bar{ background:var(--line); }
.csd-bar i{ background:linear-gradient(90deg,var(--accent),var(--accent-2)); }
.csd-question,.csd-manifest-v,.csd-success h3{ color:var(--ink); }
.csd-tier-desc,.csd-book-desc,.csd-success p,.csd-dm,.csd-infocard-what{ color:color-mix(in srgb,var(--ink) 88%,var(--accent)); }
[data-universe="minimal"] .csd-panel{ --m-bg:#f4f6ff; --m-card:#ffffff; --line:#d6dbef; }
[data-universe="minimal"] .csd-tier-desc,[data-universe="minimal"] .csd-book-desc,[data-universe="minimal"] .csd-success p,[data-universe="minimal"] .csd-dm,[data-universe="minimal"] .csd-infocard-what{ color:#3b3e48; }
.csd-input,.csd-textarea{ background:var(--m-card); border-color:var(--line); color:var(--ink); }
.csd-input:focus,.csd-textarea:focus{ border-color:var(--accent-2); }
.csd-input::placeholder,.csd-textarea::placeholder{ color:var(--ink-muted); }
.csd-chip,.csd-needs-card,.csd-tier-card,.csd-book-item{ background:var(--m-card); border-color:var(--line); color:var(--ink); }
.csd-chip:hover,.csd-needs-card:hover,.csd-tier-card:hover,.csd-book-item:hover{ border-color:var(--accent-2); }
.csd-chip.is-selected,.csd-needs-card.is-selected,.csd-tier-card.is-selected,.csd-book-item.is-selected{ border-color:var(--accent-2); background:color-mix(in srgb,var(--accent) 22%,var(--m-card)); }
.csd-chip.is-selected .csd-dot,.csd-needs-card.is-selected .csd-needs-check{ background:var(--accent); border-color:var(--accent); }
.csd-tier-price,.csd-book-item-price,.csd-dm a{ color:var(--accent-2); }
.csd-manifest-row{ border-bottom-color:var(--line); }
.csd-success-ring{ background:var(--accent); border-color:var(--line); box-shadow:0 0 30px color-mix(in srgb,var(--accent) 60%,transparent); }
.csd-porthole,.csd-info-frame,.csd-book-frame{ border-color:var(--line); box-shadow:0 12px 30px rgba(0,0,0,.35); }
.csd-head{ padding-right:130px; }
@media (max-width:640px){
.csd-head{ padding-right:112px; }
.csd-title{ font-size:1.3rem; }
.csd-panel-close.gx.gx{ top:12px; right:12px; height:34px; padding:0 12px; font-size:12px; }
}
.csd-panel-close.gx.gx{ position:absolute; top:14px; right:16px; height:38px; padding:0 16px; font-size:13px; }
[data-universe="cosmic"] .csd-panel-close.gx.gx{ font-family:'Space Grotesk',sans-serif; }
/* choices: an animated icon made in code, the name below */
    .csd-needs-card{ padding:16px 8px 13px; gap:10px; }
.csd-needs-label{ font-size:.9rem; }
.csd-needs-check{ z-index:2; top:7px; right:7px; }
.csd-ico{ width:74px; height:74px; border-radius:20px; display:grid; place-items:center; position:relative;
      background:radial-gradient(circle at 30% 22%,color-mix(in srgb,var(--accent-2) 35%,transparent),transparent 62%),color-mix(in srgb,var(--accent) 18%,var(--m-card));
      border:1px solid color-mix(in srgb,var(--accent) 45%,var(--line)); box-shadow:0 8px 22px color-mix(in srgb,var(--accent) 22%,transparent),inset 0 1px 0 rgba(255,255,255,.12); transition:box-shadow .25s,transform .25s; }
.csd-needs-card:hover .csd-ico{ transform:translateY(-2px) rotate(-3deg); }
.csd-needs-card.is-selected .csd-ico{ box-shadow:0 0 0 2px var(--accent-2),0 10px 28px color-mix(in srgb,var(--accent-2) 45%,transparent); }
.csd-ico svg{ width:50px; height:50px; overflow:visible; }
.csd-ico .s{ fill:none; stroke:url(#csdIcoGrad); stroke-width:2.6; stroke-linecap:round; stroke-linejoin:round; }
.csd-ico .s.thick{ stroke-width:3.6; }
.csd-ico .f,.csd-ico .grow,.csd-ico .line,.csd-ico .eq,.csd-ico .play,.csd-ico .star path,.csd-ico .sat circle{ fill:url(#csdIcoGrad); }
.csd-ico .pop,.csd-ico .ant,.csd-ico .eye,.csd-ico .dots circle,.csd-ico .knob,.csd-ico .spark{ fill:var(--accent-2); }
.csd-ico *{ transform-box:fill-box; }
/* website: the page builds itself */
    .csd-ico .grow{ transform-origin:left center; animation:icoGrow 3.2s ease-in-out infinite; }
.csd-ico .g2{ animation-delay:.25s; }
.csd-ico .g3{ animation-delay:.5s; }
.csd-ico .pop{ transform-origin:center; animation:icoPop 3.2s ease-in-out infinite .7s; }
/* audit: a lens sweeps the page, lines light up, a check lands */
    .csd-ico .line{ opacity:.35; animation:icoLit 3.6s ease-in-out infinite; }
.csd-ico .l2{ animation-delay:.35s; }
.csd-ico .l3{ animation-delay:.7s; }
.csd-ico .lens{ animation:icoSweep 3.6s ease-in-out infinite; }
.csd-ico .glass{ fill:color-mix(in srgb,var(--accent-2) 22%,transparent); stroke:none; }
.csd-ico .tick{ fill:none; stroke:var(--accent-2); stroke-width:3; stroke-linecap:round; stroke-linejoin:round; stroke-dasharray:16; stroke-dashoffset:16; animation:icoTick 3.6s ease-in-out infinite; }
/* bot: blinks, antenna pulses, typing dots */
    .csd-ico .eye{ transform-origin:center; animation:icoBlink 4s ease-in-out infinite; }
.csd-ico .ant{ transform-origin:center; animation:icoPulse 1.6s ease-in-out infinite; }
.csd-ico .dots circle{ animation:icoDot 1.2s ease-in-out infinite; }
.csd-ico .dots circle:nth-child(2){ animation-delay:.15s; }
.csd-ico .dots circle:nth-child(3){ animation-delay:.3s; }
/* video: play button breathes, the progress bar runs */
    .csd-ico .play{ transform-origin:center; animation:icoBreathe 2s ease-in-out infinite; }
.csd-ico .track{ stroke:color-mix(in srgb,var(--ink) 25%,transparent); stroke-width:3; stroke-linecap:round; }
.csd-ico .prog{ stroke:url(#csdIcoGrad); stroke-width:3; stroke-linecap:round; stroke-dasharray:34; stroke-dashoffset:34; animation:icoProg 4s linear infinite; }
.csd-ico .knob{ animation:icoKnob 4s linear infinite; }
/* audio: equalizer */
    .csd-ico .eq{ transform-origin:center bottom; animation:icoEq 1.1s ease-in-out infinite; }
.csd-ico .e1{ animation-delay:-.2s; }
.csd-ico .e2{ animation-delay:-.7s; }
.csd-ico .e3{ animation-delay:-.4s; }
.csd-ico .e4{ animation-delay:-.9s; }
.csd-ico .e5{ animation-delay:-.1s; }
.csd-ico .e6{ animation-delay:-.55s; }
/* art pack: the set fans out, a sparkle twinkles */
    .csd-ico .card{ stroke:url(#csdIcoGrad); stroke-width:2.4; transform-origin:50% 100%; }
.csd-ico .c1{ fill:color-mix(in srgb,var(--accent) 35%,var(--m-card)); animation:icoFanL 3s ease-in-out infinite; }
.csd-ico .c2{ fill:color-mix(in srgb,var(--accent-2) 35%,var(--m-card)); animation:icoFanR 3s ease-in-out infinite; }
.csd-ico .c3{ fill:var(--m-card); }
.csd-ico .spark{ transform-origin:center; animation:icoTwinkle 3s ease-in-out infinite; }
/* something else: a sparkle turns, a moon orbits */
    .csd-ico .orbit{ fill:none; stroke:color-mix(in srgb,var(--accent-2) 45%,transparent); stroke-width:1.6; stroke-dasharray:3 4; }
.csd-ico .star{ transform-origin:center; animation:icoStar 4s ease-in-out infinite; }
.csd-ico .sat{ transform-origin:24px 24px; transform-box:view-box; animation:icoOrbit 3s linear infinite; }
@media (prefers-reduced-motion:reduce){
.csd-ico *{ animation:none !important; }
}
/* the info card under the choices */
    .csd-infocard{ margin-top:18px; padding:16px 18px; border-radius:var(--radius-card); background:var(--m-card); border:1px solid color-mix(in srgb,var(--accent-2) 45%,var(--line));
      font-family:var(--font-body); color:var(--ink); animation:csd-step-in .3s ease-out; }
.csd-infocard.is-empty{ text-align:center; color:var(--ink-muted); border-style:dashed; border-color:var(--line); }
.csd-infocard-top{ display:flex; justify-content:space-between; align-items:baseline; gap:12px; flex-wrap:wrap; }
.csd-infocard-top b{ font-family:var(--font-display); font-weight:var(--display-weight); text-transform:var(--display-transform); font-size:1.35rem; }
.csd-infocard-top span{ font-weight:800; font-size:1.1rem; color:var(--accent-2); }
.csd-infocard-what{ margin:6px 0 12px; color:var(--ink-muted); line-height:1.5; }
.csd-infocard-how{ font-family:var(--font-mono); font-size:11px; letter-spacing:.14em; text-transform:uppercase; color:var(--accent-2); margin-bottom:6px; }
.csd-infocard ol{ margin:0; padding-left:1.3em; display:grid; gap:6px; line-height:1.5; }
/* galaxy Back / Next */
    .csd-hud-label:empty{ display:none; }
/* living background: two glows drift, faint stars twinkle */
    .csd-fx{ position:absolute; inset:0; z-index:0; pointer-events:none; overflow:hidden; border-radius:inherit; }
.csd-fx i{ position:absolute; width:70%; height:70%; border-radius:50%; filter:blur(40px); opacity:.55; }
.csd-fx i:nth-child(1){ left:-15%; top:-25%; background:color-mix(in srgb,var(--accent-2) 55%,transparent); animation:csdDriftA 16s ease-in-out infinite alternate; }
.csd-fx i:nth-child(2){ right:-20%; bottom:-30%; background:color-mix(in srgb,var(--accent) 70%,transparent); animation:csdDriftB 19s ease-in-out infinite alternate; }
/* three layers of stars drift at different speeds and twinkle */
    .csd-fx b,.csd-fx b::before,.csd-fx b::after{ position:absolute; inset:0; background-repeat:repeat; }
.csd-fx b{ background-image:radial-gradient(1.1px 1.1px at 49.0% 56.1%,#fff 45%,transparent),radial-gradient(1.4px 1.4px at 24.4% 44.3%,#fff 45%,transparent),radial-gradient(1.5px 1.5px at 7.9% 87.9%,#fff 45%,transparent),radial-gradient(1.6px 1.6px at 41.1% 28.4%,#fff 45%,transparent),radial-gradient(1.4px 1.4px at 65.7% 7.7%,#fff 45%,transparent),radial-gradient(1.1px 1.1px at 23.5% 67.2%,#fff 45%,transparent),radial-gradient(1.1px 1.1px at 56.0% 48.7%,#fff 45%,transparent),radial-gradient(1.8px 1.8px at 5.0% 93.9%,#fff 45%,transparent),radial-gradient(1.8px 1.8px at 12.1% 44.4%,#fff 45%,transparent),radial-gradient(1.4px 1.4px at 18.9% 41.9%,#fff 45%,transparent),radial-gradient(1.1px 1.1px at 67.2% 28.1%,#fff 45%,transparent),radial-gradient(1.2px 1.2px at 98.6% 44.6%,#fff 45%,transparent),radial-gradient(1.1px 1.1px at 54.7% 33.0%,#fff 45%,transparent),radial-gradient(1.3px 1.3px at 77.3% 35.2%,#fff 45%,transparent),radial-gradient(1.2px 1.2px at 8.0% 92.6%,#fff 45%,transparent),radial-gradient(1.2px 1.2px at 88.4% 47.1%,#fff 45%,transparent),radial-gradient(1.6px 1.6px at 60.3% 40.2%,#fff 45%,transparent),radial-gradient(1.2px 1.2px at 65.3% 13.6%,#fff 45%,transparent),radial-gradient(1.0px 1.0px at 45.0% 9.0%,#fff 45%,transparent),radial-gradient(1.5px 1.5px at 41.2% 68.1%,#fff 45%,transparent),radial-gradient(1.4px 1.4px at 95.5% 32.5%,#fff 45%,transparent),radial-gradient(1.7px 1.7px at 49.6% 43.9%,#fff 45%,transparent),radial-gradient(1.2px 1.2px at 45.1% 43.9%,#fff 45%,transparent),radial-gradient(1.1px 1.1px at 23.7% 74.3%,#fff 45%,transparent),radial-gradient(1.7px 1.7px at 27.0% 76.7%,#fff 45%,transparent),radial-gradient(1.7px 1.7px at 96.8% 92.7%,#fff 45%,transparent); background-size:340px 340px; animation:csdStarsA 60s linear infinite,csdTwinkle 2.6s ease-in-out infinite alternate; }
.csd-fx b::before{ content:''; background-image:radial-gradient(2.1px 2.1px at 96.9% 59.2%,#fff 45%,transparent),radial-gradient(1.7px 1.7px at 82.4% 79.8%,#fff 45%,transparent),radial-gradient(1.6px 1.6px at 42.7% 22.5%,#fff 45%,transparent),radial-gradient(2.4px 2.4px at 19.5% 28.8%,#fff 45%,transparent),radial-gradient(2.3px 2.3px at 54.3% 40.4%,#fff 45%,transparent),radial-gradient(1.8px 1.8px at 88.9% 99.0%,#fff 45%,transparent),radial-gradient(1.4px 1.4px at 65.0% 46.3%,#fff 45%,transparent),radial-gradient(1.4px 1.4px at 24.1% 23.9%,#fff 45%,transparent),radial-gradient(2.3px 2.3px at 8.1% 73.4%,#fff 45%,transparent),radial-gradient(1.4px 1.4px at 58.4% 36.7%,#fff 45%,transparent),radial-gradient(2.2px 2.2px at 16.9% 55.2%,#fff 45%,transparent),radial-gradient(2.2px 2.2px at 25.1% 70.8%,#fff 45%,transparent),radial-gradient(1.7px 1.7px at 24.8% 25.0%,#fff 45%,transparent),radial-gradient(2.1px 2.1px at 57.5% 59.6%,#fff 45%,transparent),radial-gradient(1.8px 1.8px at 65.1% 16.1%,#fff 45%,transparent),radial-gradient(2.4px 2.4px at 89.0% 36.3%,#fff 45%,transparent),radial-gradient(2.1px 2.1px at 71.1% 61.8%,#fff 45%,transparent),radial-gradient(1.5px 1.5px at 52.9% 34.3%,#fff 45%,transparent),radial-gradient(1.8px 1.8px at 76.2% 95.4%,#fff 45%,transparent),radial-gradient(1.6px 1.6px at 82.6% 86.9%,#fff 45%,transparent),radial-gradient(2.3px 2.3px at 13.7% 50.4%,#fff 45%,transparent),radial-gradient(2.3px 2.3px at 11.3% 27.5%,#fff 45%,transparent); background-size:460px 460px; animation:csdStarsB 42s linear infinite,csdTwinkle 3.4s ease-in-out infinite alternate-reverse; }
.csd-fx b::after{ content:''; background-image:radial-gradient(2.2px 2.2px at 44.7% 62.3%,#fff 45%,transparent),radial-gradient(2.0px 2.0px at 40.5% 15.3%,#fff 45%,transparent),radial-gradient(3.0px 3.0px at 77.6% 57.0%,#fff 45%,transparent),radial-gradient(2.2px 2.2px at 97.9% 29.1%,#fff 45%,transparent),radial-gradient(2.4px 2.4px at 42.9% 73.1%,#fff 45%,transparent),radial-gradient(2.9px 2.9px at 54.4% 30.8%,#fff 45%,transparent),radial-gradient(3.0px 3.0px at 74.0% 43.8%,#fff 45%,transparent),radial-gradient(2.1px 2.1px at 43.3% 53.8%,#fff 45%,transparent),radial-gradient(2.9px 2.9px at 4.1% 2.5%,#fff 45%,transparent),radial-gradient(2.6px 2.6px at 97.9% 31.4%,#fff 45%,transparent); background-size:620px 620px; animation:csdStarsC 30s linear infinite,csdTwinkle 1.9s ease-in-out infinite alternate; }
[data-universe="minimal"] .csd-fx{ display:none; }
.csd-panel::after{ content:""; position:absolute; inset:-1px; border-radius:inherit; padding:2px; pointer-events:none; z-index:6;
      background:conic-gradient(from var(--csdAng),transparent 0 72%,color-mix(in srgb,var(--accent-2) 70%,transparent) 86%,#fff 89%,transparent 93%);
      -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0); -webkit-mask-composite:xor; mask-composite:exclude; animation:csdComet 6s linear infinite; }
/* the panel warps in */
    .csd-overlay.is-open .csd-panel{ animation:csdWarp .6s cubic-bezier(.2,.9,.25,1.05) both; }
/* options float in the first time */
    .csd-needs-grid.intro .csd-needs-card{ animation:csdCardIn .55s cubic-bezier(.2,.9,.25,1.1) both; }
.csd-needs-grid.intro .csd-needs-card:nth-child(2){ animation-delay:.06s; }
.csd-needs-grid.intro .csd-needs-card:nth-child(3){ animation-delay:.12s; }
.csd-needs-grid.intro .csd-needs-card:nth-child(4){ animation-delay:.18s; }
.csd-needs-grid.intro .csd-needs-card:nth-child(5){ animation-delay:.24s; }
.csd-needs-grid.intro .csd-needs-card:nth-child(6){ animation-delay:.3s; }
.csd-needs-grid.intro .csd-needs-card:nth-child(7){ animation-delay:.36s; }
/* cards tilt toward the cursor with a glare */
    .csd-needs-card{ transform:perspective(700px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)); transition:transform .18s ease,border-color .16s,background .16s; overflow:hidden; }
.csd-needs-card:hover{ transform:perspective(700px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) translateY(-3px); }
.csd-needs-card::after{ content:""; position:absolute; inset:0; pointer-events:none; opacity:0; transition:opacity .2s;
      background:radial-gradient(circle at var(--mx,50%) var(--my,50%),rgba(255,255,255,.22),transparent 55%); }
.csd-needs-card:hover::after{ opacity:1; }
/* sparks when an option is picked */
    .csd-burst{ position:absolute; z-index:8; width:0; height:0; pointer-events:none; }
.csd-burst span{ position:absolute; left:-3px; top:-3px; width:6px; height:6px; border-radius:50%; background:var(--accent-2); box-shadow:0 0 10px var(--accent-2);
      animation:csdSpark .7s cubic-bezier(.15,.7,.3,1) forwards; }
.csd-burst span:nth-child(odd){ background:#fff; width:4px; height:4px; }
/* the progress line glows */
    .csd-bar i{ box-shadow:0 0 12px var(--accent-2); }
@media (prefers-reduced-motion:reduce){
.csd-fx i,.csd-fx b,.csd-fx b::before,.csd-fx b::after,.csd-panel::after,.csd-overlay.is-open .csd-panel,.csd-needs-grid.intro .csd-needs-card{ animation:none; }
.csd-burst{ display:none; }
}
.csd-bars{ gap:0; border-radius:4px; overflow:hidden; background:var(--line); }
.csd-bar{ border-radius:0; background:transparent; height:6px; }
.csd-foot .gx.gx{ height:50px; padding:0 26px; font-size:16px; }
.csd-foot .csd-gx-next{ margin-left:auto; }
.csd-foot .gx.gx:disabled{ opacity:.45; cursor:not-allowed; transform:none; filter:grayscale(.4); }
[data-universe="cosmic"] .csd-foot .gx.gx{ font-family:'Space Grotesk',sans-serif; letter-spacing:.06em; }
[data-universe="cosmic"] .csd-foot .gx.gx::before{ background:radial-gradient(ellipse 72% 64% at 50% 52%,rgba(4,6,16,.8),rgba(4,6,16,.4) 70%,rgba(4,6,16,0)),linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,0) 48%); }
[data-universe="cosmic"] .csd-foot .gx.gx .gx-t{ color:#fff; filter:none; text-shadow:0 1px 2px rgba(0,0,0,.95),0 0 6px rgba(0,0,0,.85); }
[data-universe="cosmic"] .csd-foot .gx-gold.gx.gx .gx-t{ background:none; color:#ffd75e; -webkit-text-fill-color:#ffd75e; }
.csd-signal-row{ display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:36px; margin:6px auto 26px; }
.csd-signal-banner{
      position:relative; justify-self:end; width:100%; max-width:230px; aspect-ratio:864/1152; border-radius:16px;
      animation:csd-banner-float 4.5s ease-in-out infinite;
    }
.csd-signal-banner-ring{ position:absolute; inset:0; width:100%; height:100%; overflow:visible; z-index:2; pointer-events:none; }
.csd-signal-banner-ring rect{
      fill:none; stroke:#17e6c4; stroke-width:5; stroke-linecap:round;
      stroke-dasharray:16 84; stroke-dashoffset:0;
      filter:drop-shadow(0 0 5px #17e6c4) drop-shadow(0 0 10px #17e6c4);
      animation:csd-ring-travel 3.2s linear infinite;
    }
.csd-signal-banner-inner{ position:relative; z-index:1; width:100%; height:100%; border-radius:14px; overflow:hidden; background:#0b0b0f; }
.csd-signal-banner-inner img{ display:block; width:100%; height:100%; object-fit:cover; }
@media (max-width:640px){
.csd-signal-row{ grid-template-columns:1fr; justify-items:center; }
.csd-signal-banner{ justify-self:center; }
}
.csd-door{ position:relative; width:100%; max-width:320px; aspect-ratio:864/1152; display:flex; align-items:center; justify-content:center; }
.csd-door::before{
      content:''; position:absolute; inset:-10px; border-radius:22px; z-index:0;
      background:radial-gradient(circle, rgba(23,230,196,.55), transparent 70%);
      filter:blur(16px);
      animation:csd-door-pulse 2.6s ease-in-out infinite;
    }
.csd-door-frame{
      position:absolute; inset:0; background-image:url('assets/signal/door.jpg'); background-size:cover; background-position:center;
      border-radius:14px; z-index:1; overflow:hidden;
    }
.csd-door-frame::after{
      content:''; position:absolute; inset:0;
      background:linear-gradient(115deg, transparent 42%, rgba(255,255,255,.32) 50%, transparent 58%);
      background-size:250% 250%;
      animation:csd-door-sheen 3.6s ease-in-out infinite;
      pointer-events:none;
    }
.csd-door-btn{
      position:relative; z-index:2; padding:0; border:none; background:none; line-height:0; cursor:pointer;
      transition:transform .15s,box-shadow .15s;
      animation:csd-btn-glow 2.2s ease-in-out infinite;
    }
.csd-door-btn img{ height:64px; width:auto; display:block; }
.csd-door-btn.gx.gx{ height:74px; padding:0 34px; font-size:22px; border-radius:16px; }
[data-universe="cosmic"] .csd-door-btn.gx.gx{ font-family:'Space Grotesk',sans-serif; letter-spacing:.06em; }
[data-universe="cosmic"] .csd-door-btn.gx.gx::before{ background:radial-gradient(ellipse 72% 64% at 50% 52%,rgba(4,6,16,.8),rgba(4,6,16,.4) 70%,rgba(4,6,16,0)),linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,0) 48%); }
[data-universe="cosmic"] .csd-door-btn.gx.gx .gx-t{ background:none; color:#ffd75e; -webkit-text-fill-color:#ffd75e; filter:none; text-shadow:0 1px 2px rgba(0,0,0,.95); }
@media (max-width:640px){
.csd-door-btn.gx.gx{ height:62px; padding:0 24px; font-size:18px; }
}
.csd-door-btn:hover{ transform:translateY(-2px) scale(1.04); }
.csd-door-btn:active{ transform:translateY(0) scale(1); }
.csd-door.is-leaving{ animation:csd-door-out .35s ease-in forwards; }
@media (prefers-reduced-motion:reduce){
.csd-door.is-leaving{ animation:none; }
.csd-signal-banner, .csd-signal-banner-ring rect, .csd-door::before, .csd-door-frame::after, .csd-door-btn{ animation:none; }
}
.csd-bot-frame{position:absolute;top:50%;right:100%;margin-right:34px;transform:translateY(-50%);display:flex;flex-direction:column;align-items:center;gap:12px;width:170px;z-index:2;}
.csd-bot-launch{position:relative;width:150px;cursor:pointer;border:none;background:none;padding:0;display:block;-webkit-tap-highlight-color:transparent;filter:drop-shadow(0 0 20px color-mix(in srgb, var(--accent) 55%, transparent));animation:csdBotFloat 3.6s ease-in-out infinite;transition:transform .2s ease,filter .2s ease;}
.csd-bot-launch:hover{transform:translateY(-4px) scale(1.04);filter:drop-shadow(0 0 30px color-mix(in srgb, var(--accent) 80%, transparent));}
.csd-bot-launch:focus-visible{outline:2px solid var(--accent);outline-offset:6px;border-radius:8px;}
.csd-bot-launch img{width:100%;display:block;}
.csd-bot-hint{font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;text-align:center;color:var(--accent);text-shadow:0 0 8px color-mix(in srgb, var(--accent) 60%, transparent);animation:scrollLabelGlow 2.4s ease-in-out infinite;}
.csd-bot-toplabel{font-family:var(--font-mono);font-weight:700;font-size:13px;letter-spacing:.12em;text-transform:uppercase;text-align:center;color:var(--accent);text-shadow:0 0 8px color-mix(in srgb, var(--accent) 60%, transparent);}
@media (max-width:900px){
.csd-bot-frame{display:none;}
}
@media (prefers-reduced-motion:reduce){
.csd-bot-launch{animation:none;}
.csd-bot-hint{animation:none;}
}
/* ---- floating bot launcher: takes the audio widget's old spot, scrolls away with the page ---- */
.csd-bot-float-wrap{
  position:fixed; right:16px; top:106px; z-index:250;
  display:flex; flex-direction:column; align-items:center; gap:8px;
}
body.nav-menu-open .csd-bot-float-wrap{display:none;}
.csd-bot-float{
  width:64px; height:64px; border-radius:50%;
  border:3px solid #17e6c4; background:#171728; padding:0; cursor:pointer; overflow:hidden;
  box-shadow:0 8px 20px rgba(0,0,0,.5), 0 0 18px rgba(23,230,196,.5);
  animation:csdBotFloatBob 3.6s ease-in-out infinite;
  transition:transform .2s ease, box-shadow .2s ease;
}
.csd-bot-float img{width:100%; height:100%; object-fit:cover; display:block;}
.csd-bot-float:hover{transform:translateY(-3px) scale(1.06); box-shadow:0 10px 24px rgba(0,0,0,.55), 0 0 26px rgba(23,230,196,.75);}
.csd-bot-float:focus-visible{outline:2px solid #17e6c4; outline-offset:4px;}
.csd-bot-float-label{
  font-family:var(--font-mono); font-size:10px; font-weight:700; letter-spacing:.06em; text-transform:uppercase;
  text-align:center; color:#17e6c4; text-shadow:0 0 8px rgba(23,230,196,.6); white-space:nowrap;
}
@media (max-width:640px){
.csd-bot-float-wrap{right:8px; top:76px;}
.csd-bot-float{width:64px; height:64px;}
.csd-bot-float-label{font-size:9px;}
}
@media (prefers-reduced-motion:reduce){
.csd-bot-float{animation:none;}
}
@media (min-width:1440px){
.csd-bot-float-wrap{right:24px; top:146px;}
.csd-bot-float{width:96px; height:96px; border-width:4px;}
}
.pm-neon .pm-go.gx.gx{ height:48px; padding:0 22px; font-size:15px; text-decoration:none; }
[data-universe="cosmic"] .pm-neon .pm-go.gx.gx{ font-family:'Space Grotesk',sans-serif; letter-spacing:.06em; }
[data-universe="cosmic"] .pm-neon .pm-go.gx.gx::before{ background:radial-gradient(ellipse 72% 64% at 50% 52%,rgba(4,6,16,.8),rgba(4,6,16,.4) 70%,rgba(4,6,16,0)),linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,0) 48%); }
[data-universe="cosmic"] .pm-neon .pm-go.gx.gx .gx-t{ background:none; color:#ffd75e; -webkit-text-fill-color:#ffd75e; filter:none; text-shadow:0 1px 2px rgba(0,0,0,.95); }
.sm-planet .csd-ico{ width:clamp(48px,5.6vw,62px); height:clamp(48px,5.6vw,62px); border-radius:50%; transition:transform .3s,box-shadow .3s; }
.sm-planet .csd-ico svg{ width:62%; height:62%; }
.sm-planet:hover .csd-ico{ transform:scale(1.12); }
.sm-planet.is-on .csd-ico{ transform:scale(1.2); box-shadow:0 0 0 2px var(--accent-2),0 0 30px var(--accent-2); }
.sm-map .sm-go.gx.gx{ height:46px; padding:0 20px; font-size:15px; margin-left:auto; text-decoration:none; }
[data-universe="cosmic"] .sm-map .sm-go.gx.gx{ font-family:'Space Grotesk',sans-serif; letter-spacing:.06em; }
[data-universe="cosmic"] .sm-map .sm-go.gx.gx::before{ background:radial-gradient(ellipse 72% 64% at 50% 52%,rgba(4,6,16,.8),rgba(4,6,16,.4) 70%,rgba(4,6,16,0)),linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,0) 48%); }
[data-universe="cosmic"] .sm-map .sm-go.gx.gx .gx-t{ background:none; color:#ffd75e; -webkit-text-fill-color:#ffd75e; filter:none; text-shadow:0 1px 2px rgba(0,0,0,.95); }
.aud-buy-btn.gx.gx{height:52px; padding:0 22px; font-size:15.5px; text-decoration:none;}
[data-universe="cosmic"] .aud-buy-btn.gx.gx{font-family:'Space Grotesk',sans-serif; letter-spacing:.05em;}
[data-universe="cosmic"] .aud-buy-btn.gx.gx::before{background:radial-gradient(ellipse 72% 64% at 50% 52%,rgba(4,6,16,.8),rgba(4,6,16,.4) 70%,rgba(4,6,16,0)),linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,0) 48%);}
[data-universe="cosmic"] .aud-buy-btn.gx.gx .gx-t{background:none; color:#ffd75e; -webkit-text-fill-color:#ffd75e; filter:none; text-shadow:0 1px 2px rgba(0,0,0,.95);}
/* free tool buttons: live galaxy buttons with their own moving icons */
.hx-tool-gx.gx.gx{height:96px;width:min(100%,330px);padding:0 22px;gap:16px;font-size:20px;border-radius:16px;justify-content:flex-start;}
.hx-tool:hover .hx-tool-gx.gx.gx{transform:translateY(-2px);filter:brightness(1.08);}
.hx-tool:hover .hx-tool-gx.gx.gx::after{left:130%;}
[data-universe="cosmic"] .hx-tool-gx.gx.gx{font-family:'Space Grotesk',sans-serif;font-weight:800;letter-spacing:.05em;}
[data-universe="cosmic"] .hx-tool-gx.gx.gx::before{background:radial-gradient(ellipse 60% 70% at 62% 52%,rgba(4,6,16,.78),rgba(4,6,16,.35) 70%,rgba(4,6,16,0)),linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,0) 48%);}
[data-universe="cosmic"] .hx-tool-gx.gx.gx .gx-t{color:#fff;filter:none;text-shadow:0 0 12px rgba(160,220,255,.55),0 1px 2px rgba(0,0,0,.95);}
.hx-tool-gx .gx-t{white-space:normal;line-height:1.05;text-align:left;}
.hx-tool-gx .gx-t em{font-style:normal;display:block;color:#ffd75e;letter-spacing:.2em;font-size:.85em;}
/* ================= GALAXY BUTTONS: one custom family in the style of the menu art, drawn live =================
   A canvas behind each label paints a slowly swirling nebula (tinted by the theme), with twinkling stars,
   a gold frame, and a shine that sweeps across on hover. Doubled class so it beats older button rules. */
.gx.gx{position:relative;isolation:isolate;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:8px;height:42px;padding:0 18px;
  border-radius:12px;border:2px solid transparent;cursor:pointer;text-decoration:none;white-space:nowrap;
  background:linear-gradient(#060913,#060913) padding-box,linear-gradient(135deg,#7a5a17,#f6e27a 22%,#b8892d 40%,#fff4c0 52%,#a47a22 68%,#f2d56b 84%,#6f5214) border-box;
  box-shadow:0 0 0 1px rgba(0,0,0,.55),0 6px 18px rgba(0,0,0,.45),inset 0 0 14px color-mix(in srgb,var(--accent-2) 40%,transparent);
  font-family:'Oswald','Bebas Neue',sans-serif;font-weight:700;font-size:15px;letter-spacing:.09em;text-transform:uppercase;line-height:1;color:#fff;
  transition:transform .2s ease,box-shadow .25s ease,filter .25s ease;}
.gx.gx > canvas{position:absolute;inset:0;width:100%;height:100%;z-index:-2;display:block;}
.gx.gx::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;border-radius:inherit;
  background:linear-gradient(180deg,rgba(255,255,255,.16),rgba(255,255,255,0) 48%);}
.gx.gx::after{content:"";position:absolute;top:-10%;bottom:-10%;left:-70%;width:45%;z-index:1;pointer-events:none;transform:skewX(-20deg);
  background:linear-gradient(100deg,transparent,rgba(255,244,200,.55),transparent);transition:left .65s ease;}
.gx.gx:hover,.gx.gx:focus-visible{transform:translateY(-2px);filter:brightness(1.08);
  box-shadow:0 0 0 1px rgba(0,0,0,.55),0 10px 26px rgba(0,0,0,.5),0 0 22px color-mix(in srgb,var(--accent-2) 45%,transparent),inset 0 0 18px color-mix(in srgb,var(--accent-2) 55%,transparent);}
.gx.gx:hover::after,.gx.gx:focus-visible::after{left:130%;}
.gx.gx:focus-visible{outline:2px solid var(--accent-2);outline-offset:3px;}
.gx-t{position:relative;text-shadow:0 0 9px color-mix(in srgb,var(--accent-2) 75%,transparent),0 0 2px rgba(0,0,0,.9),0 1px 1px rgba(0,0,0,.9);}
.gx-gold .gx-t{background:linear-gradient(#fff8d6,#ffd24a 55%,#c9982f);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:none;
  filter:drop-shadow(0 0 6px rgba(255,210,90,.55)) drop-shadow(0 1px 0 rgba(0,0,0,.9));}
.gx-gold.gx.gx{animation:gxPulse 5.5s ease-in-out infinite;}
.gx-lg.gx.gx{height:56px;padding:0 28px;font-size:18px;border-radius:14px;}
.hx-nav .gx.gx{margin:0;}
@media (max-width:1099px){
.nav-hamburger:not([aria-expanded="true"]) .hx-menu-txt.gx{display:inline-flex;height:40px;padding:0 16px;gap:10px;font-size:15px;}
.hx-menu-txt.gx i{display:block;width:15px;height:2px;border-radius:2px;background:#fff;box-shadow:0 5px 0 #fff,0 -5px 0 #fff;}
}
@media (max-width:640px){
.gx-lg.gx.gx{width:100%;}
}
@media (prefers-reduced-motion:reduce){
.gx.gx,.gx-gold.gx.gx{animation:none;transition:none;}
.gx.gx::after{display:none;}
}
/* ---- galaxy buttons: each theme gives them its own identity ---- */
[data-universe="inferno"] .gx.gx{border-radius:3px;background:linear-gradient(#1a0502,#1a0502) padding-box,linear-gradient(135deg,#5a1405,#ff5a1f 25%,#ffd23f 45%,#ff9a3d 60%,#c43a17 80%,#5a1405) border-box;
  font-family:'Bebas Neue',sans-serif;font-weight:400;font-size:19px;letter-spacing:.12em;box-shadow:0 0 0 1px rgba(0,0,0,.6),0 6px 18px rgba(0,0,0,.5),inset 0 0 14px rgba(255,90,31,.45);}
[data-universe="inferno"] .gx-lg.gx.gx{font-size:23px;}
[data-universe="inferno"] .gx-t{text-shadow:0 0 10px rgba(255,120,40,.9),0 1px 1px #000;}
[data-universe="inferno"] .gx-gold .gx-t{background:none;color:#ffe27a;-webkit-text-fill-color:#ffe27a;filter:none;text-shadow:0 0 10px rgba(255,140,40,.95),0 0 3px rgba(0,0,0,.9),0 1px 1px #000;}
[data-universe="inferno"] .gx.gx:hover{box-shadow:0 0 0 1px rgba(0,0,0,.6),0 10px 26px rgba(0,0,0,.5),0 0 26px rgba(255,90,31,.55),inset 0 0 18px rgba(255,150,60,.6);}
[data-universe="comic"] .gx.gx{border-radius:14px;border:2.5px solid #0b0b0f;background:#2a1b4d;box-shadow:3px 3px 0 #0b0b0f;transform:rotate(-1.5deg);
  font-family:'Luckiest Guy',cursive;font-weight:400;font-size:16px;letter-spacing:.05em;animation:none;}
[data-universe="comic"] .gx-lg.gx.gx{font-size:20px;}
[data-universe="comic"] .gx.gx:hover{transform:rotate(0) translate(-1px,-2px);box-shadow:5px 5px 0 #0b0b0f;filter:none;}
[data-universe="comic"] .gx.gx::before{background:none;}
[data-universe="comic"] .gx-t{color:#fff;text-shadow:2px 0 #0b0b0f,-2px 0 #0b0b0f,0 2px #0b0b0f,0 -2px #0b0b0f,2px 2px #0b0b0f,-2px -2px #0b0b0f,2px -2px #0b0b0f,-2px 2px #0b0b0f;}
[data-universe="comic"] .gx-gold .gx-t{background:none;color:#c6ff3d;filter:none;}
[data-universe="minimal"] .gx.gx{border-radius:0;border:1.5px solid #101114;background:#fff;box-shadow:none;animation:none;
  font-family:'Inter',sans-serif;font-weight:600;font-size:13.5px;letter-spacing:.1em;color:#101114;}
[data-universe="minimal"] .gx.gx::before{background:none;}
[data-universe="minimal"] .gx.gx::after{background:linear-gradient(100deg,transparent,rgba(29,78,216,.14),transparent);}
[data-universe="minimal"] .gx.gx:hover{box-shadow:4px 4px 0 #1d4ed8;filter:none;}
[data-universe="minimal"] .gx-t{text-shadow:none;}
[data-universe="minimal"] .gx-gold.gx.gx{border-color:#1d4ed8;}
[data-universe="minimal"] .gx-gold .gx-t{background:none;color:#fff;filter:none;}
[data-universe="minimal"] .hx-menu-txt.gx i{background:#101114;box-shadow:0 5px 0 #101114,0 -5px 0 #101114;}
[data-universe="luxe"] .gx.gx{border-radius:2px;border:1px solid #c9a227;background:#0b0b0d;animation:none;
  box-shadow:0 0 0 3px #0b0b0d,0 0 0 4px rgba(201,162,39,.45),0 10px 24px rgba(0,0,0,.5);
  font-family:'Playfair Display',serif;font-style:italic;font-weight:600;font-size:17px;text-transform:none;letter-spacing:.02em;color:#f3eedf;}
[data-universe="luxe"] .gx-lg.gx.gx{font-size:21px;}
[data-universe="luxe"] .gx.gx::before{background:linear-gradient(180deg,rgba(255,240,200,.08),transparent 50%);}
[data-universe="luxe"] .gx.gx:hover{box-shadow:0 0 0 3px #0b0b0d,0 0 0 4px rgba(201,162,39,.8),0 12px 28px rgba(0,0,0,.55),0 0 22px rgba(201,162,39,.25);filter:none;}
[data-universe="luxe"] .gx-t{text-shadow:0 0 8px rgba(201,162,39,.35);}
[data-universe="luxe"] .gx-gold .gx-t{background:none;color:#0b0b0d;filter:none;text-shadow:none;}
/* ---- galaxy buttons: a solid dark outline around every label so it reads over the moving art ---- */
.gx.gx .gx-t{text-shadow:1.6px 0 rgba(0,0,0,.95),-1.6px 0 rgba(0,0,0,.95),0 1.6px rgba(0,0,0,.95),0 -1.6px rgba(0,0,0,.95),1.1199999999999999px 1.1199999999999999px rgba(0,0,0,.95),-1.1199999999999999px -1.1199999999999999px rgba(0,0,0,.95),1.1199999999999999px -1.1199999999999999px rgba(0,0,0,.95),-1.1199999999999999px 1.1199999999999999px rgba(0,0,0,.95),0 0 10px color-mix(in srgb,var(--accent-2) 70%,transparent);}
.gx-gold.gx.gx .gx-t{text-shadow:none;filter:drop-shadow(1.4px 0 0 rgba(0,0,0,.95)) drop-shadow(-1.4px 0 0 rgba(0,0,0,.95)) drop-shadow(0 1.4px 0 rgba(0,0,0,.95)) drop-shadow(0 -1.4px 0 rgba(0,0,0,.95)) drop-shadow(0 0 7px rgba(255,210,90,.55));}
[data-universe="inferno"] .gx.gx .gx-t{text-shadow:1.6px 0 rgba(20,3,0,.95),-1.6px 0 rgba(20,3,0,.95),0 1.6px rgba(20,3,0,.95),0 -1.6px rgba(20,3,0,.95),1.1199999999999999px 1.1199999999999999px rgba(20,3,0,.95),-1.1199999999999999px -1.1199999999999999px rgba(20,3,0,.95),1.1199999999999999px -1.1199999999999999px rgba(20,3,0,.95),-1.1199999999999999px 1.1199999999999999px rgba(20,3,0,.95),0 0 11px rgba(255,120,40,.85);}
[data-universe="inferno"] .gx-gold.gx.gx .gx-t{filter:none;text-shadow:1.6px 0 rgba(20,3,0,.95),-1.6px 0 rgba(20,3,0,.95),0 1.6px rgba(20,3,0,.95),0 -1.6px rgba(20,3,0,.95),1.1199999999999999px 1.1199999999999999px rgba(20,3,0,.95),-1.1199999999999999px -1.1199999999999999px rgba(20,3,0,.95),1.1199999999999999px -1.1199999999999999px rgba(20,3,0,.95),-1.1199999999999999px 1.1199999999999999px rgba(20,3,0,.95),0 0 12px rgba(255,140,40,.95);}
/* cosmic nav buttons: bigger words on a calm dark patch, no heavy outline, so they read at a glance */
[data-universe="cosmic"] :is(.hx-nav .gx.gx,.uni-current-btn.gx.gx,.hx-menu-txt.gx.gx){font-family:'Space Grotesk',sans-serif;font-size:15px;letter-spacing:.06em;}
[data-universe="cosmic"] :is(.hx-nav .gx.gx,.uni-current-btn.gx.gx,.hx-menu-txt.gx.gx)::before{
  background:radial-gradient(ellipse 72% 64% at 50% 52%,rgba(4,6,16,.8),rgba(4,6,16,.4) 70%,rgba(4,6,16,0)),linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,0) 48%);}
[data-universe="cosmic"] :is(.hx-nav .gx.gx,.uni-current-btn.gx.gx,.hx-menu-txt.gx.gx) .gx-t{color:#fff;filter:none;text-shadow:0 1px 2px rgba(0,0,0,.95),0 0 6px rgba(0,0,0,.85);}
[data-universe="cosmic"] .hx-ctas .gx.gx{font-family:'Space Grotesk',sans-serif;font-size:17px;letter-spacing:.06em;}
[data-universe="cosmic"] .hx-ctas .gx.gx::before{
  background:radial-gradient(ellipse 72% 64% at 50% 52%,rgba(4,6,16,.8),rgba(4,6,16,.4) 70%,rgba(4,6,16,0)),linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,0) 48%);}
[data-universe="cosmic"] .hx-ctas .gx.gx .gx-t{color:#fff;filter:none;text-shadow:0 1px 2px rgba(0,0,0,.95),0 0 6px rgba(0,0,0,.85);}
[data-universe="cosmic"] :is(.hx-nav,.hx-ctas) .gx-gold.gx.gx .gx-t{background:none;color:#ffd75e;-webkit-text-fill-color:#ffd75e;}
[data-universe="comic"] .gx.gx .gx-t,[data-universe="comic"] .gx-gold.gx.gx .gx-t{filter:none;text-shadow:2.4px 0 #0b0b0f,-2.4px 0 #0b0b0f,0 2.4px #0b0b0f,0 -2.4px #0b0b0f,1.68px 1.68px #0b0b0f,-1.68px -1.68px #0b0b0f,1.68px -1.68px #0b0b0f,-1.68px 1.68px #0b0b0f,3px 3px 0 #0b0b0f;}
[data-universe="luxe"] .gx.gx .gx-t{text-shadow:1.3px 0 rgba(0,0,0,.95),-1.3px 0 rgba(0,0,0,.95),0 1.3px rgba(0,0,0,.95),0 -1.3px rgba(0,0,0,.95),0.9099999999999999px 0.9099999999999999px rgba(0,0,0,.95),-0.9099999999999999px -0.9099999999999999px rgba(0,0,0,.95),0.9099999999999999px -0.9099999999999999px rgba(0,0,0,.95),-0.9099999999999999px 0.9099999999999999px rgba(0,0,0,.95),0 0 9px rgba(201,162,39,.45);}
[data-universe="minimal"] .gx.gx .gx-t,[data-universe="minimal"] .gx-gold.gx.gx .gx-t,[data-universe="luxe"] .gx-gold.gx.gx .gx-t{text-shadow:none;filter:none;}
/* ---- theme changer joins the galaxy button family; its hint tags match ---- */
.uni-current-btn.gx.gx{gap:9px;padding:0 14px 0 11px;height:40px;font-size:13px;}
.uni-current-btn.gx .uni-current-chevron{color:#fff;filter:drop-shadow(0 1px 1px rgba(0,0,0,.9));}
.uni-current-btn.gx .uni-current-dot{position:relative;}
[data-universe="minimal"] .uni-current-btn.gx .uni-current-chevron{color:#101114;filter:none;}
@keyframes csdRingSpin{ to{ transform:rotate(360deg); } }
@keyframes csdRingSpinReverse{ to{ transform:rotate(-360deg); } }
@keyframes csdSwirlSpin{ to{transform:rotate(360deg);} }
@keyframes csdRiftGlitch{
  0%,84%,100%{opacity:1;transform:translate(0,0) skew(0deg,0deg);}
  85%{opacity:.35;transform:translate(-4px,1px) skew(2deg,0deg);}
  86.5%{opacity:1;transform:translate(3px,-2px) skew(-3deg,0deg);}
  88%{opacity:.5;transform:translate(-2px,0) skew(1deg,0deg);}
  89.5%{opacity:1;transform:translate(2px,1px) skew(0deg,1deg);}
  91%{opacity:.25;transform:translate(0,-2px) skew(-2deg,0deg);}
  92.5%{opacity:1;transform:translate(0,0) skew(0deg,0deg);}
}
@keyframes csdRiftPulse{0%,100%{opacity:.55;}50%{opacity:.85;}}
@keyframes csdRiftTwinkle{0%,100%{opacity:.15;transform:scale(.7);}50%{opacity:1;transform:scale(1);}}
@keyframes csdRiftJitterC{0%,84%,100%{transform:translate(0,0);}86%{transform:translate(-2.5px,.5px);}90%{transform:translate(1.5px,-1px);}94%{transform:translate(-1px,0);}}
@keyframes csdRiftJitterM{0%,80%,100%{transform:translate(0,0);}82%{transform:translate(2.5px,-.5px);}88%{transform:translate(-1.5px,1px);}92%{transform:translate(1px,0);}}
@keyframes csd-step-in{ 0%{opacity:0;transform:translateY(6px);} 100%{opacity:1;transform:none;} }
@keyframes csd-step-out{ to{opacity:0;transform:translateY(-6px);} }
@keyframes csd-idea-q-fade{
      0%,55%{ opacity:1; transform:scale(1); }
      68%,88%{ opacity:0; transform:scale(.7); }
      100%{ opacity:1; transform:scale(1); }
    }
@keyframes csd-idea-bulb-fade{
      0%,55%{ opacity:0; transform:scale(.6); filter:drop-shadow(0 0 0 rgba(255,214,10,0)); }
      70%{ opacity:1; transform:scale(1.08); filter:drop-shadow(0 0 7px rgba(255,214,10,.95)); }
      88%{ opacity:1; transform:scale(1); filter:drop-shadow(0 0 5px rgba(255,214,10,.8)); }
      100%{ opacity:0; transform:scale(.6); filter:drop-shadow(0 0 0 rgba(255,214,10,0)); }
    }
@keyframes csd-tip-bob{ 0%,100%{ transform:translateY(0) rotate(-2deg); } 50%{ transform:translateY(-4px) rotate(2deg); } }
@keyframes csd-ring-in{ from{transform:scale(.7);opacity:0;} to{transform:scale(1);opacity:1;} }
@keyframes icoGrow{ 0%,8%{ transform:scaleX(0); } 30%,80%{ transform:scaleX(1); } 95%,100%{ transform:scaleX(0); } }
@keyframes icoPop{ 0%,10%{ transform:scale(0); } 25%{ transform:scale(1.25); } 32%,78%{ transform:scale(1); } 92%,100%{ transform:scale(0); } }
@keyframes icoSweep{ 0%,100%{ transform:translate(0,0); } 25%{ transform:translate(-12px,-12px); } 50%{ transform:translate(-8px,-2px); } 75%{ transform:translate(-13px,4px); } }
@keyframes icoLit{ 0%,15%{ opacity:.35; } 30%,60%{ opacity:1; } 80%,100%{ opacity:.35; } }
@keyframes icoTick{ 0%,55%{ stroke-dashoffset:16; } 70%,90%{ stroke-dashoffset:0; } 100%{ stroke-dashoffset:16; } }
@keyframes icoBlink{ 0%,44%,52%,100%{ transform:scaleY(1); } 48%{ transform:scaleY(.1); } }
@keyframes icoPulse{ 0%,100%{ transform:scale(1); opacity:1; } 50%{ transform:scale(1.5); opacity:.55; } }
@keyframes icoDot{ 0%,60%,100%{ transform:translateY(0); opacity:.5; } 30%{ transform:translateY(-4px); opacity:1; } }
@keyframes icoBreathe{ 0%,100%{ transform:scale(1); } 50%{ transform:scale(1.14); } }
@keyframes icoProg{ to{ stroke-dashoffset:0; } }
@keyframes icoKnob{ from{ transform:translateX(0); } to{ transform:translateX(34px); } }
@keyframes icoEq{ 0%,100%{ transform:scaleY(.25); } 50%{ transform:scaleY(1); } }
@keyframes icoFanL{ 0%,100%{ transform:rotate(0); } 40%,70%{ transform:rotate(-22deg) translateX(-2px); } }
@keyframes icoFanR{ 0%,100%{ transform:rotate(0); } 40%,70%{ transform:rotate(22deg) translateX(2px); } }
@keyframes icoTwinkle{ 0%,30%,100%{ transform:scale(0) rotate(0); } 50%{ transform:scale(1.2) rotate(45deg); } 65%{ transform:scale(1) rotate(90deg); } }
@keyframes icoStar{ 0%,100%{ transform:scale(.85) rotate(0); } 50%{ transform:scale(1.05) rotate(45deg); } }
@keyframes icoOrbit{ to{ transform:rotate(360deg); } }
@keyframes csdStarsA{ to{ background-position:-340px 170px; } }
@keyframes csdStarsB{ to{ background-position:-460px 230px; } }
@keyframes csdStarsC{ to{ background-position:-620px 310px; } }
@keyframes csdDriftA{ to{ transform:translate(30%,25%) scale(1.15); } }
@keyframes csdDriftB{ to{ transform:translate(-25%,-20%) scale(1.2); } }
@keyframes csdTwinkle{ from{ opacity:.95; } to{ opacity:.3; } }
@keyframes csdComet{ to{ --csdAng:360deg; } }
@keyframes csdWarp{ from{ opacity:0; transform:scale(.92) translateY(18px); filter:blur(10px); } to{ opacity:1; transform:none; filter:none; } }
@keyframes csdCardIn{ from{ opacity:0; transform:translateY(16px) scale(.94); } to{ opacity:1; transform:none; } }
@keyframes csdSpark{ to{ transform:rotate(var(--a)) translateX(var(--d)); opacity:0; } }
@keyframes csd-ring-travel{ to{ stroke-dashoffset:-100; } }
@keyframes csd-banner-float{ 0%,100%{ transform:translateY(0); } 50%{ transform:translateY(-7px); } }
@keyframes csd-door-pulse{ 0%,100%{ opacity:.45; transform:scale(1); } 50%{ opacity:1; transform:scale(1.06); } }
@keyframes csd-door-sheen{ 0%{ background-position:220% 220%; } 100%{ background-position:-40% -40%; } }
@keyframes csd-btn-glow{
      0%,100%{ filter:drop-shadow(0 0 0 rgba(214,18,122,0)); }
      50%{ filter:drop-shadow(0 0 16px rgba(214,18,122,.85)); }
    }
@keyframes csd-door-out{ to{ opacity:0; transform:scale(1.08); } }
@keyframes csdBotFloat{0%,100%{transform:translateY(0);}50%{transform:translateY(-9px);}}
@keyframes csdBotFloatBob{0%,100%{transform:translateY(0);}50%{transform:translateY(-6px);}}
@keyframes scrollLabelGlow{
  0%,100%{ text-shadow:0 0 4px color-mix(in srgb, var(--accent) 55%, transparent); }
  50%{ text-shadow:0 0 10px color-mix(in srgb, var(--accent) 90%, transparent), 0 0 16px color-mix(in srgb, var(--accent) 50%, transparent); }
}
@keyframes gxPulse{50%{box-shadow:0 0 0 1px rgba(0,0,0,.55),0 6px 18px rgba(0,0,0,.45),0 0 20px rgba(242,201,76,.35),inset 0 0 16px color-mix(in srgb,var(--accent-2) 50%,transparent);}}