body.has-wave-background{isolation:isolate;background:#03060c;--bg:#03060c;--panel:#0a0d14;--raised:#121923;--line:#ffffff24;--muted:#a2aab9;--blue:#8bbdff;--white:#f0f3fa}.wave-background{position:fixed;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none;opacity:.69}.has-wave-background .site-header{background:#03060de8;border-bottom-color:#ffffff18}.has-wave-background .nav-download{background:#e7edf8;color:#101725;border-color:transparent}.has-wave-background .nav-download img{filter:none}.has-wave-background .nav-download:hover{background:#fff}.has-wave-background .site-footer{background:#03060c55}

/* Main composition: character and entry actions, then the game's actual demonstrations. */
body.has-wave-background main:not(.shell){max-width:1440px;padding:0 40px}.has-wave-background section.hero{grid-template-columns:1fr 1fr;gap:48px;padding:32px 0 24px;min-height:730px}.has-wave-background .hero-copy{position:relative;z-index:2;padding-left:20px}.has-wave-background section.hero h1{font-size:clamp(60px,4.7vw,82px);line-height:1.08;letter-spacing:-3.8px;font-weight:550;max-width:680px}.has-wave-background .intro{color:#b4c9e6;letter-spacing:.06em;font-size:12px}.has-wave-background .hero-description{color:#bbc8dc;font-size:18px;max-width:430px;line-height:1.75}.has-wave-background .action{background:#070e1ab0;border:1px solid #a2c4fb44;border-radius:7px;padding:13px 19px}.has-wave-background .action.primary{background:#eef4ff;border-color:#eef4ff;color:#111b2a}.has-wave-background .action.primary img{filter:none}.has-wave-background .action:hover{background:#11213b;border-color:#93bcfa88}.has-wave-background .action.primary:hover{background:#fff}.has-wave-background .requirements{color:#9eafc7}.has-wave-background .requirements b{color:#d1dded}.ctf-hero{position:relative;min-width:0;width:100%;aspect-ratio:1;align-self:center}.ctf-hero canvas,.ctf-hero .hero-poster{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain}.ctf-hero .hero-poster{transition:opacity .15s}.ctf-hero:has(.clip-status[hidden]) .hero-poster{opacity:0;pointer-events:none}.ctf-hero .clip-status{display:none}.ctf-hero .clip-toggle{position:absolute;right:12px;bottom:8px;min-height:36px;padding:5px 12px;border:1px solid #ffffff26;border-radius:6px;background:#131316bb;color:#ccc;font:inherit;font-size:12px;cursor:pointer;opacity:0;transition:opacity .15s}.ctf-hero:hover .clip-toggle,.ctf-hero .clip-toggle:focus-visible{opacity:1}.ctf-hero .clip-toggle:disabled{display:none}.play-section{display:grid;grid-template-columns:1fr 1.35fr;gap:72px;align-items:center;padding:64px 48px;background:#070c15cf;border:1px solid #c3d9ff26;border-radius:16px;margin:12px 0 48px}.play-section h2{font-size:48px;line-height:1.16;font-weight:500;letter-spacing:-1.6px;margin:0}.has-wave-background .demonstration{background:#070a10;border-color:#a9c9ff26;border-radius:10px}.has-wave-background .guide-entry{padding:30px 32px;background:#090f1ac9;border:1px solid #c3d9ff24;border-radius:12px;transition:background .2s}.has-wave-background .guide-entry:hover{background:#101b2de8}.has-wave-background .guide-entry small{color:#aabbd1}.has-wave-background .release{max-width:1050px;padding:56px 48px;margin:48px auto;background:#070c15e8;border:1px solid #c3d9ff24;border-radius:14px}.has-wave-background .release-body{color:#c2cbd9}.has-wave-background .site-footer{padding-inline:20px}.has-wave-background .disclaimer{color:#99a5b7}

/* The guide keeps opaque reading surfaces over the animated field. */
.has-wave-background .shell{padding-top:8px}.has-wave-background .guide-title{padding-top:30px}.has-wave-background .guide-title>span{color:#a7b8ce}.has-wave-background .sections{border-bottom-color:#bed7ff24}.has-wave-background .workspace{gap:28px}.has-wave-background .directory{background:#070c15db;padding:18px;border:1px solid #b8d3ff24;border-radius:12px}.has-wave-background .search{background:#030810;border-color:#b8d3ff35;border-radius:7px}.has-wave-background .article{background:#070c15eb;padding:28px 32px 44px;border:1px solid #b8d3ff24;border-radius:12px}.has-wave-background .article-header{border-color:#bed7ff24}.has-wave-background .article-header h1{font-size:42px}.has-wave-background .lede{color:#c7d0df}.has-wave-background .ability{border-color:#bed7ff24}.has-wave-background .ability-body{color:#c7d0df}.has-wave-background .contents{padding-top:20px}.has-wave-background .article-neighbor{border-color:#bed7ff24}.has-wave-background .article-neighbor span{color:#d5dfed}.has-wave-background .entry:hover{background:#17233a}.has-wave-background .entry[aria-current=page]{background:#14233a;color:#edf5ff}.has-wave-background .details{color:#b8c6d8}.has-wave-background .details summary{color:#d4dfed}
@media(max-width:1100px){.has-wave-background section.hero{gap:20px;min-height:650px}.has-wave-background section.hero h1{font-size:60px}.play-section{padding:36px;gap:32px}.play-section h2{font-size:38px}.has-wave-background .workspace{gap:22px}.has-wave-background .article{padding:24px}}
@media(max-width:760px){body.has-wave-background main:not(.shell){padding:0 22px}.has-wave-background section.hero{grid-template-columns:1fr;gap:0;padding:42px 0 16px}.has-wave-background .hero-copy{padding-left:0}.has-wave-background section.hero h1{font-size:52px;letter-spacing:-2.5px}.ctf-hero{max-width:560px;width:100%;margin:24px auto 0}.play-section{grid-template-columns:1fr;padding:28px 20px;gap:28px;margin-bottom:30px}.play-section h2{font-size:30px}.play-section h2 br{display:none}.has-wave-background .guide-entry{padding:24px 20px}.has-wave-background .release{margin:30px 0;padding:30px 22px}.has-wave-background .article{padding:22px 18px}.has-wave-background .directory{padding:14px}.has-wave-background .site-footer{padding-inline:0}.has-wave-background .article-header h1{font-size:34px}.has-wave-background .hero-description{font-size:17px}}
.has-wave-background .term{color:color-mix(in srgb,var(--term-color,var(--blue)) 55%,#e5efff)}
.has-wave-background .article-neighbor small{color:#aebbd1}
.has-wave-background .stats,.has-wave-background .ability-meta,.has-wave-background table{font-variant-numeric:tabular-nums}
@media(prefers-reduced-motion:reduce){.wave-background{opacity:.58}}
