:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--theme-color-scheme:light;--ink:#f7f8f3;--panel:#fff;--panel-2:#edf3f3;--line:#cbd8dc;--text:#21394b;--muted:#4c5d6e;--theme-surface:#fff;--theme-surface-soft:#edf3f3;--theme-wash:#1d47580b;--theme-fg-strong:#21394b;--theme-fg-muted:#4c5d6e;--theme-fg-accent:#096b72;--theme-fg-warm:#91530d;--theme-fg-danger:#a43753;--theme-fg-success:#286c3b;--theme-fg-violet:#70479b;--ranking-surface:#fafdffd6;--ranking-scrim:#0c1f3047}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=light] .site-header{background:#fafcf7f2;box-shadow:0 5px 20px #21394b09}[data-theme=light] .site-footer{background:#edf3ed}[data-theme=light] .site-shell:before{opacity:.15}[data-theme=light] :is(input:not([type=range]):not([type=checkbox]):not([type=radio]),textarea,select){border-color:#849ca8}[data-theme=light] :is(button,a,input,select,textarea,summary):focus-visible{outline-offset:3px;outline:3px solid #096b72}[data-theme=light] :is(.game-panel,.tool-card,.toolbox-intro-art,.ranking-modal){box-shadow:0 14px 36px #21394b12}[data-theme=light] .roulette-panel.roulette-show{background:radial-gradient(at 25% 35%,#ffe3f2,#fff8e9 55%,#f9faf4);box-shadow:0 14px 40px #b2744820}[data-theme=light] .roulette-show .roulette-spin{color:#58324f;background:linear-gradient(130deg,#ffe6ab,#ffd3b9)}[data-theme=light] .roulette-show :is(.roulette-marquee strong,.roulette-winner strong){text-shadow:none}[data-theme=light] :is(.mortgage-panel,.wage-panel,.pdf-image-panel,.id-photo-panel,.image-crop-panel,.image-resize-panel,.image-pdf-panel,.image-compress-panel,.pdf-split-panel,.pdf-panel,.qr-panel,.password-panel,.solitaire-panel,.minesweeper-panel,.number-place-panel){box-shadow:0 16px 45px #21394b14}[data-theme=light] .mortgage-controls label>div{background:#fff;border-color:#849ca8}.solitaire-card.is-face-down{--theme-surface:initial;--theme-fg-warm:#ffc35a}[data-theme=dark] :is(.number-place-sectors span:not(.is-complete),.number-place-shields span,.date-range-primary-results p,.id-photo-zoom small,.id-photo-readout span,.wage-input-grid small,.mortgage-controls label small){color:var(--muted)}.site-header-inner{gap:16px}.header-nav-desktop{margin-left:auto}.site-theme-control{flex:none;position:relative}.site-theme-toggle{border:1px solid var(--line);background:var(--panel);min-height:44px;color:var(--text);white-space:nowrap;cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:8px 12px;font-size:.75rem;font-weight:700;display:inline-flex}.site-theme-toggle>span:first-child{font-size:1.15rem;line-height:1}.site-theme-toggle:hover{border-color:currentColor}.site-theme-notice{background:var(--panel);width:min(260px,75vw);color:var(--text);border:1px solid var(--line);border-radius:12px;padding:12px;font-size:.8rem;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 8px 24px #0002}@media (max-width:760px){.site-theme-control{margin-left:auto}.site-header-inner{gap:8px}.site-theme-toggle{padding-inline:9px}}
[data-typing-scene] :is(.game-panel,.practice-panel,.long-panel,.prefecture-panel){--panel:#fff;--text:#183f53;--muted:#435e6e;--cyan:#146b80;--coral:#a13d62;--yellow:#ffdf71;--line:#225d742e;--theme-fg-strong:var(--text);--theme-fg-muted:var(--muted);--theme-fg-accent:var(--cyan);--theme-fg-warm:var(--coral);--theme-fg-danger:var(--coral);--theme-fg-success:var(--cyan);--theme-fg-violet:var(--cyan);--theme-surface:color-mix(in srgb, var(--text), transparent 96%);--theme-surface-soft:color-mix(in srgb, var(--text), transparent 94%);--theme-wash:color-mix(in srgb, var(--text), transparent 96%);color:var(--text);isolation:isolate;background:radial-gradient(at 6% 92%,#fff 0 10%,#0000 10.4%),radial-gradient(at 96% 105%,#fff 0 16%,#0000 16.4%),linear-gradient(160deg,#e1f4ff,#f6fcff 48%,#e4f6f2);padding-bottom:84px;box-shadow:0 18px 55px #08263d2e}.practice-kind-picker,.word-set-picker{flex-wrap:wrap;gap:10px;display:flex}.practice-kind-picker{margin:24px 0 18px}.practice-kind-picker button,.word-set-picker button,.word-play-footer button{border:1px solid var(--line);min-height:48px;color:var(--text);background:var(--panel);cursor:pointer;font:inherit;border-radius:14px;padding:10px 20px;font-weight:750}.practice-kind-picker button[aria-pressed=true],.word-set-picker button[aria-pressed=true]{border:2px solid var(--cyan);background:color-mix(in srgb, var(--cyan), transparent 90%)}.practice-finger-explanation{color:var(--muted);margin:0 0 20px}[data-typing-scene] .word-play{--word-launch-duration:1.2s;grid-template-columns:minmax(240px,.9fr) minmax(0,1.1fr);min-height:0;padding:24px 0 0;scroll-margin-top:90px;display:grid}.word-play-heading,.word-set-picker,.word-course-picker{grid-column:1/-1}.word-play>.word-rocket-scene{grid-area:4/1/auto/-1;align-self:stretch;height:auto;min-height:650px}.word-play>.word-play-controls{grid-area:4/2;align-self:start;margin:160px 24px 24px 0}.word-play:focus-visible{outline:3px solid var(--cyan);outline-offset:4px}.word-play-heading{justify-content:space-between;align-items:center;gap:12px;padding:0 30px;display:flex}.word-play-heading p{color:var(--muted);margin:0 0 7px;font-size:.85rem;font-weight:700}.word-play-heading h2{letter-spacing:.03em;margin:0;font-size:clamp(1.6rem,4vw,2.2rem)}.word-play-heading>span{color:var(--muted);font-size:.8rem}.word-set-picker{padding:20px 30px 0}.word-set-picker button{background:0 0;flex:20%;justify-content:center;align-items:center;gap:10px;display:flex}.word-set-picker button>span{font-size:1.6rem;line-height:1}.word-course-picker{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:18px 24px 8px;display:grid}.word-course-picker button{border:2px solid var(--line);min-width:0;color:var(--text);background:color-mix(in srgb, var(--panel), transparent 22%);font:inherit;text-align:left;cursor:pointer;border-radius:16px;flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:10px;padding:16px 12px;font-size:.95rem;display:flex}.word-course-picker button[aria-pressed=true]{border-color:var(--cyan);background:color-mix(in srgb, var(--cyan), transparent 89%);font-weight:800}.word-course-picker button:focus-visible,.word-set-picker button:focus-visible{outline:3px solid var(--cyan);outline-offset:3px}.word-course-picker b{background:var(--panel);width:28px;height:28px;color:var(--cyan);border-radius:50%;flex:0 0 28px;place-items:center;display:grid}.word-course-picker p{text-align:center;color:var(--muted);grid-column:1/-1;margin:4px 0;font-size:.9rem;line-height:1.7}.word-course-picker .word-difficulty-title{text-align:left;color:var(--text);flex-wrap:wrap;align-items:center;gap:8px 16px;font-size:1.05rem;font-weight:800;display:flex}.word-difficulty-title span{color:var(--muted);font-size:.85rem;font-weight:500}.word-difficulty-label{align-items:center;gap:8px;font-weight:800;display:flex}.word-difficulty-detail{color:var(--muted);font-size:.85rem;font-weight:500;line-height:1.7}.word-difficulty-example{overflow-wrap:anywhere;margin-top:auto;font:650 .9rem/1.8 ui-monospace,monospace}.word-key-intro{color:var(--muted);margin:0;font-size:.95rem;line-height:1.9}.word-set-picker{padding-bottom:18px}.word-set-picker button{flex-wrap:wrap}.word-set-picker button small{color:var(--muted);flex-basis:100%;font-size:.75rem}.word-progress-summary{border:1px solid var(--line);background:var(--panel);color:var(--text);border-radius:16px;grid-column:1/-1;margin-bottom:8px;padding:16px}.word-progress-summary strong{flex-wrap:wrap;align-items:center;gap:8px 16px;font-size:1.1rem;display:flex}.word-progress-summary strong span{font-size:.9rem}.word-course-picker .word-progress-summary p{text-align:left;color:var(--text)}.word-progress-summary small{color:var(--muted);margin-top:8px;line-height:1.7;display:block}.word-course-picker .word-continue-button{border-color:var(--cyan);width:100%;margin-top:12px;font-weight:750;line-height:1.8;display:block}.word-course-record{color:var(--muted);font-size:.8rem;display:block}.word-course-record[data-complete=true]{color:var(--text);font-weight:800}.word-course-finished{border:1px solid var(--cyan);color:var(--text);background:var(--panel);border-radius:12px;padding:12px;font-weight:750;line-height:1.7}.word-course-finished small{font-size:.85rem;font-weight:500}.word-rocket-scene{contain:layout paint;pointer-events:none;border-top:1px solid var(--line);background:radial-gradient(at 12% 70%,#ffd78032,#0000 45%),radial-gradient(at 80% 12%,#4fbfd133,#0000 50%);scroll-margin-top:90px;position:relative;overflow:hidden}.word-rocket-scene[data-stop="1"]{background:radial-gradient(at 85% 20%,#ffdc8c44,#0000 50%),radial-gradient(at 10% 90%,#868ce622,#0000 65%)}.word-rocket-scene[data-stop="2"]{background:radial-gradient(at 85% 20%,#f795c444,#0000 50%),radial-gradient(at 10% 90%,#818ee633,#0000 65%)}.word-journey-route{z-index:1;flex-wrap:wrap;justify-content:center;gap:10px;display:flex;position:absolute;top:20px;left:20px;right:20px}.word-journey-route span{border:1px dashed var(--line);color:var(--muted);background:color-mix(in srgb, var(--panel), transparent 10%);border-radius:99px;align-items:center;gap:8px;padding:8px 14px;font-size:.85rem;display:flex}.word-journey-route span[data-current=true]{border:1px solid var(--cyan);color:var(--text);font-weight:800}.word-journey-route span[data-reached=true]{color:var(--cyan);border-style:solid}.word-flight-trail{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.word-flight-trail path{fill:none;stroke:color-mix(in srgb, var(--cyan), transparent 75%);stroke-width:3px;stroke-dasharray:7 12}[data-flight=launch] .word-flight-trail path{stroke:#edaa3c;animation:word-trail var(--word-launch-duration) linear both}.word-orbit{border:1px dashed color-mix(in srgb, var(--cyan), transparent 72%);border-radius:50%;width:570px;height:320px;position:absolute;top:40px;left:calc(50% - 285px);transform:rotate(-15deg)}.word-orbit-two{width:800px;height:410px;top:0;left:calc(50% - 400px)}.word-destination{filter:drop-shadow(0 0 22px #ffc96366);font-size:70px;position:absolute;top:80px;left:82%;transform:rotate(12deg)}.word-arrival{border:1px solid var(--line);color:var(--cyan);background:var(--panel);border-radius:99px;padding:6px 10px;font-size:.8rem;font-weight:800;position:absolute;top:125px;left:62%}[data-flight=launch] .word-arrival{animation:word-arrive var(--word-launch-duration) ease-out both}.word-rocket-flight{width:100%;height:100%;position:absolute;inset:0;transform:translate(12%,48%)}.word-rocket-body{width:84px;height:180px;position:relative}.word-rocket{background:linear-gradient(90deg,#d1e6eb,#fff 45%,#ecf9fc 62%,#a6c9d6);border:3px solid #21596b;border-bottom-width:12px;border-radius:50% 50% 18% 18%;width:84px;height:144px;position:relative;box-shadow:inset 0 18px #ef7694,0 12px 18px #21415118}.word-rocket-window{background:#d8f6ff;border:5px solid #297b94;border-radius:50%;place-items:center;width:60px;height:60px;font-size:37px;display:grid;position:absolute;top:45px;left:9px}.word-rocket-fin{z-index:-1;background:#ef7694;border:3px solid #21596b;width:32px;height:65px;position:absolute;top:75px}.word-rocket-fin.left{border-radius:100% 0 0 15%;left:-23px;transform:rotate(-9deg)}.word-rocket-fin.right{border-radius:0 100% 15% 0;right:-23px;transform:rotate(9deg)}.word-rocket-flame{transform-origin:top;background:linear-gradient(#fff4b0 0 15%,#ffc24b 40%,#ef825e 70%,#0000);border-radius:10% 10% 50% 50%;width:48px;height:50px;position:absolute;top:135px;left:15px}.word-rocket-pad{background:color-mix(in srgb, var(--cyan), transparent 77%);border-radius:50%;width:150px;height:13px;position:absolute;top:calc(48% + 185px);left:calc(12% - 33px)}.word-scene-caption{text-align:center;width:35%;color:var(--cyan);font-size:1rem;font-weight:800;position:absolute;top:calc(48% + 218px);left:2%}.word-rocket-burst{position:absolute;top:105px;left:42px}.word-rocket-burst i{background:var(--spark-color);border-radius:5px;width:14px;height:22px;animation:.9s ease-out both word-spark;position:absolute}[data-flight=boost] .word-rocket{animation:.52s cubic-bezier(.15,.65,.35,1) both word-boost}[data-flight=boost] .word-rocket-flame{animation:.52s ease-out both word-flame}[data-flight=launch] .word-rocket-flight{opacity:0;animation:word-voyage var(--word-launch-duration) cubic-bezier(.3,0,.25,1) both}[data-flight=launch] .word-rocket-body{animation:word-voyage-tilt var(--word-launch-duration) ease-in-out both}[data-flight=launch] .word-rocket-flame{transform:scale(1.3,2.7)}[data-flight=launch] .word-rocket-burst i{width:22px;height:28px;animation-duration:1s}.word-play-controls{z-index:1;text-align:center;border:1px solid var(--line);background:color-mix(in srgb, var(--panel), transparent 7%);-webkit-backdrop-filter:blur(8px);border-radius:24px;min-width:0;padding:22px;position:relative;box-shadow:0 12px 40px #15324c12}.word-stamps{justify-content:center;gap:6px;margin:0 auto 16px;padding:0;list-style:none;display:flex}.word-stamps li{border:1px dashed var(--line);overflow-wrap:anywhere;border-radius:12px;flex-wrap:wrap;flex:1;justify-content:center;align-items:center;gap:4px;min-width:0;padding:6px;font-size:.75rem;display:flex}.word-stamps li[data-complete=true]{border:1px solid var(--cyan);color:var(--cyan);background:color-mix(in srgb, var(--cyan), transparent 93%);font-weight:800}.word-stamps span{font-size:1.5rem}.word-fuel{background:color-mix(in srgb, var(--text), transparent 88%);border-radius:9px;max-width:400px;height:8px;margin:0 auto;overflow:hidden}.word-fuel span{background:linear-gradient(90deg,#24a7b6,#efad39);height:100%;transition:width .2s ease-out;display:block}.word-reading{margin:20px 0 8px;font-size:1.5rem;font-weight:700}.word-letters{letter-spacing:.08em;overflow-wrap:anywhere;margin:0;font:850 clamp(2.2rem,6vw,4rem)/1.3 ui-monospace,monospace}.word-letters .prompt-done{color:color-mix(in srgb, var(--text), transparent 60%)}.word-instruction{min-height:2.8em;color:var(--muted);margin:16px 0;font-size:.95rem}.word-actions{flex-wrap:wrap;justify-content:center;gap:10px;margin:10px 0;display:flex}.word-actions button{min-height:52px}.word-actions .share-button{color:var(--text);border-color:var(--cyan);background:0 0}.word-actions .start-button{color:#21394b;background:#ffdf71}.typing-space-hint{color:var(--text);text-align:center;flex-direction:column;align-items:center;gap:8px;margin:12px 0 24px;line-height:1.7;display:flex}.typing-space-hint>span{font-size:1rem;font-weight:800}.typing-space-hint kbd{border:2px solid var(--cyan);background:color-mix(in srgb, var(--cyan), transparent 92%);border-bottom-width:5px;border-radius:9px;width:156px;max-width:100%;padding:4px 12px;font-family:inherit;font-size:.9rem;font-weight:700;line-height:1.5;display:block}.typing-space-hint small{color:var(--muted);font-size:.8rem}.practice-panel:focus-visible{outline:3px solid var(--cyan);outline-offset:4px}.word-space-slot{min-height:90px}.word-space-slot .typing-space-hint{grid-template-columns:1fr 140px;gap:5px 8px;margin:12px 0;display:grid}.word-space-slot .typing-space-hint kbd{width:100%}.word-space-slot .typing-space-hint small{grid-column:1/-1}.word-play[data-phase=result] :is(.word-reading,.word-letters){display:none}.word-play-footer{color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;font-size:.8rem;display:flex}.word-play-footer button{background:0 0;padding:8px 14px;font-size:.85rem}.word-storage-note{color:var(--muted);margin:16px 0 0;font-size:.75rem}.word-result{color:var(--cyan);font-size:2rem;font-weight:800}.word-result span{color:var(--muted);margin-top:8px;font-size:1rem;display:block}.word-result small{color:var(--muted);margin-top:12px;font-size:.75rem;font-weight:500;line-height:1.8;display:block}@keyframes word-boost{0%{transform:translateY(0)rotate(-5deg)scale(1)}30%{transform:translateY(-60px)rotate(6deg)scale(1.18)}to{transform:translateY(0)rotate(0)scale(1)}}@keyframes word-flame{0%{transform:scaleY(1)}30%{transform:scale(1.5,2.4)}to{transform:scaleY(1)}}@keyframes word-voyage{0%{opacity:1;transform:translate(12%,48%)}12%{transform:translate(12%,50%)}40%{transform:translate(36%,40%)}72%{opacity:1;transform:translate(60%,18%)}to{opacity:0;transform:translate(84%,7%)}}@keyframes word-voyage-tilt{0%,12%{transform:rotate(0)}40%{transform:rotate(44deg)scale(.95)}72%{transform:rotate(32deg)scale(.65)}to{transform:rotate(24deg)scale(.06)}}@keyframes word-trail{0%{stroke-dashoffset:120px;opacity:.2}to{stroke-dashoffset:0;opacity:.75}}@keyframes word-arrive{0%,80%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes word-spark{0%{transform:rotate(var(--angle)) translateY(0) scale(.7);opacity:1}to{transform:rotate(var(--angle)) translateY(calc(-1 * var(--distance))) rotate(100deg) scale(.7);opacity:0}}@media (max-width:600px){[data-typing-scene] .word-play{grid-template-columns:minmax(0,1fr);scroll-margin-top:76px}.word-play>.word-rocket-scene{grid-area:4/1;height:auto}.word-play>.word-play-controls{grid-area:4/1;margin:310px 12px 20px}.word-play-heading{padding:0 16px;display:block}.word-play-heading>span{margin-top:8px;display:block}.word-set-picker{gap:6px;padding:16px 14px 0}.word-set-picker button{flex-direction:column;flex:20%;padding:10px 5px;font-size:.75rem}.word-course-picker{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:16px 12px 8px}.word-course-picker button{border-radius:12px;gap:8px;padding:12px 8px;font-size:.9rem}.word-difficulty-label{flex-wrap:wrap;gap:6px}.word-journey-route{gap:5px;left:8px;right:8px}.word-journey-route span{border-radius:12px;flex-direction:column;flex:1;gap:3px;padding:6px 2px;font-size:.65rem}.word-destination{font-size:48px;top:106px;left:72%}.word-arrival{font-size:.65rem;top:168px;left:64%}.word-rocket-flight{transform:translate(12%,12%)}.word-rocket-body{transform-origin:0 0;transform:scale(.7)}.word-rocket-pad{width:105px;top:266px;left:8%}.word-scene-caption{width:92%;font-size:.9rem;top:284px;left:4%}[data-flight=launch] .word-rocket-flight{animation-name:word-voyage-mobile}[data-flight=launch] .word-rocket-body{animation-name:word-voyage-tilt-mobile}.word-flight-trail{height:230px;top:100px}.word-play-controls{padding:18px 14px}.word-space-slot .typing-space-hint{grid-template-columns:1fr}.word-space-slot .typing-space-hint kbd{width:140px;margin:auto}.word-stamps{gap:6px}.word-stamps li{padding:6px;font-size:.7rem}.practice-kind-picker button{flex:130px;padding:10px;font-size:.85rem}}@keyframes word-voyage-mobile{0%{opacity:1;transform:translate(12%,12%)}12%{transform:translate(12%,12%)}40%{transform:translate(40%,30%)}72%{opacity:1;transform:translate(62%,20%)}to{opacity:0;transform:translate(77%,11%)}}@keyframes word-voyage-tilt-mobile{0%,12%{transform:rotate(0)scale(.7)}40%{transform:rotate(85deg)scale(.75)}72%{transform:rotate(8deg)scale(.55)}to{transform:rotate(24deg)scale(.06)}}[data-typing-scene=space] :is(.game-panel,.practice-panel,.long-panel,.prefecture-panel){--panel:#111c32;--text:#faf7ee;--muted:#a3b1c8;--cyan:#87e7ff;--coral:#ff9dcb;--line:#97beff33;background:radial-gradient(circle at 5% 14%,#e5d2ff 0 3px,#0000 4px),radial-gradient(circle at 94% 80%,#ffe29e 0 5px,#0000 6px),radial-gradient(at 96% 0,#423777 0%,#0000 50%),linear-gradient(150deg,#10263e,#141c36 60%,#213e59)}[data-typing-scene=festival] :is(.game-panel,.practice-panel,.long-panel,.prefecture-panel){--panel:#fffaf5;--text:#583251;--muted:#71556f;--cyan:#854570;--coral:#985311;--line:#73326330;background:radial-gradient(circle at 2% 5%,#ffe3a7 0 11%,#0000 11.4%),radial-gradient(circle at 98% 100%,#edc7ec 0 13%,#0000 13.4%),linear-gradient(130deg,#fff3df,#fff9f4 55%,#fff0f8)}[data-typing-scene] :is(.game-panel,.practice-panel,.long-panel,.prefecture-panel):before{display:none}[data-typing-scene] :is(.game-content,.practice-content,.long-content,.prefecture-content){z-index:1;position:relative}[data-typing-scene] :is(.mode-chip,.prefecture-reading,.long-mission-name,.practice-next-preview strong){color:var(--cyan)}[data-typing-scene] .prefecture-result-note{color:var(--cyan)!important}[data-typing-scene] .long-japanese{color:var(--text)}[data-typing-scene] :is(.star-drive-intro,.star-drive-heading,.result-orbit-emblem){color:var(--muted)}[data-typing-scene] .ranking-button{color:var(--cyan)}[data-typing-scene] .delta-copy{color:var(--cyan)!important}[data-typing-scene] :is(.key-impact.checkpoint,.practice-stars,.result-orbit-emblem strong){color:var(--coral)}[data-typing-scene] .key-impact{font-size:1rem;top:87px;right:20px}[data-typing-scene] .practice-key-row kbd{color:var(--text);background:color-mix(in srgb, var(--text), transparent 95%)}[data-typing-scene] .practice-key-row kbd.is-target{color:var(--text);border:2px solid var(--cyan);box-shadow:none}[data-typing-scene] .orbit-meter span,[data-typing-scene] .checkpoint-track span{background:color-mix(in srgb, var(--text), transparent 85%)}[data-typing-scene] .orbit-meter span.is-lit,[data-typing-scene] .checkpoint-track span.is-passed{background:var(--cyan);box-shadow:none}.practice-reading-hint{color:var(--muted);margin:0 0 22px;font-size:1rem}.practice-sequence{letter-spacing:.14em;font-size:clamp(1.3rem,3vw,1.8rem);font-weight:750}.practice-keyboard-help{color:var(--muted);margin:22px auto}.practice-keyboard-help summary{cursor:pointer;min-height:44px;padding:10px;font-weight:700}.practice-keyboard-help summary:focus-visible{outline:3px solid var(--cyan);outline-offset:3px;border-radius:8px}.finger-practice-panel{scroll-margin-top:84px}.finger-practice-panel .practice-content{min-height:0;padding:20px 24px 24px}.finger-practice-panel :is(.practice-ready,.practice-running){width:100%;min-width:0}.finger-practice-panel .practice-ready h2{font-size:clamp(1.4rem,3vw,2rem)}.finger-practice-panel .practice-ready>p{margin:10px 0;font-size:.85rem}.finger-practice-panel .practice-reading-hint{margin-bottom:8px;font-size:.9rem}.finger-practice-panel .practice-sequence{min-height:0;margin-bottom:8px;line-height:1.6}.finger-practice-panel .practice-score{margin:12px 0 6px}.practice-finger-guide{width:min(720px,100%);margin:0 auto 8px;position:relative}.finger-guide-toggle{z-index:2;min-height:44px;color:var(--muted);font:inherit;text-underline-offset:4px;cursor:pointer;background:0 0;border:0;border-radius:8px;margin-left:auto;padding:8px;font-size:.7rem;text-decoration:underline;display:block;position:absolute;top:8px;right:6px}.practice-finger-guide[data-visible=false]{min-height:44px}.finger-guide-toggle:focus-visible{outline:3px solid var(--cyan)}.finger-placement-guide{--guide-ink:#263f50;border:1px solid var(--line);background:color-mix(in srgb, var(--panel), transparent 18%);border-radius:20px;margin:0;padding:12px 8px 8px}.finger-guide-caption{min-height:36px;color:var(--text);flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;padding:0 105px 0 8px;font-size:.95rem;font-weight:750;display:flex}.finger-guide-caption kbd{border:2px solid var(--guide-ink);background:var(--guide-active);min-width:36px;color:var(--guide-ink);border-bottom-width:4px;border-radius:8px;padding:2px 10px;font:800 1.25rem/1.4 ui-monospace,monospace}.finger-return{align-items:center;gap:6px;padding-left:10px;display:inline-flex}.finger-return small{color:var(--muted);font-size:.75rem}.finger-return kbd{color:var(--text);border-color:var(--line);background:0 0}.finger-guide-drawing{width:100%;height:auto;display:block;overflow:visible}.finger-keyboard-base{fill:#edf1f5;stroke:#d0dbe3;stroke-width:2px}.finger-home-line{fill:none;stroke-width:3px;stroke-dasharray:5 7;opacity:.45}.finger-home-line[data-ready=true]{opacity:.8}.finger-guide-key rect{fill:var(--finger-color);fill-opacity:.48;stroke:#aebeca;stroke-width:1.5px}.finger-guide-key[data-home-key=true] rect{fill-opacity:.85;stroke:#758994;stroke-width:2px}.finger-guide-key[data-target-key=true] rect{fill-opacity:1;stroke:var(--guide-ink);stroke-width:5px}.finger-guide-key text{fill:var(--guide-ink);font:750 29px ui-monospace,monospace}.finger-home-bump{stroke:var(--guide-ink);stroke-width:4px;stroke-linecap:round}.finger-hand-base,.finger-skin{fill:#ffe4cc;stroke:#84746b;stroke-width:2px;stroke-linejoin:round}.finger-wristband{fill:#d4e7ed;stroke:none}.finger-tip{fill:var(--finger-color);stroke:#fff;stroke-width:2px}.finger-home-letter{fill:var(--guide-ink);font:800 25px ui-monospace,monospace}.finger-tip-ring{fill:none;stroke:var(--guide-ink);stroke-width:4px}.finger-hand-digit[data-active-finger=true]{animation:.9s ease-in-out 2 guide-finger-press}.finger-hand-digit[data-active-finger=true] .finger-skin{stroke:var(--guide-ink);stroke-width:3px}.finger-active-line-halo{fill:none;stroke:#fff;stroke-width:10px;stroke-linecap:round}.finger-active-line{fill:none;stroke:var(--guide-ink);stroke-width:4px;stroke-linecap:round}.finger-hand-label{fill:var(--guide-ink);font-size:20px;font-weight:800}.finger-guide-note{color:var(--muted);margin:0;font-size:.8rem;line-height:1.7}@keyframes guide-finger-press{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@media (max-width:600px){.finger-practice-panel .practice-content{padding:16px 10px}.finger-placement-guide{border-radius:14px;padding:10px 2px 8px}.finger-guide-toggle{position:static}.finger-guide-caption{gap:5px;padding:0 4px;font-size:.8rem}.finger-guide-caption kbd{font-size:1rem}.finger-return{padding-left:0}.finger-guide-note{padding:0 8px;font-size:.75rem}.finger-hand-label{font-size:27px}.finger-guide-key text{font-size:34px}}.typing-display-settings{display:block}.typing-display-settings summary{cursor:pointer;min-height:44px;padding:12px 0;font-weight:700}.typing-display-settings summary small{margin-left:12px;font-weight:400}.typing-display-settings summary:focus-visible{outline:3px solid var(--cyan);outline-offset:3px;border-radius:8px}.typing-display-settings[open]>[role=group]{margin:12px 0 8px}.typing-display-settings>[role=group]{min-width:0}.typing-display-settings>[role=group]:not(:first-child){border-top:1px solid var(--line);padding-top:10px}.typing-celebration{--particle-origin:6%;z-index:0;pointer-events:none;height:84px;position:absolute;inset:auto 0 0;overflow:hidden;-webkit-mask-image:linear-gradient(#0000,#000 15%);mask-image:linear-gradient(#0000,#000 15%)}.typing-celebration[data-side=right]{--particle-origin:94%}.typing-celebration i{top:52%;left:var(--particle-origin);background:var(--particle-color);clip-path:polygon(50% 0,62% 35%,100% 38%,71% 62%,80% 100%,50% 78%,20% 100%,29% 62%,0 38%,38% 35%);width:15px;height:15px;animation:.85s cubic-bezier(.08,.7,.15,1) both typing-confetti-flight;position:absolute}.typing-celebration i:nth-child(3n){clip-path:none;border-radius:3px;width:11px;height:18px}.typing-celebration[data-power=super] i{width:22px;height:22px;animation-duration:1.1s}.typing-celebration[data-power=super] .typing-celebration-badge{color:var(--cyan);font-size:72px}.typing-celebration[data-power=word] .typing-celebration-badge{font-size:60px}.typing-celebration-badge{top:52%;left:var(--particle-origin);color:var(--coral);font-size:48px;line-height:1;animation:.85s ease-out both typing-star-rise;position:absolute}@keyframes typing-confetti-flight{0%{transform:translate(-50%, -50%) rotate(var(--particle-angle)) translateY(0) scale(.6);opacity:1}to{transform:translate(-50%, -50%) rotate(var(--particle-angle)) translateY(calc(-1 * var(--particle-distance))) rotate(180deg) scale(.7);opacity:0}}@keyframes typing-star-rise{0%{opacity:1;transform:translate(-50%,-50%)scale(.7)}to{opacity:0;transform:translate(-50%,-90px)scale(1.3)}}[data-typing-effects=calm] .typing-celebration i,[data-typing-effects=calm] .word-rocket-burst{display:none}[data-typing-effects=calm] :is(.game-panel,.practice-panel,.long-panel,.prefecture-panel) *,[data-typing-effects=calm] :is(.game-panel,.practice-panel,.long-panel,.prefecture-panel) :before,[data-typing-effects=calm] :is(.game-panel,.practice-panel,.long-panel,.prefecture-panel) :after{transition:none!important;animation:none!important}[data-typing-effects=calm] .typing-celebration-badge{font-size:26px;transform:translate(-50%,-50%)}@media (prefers-reduced-motion:reduce){.word-rocket-burst{display:none}[data-typing-scene] :is(.game-panel,.practice-panel,.long-panel,.prefecture-panel) *,[data-typing-scene] :is(.game-panel,.practice-panel,.long-panel,.prefecture-panel) :before,[data-typing-scene] :is(.game-panel,.practice-panel,.long-panel,.prefecture-panel) :after{transition:none!important;animation:none!important}.typing-celebration i{display:none}.typing-celebration-badge{font-size:26px;transform:translate(-50%,-50%)}}@media (min-width:1024px){.mode-prefecture .prefecture-stage{align-items:start;padding-top:12px}.mode-prefecture .typing-mission-dock{gap:6px;margin-bottom:12px;padding:8px}.mode-prefecture .typing-mission-heading{padding:4px 8px}.mode-prefecture .typing-mission-heading strong{margin-top:3px}.mode-prefecture .typing-display-settings{padding:2px 8px 0}.mode-prefecture .typing-display-settings summary{padding:8px 0}.mode-prefecture .game-kicker{margin-bottom:6px}.mode-prefecture .game-title{font-size:clamp(2.7rem,4vw,3rem)}.mode-prefecture .game-lead{margin:8px auto 12px}.mode-prefecture .prefecture-quiz-entry{margin-bottom:8px}.mode-prefecture .prefecture-content:has(.prefecture-ready){min-height:0;padding:10px clamp(18px,3vw,32px)}.mode-prefecture .prefecture-ready .mode-chip{margin-bottom:10px}.mode-prefecture .prefecture-ready .prefecture-course-grid,.mode-prefecture .prefecture-ready .prefecture-rule{margin-bottom:12px}.mode-prefecture .status-item{padding:8px 12px}.mode-prefecture .prefecture-ready .prefecture-course{min-height:100px;padding:12px 18px}.mode-prefecture .prefecture-ready .prefecture-course strong{margin-top:8px}}
