.jp-learning{line-height:1.8}.jp-header{margin:12px 0 26px}.jp-header>p{margin:8px 0}.jp-note,.jp-save-note{color:#55706d;font-size:.9rem}.jp-learning button{cursor:pointer;touch-action:manipulation;color:var(--ink)}.jp-learning button:disabled{cursor:default;opacity:.65}.jp-learning button:focus-visible,.jp-learning summary:focus-visible,.jp-learning a:focus-visible,.jp-learning input:focus-visible{outline-offset:4px;outline:3px solid #b35d28}.jp-learning h2:focus,.jp-learning h3:focus{outline-offset:5px;outline:2px dashed #b35d28}.jp-tools{overflow-wrap:anywhere;background:#f4faf6;border:1px solid #d9e7df;border-radius:22px;margin:24px 0;padding:clamp(16px,3vw,28px)}.jp-tool-nav{flex-wrap:wrap;gap:8px;display:flex}.jp-tool-nav button,.jp-tools article>button,.jp-flashcard>button,.jp-tools [role=status]>button{background:#fffdf8;border:1px solid #a4b8b1;border-radius:12px;min-height:44px;padding:10px 14px;font-weight:700}.jp-tool-nav button[aria-pressed=true]{color:#fff;background:#1f716c}.jp-daily-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:18px;display:grid}.jp-daily-grid article{background:#fffdf8;border:1px solid #d9e7df;border-radius:16px;flex-direction:column;align-items:flex-start;padding:18px;display:flex}.jp-daily-grid h3{margin:8px 0}.jp-daily-grid article>button{margin-top:auto}.jp-tools progress{accent-color:#1f716c;width:100%}.jp-flashcard{background:#fff2d2;border-radius:16px;margin-top:20px;padding:24px}.jp-flashcard .jp-sentence{font-size:1.5rem}.jp-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.jp-stats p{background:#fff;border-radius:14px;padding:14px;display:grid}.jp-stats strong{font-size:1.5rem}.jp-stage-progress{margin:14px 0}.jp-recorder audio{max-width:100%;display:block}.jp-recorder{border-top:1px solid #d9e7df;margin-top:18px}@media (width<=720px){.jp-daily-grid,.jp-stats{grid-template-columns:1fr}}.jp-levels{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.jp-levels button{text-align:left;background:#fffdf8;border:2px solid #e7dbc9;border-radius:20px;gap:5px;padding:20px;display:grid}.jp-levels button:first-child{background:linear-gradient(140deg,#fff2d2,#fffdf8)}.jp-levels button:nth-child(2){background:linear-gradient(140deg,#ddf1e8,#fffdf8)}.jp-levels button:nth-child(3){background:linear-gradient(140deg,#ece9fb,#fffdf8)}.jp-levels button[aria-pressed=true]{border-color:#1f716c;box-shadow:0 0 0 2px #1f716c}.jp-levels small{color:#55706d;letter-spacing:.08em;font-size:.75rem}.jp-levels span{font-size:.92rem}.jp-save-note{margin:16px 0 24px}.jp-overview{justify-content:space-between;align-items:center;gap:18px;display:flex}.jp-overview h2{margin:0;font-size:1.25rem}.jp-overview p{margin:8px 0 18px}.jp-overview>button{flex:none}.jp-actions{flex-wrap:wrap;align-items:center;gap:12px;margin:16px 0;display:flex}.jp-actions button,.jp-example button,.jp-feedback button{background:#fffdf8;border:1px solid #a4b8b1;border-radius:12px;min-height:44px;padding:10px 16px;font-weight:700}.jp-learning .jp-primary{color:#fff;background:#1f716c;border:1px solid #1f716c;border-radius:12px;min-height:46px;padding:12px 18px;font-weight:750}.jp-actions button[aria-pressed=true]{background:#ddf1e8;border-color:#1f716c}.jp-actions label{cursor:pointer;align-items:center;gap:6px;min-height:44px;display:inline-flex}.jp-actions input{accent-color:#1f716c;width:18px;height:18px}.jp-actions p{margin:0}.jp-lesson-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:22px 0;display:grid}.jp-lesson-card{text-align:left;box-shadow:var(--shadow-soft);background:#fffdf8;border:1px solid #e7dbc9;border-radius:20px;gap:7px;padding:22px;display:grid}.jp-lesson-card:hover{border-color:#1f716c}.jp-lesson-card small{color:#55706d}.jp-study-tip{background:#fff2d2;border-left:4px solid #c2861a;border-radius:0 16px 16px 0;margin:24px 0;padding:18px 22px}.jp-study-tip p{margin:5px 0 0}.jp-lesson{background:var(--card);border:1px solid #e7dbc9;border-radius:24px;padding:clamp(18px,4vw,36px)}.jp-lesson h2{overflow-wrap:anywhere;margin:4px 0;font-size:clamp(1.5rem,5vw,2rem)}.jp-lesson h3{margin:30px 0 14px}.jp-goal{color:#335e57}.jp-learning .jp-text-button{text-underline-offset:4px;background:0 0;border:none;min-height:44px;padding:10px 0;text-decoration:underline}.jp-points{padding-left:1.6em}.jp-points li{padding:5px 0 9px 4px}.jp-examples{gap:14px;display:grid}.jp-example{overflow-wrap:anywhere;background:#f4faf6;border:1px solid #d9e7df;border-radius:16px;padding:18px 22px}.jp-example p{margin:5px 0}.jp-example .jp-sentence{font-size:clamp(1.15rem,4vw,1.4rem);font-weight:750}.jp-reading,.jp-romaji{color:#4c6762;font-size:.93rem}.jp-example button{margin-top:8px}.jp-kana{margin:24px 0}.jp-learning summary{cursor:pointer;padding:12px 0;font-weight:700}.jp-kana-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;max-width:560px;margin:20px auto;display:grid}.jp-kana-grid button{background:#fff;border:1px solid #b6c9c1;border-radius:12px;gap:2px;min-height:62px;padding:8px 2px;display:grid}.jp-kana-grid strong{font-size:1.4rem}.jp-kana-grid small{color:#55706d}.jp-quiz{background:#fffdf8;border:2px solid #87b5a6;border-radius:24px;margin-top:26px;padding:clamp(18px,4vw,32px)}.jp-quiz h3{overflow-wrap:anywhere;font-size:1.25rem}.jp-quiz-tools{justify-content:flex-start;font-size:.9rem}.jp-quiz-tools>span{margin-right:auto}.jp-choices{gap:12px;margin:20px 0;display:grid}.jp-choices button{text-align:left;overflow-wrap:anywhere;background:#fff;border:2px solid #d9e0d8;border-radius:14px;min-height:52px;padding:14px 18px}.jp-choices button:disabled{opacity:1;color:#4c6762}.jp-choices .jp-answer-correct{background:#ddf1e8;border-color:#1f716c}.jp-choices .jp-answer-wrong{background:#ffe3d6;border-color:#b0451f}.jp-feedback{padding:4px 0 18px}.jp-feedback p{margin:8px 0 16px}.jp-review{border-top:1px solid #d9e0d8;margin-top:20px;padding-top:12px}.jp-review h4{margin:10px 0}.jp-sources{color:#55706d;margin-top:30px;font-size:.9rem}.jp-sources a{color:#1f716c}.jp-review-material{background:#f4faf6;border-radius:18px;padding:12px 22px}@media (width<=620px){.jp-levels{gap:8px}.jp-levels button{border-radius:15px;padding:12px 10px}.jp-levels span{font-size:.82rem}.jp-levels strong{font-size:1.2rem}.jp-levels small{letter-spacing:0;font-size:.68rem}.jp-lesson-grid{grid-template-columns:1fr}.jp-overview{flex-direction:column;align-items:flex-start;gap:0}.jp-overview>button{width:100%}.jp-lesson-bottom{flex-direction:column;align-items:stretch}.jp-example{padding:16px}.jp-quiz-tools>span{width:100%}.jp-kana-grid{gap:5px}}:where(.jp-lab-nav,.jp-lab-setup,.jp-lab-exercise,.jp-lab-result,.jp-word-filters) button{font:inherit;background:#fffdf8;border:1px solid #a4b8b1;border-radius:.6rem;min-height:44px;padding:.6rem .8rem}.jp-learning select:focus-visible{outline-offset:4px;outline:3px solid #b35d28}.jp-lab-nav,.jp-reading-list,.jp-token-bank,.jp-token-answer{flex-wrap:wrap;gap:.65rem;margin:1rem 0;display:flex}.jp-lab-nav button[aria-pressed=true]{color:#fff;background:#245f57}.jp-lab-setup{background:#f6f8f4;border-radius:1rem;margin:1rem 0;padding:1.2rem}.jp-lab-setup label{margin:.8rem 0;display:block}.jp-lab-setup select{max-width:100%;font:inherit;background:#fff;border:1px solid #9cafaa;border-radius:.5rem;padding:.65rem}.jp-word-filters{flex-wrap:wrap;align-items:center;gap:.8rem;display:flex}.jp-word-filters select{font:inherit;max-width:100%;padding:.6rem}.jp-kana-reference{grid-template-columns:repeat(auto-fit,minmax(125px,1fr));gap:.5rem;max-height:260px;margin:1rem 0;padding:.25rem;display:grid;overflow-y:auto}.jp-kana-reference button{min-height:44px;font-size:.95rem}.jp-lab-exercise form{flex-wrap:wrap;align-items:end;gap:.8rem;margin:1rem 0;display:flex}.jp-lab-exercise form label{flex:220px;gap:.5rem;min-width:0;display:grid}.jp-lab-exercise input[lang=ja]{box-sizing:border-box;width:100%;font:inherit;border:1px solid #879d96;border-radius:.5rem;padding:.8rem;font-size:1.15rem}.jp-token-answer{background:#f5faf8;border:2px dashed #859e97;border-radius:.75rem;align-items:center;min-height:72px;padding:1rem}.jp-token-bank button,.jp-token-answer button{cursor:grab;min-height:44px}.jp-token-bank button:disabled,.jp-token-answer button:disabled{cursor:default}.jp-reading{background:#fffdf6;border:1px solid #dfd8bc;border-radius:.75rem;margin:1rem 0;padding:1rem}.jp-reading-line{overflow-wrap:anywhere;font-size:1.2rem;line-height:2.3}.jp-reading .jp-reading-word{min-height:44px;font-size:inherit;line-height:inherit;color:#194c40;background:0 0;border:0;border-bottom:1px dotted #50746a;border-radius:0;padding:.15rem .1rem;display:inline}.jp-reading .jp-reading-word:hover{background:#e4f2e9}.jp-dictionary{background:#e9f3ed;border-radius:.5rem;margin:1rem 0;padding:.85rem;line-height:1.9}.jp-dictionary button{margin:.5rem}.jp-lab-result article,.jp-feedback{overflow-wrap:anywhere}.jp-helpers{margin-top:1.2rem}.jp-helper-filters{flex-wrap:wrap;gap:.8rem;margin:1rem 0;display:flex}.jp-helper-filters label{flex:180px;gap:.4rem;min-width:0;display:grid}.jp-helper-filters input,.jp-helper-filters select,.jp-helpers select,.jp-free-conversation textarea{box-sizing:border-box;max-width:100%;min-height:44px;font:inherit;color:#173f37;background:#fff;border:1px solid #78968c;border-radius:.5rem;padding:.7rem}.jp-free-conversation textarea{resize:vertical;width:100%;min-height:100px;margin:.6rem 0;display:block}.jp-search-results{grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr));gap:1rem;display:grid}.jp-search-results article,.jp-offline-pack,.jp-report-output article{overflow-wrap:anywhere;background:#f7faf7;border:1px solid #cfdfd5;border-radius:.75rem;padding:1rem}.jp-search-results h3{margin:.5rem 0}.jp-writing-grid{aspect-ratio:1;touch-action:none;-webkit-user-select:none;user-select:none;background:#fffdf8;border:2px solid #88a69a;border-radius:.75rem;width:min(100%,360px);margin:1rem auto;display:block}.jp-stroke-animation{stroke-dasharray:1;stroke-dashoffset:1px;animation:.9s linear forwards jp-stroke}@keyframes jp-stroke{to{stroke-dashoffset:0}}.jp-pack-lessons{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:.4rem;margin:.8rem 0;display:grid}.jp-helpers fieldset{border:1px solid #b6cfc3;border-radius:.75rem;min-width:0;margin:1rem 0}.jp-helpers fieldset>label{display:block}:is(.jp-pack-lessons label,.jp-helpers label:has(input[type=checkbox])){align-items:center;gap:.5rem;min-height:44px;display:flex}.jp-chat-history{padding-left:1.3rem}.jp-chat-history li{overflow-wrap:anywhere;background:#eef5ef;border-radius:.75rem;margin:.6rem 0;padding:.8rem}.jp-report-output{overflow-wrap:anywhere}.jp-report-output article{margin:.8rem 0}@media print{body.jp-report-mode *{visibility:hidden}body.jp-report-mode .jp-report-output,body.jp-report-mode .jp-report-output *{visibility:visible}body.jp-report-mode .jp-report-output{color:#000;background:#fff;padding:1rem;position:absolute;inset:0}.jp-report-output article{break-inside:avoid}.jp-report-output h3{break-after:avoid}}@media (width<=520px){.jp-lab-setup,.jp-reading{padding:.8rem}.jp-lab-nav button,.jp-reading-list button{flex:42%}.jp-lab-exercise form button{width:100%}.jp-kana-reference{grid-template-columns:repeat(2,minmax(0,1fr))}}:root{--ink:#143b39;--ink-soft:#55706d;--ink-faint:#839795;--paper:#fff9f0;--paper-warm:#fdf1e3;--card:#fffdf9f0;--teal:#1f716c;--teal-soft:#d9ece7;--coral:#e4744c;--coral-deep:#b0451f;--coral-soft:#ffe3d6;--butter:#f6c96b;--butter-soft:#fff2d2;--lilac:#a9a3e0;--lilac-soft:#ece9fb;--mint:#6fbfa5;--mint-soft:#ddf1e8;--round:22px;--round-lg:30px;--shadow-soft:0 14px 34px #be8c692e;--shadow-lift:0 18px 44px #be8c6942;color:var(--ink);background:var(--paper);font-synthesis:none;text-rendering:optimizelegibility;font-family:Inter,Noto Sans TC,system-ui,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at 8% 4%, #f6c96b47, transparent 24rem), radial-gradient(circle at 96% 12%, #a9a3e038, transparent 22rem), radial-gradient(circle at 88% 82%, #6fbfa538, transparent 26rem), radial-gradient(circle at 4% 70%, #e4744c29, transparent 24rem), var(--paper);background-attachment:fixed;min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}main{width:min(920px,100% - 32px);margin:0 auto;padding:64px 0}.auth-shell{place-items:center;min-height:100vh;display:grid}.auth-card{background:#fffffcf0;border:1px solid #153d3b1f;border-radius:28px;width:min(460px,100%);padding:clamp(28px,6vw,52px);box-shadow:0 22px 70px #1b413e1f}.auth-card h1{font-size:clamp(2rem,7vw,3.2rem)}.auth-intro,.auth-help{color:#607270;line-height:1.7}.auth-card form{gap:9px;margin-top:26px;display:grid}.auth-card label{margin-top:10px;font-weight:750}.auth-card input{background:#fff;border:2px solid #d9e1dc;border-radius:12px;width:100%;padding:13px 14px}.login-button{color:#fff;cursor:pointer;background:#1f716c;border:0;border-radius:12px;margin-top:14px;padding:13px 20px;font-weight:800}.login-button:disabled{opacity:.65;cursor:wait}.auth-error,.sync-error{color:#a74634;font-weight:700}.auth-help{margin-top:24px;font-size:.9rem}.status-screen{place-items:center;min-height:100vh;font-weight:750;display:grid}.user-bar{border-bottom:1px solid #153d3b26;justify-content:space-between;align-items:center;margin-bottom:38px;padding-bottom:16px;display:flex}.user-bar button{color:#425e5b;cursor:pointer;background:0 0;border:1px solid #9aaba7;border-radius:999px;padding:8px 14px}.hero{margin-bottom:36px}.eyebrow{color:#a8492a;letter-spacing:.15em;text-transform:uppercase;font-size:.78rem;font-weight:800}h1{max-width:700px;margin:8px 0 14px;font-family:Georgia,Noto Serif TC,serif;font-size:clamp(2.3rem,6vw,4.5rem);line-height:1.08}.hero>p:last-child{color:#526967;font-size:1.05rem}.dashboard,.practice{border-radius:var(--round-lg);background:var(--card);box-shadow:var(--shadow-soft);border:2px solid #f2e2cd;padding:clamp(24px,5vw,48px);position:relative}.dashboard:before,.practice:before{content:"";border-radius:var(--round-lg) var(--round-lg) 0 0;background:linear-gradient(90deg, var(--butter), var(--coral) 34%, var(--lilac) 67%, var(--mint));height:8px;position:absolute;inset:-2px -2px auto}.dashboard{margin-bottom:22px}.section-kicker{color:#a8492a;letter-spacing:.1em;margin:0 0 6px;font-size:.78rem;font-weight:800}.dashboard h2{margin:0 0 22px}.empty-progress{color:#607270}.skill-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:22px;display:grid}.overview-stats{flex-wrap:wrap;gap:10px;margin:8px 0 18px;display:flex}.overview-stats span{color:#4f6664;background:#edf3ef;border-radius:9px;padding:8px 11px;font-size:.86rem}.skill-stat{background:#f0f4ef;border-radius:16px;gap:5px;padding:16px;display:grid}.skill-stat span{color:#607270;font-weight:700}.skill-stat strong{font-family:Georgia,serif;font-size:1.65rem}.skill-stat small{color:#71817f}.retry{color:#1f716c;cursor:pointer;background:0 0;border:1px solid #1f716c;border-radius:999px;padding:10px 17px;font-weight:750}.retry:disabled{color:#98a5a1;cursor:default;border-color:#c6ceca}.retry+.retry{margin-left:8px}.retry-banner{color:#9b4d2d;font-weight:750}.favorite-toggle{color:#875b08;cursor:pointer;background:0 0;border:0;margin:12px 0 0;font-weight:750}.favorite-toggle:focus-visible{outline-offset:3px;outline:3px solid #ef9c54}.audio-controls{align-items:center;gap:16px;margin-bottom:18px;display:flex}.audio-controls audio{display:none}.speech-status{color:#607270;font-size:.88rem}.audio-controls{flex-wrap:wrap}.audio-controls select{border:1px solid #cbd8d3;border-radius:8px;padding:7px}.audio-failures{color:#8a4a24;margin:10px 0;font-size:.88rem}.parent-report{border:1px solid #dce5df;border-radius:12px;margin:14px 0;padding:12px}.parent-report summary{color:#245e59;cursor:pointer;font-weight:800}.report-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:12px 0;display:grid}.report-grid span{background:#f0f4ef;border-radius:8px;padding:9px;font-size:.85rem}.report-actions{gap:8px;display:flex}.report-actions button{color:#fff;cursor:pointer;background:#397c72;border:0;border-radius:8px;padding:8px 12px}.speak-button,.spelling-form button{color:#fff;cursor:pointer;background:#287873;border:0;border-radius:10px;padding:11px 16px;font-weight:750}.spelling-form{gap:8px;margin-bottom:16px;display:grid}.spelling-form>div{gap:10px;display:flex}.spelling-form input{border:2px solid #cddbd7;border-radius:12px;flex:1;min-width:0;padding:12px 14px;font-size:1.05rem}.sync-error{margin-bottom:0}.picker{align-items:baseline;gap:12px;margin-bottom:14px;display:flex}.picker:last-of-type{margin-bottom:30px}.picker-label{color:#607270;letter-spacing:.06em;flex:0 0 4.5rem;font-size:.82rem;font-weight:800}.picker-options{flex-wrap:wrap;gap:8px;display:flex}.vocabulary-filters{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:14px;display:grid}.vocabulary-filters label{color:#4f6664;gap:5px;font-size:.84rem;font-weight:750;display:grid}.vocabulary-filters select{color:#254f4c;background:#fff;border:1px solid #cbd8d3;border-radius:10px;min-width:0;padding:9px 10px}.chip,.next{cursor:pointer;border:0;border-radius:999px;font-weight:750}.chip{color:#44605e;background:#f2e9dc;border:2px solid #0000;padding:9px 17px;transition:transform .12s}.chip:hover{transform:translateY(-1px)}.chip.active{color:#fff;background:var(--teal);box-shadow:0 3px #145450}.next{padding:12px 22px;transition:transform .12s,box-shadow .12s;box-shadow:0 4px #9c4526}.next:active{transform:translateY(4px);box-shadow:0 0 #9c4526}.chip:focus-visible,.choice:focus-visible,.next:focus-visible,.retry:focus-visible{outline-offset:3px;outline:3px solid #ef9c54}.empty-practice{padding:12px 0 4px}.empty-practice p{color:#607270;line-height:1.7}.question-meta{flex-wrap:wrap;gap:8px;display:flex}.question-meta span{color:#4f6664;background:#f0f1eb;border-radius:8px;padding:5px 10px;font-size:.8rem;font-weight:700}.question-timer{color:#315b58;justify-content:space-between;align-items:center;gap:12px;margin:14px 0 6px;display:flex}.question-timer strong{font-variant-numeric:tabular-nums;font-size:1.1rem}.pause-toggle{color:#225c57;cursor:pointer;background:#eef7f5;border:1px solid #76a7a2;border-radius:999px;padding:8px 14px;font-weight:700}.pause-toggle:hover{background:#dcefeb}.pause-toggle:focus-visible{outline-offset:3px;outline:3px solid #ef9c54}.paused-message{color:#714117;background:#fff2df;border-radius:10px;margin:10px 0;padding:12px 14px;font-weight:700}.quiz-result{text-align:center;padding:18px 0 8px}.test-preview{background:#fff2df;border-radius:14px;flex-wrap:wrap;align-items:center;gap:12px;margin:14px 0;padding:14px;display:flex}.test-preview span{color:#6e6358}.question-progress{flex-wrap:wrap;gap:5px;margin:14px 0;display:flex}.question-progress span{color:#667673;background:#edf0ed;border-radius:50%;place-items:center;width:27px;height:27px;font-size:.75rem;display:grid}.question-progress .correct{color:#fff;background:#33866c}.question-progress .incorrect{color:#fff;background:#c65e4a}.question-progress .current{color:#fff;background:#bf5b32}.question-progress .uncertain{color:#704c06;background:#ffe29b}.uncertain-toggle{color:#805912;cursor:pointer;background:0 0;border:0;font-weight:750}.result-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:22px 0;display:grid}.result-stats div{background:#f0f5f1;border-radius:14px;gap:6px;padding:18px 10px;display:grid}.result-stats span{color:#607270;font-size:.85rem}.result-stats strong{color:#195e59;font-variant-numeric:tabular-nums;font-size:1.35rem}h2{white-space:pre-line;margin:20px 0 26px;font-size:clamp(1.25rem,3vw,1.7rem);line-height:1.55}h2.long-prompt{max-width:62ch;font-size:1.02rem;font-weight:600;line-height:1.85}.choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.choice{border-radius:var(--round);min-height:76px;color:var(--ink);cursor:pointer;text-align:left;touch-action:manipulation;background:#fff;border:2px solid #efe0cb;align-items:center;gap:14px;padding:18px 20px;display:flex;box-shadow:0 4px #f0e2ce}.choice:hover:not(:disabled){border-color:#56a19c;transform:translateY(-2px);box-shadow:0 6px #e2eee9}.choice:active:not(:disabled){transform:translateY(4px);box-shadow:0 0 #f0e2ce}.choice strong{color:#fff;background:var(--coral-deep);border-radius:50%;flex:none;place-items:center;width:34px;height:34px;font-size:.95rem;display:grid}.choice.correct{background:#e7f5ed;border-color:#33866c;box-shadow:0 4px #cfe8dc}.choice.correct strong{background:#33866c}.choice.incorrect{background:#fff0ec;border-color:#c65e4a;box-shadow:0 4px #f6d8d0}.choice.incorrect strong{background:#c65e4a}.choice:disabled{cursor:default;opacity:1}.choice-row{align-items:stretch;gap:8px;display:flex}.choice-row .choice{flex:1;min-width:0}.rule-out{border-radius:var(--round);color:#7d7365;cursor:pointer;touch-action:manipulation;background:0 0;border:2px dashed #e3d6c2;flex:none;width:44px;font-size:1rem;line-height:1;transition:color .14s,border-color .14s,background .14s}.rule-out:hover:not(:disabled){color:#6d6357;background:#fbf7f1;border-color:#c9b79b}.rule-out:focus-visible{outline-offset:2px;outline:3px solid #ef9c54}.rule-out[aria-pressed=true]{color:#fff;background:#b9433a;border-style:solid;border-color:#b9433a}.choice-row.crossed .choice{box-shadow:none;color:#5d5348;background:#f7f4f0;border-style:dashed;border-color:#ddd3c6;-webkit-text-decoration:line-through #b9433a;text-decoration:line-through #b9433a;text-decoration-thickness:2px}.choice-row.crossed .choice strong{background:#776d61;text-decoration:none}.choice-row.crossed .choice:hover:not(:disabled){box-shadow:none;transform:none}.rule-out-hint{color:#607270;margin:14px 0 0;font-size:.92rem;line-height:1.7}.math-scratchpad{background:#fffdf8;border:1px solid #d9cdb6;border-radius:18px;margin-top:18px;padding:14px}.math-scratchpad-heading{justify-content:space-between;align-items:center;gap:14px;margin-bottom:10px;display:flex}.math-scratchpad-heading h3{margin:0 0 3px;font-size:1rem}.math-scratchpad-heading p{color:#5f665f;margin:0;font-size:.85rem}.math-scratchpad-heading button{flex:none}.math-scratchpad-canvas{aspect-ratio:5/2;cursor:crosshair;touch-action:none;background-color:#fff;background-image:linear-gradient(#e8f0ed 1px,#0000 1px),linear-gradient(90deg,#e8f0ed 1px,#0000 1px);background-size:24px 24px;border:1px solid #c8d9d3;border-radius:12px;width:100%;display:block}@media (width<=480px){.math-scratchpad-heading{flex-direction:column;align-items:flex-start}}.feedback{min-height:118px;padding-top:20px}.translation-text{color:#4f6664;white-space:pre-line;border-left:3px solid #d9e1dc;margin:12px 0 0;padding:14px 16px;line-height:1.8}.result-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.result-row .next{flex:none}.answer-detail{background:#f1f5f1;border-radius:14px;margin:0 0 14px;padding:14px 16px}.answer-line{color:#4f6664;flex-wrap:wrap;align-items:baseline;gap:8px;margin:0;font-size:.88rem;font-weight:750;display:flex}.answer-line strong{color:#fff;background:#267057;border-radius:999px;padding:3px 10px;font-size:.92rem}.answer-line span{color:#153d3b;font-size:1.05rem;font-weight:800}.answer-sentence{color:#1f3b39;white-space:pre-line;margin:10px 0 0;line-height:1.75}.answer-detail .translation-text{margin:8px 0 0;padding:0 0 0 12px}.answer-why{color:#415654;margin:0 0 6px;line-height:1.8}.result{margin:0;font-size:1.05rem;font-weight:800}.correct-text{color:#267057}.incorrect-text{color:#a74634}.next{color:#fff;background:#bf5b32;padding:11px 20px}footer{color:#607270;border-top:1px solid #e8ebe6;padding-top:18px}@media (width<=900px){.choices{grid-template-columns:1fr;gap:18px}.choice{min-height:84px;padding:20px;font-size:1.02rem}}@media (width<=620px){main{padding:34px 0}.result-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard,.practice{border-radius:20px}.skill-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.picker{flex-direction:column;align-items:stretch;gap:6px}.vocabulary-filters{grid-template-columns:1fr}.report-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.picker-label{flex:none}}@media print{.hero,.practice,.user-bar,.retry,.report-actions{display:none!important}.dashboard{box-shadow:none}.parent-report{display:block}}@media (prefers-reduced-motion:no-preference){.choice{transition:border-color .18s,transform .18s,background .18s}}.rewards h2{margin:0 0 16px;font-size:clamp(1.8rem,5vw,2.6rem)}.level-bar{background:#e8eeea;border-radius:999px;height:12px;overflow:hidden}.level-bar>span{background:linear-gradient(90deg,#1f716c,#56a19c);border-radius:999px;height:100%;display:block}.level-note{color:#607270;margin:10px 0 20px;font-size:.92rem}.box-draw{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.box-draw .balance{color:#4f6664;font-weight:700}.box-draw .balance strong{color:#153d3b;font-family:Georgia,serif;font-size:1.3rem}.box-draw small{color:#8b9a97}.draw{color:#fff;cursor:pointer;background:#bf5b32;border:0;border-radius:999px;padding:11px 22px;font-weight:800}.draw:disabled{color:#8b8580;cursor:default;background:#d4cec9}.draw:focus-visible{outline-offset:3px;outline:3px solid #ef9c54}.draw-result{background:#f0f4ef;border-radius:16px;flex-wrap:wrap;align-items:center;gap:8px;margin:18px 0 0;padding:14px 16px;display:flex}.drawn-emoji{font-size:1.9rem;line-height:1}.rarity{border-radius:999px;padding:3px 9px;font-size:.76rem;font-style:normal;font-weight:800}.rarity.common{color:#4f6664;background:#dfe6e1}.rarity.rare{color:#1c5c86;background:#d8e9f4}.rarity.legendary{color:#8a5a12;background:#f7e6c4}.collection{grid-template-columns:repeat(auto-fill,minmax(76px,1fr));gap:10px;margin-top:20px;display:grid}.collectible{background:#fff;border:2px solid #e2e7e2;border-radius:14px;justify-items:center;gap:4px;padding:12px 6px;font-size:1.6rem;display:grid}.collectible small{color:#607270;font-size:.68rem;font-weight:700}.collectible.rare{border-color:#9cc9e2}.collectible.legendary{background:#fffaf0;border-color:#e6c274}@media (width<=620px){.collection{grid-template-columns:repeat(auto-fill,minmax(64px,1fr))}.box-draw{flex-direction:column;align-items:stretch}.draw{width:100%}}.reading-passage{border:1px solid var(--teal);background:var(--paper);overflow-wrap:anywhere;border-radius:12px;margin:1.25rem 0;padding:1rem;font-size:1.05rem;line-height:1.9}.reading-passage h3{margin-top:0}.reading-passage p:last-child{margin-bottom:0}.reading-picker label{margin-bottom:.5rem;font-weight:700;display:block}.reading-picker select{width:100%;min-height:44px;font:inherit;color:var(--ink);background:var(--paper);padding:.5rem}.bank-note{color:#8a5a12;background:#fdf3e0;border-radius:12px;margin:-6px 0 18px;padding:10px 14px;font-size:.88rem}.mock-breakdown{border-top:1px solid #e8ebe6;margin:22px 0;padding-top:20px}.mock-breakdown h3{margin:0 0 14px;font-size:1rem}.mock-skills{grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:10px;display:grid}.mock-skill{background:#f0f4ef;border-radius:14px;gap:4px;padding:14px;display:grid}.mock-skill span{color:#607270;font-size:.85rem;font-weight:700}.mock-skill strong{font-family:Georgia,serif;font-size:1.5rem}.mock-skill small{color:#71817f}.mock-advice,.mock-timing{color:#4f6664;margin:14px 0 0;line-height:1.7}.mock-advice strong{color:#bf5b32}.current-scope{color:#4f6664;background:#eef3ef;border-radius:14px;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 22px;padding:12px 16px;font-size:.92rem;font-weight:700;display:flex}.current-scope strong{color:#fff;background:#1f716c;border-radius:999px;padding:4px 12px;font-size:1rem}.current-scope span{background:#fff;border-radius:999px;padding:4px 10px;font-weight:700}.current-scope .scope-total{color:#1f716c;background:#dcebe6;margin-left:auto}.menu{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;display:grid}.menu-card{border-radius:var(--round);min-height:138px;box-shadow:var(--shadow-soft);cursor:pointer;text-align:left;touch-action:manipulation;background:#fff;border:2px solid #efe0cb;gap:6px;padding:22px;transition:transform .16s,box-shadow .16s;display:grid}.menu-card:nth-child(6n+1){background:linear-gradient(160deg, var(--butter-soft), white 62%)}.menu-card:nth-child(6n+2){background:linear-gradient(160deg, var(--mint-soft), white 62%)}.menu-card:nth-child(6n+3){background:linear-gradient(160deg, var(--coral-soft), white 62%)}.menu-card:nth-child(6n+4){background:linear-gradient(160deg, var(--lilac-soft), white 62%)}.menu-card:nth-child(6n+5){background:linear-gradient(160deg, var(--teal-soft), white 62%)}.menu-card:nth-child(6n+6){background:linear-gradient(160deg,#ffe6ef,#fff 62%)}.menu-card:focus-visible{outline-offset:3px;outline:3px solid #ef9c54}.menu-card strong{color:#153d3b;font-size:1.25rem}.menu-card small{color:#607270;line-height:1.6}.menu-note{color:#607270;margin-top:20px;font-weight:700}.menu-card.locked,.menu-card.locked:nth-child(6n+1),.menu-card.locked:nth-child(6n+2),.menu-card.locked:nth-child(6n+3),.menu-card.locked:nth-child(6n+4),.menu-card.locked:nth-child(6n+5),.menu-card.locked:nth-child(6n+6){box-shadow:none;background:#f6f4f1;border-color:#e2ded7}.menu-card.locked>span{opacity:.75}.menu-card.locked strong{color:#4a5a58}.menu-card.locked small{color:#5c6a68}.trial-note{border-radius:var(--round);background:var(--butter-soft);color:#4a3a20;border:2px dashed #d9b98e;margin-top:20px;padding:14px 18px;font-weight:700;line-height:1.7}.back-to-menu{color:#33544f;cursor:pointer;touch-action:manipulation;background:#fff;border:1px solid #9aaba7;border-radius:999px;margin-bottom:18px;padding:11px 18px;font-weight:750}.back-to-menu:focus-visible{outline-offset:3px;outline:3px solid #ef9c54}@media (width<=620px){.menu{grid-template-columns:1fr}.menu-card{min-height:0}.back-to-menu{width:100%}}.menu-actions{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}@media (width<=620px){.menu-actions{flex-direction:column}.menu-actions .retry{width:100%}}.install-app{color:#fff;cursor:pointer;touch-action:manipulation;background:#bf5b32;border:0;border-radius:999px;margin-top:18px;padding:13px 22px;font-weight:800}.install-app:focus-visible{outline-offset:3px;outline:3px solid #ef9c54}.start-session{padding:14px 26px;font-size:1.06rem}.test-preview strong{color:#714117;font-size:1.02rem}@media (width<=620px){.install-app,.start-session{width:100%}}.wrong-review{text-align:left;margin:20px 0}.wrong-list{gap:14px;margin:16px 0 0;padding:0 0 0 4px;list-style:none;display:grid}.wrong-list li{background:#fbf2ee;border-radius:16px;padding:16px 18px}.wrong-number{color:#a74634;margin:0 0 8px;font-size:.8rem;font-weight:800}.wrong-prompt{color:#153d3b;white-space:pre-line;margin:0 0 12px;font-weight:700;line-height:1.65}.wrong-yours,.wrong-right{color:#607270;margin:0 0 5px;font-size:.92rem}.wrong-yours span{color:#a74634;font-weight:800}.wrong-right span{color:#1f716c;font-weight:800}.wrong-why{color:#4f6664;margin:10px 0 0;line-height:1.75}.wrong-translation{color:#7a8886;white-space:pre-line;border-left:3px solid #e2d7cf;margin:8px 0 0;padding-left:12px;font-size:.9rem}.room-title{margin:26px 0 6px;font-size:1.05rem}.room-hint{color:#607270;margin:0 0 14px;font-size:.9rem}.room{aspect-ratio:4/3;border-radius:var(--round-lg);box-shadow:var(--shadow-soft);touch-action:none;background:#fdf3e7;border:3px solid #e9cfae;position:relative;overflow:hidden}.room-backdrop{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.room.arranging{cursor:grabbing}.room-empty{color:#97a3a2;text-align:center;margin:0;font-size:.85rem;position:absolute;inset:auto 12px 12px}.room-piece{cursor:grab;touch-action:none;background:#fff;border:2px solid #d9cdb6;border-radius:16px;place-items:center;width:56px;height:56px;padding:0;font-size:1.9rem;line-height:1;display:grid;position:absolute;transform:translate(-50%,-50%);box-shadow:0 3px 8px #153d3b29}.room-piece.rare{border-color:#9cc9e2}.room-piece.legendary{background:#fffaf0;border-color:#e6c274}.room-piece.lifted{z-index:2;cursor:grabbing;transform:translate(-50%,-50%)scale(1.12);box-shadow:0 10px 20px #153d3b4d}.room-piece:focus-visible{outline-offset:3px;outline:3px solid #ef9c54}.collectible{cursor:grab;touch-action:none}.collectible.picked{border-color:#bf5b32;box-shadow:0 0 0 3px #bf5b322e}.collectible.placed{opacity:.45;cursor:pointer}.collectible:focus-visible{outline-offset:3px;outline:3px solid #ef9c54}@media (width<=620px){.room{aspect-ratio:1}.room-piece{width:48px;height:48px;font-size:1.6rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.menu-card:hover,.choice:hover:not(:disabled),.choice:active:not(:disabled),.chip:hover,.next:active,.room-piece.lifted{transform:none}}:root{--ink:#203c36;--ink-soft:#576e66;--ink-faint:#71847c;--paper:#f5f6f2;--paper-warm:#f2eee5;--card:#fffefa;--teal:#205e51;--teal-soft:#e5eee7;--coral:#d29868;--coral-deep:#99572e;--coral-soft:#f7eadc;--butter:#d8bb86;--butter-soft:#f7f0df;--mint-soft:#eaf0e6;--lilac-soft:#eeedf4;--round:16px;--round-lg:24px;--line:#dce3db;--shadow-soft:0 5px 22px #223e3210;--shadow-lift:0 12px 30px #223e3218;background:var(--paper);-webkit-font-smoothing:antialiased;font-family:Noto Sans TC,PingFang TC,Microsoft JhengHei,system-ui,sans-serif;line-height:1.65}body{background:radial-gradient(ellipse at 95% 0%,#e7ecdf80,transparent 38rem),var(--paper);background-attachment:scroll}::selection{color:#123d32;background:#d4e4cd}button,input,textarea,select{font:inherit}button{-webkit-tap-highlight-color:transparent;min-height:44px}button:not(:disabled),a,summary,select{touch-action:manipulation}a{color:var(--teal);text-underline-offset:4px}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline-offset:4px;outline:3px solid #a36634}input,select,textarea{accent-color:var(--teal)}main{width:min(1120px,100% - 64px);padding:30px 0 24px}h1,h2,h3,h4{color:var(--ink);text-wrap:pretty;font-family:inherit}h1{letter-spacing:-.045em;font-weight:800;line-height:1.3}h2{letter-spacing:-.025em;line-height:1.5}p{text-wrap:pretty}.skip-link{z-index:100;background:var(--teal);color:#fff;border-radius:10px;padding:12px 20px;position:fixed;top:8px;left:16px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}#learning-content{scroll-margin-top:24px}#learning-content:focus{outline:none}.site-brand{color:var(--teal);flex:none;align-items:center;gap:12px;text-decoration:none;display:inline-flex}.brand-symbol{flex:none;width:43px;height:43px;display:block}.brand-wordmark{gap:1px;display:grid}.brand-wordmark strong{letter-spacing:.08em;color:var(--ink);font-size:1.15rem;line-height:1.5}.brand-wordmark small{color:#617568;letter-spacing:.12em;font-size:.57rem;font-weight:700}.user-bar{border-color:var(--line);gap:16px;margin:0 0 36px;padding:0 0 24px}.user-account{align-items:center;gap:12px;min-width:0;display:flex}.user-avatar{color:#375c48;background:#e8eee0;border:1px solid #d4dfcf;border-radius:50%;flex:0 0 38px;place-items:center;height:38px;font-size:.9rem;font-weight:800;display:grid}.user-greeting{min-width:0;font-size:.85rem;line-height:1.5;display:grid}.user-greeting strong{text-overflow:ellipsis;white-space:nowrap;max-width:140px;overflow:hidden}.user-greeting small{color:var(--ink-soft);font-size:.7rem}.user-bar button{border:1px solid var(--line);color:var(--ink-soft);background:0 0;border-radius:10px;padding:7px 14px;font-size:.8rem}.hero{background:#edf1e7;border:1px solid #dce5d6;border-radius:28px;grid-template-columns:1.2fr 1fr;align-items:center;min-height:330px;margin:0 0 44px;padding:36px 44px;display:grid;overflow:hidden}.eyebrow,.section-kicker{color:#6e684a;letter-spacing:.1em;font-size:.71rem;font-weight:750}.hero .eyebrow{color:#4e6a52;letter-spacing:.035em;align-items:center;gap:8px;margin:0 0 18px;font-size:.75rem;display:flex}.hero .eyebrow>span{background:#6c8a55;border-radius:50%;width:6px;height:6px}.hero h1{letter-spacing:-.055em;margin:0 0 18px;font-size:clamp(2.1rem,3.7vw,3.2rem)}.hero-copy>p:not(.eyebrow){color:#526855;margin:0;font-size:.95rem;line-height:1.9}.hero-tags{flex-wrap:wrap;gap:8px;margin-top:26px;display:flex}.hero-tags span{color:#52654d;background:#f7f9f080;border:1px solid #cfdbc7;border-radius:6px;padding:4px 11px;font-size:.7rem}.study-artwork{width:100%;max-width:400px;display:block}.hero-art{justify-self:end;width:100%;max-width:350px}.hero-art>p{text-align:center;color:#4e694e;letter-spacing:.04em;margin:0;font-size:.8rem}.hero-art>p span{color:#697c60;letter-spacing:.15em;margin-top:3px;font-size:.56rem;display:block}.menu{display:block}.menu-group{margin-bottom:34px}.menu-section-heading{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:16px;display:flex}.menu-section-heading h2{margin:0;font-size:1.2rem;font-weight:800}.menu-section-heading p{color:#617366;margin:0;font-size:.8rem}.course-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:16px;display:grid}.menu-card{--course-color:#426957;--course-fill:#edf3e8;background:var(--card);min-width:0;min-height:205px;color:var(--ink);border:1px solid #dce4d9;border-radius:18px;flex-direction:column;grid-column:span 2;gap:16px;padding:24px;transition:transform .18s,border-color .18s,box-shadow .18s;display:flex;box-shadow:0 2px 4px #243c3203}.menu-card:nth-child(n){background:var(--card)}.menu-card[data-course=textbook],.menu-card[data-course=vocabulary]{grid-column:span 3}.menu-card[data-course=vocabulary]{--course-color:#8b6035;--course-fill:#f5ecde}.menu-card[data-course=mock]{--course-color:#59688d;--course-fill:#eef0f7}.menu-card[data-course=exam]{--course-color:#386b6e;--course-fill:#e8f1ef}.menu-card[data-course=japanese]{--course-color:#986454;--course-fill:#f6ece6}.menu-card[data-course=rewards]{--course-color:#8c7246;--course-fill:#f6f0e4}.menu-card>span{font-size:inherit;line-height:inherit}.course-card-top{justify-content:space-between;align-items:center;gap:16px;width:100%;display:flex}.course-icon{width:46px;height:46px;color:var(--course-color);background:var(--course-fill);border-radius:13px;flex:0 0 46px;place-items:center;display:grid}.course-icon svg{width:29px;height:29px}.course-index{color:#70806f;letter-spacing:.12em;font-size:.67rem;font-weight:600}.course-card-copy{gap:7px;width:100%;display:grid}.menu-card strong{color:var(--ink);font-size:1.15rem;font-weight:800;line-height:1.5}.menu-card small{color:#5c7064;font-size:.81rem;line-height:1.7}.course-card-footer{width:100%;color:var(--course-color);border-top:1px solid #e9ede5;justify-content:space-between;align-items:center;gap:8px;margin-top:auto;padding-top:12px;font-weight:700;display:flex;font-size:.72rem!important}.course-card-footer>span{font-size:1.15rem;line-height:1}.menu-card:hover{box-shadow:var(--shadow-lift);border-color:#a5bea7;transform:translateY(-3px)}.menu-card:active{transform:translateY(0)}.menu-card.locked:nth-child(n){box-shadow:none;background:#f1f2ee;border-color:#dce0d7}.menu-card.locked .course-icon{color:#677568;background:#e6eae1}.menu-card.locked:hover{box-shadow:none;border-color:#bac5b6;transform:none}.menu-group-personal .course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.menu-group-personal .menu-card{grid-column:auto;grid-template-columns:46px minmax(0,1fr);align-items:center;gap:0 16px;min-height:110px;padding:22px 24px;display:grid}.menu-group-personal .course-card-top{grid-row:span 2;width:auto}.menu-group-personal .course-index{display:none}.menu-group-personal .course-card-footer{border:0;grid-column:2;padding-top:6px;font-size:.68rem!important}.review-shortcuts{background:#eef1e8;border:1px solid #e0e4d9;border-radius:18px;justify-content:space-between;align-items:center;gap:24px;padding:24px 28px;display:flex}.review-shortcuts h2{margin:0 0 5px;font-size:1rem}.review-shortcuts p{color:#60715d;margin:0;font-size:.78rem}.review-shortcuts .section-kicker{color:#6a724b;margin-bottom:5px;font-size:.6rem}.menu-actions{flex:none;gap:8px;margin:0}.menu-actions button{background:#fffefa;border-color:#c9d6c3;border-radius:9px;font-size:.8rem}.menu-actions button:disabled{color:#687368;background:#f2f4ed;border-color:#d3dccd}.menu-note{color:#687969;flex-wrap:wrap;align-items:center;gap:8px;margin:20px 0 0;font-size:.75rem;font-weight:500;display:flex}.menu-note>span{color:#3b644b;border:1px solid #d0dbc8;border-radius:5px;padding:2px 8px;font-size:.7rem;font-weight:750}.site-footer{border-top:1px solid var(--line);color:#657566;justify-content:space-between;align-items:center;gap:16px;margin-top:48px;padding:22px 0 0;font-size:.67rem;display:flex}.site-footer>span{letter-spacing:.07em;font-weight:700}.site-footer p{margin:0}.page-navigation{justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;display:flex}.back-to-menu{border:1px solid var(--line);color:var(--teal);box-shadow:none;border-radius:10px;margin:0;padding:9px 15px;font-size:.82rem}.page-navigation>p{color:#657666;margin:0;font-size:.77rem}.page-navigation>p span{color:#7f907c;margin:0 10px}.page-navigation>p strong{color:var(--teal)}.auth-shell{grid-template-columns:1fr .9fr;align-items:center;gap:clamp(40px,7vw,100px);min-height:100svh;padding:64px 0}.auth-welcome{justify-self:start;width:100%}.auth-motto{letter-spacing:-.05em;color:var(--ink);margin:40px 0 20px;font-size:clamp(2.5rem,4.7vw,4rem);font-weight:800;line-height:1.35}.auth-welcome>p:not(.auth-motto){color:var(--ink-soft);font-size:.92rem;line-height:1.9}.auth-welcome .study-artwork{width:min(100%,340px);margin:12px 0}.auth-subjects{color:#64755e;gap:12px;font-size:.72rem;display:flex}.auth-subjects span+span:before{content:"/";color:#95a58b;margin-right:12px}.auth-card{border:1px solid var(--line);background:var(--card);border-radius:24px;width:100%;max-width:460px;padding:clamp(28px,4vw,44px);box-shadow:0 12px 40px #29473309}.auth-card h1{margin:12px 0 14px;font-size:clamp(1.55rem,2.8vw,2rem);line-height:1.45}.auth-card .eyebrow{color:#608067;letter-spacing:.16em;font-size:.65rem}.auth-intro{font-size:.85rem}.auth-card form{margin-top:24px}.auth-card label{color:#475f52;font-size:.82rem;font-weight:700}.auth-card input{background:#fff;border:1px solid #c9d5c6;border-radius:10px;min-height:48px;padding:12px 14px}.auth-card input:focus{border-color:var(--teal);outline:3px solid #205e5118}.password-field{flex-wrap:wrap;gap:8px;min-width:0;display:flex}.password-field input{flex:180px;width:auto;min-width:0}.password-toggle{border:1px solid var(--line);min-height:48px;color:var(--teal);background:var(--card);border-radius:10px;padding:10px 12px;font-size:.8rem;font-weight:700}.password-help{color:var(--ink-soft);font-size:.75rem;line-height:1.7}.auth-card .caps-lock-note{border:1px solid var(--line);background:var(--butter-soft);color:var(--ink);border-radius:9px;margin:0;padding:10px 12px;font-size:.8rem}.auth-error:focus,.deferred-state h2:focus{outline:2px solid var(--teal);outline-offset:5px;border-radius:3px}.login-button{background:var(--teal);border-radius:10px;min-height:48px;font-size:.9rem;box-shadow:0 4px 10px #205e5114}.login-button:hover:not(:disabled){background:#174c40}.auth-help{border-top:1px solid var(--line);padding-top:20px;font-size:.73rem}.auth-shell:not(:has(.auth-welcome)){grid-template-columns:1fr}.dashboard,.practice{border:1px solid var(--line);background:var(--card);box-shadow:var(--shadow-soft);border-radius:22px;padding:clamp(22px,4vw,40px)}.dashboard:before,.practice:before{display:none}.dashboard h2{margin-bottom:24px;font-size:1.55rem}.practice>h2,.quiz-result>h2{font-size:clamp(1.55rem,3.4vw,2.1rem);line-height:1.5}.picker{align-items:flex-start;gap:16px}.picker-label{color:#576e5b;padding-top:11px;font-size:.77rem}.chip{color:#53684f;min-height:44px;box-shadow:none;background:#f1f4ec;border:1px solid #dce4d7;border-radius:9px;padding:9px 16px;font-size:.84rem}.chip.active{color:#fff;border-color:var(--teal);background:var(--teal);box-shadow:0 2px 5px #205e5115}.chip:hover{border-color:#a2b89c;transform:none}.current-scope{background:#edf3e9;border:1px solid #dee8d8;border-radius:12px;gap:7px;padding:14px 16px;font-size:.81rem}.current-scope strong{background:var(--teal);border-radius:6px;font-size:.86rem}.current-scope span{border-radius:6px}.current-scope .scope-total{color:#3d6340;background:#dee9d6}.bank-note{color:#75613d;background:#faf6e9;border:1px solid #e9dfc9;border-radius:10px;line-height:1.75}.test-preview{background:#f7f4e9;border-color:#e8dcc4;border-radius:14px}.test-preview strong{color:#76562f}.question-meta span{color:#50674f;background:#f0f3ec;border-radius:6px}.question-progress{gap:7px}.question-progress button{border-radius:8px}.question-timer{color:#58705a;border-bottom:1px solid #e8ece2;padding:12px 0;font-size:.85rem}.question-timer strong{color:var(--ink)}.pause-toggle{color:#3d6340;background:#f1f6ec;border-color:#c8d7c2;border-radius:8px;font-size:.8rem}.practice h2.long-prompt{font-size:1.15rem;line-height:1.95}.choices{gap:12px}.choice{border:1px solid #cdd9ca;border-radius:12px;gap:14px;min-height:76px;padding:18px;box-shadow:0 2px 4px #233e2f05}.choice strong{color:#456a42;background:#edf2e7;border-radius:9px;font-size:.85rem}.choice:hover:not(:disabled){background:#fafcf7;border-color:#8fae87;transform:none;box-shadow:0 0 0 2px #dbe6d3}.choice:active:not(:disabled){transform:none}.choice.correct{box-shadow:none;background:#edf7ed;border:2px solid #397956}.choice.correct strong{color:#fff;background:#397956}.choice.incorrect{box-shadow:none;background:#fff1e9;border:2px solid #b65e43}.choice.incorrect strong{color:#fff;background:#aa5338}.choice-row.crossed .choice{box-shadow:none;background:#f4f3ec}.choice-row.crossed .choice strong{color:#fff;background:#756d60}.rule-out{color:#6e7968;border-width:1px;border-color:#d3d8c8;border-radius:10px}.next,.draw,.install-app{background:var(--teal);border-radius:10px;box-shadow:0 3px 8px #205e5115}.next:hover,.draw:hover:not(:disabled),.install-app:hover{background:#174c40}.next:active{box-shadow:none;transform:none}.retry,.secondary-button,.speak-button,.spelling-form button{border-radius:9px}.speak-button,.spelling-form button,.report-actions button{background:var(--teal)}.answer-detail{background:#f0f5eb;border:1px solid #dce7d5;border-radius:12px}.answer-line strong{border-radius:5px}.skill-stat,.mock-skill{background:#f3f6ef;border:1px solid #dfe7d9;border-radius:14px}.skill-stat strong,.mock-skill strong,.result-stats strong{font-variant-numeric:tabular-nums;font-family:inherit;font-weight:800}.overview-stats span,.report-grid span{color:#50674f;background:#f0f4ea}.parent-report{border-color:var(--line);padding:16px}.question-chart,.question-diagram,.question-passage{max-width:100%}.trial-note{background:#faf4e5;border:1px solid #decda8;border-radius:14px;font-size:.85rem}.jp-header{background:#edf2e7;border:1px solid #dde5d4;border-radius:20px;margin:0 0 24px;padding:24px 30px}.jp-header h1{margin:4px 0 10px;font-size:clamp(1.9rem,4vw,2.5rem)}.jp-header>p:last-child{color:#576b51;max-width:760px;font-size:.87rem}.jp-levels{gap:12px}.jp-levels button:nth-child(n){box-shadow:none;background:var(--card);border:1px solid #d4dfcb;border-radius:14px;padding:20px}.jp-levels button[aria-pressed=true]{background:#eef4e9;border:2px solid #427654;padding:19px}.jp-levels strong{font-size:1.2rem}.jp-levels small{color:#627858}.jp-levels span{color:#586d53;font-size:.83rem}.jp-save-note{margin:16px 0;font-size:.8rem}.jp-tools{border:1px solid var(--line);background:var(--card);box-shadow:var(--shadow-soft);border-radius:20px;margin:22px 0 30px;padding:clamp(16px,3vw,28px)}.jp-tool-nav{border-bottom:1px solid #e4eadd;gap:6px;margin-bottom:24px;padding-bottom:18px}.jp-tool-nav button,.jp-actions button,.jp-example button,.jp-feedback button,.jp-tools article>button,.jp-flashcard>button,.jp-tools [role=status]>button{color:#3b5f43;background:#f7f9f2;border:1px solid #cedbc6;border-radius:9px;font-size:.82rem;font-weight:700}.jp-tool-nav button[aria-pressed=true],.jp-learning .jp-primary{background:var(--teal);border-color:var(--teal);color:#fff}.jp-actions button[aria-pressed=true]{color:#345831;background:#e9f0e0;border-color:#709367}.jp-learning .jp-primary{border-radius:9px;font-size:.88rem}.jp-tools>h2,.jp-helpers h2{margin-top:24px;font-size:1.3rem}.jp-tools p{font-size:.88rem}.jp-daily-grid{gap:12px}.jp-daily-grid article{background:#f7f9f2;border-color:#dce5d3;border-radius:14px;gap:6px;padding:20px}.jp-daily-grid article small{color:#637451;font-size:.7rem}.jp-daily-grid h3{font-size:1rem}.jp-daily-grid p{color:#5e7058}.jp-study-tip{color:#6c6041;background:#f7f2e4;border-left:3px solid #c09a5f;border-radius:0 10px 10px 0;padding:16px 20px;font-size:.86rem}.jp-flashcard{background:#f7f1e2;border:1px solid #e8ddc5;border-radius:16px}.jp-lesson-card{border:1px solid var(--line);background:var(--card);border-radius:14px;gap:10px;padding:24px;box-shadow:0 2px 6px #203c3605}.jp-lesson-card:hover{box-shadow:var(--shadow-soft);border-color:#97b18b}.jp-lesson-card strong{font-size:1.05rem}.jp-lesson-card small{color:#61745a;font-size:.76rem}.jp-lesson,.jp-quiz{background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow-soft);border-radius:20px}.jp-example,.jp-reading,.jp-lab-setup,.jp-review-material,.jp-search-results article,.jp-offline-pack,.jp-report-output article{background:#f6f9f0;border:1px solid #dce5d3;border-radius:12px}.jp-choices button{border-width:1px;border-color:#cdd9c5;border-radius:10px}.jp-choices .jp-answer-correct{background:#edf7ed;border:2px solid #397956}.jp-choices .jp-answer-wrong{background:#fff1e9;border:2px solid #b65e43}.jp-helpers>nav{background:#f0f4e9;border:1px solid #e0e7d7;border-radius:12px;gap:6px;padding:8px}.jp-helpers>nav button{background:0 0;border-color:#0000}.jp-helpers>nav button[aria-pressed=true]{background:#fff;border-color:#d5e0cc;box-shadow:0 2px 4px #2c4a3410}.jp-writing-grid{background:#fffefa;border-color:#a4bb98}.jp-learning progress{accent-color:var(--teal);height:8px}.jp-lab-nav button,.jp-reading-list button,.jp-helper-filters input,.jp-helper-filters select,.jp-helpers select,.jp-free-conversation textarea{border-color:#cbd9c3;border-radius:9px}.jp-lab-nav button[aria-pressed=true]{background:var(--teal);border-color:var(--teal)}.view-menu .hero{min-height:240px;margin-bottom:32px;padding:28px 38px}.view-menu .hero-art{max-width:260px}.view-menu .hero h1{font-size:clamp(2rem,3.4vw,2.8rem)}.personal-home{margin-bottom:40px}.home-learning-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.home-learning-grid article{border:1px solid var(--line);background:var(--card);border-radius:18px;flex-direction:column;align-items:flex-start;padding:26px;display:flex}.home-learning-grid .home-continue{background:#eaf0e3;border-color:#d9e3ce}.home-learning-grid h3{margin:8px 0 12px;font-size:1.24rem}.home-learning-grid p{color:var(--ink-soft);margin:0 0 16px;font-size:.85rem}.home-learning-grid .section-kicker{color:#6b7457;margin:0;font-size:.62rem}.home-learning-grid small{color:#61725c;font-size:.68rem;line-height:1.7}.home-continue .next{margin:18px 0 12px;padding:11px 20px;font-size:.85rem}.home-next>button{color:var(--teal);background:#f5f8ef;border:1px solid #b9cbb2;border-radius:9px;padding:9px 14px;font-size:.82rem;font-weight:700}.home-mini-stats{grid-template-columns:repeat(3,1fr);gap:18px;width:100%;margin-top:auto;padding-top:24px;display:grid}.home-mini-stats span{color:#6a7964;flex-direction:column;font-size:.67rem;display:flex}.home-mini-stats strong{color:var(--ink);font-variant-numeric:tabular-nums;font-size:1.35rem}.home-subject-heading{justify-content:space-between;align-items:baseline;gap:12px;margin:24px 0 12px;display:flex}.home-subject-heading h3{margin:0;font-size:.95rem}.home-subject-heading p{color:#657662;margin:0;font-size:.69rem}.home-subject-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.home-subject{text-align:left;border:1px solid var(--line);color:var(--ink);background:#fffefa;border-radius:12px;align-items:center;gap:12px;min-width:0;padding:16px;display:flex}.home-subject>span:nth-child(2){gap:4px;min-width:0;display:grid}.home-subject strong{font-size:.85rem}.home-subject small{color:#61725d;font-size:.66rem;line-height:1.65}.home-subject>span:last-child{color:#6c8464;margin-left:auto}.home-subject .course-icon{color:#52714f;background:#edf2e8;border-radius:9px;flex-basis:36px;width:36px;height:36px}.home-subject svg{width:24px;height:24px}.home-subject:hover{background:#f6f9f1;border-color:#9fb796}.home-japanese{background:#f8f3ed;border:1px solid #e5dcd1;border-radius:14px;grid-template-columns:1fr auto;align-items:center;gap:16px;margin-top:12px;padding:22px 24px;display:grid}.home-japanese .section-kicker{color:#8a6c52;margin:0 0 6px;font-size:.6rem}.home-japanese h3{margin:0 0 8px;font-size:1rem}.home-japanese p{color:#706a5d;margin:0;font-size:.76rem}.home-japanese-levels{gap:24px;display:flex}.home-japanese-levels span{color:#786b5a;gap:5px;font-size:.72rem;display:grid}.home-japanese-levels strong{color:#6c5d4b;font-size:.82rem}.home-japanese-actions{border-top:1px solid #e9dfd1;grid-column:1/-1;justify-content:space-between;align-items:center;gap:12px;padding-top:12px;display:flex}.home-japanese-actions p{font-size:.66rem}.home-japanese-actions button{color:#805e43;background:#fffaf3;border:1px solid #d8c6b2;border-radius:8px;flex:none;padding:8px 14px;font-size:.75rem;font-weight:700}.home-sync-note{color:#795d3e;background:#fbf3e4;border-radius:9px;padding:12px 16px;font-size:.77rem}.deferred-state{color:var(--ink-soft);text-align:center;padding:32px 20px;line-height:1.8}.deferred-state h2{font-size:1.2rem}.deferred-state .next{padding:10px 20px}@media (width<=900px){main{width:calc(100% - 40px)}.hero{grid-template-columns:1.3fr 1fr;gap:12px;min-height:300px;padding:30px}.hero-art{max-width:280px}.hero h1{font-size:2.3rem}.menu-card{padding:20px}.review-shortcuts{flex-direction:column;align-items:flex-start;gap:16px}.choices{grid-template-columns:1fr;gap:14px}.choice{min-height:80px}.auth-shell{gap:36px}.auth-motto{font-size:2.8rem}.auth-card{padding:28px}}@media (width<=620px){.view-menu .hero{min-height:0;margin-bottom:26px;padding:24px}.view-menu .hero h1{font-size:clamp(1.8rem,7.3vw,2.4rem)}.home-learning-grid{grid-template-columns:1fr;gap:12px}.home-learning-grid article{border-radius:15px;padding:22px}.home-learning-grid h3{font-size:1.15rem}.home-learning-grid p{font-size:.8rem}.home-mini-stats{gap:10px;padding-top:20px}.home-subject-heading{flex-direction:column;gap:5px}.home-subject-heading p{font-size:.64rem}.home-subject-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.home-subject{align-items:flex-start;gap:8px;padding:13px 10px}.home-subject .course-icon{display:none}.home-subject small{font-size:.61rem}.home-japanese{grid-template-columns:1fr;padding:20px}.home-japanese-levels{gap:24px}.home-japanese-actions{flex-direction:column;align-items:flex-start}.personal-home{margin-bottom:30px}main{width:calc(100% - 32px);padding:22px 0 18px}.user-bar{gap:12px;margin-bottom:24px;padding-bottom:18px}.site-brand{gap:9px}.brand-symbol{width:36px;height:36px}.brand-wordmark strong{font-size:.95rem}.brand-wordmark small{letter-spacing:.08em;font-size:.48rem}.user-account{gap:8px}.user-avatar{display:none}.user-greeting{font-size:.72rem}.user-greeting strong{max-width:72px}.user-greeting small{font-size:.6rem}.user-bar button{padding:6px 10px;font-size:.73rem}.hero{border-radius:20px;min-height:0;margin-bottom:30px;padding:28px 24px;display:block}.hero h1{margin:0 0 14px;font-size:clamp(1.8rem,7.3vw,2.4rem)}.hero .eyebrow{letter-spacing:0;gap:6px;margin-bottom:16px;font-size:.66rem}.hero-copy>p:not(.eyebrow){max-width:300px;font-size:.83rem;line-height:1.85}.desktop-break{display:none}.hero-tags{gap:6px;margin-top:22px}.hero-tags span{padding:3px 9px;font-size:.65rem}.hero-art{display:none}.menu-section-heading{flex-wrap:wrap;gap:6px;margin-bottom:12px}.menu-section-heading h2{font-size:1.05rem}.menu-section-heading p{font-size:.66rem}.course-grid{grid-template-columns:1fr;gap:12px}.menu-card,.menu-card[data-course=textbook],.menu-card[data-course=vocabulary]{grid-column:auto;grid-template-columns:42px minmax(0,1fr);gap:8px 14px;min-height:0;padding:20px;display:grid}.course-card-top{grid-row:span 2;align-self:start;width:auto;padding-top:2px}.course-icon{border-radius:11px;flex-basis:42px;width:42px;height:42px}.course-icon svg{width:26px;height:26px}.course-index{display:none}.menu-card strong{font-size:1rem}.menu-card small{font-size:.76rem}.course-card-copy{gap:4px}.course-card-footer{border:0;grid-column:2;padding:4px 0 0;font-size:.66rem!important}.menu-group{margin-bottom:26px}.menu-group-personal .course-grid{grid-template-columns:1fr}.menu-group-personal .menu-card{grid-template-columns:42px minmax(0,1fr);gap:8px 14px;min-height:0;padding:20px}.review-shortcuts{border-radius:14px;gap:18px;padding:22px}.review-shortcuts h2{font-size:.95rem}.review-shortcuts p{font-size:.73rem}.menu-actions{flex-direction:row;width:100%}.menu-actions .retry{flex:120px;width:auto;margin:0;padding:10px;font-size:.73rem}.menu-note{gap:6px;font-size:.65rem}.site-footer{flex-direction:column;align-items:flex-start;gap:6px;margin-top:32px;font-size:.6rem}.page-navigation{gap:10px;margin-bottom:18px}.back-to-menu{flex:none;width:auto;padding:8px 12px;font-size:.75rem}.page-navigation>p{font-size:.67rem}.page-navigation>p span{margin:0 5px}.auth-shell{flex-direction:column;justify-content:center;align-items:stretch;gap:24px;padding:30px 0;display:flex}.auth-welcome{max-width:460px;margin:0 auto}.auth-motto{margin:24px 0 8px;font-size:1.7rem;line-height:1.4}.auth-motto br{display:none}.auth-welcome>p:not(.auth-motto){margin-bottom:0;font-size:.8rem}.auth-welcome .study-artwork,.auth-subjects{display:none}.auth-card{border-radius:20px;align-self:center;padding:28px 24px}.auth-card h1{font-size:1.5rem}.auth-intro{font-size:.8rem}.dashboard,.practice{border-radius:16px;padding:22px 18px}.dashboard h2{font-size:1.35rem}.picker{gap:7px}.picker-label{padding-top:0}.chip{padding:9px 13px;font-size:.78rem}.current-scope{padding:12px;font-size:.75rem}.choice{gap:10px;min-height:80px;padding:16px 14px;font-size:.97rem}.choice strong{width:30px;height:32px}.choice-row{gap:6px}.rule-out{width:44px}.jp-header{border-radius:16px;padding:22px}.jp-header h1{font-size:1.9rem}.jp-header>p:last-child{font-size:.8rem}.jp-levels{gap:7px}.jp-levels button:nth-child(n){border-radius:11px;padding:13px 10px}.jp-levels button[aria-pressed=true]{padding:12px 9px}.jp-levels strong{font-size:1.05rem}.jp-levels small{font-size:.6rem}.jp-levels span{font-size:.72rem;line-height:1.7}.jp-tools{border-radius:16px;padding:18px 14px}.jp-tool-nav{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;display:grid}.jp-tool-nav button{min-height:44px;padding:8px 3px;font-size:.7rem}.jp-helpers>nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;padding:5px;display:grid}.jp-helpers>nav button{padding:8px 4px;font-size:.75rem}.jp-helpers>nav button:last-child{grid-column:1/-1}.jp-daily-grid article{padding:18px}.jp-lesson-card{padding:20px}.jp-study-tip{padding:14px 16px}.jp-tools>h2,.jp-helpers h2{font-size:1.15rem}}@media (prefers-reduced-motion:reduce){.menu-card:hover,.choice:hover:not(:disabled),.choice:active:not(:disabled),.next:active{transform:none}}@media print{body{background:#fff}main{width:100%;padding:0}.skip-link,.site-footer,.page-navigation,.auth-welcome{display:none!important}.dashboard{box-shadow:none;background:#fff;border:0}}.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}.header-tools{align-items:center;gap:16px;display:flex}.header-search{border:1px solid var(--line);background:var(--card);color:var(--teal);border-radius:9px;align-items:center;gap:7px;padding:8px 12px;font-size:.78rem;display:flex}.header-search svg{width:20px;height:20px}.theme-control{color:var(--ink-soft);font-size:.73rem}.theme-control label{align-items:center;gap:7px;display:flex}.theme-control select{border:1px solid var(--line);background:var(--card);max-width:125px;min-height:44px;color:var(--ink);border-radius:9px;padding:7px;font-size:.76rem}.theme-control small{max-width:170px;display:block}.auth-card>.theme-control{margin:0 0 22px}.auth-card>.theme-control label{justify-content:flex-end}.learning-search{border:1px solid var(--line);background:var(--card);border-radius:20px;padding:clamp(20px,4vw,40px)}.learning-search h1{margin:8px 0 16px;font-size:clamp(1.7rem,4vw,2.4rem)}.learning-search>p{color:var(--ink-soft);font-size:.88rem}.search-controls{grid-template-columns:1fr 180px;gap:16px;margin:26px 0 22px;display:grid}.search-controls label{gap:8px;min-width:0;font-size:.82rem;font-weight:700;display:grid}.search-controls{align-items:start}.search-query{min-width:0}.search-query>label{margin-bottom:8px}.search-input-row{flex-wrap:wrap;gap:8px;display:flex}.search-input-row input{flex:180px;width:auto}.search-submit,.search-reset,.search-input-help button{border:1px solid var(--line);min-height:44px;color:var(--teal);background:var(--card);border-radius:9px;padding:8px 12px;font-size:.8rem}.search-input-row .search-submit{min-height:52px;font-weight:700}.search-input-help{flex-wrap:wrap;align-items:center;gap:4px 12px;margin-top:6px;display:flex}.search-input-help small{color:var(--ink-soft);flex:180px;font-size:.72rem}.search-reset{margin:0 0 18px}.search-results-title{margin:0 0 8px;font-size:1.2rem}.learning-search :is(.search-results-title,.learning-search-results h2){scroll-margin-top:20px}.learning-search :is(.search-results-title,.learning-search-results h2):focus{outline:2px solid var(--teal);outline-offset:5px;border-radius:3px}.search-controls input,.search-controls select{border:1px solid var(--line);background:var(--paper);width:100%;min-width:0;min-height:52px;color:var(--ink);border-radius:10px;padding:12px;font-size:.95rem}.search-empty{background:var(--mint-soft);border:1px solid var(--line);border-radius:14px;padding:22px}.search-empty h2{margin:0 0 10px;font-size:1.15rem}.search-empty p{color:var(--ink-soft);font-size:.86rem}.search-suggestions{flex-wrap:wrap;gap:8px;display:flex}.search-suggestions button,.search-more{border:1px solid var(--line);background:var(--card);color:var(--teal);border-radius:9px;padding:8px 14px;font-size:.8rem}.learning-search-results{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.learning-search-results article{border:1px solid var(--line);background:var(--paper);overflow-wrap:anywhere;border-radius:12px;flex-direction:column;align-items:flex-start;min-width:0;padding:22px;display:flex}.learning-search-results small{color:var(--ink-soft);font-size:.7rem}.learning-search-results h2{margin:8px 0;font-size:1.15rem}.learning-search-results p{color:var(--ink-soft);margin:0 0 16px;font-size:.85rem}.learning-search-results button{border:1px solid var(--line);color:var(--teal);background:var(--card);border-radius:8px;margin-top:auto;padding:8px 12px;font-size:.8rem;font-weight:700}.search-more{margin-top:20px}.learning-search .search-footnote{margin:24px 0 0;font-size:.73rem}.mobile-navigation{display:none}@media (width<=760px){.study-shell .user-bar{flex-wrap:wrap;gap:10px}.header-tools{justify-content:space-between;gap:8px;width:100%}.header-tools .user-account{gap:8px;margin-left:auto}.header-tools .user-avatar,.header-tools .user-greeting{display:none}.header-tools .theme-control label>span{clip:rect(0,0,0,0);width:1px;height:1px;position:absolute;overflow:hidden}.header-search{padding:8px 11px}.study-shell{padding-bottom:calc(96px + env(safe-area-inset-bottom,0px))}.mobile-navigation{z-index:30;border-top:1px solid var(--line);background:var(--card);padding:6px max(10px,env(safe-area-inset-right,0px)) calc(6px + env(safe-area-inset-bottom,0px)) max(10px,env(safe-area-inset-left,0px));display:flex;position:fixed;inset:auto 0 0;box-shadow:0 -4px 18px #152b2310}.mobile-navigation button{min-height:56px;color:var(--ink-soft);background:0 0;border:0;border-radius:10px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;font-size:.7rem;display:flex}.mobile-navigation svg{width:23px;height:23px}.mobile-navigation button[aria-current=page]{background:var(--teal-soft);color:var(--teal);font-weight:800}.study-shell :is(input,select,textarea,.choice,button){scroll-margin-bottom:100px}.search-controls{grid-template-columns:1fr;gap:12px}.search-controls input,.search-controls select{font-size:16px}.learning-search-results{grid-template-columns:1fr}.learning-search-results article{padding:18px}}@media print{.mobile-navigation,.header-tools,.theme-control{display:none!important}}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ink:#e2eee8;--ink-soft:#b7c9bf;--ink-faint:#a8bbb0;--paper:#11251f;--paper-warm:#1b2c25;--card:#192f27;--teal:#9fd8bd;--teal-soft:#254639;--coral:#eab185;--coral-deep:#ffc29c;--coral-soft:#48362b;--butter:#e4c790;--butter-soft:#3a3526;--mint-soft:#203b30;--lilac-soft:#32323f;--line:#466151;--shadow-soft:0 5px 22px #0002;--shadow-lift:0 12px 30px #0004}:root[data-theme=dark] body{color:var(--ink);background:var(--paper)}:root[data-theme=dark] :is(h1,h2,h3,h4,strong,button,label,summary,legend,th,td,figcaption){color:var(--ink)}:root[data-theme=dark] :is(p,small,span,li,dt,dd,.jp-note,.jp-save-note,.wrong-prompt,.wrong-yours,.wrong-right,.wrong-why,.wrong-translation,.rule-out-hint,.room-hint){color:var(--ink-soft)}:root[data-theme=dark] a{color:var(--teal)}:root[data-theme=dark] :is(button,input,textarea,select){border-color:var(--line);background:var(--card);color:var(--ink);box-shadow:none}:root[data-theme=dark] :is(input,textarea)::placeholder{color:#9eafa5;opacity:1}:root[data-theme=dark] :is(button,a,summary,input,textarea,select):focus-visible{outline-color:#edbf89}:root[data-theme=dark] :is(.user-bar,.site-footer,.page-navigation,.question-timer,.jp-review,.jp-recorder,.parent-report,.jp-tool-nav){border-color:var(--line)}:root[data-theme=dark] :is(.auth-card,.dashboard,.practice,.learning-search,.menu-card:nth-child(n),.home-subject,.home-learning-grid article,.jp-tools,.jp-lesson,.jp-quiz,.jp-lesson-card,.collectible,.room-piece){background:var(--card);border-color:var(--line);box-shadow:var(--shadow-soft)}:root[data-theme=dark] :is(.hero,.home-learning-grid .home-continue,.review-shortcuts,.search-empty,.jp-header,.jp-levels button:nth-child(n),.jp-daily-grid article,.jp-example,.jp-reading,.jp-lab-setup,.jp-review-material,.jp-search-results article,.jp-offline-pack,.jp-report-output article,.jp-helpers>nav,.jp-token-answer,.jp-dictionary,.jp-chat-history li,.answer-detail,.skill-stat,.mock-skill,.overview-stats span,.report-grid span,.result-stats div,.question-passage,.test-preview,.current-scope,.question-meta span,.hero-tags span,.trial-note,.bank-note,.retry-banner,.wrong-list li,.jp-study-tip,.jp-flashcard,.home-japanese,.home-sync-note){background:var(--mint-soft);border-color:var(--line);color:var(--ink-soft)}:root[data-theme=dark] :is(.choice,.jp-choices button,.jp-kana-grid button,.jp-tool-nav button,.jp-actions button,.jp-example button,.jp-feedback button,.jp-tools article>button,.jp-flashcard>button,.jp-tools [role=status]>button,.home-next>button,.home-japanese-actions button,.menu-actions button,.pause-toggle,.chip,.rule-out,.secondary-button,.jp-helpers>nav button){background:var(--card);border-color:var(--line);color:var(--ink)}:root[data-theme=dark] :is(.choice:hover:not(:disabled),.home-subject:hover,.menu-card:hover){border-color:var(--teal);background:#244335}:root[data-theme=dark] :is(.course-icon,.home-subject .course-icon,.choice strong,.current-scope span,.current-scope .scope-total,.question-progress span,.user-avatar,.menu-note>span){background:var(--teal-soft);color:var(--ink);border-color:var(--line)}:root[data-theme=dark] .current-scope>strong{background:var(--teal);color:#11251f}:root[data-theme=dark] :is(.next,.draw,.install-app,.login-button,.speak-button,.spelling-form button,.report-actions button,.chip.active,.jp-learning .jp-primary,.jp-tool-nav button[aria-pressed=true],.jp-lab-nav button[aria-pressed=true],.jp-helpers>nav button[aria-pressed=true]){background:var(--teal);color:#11251f;border-color:var(--teal)}:root[data-theme=dark] :is(.next,.draw,.install-app,.login-button,.speak-button,.spelling-form button,.report-actions button,.jp-primary,.chip.active) :is(span,strong){color:inherit}:root[data-theme=dark] :is(.jp-levels button[aria-pressed=true],.jp-actions button[aria-pressed=true],.mobile-navigation button[aria-current=page]){background:var(--teal-soft);border-color:var(--teal);color:var(--ink)}:root[data-theme=dark] :is(.mobile-navigation button[aria-current=page],.jp-actions button[aria-pressed=true]) span{color:var(--ink)}:root[data-theme=dark] :is(.choice.correct,.jp-choices .jp-answer-correct){color:#effbf3;background:#214c38;border-color:#9fddb7}:root[data-theme=dark] :is(.choice.incorrect,.jp-choices .jp-answer-wrong){color:#fff1e8;background:#57352c;border-color:#ffc09f}:root[data-theme=dark] :is(.choice.correct,.jp-answer-correct) strong{color:#11251f;background:#9fddb7}:root[data-theme=dark] :is(.choice.incorrect,.jp-answer-wrong) strong{color:#3c2018;background:#ffc09f}:root[data-theme=dark] .choice-row.crossed .choice{color:#d8d9c8;background:#303c32;border-color:#9eaa8d}:root[data-theme=dark] :is(.correct-text,.wrong-right span,.jp-feedback .correct-text){color:#a9e7bc}:root[data-theme=dark] :is(.incorrect-text,.auth-error,.sync-error,.wrong-number,.wrong-yours span,.audio-failures){color:#ffc09f}:root[data-theme=dark] .question-progress :is(.correct,.incorrect,.current){color:var(--ink)}:root[data-theme=dark] .question-progress .correct{background:#275a41}:root[data-theme=dark] .question-progress .incorrect{background:#603b2f}:root[data-theme=dark] .question-progress .current{background:#5f482d}:root[data-theme=dark] .question-progress .uncertain{color:#fff2bf;background:#635427}:root[data-theme=dark] :is(.jp-reading .jp-reading-word,.jp-learning .jp-text-button,.uncertain-toggle){color:var(--teal);background:0 0}:root[data-theme=dark] :is(.brand-wordmark strong,.brand-symbol,.section-kicker,.eyebrow,.hero h1,.home-mini-stats strong,.result-stats strong,.skill-stat strong,.mock-skill strong){color:var(--teal)}:root[data-theme=dark] :is(.brand-wordmark small,.course-card-footer,.course-index,.picker-label,.bank-label,.auth-help,.auth-subjects,.home-japanese-levels strong,.home-japanese-levels span,.jp-goal,.jp-reading,.jp-romaji,.jp-sources,.jp-levels small,.jp-lesson-card small,.jp-daily-grid article small){color:var(--ink-soft)}:root[data-theme=dark] :is(.jp-reading,.jp-romaji){border-color:var(--line)}:root[data-theme=dark] :is(.jp-helper-filters input,.jp-helper-filters select,.jp-helpers select,.jp-free-conversation textarea,.jp-lab-setup select){color:var(--ink);background:var(--card);border-color:var(--line)}:root[data-theme=dark] :is(.math-scratchpad-canvas,.jp-writing-grid){color:#203c36;background:#fffefa}:root[data-theme=dark] .mobile-navigation{background:var(--card);border-color:var(--line)}:root[data-theme=dark] .menu-card.locked:nth-child(n){background:#26372d}:root[data-theme=dark] button:disabled{opacity:.8}@media print{:root[data-theme=dark]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#203c36;--ink-soft:#576e66;--paper:white;--card:white;--line:#dce3db;--teal:#205e51;--mint-soft:white;--teal-soft:#e5eee7}:root[data-theme=dark] :is(body,main,section,article,div,li,button,span,strong,p,small,h1,h2,h3,label,summary,th,td){color:#203c36!important;box-shadow:none!important;background:#fff!important}}:root[data-reading-size=large]{font-size:125%}:root[data-reading-size=large] .search-controls :is(input,select){font-size:max(1rem,16px)}.display-controls{flex-wrap:wrap;align-items:flex-start;gap:10px;display:flex}.reading-control{color:var(--ink-soft);max-width:280px;font-size:.76rem}.reading-control summary{border:1px solid var(--line);background:var(--card);cursor:pointer;min-height:44px;color:var(--ink);border-radius:9px;padding:9px 12px}.reading-panel{padding:14px 0 0}.reading-panel label{gap:7px;font-weight:700;display:grid}.reading-panel select{width:100%;min-height:44px;color:var(--ink);border:1px solid var(--line);background:var(--card);border-radius:8px;padding:8px;font-size:max(1rem,16px)}.reading-panel p{margin:10px 0 0;font-size:.76rem;line-height:1.8}.auth-card>.display-controls{justify-content:flex-end;margin-bottom:22px}.user-bar,.header-tools{flex-wrap:wrap}.header-tools{justify-content:flex-end}.page-guide{border:1px solid var(--line);background:var(--card);color:var(--ink-soft);border-radius:12px;margin:0 0 24px}.page-guide summary{cursor:pointer;min-height:52px;color:var(--teal);justify-content:space-between;align-items:center;gap:12px;padding:14px 20px;font-size:.88rem;font-weight:700;list-style:none;display:flex}.page-guide summary::-webkit-details-marker{display:none}.guide-action{flex:none;font-size:.75rem;font-weight:400}.guide-action:after{content:" ＋"}.page-guide[open] .guide-action:after{content:" −"}.page-guide ol{gap:12px;margin:0;padding:2px 26px 22px 48px;font-size:.9rem;line-height:1.9;display:grid}.page-guide li{overflow-wrap:anywhere;padding-left:5px}.page-guide li::marker{color:var(--teal);font-weight:800}@media (width<=760px){.header-tools{align-items:flex-start}.header-tools .display-controls{flex:1;gap:8px}.reading-control{max-width:100%}.reading-control summary{padding:9px;font-size:.76rem}.reading-panel{width:100%}.header-tools .display-controls:has(.reading-control[open]){flex-basis:100%;order:3}.page-guide summary{gap:8px;padding:14px}.page-guide ol{padding:0 20px 20px 38px}:root[data-reading-size=large] .home-subject-grid,:root[data-reading-size=large] .jp-levels{grid-template-columns:1fr}:root[data-reading-size=large] .jp-tool-nav{grid-template-columns:repeat(2,minmax(0,1fr))}}@media print{:root[data-reading-size=large]{font-size:100%}.display-controls,.page-guide{display:none!important}}.practice-toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 20px;display:flex}.practice-toolbar button,.read-explanation,.explanation-actions>button:not(.next){border:1px solid var(--line);background:var(--card);min-height:44px;color:var(--teal);border-radius:9px;padding:9px 14px;font-size:.83rem;font-weight:700}.practice-toolbar small{color:var(--ink-soft);flex-basis:100%;font-size:.75rem}#practice-settings[hidden]{display:none}.question-entry,#practice-title,.answer-explanation{scroll-margin-top:20px}.question-tools{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.explanation-actions{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:22px;padding-top:18px;display:flex}.answer-explanation:focus-visible,#practice-title:focus-visible{outline:3px solid var(--teal);outline-offset:6px;border-radius:4px}.practice>.sync-error{background:var(--coral-soft);border-radius:10px;padding:14px;line-height:1.8}@media (width<=760px){.practice-toolbar button{flex:130px}.explanation-actions>button{width:100%}.question-tools{justify-content:space-between}}@media print{.practice-toolbar,.question-tools,.explanation-actions{display:none!important}}.attempt-sync{border:1px solid var(--line);background:var(--card);border-radius:16px;justify-content:space-between;align-items:center;gap:1rem;margin:1rem 0;padding:1rem 1.25rem;display:flex}.attempt-sync>div{min-width:0}.attempt-sync strong{color:var(--ink);font-size:.9rem}.attempt-sync p{color:var(--ink-soft);margin:.3rem 0 0;line-height:1.6}.attempt-sync small{color:var(--ink);margin-top:.35rem;line-height:1.6;display:block}.attempt-sync button{border:1px solid var(--line);min-height:44px;color:var(--teal);background:var(--teal-soft);border-radius:10px;flex-shrink:0;padding:.6rem 1rem;font-weight:600}.attempt-sync button:hover:not(:disabled){border-color:var(--teal)}.attempt-sync button:focus-visible{outline:3px solid var(--teal);outline-offset:3px}.attempt-sync button:disabled{cursor:wait;opacity:.65}.attempt-sync.needs-sync{border-color:var(--teal)}@media (width<=600px){.attempt-sync{flex-direction:column;align-items:stretch;gap:.75rem}.attempt-sync button{width:100%}}@media print{.attempt-sync{display:none}}
