:root{--kui-accent:#f0a52a;--kui-accent-text:#111318;--kui-maestro:#fde68a;--kui-surface:#161922;--kui-line:#ffffff1a;--kui-ink:#f4f2ee;--kui-muted:#9aa0ab;--kui-dot:#ffffff24;--kui-font-brush:"Shippori Mincho B1", "Noto Serif JP", serif;--kui-font-mono:"IBM Plex Mono", ui-monospace, monospace}.kui-sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.kui-voice{font-family:var(--kui-font-brush)}.kui-portrait{background:linear-gradient(135deg,#241f38,#16171d);border:1px solid #fde68a73;border-radius:50%;flex-shrink:0;display:inline-flex;position:relative;overflow:hidden;box-shadow:0 0 6px #fde68a40}.kui-portrait--sm{width:28px;height:28px}.kui-portrait--md{width:44px;height:44px}.kui-portrait--lg{width:96px;height:96px;box-shadow:0 0 18px #fde68a38}.kui-portrait__img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.kui-layer--in{animation:.6s ease-in-out forwards kui-crossfade-in}.kui-figure{aspect-ratio:677/839;display:block;position:relative}.kui-figure__img{-o-object-fit:contain;object-fit:contain;width:100%;height:100%;position:absolute;inset:0}@keyframes kui-crossfade-in{0%{opacity:0}to{opacity:1}}.kui-tutorial{--kui-cut:16px;isolation:isolate;filter:drop-shadow(0 20px 40px #00000080);outline:none;flex-direction:column;gap:14px;padding:18px 18px 16px;display:flex;position:relative}.kui-tutorial:before,.kui-tutorial:after{content:"";z-index:-1;clip-path:polygon(0 0, calc(100% - var(--kui-cut)) 0, 100% var(--kui-cut), 100% 100%, var(--kui-cut) 100%, 0 calc(100% - var(--kui-cut)));position:absolute}.kui-tutorial:before{background:var(--kui-accent);inset:0}.kui-tutorial:after{--kui-cut:15.4px;background:var(--kui-surface);inset:1.5px}.kui-tutorial__speaker{align-items:center;gap:10px;display:flex}.kui-tutorial__speaker-name{font-family:var(--kui-font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--kui-maestro);font-size:11px;font-weight:700}.kui-tutorial__content{min-width:0}.kui-tutorial__footer{justify-content:space-between;align-items:center;gap:12px;margin-top:6px;display:flex}.kui-tutorial__dots{align-items:center;gap:6px;display:flex}.kui-tutorial__dot{background:var(--kui-dot);border-radius:3px;width:6px;height:6px;transition:width .2s,background-color .15s}.kui-tutorial__dot--active{background:var(--kui-accent);width:18px}.kui-skip{color:var(--kui-muted);cursor:pointer;background:0 0;border:none;padding:0;font-size:13px;font-weight:600}.kui-skip:hover{color:var(--kui-ink)}.kui-next{min-width:96px;font:inherit;background:var(--kui-accent);color:var(--kui-accent-text);cursor:pointer;clip-path:polygon(0 0,calc(100% - 8px) 0,100% 8px,100% 100%,8px 100%,0 calc(100% - 8px));border:none;padding:.6rem 1.1rem;font-size:13px;font-weight:800}.kui-next:not(:disabled):hover{filter:brightness(1.08)}.kui-next:focus-visible{outline:2px solid var(--kui-ink);outline-offset:2px}.kui-next:disabled{opacity:.4;cursor:default}.kui-shell{z-index:50;background:#0a0c118c;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.kui-shell__card{width:100%;max-width:340px;max-height:calc(100dvh - 2.5rem);animation:.32s cubic-bezier(.22,1,.36,1) kui-step-in;overflow-y:auto}@keyframes kui-step-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.kui-bubble{--kui-bubble-fill:#121826;--kui-cut:16px;isolation:isolate;color:var(--kui-ink);filter:drop-shadow(0 14px 24px #0006);flex-direction:column;gap:2px;padding:24px 16px 10px 18px;display:flex;position:relative}.kui-bubble:before,.kui-bubble:after{content:"";z-index:-1;clip-path:polygon(0 0, calc(100% - var(--kui-cut)) 0, 100% var(--kui-cut), 100% 100%, var(--kui-cut) 100%, 0 calc(100% - var(--kui-cut)));position:absolute}.kui-bubble:before{background:var(--kui-maestro);inset:0}.kui-bubble:after{--kui-cut:15.4px;background:var(--kui-bubble-fill);inset:1.5px}.kui-bubble__tail{border-left:8px solid #0000;border-right:8px solid #0000;border-bottom:10px solid var(--kui-maestro);position:absolute;top:-10px;left:50%;transform:translate(-50%)}.kui-bubble__tag{background:var(--kui-maestro);color:#111318;font-family:var(--kui-font-mono);letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;clip-path:polygon(0 0,100% 0,88% 100%,0 100%);padding:4px 18px 4px 10px;font-size:10px;font-weight:700;line-height:1.2;position:absolute;top:0;left:-1px;transform:translateY(-50%)}.kui-bubble__text{color:var(--kui-ink);margin:0;font-size:16px;line-height:1.55}.kui-bubble__cursor{vertical-align:text-bottom;background:var(--kui-maestro);width:2px;height:.9em;margin-left:2px;animation:.8s step-end infinite kui-cursor-blink;display:inline-block}.kui-bubble__cursor--done{opacity:0;animation:none}@keyframes kui-cursor-blink{0%,49%{opacity:1}50%,to{opacity:0}}.kui-bubble__tap{min-height:20px;color:var(--kui-maestro);align-self:flex-end;align-items:center;gap:2px;margin-right:-4px;display:flex}.kui-bubble__tap--hidden{visibility:hidden}.kui-bubble__tap svg{width:20px;height:20px;animation:1.4s ease-in-out infinite kui-tap-pulse}.kui-bubble__action{font-size:14px;font-weight:800;line-height:1}@keyframes kui-tap-pulse{0%,to{opacity:.55;transform:scale(.9)}50%{opacity:1;transform:scale(1.15)}}.kui-scene{flex-direction:column;align-items:center;gap:22px;width:100%;max-width:360px;margin:0 auto;display:flex}.kui-scene__bubble{cursor:pointer;width:100%;animation:.32s ease-out kui-bubble-in}.kui-scene__bubble:focus-visible{outline:2px solid var(--kui-accent);outline-offset:3px}@keyframes kui-bubble-in{0%{opacity:0;transform:translateY(10px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.kui-choices{border:1px solid var(--kui-line);background:var(--kui-surface);text-align:center;border-radius:16px;flex-direction:column;align-items:center;gap:14px;width:100%;max-width:300px;padding:20px 18px 18px;animation:.32s cubic-bezier(.22,1,.36,1) kui-step-in;display:flex;box-shadow:0 20px 60px #00000080}.kui-choices__title{color:var(--kui-ink);margin:0;font-size:17px;line-height:1.4}.kui-choices__actions{flex-direction:column;align-items:stretch;gap:8px;width:100%;display:flex}@media (prefers-reduced-motion:reduce){.kui-layer--in,.kui-shell__card,.kui-scene__bubble,.kui-choices,.kui-bubble__tap svg{animation:none}}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-red-300:oklch(80.8% .114 19.571);--color-gray-50:oklch(98.5% .002 247.839);--color-gray-800:oklch(27.8% .033 256.848);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-xs:20rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--font-weight-medium:500;--font-weight-semibold:600;--ease-out:cubic-bezier(0, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1)}}@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.inset-0{inset:0}.top-1\/2{top:50%}.right-0{right:0}.bottom-0{bottom:0}.bottom-6{bottom:calc(var(--spacing) * 6)}.left-0{left:0}.left-1\/2{left:50%}.m-0{margin:0}.-mt-5{margin-top:calc(var(--spacing) * -5)}.-mb-5{margin-bottom:calc(var(--spacing) * -5)}.ml-\[calc\(50\%-50vw\)\]{margin-left:calc(50% - 50vw)}.block{display:block}.flex{display:flex}.grid{display:grid}.inline{display:inline}.table{display:table}.min-h-screen{min-height:100vh}.w-screen{width:100vw}.max-w-xs{max-width:var(--container-xs)}.shrink{flex-shrink:1}.-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.\[animation\:stamp-breathe_1\.6s_ease-in-out_infinite\]{animation:1.6s ease-in-out infinite stamp-breathe}.flex-col{flex-direction:column}.items-center{align-items:center}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rounded-full{border-radius:2147483647px}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.bg-white{background-color:var(--color-white)}.bg-gradient-to-b{--tw-gradient-position:to bottom in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.from-black\/55{--tw-gradient-from:#0000008c}@supports (color:color-mix(in lab, red, red)){.from-black\/55{--tw-gradient-from:color-mix(in oklab, var(--color-black) 55%, transparent)}}.from-black\/55{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.via-black\/35{--tw-gradient-via:#00000059}@supports (color:color-mix(in lab, red, red)){.via-black\/35{--tw-gradient-via:color-mix(in oklab, var(--color-black) 35%, transparent)}}.via-black\/35{--tw-gradient-via-stops:var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.to-black\/70{--tw-gradient-to:#000000b3}@supports (color:color-mix(in lab, red, red)){.to-black\/70{--tw-gradient-to:color-mix(in oklab, var(--color-black) 70%, transparent)}}.to-black\/70{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.bg-cover{background-size:cover}.bg-center{background-position:50%}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-3{padding-block:calc(var(--spacing) * 3)}.pr-6{padding-right:calc(var(--spacing) * 6)}.pl-4{padding-left:calc(var(--spacing) * 4)}.text-center{text-align:center}.\[font-family\:var\(--font-sans\)\]{font-family:var(--font-sans)}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.whitespace-nowrap{white-space:nowrap}.text-gray-800{color:var(--color-gray-800)}.text-red-300{color:var(--color-red-300)}.text-white{color:var(--color-white)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.drop-shadow{--tw-drop-shadow-size:drop-shadow(0 1px 2px var(--tw-drop-shadow-color,#0000001a)) drop-shadow(0 1px 1px var(--tw-drop-shadow-color,#0000000f));--tw-drop-shadow:drop-shadow(0 1px 2px #0000001a) drop-shadow(0 1px 1px #0000000f);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.drop-shadow-\[0_2px_10px_rgba\(0\,0\,0\,0\.7\)\]{--tw-drop-shadow-size:drop-shadow(0 2px 10px var(--tw-drop-shadow-color,#000000b3));--tw-drop-shadow:var(--tw-drop-shadow-size);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.\[-webkit-tap-highlight-color\:transparent\]{-webkit-tap-highlight-color:transparent}.\[text-shadow\:0_1px_3px_rgba\(0\,0\,0\,0\.95\)\,0_2px_10px_rgba\(0\,0\,0\,0\.8\)\]{text-shadow:0 1px 3px #000000f2,0 2px 10px #000c}@media (hover:hover){.hover\:bg-gray-50:hover{background-color:var(--color-gray-50)}}.active\:scale-\[0\.98\]:active{scale:.98}}:root{--bg:#0d1017;--text:#e5e4e7;--ui-surface:#141925;--ui-surface-2:#10141d;--ui-line:#262c3a;--ui-line-strong:#3a4254;--ui-muted:#8b93a7;--ui-accent:#f0a52a;--ui-accent-text:#1a1204;--ui-focus:var(--ui-accent);--font-body:"Manrope", "Noto Sans JP", system-ui, sans-serif;--font-display:var(--font-body);--font-mono:"IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;--font-sans:"Noto Sans JP", system-ui, "Segoe UI", Roboto, sans-serif;--font-brush:"Shippori Mincho B1", "Noto Serif JP", serif;--font-2xs:.6rem;--font-xs:.7rem;--font-sm:.8rem;--font-md:.95rem;--font-lg:1.1rem;--font-xl:1.5rem;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font:16px/1.5 var(--font-body);color:var(--text);background:radial-gradient(circle at 50% -10%, #1a2030 0%, var(--bg) 55%, #0a0c11 100%);--kui-accent:var(--ui-accent);--kui-accent-text:var(--ui-accent-text);--kui-surface:var(--ui-surface);--kui-line:var(--ui-line);--kui-muted:var(--ui-muted);--kui-ink:#d4d8e2;--kui-dot:#2c3242;--kui-font-brush:var(--font-brush);--kui-font-mono:var(--font-mono)}*{box-sizing:border-box}button,input,select,textarea{font-family:inherit}body{min-height:100svh;margin:0;overflow-x:hidden}body:before{content:"";z-index:-1;pointer-events:none;background-image:linear-gradient(#ffffff06 1px,#0000 1px),linear-gradient(90deg,#ffffff06 1px,#0000 1px);background-size:24px 24px;position:fixed;inset:0}#root{max-width:480px;min-height:100svh;margin:0 auto;container:app/inline-size}@keyframes tutorial-step-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes stamp-breathe{0%,to{opacity:.72;transform:scale(1)}50%{opacity:1;transform:scale(1.05)}}@media (prefers-reduced-motion:reduce){@keyframes tutorial-step-in{0%{opacity:1;transform:none}to{opacity:1;transform:none}}@keyframes stamp-breathe{0%{opacity:1;transform:none}to{opacity:1;transform:none}}}.app--with-nav{--bottom-nav-space:calc(3.5rem + env(safe-area-inset-bottom));padding-bottom:var(--bottom-nav-space)}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}.screen-transition{animation:.25s screen-fade-in}@keyframes screen-fade-in{0%{opacity:0}to{opacity:1}}.kotoba-stamp{color:var(--stamp-color,#c084fc);overflow:visible}.kotoba-stamp__ring{fill:none;stroke:currentColor;stroke-width:3px}.kotoba-stamp__ring--inner{stroke-width:1.2px}.kotoba-stamp__arc-text,.kotoba-stamp__kanji{fill:currentColor;font-family:inherit}.credits{text-align:center;font-size:var(--font-2xs);letter-spacing:.04em;color:#e5e4e78c;margin:0}.continue-button{width:100%;max-width:112px;font-size:var(--font-2xs);text-align:center;border:1px solid var(--ui-accent);background:var(--ui-accent);color:var(--ui-accent-text);cursor:pointer;opacity:0;pointer-events:none;border-radius:8px;align-self:center;padding:.54rem .46rem;font-weight:700}.continue-button:hover{filter:brightness(1.08)}.continue-button--secondary:hover{border-color:var(--ui-line-strong)}.continue-button--visible{pointer-events:auto;animation:.4s ease-out forwards continue-button-fade-in}@keyframes continue-button-fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.continue-button--secondary{background:var(--ui-surface-2);border-color:var(--ui-line);color:#d4d8e2}.maestro-welcome{z-index:60;background:#07080b;animation:.3s both maestro-welcome-fade;position:fixed;inset:0;overflow:hidden}@keyframes maestro-welcome-fade{0%{opacity:0}}.maestro-welcome__stage{aspect-ratio:1280/714;width:max(100vw,179.27dvh);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.maestro-welcome__room{transform-origin:50% 45%;width:100%;height:100%;animation:2.4s cubic-bezier(.22,1,.36,1) both maestro-welcome-room;position:absolute;inset:0}@keyframes maestro-welcome-room{0%{filter:brightness(.35);transform:scale(1.12)}to{filter:brightness(.85);transform:scale(1)}}.maestro-welcome__stage:after{content:"";pointer-events:none;background:linear-gradient(#0000,#050609cc);position:absolute;inset:55% 0 0}.maestro-welcome__sensei{filter:drop-shadow(0 0 24px #f0a52a2e)drop-shadow(0 12px 18px #00000073);width:16%;animation:.8s cubic-bezier(.22,1,.36,1) 1.9s both maestro-welcome-sensei;position:absolute;bottom:16%;left:50%;transform:translate(-50%)}@keyframes maestro-welcome-sensei{0%{opacity:0;transform:translate(-50%,18px)}to{opacity:1;transform:translate(-50%)}}.maestro-welcome__seal{pointer-events:none;background:radial-gradient(closest-side,#050609b3,#0000);border-radius:50%;padding:36px;animation:1.5s .5s both maestro-welcome-seal;position:absolute;top:45%;left:50%;transform:translate(-50%,-50%)}.maestro-welcome__seal svg{filter:drop-shadow(0 6px 18px #0009);display:block}@keyframes maestro-welcome-seal{0%{opacity:0;transform:translate(-50%,-50%)scale(2.2)rotate(-14deg)}22%{opacity:1;transform:translate(-50%,-50%)scale(.94)rotate(-6deg)}30%{transform:translate(-50%,-50%)scale(1)rotate(-6deg)}70%{opacity:1;transform:translate(-50%,-50%)scale(1)rotate(-6deg)}to{opacity:0;transform:translate(-50%,-50%)scale(1.04)rotate(-6deg)}}.maestro-welcome__dialogue{left:16px;right:16px;bottom:calc(28px + env(safe-area-inset-bottom));justify-content:center;display:flex;position:absolute}.maestro-welcome--talking .maestro-welcome__room,.maestro-welcome--talking .maestro-welcome__sensei{animation:none}.maestro-welcome--talking .maestro-welcome__room{filter:brightness(.85)}.maestro-welcome--talking .maestro-welcome__seal{display:none}.maestro-welcome--leaving{animation:.5s ease-in .4s forwards maestro-welcome-out}.maestro-welcome--leaving .maestro-welcome__dialogue{opacity:0;transition:opacity .25s}.maestro-welcome--leaving .maestro-welcome__sensei{animation:.5s forwards maestro-welcome-sensei-out}@keyframes maestro-welcome-out{to{opacity:0}}@keyframes maestro-welcome-sensei-out{0%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,-6px)}}@media (prefers-reduced-motion:reduce){.maestro-welcome__room,.maestro-welcome__sensei{animation:none!important}.maestro-welcome__seal{display:none}}.onboarding-screen{justify-content:center;align-items:center;min-height:100svh;display:flex}.onboarding-screen__panel{align-items:stretch;gap:var(--space-3);border:1px solid var(--ui-line);background:linear-gradient(180deg, #f0a52a14, var(--ui-surface) 45%);border-radius:16px;flex-direction:column;width:100%;max-width:420px;margin:0 auto;padding:1.75rem 1.25rem 2rem;display:flex}.onboarding-screen__banner{padding:var(--space-1);background:radial-gradient(circle,#f0a52a24,#0000 70%);border-radius:50%;justify-content:center;align-self:center;align-items:center;display:flex}.onboarding-screen__title{text-align:center;font-family:var(--font-display);font-size:var(--font-md);color:#fff;margin:0;font-weight:700;display:grid}.onboarding-screen__title-text{opacity:0;grid-area:1/1;transition:opacity .32s}.onboarding-screen__title-text--visible{opacity:1}.onboarding-screen__step{align-items:stretch;gap:var(--space-3);flex-direction:column;animation:.32s cubic-bezier(.22,1,.36,1) onboarding-step-in;display:flex}@keyframes onboarding-step-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.onboarding-screen__field{align-items:center;gap:var(--space-2);flex-direction:column;display:flex}.onboarding-screen__label{text-align:center;width:100%;font-family:var(--font-mono);font-size:var(--font-2xs);letter-spacing:.12em;text-transform:uppercase;color:var(--ui-muted);font-weight:700}.onboarding-screen__input{width:100%;max-width:148px;font-size:var(--font-xs);text-align:center;border:1px solid var(--ui-line);background:var(--ui-surface-2);color:#e5e4e7;border-radius:6px;padding:.525rem .57rem}.onboarding-screen__input:focus{border-color:var(--ui-accent);outline:none}.onboarding-screen__avatars{aspect-ratio:2;width:70%;margin:0 auto;position:relative}.onboarding-screen__avatar-option{width:calc(50% - .45rem);height:100%;top:0;left:calc(var(--grid-col,0) * (50% + .45rem));background:var(--ui-surface-2);cursor:pointer;transform-origin:bottom;opacity:0;animation:.46s cubic-bezier(.22,1,.36,1) forwards onboarding-fan-in;animation-delay:calc(var(--fan-index,0) * 70ms);border:2px solid #0000;border-radius:50%;padding:3px;transition:top .48s ease-out,left .48s ease-out,width .48s ease-out,height .48s ease-out,border-color .15s,transform .15s;position:absolute}@keyframes onboarding-fan-in{0%{opacity:0;transform:translateY(16px) rotate(var(--fan-angle,0deg)) scale(.7)}to{opacity:1;transform:translateY(0)rotate(0)scale(1)}}.onboarding-screen__avatar-option:hover{transform:translateY(-2px)}.onboarding-screen__avatar-option--selected{border-color:var(--ui-accent);box-shadow:0 0 0 3px #f0a52a40}.onboarding-screen__avatars--confirming .onboarding-screen__avatar-option:not(.onboarding-screen__avatar-option--selected){pointer-events:none;animation:.38s forwards onboarding-mask-fade-out}@keyframes onboarding-mask-fade-out{0%{opacity:1}to{opacity:0}}.onboarding-screen__avatars--confirming .onboarding-screen__avatar-option--selected{z-index:2;left:calc(25% + .225rem)}.onboarding-screen__avatar-img,.onboarding-screen__avatar-silhouette{-o-object-fit:cover;object-fit:cover;border-radius:50%;width:100%;height:100%}.onboarding-screen__avatar-silhouette{background:linear-gradient(135deg, var(--ui-line-strong), var(--ui-line));fill:#ffffffd9;padding:18%;display:block}.onboarding-screen__name-form{align-items:stretch;gap:var(--space-3);flex-direction:column;animation:.32s cubic-bezier(.22,1,.36,1) onboarding-step-in;display:flex}.player-card{background:linear-gradient(160deg,#18202e 0%,#141a26 55%,#111621 100%);border:1px solid #ffffff12;border-radius:16px;align-items:center;gap:1rem;padding:1rem;animation:.35s cubic-bezier(.22,1,.36,1) both player-card-in;display:flex}@keyframes player-card-in{0%{opacity:0;transform:translateY(10px)}}.player-card__portrait{flex-shrink:0;width:118px;height:146px;position:relative}.player-card__panel{background-color:var(--ui-accent);clip-path:polygon(8% 4%,100% 0%,94% 100%,0% 94%);background-image:radial-gradient(#0003 1px,#0000 1.4px);background-size:6px 6px;justify-content:center;align-items:center;display:flex;position:absolute;inset:0;overflow:hidden}.player-card__img{-o-object-fit:contain;object-fit:contain;filter:drop-shadow(0 4px 6px #00000059);width:86%;height:86%}.player-card__initial{font-family:var(--font-sans);color:#111318d9;font-size:56px;font-weight:700;line-height:1}.player-card__name{white-space:nowrap;text-overflow:ellipsis;max-width:134px;font-family:var(--font-body);letter-spacing:.02em;text-transform:uppercase;color:#111318;clip-path:polygon(0 0,100% 0,90% 100%,0 100%);background:#f2f0ea;margin:0;padding:4px 20px 4px 10px;font-size:13px;font-weight:800;position:absolute;bottom:10px;left:-4px;overflow:hidden}.player-card__stats{flex-direction:column;flex:1;gap:1rem;min-width:0;display:flex}.player-card__highlight{align-items:center;gap:.75rem;display:flex}.player-card__icon{border:1px solid color-mix(in srgb, var(--ui-accent) 60%, transparent);background:color-mix(in srgb, var(--ui-accent) 10%, transparent);width:40px;height:40px;color:var(--ui-accent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.player-card__icon svg{width:20px;height:20px}.player-card__highlight-text{min-width:0}.player-card__value{font-family:var(--font-body);color:#d1d5db;margin:0;font-size:13px;line-height:1}.player-card__number{font-variant-numeric:tabular-nums;color:#fff;margin-right:6px;font-size:28px;font-weight:800}.player-card__label{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ui-muted);margin:4px 0 0;font-size:10px}.player-card__bar-head{justify-content:space-between;align-items:baseline;margin-bottom:6px;display:flex}.player-card__bar-head .player-card__label{margin:0}.player-card__percent{font-family:var(--font-mono);letter-spacing:.14em;font-variant-numeric:tabular-nums;color:var(--ui-accent);margin:0;font-size:10px;font-weight:500}.player-card__track{background:#232937;border-radius:999px;height:8px;overflow:hidden}.player-card__fill{background:var(--ui-accent);transform-origin:0;border-radius:999px;height:100%;animation:.6s cubic-bezier(.22,1,.36,1) both player-card-fill}@keyframes player-card-fill{0%{transform:scaleX(0)}}@media (height<=820px){.player-card{padding:.75rem}.player-card__portrait{width:96px;height:118px}.player-card__name{max-width:112px;bottom:8px}.player-card__stats{gap:.75rem}}@media (prefers-reduced-motion:reduce){.player-card,.player-card__fill{animation:none}}.mode-select{width:100%;max-width:420px;min-height:calc(100svh - 1.25rem - var(--bottom-nav-space,0px));flex-direction:column;margin:0 auto -1.25rem;display:flex;position:relative}.mode-select__header{margin-top:var(--space-4)}.mode-select__title{font-family:var(--font-display);font-size:var(--font-xl);color:#fff;margin:0;font-weight:700;line-height:1.1}.mode-select__spacer{min-height:var(--space-3);flex:1}.mode-select__list{gap:var(--space-3);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.mode-card{isolation:isolate;align-items:stretch;gap:var(--space-4);width:100%;padding:var(--space-4);border:1px solid var(--ui-line);background:var(--ui-surface);color:inherit;font:inherit;text-align:left;cursor:pointer;opacity:.72;animation:mode-card-in .36s calc(var(--mode-index) * 90ms) cubic-bezier(.2, .8, .2, 1) backwards;border-radius:14px;transition:transform .18s,opacity .18s,border-color .18s,box-shadow .18s;display:flex;position:relative;overflow:hidden}@keyframes mode-card-in{0%{opacity:0;transform:translateY(10px)}}.mode-card:before{content:"";z-index:-1;background:linear-gradient(90deg, #0d1017f0 35%, #0d1017cc), var(--mode-bg) center / cover;opacity:.9;position:absolute;inset:0}.mode-card:hover:not(.mode-card--locked):not(.mode-card--selected),.mode-card:focus-visible:not(.mode-card--locked){opacity:.9}.mode-card--selected{opacity:1;border-color:var(--mode-color);box-shadow:0 0 0 1px var(--mode-color), 0 8px 24px color-mix(in srgb, var(--mode-color) 22%, transparent);transform:translateY(-2px)}.mode-card--locked{cursor:not-allowed;opacity:.45;border-style:dashed;border-color:#2a3040}.mode-card__panel{background-color:var(--mode-color);clip-path:polygon(8% 4%,100% 0%,94% 100%,0% 94%);background-image:radial-gradient(#0003 1px,#0000 1.4px);background-size:6px 6px;flex-shrink:0;align-self:center;place-items:center;width:76px;height:92px;display:grid}.mode-card__kanji{font-family:var(--font-sans);color:#111318d9;font-size:2.6rem;font-weight:700;line-height:1}.mode-card__body{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.mode-card__meta{justify-content:space-between;gap:var(--space-2);font-family:var(--font-mono);font-size:var(--font-2xs);letter-spacing:.12em;text-transform:uppercase;color:var(--ui-muted);display:flex}.mode-card__name{font-family:var(--font-display);font-size:var(--font-lg);letter-spacing:.01em;text-transform:uppercase;color:#fff;font-weight:700;line-height:1.15}.mode-card__description{font-size:var(--font-xs);color:#d9dde6;line-height:1.45}.mode-card__stat{padding-top:var(--space-2);align-items:center;gap:var(--space-2);margin-top:auto;display:flex}.mode-card__track{background:#2c3242;border-radius:2px;flex:1;height:3px;overflow:hidden}.mode-card__fill{background:var(--mode-color);height:100%;display:block}.mode-card__stat-text{font-family:var(--font-mono);font-size:var(--font-2xs);color:#e5e7eb;font-weight:700}.mode-select__footer{padding:var(--space-5) 0;flex:1;justify-content:center;align-items:center;display:flex}.mode-select__play{min-width:220px;min-height:48px;padding:0 var(--space-6);background:var(--play-bg,var(--ui-accent));color:var(--play-text,var(--ui-accent-text));font:inherit;font-size:var(--font-sm);cursor:pointer;border:none;border-radius:10px;font-weight:700;transition:background-color .2s,color .2s,filter .15s,transform .1s}.mode-select__play:hover{filter:brightness(1.08)}.mode-select__play:active{transform:scale(.98)}.mode-reveal{z-index:50;justify-content:center;align-items:center;gap:var(--space-3);background:#0a0b10f0;flex-direction:column;animation:1.1s both mode-reveal-fade;display:flex;position:fixed;inset:0}@keyframes mode-reveal-fade{0%{opacity:0}15%{opacity:1}}.mode-reveal__kanji{font-family:var(--font-sans);color:var(--mode-color);text-shadow:0 0 40px color-mix(in srgb, var(--mode-color) 45%, transparent);font-size:7rem;font-weight:700;line-height:1;animation:1.1s cubic-bezier(.2,.8,.2,1) both mode-reveal-kanji}@keyframes mode-reveal-kanji{0%{filter:blur(6px);transform:scale(1.4)}30%{filter:blur();transform:scale(1)}}.mode-reveal__name{font-family:var(--font-display);font-size:var(--font-lg);letter-spacing:.24em;text-transform:uppercase;color:#fff;font-weight:700;animation:1.1s ease-out .12s both mode-reveal-name}@keyframes mode-reveal-name{0%{opacity:0;letter-spacing:.6em}30%{opacity:1;letter-spacing:.24em}}@media (height<=820px){.mode-select__header{margin-top:var(--space-3)}.mode-select__list{gap:var(--space-2)}.mode-card{gap:var(--space-3);padding:var(--space-3)}.mode-card__panel{width:56px;height:66px}.mode-card__kanji{font-size:1.9rem}.mode-card__body{gap:2px}.mode-card__description{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.mode-card__stat{padding-top:6px}.mode-select__footer{padding:var(--space-3) 0}}@media (prefers-reduced-motion:reduce){.mode-card,.mode-reveal__kanji,.mode-reveal__name{animation:none}}.living-portrait{display:block;position:absolute;inset:0}.living-portrait--breathing{transform-origin:50% 100%;animation:3.32s ease-in-out infinite living-portrait-breathe}@keyframes living-portrait-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.004,1.012)}}.living-portrait__blink{-o-object-fit:cover;object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity 40ms linear;position:absolute;inset:0}.living-portrait__blink--closed{opacity:1}@media (prefers-reduced-motion:reduce){.living-portrait--breathing{animation:none}}.bottom-nav{z-index:20;width:100%;max-width:480px;height:var(--bottom-nav-space);border-top:1px solid var(--ui-line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding-bottom:env(safe-area-inset-bottom);background:#0d1017f2;align-items:stretch;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.bottom-nav__item{font:inherit;color:var(--ui-muted);cursor:pointer;background:0 0;border:none;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;padding:0;font-size:11px;transition:color .15s;display:flex;position:relative}.bottom-nav__item:focus-visible{outline:2px solid var(--ui-focus);outline-offset:-2px}.bottom-nav__item--active{color:var(--ui-accent)}.bottom-nav__item--active:before{content:"";background:var(--ui-accent);width:40%;height:2px;position:absolute;top:-1px;left:50%;transform:translate(-50%)}.bottom-nav__icon{width:20px;height:20px}.avatar{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:flex;position:relative;overflow:hidden}.avatar--player{background:linear-gradient(135deg,#c084fc,#8b5cf6)}.avatar--rival{background:linear-gradient(135deg,#fca5a5,#f87171)}.avatar--maestro{background:linear-gradient(135deg,#241f38,#16171d)}.avatar--lg{width:56px;height:56px}.avatar__portrait{fill:#16171d;width:62%;height:62%}.avatar--photo-frame{background:#1a1822;border:1px solid #ffffff14}.avatar--maestro.avatar--photo-frame{border-color:#fde68a73;box-shadow:0 0 6px #fde68a40}.avatar__img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%;position:absolute;top:0;left:0}.avatar__img--out{opacity:0;transition:opacity .38s}.avatar__img--in{animation:.38s forwards avatar-crossfade-in}@keyframes avatar-crossfade-in{0%{opacity:0}to{opacity:1}}.tutorial-shell{z-index:50;padding:var(--space-5);background:#0a0c118c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.tutorial-shell__card{width:100%;max-width:320px;max-height:calc(100dvh - 2.5rem);animation:.32s cubic-bezier(.22,1,.36,1) tutorial-step-in;position:relative;overflow-y:auto}.tutorial-shell__watermark{z-index:1;opacity:.14;pointer-events:none;position:absolute;top:12px;right:24px}.result-tutorial__step{animation:.28s cubic-bezier(.22,1,.36,1) tutorial-step-in}.result-tutorial__eyebrow{margin:0 0 var(--space-2);font-family:var(--font-mono);font-size:var(--font-2xs);letter-spacing:.12em;text-transform:uppercase;color:var(--ui-muted);font-weight:700}.result-tutorial__body{font-family:var(--font-brush);font-size:var(--font-2xs);color:#e5e4e7;margin:0;line-height:1.6}.result-screen{box-sizing:border-box;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;flex-direction:column;gap:18px;width:100%;max-width:420px;min-height:calc(100svh - 2.5rem);margin:0 auto;padding-bottom:28px;display:flex;position:relative}.result-screen__header{font:500 10px/1 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:#7e828c;justify-content:space-between;display:flex}.result-screen__verdict{--verdict:#e8e6e3;text-align:center;flex-direction:column;align-items:center;gap:10px;padding:14px 0 4px;display:flex}.result-screen__verdict--win{--verdict:#f0a52a}.result-screen__verdict--lose{--verdict:#e0574a}.result-screen__kanji{font:900 88px/1 var(--font-sans);color:var(--verdict);text-shadow:0 6px #08080a;animation:.55s cubic-bezier(.2,1,.3,1) both result-stamp}.result-screen__title{font:800 28px/1 var(--font-body);letter-spacing:-.01em;color:#f4f2ee;margin:0;animation:.35s ease-out .15s both result-in}.result-screen__ending{background:color-mix(in srgb, var(--verdict) 12%, transparent);font:500 10.5px/1 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--verdict);border-radius:6px;padding:5px 9px;animation:.35s ease-out .25s both result-in}.result-screen__stars{gap:6px;font-size:26px;line-height:1;animation:.35s ease-out .4s both result-in;display:flex}.result-screen__score{font:500 var(--font-xs) / 1.3 var(--font-mono);color:var(--ui-muted);text-align:center;animation:.35s ease-out .5s both result-in}.result-screen__score strong{color:var(--ui-text)}.result-screen__gauge{align-items:center;gap:var(--space-2);margin-top:var(--space-1);font:500 var(--font-xs) / 1.3 var(--font-mono);color:var(--ui-muted);animation:.35s ease-out .6s both result-in;display:flex}.result-screen__gauge-pips{gap:4px;display:flex}.result-screen__gauge-pip{background:var(--ui-line-strong);border-radius:2px;width:14px;height:5px}.result-screen__gauge-pip--on{background:var(--ui-accent)}.result-screen__gauge--open .result-screen__gauge-count{color:var(--ui-accent)}.result-screen__star{color:var(--ui-line-strong)}.result-screen__star--on{color:var(--ui-accent);text-shadow:0 0 12px color-mix(in srgb, var(--ui-accent) 45%, transparent)}.result-screen__block{animation:.35s ease-out both result-in}.result-screen__fighters{background:linear-gradient(160deg,#18202e,#141a26 55%,#111621);border:1px solid #ffffff14;border-radius:14px;flex-direction:column;gap:12px;padding:14px;display:flex}.result-screen__fighter{align-items:center;gap:10px;display:flex}.result-screen__fighter-body{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.result-screen__fighter-top{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.result-screen__fighter-name{font:800 14px/1 var(--font-body);color:#f4f2ee;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.result-screen__fighter-score{font:500 10.5px/1 var(--font-mono);color:#c9ccd3;flex:none}.result-screen__hp{background:#08080ae6;border-radius:4px;height:8px;overflow:hidden}.result-screen__hp-fill{background:#f0a52a;height:100%}.result-screen__fighter+.result-screen__fighter .result-screen__hp-fill--full{background:#e0574a}.result-screen__hp-fill--mid{background:#e8c14a}.result-screen__hp-fill--low{background:#e0574a}.result-screen__reward{background:#141a26;border:1px solid #f0a52a59;border-radius:14px;flex-direction:column;gap:10px;padding:12px 14px;display:flex;position:relative}.result-screen__reward-top{align-items:center;gap:10px;display:flex}.result-screen__coin,.mon-rain__coin{background:radial-gradient(circle at 35% 30%,#ffe3a1,#f0a52a 55%,#a96a12);border-radius:50%;position:relative}.result-screen__coin:after,.mon-rain__coin:after{content:"";background:#3a2a10;border-radius:1px;position:absolute;inset:35%}.result-screen__coin{flex:none;width:30px;height:30px;animation:.18s ease-out result-coin-pop;box-shadow:inset 0 0 0 2px #08080a40}.result-screen__reward-total{font:900 24px/1 var(--font-body);font-variant-numeric:tabular-nums;color:#f6c46e;flex:1}.result-screen__reward-total span{font:700 15px/1 var(--font-sans)}.result-screen__wallet{font:500 10.5px/1 var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:.04em;text-transform:uppercase;color:#9aa0ab}.result-screen__reward-items{flex-wrap:wrap;gap:6px;display:flex}.result-screen__reward-item{font:500 11px/1 var(--font-body);white-space:nowrap;color:#c9ccd3;background:#ffffff0d;border-radius:6px;padding:4px 7px}.result-screen__reward-item span{font:600 10.5px/1 var(--font-mono);color:#f6c46e}.mon-rain{pointer-events:none;z-index:2;position:absolute;inset:0}.mon-rain__coin{opacity:0;animation-name:mon-fall;animation-timing-function:cubic-bezier(.45,0,.9,.6);animation-fill-mode:both;position:absolute;box-shadow:0 2px 6px #00000073}.result-screen__heading{font:500 10.5px/1 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:#7e828c;align-items:center;gap:8px;margin:0 0 8px;display:flex}.result-screen__count{letter-spacing:0;color:#f0a093;background:#e0574a24;border-radius:5px;padding:3px 6px}.result-screen__review{background:#141a26;border:1px solid #ffffff14;border-radius:12px;margin:0;padding:0;list-style:none}.result-screen__word{-moz-column-gap:12px;grid-template-columns:6.5em minmax(0,1fr);align-items:baseline;gap:5px 12px;padding:10px 14px;display:grid}.result-screen__word+.result-screen__word{border-top:1px solid #ffffff14}.result-screen__word-jp{font:700 18px/1.2 var(--font-sans);color:#f4f2ee}.result-screen__word-es{font:700 14px/1.2 var(--font-body);color:#7fdca4}.result-screen__word-chosen{font:500 11.5px/1.2 var(--font-body);color:#9aa0ab;grid-column:2}.result-screen__word-chosen s{color:#f0a093}.result-screen__actions{flex-direction:column;gap:10px;margin-top:auto;display:flex}.result-screen__primary,.result-screen__secondary{height:50px;font:800 15px/1 var(--font-body);cursor:pointer;border-radius:12px}.result-screen__primary{background:var(--ui-accent);color:#08080a;border:none}.result-screen__secondary{color:#c9ccd3;background:0 0;border:1px solid #ffffff29;height:48px;font-size:14px;font-weight:700}.result-screen__primary:focus-visible,.result-screen__secondary:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}.result-screen__skip-hint{text-align:center;font:500 10px/1 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:#4f535c;position:absolute;bottom:4px;left:0;right:0}@keyframes result-in{0%{opacity:0;transform:translateY(14px)}}@keyframes result-stamp{0%{opacity:0;transform:scale(1.8)}60%{opacity:1;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes result-coin-pop{35%{transform:scale(1.28)}}@keyframes mon-fall{0%{opacity:0;transform:translateY(0)rotate(0)}12%{opacity:1}80%{opacity:1;transform:translateY(var(--fall)) rotate(var(--spin))}to{opacity:0;transform:translateY(var(--fall)) rotate(var(--spin)) scale(.5)}}@media (prefers-reduced-motion:reduce){.result-screen__kanji,.result-screen__title,.result-screen__ending,.result-screen__stars,.result-screen__score,.result-screen__gauge,.result-screen__block,.result-screen__coin{animation:none}}.duel-clash{width:100%;height:120px;position:relative}@media (width<=400px){.duel-clash{zoom:.78}}.duel-clash__fighter{position:absolute}.duel-clash__fighter--player{transform:scaleX(-1)}.duel-clash__mover{transition:transform .12s ease-out;position:absolute;inset:0}.duel-clash__sprite{position:absolute;inset:0}.duel-clash__shadow{filter:blur(1.5px);background:#00000080;border-radius:50%;width:72px;height:9px;position:absolute}.duel-clash__center{pointer-events:none;width:24px;height:116px;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.duel-clash__flash{opacity:0;background:radial-gradient(circle,#ffffffe6,#fff0 70%);border-radius:50%;position:absolute;inset:-30px -50px}.duel-clash__shock{opacity:0;border:3px solid #fef3c7;border-radius:50%;width:50px;height:50px;position:absolute;top:50%;transform:translate(-50%,-50%)scale(.2)}.duel-clash__shock--rival{left:-24px}.duel-clash__shock--player{left:46px}.duel-clash--player-hit .duel-clash__flash,.duel-clash--rival-hit .duel-clash__flash{animation:.9s ease-out duel-clash-flash}.duel-clash--player-hit .duel-clash__shock--rival,.duel-clash--rival-hit .duel-clash__shock--player{animation:.9s ease-out duel-clash-shock}.duel-clash--player-hit:not(.duel-clash--rival-hit) .duel-clash__fighter--rival .duel-clash__sprite,.duel-clash--rival-hit:not(.duel-clash--player-hit) .duel-clash__fighter--player .duel-clash__sprite{animation:.38s ease-out duel-clash-struck}.duel-clash__fighter--evading .duel-clash__sprite{animation:.9s ease-out duel-clash-evade}@keyframes duel-clash-evade{0%{transform:translate(0)}35%,70%{transform:translate(-22px)}to{transform:translate(0)}}@keyframes duel-clash-struck{0%{filter:brightness(2.3)saturate(.2)}to{filter:none}}@keyframes duel-clash-shock{0%{opacity:0;transform:translate(-50%,-50%)scale(.2)}20%{opacity:1;transform:translate(-50%,-50%)scale(1)}to{opacity:0;transform:translate(-50%,-50%)scale(1.9)}}@keyframes duel-clash-flash{0%{opacity:0}12%{opacity:.85}45%,to{opacity:0}}.clash-explainer__step{gap:var(--space-3);flex-direction:column;animation:.28s cubic-bezier(.22,1,.36,1) tutorial-step-in;display:flex}.clash-explainer__eyebrow{font-family:var(--font-mono);font-size:var(--font-2xs);letter-spacing:.12em;text-transform:uppercase;color:var(--ui-muted);text-align:center;margin:0;font-weight:700}.clash-explainer__demo{border-top:1px solid var(--ui-line);border-bottom:1px solid var(--ui-line);pointer-events:none;background:linear-gradient(#f8717147,#0d1017bd 45% 55%,#c084fc47),url(/backgrounds/dojo-interior.jpg) 50% 70%/cover;border-radius:12px}.clash-explainer__body{font-family:var(--font-brush);font-size:var(--font-2xs);color:#e5e4e7;text-align:center;margin:0;line-height:1.55}.battle-card{--card-line:#ffffff1a;border:1px solid var(--card-line);box-sizing:border-box;background:linear-gradient(160deg,#18202e,#141a26 55%,#111621);border-radius:14px;align-items:center;gap:14px;min-height:116px;padding:14px 16px;transition:border-color .25s;display:flex;position:relative}.battle-card--low{--card-line:#e0574a73}.battle-card--right{--card-line:#5fcf8e66}.battle-card--wrong{--card-line:#e0574a66}.battle-card__body{flex-direction:column;flex:1;gap:10px;min-width:0;display:flex}.battle-card__origin{font:500 10px/1 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:#f6c46e}.battle-card__origin--rival{color:#f0a093}.battle-card__note{font:600 11px/1.2 var(--font-body);color:#f0a093;background:#f0a0931f;border:1px solid #f0a09380;border-radius:4px;align-self:flex-start;padding:3px 8px;animation:.3s ease-out both battle-card-up}.battle-card__word{font:800 34px/1 var(--font-body);letter-spacing:-.01em;color:#f4f2ee;overflow-wrap:anywhere;animation:.3s ease-out both battle-card-up}.battle-card__word--jp{font-family:var(--font-sans);letter-spacing:0;font-weight:700}.battle-card__glyph{font:700 34px/1 var(--font-sans);color:#ffffff1f}.battle-card__status{-moz-column-gap:10px;flex-wrap:wrap;align-items:baseline;gap:4px 10px;min-height:28px;display:flex}.battle-card__answered{gap:8px;display:flex}.battle-card__mark{--mark:var(--battle-player,#f0a52a);box-sizing:border-box;border:1.5px solid color-mix(in srgb, var(--mark) 35%, transparent);width:28px;height:28px;font:800 12px/1 var(--font-body);color:color-mix(in srgb, var(--mark) 55%, transparent);border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:flex}.battle-card__mark--rival{--mark:var(--battle-rival,#e0574a)}.battle-card__mark--on{border-color:var(--mark);background:var(--mark);color:#08080a;animation:.3s both battle-pop}.battle-card__answer{font:700 22px/1 var(--font-body);color:#7fdca4;animation:.25s ease-out both battle-card-up}.battle-card__answer--jp{font-family:var(--font-sans)}.battle-card__reading{font:500 13px/1.2 var(--font-sans);color:var(--ui-muted,#8b93a7);animation:.25s ease-out .1s both battle-card-up}.battle-card__ring{--ring:var(--ui-accent);flex:none;width:52px;height:52px;position:relative}.battle-card__ring--low{--ring:#e0574a}.battle-card__ring svg{position:absolute;inset:0}.battle-card__seg{fill:none;stroke:#ffffff1a;stroke-width:4px;stroke-linecap:round;transition:stroke .25s}.battle-card__seg--lit{stroke:var(--ring)}.battle-card__seconds{font:800 16px/1 var(--font-body);font-variant-numeric:tabular-nums;color:var(--ring);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.battle-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.battle-option{--opt-line:#ffffff1f;--opt-bg:#141a26eb;--opt-color:#f4f2ee;border:1px solid var(--opt-line);background:var(--opt-bg);height:92px;color:var(--opt-color);cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:12px;justify-content:center;align-items:center;padding:8px;transition:border-color .15s,background .15s,opacity .2s,transform .1s;display:flex;position:relative}.battle-option:disabled{cursor:default}.battle-option:not(:disabled):hover{--opt-line:#f0a52a80}.battle-option:not(:disabled):active{transform:scale(.97)}.battle-option:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}.battle-option--idle{opacity:.45}.battle-option--picked{--opt-line:var(--battle-player,#f0a52a);--opt-bg:#f0a52a24}.battle-option--dim{opacity:.4}.battle-option--right{--opt-line:#5fcf8e;--opt-bg:#5fcf8e21;--opt-color:#bff0d2}.battle-option--qa-answer{outline-offset:2px;outline:2px dashed #5fcf8e}.battle-option--wrong{--opt-line:#e0574abf;--opt-bg:#e0574a1a;--opt-color:#f0a093}.battle-option--faded{opacity:.3}.battle-option__label{font:700 18px/1.15 var(--font-body);text-align:center;overflow-wrap:anywhere}.battle-option__label--jp{font:700 22px/1.15 var(--font-sans)}.battle-option__chips{gap:3px;display:flex;position:absolute;top:6px;right:6px}.battle-option__chip{font:700 9px/1.2 var(--font-body);color:#08080a;border-radius:4px;padding:2px 5px}.battle-option__chip--rival{background:var(--battle-rival,#e0574a);animation:.3s both battle-pop}.battle-option__chip--player{background:var(--battle-player,#f0a52a)}@keyframes battle-card-up{0%{opacity:0;transform:translateY(8px)}}@keyframes battle-pop{0%{opacity:0;transform:scale(1.8)}60%{opacity:1;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.battle-card__word,.battle-card__answer,.battle-card__reading,.battle-card__mark--on,.battle-option__chip--rival{animation:none}}.duel-basics-intro__step{animation:.28s cubic-bezier(.22,1,.36,1) tutorial-step-in}.duel-basics-intro__eyebrow{margin:0 0 var(--space-2);font-family:var(--font-mono);font-size:var(--font-2xs);letter-spacing:.12em;text-transform:uppercase;color:var(--ui-muted);font-weight:700}.duel-basics-intro__ritual{flex-direction:column;display:flex}.duel-basics-intro__maestro{font-family:var(--font-brush);font-size:var(--font-2xs);color:#e5e4e7;margin:0;line-height:1.55}.duel-basics-intro__turno{gap:var(--space-2);flex-direction:column;display:flex}.duel-basics-intro__demo{gap:var(--space-2);pointer-events:none;flex-direction:column;display:flex}.duel-basics-intro__demo .battle-card{min-height:0;padding:10px 12px}.duel-basics-intro__demo .battle-card__word{font-size:22px}.duel-basics-intro__demo .battle-card__answer{font-size:16px}.duel-basics-intro__demo .battle-option{height:48px}.duel-basics-intro__demo .battle-option__label{font-size:14px}.kotodama-tutorial__step{animation:.28s cubic-bezier(.22,1,.36,1) tutorial-step-in}.kotodama-tutorial__eyebrow{margin:0 0 var(--space-2);font-family:var(--font-mono);font-size:var(--font-2xs);letter-spacing:.12em;text-transform:uppercase;color:var(--ui-muted);font-weight:700}.kotodama-tutorial__name{align-items:baseline;gap:var(--space-2);margin:0 0 var(--space-2);font-family:var(--font-brush);font-size:var(--font-sm);color:#e5e4e7;display:flex}.kotodama-tutorial__kanji{font-family:var(--font-sans);font-size:var(--font-xl);color:#e0574a;font-weight:700}.kotodama-tutorial__body{font-family:var(--font-brush);font-size:var(--font-2xs);color:#e5e4e7;margin:0;line-height:1.6}.deck-pile{--deck-accent:#f0a52a;font:inherit;color:inherit;cursor:default;background:0 0;border:none;flex-direction:column;align-items:center;gap:.3rem;margin:0;padding:0;display:flex}.deck-pile--rival{--deck-accent:#e0574a}.deck-pile--drawable{cursor:pointer}.deck-pile__stack{width:40px;height:52px;position:relative}.deck-pile__halo{background:radial-gradient(circle, color-mix(in srgb, var(--deck-accent) 50%, transparent), transparent 70%);opacity:0;z-index:-1;border-radius:50%;position:absolute;inset:-14px}.deck-pile--drawable .deck-pile__halo,.deck-pile--active .deck-pile__halo{animation:1.6s ease-in-out infinite deck-pile-halo}.deck-pile--drawable .deck-pile__stack,.deck-pile--active .deck-pile__stack{animation:1.6s ease-in-out infinite deck-pile-breathe}@keyframes deck-pile-halo{0%,to{opacity:.3;transform:scale(.9)}50%{opacity:.75;transform:scale(1.2)}}@keyframes deck-pile-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}.deck-pile__card{background:linear-gradient(160deg,#18202e,#111621);border:1px solid #ffffff24;border-radius:6px;position:absolute;inset:0}.deck-pile__card--3{opacity:.6;transform:rotate(-6deg)translate(-2px,1px)}.deck-pile__card--2{opacity:.8;transform:rotate(4deg)translate(1px,-1px)}.deck-pile__card--1{color:var(--deck-accent);opacity:.5;justify-content:center;align-items:center;font-size:1.1rem;display:flex}.deck-pile__count{background:var(--deck-accent);color:#08080a;text-align:center;border-radius:999px;min-width:20px;padding:.1rem .35rem;font-size:.7rem;font-weight:700;line-height:1.4;position:absolute;bottom:-6px;right:-8px}.deck-pile__label{font:500 10px/1 var(--font-body);color:#c9ccd3;white-space:nowrap;text-shadow:0 1px 3px #000c}.deck-pile--entering.deck-pile--down{animation:.5s cubic-bezier(.34,1.56,.64,1) .55s both deck-pile-drop-in}.deck-pile--entering.deck-pile--up{animation:.5s cubic-bezier(.34,1.56,.64,1) .55s both deck-pile-rise-in}@keyframes deck-pile-drop-in{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}@keyframes deck-pile-rise-in{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.battle{--battle-player:#f0a52a;--battle-rival:#e0574a;-webkit-user-select:none;user-select:none;flex-direction:column;min-height:calc(100svh - 2.5rem);display:flex;position:relative}.battle--shaking{animation-name:battle-shake;animation-timing-function:linear;animation-fill-mode:forwards}.battle--frozen{animation-play-state:paused}@keyframes battle-shake{0%,55%{transform:translate(0)}60%{transform:translate(1px)}65%{transform:translate(-1px,1px)}70%{transform:translate(1px,-1px)}74%{transform:translate(-2px,1px)}78%{transform:translate(2px,-1px)}81%{transform:translate(-2px,2px)}84%{transform:translate(2px,-2px)}87%{transform:translate(-3px,2px)}89%{transform:translate(3px,-3px)}91%{transform:translate(-3px,3px)}93%{transform:translate(3px,-3px)}94.5%{transform:translate(-4px,3px)}96%{transform:translate(4px,-4px)}97.2%{transform:translate(-4px,4px)}98.2%{transform:translate(4px,-4px)}99%{transform:translate(-4px,4px)}99.5%{transform:translate(4px,-3px)}to{transform:translate(0)}}.battle__header{align-items:center;gap:12px;padding-bottom:14px;display:flex}.battle__pause{color:#c9ccd3;cursor:pointer;background:#0b0d12d9;border:1px solid #ffffff24;border-radius:50%;flex:none;justify-content:center;align-items:center;width:36px;height:36px;padding:0;transition:color .15s,border-color .15s,opacity .15s;display:flex}.battle__pause:hover:not(:disabled){color:var(--ui-accent);border-color:#f0a52a66}.battle__pause:disabled{opacity:.4;cursor:default}.battle__pause:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}.battle__pips{flex:1;gap:3px;display:flex}.battle__pip{background:#ffffff14;border-radius:2px;flex:1;height:5px;transition:background .3s}.battle__pip--current{background:#fff9;box-shadow:0 0 6px #fff6}.battle__pip--player{background:var(--battle-player)}.battle__pip--rival{background:var(--battle-rival)}.battle__pip--tie{background:#c9ccd3}.battle__pip--none{background:#ffffff38}.battle__round{font:500 10px/1 var(--font-mono);letter-spacing:.1em;color:#7e828c}.battle__corner{z-index:3;justify-content:space-between;gap:12px;display:flex;position:relative}.battle__corner--rival{align-items:flex-end;margin-bottom:-14px}.battle__corner--player{align-items:flex-start;margin-top:-14px}.battle__corner .deck-pile{padding:0 6px}.battle__corner--rival .deck-pile{margin-bottom:22px}.battle__corner--player .deck-pile{margin-top:22px}.battle-hp{box-sizing:border-box;clip-path:polygon(0 0,100% 0,100% 72%,93% 100%,0 100%);background:#141a26;border:1px solid #e0574a59;flex-direction:column;gap:7px;width:214px;max-width:62%;padding:10px 12px 11px;display:flex}.battle-hp--player{clip-path:polygon(7% 0,100% 0,100% 100%,0 100%,0 28%);border-color:#f0a52a59;align-items:flex-end;padding:11px 12px 10px}.battle-hp__top{align-items:center;gap:6px;min-width:0;display:flex}.battle-hp__streak{font:800 9px/1 var(--font-body);letter-spacing:.06em;text-transform:uppercase;color:#f4f2ee;background:#f4f2ee1f;border-radius:4px;flex:none;padding:2px 5px}.battle-hp__streak--strong{color:#08080a;background:#f08c3c}.battle-hp__streak--critical{color:#08080a;background:#ffd76a}.battle-hp__name{max-width:100%;font:800 15px/1 var(--font-body);color:#f4f2ee;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.battle-hp__row{align-self:stretch;align-items:center;gap:8px;display:flex}.battle-hp--player .battle-hp__row{flex-direction:row-reverse}.battle-hp__label{font:700 9px/1 var(--font-mono);color:#7e828c}.battle-hp__value{min-width:22px;font:500 10px/1 var(--font-mono);font-variant-numeric:tabular-nums;color:#c9ccd3;text-align:right}.battle-hp--player .battle-hp__value{text-align:left}.battle-hp__bar{background:#08080ae6;border-radius:4px;flex:1;height:8px;position:relative;overflow:hidden}.battle-hp__ghost,.battle-hp__fill{position:absolute;top:0;bottom:0;left:0}.battle-hp--player .battle-hp__ghost,.battle-hp--player .battle-hp__fill{left:auto;right:0}.battle-hp__ghost{background:#f4f2ee;transition:width .6s ease-in .45s}.battle-hp__fill{transition:width .2s ease-out,background .3s}.battle-hp--rival .battle-hp__fill--full{background:var(--battle-rival)}.battle-hp--player .battle-hp__fill--full{background:var(--battle-player)}.battle-hp__fill--mid{background:#e8c14a}.battle-hp__fill--low{background:#e0574a;animation:1s ease-in-out infinite battle-low}.battle__scene{z-index:1;background:linear-gradient(#1a1219,#4a2731 40%,#b8735a 82%,#fca778);flex:1;min-height:190px;margin:0 -1rem;position:relative;overflow:hidden}.battle__scene-image{background:var(--duel-bg,url(/backgrounds/dojo-interior.jpg)) center 70% / cover no-repeat;animation:9s ease-in-out infinite alternate battle-drift;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000,#000 22px);mask-image:linear-gradient(#0000,#000 22px)}.battle__scene-shade{pointer-events:none;background:linear-gradient(#08080a00 60%,#08080a73);position:absolute;inset:0}.battle__fighters{position:absolute;bottom:18px;left:0;right:0}.battle__damage{pointer-events:none;flex-direction:column;align-items:center;gap:4px;animation:1.3s ease-out both battle-damage;display:flex;position:absolute;top:44px}.battle__damage--on-rival{--damage-stroke:var(--battle-rival);--damage-chip:var(--battle-player);left:24%}.battle__damage--on-player{--damage-stroke:var(--battle-player);--damage-chip:var(--battle-rival);left:76%}.battle__damage-value{font:900 40px/1 var(--font-body);color:#f4f2ee;-webkit-text-stroke:2px var(--damage-stroke);text-shadow:0 4px #08080a}.battle__damage-fast{background:var(--damage-chip);font:800 10px/1 var(--font-body);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;color:#08080a;border-radius:5px;padding:3px 7px}.battle__damage--strong,.battle__damage--critical{animation-duration:1.7s}.battle__damage--strong .battle__damage-value{font-size:48px}.battle__damage--critical .battle__damage-value{color:#ffd76a;text-shadow:0 4px #08080a,0 0 18px #ffc440b3;font-size:58px}.battle__damage-row{align-items:flex-start;gap:4px;display:flex}.battle__damage-multiplier{font:900 18px/1 var(--font-body);color:#08080a;border:2px solid #08080a;border-radius:6px;margin-top:2px;padding:2px 6px;transform:rotate(-8deg)}.battle__damage--strong .battle__damage-multiplier{background:#f08c3c}.battle__damage--critical .battle__damage-multiplier{background:#ffd76a;font-size:22px}.battle__damage-streak{font:900 11px/1 var(--font-body);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;color:#08080a;border:2px solid #08080a;border-radius:5px;padding:3px 8px}.battle__damage-streak--strong{background:#f08c3c}.battle__damage-streak--critical{background:#ffd76a;font-size:13px;animation:.45s ease-in-out 2 battle-critical-pulse}@keyframes battle-critical-pulse{50%{transform:scale(1.15)}}@media (prefers-reduced-motion:reduce){.battle__damage-streak--critical{animation:none}}.battle__play{flex-direction:column;gap:10px;min-height:218px;margin-top:14px;display:flex}.battle__overlay{z-index:5;pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.battle__paused{z-index:40;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#060709e6;flex-direction:column;justify-content:center;align-items:center;gap:14px;animation:.2s ease-out both battle-fade-in;display:flex;position:absolute;inset:-1.25rem -1rem}.battle__paused-kanji{font:700 56px/1 var(--font-sans);color:var(--ui-accent)}.battle__paused-label{font:500 11px/1 var(--font-mono);letter-spacing:.24em;text-transform:uppercase;color:#7e828c}.battle__paused-actions{flex-direction:column;gap:10px;width:220px;margin-top:14px;display:flex}.battle__paused-primary,.battle__paused-secondary{height:48px;font:800 14px/1 var(--font-body);cursor:pointer;border-radius:10px}.battle__paused-primary{background:var(--ui-accent);color:#08080a;border:none}.battle__paused-secondary{color:#c9ccd3;background:0 0;border:1px solid #ffffff29;font-weight:700}.battle__paused-primary:focus-visible,.battle__paused-secondary:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}@keyframes battle-drift{to{transform:scale(1.035)translate(-4px)}}@keyframes battle-low{50%{opacity:.5}}@keyframes battle-damage{0%{opacity:0;transform:translate(-50%,10px)scale(.6)}18%{opacity:1;transform:translate(-50%,-6px)scale(1.25)}35%{transform:translate(-50%,-10px)scale(1)}80%{opacity:1}to{opacity:0;transform:translate(-50%,-34px)}}@keyframes battle-fade-in{0%{opacity:0}}@media (prefers-reduced-motion:reduce){.battle__scene-image,.battle-hp__fill--low{animation:none}}.coin-flip{justify-content:center;align-items:center;gap:var(--space-4);min-height:100svh;padding:var(--space-4);flex-direction:column;display:flex}.coin-flip__stage{perspective:600px;width:108px;height:108px;position:relative}.coin-flip__coin{--coin-flip-duration:1.8s;transform-style:preserve-3d;position:absolute;inset:0;transform:rotateY(0)}.coin-flip__coin--player{animation:coin-flip-spin-player var(--coin-flip-duration) cubic-bezier(.22, .61, .36, 1) forwards}.coin-flip__coin--rival{animation:coin-flip-spin-rival var(--coin-flip-duration) cubic-bezier(.22, .61, .36, 1) forwards}.coin-flip__face{backface-visibility:hidden;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;inset:0;box-shadow:0 6px 18px #00000073}.coin-flip__face--kotoba{--stamp-color:#c084fc;background:#18161f;border:4px solid #c084fc}.coin-flip__face--rival{--stamp-color:#f87171;background:#18161f;border:4px solid #f87171;transform:rotateY(180deg)}.coin-flip__stamp{font-family:Segoe UI,system-ui,sans-serif}.coin-flip__shadow{background:radial-gradient(#00000080 0%,#0000 70%);width:72px;height:14px;position:absolute;bottom:-14px;left:50%;transform:translate(-50%)}.coin-flip__result{font-size:var(--font-lg);letter-spacing:.02em;text-align:center;opacity:0;animation:.35s forwards coin-flip-result-in;animation-delay:calc(var(--coin-flip-duration) - .3s);font-weight:700}@keyframes coin-flip-spin-player{0%{transform:rotateY(0)}to{transform:rotateY(1080deg)}}@keyframes coin-flip-spin-rival{0%{transform:rotateY(0)}to{transform:rotateY(1260deg)}}@keyframes coin-flip-result-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.deck-shuffle{width:220px;height:220px;position:relative}.deck-shuffle__glow{background:radial-gradient(#c084fc29,#0000 65%);position:absolute;inset:0}.deck-shuffle__card{color:#c084fc;opacity:0;background:linear-gradient(145deg,#2a2540,#1c1a28);border:1px solid #3a3646;border-radius:6px;justify-content:center;align-items:center;width:34px;height:46px;margin:-23px 0 0 -17px;font-size:.85rem;animation:.85s cubic-bezier(.4,0,.2,1) forwards deck-shuffle-move;display:flex;position:absolute;top:50%;left:50%}.deck-shuffle__card--a{--burst-x:95px;--burst-y:-75px;z-index:4;animation-delay:0s}.deck-shuffle__card--b{--burst-x:72px;--burst-y:-58px;z-index:3;animation-delay:50ms}.deck-shuffle__card--c{--burst-x:-95px;--burst-y:75px;z-index:2;animation-delay:.1s}.deck-shuffle__card--d{--burst-x:-72px;--burst-y:58px;z-index:1;animation-delay:.15s}@keyframes deck-shuffle-move{0%{opacity:0;transform:translate(0)rotate(0)}10%{opacity:1}20%{transform:translate(-8px,2px)rotate(-6deg)}35%{transform:translate(8px,-2px)rotate(5deg)}50%{transform:translate(-6px,2px)rotate(-4deg)}62%{opacity:1;transform:translate(0)rotate(0)}to{transform:translate(var(--burst-x), var(--burst-y)) rotate(20deg);opacity:0}}.advance-hint{justify-content:center;align-items:center;width:22px;height:22px;animation:1.4s ease-in-out infinite advance-hint-pulse;display:inline-flex}.advance-hint svg{width:100%;height:100%}@keyframes advance-hint-pulse{0%,to{opacity:.55;transform:scale(.9)}50%{opacity:1;transform:scale(1.15)}}@media (prefers-reduced-motion:reduce){.advance-hint{animation:none}}.stage{gap:var(--space-4);flex-direction:column;min-height:calc(100dvh - 2.5rem);display:flex}.stage__header{align-items:center;gap:14px;margin-bottom:6px;display:flex}.stage__back{color:#c9ccd3;cursor:pointer;background:#0b0d12d9;border:1px solid #ffffff24;border-radius:50%;flex:none;justify-content:center;align-items:center;width:38px;height:38px;padding:0;transition:color .15s,border-color .15s;display:flex}.stage__back:hover{color:var(--ui-accent);border-color:#f0a52a66}.stage__back:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}.stage__heading{min-width:0}.stage__title{font-family:var(--font-body);letter-spacing:-.02em;color:#f4f2ee;margin:0;font-size:24px;font-weight:800;line-height:1.05}.stage__subtitle{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:#7e828c;margin:7px 0 0;font-size:10.5px;font-weight:500;line-height:1}.stage__set{margin-block:auto}.stage__scene{aspect-ratio:3/2;background:#111621;margin:0 -1rem;position:relative;overflow:hidden}.stage__scene-image{background-position:50% 70%;background-size:cover;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000,#000 22px);mask-image:linear-gradient(#0000,#000 22px)}.stage__scene-shade{pointer-events:none;background:radial-gradient(120% 90% at 50% 120%,#f0a52a1a,#0000 60%),linear-gradient(#11162100 60%,#11162199);position:absolute;inset:0}.stage-portrait{flex:none;position:relative}.stage-portrait__panel{background-color:var(--portrait-color);clip-path:polygon(7% 4%,97% 0,100% 86%,2% 96%);background-image:radial-gradient(#08080a38 1.2px,#0000 1.5px);background-size:6px 6px;position:absolute;inset:0 0 18px}.stage-portrait--right .stage-portrait__panel{clip-path:polygon(3% 0,93% 4%,98% 96%,0 86%)}.stage-portrait__frame{justify-content:center;align-items:flex-end;display:flex;position:absolute;inset:8px 10px 26px}.stage-portrait__img{-o-object-fit:contain;object-fit:contain;-o-object-position:center bottom;object-position:center bottom;filter:drop-shadow(0 4px 6px #00000059);width:100%;height:100%}.stage-portrait__initial{font:700 48px/1 var(--font-sans);color:#111318d9;align-self:center}.stage-portrait__name{clip-path:polygon(0 0,100% 0,94% 100%,0 100%);background:#f4f2ee;padding:7px 14px 7px 10px;position:absolute;bottom:0;left:-1px;right:-8px}.stage-portrait--right .stage-portrait__name{text-align:right;clip-path:polygon(6% 0,100% 0,100% 100%,0 100%);padding:7px 10px 7px 14px;left:-8px;right:-1px}.stage-portrait__name span{font:800 12px/1 var(--font-body);letter-spacing:.02em;text-transform:uppercase;white-space:nowrap;text-overflow:ellipsis;color:#08080a;display:block;overflow:hidden}.stage__dialogue{z-index:2;align-items:flex-end;gap:12px;min-height:124px;margin-top:-56px;display:flex;position:relative}.stage__dialogue .stage-portrait{width:96px;height:124px;animation:.3s ease-out both stage-up}.stage-bubble{--bubble-color:#7e828c;--bubble-line:color-mix(in srgb, var(--bubble-color) 40%, transparent);isolation:isolate;cursor:pointer;-webkit-tap-highlight-color:transparent;flex-direction:column;flex:1;gap:2px;min-width:0;min-height:64px;margin-bottom:18px;padding:14px 14px 8px 18px;display:flex;position:relative}.stage-bubble:before,.stage-bubble:after{--cut:14px;content:"";z-index:-1;clip-path:polygon(0 0, calc(100% - var(--cut)) 0, 100% var(--cut), 100% 100%, var(--cut) 100%, 0 calc(100% - var(--cut)));transition:background .25s;position:absolute}.stage-bubble:before{background:var(--bubble-line);inset:0}.stage-bubble:after{--cut:13.6px;background:linear-gradient(160deg,#18202e,#141a26 55%,#111621);inset:1px}.stage-bubble:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}.stage-bubble--narration{--bubble-line:#ffffff1a;margin-bottom:0}.stage-bubble__tail{border-left:1px solid var(--bubble-line);border-bottom:1px solid var(--bubble-line);background:#141a26;width:14px;height:14px;position:absolute;bottom:22px;left:-8px;transform:rotate(45deg)}.stage-bubble__text{font:500 14px/1.5 var(--font-body);color:#e8e6e3;text-wrap:pretty;margin:0;animation:.25s ease-out both stage-bubble-in}.stage-bubble--narration .stage-bubble__text{color:#c9ccd3;font-style:italic}.stage-bubble__caret{vertical-align:-2px;background:var(--bubble-color);width:7px;height:1em;margin-left:2px;animation:.8s step-end infinite stage-blink;display:inline-block}.stage-bubble__body{display:grid}.stage-bubble__body>.stage-bubble__text{grid-area:1/1}.stage-bubble__text--ghost{visibility:hidden;animation:none}.stage-bubble__action{color:var(--bubble-color);align-self:flex-end;align-items:center;gap:2px;margin-right:-4px;display:flex}.stage-bubble__action--fight{color:#e0574a}.stage-bubble__action--hidden{visibility:hidden}.stage-bubble__action-label{font:800 13px/1 var(--font-body)}.stage-bubble--narration .stage-bubble__action{color:var(--ui-accent)}.stage__keys{flex-wrap:wrap;justify-content:center;align-items:center;gap:22px;margin-top:4px;display:none}@media (hover:hover) and (pointer:fine){.stage__keys{display:flex}}.stage__key-hint{font:500 11.5px/1 var(--font-body);color:#7e828c;align-items:center;gap:7px;display:flex}.stage__kbd{font:500 10px/1 var(--font-mono);color:#c9ccd3;border:1px solid #ffffff24;border-radius:5px;padding:4px 6px}@keyframes stage-up{0%{opacity:0;transform:translateY(12px)}}@keyframes stage-bubble-in{0%{opacity:0;transform:translateY(6px)}}@keyframes stage-blink{50%{opacity:0}}@media (prefers-reduced-motion:reduce){.stage__dialogue .stage-portrait,.stage-bubble__text{animation:none}}.battle-versus__dim{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#060709c7;animation:.3s ease-out both battle-versus-fade;position:absolute;inset:0}.battle-versus__scene{animation:.28s .45s battle-versus-shake-s,.28s .95s battle-versus-shake-s,.5s 1.45s battle-versus-shake-l}.battle-versus{justify-content:center;align-items:center;gap:14px;padding:0 16px;display:flex;position:absolute;inset:0}.battle-versus__fighter{width:104px;height:134px}.battle-versus__fighter--rival{animation:.35s cubic-bezier(.5,0,.75,0) .1s both battle-versus-in-left}.battle-versus__fighter--player{animation:.35s cubic-bezier(.5,0,.75,0) .6s both battle-versus-in-right}.battle-versus__center{flex:none;justify-content:center;align-items:center;min-width:64px;height:64px;display:flex;position:relative}.battle-versus__ring{opacity:0;pointer-events:none;border:2px solid #f0a52a;border-radius:50%;width:120px;height:120px;margin:-60px 0 0 -60px;animation:.5s ease-out 1.45s both battle-versus-ring;position:absolute;top:50%;left:50%}.battle-versus__vs{font:italic 800 56px/1 var(--font-body);color:var(--ui-accent);text-shadow:0 0 28px #f0a52a73;animation:.3s cubic-bezier(.5,0,.75,0) 1.2s both battle-versus-stamp}.battle-versus__flash{z-index:40;opacity:0;pointer-events:none;background:#fff;animation:.35s ease-out 1.45s forwards battle-versus-flash;position:fixed;inset:0}.battle-versus-leaving{animation:.7s ease-in forwards battle-versus-leave}@keyframes battle-versus-fade{0%{opacity:0}}@keyframes battle-versus-leave{to{opacity:0}}@keyframes battle-versus-flash{0%{opacity:.55}to{opacity:0}}@keyframes battle-versus-stamp{0%{opacity:0;transform:scale(3.4)rotate(-14deg)}70%{opacity:1;transform:scale(.88)rotate(2deg)}to{opacity:1;transform:none}}@keyframes battle-versus-in-left{0%{opacity:0;transform:translate(-140%)skew(-12deg)}70%{opacity:1;transform:translate(6%)skew(4deg)}to{opacity:1;transform:none}}@keyframes battle-versus-in-right{0%{opacity:0;transform:translate(140%)skew(12deg)}70%{opacity:1;transform:translate(-6%)skew(-4deg)}to{opacity:1;transform:none}}@keyframes battle-versus-shake-s{0%,to{transform:none}20%{transform:translate(-7px,3px)}40%{transform:translate(6px,-4px)}60%{transform:translate(-4px,2px)}80%{transform:translate(2px,-1px)}}@keyframes battle-versus-shake-l{0%,to{transform:none}10%{transform:translate(-14px,6px)rotate(-1deg)}25%{transform:translate(12px,-8px)rotate(1deg)}40%{transform:translate(-9px,5px)}55%{transform:translate(7px,-4px)}70%{transform:translate(-4px,2px)}85%{transform:translate(2px,-1px)}}@keyframes battle-versus-ring{0%{opacity:0;transform:scale(.3)}1%{opacity:.9;transform:scale(.3)}to{opacity:0;transform:scale(2.4)}}@media (prefers-reduced-motion:reduce){.battle-versus__dim,.battle-versus__scene,.battle-versus__fighter--rival,.battle-versus__fighter--player,.battle-versus__vs{animation:none}.battle-versus__flash,.battle-versus__ring{display:none}}.free-battle{gap:var(--space-4);flex-direction:column;width:100%;max-width:420px;margin:0 auto;display:flex}.free-battle__title{font-family:var(--font-display);font-size:var(--font-xl);color:#fff;margin:0;font-weight:700;line-height:1.1}.free-battle__subtitle{font-size:var(--font-sm);color:#93a4c9;margin:2px 0 0}.rival-card{border:1px solid color-mix(in srgb, var(--rival-color) 35%, var(--ui-line));background:var(--ui-surface);border-radius:16px;animation:.26s ease-out rival-card-in;position:relative;overflow:hidden}@keyframes rival-card-in{0%{opacity:0;transform:translateY(6px)}}.rival-card__corners{z-index:2;padding:var(--space-3) var(--space-4) 0;font-family:var(--font-mono);font-size:var(--font-2xs);letter-spacing:.12em;text-transform:uppercase;color:var(--ui-muted);justify-content:space-between;display:flex;position:relative}.rival-card__corners:before,.rival-card__corners:after{content:"";top:calc(var(--space-3) + 1.8em);border-color:var(--ui-line-strong);border-style:solid;width:10px;height:10px;position:absolute}.rival-card__corners:before{left:var(--space-3);border-width:1px 0 0 1px}.rival-card__corners:after{right:var(--space-3);border-width:1px 1px 0 0}.rival-card__stage{height:200px;margin-top:var(--space-2);position:relative}.rival-card__panel{background-color:var(--rival-color);clip-path:polygon(5% 3%,98% 0%,100% 84%,0% 100%);background-image:radial-gradient(#0000002e 1px,#0000 1.4px);background-size:7px 7px;animation:.32s cubic-bezier(.2,.8,.2,1) rival-card-panel-in;position:absolute;inset:4px 14px 8px 18px}@keyframes rival-card-panel-in{0%{clip-path:polygon(5% 3%,5% 3%,0% 100%,0% 100%)}}.rival-card__portrait{aspect-ratio:1;filter:drop-shadow(0 8px 14px #00000059);width:150px;position:absolute;top:50%;left:50%;transform:translate(-50%,-52%)}.rival-card__img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%;display:block}.rival-card__banner{z-index:1;clip-path:polygon(0 0,100% 0,calc(100% - 16px) 100%,0 100%);background:#f3f1ec;align-items:center;gap:9px;margin-top:-6px;margin-right:34%;padding:6px 12px;animation:.3s cubic-bezier(.2,.8,.2,1) 60ms backwards rival-card-banner-in;display:flex;position:relative}@keyframes rival-card-banner-in{0%{transform:translate(-100%)}}.rival-card__emblem{border:1.5px solid var(--rival-color);width:28px;height:28px;color:var(--rival-color);font-family:var(--font-brush);background:#1a1b22;border-radius:50%;flex-shrink:0;place-items:center;font-size:.86rem;font-weight:700;display:grid}.rival-card__name{font-family:var(--font-display);letter-spacing:.01em;text-transform:uppercase;color:#111318;margin:0;font-size:1.5rem;font-weight:700;line-height:1}.rival-card__body{padding:var(--space-4);gap:var(--space-3);flex-direction:column;display:flex}.rival-card__line{font-size:var(--font-md);color:#d9dde6;margin:0}.rival-card__difficulty{align-items:center;gap:var(--space-3);margin:0;display:flex}.rival-card__label{font-family:var(--font-mono);font-size:var(--font-2xs);letter-spacing:.14em;text-transform:uppercase;color:var(--ui-muted)}.rival-card__difficulty-text{font-size:var(--font-sm);color:#e5e7eb;font-weight:600}.rival-card__bar,.free-battle__tile-difficulty{gap:4px;display:inline-flex}.rival-card__bar>span,.free-battle__tile-difficulty>span{background:#2c3242;border-radius:2px;display:block}.rival-card__bar>span{width:20px;height:6px}.free-battle__tile-difficulty>span{width:8px;height:3px}.rival-card__bar>.is-on,.free-battle__tile-difficulty>.is-on{background:var(--rival-color)}.free-battle__roster{gap:var(--space-3);flex-direction:column;display:flex}.free-battle__roster-head{justify-content:space-between;align-items:baseline;gap:var(--space-1) var(--space-3);flex-wrap:wrap;display:flex}.free-battle__roster-title{font-family:var(--font-display);font-size:var(--font-lg);color:#fff;margin:0;font-weight:700}.free-battle__roster-count{margin-left:var(--space-1);font-family:var(--font-mono);font-size:var(--font-xs);color:var(--ui-muted);font-weight:400}.free-battle__roster-hint{font-size:var(--font-2xs);color:var(--ui-muted);margin:0}.free-battle__carousel{scroll-snap-type:x mandatory;scrollbar-width:none;margin:-3px;padding:3px;display:flex;overflow-x:auto}.free-battle__carousel::-webkit-scrollbar{display:none}.free-battle__grid{scroll-snap-align:start;gap:var(--space-2);flex:0 0 100%;grid-template-columns:repeat(3,1fr);margin:0;padding:0;list-style:none;display:grid}.free-battle__tile{width:100%;padding:var(--space-3) var(--space-2) var(--space-2);border:1px solid var(--ui-line);background:var(--ui-surface);color:inherit;font:inherit;cursor:pointer;border-radius:12px;flex-direction:column;align-items:center;gap:6px;transition:transform .15s,border-color .15s,box-shadow .15s;display:flex;position:relative;overflow:hidden}.free-battle__tile:before{content:"";background:var(--rival-color);height:3px;position:absolute;inset:0 0 auto}.free-battle__tile:hover:not(.free-battle__tile--locked):not(.free-battle__tile--empty),.free-battle__tile:focus-visible{transform:translateY(-2px)}.free-battle__tile--selected{border-color:var(--rival-color);background:color-mix(in srgb, var(--rival-color) 8%, var(--ui-surface));box-shadow:0 0 0 1px var(--rival-color), 0 0 14px color-mix(in srgb, var(--rival-color) 35%, transparent)}.free-battle__portrait{aspect-ratio:1;border:1px solid color-mix(in srgb, var(--rival-color) 40%, var(--ui-line));background:#0b0d12;border-radius:10px;width:72%;display:block;position:relative;overflow:hidden}.free-battle__img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%;display:block}.free-battle__name{font-family:var(--font-display);font-size:var(--font-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--rival-color);font-weight:700}.free-battle__tile--selected .free-battle__name{color:#fff}.free-battle__tile--locked,.free-battle__tile--empty{background:var(--ui-surface-2);border-color:#1d2230}.free-battle__tile--locked{cursor:not-allowed}.free-battle__tile--empty{cursor:default}.free-battle__tile--locked:before,.free-battle__tile--empty:before{display:none}.free-battle__tile--locked .free-battle__portrait,.free-battle__tile--empty .free-battle__portrait{background:0 0;border:1px dashed #2a3040}.free-battle__tile--locked .free-battle__img{filter:brightness(0);opacity:.45}.free-battle__tile--locked .free-battle__name,.free-battle__tile--empty .free-battle__name{color:#4b5264}.free-battle__lock{color:#9ca3af;filter:drop-shadow(0 1px 2px #000c);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.free-battle__dots{justify-content:center;gap:6px;display:flex}.free-battle__dot{cursor:pointer;background:#2c3242;border:none;border-radius:3px;width:6px;height:6px;padding:0;transition:width .2s,background-color .2s}.free-battle__dot--active{background:var(--ui-muted);width:18px}.free-battle__actions{justify-content:center;gap:var(--space-2);display:flex}.free-battle__random,.free-battle__fight{min-height:48px;font:inherit;font-size:var(--font-sm);cursor:pointer;border-radius:10px;font-weight:700;transition:filter .15s,transform .1s}.free-battle__random{padding:0 var(--space-4);border:1px solid var(--ui-line);background:var(--ui-surface-2);color:#d4d8e2}.free-battle__fight{padding:0 var(--space-6);background:var(--fight-bg,var(--ui-accent));color:var(--fight-text,var(--ui-accent-text));border:none;transition:background-color .2s,color .2s,filter .15s,transform .1s}.free-battle__random:not(:disabled):hover,.free-battle__fight:not(:disabled):hover{filter:brightness(1.08)}.free-battle__random:not(:disabled):active,.free-battle__fight:not(:disabled):active{transform:scale(.98)}.free-battle__random:disabled,.free-battle__fight:disabled{opacity:.45;cursor:not-allowed}@media (prefers-reduced-motion:reduce){.rival-card,.rival-card__panel,.rival-card__banner{animation:none}}.forge-screen{gap:var(--space-4);flex-direction:column;animation:.4s ease-out both tutorial-step-in;display:flex}.forge-screen__header{justify-content:space-between;align-items:baseline;gap:var(--space-3);display:flex}.forge-screen__title{font-family:var(--font-display);font-size:var(--font-xl);color:#e5e4e7;margin:0;font-weight:700}.forge-screen__title span{margin-left:var(--space-2);font-family:var(--font-sans);font-size:var(--font-sm);color:var(--ui-muted);font-weight:500}.forge-screen__wallet{font:700 var(--font-md) / 1 var(--font-mono);color:var(--ui-accent)}.forge-screen__katana{align-items:center;gap:var(--space-4);padding:var(--space-5) var(--space-4);border:1px solid var(--ui-line);background:linear-gradient(180deg, #f0a52a14, var(--ui-surface) 70%);border-radius:16px;display:flex}.forge-screen__glyph{background:var(--ui-accent);width:64px;height:64px;font:700 36px/1 var(--font-brush);color:var(--ui-accent-text);border-radius:12px;flex:none;place-items:center;display:grid}.forge-screen__stats{gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.forge-screen__level{font:500 var(--font-xs) / 1.2 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ui-muted)}.forge-screen__damage{font:800 2rem/1 var(--font-body);color:#fff}.forge-screen__damage-unit{font-size:var(--font-sm);color:var(--ui-accent);font-weight:600}.forge-screen__hint{font-size:var(--font-xs);color:var(--ui-muted)}.forge-screen__buy{justify-content:space-between;align-items:center;gap:var(--space-3);min-height:48px;padding:var(--space-3) var(--space-4);background:var(--ui-accent);font:700 var(--font-md) / 1.2 var(--font-body);color:var(--ui-accent-text);text-align:left;cursor:pointer;border:none;border-radius:12px;display:flex}.forge-screen__buy:disabled{background:var(--ui-surface-2);border:1px solid var(--ui-line);color:var(--ui-muted);cursor:default}.forge-screen__buy:focus-visible{outline:2px solid var(--ui-focus);outline-offset:3px}.forge-screen__price{font-family:var(--font-mono);flex:none}.forge-screen__missing,.forge-screen__maxed{font-size:var(--font-sm);color:var(--ui-muted);text-align:center;margin:0}.forge-screen__levels{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.forge-level{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--ui-line);background:var(--ui-surface);font-size:var(--font-sm);border-radius:10px;grid-template-columns:4rem 1fr auto;display:grid}.forge-level__name{color:#e5e4e7;font-weight:700}.forge-level__damage{color:var(--ui-muted)}.forge-level__price{font-family:var(--font-mono);color:var(--ui-muted)}.forge-level--owned .forge-level__price{color:var(--ui-accent)}.forge-level--next{border-color:var(--ui-accent)}.forge-level--locked{opacity:.6}.progress-screen{gap:var(--space-4);flex-direction:column;animation:.4s ease-out both tutorial-step-in;display:flex}.progress-screen__title{font-family:var(--font-display);font-size:var(--font-xl);color:#e5e4e7;margin:0;font-weight:700}.progress-screen__card{align-items:center;gap:var(--space-1);padding:var(--space-6) var(--space-4);border:1px solid var(--ui-line);background:linear-gradient(180deg, #f0a52a14, var(--ui-surface) 70%);border-radius:16px;flex-direction:column;display:flex}.progress-screen__count{font-family:var(--font-display);color:#fff;font-size:3rem;font-weight:700;line-height:1}.progress-screen__total{font-size:var(--font-lg);color:var(--ui-muted)}.progress-screen__label{font-size:var(--font-sm);color:var(--ui-accent);text-align:center}.settings-screen{min-height:calc(100svh - 2.5rem - var(--bottom-nav-space,0px));gap:var(--space-6);flex-direction:column;animation:.4s ease-out both tutorial-step-in;display:flex}.settings-screen__title{font-family:var(--font-brush);font-size:var(--font-xl);color:#e5e4e7;margin:0;font-weight:700}.settings-screen__section{gap:var(--space-2);flex-direction:column;display:flex}.settings-screen__label,.settings-screen__text{font-size:var(--font-sm);margin:0}.settings-screen__label{font-family:var(--font-mono);font-size:var(--font-2xs);letter-spacing:.12em;text-transform:uppercase;color:var(--ui-muted)}.settings-screen__text{color:#d1d5db}.settings-screen__button{width:100%;padding:var(--space-2) var(--space-3);border:1px solid var(--ui-line);background:var(--ui-surface-2);font:inherit;font-size:var(--font-sm);color:#d4d8e2;cursor:pointer;border-radius:6px;transition:border-color .15s}.settings-screen__button:hover{border-color:var(--ui-line-strong)}.settings-screen__credits{margin-top:auto}.settings-screen__section--dev{padding-top:var(--space-4);border-top:1px dashed var(--ui-line-strong)}.settings-screen__qa{gap:var(--space-2);padding:var(--space-3);background:#f0a52a0f;border:1px solid #f0a52a73;border-radius:6px;flex-direction:column;display:flex}.settings-screen__qa-title{color:#f6c46e}.settings-screen__qa-group{margin-top:var(--space-2)}.settings-screen__button--danger{color:#f87171;border-color:#f87171}.settings-screen__hint{font-size:var(--font-xs);color:var(--ui-muted);margin:0}.settings-screen__toggle{width:100%;padding:var(--space-2) var(--space-3);border:1px solid var(--ui-line);background:var(--ui-surface-2);font:inherit;font-size:var(--font-sm);color:var(--ui-muted);cursor:pointer;border-radius:6px;justify-content:space-between;align-items:center;transition:border-color .15s,background .15s,color .15s;display:flex}.settings-screen__toggle:hover{border-color:var(--ui-line-strong)}.settings-screen__toggle--on,.settings-screen__button--accent{color:#f6c46e;background:#f0a52a1f;border-color:#f0a52a99}.settings-screen__toggle--on:hover,.settings-screen__button--accent:hover:not(:disabled){border-color:var(--ui-accent)}.settings-screen__toggle-state{font-size:var(--font-2xs);letter-spacing:.08em;text-transform:uppercase;font-weight:700}.settings-screen__button:disabled{opacity:.5;cursor:default}.settings-screen__toggle:focus-visible,.settings-screen__button:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}.settings-screen__hint--error{color:#f87171}.world-map{--map-card-edge:#0d121d;--map-stops-height:48px;height:calc(clamp(240px, 40svh, 400px) + var(--map-stops-height));border:1px solid var(--ui-line);background:linear-gradient(#131b2b 0%,#0d121d 100%);border-radius:16px;flex-direction:column;display:flex;position:relative;overflow:hidden}@media (width>=900px){.world-map{height:calc(clamp(360px, 56svh, 600px) + var(--map-stops-height))}}.world-map__stage{flex:1;min-height:0;position:relative}.world-map__viewport{scrollbar-width:none;overscroll-behavior-x:contain;cursor:grab;justify-content:safe center;align-items:center;display:flex;position:absolute;inset:0;overflow:auto hidden}.world-map__viewport::-webkit-scrollbar{display:none}.world-map__viewport--dragging{cursor:grabbing;-webkit-user-select:none;user-select:none}.world-map__image-layer{flex-shrink:0;height:100%;animation:.65s cubic-bezier(.22,.61,.36,1) both world-map-unroll;position:relative}@keyframes world-map-unroll{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}.world-map__image{-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:auto;height:100%;display:block}.world-map__paths{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.world-map__path-line{fill:none;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.world-map__path-line--bleed{stroke:#261c1259;stroke-width:6px;filter:blur(1.4px)}.world-map__path-line--ink{stroke:#26190f;stroke-width:2.2px;opacity:.92}.world-map__pin{justify-content:center;align-items:center;display:flex;position:absolute;transform:translate(-50%,-50%)}.world-map__waypoint{background:#261c1280;border:1.5px solid #e2c48c99;border-radius:50%;width:10px;height:10px;position:relative;box-shadow:0 1px 3px #00000059}.world-map__pin--next .world-map__waypoint:before,.world-map__pin--next .world-map__waypoint:after{content:"";pointer-events:none;border-radius:50%;position:absolute}.world-map__pin--next .world-map__waypoint:before{background:radial-gradient(circle,#c084fc73,#0000 70%);animation:2.2s ease-in-out infinite world-map-next-halo;inset:-7px}.world-map__pin--next .world-map__waypoint:after{border:1.5px dashed #c084fcd9;animation:3.5s linear infinite world-map-next-spin;inset:-5px}@keyframes world-map-next-halo{0%,to{opacity:.5;transform:scale(.85)}50%{opacity:1;transform:scale(1.15)}}@keyframes world-map-next-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.world-map__seal{--stamp-color:#b5342c;filter:drop-shadow(0 0 4px #b5342c8c);animation:.42s cubic-bezier(.34,1.56,.64,1) both world-map-seal-stamp}@keyframes world-map-seal-stamp{0%{opacity:0;transform:scale(1.7)rotate(-10deg)}60%{opacity:1;transform:scale(.92)rotate(3deg)}to{opacity:1;transform:scale(1)rotate(0)}}.world-map__player-marker{width:var(--map-marker-size);height:var(--map-marker-size);position:absolute;transform:translate(-50%,-50%)}.world-map__player-marker-bounce{background:#1a1822;border:2px solid #c084fc;border-radius:50%;width:100%;height:100%;animation:2.4s ease-in-out infinite world-map-player-pulse,2s ease-in-out infinite world-map-player-bounce;display:block;overflow:hidden}@keyframes world-map-player-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.world-map__player-mask{-o-object-fit:cover;object-fit:cover;filter:hue-rotate(259deg)saturate(1.05);width:100%;height:100%}@keyframes world-map-player-pulse{0%,to{box-shadow:0 0 6px #c084fc80}50%{box-shadow:0 0 12px #c084fce6}}.world-map__pin{cursor:pointer;background:0 0;border:none;border-radius:50%;width:32px;height:32px;padding:0}.world-map__pin:focus-visible{outline:2px solid var(--ui-focus);outline-offset:0}.world-map__pin--selected:after{content:"";pointer-events:none;border:2px solid #fff;border-radius:50%;position:absolute;inset:3px;box-shadow:0 0 6px #0009}.world-map__fade{z-index:5;pointer-events:none;opacity:0;width:56px;transition:opacity .2s;position:absolute;top:0;bottom:0}.world-map__fade.is-on{opacity:1}.world-map__fade--left{background:linear-gradient(90deg, var(--map-card-edge), transparent);left:0}.world-map__fade--right{background:linear-gradient(270deg, var(--map-card-edge), transparent);right:0}.world-map__tag{--tag-gap:18px;--tag-x:-50%;--tag-y:calc(-100% - var(--tag-gap));z-index:3;border:1px solid var(--ui-line-strong);white-space:nowrap;pointer-events:none;transform:translate(var(--tag-x), var(--tag-y));background:#08080ae0;border-radius:8px;flex-direction:column;align-items:center;gap:1px;padding:5px 10px 6px;animation:.2s ease-out both world-map-tag-in;display:flex;position:absolute;box-shadow:0 4px 12px #00000073}.world-map__tag--below{--tag-y:var(--tag-gap)}.world-map__tag--start{--tag-x:-16px;align-items:flex-start}.world-map__tag--end{--tag-x:calc(-100% + 16px);align-items:flex-end}.world-map__tag:after{content:"";border:6px solid #0000;border-top-color:var(--ui-line-strong);position:absolute;top:100%;left:50%;transform:translate(-50%)}.world-map__tag--below:after{border-top-color:#0000;border-bottom-color:var(--ui-line-strong);top:auto;bottom:100%}.world-map__tag--start:after{left:16px}.world-map__tag--end:after{left:calc(100% - 16px)}.world-map__tag-title{font-size:var(--font-sm);color:#fff;font-weight:700;line-height:1.2}.world-map__tag-detail{font-size:var(--font-xs);color:var(--ui-accent);line-height:1.2}.world-map__tag-detail--locked{color:var(--ui-muted)}@keyframes world-map-tag-in{0%{opacity:0;transform:translate(var(--tag-x), calc(var(--tag-y) + 4px))}}.world-map__stops{height:var(--map-stops-height);padding:0 var(--space-3);border-top:1px solid var(--ui-line);background:var(--map-card-edge);flex:none;justify-content:center;align-items:center;margin:0;list-style:none;display:flex;position:relative}.world-map__stop-item{display:flex;position:relative}.world-map__stop-item+.world-map__stop-item:before{content:"";background:var(--ui-line-strong);width:calc(100% - 24px);height:2px;position:absolute;top:50%;right:calc(50% + 12px);transform:translateY(-50%)}.world-map__stop-item:has(.world-map__stop--done)+.world-map__stop-item:before{background:#f0a52a8c}.world-map__stop{cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;width:44px;height:44px;padding:0;display:flex}.world-map__stop:disabled{cursor:default}.world-map__stop:focus-visible{outline:none}.world-map__stop-dot{border:1.5px solid var(--ui-line-strong);background:var(--ui-surface-2);width:24px;height:24px;font-family:var(--font-mono);color:var(--ui-muted);border-radius:50%;justify-content:center;align-items:center;font-size:11px;font-weight:600;transition:transform .15s,box-shadow .15s;display:flex}.world-map__stop--done .world-map__stop-dot{border-color:var(--ui-accent);background:var(--ui-accent);color:var(--ui-accent-text)}.world-map__stop--next .world-map__stop-dot{color:#e9d5ff;border-color:#c084fc}.world-map__stop--selected .world-map__stop-dot{box-shadow:0 0 0 2px var(--map-card-edge), 0 0 0 4px #fff;transform:scale(1.15)}.world-map__stop:focus-visible .world-map__stop-dot{box-shadow:0 0 0 2px var(--map-card-edge), 0 0 0 4px var(--ui-focus)}@media (prefers-reduced-motion:reduce){.world-map__tag{animation:none}}.maestro-dialogue{align-items:center;gap:var(--space-3);width:100%;animation:.26s ease-out tutorial-step-in;display:flex}.maestro-dialogue__portrait{flex:none;width:104px;height:116px;position:relative}.maestro-dialogue__shape{background-color:var(--ui-accent);clip-path:polygon(6% 4%,97% 0%,100% 78%,88% 100%,0% 94%,3% 40%);background-image:radial-gradient(#0003 1px,#0000 1.4px);background-size:6px 6px;position:absolute;inset:0 0 10px}.maestro-dialogue__img{-o-object-fit:cover;object-fit:cover;-o-object-position:50% 12%;object-position:50% 12%;clip-path:polygon(6% 4%,97% 0%,100% 78%,88% 100%,0% 94%,3% 40%);width:100%;height:calc(100% - 10px);position:absolute;inset:0 0 10px}.maestro-dialogue__plate{color:#111318;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;background:#f3f1ec;padding:3px 8px;font-size:10px;font-weight:800;position:absolute;bottom:0;left:-6px;transform:rotate(-3deg);box-shadow:0 4px 10px #0006}.maestro-dialogue__bubble{--cut:16px;z-index:0;min-width:0;padding:var(--space-4) var(--space-4) var(--space-3);cursor:pointer;text-align:left;flex:1;position:relative}.maestro-dialogue__bubble:focus-visible{outline:2px solid var(--ui-focus);outline-offset:3px}.maestro-dialogue__bubble:before,.maestro-dialogue__bubble:after{content:"";z-index:-1;clip-path:polygon(0 0, calc(100% - var(--cut)) 0, 100% var(--cut), 100% 100%, var(--cut) 100%, 0 calc(100% - var(--cut)));position:absolute}.maestro-dialogue__bubble:before{background:var(--ui-accent);inset:0}.maestro-dialogue__bubble:after{--cut:15.6px;background:linear-gradient(#161e2e 0%,#10151f 100%);inset:1px}.maestro-dialogue__tail,.maestro-dialogue__tail:after{border-top:8px solid #0000;border-bottom:8px solid #0000;width:0;height:0;position:absolute}.maestro-dialogue__tail{border-right:9px solid var(--ui-accent);top:50%;left:-9px;transform:translateY(-50%)}.maestro-dialogue__tail:after{content:"";border-right:9px solid #131a28;top:-8px;left:1.5px}.maestro-dialogue__text{min-height:3em;font-size:var(--font-md);color:#f1f2f5;margin:0;font-weight:600;line-height:1.55}.maestro-dialogue__cursor{vertical-align:text-bottom;background:var(--ui-accent);width:2px;height:1em;margin-left:2px;animation:.8s step-end infinite maestro-dialogue-blink;display:inline-block}@keyframes maestro-dialogue-blink{50%{opacity:0}}.maestro-dialogue__meta{justify-content:flex-end;align-items:center;gap:var(--space-3);min-height:28px;margin-top:var(--space-2);display:flex}.maestro-dialogue__next{color:var(--ui-accent);align-items:center;gap:2px;margin-right:-6px;display:flex}.maestro-dialogue__next-label{font-size:var(--font-sm);font-weight:800;line-height:1}.maestro-dialogue__action{min-height:36px;padding:0 var(--space-4);clip-path:polygon(0 0,calc(100% - 8px) 0,100% 8px,100% 100%,8px 100%,0 calc(100% - 8px));background:var(--ui-accent);color:var(--ui-accent-text);font:inherit;font-size:var(--font-sm);cursor:pointer;border:none;font-weight:700;transition:filter .15s,transform .1s;animation:.22s ease-out tutorial-step-in}.maestro-dialogue__action:hover{filter:brightness(1.08)}.maestro-dialogue__action:active{transform:scale(.98)}.maestro-dialogue__action:focus-visible{outline-offset:2px;outline:2px solid #fff}@media (width>=900px){.maestro-dialogue__portrait{width:132px;height:148px}.maestro-dialogue__bubble{padding:var(--space-5) var(--space-5) var(--space-3)}.maestro-dialogue__text{font-size:var(--font-lg)}}@media (prefers-reduced-motion:reduce){.maestro-dialogue__cursor{animation:none}}.story-map{z-index:10;gap:var(--space-5);padding:var(--space-5) var(--space-4) calc(var(--story-bar-space,0px) + var(--space-4));background-color:#08080a;background-image:linear-gradient(#ffffff06 1px,#0000 1px),linear-gradient(90deg,#ffffff06 1px,#0000 1px);background-size:24px 24px;flex-direction:column;display:flex;position:fixed;inset:0;overflow:hidden auto}.story-map--desktop{gap:var(--space-6);padding:2rem clamp(1.5rem, 4vw, 3.5rem) var(--space-5)}.story-map__title{font-family:var(--font-display);font-size:var(--font-xl);color:#fff;margin:0;font-weight:700;line-height:1.1}.story-map__subtitle{font-size:var(--font-sm);color:#93a4c9;margin:2px 0 0}.story-map--desktop .story-map__title{font-size:2rem}.story-map__dialogue{flex:1 0 auto;justify-content:center;align-items:center;display:flex}.story-map--desktop .story-map__dialogue{width:100%;max-width:820px;margin:0 auto}.story-map__shortcuts{justify-content:center;gap:var(--space-6);padding-top:var(--space-4);border-top:1px solid var(--ui-line);font-family:var(--font-mono);font-size:var(--font-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--ui-muted);flex-wrap:wrap;display:flex}.story-map__shortcuts span{align-items:center;gap:6px;display:inline-flex}.story-map__shortcuts kbd{border:1px solid var(--ui-line-strong);background:var(--ui-surface);min-width:22px;font-family:var(--font-mono);font-size:var(--font-xs);text-align:center;text-transform:none;color:#d5d9e3;border-bottom-width:2px;border-radius:5px;padding:2px 6px}.story-map__bar{--bottom-nav-space:calc(3.5rem + env(safe-area-inset-bottom));z-index:20;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#08080af5;position:fixed;bottom:0;left:0;right:0}.story-map__bar-action{padding:var(--space-3) var(--space-4);border-top:1px solid var(--ui-line);justify-content:center;display:flex}.story-map__action{width:100%;max-width:420px;min-height:48px;padding:0 var(--space-6);background:var(--ui-accent);color:var(--ui-accent-text);font:inherit;font-size:var(--font-sm);cursor:pointer;border:none;border-radius:10px;font-weight:700;transition:filter .15s,transform .1s;animation:.22s ease-out tutorial-step-in}.story-map__action:hover{filter:brightness(1.08)}.story-map__action:active{transform:scale(.98)}.story-map__action:focus-visible{outline-offset:2px;outline:2px solid #fff}.story-map__nav.bottom-nav{-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;max-width:none;position:static;transform:none}.narrative{--scene-pad-x:16px;--scene-pad-b:calc(16px + env(safe-area-inset-bottom));--scene-top:calc(16px + env(safe-area-inset-top));--speaker-color:var(--ui-accent);z-index:10;color:#e8e6e3;font-family:var(--font-body);cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;background:#08080a;position:fixed;inset:0;overflow:hidden}@media (width>=720px){.narrative{--scene-pad-x:40px;--scene-top:24px}}@media (hover:hover) and (pointer:fine){.narrative{--scene-pad-b:52px}}.narrative__art{position:absolute;inset:-16px}.narrative__image{background-position:50%;background-size:cover;transition:transform 1.2s cubic-bezier(.2,.8,.2,1);position:absolute;inset:0}.narrative--versus .narrative__image{transform:scale(1.08)}.narrative__shade{background:linear-gradient(#08080a9e 0%,#08080a00 20% 42%,#08080ad1 78%,#08080af0 100%);position:absolute;inset:0}.narrative__halo{opacity:0;background:radial-gradient(70% 40% at 50% 34%,#08080a9e,#08080a00 70%);transition:opacity .5s;position:absolute;inset:0}.narrative__halo--on{opacity:1}.narrative__header{z-index:3;top:var(--scene-top);left:var(--scene-pad-x);right:var(--scene-pad-x);align-items:center;gap:14px;transition:opacity .3s,transform .3s;display:flex;position:absolute}.narrative--versus .narrative__header{opacity:0;pointer-events:none;transform:translateY(-16px)}.narrative__back{color:#c9ccd3;cursor:pointer;background:#0b0d12b8;border:1px solid #ffffff29;border-radius:50%;flex:none;justify-content:center;align-items:center;width:40px;height:40px;padding:0;transition:color .15s,border-color .15s;display:flex}.narrative__back:hover{color:var(--ui-accent);border-color:#f0a52a66}.narrative__skip{color:#c9ccd3;height:32px;font:600 12px/1 var(--font-body);white-space:nowrap;cursor:pointer;background:#0b0d12b8;border:1px solid #ffffff29;border-radius:999px;flex:none;margin-left:auto;padding:0 12px;transition:color .15s,border-color .15s}.narrative__skip:hover{color:var(--ui-accent);border-color:#f0a52a66}.narrative__back:focus-visible,.narrative__skip:focus-visible,.narrative__advance:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}.narrative__place{border-left:3px solid #e0574a;flex-direction:column;justify-content:center;gap:5px;min-width:0;padding-left:13px;animation:.35s ease-out both narrative-line-in;display:flex}.narrative__kicker{font:500 10px/1 var(--font-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--ui-accent)}.narrative__place-name{font:800 16px/1 var(--font-body);letter-spacing:-.01em;white-space:nowrap;text-overflow:ellipsis;color:#f4f2ee;text-shadow:0 1px 8px #0009;overflow:hidden}.narrative__tag{font:500 10px/1 var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ui-accent);background:#f0a52a1f;border:1px solid #f0a52a59;border-radius:6px;flex:none;padding:5px 8px}.narrative__tag--muted{color:#9aa0ab;background:#ffffff0d;border-color:#ffffff1f}.narrative__stamp{outline-offset:2px;color:#e0574a;font:800 11px/1 var(--font-body);letter-spacing:.18em;text-transform:uppercase;filter:drop-shadow(0 0 4px #e0574a73);background:#0b0d12b8;border:2px solid;border-radius:4px;outline:1px solid;flex:none;margin-left:10px;padding:6px 9px 5px;animation:.42s cubic-bezier(.34,1.56,.64,1) .2s both narrative-stamp;transform:rotate(-6deg)}.narrative__chapter{z-index:1;text-align:center;pointer-events:none;flex-direction:column;align-items:center;display:flex;position:absolute;top:24%;left:24px;right:24px}.narrative__chapter-kicker{font:500 11px/1 var(--font-mono);letter-spacing:.32em;text-transform:uppercase;color:var(--ui-accent);align-items:center;gap:14px;animation:.6s ease-out .1s both narrative-title-in;display:flex}.narrative__chapter-rule{background:#f0a52a99;width:28px;height:1px}.narrative__chapter-title{font:800 44px/1 var(--font-body);letter-spacing:-.025em;color:#f4f2ee;text-wrap:balance;text-shadow:0 2px 28px #000000b3;margin:16px 0 0;animation:.7s ease-out .25s both narrative-title-in}.narrative__chapter-mark{background:#e0574a;width:36px;height:3px;margin-top:20px;animation:.5s ease-out .6s both narrative-slash}@media (width>=720px){.narrative__chapter{top:22%}.narrative__chapter-kicker{font-size:13px}.narrative__chapter-rule{width:48px}.narrative__chapter-title{font-size:72px}}.narrative__reward{z-index:1;pointer-events:none;justify-content:center;padding:0 20px;display:flex;position:absolute;top:96px;left:0;right:0}.narrative__reward-card{text-align:center;background:#0a0c12cc;border:1px solid #f0a52a66;border-radius:16px;flex-direction:column;align-items:center;gap:12px;width:100%;max-width:380px;padding:24px 24px 20px;animation:.45s cubic-bezier(.2,1,.3,1) both narrative-reward-in;display:flex}.narrative__seal{width:52px;height:52px;font:800 20px/1 var(--font-body);color:#e0574a;background:#e0574a24;border:2px solid #e0574a;justify-content:center;align-items:center;animation:.55s cubic-bezier(.2,1,.3,1) .2s both narrative-seal-in;display:flex;transform:rotate(-4deg)}.narrative__reward-kicker{font:500 10.5px/1 var(--font-mono);letter-spacing:.24em;text-transform:uppercase;color:var(--ui-accent)}.narrative__reward-title{font:800 30px/1.05 var(--font-body);letter-spacing:-.02em;color:#f4f2ee}.narrative__reward-rule{background:#ffffff14;width:100%;height:1px;margin-top:4px}.narrative__reward-next{font:500 13px/1.4 var(--font-body);color:#9aa0ab}.narrative__reward-next span{color:#e8e6e3}@media (width>=720px){.narrative__reward{top:84px}.narrative__reward-title{font-size:36px}}.narrative__dialogue{z-index:2;left:var(--scene-pad-x);right:var(--scene-pad-x);bottom:var(--scene-pad-b);flex-direction:column;max-width:1040px;margin:0 auto;transition:opacity .3s,transform .35s cubic-bezier(.4,0,.2,1);display:flex;position:absolute}.narrative--versus .narrative__dialogue{opacity:0;pointer-events:none;transform:translateY(40px)}.narrative__cast{z-index:2;pointer-events:none;justify-content:space-between;align-items:flex-end;height:152px;margin-bottom:-18px;display:flex;position:relative}.narrative__speaker,.narrative__partner{display:flex}.narrative__speaker .stage-portrait,.narrative__partner .stage-portrait{width:100%;height:100%}.narrative__speaker{width:128px;height:152px;animation:.32s cubic-bezier(.2,.9,.3,1) both narrative-pin}.narrative__partner{filter:grayscale(.55)brightness(.42);width:104px;height:124px;animation:.32s ease-out both narrative-pin-right}.narrative__box{--cut:18px;z-index:1;flex-direction:column;gap:2px;min-height:116px;padding:32px 18px 10px;display:flex;position:relative}.narrative__box:before,.narrative__box:after{content:"";z-index:-1;clip-path:polygon(0 0, calc(100% - var(--cut)) 0, 100% var(--cut), 100% 100%, var(--cut) 100%, 0 calc(100% - var(--cut)));transition:background .3s;position:absolute}.narrative__box:before{background:var(--speaker-color);inset:0}.narrative__box:after{--cut:17.4px;background:#121826;inset:1.5px}.narrative__lines{display:grid}.narrative__lines>p{grid-area:1/1}.narrative__ghost{visibility:hidden}.narrative__text{font:700 17px/1.5 var(--font-body);color:#f4f2ee;text-wrap:pretty;margin:0}.narrative__text:not(.narrative__ghost),.narrative__narration-text:not(.narrative__ghost){animation:.25s ease-out both narrative-line-in}.narrative__caret{vertical-align:-2px;background:var(--speaker-color);width:7px;height:1em;margin-left:2px;animation:.8s step-end infinite narrative-blink;display:inline-block}.narrative__footer{justify-content:flex-end;margin-top:auto;display:flex}.narrative__advance{min-height:22px;color:var(--speaker-color);cursor:pointer;background:0 0;border:none;flex:none;align-items:center;gap:2px;margin-right:-6px;padding:0;transition:opacity .2s;display:flex}.narrative__advance--finish{color:var(--ui-accent)}.narrative__advance--fight{color:#e0574a}.narrative__advance--hidden{visibility:hidden}.narrative__advance-label{font:800 14px/1 var(--font-body);letter-spacing:.01em}.narrative__narration{flex-direction:column;align-items:center;gap:18px;display:flex}.narrative__narration-band{background:linear-gradient(90deg,#08080a00,#08080ac7 18% 82%,#08080a00);flex-direction:column;align-items:center;gap:14px;width:100%;max-width:720px;padding:18px 8px;display:flex}.narrative__ornament{align-items:center;gap:10px;display:flex}.narrative__ornament span{background:#f0a52a8c;width:28px;height:1px}.narrative__ornament .narrative__ornament-diamond{background:#e0574a;width:6px;height:6px;transform:rotate(45deg)}.narrative__narration .narrative__lines{max-width:560px}.narrative__narration-text{font:italic 500 17px/1.55 var(--font-body);text-align:center;text-wrap:pretty;color:#e8e6e3;margin:0}.narrative__footer--narration{width:100%;max-width:560px}@media (width>=720px){.narrative__cast{height:224px}.narrative__speaker{width:190px;height:224px}.narrative__partner{width:160px;height:188px}.narrative__cast .stage-portrait__name span{font-size:13px}.narrative__box{min-height:130px;padding:34px 26px 12px}.narrative__text,.narrative__narration-text{font-size:21px}.narrative__narration-band{padding:22px 40px}.narrative__advance-label{font-size:15px}}.narrative__keys{z-index:2;pointer-events:none;position:absolute;bottom:18px;left:0;right:0}.narrative__keys .stage__keys{margin-top:0}.narrative .battle-versus__fighter{width:120px;height:154px}@media (width>=720px){.narrative .battle-versus{gap:40px}.narrative .battle-versus__fighter{width:220px;height:284px}.narrative .battle-versus__vs{font-size:96px}}@keyframes narrative-line-in{0%{opacity:0;transform:translateY(6px)}}@keyframes narrative-pin{0%{opacity:0;transform:translate(-28px)}}@keyframes narrative-pin-right{0%{opacity:0;transform:translate(28px)}}@keyframes narrative-title-in{0%{opacity:0;letter-spacing:.04em;transform:translateY(14px)}}@keyframes narrative-slash{0%{transform:scaleX(0)}}@keyframes narrative-reward-in{0%{opacity:0;transform:scale(.9)}}@keyframes narrative-seal-in{0%{opacity:0;transform:scale(1.8)rotate(-12deg)}70%{opacity:1;transform:scale(.94)rotate(-4deg)}to{transform:rotate(-4deg)}}@keyframes narrative-stamp{0%{opacity:0;transform:scale(1.7)rotate(-16deg)}60%{opacity:1;transform:scale(.92)rotate(-3deg)}to{opacity:1;transform:rotate(-6deg)}}@keyframes narrative-blink{50%{opacity:0}}@media (prefers-reduced-motion:reduce){.narrative__image,.narrative__place,.narrative__chapter-kicker,.narrative__chapter-title,.narrative__chapter-mark,.narrative__reward-card,.narrative__seal,.narrative__stamp,.narrative__speaker,.narrative__partner,.narrative__text,.narrative__narration-text{transition:none;animation:none}}.arc-portrait{--portrait-inset:7px 7px 23px 8px;--plate-size:12px;width:100%;height:100%;display:block;position:relative}.arc-portrait__back{clip-path:polygon(6% 3%,98% 0,100% 88%,1% 97%);background-color:var(--portrait-color);background-image:radial-gradient(#08080a38 1.2px,#0000 1.5px);background-size:6px 6px;position:absolute;inset:0 0 16px}.arc-portrait__image{inset:var(--portrait-inset);clip-path:polygon(5% 2%,98% 0,100% 89%,0 96%);background:#0f0e15 var(--portrait-url) 50% 20% / cover no-repeat;transition:filter 1s cubic-bezier(.2,.8,.2,1);position:absolute}.arc-portrait--veiled .arc-portrait__image{filter:blur(var(--veil-blur)) brightness(var(--veil-brightness)) saturate(var(--veil-saturate))}.arc-portrait--veiled .arc-portrait__dot{background:#5d626c}.arc-portrait__plate{clip-path:polygon(0 0,100% 0,95% 100%,0 100%);background:#f4f2ee;align-items:center;gap:7px;padding:7px 12px 7px 10px;display:flex;position:absolute;bottom:0;left:-2px;transform:rotate(-2deg)}.arc-portrait__dot{background:var(--portrait-color);flex:none;width:8px;height:8px}.arc-portrait__name{font:800 var(--plate-size) / 1 var(--font-body);letter-spacing:.04em;text-transform:uppercase;color:#08080a;white-space:nowrap}.arc-portrait--mystery .arc-portrait__back{font:800 var(--mystery-size,76px) / 1 var(--font-body);color:#ffffff1f;background-color:#161c28;background-image:radial-gradient(#ffffff0f 1.2px,#0000 1.5px);place-items:center;display:grid;inset:0 0 8%}.arc-objective{z-index:10;color:#f4f2ee;width:100%;font-family:var(--font-body);cursor:pointer;background:#08080a 50%/cover no-repeat;border:none;justify-content:center;align-items:center;padding:24px 16px;display:flex;position:fixed;inset:0}.arc-objective__shade{background:#08080ac7;animation:.4s ease-out both arc-objective-fade;position:absolute;inset:0}.arc-objective__card{align-items:center;gap:var(--space-3);text-align:center;flex-direction:column;max-width:420px;animation:.45s ease-out .15s both arc-objective-in;display:flex;position:relative}.arc-objective__eyebrow{font-family:var(--font-mono);font-size:var(--font-xs);letter-spacing:.14em;text-transform:uppercase;color:#9aa0ab;font-weight:700}.arc-objective__title{font-family:var(--font-brush);font-size:var(--font-xl);font-weight:800;line-height:1.15}.arc-objective__rivals{gap:var(--space-3);display:flex}.arc-objective__rival{aspect-ratio:230/272;width:76px;display:flex}.arc-objective__rival--later{opacity:.5;filter:saturate(.6)}.arc-objective__subtitle{font-family:var(--font-brush);font-size:var(--font-lg);font-weight:700}.arc-objective__gauge{align-items:center;gap:var(--space-2);font:500 var(--font-xs) / 1.3 var(--font-mono);color:#c9ccd3;display:flex}.arc-objective__pips{gap:4px;display:flex}.arc-objective__pip{background:#f4f2ee38;border-radius:2px;width:14px;height:5px}.arc-objective__first{margin-top:var(--space-2);font-family:var(--font-mono);font-size:var(--font-xs);letter-spacing:.12em;text-transform:uppercase;color:#9aa0ab}@keyframes arc-objective-fade{0%{opacity:0}to{opacity:1}}@keyframes arc-objective-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.arc-objective *{animation-duration:.01ms!important;animation-delay:0s!important}}.boss-reveal{--reveal-red:#e0574a;z-index:10;justify-content:center;align-items:center;gap:var(--space-5);color:#f4f2ee;width:100%;font-family:var(--font-body);text-align:center;cursor:pointer;background:#08080a 50%/cover no-repeat;border:none;flex-direction:column;padding:24px 16px;display:flex;position:fixed;inset:0}.boss-reveal__shade{background:#08080ad1;position:absolute;inset:0}.boss-reveal__portrait{aspect-ratio:230/272;width:min(230px,62vw);position:relative}.boss-reveal__clear,.boss-reveal__veil{display:flex;position:absolute;inset:0}.boss-reveal__clear{animation:.6s cubic-bezier(.2,1,.3,1) .55s both boss-reveal-slam}.boss-reveal__veil{animation:.5s ease-out .45s both boss-reveal-veil-out}.boss-reveal__flash{opacity:0;background:#fff;border-radius:20px;animation:.6s ease-out .25s both boss-reveal-flash;position:absolute;inset:-12px}.boss-reveal__ring{border:2px solid var(--reveal-red);border-radius:20px;animation:1.8s ease-out 1.2s infinite both boss-reveal-ring;position:absolute;inset:-10px}.boss-reveal__info{flex-direction:column;gap:6px;animation:.35s ease-out .95s both boss-reveal-in;display:flex;position:relative}.boss-reveal__eyebrow{font-family:var(--font-mono);font-size:var(--font-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--reveal-red);font-weight:700}.boss-reveal__name{font-family:var(--font-brush);font-size:var(--font-xl);font-weight:800}.boss-reveal__kotodama{font-size:var(--font-sm);color:#c9ccd3}@keyframes boss-reveal-veil-out{0%{opacity:1;transform:none}to{opacity:0;transform:scale(1.25)}}@keyframes boss-reveal-slam{0%{opacity:0;transform:scale(1.5)skew(-8deg)}60%{opacity:1;transform:scale(.95)}to{transform:none}}@keyframes boss-reveal-flash{0%{opacity:0}20%{opacity:.85}to{opacity:0}}@keyframes boss-reveal-ring{0%{opacity:.9;transform:scale(1)}to{opacity:0;transform:scale(1.05)}}@keyframes boss-reveal-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.boss-reveal *{animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0s!important}}.arc-screen{--arc-amber:#f0a52a;--arc-red:#e0574a;--arc-ink:#f4f2ee;--arc-soft:#c9ccd3;--arc-muted:#9aa0ab;--arc-dim:#5d626c;z-index:10;color:#e8e6e3;font-family:var(--font-body);background:#08080a;position:fixed;inset:0;overflow:hidden}.arc-screen__map{background:#1b2a1e url(/map/mapamundi.jpg) var(--map-x) var(--map-y) / cover no-repeat;transform-origin:var(--map-x) var(--map-y);position:absolute;inset:0;transform:scale(1.3)}.arc-screen__shade{background:radial-gradient(70% 32% at 50% 108%,#f0a52a24,#f0a52a00 70%),linear-gradient(#08080ac7 0%,#08080a6b 26%,#08080ab8 52%,#08080af0 100%);position:absolute;inset:0}.arc-screen__content{padding:calc(16px + env(safe-area-inset-top)) 16px calc(100px + env(safe-area-inset-bottom));scrollbar-width:none;box-sizing:border-box;flex-direction:column;gap:12px;display:flex;position:absolute;inset:0;overflow-y:auto}.arc-screen__content>*,.arc-screen__cta>*{width:100%;max-width:560px;margin-inline:auto}.arc-screen__header{align-items:flex-start;gap:12px;display:flex}.arc-screen__back{width:44px;height:44px;color:var(--arc-soft);cursor:pointer;background:#0b0d12b8;border:1px solid #ffffff29;border-radius:50%;flex:none;place-items:center;padding:0;transition:color .15s,border-color .15s;display:grid}.arc-screen__back:hover{color:var(--arc-amber);border-color:#f0a52a66}.arc-screen__titles{flex-direction:column;flex:1;gap:6px;min-width:0;padding-top:2px;display:flex}.arc-screen__chapter{font:500 10px / 1 var(--font-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--arc-amber)}.arc-screen__name{flex-wrap:wrap;align-items:baseline;gap:4px 8px;display:flex}.arc-screen__title{font:800 23px / 1 var(--font-body);letter-spacing:-.02em;color:var(--arc-ink);margin:0}.arc-screen__japanese{font:700 14px / 1 var(--font-sans);color:var(--arc-soft)}.arc-screen__romaji{font:500 11px / 1 var(--font-mono);letter-spacing:.12em;color:#7e828c;display:none}.arc-screen__total{font:800 19px / 1 var(--font-body);color:var(--arc-ink);white-space:nowrap;flex:none;padding-top:12px}.arc-screen__total-star{color:var(--arc-amber)}.arc-screen__total-max{color:var(--arc-dim)}.arc-button{border:1px solid var(--arc-amber);background:var(--arc-amber);color:#08080a;height:44px;font:800 14px / 1 var(--font-body);cursor:pointer;border-radius:12px;padding:0 14px;transition:filter .15s}.arc-button:hover{filter:brightness(1.08)}.arc-button:focus-visible,.arc-screen__back:focus-visible,.arc-screen__play:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}.arc-card--choice{cursor:pointer;opacity:.72;transition:transform .18s,opacity .18s,border-color .18s,box-shadow .18s}.arc-card--choice:hover:not(.arc-card--selected),.arc-card--choice:focus-within:not(.arc-card--selected){opacity:.9}.arc-card--selected{opacity:1;border-color:var(--rival-color);box-shadow:0 0 0 1px var(--rival-color), 0 8px 24px color-mix(in srgb, var(--rival-color) 22%, transparent);transform:translateY(-2px)}.arc-card__select{z-index:1;border-radius:inherit;cursor:pointer;background:0 0;border:none;padding:0;position:absolute;inset:0}.arc-card__select:focus-visible{outline:2px solid var(--ui-focus);outline-offset:3px}.arc-notice{color:var(--arc-soft);font-size:var(--font-sm);background:#0a0c12d6;border:1px solid #f0a52a66;border-radius:16px;margin:0;padding:10px 14px;animation:.5s cubic-bezier(.2,1,.3,1) both arc-unlock}.arc-notice strong{color:var(--arc-amber)}.arc-done{background:#0a0c12d6;border:1px solid #f0a52a66;border-radius:16px;align-items:center;gap:14px;padding:12px 14px;animation:.5s cubic-bezier(.2,1,.3,1) both arc-unlock;display:flex}.arc-done__stamp{box-sizing:border-box;border:2px solid var(--arc-red);width:36px;height:36px;font:800 15px / 1 var(--font-body);color:var(--arc-red);background:#e0574a24;flex:none;place-items:center;display:grid;transform:rotate(-4deg)}.arc-done__titles{flex-direction:column;gap:6px;display:flex}.arc-done__eyebrow{font:500 9.5px / 1 var(--font-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--arc-amber)}.arc-done__title{font:800 17px / 1 var(--font-body);color:var(--arc-ink)}.arc-done__next,.arc-done__back{display:none}.arc-done__next{font:500 14px / 1.4 var(--font-body);color:var(--arc-muted)}.arc-done__next span{color:#e8e6e3}.arc-screen__fights{flex-direction:column;gap:12px;margin-block:0;padding:0;list-style:none;display:flex}.arc-card{box-sizing:border-box;background:linear-gradient(160deg,#18202ef0,#141a26f0 55%,#111621f0);border:1px solid #ffffff1a;border-radius:14px;grid-template-columns:76px minmax(0,1fr) auto;align-items:center;gap:6px 14px;padding:10px 12px 10px 10px;display:grid;position:relative}.arc-card--mystery{background:#0d111a99;border:1px dashed #ffffff1f}.arc-card--unlocked{animation:.6s cubic-bezier(.2,1,.3,1) .2s backwards arc-unlock}.arc-card__portrait{width:76px;height:90px;display:block}.arc-card__portrait .arc-portrait{--portrait-inset:3.6px 4.5px 19.6px 4.5px;--mystery-size:34px}.arc-card__portrait .arc-portrait__plate{display:none}.arc-card__body{flex-direction:column;gap:7px;min-width:0;display:flex}.arc-card__name{font:800 18px / 1 var(--font-body);color:var(--arc-ink);align-items:center;gap:7px;display:flex}.arc-card__name:before{content:"";background:var(--rival-color);flex:none;width:8px;height:8px}.arc-card__themes{font:600 12px / 1.3 var(--font-body);color:var(--arc-muted)}.arc-card__theme+.arc-card__theme:before{content:" · "}.arc-card__lock{width:44px;height:44px;color:var(--arc-dim);grid-column:3;place-items:center;display:grid}.arc-stars{gap:2px;display:flex}.arc-star{font:400 17px / 1 var(--font-sans);color:#ffffff29;display:inline-block}.arc-star--on{color:var(--arc-amber)}.arc-star--new{text-shadow:0 0 12px #f0a52ab3;animation:arc-star-pop .55s var(--delay) cubic-bezier(.2, 1, .3, 1) both}.arc-boss{background:linear-gradient(160deg,#27171b,#171319 52%,#111621);border:1px solid #e0574a38;border-radius:16px;flex:none;position:relative}.arc-boss--open{border:1.5px solid var(--arc-red)}.arc-boss--revealing{animation:.5s .25s arc-shake}.arc-boss__sealed{align-items:center;gap:22px;padding:16px 18px;display:flex}.arc-boss__sealed .arc-boss__portrait{flex:none;width:96px;height:114px}.arc-boss__portrait{display:block}.arc-boss__portrait .arc-portrait{--portrait-inset:3.6px 4.5px 19.6px 4.5px;--plate-size:9px}.arc-boss__portrait--breathing{animation:3.6s ease-in-out infinite arc-breath}.arc-gauge{align-items:center;gap:8px;display:flex}.arc-gauge__pips{gap:3px;display:flex}.arc-gauge__pip{background:#ffffff24;border-radius:2px;width:16px;height:5px}.arc-gauge__pip--on{background:var(--arc-amber)}.arc-gauge__pip--new{animation:arc-pip-in .5s var(--delay) ease-out both}.arc-gauge__star{font:400 14px / 1 var(--font-sans);color:var(--arc-dim)}.arc-gauge__star--on{color:var(--arc-amber)}.arc-boss__open{align-items:center;gap:14px;padding:14px;display:flex;position:relative}.arc-boss__open .arc-boss__portrait{flex:none;width:112px;height:134px}.arc-boss__open .arc-portrait__plate{display:none}.arc-boss__info{z-index:2;flex-direction:column;flex:1;gap:7px;min-width:0;display:flex;position:relative}.arc-boss__name{font:800 18px / 1 var(--font-body);color:var(--arc-ink)}.arc-boss__kotodama{z-index:2;cursor:help;background:#08080a73;border:1px solid #e0574a4d;border-radius:999px;outline:none;align-self:flex-start;align-items:center;gap:9px;padding:5px 12px 5px 5px;display:flex;position:relative}.arc-boss__kotodama:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}.arc-boss__kanji{box-sizing:border-box;width:30px;height:30px;font:700 11px / 1 var(--font-sans);color:var(--arc-red);background:#e0574a29;border:1px solid #e0574a73;border-radius:50%;flex:none;place-items:center;display:grid}.arc-boss__kotodama-name{font:800 13.5px / 1.1 var(--font-body);color:var(--arc-ink)}.arc-boss__kotodama-desc{width:max-content;max-width:240px;font:500 13px / 1.4 var(--font-body);color:var(--arc-soft);text-align:left;opacity:0;pointer-events:none;background:#12151e;border:1px solid #e0574a59;border-radius:10px;padding:10px 12px;transition:opacity .15s,transform .15s;position:absolute;bottom:calc(100% + 8px);left:0;transform:translateY(4px);box-shadow:0 8px 24px #00000080}.arc-boss__kotodama:hover .arc-boss__kotodama-desc,.arc-boss__kotodama:focus .arc-boss__kotodama-desc{opacity:1;transform:none}.arc-boss__ring{border:2px solid var(--arc-red);pointer-events:none;border-radius:16px;animation:1.8s ease-out 1.2s infinite arc-ring;position:absolute;inset:0}.arc-boss--revealing .arc-boss__slam{animation:.6s cubic-bezier(.2,1,.3,1) .55s both arc-slam}.arc-boss--revealing .arc-boss__after{animation:.35s ease-out .95s both arc-in}.arc-boss__breaking{border-radius:inherit;pointer-events:none;position:absolute;inset:0;overflow:hidden}.arc-boss__veil-out{align-items:center;padding:14px;animation:.5s ease-out .45s both arc-veil-out;display:flex;position:absolute;inset:0}.arc-boss__veil-out .arc-boss__portrait{width:112px;height:134px}.arc-boss__flash{opacity:0;background:#fff;animation:.6s ease-out .25s both arc-flash;position:absolute;inset:0}.arc-screen__cta{padding:12px 16px calc(14px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0d111ad1;border-top:1px solid #ffffff14;position:absolute;bottom:0;left:0;right:0}.arc-screen__play{background:var(--play-bg,var(--arc-amber));width:100%;height:52px;color:var(--play-text,#08080a);font:800 16px / 1 var(--font-body);cursor:pointer;border:none;border-radius:12px;transition:background-color .2s,color .2s,filter .15s,transform .1s;display:block}.arc-screen__play:hover{filter:brightness(1.08)}.arc-screen__play:active{transform:scale(.98)}@media (width>=900px){.arc-screen__content{gap:22px;padding:24px 40px 100px}.arc-screen__content>*{max-width:none}.arc-screen__header{align-items:center;gap:16px}.arc-screen__back{width:40px;height:40px}.arc-screen__titles{border-left:3px solid var(--arc-red);flex:none;gap:7px;padding:0 0 0 12px}.arc-screen__chapter{letter-spacing:.22em;font-size:11px}.arc-screen__name{flex-wrap:nowrap;gap:12px}.arc-screen__title{font-size:30px}.arc-screen__japanese{font-size:18px}.arc-screen__romaji{display:inline}.arc-screen__total{margin-left:auto;padding:0;font-size:22px}.arc-done{background:#0a0c12d1;gap:18px;padding:12px 14px 12px 16px}.arc-done__stamp{width:42px;height:42px;font-size:18px}.arc-done__eyebrow{letter-spacing:.22em;font-size:10px}.arc-done__title{letter-spacing:-.01em;font-size:20px}.arc-done__next{display:inline}.arc-done__back{margin-left:auto;padding:0 22px;display:inline-block}.arc-screen__fights{flex:1;grid-template-columns:repeat(3,minmax(0,1fr)) minmax(0,1.32fr);gap:16px;min-height:0;display:grid}.arc-card{border-radius:16px;flex-direction:column;align-items:center;gap:16px;min-height:0;padding:22px 16px 16px;display:flex}.arc-card__portrait{aspect-ratio:180/214;width:min(180px,100%);height:auto}.arc-card__portrait .arc-portrait{--portrait-inset:7px 7px 23px 8px;--mystery-size:76px}.arc-card__portrait .arc-portrait__plate{display:flex}.arc-card__body{align-items:center;gap:16px}.arc-card__name{display:none}.arc-card__themes{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.arc-card__theme{font:600 12.5px / 1 var(--font-body);color:var(--arc-soft);background:#ffffff0d;border:1px solid #ffffff14;border-radius:8px;padding:6px 9px}.arc-card__theme+.arc-card__theme:before{content:none}.arc-stars{gap:4px}.arc-star{font-size:24px}.arc-card__lock{align-self:stretch;width:auto;margin-top:auto}.arc-boss{flex-direction:column;min-height:0;display:flex}.arc-boss__sealed{flex-direction:column;flex:1;justify-content:center;gap:34px;padding:24px}.arc-boss__sealed .arc-boss__portrait,.arc-boss__open .arc-boss__portrait,.arc-boss__veil-out .arc-boss__portrait{aspect-ratio:230/272;width:min(230px,100%);height:auto}.arc-boss__portrait .arc-portrait{--portrait-inset:7px 7px 23px 8px;--plate-size:14px}.arc-gauge__pip{width:14px}.arc-gauge__star{font-size:15px}.arc-boss__open{flex-direction:column;flex:1;align-items:stretch;gap:16px;padding:22px 20px 18px}.arc-boss__open .arc-boss__portrait{align-self:center}.arc-boss__open .arc-portrait__plate{display:flex}.arc-boss__info{flex:none;align-items:center;gap:8px}.arc-boss__name{display:none}.arc-boss__kotodama{align-self:center;gap:12px;padding:6px 16px 6px 6px}.arc-boss__kanji{width:36px;height:36px;font-size:13px}.arc-boss__kotodama-name{font-size:15px}.arc-boss__kotodama-desc{left:50%;transform:translate(-50%,4px)}.arc-boss__kotodama:hover .arc-boss__kotodama-desc,.arc-boss__kotodama:focus .arc-boss__kotodama-desc{transform:translate(-50%)}.arc-boss__info .arc-stars{margin-top:4px}.arc-boss__veil-out{justify-content:center;align-items:flex-start;padding:22px 0 0}.arc-screen__cta{-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border-top:none;padding-bottom:20px}.arc-screen__play{width:280px}}@keyframes arc-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes arc-unlock{0%{opacity:0;transform:scale(.94)}60%{opacity:1;transform:scale(1.015)}to{transform:none}}@keyframes arc-star-pop{0%{opacity:0;color:#fff;transform:scale(2.2)rotate(-25deg)}55%{opacity:1;transform:scale(.85)}to{transform:scale(1)}}@keyframes arc-pip-in{0%{background:#fff;transform:scale(1.8)}to{transform:none}}@keyframes arc-breath{0%,to{transform:none}50%{transform:translateY(-3px)}}@keyframes arc-ring{0%{opacity:.9;transform:scale(1)}to{opacity:0;transform:scale(1.05)}}@keyframes arc-veil-out{0%{opacity:1;transform:none}to{opacity:0;transform:scale(1.25)}}@keyframes arc-slam{0%{opacity:0;transform:scale(1.5)skew(-8deg)}60%{opacity:1;transform:scale(.95)}to{transform:none}}@keyframes arc-flash{0%{opacity:0}20%{opacity:.85}to{opacity:0}}@keyframes arc-shake{0%,to{transform:none}15%{transform:translate(-7px,2px)}30%{transform:translate(6px,-3px)}45%{transform:translate(-5px,1px)}60%{transform:translate(4px,2px)}80%{transform:translate(-2px,-1px)}}@media (prefers-reduced-motion:reduce){.arc-screen *,.arc-screen :before{animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0s!important}.arc-boss__ring{display:none}}
