@font-face{font-family:Teko;src:url(/fonts/teko/Teko-Regular.woff2) format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Teko;src:url(/fonts/teko/Teko-SemiBold.woff2) format("woff2");font-weight:600;font-display:swap}@font-face{font-family:Barlow Condensed;src:url(/fonts/barlow-condensed/BarlowCondensed-Medium.woff2) format("woff2");font-weight:500;font-display:swap}@font-face{font-family:Barlow Condensed;src:url(/fonts/barlow-condensed/BarlowCondensed-SemiBold.woff2) format("woff2");font-weight:600;font-display:swap}@font-face{font-family:Barlow Condensed;src:url(/fonts/barlow-condensed/BarlowCondensed-Bold.woff2) format("woff2");font-weight:700;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/inter/Inter-Regular.woff2) format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/inter/Inter-Bold.woff2) format("woff2");font-weight:700;font-display:swap}@font-face{font-family:Ring Mono;src:url(/fonts/ibm-plex-mono/RingMono-Regular.woff2) format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Ring Mono;src:url(/fonts/ibm-plex-mono/RingMono-Medium.woff2) format("woff2");font-weight:500;font-display:swap}.help-card{position:absolute;left:var(--space-3);top:calc(var(--size-hud-h) + var(--space-2));max-height:calc(100% - var(--size-hud-h) - var(--space-6));overflow:hidden;padding:var(--space-3) var(--space-4);background:var(--ui-panel);border:var(--hairline) solid var(--ui-line-hi);outline:var(--hairline) solid var(--ui-bg);font-family:var(--font-body);font-size:var(--type-xs);line-height:1.2;color:var(--ui-dim);pointer-events:none}.help-card.compact{top:auto;bottom:var(--space-3);max-width:calc(100% - var(--size-minimap) - var(--space-6));padding:var(--space-2) var(--space-3)}.help-head{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-6);margin-bottom:var(--space-1)}.help-title{font-family:var(--font-heading);font-weight:700;letter-spacing:.06em;color:var(--ui-accent)}.help-key{font-family:var(--font-mono);color:var(--ui-faint)}.help-cols{display:flex;gap:var(--space-6);align-items:flex-start}.help-grid{display:grid;grid-template-columns:max-content 1fr;align-items:center;gap:0 var(--space-4);margin:0}.help-group{grid-column:1 / -1;margin-top:var(--space-1);font-family:var(--font-heading);font-weight:700;letter-spacing:.08em;color:var(--ui-text)}.help-group:first-child{margin-top:0}.help-keys{white-space:nowrap}.help-action{margin:0}.help-note{margin:var(--space-2) 0 0;color:var(--ui-faint)}.help-card.compact .help-head{display:none}.help-card.compact .help-grid{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1) var(--space-3)}.help-card.compact .help-group{margin:0 0 0 var(--space-3);color:var(--ui-accent)}.help-card.compact .help-group:first-child{margin-left:0}.kc{display:inline-block;min-width:var(--space-6);padding:0 var(--space-1);background:var(--ui-panel-hi);border:var(--hairline) solid var(--ui-line-hi);border-bottom-width:calc(var(--hairline) * 2);font-family:var(--font-mono);font-size:var(--type-xs);line-height:1.1;text-align:center;color:var(--ui-text);margin:var(--hairline) 0}.kc-word{color:var(--ui-dim)}.kc-sep{margin:0 var(--space-1);color:var(--ui-faint)}.help-hint{position:absolute;left:var(--space-3);bottom:var(--space-2);margin:0;font-family:var(--font-mono);font-size:var(--type-xs);color:var(--ui-faint)}*{box-sizing:border-box}html,body{margin:0;height:100%;background:var(--ui-bg);color:var(--ui-text);font-family:var(--font-heading);font-size:var(--type-md)}body.game{overflow:hidden;color-scheme:dark}body.game,body.game *{-webkit-user-select:none;user-select:none;-webkit-user-drag:none;-webkit-touch-callout:none}body.game .credits .doc,body.game .credits .doc *{-webkit-user-select:text;user-select:text}[data-fonts=loading] #ui{visibility:hidden}.sym{font-family:var(--font-mono)}.game-stage{position:relative;display:grid;place-items:center;width:100vw;height:100vh;overflow:hidden;background:var(--ui-bg)}#game,.view3d{grid-area:1 / 1;display:block;image-rendering:pixelated;image-rendering:crisp-edges}#game{position:relative;z-index:1}.ui{grid-area:1 / 1;position:relative;z-index:2;width:var(--size-screen-w);height:var(--size-screen-h);overflow:hidden}.ui[data-screen=fight]{pointer-events:none}img{image-rendering:pixelated;image-rendering:crisp-edges}.mirror{transform:scaleX(-1)}.dim{color:var(--ui-dim)}.screen{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-5);text-align:center}.scrim{background:var(--scrim)}.screen-head{display:flex;align-items:baseline;justify-content:space-between;width:100%;gap:var(--space-5)}.screen-head h2,.modal h2{margin:0;font-family:var(--font-display);font-size:var(--type-xl);font-weight:600;letter-spacing:.04em;line-height:1;color:var(--ui-accent)}.modal h2{font-size:var(--type-lg)}.prompt{margin:0;font-size:var(--type-md);font-weight:600;color:var(--ui-dim)}.prompt.corner-a{color:var(--ui-corner-a)}.prompt.corner-b{color:var(--ui-corner-b)}.hints{position:absolute;left:0;right:0;bottom:var(--space-2);display:flex;justify-content:center;gap:var(--space-5);font-family:var(--font-mono);font-size:var(--type-xs);color:var(--ui-faint)}.hint{font:inherit;color:inherit;background:none;border:var(--hairline) solid var(--ui-line);padding:0 var(--space-3);cursor:pointer}[data-input=mouse] [data-i],[data-input=mouse] [data-act]{cursor:pointer}[data-input=keys] body,body[data-screen=fight]{cursor:none}.h-mouse,.back-btn,.h-pad{display:none}[data-input=mouse] .h-mouse,[data-input=mouse] .back-btn{display:inline-flex}[data-input=mouse] .h-keys{display:none}[data-device=pad] .h-pad{display:inline}[data-device=pad] .h-kb{display:none}[data-input=mouse] .hint:hover,[data-input=mouse] .back-btn:hover{color:var(--ui-bg);background:var(--ui-focus);border-color:var(--ui-focus)}.h-label{margin-right:var(--space-2)}.back-btn{position:absolute;left:var(--space-3);bottom:var(--space-2);align-items:center;padding:var(--space-1) var(--space-3);font-family:var(--font-heading);font-weight:700;font-size:var(--type-sm);letter-spacing:.06em;color:var(--ui-text);background:var(--ui-panel);border:var(--hairline) solid var(--ui-line-hi);cursor:pointer}.back-btn.in-modal{position:static;align-self:flex-start}.modal .hints{position:static;margin-top:var(--space-3);flex-wrap:wrap;gap:var(--space-3)}.fighter-name{color:var(--c);text-shadow:var(--fighter-outline);font-family:var(--font-heading);font-weight:700;letter-spacing:.03em;white-space:nowrap}.logo{display:block}.logo-title,.logo-menu{width:var(--size-logo-w);height:var(--size-logo-h)}.logo-menu{margin-bottom:0}.menu{gap:var(--space-2);padding-bottom:var(--space-7)}.menu .menu-list{gap:0}.edition{margin:0;font-family:var(--font-display);font-size:var(--type-lg);letter-spacing:.2em;color:var(--ui-dim);line-height:1}.tagline{margin:0;font-family:var(--font-body);font-style:italic;font-size:var(--type-md);color:var(--ui-text)}.press-start{margin:var(--space-5) 0 0;font-family:var(--font-display);font-size:var(--type-lg);letter-spacing:.1em;color:var(--ui-accent)}.footer-note{position:absolute;bottom:var(--space-3);margin:0;font-family:var(--font-mono);font-size:var(--type-xs);color:var(--ui-faint)}.blink{animation:blink calc(var(--time-blink) * 2) steps(1) infinite}@keyframes blink{50%{opacity:0}}.menu-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.menu-item{padding:var(--space-1) var(--space-6);font-size:var(--type-lg);font-weight:600;letter-spacing:.06em;color:var(--ui-dim);border:var(--hairline) solid transparent}.menu-item.focus{color:var(--ui-bg);background:var(--ui-focus);border-color:var(--ui-focus)}.menu-item.focus:before{content:"";display:inline-block;width:.42em;height:.6em;margin-right:.45em;background:currentColor;clip-path:polygon(0 0,100% 50%,0 100%)}.menu-hint{margin:0;font-family:var(--font-body);font-size:var(--type-sm);color:var(--ui-dim)}.select{justify-content:flex-start;gap:var(--space-3);background:var(--glow-a),var(--glow-b),var(--scrim-light)}.grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(8,var(--tile));gap:var(--space-1)}.tile{position:relative;width:var(--tile);height:var(--tile);background:var(--ui-panel);outline:var(--hairline) solid var(--ui-line)}.tile-img{display:block;width:var(--tile);height:var(--tile)}.tile.soon .tile-img{filter:grayscale(1) brightness(.55)}.tile.picked{outline-color:var(--ui-accent-dim)}.tile.focus{outline:var(--space-1) solid var(--ui-focus);z-index:1;animation:tile-pop var(--time-tile-pop) steps(3)}.tile.confirmed,.slot.confirmed{animation:confirm var(--time-confirm) steps(4)}@keyframes tile-pop{0%{transform:scale(1.18)}to{transform:scale(1)}}@keyframes confirm{0%,50%{filter:brightness(2.2)}25%,75%{filter:brightness(1)}}.select-foot{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;width:100%;gap:var(--space-5)}.slot{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-1) var(--space-3);border:var(--hairline) solid var(--ui-line);background:var(--ui-panel);font-size:var(--type-sm)}.slot.corner-b{flex-direction:row-reverse}.slot.active.corner-a{border-color:var(--ui-corner-a)}.slot.active.corner-b{border-color:var(--ui-corner-b)}.slot-label{font-family:var(--font-mono);font-size:var(--type-xs);color:var(--ui-dim)}.tile-empty{display:block;width:var(--tile-slot);height:var(--tile-slot);border:var(--hairline) dashed var(--ui-line)}.slot .tile-img{width:var(--tile-slot);height:var(--tile-slot)}.focus-info{display:flex;flex-direction:column;align-items:center;gap:var(--space-1)}.focus-name{font-size:var(--type-lg)}.badge{padding:0 var(--space-3);font-family:var(--font-mono);font-size:var(--type-xs);border:var(--hairline) solid currentColor}.badge-ok{color:var(--ui-ok)}.badge-soon{color:var(--ui-soon)}.denied-0{animation:denied-a var(--time-denied) steps(4);color:var(--ui-danger)}.denied-1{animation:denied-b var(--time-denied) steps(4);color:var(--ui-danger)}@keyframes denied-a{25%{transform:translate(var(--space-2))}75%{transform:translate(calc(var(--space-2) * -1))}}@keyframes denied-b{25%{transform:translate(var(--space-2))}75%{transform:translate(calc(var(--space-2) * -1))}}.cards{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-5);width:100%}.card{display:grid;grid-template-columns:auto 1fr auto 1fr auto;align-items:center;gap:var(--space-4);padding:var(--space-3);border:var(--hairline) solid var(--ui-line);background:var(--ui-panel);font-size:var(--type-lg)}.card.focus{border-color:var(--ui-focus);outline:var(--hairline) solid var(--ui-focus)}.card-vs{font-family:var(--font-display);font-size:var(--type-xl);color:var(--ui-accent)}.versus-row{display:flex;align-items:center;gap:var(--space-7)}.versus-fighter{margin:0;display:flex;flex-direction:column;align-items:center;gap:var(--space-2)}.versus-img{width:var(--size-versus-w);height:var(--size-versus-h)}.versus-fighter.corner-a .versus-img{border-bottom:var(--space-1) solid var(--ui-corner-a)}.versus-fighter.corner-b .versus-img{border-bottom:var(--space-1) solid var(--ui-corner-b)}.versus-name{font-size:var(--type-lg)}.help-tip{margin:0;font-family:var(--font-mono);font-size:var(--type-xs);color:var(--ui-dim)}.vs-sprite{width:calc(var(--size-vs-w) * 2);height:calc(var(--size-vs-h) * 2);background-image:var(--vs);background-size:calc(var(--size-vs-w) * 4) calc(var(--size-vs-h) * 2);image-rendering:pixelated;animation:vs-flash calc(var(--time-vs-flash) * 2) steps(1) infinite}@keyframes vs-flash{50%{background-position:calc(var(--size-vs-w) * -2) 0}}.modal{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:var(--size-modal-w);padding:var(--space-5);background:var(--ui-panel);border:var(--hairline) solid var(--ui-line-hi);display:flex;flex-direction:column;gap:var(--space-3)}.setup-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-1)}.setup-row{display:flex;justify-content:space-between;padding:var(--space-1) var(--space-3);font-size:var(--type-sm);color:var(--ui-dim);border:var(--hairline) solid transparent}.setup-row.focus{color:var(--ui-text);border-color:var(--ui-focus)}.setup-value{font-family:var(--font-mono);color:var(--ui-text)}.arrow{font:inherit;color:inherit;background:none;border:0;padding:0 var(--space-1);cursor:pointer}[data-input=mouse] .arrow:hover,.setup-row.focus .setup-value{color:var(--ui-accent)}.vol-bar{display:inline-flex;gap:var(--hairline);vertical-align:middle}.vol-bar i{display:inline-block;width:var(--space-1);height:var(--space-3);background:var(--ui-line)}.vol-bar i.on{background:currentColor}.vol-num{display:inline-block;min-width:3.5em;text-align:right}.setup-start{margin-top:var(--space-2);padding:var(--space-2);font-family:var(--font-display);font-size:var(--type-lg);color:var(--ui-dim);border:var(--hairline) solid var(--ui-line)}.setup-start.focus{color:var(--ui-bg);background:var(--ui-focus);border-color:var(--ui-focus)}.note{margin:0;font-family:var(--font-body);font-size:var(--type-xs);color:var(--ui-faint)}.result{justify-content:flex-start;gap:var(--space-2)}.result-head{display:flex;flex-direction:column;align-items:center}.method{margin:0;font-family:var(--font-display);font-size:var(--type-xl);color:var(--ui-accent);line-height:1}.winner{font-size:var(--type-lg)}.result-body{display:flex;gap:var(--space-6);align-items:flex-start}.stats{border-collapse:collapse;font-size:var(--type-sm)}.stats caption{font-family:var(--font-mono);font-size:var(--type-xs);color:var(--ui-dim);padding-bottom:var(--space-1)}.stats th,.stats td{padding:0 var(--space-3)}.stats tbody th{font-weight:500;color:var(--ui-dim);font-family:var(--font-body);font-size:var(--type-xs)}.stats td{font-family:var(--font-mono);color:var(--ui-text)}.stats .total td,.stats .total th{color:var(--ui-accent);border-top:var(--hairline) solid var(--ui-line)}.stats .stopped td{color:var(--ui-danger);font-family:var(--font-mono);font-size:var(--type-xs)}.result-actions{list-style:none;margin:var(--space-2) 0 0;padding:0;display:flex;gap:var(--space-3)}.result-actions .menu-item{font-size:var(--type-md)}.credits{justify-content:flex-start;background:var(--ui-bg)}.credits-view{position:relative;flex:1;width:100%;overflow:hidden;text-align:left}.credits-scroll{transform:translateY(calc(var(--scroll) * var(--space-8) * -1));transition:transform var(--time-fade)}.doc{font-family:var(--font-body);font-size:var(--type-xs);line-height:1.5;color:var(--ui-dim);margin-bottom:var(--space-6)}.doc h2,.doc h3,.doc h4{margin:var(--space-3) 0 var(--space-1);font-family:var(--font-heading);color:var(--ui-text)}.doc h2{font-size:var(--type-md);color:var(--ui-accent)}.doc h3,.doc h4{font-size:var(--type-sm)}.doc p,.doc ul{margin:0 0 var(--space-2)}.doc ul{padding-left:var(--space-6)}.doc strong{color:var(--ui-text)}.doc code{font-family:var(--font-mono)}.doc table{border-collapse:collapse;margin-bottom:var(--space-3)}.doc th,.doc td{border:var(--hairline) solid var(--ui-line);padding:0 var(--space-2);text-align:left}.fight-overlay{grid-area:1 / 1;position:relative;z-index:3;width:var(--size-screen-w);height:var(--size-screen-h);pointer-events:none}.toast{position:absolute;left:50%;top:calc(var(--space-8) + var(--space-5));transform:translate(-50%);margin:0;padding:var(--space-1) var(--space-4);background:var(--scrim);border:var(--hairline) solid var(--ui-accent-dim);font-family:var(--font-heading);font-weight:700;font-size:var(--type-sm);letter-spacing:.06em;color:var(--ui-accent);white-space:nowrap}html,body{overscroll-behavior:none}body.game{touch-action:manipulation;-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%;text-size-adjust:100%}.game-stage{position:fixed;top:env(safe-area-inset-top,0);right:env(safe-area-inset-right,0);bottom:env(safe-area-inset-bottom,0);left:env(safe-area-inset-left,0);width:auto;height:auto}.fight-overlay{z-index:4}[hidden]{display:none!important}[data-input]:not([data-input=touch]) .v-touch{display:none}[data-input=touch] .v-notouch,.h-touch{display:none}[data-input=touch] .h-touch{display:inline}[data-input=touch] .h-keys,[data-input=touch] .h-mouse{display:none}[data-input=touch] .hints{color:var(--ui-dim);font-size:var(--type-sm)}[data-input=touch] .hints .h-touch~.h-touch:before{content:"·";margin-right:var(--space-3)}[data-input=touch] .back-btn{display:inline-flex;align-items:center;justify-content:center;min-height:var(--touch-min);min-width:var(--touch-min)}[data-input=touch] .back-btn:not(.in-modal){top:var(--space-3);bottom:auto;left:var(--space-3);width:var(--touch-back)}[data-input=touch] .screen-head{padding:0 calc(var(--touch-min) + var(--space-3)) 0 var(--touch-back)}[data-input=touch] .arrow{min-width:var(--touch-min);min-height:var(--touch-min)}[data-input=touch] .menu-item,[data-input=touch] .setup-start,[data-input=touch] .setup-row{min-height:var(--touch-min);display:flex;align-items:center;justify-content:center}[data-input=touch] .setup-row{justify-content:space-between}[data-input=touch] .setup-value{white-space:nowrap}[data-input=touch] .modal{width:min(calc(var(--size-modal-w) * 1.5),calc(100% - var(--touch-edge) * 2));gap:var(--space-2)}[data-input=touch] .modal .hints{justify-content:flex-start;margin-top:0}[data-input=touch] .result-actions .menu-item{padding:0 var(--space-5)}[data-input=touch] .menu{display:grid;grid-template-columns:auto auto;grid-template-rows:auto auto;align-content:center;justify-content:center;column-gap:var(--space-8);row-gap:var(--space-2)}[data-input=touch] .menu .logo-menu{grid-row:1 / span 2;align-self:center}[data-input=touch] .menu .menu-list{min-width:calc(var(--touch-stick) * 2)}.select-foot{margin:auto 0 var(--space-3)}.select .grid{margin:auto 0}[data-input=touch] .select-foot{margin-bottom:0}[data-input=touch] .select .focus-info{display:grid;grid-template-columns:auto auto;align-items:center;justify-items:center;column-gap:var(--space-3)}[data-input=touch] .select .focus-name{grid-column:1 / -1}[data-input=touch] .select .hints{display:none}.cta{min-height:var(--touch-min);padding:0 var(--touch-edge);font-family:var(--font-heading);font-weight:700;font-size:var(--type-md);letter-spacing:.1em;color:var(--ui-bg);background:var(--ui-focus);border:0;cursor:pointer}.result{justify-content:center}[data-input=touch] .credits-view{overflow:auto;touch-action:pan-x pan-y;-webkit-overflow-scrolling:touch}[data-input=touch] .credits-scroll{transform:none}.touch-controls{display:none;position:absolute;inset:0;z-index:3;touch-action:none;-webkit-user-select:none;user-select:none}[data-input=touch] body[data-screen=fight] .touch-controls{display:block}.tc-btn{position:relative;display:grid;place-items:center;box-sizing:border-box;border-radius:50%;border:var(--touch-border) solid var(--ui-line-hi);background:var(--scrim);color:var(--ui-text);font-family:var(--font-heading);font-weight:700;font-size:var(--touch-label);letter-spacing:.04em;line-height:1;text-align:center}.tc-btn.tc-on{background:var(--ui-text);color:var(--ui-bg);border-color:var(--ui-text)}.tc-punch{width:var(--touch-punch);height:var(--touch-punch)}.tc-guard{width:var(--touch-guard);height:var(--touch-guard);color:var(--ui-corner-a);border-color:var(--ui-corner-a)}.tc-slip{width:var(--touch-slip);height:var(--touch-slip);font-size:var(--touch-label-small)}.tc-duck{width:var(--touch-duck);height:var(--touch-duck);font-size:var(--touch-label-small);border-style:dashed}.tc-toggle{width:var(--touch-toggle-w);height:var(--touch-min);border-radius:var(--touch-radius)}.tc-toggle.tc-active{background:var(--ui-focus);color:var(--ui-bg);border-color:var(--ui-focus)}.tc-toggle:after{content:attr(data-label);position:absolute;top:100%;left:0;right:0;font-family:var(--font-mono);font-size:var(--touch-label-small);letter-spacing:0;color:var(--ui-focus)}.tc-small{width:var(--touch-min);height:var(--touch-min);border-radius:var(--touch-radius);font-size:var(--touch-label-small)}.tc-pause:before{content:"";width:calc(var(--touch-gap) * 1.5);height:calc(var(--touch-gap) * 2);border-left:calc(var(--touch-border) * 2) solid currentColor;border-right:calc(var(--touch-border) * 2) solid currentColor}.tc-stick{position:absolute;left:calc(var(--touch-edge) * 2);bottom:var(--touch-edge);width:var(--touch-stick);height:var(--touch-stick);border-radius:50%;border:var(--touch-border) solid var(--ui-line-hi);background:var(--scrim);opacity:.45;pointer-events:none}.tc-stick.tc-active{left:0;top:0;bottom:auto;opacity:1}.tc-knob{position:absolute;left:calc(50% - var(--touch-knob) / 2);top:calc(50% - var(--touch-knob) / 2);width:var(--touch-knob);height:var(--touch-knob);border-radius:50%;background:var(--ui-dim);border:var(--touch-border) solid var(--ui-text)}.tc-left{position:absolute;left:calc(var(--touch-edge) * 2);bottom:calc(var(--touch-edge) + var(--touch-stick) + var(--touch-gap) * 2);display:flex;gap:var(--touch-gap)}.tc-center{position:absolute;left:50%;bottom:var(--touch-edge);transform:translate(-50%);display:flex;gap:var(--touch-gap)}.tc-right{position:absolute;right:var(--touch-edge);bottom:var(--touch-edge);display:grid;grid-template-columns:var(--touch-punch) var(--touch-punch) var(--touch-guard);grid-template-rows:var(--touch-min) var(--touch-punch) var(--touch-guard);gap:calc(var(--touch-gap) * 1.5) var(--touch-gap);place-items:center}[data-input=touch] .fight-overlay .help-hint{pointer-events:auto;left:50%;bottom:auto;top:calc(var(--size-hud-h) + var(--space-3));transform:translate(-50%);display:flex;align-items:center;min-height:var(--touch-min);padding:0 var(--touch-gap);color:var(--ui-dim)}[data-input=touch] .fight-overlay .help-card{pointer-events:auto}.rotate-notice{position:fixed;inset:0;z-index:10;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-5);padding:calc(env(safe-area-inset-top,0) + var(--touch-edge)) var(--touch-edge) calc(env(safe-area-inset-bottom,0) + var(--touch-edge));background:var(--ui-bg);color:var(--ui-text);text-align:center;touch-action:manipulation}.rotate-notice h2{margin:0;font-family:var(--font-display);font-weight:600;font-size:calc(var(--touch-label) * 2.4);letter-spacing:.04em;line-height:1;color:var(--ui-accent)}.rotate-notice p{margin:0;max-width:calc(var(--touch-stick) * 2.5);font-family:var(--font-body);font-size:var(--touch-label);line-height:1.4;color:var(--ui-dim)}.rotate-phone{width:calc(var(--touch-min) * 1.1);height:calc(var(--touch-min) * 1.9);border:calc(var(--touch-border) * 2) solid var(--ui-text);border-radius:var(--touch-radius);animation:rotate-phone var(--time-rotate) ease-in-out infinite}@keyframes rotate-phone{0%,25%{transform:rotate(0)}50%,85%{transform:rotate(-90deg)}to{transform:rotate(0)}}@media(prefers-reduced-motion:reduce){.rotate-phone{animation:none;transform:rotate(-90deg)}}.rotate-notice:not(.in-fight) .rotate-paused,.rotate-notice:not(.in-fight) .rotate-quit{display:none}.rotate-quit{min-height:var(--touch-min);padding:0 var(--touch-edge);font-family:var(--font-heading);font-weight:700;font-size:var(--touch-label);letter-spacing:.06em;color:var(--ui-text);background:var(--ui-panel);border:var(--hairline) solid var(--ui-line-hi);cursor:pointer}.fullscreen-btn{position:fixed;z-index:9;top:calc(env(safe-area-inset-top,0) + var(--touch-edge));right:calc(env(safe-area-inset-right,0) + var(--touch-edge));width:var(--touch-min);height:var(--touch-min);padding:0;background:var(--ui-panel);border:var(--hairline) solid var(--ui-line-hi);color:var(--ui-text);cursor:pointer;touch-action:manipulation}.fullscreen-btn:before,.fullscreen-btn:after{content:"";position:absolute;width:calc(var(--touch-gap) * 1.5);height:calc(var(--touch-gap) * 1.5);border:0 solid currentColor}.fullscreen-btn:before{left:var(--touch-gap);top:var(--touch-gap);border-top-width:calc(var(--touch-border) * 1.5);border-left-width:calc(var(--touch-border) * 1.5)}.fullscreen-btn:after{right:var(--touch-gap);bottom:var(--touch-gap);border-bottom-width:calc(var(--touch-border) * 1.5);border-right-width:calc(var(--touch-border) * 1.5)}.fullscreen-btn.on:before{border-width:0 calc(var(--touch-border) * 1.5) calc(var(--touch-border) * 1.5) 0}.fullscreen-btn.on:after{border-width:calc(var(--touch-border) * 1.5) 0 0 calc(var(--touch-border) * 1.5)}.ios-hint{position:fixed;z-index:9;left:calc(env(safe-area-inset-left,0) + var(--touch-edge));right:calc(env(safe-area-inset-right,0) + var(--touch-edge));bottom:calc(env(safe-area-inset-bottom,0) + var(--touch-edge));display:flex;align-items:center;gap:var(--touch-gap);padding:var(--touch-gap) var(--touch-gap) var(--touch-gap) var(--touch-edge);background:var(--ui-panel-hi);border:var(--hairline) solid var(--ui-corner-a);color:var(--ui-text);font-family:var(--font-body);font-size:var(--touch-label-small);line-height:1.35}.ios-hint p{margin:0;flex:1}.ios-hint b{font-family:var(--font-heading);font-size:var(--touch-label);letter-spacing:.04em}.ios-share{position:relative;flex:none;width:calc(var(--touch-gap) * 3);height:calc(var(--touch-gap) * 3.5);border:var(--touch-border) solid var(--ui-corner-a);border-top:0}.ios-share:before{content:"";position:absolute;left:calc(50% - var(--touch-border) / 2);top:calc(var(--touch-gap) * -1.5);width:var(--touch-border);height:calc(var(--touch-gap) * 3);background:var(--ui-corner-a)}.ios-close{position:relative;flex:none;width:var(--touch-min);height:var(--touch-min);padding:0;background:none;border:0;color:var(--ui-dim);cursor:pointer}.ios-close:before,.ios-close:after{content:"";position:absolute;left:calc(50% - var(--touch-gap));top:calc(50% - var(--touch-border) / 2);width:calc(var(--touch-gap) * 2);height:var(--touch-border);background:currentColor;transform:rotate(45deg)}.ios-close:after{transform:rotate(-45deg)}
