/*! 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,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@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;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::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;-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]){appearance:button}::file-selector-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}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.static{position:static}.start{inset-inline-start:var(--spacing)}.block{display:block}.contents{display:contents}.grid{display:grid}.hidden{display:none}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{--ivory:#f7f6ef;--paper:#fffefa;--ink:#151515;--muted:#66675f;--line:#d8d7ce;--lime:#c7ff42;--pink:#ff4d8d;--purple:#6d4aff;--cyan:#8bf1ed;--yellow:#ffd84d;--shadow:7px 7px 0 var(--ink)}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--ivory)}body{background:var(--ivory);color:var(--ink);margin:0;font-family:Inter,Pretendard,Noto Sans KR,Malgun Gothic,Segoe UI,Arial,sans-serif}button,input,select{color:inherit;font:inherit}button,a,select,input{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer}:focus-visible{outline:3px solid var(--purple);outline-offset:4px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.site-shell{background:radial-gradient(circle at 2% 10%, #c7ff427a, transparent 21rem), radial-gradient(circle at 96% 9%, #8bf1ed8c, transparent 24rem), var(--ivory);min-height:100vh;overflow:clip visible}.skip-link{z-index:100;border:2px solid var(--ink);background:var(--yellow);border-radius:999px;padding:10px 16px;font-weight:800;position:fixed;inset-block-start:12px;inset-inline-start:12px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.topbar,.hero,.activity-section,.learning-path,.free-note,footer{width:min(1480px,100% - 48px);margin-inline:auto}.topbar{z-index:20;border-bottom:1px solid #15151521;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;column-gap:clamp(20px,2.2vw,38px);min-height:88px;display:grid;position:relative}.brand{letter-spacing:-.04em;justify-self:start;align-items:center;gap:10px;font-size:20px;font-weight:950;display:inline-flex}.brand-mark{border:3px solid var(--ink);background:var(--pink);width:38px;height:38px;box-shadow:3px 3px 0 var(--ink);border-radius:50%;place-items:center;font-size:16px;font-weight:900;display:inline-grid}.nav-links{justify-content:center;align-items:center;gap:38px;font-size:14px;font-weight:800;display:flex}.nav-links a{border-bottom:4px solid #0000;padding-block:31px 27px}.nav-links a:hover{border-color:var(--ink)}.header-tools{justify-self:end;align-items:center;gap:10px;min-width:0;display:flex}.audio-control-cluster{border:2px solid var(--ink);background:var(--paper);box-shadow:0 3px 0 var(--ink);border-radius:14px;align-items:stretch;display:flex;overflow:hidden}.audio-control-cluster>*{min-height:42px}.audio-control-cluster>*+*{border-inline-start:1px solid #d8d6cc}.audio-control-cluster .speech-toggle{padding:6px 9px}.audio-control-cluster .speech-toggle-track{width:38px;height:23px;box-shadow:none;border-width:1.5px}.audio-control-cluster .speech-toggle-track i{border-width:1px;width:14px;height:14px;inset-block-start:3px}.audio-control-cluster .speech-toggle input:checked+.speech-toggle-track i{transform:translate(15px)}[dir=rtl] .audio-control-cluster .speech-toggle input:checked+.speech-toggle-track i{transform:translate(-15px)}.audio-control-cluster .speech-toggle-copy{min-width:62px}.speech-toggle{cursor:pointer;align-items:center;gap:8px;display:flex}.speech-toggle input{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.speech-toggle-track{border:2px solid var(--ink);width:46px;height:27px;box-shadow:0 2px 0 var(--ink);background:#d5d4cc;border-radius:999px;flex:none;transition:background .15s;display:block;position:relative}.speech-toggle-track:before{color:var(--ink);content:"♪";font-size:10px;font-weight:950;position:absolute;inset-block-start:50%;inset-inline-start:6px;transform:translateY(-52%)}.speech-toggle-track i{border:1.5px solid var(--ink);background:var(--paper);border-radius:50%;width:17px;height:17px;transition:transform .15s;position:absolute;inset-block-start:3px;inset-inline-start:3px}.speech-toggle input:checked+.speech-toggle-track{background:var(--lime)}.speech-toggle input:checked+.speech-toggle-track i{transform:translate(19px)}[dir=rtl] .speech-toggle input:checked+.speech-toggle-track i{transform:translate(-19px)}.speech-toggle input:focus-visible+.speech-toggle-track{outline:3px solid var(--purple);outline-offset:3px}.speech-toggle-copy{min-width:112px;line-height:1.05;display:grid}.speech-toggle-copy b{font-size:10px;font-weight:900}.speech-toggle-copy small{color:var(--muted);margin-block-start:3px;font-size:9px;font-weight:750}.speech-toggle.unavailable{cursor:not-allowed;opacity:.5}.voice-picker{border:1.5px solid var(--ink);background:var(--paper);box-shadow:0 2px 0 var(--ink);border-radius:999px;align-items:center;gap:5px;padding:5px 7px;display:flex}.audio-control-cluster .voice-picker{min-width:126px;box-shadow:none;border:0;border-radius:0;padding:5px 9px}.sound-preview-button{background:var(--yellow);width:40px;color:var(--ink);cursor:pointer;border:0;font-weight:950}.sound-preview-button:hover,.sound-preview-button:focus-visible{background:var(--pink)}.voice-picker>span:first-child{width:22px;height:22px;color:var(--purple);background:#ece6ff;border-radius:50%;place-items:center;font-size:13px;font-weight:950;display:grid}.voice-picker select{max-width:94px;color:var(--ink);font:inherit;background:0 0;border:0;outline:0;font-size:9px;font-weight:850}.voice-picker i{background:var(--lime);border-radius:999px;padding:3px 4px;font-size:6px;font-style:normal;font-weight:950}.language-picker{position:relative}.language-picker:before{background:var(--purple);content:"";border-radius:50%;width:7px;height:7px;position:absolute;inset-block-start:50%;inset-inline-start:16px;transform:translateY(-50%)}.language-picker select{appearance:none;border:1.5px solid var(--line);background:var(--paper);border-radius:999px;min-width:184px;padding:11px 34px;font-size:13px;font-weight:800}.curriculum-progress{z-index:2;grid-template-columns:repeat(6,minmax(0,1fr));gap:5px;margin:7px 0 0;padding:0;list-style:none;display:grid;position:relative}.curriculum-progress li{min-width:0;color:var(--muted);background:#f1f0e9;border:1px solid #d4d2c8;border-radius:10px}.curriculum-progress li button{border-radius:inherit;width:100%;min-width:0;color:inherit;font:inherit;text-align:start;cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;padding:6px 7px;display:flex}.curriculum-progress li button:hover:not(:disabled){background:var(--yellow)}@supports (color:color-mix(in lab, red, red)){.curriculum-progress li button:hover:not(:disabled){background:color-mix(in srgb, var(--yellow) 45%, transparent)}}.curriculum-progress li button:hover:not(:disabled){transform:translateY(-1px)}.curriculum-progress li button:focus-visible{outline:2px solid var(--purple);outline-offset:2px}.curriculum-progress li button:disabled{cursor:wait;opacity:.56}.curriculum-progress li span{border:1px solid;border-radius:50%;flex:none;place-items:center;width:18px;height:18px;font-size:9px;font-weight:950;display:grid}.curriculum-progress li b{text-overflow:ellipsis;white-space:nowrap;font-size:8px;overflow:hidden}.curriculum-progress li.current{border:2px solid var(--ink);background:var(--yellow);color:var(--ink);box-shadow:2px 2px 0 var(--ink)}.curriculum-progress li.done{background:var(--lime)}@supports (color:color-mix(in lab, red, red)){.curriculum-progress li.done{background:color-mix(in srgb, var(--lime) 46%, var(--paper))}}.curriculum-progress li.done{color:#315e19}.curriculum-progress li.selectable{color:#5e5b67;background:#fff;border-style:dashed}.theme-picker{z-index:3;flex-wrap:wrap;align-items:center;gap:6px 8px;margin-block-start:6px;display:flex;position:relative}.theme-picker-label{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:9px;font-weight:950}.theme-picker-row{flex-wrap:wrap;gap:6px;display:flex}.theme-chip{background:var(--paper);border:2px solid var(--ink);cursor:pointer;box-shadow:2px 2px 0 var(--ink);border-radius:999px;align-items:center;gap:5px;padding:5px 11px;transition:transform .12s,box-shadow .12s,background .12s;display:inline-flex}.theme-chip:hover{box-shadow:3px 3px 0 var(--ink);transform:translate(-1px,-1px)}.theme-chip.active{background:var(--ink);color:var(--paper);box-shadow:2px 2px 0 var(--ink)}.theme-chip .theme-chip-icon{font-size:14px;line-height:1}.theme-chip b{white-space:nowrap;font-size:12px;font-weight:800}.practice-focus-mode .theme-picker{gap:4px 8px;margin-block:0 4px}.practice-focus-mode .theme-chip{padding:3px 9px}.practice-focus-mode .theme-chip b{font-size:11px}.practice-track-picker{z-index:3;align-items:center;gap:6px;margin-block-start:11px;display:flex;position:relative}.practice-track-picker>span{color:var(--muted);margin-inline-end:2px;font-size:9px;font-weight:950}.practice-track-picker button{border:1px solid var(--line);color:var(--muted);font:inherit;cursor:pointer;background:#fff;border-radius:999px;padding:6px 10px;font-size:9px;font-weight:900}.practice-track-picker button.active{border-color:var(--ink);background:var(--purple);color:#fff;box-shadow:2px 2px 0 var(--ink)}.practice-track-picker button:disabled{cursor:wait;opacity:.52}.practice-workspace{grid-template-columns:minmax(265px,.82fr) minmax(360px,1.18fr);align-items:stretch;gap:12px;margin-block-start:12px;display:grid;position:relative}.practice-input-column,.practice-guidance-column{min-width:0}.practice-input-column{flex-direction:column;display:flex}.practice-guidance-column{border:2px solid var(--ink);box-shadow:3px 3px 0 var(--ink);background:#f6f3ff;border-radius:17px;flex-direction:column;padding:9px;display:flex}.retry-practice{border:1.5px solid var(--ink);background:var(--paper);font:inherit;cursor:pointer;border-radius:999px;grid-column:1/-1;justify-self:start;padding:7px 11px;font-size:10px;font-weight:900}.hero{grid-template-columns:minmax(350px,.7fr) minmax(680px,1.3fr);align-items:center;gap:clamp(28px,3.5vw,58px);min-height:calc(100svh - 88px);padding-block:14px 22px;display:grid}.hero-copy{z-index:2;position:relative}.eyebrow,.section-label,.card-kicker,.activity-kicker,.demo-label{letter-spacing:.16em;text-transform:uppercase;font-size:11px;font-weight:950}.eyebrow{border:2px solid var(--ink);background:var(--yellow);box-shadow:3px 3px 0 var(--ink);border-radius:999px;align-items:center;gap:10px;margin:0 0 24px;padding:9px 14px;display:inline-flex}.eyebrow span{background:var(--pink);width:9px;height:9px;box-shadow:16px 0 0 var(--purple);border-radius:50%;margin-inline-end:16px}.hero h1{letter-spacing:-.075em;max-width:780px;margin:0;font-size:clamp(58px,6.2vw,96px);font-weight:950;line-height:.9}.hero h1 span{display:block}.headline-accent{z-index:0;width:fit-content;margin-block-start:10px;position:relative}.headline-accent:after{z-index:-1;background:linear-gradient(90deg, var(--lime) 0 78%, var(--pink) 78%);content:"";border-radius:2px;height:18px;position:absolute;inset-block-end:3px;inset-inline:0 -8px;transform:rotate(-1deg)}.hero-description{color:#4f504b;max-width:620px;margin:28px 0 0;font-size:clamp(17px,1.4vw,21px);font-weight:550;line-height:1.65}.hero-actions{flex-wrap:wrap;gap:12px;margin-block-start:32px;display:flex}.button{border:2px solid var(--ink);border-radius:999px;justify-content:center;align-items:center;gap:12px;min-height:50px;padding:12px 22px;font-size:14px;font-weight:900;transition:transform .16s,box-shadow .16s;display:inline-flex}.button:hover{transform:translate(-2px,-2px)}.button-primary{background:var(--ink);color:var(--paper);box-shadow:5px 5px 0 var(--pink)}.button-primary:hover{box-shadow:7px 7px 0 var(--pink)}.button-secondary{background:var(--paper)}.trust-row{color:var(--muted);flex-wrap:wrap;gap:12px 24px;margin-block-start:34px;font-size:12px;font-weight:700;display:flex}.trust-row span{align-items:center;gap:6px;display:inline-flex}.trust-row b{color:var(--ink);font-size:17px}.practice-stage{min-width:0;padding:0 12px 20px;scroll-margin-block-start:96px;position:relative}.stage-orbit{border:2px solid var(--ink);pointer-events:none;border-radius:50%;animation:4.4s ease-in-out infinite orbit-float;position:absolute}.orbit-one{border-color:var(--purple);width:105px;height:38px;inset-block-start:-4px;inset-inline-end:30px;transform:rotate(17deg)}.orbit-two{border-color:var(--pink);width:70px;height:25px;inset-block-end:-3px;inset-inline-start:-10px;transform:rotate(-28deg)}.practice-card{border:3px solid var(--ink);background:var(--paper);box-shadow:8px 4px 0 var(--ink);border-radius:38px 18px;padding:18px;position:relative;overflow:visible}.practice-card:before{border-inline-start:3px solid var(--ink);border-block-end:3px solid var(--ink);background:var(--cyan);content:"";border-end-start-radius:90px;width:120px;height:90px;position:absolute;inset-block-start:0;inset-inline-end:0}.practice-card-header{z-index:1;justify-content:space-between;align-items:flex-start;gap:20px;display:flex;position:relative}.card-kicker{margin:0 0 5px}.practice-card h2{letter-spacing:-.045em;max-width:620px;margin:0;font-size:clamp(20px,1.8vw,27px);line-height:1.05}.streak{z-index:2;border:2px solid var(--ink);background:var(--lime);border-radius:999px;flex:none;padding:8px 13px;font-size:11px;font-weight:900;position:relative}.typing-panel{border:2px solid var(--line);background:#fbfaf5;border-radius:22px;margin:0;padding:14px;position:relative}.typing-meta{color:var(--muted);justify-content:space-between;gap:16px;font-size:11px;font-weight:800;display:flex}.target-sentence{letter-spacing:-.05em;margin:12px 0 10px;font-size:clamp(23px,2vw,31px);font-weight:900;animation:.32s ease-out both lesson-slide-in}.target-sentence span{transition:color .12s,background .12s}.target-sentence .pending{color:#b8b7af}.target-sentence .correct{color:var(--purple)}.target-sentence .incorrect{color:#d6295f;-webkit-text-decoration:underline wavy;text-decoration:underline wavy}.target-sentence .current{border-block-end:5px solid var(--yellow);color:var(--ink)}.typing-input{border:2px solid var(--ink);background:var(--paper);border-radius:12px;width:100%;min-height:43px;padding:8px 12px;font-size:18px;font-weight:700}.typing-feedback,.form-message{min-height:17px;color:var(--muted);margin:7px 0 0;font-size:12px;font-weight:700}.typing-feedback.complete,.form-message.success{color:#0f7656}.lesson-evaluation{border:2px solid var(--ink);box-shadow:3px 3px 0 var(--ink);border-radius:14px;grid-template-columns:1fr auto;align-items:center;gap:16px;margin-block-start:12px;padding:14px 16px;display:grid}.lesson-evaluation.accepted{background:var(--lime)}@supports (color:color-mix(in lab, red, red)){.lesson-evaluation.accepted{background:color-mix(in srgb, var(--lime) 42%, var(--paper))}}.lesson-evaluation.rejected{background:#fff0f5;border-color:#a31545;box-shadow:3px 3px #a31545}.lesson-evaluation small,.lesson-evaluation b{display:block}.lesson-evaluation small{letter-spacing:.08em;margin-block-end:3px;font-size:9px;font-weight:950}.lesson-evaluation b{font-size:18px}.lesson-evaluation p{color:var(--muted);margin:4px 0 0;font-size:11px;font-weight:750}.lesson-evaluation dl{gap:8px;margin:0;display:flex}.lesson-evaluation dl div{border:1px solid var(--ink);min-width:72px;padding:7px 9px}@supports (color:color-mix(in lab, red, red)){.lesson-evaluation dl div{border:1px solid color-mix(in srgb, var(--ink) 38%, transparent)}}.lesson-evaluation dl div{text-align:center;background:#ffffffad;border-radius:9px}.lesson-evaluation dt{color:var(--muted);font-size:9px;font-weight:800}.lesson-evaluation dd{margin:2px 0 0;font-size:16px;font-weight:950}.inline-sound-control{background:var(--paper);color:var(--muted);font:inherit;cursor:pointer;border:1.5px solid #bbb9ae;border-radius:999px;align-items:center;gap:7px;margin-block-start:12px;padding:7px 10px;font-size:10px;font-weight:900;display:inline-flex}.inline-sound-control span{width:20px;height:20px;color:var(--ink);background:#d7d5ca;border-radius:50%;place-items:center;display:grid}.inline-sound-control.on{border-color:var(--ink);color:var(--ink)}.inline-sound-control.on span{background:var(--yellow)}.keyboard-tools{border-block-start:1.5px dashed #cfcdc2;grid-template-columns:auto 1fr;align-items:center;gap:9px;margin-block-start:9px;padding-block-start:9px;display:grid}.keyboard-tools p{color:var(--muted);margin:0;font-size:8px;font-weight:750;line-height:1.45}.keyboard-layout-picker{white-space:nowrap;align-items:center;gap:8px;font-size:10px;font-weight:900;display:flex}.keyboard-layout-picker select{border:1.5px solid var(--ink);background:var(--paper);min-height:30px;color:var(--ink);font:inherit;border-radius:9px;padding:4px 26px 4px 8px}.next-key-card{border:2px solid var(--ink);background:var(--yellow);box-shadow:3px 3px 0 var(--ink);border-radius:14px;align-items:center;gap:9px;margin-block-start:9px;padding:8px 10px;display:flex}.next-key-card.complete{background:var(--lime)}.next-key-jamo{border:2px solid var(--ink);background:var(--paper);border-radius:11px;flex:none;place-items:center;width:41px;height:41px;font-size:24px;font-weight:950;display:grid}.next-key-copy{gap:3px;display:grid}.next-key-copy small{letter-spacing:.04em;text-transform:uppercase;font-size:8px;font-weight:850}.next-key-copy b{align-items:center;gap:7px;font-size:14px;display:flex}.next-key-copy kbd{border:2px solid var(--ink);background:var(--paper);min-width:36px;height:29px;box-shadow:0 3px 0 var(--ink);border-radius:8px;place-items:center;padding-inline:8px;font-family:inherit;font-size:13px;display:inline-grid}.key-guide{direction:ltr;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;margin-block-start:8px;display:grid}.key-guide kbd{background:var(--paper);border:1.5px solid #cccac0;border-radius:8px;place-items:center;min-width:0;min-height:35px;padding:3px 5px;font-family:inherit;font-size:14px;font-weight:900;display:grid;box-shadow:0 3px #cccac0}.key-guide kbd small{color:var(--muted);font-size:9px;line-height:1}.key-guide kbd.active{border-color:var(--ink);background:var(--yellow);box-shadow:0 3px 0 var(--ink);transform:translateY(-2px)}.key-guide kbd.active small{color:var(--ink)}.keyboard-map{direction:ltr;background:#efeee7;border:1.5px solid #cfcdc2;border-radius:14px;flex:1;min-height:274px;margin-block-start:7px;padding:8px 7px 0;position:relative;overflow:visible}.keyboard-map-legend{color:var(--muted);align-items:center;gap:10px;margin-block-end:5px;font-size:9px;font-weight:800;display:flex}.keyboard-map-legend b{color:var(--ink);margin-inline-end:auto;font-size:10px}.keyboard-map-legend span{white-space:nowrap;align-items:center;gap:4px;display:inline-flex}.keyboard-map-legend i{border-radius:2px;width:8px;height:8px}.legend-hangul{background:var(--purple)}.legend-local{background:var(--cyan)}.keyboard-row{z-index:1;justify-content:center;gap:3px;margin-block-start:3px;display:flex;position:relative}.keyboard-row.home{padding-inline:4%}.keyboard-row.bottom{padding-inline:10%}.keyboard-row kbd{aspect-ratio:1/1.08;background:var(--paper);border:1.5px solid #b8b6aa;border-radius:7px;flex:none;place-items:center;width:clamp(27px,7.5%,38px);font-family:inherit;line-height:1;transition:transform .12s,background .12s;display:grid;position:relative;overflow:visible;box-shadow:0 2px #b8b6aa}.keyboard-row kbd span{color:var(--purple);font-size:clamp(12px,2.2vw,17px);font-weight:950}.keyboard-row kbd small{color:#147d8d;font-size:clamp(7px,1.4vw,9px);font-weight:950}.keyboard-row kbd.active{border-color:var(--ink);background:var(--yellow);box-shadow:0 3px 0 var(--ink);transform:translateY(-3px)scale(1.07)}.keyboard-row kbd.muted-key{opacity:.26;filter:grayscale()}.finger-callout{border:1.5px solid var(--ink);background:var(--yellow);min-height:47px;box-shadow:2px 2px 0 var(--ink);border-radius:12px;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;padding:6px 8px;display:grid}.finger-callout>span{background:var(--pink);border-radius:50%;place-items:center;width:31px;height:31px;font-size:18px;animation:.9s ease-in-out infinite finger-nudge;display:grid}.finger-callout div{gap:1px;line-height:1.05;display:grid}.finger-callout small{letter-spacing:.09em;font-size:7px;font-weight:950}.finger-callout b{font-size:14px;font-weight:950}.finger-callout kbd{border:2px solid var(--ink);background:var(--paper);min-width:38px;height:33px;box-shadow:0 3px 0 var(--ink);border-radius:8px;place-items:center;padding-inline:6px;font-family:inherit;font-size:14px;font-weight:950;display:grid}.hand-overlay{z-index:4;pointer-events:none;direction:ltr;position:absolute;inset:34px 1% 0}.hand-overlay img{object-fit:contain;filter:drop-shadow(0 4px 5px #1515151f);width:100%;height:100%}.hand-rest-image{opacity:.36;transition:opacity .18s,filter .18s}.hand-press-layer{--press-y:1%;--press-scale:.96;--press-rotate:0deg;z-index:6;transform-origin:var(--origin-x,50%) var(--origin-y,46%);filter:drop-shadow(0 8px 5px #6d4aff3d);will-change:transform;position:absolute;inset:0;overflow:hidden}.hand-press-layer img{opacity:.98;filter:saturate(1.32)contrast(1.04)drop-shadow(0 0 7px #ff4d8d94)}.hand-press-layer:after{content:"";mix-blend-mode:multiply;background:linear-gradient(#ff4d8d94,#ffd84d7a);position:absolute;inset:0;-webkit-mask:url(/images/typing-hands-v2.png) 50%/contain no-repeat;mask:url(/images/typing-hands-v2.png) 50%/contain no-repeat}.hand-overlay.is-demonstrating .hand-press-layer{animation:1.35s cubic-bezier(.22,.75,.25,1) infinite real-finger-demonstrate}.hand-overlay.is-pressing .hand-press-layer{animation:.17s ease-out both real-finger-press}.hand-overlay.target-top .hand-press-layer{--press-y:-2%;--press-scale:1.04}.hand-overlay.target-home .hand-press-layer{--press-y:1%;--press-scale:.96}.hand-overlay.target-bottom .hand-press-layer{--press-y:4%;--press-scale:.9}.hand-overlay.target-space .hand-press-layer{--press-y:2%;--press-scale:.93}.hand-press-layer.left-pinky{--origin-x:20%;--press-rotate:2deg;clip-path:polygon(16.5% 20%,20.5% 19%,22.4% 27%,21.8% 38%,23.1% 45%,20.5% 49%,17.2% 43%,16.2% 29%)}.hand-press-layer.left-ring{--origin-x:24%;--press-rotate:1deg;clip-path:polygon(21.2% 11%,24% 10%,26.2% 13%,26.6% 35%,28% 44%,24.5% 49%,21.4% 42%,21% 22%)}.hand-press-layer.left-middle{--origin-x:29%;clip-path:polygon(26.7% 7%,29% 6%,30.7% 9%,30.7% 35%,32% 44%,29% 50%,26.2% 43%,26% 18%)}.hand-press-layer.left-index{--origin-x:34%;--press-rotate:-2deg;clip-path:polygon(31.4% 12%,34% 11%,35.7% 15%,35.2% 36%,36.2% 45%,33.3% 50%,30.8% 43%,31% 23%)}.hand-press-layer.left-thumb{--origin-x:39%;--origin-y:53%;--press-rotate:-5deg;clip-path:polygon(35% 37%,39% 34%,42% 39%,42% 51%,39% 58%,35% 53%,34% 44%)}.hand-press-layer.right-thumb{--origin-x:61%;--origin-y:53%;--press-rotate:5deg;clip-path:polygon(58% 39%,61% 34%,65% 37%,66% 44%,65% 53%,61% 58%,58% 51%)}.hand-press-layer.right-index{--origin-x:66%;--press-rotate:2deg;clip-path:polygon(64.3% 15%,66% 11%,68.6% 12%,69% 23%,69.2% 43%,66.7% 50%,63.8% 45%,64.8% 36%)}.hand-press-layer.right-middle{--origin-x:71%;clip-path:polygon(69.3% 9%,71% 6%,73.3% 7%,74% 18%,73.8% 43%,71% 50%,68% 44%,69.3% 35%)}.hand-press-layer.right-ring{--origin-x:76%;--press-rotate:-1deg;clip-path:polygon(73.8% 13%,76% 10%,78.8% 11%,79% 22%,78.6% 42%,75.5% 49%,72% 44%,73.4% 35%)}.hand-press-layer.right-pinky{--origin-x:80%;--press-rotate:-2deg;clip-path:polygon(77.6% 27%,79.5% 19%,83.5% 20%,83.8% 29%,82.8% 43%,79.5% 49%,76.9% 45%,78.2% 38%)}@keyframes real-finger-demonstrate{0%,28%,to{transform:translateY(0)scaleY(1)rotate(0)}58%,78%{transform:translateY(var(--press-y)) scaleY(var(--press-scale)) rotate(var(--press-rotate))}}@keyframes real-finger-press{0%{transform:translateY(0)scaleY(1)}to{transform:translateY(var(--press-y)) scaleY(var(--press-scale)) rotate(var(--press-rotate))}}@keyframes finger-nudge{0%,to{transform:translateY(0)rotate(-7deg)}50%{transform:translateY(-3px)rotate(7deg)}}.practice-pause-banner{z-index:12;border:1.5px solid var(--ink);min-width:min(300px,100% - 24px);box-shadow:2px 2px 0 var(--ink);pointer-events:none;background:#e9e4fff5;border-radius:11px;align-items:center;gap:10px;margin:0;padding:9px 11px;animation:.18s ease-out both pause-badge-in;display:flex;position:absolute;inset-block-start:50%;inset-inline-start:50%;transform:translate(-50%,-50%)}.practice-pause-banner>span{background:var(--purple);color:#fff;border-radius:50%;flex:none;place-items:center;width:30px;height:30px;font-weight:950;display:grid}.practice-pause-banner div{gap:2px;display:grid}.practice-pause-banner b{font-size:11px}.practice-pause-banner small{color:var(--muted);font-size:8px;font-weight:750}@keyframes pause-badge-in{0%{opacity:0;transform:translate(-50%,-44%)scale(.97)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}.practice-card.is-paused .hand-press-layer,.practice-card.is-paused .keyboard-row kbd.active,.practice-card.is-paused .stage-orbit{animation-play-state:paused}.daily-meter{background:var(--ink);color:var(--paper);border-radius:18px;grid-template-columns:172px minmax(0,1fr);align-items:center;gap:15px;margin-block-start:11px;padding:9px 13px;display:grid}.daily-time{grid-template-columns:98px 65px;align-items:center;gap:9px;width:172px;display:grid}.daily-time>div{justify-content:flex-start;align-items:baseline;gap:3px;width:98px;display:flex}.daily-time b{font-variant-numeric:tabular-nums;letter-spacing:-.04em;width:5.2ch;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:25px;display:inline-block}.timer-pause-button{color:#fff;min-width:65px;height:32px;font:inherit;cursor:pointer;background:#30302d;border:1px solid #6d6d68;border-radius:999px;justify-content:center;align-items:center;gap:5px;padding-inline:9px;font-size:8px;font-weight:900;display:inline-flex}.timer-pause-button span{color:var(--yellow);font-size:11px}.timer-pause-button:hover:not(:disabled){border-color:var(--yellow);transform:translateY(-1px)}.timer-pause-button.paused{background:var(--yellow);color:var(--ink)}.timer-pause-button.paused span{color:var(--purple)}.timer-pause-button:disabled{cursor:not-allowed;opacity:.38}@keyframes lesson-slide-in{0%{opacity:0;transform:translate(18px)}to{opacity:1;transform:translate(0)}}@keyframes orbit-float{0%,to{translate:0}50%{translate:0 -7px}}.daily-time span,.meter-copy small{color:#a8a8a4;font-size:8px;font-weight:800}.meter-copy>div:first-child,.unlock-meter>div:first-child{justify-content:space-between;gap:10px;margin-block-end:3px;font-size:11px;font-weight:800;display:flex}.meter-track{background:#444440;border-radius:999px;width:100%;height:9px;overflow:hidden}.meter-track span{border-radius:inherit;background:linear-gradient(90deg, var(--lime), var(--yellow));height:100%;transition:width .26s;display:block}.activity-section{border-block-start:1px solid #15151521;padding-block:58px 72px}.section-heading{justify-content:space-between;align-items:end;gap:30px;margin-block-end:24px;display:flex}.section-label{color:var(--purple);margin:0 0 8px}.section-heading h2,.learning-path h2,.free-note h2{letter-spacing:-.055em;margin:0;font-size:clamp(34px,4vw,58px);line-height:1}.section-heading>p{color:var(--muted);margin:0 0 4px;font-size:13px;font-weight:650}.activity-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.activity-card{border:2px solid var(--ink);background:var(--paper);text-align:start;border-radius:20px;flex-direction:column;align-items:stretch;min-height:236px;padding:20px;transition:transform .16s,box-shadow .16s;display:flex;position:relative}.activity-card.selected{box-shadow:6px 6px 0 var(--ink);transform:translate(-3px,-3px)}.activity-card:hover:not(.selected){box-shadow:6px 6px 0 var(--ink)}.activity-card.lime .activity-number{background:var(--lime)}.activity-card.purple .activity-number{background:var(--purple);color:#fff}.activity-card.pink .activity-number{background:var(--pink)}.activity-card.cyan .activity-number{background:var(--cyan)}.activity-card.orange .activity-number{background:#ff9a62}.activity-card.stripe{background:repeating-linear-gradient(130deg,#ffe7f0 0 18px,#fff5b9 18px 36px)}.activity-card.sunset{background:linear-gradient(145deg,#fff3c7,#ffd4df 54%,#dcd2ff)}.activity-number{border:2px solid var(--ink);width:44px;height:44px;box-shadow:3px 3px 0 var(--ink);border-radius:12px;place-items:center;font-size:12px;font-weight:950;display:inline-grid}.activity-kicker{color:var(--muted);margin-block:23px 8px;font-size:9px}.activity-card strong{letter-spacing:-.035em;font-size:19px;line-height:1.05;display:block}.activity-card strong span{margin-block-start:5px;font-size:16px;display:block}.activity-description{color:var(--muted);margin-block:12px 18px;font-size:12px;font-weight:600;line-height:1.45}.activity-time{border-block-start:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;margin-block-start:auto;padding-block-start:13px;font-size:11px;font-weight:900;display:flex}.activity-time b{font-size:17px}.game-demo{border:3px solid var(--ink);background:var(--paper);min-height:330px;box-shadow:var(--shadow);border-radius:28px;grid-template-columns:minmax(280px,.85fr) minmax(320px,1.15fr);align-items:center;gap:clamp(28px,5vw,76px);margin-block-start:22px;padding:clamp(28px,4vw,54px);scroll-margin-block-start:18px;display:grid}.game-stage-bar{flex-wrap:wrap;grid-column:1/-1;justify-content:space-between;align-items:center;gap:8px 12px;margin-block-end:6px;display:flex}.game-bar-theme{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.signed-out-shell{background:var(--paper);justify-content:center;align-items:center;min-height:100svh;padding:24px;display:flex}.signed-out-card{text-align:center;background:var(--paper);border:3px solid var(--ink);width:min(520px,100%);box-shadow:8px 8px 0 var(--ink);border-radius:24px;padding:clamp(28px,5vw,44px)}.signed-out-card .brand-mark{background:var(--lime,#cdff50);border:2.5px solid var(--ink);border-radius:14px;justify-content:center;align-items:center;width:52px;height:52px;margin-bottom:12px;font-size:28px;font-weight:900;display:inline-flex}.signed-out-card h1{margin:6px 0 14px;font-size:clamp(1.3rem,3vw,1.7rem)}.signed-out-card p{margin:0 0 12px;line-height:1.55}.signed-out-card .signed-out-sub{opacity:.62;font-size:.85rem}.signed-out-card .button{margin-top:10px}.google-signin{flex-direction:column;align-items:center;gap:10px;margin:22px 0 18px;display:flex}.google-signin-label{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:11px;font-weight:900;margin:0!important}.google-signin-button{justify-content:center;min-height:44px;display:flex}.google-signin-status{opacity:.75;font-size:12px;margin:0!important}.google-signin-status.error{color:#c8102e;opacity:1}.signout-link{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline}.game-exit-button{font:inherit;letter-spacing:.01em;color:var(--ink);background:var(--paper);border:2.5px solid var(--ink);cursor:pointer;box-shadow:3px 3px 0 var(--ink);border-radius:999px;align-items:center;gap:8px;padding:9px 20px;font-weight:800;transition:transform .12s,box-shadow .12s,background .12s,color .12s;display:inline-flex}.game-exit-button:hover{box-shadow:5px 5px 0 var(--ink);background:var(--ink);color:var(--paper);transform:translate(-1px,-1px)}.game-exit-button:active{box-shadow:1px 1px 0 var(--ink);transform:translate(2px,2px)}.game-exit-button span{font-size:1.15em;line-height:1}#game-stage{position:relative}.exit-confirm-overlay{z-index:40;background:#0c0a1899;background:var(--ink);border-radius:28px;justify-content:center;align-items:center;padding:20px;display:flex;position:absolute;inset:0}@supports (color:color-mix(in lab, red, red)){.exit-confirm-overlay{background:color-mix(in srgb, var(--ink) 62%, transparent)}}.exit-confirm-overlay{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.exit-confirm-card{text-align:center;background:var(--paper);border:3px solid var(--ink);width:min(440px,100%);box-shadow:8px 8px 0 var(--ink);border-radius:22px;padding:clamp(24px,4vw,40px)}.exit-confirm-card h3{margin:6px 0 10px;font-size:clamp(1.3rem,3vw,1.7rem)}.exit-confirm-card>p:not(.demo-label){opacity:.8;margin:0}.exit-confirm-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-block-start:22px;display:flex}.exit-confirm-actions .button kbd{margin-inline-start:6px}.demo-copy{max-width:630px}.game-demo>.demo-copy:only-child{grid-column:1/-1}.demo-label{color:var(--purple);margin:0 0 12px}.game-demo h3{letter-spacing:-.055em;margin:0;font-size:clamp(28px,3.2vw,48px);line-height:1}.game-demo p:not(.demo-label,.form-message){max-width:650px;color:var(--muted);font-size:15px;font-weight:600;line-height:1.65}.game-demo .button{margin-block-start:12px}.game-demo .button:disabled{cursor:not-allowed;opacity:.42;transform:none}.word-rain-game{grid-column:1/-1;grid-template-columns:minmax(360px,1.3fr) minmax(300px,.7fr);align-items:stretch;gap:clamp(22px,4vw,54px);width:100%;display:grid}.word-rain-board{border:3px solid var(--ink);background:radial-gradient(circle at 20% 20%,#fffffff2 0 3px,#0000 4px),linear-gradient(#8bf1ed 0%,#dffbf8 64%,#fff4c4 82%);border-radius:22px;min-height:430px;position:relative;overflow:hidden}.sky-cloud{background:#ffffffb8;border-radius:999px;width:80px;height:24px;position:absolute}.cloud-one{top:7%;left:8%}.cloud-two{top:17%;right:8%;transform:scale(.7)}.rain-word{z-index:3;border:2px solid var(--ink);background:var(--yellow);min-width:74px;box-shadow:3px 3px 0 var(--ink);text-align:center;border-radius:999px;padding:8px 12px;font-size:20px;font-weight:950;transition:top 80ms linear;display:grid;position:absolute;transform:translate(-50%)}.rain-word.targeted{border-color:var(--purple);background:var(--lime);box-shadow:0 0 0 6px #c7ff4240, 4px 4px 0 var(--purple);transform:translate(-50%)scale(1.08)}.rain-word small{color:#5b5331;margin-block-start:1px;font-size:7px;font-weight:850}.sea-water{z-index:4;border-block-start:3px solid var(--ink);color:#fff;text-align:center;background:linear-gradient(#5cd5e9,#286bce);height:17%;position:absolute;inset:auto 0 0}.sea-water i{background:#5cd5e9;border-radius:50%;width:38%;height:16px;position:absolute;top:-8px}.sea-water i:first-child{left:-5%}.sea-water i:nth-child(2){left:31%}.sea-water i:nth-child(3){right:-5%}.sea-water b{letter-spacing:.18em;font-size:10px;position:relative;top:26px}.sea-water.splash{animation:.48s water-splash}.capture-burst{z-index:8;color:var(--pink);text-shadow:2px 2px 0 var(--ink);pointer-events:none;place-items:center;font-size:52px;font-weight:950;animation:.7s cubic-bezier(.18,.84,.34,1) both capture-pop;display:grid;position:absolute;transform:translate(-50%,-50%)}.capture-burst b{color:var(--ink);text-shadow:none;font-size:15px;position:absolute}.word-rain-console{flex-direction:column;justify-content:center;display:flex}.game-scorebar{grid-template-columns:repeat(3,1fr);gap:7px;margin-block-end:22px;display:grid}.game-scorebar span{border:1.5px solid var(--ink);text-align:center;background:#f1efff;border-radius:10px;gap:2px;padding:9px;font-size:8px;font-weight:900;display:grid}.game-scorebar b{color:var(--purple);font-size:18px}.word-rain-console label{margin-block:18px 8px;font-size:11px;font-weight:900;display:block}.word-rain-console input.input-error{background:#fff0f5;border-color:#b31548;animation:.34s input-shake}.game-reset{border:1px solid var(--line);color:var(--muted);font:inherit;cursor:pointer;background:0 0;border-radius:999px;align-self:flex-start;padding:7px 10px;font-size:9px;font-weight:850}@keyframes water-splash{0%,to{transform:translateY(0)}35%{transform:translateY(-14px)scaleY(1.18)}}@keyframes capture-pop{0%{opacity:0;transform:translate(-50%,-50%)scale(.2)rotate(-25deg)}28%{opacity:1;transform:translate(-50%,-50%)scale(1.35)rotate(10deg)}to{opacity:0;transform:translate(-50%,-115%)scale(.82)rotate(0)}}@keyframes input-shake{0%,to{transform:translate(0)}25%{transform:translate(-7px)}50%{transform:translate(6px)}75%{transform:translate(-3px)}}.demo-form label{margin-block:22px 8px;font-size:12px;font-weight:900;display:block}.inline-form{gap:10px;display:flex}.inline-form input{border:2px solid var(--ink);background:var(--ivory);border-radius:12px;flex:1;min-width:0;padding:12px 14px;font-size:20px;font-weight:800}.inline-form .button{margin:0}.missing-demo{text-align:center;grid-column:1/-1}.progressive-puzzle{justify-self:center;width:min(720px,100%)}.puzzle-head{justify-content:space-between;align-items:center;gap:16px;display:flex}.puzzle-head>b{color:var(--purple);font-size:13px}.puzzle-progress{background:#dedcd2;border-radius:99px;width:min(420px,100%);height:8px;margin:18px auto 0;overflow:hidden}.puzzle-progress span{border-radius:inherit;background:var(--lime);height:100%;transition:width .24s;display:block}.missing-word{justify-content:center;gap:12px;margin-block:24px;font-size:70px;font-weight:950;display:flex}.missing-word span{border:3px dashed var(--purple);background:#f0edff;border-radius:16px;place-items:center;width:90px;height:90px;display:inline-grid}.answer-options{justify-content:center;gap:12px;display:flex}.answer-options button{border:2px solid var(--ink);background:var(--paper);border-radius:12px;width:58px;height:58px;font-size:22px;font-weight:900}.answer-options button:hover,.answer-options button.chosen{background:var(--yellow);box-shadow:3px 3px 0 var(--ink);transform:translate(-2px,-2px)}.answer-options button.correct{background:var(--lime)}.crossword-game-wrap{grid-column:1/-1;grid-template-columns:minmax(330px,.86fr) minmax(420px,1.14fr);align-items:start;gap:clamp(30px,5vw,72px);width:100%;display:grid}.crossword-board-column{justify-self:center;gap:10px;width:100%;max-width:470px;display:grid}.crossword-board-heading{letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;align-items:center;padding-inline:4px;font-size:12px;font-weight:950;display:flex}.crossword-board-heading b{border:2px solid var(--ink);background:var(--lime);letter-spacing:0;border-radius:999px;padding:5px 9px}.crossword-copy .puzzle-progress{margin-inline:0}.crossword-grid{aspect-ratio:1;border:4px solid var(--ink);background:var(--ink);width:min(430px,100%);box-shadow:7px 7px 0 var(--purple);border-radius:18px;gap:3px;padding:8px;display:grid}@supports (color:color-mix(in lab, red, red)){.crossword-grid{box-shadow:7px 7px 0 color-mix(in srgb, var(--purple) 34%, transparent)}}.crossword-grid{transition:box-shadow .25s,transform .25s}.crossword-block{background:radial-gradient(circle at 30% 30%,#ffffff0e 0 2px,#0000 3px),#262623;border-radius:3px;min-width:0}.crossword-cell{background:var(--paper);min-width:0;color:var(--ink);cursor:pointer;border:0;border-radius:4px;place-items:center;transition:background .18s,box-shadow .18s,transform .18s;display:grid;position:relative;overflow:hidden;box-shadow:inset 0 0 0 2px #0000}.crossword-cell small{z-index:2;color:var(--ink);position:absolute;inset-block-start:4px;inset-inline-start:5px}@supports (color:color-mix(in lab, red, red)){.crossword-cell small{color:color-mix(in srgb, var(--ink) 70%, transparent)}}.crossword-cell small{pointer-events:none;font-size:10px;font-weight:950;line-height:1}.crossword-cell input,.crossword-cell strong{width:100%;min-width:0;height:100%;color:var(--ink);text-align:center;caret-color:var(--purple);background:0 0;border:0;outline:0;place-items:center;font-family:inherit;font-size:clamp(22px,4vw,34px);font-weight:950;display:grid}.crossword-cell strong{pointer-events:none;line-height:1}.crossword-cell.active-word{background:#fff5ae}.crossword-cell.selected{z-index:3;background:var(--yellow);box-shadow:inset 0 0 0 4px var(--purple);transform:scale(.96)}.crossword-cell.wrong{background:#ffd9df;animation:.35s both crossword-wrong;box-shadow:inset 0 0 0 4px #d82f49}.crossword-cell.correct{background:var(--lime);animation:.44s cubic-bezier(.2,1.5,.4,1) both crossword-correct;box-shadow:inset 0 0 0 2px #668d00}.crossword-game-wrap.solved .crossword-grid{box-shadow:9px 9px 0 var(--lime);transform:rotate(-.35deg)translateY(-3px)}@supports (color:color-mix(in lab, red, red)){.crossword-game-wrap.solved .crossword-grid{box-shadow:9px 9px 0 color-mix(in srgb, var(--lime) 70%, var(--ink))}}.crossword-direction-legend{color:var(--muted);justify-content:center;gap:18px;font-size:12px;font-weight:850;display:flex}.crossword-direction-legend span{align-items:center;gap:6px;display:inline-flex}.crossword-direction-legend i{border:2px solid var(--ink);background:var(--paper);width:24px;height:24px;color:var(--purple);border-radius:7px;place-items:center;font-size:16px;font-style:normal;font-weight:950;display:grid}.crossword-copy h3{margin-block:8px 6px}.crossword-status{border:2px solid var(--ink);min-height:46px;margin:0 0 14px;padding:10px 12px}@supports (color:color-mix(in lab, red, red)){.crossword-status{border:2px solid color-mix(in srgb, var(--ink) 22%, transparent)}}.crossword-status{color:var(--muted);background:#ffffff94;border-radius:12px;font-size:13px;font-weight:750;line-height:1.45}.crossword-status.incomplete{color:#6c4b00;background:#fff5c8;border-color:#dc9c00}.crossword-status.wrong{color:#8f152a;background:#fff0f2;border-color:#d82f49}.crossword-status.solved,.crossword-status.correct{color:#365500;background:#efffc6;border-color:#668d00}.crossword-word-entry{border:2px solid var(--ink);background:var(--yellow);border-radius:16px;gap:8px;margin-block:13px 16px;padding:12px;display:grid}@supports (color:color-mix(in lab, red, red)){.crossword-word-entry{background:color-mix(in srgb, var(--yellow) 34%, white)}}.crossword-word-entry{box-shadow:4px 4px 0 var(--purple)}@supports (color:color-mix(in lab, red, red)){.crossword-word-entry{box-shadow:4px 4px 0 color-mix(in srgb, var(--purple) 72%, transparent)}}.crossword-word-entry>label{color:var(--purple);letter-spacing:.08em;font-size:10px;font-weight:950}.crossword-word-entry>div:first-of-type{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;display:grid}.crossword-word-entry input{border:3px solid var(--ink);width:100%;min-width:0;height:48px;color:var(--ink);letter-spacing:.06em;background:#fff;border-radius:12px;outline:0;padding:8px 13px;font-family:inherit;font-size:clamp(20px,3vw,29px);font-weight:950}.crossword-word-entry input:focus{border-color:var(--purple);box-shadow:0 0 0 4px #7548e82b}.crossword-word-entry.wrong input{border-color:#d82f49;animation:.35s both crossword-wrong}.crossword-word-entry.correct input{background:#f0ffc9;border-color:#668d00}.crossword-word-entry>div>span{min-width:42px;color:var(--muted);text-align:center;font:950 12px/1 ui-monospace,SFMono-Regular,Consolas,monospace}.crossword-live-cells{grid-auto-columns:minmax(10px,1fr);grid-auto-flow:column;gap:5px;display:grid}.crossword-live-cells i{background:var(--ink);border-radius:99px;height:5px}@supports (color:color-mix(in lab, red, red)){.crossword-live-cells i{background:color-mix(in srgb, var(--ink) 14%, transparent)}}.crossword-live-cells i{transition:background .16s,transform .16s}.crossword-live-cells i.filled{background:var(--purple);transform:translateY(-1px)}.crossword-clues{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.crossword-clues section{align-content:start;gap:7px;min-width:0;display:grid}.crossword-clues h4{color:var(--ink);letter-spacing:.02em;margin:0;font-size:12px;font-weight:950}.crossword-clues button{border:2px solid var(--ink);grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:7px;width:100%;padding:9px;display:grid}@supports (color:color-mix(in lab, red, red)){.crossword-clues button{border:2px solid color-mix(in srgb, var(--ink) 24%, transparent)}}.crossword-clues button{color:var(--ink);text-align:start;background:#ffffffad;border-radius:11px;transition:border-color .16s,background .16s,transform .16s}.crossword-clues button:hover{border-color:var(--purple);transform:translateY(-1px)}.crossword-clues button.active{border-color:var(--ink);box-shadow:3px 3px 0 var(--purple);background:#e9e1ff;transform:translate(-2px,-2px)}.crossword-clues button>b{background:var(--ink);width:24px;height:24px;color:var(--paper);border-radius:50%;place-items:center;font-size:11px;display:grid}.crossword-clues button>span{min-width:0;font-size:12px;font-weight:800;line-height:1.3}.crossword-clues button>small{color:var(--muted);white-space:nowrap;font-size:9px;font-weight:900}.crossword-actions{flex-wrap:wrap;gap:9px;margin-block-start:16px;display:flex}.crossword-clear{border:2px solid var(--ink);background:var(--paper);color:var(--ink);border-radius:999px;padding:10px 14px;font-weight:900}.crossword-clear:hover{background:var(--yellow);transform:translateY(-1px)}@keyframes crossword-wrong{0%,to{transform:translate(0)}30%{transform:translate(-4px)}65%{transform:translate(4px)}}@keyframes crossword-correct{0%{transform:scale(.82)}to{transform:scale(1)}}.kpop-demo{grid-column:1/-1;grid-template-columns:auto minmax(280px,1fr) minmax(280px,.8fr);align-items:center;gap:clamp(24px,4vw,56px);display:grid}.kpop-passage blockquote{border-inline-start:5px solid var(--purple);background:#efebff;border-radius:0 14px 14px 0;margin:18px 0 10px;padding:17px;font-size:clamp(20px,2.5vw,32px);font-weight:900;line-height:1.45}.kpop-source{margin-block-start:4px!important;font-size:10px!important;font-weight:850!important}.kpop-live-card{border:2px solid var(--ink);background:var(--ivory);border-radius:18px;padding:20px}.kpop-live-card label{margin-block-end:7px;font-size:10px;font-weight:900;display:block}.kpop-live-card textarea{border:2px solid var(--ink);width:100%;min-height:110px;font:inherit;resize:vertical;background:#fff;border-radius:11px;padding:12px;font-size:15px;font-weight:750;line-height:1.55}.record-disc{border:3px solid var(--ink);background:repeating-radial-gradient(circle, var(--ink) 0 5px, #30302e 6px 10px);width:130px;height:130px;box-shadow:7px 7px 0 var(--pink);border-radius:50%;place-items:center;display:grid}.record-disc span{background:var(--lime);border-radius:50%;place-items:center;width:46px;height:46px;font-weight:950;display:grid}.unlock-meter{border:2px solid var(--ink);background:var(--ivory);border-radius:18px;padding:20px}.unlock-meter small{color:var(--muted);margin-block-start:10px;font-size:10px;font-weight:750;display:block}.screen-demo,.travel-demo{grid-column:1/-1;grid-template-columns:minmax(300px,.9fr) minmax(340px,1.1fr);align-items:stretch;gap:clamp(24px,4vw,54px);display:grid}.scene-frame{border:3px solid var(--ink);min-height:310px;box-shadow:7px 7px 0 var(--pink);color:#fff;background:#17172b;border-radius:22px;flex-direction:column;justify-content:flex-end;padding:24px;display:flex;position:relative;overflow:hidden}.scene-genre,.travel-situation{background:var(--yellow);width:fit-content;color:var(--ink);text-transform:uppercase;border-radius:999px;padding:6px 10px;font-size:9px;font-weight:950}.scene-visual{place-items:center;display:grid;position:absolute;inset:0;overflow:hidden}.scene-visual>b{z-index:1;color:#ffffff2e;letter-spacing:-.08em;font-size:clamp(46px,8vw,88px);position:relative}.spotlight{filter:blur(8px);opacity:.55;border-radius:50%;width:230px;height:230px;position:absolute}.spotlight-one{background:var(--purple);inset-block-start:-70px;inset-inline-start:-40px}.spotlight-two{background:var(--pink);inset-block-start:20px;inset-inline-end:-80px}.scene-frame>:not(.scene-visual){z-index:2;position:relative}.scene-frame blockquote,.travel-scene blockquote{letter-spacing:-.045em;margin:18px 0 8px;font-size:clamp(24px,3vw,38px);font-weight:900;line-height:1.25}.scene-frame>p{color:#ffffffb8!important;margin:0!important;font-size:12px!important}.scene-attribution{border-top:1px solid #ffffff29;flex-wrap:wrap;align-items:center;gap:6px 12px;padding-top:10px;margin-top:10px!important;font-size:12px!important;display:flex!important}.scene-attribution .scene-work{font-weight:700;color:#ffffffeb!important}.scene-attribution .scene-speaker{color:#ffffffa8!important}.scene-form,.travel-form{flex-direction:column;justify-content:center;display:flex}.scene-form label,.travel-form label{margin-block:12px 7px;font-size:11px;font-weight:900}.scene-form textarea,.travel-form input{border:2px solid var(--ink);background:var(--ivory);border-radius:12px;width:100%;padding:13px 14px;font-family:inherit;font-size:17px;font-weight:700}.scene-form textarea{resize:vertical;min-height:90px}.scene-result{color:var(--muted);justify-content:space-between;gap:12px;margin-block-start:9px;font-size:11px;font-weight:850;display:flex}.scene-result .complete{color:#0f7656}.travel-scene{border:3px solid var(--ink);min-height:310px;box-shadow:7px 7px 0 var(--cyan);background:radial-gradient(circle at 82% 18%,#85ff4bd1 0 54px,#0000 55px),linear-gradient(145deg,#fff1a6,#ffcfb2 52%,#b8f3ff);border-radius:22px;padding:22px}.travel-mode-tabs{flex-wrap:wrap;gap:7px;margin-block-end:32px;display:flex}.travel-mode-tabs button{border:1.5px solid var(--ink);background:var(--paper);border-radius:999px;padding:8px 10px;font-size:10px;font-weight:900}.travel-mode-tabs button.active{background:var(--ink);color:#fff}.travel-scene blockquote{color:var(--ink)}.travel-scene>p{color:#51514b!important;margin:0!important;font-size:13px!important}.phrase-dots{gap:7px;margin-block-start:26px;display:flex}.phrase-dots button{border:1px solid var(--ink);background:var(--paper);border-radius:999px;width:25px;height:8px;padding:0}.phrase-dots button.active{background:var(--purple);width:48px}.learning-path{grid-template-columns:minmax(300px,.72fr) minmax(580px,1.28fr);gap:clamp(50px,8vw,120px);padding-block:92px;display:grid}.path-copy>p:not(.section-label){max-width:560px;color:var(--muted);margin-block-start:24px;font-size:16px;font-weight:600;line-height:1.7}.path-badges{flex-direction:column;gap:10px;margin-block-start:28px;display:flex}.path-badges span{border:1.5px solid var(--ink);background:var(--paper);border-radius:999px;width:fit-content;padding:8px 13px;font-size:11px;font-weight:800}.level-track{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;padding:0;list-style:none;display:grid}.level-track li{border:1.5px solid var(--line);background:#fffefab3;border-radius:14px;align-items:center;gap:14px;min-height:66px;padding:10px 14px;display:flex}.level-track li>span{border:1.5px solid var(--ink);background:var(--paper);border-radius:10px;flex:none;place-items:center;width:34px;height:34px;font-size:11px;font-weight:900;display:grid}.level-track li p{margin:0;font-size:12px;font-weight:800}.level-track li.done{border-color:var(--ink);background:#edffd1}.level-track li.done>span{background:var(--lime)}.level-track li.current{border:2px solid var(--ink);box-shadow:4px 4px 0 var(--ink);background:#f0edff}.level-track li.current>span{background:var(--purple);color:#fff}.level-track li.reward{border-color:var(--ink);background:repeating-linear-gradient(130deg,#ffe7f0 0 12px,#fff5b9 12px 24px)}.free-note{border:3px solid var(--ink);background:var(--lime);box-shadow:var(--shadow);border-radius:28px;grid-template-columns:1fr 1fr;align-items:end;gap:50px;margin-block-end:80px;padding:clamp(28px,4vw,50px);display:grid}.free-note h2{max-width:650px}.free-note>p{max-width:620px;margin:0;font-size:16px;font-weight:700;line-height:1.7}footer{border-block-start:1px solid #1515152e;grid-template-columns:1fr auto 1fr;align-items:center;gap:30px;padding-block:38px 50px;display:grid}footer>p{color:var(--muted);margin:0;font-size:12px;font-weight:700}footer>div{flex-wrap:wrap;justify-self:end;gap:22px;font-size:12px;font-weight:800;display:flex}.return-sound-toggle .speech-toggle-track:before{content:"↵";font-size:12px}.return-sound-toggle input:checked+.speech-toggle-track{background:var(--cyan)}.return-sound-toggle .speech-toggle-copy{min-width:96px}.target-sentence{animation:.32s both sentence-arrive}.typing-feedback.complete{animation:.3s both success-pop}.lesson-finish-card{border:2px solid var(--ink);background:linear-gradient(135deg, var(--lime), #faffaa 55%, var(--cyan));box-shadow:4px 4px 0 var(--ink);border-radius:16px;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;margin-block-start:16px;padding:18px;animation:.5s cubic-bezier(.2,.9,.2,1) both finish-reveal;display:grid;position:relative;overflow:hidden}.lesson-finish-card:before,.lesson-finish-card:after{color:var(--purple);content:"✦  ·  ✦  ·  ✦";font-size:17px;animation:2s ease-in-out infinite alternate confetti-drift;position:absolute}.lesson-finish-card:before{inset-block-start:8px;inset-inline-end:22px}.lesson-finish-card:after{animation-delay:-1s;inset-block-end:8px;inset-inline-start:64px}.finish-mark{border:2px solid var(--ink);background:var(--paper);width:48px;height:48px;box-shadow:3px 3px 0 var(--ink);border-radius:50%;place-items:center;font-size:23px;font-weight:950;display:grid}.lesson-finish-card h3,.lesson-finish-card p{margin:2px 0 0}.lesson-finish-card h3{font-size:20px}.lesson-finish-card p{color:var(--muted);font-size:10px;font-weight:750}.lesson-finish-card small{letter-spacing:.08em;font-size:9px;font-weight:950}.activity-card.selected .activity-number{animation:.7s both card-beat}.keyboard-row kbd.active,.next-key-card{animation:.9s ease-in-out infinite alternate key-pulse}.privacy-notice{z-index:80;border:2px solid var(--ink);background:var(--paper);width:min(760px,100% - 28px);box-shadow:7px 7px 0 var(--ink);border-radius:18px;grid-template-columns:auto 1fr auto auto;align-items:center;gap:14px;padding:14px 16px;animation:.42s both notice-rise;display:grid;position:fixed;inset-block-end:18px;inset-inline:50%;transform:translate(-50%)}.privacy-notice>span{background:var(--lime);border-radius:50%;place-items:center;width:34px;height:34px;display:grid}.privacy-notice b{font-size:12px}.privacy-notice p{color:var(--muted);margin:3px 0 0;font-size:10px;line-height:1.4}.privacy-notice a{font-size:11px;font-weight:850;text-decoration:underline}.privacy-notice button{border:1.5px solid var(--ink);background:var(--yellow);font:inherit;border-radius:999px;padding:9px 13px;font-size:11px;font-weight:900}.legal-shell,.profile-shell{width:min(1180px,100% - 48px);margin-inline:auto;padding-block-end:80px}.legal-header,.profile-header{border-block-end:1px solid #15151524;justify-content:space-between;align-items:center;gap:22px;min-height:88px;display:flex}.profile-header nav{flex-wrap:wrap;gap:18px;font-size:12px;font-weight:850;display:flex}.legal-hero{border-block-end:2px solid var(--ink);padding-block:74px 52px}.legal-hero h1,.profile-welcome h1{letter-spacing:-.07em;max-width:900px;margin:0;font-size:clamp(46px,7vw,90px);line-height:.94}.legal-hero>p:not(.section-label),.profile-welcome p{color:var(--muted);font-weight:700}.legal-status-row{flex-wrap:wrap;gap:8px;margin-block-start:28px;display:flex}.legal-status-row span,.benefit-pill{border:1.5px solid var(--ink);background:var(--paper);border-radius:999px;padding:7px 10px;font-size:9px;font-weight:900}.legal-status-row .preview-status{background:var(--yellow)}.legal-layout{grid-template-columns:220px minmax(0,1fr);gap:clamp(38px,7vw,90px);padding-block-start:50px;display:grid}.legal-nav{border:2px solid var(--ink);background:var(--paper);height:fit-content;box-shadow:4px 4px 0 var(--ink);border-radius:16px;flex-direction:column;gap:10px;padding:18px;font-size:11px;display:flex;position:sticky;inset-block-start:24px}.legal-nav b{margin-block-end:4px}.legal-nav a{color:var(--muted);font-weight:750}.legal-nav a:hover{color:var(--purple)}.legal-content{min-width:0}.legal-section{padding-block:12px 56px;scroll-margin-block-start:24px}.legal-section+.legal-section{border-block-start:1px solid var(--line);padding-block-start:46px}.legal-kicker{letter-spacing:.08em;color:var(--purple)!important;margin:0 0 9px!important;font-size:10px!important;font-weight:950!important}.legal-section h2{letter-spacing:-.055em;margin:0 0 18px;font-size:clamp(30px,4vw,52px);line-height:1}.legal-section h3{margin:30px 0 8px;font-size:18px}.legal-section>p,.legal-section li{color:#50504b;font-size:14px;font-weight:600;line-height:1.75}.legal-section li+li{margin-block-start:8px}.data-snapshot-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-block-start:24px;display:grid}.data-snapshot-grid>div{border:1.5px solid var(--ink);background:var(--paper);border-radius:12px;gap:5px;min-height:86px;padding:14px;display:grid}.data-snapshot-grid span{color:var(--muted);font-size:9px;font-weight:850}.data-snapshot-grid b{font-size:13px}.policy-table{border:1.5px solid var(--ink);border-radius:14px;margin-block-start:14px;overflow:hidden}.policy-table [role=row]{grid-template-columns:.8fr 1.2fr;display:grid}.policy-table [role=row]+[role=row]{border-block-start:1px solid var(--line)}.policy-table b,.policy-table span{padding:12px 14px;font-size:11px;line-height:1.55}.policy-table b{background:var(--ink);color:#fff}.policy-table span+span,.policy-table b+b{border-inline-start:1px solid var(--line)}.launch-gate{box-shadow:6px 6px 0 var(--ink);background:#fff3bd;border-radius:20px;border:2px solid var(--ink)!important;padding:30px!important}.launch-checklist{gap:8px;margin-block:22px;display:grid}.launch-checklist span{border:1px solid var(--line);background:#ffffffa6;border-radius:9px;padding:10px 12px;font-size:11px;font-weight:750}.launch-checklist b{color:var(--purple);margin-inline-end:7px}.legal-note{border-block-start:1px dashed var(--ink);padding-block-start:16px;font-size:11px!important}.profile-welcome{justify-content:space-between;align-items:center;gap:28px;padding-block:64px 38px;display:flex}.profile-welcome h1{font-size:clamp(38px,5.5vw,70px)}.profile-avatar{border:3px solid var(--ink);background:var(--pink);width:94px;height:94px;box-shadow:7px 7px 0 var(--ink);border-radius:50%;flex:none;place-items:center;font-size:36px;font-weight:950;display:grid}.profile-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.profile-stat{border:2px solid var(--ink);background:var(--paper);box-shadow:3px 3px 0 var(--ink);border-radius:16px;align-items:center;gap:13px;padding:16px;display:flex}.profile-stat>span{font-size:24px}.profile-stat div{gap:3px;display:grid}.profile-stat small{color:var(--muted);font-size:9px;font-weight:850}.profile-stat b{font-size:20px}.streak-stat{background:#fff0b8}.profile-main-grid,.reward-grid{grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:14px;margin-block-start:14px;display:grid}.reward-grid{grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr)}.profile-card{border:2px solid var(--ink);background:var(--paper);box-shadow:5px 5px 0 var(--ink);border-radius:20px;padding:24px}.profile-card h2{letter-spacing:-.05em;margin:0;font-size:clamp(26px,3vw,40px)}.profile-card-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.profile-card-heading>b{font-size:28px}.profile-progress-track{border:1.5px solid var(--ink);background:#dddcd4;border-radius:999px;height:11px;margin-block:22px 13px;overflow:hidden}.profile-progress-track span{border-radius:inherit;background:linear-gradient(90deg,var(--purple),var(--pink));height:100%;transition:width .45s;display:block}.lesson-summary-row{flex-wrap:wrap;gap:8px;display:flex}.lesson-summary-row span{background:#efeee7;border-radius:9px;padding:8px 10px;font-size:10px;font-weight:750}.progress-card .button{margin-block-start:22px}.level-card{background:linear-gradient(145deg,#e9e2ff,#ffddeb);position:relative;overflow:hidden}.level-orbit{border:3px solid var(--ink);background:var(--yellow);width:110px;height:110px;box-shadow:6px 6px 0 var(--ink);border-radius:50%;place-items:center;margin:22px auto 0;animation:3s ease-in-out infinite profile-orbit;display:grid}.level-orbit span{font-size:42px;font-weight:950}.level-card>small{color:var(--muted);text-align:center;font-size:9px;font-weight:800;display:block}.week-rhythm{grid-template-columns:repeat(7,1fr);gap:6px;margin-block:24px;display:grid}.week-rhythm span{place-items:center;gap:6px;display:grid}.week-rhythm i{border:1.5px solid var(--ink);background:#ecebe4;border-radius:12px;place-items:center;width:38px;height:38px;font-size:10px;font-style:normal;font-weight:900;display:grid}.week-rhythm span.active i{background:var(--lime);animation:.4s both success-pop}.week-rhythm small{color:var(--muted);font-size:8px}.visit-card>p{color:var(--muted);font-size:12px}.badge-list,.empty-reward{gap:9px;margin-block-start:20px;display:grid}.badge-list>div,.empty-reward{border:1px solid var(--line);background:#faf9f3;border-radius:12px;align-items:center;gap:11px;padding:12px;display:flex}.badge-list span,.empty-reward>span{background:var(--yellow);border-radius:50%;flex:none;place-items:center;width:34px;height:34px;display:grid}.badge-list p,.empty-reward p{gap:3px;margin:0;display:grid}.badge-list small,.empty-reward small{color:var(--muted);font-size:9px}.account-note{border:1.5px dashed var(--ink);border-radius:14px;justify-content:space-between;align-items:center;gap:24px;margin-block-start:22px;padding:18px;display:flex}.account-note div{gap:3px;font-size:11px;display:grid}.account-note span{color:var(--muted)}.account-note p{max-width:620px;color:var(--muted);margin:0;font-size:10px;line-height:1.5}.admin-shell{width:min(1380px,100% - 48px);margin-inline:auto;padding-block-end:80px}.admin-header{border-block-end:1px solid #15151524;justify-content:space-between;align-items:center;gap:22px;min-height:88px;display:flex}.admin-header nav{flex-wrap:wrap;gap:18px;font-size:12px;font-weight:850;display:flex}.admin-hero{justify-content:space-between;align-items:flex-end;gap:30px;padding-block:50px 34px;display:flex}.admin-hero h1{letter-spacing:-.07em;margin:0;font-size:clamp(44px,6vw,78px);line-height:.95}.admin-owner{border:1.5px solid var(--ink);background:var(--yellow);box-shadow:3px 3px 0 var(--ink);border-radius:12px;gap:3px;padding:12px 15px;display:grid}.admin-owner small{font-size:8px;font-weight:850}.admin-owner b{font-size:11px}.admin-grid{grid-template-columns:minmax(0,1.2fr) minmax(340px,.8fr);align-items:start;gap:18px;display:grid}.admin-editor,.admin-library,.admin-denied-card{border:2px solid var(--ink);background:var(--paper);box-shadow:6px 6px 0 var(--ink);border-radius:22px;padding:26px}.admin-editor-heading,.admin-library-heading{justify-content:space-between;align-items:flex-start;gap:14px;margin-block-end:20px;display:flex}.admin-editor h2,.admin-library h2{letter-spacing:-.055em;margin:0;font-size:clamp(27px,3vw,40px)}.admin-editor>label,.admin-form-row label{color:var(--ink);gap:7px;margin-block-end:14px;font-size:10px;font-weight:900;display:grid}.admin-form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.admin-editor input:not([type=checkbox]),.admin-editor select,.admin-editor textarea,.admin-library select{border:1.5px solid var(--ink);background:var(--ivory);width:100%;min-width:0;color:var(--ink);font:inherit;border-radius:10px;padding:11px 12px;font-size:12px;font-weight:700}.admin-editor textarea{resize:vertical;min-height:105px;line-height:1.55}.admin-audio-hint{color:#2d6269;background:#e8f5f7;border-radius:10px;margin:-3px 0 15px;padding:10px 12px;font-size:9px;font-weight:750;line-height:1.5}.publish-control{border:1.5px solid var(--ink);border-radius:12px;gap:6px;margin-block-start:5px;padding:14px;display:grid}.publish-control.ready{background:#e9f8bf}.publish-control.blocked{background:#f2eee6}.publish-control label{align-items:center;gap:8px;font-size:12px;font-weight:950;display:flex}.publish-control input{width:18px;height:18px;accent-color:var(--purple)}.publish-control p{color:var(--muted);margin:0;font-size:9px;font-weight:700;line-height:1.5}.admin-editor-actions{align-items:center;gap:14px;margin-block-start:18px;display:flex}.admin-editor-actions p{color:var(--muted);margin:0;font-size:10px;font-weight:750}.admin-library{max-height:calc(100vh - 32px);position:sticky;inset-block-start:16px;overflow:hidden}.admin-library-heading select{width:auto;max-width:150px}.admin-item-list{gap:8px;max-height:calc(100vh - 185px);padding:2px 4px 10px 2px;display:grid;overflow-y:auto}.admin-item-list article{border:1px solid var(--line);background:#f8f7f0;border-radius:12px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:9px;display:grid}.admin-item-list article.selected{border:2px solid var(--purple);background:#eee9ff}.admin-item-main{min-width:0;color:inherit;font:inherit;text-align:start;cursor:pointer;background:0 0;border:0;gap:6px;display:grid}.admin-item-main>span{flex-wrap:wrap;gap:5px;display:flex}.admin-item-main i,.admin-item-main em{border-radius:999px;padding:4px 6px;font-size:7px;font-style:normal;font-weight:900}.admin-item-main i{background:var(--ink);color:#fff}.admin-item-main em.published{background:var(--lime)}.admin-item-main em.draft{background:#dddcd4}.admin-item-main b{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.admin-item-main small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:9px;font-weight:650;overflow:hidden}.admin-delete{color:#a83d55;font:inherit;cursor:pointer;background:0 0;border:0;padding:7px;font-size:8px;font-weight:900}.admin-empty{color:var(--muted);text-align:center;justify-items:center;gap:6px;padding:44px 16px;display:grid}.admin-empty span{background:var(--yellow);width:42px;height:42px;color:var(--ink);border-radius:50%;place-items:center;font-size:24px;display:grid}.admin-empty p{margin:0;font-size:10px}.admin-denied{padding-block-start:24px}.admin-denied>.brand{margin-block-end:50px}.admin-denied-card{text-align:center;max-width:720px;margin-inline:auto}.admin-denied-card h1{letter-spacing:-.065em;margin:0;font-size:clamp(36px,6vw,70px)}.admin-denied-card p{color:var(--muted)}.admin-denied-card .button{margin-block-start:14px}@keyframes sentence-arrive{0%{opacity:.15;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes success-pop{0%{transform:scale(.96)}60%{transform:scale(1.03)}to{transform:scale(1)}}@keyframes finish-reveal{0%{opacity:0;transform:translateY(12px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes confetti-drift{0%{transform:translateY(-2px)rotate(-4deg)}to{transform:translateY(5px)rotate(4deg)}}@keyframes card-beat{0%,to{transform:rotate(0)scale(1)}35%{transform:rotate(-5deg)scale(1.08)}70%{transform:rotate(4deg)scale(1.04)}}@keyframes key-pulse{0%{filter:saturate()}to{filter:saturate(1.2)drop-shadow(0 0 5px #ffdc2db3)}}@keyframes notice-rise{0%{opacity:0;transform:translate(-50%,18px)}to{opacity:1;transform:translate(-50%)}}@keyframes profile-orbit{0%,to{transform:translateY(0)rotate(-2deg)}50%{transform:translateY(-7px)rotate(2deg)}}@media (width<=1360px){.audio-control-cluster .speech-toggle-copy{display:none}.audio-control-cluster .voice-picker{min-width:116px}}@media (width<=1180px){.language-picker select{min-width:156px}.hero{grid-template-columns:1fr;padding-block-start:60px}.hero-copy{max-width:860px}.practice-stage{width:min(760px,100%);margin-inline:auto}.activity-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.activity-card:nth-child(4),.activity-card:nth-child(5){grid-column:span 1}.learning-path{grid-template-columns:1fr}}@media (width<=1120px){.nav-links{justify-content:flex-end;gap:0}.nav-links a:not([href=\/my]){display:none}}@media (width<=900px){.topbar{grid-template-columns:minmax(0,1fr) auto}.nav-links{display:none}}@media (width<=820px){.topbar,.hero,.activity-section,.learning-path,.free-note,footer{width:min(100% - 28px,1480px)}.topbar{grid-template-columns:1fr auto}.header-tools{gap:7px}.audio-control-cluster .voice-picker{min-width:104px}.audio-control-cluster .voice-picker>span:first-child,.audio-control-cluster .voice-picker i,.speech-toggle-copy,.nav-links{display:none}.hero{min-height:0;padding-block:44px 54px}.hero h1{font-size:clamp(52px,13vw,78px)}.practice-card{border-radius:28px 14px;padding:20px}.practice-card-header{padding-inline-end:58px}.curriculum-progress{grid-template-columns:repeat(3,minmax(0,1fr))}.practice-workspace{grid-template-columns:1fr}.practice-guidance-column{min-height:390px}.streak{position:absolute;inset-block-start:64px;inset-inline-end:0}.activity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.activity-card:last-child{grid-column:1/-1}.game-demo,.kpop-demo,.screen-demo,.travel-demo,.free-note,.word-rain-game,.crossword-game-wrap{grid-template-columns:1fr}.word-rain-board{min-height:390px}.crossword-grid{justify-self:center}.record-disc{width:96px;height:96px}.section-heading{flex-direction:column;align-items:flex-start}footer{grid-template-columns:1fr}footer>div{justify-self:start}.lesson-finish-card{grid-template-columns:auto 1fr}.lesson-finish-card .button{grid-column:1/-1;width:100%}.privacy-notice{grid-template-columns:auto 1fr auto}.privacy-notice>a{grid-column:2}.privacy-notice>button{grid-area:1/3/span 2}.legal-shell,.profile-shell,.admin-shell{width:min(100% - 28px,1180px)}.legal-layout,.profile-main-grid,.reward-grid,.admin-grid{grid-template-columns:1fr}.admin-library{max-height:none;position:static}.admin-item-list{max-height:620px}.legal-nav{grid-template-columns:repeat(2,minmax(0,1fr));display:grid;position:static}.legal-nav b{grid-column:1/-1}.data-snapshot-grid,.profile-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-welcome{align-items:flex-start}.account-note{flex-direction:column;align-items:flex-start}}@media (width<=540px){.topbar .brand>span:last-child{display:none}.brand{font-size:17px}.brand-mark{width:34px;height:34px}.language-picker select{min-width:106px;padding-inline:30px 20px}.header-tools{flex-wrap:wrap;justify-content:flex-end;max-width:calc(100vw - 76px)}.audio-control-cluster{order:2;max-width:100%}.audio-control-cluster .speech-toggle{padding-inline:6px}.audio-control-cluster .voice-picker{min-width:92px;padding-inline:5px}.audio-control-cluster .voice-picker select{max-width:82px}.sound-preview-button{width:34px}.hero-actions,.hero-actions .button{width:100%}.practice-stage{padding:12px 0 24px}.practice-card{box-shadow:6px 8px 0 var(--ink)}.practice-card-header{padding-inline-end:0}.curriculum-progress{grid-template-columns:repeat(2,minmax(0,1fr))}.practice-card:before,.streak{display:none}.typing-panel{padding:16px}.typing-meta{flex-direction:column;align-items:flex-start;gap:4px}.keyboard-tools{grid-template-columns:1fr;gap:7px}.keyboard-layout-picker{justify-content:space-between}.keyboard-map{padding-block-end:102px;padding-inline:6px}.keyboard-map-legend{flex-wrap:wrap;align-items:flex-start}.keyboard-map-legend b{width:100%}.keyboard-row{gap:3px}.hand-overlay{transform-origin:bottom;inset-block-start:50px;inset-inline:3%;transform:scale(.88)}.crossword-board-column{max-width:390px}.crossword-grid{box-shadow:5px 5px 0 var(--purple);border-width:3px;border-radius:14px;gap:2px;padding:6px}@supports (color:color-mix(in lab, red, red)){.crossword-grid{box-shadow:5px 5px 0 color-mix(in srgb, var(--purple) 34%, transparent)}}.crossword-cell input,.crossword-cell strong{font-size:clamp(21px,8vw,30px)}.crossword-clues{grid-template-columns:1fr}.crossword-actions>*{flex:1}.lesson-evaluation{grid-template-columns:1fr}.lesson-evaluation dl{width:100%}.lesson-evaluation dl div{flex:1}.daily-meter{grid-template-columns:1fr;gap:10px}.activity-grid,.level-track{grid-template-columns:1fr}.activity-card:last-child{grid-column:auto}.game-demo{box-shadow:5px 5px 0 var(--ink);padding:24px 18px}.word-rain-board{min-height:350px}.rain-word{min-width:62px;padding:7px 9px;font-size:17px}.puzzle-head{flex-direction:column;align-items:flex-start;gap:4px}.inline-form{flex-direction:column}.missing-word{font-size:54px}.missing-word span{width:72px;height:72px}.free-note{box-shadow:5px 5px 0 var(--ink)}.privacy-notice{grid-template-columns:1fr auto}.privacy-notice>span{display:none}.privacy-notice>a{grid-column:1}.privacy-notice>button{grid-column:2}.legal-header,.profile-header,.profile-welcome,.admin-header,.admin-hero{flex-direction:column;align-items:flex-start;padding-block:18px}.legal-header .button{width:100%}.legal-hero{padding-block:50px 34px}.legal-nav,.data-snapshot-grid,.profile-stat-grid,.policy-table [role=row]{grid-template-columns:1fr}.policy-table span+span,.policy-table b+b{border-inline-start:0;border-block-start:1px solid var(--line)}.profile-avatar{width:68px;height:68px;font-size:26px}.week-rhythm{grid-template-columns:repeat(4,1fr)}.admin-form-row{grid-template-columns:1fr;gap:0}.admin-editor,.admin-library{padding:18px}.admin-editor-heading,.admin-editor-actions{flex-direction:column;align-items:stretch}}.hero{transition:grid-template-columns .72s cubic-bezier(.2,.86,.22,1),gap .72s cubic-bezier(.2,.86,.22,1)}.hero-copy,.practice-stage,.practice-card,.hero-copy>*{transition:opacity .62s,transform .72s cubic-bezier(.2,.86,.22,1),max-height .72s cubic-bezier(.2,.86,.22,1),margin .72s cubic-bezier(.2,.86,.22,1)}.hero-copy{max-height:760px;overflow:clip}.hero-copy h1{max-height:310px;overflow:hidden}.hero-description{max-height:180px;overflow:hidden}.trust-row{max-height:110px;overflow:hidden}.hero-actions .button-secondary{max-height:72px;overflow:hidden}.eyebrow{max-height:58px;transition:width .72s cubic-bezier(.2,.86,.22,1),max-height .72s,padding .72s,margin .72s,opacity .55s,transform .72s cubic-bezier(.2,.86,.22,1)}.hero-focus-toggle,.hero-focus-toggle .hero-focus-label,.hero-focus-toggle .hero-focus-arrow{transition:width .65s cubic-bezier(.2,.86,.22,1),min-height .65s,padding .65s,font-size .45s,transform .65s cubic-bezier(.2,.86,.22,1),opacity .45s}.hero-focus-toggle .hero-focus-label{display:inline-block}.hero.practice-preparing .hero-copy{opacity:.88;transform:translate(-6px)}.hero.practice-preparing .practice-stage{filter:saturate(1.06);transform:translateY(-3px)scale(1.012)}.hero.practice-preparing .hero-focus-toggle{box-shadow:5px 5px 0 var(--pink), 0 0 0 8px #ff4f861c}.hero.practice-focus-mode{grid-template-columns:minmax(82px,.12fr) minmax(0,1.88fr);align-items:start;gap:14px;min-height:calc(100svh - 88px);padding-block-start:9px}.practice-focus-mode .hero-copy{z-index:4;opacity:.96;align-self:start;position:sticky;inset-block-start:100px;transform:translate(-7px)}.practice-focus-mode .hero-copy h1,.practice-focus-mode .hero-description,.practice-focus-mode .trust-row,.practice-focus-mode .hero-actions .button-secondary{opacity:0;pointer-events:none;max-height:0;margin:0;overflow:hidden;transform:translate(-28px)scale(.92)}.practice-focus-mode .eyebrow{justify-content:center;width:72px;margin:0 0 12px;padding:9px;font-size:0}.practice-focus-mode .eyebrow span{margin:0 16px 0 0}.practice-focus-mode .hero-actions{margin:0}.practice-focus-mode .hero-actions .button-primary{text-align:center;width:72px;min-height:76px;box-shadow:4px 4px 0 var(--pink);border-radius:18px;gap:3px;padding:10px 6px 8px;font-size:9px;line-height:1.15;display:grid}.practice-focus-mode .hero-actions .button-primary .hero-focus-label{white-space:normal;max-width:58px;font-size:9px}.practice-focus-mode .hero-actions .button-primary .hero-focus-arrow{font-size:19px;transform:none}.practice-focus-mode .practice-stage{padding-inline:4px 12px;animation:.75s cubic-bezier(.18,.95,.24,1) both practice-stage-expand}.practice-focus-mode .practice-card{min-height:calc(100svh - 110px);box-shadow:10px 8px 0 var(--ink), 0 20px 70px #5b3ecb29;border-radius:24px 14px 28px}.practice-focus-mode .typing-panel{background:radial-gradient(circle at 92% 12%, #cdff506b, transparent 20%), var(--paper)}.practice-focus-mode .target-sentence{font-size:clamp(26px,2.6vw,46px)}.practice-focus-mode .keyboard-map{transform-origin:50%;animation:.7s cubic-bezier(.2,1,.3,1) both keyboard-deck-arrive}.practice-card .keyboard-row{transform-origin:50%;transition:opacity .45s,transform .55s cubic-bezier(.2,.92,.3,1),filter .45s}.practice-card.stage-home .keyboard-row.home{z-index:4;transform:scale(1.08)translateY(-3px)}.practice-card.stage-home .keyboard-row.top,.practice-card.stage-home .keyboard-row.bottom{opacity:.2;filter:saturate(.4);transform:scale(.94)}.practice-card.stage-syllable .keyboard-row.top,.practice-card.stage-batchim .keyboard-row.top,.practice-card.stage-double .keyboard-row.top{z-index:3;transform:scale(1.045)translateY(2px)}.practice-card.stage-syllable .keyboard-row.bottom,.practice-card.stage-batchim .keyboard-row.bottom,.practice-card.stage-double .keyboard-row.bottom{opacity:.34;filter:saturate(.55);transform:scale(.96)}.practice-card .keyboard-row kbd{transition:transform .16s cubic-bezier(.2,1.6,.4,1),background .16s,box-shadow .16s,opacity .3s}.practice-card .keyboard-row kbd.active{z-index:8;box-shadow:0 0 0 7px #c7ff4252, 5px 7px 0 var(--ink);transform:translateY(-8px)scale(1.24)}.practice-focus-mode .hand-overlay.is-pressing{animation:.3s cubic-bezier(.2,1.4,.4,1) whole-hand-react}.practice-focus-mode .finger-callout{animation:1.4s ease-in-out infinite alternate finger-callout-beat}.practice-card.is-mastered{animation:1.4s ease-in-out infinite alternate card-mastered-glow}.practice-coach-message{color:#594800;background:#fff7c7;border:1px solid #c8a200;border-radius:10px;align-items:center;gap:8px;margin:8px 0 0;padding:8px 10px;font-size:10px;font-weight:850;animation:.35s both coach-arrive;display:flex}.practice-coach-message span{background:var(--yellow);border-radius:50%;flex:none;place-items:center;width:22px;height:22px;display:grid}.mastery-choice-card{border:3px solid var(--ink);background:radial-gradient(circle at 90% 10%, #ffffffb3 0 3px, transparent 4px), linear-gradient(135deg, #f2ffab, var(--lime) 50%, #9df5ee);box-shadow:6px 6px 0 var(--purple);border-radius:18px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;margin-block-start:14px;padding:18px;animation:.62s cubic-bezier(.16,1.32,.35,1) both mastery-arrive;display:grid;position:relative;overflow:hidden}.practice-workspace.mastery-open{grid-template-columns:1fr}.mastery-choice-card:after{background:conic-gradient(from 45deg, transparent 0 9%, #ffffff59 9% 11%, transparent 11% 24%);content:"";pointer-events:none;animation:12s linear infinite mastery-rays;position:absolute;inset:-20%}.mastery-burst,.mastery-copy,.mastery-actions{z-index:1;position:relative}.mastery-burst{border:3px solid var(--ink);background:var(--pink);width:82px;height:82px;box-shadow:4px 4px 0 var(--ink);color:var(--ink);border-radius:50%;align-content:center;place-items:center;animation:1.1s ease-in-out infinite alternate badge-beat;display:grid;transform:rotate(-6deg)}.mastery-burst span{letter-spacing:.12em;font-size:9px;font-weight:950}.mastery-burst b{font-size:21px;line-height:.9}.mastery-copy small{letter-spacing:.12em;font-size:9px;font-weight:950}.mastery-copy h3{letter-spacing:-.04em;margin:3px 0 4px;font-size:22px}.mastery-copy p{color:#40513d;margin:0;font-size:10px;font-weight:750;line-height:1.45}.mastery-metrics{flex-wrap:wrap;gap:6px;margin-block-start:10px;display:flex}.mastery-metrics span{background:#ffffff80;border:1px solid #15151547;border-radius:999px;align-items:baseline;gap:4px;padding:5px 8px;font-size:8px;font-weight:850;display:flex}.mastery-metrics b{color:var(--purple);font-size:12px}.mastery-actions{gap:8px;min-width:190px;display:grid}.mastery-actions .button{justify-content:flex-start;min-height:42px;padding:9px 13px;font-size:10px}.mastery-actions kbd,.word-rain-console .button kbd,.crossword-actions kbd{font:inherit;background:#ffffff24;border:1px solid;border-radius:5px;padding:2px 5px;font-size:8px}.mastery-target-line{color:var(--muted);grid-template-columns:auto auto 1fr;align-items:center;gap:7px;margin-block-start:6px;font-size:8px;font-style:normal;display:grid}.mastery-target-line>span{font-weight:900}.mastery-target-line>b{color:var(--purple)}.mastery-target-line>em{justify-self:end;font-style:normal}.aurora{z-index:0;filter:blur(34px);opacity:.32;border-radius:50%;width:65%;height:55%;animation:7s ease-in-out infinite alternate aurora-drift;position:absolute}.aurora-one{background:var(--purple);inset:-10% auto auto -10%}.aurora-two{background:var(--lime);animation-delay:-3.5s;inset:12% -10% auto auto}.word-rain-board{min-height:500px;box-shadow:inset 0 0 70px #1610482e, 7px 7px 0 var(--ink);background:radial-gradient(circle at 20% 20%,#fffffff2 0 2px,#0000 3px),radial-gradient(circle at 76% 10%,#ffffffb3 0 1px,#0000 2px),linear-gradient(#604ccc 0%,#736bdc 24%,#8fe9ed 63%,#fff0a5 83%)}.word-rain-level,.word-rain-lives{z-index:10;position:absolute;inset-block-start:13px}.word-rain-level{border:2px solid var(--ink);min-width:54px;box-shadow:3px 3px 0 var(--ink);background:#ffffffd1;border-radius:11px;padding:6px 9px;display:grid;inset-inline-start:14px}.word-rain-level small{letter-spacing:.12em;font-size:7px;font-weight:950}.word-rain-level b{color:var(--purple);font-size:22px;line-height:.9}.word-rain-lives{border:2px solid var(--ink);background:#ffffffd1;border-radius:999px;gap:3px;padding:6px 8px;display:flex;inset-inline-end:14px}.word-rain-lives span{color:#b7b6b0;font-size:14px}.word-rain-lives span.alive{color:#ff4578;filter:drop-shadow(1px 1px 0 var(--ink));animation:1.4s ease-in-out infinite heart-beat}.rain-word{background:#fff7c7;border-radius:13px;padding:9px 13px 8px;transition:top 50ms linear,transform .15s,background .15s;box-shadow:4px 5px #151515db}.rain-word>i{background:#ffffff80;width:2px;height:10px;position:absolute;inset-block-start:-11px;inset-inline:50% auto}.rain-word.targeted{background:var(--lime);box-shadow:0 0 0 7px #c8ff4240, 5px 6px 0 var(--ink)}.game-curtain{z-index:20;color:#fff;text-align:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#18123dc2;align-content:center;place-items:center;gap:6px;animation:.25s both curtain-in;display:grid;position:absolute;inset:0}.game-curtain small{letter-spacing:.18em;font-size:10px;font-weight:950}.game-curtain>b{letter-spacing:-.06em;text-shadow:4px 4px 0 var(--purple);font-size:clamp(34px,6vw,70px)}.game-curtain>p{color:#ffd3e1;max-width:430px;margin:0;font-size:11px;font-weight:800;line-height:1.55}.game-curtain>span{align-items:center;gap:7px;font-size:11px;font-weight:850;display:flex}.game-curtain kbd{color:var(--ink);font:inherit;background:#fff;border:1px solid #fff;border-radius:6px;padding:5px 8px}.wave-progress{border:1.5px solid var(--ink);background:#dedcd2;border-radius:999px;height:12px;margin:-12px 0 22px;position:relative;overflow:hidden}.wave-progress>span{border-radius:inherit;background:linear-gradient(90deg, var(--purple), var(--pink));height:100%;transition:width .3s;display:block}.wave-progress small{font-size:6px;font-weight:950;position:absolute;inset:50% 8px auto auto;transform:translateY(-50%)}.word-rain-game{background:linear-gradient(135deg,#ffffff0a 25%,#0000 25%) 0 0/18px 18px,#17142c;border:3px solid #151326;border-radius:30px;gap:clamp(18px,2.6vw,34px);padding:clamp(10px,1.5vw,18px);box-shadow:9px 9px #151326,0 30px 80px #14103638}.word-rain-board{isolation:isolate;background:radial-gradient(circle at 50% 118%,#23f6ee57,#0000 46%),radial-gradient(circle at 12% 18%,#ff35ae30,#0000 26%),linear-gradient(#100d2d 0%,#1d1753 52%,#123c65 82%,#0a172c 100%);border-color:#090817;border-radius:20px;min-height:540px;box-shadow:inset 0 0 0 2px #6cf1ff33,inset 0 0 90px #0006,6px 6px #080715,0 0 36px #5552ff38}.retro-scanlines{z-index:18;pointer-events:none;opacity:.17;mix-blend-mode:multiply;background:repeating-linear-gradient(#0000 0 3px,#00000052 4px);position:absolute;inset:0}.pixel-stars{z-index:0;pointer-events:none;position:absolute;inset:0}.pixel-stars i{background:#d9ffff;border-radius:1px;width:3px;height:3px;animation:1.8s steps(2,end) infinite pixel-twinkle;position:absolute;box-shadow:0 0 7px #72f8ff}.pixel-stars i:first-child{inset:11% auto auto 9%}.pixel-stars i:nth-child(2){animation-delay:-.3s;inset:18% auto auto 34%}.pixel-stars i:nth-child(3){animation-delay:-.7s;inset:9% 13% auto auto}.pixel-stars i:nth-child(4){animation-delay:-1.1s;inset:31% auto auto 18%}.pixel-stars i:nth-child(5){animation-delay:-.5s;inset:37% 29% auto auto}.pixel-stars i:nth-child(6){animation-delay:-1.4s;inset:52% auto auto 6%}.pixel-stars i:nth-child(7){animation-delay:-.9s;inset:57% 8% auto auto}.pixel-stars i:nth-child(8){animation-delay:-1.6s;inset:23% auto auto 68%}.word-rain-board .aurora{opacity:.2;mix-blend-mode:screen}.word-rain-board .sky-cloud{opacity:.08;filter:blur(1px)}.mission-hud{z-index:11;color:#fff;text-align:center;clip-path:polygon(8px 0,calc(100% - 8px) 0,100% 8px,100% calc(100% - 8px),calc(100% - 8px) 100%,8px 100%,0 calc(100% - 8px),0 8px);background:#08091eb8;border:1px solid #7cf5ff80;border-radius:7px;min-width:250px;padding:10px 18px;display:grid;position:absolute;inset:14px 50% auto auto;transform:translate(50%)}.mission-hud small{color:#75f7ff;letter-spacing:.16em;font-size:10px;font-weight:900}.mission-hud b{letter-spacing:.035em;margin-block:3px;font-size:14px}.mission-hud span{color:#d8ff65;font-size:12px;font-weight:950}.word-rain-level{color:#fff;clip-path:polygon(0 0,calc(100% - 10px) 0,100% 10px,100% 100%,0 100%);background:#08091ecc;border:1px solid #69f5ff;border-radius:7px;min-width:66px;box-shadow:0 0 0 2px #69f5ff1f,0 0 16px #69f5ff2e}.word-rain-level small{color:#69f5ff;font-size:10px}.word-rain-level b{color:#f6ff72;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:26px}.word-rain-level em{color:#ff5ec7;letter-spacing:.08em;font-size:9px;font-style:normal;font-weight:950}.word-rain-lives{color:#fff;background:#08091ecc;border:1px solid #ff5ec7;border-radius:7px;gap:2px;min-width:112px;padding:7px 9px;display:grid;box-shadow:0 0 15px #ff5ec729}.word-rain-lives>small{color:#ff77cd;letter-spacing:.11em;font-size:10px;font-weight:950}.word-rain-lives>b{color:#fff;font:950 16px/1 ui-monospace,SFMono-Regular,Consolas,monospace}.shield-meter{background:#ffffff29;border-radius:99px;width:94px;height:4px;position:relative;overflow:hidden}.shield-meter i{border-radius:inherit;background:linear-gradient(90deg,#ff5c90,#f4ff6a,#63f5ff);height:100%;transition:width .4s;display:block;box-shadow:0 0 8px #63f5ff}.threat-alert{z-index:12;color:#79f6ff;letter-spacing:.08em;background:#08091ec2;border:1px solid #68f8ff59;border-radius:5px;align-items:center;gap:6px;padding:7px 10px;font:950 10px/1 ui-monospace,SFMono-Regular,Consolas,monospace;display:inline-flex;position:absolute;inset:76px 13px auto auto}.threat-alert i{background:#6ff7ff;border-radius:50%;width:6px;height:6px;box-shadow:0 0 8px #6ff7ff}.threat-alert.active{color:#ff9aae;border-color:#f57;animation:.46s steps(2,end) infinite impact-alert}.threat-alert.active i{background:#ff4f73;box-shadow:0 0 12px #ff4f73}.rain-word{color:#fff;background:linear-gradient(90deg,#0000 0 8%,#ffffff14 9% 15%,#0000 16%),linear-gradient(#282e64fa,#0a0c28fc);border:1px solid #8cf9ff;border-radius:16px 16px 8px 8px;min-width:96px;padding:12px 15px 16px;transition:top 50ms linear,transform .12s,background .12s,box-shadow .12s;box-shadow:inset 0 0 0 2px #69f5ff17,inset 9px 0 15px #75f4ff14,0 6px #030310bd,0 0 20px #69f5ff4d}.rain-word:after{content:"";filter:drop-shadow(0 5px 4px #030310b3);border-block-start:14px solid #8cf9ff;border-inline:18px solid #0000;width:0;height:0;position:absolute;inset:auto auto -13px 50%;transform:translate(-50%)}.rain-word>b{letter-spacing:.02em;text-shadow:0 0 9px #69f5ff7a;font-size:20px;font-weight:950}.rain-word small{color:#9da5d6;letter-spacing:.08em;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:10px}.rain-word .word-tether{z-index:-2;background:linear-gradient(#0000,#ff4fb3 42%,#f6ff75 88%,#fff);width:4px;height:47px;animation:.17s linear infinite alternate missile-trail;inset-block-start:-46px;box-shadow:0 0 9px #ff5ec7}.missile-plume{z-index:-1;width:18px;height:26px;position:absolute;inset:-24px 50% auto auto;transform:translate(50%)}.missile-plume:before{content:"";background:linear-gradient(#fff,#f7ff72 28%,#ff6b32 60%,#0000);border-radius:50% 50% 65% 65%;height:20px;animation:.12s steps(2,end) infinite missile-flame;position:absolute;inset:7px 4px auto;box-shadow:0 0 14px #ff5ec7}.missile-plume i{width:3px;height:20px;transform:translateX(-50%) rotate(var(--trail-angle,0deg));transform-origin:50% 100%;opacity:.6;background:linear-gradient(#0000,#75f7ff);position:absolute;inset:auto auto 0 50%}.missile-plume i:nth-child(2){--trail-angle:-14deg;height:15px;inset-inline-start:35%}.missile-plume i:nth-child(3){--trail-angle:14deg;height:16px;inset-inline-start:65%}.missile-fins{z-index:-1;clip-path:polygon(0 0,100% 0,100% 100%,72% 66%,28% 66%,0 100%);filter:drop-shadow(0 0 6px #ff5ec78c);border-inline:12px solid #ff5ec7;height:34px;position:absolute;inset:12% -8px auto}.target-brackets:before,.target-brackets:after{content:"";opacity:0;border-block:2px solid #dfff67;width:7px;position:absolute;inset-block:-5px}.target-brackets:before{border-inline-start:2px solid #dfff67;inset-inline-start:-6px}.target-brackets:after{border-inline-end:2px solid #dfff67;inset-inline-end:-6px}.rain-word.targeted{z-index:8;background:linear-gradient(#344e2e,#13271c);border-color:#dfff67;animation:.42s steps(2,end) infinite target-lock;transform:translate(-50%)scale(1.1);box-shadow:0 0 0 3px #dfff6733,0 5px #070b08,0 0 28px #dfff6799}.rain-word.targeted .target-brackets:before,.rain-word.targeted .target-brackets:after{opacity:1}.rain-word.critical{border-color:#ff617f;animation:.42s steps(2,end) infinite threat-pulse;box-shadow:0 0 0 2px #ff617f2b,0 5px #030310bd,0 0 22px #ff466c7a}.rain-word.critical.targeted{border-color:#dfff67;animation:.3s steps(2,end) infinite target-lock}.defense-grid{z-index:1;opacity:.32;transform-origin:bottom;background:repeating-linear-gradient(90deg,#0000 0 47px,#46ddec 48px 49px),repeating-linear-gradient(0deg,#0000 0 22px,#46ddec 23px 24px);height:34%;position:absolute;inset:auto -20% 9%;transform:perspective(240px)rotateX(62deg);-webkit-mask-image:linear-gradient(#0000,#000 70%);mask-image:linear-gradient(#0000,#000 70%)}.neon-city{z-index:2;opacity:.98;filter:drop-shadow(0 0 13px #40eeff47);transform-origin:50% 100%;justify-content:center;align-items:end;gap:clamp(2px,.7vw,8px);height:156px;display:flex;position:absolute;inset:auto 1.5% 8.8%}.neon-city>span{z-index:2;clip-path:polygon(8% 0,90% 0,100% 7%,100% 100%,0 100%,0 7%);border:1px solid #5bcfe6;background:repeating-linear-gradient(90deg,#0000 0 8px,#73f1ff29 9px 10px),repeating-linear-gradient(#0000 0 10px,#f5e884 11px 13px),linear-gradient(90deg,#0b1532,#1b3970 52%,#081128);border-block-end:0;width:5.8%;min-width:20px;height:42%;position:relative;box-shadow:inset 5px 0 12px #4fe1ff1f,0 0 8px #4be4ff3d}.neon-city>span:before{content:"";background:#142b57;border:1px solid #5bcfe6;border-block-end:0;height:8px;position:absolute;inset:-8px 38% auto}.neon-city>span:after{z-index:3;content:"";opacity:0;filter:drop-shadow(0 0 4px #ff5576);background:linear-gradient(118deg,#0000 0 41%,#ff586ff2 42% 45%,#0000 46% 60%,#ff586fb8 61% 63%,#0000 64%),linear-gradient(62deg,#0000 0 54%,#ff586fd1 55% 58%,#0000 59%);position:absolute;inset:6% 10%}.neon-city>span:first-child{width:4.7%;height:35%}.neon-city>span:nth-child(2){width:6.8%;height:67%}.neon-city>span:nth-child(3){width:5.2%;height:50%}.neon-city>span:nth-child(4){width:7%;height:82%}.neon-city>span:nth-child(5){width:5%;height:59%}.neon-city>span:nth-child(6){width:6%;height:43%}.neon-city>span:nth-child(7){width:7.8%;height:72%}.neon-city>span:nth-child(8){width:5.3%;height:94%}.neon-city>span:nth-child(8):before{clip-path:polygon(48% 0,60% 0,67% 100%,32% 100%);height:21px;inset-block-start:-21px}.neon-city>span:nth-child(9){width:6.5%;height:57%}.neon-city>span:nth-child(10){width:4.8%;height:76%}.neon-city>span:nth-child(11){width:6.8%;height:48%}.neon-city>span:nth-child(12){width:5%;height:63%}.neon-city>span:nth-child(13){width:6.2%;height:39%}.neon-city>span:nth-child(14){width:5.4%;height:53%}.city-skyline-back{z-index:0;opacity:.42;filter:blur(.25px);justify-content:space-between;align-items:end;height:112px;display:flex;position:absolute;inset:auto 1% 0}.city-skyline-back i{background:repeating-linear-gradient(#0000 0 8px,#84bfee47 9px 10px),#091128;border-block-start:1px solid #7bc3f073;width:7%;height:45%}.city-skyline-back i:nth-child(2),.city-skyline-back i:nth-child(8){height:78%}.city-skyline-back i:nth-child(3),.city-skyline-back i:nth-child(11){height:59%}.city-skyline-back i:nth-child(4){height:91%}.city-skyline-back i:nth-child(5),.city-skyline-back i:nth-child(9){height:37%}.city-skyline-back i:nth-child(6){height:68%}.city-skyline-back i:nth-child(10){height:84%}.neon-city>span{transform-origin:50% 100%;transition:opacity .35s,filter .35s,transform .7s cubic-bezier(.18,.7,.2,1)}.neon-city.damage-1>span:nth-child(7),.neon-city.damage-1>span:nth-child(14),.neon-city.damage-2>span:nth-child(7),.neon-city.damage-2>span:nth-child(14),.neon-city.damage-3>span:nth-child(7),.neon-city.damage-3>span:nth-child(14),.neon-city.damage-4>span:nth-child(7),.neon-city.damage-4>span:nth-child(14),.neon-city.damage-5>span:nth-child(7){filter:grayscale(.8)brightness(.46);transform:skew(9deg)scaleY(.72)}.neon-city.damage-2>span:nth-child(2),.neon-city.damage-2>span:nth-child(10),.neon-city.damage-3>span:nth-child(2),.neon-city.damage-3>span:nth-child(10),.neon-city.damage-4>span:nth-child(2),.neon-city.damage-4>span:nth-child(10),.neon-city.damage-5>span:nth-child(2){filter:grayscale(.9)brightness(.36);transform:rotate(-8deg)scaleY(.58)}.neon-city.damage-3>span:nth-child(5),.neon-city.damage-3>span:nth-child(12),.neon-city.damage-4>span:nth-child(5),.neon-city.damage-4>span:nth-child(12),.neon-city.damage-5>span:nth-child(5){opacity:.46;filter:grayscale()brightness(.3);transform:rotate(12deg)scaleY(.34)}.neon-city.damage-4>span:first-child,.neon-city.damage-4>span:nth-child(6),.neon-city.damage-4>span:nth-child(9),.neon-city.damage-4>span:nth-child(13),.neon-city.damage-5>span:first-child,.neon-city.damage-5>span:nth-child(6),.neon-city.damage-5>span:nth-child(9),.neon-city.damage-5>span:nth-child(13){opacity:.28;filter:grayscale()brightness(.2);transform:scaleY(.18)}.neon-city.damage-1>span:nth-child(7):after,.neon-city.damage-1>span:nth-child(14):after,.neon-city.damage-2>span:nth-child(2):after,.neon-city.damage-2>span:nth-child(7):after,.neon-city.damage-2>span:nth-child(10):after,.neon-city.damage-2>span:nth-child(14):after,.neon-city.damage-3>span:nth-child(5):after,.neon-city.damage-3>span:nth-child(8):after,.neon-city.damage-3>span:nth-child(12):after,.neon-city.damage-4>span:after,.neon-city.damage-5>span:after{opacity:.92}.neon-city.damage-5>span{opacity:.15;filter:grayscale()brightness(.16);transform:rotate(var(--collapse-tilt,7deg)) scaleY(.08)}.city-damage-layer{z-index:5;pointer-events:none;position:absolute;inset:-18px 0 0}.city-damage-layer i{opacity:0;filter:drop-shadow(0 0 7px #ff4f5d);transform-origin:50% 100%;background:radial-gradient(circle at 50% 76%,#fff8a3 0 16%,#ff7b2d 17% 45%,#ff315b 46% 64%,#0000 65%);border-radius:50% 50% 35% 35%;width:12px;height:22px;animation:.42s ease-in-out infinite alternate city-fire;position:absolute;inset:auto auto 17px 78%}.city-damage-layer i:nth-child(2){animation-delay:-.16s;inset-block-end:13px;inset-inline-start:22%}.city-damage-layer i:nth-child(3){animation-delay:-.28s;inset-block-end:9px;inset-inline-start:57%}.city-damage-layer i:nth-child(4){animation-delay:-.09s;inset-block-end:5px;inset-inline-start:8%}.city-damage-layer i:nth-child(5){animation-delay:-.34s;inset-block-end:3px;inset-inline-start:91%}.city-damage-layer i:nth-child(6){animation-delay:-.22s;inset-block-end:20px;inset-inline-start:43%}.neon-city.damage-1 .city-damage-layer i:first-child,.neon-city.damage-2 .city-damage-layer i:nth-child(-n+2),.neon-city.damage-3 .city-damage-layer i:nth-child(-n+3),.neon-city.damage-4 .city-damage-layer i:nth-child(-n+4),.neon-city.damage-5 .city-damage-layer i{opacity:1}.city-smoke{z-index:8;pointer-events:none;position:absolute;inset:-45px 0 0}.city-smoke i{opacity:0;filter:blur(1px);background:radial-gradient(circle at 38% 43%,#c2cadcad,#3a3d4ebd 54%,#0000 69%);border-radius:50%;width:36px;height:36px;animation:2.6s ease-in infinite city-smoke-rise;position:absolute;inset:auto auto 24px 78%}.city-smoke i:nth-child(2){animation-delay:-.7s;inset-inline-start:21%;transform:scale(.8)}.city-smoke i:nth-child(3){animation-delay:-1.4s;inset-inline-start:55%;transform:scale(1.15)}.city-smoke i:nth-child(4){animation-delay:-2s;inset-inline-start:8%;transform:scale(.72)}.city-smoke i:nth-child(5){animation-delay:-1.1s;inset-inline-start:90%;transform:scale(.9)}.city-smoke i:nth-child(6){animation-delay:-.2s;inset-inline-start:42%;transform:scale(1.25)}.city-smoke i:nth-child(7){animation-delay:-1.8s;inset-inline-start:67%;transform:scale(.68)}.neon-city.damage-1 .city-smoke i:first-child,.neon-city.damage-2 .city-smoke i:nth-child(-n+3),.neon-city.damage-3 .city-smoke i:nth-child(-n+5),.neon-city.damage-4 .city-smoke i,.neon-city.damage-5 .city-smoke i{opacity:.72}.city-rubble{z-index:9;pointer-events:none;height:28px;position:absolute;inset:auto 0 -2px;overflow:hidden}.city-rubble i{inset:auto auto -10px calc(var(--rubble-x,50) * 1%);width:var(--rubble-size,13px);height:var(--rubble-size,13px);opacity:0;transform:rotate(var(--rubble-turn,18deg));background:linear-gradient(135deg,#27304f,#0c1020);border:1px solid #5acee259;transition:opacity .4s,inset-block-end .6s;position:absolute}.city-rubble i:first-child{--rubble-x:8;--rubble-size:18px;--rubble-turn:31deg}.city-rubble i:nth-child(2){--rubble-x:16;--rubble-size:11px;--rubble-turn:-14deg}.city-rubble i:nth-child(3){--rubble-x:24;--rubble-size:22px;--rubble-turn:8deg}.city-rubble i:nth-child(4){--rubble-x:34;--rubble-size:14px;--rubble-turn:43deg}.city-rubble i:nth-child(5){--rubble-x:43;--rubble-size:20px;--rubble-turn:-23deg}.city-rubble i:nth-child(6){--rubble-x:51;--rubble-size:12px;--rubble-turn:17deg}.city-rubble i:nth-child(7){--rubble-x:59;--rubble-size:19px;--rubble-turn:36deg}.city-rubble i:nth-child(8){--rubble-x:68;--rubble-size:15px;--rubble-turn:-31deg}.city-rubble i:nth-child(9){--rubble-x:76;--rubble-size:22px;--rubble-turn:12deg}.city-rubble i:nth-child(10){--rubble-x:83;--rubble-size:13px;--rubble-turn:48deg}.city-rubble i:nth-child(11){--rubble-x:90;--rubble-size:18px;--rubble-turn:-8deg}.city-rubble i:nth-child(12){--rubble-x:95;--rubble-size:10px;--rubble-turn:24deg}.neon-city.damage-3 .city-rubble i:nth-child(-n+4),.neon-city.damage-4 .city-rubble i:nth-child(-n+8),.neon-city.damage-5 .city-rubble i{opacity:.95;inset-block-end:0}.city-core{background:#ff56c2;border:2px solid #fff;width:26px;height:26px;animation:1.3s ease-in-out infinite city-core-pulse;position:absolute;inset:auto 50% 5px auto;transform:translate(50%)rotate(45deg);box-shadow:0 0 0 6px #ff56c22e,0 0 24px #ff56c2}.city-core i{border:1px solid #fff;position:absolute;inset:5px}.neon-city.damage-3 .city-core{animation-duration:.55s;box-shadow:0 0 0 6px #ff56c21f,0 0 16px #ff315b}.neon-city.damage-4 .city-core{background:#ff385e;animation-duration:.28s}.neon-city.damage-5 .city-core{background:#201328;animation:.42s steps(2,end) infinite city-core-fail;box-shadow:0 0 18px #ff315b}.word-rain-board .sea-water{z-index:5;background:linear-gradient(#2acfe5ad,#123577ed);border-block-start:2px solid #71f4ff;height:11%;box-shadow:0 -8px 20px #42e5ff2e}.word-rain-board .sea-water i{opacity:.64;background:#2bcfe5}.word-rain-board .sea-water b{color:#dcfdff;text-shadow:0 0 7px #69f5ff;font-size:10px;top:18px}.capture-burst{z-index:24;color:#fff;width:8px;height:8px;text-shadow:none;animation:none}.capture-burst:before,.capture-burst:after{content:"";border:2px solid #f4ff6a;border-radius:50%;width:76px;height:76px;animation:.7s ease-out both blast-ring;position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%)}.capture-burst:after{border-color:#67f7ff;width:40px;height:40px;animation-delay:80ms}.blast-core{z-index:3;background:radial-gradient(circle,#fff 0 13%,#f6ff77 14% 27%,#ff9d31 28% 48%,#ff376e 49% 66%,#0000 68%);border-radius:50%;width:62px;height:62px;animation:.82s ease-out both aerial-detonation;position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);box-shadow:0 0 28px #ff6b38,0 0 55px #ff438ec2}.blast-smoke{z-index:1;width:1px;height:1px;position:absolute;inset:50% auto auto 50%}.blast-smoke i{filter:blur(.4px);background:radial-gradient(circle at 38% 34%,#d5d6df,#5e5d72 58%,#0000 70%);border-radius:50%;width:32px;height:32px;animation:.9s ease-out both aerial-smoke;position:absolute}.blast-smoke i:first-child{--smoke-x:-52px;--smoke-y:-31px}.blast-smoke i:nth-child(2){--smoke-x:28px;--smoke-y:-44px;animation-delay:40ms}.blast-smoke i:nth-child(3){--smoke-x:-37px;--smoke-y:21px;animation-delay:80ms}.blast-smoke i:nth-child(4){--smoke-x:35px;--smoke-y:18px;animation-delay:.12s}.missile-shards{z-index:4;width:1px;height:1px;position:absolute;inset:50% auto auto 50%}.missile-shards i{--shard-angle:calc(var(--shard-index) * 77deg - 45deg);color:#fff;text-shadow:0 0 8px #75f7ff,2px 2px #161226;font:950 17px/1 ui-monospace,SFMono-Regular,Consolas,monospace;animation:.76s cubic-bezier(.12,.62,.2,1) both missile-shard-fly;position:absolute}.capture-burst>i{transform-origin:50% 0;background:linear-gradient(#fff,#ff5ec7,#0000);width:6px;height:30px;animation:.65s ease-out both blast-ray;position:absolute}.capture-burst>i:nth-child(2){transform:rotate(60deg)}.capture-burst>i:nth-child(3){transform:rotate(120deg)}.capture-burst>i:nth-child(4){transform:rotate(180deg)}.capture-burst>i:nth-child(5){transform:rotate(240deg)}.capture-burst>i:nth-child(6){transform:rotate(300deg)}.capture-burst strong,.capture-burst>b,.capture-burst>em{width:max-content;position:absolute;inset-inline-start:50%;transform:translate(-50%)}.capture-burst strong{color:#f4ff6a;letter-spacing:.08em;text-shadow:2px 2px #151326,0 0 12px #f4ff6a;font:950 17px/1 ui-monospace,SFMono-Regular,Consolas,monospace;animation:.75s ease-out both blast-copy;inset-block-start:-42px}.capture-burst>b{color:#fff;text-shadow:1px 1px #151326;font:950 11px/1 ui-monospace,SFMono-Regular,Consolas,monospace;animation:.75s ease-out 50ms both blast-copy;inset-block-start:-18px}.capture-burst>em{color:#ff72d0;letter-spacing:.08em;font:950 8px/1 ui-monospace,SFMono-Regular,Consolas,monospace;animation:.75s ease-out .1s both blast-copy;inset-block-start:4px}.mission-curtain,.wave-clear-curtain{z-index:30;color:#fff;text-align:center;align-content:center;place-items:center;display:grid;position:absolute;inset:0}.mission-briefing{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:linear-gradient(#0c0a27e0,#080b1ff0),repeating-linear-gradient(90deg,#0000 0 28px,#67f7ff14 29px 30px);gap:15px;padding:34px;animation:.45s both mission-boot}.mission-emblem{background:#72f6ff14;border:2px solid #72f6ff;place-items:center;width:74px;height:74px;display:grid;transform:rotate(45deg);box-shadow:0 0 0 7px #72f6ff12,0 0 28px #72f6ff4d}.mission-emblem span{color:#f5ff6d;text-shadow:0 0 14px #f5ff6d;font-size:32px;font-weight:950;transform:rotate(-45deg)}.mission-briefing>small{color:#73f7ff;letter-spacing:.15em;font-size:12px;font-weight:950}.mission-briefing h3{letter-spacing:-.045em;text-shadow:3px 3px #6427c9;margin:0;font-size:clamp(25px,4vw,42px)}.game-demo .mission-briefing>p{color:#fff;text-shadow:0 1px 8px #0000008c;max-width:640px;margin:0;font-size:clamp(18px,1.65vw,21px);font-weight:800;line-height:1.6}.mission-rules{gap:8px;margin-block:4px;display:flex}.mission-rules span{color:#d5ddff;background:#6ef5ff0f;border:1px solid #6ef5ff52;border-radius:5px;align-items:center;gap:5px;padding:9px 12px;font:900 13px/1 ui-monospace,SFMono-Regular,Consolas,monospace;display:flex}.mission-rules b{color:#ff69c9}.mission-start{color:#f4ff6a;letter-spacing:.08em;align-items:center;gap:9px;margin-block-start:5px;font:950 14px/1 ui-monospace,SFMono-Regular,Consolas,monospace;animation:.8s steps(2,end) infinite mission-start-pulse;display:flex}.mission-start kbd,.mission-console-head kbd{color:inherit;font:inherit;background:#ffffff14;border:1px solid;border-radius:4px;padding:5px 8px;box-shadow:2px 2px}.wave-clear-curtain{pointer-events:none;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0a0a25e0;border:1px solid #6af7ffcc;border-radius:8px;gap:5px;width:min(470px,100% - 28px);padding:12px 18px;animation:1.4s both wave-clear-flash;inset:102px auto auto 50%;transform:translate(-50%);box-shadow:0 0 24px #6af7ff40,4px 4px #080617cc}.wave-clear-curtain small{color:#6af7ff;letter-spacing:.18em;font-size:10px;font-weight:950}.wave-clear-curtain b{color:#f4ff6a;text-shadow:3px 3px #6a27ca,0 0 20px #f4ff6a66;font:950 clamp(23px,3.5vw,38px)/1 ui-monospace,SFMono-Regular,Consolas,monospace}.wave-clear-curtain span{color:#fff;letter-spacing:.05em;font-size:11px;font-weight:850}.word-rain-game.has-shock .word-rain-board{animation:.58s both city-impact}.word-rain-game.has-shock .retro-scanlines{opacity:.6;background-color:#ff286038}.word-rain-game.is-critical .word-rain-board{box-shadow:inset 0 0 0 2px #ff3d676b,inset 0 0 110px #8e052542,6px 6px #080715,0 0 44px #ff376447}.word-rain-game.is-game-over .word-rain-board{filter:saturate(.72)}.word-rain-game.combo-hot .word-rain-board{box-shadow:inset 0 0 0 2px #f4ff6a4d,inset 0 0 90px #0006,6px 6px #080715,0 0 42px #f4ff6a40}.word-rain-console{color:#fff;background:linear-gradient(145deg,#ffffff0a,#0000 42%),#211c3a;border:1px solid #615a93;border-radius:18px;padding:clamp(18px,2.4vw,28px);position:relative;box-shadow:inset 0 0 0 2px #ffffff06,4px 4px #0b0917}.mission-console-head{border-block-end:1px solid #8177b56b;justify-content:space-between;align-items:center;gap:8px;margin-block-end:15px;padding-block-end:11px;display:flex}.mission-console-head>span{color:#78f7ff;letter-spacing:.12em;font:950 12px/1 ui-monospace,SFMono-Regular,Consolas,monospace}.mission-console-head>span i{background:#dfff67;border-radius:50%;width:7px;height:7px;margin-inline-end:5px;animation:1s steps(2,end) infinite console-led;display:inline-block;box-shadow:0 0 9px #dfff67}.game-audio-toggle{color:#8f8ba9;cursor:pointer;background:#17142c;border:1px solid #716995;border-radius:5px;align-items:center;gap:5px;padding:7px 9px;font:850 9px/1 ui-monospace,SFMono-Regular,Consolas,monospace;display:inline-flex}.game-audio-toggle.is-on{color:#ff78d2;border-color:#ff65c8;box-shadow:0 0 10px #ff65c824}.game-audio-toggle>b{font-size:12px}.game-audio-toggle kbd{box-shadow:none;padding:2px 4px}.word-rain-console .game-scorebar{gap:6px;margin-block-end:19px}.word-rain-console .game-scorebar span{color:#d0cde2;background:#17142c;border-color:#5f588a;border-radius:6px;font-size:10px}.word-rain-console .game-scorebar b{color:#f2ff69;text-shadow:0 0 8px #f2ff6942;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:21px}.word-rain-console .wave-progress{background:#111022;border-color:#635b8f}.word-rain-console .wave-progress>span{background:linear-gradient(90deg,#55ebff,#8d63ff,#ff5ec7);box-shadow:0 0 10px #7b69ff}.word-rain-console .wave-progress small{color:#fff;font-size:9px}.word-rain-console .demo-label{color:#ff6ccc}.word-rain-console h3{color:#fff}.word-rain-console .demo-label{font-size:11px}.word-rain-console h3{font-size:clamp(24px,3vw,36px);line-height:1.2}.game-demo .word-rain-console p:not(.demo-label,.form-message){color:#f0eefb;font-size:16px;font-weight:700;line-height:1.65}.word-rain-console label{color:#77f5ff;letter-spacing:.05em;font-size:14px}.word-rain-console .inline-form{position:relative}.word-rain-console .inline-form input{color:#f7ff74;caret-color:#ff6ccc;background:#0f1025;border-color:#6af5ff;border-radius:7px;font:950 20px/1 ui-monospace,SFMono-Regular,Consolas,monospace;box-shadow:inset 0 0 0 2px #6af5ff14,0 0 18px #6af5ff14}.word-rain-console .inline-form input:focus{outline-offset:2px;outline:2px solid #ff6ccc;box-shadow:inset 0 0 0 2px #ff6ccc1f,0 0 22px #ff6ccc2e}.word-rain-console .inline-form .button{color:#17142c;background:#f1ff67;border-color:#0b0917;border-radius:7px;box-shadow:4px 4px #ff5ec7}.word-rain-console .form-message{color:#c7c4da;min-height:36px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:13px;line-height:1.5}.word-rain-console .form-message.error{color:#ff7798}.word-rain-console .game-key-help>span{color:#aba7c3}.word-rain-console .game-key-help kbd{color:#72f6ff;background:#151229;border-color:#6d668f;box-shadow:1px 1px #070610}@keyframes pixel-twinkle{50%{opacity:.18;transform:scale(.55)}}@keyframes target-lock{50%{filter:brightness(1.22)}}@keyframes threat-pulse{50%{filter:brightness(1.35);transform:translate(-50%)scale(1.035)}}@keyframes impact-alert{50%{filter:brightness(1.35);background:#7e0825c7;transform:translate(-2px)}}@keyframes city-fire{0%{filter:drop-shadow(0 0 5px #ff4f5d);transform:scale(.8)rotate(-4deg)}to{filter:drop-shadow(0 0 12px #ff9a36);transform:scale(1.14)rotate(5deg)}}@keyframes city-core-pulse{50%{transform:translate(50%)rotate(45deg)scale(1.08);box-shadow:0 0 0 11px #ff56c20f,0 0 36px #ff56c2}}@keyframes city-core-fail{50%{opacity:.28;transform:translate(50%)rotate(48deg)scale(.78)}}@keyframes blast-ring{0%{opacity:1;transform:translate(-50%,-50%)scale(.1)}to{opacity:0;transform:translate(-50%,-50%)scale(1.5)}}@keyframes aerial-detonation{0%{opacity:0;filter:brightness(2.4);transform:translate(-50%,-50%)scale(.08)}12%{opacity:1;filter:brightness(1.55);transform:translate(-50%,-50%)scale(1.45)}68%{opacity:.9;transform:translate(-50%,-50%)scale(.9)}to{opacity:0;filter:blur(3px);transform:translate(-50%,-50%)scale(1.24)}}@keyframes aerial-smoke{0%{opacity:0;transform:translate(-50%,-50%)scale(.2)}24%{opacity:.85}to{opacity:0;transform:translate(var(--smoke-x), var(--smoke-y)) scale(1.45);filter:blur(4px)}}@keyframes missile-shard-fly{0%{opacity:0;transform:translate(-50%,-50%)rotate(0)scale(.4)}18%{opacity:1}to{opacity:0;transform:translate(calc(cos(var(--shard-angle)) * 74px), calc(sin(var(--shard-angle)) * 74px)) rotate(320deg) scale(.75)}}@keyframes blast-ray{0%{opacity:1}to{opacity:0;height:66px}}@keyframes blast-copy{0%{opacity:0;transform:translate(-50%,8px)scale(.7)}25%{opacity:1;transform:translate(-50%)scale(1.15)}to{opacity:0;transform:translate(-50%,-34px)scale(.92)}}@keyframes mission-boot{0%{opacity:0;filter:blur(8px)}}@keyframes mission-start-pulse{50%{opacity:.45}}@keyframes missile-trail{0%{opacity:.46;transform:translate(-50%)scaleY(.8)}to{opacity:1;transform:translate(-50%)scaleY(1.14)}}@keyframes missile-flame{50%{filter:hue-rotate(14deg)brightness(1.3);height:16px;transform:scaleX(.72)}}@keyframes city-smoke-rise{0%{filter:blur(1px);translate:0 8px;scale:.45}55%{filter:blur(2px);translate:-7px -38px;scale:1}to{filter:blur(5px);opacity:0;translate:10px -76px;scale:1.45}}@keyframes wave-clear-flash{0%{opacity:0;background:#fffffff0;translate:0 -10px}12%,82%{opacity:1}to{opacity:0;translate:0 -18px}}@keyframes city-impact{0%,to{filter:none;transform:translate(0)}15%{filter:saturate(1.8);transform:translate(-8px,3px)}30%{transform:translate(7px,-2px)}48%{transform:translate(-5px,1px)}68%{transform:translate(3px)}}@keyframes console-led{50%{opacity:.35}}.game-key-help{flex-wrap:wrap;gap:7px;margin-block-start:10px;display:flex}.game-key-help>span{color:var(--muted);align-items:center;gap:5px;font-size:12px;font-weight:850;display:flex}.game-key-help kbd{border:1px solid var(--ink);background:var(--paper);box-shadow:1px 1px 0 var(--ink);color:var(--ink);font:inherit;border-radius:5px;padding:3px 6px;font-size:10px}.form-message.error{color:#a3173e}.progressive-puzzle{border:3px solid var(--ink);background:radial-gradient(circle at 88% 8%, var(--yellow) 0 6%, transparent 6.2%), linear-gradient(145deg, #fffdf2, #f1edff);width:min(880px,100%);box-shadow:8px 8px 0 var(--ink);border-radius:28px;padding:clamp(22px,4vw,42px);position:relative;overflow:hidden}.puzzle-head>div{gap:6px;display:flex}.puzzle-head>div span{border:1px solid var(--line);background:#ffffffb3;border-radius:8px;padding:6px 8px;font-size:8px;font-weight:850}.puzzle-head>div b{color:var(--purple);font-size:12px}.missing-level-track{grid-template-columns:repeat(5,1fr);gap:8px;width:min(430px,100%);margin:24px auto 30px;display:grid;position:relative}.missing-level-track:before{z-index:0;content:"";background:#d6d4ca;border-radius:99px;height:5px;position:absolute;inset:50% 8% auto;transform:translateY(-50%)}.missing-level-track>span{z-index:2;border:2px solid var(--ink);background:#dedcd2;border-radius:50%;justify-self:center;place-items:center;width:36px;height:36px;font-size:11px;font-weight:950;display:grid;position:relative}.missing-level-track>span.current{background:var(--yellow);box-shadow:3px 3px 0 var(--ink);transform:scale(1.1)}.missing-level-track>span.done{background:var(--lime)}.missing-level-track>i{z-index:1;background:var(--purple);border-radius:99px;max-width:84%;height:5px;transition:width .35s;position:absolute;inset:calc(50% - 2.5px) auto auto 8%}.missing-prompt small{color:var(--purple);letter-spacing:.12em;font-size:9px;font-weight:950}.missing-prompt h3{margin:5px 0 0;font-size:clamp(24px,4vw,38px)}.missing-word{align-items:center;margin-block:26px 20px}.missing-word b{min-width:.85em}.missing-word span{width:94px;height:94px;box-shadow:inset 0 0 0 4px #ffffff8f, 5px 5px 0 var(--purple);background:#eee8ff;border-style:solid;animation:1s ease-in-out infinite alternate missing-cell-pulse}.missing-word span.correct{background:var(--lime);border-color:#557800;animation:.42s both success-pop}.missing-input-label{color:var(--muted);margin-block-end:7px;font-size:9px;font-weight:900;display:block}#missing-letter-input{clip:rect(0 0 0 0);clip-path:inset(50%);border:0;width:1px;height:1px;position:absolute;overflow:hidden}.answer-options button{border-radius:15px;grid-template-columns:auto 1fr;place-items:center;width:76px;height:68px;padding:8px;font-size:25px;display:grid}.answer-options button kbd{border:1px solid var(--line);color:var(--muted);font:inherit;border-radius:4px;align-self:start;padding:2px 4px;font-size:7px}.number-finger-guide{border:1.5px solid var(--purple);width:min(430px,100%);margin:0 auto 14px;padding:11px 14px}@supports (color:color-mix(in lab, red, red)){.number-finger-guide{border:1.5px solid color-mix(in srgb, var(--purple) 58%, var(--line))}}.number-finger-guide{background:var(--purple);border-radius:16px}@supports (color:color-mix(in lab, red, red)){.number-finger-guide{background:color-mix(in srgb, var(--purple) 7%, white)}}.number-finger-guide>p{color:var(--ink);margin:0 0 8px;font-size:11px;font-weight:950}.number-finger-guide>div{grid-template-columns:repeat(3,1fr);gap:7px;display:grid}.number-finger-guide>div>span{border:1px solid var(--line);text-align:start;background:#fff;border-radius:10px;grid-template-columns:auto auto 1fr;align-items:center;gap:6px;padding:7px 9px;display:grid}.number-finger-guide kbd{border:1.5px solid var(--ink);background:var(--yellow);width:25px;height:25px;box-shadow:2px 2px 0 var(--ink);border-radius:6px;place-items:center;font:950 12px/1 ui-monospace,SFMono-Regular,Consolas,monospace;display:grid}.number-finger-guide b{font-size:9px}.number-finger-guide small{color:var(--muted);margin-block-start:8px;font-size:9px;font-weight:800;display:block}.finger-tip{background:currentColor;border:2px solid;border-radius:999px 999px 8px 8px;width:11px;height:16px;display:block}@supports (color:color-mix(in lab, red, red)){.finger-tip{background:color-mix(in srgb, currentColor 22%, white)}}.finger-tip{box-shadow:0 0 0 3px}@supports (color:color-mix(in lab, red, red)){.finger-tip{box-shadow:0 0 0 3px color-mix(in srgb, currentColor 9%, transparent)}}.finger-tip.pinky{color:#e4437f}.finger-tip.ring{color:#7053d7;height:19px}.finger-tip.middle{color:#1584a0;height:22px}.missing-level-up{z-index:10;color:#fff;background:#5b3ecbed;align-content:center;place-items:center;animation:1.45s both level-curtain;display:grid;position:absolute;inset:0}.missing-level-up span{letter-spacing:.2em;font-size:13px;font-weight:950}.missing-level-up b{letter-spacing:-.07em;text-shadow:5px 5px 0 var(--ink);font-size:clamp(44px,9vw,86px)}.missing-level-up small{margin-block-start:8px;font-size:11px;font-weight:850}.crossword-board-heading>div{align-items:center;gap:7px;display:flex}.crossword-board-heading small{color:var(--muted);font-size:10px}.crossword-grid{position:relative}.crossword-cell input,.crossword-cell strong{font-size:clamp(14px,2.6vw,25px)}.crossword-cell small{font-size:7px;inset-block-start:2px;inset-inline-start:3px}.crossword-clues{scrollbar-color:var(--purple) transparent;max-height:290px;padding:2px 5px 8px 2px;overflow:auto}.crossword-clues button.solved{background:#f0ffc9;border-color:#6b9200}.crossword-clues button.solved>b{background:#6b9200}.active-clue-banner{border:2px solid var(--ink);background:var(--yellow);box-shadow:3px 3px 0 var(--ink);border-radius:13px;grid-template-columns:auto 1fr auto;align-items:center;gap:11px;margin-block:12px;padding:12px;display:grid}.active-clue-banner>span{background:var(--ink);color:#fff;border-radius:9px;place-items:center;min-width:46px;height:42px;font-size:14px;font-weight:950;display:grid}.active-clue-banner div{gap:2px;display:grid}.active-clue-banner small{letter-spacing:.12em;font-size:7px;font-weight:950}.active-clue-banner b{font-size:11px}.active-clue-banner em{color:var(--muted);font-size:8px;font-style:normal;font-weight:900}.crossword-complete-stamp{z-index:20;color:#355500;pointer-events:none;background:#efffc6e6;border:6px double #4c7200;border-radius:14px;align-content:center;place-items:center;width:150px;height:90px;animation:.5s cubic-bezier(.2,1.6,.4,1) both stamp-in;display:grid;position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%)rotate(-8deg)}.crossword-complete-stamp span{letter-spacing:.2em;font-size:9px;font-weight:950}.crossword-complete-stamp b{font-size:27px}.crossword-key-help{margin-block-start:14px}@keyframes coach-arrive{0%{opacity:0;transform:translateY(-5px)}}@keyframes practice-stage-expand{0%{opacity:.72;transform:translate(40px)scale(.96)}}@keyframes keyboard-deck-arrive{0%{opacity:.45;transform:translateY(24px)scale(.95)}}@keyframes whole-hand-react{50%{transform:translateY(3px)scale(.995)}}@keyframes finger-callout-beat{to{box-shadow:5px 5px 0 var(--ink), 0 0 0 7px #ff4d831f;transform:translateY(-2px)}}@keyframes card-mastered-glow{to{box-shadow:10px 8px 0 var(--ink), 0 0 0 8px #c7ff424d, 0 22px 74px #5b3ecb3d}}@keyframes mastery-arrive{0%{opacity:0;transform:translateY(18px)scale(.97)}}@keyframes mastery-rays{to{transform:rotate(360deg)}}@keyframes badge-beat{to{transform:rotate(4deg)scale(1.04)}}@keyframes aurora-drift{to{transform:translate(28%,12%)scale(1.2)}}@keyframes heart-beat{50%{transform:scale(1.18)}}@keyframes curtain-in{0%{opacity:0}}@keyframes missing-cell-pulse{to{box-shadow:inset 0 0 0 4px #ffffff8f, 7px 8px 0 var(--purple);transform:translateY(-3px)}}@keyframes level-curtain{0%,to{opacity:0}15%,80%{opacity:1}}@keyframes stamp-in{0%{opacity:0;transform:translate(-50%,-50%)scale(1.8)rotate(-18deg)}}@media (width<=900px){.hero.practice-focus-mode{grid-template-columns:1fr}.practice-focus-mode .hero-copy{justify-content:space-between;align-items:center;gap:10px;max-height:92px;display:flex;position:static;transform:none}.practice-focus-mode .eyebrow{margin:0}.practice-focus-mode .hero-actions .button-primary{grid-template-columns:auto auto;width:auto;min-height:48px;padding:8px 12px}.practice-focus-mode .hero-actions .button-primary .hero-focus-label{max-width:none}.mastery-choice-card{grid-template-columns:auto 1fr}.mastery-actions{grid-column:1/-1;grid-template-columns:1fr 1fr}.word-rain-board{min-height:430px}}@media (width<=540px){.practice-track-picker{flex-wrap:wrap}.practice-track-picker>span{width:100%}.mastery-choice-card{text-align:center;grid-template-columns:1fr}.mastery-burst{margin-inline:auto}.mastery-actions{grid-template-columns:1fr}.mastery-metrics{justify-content:center}.mastery-target-line{grid-template-columns:1fr auto}.mastery-target-line>em{grid-column:1/-1;justify-self:start}.progressive-puzzle{border-radius:20px;padding:20px 14px}.puzzle-head>div{flex-wrap:wrap;justify-content:center}.answer-options{gap:7px}.answer-options button{width:68px;height:62px}.crossword-grid{width:min(94vw,420px)}.crossword-clues{max-height:none}.active-clue-banner{grid-template-columns:auto 1fr}.active-clue-banner em{grid-column:2}.mission-briefing{gap:10px;padding:20px 16px}.mission-emblem{width:56px;height:56px}.mission-emblem span{font-size:26px}.game-demo .mission-briefing>p{font-size:14px;line-height:1.5}.mission-rules{flex-wrap:wrap;justify-content:center}.mission-rules span{padding:8px 9px;font-size:10px}.mission-start{font-size:10px}.mission-hud{min-width:190px;padding:8px 12px;inset-block-start:72px}.mission-hud small{font-size:9px}.mission-hud b{font-size:12px}.neon-city{height:126px}.rain-word{min-width:80px;padding:10px 11px 13px}}.profile-detail-grid{grid-template-columns:minmax(0,1.28fr) minmax(310px,.72fr);gap:14px;margin-block-start:14px;display:grid}.mastery-map-card{background:linear-gradient(145deg,#fffef7,#f2f0ff)}.mastery-map-list{gap:8px;margin-block-start:22px;display:grid}.mastery-map-list>div{border:1.5px solid var(--line);background:#ffffffad;border-radius:12px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;padding:10px;transition:transform .2s,box-shadow .2s,opacity .2s;display:grid}.mastery-map-list>div.current{border:2px solid var(--ink);box-shadow:3px 3px 0 var(--ink);background:#fff6af;transform:translate(3px)}.mastery-map-list>div.locked{opacity:.48}.mastery-map-list>div.done{background:#f2ffcf}.mastery-map-number{border:1.5px solid var(--ink);background:var(--paper);border-radius:50%;place-items:center;width:30px;height:30px;font-size:10px;font-weight:950;display:grid}.mastery-map-list .done .mastery-map-number{background:var(--lime)}.mastery-map-list>div>div{grid-template-columns:1fr auto;gap:3px 8px;display:grid}.mastery-map-list b{font-size:12px}.mastery-map-list small{color:var(--muted);grid-column:1/-1;font-size:8px;font-weight:750}.mastery-map-list i{background:#dedcd2;border-radius:99px;grid-column:1/-1;height:6px;overflow:hidden}.mastery-map-list i span{border-radius:inherit;background:linear-gradient(90deg, var(--purple), var(--pink));height:100%;display:block}.mastery-map-list em{color:var(--purple);font-size:10px;font-style:normal;font-weight:950}.insight-card{background:radial-gradient(circle at 88% 12%,#ffffff8c,#0000 22%),linear-gradient(145deg,#8bf0e8,#c7ff42);overflow:hidden}.accuracy-dial{border:3px solid var(--ink);background:conic-gradient(var(--purple) calc(var(--accuracy) * 1%), #ffffff85 0);width:168px;height:168px;box-shadow:7px 7px 0 var(--ink);border-radius:50%;place-items:center;margin:24px auto;animation:.7s cubic-bezier(.2,1.4,.4,1) both profile-dial-arrive;display:grid;position:relative;transform:rotate(-3deg)}.accuracy-dial:before{border:2px solid var(--ink);content:"";background:#f8fff1;border-radius:50%;width:126px;height:126px;position:absolute}.accuracy-dial>span{z-index:1;text-align:center;display:grid;position:relative}.accuracy-dial b{letter-spacing:-.06em;font-size:36px}.accuracy-dial small{color:var(--muted);font-size:8px;font-weight:850}.insight-status{gap:7px;display:grid}.insight-status>span{background:#ffffff7a;border:1px solid #15151540;border-radius:9px;justify-content:space-between;align-items:center;gap:10px;padding:9px 10px;display:flex}.insight-status small{letter-spacing:.08em;font-size:7px;font-weight:950}.insight-status b{text-align:end;font-size:10px}.insight-card .button{width:100%;margin-block-start:14px}@keyframes profile-dial-arrive{0%{opacity:0;transform:rotate(-40deg)scale(.7)}}@media (width<=900px){.profile-detail-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.capture-burst:before,.capture-burst:after{opacity:.72;transform:translate(-50%,-50%)scale(1.08);animation:none!important}.capture-burst .blast-core{opacity:.94;filter:none;transform:translate(-50%,-50%)scale(.94);animation:none!important}.capture-burst .blast-smoke i{opacity:.38;transform:translate(var(--smoke-x), var(--smoke-y)) scale(.78);animation:none!important}.capture-burst .missile-shards i,.capture-burst strong,.capture-burst>b,.capture-burst>em{opacity:1;animation:none!important}}.social-share-cluster{border:2px solid var(--ink);background:var(--paper);box-shadow:4px 4px 0 var(--ink);border-radius:18px;flex-direction:column;align-items:center;gap:12px;margin-block:32px 24px;padding:16px 20px;display:flex}.social-share-title{color:var(--ink);letter-spacing:-.01em;font-size:13px;font-weight:800}.social-share-buttons{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.social-btn{border:1.5px solid var(--ink);color:#1e293b;cursor:pointer;box-shadow:2px 2px 0 var(--ink);background:#fff;border-radius:10px;align-items:center;gap:6px;padding:8px 14px;font-size:12px;font-weight:750;transition:transform .15s cubic-bezier(.2,1,.4,1),box-shadow .15s,background-color .15s;display:inline-flex}.social-btn:hover{box-shadow:3px 3px 0 var(--ink);transform:translateY(-2px)}.social-btn:active{box-shadow:1px 1px 0 var(--ink);transform:translateY(0)}.social-btn.btn-x{color:#fff;background:#000}.social-btn.btn-facebook{color:#fff;background:#1877f2}.social-btn.btn-kakao{color:#000;background:#fee500}.social-btn.btn-line{color:#fff;background:#06c755}.social-btn.btn-reddit{color:#fff;background:#ff4500}.social-btn.btn-copy{color:#0f172a;background:#f1f5f9}.modal-overlay{z-index:9999;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0d1117b8;place-items:center;padding:20px;animation:.2s cubic-bezier(.2,1,.4,1) modal-fade-in;display:grid;position:fixed;inset:0}.modal-content.keyboard-setup-modal{border:3px solid var(--ink);background:var(--paper);width:100%;max-width:620px;max-height:85vh;box-shadow:8px 8px 0 var(--ink);color:var(--ink);border-radius:24px;padding:24px;position:relative;overflow-y:auto}.modal-header{justify-content:space-between;align-items:flex-start;margin-block-end:12px;display:flex}.modal-badge{background:var(--cyan);color:var(--ink);border-radius:6px;margin-block-end:6px;padding:4px 8px;font-size:10px;font-weight:900;display:inline-block}.modal-header h2{margin:0;font-size:20px;font-weight:850}.modal-close-btn{border:2px solid var(--ink);cursor:pointer;background:#fff;border-radius:50%;width:32px;height:32px;font-weight:700}.modal-intro{color:#475569;margin-block-end:18px;font-size:13px;line-height:1.5}.os-tab-selector{flex-wrap:wrap;gap:8px;margin-block-end:18px;display:flex}.os-tab-selector button{border:2px solid var(--ink);cursor:pointer;box-shadow:2px 2px 0 var(--ink);background:#fff;border-radius:12px;padding:8px 14px;font-size:13px;font-weight:750}.os-tab-selector button.active{background:var(--ink);color:#fff;box-shadow:none}.instruction-card{border:2px solid var(--ink);background:#fff;border-radius:16px;padding:16px}.instruction-card h3{color:#0f172a;margin-block-end:8px;font-size:14px;font-weight:800}.instruction-card p{color:#64748b;margin-block-end:10px;font-size:12px}.code-command-box{color:#38bdf8;background:#0f172a;border-radius:10px;flex-direction:column;gap:8px;padding:12px;display:flex}.code-command-box code{word-break:break-all;font-family:monospace;font-size:12px}.copy-cmd-btn{align-self:flex-end;padding:6px 12px;font-size:11px}.step-list{color:#334155;margin:0;padding-left:20px;font-size:12px;line-height:1.7}.modal-footer{border-top:1px dashed #cbd5e1;justify-content:space-between;align-items:center;margin-block-start:20px;padding-block-start:14px;display:flex}.shortcut-tip{color:#64748b;font-size:11px}@keyframes modal-fade-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
