*{box-sizing:border-box}body.guest-mode .profile-bar,body.guest-mode .tab[data-tab=review],body.guest-mode .tab[data-tab=courseware],body.guest-mode .tab[data-tab=jita],body.guest-mode .tab[data-tab=particle],body.guest-mode #btnGenerateExample,body.guest-mode #btnGenerateScenes,body.guest-mode #btnSceneHistory,body.guest-mode #btnOpenAddVocab,body.guest-mode #agentFab,body.guest-mode #agentPanel{display:none!important}.login-existing .existing-chip.readonly{cursor:default;color:var(--ink-faint);background:#f5f0e8b3}.login-existing .existing-chip:hover{border-color:var(--sakura);color:var(--sakura-deep)}.login-existing .existing-chip.readonly:hover{border-color:var(--paper-warm);color:var(--ink-faint)}#appContainer{display:none}#appContainer.ready{display:block}.profile-current:hover{border-color:var(--indigo-soft)}.profile-current-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-current-caret{color:var(--ink-faint);font-size:10px}.profile-dropdown{display:none;position:absolute;top:100%;left:0;right:0;margin-top:4px;background:#fff;border:1px solid var(--paper-warm);border-radius:8px;box-shadow:0 4px 16px #00000014;z-index:50;overflow:hidden}.profile-dropdown.show{display:block}.profile-dropdown-item{padding:9px 14px;font-size:13px;cursor:pointer;color:var(--ink);border-bottom:1px solid var(--paper-warm)}.profile-dropdown-item:last-child{border-bottom:none}.profile-dropdown-item:hover{background:var(--paper)}.profile-dropdown-item.active{background:#c972781a;color:var(--sakura-deep);font-weight:600}.btn-add-profile:hover{border-color:var(--indigo-soft);color:var(--indigo)}.btn-with-help{align-items:center;display:inline-flex;gap:6px;justify-content:center}.profile-help-icon:hover{background:#2d4a6b24;color:var(--indigo)}.vocab-tab:hover{border-color:var(--sakura);color:var(--sakura-deep)}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.btn-add{padding:8px 14px;background:var(--sakura-deep);color:#fff;border:none;border-radius:999px;font-size:13px;cursor:pointer;font-family:inherit;transition:all .15s;white-space:nowrap}.btn-add:hover{background:var(--sakura)}.btn-primary{background:var(--sakura-deep);color:#fff;border:none;padding:10px 22px;border-radius:999px;font-size:14px;cursor:pointer;font-family:inherit}.btn-primary:hover{background:var(--sakura)}.btn-primary:disabled{background:var(--ink-faint);cursor:not-allowed}.btn-secondary:hover{border-color:var(--ink-faint);color:var(--ink)}.btn-tts:hover{border-color:var(--sakura);color:var(--sakura-deep)}.btn-tts.playing{background:var(--sakura);color:#fff;border-color:var(--sakura)}.btn-tts-sm{font-size:12px;padding:2px 8px}.btn-ai:hover{border-color:var(--moss)}.btn-ai:disabled{border-color:var(--paper-warm);color:var(--ink-faint);cursor:not-allowed}.section-inline-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.legal-footer{align-items:center;bottom:8px;color:var(--ink-faint);display:flex;font-size:12px;gap:8px;justify-content:center;left:50%;pointer-events:auto;position:fixed;transform:translate(-50%);z-index:120}.legal-footer a{color:inherit;text-decoration:none}.legal-footer a:hover{color:var(--ink);text-decoration:underline}@media(max-width:860px){.legal-footer{bottom:calc(76px + env(safe-area-inset-bottom,0px))}}.practice-toolbar{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 12px}.practice-mode{display:inline-flex;align-items:center;gap:6px;background:#fff;border:1px solid var(--paper-warm);border-radius:8px;color:var(--ink-soft);font-size:13px;padding:8px 10px}.practice-mode input{accent-color:var(--sakura-deep)}.practice-layout{display:grid;grid-template-columns:minmax(220px,280px) minmax(0,1fr);gap:14px;align-items:start}.practice-panel,.practice-surface{background:#fff;border:1px solid var(--paper-warm);border-radius:8px;box-shadow:0 2px 14px #00000009;padding:16px}.practice-panel-title,.practice-empty-title{color:var(--ink);font-size:16px;font-weight:700;margin-bottom:10px}.practice-profile-line,.practice-trap-row,.practice-mastery-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;color:var(--ink-soft);font-size:13px;padding:7px 0;border-bottom:1px solid rgba(0,0,0,.05)}.practice-profile-line strong,.practice-trap-row strong,.practice-mastery-row strong{color:var(--ink);font-weight:700}.practice-subtitle{color:var(--ink-faint);font-size:12px;font-weight:700;margin:14px 0 6px}.practice-mastery-row{grid-template-columns:minmax(70px,1fr) minmax(70px,1.1fr) auto}.practice-meter{height:7px;background:var(--paper);border-radius:999px;overflow:hidden}.practice-meter i{display:block;height:100%;background:var(--moss);border-radius:inherit}.practice-muted{color:var(--ink-faint);font-size:13px;line-height:1.7}.practice-empty{min-height:220px;display:grid;place-content:center;gap:12px;text-align:center}.practice-kicker{color:var(--sakura-deep);font-size:12px;font-weight:800;margin-bottom:8px}.practice-title{color:var(--ink);font-size:24px;line-height:1.35;margin:0 0 12px}.practice-explain{color:var(--ink-soft);font-size:15px;line-height:1.8;margin:0 0 14px;white-space:pre-wrap}.practice-introduce-callout{background:#6b8e5a14;border-left:3px solid var(--moss);color:var(--ink-soft);font-size:13px;line-height:1.65;margin-bottom:9px;padding:8px 10px}.practice-introduce-callout strong{color:var(--moss);display:block;font-size:11px;letter-spacing:.06em}.practice-meta-row{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px}.practice-meta-row span{background:var(--paper);border:1px solid var(--paper-warm);border-radius:999px;color:var(--ink-soft);font-size:12px;padding:5px 9px}.practice-why{align-items:center;background:#725cad12;border:1px solid rgba(114,92,173,.16);border-radius:8px;display:grid;gap:10px;grid-template-columns:minmax(0,1fr) auto;margin:-4px 0 16px;padding:10px 12px}.practice-why strong,.practice-learning-feedback>strong{color:var(--ink);display:block;font-size:12px;font-weight:800;margin-bottom:3px}.practice-why span{color:var(--ink-soft);display:block;font-size:13px;line-height:1.6}.practice-why em{background:#fff;border:1px solid rgba(114,92,173,.18);border-radius:999px;color:#6f5aa8;font-size:12px;font-style:normal;font-weight:800;max-width:132px;overflow:hidden;padding:5px 9px;text-overflow:ellipsis;white-space:nowrap}.practice-toggle-line{align-items:center;color:var(--ink-soft);display:inline-flex;font-size:12px;font-weight:800;gap:7px;margin-top:8px}.practice-next-evidence{display:grid;gap:7px;margin-top:9px}.practice-next-evidence div{background:#598b5f14;border:1px solid rgba(89,139,95,.18);border-radius:8px;display:grid;gap:2px;padding:8px}.practice-next-evidence strong{color:var(--moss);font-size:12px}.practice-next-evidence span{color:var(--ink-soft);font-size:12px}.practice-options,.practice-tiles{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.practice-option-row,.practice-tile-wrap{align-items:center;display:inline-flex;gap:5px}.practice-option,.practice-tile{background:#fff;border:1px solid var(--paper-warm);border-radius:8px;color:var(--ink);cursor:pointer;font-family:inherit;font-size:15px;padding:10px 12px;text-align:left}.practice-option:hover,.practice-tile:hover{border-color:var(--sakura);color:var(--sakura-deep)}.practice-tts{align-items:center;background:color-mix(in srgb,var(--paper) 72%,white);border:1px solid var(--paper-warm);border-radius:999px;color:var(--ink-soft);cursor:pointer;display:inline-flex;font-family:inherit;font-size:13px;height:30px;justify-content:center;line-height:1;min-width:30px}.practice-tts:hover,.practice-tts.playing{border-color:var(--sakura);color:var(--sakura-deep)}.practice-answer-form textarea{width:100%;border:1px solid var(--paper-warm);border-radius:8px;color:var(--ink);font-family:inherit;font-size:18px;line-height:1.6;padding:12px;resize:vertical}.practice-answer-form textarea:focus{border-color:var(--sakura);outline:none}.practice-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:12px}.practice-demo{background:#ffffffbd;border:1px solid rgba(90,70,54,.12);border-radius:8px;display:grid;gap:8px;margin:12px 0;padding:12px}.practice-demo-base,.practice-demo-row{align-items:center;display:grid;gap:8px}.practice-demo-base{grid-template-columns:58px minmax(0,1fr) auto}.practice-demo-row{grid-template-columns:58px minmax(0,1fr) auto auto}.practice-demo-base span,.practice-demo-row span,.practice-demo-row em{color:var(--ink-soft);font-size:12px;font-style:normal;font-weight:800}.practice-demo-base strong,.practice-demo-row strong{color:var(--ink);font-size:17px}.practice-demo-row small{color:var(--ink-faint);font-size:11px;grid-column:2 / -1}.practice-demo-tts{align-items:center;background:#ffffffdb;border:1px solid var(--line);border-radius:999px;color:var(--indigo);cursor:pointer;display:inline-flex;font-size:13px;height:28px;justify-content:center;line-height:1;width:28px}.practice-demo-link{justify-self:end}.practice-result{border-radius:8px;font-size:14px;line-height:1.8;padding:12px}.practice-result-text{white-space:pre-line}.practice-result.ok{background:#598b5f1a;border:1px solid rgba(89,139,95,.26);color:var(--moss)}.practice-result.miss{background:#b3515714;border:1px solid rgba(179,81,87,.22);color:var(--sakura-deep)}.practice-result-label{font-weight:800;margin-bottom:4px}.practice-correct-answer{align-items:center;background:#ffffffa8;border:1px solid rgba(90,70,54,.12);border-radius:8px;display:flex;flex-wrap:wrap;gap:8px;margin-top:10px;padding:8px}.practice-correct-answer span,.practice-evidence-chip{color:var(--ink-soft);font-size:12px;font-weight:800}.practice-correct-answer strong{color:var(--ink);font-size:15px}.practice-evidence-chip,.practice-ask-coach{margin-top:8px}.practice-result-retry{margin-right:8px;margin-top:8px}.practice-learning-feedback{background:#fff;border:1px solid var(--paper-warm);border-radius:8px;color:var(--ink-soft);font-size:13px;line-height:1.65;margin-top:10px;padding:12px}.practice-learning-list{display:grid;gap:8px;margin-top:8px}.practice-learning-item{border-left:3px solid var(--paper-warm);display:grid;gap:2px;padding:2px 0 2px 9px}.practice-learning-item b{color:var(--ink);font-size:12px}.practice-learning-item span{color:var(--ink-soft)}.practice-learning-item.progress{border-left-color:var(--moss)}.practice-learning-item.focus{border-left-color:var(--sakura-deep)}.practice-learning-item.graduation{border-left-color:#b89131}.practice-learning-feedback p{color:var(--ink-faint);margin:9px 0 0}.practice-session-progress{margin-bottom:18px}.practice-session-progress>div{display:flex;justify-content:space-between;gap:12px;color:var(--ink-soft);font-size:13px}.practice-session-progress i{display:block;height:5px;margin-top:7px;overflow:hidden;border-radius:999px;background:var(--paper-warm)}.practice-session-progress b{display:block;height:100%;border-radius:inherit;background:var(--moss)}.toast.toast-action{cursor:pointer;pointer-events:auto}.toast-action-button{background:transparent;border:0;border-left:1px solid rgba(255,255,255,.45);color:#fff;cursor:pointer;font:inherit;font-weight:800;margin-left:10px;padding-left:10px;text-decoration:underline}.courseware-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,320px);gap:14px;align-items:start}.courseware-library{min-width:0}.courseware-library>summary{display:none}.courseware-form,.courseware-list,.courseware-draft{background:#fff;border:1px solid var(--paper-warm);border-radius:8px;box-shadow:0 2px 14px #00000009;padding:16px}.courseware-fields{display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:10px;margin-bottom:10px}.courseware-hints div{border:1px solid rgba(89,139,95,.18);border-radius:8px;background:#598b5f0f;padding:9px 10px}.courseware-hints strong,.courseware-hints span{display:block}.courseware-hints strong{color:var(--ink);font-size:12px;margin-bottom:3px}.courseware-hints span{color:var(--ink-faint);font-size:11px;line-height:1.45}.courseware-form input,.courseware-form select,.courseware-form textarea,.courseware-item input,.courseware-item select,.courseware-item textarea{width:100%;border:1px solid var(--paper-warm);border-radius:8px;color:var(--ink);font-family:inherit;font-size:14px;padding:10px}.courseware-form textarea,.courseware-item textarea{line-height:1.6;resize:vertical}.courseware-form input:focus,.courseware-form select:focus,.courseware-form textarea:focus,.courseware-item input:focus,.courseware-item select:focus,.courseware-item textarea:focus{border-color:var(--sakura);outline:none}.courseware-list-title{color:var(--ink);font-size:15px;font-weight:800;margin-bottom:10px}.courseware-continue-chip{align-items:center;background:color-mix(in srgb,var(--moss) 8%,var(--paper));border:1px solid color-mix(in srgb,var(--moss) 18%,var(--line));border-radius:8px;color:var(--ink-soft);display:flex;font-size:12px;font-weight:750;gap:10px;justify-content:space-between;margin:-2px 0 12px;padding:9px 10px}.courseware-list-item{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;border-bottom:1px solid rgba(0,0,0,.05);padding:9px 0}.courseware-list-item strong,.courseware-list-item span{display:block}.courseware-list-item span{color:var(--ink-faint);font-size:12px;margin-top:2px}.courseware-list-item b{color:var(--moss);font-size:15px}.courseware-draft{margin-top:14px}.courseware-text-analysis{background:#2d4a6b0a;border:1px solid rgba(45,74,107,.12);border-radius:8px;margin-top:10px;padding:10px}.courseware-analysis-head{align-items:baseline;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;margin-bottom:8px}.courseware-analysis-head strong{color:var(--ink);font-size:13px}.courseware-analysis-head span,.courseware-analysis-empty span{color:var(--ink-faint);font-size:12px}.courseware-analysis-list{display:grid;gap:6px}.courseware-analysis-item{align-items:center;background:#fff;border:1px solid var(--paper-warm);border-radius:8px;display:grid;gap:4px;grid-template-columns:minmax(74px,.45fr) minmax(78px,.35fr) minmax(120px,1fr);padding:7px 9px}.courseware-analysis-item span{color:var(--ink-soft);font-size:12px}.courseware-analysis-item small{color:var(--ink-faint);font-size:11px}.analysis-surface{color:var(--indigo)!important;font-weight:800}.courseware-analysis-empty{display:grid;gap:4px}.courseware-analysis-empty strong{color:var(--ink);font-size:13px}.courseware-draft-status{color:var(--moss);font-size:12px;font-weight:800;margin:6px 0 0}.courseware-draft-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.courseware-items{display:grid;gap:10px}.courseware-item{display:grid;grid-template-columns:repeat(auto-fit,minmax(118px,1fr));gap:8px;align-items:start;border:1px solid var(--paper-warm);border-radius:8px;padding:10px}.courseware-check{display:inline-flex;align-items:center;gap:6px;color:var(--ink-soft);font-size:13px;padding-top:9px}.courseware-check input{width:auto;accent-color:var(--sakura-deep)}.courseware-item textarea,.courseware-item-status{grid-column:1 / -1}.courseware-item-status{border-radius:8px;font-size:12px;line-height:1.6;padding:8px 10px}.courseware-item-status.ok{background:#598b5f1a;color:var(--moss)}.courseware-item-status.warn{background:#b3515714;color:var(--sakura-deep)}.courseware-empty{background:#fff;border:1px solid var(--paper-warm);border-radius:8px;color:var(--ink-faint);padding:18px;text-align:center}.verb-chip.mine:after{content:"\2726";position:absolute;top:-4px;right:-2px;color:var(--indigo);font-size:9px}.verb-chip.mine.active:after{color:#fff}.verb-chip.public:after{content:"\5171";position:absolute;top:-6px;right:-6px;background:var(--indigo);color:#fff;border-radius:999px;font-size:9px;line-height:1;padding:2px 3px}.verb-chip.public.active:after{background:#fff;color:var(--sakura-deep)}.verb-picker-divider{flex-basis:100%;width:100%;margin-top:6px;display:flex;align-items:center;gap:10px;font-size:12px;color:var(--ink-faint);white-space:nowrap}.verb-picker-divider:before,.verb-picker-divider:after{content:"";flex:1;height:1px;background:var(--paper-warm)}.verb-picker.soundmap-locked .verb-chip{min-width:72px}.verb-display .stem{color:var(--ink)}.verb-reading-row .btn-tts{background:#fff}.seg.seen:before{content:"";position:absolute;top:4px;right:4px;width:6px;height:6px;border-radius:50%;background:var(--moss)}.seg.active .seg-row{color:#fffc}.seg.active .seg-kana{color:#fff}.seg.active .seg-use{color:#ffffffe6}.track.soundmap-mode{align-items:stretch}.soundmap-panel{align-self:stretch;background:#598b5f14;border:1px solid rgba(89,139,95,.18);border-radius:8px;color:var(--ink-soft);display:grid;flex:1 0 160px;font-size:12px;gap:3px;line-height:1.45;padding:9px 10px}.soundmap-panel strong{color:var(--moss)}.seg.lit:after{background:var(--moss);border-radius:999px;content:"";height:7px;position:absolute;right:7px;top:7px;width:7px}.form-card-actions{display:flex;align-items:center;gap:8px}.example-list{display:grid;gap:8px}.concept-bridge-mini{background:#2d4a6b0f;border:1px solid rgba(45,74,107,.12);border-radius:8px;color:var(--ink-soft);display:grid;font-size:12px;gap:4px;line-height:1.55;padding:9px 10px}.concept-bridge-mini strong{color:var(--indigo)}.concept-bridge-mini small{color:var(--sakura-deep);font-size:11px;line-height:1.45}.example-mobile-toggle{display:none}.example-list.expanded{max-height:360px;overflow-y:auto;padding-right:4px}.example-item.pending{color:var(--ink-soft)}.example-item.error{background:#bf5f6b14;border-color:#bf5f6b38}.example-status-title{color:var(--ink-soft);font-size:13px;font-weight:700;margin-bottom:3px}.example-status-text{color:var(--ink-faint);font-size:12px;line-height:1.5}.example-contrast{border-left:3px solid var(--moss);color:var(--ink-soft);font-size:12px;line-height:1.55;padding:7px 10px}.jp-row{display:flex;justify-content:space-between;align-items:center;gap:8px}.form-example .jp{color:var(--ink);margin-bottom:4px;flex:1}.form-example .jp .highlight{background:linear-gradient(transparent 65%,var(--moss-soft) 65%);padding:0 2px;font-weight:500}.form-example .example-reading{color:var(--ink-faint);font-size:12px;line-height:1.35;margin:0 0 4px}.form-example .zh{color:var(--ink-faint);font-size:13px}.example-source-badge{display:inline-block;font-size:10px;padding:2px 7px;border-radius:999px;margin-left:6px;letter-spacing:1px}.example-source-badge.user{background:#2d4a6b1a;color:var(--indigo)}.example-source-badge.llm{background:#6b8e5a26;color:var(--moss)}.example-toggle{background:#2d4a6b0f;border:1px solid rgba(45,74,107,.12);border-radius:8px;color:var(--indigo);cursor:pointer;font-family:inherit;font-size:12px;font-weight:700;padding:8px 10px;text-align:center}.example-toggle:hover{background:#2d4a6b1a}.tip .tip-label{font-weight:600;margin-right:6px}.scene-history-panel{display:none;margin:0 0 14px}.scene-history-panel.show{display:block}.scene-history-list{background:#ffffffd1;border:1px solid var(--paper-warm);border-radius:8px;padding:8px}.scene-history-item{align-items:center;background:#fff;border:1px solid transparent;border-radius:8px;color:var(--ink);cursor:pointer;display:grid;gap:8px;grid-template-columns:1fr auto;margin-bottom:6px;padding:9px 10px;text-align:left;width:100%}.scene-history-item:hover{border-color:var(--moss)}.scene-history-title{font-size:13px;font-weight:600}.scene-history-meta{color:var(--ink-faint);font-size:12px}.scene-status{color:var(--ink-faint);font-size:12px;min-height:20px;margin-bottom:8px;text-align:right}.scene-status.loading{color:var(--indigo)}.scene-status.success{color:var(--moss)}.scene-status.error{color:var(--error)}.mode-chip.listen{background:#2d4a6b1a;color:var(--indigo)}.mode-chip.speak{background:#c972781f;color:var(--sakura-deep)}.scene-image-wrap{margin:0 auto 14px;position:relative}.scene-video{width:100%;height:100%;min-height:220px;display:block;object-fit:cover;background:#111827}.scene-video-wrap{background:#111827}.scene-image-badge{background:#ffffffdb;border:1px solid rgba(36,63,99,.1);border-radius:999px;bottom:8px;color:var(--ink-faint);font-size:11px;line-height:1;padding:5px 8px;position:absolute;right:8px}.scene-visual-status{align-items:center;background:color-mix(in srgb,var(--paper) 86%,white);border:1px dashed color-mix(in srgb,var(--indigo) 22%,var(--line));border-radius:var(--radius);color:var(--ink-soft);display:flex;gap:12px;justify-content:center;margin:0 auto 14px;min-height:118px;padding:18px;text-align:left}.scene-visual-status.error{border-color:color-mix(in srgb,var(--error) 35%,var(--line))}.scene-visual-symbol{font-size:32px;letter-spacing:2px;line-height:1;white-space:nowrap}.scene-visual-copy{display:grid;gap:4px;line-height:1.45}.scene-visual-copy b{color:var(--ink);font-size:13px}.scene-visual-copy span{color:var(--ink-faint);font-size:12px}.scene-sentence{background:var(--paper);border-radius:10px;padding:18px 14px;margin:14px 0 18px;text-align:center;font-size:22px;line-height:1.4;color:var(--ink);letter-spacing:1px;position:relative}.scene-sentence .verb-hl{background:linear-gradient(transparent 60%,var(--moss-soft) 60%);padding:0 4px;font-weight:500}.scene-sentence .scene-blank{background:var(--moss-soft);border-radius:6px;color:transparent;display:inline-block;min-width:72px}.scene-sentence .btn-tts{position:absolute;top:8px;right:8px}.scene-listen-fallback{color:var(--ink-soft);font-size:15px;letter-spacing:0;margin-top:10px}.scene-sentence-reading{font-size:13px;color:var(--ink-faint);margin-top:6px;letter-spacing:2px}.scene-intent{background:var(--paper);border-radius:10px;padding:14px 16px;margin:14px 0 18px;color:var(--ink-soft);font-size:15px;line-height:1.5;border-left:3px solid var(--sakura)}.scene-intent .intent-label{font-size:11px;color:var(--ink-faint);letter-spacing:2px;display:block;margin-bottom:4px}.option:disabled{cursor:default}.option-main{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%}.option-text{min-width:0}.option .option-reading{display:block;font-size:12px;color:var(--ink-faint);margin-top:2px;letter-spacing:1.5px}.option-tts{flex:0 0 auto;background:#fff}.option .mark{position:absolute;right:56px;top:50%;transform:translateY(-50%);font-weight:700}.option.correct .mark{color:var(--moss)}.option.wrong .mark{color:var(--error)}.feedback.show{display:block;animation:fadeIn .25s ease}.feedback-correct{font-size:14px;color:var(--ink-soft);line-height:1.6;margin-bottom:14px}.feedback-traps{font-size:13px;color:var(--ink-soft);line-height:1.7}.feedback-traps .trap-label{font-weight:600;color:var(--sakura-deep);margin-right:4px}.feedback-traps .trap-item{margin-bottom:6px}.form-callout .callout-label{font-size:11px;color:var(--indigo);letter-spacing:2px;margin-bottom:4px;font-weight:600}.form-callout .callout-form-name{font-size:15px;color:var(--indigo);margin-bottom:8px;font-weight:600}.form-callout .callout-wheel-tie{font-size:13px;color:var(--ink-soft);line-height:1.6}.scene-actions{text-align:right;margin-top:16px}.scene-quality-btn{margin-top:14px;border:1px solid var(--line);background:var(--paper);color:var(--ink-faint);border-radius:8px;padding:7px 10px;font-size:12px;cursor:pointer}.scene-quality-btn:hover:not(:disabled){color:var(--error);border-color:color-mix(in srgb,var(--error) 35%,var(--line))}.scene-quality-btn:disabled{cursor:default;opacity:.75}.btn-next{background:var(--sakura-deep);color:#fff;border:none;padding:10px 22px;border-radius:999px;font-size:14px;cursor:pointer;font-family:inherit}.btn-next:hover{background:var(--sakura)}.btn-next:disabled{background:var(--paper-warm);color:var(--ink-faint);cursor:not-allowed}.scene-complete{text-align:center;padding:40px 20px}.scene-complete h2{font-size:22px;color:var(--ink);margin-bottom:8px}.scene-complete p{color:var(--ink-soft);line-height:1.6;margin-bottom:20px}.btn-restart{background:#fff;border:1px solid var(--sakura);color:var(--sakura-deep);padding:8px 20px;border-radius:999px;cursor:pointer;font-family:inherit;font-size:14px}.book-card-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:8px;gap:12px}.book-verb-reading{font-size:13px;color:var(--ink-faint);letter-spacing:2px;margin-top:2px}.book-verb-meaning{font-size:13px;color:var(--ink-soft);margin-top:4px}.false-friend-badge{background:#b3515714;border:1px solid rgba(179,81,87,.18);border-radius:8px;color:#991b1b;font-size:12px;line-height:1.45;margin-top:7px;max-width:520px;padding:6px 8px}.false-friend-tip{background:#b3515714;border-color:#b351572e;color:#991b1b}.book-meta{font-size:11px;color:var(--ink-faint);letter-spacing:1px;white-space:nowrap}.book-meta .count{color:var(--moss);font-weight:600}.book-mini-track{display:flex;gap:3px;margin-top:8px}.book-mini-seg{flex:1;height:4px;background:var(--paper-warm);border-radius:2px}.book-mini-seg.seen{background:var(--moss)}.book-empty{text-align:center;padding:60px 20px;color:var(--ink-faint)}.book-empty h3{color:var(--ink-soft);margin-bottom:8px}.vocab-kind-badge{display:inline-block;background:#2d4a6b1a;border-radius:999px;color:var(--indigo);font-size:11px;font-weight:600;margin-bottom:8px;padding:2px 8px}.detail-section{margin-bottom:20px}.detail-section-title{font-size:11px;color:var(--ink-faint);letter-spacing:2px;margin-bottom:8px;text-transform:uppercase}.detail-conj-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.detail-conj-item{padding:8px 10px;background:var(--paper);border-radius:8px;font-size:13px;display:flex;justify-content:space-between;align-items:center;gap:8px}.detail-conj-item.seen{background:#6b8e5a1a;border-left:2px solid var(--moss)}.detail-conj-form-name{color:var(--ink-faint);font-size:11px}.detail-conj-form-value{color:var(--ink);font-weight:500}.encounter-card{padding:12px 14px;background:var(--paper);border-radius:10px;margin-bottom:8px;border-left:3px solid var(--indigo-soft)}.encounter-meta{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:var(--ink-faint);margin-bottom:8px;letter-spacing:1px}.encounter-form-badge{background:#2d4a6b1a;color:var(--indigo);padding:2px 8px;border-radius:999px;font-weight:600}.encounter-sentence{font-size:16px;color:var(--ink);margin-bottom:6px;display:flex;justify-content:space-between;align-items:center;gap:8px}.encounter-scene{font-size:13px;color:var(--ink-soft);line-height:1.5}.encounter-source{font-size:11px;color:var(--ink-faint);margin-top:6px;font-style:italic}.modal-large{max-width:680px}.modal-close:hover{color:var(--ink)}.modal-body{padding:20px 22px}.modal-help{max-width:440px}.feature-help-body ul{margin:0;padding-left:18px}.feature-help-body li{color:var(--ink-soft);font-size:14px;line-height:1.75;margin-bottom:8px}.feature-help-body li:last-child{margin-bottom:0}.module-help-button{align-items:center;background:var(--paper);border:1px solid var(--line);border-radius:999px;color:var(--indigo);cursor:pointer;display:inline-flex;font-size:13px;font-weight:800;height:24px;justify-content:center;margin-left:8px;vertical-align:middle;width:24px}.module-help-button:hover{border-color:var(--indigo);color:var(--sakura-ink)}.field{margin-bottom:14px}.field label .required{color:var(--sakura-deep);font-size:10px;margin-left:4px}.field label .optional{color:var(--ink-faint);font-size:10px;margin-left:4px}.field label .encouraged{color:var(--indigo);font-size:10px;margin-left:4px}.field input:focus,.field textarea:focus,.field select:focus{outline:none;border-color:var(--sakura)}.field textarea{resize:vertical}.field-hint{font-size:11px;color:var(--ink-faint);margin-top:4px;line-height:1.4}.radio-group{display:flex;flex-direction:column;gap:6px}.radio-option{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--ink);cursor:pointer}.radio-option em{font-size:11px;color:var(--ink-faint);font-style:normal;margin-left:4px}.checkbox-option{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--ink-soft);margin-top:4px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.app-dialog{max-width:420px}.app-dialog-body{color:var(--ink-soft);font-size:14px;line-height:1.65;margin:0 0 16px;white-space:pre-wrap}.app-dialog-field{margin-bottom:4px}.app-dialog-field input,.app-dialog-field textarea{width:100%}.btn-danger{background:var(--error);border-color:var(--error)}.form-error{color:var(--error);font-size:13px;margin-top:10px;text-align:right;min-height:18px}.form-note{color:var(--moss);font-size:13px;margin-top:8px;text-align:right;min-height:18px}.toast.show{opacity:1;transform:translate(-50%) translateY(0)}.toast.error{background:var(--error)}.toast.success{background:var(--moss)}.announcement-stack{display:grid;gap:10px;margin:0 0 16px}.announcement-banner{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:14px 16px;border:1px solid rgba(49,78,123,.16);border-left:4px solid var(--moss);border-radius:8px;background:#fffdf8eb;box-shadow:0 10px 28px #1c2c2414}.announcement-banner strong{display:block;margin-bottom:4px;color:var(--ink)}.announcement-banner p{margin:0;color:var(--ink-soft);line-height:1.6}.announcement-maintenance{border-left-color:#b8872d;background:#fff8e2f2}.announcement-warning{border-left-color:var(--error);background:#fff2eef2}.announcement-dismiss{flex:0 0 auto;width:30px;height:30px;border:1px solid rgba(49,78,123,.16);border-radius:50%;background:#fffdf8;color:var(--ink-soft);cursor:pointer;font-size:18px;line-height:1}.announcement-dismiss:hover{color:var(--ink);border-color:#314e7b52}@media(max-width:640px){.announcement-banner{gap:10px;padding:12px}.announcement-dismiss{width:28px;height:28px}}@media(max-width:540px){.key-status{position:static;margin-top:10px}.profile-bar,.section-row,.book-card-head,.modal-actions{align-items:stretch;flex-direction:column}.verb-display .suffix{font-size:30px}.detail-conj-grid{grid-template-columns:1fr}}#today .today-primary.btn-primary{background:linear-gradient(135deg,#fffdf6,color-mix(in srgb,var(--gold) 28%,white));border-color:#ffffffb8;box-shadow:0 14px 28px #081b303d;color:var(--indigo)}#today .today-primary.btn-primary:hover{background:linear-gradient(135deg,#fff,color-mix(in srgb,var(--gold) 38%,white));color:var(--indigo)}header{text-align:center;border-bottom:1px solid var(--paper-warm);position:relative;background:linear-gradient(135deg,#18202bf5,#243f63eb),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px);background-size:auto,28px 28px;border:1px solid rgba(255,255,255,.12);border-radius:8px;box-shadow:var(--shadow-soft);color:#fff;margin-bottom:18px;overflow:hidden;padding:28px 24px 26px}.key-status .badge.on{background:#4f8a6338;color:#d8f0dc}.key-status .badge.off{background:#e99aa42e;color:#ffd7dc}.profile-current,.btn-add-profile,.field input,.field textarea,.field select{border-color:#243f631f;border-radius:8px;box-shadow:inset 0 1px #ffffffbf}.btn-add-profile{background:#fff;border:1px solid var(--paper-warm);border-radius:8px;font-size:14px;cursor:pointer;color:var(--ink-soft);flex:0 0 auto;white-space:nowrap;min-width:58px;padding:8px 13px}@media(max-width:860px){.plan-badge,.btn-upgrade,.btn-add-profile{flex:1 1 calc(25% - 8px);min-width:72px;min-height:38px}}.btn-add:hover,.btn-primary:hover,.btn-next:hover{background:linear-gradient(135deg,#ad5260,var(--sakura));transform:translateY(-1px)}.btn-secondary,.btn-tts,.btn-ai,.btn-restart,.form-card,.scene-card,.book-card,.modal,.login-card,.scene-sentence,.scene-intent,.option,.feedback,.form-callout,.encounter-card{border-radius:8px}.plan-badge.free{background:var(--paper-warm);color:var(--ink-faint)}.plan-badge.paid{background:#c9727826;color:var(--sakura-deep)}.plan-badge.pending{background:color-mix(in srgb,var(--indigo-soft) 78%,var(--paper));color:var(--indigo)}.plan-badge[role=button]{cursor:pointer}.plan-badge[role=button]:focus-visible{outline:2px solid var(--indigo);outline-offset:3px}.btn-upgrade:hover{background:var(--sakura-deep);border-color:var(--sakura-deep)}.billing-loading{color:var(--ink-faint);padding:20px 0;text-align:center}.balance-summary{background:#fffdf8db;border:1px solid var(--line);border-radius:8px;margin-bottom:14px;padding:16px}.balance-label{color:var(--ink-faint);font-size:12px;font-weight:700;letter-spacing:1px}.balance-amount{color:var(--indigo);font-size:30px;font-weight:800;line-height:1.2;margin-top:4px}.balance-note{color:var(--ink-soft);font-size:13px;line-height:1.6;margin-top:8px}.balance-costs{display:grid;gap:8px;margin-bottom:14px}.topup-common-note{color:var(--ink-soft);flex:1 0 100%;font-size:13px;line-height:1.55;margin:0 0 12px}.balance-cost-row{align-items:center;background:#fff;border:1px solid rgba(36,63,99,.1);border-radius:8px;color:var(--ink-soft);display:flex;font-size:14px;justify-content:space-between;padding:10px 12px}.balance-cost-row b{color:var(--indigo);font-weight:700}.billing-plans{display:flex;gap:14px;flex-wrap:wrap}.topup-title{flex:1 0 100%;color:var(--ink);font-size:14px;font-weight:700;margin-top:4px}.plan-card{flex:1 1 180px;border:1px solid var(--paper-warm);border-radius:12px;padding:16px;background:#fff}.topup-card{cursor:pointer;font-family:inherit;text-align:left}.topup-card:hover,.topup-card.selected{border-color:var(--sakura);box-shadow:0 0 0 2px #c972782e}.plan-card.plan-paid{border-color:var(--sakura)}.plan-card.plan-current{box-shadow:0 0 0 2px var(--indigo-soft)}.plan-name{font-size:16px;font-weight:600;color:var(--ink);display:flex;align-items:center;gap:8px}.plan-current-tag{font-size:11px;font-weight:600;color:var(--indigo);background:#5d7da326;padding:2px 7px;border-radius:999px}.plan-price{font-size:22px;font-weight:700;color:var(--sakura-deep);margin:8px 0 12px}.topup-credit{color:var(--ink-soft);font-size:13px;font-weight:700}.plan-features{list-style:none;margin:0;padding:0;font-size:13px;color:var(--ink-soft)}.plan-features li{padding:4px 0 4px 18px;position:relative}.plan-features li:before{content:"\2713";position:absolute;left:0;color:var(--moss)}.billing-pay{margin-top:22px}.billing-pay-title{font-size:14px;font-weight:600;color:var(--ink);margin-bottom:10px}.billing-methods{display:flex;gap:10px;flex-wrap:wrap}.btn-pay{flex:1 1 160px;background:var(--indigo);border:1px solid var(--indigo);border-radius:8px;padding:11px 14px;font-size:14px;font-weight:600;color:#fff;cursor:pointer}.btn-pay:hover{background:var(--indigo-soft);border-color:var(--indigo-soft)}.btn-pay.disabled{background:var(--paper-warm);border-color:var(--paper-warm);color:var(--ink-faint);cursor:not-allowed}.jita-pair{display:inline-block;margin:0 auto 6px;padding:4px 12px;border-radius:999px;background:#243f6314;color:var(--indigo);font-size:13px;font-weight:600;letter-spacing:.5px}.jita-progress{margin-bottom:14px}.onboarding-overlay{position:fixed;inset:0;z-index:200;display:none;align-items:center;justify-content:center;padding:20px;background:#1a1a1a80;backdrop-filter:blur(8px)}.onboarding-overlay.show{display:flex}.onboarding-card{position:relative;background:#fbf8f1;border:1px solid rgba(255,255,255,.85);border-radius:16px;box-shadow:0 18px 52px #00000038;max-width:420px;width:100%;padding:32px 28px 24px;text-align:center}.onboarding-skip{position:absolute;top:12px;right:14px;background:none;border:none;font-size:13px;color:var(--ink-faint);cursor:pointer}.onboarding-skip:hover{color:var(--ink)}.onboarding-icon{font-size:52px;line-height:1;margin-bottom:12px}.onboarding-title{font-size:19px;font-weight:700;color:var(--ink);margin:0 0 12px}.onboarding-body{font-size:14.5px;line-height:1.75;color:var(--ink-soft);margin:0 0 20px;text-align:left}.onboarding-body b{color:var(--sakura-deep);font-weight:600}.onboarding-axis-surface{color:var(--indigo);font-size:48px;font-weight:900;line-height:1.1;margin:8px 0 16px}.onboarding-axis,.onboarding-trap-options,.onboarding-goals,.onboarding-loop{display:grid;gap:8px}.onboarding-axis{grid-template-columns:repeat(5,minmax(0,1fr));margin:12px 0 14px}.onboarding-axis-step,.onboarding-trap-option,.onboarding-goal{background:#ffffffc7;border:1px solid var(--line);border-radius:8px;color:var(--ink);cursor:pointer;min-height:44px;padding:8px 10px}.onboarding-axis-step span,.onboarding-axis-step small{display:block}.onboarding-axis-step span{color:var(--sakura-ink);font-size:18px;font-weight:900}.onboarding-axis-step small{color:var(--ink-soft);font-size:12px;margin-top:2px}.onboarding-axis-step .onboarding-reading{color:var(--ink-faint);font-size:11px}.onboarding-reading-support{align-items:center;color:var(--ink-soft);display:flex;font-size:12px;gap:8px;justify-content:center;margin:0 0 10px}.onboarding-tts{align-items:center;background:#ffffffdb;border:1px solid var(--line);border-radius:999px;color:var(--indigo);cursor:pointer;display:inline-flex;font-size:13px;height:28px;justify-content:center;line-height:1;width:28px}.onboarding-tts:hover,.onboarding-production-check.needs-attention{border-color:var(--sakura-deep);box-shadow:0 0 0 3px #f7aab638}.onboarding-axis-step.active,.onboarding-trap-option.active,.onboarding-goal.active{border-color:var(--sakura);box-shadow:0 0 0 3px #f7aab62e}.onboarding-trap-options{grid-template-columns:1fr;margin:12px 0}.onboarding-trap-option span,.onboarding-trap-option small{display:block}.onboarding-trap-option small{color:var(--ink-faint);font-size:12px;margin-top:3px}.onboarding-reveal{background:#f1f7ede6;border:1px solid rgba(129,176,107,.42);border-radius:8px;color:var(--ink);display:grid;gap:6px;margin-top:12px;padding:12px;text-align:left}.onboarding-loop{align-items:center;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;margin:14px 0}.onboarding-loop span{background:#ffffffc7;border:1px solid var(--line);border-radius:8px;min-height:44px;padding:10px 8px}.onboarding-loop b{color:var(--sakura-ink)}.onboarding-goals{grid-template-columns:repeat(3,minmax(0,1fr));margin:12px 0}.onboarding-goal-meta{background:#ffffffdb;border:1px solid var(--line);border-radius:8px;color:var(--ink);max-width:100%;padding:10px 12px;resize:vertical;width:100%}.onboarding-production-input{box-sizing:border-box;margin:10px 0;width:100%}.onboarding-production-check{width:100%}.onboarding-production-hint{color:var(--ink-faint);font-size:12px;margin-top:10px}.onboarding-dots{display:flex;justify-content:center;gap:7px;margin-bottom:18px}.onboarding-dot{width:8px;height:8px;border-radius:999px;background:var(--paper-warm);transition:background .2s}.onboarding-dot.active{background:var(--sakura)}.onboarding-actions{display:flex;justify-content:space-between;gap:10px}.onboarding-back{background:none;border:1px solid var(--paper-warm);border-radius:8px;padding:9px 16px;font-size:14px;color:var(--ink-soft);cursor:pointer}.onboarding-back:hover{border-color:var(--ink-faint)}.onboarding-next{flex:1;background:var(--sakura);border:1px solid var(--sakura);border-radius:8px;padding:9px 16px;font-size:14px;font-weight:600;color:#fff;cursor:pointer}.onboarding-next:hover{background:var(--sakura-deep);border-color:var(--sakura-deep)}.agent-close:hover{opacity:1}.agent-memory{border-bottom:1px solid rgba(80,96,112,.12);background:#fff;max-height:210px;overflow-y:auto;padding:9px 12px}.agent-memory-head{align-items:center;display:flex;justify-content:space-between;gap:8px;margin-bottom:7px}.agent-memory-head strong{color:var(--ink);font-size:13px}.agent-memory-refresh,.agent-memory-teaching-line button{border:1px solid var(--paper-warm);border-radius:8px;background:var(--paper);color:var(--ink-soft);cursor:pointer;font-size:12px;padding:2px 7px}.agent-memory-refresh:hover,.agent-memory-teaching-line button:hover{border-color:var(--moss);color:var(--moss)}.agent-memory-groups{display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.agent-memory-group{min-width:0}.agent-memory-group h4{color:var(--ink-faint);font-size:12px;font-weight:600;margin:0 0 4px}.agent-memory-row{border:1px solid rgba(80,96,112,.1);border-radius:8px;display:grid;gap:5px;margin-bottom:5px;min-width:0;padding:6px 7px}.agent-memory-row.muted,.agent-memory-empty,.agent-memory-trace{color:var(--ink-faint);font-size:12px}.agent-memory-row b,.agent-memory-row span,.agent-memory-row small,.agent-memory-row em{min-width:0;overflow-wrap:anywhere}.agent-memory-row b{color:var(--ink);display:block;font-size:12px}.agent-memory-row span,.agent-memory-row small,.agent-memory-row em{color:var(--ink-faint);display:block;font-size:11px;font-style:normal;line-height:1.35}.agent-memory-teaching-line{display:flex;flex-wrap:wrap;gap:5px}.agent-memory-teaching-line span{flex:1 1 100%}.agent-memory-trace{border-top:1px dashed rgba(80,96,112,.18);margin-top:6px;padding-top:6px}.agent-wk-label{font-size:12px;color:var(--ink-faint);margin-bottom:6px}.agent-wk-chips{display:flex;flex-wrap:wrap;gap:6px}.agent-wk-empty{font-size:12px;color:var(--ink-faint)}.agent-msg-user{align-items:flex-end}.agent-msg-assistant{align-items:flex-start}.agent-feedback-btn:hover,.agent-feedback-btn.active{border-color:var(--moss);background:var(--moss-soft);color:var(--moss)}.agent-feedback-btn:disabled{opacity:.55;cursor:default}.agent-action{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:13px;padding:7px 11px;border-radius:10px;background:var(--moss-soft);color:var(--ink)}.agent-action.undone{background:var(--paper-warm);color:var(--ink-faint)}.agent-depth-suggest{background:#fff7e0}.agent-undo{border:1px solid var(--moss);background:transparent;color:var(--moss);border-radius:8px;font-size:12px;padding:2px 9px;cursor:pointer;white-space:nowrap}.agent-undo:hover{background:var(--moss);color:#fff}.agent-undo:disabled{opacity:.5;cursor:default}.agent-send:disabled{opacity:.6;cursor:default}@media(max-width:540px){.agent-memory{max-height:170px}.agent-memory-groups{grid-template-columns:1fr}.container{padding:14px 12px 48px}header{padding:24px 14px 22px}.profile-bar{gap:8px}.seg-kana{font-size:25px}.scene-card{padding:22px 18px}.scene-toolbar{grid-template-columns:1fr}.modal-backdrop{padding:12px;align-items:flex-start}.modal{max-height:94vh;margin-top:8px}.modal-head{padding:14px 16px}.modal-body{padding:16px}.billing-plans{flex-direction:column;gap:10px}.plan-card{flex:1 1 auto}.billing-methods{flex-direction:column}.billing-methods .btn-pay{width:100%;padding:13px 14px}.btn-upgrade{padding:8px 14px}.option{padding:14px}}.review-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;margin-left:5px;padding:0 5px;border-radius:9px;background:var(--sakura-deep);color:#fff;font-size:11px;font-weight:700;line-height:1;vertical-align:middle}.srs-loading,.srs-empty{padding:40px 24px;text-align:center;color:var(--ink-soft);font-size:15px;line-height:1.8}.srs-empty{background:var(--paper-warm);border-radius:14px}.srs-progress{text-align:center;color:var(--ink-faint);font-size:13px;margin-bottom:14px}.srs-card{background:#fff;border:1px solid var(--paper-warm);border-radius:16px;padding:28px 24px;box-shadow:0 2px 14px #2d4a6b0f}.srs-formtag{display:inline-block;font-size:13px;color:var(--indigo);background:#5d7da31f;padding:4px 12px;border-radius:999px;margin-bottom:16px}.srs-question{font-size:13px;color:var(--ink-faint);margin-bottom:10px}.srs-cloze{font-size:22px;line-height:1.7;color:var(--ink);font-weight:500}.srs-source{margin-top:8px;font-size:12px;color:var(--ink-faint)}.srs-production{font-size:26px;font-weight:600;color:var(--ink)}.srs-meta{margin-top:12px;min-height:20px}.srs-meaning{font-size:13px;color:var(--ink-soft)}.srs-answer-zone{margin-top:22px}.srs-reveal{width:100%}.srs-answer{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;padding:18px;background:var(--paper-warm);border-radius:12px;margin-bottom:18px}.srs-answer-text{font-size:30px;font-weight:700;color:var(--indigo)}.srs-answer-reading{font-size:16px;color:var(--ink-soft)}.srs-grade-row{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.srs-grade{border:none;border-radius:10px;padding:14px 6px;cursor:pointer;font-size:14px;font-weight:600;color:#fff;transition:transform .08s ease,opacity .15s ease}.srs-grade:hover{opacity:.92}.srs-grade:active{transform:scale(.96)}.srs-again{background:var(--error)}.srs-hard{background:var(--ink-soft)}.srs-good{background:var(--moss)}.srs-easy{background:var(--indigo)}.srs-grade-help{margin-top:14px;font-size:12px;color:var(--ink-faint);text-align:center;line-height:1.6}@media(max-width:540px){.srs-card{padding:22px 16px}.srs-grade{padding:12px 4px;font-size:13px}.srs-answer-text{font-size:26px}}body::selection{background:#ef8c9847}.key-status{font-size:11px;color:var(--ink-faint);letter-spacing:1px;right:18px;top:16px;margin-top:14px;position:static;text-align:left}.key-status .badge{display:inline-block;border:1px solid rgba(255,255,255,.16);border-radius:6px;font-size:10px;margin:4px 4px 0 0;padding:4px 7px}.profile-current,.btn-add-profile,.btn-upgrade,.profile-dropdown,.field input,.field textarea,.field select,.scene-toolbar input,.scene-toolbar select{border-color:var(--line);border-radius:var(--radius)}.profile-current,.btn-add-profile,.btn-upgrade{min-height:38px}.profile-current{display:flex;align-items:center;gap:8px;border:1px solid var(--paper-warm);border-radius:8px;cursor:pointer;font-family:inherit;color:var(--ink);width:100%;justify-content:space-between;transition:all .15s;min-width:0;background:#fff;font-size:14px;font-weight:700;padding:8px 12px}.profile-current:hover,.btn-add-profile:hover{border-color:#193a5a52}.btn-add-profile,.btn-upgrade{background:#fff;color:var(--ink-soft);font-size:13px;font-weight:750;padding:7px 11px}.plan-badge{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;white-space:nowrap;padding:3px 9px;font-size:12px;font-weight:600;letter-spacing:1px;border-radius:6px;min-height:32px}.profile-help-icon{align-items:center;border:1px solid rgba(45,74,107,.12);border-radius:999px;display:inline-flex;flex:0 0 18px;font-size:12px;font-weight:800;height:18px;justify-content:center;line-height:1;margin-left:1px;background:#193a5a14;border-color:#193a5a1f;color:var(--indigo-soft)}.section-row{align-items:center;background:#ffffff94;border:1px solid rgba(255,255,255,.72);border-radius:var(--radius);box-shadow:0 8px 20px #193a5a0d;display:flex;gap:12px;justify-content:space-between;margin:0;padding:12px 14px}.section-title{color:var(--ink);font-size:16px;font-weight:820;letter-spacing:0;line-height:1.45}.btn-add:hover,.btn-primary:hover,.btn-next:hover,.btn-restart:hover{background:linear-gradient(135deg,#ad4454,var(--sakura))}.btn-secondary,.btn-ai,.btn-tts{border-radius:var(--radius);font-weight:760}.verb-chip:hover{border-color:#c6536161;color:var(--sakura-deep)}.verb-chip.public:after,.verb-chip.mine:after{border-radius:6px}.verb-display .suffix{margin-left:6px;font-weight:300;color:var(--ink-faint);font-size:clamp(30px,4vw,46px)}.verb-reading-row{align-items:center;justify-content:center;background:#ffffffd1;border:1px solid var(--line);border-radius:var(--radius);display:inline-flex;gap:8px;margin:12px 0 16px;padding:6px 8px 6px 13px}.seg:hover{transform:translateY(-2px);border-color:#193a5a52}.seg-row{color:var(--ink-faint);margin-bottom:4px;font-size:11px;font-weight:800;letter-spacing:.8px}.seg-use{color:var(--ink-soft);font-size:11px;font-weight:720}.form-card-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.example-item.ai{background:#43835e14;border-color:#43835e38}.scene-toolbar input,.scene-toolbar select{border:1px solid var(--paper-warm);border-radius:8px;color:var(--ink);font-family:inherit;font-size:14px;min-width:0;padding:9px 12px;background:#fff;min-height:38px}.scene-progress{display:flex;margin-bottom:18px;background:#ffffffbd;border:1px solid rgba(255,255,255,.82);border-radius:var(--radius);box-shadow:0 8px 18px #193a5a0d;gap:5px;padding:5px}.progress-dot{flex:1;border-radius:2px;background:#17202a1f;height:6px}.progress-dot.done{background:var(--moss)}.progress-dot.current{background:var(--sakura-deep)}.scene-card,.srs-card{background:#fff;border:1px solid rgba(255,255,255,.86);border-radius:var(--radius);box-shadow:var(--shadow-soft);margin-bottom:20px;padding:28px}.mode-chip,.jita-pair,.vocab-kind-badge,.srs-formtag,.example-source-badge{border-radius:6px}.mode-chip{display:inline-block;padding:4px 12px;border-radius:999px;font-size:12px;font-weight:850;letter-spacing:1px;margin-bottom:14px}.scene-emoji{text-align:center;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);font-size:44px;letter-spacing:6px;margin-bottom:16px;padding:20px 12px}.scene-image{aspect-ratio:16 / 9;border:1px solid rgba(36,63,99,.1);display:block;max-height:260px;object-fit:cover;width:100%;border-radius:var(--radius)}.scene-setup{text-align:center;margin-bottom:6px;color:var(--ink);font-size:18px;font-weight:760;line-height:1.65}.scene-prompt{text-align:center;margin-bottom:22px;color:var(--ink-soft);font-size:14px}.scene-sentence,.scene-intent,.feedback,.form-callout,.encounter-card,.srs-answer,.srs-empty{border-radius:var(--radius)}.scene-sentence,.scene-intent{background:var(--paper);border:1px solid var(--line)}.options{display:flex;flex-direction:column;gap:10px}.feedback-header{font-size:14px;margin-bottom:8px;color:var(--moss);font-weight:850}.form-callout{margin-top:14px;padding:14px 16px;border-radius:10px;border-left:3px solid var(--indigo);background:#193a5a12;border-left-color:var(--indigo)}.scene-next-hint{font-size:12px;margin-bottom:8px;text-align:right;color:var(--ink-faint)}.book-list{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.book-card:hover{transform:translateY(-2px);border-left-color:var(--indigo)}.book-verb-main{color:var(--ink);font-size:28px;font-weight:760}.book-verb-reading,.book-verb-meaning,.book-meta{color:var(--ink-soft)}.detail-conj-item,.balance-summary,.balance-cost-row,.plan-card{border-radius:var(--radius)}.modal-backdrop{display:none;position:fixed;inset:0;align-items:center;justify-content:center;padding:20px;background:#17202a85;backdrop-filter:blur(10px);z-index:1000}.field label{display:block;font-size:12px;margin-bottom:4px;color:var(--ink);font-weight:780;letter-spacing:0}.field input,.field textarea,.field select{width:100%;padding:9px 12px;border:1px solid var(--paper-warm);border-radius:8px;font-family:inherit;background:var(--paper);color:var(--ink);font-size:14px;min-height:38px}.field input:focus,.field textarea:focus,.field select:focus,.scene-toolbar input:focus,.scene-toolbar select:focus,.agent-input textarea:focus{border-color:var(--sakura-deep);box-shadow:0 0 0 3px #c6536121}.toast{position:fixed;bottom:30px;left:50%;transform:translate(-50%) translateY(20px);background:var(--ink);color:#fff;padding:10px 18px;font-size:13px;opacity:0;transition:all .25s;z-index:200;pointer-events:none;border-radius:var(--radius);box-shadow:0 14px 34px #17202a33;font-weight:760}.agent-weakness,.agent-msg-assistant .agent-bubble-text,.agent-depth{background:var(--paper)}.agent-bubble-text,.agent-input textarea,.agent-send,.agent-feedback-btn,.agent-action,.agent-undo{border-radius:var(--radius)}footer{text-align:center;font-size:11px;letter-spacing:1px;color:var(--ink-faint);margin-top:28px}.motion-ready .app-rail,.motion-ready .profile-bar,.motion-ready .verb-stage,.motion-ready .track,.motion-ready .form-card,.motion-ready .scene-card,.motion-ready .book-card,.motion-ready .modal,.motion-ready .login-card{transform-origin:center}@media(max-width:860px){.book-list{grid-template-columns:1fr}}@media(max-width:860px){.rail-glyph,.rail-caption{display:none}.section-row{align-items:stretch;flex-direction:column}.section-row .btn-add,.section-row .btn-ai{width:100%}.scene-card,.srs-card{padding:20px 16px}}@media(max-width:540px){.login-actions,.srs-grade-row{grid-template-columns:1fr}.form-card{min-height:0;padding:16px}.option-main,.book-card-head,.srs-answer{align-items:flex-start;flex-direction:column}.option .mark{right:12px;top:12px;transform:none}.onboarding-axis{grid-template-columns:repeat(5,minmax(48px,1fr))}.onboarding-axis-step{padding:7px 4px}.onboarding-axis-surface{font-size:38px}.onboarding-loop,.onboarding-goals{grid-template-columns:1fr}.onboarding-loop b{display:none}}html{scroll-behavior:smooth;background:var(--paper)}.app-rail header{background:none;border:0;border-radius:0;box-shadow:none;margin:0 0 16px;overflow:visible;text-align:left;border-bottom-color:#d5a84f40;padding:18px 8px 16px;position:relative;z-index:4}.app-rail header:after{background:linear-gradient(90deg,transparent,var(--sakura),var(--gold),var(--matcha),transparent);bottom:-1px;content:"";height:2px;left:18px;position:absolute;right:18px}.brand-zh{font-size:13px;margin-top:8px;color:var(--sakura-ink);font-weight:760;letter-spacing:1px}.rail-ornaments,.workspace-motifs,.section-kazari{pointer-events:none;user-select:none}.rail-ornaments{display:grid;gap:8px;grid-template-columns:repeat(4,1fr);margin:0 4px 12px;position:relative;z-index:1}.rail-glyph{backdrop-filter:blur(14px);background:linear-gradient(135deg,#ffffff24,#ffffff0f),linear-gradient(90deg,#e7c0782e,#81b06b24);border:1px solid rgba(255,255,255,.16);border-bottom:0;border-radius:14px 14px 0 0;bottom:48px;box-shadow:inset 0 1px #ffffff2e,0 18px 34px #0003;color:#fffdf7db;font-size:17px;font-weight:900;left:26px;letter-spacing:4px;margin:0;padding:8px 8px 7px;position:absolute;right:26px;text-align:center;z-index:4}.rail-caption{backdrop-filter:blur(14px);background:linear-gradient(135deg,#ffffff1a,#ffffff0a),linear-gradient(90deg,#81b06b24,#e7c0781f);border:1px solid rgba(255,255,255,.16);border-radius:0 0 14px 14px;bottom:22px;color:#fffdf7ad;font-size:12px;font-weight:800;left:26px;letter-spacing:.6px;line-height:1.5;margin:0;padding:5px 8px 7px;position:absolute;right:26px;text-align:center;z-index:4}.tab[data-tab=scene]:before{content:"\666f";background:#d5a84f2e;color:#8b6123;border-color:#d5a84f52}.tab[data-tab=jita]:before{content:"\5bfe";background:#81b06b2e;color:var(--matcha-dark);border-color:#81b06b52}.tab[data-tab=particle]:before{content:"\52a9";background:#314e7b1f;color:var(--indigo);border-color:#314e7b3d}.tab[data-tab=review]:before{content:"\5fa9";background:#f28c5b29;color:#a6532f;border-color:#f28c5b4d}.tab[data-tab=book]:before{content:"\672c";background:#c28b5c2e;color:#8a5633;border-color:#c28b5c52}.tab.active:before{background:#ffffff3d;border-color:#ffffff6b;color:#fff}.workspace-motifs{inset:0;position:absolute;z-index:0}.app-workspace>*:not(.workspace-motifs){position:relative;z-index:1}.profile-current,.btn-add-profile,.btn-upgrade,.plan-badge{background:#ffffffeb;border-color:#dac9b8eb;border-radius:var(--radius);color:var(--ink);font-weight:760;min-height:38px}.btn-add-profile:hover,.btn-upgrade:hover,.profile-current:hover{border-color:#81b06b9e;color:var(--matcha-dark)}section{display:none;min-width:0;overflow:visible;position:relative}section.active{display:block;animation:none}.section-kazari{inset:-6px 0 auto;min-height:76px;overflow:hidden;position:absolute;z-index:0}section>*:not(.section-kazari){position:relative;z-index:1}#godan .section-row{background:linear-gradient(90deg,#fffdf8f5,#fff2f3c7),radial-gradient(circle at 18px 18px,rgba(223,102,121,.2) 0 3px,transparent 4px)}.btn-add,.btn-primary,.btn-secondary,.btn-ai,.btn-next,.agent-send,.modal-actions button{border-radius:var(--radius);font-weight:850}.btn-add,.btn-primary,.btn-next{border-radius:8px;font-weight:700;background:linear-gradient(135deg,var(--indigo),#426aa2);box-shadow:0 10px 22px #314e7b38}.btn-secondary{border:1px solid var(--paper-warm);border-radius:999px;font-size:14px;cursor:pointer;font-family:inherit;min-height:38px;padding:9px 13px;background:#fffffff0;border-color:#dac9b8f0;color:var(--indigo)}.verb-picker{display:flex;flex-wrap:nowrap;gap:9px;margin:0;overflow-x:auto;scrollbar-width:thin;background:linear-gradient(180deg,#ffffffeb,#fffdf8e0);border:1px solid rgba(234,223,211,.88);border-radius:var(--radius);box-shadow:var(--shadow-tiny);padding:10px}.verb-chip.active{background:linear-gradient(135deg,var(--matcha),var(--matcha-dark));border-color:#ffffff85;box-shadow:0 9px 18px #4f7c483d;color:#fff}.example-toolbar{align-items:center;display:flex;gap:10px;justify-content:space-between;margin-bottom:10px;border-bottom-color:#eadfd3eb}.example-label{font-size:12px;letter-spacing:1px;color:var(--sakura-ink);font-weight:900}.scene-toolbar{align-items:center;display:grid;gap:8px;grid-template-columns:minmax(220px,1fr) 88px auto auto auto;margin:14px 0;background:linear-gradient(180deg,#fffffff0,#fff8f1db);border:1px solid rgba(218,201,184,.92);border-radius:var(--radius);box-shadow:var(--shadow-tiny);padding:10px}.scene-primary-row,.scene-more,.scene-more-controls{display:contents}.scene-more>summary{display:none}#sceneTopic{grid-column:1}#sceneCount{grid-column:2}#btnSceneHistory{grid-column:3}#btnResetScenes{grid-column:4}#btnGenerateScenes{grid-column:5}.scene-card{border-radius:14px;padding:28px 22px;margin-bottom:20px;background:#fffdf8e6;border:1px solid rgba(255,255,255,.86);box-shadow:var(--shadow-soft);overflow:hidden;position:relative}.scene-card:after,.srs-card:after{background:radial-gradient(ellipse at 50% 100%,transparent 0 12px,rgba(49,78,123,.12) 13px 14px,transparent 15px) 0 0 / 34px 20px;content:"";height:62px;opacity:.65;position:absolute;right:14px;top:10px;width:106px}.option{cursor:pointer;transition:all .15s;font-family:inherit;text-align:left;position:relative;align-items:center;border:1px solid var(--line);box-shadow:0 5px 14px #193a5a0a;font-size:16px;min-height:58px;padding:13px 15px;background:linear-gradient(180deg,#fffffffa,#fff8f1eb);border-color:#dac9b8f2;border-radius:var(--radius);color:var(--ink);font-weight:760}.option:hover:not(:disabled){transform:translate(4px);border-color:#df667994;box-shadow:var(--shadow-tiny)}.option.correct{background:linear-gradient(135deg,#f1f7edfa,#fffffff0);border-color:#81b06bb3}.option.wrong{background:linear-gradient(135deg,#fff2f3fa,#ffffffeb);border-color:#df66799e}.feedback{margin-top:18px;padding:16px 18px;display:none;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius)}.feedback.correct{background:#f1f7edf5;border-color:#81b06b57}.feedback.wrong{background:#fff2f3f5;border-color:#df667957}.vocab-tabs{display:grid;grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:8px;margin:14px 0;background:#fffdf8d1;border:1px solid rgba(218,201,184,.9);border-radius:var(--radius);box-shadow:var(--shadow-tiny);padding:8px}.vocab-tab{border:1px solid var(--paper-warm);cursor:pointer;font-family:inherit;font-size:14px;padding:9px 12px;background:#fff;border-color:var(--line);color:var(--ink-soft);border-radius:var(--radius);font-weight:820}.vocab-tab.active{font-weight:600;border-color:var(--indigo);background:linear-gradient(135deg,var(--matcha),var(--matcha-dark));color:#fff}.book-card{cursor:pointer;transition:all .15s;background:#fff;border:1px solid rgba(255,255,255,.82);border-left:5px solid rgba(25,58,90,.14);border-radius:var(--radius);box-shadow:var(--shadow-card);min-height:142px;padding:18px;overflow:hidden;position:relative}.modal{max-width:520px;width:100%;max-height:92vh;overflow-y:auto;background:linear-gradient(180deg,#fffffffa,#fffdf8f5);border:1px solid rgba(234,223,211,.95);border-radius:var(--radius);box-shadow:0 30px 80px #54403238}.modal-head{display:flex;justify-content:space-between;align-items:center;padding:16px 22px;border-bottom:1px solid var(--paper-warm);background:linear-gradient(90deg,#fff2f3f0,#f1f7eddb);border-bottom-color:#eadfd3eb}.modal-title{font-size:16px;color:var(--indigo);font-weight:900}.modal-close{background:none;border:none;font-size:24px;cursor:pointer;color:var(--ink-faint);line-height:1;min-height:34px;min-width:34px;border-radius:var(--radius)}.motif{display:inline-block;height:34px;opacity:.95;position:relative;width:34px}.motif-sakura{align-items:center;background:radial-gradient(circle at 50% 18%,rgba(247,170,182,.72) 0 7px,transparent 8px),radial-gradient(circle at 72% 46%,rgba(247,170,182,.68) 0 7px,transparent 8px),radial-gradient(circle at 30% 46%,rgba(247,170,182,.68) 0 7px,transparent 8px),radial-gradient(circle at 62% 72%,rgba(247,170,182,.62) 0 7px,transparent 8px),radial-gradient(circle at 38% 72%,rgba(247,170,182,.62) 0 7px,transparent 8px);border-radius:50%;color:var(--sakura-ink);display:inline-flex;font-size:11px;font-weight:900;justify-content:center}.motif-fuji:before{border-left:17px solid transparent;border-right:17px solid transparent;border-bottom:25px solid var(--indigo);bottom:3px;content:"";left:0;position:absolute}.motif-fuji:after{border-left:7px solid transparent;border-right:7px solid transparent;border-bottom:10px solid white;content:"";left:10px;position:absolute;top:8px}.motif-daruma{background:var(--sakura-deep);border:2px solid rgba(157,49,72,.32);border-radius:50% 50% 46% 46%}.motif-daruma:before{background:#fff;border-radius:50%;box-shadow:14px 0 #fff;content:"";height:8px;left:7px;position:absolute;top:11px;width:8px}.motif-daruma:after{background:var(--ink);border-radius:50%;box-shadow:14px 0 var(--ink);content:"";height:3px;left:10px;position:absolute;top:14px;width:3px}.motif-wave{background:radial-gradient(ellipse at 50% 100%,transparent 0 10px,var(--indigo) 11px 12px,transparent 13px) 0 0 / 24px 15px,radial-gradient(ellipse at 50% 0%,transparent 0 10px,rgba(49,78,123,.42) 11px 12px,transparent 13px) 12px 8px / 24px 15px;border-radius:var(--radius)}.motif-fan{background:conic-gradient(from 215deg at 50% 95%,var(--sakura) 0 18deg,#fff 18deg 30deg,var(--gold) 30deg 46deg,#fff 46deg 60deg,var(--matcha) 60deg 78deg,transparent 78deg);border-bottom:3px solid var(--wood);border-radius:100% 100% 4px 4px;right:26px;top:26px;position:absolute}.motif-torii{background:linear-gradient(var(--sakura-deep),var(--sakura-deep)) 4px 8px / 26px 5px no-repeat,linear-gradient(var(--sakura-deep),var(--sakura-deep)) 8px 14px / 18px 4px no-repeat,linear-gradient(var(--sakura-deep),var(--sakura-deep)) 9px 13px / 4px 22px no-repeat,linear-gradient(var(--sakura-deep),var(--sakura-deep)) 21px 13px / 4px 22px no-repeat;right:74px;top:86px;position:absolute}.motif-ema{align-items:center;background:linear-gradient(180deg,#f1c98f,var(--wood));border:1px solid rgba(138,86,51,.34);border-radius:7px;color:#7c482b;display:inline-flex;font-size:13px;font-weight:900;justify-content:center;right:20px;top:178px;transform:rotate(5deg);position:absolute}.motif-ema:before{border-left:17px solid transparent;border-right:17px solid transparent;border-bottom:9px solid #f1c98f;content:"";left:-1px;position:absolute;top:-8px}.motif-crane{align-items:center;background:linear-gradient(135deg,transparent 0 39%,rgba(49,78,123,.22) 40% 58%,transparent 59%),linear-gradient(45deg,transparent 0 39%,rgba(49,78,123,.22) 40% 58%,transparent 59%);color:#314e7b52;display:inline-flex;font-size:12px;font-weight:900;justify-content:center;right:94px;top:246px;position:absolute}.kana-spark{align-items:center;background:#ffffffd6;border:1px solid rgba(218,201,184,.85);border-radius:50%;color:#9d314861;display:inline-flex;font-size:18px;font-weight:900;height:34px;justify-content:center;position:absolute;width:34px}.kana-spark-a{right:160px;top:42px}.kana-spark-i{right:36px;top:330px}.kana-spark-u{right:126px;bottom:70px}.petal{background:#f7aab68a;border-radius:80% 10%;display:block;height:16px;position:absolute;transform:rotate(18deg);width:10px}.petal-one{right:56px;top:12px}.petal-two{right:92px;top:42px;transform:rotate(-24deg)}.mini-pattern{border-radius:var(--radius);height:42px;opacity:.7;position:absolute;width:68px}.mini-seigaiha{background:radial-gradient(ellipse at 50% 100%,transparent 0 13px,rgba(49,78,123,.18) 14px 15px,transparent 16px) 0 0 / 30px 18px,radial-gradient(ellipse at 50% 0%,transparent 0 13px,rgba(49,78,123,.12) 14px 15px,transparent 16px) 15px 9px / 30px 18px;right:142px;top:18px}.mini-asanoha{background:linear-gradient(30deg,transparent 47%,rgba(129,176,107,.22) 48% 52%,transparent 53%),linear-gradient(90deg,transparent 47%,rgba(129,176,107,.2) 48% 52%,transparent 53%),linear-gradient(150deg,transparent 47%,rgba(129,176,107,.22) 48% 52%,transparent 53%);right:222px;top:8px}@media(max-width:860px){.app-rail:before{inset:8px}.app-rail header:after{display:none}.key-status{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px;position:static}.key-status .badge{border:1px solid rgba(223,102,121,.12);margin-left:0;padding:3px 7px}.rail-ornaments{grid-template-columns:repeat(4,30px);justify-content:start;margin:-2px 0 8px}.rail-ornaments .motif{height:28px;width:28px}.tabs{display:flex;gap:6px;overflow-x:auto;background:linear-gradient(180deg,#fffdf8f5,#fff2f3eb);border:1px solid rgba(234,223,211,.95);border-radius:var(--radius);bottom:10px;box-shadow:0 18px 38px #54403233;left:10px;margin:0 -12px;padding:7px;position:fixed;right:10px;scroll-snap-type:x mandatory;z-index:60}.tabs::-webkit-scrollbar,.track::-webkit-scrollbar,.verb-picker::-webkit-scrollbar,.vocab-tabs::-webkit-scrollbar{display:none}.tab:before{flex-basis:22px;height:22px;width:22px}.workspace-motifs .motif-fan{right:18px;top:78px}.workspace-motifs .motif-torii,.workspace-motifs .motif-ema,.workspace-motifs .motif-crane,.kana-spark{display:none}.profile-current{min-height:40px}.profile-action-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.section-row,.section-title{font-size:14px;line-height:1.45;min-height:0;padding:10px 11px}.verb-reading-row{gap:8px}.form-card:after,.scene-card:after,.srs-card:after{opacity:.34;right:8px;top:8px}.form-name{font-size:20px}.example-toolbar{align-items:stretch;flex-direction:column}.example-toolbar .btn-ai{width:100%}.scene-toolbar{grid-template-columns:1fr;gap:8px;padding:9px}.scene-toolbar input,.scene-toolbar select,.scene-toolbar button{min-height:40px}.option{padding:13px 14px}.option-main{gap:8px}.vocab-tabs{display:flex;gap:7px;overflow-x:auto;padding:7px;scroll-snap-type:x mandatory}.vocab-tab{flex:0 0 auto;min-height:38px;scroll-snap-align:start}.modal-backdrop{align-items:flex-start;padding:12px}.modal{max-height:calc(100dvh - 24px)}}@media(max-width:540px){.app-rail{padding-left:10px;padding-right:10px}.rail-ornaments{gap:6px}.tabs{justify-content:stretch;gap:7px;margin-left:-10px;margin-right:-10px;padding:4px 10px}.profile-current-name{max-width:100%}.btn-add-profile,.btn-upgrade{font-size:11px}.section-kazari{display:none}.verb-meaning{font-size:14px}.track{gap:5px;padding:5px;grid-auto-columns:minmax(88px,1fr)}.seg-use{font-size:11px}.login-card{padding:26px 18px}}.theme-dot{border-radius:50%;display:inline-block;height:13px;width:13px}.theme-dot-sakura{background:radial-gradient(circle at 50% 16%,#f7aab6 0 4px,transparent 5px),radial-gradient(circle at 72% 48%,#f7aab6 0 4px,transparent 5px),radial-gradient(circle at 30% 50%,#f7aab6 0 4px,transparent 5px),#fff2f3}.theme-dot-indigo{background:radial-gradient(ellipse at 50% 100%,transparent 0 5px,#2e5f7f 6px 7px,transparent 8px),linear-gradient(135deg,#253a57,#6f9463)}.tab:before{align-items:center;background:#f7aab62e;border:1px solid rgba(223,102,121,.24);border-radius:7px;color:var(--sakura-ink);content:"\4e94";flex:0 0 24px;font-size:12px;height:24px;justify-content:center;display:none}.tab-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tab-icon-fuji:before{border-left:14px solid transparent;border-right:14px solid transparent;border-bottom:21px solid var(--indigo);bottom:4px;content:"";left:1px;position:absolute}.tab-icon-fuji:after{border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:8px solid #fff;content:"";left:9px;position:absolute;top:9px}.tab-icon-daruma:before{background:#fff;border-radius:50%;box-shadow:12px 0 #fff;content:"";height:7px;left:6px;position:absolute;top:10px;width:7px}.tab-icon-daruma:after{background:var(--ink);border-radius:50%;box-shadow:12px 0 var(--ink);content:"";height:3px;left:8px;position:absolute;top:12px;width:3px}.tab-icon-book:after{background:#ffffffd1;content:"";height:2px;left:6px;position:absolute;right:6px;top:9px;box-shadow:0 6px #ffffffd1}.rail-scene{bottom:10px;height:190px;left:8px;overflow:hidden;position:absolute;right:8px}.rail-scene-wave{background:radial-gradient(ellipse at 50% 100%,transparent 0 15px,rgba(49,78,123,.28) 16px 18px,transparent 19px) 0 0 / 38px 24px,radial-gradient(ellipse at 50% 0%,transparent 0 15px,rgba(49,78,123,.18) 16px 18px,transparent 19px) 19px 12px / 38px 24px;bottom:-10px;height:78px;left:-12px;position:absolute;right:-12px}.rail-scene-fuji{border-left:66px solid transparent;border-right:66px solid transparent;border-bottom:98px solid rgba(49,78,123,.68);bottom:38px;left:28px;position:absolute}.rail-scene-fuji:after{border-left:28px solid transparent;border-right:28px solid transparent;border-bottom:34px solid rgba(255,255,255,.94);content:"";left:-28px;position:absolute;top:21px}.rail-scene-torii{background:linear-gradient(var(--koi),var(--koi)) 2px 10px / 64px 8px no-repeat,linear-gradient(var(--koi),var(--koi)) 10px 24px / 46px 7px no-repeat,linear-gradient(var(--koi),var(--koi)) 13px 24px / 8px 74px no-repeat,linear-gradient(var(--koi),var(--koi)) 47px 24px / 8px 74px no-repeat;bottom:18px;height:106px;position:absolute;right:18px;width:70px}.rail-scene-tree{background:radial-gradient(circle at 38% 30%,rgba(247,170,182,.48) 0 14px,transparent 15px),radial-gradient(circle at 62% 44%,rgba(247,170,182,.44) 0 13px,transparent 14px),linear-gradient(90deg,transparent 45%,rgba(194,139,92,.72) 46% 54%,transparent 55%);bottom:18px;height:98px;left:6px;position:absolute;width:82px}.verb-illustration{bottom:0;height:152px;opacity:.95;pointer-events:none;position:absolute;right:0;width:250px;z-index:0}.verb-stage>*:not(.verb-illustration){position:relative;z-index:1}.verb-art-wave{background:radial-gradient(ellipse at 50% 100%,transparent 0 14px,rgba(49,78,123,.28) 15px 17px,transparent 18px) 0 0 / 36px 23px,radial-gradient(ellipse at 50% 0%,transparent 0 14px,rgba(49,78,123,.16) 15px 17px,transparent 18px) 18px 11px / 36px 23px;bottom:-12px;height:78px;left:0;position:absolute;right:0}.verb-art-fuji{border-left:58px solid transparent;border-right:58px solid transparent;border-bottom:86px solid rgba(49,78,123,.64);bottom:34px;left:54px;position:absolute}.verb-art-fuji:after{border-left:24px solid transparent;border-right:24px solid transparent;border-bottom:31px solid rgba(255,255,255,.94);content:"";left:-24px;position:absolute;top:18px}.verb-art-sun{background:#d5a84f9e;border-radius:50%;height:34px;position:absolute;right:34px;top:28px;width:34px}.verb-art-torii{background:linear-gradient(var(--koi),var(--koi)) 1px 7px / 47px 6px no-repeat,linear-gradient(var(--koi),var(--koi)) 8px 18px / 34px 5px no-repeat,linear-gradient(var(--koi),var(--koi)) 10px 18px / 6px 54px no-repeat,linear-gradient(var(--koi),var(--koi)) 34px 18px / 6px 54px no-repeat;bottom:14px;height:78px;position:absolute;right:18px;width:52px}.verb-art-cloud{border:2px solid rgba(213,168,79,.34);border-left:0;border-right:0;border-radius:50%;height:20px;position:absolute;width:56px}.verb-art-cloud-one{left:8px;top:18px}.verb-art-cloud-two{right:82px;top:10px;transform:scale(.72)}.seg.active .seg-form{color:#fff}.seg-meta{display:contents}@media(min-width:861px){.tip{padding-left:92px}}html[data-theme=indigo] body{background:radial-gradient(circle at 9% 10%,rgba(36,61,92,.12) 0 8px,transparent 9px),radial-gradient(circle at 92% 12%,rgba(120,155,88,.16) 0 10px,transparent 11px),radial-gradient(circle at 16% 88%,rgba(189,150,80,.14) 0 8px,transparent 9px),linear-gradient(135deg,rgba(237,244,247,.84),transparent 34%),linear-gradient(180deg,#fffdf6,#f3eadb)}html[data-theme=indigo] body:before{opacity:.64;background:radial-gradient(ellipse at 50% 100%,transparent 0 15px,rgba(36,61,92,.22) 16px 17px,transparent 18px) 0 0 / 42px 24px,radial-gradient(ellipse at 50% 0%,transparent 0 15px,rgba(120,155,88,.14) 16px 17px,transparent 18px) 21px 12px / 42px 24px}html[data-theme=indigo] .app-shell{background:linear-gradient(180deg,#fffdf6f2,#f6efe5e6),radial-gradient(circle at 84% 8%,rgba(36,61,92,.12),transparent 26%)}html[data-theme=indigo] .app-rail{background:linear-gradient(180deg,#fffdf6fa,#edf4f7eb,#eef5e9f0),repeating-linear-gradient(45deg,rgba(36,61,92,.04) 0 1px,transparent 1px 14px)}html[data-theme=indigo] .app-workspace{background:linear-gradient(180deg,#ffffff94,#fffdf6c7),radial-gradient(circle at 86% 12%,rgba(120,155,88,.13),transparent 24%)}html[data-theme=indigo] .profile-bar,html[data-theme=indigo] .section-row,html[data-theme=indigo] .section-title,html[data-theme=indigo] .scene-toolbar{background:linear-gradient(135deg,#fffdf6f5,#edf4f7c7),repeating-linear-gradient(90deg,rgba(36,61,92,.045) 0 1px,transparent 1px 17px)}html[data-theme=indigo] .tab.active,html[data-theme=indigo] .btn-ai{background:linear-gradient(135deg,var(--indigo),#2f6685);box-shadow:0 12px 24px #243d5c38}html[data-theme=indigo] .btn-add,html[data-theme=indigo] .btn-primary,html[data-theme=indigo] .btn-next{background:linear-gradient(135deg,var(--indigo),#2f6685)}html[data-theme=indigo] .verb-chip.active,html[data-theme=indigo] .vocab-tab.active{background:linear-gradient(135deg,var(--matcha),var(--matcha-dark))}html[data-theme=indigo] .seg.active{background:linear-gradient(135deg,var(--indigo),#2f6685);box-shadow:0 12px 22px #243d5c3d}html[data-theme=indigo] .verb-display .changing{color:#8f3f34}html[data-theme=indigo] .petal{background:#243d5c2e}html[data-theme=indigo] .motif-sakura{background:radial-gradient(circle at 50% 18%,rgba(120,155,88,.36) 0 7px,transparent 8px),radial-gradient(circle at 72% 46%,rgba(120,155,88,.28) 0 7px,transparent 8px),radial-gradient(circle at 30% 46%,rgba(120,155,88,.28) 0 7px,transparent 8px),radial-gradient(circle at 62% 72%,rgba(120,155,88,.24) 0 7px,transparent 8px),radial-gradient(circle at 38% 72%,rgba(120,155,88,.24) 0 7px,transparent 8px);color:var(--matcha-dark)}html[data-theme=indigo] .verb-stage:before{background:linear-gradient(90deg,var(--indigo),#2f6685),repeating-linear-gradient(90deg,rgba(255,255,255,.22) 0 5px,transparent 5px 10px)}html[data-theme=indigo] .key-status .badge{background:#243d5c14;border-color:#243d5c1f;color:#243d5c9e}html[data-theme=indigo] .key-status .badge.on{background:#789b5824;color:var(--matcha-dark)}html[data-theme=indigo] .key-status .badge.off{background:#243d5c14;color:#243d5c6b}@media(max-width:860px){html[data-theme=indigo] body{background:radial-gradient(circle at 12% 8%,rgba(36,61,92,.12) 0 8px,transparent 9px),radial-gradient(circle at 84% 10%,rgba(120,155,88,.14) 0 10px,transparent 11px),linear-gradient(180deg,#f7f5ef,#fffdf6 34%,#f3eadb)}html[data-theme=indigo] .app-rail{background:linear-gradient(135deg,#fffdf6fa,#edf4f7f0 72%,#eef5e9f0),radial-gradient(circle at 82% 16%,rgba(36,61,92,.12),transparent 28%)}html[data-theme=indigo] .tabs{background:linear-gradient(180deg,#fffdf6f7,#edf4f7f0)}.rail-scene{display:none}.seg:after{content:none}.seg.active:after{background:repeating-linear-gradient(180deg,rgba(255,255,255,.6) 0 4px,transparent 4px 8px)}.seg-row{margin:0 0 2px}.seg .seg-use{margin:0}.seg::marker{display:none}.seg.active{color:#fff}.seg:not(.active) .seg-form{color:var(--ink)}.seg:not(.active):after{z-index:0}.seg>*{position:relative;z-index:1}.verb-illustration{height:118px;opacity:.86;width:188px}.verb-art-fuji{border-left-width:44px;border-right-width:44px;border-bottom-width:64px;bottom:28px;left:42px}.verb-art-torii{transform:scale(.76);transform-origin:bottom right}.verb-art-sun{height:28px;right:28px;width:28px}}@media(max-width:540px){.theme-choice span:not(.theme-dot){display:none}.theme-choice:after{content:attr(data-short);font-size:11px;font-weight:900}.tab{flex:1;font-size:15px;min-height:40px;flex-direction:column;gap:3px;min-width:72px;padding:5px 8px}.tab-icon{flex-basis:24px;height:24px;width:24px}.tab-label{font-size:11px}}.agent-bubble{align-items:center;background:linear-gradient(135deg,color-mix(in srgb,var(--paper) 92%,white),color-mix(in srgb,var(--paper-warm) 78%,white)),radial-gradient(circle at 18% 16%,color-mix(in srgb,var(--gold) 20%,transparent),transparent 28%);border:1px solid var(--line);border-radius:18px;box-shadow:0 18px 42px color-mix(in srgb,var(--ink) 22%,transparent);color:var(--ink);cursor:grab;display:inline-flex;gap:10px;height:66px;isolation:isolate;line-height:1;min-width:248px;overflow:visible;padding:8px 14px 8px 9px;position:fixed;touch-action:none;transition:opacity var(--speed),transform var(--speed),box-shadow var(--speed),border-color var(--speed);user-select:none;-webkit-user-select:none;z-index:900}.agent-bubble:before{background:linear-gradient(180deg,rgba(255,255,255,.72),transparent);border-radius:inherit;content:"";inset:1px;pointer-events:none;position:absolute;z-index:-1}.agent-bubble:hover,.agent-bubble:focus-visible{border-color:var(--line-strong);box-shadow:0 22px 52px color-mix(in srgb,var(--ink) 28%,transparent);outline:none;transform:translateY(-3px)}.agent-bubble.hidden{opacity:0;pointer-events:none;transform:translateY(10px) scale(.92)}.agent-launch-avatar{align-items:center;background:color-mix(in srgb,var(--paper) 86%,white);border:1px solid color-mix(in srgb,var(--gold) 46%,var(--line));border-radius:14px;box-shadow:inset 0 1px #ffffffb8,0 8px 18px color-mix(in srgb,var(--ink) 16%,transparent);display:inline-flex;flex:0 0 50px;height:50px;justify-content:center;overflow:hidden;width:50px}.agent-launch-avatar img,.agent-head-avatar img{display:block;height:100%;object-fit:contain;width:100%}.agent-launch-copy{display:grid;gap:3px;min-width:0;text-align:left}.agent-launch-kicker{color:var(--ink-faint);font-size:11px;font-weight:850;letter-spacing:0}.agent-launch-title{color:var(--ink);font-size:14px;font-weight:900;letter-spacing:0;white-space:nowrap}.agent-launch-hint{color:var(--ink-faint);display:block;font-size:10px;line-height:1.2;max-width:170px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.agent-action:has(.agent-practice-go){background:color-mix(in srgb,var(--matcha) 10%,var(--paper));border-color:color-mix(in srgb,var(--matcha) 45%,var(--line))}.agent-practice-go{background:var(--matcha);border-color:var(--matcha);color:#fff;font-weight:700}.reverse-handoff-card{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:14px;padding:13px 14px;border:1px solid color-mix(in srgb,var(--matcha) 34%,var(--line));border-radius:14px;background:color-mix(in srgb,var(--matcha) 8%,var(--paper));color:var(--ink-soft);font-size:13px;line-height:1.55}.reverse-handoff-btn{flex:0 0 auto;border:0;border-radius:999px;padding:9px 13px;background:var(--matcha);color:#fff;font:inherit;font-weight:700;cursor:pointer}.reverse-handoff-btn:hover{filter:brightness(1.06)}@media(max-width:640px){.reverse-handoff-card{align-items:stretch;flex-direction:column}.reverse-handoff-btn{width:100%}}.agent-launch-pulse{background:var(--matcha);border:2px solid color-mix(in srgb,var(--paper) 92%,white);border-radius:999px;box-shadow:0 0 0 4px color-mix(in srgb,var(--matcha) 18%,transparent);height:12px;position:absolute;right:10px;top:10px;width:12px}.motion-ready .agent-launch-pulse{animation:agentPulse 2.6s ease-in-out infinite}@keyframes agentPulse{0%,to{box-shadow:0 0 0 4px color-mix(in srgb,var(--matcha) 18%,transparent)}50%{box-shadow:0 0 0 8px color-mix(in srgb,var(--matcha) 4%,transparent)}}.agent-bubble-offline .agent-launch-pulse{animation:none;background:#b4ada1;box-shadow:none}#coursewareImage{background:#fff;border:1px solid var(--line);border-radius:10px;color:var(--ink-soft);font-size:13px;max-width:100%;padding:7px 10px 7px 7px}#coursewareImage::file-selector-button{background:var(--matcha, #81b06b);border:0;border-radius:8px;color:#fff;cursor:pointer;font-size:13px;font-weight:600;margin-right:10px;padding:8px 14px;transition:background .16s ease}#coursewareImage::file-selector-button:hover{background:var(--matcha-dark, #6b9456)}.agent-panel.show{opacity:1;pointer-events:auto;transform:translateY(0) scale(1)}.agent-head-copy{min-width:0}.agent-title{color:#fff;font-size:16px;font-weight:900;letter-spacing:0;line-height:1.15}.agent-subtitle{color:#ffffffbd;font-size:12px;font-weight:650;line-height:1.35;margin-top:5px}.agent-close{line-height:1;cursor:pointer;align-items:center;background:#ffffff1f;border:1px solid rgba(255,255,255,.22);border-radius:10px;color:#fff;display:inline-flex;font-size:22px;height:34px;justify-content:center;opacity:.86;padding:0;width:34px}.agent-close:hover,.agent-close:focus-visible{background:#fff3;opacity:1;outline:none}.agent-head-actions{align-items:center;display:flex;gap:6px;justify-content:flex-end}.agent-head-btn{align-items:center;background:#ffffff1f;border:1px solid rgba(255,255,255,.22);border-radius:10px;color:#fff;cursor:pointer;display:inline-flex;font-family:inherit;font-size:18px;font-weight:900;height:34px;justify-content:center;line-height:1;padding:0;width:34px}.agent-head-btn:hover,.agent-head-btn:focus-visible,.agent-head-btn[aria-expanded=true]{background:#fff3;outline:none}.agent-session-panel{background:color-mix(in srgb,var(--paper) 91%,white);border-bottom:1px solid var(--line);display:none;padding:10px 12px}.agent-session-panel.show{display:block}.agent-session-toolbar{align-items:center;display:flex;gap:10px;justify-content:space-between;margin-bottom:8px}.agent-session-toolbar strong{color:var(--ink);font-size:13px;font-weight:900}.agent-session-refresh{background:transparent;border:1px solid var(--line);border-radius:8px;color:var(--ink-soft);cursor:pointer;font-family:inherit;font-size:12px;font-weight:780;min-height:28px;padding:4px 9px}.agent-session-refresh:hover,.agent-session-refresh:focus-visible{border-color:var(--line-strong);color:var(--indigo);outline:none}.agent-session-list{display:grid;gap:7px;max-height:190px;overflow-y:auto;padding-right:2px}.agent-session-empty{border:1px dashed var(--line);border-radius:8px;color:var(--ink-faint);font-size:12px;padding:12px}.agent-session-item{background:color-mix(in srgb,var(--paper) 95%,white);border:1px solid var(--line);border-radius:8px;color:var(--ink);cursor:pointer;display:grid;gap:8px;grid-template-columns:minmax(0,1fr) auto;min-height:62px;padding:9px 10px;text-align:left;width:100%}.agent-session-item:hover,.agent-session-item:focus-visible,.agent-session-item.active{background:color-mix(in srgb,var(--indigo-soft) 56%,var(--paper));border-color:var(--line-strong);outline:none}.agent-session-item:disabled{cursor:default;opacity:.66}.agent-session-main{display:grid;gap:4px;min-width:0}.agent-session-title{color:var(--ink);font-size:13px;font-weight:900;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.agent-session-preview{color:var(--ink-soft);font-size:12px;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.agent-session-meta{align-items:flex-end;color:var(--ink-faint);display:flex;flex-direction:column;font-size:11px;gap:3px;justify-content:center;white-space:nowrap}.agent-session-state{color:var(--matcha-dark);font-weight:820}.agent-quick-btn:hover,.agent-quick-btn:focus-visible{background:color-mix(in srgb,var(--indigo-soft) 62%,var(--paper));border-color:var(--line-strong);outline:none;transform:translateY(-1px)}.agent-weakness{background:color-mix(in srgb,var(--paper-warm) 68%,var(--paper));border-bottom:1px solid var(--line);padding:10px 12px}.agent-wk-chip{font-size:12px;padding:3px 9px;border-radius:999px;white-space:nowrap;appearance:none;background:color-mix(in srgb,var(--matcha) 16%,var(--paper));border:1px solid color-mix(in srgb,var(--matcha) 38%,var(--line));color:var(--matcha-dark);cursor:pointer;font-family:inherit;font-weight:760}.agent-wk-chip:hover,.agent-wk-chip:focus-visible{border-color:var(--matcha);outline:none;transform:translateY(-1px)}.agent-wk-chip:disabled{cursor:wait;opacity:.62}.agent-msg-user .agent-bubble-text{background:linear-gradient(135deg,var(--indigo),color-mix(in srgb,var(--indigo) 78%,var(--matcha)));border-color:transparent;border-bottom-right-radius:5px;color:#fff}.agent-markdown>:first-child{margin-top:0}.agent-markdown>:last-child{margin-bottom:0}.agent-markdown p{margin:0 0 8px}.agent-markdown h1,.agent-markdown h2,.agent-markdown h3{color:inherit;font-size:14px;font-weight:900;letter-spacing:0;line-height:1.35;margin:0 0 7px}.agent-markdown ul{display:grid;gap:5px;list-style:disc;margin:0 0 8px;padding-left:18px}.agent-markdown li{margin:0}.agent-markdown code{background:color-mix(in srgb,var(--indigo-soft) 56%,transparent);border:1px solid color-mix(in srgb,var(--line) 72%,transparent);border-radius:5px;font-family:Noto Sans JP,Noto Sans Mono,monospace;font-size:.92em;padding:1px 5px}.agent-markdown pre{background:color-mix(in srgb,var(--ink) 7%,var(--paper));border:1px solid var(--line);border-radius:9px;margin:8px 0;overflow-x:auto;padding:9px 10px}.agent-markdown pre code{background:transparent;border:0;border-radius:0;display:block;padding:0;white-space:pre}.agent-markdown a{color:var(--indigo);font-weight:850;text-decoration:underline;text-underline-offset:2px}.agent-depth input{accent-color:var(--matcha)}.agent-input textarea:focus{outline:none;border-color:var(--indigo);box-shadow:0 0 0 3px color-mix(in srgb,var(--indigo) 12%,transparent)}.agent-send:hover{background:linear-gradient(135deg,color-mix(in srgb,var(--indigo) 88%,black),var(--indigo))}html[data-theme=yomatsuri] .agent-bubble,html[data-theme=yomatsuri] .agent-panel{background:linear-gradient(180deg,#12253af5,#1d3047f5)}html[data-theme=yomatsuri] .agent-launch-avatar,html[data-theme=yomatsuri] .agent-msg-assistant .agent-bubble-text,html[data-theme=yomatsuri] .agent-input textarea,html[data-theme=yomatsuri] .agent-quick-btn{background:#fff6e214}@media(max-width:860px){.agent-bubble{border-radius:16px;height:60px;min-width:60px;padding:6px;width:60px}.agent-launch-avatar{border-radius:14px;flex-basis:48px;height:48px;width:48px}.agent-launch-copy{display:none}.agent-launch-pulse{right:5px;top:5px}}@media(max-width:540px){.agent-panel{right:8px;left:8px;width:auto;max-width:none;bottom:78px;height:min(620px,calc(100dvh - 92px))}.agent-head{grid-template-columns:48px minmax(0,1fr) auto;min-height:74px;padding:10px 11px}.agent-head-avatar{border-radius:13px;height:48px;width:48px}.agent-subtitle{font-size:11px}.agent-head-actions{gap:4px}.agent-head-btn,.agent-close{border-radius:9px;height:32px;width:32px}.agent-session-item{grid-template-columns:1fr}.agent-session-meta{align-items:center;flex-direction:row;justify-content:flex-start}.agent-quick{padding:8px 10px}}html[data-theme=sakura]{--ink: #263047;--ink-soft: #5d6676;--ink-faint: #92908a;--paper: #fffaf6;--paper-warm: #f7eadf;--surface: rgba(255, 252, 247, .91);--line: rgba(203, 180, 158, .72);--line-strong: rgba(171, 141, 113, .86);--sakura: #ef9aa8;--sakura-deep: #be6471;--sakura-ink: #a64f5f;--matcha: #7d9f61;--matcha-dark: #4f783e;--indigo: #294767;--indigo-soft: #dce9f2;--koi: #bd6340;--gold: #c39a53;--wood: #ad7448;--theme-bg: #fff7f1;--theme-bg-soft: #f9efe5;--theme-rail-top: rgba(255, 253, 248, .98);--theme-rail-bottom: rgba(255, 238, 240, .94);--theme-art: var(--art-day);--theme-art-opacity: .82;--theme-ambient-opacity: .18;--theme-shadow: 0 20px 54px rgba(90, 65, 43, .14);--theme-shadow-card: 0 10px 26px rgba(90, 65, 43, .09)}html[data-theme=indigo]{--paper-pink: #f1ede4;--paper-green: #eef5e9;--paper-blue: #edf4f7;--shadow-soft: 0 18px 46px rgba(45, 56, 62, .13);--shadow-tiny: 0 8px 20px rgba(45, 56, 62, .08);--ink: #223047;--ink-soft: #566174;--ink-faint: #8d928d;--paper: #fffdf6;--paper-warm: #f3eadb;--surface: rgba(255, 253, 246, .91);--line: rgba(203, 188, 166, .78);--line-strong: rgba(157, 136, 111, .86);--sakura: #d8a08b;--sakura-deep: #284968;--sakura-ink: #284968;--matcha: #789b58;--matcha-dark: #486f42;--indigo: #243d5c;--indigo-soft: #d7e2eb;--koi: #b85f3d;--gold: #bd9650;--wood: #b18053;--theme-bg: #fffdf6;--theme-bg-soft: #f1eadf;--theme-rail-top: rgba(255, 253, 246, .98);--theme-rail-bottom: rgba(235, 243, 238, .94);--theme-art: var(--art-day);--theme-art-opacity: .86;--theme-ambient-opacity: .2;--theme-shadow: 0 20px 54px rgba(45, 56, 62, .14);--theme-shadow-card: 0 10px 26px rgba(45, 56, 62, .09)}html[data-theme=matcha]{--ink: #24313a;--ink-soft: #59655d;--ink-faint: #8f9384;--paper: #fbfff6;--paper-warm: #eaf2df;--surface: rgba(252, 255, 247, .91);--line: rgba(181, 198, 158, .78);--line-strong: rgba(126, 152, 94, .88);--sakura: #d6a18f;--sakura-deep: #537b45;--sakura-ink: #466f3d;--matcha: #7da45f;--matcha-dark: #456f3f;--indigo: #2d5162;--indigo-soft: #dbe9e5;--koi: #b96942;--gold: #b8944f;--wood: #9f744d;--theme-bg: #fbfff6;--theme-bg-soft: #eaf2df;--theme-rail-top: rgba(253, 255, 247, .98);--theme-rail-bottom: rgba(231, 242, 219, .94);--theme-art: var(--art-day);--theme-art-opacity: .78;--theme-ambient-opacity: .16;--theme-shadow: 0 20px 54px rgba(47, 76, 43, .13);--theme-shadow-card: 0 10px 26px rgba(47, 76, 43, .08)}body:after{background:radial-gradient(circle at 20% 18%,rgba(255,255,255,.24),transparent 24%),radial-gradient(circle at 86% 92%,color-mix(in srgb,var(--gold) 20%,transparent),transparent 26%);content:"";inset:0;pointer-events:none;position:fixed;z-index:-1}.container{margin:0 auto;max-width:none;min-height:100dvh;padding:clamp(10px,1.35vw,18px)}.app-shell{background:linear-gradient(180deg,color-mix(in srgb,var(--paper) 91%,transparent),color-mix(in srgb,var(--paper-warm) 78%,transparent)),radial-gradient(circle at 84% 8%,color-mix(in srgb,var(--gold) 10%,transparent),transparent 28%);border:1px solid var(--line);border-radius:10px;box-shadow:var(--theme-shadow);display:grid;gap:0;grid-template-columns:clamp(224px,18vw,282px) minmax(0,1fr);margin:0 auto;max-width:min(1500px,calc(100vw - 24px));min-height:calc(100dvh - clamp(20px,2.7vw,36px));overflow:hidden}.app-rail{border-radius:var(--radius);isolation:isolate;overflow:hidden;background:linear-gradient(180deg,var(--theme-rail-top) 0%,color-mix(in srgb,var(--theme-rail-top) 84%,transparent) 42%,var(--theme-rail-bottom) 100%),linear-gradient(90deg,color-mix(in srgb,var(--gold) 6%,transparent) 1px,transparent 1px);background-size:auto,28px 28px;border:0;border-right:1px solid var(--line);box-shadow:inset -1px 0 #ffffff7a;color:var(--ink);min-height:calc(100dvh - clamp(20px,2.7vw,36px));padding:20px 18px 250px;position:sticky;top:clamp(10px,1.35vw,18px)}.app-rail:before{content:"";position:absolute;border:1px solid rgba(213,168,79,.26);border-radius:var(--radius);pointer-events:none;border-color:color-mix(in srgb,var(--gold) 26%,transparent);inset:12px;z-index:3}.app-rail:after{background-image:linear-gradient(180deg,#121c1b00,#121c1b14 46%,#121c1b42),var(--rail-art);background-position:center bottom;background-repeat:no-repeat;background-size:cover;content:"";height:clamp(340px,42vh,520px);inset:auto 0 0;mask-image:linear-gradient(180deg,transparent 0%,#000 22%,#000 78%,transparent 100%);opacity:var(--rail-art-opacity);pointer-events:none;position:absolute;z-index:0;-webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 22%,#000 78%,transparent 100%)}.rail-scene,.verb-illustration,.rail-ornaments,.workspace-motifs,.section-kazari{display:none!important}.app-shell>.app-rail{grid-column:1;grid-row:1}.app-shell>.tabs{align-self:start;grid-column:1;grid-row:1;justify-self:stretch;margin:150px 22px 0;z-index:2}.app-shell>.app-workspace{grid-column:2;grid-row:1}.app-workspace{min-width:0;position:relative;background:linear-gradient(180deg,color-mix(in srgb,var(--paper) 66%,transparent),color-mix(in srgb,var(--paper) 84%,transparent)),radial-gradient(circle at 92% 10%,color-mix(in srgb,var(--matcha) 12%,transparent),transparent 23%);overflow:hidden;padding:clamp(14px,1.4vw,22px)}html[data-theme=yomatsuri] .app-workspace{background:linear-gradient(180deg,#0f1f32b8,#12253ad6),radial-gradient(circle at 86% 12%,rgba(231,192,120,.12),transparent 24%)}.brand-jp{font-weight:900;letter-spacing:2px;text-shadow:0 1px 0 rgba(255,255,255,.9);color:var(--indigo);font-size:clamp(22px,1.9vw,28px);line-height:1.12}html[data-theme=yomatsuri] .brand-jp,html[data-theme=yomatsuri] .brand-zh{color:var(--ink);text-shadow:0 2px 18px rgba(231,192,120,.18)}.tabs{justify-content:center;border-bottom:1px solid var(--paper-warm);background:transparent;border:0;border-radius:0;box-shadow:none;display:grid;margin:0;padding:0;position:relative;z-index:1;gap:9px}.tab{cursor:pointer;font-family:inherit;border-bottom:0;flex:1;align-items:center;display:flex;letter-spacing:0;text-align:left;transition:background var(--speed) ease,border-color var(--speed) ease,color var(--speed) ease;padding:0 13px;position:relative;justify-content:flex-start;backdrop-filter:blur(10px);background:color-mix(in srgb,var(--paper) 87%,transparent);border:1px solid var(--line);border-radius:8px;box-shadow:var(--theme-shadow-card);color:var(--ink);font-size:15px;font-weight:850;gap:10px;min-height:46px}.tab:hover{background:#ffffff1f;border-color:var(--line-strong);color:var(--sakura-ink)}.tab.active{border-bottom-color:var(--sakura-deep);font-weight:700;background:linear-gradient(135deg,var(--indigo),color-mix(in srgb,var(--indigo) 74%,var(--matcha)));border-color:color-mix(in srgb,var(--indigo) 48%,white);box-shadow:0 14px 28px color-mix(in srgb,var(--indigo) 26%,transparent);color:#fff}html[data-theme=yomatsuri] .tab{background:#fff6e214;color:var(--ink-soft)}html[data-theme=yomatsuri] .tab.active{background:linear-gradient(135deg,#d88758,#e7c078);color:#152233}.profile-bar{margin:0 0 18px;align-items:center;background:color-mix(in srgb,var(--paper) 80%,transparent);border:1px solid var(--line);border-radius:10px;box-shadow:var(--theme-shadow-card);display:flex;flex-wrap:wrap;gap:8px;padding:10px}.profile-picker{position:relative;flex:1 1 280px;min-width:220px}.profile-current,.btn-add-profile,.btn-upgrade,.plan-badge,.theme-switch{backdrop-filter:blur(12px);border-color:var(--line);border-radius:8px;min-height:40px}.profile-current,.btn-add-profile,.plan-badge{background:color-mix(in srgb,var(--paper) 92%,white 8%);color:var(--ink)}.btn-upgrade{border:1px solid var(--sakura);border-radius:8px;padding:5px 13px;font-size:14px;font-weight:600;cursor:pointer;flex:0 0 auto;white-space:nowrap;background:linear-gradient(135deg,var(--indigo),color-mix(in srgb,var(--indigo) 76%,var(--matcha)));border-color:transparent;color:#fff}.theme-switch{align-items:center;border:1px solid rgba(218,201,184,.92);border-radius:var(--radius);display:inline-flex;gap:4px;padding:4px;background:color-mix(in srgb,var(--paper) 80%,transparent);box-shadow:inset 0 1px #ffffff7a}.theme-choice{align-items:center;background:transparent;border:1px solid transparent;border-radius:7px;cursor:pointer;display:inline-flex;font:inherit;font-size:12px;font-weight:850;gap:5px;padding:0 9px;white-space:nowrap;color:var(--ink-soft);min-height:32px}.theme-choice.active{box-shadow:var(--shadow-tiny);background:color-mix(in srgb,var(--paper) 92%,white 8%);border-color:var(--line);color:var(--ink)}.theme-dot-matcha{background:radial-gradient(circle at 40% 42%,#f3fff0 0 3px,transparent 4px),linear-gradient(135deg,#7fa461,#2f5d48)}.theme-dot-yomatsuri{background:radial-gradient(circle at 65% 34%,#efc77d 0 4px,transparent 5px),linear-gradient(135deg,#10233a,#d88758)}#godan.active{align-items:start;display:grid;gap:clamp(14px,1.35vw,20px);grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}#godan .section-row,#godan .verb-picker{grid-column:1 / -1}#godan .verb-stage{grid-column:1;grid-row:3}#godan .track{grid-column:1;grid-row:4}#godan .form-card{grid-column:2;grid-row:3 / span 2}#godan .tip{grid-column:2;grid-row:5;margin-top:0}.section-row,.section-title{align-items:center;background:color-mix(in srgb,var(--paper) 82%,transparent);border:1px solid var(--line);border-radius:10px;box-shadow:var(--theme-shadow-card);color:var(--ink);font-size:15px;font-weight:850;min-height:52px;padding:11px 14px}.verb-picker,.track,.form-card,.scene-card,.srs-card,.book-card,.book-empty,.tip{border:1px solid var(--line);border-radius:10px;box-shadow:var(--theme-shadow-card)}.verb-picker,.track{background:color-mix(in srgb,var(--paper) 78%,transparent)}.verb-chip,.seg,.vocab-tab,.option{border-color:var(--line);border-radius:8px}.verb-chip{cursor:pointer;transition:all .15s;font-family:inherit;position:relative;border:1px solid var(--line);box-shadow:none;flex:0 0 auto;font-size:16px;padding:9px 14px;border-color:#dac9b8f0;border-radius:var(--radius);font-weight:850;background:color-mix(in srgb,var(--paper) 94%,white 6%);color:var(--ink);min-height:42px}.verb-chip.active,.vocab-tab.active{background:linear-gradient(135deg,var(--matcha),var(--matcha-dark));border-color:color-mix(in srgb,var(--matcha) 42%,white);box-shadow:0 10px 22px color-mix(in srgb,var(--matcha-dark) 22%,transparent);color:#fff}.verb-stage{text-align:center;background:linear-gradient(180deg,#fffffffa,#fff8f4f0),repeating-linear-gradient(0deg,transparent 0 32px,rgba(49,78,123,.045) 33px 34px);padding-top:60px;background-image:linear-gradient(90deg,color-mix(in srgb,var(--paper) 96%,transparent),color-mix(in srgb,var(--paper) 82%,transparent) 42%,color-mix(in srgb,var(--paper) 22%,transparent)),var(--theme-art);background-position:center,right bottom;background-repeat:no-repeat;background-size:auto,100% auto;border:1px solid var(--line);border-radius:10px;box-shadow:var(--theme-shadow);margin:0;min-height:clamp(320px,30vw,420px);overflow:hidden;padding:clamp(58px,5vw,78px) clamp(20px,3vw,34px) clamp(28px,4vw,46px);position:relative}html[data-theme=yomatsuri] .verb-stage{background-image:linear-gradient(90deg,#0f1f32f0,#0f1f32b8 42%,#0f1f3229),var(--theme-art)}.verb-stage:before{height:auto;width:auto;background:linear-gradient(90deg,var(--indigo),color-mix(in srgb,var(--indigo) 72%,var(--matcha))),linear-gradient(90deg,#ffffff2e 0 0);border-radius:0 0 8px 8px;color:#fff;content:"\4e94\6bb5\8ecc\9053";font-size:14px;font-weight:900;left:clamp(20px,2.6vw,34px);letter-spacing:2px;padding:9px 16px 10px;position:absolute;top:0}.verb-stage:after{border-radius:50%;background:none;height:auto;left:auto;opacity:1;width:auto;color:color-mix(in srgb,var(--gold) 54%,transparent);content:"\3042\a\3044\a\3046";font-size:clamp(28px,3.1vw,42px);font-weight:500;line-height:1.35;position:absolute;right:clamp(24px,3vw,42px);top:clamp(32px,4vw,54px);white-space:pre;writing-mode:vertical-rl}.verb-display{color:var(--ink);font-family:Yu Mincho,Hiragino Mincho ProN,"Noto Serif CJK JP","Noto Serif JP",serif;font-size:clamp(74px,8vw,118px);font-weight:700;letter-spacing:0;line-height:.98;margin:0 auto 8px;max-width:70%;min-height:clamp(92px,10vw,132px);text-shadow:0 10px 24px color-mix(in srgb,var(--sakura) 20%,transparent)}.verb-display .changing{transition:transform .25s ease;display:inline-block;text-shadow:0 12px 28px rgba(198,83,97,.18);color:color-mix(in srgb,var(--sakura-deep) 82%,#8b3229)}html[data-theme=yomatsuri] .verb-display .changing{color:#f0b47f}.verb-reading{font-size:16px;letter-spacing:2px;background:color-mix(in srgb,var(--paper) 82%,transparent);border:1px solid var(--line);border-radius:8px;color:var(--matcha-dark);font-weight:850;padding:4px 12px}.verb-meaning{margin-bottom:4px;color:var(--ink-soft);font-size:15px;font-weight:760}.track{margin:0;background:linear-gradient(180deg,#ffffffeb,#f1f7edcc);border:1px solid rgba(218,201,184,.92);border-radius:var(--radius);box-shadow:var(--shadow-tiny);display:grid;gap:10px;grid-template-columns:repeat(5,minmax(0,1fr));padding:12px}.seg{border:1px solid var(--paper-warm);text-align:center;cursor:pointer;transition:all .2s;font-family:inherit;border-color:#dac9b8f2;border-radius:var(--radius);box-shadow:inset 0 -1px #ffffffb3;overflow:hidden;position:relative;background:color-mix(in srgb,var(--paper) 93%,white 7%);color:var(--ink);min-height:104px;padding:14px 8px 12px}.seg:after{content:"";left:50%;position:absolute;top:0;transform:translate(-50%);width:18px;background:linear-gradient(180deg,color-mix(in srgb,var(--sakura) 24%,transparent),transparent);height:24px}.seg.active{color:#fff;background:linear-gradient(135deg,var(--indigo),color-mix(in srgb,var(--indigo) 76%,var(--sakura-deep)));border-color:color-mix(in srgb,var(--indigo) 38%,white);box-shadow:0 12px 24px color-mix(in srgb,var(--indigo) 24%,transparent)}.seg-kana,.seg-form{color:var(--ink);font-weight:900}.seg-kana{line-height:1;margin-bottom:6px;font-weight:900;color:var(--indigo);font-size:24px}.seg-form{color:var(--ink);font-weight:900;line-height:1.1;font-size:clamp(16px,1.25vw,20px)}.seg-use,.seg-row{color:var(--ink-soft);font-weight:760}.form-card,.scene-card,.srs-card,.book-card,.book-empty{border:1px solid rgba(218,201,184,.95);border-radius:var(--radius);box-shadow:var(--shadow-tiny);background:color-mix(in srgb,var(--paper) 88%,transparent);color:var(--ink)}.form-card{background:#fff;border:1px solid rgba(255,255,255,.86);border-left:5px solid var(--sakura-deep);border-radius:var(--radius);box-shadow:var(--shadow-card);overflow:hidden;position:relative;min-height:clamp(320px,30vw,420px);padding:clamp(22px,2.2vw,30px)}.form-card:before,.scene-card:before,.srs-card:before,.book-card:before{content:"";inset:0 auto 0 0;position:absolute;background:linear-gradient(180deg,var(--sakura),var(--gold));width:5px}.form-card:after{content:"";height:78px;opacity:.55;position:absolute;right:10px;top:10px;width:96px;background:radial-gradient(circle at 50% 50%,color-mix(in srgb,var(--indigo) 13%,transparent) 0 2px,transparent 3px) 0 0 / 14px 14px}.form-name{letter-spacing:0;font-weight:900;color:var(--indigo);font-size:clamp(22px,2.1vw,30px)}.form-use{margin-bottom:12px;font-size:15px;line-height:1.7;font-weight:720;color:var(--ink-soft)}.form-example{font-size:15px;padding:12px;background:color-mix(in srgb,var(--paper) 86%,white 14%);border:1px solid var(--line);border-radius:10px}.example-item{padding:10px 12px;border:1px solid rgba(247,170,182,.22);border-radius:var(--radius);background:color-mix(in srgb,var(--paper) 90%,white 10%);border-color:color-mix(in srgb,var(--sakura) 22%,transparent)}.btn-add,.btn-primary,.btn-next,.btn-restart,.btn-ai{border-radius:8px;font-weight:850}.btn-add,.btn-primary,.btn-next,.btn-restart{border:0;border-radius:var(--radius);color:#fff;font-weight:800;min-height:38px;padding:9px 14px;transition:background var(--speed) ease,box-shadow var(--speed) ease;background:linear-gradient(135deg,var(--indigo),color-mix(in srgb,var(--indigo) 72%,var(--matcha)));box-shadow:0 10px 22px color-mix(in srgb,var(--indigo) 20%,transparent)}.btn-ai{border:1px solid var(--moss-soft);border-radius:999px;font-size:12px;cursor:pointer;font-weight:700;font-family:inherit;white-space:nowrap;min-height:34px;padding:7px 12px;box-shadow:0 10px 22px #df667933;background:linear-gradient(135deg,var(--sakura-deep),var(--koi));border-color:color-mix(in srgb,var(--sakura) 42%,transparent);color:#fff}.btn-tts{padding:4px 10px;font-size:14px;cursor:pointer;transition:all .15s;border-color:var(--line);box-shadow:0 9px 18px #314e7b33;background:linear-gradient(135deg,var(--indigo),color-mix(in srgb,var(--indigo) 72%,var(--matcha)));border:0;border-radius:999px;color:#fff;min-width:36px}.scene-toolbar input,.scene-toolbar select,.field input,.field textarea,.field select{border-radius:var(--radius);background:color-mix(in srgb,var(--paper) 91%,white 9%);border-color:var(--line);color:var(--ink)}html[data-theme=yomatsuri] .profile-current,html[data-theme=yomatsuri] .btn-add-profile,html[data-theme=yomatsuri] .plan-badge,html[data-theme=yomatsuri] .theme-switch,html[data-theme=yomatsuri] .verb-chip,html[data-theme=yomatsuri] .seg,html[data-theme=yomatsuri] .form-example,html[data-theme=yomatsuri] .example-item,html[data-theme=yomatsuri] .scene-toolbar input,html[data-theme=yomatsuri] .scene-toolbar select,html[data-theme=yomatsuri] .field input,html[data-theme=yomatsuri] .field textarea,html[data-theme=yomatsuri] .field select{background:#fff6e214;color:var(--ink)}html[data-theme=yomatsuri] .form-card,html[data-theme=yomatsuri] .scene-card,html[data-theme=yomatsuri] .srs-card,html[data-theme=yomatsuri] .book-card,html[data-theme=yomatsuri] .book-empty,html[data-theme=yomatsuri] .tip,html[data-theme=yomatsuri] .verb-picker,html[data-theme=yomatsuri] .track,html[data-theme=yomatsuri] .profile-bar,html[data-theme=yomatsuri] .section-row,html[data-theme=yomatsuri] .section-title{background:#0f1f32b8}.key-status.engine-status{align-items:center;background:color-mix(in srgb,var(--paper) 86%,transparent);border:1px solid var(--line);border-radius:8px;box-shadow:inset 0 1px #ffffff6b;color:var(--ink-soft);display:inline-flex;gap:9px;letter-spacing:0;margin-top:14px;min-height:30px;padding:5px 8px;position:static;text-align:left;width:fit-content}.engine-status-title{color:var(--ink-soft);font-size:11px;font-weight:850;line-height:1;white-space:nowrap}.engine-status-dots{align-items:center;display:inline-flex;gap:6px}.engine-dot{border:1px solid var(--line);border-radius:50%;box-shadow:0 0 0 2px color-mix(in srgb,var(--paper) 72%,transparent);display:inline-block;height:9px;width:9px}.engine-dot.on{background:var(--matcha);border-color:color-mix(in srgb,var(--matcha) 80%,white)}.engine-dot.fallback{background:var(--gold);border-color:color-mix(in srgb,var(--gold) 80%,white)}.engine-dot.off{background:var(--ink-faint);border-color:color-mix(in srgb,var(--ink-faint) 70%,white)}html[data-theme=yomatsuri] .key-status.engine-status{background:#fff6e214}.tab-icon:before,.tab-icon:after{content:none!important;display:none!important}.tab.active .tab-icon{filter:drop-shadow(0 3px 4px rgba(9,24,39,.24));transform:scale(1.06)}html[data-theme=yomatsuri]{--ink: #f5ead5;--ink-soft: #d8c6a9;--ink-faint: #a89679;--paper: #12253a;--paper-warm: #1d3047;--surface: rgba(20, 37, 56, .88);--line: rgba(230, 195, 130, .26);--line-strong: rgba(230, 195, 130, .42);--sakura: #e4a183;--sakura-deep: #d88758;--sakura-ink: #f1c087;--matcha: #9dac73;--matcha-dark: #c1c98d;--indigo: #e7c078;--indigo-soft: #203d5e;--koi: #dd8051;--gold: #e7c078;--wood: #b77a4f;--theme-bg: #0e2034;--theme-bg-soft: #18304a;--theme-rail-top: rgba(16, 32, 50, .98);--theme-rail-bottom: rgba(34, 53, 74, .94);--theme-art: var(--art-night);--theme-art-opacity: .92;--theme-ambient-opacity: .42;--theme-shadow: 0 22px 60px rgba(0, 0, 0, .34);--theme-shadow-card: 0 12px 28px rgba(0, 0, 0, .24);--rail-art-opacity: .42}html[data-theme=yomatsuri] .tab-icon{filter:drop-shadow(0 3px 4px rgba(0,0,0,.42)) saturate(.92) brightness(1.04)}@media(max-width:860px){.form-card{min-height:auto}}@media(max-width:860px){.app-rail:after,.app-rail:before{display:none}.app-rail header{border:0;display:block;text-align:left;margin:0;padding:4px 2px 6px}.key-status.engine-status{margin-top:7px;min-height:28px;padding:4px 7px}.brand-zh{font-size:12px;margin-top:2px}.tab-icon{flex-basis:24px;height:24px;width:24px}.tab-label{font-size:11px}.theme-switch{flex:0 0 auto}.theme-choice{min-height:32px;min-width:42px;padding:0 8px}.theme-choice span:not(.theme-dot){display:none}.theme-choice:after{content:attr(data-short);font-size:11px;font-weight:900}.btn-add-profile,.btn-upgrade,.plan-badge{font-size:12px;min-height:36px;scroll-snap-align:start;white-space:nowrap;flex:0 0 auto;min-width:68px;padding:0 8px}#godan .section-row .btn-add{min-height:40px;width:auto;min-width:118px}.verb-picker{margin:0 -2px;scroll-snap-type:x proximity;display:flex;gap:8px;overflow-x:auto;padding:8px}.verb-chip{min-height:38px;scroll-snap-align:start;flex:0 0 auto;min-width:72px}.verb-stage:after{height:54px;width:54px;font-size:26px;right:18px;top:38px}.verb-display{font-size:clamp(62px,19vw,88px);max-width:82%;min-height:80px}.track{grid-auto-columns:minmax(94px,1fr);grid-auto-flow:column;grid-template-columns:none;overflow-x:auto;scroll-snap-type:x mandatory;margin:0;overflow:visible;display:block;padding:10px}.seg+.seg{margin-top:7px}.seg:before{background:var(--line-strong);border:3px solid var(--paper);border-radius:50%;box-shadow:0 0 0 1px var(--line-strong);content:"";height:9px;left:13px;position:absolute;top:50%;transform:translateY(-50%);width:9px}.seg:not(:last-child):after{background:repeating-linear-gradient(180deg,var(--line-strong) 0 4px,transparent 4px 8px);content:"";height:calc(100% + 8px);left:18px;position:absolute;top:50%;width:1px;z-index:0}.seg-meta{display:block;grid-column:1;padding-left:22px}.seg-kana{font-size:20px;grid-column:2;margin:0;text-align:center}.seg-form{font-size:17px;grid-column:3}.seg.active:before{background:var(--matcha);border-color:color-mix(in srgb,var(--paper) 92%,white);box-shadow:0 0 0 1px var(--matcha-dark)}.seg.active .seg-use,.seg.active .seg-row,.seg.active .seg-kana,.seg.active .seg-form{color:#fff}}@media(max-width:540px){.brand-jp{letter-spacing:5px;font-size:20px}.seg-form{font-size:16px}}.tip{margin-top:18px;font-size:14px;line-height:1.7;border:1px solid rgba(129,176,107,.3);border-radius:var(--radius);box-shadow:var(--shadow-tiny);font-weight:730;color:var(--ink);align-items:center;background:linear-gradient(135deg,color-mix(in srgb,var(--paper-green, var(--paper)) 72%,var(--paper)),color-mix(in srgb,var(--paper) 94%,white)),radial-gradient(circle at 7% 50%,color-mix(in srgb,var(--gold) 12%,transparent),transparent 28%),radial-gradient(circle at 94% 50%,color-mix(in srgb,var(--matcha) 10%,transparent),transparent 24%);border-color:color-mix(in srgb,var(--matcha) 32%,var(--line));display:block;isolation:isolate;min-height:74px;overflow:hidden;padding:17px 92px;position:relative}.tip:before,.tip:after{background-position:center;background-repeat:no-repeat;background-size:contain;content:"";height:58px;opacity:.96;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%);width:58px;z-index:0}.tip:before{background:radial-gradient(circle at 35% 35%,#fff 0 7px,transparent 8px),radial-gradient(circle at 65% 35%,#fff 0 7px,transparent 8px),radial-gradient(circle at 38% 38%,var(--ink) 0 2px,transparent 3px),radial-gradient(circle at 62% 38%,var(--ink) 0 2px,transparent 3px),var(--koi);border-radius:50% 50% 45% 45%;bottom:14px;content:"";height:54px;position:absolute;width:54px;opacity:.9;background-image:url(/static/assets/tip-left.png);left:20px}.tip:after{content:"\7d50";font-size:54px;font-weight:900;line-height:1;position:absolute;top:7px;background-image:url(/static/assets/tip-right.png);color:transparent;right:20px}.tip>span{position:relative;z-index:1}.tip-label{color:var(--matcha-dark);font-weight:900;margin-right:8px;white-space:nowrap}html[data-theme=yomatsuri] .tip{background:linear-gradient(135deg,#152a3ee6,#0f1f32bd),radial-gradient(circle at 6% 50%,rgba(231,192,120,.14),transparent 30%),radial-gradient(circle at 94% 50%,rgba(157,172,115,.12),transparent 26%)}html[data-theme=yomatsuri] .tip:before,html[data-theme=yomatsuri] .tip:after{filter:saturate(.92) brightness(.92)}@media(max-width:860px){.tip{font-size:13px;min-height:66px;padding:14px 72px}.tip:before,.tip:after{height:50px;width:50px}.tip:before{left:14px}.tip:after{right:14px}}@media(max-width:540px){.tip{line-height:1.55;min-height:62px;padding:13px 58px}.tip:before,.tip:after{height:42px;width:42px}.tip:before{left:10px}.tip:after{right:10px}}.login-overlay.show{display:grid}.login-art,.login-content{position:relative;z-index:1}.login-art img{display:block;height:100%;object-fit:cover;object-position:center bottom;user-select:none;width:100%}.login-brand-lockup{align-items:center;display:flex;gap:14px;margin-bottom:20px}.login-brand-zh{margin-bottom:24px;color:var(--ink-soft);font-size:16px;font-weight:850;letter-spacing:0;margin-top:7px}.login-blurb{color:var(--ink-soft);font-size:15px;line-height:1.8;margin:0 0 22px;max-width:560px}.login-form{display:grid;gap:13px;text-align:left}.login-form .field{margin:0}.login-form .field label{align-items:baseline;color:var(--indigo);display:flex;flex-wrap:wrap;font-size:13px;font-weight:900;gap:6px;letter-spacing:0;margin-bottom:7px}.login-form .field label .required,.login-form .field label .optional{font-size:11px;font-weight:800;margin-left:0}.login-form .field label .required{color:var(--sakura-deep)}.login-form .field label .optional{color:var(--ink-faint)}.login-form .field input{background:linear-gradient(180deg,#fffffff0,#fffdf8d6);border:1px solid rgba(25,58,90,.16);border-radius:8px;box-shadow:0 1px #fffc inset;color:var(--ink);font-size:15px;min-height:50px;padding:0 15px;transition:border-color var(--speed),box-shadow var(--speed),background var(--speed)}.login-form .field input::placeholder{color:color-mix(in srgb,var(--ink-faint) 84%,white)}.login-form .field input:focus{background:#fffefa;border-color:var(--indigo-soft);box-shadow:0 0 0 4px color-mix(in srgb,var(--indigo-soft) 16%,transparent),0 1px #ffffffdb inset;outline:none}.login-actions{display:grid;gap:12px;grid-template-columns:1fr 1fr;margin-top:5px}.btn-login-submit,.btn-login-register{border-radius:8px;font-size:15px;font-weight:900;min-height:50px;padding:0 18px}.btn-login-submit{flex:1;padding:11px 0;font-size:14px;background:linear-gradient(135deg,var(--indigo),color-mix(in srgb,var(--indigo-soft) 82%,var(--moss)));box-shadow:0 14px 28px #193a5a38}.btn-login-register{flex:1;padding:11px 0;font-size:14px;background:linear-gradient(180deg,#fffffff5,#fffaf3eb);border:1px solid rgba(25,58,90,.18);box-shadow:0 10px 22px #193a5a14;color:var(--indigo)}.btn-login-register:hover{background:color-mix(in srgb,var(--paper-green, var(--paper)) 68%,white);border-color:color-mix(in srgb,var(--moss) 46%,var(--line))}.login-forgot{margin-top:0;text-align:right}.login-forgot-link{cursor:pointer;color:var(--indigo-soft);font-size:13px;font-weight:800;text-decoration:none}.login-forgot-link:hover{color:var(--indigo);text-decoration:underline}.login-form .form-error,.login-form .form-note{margin-top:0;min-height:18px;text-align:left}.login-existing{border-top:1px solid var(--paper-warm);background:linear-gradient(180deg,#ffffffad,#f6faf68a);border:1px solid rgba(25,58,90,.11);border-radius:8px;color:var(--ink-faint);font-size:12px;line-height:1.55;margin-top:18px;padding:14px;text-align:left}.login-existing:empty{display:none}.login-existing>div:first-child{color:var(--ink-soft);font-weight:850}.login-existing .existing-list{display:flex;flex-wrap:wrap;gap:7px;justify-content:flex-start;margin-top:9px}.login-existing .existing-chip{display:inline-flex;align-items:center;font-family:inherit;background:color-mix(in srgb,var(--paper) 82%,white);border:1px solid rgba(25,58,90,.12);border-radius:8px;color:var(--ink-soft);font-size:12px;font-weight:800;min-height:28px;padding:4px 10px}.login-existing-hint{line-height:1.6;color:var(--ink-faint);margin-top:9px}html[data-theme=yomatsuri] .login-card:before{background:linear-gradient(180deg,rgba(231,192,120,.06),transparent 34%)}html[data-theme=yomatsuri] .login-art{border-right-color:#e7c0783d}html[data-theme=yomatsuri] .login-art img{filter:saturate(.82) brightness(.78)}html[data-theme=yomatsuri] .login-brand-jp,html[data-theme=yomatsuri] .login-brand-zh,html[data-theme=yomatsuri] .login-blurb,html[data-theme=yomatsuri] .login-form .field label{color:var(--ink)}html[data-theme=yomatsuri] .login-form .field input,html[data-theme=yomatsuri] .login-existing,html[data-theme=yomatsuri] .btn-login-register{background:#fff6e214;border-color:#e7c0783d;color:var(--ink)}@media(max-width:860px){.login-card:before{background:linear-gradient(180deg,rgba(255,255,255,.36),transparent 28%)}.login-art:after{background:linear-gradient(180deg,transparent 34%,rgba(255,253,248,.8)),linear-gradient(90deg,rgba(255,253,248,.12),transparent 42%)}.login-art img{object-position:center 78%}.login-brand-lockup{gap:11px;margin-bottom:13px}.login-brand-seal{font-size:22px;height:44px;width:44px}.login-brand-jp{font-size:clamp(30px,7vw,38px)}.login-brand-zh{font-size:14px;margin-top:5px}.login-blurb{font-size:14px;line-height:1.65;margin-bottom:14px}.login-form{gap:9px}.login-form .field label{font-size:12px;margin-bottom:5px}.login-form .field input{font-size:14px;height:46px;min-height:46px}.login-actions{gap:10px}.btn-login-submit,.btn-login-register{font-size:14px;min-height:46px}.login-existing{margin-top:13px;padding:12px}}@media(min-width:541px)and (max-width:860px){.login-form{column-gap:12px;grid-template-columns:repeat(2,minmax(0,1fr));row-gap:10px}.login-actions,.login-forgot,.login-form .form-error,.login-form .form-note{grid-column:1 / -1}.login-existing{margin-top:12px}}@media(max-width:540px){.login-content{padding:14px 13px}.login-brand-lockup{gap:9px;margin-bottom:9px}.login-brand-seal{font-size:20px;height:38px;width:38px}.login-brand-jp{font-size:26px}.login-brand-zh{font-size:13px}.login-blurb{font-size:13px;line-height:1.55;margin-bottom:10px}.login-form{gap:8px}.login-form .field label{font-size:11px;margin-bottom:4px}.login-form .field label .required,.login-form .field label .optional{font-size:10px}.login-form .field input{height:42px;min-height:42px;padding:0 12px}.login-actions{gap:8px;grid-template-columns:1fr 1fr}.btn-login-submit,.btn-login-register{font-size:13px;min-height:44px;padding:0 10px}.login-forgot-link{font-size:12px}.login-existing{font-size:11px;line-height:1.42;margin-top:9px;padding:9px}.login-existing .existing-list{gap:5px;margin-top:6px}.login-existing .existing-chip{font-size:11px;min-height:24px;padding:2px 8px}.login-existing-hint{margin-top:6px}}.login-overlay{position:fixed;inset:0;z-index:1000;animation:fadeIn .3s ease;background-size:auto,34px 34px;align-items:center;color:var(--ink);display:none;justify-content:center;min-height:100dvh;overflow:auto;background:linear-gradient(90deg,#0a121c8f,#0a121c38 42%,#faf7efad),linear-gradient(180deg,#ffffff1a,#0e1a2624),var(--login-season-bg) center / cover no-repeat;padding:clamp(12px,2.8vw,32px)}.login-card{border-radius:8px;display:grid;isolation:isolate;max-height:calc(100dvh - clamp(24px,6vw,68px));min-height:0;overflow:hidden;padding:0;position:relative;text-align:left;background:#fffdf78c;backdrop-filter:blur(18px) saturate(1.08);border:1px solid rgba(255,255,255,.58);box-shadow:0 32px 96px #07101b4d,0 1px #ffffffad inset;grid-template-columns:minmax(290px,.74fr) minmax(420px,1fr);height:min(706px,calc(100dvh - clamp(24px,5vw,64px)));max-width:1040px;width:min(1040px,calc(100vw - 48px))}.login-card:before{color:#df66792e;font-size:76px;font-weight:900;content:"";inset:0;pointer-events:none;position:absolute;z-index:0;background:linear-gradient(180deg,rgba(255,255,255,.38),transparent 32%),radial-gradient(circle at 18% 14%,var(--login-season-glow),transparent 30%)}.login-art{height:100%;min-height:0;overflow:hidden;background:linear-gradient(180deg,#fffdf724,#fffdf705),linear-gradient(135deg,#08121c29,#ffffff0d),var(--login-panel-bg) center / cover no-repeat;border-right:1px solid rgba(255,255,255,.38);display:flex;flex-direction:column;justify-content:space-between;padding:28px}.login-art:after{content:"";inset:0;pointer-events:none;position:absolute;background:linear-gradient(90deg,transparent 56%,rgba(255,253,247,.5)),radial-gradient(circle at 20% 18%,rgba(255,255,255,.18),transparent 24%)}.login-season-badge{align-self:flex-start;background:#fffdf7d6;border:1px solid color-mix(in srgb,var(--login-season-accent) 38%,white);border-radius:8px;box-shadow:0 18px 44px #08121c2e;color:var(--login-season-action);display:inline-flex;flex-direction:column;gap:4px;min-width:104px;padding:12px 14px 13px;position:relative;z-index:1}.login-season-kanji{font-family:Noto Sans JP,Yu Mincho,Yu Gothic,serif;font-size:52px;font-weight:900;line-height:.95}.login-season-name{color:var(--ink-soft);font-size:13px;font-weight:900;line-height:1.2;white-space:nowrap}.login-season-caption{background:#0f1c2a70;border:1px solid rgba(255,255,255,.28);border-radius:8px;box-shadow:0 20px 44px #08121c29;color:#ffffffc7;display:grid;gap:6px;padding:16px;position:relative;text-shadow:0 1px 6px rgba(8,18,28,.35);z-index:1}.login-season-caption span{font-size:12px;font-weight:850}.login-season-caption strong{color:#fffdf8;font-size:17px;line-height:1.35}.login-content{display:flex;flex-direction:column;overflow:auto;background:linear-gradient(180deg,#fffdf7eb,#fafcf7d6);border-left:1px solid rgba(255,255,255,.52);justify-content:flex-start;padding:clamp(30px,4.1vw,52px)}.login-brand-seal,.btn-login-submit{background:linear-gradient(135deg,var(--login-season-action),color-mix(in srgb,var(--login-season-action) 78%,var(--indigo)))}.login-brand-seal{align-items:center;background:linear-gradient(145deg,var(--indigo),var(--indigo-soft));border:1px solid rgba(255,255,255,.72);border-radius:8px;color:#fffdf8;display:inline-flex;flex:0 0 auto;font-family:Noto Sans JP,Yu Gothic,Microsoft YaHei UI,sans-serif;font-size:26px;font-weight:900;height:54px;justify-content:center;line-height:1;width:54px;box-shadow:0 14px 28px color-mix(in srgb,var(--login-season-action) 24%,transparent)}.login-brand-jp{font-size:clamp(32px,4.2vw,48px);font-weight:900;letter-spacing:0;line-height:1.05;margin:0;color:#193457}.login-public-profile{border:1px solid color-mix(in srgb,var(--indigo) 18%,transparent);border-radius:8px;display:inline-block;font-size:.92em;font-weight:850;line-height:1.35;padding:0 7px;background:color-mix(in srgb,var(--login-season-accent) 12%,white);border-color:color-mix(in srgb,var(--login-season-accent) 32%,transparent);color:var(--login-season-action)}.login-overlay .login-card .btn-login-submit{background:linear-gradient(135deg,var(--login-season-action),color-mix(in srgb,var(--login-season-action) 76%,var(--indigo)));box-shadow:0 16px 30px color-mix(in srgb,var(--login-season-action) 28%,transparent)}.login-overlay .login-card .btn-login-register{box-shadow:0 10px 22px #193a5a14;background:#fffdf7b8;border-color:color-mix(in srgb,var(--login-season-accent) 30%,rgba(25,58,90,.12));color:var(--login-season-action)}.login-overlay .login-card .btn-login-register:hover{background:color-mix(in srgb,var(--login-season-accent) 12%,white);border-color:color-mix(in srgb,var(--login-season-accent) 54%,rgba(25,58,90,.12));color:var(--login-season-action)}.login-existing .existing-chip.readonly,.login-existing .existing-chip.readonly:hover{background:color-mix(in srgb,var(--login-season-accent) 10%,white);border-color:color-mix(in srgb,var(--login-season-accent) 28%,var(--line));color:var(--login-season-action)}html[data-theme=yomatsuri] .login-overlay,html[data-theme=yomatsuri] .login-card,html[data-theme=yomatsuri] .login-card:before,html[data-theme=yomatsuri] .login-art,html[data-theme=yomatsuri] .login-content,html[data-theme=yomatsuri] .login-form .field input,html[data-theme=yomatsuri] .login-existing,html[data-theme=yomatsuri] .btn-login-register{color:var(--ink)}html[data-theme=yomatsuri] .login-overlay{background:linear-gradient(90deg,#0a121c8f,#0a121c38 42%,#faf7efad),linear-gradient(180deg,#ffffff1a,#0e1a2624),var(--login-season-bg) center / cover no-repeat}html[data-theme=yomatsuri] .login-card{background:#fffdf78c;border-color:#ffffff94}html[data-theme=yomatsuri] .login-content{background:linear-gradient(180deg,#fffdf7eb,#fafcf7d6)}html[data-theme=yomatsuri] .login-form .field input{background:linear-gradient(180deg,#fffffff0,#fffdf8d6);border-color:#193a5a29;color:var(--ink)}html[data-theme=yomatsuri] .login-existing{background:linear-gradient(180deg,#ffffffad,#f6faf68a);border-color:#193a5a1c}html[data-theme=yomatsuri] .login-overlay .login-card .btn-login-register{background:#fffdf7b8;border-color:color-mix(in srgb,var(--login-season-accent) 30%,rgba(25,58,90,.12));color:var(--login-season-action)}.immersion-choice-group,.onboarding-levels{display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr))}.immersion-choice,.onboarding-level{align-items:flex-start;background:#ffffffd1;border:1px solid rgba(25,58,90,.14);border-radius:8px;color:var(--ink-soft);cursor:pointer;display:flex;gap:8px;min-width:0;padding:10px;text-align:left}.onboarding-level{appearance:none;font-family:inherit}.immersion-choice:has(input:checked),.onboarding-level.active{background:color-mix(in srgb,var(--moss) 10%,white);border-color:color-mix(in srgb,var(--moss) 48%,var(--line, #ddd));color:var(--ink)}.immersion-choice input{margin-top:3px}.immersion-choice strong,.onboarding-level strong{color:var(--indigo);display:block;font-size:13px;line-height:1.25}.immersion-choice small,.onboarding-level span{color:var(--ink-faint);display:block;font-size:12px;line-height:1.45;margin-top:4px}.btn-profile-quiz{border-radius:8px;font-size:12px;margin-top:8px;padding:7px 10px}.profile-quiz,.onboarding-quiz{border:1px solid rgba(25,58,90,.12);border-radius:8px;display:grid;gap:10px;margin-top:10px;padding:10px}.quiz-question{color:var(--ink);font-size:13px;font-weight:800;line-height:1.45;margin-bottom:6px}.quiz-options{display:grid;gap:6px}.quiz-option{align-items:center;background:#ffffffbd;border:1px solid rgba(25,58,90,.1);border-radius:8px;color:var(--ink-soft);cursor:pointer;display:flex;gap:8px;min-height:34px;padding:6px 9px}.quiz-option:has(input:checked){border-color:color-mix(in srgb,var(--indigo) 42%,var(--line, #ddd));color:var(--indigo);font-weight:800}.profile-quiz-actions,.onboarding-quiz-line{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.onboarding-quiz-line{color:var(--ink-faint);font-size:12px;justify-content:center;margin-top:10px}.onboarding-quiz-line button{background:#fff;border:1px solid var(--paper-warm);border-radius:8px;color:var(--indigo);cursor:pointer;font-family:inherit;font-size:12px;font-weight:800;padding:6px 9px}.onboarding-result{color:var(--moss);font-size:12px;font-weight:800;min-height:18px;text-align:center}.onboarding-levels.compact{margin-top:10px}.onboarding-placement,.concept-bridge-grid{display:grid;gap:10px}.placement-question,.concept-bridge-card{background:#ffffffd1;border:1px solid rgba(25,58,90,.12);border-radius:8px;padding:10px}.placement-question strong,.concept-bridge-card strong{color:var(--ink);display:block;font-size:13px;line-height:1.4;margin-bottom:7px}.placement-options{display:grid;gap:6px}.placement-option{background:#fff;border:1px solid var(--paper-warm);border-radius:8px;color:var(--ink-soft);cursor:pointer;font-family:inherit;font-size:12px;padding:7px 9px;text-align:left}.placement-option.active{border-color:color-mix(in srgb,var(--moss) 46%,var(--line, #ddd));color:var(--moss);font-weight:800}.concept-bridge-card span{color:var(--ink-soft);display:block;font-size:12px;line-height:1.55}.agent-growth-main{align-items:baseline;display:flex;justify-content:space-between;gap:10px}.agent-growth-label{color:var(--ink-faint);font-size:12px;font-weight:800}.agent-growth-main strong{color:var(--indigo);font-size:30px;line-height:1}.agent-growth-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.agent-growth-tags span{background:#2d4a6b12;border:1px solid rgba(45,74,107,.1);border-radius:8px;color:var(--ink-soft);font-size:11px;font-weight:800;line-height:1.2;padding:5px 7px}.agent-explain-cn{min-width:auto;padding-inline:8px}@media(max-width:540px){.immersion-choice-group,.onboarding-levels{grid-template-columns:1fr}.agent-growth-main strong{font-size:26px}}@media(max-width:860px){.login-overlay{align-items:start;background:linear-gradient(180deg,#0a121c2e,#faf7efc2 33%,#faf7efe6),var(--login-season-bg) center top / auto 44vh no-repeat,color-mix(in srgb,var(--login-season-accent) 12%,#f8f5ed);padding:10px}.login-art{border-bottom:1px solid rgba(201,184,158,.52);border-right:0;background:linear-gradient(180deg,#0c1a2624,#0c1a2605),var(--login-panel-bg) center 42% / cover no-repeat;border-bottom-color:#ffffff70;display:flex;height:128px;min-height:128px;padding:14px}.login-season-badge{min-width:78px;padding:8px 10px}.login-season-kanji{font-size:36px}.login-season-name{font-size:11px}.login-season-caption{align-self:flex-end;gap:2px;justify-self:flex-end;max-width:230px;padding:10px 12px}.login-season-caption strong{font-size:13px}.login-season-caption span{font-size:10px}.login-content{overflow:visible;padding:20px;background:#fffdf7e6;border-left:0}html[data-theme=yomatsuri] .login-overlay{background:linear-gradient(180deg,#0a121c2e,#faf7efc2 33%,#faf7efe6),var(--login-season-bg) center top / auto 44vh no-repeat,color-mix(in srgb,var(--login-season-accent) 12%,#f8f5ed)}html[data-theme=yomatsuri] .login-card{background:#fffdf7c7}html[data-theme=yomatsuri] .login-content{background:#fffdf7e6}}@media(max-width:540px){.login-overlay{padding:8px;background:linear-gradient(180deg,#0a121c33,#faf7efd1 28%,#faf7eff0),var(--login-season-bg) center top / auto 36vh no-repeat,color-mix(in srgb,var(--login-season-accent) 11%,#f8f5ed)}html[data-theme=yomatsuri] .login-overlay{background:linear-gradient(180deg,#0a121c33,#faf7efd1 28%,#faf7eff0),var(--login-season-bg) center top / auto 36vh no-repeat,color-mix(in srgb,var(--login-season-accent) 11%,#f8f5ed)}.login-art{height:86px;min-height:86px;padding:10px}.login-season-badge{min-width:62px;padding:6px 8px}.login-season-kanji{font-size:29px}.login-season-name{font-size:10px}.login-season-caption{display:none}}:root{--surface: rgba(255, 255, 255, .92);--surface-solid: #ffffff;--moss: #43835e;--moss-soft: #cce7d3;--error: #bd4b52;--error-soft: #fde8ea;--shadow-card: 0 10px 28px rgba(25, 58, 90, .08);--radius: 8px;--speed: .18s;--ink: #263046;--ink-soft: #59606f;--ink-faint: #8b90a0;--paper: #fffdf8;--paper-warm: #f8efe4;--paper-pink: #fff2f3;--paper-green: #f1f7ed;--paper-blue: #f1f6fb;--line: #eadfd3;--line-strong: #dac9b8;--sakura: #f7aab6;--sakura-deep: #df6679;--sakura-ink: #9d3148;--matcha: #81b06b;--matcha-dark: #4f7c48;--indigo: #314e7b;--indigo-soft: #dbe7fa;--koi: #f28c5b;--gold: #d5a84f;--wood: #c28b5c;--shadow-soft: 0 16px 42px rgba(84, 64, 50, .12);--shadow-tiny: 0 8px 20px rgba(84, 64, 50, .08);--art-day: url(/static/assets/washi-fuji-indigo.png);--art-night: url(/static/assets/washi-fuji-yomatsuri.png);--rail-art: url(/static/assets/rail-study-corner.png);--rail-art-opacity: .72;--login-season-bg: url(/static/assets/login-season-summer.jpg);--login-panel-bg: url(/static/assets/login-panel-season-summer.jpg);--login-season-action: #1f6245;--login-season-accent: #6a9d70;--login-season-glow: rgba(82, 142, 91, .26);--ui-radius: 8px;--ui-gap: clamp(14px, 1.35vw, 22px);--ui-surface: color-mix(in srgb, var(--paper) 88%, white 12%);--ui-surface-strong: color-mix(in srgb, var(--paper) 96%, white 4%);--ui-glass: color-mix(in srgb, var(--paper) 78%, transparent);--ui-line: color-mix(in srgb, var(--line) 84%, white 16%)}body{margin:0;font-family:Noto Sans JP,Noto Sans CJK JP,Noto Sans SC,Meiryo,Yu Gothic UI,Yu Gothic,Microsoft YaHei UI,Microsoft YaHei,PingFang SC,Hiragino Sans,system-ui,sans-serif;min-height:100dvh;line-height:1.5;background-size:34px 34px,34px 34px,auto;overflow-x:hidden;background-attachment:fixed;color:var(--ink);background:linear-gradient(145deg,color-mix(in srgb,var(--theme-bg) 86%,white 14%) 0%,var(--theme-bg-soft) 100%),radial-gradient(circle at 12% 12%,color-mix(in srgb,var(--sakura) 10%,transparent),transparent 24%),radial-gradient(circle at 92% 16%,color-mix(in srgb,var(--matcha) 10%,transparent),transparent 26%)}body:before{content:"";position:fixed;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 50% 100%,transparent 0 15px,rgba(49,78,123,.15) 16px 17px,transparent 18px) 0 0 / 42px 24px,radial-gradient(ellipse at 50% 0%,transparent 0 15px,rgba(129,176,107,.12) 16px 17px,transparent 18px) 21px 12px / 42px 24px;background-image:var(--theme-art);background-position:right bottom;background-repeat:no-repeat;inset:0;mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.55) 38%,rgba(0,0,0,.82) 100%);background-size:min(1080px,72vw) auto;opacity:calc(var(--theme-ambient-opacity) * .72)}.profile-current,.btn-add-profile,.btn-upgrade,.theme-choice,.verb-chip,.seg,.vocab-tab,.option,.scene-quality-btn,.btn-add,.btn-primary,.btn-secondary,.btn-ai,.btn-next,.btn-restart,.modal-actions button{transition:background-color var(--speed) ease,border-color var(--speed) ease,box-shadow var(--speed) ease,color var(--speed) ease,transform var(--speed) ease}.profile-current:focus-visible,.btn-add-profile:focus-visible,.btn-upgrade:focus-visible,.theme-choice:focus-visible,.tab:focus-visible,.verb-chip:focus-visible,.seg:focus-visible,.vocab-tab:focus-visible,.option:focus-visible,.btn-add:focus-visible,.btn-primary:focus-visible,.btn-secondary:focus-visible,.btn-ai:focus-visible,.btn-next:focus-visible,.btn-restart:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--indigo) 16%,transparent);outline:none}@media(min-width:861px){.container{padding:clamp(14px,1.55vw,24px)}.app-shell{background:linear-gradient(90deg,rgba(255,255,255,.2),transparent 32%),color-mix(in srgb,var(--paper) 84%,white 16%);border:1px solid color-mix(in srgb,var(--line) 78%,white 22%);border-radius:var(--ui-radius);box-shadow:0 30px 80px color-mix(in srgb,var(--ink) 14%,transparent),0 1px #ffffffc2 inset;grid-template-columns:clamp(232px,16.4vw,264px) minmax(0,1fr);max-width:min(1540px,calc(100vw - 32px));min-height:calc(100dvh - clamp(28px,3.1vw,48px))}.app-rail{background:linear-gradient(180deg,#172a40fa,#1e3a53f5 46%,#f9f5ebf0 78%,color-mix(in srgb,var(--paper) 96%,white 4%)),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);background-size:auto,30px 30px;border-right:1px solid color-mix(in srgb,var(--indigo) 18%,var(--line));min-height:calc(100dvh - clamp(28px,3.1vw,48px));padding:24px 20px 260px}.app-rail:before{border-color:#ffffff29;inset:13px}.app-rail:after{background-size:152% auto;height:clamp(360px,44vh,540px);opacity:.54}.app-rail header{margin-bottom:18px;padding:8px 4px 18px}.app-rail header:after{background:linear-gradient(90deg,#ffffff14,#ffffff8a,#e7c078b8,#ffffff14);left:0;right:0}.brand-jp{color:#fffdf7;font-size:clamp(24px,1.9vw,30px);letter-spacing:0;text-shadow:0 10px 28px rgba(0,0,0,.22)}.brand-zh{color:#ffffffc2;font-weight:780}.key-status.engine-status{background:#ffffff1a;border-color:#ffffff29;color:#ffffffbd}.engine-status-title{color:#ffffffb8}.engine-dot{box-shadow:0 0 0 2px #ffffff1a}.app-shell>.tabs{gap:10px;margin:164px 20px 0}.tab{background:#ffffff1f;border-color:#ffffff24;border-radius:var(--ui-radius);box-shadow:none;color:#ffffffd1;min-height:52px;padding:0 13px}.tab:hover{background:#ffffff2e;border-color:#ffffff42;color:#fff;transform:translateY(-1px)}.tab.active{background:linear-gradient(135deg,#fffdf7,color-mix(in srgb,var(--indigo-soft) 28%,white));border-color:#ffffffa8;box-shadow:0 16px 34px #04122147;color:#193452}.tab-icon{filter:drop-shadow(0 3px 6px rgba(0,0,0,.18));flex-basis:31px;height:31px;width:31px}.tab.active .tab-icon{filter:drop-shadow(0 3px 5px rgba(25,52,82,.18))}.app-workspace{background:linear-gradient(180deg,color-mix(in srgb,var(--paper) 72%,white 28%),color-mix(in srgb,var(--paper-warm) 44%,var(--paper))),radial-gradient(circle at 88% 9%,color-mix(in srgb,var(--matcha) 9%,transparent),transparent 24%);padding:clamp(18px,1.7vw,28px)}.profile-bar{background:linear-gradient(180deg,color-mix(in srgb,var(--paper) 88%,white 12%),color-mix(in srgb,var(--paper) 74%,transparent));border-color:var(--ui-line);border-radius:var(--ui-radius);box-shadow:0 14px 34px color-mix(in srgb,var(--ink) 8%,transparent);gap:8px;padding:10px}.profile-picker{flex:1 1 300px}.profile-current,.btn-add-profile,.btn-upgrade,.plan-badge,.theme-switch{border-radius:var(--ui-radius);min-height:42px}.profile-current,.btn-add-profile,.plan-badge,.theme-switch{background:#ffffffb8;border-color:color-mix(in srgb,var(--line) 82%,white 18%)}.btn-add-profile,.btn-upgrade{padding-inline:12px}.profile-current:hover,.btn-add-profile:hover,.theme-choice:hover{background:#fffef9;border-color:color-mix(in srgb,var(--indigo) 28%,var(--line));color:var(--indigo);transform:translateY(-1px)}.btn-upgrade{box-shadow:0 12px 24px color-mix(in srgb,var(--indigo) 18%,transparent)}.theme-switch{padding:4px}.theme-choice{min-height:34px;padding-inline:10px}.profile-help-icon{height:18px;width:18px}#godan.active{gap:var(--ui-gap);grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr)}.section-row,.section-title,.verb-picker,.track,.form-card,.scene-card,.srs-card,.book-card,.book-empty,.tip{border-color:var(--ui-line);border-radius:var(--ui-radius);box-shadow:0 14px 34px color-mix(in srgb,var(--ink) 7%,transparent),0 1px #ffffffa8 inset}.section-row,.section-title{background:linear-gradient(90deg,var(--ui-surface-strong),color-mix(in srgb,var(--paper) 74%,transparent)),linear-gradient(90deg,color-mix(in srgb,var(--sakura) 6%,transparent),color-mix(in srgb,var(--matcha) 5%,transparent));min-height:56px;padding:12px 14px}.section-row .section-title{box-shadow:none}.verb-picker,.track{background:color-mix(in srgb,var(--paper) 83%,white 17%);padding:11px}.verb-chip{border-radius:var(--ui-radius);min-height:44px;padding-inline:16px}.verb-chip:hover,.vocab-tab:hover,.seg:hover{transform:translateY(-1px)}.verb-stage{background-image:linear-gradient(90deg,color-mix(in srgb,var(--paper) 97%,transparent),color-mix(in srgb,var(--paper) 78%,transparent) 44%,color-mix(in srgb,var(--paper) 14%,transparent)),var(--theme-art);border-color:var(--ui-line);border-radius:var(--ui-radius);box-shadow:0 24px 58px color-mix(in srgb,var(--ink) 12%,transparent),0 1px #ffffffb8 inset;min-height:clamp(350px,31vw,450px)}.verb-stage:before{border-radius:0 0 var(--ui-radius) var(--ui-radius);box-shadow:0 12px 24px color-mix(in srgb,var(--indigo) 20%,transparent)}.verb-display{font-size:clamp(84px,8.2vw,128px)}.verb-reading{background:#ffffffb8}.track{gap:12px}.seg{background:#ffffffad;border-radius:var(--ui-radius);min-height:112px}.seg.active{box-shadow:0 18px 34px color-mix(in srgb,var(--indigo) 24%,transparent)}.form-card{background:linear-gradient(180deg,var(--ui-surface-strong),color-mix(in srgb,var(--paper) 84%,transparent));min-height:clamp(350px,31vw,450px)}.form-example{background:#ffffff8c}.example-item{background:#ffffff9e}.btn-add:hover,.btn-primary:hover,.btn-next:hover,.btn-restart:hover,.btn-ai:hover{transform:translateY(-1px)}.toast{bottom:28px;left:calc(50% + 130px);max-width:min(460px,calc(100vw - 320px))}}@media(max-width:860px){#godan.active{gap:11px;grid-template-columns:1fr}#godan .section-row,#godan .verb-picker,#godan .verb-stage,#godan .track,#godan .form-card,#godan .tip{grid-column:1;grid-row:auto}}@media(max-width:860px){body:before{mask-image:linear-gradient(180deg,rgba(0,0,0,.32),transparent 54%);background-size:780px auto;opacity:calc(var(--theme-ambient-opacity) * .56)}.app-rail{border:0;overflow:visible;border-bottom:1px solid var(--line);box-shadow:0 12px 28px color-mix(in srgb,var(--ink) 12%,transparent);min-height:auto;padding:11px 12px 9px;position:sticky;top:0;z-index:20;background:linear-gradient(135deg,color-mix(in srgb,var(--paper) 92%,white),color-mix(in srgb,var(--paper-warm) 60%,var(--paper))),radial-gradient(circle at 92% 14%,color-mix(in srgb,var(--matcha) 12%,transparent),transparent 26%);border-bottom-color:var(--ui-line);border-radius:0 0 var(--ui-radius) var(--ui-radius)}.brand-jp{line-height:1.08;font-size:21px;letter-spacing:0}.tab{font-size:13px;scroll-snap-align:start;flex-direction:column;gap:3px;padding:5px 6px;border-radius:var(--ui-radius);flex:0 0 78px;min-height:56px}.app-workspace{background:transparent;margin-top:0;overflow:visible;padding:12px 10px 116px}.profile-bar::-webkit-scrollbar,.tabs::-webkit-scrollbar,.verb-picker::-webkit-scrollbar,.track::-webkit-scrollbar,.vocab-tabs::-webkit-scrollbar{display:none}.profile-current,.btn-add-profile,.btn-upgrade,.plan-badge,.theme-switch,.theme-choice,.section-row,.section-title,.verb-picker,.track,.form-card,.scene-card,.srs-card,.book-card,.book-empty,.tip{border-radius:var(--ui-radius)}.verb-stage{background-position:center,66% bottom;background-size:auto,150% auto;padding:50px 16px 26px;border-radius:var(--ui-radius);min-height:clamp(258px,68vw,330px)}.verb-stage:before{font-size:13px;left:16px;padding:7px 12px 8px;border-radius:0 0 var(--ui-radius) var(--ui-radius)}.seg{scroll-snap-align:start;position:relative;align-items:center;display:grid;gap:8px;grid-template-columns:minmax(82px,1fr) 42px minmax(96px,1.1fr) 18px;min-height:58px;padding:8px 10px;text-align:left;border-radius:var(--ui-radius)}.form-card,.scene-card,.srs-card{padding:17px 15px;box-shadow:0 12px 28px color-mix(in srgb,var(--ink) 8%,transparent),0 1px #ffffff9e inset}.toast{bottom:164px;max-width:calc(100vw - 28px);z-index:950}}@media(max-width:540px){.app-workspace{padding:10px}.profile-picker{flex-basis:166px;min-width:166px}.theme-choice{padding:0 8px;min-width:38px;padding-inline:7px}.btn-add-profile,.btn-upgrade,.plan-badge{min-width:64px}.section-row,.section-title{line-height:1.42;padding:10px;font-size:13px}#godan .section-row{grid-template-columns:1fr}#godan .section-row .btn-add{justify-self:stretch;width:100%}.verb-stage{padding:52px 18px 32px;min-height:238px;background-position:center,70% bottom;background-size:auto,158% auto}.verb-display{letter-spacing:2px;max-width:88%;font-size:clamp(58px,19vw,82px)}.seg{min-height:88px;padding:10px 8px;grid-template-columns:minmax(70px,.86fr) 34px minmax(92px,1.12fr) 16px}.agent-launch-avatar{flex-basis:44px;height:44px;width:44px}}@media(min-width:861px){html[data-theme] .app-rail{background:linear-gradient(180deg,#16283efc,#1c3852f7 45%,#f6f1e5f2 78%,color-mix(in srgb,var(--paper) 96%,white 4%)),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);background-size:auto,30px 30px}html[data-theme=yomatsuri] .app-rail{background:linear-gradient(180deg,#0a1624fc,#122438f7 54%,#192b3ef0),linear-gradient(90deg,rgba(231,192,120,.05) 1px,transparent 1px);background-size:auto,30px 30px}html[data-theme] .brand-jp{color:#fffdf7;font-size:clamp(23px,1.62vw,27px);text-shadow:0 12px 30px rgba(0,0,0,.28);white-space:nowrap}html[data-theme] .brand-zh{color:#ffffffc2}html[data-theme] .key-status.engine-status{background:#ffffff1a;border-color:#ffffff29;color:#ffffffbd}html[data-theme] .engine-status-title{color:#ffffffb8}html[data-theme] .tab:hover{background:#ffffff2e;border-color:#ffffff42;color:#fff}html[data-theme] .tab.active{background:linear-gradient(135deg,#fffdf7,color-mix(in srgb,var(--indigo-soft) 28%,white));border-color:#ffffffa8;box-shadow:0 16px 34px #04122147;color:#193452}html[data-theme=yomatsuri] .tab.active{background:linear-gradient(135deg,#f2d48d,#fff0bd);color:#13243a}html[data-theme] .profile-bar{background:linear-gradient(180deg,color-mix(in srgb,var(--paper) 88%,white 12%),color-mix(in srgb,var(--paper) 74%,transparent))}}@media(max-width:860px){html[data-theme] .app-shell>.tabs .tab{background:#ffffffdb;border-color:var(--ui-line);color:var(--ink)}html[data-theme] .app-shell>.tabs .tab.active{background:linear-gradient(135deg,var(--indigo),color-mix(in srgb,var(--indigo) 76%,var(--matcha)));border-color:color-mix(in srgb,var(--indigo) 44%,white);color:#fff}html[data-theme=yomatsuri] .app-shell>.tabs .tab{background:#fff6e21a;color:var(--ink-soft)}html[data-theme=yomatsuri] .app-shell>.tabs .tab.active{background:linear-gradient(135deg,#d88758,#e7c078);color:#152233}}.agent-bubble *{touch-action:none;user-select:none;-webkit-user-drag:none;-webkit-user-select:none}.agent-bubble.agent-bubble-positioned{bottom:auto}.agent-bubble.agent-bubble-drag-ready,.agent-bubble.dragging{cursor:grabbing}.agent-bubble.dragging{box-shadow:0 24px 58px color-mix(in srgb,var(--ink) 30%,transparent);transform:none!important;transition:box-shadow var(--speed),border-color var(--speed)}@media(min-width:861px){.agent-panel[data-anchor=left]{left:24px;right:auto}.agent-panel[data-anchor=right]{left:auto;right:24px}}.tab-icon{position:relative;border:0;display:inline-block;filter:drop-shadow(0 2px 2px color-mix(in srgb,var(--ink) 18%,transparent));transform-origin:center;transition:filter var(--speed),transform var(--speed);background-position:center!important;background-repeat:no-repeat!important;background-size:contain!important;flex:0 0 36px;height:36px;width:36px}.tab-icon-fuji{background:url(/static/assets/nav-godan.png) center / contain no-repeat!important;background-image:url(/static/assets/nav-godan.svg)!important}.tab-icon-torii{background:url(/static/assets/nav-scene.png) center / contain no-repeat!important;background-image:url(/static/assets/nav-scene.svg)!important}.tab-icon-wave{background:url(/static/assets/nav-jita.png) center / contain no-repeat!important;background-image:url(/static/assets/nav-jita.svg)!important}.tab-icon-fan{border-bottom:3px solid var(--wood);border-radius:100% 100% 4px 4px;background:url(/static/assets/nav-particle.png) center / contain no-repeat!important;background-image:url(/static/assets/nav-particle.svg)!important}.tab-icon-daruma{border:2px solid rgba(38,48,70,.12);border-radius:50% 50% 45% 45%;background:url(/static/assets/nav-review.png) center / contain no-repeat!important;background-image:url(/static/assets/nav-review.svg)!important}.tab-icon-book{border:2px solid rgba(38,48,70,.12);border-radius:4px;background:url(/static/assets/nav-book.png) center / contain no-repeat!important;background-image:url(/static/assets/nav-book.svg)!important}.tab-icon-practice{background:url(/static/assets/nav-practice.svg) center / contain no-repeat!important;background-image:url(/static/assets/nav-practice.svg)!important}.tab-icon-courseware{background:url(/static/assets/nav-courseware.svg) center / contain no-repeat!important;background-image:url(/static/assets/nav-courseware.svg)!important}@media(min-width:861px){html[data-theme] .tab{background:#ffffff1f;border-color:#ffffff24;box-shadow:none;color:#ffffffd1;gap:12px;min-height:56px;padding-inline:12px 14px}html[data-theme] .tab-icon{filter:drop-shadow(0 4px 7px rgba(4,18,33,.2)) saturate(1.05)}html[data-theme] .tab.active .tab-icon{filter:drop-shadow(0 3px 5px rgba(25,52,82,.18)) saturate(1.12);transform:scale(1.08)}}@media(max-width:860px){html[data-theme] .tab-icon{flex-basis:30px;height:30px;width:30px}html[data-theme] .tab.active .tab-icon{transform:scale(1.06)}}.skills-intro{background:color-mix(in srgb,var(--paper-warm) 72%,transparent);border:1px solid var(--line);border-radius:10px;color:var(--ink-soft);font-size:13px;padding:10px 12px}.skills-editor{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:13px;line-height:1.65;min-height:min(56dvh,520px);resize:vertical;width:100%}.tab-more,.tabs-launcher-head{display:none}@media(max-width:860px){html,body{height:100%}body{background:radial-gradient(circle at 14% 8%,rgba(247,170,182,.24) 0 8px,transparent 9px),radial-gradient(circle at 84% 10%,rgba(129,176,107,.2) 0 10px,transparent 11px),linear-gradient(180deg,#fff7f7,#fffdf8 34%,#f7efe5);min-height:100dvh;overflow:hidden}body button{min-height:44px!important;min-width:44px!important}body input,body select{min-height:44px!important}.container{height:100dvh;min-height:0;overflow:hidden;padding:0}.app-shell{grid-template-columns:218px minmax(0,1fr);background:transparent;border:0;border-radius:0;box-shadow:none;max-width:none;display:flex;flex-direction:column;height:100dvh;min-height:0;overflow:hidden}.app-shell>.app-rail{flex:0 0 auto;min-height:auto;position:static;padding-top:calc(8px + env(safe-area-inset-top))}.app-shell>.app-workspace{flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;padding-bottom:calc(140px + env(safe-area-inset-bottom))}.app-shell>.tabs{border:1px solid var(--line);overflow-x:auto;backdrop-filter:blur(18px);background:color-mix(in srgb,var(--paper) 84%,transparent);border-color:var(--ui-line);box-shadow:0 20px 46px color-mix(in srgb,var(--ink) 22%,transparent);display:flex;align-items:stretch;bottom:0;left:0;position:fixed;right:0;border-radius:16px 16px 0 0;gap:4px;margin:0;overflow:visible;padding:6px 8px calc(6px + env(safe-area-inset-bottom));z-index:60}.app-shell>.tabs:not(.mobile-tabs-open) .tab:not([data-primary]):not(.tab-more){display:none}.app-shell>.tabs .tab{flex:1 1 0;flex-direction:column;gap:2px;min-height:54px;min-width:0!important;padding:5px 2px}.app-shell>.tabs .tab-label{font-size:12px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}html[data-theme] .app-shell>.tabs .tab-icon{flex-basis:26px;height:26px;width:26px}.app-shell>.tabs .tab-more{display:flex}.app-shell>.tabs .tab-more .tab-icon{align-items:center;display:flex;font-size:22px;justify-content:center;line-height:1}.app-shell>.tabs.mobile-tabs-open{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;border-radius:18px 18px 0 0;box-shadow:0 -16px 40px #3c2c2042;max-height:74dvh;overflow-y:auto;padding:16px 14px calc(16px + env(safe-area-inset-bottom))}.app-shell>.tabs.mobile-tabs-open:before{content:"";position:fixed;inset:0;background:#261c146b;z-index:-1}.app-shell>.tabs.mobile-tabs-open .tab{background:#ffffff9e;border:1px solid var(--line);border-radius:14px;gap:6px;min-height:72px;padding:10px 4px}.app-shell>.tabs.mobile-tabs-open .tab.active{background:var(--paper-warm, rgba(129, 176, 107, .16));border-color:var(--matcha, #81b06b)}.app-shell>.tabs.mobile-tabs-open .tab-label{font-size:13px}.app-shell>.tabs.mobile-tabs-open .tab-more{display:none}body.tabs-launcher-open .agent-bubble{display:none}.app-shell>.tabs.mobile-tabs-open .tabs-launcher-head{align-items:center;display:flex;grid-column:1 / -1;justify-content:space-between;padding:2px 4px 6px}.tabs-launcher-title{color:var(--ink);font-size:15px;font-weight:700}.tabs-launcher-edit{background:none;border:1px solid var(--line);border-radius:999px;color:var(--ink-soft);font-size:13px;min-height:0!important;min-width:0!important;padding:7px 14px}.app-shell>.tabs.editing .tabs-launcher-edit{background:var(--matcha, #81b06b);border-color:var(--matcha, #81b06b);color:#fff}.app-shell>.tabs.editing .tab{position:relative}.app-shell>.tabs.editing .tab:after{align-items:center;background:var(--line);border-radius:50%;color:var(--ink-faint);content:"\ff0b";display:flex;font-size:13px;font-weight:700;height:20px;justify-content:center;position:absolute;right:8px;top:6px;width:20px}.app-shell>.tabs.editing .tab[data-primary]:after{background:var(--matcha, #81b06b);color:#fff;content:"\2713"}.rail-ornaments,.rail-glyph,.rail-scene,.rail-caption,.workspace-motifs,.kana-spark{display:none!important}.skills-editor{min-height:48dvh}}.profile-actions{display:contents}.profile-tools-toggle:hover,.profile-tools-toggle[aria-expanded=true]{border-color:var(--indigo-soft);color:var(--indigo)}.profile-tools-caret{color:var(--ink-faint);font-size:10px}.engine-status-mobile,.mobile-subtabs{display:none}@media(min-width:861px){html[data-theme] .agent-bubble:not(.agent-bubble-positioned){bottom:28px;left:auto;right:28px}}@media(max-width:860px){.profile-bar{flex-direction:row;scroll-snap-type:x proximity;flex-wrap:nowrap;margin-bottom:12px;overflow-x:auto;padding:8px;border-radius:var(--ui-radius);align-items:center;display:grid;gap:8px;grid-template-columns:minmax(0,1fr) auto;isolation:isolate;mask-image:none;overflow:visible;position:relative;z-index:180;-webkit-mask-image:none}.profile-picker{flex-basis:100%;scroll-snap-align:start;flex:none;min-width:0;width:auto}.profile-tools-toggle{display:inline-flex;min-width:72px!important}.profile-actions{background:linear-gradient(180deg,color-mix(in srgb,var(--paper) 94%,white 6%),color-mix(in srgb,var(--paper-warm) 58%,var(--paper)));border:1px solid var(--ui-line, var(--paper-warm));border-radius:var(--ui-radius, 8px);box-shadow:0 20px 48px color-mix(in srgb,var(--ink) 20%,transparent);display:none;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr));left:10px;max-height:min(66dvh,calc(100dvh - var(--profile-actions-top, 180px) - 90px));max-width:calc(100vw - 20px);overflow-x:hidden;overflow-y:auto;padding:10px;position:fixed;right:10px;top:var(--profile-actions-top, 180px);width:auto;z-index:980;-webkit-overflow-scrolling:touch}.profile-actions.show{display:grid}.profile-actions .engine-status-mobile{background:#ffffffa8;border:1px solid color-mix(in srgb,var(--line) 80%,white 20%);border-radius:var(--ui-radius, 8px);display:block;grid-column:1 / -1;padding:9px 10px;position:static}.profile-actions .theme-switch{display:grid;grid-column:1 / -1;grid-template-columns:repeat(4,minmax(0,1fr));min-width:0;width:100%}.profile-actions .theme-choice,.profile-actions .btn-add-profile,.profile-actions .btn-upgrade,.profile-actions .plan-badge{justify-content:center;min-width:0!important;width:100%}.profile-actions .btn-add-profile,.profile-actions .btn-upgrade{padding-inline:6px}.profile-actions .btn-with-help{gap:4px}.profile-actions .profile-help-icon{flex-basis:16px;height:16px;width:16px}.mobile-subtabs{background:color-mix(in srgb,var(--paper) 86%,transparent);border:1px solid var(--ui-line, var(--paper-warm));border-radius:var(--ui-radius, 8px);display:grid;gap:4px;grid-template-columns:repeat(2,minmax(0,1fr));margin:0 0 10px;padding:4px}.mobile-subtabs button{background:transparent;border:0;border-radius:calc(var(--ui-radius, 8px) - 2px);color:var(--ink-soft);cursor:pointer;font:inherit;font-size:13px;font-weight:800;min-width:0!important;padding:7px 10px}.mobile-subtabs button.active{background:linear-gradient(135deg,var(--indigo),color-mix(in srgb,var(--indigo) 72%,var(--matcha)));color:#fff;box-shadow:0 8px 18px color-mix(in srgb,var(--indigo) 20%,transparent)}#scene[data-mobile-pane=practice] .scene-toolbar,#scene[data-mobile-pane=setup] .scene-progress,#scene[data-mobile-pane=setup] #sceneContent{display:none}#scene[data-mobile-pane=setup] .scene-toolbar{display:grid;grid-template-columns:1fr}#scene[data-mobile-pane=setup] .scene-toolbar input,#scene[data-mobile-pane=setup] .scene-toolbar select,#scene[data-mobile-pane=setup] .scene-toolbar button{width:100%}.login-overlay.show{align-items:center;justify-items:center}.login-card{display:block;height:auto;max-height:none;min-height:0;overflow:hidden;background:#fffdf7c7;border-color:#ffffff9e;box-shadow:0 24px 70px #07101b2e;width:min(100%,620px);margin-block:auto}html[data-theme] .agent-bubble:not(.agent-bubble-positioned){bottom:calc(72px + env(safe-area-inset-bottom));left:auto;right:14px}}@media(max-width:540px){.profile-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}.mobile-topbar,.mobile-menu{display:none}@media(max-width:860px){.mobile-topbar{display:flex;align-items:center;justify-content:space-between;flex:0 0 auto;gap:12px;height:52px;padding:env(safe-area-inset-top,0) 14px 0;background:color-mix(in srgb,var(--paper) 94%,white);border-bottom:1px solid var(--line);position:relative;z-index:40}.mobile-topbar-title{font-weight:800;font-size:17px;color:var(--ink);letter-spacing:.02em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-menu-btn{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;font-size:19px;line-height:1;color:var(--ink);background:transparent;border:1px solid var(--line);border-radius:12px;cursor:pointer}.mobile-menu-btn:active{background:var(--paper-warm)}.app-rail,.workspace-motifs{display:none!important}.mobile-menu{display:block;position:fixed;inset:0;z-index:1000;visibility:hidden}.mobile-menu.open{visibility:visible}.mobile-menu-backdrop{position:absolute;inset:0;background:#14100c6b;opacity:0;transition:opacity .22s ease}.mobile-menu.open .mobile-menu-backdrop{opacity:1}.mobile-menu-sheet{position:absolute;top:0;right:0;height:100%;width:min(86vw,360px);display:flex;flex-direction:column;background:var(--paper);box-shadow:-14px 0 44px #14100c3d;transform:translate(100%);transition:transform .25s ease;padding-top:env(safe-area-inset-top,0);padding-bottom:env(safe-area-inset-bottom,0)}.mobile-menu.open .mobile-menu-sheet{transform:translate(0)}.mobile-menu-head{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;padding:16px 16px 12px;border-bottom:1px solid var(--line)}.mobile-menu-brand{font-weight:800;font-size:18px;color:var(--ink)}.mobile-menu-sub{font-size:12px;color:var(--ink-faint);margin-top:2px}.mobile-menu-close{flex:0 0 auto;width:40px;height:40px;font-size:26px;line-height:1;color:var(--ink-soft);background:transparent;border:none;cursor:pointer}.mobile-menu-body{flex:1 1 auto;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:16px;display:flex;flex-direction:column;gap:14px}.mobile-menu-body .profile-bar{display:flex;flex-direction:column;gap:12px;margin:0;padding:0;background:none;border:none;overflow:visible;z-index:auto}.mobile-menu-body .profile-picker,.mobile-menu-body .profile-current{width:100%}.mobile-menu-body .profile-current{justify-content:space-between}.mobile-menu-body .profile-tools-toggle{display:none!important}.mobile-menu-body .profile-actions{display:grid!important;position:static!important;inset:auto!important;width:100%!important;max-width:none!important;max-height:none!important;margin:0!important;box-shadow:none!important;border:none!important;background:none!important;padding:0!important}#godan .section-row{align-items:center;gap:8px;grid-template-columns:minmax(0,1fr) auto;display:none}#godan .verb-picker{margin-bottom:8px}#godan .verb-stage{padding:12px 14px 10px;min-height:0}#godan .verb-display{font-size:54px;min-height:0;margin-bottom:2px}#godan .verb-reading-row{margin-top:2px}#godan .track{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;margin-bottom:14px}#godan .track .seg{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:1px;padding:7px 3px;min-height:0;text-align:center}#godan .track .seg-meta{display:flex;flex-direction:column;align-items:center;line-height:1.1}#godan .track .seg-row{font-size:9.5px;letter-spacing:0;margin:0}#godan .track .seg-use{font-size:9px;margin:0}#godan .track .seg-kana{font-size:19px;margin:2px 0 1px}#godan .track .seg-form{font-size:10px;line-height:1.15;overflow-wrap:anywhere}#godan .form-card{padding:14px 13px}#godan .example-list{max-height:150px;overflow-y:auto}#godan .tip{display:none}#scene>.section-title,#particle>.section-title,#jita>.section-row{display:none}.scene-emoji{font-size:30px;letter-spacing:3px;margin-bottom:4px;line-height:1.05;white-space:nowrap;overflow:hidden}.scene-emoji img,.scene-emoji svg{max-height:46px;width:auto}.scene-setup{font-size:15px;line-height:1.4;margin-bottom:4px}.scene-prompt,.scene-intent{margin-bottom:12px}.scene-card .options{gap:8px}.scene-card .option{padding:8px 12px;font-size:15px;min-height:0}.scene-card .option-main{flex-direction:row;align-items:center;justify-content:space-between;gap:10px}.scene-card .option .option-reading{font-size:11px;margin-top:1px}.scene-card .option .option-tts,.scene-card .option .btn-tts{width:34px;height:34px;min-width:34px}.scene-card .option .mark{right:46px}.scene-card .scene-intent{margin-bottom:10px}.scene-card .scene-intent .intent-label{margin-bottom:4px}.scene-actions{margin-top:8px}.scene-actions .scene-next-hint{font-size:11px}.scene-mobile-tabs{margin-bottom:6px;padding:3px}.scene-mobile-tabs button{padding:5px 8px;font-size:12px}}@media(max-width:860px){.practice-layout{grid-template-columns:1fr}.practice-panel,.practice-surface{padding:14px}.practice-title{font-size:21px}.courseware-layout,.courseware-fields,.courseware-item{grid-template-columns:1fr}.courseware-draft-head{align-items:stretch;flex-direction:column}.courseware-item textarea,.courseware-item-status{grid-column:auto}}.agent-anchor-image{display:block;width:min(220px,100%);margin-top:8px;border-radius:12px}.agent-anchor-video{width:min(100%,420px);max-height:320px;margin-top:10px;border-radius:14px;object-fit:cover;background:#111827}.agent-action-detail{width:100%;margin-top:8px;white-space:pre-wrap;color:var(--muted)}.today-content{display:grid;gap:16px}.today-loading,.today-error{align-items:center;background:color-mix(in srgb,var(--paper) 90%,white);border:1px solid var(--line);border-radius:18px;color:var(--ink-soft);display:flex;flex-direction:column;gap:12px;justify-content:center;min-height:280px;padding:28px;text-align:center}.today-hero{background:radial-gradient(circle at 88% 18%,color-mix(in srgb,var(--gold) 22%,transparent),transparent 28%),radial-gradient(circle at 12% 100%,color-mix(in srgb,var(--matcha) 17%,transparent),transparent 32%),linear-gradient(135deg,color-mix(in srgb,var(--indigo) 95%,#fff),color-mix(in srgb,var(--indigo-soft) 84%,#1d3555));border:1px solid color-mix(in srgb,var(--indigo) 55%,white);border-radius:24px;box-shadow:0 22px 54px color-mix(in srgb,var(--indigo) 20%,transparent);color:#fff;overflow:hidden;padding:clamp(24px,5vw,48px);position:relative}.today-hero:after{color:#ffffff14;content:"\7d9a";font-size:clamp(140px,22vw,260px);font-weight:900;line-height:.8;pointer-events:none;position:absolute;right:-10px;top:18px}.today-eyebrow,.today-card-kicker,.graduation-kicker{color:color-mix(in srgb,var(--gold) 78%,white);font-size:12px;font-weight:900;letter-spacing:.16em;text-transform:uppercase}.today-hero h1{color:inherit;font-size:clamp(30px,5vw,54px);margin:8px 0 10px;position:relative;z-index:1}.today-hero>p{color:#ffffffd6;font-size:clamp(15px,2vw,18px);line-height:1.75;margin:0;max-width:760px;position:relative;z-index:1}.today-habit{background:#ffffff1a;border:1px solid rgba(255,255,255,.16);border-radius:999px;color:#ffffffdb;display:inline-flex;font-size:13px;margin-top:18px;padding:7px 12px;position:relative;z-index:1}.today-primary{align-items:flex-start;background:linear-gradient(135deg,#fffdf6,color-mix(in srgb,var(--gold) 24%,white));border:0;color:var(--indigo);display:flex;flex-direction:column;font-size:18px;gap:3px;margin-top:22px;min-width:min(100%,310px);padding:15px 20px;position:relative;z-index:1}.today-primary small{color:color-mix(in srgb,var(--indigo) 62%,transparent);font-size:11px;font-weight:700}.today-card,.today-map-card{background:color-mix(in srgb,var(--paper) 92%,white);border:1px solid var(--line);border-radius:18px;box-shadow:0 12px 30px color-mix(in srgb,var(--ink) 7%,transparent);color:var(--ink);padding:18px 20px;position:relative;text-align:left;width:100%}button.today-card{cursor:pointer;font:inherit}.today-card strong{display:block;font-size:16px;line-height:1.55;margin-top:5px}.today-card-kicker{color:var(--indigo-soft)}.today-open-loop{border-left:4px solid var(--sakura-deep)}.today-open-loop:hover{border-color:var(--sakura-deep);transform:translateY(-1px)}.today-open-loop em{color:var(--sakura-deep);display:block;font-size:13px;font-style:normal;font-weight:850;margin-top:9px}.today-goal-hook{background:linear-gradient(135deg,color-mix(in srgb,var(--gold) 11%,white),color-mix(in srgb,var(--paper) 88%,white))}.today-card-dismiss{background:transparent;border:0;color:var(--ink-faint);cursor:pointer;font-size:22px;line-height:1;position:absolute;right:10px;top:8px}.today-glance{display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}.today-metric{background:color-mix(in srgb,var(--paper) 90%,white);border:1px solid var(--line);border-radius:16px;display:grid;gap:3px;padding:15px;text-align:center}.today-metric strong{color:var(--indigo);font-size:clamp(22px,4vw,32px)}.today-metric span{color:var(--ink-faint);font-size:12px;font-weight:750}.today-card-head{align-items:center;display:flex;gap:16px;justify-content:space-between;margin-bottom:14px}.today-card-head strong{display:block;font-size:15px;margin-top:4px}.mastery-map{min-width:0}.mastery-map-grid{display:grid;gap:9px;grid-template-columns:repeat(auto-fit,minmax(112px,1fr))}.mastery-cell{--level: 0;background:linear-gradient(0deg,color-mix(in srgb,var(--matcha) 74%,var(--indigo)) 0 calc(var(--level) * 100%),color-mix(in srgb,var(--paper-warm) 76%,white) calc(var(--level) * 100%) 100%);border:1px solid color-mix(in srgb,var(--line) 78%,var(--indigo-soft));border-radius:14px;color:var(--ink);cursor:pointer;display:grid;gap:5px;min-height:92px;overflow:hidden;padding:12px;position:relative;text-align:left}.mastery-cell:after{background:linear-gradient(120deg,transparent,rgba(255,255,255,.28),transparent);content:"";inset:0;pointer-events:none;position:absolute;transform:translate(-100%);transition:transform .35s ease}.mastery-cell:hover:after,.mastery-cell.selected:after{transform:translate(100%)}.mastery-cell.selected{border-color:var(--indigo);box-shadow:0 0 0 2px color-mix(in srgb,var(--indigo) 16%,transparent)}.mastery-cell-label{font-size:12px;font-weight:850;position:relative;z-index:1}.mastery-cell strong{font-size:22px;position:relative;z-index:1}.mastery-cell i{background:#ffffff73;border-radius:999px;bottom:8px;height:3px;left:12px;position:absolute;right:12px}.mastery-map-detail,.mastery-map-empty{background:color-mix(in srgb,var(--paper-warm) 55%,transparent);border-radius:12px;color:var(--ink-soft);font-size:13px;line-height:1.55;margin-top:10px;min-height:42px;padding:10px 12px}.mastery-map-detail strong{color:var(--indigo)}.mastery-map.compact .mastery-map-grid{grid-template-columns:repeat(auto-fit,minmax(90px,1fr))}.mastery-map.compact .mastery-cell{min-height:78px;padding:10px}.mastery-map.compact .mastery-cell strong{font-size:18px}.practice-mastery-map .mastery-map-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.practice-mastery-map .mastery-cell{min-height:76px}.graduation-celebration{align-items:center;background:color-mix(in srgb,var(--indigo) 70%,transparent);display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:2400}.graduation-card{background:radial-gradient(circle at 90% 12%,color-mix(in srgb,var(--gold) 22%,transparent),transparent 28%),color-mix(in srgb,var(--paper) 95%,white);border:1px solid color-mix(in srgb,var(--gold) 55%,white);border-radius:24px;box-shadow:0 30px 90px #00000052;max-width:520px;padding:clamp(26px,6vw,46px);position:relative;text-align:center;width:100%;z-index:1}.graduation-seal{align-items:center;background:var(--sakura-deep);border:4px double rgba(255,255,255,.78);border-radius:50%;color:#fff;display:inline-flex;font-size:28px;font-weight:900;height:66px;justify-content:center;margin-bottom:14px;width:66px}.graduation-kicker{color:var(--sakura-deep)}.graduation-card h2{color:var(--indigo);font-size:clamp(24px,5vw,36px);margin:8px 0 14px}.graduation-items{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.graduation-items strong{background:color-mix(in srgb,var(--matcha) 16%,white);border:1px solid color-mix(in srgb,var(--matcha) 38%,transparent);border-radius:999px;color:var(--matcha-dark);padding:8px 13px}.graduation-card p{color:var(--ink-soft);line-height:1.65;margin:16px 0 20px}.graduation-petals{inset:0;pointer-events:none;position:absolute}.graduation-petals i{background:var(--sakura);border-radius:100% 0;height:16px;left:calc(50% - 8px);position:absolute;top:12%;width:11px}.graduation-petals i:nth-child(2){left:38%;top:8%}.graduation-petals i:nth-child(3){left:62%;top:14%}.graduation-petals i:nth-child(4){left:30%;top:18%}.graduation-petals i:nth-child(5){left:70%;top:10%}@media(max-width:860px){.today-content{gap:12px}.today-hero{border-radius:18px;padding:22px 18px}.today-hero:after{font-size:150px}.today-primary{width:100%}.today-card,.today-map-card{border-radius:14px;padding:15px}.today-card-head{align-items:stretch;flex-direction:column}.today-card-head .btn-secondary{width:100%}.mastery-map-grid,.mastery-map.compact .mastery-map-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.today-glance{gap:6px}.today-metric{padding:11px 5px}}.courseware-list-main{align-items:center;display:flex;gap:12px;justify-content:space-between;width:100%}.courseware-list-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px;width:100%}.courseware-progress-duo{display:grid;gap:5px;min-width:92px}.courseware-progress-duo span{align-items:center;display:flex;gap:6px;justify-content:flex-end}.courseware-progress-duo small{color:var(--ink-faint);font-size:11px;font-weight:800}.courseware-progress-duo b{color:var(--moss);font-size:13px}.courseware-plan{background:color-mix(in srgb,var(--paper) 86%,white);border:1px solid var(--line);border-radius:8px;padding:10px;width:100%}.courseware-plan-toggle{align-items:center;background:transparent;border:0;color:var(--ink);cursor:pointer;display:flex;font-family:inherit;font-size:13px;font-weight:850;justify-content:space-between;padding:0;width:100%}.courseware-plan-toggle strong{color:var(--moss);font-size:12px}.courseware-plan-collapsed-actions{display:flex;justify-content:flex-end;margin-top:9px}.courseware-plan-steps{display:none}.courseware-plan-steps.expanded{display:block;margin-top:10px}.courseware-step-strip{display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(86px,1fr))}.courseware-step-dot{align-items:center;background:#fff;border:1px solid var(--line);border-radius:8px;color:var(--ink-soft);cursor:pointer;display:grid;gap:5px;grid-template-columns:24px minmax(0,1fr);min-height:42px;padding:7px 8px;text-align:left}.courseware-step-dot span{align-items:center;aspect-ratio:1;background:var(--paper-warm);border-radius:999px;color:var(--ink);display:inline-flex;font-size:12px;font-weight:900;justify-content:center}.courseware-step-dot strong{color:inherit;display:block;font-size:12px;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.courseware-step-dot.active,.courseware-step-dot.selected{border-color:color-mix(in srgb,var(--moss) 50%,var(--line));color:var(--moss)}.courseware-step-dot.done span{background:var(--moss);color:#fff}.courseware-step-detail{border-top:1px solid var(--line);margin-top:10px;padding-top:10px}.courseware-step-detail-head{align-items:flex-start;display:flex;gap:10px;justify-content:space-between}.courseware-step-detail-head strong{color:var(--ink);display:block;font-size:14px;line-height:1.35}.courseware-step-detail-head>span,.courseware-step-status{color:var(--ink-faint);font-size:12px;white-space:nowrap}.courseware-step-status{border-radius:999px;display:inline-flex;margin-bottom:4px}.courseware-step-status.done{color:var(--moss)}.courseware-step-status.active{color:var(--sakura-deep)}.courseware-step-detail p{color:var(--ink-soft);font-size:13px;line-height:1.5;margin:8px 0 0}.courseware-step-success{background:color-mix(in srgb,var(--moss) 9%,white);border-radius:8px;padding:8px 9px}.courseware-step-examples{display:grid;gap:6px;margin-top:10px}.courseware-step-example{background:#fff;border:1px solid var(--line);border-radius:8px;padding:7px 8px}.courseware-step-example span,.courseware-step-example small{display:block;line-height:1.35}.courseware-step-example span{color:var(--ink);font-size:13px}.courseware-step-example small{color:var(--ink-faint);font-size:11px;margin-top:3px}.courseware-step-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.courseware-practice-card{background:#fff;border:1px solid var(--line);border-radius:8px;display:grid;gap:10px;margin-top:12px;padding:12px}.courseware-practice-head,.courseware-practice-correct,.courseware-practice-option-row{align-items:center;display:flex;gap:8px}.courseware-practice-head{justify-content:space-between}.courseware-practice-head strong,.courseware-practice-result strong{color:var(--moss)}.courseware-practice-head span{color:var(--ink-faint);font-size:12px;font-weight:800}.courseware-practice-card h4,.courseware-practice-card p{margin:0}.courseware-practice-options{display:flex;flex-wrap:wrap;gap:8px}.courseware-practice-option{background:#fff;border:1px solid var(--paper-warm);border-radius:8px;color:var(--ink);cursor:pointer;font-family:inherit;font-size:15px;padding:10px 12px;text-align:left}.courseware-practice-option:hover{border-color:var(--sakura);color:var(--sakura-deep)}.courseware-practice-free{display:grid;gap:8px}.courseware-practice-free textarea{border:1px solid var(--paper-warm);border-radius:8px;font:inherit;min-height:84px;padding:10px;resize:vertical;width:100%}.courseware-practice-tts{align-items:center;background:color-mix(in srgb,var(--paper) 72%,white);border:1px solid var(--paper-warm);border-radius:999px;color:var(--ink-soft);cursor:pointer;display:inline-flex;height:30px;justify-content:center;min-width:30px}.courseware-practice-result{border-radius:8px;display:grid;gap:8px;padding:10px}.courseware-practice-result.ok{background:#598b5f1a}.courseware-practice-result.miss{background:#b3515714}.courseware-practice-correct{flex-wrap:wrap}.courseware-practice-correct span{color:var(--ink-faint);font-size:12px;font-weight:800}.courseware-practice-skeleton{background:linear-gradient(90deg,#0000000a,#00000017,#0000000a);border-radius:8px;height:48px}.agent-panel.fullscreen{height:auto!important;inset:24px auto 24px 24px!important;max-height:none!important;max-width:none!important;width:auto!important}.agent-panel.fullscreen .agent-bubble-text{max-width:min(860px,92%)}@media(max-width:540px){.courseware-list-main,.courseware-step-detail-head{align-items:stretch;flex-direction:column}.courseware-step-strip{grid-template-columns:1fr}.agent-panel.fullscreen{border-radius:0!important;inset:0!important}}.skeleton{position:relative;overflow:hidden;background:color-mix(in srgb,var(--ink-faint, #a1988a) 22%,var(--paper-warm, #efe7d7));border-radius:6px}.skeleton:after{content:"";position:absolute;inset:0;transform:translate(-100%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.5),transparent);animation:skeleton-shimmer 1.3s ease-in-out infinite}@keyframes skeleton-shimmer{to{transform:translate(100%)}}.skeleton-line{height:14px}.skeleton-line.lg{height:24px;width:62%}.skeleton-line.sm{height:12px;width:40%}.skeleton-block{height:140px;border-radius:10px}.skeleton-card{display:flex;flex-direction:column;gap:12px;padding:18px;border:1px solid var(--line, #e4dbc9);border-radius:12px;background:var(--surface, #fcfaf4)}.empty-state-icon{color:var(--ink-faint, #a1988a);line-height:0}.empty-state-title{font-size:15px;font-weight:600;color:var(--ink, #221f1a)}.empty-state-hint{font-size:13px;color:var(--ink-faint, #a1988a);max-width:300px;line-height:1.65}.empty-state-action{margin-top:6px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}.sr-only{border:0!important;clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;height:1px!important;margin:-1px!important;overflow:hidden!important;padding:0!important;position:absolute!important;white-space:nowrap!important;width:1px!important}.busy-spinner{animation:busy-spin .78s linear infinite;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;flex:0 0 auto;height:15px;opacity:.8;vertical-align:-2px;width:15px}@keyframes busy-spin{to{transform:rotate(360deg)}}button[aria-busy=true]{align-items:center;display:inline-flex;gap:8px;justify-content:center}.error-state{align-items:center;background:color-mix(in srgb,#a73c32 6%,var(--surface, #fcfaf4));border:1px solid color-mix(in srgb,#a73c32 28%,var(--line, #e4dbc9));border-radius:12px;display:grid;gap:12px;grid-template-columns:auto minmax(0,1fr) auto;padding:16px}.error-state-mark{align-items:center;background:#a73c32;border-radius:50%;color:#fff;display:inline-flex;font-weight:900;height:28px;justify-content:center;width:28px}.error-state-copy{display:grid;gap:3px;min-width:0}.error-state-copy strong{color:var(--ink, #221f1a);font-size:14px}.error-state-copy span{color:var(--ink-soft, #5c564c);font-size:12px;line-height:1.55}.error-state-retry{min-height:40px}.empty-state{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;padding:34px 20px;background:radial-gradient(circle at 88% 12%,color-mix(in srgb,var(--accent, var(--matcha)) 8%,transparent),transparent 32%),color-mix(in srgb,var(--surface, #fcfaf4) 94%,transparent);border:1px solid var(--line, #e4dbc9);border-radius:14px;min-height:180px}.profile-quick-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.profile-theme-quick,.profile-tools-toggle{align-items:center;background:color-mix(in srgb,var(--paper) 92%,white 8%);border:1px solid var(--line);border-radius:8px;color:var(--ink);cursor:pointer;display:inline-flex;font:inherit;font-size:13px;font-weight:800;gap:7px;justify-content:center;min-height:40px;padding:7px 11px}.profile-tools-toggle{align-items:center;background:#fff;border:1px solid var(--paper-warm);border-radius:8px;color:var(--ink-soft);cursor:pointer;font-family:inherit;font-size:14px;gap:6px;justify-content:center;min-height:42px;padding:5px 11px;white-space:nowrap;display:inline-flex;min-width:78px}.settings-backdrop{background:#16120d57;inset:0;opacity:0;position:fixed;transition:opacity .18s ease;z-index:1180}.settings-backdrop.show{opacity:1}.settings-panel[hidden],.settings-backdrop[hidden]{display:none!important}.modal-backdrop.show{display:flex;z-index:1300}.settings-panel.show{opacity:1;transform:translateY(0) scale(1)}.settings-panel-head{align-items:center;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;padding:20px 22px 16px;width:100%}.settings-panel-heading{align-items:flex-end;display:flex;gap:14px;min-width:0}.settings-panel-head h2{color:var(--ink);font-size:24px;line-height:1;margin:4px 0 0}.settings-kicker{color:var(--ink-faint);font-size:11px;font-weight:800;letter-spacing:.12em}.settings-close{align-items:center;background:transparent;border:1px solid var(--line);border-radius:50%;color:var(--ink-soft);cursor:pointer;display:inline-flex;font-size:24px;height:42px;justify-content:center;width:42px}.settings-scroll{display:grid;gap:20px;overflow-y:auto;padding:18px 22px 24px;overscroll-behavior:contain;width:100%}.settings-group{display:grid;gap:10px}.settings-group-title{color:var(--ink-faint);font-size:11px;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.settings-grid{display:grid;gap:9px;grid-template-columns:repeat(3,minmax(0,1fr))}.settings-grid-two{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-panel .btn-add-profile{align-items:flex-start;background:color-mix(in srgb,var(--surface) 94%,white 6%);border:1px solid var(--line);border-radius:10px;color:var(--ink);display:grid;gap:2px;justify-items:start;min-height:70px;padding:12px 13px;position:relative;text-align:left;white-space:normal;width:100%}.settings-panel .btn-add-profile>span:first-child{font-size:14px;font-weight:850}.settings-panel .btn-add-profile small{color:var(--ink-faint);font-size:11px;font-weight:600;line-height:1.35}.settings-panel .profile-help-icon{align-self:center;background:color-mix(in srgb,var(--indigo-soft) 72%,white);color:var(--indigo);grid-column:2;grid-row:1;justify-self:end;position:static}.settings-panel .btn-with-help{grid-template-columns:minmax(0,1fr) auto}.settings-panel .settings-action-card{align-items:start;gap:0;padding:0}.settings-panel .settings-action-main{appearance:none;background:transparent;border:0;color:inherit;cursor:pointer;display:grid;font:inherit;gap:2px;grid-column:1;grid-row:1;justify-items:start;min-height:68px;padding:12px 8px 12px 13px;text-align:left;width:100%}.settings-panel .settings-action-main>.profile-action-label{font-size:14px;font-weight:850}.settings-panel .settings-action-main:focus-visible,.settings-panel .profile-help-icon:focus-visible{outline:2px solid color-mix(in srgb,var(--indigo) 72%,white);outline-offset:-3px}.settings-panel .settings-action-card>.profile-help-icon{cursor:pointer;flex-basis:28px;height:28px;margin:10px 10px 0 0;padding:0;width:28px}.settings-panel .btn-with-help>.profile-action-label{grid-column:1;grid-row:1}.settings-panel .btn-with-help>small{grid-column:1 / -1;grid-row:2}.settings-panel .settings-danger{color:#8f332d}html[data-theme] .settings-panel .key-status.engine-status.engine-status-mobile{background:color-mix(in srgb,var(--surface) 94%,white 6%);border:1px solid var(--line);border-radius:10px;color:var(--ink-faint);display:flex;margin:0 0 1px;min-height:38px;padding:8px 10px}html[data-theme] .settings-panel .engine-status-mobile .engine-status-title{color:var(--ink-faint)}@media(max-width:540px){.settings-panel-heading{align-items:flex-start;flex-direction:column;gap:8px}}.settings-panel .engine-status-mobile:empty{display:none}.settings-panel .theme-switch{display:grid;gap:8px;grid-template-columns:repeat(5,minmax(0,1fr));padding:6px;width:100%}.settings-panel .theme-choice{justify-content:center;min-height:46px;min-width:0}.settings-legal{color:var(--ink-faint);font-size:11px;padding-top:2px;text-align:center}.settings-legal a{color:inherit}.practice-profile-details{align-self:start;background:var(--surface);border:1px solid var(--line);border-radius:12px;min-width:0;overflow:hidden}.practice-profile-details>summary,.courseware-hints>summary{align-items:center;color:var(--ink);cursor:pointer;display:flex;font-size:13px;font-weight:850;justify-content:space-between;list-style:none;min-height:46px;padding:10px 13px}.practice-profile-details>summary::-webkit-details-marker,.courseware-hints>summary::-webkit-details-marker{display:none}.practice-profile-details>summary:after,.courseware-hints>summary:after{color:var(--ink-faint);content:"\ff0b";font-size:16px;margin-left:8px}.practice-profile-details[open]>summary:after,.courseware-hints[open]>summary:after{content:"\2212"}.practice-profile-details>summary small,.courseware-hints>summary small{color:var(--ink-faint);font-size:11px;font-weight:600;margin-left:auto}.practice-profile-details .practice-panel{border:0;border-radius:0;box-shadow:none}.courseware-hints{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:12px;background:color-mix(in srgb,var(--paper) 90%,white 10%);border:1px solid var(--line);border-radius:10px;overflow:hidden}.courseware-hint-grid{display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr));padding:0 12px 12px}@media(max-width:860px){.settings-panel{border-radius:22px 22px 0 0;inset:auto 0 0;max-height:min(86dvh,760px);transform:translateY(100%);width:100%}.settings-panel.show{transform:translateY(0)}.settings-panel-head{padding:16px 18px 14px}.settings-scroll{gap:18px;padding:15px 16px calc(24px + env(safe-area-inset-bottom))}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-panel .btn-add-profile{min-height:76px}.settings-panel .theme-switch{grid-template-columns:repeat(3,minmax(0,1fr))}.mobile-menu-body .profile-quick-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%}.mobile-menu-body .profile-theme-quick,.mobile-menu-body .btn-upgrade,.mobile-menu-body .profile-tools-toggle{display:inline-flex!important;min-height:48px;min-width:0;width:100%}.practice-profile-details{width:100%}.practice-profile-details>summary{min-height:50px}.courseware-hint-grid{grid-template-columns:1fr}.courseware-form{gap:10px}.courseware-fields{gap:8px}.courseware-form textarea{min-height:112px}.error-state{grid-template-columns:auto minmax(0,1fr)}.error-state-retry{grid-column:1 / -1;width:100%}#appContainer.ready~.legal-footer{display:none}}@media(max-width:860px){#godan.active{gap:8px}#godan .verb-picker{gap:6px;margin-bottom:0;overflow-y:hidden;padding:6px;scrollbar-width:none}#godan .verb-chip{min-height:38px;padding:7px 10px}#godan .track{gap:4px;margin-bottom:0;padding:6px}#godan .track .seg{padding:5px 2px}#godan .form-card{min-height:0;padding:10px 11px}#godan .form-card-head{margin-bottom:4px}#godan .form-name{font-size:20px}#godan .form-use{font-size:13px;line-height:1.4;margin-bottom:7px}#godan .form-example{padding:8px}#godan .example-toolbar{align-items:center;flex-direction:row;gap:6px;margin-bottom:6px}#godan .example-toolbar .btn-ai{min-height:36px;padding:7px 9px;width:auto}#godan .example-list{gap:6px}#godan .example-item{padding:7px 8px}#godan .example-list:not(.mobile-expanded) .example-item.mobile-extra{display:none}#godan .example-mobile-toggle{background:transparent;border:0;color:var(--indigo);cursor:pointer;display:block;font:inherit;font-size:12px;font-weight:800;padding:5px 4px 1px;text-align:left}#scene[data-mobile-pane=setup] .scene-toolbar{display:block;padding:8px}.scene-primary-row{display:grid;gap:7px;grid-template-columns:minmax(0,1fr) auto}.scene-primary-row #sceneTopic,.scene-primary-row #btnGenerateScenes{grid-column:auto;min-height:42px;width:auto}.scene-primary-row #btnGenerateScenes{padding-inline:12px;white-space:nowrap}.scene-more{display:block;margin-top:7px}.scene-more>summary,.courseware-library>summary{align-items:center;color:var(--ink);cursor:pointer;display:flex;font-size:12px;font-weight:850;justify-content:space-between;list-style:none;min-height:40px;padding:8px 10px}.scene-more>summary::-webkit-details-marker,.courseware-library>summary::-webkit-details-marker{display:none}.scene-more>summary:after,.courseware-library>summary:after{color:var(--ink-faint);content:"\ff0b";font-size:15px;margin-left:8px}.scene-more[open]>summary:after,.courseware-library[open]>summary:after{content:"\2212"}.scene-more>summary small,.courseware-library>summary small{color:var(--ink-faint);font-size:10px;font-weight:650;margin-left:auto}.scene-more-controls{display:grid;gap:7px;grid-template-columns:72px repeat(2,minmax(0,1fr));padding-top:7px}.scene-more-controls #sceneCount,.scene-more-controls #btnSceneHistory,.scene-more-controls #btnResetScenes{grid-column:auto;min-height:40px;width:100%}.scene-mobile-tabs{margin-bottom:5px;padding:3px}.scene-mobile-tabs button{min-height:34px;padding:4px 8px}.scene-status:empty{display:none}.scene-status:not(:empty){margin-bottom:4px;min-height:0}.scene-progress,.jita-progress{gap:3px;margin-bottom:7px;padding:3px}.progress-dot{height:4px}.scene-card{margin-bottom:0;padding:10px 11px}.scene-card .mode-chip{margin-bottom:6px;padding:3px 8px}.scene-card .scene-emoji{margin-bottom:4px;padding:4px 8px}.scene-card .scene-image-wrap{margin-bottom:6px}.scene-card .scene-visual-status{gap:8px;margin-bottom:6px;min-height:82px;padding:9px 10px}.scene-card .scene-visual-symbol{font-size:24px}.scene-card .scene-image,.scene-card .scene-video{max-height:132px}.scene-card .scene-setup{font-size:14px;line-height:1.35}.scene-card .scene-intent{font-size:13px;line-height:1.4;margin:6px 0 7px;padding:7px 9px}.scene-card .scene-prompt{font-size:13px;margin-bottom:7px}.scene-card .options{gap:6px}.scene-card .option{padding:6px 8px}.scene-card .option-text{align-items:baseline;display:flex;flex-wrap:wrap;gap:1px 8px}.scene-card .option .option-reading{display:inline-block;letter-spacing:.5px;margin-top:0}.scene-card .option .option-tts,.scene-card .option .btn-tts{height:32px;min-width:32px;width:32px}.scene-card .option .mark{right:42px}.scene-actions{margin-top:6px}.scene-actions .scene-next-hint{display:none}.scene-actions .btn-next{min-height:42px}#courseware .courseware-layout{gap:8px;grid-template-columns:1fr}#courseware .courseware-form{gap:8px;padding:10px}#courseware .courseware-hints{margin-bottom:0}#courseware .courseware-hints>summary{min-height:40px;padding:8px 10px}#courseware .courseware-fields{display:grid;gap:7px;grid-template-columns:minmax(0,1fr) 92px 104px;margin-bottom:0}#courseware .courseware-fields input,#courseware .courseware-fields select{min-width:0;padding:8px}#courseware #coursewareImage{grid-column:1 / -1;min-height:44px}#courseware .courseware-form textarea{height:92px;min-height:92px}#courseware .practice-actions{margin-top:0}.courseware-library{background:color-mix(in srgb,var(--paper) 90%,white 10%);border:1px solid var(--line);border-radius:10px;display:block;overflow:hidden}.courseware-library .courseware-list{border:0;border-radius:0;box-shadow:none;max-height:calc(100dvh - 180px);overflow-y:auto;padding:10px 12px}}.tab-icon-today{background-image:url(/static/assets/nav-today.svg)!important;color:transparent!important;display:block!important;font-size:0!important}.tab[data-tab=today]:before{content:"\4eca";background:color-mix(in srgb,var(--gold) 20%,white);border-color:color-mix(in srgb,var(--gold) 42%,transparent);color:#815b20;display:none!important}.theme-season-icon,.settings-gear{align-items:center;display:inline-flex;flex:0 0 20px;height:20px;justify-content:center;width:20px}.theme-season-icon svg,.settings-gear svg{display:block;height:20px;width:20px}.theme-season-icon path{fill:color-mix(in srgb,var(--accent, var(--matcha)) 20%,transparent);stroke:var(--accent-strong, var(--matcha-dark));stroke-linejoin:round;stroke-width:1.35}.theme-season-icon circle{fill:var(--accent, var(--matcha));stroke:color-mix(in srgb,var(--paper) 84%,white);stroke-width:1.15}.settings-gear{font-size:14px;color:var(--ink-soft)}.settings-gear svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.65}.profile-theme-quick[aria-expanded=true],.profile-tools-toggle[aria-expanded=true]{background:color-mix(in srgb,var(--accent-tint, var(--indigo-soft)) 76%,var(--paper));border-color:color-mix(in srgb,var(--accent, var(--indigo)) 48%,var(--line));color:var(--accent-strong, var(--indigo))}.settings-panel{background:var(--paper);border:1px solid var(--line);border-radius:18px;box-shadow:0 30px 90px #16120d3d;display:grid;gap:0;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);opacity:0;overflow:hidden;padding:0;position:fixed;transform:translateY(-8px) scale(.985);transition:opacity .18s ease,transform .18s ease;width:min(620px,calc(100vw - 32px));z-index:1200;bottom:auto;left:auto!important;max-height:min(calc(100dvh - 116px),760px);right:clamp(18px,3vw,44px);top:clamp(76px,8vh,104px)}.theme-backdrop{background:#16120d47;inset:0;opacity:0;position:fixed;transition:opacity .18s ease;z-index:1180}.theme-backdrop.show{opacity:1}.theme-backdrop[hidden],.theme-panel[hidden]{display:none!important}.theme-panel{background:radial-gradient(circle at 92% 0,color-mix(in srgb,var(--accent, var(--matcha)) 13%,transparent),transparent 30%),color-mix(in srgb,var(--paper) 96%,white 4%);border:1px solid var(--line);border-radius:18px;box-shadow:0 30px 90px #16120d3d;display:grid;gap:0;left:auto!important;max-height:min(calc(100dvh - 116px),700px);opacity:0;overflow:hidden;position:fixed;right:clamp(18px,3vw,44px);top:clamp(76px,8vh,104px);transform:translateY(-8px) scale(.985);transition:opacity .18s ease,transform .18s ease;width:min(520px,calc(100vw - 32px));z-index:1200}.theme-panel.show{opacity:1;transform:translateY(0) scale(1)}.theme-panel-head{align-items:center;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;padding:19px 20px 16px}.theme-panel-head h2{color:var(--ink);font-family:var(--font-mincho, serif);font-size:24px;font-weight:650;line-height:1;margin:5px 0 0}.theme-panel-kicker{color:var(--accent-strong, var(--indigo));font-size:11px;font-weight:850;letter-spacing:.14em}.theme-panel-close{align-items:center;background:color-mix(in srgb,var(--paper) 86%,transparent);border:1px solid var(--line);border-radius:50%;color:var(--ink-soft);cursor:pointer;display:inline-flex;font-size:24px;height:42px;justify-content:center;width:42px}.theme-gallery{display:grid;gap:9px;grid-template-columns:repeat(2,minmax(0,1fr));overflow-y:auto;padding:16px 18px 10px}.theme-card{align-items:center;appearance:none;background:color-mix(in srgb,var(--surface, var(--paper)) 94%,white 6%);border:1px solid var(--line);border-radius:13px;color:var(--ink);cursor:pointer;display:grid;gap:11px;grid-template-columns:78px minmax(0,1fr) 22px;min-height:82px;overflow:hidden;padding:7px 10px 7px 7px;position:relative;text-align:left;transition:background .16s ease,border-color .16s ease,transform .16s ease;width:100%}.theme-card:last-child{grid-column:1 / -1}.theme-card:hover,.theme-card:focus-visible{background:color-mix(in srgb,var(--accent-tint, var(--indigo-soft)) 58%,var(--paper));border-color:color-mix(in srgb,var(--accent, var(--indigo)) 42%,var(--line));outline:none;transform:translateY(-1px)}.theme-card.active{background:color-mix(in srgb,var(--accent-tint, var(--indigo-soft)) 72%,var(--paper));border-color:var(--accent, var(--indigo));box-shadow:0 0 0 1px color-mix(in srgb,var(--accent, var(--indigo)) 18%,transparent)}.theme-card:after{content:none!important}.theme-choice-art{display:block!important;align-self:stretch;background-position:center;background-repeat:no-repeat;background-size:cover;border:1px solid color-mix(in srgb,var(--line) 78%,transparent);border-radius:9px;min-height:66px}html[data-login-season=spring]{--login-season-bg: url(/static/assets/login-season-spring.jpg);--login-panel-bg: url(/static/assets/login-panel-season-spring.jpg);--login-season-action: #9f4264;--login-season-accent: #d76b91;--login-season-glow: rgba(226, 118, 155, .28);--shun-theme-preview: url(/static/assets/hero-shun-spring.png)}html[data-login-season=summer]{--login-season-bg: url(/static/assets/login-season-summer.jpg);--login-panel-bg: url(/static/assets/login-panel-season-summer.jpg);--login-season-action: #1f6245;--login-season-accent: #6a9d70;--login-season-glow: rgba(82, 142, 91, .26);--shun-theme-preview: url(/static/assets/hero-shun-summer.png)}html[data-login-season=autumn]{--login-season-bg: url(/static/assets/login-season-autumn.jpg);--login-panel-bg: url(/static/assets/login-panel-season-autumn.jpg);--login-season-action: #874019;--login-season-accent: #c76c2e;--login-season-glow: rgba(209, 102, 35, .26);--shun-theme-preview: url(/static/assets/hero-shun-autumn.png)}html[data-login-season=winter]{--login-season-bg: url(/static/assets/login-season-winter.jpg);--login-panel-bg: url(/static/assets/login-panel-season-winter.jpg);--login-season-action: #244f7b;--login-season-accent: #6f91bd;--login-season-glow: rgba(83, 127, 184, .28);--shun-theme-preview: url(/static/assets/hero-shun-winter.png)}.theme-choice-art-shun{background-image:var(--shun-theme-preview)}.theme-choice-art-sakura{background-image:linear-gradient(#fff4f714,#d98aab2e),url(/static/assets/hero-shun-spring.png)}.theme-choice-art-indigo{background-image:linear-gradient(#243d5c14,#243d5c38),url(/static/assets/washi-fuji-indigo.png)}.theme-choice-art-matcha{background-image:linear-gradient(#4f75490d,#4f75492e),url(/static/assets/hero-shun-summer.png)}.theme-choice-art-yomatsuri{background-image:linear-gradient(#08162a05,#08162a33),url(/static/assets/washi-fuji-yomatsuri.png)}.theme-choice-copy{display:grid!important;gap:3px;min-width:0}.theme-choice-copy strong{color:var(--ink);font-size:14px;font-weight:900}.theme-choice-copy small{color:var(--ink-faint);font-size:11px;font-weight:650}.theme-choice-check{align-items:center;background:var(--accent-strong, var(--indigo));border-radius:50%;color:#fff;display:inline-flex!important;font-size:11px;height:20px;justify-content:center;opacity:0;transform:scale(.7);transition:opacity .16s ease,transform .16s ease;width:20px}.theme-card.active .theme-choice-check{opacity:1;transform:scale(1)}.theme-panel-note{color:var(--ink-faint);font-size:11px;line-height:1.5;margin:0;padding:0 20px 17px;text-align:center}#today .today-primary.btn-primary small{color:currentColor!important;font-size:12px;font-weight:720;opacity:.82}html:not([data-theme=shun]) .today-hero{background:linear-gradient(90deg,color-mix(in srgb,var(--indigo) 96%,transparent) 0%,color-mix(in srgb,var(--indigo) 86%,transparent) 44%,color-mix(in srgb,var(--indigo) 30%,transparent) 74%,transparent 100%),var(--theme-art) center / cover no-repeat}html[data-theme=yomatsuri] .today-hero{background:linear-gradient(90deg,#0e2034fa,#0e2034e0 44%,#0e203447,#0e203405),var(--theme-art) center / cover no-repeat}html[data-theme=yomatsuri] #today .today-primary.btn-primary{color:#17304c!important}.agent-panel{position:fixed;max-height:calc(100dvh - 44px);display:flex;flex-direction:column;z-index:901;opacity:0;pointer-events:none;transition:opacity .18s ease,transform .18s ease;border:1px solid var(--line);border-radius:16px;bottom:24px;box-shadow:0 26px 72px color-mix(in srgb,var(--ink) 28%,transparent);height:min(650px,calc(100dvh - 48px));max-width:calc(100vw - 32px);overflow:hidden;right:24px;transform:translateY(18px) scale(.98);background:radial-gradient(circle at 98% 0,color-mix(in srgb,var(--accent, var(--matcha)) 12%,transparent),transparent 32%),linear-gradient(180deg,color-mix(in srgb,var(--paper) 97%,white),color-mix(in srgb,var(--paper-warm) 72%,var(--paper)));border-color:color-mix(in srgb,var(--line) 86%,white 14%);width:min(470px,calc(100vw - 32px))}.agent-head:after{background:radial-gradient(circle at 8px 0,transparent 7px,rgba(255,255,255,.22) 7.5px 8.5px,transparent 9px) 0 0 / 22px 10px repeat-x;bottom:-1px;content:"";height:10px;left:0;opacity:.72;pointer-events:none;position:absolute;right:0}.agent-immersion{border:1px solid rgba(25,58,90,.1);background:radial-gradient(circle at 92% 18%,color-mix(in srgb,var(--accent, var(--matcha)) 14%,transparent),transparent 34%),linear-gradient(135deg,color-mix(in srgb,var(--paper) 96%,white),color-mix(in srgb,var(--accent-tint, var(--indigo-soft)) 38%,var(--paper)));border-color:color-mix(in srgb,var(--accent, var(--indigo)) 24%,var(--line));border-radius:12px;box-shadow:0 9px 22px color-mix(in srgb,var(--ink) 6%,transparent);margin:12px 12px 0;padding:11px 12px}.agent-quick{border-bottom:1px solid var(--line);display:flex;gap:8px;overflow-x:auto;background:transparent;border-bottom-color:color-mix(in srgb,var(--line) 78%,transparent);padding:10px 12px 11px}.agent-quick-btn{background:color-mix(in srgb,var(--paper) 92%,white);border:1px solid var(--line);border-radius:999px;color:var(--ink);cursor:pointer;flex:0 0 auto;font-family:inherit;font-size:12px;font-weight:820;letter-spacing:0;min-height:30px;padding:6px 11px;transition:background var(--speed),border-color var(--speed),transform var(--speed);white-space:nowrap;box-shadow:0 4px 12px color-mix(in srgb,var(--ink) 5%,transparent)}.agent-messages{flex:1;overflow-y:auto;display:flex;flex-direction:column;background:radial-gradient(circle at 100% 0,color-mix(in srgb,var(--accent, var(--matcha)) 6%,transparent),transparent 28%),repeating-linear-gradient(0deg,transparent 0 31px,color-mix(in srgb,var(--line) 22%,transparent) 31px 32px);gap:14px;padding:16px 14px 18px}.agent-aux-toggle{appearance:none;margin:6px 12px 2px;padding:7px 12px;font-size:12px;font-weight:600;text-align:left;color:var(--ink);background:color-mix(in srgb,var(--matcha) 9%,transparent);border:1px solid color-mix(in srgb,var(--line) 60%,transparent);border-radius:10px;cursor:pointer}.agent-aux-toggle:hover{background:color-mix(in srgb,var(--matcha) 16%,transparent)}.agent-aux{display:none}.agent-aux.show{display:flex;flex-direction:column}.agent-msg{display:flex;flex-direction:column;gap:5px}.agent-message-meta{align-items:center;color:var(--ink-faint);display:flex;font-size:10px;font-weight:800;gap:6px;letter-spacing:.06em;padding-inline:4px}.agent-msg-user .agent-message-meta{flex-direction:row-reverse}.agent-msg-notice{align-items:center}.agent-msg-notice .agent-message-meta{color:var(--ink-faint)}.agent-message-avatar{align-items:center;background:color-mix(in srgb,var(--accent-tint, var(--indigo-soft)) 72%,var(--paper));border:1px solid color-mix(in srgb,var(--accent, var(--indigo)) 32%,var(--line));border-radius:50%;color:var(--accent-strong, var(--indigo));display:inline-flex;font-family:var(--font-mincho, serif);font-size:10px;height:22px;justify-content:center;letter-spacing:0;width:22px}.agent-msg-user .agent-message-avatar{background:color-mix(in srgb,var(--indigo) 80%,black);border-color:transparent;color:#fff}.agent-msg-notice .agent-message-avatar{background:color-mix(in srgb,var(--paper-warm) 76%,var(--paper));border-color:var(--line);color:var(--ink-faint)}.agent-bubble-text{word-break:break-word;border:1px solid var(--line);border-radius:12px;font-size:14px;line-height:1.58;padding:10px 12px;box-shadow:0 9px 22px color-mix(in srgb,var(--ink) 7%,transparent);max-width:88%}.agent-msg-assistant .agent-bubble-text{border-bottom-left-radius:5px;color:var(--ink);background:linear-gradient(135deg,color-mix(in srgb,var(--paper) 97%,white),color-mix(in srgb,var(--paper-warm) 52%,var(--paper)));border-color:color-mix(in srgb,var(--line) 88%,white 12%)}.agent-msg-notice .agent-bubble-text{background:color-mix(in srgb,var(--paper-warm) 62%,var(--paper));border-color:var(--line);box-shadow:none;color:var(--ink-soft);font-size:13px;max-width:82%}.agent-feedback{display:flex;align-items:center;flex-wrap:wrap;gap:5px;margin-left:5px;margin-top:1px}.agent-inline-notice{color:var(--ink-faint);font-size:11px;line-height:1.35}.agent-inline-notice.error{color:var(--error)}.agent-grading-result{border:1px solid var(--line);border-radius:999px;color:var(--ink-soft);font-size:11px;line-height:1.35;max-width:100%;padding:3px 7px}.agent-grading-result.passed{background:color-mix(in srgb,var(--moss) 12%,var(--paper));border-color:color-mix(in srgb,var(--moss) 36%,var(--line));color:color-mix(in srgb,var(--moss) 70%,var(--ink))}.agent-grading-result.needs-work{background:color-mix(in srgb,var(--sakura) 14%,var(--paper));border-color:color-mix(in srgb,var(--sakura-deep) 30%,var(--line));color:color-mix(in srgb,var(--sakura-deep) 70%,var(--ink))}.agent-feedback-btn{border:1px solid var(--paper-warm);color:var(--ink-soft);line-height:1;cursor:pointer;align-items:center;background:color-mix(in srgb,var(--paper) 92%,white);border-color:var(--line);border-radius:999px;display:inline-flex;font-family:inherit;font-size:11px;font-weight:760;gap:5px;height:28px;justify-content:center;min-width:30px;padding:3px 8px;width:auto}.agent-speak-btn svg{fill:none;height:14px;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8;width:14px}.agent-speak-btn.playing{background:color-mix(in srgb,var(--accent-tint, var(--indigo-soft)) 78%,var(--paper));border-color:var(--accent, var(--indigo));color:var(--accent-strong, var(--indigo))}.agent-speak-btn.playing .agent-speak-label:after{content:"\4e2d";margin-left:1px}.agent-depth{display:flex;align-items:center;gap:8px;border-top:1px solid var(--line);color:var(--ink-soft);font-size:12px;padding:9px 13px;background:color-mix(in srgb,var(--paper) 90%,transparent);border-top-color:color-mix(in srgb,var(--line) 74%,transparent);min-height:42px}.agent-input{display:flex;border-top:1px solid var(--line);gap:8px;background:color-mix(in srgb,var(--paper) 92%,transparent);border-top-color:var(--line);padding:11px 12px 12px}.agent-input textarea{flex:1;resize:none;border:1px solid var(--paper-warm);padding:9px 11px;font-family:inherit;font-size:14px;line-height:1.4;max-height:120px;color:var(--ink);background:color-mix(in srgb,var(--paper) 94%,white);border-color:var(--line);border-radius:13px;box-shadow:0 5px 14px color-mix(in srgb,var(--ink) 5%,transparent);min-height:46px}.agent-send{color:#fff;padding:0 16px;font-size:14px;font-weight:600;cursor:pointer;white-space:nowrap;background:linear-gradient(135deg,var(--indigo),color-mix(in srgb,var(--indigo) 78%,var(--matcha)));border:1px solid color-mix(in srgb,var(--indigo) 44%,white);box-shadow:0 8px 16px color-mix(in srgb,var(--indigo) 18%,transparent);border-radius:13px;min-width:74px}.agent-send.agent-send-stop{background:linear-gradient(135deg,var(--vermilion, #d2563f),color-mix(in srgb,var(--vermilion, #d2563f) 80%,#7a2d22));border-color:color-mix(in srgb,var(--vermilion, #d2563f) 50%,white);box-shadow:0 8px 16px color-mix(in srgb,var(--vermilion, #d2563f) 20%,transparent)}html[data-theme=yomatsuri] .theme-panel,html[data-theme=yomatsuri] .agent-panel{border-color:#fff0c629}html[data-theme=yomatsuri] .theme-card,html[data-theme=yomatsuri] .agent-msg-assistant .agent-bubble-text,html[data-theme=yomatsuri] .agent-feedback-btn{background:#fff6e214;border-color:#fff0c624}html[data-theme=yomatsuri] .theme-choice-copy strong,html[data-theme=yomatsuri] .agent-msg-assistant .agent-bubble-text{color:var(--ink)}@media(max-width:860px){.settings-panel,.theme-panel{border-radius:22px 22px 0 0;bottom:0;left:0!important;max-height:min(88dvh,760px);right:0;top:auto;transform:translateY(100%);width:100%}.settings-panel.show,.theme-panel.show{transform:translateY(0)}.theme-panel-head{padding:16px 18px 14px}.theme-gallery{grid-template-columns:repeat(2,minmax(0,1fr));padding:14px 14px 9px}.theme-card{gap:7px;grid-template-columns:1fr 22px;grid-template-rows:68px auto;min-height:116px;padding:7px}.theme-card:last-child{grid-column:1 / -1}.theme-choice-art{grid-column:1 / -1;min-height:68px}.theme-choice-copy{padding:2px 3px 3px}.theme-choice-check{grid-column:2;grid-row:2}.theme-panel-note{padding:0 18px calc(16px + env(safe-area-inset-bottom))}.agent-panel{border-radius:16px 16px 0 0;height:min(660px,calc(100dvh - 96px));left:8px;max-width:none;right:8px;bottom:92px;width:auto}}@media(max-width:430px){.theme-gallery{grid-template-columns:1fr}.theme-card,.theme-card:last-child{grid-column:auto}.theme-card{grid-template-columns:84px minmax(0,1fr) 22px;grid-template-rows:auto;min-height:82px}.theme-choice-art{grid-column:auto;min-height:66px}.theme-choice-check{grid-column:auto;grid-row:auto}.agent-message-meta{font-size:9px}.agent-bubble-text{max-width:92%}.agent-head-avatar{height:44px;width:44px}.agent-title{font-size:15px}#agentFullscreenToggle{display:none}}.today-card .today-card-kicker,.today-map-card .today-card-kicker{color:color-mix(in srgb,var(--ink) 78%,var(--matcha) 22%);opacity:1;text-shadow:none}.today-open-loop.is-empty{border-left-color:color-mix(in srgb,var(--matcha) 58%,var(--line))}.agent-head{justify-content:space-between;align-items:center;border-bottom:1px solid color-mix(in srgb,var(--gold) 26%,transparent);color:#fff;display:grid;gap:12px;grid-template-columns:54px minmax(0,1fr) auto;padding:12px 14px;background:radial-gradient(circle at 88% -20%,rgba(255,255,255,.2),transparent 38%),linear-gradient(135deg,color-mix(in srgb,var(--indigo) 92%,#0f2c29),color-mix(in srgb,var(--indigo) 62%,var(--matcha)));overflow:hidden;position:relative;--agent-head-tone: var(--indigo);--agent-head-art: var(--theme-art);background-color:var(--agent-head-tone);background-image:linear-gradient(90deg,color-mix(in srgb,var(--agent-head-tone) 96%,#111 4%),color-mix(in srgb,var(--agent-head-tone) 92%,transparent) 42%,color-mix(in srgb,var(--agent-head-tone) 70%,transparent) 68%,color-mix(in srgb,var(--agent-head-tone) 48%,transparent)),linear-gradient(180deg,#0814120a,#0814123d),var(--agent-head-art);background-position:center,center,72% 48%;background-repeat:no-repeat;background-size:auto,auto,cover;border-bottom-color:color-mix(in srgb,var(--gold) 44%,transparent);box-shadow:inset 0 -1px #ffffff1f,inset 0 18px 34px #ffffff0a;min-height:102px}html[data-theme=shun] .agent-head{--agent-head-tone: var(--accent-strong)}html[data-theme=sakura] .agent-head{--agent-head-tone: #7c4058;--agent-head-art: url(/static/assets/hero-shun-spring.png)}html[data-theme=indigo] .agent-head{--agent-head-tone: #203f63;--agent-head-art: url(/static/assets/hero-shun-winter.png)}html[data-theme=matcha] .agent-head{--agent-head-tone: #315c45;--agent-head-art: url(/static/assets/hero-shun-summer.png)}html[data-theme=yomatsuri] .agent-head{--agent-head-tone: #102842;--agent-head-art: url(/static/assets/washi-fuji-yomatsuri.png);background-position:center,center,74% 38%}.agent-head-avatar{border:1px solid rgba(255,255,255,.32);border-radius:15px;height:54px;overflow:hidden;width:54px;box-shadow:0 8px 20px #0818163d;background:#fffcf4e6;border-color:#ffffffb8}.agent-head-btn,.agent-close{backdrop-filter:blur(6px);background:#ffffff26;border-color:#ffffff47;box-shadow:0 5px 16px #0512181f}@media(max-width:430px){.agent-head{grid-template-columns:44px minmax(0,1fr) auto;padding-inline:10px;min-height:88px}}#appContainer.ready~.legal-footer{display:none}@media(min-width:861px){body.app-ready{height:100dvh;overflow:hidden}body.app-ready #appContainer{height:100dvh;min-height:0;overflow:hidden;padding:clamp(8px,1vw,14px)}body.app-ready .app-shell{height:100%;max-width:min(1640px,calc(100vw - 16px));min-height:0}body.app-ready .app-rail{height:100%;min-height:0;padding:18px 18px 142px;position:relative;top:auto}body.app-ready .app-rail:after{background-position:center bottom;background-size:142% auto;height:clamp(250px,32vh,360px);mask-image:linear-gradient(180deg,transparent 0%,#000 20%,#000 92%,transparent 100%);opacity:.62;-webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 20%,#000 92%,transparent 100%)}html[data-theme=shun] body.app-ready .app-rail:after{filter:saturate(.92) sepia(.02) brightness(1.01) contrast(1.02);opacity:.7}body.app-ready .app-shell>.tabs{margin-top:146px}body.app-ready .tab{background:#0818177a;border-color:#ffffff24;min-height:48px}body.app-ready .tab-icon{flex-basis:28px;height:28px;width:28px}body.app-ready .app-workspace{height:100%;min-height:0;overflow-x:hidden;overflow-y:auto;padding:clamp(12px,1.15vw,18px)}body.app-ready .profile-bar{margin-bottom:clamp(8px,1vw,12px);padding:8px}body.app-ready .profile-current,body.app-ready .btn-add-profile,body.app-ready .btn-upgrade,body.app-ready .plan-badge,body.app-ready .theme-switch{min-height:38px}body.app-ready #godan.active{align-items:stretch;gap:clamp(9px,.9vw,13px);grid-template-columns:minmax(0,1.14fr) minmax(360px,.86fr);grid-template-rows:auto minmax(0,1fr) auto;min-height:0}body.app-ready #godan .section-row{display:none}body.app-ready #godan .verb-picker{grid-column:1 / -1;grid-row:1;margin:0;min-height:0;overflow-x:auto;overflow-y:hidden;padding:8px;scrollbar-width:thin}body.app-ready #godan .verb-chip{min-height:36px;padding:7px 12px}body.app-ready #godan .verb-picker-divider{display:none}body.app-ready #godan .verb-stage{aspect-ratio:auto;background-position:center,58% center;background-size:auto,cover;grid-column:1;grid-row:2;margin:0;min-height:clamp(280px,36dvh,420px);padding:clamp(44px,3.6vw,58px) clamp(18px,2.2vw,28px) clamp(18px,2.2vw,30px)}body.app-ready #godan .verb-stage:after{font-size:clamp(24px,2.2vw,34px);right:clamp(18px,2vw,30px);top:clamp(28px,3vw,42px)}body.app-ready #godan .verb-display{font-size:clamp(72px,6.4vw,104px);min-height:clamp(78px,7.2vw,110px)}body.app-ready #godan .verb-reading-row,body.app-ready #godan .verb-meaning{max-width:72%}body.app-ready #godan .form-card{display:flex;flex-direction:column;grid-column:2;grid-row:2;min-height:0;padding:clamp(16px,1.5vw,22px)}body.app-ready #godan .form-card-head{margin-bottom:6px}body.app-ready #godan .form-name{font-size:clamp(22px,1.7vw,28px)}body.app-ready #godan .form-use{line-height:1.55;margin-bottom:8px}body.app-ready #godan .form-example{display:flex;flex:1 1 auto;flex-direction:column;min-height:0}body.app-ready #godan .example-list{flex:1 1 auto;min-height:0;overflow-y:auto;padding-right:2px}body.app-ready #godan .track{gap:clamp(7px,.75vw,10px);grid-column:1;grid-row:3;margin:0;padding:9px}body.app-ready #godan .seg{min-height:clamp(82px,8dvh,102px);padding:10px 6px 9px}body.app-ready #godan .seg-kana{font-size:clamp(21px,1.7vw,27px);margin-bottom:4px}body.app-ready #godan .seg-form{font-size:clamp(15px,1.05vw,18px)}body.app-ready #godan .tip{align-items:center;display:flex;grid-column:2;grid-row:3;line-height:1.6;margin:0;min-height:0;padding:12px 72px}body.app-ready #godan .tip:before,body.app-ready #godan .tip:after{height:48px;width:48px}}.agent-msg-error .agent-bubble-text{background:color-mix(in srgb,#fff4ed 82%,var(--paper));border-color:color-mix(in srgb,#c96a45 42%,var(--line))}.agent-error-code{color:var(--ink-faint);font-size:10px;font-weight:750;letter-spacing:.04em;padding:0 4px}.agent-retry-btn{color:color-mix(in srgb,#9f4c30 82%,var(--ink))}#btnInstallApp[hidden],#btnInstallAppToolbar[hidden]{display:none!important}@media(min-width:861px)and (max-width:1100px){.settings-panel{left:50%!important;max-height:min(calc(100dvh - 112px),760px);right:auto;top:72px;transform:translate(-50%,-8px) scale(.985);width:min(680px,calc(100vw - 48px))}.settings-panel.show{transform:translate(-50%) scale(1)}.settings-panel .settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
