@import "https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700;800&family=DM+Sans:wght@400;450;500;550;600;650;700&display=swap";:root{color:#dfebe9;font-synthesis:none;--mint:#a2ebd8;--line:#ffffff13;--muted:#80949d;--display:"Barlow Condensed","Arial Narrow",sans-serif;background:#0b1520;font-family:DM Sans,system-ui,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,select{cursor:pointer}button,a,input,select{touch-action:manipulation}button{color:inherit;background:0 0;border:0}button:disabled{cursor:wait;opacity:.55}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline:2px solid var(--mint);outline-offset:4px}button:hover{color:var(--mint)}button[aria-pressed=true]{color:var(--mint);background:#a2ebd80b;border-color:#a2ebd87a!important}a{color:inherit;text-decoration:none}p{line-height:1.65}kbd{color:#c4d3d5;white-space:nowrap;border:1px solid #b0cacb25;border-bottom-width:2px;border-radius:4px;justify-content:center;align-items:center;padding:2px 5px;font:500 10px DM Sans,sans-serif;display:inline-flex}.hidden{display:none!important}.topbar{border-bottom:1px solid var(--line);align-items:center;gap:65px;height:77px;padding:0 3.4%;display:flex}.wordmark{letter-spacing:3px;white-space:nowrap;font-size:25px;font-weight:700}.brand-star{color:var(--mint);vertical-align:-2px;margin-right:7px;font-size:33px}.brand-dot{color:var(--mint)}nav{align-items:center;gap:32px;height:100%;font-size:12px;display:flex}nav .nav-active{border-bottom:2px solid var(--mint);align-items:center;gap:12px;height:100%;display:flex}nav span span{color:var(--mint);border:1px solid #a2ebd841;border-radius:3px;padding:2px 4px;font-size:9px}nav button{color:var(--muted);padding:0}nav button span{margin-left:12px}.gate-badge{letter-spacing:1.2px;color:var(--muted);align-items:center;gap:8px;margin-left:auto;font-size:9px;display:flex}.gate-badge i,.live-dot{background:var(--mint);border-radius:50%;width:5px;height:5px;display:inline-block;box-shadow:0 0 10px #a2ebd860}main{max-width:1600px;margin:auto;padding:32px 3.4% 0}.page-heading{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.eyebrow{letter-spacing:2px;color:var(--mint);margin:0 0 6px;font-size:9px;font-weight:600}h1{font:500 38px/1.1 var(--display);letter-spacing:.3px;margin:0}.heading-note{color:#bac9ca;text-align:right;margin:0;font-size:11px}.heading-note span{color:var(--muted)}.lab-layout{grid-template-columns:minmax(0,1fr) 264px;align-items:stretch;gap:18px;display:grid}.arena-shell{background:#0e1c29;border:1px solid #627c8140;border-radius:9px;align-self:start;overflow:hidden;box-shadow:0 15px 50px #0002}.arena-top{letter-spacing:1.2px;color:#94a8ad;justify-content:space-between;align-items:center;height:43px;padding:0 17px;font-size:9px;display:flex}.arena-top b{color:#e3f0eb;font-weight:500}.arena-top .live-dot{margin-right:7px}.separator{color:#4f686e;margin:0 9px}.arena-top>div{align-items:center;gap:15px;display:flex}.arena-top button{letter-spacing:0;padding:4px 0;font-size:10px}.arena-top #fullscreen{font-size:21px}.stage-wrap{aspect-ratio:16/9;background:#12243d;position:relative}#game{outline:0;width:100%;height:100%;display:block}.stage-caption{color:#d5edee9c;letter-spacing:2px;pointer-events:none;justify-content:space-between;font-size:8px;display:flex;position:absolute;top:20px;left:24px;right:24px}.stage-caption #clock{letter-spacing:1.5px;color:#d8e7e4;font-size:10px}.stage-overlay{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:4;background:#08152279;place-items:center;display:grid;position:absolute;inset:0}.intro-card,.pause-card{text-align:center;color:#edf9f4;padding:25px}.intro-card .eyebrow,.pause-card .eyebrow{letter-spacing:2.5px;font-size:10px}.intro-card h2,.pause-card h2{font:500 62px/1.1 var(--display);margin:12px 0}.intro-card p{color:#c4d6d8;margin:14px 0 23px;font-size:12px;line-height:1.9}.primary{background:var(--mint);color:#102b2d;border:1px solid var(--mint);border-radius:4px;justify-content:space-between;align-items:center;gap:20px;min-width:225px;margin:0 auto;padding:13px 22px;font-size:12px;font-weight:700;display:flex}.primary:hover{color:#102b2d;background:#c0ffe9}.primary span{font-size:20px}.intro-card small,.pause-card small{color:#a8bec5;margin-top:17px;font-size:8px;display:block}.fighter-hud{pointer-events:none;align-items:center;gap:13px;display:flex;position:absolute;bottom:17px}.fighter-hud.opponent{text-align:right;right:28px}.player-index{font:600 58px/1 var(--display);color:#d5f2ea1d}.fighter-name{letter-spacing:1.5px;font-size:12px;display:block}.fighter-name small{letter-spacing:.6px;color:var(--mint);margin-left:5px;font-size:7px}.opponent .fighter-name small{color:#f9baab}.fighter-hud strong{font:600 45px/.95 var(--display);color:#f1fff6;text-shadow:0 2px 15px #071b32;margin:4px 0;display:block}.fighter-hud strong span{margin-left:1px;font-size:25px}.stocks{letter-spacing:2px;color:var(--mint);margin-top:5px;font-size:9px}.opponent .stocks{color:#ffbcaa}.shield-meter{background:#bbcfd82a;width:95px;height:2px;margin-top:7px}.shield-meter i{background:var(--mint);height:100%;display:block}.opponent .shield-meter i{background:#ffb5a5}.opponent .shield-meter{margin-left:auto}#combo{font:600 26px var(--display);color:#fff1bd;pointer-events:none;position:absolute;top:90px;left:30px}.arena-bottom{color:#9eb0b5;justify-content:space-between;align-items:center;height:43px;padding:0 16px;font-size:9px;display:flex}.arena-bottom>span{align-items:center;gap:5px;display:flex}.arena-bottom kbd{padding:2px 4px;font-size:8px}.arena-bottom kbd:not(:first-child){margin-left:5px}.arena-bottom button{white-space:nowrap;font-size:9px}.arena-bottom button span{color:var(--mint);margin-left:8px}.character-panel{background:linear-gradient(160deg,#152a33,#101e2a 60%);border:1px solid #78948d26;border-radius:9px;padding:18px 18px 11px;position:relative;overflow:hidden}.character-heading{justify-content:space-between;align-items:center;display:flex}.character-heading .eyebrow{letter-spacing:1.2px;margin:0;font-size:8px}.role-pill{letter-spacing:.4px;color:#a7bcb9;border:1px solid #a2ebd826;border-radius:3px;padding:4px 5px;font-size:7px}.portrait-wrap{height:168px;margin:3px -10px -5px;position:relative;overflow:hidden}#portrait{object-fit:contain;z-index:1;width:100%;height:100%;position:relative}.portrait-orbit{border:1px solid #a2ebd822;border-radius:50%;width:140px;height:140px;position:absolute;top:17px;left:44px;box-shadow:0 0 70px #a2ebd810,inset 0 0 60px #a2ebd806}.portrait-orbit:after{content:"";border:1px dashed #a2ebd81c;border-radius:50%;position:absolute;inset:15px}.portrait-kanji{color:#d8fcea09;font-size:80px;position:absolute;top:45px;right:13px}.character-copy h2{font:500 42px/1 var(--display);margin:4px 0}.character-copy h2 span{color:#a2ebd849;vertical-align:5px;margin-left:10px;font-family:serif;font-size:17px}.subtitle{letter-spacing:2px;color:var(--mint);margin:7px 0;font-size:8px}.character-copy>p:last-child{color:#94a8ae;margin:9px 0 15px;font-size:10px;line-height:1.7}.mode-picker{border-top:1px solid var(--line);padding-top:12px}.mode-picker label,.pose-detail>label{letter-spacing:1.2px;color:#8da5ab;margin-bottom:8px;font-size:8px;display:block}select{color:#d6e7e4;background:#132632;border:1px solid #819c9b36;border-radius:4px;max-width:100%;padding:8px 9px;font-size:11px}select option{background:#132632}.mode-picker select{width:100%}.training-options{grid-template-columns:1fr 1fr;align-items:center;gap:10px;padding:12px 0 0;display:grid}.training-options>label{color:#9bb0b6;font-size:9px}.training-options select{padding:6px;font-size:9px}.damage-setting{grid-column:span 2;align-items:center;gap:8px;display:flex}.damage-setting label{color:#9bb0b6;white-space:nowrap;font-size:9px}.damage-setting input{width:100%;min-width:0;height:3px;accent-color:var(--mint)}.damage-setting output{color:#c6dbd3;min-width:26px;font-size:9px}.session-actions{border-top:1px solid var(--line);justify-content:space-between;gap:7px;margin-top:13px;padding-top:9px;display:flex}.session-actions button{padding:3px 0;font-size:9px}.session-actions kbd{margin-left:4px;font-size:7px}.panel-footnote{text-align:center;color:#68848d;margin:10px 0 0;font-size:7px}.section-heading{align-items:center;gap:30px;margin:25px 0 15px;display:flex}.section-heading h2{font:500 24px var(--display);letter-spacing:.3px;margin:0}.move-tabs{gap:5px;display:flex}.move-tabs button{color:#8ba2a9;border-radius:4px;padding:5px 11px;font-size:10px}.move-tabs .active{color:var(--mint);background:#a2ebd812}.section-hint{color:#6f8992;margin-left:auto;font-size:9px}.move-cards{gap:9px;display:flex}.move-card{text-align:left;background:#11212c;border:1px solid #72949326;border-radius:5px;flex:1;min-width:0;min-height:99px;padding:13px 14px;transition:background .15s,border-color .15s;position:relative}.move-card.selected{background:#1a3439;border-color:#a2ebd874}.move-card:hover{background:#1b323b}.move-number{letter-spacing:1px;color:#66838b;margin-bottom:6px;font-size:8px;display:block}.move-card.selected .move-number{color:var(--mint)}.move-card-name{font:500 20px var(--display);color:#dfebe6;margin-bottom:10px;display:block}.move-card kbd{color:#9bb5ba;border:0;padding:0;font-size:8px}.move-damage{color:#8ba49f;font-size:9px;position:absolute;bottom:13px;right:12px}.move-damage>span{color:var(--mint);margin-left:6px}.lab-tools{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:1fr 1.7fr .9fr;gap:28px;margin-top:16px;padding:18px 0 15px;display:grid}.move-detail h3{font:500 23px var(--display);margin:5px 0}.move-detail p{color:#89a0a8;max-width:310px;margin:6px 0;font-size:10px}.move-detail button{color:var(--mint);padding:5px 0;font-size:10px}.move-detail button span{margin-left:10px}.frame-detail{padding-top:3px}.frame-labels{letter-spacing:.8px;color:#879fa6;justify-content:space-between;font-size:8px;display:flex}.frame-labels b{color:#dceade;margin-left:4px;font-weight:500}.frame-track{gap:3px;height:8px;margin-top:12px;display:flex;position:relative}.frame-track i{border-radius:2px}.startup{background:#dcbd85}.active-frames{background:#9de4ce}.recovery{background:#405b70}#frame-cursor{opacity:0;background:#fff;width:2px;height:16px;position:absolute;top:-4px}.frame-detail>p{color:#8098a2;justify-content:space-between;gap:10px;margin:10px 0 16px;font-size:8px;display:flex}#frame-status{color:#acbfbf}.inspector-controls{align-items:center;gap:7px;display:flex}.inspector-controls>button,.inspector-controls>label{white-space:nowrap;border:1px solid #819c9b36;border-radius:4px;padding:6px 8px;font-size:9px}.inspector-controls>label{color:#8da6ab;align-items:center;gap:5px;padding:0 6px;display:flex}.inspector-controls select{background:0 0;border:0;padding:6px 0;font-size:9px}.pose-detail{border-left:1px solid var(--line);padding-left:24px}.pose-detail select{width:100%;font-size:10px}.pose-detail p{color:#6f8992;font-size:9px;line-height:1.8}footer{color:#5e7a84;letter-spacing:.7px;justify-content:space-between;padding:21px 0;font-size:8px;display:flex}footer b{margin-left:14px;font-weight:400}footer button{color:#9bb6ba;margin-left:15px;font-size:8px}.touch-controls{display:none}dialog{color:#dcebe7;background:#11222f;border:1px solid #6da49e55;border-radius:12px;width:calc(100% - 36px);max-width:780px;padding:38px;box-shadow:0 30px 120px #0008}dialog::backdrop{-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#07131bcc}dialog h2{font:500 43px/1.12 var(--display);margin:15px 0 22px}dialog h3{font:500 24px var(--display);margin:13px 0}dialog p{color:#a1b8be;font-size:12px}.dialog-close{color:#90b0b6;font-size:28px;position:absolute;top:8px;right:15px}.control-grid{grid-template-columns:1fr 1fr;gap:28px;display:grid}.control-grid p{margin:8px 0;font-size:10px}.dialog-note{border-top:1px solid var(--line);margin-top:24px;padding-top:17px;color:#77969f!important;font-size:10px!important}.vision-grid{grid-template-columns:repeat(3,1fr);gap:20px;margin-top:27px;display:grid}.vision-grid article>span{letter-spacing:1px;color:var(--mint);font-size:8px}.vision-grid p{font-size:10px}.arena-shell:fullscreen{background:#07111b;border:0;border-radius:0;flex-direction:column;justify-content:center;display:flex}.arena-shell:fullscreen .stage-wrap{width:min(100vw,177.778vh - 152.889px);margin:0 auto}:is(.arena-shell:fullscreen .arena-top,.arena-shell:fullscreen .arena-bottom){flex-shrink:0;width:100%}.arena-shell:fullscreen .arena-bottom{justify-content:center;gap:35px}@media (width>=1500px){.lab-layout{grid-template-columns:minmax(0,1fr) 300px}.portrait-wrap{height:205px}.character-copy>p:last-child{font-size:12px}.character-panel{padding:20px}.character-copy h2{font-size:48px}.training-options>label,.training-options select,.damage-setting label,.session-actions button{font-size:11px}.mode-picker select{padding:10px}.panel-footnote{font-size:9px}.arena-bottom{font-size:11px}.arena-top{font-size:10px}}@media (width<=1100px){.topbar{gap:25px}.gate-badge{display:none}.lab-layout{grid-template-columns:minmax(0,1fr) 235px;gap:12px}.character-panel{padding:14px}.portrait-wrap{height:130px}.character-copy h2{font-size:34px}.character-copy>p:last-child{margin:7px 0 10px}.arena-bottom>span{gap:4px;font-size:0}.arena-bottom kbd{font-size:8px}.lab-tools{grid-template-columns:1fr 1.6fr;gap:17px}.pose-detail{border-left:0;grid-column:span 2;align-items:center;gap:15px;padding-left:0;display:flex}.pose-detail label{margin:0}.pose-detail select{width:180px}.pose-detail p{margin:0}.move-card{padding:10px}.move-card-name{font-size:18px}.move-damage{right:9px}.section-hint{display:none}}@media (width<=800px){main{padding:24px 18px 0}.topbar{gap:20px;height:65px;padding:0 18px}.wordmark{letter-spacing:2px;font-size:20px}.brand-star{font-size:27px}nav{gap:14px;font-size:10px}nav button{font-size:9px}.lab-layout{grid-template-columns:1fr}.character-panel{grid-template-columns:1fr 1fr;gap:0 24px;padding:16px;display:grid}.character-heading{grid-column:span 2}.portrait-wrap{display:none}.character-copy{grid-row:span 3}.character-copy h2{margin-top:15px}.mode-picker{border:0;padding-top:12px}.session-actions{grid-column:2}.panel-footnote{grid-column:span 2}.page-heading{margin-bottom:18px}.heading-note{font-size:9px}h1{font-size:32px}.move-cards{padding-bottom:4px;overflow-x:auto}.move-card{min-width:135px}.lab-tools{grid-template-columns:1fr 1.6fr}.inspector-controls{flex-wrap:wrap}.stage-caption{top:14px;left:17px;right:17px}.fighter-hud{bottom:12px}.fighter-hud strong{font-size:35px}.player-index{font-size:43px}.fighter-name{font-size:10px}.shield-meter{width:65px}.stocks{font-size:7px}.intro-card h2{font-size:44px}.intro-card p{margin:10px 0 15px;font-size:10px}.intro-card small{font-size:7px}.intro-card{padding:15px}.primary{min-width:195px;padding:9px 15px}.stage-caption{font-size:7px}.section-heading{gap:15px}.section-heading h2{font-size:22px}.touch-controls{justify-content:space-between;gap:10px;margin:16px 0;display:flex}.touch-controls>div{flex-wrap:wrap;gap:5px;display:flex}.touch-controls button{touch-action:none;-webkit-user-select:none;user-select:none;background:#16303a;border:1px solid #a2ebd842;border-radius:5px;min-width:36px;min-height:40px;padding:8px;font-size:10px}.touch-controls button:active{background:#336455}footer{gap:12px;font-size:7px;line-height:1.8}footer b{margin-left:0;display:block}}@media (width<=500px){.topbar nav .nav-active{display:none}.topbar nav{margin-left:auto}.heading-note{display:none}.page-heading{margin-bottom:16px}.character-panel{gap:0 14px}.arena-top{height:35px;padding:0 11px;font-size:7px}.arena-bottom{height:36px;padding:0 10px}.stage-wrap{aspect-ratio:4/3}#game{object-fit:contain}.stage-caption{top:10px}.fighter-hud.player{left:10px}.fighter-hud.opponent{right:10px}.player-index{display:none}.fighter-hud strong{font-size:29px}.fighter-name{font-size:8px}.intro-card h2{font-size:40px}.intro-card .eyebrow{font-size:8px}.intro-card small{max-width:220px;margin:10px auto 0}.stage-caption>span:first-child{display:none}.stage-caption{justify-content:flex-end}.lab-tools{grid-template-columns:1fr}.pose-detail{flex-wrap:wrap;grid-column:auto}.pose-detail p{display:none}.control-grid,.vision-grid{grid-template-columns:1fr}.section-heading{flex-wrap:wrap;gap:10px}.move-tabs{margin-left:auto}.move-tabs button{padding:5px 7px;font-size:9px}dialog{max-height:85vh;padding:27px}dialog h2{font-size:35px}.fighter-hud{bottom:9px}.stocks{letter-spacing:1px}.shield-meter{margin-top:4px}.portrait-wrap{height:100px}.character-copy>p:last-child{font-size:9px}.panel-footnote{margin:8px 0 0}footer>span:last-child{text-align:right;max-width:180px}.touch-controls{flex-direction:column}.touch-controls>div{justify-content:center}.touch-controls button{min-width:48px}.pose-detail select{flex:1}.stage-caption #clock{font-size:8px}.pause-card h2{font-size:44px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}.roster{grid-template-columns:repeat(5,1fr);gap:12px;margin:0 0 24px;display:grid}.roster button{text-align:left;background:linear-gradient(145deg,#20313a,#101b23);border:1px solid #263b47;border-radius:10px;padding:0 12px 16px;position:relative;overflow:hidden}.roster button[aria-pressed=true]{border-color:var(--fighter);box-shadow:inset 0 -3px var(--fighter)}.roster canvas{object-fit:contain;width:100%;height:130px}.roster strong,.roster small{display:block}.roster strong{color:var(--fighter);font-size:22px}.roster small{color:#95aab6;font-size:12px}.rival-picker{color:#96aaa9;justify-content:space-between;align-items:center;margin:12px 0;font-size:12px;display:flex}#fighter-traits{color:#a9bdc3;font-size:12px;line-height:1.6}.online-panel{background:#12212b;border:1px solid #2d424b;border-radius:12px;grid-template-columns:1fr 2fr;gap:20px;margin:24px 0;padding:24px;display:grid}.online-panel h2{margin:4px 0}.online-panel p{color:#b3c6cb}.online-actions{flex-wrap:wrap;align-content:center;gap:8px;display:flex}.online-actions button,.online-actions input{color:#def2ef;background:#1b303a;border:1px solid #3a555e;border-radius:6px;padding:11px}.online-actions input{width:130px}#room-players{color:#bad3cf;grid-column:1/-1;font-size:14px}@media (width<=650px){.roster{gap:5px}.roster canvas{height:85px}.roster button{padding:0 5px 10px}.roster strong{font-size:16px}.roster small{font-size:9px}.online-panel{grid-template-columns:1fr;padding:16px}}#account-form{gap:14px;margin:20px 0;display:grid}#account-form label{color:#c4d7d8;gap:6px;display:grid}#account-form input,#account-form select{color:#fff;background:#15252e;border:1px solid #39505b;border-radius:6px;padding:12px}#progress-content button,#refresh-progress{color:#b9f4e5;background:#1b353d;border:1px solid #45636a;border-radius:6px;margin:4px 0;padding:10px 16px}#progress-content h3{margin-top:24px}button:disabled{opacity:.45;cursor:not-allowed}:root{--gold:#ead5a2;--mint:#b6efe0;--display:"Barlow Condensed","Arial Narrow",sans-serif}@media (pointer:coarse){.touch-controls{display:flex}.touch-controls button{touch-action:none;-webkit-user-select:none;user-select:none}}body{background:#080e1c}button{transition:background .16s,transform .16s}button:active{transform:translateY(1px)}.topbar{z-index:8;background:#080e1cf2;border-bottom:1px solid #c9b88130;gap:35px;height:72px;position:relative}.wordmark{font-family:var(--display);letter-spacing:2px;font-style:italic;font-weight:800}.brand-dot{display:none}.brand-star{color:var(--gold)}.topbar nav{flex:1;justify-content:flex-end}.topbar nav button{color:#d0d7e4;font-size:12px}.gate-badge{display:none}.nav-active{color:var(--gold);letter-spacing:2px;font-size:9px;border:0!important}body[data-screen=home] main,body[data-screen=game] .home-screen{display:none}.home-screen{isolation:isolate;background:linear-gradient(90deg,#070e20e8 0%,#080e2070 40%,#080e2000 70%),url(/assets/menu-shrine.png) 50%/cover;min-height:calc(100svh - 72px);padding:clamp(32px,6vh,80px) 7vw 90px;position:relative}.home-screen:after{content:"";z-index:-1;background:linear-gradient(#0000 75%,#080e1c);position:absolute;inset:0}.home-copy{max-width:560px}.home-copy>.eyebrow{letter-spacing:4px;color:var(--gold);font-size:11px}.home-copy h1{font:800 italic clamp(76px,8vw,140px)/.9 var(--display);letter-spacing:-3px;color:#f4f4ed;text-shadow:0 4px 30px #030717;margin:24px 0;position:relative}.home-copy h1 span{color:var(--gold)}.home-copy h1 i{color:#e8f8f2;font-size:40px;font-style:normal;position:absolute;top:-24px;right:45px}.home-tagline{color:#bfc8db;margin-bottom:36px;font-size:14px}.home-actions{gap:10px;max-width:380px;display:grid}.home-actions button{text-align:left;clip-path:polygon(0 0,100% 0,96% 100%,0 100%);background:linear-gradient(110deg,#132540eb,#111b31b0);border:1px solid #7b94b650;border-left:3px solid #8997b0;padding:14px 25px;position:relative}.home-actions button:hover{border-left-color:var(--gold);background:#294562;transform:translate(5px)}.home-actions small{letter-spacing:2px;color:#99adca;font-size:8px;display:block}.home-actions strong{font:700 29px var(--display);letter-spacing:1px;color:#edf1fa;display:block}.home-actions button>span{font-size:24px;position:absolute;top:25px;right:26px}.home-actions .menu-primary{color:#151c2b;background:linear-gradient(100deg,#edd9a6,#bc9960);border-color:#e9d09c}.home-actions .menu-primary strong,.home-actions .menu-primary small{color:#162238}.home-input{color:#8e9db7;letter-spacing:1.4px;margin-top:24px;font-size:10px}.home-stage{text-align:right;border-right:2px solid var(--gold);padding-right:20px;position:absolute;bottom:120px;right:7vw}.home-stage>span{letter-spacing:3px;color:var(--gold);font-size:9px}.home-stage strong{font:600 30px var(--display);letter-spacing:4px;display:block}.home-stage p{color:#b5c1d5;margin:4px 0;font-size:11px}.home-bottom{letter-spacing:2px;color:#b3bdd0;justify-content:space-between;gap:16px;font-size:9px;display:flex;position:absolute;bottom:25px;left:7vw;right:7vw}.home-bottom>span:first-child{color:var(--gold)}main{max-width:1600px;padding-top:26px}.page-heading h1{letter-spacing:1px;font-weight:700}.roster{gap:10px}.roster button{background:linear-gradient(130deg,#25364a,#111a2d);border-color:#54668055;border-radius:2px;min-height:175px;box-shadow:0 8px 24px #0003}.roster button:after{content:"";pointer-events:none;background:linear-gradient(#0000 35%,#080e1cbf);position:absolute;inset:0}.roster strong,.roster small{z-index:1;position:relative}.roster strong{font:700 italic 28px var(--display);letter-spacing:1px;color:#f1f4f7}.roster small{text-transform:uppercase;letter-spacing:1.5px;color:var(--fighter);font-size:10px}.roster canvas{height:125px;transition:transform .2s}.roster button:hover canvas{transform:scale(1.08)}.roster button[aria-pressed=true]{box-shadow:inset 0 -4px var(--fighter),0 0 22px #a2ebd81c;background:linear-gradient(130deg,#40545f,#152b36)}.arena-shell,.character-panel,.online-panel{border-color:#6e819d50;border-radius:3px}.arena-shell{box-shadow:0 16px 65px #0007}.arena-top{background:#0e172a;height:42px}.arena-top button{padding:8px;font-size:11px}.arena-bottom{background:#0e172a}.stage-caption{justify-content:center;top:14px}.stage-caption>span:first-child{display:none}.stage-caption #clock{text-align:center;min-width:100px;font:600 20px var(--display);color:#fff1d3;letter-spacing:2px;clip-path:polygon(10% 0,90% 0,100% 100%,0 100%);background:#091326d9;border:1px solid #d6c59760;padding:7px 18px}.fighter-hud{background:linear-gradient(110deg,#102d47ee,#102035c9);border-bottom:3px solid #a2ebd8;gap:8px;min-width:210px;padding:8px 20px 8px 8px;bottom:10px;transform:skew(-4deg);box-shadow:0 5px 20px #0005}.fighter-hud>*{transform:skew(4deg)}.fighter-hud.opponent{background:linear-gradient(110deg,#402535dd,#271e35ee);border-color:#ffab91;flex-direction:row-reverse;padding:8px 8px 8px 20px}.fighter-hud.player{left:22px}.fighter-hud.opponent{right:22px}.hud-portrait{object-fit:cover;filter:drop-shadow(0 0 6px #9de9db50);align-self:flex-end;width:72px;height:82px}.player-index{display:none}.fighter-name{font:700 18px var(--display);letter-spacing:1px}.fighter-name small{font:600 8px system-ui}.fighter-hud strong{font:800 italic 47px/.9 var(--display);text-shadow:2px 3px #0009}.shield-meter{width:95px;height:3px}.stocks{font-size:9px}.character-panel{background:linear-gradient(150deg,#263449,#101a2b)}.character-copy h2{font-style:italic;font-weight:700}.portrait-wrap{height:185px}.character-copy>p:last-child{font-size:12px}.primary{color:#141e2b;background:linear-gradient(120deg,#eeddb3,#c2a56b);border-color:#eddbaf;border-radius:2px;font-size:14px}.intro-card h2,.pause-card h2{font-style:italic;font-weight:700}.stage-overlay{background:#070e1cc4}.move-card,.online-actions button{border-radius:2px}.online-panel{background:linear-gradient(120deg,#1b2940,#111b2c)}.online-panel h2{font:700 30px var(--display)}dialog{background:linear-gradient(150deg,#24334d,#0c1527);border:1px solid #dbc18c66;border-radius:3px}dialog h2{font-weight:700}.dialog-close{min-width:44px;min-height:44px}.touch-stick,body.arena-focus .topbar,body.arena-focus main>:not(.lab-layout),body.arena-focus .character-panel{display:none}body.arena-focus main{max-width:none;padding:0}body.arena-focus .lab-layout{display:block}body.arena-focus .arena-shell{border:0;flex-direction:column;justify-content:center;min-height:100svh;display:flex}body.arena-focus .stage-wrap{flex:none;width:min(100vw,177.778svh - 151.111px);margin:auto}.arena-focus .arena-top{z-index:6;position:absolute;top:0;left:0;right:0}.arena-focus .arena-bottom{width:100%;margin-top:auto}@media (width<=800px),(pointer:coarse){.topbar{gap:15px;padding:0 16px}.topbar nav{gap:12px}.topbar nav button{font-size:10px}.topbar .nav-active{display:none}.home-screen{background-position:60%;padding:35px 7vw 90px}.home-copy h1{font-size:90px}.home-stage,.home-bottom>span:last-child{display:none}.home-actions{max-width:340px}.home-tagline{max-width:260px}.roster strong{font-size:22px}.roster small{letter-spacing:0;font-size:8px}.fighter-hud{gap:2px;min-width:155px;padding:6px}.fighter-hud.opponent{padding:6px}.hud-portrait{width:50px;height:65px}.fighter-hud strong{font-size:36px}.fighter-name{font-size:14px}.shield-meter{width:65px}.touch-controls{background:#0c1729;flex-direction:row;align-items:center;gap:8px;min-height:135px;margin:0;padding:10px}.touch-controls>div:not(.touch-stick){justify-content:center;gap:7px;max-width:230px}.touch-controls button{background:#1b2c43;border:1px solid #8daccd70;border-radius:50%;min-width:52px;min-height:48px;font-size:10px;font-weight:700}.touch-controls [data-touch=jump]{color:#121c2d;background:#c6b482}.touch-controls [data-touch=attack]{background:#366b6b}.touch-controls [data-touch=special]{background:#514574}.touch-stick{touch-action:none;-webkit-user-select:none;user-select:none;background:radial-gradient(circle,#344a6566,#192740);border:1px solid #809bbc66;border-radius:50%;flex:none;width:110px;height:110px;position:relative;display:block!important}.touch-stick i{pointer-events:none;background:linear-gradient(#8098ac,#334b62);border:2px solid #abc6d5;border-radius:50%;width:45px;height:45px;display:block;position:absolute;top:31px;left:31px;box-shadow:0 4px 14px #0008}.touch-stick span{text-align:center;color:#abc0d3;pointer-events:none;width:100%;font-size:7px;position:absolute;bottom:4px}.touch-controls>div:nth-child(2){display:none}.arena-top button{padding:6px;font-size:10px}.arena-focus .stage-wrap{width:100vw}.arena-focus .arena-shell{justify-content:flex-start;padding-top:40px}.arena-focus .arena-bottom{display:none}.arena-focus .touch-controls{width:100%;margin-top:auto}.arena-focus .stage-wrap{margin:0 auto}.stage-wrap{aspect-ratio:16/9}.fighter-hud.player{left:8px}.fighter-hud.opponent{right:8px}.fighter-hud{bottom:5px}.roster button{min-height:140px}.roster canvas{height:90px}}@media (width<=500px){.home-copy h1{font-size:76px}.home-copy h1 i{right:5px}.home-actions strong{font-size:26px}.home-bottom{letter-spacing:1px}.home-copy>.eyebrow{letter-spacing:2px;font-size:8px}.topbar nav button{font-size:9px}.topbar{gap:4px}.wordmark{font-size:19px}.topbar #vision-button{display:none}main{padding:20px 10px 0}.roster{gap:4px}.roster strong{font-size:18px}.roster button{min-height:120px;padding:0 5px 8px}.roster canvas{height:78px}.roster small{font-size:7px}.hud-portrait{width:35px;height:44px}.fighter-hud{gap:0;min-width:110px}.fighter-hud strong{font-size:27px}.fighter-name{font-size:12px}.fighter-name small,.stocks{font-size:6px}.shield-meter{width:52px;margin-top:3px}.stage-caption #clock{min-width:75px;padding:3px 10px;font-size:12px}.stage-caption{top:5px}.intro-card h2{margin:5px;font-size:32px}.intro-card p{margin:5px 0 9px;font-size:9px}.intro-card small{display:none}.intro-card .eyebrow{font-size:7px}.intro-card{padding:12px}.primary{min-width:170px;padding:8px 15px;font-size:12px}.character-panel{display:block}.character-copy>p:last-child{font-size:12px}.portrait-wrap{display:none}.session-actions button{padding:8px;font-size:12px}.mode-picker select{font-size:13px}.page-heading h1{font-size:28px}}@media (pointer:coarse) and (orientation:landscape){body.arena-focus .stage-wrap{width:min(100vw,177.778svh - 71.1111px)}.arena-focus .touch-controls{pointer-events:none;z-index:5;background:0 0;align-items:flex-end;padding:0;position:fixed;inset:70px 12px 8px}.arena-focus .touch-controls>div{pointer-events:auto}.arena-focus .touch-controls>div:not(.touch-stick){max-width:180px}.arena-focus .touch-controls button{background-color:#162d46b8;min-width:48px;min-height:44px}.arena-focus .touch-stick{background:#13263ca0}.arena-focus .fighter-hud{transform-origin:bottom;bottom:5px;transform:scale(.8)}.arena-focus .fighter-hud.player{left:26%}.arena-focus .fighter-hud.opponent{right:26%}}@supports (padding:max(0px)){.arena-focus .arena-top{padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right))}.touch-controls{padding-bottom:max(10px,env(safe-area-inset-bottom))}}@media (pointer:coarse){.touch-controls{justify-content:space-between}.arena-focus .touch-controls [data-touch=jump]{color:#121c2d;background:#c6b482}}@media (width<=800px) and (orientation:portrait){body.arena-focus .arena-shell{background:radial-gradient(#22374e,#080e1c);justify-content:center}body.arena-focus .stage-wrap{margin:0 auto}body.arena-focus .touch-controls{background:#0c1729a6;margin-top:20px}.page-heading{flex-wrap:wrap;gap:10px}.page-heading #enter-battle{min-width:150px;margin:0}.arena-top>span{white-space:nowrap;font-size:7px}.arena-top>div{gap:0}.arena-top button{padding:7px;font-size:9px}}
