/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@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{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, 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;--spacing:.25rem;--ease-out:cubic-bezier(0, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.block{display:block}.hidden{display:none}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.lowercase{text-transform:lowercase}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.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))}}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/geist-latin-ext-100900.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/geist-latin-100900.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/geist-mono-latin-ext-100900.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/geist-mono-latin-100900.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/mplus-rounded-latin-500.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/mplus-rounded-latin-700.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/mplus-rounded-latin-800.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-weight:900;font-display:swap;src:url(/fonts/mplus-rounded-latin-900.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/mplus-rounded-japanese-500.woff2)format("woff2");unicode-range:U+30??,U+31F?,U+32??,U+3400-4DBF,U+4E00-9FFF,U+F900-FAFF,U+FF00-FFEF}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/mplus-rounded-japanese-700.woff2)format("woff2");unicode-range:U+30??,U+31F?,U+32??,U+3400-4DBF,U+4E00-9FFF,U+F900-FAFF,U+FF00-FFEF}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/mplus-rounded-japanese-800.woff2)format("woff2");unicode-range:U+30??,U+31F?,U+32??,U+3400-4DBF,U+4E00-9FFF,U+F900-FAFF,U+FF00-FFEF}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-weight:900;font-display:swap;src:url(/fonts/mplus-rounded-japanese-900.woff2)format("woff2");unicode-range:U+30??,U+31F?,U+32??,U+3400-4DBF,U+4E00-9FFF,U+F900-FAFF,U+FF00-FFEF}:root{--bg:#0c1024;--bg-2:#11163a;--surface:#171d44;--surface-2:#1e2652;--surface-3:#283163;--surface-sunken:#0a0e22;--line:#ffffff14;--line-2:#ffffff24;--line-3:#ffffff38;--text:#f6f2e8;--text-2:#c9cbe4;--muted:#8e93bd;--faint:#5d6395;--gold:#f6c453;--gold-2:#e39a2c;--gold-deep:#9c6a17;--gold-soft:#f6c45324;--mint:#43e0a6;--mint-2:#20b880;--mint-soft:#43e0a624;--coral:#ff6f7f;--coral-2:#e2475a;--coral-soft:#ff6f7f24;--sky:#6cbcff;--sky-2:#3a8fe0;--sky-soft:#6cbcff24;--violet:#ae92ff;--violet-soft:#ae92ff24;--family-latin:#2fbf7d;--family-wabun:#e2475a;--family-kigo:#5f8dff;--rarity-n:#9aa3c7;--rarity-r:#8fd3ff;--rarity-sr:#f6c453;--rarity-ssr:#ff8bd6;--r-xs:8px;--r-sm:12px;--r-md:16px;--r-lg:22px;--r-xl:30px;--r-pill:999px;--shadow-1:0 1px 0 #ffffff0a inset, 0 6px 18px #03051459;--shadow-2:0 1px 0 #ffffff0f inset, 0 18px 48px #03051480;--shadow-gold:0 0 0 1px #f6c45359, 0 10px 36px #f6c4532e;--press:0 4px 0;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--t-fast:.14s;--t-med:.28s;--sidebar:248px;--header:72px;--content-max:1360px;--font-body:"Geist", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", "Yu Gothic", system-ui, sans-serif;--font-display:"M PLUS Rounded 1c", "Hiragino Sans", "Noto Sans JP", "Geist", system-ui, sans-serif;--font-mono:"Geist Mono", ui-monospace, "SF Mono", Menlo, monospace}@media (max-width:1180px){:root{--sidebar:84px}}@media (max-width:760px){:root{--sidebar:0px;--header:60px}}*,:before,:after{box-sizing:border-box}html{background:var(--bg);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{background:var(--bg);min-height:100vh;color:var(--text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;margin:0;font-size:15px;line-height:1.6}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}:where(button,a,input,select,textarea,summary):focus-visible{outline:3px solid var(--gold)}@supports (color:color-mix(in lab, red, red)){:where(button,a,input,select,textarea,summary):focus-visible{outline:3px solid color-mix(in srgb, var(--gold) 70%, transparent)}}:where(button,a,input,select,textarea,summary):focus-visible{outline-offset:3px}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:.01em;line-height:1.25}::selection{background:var(--gold)}@supports (color:color-mix(in lab, red, red)){::selection{background:color-mix(in srgb, var(--gold) 40%, transparent)}}::selection{color:var(--text)}input[type=text],input:not([type]),input[type=search],select,textarea{background:var(--surface-sunken);border:1.5px solid var(--line-2);border-radius:var(--r-sm);color:var(--text);transition:border-color var(--t-fast), box-shadow var(--t-fast);padding:11px 14px}input[type=text]:focus,input:not([type]):focus,select:focus,textarea:focus{border-color:var(--gold);box-shadow:0 0 0 4px var(--gold-soft);outline:none}select{-webkit-appearance:none;appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--muted) 50%), linear-gradient(135deg, var(--muted) 50%, transparent 50%);background-position:calc(100% - 19px),calc(100% - 13px);background-repeat:no-repeat;background-size:6px 6px;width:100%;padding-right:36px}select option{background:var(--surface)}input[type=checkbox]{width:20px;height:20px;accent-color:var(--gold)}input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:22px;accent-color:var(--gold);background:0 0}input[type=range]::-webkit-slider-runnable-track{background:var(--surface-3);border-radius:99px;height:6px}input[type=range]::-moz-range-track{background:var(--surface-3);border-radius:99px;height:6px}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:var(--gold);border:3px solid var(--bg);width:18px;height:18px;box-shadow:0 0 0 2px var(--gold), 0 4px 10px #0006;transition:transform var(--t-fast);border-radius:50%;margin-top:-6px}input[type=range]::-moz-range-thumb{background:var(--gold);border:3px solid var(--bg);width:14px;height:14px;box-shadow:0 0 0 2px var(--gold);border-radius:50%}input[type=range]:active::-webkit-slider-thumb{transform:scale(1.2)}details>summary{cursor:pointer;list-style:none}details>summary::-webkit-details-marker{display:none}*{scrollbar-width:thin;scrollbar-color:var(--surface-3) transparent}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.page-pad{width:100%;max-width:var(--content-max);margin:0 auto;padding:clamp(24px,4vw,48px) clamp(16px,4vw,48px) 80px}.page-title{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:28px;display:flex}.page-title h1{margin:6px 0 8px;font-size:clamp(26px,3.2vw,40px);font-weight:800}.page-title p:not(.section-kicker){color:var(--text-2);max-width:64ch;margin:0}.section-kicker,.micro{color:var(--gold);font:700 11px/1.4 var(--font-mono);letter-spacing:.16em;text-transform:uppercase;align-items:center;gap:8px;margin:0;display:inline-flex}.btn,.button{--btn-bg:var(--surface-2);--btn-fg:var(--text);--btn-edge:#00000059;--btn-line:var(--line-2);border:1.5px solid var(--btn-line);border-radius:var(--r-md);background:var(--btn-bg);min-height:46px;color:var(--btn-fg);font:800 14px/1 var(--font-display);letter-spacing:.02em;box-shadow:var(--press) var(--btn-edge);transition:transform var(--t-fast) var(--ease-out), box-shadow var(--t-fast) var(--ease-out), filter var(--t-fast), background var(--t-fast);white-space:nowrap;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;gap:10px;padding:0 20px;display:inline-flex;position:relative;transform:translateY(0)}.btn:hover:not(:disabled),.button:hover:not(:disabled){filter:brightness(1.08)}.btn:active:not(:disabled),.button:active:not(:disabled){box-shadow:0 1px 0 var(--btn-edge);transform:translateY(3px)}.btn:disabled,.button:disabled{opacity:.45;box-shadow:none;transform:translateY(3px)}.btn-primary,.button.primary{--btn-bg:linear-gradient(180deg, #ffd978, var(--gold) 55%, var(--gold-2));--btn-fg:#2a1c00;--btn-edge:var(--gold-deep);--btn-line:transparent}.btn-success{--btn-bg:linear-gradient(180deg, #6ff0bf, var(--mint) 55%, var(--mint-2));--btn-fg:#032417;--btn-edge:#137552;--btn-line:transparent}.btn-danger{--btn-bg:var(--coral-soft);--btn-fg:#ffc2c9;--btn-edge:#78142899;--btn-line:#ff6f7f66}.btn-ghost,.button.outline{--btn-bg:transparent;--btn-edge:transparent;--btn-line:var(--line-2);box-shadow:none}.btn-ghost:active:not(:disabled),.button.outline:active:not(:disabled){box-shadow:none;transform:translateY(1px)}.btn-lg{border-radius:var(--r-lg);min-height:58px;padding:0 28px;font-size:16px}.btn-sm{border-radius:var(--r-sm);min-height:36px;box-shadow:0 3px 0 var(--btn-edge);padding:0 14px;font-size:12.5px}.btn-block{width:100%}.button.wide{justify-content:space-between;min-width:260px}.btn-icon{width:44px;padding:0}.btn .kbd,.kbd{min-width:22px;height:22px;font:700 11px var(--font-mono);background:#0000002e;border-radius:6px;place-items:center;padding:0 6px;display:inline-grid}.panel{border:1px solid var(--line);border-radius:var(--r-lg);background:linear-gradient(180deg, var(--surface), var(--surface));position:relative}@supports (color:color-mix(in lab, red, red)){.panel{background:linear-gradient(180deg, var(--surface), color-mix(in srgb, var(--surface) 80%, var(--bg)))}}.panel{box-shadow:var(--shadow-1)}.panel-pad{padding:clamp(18px,2.4vw,28px)}.panel-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.panel-head h2,.panel-head h3{margin:0;font-size:18px}.panel-head small{color:var(--muted)}.segmented{border:1px solid var(--line);border-radius:var(--r-pill);background:var(--surface-sunken);scrollbar-width:none;gap:4px;max-width:100%;padding:4px;display:inline-flex;overflow-x:auto}.segmented button{border-radius:var(--r-pill);color:var(--muted);font:700 13px/1.2 var(--font-display);transition:background var(--t-fast), color var(--t-fast);white-space:nowrap;background:0 0;border:0;flex:none;padding:8px 16px}.segmented button:hover{color:var(--text)}.segmented button.active{background:var(--surface-3);color:var(--gold);box-shadow:0 2px 8px #0000004d}.metric{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);min-width:0;padding:16px 18px;position:relative}.metric>span{color:var(--muted);font:700 11px/1.3 var(--font-mono);letter-spacing:.1em;text-transform:uppercase;display:block}.metric>strong{font:800 clamp(22px, 2.2vw, 30px)/1.1 var(--font-mono);letter-spacing:-.02em;margin-top:6px;display:inline-block}.metric>small{color:var(--muted);font:700 11px var(--font-mono);margin-left:6px}.metric>em{color:var(--mint);font:700 10px var(--font-mono);font-style:normal;position:absolute;top:14px;right:14px}.chip{border:1px solid var(--line-2);border-radius:var(--r-pill);background:var(--surface-2);min-height:28px;color:var(--text-2);font:700 12px/1 var(--font-display);white-space:nowrap;align-items:center;gap:6px;padding:0 12px;display:inline-flex}.chip.gold{background:var(--gold-soft);color:var(--gold);border-color:#f6c45366}.chip.mint{background:var(--mint-soft);color:var(--mint);border-color:#43e0a666}.chip.coral{background:var(--coral-soft);color:var(--coral);border-color:#ff6f7f66}.chip.sky{background:var(--sky-soft);color:var(--sky);border-color:#6cbcff66}.rarity-badge{min-width:38px;height:22px;font:900 11px/1 var(--font-mono);letter-spacing:.08em;color:#10132b;background:var(--rarity-n);border-radius:6px;place-items:center;padding:0 8px;display:inline-grid}.rarity-badge.r{background:var(--rarity-r)}.rarity-badge.sr{background:linear-gradient(135deg, #fff1b8, var(--gold), var(--gold-2))}.rarity-badge.ssr{background:linear-gradient(120deg,#ff9ad5,#ffd36e,#7dffcf,#8ab8ff,#d49bff) 0 0/200% 100%;animation:3s linear infinite rainbow-shift}.progress-bar{background:var(--surface-sunken);border-radius:99px;height:10px;position:relative;overflow:hidden;box-shadow:inset 0 1px 2px #0006}.progress-bar>i{border-radius:inherit;background:linear-gradient(90deg, var(--mint-2), var(--mint));transition:width .5s var(--ease-out);position:absolute;inset:0 auto 0 0}.progress-bar>i:after{content:"";background:#ffffff59;border-radius:99px;height:3px;position:absolute;inset:2px 6px auto}.progress-bar.gold>i{background:linear-gradient(90deg, var(--gold-2), var(--gold))}.progress-bar.sky>i{background:linear-gradient(90deg, var(--sky-2), var(--sky))}.progress-ring{flex:none;place-items:center;display:inline-grid;position:relative}.progress-ring>svg{position:absolute;inset:0}.progress-ring-label{text-align:center;place-items:center;line-height:1.1;display:grid;position:relative}.empty-state{text-align:center;color:var(--text-2);justify-items:center;gap:8px;padding:48px 24px;display:grid}.empty-state>.empty-icon{background:var(--gold-soft);width:72px;height:72px;color:var(--gold);border-radius:50%;place-items:center;font-size:34px;display:grid}.empty-state h3{color:var(--text);margin:8px 0 0;font-size:18px}.empty-state p{max-width:46ch;margin:0 0 8px}.toast{z-index:400;border-radius:var(--r-pill);background:var(--surface-2);border:1px solid #f6c45359;align-items:center;gap:10px;max-width:calc(100vw - 32px);padding:12px 20px;display:inline-flex;position:fixed;bottom:28px;left:50%;transform:translate(-50%)}@supports (color:color-mix(in lab, red, red)){.toast{background:color-mix(in srgb, var(--surface-2) 92%, transparent)}}.toast{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);color:var(--text);font:700 14px/1.4 var(--font-display);box-shadow:var(--shadow-2);animation:toast-in .35s var(--ease-spring)}.toast:empty{display:none}@media (max-width:760px){.toast{bottom:84px}}.speed-pair{display:contents}.speed-pair.compact{align-items:center;gap:14px;display:flex}.header-speed{min-width:118px;color:var(--muted);font:700 11px/1.2 var(--font-display);gap:2px;display:grid}.speed-caption{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.speed-caption-value b{color:var(--text);font-family:var(--font-mono);margin-left:4px;font-size:13px}.speed-caption-value i,.speed-caption>i{opacity:.7;margin-left:2px;font-size:10px;font-style:normal}.speed-track{width:118px;height:22px;display:block;position:relative}.speed-track input[type=range]{z-index:1;width:100%;margin:0;position:relative}.speed-thumb-value{z-index:3;color:var(--gold);font:800 12px/1 var(--font-mono);pointer-events:none;white-space:nowrap;display:none;position:absolute;top:0;transform:translate(-50%)}.speed-char-mark{z-index:2;background:var(--sky);width:3px;height:14px;box-shadow:0 0 6px var(--sky);pointer-events:none;border-radius:2px;position:absolute;top:50%;transform:translate(-50%,-50%)}.audio-controls{gap:18px;display:grid}.audio-controls>label,.settings-panel>label{color:var(--text-2);font:700 13px/1.3 var(--font-display);grid-template-columns:1fr auto;gap:6px 10px;display:grid}.audio-controls>label b,.settings-panel>label b{color:var(--gold);font-family:var(--font-mono)}.audio-controls input[type=range],.settings-panel>label input[type=range],.settings-panel>label select{grid-column:1/-1}.audio-controls .speed-pair{display:contents}.audio-controls .header-speed{min-width:0;color:var(--text-2);grid-template-columns:1fr auto;gap:6px 10px;font-size:13px}.audio-controls .speed-caption{grid-column:1/-1}.audio-controls .speed-caption-value b{display:none}.audio-controls .speed-caption-value i{opacity:.75;margin:0;font-size:11px}.audio-controls .speed-track{box-sizing:border-box;grid-column:1/-1;width:100%;height:34px;padding-top:14px}.audio-controls .speed-thumb-value{display:block}.audio-controls .speed-char-mark{top:calc(14px + 50%)}@media (max-width:760px){.header-speed{min-width:0}.speed-track{width:84px}.speed-caption-value i{display:none}}.modal-backdrop{z-index:300;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#050714c7;place-items:center;padding:20px;animation:.3s both fade-in;display:grid;position:fixed;inset:0}.disclosure{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-sunken);margin-top:18px}.disclosure>summary{color:var(--text-2);font:700 13px var(--font-display);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.disclosure>summary:after{content:"＋";color:var(--muted)}.disclosure[open]>summary:after{content:"－"}.disclosure>div{padding:0 16px 16px}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,16px)scale(.96)}to{opacity:1;transform:translate(-50%)scale(1)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes rainbow-shift{to{background-position:200% 0}}@media (max-width:760px){.page-title{flex-direction:column;align-items:stretch}.button.wide{width:100%;min-width:0}}.app-frame{background:radial-gradient(1200px 600px at 85% -10%, #6c78ff29, transparent 60%), radial-gradient(900px 500px at -10% 110%, #f6c45314, transparent 60%), var(--bg);min-height:100vh}.sidebar{z-index:40;width:var(--sidebar);border-right:1px solid var(--line);background:linear-gradient(#0f1434,#0b0f28);flex-direction:column;gap:8px;padding:18px 14px;display:flex;position:fixed;inset:0 auto 0 0}.brand{text-align:left;background:0 0;border:0;align-items:center;gap:12px;padding:8px 10px 18px;display:flex}.brand-mark{background:linear-gradient(145deg, #ffd978, var(--gold-2));width:44px;height:44px;box-shadow:0 4px 0 var(--gold-deep), 0 10px 24px #f6c45340;border-radius:14px;flex:none;justify-content:center;align-items:center;gap:3px;display:inline-flex}.brand-mark i{background:#2a1c00;border-radius:3px;width:5px;height:5px}.brand-mark i.dah{width:11px}.brand-text{line-height:1.1;display:grid}.brand-text b{font:800 16px var(--font-display)}.brand-text small{color:var(--gold);font:700 10px var(--font-mono);letter-spacing:.3em}.nav{flex-direction:column;gap:4px;display:flex}.nav-item{border-radius:var(--r-md);min-height:48px;color:var(--muted);font:700 15px var(--font-display);text-align:left;transition:background var(--t-fast), color var(--t-fast);background:0 0;border:0;align-items:center;gap:14px;padding:0 14px;display:flex;position:relative}.nav-item:hover{color:var(--text);background:#ffffff0d}.nav-item.active{background:linear-gradient(90deg, var(--gold-soft), #f6c4530a);color:var(--gold);box-shadow:inset 0 0 0 1px #f6c45338}.nav-item.active:before{content:"";background:var(--gold);border-radius:0 4px 4px 0;width:4px;position:absolute;top:10px;bottom:10px;left:-14px}.sidebar-foot{gap:10px;margin-top:auto;display:grid}.sidebar-goal{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);align-items:center;gap:12px;padding:14px;display:flex}.sidebar-goal .progress-ring-label b{font:800 16px var(--font-mono)}.sidebar-goal-text{gap:2px;line-height:1.25;display:grid}.sidebar-goal-text span{color:var(--muted);font:700 11px var(--font-display)}.sidebar-goal-text b{font:800 15px var(--font-display)}.sidebar-goal-text small{color:#ff9b5c;font:700 12px var(--font-display);align-items:center;gap:4px;display:inline-flex}.app-credit{color:var(--faint);font:700 10px/1.3 var(--font-mono);letter-spacing:.04em;text-align:center;margin:0;padding:0 4px 2px}.app-main{min-height:100vh;margin-left:var(--sidebar)}.app-header{z-index:30;height:var(--header);border-bottom:1px solid var(--line);background:var(--bg);justify-content:space-between;align-items:center;gap:16px;padding:0 clamp(16px,3vw,36px);display:flex;position:sticky;top:0}@supports (color:color-mix(in lab, red, red)){.app-header{background:color-mix(in srgb, var(--bg) 82%, transparent)}}.app-header{-webkit-backdrop-filter:blur(18px)saturate(1.3);backdrop-filter:blur(18px)saturate(1.3)}.header-title{align-items:center;gap:12px;min-width:0;display:flex}.header-icon{background:var(--surface-2);width:38px;height:38px;color:var(--gold);border-radius:12px;place-items:center;display:grid}.header-title div{min-width:0;line-height:1.15;display:grid}.header-title small{color:var(--muted);font:700 10px var(--font-mono);letter-spacing:.2em}.header-title b{font:800 18px var(--font-display);white-space:nowrap}.header-tools{align-items:center;gap:10px;display:flex}.level-chip{border:1px solid var(--line-2);border-radius:var(--r-pill);background:var(--surface);align-items:center;gap:8px;height:36px;padding:0 12px 0 4px;display:inline-flex}.level-badge{border-radius:var(--r-pill);color:#fff;height:28px;font:900 12px var(--font-mono);background:linear-gradient(135deg,#8c7bff,#5f6dff);place-items:center;padding:0 10px;display:grid}.level-track{background:var(--surface-3);border-radius:99px;width:64px;height:6px;position:relative;overflow:hidden}.level-track i{border-radius:inherit;transition:width .6s var(--ease-out);background:linear-gradient(90deg,#8c7bff,#b8a8ff);position:absolute;inset:0 auto 0 0}.streak-chip{border:1px solid var(--line-2);border-radius:var(--r-pill);background:var(--surface);height:36px;color:var(--faint);font:800 14px var(--font-mono);align-items:center;gap:4px;padding:0 12px;display:inline-flex}.streak-chip.on{color:#ff9b5c;background:#ff9b5c1a;border-color:#ff9b5c66}.header-speed-backdrop{z-index:28;cursor:default;background:#03051459;border:0;margin:0;padding:0;position:fixed;inset:0}.header-speed-wrap{z-index:31;position:relative}.speed-toggle{border:1px solid var(--line-2);border-radius:var(--r-pill);background:var(--surface);height:36px;color:var(--sky);align-items:center;gap:4px;padding:0 12px;display:none}.speed-toggle b{font:800 14px var(--font-mono);color:var(--text)}.speed-toggle small{color:var(--muted);font:700 10px var(--font-mono)}.header-speed-panel{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-sunken);align-items:center;height:44px;padding:0 14px;display:flex}.stop-button{border:1px solid var(--line-2);border-radius:var(--r-pill);background:var(--surface);height:36px;color:var(--muted);font:700 13px var(--font-display);transition:all var(--t-fast);align-items:center;gap:8px;padding:0 14px;display:inline-flex}.stop-button.live{color:#ffd0d5;background:var(--coral-soft);border-color:#ff6f7f8c;box-shadow:0 0 0 4px #ff6f7f1a}.stop-button.live svg{animation:1s ease-in-out infinite live-blink}.stop-button:hover{color:var(--text)}.profile-button{border:1px solid var(--line-2);border-radius:var(--r-pill);background:var(--surface);text-align:left;align-items:center;gap:10px;height:44px;padding:0 14px 0 5px;display:inline-flex}.profile-avatar{background:linear-gradient(135deg, var(--surface-3), var(--surface-2));border:1.5px solid var(--gold);width:34px;height:34px;color:var(--gold);font:800 14px var(--font-display);border-radius:50%;place-items:center;display:grid}.profile-text{max-width:150px;line-height:1.15;display:grid}.profile-text b{font:800 13px var(--font-display);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.profile-text small{color:var(--muted);font:700 11px var(--font-display)}.view-stage{animation:view-in .4s var(--ease-out) backwards}@keyframes view-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes live-blink{50%{opacity:.35}}@media (max-width:1440px){.profile-text{display:none}.profile-button{padding:0 4px}}@media (max-width:1320px){.speed-toggle{display:inline-flex}.header-speed-panel{border-color:var(--line-2);background:var(--surface-2);min-width:280px;height:auto;box-shadow:var(--shadow-2);flex-direction:column;align-items:stretch;gap:14px;padding:18px;display:none;position:absolute;top:calc(100% + 10px);right:0}.header-speed-wrap.open .header-speed-panel{animation:fx-pop .3s var(--ease-spring);display:flex}.header-speed-panel .speed-pair.compact{flex-direction:column;align-items:stretch;gap:14px}.header-speed-panel .speed-track{width:100%}}@media (max-width:1180px){.sidebar{align-items:center;padding:18px 12px}.brand{padding:4px 0 16px}.brand-text,.nav-label,.sidebar-goal-text{display:none}.nav{width:100%}.nav-item{justify-content:center;min-height:52px;padding:0}.nav-item.active:before{left:-12px}.sidebar-goal{background:0 0;border:0;padding:8px}}@media (max-width:760px){.sidebar{width:100%;height:calc(64px + env(safe-area-inset-bottom));padding:0 6px env(safe-area-inset-bottom);border-right:0;border-top:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#0b0f28eb;flex-direction:row;inset:auto 0 0}.brand,.sidebar-foot{display:none}.nav{flex-direction:row;justify-content:space-around;gap:0}.nav-item.secondary{display:none}.nav-item{border-radius:12px;flex-direction:column;flex:1;gap:2px;min-height:64px;font-size:10px}.nav-label{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:10px;display:block;overflow:hidden}.nav-item{min-width:0}.nav-item.active{box-shadow:none;background:0 0}.nav-item.active:before{border-radius:0 0 3px 3px;width:auto;height:3px;inset:0 30% auto}.app-main{padding-bottom:calc(64px + env(safe-area-inset-bottom));margin-left:0}.app-header{gap:8px;padding:0 12px}.header-icon{display:none}.header-title b{font-size:16px}.header-tools{gap:6px}.level-track{display:none}.level-chip{padding:0 4px}.stop-button span{display:none}.stop-button{justify-content:center;width:36px;padding:0}.speed-toggle small{display:none}.profile-button{height:36px;padding:0 1px}.profile-avatar{width:30px;height:30px}.header-speed-panel{top:calc(var(--header) + 8px);min-width:0;position:fixed;left:12px;right:12px}}@media (max-width:380px){.streak-chip{display:none}}.signal-card{--family:var(--family-latin);--rx:0deg;--ry:0deg;--gx:50%;--gy:30%;aspect-ratio:2/3;border-radius:var(--r-lg);isolation:isolate;perspective:1200px;width:100%;color:var(--text);position:relative}.signal-card.family-wabun{--family:var(--family-wabun)}.signal-card.family-kigo{--family:var(--family-kigo)}.signal-card.compact{border-radius:var(--r-sm)}.signal-card-body{border-radius:inherit;background:var(--surface-2);transform:rotateX(var(--rx)) rotateY(var(--ry));transform-style:preserve-3d;transition:transform .5s var(--ease-out), box-shadow var(--t-med);position:absolute;inset:0;overflow:hidden;box-shadow:0 0 0 1px #ffffff14,0 24px 60px #00000080}.signal-card.compact .signal-card-body{box-shadow:0 0 0 1px #ffffff14,0 8px 22px #00000073}.signal-card.interactive .signal-card-body{transition:transform .12s linear, box-shadow var(--t-med)}.signal-card.interactive:not(:hover) .signal-card-body{transition:transform .6s var(--ease-out)}.signal-card.rarity-sr .signal-card-body{box-shadow:0 0 0 1px #f6c45359,0 24px 60px #00000080}.signal-card.rarity-ssr .signal-card-body{box-shadow:0 0 0 1px #ff8bd666,0 0 40px #ff8bd624,0 24px 60px #00000080}.artwork-frame{position:absolute;inset:0}.artwork-frame img{object-fit:cover;-webkit-user-select:none;user-select:none;width:100%;height:100%;animation:.45s both art-in;position:absolute;inset:0}.has-artwork .fallback-face{visibility:hidden}.fallback-face{background:radial-gradient(circle at 50% 36%, var(--family), transparent 60%), linear-gradient(160deg, var(--family), #0c1024 75%);padding:7%;position:absolute;inset:0}@supports (color:color-mix(in lab, red, red)){.fallback-face{background:radial-gradient(circle at 50% 36%, color-mix(in srgb, var(--family) 45%, transparent), transparent 60%), linear-gradient(160deg, color-mix(in srgb, var(--family) 55%, #0c1024), #0c1024 75%)}}.fallback-face:before{content:"";border-radius:calc(var(--r-lg) - 6px);border:2px solid #f6c453b3;position:absolute;inset:4%;box-shadow:inset 0 0 0 4px #00000040,inset 0 0 0 5px #f6c4534d}.face-inner{text-align:center;grid-template-rows:auto 1fr auto auto;place-items:center;height:100%;display:grid;position:relative}.face-kind{border-radius:var(--r-pill);color:var(--gold);font:800 clamp(8px, 1.1vw, 12px) var(--font-display);letter-spacing:.08em;background:#0000004d;padding:4px 12px}.face-crest{aspect-ratio:1;background:radial-gradient(circle at 40% 30%, #ffffff29, transparent 60%), var(--family);border-radius:50%;place-items:center;width:62%;display:grid}@supports (color:color-mix(in lab, red, red)){.face-crest{background:radial-gradient(circle at 40% 30%, #ffffff29, transparent 60%), color-mix(in srgb, var(--family) 30%, #0c1024)}}.face-crest{border:3px solid var(--gold);box-shadow:0 0 0 6px #f6c45324, 0 0 40px var(--family)}@supports (color:color-mix(in lab, red, red)){.face-crest{box-shadow:0 0 0 6px #f6c45324, 0 0 40px color-mix(in srgb, var(--family) 50%, transparent)}}.face-crest b{font:900 clamp(34px, 6vw, 92px)/1 var(--font-display);background:linear-gradient(180deg, #fff6d6, var(--gold) 55%, var(--gold-2));color:#0000;filter:drop-shadow(0 3px #0006);-webkit-background-clip:text;background-clip:text}.face-code{color:var(--text);font:800 clamp(13px, 2vw, 24px) var(--font-mono);letter-spacing:.14em;margin-top:8%}.face-title{border-radius:var(--r-sm);color:#2a1c00;font:800 clamp(10px, 1.4vw, 16px) var(--font-display);text-overflow:ellipsis;white-space:nowrap;background:#f6f1e4eb;max-width:92%;margin:4% 0 2%;padding:6px 14px;overflow:hidden}.signal-card.compact .face-kind{display:none}.signal-card.compact .face-crest{border-width:2px;width:70%}.signal-card.compact .face-crest b{font-size:clamp(26px,4vw,46px)}.signal-card.compact .face-code{font-size:11px}.signal-card.compact .face-title{padding:3px 8px;font-size:9px}.sound-mask{z-index:2;background:linear-gradient(#0000,#0c1024eb 18%,#0c1024);border-top:1px solid #f6c4534d;place-content:center;justify-items:center;gap:4px;height:40%;display:grid;position:absolute;inset:auto 0 0}.sound-mask b{font:900 clamp(30px, 5vw, 64px)/1 var(--font-display);background:linear-gradient(180deg, #fff6d6, var(--gold));color:#0000;-webkit-background-clip:text;background-clip:text}.sound-mask span{color:var(--text);font:800 clamp(12px, 1.6vw, 20px) var(--font-mono);letter-spacing:.16em}.signal-card.compact .sound-mask b{font-size:24px}.signal-card.compact .sound-mask span{font-size:10px}.foil-layer{z-index:3;pointer-events:none;mix-blend-mode:color-dodge;background:linear-gradient(115deg,#0000 30%,#ff96dc38 42%,#8cffdc38 50%,#96b4ff38 58%,#0000 70%) 0 0/250% 250%;animation:6s ease-in-out infinite foil-sweep;position:absolute;inset:0}.signal-card.interactive .foil-layer{background-position:var(--gx) var(--gy);animation:none}.glare-layer{z-index:4;pointer-events:none;background:radial-gradient(circle at var(--gx) var(--gy), #ffffff47, transparent 45%);mix-blend-mode:overlay;opacity:0;transition:opacity var(--t-med);position:absolute;inset:0}.signal-card.interactive:hover .glare-layer{opacity:1}.signal-card.is-concealed .card-back{aspect-ratio:auto;position:absolute;inset:0}@keyframes foil-sweep{0%,to{background-position:0 0}50%{background-position:100% 100%}}@keyframes art-in{0%{opacity:0}to{opacity:1}}.fx-burst{--fx:var(--mint);z-index:6;pointer-events:none;place-items:center;display:grid;position:absolute;inset:0;overflow:visible}.fx-burst.miss{--fx:var(--coral)}.fx-ring{aspect-ratio:1;border:3px solid var(--fx);width:60%;box-shadow:0 0 30px var(--fx), inset 0 0 20px var(--fx);border-radius:50%;position:absolute}@supports (color:color-mix(in lab, red, red)){.fx-ring{box-shadow:0 0 30px var(--fx), inset 0 0 20px color-mix(in srgb, var(--fx) 40%, transparent)}}.fx-ring{animation:fx-ring .7s var(--ease-out) both}.fx-ring.delay{opacity:.6;border-width:2px;animation-delay:.12s}.fx-burst.miss .fx-ring{width:46%;animation-duration:.5s}.fx-spark{--angle:calc(var(--i) * 36deg);background:var(--fx);width:8px;height:8px;box-shadow:0 0 10px var(--fx);animation:fx-spark .75s var(--ease-out) both;border-radius:2px;position:absolute}.fx-spark:nth-child(odd){background:var(--gold);box-shadow:0 0 10px var(--gold)}.fx-float{border-radius:var(--r-pill);background:var(--fx);padding:6px 14px;position:absolute;top:18%}@supports (color:color-mix(in lab, red, red)){.fx-float{background:color-mix(in srgb, var(--fx) 20%, var(--bg))}}.fx-float{border:1.5px solid var(--fx);color:var(--fx);font:900 18px/1 var(--font-display);letter-spacing:.04em;text-shadow:0 0 12px var(--fx)}@supports (color:color-mix(in lab, red, red)){.fx-float{text-shadow:0 0 12px color-mix(in srgb, var(--fx) 60%, transparent)}}.fx-float{animation:fx-float .9s var(--ease-out) both}@keyframes fx-ring{0%{opacity:1;transform:scale(.4)}to{opacity:0;transform:scale(1.6)}}@keyframes fx-spark{0%{transform:rotate(var(--angle)) translateX(10px) scale(1);opacity:1}to{transform:rotate(var(--angle)) translateX(120px) scale(.2) rotate(180deg);opacity:0}}@keyframes fx-float{0%{opacity:0;transform:translateY(16px)scale(.6)}25%{opacity:1;transform:translateY(0)scale(1.1)}70%{opacity:1}to{opacity:0;transform:translateY(-34px)scale(1)}}.fx-shake{animation:.42s cubic-bezier(.36,.07,.19,.97) both fx-shake}.fx-pop{animation:fx-pop .45s var(--ease-spring) both}.fx-glow-hit{animation:.7s ease-out both fx-glow-hit}.fx-glow-miss{animation:.7s ease-out both fx-glow-miss}@keyframes fx-shake{10%,90%{transform:translate(-2px)}20%,80%{transform:translate(4px)}30%,50%,70%{transform:translate(-7px)}40%,60%{transform:translate(7px)}}@keyframes fx-pop{0%{transform:scale(.85)}60%{transform:scale(1.08)}to{transform:scale(1)}}@keyframes fx-glow-hit{0%{box-shadow:0 0 #43e0a6b3}to{box-shadow:0 0 0 22px #43e0a600}}@keyframes fx-glow-miss{0%{box-shadow:0 0 #ff6f7fb3}to{box-shadow:0 0 0 22px #ff6f7f00}}.combo-badge{border-radius:var(--r-pill);background:linear-gradient(135deg, var(--gold-soft), transparent);color:var(--gold);animation:fx-pop .4s var(--ease-spring) both;border:1.5px solid #f6c45373;align-items:baseline;gap:6px;padding:6px 14px;display:inline-flex}.combo-badge b{font:900 24px/1 var(--font-mono)}.combo-badge small{font:800 11px var(--font-mono);letter-spacing:.14em}.combo-badge.warm{color:#ffb347;border-color:#ffb34788}.combo-badge.hot{color:#ff7b54;border-color:#ff7b5499;box-shadow:0 0 24px #ff7b5444}.combo-badge.legend{color:#ff8bd6;border-color:#ff8bd699;box-shadow:0 0 30px #ff8bd655}.signal-pulse{pointer-events:none;place-items:center;display:grid;position:absolute;inset:0}.signal-pulse i{border:2px solid var(--sky);opacity:0;border-radius:50%;position:absolute;inset:0}.signal-pulse.on i{animation:signal-pulse 1.8s var(--ease-out) infinite}.signal-pulse.on i:nth-child(2){animation-delay:.6s}.signal-pulse.on i:nth-child(3){animation-delay:1.2s}@keyframes signal-pulse{0%{opacity:.7;transform:scale(1)}to{opacity:0;transform:scale(1.75)}}.signal-bars{align-items:center;gap:4px;height:28px;display:inline-flex}.signal-bars i{background:var(--faint);width:4px;height:25%;transition:background var(--t-med);border-radius:4px}.signal-bars.on i{background:var(--sky);animation:.9s ease-in-out infinite signal-bar;animation-delay:calc(var(--i) * -.11s)}@keyframes signal-bar{0%,to{height:20%}50%{height:100%}}.get-reveal{--rarity:var(--rarity-r);z-index:500;background:radial-gradient(circle at 50% 42%, var(--rarity) 0%, #05061a 62%);align-content:safe center;place-items:center;display:grid;position:fixed;inset:0;overflow:hidden auto}@supports (color:color-mix(in lab, red, red)){.get-reveal{background:radial-gradient(circle at 50% 42%, color-mix(in srgb, var(--rarity) 22%, #0b0e24) 0%, #05061a 62%)}}.get-reveal{perspective:1600px;cursor:pointer;animation:.35s both fade-in}.get-reveal.rarity-sr{--rarity:var(--rarity-sr)}.get-reveal.rarity-ssr{--rarity:var(--rarity-ssr)}.get-reveal.rarity-n{--rarity:var(--rarity-n)}.get-rays{aspect-ratio:1;background:repeating-conic-gradient(from 0deg, var(--rarity) 0deg 6deg, transparent 6deg 18deg);width:220vmax;position:absolute}@supports (color:color-mix(in lab, red, red)){.get-rays{background:repeating-conic-gradient(from 0deg, color-mix(in srgb, var(--rarity) 30%, transparent) 0deg 6deg, transparent 6deg 18deg)}}.get-rays{opacity:0;animation:.8s ease-out 1.05s forwards get-rays-in,24s linear infinite get-rays-spin;-webkit-mask:radial-gradient(circle,#000 0%,#0000 46%);mask:radial-gradient(circle,#000 0%,#0000 46%)}.get-reveal.rarity-ssr .get-rays{background:repeating-conic-gradient(#ff8bd655 0deg 5deg,#0000 5deg 12deg,#ffd36e55 12deg 17deg,#0000 17deg 24deg,#7dffcf55 24deg 29deg,#0000 29deg 36deg)}.get-flash{background:radial-gradient(circle at 50% 45%, #fff 0%, var(--rarity) 20%, transparent 60%);position:absolute;inset:0}@supports (color:color-mix(in lab, red, red)){.get-flash{background:radial-gradient(circle at 50% 45%, #fff 0%, color-mix(in srgb, var(--rarity) 80%, #fff) 20%, transparent 60%)}}.get-flash{opacity:0;pointer-events:none;animation:.9s ease-out 1s both get-flash}.get-shock{aspect-ratio:1;border:4px solid var(--rarity);width:260px;box-shadow:0 0 40px var(--rarity), inset 0 0 40px var(--rarity);opacity:0;animation:get-shock 1.1s 1.05s var(--ease-out) both;border-radius:50%;position:absolute}.get-shock.second{border-width:2px;animation-delay:1.25s}.get-confetti{pointer-events:none;position:absolute;inset:0}.get-confetti i{--x:calc((var(--i) - 14) * 3.4vw);background:var(--c,var(--gold));opacity:0;width:10px;height:16px;animation:get-confetti 2.6s calc(1.05s + var(--d,0s)) cubic-bezier(.2, .7, .3, 1) both;border-radius:2px;position:absolute;top:44%;left:50%}.get-stage{z-index:2;width:clamp(150px,66.6667dvh - 213.333px,min(320px,64vw));transform-style:preserve-3d;animation:get-drop 1.05s var(--ease-out) both;position:relative}.get-flip{transform-style:preserve-3d;animation:get-charge .55s .45s ease-in-out both, get-flip 1s 1s var(--ease-spring) both;position:relative}.get-face{-webkit-backface-visibility:hidden;backface-visibility:hidden}.get-face.back{position:absolute;inset:0;transform:rotateY(180deg)}.get-face.front{position:relative}.get-face.front .signal-card{box-shadow:0 0 0 2px var(--rarity), 0 0 70px var(--rarity), 0 40px 90px #000a}@supports (color:color-mix(in lab, red, red)){.get-face.front .signal-card{box-shadow:0 0 0 2px color-mix(in srgb, var(--rarity) 70%, transparent), 0 0 70px color-mix(in srgb, var(--rarity) 55%, transparent), 0 40px 90px #000a}}.get-sheen{z-index:5;border-radius:var(--r-lg);mix-blend-mode:overlay;pointer-events:none;background:linear-gradient(115deg,#0000 40%,#ffffff8c 50%,#0000 60%) 100% 0/300% 100% no-repeat;animation:1.1s ease-in-out 2s both get-sheen;position:absolute;inset:0}.get-float{animation:4s ease-in-out 2.2s infinite get-float}.get-copy{z-index:3;text-align:center;opacity:0;animation:get-copy .6s 1.75s var(--ease-spring) forwards;justify-items:center;gap:10px;margin-top:26px;display:grid;position:relative}.get-layout{justify-items:center;display:grid}.get-title{font:900 clamp(40px, 7vw, 72px)/1 var(--font-display);letter-spacing:.04em;color:#fff;text-shadow:0 0 24px var(--rarity), 0 4px 0 var(--rarity);margin:0}@supports (color:color-mix(in lab, red, red)){.get-title{text-shadow:0 0 24px var(--rarity), 0 4px 0 color-mix(in srgb, var(--rarity) 50%, #000)}}.get-reveal.rarity-ssr .get-title{background:linear-gradient(90deg,#ff9ad5,#ffd36e,#7dffcf,#8ab8ff,#d49bff,#ff9ad5) 0 0/200% 100%;color:#0000;text-shadow:none;filter:drop-shadow(0 0 18px #ff8bd688);-webkit-background-clip:text;background-clip:text;animation:2.4s linear infinite rainbow-shift}.get-kicker{color:var(--rarity);font:900 13px var(--font-mono);letter-spacing:.32em;text-shadow:0 0 14px var(--rarity);margin:0}.get-reveal.skipped :is(.get-stage,.get-flip,.get-copy,.get-flash,.get-shock,.get-confetti i,.get-sheen){animation-duration:.25s!important;animation-delay:0s!important}.get-reveal.skipped .get-flip{animation:.25s ease-out both get-flip!important}.get-reveal.skipped .get-rays{opacity:1;animation:24s linear infinite get-rays-spin}.get-reveal.skipped .get-float{animation-delay:.3s}.get-reveal.skipped .get-flash,.get-reveal.skipped .get-shock,.get-reveal.skipped .get-confetti{display:none}.get-sub{color:var(--text-2);font:700 15px var(--font-display);margin:0}.get-sub b{color:var(--text);font-size:18px}.get-actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:8px;display:flex}.get-skip{z-index:4;color:var(--muted);font:700 12px var(--font-display);animation:.4s 2.4s forwards get-skip-out;position:fixed;bottom:18px;right:20px}@keyframes get-skip-out{to{opacity:0;visibility:hidden}}.card-back{aspect-ratio:2/3;border-radius:var(--r-lg);background:radial-gradient(circle,#f6c45347 0 18%,#0000 19%),repeating-linear-gradient(45deg,#f6c45317 0 2px,#0000 2px 14px),repeating-linear-gradient(-45deg,#f6c45317 0 2px,#0000 2px 14px),linear-gradient(160deg,#242c6b,#121640 60%,#0b0e2c);border:3px solid #d7a443;position:relative;overflow:hidden;box-shadow:inset 0 0 0 6px #121640,inset 0 0 0 8px #f6c4538c,0 30px 80px #000a}.card-back:before{content:"";border:2px solid #f6c45399;border-radius:50%;position:absolute;inset:22%;box-shadow:0 0 0 10px #f6c4531a,0 0 40px #f6c4534d}.card-back-emblem{color:var(--gold);text-align:center;place-content:center;justify-items:center;gap:6px;display:grid;position:absolute;inset:0}.card-back-emblem b{font:900 clamp(26px, 5vw, 44px)/1 var(--font-mono);letter-spacing:.12em;text-shadow:0 0 18px #f6c45399}.card-back-emblem small{font:800 clamp(8px, 1vw, 11px) var(--font-mono);letter-spacing:.3em;opacity:.85}.card-back.compact{border-radius:var(--r-sm);border-width:2px;box-shadow:inset 0 0 0 4px #121640,inset 0 0 0 5px #f6c45373}.card-back.compact:before{box-shadow:none;inset:26%}.card-back.compact .card-back-emblem b{font-size:18px}@keyframes get-drop{0%{opacity:0;transform:translateY(-70vh)rotate(-8deg)scale(.7)}70%{opacity:1;transform:translateY(12px)rotate(1deg)scale(1.02)}to{transform:none}}@keyframes get-charge{0%,to{transform:rotateY(180deg)scale(1)}20%{transform:rotateY(180deg)translate(-4px)scale(1.01)}40%{transform:rotateY(180deg)translate(5px)scale(1.02)}60%{transform:rotateY(180deg)translate(-6px)scale(1.03)}80%{transform:rotateY(180deg)translate(6px)scale(1.04)}}@keyframes get-flip{0%{transform:rotateY(180deg)scale(1.04)}to{transform:rotateY(360deg)scale(1)}}@keyframes get-flash{0%{opacity:0}15%{opacity:1}to{opacity:0}}@keyframes get-shock{0%{opacity:1;transform:scale(.3)}to{opacity:0;transform:scale(3.4)}}@keyframes get-rays-in{to{opacity:1}}@keyframes get-rays-spin{to{rotate:360deg}}@keyframes get-sheen{0%{background-position:100% 0}to{background-position:0 0}}@keyframes get-float{0%,to{transform:translateY(0)rotateX(0)rotateY(0)}50%{transform:translateY(-10px)rotateX(4deg)rotateY(-6deg)}}@keyframes get-copy{0%{opacity:0;transform:translateY(24px)scale(.9)}to{opacity:1;transform:none}}@keyframes get-confetti{0%{opacity:1;transform:translate(0)scale(.4)rotate(0)}28%{opacity:1;transform:translate(calc(var(--x) * .75), calc(-18vh - var(--i) * .5vh)) scale(1) rotate(calc(var(--i) * 40deg))}to{opacity:0;transform:translate(var(--x), 52vh) scale(.9) rotate(calc(var(--i) * 97deg))}}@media (max-width:760px){.get-stage{width:clamp(150px,66.6667dvh - 213.333px,min(250px,66vw))}.get-copy{margin-top:18px}}.dashboard{container:dashboard/inline-size}.home-hero{border-radius:var(--r-xl);background:radial-gradient(600px 300px at 0% 0%, #f6c45324, transparent 60%), radial-gradient(500px 400px at 100% 100%, #8c7bff2e, transparent 60%), linear-gradient(160deg, var(--surface-2), var(--surface));grid-template-columns:minmax(0,1.25fr) minmax(460px,.9fr);align-items:center;gap:clamp(24px,4vw,56px);padding:clamp(24px,4vw,48px);display:grid;position:relative;overflow:hidden}.home-hero:after{content:"・－・　－・－・　・－－　－・・・";color:#f6c45312;font:900 64px/1 var(--font-mono);letter-spacing:.1em;white-space:nowrap;pointer-events:none;position:absolute;top:18px;right:-20px}.home-hero-copy{z-index:1;position:relative}.home-hero-copy h1{margin:14px 0 16px;font-size:clamp(34px,4.6vw,60px);font-weight:900;line-height:1.15}.home-hero-copy h1 em{background:linear-gradient(90deg, var(--gold), #ffe7a3);color:#0000;-webkit-background-clip:text;background-clip:text;font-style:normal}.home-hero-copy>p:not(.section-kicker){color:var(--text-2);max-width:46ch;margin:0 0 26px;font-size:16px}.home-hero-actions{flex-wrap:wrap;gap:12px;display:flex}.home-player{z-index:1;grid-template-columns:minmax(0,1fr) 150px;gap:14px;display:grid;position:relative}.player-card{border:1px solid var(--line-2);border-radius:var(--r-lg);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0a0e228c;gap:16px;min-width:0;padding:20px;display:grid}.player-level{width:100%;color:inherit;text-align:left;border-radius:var(--r-md);transition:transform var(--t-fast);background:0 0;border:0;align-items:center;gap:16px;padding:0;display:flex}.player-level:hover{transform:translateY(-2px)}.player-level .progress-ring-label{display:grid}.player-level .progress-ring-label small{color:var(--muted);font:800 11px var(--font-mono)}.player-level .progress-ring-label b{font:900 30px/1 var(--font-mono)}.player-level>div{gap:2px;display:grid}.player-level>div span{color:var(--muted);font:700 12px var(--font-display);white-space:nowrap}.player-level>div b{font:900 24px var(--font-mono)}.player-level>div small{color:var(--muted);font-size:12px}.player-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.player-stat{border-radius:var(--r-md);background:var(--surface);border:1px solid var(--line);align-items:center;gap:10px;padding:10px 12px;display:flex}.player-stat div{line-height:1.1;display:grid}.player-stat b{font:900 22px var(--font-mono)}.player-stat b small{color:var(--muted);font-size:12px}.player-stat span{color:var(--muted);font:700 11px var(--font-display);white-space:nowrap}.player-stat.streak{color:var(--faint)}.player-stat.streak.on{color:#ff9b5c}.player-stat.streak.on b{color:var(--text)}.player-stat.goal .progress-ring-label{color:var(--mint)}.next-card{border-radius:var(--r-lg);text-align:center;transition:transform var(--t-med) var(--ease-spring), border-color var(--t-fast);background:#f6c4530d;border:1px dashed #f6c45366;align-content:start;gap:10px;padding:10px;display:grid}.next-card:hover{border-color:var(--gold);transform:translateY(-4px)rotate(-1deg)}.next-card-copy{gap:2px;display:grid}.next-card-copy span{color:var(--gold);font:800 11px var(--font-display)}.next-card-copy b{font:900 22px var(--font-display)}.next-card-copy small{color:var(--muted);font-size:11px}.next-card.empty{place-content:center;min-height:200px}.home-section-head{align-items:baseline;gap:12px;margin:36px 0 14px;display:flex}.home-section-head h2{margin:0;font-size:22px}.home-section-head small{color:var(--muted)}.mode-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.mode-tile{--tone:var(--gold);border:1px solid var(--line);border-radius:var(--r-lg);background:linear-gradient(160deg, var(--tone), var(--surface));grid-template-rows:auto auto 1fr auto;gap:6px;min-height:190px;padding:20px;display:grid;position:relative}@supports (color:color-mix(in lab, red, red)){.mode-tile{background:linear-gradient(160deg, color-mix(in srgb, var(--tone) 9%, var(--surface)), var(--surface))}}.mode-tile{text-align:left;transition:transform var(--t-med) var(--ease-spring), border-color var(--t-fast), box-shadow var(--t-med);overflow:hidden}.mode-tile:after{content:"";background:radial-gradient(circle, var(--tone), transparent 70%);border-radius:50%;width:140px;height:140px;position:absolute;bottom:-40px;right:-40px}@supports (color:color-mix(in lab, red, red)){.mode-tile:after{background:radial-gradient(circle, color-mix(in srgb, var(--tone) 22%, transparent), transparent 70%)}}.mode-tile:after{transition:transform var(--t-med) var(--ease-out)}.mode-tile:hover{border-color:var(--tone);transform:translateY(-4px)}@supports (color:color-mix(in lab, red, red)){.mode-tile:hover{border-color:color-mix(in srgb, var(--tone) 50%, transparent)}}.mode-tile:hover{box-shadow:0 16px 40px #00000059}.mode-tile:hover:after{transform:scale(1.4)}.mode-tile.featured{grid-column:1/-1;grid-template-rows:auto auto;grid-template-columns:auto 1fr auto;align-items:center;column-gap:18px;min-height:0}.mode-tile.featured .mode-icon{grid-row:1/3;width:60px;height:60px}.mode-tile.featured h3{margin:0}.mode-tile.featured .mode-meta{grid-area:1/3/3;margin:0;font-size:15px}.mode-tile.tone-sky{--tone:var(--sky)}.mode-tile.tone-violet{--tone:var(--violet)}.mode-tile.tone-coral{--tone:var(--coral)}.mode-tile.tone-mint{--tone:var(--mint)}.mode-icon{background:var(--tone);border-radius:16px;place-items:center;width:50px;height:50px;display:grid}@supports (color:color-mix(in lab, red, red)){.mode-icon{background:color-mix(in srgb, var(--tone) 18%, transparent)}}.mode-icon{color:var(--tone)}.mode-tile h3{margin:10px 0 0;font-size:19px}.mode-tile p{color:var(--text-2);margin:0;font-size:13.5px;line-height:1.6}.mode-meta{color:var(--tone);font:800 13px var(--font-display);justify-content:space-between;align-items:center;gap:6px;margin-top:8px;display:inline-flex}.home-bottom{grid-template-columns:1.2fr 1fr;gap:14px;margin-top:14px;display:grid}.home-collection .panel-head h3,.home-stats .panel-head h3{align-items:center;gap:8px;display:inline-flex}.collection-progress{gap:8px;margin-bottom:16px;display:grid}.collection-progress b{font:900 28px var(--font-mono);color:var(--gold)}.collection-progress b small{color:var(--muted);font-size:14px}.recent-cards{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;display:grid}.recent-card{animation:fx-pop .5s var(--ease-spring) both}.recent-card:nth-child(2){animation-delay:50ms}.recent-card:nth-child(3){animation-delay:.1s}.recent-card:nth-child(4){animation-delay:.15s}.recent-card:nth-child(5){animation-delay:.2s}.recent-card:nth-child(6){animation-delay:.25s}.home-hint{color:var(--muted);margin:0}.home-metrics{grid-template-columns:1fr 1fr;gap:10px;display:grid}@container dashboard (width<=1080px){.home-hero{grid-template-columns:1fr}}@media (max-width:1180px){.mode-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-bottom{grid-template-columns:1fr}}@media (max-width:760px){.home-hero{border-radius:var(--r-lg);padding:22px}.home-hero:after{font-size:40px}.home-hero-actions .btn{flex:1}.home-player{grid-template-columns:1fr 110px}.player-level .progress-ring{width:76px!important;height:76px!important}.player-level .progress-ring svg{width:76px;height:76px}.mode-grid{grid-template-columns:1fr 1fr;gap:10px}.mode-tile{min-height:0;padding:16px}.mode-tile p{display:none}.recent-cards{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:420px){.home-player{grid-template-columns:1fr}.next-card{text-align:left;grid-template-columns:90px 1fr;align-items:center}}.course-pick-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.course-pick-card{--tone:var(--family-latin);border:1px solid var(--line);border-radius:var(--r-xl);background:linear-gradient(165deg, var(--tone), var(--surface) 70%);align-content:start;gap:10px;min-height:300px;padding:26px 24px;display:grid;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.course-pick-card{background:linear-gradient(165deg, color-mix(in srgb, var(--tone) 22%, var(--surface)), var(--surface) 70%)}}.course-pick-card{text-align:left;transition:transform var(--t-med) var(--ease-spring), border-color var(--t-fast), box-shadow var(--t-med)}.course-pick-card.course-amateur-wabun{--tone:var(--family-wabun)}.course-pick-card.course-general{--tone:var(--violet)}.course-pick-card:hover{border-color:var(--tone);transform:translateY(-6px)}@supports (color:color-mix(in lab, red, red)){.course-pick-card:hover{border-color:color-mix(in srgb, var(--tone) 60%, transparent)}}.course-pick-card:hover{box-shadow:0 24px 50px #0006}.course-pick-glyph{font:900 180px/1 var(--font-display);color:var(--tone);position:absolute;top:-24px;right:-10px}@supports (color:color-mix(in lab, red, red)){.course-pick-glyph{color:color-mix(in srgb, var(--tone) 22%, transparent)}}.course-pick-glyph{pointer-events:none}.course-pick-step{color:var(--gold);font:800 11px var(--font-mono);letter-spacing:.2em}.course-pick-card strong{font:900 26px var(--font-display);position:relative}.course-pick-card small{color:var(--text-2);font-size:14px;line-height:1.7;position:relative}.course-pick-card b{color:var(--gold);font:800 14px var(--font-display);align-items:center;gap:6px;margin-top:auto;padding-top:16px;display:inline-flex;position:relative}.learn-top{grid-template-columns:auto 1fr auto;align-items:center;gap:24px;margin-bottom:18px;display:grid}.learn-course h1{margin:2px 0 0;font-size:clamp(22px,2.4vw,30px)}.learn-course small{color:var(--muted)}.phase-stepper{justify-content:center;gap:0;margin:0;padding:0;list-style:none;display:flex}.phase-stepper li{align-items:center;display:flex;position:relative}.phase-stepper li+li:before{content:"";background:var(--surface-3);border-radius:3px;width:clamp(16px,3vw,48px);height:3px;margin:0 6px}.phase-stepper li.done+li:before,.phase-stepper li.current:before{background:linear-gradient(90deg, var(--mint), var(--gold))}.phase-stepper button{border-radius:var(--r-pill);text-align:left;transition:background var(--t-fast), border-color var(--t-fast);background:0 0;border:1px solid #0000;align-items:center;gap:10px;padding:6px 14px 6px 6px;display:flex}.phase-stepper button:hover:not(:disabled){background:#ffffff0a}.phase-stepper button:disabled{opacity:.45}.phase-dot{background:var(--surface-2);border:2px solid var(--line-2);width:38px;height:38px;color:var(--muted);transition:all var(--t-med) var(--ease-spring);border-radius:50%;place-items:center;display:grid}.phase-text{line-height:1.2;display:grid}.phase-text b{font:800 14px var(--font-display);color:var(--text-2)}.phase-text small{color:var(--muted);font-size:11px}.phase-stepper li.current button{background:var(--gold-soft);border-color:#f6c4534d}.phase-stepper li.current .phase-dot{background:var(--gold);border-color:var(--gold);color:#2a1c00;transform:scale(1.06);box-shadow:0 0 0 5px #f6c4532e}.phase-stepper li.current .phase-text b{color:var(--gold)}.phase-stepper li.done .phase-dot{background:var(--mint);border-color:var(--mint);color:#032417}.scope-strip{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-sunken);flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:22px;padding:10px 14px;display:flex}.scope-strip>span{color:var(--muted);font:700 12px var(--font-display);margin-right:4px}.scope-toggle{border:1.5px solid var(--line-2);border-radius:var(--r-pill);min-height:34px;color:var(--muted);font:700 13px var(--font-display);transition:all var(--t-fast);background:0 0;align-items:center;gap:8px;padding:0 14px 0 6px;display:inline-flex}.scope-toggle i{border:1.5px solid var(--line-3);border-radius:50%;place-items:center;width:22px;height:22px;font-style:normal;display:grid}.scope-toggle.on{color:var(--text);background:var(--mint-soft);border-color:#43e0a680}.scope-toggle.on i{background:var(--mint);border-color:var(--mint);color:#032417}.lesson-grid{grid-template-columns:minmax(260px,400px) minmax(0,1fr);align-items:start;gap:clamp(20px,3vw,40px);display:grid}.lesson-card-col{top:calc(var(--header) + 20px);gap:16px;display:grid;position:sticky}.lesson-card-wrap{border-radius:var(--r-lg);transition:transform var(--t-med) var(--ease-out);position:relative}.lesson-card-wrap:before{content:"";border-radius:calc(var(--r-lg) + 14px);opacity:0;transition:opacity var(--t-med);pointer-events:none;background:radial-gradient(circle,#6cbcff4d,#0000 70%);position:absolute;inset:-14px}.lesson-card-wrap.playing:before{opacity:1;animation:1.6s ease-in-out infinite card-breathe}.lesson-card{animation:card-enter .5s var(--ease-spring) both}.lesson-card-stats{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);gap:12px;padding:14px 16px;display:grid}.meter-row{grid-template-columns:auto 1fr auto;align-items:center;gap:12px;display:grid}.meter-row span{color:var(--muted);font:700 12px var(--font-display)}.meter-row b{color:var(--gold);font:800 14px var(--font-mono)}.stat-chips{flex-wrap:wrap;gap:6px;display:flex}.lesson-panel{padding:clamp(20px,3vw,32px)}.lesson-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.lesson-head h2{margin:6px 0 0;font-size:clamp(22px,2.4vw,30px)}.lesson-lead{color:var(--text-2);margin:10px 0 0}.lesson-note{color:var(--muted);margin:14px 0 0;font-size:13px}.lesson-symbol{border-radius:var(--r-lg);background:var(--surface-sunken);border:1px solid var(--line);align-items:center;gap:clamp(16px,3vw,32px);margin:24px 0 18px;padding:18px 22px;display:flex}.lesson-symbol>b{font:900 clamp(56px, 7vw, 88px)/1 var(--font-display);background:linear-gradient(180deg, #fff6d6, var(--gold) 60%, var(--gold-2));color:#0000;-webkit-background-clip:text;background-clip:text}.lesson-code{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.lesson-code i{background:var(--surface-3);border-radius:10px;height:18px;transition:background 60ms linear,box-shadow 60ms linear,transform 60ms linear;display:block}.lesson-code i.dit{width:18px}.lesson-code i.dah{width:54px}.lesson-code i.on{background:var(--sky);box-shadow:0 0 18px var(--sky), 0 0 0 4px #6cbcff33;transform:scaleY(1.15)}.mnemonic-rhythm{flex-wrap:wrap;gap:8px;margin:0 0 18px;display:flex}.mnemonic-rhythm b{border-radius:var(--r-md);border:1.5px solid var(--line-2);background:var(--surface-2);min-width:52px;min-height:52px;color:var(--text-2);font:900 22px var(--font-display);transition:background 60ms linear, color 60ms linear, transform .1s var(--ease-spring), box-shadow 60ms linear;place-items:center;padding:8px 14px;display:grid}.mnemonic-rhythm b.long{min-width:92px}.mnemonic-rhythm b.active{background:var(--gold);border-color:var(--gold);color:#2a1c00;transform:translateY(-4px)scale(1.06);box-shadow:0 8px 22px #f6c45366}.play-zone{border-radius:var(--r-lg);background:linear-gradient(135deg,#6cbcff1a,#0000 70%);border:1px solid #6cbcff2e;align-items:center;gap:22px;margin:20px 0;padding:18px;display:flex}.play-orb{background:radial-gradient(circle at 35% 30%, #a6dcff, var(--sky) 45%, var(--sky-2));color:#04203a;width:96px;height:96px;transition:transform var(--t-fast) var(--ease-out), box-shadow var(--t-fast), filter var(--t-fast);border:0;border-radius:50%;flex:none;place-items:center;display:grid;position:relative;box-shadow:0 6px #1f5f9e,0 16px 40px #6cbcff59}.play-orb svg{z-index:1;margin-left:5px;position:relative}.play-orb:hover:not(:disabled){filter:brightness(1.08);transform:translateY(-2px)}.play-orb:active:not(:disabled){transform:translateY(4px);box-shadow:0 2px #1f5f9e,0 8px 20px #6cbcff4d}.play-orb:disabled{cursor:default}.play-orb.playing{animation:1s ease-in-out infinite orb-beat}.play-orb:disabled:not(.playing){filter:saturate(.4)brightness(.8);box-shadow:0 3px #1f5f9e}.play-zone-copy{flex:1;gap:6px;min-width:0;display:grid}.play-zone-copy>b{font:800 18px var(--font-display)}.play-zone-copy>small{color:var(--muted);font-size:12.5px}.listen-pips{gap:8px;margin-top:4px;display:flex}.listen-pips i{background:var(--surface-3);width:28px;height:10px;transition:background var(--t-med), transform var(--t-med) var(--ease-spring);border-radius:6px}.listen-pips i.on{background:var(--sky);transform:scaleY(1.2);box-shadow:0 0 10px #6cbcff80}.lesson-actions{flex-wrap:wrap;gap:10px;margin-top:4px;display:flex}.lesson-next{margin-left:auto}.mnemonic-options{flex-wrap:wrap;gap:8px;display:flex}.mnemonic-options button{border:1.5px solid var(--line-2);border-radius:var(--r-md);background:var(--surface-2);font:800 15px var(--font-display);text-align:left;gap:2px;padding:10px 14px;display:grid}.mnemonic-options button span{color:var(--muted);font:700 10px var(--font-mono);letter-spacing:.1em}.mnemonic-options button.active{border-color:var(--gold);background:var(--gold-soft)}.answer-zone{margin:6px 0 4px;position:relative}.count-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;display:grid}.choice-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.answer-key{border:1.5px solid var(--line-2);border-radius:var(--r-md);background:var(--surface-2);min-height:72px;transition:transform var(--t-fast) var(--ease-out), box-shadow var(--t-fast), background var(--t-fast), border-color var(--t-fast), opacity var(--t-med);place-items:center;display:grid;position:relative;box-shadow:0 5px #00000059}.answer-key b{font:900 28px/1 var(--font-display)}.answer-key small{color:var(--faint);font:700 10px var(--font-mono);position:absolute;top:6px;left:9px}.answer-key.big{min-height:108px}.answer-key.big b{font-size:clamp(36px,4vw,52px)}.answer-key:hover:not(:disabled){border-color:var(--gold);transform:translateY(-2px);box-shadow:0 7px #00000059}.answer-key:active:not(:disabled){transform:translateY(4px);box-shadow:0 1px #00000059}.answer-key:disabled{cursor:default}.answer-key.correct{background:linear-gradient(180deg, #6ff0bf, var(--mint));border-color:var(--mint);color:#032417;animation:fx-pop .45s var(--ease-spring) both;box-shadow:0 5px #137552,0 0 30px #43e0a666}.answer-key.correct small{color:#0b5a3c}.answer-key.wrong{background:var(--coral-soft);border-color:var(--coral);color:var(--coral);box-shadow:0 5px #78142899}.answer-key.dim{opacity:.35}.result-card{--tone:var(--mint);border-radius:var(--r-lg);border:1.5px solid var(--tone);margin-top:18px;padding:18px}@supports (color:color-mix(in lab, red, red)){.result-card{border:1.5px solid color-mix(in srgb, var(--tone) 45%, transparent)}}.result-card{background:linear-gradient(135deg, var(--tone), transparent 70%)}@supports (color:color-mix(in lab, red, red)){.result-card{background:linear-gradient(135deg, color-mix(in srgb, var(--tone) 14%, transparent), transparent 70%)}}.result-card{animation:result-in .4s var(--ease-spring) both}.result-card.miss{--tone:var(--coral)}.result-card-head{align-items:center;gap:14px;margin-bottom:14px;display:flex}.result-icon{background:var(--tone);width:44px;height:44px;color:var(--bg);border-radius:50%;place-items:center;display:grid}.result-card-head div{display:grid}.result-card-head b{font:900 20px var(--font-display);color:var(--tone)}.result-card-head small{color:var(--text-2);font-size:14px}.confirm-sequence{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:14px;display:flex}.confirm-sequence b{background:var(--surface-2);min-width:38px;height:42px;color:var(--muted);font:800 18px var(--font-display);border-radius:10px;place-items:center;padding:0 8px;display:grid}.confirm-sequence b.target{background:var(--gold);color:#2a1c00;animation:fx-pop .4s var(--ease-spring) both;box-shadow:0 0 16px #f6c45366}.confirm-gap{width:14px}.recall-meter{grid-template-columns:auto 1fr auto;align-items:center;gap:12px;margin-bottom:14px;display:grid}.recall-meter span{color:var(--muted);font:700 12px var(--font-display)}.recall-meter b{color:var(--gold);font:800 14px var(--font-mono)}.card-strip{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface-sunken);gap:6px;margin-top:28px;padding:12px;display:flex;overflow-x:auto}.strip-item{border:1.5px solid var(--line);background:var(--surface);width:46px;height:56px;color:var(--faint);transition:transform var(--t-fast) var(--ease-spring), border-color var(--t-fast);border-radius:12px;flex:none;place-items:center;padding-bottom:6px;display:grid;position:relative;overflow:hidden}.strip-item b{font:800 18px var(--font-display)}.strip-item i{background:var(--surface-3);border-radius:4px;height:4px;position:absolute;bottom:5px;left:6px;right:6px}.strip-item i:after{content:"";width:var(--meter);border-radius:inherit;background:var(--gold);position:absolute;inset:0 auto 0 0}.strip-item:hover{transform:translateY(-3px)}.strip-item.status-discovered{color:var(--text-2)}.strip-item.status-learning{color:var(--text);border-color:#f6c45340}.strip-item.status-mastered{color:#2a1c00;border-color:var(--gold);background:linear-gradient(180deg, #ffe08a, var(--gold))}.strip-item.status-mastered i{background:#00000026}.strip-item.status-mastered i:after{background:#2a1c00}.strip-item.current{border-color:var(--sky);transform:translateY(-3px);box-shadow:0 0 0 3px #6cbcff4d}@keyframes card-enter{0%{opacity:0;transform:translateY(14px)rotate(-2deg)scale(.96)}to{opacity:1;transform:none}}@keyframes card-breathe{50%{opacity:.65;transform:scale(1.03)}}@keyframes orb-beat{50%{transform:scale(1.05)}}@keyframes result-in{0%{opacity:0;transform:translateY(10px)scale(.98)}to{opacity:1;transform:none}}@media (max-width:1180px){.learn-top{grid-template-columns:1fr auto}.phase-stepper{grid-area:2/1/auto/-1;justify-content:flex-start}.lesson-grid{grid-template-columns:minmax(220px,300px) minmax(0,1fr)}.course-pick-grid{grid-template-columns:1fr}.course-pick-card{min-height:0}}@media (max-width:760px){.learn-top{gap:12px}.phase-text small{display:none}.phase-stepper button{padding:4px 10px 4px 4px}.phase-stepper li+li:before{width:12px;margin:0 2px}.phase-dot{width:32px;height:32px}.lesson-grid{grid-template-columns:1fr}.lesson-card-col{grid-template-columns:140px 1fr;align-items:start;position:static}.lesson-card-stats{padding:12px}.meter-row{grid-template-columns:1fr auto}.meter-row span{grid-column:1/-1}.lesson-symbol{margin:16px 0 12px;padding:12px 16px}.lesson-code i.dah{width:40px}.play-zone{gap:14px;padding:14px}.play-orb{width:76px;height:76px}.count-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.answer-key.big{min-height:88px}.lesson-next{flex:100%;margin-left:0}.lesson-actions .btn-ghost{flex:1}}.train-modes{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-bottom:16px;display:grid}.train-mode{border:1.5px solid var(--line);border-radius:var(--r-md);background:var(--surface);text-align:left;transition:border-color var(--t-fast), background var(--t-fast), transform var(--t-fast);gap:2px;padding:10px 12px;display:grid}.train-mode b{font:800 14px var(--font-display)}.train-mode small{color:var(--muted);font-size:11.5px}.train-mode:hover{border-color:var(--line-3);transform:translateY(-1px)}.train-mode.active{border-color:var(--sky);background:linear-gradient(135deg, var(--sky-soft), transparent)}.train-mode.active b{color:var(--sky)}.custom-source{margin-bottom:16px}.custom-source label{color:var(--text-2);font:700 13px var(--font-display);grid-template-columns:auto 1fr;align-items:center;gap:14px;display:grid}.custom-source input{font-family:var(--font-mono);letter-spacing:.06em;font-weight:700}.train-workspace{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:18px;display:grid}.train-stage{background:radial-gradient(500px 280px at 50% 34%, #6cbcff1f, transparent 70%), linear-gradient(180deg, var(--surface), var(--surface));flex-direction:column;align-items:center;padding:24px clamp(18px,4vw,48px) 28px;display:flex}@supports (color:color-mix(in lab, red, red)){.train-stage{background:radial-gradient(500px 280px at 50% 34%, #6cbcff1f, transparent 70%), linear-gradient(180deg, var(--surface), color-mix(in srgb, var(--surface) 70%, var(--bg)))}}.train-stage-top{justify-content:space-between;align-items:center;width:100%;min-height:40px;display:flex}.train-stage-top .chip{gap:8px}.train-stage-top .signal-bars{height:16px}.train-stage-top .signal-bars i{width:3px}.train-orb{--tone:var(--sky);aspect-ratio:1;background:radial-gradient(circle at 35% 28%, #ffffff1f, transparent 45%), radial-gradient(circle, var(--tone), var(--surface-sunken) 72%);border-radius:50%;place-items:center;width:clamp(180px,22vw,240px);margin:18px 0 10px;display:grid;position:relative}@supports (color:color-mix(in lab, red, red)){.train-orb{background:radial-gradient(circle at 35% 28%, #ffffff1f, transparent 45%), radial-gradient(circle, color-mix(in srgb, var(--tone) 22%, var(--surface-2)), var(--surface-sunken) 72%)}}.train-orb{border:3px solid var(--tone)}@supports (color:color-mix(in lab, red, red)){.train-orb{border:3px solid color-mix(in srgb, var(--tone) 45%, transparent)}}.train-orb{box-shadow:0 0 0 10px var(--tone), 0 24px 60px #0006}@supports (color:color-mix(in lab, red, red)){.train-orb{box-shadow:0 0 0 10px color-mix(in srgb, var(--tone) 6%, transparent), 0 24px 60px #0006}}.train-orb{transition:border-color var(--t-med), box-shadow var(--t-med)}.train-orb .signal-pulse i{border-color:var(--tone)}.train-orb.correct{--tone:var(--mint)}.train-orb.wrong{--tone:var(--coral)}.train-orb.playing{box-shadow:0 0 0 10px #6cbcff1a,0 0 60px #6cbcff59}.train-orb-face{z-index:2;color:var(--tone);animation:fx-pop .4s var(--ease-spring) both;place-items:center;display:grid;position:relative}.train-orb-face b{font:900 clamp(70px, 9vw, 110px)/1 var(--font-display);color:var(--text);text-shadow:0 0 30px var(--tone)}@supports (color:color-mix(in lab, red, red)){.train-orb-face b{text-shadow:0 0 30px color-mix(in srgb, var(--tone) 60%, transparent)}}.train-orb-face b.long{text-align:center;overflow-wrap:anywhere;max-width:90%;font-size:clamp(18px,2.4vw,28px);line-height:1.3;font-family:var(--font-mono)}.train-orb.wrong .train-orb-face{animation:.42s both fx-shake}.train-status{min-height:1.6em;color:var(--text-2);font:800 18px var(--font-display);text-align:center;margin:8px 0 18px}.train-orb.correct+.train-status{color:var(--mint)}.answer-form{gap:10px;width:min(380px,100%);display:flex}.answer-form.long{width:min(640px,100%)}.answer-form input{border-radius:var(--r-md);text-align:center;min-width:0;height:58px;font:900 26px var(--font-mono);letter-spacing:.1em;text-transform:uppercase;flex:1}.answer-form.long input{font-size:18px}.answer-form .btn{min-height:58px}.train-actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:20px;display:flex}.transition-hint{border-radius:var(--r-pill);background:var(--gold-soft);color:var(--gold);font:800 16px var(--font-display);animation:fx-pop .35s var(--ease-spring);border:1px solid #f6c45366;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;margin-top:14px;padding:10px 18px;display:inline-flex}.transition-hint small{color:var(--muted);font-size:11px;font-weight:700}.train-keys{color:var(--muted);margin:16px 0 0;font-size:12px}.train-side{top:calc(var(--header) + 20px);gap:14px;display:grid;position:sticky}.train-metrics{grid-template-columns:1fr 1fr;gap:8px;display:grid}.train-metrics .metric{background:var(--surface-2);padding:12px 14px}.train-metrics .metric>strong{font-size:22px}@media (max-width:1180px){.train-modes{grid-template-columns:repeat(5,minmax(120px,1fr));overflow-x:auto}.train-workspace{grid-template-columns:1fr}.train-side{grid-template-columns:1fr 1fr;position:static}}@media (max-width:760px){.train-modes{scrollbar-width:none;margin:0 -16px 14px;padding:0 16px 4px;display:flex}.train-mode{flex:none}.train-side{grid-template-columns:1fr}.answer-form .btn .kbd{display:none}.train-actions .btn{flex:1}}.koch-hero{background:radial-gradient(420px 200px at 0% 0%, #ae92ff29, transparent 68%), radial-gradient(380px 220px at 100% 120%, #f6c4531a, transparent 62%), linear-gradient(160deg, var(--surface-2), var(--surface));grid-template-columns:minmax(260px,340px) minmax(0,1fr);align-items:center;gap:clamp(16px,2.4vw,28px);margin-bottom:18px;padding:clamp(16px,2.2vw,24px);display:grid}.koch-level{align-items:center;gap:16px;min-width:0;display:flex}.koch-level .progress-ring-label small{color:var(--muted);font:800 11px/1 var(--font-mono);letter-spacing:.08em}.koch-level .progress-ring-label b{font:900 34px/1 var(--font-mono);color:var(--text)}.koch-level-text{flex:1;gap:3px;min-width:0;display:grid}.koch-level-text span{color:var(--muted);font:700 12px/1.4 var(--font-display)}.koch-level-text b{font:900 clamp(22px, 2.2vw, 30px)/1.2 var(--font-display)}.koch-level-text small{color:var(--text-2);font-size:12.5px}.koch-ladder{border:1px solid var(--line);border-radius:var(--r-md);background:#0a0e226b;flex-wrap:wrap;gap:6px;margin:0;padding:10px;list-style:none;display:flex}.koch-char{border:1.5px solid var(--line);width:32px;height:32px;color:var(--faint);font:800 13px/1 var(--font-mono);background:0 0;border-radius:9px;place-items:center;display:grid}.koch-char.unlocked{color:var(--gold);background:linear-gradient(#f6c4533d,#f6c45314);border-color:#f6c45361}.koch-char.current{border-color:var(--violet);color:var(--text);box-shadow:0 0 0 3px var(--violet-soft), 0 0 16px #ae92ff6b;background:linear-gradient(155deg,#ae92ff6b,#f6c45333)}.koch-char.next{border-style:dashed;border-color:var(--gold);color:var(--gold);background:0 0;animation:1.8s ease-in-out infinite koch-next-pulse}.koch-char.locked{opacity:.55}@keyframes koch-next-pulse{0%,to{box-shadow:0 0 #f6c45300}50%{box-shadow:0 0 0 4px #f6c45324,0 0 14px #f6c45347}}.koch-grid{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:18px;display:grid}.koch-main,.koch-side{min-width:0}.koch-field-label{color:var(--muted);font:800 12px/1.3 var(--font-display);letter-spacing:.04em}.koch-setup{gap:16px;display:grid}.koch-setup .disclosure{margin-top:0}.koch-setup-row{justify-content:space-between;align-items:center;gap:12px 16px;display:flex}.koch-setup-row .koch-field-label{flex:none}.koch-setup-row .segmented{max-width:100%;margin-left:auto}.koch-setup-row select{width:min(100%,420px);margin-left:auto}.koch-test-note{border-radius:var(--r-md);background:var(--gold-soft);color:var(--text);font:700 14px/1.55 var(--font-display);border:1px solid #f6c4535c;align-items:flex-start;gap:10px;margin:0;padding:12px 14px;display:flex}.koch-test-note svg{color:var(--gold);flex:none;margin-top:3px}.koch-new{gap:8px;display:grid}.koch-new-chars{flex-wrap:wrap;gap:10px;display:flex}.koch-new-char{border:1.5px solid var(--line-2);border-radius:var(--r-md);background:linear-gradient(180deg, var(--surface-2), var(--surface-sunken));min-width:96px;box-shadow:var(--shadow-1);color:inherit;font:inherit;text-align:center;transition:transform var(--t-med) var(--ease-spring), border-color var(--t-fast), box-shadow var(--t-med);justify-items:center;gap:2px;padding:14px 18px 12px;display:grid}.koch-new-char:hover{border-color:#ae92ff8c;transform:translateY(-4px);box-shadow:0 16px 32px #00000059,0 0 0 1px #ae92ff47}.koch-new-char:active{transform:translateY(-1px)scale(.98)}.koch-new-char b{font:900 36px/1 var(--font-mono);color:var(--gold)}.koch-new-char em{font:700 13px/1 var(--font-mono);letter-spacing:.14em;color:var(--text-2);font-style:normal}.koch-new-char small{color:var(--sky);font:800 11px/1 var(--font-display);align-items:center;gap:4px;margin-top:4px;display:inline-flex}.koch-pool{color:var(--muted);font:700 12px/1.6 var(--font-mono);letter-spacing:.08em;margin:2px 0 0}.koch-run{gap:14px;display:grid}.koch-run-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.koch-chip-test{background:linear-gradient(135deg, var(--violet-soft), var(--gold-soft));color:var(--gold);border-color:#ae92ff7a}.koch-run-status{color:var(--sky);font:700 13px/1.4 var(--font-display)}.koch-copy{resize:vertical;border-radius:var(--r-md);background:linear-gradient(180deg, #6cbcff0f, transparent 56px), var(--surface-sunken);width:100%;min-height:220px;color:var(--text);caret-color:var(--sky);font:700 clamp(20px, 2.2vw, 26px)/1.65 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;margin:0;padding:18px 20px;display:block;box-shadow:inset 3px 0 #6cbcff8c,inset 0 2px 10px #0000006b}.koch-copy::placeholder{color:var(--faint);font-family:var(--font-body);letter-spacing:0;text-transform:none;font-size:14px;font-weight:500}:is(.koch-copy:focus,.koch-copy:focus-visible){border-color:var(--sky);box-shadow:0 0 0 4px var(--sky-soft), inset 3px 0 0 var(--sky), inset 0 2px 10px #0000006b;outline:none}.koch-run-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.koch-run-actions .btn-primary{margin-left:auto}.koch-run-actions .kbd{color:inherit;background:#2a1c0024}.koch-result{gap:16px;display:grid}.koch-result.pass{background:radial-gradient(520px 180px at 0% 0%, #43e0a61f, transparent 70%), linear-gradient(180deg, var(--surface), var(--surface));border-color:#43e0a67a}@supports (color:color-mix(in lab, red, red)){.koch-result.pass{background:radial-gradient(520px 180px at 0% 0%, #43e0a61f, transparent 70%), linear-gradient(180deg, var(--surface), color-mix(in srgb, var(--surface) 80%, var(--bg)))}}.koch-result.pass{box-shadow:0 0 0 1px #43e0a629, 0 0 36px #43e0a61f, var(--shadow-1)}.koch-result.fail{background:radial-gradient(520px 180px at 0% 0%, #ff6f7f1f, transparent 70%), linear-gradient(180deg, var(--surface), var(--surface));border-color:#ff6f7f7a}@supports (color:color-mix(in lab, red, red)){.koch-result.fail{background:radial-gradient(520px 180px at 0% 0%, #ff6f7f1f, transparent 70%), linear-gradient(180deg, var(--surface), color-mix(in srgb, var(--surface) 80%, var(--bg)))}}.koch-result.fail{box-shadow:0 0 0 1px #ff6f7f29, 0 0 36px #ff6f7f1a, var(--shadow-1)}.koch-result-head{align-items:center;gap:clamp(16px,2vw,26px);display:flex}.koch-result .progress-ring-label b{font:900 34px/1 var(--font-mono)}.koch-result .progress-ring-label small{color:var(--muted);font:800 12px/1 var(--font-mono)}.koch-result.pass .progress-ring-label b{color:var(--mint)}.koch-result.fail .progress-ring-label b{color:var(--coral)}.koch-result-copy{min-width:0}.koch-result-copy h2{margin:2px 0 6px;font-size:clamp(26px,3vw,36px);font-weight:900}.koch-result.pass .koch-result-copy h2{color:var(--mint)}.koch-result.fail .koch-result-copy h2{color:var(--coral)}.koch-result-copy>p{color:var(--text-2);margin:0}.koch-result-stats{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.koch-miss{gap:8px;display:grid}.koch-miss-list{flex-wrap:wrap;gap:8px;display:flex}.koch-miss-char{border-radius:var(--r-sm);background:var(--coral-soft);min-width:64px;min-height:52px;color:inherit;font:inherit;transition:transform var(--t-fast) var(--ease-out), border-color var(--t-fast);border:1px solid #ff6f7f61;justify-items:center;gap:2px;padding:8px 12px;display:grid}.koch-miss-char:hover{border-color:var(--coral);transform:translateY(-2px)}.koch-miss-char b{font:900 22px/1 var(--font-mono);color:var(--coral)}.koch-miss-char small{color:var(--text-2);font:700 11px/1 var(--font-mono)}.koch-align{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-sunken);flex-wrap:wrap;align-content:flex-start;gap:4px 2px;margin:0;padding:12px;display:flex}.koch-cell{width:26px;font-family:var(--font-mono);border-radius:4px;flex:0 0 26px;grid-template-rows:1.15em 1em;align-content:center;justify-items:center;line-height:1;display:grid}.koch-cell b{font-size:13px;font-weight:800}.koch-cell small{min-height:1em;font:700 10px/1 var(--font-mono)}.koch-cell.match{color:var(--mint)}@supports (color:color-mix(in lab, red, red)){.koch-cell.match{color:color-mix(in srgb, var(--mint) 78%, var(--muted))}}.koch-cell.sub{background:var(--coral-soft);color:var(--coral)}.koch-cell.sub b,.koch-cell.sub small{font-weight:800}.koch-cell.del{border:1px dashed var(--line-3);color:var(--muted);background:#ffffff08}.koch-cell.ins{background:var(--gold-soft);color:var(--gold)}.koch-cell.group-end{margin-right:10px}.koch-legend{color:var(--muted);font:700 12px/1.4 var(--font-display);margin:0}.koch-legend i{vertical-align:-1px;border-radius:3px;width:10px;height:10px;margin:0 6px 0 14px;display:inline-block}.koch-legend i:first-child{margin-left:0}.koch-legend i.match{background:var(--mint)}.koch-legend i.sub{background:var(--coral)}.koch-legend i.del{border:1px dashed var(--muted);background:0 0}.koch-legend i.ins{background:var(--gold)}.koch-result-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.koch-side{top:calc(var(--header) + 16px);position:sticky}.koch-side h3{align-items:center;gap:8px;margin:0 0 12px;font-size:16px;display:flex}.koch-side h3 svg{color:var(--violet)}.koch-lessons{gap:4px;max-height:520px;margin:0;padding:0 4px 0 0;list-style:none;display:grid;overflow:auto}.koch-lesson button{border-radius:var(--r-sm);width:100%;color:inherit;font:inherit;text-align:left;transition:background var(--t-fast), border-color var(--t-fast);background:0 0;border:1px solid #0000;grid-template-columns:3.6em minmax(0,1fr) auto 16px;align-items:center;gap:8px;padding:8px 10px;display:grid}.koch-lesson button:hover:not(:disabled){background:#ffffff0a}.koch-lesson button:disabled{opacity:.45}.koch-lesson-no{color:var(--muted);font:700 11px/1 var(--font-mono)}.koch-lesson b{font:800 16px/1 var(--font-mono);letter-spacing:.04em;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.koch-lesson-best{color:var(--text-2);font:800 13px/1 var(--font-mono);text-align:right}.koch-lesson.cleared svg{color:var(--mint)}.koch-lesson-dot{background:var(--faint);border-radius:50%;justify-self:center;width:8px;height:8px}.koch-lesson.current button{background:var(--violet-soft);box-shadow:inset 3px 0 0 var(--violet);border-color:#ae92ff5c}.koch-lesson.current .koch-lesson-no{color:var(--violet)}.koch-lesson.current .koch-lesson-dot{background:var(--violet);box-shadow:0 0 8px var(--violet)}.levelup-reveal{z-index:520;padding:clamp(12px, 3dvh, 36px) clamp(16px, 4vw, 28px) max(16px, env(safe-area-inset-bottom));color:var(--text);background:radial-gradient(circle at 50% 36%,#ae92ff57 0%,#120c3000 46%),radial-gradient(circle at 50% 42%,#161033 0%,#07091c 64%);align-content:safe center;place-items:center;animation:.3s both fade-in;display:grid;position:fixed;inset:0;overflow:hidden auto}.levelup-rays,.levelup-sparks{pointer-events:none;position:absolute;inset:0;overflow:hidden}.levelup-rays:before{content:"";aspect-ratio:1;opacity:0;width:150vmax;animation:levelup-rays-in .7s .3s var(--ease-out) forwards, levelup-spin 28s linear infinite;background:repeating-conic-gradient(#ae92ff57 0deg 7deg,#0000 7deg 16deg,#f6c45347 16deg 22deg,#0000 22deg 34deg);position:absolute;top:40%;left:50%;translate:-50% -50%;-webkit-mask:radial-gradient(circle,#000 0%,#0000 54%);mask:radial-gradient(circle,#000 0%,#0000 54%)}.levelup-sparks i{--d:-34vmin;background:var(--gold);width:7px;height:7px;box-shadow:0 0 10px var(--gold);opacity:0;animation:levelup-spark .95s calc(.42s + var(--i) * 22ms) var(--ease-out) both;border-radius:50%;margin:-3px 0 0 -3px;position:absolute;top:40%;left:50%}.levelup-sparks i:nth-child(odd){background:var(--violet);box-shadow:0 0 10px var(--violet)}.levelup-sparks i:nth-child(3n){--d:-44vmin;border-radius:99px;width:3px;height:16px;margin:-8px 0 0 -1.5px}.levelup-sparks i:nth-child(3n+1){--d:-26vmin}.levelup-sparks i:nth-child(5n){background:#fff6d0;box-shadow:0 0 10px #fff}.levelup-body{z-index:1;text-align:center;flex-direction:column;align-items:center;gap:clamp(6px,1.4dvh,14px);width:min(680px,100%);display:flex;position:relative}.levelup-kicker{color:var(--violet);font:900 clamp(12px, 1.6vw, 14px)/1 var(--font-mono);letter-spacing:clamp(.18em,1.4vw,.38em);text-shadow:0 0 16px var(--violet), 0 0 32px #ae92ff73;animation:levelup-rise .4s 50ms var(--ease-out) both;margin:0}.levelup-levels{justify-content:center;align-items:center;gap:clamp(8px,2vw,16px);display:flex}.levelup-from{color:var(--faint);font:800 clamp(16px, 3vw, 26px)/1 var(--font-mono);animation:levelup-rise .4s .28s var(--ease-out) both}.levelup-levels>svg{width:clamp(18px,3dvh,28px);height:clamp(18px,3dvh,28px);color:var(--gold);animation:levelup-rise .4s .32s var(--ease-out) both;flex:none}.levelup-to{font:900 clamp(48px, 12dvh, 104px)/.85 var(--font-display);letter-spacing:-.03em;background:linear-gradient(180deg, #fff6d2 8%, var(--gold) 46%, var(--gold-2));color:#0000;filter:drop-shadow(0 0 16px #f6c4536b);animation:levelup-slam .62s .45s var(--ease-spring) both;-webkit-background-clip:text;background-clip:text}.levelup-title{max-width:16em;font:900 clamp(24px, 4.2dvh, 40px)/1.2 var(--font-display);text-wrap:balance;animation:levelup-rise .5s .8s var(--ease-out) both;margin:0}.levelup-unlock{justify-items:center;gap:8px;display:grid}.levelup-unlock>small{color:var(--gold);font:800 12px/1 var(--font-display);letter-spacing:.18em;animation:levelup-rise .4s 1.05s var(--ease-out) both}.levelup-chars{perspective:800px;flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.levelup-char{border-radius:var(--r-lg);background:radial-gradient(circle at 50% 0%, #f6c45333, transparent 62%), linear-gradient(180deg, var(--surface-2), var(--surface-sunken));min-width:108px;box-shadow:var(--shadow-gold);transform-origin:top;animation:levelup-drop .55s 1.1s var(--ease-spring) both;border:1.5px solid #f6c4537a;justify-items:center;gap:4px;padding:clamp(8px,1.4dvh,14px) clamp(14px,2vw,22px);display:grid}.levelup-char:nth-child(2){animation-delay:1.24s}.levelup-char b{font:900 clamp(44px, 10dvh, 72px)/1 var(--font-mono);color:var(--gold);text-shadow:0 0 22px #f6c45380}.levelup-char em{font:700 15px/1 var(--font-mono);letter-spacing:.16em;color:var(--text-2);font-style:normal}.levelup-actions{animation:levelup-rise .45s 1.4s var(--ease-out) both;flex-wrap:wrap;justify-content:center;gap:10px;display:flex}@keyframes levelup-rays-in{to{opacity:.9}}@keyframes levelup-spin{to{rotate:360deg}}@keyframes levelup-spark{0%{opacity:0;transform:rotate(calc(var(--i) * 20deg)) translateY(0) scale(.35)}18%{opacity:1}to{opacity:0;transform:rotate(calc(var(--i) * 20deg)) translateY(var(--d)) scale(.7)}}@keyframes levelup-rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes levelup-slam{0%{opacity:0;filter:blur(8px);transform:scale(1.75)}58%{opacity:1;filter:drop-shadow(0 0 26px #f6c453b3);transform:scale(.92)}to{opacity:1;filter:drop-shadow(0 0 16px #f6c4536b);transform:scale(1)}}@keyframes levelup-drop{0%{opacity:0;transform:translateY(-32px)rotateX(72deg)scale(.82)}to{opacity:1;transform:none}}@media (max-height:640px){.levelup-to{font-size:clamp(40px,9dvh,68px)}.levelup-char b{font-size:clamp(36px,8dvh,52px)}.levelup-title{font-size:clamp(20px,4dvh,28px)}.levelup-reveal .btn-lg{min-height:44px;font-size:15px}}@media (prefers-reduced-motion:reduce){.levelup-rays:before,.levelup-sparks i,.levelup-kicker,.levelup-from,.levelup-levels>svg,.levelup-to,.levelup-title,.levelup-unlock>small,.levelup-char,.levelup-actions,.koch-char.next{animation:none}.levelup-rays:before{opacity:.7}.levelup-kicker,.levelup-from,.levelup-levels>svg,.levelup-to,.levelup-title,.levelup-unlock>small,.levelup-char,.levelup-actions{opacity:1;transform:none}.levelup-to{filter:drop-shadow(0 0 16px #f6c4536b)}}@media (max-width:1180px){.koch-grid{grid-template-columns:1fr}.koch-side{position:static}}@media (max-width:760px){.koch-hero{grid-template-columns:1fr;padding:16px}.koch-ladder{gap:5px;padding:8px}.koch-char{width:28px;height:28px;font-size:12px}.koch-setup-row{flex-direction:column;align-items:stretch}.koch-setup-row .segmented,.koch-setup-row select{width:100%;margin-left:0}.koch-copy{letter-spacing:.1em;min-height:180px}.koch-run-actions,.koch-result-actions{flex-direction:column;align-items:stretch}.koch-run-actions .btn,.koch-result-actions .btn{width:100%}.koch-run-actions .btn-primary{margin-left:0}.koch-run-actions .kbd{display:none}.koch-result-head{text-align:center;flex-direction:column;align-items:center}.koch-result-stats{justify-content:center}.koch-lessons{max-height:360px}.levelup-actions{width:min(420px,100%)}.levelup-actions .btn{flex:1}.levelup-reveal{padding-bottom:max(20px, env(safe-area-inset-bottom))}}.koch-run-status.done{color:var(--mint)}.koch-result.leveled{box-shadow:var(--shadow-gold);border-color:#f6c4538c}.koch-result.leveled .koch-result-copy h2{background:linear-gradient(90deg, var(--gold), #ffe7a3);color:#0000;-webkit-background-clip:text;background-clip:text}.levelup-reveal.complete .levelup-to{background:linear-gradient(90deg,#ff9ad5,#ffd36e,#7dffcf,#8ab8ff,#d49bff,#ff9ad5) 0 0/200% 100%;color:#0000;-webkit-background-clip:text;background-clip:text}.koch-page{container:koch/inline-size}@container koch (width<=980px){.koch-hero{grid-template-columns:1fr}.koch-ladder{grid-template-columns:repeat(auto-fill,minmax(30px,1fr));display:grid}.koch-char{aspect-ratio:1;width:auto;height:auto}}.queue-steps{flex-wrap:wrap;align-items:center;gap:0;margin:14px 0 0;padding:0;list-style:none;display:flex}.queue-steps li{align-items:center;display:flex}.queue-steps li:not(:last-child):after{content:"→";color:var(--gold);font:800 14px/1 var(--font-display);margin:0 8px}.queue-step{border:1px solid var(--line);border-radius:var(--r-pill);background:var(--surface-2);min-height:36px;color:var(--text);font:800 13px/1 var(--font-display);align-items:center;gap:8px;padding:0 12px 0 10px;display:inline-flex}.queue-step svg{color:var(--gold)}.queue-score{border-radius:var(--r-lg);background:radial-gradient(circle at 80% 0%, var(--gold-soft), transparent 58%), var(--surface);min-width:168px;box-shadow:var(--shadow-gold);border:1px solid #f6c45352;align-content:start;justify-items:end;gap:2px;padding:14px 18px 16px;display:grid}.queue-score>span{color:var(--gold);font:700 11px/1.3 var(--font-mono);letter-spacing:.12em}.queue-score>b{font:800 clamp(40px, 5vw, 60px)/.95 var(--font-mono);letter-spacing:-.03em;color:var(--gold);text-shadow:0 0 28px #f6c45359}.queue-score .combo-badge{margin-top:6px}.queue-config{grid-template-columns:minmax(0,1.5fr) minmax(190px,.9fr) minmax(140px,.7fr) auto;align-items:end;gap:18px 22px;display:grid}.queue-field>span{color:var(--muted);font:700 11px/1.3 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;align-items:baseline;gap:8px;margin-bottom:10px;display:flex}.queue-field>span i{color:var(--gold);letter-spacing:.14em;font-style:normal}.depth-buttons{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;display:grid}.depth-buttons button{border:1.5px solid var(--line-2);border-radius:var(--r-pill);background:var(--surface-sunken);min-width:0;height:64px;color:var(--text-2);font:800 22px/1 var(--font-mono);transition:transform var(--t-fast) var(--ease-out), box-shadow var(--t-fast), background var(--t-fast), color var(--t-fast), border-color var(--t-fast);flex-direction:column;justify-content:center;align-items:center;gap:1px;padding:0 4px;display:flex;position:relative;box-shadow:0 3px #00000059}.depth-buttons button small{font:800 9px/1 var(--font-mono);letter-spacing:.08em}.depth-buttons button:hover:not(:disabled){color:var(--text);border-color:var(--line-3)}.depth-buttons button:active:not(:disabled){transform:translateY(2px);box-shadow:0 1px #00000059}.depth-buttons button:disabled{opacity:.5;box-shadow:none;transform:none}.depth-buttons button.goal:not(.active){background:var(--gold-soft);color:var(--gold);border-color:#f6c4538c}.depth-buttons button.goal:not(.active) small{color:var(--gold)}.depth-buttons button.active{background:linear-gradient(180deg, #ffd978, var(--gold) 55%, var(--gold-2));color:#2a1c00;box-shadow:0 3px 0 var(--gold-deep);border-color:#0000}.depth-buttons button.active small{color:var(--gold-deep)}.queue-reveal-toggle{border:1.5px solid var(--line-2);border-radius:var(--r-pill);background:var(--surface-sunken);width:100%;min-height:52px;color:var(--muted);font:800 14px/1 var(--font-display);transition:transform var(--t-fast) var(--ease-out), box-shadow var(--t-fast), background var(--t-fast), color var(--t-fast);padding:0 16px;box-shadow:0 3px #00000047}.queue-reveal-toggle:active{transform:translateY(2px);box-shadow:0 1px #00000047}.queue-reveal-toggle.on{background:var(--gold-soft);color:var(--gold);border-color:#f6c45373}.queue-start{justify-self:end}.queue-fail{border-radius:var(--r-lg);background:var(--coral-soft);color:var(--text);border:1.5px solid #ff6f7f73;align-items:center;gap:14px;margin-top:16px;padding:14px 16px;display:flex}.queue-fail-mark{width:40px;height:40px;color:var(--coral);background:#ff6f7f2e;border-radius:50%;flex:none;place-items:center;display:grid}.queue-fail strong{color:var(--coral);font-family:var(--font-display);font-size:16px;display:block}.queue-fail p{color:var(--text-2);margin:2px 0 0;font-size:13.5px}.queue-fail .btn{flex:none;margin-left:auto}.fifo-stage{border:1px solid var(--line-2);border-radius:var(--r-xl);background:radial-gradient(circle at 50% 42%, #f6c45314, transparent 46%), linear-gradient(180deg, var(--surface-2), var(--bg));box-shadow:var(--shadow-2);grid-template-columns:minmax(108px,.8fr) auto minmax(0,1.8fr) auto minmax(108px,.8fr);align-items:center;gap:clamp(8px,1.6vw,22px);margin-top:18px;padding:clamp(20px,3vw,36px);display:grid;position:relative}.fifo-column,.fifo-memory{text-align:center;min-width:0}.fifo-label{color:var(--text-2);font:800 13px/1.2 var(--font-display);align-items:baseline;gap:6px;display:inline-flex}.fifo-label small{color:var(--gold);font:700 10px/1 var(--font-mono);letter-spacing:.12em;text-transform:uppercase}.fifo-column strong{aspect-ratio:1;border:1.5px solid var(--line-2);background:var(--surface-sunken);width:min(132px,100%);height:auto;box-shadow:inset 0 0 0 8px var(--surface);font:800 clamp(28px, 3vw, 42px)/1 var(--font-mono);color:var(--text);border-radius:50%;place-items:center;margin:12px auto;display:grid;position:relative}.fifo-column strong em{z-index:1;font-style:normal;position:relative}.fifo-column small,.fifo-memory>small{color:var(--muted);font:700 11px/1.4 var(--font-display)}.fifo-column.incoming strong{color:var(--sky)}.fifo-column.incoming.is-live strong{box-shadow:0 0 0 6px var(--sky-soft), inset 0 0 0 8px var(--surface);border-color:#6cbcff8c}.fifo-column.incoming strong em.is-char{color:var(--text)}.fifo-arrow{color:var(--gold);font:800 26px/1 var(--font-display);pointer-events:none}.fifo-memory-head{justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:8px;display:flex}.fifo-memory-head em{color:var(--text);font:800 18px/1 var(--font-mono);font-style:normal}.fifo-memory-head em span{color:var(--muted);font-size:12px}.fifo-slots{border-radius:var(--r-md);background:var(--bg);grid-template-columns:repeat(8,minmax(0,1fr));gap:6px;margin-bottom:10px;padding:8px;display:grid;box-shadow:inset 0 2px 10px #00000059}.fifo-memory b{border:1.5px dashed var(--line);border-radius:var(--r-sm);background:var(--surface-sunken);min-height:72px;color:var(--faint);font:800 clamp(14px, 1.5vw, 24px)/1 var(--font-mono);place-items:center;display:grid;position:relative}.fifo-memory b.target-zone{background:var(--gold);border-color:#f6c4536b}@supports (color:color-mix(in lab, red, red)){.fifo-memory b.target-zone{background:color-mix(in srgb, var(--gold) 7%, var(--surface-sunken))}}.fifo-memory b.target-zone{color:#f6c45366}.fifo-memory b.target-zone.filled{border-style:solid;border-color:var(--gold);color:var(--gold);background:var(--gold-soft);box-shadow:0 8px 18px #f6c4531f}.fifo-memory b.cap-zone{opacity:.42}.fifo-memory b.cap-zone.filled{opacity:1;color:var(--coral);background:var(--coral-soft);border-style:solid;border-color:#ff6f7f8c}.slot-next{color:var(--gold);font:800 8px/1 var(--font-mono);letter-spacing:.04em;font-style:normal;position:absolute;top:4px;right:4px}.fifo-memory b.cap-zone .slot-next{color:var(--coral)}.fifo-memory b.exit-fx{z-index:2;pointer-events:none;opacity:1}.fifo-memory b.exit-fx.ok{border-style:solid;border-color:var(--mint);background:var(--mint);color:#04261a;animation:queue-fly-ok .42s var(--ease-out) forwards;box-shadow:0 0 22px #43e0a673}.fifo-memory b.exit-fx.ng{border-style:solid;border-color:var(--coral);color:#ffd7dc;background:#4a2030;box-shadow:0 0 22px #ff6f7f66}@keyframes queue-fly-ok{0%{opacity:1;transform:translate(0)scale(1)}to{opacity:0;transform:translate(68px,-16px)scale(.28)rotate(10deg)}}.fifo-column.output strong{border-radius:var(--r-lg);overflow:visible}.fifo-column.output.ready strong{border-color:var(--gold);color:var(--gold);box-shadow:var(--shadow-gold), inset 0 0 0 8px var(--surface)}.fifo-column.output.hit strong,.fifo-column.output strong.flash-hit{border-color:var(--mint);color:var(--mint);background:var(--mint-soft);box-shadow:0 0 0 6px var(--mint-soft), inset 0 0 0 8px var(--surface)}.fifo-column.output.miss strong,.fifo-column.output strong.flash-miss{border-color:var(--coral);color:#ffd7dc;box-shadow:0 0 0 6px var(--coral-soft), inset 0 0 0 8px #2a121c;background:#3a1824}.queue-choice-pad{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;width:min(100%,440px);margin:22px auto 8px;display:grid}.queue-pad-spacer{display:block}.queue-choice{--edge:#0000006b;border:1.5px solid var(--line-2);border-radius:var(--r-lg);background:linear-gradient(180deg, var(--surface-3), var(--surface));min-height:92px;color:var(--text);box-shadow:0 5px 0 var(--edge);touch-action:manipulation;transition:transform var(--t-fast) var(--ease-out), box-shadow var(--t-fast), filter var(--t-fast), background var(--t-fast);place-content:center;gap:2px;display:grid}.queue-choice small{color:var(--muted);font:800 13px/1 var(--font-display)}.queue-choice b{font:800 32px/1 var(--font-mono)}.queue-choice:hover:not(:disabled){filter:brightness(1.08)}.queue-choice:active:not(:disabled){box-shadow:0 1px 0 var(--edge);transform:translateY(4px)}.queue-choice:disabled,.queue-choice.disabled:disabled{opacity:.4;box-shadow:none;transform:translateY(4px)}.queue-choice.flash-hit,.queue-choice.flash-hit:disabled{opacity:1;background:linear-gradient(180deg, #6ff0bf, var(--mint) 55%, var(--mint-2));color:#032417;border-color:#0000;transform:none;box-shadow:0 5px #137552}.queue-choice.flash-hit small{color:#0c4a34}.queue-choice.flash-miss,.queue-choice.flash-miss:disabled{opacity:1;color:#ffd7dc;background:#4a2030;border-color:#ff6f7fb3;transform:none;box-shadow:0 5px #6e2434,0 0 22px #ff6f7f47}.queue-choice.flash-miss small{color:#ffb3bd}.queue-choice-hint{min-height:1.5em;color:var(--muted);font:700 13px/1.5 var(--font-display);text-align:center;margin:0 0 12px}.queue-choice-hint.note-miss{color:var(--coral)}.queue-choice-hint.note-out{color:var(--gold)}.timing-verdict{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;display:flex}.timing-verdict span{color:var(--muted);font:700 13px/1.3 var(--font-display)}.timing-verdict b{font:800 15px/1 var(--font-mono)}.timing-verdict.ok{background:var(--mint-soft);color:var(--mint);border-color:#43e0a659}.timing-verdict.ok span{color:var(--mint)}.timing-verdict.early.ok{background:var(--gold-soft);color:var(--gold);border-color:#f6c45366}.timing-verdict.early.ok span,.timing-verdict.early.ok b{color:var(--gold)}.timing-verdict.wrong{background:var(--coral-soft);color:var(--coral);border-color:#ff6f7f66}.timing-verdict.wrong span{color:#ffb3bd}.queue-metrics{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-top:16px;display:grid}.queue-metrics .metric strong{font-size:clamp(20px,2vw,28px)}@media (max-width:1180px){.queue-config{grid-template-columns:1fr 1fr}.queue-field-depth,.queue-start{grid-column:1/-1}.queue-start{justify-self:stretch;width:100%}.queue-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.fifo-memory b{min-height:60px}}@media (max-width:760px){.queue-score{justify-items:start;width:100%}.queue-config{grid-template-columns:1fr}.queue-field-depth{grid-column:auto}.depth-buttons button{height:56px;font-size:18px}.queue-fail{text-align:left;flex-direction:column;align-items:stretch}.queue-fail .btn{width:100%;margin-left:0}.fifo-stage{grid-template-columns:1fr;justify-items:center;gap:8px;padding:18px 12px 16px}.fifo-arrow{transform:rotate(90deg)}.fifo-memory{width:100%}.fifo-column strong{width:104px;margin:8px auto}.fifo-memory b{min-height:48px}.slot-next{display:none}.queue-choice{min-height:74px}.queue-choice b{font-size:26px}.queue-metrics{grid-template-columns:1fr 1fr}.timing-verdict{flex-direction:column;align-items:flex-start}@keyframes queue-fly-ok{0%{opacity:1;transform:translate(0)scale(1)}to{opacity:0;transform:translateY(52px)scale(.3)}}}.analysis-filters{justify-items:end;gap:8px;min-width:0;max-width:100%;display:grid}.analysis-kpis{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px;display:grid}.analysis-grid{grid-template-columns:minmax(0,1.45fr) minmax(280px,.8fr);align-items:start;gap:18px;display:grid}.matrix-panel,.weak-panel{min-width:0;padding:clamp(16px,2vw,24px)}.matrix-panel .panel-head,.weak-panel .panel-head{align-items:flex-start}.matrix-panel .panel-head h2,.weak-panel .panel-head h2{margin:2px 0 4px;font-size:20px}.matrix-panel .panel-head small,.weak-panel .panel-head small{color:var(--muted);font-size:12.5px;line-height:1.45;display:block}.matrix-scroll{border-radius:var(--r-sm);max-height:520px;overflow:auto}.matrix{gap:6px;min-width:max-content;display:grid}.matrix-corner,.matrix>b{min-width:40px;min-height:36px;color:var(--muted);font:700 12px/1 var(--font-mono);place-items:center;display:grid}.matrix-col{z-index:2;background:var(--surface);position:sticky;top:0}.matrix-row{z-index:2;background:var(--surface);position:sticky;left:0}.matrix-corner{z-index:3;background:var(--surface);position:sticky;top:0;left:0}.matrix>i{border-radius:var(--r-xs);background:var(--coral);place-items:center;min-width:44px;min-height:44px;display:grid}@supports (color:color-mix(in lab, red, red)){.matrix>i{background:color-mix(in srgb, var(--coral) calc(var(--heat,0) * 100%), var(--surface-2))}}.matrix>i{color:var(--faint);font:700 13px/1 var(--font-mono);font-style:normal}.matrix>i.hot{color:var(--text);box-shadow:inset 0 0 0 1px var(--coral)}@supports (color:color-mix(in lab, red, red)){.matrix>i.hot{box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--coral) calc(var(--heat,0) * 50%), transparent)}}.matrix-note{color:var(--muted);margin:10px 0 0;font-size:12px}.weak-list{gap:10px;margin:0 0 16px;padding:0;list-style:none;display:grid}.weak-card{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-sunken);grid-template-columns:auto minmax(0,1fr);grid-template-areas:"rank pair""rank counts";align-items:center;gap:2px 12px;padding:12px 14px;display:grid}.weak-rank{background:var(--surface-3);width:36px;height:36px;color:var(--muted);font:800 14px/1 var(--font-mono);border-radius:50%;grid-area:rank;place-items:center;display:grid}.weak-rank.gold{background:linear-gradient(180deg, #ffe7a3, var(--gold));color:#3a2700}.weak-rank.silver{color:#2a3148;background:linear-gradient(#f4f6ff,#b7bdd6)}.weak-rank.bronze{color:#3a220c;background:linear-gradient(#f0c39a,#c4844a)}.weak-pair{min-width:0;font:800 clamp(18px, 2vw, 26px)/1.15 var(--font-mono);letter-spacing:.02em;grid-area:pair}.weak-pair i{color:var(--gold);margin:0 8px;font-style:normal}.weak-counts{grid-area:counts;min-width:0}.weak-counts b{color:var(--coral);font-family:var(--font-mono);margin-right:8px}.weak-counts small{color:var(--muted);font:700 11px/1.45 var(--font-mono)}.muted-copy{min-height:160px;color:var(--muted);text-align:center;place-content:center;margin:0 0 16px;display:grid}.insight-band{border:1px solid var(--gold);justify-content:space-between;align-items:center;gap:18px;margin-top:18px;padding:18px 20px;display:flex}@supports (color:color-mix(in lab, red, red)){.insight-band{border:1px solid color-mix(in srgb, var(--gold) 35%, var(--line))}}.insight-band{border-radius:var(--r-lg);background:linear-gradient(90deg, var(--gold-soft), transparent 46%), var(--surface);box-shadow:var(--shadow-1)}.insight-copy{min-width:0}.insight-copy p:last-child{color:var(--text);font-family:var(--font-display);margin:6px 0 0;font-size:16px;font-weight:700;line-height:1.5}@media (max-width:1180px){.analysis-page .page-title{flex-direction:column;align-items:stretch}.analysis-filters{justify-items:start}.analysis-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:980px){.analysis-grid{grid-template-columns:1fr}}@media (max-width:760px){.analysis-filters{justify-items:stretch}.analysis-filters .segmented{width:100%}.weak-pair{font-size:18px}.weak-counts small{margin-top:2px;display:block}.insight-band{flex-direction:column;align-items:stretch}.insight-band .btn{width:100%}}.exam-page{--paper:#f6f1e4;--paper-2:#efe6d2;--ink:#1a1a1a;--mincho:"Hiragino Mincho ProN", "Yu Mincho", "YuMincho", "Noto Serif JP", serif;--paper-shadow:0 1px 0 #ffffff80 inset, 0 18px 42px #03051473;color:var(--text);background:radial-gradient(900px 420px at 70% -8%,#f6c45312,#0000 60%)}.exam-setup,.exam-terminal,.exam-result{width:100%;max-width:1040px;margin-inline:auto}.exam-terminal.listen-mode,.exam-result.has-gaku{max-width:1100px}.exam-setup{gap:20px;display:grid}.exam-brief-chips{flex-wrap:wrap;justify-content:flex-end;align-self:flex-end;gap:8px;display:flex}.preset-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:12px;display:grid}.preset-card{--preset:var(--gold);border:1.5px solid var(--line-2);border-radius:var(--r-lg);background:linear-gradient(180deg, var(--surface), var(--surface));flex-direction:column;align-items:flex-start;gap:6px;min-height:176px;padding:18px 18px 16px;display:flex;position:relative}@supports (color:color-mix(in lab, red, red)){.preset-card{background:linear-gradient(180deg, var(--surface), color-mix(in srgb, var(--surface) 72%, var(--bg)))}}.preset-card{box-shadow:var(--shadow-1);color:var(--text);text-align:left;transition:border-color var(--t-fast), box-shadow var(--t-fast), transform var(--t-fast) var(--ease-out)}.preset-card.wabun{--preset:var(--family-wabun)}.preset-card.codes{--preset:var(--family-kigo)}.preset-card.plain{--preset:var(--family-latin)}.preset-card:before{content:"";background:var(--preset);border-radius:0 0 4px 4px;width:36px;height:3px;position:absolute;top:0;left:18px}.preset-card:hover{border-color:var(--line-3);transform:translateY(-2px)}.preset-card.active{border-color:var(--gold);background:linear-gradient(180deg, var(--gold), var(--surface))}@supports (color:color-mix(in lab, red, red)){.preset-card.active{background:linear-gradient(180deg, color-mix(in srgb, var(--gold) 12%, var(--surface)), var(--surface))}}.preset-card.active{box-shadow:var(--shadow-gold)}.preset-top{width:100%;color:var(--muted);font:700 11px/1 var(--font-mono);letter-spacing:.14em;justify-content:space-between;align-items:center;display:flex}.preset-card.active .preset-top{color:var(--gold)}.preset-card strong{font:800 clamp(22px, 2vw, 28px)/1.15 var(--font-display);margin-top:10px}.preset-stats{flex-wrap:wrap;gap:10px 16px;margin-top:auto;padding-top:16px;display:flex}.preset-stats em{font:800 18px/1 var(--font-mono);color:var(--text);font-style:normal}.preset-stats small{color:var(--muted);font:700 10px/1 var(--font-display);letter-spacing:.04em;margin-top:5px;display:block}.exam-switches{gap:10px;display:grid}.exam-switch{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);cursor:pointer;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;display:flex}.exam-switch-copy{gap:2px;min-width:0;display:grid}.exam-switch-copy strong{font:800 14px/1.3 var(--font-display)}.exam-switch-copy small{color:var(--muted);font:700 12px/1.4 var(--font-display)}.exam-switch-ui{flex:none;width:48px;height:28px;position:relative}.exam-switch-ui input[type=checkbox]{z-index:1;opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.exam-switch-ui i{border:1px solid var(--line-2);border-radius:var(--r-pill);background:var(--surface-sunken);pointer-events:none;width:48px;height:28px;transition:background var(--t-fast), border-color var(--t-fast);display:block}.exam-switch-ui i:after{content:"";background:var(--muted);width:20px;height:20px;transition:transform var(--t-med) var(--ease-out), background var(--t-fast);border-radius:50%;position:absolute;top:3px;left:3px}.exam-switch.on .exam-switch-ui i{background:var(--gold-soft);border-color:#f6c4538c}.exam-switch.on .exam-switch-ui i:after{background:var(--gold);transform:translate(22px)}.exam-setup-split{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:start;gap:16px;display:grid}.exam-score-note p:not(.section-kicker){color:var(--text-2);margin:10px 0 0}.exam-score-note ul{color:var(--text-2);margin:12px 0 0;padding-left:1.2em}.exam-score-note li{margin:4px 0}.exam-speed-bar .panel-head{flex-wrap:wrap}.exam-speed-bar .panel-head h2{font-size:16px}.exam-start{width:100%}.exam-status{top:var(--header);z-index:15;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--bg-2);gap:12px;margin-bottom:18px;padding:12px 14px;display:grid;position:sticky}@supports (color:color-mix(in lab, red, red)){.exam-status{background:color-mix(in srgb, var(--bg-2) 90%, transparent)}}.exam-status{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:var(--shadow-2)}.exam-status-row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"meta clock""transport transport";align-items:center;gap:10px 16px;display:grid}.exam-status-meta{flex-wrap:wrap;grid-area:meta;align-items:center;gap:8px;min-width:0;display:flex}.exam-status-detail{color:var(--text-2);font:700 13px/1.45 var(--font-display)}.exam-clock{font:800 clamp(32px, 4vw, 44px)/1 var(--font-mono);letter-spacing:.04em;font-variant-numeric:tabular-nums;color:var(--text);grid-area:clock;justify-self:end}.exam-clock.is-urgent{color:var(--coral)}.exam-transport{flex-wrap:wrap;grid-area:transport;justify-content:flex-end;gap:8px;display:flex}.exam-warning{z-index:14;pointer-events:none;background:radial-gradient(#3c060ecc,#030514e6 70%);grid-template-rows:auto 1fr auto;align-items:center;animation:.35s ease-out warn-in;display:grid;position:fixed;inset:0}.exam-warning:before{content:"";animation:1.1s ease-in-out infinite alternate warn-pulse;position:absolute;inset:0;box-shadow:inset 0 0 140px #ff30308c}.exam-warning-band{background:repeating-linear-gradient(-45deg,#f5c400 0 16px,#15151a 16px 32px);padding:7px 0;position:relative;overflow:hidden}.exam-warning-band.top{margin-top:calc(var(--header) + 150px)}.exam-warning-band.bottom{margin-bottom:72px}.exam-warning-band span{color:#ff4242;width:max-content;font:900 22px/1 var(--font-display);letter-spacing:.32em;white-space:nowrap;text-shadow:0 0 12px #ff3232b3;background:#0c0c10eb;padding:4px 0;animation:12s linear infinite warn-marquee;display:block}.exam-warning-band.bottom span{animation-direction:reverse}.exam-warning-core{text-align:center;justify-items:center;gap:14px;padding:24px 16px;display:grid;position:relative}.exam-warning-kicker{color:var(--gold);font:800 13px/1 var(--font-display);letter-spacing:.24em;align-items:center;gap:8px;margin:0;display:inline-flex}.exam-warning-call{color:#fff;font:900 clamp(44px, 9vw, 88px)/1.1 var(--mincho);letter-spacing:.14em;margin:0}.exam-warning-call i{font-style:normal;transition:color .15s,transform .15s,text-shadow .15s;display:inline-block}.exam-warning-call i.listen-wait{color:#ffffff38;background:0 0}.exam-warning-call i.listen-heard{color:#fff;text-shadow:0 0 22px #ff4646d9;background:0 0}.exam-warning-call i.listen-now{box-shadow:none;color:#ff4b4b;text-shadow:0 0 26px #ff3c3cf2;background:0 0;transform:scale(1.14)}.exam-warning-sub{color:#ffffffb3;font:700 14px/1.4 var(--font-display);letter-spacing:.2em;margin:0}.exam-warning-count{justify-items:center;gap:4px;animation:.9s cubic-bezier(.2,.9,.3,1.2) both warn-count;display:grid}.exam-warning-count strong{color:var(--gold);font:900 clamp(72px, 14vw, 132px)/1 var(--font-display);text-shadow:0 0 32px #ffc400a6}.exam-warning-count span{color:#fffc;font:800 14px/1 var(--font-display);letter-spacing:.3em}.exam-warning-paused{color:#fff;font:800 13px/1 var(--font-display);letter-spacing:.2em;border:1px solid #fff6;border-radius:999px;margin:0;padding:6px 14px}.exam-warning.is-paused,.exam-warning.is-paused *,.exam-warning.is-paused:before{animation-play-state:paused}@keyframes warn-in{0%{opacity:0}to{opacity:1}}@keyframes warn-pulse{0%{opacity:.45}to{opacity:1}}@keyframes warn-marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes warn-count{0%{opacity:0;transform:scale(1.9)}35%{opacity:1;transform:scale(1)}to{opacity:.9;transform:scale(.94)}}@media (prefers-reduced-motion:reduce){.exam-warning:before,.exam-warning-band span,.exam-warning-count{animation:none}}.exam-listen-progress{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px 12px;display:grid}.exam-listen-progress>span{color:var(--sky);font:700 12px/1 var(--font-mono);white-space:nowrap}.exam-copy{background:var(--paper);color:var(--ink);box-shadow:var(--paper-shadow);border-radius:2px}.exam-copy-head{border-bottom:2px solid var(--ink);justify-content:space-between;align-items:baseline;gap:12px;padding:12px 22px;display:flex}.exam-copy-head b{font:800 16px/1.3 var(--mincho)}.exam-copy-head span{color:#5e584c;font:700 11px/1.3 var(--font-mono);letter-spacing:.06em}.exam-copy textarea{width:100%;min-height:440px;color:var(--ink);resize:vertical;text-transform:uppercase;font:700 18px/1.9 var(--font-mono);box-shadow:none;background:0 0;border:0;border-radius:0;margin:0;padding:22px 24px 32px;display:block}.exam-copy.wabun textarea{text-transform:none;letter-spacing:.08em;font-family:var(--mincho)}.exam-copy textarea::placeholder{color:#9a917f;text-transform:none}.exam-copy textarea:focus{box-shadow:inset 0 0 0 3px var(--gold);outline:none}.exam-listen-panel{padding-bottom:6px;overflow-x:auto}.gaku-stack{gap:28px;display:grid}.gaku-sheet{background:var(--paper);color:var(--ink);box-shadow:var(--paper-shadow);font-family:var(--font-mono), ui-monospace, monospace;border:1px solid #e4dcc8;border-radius:2px;padding:22px 26px 28px;position:relative}.gaku-sheet.is-active{box-shadow:var(--paper-shadow), 0 0 0 3px var(--gold)}.gaku-title{border-bottom:2px solid var(--ink);text-align:center;letter-spacing:.12em;margin:4px 0 18px;padding-bottom:10px;font:900 28px/1 Georgia,Times New Roman,serif}.gaku-page-no{font:800 12px var(--font-mono);position:absolute;top:14px;right:18px}.gaku-ruled{font:700 15px/1.85 var(--font-mono);letter-spacing:.04em;word-break:break-word}.gaku-text{min-height:180px;font:600 15px/1.85 var(--font-mono);letter-spacing:.04em}.gaku-sheet.oubun{--form-ink:#2b2a27;--form-rule:#8f8a80;--form-serif:"Times New Roman", Times, "Hiragino Mincho ProN", serif;--form-line:40px;min-width:680px;color:var(--form-ink);font-family:var(--form-serif);background:#fbf8f0;padding:34px 40px 30px}.gaku-sheet.oubun .gaku-punch{background:#d6cfbf;border-radius:50%;width:14px;height:14px;position:absolute;top:12px;box-shadow:inset 0 1px 2px #00000059,0 1px #ffffffb3}.gaku-sheet.oubun .gaku-punch.left{left:calc(50% - 46px)}.gaku-sheet.oubun .gaku-punch.right{left:calc(50% + 32px)}.gaku-sheet.oubun .gaku-page-no{font:400 20px var(--form-serif);top:10px;right:30px}.gaku-sheet.oubun .gaku-title{font:400 30px/1 var(--form-serif);letter-spacing:.32em;text-indent:.32em;border:0;margin:14px 0 6px;padding:0}.gaku-sheet.oubun .gaku-call{min-height:30px;padding:4px 0 2px 2px}.gaku-mark{color:var(--form-ink,#2b2a27);font:400 15px/1.5 var(--form-serif,serif);letter-spacing:.04em;white-space:nowrap;border-radius:3px;padding:0 1px;transition:background-color .2s,color .2s;display:inline-block}.gaku-mark.placeholder{visibility:hidden}.gaku-mark.listen-wait{opacity:.55;background:0 0}.gaku-sheet.oubun .gaku-row{border-top:4px double var(--form-rule);grid-template-columns:140px minmax(0,1fr);align-items:end;column-gap:8px;padding-top:8px;display:grid}.gaku-sheet.oubun .gaku-row+.gaku-row{margin-top:18px}.gaku-sheet.oubun .gaku-row.text{align-items:start}.gaku-sheet.oubun .gaku-label{font:400 15px/1.2 var(--form-serif);flex-direction:column;gap:4px;display:flex}.gaku-sheet.oubun .gaku-label .gaku-mark{align-self:flex-start}.gaku-sheet.oubun i{font-style:normal}.gaku-sheet.oubun .gaku-line{min-height:var(--form-line);border-bottom:1px solid var(--form-rule);font:400 19px/24px var(--form-serif);letter-spacing:.06em;word-spacing:.3em;overflow-wrap:anywhere;padding:12px 4px 3px}.gaku-sheet.oubun .gaku-line.flow{line-height:var(--form-line);background:repeating-linear-gradient(transparent 0 calc(var(--form-line) - 1px), var(--form-rule) calc(var(--form-line) - 1px) var(--form-line));border-bottom:0;padding-top:8px}.gaku-sheet.oubun .gaku-line.groups{letter-spacing:.04em;word-spacing:normal;grid-template-columns:repeat(8,minmax(0,1fr));align-items:end;column-gap:6px;font-size:17px;display:grid}.gaku-sheet.oubun .gaku-line.groups .gaku-mark{justify-self:start;font-size:14px}.gaku-sheet.oubun .gaku-line.signature{text-align:right}.gaku-sheet.oubun .gaku-text{min-height:0;font:inherit;letter-spacing:normal;grid-column:1/-1;margin-top:4px}.gaku-sheet.oubun .gaku-group{flex:none}.gaku-ruled i{font-style:normal}.gaku-sheet.wabun{--wg-red:#e3312d;--wg-green:#17994a;--wg-paper:#fffefb;--wg-font:"Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic", "Noto Sans JP", sans-serif;--wg-cell:54px;--wg-info:84px;--wg-notes:60px;--wg-addr:56px;--wg-side:58px;--wg-grid:calc(6 * var(--wg-cell) + 14px);--wg-grid-h:calc(10 * var(--wg-cell) + 20px);background:var(--wg-paper);color:#1d1d1d;width:max-content;font-family:var(--wg-font);justify-self:start;margin-inline:auto;padding:26px 72px 30px 26px}.gaku-sheet.wabun i{font-style:normal}.gaku-sheet.wabun .wg-title{color:var(--wg-red);justify-items:center;gap:14px;margin-bottom:44px;display:grid}.gaku-sheet.wabun .wg-title b{border:2px solid var(--wg-red);font:400 20px/1.2 var(--wg-font);letter-spacing:.32em;text-indent:.32em;padding:6px 22px}.gaku-sheet.wabun .wg-title span{font:400 20px/1 var(--wg-font);letter-spacing:.42em;text-indent:.42em}.gaku-sheet.wabun .wg-sheet-no{color:var(--wg-red);font:600 12px var(--wg-font);letter-spacing:.08em;position:absolute;top:14px;left:26px}.gaku-sheet.wabun .wg-label{color:var(--wg-red);font:400 12px/1.35 var(--wg-font);letter-spacing:.3em;text-indent:.3em;text-align:center;white-space:nowrap}.gaku-sheet.wabun .wg-v{writing-mode:vertical-rl;text-orientation:upright;font:400 21px/1.15 var(--wg-font);letter-spacing:.1em}.gaku-sheet.wabun .wg-note{writing-mode:vertical-rl;text-orientation:upright;color:var(--wg-green);font:700 17px/1.1 var(--wg-font)}.gaku-sheet.wabun .wg-note .listen-wait{color:var(--wg-green);opacity:.55}.wg-mark{color:var(--wg-green,#17994a);border-radius:5px;flex-direction:column;align-items:center;gap:7px;padding:4px 3px;transition:background-color .2s,opacity .2s;display:inline-flex}.wg-mark b{flex-direction:column;align-items:center;gap:3px;display:flex}.wg-mark .dit{background:currentColor;border-radius:50%;width:4px;height:4px}.wg-mark .dah{background:currentColor;border-radius:1px;width:2px;height:13px}.gaku-sheet.wabun .wg-mark.listen-wait{color:var(--wg-green);opacity:.55}.gaku-sheet.wabun .wg-mark.listen-heard{color:var(--wg-green);background:#17994a1f}.gaku-sheet.wabun .wg-mark.listen-now{color:#042318}.gaku-sheet.wabun .wg-mark.muted{opacity:.3}.gaku-sheet.wabun .wg-margin{align-items:flex-start;gap:4px;display:flex;position:absolute;top:26px;right:16px}.gaku-sheet.wabun .wg-margin>.wg-mark:first-child{margin-top:196px}.gaku-sheet.wabun .wg-top{grid-template-columns:calc(var(--wg-info) + var(--wg-notes) + var(--wg-grid) / 2) calc(var(--wg-grid) / 2 + 4 * var(--wg-addr) + var(--wg-side));align-items:start;display:grid}.wg-score{border-collapse:collapse;width:200px;color:var(--wg-red);font:400 13px/1 var(--wg-font)}.wg-score th,.wg-score td{border:1.5px solid var(--wg-red);height:27px}.wg-score th{text-align:left;width:30px;padding-left:6px;font-weight:400}.wg-score th[colspan]{text-align:center;padding-left:0}.wg-score td{width:85px}.gaku-sheet.wabun .wg-head{border:1.5px solid var(--wg-red);border-bottom:0;grid-template-columns:85fr 85fr 113fr 85fr 85fr;height:216px;display:grid}.gaku-sheet.wabun .wg-field{border-left:1.5px solid var(--wg-red);flex-direction:column;align-items:center;gap:8px;min-width:0;padding-top:6px;display:flex}.gaku-sheet.wabun .wg-field:first-child{border-left:0}.gaku-sheet.wabun .wg-vals{align-items:flex-start;gap:4px;display:flex}.gaku-sheet.wabun .wg-time{flex-direction:column;align-items:center;gap:2px;display:flex}.gaku-sheet.wabun .wg-unit{color:var(--wg-red);font:400 12px/1 var(--wg-font);margin:3px 0;position:relative}.gaku-sheet.wabun .wg-unit-mark{color:var(--wg-green);align-items:center;gap:1px;display:flex;position:absolute;top:-30px;left:calc(100% + 2px)}.gaku-sheet.wabun .wg-unit-mark em{font:700 12px/1 var(--wg-font);font-style:normal}.gaku-sheet.wabun .wg-main{grid-template-columns:var(--wg-info) var(--wg-notes) var(--wg-grid) calc(4 * var(--wg-addr)) var(--wg-side);align-items:stretch;display:grid}.gaku-sheet.wabun .wg-info{height:calc(var(--wg-grid-h) + 28px);border:1.5px solid var(--wg-red);grid-template-rows:82px 110px 165px 1fr;display:grid}.gaku-sheet.wabun .wg-info>div{border-top:1.5px solid var(--wg-red);color:var(--wg-red);font:400 12px/1 var(--wg-font);letter-spacing:.2em;text-align:center;flex-direction:column;justify-content:space-between;padding:8px 4px;display:flex}.gaku-sheet.wabun .wg-info>div:first-child{border-top:0}.gaku-sheet.wabun .wg-info>div:first-child,.gaku-sheet.wabun .wg-info>div:nth-child(3),.gaku-sheet.wabun .wg-info>div:nth-child(4){justify-content:flex-start}.gaku-sheet.wabun .wg-notes{justify-content:center;align-items:flex-end;gap:6px;padding-bottom:8px;display:flex}.gaku-sheet.wabun .wg-end{flex-direction:column;align-items:center;gap:6px;transition:opacity .2s;display:flex}.gaku-sheet.wabun .wg-end em{writing-mode:vertical-rl;color:var(--wg-green);font:700 15px/1 var(--wg-font);letter-spacing:.08em;font-style:normal}.gaku-sheet.wabun .wg-end.muted em{opacity:.35}.gaku-wabun-grid{border:1.5px solid var(--wg-red,#e3312d);background:var(--wg-red,#e3312d);align-self:start;gap:1.5px;display:grid}.gaku-wabun-gutter{background:var(--wg-paper,#fffefb);margin:0;padding:0;display:block}.gaku-cell{background:var(--wg-paper,#fffefb);color:#1d1d1d;font:400 23px/1 var(--wg-font,sans-serif);place-items:center;font-style:normal;display:grid}.gaku-sheet.wabun .wg-address{height:var(--wg-grid-h);border-block:1.5px solid var(--wg-red);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.gaku-sheet.wabun .wg-addr-col{border-right:1.5px dotted var(--wg-red);flex-direction:column;align-items:center;gap:6px;padding-top:12px;display:flex;position:relative}.gaku-sheet.wabun .wg-addr-col.first{border-right:1.5px solid var(--wg-red);padding-top:6px}.gaku-sheet.wabun .wg-addr-col.first .wg-label{letter-spacing:.05em;text-indent:0}.gaku-sheet.wabun .wg-addr-col .wg-v{letter-spacing:.14em;font-size:21px}.gaku-sheet.wabun .wg-addr-mark{position:absolute;top:26px}.gaku-sheet.wabun .wg-addr-mark.right{right:-1px}.gaku-sheet.wabun .wg-addr-mark.left{top:8px;left:2px}.gaku-sheet.wabun .wg-side{height:var(--wg-grid-h);border:1.5px solid var(--wg-red);border-left:0;grid-template-rows:48% 1fr;display:grid}.gaku-sheet.wabun .wg-side>div{text-align:center;padding-top:8px}.gaku-sheet.wabun .wg-side>div+div{border-top:1.5px solid var(--wg-red)}.gaku-sheet.wabun .wg-side .wg-label{letter-spacing:.05em;text-indent:0;line-height:1.8}.gaku-sheet.wabun.continuation .wg-top{opacity:.9}.gaku-sheet.plain .gaku-ruled{min-height:280px;padding-top:8px}.listen-heard{color:#123528;background:#d4f3e6;border-radius:2px}.listen-now{color:#042318;box-shadow:0 0 0 2px var(--ink);background:#43e0a6;border-radius:2px}.listen-wait{color:#8d8778}.exam-result{gap:16px;margin-top:8px;display:grid}.exam-result-inline{border-top:1px solid var(--line);margin-top:20px;padding-top:20px}.exam-copy.is-review textarea{background:var(--paper)}@supports (color:color-mix(in lab, red, red)){.exam-copy.is-review textarea{background:color-mix(in srgb, var(--paper) 92%, var(--mint))}}.exam-copy.is-review textarea{cursor:default}.exam-result-actions{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.exam-result-gaku{gap:10px;display:grid}.exam-result-gaku-title{font:800 20px/1.3 var(--font-display);margin:0}.exam-result-gaku .exam-listen-panel{overflow-x:auto}.exam-result-hero{align-items:center;gap:28px;display:flex}.exam-result-hero h2{margin:4px 0 10px;font-size:clamp(26px,3vw,36px)}.exam-encourage{max-width:42ch;color:var(--text-2);margin:0}.exam-result-meta{color:var(--muted);font:700 12px/1.4 var(--font-mono);margin:10px 0 0}.exam-ring .progress-ring-label{gap:4px}.exam-ring .progress-ring-label strong{font:800 32px/1 var(--font-mono);color:var(--text)}.exam-ring .progress-ring-label small{color:var(--muted);font:700 10px/1 var(--font-mono);letter-spacing:.12em}.exam-listen-badge{background:var(--sky-soft);width:96px;height:96px;color:var(--sky);border-radius:50%;flex:none;place-items:center;display:grid}.exam-score-breakdown{flex-wrap:wrap;gap:8px;display:flex}.exam-sheets{gap:18px;display:grid}.exam-ledger{border-collapse:collapse;background:var(--paper);width:100%;color:var(--ink);box-shadow:var(--paper-shadow)}.exam-ledger th,.exam-ledger td{border:1px solid var(--ink);vertical-align:top;padding:12px 14px}.exam-ledger th{background:var(--paper-2);width:18%;font:800 12px/1.4 var(--font-display);letter-spacing:.04em;text-align:left;white-space:nowrap}.exam-ledger td{font:700 15px/1.55 var(--mincho)}.exam-ledger .exam-sheet-title{background:var(--ink);color:var(--paper);font:800 13px/1.4 var(--font-display);letter-spacing:.08em}.exam-ledger-body th{vertical-align:top}.exam-ledger-body pre{color:var(--ink);font:700 15px/1.7 var(--mincho);white-space:pre-wrap;word-break:break-word;margin:0}.exam-align{background:var(--paper);color:var(--ink);box-shadow:var(--paper-shadow);padding:16px 16px 18px}.exam-align .section-kicker{color:var(--gold-deep)}.exam-legend{font:700 13px/1 var(--font-display);flex-wrap:wrap;gap:8px 16px;margin:10px 0 0;padding:0;list-style:none;display:flex}.exam-legend li{align-items:center;gap:6px;display:inline-flex}.exam-legend i{border-style:solid;border-width:1px;border-radius:3px;width:14px;height:14px}.exam-align-caption{color:#6d675c;font:700 11px/1.4 var(--font-mono);letter-spacing:.04em;margin:8px 0 10px}.exam-align-row{flex-wrap:wrap;gap:2px;margin-top:6px;display:flex}.exam-align-row i{min-width:1.15em;font:800 13px/1.25 var(--mincho);border-style:solid;border-width:1px;border-radius:3px;padding:2px 3px;font-style:normal}.op-match{color:#0e4d36;background:#d5f5e8;border-color:#1c9a6a}.op-sub{color:#7a1c2a;background:#ffd5db;border-color:#d64558}.op-del{color:#4a453c;background:#e4dfd4;border-color:#8d8678}.op-ins{color:#6a4a0c;background:#ffe6b5;border-color:#c8881e}@media (min-width:900px){.exam-status-row{grid-template-columns:minmax(0,1fr) auto auto;grid-template-areas:"meta clock transport"}}@media (max-width:900px){.exam-setup-split{grid-template-columns:1fr}}.exam-clock-done{color:var(--mint);letter-spacing:.12em}.exam-mode-chip{cursor:pointer;border:0;align-items:center;gap:6px;display:inline-flex}.exam-mode-chip small{font:800 10px/1.2 var(--font-display);letter-spacing:.06em;background:#ffffff2e;border-radius:999px;padding:1px 6px}.exam-mode-chip:hover{filter:brightness(1.08)}.exam-mode-chip:focus-visible{outline:2px solid var(--sky);outline-offset:2px}.exam-listen-review-bar{border-radius:var(--r-md);background:var(--mint);padding:8px 12px}@supports (color:color-mix(in lab, red, red)){.exam-listen-review-bar{background:color-mix(in srgb, var(--mint) 14%, transparent)}}.exam-listen-review-bar{color:var(--text);font:700 13px/1.4 var(--font-display)}.exam-listen-panel.is-review .listen-heard,.exam-listen-panel.is-review .listen-now,.exam-listen-panel.is-review .wg-mark.listen-heard,.exam-listen-panel.is-review .wg-mark.listen-now{box-shadow:none;color:inherit;opacity:1;background:0 0;transform:none}.exam-listen-panel.is-review .gaku-sheet.wabun .listen-heard,.exam-listen-panel.is-review .gaku-sheet.wabun .listen-now,.exam-listen-panel.is-review .gaku-sheet.wabun .wg-mark.listen-heard,.exam-listen-panel.is-review .gaku-sheet.wabun .wg-mark.listen-now{color:#1d1d1d}.exam-listen-panel.is-review .gaku-sheet.wabun .gaku-cell.listen-heard,.exam-listen-panel.is-review .gaku-sheet.wabun .gaku-cell.listen-now{background:var(--wg-paper,#fffefb);color:#1d1d1d}.exam-listen-panel.is-review .gaku-sheet.wabun .wg-mark,.exam-listen-panel.is-review .gaku-sheet.wabun .wg-note{color:var(--wg-green,#17994a)}@media (max-width:760px){.exam-brief-chips{justify-content:flex-start;align-self:auto}.preset-grid{grid-template-columns:1fr}.preset-card{min-height:0}.exam-status-row{grid-template-columns:minmax(0,1fr) auto}.exam-transport{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.exam-transport .btn{padding-inline:8px;font-size:12px}.exam-listen-progress{grid-template-columns:1fr}.exam-result-hero{flex-direction:column;align-items:flex-start;gap:16px}.exam-ledger th{white-space:normal;width:28%}.gaku-sheet{padding:16px 14px 20px}.gaku-sheet.oubun{padding:30px 22px 24px}}@media print{@page{size:A4 landscape;margin:8mm}html,body{color:#000!important;background:#fff!important}.sidebar,.app-header,.mobile-nav,.exam-status,.exam-warning,.exam-setup,.exam-result-hero,.exam-score-breakdown,.exam-result-gaku>.section-kicker,.exam-result-gaku-title,.exam-ledger,.exam-align,.level-chip,.stop-button,.profile-button,.speed-toggle{display:none!important}.exam-result.has-gaku{background:#fff!important;max-width:none!important;margin:0!important;display:block!important}.app-main{min-height:0!important;margin:0!important}.exam-page,.exam-terminal,.exam-terminal.listen-mode,.exam-listen-panel,.page-pad{width:100%!important;max-width:none!important;box-shadow:none!important;background:#fff!important;margin:0!important;padding:0!important;overflow:visible!important}.gaku-stack{gap:0!important;display:block!important}.gaku-sheet{break-after:page;page-break-after:always;break-inside:avoid;box-shadow:none!important;margin:0 auto!important}.gaku-sheet:last-child{break-after:auto;page-break-after:auto}.gaku-sheet.is-active{box-shadow:none!important}.listen-heard,.listen-now,.listen-wait,.wg-mark.listen-heard,.wg-mark.listen-now,.wg-mark.listen-wait{box-shadow:none!important;color:inherit!important;opacity:1!important;background:0 0!important;transform:none!important}.gaku-sheet.wabun .wg-mark,.gaku-sheet.wabun .wg-note,.gaku-sheet.wabun .wg-end em{-webkit-print-color-adjust:exact;print-color-adjust:exact;color:#17994a!important}.gaku-sheet.wabun,.gaku-sheet.oubun,.gaku-wabun-grid,.gaku-cell,.wg-score th,.wg-score td{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.collection-hero{border-radius:var(--r-xl);background:radial-gradient(500px 260px at 100% 0%, #f6c45329, transparent 65%), linear-gradient(160deg, var(--surface-2), var(--surface));grid-template-columns:1fr auto;align-items:center;gap:24px;margin-bottom:20px;padding:clamp(22px,3vw,36px);display:grid}.collection-hero h1{margin:6px 0 8px;font-size:clamp(28px,3.4vw,42px)}.collection-hero p:not(.section-kicker){color:var(--text-2);max-width:56ch;margin:0}.collection-tally{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}.tally{border-radius:var(--r-md);background:var(--surface-sunken);border:1px solid var(--line);color:var(--muted);font:700 12px var(--font-display);align-items:baseline;gap:6px;padding:8px 14px;display:inline-flex}.tally b{color:var(--text);font:900 22px var(--font-mono)}.tally.gold b{color:var(--gold)}.tally.sky b{color:var(--sky)}.collection-hero-ring{justify-items:center;gap:12px;display:grid}.collection-hero-ring .progress-ring-label b{font:900 38px/1 var(--font-mono);color:var(--gold)}.collection-hero-ring .progress-ring-label b small{font-size:16px}.collection-hero-ring .progress-ring-label span{color:var(--muted);font:800 10px var(--font-mono);letter-spacing:.2em}.collection-toolbar{margin-bottom:18px}.card-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:18px 14px;display:grid}.collection-item{text-align:center;animation:grid-in .45s var(--ease-out) both;animation-delay:var(--delay,0s);transition:transform var(--t-med) var(--ease-spring);background:0 0;border:0;gap:8px;padding:0;display:grid;position:relative}.collection-item:hover{transform:translateY(-6px)rotate(-.6deg)}.collection-item:hover .signal-card-body{box-shadow:0 0 0 2px var(--gold), 0 20px 40px #00000080}.collection-item.locked:hover .card-back{border-color:var(--gold)}.collection-item-meta{justify-content:space-between;align-items:baseline;gap:6px;padding:0 4px;display:flex}.collection-item-meta small{color:var(--faint);font:700 10px var(--font-mono)}.collection-item-meta b{font:800 15px var(--font-display);color:var(--text-2)}.collection-item.acquired .collection-item-meta b{color:var(--gold)}.collection-item-meter{background:var(--surface-3);border-radius:4px;height:5px;margin:-2px 4px 0;position:relative;overflow:hidden}.collection-item-meter i{border-radius:inherit;background:linear-gradient(90deg, var(--gold-2), var(--gold));position:absolute;inset:0 auto 0 0}.collection-item.status-unfound .signal-card{opacity:.7}.card-drawer-backdrop{z-index:200;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#050714c7;place-items:center;padding:24px;animation:.25s both fade-in;display:grid;position:fixed;inset:0}.card-drawer{border:1px solid var(--line-2);border-radius:var(--r-xl);background:linear-gradient(160deg, var(--surface-2), var(--surface));width:min(1040px,100%);max-height:calc(100vh - 48px);box-shadow:var(--shadow-2);animation:drawer-in .4s var(--ease-spring) both;grid-template-columns:minmax(240px,380px) minmax(0,1fr);gap:clamp(24px,4vw,48px);padding:clamp(22px,3.4vw,40px);display:grid;position:relative;overflow:auto}.drawer-close{z-index:3;border:1px solid var(--line-2);background:var(--surface);width:40px;height:40px;color:var(--text-2);border-radius:50%;place-items:center;display:grid;position:absolute;top:16px;right:16px}.drawer-close:hover{color:var(--text);border-color:var(--line-3)}.drawer-artwork{align-content:start;justify-items:center;gap:14px;display:grid}.drawer-artwork .signal-card{width:min(100%,66.6667dvh - 113.333px)}.drawer-nav{color:var(--muted);font:700 13px var(--font-mono);justify-content:center;align-items:center;gap:14px;display:flex}.card-detail{align-content:start;gap:18px;min-width:0;display:grid}.detail-tags{flex-wrap:wrap;align-items:center;gap:6px;padding-right:44px;display:flex}.detail-heading{flex-wrap:wrap;align-items:center;gap:22px;display:flex}.detail-heading h2{font:900 clamp(64px, 8vw, 104px)/1 var(--font-display);background:linear-gradient(180deg, #fff6d6, var(--gold) 60%, var(--gold-2));color:#0000;-webkit-background-clip:text;background-clip:text;margin:0}.detail-heading>div{justify-items:start;gap:10px;display:grid}.detail-code{font:800 clamp(20px, 2.4vw, 30px) var(--font-mono);letter-spacing:.14em}.detail-meter{grid-template-columns:auto 1fr auto;align-items:center;gap:12px;display:grid}.detail-meter span{color:var(--muted);font:700 12px var(--font-display)}.detail-meter b{color:var(--gold);font:800 15px var(--font-mono)}.card-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0;display:grid}.card-stats>div{border-radius:var(--r-md);background:var(--surface-sunken);border:1px solid var(--line);padding:12px 14px}.card-stats dt{color:var(--muted);font:700 11px var(--font-display)}.card-stats dd{font:900 22px var(--font-mono);margin:4px 0 0}.card-stats dd small{color:var(--muted);font-size:13px}.card-stats dd.small{font:800 14px var(--font-display)}.detail-locked{border-radius:var(--r-md);background:var(--gold-soft);color:var(--gold);font:700 13px var(--font-display);align-items:center;gap:8px;margin:0;padding:12px 16px;display:flex}.detail-mnemonic h3{margin:6px 0 12px;font-size:clamp(22px,2.6vw,30px)}.mnemonic-list{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px;max-height:240px;display:grid;overflow:auto}.mnemonic-list button{border:1.5px solid var(--line-2);border-radius:var(--r-md);background:var(--surface-sunken);text-align:left;gap:2px;padding:10px 14px;display:grid}.mnemonic-list button span{color:var(--muted);font:700 10px var(--font-display)}.mnemonic-list button b{font:800 15px var(--font-display)}.mnemonic-list button.active{border-color:var(--gold);background:var(--gold-soft)}.custom-mnemonic{color:var(--text-2);font:700 13px var(--font-display);grid-template-columns:auto 1fr;align-items:center;gap:12px;margin-top:12px;display:grid}@keyframes grid-in{0%{opacity:0;transform:translateY(14px)scale(.96)}to{opacity:1;transform:none}}@keyframes drawer-in{0%{opacity:0;transform:translateY(24px)scale(.96)}to{opacity:1;transform:none}}@media (max-width:1180px){.card-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:760px){.collection-hero{grid-template-columns:1fr}.collection-hero-ring{grid-auto-flow:column;justify-content:start;align-items:center}.collection-hero-ring .progress-ring{width:110px!important;height:110px!important}.collection-hero-ring .progress-ring svg{width:110px;height:110px}.collection-hero-ring .progress-ring-label b{font-size:28px}.card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 8px}.collection-item-meta small{display:none}.collection-item-meta{justify-content:center}.card-drawer-backdrop{align-items:end;padding:0}.card-drawer{border-radius:var(--r-xl) var(--r-xl) 0 0;grid-template-columns:1fr;max-height:92vh;padding:22px 18px 32px}.drawer-artwork{width:min(240px,70vw);margin:0 auto}.detail-heading{text-align:center;justify-content:center}.detail-heading>div{justify-items:center}.custom-mnemonic{grid-template-columns:1fr}}@media (max-width:420px){.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.settings-grid{grid-template-columns:1fr 1fr;align-items:start;gap:18px;display:grid}.settings-panel{flex-direction:column;gap:18px;display:flex}.settings-card-head{grid-template-columns:48px minmax(0,1fr);align-items:start;gap:14px;display:grid}.settings-icon{border-radius:var(--r-md);background:var(--gold-soft);width:48px;height:48px;color:var(--gold);place-items:center;display:grid}.settings-card-head h2{margin:2px 0 6px;font-size:20px}.settings-card-head p:last-child{color:var(--text-2);margin:0;font-size:13.5px;line-height:1.6}.choice-list{gap:8px;display:grid}.choice-card{border:1.5px solid var(--line);border-radius:var(--r-md);background:var(--surface-sunken);width:100%;color:var(--text);text-align:left;transition:border-color var(--t-fast), box-shadow var(--t-fast), background var(--t-fast);grid-template-columns:minmax(0,1fr) 22px;align-items:center;gap:12px;padding:14px 16px;display:grid}.choice-card:hover{border-color:var(--line-3)}.choice-card.active{border-color:var(--gold);background:var(--gold-soft);box-shadow:var(--shadow-gold)}.choice-copy{gap:3px;min-width:0;display:grid}.choice-copy strong{font-family:var(--font-display);font-size:15px;font-weight:800;line-height:1.35}.choice-copy small{color:var(--muted);font-size:12.5px;line-height:1.45}.choice-card.active .choice-copy small{color:var(--text-2)}.choice-check{width:22px;height:22px;color:var(--gold);place-items:center;display:grid}.exposure-note{color:var(--gold);font:700 12px/1.4 var(--font-mono);letter-spacing:.04em;margin:0}.vault-actions{flex-wrap:wrap;gap:10px;display:flex}.storage-note{border:1px dashed var(--gold);gap:4px;margin-top:auto;padding:16px 18px;display:grid}@supports (color:color-mix(in lab, red, red)){.storage-note{border:1px dashed color-mix(in srgb, var(--gold) 45%, var(--line-2))}}.storage-note{border-radius:var(--r-md);background:var(--gold-soft)}.storage-note b{color:var(--gold);font:800 13px/1.3 var(--font-display)}.storage-note span,.storage-note small{color:var(--text-2);font-size:12.5px;line-height:1.45}.settings-switch{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-sunken);cursor:pointer;justify-content:space-between;align-items:center;gap:16px;padding:12px 14px;display:flex}.settings-switch-copy{gap:2px;min-width:0;display:grid}.settings-switch-copy strong{font:800 14px/1.3 var(--font-display)}.settings-switch-copy small{color:var(--muted);font:700 12px/1.4 var(--font-display)}.settings-switch-ui{flex:none;width:48px;height:28px;position:relative}.settings-switch-ui input[type=checkbox]{z-index:1;opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.settings-switch-ui i{border:1px solid var(--line-2);border-radius:var(--r-pill);background:var(--surface);pointer-events:none;width:48px;height:28px;transition:background var(--t-fast), border-color var(--t-fast);display:block}.settings-switch-ui i:after{content:"";background:var(--muted);width:20px;height:20px;transition:transform var(--t-med) var(--ease-out), background var(--t-fast);border-radius:50%;position:absolute;top:3px;left:3px}.settings-switch.on .settings-switch-ui i{background:var(--gold-soft);border-color:#f6c4538c}.settings-switch.on .settings-switch-ui i:after{background:var(--gold);transform:translate(22px)}.settings-credit{color:var(--faint);font:700 11px/1.4 var(--font-mono);letter-spacing:.04em;text-align:center;margin:28px 0 0}@media (max-width:980px){.settings-grid{grid-template-columns:1fr}}@media (max-width:760px){.vault-actions{flex-direction:column}.vault-actions .btn{width:100%}}.onboarding{border:1px solid var(--line-2);border-radius:var(--r-xl);background:radial-gradient(120% 70% at 0% 0%, #f6c45324, transparent 48%), linear-gradient(180deg, var(--surface), var(--surface));width:min(760px,100%);max-height:min(92vh,880px);padding:clamp(22px,4vw,40px);overflow:auto}@supports (color:color-mix(in lab, red, red)){.onboarding{background:radial-gradient(120% 70% at 0% 0%, #f6c45324, transparent 48%), linear-gradient(180deg, var(--surface), color-mix(in srgb, var(--surface) 72%, var(--bg)))}}.onboarding{box-shadow:var(--shadow-2);animation:onboard-in .5s var(--ease-spring) both}.onboarding h1{margin:8px 0;font-size:clamp(26px,4vw,36px)}.onboarding-lead{max-width:46ch;color:var(--text-2);margin:0}.morse-motif{align-items:center;gap:7px;height:18px;margin-bottom:10px;display:flex}.morse-motif i{background:var(--gold);height:8px;animation:morse-blink 1.8s var(--ease-out) infinite;border-radius:99px;display:block;box-shadow:0 0 12px #f6c45373}.morse-motif .dot{width:8px}.morse-motif .dash{width:26px}.morse-motif i:nth-child(2){animation-delay:.15s}.morse-motif i:nth-child(3){animation-delay:.3s}.morse-motif i:nth-child(4){animation-delay:.45s}.morse-motif i:nth-child(5){animation-delay:.6s}.onboard-grid{grid-template-columns:1fr 1fr;gap:12px;margin-top:22px;display:grid}.onboard-card{border:1.5px solid var(--line);border-radius:var(--r-lg);background:var(--surface-2);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;min-height:96px;padding:16px;display:grid}@supports (color:color-mix(in lab, red, red)){.onboard-card{background:color-mix(in srgb, var(--surface-2) 82%, transparent)}}.onboard-card{color:var(--text);text-align:left;box-shadow:var(--shadow-1);animation:onboard-card-in .45s var(--ease-out) both;transition:transform var(--t-med) var(--ease-out), border-color var(--t-fast), box-shadow var(--t-fast)}.onboard-card:first-child{animation-delay:50ms}.onboard-card:nth-child(2){animation-delay:.1s}.onboard-card:nth-child(3){animation-delay:.15s}.onboard-card:nth-child(4){animation-delay:.2s}.onboard-card:hover{border-color:var(--gold);transform:translateY(-4px)}@supports (color:color-mix(in lab, red, red)){.onboard-card:hover{border-color:color-mix(in srgb, var(--gold) 55%, var(--line))}}.onboard-card:hover{box-shadow:var(--shadow-gold)}.onboard-card:active{transform:translateY(-1px)}.onboard-icon{background:var(--gold-soft);width:44px;height:44px;color:var(--gold);border-radius:14px;place-items:center;display:grid}.onboard-copy{gap:4px;min-width:0;display:grid}.onboard-copy strong{font-family:var(--font-display);font-size:15px;font-weight:800;line-height:1.35}.onboard-copy small{color:var(--muted);font-size:12.5px;line-height:1.45}.onboard-card>svg{color:var(--muted)}@keyframes onboard-in{0%{opacity:0;transform:scale(.94)translateY(14px)}to{opacity:1;transform:none}}@keyframes onboard-card-in{0%{opacity:0}to{opacity:1}}@keyframes morse-blink{0%,to{opacity:.28;transform:scaleY(.72)}40%{opacity:1;transform:scaleY(1)}}@media (max-width:760px){.onboarding{padding:20px 16px 24px}.onboard-grid{grid-template-columns:1fr}}@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}
