:root {
  color-scheme: dark;
  --ink: #090a0f;
  --ink-2: #11121a;
  --paper: #f3f0ea;
  --muted: #9a9ba6;
  --line: rgba(255, 255, 255, .12);
  --acid: #d9ff57;
  --lilac: #a69cff;
  --pink: #ff5da2;
  --cyan: #57d8ff;
  --mono: "IBM Plex Mono", "SFMono-Regular", Consolas, monospace;
  --radius: 24px;
  --ease-ui: cubic-bezier(.2,.8,.2,1);
  --ease-physics: cubic-bezier(.18,.9,.24,1.14);
  --ease-snap: cubic-bezier(.16,1,.3,1);
  --ease-heavy: cubic-bezier(.4,0,.2,1);
  --dur-ui: 140ms;
  --dur-snap: 280ms;
  --dur-heavy: 760ms;
  --space-label-title: 48px;
  --space-title-copy: 32px;
  --section-space: clamp(96px,10vw,160px);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; min-width: 320px; background: var(--ink); color: #f7f5ef; font-family: "Manrope", sans-serif; overflow-x: hidden; }
.sr-only { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }
.graffiti-sprite { display:block; aspect-ratio:1; background-image:url("assets/graffiti/stickers/viralviz-arrow.png"); background-repeat:no-repeat; background-position:center; background-size:contain; }
.brand>.brand-mark.graffiti-sprite,
.auth-brand>.brand-mark.graffiti-sprite,
.profile-brand>.brand-mark.graffiti-sprite { background-image:url("assets/viralviz-mark.svg"); background-position:center; }
button, input { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
a { color: inherit; text-decoration: none; }
.noise { position: fixed; inset: 0; pointer-events: none; opacity: .035; z-index: 20; background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E"); }

.site-header { height: 86px; display: flex; align-items: center; justify-content: space-between; padding: 0 clamp(20px, 4vw, 68px); border-bottom: 1px solid var(--line); position: absolute; inset: 0 0 auto; z-index: 10; }
.brand { display:flex; align-items:center; gap:9px; color:#f7f5ef; }
.brand-mark { width:48px; flex:0 0 48px; background-position:0 0; rotate:-7deg; filter:drop-shadow(0 7px 8px rgba(0,0,0,.28)); transition:rotate .35s cubic-bezier(.2,.8,.2,1),scale .35s cubic-bezier(.2,.8,.2,1); }
.brand:hover .brand-mark { rotate:8deg; scale:1.08; }
.brand-lockup { display:grid; gap:2px; }
.brand-name { display:flex; align-items:center; gap:5px; font-size:13px; font-weight:800; letter-spacing:.07em; line-height:1; }
.brand-name strong { font:inherit; }
.brand-name b { padding:3px 6px 2px; color:#0b0d08; background:var(--acid); font:inherit; letter-spacing:.04em; rotate:-2deg; box-shadow:2px 2px 0 rgba(166,156,255,.75); }
.brand-lockup small { color:#787984; font-size:6px; font-weight:800; letter-spacing:.13em; }
.nav { display: flex; gap: 34px; font-size: 12px; color: #c5c4ca; }
.nav a { transition: color .2s; }
.nav a:hover { color: var(--acid); }
.header-cta { padding: 13px 17px; border: 1px solid rgba(255,255,255,.35); border-radius: 999px; font-size: 12px; font-weight: 700; transition: .25s; }
.header-cta span { color: var(--acid); margin-left: 8px; }
.header-cta:hover { background: #fff; color: #111; }

.hero { --pointer-x:75%; --pointer-y:34%; min-height: 820px; padding: 146px clamp(20px, 6vw, 96px) 72px; display: grid; grid-template-columns: minmax(420px, .9fr) minmax(520px, 1.1fr); gap: 50px; align-items: center; overflow: hidden; position:relative; background: radial-gradient(circle at var(--pointer-x) var(--pointer-y), rgba(101,79,218,.24), transparent 29%), linear-gradient(160deg,#090a0f 20%,#10111a 100%); }
.hero::after { content:""; position:absolute; width:380px; height:380px; left:var(--pointer-x); top:var(--pointer-y); transform:translate(-50%,-50%); background:radial-gradient(circle,rgba(217,255,87,.07),transparent 68%); pointer-events:none; transition:left .12s linear,top .12s linear; }
.hero-copy { position: relative; z-index: 2; }
.eyebrow { display: flex; align-items: center; gap: 10px; margin: 0 0 24px; font-size: 10px; font-weight: 700; letter-spacing: .18em; color: #b9b8c0; text-transform: uppercase; }
.eyebrow span { width: 20px; height: 1px; background: var(--acid); }
h1, h2 { margin: 0; font-weight: 600; letter-spacing: -.055em; line-height: 1.02; }
h1 { font-size: clamp(64px, 7vw, 112px); }
h1 em, h2 em { color: var(--lilac); font-style: normal; }
.hero-lead { max-width: 560px; margin: 30px 0 34px; color: #a8a7af; font-size: clamp(16px,1.4vw,20px); line-height: 1.7; }
.hero-actions { display: flex; align-items: center; gap: 25px; }
.button { min-height: 54px; padding: 0 24px; border-radius: 999px; display: inline-flex; align-items: center; justify-content: center; gap: 11px; font-size: 13px; font-weight: 800; transition: transform .25s, box-shadow .25s; }
.button:hover { transform: translateY(-3px); }
.button-primary { background: var(--acid); color: #11130d; box-shadow: 0 12px 35px rgba(217,255,87,.12); }
.button-dot { width: 8px; height: 8px; border: 2px solid #111; border-radius: 50%; }
.text-button { color: #fff; background: none; border: 0; padding: 14px 0; cursor: pointer; border-bottom: 1px solid #464751; font-size: 12px; }
.text-button span { color: var(--acid); padding-left: 15px; }

.hero-visual { min-height: 610px; position: relative; display: grid; place-items: center; }
.viralviz-art { --magnet-glow:0; width: min(42vw, 610px); aspect-ratio: 1; border-radius: 50%; position: relative; background: radial-gradient(circle at 50% 45%,rgba(255,255,255,.04),transparent 62%); transform:translate3d(var(--viralviz-x,0),var(--viralviz-y,0),0); transition:transform .24s cubic-bezier(.2,.7,.2,1); will-change:transform; }
.viralviz-art::before, .viralviz-art::after { content:""; position:absolute; inset: 12%; border: 1px solid rgba(255,255,255,.19); border-radius: 50%; box-shadow: 0 0 60px rgba(166,156,255,.08); }
.viralviz-art::after { inset: 23%; border-color: rgba(217,255,87,.17); }
.viralviz-ring { position:absolute; border:1px solid rgba(255,255,255,.09); border-radius:50%; inset:3%; }
.ring-a { transform: rotate(22deg) scaleY(.58); }
.ring-b { transform: rotate(-34deg) scaleY(.76); border-color:rgba(166,156,255,.2); }
.art-ball { --drag-x:0px; --drag-y:0px; position:absolute; border-radius:50%; z-index:3; translate:var(--drag-x) var(--drag-y); cursor:grab; pointer-events:auto; touch-action:none; user-select:none; will-change:translate; box-shadow: inset -18px -22px 28px rgba(0,0,0,.28), inset 8px 8px 18px rgba(255,255,255,.35), 0 20px 60px rgba(0,0,0,.35); }
.art-ball::before { content:""; position:absolute; inset:-16%; border:1px dashed rgba(226,217,255,.36); border-radius:43% 57% 49% 51%; opacity:0; scale:.72; transition:opacity .22s,scale .32s cubic-bezier(.2,.8,.2,1); }
.art-ball.is-dragging { cursor:grabbing; animation-play-state:paused; filter:brightness(1.12) drop-shadow(0 0 18px rgba(166,156,255,.3)); }
.art-ball.is-dragging::before { opacity:1; scale:1; animation:dragHalo 2.4s linear infinite; }
@keyframes dragHalo { to { rotate:360deg; } }
.magnet-tether { --tether-length:0px; --tether-angle:0deg; --tether-opacity:0; position:absolute; z-index:2; left:50%; top:50%; width:var(--tether-length); height:22px; overflow:visible; opacity:calc(var(--tether-opacity) * .72); transform:translateY(-10px) rotate(var(--tether-angle)); transform-origin:0 50%; filter:drop-shadow(0 0 5px rgba(166,156,255,.32)); pointer-events:none; }
.magnet-tether-line { fill:none; stroke:#d8d1ff; stroke-opacity:.72; stroke-width:1.7; stroke-dasharray:7 6; vector-effect:non-scaling-stroke; }
.magnet-tether-reveal { fill:none; stroke:#fff; stroke-width:8; stroke-linecap:round; stroke-dasharray:100 100; }
.magnet-tether.is-returning .magnet-tether-reveal { stroke-dasharray:0 100; transition:stroke-dasharray 1s linear; }
.magnet-tether.is-dragging .magnet-tether-reveal { stroke-dasharray:100 100; transition:none; }
.art-ball::after { content:""; position:absolute; width:22%; height:15%; background:rgba(255,255,255,.75); border-radius:50%; top:16%; left:25%; filter:blur(2px); transform:rotate(-25deg); }
.art-ball-a { width:29%; aspect-ratio:1; top:34%; left:38%; background:radial-gradient(circle at 36% 28%,#f5ffb7,var(--acid) 35%,#85ad18 90%); animation:floatA 5s ease-in-out infinite; }
.art-ball-b { width:15%; aspect-ratio:1; top:13%; right:13%; background:radial-gradient(circle at 35% 30%,#e8e4ff,var(--lilac) 45%,#5b4bd0); animation:floatB 6s ease-in-out infinite; }
.art-ball-c { width:9%; aspect-ratio:1; bottom:16%; left:18%; background:radial-gradient(circle at 35% 30%,#ffb5d4,var(--pink) 45%,#a41656); animation:floatB 4s ease-in-out infinite reverse; }
@keyframes floatA { 50% { transform:translate(8px,-16px) rotate(8deg); } }
@keyframes floatB { 50% { transform:translate(-10px,13px); } }

.ticker { height:72px; overflow:hidden; display:flex; align-items:center; background:#0b0c11; color:#eeece6; border-block:1px solid rgba(255,255,255,.13); position:relative; z-index:3; }
.ticker::before,.ticker::after { content:""; position:absolute; z-index:2; top:0; bottom:0; width:90px; pointer-events:none; }
.ticker::before { left:0; background:linear-gradient(90deg,#0b0c11,transparent); }
.ticker::after { right:0; background:linear-gradient(-90deg,#0b0c11,transparent); }
.ticker-track { width:max-content; display:flex; align-items:center; padding:0; font-weight:700; font-size:10px; letter-spacing:.18em; transform:translate3d(0,0,0); animation:ticker 31s linear infinite; will-change:transform; }
.ticker-group { min-width:max(100vw,760px); flex:0 0 auto; display:flex; align-items:center; justify-content:space-around; gap:34px; padding:0 34px 0 0; }
.ticker-track span { opacity:.74; white-space:nowrap; }
.ticker-track i { color:var(--acid); font-size:7px; font-style:normal; text-shadow:0 0 12px rgba(217,255,87,.6); }
@keyframes ticker { from { transform:translate3d(0,0,0); } to { transform:translate3d(-50%,0,0); } }

.section-blend { display:block; height:0; position:relative; z-index:1; pointer-events:none; }
.section-blend::before { content:""; position:absolute; left:0; right:0; top:-56px; height:calc(64vh + 56px); background:var(--bridge-from); }
.section-blend::after { content:none; }
.bridge-acid-paper { --bridge-from:#b3e33a; --bridge-to:#f3f0ea; --bridge-glow:rgba(217,255,87,.2); }
.bridge-paper-dark { --bridge-from:#f3f0ea; --bridge-to:#0b0c11; --bridge-glow:rgba(166,156,255,.2); }
.bridge-dark-paper { --bridge-from:#0b0c11; --bridge-to:#ebe7df; --bridge-glow:rgba(87,216,255,.14); }
.bridge-paper-ink { --bridge-from:#ebe7df; --bridge-to:#11131a; --bridge-glow:rgba(166,156,255,.18); }

.transition-section { position:relative; z-index:2; margin-top:-56px; transform-origin:50% 0; }
.has-mask-transitions .transition-section { clip-path:inset(0 var(--section-inset,0%) 0 round var(--section-radius,0px) var(--section-radius,0px) 0 0); transform:translate3d(0,var(--section-lift,0px),0); will-change:clip-path,transform; }

.studio-section, .modes-section { padding: 140px clamp(20px, 5vw, 76px); }
.studio-section { background:var(--paper); color:var(--ink); }
.section-heading { display:flex; justify-content:space-between; align-items:flex-end; gap:40px; margin:0 auto 60px; max-width:1380px; }
.section-heading h2 { font-size:clamp(54px,6vw,90px); line-height:1; }
.section-heading > p { max-width:440px; font-size:15px; line-height:1.7; color:#77777f; }
.studio-heading .eyebrow { color:#686870; }

.studio-shell { max-width:1380px; margin:auto; background:#11121a; color:#f7f5ef; border-radius:26px; overflow:hidden; box-shadow:0 40px 100px rgba(11,10,18,.24); border:1px solid #2a2b34; position:relative; }
.studio-topbar { height:52px; padding:0 18px; border-bottom:1px solid var(--line); display:grid; grid-template-columns:1fr auto 1fr; align-items:center; font-size:9px; letter-spacing:.12em; }
.window-dots { display:flex; gap:6px; }.window-dots i { width:7px;height:7px;border-radius:50%;background:#3b3c46; }.window-dots i:first-child{background:#ff6b7a}.window-dots i:nth-child(2){background:#ffd75d}.window-dots i:last-child{background:#73de84}
.project-name span { color:#686975; margin-right:8px; }.status { justify-self:end;color:#9a9ba5; }.status i { display:inline-block;width:6px;height:6px;border-radius:50%;background:#6cff85;margin-right:7px;box-shadow:0 0 8px #6cff85; }
.studio-grid { display:grid; grid-template-columns:230px minmax(450px,1fr) 260px; min-height:690px; }
.studio-grid.is-locked > * { pointer-events:none; user-select:none; }
.studio-grid.is-locked::after { content:""; position:absolute; inset:52px 0 0; z-index:4; background:linear-gradient(180deg,transparent 15%,rgba(8,9,14,.12) 55%,rgba(8,9,14,.62)); pointer-events:none; }
.access-gate { position:absolute; left:50%; bottom:32px; z-index:8; transform:translateX(-50%); width:min(680px,calc(100% - 40px)); min-height:124px; display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:24px; padding:20px 22px; border:1px solid rgba(255,255,255,.2); border-radius:18px; background:rgba(14,15,22,.86); backdrop-filter:blur(20px); box-shadow:0 24px 70px rgba(0,0,0,.4); }
.access-gate-index { color:#696a74; font-size:8px; letter-spacing:.14em; align-self:start; }
.access-gate strong { font-size:16px; line-height:1.35; }
.access-gate p { margin:6px 0 0; color:#757681; font-size:9px; }
.access-gate a { min-height:42px; padding:0 16px; display:flex; align-items:center; border-radius:999px; background:var(--acid); color:#111; font-size:9px; font-weight:800; white-space:nowrap; }
.access-gate a b { margin-left:10px; }
.mode-panel,.control-panel { padding:24px 18px; background:#0d0e14; }
.mode-panel { border-right:1px solid var(--line); }.control-panel { border-left:1px solid var(--line); }
.panel-title { margin:0 0 18px;color:#666773;font-size:9px;font-weight:800;letter-spacing:.16em; }
.mode-list { display:grid;gap:7px; }
.mode-card { width:100%; border:1px solid transparent; background:transparent; color:#b6b6bf; display:grid; grid-template-columns:38px 1fr auto; align-items:center; gap:10px; padding:10px; border-radius:12px; text-align:left; cursor:pointer; transition:.2s; }
.mode-card:hover { background:#181923; }.mode-card.active { background:#20212b;border-color:#363742;color:#fff; }
.mode-card > span:nth-child(2) { display:grid;gap:3px; }.mode-card strong{font-size:11px}.mode-card small{font-size:8px;color:#70717c}.mode-card > b{font-size:8px;color:#555661;font-weight:500}
.mode-icon { width:36px;height:36px;border-radius:9px;background:#181923;display:block;position:relative;overflow:hidden; }
.mode-card.active .mode-icon { background:#2a2b36; }
.mode-icon i { position:absolute; border-radius:50%; }
.icon-classic i { width:13px;height:13px;background:var(--acid);left:12px;top:11px;box-shadow:inset -3px -3px 5px #71930c; }
.icon-trail i:first-child{width:18px;height:18px;border:2px solid var(--lilac);left:7px;top:9px}.icon-trail i:last-child{width:7px;height:7px;background:var(--pink);right:6px;top:7px;box-shadow:-7px 8px 10px var(--pink)}
.icon-collision i{width:12px;height:12px;top:12px}.icon-collision i:first-child{background:var(--cyan);left:5px}.icon-collision i:last-child{background:var(--pink);right:5px}
.icon-bloom i{background:var(--acid);width:11px;height:11px}.icon-bloom i:first-child{left:12px;top:5px}.icon-bloom i:nth-child(2){left:6px;bottom:6px}.icon-bloom i:last-child{right:6px;bottom:6px}
.tip { margin-top:28px;padding:12px;border:1px solid var(--line);border-radius:12px;display:flex;gap:10px;align-items:flex-start; }.tip > span{width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:var(--acid);color:#111;font-size:14px;flex:0 0 auto}.tip p{margin:0;color:#656672;font-size:8px;line-height:1.5}.tip strong{display:block;color:#aaaab3;margin-bottom:2px}

.canvas-wrap { min-width:0; position:relative; display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle at center,#171925 0,#0c0d13 62%); }
.canvas-wrap::after { content:""; position:absolute; inset:0; pointer-events:none; background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:34px 34px; }
#simulator { width:min(100%,690px); height:auto; max-height:680px; position:relative;z-index:1;cursor:crosshair; }
.canvas-head { position:absolute;z-index:2;top:20px;left:22px;right:22px;display:flex;justify-content:space-between;color:#686975;font-size:8px;letter-spacing:.14em; }
.canvas-hint { position:absolute;z-index:2;bottom:20px;font-size:8px;letter-spacing:.13em;color:#62636d;transition:opacity .5s; }
.recording-badge { position:absolute;z-index:3;top:45px;right:22px;padding:8px 10px;background:rgba(17,18,26,.85);border:1px solid rgba(255,93,116,.45);border-radius:8px;color:#ff6a7d;font-size:9px;letter-spacing:.1em;display:none; }.recording-badge.visible{display:block}.recording-badge i{display:inline-block;width:6px;height:6px;background:#ff5d70;border-radius:50%;margin-right:6px;animation:blink 1s infinite}@keyframes blink{50%{opacity:.25}}
.panel-title-row{display:flex;justify-content:space-between;align-items:flex-start}.panel-title-row button{border:0;background:none;color:#6d6e78;font-size:8px;letter-spacing:.1em;cursor:pointer}.panel-title-row button:hover{color:var(--acid)}
.control-row { display:grid;gap:12px;margin:0 0 28px; }.control-row > span,.swatch-control > span,.toggle-row > span{display:flex;justify-content:space-between;align-items:center}.control-row b,.swatch-control b,.toggle-row b{font-size:10px}.control-row output,.swatch-control small,.toggle-row small{font-size:8px;color:#747580}
input[type=range]{width:100%;height:2px;appearance:none;background:linear-gradient(90deg,var(--acid) var(--fill,32%),#343540 var(--fill,32%));border-radius:2px}input[type=range]::-webkit-slider-thumb{appearance:none;width:12px;height:12px;background:var(--acid);border:3px solid #191a22;border-radius:50%;box-shadow:0 0 0 1px var(--acid);cursor:pointer}
.swatch-control{display:grid;gap:13px;margin-bottom:28px}.swatches{display:flex;gap:9px}.swatch{width:27px;height:27px;border:2px solid #0d0e14;border-radius:50%;background:var(--swatch);box-shadow:0 0 0 1px #343540;cursor:pointer}.swatch.active{box-shadow:0 0 0 2px #fff}
.toggle-row{display:flex;justify-content:space-between;padding:18px 0;border-top:1px solid var(--line);}.toggle-row > span{display:grid;gap:4px;justify-content:start}.toggle{width:34px;height:19px;border:0;border-radius:20px;background:#33343e;padding:2px;cursor:pointer}.toggle i{display:block;width:15px;height:15px;border-radius:50%;background:#7b7c86;transition:.2s}.toggle[aria-checked=true]{background:var(--acid)}.toggle[aria-checked=true] i{background:#111;transform:translateX(15px)}
.studio-actions{display:grid;grid-template-columns:42px 1fr;gap:8px;margin-top:20px}.icon-action,.record-button{height:44px;border-radius:10px;cursor:pointer}.icon-action{background:#20212a;color:#fff;border:1px solid #343540}.record-button{border:0;background:var(--acid);color:#111;display:flex;align-items:center;justify-content:center;gap:9px;font-size:10px;font-weight:800}.record-button i{width:8px;height:8px;background:#111;border-radius:50%}.record-button.recording{background:#ff6a7d}.record-note{font-size:7px;line-height:1.5;color:#565762;margin:10px 0 0}
.studio-actions-locked .record-button { cursor:default; }

.modes-section { position:relative; background:#0b0c11; overflow:hidden; }
.modes-graffiti { position:absolute; z-index:1; width:clamp(150px,17vw,270px); right:-3%; top:4%; background-position:50% 100%; opacity:.24; rotate:12deg; filter:grayscale(.25) contrast(1.08); pointer-events:none; }
.modes-section .section-heading,.modes-section .mode-showcase { position:relative; z-index:2; }
.modes-section .section-heading { align-items:flex-end; }.modes-section .section-heading > p{color:#777883}.modes-section .eyebrow{color:#898a94}
.mode-showcase { max-width:1380px;margin:auto;display:grid;grid-template-columns:repeat(2,1fr);gap:14px; }
.showcase-card { min-height:540px;border:1px solid var(--line);border-radius:24px;position:relative;overflow:hidden;padding:28px;display:flex;align-items:flex-end;cursor:pointer;transition:transform .3s,border-color .3s; }
.showcase-card:hover{transform:translateY(-6px);border-color:rgba(255,255,255,.3)}
.card-index{position:absolute;top:25px;left:28px;font-size:10px;letter-spacing:.12em;color:#777883}.card-copy{position:relative;z-index:3;max-width:440px}.card-copy>span{font-size:8px;letter-spacing:.15em;color:#a1a2ab}.card-copy h3{font-size:34px;letter-spacing:-.04em;margin:10px 0}.card-copy p{color:#a3a3ad;font-size:13px;line-height:1.6;margin:0 0 20px}.card-copy button{border:0;background:none;color:#fff;padding:0 0 7px;border-bottom:1px solid #4b4c56;font-size:10px;cursor:pointer}.card-copy button b{color:var(--acid);margin-left:9px}
.card-classic{background:radial-gradient(circle at 67% 30%,rgba(217,255,87,.11),transparent 36%),#11131a}.card-trail{background:radial-gradient(circle at 60% 35%,rgba(166,156,255,.18),transparent 40%),#13111b}.card-collision{background:radial-gradient(circle at 58% 32%,rgba(255,93,162,.13),transparent 39%),#161016}.card-bloom{background:radial-gradient(circle at 62% 30%,rgba(87,216,255,.14),transparent 38%),#0e1519}
.mini-viralviz,.mini-trail,.mini-collision,.mini-bloom{position:absolute;inset:50% auto auto 62%;width:260px;height:260px;transform:translate(-50%,-62%)}
.mini-viralviz{border:1px solid rgba(255,255,255,.2);border-radius:50%;box-shadow:0 0 60px rgba(217,255,87,.06)}.mini-viralviz i{position:absolute;border-radius:50%;background:var(--acid);box-shadow:inset -10px -12px 18px #66840b,0 0 25px rgba(217,255,87,.25)}.mini-viralviz i:first-child{width:70px;height:70px;top:32px;right:18px}.mini-viralviz i:last-child{width:28px;height:28px;left:21px;bottom:42px;background:var(--lilac)}
.mini-trail{border:1px solid rgba(166,156,255,.22);border-radius:50%;transform:translate(-50%,-62%) rotate(-18deg)}.mini-trail::before,.mini-trail::after{content:"";position:absolute;border:3px solid transparent;border-top-color:var(--lilac);border-radius:50%;inset:22px;filter:drop-shadow(0 0 8px var(--lilac))}.mini-trail::after{inset:55px;border-top-color:var(--pink);transform:rotate(120deg)}.mini-trail i{position:absolute;width:22px;height:22px;background:var(--acid);border-radius:50%;top:34px;right:28px;box-shadow:0 0 16px var(--acid)}
.mini-collision i{position:absolute;width:100px;height:100px;border-radius:50%;top:70px;box-shadow:inset -15px -15px 22px rgba(0,0,0,.3)}.mini-collision i:first-child{left:6px;background:var(--pink)}.mini-collision i:last-child{right:6px;background:var(--cyan)}.mini-collision::after{content:"✦";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:70px;color:var(--acid);filter:drop-shadow(0 0 18px var(--acid))}
.mini-bloom i{position:absolute;border-radius:50%;background:var(--cyan);box-shadow:inset -12px -12px 18px rgba(0,0,0,.25),0 0 25px rgba(87,216,255,.22)}.mini-bloom i:first-child{width:130px;height:130px;left:60px;top:36px}.mini-bloom i:nth-child(2){width:68px;height:68px;right:0;bottom:23px;background:var(--acid)}.mini-bloom i:last-child{width:42px;height:42px;left:25px;bottom:17px;background:var(--lilac)}

.features { padding:132px clamp(20px,5vw,76px) 150px; background:#ebe7df; color:#10110f; overflow:hidden; }
.motion-lab { position:relative; isolation:isolate; }
.motion-lab::before { content:""; position:absolute; inset:0; pointer-events:none; opacity:.2; background:linear-gradient(rgba(16,17,15,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(16,17,15,.055) 1px,transparent 1px); background-size:64px 64px; mask-image:linear-gradient(to bottom,transparent,#000 18%,#000 82%,transparent); }
.motion-lab::after { content:""; position:absolute; z-index:1; inset:22% -2% 4%; pointer-events:none; opacity:.34; background:radial-gradient(circle at 7% 28%,#6946d9 0 2px,transparent 3px),radial-gradient(circle at 93% 16%,#10110f 0 2px,transparent 3px),radial-gradient(circle at 88% 72%,#ff5da2 0 1.5px,transparent 2.5px),radial-gradient(circle at 14% 84%,#10110f 0 1.5px,transparent 2.5px),repeating-linear-gradient(112deg,transparent 0 86px,rgba(105,70,217,.1) 87px 88px,transparent 89px 178px); mask-image:linear-gradient(90deg,#000,transparent 28%,transparent 72%,#000); animation:motionDust 12s ease-in-out infinite alternate; }
@keyframes motionDust { to { translate:0 -12px; opacity:.48; } }
.motion-lab-head { max-width:1380px; margin:0 auto 72px; display:grid; grid-template-columns:minmax(0,1.45fr) minmax(260px,.4fr); gap:72px; align-items:end; position:relative; z-index:2; }
.motion-lab-head .eyebrow { grid-column:1/-1; margin-bottom:-26px; color:#363832; }
.motion-lab-head .eyebrow span { background:#10110f; }
.motion-lab-head h2 { max-width:900px; font-size:clamp(56px,6.5vw,104px); line-height:.96; letter-spacing:-.065em; }
.motion-lab-head h2 em { color:#6946d9; }
.motion-lab-head>p:last-child { max-width:360px; margin:0 0 8px; color:#676962; font-size:14px; line-height:1.7; }
.motion-lab-layout { max-width:1320px; margin:auto; display:grid; grid-template-columns:minmax(410px,.9fr) minmax(440px,1.1fr); gap:clamp(72px,8vw,128px); align-items:center; position:relative; z-index:2; }
.motion-poster-wrap { width:min(100%,560px); position:relative; justify-self:center; }
.motion-poster { width:100%; aspect-ratio:4/5; margin:0; position:relative; overflow:hidden; border:1px solid rgba(255,255,255,.18); border-radius:8px; background:#101116; box-shadow:0 35px 80px rgba(43,35,62,.18),0 2px 0 rgba(255,255,255,.3) inset; transform:rotate(-.55deg); transition:transform .5s cubic-bezier(.2,.8,.2,1),box-shadow .5s; }
.motion-poster-wrap:hover .motion-poster { transform:rotate(0deg) translateY(-4px); box-shadow:0 46px 95px rgba(43,35,62,.24); }
.motion-poster::before { content:""; position:absolute; z-index:2; inset:18px; border:1px solid rgba(255,255,255,.11); pointer-events:none; }
.motion-poster canvas { width:100%; height:100%; display:block; transform-origin:50% 50%; }
.motion-poster-meta { position:absolute; z-index:3; left:28px; right:28px; bottom:24px; display:flex; justify-content:space-between; gap:20px; color:rgba(255,255,255,.68); font-size:8px; font-weight:750; letter-spacing:.17em; }
.motion-sticker { position:absolute; z-index:4; display:block; opacity:0; pointer-events:none; user-select:none; filter:drop-shadow(0 14px 13px rgba(35,26,54,.18)); transform:scale(.7); transition:opacity .28s,transform .5s cubic-bezier(.2,.8,.2,1),filter .35s; }
.sticker-impact { width:25%; right:-11%; top:11%; background-position:100% 0; transform:rotate(14deg) scale(.76); }
.sticker-speed { width:27%; left:-13%; top:37%; background-position:0 100%; transform:rotate(-9deg) scale(.78); }
.sticker-sound { width:26%; right:-12%; bottom:18%; background-position:50% 0; transform:rotate(8deg) scale(.76); }
.sticker-palette { width:29%; left:-13%; bottom:4%; background-position:100% 100%; clip-path:none; filter:none!important; transform:rotate(-11deg) scale(.76); }
.motion-poster-wrap[data-scene="gravity"] .sticker-impact,
.motion-poster-wrap[data-scene="speed"] .sticker-speed,
.motion-poster-wrap[data-scene="impact"] .sticker-sound,
.motion-poster-wrap[data-scene="palette"] .sticker-palette { opacity:.92; transform:rotate(0deg) scale(.92); filter:drop-shadow(0 18px 16px rgba(35,26,54,.24)); }
.motion-index { border-top:1px solid rgba(16,17,15,.28); }
.motion-index-top { height:48px; padding:0 6px; display:flex; justify-content:space-between; align-items:center; border-bottom:1px solid rgba(16,17,15,.28); color:#6c6e67; font-size:8px; font-weight:800; letter-spacing:.14em; }
.motion-index-top strong { color:#10110f; font-size:9px; }
.motion-index-row { --row-accent:#6946d9; width:100%; height:126px; padding:22px 16px; display:grid; grid-template-columns:46px 1fr 34px; gap:20px; align-items:center; position:relative; isolation:isolate; overflow:hidden; color:#10110f; border:0; border-bottom:1px solid rgba(16,17,15,.28); border-radius:0; background:#ebe7df; text-align:left; cursor:pointer; transform-origin:left center; clip-path:polygon(0 0,100% 0,100% 100%,0 100%); transition:background .14s,color .14s,transform .14s cubic-bezier(.2,.8,.2,1),clip-path .14s cubic-bezier(.2,.8,.2,1); }
.motion-index-row[data-motion-scene="gravity"] { --row-accent:#badf34; }
.motion-index-row[data-motion-scene="speed"] { --row-accent:#32bde9; }
.motion-index-row[data-motion-scene="impact"] { --row-accent:#e94d91; }
.motion-index-row[data-motion-scene="palette"] { --row-accent:#7858db; }
.motion-index-row>* { position:relative; z-index:1; }
.motion-index-row::before { content:""; position:absolute; z-index:0; inset:16px auto 16px 0; width:3px; background:var(--row-accent); transform:scaleY(0); transform-origin:center; transition:transform .14s cubic-bezier(.2,.8,.2,1); }
.motion-index-row:not(.is-active):hover { background:#dfdcd4; transform:translateX(4px); clip-path:polygon(0 0,calc(100% - 13px) 0,100% 13px,100% 100%,0 100%); }
.motion-index-row:not(.is-active):hover::before { transform:scaleY(1); }
.motion-index-row:focus-visible { outline:2px solid #6946d9; outline-offset:-2px; }
.motion-index-row.is-active { color:#f6f3ec; background:#10110f; }
.motion-index-number { align-self:start; padding-top:5px; color:#767870; font-size:9px; font-weight:750; letter-spacing:.13em; }
.motion-index-row.is-active .motion-index-number { color:var(--acid); }
.motion-index-copy { display:grid; gap:0; position:relative; }
.motion-index-copy strong { font-size:clamp(29px,2.8vw,45px); font-weight:580; letter-spacing:-.05em; line-height:1; transition:translate .14s cubic-bezier(.2,.8,.2,1); }
.motion-index-row:not(.is-active):hover .motion-index-copy strong { translate:3px 0; }
.motion-index-copy small { width:min(410px,100%); position:absolute; left:0; top:calc(100% + 9px); margin:0; opacity:0; visibility:hidden; translate:0 5px; color:#92948d; font-size:12px; line-height:1.45; transition:opacity .16s,translate .16s,visibility 0s linear .16s; }
.motion-index-row.is-active small { opacity:1; visibility:visible; translate:0 0; color:#a8aaa3; transition-delay:0s; }
.motion-index-mark { justify-self:end; font-size:22px; transition:transform .14s cubic-bezier(.2,.8,.2,1),color .14s; }
.motion-index-row:not(.is-active):hover .motion-index-mark { color:var(--row-accent); transform:rotate(-10deg) scale(1.12); }
.motion-index-row.is-active .motion-index-mark { color:var(--row-accent); transform:rotate(14deg) scale(1.12); }
.motion-live-control { --control-color:#d9ff57; max-height:0; margin-top:0; padding:0 24px; position:relative; overflow:hidden; opacity:0; translate:0 -10px; color:#f5f2eb; background:radial-gradient(circle at 78% 0,color-mix(in srgb,var(--control-color) 18%,transparent),transparent 42%),#111218; border-radius:22px; transition:max-height .6s cubic-bezier(.2,.8,.2,1),margin .5s,padding .5s,opacity .3s,translate .5s,box-shadow .16s; }
.motion-live-control::after { content:""; position:absolute; z-index:0; left:clamp(28px,var(--control-fill,42%),calc(100% - 28px)); top:58%; width:82px; height:42px; translate:-50% -50%; pointer-events:none; opacity:0; scale:.72; background:radial-gradient(circle at 18% 40%,var(--control-color) 0 2px,transparent 3px),radial-gradient(circle at 78% 22%,var(--control-color) 0 1.5px,transparent 2.5px),radial-gradient(circle at 66% 82%,var(--control-color) 0 2px,transparent 3px),linear-gradient(104deg,transparent 45%,color-mix(in srgb,var(--control-color) 42%,transparent) 46% 48%,transparent 49%); filter:blur(.15px) drop-shadow(0 0 8px var(--control-color)); transition:opacity .12s,scale .18s; }
.motion-live-control.is-tuning { box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--control-color) 24%,transparent),0 16px 36px rgba(17,18,24,.16); }
.motion-live-control.is-tuning::after { opacity:.72; scale:1; }
.motion-live-control>* { position:relative; z-index:1; }
.motion-index.has-control .motion-live-control { max-height:190px; margin-top:18px; padding-block:22px 18px; opacity:1; translate:0 0; }
.motion-control-head { display:flex; align-items:end; justify-content:space-between; gap:24px; }
.motion-control-head>span { color:#a7a8af; font-size:9px; font-weight:800; letter-spacing:.13em; text-transform:uppercase; }
.motion-control-head output { color:var(--control-color); font-size:clamp(25px,2.2vw,36px); font-weight:750; letter-spacing:-.05em; line-height:1; }
.motion-control-range { display:block; height:64px; padding:10px 0; cursor:grab; }
.motion-control-range:active { cursor:grabbing; }
.motion-control-range input[type=range] { --fill:42%; width:100%; height:44px; margin:0; appearance:none; border:0; border-radius:0; outline:none; touch-action:pan-y; background:linear-gradient(90deg,var(--control-color) 0 var(--fill),rgba(255,255,255,.16) var(--fill) 100%) center/100% 5px no-repeat; }
.motion-control-range input[type=range]::-webkit-slider-runnable-track { height:5px; background:transparent; }
.motion-control-range input[type=range]::-webkit-slider-thumb { width:30px; height:30px; margin-top:-12px; appearance:none; border:4px solid #111218; border-radius:50%; background:radial-gradient(circle at 35% 30%,#fff 0 8%,var(--control-color) 22% 65%,#111218 68%); box-shadow:0 0 0 2px var(--control-color),0 0 0 8px color-mix(in srgb,var(--control-color) 16%,transparent),0 8px 20px rgba(0,0,0,.35); cursor:grab; }
.motion-control-range input[type=range]::-moz-range-track { height:5px; border:0; background:transparent; }
.motion-control-range input[type=range]::-moz-range-thumb { width:24px; height:24px; border:4px solid #111218; border-radius:50%; background:var(--control-color); box-shadow:0 0 0 2px var(--control-color),0 0 0 8px color-mix(in srgb,var(--control-color) 16%,transparent); cursor:grab; }
.motion-control-range input[type=range]:focus-visible::-webkit-slider-thumb { box-shadow:0 0 0 3px #fff,0 0 0 9px var(--control-color); }
.motion-control-foot { display:grid; grid-template-columns:1fr auto 1fr; gap:18px; color:#71727a; font-size:7px; font-weight:800; letter-spacing:.15em; }
.motion-control-foot span:last-child { text-align:right; }
.access-section { padding:140px clamp(20px,7vw,110px); background:#0e0f15; display:grid; grid-template-columns:1fr minmax(460px,.8fr); gap:100px; align-items:center; border-top:1px solid var(--line); position:relative; overflow:hidden; }
.access-graffiti { position:absolute; z-index:1; width:clamp(150px,18vw,280px); left:42%; top:3%; background-position:0 0; opacity:.2; rotate:-12deg; filter:grayscale(.35); pointer-events:none; }
.access-intro,.access-card { position:relative; z-index:2; }
.access-intro h2 { font-size:clamp(58px,6vw,96px); line-height:1.02; }
.access-intro > p:last-child { max-width:570px; margin:32px 0 0; color:#878892; line-height:1.75; font-size:15px; }
.access-card { --card-rx:0deg; --card-ry:0deg; min-height:570px; padding:28px; border-radius:26px; color:#10120d; background:linear-gradient(145deg,#edffad 0%,var(--acid) 42%,#b5e73a 100%); box-shadow:0 45px 100px rgba(0,0,0,.3); position:relative; overflow:hidden; transform-style:preserve-3d; will-change:transform; }
.access-card::before { content:""; position:absolute; width:310px; height:310px; border:1px solid rgba(0,0,0,.18); border-radius:50%; right:-90px; top:-95px; box-shadow:0 0 0 45px rgba(0,0,0,.025),0 0 0 90px rgba(0,0,0,.018); }
.access-card-top { display:flex; justify-content:space-between; font-size:9px; font-weight:800; letter-spacing:.15em; position:relative; }
.access-card h3 { font-size:clamp(42px,4vw,66px); letter-spacing:-.055em; line-height:.95; margin:70px 0 16px; position:relative; }
.access-status { display:flex; align-items:center; gap:8px; font-size:10px; font-weight:700; text-transform:uppercase; letter-spacing:.1em; }
.access-status i { width:7px; height:7px; border-radius:50%; background:#111; animation:blink 1.6s infinite; }
.access-card ul { list-style:none; padding:0; margin:55px 0 40px; border-top:1px solid rgba(0,0,0,.2); }
.access-card li { padding:13px 0; border-bottom:1px solid rgba(0,0,0,.2); font-size:12px; font-weight:700; }
.access-card li span { display:inline-block; width:38px; opacity:.45; font-size:8px; }
.access-card-bottom { display:flex; justify-content:space-between; align-items:center; gap:20px; }
.access-card-bottom strong { max-width:210px; font-size:11px; }
.access-card-bottom button { min-height:44px; border:0; border-radius:999px; padding:0 18px; background:#111; color:#fff; font-size:9px; font-weight:800; opacity:1; }
.reveal-ready { opacity:0; transform:translateY(44px); transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1); }
.reveal-ready.is-visible { opacity:1; transform:none; }
.access-card.reveal-ready.is-visible { transform:perspective(1050px) rotateX(var(--card-rx)) rotateY(var(--card-ry)); transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .22s ease-out,box-shadow .22s ease-out; }
.access-card.reveal-ready.is-visible:hover { box-shadow:0 58px 125px rgba(0,0,0,.42); }
.showcase-card:nth-child(2){transition-delay:.08s}.showcase-card:nth-child(3){transition-delay:.16s}.showcase-card:nth-child(4){transition-delay:.24s}
.final-cta{min-height:740px;padding:130px 30px;display:grid;place-content:center;text-align:center;position:relative;overflow:hidden;background:radial-gradient(circle at 50% 55%,rgba(166,156,255,.19),transparent 35%),#0a0b10}.final-cta .eyebrow{justify-content:center}.final-cta h2{font-size:clamp(70px,9vw,140px);line-height:1.02;position:relative;z-index:2}.final-cta .button{margin:42px auto 0;position:relative;z-index:2}.button-light{background:#fff;color:#111}.button-light span{color:#594de0}.cta-viralviz{position:absolute;width:680px;height:680px;border:1px solid rgba(255,255,255,.08);border-radius:50%;left:50%;top:50%;transform:translate(-50%,-44%)}.cta-viralviz i{position:absolute;border-radius:50%}.cta-viralviz i:first-child{width:80px;height:80px;background:var(--acid);top:12%;right:10%;box-shadow:inset -15px -15px 25px #718c11}.cta-viralviz i:nth-child(2){width:34px;height:34px;background:var(--pink);left:8%;bottom:24%}.cta-viralviz i:last-child{width:18px;height:18px;background:var(--cyan);right:22%;bottom:6%}
footer{min-height:110px;padding:0 clamp(20px,5vw,76px);display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);font-size:10px;color:#747580}footer .brand{color:#fff}footer>a:last-child{color:#bbbcc5}

@media (max-width:1100px){.hero{grid-template-columns:1fr;padding-top:135px}.hero-copy{max-width:760px}.hero-visual{min-height:530px}.viralviz-art{width:min(76vw,570px)}.studio-grid{grid-template-columns:190px minmax(380px,1fr)}.control-panel{grid-column:1/-1;border-left:0;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.control-panel .panel-title-row,.control-panel .studio-actions,.control-panel .record-note{grid-column:1/-1}.toggle-row{padding:0;border:0}.features{grid-template-columns:1fr;gap:60px}.access-section{grid-template-columns:1fr;gap:60px}.access-card{max-width:680px}}
@media (max-width:760px){.site-header{height:72px}.nav{display:none}.header-cta{padding:10px 12px;font-size:10px}.scroll-progress{display:none}.hero{grid-template-columns:1fr;min-height:unset;padding-top:120px}.hero-rail{display:none}.hero-actions{align-items:flex-start;flex-direction:column}.hero-visual{min-height:410px}.viralviz-art{width:min(96vw,440px)}.section-heading{display:block}.section-heading>p{margin:25px 0 0}.studio-section,.modes-section{padding:90px 14px}.studio-grid{display:flex;flex-direction:column}.mode-panel{border-right:0;border-bottom:1px solid var(--line)}.mode-list{grid-template-columns:repeat(2,1fr)}.tip{display:none}.canvas-wrap{min-height:440px}.control-panel{display:grid;grid-template-columns:1fr 1fr}.control-panel .control-row:last-of-type,.control-panel .swatch-control,.control-panel .toggle-row{grid-column:1/-1}.access-gate{grid-template-columns:1fr;gap:12px;bottom:18px}.access-gate-index{display:none}.access-gate a{justify-content:center}.mode-showcase{grid-template-columns:1fr}.showcase-card{min-height:500px}.features{padding:90px 20px}.access-section{padding:90px 20px}.access-card{min-height:520px}.final-cta{min-height:600px}.cta-viralviz{width:500px;height:500px}footer{padding:30px 20px;gap:25px;flex-wrap:wrap}}
@media (max-width:440px){h1{font-size:56px}.hero{padding-inline:18px}.header-cta span{display:none}.studio-topbar{grid-template-columns:1fr 1fr}.project-name{display:none}.canvas-wrap{min-height:350px}.control-panel{grid-template-columns:1fr}.control-panel>*{grid-column:1/-1!important}.mode-card{grid-template-columns:34px 1fr}.mode-card>b{display:none}.showcase-card{padding:22px;min-height:460px}.mini-viralviz,.mini-trail,.mini-collision,.mini-bloom{left:50%;transform:translate(-50%,-68%)}.final-cta h2{font-size:57px}}

@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ticker-track,.art-ball{animation:none!important}.viralviz-art,.access-card.reveal-ready.is-visible{transform:none!important;transition:none!important}}

/* SOTY direction: one immersive object, oversized typography and a scroll-directed scene. */
.hero {
  min-height:100svh;
  height:max(820px,100svh);
  display:block;
  padding:0;
  isolation:isolate;
  background:
    radial-gradient(circle at var(--pointer-x) var(--pointer-y),rgba(145,119,255,.24),transparent 24%),
    radial-gradient(circle at 50% 48%,rgba(217,255,87,.08),transparent 28%),
    #08090d;
}
.hero.is-drag-active { z-index:9; overflow:visible; }
.hero::after { z-index:1; width:560px; height:560px; }
.header-cta { background:linear-gradient(165deg,rgba(255,255,255,.075),rgba(255,255,255,.018)); backdrop-filter:blur(18px) saturate(1.35); box-shadow:inset 0 0 14px rgba(255,255,255,.1),0 8px 28px rgba(0,0,0,.18); }
.hero-grid { position:absolute; inset:86px 0 0; z-index:0; opacity:.28; background-image:linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px); background-size:clamp(56px,6.25vw,120px) clamp(56px,6.25vw,120px); mask-image:radial-gradient(circle at 50% 48%,#000 0,transparent 74%); }
.hero-visual { position:absolute; inset:70px 0 40px; z-index:6; min-height:0; pointer-events:none; }
.hero.is-drag-active .hero-visual { z-index:9; }
.hero-graffiti { position:absolute; z-index:4; width:clamp(105px,12vw,190px); right:4%; top:28%; background-position:0 0; opacity:.64; rotate:9deg; filter:drop-shadow(0 20px 24px rgba(0,0,0,.35)); mix-blend-mode:screen; pointer-events:none; }
.viralviz-art { width:clamp(420px,min(58vw,calc(100svh - 120px)),760px); background:radial-gradient(circle at 50% 48%,rgba(255,255,255,.08),transparent 55%); filter:drop-shadow(0 70px 80px rgba(0,0,0,.55)); }
.viralviz-art::before { inset:4%; border-color:rgba(255,255,255,.14); box-shadow:0 0 0 30px rgba(255,255,255,.012),0 0 100px rgba(166,156,255,.12); }
.viralviz-art::after { inset:18%; border-color:rgba(217,255,87,.2); }
.viralviz-core { position:absolute; z-index:1; inset:31%; border-radius:50%; isolation:isolate; background:radial-gradient(circle at 34% 26%,#353744 0,#13151c 30%,#030407 76%); box-shadow:inset -35px -45px 70px #000,inset 18px 16px 30px rgba(255,255,255,.1),0 0 0 1px rgba(255,255,255,.18),0 45px 90px rgba(0,0,0,.65); }
.viralviz-core::before { content:""; position:absolute; z-index:-1; inset:-30%; border-radius:50%; opacity:var(--magnet-glow); box-shadow:0 0 0 1px rgba(166,156,255,.42),0 0 86px rgba(166,156,255,.2); transition:opacity .18s linear; pointer-events:none; }
.viralviz-core::after { content:""; position:absolute; width:31%; height:13%; left:22%; top:18%; border-radius:50%; transform:rotate(-26deg); background:rgba(255,255,255,.3); filter:blur(7px); }
.ring-a { inset:-4%; border-color:rgba(255,255,255,.18); transform:rotate(17deg) scaleY(.43); }
.ring-b { inset:9%; border-color:rgba(166,156,255,.28); transform:rotate(-38deg) scaleY(.68); }
.art-ball-a { width:18%; top:24%; left:19%; }
.art-ball-b { width:11%; top:12%; right:18%; }
.art-ball-c { width:8%; bottom:11%; left:auto; right:22%; }
.hero-copy { position:absolute; z-index:8; left:clamp(24px,5vw,82px); bottom:clamp(58px,7vh,84px); width:min(760px,53vw); }
.hero.is-drag-active .hero-copy { z-index:10; }
.hero-copy h1 { display:flex; flex-direction:column; align-items:flex-start; font-size:clamp(54px,5.1vw,98px); line-height:1.06; letter-spacing:-.055em; text-shadow:0 3px 40px rgba(0,0,0,.8); }
.hero-lead { max-width:490px; margin:25px 0 0; font-size:clamp(14px,1.1vw,18px); color:#c3c2c7; text-shadow:0 2px 18px #08090d; }
.hero-actions { gap:18px; }
.kinetic-story { height:315vh; position:relative; background:#eeece5; color:#11120f; }
.kinetic-story,.story-sticky,.story-base {
  color-scheme:dark;
  forced-color-adjust:none;
  -webkit-print-color-adjust:exact;
  print-color-adjust:exact;
}
.story-sticky { --story-p:0; --story-local:0; --story-impact-visible:0; --story-loop:0; --story-beat:0; --story-spin:0deg; --ring-a-angle:18deg; --ring-b-angle:-32deg; --ring-a-y:.46; --ring-b-y:.72; --orb-a-x:0px; --orb-a-y:0px; --orb-b-x:0px; --orb-b-y:0px; --orb-c-x:0px; --orb-c-y:0px; --sticker-a-opacity:0; --sticker-b-opacity:0; --sticker-c-opacity:0; --sticker-a-wipe:100%; --sticker-b-wipe:100%; --sticker-c-wipe:100%; --sticker-a-age:0; --sticker-b-age:0; --sticker-c-age:0; --sticker-a-erase:0; --sticker-b-erase:0; --sticker-c-erase:0; position:sticky; top:0; min-height:100svh; height:100svh; overflow:hidden; isolation:isolate; background:none; }
.story-base { position:absolute; z-index:-2; inset:0; display:block; pointer-events:none; background:linear-gradient(145deg,#eeece5 0%,#dcd9d0 100%); }
.story-sticky::before,.story-sticky::after { content:""; position:absolute; z-index:0; inset:0; pointer-events:none; }
.story-sticky::before { opacity:var(--story-impact-visible); background:radial-gradient(circle at 58% 46%,rgba(217,255,87,.34),transparent 28%),linear-gradient(145deg,#c9c1ff 0%,#8d7df2 100%); }
.story-sticky::after { opacity:var(--story-loop); background:radial-gradient(circle at 50% 43%,rgba(255,255,255,.22),transparent 24%),linear-gradient(180deg,#d9ff57 0%,#c7f346 62%,#b3e33a 100%); }
.story-meta { position:absolute; z-index:5; top:28px; left:clamp(22px,4vw,64px); right:clamp(22px,4vw,64px); display:flex; justify-content:space-between; padding-bottom:16px; border-bottom:1px solid rgba(0,0,0,.22); font-size:8px; font-weight:800; letter-spacing:.16em; }
.story-meta b { color:inherit; }
.story-word { position:absolute; z-index:0; left:50%; top:48%; transform:translate(-50%,-50%) scale(calc(1 + var(--story-p)*.07)); font-size:clamp(120px,20vw,370px); font-weight:800; letter-spacing:calc(-.09em + var(--story-local)*.022em); line-height:.8; color:transparent; -webkit-text-stroke:1px rgba(0,0,0,.22); white-space:nowrap; transition:opacity .25s; }
.story-system { position:absolute; z-index:2; width:min(52vw,760px); aspect-ratio:1; left:58%; top:48%; transform:translate(-50%,-50%) rotate(var(--story-spin)) scale(calc(1 + var(--story-impact-visible)*.045)); transition:filter .7s; }
.story-ring { position:absolute; border:1px solid rgba(0,0,0,.22); border-radius:50%; }
.story-ring-a { inset:4%; transform:rotate(var(--ring-a-angle)) scaleY(var(--ring-a-y)); }
.story-ring-b { inset:18%; transform:rotate(var(--ring-b-angle)) scaleY(var(--ring-b-y)); }
.story-orb { position:absolute; display:block; border-radius:50%; transition:background .2s var(--ease-snap); box-shadow:inset -28px -34px 44px rgba(0,0,0,.25),inset 10px 12px 20px rgba(255,255,255,.38),0 35px 60px rgba(0,0,0,.2); }
.story-orb::after { content:""; position:absolute; left:25%; top:17%; width:25%; height:12%; border-radius:50%; transform:rotate(-25deg); background:rgba(255,255,255,.6); filter:blur(3px); }
.story-orb-a { width:39%; aspect-ratio:1; left:31%; top:29%; background:var(--acid); transform:translate3d(var(--orb-a-x),var(--orb-a-y),0); }
.story-orb-b { width:15%; aspect-ratio:1; right:8%; top:17%; background:var(--lilac); transform:translate3d(var(--orb-b-x),var(--orb-b-y),0); }
.story-orb-c { width:9%; aspect-ratio:1; left:9%; bottom:16%; background:var(--pink); transform:translate3d(var(--orb-c-x),var(--orb-c-y),0); }
.story-copy { position:absolute; z-index:5; left:clamp(22px,5vw,82px); bottom:clamp(38px,7vh,80px); width:min(600px,44vw); }
.story-copy>span { display:block; margin-bottom:18px; font-size:9px; font-weight:800; letter-spacing:.15em; }
.story-copy h2 { font-size:clamp(48px,5vw,92px); line-height:1.04; }
.story-copy p { max-width:520px; margin:25px 0 0; padding-left:20px; border-left:2px solid rgba(105,70,217,.72); color:#34352f; font-size:clamp(17px,1.25vw,20px); font-weight:520; line-height:1.5; letter-spacing:-.018em; }
.story-graffiti { position:absolute; z-index:3; inset:0; pointer-events:none; }
.story-sticker { --sticker-opacity:0; --sticker-wipe:100%; --sticker-age:0; --sticker-erase:0; --sticker-draw:0%; position:absolute; width:clamp(110px,13vw,210px); aspect-ratio:1; opacity:var(--sticker-opacity); background:none!important; filter:none!important; -webkit-mask-image:radial-gradient(circle at 49% 51%,#000 0 max(0%,calc(var(--sticker-draw) - 9%)),rgba(0,0,0,.8) max(0%,calc(var(--sticker-draw) - 5%)),rgba(0,0,0,.28) max(0%,calc(var(--sticker-draw) - 1%)),transparent var(--sticker-draw)); mask-image:radial-gradient(circle at 49% 51%,#000 0 max(0%,calc(var(--sticker-draw) - 9%)),rgba(0,0,0,.8) max(0%,calc(var(--sticker-draw) - 5%)),rgba(0,0,0,.28) max(0%,calc(var(--sticker-draw) - 1%)),transparent var(--sticker-draw)); will-change:opacity,mask-image,transform; }
.story-sticker-ink { position:absolute; inset:0; display:block; background-repeat:no-repeat; background-position:center; background-size:contain; clip-path:polygon(0 0,var(--sticker-wipe) 0,max(0%,calc(var(--sticker-wipe) - 5%)) 9%,var(--sticker-wipe) 18%,max(0%,calc(var(--sticker-wipe) - 7%)) 29%,var(--sticker-wipe) 42%,max(0%,calc(var(--sticker-wipe) - 4%)) 54%,var(--sticker-wipe) 67%,max(0%,calc(var(--sticker-wipe) - 8%)) 79%,var(--sticker-wipe) 91%,max(0%,calc(var(--sticker-wipe) - 3%)) 100%,0 100%); }
.story-sticker-a { --sticker-opacity:var(--sticker-a-opacity); --sticker-wipe:var(--sticker-a-wipe); --sticker-age:var(--sticker-a-age); --sticker-erase:var(--sticker-a-erase); --sticker-draw:var(--sticker-a-draw,0%); right:6%; bottom:9%; transform:rotate(10deg) scale(var(--sticker-a-scale,.72)); }
.story-sticker-b { --sticker-opacity:var(--sticker-b-opacity); --sticker-wipe:var(--sticker-b-wipe); --sticker-age:var(--sticker-b-age); --sticker-erase:var(--sticker-b-erase); --sticker-draw:var(--sticker-b-draw,0%); right:6%; bottom:9%; transform:rotate(-8deg) scale(var(--sticker-b-scale,.7)); }
.story-sticker-c { --sticker-opacity:var(--sticker-c-opacity); --sticker-wipe:var(--sticker-c-wipe); --sticker-age:var(--sticker-c-age); --sticker-erase:var(--sticker-c-erase); --sticker-draw:var(--sticker-c-draw,0%); right:6%; bottom:9%; transform:rotate(6deg) scale(var(--sticker-c-scale,.7)); }
.story-sticker-a .story-sticker-ink { background-image:url("assets/graffiti/stickers/viralviz-control.png"); }
.story-sticker-b .story-sticker-ink { background-image:url("assets/graffiti/stickers/gravity-field.png"); }
.story-sticker-c .story-sticker-ink { background-image:url("assets/graffiti/stickers/motion-trail.png"); }
.story-telemetry { position:absolute; z-index:6; top:90px; right:clamp(22px,4vw,64px); width:190px; border-top:1px solid rgba(0,0,0,.28); }
.story-telemetry span { min-height:38px; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid rgba(0,0,0,.18); font-size:7px; font-weight:800; letter-spacing:.14em; }
.story-telemetry b { font-size:9px; }
.story-scroll-cue { position:absolute; z-index:6; left:50%; bottom:28px; translate:-50% 0; display:flex; align-items:center; gap:12px; font-size:7px; font-weight:800; letter-spacing:.15em; }
.story-scroll-cue i { width:36px; height:18px; border:1px solid rgba(0,0,0,.3); border-radius:50%; position:relative; }
.story-scroll-cue i::after { content:""; position:absolute; width:4px; height:4px; left:50%; top:4px; translate:-50% 0; border-radius:50%; background:#111; transform:translateY(calc(var(--story-local)*7px)); }
.story-meter { position:absolute; z-index:5; right:clamp(22px,4vw,64px); bottom:40px; display:flex; align-items:center; gap:7px; }
.story-meter b { width:38px; height:2px; background:rgba(0,0,0,.18); }
.story-meter i { position:absolute; left:0; top:0; width:38px; height:2px; background:#111; transform:translateX(calc(var(--story-step,0)*45px)); transition:transform .6s cubic-bezier(.2,.7,.2,1); }
.story-sticky[data-step="1"] .story-word { -webkit-text-stroke-color:rgba(255,255,255,.4); }

@media (min-width:761px){
  .story-copy { transition:bottom .52s var(--ease-ui); }
  .story-sticky[data-step="2"] .story-copy { bottom:clamp(82px,11vh,118px); }
}

@media (max-width:1100px){
  .hero { height:max(820px,100svh); }
  .hero-visual { inset:90px 0 155px; }
  .hero-graffiti { right:2%; top:24%; }
  .hero-copy { width:min(720px,76vw); }
  .story-system { left:61%; width:min(66vw,700px); }
  .story-copy { width:46vw; }
  .story-telemetry { width:160px; }
  .motion-lab-head { grid-template-columns:1fr; gap:28px; }
  .motion-lab-head .eyebrow { margin-bottom:0; }
  .motion-lab-head>p:last-child { max-width:520px; }
  .motion-lab-layout { grid-template-columns:minmax(360px,.8fr) minmax(390px,1.2fr); gap:62px; }
}
@media (min-width:761px){.hero-copy h1 em{white-space:nowrap}}
@media (max-width:760px){
  .hero { height:860px; min-height:100svh; }
  .hero-grid { inset:72px 0 0; }
  .hero-visual { inset:115px -65px 260px; }
  .hero-graffiti { width:105px; right:15%; top:9%; opacity:.5; }
  .brand-mark { width:40px; flex-basis:40px; }
  .brand-name { font-size:11px; }
  .brand-lockup small { font-size:5px; }
  .hero-copy { left:20px; right:20px; bottom:44px; width:auto; }
  .hero-copy h1 { font-size:clamp(42px,11.8vw,64px); }
  .hero-lead { max-width:520px; font-size:14px; margin:18px 0 0; }
  .kinetic-story { height:275vh; }
  .story-meta { top:22px; }
  .story-meta span:last-child { display:none; }
  .story-word { top:31%; font-size:23vw; }
  .story-system { left:50%; top:39%; width:min(105vw,560px); }
  .story-telemetry { top:70px; right:20px; width:132px; }
  .story-telemetry span { min-height:30px; font-size:6px; }
  .story-sticker { width:110px; }
  .story-sticker-a { left:auto; right:-2%; top:auto; bottom:29%; }
  .story-sticker-b { right:-2%; bottom:29%; }
  .story-sticker-c { left:auto; right:-2%; top:auto; bottom:29%; }
  .story-copy { left:20px; right:20px; bottom:72px; width:auto; }
  .story-copy h2 { font-size:clamp(38px,10.5vw,58px); }
  .story-copy p { max-width:520px; margin-top:18px; padding-left:15px; font-size:15px; line-height:1.48; }
  .story-meter { right:20px; bottom:28px; }
  .story-scroll-cue { left:20px; bottom:28px; translate:0 0; }
  .modes-graffiti { width:150px; right:-12%; top:2%; opacity:.18; }
  .access-graffiti { width:150px; left:auto; right:-10%; top:4%; opacity:.17; }
  .features { padding:100px 16px; }
  .motion-lab-head { margin-bottom:58px; }
  .motion-lab-head h2 { font-size:clamp(48px,13vw,72px); line-height:1; }
  .motion-lab-layout { grid-template-columns:1fr; gap:66px; }
  .motion-poster-wrap { width:min(88vw,560px); }
  .motion-index-row { height:116px; grid-template-columns:36px 1fr 26px; gap:12px; padding:20px 12px; }
  .motion-index-copy strong { font-size:clamp(30px,9vw,44px); }
  .motion-live-control { padding-inline:18px; border-radius:18px; }
  .motion-index.has-control .motion-live-control { max-height:200px; margin-top:14px; padding-block:20px 16px; }
  .motion-control-range { height:68px; padding-block:12px; }
  .motion-control-range input[type=range]::-webkit-slider-thumb { width:34px; height:34px; margin-top:-14px; }
}

/* ViralViz member access — fullscreen editorial auth scene. */
body.auth-open { overflow:hidden; }
.header-cta { min-height:46px; display:inline-flex; align-items:center; padding:5px 6px 5px 18px; border-color:rgba(255,255,255,.22); color:#f7f5ef; background:linear-gradient(145deg,rgba(255,255,255,.08),rgba(255,255,255,.025)); box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 12px 34px rgba(0,0,0,.2); backdrop-filter:blur(18px) saturate(1.25); cursor:pointer; transition:transform var(--dur-ui),border-color var(--dur-ui),background var(--dur-ui),box-shadow var(--dur-ui); }
.header-cta [data-auth-trigger-label] { display:inline; margin:0; color:#f7f5ef; }
.header-cta>.header-cta-viralviz { width:30px; height:30px; display:grid; place-items:center; margin-left:12px; border:1px solid rgba(166,156,255,.28); border-radius:50%; color:#b5a8ff; background:rgba(166,156,255,.08); transition:transform var(--dur-snap) var(--ease-snap),border-color var(--dur-ui),background var(--dur-ui); }
.header-cta:hover { border-color:rgba(166,156,255,.58); color:#fff; background:linear-gradient(145deg,rgba(255,255,255,.11),rgba(166,156,255,.055)); box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 16px 38px rgba(0,0,0,.25); transform:translateY(-1px); }
.header-cta:hover>.header-cta-viralviz { border-color:rgba(217,255,87,.48); color:var(--acid); background:rgba(217,255,87,.07); transform:rotate(8deg) translate(1px,-1px); }
.header-cta.is-authenticated { border-color:rgba(217,255,87,.48); background:rgba(217,255,87,.08); }
.header-cta.is-authenticated>.header-cta-viralviz { font-size:8px; }
.final-cta .button-light { min-height:60px; padding:6px 7px 6px 22px; gap:18px; border:1px solid rgba(255,255,255,.24); color:#f6f3ed; background:linear-gradient(145deg,rgba(255,255,255,.1),rgba(255,255,255,.035)); box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 18px 48px rgba(0,0,0,.28); backdrop-filter:blur(18px) saturate(1.25); transition:transform var(--dur-ui),border-color var(--dur-ui),background var(--dur-ui),box-shadow var(--dur-ui); }
.final-cta .button-light span { width:34px; height:34px; display:grid; place-items:center; border:1px solid rgba(166,156,255,.34); border-radius:50%; color:#b5a8ff; background:rgba(166,156,255,.08); transition:transform var(--dur-snap) var(--ease-snap),color var(--dur-ui),border-color var(--dur-ui),background var(--dur-ui); }
.final-cta .button-light:hover { border-color:rgba(166,156,255,.56); background:linear-gradient(145deg,rgba(255,255,255,.135),rgba(166,156,255,.055)); box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 22px 54px rgba(0,0,0,.32); transform:translateY(-2px); }
.final-cta .button-light:hover span { border-color:rgba(217,255,87,.45); color:var(--acid); background:rgba(217,255,87,.07); transform:rotate(8deg) translate(1px,-1px); }
/* Kinetic CTAs — local cursor response, viralviz state and impulse travel. */
.site-header .header-cta { --cta-x:50%; --cta-y:50%; --cta-shift-x:0px; --cta-shift-y:0px; position:relative; min-width:174px; min-height:58px; display:grid; grid-template-columns:1fr 44px; align-items:center; gap:14px; overflow:hidden; padding:7px 8px 7px 17px; border:1px solid rgba(255,255,255,.24); border-radius:4px 22px 4px 4px; color:#f7f5ef; background:radial-gradient(circle at var(--cta-x) var(--cta-y),rgba(166,156,255,.18),transparent 44%),linear-gradient(145deg,rgba(255,255,255,.09),rgba(255,255,255,.018)); box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 14px 36px rgba(0,0,0,.22); backdrop-filter:blur(18px) saturate(1.3); translate:var(--cta-shift-x) var(--cta-shift-y); cursor:pointer; transition:translate .18s ease-out,transform var(--dur-ui),border-color var(--dur-ui),background var(--dur-ui),box-shadow var(--dur-ui); }
.site-header .header-cta::before { content:""; position:absolute; top:-40%; bottom:-40%; left:-30%; width:28%; opacity:0; background:linear-gradient(90deg,transparent,rgba(217,255,87,.24),rgba(166,156,255,.24),transparent); transform:skewX(-18deg); transition:left .62s var(--ease-snap),opacity .2s; pointer-events:none; }
.site-header .header-cta::after { content:""; position:absolute; left:7px; bottom:7px; width:5px; height:5px; border-left:1px solid var(--acid); border-bottom:1px solid var(--acid); opacity:.55; }
.site-header .header-cta:hover::before { left:108%; opacity:1; }
.site-header .header-cta .header-cta-copy { position:relative; z-index:1; width:auto; height:auto; display:grid; place-items:initial; gap:5px; min-width:0; margin:0; border:0; border-radius:0; color:inherit; background:none; text-align:left; }
.site-header .header-cta .header-cta-copy>[data-auth-trigger-label] { display:block; margin:0; color:#f7f5ef; font-size:12px; line-height:1; }
.header-cta-copy small { color:#6f707a; font:700 6px/1 var(--mono); letter-spacing:.17em; transition:color var(--dur-ui),letter-spacing var(--dur-ui); }
.site-header .header-cta .header-cta-viralviz { position:relative; z-index:1; width:42px; height:42px; display:grid; place-items:center; margin:0; border:1px solid rgba(166,156,255,.32); border-radius:50%; color:#b8adff; background:radial-gradient(circle,rgba(166,156,255,.13),transparent 66%); transition:color var(--dur-ui),border-color var(--dur-ui),transform var(--dur-snap) var(--ease-snap); }
.header-cta-viralviz i { position:absolute; inset:4px; border:1px solid rgba(255,255,255,.16); border-radius:50%; animation:ctaViralVizSpin 5s linear infinite; }
.header-cta-viralviz i::after { content:""; position:absolute; left:50%; top:-3px; width:5px; height:5px; border-radius:50%; background:var(--acid); box-shadow:0 0 10px rgba(217,255,87,.65); }
.header-cta-viralviz b { position:relative; font-size:11px; }
.site-header .header-cta:hover { border-color:rgba(166,156,255,.62); color:#fff; background:radial-gradient(circle at var(--cta-x) var(--cta-y),rgba(166,156,255,.27),transparent 46%),linear-gradient(145deg,rgba(255,255,255,.12),rgba(166,156,255,.035)); box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 19px 42px rgba(0,0,0,.27); transform:translateY(-1px); }
.site-header .header-cta:hover .header-cta-copy small { color:var(--acid); letter-spacing:.21em; }
.site-header .header-cta:hover .header-cta-viralviz { color:var(--acid); border-color:rgba(217,255,87,.46); transform:rotate(9deg) scale(1.04); }
.site-header .header-cta.is-authenticated { border-color:rgba(217,255,87,.42); }
@keyframes ctaViralVizSpin { to { transform:rotate(360deg); } }

.final-cta .viralviz-launch { --cta-x:50%; --cta-y:50%; --cta-shift-x:0px; --cta-shift-y:0px; position:relative; isolation:isolate; width:min(760px,calc(100vw - 40px)); min-height:104px; display:grid; grid-template-columns:minmax(210px,auto) 1fr 74px; align-items:center; gap:28px; overflow:hidden; padding:14px 15px 14px 28px; border:1px solid rgba(255,255,255,.22); border-radius:5px 34px 5px 5px; color:#f6f3ed; background:radial-gradient(circle at var(--cta-x) var(--cta-y),rgba(166,156,255,.18),transparent 32%),linear-gradient(120deg,rgba(255,255,255,.105),rgba(255,255,255,.025)); box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 28px 70px rgba(0,0,0,.3); backdrop-filter:blur(20px) saturate(1.28); translate:var(--cta-shift-x) var(--cta-shift-y); transition:translate .2s ease-out,transform var(--dur-ui),border-color var(--dur-ui),box-shadow var(--dur-ui),background var(--dur-ui); }
.final-cta .viralviz-launch::before { content:""; position:absolute; z-index:-1; inset:0; opacity:.2; background-image:linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px); background-size:30px 30px; mask-image:linear-gradient(90deg,#000,transparent 72%); }
.final-cta .viralviz-launch::after { content:""; position:absolute; left:0; bottom:0; width:100%; height:2px; background:linear-gradient(90deg,var(--acid),var(--lilac),transparent 78%); transform:scaleX(.18); transform-origin:left; transition:transform .7s cubic-bezier(.16,1,.3,1); }
.final-cta .viralviz-launch .viralviz-launch-copy { width:auto; height:auto; display:grid; place-items:initial; gap:8px; border:0; border-radius:0; color:inherit; background:none; text-align:left; }
.viralviz-launch-copy small { color:#777884; font:700 7px/1 var(--mono); letter-spacing:.17em; transition:color var(--dur-ui),letter-spacing var(--dur-ui); }
.viralviz-launch-copy b { color:#f6f3ed; font-size:15px; letter-spacing:-.02em; transition:letter-spacing var(--dur-ui); }
.final-cta .viralviz-launch .viralviz-launch-line { position:relative; width:auto; height:1px; display:block; margin:0; border:0; border-radius:0; color:inherit; background:linear-gradient(90deg,rgba(255,255,255,.12),rgba(166,156,255,.52),rgba(255,255,255,.12)); }
.viralviz-launch-line i { position:absolute; left:0; top:50%; width:9px; height:9px; border:2px solid #0b0c11; border-radius:50%; background:var(--lilac); box-shadow:0 0 0 1px var(--lilac),0 0 15px rgba(166,156,255,.55); transform:translateY(-50%); transition:left .72s cubic-bezier(.16,1,.3,1),background var(--dur-ui),box-shadow var(--dur-ui); }
.final-cta .viralviz-launch .viralviz-launch-node { position:relative; width:70px; height:70px; display:grid; place-items:center; margin:0; border:1px solid rgba(166,156,255,.38); border-radius:50%; color:#b9aeff; background:radial-gradient(circle,rgba(166,156,255,.15),transparent 64%); transition:color var(--dur-ui),border-color var(--dur-ui),transform var(--dur-snap) var(--ease-snap); }
.viralviz-launch-node i { position:absolute; inset:7px; border:1px dashed rgba(255,255,255,.24); border-radius:50%; animation:ctaViralVizSpin 8s linear infinite reverse; }
.viralviz-launch-node i::after { content:""; position:absolute; left:50%; top:-4px; width:7px; height:7px; border-radius:50%; background:var(--acid); box-shadow:0 0 13px rgba(217,255,87,.7); }
.viralviz-launch-node b { position:relative; font-size:16px; }
.final-cta .viralviz-launch:hover { border-color:rgba(166,156,255,.58); background:radial-gradient(circle at var(--cta-x) var(--cta-y),rgba(166,156,255,.28),transparent 34%),linear-gradient(120deg,rgba(255,255,255,.13),rgba(166,156,255,.04)); box-shadow:inset 0 1px 0 rgba(255,255,255,.17),0 34px 82px rgba(0,0,0,.36); transform:translateY(-2px); }
.final-cta .viralviz-launch:hover::after { transform:scaleX(1); }
.viralviz-launch:hover .viralviz-launch-copy small { color:var(--acid); letter-spacing:.21em; }
.viralviz-launch:hover .viralviz-launch-copy b { letter-spacing:.005em; }
.viralviz-launch:hover .viralviz-launch-line i { left:calc(100% - 9px); background:var(--acid); box-shadow:0 0 0 1px var(--acid),0 0 18px rgba(217,255,87,.65); }
.viralviz-launch:hover .viralviz-launch-node { color:var(--acid); border-color:rgba(217,255,87,.5); transform:rotate(10deg) scale(1.04); }
@media (max-width:600px) {
  .site-header .header-cta { min-width:142px; min-height:48px; grid-template-columns:1fr 34px; gap:9px; padding:5px 6px 5px 13px; border-radius:3px 17px 3px 3px; }
  .site-header .header-cta .header-cta-copy { display:grid; }
  .site-header .header-cta .header-cta-copy>[data-auth-trigger-label] { display:block; font-size:10px; }
  .header-cta-copy small { display:none; }
  .site-header .header-cta .header-cta-viralviz { width:34px; height:34px; display:grid; }
  .final-cta .viralviz-launch { min-height:88px; grid-template-columns:1fr 58px; gap:18px; padding:11px 12px 11px 20px; border-radius:4px 26px 4px 4px; }
  .final-cta .viralviz-launch .viralviz-launch-line { display:none; }
  .final-cta .viralviz-launch .viralviz-launch-node { width:58px; height:58px; display:grid; }
  .viralviz-launch-copy b { font-size:13px; }
}

/* Editorial CTA reset: one typographic gesture, no sci-fi widget chrome. */
.site-header .header-cta { min-width:0; min-height:40px; display:inline-flex; align-items:center; gap:13px; overflow:visible; padding:0 0 7px; border:0; border-radius:0; color:#f4f1ea; background:none; box-shadow:none; backdrop-filter:none; translate:none; }
.site-header .header-cta::before { content:""; position:absolute; left:0; right:0; top:auto; bottom:0; width:auto; height:1px; opacity:1; background:rgba(255,255,255,.28); transform:scaleX(.28); transform-origin:right; transition:transform .48s cubic-bezier(.16,1,.3,1),background var(--dur-ui); }
.site-header .header-cta::after { content:none; }
.site-header .header-cta:hover { border:0; color:#fff; background:none; box-shadow:none; transform:none; }
.site-header .header-cta:hover::before { left:0; opacity:1; background:var(--lilac); transform:scaleX(1); }
.site-header .header-cta .header-cta-roll { width:auto; height:14px; display:block; overflow:hidden; margin:0; border:0; border-radius:0; color:inherit; background:none; }
.header-cta-roll b { display:block; height:14px; color:#f4f1ea; font-size:12px; font-weight:750; line-height:14px; transition:transform .44s cubic-bezier(.16,1,.3,1),color var(--dur-ui); }
.header-cta-roll b:last-child { color:var(--acid); }
.site-header .header-cta:hover .header-cta-roll b { transform:translateY(-14px); }
.site-header .header-cta>svg { width:17px; fill:none; stroke:currentColor; stroke-width:1.55; stroke-linecap:round; stroke-linejoin:round; transition:transform .44s cubic-bezier(.16,1,.3,1),color var(--dur-ui); }
.site-header .header-cta:hover>svg { color:var(--lilac); transform:translate(3px,-3px); }

.final-cta .viralviz-launch { position:relative; isolation:isolate; width:min(920px,calc(100vw - 40px)); min-height:112px; display:grid; grid-template-columns:1fr 88px; align-items:center; gap:26px; overflow:visible; padding:25px 0; border:0; border-top:1px solid rgba(255,255,255,.2); border-bottom:1px solid rgba(255,255,255,.2); border-radius:0; color:#f4f1ea; background:none; box-shadow:none; backdrop-filter:none; translate:none; transition:border-color var(--dur-ui),transform var(--dur-ui); }
.final-cta .viralviz-launch::before { content:none; }
.final-cta .viralviz-launch::after { content:""; position:absolute; left:0; bottom:-1px; width:100%; height:2px; background:linear-gradient(90deg,var(--lilac),var(--acid)); transform:scaleX(0); transform-origin:left; transition:transform .72s cubic-bezier(.16,1,.3,1); }
.final-cta .viralviz-launch .viralviz-launch-copy { width:auto; height:auto; display:block; margin:0; border:0; border-radius:0; color:inherit; background:none; text-align:left; }
.viralviz-launch-copy b { display:block; color:#f4f1ea; font-size:clamp(32px,4.2vw,60px); font-weight:600; line-height:.95; letter-spacing:-.055em; transition:color .32s ease,transform .5s cubic-bezier(.16,1,.3,1),letter-spacing .5s cubic-bezier(.16,1,.3,1); }
.final-cta .viralviz-launch .viralviz-launch-arrow { width:88px; height:62px; display:grid; place-items:center; margin:0; border:0; border-left:1px solid rgba(255,255,255,.2); border-radius:0; color:#f4f1ea; background:none; }
.viralviz-launch-arrow svg { width:32px; fill:none; stroke:currentColor; stroke-width:1.35; stroke-linecap:round; stroke-linejoin:round; transition:transform .55s cubic-bezier(.16,1,.3,1),color var(--dur-ui); }
.viralviz-launch-runner { position:absolute; left:0; bottom:-4px; width:8px; height:8px; border-radius:50%; background:var(--lilac); box-shadow:0 0 0 3px #0a0b10; transition:left .72s cubic-bezier(.16,1,.3,1),background var(--dur-ui); }
.final-cta .viralviz-launch:hover { border-top-color:rgba(166,156,255,.48); border-bottom-color:rgba(255,255,255,.2); color:#fff; background:none; box-shadow:none; transform:none; }
.final-cta .viralviz-launch:hover::after { transform:scaleX(1); }
.viralviz-launch:hover .viralviz-launch-copy b { color:var(--lilac); transform:translateX(10px); letter-spacing:-.045em; }
.viralviz-launch:hover .viralviz-launch-arrow svg { color:var(--acid); transform:translate(8px,-8px); }
.viralviz-launch:hover .viralviz-launch-runner { left:calc(100% - 8px); background:var(--acid); }

@media (max-width:600px) {
  .site-header .header-cta { min-width:0; min-height:36px; display:inline-flex; gap:9px; padding:0 0 6px; border-radius:0; }
  .site-header .header-cta .header-cta-roll { display:block; height:13px; }
  .header-cta-roll b { height:13px; font-size:10px; line-height:13px; }
  .site-header .header-cta:hover .header-cta-roll b { transform:translateY(-13px); }
  .final-cta .viralviz-launch { min-height:88px; grid-template-columns:1fr 58px; gap:15px; padding:18px 0; border-radius:0; }
  .final-cta .viralviz-launch .viralviz-launch-arrow { width:58px; height:48px; display:grid; }
  .viralviz-launch-copy b { font-size:clamp(27px,8vw,38px); }
  .viralviz-launch-arrow svg { width:25px; }
}

.access-card-bottom button:not(:disabled) { cursor:pointer; transition:background var(--dur-ui),color var(--dur-ui),transform var(--dur-ui); }
.access-card-bottom button:not(:disabled):hover { color:#111; background:#fff; transform:translateY(-2px); }

.auth-dialog { width:min(1540px,calc(100vw - 28px)); height:min(900px,calc(100dvh - 28px)); max-width:none; max-height:none; margin:auto; padding:0; border:0; border-radius:32px; color:#11120f; background:transparent; overflow:hidden; box-shadow:0 50px 160px rgba(0,0,0,.68); }
.auth-dialog::backdrop { background:rgba(3,4,7,.78); backdrop-filter:blur(18px) saturate(.72); }
.auth-dialog[open] .auth-shell { animation:authSceneIn .62s var(--ease-snap) both; }
@keyframes authSceneIn { from { opacity:0; transform:translateY(24px) scale(.975); filter:blur(8px); } to { opacity:1; transform:none; filter:none; } }
.auth-shell { position:relative; width:100%; height:100%; display:grid; grid-template-columns:minmax(410px,.86fr) minmax(560px,1.14fr); background:#ece9e1; border:1px solid rgba(255,255,255,.18); border-radius:inherit; overflow:hidden; }
.auth-close { position:absolute; z-index:20; right:24px; top:24px; width:42px; height:42px; display:grid; place-items:center; border:1px solid rgba(17,18,15,.22); border-radius:50%; color:#11120f; background:rgba(238,236,229,.72); backdrop-filter:blur(12px); cursor:pointer; transition:rotate var(--dur-snap) var(--ease-snap),background var(--dur-ui),color var(--dur-ui); }
.auth-close-label,.auth-close-icon-home { display:none; }
.auth-close:hover { color:#fff; background:#111218; rotate:90deg; }
.auth-close svg { width:17px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; }

.auth-art { position:relative; min-width:0; overflow:hidden; color:#f4f1ea; isolation:isolate; background:radial-gradient(circle at 66% 40%,rgba(166,156,255,.21),transparent 32%),radial-gradient(circle at 20% 88%,rgba(217,255,87,.075),transparent 28%),#090a0f; border-right:1px solid rgba(255,255,255,.14); }
.auth-art::after { content:""; position:absolute; z-index:0; inset:0; opacity:.5; pointer-events:none; background:linear-gradient(120deg,transparent 0 48%,rgba(255,255,255,.045) 49%,transparent 50% 100%); background-size:160px 160px; mask-image:linear-gradient(180deg,#000,transparent 75%); }
.auth-art-grid { position:absolute; z-index:0; inset:0; opacity:.3; background-image:linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px); background-size:72px 72px; mask-image:radial-gradient(circle at 58% 42%,#000,transparent 75%); }
.auth-art-meta { position:absolute; z-index:5; top:34px; left:36px; right:36px; display:flex; justify-content:space-between; padding-bottom:15px; border-bottom:1px solid rgba(255,255,255,.2); color:#8d8e98; font:700 8px/1 var(--mono); letter-spacing:.17em; }
.auth-art-meta b { color:var(--acid); }
.auth-art-sticker { position:absolute; z-index:5; width:clamp(104px,10vw,160px); right:3%; top:8%; background-position:center; rotate:10deg; opacity:.52; filter:drop-shadow(0 20px 22px rgba(0,0,0,.42)); }
.auth-art-viralviz { position:absolute; z-index:2; left:52%; top:44%; width:min(35vw,520px); aspect-ratio:1; translate:-50% -50%; border:1px solid rgba(255,255,255,.13); border-radius:50%; box-shadow:0 0 110px rgba(166,156,255,.11); }
.auth-viralviz-ring { position:absolute; display:block; inset:-7%; border:1px solid rgba(166,156,255,.28); border-radius:50%; transform:rotate(28deg) scaleY(.43); }
.auth-viralviz-ring-b { inset:8%; border-color:rgba(217,255,87,.18); transform:rotate(-32deg) scaleY(.7); }
.auth-viralviz-core { position:absolute; inset:29%; border-radius:50%; background:radial-gradient(circle at 34% 28%,#40424e,#14161d 28%,#030407 72%); box-shadow:inset -30px -35px 56px #000,inset 12px 10px 20px rgba(255,255,255,.12),0 0 0 1px rgba(255,255,255,.18),0 38px 80px rgba(0,0,0,.56); }
.auth-viralviz-core::after { content:""; position:absolute; width:28%; height:12%; left:24%; top:19%; border-radius:50%; rotate:-26deg; background:rgba(255,255,255,.3); filter:blur(6px); }
.auth-viralviz-ball { position:absolute; display:block; border-radius:50%; box-shadow:inset -10px -13px 18px rgba(0,0,0,.3),inset 5px 5px 9px rgba(255,255,255,.42),0 16px 34px rgba(0,0,0,.38); }
.auth-viralviz-ball-a { width:17%; aspect-ratio:1; right:4%; top:22%; background:radial-gradient(circle at 34% 28%,#f0ffc1,var(--acid) 39%,#7fa311); animation:authFloatA 5.4s ease-in-out infinite; }
.auth-viralviz-ball-b { width:9%; aspect-ratio:1; left:5%; bottom:22%; background:radial-gradient(circle at 34% 28%,#eeeaff,var(--lilac) 45%,#5748bd); animation:authFloatB 4.8s ease-in-out infinite; }
.auth-viralviz-ball-c { width:5%; aspect-ratio:1; right:20%; bottom:2%; background:radial-gradient(circle at 34% 28%,#ffc1dc,var(--pink) 45%,#9f194f); animation:authFloatB 3.9s ease-in-out infinite reverse; }
@keyframes authFloatA { 50% { translate:-8px 13px; } }
@keyframes authFloatB { 50% { translate:9px -10px; } }
.auth-art-copy { position:absolute; z-index:5; left:36px; right:36px; bottom:52px; }
.auth-art-copy>span { display:block; margin-bottom:18px; color:var(--acid); font:700 8px/1 var(--mono); letter-spacing:.17em; }
.auth-art-copy strong { display:block; max-width:620px; font-size:clamp(40px,4.2vw,72px); font-weight:600; line-height:.96; letter-spacing:-.06em; }
.auth-art-copy p { max-width:450px; margin:24px 0 0; color:#94949d; font-size:12px; line-height:1.65; }
.auth-art-specs { position:absolute; z-index:5; left:36px; right:36px; bottom:30px; display:grid; grid-template-columns:repeat(3,1fr); gap:12px; padding-top:15px; border-top:1px solid rgba(255,255,255,.16); color:#656670; font:700 7px/1.2 var(--mono); letter-spacing:.12em; }
.auth-art-specs span { display:flex; justify-content:space-between; gap:8px; }
.auth-art-specs b { color:#aeafb6; }

.auth-panel { position:relative; min-width:0; overflow-x:hidden; overflow-y:auto; display:flex; flex-direction:column; padding:34px clamp(38px,5vw,86px) 42px; background:linear-gradient(rgba(17,18,15,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(17,18,15,.035) 1px,transparent 1px),#efede6; background-size:72px 72px; }
.auth-dialog:not(.is-profile) .auth-panel {
  --auth-scroll-shadow-top:transparent;
  --auth-scroll-shadow-bottom:rgba(17,18,15,.17);
  scrollbar-width:none;
  -ms-overflow-style:none;
  scroll-padding-block:24px;
  overscroll-behavior:contain;
  box-shadow:inset 0 22px 18px -23px var(--auth-scroll-shadow-top),inset 0 -22px 18px -23px var(--auth-scroll-shadow-bottom);
  transition:box-shadow .24s ease;
}
.auth-dialog:not(.is-profile) .auth-panel:not(.has-auth-overflow) { --auth-scroll-shadow-bottom:transparent; }
.auth-dialog:not(.is-profile) .auth-panel.is-auth-scrolled { --auth-scroll-shadow-top:rgba(17,18,15,.15); }
.auth-dialog:not(.is-profile) .auth-panel.is-auth-scroll-end { --auth-scroll-shadow-bottom:transparent; }
.auth-dialog:not(.is-profile) .auth-panel::-webkit-scrollbar { width:0; height:0; display:none; }
.auth-dialog:not(.is-profile) .auth-panel:focus-visible { outline:2px solid rgba(105,70,217,.5); outline-offset:-4px; }
.auth-scrollbar {
  --auth-thumb-height:64px;
  --auth-thumb-y:0px;
  position:absolute;
  z-index:18;
  top:102px;
  right:10px;
  bottom:25px;
  width:18px;
  display:grid;
  place-items:stretch center;
  padding:4px 0;
  border:0;
  border-radius:999px;
  opacity:0;
  pointer-events:none;
  touch-action:none;
  transition:opacity .22s ease,background .22s ease;
}
.auth-scrollbar.is-visible { opacity:1; pointer-events:auto; cursor:pointer; }
.auth-scrollbar:hover,.auth-scrollbar:focus-visible,.auth-scrollbar.is-dragging { background:rgba(105,70,217,.07); }
.auth-scrollbar:focus-visible { outline:2px solid rgba(105,70,217,.46); outline-offset:2px; }
.auth-scrollbar-track {
  position:relative;
  width:3px;
  height:100%;
  display:block;
  overflow:visible;
  border-radius:999px;
  background:linear-gradient(180deg,rgba(105,70,217,.12),rgba(17,18,15,.12),rgba(105,70,217,.12));
  box-shadow:0 0 0 1px rgba(255,255,255,.28);
}
.auth-scrollbar-thumb {
  position:absolute;
  top:0;
  left:50%;
  width:8px;
  height:var(--auth-thumb-height);
  display:block;
  border:1px solid rgba(255,255,255,.48);
  border-radius:999px;
  background:linear-gradient(180deg,#a99cf7 0%,#7258df 58%,#4c31ad 100%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.42),0 4px 14px rgba(76,49,173,.3);
  transform:translate(-50%,var(--auth-thumb-y));
  transition:width .18s ease,filter .18s ease,box-shadow .18s ease;
}
.auth-scrollbar-thumb::before {
  content:"";
  position:absolute;
  left:50%;
  top:7px;
  width:3px;
  height:3px;
  border-radius:50%;
  background:var(--acid);
  box-shadow:0 0 7px rgba(217,255,87,.72);
  translate:-50% 0;
}
.auth-scrollbar:hover .auth-scrollbar-thumb,.auth-scrollbar:focus-visible .auth-scrollbar-thumb,.auth-scrollbar.is-dragging .auth-scrollbar-thumb {
  width:10px;
  filter:saturate(1.15) brightness(1.06);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.5),0 5px 18px rgba(76,49,173,.4);
}
.auth-dialog.is-profile .auth-scrollbar { display:none; }
.auth-panel::before { content:""; position:fixed; width:310px; height:310px; right:6%; top:10%; pointer-events:none; background:radial-gradient(circle,rgba(166,156,255,.13),transparent 68%); }
.auth-panel-head { position:relative; z-index:2; min-height:44px; display:flex; align-items:center; justify-content:space-between; margin-right:58px; padding-bottom:18px; border-bottom:1px solid rgba(17,18,15,.2); color:#77786f; font:700 7px/1 var(--mono); letter-spacing:.16em; }
.auth-brand { display:flex; align-items:center; gap:8px; color:#11120f; }
.auth-brand .brand-mark { width:34px; flex-basis:34px; }
.auth-brand b { font-size:9px; letter-spacing:.14em; }
.auth-forms,.auth-profile { position:relative; z-index:2; width:min(600px,100%); margin:auto; padding:46px 0 20px; }
.auth-tabs { position:relative; display:grid; grid-template-columns:1fr 1fr; gap:0; margin-bottom:40px; padding:4px; border:1px solid rgba(17,18,15,.14); border-radius:14px; background:rgba(255,255,255,.36); box-shadow:inset 0 1px 0 rgba(255,255,255,.65); }
.auth-tabs::before { content:""; position:absolute; z-index:0; left:4px; top:4px; bottom:4px; width:calc(50% - 4px); border:1px solid rgba(17,18,15,.08); border-radius:10px; background:#111218; box-shadow:0 7px 18px rgba(17,18,24,.14); transform:translateX(0); transition:transform .42s cubic-bezier(.16,1,.3,1),background var(--dur-ui); }
.auth-tabs.is-register::before { transform:translateX(100%); background:#171524; }
.auth-tabs button { position:relative; z-index:1; min-height:42px; padding:0 14px; border:0; color:#85867f; background:transparent; font-size:10px; font-weight:780; cursor:pointer; transition:color .28s ease; }
.auth-tabs button::after { display:none; }
.auth-tabs button.is-active { color:#f7f5ef; }
.auth-heading { margin-bottom:32px; }
.auth-heading>span { display:block; margin-bottom:13px; color:#696a62; font:700 8px/1 var(--mono); letter-spacing:.16em; text-transform:uppercase; }
.auth-heading h2,.auth-profile h2 { font-size:clamp(43px,4.3vw,68px); line-height:.94; letter-spacing:-.065em; }
.auth-heading h2 em,.auth-profile h2 em { color:#6946d9; }
.auth-heading p { margin:17px 0 0; color:#75766f; font-size:12px; }
.auth-alert { margin:0 0 20px; padding:13px 15px; border-left:3px solid #c9406f; color:#712442; background:rgba(255,93,162,.1); font-size:11px; line-height:1.45; }
.auth-alert.is-success { border-color:#799f14; color:#455d0c; background:rgba(217,255,87,.2); }
.auth-form { display:grid; gap:16px; }
.auth-form[hidden],.auth-profile[hidden],.auth-forms[hidden] { display:none!important; }
.auth-field-row { display:grid; grid-template-columns:1fr 1.2fr; gap:14px; }
.auth-field { display:grid; gap:8px; }
.auth-field>span:first-child { color:#5f6059; font-size:9px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.auth-input-wrap { min-height:58px; display:grid; grid-template-columns:22px 1fr auto; align-items:center; gap:11px; padding:0 16px; border:1px solid rgba(17,18,15,.2); border-radius:14px; background:rgba(255,255,255,.52); box-shadow:inset 0 1px 0 rgba(255,255,255,.7); transition:border-color var(--dur-ui),box-shadow var(--dur-ui),background var(--dur-ui); }
.auth-input-wrap:focus-within { border-color:#6b55e0; background:rgba(255,255,255,.82); box-shadow:0 0 0 4px rgba(105,70,217,.1),inset 0 1px 0 #fff; }
.auth-field.has-error .auth-input-wrap { border-color:#c9406f; box-shadow:0 0 0 4px rgba(201,64,111,.08); }
.auth-input-wrap>svg { width:19px; fill:none; stroke:#6e6f67; stroke-width:1.45; stroke-linecap:round; stroke-linejoin:round; }
.auth-input-wrap input { width:100%; min-width:0; border:0; outline:0; color:#11120f; background:transparent; font-size:13px; }
.auth-input-wrap input:focus,.auth-input-wrap input:focus-visible { outline:0; box-shadow:none; }
.auth-input-wrap input::placeholder { color:#a5a59e; }
.auth-input-wrap input[type="password"]::-ms-reveal,
.auth-input-wrap input[type="password"]::-ms-clear,
.profile-password-wrap input[type="password"]::-ms-reveal,
.profile-password-wrap input[type="password"]::-ms-clear { display:none; width:0; height:0; }
.auth-input-wrap input::-webkit-credentials-auto-fill-button,
.auth-input-wrap input::-webkit-contacts-auto-fill-button {
  position:absolute;
  right:0;
  display:none!important;
  visibility:hidden;
  pointer-events:none;
}
.auth-field small { min-height:12px; color:#a82d58; font-size:9px; }
.auth-password-toggle { width:32px; height:32px; display:grid; place-items:center; padding:0; border:0; border-radius:50%; color:#73746d; background:transparent; cursor:pointer; }
.auth-password-toggle:hover { color:#11120f; background:rgba(17,18,15,.06); }
.auth-password-toggle svg { width:18px; fill:none; stroke:currentColor; stroke-width:1.45; }
.auth-password-toggle .eye-slash { opacity:1; transform-origin:center; transition:opacity var(--dur-ui),transform var(--dur-ui); }
.auth-password-toggle.is-visible .eye-slash { opacity:0; transform:scale(.7); }
.auth-check { width:fit-content; max-width:100%; display:flex; align-items:flex-start; gap:10px; color:#66675f; font-size:10px; line-height:1.45; cursor:pointer; }
.auth-check input { position:absolute; opacity:0; pointer-events:none; }
.auth-check i { width:18px; height:18px; display:grid; place-items:center; border:1px solid rgba(17,18,15,.28); border-radius:5px; background:rgba(255,255,255,.55); transition:background var(--dur-ui),border-color var(--dur-ui),box-shadow var(--dur-ui); }
.auth-check i::after { content:""; width:8px; height:4px; border-left:2px solid #111; border-bottom:2px solid #111; rotate:-45deg; translate:0 -1px; opacity:0; scale:.7; transition:opacity var(--dur-ui),scale var(--dur-ui); }
.auth-check input:checked+i { border-color:var(--acid); background:var(--acid); }
.auth-check input:checked+i::after { opacity:1; scale:1; }
.auth-check input:focus-visible+i { box-shadow:0 0 0 4px rgba(105,70,217,.16); }
.auth-check i { flex:0 0 18px; margin-top:-2px; }
.auth-check a { color:#27281f; text-decoration-color:rgba(105,70,217,.55); text-underline-offset:2px; }
.auth-check a:hover { color:#6946d9; }
.auth-strength { display:flex; align-items:center; justify-content:space-between; margin-top:-7px; color:#888980; font:700 7px/1 var(--mono); letter-spacing:.12em; }
.auth-strength>span { display:flex; gap:4px; width:48%; }
.auth-strength i { flex:1; height:2px; background:rgba(17,18,15,.14); transition:background var(--dur-ui); }
.auth-strength[data-score="1"] i:nth-child(-n+1) { background:#d94b66; }
.auth-strength[data-score="2"] i:nth-child(-n+2) { background:#d88b39; }
.auth-strength[data-score="3"] i:nth-child(-n+3) { background:#9dbb30; }
.auth-strength[data-score="4"] i { background:#628b19; }
.auth-submit { min-height:58px; display:flex; align-items:center; justify-content:space-between; gap:18px; margin-top:4px; padding:0 18px 0 21px; border:1px solid rgba(255,255,255,.08); border-radius:15px; color:#f7f5ef; background:linear-gradient(145deg,#171820,#0e0f14); box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 17px 42px rgba(17,18,24,.18); font-size:11px; font-weight:800; cursor:pointer; transition:transform var(--dur-ui),border-color var(--dur-ui),background var(--dur-ui),box-shadow var(--dur-ui); }
.auth-submit:hover { color:#fff; border-color:rgba(166,156,255,.48); background:linear-gradient(145deg,#1d1e29,#12131a); transform:translateY(-1px); box-shadow:inset 0 1px 0 rgba(255,255,255,.11),0 20px 46px rgba(17,18,24,.22); filter:none!important; }
.auth-submit svg { width:22px; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; transition:translate var(--dur-ui); }
.auth-submit svg { color:var(--acid); }
.auth-submit:hover svg { translate:4px 0; }
.auth-submit.is-loading { pointer-events:none; opacity:.72; }
.auth-submit.is-loading svg { animation:authArrowLoad .7s ease-in-out infinite alternate; }
@keyframes authArrowLoad { to { translate:7px 0; opacity:.35; } }

.auth-profile { text-align:center; }
.auth-profile-kicker { color:#696a62; font:700 8px/1 var(--mono); letter-spacing:.16em; }
.auth-profile-orb { position:relative; width:122px; aspect-ratio:1; display:grid; place-items:center; margin:34px auto 29px; border:1px solid rgba(105,70,217,.3); border-radius:50%; }
.auth-profile-orb::before,.auth-profile-orb::after { content:""; position:absolute; inset:-16%; border:1px solid rgba(17,18,15,.13); border-radius:50%; transform:rotate(28deg) scaleY(.45); }
.auth-profile-orb::after { inset:-30%; border-style:dashed; transform:rotate(-31deg) scaleY(.65); }
.auth-profile-orb i { position:absolute; inset:15%; border-radius:50%; background:radial-gradient(circle at 35% 28%,#f1ffc2,var(--acid) 40%,#83aa13); box-shadow:inset -14px -17px 20px rgba(0,0,0,.25),inset 7px 7px 12px rgba(255,255,255,.42),0 20px 44px rgba(93,119,14,.2); }
.auth-profile-orb b { position:relative; z-index:1; font-size:30px; }
.auth-profile>p { margin:24px 0 5px; font-size:17px; font-weight:800; }
.auth-profile>span:not(.auth-profile-kicker) { color:#77786f; font-size:11px; }
.auth-profile-status { margin:30px auto 20px; padding:17px; display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:9px; border:1px solid rgba(17,18,15,.16); border-radius:14px; text-align:left; font-size:9px; }
.auth-profile-status i { width:7px; height:7px; border-radius:50%; background:var(--acid); box-shadow:0 0 0 5px rgba(217,255,87,.18); }
.auth-profile-status b { color:#8c8d85; font:700 7px/1 var(--mono); letter-spacing:.1em; }
.auth-logout { width:100%; }
.auth-privacy-controls { display:grid; gap:14px; margin:0 0 14px; padding:17px; border:1px solid rgba(17,18,15,.14); border-radius:14px; text-align:left; }
.auth-privacy-controls>div { display:flex; flex-wrap:wrap; gap:9px; }
.auth-privacy-controls button { min-height:36px; padding:0 12px; border:1px solid rgba(17,18,15,.18); border-radius:9px; color:#2d2e29; background:rgba(255,255,255,.46); font:700 8px/1 var(--mono); cursor:pointer; transition:border-color var(--dur-ui),background var(--dur-ui),color var(--dur-ui); }
.auth-privacy-controls button:hover { border-color:#6946d9; color:#6946d9; background:#fff; }
.auth-delete-confirm { display:grid; gap:12px; padding-top:14px; border-top:1px solid rgba(17,18,15,.13); }
.auth-delete-confirm[hidden] { display:none; }
.auth-delete-confirm>div { display:flex; gap:8px; }
.auth-delete-confirm>div button:first-child { color:#fff; border-color:#a53559; background:#a53559; }
.footer-legal { display:flex; align-items:center; gap:24px; }
.footer-legal a { color:inherit; text-decoration:none; }

@media (max-width:1100px){
  .auth-shell { grid-template-columns:minmax(320px,.72fr) minmax(520px,1.28fr); }
  .auth-art-copy strong { font-size:46px; }
  .auth-art-specs span:nth-child(2) { display:none; }
  .auth-art-specs { grid-template-columns:1fr 1fr; }
  .auth-art-viralviz { width:430px; left:60%; }
}

@media (max-width:760px){
  .auth-dialog { width:100vw; height:100dvh; border-radius:0; }
  .auth-shell { display:grid; grid-template-columns:1fr; grid-template-rows:180px minmax(0,1fr); border-radius:0; }
  .auth-scrollbar { top:238px; right:4px; bottom:16px; }
  .auth-art { border-right:0; border-bottom:1px solid rgba(255,255,255,.14); }
  .auth-art-meta { top:20px; left:20px; right:68px; }
  .auth-art-sticker { width:84px; top:34px; right:2%; opacity:.38; }
  .auth-art-viralviz { width:250px; left:72%; top:66%; }
  .auth-art-copy { left:20px; bottom:21px; }
  .auth-art-copy>span { margin-bottom:9px; font-size:6px; }
  .auth-art-copy strong { font-size:27px; line-height:.94; }
  .auth-art-copy p,.auth-art-specs { display:none; }
  .auth-panel { padding:20px 20px 34px; }
  .auth-panel-head { min-height:36px; margin-right:50px; padding-bottom:12px; }
  .auth-panel-head>span { display:none; }
  .auth-close { right:17px; top:17px; width:38px; height:38px; color:#f4f1ea; border-color:rgba(255,255,255,.25); background:rgba(9,10,15,.7); }
  .auth-forms,.auth-profile { margin:0 auto; padding:26px 0 10px; }
  .auth-tabs { margin-bottom:26px; }
  .auth-heading { margin-bottom:24px; }
  .auth-heading h2,.auth-profile h2 { font-size:43px; }
  .auth-field-row { grid-template-columns:1fr; }
  .auth-input-wrap { min-height:54px; }
  .auth-profile-orb { width:96px; margin-block:25px 23px; }
}

@media (prefers-reduced-motion:reduce){
  .auth-dialog[open] .auth-shell { animation:none; }
  .auth-viralviz-ball { animation:none!important; }
}
@media (max-width:440px){
  .motion-poster-wrap { width:84vw; }
  .motion-sticker { scale:.83; }
  .motion-poster-meta { left:20px; right:20px; bottom:19px; }
  .motion-poster-meta span:first-child { display:none; }
  .motion-index-copy small { font-size:11px; }
}
@media (max-width:760px){
  .transition-section { margin-top:-30px; }
  .section-blend::before { top:-30px; height:calc(68vh + 30px); }
}
@media (hover:none){
  .motion-index-row:not(.is-active):hover { background:#ebe7df; transform:none; clip-path:polygon(0 0,100% 0,100% 100%,0 100%); }
  .motion-index-row:not(.is-active):hover::before { transform:scaleY(0); }
  .motion-index-row:not(.is-active):hover .motion-index-copy strong { translate:0 0; }
  .motion-index-row:not(.is-active):hover .motion-index-mark { color:inherit; transform:none; }
}
@media (prefers-reduced-motion:reduce){
  .story-system,.story-ring,.story-orb,.story-word { transition:none!important; }
  .motion-sticker,.motion-index-row,.motion-index-mark { transition:none!important; }
  .motion-lab::after,.section-blend::before { animation:none!important; }
  .motion-live-control,.motion-live-control::after { transition:none!important; }
}

/* Full-screen mode instrument: one persistent object, four behaviours. */
.mode-showcase,.showcase-card { display:none; }
.mode-stage { max-width:1440px; min-height:min(780px,82svh); margin:88px auto 0; display:grid; grid-template-columns:minmax(220px,270px) minmax(0,1fr); border:1px solid rgba(255,255,255,.14); border-radius:32px; overflow:hidden; background:#0d0e14; box-shadow:0 44px 130px rgba(0,0,0,.42); position:relative; z-index:2; }
.mode-selector { z-index:3; display:grid; grid-template-rows:repeat(4,1fr); border-right:1px solid rgba(255,255,255,.12); background:rgba(7,8,12,.72); backdrop-filter:blur(18px); }
.mode-stage-tab { position:relative; display:grid; align-content:center; gap:7px; min-height:0; padding:26px 28px; border:0; border-bottom:1px solid rgba(255,255,255,.1); color:#777986; background:transparent; text-align:left; cursor:pointer; overflow:hidden; transition:color var(--dur-ui) var(--ease-ui),background var(--dur-ui) var(--ease-ui); }
.mode-stage-tab:last-child { border-bottom:0; }
.mode-stage-tab::before { content:""; position:absolute; inset:0 auto 0 0; width:3px; background:var(--mode-accent,var(--acid)); transform:scaleY(0); transform-origin:center; transition:transform var(--dur-snap) var(--ease-snap); }
.mode-stage-tab::after { content:""; position:absolute; right:24px; top:50%; width:7px; height:7px; border:1px solid currentColor; border-radius:50%; transform:translateY(-50%) scale(.7); opacity:.35; transition:transform var(--dur-ui) var(--ease-snap),background var(--dur-ui),opacity var(--dur-ui); }
.mode-stage-tab span { font-size:8px; font-weight:800; letter-spacing:.16em; }
.mode-stage-tab strong { color:inherit; font-size:15px; letter-spacing:-.02em; }
.mode-stage-tab small { font-size:7px; font-weight:800; letter-spacing:.15em; opacity:.55; }
.mode-stage-tab:hover { color:#d8d7dc; background:rgba(255,255,255,.035); }
.mode-stage-tab:hover::after { transform:translateY(-50%) scale(1); opacity:.75; }
.mode-stage-tab.is-active { color:#fff; background:linear-gradient(90deg,rgba(255,255,255,.085),transparent); }
.mode-stage-tab.is-active::before { transform:scaleY(1); }
.mode-stage-tab.is-active::after { background:var(--mode-accent,var(--acid)); border-color:var(--mode-accent,var(--acid)); opacity:1; box-shadow:0 0 16px var(--mode-accent,var(--acid)); }
.mode-stage-tab:nth-child(2) { --mode-accent:var(--lilac); }
.mode-stage-tab:nth-child(3) { --mode-accent:var(--pink); }
.mode-stage-tab:nth-child(4) { --mode-accent:var(--cyan); }
.mode-focus { --mode-color:var(--acid); position:relative; isolation:isolate; min-width:0; overflow:hidden; background:radial-gradient(circle at 64% 43%,rgba(217,255,87,.12),transparent 34%),linear-gradient(145deg,#15171c,#090a0f 72%); transition:background var(--dur-heavy) var(--ease-heavy); }
.mode-focus::before { content:""; position:absolute; inset:0; z-index:-1; opacity:.26; background-image:linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px); background-size:58px 58px; mask-image:radial-gradient(circle at 62% 42%,#000,transparent 70%); animation:modeGridDrift 14s ease-in-out infinite alternate; }
@keyframes modeGridDrift { to { translate:10px -8px; opacity:.34; } }
.mode-field { position:absolute; inset:0; transition:filter var(--dur-heavy) var(--ease-heavy); }
.mode-live-ring { position:absolute; left:62%; top:43%; width:min(48vw,650px); aspect-ratio:1; border:1px solid color-mix(in srgb,var(--mode-color) 38%,transparent); border-radius:50%; transform:translate(-50%,-50%) rotate(17deg) scaleY(.46); transition:border-color var(--dur-ui),transform var(--dur-heavy) var(--ease-heavy),opacity var(--dur-snap); }
.mode-live-ring-b { width:min(34vw,470px); transform:translate(-50%,-50%) rotate(-35deg) scaleY(.72); opacity:.56; }
.mode-live-trail { position:absolute; left:62%; top:43%; width:min(44vw,590px); aspect-ratio:1; translate:-50% -50%; border:2px dashed color-mix(in srgb,var(--mode-color) 65%,transparent); border-radius:50%; opacity:0; transform:rotate(-16deg) scaleY(.48); filter:drop-shadow(0 0 8px var(--mode-color)); transition:opacity var(--dur-snap),border-color var(--dur-ui); }
.mode-live-trail-b { width:min(28vw,380px); transform:rotate(55deg) scaleY(.68); }
.mode-live-ball { position:absolute; z-index:2; display:block; border-radius:50%; background:var(--mode-color); box-shadow:inset -24px -30px 38px rgba(0,0,0,.3),inset 9px 10px 18px rgba(255,255,255,.4),0 26px 70px rgba(0,0,0,.4),0 0 32px color-mix(in srgb,var(--mode-color) 26%,transparent); transition:width var(--dur-heavy) var(--ease-physics),left var(--dur-heavy) var(--ease-physics),right var(--dur-heavy) var(--ease-physics),top var(--dur-heavy) var(--ease-physics),bottom var(--dur-heavy) var(--ease-physics),background var(--dur-snap),filter var(--dur-snap); }
.mode-live-ball::after { content:""; position:absolute; left:26%; top:18%; width:25%; height:12%; background:rgba(255,255,255,.62); border-radius:50%; rotate:-25deg; filter:blur(3px); }
.mode-live-ball-a { width:clamp(150px,19vw,280px); aspect-ratio:1; left:52%; top:25%; }
.mode-live-ball-b { width:clamp(62px,8vw,118px); aspect-ratio:1; right:8%; top:13%; background:var(--lilac); }
.mode-live-ball-c { width:clamp(38px,4.5vw,70px); aspect-ratio:1; left:42%; bottom:12%; background:var(--pink); }
.mode-live-impact { position:absolute; z-index:3; left:62%; top:43%; width:160px; aspect-ratio:1; translate:-50% -50%; opacity:0; transform:scale(.2) rotate(0); transition:opacity var(--dur-snap),transform var(--dur-snap) var(--ease-snap); }
.mode-live-impact::before,.mode-live-impact::after { content:""; position:absolute; inset:48% 0; background:var(--mode-color); box-shadow:0 0 28px var(--mode-color); }
.mode-live-impact::after { transform:rotate(90deg); }
.mode-live-graffiti { position:absolute; z-index:1; width:clamp(96px,10vw,158px); left:3%; right:auto; top:4%; opacity:.24; rotate:-7deg; filter:drop-shadow(0 14px 18px rgba(0,0,0,.22)); transition:opacity var(--dur-snap),rotate var(--dur-snap) var(--ease-snap),scale var(--dur-snap) var(--ease-snap); }
.mode-focus-copy { position:absolute; z-index:5; left:clamp(28px,5vw,76px); bottom:clamp(34px,6vw,72px); width:min(510px,48%); }
.mode-focus-copy>span { font-size:8px; font-weight:800; letter-spacing:.18em; color:var(--mode-color); }
.mode-focus-copy h3 { margin:18px 0 20px; font-size:clamp(48px,6vw,96px); line-height:.88; letter-spacing:-.065em; }
.mode-focus-copy p { max-width:430px; margin:0 0 30px; color:#a3a4ad; font-size:13px; line-height:1.7; }
.mode-focus-copy button { padding:0 0 8px; border:0; border-bottom:1px solid rgba(255,255,255,.32); color:#fff; background:none; font-size:10px; font-weight:750; cursor:pointer; transition:color var(--dur-ui),border-color var(--dur-ui),transform var(--dur-ui) var(--ease-ui); }
.mode-focus-copy button:hover { color:var(--mode-color); border-color:var(--mode-color); transform:translateX(4px); }
.mode-focus-copy button b { margin-left:10px; color:var(--mode-color); }
.mode-peek { position:absolute; z-index:5; top:50%; width:142px; padding:14px 18px; display:grid; gap:5px; border:1px solid rgba(255,255,255,.12); background:rgba(8,9,13,.62); backdrop-filter:blur(12px); color:#777985; transform:translateY(-50%); font-size:8px; letter-spacing:.13em; }
.mode-peek span { color:var(--mode-color); }
.mode-peek b { font-size:9px; white-space:nowrap; }
.mode-peek-prev { left:0; translate:-72% 0; border-radius:0 14px 14px 0; }
.mode-peek-next { right:0; translate:72% 0; border-radius:14px 0 0 14px; text-align:right; }
.mode-stage[data-mode-stage="trail"] .mode-focus { --mode-color:var(--lilac); background:radial-gradient(circle at 64% 43%,rgba(166,156,255,.25),transparent 36%),linear-gradient(145deg,#171321,#090a10 72%); }
.mode-stage[data-mode-stage="trail"] .mode-live-trail { opacity:.84; animation:modeTrailDash 9s linear infinite; }
.mode-stage[data-mode-stage="trail"] .mode-live-trail-b { animation-duration:6s; animation-direction:reverse; }
.mode-stage[data-mode-stage="trail"] .mode-live-ball-a { width:clamp(80px,10vw,145px); left:65%; top:17%; filter:drop-shadow(-42px 60px 20px rgba(166,156,255,.4)); animation:modeTrailBall 3.4s var(--ease-physics) infinite alternate; }
.mode-stage[data-mode-stage="trail"] .mode-live-ball-b { right:20%; top:57%; }
.mode-stage[data-mode-stage="trail"] .mode-live-ball-c { left:51%; bottom:14%; }
@keyframes modeTrailDash { to { rotate:360deg; } }
@keyframes modeTrailBall { to { translate:-90px 85px; } }
.mode-stage[data-mode-stage="collision"] .mode-focus { --mode-color:var(--pink); background:radial-gradient(circle at 62% 43%,rgba(255,93,162,.22),transparent 30%),linear-gradient(145deg,#1c1019,#0b090d 72%); }
.mode-stage[data-mode-stage="collision"] .mode-live-ring { transform:translate(-50%,-50%) rotate(44deg) scaleY(.25); }
.mode-stage[data-mode-stage="collision"] .mode-live-ball-a { width:clamp(125px,16vw,230px); left:52%; top:31%; }
.mode-stage[data-mode-stage="collision"] .mode-live-ball-b { width:clamp(115px,15vw,215px); right:16%; top:31%; background:var(--cyan); }
.mode-stage[data-mode-stage="collision"] .mode-live-ball-c { left:63%; bottom:15%; background:var(--acid); }
.mode-stage[data-mode-stage="collision"] .mode-live-impact { opacity:1; transform:scale(1) rotate(45deg); animation:modeImpact 1.15s steps(2,end) infinite; }
@keyframes modeImpact { 50% { opacity:.34; transform:scale(1.35) rotate(52deg); } }
.mode-stage[data-mode-stage="bloom"] .mode-focus { --mode-color:var(--cyan); background:radial-gradient(circle at 63% 42%,rgba(87,216,255,.2),transparent 37%),linear-gradient(145deg,#0d181d,#090b0d 72%); }
.mode-stage[data-mode-stage="bloom"] .mode-live-ring { opacity:.2; transform:translate(-50%,-50%) rotate(5deg) scaleY(.9); }
.mode-stage[data-mode-stage="bloom"] .mode-live-ball-a { width:clamp(240px,29vw,430px); left:47%; top:14%; }
.mode-stage[data-mode-stage="bloom"] .mode-live-ball-b { width:clamp(110px,14vw,205px); right:4%; top:52%; background:var(--acid); }
.mode-stage[data-mode-stage="bloom"] .mode-live-ball-c { width:clamp(82px,9vw,135px); left:42%; bottom:4%; background:var(--lilac); }

@media (max-width:760px){
  .mode-stage { min-height:auto; margin-top:56px; grid-template-columns:1fr; border-radius:24px; }
  .mode-selector { grid-template-columns:repeat(4,minmax(165px,1fr)); grid-template-rows:96px; overflow-x:auto; border-right:0; border-bottom:1px solid rgba(255,255,255,.12); scroll-snap-type:x mandatory; scrollbar-width:none; }
  .mode-selector::-webkit-scrollbar { display:none; }
  .mode-stage-tab { min-width:165px; padding:18px; border-right:1px solid rgba(255,255,255,.1); border-bottom:0; scroll-snap-align:start; }
  .mode-stage-tab::before { inset:auto 0 0; width:auto; height:3px; transform:scaleX(0); }
  .mode-stage-tab.is-active::before { transform:scaleX(1); }
  .mode-stage-tab::after { right:16px; }
  .mode-focus { min-height:650px; }
  .mode-focus-copy { left:22px; right:22px; bottom:26px; width:auto; }
  .mode-focus-copy h3 { font-size:clamp(48px,14vw,72px); }
  .mode-focus-copy p { font-size:12px; }
  .mode-field { inset:-3% -18% 21%; }
  .mode-live-ring,.mode-live-trail { width:120vw; left:59%; top:44%; }
  .mode-live-ring-b,.mode-live-trail-b { width:76vw; }
  .mode-live-ball-a { width:42vw; }
  .mode-live-ball-b { width:20vw; }
  .mode-live-ball-c { width:12vw; }
  .mode-live-graffiti { width:88px; left:22%; right:auto; top:5%; opacity:.2; }
  .mode-peek { display:none; }
}

/* Orbit Pass: the only liquid-glass object on the page. */
.dark-continuum { position:relative; z-index:2; margin-top:-56px; background:#0b0c11; overflow:hidden; isolation:isolate; }
.dark-continuum .access-section,.dark-continuum .final-cta { background-color:#0b0c11; background-image:none; border:0; box-shadow:none; }
.dark-continuum .access-section { overflow:visible; }
.access-section { padding-block:var(--section-space); border-top:0; background:#0b0c11; }
.access-card { --pass-shift-x:0px; --pass-shift-y:0px; min-height:580px; padding:32px; border:1px solid rgba(255,255,255,.19); border-radius:30px; color:#f5f3ec; background:linear-gradient(145deg,rgba(255,255,255,.12),rgba(255,255,255,.025) 48%,rgba(166,156,255,.07)); box-shadow:inset 0 1px 0 rgba(255,255,255,.27),inset 0 0 52px rgba(255,255,255,.035),0 52px 120px rgba(0,0,0,.48); backdrop-filter:blur(28px) saturate(1.28); isolation:isolate; }
.access-card::before { inset:0; width:auto; height:auto; z-index:-1; border:0; border-radius:inherit; background:linear-gradient(118deg,transparent 12%,rgba(255,255,255,.1) 33%,transparent 53%); box-shadow:inset 0 0 0 1px rgba(255,255,255,.1); opacity:.72; }
.access-card::after { content:""; position:absolute; z-index:0; inset:11px; border:1px solid rgba(255,255,255,.1); border-radius:22px; pointer-events:none; }
.pass-surface { position:absolute; z-index:0; inset:0; pointer-events:none; opacity:.25; background-image:repeating-linear-gradient(118deg,transparent 0 28px,rgba(255,255,255,.045) 29px,transparent 30px 60px); mask-image:linear-gradient(135deg,#000,transparent 68%); }
.pass-viralviz { position:absolute; z-index:0; right:-8%; top:-10%; width:62%; aspect-ratio:1; border:1px solid rgba(217,255,87,.32); border-radius:50%; transform:translate3d(var(--pass-shift-x),var(--pass-shift-y),46px) rotate(-19deg) scaleY(.42); box-shadow:0 0 56px rgba(217,255,87,.09),inset 0 0 32px rgba(166,156,255,.06); pointer-events:none; transition:transform .12s linear; }
.pass-viralviz::before,.pass-viralviz::after { content:""; position:absolute; inset:14%; border:1px solid rgba(166,156,255,.34); border-radius:50%; }
.pass-viralviz::after { inset:30%; border-style:dashed; opacity:.55; }
.pass-viralviz i { position:absolute; display:block; border-radius:50%; box-shadow:inset -8px -10px 13px rgba(0,0,0,.28),0 0 20px currentColor; }
.pass-viralviz i:first-child { width:48px; height:48px; right:7%; top:33%; color:var(--acid); background:var(--acid); }
.pass-viralviz i:nth-child(2) { width:24px; height:24px; left:16%; bottom:8%; color:var(--lilac); background:var(--lilac); }
.pass-viralviz i:nth-child(3) { width:13px; height:13px; right:28%; bottom:0; color:var(--cyan); background:var(--cyan); }
.pass-viralviz b { position:absolute; left:50%; top:50%; width:42%; height:1px; background:linear-gradient(90deg,transparent,var(--acid),transparent); transform:translate(-50%,-50%); box-shadow:0 0 12px var(--acid); }
.pass-chip { position:absolute; z-index:2; left:32px; top:80px; width:52px; height:40px; border:1px solid rgba(217,255,87,.5); border-radius:9px; background:linear-gradient(135deg,rgba(217,255,87,.3),rgba(255,255,255,.05)); box-shadow:inset 0 0 12px rgba(217,255,87,.12); display:grid; grid-template-columns:1fr 1fr; gap:5px; padding:8px; transform:translateZ(25px); }
.pass-chip i { border:1px solid rgba(255,255,255,.35); border-radius:2px; }
.access-card-top,.access-card h3,.access-status,.access-card ul,.access-card-bottom { z-index:2; transform:translateZ(30px); }
.access-card-top { color:#b9bac2; }
.access-card-top i { color:var(--acid); font-style:normal; }
.access-card h3 { margin:128px 0 17px; font-size:clamp(54px,5vw,78px); color:#f8f5ee; text-shadow:0 1px 0 rgba(255,255,255,.18); }
.access-status { color:#b7b8bf; }
.access-status i { background:var(--acid); box-shadow:0 0 12px var(--acid); }
.access-card ul { margin:48px 0 36px; border-color:rgba(255,255,255,.17); }
.access-card li { display:grid; grid-template-columns:84px 1fr; border-color:rgba(255,255,255,.13); color:#d2d2d8; font-size:11px; letter-spacing:.01em; }
.access-card li span { width:auto; color:var(--acid); opacity:.7; font-size:7px; letter-spacing:.14em; }
.access-card-bottom strong { color:#a3a4ac; font-weight:650; }
.access-card-bottom button { border:1px solid rgba(255,255,255,.13); color:#73747d; background:rgba(255,255,255,.045); box-shadow:inset 0 0 16px rgba(255,255,255,.025); }
.access-card.reveal-ready.is-visible { transform:perspective(1050px) rotateX(var(--card-rx)) rotateY(var(--card-ry)); transition:opacity var(--dur-heavy) var(--ease-heavy),transform .16s ease-out,box-shadow .2s ease-out; }

/* Context-led graffiti families. */
.graffiti-sprite.graffiti-impact { background-image:url("assets/graffiti/stickers/gravity-field.png"); }
.graffiti-sprite.graffiti-motion { background-image:url("assets/graffiti/stickers/motion-trail.png"); }
.graffiti-sprite.graffiti-control { background-image:url("assets/graffiti/stickers/viralviz-control.png"); }
.motion-sticker.sticker-impact { background-image:url("assets/graffiti/stickers/gravity-field.png"); }
.motion-sticker.sticker-speed { background-image:url("assets/graffiti/stickers/motion-trail.png"); }
.motion-sticker.sticker-sound { background-image:url("assets/graffiti/stickers/impact-burst.png"); }
.motion-sticker.sticker-palette { background-image:url("assets/graffiti/stickers/viralviz-control.png"); }
.graffiti-impact { transition-timing-function:var(--ease-snap)!important; }
.graffiti-motion { animation-timing-function:linear!important; }
.graffiti-control { filter:drop-shadow(0 10px 13px rgba(33,27,48,.18)); }

/* Vertical rhythm and motion roles. */
.studio-section { padding-top:clamp(96px,7vw,128px); padding-bottom:clamp(64px,5vw,88px); }
.modes-section { padding-top:clamp(96px,7vw,120px); padding-bottom:clamp(76px,6vw,104px); }
.section-heading { margin-bottom:96px; }
.section-heading>div>.eyebrow { margin-bottom:var(--space-label-title); }
.section-heading>p { margin:0; }
.motion-lab-head { row-gap:var(--space-title-copy); margin-bottom:96px; }
.motion-lab-head .eyebrow { margin:0 0 calc(var(--space-label-title) - var(--space-title-copy)); }
.access-intro .eyebrow,.final-cta .eyebrow { margin-bottom:var(--space-label-title); }
.access-intro>p:last-child { margin-top:var(--space-title-copy); }
.story-orb,.mode-live-ball { animation-timing-function:var(--ease-physics); }
.motion-index-row,.mode-stage-tab,.button,.text-button,.header-cta { transition-timing-function:var(--ease-ui); }
.motion-sticker,.story-sticker,.mode-live-graffiti { transition-timing-function:var(--ease-snap); }
.section-heading h2,.motion-lab-head h2,.access-intro h2,.final-cta h2 { transition-timing-function:var(--ease-heavy); }

/* Branded interaction language. */
::selection { color:#0c0d09; background:rgba(217,255,87,.88); text-shadow:none; }
:focus-visible { outline:2px solid var(--acid); outline-offset:4px; }
button:focus-visible,a:focus-visible,input:focus-visible { box-shadow:0 0 0 5px rgba(166,156,255,.28); }
.button:active,.header-cta:active,.text-button:active,.mode-focus-copy button:active,.access-gate a:active { transform:translateY(1px) scale(.975); transition-duration:70ms; }
button:disabled,[aria-disabled="true"] { cursor:not-allowed!important; opacity:.44!important; filter:saturate(.35); box-shadow:none!important; }
button:not(:disabled):hover { filter:brightness(1.07); }
button:not(:disabled):active { filter:brightness(.9); }
.mode-stage-tab:disabled,.motion-index-row:disabled { color:#555!important; background:transparent!important; }

@media (max-width:760px){
  :root { --space-label-title:32px; --space-title-copy:24px; --section-space:96px; }
  .section-heading { margin-bottom:64px; }
  .studio-section { padding-block:84px 56px; }
  .modes-section { padding-block:84px 64px; }
  .section-heading>p { margin-top:var(--space-title-copy); }
  .motion-lab-head { row-gap:var(--space-title-copy); margin-bottom:64px; }
  .motion-lab-head .eyebrow { margin:0; }
  .access-card { min-height:540px; padding:24px; }
  .pass-chip { left:24px; top:70px; }
  .access-card h3 { margin-top:116px; }
  .access-card li { grid-template-columns:76px 1fr; }
  .pass-viralviz { width:84%; right:-26%; }
}

@media (prefers-reduced-motion:reduce){
  .mode-focus::before,.mode-live-trail,.mode-live-ball,.mode-live-impact,.pass-viralviz,.graffiti-motion { animation:none!important; transition:none!important; }
  .access-card.reveal-ready.is-visible { transform:none!important; }
}

/* Custom control-section title: clean hero-scale typography. */
.motion-lab::after { content:none; }
.motion-lab-head { min-height:0; max-width:1440px; margin:0 auto clamp(46px,4.5vw,68px); display:grid; grid-template-columns:minmax(0,1fr); place-items:center; position:relative; isolation:isolate; }
.motion-lab-head::before,.motion-lab-head::after { content:none; }
.motion-title-lockup { width:min(1320px,100%); position:relative; z-index:2; display:block; }
.motion-title-lockup::before,.motion-title-lockup::after { content:none; }
.motion-title-lockup h2 { position:relative; z-index:2; display:flex; flex-direction:column; align-items:stretch; width:100%; max-width:none; margin:0; font-size:clamp(64px,7.4vw,118px); line-height:.88; letter-spacing:-.072em; }
.motion-title-lockup h2 span { display:block; align-self:flex-start; }
.motion-title-lockup h2 strong { display:block; align-self:center; margin:-.025em 0 .18em clamp(48px,9vw,170px); padding:.015em .16em .15em; color:#f5f2eb; background:#101116; font:inherit; clip-path:polygon(2% 0,100% 0,98% 100%,0 94%); rotate:-1.1deg; box-shadow:10px 12px 0 var(--acid); }
.motion-title-lockup h2 em { display:block; align-self:flex-end; margin-right:clamp(0px,3vw,54px); color:#6946d9; font-size:.57em; line-height:1; letter-spacing:-.045em; }
.motion-viralviz-graffiti { position:absolute; z-index:1; right:2.5%; top:-11%; width:clamp(150px,14vw,210px); aspect-ratio:1; pointer-events:none; background:url("assets/editorial/viralviz-force-graffiti.png") center/contain no-repeat; mix-blend-mode:multiply; rotate:6deg; opacity:.76; }
.motion-lab-head.reveal-ready h2>span,.motion-lab-head.reveal-ready h2>strong,.motion-lab-head.reveal-ready h2>em { opacity:0; translate:0 30px; filter:blur(6px); transition:opacity .58s var(--ease-heavy),translate .76s var(--ease-heavy),filter .62s var(--ease-heavy); }
.motion-lab-head.reveal-ready.is-visible h2>span,.motion-lab-head.reveal-ready.is-visible h2>strong,.motion-lab-head.reveal-ready.is-visible h2>em { opacity:1; translate:0 0; filter:blur(0); }
.motion-lab-head.reveal-ready h2>strong { transition-delay:.08s; }
.motion-lab-head.reveal-ready h2>em { transition-delay:.16s; }
.access-section { padding-bottom:clamp(82px,6vw,112px); }
.final-cta { min-height:640px; padding:clamp(96px,7vw,132px) 30px 110px; place-content:start center; }
.final-cta h2 { margin-top:0; }

@media (min-width:761px) and (max-height:900px){
  .motion-title-lockup { width:min(1240px,100%); }
  .motion-title-lockup h2 { font-size:clamp(64px,min(7vw,13svh),108px); line-height:.9; }
}

@media (max-width:760px){
  .motion-lab-head { min-height:0; margin-bottom:52px; }
  .motion-title-lockup { width:100%; }
  .motion-title-lockup h2 { width:100%; align-items:flex-start; text-align:left; }
  .motion-title-lockup h2 strong { align-self:flex-start; margin-left:0; }
  .motion-title-lockup h2 em { align-self:flex-start; margin-right:0; }
  .motion-viralviz-graffiti { width:92px; right:-22px; top:-5%; opacity:.5; }
  .motion-title-lockup h2 { font-size:clamp(50px,15vw,72px); }
  .motion-title-lockup h2 strong { box-shadow:6px 7px 0 var(--acid); }
  .motion-title-lockup h2 em { max-width:330px; font-size:.56em; }
  .access-section { padding-bottom:64px; }
  .final-cta { min-height:540px; padding:72px 20px 82px; }
}

/* Reference transfer: APF button hover + Double Play stacked CTA. */
.site-header .header-cta {
  position:relative;
  min-width:142px;
  min-height:46px;
  display:grid;
  grid-template-columns:1fr auto;
  align-items:center;
  gap:22px;
  overflow:hidden;
  padding:0 15px 0 17px;
  border:1px solid rgba(255,255,255,.46);
  border-radius:0;
  color:#f4f1ea;
  background:#0a0b10;
  box-shadow:none;
  backdrop-filter:none;
  translate:none;
  transition:color .22s ease,background .22s ease,border-color .22s ease,transform .16s ease;
}
.site-header .header-cta::before,.site-header .header-cta::after { content:none; }
.site-header .header-cta .header-cta-label {
  display:block;
  margin:0;
  color:inherit;
  font:750 11px/1 var(--font);
  letter-spacing:-.01em;
}
.site-header .header-cta .header-cta-marks {
  width:32px;
  height:18px;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:4px;
  margin:0;
  color:inherit;
}
.header-cta-marks i {
  display:block;
  flex:0 0 auto;
  background:var(--acid);
  transform-origin:center;
  transition:transform .42s cubic-bezier(.2,.8,.2,1),border-radius .42s cubic-bezier(.2,.8,.2,1),background .22s ease;
}
.header-cta-marks i:first-child { width:10px; height:15px; border-radius:58% 42% 55% 45%; rotate:-9deg; }
.header-cta-marks i:nth-child(2) { width:8px; height:12px; border-radius:47% 53% 42% 58%; rotate:12deg; }
.header-cta-marks i:last-child { width:6px; height:8px; border-radius:50%; }
.site-header .header-cta:hover,.site-header .header-cta:focus-visible {
  border-color:#f4f1ea;
  color:#0a0b10;
  background:#f4f1ea;
  box-shadow:none;
  transform:translateY(-1px);
}
.header-cta:hover .header-cta-marks i,.header-cta:focus-visible .header-cta-marks i { background:#0a0b10; }
.header-cta:hover .header-cta-marks i:first-child,.header-cta:focus-visible .header-cta-marks i:first-child { transform:translate(2px,-2px) rotate(23deg) scale(.86,1.15); border-radius:50%; }
.header-cta:hover .header-cta-marks i:nth-child(2),.header-cta:focus-visible .header-cta-marks i:nth-child(2) { transform:translate(-1px,2px) rotate(-24deg) scale(1.16,.8); }
.header-cta:hover .header-cta-marks i:last-child,.header-cta:focus-visible .header-cta-marks i:last-child { transform:translate(-3px,-4px) scale(1.25); }
.site-header .header-cta.is-authenticated { border-color:rgba(217,255,87,.68); }

.dark-continuum .final-cta {
  min-height:850px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  padding:clamp(96px,7vw,132px) 24px 0;
  overflow:hidden;
  background:#0b0c11;
}
.final-cta h2 {
  max-width:1420px;
  margin:0;
  font-size:clamp(64px,8.2vw,132px);
  line-height:.94;
  letter-spacing:-.07em;
  text-align:center;
}
.final-cta h2 em { color:var(--lilac); }
.access-deck {
  position:relative;
  width:min(1040px,calc(100vw - 40px));
  height:390px;
  margin-top:clamp(54px,6vw,88px);
  perspective:1200px;
  isolation:isolate;
}
.access-ticket {
  position:absolute;
  left:50%;
  bottom:-42px;
  width:86%;
  height:330px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.48);
  border-radius:30px 30px 0 0;
  box-shadow:none;
  transform-origin:50% 105%;
  transition:transform .72s cubic-bezier(.16,1,.3,1),bottom .72s cubic-bezier(.16,1,.3,1),border-color .25s ease;
}
.ticket-back { pointer-events:none; }
.ticket-back-a {
  z-index:1;
  background:var(--acid);
  transform:translateX(-50%) rotate(-4.5deg) translateY(38px);
}
.ticket-back-a::before,.ticket-back-a::after {
  content:"";
  position:absolute;
  border:1px solid rgba(17,18,15,.48);
  border-radius:50%;
}
.ticket-back-a::before { width:62%; height:132%; left:15%; top:-34%; }
.ticket-back-a::after { width:34%; height:74%; right:8%; bottom:-24%; }
.ticket-back-b {
  z-index:2;
  background-color:#171820;
  background-image:linear-gradient(rgba(255,255,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px);
  background-size:42px 42px;
  transform:translateX(-50%) rotate(4.4deg) translateY(25px);
}
.ticket-back-b::after { content:""; position:absolute; width:56%; height:145%; right:-7%; top:-56%; border:1px solid rgba(166,156,255,.52); border-radius:50%; rotate:-14deg; }
.final-cta .viralviz-launch {
  z-index:3;
  bottom:-12px;
  width:86%;
  height:330px;
  display:block;
  padding:0;
  border:1px solid rgba(255,255,255,.7);
  border-radius:30px 30px 0 0;
  color:#f7f4ee;
  background:#6554df;
  box-shadow:none;
  backdrop-filter:none;
  translate:none;
  transform:translateX(-50%);
}
.final-cta .viralviz-launch::before {
  content:"";
  position:absolute;
  right:5%;
  top:-42%;
  width:58%;
  height:145%;
  border:1px solid rgba(255,255,255,.42);
  border-radius:50%;
  rotate:-13deg;
  transition:rotate .7s cubic-bezier(.16,1,.3,1),scale .7s cubic-bezier(.16,1,.3,1);
  pointer-events:none;
}
.final-cta .viralviz-launch::after { content:""; position:absolute; right:24%; top:19%; width:24px; height:24px; border-radius:50%; background:var(--acid); box-shadow:inset -6px -7px 9px rgba(72,88,13,.48); transition:transform .7s cubic-bezier(.16,1,.3,1); }
.ticket-viralvizs { position:absolute; right:10%; top:-25%; width:46%; height:128%; margin:0; pointer-events:none; rotate:9deg; }
.ticket-viralvizs i { position:absolute; inset:0; border:1px solid rgba(255,255,255,.24); border-radius:50%; }
.ticket-viralvizs i:nth-child(2) { inset:15%; border-color:rgba(217,255,87,.4); }
.ticket-viralvizs i:nth-child(3) { inset:31%; border-style:dashed; border-color:rgba(255,255,255,.35); }
.ticket-copy {
  position:absolute;
  z-index:2;
  left:6%;
  right:150px;
  top:50%;
  display:block;
  transform:translateY(-50%);
  margin:0;
  color:#fff;
  text-align:left;
}
.ticket-copy b {
  color:#fff;
  font-size:clamp(39px,5.3vw,72px);
  font-weight:650;
  line-height:.95;
  letter-spacing:-.055em;
}
.ticket-side {
  position:absolute;
  z-index:3;
  right:0;
  top:0;
  width:118px;
  height:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0;
  margin:0;
  border-left:1px dashed rgba(255,255,255,.62);
  color:#fff;
}
.ticket-side b { font:400 50px/1 var(--font); transition:transform .55s cubic-bezier(.16,1,.3,1); }
.access-deck:hover .ticket-back-a { transform:translateX(-50%) rotate(-8deg) translate(-18px,-4px); }
.access-deck:hover .ticket-back-b { transform:translateX(-50%) rotate(7.4deg) translate(24px,-10px); }
.final-cta .viralviz-launch:hover,.final-cta .viralviz-launch:focus-visible {
  bottom:7px;
  border-color:#fff;
  color:#fff;
  background:#6554df;
  box-shadow:none;
  transform:translateX(-50%) rotate(-1deg);
}
.final-cta .viralviz-launch:hover::before,.final-cta .viralviz-launch:focus-visible::before { rotate:-7deg; scale:1.04; }
.final-cta .viralviz-launch:hover::after,.final-cta .viralviz-launch:focus-visible::after { transform:translate(18px,-8px) scale(1.08); }
.viralviz-launch:hover .ticket-side b,.viralviz-launch:focus-visible .ticket-side b { transform:translate(8px,-8px) rotate(8deg); }
.final-cta .viralviz-launch:active { transform:translateX(-50%) translateY(4px) rotate(-.5deg) scale(.995); }

@media (max-width:760px){
  .site-header .header-cta { min-width:112px; min-height:40px; gap:14px; padding:0 11px 0 13px; }
  .site-header .header-cta .header-cta-label { font-size:10px; }
  .site-header .header-cta .header-cta-marks { width:27px; transform:scale(.88); transform-origin:right center; }
  .dark-continuum .final-cta { min-height:660px; padding:76px 16px 0; }
  .final-cta h2 { font-size:clamp(50px,14vw,72px); }
  .access-deck { width:calc(100vw - 20px); height:300px; margin-top:54px; }
  .access-ticket,.final-cta .viralviz-launch { width:94%; height:250px; border-radius:20px 20px 0 0; }
  .ticket-copy { left:7%; right:78px; top:50%; }
  .ticket-copy b { max-width:230px; font-size:clamp(28px,8.5vw,42px); }
  .ticket-side { width:64px; padding:0; }
  .ticket-side b { font-size:36px; }
  .ticket-viralvizs { right:3%; width:62%; opacity:.62; }
  .final-cta .viralviz-launch::after { right:20%; width:18px; height:18px; }
}

@media (prefers-reduced-motion:reduce){
  .header-cta-marks i,.access-ticket,.ticket-side b { transition:none!important; }
  .access-deck:hover .ticket-back-a { transform:translateX(-50%) rotate(-4.5deg) translateY(38px); }
  .access-deck:hover .ticket-back-b { transform:translateX(-50%) rotate(4.4deg) translateY(25px); }
}

/* Final CTA — kinetic ticket cascade selected from the visual exploration. */
.dark-continuum .final-cta {
  min-height:clamp(700px,48vw,860px);
  display:grid;
  grid-template-columns:minmax(330px,.72fr) minmax(610px,1.28fr);
  align-items:center;
  gap:clamp(18px,3vw,64px);
  padding:clamp(86px,7vw,128px) clamp(24px,5vw,84px);
  overflow:hidden;
  background:#0b0c11;
}
.final-cta h2 {
  position:relative;
  z-index:7;
  max-width:650px;
  margin:0;
  color:#f4f1ea;
  font-size:clamp(62px,6vw,108px);
  font-weight:520;
  line-height:.86;
  letter-spacing:-.072em;
  text-align:left;
}
.access-deck {
  position:relative;
  z-index:2;
  width:min(860px,58vw);
  height:590px;
  margin:0;
  perspective:1400px;
  isolation:isolate;
}
.access-ticket,
.final-cta .viralviz-launch {
  --ticket-shift-x:0px;
  --ticket-shift-y:0px;
  position:absolute;
  left:var(--ticket-left);
  top:var(--ticket-top);
  bottom:auto;
  width:min(700px,48vw);
  height:210px;
  overflow:hidden;
  border:1px solid var(--ticket-border,rgba(17,18,16,.23));
  border-radius:16px;
  box-shadow:0 18px 42px rgba(0,0,0,.22);
  transform:translate3d(var(--ticket-shift-x),var(--ticket-shift-y),var(--ticket-depth,0)) rotate(var(--ticket-rotate));
  transform-origin:68% 50%;
  transition:transform .72s cubic-bezier(.16,1,.3,1),box-shadow .28s ease,border-color .28s ease,opacity .58s ease;
  -webkit-mask:radial-gradient(circle at 100% 15px,transparent 0 8px,#000 8.6px) 100% 0/100% 30px repeat-y;
  mask:radial-gradient(circle at 100% 15px,transparent 0 8px,#000 8.6px) 100% 0/100% 30px repeat-y;
}
.ticket-back { pointer-events:none; }
.ticket-stack-black {
  --ticket-left:30%; --ticket-top:2%; --ticket-rotate:-8deg; --ticket-depth:-90px;
  z-index:1;
  color:#f4f1ea;
  background:#16171c;
  --ticket-border:rgba(255,255,255,.16);
}
.ticket-stack-lilac {
  --ticket-left:25%; --ticket-top:18%; --ticket-rotate:-4.4deg; --ticket-depth:-66px;
  z-index:2;
  color:#10110e;
  background:#b6a4f4;
}
.ticket-stack-acid {
  --ticket-left:20%; --ticket-top:34%; --ticket-rotate:-1.4deg; --ticket-depth:-42px;
  z-index:3;
  color:#10110e;
  background:var(--acid);
}
.ticket-stack-paper {
  --ticket-left:14%; --ticket-top:50%; --ticket-rotate:1.7deg; --ticket-depth:-20px;
  z-index:4;
  color:#10110e;
  background:#e8e4dc;
}
.final-cta .viralviz-launch {
  --ticket-left:8%; --ticket-top:66%; --ticket-rotate:4.5deg; --ticket-depth:0;
  z-index:5;
  display:block;
  padding:0;
  color:#10110e;
  background:#f4f1ea;
  border-color:rgba(17,18,16,.28);
  backdrop-filter:none;
  translate:none;
}
.final-cta .viralviz-launch::before,
.final-cta .viralviz-launch::after { content:none; }
.ticket-perf {
  position:absolute;
  z-index:4;
  top:0;
  right:68px;
  width:1px;
  height:100%;
  border-left:1px dashed currentColor;
  opacity:.34;
  pointer-events:none;
}
.ticket-copy {
  position:absolute;
  z-index:6;
  left:5.5%;
  right:48%;
  top:50%;
  bottom:auto;
  display:block;
  margin:0;
  color:#10110e;
  text-align:left;
  transform:translateY(-50%);
}
.ticket-copy b {
  display:block;
  width:100%;
  color:inherit;
  font-size:clamp(45px,4.55vw,78px);
  font-weight:800;
  line-height:.78;
  letter-spacing:-.085em;
}
.ticket-copy b>span { position:relative; z-index:2; display:block; transform:translateX(-1.5%); }
.ticket-copy b>em {
  position:relative;
  z-index:1;
  display:block;
  width:max-content;
  margin:.14em 0 0;
  padding:0;
  color:#6554df;
  background:none;
  font:inherit;
  font-style:normal;
  font-weight:800;
  line-height:.82;
  letter-spacing:-.072em;
  -webkit-text-stroke:0;
  text-stroke:0;
  transform:translateX(7.5%);
  clip-path:none;
  box-shadow:none;
  transition:transform .55s cubic-bezier(.16,1,.3,1),letter-spacing .55s cubic-bezier(.16,1,.3,1);
}
.ticket-mini-viralviz {
  position:absolute;
  z-index:2;
  right:calc(68px + 4%);
  top:50%;
  width:31%;
  aspect-ratio:1;
  transform:translateY(-50%);
  pointer-events:none;
}
.ticket-mini-ring {
  position:absolute;
  display:block;
  inset:7%;
  border:1px solid rgba(16,17,14,.28);
  border-radius:50%;
  transition:transform .8s cubic-bezier(.16,1,.3,1);
}
.ticket-mini-ring-a { transform:rotate(23deg) scaleY(.46); }
.ticket-mini-ring-b { inset:18%; border-color:rgba(101,84,223,.48); transform:rotate(-34deg) scaleY(.72); }
.ticket-mini-ring-c { inset:28%; border-style:dashed; border-color:rgba(16,17,14,.2); transform:rotate(61deg) scaleY(.9); }
.ticket-mini-core {
  position:absolute;
  left:50%;
  top:50%;
  width:32%;
  aspect-ratio:1;
  border-radius:50%;
  background:radial-gradient(circle at 34% 27%,#4b4e58 0,#17191f 30%,#030406 76%);
  box-shadow:inset -12px -14px 22px #000,inset 6px 5px 11px rgba(255,255,255,.18),0 14px 26px rgba(0,0,0,.28);
  transform:translate(-50%,-50%);
}
.ticket-mini-core::after {
  content:"";
  position:absolute;
  left:22%;
  top:17%;
  width:34%;
  height:18%;
  border-radius:50%;
  background:rgba(255,255,255,.24);
  filter:blur(2px);
  rotate:-22deg;
}
.ticket-mini-ball {
  position:absolute;
  z-index:3;
  display:block;
  aspect-ratio:1;
  border-radius:50%;
  transition:transform .72s cubic-bezier(.16,1,.3,1);
}
.ticket-mini-ball::after {
  content:"";
  position:absolute;
  left:25%;
  top:19%;
  width:25%;
  aspect-ratio:1;
  border-radius:50%;
  background:rgba(255,255,255,.68);
  filter:blur(.6px);
}
.ticket-mini-ball-a {
  width:13%;
  left:7%;
  top:27%;
  background:radial-gradient(circle at 34% 28%,#f4ffb0 0,var(--acid) 39%,#7c9818 100%);
  box-shadow:inset -4px -5px 7px rgba(56,70,8,.34),0 8px 15px rgba(72,88,13,.18);
}
.ticket-mini-ball-b {
  width:10%;
  right:8%;
  top:17%;
  background:radial-gradient(circle at 34% 28%,#eee9ff 0,#b6a4f4 42%,#6554df 100%);
  box-shadow:inset -3px -4px 6px rgba(47,36,120,.28),0 7px 13px rgba(65,49,143,.17);
}
.ticket-mini-ball-c {
  width:8%;
  right:17%;
  bottom:10%;
  background:radial-gradient(circle at 34% 28%,#ffd7e8 0,#ee6ba6 43%,#a62560 100%);
  box-shadow:inset -3px -4px 6px rgba(102,17,57,.25),0 7px 13px rgba(124,28,72,.16);
}
.ticket-sticker {
  position:absolute;
  z-index:5;
  display:block;
  width:116px;
  aspect-ratio:1;
  background-position:center;
  background-repeat:no-repeat;
  background-size:contain;
  filter:drop-shadow(0 7px 10px rgba(0,0,0,.18));
  pointer-events:none;
}
.ticket-sticker.sticker-control { left:12%; top:8px; background-image:url("assets/graffiti/stickers/control-star.png"); rotate:-9deg; }
.ticket-sticker.sticker-field { left:41%; top:1px; background-image:url("assets/graffiti/stickers/gravity-field.png"); rotate:6deg; }
.ticket-sticker.sticker-impact { left:58%; top:3px; background-image:url("assets/graffiti/stickers/impact-burst.png"); rotate:-4deg; }
.ticket-sticker.sticker-motion { left:25%; top:2px; background-image:url("assets/graffiti/stickers/motion-trail.png"); rotate:5deg; }
.access-deck:hover .ticket-stack-black { --ticket-shift-x:24px; --ticket-shift-y:-15px; transform:translate3d(var(--ticket-shift-x),var(--ticket-shift-y),var(--ticket-depth)) rotate(-10.5deg); }
.access-deck:hover .ticket-stack-lilac { --ticket-shift-x:16px; --ticket-shift-y:-10px; transform:translate3d(var(--ticket-shift-x),var(--ticket-shift-y),var(--ticket-depth)) rotate(-5.8deg); }
.access-deck:hover .ticket-stack-acid { --ticket-shift-x:8px; --ticket-shift-y:-6px; transform:translate3d(var(--ticket-shift-x),var(--ticket-shift-y),var(--ticket-depth)) rotate(-2.2deg); }
.access-deck:hover .ticket-stack-paper { --ticket-shift-x:-2px; --ticket-shift-y:-3px; transform:translate3d(var(--ticket-shift-x),var(--ticket-shift-y),var(--ticket-depth)) rotate(1.2deg); }
.final-cta .viralviz-launch:hover,
.final-cta .viralviz-launch:focus-visible {
  color:#10110e;
  background:#f4f1ea;
  border-color:rgba(17,18,16,.58);
  box-shadow:0 28px 64px rgba(0,0,0,.32);
  transform:translate3d(-8px,-10px,12px) rotate(3.2deg);
}
.viralviz-launch:hover .ticket-copy b>em,
.viralviz-launch:focus-visible .ticket-copy b>em { transform:translateX(9%); letter-spacing:-.062em; }
.viralviz-launch:hover .ticket-mini-ring-a,
.viralviz-launch:focus-visible .ticket-mini-ring-a { transform:rotate(34deg) scaleY(.42); }
.viralviz-launch:hover .ticket-mini-ring-b,
.viralviz-launch:focus-visible .ticket-mini-ring-b { transform:rotate(-43deg) scaleY(.76); }
.viralviz-launch:hover .ticket-mini-ring-c,
.viralviz-launch:focus-visible .ticket-mini-ring-c { transform:rotate(72deg) scaleY(.86); }
.viralviz-launch:hover .ticket-mini-ball-a,
.viralviz-launch:focus-visible .ticket-mini-ball-a { transform:translate(-8px,7px); }
.viralviz-launch:hover .ticket-mini-ball-b,
.viralviz-launch:focus-visible .ticket-mini-ball-b { transform:translate(8px,-5px); }
.viralviz-launch:hover .ticket-mini-ball-c,
.viralviz-launch:focus-visible .ticket-mini-ball-c { transform:translate(6px,7px); }
.final-cta .viralviz-launch:active { transform:translate3d(-3px,-3px,6px) rotate(3.8deg) scale(.992); }
.final-cta.reveal-ready:not(.is-visible) .access-ticket { opacity:0; transform:translate3d(95px,92px,-100px) rotate(-2deg); }
.final-cta.reveal-ready.is-visible .ticket-stack-black { transition-delay:.05s; }
.final-cta.reveal-ready.is-visible .ticket-stack-lilac { transition-delay:.11s; }
.final-cta.reveal-ready.is-visible .ticket-stack-acid { transition-delay:.17s; }
.final-cta.reveal-ready.is-visible .ticket-stack-paper { transition-delay:.23s; }
.final-cta.reveal-ready.is-visible .viralviz-launch { transition-delay:.29s; }

@media (max-width:1050px) {
  .dark-continuum .final-cta { grid-template-columns:minmax(260px,.72fr) minmax(500px,1.28fr); padding-inline:28px; }
  .final-cta h2 { font-size:clamp(54px,6.3vw,76px); }
  .access-deck { width:58vw; height:520px; }
  .access-ticket,.final-cta .viralviz-launch { width:48vw; height:184px; }
  .ticket-sticker { width:96px; }
}

@media (max-width:760px) {
  .dark-continuum .final-cta {
    min-height:760px;
    grid-template-columns:1fr;
    align-content:start;
    gap:34px;
    padding:74px 16px 0;
  }
  .final-cta h2 {
    width:100%;
    max-width:520px;
    font-size:clamp(50px,14vw,72px);
    line-height:.88;
  }
  .access-deck { width:100%; height:430px; margin:0; justify-self:center; }
  .access-ticket,.final-cta .viralviz-launch { width:88vw; height:142px; border-radius:11px; }
  .ticket-stack-black { --ticket-left:14%; --ticket-top:1%; }
  .ticket-stack-lilac { --ticket-left:11%; --ticket-top:15%; }
  .ticket-stack-acid { --ticket-left:8%; --ticket-top:29%; }
  .ticket-stack-paper { --ticket-left:5%; --ticket-top:43%; }
  .final-cta .viralviz-launch { --ticket-left:2%; --ticket-top:57%; }
  .ticket-sticker { width:72px; }
  .ticket-perf { right:48px; }
  .ticket-copy { left:18px; right:50%; top:50%; bottom:auto; }
  .ticket-copy b { font-size:clamp(31px,8.8vw,43px); }
  .ticket-copy b>span { transform:translateX(-1%); }
  .ticket-copy b>em { transform:translateX(5%); }
  .ticket-mini-viralviz { right:calc(48px + 4%); width:32%; }
}

@media (prefers-reduced-motion:reduce) {
  .final-cta.reveal-ready:not(.is-visible) .access-ticket { opacity:1; }
  .access-deck:hover .access-ticket { --ticket-shift-x:0px; --ticket-shift-y:0px; }
}

/* Affiliate desk — editorial application flow, intentionally free of fake analytics. */
.profile-main-head[data-profile-head-state="affiliate"] .profile-moon { left:50%; }
.profile-affiliate-panel { min-height:calc(100% - 74px); padding:32px 0 48px; }
.affiliate-shell { --affiliate-acid:#d9ff57; --affiliate-lilac:#a69cff; width:100%; color:#efebe4; }
.affiliate-view[hidden] { display:none!important; }
.affiliate-view.is-active { animation:affiliateReveal .58s cubic-bezier(.16,1,.3,1) both; }
@keyframes affiliateReveal { from { opacity:0; transform:translateY(18px); clip-path:inset(0 0 9%); } }
.affiliate-view[data-affiliate-view="loading"] { min-height:520px; display:grid; place-content:center; justify-items:center; gap:18px; color:#777881; font:700 8px/1 var(--mono); letter-spacing:.14em; text-transform:uppercase; }
.affiliate-loader { display:flex; align-items:center; gap:7px; }
.affiliate-loader i { width:7px; aspect-ratio:1; border-radius:50%; background:var(--affiliate-lilac); animation:affiliateLoad 1s ease-in-out infinite alternate; }
.affiliate-loader i:nth-child(2) { animation-delay:.15s; }.affiliate-loader i:nth-child(3) { animation-delay:.3s; }
@keyframes affiliateLoad { to { translate:0 -9px; background:var(--affiliate-acid); } }
.affiliate-eyebrow,.affiliate-section-index,.affiliate-form-head span,.affiliate-admin-head span { color:var(--affiliate-lilac); font:750 8px/1 var(--mono); letter-spacing:.16em; text-transform:uppercase; }
.affiliate-hero { min-height:430px; display:grid; grid-template-columns:minmax(0,1fr) minmax(280px,.56fr); align-items:center; gap:clamp(34px,6vw,90px); padding:clamp(18px,3vh,36px) 0 50px; border-bottom:1px solid rgba(255,255,255,.15); }
.affiliate-hero-copy h2,.affiliate-form-head h2,.affiliate-admin-head h2 { margin:20px 0 0; color:#f1eee7; font-size:clamp(58px,7.2vw,108px); font-weight:560; line-height:.82; letter-spacing:-.078em; }
.affiliate-hero-copy h2 em,.affiliate-form-head h2 em,.affiliate-admin-head h2 em { color:var(--affiliate-lilac); font-style:normal; }
.affiliate-hero-copy>p { max-width:570px; margin:30px 0 0; color:#898a93; font-size:13px; line-height:1.65; }
.affiliate-primary { min-height:60px; display:inline-flex; align-items:center; justify-content:space-between; gap:42px; margin-top:34px; padding:7px 8px 7px 21px; border:1px solid rgba(217,255,87,.34); border-radius:14px; color:#111218; background:var(--affiliate-acid); box-shadow:0 18px 45px rgba(0,0,0,.22); font-size:11px; font-weight:820; cursor:pointer; transition:transform .3s cubic-bezier(.16,1,.3,1),box-shadow .3s ease; }
.affiliate-primary svg { width:46px; height:46px; padding:12px; border-radius:10px; fill:none; stroke:currentColor; stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; background:rgba(17,18,24,.1); transition:transform .35s cubic-bezier(.16,1,.3,1); }
.affiliate-primary:hover { transform:translateY(-2px); box-shadow:0 23px 52px rgba(0,0,0,.3); }.affiliate-primary:hover svg { transform:translateX(3px); }
.affiliate-primary:focus-visible,.affiliate-submit:focus-visible,.affiliate-form-head>button:focus-visible { outline:2px solid var(--affiliate-lilac); outline-offset:3px; }
.affiliate-primary:disabled,.affiliate-submit:disabled { opacity:.55; cursor:wait; transform:none; }
.affiliate-viralviz-card { position:relative; width:min(100%,340px); aspect-ratio:1; justify-self:end; display:grid; place-content:center; justify-items:center; overflow:hidden; border:1px solid rgba(166,156,255,.28); border-radius:50%; background:radial-gradient(circle,rgba(166,156,255,.14),rgba(13,14,19,.2) 58%,transparent 59%); }
.affiliate-viralviz-card::after { content:""; position:absolute; inset:8%; border:1px solid rgba(255,255,255,.1); border-radius:50%; }
.affiliate-viralviz-card strong { position:relative; z-index:2; font-size:clamp(76px,8vw,122px); font-weight:540; line-height:.8; letter-spacing:-.08em; }.affiliate-viralviz-card sup { color:var(--affiliate-acid); font-size:.25em; letter-spacing:0; }
.affiliate-viralviz-card>p { position:relative; z-index:2; max-width:18ch; margin:18px 0 0; color:#8b8c94; font-size:10px; line-height:1.45; text-align:center; }
.affiliate-viralviz-rings,.affiliate-viralviz-rings i { position:absolute; inset:0; border-radius:50%; }.affiliate-viralviz-rings i { inset:18%; border:1px dashed rgba(217,255,87,.22); animation:affiliateSpin 24s linear infinite; }.affiliate-viralviz-rings i:nth-child(2){inset:4% 29%;transform:rotate(48deg) scaleX(.62);border-color:rgba(166,156,255,.32);animation-direction:reverse}.affiliate-viralviz-rings i:nth-child(3){inset:30% 2%;transform:rotate(-32deg) scaleX(.5);border-style:solid}
@keyframes affiliateSpin { to { rotate:1turn; } }
.affiliate-editorial-grid { display:grid; grid-template-columns:1fr 1fr; border-bottom:1px solid rgba(255,255,255,.15); }
.affiliate-eligibility,.affiliate-code { padding:clamp(38px,5vw,66px) clamp(24px,4vw,56px); }.affiliate-eligibility{border-right:1px solid rgba(255,255,255,.15)}
.affiliate-editorial-grid h3 { margin:25px 0 36px; color:#efebe4; font-size:clamp(32px,3.6vw,54px); font-weight:560; line-height:.94; letter-spacing:-.055em; }
.affiliate-platforms { display:grid; grid-template-columns:1fr 1fr; border-top:1px solid rgba(255,255,255,.14); }.affiliate-platforms span { min-height:70px; display:flex; align-items:center; justify-content:space-between; gap:12px; padding:0 13px; border-bottom:1px solid rgba(255,255,255,.14); }.affiliate-platforms span:nth-child(odd){border-right:1px solid rgba(255,255,255,.14)}.affiliate-platforms b{font-size:11px}.affiliate-platforms small{color:var(--affiliate-acid);font:700 7px/1 var(--mono)}
.affiliate-age-note { margin:24px 0 0; color:#777881; font-size:9px; line-height:1.55; }
.affiliate-code ol { margin:25px 0 0; padding:0; list-style:none; counter-reset:partner-rule; }.affiliate-code li { position:relative; min-height:104px; display:grid; align-content:center; gap:8px; padding:18px 12px 18px 46px; border-top:1px solid rgba(255,255,255,.14); counter-increment:partner-rule; }.affiliate-code li:last-child{border-bottom:1px solid rgba(255,255,255,.14)}.affiliate-code li::before{content:counter(partner-rule,decimal-leading-zero);position:absolute;left:3px;top:27px;color:var(--affiliate-lilac);font:700 7px/1 var(--mono)}.affiliate-code b{font-size:12px}.affiliate-code li span{color:#777881;font-size:9px;line-height:1.55}

.affiliate-form-head,.affiliate-admin-head { display:grid; grid-template-columns:52px minmax(0,1fr) minmax(250px,340px); align-items:end; gap:24px; padding:18px 0 42px; border-bottom:1px solid rgba(255,255,255,.15); }
.affiliate-form-head>button { width:46px; aspect-ratio:1; align-self:start; display:grid; place-items:center; border:1px solid rgba(255,255,255,.18); border-radius:50%; color:#efebe4; background:transparent; cursor:pointer; transition:color .22s,background .22s,transform .3s cubic-bezier(.16,1,.3,1); }.affiliate-form-head>button:hover{color:#111218;background:var(--affiliate-acid);transform:translateX(-3px)}.affiliate-form-head>button svg{width:19px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.affiliate-form-head h2,.affiliate-admin-head h2 { font-size:clamp(46px,5.8vw,86px); }.affiliate-form-head>p,.affiliate-admin-head>p{margin:0;color:#81828a;font-size:11px;line-height:1.6}
.affiliate-form { width:min(880px,100%); display:grid; gap:0; margin:0 auto; padding:38px 0 10px; }
.affiliate-form-section { margin:0; padding:38px 0; border:0; border-bottom:1px solid rgba(255,255,255,.14); }.affiliate-form-section legend{width:100%;display:flex;align-items:center;gap:14px;padding:0;color:#efebe4;font-size:20px;font-weight:650}.affiliate-form-section legend span{color:var(--affiliate-lilac);font:700 7px/1 var(--mono)}
.affiliate-field-grid { display:grid; grid-template-columns:1fr 1fr; gap:22px; margin-top:27px; }.affiliate-field-grid .is-wide{grid-column:1/-1}.affiliate-field-grid label,.affiliate-social-row label,.affiliate-textarea{display:grid;gap:9px}.affiliate-field-grid label>span,.affiliate-social-row label>span,.affiliate-textarea>span,.affiliate-review-note>span{color:#7d7e87;font:700 7px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase}
.affiliate-form input,.affiliate-form select,.affiliate-form textarea,.affiliate-review-note textarea { width:100%; min-width:0; border:1px solid rgba(255,255,255,.17); border-radius:12px; outline:0; color:#efebe4; background:#14151b; font:600 12px/1.35 Manrope,sans-serif; transition:border-color .2s,background .2s,box-shadow .2s; }.affiliate-form input,.affiliate-form select{height:56px;padding:0 16px}.affiliate-form textarea,.affiliate-review-note textarea{min-height:122px;padding:15px 16px;resize:vertical}.affiliate-form input:focus,.affiliate-form select:focus,.affiliate-form textarea:focus,.affiliate-review-note textarea:focus{border-color:var(--affiliate-lilac);background:#181920;box-shadow:0 0 0 4px rgba(166,156,255,.09)}.affiliate-form [aria-invalid="true"]{border-color:#e5548e}.affiliate-form label small{min-height:12px;color:#ef6b9f;font-size:8px}
.affiliate-social-list{display:grid;gap:10px;margin-top:27px}.affiliate-social-row{display:grid;grid-template-columns:150px minmax(220px,1fr) 145px 42px;align-items:end;gap:10px;padding:16px;border:1px solid rgba(255,255,255,.12);border-radius:15px;background:rgba(255,255,255,.018);animation:affiliateRowIn .3s cubic-bezier(.16,1,.3,1) both}.affiliate-social-row.is-removing{opacity:0;transform:translateX(20px)}@keyframes affiliateRowIn{from{opacity:0;transform:translateY(-8px)}}.affiliate-social-row>button{width:42px;height:56px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.14);border-radius:11px;color:#777881;background:transparent;cursor:pointer}.affiliate-social-row>button:hover{color:#111218;background:#ef6b9f}.affiliate-social-row>button svg{width:16px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round}.affiliate-add-channel{margin-top:14px;padding:0;border:0;color:#a4a5ad;background:none;font-size:10px;font-weight:700;cursor:pointer}.affiliate-add-channel span{width:26px;aspect-ratio:1;display:inline-grid;place-items:center;margin-right:8px;border:1px solid rgba(217,255,87,.38);border-radius:50%;color:var(--affiliate-acid)}.affiliate-add-channel:hover{color:#efebe4}
.affiliate-textarea{margin-top:27px}.affiliate-consents{display:grid;gap:12px;padding:30px 0}.affiliate-consents label{display:flex;align-items:center;gap:12px;width:max-content;max-width:100%;cursor:pointer}.affiliate-consents input{position:absolute;opacity:0;pointer-events:none}.affiliate-consents label>span{width:24px;aspect-ratio:1;display:grid;place-items:center;border:1px solid rgba(255,255,255,.24);border-radius:7px;background:#14151b}.affiliate-consents label>span i{width:10px;height:6px;border-left:2px solid #111218;border-bottom:2px solid #111218;rotate:-45deg;translate:0 -1px;opacity:0}.affiliate-consents input:checked+span{border-color:var(--affiliate-acid);background:var(--affiliate-acid)}.affiliate-consents input:checked+span i{opacity:1}.affiliate-consents input:focus-visible+span{outline:2px solid var(--affiliate-lilac);outline-offset:3px}.affiliate-consents b{font-size:10px;font-weight:600}.affiliate-consents a{color:var(--affiliate-lilac);text-decoration:underline;text-underline-offset:3px}
.affiliate-form-error{padding:14px 16px;border-left:3px solid #e5548e;color:#f1d8e1;background:rgba(229,84,142,.1);font-size:10px;line-height:1.45}.affiliate-submit{min-height:74px;display:flex;align-items:center;justify-content:space-between;margin-top:20px;padding:8px 9px 8px 24px;border:0;border-radius:16px;color:#111218;background:var(--affiliate-acid);cursor:pointer}.affiliate-submit>span{display:grid;gap:6px;text-align:left}.affiliate-submit small{font:750 7px/1 var(--mono);letter-spacing:.12em}.affiliate-submit b{font-size:15px}.affiliate-submit>i{width:56px;aspect-ratio:1;display:grid;place-items:center;border-radius:12px;background:#111218;color:#efebe4}.affiliate-submit svg{width:22px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.affiliate-submit:hover>i svg{transform:translateX(3px)}

.affiliate-view[data-affiliate-view="status"] { min-height:calc(100vh - 180px); display:grid; place-items:center; }.affiliate-status-card{width:min(720px,100%);display:grid;justify-items:center;padding:58px clamp(24px,7vw,76px);border:1px solid rgba(255,255,255,.15);text-align:center;background:radial-gradient(circle at 50% 25%,rgba(166,156,255,.13),transparent 36%),#111218}.affiliate-status-visual{position:relative;width:116px;aspect-ratio:1;margin-bottom:35px;border:1px solid rgba(166,156,255,.28);border-radius:50%}.affiliate-status-visual::before,.affiliate-status-visual::after{content:"";position:absolute;inset:16%;border:1px dashed rgba(255,255,255,.2);border-radius:50%;animation:affiliateSpin 16s linear infinite}.affiliate-status-visual::after{inset:36%;border-style:solid;background:var(--affiliate-lilac);box-shadow:0 0 30px rgba(166,156,255,.25)}.affiliate-status-visual i{position:absolute;width:7px;aspect-ratio:1;border-radius:50%;background:var(--affiliate-acid)}.affiliate-status-visual i:nth-child(1){left:7%;top:48%}.affiliate-status-visual i:nth-child(2){right:18%;top:9%}.affiliate-status-visual i:nth-child(3){right:6%;bottom:22%;width:4px}.affiliate-status-kicker{color:var(--affiliate-lilac);font:750 8px/1 var(--mono);letter-spacing:.14em}.affiliate-status-card h2{max-width:13ch;margin:24px 0 0;color:#efebe4;font-size:clamp(42px,5vw,72px);font-weight:560;line-height:.9;letter-spacing:-.065em}.affiliate-status-card>p{max-width:590px;margin:26px 0 0;color:#888992;font-size:12px;line-height:1.7}.affiliate-status-card blockquote{width:100%;margin:26px 0 0;padding:17px 20px;border-left:2px solid var(--affiliate-lilac);color:#c5c2bc;background:rgba(166,156,255,.08);font-size:10px;line-height:1.6;text-align:left}.affiliate-status-card[data-status="approved"] .affiliate-status-visual::after{background:var(--affiliate-acid)}.affiliate-status-card[data-status="rejected"] .affiliate-status-visual::after{background:#e5548e}.affiliate-status-card .affiliate-primary{margin-top:30px}

.affiliate-admin-head{grid-template-columns:minmax(0,1fr) minmax(250px,360px);padding-top:14px}.affiliate-admin-filters{display:flex;gap:5px;padding:22px 0;border-bottom:1px solid rgba(255,255,255,.14)}.affiliate-admin-filters button{min-height:42px;padding:0 15px;border:1px solid transparent;border-radius:10px;color:#777881;background:transparent;font-size:9px;font-weight:750;cursor:pointer}.affiliate-admin-filters button b{min-width:22px;display:inline-grid;place-items:center;margin-left:7px;padding:4px;border-radius:6px;color:#a9aab1;background:rgba(255,255,255,.08);font:700 7px/1 var(--mono)}.affiliate-admin-filters button:hover{color:#efebe4;background:rgba(255,255,255,.04)}.affiliate-admin-filters button.is-active{border-color:rgba(166,156,255,.24);color:#efebe4;background:rgba(166,156,255,.1)}
.affiliate-admin-list{display:grid;gap:9px;padding:25px 0}.affiliate-review-card{border:1px solid rgba(255,255,255,.14);border-radius:15px;overflow:hidden;background:#111218}.affiliate-review-summary{width:100%;min-height:88px;display:grid;grid-template-columns:32px minmax(190px,1fr) 130px 90px 24px;align-items:center;gap:18px;padding:14px 20px;border:0;color:#efebe4;background:transparent;text-align:left;cursor:pointer}.affiliate-review-summary:hover{background:rgba(255,255,255,.025)}.affiliate-review-summary>span:nth-child(2){display:grid;gap:6px}.affiliate-review-summary strong{font-size:13px}.affiliate-review-summary small{color:#71727b;font-size:8px}.affiliate-review-index{color:var(--affiliate-lilac);font:700 7px/1 var(--mono)}.affiliate-review-reach{display:grid;gap:5px}.affiliate-review-reach b{font-size:15px}.affiliate-review-state{width:max-content;padding:8px 10px;border-radius:7px;color:var(--affiliate-acid);background:rgba(217,255,87,.08);font:700 7px/1 var(--mono);text-transform:uppercase}.affiliate-review-card[data-status="approved"] .affiliate-review-state{color:var(--affiliate-lilac);background:rgba(166,156,255,.1)}.affiliate-review-card[data-status="rejected"] .affiliate-review-state{color:#ef6b9f;background:rgba(229,84,142,.09)}.affiliate-review-summary>svg{width:18px;fill:none;stroke:currentColor;stroke-width:1.5;transition:rotate .25s}.affiliate-review-summary[aria-expanded="true"]>svg{rotate:180deg}
.profile-password-step-up small{color:var(--affiliate-lilac);font:750 7px/1 var(--mono);letter-spacing:.15em}.profile-password-google{min-height:44px;display:grid;place-items:center;overflow:hidden}.profile-password-google>div{max-width:100%}
.affiliate-review-detail{padding:0 24px 24px;border-top:1px solid rgba(255,255,255,.12);animation:affiliateReveal .35s cubic-bezier(.16,1,.3,1)}.affiliate-review-detail[hidden]{display:none}.affiliate-review-identity{display:grid;grid-template-columns:1fr 1fr .6fr;gap:18px;margin:0;padding:22px 0;border-bottom:1px solid rgba(255,255,255,.12)}.affiliate-review-identity div{display:grid;gap:8px}.affiliate-review-identity dt,.affiliate-review-copy span{color:#6f7079;font:700 7px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase}.affiliate-review-identity dd{margin:0;color:#b9b6b0;font-size:10px;overflow-wrap:anywhere}.affiliate-review-links{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:8px;padding:18px 0}.affiliate-review-links a{display:grid;grid-template-columns:1fr auto;gap:8px;padding:14px;border:1px solid rgba(255,255,255,.12);border-radius:10px;color:#efebe4}.affiliate-review-links a:hover{border-color:rgba(217,255,87,.38);background:rgba(217,255,87,.025)}.affiliate-review-links span{font-size:10px;font-weight:750}.affiliate-review-links b{color:var(--affiliate-acid);font:700 8px/1 var(--mono)}.affiliate-review-links small{grid-column:1/-1;color:#6f7079;font-size:7px}.affiliate-review-copy{display:grid;grid-template-columns:1fr 1fr;gap:8px}.affiliate-review-copy>div{padding:18px;border:1px solid rgba(255,255,255,.12);border-radius:11px}.affiliate-review-copy p{margin:12px 0 0;color:#aaa7a1;font-size:10px;line-height:1.6}.affiliate-review-note{display:grid;gap:10px;margin-top:18px}.affiliate-review-note span small{margin-left:6px;color:#55565e}.affiliate-review-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:13px}.affiliate-review-actions button{min-height:48px;padding:0 18px;border:1px solid rgba(255,255,255,.16);border-radius:10px;color:#aaa7a1;background:transparent;font-size:9px;font-weight:800;cursor:pointer}.affiliate-review-actions button:last-child{display:flex;align-items:center;gap:20px;border-color:var(--affiliate-acid);color:#111218;background:var(--affiliate-acid)}.affiliate-review-actions svg{width:18px;fill:none;stroke:currentColor;stroke-width:1.5}.affiliate-review-actions button:hover{border-color:#ef6b9f;color:#efebe4;background:#8a244c}.affiliate-review-actions button:last-child:hover{border-color:#cdec54;color:#111218;background:#cdec54}.affiliate-review-actions button:disabled{opacity:.5;cursor:wait}.affiliate-review-complete{margin:18px 0 0;color:#777881;font-size:9px}.affiliate-admin-empty{min-height:330px;display:grid;place-content:center;justify-items:center;text-align:center;color:#777881}.affiliate-admin-empty i{width:44px;aspect-ratio:1;margin-bottom:20px;border:1px solid rgba(166,156,255,.32);border-radius:50%;box-shadow:0 0 0 12px rgba(166,156,255,.035)}.affiliate-admin-empty strong{color:#d4d1ca;font-size:17px}.affiliate-admin-empty p{font-size:9px}

@media(max-width:900px){.affiliate-hero{grid-template-columns:1fr minmax(220px,.42fr)}.affiliate-viralviz-card{width:250px}.affiliate-social-row{grid-template-columns:130px 1fr 125px 42px}.affiliate-form-head{grid-template-columns:46px 1fr}.affiliate-form-head>p{grid-column:2}.affiliate-review-summary{grid-template-columns:26px 1fr 110px 24px}.affiliate-review-state{display:none}.affiliate-review-copy{grid-template-columns:1fr}}
@media(max-width:760px){.profile-nav{grid-template-columns:repeat(3,1fr)!important}.profile-nav button{font-size:8px}.profile-affiliate-panel{padding-top:22px}.affiliate-hero{min-height:0;grid-template-columns:1fr;padding-top:16px}.affiliate-hero-copy h2{font-size:clamp(48px,15vw,72px)}.affiliate-viralviz-card{width:210px;justify-self:start}.affiliate-editorial-grid{grid-template-columns:1fr}.affiliate-eligibility{border-right:0;border-bottom:1px solid rgba(255,255,255,.14)}.affiliate-closing{grid-template-columns:1fr;align-items:start;padding:38px 24px}.affiliate-primary-light{justify-self:start}.affiliate-form-head,.affiliate-admin-head{grid-template-columns:42px 1fr}.affiliate-form-head h2,.affiliate-admin-head h2{font-size:45px}.affiliate-form-head>p,.affiliate-admin-head>p{grid-column:1/-1}.affiliate-field-grid{grid-template-columns:1fr}.affiliate-field-grid .is-wide{grid-column:auto}.affiliate-social-row{grid-template-columns:1fr 80px 38px}.affiliate-social-row label:first-child{grid-column:1}.affiliate-social-row .is-url{grid-column:1/-1;grid-row:2}.affiliate-social-row>button{grid-column:3;grid-row:1;width:38px}.affiliate-review-summary{grid-template-columns:24px 1fr 22px;gap:10px;padding-inline:14px}.affiliate-review-reach{display:none}.affiliate-review-identity{grid-template-columns:1fr}.affiliate-review-copy{grid-template-columns:1fr}.affiliate-review-actions{flex-direction:column-reverse}.affiliate-review-actions button{width:100%;justify-content:center}.affiliate-admin-filters{overflow-x:auto}.affiliate-status-card{padding-block:45px}.affiliate-view[data-affiliate-view="status"]{min-height:570px}}
@media(max-width:760px){.profile-nav button[data-profile-tab="affiliate"] span{font-size:0}.profile-nav button[data-profile-tab="affiliate"] span::after{content:"Партнёрство";font-size:8px}html[lang="en"] .profile-nav button[data-profile-tab="affiliate"] span::after{content:"Partnership"}}
@media(max-width:430px){.profile-nav button{grid-template-columns:15px auto!important;gap:5px!important;padding-inline:3px!important}.profile-nav svg{width:15px}.affiliate-platforms{grid-template-columns:1fr}.affiliate-platforms span:nth-child(odd){border-right:0}.affiliate-social-row{padding:12px}.affiliate-review-links{grid-template-columns:1fr}}
@media(max-width:760px){.profile-password-step-up{grid-template-columns:1fr}.profile-password-google{justify-items:start}}
@media(prefers-reduced-motion:reduce){.affiliate-view.is-active,.affiliate-social-row,.affiliate-review-detail,.affiliate-loader i,.affiliate-viralviz-rings i,.affiliate-status-visual::before,.affiliate-status-visual::after{animation:none!important}.affiliate-primary,.affiliate-form-head>button{transition:none!important}}


/* Header access — Cyrillic graffiti tag with a miniature kinetic path. */
.site-header .header-cta {
  position:relative;
  isolation:isolate;
  width:154px;
  min-width:154px;
  height:54px;
  min-height:54px;
  display:grid;
  grid-template-columns:1fr 34px;
  align-items:center;
  gap:7px;
  overflow:visible;
  padding:0 10px 2px 17px;
  border:0;
  border-radius:0;
  color:#f4f1ea;
  background:none;
  box-shadow:none;
  backdrop-filter:none;
  translate:none;
  filter:none;
  transition:transform .22s cubic-bezier(.16,1,.3,1),filter .22s ease;
}
.site-header .header-cta::before {
  content:"";
  position:absolute;
  z-index:-1;
  inset:5px 3px 4px 4px;
  width:auto;
  height:auto;
  opacity:1;
  border:0;
  background:
    radial-gradient(circle at 82% 25%,rgba(166,156,255,.19),transparent 24%),
    linear-gradient(118deg,rgba(23,21,31,.98),rgba(10,11,16,.96));
  clip-path:polygon(3% 18%,17% 10%,51% 13%,67% 5%,91% 14%,98% 38%,95% 83%,76% 91%,53% 85%,31% 94%,7% 83%,0 55%);
  transform:rotate(-1.3deg);
  box-shadow:
    0 0 0 1px rgba(166,156,255,.26),
    5px 5px 0 -3px rgba(166,156,255,.24);
  transition:clip-path .48s cubic-bezier(.16,1,.3,1),transform .48s cubic-bezier(.16,1,.3,1),box-shadow .3s ease,background .3s ease;
}
.site-header .header-cta::after {
  content:"";
  position:absolute;
  z-index:0;
  left:15px;
  bottom:8px;
  width:81px;
  height:6px;
  opacity:.68;
  border:0;
  background:
    linear-gradient(100deg,transparent 0 4%,var(--lilac) 5% 78%,transparent 80%),
    linear-gradient(84deg,transparent 0 16%,rgba(217,255,87,.75) 17% 21%,transparent 22%);
  clip-path:polygon(0 65%,8% 38%,20% 59%,32% 23%,46% 53%,61% 31%,73% 62%,88% 27%,100% 51%,100% 80%,0 92%);
  transform:scaleX(.52) rotate(-2deg);
  transform-origin:left center;
  transition:transform .5s cubic-bezier(.16,1,.3,1),opacity .25s ease;
}
.site-header .header-cta .header-cta-label {
  position:relative;
  z-index:2;
  display:block;
  margin:0;
  color:#f4f1ea;
  font-family:"Rubik Spray Paint",system-ui,sans-serif;
  font-size:22px;
  font-weight:400;
  line-height:1;
  letter-spacing:.015em;
  text-transform:none;
  text-shadow:1px 1px 0 rgba(166,156,255,.32);
  transform:rotate(-1.5deg);
  transition:color .28s ease,transform .48s cubic-bezier(.16,1,.3,1),text-shadow .28s ease;
}
.site-header .header-cta .header-cta-label::before,
.site-header .header-cta .header-cta-label::after {
  content:"";
  position:absolute;
  width:2px;
  height:2px;
  border-radius:50%;
  pointer-events:none;
}
.site-header .header-cta .header-cta-label::before {
  left:-7px;
  top:3px;
  background:var(--lilac);
  box-shadow:4px -4px 0 rgba(166,156,255,.42),-2px 9px 0 rgba(244,241,234,.24),8px 20px 0 rgba(166,156,255,.3);
}
.site-header .header-cta .header-cta-label::after {
  right:-3px;
  bottom:-7px;
  background:var(--acid);
  box-shadow:5px -2px 0 rgba(217,255,87,.34);
}
.site-header .header-cta .header-cta-marks {
  position:relative;
  z-index:2;
  width:32px;
  height:32px;
  display:block;
  margin:0;
  color:inherit;
  transform:rotate(8deg);
  transition:transform .55s cubic-bezier(.16,1,.3,1);
}
.site-header .header-cta .header-cta-marks i {
  position:absolute;
  display:block;
  background:transparent;
  transform-origin:center;
}
.site-header .header-cta .header-cta-marks i:first-child {
  inset:3px 2px;
  width:auto;
  height:auto;
  border:1px solid rgba(244,241,234,.52);
  border-radius:50%;
  rotate:-22deg;
  transform:scaleY(.52);
  transition:transform .62s cubic-bezier(.16,1,.3,1),border-color .25s ease;
}
.site-header .header-cta .header-cta-marks i:nth-child(2) {
  inset:7px 3px;
  width:auto;
  height:auto;
  border:1px solid rgba(166,156,255,.68);
  border-radius:50%;
  rotate:38deg;
  transform:scaleY(.72);
  transition:transform .7s cubic-bezier(.16,1,.3,1),border-color .25s ease;
}
.site-header .header-cta .header-cta-marks i:last-child {
  left:13px;
  top:0;
  width:5px;
  height:5px;
  border:0;
  border-radius:50%;
  background:var(--acid);
  box-shadow:0 0 0 1px rgba(9,10,15,.9);
  transition:transform .68s cubic-bezier(.16,1,.3,1),background .25s ease;
}
.site-header .header-cta:hover,
.site-header .header-cta:focus-visible {
  border:0;
  color:#f4f1ea;
  background:none;
  box-shadow:none;
  transform:translateY(-1px) rotate(.25deg);
  filter:drop-shadow(0 7px 10px rgba(0,0,0,.24));
}
.site-header .header-cta:hover::before,
.site-header .header-cta:focus-visible::before {
  left:4px;
  opacity:1;
  background:
    radial-gradient(circle at 79% 28%,rgba(166,156,255,.25),transparent 25%),
    linear-gradient(118deg,rgba(27,24,37,.98),rgba(11,12,17,.97));
  clip-path:polygon(1% 25%,19% 7%,45% 13%,65% 2%,93% 10%,100% 43%,94% 89%,72% 85%,55% 94%,28% 87%,5% 96%,2% 59%);
  transform:rotate(.35deg) scale(1.025,.98);
  box-shadow:0 0 0 1px rgba(166,156,255,.38),6px 6px 0 -3px rgba(166,156,255,.28);
}
.site-header .header-cta:hover::after,
.site-header .header-cta:focus-visible::after {
  left:15px;
  opacity:.82;
  transform:scaleX(1) rotate(-1deg);
}
.site-header .header-cta:hover .header-cta-label,
.site-header .header-cta:focus-visible .header-cta-label {
  color:#ded8ff;
  text-shadow:1px 1px 0 rgba(217,255,87,.18);
  transform:translate(2px,-1px) rotate(-.4deg);
}
.site-header .header-cta:hover .header-cta-marks,
.site-header .header-cta:focus-visible .header-cta-marks { transform:rotate(22deg) scale(1.06); }
.site-header .header-cta:hover .header-cta-marks i:first-child,
.site-header .header-cta:focus-visible .header-cta-marks i:first-child { transform:rotate(71deg) scaleY(.68); border-color:rgba(244,241,234,.7); }
.site-header .header-cta:hover .header-cta-marks i:nth-child(2),
.site-header .header-cta:focus-visible .header-cta-marks i:nth-child(2) { transform:rotate(-96deg) scaleY(.48); border-color:rgba(166,156,255,.86); }
.site-header .header-cta:hover .header-cta-marks i:last-child,
.site-header .header-cta:focus-visible .header-cta-marks i:last-child { transform:translate(11px,13px) scale(.78); }
.site-header .header-cta:focus-visible { outline:2px solid rgba(166,156,255,.7); outline-offset:7px; }
.site-header .header-cta:active { transform:translateY(1px) scale(.975) rotate(-.4deg); }
.site-header .header-cta.is-authenticated::after { background:var(--acid); opacity:.72; }

@media (max-width:600px) {
  .site-header .header-cta {
    width:126px;
    min-width:126px;
    height:47px;
    min-height:47px;
    grid-template-columns:1fr 28px;
    gap:3px;
    padding:0 8px 2px 13px;
  }
  .site-header .header-cta .header-cta-label { display:block; font-size:18px; }
  .site-header .header-cta .header-cta-marks { width:27px; height:27px; display:block; }
  .site-header .header-cta::after { left:12px; width:67px; bottom:7px; }
  .site-header .header-cta:hover::after,.site-header .header-cta:focus-visible::after { left:12px; }
}

@media (prefers-reduced-motion:reduce) {
  .site-header .header-cta,
  .site-header .header-cta::before,
  .site-header .header-cta::after,
  .site-header .header-cta * { transition:none!important; }
}

/* Header access v2 — hand-drawn vector tag, no sticker plate. */
.site-header .header-cta {
  position:relative;
  isolation:isolate;
  width:174px;
  min-width:174px;
  height:62px;
  min-height:62px;
  display:grid;
  grid-template-columns:1fr 38px;
  align-items:center;
  gap:4px;
  overflow:visible;
  padding:0 17px 4px 24px;
  border:0;
  border-radius:0;
  color:#f4f1ea;
  background:radial-gradient(ellipse at 72% 53%,rgba(166,156,255,.065),transparent 56%);
  box-shadow:none;
  backdrop-filter:none;
  translate:none;
  filter:none;
  transition:transform .28s cubic-bezier(.16,1,.3,1),filter .28s ease;
}
.site-header .header-cta::before,
.site-header .header-cta::after,
.site-header .header-cta .header-cta-label::before,
.site-header .header-cta .header-cta-label::after { content:none; }
.header-cta-ink {
  position:absolute;
  z-index:0;
  inset:0;
  width:100%;
  height:100%;
  overflow:visible;
  pointer-events:none;
  transform:rotate(-1.2deg);
  transition:transform .68s cubic-bezier(.16,1,.3,1);
}
.header-cta-ink path {
  fill:none;
  vector-effect:non-scaling-stroke;
  stroke-linecap:round;
  stroke-linejoin:round;
  filter:url(#headerTagRough);
}
.header-ink-ghost {
  stroke:rgba(244,241,234,.18);
  stroke-width:1;
  stroke-dasharray:.018 .026;
}
.header-ink-line {
  stroke:rgba(166,156,255,.72);
  stroke-width:1.15;
  stroke-dasharray:1;
  stroke-dashoffset:.67;
  opacity:.74;
  transition:stroke-dashoffset .88s cubic-bezier(.16,1,.3,1),opacity .28s ease,stroke .28s ease;
}
.header-ink-strike {
  stroke:rgba(244,241,234,.56);
  stroke-width:1.35;
  stroke-dasharray:1;
  stroke-dashoffset:.4;
  transition:stroke-dashoffset .68s cubic-bezier(.16,1,.3,1),stroke .28s ease;
}
.header-ink-acid {
  stroke:var(--acid);
  stroke-width:1.8;
  stroke-dasharray:1;
  stroke-dashoffset:.72;
  opacity:.7;
  transition:stroke-dashoffset .72s .08s cubic-bezier(.16,1,.3,1),opacity .28s ease;
}
.site-header .header-cta .header-cta-label {
  position:relative;
  z-index:2;
  display:block;
  margin:0;
  color:#f1eee8;
  font-family:"Rubik Spray Paint",system-ui,sans-serif;
  font-size:24px;
  font-weight:400;
  line-height:1;
  letter-spacing:.012em;
  text-transform:none;
  text-shadow:1px 1px 0 rgba(166,156,255,.28);
  transform:translateY(-1px) rotate(-1.5deg);
  transition:color .32s ease,transform .58s cubic-bezier(.16,1,.3,1),text-shadow .32s ease;
}
.site-header .header-cta .header-cta-marks {
  position:relative;
  z-index:2;
  width:36px;
  height:36px;
  display:block;
  margin:0;
  color:inherit;
  transform:rotate(7deg);
  transition:transform .72s cubic-bezier(.16,1,.3,1);
}
.site-header .header-cta .header-cta-marks::before {
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:12px;
  height:12px;
  border-radius:50%;
  background:radial-gradient(circle at 35% 30%,#292a33,#090a0f 68%);
  box-shadow:inset -2px -2px 4px rgba(0,0,0,.75),0 0 0 1px rgba(244,241,234,.12);
  transform:translate(-50%,-50%);
}
.site-header .header-cta .header-cta-marks::after {
  content:"";
  position:absolute;
  left:4px;
  right:4px;
  top:50%;
  height:1px;
  opacity:.3;
  background:linear-gradient(90deg,transparent,var(--lilac),transparent);
  transform:rotate(-28deg);
}
.site-header .header-cta .header-cta-marks i {
  position:absolute;
  display:block;
  background:transparent;
  transform-origin:center;
}
.site-header .header-cta .header-cta-marks i:first-child {
  inset:3px 1px;
  width:auto;
  height:auto;
  border:1px solid rgba(244,241,234,.48);
  border-radius:50%;
  rotate:-18deg;
  transform:scaleY(.48);
  transition:transform .78s cubic-bezier(.16,1,.3,1),border-color .28s ease;
}
.site-header .header-cta .header-cta-marks i:nth-child(2) {
  inset:6px 2px;
  width:auto;
  height:auto;
  border:1px solid rgba(166,156,255,.72);
  border-radius:50%;
  rotate:39deg;
  transform:scaleY(.68);
  transition:transform .86s cubic-bezier(.16,1,.3,1),border-color .28s ease;
}
.site-header .header-cta .header-cta-marks i:last-child {
  left:15px;
  top:0;
  width:5px;
  height:5px;
  border:0;
  border-radius:50%;
  background:var(--acid);
  box-shadow:0 0 0 1px #090a0f;
  transition:transform .82s cubic-bezier(.16,1,.3,1),background .28s ease;
}
.site-header .header-cta:hover,
.site-header .header-cta:focus-visible {
  border:0;
  color:#f4f1ea;
  background:radial-gradient(ellipse at 72% 53%,rgba(166,156,255,.095),transparent 58%);
  box-shadow:none;
  transform:translateY(-1px) rotate(.2deg);
  filter:drop-shadow(0 9px 12px rgba(0,0,0,.22));
}
.site-header .header-cta:hover .header-cta-ink,
.site-header .header-cta:focus-visible .header-cta-ink { transform:rotate(.25deg) scale(1.025,.98); }
.site-header .header-cta:hover .header-ink-line,
.site-header .header-cta:focus-visible .header-ink-line { stroke-dashoffset:0; opacity:.94; stroke:rgba(166,156,255,.9); }
.site-header .header-cta:hover .header-ink-strike,
.site-header .header-cta:focus-visible .header-ink-strike { stroke-dashoffset:0; stroke:rgba(244,241,234,.76); }
.site-header .header-cta:hover .header-ink-acid,
.site-header .header-cta:focus-visible .header-ink-acid { stroke-dashoffset:0; opacity:.9; }
.site-header .header-cta:hover .header-cta-label,
.site-header .header-cta:focus-visible .header-cta-label {
  color:#ddd7ff;
  text-shadow:1px 1px 0 rgba(217,255,87,.15);
  transform:translate(2px,-2px) rotate(-.35deg);
}
.site-header .header-cta:hover .header-cta-marks,
.site-header .header-cta:focus-visible .header-cta-marks { transform:rotate(21deg) scale(1.08); }
.site-header .header-cta:hover .header-cta-marks i:first-child,
.site-header .header-cta:focus-visible .header-cta-marks i:first-child { transform:rotate(82deg) scaleY(.68); border-color:rgba(244,241,234,.7); }
.site-header .header-cta:hover .header-cta-marks i:nth-child(2),
.site-header .header-cta:focus-visible .header-cta-marks i:nth-child(2) { transform:rotate(-104deg) scaleY(.46); border-color:rgba(166,156,255,.9); }
.site-header .header-cta:hover .header-cta-marks i:last-child,
.site-header .header-cta:focus-visible .header-cta-marks i:last-child { transform:translate(12px,15px) scale(.8); }
.site-header .header-cta:focus-visible { outline:2px solid rgba(166,156,255,.66); outline-offset:6px; }
.site-header .header-cta:active { transform:translateY(1px) scale(.978) rotate(-.3deg); }

@media (max-width:600px) {
  .site-header .header-cta {
    width:139px;
    min-width:139px;
    height:50px;
    min-height:50px;
    grid-template-columns:1fr 30px;
    gap:2px;
    padding:0 13px 3px 19px;
  }
  .site-header .header-cta .header-cta-label { display:block; font-size:19px; }
  .site-header .header-cta .header-cta-marks { width:29px; height:29px; display:block; }
}

@media (prefers-reduced-motion:reduce) {
  .site-header .header-ink-line,
  .site-header .header-ink-strike,
  .site-header .header-ink-acid { stroke-dashoffset:0; }
}

/* Header access — adapted from the compact edge actions on Lando Norris SOTY 2025. */
.site-header .header-cta {
  position:relative;
  isolation:isolate;
  width:auto;
  min-width:112px;
  height:44px;
  min-height:44px;
  display:inline-flex;
  align-items:center;
  justify-content:flex-end;
  gap:13px;
  overflow:visible;
  padding:0 0 7px;
  border:0;
  border-radius:0;
  color:var(--paper);
  background:transparent;
  box-shadow:none;
  filter:none;
  transform:none;
  clip-path:none;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
  transition:color .22s ease,transform .22s cubic-bezier(.2,.75,.25,1);
}
.site-header .header-cta::before {
  content:"";
  position:absolute;
  z-index:0;
  inset:auto 0 0 0;
  width:auto;
  height:1px;
  border:0;
  border-radius:0;
  opacity:1;
  background:rgba(244,241,234,.34);
  box-shadow:none;
  filter:none;
  clip-path:none;
  transform:scaleX(.3);
  transform-origin:right center;
  transition:transform .42s cubic-bezier(.16,1,.3,1),background-color .22s ease;
}
.site-header .header-cta::after {
  content:"";
  position:absolute;
  z-index:1;
  inset:auto 34px -1.5px auto;
  width:4px;
  height:4px;
  border:0;
  border-radius:50%;
  opacity:.64;
  background:var(--lilac);
  box-shadow:none;
  filter:none;
  clip-path:none;
  transform:scale(.7);
  transition:transform .42s cubic-bezier(.16,1,.3,1),opacity .22s ease;
}
.site-header .header-cta .header-cta-label {
  position:relative;
  z-index:2;
  display:block;
  min-width:0;
  color:inherit;
  font-family:var(--font);
  font-size:11px;
  font-weight:700;
  font-style:normal;
  line-height:1;
  letter-spacing:.02em;
  text-transform:none;
  white-space:nowrap;
  text-shadow:none;
  transform:none;
  transition:transform .3s cubic-bezier(.16,1,.3,1),color .22s ease;
}
.site-header .header-cta .header-cta-label::before,
.site-header .header-cta .header-cta-label::after { content:none; }
.header-cta-reference-mark {
  position:relative;
  z-index:2;
  flex:0 0 30px;
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  border:0;
  border-radius:50%;
  color:var(--paper);
  background:rgba(244,241,234,.025);
  box-shadow:none;
  transform:none;
  transition:transform .42s cubic-bezier(.16,1,.3,1),background-color .22s ease;
}
.header-cta-reference-mark::before {
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  background:conic-gradient(from 24deg,rgba(244,241,234,.5) 0 70%,transparent 70% 81%,rgba(166,156,255,.68) 81% 100%);
  -webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 1px),#000 0);
  mask:radial-gradient(farthest-side,transparent calc(100% - 1px),#000 0);
  transform:rotate(0);
  transition:transform .52s cubic-bezier(.16,1,.3,1),opacity .22s ease;
}
.header-cta-reference-mark svg {
  width:14px;
  height:14px;
  overflow:visible;
  fill:none;
  stroke:currentColor;
  stroke-width:1.35;
  stroke-linecap:round;
  stroke-linejoin:round;
  transform:translate(0,0);
  transition:transform .36s cubic-bezier(.16,1,.3,1),stroke .22s ease;
}
.site-header .header-cta:hover,
.site-header .header-cta:focus-visible {
  color:var(--paper);
  background:transparent;
  box-shadow:none;
  filter:none;
  transform:none;
}
.site-header .header-cta:hover::before,
.site-header .header-cta:focus-visible::before {
  background:rgba(166,156,255,.68);
  transform:scaleX(1);
}
.site-header .header-cta:hover::after,
.site-header .header-cta:focus-visible::after {
  opacity:.9;
  transform:translateX(-13px) scale(.82);
}
.site-header .header-cta:hover .header-cta-label,
.site-header .header-cta:focus-visible .header-cta-label {
  color:var(--paper);
  text-shadow:none;
  transform:translateX(-2px);
}
.site-header .header-cta:hover .header-cta-reference-mark,
.site-header .header-cta:focus-visible .header-cta-reference-mark {
  color:var(--paper);
  background:rgba(166,156,255,.07);
  box-shadow:none;
  transform:rotate(7deg);
}
.site-header .header-cta:hover .header-cta-reference-mark::before,
.site-header .header-cta:focus-visible .header-cta-reference-mark::before {
  opacity:.95;
  transform:rotate(125deg);
}
.site-header .header-cta:hover .header-cta-reference-mark svg,
.site-header .header-cta:focus-visible .header-cta-reference-mark svg { transform:translate(1.5px,-1.5px); }
.site-header .header-cta:active { transform:translateY(1px); }
.site-header .header-cta:focus-visible {
  outline:2px solid var(--lilac);
  outline-offset:7px;
  border-radius:2px;
}
.site-header .header-cta[aria-pressed="true"]::after { background:var(--acid); }

@media (max-width:600px) {
  .site-header .header-cta {
    width:auto;
    min-width:96px;
    height:44px;
    min-height:44px;
    display:inline-flex;
    grid-template-columns:none;
    gap:10px;
    padding:0 0 7px;
  }
  .site-header .header-cta .header-cta-label { display:block; font-size:10px; }
  .header-cta-reference-mark { flex-basis:28px; width:28px; height:28px; }
  .site-header .header-cta::after { right:32px; }
}

@media (prefers-reduced-motion:reduce) {
  .site-header .header-cta,
  .site-header .header-cta::before,
  .site-header .header-cta::after,
  .site-header .header-cta-label,
  .header-cta-reference-mark,
  .header-cta-reference-mark::before,
  .header-cta-reference-mark svg { transition-duration:.01ms; }
}

/* Final header access — a plain framed control. */
.site-header .header-cta {
  position:relative;
  width:172px;
  min-width:172px;
  height:54px;
  min-height:54px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  padding:0 18px;
  border:0;
  border-radius:0;
  color:#090a0f;
  background:#c9ef52;
  box-shadow:none;
  filter:none;
  transform:none;
  clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px);
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
  transition:border-color .2s ease,background-color .2s ease,color .2s ease,transform .15s ease;
}
.site-header .header-cta::before,
.site-header .header-cta::after { content:none; }
.site-header .header-cta>.header-cta-brush {
  position:absolute;
  z-index:0;
  left:50%;
  top:50%;
  width:142px;
  height:44px;
  overflow:visible;
  pointer-events:none;
  transform:translate(-50%,-50%) rotate(-.7deg);
}
.site-header .header-profile-reveal {
  position:absolute;
  z-index:0;
  inset:7px 10px;
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:2px;
  pointer-events:none;
  opacity:0;
}
.site-header .header-profile-reveal i {
  display:block;
  background:#090a0f;
  transform:scaleY(0);
  transform-origin:50% 100%;
  transition:transform .62s cubic-bezier(.16,1,.3,1);
}
.site-header .header-profile-reveal i:nth-child(2) { transition-delay:35ms; }
.site-header .header-profile-reveal i:nth-child(3) { transition-delay:70ms; }
.site-header .header-profile-reveal i:nth-child(4) { transition-delay:105ms; }
.site-header .header-profile-reveal i:nth-child(5) { transition-delay:140ms; }
.site-header .header-cta:hover>.header-cta-brush,
.site-header .header-cta:focus-visible>.header-cta-brush {
  color:inherit;
  transform:translate(-50%,-50%) rotate(-.7deg);
}
.site-header .header-brush-reveal {
  fill:none;
  stroke:#fff;
  stroke-width:42;
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-dasharray:1;
  stroke-dashoffset:1;
  transition:stroke-dashoffset .48s cubic-bezier(.65,0,.35,1);
}
.site-header .header-brush-shape { fill:#08090d; }
.site-header .header-brush-fray {
  fill:none;
  stroke:#08090d;
  stroke-width:2.4;
  stroke-linecap:round;
}
.site-header .header-cta:hover .header-brush-reveal,
.site-header .header-cta:focus-visible .header-brush-reveal {
  stroke-dashoffset:0;
  transition-duration:.9s;
  transition-timing-function:cubic-bezier(.22,.68,.2,1);
}
.site-header .header-cta .header-cta-label {
  position:relative;
  z-index:1;
  isolation:auto;
  display:block;
  width:auto;
  min-width:0;
  height:auto;
  min-height:0;
  margin:0;
  padding:6px 10px 7px;
  border:0;
  border-radius:0;
  color:transparent;
  background:linear-gradient(90deg,var(--paper) 0 50%,#090a0f 50% 100%) 100% 0/200% 100% no-repeat;
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  box-shadow:none;
  font-family:"Russo One",sans-serif;
  font-size:25px;
  font-weight:400;
  font-style:normal;
  line-height:1;
  letter-spacing:.005em;
  text-transform:none;
  text-shadow:none;
  transform:none;
  transition:background-position .9s cubic-bezier(.22,.68,.2,1);
}
.site-header .header-cta .header-cta-label::before { content:none; }
.site-header .header-cta .header-cta-label::after { content:none; }
.site-header .header-cta:hover,
.site-header .header-cta:focus-visible {
  color:#090a0f;
  border:0;
  background:#c9ef52;
  box-shadow:none;
  filter:none;
  transform:none;
}
.site-header .header-cta:hover .header-cta-label,
.site-header .header-cta:focus-visible .header-cta-label {
  color:transparent;
  background-position:0 0;
  text-shadow:none;
  transform:none;
}
.site-header .header-cta.is-authenticated>.header-cta-brush { opacity:0; }
.site-header .header-cta.is-authenticated .header-profile-reveal { opacity:1; }
.site-header .header-cta.is-authenticated .header-cta-label {
  color:#090a0f;
  background:none;
  -webkit-text-fill-color:currentColor;
  transition:color .34s ease,transform .46s cubic-bezier(.16,1,.3,1),letter-spacing .46s cubic-bezier(.16,1,.3,1);
}
.site-header .header-cta.is-authenticated:hover .header-profile-reveal i,
.site-header .header-cta.is-authenticated:focus-visible .header-profile-reveal i,
.site-header .header-cta.is-authenticated.is-launching .header-profile-reveal i { transform:scaleY(1); }
.site-header .header-cta.is-authenticated:hover .header-profile-reveal i:nth-child(odd),
.site-header .header-cta.is-authenticated:focus-visible .header-profile-reveal i:nth-child(odd) { transform:scaleY(.86) translateY(-2px); }
.site-header .header-cta.is-authenticated:hover .header-cta-label,
.site-header .header-cta.is-authenticated:focus-visible .header-cta-label,
.site-header .header-cta.is-authenticated.is-launching .header-cta-label {
  color:#f4f1ea;
  background:none;
  -webkit-text-fill-color:currentColor;
  letter-spacing:.025em;
  transform:translateY(-1px);
}
.site-header .header-cta.is-authenticated.is-launching .header-profile-reveal i {
  transform-origin:50% 50%;
  animation:headerProfilePress .46s cubic-bezier(.16,1,.3,1) both;
}
.site-header .header-cta.is-authenticated.is-launching .header-profile-reveal i:nth-child(2) { animation-delay:30ms; }
.site-header .header-cta.is-authenticated.is-launching .header-profile-reveal i:nth-child(3) { animation-delay:60ms; }
.site-header .header-cta.is-authenticated.is-launching .header-profile-reveal i:nth-child(4) { animation-delay:90ms; }
.site-header .header-cta.is-authenticated.is-launching .header-profile-reveal i:nth-child(5) { animation-delay:120ms; }
@keyframes headerProfilePress {
  0% { transform:scaleY(0); }
  62% { transform:scaleY(1); }
  100% { transform:scaleY(.82) translateY(-2px); }
}
.site-header .header-cta:active {
  background:#bddf4d;
  transform:translateY(1px);
}
.site-header .header-cta:focus-visible {
  outline:2px solid rgba(166,156,255,.7);
  outline-offset:3px;
  border-radius:0;
}

@media (max-width:600px) {
  .site-header .header-cta {
    width:146px;
    min-width:146px;
    height:48px;
    min-height:48px;
    display:inline-flex;
    padding:0 12px;
  }
  .site-header .header-cta .header-cta-label {
    width:auto;
    height:auto;
    margin:0;
    padding:5px 8px 6px;
    border:0;
    border-radius:0;
    background:linear-gradient(90deg,var(--paper) 0 50%,#090a0f 50% 100%) 100% 0/200% 100% no-repeat;
    -webkit-background-clip:text;
    background-clip:text;
    font-size:21px;
  }
}

/* Profile is a separate identity scene, not an extension of the auth form. */
.auth-dialog.is-profile .auth-shell {
  display:grid;
  grid-template-columns:1fr;
  grid-template-rows:1fr;
  color:var(--paper);
  background:#090a0f;
  border-color:rgba(255,255,255,.14);
}
.auth-dialog.is-profile .auth-art { display:none; }
.auth-art[hidden] { display:none!important; }
.auth-dialog.is-profile .auth-panel {
  grid-column:1/-1;
  min-height:0;
  padding:0;
  overflow:hidden;
  color:var(--paper);
  background:
    radial-gradient(circle at 71% 47%,rgba(166,156,255,.16),transparent 28%),
    radial-gradient(circle at 89% 85%,rgba(217,255,87,.055),transparent 22%),
    #090a0f;
}
.auth-dialog.is-profile .auth-panel::before {
  content:"";
  position:absolute;
  inset:0;
  width:auto;
  height:auto;
  pointer-events:none;
  opacity:.38;
  background:
    linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);
  background-size:72px 72px;
  mask-image:linear-gradient(90deg,#000 0%,rgba(0,0,0,.7) 58%,transparent 100%);
}
.auth-dialog.is-profile .auth-panel::after {
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(115deg,transparent 0 46%,rgba(255,255,255,.035) 46.2%,transparent 46.5% 100%);
  background-size:360px 360px;
  opacity:.55;
}
.auth-dialog.is-profile .auth-panel-head { display:none; }
.auth-dialog.is-profile .auth-close {
  color:var(--paper);
  border-color:rgba(255,255,255,.22);
  background:rgba(9,10,15,.68);
}
.auth-dialog.is-profile .auth-close:hover {
  color:#090a0f;
  background:var(--paper);
}
.auth-dialog.is-profile .auth-profile {
  position:relative;
  z-index:3;
  width:100%;
  height:100%;
  max-width:none;
  margin:0;
  padding:clamp(34px,4vw,64px);
  display:grid;
  grid-template-rows:auto minmax(0,1fr) auto;
  text-align:left;
}
.profile-topline {
  min-height:42px;
  margin-right:58px;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:24px;
  padding-bottom:18px;
  border-bottom:1px solid rgba(255,255,255,.18);
  color:#898a93;
  font:700 8px/1 var(--mono);
  letter-spacing:.17em;
}
.profile-topline span { display:flex; align-items:center; gap:10px; }
.profile-topline i {
  width:7px;
  height:7px;
  border-radius:50%;
  background:var(--acid);
  box-shadow:0 0 18px rgba(217,255,87,.62);
}
.profile-stage {
  min-height:0;
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);
  align-items:center;
  gap:clamp(26px,5vw,90px);
  padding:clamp(36px,5vh,70px) clamp(0px,2vw,28px);
}
.profile-identity { position:relative; z-index:4; min-width:0; }
.profile-eyebrow {
  display:flex;
  align-items:center;
  gap:14px;
  margin-bottom:clamp(18px,2.4vh,30px);
  color:var(--acid);
  font:700 8px/1 var(--mono);
  letter-spacing:.2em;
}
.profile-eyebrow::before { content:""; width:34px; height:1px; background:currentColor; }
.auth-dialog.is-profile .profile-identity h2 {
  max-width:10ch;
  margin:0;
  color:var(--paper);
  font-size:clamp(62px,7.3vw,122px);
  font-weight:560;
  line-height:.84;
  letter-spacing:-.075em;
  overflow-wrap:anywhere;
}
.profile-email {
  width:max-content;
  max-width:100%;
  display:block;
  margin-top:clamp(28px,4vh,48px);
  padding:10px 14px 11px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.17);
  border-radius:999px;
  color:#a5a6af;
  font:650 10px/1 var(--mono);
  letter-spacing:.04em;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.profile-portrait {
  position:relative;
  justify-self:center;
  width:min(38vw,540px);
  aspect-ratio:1;
  display:grid;
  place-items:center;
  isolation:isolate;
}
.profile-portrait::before {
  content:"";
  position:absolute;
  inset:16%;
  z-index:-1;
  border-radius:50%;
  background:radial-gradient(circle,rgba(166,156,255,.22),rgba(166,156,255,.035) 48%,transparent 70%);
  filter:blur(8px);
}
.profile-ghost {
  position:absolute;
  inset:50% auto auto 50%;
  translate:-50% -50%;
  color:transparent;
  font-size:clamp(230px,31vw,510px);
  font-weight:650;
  line-height:.8;
  letter-spacing:-.1em;
  -webkit-text-stroke:1px rgba(255,255,255,.09);
}
.profile-ring {
  position:absolute;
  display:block;
  border:1px solid rgba(166,156,255,.36);
  border-radius:50%;
}
.profile-ring-one {
  inset:9%;
  transform:rotate(24deg) scaleY(.42);
  animation:profileRingOne 12s ease-in-out infinite alternate;
}
.profile-ring-two {
  inset:18%;
  border-color:rgba(217,255,87,.22);
  transform:rotate(-31deg) scaleY(.72);
  animation:profileRingTwo 15s ease-in-out infinite alternate;
}
.profile-portrait>b {
  position:relative;
  z-index:3;
  width:clamp(128px,12vw,190px);
  aspect-ratio:1;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.24);
  border-radius:50%;
  color:var(--paper);
  background:radial-gradient(circle at 34% 27%,#3b3d48,#15161d 31%,#030407 72%);
  box-shadow:inset -25px -29px 44px #000,inset 10px 9px 18px rgba(255,255,255,.12),0 35px 70px rgba(0,0,0,.48);
  font-size:clamp(38px,4vw,62px);
  font-weight:560;
}
.profile-portrait>b::after {
  content:"";
  position:absolute;
  width:30%;
  height:13%;
  left:23%;
  top:20%;
  border-radius:50%;
  rotate:-25deg;
  background:rgba(255,255,255,.28);
  filter:blur(5px);
}
.profile-satellite { position:absolute; z-index:4; display:block; border-radius:50%; }
.profile-satellite-acid {
  width:clamp(52px,5vw,78px);
  aspect-ratio:1;
  right:11%;
  top:20%;
  background:radial-gradient(circle at 34% 27%,#f1ffc1,var(--acid) 40%,#7d9f13 88%);
  box-shadow:inset -11px -13px 17px rgba(0,0,0,.28),inset 5px 5px 9px rgba(255,255,255,.44),0 18px 38px rgba(0,0,0,.35);
  animation:profileSatellite 5.5s ease-in-out infinite;
}
.profile-satellite-lilac {
  width:clamp(26px,2.7vw,42px);
  aspect-ratio:1;
  left:14%;
  bottom:24%;
  background:radial-gradient(circle at 34% 27%,#ece9ff,var(--lilac) 43%,#594cb8 88%);
  box-shadow:inset -7px -8px 11px rgba(0,0,0,.26),inset 3px 3px 6px rgba(255,255,255,.4),0 12px 26px rgba(0,0,0,.36);
  animation:profileSatellite 4.7s ease-in-out infinite reverse;
}
.profile-bottomline {
  min-height:82px;
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:30px;
  padding-top:20px;
  border-top:1px solid rgba(255,255,255,.18);
}
.profile-code { display:grid; gap:7px; }
.profile-code small { color:#696a74; font:700 7px/1 var(--mono); letter-spacing:.17em; }
.profile-code b { color:#b6b7bf; font:700 10px/1 var(--mono); letter-spacing:.12em; }
.profile-logout {
  min-width:154px;
  min-height:52px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;
  padding:0 18px 0 22px;
  border:1px solid rgba(255,255,255,.26);
  border-radius:999px;
  color:var(--paper);
  background:rgba(255,255,255,.035);
  font-size:13px;
  font-weight:800;
  cursor:pointer;
  transition:border-color .25s ease,color .25s ease,background .25s ease,transform .25s ease;
}
.profile-logout svg { width:18px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; transition:translate .25s var(--ease-snap); }
.profile-logout:hover { border-color:var(--acid); color:#090a0f; background:var(--acid); transform:translateY(-2px); }
.profile-logout:hover svg { translate:4px 0; }
.profile-logout:focus-visible { outline:2px solid var(--lilac); outline-offset:4px; }
.profile-logout:disabled { opacity:.5; cursor:wait; }

@keyframes profileRingOne { to { transform:rotate(43deg) scaleY(.49); } }
@keyframes profileRingTwo { to { transform:rotate(-47deg) scaleY(.63); } }
@keyframes profileSatellite { 50% { translate:-7px 11px; } }

@media (max-width:900px) {
  .auth-dialog.is-profile .auth-profile { padding:28px; }
  .profile-stage { grid-template-columns:minmax(0,1fr) minmax(280px,.75fr); gap:12px; }
  .profile-portrait { width:min(39vw,410px); }
  .auth-dialog.is-profile .profile-identity h2 { font-size:clamp(54px,8.5vw,88px); }
}

@media (max-width:700px) {
  .auth-dialog.is-profile .auth-shell { grid-template-rows:1fr; }
  .auth-dialog.is-profile .auth-panel { padding:0; }
  .auth-dialog.is-profile .auth-profile { padding:22px 20px 20px; }
  .profile-topline { min-height:38px; margin-right:48px; padding-bottom:13px; font-size:6px; }
  .profile-stage { grid-template-columns:1fr; grid-template-rows:auto minmax(190px,1fr); gap:12px; padding:30px 0 16px; }
  .profile-eyebrow { margin-bottom:17px; font-size:7px; }
  .auth-dialog.is-profile .profile-identity h2 { max-width:12ch; font-size:clamp(48px,15vw,72px); line-height:.88; }
  .profile-email { margin-top:22px; font-size:8px; }
  .profile-portrait { width:min(68vw,310px); justify-self:end; margin-top:-16px; }
  .profile-ghost { font-size:min(68vw,310px); }
  .profile-portrait>b { width:112px; font-size:36px; }
  .profile-bottomline { min-height:70px; align-items:center; padding-top:14px; }
  .profile-logout { min-width:130px; min-height:46px; gap:20px; padding-inline:18px 15px; }
}

@media (prefers-reduced-motion:reduce) {
  .profile-ring,.profile-satellite { animation:none!important; }
}

/* MotionSites-inspired layered pass: depth, cursor light and oversized type. */
.auth-dialog.is-profile .auth-panel {
  background:#08090d;
}
.auth-dialog.is-profile .auth-profile {
  isolation:isolate;
}
.profile-wordmark {
  position:absolute;
  z-index:-1;
  inset:50% auto auto -4%;
  width:108%;
  display:flex;
  gap:.22em;
  translate:0 -50%;
  color:transparent;
  opacity:.52;
  overflow:hidden;
  pointer-events:none;
  white-space:nowrap;
  font-size:clamp(180px,24vw,390px);
  font-weight:620;
  line-height:.72;
  letter-spacing:-.08em;
  -webkit-text-stroke:1px rgba(255,255,255,.075);
  mask-image:linear-gradient(90deg,transparent,#000 14% 86%,transparent);
}
.profile-wordmark span { animation:profileWordmark 26s linear infinite; }
.profile-pass-stack {
  --pass-rx:0deg;
  --pass-ry:0deg;
  position:relative;
  z-index:3;
  justify-self:center;
  width:min(30vw,430px);
  aspect-ratio:.76;
  perspective:1100px;
  transform-style:preserve-3d;
}
.profile-pass-layer,
.profile-pass {
  position:absolute;
  inset:0;
  display:block;
  border-radius:30px;
  clip-path:polygon(0 0,calc(100% - 34px) 0,100% 34px,100% 100%,34px 100%,0 calc(100% - 34px));
}
.profile-pass-layer { pointer-events:none; transition:transform .65s cubic-bezier(.16,1,.3,1); }
.profile-pass-layer-lilac {
  background:#9c8cff;
  transform:translate3d(25px,-18px,-50px) rotate(4deg);
  opacity:.8;
}
.profile-pass-layer-acid {
  background:#c9ef52;
  transform:translate3d(-22px,18px,-28px) rotate(-3deg);
  opacity:.88;
}
.profile-pass-stack:hover .profile-pass-layer-lilac { transform:translate3d(38px,-28px,-50px) rotate(6deg); }
.profile-pass-stack:hover .profile-pass-layer-acid { transform:translate3d(-34px,28px,-28px) rotate(-5deg); }
.profile-pass {
  z-index:2;
  overflow:hidden;
  color:var(--paper);
  border:1px solid rgba(255,255,255,.28);
  background:
    linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px),
    #12131a;
  background-size:42px 42px,42px 42px,auto;
  box-shadow:0 45px 95px rgba(0,0,0,.52),inset 0 1px 0 rgba(255,255,255,.17);
  transform:rotateX(var(--pass-rx)) rotateY(var(--pass-ry));
  transform-style:preserve-3d;
  transition:transform .24s ease-out;
}
.profile-pass::before {
  content:"";
  position:absolute;
  inset:9px;
  z-index:6;
  pointer-events:none;
  border:1px solid rgba(255,255,255,.13);
  border-radius:22px;
  clip-path:polygon(0 0,calc(100% - 29px) 0,100% 29px,100% 100%,29px 100%,0 calc(100% - 29px));
}
.profile-pass::after {
  content:"";
  position:absolute;
  z-index:7;
  top:27%;
  left:-8%;
  width:116%;
  height:1px;
  opacity:.6;
  background:linear-gradient(90deg,transparent,var(--lilac) 15% 85%,transparent);
  box-shadow:0 0 22px rgba(166,156,255,.5);
}
.profile-pass-head,
.profile-pass-foot {
  position:absolute;
  z-index:8;
  left:26px;
  right:26px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  color:#8d8e98;
  font:700 7px/1 var(--mono);
  letter-spacing:.15em;
}
.profile-pass-head { top:28px; }
.profile-pass-head span { color:var(--paper); }
.profile-pass-head b { color:var(--acid); }
.profile-pass-foot { bottom:27px; }
.profile-pass-foot i { height:1px; flex:1; background:rgba(255,255,255,.19); }
.profile-pass-foot b { color:#b9bac2; }
.profile-pass .profile-portrait {
  position:absolute;
  z-index:3;
  left:50%;
  top:51%;
  width:88%;
  margin:0;
  translate:-50% -50%;
}
.profile-pass .profile-ghost { font-size:clamp(190px,23vw,340px); -webkit-text-stroke-color:rgba(255,255,255,.12); }
.profile-pass .profile-portrait>b { width:clamp(118px,11vw,170px); }
.auth-dialog.is-profile .profile-stage {
  grid-template-columns:minmax(0,1.08fr) minmax(390px,.92fr);
  gap:clamp(40px,6vw,112px);
}
.auth-dialog.is-profile .profile-identity h2 { text-shadow:0 16px 55px rgba(0,0,0,.34); }
.auth-dialog[open].is-profile .profile-topline { animation:profileReveal .65s .05s both cubic-bezier(.16,1,.3,1); }
.auth-dialog[open].is-profile .profile-identity { animation:profileReveal .8s .12s both cubic-bezier(.16,1,.3,1); }
.auth-dialog[open].is-profile .profile-pass-stack { animation:profilePassReveal .9s .18s both cubic-bezier(.16,1,.3,1); }
.auth-dialog[open].is-profile .profile-bottomline { animation:profileReveal .65s .28s both cubic-bezier(.16,1,.3,1); }

@keyframes profileWordmark { to { transform:translateX(calc(-100% - .22em)); } }
@keyframes profileReveal { from { opacity:0; transform:translateY(24px); } }
@keyframes profilePassReveal { from { opacity:0; transform:translateY(44px) rotate(-5deg) scale(.94); } }

@media (max-width:900px) {
  .auth-dialog.is-profile .profile-stage { grid-template-columns:minmax(0,1fr) minmax(300px,.78fr); gap:18px; }
  .profile-pass-stack { width:min(38vw,350px); }
}

@media (max-width:700px) {
  .auth-dialog.is-profile .profile-stage { grid-template-columns:1fr; grid-template-rows:auto minmax(310px,1fr); }
  .profile-pass-stack { width:min(66vw,290px); align-self:center; justify-self:center; }
  .profile-pass-layer-lilac { transform:translate3d(17px,-12px,-50px) rotate(4deg); }
  .profile-pass-layer-acid { transform:translate3d(-15px,13px,-28px) rotate(-3deg); }
  .profile-wordmark { top:61%; font-size:55vw; }
  .profile-pass-head,.profile-pass-foot { left:20px; right:20px; }
  .profile-pass-head { top:23px; }
  .profile-pass-foot { bottom:22px; font-size:6px; }
  .profile-pass .profile-portrait { width:83%; }
}

@media (prefers-reduced-motion:reduce) {
  .profile-wordmark span,
  .auth-dialog[open].is-profile .profile-topline,
  .auth-dialog[open].is-profile .profile-identity,
  .auth-dialog[open].is-profile .profile-pass-stack,
  .auth-dialog[open].is-profile .profile-bottomline { animation:none!important; }
  .profile-pass { transform:none!important; }
}

/* Account workspace — editorial identity, scroll-less navigation, real settings. */
.auth-dialog.is-profile .auth-shell {
  display:grid;
  grid-template-columns:1fr;
  grid-template-rows:1fr;
  color:#11120f;
  background:#d1cdc4;
  border-color:rgba(255,255,255,.17);
}
.auth-dialog.is-profile .auth-panel {
  position:relative;
  height:100%;
  min-height:0;
  padding:0;
  overflow:hidden;
  color:#11120f;
  background:#d1cdc4;
}
.auth-dialog.is-profile .auth-panel::before,
.auth-dialog.is-profile .auth-panel::after { display:none; }
.auth-dialog.is-profile .auth-close {
  right:22px;
  top:22px;
  color:#f5f2ea;
  border-color:rgba(255,255,255,.24);
  background:rgba(10,11,16,.78);
}
.auth-dialog.is-profile .auth-close:hover { color:#11120f; background:var(--acid); }
.auth-dialog.is-profile .profile-workspace {
  --profile-primary:#a69cff;
  position:absolute;
  inset:0;
  z-index:3;
  width:100%;
  max-width:none;
  height:100%;
  min-height:0;
  margin:0;
  padding:0;
  display:grid;
  grid-template-columns:clamp(224px,18vw,282px) minmax(0,1fr);
  grid-template-rows:minmax(0,1fr);
  overflow:hidden;
  text-align:left;
  background:#d1cdc4;
}
.profile-rail {
  position:relative;
  z-index:4;
  height:auto;
  min-height:0;
  align-self:stretch;
  display:flex;
  flex-direction:column;
  padding:28px 22px 22px;
  color:#f4f1ea;
  overflow:hidden;
  background:
    linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px),
    #090a0f;
  background-size:58px 58px;
  border-right:1px solid rgba(17,18,15,.2);
}
.profile-rail::after {
  content:"";
  position:absolute;
  left:-35%;
  bottom:-18%;
  width:130%;
  aspect-ratio:1;
  border:1px solid rgba(166,156,255,.2);
  border-radius:50%;
  box-shadow:0 0 0 44px rgba(166,156,255,.025),0 0 0 92px rgba(217,255,87,.018);
  pointer-events:none;
}
.profile-brand {
  position:relative;
  z-index:2;
  width:max-content;
  display:flex;
  align-items:center;
  gap:9px;
  color:#f4f1ea;
}
.profile-brand .brand-mark { width:32px; flex-basis:32px; }
.profile-brand b { font:750 9px/1 var(--mono); letter-spacing:.15em; }
.profile-person {
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:42px minmax(0,1fr);
  align-items:center;
  gap:12px;
  margin:clamp(55px,8vh,92px) 0 38px;
  padding-bottom:24px;
  border-bottom:1px solid rgba(255,255,255,.15);
}
.profile-person-avatar {
  width:42px;
  aspect-ratio:1;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.18);
  border-radius:50%;
  color:#090a0f;
  background:var(--profile-primary);
  box-shadow:inset -8px -9px 14px rgba(0,0,0,.18),inset 4px 4px 7px rgba(255,255,255,.34);
  font-size:15px;
  font-weight:800;
  transition:background .45s var(--ease-snap),color .45s var(--ease-snap);
}
.profile-person>span:last-child { min-width:0; display:grid; gap:5px; }
.profile-person b { overflow:hidden; color:#f4f1ea; font-size:12px; text-overflow:ellipsis; white-space:nowrap; }
.profile-person small { overflow:hidden; color:#74757e; font-size:8px; text-overflow:ellipsis; white-space:nowrap; }
.profile-nav { position:relative; z-index:2; display:grid; gap:5px; }
.profile-nav button {
  position:relative;
  min-height:48px;
  display:grid;
  grid-template-columns:20px 1fr;
  align-items:center;
  gap:12px;
  padding:0 12px;
  overflow:hidden;
  border:0;
  border-radius:10px;
  color:#777881;
  background:transparent;
  font-size:11px;
  font-weight:720;
  text-align:left;
  cursor:pointer;
  transition:color .22s ease,background .22s ease,transform .22s var(--ease-snap);
}
.profile-nav button::before {
  content:"";
  position:absolute;
  left:0;
  top:50%;
  width:2px;
  height:0;
  translate:0 -50%;
  background:var(--profile-primary);
  transition:height .32s var(--ease-snap),background .45s var(--ease-snap);
}
.profile-nav button:hover { color:#f4f1ea; background:rgba(255,255,255,.045); transform:translateX(2px); }
.profile-nav button.is-active { color:#f4f1ea; background:rgba(255,255,255,.075); }
.profile-nav button.is-active::before { height:23px; }
.profile-nav svg { width:18px; fill:none; stroke:currentColor; stroke-width:1.45; stroke-linecap:round; stroke-linejoin:round; }
.profile-logout {
  position:relative;
  z-index:2;
  min-width:0;
  min-height:48px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  margin-top:auto;
  padding:0 12px;
  border:0;
  border-top:1px solid rgba(255,255,255,.15);
  border-radius:0;
  color:#9b9ca4;
  background:transparent;
  font-size:11px;
  font-weight:720;
  cursor:pointer;
  transition:color .22s ease,padding .28s var(--ease-snap);
}
.profile-logout svg { width:18px; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.profile-logout:hover { padding-left:16px; color:var(--profile-primary); background:transparent; transform:none; }
.profile-logout:focus-visible,.profile-nav button:focus-visible { outline:2px solid var(--profile-primary); outline-offset:2px; }

.profile-main {
  position:relative;
  height:100%;
  min-width:0;
  min-height:0;
  padding:0 clamp(34px,5vw,82px) 52px;
  overflow-x:hidden;
  overflow-y:auto;
  scrollbar-width:none;
  -ms-overflow-style:none;
  background:
    radial-gradient(circle at 88% 10%,rgba(166,156,255,.15),transparent 28%),
    radial-gradient(circle at 18% 92%,rgba(217,255,87,.055),transparent 25%),
    linear-gradient(rgba(17,18,15,.032) 1px,transparent 1px),
    linear-gradient(90deg,rgba(17,18,15,.032) 1px,transparent 1px),
    #d1cdc4;
  background-size:auto,auto,72px 72px,72px 72px,auto;
}
.profile-main::-webkit-scrollbar { width:0; height:0; display:none; }
.profile-main-head {
  position:sticky;
  z-index:8;
  top:0;
  min-height:86px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  margin-right:52px;
  border-bottom:1px solid rgba(17,18,15,.18);
  background:rgba(209,205,196,.88);
  backdrop-filter:blur(12px);
  font:700 8px/1 var(--mono);
  letter-spacing:.13em;
  text-transform:uppercase;
}
.profile-main-head span { color:#797a72; }
.profile-main-head b { color:#11120f; }
.profile-toast {
  position:sticky;
  z-index:10;
  top:98px;
  width:max-content;
  max-width:calc(100% - 20px);
  margin:12px 0 -54px auto;
  padding:13px 16px;
  border-left:3px solid var(--profile-primary);
  color:#f4f1ea;
  background:#111218;
  box-shadow:0 14px 34px rgba(17,18,24,.2);
  font-size:10px;
  line-height:1.35;
}
.profile-toast.is-error { border-color:#ff5da2; }
.profile-panel { width:min(1040px,100%); margin:0 auto; padding-top:clamp(48px,7vh,86px); }
.profile-panel[hidden] { display:none!important; }
.profile-panel[data-profile-panel="overview"] {
  min-height:calc(100% - 86px);
  display:grid;
  grid-template-rows:auto auto;
  align-content:center;
  gap:clamp(46px,7vh,78px);
  padding-top:36px;
  padding-bottom:44px;
}
.profile-panel.is-entering { animation:profilePanelIn .52s var(--ease-snap) both; }
@keyframes profilePanelIn { from { opacity:0; transform:translateY(18px); } }
.profile-page-title { width:100%; margin:0; }
.auth-dialog.is-profile .profile-page-title h2 {
  max-width:12ch;
  margin:0;
  overflow-wrap:anywhere;
  color:#11120f;
  font-size:clamp(68px,8.2vw,132px);
  font-weight:560;
  line-height:.82;
  letter-spacing:-.078em;
}
.profile-page-title p {
  width:max-content;
  max-width:100%;
  margin:28px 0 0;
  padding-bottom:7px;
  overflow:hidden;
  border-bottom:1px solid #11120f;
  color:#55564f;
  font-size:12px;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.profile-subscription {
  position:relative;
  min-height:236px;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(310px,.76fr);
  align-items:stretch;
  overflow:hidden;
  color:#f3f0e9;
  border:1px solid rgba(255,255,255,.13);
  background:
    linear-gradient(rgba(255,255,255,.042) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.042) 1px,transparent 1px),
    #0a0b10;
  background-size:52px 52px;
  box-shadow:0 24px 60px rgba(17,18,24,.13);
  isolation:isolate;
}
.profile-subscription::before {
  content:"";
  position:absolute;
  z-index:-1;
  right:-90px;
  top:50%;
  width:360px;
  aspect-ratio:1;
  translate:0 -50%;
  border:1px solid rgba(166,156,255,.2);
  border-radius:50%;
  box-shadow:0 0 0 42px rgba(166,156,255,.025),0 0 0 88px rgba(217,255,87,.015);
}
.profile-subscription-copy {
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:clamp(27px,3.5vw,44px);
}
.profile-subscription-copy>span {
  margin-bottom:24px;
  color:#898a92;
  font:700 7px/1 var(--mono);
  letter-spacing:.16em;
  text-transform:uppercase;
}
.profile-subscription-copy h3 {
  margin:0;
  color:#f3f0e9;
  font-size:clamp(31px,3.2vw,50px);
  font-weight:570;
  line-height:.92;
  letter-spacing:-.055em;
}
.profile-subscription-copy p {
  max-width:430px;
  margin:22px 0 0;
  color:#898a92;
  font-size:10px;
  line-height:1.55;
}
.profile-subscription-data {
  position:relative;
  z-index:2;
  display:grid;
  align-content:center;
  padding:28px clamp(24px,3vw,40px);
  border-left:1px solid rgba(255,255,255,.13);
  background:rgba(255,255,255,.018);
}
.profile-subscription-data div {
  min-height:52px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  border-bottom:1px solid rgba(255,255,255,.13);
}
.profile-subscription-data div:first-child { border-top:1px solid rgba(255,255,255,.13); }
.profile-subscription-data span { color:#797a82; font:700 7px/1 var(--mono); letter-spacing:.11em; text-transform:uppercase; }
.profile-subscription-data b { color:#b6b7bd; font-size:15px; font-weight:500; }
.profile-field { display:grid; gap:9px; }
.profile-field>span:first-child { color:#6b6c64; font:700 8px/1 var(--mono); letter-spacing:.12em; text-transform:uppercase; }
.profile-password-wrap {
  width:100%;
  min-height:56px;
  border:0;
  border-bottom:1px solid rgba(17,18,15,.3);
  color:#11120f;
  background:transparent;
  font-size:16px;
  transition:border-color .22s ease,box-shadow .22s ease;
}
.profile-field small { min-height:14px; color:#a82d58; font-size:9px; }
.profile-action {
  position:relative;
  min-width:150px;
  min-height:50px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  margin-top:auto;
  padding:0 16px 0 18px;
  overflow:hidden;
  border:1px solid rgba(17,18,15,.24);
  border-radius:0;
  color:#11120f;
  background:transparent;
  font-size:11px;
  font-weight:800;
  cursor:pointer;
  transition:color .28s ease,border-color .28s ease,transform .28s var(--ease-snap);
}
.profile-action::before {
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  background:var(--profile-primary);
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .48s var(--ease-snap),background .45s var(--ease-snap);
}
.profile-action span,.profile-action i { position:relative; z-index:1; }
.profile-action i { width:17px; height:1px; background:currentColor; }
.profile-action i::after { content:""; position:absolute; right:0; top:-3px; width:7px; height:7px; border-top:1px solid currentColor; border-right:1px solid currentColor; rotate:45deg; }
.profile-action:hover::before { transform:scaleX(1); }
.profile-action:hover { border-color:var(--profile-primary); transform:translateY(-2px); }
.profile-action:focus-visible { outline:2px solid #6b55e0; outline-offset:3px; }
.profile-action:disabled { opacity:.52; cursor:wait; transform:none; }
.profile-action-dark { color:#f4f1ea; border-color:#111218; background:#111218; }
.profile-action-dark:hover { color:#11120f; }

.profile-section-title { display:flex; align-items:flex-end; justify-content:space-between; gap:36px; margin-bottom:clamp(40px,6vh,68px); padding-bottom:24px; border-bottom:1px solid rgba(17,18,15,.18); }
.auth-dialog.is-profile .profile-section-title h2 { margin:0; color:#11120f; font-size:clamp(55px,7vw,104px); font-weight:560; line-height:.82; letter-spacing:-.072em; }
.profile-section-title p { max-width:340px; margin:0; color:#75766f; font-size:11px; line-height:1.55; }
.profile-password-form { width:min(640px,100%); display:grid; gap:25px; padding:clamp(28px,4vw,48px); border:1px solid rgba(17,18,15,.22); background:rgba(17,18,15,.025); }
.profile-password-wrap { display:grid; grid-template-columns:1fr 38px; align-items:center; }
.profile-password-wrap input { min-width:0; border:0; outline:0; color:#11120f; background:transparent; font-size:15px; }
.profile-password-wrap input:focus,
.profile-password-wrap input:focus-visible { outline:0!important; box-shadow:none!important; }
.profile-password-wrap:focus-within { border-color:#6352c9; box-shadow:none; }
.profile-password-wrap .auth-password-toggle:focus-visible { outline:1px solid rgba(99,82,201,.58); outline-offset:0; box-shadow:none; }
.profile-password-form .profile-action { width:max-content; margin-top:10px; }
.profile-password-step-up{display:grid;grid-template-columns:minmax(0,1fr) minmax(210px,260px);align-items:center;gap:18px;padding:18px;border:1px solid rgba(99,82,201,.19);border-radius:13px;background:linear-gradient(120deg,rgba(107,85,224,.07),rgba(255,255,255,.5))}.profile-password-step-up[hidden]{display:none}.profile-password-step-up p{margin:7px 0 0;color:#5f6059;font-size:10px;line-height:1.5}.profile-password-step-up[data-confirmed="true"]{border-color:rgba(96,128,41,.3);background:rgba(205,239,80,.1)}.profile-password-step-up[data-confirmed="true"] small{color:#516826}.profile-password-step-up[data-confirmed="true"] .profile-password-google{display:none}

@media (max-width:980px) {
  .auth-dialog.is-profile .profile-workspace { grid-template-columns:210px minmax(0,1fr); }
  .profile-rail { padding-inline:16px; }
  .profile-main { padding-inline:30px; }
  .profile-subscription { grid-template-columns:1fr minmax(270px,.7fr); }
}
@media (max-width:700px) {
  .auth-dialog.is-profile .auth-shell { grid-template-rows:1fr; }
  .auth-dialog.is-profile .auth-panel { padding:0; }
  .auth-dialog.is-profile .profile-workspace { grid-template-columns:1fr; grid-template-rows:auto minmax(0,1fr); }
  .auth-dialog.is-profile .auth-close { right:13px; top:13px; width:38px; height:38px; }
  .profile-rail { height:auto; min-height:132px; display:grid; grid-template-columns:1fr auto; grid-template-rows:48px 52px; padding:10px 60px 10px 14px; border-right:0; border-bottom:1px solid rgba(255,255,255,.14); }
  .profile-rail::after,.profile-person { display:none; }
  .profile-brand { align-self:center; }
  .profile-nav { grid-column:1/-1; grid-row:2; grid-template-columns:repeat(2,1fr); gap:3px; }
  .profile-nav button { min-height:46px; grid-template-columns:17px auto; justify-content:center; gap:7px; padding:0 5px; font-size:9px; }
  .profile-nav button::before { left:50%; top:auto; bottom:0; width:0; height:2px; translate:-50% 0; transition:width .3s var(--ease-snap); }
  .profile-nav button.is-active::before { width:24px; height:2px; }
  .profile-nav button:hover { transform:none; }
  .profile-logout { position:absolute; right:60px; top:10px; width:40px; height:40px; min-height:40px; display:grid; place-items:center; margin:0; padding:0; border:0; }
  .profile-logout span { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
  .profile-logout:hover { padding:0; }
  .profile-main { padding:0 18px 34px; }
  .profile-main-head { min-height:64px; margin-right:0; font-size:6px; }
  .profile-panel { padding-top:38px; }
  .profile-panel[data-profile-panel="overview"] { min-height:calc(100% - 64px); }
  .auth-dialog.is-profile .profile-page-title h2 { font-size:clamp(56px,18vw,82px); }
  .profile-page-title p { margin-top:22px; font-size:10px; }
  .profile-subscription { min-height:0; grid-template-columns:1fr; }
  .profile-subscription-data { border-top:1px solid rgba(255,255,255,.13); border-left:0; }
  .profile-section-title { align-items:flex-start; flex-direction:column; gap:20px; }
  .auth-dialog.is-profile .profile-section-title h2 { font-size:54px; }
  .profile-password-form { padding:22px; }
  .profile-toast { top:74px; }
}
@media (prefers-reduced-motion:reduce) {
  .profile-panel.is-entering { animation:none!important; }
  .profile-action::before,.profile-nav button { transition:none!important; }
}

/* Profile v4 — Awwwards editorial shell + OriginKit Dynamic Weight / Swipe Stack. */
.auth-dialog.is-profile .auth-shell,
.auth-dialog.is-profile .auth-panel,
.auth-dialog.is-profile .profile-workspace {
  background:#0d0e13;
}
.auth-dialog.is-profile .auth-close {
  z-index:30;
  right:22px;
  top:20px;
  width:126px;
  height:44px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:0 11px;
  border-radius:12px;
  color:#e9e6df;
  border:1px solid rgba(255,255,255,.18);
  background:#18191f;
  backdrop-filter:none;
  box-shadow:none;
  font:650 11px/1 "Manrope",sans-serif;
  rotate:none;
}
.auth-dialog.is-profile .auth-close:hover {
  color:#fff;
  border-color:rgba(166,156,255,.58);
  background:#24252e;
  rotate:none;
}
.auth-dialog.is-profile .auth-close-label,
.auth-dialog.is-profile .auth-close-icon-home { display:block; }
.auth-dialog.is-profile .auth-close-icon-x { display:none; }
.auth-dialog.is-profile .auth-close-icon-home { width:16px; }
.auth-dialog.is-profile .profile-workspace {
  --profile-primary:#a69cff;
  grid-template-columns:clamp(228px,18vw,276px) minmax(0,1fr);
  color:#f0ede6;
  background:
    linear-gradient(rgba(255,255,255,.032) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.032) 1px,transparent 1px),
    #0d0e13;
  background-size:64px 64px;
  background-position:0 0;
  border-radius:inherit;
}
.profile-rail {
  padding:28px 24px 24px;
  color:#efebe4;
  background:transparent;
  border-right:1px solid rgba(255,255,255,.12);
}
.profile-rail::after { display:none; }
.profile-brand { color:#f1eee7; }
.profile-brand .brand-mark { width:34px; flex-basis:34px; filter:none; }
.profile-brand b { font-size:9px; letter-spacing:.17em; }
.profile-person {
  grid-template-columns:46px minmax(0,1fr);
  gap:13px;
  margin:clamp(54px,8vh,86px) 0 0;
  padding:0 0 26px;
  border-bottom:1px solid rgba(255,255,255,.13);
}
.profile-person-avatar {
  width:46px;
  border:0;
  color:#0a0b0e;
  background:#a69cff;
  box-shadow:none;
  font-size:16px;
}
.profile-person b { color:#f1eee7; font-size:12px; }
.profile-person small { color:#73747d; font-size:8px; }
.profile-nav { gap:4px; margin-top:18px; border-top:0; }
.profile-nav button {
  min-height:62px;
  grid-template-columns:19px minmax(0,1fr);
  gap:13px;
  padding:0 12px;
  border:1px solid transparent;
  border-radius:10px;
  color:#767781;
  background:transparent;
  font-size:13px;
  font-weight:600;
  transition:color .16s ease,transform .2s cubic-bezier(.16,1,.3,1),background .16s ease,border-color .16s ease;
}
.profile-nav button::before {
  left:0;
  right:auto;
  top:50%;
  width:2px;
  height:0;
  translate:0 -50%;
  border-radius:0 2px 2px 0;
  background:#a69cff;
  opacity:1;
  transition:height .32s cubic-bezier(.16,1,.3,1),background .2s ease;
}
.profile-nav button:hover {
  color:#f1eee7;
  border-color:rgba(166,156,255,.16);
  background:rgba(166,156,255,.05);
  transform:translateX(3px);
}
.profile-nav button.is-active {
  color:#f1eee7;
  border-color:rgba(166,156,255,.12);
  background:linear-gradient(90deg,rgba(166,156,255,.16),rgba(166,156,255,.045));
}
.profile-nav button.is-active::before { height:28px; }
.profile-nav svg { width:18px; stroke-width:1.35; transition:transform .24s cubic-bezier(.16,1,.3,1); }
.profile-nav button:hover svg { transform:translateX(2px) rotate(-4deg); }
.profile-logout {
  min-height:58px;
  padding:0 8px;
  border-top:1px solid rgba(255,255,255,.13);
  color:#8d8e96;
  font-size:11px;
}
.profile-logout:hover { padding-left:13px; color:#f1eee7; }

.profile-main {
  --profile-gutter:clamp(36px,5vw,78px);
  height:100%;
  padding:0 var(--profile-gutter) 42px;
  color:#efebe4;
  background:transparent;
}
.profile-main-head {
  min-height:74px;
  margin:0 calc(var(--profile-gutter) * -1);
  padding:0 calc(var(--profile-gutter) + 148px) 0 var(--profile-gutter);
  border-bottom:1px solid rgba(255,255,255,.13);
  background:rgba(17,18,24,.94);
  backdrop-filter:blur(12px);
}
.profile-head-track {
  position:relative;
  width:100%;
  height:28px;
  display:block;
}
.profile-head-track::before {
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:50%;
  height:1px;
  background:linear-gradient(90deg,rgba(166,156,255,.42),rgba(255,255,255,.11) 38% 72%,rgba(217,255,87,.32));
}
.profile-head-track>i {
  position:absolute;
  top:50%;
  width:7px;
  aspect-ratio:1;
  translate:0 -50%;
  border:1px solid rgba(255,255,255,.38);
  border-radius:50%;
  background:#111218;
}
.profile-head-track>i:first-child { left:0; }
.profile-head-track>i:nth-child(2) { right:0; }
.profile-moon {
  position:absolute;
  left:35px;
  top:50%;
  z-index:3;
  width:58px;
  aspect-ratio:1;
  translate:-50% -50%;
  border-radius:50%;
  background:#111218;
  transition:left 2.25s cubic-bezier(.22,.74,.18,1),filter 1.45s cubic-bezier(.22,.74,.18,1);
  will-change:left;
}
.profile-main-head[data-profile-head-state="security"] .profile-moon {
  left:calc(100% - 35px);
}
.profile-moon canvas,
.profile-moon-fallback {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  display:block;
  border-radius:50%;
}
.profile-moon canvas {
  z-index:2;
  filter:drop-shadow(0 5px 8px rgba(0,0,0,.48));
}
.profile-moon-fallback {
  z-index:1;
  overflow:hidden;
  background:url('assets/space/moon-lroc-2k.jpg') 27% 50%/210% auto;
  box-shadow:inset -12px -3px 17px rgba(0,0,0,.8),inset 3px 2px 5px rgba(255,255,255,.25);
  transition:filter 2.05s cubic-bezier(.22,.74,.18,1);
}
.profile-moon.is-textured .profile-moon-fallback { opacity:0; }
.profile-moon[data-phase="new"] .profile-moon-fallback { filter:brightness(.16) contrast(1.2); }
.profile-moon::after {
  content:"";
  position:absolute;
  inset:-5px;
  z-index:0;
  border:1px solid rgba(255,255,255,.2);
  border-radius:50%;
  opacity:.62;
}
.profile-toast {
  top:96px;
  color:#101116;
  border-left:0;
  background:#a69cff;
  box-shadow:0 16px 42px rgba(0,0,0,.28);
}
.profile-toast.is-error { color:#f1eee7; background:#a52d58; }
.profile-panel { width:min(1120px,100%); padding-top:clamp(34px,5vh,58px); }
.profile-panel[hidden] { display:none!important; }
.profile-panel[data-profile-panel="overview"] {
  min-height:calc(100% - 74px);
  display:grid;
  grid-template-rows:minmax(220px,.7fr) minmax(290px,1fr);
  align-content:stretch;
  gap:clamp(28px,4vh,44px);
  padding-top:clamp(30px,4vh,48px);
  padding-bottom:22px;
}
.profile-panel.is-entering { animation:none; }
.profile-panel.is-entering .profile-page-copy,
.profile-panel.is-entering .profile-section-title,
.profile-panel.is-entering .profile-password-form {
  animation:profileMaskRise .68s cubic-bezier(.16,1,.3,1) both;
}
.profile-panel.is-entering .profile-subscription,
.profile-panel.is-entering .profile-password-form { animation-delay:.08s; }
@keyframes profileMaskRise {
  from { opacity:0; clip-path:inset(0 0 100% 0); transform:translateY(22px); }
  to { opacity:1; clip-path:inset(0); transform:translateY(0); }
}

.profile-page-title {
  position:relative;
  min-height:220px;
  display:grid;
  grid-template-columns:90px minmax(0,1fr);
  align-items:center;
  gap:clamp(22px,3vw,42px);
  padding:6px 0 clamp(28px,4vh,46px);
  overflow:hidden;
  border-bottom:1px solid rgba(255,255,255,.14);
}
.profile-page-avatar {
  width:78px;
  aspect-ratio:1;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.18);
  border-radius:50%;
  color:#0c0d11;
  background:#a69cff;
  font-size:27px;
  font-weight:720;
}
.profile-page-copy { position:relative; z-index:2; min-width:0; }
.auth-dialog.is-profile .profile-page-title h2 {
  max-width:100%;
  margin:0;
  overflow:visible;
  overflow-wrap:normal;
  white-space:nowrap;
  color:#efebe4;
  font-size:clamp(58px,6vw,96px);
  font-weight:560;
  line-height:.82;
  letter-spacing:-.075em;
}
.profile-page-title h2 .profile-name-glyph {
  display:inline-block;
  font-variation-settings:"wght" var(--glyph-weight,560);
  transition:font-variation-settings .18s ease,transform .18s cubic-bezier(.16,1,.3,1),color .18s ease;
  will-change:font-variation-settings,transform;
}
.profile-page-title p {
  width:max-content;
  max-width:100%;
  margin:24px 0 0;
  padding:0;
  overflow:hidden;
  border:0;
  color:#888992;
  font-size:11px;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.profile-subscription {
  position:relative;
  min-height:290px;
  display:grid;
  grid-template-columns:minmax(250px,.62fr) minmax(440px,1fr);
  align-items:center;
  gap:clamp(26px,4vw,64px);
  padding:clamp(30px,4vw,52px);
  overflow:hidden;
  color:#11120f;
  border:0;
  background:#cbc6bc;
  box-shadow:none;
  isolation:isolate;
}
.profile-subscription::before {
  content:"";
  position:absolute;
  z-index:-1;
  inset:0;
  width:auto;
  aspect-ratio:auto;
  translate:0;
  border:0;
  border-radius:0;
  background:
    linear-gradient(rgba(17,18,15,.055) 1px,transparent 1px),
    linear-gradient(90deg,rgba(17,18,15,.055) 1px,transparent 1px);
  background-size:54px 54px;
  box-shadow:none;
}
.profile-subscription-copy {
  position:relative;
  z-index:4;
  display:block;
  padding:0;
}
.profile-subscription-copy h3 {
  margin:0;
  color:#11120f;
  font-size:clamp(50px,5.2vw,78px);
  font-weight:570;
  line-height:.88;
  letter-spacing:-.068em;
}
.profile-subscription-copy p {
  max-width:330px;
  margin:26px 0 0;
  color:#5d5e58;
  font-size:12px;
  line-height:1.55;
}
.profile-pass-stack {
  --stack-shift-x:0px;
  --stack-shift-y:0px;
  --stack-rotate-x:0deg;
  --stack-rotate-y:0deg;
  --stack-rotate-z:0deg;
  position:relative;
  z-index:3;
  width:min(100%,490px);
  height:238px;
  justify-self:end;
  perspective:1000px;
  transform-style:preserve-3d;
}
.profile-pass-sheet,
.profile-pass-card {
  position:absolute;
  inset:0;
  clip-path:polygon(0 0,94% 0,100% 12%,100% 88%,94% 100%,0 100%);
  transform-origin:50% 88%;
  transition:transform .5s cubic-bezier(.16,1,.3,1);
}
.profile-pass-sheet-acid {
  background:#d9ff57;
  transform:translate(calc(-18px - var(--stack-shift-x)),calc(18px + var(--stack-shift-y))) rotate(calc(-2.5deg - var(--stack-rotate-z)));
}
.profile-pass-sheet-lilac {
  background:#a69cff;
  transform:translate(calc(15px + var(--stack-shift-x)),calc(-14px - var(--stack-shift-y))) rotate(calc(2deg + var(--stack-rotate-z)));
}
.profile-pass-card {
  z-index:3;
  display:grid;
  grid-template-rows:auto 1fr auto;
  padding:26px 44px 26px 28px;
  color:#eeebe4;
  background:#0b0c11;
  box-shadow:0 24px 50px rgba(0,0,0,.24);
  transform:rotateX(var(--stack-rotate-x)) rotateY(var(--stack-rotate-y));
}
.profile-pass-card::after {
  content:"";
  position:absolute;
  right:27px;
  top:0;
  bottom:0;
  border-left:1px dashed rgba(255,255,255,.2);
}
.profile-pass-card-head {
  display:flex;
  justify-content:space-between;
  gap:20px;
  color:#74757e;
  font:700 7px/1 var(--mono);
  letter-spacing:.15em;
  text-transform:uppercase;
}
.profile-pass-card-head b { color:#efebe4; font:inherit; }
.profile-pass-card>strong {
  align-self:center;
  max-width:8ch;
  color:#efebe4;
  font-size:clamp(28px,3vw,43px);
  font-weight:560;
  line-height:.9;
  letter-spacing:-.055em;
}
.profile-pass-card dl { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin:0; }
.profile-pass-card dl div { display:grid; gap:8px; border-top:1px solid rgba(255,255,255,.16); padding-top:10px; }
.profile-pass-card dt { color:#676871; font:700 6px/1 var(--mono); letter-spacing:.12em; text-transform:uppercase; }
.profile-pass-card dd { margin:0; color:#b8b5ae; font-size:13px; }

.profile-panel[data-profile-panel="security"] {
  min-height:calc(100% - 74px);
  grid-template-columns:minmax(220px,.56fr) minmax(500px,1fr);
  grid-template-rows:auto auto;
  align-content:center;
  align-items:start;
  gap:clamp(28px,4vh,44px) 0;
  padding-top:clamp(32px,5vh,62px);
  padding-bottom:44px;
}
.profile-panel[data-profile-panel="security"]:not([hidden]) { display:grid; }
.profile-section-title {
  grid-column:1/-1;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(260px,340px);
  align-items:end;
  gap:clamp(36px,6vw,78px);
  margin:0;
  padding:0 0 25px;
  border-bottom:1px solid rgba(255,255,255,.14);
}
.auth-dialog.is-profile .profile-section-title h2 {
  margin:0;
  color:#efebe4;
  font-size:clamp(58px,6.2vw,98px);
  font-weight:560;
  line-height:.84;
  letter-spacing:-.075em;
}
.profile-section-title p {
  max-width:360px;
  margin:0;
  padding:0;
  border:0;
  color:#80818a;
  font-size:12px;
  line-height:1.6;
}
.profile-password-form {
  grid-column:2;
  justify-self:stretch;
  width:100%;
  display:grid;
  gap:24px;
  padding:clamp(30px,4vw,50px);
  border:0;
  color:#11120f;
  background:#cbc6bc;
}

.profile-security-art {
  position:relative;
  grid-column:1;
  align-self:stretch;
  min-height:100%;
  margin:0;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.18);
  background:#05060a;
  isolation:isolate;
  cursor:default;
}
.profile-security-art::before {
  content:"";
  position:absolute;
  inset:0;
  z-index:3;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(5,6,10,.16) 0%,rgba(5,6,10,.075) 26%,transparent 54%);
}
.profile-security-space,
.profile-security-water {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  display:block;
}
.profile-security-space {
  object-fit:cover;
  object-position:50% 50%;
}
.profile-security-space-base {
  z-index:1;
  filter:saturate(.82) contrast(1.04) brightness(1);
  transition:opacity .28s ease;
}
.profile-security-water {
  z-index:2;
  opacity:0;
  pointer-events:none;
  transition:opacity .3s ease;
}
.profile-security-art.is-water-ready .profile-security-water { opacity:1; }
.profile-security-art.is-water-ready .profile-security-space-base { opacity:0; }
.profile-security-brush-reveal {
  position:absolute;
  inset:0;
  z-index:4;
  width:100%;
  height:100%;
  display:block;
  opacity:0;
  pointer-events:none;
  transition:opacity .36s cubic-bezier(.22,.72,.2,1);
}
.profile-security-brush-reveal.is-painting { opacity:1; }
.profile-security-brush-reveal.is-settling { opacity:0; }

@media (max-width:1180px) {
  .profile-panel[data-profile-panel="security"] {
    grid-template-columns:minmax(160px,.42fr) minmax(360px,1fr);
    align-content:start;
    row-gap:34px;
    column-gap:0;
  }
  .profile-section-title {
    grid-column:1;
    display:block;
  }
  .profile-section-title p {
    max-width:430px;
    margin-top:22px;
    padding-top:18px;
    border-top:1px solid rgba(255,255,255,.14);
  }
  .profile-password-form {
    grid-column:2;
    width:100%;
    justify-self:end;
  }
}
.profile-password-form .profile-field.auth-field { display:grid; gap:8px; }
.profile-password-form .profile-field.auth-field>span:first-child { color:#5f6059; font-size:9px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.profile-password-form .profile-password-wrap.auth-input-wrap {
  min-height:58px;
  display:grid;
  grid-template-columns:22px 1fr auto;
  align-items:center;
  gap:11px;
  padding:0 16px;
  border:1px solid rgba(17,18,15,.2);
  border-radius:14px;
  color:#11120f;
  background:rgba(255,255,255,.52);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7);
  transition:border-color var(--dur-ui),box-shadow var(--dur-ui),background var(--dur-ui);
}
.profile-password-form .profile-password-wrap.auth-input-wrap:focus-within { border-color:#6b55e0; background:rgba(255,255,255,.82); box-shadow:0 0 0 4px rgba(105,70,217,.1),inset 0 1px 0 #fff; }
.profile-password-form .profile-password-wrap.auth-input-wrap>svg { width:19px; fill:none; stroke:#6e6f67; stroke-width:1.45; stroke-linecap:round; stroke-linejoin:round; }
.profile-password-wrap input { color:#11120f; font-size:13px; }
.profile-password-wrap input::placeholder { color:#a5a59e; }
.profile-password-wrap .auth-password-toggle { color:#73746d; }
.profile-password-wrap .auth-password-toggle:hover { color:#11120f; background:rgba(17,18,15,.06); }
.profile-password-wrap .auth-password-toggle:focus-visible { outline:1px solid #6b55e0; outline-offset:2px; }
.profile-field small { color:#a52d58; }
.profile-password-form .profile-password-submit {
  width:100%;
  min-width:0;
  min-height:62px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin-top:6px;
  padding:6px 7px 6px 21px;
  border:1px solid rgba(17,18,15,.12);
  border-radius:15px;
  color:#f5f2eb;
  background:#111218;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 16px 34px rgba(17,18,24,.14);
  font-size:11px;
  font-weight:800;
  transition:transform .3s cubic-bezier(.16,1,.3,1),background .3s ease,box-shadow .3s ease;
}
.profile-password-form .profile-password-submit::before { content:none; }
.profile-password-submit b {
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  flex:0 0 48px;
  border-radius:11px;
  color:#111218;
  background:#d9ff57;
  transition:transform .42s cubic-bezier(.16,1,.3,1),background .3s ease;
}
.profile-password-submit b svg { width:21px; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.profile-password-submit:hover { color:#fff; border-color:rgba(166,156,255,.34); background:#171820; transform:translateY(-1px); box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 20px 40px rgba(17,18,24,.18); }
.profile-password-submit:hover b { background:#cdef50; transform:translateX(-2px); }

@media (max-width:1060px) {
  .auth-dialog.is-profile .profile-workspace { grid-template-columns:214px minmax(0,1fr); }
  .profile-rail { padding-inline:17px; }
  .profile-main { --profile-gutter:30px; }
  .profile-page-title { grid-template-columns:72px minmax(0,1fr); gap:22px; }
  .profile-page-avatar { width:64px; }
  .profile-subscription { grid-template-columns:minmax(210px,.55fr) minmax(370px,1fr); padding:34px; }
  .profile-pass-stack { height:218px; }
  .profile-panel[data-profile-panel="security"] { grid-template-columns:minmax(150px,.38fr) minmax(340px,1fr); row-gap:34px; column-gap:0; }
}

@media (max-width:760px) {
  .auth-dialog.is-profile .profile-workspace { grid-template-columns:1fr; grid-template-rows:116px minmax(0,1fr); }
  .auth-dialog.is-profile .auth-close { right:12px; top:12px; width:40px; height:40px; }
  .profile-rail {
    min-height:116px;
    display:grid;
    grid-template-columns:1fr auto;
    grid-template-rows:48px 52px;
    padding:8px 58px 8px 14px;
    border-right:0;
    border-bottom:1px solid rgba(255,255,255,.13);
  }
  .profile-person { display:none; }
  .profile-brand { align-self:center; }
  .profile-nav { grid-column:1/-1; grid-row:2; grid-template-columns:repeat(2,1fr); gap:3px; margin-top:0; border-top:0; }
  .profile-nav button { min-height:48px; justify-content:center; padding:0 7px; border-top:1px solid rgba(255,255,255,.12); font-size:10px; }
  .profile-nav button::before { left:50%; right:auto; top:auto; bottom:0; width:0; height:2px; translate:-50% 0; transition:width .3s cubic-bezier(.16,1,.3,1); }
  .profile-nav button.is-active::before { width:28px; height:2px; }
  .profile-nav button:hover { padding-left:7px; transform:none; }
  .profile-logout { position:absolute; right:56px; top:8px; width:42px; min-height:42px; display:grid; place-items:center; margin:0; padding:0; border:0; }
  .profile-logout span { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
  .profile-main { --profile-gutter:18px; padding-bottom:28px; }
  .profile-main-head { min-height:62px; padding-right:calc(var(--profile-gutter) + 52px); font-size:6px; }
  .profile-panel { padding-top:26px; }
  .profile-panel[data-profile-panel="overview"] { min-height:0; display:block; padding:26px 0 22px; }
  .profile-page-title { min-height:190px; grid-template-columns:54px minmax(0,1fr); gap:16px; padding:8px 0 30px; }
  .profile-page-avatar { width:52px; font-size:19px; }
  .auth-dialog.is-profile .profile-page-title h2 { font-size:clamp(39px,10.5vw,56px); }
  .profile-page-title p { margin-top:17px; font-size:9px; }
  .profile-subscription { min-height:0; grid-template-columns:1fr; gap:36px; margin-top:26px; padding:30px 22px 38px; }
  .profile-subscription-copy h3 { font-size:52px; }
  .profile-subscription-copy p { margin-top:18px; }
  .profile-pass-stack { width:calc(100% - 18px); height:206px; justify-self:center; }
  .profile-pass-card { padding:23px 38px 22px 23px; }
  .profile-panel[data-profile-panel="security"] { min-height:0; grid-template-columns:1fr; align-items:start; gap:34px; padding:38px 0 28px; }
  .auth-dialog.is-profile .profile-section-title h2 { font-size:54px; }
  .profile-section-title p { margin-top:20px; }
  .profile-security-art { grid-column:1; min-height:190px; border-color:rgba(255,255,255,.16); }
  .profile-security-space { object-position:50% 47%; }
  .profile-password-form { grid-column:1; padding:24px 20px; }
  .profile-toast { top:72px; }
}

@media (max-width:440px) {
  .profile-pass-stack { height:188px; }
  .profile-pass-sheet-acid { transform:translate(-8px,12px) rotate(-2deg); }
  .profile-pass-sheet-lilac { transform:translate(8px,-9px) rotate(1.6deg); }
  .profile-pass-card>strong { font-size:28px; }
  .profile-pass-card dl { gap:7px; }
  .profile-pass-card dt { font-size:5.5px; }
}

@media (prefers-reduced-motion:reduce) {
  .profile-panel.is-entering .profile-page-copy,
  .profile-panel.is-entering .profile-section-title,
  .profile-panel.is-entering .profile-password-form { animation:none!important; }
  .profile-page-title h2 .profile-name-glyph,
  .profile-pass-sheet,
  .profile-pass-card { transition:none!important; }
  .profile-security-space,
  .profile-security-water,
  .profile-security-brush-reveal,
  .profile-security-art { animation:none!important; transition:none!important; }
  .profile-security-water,
  .profile-security-brush-reveal { display:none; }
}

/* OriginKit's threshold filter is used only where story copy truly changes. */
.text-morph-defs {
  position:absolute;
  width:0;
  height:0;
  overflow:hidden;
  pointer-events:none;
}
.story-text-morph {
  position:relative;
  width:100%;
  display:grid;
  filter:none;
}
.story-text-morph-layer {
  grid-area:1/1;
  display:block;
  transform-origin:left center;
}
.story-text-morph-body .story-text-morph-layer { transform-origin:left top; }
/* Header text controls */
.site-header .nav {
  margin:0;
  gap:0;
  align-items:center;
}
.header-actions {
  display:flex;
  align-items:center;
  gap:clamp(24px,2.45vw,42px);
  margin-left:auto;
}
.site-header .header-text-button,
.site-header .header-cta.header-text-button {
  --border-right:2px;
  --text-stroke-color:rgba(244,241,234,.58);
  --animation-color:#a69cff;
  --fs-size:15px;
  position:relative;
  width:max-content;
  min-width:0;
  min-height:0;
  height:auto;
  display:inline-block;
  overflow:visible;
  margin:0;
  padding:5px 12px 5px 1px;
  border:0;
  border-radius:0;
  color:transparent;
  background:transparent;
  box-shadow:none;
  backdrop-filter:none;
  translate:none;
  transform:none;
  cursor:pointer;
  font-family:var(--mono);
  font-size:var(--fs-size);
  font-weight:700;
  line-height:1.1;
  letter-spacing:.17em;
  text-decoration:none;
  text-transform:uppercase;
  white-space:nowrap;
  user-select:none;
  -webkit-user-select:none;
  -webkit-user-drag:none;
  touch-action:manipulation;
  -webkit-text-stroke:1px var(--text-stroke-color);
}
.site-header .header-text-button::before,
.site-header .header-cta.header-text-button::before { content:none; }
.site-header .header-text-button::after,
.site-header .header-cta.header-text-button::after {
  content:"";
  position:absolute;
  z-index:3;
  top:50%;
  left:-2px;
  width:var(--border-right);
  height:1.08em;
  border:0;
  border-radius:999px;
  background:var(--animation-color);
  box-shadow:0 0 5px color-mix(in srgb,var(--animation-color) 32%,transparent);
  opacity:0;
  pointer-events:none;
  transform:translate(-100%,-50%);
  transition:left .76s cubic-bezier(.45,0,.2,1),opacity .24s ease;
}
.site-header .header-text-button .actual-text,
.site-header .header-text-button .hover-text {
  display:block;
  margin:0;
  padding:0;
  color:transparent;
  font:inherit;
  line-height:inherit;
  letter-spacing:inherit;
  text-transform:inherit;
  -webkit-text-stroke:1px var(--text-stroke-color);
}
.site-header .header-text-button .hover-text {
  position:absolute;
  box-sizing:border-box;
  inset:5px auto auto 1px;
  width:calc(100% - 13px);
  max-width:none;
  overflow:visible;
  border:0;
  clip-path:inset(0 100% 0 0);
  color:var(--animation-color);
  filter:none;
  transition:clip-path .76s cubic-bezier(.45,0,.2,1),filter .5s ease;
  -webkit-text-stroke:1px var(--animation-color);
}
.site-header .header-text-button:hover,
.site-header .header-text-button:focus-visible,
.site-header .header-cta.header-text-button:hover,
.site-header .header-cta.header-text-button:focus-visible,
.site-header .header-cta.header-text-button.is-launching {
  border:0;
  color:transparent;
  background:transparent;
  box-shadow:none;
  transform:none;
}
.site-header .header-text-button:hover .hover-text,
.site-header .header-text-button:focus-visible .hover-text,
.site-header .header-cta.header-text-button.is-launching .hover-text {
  clip-path:inset(0 0 0 0);
  filter:drop-shadow(0 0 4px color-mix(in srgb,var(--animation-color) 30%,transparent));
}
.site-header .header-text-button:hover::after,
.site-header .header-text-button:focus-visible::after,
.site-header .header-cta.header-text-button.is-launching::after {
  left:calc(100% - 3px);
  opacity:1;
}
.site-header .header-text-button:focus-visible {
  outline:1px solid color-mix(in srgb,var(--animation-color) 62%,transparent);
  outline-offset:7px;
}
.site-header .header-text-button:active,
.site-header .header-cta.header-text-button:active { transform:translateY(1px); }
.site-header .header-access-button { --animation-color:#a69cff; }
.site-header .header-studio-button {
  --animation-color:#d9ff57;
  --border-right:3px;
  --fs-size:16px;
  --text-stroke-color:rgba(217,255,87,.62);
}
.site-header .header-cta.header-text-button {
  --animation-color:#57d8ff;
  --text-stroke-color:rgba(244,241,234,.68);
}
.site-header .header-cta.header-text-button.is-authenticated {
  --animation-color:#d9ff57;
  border:0;
  background:transparent;
}
body[data-auth-bootstrap="unknown"] .site-header .header-cta[data-auth-open] {
  visibility:hidden;
}
.hero::after { content:none; }
.hero {
  --pointer-light-color:rgba(101,79,218,.24);
  background:radial-gradient(circle at var(--pointer-x) var(--pointer-y),var(--pointer-light-color),transparent 29%),linear-gradient(160deg,#090a0f 20%,#10111a 100%);
}
@media (max-width:960px) {
  .site-header .nav { margin:0; }
  .site-header .header-text-button,
  .site-header .header-cta.header-text-button { --fs-size:12px; letter-spacing:.13em; }
  .site-header .header-studio-button { --fs-size:13px; }
  .header-actions { gap:22px; }
}
@media (max-width:760px) {
  .site-header .nav { display:none; }
  .site-header .header-text-button,
  .site-header .header-cta.header-text-button { min-width:0; min-height:0; padding:5px 12px 5px 1px; }
}
@media (max-width:440px) {
  .header-actions { gap:12px; }
  .site-header .header-studio-button { --fs-size:11px; }
  .site-header .header-cta.header-text-button { --fs-size:10px; }
  .viralviz-art { width:min(112vw,420px); }
}

.auth-check {
  align-items:center;
  gap:14px;
  min-height:34px;
}
.auth-check-copy { padding-top:1px; }
.neon-checkbox {
  --primary:var(--acid);
  --primary-dark:#536611;
  --primary-light:#efffb3;
  --check-size:28px;
  position:relative;
  flex:0 0 var(--check-size);
  width:var(--check-size);
  height:var(--check-size);
  cursor:pointer;
  -webkit-tap-highlight-color:transparent;
}
.neon-checkbox input {
  position:absolute;
  width:1px;
  height:1px;
  margin:0;
  opacity:0;
  pointer-events:none;
}
.neon-checkbox__frame,
.neon-checkbox__effects {
  position:absolute;
  inset:0;
  display:block;
  pointer-events:none;
}
.neon-checkbox__box {
  position:absolute;
  inset:0;
  display:block;
  border:2px solid #171913;
  border-radius:4px;
  background:#101116;
  box-shadow:inset 0 0 0 1px rgba(217,255,87,.34),inset 0 1px 0 rgba(255,255,255,.08),0 5px 12px rgba(16,17,22,.2);
  transition:border-color .38s ease,background .38s ease,transform .38s cubic-bezier(.16,1,.3,1),box-shadow .38s ease;
}
.neon-checkbox__check-container {
  position:absolute;
  z-index:2;
  inset:2px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.neon-checkbox__check {
  width:80%;
  height:80%;
  overflow:visible;
  fill:none;
  stroke:var(--primary);
  stroke-width:3;
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-dasharray:40;
  stroke-dashoffset:40;
  transform:scale(.78);
  transform-origin:center;
  transition:stroke-dashoffset .42s cubic-bezier(.16,1,.3,1),transform .42s cubic-bezier(.16,1,.3,1);
}
.neon-checkbox__glow {
  position:absolute;
  z-index:0;
  inset:-2px;
  display:block;
  border-radius:6px;
  background:var(--primary);
  opacity:0;
  filter:blur(8px);
  transform:scale(1.16);
  transition:opacity .4s ease;
}
.neon-checkbox__borders {
  position:absolute;
  z-index:3;
  inset:0;
  display:block;
  overflow:hidden;
  border-radius:3px;
}
.neon-checkbox__borders>span {
  position:absolute;
  display:block;
  width:40px;
  height:1px;
  background:var(--primary-light);
  box-shadow:0 0 5px var(--primary);
  opacity:0;
  transition:opacity .35s ease;
}
.neon-checkbox__borders>span:nth-child(1) { top:0; left:-100%; }
.neon-checkbox__borders>span:nth-child(2) { top:-100%; right:0; width:1px; height:40px; }
.neon-checkbox__borders>span:nth-child(3) { right:-100%; bottom:0; }
.neon-checkbox__borders>span:nth-child(4) { bottom:-100%; left:0; width:1px; height:40px; }
.neon-checkbox__particles,
.neon-checkbox__rings,
.neon-checkbox__sparks {
  position:absolute;
  inset:0;
  display:block;
  pointer-events:none;
}
.neon-checkbox__particles>span {
  position:absolute;
  top:50%;
  left:50%;
  width:4px;
  height:4px;
  display:block;
  border-radius:50%;
  background:#11130e;
  box-shadow:0 0 0 1px var(--primary),0 0 7px var(--primary);
  opacity:0;
}
.neon-checkbox__rings { inset:-18px; }
.neon-checkbox__rings .ring {
  position:absolute;
  inset:0;
  display:block;
  border:1px solid #718b17;
  box-shadow:0 0 0 1px rgba(17,19,14,.18),0 0 7px rgba(217,255,87,.28);
  border-radius:50%;
  opacity:0;
  transform:scale(0);
}
.neon-checkbox__sparks>span {
  position:absolute;
  top:50%;
  left:50%;
  width:20px;
  height:1px;
  display:block;
  background:linear-gradient(90deg,#11130e 0 12%,var(--primary) 34%,transparent 100%);
  opacity:0;
  transform-origin:left center;
}
.auth-check:hover .neon-checkbox__box {
  border-color:var(--primary);
  box-shadow:inset 0 0 0 1px rgba(17,19,14,.5),inset 0 1px 0 rgba(255,255,255,.1),0 0 0 2px rgba(17,19,14,.14),0 0 13px rgba(217,255,87,.24);
  transform:scale(1.045);
}
.neon-checkbox input:focus-visible~.neon-checkbox__frame .neon-checkbox__box {
  outline:2px solid var(--lilac);
  outline-offset:4px;
}
.neon-checkbox input:checked~.neon-checkbox__frame .neon-checkbox__box {
  border-color:#11130e;
  background:var(--primary);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.48),0 0 0 2px rgba(113,139,23,.28),0 6px 14px rgba(17,19,14,.24),0 0 16px rgba(217,255,87,.36);
}
.neon-checkbox input:checked~.neon-checkbox__frame .neon-checkbox__check {
  stroke-dashoffset:0;
  stroke:#0d0f0b;
  transform:scale(1.05);
}
.neon-checkbox input:checked~.neon-checkbox__frame .neon-checkbox__glow { opacity:.28; }
.neon-checkbox input:checked~.neon-checkbox__frame .neon-checkbox__borders>span {
  background:#15170f;
  box-shadow:0 0 5px rgba(17,19,14,.48);
}
.neon-checkbox input:checked~.neon-checkbox__frame .neon-checkbox__borders>span { opacity:1; }
.neon-checkbox input:checked~.neon-checkbox__frame .neon-checkbox__borders>span:nth-child(1) { animation:neonBorderFlowX .72s ease-out 1 both; }
.neon-checkbox input:checked~.neon-checkbox__frame .neon-checkbox__borders>span:nth-child(2) { animation:neonBorderFlowY .72s .06s ease-out 1 both; }
.neon-checkbox input:checked~.neon-checkbox__frame .neon-checkbox__borders>span:nth-child(3) { animation:neonBorderFlowXReverse .72s .12s ease-out 1 both; }
.neon-checkbox input:checked~.neon-checkbox__frame .neon-checkbox__borders>span:nth-child(4) { animation:neonBorderFlowYReverse .72s .18s ease-out 1 both; }
.neon-checkbox input:checked~.neon-checkbox__frame .neon-checkbox__particles>span { animation:neonParticleExplosion .62s ease-out forwards; }
.neon-checkbox input:checked~.neon-checkbox__frame .neon-checkbox__rings .ring { animation:neonRingPulse .64s ease-out forwards; }
.neon-checkbox input:checked~.neon-checkbox__frame .neon-checkbox__sparks>span { animation:neonSparkFlash .62s ease-out forwards; }
.neon-checkbox__particles>span:nth-child(1) { --x:25px; --y:-25px; }
.neon-checkbox__particles>span:nth-child(2) { --x:-25px; --y:-25px; }
.neon-checkbox__particles>span:nth-child(3) { --x:25px; --y:25px; }
.neon-checkbox__particles>span:nth-child(4) { --x:-25px; --y:25px; }
.neon-checkbox__particles>span:nth-child(5) { --x:35px; --y:0px; }
.neon-checkbox__particles>span:nth-child(6) { --x:-35px; --y:0px; }
.neon-checkbox__particles>span:nth-child(7) { --x:0px; --y:35px; }
.neon-checkbox__particles>span:nth-child(8) { --x:0px; --y:-35px; }
.neon-checkbox__particles>span:nth-child(9) { --x:20px; --y:-30px; }
.neon-checkbox__particles>span:nth-child(10) { --x:-20px; --y:30px; }
.neon-checkbox__particles>span:nth-child(11) { --x:30px; --y:20px; }
.neon-checkbox__particles>span:nth-child(12) { --x:-30px; --y:-20px; }
.neon-checkbox__sparks>span:nth-child(1) { --r:0deg; }
.neon-checkbox__sparks>span:nth-child(2) { --r:90deg; }
.neon-checkbox__sparks>span:nth-child(3) { --r:180deg; }
.neon-checkbox__sparks>span:nth-child(4) { --r:270deg; }
.neon-checkbox__rings .ring:nth-child(2) { animation-delay:.1s!important; }
.neon-checkbox__rings .ring:nth-child(3) { animation-delay:.2s!important; }
@keyframes neonBorderFlowX { to { transform:translateX(200%); } }
@keyframes neonBorderFlowY { to { transform:translateY(200%); } }
@keyframes neonBorderFlowXReverse { to { transform:translateX(-200%); } }
@keyframes neonBorderFlowYReverse { to { transform:translateY(-200%); } }
@keyframes neonParticleExplosion {
  0% { transform:translate(-50%,-50%) scale(1); opacity:0; }
  20% { opacity:1; }
  100% { transform:translate(calc(-50% + var(--x)),calc(-50% + var(--y))) scale(0); opacity:0; }
}
@keyframes neonRingPulse {
  0% { transform:scale(0); opacity:.85; }
  100% { transform:scale(1.8); opacity:0; }
}
@keyframes neonSparkFlash {
  0% { transform:rotate(var(--r)) translateX(0) scale(1); opacity:1; }
  100% { transform:rotate(var(--r)) translateX(28px) scale(0); opacity:0; }
}
@media (prefers-reduced-motion:reduce) {
  .neon-checkbox *,
  .neon-checkbox *::before,
  .neon-checkbox *::after { animation:none!important; transition-duration:.01ms!important; }
}

.affiliate-form .affiliate-consents input { width:1px!important; height:1px!important; }

/* Google Identity stays native. ViralViz only owns the compact placement around it;
   the provider logo, type and interaction remain Google's rendered control. */
.auth-google[hidden],
.auth-google-link[hidden],
.profile-auth-method[hidden],
[data-current-password-field][hidden] { display:none!important; }
.auth-google {
  position:relative;
  display:grid;
  gap:17px;
  margin:0 0 19px;
  transition:opacity .24s ease,transform .36s cubic-bezier(.16,1,.3,1);
}
.auth-google.is-loading { opacity:.58; pointer-events:none; }
.auth-google-provider {
  position:relative;
  width:min(100%,354px);
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:end;
  gap:9px 12px;
  margin-inline:auto;
  padding:11px 11px 10px;
  border:1px solid rgba(17,18,15,.12);
  overflow:hidden;
  border-radius:18px;
  background:
    radial-gradient(circle at 12% -20%,rgba(166,156,255,.16),transparent 38%),
    linear-gradient(135deg,rgba(255,255,255,.68),rgba(255,255,255,.3));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.88),0 12px 30px rgba(35,29,61,.06);
  isolation:isolate;
  transition:border-color .28s ease,background .28s ease,box-shadow .38s cubic-bezier(.16,1,.3,1);
}
.auth-google-provider::before {
  content:"";
  position:absolute;
  z-index:-1;
  left:18px;
  right:18px;
  bottom:-8px;
  height:19px;
  border-radius:50%;
  background:rgba(105,70,217,.12);
  filter:blur(18px);
  opacity:.36;
  pointer-events:none;
}
.auth-google-provider::after {
  content:"";
  position:absolute;
  left:17px;
  top:-1px;
  width:46px;
  height:2px;
  border-radius:0 0 999px 999px;
  background:linear-gradient(90deg,#6f54db,#a69cff 58%,#d9ff57);
  box-shadow:0 0 12px rgba(105,70,217,.3);
  opacity:.78;
  transition:width .48s cubic-bezier(.16,1,.3,1),opacity .28s ease;
  pointer-events:none;
}
.auth-google-provider:hover,
.auth-google-provider:focus-within {
  border-color:rgba(105,70,217,.25);
  background:
    radial-gradient(circle at 12% -20%,rgba(166,156,255,.21),transparent 40%),
    linear-gradient(135deg,rgba(255,255,255,.78),rgba(255,255,255,.38));
  box-shadow:inset 0 1px 0 #fff,0 16px 38px rgba(44,31,91,.095);
}
.auth-google-provider:hover::after,
.auth-google-provider:focus-within::after { width:92px; opacity:1; }
.auth-google-provider-label,
.auth-google-provider-state {
  color:#7c7d75;
  font:750 8px/1 var(--mono);
  letter-spacing:.13em;
  text-transform:uppercase;
}
.auth-google-provider-label { padding-left:5px; }
.auth-google-provider-state { display:flex; align-items:center; justify-content:flex-end; gap:6px; padding-right:4px; font-size:7px; letter-spacing:.08em; white-space:nowrap; }
.auth-google-provider-state i { width:5px; aspect-ratio:1; border-radius:50%; background:#7c5de0; box-shadow:0 0 0 4px rgba(105,70,217,.08); }
.auth-google-link-head>span,
.profile-auth-method>span {
  width:36px;
  aspect-ratio:1;
  display:grid;
  place-items:center;
  border:1px solid rgba(17,18,15,.13);
  border-radius:11px;
  color:#202124;
  background:#fff;
  box-shadow:0 7px 18px rgba(17,18,24,.08);
  font:750 16px/1 Arial,sans-serif;
}
.auth-google-link-head p,.profile-auth-method p { min-width:0; display:grid; gap:4px; margin:0; }
.auth-google-link-head b,.profile-auth-method b { color:#20211e; font-size:11px; letter-spacing:-.01em; }
.auth-google-link-head small,.profile-auth-method small { color:#77786f; font-size:9px; line-height:1.45; }
.auth-google-native {
  position:relative;
  grid-column:1/-1;
  width:100%;
  height:40px;
  min-height:40px;
  max-height:40px;
  display:grid;
  place-items:center;
  overflow:hidden;
  border-radius:999px;
  contain:layout paint;
  cursor:pointer;
}
.auth-google-native>div,
.auth-google-native iframe {
  max-width:100%!important;
  max-height:40px!important;
  cursor:pointer!important;
}
.auth-method-divider { position:relative; height:20px; display:grid; place-items:center; overflow:hidden; }
.auth-method-divider::before { content:""; position:absolute; left:0; right:0; top:50%; height:1px; background:linear-gradient(90deg,transparent,rgba(17,18,15,.14) 15%,rgba(17,18,15,.14) 85%,transparent); }
.auth-method-divider span { position:relative; padding:0 11px; color:#8a8b83; background:#efede6; font:700 7px/1 var(--mono); letter-spacing:.12em; text-transform:uppercase; }
.auth-google-link {
  display:grid;
  gap:18px;
  padding:24px;
  border:1px solid rgba(105,70,217,.22);
  border-radius:20px;
  background:radial-gradient(circle at 92% 0,rgba(166,156,255,.17),transparent 35%),rgba(255,255,255,.5);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8),0 20px 46px rgba(42,31,83,.08);
  animation:googleLinkEnter .48s cubic-bezier(.16,1,.3,1) both;
}
.auth-google-link-head { display:grid; grid-template-columns:42px minmax(0,1fr); align-items:start; gap:14px; }
.auth-google-link-head>span { width:42px; border-color:rgba(105,70,217,.2); }
.auth-google-link-head b { font-size:14px; }
.auth-google-link-head small { max-width:44ch; font-size:10px; }
.auth-google-link-actions { display:grid; grid-template-columns:auto minmax(210px,1fr); gap:10px; }
.auth-google-link-actions>button:first-child { padding:0 18px; border:1px solid rgba(17,18,15,.15); border-radius:14px; color:#65665f; background:rgba(255,255,255,.45); font-size:10px; font-weight:800; cursor:pointer; transition:color .22s ease,border-color .22s ease,background .22s ease; }
.auth-google-link-actions>button:first-child:hover { color:#4c36b4; border-color:rgba(105,70,217,.35); background:#fff; }
.auth-dialog.is-google-linking .auth-tabs,
.auth-dialog.is-google-linking .auth-heading,
.auth-dialog.is-google-linking .auth-google,
.auth-dialog.is-google-linking .auth-form { display:none!important; }
.profile-auth-method { display:grid; grid-template-columns:38px 1fr auto; align-items:center; gap:12px; padding:12px 14px; border:1px solid rgba(105,70,217,.16); border-radius:14px; background:linear-gradient(120deg,rgba(166,156,255,.1),rgba(217,255,87,.055)); }
.profile-auth-method>span { width:38px; }
.profile-auth-method>i { width:8px; aspect-ratio:1; border-radius:50%; background:#82a526; box-shadow:0 0 0 5px rgba(130,165,38,.1); }
@keyframes googleLinkEnter { from { opacity:0; transform:translateY(12px) scale(.985); } }
@media (max-width:520px) {
  .auth-google-provider { width:min(100%,332px); padding-inline:9px; }
  .auth-google-provider-label { padding-left:4px; }
  .auth-google-link { padding:19px 16px; }
  .auth-google-link-actions { grid-template-columns:1fr; }
  .auth-google-link-actions>button:first-child { min-height:46px; grid-row:2; }
}

/* Profile scroll rail: one visible, draggable control for every workspace panel. */
.profile-scrollbar {
  --profile-thumb-height:72px;
  --profile-thumb-y:0px;
  position:absolute;
  z-index:24;
  right:12px;
  top:100px;
  bottom:24px;
  width:18px;
  display:grid;
  justify-items:center;
  padding:0;
  border:0;
  opacity:0;
  pointer-events:none;
  transition:opacity .24s ease;
}
.profile-scrollbar.is-visible { opacity:1; pointer-events:auto; }
.profile-scrollbar-track {
  position:relative;
  width:4px;
  height:100%;
  display:block;
  border-radius:999px;
  background:rgba(255,255,255,.085);
  box-shadow:inset 0 0 0 1px rgba(0,0,0,.18);
  cursor:pointer;
}
.profile-scrollbar-track::before {
  content:"";
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:calc(var(--profile-scroll-progress,0) * 100%);
  border-radius:inherit;
  background:linear-gradient(#a69cff,#d9ff57);
  opacity:.58;
}
.profile-scrollbar-thumb {
  position:absolute;
  left:50%;
  top:0;
  width:8px;
  height:var(--profile-thumb-height);
  display:block;
  translate:-50% var(--profile-thumb-y);
  border:1px solid rgba(217,255,87,.65);
  border-radius:999px;
  background:#1b1c22;
  box-shadow:0 8px 22px rgba(0,0,0,.32);
  cursor:grab;
  transition:width .2s ease,background .2s ease,border-color .2s ease;
}
.profile-scrollbar-thumb b {
  position:absolute;
  left:50%;
  top:50%;
  width:4px;
  aspect-ratio:1;
  translate:-50% -50%;
  border-radius:50%;
  background:#d9ff57;
  box-shadow:0 0 0 4px rgba(217,255,87,.08);
}
.profile-scrollbar:hover .profile-scrollbar-thumb,.profile-scrollbar.is-dragging .profile-scrollbar-thumb { width:12px; border-color:#d9ff57; background:#23242b; }
.profile-scrollbar.is-dragging .profile-scrollbar-thumb { cursor:grabbing; }
.profile-scrollbar:focus-visible { outline:1px solid rgba(166,156,255,.7); outline-offset:5px; border-radius:999px; }
.profile-main { overscroll-behavior:contain; scroll-behavior:smooth; }

/* Commission route — replaces the generic three-column KPI table. */
.affiliate-value-map { padding:clamp(58px,7vw,94px) 0 clamp(66px,8vw,108px); border-bottom:1px solid rgba(255,255,255,.14); }
.affiliate-value-map>header { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(240px,.55fr); align-items:end; gap:28px 70px; }
.affiliate-value-map>header .affiliate-section-index { grid-column:1/-1; }
.affiliate-value-map>header h3 { margin:0; color:#efebe4; font-size:clamp(46px,5.8vw,86px); font-weight:560; line-height:.87; letter-spacing:-.07em; }
.affiliate-value-map>header h3 em { color:#a69cff; font-style:normal; }
.affiliate-value-map>header>p { max-width:360px; margin:0 0 5px; color:#85868f; font-size:11px; line-height:1.65; }
.affiliate-map-stage { position:relative; min-height:390px; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(24px,4vw,60px); margin-top:54px; overflow:hidden; border-top:1px solid rgba(255,255,255,.12); border-bottom:1px solid rgba(255,255,255,.12); background:radial-gradient(circle at 47% 42%,rgba(166,156,255,.09),transparent 27%); isolation:isolate; }
.affiliate-map-stage::before { content:""; position:absolute; inset:0; z-index:-2; background:linear-gradient(rgba(255,255,255,.028) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.028) 1px,transparent 1px); background-size:44px 44px; }
.affiliate-map-route { position:absolute; inset:34px 1.5% 22px; z-index:-1; width:97%; height:calc(100% - 56px); overflow:visible; }
.affiliate-map-route path { fill:none; vector-effect:non-scaling-stroke; }
.affiliate-map-route-ghost { stroke:rgba(255,255,255,.14); stroke-width:1; }
.affiliate-map-route-live { stroke:url('#affiliateRouteGradient'); stroke:#a69cff; stroke-width:1.7; stroke-linecap:round; stroke-dasharray:4 9; animation:affiliateRouteTravel 18s linear infinite; }
@keyframes affiliateRouteTravel { to { stroke-dashoffset:-260; } }
.affiliate-map-point { position:relative; align-self:start; min-width:0; display:grid; align-content:start; padding:32px 25px 30px; border:1px solid rgba(255,255,255,.16); background:rgba(13,14,19,.92); box-shadow:0 24px 52px rgba(0,0,0,.17); }
.affiliate-map-point-window { margin-top:154px; }
.affiliate-map-point-payout { margin-top:48px; color:#111218; border-color:#a69cff; background:#a69cff; clip-path:polygon(0 0,calc(100% - 22px) 0,100% 22px,100% 100%,22px 100%,0 calc(100% - 22px)); }
.affiliate-map-point-sale { margin-top:120px; }
.affiliate-map-node { position:absolute; left:26px; top:-13px; width:25px; aspect-ratio:1; display:grid; place-items:center; border:1px solid rgba(217,255,87,.7); border-radius:50%; background:#111218; box-shadow:0 0 0 8px rgba(217,255,87,.04); }
.affiliate-map-node i { width:7px; aspect-ratio:1; border-radius:50%; background:#d9ff57; }
.affiliate-map-point>small { color:#777881; font:750 8px/1 var(--mono); letter-spacing:.14em; }
.affiliate-map-point>strong { display:flex; align-items:baseline; gap:8px; margin-top:25px; color:#efebe4; font-size:clamp(34px,4vw,57px); font-weight:540; line-height:.86; letter-spacing:-.065em; white-space:nowrap; }
.affiliate-map-point>strong em { color:#a69cff; font-size:.4em; font-style:normal; font-weight:700; letter-spacing:-.02em; }
.affiliate-map-point>p { max-width:31ch; margin:22px 0 0; color:#92939b; font-size:10.5px; line-height:1.62; }
.affiliate-map-point-payout .affiliate-map-node { border-color:#111218; background:#d9ff57; box-shadow:0 0 0 8px rgba(17,18,24,.08); }
.affiliate-map-point-payout .affiliate-map-node i { background:#111218; }
.affiliate-map-point-payout>small,.affiliate-map-point-payout>p { color:rgba(17,18,24,.62); }
.affiliate-map-point-payout>strong,.affiliate-map-point-payout>strong em { color:#111218; }

/* The lower protocol changes material instead of continuing as another dashboard grid. */
.affiliate-editorial-grid { margin-top:18px; border:0; gap:18px; background:transparent; }
.affiliate-eligibility,.affiliate-code { min-height:560px; border:0; }
.affiliate-eligibility { position:relative; overflow:hidden; color:#111218; background:#cbc6bc; }
.affiliate-eligibility::after { content:"18+"; position:absolute; right:-20px; bottom:-44px; color:rgba(17,18,24,.055); font-size:180px; font-weight:800; letter-spacing:-.09em; pointer-events:none; }
.affiliate-eligibility .affiliate-section-index { color:#6654ce; }
.affiliate-editorial-grid .affiliate-eligibility h3 { position:relative; z-index:1; color:#111218; font-size:clamp(42px,4.5vw,67px); }
.affiliate-eligibility .affiliate-platforms { position:relative; z-index:1; border-top-color:rgba(17,18,24,.2); }
.affiliate-eligibility .affiliate-platforms span { min-height:82px; border-color:rgba(17,18,24,.18); }
.affiliate-eligibility .affiliate-platforms b { font-size:13px; }
.affiliate-eligibility .affiliate-platforms small { padding:7px 9px; border-radius:999px; color:#111218; background:#d9ff57; font-size:7px; }
.affiliate-eligibility .affiliate-age-note { position:relative; z-index:1; color:#5e5f59; }
.affiliate-code { background:linear-gradient(145deg,#15161c,#101116); }
.affiliate-code ol { margin-top:36px; }
.affiliate-code li { min-height:126px; padding-left:60px; transition:background .24s ease,padding-left .3s cubic-bezier(.16,1,.3,1); }
.affiliate-code li::before { top:34px; width:32px; height:32px; display:grid; place-items:center; border:1px solid rgba(166,156,255,.35); border-radius:50%; }
.affiliate-code li:hover { padding-left:67px; background:rgba(166,156,255,.055); }
.affiliate-code b { font-size:14px; }
.affiliate-code li span { max-width:46ch; font-size:10px; }

/* Application interior: clearer hierarchy, larger controls, less generic form chrome. */
.affiliate-form-head { position:relative; overflow:hidden; padding:34px clamp(24px,3.5vw,48px) 46px; border:1px solid rgba(255,255,255,.14); background:radial-gradient(circle at 82% 10%,rgba(166,156,255,.17),transparent 31%),#111218; }
.affiliate-form-head::after { content:""; position:absolute; right:-72px; top:-108px; width:260px; aspect-ratio:1; border:1px solid rgba(217,255,87,.17); border-radius:50%; box-shadow:0 0 0 34px rgba(166,156,255,.025),0 0 0 72px rgba(217,255,87,.015); pointer-events:none; }
.affiliate-form-head>* { position:relative; z-index:1; }
.affiliate-form { width:min(960px,100%); gap:14px; padding-top:22px; }
.affiliate-form-section { position:relative; margin:0; padding:34px clamp(24px,4vw,48px) 40px; overflow:hidden; border:1px solid rgba(255,255,255,.14); border-radius:18px; background:linear-gradient(135deg,rgba(255,255,255,.028),rgba(255,255,255,.009)); box-shadow:inset 0 1px 0 rgba(255,255,255,.025); }
.affiliate-form-section::before { content:""; position:absolute; left:0; top:31px; width:3px; height:34px; border-radius:0 3px 3px 0; background:#a69cff; }
.affiliate-form-section:nth-of-type(2)::before { background:#d9ff57; }
.affiliate-form-section legend { font-size:22px; }
.affiliate-form-section legend span { width:29px; aspect-ratio:1; display:inline-grid; place-items:center; border:1px solid rgba(166,156,255,.35); border-radius:50%; }
.affiliate-field-grid { gap:18px; }
.affiliate-field-grid label>span,.affiliate-social-row label>span,.affiliate-textarea>span { font-size:8px; }
.affiliate-form input,.affiliate-form select { height:62px; font-size:13px; }
.affiliate-form textarea { min-height:138px; font-size:13px; line-height:1.55; }
.affiliate-social-row { padding:18px; background:#101116; }
.affiliate-consents { margin-top:1px; padding:27px 28px; border:1px solid rgba(255,255,255,.13); border-radius:16px; background:rgba(255,255,255,.018); }
.affiliate-submit { min-height:82px; margin-top:0; border-radius:17px; box-shadow:0 20px 50px rgba(0,0,0,.2); }
.affiliate-submit b { font-size:17px; }

@media(max-width:900px) {
  .profile-scrollbar { right:7px; }
  .affiliate-value-map>header { grid-template-columns:1fr; }
  .affiliate-value-map>header .affiliate-section-index { grid-column:auto; }
  .affiliate-map-stage { min-height:470px; gap:18px; }
  .affiliate-map-point { padding-inline:18px; }
  .affiliate-map-point-window { margin-top:178px; }
  .affiliate-map-point-sale { margin-top:145px; }
}
@media(max-width:760px) {
  .profile-scrollbar { right:3px; top:136px; bottom:14px; width:13px; }
  .profile-scrollbar-track { width:3px; }
  .profile-scrollbar-thumb { width:7px; }
  .affiliate-value-map { padding-top:54px; }
  .affiliate-value-map>header h3 { font-size:48px; }
  .affiliate-map-stage { min-height:0; display:grid; grid-template-columns:1fr; gap:14px; margin-top:38px; padding:38px 0; overflow:visible; background:none; }
  .affiliate-map-route { display:none; }
  .affiliate-map-stage::before { left:12px; right:auto; z-index:-1; width:1px; background:linear-gradient(#a69cff,#d9ff57); }
  .affiliate-map-point,.affiliate-map-point-window,.affiliate-map-point-payout,.affiliate-map-point-sale { margin:0 0 0 28px; }
  .affiliate-map-point-payout { clip-path:polygon(0 0,calc(100% - 16px) 0,100% 16px,100% 100%,16px 100%,0 calc(100% - 16px)); }
  .affiliate-map-node { left:-29px; top:28px; width:22px; }
  .affiliate-editorial-grid { gap:12px; }
  .affiliate-eligibility,.affiliate-code { min-height:0; padding:40px 23px; }
  .affiliate-eligibility::after { font-size:120px; }
  .affiliate-form-head { grid-template-columns:42px 1fr; padding:26px 18px 32px; }
  .affiliate-form-head>p { padding-left:58px; }
  .affiliate-form-section { padding:28px 17px 32px; border-radius:15px; }
  .affiliate-social-row { padding:14px; }
  .affiliate-consents { padding:22px 17px; }
}
@media(prefers-reduced-motion:reduce) {
  .affiliate-map-route-live { animation:none!important; }
  .profile-main { scroll-behavior:auto; }
  .profile-scrollbar,.profile-scrollbar-thumb { transition:none!important; }
}

/* Affiliate refinement: stable route cards and purpose-built application controls. */
.affiliate-map-stage {
  min-height:382px;
  gap:clamp(18px,3vw,44px);
  padding-inline:clamp(0px,1.4vw,20px);
}
.affiliate-map-route {
  inset:0 0 auto;
  z-index:0;
  width:100%;
  height:220px;
}
.affiliate-map-route-live {
  stroke:#a69cff;
}
.affiliate-map-point,
.affiliate-map-point-window,
.affiliate-map-point-payout,
.affiliate-map-point-sale {
  z-index:1;
  min-height:244px;
  margin-top:88px;
}
.affiliate-map-point-payout {
  clip-path:none;
  box-shadow:0 24px 52px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.22);
}
.affiliate-map-point-payout::after {
  content:"";
  position:absolute;
  right:-1px;
  top:-1px;
  width:31px;
  aspect-ratio:1;
  background:linear-gradient(225deg,#0d0e13 0 49%,rgba(17,18,24,.18) 50% 53%,transparent 54%);
  pointer-events:none;
}
.affiliate-map-node {
  left:50%;
  top:-14px;
  z-index:3;
  translate:-50% 0;
}

.affiliate-eligibility .affiliate-platforms span {
  min-height:88px;
  padding-inline:16px;
}
.affiliate-eligibility .affiliate-platforms b {
  font-size:15px;
  letter-spacing:-.025em;
}
.affiliate-eligibility .affiliate-platforms small {
  min-width:68px;
  padding:9px 12px;
  font-size:10px;
  letter-spacing:.035em;
  text-align:center;
  box-shadow:0 5px 16px rgba(111,135,24,.13);
}
.affiliate-age-note {
  font-size:10px;
}

.affiliate-form-section {
  overflow:visible;
}
.affiliate-form-section:nth-of-type(2) {
  z-index:4;
}
.affiliate-field-grid label>span,
.affiliate-social-row label>span,
.affiliate-platform-field>span,
.affiliate-textarea>span {
  color:#8f9098;
  font:700 8px/1 var(--mono);
  letter-spacing:.1em;
  text-transform:uppercase;
}
.affiliate-social-row {
  position:relative;
  grid-template-columns:180px minmax(230px,1fr) 150px 42px;
  transition:border-color .22s ease,background .22s ease,box-shadow .22s ease;
}
.affiliate-social-row.has-open-picker {
  z-index:20;
  border-color:rgba(166,156,255,.34);
  background:#121319;
  box-shadow:0 22px 52px rgba(0,0,0,.23);
}
.affiliate-platform-field {
  min-width:0;
  display:grid;
  align-content:end;
  gap:9px;
}
.affiliate-platform-picker {
  position:relative;
  min-width:0;
}
.affiliate-platform-trigger {
  width:100%;
  height:62px;
  display:grid;
  grid-template-columns:34px minmax(0,1fr) 18px;
  align-items:center;
  gap:10px;
  padding:0 14px 0 12px;
  border:1px solid rgba(255,255,255,.17);
  border-radius:12px;
  outline:0;
  color:#efebe4;
  background:#14151b;
  text-align:left;
  cursor:pointer;
  transition:border-color .2s ease,background .2s ease,box-shadow .2s ease;
}
.affiliate-platform-trigger:hover {
  border-color:rgba(217,255,87,.34);
  background:#17181e;
}
.affiliate-platform-trigger:focus-visible,
.affiliate-platform-picker.is-open .affiliate-platform-trigger {
  border-color:#a69cff;
  box-shadow:0 0 0 4px rgba(166,156,255,.09);
}
.affiliate-platform-trigger>i,
.affiliate-platform-menu button>i {
  width:34px;
  aspect-ratio:1;
  display:grid;
  place-items:center;
  border:1px solid rgba(217,255,87,.3);
  border-radius:10px;
  color:#d9ff57;
  background:rgba(217,255,87,.055);
  font:750 8px/1 var(--mono);
  font-style:normal;
}
.affiliate-platform-trigger>b {
  min-width:0;
  overflow:hidden;
  font-size:13px;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.affiliate-platform-trigger>svg {
  width:18px;
  fill:none;
  stroke:#8d8e96;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
  transition:rotate .25s cubic-bezier(.16,1,.3,1),stroke .2s ease;
}
.affiliate-platform-picker.is-open .affiliate-platform-trigger>svg {
  rotate:180deg;
  stroke:#d9ff57;
}
.affiliate-platform-menu {
  position:absolute;
  left:0;
  top:calc(100% + 8px);
  z-index:40;
  width:max(100%,220px);
  display:grid;
  gap:3px;
  padding:7px;
  border:1px solid rgba(255,255,255,.17);
  border-radius:15px;
  background:#121319;
  box-shadow:0 24px 60px rgba(0,0,0,.48),inset 0 1px rgba(255,255,255,.035);
  animation:affiliatePickerIn .2s cubic-bezier(.16,1,.3,1) both;
}
.affiliate-platform-menu[hidden] {
  display:none;
}
@keyframes affiliatePickerIn {
  from { opacity:0; transform:translateY(-6px) scale(.985); }
}
.affiliate-platform-menu button {
  min-height:50px;
  display:grid;
  grid-template-columns:34px minmax(0,1fr) 24px;
  align-items:center;
  gap:11px;
  padding:7px 9px;
  border:0;
  border-radius:10px;
  outline:0;
  color:#aaa7a1;
  background:transparent;
  text-align:left;
  cursor:pointer;
}
.affiliate-platform-menu button:hover,
.affiliate-platform-menu button:focus-visible {
  color:#efebe4;
  background:rgba(255,255,255,.055);
}
.affiliate-platform-menu button.is-selected {
  color:#efebe4;
  background:linear-gradient(90deg,rgba(166,156,255,.14),rgba(166,156,255,.045));
}
.affiliate-platform-menu button>b {
  font-size:12px;
}
.affiliate-platform-menu button>span {
  width:23px;
  aspect-ratio:1;
  display:grid;
  place-items:center;
  border:1px solid transparent;
  border-radius:50%;
}
.affiliate-platform-menu button>span svg {
  width:14px;
  fill:none;
  stroke:transparent;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.affiliate-platform-menu button.is-selected>span {
  border-color:rgba(217,255,87,.28);
  background:rgba(217,255,87,.07);
}
.affiliate-platform-menu button.is-selected>span svg {
  stroke:#d9ff57;
}
.affiliate-form input[type="number"] {
  -moz-appearance:textfield;
  appearance:textfield;
}
.affiliate-form input[type="number"]::-webkit-inner-spin-button,
.affiliate-form input[type="number"]::-webkit-outer-spin-button {
  margin:0;
  -webkit-appearance:none;
}

.affiliate-add-channel {
  width:100%;
  min-height:76px;
  display:grid;
  grid-template-columns:46px minmax(0,1fr) 32px;
  align-items:center;
  gap:14px;
  margin-top:14px;
  padding:13px 16px;
  border:1px dashed rgba(166,156,255,.32);
  border-radius:15px;
  color:#efebe4;
  background:linear-gradient(90deg,rgba(166,156,255,.07),rgba(217,255,87,.018));
  text-align:left;
  cursor:pointer;
  transition:border-color .22s ease,background .22s ease,transform .25s cubic-bezier(.16,1,.3,1);
}
.affiliate-add-channel .affiliate-add-channel-icon {
  width:46px;
  aspect-ratio:1;
  display:grid;
  place-items:center;
  margin:0;
  border:1px solid rgba(217,255,87,.3);
  border-radius:50%;
  color:#d9ff57;
  background:rgba(217,255,87,.055);
}
.affiliate-add-channel-icon svg,
.affiliate-add-channel-arrow {
  width:19px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.6;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.affiliate-add-channel .affiliate-add-channel-copy {
  width:auto;
  display:grid;
  place-items:initial;
  gap:6px;
  margin:0;
  border:0;
  border-radius:0;
  color:inherit;
  background:none;
  aspect-ratio:auto;
}
.affiliate-add-channel-copy b {
  font-size:13px;
}
.affiliate-add-channel-copy small {
  color:#74757e;
  font-size:9px;
}
.affiliate-add-channel-arrow {
  color:#777881;
  transition:translate .25s cubic-bezier(.16,1,.3,1),color .2s ease;
}
.affiliate-add-channel:hover {
  border-color:rgba(217,255,87,.52);
  background:linear-gradient(90deg,rgba(166,156,255,.1),rgba(217,255,87,.045));
  transform:translateY(-1px);
}
.affiliate-add-channel:hover .affiliate-add-channel-arrow {
  color:#d9ff57;
  translate:4px 0;
}
.affiliate-add-channel:focus-visible {
  outline:2px solid #a69cff;
  outline-offset:3px;
}
.affiliate-add-channel:disabled {
  opacity:.48;
  cursor:not-allowed;
  transform:none;
}

@media(max-width:900px) {
  .affiliate-map-stage { min-height:398px; }
  .affiliate-map-point,.affiliate-map-point-window,.affiliate-map-point-payout,.affiliate-map-point-sale { margin-top:88px; }
  .affiliate-social-row { grid-template-columns:150px minmax(190px,1fr) 130px 42px; }
}
@media(max-width:760px) {
  .affiliate-map-stage { padding-inline:0; }
  .affiliate-map-point,.affiliate-map-point-window,.affiliate-map-point-payout,.affiliate-map-point-sale { min-height:0; margin:0 0 0 28px; }
  .affiliate-map-point-payout { clip-path:none; }
  .affiliate-map-node { left:-29px; top:28px; translate:0; }
  .affiliate-platforms span { padding-inline:12px; }
  .affiliate-social-row { grid-template-columns:minmax(0,1fr) 42px; gap:12px; }
  .affiliate-platform-field { grid-column:1; grid-row:1; }
  .affiliate-social-row .is-url { grid-column:1/-1; grid-row:2; }
  .affiliate-social-row label:not(.is-url) { grid-column:1/-1; grid-row:3; }
  .affiliate-social-row>button { grid-column:2; grid-row:1; width:42px; }
  .affiliate-platform-menu { width:min(280px,calc(100vw - 96px)); }
  .affiliate-add-channel { grid-template-columns:42px minmax(0,1fr) 25px; padding-inline:12px; }
  .affiliate-add-channel-icon { width:42px; }
}
@media(prefers-reduced-motion:reduce) {
  .affiliate-platform-menu { animation:none!important; }
  .affiliate-platform-trigger>svg,.affiliate-add-channel,.affiliate-add-channel-arrow { transition:none!important; }
}

/* Partner polish: lighter scrolling, deliberate deletion and a contained age mark. */
.profile-main {
  scroll-behavior:auto;
}
.profile-main-head {
  background:#0d0e13;
  -webkit-backdrop-filter:none;
  backdrop-filter:none;
}
.profile-moon {
  transition:left 2.25s cubic-bezier(.22,.74,.18,1),filter 1.45s cubic-bezier(.22,.74,.18,1);
  will-change:left;
}
.profile-moon-fallback {
  transition:filter 2.05s cubic-bezier(.22,.74,.18,1);
}
.profile-panel.is-entering .profile-page-copy,
.profile-panel.is-entering .profile-section-title,
.profile-panel.is-entering .profile-password-form {
  animation-duration:.52s;
  animation-timing-function:cubic-bezier(.16,1,.3,1);
}
.profile-affiliate-panel.is-entering .affiliate-shell {
  animation:profileAffiliateIn .52s cubic-bezier(.16,1,.3,1) both;
}
@keyframes profileAffiliateIn {
  from { opacity:0; transform:translate3d(0,13px,0); }
  to { opacity:1; transform:translate3d(0,0,0); }
}
.affiliate-view.is-active {
  animation:affiliateReveal .48s cubic-bezier(.16,1,.3,1) both;
}
@keyframes profileMaskRise {
  from { opacity:0; transform:translate3d(0,12px,0); }
  to { opacity:1; transform:translate3d(0,0,0); }
}
@keyframes affiliateReveal {
  from { opacity:0; transform:translate3d(0,10px,0); }
  to { opacity:1; transform:translate3d(0,0,0); }
}
.profile-main.is-user-scrolling .affiliate-map-route-live,
.profile-main.is-user-scrolling .affiliate-viralviz-rings i,
.profile-main.is-user-scrolling .affiliate-status-visual::before,
.profile-main.is-user-scrolling .affiliate-status-visual::after {
  animation-play-state:paused;
}
/* Do not toggle the whole view's animation during wheel scrolling: removing
   animation-fill-mode briefly resets opacity and causes a full-panel flash. */

.profile-scrollbar-track::before {
  display:none;
}
.profile-scrollbar-progress {
  position:absolute;
  inset:0;
  display:block;
  border-radius:inherit;
  background:linear-gradient(#a69cff,#d9ff57);
  opacity:.58;
  transform:scaleY(0);
  transform-origin:50% 0;
  will-change:transform;
  pointer-events:none;
}
.profile-scrollbar-thumb {
  height:72px;
  translate:0;
  transform:translate3d(-50%,0,0);
  will-change:transform;
}

.affiliate-social-list.is-reflowing {
  pointer-events:none;
}
.affiliate-social-list.is-reflowing + .affiliate-add-channel {
  opacity:.68;
}
.affiliate-social-row>[data-social-remove] {
  position:relative;
  width:42px;
  height:62px;
  overflow:visible;
  border-color:rgba(255,255,255,.11);
  color:#696a73;
  background:rgba(255,255,255,.012);
  transition:color .18s ease,border-color .18s ease,background .18s ease,transform .24s cubic-bezier(.16,1,.3,1),opacity .18s ease;
}
.affiliate-social-row>[data-social-remove] svg {
  width:18px;
  stroke-width:1.35;
  transition:transform .28s cubic-bezier(.16,1,.3,1);
}
.affiliate-social-row>[data-social-remove]>span {
  position:absolute;
  right:calc(100% + 9px);
  top:50%;
  width:max-content;
  padding:6px 8px;
  border:1px solid rgba(255,255,255,.11);
  border-radius:7px;
  color:#a7a4a0;
  background:#17181e;
  box-shadow:0 9px 24px rgba(0,0,0,.28);
  font:700 7px/1 var(--mono);
  letter-spacing:.08em;
  text-transform:uppercase;
  opacity:0;
  transform:translate3d(4px,-50%,0);
  transition:opacity .16s ease,transform .22s cubic-bezier(.16,1,.3,1);
  pointer-events:none;
}
.affiliate-social-row>[data-social-remove]:not(:disabled):hover,
.affiliate-social-row>[data-social-remove]:not(:disabled):focus-visible {
  border-color:rgba(226,147,176,.28);
  color:#dda1b7;
  background:rgba(226,147,176,.055);
  transform:translateY(-1px);
}
.affiliate-social-row>[data-social-remove]:not(:disabled):hover svg {
  transform:scale(.94);
}
.affiliate-social-row>[data-social-remove]:not(:disabled):hover>span,
.affiliate-social-row>[data-social-remove]:not(:disabled):focus-visible>span {
  opacity:1;
  transform:translate3d(0,-50%,0);
}
.affiliate-social-row>[data-social-remove]:disabled {
  opacity:.28;
  cursor:not-allowed;
}

.affiliate-eligibility::after {
  right:clamp(14px,3vw,34px);
  bottom:14px;
  font-size:clamp(112px,12vw,172px);
  line-height:.78;
  letter-spacing:-.075em;
  white-space:nowrap;
}
.affiliate-eligibility .affiliate-platforms span {
  transition:background .18s ease;
}
.affiliate-eligibility .affiliate-platforms b {
  transition:transform .24s cubic-bezier(.16,1,.3,1);
}
.affiliate-eligibility .affiliate-platforms span:hover {
  background:rgba(255,255,255,.16);
}
.affiliate-eligibility .affiliate-platforms span:hover b {
  transform:translateX(3px);
}

@media(max-width:760px) {
  .affiliate-social-row>[data-social-remove]>span { display:none; }
  .affiliate-eligibility::after { right:18px; bottom:17px; font-size:112px; }
}
@media(prefers-reduced-motion:reduce) {
  .affiliate-social-row>[data-social-remove],
  .affiliate-social-row>[data-social-remove] svg,
  .affiliate-social-row>[data-social-remove]>span,
  .profile-moon { transition:none!important; }
  .profile-affiliate-panel.is-entering .affiliate-shell { animation:none!important; }
}

/* Minimal accounts and the public-beta access system. */
.profile-account-viralviz {
  position:relative;
  color:#111218!important;
  background:#a69cff!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.35),0 0 0 5px rgba(166,156,255,.08)!important;
}
.profile-account-viralviz svg {
  width:46%;
  height:46%;
  fill:none;
  stroke:currentColor;
  stroke-width:1.65;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.profile-page-avatar.profile-account-viralviz svg { width:44%; height:44%; }
.profile-beta-kicker {
  display:block;
  margin-bottom:20px;
  color:#604cc8;
  font:800 7px/1 var(--mono);
  letter-spacing:.16em;
}
.profile-pass-card.is-beta {
  background:
    radial-gradient(circle at 80% 18%,rgba(217,255,87,.15),transparent 23%),
    linear-gradient(145deg,#111219,#090a0f);
}
.profile-pass-card.is-beta::before {
  content:"BETA";
  position:absolute;
  right:48px;
  top:45px;
  color:rgba(217,255,87,.075);
  font-size:clamp(54px,6vw,88px);
  font-weight:850;
  letter-spacing:-.08em;
}
.profile-pass-card.is-beta>strong { color:#d9ff57; }
.profile-pass-card.is-beta dd { color:#efebe4; }

.access-beta-kicker {
  display:block;
  margin-bottom:28px;
  color:var(--acid);
  font:800 8px/1 var(--mono);
  letter-spacing:.16em;
}
.access-card-beta { overflow:hidden; }
.access-card-beta .access-card-top {
  position:relative;
  z-index:3;
  color:#bfc0c8;
  font:800 10px/1 var(--mono);
  letter-spacing:.18em;
}
.access-card-beta h3 { margin-top:74px; }
.access-card-beta .access-card-bottom strong { color:#c0c1c7; }
.access-card-beta .access-card-bottom button {
  color:#111218;
  border-color:var(--acid);
  background:var(--acid);
}
.access-card-beta .access-card-bottom button:not(:disabled):hover { background:#fff; }
.access-card-beta [data-access-cta]>span:last-child { display:none; }
body.is-authenticated .access-card-beta [data-access-cta] {
  min-width:134px;
  color:rgba(217,255,87,.78);
  -webkit-text-fill-color:rgba(217,255,87,.78);
  border-color:rgba(217,255,87,.34);
  background:rgba(217,255,87,.085);
  box-shadow:inset 0 0 0 1px rgba(217,255,87,.035);
  font-size:9px;
  cursor:default;
  opacity:1;
}
body.is-authenticated .access-card-beta [data-access-cta]>span:first-child { display:none; }
body.is-authenticated .access-card-beta [data-access-cta]>span:last-child { display:inline; }

.affiliate-consents .affiliate-age-confirm {
  width:100%;
  display:grid;
  grid-template-columns:40px minmax(0,1fr);
  align-items:center;
  gap:15px;
}
.affiliate-consents .affiliate-age-confirm>.neon-checkbox {
  width:34px;
  height:34px;
  display:block;
  border:0;
  border-radius:0;
  background:none;
}
.affiliate-consents .affiliate-age-confirm>.affiliate-age-copy {
  width:auto;
  aspect-ratio:auto;
  display:grid;
  gap:7px;
  border:0;
  border-radius:0;
  background:none;
}
.affiliate-age-copy small { color:#8b8c95; font:750 6px/1 var(--mono); letter-spacing:.14em; }
.affiliate-age-copy b { color:#efebe4; font-size:11px; }

@media(max-width:760px) {
  .access-card-beta h3 { margin-top:82px; }
}

/* ViralViz homepage: the product is the hero, not a decorative wordmark. */
.hero.hero-reel {
  --stage-line:rgba(235,238,230,.16);
  min-height:max(820px,100svh);
  padding:clamp(126px,14vh,162px) clamp(28px,5vw,84px) clamp(70px,8vh,98px);
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(350px,30vw);
  gap:clamp(46px,6vw,112px);
  align-items:center;
  isolation:isolate;
  overflow:hidden;
  background:
    radial-gradient(circle at var(--pointer-x) var(--pointer-y),var(--pointer-light-color),transparent 25%),
    radial-gradient(circle at 78% 48%,rgba(166,156,255,.105),transparent 28%),
    linear-gradient(118deg,#08090d 0 56%,#0d0e15 76%,#090a0e 100%);
}
.hero.hero-reel::before {
  content:"VV";
  position:absolute;
  z-index:-1;
  left:-.065em;
  bottom:-.2em;
  color:transparent;
  font:800 clamp(330px,46vw,880px)/.72 "Manrope",sans-serif;
  letter-spacing:-.16em;
  -webkit-text-stroke:1px rgba(255,255,255,.035);
  pointer-events:none;
}
.hero.hero-reel::after {
  content:"";
  position:absolute;
  z-index:-1;
  width:34vw;
  height:1px;
  left:42%;
  top:27%;
  background:linear-gradient(90deg,transparent,rgba(217,255,87,.38),transparent);
  rotate:-31deg;
  box-shadow:0 0 24px rgba(217,255,87,.12);
  pointer-events:none;
}
.hero-reel .hero-grid {
  inset:86px 0 0;
  opacity:.42;
  background-image:
    linear-gradient(rgba(255,255,255,.042) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.042) 1px,transparent 1px);
  background-size:clamp(54px,5.2vw,88px) clamp(54px,5.2vw,88px);
  mask-image:linear-gradient(90deg,#000,rgba(0,0,0,.42) 62%,transparent 94%);
}
.hero-reel .hero-copy {
  position:relative;
  inset:auto;
  z-index:7;
  width:auto;
  max-width:980px;
  align-self:center;
}
.hero-kicker {
  width:min(100%,690px);
  margin-bottom:clamp(28px,4vh,46px);
  padding-bottom:14px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  border-bottom:1px solid rgba(255,255,255,.2);
  color:#92939d;
  font:700 8px/1 var(--mono);
  letter-spacing:.16em;
}
.hero-kicker span,.hero-kicker b { display:flex; align-items:center; gap:9px; white-space:nowrap; }
.hero-kicker b { color:var(--acid); font-weight:700; }
.hero-kicker i {
  width:7px;
  height:7px;
  border-radius:50%;
  background:var(--acid);
  box-shadow:0 0 0 4px rgba(217,255,87,.1),0 0 18px rgba(217,255,87,.55);
  animation:heroLivePulse 2.2s ease-in-out infinite;
}
@keyframes heroLivePulse { 50% { opacity:.42; box-shadow:0 0 0 8px transparent,0 0 8px rgba(217,255,87,.2); } }
.hero-reel .hero-copy h1 {
  display:grid;
  align-items:start;
  font-size:clamp(68px,6.55vw,126px);
  font-weight:690;
  line-height:.85;
  letter-spacing:-.074em;
  text-shadow:none;
}
.hero-reel .hero-copy h1 span,.hero-reel .hero-copy h1 em { display:block; width:max-content; max-width:100%; }
.hero-reel .hero-copy h1 span:nth-child(2) { margin-left:.27em; }
.hero-reel .hero-copy h1 em {
  margin-top:.08em;
  color:var(--acid);
  font-style:normal;
  font-weight:790;
}
.hero-reel .hero-lead {
  max-width:650px;
  margin:clamp(28px,3.6vh,42px) 0 0;
  color:#aaaab2;
  font-size:clamp(14px,1.05vw,18px);
  line-height:1.7;
  letter-spacing:-.018em;
  text-shadow:none;
}
.hero-reel .hero-actions { margin-top:clamp(28px,3.6vh,42px); display:flex; align-items:center; gap:28px; }
.hero-launch {
  min-width:218px;
  min-height:60px;
  padding-left:22px;
  display:grid;
  grid-template-columns:1fr 52px;
  align-items:center;
  position:relative;
  overflow:hidden;
  color:#10120d;
  background:var(--acid);
  clip-path:polygon(0 0,calc(100% - 14px) 0,100% 14px,100% 100%,0 100%);
  font-size:12px;
  font-weight:800;
  transition:translate .32s var(--ease-snap),filter .32s;
}
.hero-launch::before {
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(105deg,transparent 24%,rgba(255,255,255,.62) 48%,transparent 72%);
  translate:-115% 0;
  transition:translate .64s var(--ease-ui);
}
.hero-launch span,.hero-launch i { position:relative; z-index:1; }
.hero-launch i {
  height:42px;
  display:grid;
  place-items:center;
  border-left:1px solid rgba(16,18,13,.22);
  font:500 22px/1 sans-serif;
  transition:rotate .35s var(--ease-snap),scale .35s var(--ease-snap);
}
.hero-launch:hover,.hero-launch:focus-visible { translate:0 -4px; filter:drop-shadow(0 16px 26px rgba(217,255,87,.16)); }
.hero-launch:hover::before,.hero-launch:focus-visible::before { translate:115% 0; }
.hero-launch:hover i,.hero-launch:focus-visible i { rotate:10deg; scale:1.08; }
.hero-launch:focus-visible,.hero-tour:focus-visible { outline:2px solid #fff; outline-offset:5px; }
.hero-tour {
  min-height:50px;
  display:flex;
  align-items:center;
  gap:18px;
  position:relative;
  color:#d0cfd5;
  font-size:11px;
  font-weight:730;
}
.hero-tour::after { content:""; position:absolute; left:0; right:0; bottom:2px; height:1px; background:#4b4c55; transform-origin:left; transition:scale .32s var(--ease-snap),background .32s; }
.hero-tour i { color:var(--acid); font:500 17px/1 sans-serif; transition:translate .32s var(--ease-snap); }
.hero-tour:hover::after { scale:.5 1; background:var(--acid); }
.hero-tour:hover i { translate:0 4px; }
.hero-metrics {
  width:min(100%,690px);
  margin:clamp(36px,5vh,58px) 0 0;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  border-block:1px solid rgba(255,255,255,.14);
}
.hero-metrics div { min-height:77px; padding:15px 18px 14px 0; display:flex; align-items:center; gap:13px; }
.hero-metrics div+div { padding-left:18px; border-left:1px solid rgba(255,255,255,.14); }
.hero-metrics dt { color:#f1eee8; font-size:clamp(22px,2vw,32px); font-weight:660; letter-spacing:-.055em; }
.hero-metrics dd { margin:0; color:#74757f; font:700 7px/1.45 var(--mono); letter-spacing:.12em; text-transform:uppercase; }

.hero-reel-shell {
  width:clamp(350px,29vw,458px);
  height:min(740px,calc(100svh - 158px));
  min-height:620px;
  padding:0 14px;
  justify-self:end;
  position:relative;
  z-index:5;
  display:grid;
  grid-template-rows:48px minmax(0,1fr) 72px;
  color:#eeece6;
  border:1px solid rgba(255,255,255,.18);
  border-radius:3px 27px 3px 3px;
  background:linear-gradient(145deg,rgba(29,30,40,.96),rgba(10,11,16,.98));
  box-shadow:0 48px 120px rgba(0,0,0,.48),inset 0 1px rgba(255,255,255,.06);
  transition:translate .6s var(--ease-snap),border-color .4s,box-shadow .5s;
}
.hero-reel-shell::before {
  content:"";
  position:absolute;
  inset:-1px auto -1px -1px;
  width:3px;
  background:linear-gradient(180deg,var(--acid),transparent 42%,var(--lilac));
  box-shadow:0 0 20px rgba(217,255,87,.15);
}
.hero-reel-shell::after {
  content:"";
  position:absolute;
  z-index:-1;
  inset:9% -10% -7% 10%;
  border:1px solid rgba(166,156,255,.14);
  border-radius:50%;
  rotate:-8deg;
  pointer-events:none;
}
.hero-reel-shell:hover { translate:0 -6px; border-color:rgba(255,255,255,.3); box-shadow:0 60px 145px rgba(0,0,0,.57),0 0 70px rgba(166,156,255,.075); }
.hero-reel-head,.hero-reel-foot { display:flex; align-items:center; justify-content:space-between; font:700 7px/1 var(--mono); letter-spacing:.15em; }
.hero-reel-head { color:#858690; }
.hero-reel-head b { display:flex; align-items:center; gap:7px; color:#d3d5d0; font-weight:700; }
.hero-reel-head b i { width:6px; height:6px; border-radius:50%; background:var(--acid); box-shadow:0 0 12px rgba(217,255,87,.55); }
.hero-reel-screen {
  position:relative;
  isolation:isolate;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.17);
  background:
    radial-gradient(circle at 50% 42%,rgba(166,156,255,.18),transparent 39%),
    #07080c;
  box-shadow:inset 0 0 54px rgba(0,0,0,.62);
}
.hero-stage-grid {
  position:absolute;
  inset:0;
  z-index:0;
  opacity:.65;
  background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);
  background-size:54px 54px;
  mask-image:linear-gradient(#000,rgba(0,0,0,.22));
}
.hero-screen-brand {
  position:absolute;
  z-index:5;
  left:18px;
  right:18px;
  bottom:59px;
  display:flex;
  align-items:center;
  gap:8px;
  color:#f1eee8;
  font-size:clamp(38px,3.3vw,57px);
  font-weight:800;
  line-height:1;
  letter-spacing:-.075em;
  pointer-events:none;
}
.hero-screen-brand b { padding:.08em .13em .055em .1em; color:#0b0d08; background:var(--acid); font:inherit; letter-spacing:-.045em; rotate:-2deg; box-shadow:3px 3px 0 rgba(166,156,255,.72); }
.hero-reel .hero-visual {
  position:absolute;
  inset:-4% -43% 1%;
  z-index:2;
  min-height:0;
  display:grid;
  place-items:center;
  pointer-events:none;
}
.hero-reel .viralviz-art { width:min(148%,620px); filter:drop-shadow(0 45px 56px rgba(0,0,0,.55)); }
.hero-reel .viralviz-art::before { inset:4%; }
.hero-reel .viralviz-art::after { inset:18%; }
.hero-reel .viralviz-core { inset:31%; }
.hero-reel .hero-graffiti { width:clamp(82px,8vw,122px); right:18%; top:13%; opacity:.5; }
.hero-reel .art-ball-a { width:18%; top:22%; left:20%; }
.hero-reel .art-ball-b { width:11%; top:12%; right:18%; }
.hero-reel .art-ball-c { width:8%; bottom:12%; right:22%; left:auto; }
.hero-scanline {
  position:absolute;
  z-index:4;
  left:0;
  right:0;
  top:-12%;
  height:18%;
  opacity:.42;
  background:linear-gradient(180deg,transparent,rgba(217,255,87,.065),rgba(217,255,87,.26),transparent);
  mix-blend-mode:screen;
  animation:heroScan 5.8s cubic-bezier(.4,0,.2,1) infinite;
  pointer-events:none;
}
@keyframes heroScan { 55%,100% { translate:0 720%; } }
.hero-screen-note {
  position:absolute;
  z-index:6;
  left:18px;
  right:18px;
  bottom:17px;
  padding-top:11px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  border-top:1px solid rgba(255,255,255,.18);
  color:#8b8c95;
  font:700 6px/1 var(--mono);
  letter-spacing:.16em;
  pointer-events:none;
}
.hero-screen-note b { color:var(--acid); font-size:18px; line-height:.5; }
.hero-reel-foot { gap:14px; color:#9c9da5; }
.hero-reel-time { color:var(--acid); }
.hero-reel-ratio { padding:7px 8px; border:1px solid rgba(255,255,255,.17); color:#dedce0; }
.hero-reel-wave { height:26px; flex:1; display:flex; align-items:center; justify-content:center; gap:4px; overflow:hidden; }
.hero-reel-wave i { width:3px; height:var(--wave-h,28%); background:#5a5b65; border-radius:4px; animation:heroWave 1.7s ease-in-out infinite alternate; }
.hero-reel-wave i:nth-child(2),.hero-reel-wave i:nth-child(9) { --wave-h:58%; animation-delay:-.3s; }
.hero-reel-wave i:nth-child(3),.hero-reel-wave i:nth-child(7),.hero-reel-wave i:nth-child(11) { --wave-h:88%; animation-delay:-.8s; }
.hero-reel-wave i:nth-child(4),.hero-reel-wave i:nth-child(8) { --wave-h:42%; animation-delay:-1.1s; }
.hero-reel-wave i:nth-child(5),.hero-reel-wave i:nth-child(10) { --wave-h:72%; animation-delay:-.5s; }
.hero-reel-wave i:nth-child(6),.hero-reel-wave i:nth-child(12) { --wave-h:35%; animation-delay:-1.3s; }
@keyframes heroWave { to { scale:1 .48; background:#999aa3; } }
.hero-reel-side {
  position:absolute;
  top:62px;
  bottom:86px;
  right:-28px;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:12px;
  color:#5f6069;
  font:700 6px/1 var(--mono);
  letter-spacing:.15em;
  writing-mode:vertical-rl;
}
.hero-reel-side i { width:1px; flex:1; background:linear-gradient(#494a54,transparent); }
.hero-edge-index {
  position:absolute;
  z-index:3;
  left:clamp(28px,5vw,84px);
  right:clamp(28px,5vw,84px);
  bottom:20px;
  display:flex;
  justify-content:space-between;
  color:#4f5058;
  font:700 6px/1 var(--mono);
  letter-spacing:.17em;
}
.hero-edge-index span { color:#74757f; }

.ticker.hero-spec-strip {
  height:58px;
  padding:0 clamp(20px,5vw,84px);
  display:grid;
  grid-template-columns:repeat(4,1fr);
  position:relative;
  overflow:hidden;
  color:#12140e;
  background:var(--acid);
  border:0;
}
.ticker.hero-spec-strip::before,.ticker.hero-spec-strip::after { content:none; }
.hero-spec-strip>span { min-width:0; display:flex; align-items:center; gap:12px; color:#24271b; font:800 8px/1 var(--mono); letter-spacing:.12em; white-space:nowrap; }
.hero-spec-strip>span+span { padding-left:clamp(14px,2vw,32px); border-left:1px solid rgba(17,19,13,.18); }
.hero-spec-strip>span b { color:#717b38; font-size:6px; }
.hero-spec-strip>i { position:absolute; left:0; right:0; bottom:0; height:3px; background:rgba(16,18,13,.18); }
.hero-spec-strip>i b { display:block; width:26%; height:100%; background:#11130d; animation:heroSignal 7s ease-in-out infinite alternate; }
@keyframes heroSignal { to { translate:285% 0; } }

@media (max-width:1180px) {
  .hero.hero-reel { padding-inline:clamp(24px,4vw,48px); grid-template-columns:minmax(0,1fr) minmax(330px,38vw); gap:clamp(28px,4vw,58px); }
  .hero-reel .hero-copy h1 { font-size:clamp(58px,6.35vw,78px); }
  .hero-reel-shell { width:clamp(330px,38vw,410px); }
  .hero-kicker,.hero-metrics { width:100%; }
}
@media (max-width:820px) {
  .hero.hero-reel { height:auto; min-height:auto; padding:116px 24px 76px; grid-template-columns:1fr; gap:58px; }
  .hero-reel .hero-copy { max-width:720px; }
  .hero-reel .hero-copy h1 { font-size:clamp(62px,11vw,86px); }
  .hero-reel .hero-lead { max-width:610px; }
  .hero-reel-shell { width:min(100%,430px); height:700px; justify-self:center; }
  .hero-edge-index { display:none; }
  .ticker.hero-spec-strip { padding-inline:0; grid-template-columns:repeat(4,minmax(185px,1fr)); overflow-x:auto; scrollbar-width:none; }
  .ticker.hero-spec-strip::-webkit-scrollbar { display:none; }
  .hero-spec-strip>span { padding-inline:20px!important; }
}
@media (max-width:560px) {
  .hero.hero-reel { padding:104px 18px 58px; gap:46px; }
  .hero.hero-reel::before { font-size:390px; bottom:12%; }
  .hero-kicker { margin-bottom:27px; font-size:6px; letter-spacing:.12em; }
  .hero-reel .hero-copy h1 { font-size:clamp(52px,14.3vw,68px); line-height:.88; letter-spacing:-.07em; }
  .hero-reel .hero-copy h1 span:nth-child(2) { margin-left:.12em; }
  .hero-reel .hero-lead { margin-top:26px; font-size:14px; line-height:1.62; }
  .hero-reel .hero-actions { margin-top:28px; display:grid; grid-template-columns:1fr; gap:12px; }
  .hero-launch { width:100%; min-width:0; }
  .hero-tour { width:max-content; }
  .hero-metrics { margin-top:34px; }
  .hero-metrics div { min-height:70px; padding-right:8px; gap:8px; }
  .hero-metrics div+div { padding-left:10px; }
  .hero-metrics dt { font-size:21px; }
  .hero-metrics dd { font-size:5.5px; letter-spacing:.08em; }
  .hero-reel-shell { width:100%; height:590px; min-height:0; padding-inline:10px; grid-template-rows:44px minmax(0,1fr) 64px; border-radius:2px 23px 2px 2px; }
  .hero-reel .hero-visual { inset:-1% -49% 2%; }
  .hero-reel .viralviz-art { width:156%; }
  .hero-screen-brand { left:14px; right:14px; bottom:55px; gap:6px; font-size:clamp(37px,12vw,50px); }
  .hero-screen-note { left:14px; right:14px; }
  .hero-reel-side { display:none; }
  .hero-spec-strip>span { min-width:174px; font-size:7px; }
}
@media (prefers-reduced-motion:reduce) {
  .hero-kicker i,.hero-scanline,.hero-reel-wave i,.hero-spec-strip>i b { animation:none!important; }
  .hero-reel-shell,.hero-launch,.hero-tour i { transition:none!important; }
}

/* The whole site uses one authored dark palette. Only formerly paper-colored
   surfaces need new materials; geometry and accent colors stay unchanged. */
  :root { color-scheme:dark; }
  body { background:var(--ink); color:#f7f5ef; }
  .kinetic-story,.story-sticky,.story-base { color-scheme:dark; }
  .kinetic-story { background:#101116; color:#f5f2ec; }
  .story-base { background:radial-gradient(circle at 61% 37%,rgba(166,156,255,.11),transparent 35%),linear-gradient(150deg,#15151b 0%,#101116 70%,#151318 100%); }
  .story-sticky::before { background:radial-gradient(circle at 58% 46%,rgba(166,156,255,.22),transparent 31%),linear-gradient(145deg,#252338 0%,#151622 100%); }
  .story-sticky::after { background:radial-gradient(circle at 50% 43%,rgba(217,255,87,.13),transparent 31%),linear-gradient(150deg,#1a2219 0%,#101714 100%); }
  .story-meta { border-bottom-color:rgba(255,255,255,.19); }
  .story-word { -webkit-text-stroke-color:rgba(255,255,255,.16); }
  .story-sticky[data-step="1"] .story-word { -webkit-text-stroke-color:rgba(185,176,255,.26); }
  .story-ring { border-color:rgba(255,255,255,.17); }
  .story-copy p { color:#c4c4ca; border-left-color:#a69cff; }
  .story-telemetry { border-top-color:rgba(255,255,255,.25); }
  .story-telemetry span { border-bottom-color:rgba(255,255,255,.14); }
  .story-scroll-cue i { border-color:rgba(255,255,255,.3); }
  .story-scroll-cue i::after { background:#f5f2ec; }
  .story-meter b { background:rgba(255,255,255,.2); }
  .story-meter i { background:#d9ff57; }
  .bridge-paper-ink { --bridge-from:#101116; }

  .profile-subscription { color:#f2f0eb; background:linear-gradient(145deg,#20212a,#17181f 70%); border:1px solid rgba(255,255,255,.11); }
  .profile-subscription::before { background:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px); background-size:54px 54px; }
  .profile-subscription-copy h3 { color:#f2f0eb; }
  .profile-subscription-copy p { color:#aeb0ba; }
  .profile-beta-kicker { color:#b5aaff; }

  .profile-password-form { color:#f2f0eb; background:#1c1d25; border:1px solid rgba(255,255,255,.12); }
  .profile-password-form .profile-field.auth-field>span:first-child { color:#c6c7ce; }
  .profile-password-form .profile-password-wrap.auth-input-wrap { color:#f2f0eb; border-color:rgba(255,255,255,.18); background:#111218; box-shadow:inset 0 1px 0 rgba(255,255,255,.05); }
  .profile-password-form .profile-password-wrap.auth-input-wrap:focus-within { border-color:#a69cff; background:#171821; box-shadow:0 0 0 4px rgba(166,156,255,.12); }
  .profile-password-form .profile-password-wrap.auth-input-wrap>svg { stroke:#aaaab4; }
  .profile-password-wrap input { color:#f2f0eb; }
  .profile-password-wrap input::placeholder { color:#898a94; }
  .profile-password-wrap .auth-password-toggle { color:#aaaab4; }
  .profile-password-wrap .auth-password-toggle:hover { color:#f2f0eb; background:rgba(255,255,255,.08); }
  .profile-password-form .profile-password-submit { border-color:rgba(217,255,87,.34); background:#111218; }

  .affiliate-eligibility { color:#f2f0eb; background:linear-gradient(145deg,#20212a,#17181f); border:1px solid rgba(255,255,255,.11); }
  .affiliate-eligibility::after { color:rgba(255,255,255,.045); }
  .affiliate-eligibility .affiliate-section-index { color:#b6aaff; }
  .affiliate-editorial-grid .affiliate-eligibility h3 { color:#f2f0eb; }
  .affiliate-eligibility .affiliate-platforms { border-top-color:rgba(255,255,255,.18); }
  .affiliate-eligibility .affiliate-platforms span { border-color:rgba(255,255,255,.13); }
  .affiliate-eligibility .affiliate-age-note { color:#afb0b9; }

  .auth-dialog:not(.is-profile) { color:#f4f1ea; }
  .auth-dialog:not(.is-profile) .auth-shell { background:#15161c; }
  .auth-dialog:not(.is-profile) .auth-panel { background:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px),#1b1c24; background-size:72px 72px; --auth-scroll-shadow-top:rgba(0,0,0,.3); --auth-scroll-shadow-bottom:rgba(0,0,0,.3); }
  .auth-dialog:not(.is-profile) .auth-panel-head { color:#b1b2bc; border-bottom-color:rgba(255,255,255,.18); }
  .auth-dialog:not(.is-profile) .auth-close { color:#f4f1ea; border-color:rgba(255,255,255,.2); background:rgba(17,18,24,.8); }
  .auth-dialog:not(.is-profile) .auth-close:hover { color:#111218; background:#d9ff57; }
  .auth-dialog:not(.is-profile) .auth-tabs { border-color:rgba(255,255,255,.18); background:#111218; box-shadow:inset 0 1px 0 rgba(255,255,255,.045); }
  .auth-dialog:not(.is-profile) .auth-tabs button { color:#a6a7b0; }
  .auth-dialog:not(.is-profile) .auth-tabs button.is-active { color:#f7f5ef; }
  .auth-dialog:not(.is-profile) .auth-tabs::before { border-color:rgba(166,156,255,.28); background:#38324f; }
  .auth-dialog:not(.is-profile) .auth-tabs.is-register::before { background:#38324f; }
  .auth-dialog:not(.is-profile) .auth-heading>span { color:#b6aaff; }
  .auth-dialog:not(.is-profile) .auth-heading h2 em { color:#b6aaff; }
  .auth-dialog:not(.is-profile) .auth-heading p { color:#afb0ba; }
  .auth-dialog:not(.is-profile) .auth-field>span:first-child { color:#c8c8cf; }
  .auth-dialog:not(.is-profile) .auth-input-wrap { border-color:rgba(255,255,255,.2); background:#111218; box-shadow:inset 0 1px 0 rgba(255,255,255,.04); }
  .auth-dialog:not(.is-profile) .auth-input-wrap:focus-within { border-color:#a69cff; background:#171820; box-shadow:0 0 0 4px rgba(166,156,255,.12); }
  .auth-dialog:not(.is-profile) .auth-input-wrap>svg { stroke:#aeb0ba; }
  .auth-dialog:not(.is-profile) .auth-input-wrap input { color:#f4f1ea; }
  .auth-dialog:not(.is-profile) .auth-input-wrap input::placeholder { color:#90919b; }
  .auth-dialog:not(.is-profile) .auth-password-toggle { color:#aeb0ba; }
  .auth-dialog:not(.is-profile) .auth-password-toggle:hover { color:#f4f1ea; background:rgba(255,255,255,.08); }
  .auth-dialog:not(.is-profile) .auth-check { color:#bfc0c8; }
  .auth-dialog:not(.is-profile) .auth-check i { border-color:rgba(255,255,255,.35); background:#111218; }
  .auth-dialog:not(.is-profile) .auth-check a { color:#ded8ff; }
  .auth-dialog:not(.is-profile) .auth-check a:hover { color:#d9ff57; }
  .auth-dialog:not(.is-profile) .auth-strength { color:#aaabb4; }
  .auth-dialog:not(.is-profile) .auth-strength i { background:rgba(255,255,255,.18); }
  .auth-dialog:not(.is-profile) .auth-submit { border-color:rgba(217,255,87,.32); }
  .auth-dialog:not(.is-profile) .auth-google-provider,
  .auth-dialog:not(.is-profile) .auth-google-provider:hover,
  .auth-dialog:not(.is-profile) .auth-google-provider:focus-within { border-color:rgba(255,255,255,.18); background:radial-gradient(circle at 12% -20%,rgba(166,156,255,.17),transparent 40%),#14151c; box-shadow:inset 0 1px 0 rgba(255,255,255,.06); }
  .auth-dialog:not(.is-profile) .auth-google-provider-label,
  .auth-dialog:not(.is-profile) .auth-google-provider-state { color:#aeb0ba; }
  .auth-dialog:not(.is-profile) .auth-method-divider::before { background:linear-gradient(90deg,transparent,rgba(255,255,255,.18) 15%,rgba(255,255,255,.18) 85%,transparent); }
  .auth-dialog:not(.is-profile) .auth-method-divider span { color:#aeb0ba; background:#1b1c24; }
  .auth-dialog:not(.is-profile) .auth-google-link { border-color:rgba(166,156,255,.3); background:radial-gradient(circle at 92% 0,rgba(166,156,255,.12),transparent 38%),#171820; box-shadow:inset 0 1px 0 rgba(255,255,255,.05); }
  .auth-dialog:not(.is-profile) .auth-google-link-head b { color:#f4f1ea; }
  .auth-dialog:not(.is-profile) .auth-google-link-head small { color:#b2b3bd; }
  .auth-dialog:not(.is-profile) .auth-google-link-actions>button:first-child { color:#c4c5cd; border-color:rgba(255,255,255,.2); background:#20212a; }
  .auth-dialog:not(.is-profile) .auth-google-link-actions>button:first-child:hover { color:#f4f1ea; border-color:#a69cff; background:#2b293a; }
  .auth-dialog:not(.is-profile) .auth-alert { color:#ffc3d0; }
  .auth-dialog:not(.is-profile) .auth-alert.is-success { color:#d9ff9b; background:rgba(217,255,87,.1); }

/* The final launch card belongs to the same dark material system as the site.
   A small acid edge keeps the ticket motif without a paper-white slab. */
.ticket-stack-paper { background:#292632; color:#e8e5f5; --ticket-border:rgba(186,175,255,.22); }
.final-cta .viralviz-launch,
.final-cta .viralviz-launch:hover,
.final-cta .viralviz-launch:focus-visible {
  color:#f5f2ea;
  background:linear-gradient(116deg,#252631 0%,#18191f 56%,#13151a 100%);
  border-color:rgba(217,255,87,.42);
  box-shadow:0 28px 72px rgba(0,0,0,.48),inset 0 1px rgba(255,255,255,.12);
}
.final-cta .viralviz-launch::before {
  position:absolute;
  left:0;
  right:auto;
  top:0;
  bottom:auto;
  width:5px;
  height:100%;
  display:block;
  background:#d9ff57;
  content:"";
}
.final-cta .ticket-copy { color:#f5f2ea; }
.final-cta .ticket-copy b>em { color:#d9ff57; }
.ticket-stack-black,.ticket-stack-paper,.ticket-back .ticket-sticker,.ticket-back .ticket-perf,
.final-cta .ticket-mini-viralviz { display:none; }
.ticket-stack-lilac { background:#292633; --ticket-border:rgba(166,156,255,.5); }
.ticket-stack-acid { background:#222819; --ticket-border:rgba(217,255,87,.55); }
.final-cta .ticket-copy { right:80px; }
.final-cta .viralviz-launch::after {
  position:absolute;
  left:auto;
  top:50%;
  right:15px;
  bottom:auto;
  width:40px;
  height:40px;
  display:grid;
  place-items:center;
  border-radius:50%;
  color:#11140a;
  background:#d9ff57;
  content:"↗";
  font:700 25px/1 "Manrope",sans-serif;
  transform:translateY(-50%);
  transform-origin:center;
  transition:transform .3s cubic-bezier(.16,1,.3,1);
}
.final-cta .viralviz-launch:hover::after,
.final-cta .viralviz-launch:focus-visible::after { transform:translate(3px,calc(-50% - 3px)); }
@media (max-width:760px) {
  .access-deck { height:360px; }
  .ticket-stack-lilac { --ticket-left:9%; --ticket-top:20%; --ticket-rotate:-3deg; }
  .ticket-stack-acid { --ticket-left:6%; --ticket-top:34%; --ticket-rotate:-1deg; }
  .final-cta .viralviz-launch { --ticket-left:2%; --ticket-top:48%; --ticket-rotate:2deg; }
  .final-cta .ticket-copy { left:18px; right:62px; }
  .final-cta .viralviz-launch::after { right:11px; width:34px; height:34px; font-size:21px; }
}
.profile-mobile-exit { display:none; }

/* A browser that force-darkens despite a light OS preference may recolor
   accent solids. Dark-preference browsers receive the authored colors as-is. */
@media (prefers-color-scheme:light) {
  html.is-browser-auto-dark .story-orb-a,
  html.is-browser-auto-dark .profile-pass-sheet-acid,
  html.is-browser-auto-dark .access-card-beta .access-status i,
  html.is-browser-auto-dark body:not(.is-authenticated) .access-card-beta [data-access-cta] {
    filter:invert(1) hue-rotate(180deg) brightness(1.1) saturate(3.5) hue-rotate(-4deg) contrast(1.15);
  }
  html.is-browser-auto-dark .story-orb-b { filter:invert(1) hue-rotate(180deg) brightness(1.04); }
  html.is-browser-auto-dark .story-orb-c { filter:invert(1) hue-rotate(180deg) brightness(.75) saturate(1.2); }
}
