
:root{color-scheme:dark;--bg:#101617;--panel:#172021;--line:#344041;--muted:#95a5a3;--text:#eeeedd;--orange:#ff784b;--mint:#9ed5c5;--mono:'Consolas','Courier New',monospace;--display:'Impact','Arial Narrow',sans-serif}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif;font-size:14px;background-image:radial-gradient(ellipse at 50% 30%,#23302c66,transparent 65%)}button,a,input{-webkit-tap-highlight-color:transparent}button{font:700 11px var(--mono);letter-spacing:.06em;color:var(--text);cursor:pointer;border:1px solid var(--line);background:transparent;min-height:44px;padding:12px 17px;transition:background .15s,color .15s,border-color .15s}button:hover{background:#293535;border-color:#90a09b}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--mint);outline-offset:4px}button:active{transform:translateY(1px)}[hidden]{display:none!important}.topbar{max-width:1480px;margin:0 auto;padding:25px 32px 23px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #2e3939}.brand{display:flex;align-items:center;gap:12px;color:var(--text);text-decoration:none;font:25px/.84 var(--display);letter-spacing:.01em}.brand-mark{background:var(--orange);color:var(--bg);font:40px/.8 var(--display);width:47px;height:48px;display:flex;align-items:center;justify-content:center;position:relative;transform:skew(-7deg);letter-spacing:-18px;padding-right:18px}.brand-mark span{transform:rotate(180deg);margin-top:4px}.brand-sub{font:8px var(--mono);letter-spacing:.08em;display:block;margin-top:8px}nav{display:flex;gap:9px}nav button{border:0;color:#bfc8c2}nav button span{color:var(--orange);margin-left:8px}.page-grid{max-width:1480px;margin:30px auto 0;padding:0 25px;display:grid;grid-template-columns:minmax(0,160px) minmax(0,1040px) minmax(0,160px);gap:24px;align-items:start}.cabinet{border:1px solid #47514b;min-width:0;box-shadow:0 14px 50px #0004}.cabinet-meta,.cabinet-bottom{display:flex;align-items:center;justify-content:space-between;font:9px var(--mono);letter-spacing:.08em;padding:14px 17px;background:#1d2725;gap:10px}.cabinet-meta{border-bottom:1px solid var(--line)}.muted{color:var(--muted)}.orange{color:var(--orange)}.live-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--mint);margin-right:7px;box-shadow:0 0 8px #9ed5c533}.stage{position:relative;aspect-ratio:1000/540;overflow:hidden;background:#132324}canvas{display:block;width:100%;height:100%}.stage:after{content:'';pointer-events:none;position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent,transparent 3px,#03100c12 4px);z-index:2}.menu-hero{position:absolute;inset:9% 17% 10%;display:flex;align-items:center;flex-direction:column;justify-content:center;text-align:center;z-index:3}.eyebrow{font:10px var(--mono);letter-spacing:.2em;color:var(--orange);display:block}.menu-hero .eyebrow{color:#b2cabd;font-size:clamp(7px,.85vw,11px)}h1{font:clamp(54px,6.4vw,100px)/.81 var(--display);letter-spacing:-.018em;transform:rotate(-4deg);margin:21px 0 12px;text-shadow:4px 5px 0 #122523,6px 7px 0 #92a29144;position:relative}h1>span:not(.title-star){color:var(--orange)}h1 .title-star{position:absolute;right:-32px;top:7px;font:35px Arial;color:var(--orange)}.menu-hero p{font-size:clamp(10px,1.1vw,15px);color:#ced4c6;margin:9px 0 22px}.primary{background:var(--orange);color:#162020;border:1px solid #ffad79;box-shadow:3px 3px 0 #0c1615;padding:16px 23px;font-size:12px;min-height:49px}.primary:hover{background:#ff986f;border-color:#ffc5a2;color:#0b1313}.primary span{margin-left:25px;font-size:19px;line-height:10px}.hero-footnote{font:7px var(--mono);letter-spacing:.13em;color:#a5b8ad;margin-top:17px}.arena-floor-label{position:absolute;bottom:11px;left:16px;right:16px;display:flex;justify-content:space-between;color:#aab8a58c;font:7px var(--mono);letter-spacing:.1em;z-index:3}.selection{padding:21px 18px 0;background:#141d1d;border-top:1px solid #384742}.section-label{display:flex;justify-content:space-between;font:10px var(--mono);letter-spacing:.07em;margin-bottom:14px;gap:8px}.section-label .muted{font-size:8px}.opponents{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.opponent-card{position:relative;text-align:left;padding:0;overflow:hidden;background:#202927;border:1px solid #3b4540;min-width:0}.opponent-card[aria-pressed=true]{border-color:var(--orange);box-shadow:inset 0 -3px var(--orange)}.opponent-card:hover{background:#2b3531}.portrait{height:83px;overflow:hidden;background:radial-gradient(ellipse at bottom,#58605645,transparent 70%);border-bottom:1px solid #39443d;position:relative}.portrait canvas{width:100%;height:100%}.card-number{position:absolute;left:9px;top:9px;font:8px var(--mono);color:#a7b6a7}.selected-mark{position:absolute;right:8px;top:7px;font-size:13px;color:var(--orange);display:none}.opponent-card[aria-pressed=true] .selected-mark{display:block}.card-body{padding:10px 10px 12px}.card-body b{font:clamp(13px,1.2vw,19px) var(--display);letter-spacing:.02em;display:block;white-space:nowrap}.card-body .difficulty{display:flex;align-items:center;justify-content:space-between;color:var(--mint);font:8px var(--mono);letter-spacing:.09em;margin-top:8px}.difficulty-bars{display:flex;gap:2px}.difficulty-bars i{width:5px;height:7px;background:#47504a}.difficulty-bars i.lit{background:var(--accent)}.card-desc{font:8px var(--mono);color:#a2aea2;display:block;margin-top:7px;letter-spacing:0}.opponent-intel{min-height:49px;display:flex;align-items:center;gap:9px;font:9px/1.5 var(--mono);color:#b4bfb1}.opponent-intel p{flex:1}.intel-dot{color:var(--orange);font-size:15px}.availability{font-size:7px;color:#839587}.cabinet-bottom{font-size:8px;border-top:1px solid #364039;padding:12px 17px}.ad{border:1px dashed #34403b;color:#657870;font:8px var(--mono);letter-spacing:.14em;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px}.ad-side{height:600px;margin-top:36px;position:relative;background:linear-gradient(135deg,#18211d55,transparent)}.ad-side>span:first-child{position:absolute;top:18px;font-size:7px;letter-spacing:.13em}.ad-cross{font:30px var(--mono);color:#34443c}.ad small{font-size:7px}.ad-bottom{grid-column:2;min-height:90px;background:#17201c33}.ad-bottom small{color:#485d52}footer{max-width:1000px;margin:25px auto 30px;display:flex;justify-content:space-between;padding:0 20px;font:7px var(--mono);letter-spacing:.1em;color:#82958b}.hud{position:absolute;left:3%;right:3%;top:5%;display:grid;grid-template-columns:1fr 55px 1fr;gap:18px;z-index:4}.fighter-label{display:flex;justify-content:space-between;align-items:center;font:16px var(--display);letter-spacing:.03em;margin-bottom:8px;text-shadow:1px 2px #000}.fighter-label small{font:8px var(--mono);color:var(--mint);margin-left:6px}.fighter-label>span{font:11px var(--mono)}.health-track{height:14px;background:#0c1616;border:1px solid #a2c2ad55;padding:2px;transform:skew(-9deg)}.health-fill{width:100%;height:100%;background:repeating-linear-gradient(90deg,transparent 0,transparent 18px,#0004 19px,#0004 21px),var(--mint);transition:width .12s}.enemy-hud .health-fill{background:repeating-linear-gradient(90deg,transparent 0,transparent 18px,#0004 19px,#0004 21px),var(--orange)}.energy-track{height:3px;background:#14201b;margin:6px 1px}.energy-track>div{height:100%;width:100%;background:#d8d5a1;transition:width .1s}.clock{text-align:center}.clock>b{font:32px/.9 var(--display)}.clock button{display:block;padding:3px;margin:5px auto 0;min-height:30px;min-width:36px;border-color:#657568;font-size:14px;background:#0c171ccc}.announcement{position:absolute;left:5%;right:5%;top:34%;z-index:5;text-align:center;pointer-events:none;color:var(--text);font:clamp(36px,7vw,95px)/1 var(--display);font-style:italic;text-shadow:4px 5px #101919;letter-spacing:-.03em}.announcement small{display:block;font:11px var(--mono);letter-spacing:.15em;color:var(--orange);margin-bottom:12px}.combat-controls{padding:18px 18px 0;border-top:1px solid #43554a;background:#17211e;display:flex;flex-wrap:wrap;gap:12px;align-items:stretch}.control-group{display:flex;gap:7px;flex:1}.control-group.attacks{flex:1.36}.control-group button{flex:1;padding:10px 4px;min-width:0;background:#242f2a;border-bottom:3px solid #536355;touch-action:none;user-select:none;-webkit-user-select:none}.control-group button b{display:block;font:11px var(--mono);letter-spacing:0}.control-group button small{display:block;font:7px var(--mono);color:#98aa99;margin-top:5px}.control-group button kbd{display:block;margin:0 auto 7px;border:none;padding:0;color:var(--mint);background:none;font-size:10px}.control-group.attacks button{border-color:#845d41}.control-group.attacks kbd{color:var(--orange)}.control-group button.pressed{background:#577061;border-color:var(--mint)}.control-group.attacks button.pressed{background:#654833;border-color:var(--orange)}.control-divider{width:1px;background:#405045}.combat-tip{width:100%;font:10px var(--mono);color:var(--mint);text-align:center;min-height:12px;margin:2px 0 15px}dialog{border:1px solid #687366;background:#1b2723;color:var(--text);padding:34px;max-width:600px;width:calc(100% - 28px);max-height:90dvh;box-shadow:10px 10px 0 #0a1519;overflow:auto}dialog::backdrop{background:#061214dd;backdrop-filter:blur(5px)}dialog h2{font:42px/.98 var(--display);margin:15px 0 22px}dialog h3{font:17px var(--display);color:var(--mint);letter-spacing:.03em}dialog p{font-size:13px;line-height:1.7;color:#bfccbb}dialog .primary,dialog .secondary{display:block;width:100%;margin-top:17px}.secondary{border-color:#62735f}.dialog-close{position:absolute;right:10px;top:8px;border:0;font:25px Arial;padding:5px 14px}.manual-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.manual-grid p{line-height:2.3;font-size:12px}kbd{font:10px var(--mono);border:1px solid #6b7866;border-radius:3px;padding:2px 5px;background:#2a382d}.callout{padding:15px;background:#2b382a;border-left:3px solid var(--orange);font-size:12px}.callout p{margin:7px 0 0;font-size:12px}.callout b{font:11px var(--mono);letter-spacing:.06em}.setting{display:grid;grid-template-columns:130px 1fr 32px;align-items:center;gap:13px;margin:23px 0;font-size:12px}.setting input{width:100%;accent-color:var(--orange)}.setting output{font:11px var(--mono);color:var(--orange)}.check-setting{display:flex;justify-content:space-between}.check-setting input{width:22px;height:22px}.setting small{display:block;color:var(--muted);margin-top:6px;font-size:10px}.stats-panel{border-top:1px solid var(--line);padding-top:20px;font:11px/1.9 var(--mono);color:var(--mint)}.result-stats{display:flex;gap:10px;margin:22px 0}.result-stats>div{flex:1;padding:15px 5px;background:#25342a;text-align:center}.result-stats b{display:block;font:29px var(--display);color:var(--orange)}.result-stats span{font:8px var(--mono);color:var(--muted)}.noscript{padding:30px;background:#763b23}.playing .stage{touch-action:manipulation}
@media(min-width:1600px){h1{font-size:100px}}
@media(max-width:1150px){.page-grid{grid-template-columns:minmax(0,1fr);max-width:1040px;padding:0 24px;margin-top:22px}.ad-side{display:none}.ad-bottom{grid-column:1}.topbar{max-width:1040px;padding:22px 24px}h1{font-size:clamp(60px,9vw,100px)}.card-body b{font-size:20px}.menu-hero .eyebrow{font-size:10px}.menu-hero p{font-size:14px}.portrait{height:94px}}
@media(max-width:600px){.topbar{padding:16px 14px;gap:5px}.brand{font-size:20px;gap:8px}.brand-mark{width:37px;height:40px;font-size:34px}.brand-sub{display:none}nav{gap:0}nav button{font-size:8px;padding:9px 7px}nav button span{margin-left:2px}.settings-word{display:none}.page-grid{padding:0 10px;margin-top:14px;gap:17px}.cabinet-meta{padding:11px 9px;font-size:7px}.cabinet-meta .muted{display:none}.stage{aspect-ratio:1.42}.menu-hero{inset:7% 10% 8%}h1{font-size:clamp(56px,14vw,83px);margin:14px 0 8px}.menu-hero .eyebrow{font-size:7px}.menu-hero p{font-size:10px;margin:7px 0 14px}.menu-hero .primary{min-height:44px;padding:12px 16px;font-size:10px}.hero-footnote{font-size:6px;margin-top:11px}h1 .title-star{font-size:25px;right:-22px}.arena-floor-label{font-size:5px;left:9px;right:9px;bottom:8px}.arena-floor-label>span:last-child{display:none}.selection{padding:15px 10px 0}.section-label{font-size:9px;margin-bottom:11px}.section-label .muted{display:none}.opponents{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.opponent-card{display:flex;align-items:stretch}.portrait{width:43%;height:90px;flex-shrink:0;border:0;border-right:1px solid #39443d}.card-body{padding:13px 6px 9px;flex:1;min-width:0}.card-body b{font-size:15px}.card-body .difficulty{font-size:7px;margin-top:7px;gap:3px}.difficulty-bars{gap:1px}.difficulty-bars i{width:3px}.card-desc{font-size:6px;line-height:1.4;white-space:normal}.card-number{font-size:6px;left:5px;top:5px}.selected-mark{right:4px;top:3px;font-size:9px}.availability{display:none}.opponent-intel{font-size:8px;line-height:1.5;min-height:51px}.cabinet-bottom{padding:10px 8px;font-size:6px;letter-spacing:.01em}.cabinet-bottom .muted{display:none}.hud{left:4%;right:4%;top:6%;gap:10px;grid-template-columns:1fr 34px 1fr}.fighter-label{font-size:12px;margin-bottom:7px}.fighter-label>span{font-size:8px}.fighter-label small{font-size:6px;margin-left:4px}.health-track{height:12px}.clock>b{font-size:27px}.clock button{min-height:32px;min-width:32px}.announcement{top:39%;font-size:45px}.announcement small{font-size:8px;line-height:1.4}.combat-controls{padding:12px 8px 0;gap:7px}.control-group{gap:4px;flex:1 1 100%!important}.control-divider{display:none}.control-group button{min-height:56px;padding:8px 3px}.control-group button kbd{display:none}.control-group button b{font-size:10px}.control-group button small{font-size:7px}.control-group.defenses{order:1}.control-group.attacks{order:2}.combat-tip{order:3;font-size:8px;line-height:1.5;margin:3px 0 10px}.ad-bottom{min-height:70px}footer{font-size:6px;line-height:1.6;gap:15px;margin-top:20px}footer>span:nth-child(2){display:none}dialog{padding:26px 19px}dialog h2{font-size:35px}.manual-grid{gap:10px}.manual-grid p{font-size:10px}.setting{grid-template-columns:100px 1fr 28px;gap:8px}}
@media(max-height:540px) and (orientation:landscape){.topbar{padding:9px 20px}.brand-sub{display:none}.brand-mark{height:34px;width:34px;font-size:30px}.brand{font-size:18px}.page-grid{margin-top:10px;max-width:780px}.playing .topbar,.playing footer,.playing .ad-bottom,.playing .cabinet-meta,.playing .cabinet-bottom{display:none}.playing .page-grid{margin:0 auto;padding:0 5px;max-width:760px}.playing .stage{height:calc(100dvh - 102px);min-height:180px;aspect-ratio:auto}.playing .combat-controls{padding:5px 8px 0;gap:5px}.playing .control-group{flex:1!important}.playing .control-group.attacks{flex:1.34!important}.playing .control-group button{min-height:47px;padding:4px}.playing .control-group kbd{display:none}.playing .combat-tip{margin:0 0 5px;font-size:8px;min-height:10px}.playing .hud{top:5%;left:5%;right:5%}.playing .arena-floor-label{display:none}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

@media(max-width:600px){.opponent-card{display:block}.portrait{width:100%;height:75px;border-right:0;border-bottom:1px solid #39443d}.card-body{padding:8px}.card-body b{font-size:18px}.card-desc{font-size:7px}.menu-hero h1{font-size:clamp(46px,13vw,76px);margin:8px 0 5px}.menu-hero p{margin:4px 0 10px}.hero-footnote{display:none}.card-body .difficulty{font-size:8px}.difficulty-bars i{width:5px}}

/* Field guide only: keep the cabinet and combat layout unchanged. */
.guide-dialog{max-width:820px;padding:0;height:min(880px,90dvh);overflow:hidden}
.guide-dialog[open]{display:flex;flex-direction:column}
.guide-header{flex:none;padding:24px 26px 17px;border-bottom:1px solid #52624f;background:#223128;position:relative}
.guide-header .eyebrow{padding-right:35px;font-size:9px;line-height:1.5}
.guide-header h2{margin:8px 40px 0 0;font-size:38px}
.guide-header .dialog-close{min-width:44px;min-height:44px}
.guide-content{min-height:0;overflow:auto;overscroll-behavior:contain;padding:18px 26px 8px;scrollbar-color:#768671 #18241f;touch-action:pan-y}
.guide-content:focus-visible{outline:2px solid var(--mint);outline-offset:-5px}
.guide-matchups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.guide-matchups span{background:#304131;border:1px solid #5b6a50;padding:10px 6px;text-align:center;font:10px var(--mono);color:#d4debf}
.guide-matchups b{color:var(--orange);display:block;margin-top:5px}
.guide-basics{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:4px}
.guide-dialog p{font-size:12px;line-height:1.5;margin:8px 0;color:#d0dac7}
.guide-basics b{display:block;font:10px var(--mono);color:var(--mint);margin-bottom:5px}
.guide-dialog .guide-read{padding:10px 12px;background:#243529;border-left:3px solid var(--orange);margin:9px 0 18px}
.guide-read b{color:var(--text)}
.guide-dialog .guide-section{font:10px var(--mono);color:var(--orange);letter-spacing:.12em;margin:17px 0 9px}
.guide-moves{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.guide-card{min-width:0;padding:12px;background:#202e25;border:1px solid #43513d}
.guide-card-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
.guide-card h3{font-size:19px;color:var(--text);margin:0}
.guide-cost{font:8px var(--mono);color:#c8c89d;white-space:normal}
.guide-binding{display:flex;align-items:center;flex-wrap:wrap;gap:4px;margin-top:9px;font:9px var(--mono)}
.guide-touch{color:var(--mint);margin-left:auto;font-size:9px}
.guide-card p{margin:8px 0 0}
.guide-card .guide-risk{color:#b0beab;font-size:11px}
.guide-hop{grid-column:1/-1;border-left:3px solid var(--orange)}
.guide-counters{padding:13px 15px;background:#2a3829;border-left:3px solid var(--orange);margin-top:17px}
.guide-counters h3{font-size:20px;margin:0 0 8px;color:var(--orange)}
.guide-counters b{color:var(--text)}
.guide-counters .guide-counter-limit{font-size:11px;color:#b0beab}
.guide-dialog .guide-pause{font-size:10px;margin:15px 0 8px}
.guide-footer{display:flex;flex:none;align-items:center;justify-content:space-between;gap:15px;padding:12px 26px;border-top:1px solid #52624f;background:#223128}
.guide-footer>span{font:8px var(--mono);color:var(--mint);letter-spacing:.06em}
.guide-dialog .guide-footer .primary{width:auto;min-width:160px;margin:0;font-size:10px;padding:13px 17px;min-height:44px}
@media(max-width:600px){.guide-header{padding:18px 16px 13px}.guide-header h2{font-size:30px}.guide-header .eyebrow{font-size:7px}.guide-content{padding:14px 14px 6px}.guide-matchups{gap:5px}.guide-matchups span{font-size:8px;padding:9px 3px}.guide-basics{gap:10px}.guide-moves{grid-template-columns:1fr}.guide-hop{grid-column:auto}.guide-card-heading{gap:5px}.guide-card h3{font-size:18px}.guide-cost{font-size:8px}.guide-binding{gap:3px}.guide-touch{font-size:8px}.guide-footer{padding:10px 14px}.guide-footer>span{font-size:7px;max-width:96px;line-height:1.5}.guide-dialog .guide-footer .primary{min-width:134px}.guide-counters{padding:12px}}
@media(max-height:540px) and (orientation:landscape){.guide-header{padding:10px 22px}.guide-header h2{font-size:27px;margin-top:4px}.guide-header .eyebrow{font-size:7px}.guide-footer{padding:8px 22px}}
