:root{--bg: #F8F7F5;--surface: #FFFFFF;--surface-2: #F3F2EF;--surface-3: #ECEAE5;--text: #1A1A1A;--text-2: #6B6B6B;--text-3: #9A9893;--border: #E8E6E1;--border-strong: #D9D6CF;--primary: #4F6AF6;--primary-hover: #3F58E0;--primary-soft: #EEF1FE;--primary-soft-2: #E2E7FD;--on-primary: #FFFFFF;--en: #4F6AF6;--en-soft: #EEF1FE;--ja: #E85D5D;--ja-soft: #FDEEEE;--success: #2A9D8F;--success-soft: #E6F5F3;--warn: #F59E0B;--warn-soft: #FEF5E6;--error: #DC2626;--error-soft: #FDECEC;--purple: #8B5CF6;--purple-soft: #F1ECFE;--score-good: #2A9D8F;--score-mid: #F59E0B;--score-low: #DC2626;--shadow-sm: 0 1px 2px rgba(26, 26, 26, .04);--shadow: 0 1px 3px rgba(26, 26, 26, .05), 0 6px 20px rgba(26, 26, 26, .04);--shadow-lg: 0 12px 40px rgba(26, 26, 26, .14);--radius-sm: 8px;--radius: 12px;--radius-lg: 16px;--font-ui: "PingFang SC", "Noto Sans SC", "Hiragino Sans GB", "Microsoft YaHei", system-ui, -apple-system, "Segoe UI", sans-serif;--font-serif: "Noto Serif", "Source Serif 4", "Source Serif Pro", Georgia, "Noto Serif SC", "Songti SC", serif;--font-serif-ja: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", "YuMincho", "Noto Serif CJK JP", serif;--font-mono: "SF Mono", "JetBrains Mono", Menlo, Consolas, monospace;--header-h: 64px;--gutter: 32px;color-scheme:light}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--bg: #1A1A1A;--surface: #242424;--surface-2: #2C2C2C;--surface-3: #333333;--text: #F5F5F0;--text-2: #A8A5A0;--text-3: #7C7A76;--border: #3A3A3A;--border-strong: #4A4A4A;--primary: #5B74F7;--primary-hover: #7088FA;--primary-soft: #262C48;--primary-soft-2: #2E365A;--en: #6E85F8;--en-soft: #262C48;--ja: #F07272;--ja-soft: #3E2626;--success: #3DB5A6;--success-soft: #1E3532;--warn: #F5A524;--warn-soft: #3A3020;--error: #EF5A5A;--error-soft: #3C2222;--purple: #A07CF8;--purple-soft: #2F2842;--score-good: #3DB5A6;--score-mid: #F5A524;--score-low: #EF5A5A;--shadow-sm: none;--shadow: 0 1px 2px rgba(0, 0, 0, .3);--shadow-lg: 0 16px 48px rgba(0, 0, 0, .5);color-scheme:dark}}:root[data-theme=dark]{--bg: #1A1A1A;--surface: #242424;--surface-2: #2C2C2C;--surface-3: #333333;--text: #F5F5F0;--text-2: #A8A5A0;--text-3: #7C7A76;--border: #3A3A3A;--border-strong: #4A4A4A;--primary: #5B74F7;--primary-hover: #7088FA;--primary-soft: #262C48;--primary-soft-2: #2E365A;--en: #6E85F8;--en-soft: #262C48;--ja: #F07272;--ja-soft: #3E2626;--success: #3DB5A6;--success-soft: #1E3532;--warn: #F5A524;--warn-soft: #3A3020;--error: #EF5A5A;--error-soft: #3C2222;--purple: #A07CF8;--purple-soft: #2F2842;--score-good: #3DB5A6;--score-mid: #F5A524;--score-low: #EF5A5A;--shadow-sm: none;--shadow: 0 1px 2px rgba(0, 0, 0, .3);--shadow-lg: 0 16px 48px rgba(0, 0, 0, .5);color-scheme:dark}:root[data-palette=coral]{--primary: #E8724A;--primary-hover: #D45E38;--primary-soft: #FDF1EC;--primary-soft-2: #FADFD4}:root[data-palette=amber]{--primary: #D97706;--primary-hover: #B45309;--primary-soft: #FEF6E8;--primary-soft-2: #FCE8C5}@media (prefers-color-scheme: dark){:root:not([data-theme=light])[data-palette=coral]{--primary: #F08A68;--primary-hover: #F5A286;--primary-soft: #3A2822;--primary-soft-2: #4A322A}:root:not([data-theme=light])[data-palette=amber]{--primary: #F0A12A;--primary-hover: #F5B44F;--primary-soft: #3A2F1A;--primary-soft-2: #4A3A1E}}:root[data-theme=dark][data-palette=coral]{--primary: #F08A68;--primary-hover: #F5A286;--primary-soft: #3A2822;--primary-soft-2: #4A322A}:root[data-theme=dark][data-palette=amber]{--primary: #F0A12A;--primary-hover: #F5B44F;--primary-soft: #3A2F1A;--primary-soft-2: #4A3A1E}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--text);font:15px/1.6 var(--font-ui);-webkit-font-smoothing:antialiased}h1,h2,h3,p{margin:0}h1{font-size:28px;line-height:1.3;font-weight:700;letter-spacing:.01em}h2{font-size:18px;font-weight:600}h3{font-size:16px;font-weight:600}a{color:var(--primary);text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:6px}code{font-family:var(--font-mono);font-size:.92em}audio{height:32px;max-width:260px}.icon{flex:none;display:block}.muted{color:var(--text-2)}.small{font-size:12px}.nowrap{white-space:nowrap}.error{color:var(--error);font-size:14px}.ok{color:var(--success)}.hint{color:var(--text-2);font-size:14px}.t-en{font-family:var(--font-serif)}.t-ja{font-family:var(--font-serif-ja)}.boot{min-height:100vh}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:40px;padding:0 18px;border-radius:10px;border:1px solid transparent;font-weight:500;font-size:15px;white-space:nowrap;transition:background .15s,border-color .15s,color .15s,opacity .15s}.btn--primary{background:var(--primary);color:var(--on-primary)}.btn--primary:hover:not(:disabled){background:var(--primary-hover)}.btn--primary:disabled{opacity:.45}.btn--dark{background:var(--text);color:var(--bg)}.btn--dark:hover:not(:disabled){opacity:.88}.btn--ghost{background:var(--surface);border-color:var(--border);color:var(--text)}.btn--ghost:hover:not(:disabled){border-color:var(--primary);color:var(--primary)}.btn--ghost:disabled{opacity:.5}.btn--outline{background:transparent;border-color:var(--primary);color:var(--primary)}.btn--outline:hover:not(:disabled){background:var(--primary-soft)}.btn--danger,.btn--ghost.btn--danger{color:var(--error)}.btn--danger-outline{background:var(--error-soft);border-color:color-mix(in srgb,var(--error) 35%,transparent);color:var(--error)}.btn--lg{min-height:52px;font-size:17px;border-radius:12px}.btn--sm{min-height:34px;padding:0 12px;font-size:14px;border-radius:8px}.btn--xs{min-height:28px;padding:0 10px;font-size:13px;border-radius:7px}.btn--block{width:100%}.btn--xs+.btn--xs{margin-left:6px}.btn+.btn{margin-left:0}.link{background:none;border:0;padding:0;color:var(--primary);font-size:14px;display:inline-flex;align-items:center;gap:4px}.link:hover{text-decoration:underline}.link--muted{color:var(--text-2)}.icon-btn{display:inline-grid;place-items:center;width:36px;height:36px;border-radius:10px;border:0;background:transparent;color:var(--text-2);position:relative;flex:none}.icon-btn:hover{background:var(--surface-2);color:var(--text)}.icon-btn--primary{background:var(--primary);color:#fff}.icon-btn--primary:hover{background:color-mix(in srgb,var(--primary) 88%,black);color:#fff}.icon-btn--danger:hover{color:var(--error);background:var(--error-soft)}.icon-btn:disabled{opacity:.45;pointer-events:none}.icon-link{color:var(--primary);display:inline-flex}.dot-badge{position:absolute;top:2px;right:0;min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:var(--error);color:#fff;font-size:10px;line-height:16px;font-weight:600}.count-badge{margin-left:auto;min-width:22px;height:20px;padding:0 6px;border-radius:10px;background:var(--error);color:#fff;font-size:12px;line-height:20px;text-align:center;font-weight:600}.seg{display:inline-flex;padding:4px;gap:2px;border-radius:12px;background:var(--surface-2);border:1px solid var(--border)}.seg button{flex:1;min-height:38px;padding:0 18px;border:0;border-radius:9px;background:transparent;color:var(--text);font-weight:500;display:inline-flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap}.seg button+button:not(.on){box-shadow:inset 1px 0 0 var(--border)}.seg button.on+button{box-shadow:none}.seg button.on{background:var(--primary);color:var(--on-primary);box-shadow:0 2px 6px color-mix(in srgb,var(--primary) 35%,transparent)}.seg button:not(.on):hover{color:var(--primary)}.seg--block{display:flex;width:100%}.seg--sm button{min-height:32px;padding:0 12px;font-size:14px}.seg--pill{border-radius:999px;background:var(--surface-2)}.seg--pill button{border-radius:999px;padding:0 22px}.seg__badge{min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:#ffffff40;font-size:11px;line-height:18px}.seg button:not(.on) .seg__badge{background:var(--surface-3);color:var(--text-2)}.toggle{position:relative;flex:none;width:46px;height:28px;border-radius:14px;border:0;padding:0;background:var(--border-strong);transition:background .2s}.toggle__knob{position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #00000040;transition:transform .2s}.toggle.is-on{background:var(--primary)}.toggle.is-on .toggle__knob{transform:translate(18px)}.inline-toggle{display:inline-flex;align-items:center;gap:10px;font-size:14px;color:var(--text-2);cursor:pointer}.tag{display:inline-flex;align-items:center;gap:4px;height:24px;padding:0 10px;border-radius:999px;background:var(--surface-2);color:var(--text-2);font-size:12px;font-weight:500;white-space:nowrap;vertical-align:middle}.tag--sm{height:20px;padding:0 8px;font-size:11px;margin-right:6px}.tag--en{background:var(--en-soft);color:var(--en)}.tag--ja{background:var(--ja-soft);color:var(--ja)}.tag--solid.tag--en{background:var(--en);color:#fff}.tag--solid.tag--ja{background:var(--ja);color:#fff}.tag--mode{background:var(--primary-soft);color:var(--primary)}.tag--mode-dialogue{background:var(--purple-soft);color:var(--purple)}.tag--mode-article{background:var(--success-soft);color:var(--success)}.tag--mode-dictation{background:var(--warn-soft);color:var(--warn)}.tag--mode-chat{background:var(--ja-soft);color:var(--ja)}.tag--warn{background:var(--warn-soft);color:var(--warn)}.tag--ok{background:var(--success-soft);color:var(--success)}.tag--ai{background:var(--primary-soft);color:var(--primary)}.tag--soft{background:var(--primary-soft);color:var(--primary);border-radius:8px}.tags{display:flex;flex-wrap:wrap;gap:8px}.pill{display:inline-flex;align-items:center;gap:4px;height:26px;padding:0 10px;border-radius:999px;font-size:13px;font-weight:500;background:var(--surface-2);color:var(--text-2);white-space:nowrap}.pill.good{background:var(--success-soft);color:var(--score-good)}.pill.mid{background:var(--warn-soft);color:var(--score-mid)}.pill.low{background:var(--error-soft);color:var(--score-low)}.pill--info{background:var(--primary-soft);color:var(--primary)}.pill--muted{height:22px;font-size:12px;border-radius:6px;border:1px solid var(--border);background:transparent}.status{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 10px;border-radius:999px;font-size:12px;font-weight:500}.status i{width:6px;height:6px;border-radius:50%;background:currentColor}.status--ok{background:var(--success-soft);color:var(--success)}.status--warn{background:var(--warn-soft);color:var(--warn)}.status--bad{background:var(--error-soft);color:var(--error)}.status--muted{background:var(--surface-2);color:var(--text-2)}.score-text.good{color:var(--score-good)}.score-text.mid{color:var(--score-mid)}.score-text.low{color:var(--score-low)}.ok-text{color:var(--success)}.bad-text{color:var(--error)}.label-pill{display:inline-flex;align-items:center;gap:8px;height:36px;padding:0 16px;border-radius:12px;font-size:15px;font-weight:600}.label-pill--blue{background:var(--primary-soft);color:var(--primary)}.label-pill--green{background:var(--success-soft);color:var(--success)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:24px;box-shadow:var(--shadow-sm);min-width:0;max-width:100%}.card--flush{padding:0;overflow:hidden}.card__title{display:flex;align-items:center;gap:10px;font-size:18px;font-weight:600;margin-bottom:16px}.card__title .icon{color:var(--primary)}.card__titlebar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:12px}.card__titlebar .card__title{margin:0}.section-title{display:flex;align-items:center;gap:8px;font-size:18px;font-weight:600;margin-bottom:12px}.section-title .icon{color:var(--primary)}.sub-title{margin:20px 0 10px;font-size:15px}.bar{height:8px;border-radius:4px;background:var(--surface-3);overflow:hidden}.bar>span{display:block;height:100%;border-radius:4px;background:var(--primary);transition:width .4s}.banner{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 16px;border-radius:var(--radius);font-size:14px;border:1px solid transparent}.banner--error{background:var(--error-soft);color:var(--error);border-color:color-mix(in srgb,var(--error) 20%,transparent)}.banner--info{background:var(--primary-soft);color:var(--primary);border-color:color-mix(in srgb,var(--primary) 20%,transparent)}.banner--ok{background:var(--success-soft);color:var(--success);border-color:color-mix(in srgb,var(--success) 25%,transparent)}.banner .muted{color:inherit;opacity:.8}.code-big{font-size:18px;font-weight:700;letter-spacing:.06em}.empty{display:grid;justify-items:center;gap:14px;padding:48px 24px;text-align:center;color:var(--text-2)}.empty .icon{color:var(--text-3)}.empty__actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}.palette-picker{display:grid;gap:10px;margin-top:18px}.palette-picker__label{font-size:13px;font-weight:600;color:var(--text-2)}.palette-picker__row{display:flex;flex-wrap:wrap;gap:10px}.palette-swatch{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 14px 0 10px;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--text);font-size:14px}.palette-swatch:hover{border-color:var(--border-strong)}.palette-swatch.on{border-color:var(--primary);background:var(--primary-soft);color:var(--primary);font-weight:600}.palette-swatch__dot{width:18px;height:18px;border-radius:50%;box-shadow:inset 0 0 0 1px #00000014;flex:none}.chips{display:flex;flex-wrap:wrap;gap:10px}.chips--center{justify-content:center}.chip{height:38px;padding:0 18px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:14px;transition:border-color .15s,color .15s}.chip:hover{border-color:var(--primary);color:var(--primary)}.chip.on{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}.spinner{width:18px;height:18px;border-radius:50%;border:2.5px solid var(--primary-soft-2);border-top-color:var(--primary);animation:spin .8s linear infinite;flex:none;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.dots{display:inline-flex;gap:4px;margin-right:8px;vertical-align:middle}.dots i{width:6px;height:6px;border-radius:50%;background:var(--primary);animation:blink 1.2s infinite both}.dots i:nth-child(2){animation-delay:.2s}.dots i:nth-child(3){animation-delay:.4s}@keyframes blink{0%,80%,to{opacity:.25}40%{opacity:1}}.thinking{color:var(--text-2);font-size:14px;display:flex;align-items:center;gap:4px;flex-wrap:wrap}.plain-list{margin:8px 0 0;padding-left:20px;display:grid;gap:6px}.translation{color:var(--text-2);font-size:14px;margin-top:4px;font-family:var(--font-ui)}.tr-btn{display:inline-grid;place-items:center;width:24px;height:24px;margin-left:6px;vertical-align:middle;border:0;border-radius:6px;background:transparent;color:var(--text-3);opacity:.7}.tr-btn:hover{color:var(--primary);background:var(--primary-soft);opacity:1}.scene{display:flex;gap:8px;align-items:flex-start;color:var(--text-2);font-size:14px;background:var(--surface-2);padding:10px 14px;border-radius:var(--radius);margin-bottom:16px}.scene .icon{margin-top:3px;color:var(--primary)}.tip{display:flex;align-items:center;gap:6px;color:var(--text-2);font-size:14px;margin:8px 0 0 56px}.tip .icon{color:var(--warn)}.done-note{display:flex;align-items:center;gap:10px;color:var(--success);font-weight:500}.done-note--actions{flex-direction:column;align-items:stretch;gap:14px;padding:16px;border-radius:var(--radius);background:var(--surface-2);border:1px solid var(--border)}.done-note--actions .btn{justify-content:center}.crumbs{display:flex;align-items:center;gap:6px;flex-wrap:wrap;color:var(--text-2);font-size:14px;margin-bottom:4px}.field{display:grid;gap:6px}.field__label{font-size:14px;font-weight:500}.field small{font-size:12px}.input,.select{position:relative;display:flex;align-items:center;gap:10px;height:46px;padding:0 14px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text-3);transition:border-color .15s,box-shadow .15s}.input:focus-within,.select:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.input input,.select select{flex:1;min-width:0;height:100%;border:0;outline:0;background:transparent;color:var(--text)}.input input::placeholder,textarea::placeholder{color:var(--text-3)}.select select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:22px;cursor:pointer}.select__chev{position:absolute;right:12px;pointer-events:none}.input__btn{border:0;background:none;color:var(--text-3);padding:4px;display:grid}.input__btn:hover{color:var(--text)}.input--search{max-width:100%}textarea{width:100%;padding:12px 14px;border:1px solid var(--border);border-radius:10px;background:var(--surface);resize:vertical;font-size:17px;line-height:1.6}textarea:focus{outline:0;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.stack-form{display:grid;gap:16px;max-width:420px}.copy-row{display:flex;gap:10px;margin:16px 0}.copy-row input{flex:1;min-width:0;height:42px;padding:0 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2)}.table-wrap{overflow-x:auto;max-width:100%}.table{width:100%;border-collapse:collapse;font-size:14px}.table th{text-align:left;font-weight:500;color:var(--text-2);background:var(--surface-2);padding:12px 14px;white-space:nowrap}.table th .icon{display:inline-block;vertical-align:-3px;margin-right:4px}.table th:first-child{border-top-left-radius:10px}.table th:last-child{border-top-right-radius:10px}.table td{padding:14px;border-bottom:1px solid var(--border);vertical-align:middle}.table tbody tr:last-child td{border-bottom:0}.table tr.clickable{cursor:pointer}.table tr.clickable:hover td{background:color-mix(in srgb,var(--primary-soft) 55%,transparent)}.cell-sub{display:block;font-size:12px}.card--flush .table th:first-child,.card--flush .table th:last-child{border-radius:0}.topbar{position:sticky;top:0;z-index:30;height:var(--header-h);display:flex;align-items:center;gap:20px;padding:0 var(--gutter);background:color-mix(in srgb,var(--bg) 92%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border)}.brand{display:inline-flex;align-items:center;gap:12px;color:var(--text);flex:none}.brand__name{font-family:var(--font-serif);font-size:26px;font-weight:700;letter-spacing:-.01em}.topbar__sep{width:1px;height:24px;background:var(--border-strong);flex:none}.topbar__center{flex:1;min-width:0;display:flex;align-items:center;gap:24px;height:100%}.topbar__tagline{color:var(--text-2);font-size:14px;white-space:nowrap}.topbar__right{display:flex;align-items:center;gap:6px;flex:none}.lang-crumb{display:flex;align-items:center;gap:10px}.lang-crumb button{border:0;background:none;padding:4px 2px;color:var(--text-2);font-size:16px}.lang-crumb button.on{color:var(--primary);font-weight:500}.lang-crumb__sep{color:var(--text-3)}.head-tabs{display:flex;align-items:stretch;gap:8px;height:100%}.head-tabs>*{display:flex;align-items:center;padding:0 16px;border:0;background:none;color:var(--text-2);font-size:16px;border-bottom:3px solid transparent;margin-bottom:-1px}.head-tabs>.on{color:var(--primary);border-bottom-color:var(--primary);font-weight:500}.head-tabs>*:not(.on):hover{color:var(--text)}.head-crumb{display:flex;align-items:center;gap:8px;font-size:14px;min-width:0;overflow:hidden;white-space:nowrap}.head-crumb strong{overflow:hidden;text-overflow:ellipsis;font-weight:500}.usermenu{position:relative}.usermenu__btn{display:flex;align-items:center;gap:8px;height:44px;padding:0 6px;border:0;border-radius:22px;background:none;color:var(--text-2)}.usermenu__btn:hover{background:var(--surface-2)}.usermenu__name{font-size:14px;color:var(--text);max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.avatar{display:inline-grid;place-items:center;width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#dce3fd,#c4cffb);color:var(--primary);font-weight:600;flex:none}.avatar--sm{width:32px;height:32px;font-size:14px}.avatar--lg{width:56px;height:56px}.usermenu__pop{position:absolute;right:0;top:calc(100% + 8px);z-index:41;min-width:220px;padding:8px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg)}.usermenu__scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40}.usermenu__who{display:grid;padding:8px 10px 10px;border-bottom:1px solid var(--border);margin-bottom:6px;font-size:14px}.usermenu__item{display:flex;align-items:center;gap:10px;width:100%;padding:9px 10px;border:0;border-radius:8px;background:none;color:var(--text);font-size:14px;text-align:left}.usermenu__item:hover{background:var(--surface-2)}.usermenu__item .icon{color:var(--text-2)}.shell{min-height:100vh;display:flex;flex-direction:column}.shell__body{flex:1;display:flex;min-height:0}.shell__main{flex:1;min-width:0;padding:28px var(--gutter) 64px;display:flex;flex-direction:column;gap:20px}.shell--bare .shell__main{padding-top:20px}.page{display:flex;flex-direction:column;gap:20px;width:100%;max-width:1360px;min-width:0}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap}.page-head__actions{display:flex;gap:10px;flex-wrap:wrap}.sidebar{width:236px;flex:none;position:sticky;top:var(--header-h);height:calc(100vh - var(--header-h));display:flex;flex-direction:column;justify-content:space-between;padding:20px 12px}.sidebar+.shell__main{border-left:1px solid var(--border)}.sidebar nav{display:grid;gap:4px}.sidebar__item{display:flex;align-items:center;gap:14px;height:46px;padding:0 14px;border-radius:10px;color:var(--text);font-size:15px}.sidebar__item .icon{color:var(--text-2)}.sidebar__item:hover{background:var(--surface-2)}.sidebar__item.on{background:var(--primary-soft);color:var(--primary);font-weight:500}.sidebar__item.on .icon{color:var(--primary)}.sidebar__foot{display:grid;gap:12px}.motto{padding:16px 14px 8px;border-radius:var(--radius);font-size:13px;color:var(--text-2);line-height:1.7;background:linear-gradient(160deg,var(--surface-2),color-mix(in srgb,var(--primary-soft) 70%,var(--surface)))}.motto__art{width:100%;height:auto;margin-top:4px}.art-desk{fill:var(--border-strong)}.art-book{fill:#8fa2f8}.art-book2{fill:#c7d1fc}.art-pot{fill:#a9b7fa}.art-leaf{fill:#7dc4b4}.sidebar__meta{font-size:12px;color:var(--text-3);padding:0 6px}.auth{min-height:100vh;display:grid;grid-template-columns:minmax(320px,1fr) minmax(420px,640px);align-items:center;gap:48px;padding:48px 6vw;position:relative;overflow:hidden}.auth__brand{position:relative;display:grid;gap:18px;justify-items:center;align-self:center;padding-bottom:140px}.auth__logo{display:flex;align-items:center;gap:22px;color:var(--text)}.auth__logo span{font-family:var(--font-ui);font-size:64px;font-weight:800;letter-spacing:-.02em}.auth__tagline{font-size:24px;color:var(--text-2);letter-spacing:.12em}.auth__waves{position:absolute;left:-6vw;bottom:0;width:calc(100% + 12vw);height:200px}.auth__waves path{fill:none;stroke:var(--primary);stroke-width:1.2;opacity:.75}.auth__card{background:var(--surface);border-radius:20px;padding:32px 40px 40px;box-shadow:var(--shadow-lg);position:relative;z-index:1}.tabs{display:flex;gap:8px;border-bottom:1px solid var(--border);margin-bottom:28px}.tabs button{border:0;background:none;padding:12px 18px;font-size:18px;color:var(--text);border-bottom:3px solid transparent;margin-bottom:-1px}.tabs button.on{color:var(--primary);border-bottom-color:var(--primary);font-weight:500}.auth__form{display:grid;gap:18px}.auth__form h1{font-size:24px}.shell--home .shell__main{align-items:center;padding-top:48px}.home{width:100%;max-width:1460px;display:flex;flex-direction:column;gap:24px}.home__title{text-align:center;font-size:56px;font-weight:800;letter-spacing:.02em;margin-bottom:12px}.home__ask{display:flex;align-items:center;gap:12px;width:min(960px,100%);margin:0 auto}.home__upload{height:68px;padding:0 22px;white-space:nowrap}.searchbar{display:flex;align-items:center;flex:1;min-width:0;height:68px;padding-left:20px;border:1px solid var(--border-strong);border-radius:16px;background:var(--surface);box-shadow:var(--shadow);overflow:hidden}.upload-pick{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:12px 14px;border:1px dashed var(--border-strong);border-radius:12px;cursor:pointer}.upload-pick input{max-width:100%}.upload-pick span{min-width:0;overflow-wrap:anywhere}.upload-text{width:100%;margin-top:12px;padding:12px 14px;border:1px solid var(--border-strong);border-radius:12px;background:var(--surface);resize:vertical}.upload-prompt{margin:12px 0;padding:10px 12px;border-radius:12px;background:var(--surface-2)}.upload-prompt summary{cursor:pointer;font-weight:600}.upload-prompt .btn{margin-top:8px}.course__list{list-style:none;display:grid;gap:12px;padding:0;margin:0}.course__item{display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center}.course__no{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--primary-soft);color:var(--primary);font-weight:700}.course__notes{margin-top:8px}.searchbar:focus-within{border-color:var(--primary);box-shadow:0 0 0 4px var(--primary-soft)}.searchbar__icon{color:var(--text-2)}.searchbar__input{flex:1;min-width:0;height:100%;padding:0 16px;border:0;outline:0;background:transparent;font-size:18px}.searchbar__btn{height:100%;border-radius:0 15px 15px 0;padding:0 32px;font-size:18px;min-height:0}.progress-card{width:min(960px,100%);margin:0 auto;display:grid;gap:10px;padding:18px 20px;border-radius:var(--radius-lg);background:var(--primary-soft)}.progress-card__row{display:flex;align-items:center;gap:12px}.home>.banner{width:min(960px,100%);margin:0 auto}.resume{width:min(960px,100%);margin:0 auto;display:grid;gap:10px}.resume__head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.resume__head .section-title{margin:0}.resume__combo{position:relative;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);transition:border-color .15s,box-shadow .15s}.resume__combo.open,.resume__combo:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 18%,transparent)}.resume__face{display:flex;align-items:stretch;min-width:0}.resume__item{display:flex;align-items:center;gap:10px;width:100%;padding:12px 16px;border-radius:var(--radius);border:0;background:transparent;color:var(--text);text-align:left;cursor:pointer;font:inherit}.resume__item--go{flex:1;min-width:0;border-radius:var(--radius) 0 0 var(--radius)}.resume__face:not(:has(.resume__toggle)) .resume__item--go{border-radius:var(--radius)}.resume__item:hover:not(:disabled){background:var(--surface-2)}.resume__item:disabled{opacity:.7;cursor:wait}.resume__item strong,.resume__option strong{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.resume__item .muted,.resume__option .muted{font-size:13px;flex:none}.resume__toggle{flex:none;display:inline-flex;align-items:center;justify-content:center;width:48px;border:0;border-left:1px solid var(--border);background:transparent;color:var(--text-2);cursor:pointer;border-radius:0 var(--radius) var(--radius) 0}.resume__toggle:hover{background:var(--surface-2);color:var(--text)}.resume__combo.open .resume__toggle{transform:none}.resume__combo.open .resume__search .resume__toggle .icon{transform:rotate(180deg)}.resume__panel{display:grid}.resume__search{display:flex;align-items:center;gap:10px;min-height:52px;padding-left:14px;color:var(--text-2)}.resume__search input{flex:1;min-width:0;height:52px;border:0;outline:0;background:transparent;font:inherit;font-size:16px;color:var(--text)}.resume__search .resume__toggle{align-self:stretch;height:auto;min-height:52px}.resume__menu{list-style:none;margin:0;padding:6px;border-top:1px solid var(--border);max-height:min(360px,55vh);overflow:auto;-webkit-overflow-scrolling:touch}.resume__option{display:flex;align-items:center;gap:10px;width:100%;padding:12px;border:0;border-radius:10px;background:transparent;color:var(--text);text-align:left;cursor:pointer;font:inherit}.resume__option:hover,.resume__option.on{background:var(--primary-soft)}.resume__option:disabled{opacity:.7;cursor:wait}.resume__empty{padding:16px 12px;text-align:center}.topics-table__topic{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.topics-table__topic strong{font-weight:650}.topics-table__actions{display:flex;flex-wrap:nowrap;gap:4px;justify-content:flex-end;white-space:nowrap}.topics-table__fold{width:36px;text-align:center;color:var(--text-3)}.topics-table__parent{cursor:pointer}.topics-table__parent:hover{background:var(--surface-2)}.topics-table__parent.open td{border-bottom-color:transparent}.topics-table__summary{font-size:13px}.topics-table__child td{background:color-mix(in srgb,var(--surface-2) 55%,transparent)}.topics-table__child-topic{max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topics-toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.topics-toolbar .input{flex:1;min-width:180px;height:50px}.topics-toolbar__meta{display:flex;align-items:center;gap:8px;margin:0;white-space:nowrap}.topics-filter-toggle{display:inline-flex;align-items:center;gap:6px}.topics-filter-toggle__sum{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--primary);font-weight:600}.topics-filters{display:grid;gap:10px;margin-top:4px;padding:14px 16px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface)}.topics-filters__row{display:flex;align-items:flex-start;gap:12px}.topics-filters__label{flex:0 0 36px;margin-top:8px;font-size:13px;font-weight:600;color:var(--text-3)}.topics-filters .chips{flex:1}.topics-list{display:grid;gap:10px}.topics-acc{overflow:hidden}.topics-acc__head{display:grid;grid-template-columns:22px minmax(0,1fr) auto;grid-template-areas:"chev title when" "chev meta when";column-gap:10px;row-gap:4px;width:100%;padding:14px 16px;border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.topics-acc__head:hover{background:var(--surface-2)}.topics-acc.open>.topics-acc__head{background:var(--surface-2)}.topics-acc__chev{grid-area:chev;color:var(--text-3);margin-top:2px}.topics-acc__title{grid-area:title;display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;min-width:0}.topics-acc__title strong{font-weight:650;font-size:16px}.topics-acc__meta{grid-area:meta;margin:0;font-size:13px;line-height:1.4;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.topics-acc__when{grid-area:when;font-size:12px;align-self:start;white-space:nowrap}.topics-acc__body{display:grid;gap:0;border-top:1px solid var(--border)}.topics-acc__item{display:grid;gap:8px;padding:12px 16px 12px 48px;border-top:1px solid var(--border)}.topics-acc__item:first-child{border-top:0}.topics-acc__tags{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.topics-acc__subtitle{margin:0;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topics-acc__foot{display:flex;align-items:center;justify-content:space-between;gap:10px}.mobile-only{display:none!important}.topic-create{display:grid;gap:14px}.topic-create .field span{font-size:13px;color:var(--text-2)}.topic-create input,.topic-create select{width:100%;height:44px;padding:0 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);font:inherit}.topic-create__actions{display:flex;justify-content:flex-end;gap:10px;margin-top:4px}.coach{width:min(960px,100%);margin:0 auto;display:grid;gap:10px;padding:16px 20px;border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--surface)}.coach__row{display:flex;align-items:center;gap:12px;font-size:14px}.coach__row p{flex:1}.coach__row p strong{margin-right:10px}.coach__icon{color:var(--primary)}.coach__auto{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--text-2)}.options{display:flex;flex-direction:column;padding:32px 36px;border-radius:20px}.options__row{display:grid;gap:0}.options__row--top{grid-template-columns:1.25fr 1fr .8fr;padding-bottom:28px;border-bottom:1px solid var(--border)}.options__row--bottom{grid-template-columns:1fr 1fr;padding-top:28px}.opt{padding:0 32px;display:flex;flex-direction:column;gap:16px;min-width:0}.opt:first-child{padding-left:0}.opt:last-child{padding-right:0}.opt+.opt{border-left:1px solid var(--border)}.opt__head{display:flex;gap:12px;align-items:flex-start}.opt__head .icon{margin-top:2px}.opt__head h3{font-size:17px}.opt__head p{font-size:13px;color:var(--text-2);margin-top:2px}.opt__sub{margin-top:-4px}.opt__note{font-size:13px}.lang-cards{display:grid;grid-template-columns:1fr 1fr;gap:16px}.lang-card{position:relative;display:flex;align-items:center;gap:16px;height:76px;padding:0 20px 0 26px;border-radius:12px;border:1px solid var(--border);background:var(--surface);text-align:left;overflow:hidden;transition:border-color .15s,background .15s}.lang-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px}.lang-card--en:before{background:var(--en)}.lang-card--ja:before{background:var(--ja)}.lang-card--en.on{border-color:var(--en);background:var(--en-soft)}.lang-card--ja.on{border-color:var(--ja);background:var(--ja-soft)}.lang-card--ja:not(.on){border-color:color-mix(in srgb,var(--ja) 45%,var(--border))}.lang-card--en:not(.on){border-color:color-mix(in srgb,var(--en) 30%,var(--border))}.lang-card__text{display:grid;flex:1}.lang-card__text strong{font-size:17px;font-weight:600}.lang-card__text small{font-size:13px;color:var(--text-2)}.lang-card__check{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--primary);color:#fff}.lang-card--ja .lang-card__check{background:var(--ja)}.tile-grid{display:grid;gap:12px}.tile-grid--accent,.tile-grid--mode{grid-template-columns:repeat(auto-fit,minmax(100px,1fr))}.tile{display:grid;justify-items:center;align-content:center;gap:4px;min-height:124px;padding:14px 8px;border-radius:12px;border:1px solid var(--border);background:var(--surface);text-align:center;transition:border-color .15s,background .15s}.tile:hover{border-color:var(--primary)}.tile.on{border:2px solid var(--primary);background:var(--primary-soft);padding:13px 7px}.tile strong{font-size:15px;font-weight:600;margin-top:4px}.tile small{font-size:12px;color:var(--text-2);line-height:1.4}.tile__icon,.region-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--surface-3);color:var(--text-2)}.region-icon svg{fill:currentColor;stroke:currentColor}.tile.on .tile__icon,.tile.on .region-icon{background:var(--primary);color:#fff}.practice{width:100%}.practice__body{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:24px;align-items:start}.practice__main{min-width:0;display:flex;flex-direction:column;gap:16px}.practice__flow{display:flex;flex-direction:column;gap:16px}.practice__flow>div{display:flex;flex-direction:column;gap:16px}.practice__titlebar{display:flex;align-items:center;gap:12px}.practice__title{flex:1;min-width:0;overflow-wrap:anywhere;font-size:22px;font-weight:600}.practice__settings-btn{flex-shrink:0}.practice__settings-btn{display:none}.practice__aside{position:sticky;top:calc(var(--header-h) + 20px);padding:28px;max-height:calc(100vh - var(--header-h) - 40px);overflow:auto}.settings{display:flex;flex-direction:column;gap:0}.settings__title{display:flex;align-items:center;gap:10px;font-size:22px;padding-bottom:20px;border-bottom:1px solid var(--border)}.settings__group{display:grid;gap:14px;padding:22px 0;border-bottom:1px solid var(--border)}.settings__group h3{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:600}.settings .seg{background:transparent;border:0;padding:0;gap:12px}.settings .seg button{border:1px solid var(--border);border-radius:10px;background:var(--surface);min-height:44px;box-shadow:none}.settings .seg button.on{border-color:var(--primary);background:var(--primary)}.setting-row{display:grid;grid-template-columns:22px 1fr auto;gap:12px;align-items:start}.setting-row>.icon{margin-top:2px}.setting-row p{font-size:13px;color:var(--text-2);margin-top:4px}.settings__progress-head{display:flex;justify-content:space-between;align-items:center;color:var(--text-2)}.settings__progress-head span{font-size:15px}.settings__saved{font-size:12px}.settings__current{border-bottom:0}.settings>.btn{margin-top:8px}.settings>.error,.settings>.hint{margin-top:10px}.q-badge{display:grid;place-items:center;flex:none;width:40px;height:40px;border-radius:50%;background:var(--primary);color:#fff;font-weight:600;font-size:15px}.qa{display:flex;flex-direction:column;gap:16px}.qa-done{padding:16px 20px}.qa-done .card__title{margin-bottom:12px}.qa-row{border:1px solid var(--border);border-radius:12px;background:var(--surface-2)}.qa-row+.qa-row{margin-top:10px}.qa-row__head{display:grid;grid-template-columns:auto minmax(0,1.2fr) auto minmax(0,1fr) auto;align-items:center;gap:12px;width:100%;padding:10px 16px;border:0;background:none;text-align:left}.qa-row__no{font-family:var(--font-serif);font-weight:600}.qa-row__q,.qa-row__a{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.qa-row__a{font-size:14px}.qa-row__body{padding:0 16px 14px;display:grid;gap:10px}.qa-follow{padding-left:14px;border-left:3px solid var(--primary-soft-2);display:grid;gap:6px}.qa-follow__q{font-size:15px}.qa-current{display:flex;flex-direction:column;gap:18px}.qa-current__head{display:flex;align-items:flex-start;gap:16px}.qa-current__text{flex:1;min-width:0}.q-text{font-size:26px;line-height:1.4}.qa-current__foot{display:flex;align-items:center;justify-content:space-between;gap:12px}.ai-box{padding:16px 20px;border-radius:12px;background:color-mix(in srgb,var(--primary-soft) 70%,var(--surface));border:1px solid var(--primary-soft-2);display:grid;gap:10px}.ai-box__head{display:flex;align-items:center;gap:10px;color:var(--primary)}.ai-box__head strong{font-weight:600}.ai-box__hint{font-size:13px}.ai-box__q{display:flex;align-items:flex-start;gap:12px}.ai-box__q .target{flex:1}.ai-box__text{font-size:18px}.play{display:inline-grid;place-items:center;flex:none;width:40px;height:40px;border-radius:50%;border:0;background:var(--primary);color:#fff;transition:transform .1s,background .15s}.play:hover{background:var(--primary-hover)}.play:active{transform:scale(.95)}.play--sm{width:30px;height:30px;background:var(--primary-soft);color:var(--primary)}.play--sm:hover{background:var(--primary-soft-2)}.play--lg{width:46px;height:46px}.play.is-on{background:var(--primary-hover);color:#fff;box-shadow:0 0 0 5px var(--primary-soft)}.play--label{display:inline-flex;width:auto;height:42px;gap:8px;padding:0 16px;border-radius:10px;background:var(--surface);color:var(--primary);border:1px solid color-mix(in srgb,var(--primary) 45%,var(--border));font-weight:500}.play--label:hover{background:var(--primary-soft)}.play--label.is-on{background:var(--primary-soft);color:var(--primary);box-shadow:none}.veil{position:relative;display:block;width:100%;border:0;padding:0;background:none;text-align:left}.veil__text{filter:blur(6px);opacity:.5;-webkit-user-select:none;user-select:none;display:block;font-size:inherit}.veil__label{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 16px;border-radius:999px;background:var(--primary-soft-2);color:var(--primary);font-size:14px;font-weight:500;font-family:var(--font-ui)}.target{min-width:0}.savable--open{-webkit-touch-callout:none}.pick-menu{position:fixed;z-index:80;min-width:148px;padding:6px;border-radius:12px;-webkit-user-select:none;user-select:none;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-lg)}.pick-menu button{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;height:40px;border:0;border-radius:8px;background:var(--primary);color:#fff;font-size:14px;font-weight:600}.pick-menu button:hover:not(:disabled){background:var(--primary-hover)}.pick-menu button:disabled{opacity:.6;cursor:default}.pick-menu button .icon{color:#fff}.pick-note{position:fixed;z-index:81;left:50%;bottom:24px;transform:translate(-50%);margin:0;pointer-events:none;padding:10px 16px;border-radius:999px;background:var(--text);color:#fff;font-size:14px;box-shadow:var(--shadow)}.pick-note--err{background:var(--error)}.answer{display:flex;flex-direction:column;gap:16px;border:1px solid var(--border);border-radius:14px;padding:20px;background:var(--surface)}.answer__tabs{align-self:flex-start}.answer__voice{display:grid;justify-items:center;gap:6px}.mic{position:relative;display:grid;place-items:center;width:140px;height:140px}.mic__ring{position:absolute;top:14px;right:14px;bottom:14px;left:14px;border-radius:50%;background:var(--primary-soft);border:1px solid var(--primary-soft-2);transition:transform .1s;box-shadow:0 0 0 14px color-mix(in srgb,var(--primary-soft) 45%,transparent)}.rec-btn{position:relative;display:grid;place-items:center;width:88px;height:88px;border-radius:50%;border:0;background:var(--primary);color:#fff;box-shadow:0 6px 18px color-mix(in srgb,var(--primary) 40%,transparent);transition:background .2s,transform .1s}.rec-btn:active{transform:scale(.96)}.rec-btn.is-recording{background:var(--error);box-shadow:0 0 color-mix(in srgb,var(--error) 50%,transparent);animation:ripple 1.4s infinite}.rec-btn.is-processing{animation:pulse 1s infinite alternate}.rec-btn:disabled{background:var(--border-strong);box-shadow:none}.rec-btn--sm{width:52px;height:52px}@keyframes ripple{0%{box-shadow:0 0 color-mix(in srgb,var(--error) 45%,transparent)}to{box-shadow:0 0 0 22px transparent}}@keyframes pulse{0%{opacity:1;transform:scale(1)}to{opacity:.65;transform:scale(.94)}}.mic__timer{font-variant-numeric:tabular-nums;color:var(--text-2);font-size:17px;font-weight:500}.mic__timer.is-live{color:var(--primary)}.mic__status{color:var(--text-2);font-size:14px}.result-box{width:100%;padding:14px 18px;border-radius:12px;background:var(--surface-2);display:grid;gap:6px;border:1px solid var(--border)}.result-box__head{display:flex;align-items:center;gap:6px;color:var(--primary);font-size:14px;font-weight:500}.result-box__text{font-size:18px}.interim{color:var(--text-2);margin-left:8px}.answer__actions{width:100%;display:grid;grid-template-columns:1fr 1fr 1.4fr;gap:14px;margin-top:6px}.answer__actions--end{display:flex;justify-content:flex-end}.answer__text{display:grid;gap:12px}.answer--compact{border:0;padding:0;background:none;gap:8px}.answer-bar{display:flex;align-items:center;gap:12px;padding:10px 12px 10px 10px;border-radius:14px;border:1px solid var(--border);background:var(--surface-2)}.answer-bar__text{flex:1;min-width:0;font-size:15px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rec-btn:disabled{cursor:progress}.answered{padding:12px 16px;border-radius:10px;background:var(--surface);border:1px solid var(--border);display:grid;gap:8px}.answered__text{font-size:17px}.answered__meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:13px}.dialogue,.chatmode{display:flex;flex-direction:column;gap:16px}.role-cards{display:grid;grid-template-columns:1fr 1fr;gap:20px}.role-card{position:relative;display:flex;align-items:center;gap:20px;padding:18px 22px;border-radius:14px;border:1px solid var(--border);background:var(--surface-2);text-align:left}.role-card:not(:disabled):hover{border-color:var(--primary)}.role-card.on{border:2px solid var(--primary);background:var(--primary-soft);padding:17px 21px}.role-card:disabled:not(.on){opacity:.55}.role-card__text{display:grid;gap:6px}.role-card__text strong{font-size:24px;font-weight:700}.role-card.on .role-card__text strong{color:var(--primary)}.role-card__text span{font-size:14px;color:var(--text-2)}.role-card__check{position:absolute;right:14px;top:14px;display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--primary);color:#fff}.figure{display:inline-block;flex:none;border-radius:50%;overflow:hidden}.figure svg{width:100%;height:100%;display:block}.figure__bg{fill:#dce3fd}.figure--b .figure__bg{fill:#e4e0fa}.figure__body{fill:#2b3a67}.figure--b .figure__body{fill:#f4f2fa;stroke:#b9b2e0;stroke-width:1.5}.figure__tie{fill:#4f6af6}.figure__shirt{fill:none;stroke:#b9b2e0;stroke-width:1.5}.figure__face{fill:#f6d3b5}.figure__hair{fill:#2b2b33}.dlg{display:flex;flex-direction:column;gap:18px}.radio-pills{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.radio-pills button{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 18px 0 12px;border-radius:999px;border:1px solid var(--border);background:var(--surface);font-size:15px}.radio-pills .radio{width:18px;height:18px;border-radius:50%;border:2px solid var(--border-strong);background:var(--surface)}.radio-pills button.on{background:var(--primary);border-color:var(--primary);color:#fff}.radio-pills button.on .radio{border:5px solid #fff;background:var(--primary)}.radio-pills .muted{font-size:13px;margin-left:6px}.dlg__log{display:flex;flex-direction:column;gap:18px}.msg{display:flex;align-items:flex-start;gap:14px;max-width:86%}.msg--me{flex-direction:row-reverse;align-self:flex-end}.msg__col{display:grid;gap:6px;min-width:0}.msg--me .msg__col{justify-items:end}.msg__bubble{display:flex;align-items:flex-start;gap:12px;padding:14px 20px;border-radius:14px;background:var(--surface-2);font-size:18px;line-height:1.55}.msg--me .msg__bubble{background:var(--primary-soft);flex-direction:column;gap:4px}.msg__bubble .target{flex:1}.msg__bubble .play--sm{margin-top:2px}.msg__hint{font-size:15px;display:grid}.msg__meta{font-size:12px;color:var(--text-3)}.msg__col .shadow-card{justify-self:stretch;margin-top:4px;width:100%}.msg--me .msg__col .shadow-card{justify-self:stretch}.shadow-card{display:flex;gap:14px;padding:18px 20px;border-radius:14px;border:1px solid var(--border);background:var(--surface-2)}.shadow-card__icon{display:grid;place-items:center;width:42px;height:42px;flex:none;border-radius:50%;background:var(--primary-soft);color:var(--primary)}.shadow-card__body{flex:1;display:grid;gap:8px;min-width:0}.shadow-card__head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.shadow-card .diff{font-size:18px}.dlg__input{display:grid;gap:8px;padding:14px;border-radius:14px;border:1px solid var(--border)}.dlg__input>.link{justify-self:start}.chat-brief{display:grid;gap:14px}.chat-brief .scene{margin:0}.chat-brief__roles{display:grid;grid-template-columns:1fr 1fr;gap:16px}.chat-brief__role{display:flex;gap:12px;align-items:center}.chat-brief__role>span{display:grid;font-size:13px}.chat-brief__role strong{font-size:17px}.chat-brief__goal{display:flex;gap:8px;align-items:center;font-size:14px;color:var(--text-2)}.chat-brief__goal .icon{color:var(--primary)}.diff{line-height:1.7}.diff .miss{color:var(--error);text-decoration:underline wavy color-mix(in srgb,var(--error) 70%,transparent);text-underline-offset:4px}.pron{cursor:default}.pron-btn{gap:4px}.article{display:flex;flex-direction:column;gap:16px}.art{padding:20px 20px 12px}.art__head{display:flex;align-items:center;gap:16px;padding:4px 8px 16px}.art__title{flex:1;font-size:28px;font-weight:600}.sent-list{list-style:none;margin:0;padding:0;border:1px solid var(--border);border-radius:14px;overflow:hidden}.sent{border-bottom:1px solid var(--border);background:var(--surface)}.sent:last-child{border-bottom:0}.sent.is-playing{background:color-mix(in srgb,var(--primary-soft) 60%,var(--surface))}.sent__row{display:flex;align-items:center;gap:14px;padding:16px 18px}.sent__no{color:var(--text-2);font-family:var(--font-serif);font-size:18px;width:26px;flex:none;text-align:right}.sent__body{flex:1;min-width:0}.sent__text{font-size:20px;line-height:1.5}.sent__shadow{border-radius:999px}.sent__more{padding:0 18px 18px 100px;display:grid;gap:12px}.shadow-result{display:grid;gap:8px;padding:12px 14px;border-radius:10px;background:var(--surface-2)}.shadow-result__meta{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.shadow-sync{display:inline-flex;align-items:center;gap:10px;flex-wrap:wrap}.quiz-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.quiz-card{display:grid;gap:12px;align-content:start;padding:18px;border-radius:14px;border:1px solid var(--border);background:var(--surface)}.quiz-card--active{grid-column:1 / -1;border-color:var(--primary)}.quiz-card.done:not(.quiz-card--active){background:var(--surface-2)}.quiz-card__head{display:flex;gap:8px;align-items:flex-start}.quiz-card__no{font-family:var(--font-serif);font-size:17px}.quiz-card__head .target{flex:1}.quiz-card__q{font-size:17px}.quiz-card__go{justify-self:start}.cloze{font-size:20px;line-height:2.1}.cloze__slot{display:inline-flex;align-items:baseline;gap:4px}.cloze__input{height:34px;padding:0 8px;border:0;border-bottom:2px solid var(--primary);background:var(--primary-soft);border-radius:6px 6px 0 0;font:inherit;font-size:18px;text-align:center;outline:0}.cloze__input.ok{border-color:var(--success);background:var(--success-soft)}.cloze__input.bad{border-color:var(--error);background:var(--error-soft);text-decoration:line-through}.cloze__answer{color:var(--success);font-size:16px}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:grid;place-items:center;padding:20px;background:#14161e61;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.overlay--drawer{place-items:stretch end;padding:0}.modal{width:min(520px,100%);background:var(--surface);border-radius:18px;padding:24px 28px 28px;box-shadow:var(--shadow-lg);display:grid;gap:12px}.modal--wide{width:min(720px,100%);max-height:calc(100vh - 40px);overflow:auto}.modal--wide .modal__actions{position:sticky;bottom:0;z-index:1;background:var(--surface)}.upload-files{max-height:160px;overflow:auto;margin:0;padding-left:18px}.drawer{width:min(500px,calc(100vw - 32px));height:100%;overflow:auto;background:var(--surface);padding:24px 28px;box-shadow:var(--shadow-lg);animation:slide .2s ease-out}@keyframes slide{0%{transform:translate(40px);opacity:.6}}.modal__head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:4px}.modal__head h2{display:flex;align-items:center;gap:10px;font-size:22px}.modal__actions{display:flex;justify-content:flex-end;gap:10px;margin-top:8px;flex-wrap:wrap}.notes{display:flex;flex-direction:column;gap:18px}.notes__bar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.notes__bar .seg{min-width:440px}.notes__actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:13px}.notes__summary{display:flex;gap:8px;align-items:center;color:var(--text-2)}.notes__summary .icon{color:var(--warn)}.notes__busy{display:flex;align-items:center;gap:12px;color:var(--text-2)}.notes__empty{display:grid;gap:16px;justify-items:start}.word-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.word-card{display:flex;flex-direction:column;gap:10px;padding:26px 28px}.word-card__top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.word-card__word{font-size:34px;font-weight:700;line-height:1.2}.word-card__meta{display:flex;align-items:center;gap:12px;font-size:16px}.word-card__meta .tag{height:28px;padding:0 12px;font-size:14px}.word-card__star{margin-left:auto}.word-card__meaning{font-size:18px;padding-bottom:16px;border-bottom:1px solid var(--border)}.word-card__ex p:first-child{font-size:19px;line-height:1.5}.word-card__ex .play--sm{display:inline-grid;vertical-align:middle;width:24px;height:24px;margin-left:4px}.note-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.note-card{display:flex;flex-direction:column;gap:14px;padding:24px 28px}.note-card>.label-pill{align-self:flex-start}.note-card__head{display:flex;justify-content:space-between;align-items:center}.note-card__title{font-size:28px;font-weight:700}.ex-row{display:flex;gap:14px;align-items:flex-start}.ex-row>.tag{height:32px;padding:0 14px;font-size:14px;flex:none}.ex-row p{font-size:17px}.ex-row .play--sm{display:inline-grid;vertical-align:middle;width:24px;height:24px}.ex-row--line{padding-bottom:14px;border-bottom:1px solid var(--border);align-items:center}.pitfall{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:10px;background:var(--warn-soft);border:1px solid color-mix(in srgb,var(--warn) 30%,transparent);font-size:14px}.pitfall .icon{color:var(--warn)}.pitfall strong{color:var(--warn);padding-right:12px;border-right:1px solid color-mix(in srgb,var(--warn) 40%,transparent)}.keypoints{display:flex;flex-direction:column;gap:12px}.keypoints__empty{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.keypoints__empty p{color:var(--text-2)}.keypoints__head{display:flex;align-items:center;justify-content:space-between;gap:8px}.keypoints__head h2{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:650}.keypoints__grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 18px;margin-top:12px}.kp-word,.kp-pattern{display:flex;flex-direction:column;gap:4px;min-width:0;padding-top:8px;border-top:1px solid var(--border)}.kp-word__top,.kp-pattern__top{display:flex;align-items:center;gap:8px}.kp-word__term,.kp-pattern__term{font-size:17px;font-weight:700;line-height:1.35}.kp-word__meta{display:flex;align-items:center;gap:8px;color:var(--text-3);font-size:13px;flex-wrap:wrap}.kp-word__meaning{font-size:15px}.kp-ex{font-size:14px;color:var(--text-2)}.kp-ex .play--sm{display:inline-grid;vertical-align:middle;width:22px;height:22px;margin-left:4px}.kp-word .star,.kp-pattern .star{margin-left:auto}.star{display:inline-flex;align-items:center;gap:4px;height:30px;padding:0 8px;border-radius:8px;border:0;background:transparent;color:var(--text-3);font-size:13px}.star:hover:not(:disabled){color:var(--warn);background:var(--warn-soft)}.star.is-on{color:var(--warn)}.searchrow{display:flex;gap:16px}.searchrow .input{flex:1;height:50px}.nl-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px}.nl-card{display:flex;flex-direction:column;gap:10px;color:var(--text);transition:border-color .15s,box-shadow .15s}.nl-card:hover{border-color:var(--primary);box-shadow:var(--shadow)}.nl-card__top{display:flex;justify-content:space-between;align-items:center}.nl-card h3{font-size:20px}.nl-card__sum{font-size:14px;padding-bottom:14px;border-bottom:1px solid var(--border);min-height:3em}.nl-card__counts{display:grid;grid-template-columns:repeat(3,1fr)}.nl-card__counts span{display:grid;grid-template-columns:auto auto;justify-content:center;column-gap:8px;align-items:center}.nl-card__counts span+span{border-left:1px solid var(--border)}.nl-card__counts .icon{color:var(--primary)}.nl-card__counts span:nth-child(2) .icon{color:var(--success)}.nl-card__counts span:nth-child(3) .icon{color:var(--purple)}.nl-card__counts small{color:var(--text-2);font-size:13px}.nl-card__counts strong{grid-column:1 / -1;text-align:center;font-size:17px;font-weight:500}.report{display:flex;flex-direction:column;gap:20px;width:100%;max-width:1400px}.hero{display:grid;grid-template-columns:1.05fr 1fr .8fr;gap:24px;align-items:center;padding:20px}.hero__score{position:relative;display:flex;align-items:center;justify-content:center;gap:12px;min-height:230px;border-radius:14px;background:linear-gradient(150deg,color-mix(in srgb,var(--primary-soft) 80%,var(--surface)),var(--surface) 80%)}.hero__center{display:grid;justify-items:center;text-align:center}.hero__num{font-size:92px;line-height:1;font-weight:800;color:var(--primary);letter-spacing:-.02em;font-family:var(--font-ui)}.hero__label{font-size:26px;font-weight:600;margin-top:4px}.hero__summary{color:var(--text-2);margin-top:10px;font-size:15px}.laurel{width:40px;height:90px;fill:none;stroke:color-mix(in srgb,var(--primary) 30%,transparent);stroke-width:2}.laurel ellipse{fill:color-mix(in srgb,var(--primary) 18%,transparent);stroke:none}.hero__radar svg{width:100%;max-height:260px}.radar__grid{fill:none;stroke:var(--border-strong)}.radar__axis{stroke:var(--border)}.radar__shape{fill:color-mix(in srgb,var(--primary) 18%,transparent);stroke:var(--primary);stroke-width:2}.radar__dot{fill:var(--primary)}.radar__label{font-size:12px;fill:var(--text)}.hero__list{list-style:none;margin:0;padding:0;display:grid}.hero__list li{display:grid;grid-template-columns:10px 1fr auto;gap:12px;align-items:center;padding:9px 4px;border-bottom:1px solid var(--border);font-size:14px}.hero__list li:last-child{border-bottom:0}.hero__list .dot{width:9px;height:9px;border-radius:50%}.report__summary{color:var(--text-2)}.stat-row{display:flex;gap:12px;flex-wrap:wrap;margin:0}.stat-row>div{padding:10px 16px;border-radius:12px;background:var(--surface);border:1px solid var(--border)}.stat-row dt{font-size:12px;color:var(--text-2)}.stat-row dd{margin:0;font-size:20px;font-weight:600}.stat-row small{font-size:12px;color:var(--text-2);font-weight:400;margin-left:6px}.report__grid{display:grid;grid-template-columns:minmax(0,3fr) minmax(280px,1fr);gap:20px;align-items:start}.report__grid--wide{grid-template-columns:minmax(0,1.65fr) minmax(320px,1fr)}.dim-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.dim-card{display:grid;gap:14px;padding:20px}.dim-card__head{display:flex;align-items:center;gap:12px}.dim-card__head strong{flex:1;font-weight:600}.dim-card__icon{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;color:#fff;flex:none}.dim-card__score{font-size:20px;font-weight:600}.dim-card__score:not(.good):not(.mid):not(.low){font-size:14px;font-weight:400;color:var(--text-3)}.dim-card__score.good{color:var(--score-good)}.dim-card__score.mid{color:var(--score-mid)}.dim-card__score.low{color:var(--score-low)}.dim-card__comment{font-size:14px;color:var(--text-2)}.dim-card__src{font-size:12px}.report__side{display:grid;gap:16px}.side-card{padding:0;overflow:hidden}.side-card h2{display:flex;align-items:center;gap:10px;padding:14px 20px;font-size:17px}.side-card--good h2{background:var(--success-soft);color:var(--success)}.side-card--warn h2{background:var(--warn-soft);color:var(--warn)}.side-card ul{list-style:none;margin:0;padding:14px 20px 18px;display:grid;gap:14px}.side-card li{display:flex;gap:10px;font-size:14px}.side-card--good li .icon{color:var(--success)}.side-card--warn li .icon{color:var(--warn)}.review-table td{font-size:14px}.review-table td.t-en,.review-table td .t-en{font-size:15px}.review-table tr.open td{border-bottom-color:transparent;background:var(--surface-2)}.review-table__detail td{background:var(--surface-2);padding-top:0}.review-table__detail td>*+*{margin-top:8px}.metric-tags{display:flex;flex-wrap:wrap;gap:6px}.ab{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:13px}.item-notes{font-size:14px;color:var(--text)}.pron-issues{margin:0;padding-left:18px;font-size:13px;color:var(--text-2)}.expr{display:grid;gap:12px}.expr .card__title{margin-bottom:4px}.expr .card__title .icon{color:var(--primary)}.expr-card{display:flex;gap:14px;padding:14px 16px;border:1px solid var(--border);border-radius:12px}.expr-card__body{flex:1;display:grid;gap:4px;min-width:0;font-size:13px}.expr-card__body p{display:flex;gap:12px}.expr-card__body p .muted{flex:none;width:52px}.expr-card__top{display:flex;align-items:center;gap:8px}.expr-card__top strong{font-size:18px;font-weight:600}.expr-card__star{margin-left:auto;color:var(--primary);background:var(--primary-soft);height:24px;font-size:12px}.trend svg{width:100%;height:auto;display:block}.trend__grid{stroke:var(--border);stroke-dasharray:3 4}.trend__tick{font-size:12px;fill:var(--text-2)}.trend__line{fill:none;stroke-width:2.2;stroke-linejoin:round}.trend__series--en .trend__line{stroke:var(--en)}.trend__series--en .trend__dot{fill:var(--en)}.trend__series--ja .trend__line{stroke:var(--ja)}.trend__series--ja .trend__dot{fill:var(--ja)}.legend{display:flex;gap:18px;font-size:13px;color:var(--text-2)}.legend__item{display:inline-flex;align-items:center;gap:8px}.legend__item i{width:22px;height:2px;position:relative}.legend__item i:after{content:"";position:absolute;left:7px;top:-3px;width:8px;height:8px;border-radius:50%;background:inherit}.legend__item--en i{background:var(--en)}.legend__item--ja i{background:var(--ja)}.history-table td{font-size:15px;padding:16px 20px}.history-table th{padding:16px 20px;background:transparent;border-bottom:1px solid var(--border)}.history-table__topic .muted{display:block;font-size:12px}.history-list{display:grid;gap:10px}.history-card{padding:14px 16px;cursor:pointer}.history-card:hover{background:var(--surface-2)}.history-card__top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:8px}.history-card__tags{display:flex;flex-wrap:wrap;gap:6px;min-width:0}.history-card__when{flex:none;font-size:12px;white-space:nowrap}.history-card__topic{margin:0;font-size:17px;font-weight:650;line-height:1.35}.history-card__title{margin:4px 0 0;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.history-card__foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px}.history-card__actions{display:flex;gap:4px}.flash{display:grid;gap:14px;justify-items:start;max-width:760px}.flash__meta{display:flex;gap:12px;align-items:center}.flash__ask{font-size:20px;font-weight:600}.flash__meaning{font-size:22px}.flash__hint{color:var(--text-2)}.flash__answer{width:100%;display:grid;gap:12px;padding-top:14px;border-top:1px solid var(--border)}.flash__front{display:flex;align-items:center;gap:10px;font-size:22px}.flash__result{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 14px;border-radius:10px}.flash__result.good{background:var(--success-soft);color:var(--success)}.flash__result.low{background:var(--error-soft);color:var(--error)}.flash .answer{width:100%}.example{display:flex;gap:10px;align-items:flex-start}.grades{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.grade{display:grid;gap:2px;padding:10px;border-radius:12px;border:1px solid var(--border);background:var(--surface);font-weight:600}.grade small{font-weight:400;color:var(--text-2);font-size:12px}.grade.again:hover,.grade.again.suggested{border-color:var(--error);color:var(--error)}.grade.hard:hover{border-color:var(--warn);color:var(--warn)}.grade.good:hover,.grade.good.suggested{border-color:var(--success);color:var(--success)}.grade.easy:hover{border-color:var(--primary);color:var(--primary)}.grade.suggested{box-shadow:0 0 0 3px var(--surface-3)}.review__search{max-width:420px}.cell-front{display:inline-flex;gap:8px;align-items:center}.table__title{display:block;font-size:12px}.quiz__start,.quiz__round,.quiz__done{display:grid;gap:16px;justify-items:start;max-width:760px}.quiz__head{display:flex;align-items:center;gap:16px;width:100%;justify-content:space-between}.counter{color:var(--text-2);font-size:14px}.quiz__sentence{font-size:20px}.quiz__options{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:100%}.quiz__option{height:52px;border-radius:12px;border:1px solid var(--border);background:var(--surface);font-size:16px;display:flex;align-items:center;justify-content:center;gap:6px}.quiz__option:hover:not(:disabled){border-color:var(--primary);color:var(--primary)}.quiz__option small{font-size:11px;color:var(--text-3)}.quiz__option.right{border-color:var(--success);background:var(--success-soft);color:var(--success)}.quiz__option.wrong{border-color:var(--error);background:var(--error-soft);color:var(--error)}.quiz__verdict.good{color:var(--success);font-weight:600}.quiz__verdict.low{color:var(--error);font-weight:600}.quiz__compare{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.ring__track{fill:none;stroke:var(--surface-3);stroke-width:9}.ring__value{fill:none;stroke-width:9;stroke-linecap:round;stroke:var(--primary);transition:stroke-dasharray .5s}.ring.good .ring__value{stroke:var(--score-good)}.ring.mid .ring__value{stroke:var(--score-mid)}.ring.low .ring__value{stroke:var(--score-low)}.ring__text{font-size:18px;font-weight:700;fill:var(--text)}.invite-form{display:grid;grid-template-columns:1fr 1fr 2fr auto;gap:20px;align-items:start}.invite-form__go{margin-top:27px;min-height:46px;padding:0 36px}.field__count{justify-self:end}.success-card{display:flex;align-items:center;gap:18px;flex-wrap:wrap;padding:20px 24px;border-radius:var(--radius-lg);background:var(--success-soft);border:1px solid color-mix(in srgb,var(--success) 30%,transparent)}.success-card__check{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--success);color:#fff;flex:none}.success-card__text{flex:1;min-width:200px;padding-right:24px;border-right:1px solid color-mix(in srgb,var(--success) 30%,transparent)}.success-card__text strong{color:var(--success);font-size:17px}.success-card__text p{font-size:13px;color:var(--text-2)}.success-card__code{display:grid}.success-card__code code{font-size:26px;font-weight:700;letter-spacing:.08em;padding:4px 14px;border-radius:10px;background:color-mix(in srgb,var(--success) 12%,var(--surface))}.import-prompt{width:100%;margin:12px 0;padding:12px 14px;border-radius:12px;border:1px solid var(--border);background:var(--surface-2);color:var(--text);font:13px/1.55 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;resize:vertical}.import-list{display:grid;gap:8px;margin-top:16px}.import-list li{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.user-cell{display:inline-flex;align-items:center;gap:10px}.user-cell .muted{font-size:12px}.usage-tasks{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}.usage-task{display:grid;padding:12px 14px;border-radius:12px;background:var(--surface-2);font-size:13px}.usage-task strong{font-size:22px}.account__who{display:flex;align-items:center;gap:16px}.account__who>div{flex:1}.share-page__main{margin:0 auto;padding:28px var(--gutter) 64px}@media (max-width: 1280px){.practice__body{grid-template-columns:minmax(0,1fr) 340px}.options__row--top{grid-template-columns:1fr 1fr;row-gap:28px}.opt--count{grid-column:1 / -1;padding-left:0!important;border-left:0!important}.options__row--bottom{grid-template-columns:1fr;row-gap:28px}.options__row--bottom .opt+.opt{border-left:0;padding-left:0}.hero{grid-template-columns:1fr 1fr}.hero__list{grid-column:1 / -1;grid-template-columns:repeat(3,1fr);column-gap:20px}}@media (max-width: 1100px){.practice__body{grid-template-columns:1fr}.practice__aside{display:none}.practice__settings-btn{display:inline-flex}.report__grid,.report__grid--wide{grid-template-columns:1fr}.word-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.note-grid,.quiz-grid,.invite-form{grid-template-columns:1fr 1fr}.invite-form__go{margin-top:0}.auth{grid-template-columns:1fr;padding:32px 20px}.auth__brand{padding-bottom:60px}.auth__logo span{font-size:44px}.auth__waves{height:90px}}@media (max-width: 900px){:root{--gutter: 16px;--header-h: 58px}.sidebar{display:none}.shell__main{padding:18px var(--gutter) 48px}.topbar{gap:12px}.brand__name{font-size:22px}.topbar__sep,.topbar__tagline,.head-crumb,.usermenu__name{display:none}.home__title{font-size:34px}.home__ask{flex-wrap:wrap}.home__upload{width:100%;height:52px}.resume__item,.resume__option{flex-wrap:wrap;align-items:flex-start;row-gap:6px;padding:14px}.resume__item strong,.resume__option strong{flex:1 1 100%;white-space:normal}.resume__item .muted,.resume__option .muted{flex:1 1 auto}.resume__item .icon,.resume__option .icon{margin-left:auto}.resume__toggle{width:44px}.resume__search input{font-size:16px}.resume__menu{max-height:min(420px,60vh)}.searchbar{flex-wrap:wrap;height:auto;padding:0;border:0;background:none;box-shadow:none;gap:12px}.course__item{grid-template-columns:auto 1fr}.course__item .btn{grid-column:2;justify-self:start}.searchbar:focus-within{box-shadow:none}.searchbar__icon{position:absolute;left:18px;top:17px;z-index:1}.searchbar__input{flex:1 1 100%;height:56px;padding-left:50px;border:1px solid var(--border-strong);border-radius:14px;background:var(--surface)}.searchbar{position:relative}.searchbar__btn{flex:1 1 100%;height:52px;border-radius:14px}.chips--center{flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;padding-bottom:6px}.chip{flex:none}.options{padding:0;border:0;background:none;box-shadow:none;gap:14px}.options__row,.options__row--top,.options__row--bottom{grid-template-columns:1fr;padding:0;border:0;gap:14px}.opt{padding:18px!important;border:1px solid var(--border)!important;border-radius:var(--radius-lg);background:var(--surface)}.tile-grid--mode{grid-template-columns:1fr}.tile-grid--mode .tile{grid-template-columns:44px 1fr;justify-items:start;text-align:left;min-height:0;column-gap:14px}.tile-grid--mode .tile .tile__icon{grid-row:span 2}.tile-grid--mode .tile strong{margin:0}.lang-cards{grid-template-columns:1fr 1fr;gap:10px}.lang-card{height:64px;padding:0 10px 0 18px;gap:10px}.lang-card .flag{width:28px;height:28px}.lang-card__check{width:20px;height:20px}.options.card{padding:0}.tile-grid--accent{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.tile-grid--accent .tile{min-width:0;width:100%;height:auto;min-height:104px;padding:10px 2px}.tile-grid--accent .tile strong{font-size:13px;line-height:1.2}.tile-grid--accent .tile small{display:block;max-width:100%;font-size:11px;line-height:1.25}.topbar .lang-crumb{display:none}.head-tabs{height:40px;padding:3px;gap:0;border-radius:999px;background:var(--surface-2)}.head-tabs>*{border:0;border-radius:999px;padding:0 14px;font-size:15px;white-space:nowrap;margin:0}.head-tabs>.on{background:var(--surface);box-shadow:var(--shadow)}.topbar__right>.icon-btn:not(.icon-btn--badge){display:none}.usermenu__btn>.icon:last-child{display:none}.qa-current__head{flex-wrap:wrap}.qa-current__text{flex:1 1 calc(100% - 60px)}.qa-current__head .play--label{order:3;margin-left:56px;height:36px}.ai-box__head{flex-wrap:wrap}.ai-box__hint{flex-basis:100%}.tip{margin-left:0}.q-text{font-size:22px}.qa-row__head{grid-template-columns:auto minmax(0,1fr) auto auto}.qa-row__a{display:none}.qa{display:flex}.qa-done{order:2}.answer{padding:16px}.answer__actions{grid-template-columns:1fr 1fr 1.2fr;gap:8px}.answer__actions .btn{padding:0 8px;font-size:14px}.role-cards,.chat-brief__roles{grid-template-columns:1fr}.msg{max-width:100%}.msg__bubble{font-size:16px;padding:12px 14px}.sent__row{flex-wrap:wrap;padding:14px;gap:10px}.sent__body{flex:1 1 calc(100% - 100px)}.sent__more{padding:0 14px 14px}.sent__text{font-size:18px}.quiz-grid,.note-grid,.word-grid,.keypoints__grid{grid-template-columns:1fr}.notes__bar .seg{min-width:0;width:100%}.dim-grid{grid-template-columns:1fr 1fr}.hero{grid-template-columns:1fr}.hero__list{grid-template-columns:1fr 1fr}.hero__num{font-size:72px}.invite-form{grid-template-columns:1fr}.auth__card{padding:24px 20px 28px}.tabs button{font-size:16px;padding:10px 12px}.quiz__options,.grades{grid-template-columns:1fr 1fr}h1{font-size:24px}.card{padding:18px}.page-head{align-items:flex-start;gap:10px}.page-head__actions{width:100%}.page-head__actions .btn{flex:1;justify-content:center}.desktop-only{display:none!important}.mobile-only{display:grid!important}.topics-toolbar{flex-direction:column;align-items:stretch;gap:10px}.topics-toolbar .input{min-width:0;width:100%}.topics-toolbar__meta{white-space:normal;flex-wrap:wrap}.topics-filter-toggle{width:100%;justify-content:center}.topics-filter-toggle__sum{max-width:none}.topics-filters{padding:12px}.topics-filters__row{flex-direction:column;gap:6px}.topics-filters__label{margin:0}.topics-filters .chips{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;-webkit-overflow-scrolling:touch}.topics-acc__head{grid-template-columns:22px minmax(0,1fr);grid-template-areas:"chev title" "chev meta";padding:14px}.topics-acc__when{display:none}.topics-acc__item{padding:12px 14px}.topics-acc__foot{flex-wrap:wrap}.review .table thead,.admin .table thead,.review-table thead{display:none}.review .table,.review .table tbody,.admin .table,.admin .table tbody,.review-table,.review-table tbody{display:block;width:100%}.review .table tbody>tr,.admin .table tbody>tr,.review-table tbody>tr{display:grid;gap:8px;padding:14px 16px;border-bottom:1px solid var(--border);background:var(--surface)}.review .table td,.admin .table td,.review-table td{display:grid;grid-template-columns:88px minmax(0,1fr);gap:8px;align-items:start;width:auto;max-width:none;padding:0;border:0;white-space:normal}.review .table td:before,.admin .table td:before,.review-table td:before{content:attr(data-label);font-size:12px;font-weight:600;color:var(--text-3);line-height:1.4}.review .table td:not([data-label]):before,.admin .table td:not([data-label]):before,.review .table td[data-label=""]:before,.admin .table td[data-label=""]:before,.review-table td:not([data-label]):before,.review-table td[data-label=""]:before{content:none}.review .table td:not([data-label]),.admin .table td:not([data-label]),.review .table td[data-label=""],.admin .table td[data-label=""],.review-table td:not([data-label]),.review-table td[data-label=""]{grid-template-columns:1fr;justify-items:end}.review-table__detail td{display:block;grid-template-columns:none}.review-table__detail td:before{content:none}.inline-toggle{width:100%;justify-content:flex-start}.card__titlebar{flex-wrap:wrap;gap:10px}.legend{flex-wrap:wrap}.nl-grid{grid-template-columns:1fr}.account__who{flex-wrap:wrap}.account__who .btn{width:100%;justify-content:center}.palette-picker__row{width:100%;display:flex;flex-wrap:wrap;gap:8px}.palette-swatch{flex:1 1 calc(50% - 6px);justify-content:center}.modal--wide{width:min(720px,calc(100vw - 24px))}.upload-pick{flex-wrap:wrap}.success-card{flex-direction:column;align-items:stretch}.success-card__text{border-right:0;padding-right:0;min-width:0}.success-card .btn{width:100%;justify-content:center}.usage-tasks{grid-template-columns:1fr}.history-card__when{display:none}.review__search{max-width:none;width:100%}.flash{max-width:none}.flash__front{flex-wrap:wrap;font-size:20px}.page.history .chips,.page.review .chips,.page.admin .chips,.page.notes-list .chips{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;-webkit-overflow-scrolling:touch}.page.history .chips .chip,.page.review .chips .chip,.page.admin .chips .chip,.page.notes-list .chips .chip{flex:none}.searchrow .input,.report .page-head__actions{width:100%}.report .page-head__actions .btn{flex:1;justify-content:center}}@media (max-width: 560px){.dim-grid{grid-template-columns:1fr}.art__head{flex-wrap:wrap}.art__title{flex:1 1 100%;font-size:22px}.practice__title{font-size:18px}.head-tabs>*{padding:0 10px;font-size:15px}.copy-row{flex-direction:column}.topics-acc__title strong{font-size:15px}.icon-btn{width:40px;height:40px}.answer__actions{grid-template-columns:1fr}.tile-grid--accent{grid-template-columns:repeat(2,minmax(0,1fr))}.home__title{font-size:28px}.grades{grid-template-columns:1fr 1fr}.quiz__options{grid-template-columns:1fr}.history-card__topic{font-size:16px}.invite-form__go{width:100%}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
