.hn-remind-line,.hn-remind-form{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.hn-remind-form input{border:1px solid var(--border);background:var(--card);color:var(--text);font:inherit;border-radius:10px;padding:7px 10px}.hn-remind-form input:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px}.hn-reminders{z-index:60;flex-direction:column;gap:10px;width:min(360px,100vw - 32px);display:flex;position:fixed;bottom:16px;right:16px}.hn-reminder{border:2px solid var(--primary);background:var(--card);color:var(--text);border-radius:14px;flex-direction:column;gap:6px;padding:12px 14px;display:flex}.hn-reminder-label{text-transform:uppercase;letter-spacing:.05em;color:var(--primary);font-size:.75rem;font-weight:800}.hn-reminder-body{overflow-wrap:anywhere;font-weight:600}.hn-reminder-sub{color:var(--text-muted);font-size:.8rem}.hn-reminder-actions{flex-wrap:wrap;gap:8px;display:flex}.hn-reminder-more{border:1px solid var(--primary);background:var(--card);color:var(--primary);border-radius:999px;align-self:flex-end;padding:4px 10px;font-size:.8rem;font-weight:700}@media (width<=900px){.hn-reminders{width:auto;bottom:84px;left:12px;right:12px}}.obi-classroom-status{z-index:5;border:1px solid var(--border);background:var(--card);max-width:min(90%,360px);color:var(--text-muted);border-radius:8px;flex-wrap:wrap;align-items:center;gap:6px 10px;padding:6px 10px;font-size:11px;display:flex;position:absolute;top:8px;left:8px}.obi-classroom-status button{background:var(--surface-muted);color:var(--text);border:1px solid var(--border);font:inherit;cursor:pointer;border-radius:5px;padding:5px 8px}@media (width<=600px){.obi-classroom-status{max-width:75%;font-size:10px;top:4px;left:4px}}.ail-line.ail-line-words{align-items:flex-start;gap:8px;display:flex}.ail-line-text{flex:1;min-width:0;line-height:1.7}.ail-word{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:4px;margin:0;padding:0 1px;text-decoration:none;display:inline}.ail-word:hover{background:var(--primary-soft);color:var(--primary)}.ail-word:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px}.ail-word.is-open{background:var(--primary-soft);color:var(--primary)}.ail-word.is-well{-webkit-text-decoration:underline wavy var(--amber);text-decoration:underline wavy var(--amber);text-underline-offset:4px}.ail-word.is-wrong{-webkit-text-decoration:underline wavy var(--red);text-decoration:underline wavy var(--red);text-underline-offset:4px}.ail-word.is-grammar{-webkit-text-decoration:underline dotted var(--primary);text-decoration:underline dotted var(--primary);text-underline-offset:4px}.bd-pop{border:1px solid var(--border);background:var(--surface-muted);color:var(--text);border-radius:10px;flex-direction:column;gap:6px;margin:2px 0 8px 26px;padding:8px 10px;font-size:.82rem;display:flex}.bd-pop-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.bd-pop-heard{color:var(--text-muted)}.bd-pop-heard strong{color:var(--text)}.bd-pop-field{color:var(--text-muted);align-items:center;gap:6px;display:inline-flex}.bd-pop-field input{border:1px solid var(--input-border);background:var(--card);min-width:140px;color:var(--text);border-radius:8px;padding:5px 8px;font-size:1rem}.bd-pop-note input{min-width:220px}.bd-pop-btn{border:1px solid var(--border);background:var(--card);color:var(--text);cursor:pointer;border-radius:8px;padding:6px 10px;font-size:.8rem;font-weight:700}.bd-pop-btn:disabled{opacity:.55;cursor:default}.bd-pop-btn.is-well{border-color:var(--amber);color:var(--amber)}.bd-pop-btn.is-well:hover:not(:disabled){background:var(--amber-soft)}.bd-pop-btn.is-wrong{border-color:var(--red);color:var(--red)}.bd-pop-btn.is-wrong:hover:not(:disabled){background:var(--red-soft)}.bd-pop-btn.is-grammar{border-color:var(--primary);color:var(--primary)}.bd-pop-btn.is-grammar:hover:not(:disabled){background:var(--primary-soft)}.bd-pop-btn:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.bd-pop-verdict{border-radius:6px;padding:1px 7px;font-size:.72rem;font-weight:800}.bd-pop-verdict.is-well{background:var(--amber-soft);color:var(--amber)}.bd-pop-verdict.is-wrong{background:var(--red-soft);color:var(--red)}.bd-pop-verdict.is-grammar{background:var(--primary-soft);color:var(--primary)}.bd-pop-error{color:var(--red);font-size:.78rem}.bd-chip{border:1px dashed var(--border);color:var(--text-muted);white-space:nowrap;border-radius:99px;align-items:center;gap:4px;margin-left:6px;padding:1px 7px;font-size:.68rem;font-weight:700;display:inline-flex}.ail-play{border:1px solid var(--border);background:var(--card);width:24px;height:24px;color:var(--text-muted);cursor:pointer;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-top:2px;padding:0;font-size:.62rem;line-height:1;display:inline-flex}.ail-play:hover:not(:disabled),.ail-play.is-playing{background:var(--primary-soft);color:var(--primary);border-color:var(--primary)}.ail-play:disabled{opacity:.35;cursor:default}.ail-play:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}@media (width<=600px){.bd-pop{margin-left:0}.bd-pop-field input,.bd-pop-note input{width:100%;min-width:0}.bd-pop-field{flex:100%}}.ail-panel{margin-bottom:12px}.ail-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.ail-head-right{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.ail-title{font-size:13px;font-weight:600}.ail-state{color:var(--text-muted);font-size:13px;font-weight:700}.ail-state.is-error{color:var(--red)}.ail-wpm{background:var(--primary-soft);color:var(--primary);border-radius:999px;padding:2px 10px;font-size:13px}.ail-wpm-none{background:var(--surface-muted);color:var(--text-muted)}.ail-muted{color:var(--text-muted);margin-bottom:8px;font-size:13px}.ail-error{color:var(--red);margin-bottom:8px;font-size:13px}.ail-actions{flex-wrap:wrap;gap:8px;margin-bottom:10px;display:flex}.ail-link{color:var(--primary);cursor:pointer;background:0 0;border:none;padding:0 0 0 8px;font-size:13px;text-decoration:underline}.ail-link:focus-visible,.ail-copy:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.ail-result{border-top:1px solid var(--border);margin-top:4px;padding-top:12px}.ail-result-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.ail-factors{flex-direction:column;gap:4px;margin:0 0 10px;padding:0;list-style:none;display:flex}.ail-factor{border-left:4px solid var(--border);background:var(--surface-muted);border-radius:8px;align-items:baseline;gap:8px;padding:6px 10px;font-size:13px;display:flex}.ail-factor-label{color:var(--text);font-weight:600}.ail-factor-value{font-variant-numeric:tabular-nums;color:var(--text);margin-left:auto}.ail-factor-band{text-transform:uppercase;letter-spacing:.04em;background:var(--card);color:var(--text-muted);border-radius:999px;padding:1px 6px;font-size:11px}.ail-band-strong{border-left-color:var(--green);background:var(--green-soft)}.ail-band-strong .ail-factor-band{color:var(--green)}.ail-band-weak{border-left-color:var(--red);background:var(--red-soft)}.ail-band-weak .ail-factor-band{color:var(--red)}.ail-band-mixed{border-left-color:var(--amber);background:var(--amber-soft)}.ail-band-mixed .ail-factor-band{color:var(--amber)}.ail-missed{color:var(--text-muted);margin-bottom:10px;font-size:12px}.ail-mistakes{margin-top:10px}.ail-mistake{border:1px solid var(--border);border-left:4px solid var(--amber);border-radius:8px;margin-bottom:8px;padding:8px;font-size:13px}.ail-mistake.is-confirmed{border-left-color:var(--red);background:var(--red-soft)}.ail-mistake.is-rejected{border-left-color:var(--border);opacity:.6}.ail-quote{color:var(--text);margin-bottom:4px}.ail-mistake-actions{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.ail-select{width:auto;min-height:0;font-size:13px}.ail-retain{margin-top:8px}.ail-transcript{border-top:1px solid var(--border);margin-top:12px;padding-top:8px}.ail-transcript>summary{cursor:pointer;align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.ail-transcript>summary:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.ail-count{color:var(--text-muted);font-weight:400}.ail-frozen{text-transform:uppercase;letter-spacing:.04em;background:var(--surface-muted);color:var(--text-muted);border-radius:999px;padding:1px 6px;font-size:11px}.ail-lines{border:1px solid var(--border);border-radius:8px;max-height:240px;margin-top:8px;padding:8px;overflow-y:auto}.ail-line{cursor:pointer;align-items:flex-start;gap:8px;padding:3px 0;font-size:14px;display:flex}.ail-line input{min-width:16px;min-height:16px;margin-top:3px}.ail-sr{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=640px){.ail-factor{flex-wrap:wrap}.ail-factor-value{margin-left:0}}.ail-head-left{align-items:center;gap:10px;display:flex}.ail-clock{font-variant-numeric:tabular-nums;background:var(--surface-muted);color:var(--text);border-radius:999px;align-items:center;gap:6px;padding:2px 10px;font-size:15px;font-weight:700;display:inline-flex}.ail-clock.is-live{background:var(--red-soft);color:var(--red)}.ail-clock-dot{background:currentColor;border-radius:50%;width:8px;height:8px}@media (prefers-reduced-motion:no-preference){.ail-clock.is-live .ail-clock-dot{animation:1.4s ease-in-out infinite ail-pulse}}@keyframes ail-pulse{50%{opacity:.35}}.ail-context-note{margin-top:-4px}.ail-feedback{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;margin-bottom:12px;display:grid}.ail-feedback-col{border-left:4px solid;border-radius:12px;padding:10px 12px;font-size:13px}.ail-feedback-col ul{color:var(--text);margin:0;padding-left:18px}.ail-feedback-col li+li{margin-top:4px}.ail-feedback-col.is-good{background:var(--green-soft);color:var(--green)}.ail-feedback-col.is-work{background:var(--red-soft);color:var(--red)}.ail-feedback-head{margin-bottom:6px;font-weight:700}.ail-correction{color:var(--green);margin:2px 0 6px;font-size:13px;font-weight:600}.lv-shell .lv-eval-dock{height:auto;max-height:64%;padding:6px 12px 8px}.lv-shell .lv-eval-dock .lv-teacher-drawer{gap:6px;height:auto}.lv-shell .lv-eval-dock .lv-tp-body{flex:0 auto;padding-bottom:0;overflow-y:auto}.lv-shell .lv-eval-dock .lv-tp-head{flex-wrap:wrap;align-items:center;gap:10px;min-width:0;display:flex}.lv-shell .lv-eval-dock .lv-tp-title{font-size:.85rem;font-weight:800}.lv-shell .lv-eval-dock .lv-student-picker{flex-direction:row;align-items:center;gap:0}.lv-shell .lv-eval-dock .lv-student-picker select{border-radius:8px;width:auto;min-width:180px;padding:5px 8px;font-size:1rem}.lv-tp-head-meta{color:var(--text-muted);align-items:baseline;gap:8px;min-width:0;font-size:.78rem;display:inline-flex}.lv-tp-head-score{font-size:.95rem;font-weight:800}.lv-tp-head-left{color:var(--amber)}.lv-shell .lv-eval-dock .lv-tp-head>.lv-icon-btn{margin-left:auto}.lv-shell .lv-eval-dock .lv-tp-profile{gap:6px}.lv-shell .lv-eval-dock .lv-tp-workspace{gap:12px;padding-top:2px}.lv-shell .lv-eval-dock .lv-tp-col{gap:6px}.lv-shell .lv-eval-dock .card{box-shadow:none;background:0 0;border:0;margin:0;padding:0}.lv-shell .lv-eval-dock :is(h2,h3,h4){margin:0 0 4px;font-size:.85rem}.lv-shell .lv-eval-dock .reveal-btn{min-height:0;margin-top:0;padding:5px 10px;font-size:.8rem}.lv-shell .lv-eval-dock .lv-profile-details{padding:4px 0 0}.lv-shell .lv-eval-dock .ail-panel{padding:0}.lv-shell .lv-eval-dock .ail-head{margin-bottom:4px}.lv-shell .lv-eval-dock .ail-actions{flex-wrap:wrap;gap:6px;margin:4px 0}.lv-shell .lv-eval-dock .ail-context-note{margin:2px 0;font-size:.7rem}.lv-shell .lv-eval-dock .ail-lines{overscroll-behavior:contain;max-height:120px;overflow-y:auto}@media (width<=800px){.lv-shell .lv-eval-dock{max-height:70%;padding:6px 8px}.lv-shell .lv-eval-dock .lv-student-picker select{width:100%;min-width:0}.lv-shell .lv-eval-dock .lv-student-picker{flex:160px}}.lv-tp-view-toggle{border:1px solid var(--border);border-radius:8px;flex-shrink:0;display:inline-flex;overflow:hidden}.lv-tp-view-toggle button{color:var(--text-muted);cursor:pointer;background:0 0;border:0;padding:4px 10px;font-size:.78rem;font-weight:700}.lv-tp-view-toggle button.active{background:var(--primary-soft);color:var(--primary)}.lv-tp-view-toggle button:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-2px}.lv-shell .lv-eval-dock .lv-tp-workspace.lv-tp-listen{grid-template-columns:1fr}.lv-shell .lv-eval-dock .lv-tp-listen .ail-lines{max-height:32vh}.lv-shell .lv-eval-dock .ail-listen-bar{z-index:1;background:var(--card);border-top:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:6px;margin-top:4px;padding:6px 0;display:flex;position:sticky;bottom:0}.lv-shell .lv-eval-dock .ail-listen-bar .ail-context-note{flex:220px;margin:0}.exr-share-controls{flex-direction:column;gap:5px;display:flex}.exr-share-buttons{flex-wrap:wrap;gap:8px;display:flex}.exr-share-buttons .reveal-btn{align-items:center;gap:7px;font-size:.8rem;display:inline-flex}.exr-share-buttons .exr-sharing{background:var(--primary-soft);color:var(--primary);border-color:var(--primary)}.exr-recording-status{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:8px;font-size:.78rem;display:inline-flex}.exr-recording-status.is-error{color:var(--red)}.exr-layout{flex-direction:column;flex:1;gap:6px;min-width:0;min-height:0;display:flex}.exr-shares{flex:1;grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:8px;min-height:0;display:grid}.exr-share-panel{border:1px solid var(--border);background:var(--card);border-radius:12px;flex-direction:column;gap:5px;min-width:0;min-height:0;padding:8px;display:flex}.exr-share-panel[hidden]{display:none}.exr-share-heading{color:var(--text);flex-shrink:0;align-items:center;gap:8px;display:flex}.exr-share-heading>div{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.exr-share-heading strong{color:var(--primary);font-size:.85rem}.exr-share-heading span{overflow-wrap:anywhere;font-size:.72rem}.exr-share-heading>div>span,.exr-share-audio{color:var(--text-muted)}.exr-share-panel .lv-share-focus{border-radius:8px;overflow:hidden}.exr-shares-stacked{grid-template-columns:minmax(0,1fr);grid-auto-rows:minmax(230px,1fr);overflow-y:auto}.exr-shares-focused{grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr);grid-auto-rows:auto}.exr-strip{flex:0 0 88px;justify-content:center;height:88px;display:flex;overflow:hidden}.exr-strip .lv-tile{width:min(25%,150px);height:100%}.exr-strip .lv-tile-badge,.exr-strip .lv-selected-label{display:none}.exr-strip .lv-tile-label{min-height:25px;padding:4px}.exr-strip .lv-tile-label>strong{font-size:.7rem}.exr-strip .lv-avatar{width:32px;height:32px;font-size:1rem}.exr-shell .lv-roster-panel-name{cursor:default}.exr-shell .lv-controls-primary{flex-wrap:wrap}@media (width<=600px){.exr-share-panel{padding:5px}.exr-share-buttons{gap:5px}.exr-share-buttons .reveal-btn{padding:6px 8px;font-size:.73rem}.exr-strip{flex-basis:65px;height:65px}.exr-strip .lv-tile-state{display:none}}.app-shell.app-shell-room{display:block}.app-shell.app-shell-room>.main{width:100%;max-width:none;min-height:100dvh;margin:0}.app-shell.app-shell-room .content{max-width:none}.lv-host{position:relative}.lv-host-teacher>.lv-minimize-btn{z-index:6;border:1px solid var(--border);background:var(--card);width:30px;height:30px;color:var(--text-muted);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute;top:8px;right:10px}.lv-host-teacher>.lv-minimize-btn:hover{background:var(--primary-soft);color:var(--primary);border-color:var(--primary)}.lv-host-teacher>.lv-minimize-btn:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.lv-host-teacher .lv-room-status{padding-right:40px}.lv-host-teacher .lv-shell:fullscreen .lv-room-status{padding-right:0}.lv-roster-row{flex-direction:column;display:flex}.lv-roster-panel-name[aria-expanded=true]{color:var(--primary);font-weight:700}.lv-roster-menu{border:1px solid var(--border);background:var(--surface-muted);border-radius:10px;flex-direction:column;gap:4px;margin:2px 0 8px;padding:6px;display:flex}.lv-roster-menu button{text-align:left;color:var(--text);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:7px 8px;font-size:.8rem}.lv-roster-menu button:hover:not(:disabled){background:var(--card)}.lv-roster-menu button:disabled{opacity:.5;cursor:default}.lv-roster-menu button.lv-roster-danger{color:var(--red)}.lv-roster-menu button.lv-roster-danger:hover:not(:disabled){background:var(--red-soft)}.lv-roster-menu button:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-2px}.exr{border:1px solid var(--border);background:var(--card);border-left-width:4px;border-radius:10px;flex-direction:column;gap:8px;margin:12px 0;padding:12px 14px;display:flex}.exr-yes{border-left-color:var(--green);background:var(--green-soft)}.exr-no{border-left-color:var(--red);background:var(--red-soft)}.exr-head{color:var(--text);font-size:1rem}.exr-yes .exr-head strong{color:var(--green)}.exr-no .exr-head strong{color:var(--red)}.exr-note{color:var(--muted-text);font-size:.85rem}.exr-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.exr-item{border-top:1px solid var(--border);flex-direction:column;gap:3px;padding-top:8px;display:flex}.exr-factor{text-transform:uppercase;letter-spacing:.04em;color:var(--red);font-size:.75rem;font-weight:700}.exr-why{color:var(--text);font-size:.9rem}.exr-phrases{flex-wrap:wrap;gap:6px;display:flex}.exr-phrase{border:1px solid var(--border);background:var(--card);color:var(--text);border-radius:999px;padding:2px 8px;font-size:.85rem}.exr-quote{color:var(--text);overflow-wrap:anywhere;align-items:baseline;gap:8px;font-size:.9rem;display:flex}.exr-quote q{font-style:italic}.exr-q{color:var(--muted-text);flex:none;font-size:.75rem;font-weight:700}.ssv{border-top:1px solid var(--border);flex-direction:column;gap:14px;margin-top:12px;padding-top:12px;display:flex}.ssv-sec{flex-direction:column;gap:6px;display:flex}.ssv-label{text-transform:uppercase;letter-spacing:.04em;color:var(--muted-text);font-size:.75rem;font-weight:700}.ssv-text{overflow-wrap:anywhere;margin:0;font-size:.95rem;line-height:1.9}.ssv-said{color:var(--red);background:var(--red-soft);border-radius:5px;padding:1px 4px;font-weight:600}.ssv-better{color:var(--green);background:var(--green-soft);border-radius:5px;padding:1px 4px;font-weight:600}.ssv-changes{flex-direction:column;gap:10px;margin:0;padding-left:20px;display:flex}.ssv-change-pair{flex-wrap:wrap;align-items:center;gap:6px;font-size:.9rem;display:flex}.ssv-arrow{color:var(--muted-text)}.ssv-why{color:var(--muted-text);margin-top:3px;font-size:.85rem}.ssv-wait{color:var(--muted-text);flex-wrap:wrap;align-items:center;gap:8px;font-size:.85rem;display:flex}.ssv-retry-line{color:var(--muted-text);font-size:.85rem}.ssv-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.ssv-hint{color:var(--muted-text);font-size:.8rem}.ssv-btn{font:inherit;color:inherit;background:var(--surface-muted);border:1px solid var(--border);cursor:pointer;border-radius:10px;padding:8px 14px;font-size:.88rem;font-weight:600}.ssv-btn:disabled{opacity:.5;cursor:default}.ssv-btn-main{border-color:var(--green)}.ssv-retry-flag{color:var(--green);margin-bottom:6px;font-size:.8rem;font-weight:700}.ssv-retry-card{border-left:3px solid var(--green)}.ssv-list{flex-direction:column;gap:8px;margin-top:16px;display:flex}.ssv-list-head{font-size:.92rem;font-weight:700}.ssv-item{border:1px solid var(--border);background:var(--bg);border-radius:12px;overflow:hidden}.ssv-item-head{width:100%;font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 14px;font-size:.88rem;display:grid}.ssv-item-q{color:var(--muted-text);font-weight:700}.ssv-item-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ssv-item-score{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:700}.ssv-item-body{padding:0 14px 14px}@media (width<=600px){.ssv-item-head{grid-template-columns:34px minmax(0,1fr)}.ssv-item-score{grid-column:2}}.ahw{color:var(--text);min-width:0}.ahw p{line-height:1.6}.ahw h2,.ahw h3,.ahw h4,.ahw h5{line-height:1.3}.ahw h5{margin-bottom:8px;font-size:1rem}.ahw ul,.ahw ol{margin:12px 0;padding-left:24px}.ahw li{margin:8px 0;line-height:1.5}.ahw [hidden]{display:none!important}.ahw-header{margin:12px 0 20px}.ahw-header h2{margin:6px 0 10px;font-size:1.8rem}.ahw-eyebrow{color:var(--primary);font-size:.85rem;font-weight:700}.ahw-note{color:var(--text-muted);margin:8px 0;font-size:.875rem}.ahw-text{white-space:pre-line;overflow-wrap:anywhere;margin:8px 0 12px}.ahw-owner-note{background:var(--primary-soft);border:1px solid var(--border);border-radius:12px;margin:16px 0;padding:16px;line-height:1.6}.ahw-progress{background:var(--card);border:1px solid var(--border);border-radius:12px;margin:16px 0;padding:16px}.ahw-progress>div{justify-content:space-between;gap:12px;margin-bottom:8px;display:flex}.ahw-progress progress{width:100%;height:12px;accent-color:var(--primary)}.ahw-day-tabs{flex-wrap:wrap;gap:6px;margin:20px 0;display:flex}.ahw-day-tabs button:disabled{opacity:.55;cursor:default}.ahw-day-intro{margin:18px 0}.ahw-day-intro h3,.ahw-optional>h3{margin:12px 0}.ahw-task{background:var(--card);border:1px solid var(--border);border-radius:12px;margin:12px 0;overflow:hidden}.ahw-task-complete{border-color:var(--green)}.ahw-task-heading{background:var(--card);width:100%;color:var(--text);text-align:left;font:inherit;cursor:pointer;border:0;justify-content:space-between;align-items:center;gap:12px;padding:16px 18px;font-weight:650;display:flex}.ahw-task-heading:hover{background:var(--surface-muted)}.ahw-task-body{padding:4px 18px 20px}.ahw-badge{color:var(--text-muted);background:var(--surface-muted);border:1px solid var(--border);border-radius:999px;flex-shrink:0;padding:4px 9px;font-size:.75rem;font-weight:600}.ahw-task-complete .ahw-badge{color:var(--green);background:var(--green-soft)}.ahw-button{border:1px solid var(--primary);background:var(--primary);min-height:42px;color:var(--on-primary);font:inherit;cursor:pointer;border-radius:9px;justify-content:center;align-items:center;margin:8px 8px 8px 0;padding:10px 16px;font-weight:600;line-height:1.4;display:inline-flex}.ahw-button:hover{background:var(--primary-hover)}.ahw-button-secondary{background:var(--card);border-color:var(--input-border);color:var(--text)}.ahw-button-secondary:hover{background:var(--surface-muted)}.ahw-button-stop{background:var(--red);border-color:var(--red);color:var(--on-status)}.ahw-button:disabled{opacity:.55;cursor:not-allowed}.ahw-button:focus-visible,.ahw-task-heading:focus-visible,.ahw summary:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}.ahw-support{background:var(--surface-muted);border:1px solid var(--border);border-radius:10px;margin:14px 0;padding:12px 14px}.ahw summary{cursor:pointer;font-weight:600;line-height:1.5}.ahw-support[open]>summary{margin-bottom:12px}.ahw-answer-field{flex-direction:column;gap:7px;margin:14px 0;display:flex}.ahw-answer-field>span{font-weight:500;line-height:1.5}.ahw-answer-field textarea,.ahw-answer-field input{box-sizing:border-box;border:1px solid var(--input-border);background:var(--input-bg);width:100%;min-height:42px;color:var(--text);font:inherit;resize:vertical;border-radius:8px;padding:10px 12px;line-height:1.5}.ahw-image{object-fit:contain;border-radius:9px;width:100%;max-width:700px;max-height:520px;margin:16px auto;display:block}.ahw-cue{padding:6px 0}.ahw-recording-panel{border:2px solid var(--primary);background:var(--primary-soft);border-radius:10px;margin:16px 0;padding:16px}.ahw-recording-panel audio{width:100%;max-width:500px;margin:12px 0;display:block}.ahw-timer{font-variant-numeric:tabular-nums;font-size:1.6rem;font-weight:700}.ahw-error{background:var(--red-soft);color:var(--red);border-radius:8px;margin:12px 0;padding:12px}.ahw-feedback{border:1px solid var(--border);border-left:4px solid var(--green);background:var(--surface-muted);border-radius:8px;margin:16px 0;padding:14px}.ahw-feedback-warning{border-left-color:var(--amber)}.ahw-score{font-weight:600}.ahw-item-feedback{margin:14px 0}.ahw-answer-correct{color:var(--green)}.ahw-answer-repair{color:var(--red)}.ahw-partner,.ahw-repair,.ahw-reuse{border-top:1px solid var(--border);margin-top:16px;padding-top:14px}.ahw-check{align-items:flex-start;gap:10px;margin:12px 0;line-height:1.5;display:flex}.ahw-check input{width:18px;height:18px;accent-color:var(--primary);flex-shrink:0;margin-top:3px}.ahw-own-notes{background:var(--card);white-space:pre-wrap;border-radius:8px;margin:12px 0;padding:12px}.ahw-optional{margin-top:28px}.ahw-inbox{margin-bottom:20px}.ahw-inbox-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.ahw-inbox-attempt{border-top:1px solid var(--border);padding:14px 0}.ahw-json{white-space:pre-wrap;overflow-wrap:anywhere;color:var(--text);margin:12px 0;font-size:.85rem}@media (width<=600px){.ahw-header h2{font-size:1.45rem}.ahw-task-heading{align-items:flex-start;padding:14px 12px}.ahw-task-body{padding:2px 12px 16px}.ahw-task-heading>span:first-child{overflow-wrap:anywhere;min-width:0}.ahw-badge{white-space:normal;text-align:center;max-width:100px}.ahw-button{width:100%;margin-right:0}}[data-theme=dark] .ahw-recording-panel,.dark .ahw-recording-panel{border-color:var(--primary)}.eg-card{flex-direction:column;gap:14px;display:flex}.eg-help{color:var(--text-muted);margin:4px 0 0;font-size:.9rem}.eg-form{flex-direction:column;gap:14px;display:flex}.eg-field{flex-direction:column;gap:6px;display:flex}.eg-label{color:var(--text-muted);font-size:.8rem;font-weight:700}.eg-date{max-width:220px}.eg-options{flex-wrap:wrap;gap:8px;display:flex}.eg-option{cursor:pointer;text-align:left;border:1px solid var(--border);background:var(--surface-muted);color:var(--text);border-radius:999px;padding:9px 14px;font-size:.9rem;font-weight:600;line-height:1.3}.eg-option.eg-clb{text-align:center;min-width:76px}.eg-option.on{border-color:var(--primary);background:var(--primary-soft);color:var(--primary)}.eg-option:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.eg-error{background:var(--red-soft);color:var(--red);border-radius:10px;padding:8px 12px;font-size:.875rem}.eg-actions{flex-wrap:wrap;gap:10px;display:flex}.eg-line{flex-wrap:wrap;align-items:center;gap:10px 14px;padding-top:12px;padding-bottom:12px;display:flex}.eg-line-label{color:var(--primary);text-transform:uppercase;letter-spacing:.04em;font-size:.8rem;font-weight:800}.eg-line-parts{min-width:0;color:var(--text);flex:1;font-weight:600;line-height:1.6;display:block}.eg-line-part{white-space:nowrap;display:inline-block}.eg-line-part+.eg-line-part:before{content:"·";color:var(--text-muted);margin:0 8px}.eg-line-empty{color:var(--text-muted);flex:1}.eg-edit{flex:none}.eg-cell{flex-direction:column;gap:4px;font-size:13px;display:flex}.eg-cell-sub{color:var(--text-muted);font-size:12px}.eg-cell-old{color:var(--amber);font-size:12px}.eg-form.compact{border:1px solid var(--border);background:var(--surface-muted);border-radius:12px;padding:12px}.eg-form.compact .eg-option{background:var(--card)}@media (width<=600px){.eg-date{width:100%;max-width:none}.eg-option{flex:auto}.eg-option.eg-clb{flex:1 1 0;min-width:0;padding-left:6px;padding-right:6px}.eg-line-label{flex-basis:100%}}.sp-card{flex-direction:column;gap:14px;display:flex}.sp-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.sp-title{margin-bottom:2px}.sp-sub{color:var(--text-muted);font-size:.85rem}.sp-focus{background:var(--primary-soft);color:var(--primary);border-radius:999px;padding:4px 12px;font-size:.8rem;font-weight:700}.sp-question{flex-direction:column;gap:6px;display:flex}.sp-question-label{color:var(--text-muted);font-size:.8rem;font-weight:700}.sp-options{flex-wrap:wrap;gap:8px;display:flex}.sp-option{cursor:pointer;border:1px solid var(--border);background:var(--surface-muted);min-width:72px;color:var(--text);border-radius:999px;padding:9px 14px;font-size:.9rem;font-weight:600}.sp-option.on{border-color:var(--primary);background:var(--primary-soft);color:var(--primary)}.sp-option:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.sp-note{color:var(--text-muted);margin:0;font-size:.9rem}.sp-why{border-left:3px solid var(--primary);background:var(--primary-soft);color:var(--text);border-radius:12px;margin:0;padding:10px 14px;font-size:.9375rem;line-height:1.5}.sp-error{background:var(--red-soft);color:var(--red);border-radius:10px;padding:8px 12px;font-size:.875rem}.sp-tasks{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.sp-task{border:1px solid var(--border);background:var(--surface-muted);border-radius:12px;align-items:center;gap:12px;padding:12px;display:flex}.sp-task.primary{border-color:var(--primary)}.sp-task.started{opacity:.75}.sp-num{background:var(--primary-soft);height:28px;color:var(--primary);border-radius:50%;flex:0 0 28px;place-items:center;font-size:.85rem;font-weight:800;display:grid}.sp-task.sp-break{background:0 0;border-style:dashed}.sp-break-num{background:var(--surface-muted);color:var(--text-muted)}.sp-task.started .sp-num{background:var(--green-soft);color:var(--green)}.sp-task-body{flex:1;min-width:0}.sp-task-title{color:var(--text);flex-wrap:wrap;align-items:baseline;gap:8px;font-weight:700;display:flex}.sp-mins{color:var(--text-muted);font-size:.78rem;font-weight:700}.sp-task-detail{color:var(--text-muted);margin-top:2px;font-size:.85rem}.sp-start{flex:none;text-decoration:none}.sp-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.sp-total{color:var(--text-muted);font-size:.85rem}@media (width<=600px){.sp-task{flex-wrap:wrap}.sp-start{text-align:center;width:100%}}.exp-page{max-width:1120px;margin:0 auto}.exp-intro{border-top:4px solid var(--primary);padding:clamp(22px,4vw,40px)}.exp-eyebrow{color:var(--primary);letter-spacing:.14em;margin-bottom:10px;font-size:.75rem;font-weight:750}.exp-intro h1{margin-bottom:12px}.exp-intro>p{max-width:680px}.exp-schedule{flex-wrap:wrap;align-items:center;gap:9px;margin:20px 0;display:flex}.exp-schedule>span{color:var(--text-muted)}.exp-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.exp-actions a{text-decoration:none}.exp-actions .sub-btn,.exp-actions .reveal-btn{align-items:center;gap:8px;margin:0;display:inline-flex}.exp-muted{color:var(--text-muted)}.exp-small{font-size:.87rem}.exp-intro .exp-small{margin-top:18px}.exp-library-head{justify-content:space-between;align-items:center;gap:16px;margin:28px 0 18px;display:flex}.exp-library-head h2{margin-bottom:5px}.exp-lessons{gap:16px;display:grid}.exp-lesson{margin:0;padding:24px}.exp-lesson-top{align-items:center;gap:12px;margin-bottom:14px;display:flex}.exp-lesson-top time{color:var(--text-muted);font-size:.87rem}.exp-series{background:var(--primary-soft);color:var(--primary);border-radius:30px;padding:4px 11px;font-size:.8rem;font-weight:700}.exp-lesson h3{overflow-wrap:anywhere;margin-bottom:8px}.exp-lesson .exp-actions{margin-top:18px}.exp-pending{background:var(--surface-muted);color:var(--text-muted);border-radius:9px;padding:9px 13px;font-size:.87rem}.exp-player{aspect-ratio:16/9;border:1px solid var(--border);border-radius:12px;margin-top:22px;overflow:hidden}.exp-player iframe{border:0;width:100%;height:100%}.exp-editor h2{margin-bottom:10px}.exp-fields{grid-template-columns:1fr 1fr;gap:16px;margin:20px 0;display:grid}.exp-fields label,.exp-filter{gap:6px;font-size:.87rem;font-weight:600;display:grid}.exp-fields input,.exp-filter select{border:1px solid var(--input-border);background:var(--input-bg);width:100%;color:var(--text);border-radius:9px;padding:11px 12px}.exp-title-field{grid-column:1/-1}.exp-error{color:var(--red);background:var(--red-soft)}.exp-empty{color:var(--text-muted);padding:32px}@media (width<=640px){.exp-library-head{flex-direction:column;align-items:flex-start}.exp-fields{grid-template-columns:1fr}.exp-lesson{padding:20px}}.exp-egress{box-sizing:border-box;background:var(--nav-bg);width:100vw;height:100vh;color:var(--nav-active);flex-direction:column;gap:20px;padding:24px;display:flex;overflow:hidden}.exp-egress header{flex:none;justify-content:space-between;align-items:center;padding:0 8px;font-size:24px;display:flex}.exp-egress header span{color:var(--nav-text);font-size:20px}.exp-egress-stage{flex:1;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch;gap:20px;min-height:0;display:grid}.exp-egress-screen{background:var(--card);border-radius:14px;flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden}.exp-egress-screen video{object-fit:contain;flex:1;width:100%;height:0;min-height:0}.exp-egress-screen-label{color:var(--text-muted);background:var(--surface-muted);flex:none;padding:10px 18px;font-size:18px}.exp-egress-placeholder{text-align:center;color:var(--text-muted);flex:1;place-items:center;padding:24px;font-size:24px;display:grid}.exp-egress-footer{flex:none;justify-content:center;align-items:center;gap:24px;display:flex}.exp-egress-presenter{width:min(260px,24vw);height:min(146px,18vh);color:var(--text-muted);background:var(--card);border-radius:12px;flex:none;place-items:center;display:grid;overflow:hidden}.exp-egress-presenter video{object-fit:contain;width:100%;height:100%}.exp-egress-caption{flex-direction:column;gap:8px;font-size:22px;display:flex}.exp-egress-caption span{color:var(--nav-text);font-size:18px}.exp-egress-wait{text-align:center;color:var(--nav-active);background:var(--nav-bg);place-content:center;gap:15px;min-height:100vh;font-size:44px;display:grid}.exp-egress-stage .exp-egress-wait{min-height:0}.exp-egress-wait span{color:var(--nav-text);font-size:24px}.cts-tx{flex-direction:column;gap:12px;margin-top:8px;display:flex}.cts-tx-body{white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:.9rem;line-height:2.1}.cts-tx-mark{white-space:normal;display:inline}.cts-tx-wrong{color:var(--red);background:var(--red-soft);border-radius:5px;padding:1px 4px;font-weight:600}.cts-tx-fix{color:var(--green);background:var(--green-soft);border-radius:5px;margin-left:4px;padding:1px 4px;font-weight:600}.cts-tx-fix:before{content:"→ ";color:var(--muted-text);font-weight:400}.cts-tx-extra{border-top:1px solid var(--border);flex-direction:column;gap:6px;padding-top:10px;display:flex}.cts-tx-extra-head{text-transform:uppercase;letter-spacing:.04em;color:var(--muted-text);font-size:.75rem;font-weight:700}.cts-weak{background:var(--bg);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:14px;padding:14px 16px;display:flex}.cts-weak-head{font-size:.92rem;font-weight:700}.cts-weak-group{flex-direction:column;gap:7px;display:flex}.cts-weak-sub{text-transform:uppercase;letter-spacing:.04em;color:var(--muted-text);font-size:.75rem;font-weight:700}.cts-weak-row{grid-template-columns:minmax(96px,150px) minmax(0,1fr) 62px 96px;align-items:center;gap:10px;font-size:.82rem;display:grid}.cts-weak-label{overflow-wrap:anywhere}.cts-weak-track{background:var(--surface-muted);border-radius:999px;height:8px;overflow:hidden}.cts-weak-fill{border-radius:999px;min-width:4px;height:100%;display:block}.cts-weak-fill-red{background:var(--red)}.cts-weak-fill-amber{background:var(--amber)}.cts-weak-fill-green{background:var(--green)}.cts-weak-fill-none{background:var(--surface-muted)}.cts-weak-val{text-align:right;font-variant-numeric:tabular-nums;font-weight:700}.cts-weak-val-red{color:var(--red)}.cts-weak-val-amber{color:var(--amber)}.cts-weak-val-green{color:var(--green)}.cts-weak-val-none{color:var(--muted-text)}.cts-weak-tag{color:var(--muted-text);text-align:right;font-size:.72rem}.cts-weak-note{color:var(--muted-text);font-size:.75rem}@media (width<=600px){.cts-weak-row{grid-template-columns:minmax(0,1fr) 62px;gap:4px 10px}.cts-weak-label{grid-area:1/1}.cts-weak-val{grid-area:1/2}.cts-weak-track{grid-area:2/1/auto/-1}.cts-weak-tag{text-align:left;grid-area:3/1/auto/-1}}.ch-pr-head{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px;display:flex}.ch-pr-pill{background:var(--bg);color:var(--text-muted);border:1px solid var(--border);border-radius:999px;padding:4px 12px;font-size:.75rem}.ch-pr-pill.clear{background:var(--green-soft);color:var(--green);border-color:var(--green)}.ch-pr-list{flex-direction:column;gap:8px;margin-bottom:16px;display:flex}.ch-pr-row{background:var(--card);border:1px solid var(--border);text-align:left;width:100%;font:inherit;color:inherit;cursor:pointer;border-radius:12px;align-items:center;gap:12px;padding:14px 16px;transition:border-color .16s;display:flex}.ch-pr-row:hover{border-color:var(--primary)}.ch-pr-row-main{flex:1;min-width:0}.ch-pr-row-fr{color:var(--text);overflow-wrap:anywhere;font-size:.9375rem;line-height:1.5}.ch-pr-row-state{color:var(--text-muted);margin-top:4px;font-size:.75rem}.ch-pr-row.clear .ch-pr-row-state{color:var(--green);font-weight:600}.ch-pr-steps{flex-shrink:0;gap:4px;display:flex}.ch-pr-step{background:var(--surface-muted);border:1px solid var(--border);border-radius:50%;width:9px;height:9px}.ch-pr-step.on{background:var(--green);border-color:var(--green)}.ch-pr-card{background:var(--card);border:1px solid var(--border);border-radius:14px;margin-bottom:16px;padding:20px}.ch-pr-fr{color:var(--text);overflow-wrap:anywhere;font-size:1.1875rem;font-weight:600;line-height:1.55}.ch-pr-gur{color:var(--primary);background:var(--primary-soft);overflow-wrap:anywhere;border-radius:12px;margin-top:14px;padding:12px 16px;font-size:1.125rem;line-height:2}.ch-pr-en{color:var(--text-muted);margin-top:14px;font-size:.8125rem;line-height:1.5}.ch-pr-faded{color:var(--green);margin-top:14px;font-size:.75rem;font-weight:600}.ch-pr-recorder{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:16px}.ch-pr-btn{border:1px solid var(--border);background:var(--card);color:var(--text);cursor:pointer;border-radius:10px;min-height:42px;padding:10px 20px;font-size:.875rem;font-weight:600}.ch-pr-btn:hover:not(:disabled){border-color:var(--primary);color:var(--primary)}.ch-pr-btn.primary{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}.ch-pr-btn.primary:hover:not(:disabled){background:var(--primary-hover);border-color:var(--primary-hover);color:var(--on-primary)}.ch-pr-btn.danger{background:var(--red);border-color:var(--red);color:var(--on-status)}.ch-pr-btn:disabled{opacity:.6;cursor:not-allowed}.ch-pr-review{flex-direction:column;gap:10px;display:flex}.ch-pr-review audio{width:100%;max-width:420px}.ch-pr-review-actions{flex-wrap:wrap;gap:10px;display:flex}.ch-pr-error{color:var(--red);margin-top:10px;font-size:.8125rem}.ch-pr-result{border:1px solid var(--border);border-radius:12px;margin-top:14px;padding:16px}.ch-pr-result.pass{border-color:var(--green);background:var(--green-soft)}.ch-pr-result.fail{border-color:var(--red);background:var(--red-soft)}.ch-pr-verdict{color:var(--text);margin-bottom:12px;font-size:.9375rem;font-weight:600}.ch-pr-mistakes{flex-direction:column;gap:8px;display:flex}.ch-pr-mistake{background:var(--card);border:1px solid var(--border);border-radius:10px;padding:10px 14px}.ch-pr-m-words{flex-wrap:wrap;align-items:baseline;gap:8px;margin-bottom:4px;font-size:.875rem;display:flex}.ch-pr-m-expected{color:var(--green);font-weight:600}.ch-pr-m-heard{color:var(--red);font-weight:600}.ch-pr-m-arrow{color:var(--text-muted)}.ch-pr-m-reason{color:var(--text);font-size:.8125rem;line-height:1.5}.ch-pr-transcript summary{color:var(--text-muted);cursor:pointer;margin-top:10px;font-size:.8125rem}.ch-pr-transcript p{color:var(--text);margin-top:6px;font-size:.8125rem}@media (width<=600px){.ch-pr-card{padding:16px}.ch-pr-fr{font-size:1.0625rem}.ch-pr-gur{padding:10px 12px;font-size:1.0625rem}.ch-pr-review-actions .ch-pr-btn{flex:1}}.spl-wrap{max-width:640px;margin:0 auto}.spl-top{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px;font-size:.82rem;display:flex}.spl-step{font-variant-numeric:tabular-nums}.spl-layer{background:var(--primary-soft);color:var(--primary);border-radius:999px;padding:2px 10px;font-weight:600}.spl-streak{background:var(--green-soft);color:var(--green);border-radius:999px;padding:2px 10px;font-weight:600}.spl-target{font-variant-numeric:tabular-nums;margin-left:auto}.spl-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);text-align:center;padding:22px 20px}.spl-hint{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:12px;font-size:.78rem}.spl-sentence{color:var(--text);font-size:1.32rem;line-height:1.45}.spl-sentence.weak{color:var(--text-muted);font-style:italic}.spl-word{color:var(--primary);font-size:2rem;font-weight:700}.spl-pos{letter-spacing:.08em;color:var(--primary);font-size:2rem;font-weight:700}.spl-sub{color:var(--text-muted);margin-top:10px;font-size:.92rem}.spl-swap{justify-content:center;align-items:center;gap:10px;margin-top:14px;font-size:1.1rem;display:flex}.spl-old{color:var(--text-muted);text-decoration:line-through}.spl-new{color:var(--primary);font-weight:700}.spl-arrow{color:var(--text-muted)}.spl-options{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:14px;display:flex}.spl-option{background:var(--surface-muted);color:var(--text);border-radius:999px;padding:5px 12px;font-size:.95rem}.spl-colloc{justify-content:center;align-items:center;gap:12px;font-size:1.7rem;display:flex}.spl-lead{color:var(--text);font-weight:700}.spl-blank{color:var(--primary);font-weight:700}.spl-banned{background:var(--red-soft);color:var(--red);border-radius:999px;margin-bottom:12px;padding:4px 12px;font-size:.9rem;display:inline-block}.spl-clock{justify-content:center;align-items:center;height:26px;margin:14px 0 6px;display:flex;position:relative}.spl-bar{background:var(--primary);border-radius:2px;height:4px;transition:width .1s linear;position:absolute;top:11px;left:0}.spl-bar.over{background:var(--amber)}.spl-count{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:.8rem;position:relative}.spl-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin-top:14px;display:flex}.spl-btn{border:1px solid var(--input-border);background:var(--card);color:var(--text);cursor:pointer;border-radius:999px;padding:10px 22px;font-size:.98rem;font-weight:600}.spl-btn:hover{background:var(--surface-muted)}.spl-btn.primary{background:var(--primary);border-color:var(--primary);color:var(--on-primary);box-shadow:var(--primary-shadow)}.spl-btn.primary:hover{background:var(--primary-hover)}.spl-btn.danger{background:var(--red);border-color:var(--red);color:var(--on-status)}.spl-btn:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.spl-busy{color:var(--text-muted);font-size:.92rem}.spl-error{text-align:center;color:var(--red);margin-top:10px;font-size:.92rem}.spl-feedback{border-radius:var(--radius);border:1px solid var(--border);background:var(--card);text-align:center;margin-top:14px;padding:14px 16px}.spl-feedback.pass{border-color:var(--green);background:var(--green-soft)}.spl-feedback.fail{border-color:var(--red);background:var(--red-soft)}.spl-verdict{color:var(--text);font-size:1rem}.spl-fast{color:var(--green);font-weight:700}.spl-latency,.spl-note,.spl-detail,.spl-heard{color:var(--text-muted);margin-top:6px;font-size:.86rem}.spl-info{color:var(--primary);cursor:pointer;background:0 0;border:none;margin-top:8px;font-size:.85rem;text-decoration:underline}.spl-proof{text-align:left;flex-direction:column;gap:5px;margin:12px 0 0;padding:0;list-style:none;display:flex}.spl-proof li{background:var(--card);border-radius:8px;justify-content:space-between;gap:12px;padding:5px 10px;font-size:.9rem;display:flex}.spl-proof-used_independently span{color:var(--green);font-weight:600}.spl-proof-used_with_help span,.spl-proof-form_error span{color:var(--amber)}.spl-proof-not_retrieved span{color:var(--text-muted)}.spl-done{text-align:center;max-width:640px;margin:0 auto}.spl-scorers{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:18px 0;display:grid}.spl-scorer{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:14px 8px}.spl-scorer-value{color:var(--text);font-variant-numeric:tabular-nums;font-size:1.5rem;font-weight:700}.spl-scorer-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-top:4px;font-size:.76rem}.spl-teacher-intro{color:var(--text-muted);margin-bottom:14px;font-size:.9rem}.spl-table-scroll{overflow-x:auto}.spl-table{border-collapse:collapse;width:100%;font-size:.86rem}.spl-table th{text-align:left;color:var(--text-muted);border-bottom:1px solid var(--border);white-space:nowrap;padding:8px 10px;font-weight:600}.spl-table td{border-bottom:1px solid var(--border);color:var(--text);font-variant-numeric:tabular-nums;white-space:nowrap;padding:8px 10px}.spl-table tbody tr:hover{background:var(--surface-muted);cursor:pointer}.spl-table tr.open{background:var(--primary-soft)}.spl-name{font-weight:600}.spl-slow{color:var(--red);font-weight:600}.spl-detail-row td{background:var(--surface-muted);white-space:normal}.spl-detail-row:hover td{cursor:default}.spl-words{margin-top:4px}@media (width<=640px){.spl-scorers{grid-template-columns:repeat(2,minmax(0,1fr))}.spl-sentence{font-size:1.15rem}.spl-word,.spl-pos{font-size:1.6rem}}.vd-wrap{flex-direction:column;gap:12px;max-width:560px;display:flex}.vd-top{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:10px;font-size:.8125rem;display:flex}.vd-step{color:var(--text);font-weight:700}.vd-progress{gap:4px;display:flex}.vd-dot{background:var(--surface-muted);border:1px solid var(--border);border-radius:50%;width:10px;height:10px}.vd-dot.now{background:var(--primary-soft);border-color:var(--primary)}.vd-dot.ok{background:var(--green);border-color:var(--green)}.vd-dot.bad{background:var(--red);border-color:var(--red)}.vd-reason{background:var(--surface-muted);color:var(--text-muted);border-radius:999px;margin-left:auto;padding:2px 8px;font-size:.72rem;font-weight:700}.vd-reason-retest{background:var(--red-soft);color:var(--red)}.vd-reason-focus{background:var(--amber-soft);color:var(--amber)}.vd-card{flex-direction:column;gap:12px;padding:22px;display:flex}.vd-verb{color:var(--text);text-transform:lowercase;font-size:1.6rem;font-weight:800}.vd-tense{color:var(--primary);font-size:.9rem;font-weight:700}.vd-row{align-items:center;gap:12px;display:flex}.vd-pronoun{min-width:72px;color:var(--text-muted);font-weight:700}.vd-input{border:1px solid var(--border);background:var(--input-bg);min-width:0;color:var(--text);border-radius:10px;flex:1;padding:12px 14px;font-size:1rem}.vd-input:disabled{opacity:.85}.vd-feedback{border-radius:10px;flex-wrap:wrap;align-items:center;gap:6px 10px;padding:10px 12px;font-size:.9rem;display:flex}.vd-feedback strong{color:var(--text)}.vd-correct{background:var(--green-soft);color:var(--green)}.vd-accents{background:var(--amber-soft);color:var(--amber)}.vd-wrong{background:var(--red-soft);color:var(--red)}.vd-next{margin-left:auto}.vd-summary{flex-direction:column;gap:14px;padding:22px;display:flex}.vd-summary-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.vd-summary-head h3{margin:0}.vd-score{border-radius:999px;padding:2px 12px;font-size:1.3rem;font-weight:800}.vd-score.good{background:var(--green-soft);color:var(--green)}.vd-score.mid{background:var(--amber-soft);color:var(--amber)}.vd-score.low{background:var(--red-soft);color:var(--red)}.vd-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:6px;font-size:.72rem;font-weight:800}.vd-misses ul{flex-direction:column;gap:4px;margin:0;padding-left:18px;font-size:.875rem;display:flex}.vd-given{color:var(--red);text-decoration:line-through}.vd-right{color:var(--green);font-weight:700}.vd-allgood{color:var(--green);margin:0;font-weight:600}.vd-chips{flex-wrap:wrap;gap:6px;display:flex}.vd-chip{background:var(--primary-soft);color:var(--primary);border-radius:999px;padding:4px 10px;font-size:.8rem;font-weight:700}.vd-note{margin:6px 0 0;font-size:.8rem}.vd-error{color:var(--red)}@media (width<=600px){.vd-card,.vd-summary{padding:16px}.vd-pronoun{min-width:56px}}.tce-wrap{flex-direction:column;gap:16px;max-width:860px;display:flex}.tce-intro-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.tce-intro-head .block-title{margin-bottom:0}.tce-count{background:var(--primary-soft);color:var(--primary);border-radius:999px;padding:3px 10px;font-size:.75rem;font-weight:700}.tce-rules{color:var(--text-muted);margin:14px 0;padding-left:20px;font-size:.9rem;line-height:1.6}.tce-message{background:var(--amber-soft);color:var(--amber);border-radius:10px;margin-bottom:12px;padding:10px 14px;font-size:.875rem;font-weight:600}.tce-start{margin-top:4px}.tce-done{color:var(--green);margin:0;font-weight:700}.tce-locked p{margin:0}.tce-stage{text-align:center;flex-direction:column;align-items:center;gap:14px;padding:32px 24px;display:flex}.tce-countdown{color:var(--primary);font-size:4rem;font-weight:800;line-height:1}.tce-topic-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);font-size:.75rem;font-weight:700}.tce-question{color:var(--text);max-width:680px;font-size:1.25rem;font-weight:700;line-height:1.45}.tce-question.small{color:var(--text-muted);text-align:left;margin:0 0 12px;font-size:.95rem;font-weight:500}.tce-timer{color:var(--red);font-variant-numeric:tabular-nums;align-items:center;gap:8px;font-size:1.125rem;font-weight:700;display:flex}.tce-rec-dot{background:var(--red);border-radius:50%;width:10px;height:10px;animation:1s infinite ss-pulse}.tce-grading{color:var(--text-muted);margin:0;font-weight:600}.tce-result{flex-direction:column;gap:14px;margin-top:8px;display:flex}.tce-result-head{flex-wrap:wrap;align-items:baseline;gap:16px;display:flex}.tce-score{color:var(--primary);font-size:2rem;font-weight:800;line-height:1}.tce-score span{color:var(--text-muted);font-size:1rem;font-weight:600}.tce-clb{background:var(--primary-soft);color:var(--primary);border-radius:999px;padding:4px 12px;font-size:.9rem;font-weight:800}.tce-subs{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px;display:grid}.tce-sub{background:var(--surface-muted);border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:2px;padding:10px 12px;display:flex}.tce-sub.low{border-color:var(--red);background:var(--red-soft)}.tce-sub.mid{border-color:var(--amber);background:var(--amber-soft)}.tce-sub.high{border-color:var(--green);background:var(--green-soft)}.tce-sub-label{color:var(--text-muted);font-size:.75rem;font-weight:700}.tce-sub-val{color:var(--text);font-variant-numeric:tabular-nums;font-size:1rem;font-weight:800}.tce-note{background:var(--primary-soft);color:var(--text);border-radius:10px;margin:0;padding:10px 14px;font-style:italic}.tce-block-title{color:var(--text-muted);margin-bottom:6px;font-size:.8125rem;font-weight:800}.tce-mistakes{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.tce-mistake{border:1px solid var(--border);border-radius:10px;flex-wrap:wrap;align-items:baseline;gap:8px;padding:8px 12px;font-size:.875rem;display:flex}.tce-wrong{color:var(--red);overflow-wrap:anywhere;text-decoration:line-through}.tce-arrow{color:var(--text-muted)}.tce-right{color:var(--green);overflow-wrap:anywhere;font-weight:700}.tce-tag{background:var(--surface-muted);color:var(--text-muted);border-radius:999px;margin-left:auto;padding:2px 8px;font-size:.75rem}.tce-suggestions{flex-direction:column;gap:8px;margin:0;padding-left:20px;font-size:.9rem;line-height:1.5;display:flex}.tce-fr{color:var(--text-muted);margin-top:2px;font-size:.8125rem;font-style:italic;display:block}.tce-transcript summary{cursor:pointer;color:var(--text-muted);font-size:.8125rem;font-weight:700}.tce-transcript p{white-space:pre-wrap;margin:8px 0 0;font-size:.9rem;line-height:1.6}.tce-history{flex-direction:column;gap:8px;display:flex}.tce-hist-row{border:1px solid var(--border);background:var(--surface-muted);width:100%;color:var(--text);font:inherit;text-align:left;cursor:pointer;border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:10px 14px;display:flex}.tce-hist-row:hover:not(:disabled),.tce-hist-row.open{border-color:var(--primary)}.tce-hist-row:disabled{cursor:default;opacity:.7}.tce-hist-title{font-weight:700}.tce-hist-meta{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:.8125rem}.tce-hist-item .tce-result{padding:4px 4px 8px}@media (width<=600px){.tce-stage{padding:24px 16px}.tce-question{font-size:1.1rem}.tce-tag{margin-left:0}}.reading-page{max-width:820px;color:var(--text);margin:0 auto;padding:20px}.reading-card{border:1px solid var(--border);background:var(--card);border-radius:12px;margin:20px 0;padding:20px}.reading-card article,.reading-card p{overflow-wrap:anywhere;line-height:1.75}.reading-page textarea{box-sizing:border-box;width:100%;min-height:180px;font:inherit;border:1px solid var(--border);color:var(--text);background:var(--bg);border-radius:8px;margin:12px 0;padding:12px;line-height:1.5;display:block}.reading-page button,.reading-page select{font:inherit;border:1px solid var(--border);background:var(--card);color:var(--text);cursor:pointer;white-space:normal;border-radius:7px;max-width:100%;margin:5px;padding:10px 14px}.reading-page button:disabled{opacity:.55;cursor:default}.reading-actions{flex-wrap:wrap;gap:8px;display:flex}.reading-error{border:2px solid var(--border);padding:12px}.reading-preserve{white-space:pre-wrap}@media (width<=600px){.reading-page{padding:12px}.reading-card{padding:14px}}.w9-page{max-width:1100px;color:var(--text);margin:0 auto;padding:4px 0 32px}.w9-page h1{margin:0 0 10px}.w9-page h2{margin:0;font-size:1.4rem}.w9-page h3{margin:18px 0 10px;font-size:1rem}.w9-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:22px;margin-bottom:18px;display:flex}.w9-header p{color:var(--text-muted)}.w9-eyebrow{text-transform:uppercase;letter-spacing:.08em;margin-bottom:7px;font-size:.74rem;font-weight:750;color:var(--primary)!important}.w9-progress{background:var(--primary-soft);color:var(--primary);border-radius:16px;flex-direction:column;align-items:center;padding:14px 20px;display:flex}.w9-progress strong{font-size:1.5rem}.w9-progress span{font-size:.8rem}.w9-guidance{color:var(--text-muted);margin-bottom:22px;line-height:1.6}.w9-task-list{gap:14px;margin-bottom:22px;display:grid}.w9-task-group,.w9-workspace{background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:16px;padding:22px}.w9-task-title{flex-wrap:wrap;align-items:baseline;gap:10px;margin-bottom:13px;display:flex}.w9-task-title span{color:var(--text-muted);font-size:.84rem}.w9-pills{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.w9-pill{border:1px solid var(--border);background:var(--input-bg);color:var(--text);text-align:center;cursor:pointer;border-radius:11px;padding:13px 10px;font-size:.87rem;font-weight:650}.w9-pill:disabled{opacity:.53;cursor:not-allowed}.w9-pill.w9-active{background:var(--primary-soft);color:var(--primary);border-color:var(--primary)}.w9-pill.w9-done:not(.w9-active){color:var(--green);border-color:var(--green)}.w9-workspace-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:15px;margin-bottom:14px;display:flex}.w9-meta{color:var(--text-muted);flex-wrap:wrap;gap:8px;font-size:.8rem;display:flex}.w9-meta span{border:1px solid var(--border);border-radius:9px;padding:5px 9px}.w9-primary,.w9-actions button,.w9-intro-start button{border:1px solid var(--border);cursor:pointer;background:var(--card);border-radius:10px;padding:11px 18px;font-weight:700}.w9-primary,.w9-actions .w9-primary{background:var(--primary);color:var(--on-primary);border-color:var(--primary)}.w9-page button:disabled{opacity:.55;cursor:not-allowed}.w9-intro-start{justify-items:start;gap:16px;display:grid}.w9-sujet,.w9-instruction,.w9-support{margin:12px 0;line-height:1.75}.w9-sujet{border-left:4px solid var(--primary);background:var(--primary-soft);border-radius:0 10px 10px 0;padding:13px 16px}.w9-support{color:var(--text-muted);font-size:.88rem}.w9-documents{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:22px 0;display:grid}.w9-document{border:1px solid var(--border);background:var(--input-bg);border-radius:13px;padding:17px}.w9-document p{margin-top:12px;line-height:1.75}.w9-page pre{white-space:pre-wrap;overflow-wrap:anywhere;font-family:inherit;line-height:1.7}.w9-english{background:var(--surface-muted);border-radius:12px;margin:20px 0;padding:16px}.w9-answer{gap:9px;margin:18px 0 6px;font-weight:700;display:grid}.w9-answer textarea,.w9-field textarea{background:var(--input-bg);border:1px solid var(--input-border);resize:vertical;width:100%;color:var(--text);font:inherit;border-radius:10px;padding:12px;font-weight:400;line-height:1.6}.w9-answer textarea:disabled,.w9-field textarea:disabled{opacity:.75}.w9-editor-footer{color:var(--text-muted);flex-wrap:wrap;justify-content:space-between;gap:14px;margin-bottom:18px;font-size:.82rem;display:flex}.w9-map h3{margin:24px 0 12px}.w9-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:13px;display:grid}.w9-field{gap:6px;font-size:.83rem;font-weight:700;display:grid}.w9-branches{gap:14px;display:grid}.w9-branch{border:1px solid var(--border);border-radius:12px;min-width:0;padding:14px}.w9-branch legend{color:var(--primary);padding:0 6px;font-weight:700}.w9-clock{background:var(--primary-soft);border-radius:12px;flex-wrap:wrap;align-items:center;gap:14px;margin:18px 0;padding:12px 18px;display:flex}.w9-clock strong{color:var(--primary);font-variant-numeric:tabular-nums;font-size:1.5rem}.w9-actions{flex-wrap:wrap;gap:10px;margin:18px 0;display:flex}.w9-feedback{border:1px solid var(--border);background:var(--input-bg);border-radius:14px;margin-top:24px;padding:18px;line-height:1.75}.w9-feedback ul{margin:8px 0 16px;padding-left:22px}.w9-feedback details{margin-top:10px}.w9-feedback summary,.w9-reference summary{cursor:pointer;color:var(--primary);font-weight:700}.w9-feedback pre,.w9-reference pre{margin-top:12px}.w9-reference{border-top:1px solid var(--border);margin-top:20px;padding-top:15px}.w9-reference p,.w9-footnote{color:var(--text-muted);font-size:.8rem}.w9-alert{background:var(--amber-soft);color:var(--amber);border-radius:11px;margin:16px 0;padding:14px 18px}@media (width<=680px){.w9-task-group,.w9-workspace{padding:16px}.w9-pills,.w9-documents{grid-template-columns:1fr}.w9-header{align-items:flex-start}.w9-task-title{display:grid}}.l15-item{flex-direction:column;gap:10px;display:flex}.l15-item-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.l15-item-head .block-title{margin:0}.l15-item-tags{flex-wrap:wrap;gap:6px;display:flex}.l15-kind{text-transform:uppercase;letter-spacing:.04em;background:var(--surface-muted);color:var(--muted-text);border-radius:999px;padding:3px 8px;font-size:.72rem;font-weight:700}.l15-kind-homework{background:var(--amber-soft);color:var(--amber)}.l15-kind-ok{background:var(--green-soft);color:var(--green)}.l15-prompt{white-space:pre-line;margin:0}.l15-fr{border-left:3px solid var(--border);background:var(--surface-muted);border-radius:0 8px 8px 0;margin:0;padding:8px 12px;font-style:italic}.l15-goals{margin:0;padding-left:20px;font-size:.9rem}.l15-goals li{margin:2px 0}.l15-notes,.l15-rule{color:var(--muted-text);border-top:1px solid var(--border);padding-top:8px;font-size:.85rem}.l15-frames{background:var(--bg);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:12px;margin-top:10px;padding:12px 14px;display:flex}.l15-frame-title{text-transform:uppercase;letter-spacing:.04em;color:var(--muted-text);margin-bottom:4px;font-size:.78rem;font-weight:700}.l15-frame-row,.l15-frame-example{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:4px 12px;padding:3px 0;font-size:.88rem;display:grid}.l15-frame-example{border-bottom:1px solid var(--border);margin-bottom:4px;padding-bottom:6px}.l15-frame-fr{font-weight:600}.l15-frame-en{color:var(--muted-text)}.l15-cycle{background:var(--surface-muted);border-radius:12px;padding:10px 14px;font-size:.88rem}.l15-cycle-title{margin-bottom:4px;font-weight:700}.l15-cycle ol{margin:0;padding-left:20px}.l15-rec{border-top:1px solid var(--border);flex-direction:column;gap:8px;padding-top:10px;display:flex}.l15-board{margin-top:10px;overflow-x:auto}.l15-board table{border-collapse:collapse;width:100%;font-size:.88rem}.l15-board th,.l15-board td{text-align:left;border-bottom:1px solid var(--border);white-space:nowrap;padding:6px 8px}.l15-board th{text-transform:uppercase;letter-spacing:.04em;color:var(--muted-text);font-size:.74rem}.l15-board td.l15-num{text-align:right;font-variant-numeric:tabular-nums}.l15-guide{margin-top:24px}.l15-guide-every{background:var(--surface-muted);border-radius:12px;margin-bottom:14px;padding:12px 16px}.l15-guide-every ol,.l15-guide-day ol{margin:6px 0 0;padding-left:20px}.l15-guide-day{border:1px solid var(--border);background:var(--bg);border-radius:12px;margin-bottom:10px;padding:12px 16px}.l15-guide-day summary{cursor:pointer;font-weight:700}.l15-guide-row{margin:8px 0;font-size:.9rem}.l15-guide-label{text-transform:uppercase;letter-spacing:.04em;color:var(--muted-text);font-size:.72rem;font-weight:700;display:block}.l15-guide-fr{color:var(--muted-text);font-style:italic}@media (width<=600px){.l15-frame-row,.l15-frame-example{grid-template-columns:1fr;gap:0}}.dm-page{background:var(--bg);place-items:center;min-height:100vh;padding:16px;display:grid}.dm-card{flex-direction:column;gap:12px;width:100%;max-width:420px;display:flex}.dm-input{border:1px solid var(--border);background:var(--bg);color:inherit;border-radius:8px;padding:10px 12px;font-size:1rem}.dm-room{background:var(--bg);flex-direction:column;height:100vh;display:flex}.dm-bar{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:12px;padding:10px 14px;display:flex}.dm-bar .reveal-btn{margin-left:auto}.dm-muted{color:var(--muted-text);font-size:.85rem}.dm-lk{flex:1;min-height:0;display:flex}.dm-stage{flex-direction:column;flex:1;gap:8px;min-height:0;padding:8px;display:flex}.dm-share{background:var(--surface-muted);border-radius:10px;flex:1;justify-content:center;min-height:0;display:flex;overflow:hidden}.dm-share-video{object-fit:contain;width:100%;height:100%}.dm-grid{flex:1;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-auto-rows:minmax(140px,1fr);gap:8px;min-height:0;display:grid;overflow-y:auto}.dm-grid-strip{flex:0 0 150px;grid-template-columns:none;grid-auto-columns:200px;grid-auto-flow:column;overflow:auto hidden}.dm-tile{background:var(--surface-muted);border-radius:10px;min-height:0;position:relative;overflow:hidden}.dm-video{object-fit:cover;width:100%;height:100%}.dm-fallback{place-items:center;width:100%;height:100%;display:grid}.dm-initial{background:var(--border);border-radius:50%;place-items:center;width:56px;height:56px;font-size:1.4rem;font-weight:700;display:grid}.dm-label{background:var(--bg);border-radius:6px;padding:2px 8px;font-size:.8rem;position:absolute;bottom:8px;left:8px}.dm-empty{color:var(--muted-text);grid-column:1/-1;place-items:center;display:grid}.dml-card{flex-direction:column;gap:10px;margin-bottom:20px;display:flex}.dml-note{color:var(--muted-text);margin:0;font-size:.88rem}.dml-row{border-top:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:10px;padding:6px 0;display:flex}.dml-time{font-variant-numeric:tabular-nums;min-width:56px;font-weight:700}.dml-error{color:var(--amber);font-size:.88rem}.ofl-pick{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.ofl-label{color:var(--text-muted);font-size:.8rem;font-weight:700}.ofl-option{cursor:pointer;border:1px solid var(--border);background:var(--surface-muted);color:var(--text);border-radius:999px;padding:8px 14px;font-size:.875rem;font-weight:600;line-height:1.2}.ofl-option.on{border-color:var(--primary);background:var(--primary-soft);color:var(--primary)}.ofl-option:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.ofl-option:disabled{opacity:.6;cursor:default}.ofl-option.ofl-month{text-align:center;min-width:40px;padding:8px 10px}.ofl-tag{white-space:nowrap;border:1px solid var(--border);background:var(--surface-muted);color:var(--text);border-radius:999px;padding:2px 10px;font-size:.8rem;font-weight:700;display:inline-block}.ofl-tag.l15{border-color:var(--primary);background:var(--primary-soft);color:var(--primary)}.ofl-tag.none{color:var(--text-muted);font-weight:600}.ofl-empty{color:var(--text-muted);margin:4px 0 0;font-size:.875rem}.life-workspace{width:100%;max-width:none}.life-workspace-header{justify-content:space-between;align-items:center;gap:18px;margin-bottom:26px;display:flex}.life-workspace-header h2{letter-spacing:-.05em;color:var(--text);font-size:clamp(1.8rem,3vw,2.4rem)}.life-workspace-header p,.life-stage-head p{color:var(--text-muted);font-size:.875rem}.life-eyebrow{color:var(--primary);text-transform:uppercase;letter-spacing:.13em;margin-bottom:5px;font-size:.68rem;font-weight:800;display:block}.life-layout{grid-template-columns:168px minmax(0,1fr);align-items:start;gap:24px;display:grid}.life-nav{flex-direction:column;gap:24px;display:flex;position:sticky;top:24px}.life-nav h3{color:var(--text-muted);text-transform:uppercase;letter-spacing:.12em;margin:0 0 8px 10px;font-size:.65rem}.life-nav button{text-align:left;width:100%;min-height:44px;color:var(--text-muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:10px;padding:10px 12px;font-size:.85rem;font-weight:650;display:block}.life-nav button:hover{background:var(--surface-muted);color:var(--text)}.life-nav button.active{background:var(--primary-soft);color:var(--primary)}.life-nav-note{color:var(--text-muted);border-top:1px solid var(--border);padding:12px;font-size:.75rem;line-height:1.6}.life-main{flex-direction:column;gap:16px;min-width:0;display:flex}.life-main [hidden]{display:none}.life-stage-head h3{color:var(--text);letter-spacing:-.025em;font-size:1.3rem}.life-nav-mobile{display:none}.life-stack{flex-direction:column;gap:18px;min-width:0;display:flex}.life-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);min-width:0;padding:22px}.life-section-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.life-section-head h3{color:var(--text);font-size:1.05rem;font-weight:750}.life-section-head p{color:var(--text-muted);margin-top:4px;font-size:.82rem;line-height:1.6}.life-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.life-btn{border:1px solid var(--input-border);background:var(--card);min-height:40px;color:var(--text);font:inherit;cursor:pointer;border-radius:10px;padding:9px 13px;font-size:.78rem;font-weight:700}.life-btn.primary{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}.life-btn.primary:hover{background:var(--primary-hover)}.life-btn.quiet{color:var(--text-muted);background:0 0;border-color:#0000}.life-btn:disabled{opacity:.5;cursor:default}.life-workspace button:focus-visible,.life-modal button:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}.life-muted,.life-actions small{color:var(--text-muted);font-size:.77rem;line-height:1.6}.life-positive{color:var(--green);font-size:.8rem}.life-overdue{color:var(--red);font-size:.8rem}.life-prewrap{white-space:pre-wrap;overflow-wrap:anywhere;font-size:.88rem;line-height:1.7}.life-empty{border:1px dashed var(--input-border);color:var(--text-muted);border-radius:14px;flex-direction:column;align-items:flex-start;gap:14px;padding:24px;font-size:.85rem;display:flex}.life-form{flex-direction:column;gap:16px;min-width:0;display:flex}.life-form label,.life-filters label,.life-date-label,.life-search,.life-capture-kind,.life-nav-mobile{color:var(--text);font-size:.76rem;font-weight:650}.life-form input,.life-form textarea,.life-form select,.life-filters input,.life-filters select,.life-date-label input,.life-search input,.life-capture-kind select,.life-nav-mobile select{border:1px solid var(--input-border);background:var(--input-bg);width:100%;min-width:0;min-height:42px;color:var(--text);font:inherit;border-radius:9px;margin-top:6px;padding:10px 12px;font-size:.85rem;display:block}.life-form textarea{resize:vertical;line-height:1.65}.life-form input:focus,.life-form textarea:focus,.life-form select:focus{outline:2px solid var(--focus-ring);outline-offset:2px}.life-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.life-form label small{color:var(--text-muted);margin-top:5px;font-weight:400;display:block}.life-form .life-check{align-items:center;gap:8px;display:flex}.life-check input{width:18px;height:18px;min-height:18px;margin:0}.life-error{background:var(--red-soft);color:var(--red);overflow-wrap:anywhere;border-radius:9px;padding:12px;font-size:.85rem}.life-warning,.life-carry{background:var(--amber-soft);color:var(--text);border:1px solid var(--border);border-radius:12px;padding:16px;font-size:.85rem}.life-warning>*+*,.life-carry p{margin-top:10px}.life-reflection{border-top:1px solid var(--border);padding-top:2px}.life-reflection summary,.life-card>summary{cursor:pointer;color:var(--primary);padding:12px 0;font-size:.8rem;font-weight:650}.life-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:16px 0;display:grid}.life-stats>div,.life-stats>button{min-width:0;padding-right:10px}.life-stats strong{color:var(--text);letter-spacing:-.04em;font-size:clamp(1.2rem,2vw,1.9rem);font-weight:780;display:block}.life-stats span{color:var(--text-muted);margin-top:4px;font-size:.69rem;display:block}.life-dashboard-stats{margin:0}.life-dashboard-stats button{text-align:left;background:var(--card);border:1px solid var(--border);cursor:pointer;box-shadow:var(--shadow);border-radius:14px;padding:18px}.life-hero{background:var(--feature-bg);color:var(--feature-text);border-radius:var(--radius);grid-template-columns:minmax(0,1fr) 160px;gap:26px;padding:28px;display:grid}.life-hero .life-eyebrow{color:var(--feature-muted)}.life-hero h3{letter-spacing:-.04em;margin-bottom:9px;font-size:clamp(1.3rem,2.2vw,1.8rem)}.life-hero p{color:var(--feature-muted);max-width:46ch;margin-bottom:18px;font-size:.85rem;line-height:1.7}.life-hero-btn{min-height:40px;color:var(--feature-text);border:1px solid var(--feature-track);font:inherit;cursor:pointer;background:0 0;border-radius:9px;padding:8px 11px;font-size:.73rem;font-weight:650}.life-hero-btn:hover{background:var(--feature-track)}.life-countdown{flex-direction:column;justify-content:center;display:flex}.life-countdown>strong{letter-spacing:-.065em;font-size:3.4rem;line-height:1.1}.life-countdown>span,.life-countdown>small{color:var(--feature-muted);font-size:.7rem}.life-countdown .life-progress-track{background:var(--feature-track)}.life-countdown .life-progress-track span{background:var(--feature-fill)}.life-countdown .life-progress small{color:var(--feature-muted)}.life-progress{align-items:center;gap:10px;margin:12px 0;display:flex}.life-progress-track{background:var(--surface-muted);border-radius:99px;flex:1;height:7px;overflow:hidden}.life-progress-track span{background:var(--primary);border-radius:inherit;height:100%;display:block}.life-progress small{color:var(--text-muted);font-size:.75rem}.life-today-grid{grid-template-columns:1.15fr 1fr;align-items:start;gap:18px;display:grid}.life-list{flex-direction:column;gap:10px;display:flex}.life-activity{flex-direction:column;gap:12px;list-style:none;display:flex}.life-activity li{border-left:3px solid var(--primary-soft);padding-left:14px}.life-activity span{text-transform:uppercase;color:var(--primary);font-size:.68rem;font-weight:750}.life-activity p{overflow-wrap:anywhere;color:var(--text);font-size:.83rem}.life-week{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin:18px 0;display:grid}.life-day{background:var(--input-bg);border:1px solid var(--border);cursor:pointer;color:var(--text);border-radius:10px;padding:12px 4px}.life-day small,.life-day strong,.life-day span{display:block}.life-day small{font-size:.65rem}.life-day strong{font-size:1.2rem}.life-day span{color:var(--text-muted);font-size:.59rem}.life-day.today{border-color:var(--primary)}.life-day.recorded{background:var(--green-soft)}.life-date-label{max-width:175px}.life-search{margin-bottom:16px;display:block}.life-history-entry{text-align:left;border:1px solid var(--border);background:var(--input-bg);width:100%;font:inherit;color:var(--text);cursor:pointer;border-radius:11px;padding:14px}.life-history-entry strong,.life-history-entry span,.life-history-entry small{display:block}.life-history-entry strong{font-size:.8rem}.life-history-entry span{overflow-wrap:anywhere;margin:5px 0;font-size:.82rem}.life-history-entry small{color:var(--text-muted);font-size:.7rem}.life-filters{flex-wrap:wrap;gap:14px;display:flex}.life-filters label{flex:1;min-width:150px}.life-plan-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.life-plan{flex-direction:column;gap:13px;display:flex}.life-plan h3{overflow-wrap:anywhere;letter-spacing:-.02em;font-size:1.12rem}.life-plan-top{justify-content:space-between;align-items:center;gap:10px;display:flex}.life-pill{background:var(--primary-soft);color:var(--primary);border-radius:99px;padding:4px 9px;font-size:.64rem;font-weight:750}.life-parent{color:var(--text-muted);font-size:.77rem}.life-plan .life-progress{margin:0}.life-plan .life-actions{margin-top:auto;padding-top:5px}.life-plan.achieved{border-color:var(--green)}.life-next-actions h4{color:var(--text-muted);margin-bottom:10px;font-size:.74rem}.life-next-actions .mind-item+.mind-item{margin-top:8px}.life-mansion{border-radius:var(--radius);border:1px solid var(--border);background:var(--card);padding:25px}.life-mansion-count{flex-direction:column;flex-shrink:0;align-items:end;display:flex}.life-mansion-count strong{color:var(--primary);font-size:2rem}.life-mansion-count span{color:var(--text-muted);font-size:.7rem}.life-roof{background:var(--primary-soft);clip-path:polygon(50% 0,100% 100%,0 100%);height:40px;margin:0 15px}.life-wall{background:var(--surface-muted);border-bottom:7px solid var(--border);border-radius:0 0 10px 10px;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:7px;padding:14px;display:grid}.life-wall>p{color:var(--text-muted);grid-column:1/-1;padding:18px;font-size:.83rem}.life-brick{background:var(--primary);color:var(--on-primary);text-align:left;cursor:pointer;border:0;border-radius:4px;flex-direction:column;gap:5px;padding:13px;display:flex}.life-brick small,.life-brick span{opacity:.9;font-size:.58rem}.life-brick strong{overflow-wrap:anywhere;font-size:.76rem}.life-check-button{border:1px solid var(--input-border);background:var(--input-bg);min-height:42px;color:var(--text);text-align:left;font:inherit;cursor:pointer;border-radius:9px;align-items:center;gap:10px;padding:8px 10px;font-size:.78rem;display:flex}.life-check-button.done{background:var(--green-soft);color:var(--green);border-color:var(--green)}.life-check-button:disabled{opacity:.55;cursor:default}.life-habit-check{justify-content:space-between;align-items:center;gap:8px;display:flex}.life-habit-check small{color:var(--text-muted);font-size:.64rem}.life-habit-grid{grid-template-columns:repeat(28,minmax(0,1fr));gap:4px;margin:16px 0 10px;display:grid}.life-habit-cell{border:1px solid var(--input-border);background:var(--input-bg);color:var(--text-muted);cursor:pointer;border-radius:5px;padding:6px 1px}.life-habit-cell small,.life-habit-cell span{font-size:.59rem;display:block}.life-habit-cell.done{background:var(--green);color:var(--on-status);border-color:var(--green)}.life-habit-cell.skipped{background:var(--amber-soft);border-color:var(--amber);color:var(--amber)}.life-habit-cell.rest{border-color:var(--border);opacity:.5;cursor:default}.life-habit-cell.pending{border-color:var(--primary);color:var(--primary)}.life-complete .mind-item-title{color:var(--text-muted);text-decoration:line-through}.life-calendar{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-top:18px;display:grid}.life-calendar-day{border:1px solid var(--border);background:var(--input-bg);border-radius:12px;min-width:0;padding:12px}.life-calendar-day h4{margin-bottom:12px;font-size:.82rem}.life-calendar-day.today{border-color:var(--primary)}.life-calendar-day>div+div{margin-top:10px}.life-modal-backdrop{z-index:2000;background:color-mix(in srgb, var(--text) 45%, transparent);place-items:center;padding:20px;display:grid;position:fixed;inset:0}.life-modal{border-radius:var(--radius);border:1px solid var(--border);background:var(--card);width:min(580px,100%);max-height:90dvh;color:var(--text);box-shadow:var(--shadow-raised);padding:24px;overflow:auto}.life-capture-kind{flex:1;min-width:170px}.mind-capture-row{flex-wrap:wrap}.mind-capture>.mind-capture-hint{margin-top:12px}@media (width<=1100px){.life-today-grid,.life-plan-grid{grid-template-columns:minmax(0,1fr)}.life-layout{grid-template-columns:150px minmax(0,1fr);gap:18px}.life-habit-grid{grid-template-columns:repeat(14,minmax(0,1fr))}}@media (width<=760px){.life-layout{display:block}.life-nav{display:none}.life-nav-mobile{display:block}.life-workspace-header{flex-direction:column;align-items:flex-start;margin-bottom:18px}.life-card{padding:18px}.life-hero{grid-template-columns:minmax(0,1fr);gap:18px;padding:22px}.life-countdown{flex-flow:wrap;align-items:baseline;gap:10px}.life-countdown>strong{font-size:2rem}.life-countdown .life-progress{width:100%;margin:0}.life-countdown>small{width:100%}.life-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.life-dashboard-stats button{padding:14px}.life-week{gap:4px}.life-day{padding:10px 2px}.life-day span{font-size:.5rem}.life-section-head{flex-wrap:wrap}.life-habit-grid{grid-template-columns:repeat(7,minmax(0,1fr))}.life-form-grid{grid-template-columns:minmax(0,1fr)}.life-modal-backdrop{padding:10px}.life-modal{max-height:94dvh;padding:18px}.life-mansion{padding:18px}.life-mansion-count{align-items:start}}.life-workspace .trk-metrics{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:14px 0;display:grid}.life-workspace .trk-metric{border-radius:10px;min-width:0;padding:10px 12px}.life-workspace .trk-metric-label{letter-spacing:.08em;font-size:.6rem}.life-workspace .trk-metric strong{margin:3px 0 2px;font-size:1.1rem;line-height:1.2;display:block}.life-workspace .trk-metric small{color:var(--text-muted);font-size:.66rem;line-height:1.35;display:block}.life-workspace .trk-trend-text{color:var(--red)}.life-workspace .trk-fit-text{color:var(--green)}.life-workspace .trk-equations{flex-direction:column;gap:4px;display:flex}.life-workspace .trk-equations p{font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin:0}.life-workspace .trk-equations span{font-weight:700}@media (width<=900px){.life-workspace .trk-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=560px){.life-workspace .trk-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}.billing-conversation{gap:1rem;max-height:24rem;margin-bottom:1rem;display:grid;overflow-y:auto}.billing-chat{border:1px solid var(--border);color:var(--text);background:var(--card);border-radius:12px;padding:1rem}.billing-chat.user{margin-left:2rem}.billing-chat p{white-space:pre-wrap;overflow-wrap:anywhere;margin:.5rem 0 0}.billing-input-label{margin-bottom:.5rem;font-weight:600;display:block}.billing-proposal{border-top:1px solid var(--border);padding:1.25rem 0}.billing-proposal h4{text-transform:capitalize;margin:0 0 .75rem}.billing-proposal .bill-form-grid{margin:1rem 0}.billing-estimate{border-top:1px solid var(--border);margin-top:.75rem;padding-top:.75rem}.billing-estimate p{font-size:.85rem;line-height:1.5}.billing-history{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:1rem;padding:1rem 0;display:flex}.billing-history p{overflow-wrap:anywhere;margin:.3rem 0}.bill-ai-actions{flex-wrap:wrap}.billing-proposal input,.billing-proposal select{min-width:0}@media (width<=600px){.billing-chat.user{margin-left:.75rem}.billing-history{flex-direction:column;align-items:flex-start}}.mind{flex-direction:column;gap:16px;width:100%;min-width:0;display:flex}.mind-capture{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px}.mind-capture textarea{box-sizing:border-box;resize:vertical;border:1px solid var(--input-border);background:var(--input-bg);width:100%;min-height:92px;color:var(--text);font:inherit;border-radius:12px;padding:13px 14px;font-size:1rem;line-height:1.5}.mind-capture textarea:focus{outline:3px solid var(--focus-ring);outline-offset:1px}.mind-capture-row{align-items:center;gap:10px;margin-top:10px;display:flex}.mind-capture-hint{min-width:0;color:var(--text-muted);flex:1;font-size:.8125rem}.mind-mic{border:1px solid var(--input-border);background:var(--card);width:52px;height:52px;color:var(--text);cursor:pointer;touch-action:none;-webkit-user-select:none;user-select:none;border-radius:50%;flex-shrink:0;place-items:center;font-size:1.25rem;display:grid}.mind-mic.recording{background:var(--red);border-color:var(--red);color:var(--on-status);animation:1s infinite mind-pulse}.mind-mic.busy{opacity:.6;cursor:wait}@keyframes mind-pulse{0%{box-shadow:0 0 0 0 var(--red-soft)}70%{box-shadow:0 0 0 12px #0000}to{box-shadow:0 0 #0000}}.mind-save{background:var(--primary);min-height:44px;color:var(--on-primary);font:inherit;cursor:pointer;border:0;border-radius:11px;padding:10px 20px;font-weight:700}.mind-save:disabled{opacity:.55;cursor:default}.mind-notice{overflow-wrap:anywhere;border-radius:10px;padding:10px 14px;font-size:.875rem;font-weight:600}.mind-notice.error{background:var(--red-soft);color:var(--red)}.mind-notice.ok{background:var(--green-soft);color:var(--green)}.mind-subtabs{scrollbar-width:thin;gap:6px;padding-bottom:4px;display:flex;overflow-x:auto}.mind-subtab{border:1px solid var(--border);background:var(--card);min-height:38px;color:var(--text-muted);font:inherit;cursor:pointer;white-space:nowrap;border-radius:999px;flex:none;padding:7px 14px;font-size:.8125rem;font-weight:700}.mind-subtab.active{border-color:var(--primary);background:var(--primary-soft);color:var(--primary)}.mind-count{background:var(--primary);color:var(--on-primary);border-radius:999px;margin-left:6px;padding:1px 7px;font-size:.6875rem}.mind-section{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px}.mind-section h3{color:var(--text);margin:0 0 4px;font-size:1.0625rem}.mind-section>p{color:var(--text-muted);margin:0 0 12px;font-size:.8125rem}.mind-list{flex-direction:column;gap:10px;display:flex}.mind-chunk{border:1px solid var(--border);background:var(--input-bg);border-radius:12px;padding:12px 14px}.mind-chunk-text{white-space:pre-wrap;overflow-wrap:anywhere;color:var(--text);font-size:.9375rem}.mind-chunk-meta{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;font-size:.75rem;display:flex}.mind-spin{color:var(--primary);font-weight:700}.mind-chunk-err{color:var(--red);overflow-wrap:anywhere;margin-top:6px;font-size:.75rem}.mind-chunk-items{flex-direction:column;gap:8px;margin-top:10px;display:flex}.mind-actions{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.mind-btn{border:1px solid var(--input-border);background:var(--card);min-height:36px;color:var(--text);font:inherit;cursor:pointer;border-radius:9px;padding:6px 12px;font-size:.8125rem;font-weight:700}.mind-btn.primary{border-color:var(--primary);background:var(--primary);color:var(--on-primary)}.mind-btn.quiet{color:var(--text-muted);background:0 0;border-color:#0000}.mind-btn.danger{background:var(--red-soft);color:var(--red);border-color:#0000}.mind-btn:disabled{opacity:.55;cursor:default}.mind-item{border:1px solid var(--border);background:var(--card);border-radius:12px;padding:12px 14px}.mind-item.inbox{border-color:var(--amber)}.mind-item-head{align-items:flex-start;gap:10px;display:flex}.mind-item-main{flex:1;min-width:0}.mind-item-title{color:var(--text);overflow-wrap:anywhere;font-size:.9375rem;font-weight:600}.mind-item-line{color:var(--text-muted);flex-wrap:wrap;gap:8px;margin-top:3px;font-size:.8125rem;display:flex}.mind-chip{background:var(--primary-soft);min-height:26px;color:var(--primary);font:inherit;text-transform:uppercase;letter-spacing:.04em;cursor:pointer;white-space:nowrap;border:0;border-radius:999px;align-items:center;padding:2px 10px;font-size:.6875rem;font-weight:800;display:inline-flex}.mind-chip.muted{background:var(--surface-muted);color:var(--text-muted);text-transform:none;letter-spacing:0;cursor:default;font-weight:600}.mind-chip.warn{background:var(--amber-soft);color:var(--amber)}.mind-kinds{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.mind-kinds .mind-chip{background:var(--card);border:1px solid var(--border);color:var(--text)}.mind-kinds .mind-chip.on{border-color:var(--primary);background:var(--primary-soft);color:var(--primary)}.mind-details{border-top:1px dashed var(--border);color:var(--text);white-space:pre-wrap;overflow-wrap:anywhere;margin-top:10px;padding-top:10px;font-size:.875rem;line-height:1.55}.mind-links{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.mind-links a{background:var(--surface-muted);min-height:30px;color:var(--primary);overflow-wrap:anywhere;border-radius:999px;align-items:center;padding:4px 11px;font-size:.75rem;font-weight:700;text-decoration:none;display:inline-flex}.mind-links a:hover{background:var(--primary-soft)}.mind-empty{text-align:center;color:var(--text-muted);border:1px dashed var(--input-border);border-radius:12px;padding:20px;font-size:.875rem}@media (width<=600px){.mind-capture,.mind-section{padding:14px 12px}.mind-save{flex:1}}.life-workspace .lvl-scroll{border:1px solid var(--border);border-radius:12px;margin-top:14px;overflow-x:auto}.life-workspace .lvl-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;min-width:620px;font-size:.85rem}.life-workspace .lvl-table th,.life-workspace .lvl-table td{border-bottom:1px solid var(--border);white-space:nowrap;padding:10px 12px}.life-workspace .lvl-table thead th{text-align:right;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);background:var(--surface-muted);font-size:.66rem;font-weight:750}.life-workspace .lvl-table thead th:first-child{text-align:left}.life-workspace .lvl-table thead th small{letter-spacing:0;text-transform:none;margin-top:2px;font-size:.62rem;font-weight:500;display:block}.life-workspace .lvl-table tbody th{text-align:left;color:var(--text);background:var(--card);font-weight:700;position:sticky;left:0}.life-workspace .lvl-table tbody th small{color:var(--text-muted);white-space:normal;margin-top:2px;font-size:.64rem;font-weight:400;display:block}.life-workspace .lvl-table tbody tr:last-child th,.life-workspace .lvl-table tbody tr:last-child td{border-bottom:0}.life-workspace .lvl-cell{text-align:right;color:var(--text);font-weight:650}.life-workspace .lvl-cell small{color:var(--text-muted);font-size:.62rem;font-weight:400;display:block}.life-workspace .lvl-muted{color:var(--text-muted);font-weight:400}.life-workspace .lvl-flat{color:var(--text-muted)}.life-workspace .lvl-page>.trk-chart-note{margin-top:12px}.life-workspace .eq-root{--eq-canvas-bg:var(--card);--eq-c1:var(--primary);--eq-c2:var(--green);--eq-c3:var(--red);--eq-c4:color-mix(in srgb, var(--primary) 55%, var(--green));--eq-c5:color-mix(in srgb, var(--red) 55%, var(--primary));--eq-c6:color-mix(in srgb, var(--green) 55%, var(--red));--eq-c7:color-mix(in srgb, var(--primary) 60%, var(--text));--eq-c8:color-mix(in srgb, var(--green) 60%, var(--text))}.life-workspace .eq-probe{pointer-events:none;width:0;height:0;position:absolute;overflow:hidden}.life-workspace .eq-probe-bg{color:var(--eq-canvas-bg)}.life-workspace .eq-probe-text{color:var(--text)}.life-workspace .eq-probe-muted{color:var(--text-muted)}.life-workspace .eq-probe-border{color:var(--border)}.life-workspace .eq-probe-primary{color:var(--primary)}.life-workspace .eq-probe-1{color:var(--eq-c1)}.life-workspace .eq-probe-2{color:var(--eq-c2)}.life-workspace .eq-probe-3{color:var(--eq-c3)}.life-workspace .eq-probe-4{color:var(--eq-c4)}.life-workspace .eq-probe-5{color:var(--eq-c5)}.life-workspace .eq-probe-6{color:var(--eq-c6)}.life-workspace .eq-probe-7{color:var(--eq-c7)}.life-workspace .eq-probe-8{color:var(--eq-c8)}.life-workspace .eq-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.life-workspace .eq-tabs{flex-wrap:wrap;gap:6px;display:flex}.life-workspace .eq-tabs button{border:1px solid var(--border);background:var(--card);color:var(--text-muted);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:7px 14px;font-size:.82rem;font-weight:650;display:inline-flex}.life-workspace .eq-tabs button.active{background:var(--primary);border-color:var(--primary);color:var(--card)}.life-workspace .eq-badge{background:var(--red);min-width:18px;color:var(--card);text-align:center;border-radius:999px;padding:0 6px;font-size:.66rem;line-height:18px;display:inline-block}.life-workspace .eq-stats{color:var(--text-muted);font-size:.76rem}.life-workspace .eq-toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:10px;display:flex}.life-workspace .eq-search{flex:220px;max-width:360px}.life-workspace .eq-legend{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.life-workspace .eq-legend-item{border:1px solid var(--border);background:var(--card);color:var(--text);font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:.76rem;display:inline-flex}.life-workspace .eq-legend-item.is-active{border-color:var(--primary);box-shadow:inset 0 0 0 1px var(--primary)}.life-workspace .eq-legend-none{cursor:default;color:var(--text-muted)}.life-workspace .eq-dot{border-radius:50%;flex:none;width:11px;height:11px;display:inline-block}.life-workspace .eq-dot-none{background:var(--text-muted)}.life-workspace .eq-stage{grid-template-columns:minmax(0,1fr);gap:12px;display:grid}.life-workspace .eq-stage.has-card{grid-template-columns:minmax(0,1fr) 320px}.life-workspace .eq-canvas-wrap{border:1px solid var(--border);background:var(--eq-canvas-bg);border-radius:14px;height:min(72vh,720px);min-height:360px;position:relative;overflow:hidden}.life-workspace .eq-canvas{position:absolute;inset:0}.life-workspace .eq-canvas canvas{touch-action:none;outline:none}.life-workspace .eq-canvas-status{background:var(--surface-muted);border:1px solid var(--border);color:var(--text-muted);pointer-events:none;border-radius:10px;padding:8px 12px;font-size:.78rem;position:absolute;bottom:12px;left:12px;right:12px}.life-workspace .eq-canvas-status.is-error{color:var(--red);border-color:var(--red);pointer-events:auto;-webkit-user-select:text;user-select:text}.life-workspace .eq-empty{flex-direction:column;align-items:flex-start;gap:10px;margin-bottom:12px;display:flex}.life-workspace .eq-card{border:1px solid var(--border);background:var(--card);border-radius:14px;flex-direction:column;gap:8px;max-height:min(72vh,720px);padding:14px;display:flex;overflow-y:auto}.life-workspace .eq-card-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.life-workspace .eq-card-tools{flex-wrap:wrap;gap:6px;display:flex}.life-workspace .eq-card-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.life-workspace .eq-cat-badge{letter-spacing:.08em;text-transform:uppercase;color:var(--primary);background:var(--surface-muted);border-radius:999px;padding:3px 10px;font-size:.64rem;font-weight:750}.life-workspace .eq-card h5,.life-workspace .eq-review h5,.life-workspace .eq-pending h5,.life-workspace .eq-byhand h5{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);align-items:center;gap:8px;margin:12px 0 4px;font-size:.68rem;font-weight:750;display:flex}.life-workspace .eq-count{letter-spacing:0;text-transform:none;color:var(--text-muted);font-size:.72rem;font-weight:500}.life-workspace .eq-ai{flex-direction:column;gap:8px;display:flex}.life-workspace .eq-ai-text{color:var(--text);background:var(--surface-muted);border:1px solid var(--border);white-space:pre-wrap;border-radius:10px;margin:0;padding:10px 12px;font-size:.84rem;line-height:1.5}.life-workspace .eq-ai-notes{flex-direction:column;align-items:flex-start;gap:6px;display:flex}.life-workspace .eq-ai .eq-item-body small{color:var(--text-muted);font-size:.76rem}.life-workspace .eq-field{flex-direction:column;flex:auto;gap:4px;min-width:0;display:flex}.life-workspace .eq-field-narrow{flex:0 0 150px}.life-workspace .eq-field>span{letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);font-size:.68rem;font-weight:700}.life-workspace .eq-root input[type=text],.life-workspace .eq-root textarea,.life-workspace .eq-root select{box-sizing:border-box;border:1px solid var(--border);background:var(--surface-muted);width:100%;color:var(--text);font:inherit;border-radius:10px;padding:9px 11px;font-size:.9rem}.life-workspace .eq-root textarea{resize:vertical;line-height:1.45}.life-workspace .eq-root input:focus,.life-workspace .eq-root textarea:focus,.life-workspace .eq-root select:focus{outline:2px solid var(--primary);outline-offset:1px}.life-workspace .eq-dump{flex-direction:column;gap:12px;display:flex}.life-workspace .eq-dump-row{flex-wrap:wrap;gap:10px;display:flex}.life-workspace .eq-media-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.life-workspace .eq-file{cursor:pointer;position:relative;overflow:hidden}.life-workspace .eq-file input{opacity:0;cursor:pointer;position:absolute;inset:0}.life-workspace .eq-file.is-disabled{opacity:.5;pointer-events:none}.life-workspace .eq-thumb{object-fit:cover;border-radius:6px;width:34px;height:34px}.life-workspace .eq-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:4px;display:flex}.life-workspace .eq-hint{color:var(--text-muted);margin:0;font-size:.78rem}.life-workspace .eq-snippet{color:var(--text-muted);white-space:pre-wrap;margin:4px 0 0;font-size:.8rem}.life-workspace .eq-chip{border:1px solid var(--border);background:var(--surface-muted);color:var(--text);border-radius:999px;align-items:center;gap:6px;max-width:100%;padding:4px 6px 4px 12px;font-size:.8rem;display:inline-flex}.life-workspace .eq-chip-btn{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;padding:0}.life-workspace .eq-chip-x{color:var(--text-muted);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:2px 6px;font-size:1rem;line-height:1}.life-workspace .eq-chip-x:hover{color:var(--red)}.life-workspace .eq-chips{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.life-workspace .eq-picker{flex:160px;min-width:160px;display:inline-block;position:relative}.life-workspace .eq-picker-list{z-index:5;background:var(--card);border:1px solid var(--border);box-shadow:0 8px 24px color-mix(in srgb, var(--text) 18%, transparent);border-radius:10px;max-height:220px;margin:4px 0 0;padding:4px;list-style:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.life-workspace .eq-picker-list button{text-align:left;width:100%;color:var(--text);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:7px;justify-content:space-between;gap:8px;padding:7px 9px;font-size:.86rem;display:flex}.life-workspace .eq-picker-list button:hover{background:var(--surface-muted)}.life-workspace .eq-picker-list small{color:var(--text-muted)}.life-workspace .eq-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.life-workspace .eq-item{border:1px solid var(--border);background:var(--card);border-radius:12px;align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.life-workspace .eq-item.is-dropped{opacity:.45}.life-workspace .eq-item-body{flex-direction:column;flex:auto;gap:6px;min-width:0;display:flex}.life-workspace .eq-item-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.life-workspace .eq-label-input{flex:2 160px;font-weight:650}.life-workspace .eq-cat-input{flex:100px;max-width:160px}.life-workspace .eq-check{padding-top:10px}.life-workspace .eq-check input{width:18px;height:18px;accent-color:var(--primary)}.life-workspace .eq-reuse{color:var(--green);font-weight:600}.life-workspace .eq-new{color:var(--text-muted)}.life-workspace .eq-edge-line{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.life-workspace .eq-edge-line strong{font-size:.9rem}.life-workspace .eq-edge-line em{color:var(--primary)}.life-workspace .eq-rel-input{flex:0 150px;width:auto;font-style:italic}.life-workspace .eq-item-edge small{color:var(--text-muted);font-size:.76rem}.life-workspace .eq-cluster.is-active{border-color:var(--primary);box-shadow:inset 0 0 0 1px var(--primary)}.life-workspace .eq-review{flex-direction:column;gap:6px;display:flex}.life-workspace .eq-review-head{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.life-workspace .eq-review-head h4{margin:0;font-size:1rem}.life-workspace .eq-review-head p{color:var(--text-muted);margin:2px 0 0;font-size:.78rem}.life-workspace .eq-raw{white-space:pre-wrap;font:inherit;background:var(--surface-muted);border:1px solid var(--border);border-radius:10px;max-height:260px;margin:0;padding:10px 12px;font-size:.84rem;line-height:1.5;overflow-y:auto}.life-workspace .eq-tell{align-items:flex-end;gap:8px;margin-top:12px;display:flex}.life-workspace .eq-danger{color:var(--red)}.life-workspace .eq-links{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.life-workspace .eq-links li{align-items:center;gap:4px;display:flex}.life-workspace .eq-link-btn{text-align:left;border:1px solid var(--border);background:var(--surface-muted);color:var(--text);font:inherit;cursor:pointer;border-radius:8px;flex:auto;min-width:0;padding:6px 9px;font-size:.82rem}.life-workspace .eq-link-btn em{color:var(--primary);font-style:italic}.life-workspace .eq-add-link{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.life-workspace .eq-add-link select{width:auto}.life-workspace .eq-add-link input[type=text]{flex:140px;width:auto}.life-workspace .eq-dump-source summary{cursor:pointer;color:var(--text);margin-bottom:6px;font-size:.82rem}.life-workspace .eq-pending,.life-workspace .eq-byhand,.life-workspace .eq-clusters{margin-top:18px}.life-workspace .eq-dump-view>.trk-chart-note,.life-workspace .eq-graph-view>.trk-chart-note{margin-top:10px}.life-workspace .eq-notice{border:1px solid var(--border);background:var(--surface-muted);color:var(--text);border-radius:12px;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;padding:10px 12px;font-size:.86rem;display:flex}.life-workspace .eq-notice.ok{border-color:var(--green);background:var(--green-soft)}.life-workspace .eq-notice.error{border-color:var(--red);color:var(--red)}@media (width<=900px){.life-workspace .eq-stage.has-card{grid-template-columns:minmax(0,1fr)}.life-workspace .eq-canvas-wrap{height:min(60vh,560px)}.life-workspace .eq-card{max-height:none}.life-workspace .eq-field-narrow{flex:100%}.life-workspace .eq-tell{flex-direction:column;align-items:stretch}}.wr-page{max-width:760px;margin:0 auto}.wr-topbar{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.wr-title{margin:0;font-size:1.35rem}.wr-subtitle{color:var(--text-muted);margin:4px 0 0;font-size:.85rem}.wr-share-btn{white-space:nowrap;flex-shrink:0;align-items:center;gap:8px;display:inline-flex}.wr-share-btn:disabled{opacity:.5;cursor:default}.wr-note{color:var(--text-muted);margin:6px 0;font-size:.85rem}.wr-error{color:var(--red);margin:6px 0;font-size:.85rem}.wr-success{color:var(--green);margin:6px 0;font-size:.9rem;font-weight:700}.wr-readonly{border:1px solid var(--border);background:var(--surface-muted);border-radius:10px;padding:8px 12px}.wr-flash{background:var(--primary-soft);color:var(--primary);border-radius:10px;padding:8px 12px;font-size:.85rem;font-weight:600}.wr-newer{border:1px solid var(--primary);background:var(--primary-soft);width:100%;color:var(--primary);cursor:pointer;border-radius:10px;margin:0 0 10px;padding:10px 12px;font-size:.85rem;font-weight:700;display:block}.wr-newer:focus-visible,.wr-nav-btn:focus-visible,.wr-action:focus-visible,.wr-icon-btn:focus-visible,.wr-link-btn:focus-visible,.wr-play-overlay:focus-visible,.wr-viewer:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.wr-empty{text-align:center;padding:32px 20px}.wr-empty-title{margin:0 0 14px;font-size:1.05rem;font-weight:700}.wr-viewer{isolation:isolate;border:1px solid var(--border);border-radius:var(--radius);background:var(--card);touch-action:pan-x;overscroll-behavior:contain;height:min(100dvh - 190px,820px);min-height:480px;position:relative;overflow:hidden}.wr-track{will-change:transform;height:100%;transition:transform .32s}.wr-slot{height:100%}.wr-reel{grid-template-rows:minmax(0,1fr) auto auto;height:100%;display:grid}.wr-reel-gone .wr-stage{place-items:center;display:grid}.wr-stage{background:var(--nav-bg);cursor:pointer;place-items:center;min-height:0;display:grid;position:relative;overflow:hidden}.wr-stage-live{cursor:default}.wr-video{object-fit:contain;background:var(--nav-bg);width:100%;height:100%;display:block}.wr-video-mirror{transform:scaleX(-1)}.wr-stage-note{color:var(--feature-text);text-align:center;padding:20px;font-size:.9rem}.wr-stage-failed p{margin:0 0 10px}.wr-stage-hint{color:var(--feature-muted);margin-top:10px;font-size:.8rem}.wr-play-overlay{background:color-mix(in srgb, var(--nav-bg) 35%, transparent);cursor:pointer;border:0;place-items:center;width:100%;height:100%;display:grid;position:absolute;inset:0}.wr-play-glyph{background:var(--card);width:72px;height:72px;box-shadow:var(--shadow-raised);border-radius:50%;place-items:center;display:grid}.wr-play-glyph:after{content:"";border-top:14px solid #0000;border-bottom:14px solid #0000;border-left:24px solid var(--primary);width:0;height:0;margin-left:6px}.wr-progress{background:var(--feature-track);height:3px;position:absolute;bottom:0;left:0;right:0}.wr-progress-fill{background:var(--primary);transform-origin:0;height:100%;transform:scaleX(0)}.wr-meta{padding:10px 14px 4px}.wr-author{align-items:center;gap:10px;display:flex}.wr-avatar{object-fit:cover;border:2px solid var(--card);background:var(--primary-soft);border-radius:50%;flex-shrink:0;width:38px;height:38px}.wr-avatar-initials{color:var(--primary);place-items:center;font-size:.85rem;font-weight:800;display:grid}.wr-avatar-sm{width:30px;height:30px;font-size:.7rem}.wr-author-text{flex-direction:column;min-width:0;display:flex}.wr-author-text strong{text-overflow:ellipsis;white-space:nowrap;font-size:.95rem;overflow:hidden}.wr-author-text time{color:var(--text-muted);font-size:.75rem}.wr-duration{color:var(--text-muted);font-variant-numeric:tabular-nums;margin-left:auto;font-size:.75rem}.wr-caption{white-space:pre-wrap;overflow-wrap:anywhere;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:8px 0 0;font-size:.9rem;display:-webkit-box;overflow:hidden}.wr-caption.is-open{-webkit-line-clamp:unset;display:block}.wr-caption-more{color:var(--primary);cursor:pointer;background:0 0;border:0;padding:0 4px;font-size:.85rem;font-weight:700}.wr-actions{border-top:1px solid var(--border);align-items:center;gap:4px;padding:6px 8px 10px;display:flex}.wr-action{color:var(--text);cursor:pointer;background:0 0;border:0;border-radius:10px;flex-direction:column;flex:1;align-items:center;gap:2px;padding:6px 4px;font-size:.72rem;display:inline-flex}.wr-action:hover:not(:disabled){background:var(--primary-soft);color:var(--primary)}.wr-action:disabled{opacity:.5;cursor:default}.wr-action.is-liked{color:var(--red)}.wr-nav{background:color-mix(in srgb, var(--card) 85%, transparent);box-shadow:var(--shadow);z-index:3;border-radius:999px;align-items:center;gap:6px;padding:4px;display:flex;position:absolute;top:10px;right:10px}.wr-nav-btn{color:var(--text);cursor:pointer;background:0 0;border:0;border-radius:999px;align-items:center;gap:4px;padding:5px 9px;font-size:.75rem;font-weight:700;display:inline-flex}.wr-nav-btn:hover:not(:disabled){background:var(--primary-soft);color:var(--primary)}.wr-nav-btn:disabled{opacity:.4;cursor:default}.wr-nav-count{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:.72rem}.wr-boundary{z-index:3;background:color-mix(in srgb, var(--card) 92%, transparent);border:1px solid var(--border);color:var(--text);box-shadow:var(--shadow);border-radius:10px;padding:10px 12px;font-size:.85rem;position:absolute;bottom:86px;left:12px;right:12px}.wr-boundary-end{text-align:center;color:var(--text-muted)}.wr-sheet{z-index:5;background:var(--card);color:var(--text);flex-direction:column;display:flex;position:absolute;inset:0}.wr-composer{z-index:90;border-left:1px solid var(--border);border-right:1px solid var(--border);max-width:760px;margin:0 auto;position:fixed;inset:0}.wr-sheet-head{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;padding:12px 14px;display:flex}.wr-sheet-body{overscroll-behavior:contain;flex:1;min-height:0;padding:12px 14px;overflow-y:auto}.wr-sheet-foot{border-top:1px solid var(--border);margin:0;padding:10px 14px}.wr-icon-btn{border:1px solid var(--border);background:var(--card);width:36px;height:36px;color:var(--text);cursor:pointer;border-radius:10px;place-items:center;display:grid}.wr-icon-btn:hover:not(:disabled){background:var(--primary-soft);color:var(--primary)}.wr-link-btn{color:var(--primary);cursor:pointer;background:0 0;border:0;padding:2px 6px;font-size:.78rem;font-weight:700}.wr-link-btn:disabled{opacity:.5;cursor:default}.wr-comments,.wr-replies{margin:0;padding:0;list-style:none}.wr-comment{border-bottom:1px solid var(--border);padding:8px 0}.wr-replies{margin-left:40px}.wr-reply{border-bottom:0;padding:6px 0 0}.wr-comment-row{align-items:flex-start;gap:10px;display:flex}.wr-comment-main{flex:1;min-width:0}.wr-comment-head{justify-content:space-between;align-items:baseline;gap:8px;font-size:.82rem;display:flex}.wr-comment-head time{color:var(--text-muted);flex-shrink:0;font-size:.7rem}.wr-comment-body{white-space:pre-wrap;overflow-wrap:anywhere;margin:2px 0 0;font-size:.88rem}.wr-comment-body.is-deleted{color:var(--text-muted);font-style:italic}.wr-comment-tools{gap:2px;margin-top:2px;display:flex}.wr-compose{border-top:1px solid var(--border);flex-shrink:0;padding:10px 14px}.wr-reply-to{color:var(--text-muted);margin-bottom:6px;font-size:.78rem}.wr-compose-row{align-items:flex-end;gap:8px;display:flex}.wr-compose textarea,.wr-preview textarea{resize:none;border:1px solid var(--input-border);background:var(--card);width:100%;color:var(--text);border-radius:10px;padding:9px;font-family:inherit;font-size:1rem}.wr-compose .sub-btn{flex-shrink:0;padding:9px 16px}.wr-compose .sub-btn:disabled{opacity:.5;cursor:default}.wr-choose{flex-direction:column;gap:10px;padding-top:10px;display:flex}.wr-choose-btn{justify-content:center;align-items:center;gap:8px;width:100%;padding:14px;font-size:1rem;display:inline-flex}.wr-privacy{font-weight:600}.wr-record,.wr-preview{flex-direction:column;gap:8px;height:100%;display:flex}.wr-record .wr-stage,.wr-preview .wr-stage{border-radius:12px;flex:1;min-height:240px}.wr-rec-timer{background:color-mix(in srgb, var(--nav-bg) 70%, transparent);color:var(--feature-text);font-variant-numeric:tabular-nums;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:.8rem;font-weight:700;display:inline-flex;position:absolute;top:10px;left:10px}.wr-rec-dot{background:var(--feature-muted);border-radius:50%;width:9px;height:9px}.wr-rec-timer.is-on .wr-rec-dot{background:var(--red);animation:1s steps(2,end) infinite wr-blink}@keyframes wr-blink{to{opacity:.25}}.wr-record-controls,.wr-preview-actions{align-items:center;gap:10px;display:flex}.wr-stop-btn{background:var(--red);border-color:var(--red);color:var(--on-status)}.wr-caption-label{font-size:.8rem;font-weight:700}.wr-caption-count{text-align:right;color:var(--text-muted);font-size:.72rem}.wr-preview-actions .sub-btn:disabled{opacity:.5;cursor:default}.wr-menu-body{flex-direction:column;gap:8px;display:flex}.wr-menu-item{text-align:left;width:100%;margin-top:0}.wr-danger{color:var(--red)}.wr-sheet .reveal-btn,.wr-actions .reveal-btn,.wr-boundary .reveal-btn{margin-top:0}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=640px){.wr-topbar{flex-direction:column;align-items:stretch}.wr-share-btn{justify-content:center}.wr-viewer{border-radius:12px;height:min(100dvh - 230px,760px);min-height:420px}.wr-nav{top:6px;right:6px}.wr-nav-btn span{display:none}.wr-meta{padding:8px 10px 2px}.wr-actions{padding:4px 4px 8px}.wr-composer{border:0;max-width:none}.wr-replies{margin-left:28px}}@media (prefers-reduced-motion:reduce){.wr-track{transition:none}.wr-rec-timer.is-on .wr-rec-dot{animation:none}}.bdo{max-width:860px}.bdo-title{margin-bottom:4px}.bdo-lead{color:var(--text-muted);margin:0 0 16px}.bdo-muted{color:var(--text-muted)}.bdo-small{font-size:.82rem}.bdo-error{color:var(--red);justify-content:space-between;align-items:center;gap:12px;display:flex}.bdo-progress{flex-direction:column;gap:14px;display:flex}.bdo-bar-wrap{flex-direction:column;gap:6px;display:flex}.bdo-bar-head{color:var(--text);justify-content:space-between;gap:12px;display:flex}.bdo-bar{background:var(--surface-muted);border:1px solid var(--border);border-radius:99px;height:10px;overflow:hidden}.bdo-bar-fill{background:var(--primary);border-radius:99px;height:100%}.bdo-ready{background:var(--primary-soft);color:var(--primary);border-radius:8px;padding:8px 10px;font-weight:700}.bdo-stats{color:var(--text-muted);flex-wrap:wrap;gap:6px 18px;font-size:.88rem;display:flex}.bdo-stats strong{color:var(--text)}.bdo-search{color:var(--text-muted);align-items:center;gap:8px;margin:10px 0 14px;display:flex}.bdo-search input{border:1px solid var(--input-border);background:var(--card);min-width:0;max-width:320px;color:var(--text);border-radius:8px;flex:1;padding:7px 10px;font-size:1rem}.bdo-search input:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px}.bdo-list{flex-direction:column;gap:8px;display:flex}.bdo-row{border:1px solid var(--border);background:var(--card);color:var(--text);border-radius:10px;flex-direction:column;gap:6px;padding:10px 12px;display:flex}.bdo-row.is-excluded{background:var(--surface-muted)}.bdo-who{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.bdo-tag{background:var(--amber-soft);color:var(--amber);border-radius:6px;padding:1px 8px;font-size:.72rem;font-weight:800}.bdo-counts{font-size:.85rem}.bdo-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.bdo-lang{color:var(--text-muted);align-items:center;gap:6px;font-size:.85rem;display:inline-flex}.bdo-lang select{border:1px solid var(--input-border);background:var(--card);color:var(--text);border-radius:8px;padding:5px 8px;font-size:.95rem}.bdo-lang select:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px}.bdo-btn{border:1px solid var(--border);background:var(--card);color:var(--text);cursor:pointer;border-radius:8px;padding:6px 12px;font-size:.85rem;font-weight:700}.bdo-btn:hover:not(:disabled){background:var(--primary-soft);color:var(--primary)}.bdo-btn:disabled{opacity:.55;cursor:default}.bdo-btn:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.bdo-btn.is-danger{border-color:var(--red);color:var(--red)}.bdo-btn.is-danger:hover:not(:disabled){background:var(--red-soft);color:var(--red)}.bdo-notice{font-size:.82rem}.bdo-notice.is-ok{color:var(--primary)}.bdo-notice.is-error{color:var(--red)}@media (width<=600px){.bdo-search{flex-direction:column;align-items:stretch}.bdo-search input{max-width:none}.bdo-actions{align-items:stretch}}.hn-page{flex-direction:column;gap:14px;max-width:860px;display:flex}.hn-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.hn-head h2{margin:0}.hn-help{color:var(--text-muted);margin:0;font-size:.92rem}.hn-muted{color:var(--text-muted);font-size:.88rem}.hn-error{background:var(--red-soft);color:var(--red);border-radius:10px;padding:8px 12px;font-size:.875rem}.hn-red{color:var(--red)}.hn-row{border-top:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:12px;width:100%;padding:10px 0;display:flex}.hn-row:first-of-type{border-top:0}.hn-row-btn{color:var(--text);cursor:pointer;text-align:left;font:inherit;background:0 0;border-bottom:0;border-left:0;border-right:0}.hn-row-btn:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.hn-row-main{flex-direction:column;gap:3px;min-width:0;display:flex}.hn-row-title{color:var(--text);overflow-wrap:anywhere;font-weight:600}.hn-row-sub{color:var(--text-muted);font-size:.82rem}.hn-row-answer{color:var(--text);background:var(--surface-muted);border-radius:8px;padding:6px 10px;font-size:.88rem}.hn-row-side{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;display:flex}.hn-chip{border:1px solid var(--border);background:var(--surface-muted);color:var(--text-muted);white-space:nowrap;border-radius:999px;padding:3px 9px;font-size:.75rem;font-weight:700;display:inline-block}.hn-chip-urgent{border-color:var(--red);background:var(--red-soft);color:var(--red)}.hn-chip-done{border-color:var(--primary);background:var(--primary-soft);color:var(--primary)}.hn-text{box-sizing:border-box;resize:vertical;border:1px solid var(--border);background:var(--card);width:100%;color:var(--text);font:inherit;border-radius:12px;padding:12px;line-height:1.5}.hn-text:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px}.hn-text-small{font-size:.9rem}.hn-tools{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.hn-tools-tight{align-items:center;margin-top:0}.hn-urgent-btn.on{border-color:var(--red);color:var(--red);background:var(--red-soft)}.hn-shots{flex-wrap:wrap;gap:10px;margin-top:12px;display:flex}.hn-shot{border:1px solid var(--border);background:var(--surface-muted);border-radius:10px;width:120px;height:90px;display:block;position:relative;overflow:hidden}.hn-shot img{object-fit:cover;width:100%;height:100%;display:block}.hn-shot-x{cursor:pointer;border:1px solid var(--border);background:var(--card);width:24px;height:24px;color:var(--text);border-radius:999px;font-weight:700;line-height:1;position:absolute;top:4px;right:4px}.hn-turns{flex-direction:column;gap:8px;display:flex}.hn-turn{background:var(--surface-muted);color:var(--text);border-radius:10px;align-items:baseline;gap:10px;padding:8px 12px;display:flex}.hn-turn-ai{border-left:3px solid var(--primary)}.hn-turn-me{border-left:3px solid var(--border)}.hn-turn-who{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;flex:none;font-size:.75rem;font-weight:800}.hn-answer{gap:8px;display:flex}.hn-answer-input{border:1px solid var(--border);background:var(--card);min-width:0;color:var(--text);font:inherit;border-radius:10px;flex:1;padding:9px 12px}.hn-answer-input:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px}.hn-ai-line{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:10px;font-size:.9rem;display:flex}.hn-countdown{border:1px solid var(--primary);background:var(--primary-soft);color:var(--primary);border-radius:12px;padding:10px 12px;font-weight:600}.hn-sent{color:var(--text);flex-direction:column;gap:12px;font-weight:600;display:flex}.hn-budget{color:var(--text-muted);font-size:.85rem}.hn-budget-out{color:var(--red);font-weight:700}.hn-section{flex-direction:column;gap:10px;display:flex}.hn-section-title{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-size:.8rem;font-weight:800}.hn-issue{flex-direction:column;gap:8px;display:flex}.hn-issue-red{border-color:var(--red);box-shadow:inset 4px 0 0 var(--red)}.hn-issue-done{opacity:.85}.hn-issue-top{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.hn-issue-title{color:var(--text);overflow-wrap:anywhere;font-weight:700}.hn-summary{color:var(--text);margin:0}.hn-details{flex-direction:column;gap:8px;display:flex}.hn-original{white-space:pre-wrap;border:1px solid var(--border);color:var(--text);overflow-wrap:anywhere;border-radius:10px;padding:10px 12px}.hn-solve{flex-direction:column;gap:4px;margin-top:4px;display:flex}.hn-prompt-btn{border-color:var(--primary);color:var(--primary)}.hn-prompt{border:1px solid var(--primary);background:var(--primary-soft);border-radius:12px;flex-direction:column;gap:8px;margin-top:4px;padding:10px 12px;display:flex}.hn-prompt-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px 12px;display:flex}.hn-prompt-title{color:var(--text);overflow-wrap:anywhere;font-weight:700}.hn-prompt-meta{color:var(--text-muted);overflow-wrap:anywhere;font-size:.8rem}.hn-prompt-text{white-space:pre-wrap;min-height:220px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.8rem;line-height:1.45}.hn-group{flex-direction:column;gap:10px;display:flex}.hn-group+.hn-group{margin-top:6px}.hn-group-title{color:var(--text);overflow-wrap:anywhere;font-size:.95rem;font-weight:700}.hn-ungrouped{border:1px dashed var(--border);background:var(--surface-muted);border-radius:10px;flex-direction:column;gap:8px;padding:8px 10px;display:flex}.hn-ungrouped-why{color:var(--text-muted);overflow-wrap:anywhere;font-size:.86rem}.hn-pick{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.hn-pick-label{color:var(--text-muted);font-size:.8rem;font-weight:700}.hn-pick-select{border:1px solid var(--border);background:var(--card);min-width:0;color:var(--text);font:inherit;border-radius:10px;flex:200px;padding:8px 10px}.hn-pick-select:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px}.hn-pick .hn-answer-input{flex:200px}.hn-pick .hn-error{flex-basis:100%}@media (width<=600px){.hn-row,.hn-issue-top{flex-direction:column}.hn-row-side{justify-content:flex-start}.hn-shot{width:96px;height:72px}.hn-prompt-text{min-height:260px}.hn-pick-select,.hn-pick .hn-answer-input{flex-basis:100%}}.hn-tabs{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:6px;padding-bottom:10px;display:flex}.hn-tab{cursor:pointer;font:inherit;border:1px solid var(--border);background:var(--card);color:var(--text-muted);border-radius:999px;padding:7px 14px;font-size:.88rem;font-weight:700}.hn-tab.on{border-color:var(--primary);background:var(--primary-soft);color:var(--primary)}.hn-tab:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.hn-todos{flex-direction:column;gap:10px;display:flex}.hn-add{flex-wrap:wrap;gap:8px;display:flex}.hn-add-input,.hn-add-date{border:1px solid var(--border);background:var(--card);color:var(--text);font:inherit;border-radius:10px;padding:9px 12px}.hn-add-input{flex:220px;min-width:0}.hn-add-input:focus-visible,.hn-add-date:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px}.hn-todo-list{flex-direction:column;display:flex}.hn-todo{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:6px 12px;padding:10px 0;display:flex}.hn-todo:first-child{border-top:0}.hn-todo-check{cursor:pointer;flex:240px;align-items:flex-start;gap:10px;min-width:0;display:flex}.hn-todo-check input{width:18px;height:18px;accent-color:var(--primary);cursor:pointer;flex:none;margin-top:3px}.hn-todo-title{color:var(--text);overflow-wrap:anywhere;font-weight:600}.hn-todo.done .hn-todo-title{color:var(--text-muted);text-decoration:line-through}.hn-todo-side{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.hn-todo-detail{color:var(--text-muted);overflow-wrap:anywhere;-webkit-line-clamp:3;-webkit-box-orient:vertical;flex-basis:100%;margin-left:28px;font-size:.85rem;display:-webkit-box;overflow:hidden}.hn-todo-extra{flex-basis:100%;margin-left:28px}.hn-todo-done{border-top:1px solid var(--border);flex-direction:column;gap:6px;padding-top:6px;display:flex}@media (width<=600px){.hn-todo-detail,.hn-todo-extra{margin-left:0}.hn-add-date{flex:auto}}.hn-sch{flex-direction:column;gap:10px;display:flex}.hn-sch-hours{border:1px solid var(--border);background:var(--primary-soft);color:var(--text);border-radius:12px;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:8px 12px;display:flex}.hn-sch-ask{flex-wrap:wrap;gap:8px;display:flex}.hn-sch-form{flex-wrap:wrap;flex-basis:100%;align-items:center;gap:8px;display:flex}.hn-sch-form input[type=date],.hn-sch-form input[type=time],.hn-sch-form input[type=number]{border:1px solid var(--border);background:var(--card);color:var(--text);font:inherit;border-radius:10px;padding:7px 10px}.hn-sch-form input:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px}.hn-sch-min{width:84px}.hn-sch-days{flex-wrap:wrap;gap:6px;display:flex}.hn-sch-daypick{cursor:pointer;border:1px solid var(--border);background:var(--card);color:var(--text-muted);border-radius:999px;align-items:center;gap:4px;padding:4px 10px;font-size:.85rem;font-weight:700;display:inline-flex}.hn-sch-daypick.on{border-color:var(--primary);color:var(--primary)}.hn-sch-daypick input{accent-color:var(--primary)}.hn-sch-nav{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.hn-sch-nav-label{text-align:center;color:var(--text);flex:auto;font-weight:700}.hn-sch-list{flex-direction:column;display:flex}.hn-sch-item{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:6px 12px;padding:10px 0;display:flex}.hn-sch-list>.hn-sch-item:first-of-type{border-top:0}.hn-sch-item .hn-todo-check{flex-wrap:wrap}.hn-sch-item.done .hn-todo-title{color:var(--text-muted);text-decoration:line-through}.hn-sch-time{font-variant-numeric:tabular-nums;color:var(--primary);white-space:nowrap;font-weight:700}.hn-sch-item.done .hn-sch-time{color:var(--text-muted)}.hn-sch-note{border-color:var(--primary);color:var(--primary)}.hn-sch-tools{flex-wrap:wrap;flex-basis:100%;align-items:center;gap:6px;margin-left:28px;display:flex}.hn-sch-count{font-variant-numeric:tabular-nums;color:var(--primary);font-weight:800}.hn-sch-addrow{border-top:1px solid var(--border);padding-top:10px}.hn-sch-week{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.hn-sch-wday{border:1px solid var(--border);background:var(--card);border-radius:10px;flex-direction:column;gap:4px;min-width:0;padding:6px;display:flex}.hn-sch-wday.today{border-color:var(--primary)}.hn-sch-wday.off{opacity:.7}.hn-sch-dayhead{font:inherit;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;padding:0 0 4px;font-size:.8rem;font-weight:800}.hn-sch-mini{font:inherit;text-align:left;color:var(--text);background:var(--primary-soft);cursor:pointer;overflow-wrap:anywhere;border:0;border-radius:6px;padding:3px 5px;font-size:.78rem}.hn-sch-mini.done,.hn-sch-mitem.done{color:var(--text-muted);text-decoration:line-through}.hn-sch-empty{font-size:.8rem}.hn-sch-month{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.hn-sch-mhead{color:var(--text-muted);text-align:center;text-transform:uppercase;font-size:.72rem;font-weight:800}.hn-sch-mcell{border:1px solid var(--border);background:var(--card);min-width:0;min-height:76px;color:var(--text);font:inherit;text-align:left;cursor:pointer;border-radius:8px;flex-direction:column;align-items:stretch;gap:2px;padding:4px;display:flex}.hn-sch-mcell.out{opacity:.45}.hn-sch-mcell.today{border-color:var(--primary)}.hn-sch-mnum{font-size:.78rem;font-weight:800}.hn-sch-mitem{white-space:nowrap;text-overflow:ellipsis;font-size:.7rem;overflow:hidden}.hn-sch-more{color:var(--primary);font-size:.7rem;font-weight:700}.hn-sch-mcount{display:none}.hn-sch-mcell:focus-visible,.hn-sch-mini:focus-visible,.hn-sch-dayhead:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px}@media (width<=700px){.hn-sch-week{grid-template-columns:1fr}.hn-sch-tools{margin-left:0}.hn-sch-mcell{min-height:52px}.hn-sch-mitem,.hn-sch-more{display:none}.hn-sch-mcount{background:var(--primary-soft);color:var(--primary);border-radius:999px;align-self:flex-start;padding:0 6px;font-size:.7rem;font-weight:800;display:inline-block}}.card.hn-ans{border:1px solid var(--primary);background:var(--primary-soft);flex-direction:column;gap:10px;display:flex}.hn-ans-title{color:var(--primary);font-weight:700}.hn-ans-text{color:var(--text);white-space:pre-wrap;overflow-wrap:anywhere;margin:0;line-height:1.5}.hn-ans-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.hn-ans-row .hn-answer-input{flex:200px}.hn-ans-end{margin-top:2px}.hn-ans-box{border:1px solid var(--border);background:var(--card);color:var(--text);border-radius:10px;flex-direction:column;gap:8px;padding:10px 12px;display:flex}.hn-ans-name{color:var(--text);overflow-wrap:anywhere;font-weight:700}.hn-ans-facts{color:var(--text);gap:4px;margin:0;padding:0;font-size:.9rem;list-style:none;display:grid}.hn-ans-label{color:var(--text-muted)}.hn-ans-link{color:var(--primary);overflow-wrap:anywhere;font-size:.9rem}.hn-ans-link:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.hn-ans-pick{flex-direction:column;gap:2px;display:flex}.hn-ans-confirm{color:var(--text);flex-direction:column;gap:8px;font-size:.92rem;display:flex}.hn-rec{flex-direction:column;gap:8px;display:flex}.card.hn-rec-draft{border:1px solid var(--primary);background:var(--primary-soft)}.hn-rec-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px 12px;display:flex}.hn-rec-title{color:var(--text);overflow-wrap:anywhere;font-weight:700}.hn-rec-meta{color:var(--text-muted);font-size:.82rem}.hn-rec-text{color:var(--text);white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.hn-rec-off{opacity:.75}.hn-rec-why{color:var(--red);font-size:.85rem}.hn-rec-checks{color:var(--text);flex-wrap:wrap;gap:6px 14px;font-size:.88rem;display:flex}.hn-rec-checks label{cursor:pointer;align-items:center;gap:6px;display:inline-flex}.hn-rec-checks input:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}@media (width<=600px){.hn-ans-row .hn-answer-input{flex-basis:100%}}.hn-reports{flex-direction:column;gap:12px;display:flex}.hn-rep-bar{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.hn-rep-kinds{border-bottom:0;padding-bottom:0}.hn-rep-select{flex:220px}.card.hn-rep{flex-direction:column;gap:14px;display:flex}.hn-rep-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 12px;display:flex}.hn-rep-title{color:var(--text);overflow-wrap:anywhere;font-weight:800}.hn-rep-meta{color:var(--text-muted);font-size:.82rem}.hn-rep-ai{border:1px dashed var(--border);background:var(--surface-muted);color:var(--text-muted);border-radius:10px;padding:8px 12px;font-size:.86rem}.hn-rep-summary{color:var(--text);margin:0;line-height:1.5}.hn-rep-stats{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px;display:grid}.hn-rep-stat{border:1px solid var(--border);background:var(--surface-muted);border-radius:12px;flex-direction:column;gap:2px;padding:10px 12px;display:flex}.hn-rep-stat-warn{border-color:var(--red);background:var(--red-soft)}.hn-rep-num{color:var(--text);font-size:1.35rem;font-weight:800;line-height:1.1}.hn-rep-stat-warn .hn-rep-num{color:var(--red)}.hn-rep-label{color:var(--text-muted);font-size:.8rem;font-weight:700}.hn-rep-before{color:var(--text-muted);font-size:.75rem}.hn-rep-block{border-top:1px solid var(--border);flex-direction:column;gap:8px;padding-top:12px;display:flex}.hn-rep-h{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-size:.8rem;font-weight:800}.hn-rep-sub{color:var(--text-muted);overflow-wrap:anywhere;font-size:.88rem}.hn-rep-line{color:var(--text);overflow-wrap:anywhere;font-size:.9rem;line-height:1.5}.hn-rep-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.hn-rep-ol{padding-left:22px;list-style:decimal}.hn-rep-ol .hn-rep-item{display:list-item}.hn-rep-ol .hn-chip{margin-left:8px}.hn-rep-item{color:var(--text);flex-direction:column;gap:3px;display:flex}.hn-rep-item-top{justify-content:space-between;align-items:flex-start;gap:8px 12px;display:flex}.hn-rep-item-title{color:var(--text);overflow-wrap:anywhere;font-weight:600}.hn-rep-idea{border:1px solid var(--primary);background:var(--primary-soft);border-radius:12px;flex-direction:column;gap:6px;padding:10px 12px;display:flex}.hn-rep-idea-title{color:var(--text);overflow-wrap:anywhere;font-weight:700}.hn-rep-prompt{border:1px solid var(--border);background:var(--card);color:var(--text);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:10px;margin:0;padding:10px 12px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.8rem;line-height:1.45}.hn-rep-hidden{opacity:0;width:1px;height:1px;position:absolute;left:-9999px}@media (width<=600px){.hn-rep-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.hn-rep-item-top{flex-direction:column}.hn-rep-select{flex-basis:100%}}.si-card{margin-top:16px}.si-tabs{flex-wrap:wrap;gap:6px;margin:8px 0 12px;display:flex}.si-tabs .si-on{background:var(--primary-soft);color:var(--primary);font-weight:700}.si-tabs button:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.si-list{counter-reset:si;margin:0;padding:0;list-style:none}.si-row{border-top:1px solid var(--border);grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) auto auto auto;align-items:baseline;gap:10px;padding:8px 0;font-size:.875rem;display:grid}.si-row:first-child{border-top:none}.si-name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-weight:600;text-decoration:none;overflow:hidden}.si-name:hover{text-decoration:underline}.si-name:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.si-meta,.si-actions,.si-last,.si-graded{color:var(--text-muted);font-size:.8125rem}.si-actions,.si-err,.si-last{font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.si-err{color:var(--text);font-weight:600}.si-err-high{color:var(--red)}.si-empty,.si-note{color:var(--text-muted);margin:8px 0 0;font-size:.8125rem}@media (width<=640px){.si-row{grid-template-columns:minmax(0,1fr) auto;row-gap:2px}.si-meta,.si-last{grid-column:1/-1}}.spg-page{max-width:900px}.spg-intro{margin-bottom:14px;font-size:.9375rem}.spg-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:16px;font-size:.875rem;display:flex}.spg-toolbar .reveal-btn{margin-top:0}.spg-week{margin-bottom:16px}.spg-week-head{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px;display:flex}.spg-week-title{margin-bottom:0}.spg-now{background:var(--primary-soft);color:var(--primary);border-radius:999px;padding:2px 10px;font-size:.75rem;font-weight:700}.spg-week-count{color:var(--text-muted);margin-left:auto;font-size:.8125rem;font-weight:700}.spg-rows{flex-direction:column;gap:8px;display:flex}.spg-row{border:1px solid var(--border);background:var(--surface-muted);width:100%;color:var(--text);font:inherit;text-align:left;cursor:pointer;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;transition:border-color .16s;display:flex}.spg-row:hover{border-color:var(--primary)}.spg-row.open{border-color:var(--primary);border-bottom-right-radius:0;border-bottom-left-radius:0}.spg-main{flex-direction:column;gap:3px;min-width:0;display:flex}.spg-line1{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.spg-level{background:var(--card);color:var(--text-muted);border:1px solid var(--border);border-radius:999px;padding:2px 9px;font-size:.75rem;font-weight:700}.spg-weak{font-weight:700}.spg-line2{color:var(--text-muted);overflow-wrap:anywhere;font-size:.8125rem}.spg-line2 strong{color:var(--text);font-weight:600}.spg-counts{text-align:right;flex-direction:column;flex-shrink:0;align-items:flex-end;gap:2px;display:flex}.spg-students{color:var(--primary);font-variant-numeric:tabular-nums;font-weight:800}.spg-days{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:.75rem}.spg-people{border:1px solid var(--primary);background:var(--card);border-top:0;border-radius:0 0 12px 12px;margin:0;padding:8px 14px;list-style:none}.spg-person{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;gap:12px;padding:7px 0;font-size:.875rem;display:flex}.spg-person:last-child{border-bottom:0}.spg-name{overflow-wrap:anywhere;font-weight:600}.spg-dates{color:var(--text-muted);font-size:.8125rem}.spg-line3{color:var(--primary);overflow-wrap:anywhere;font-size:.8125rem;font-weight:600}.spg-low{margin-bottom:16px}.spg-low-title{margin-bottom:4px}.spg-low-sub{margin:0 0 12px;font-size:.8125rem}.spg-low-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.spg-low-item{border:1px solid var(--border);background:var(--surface-muted);border-radius:12px;align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.spg-low-item.low{border-color:var(--amber);background:var(--amber-soft)}.spg-low-item.info{border-color:var(--primary);background:var(--primary-soft)}.spg-low-tag{text-align:center;background:var(--card);min-width:48px;color:var(--text-muted);border-radius:999px;flex:none;padding:2px 8px;font-size:.75rem;font-weight:800}.spg-low-item.low .spg-low-tag{color:var(--amber)}.spg-low-item.info .spg-low-tag{color:var(--primary)}.spg-low-body{flex-direction:column;gap:2px;min-width:0;display:flex}.spg-low-head{color:var(--text);overflow-wrap:anywhere;font-weight:700}.spg-low-text{color:var(--text);overflow-wrap:anywhere;font-size:.875rem}.spg-low-item.ok .spg-low-text{color:var(--text-muted)}@media (width<=600px){.spg-row{padding:10px 12px}.spg-week-count{flex-basis:100%;margin-left:0}}.l5-page{flex-direction:column;gap:16px;max-width:1080px;display:flex}.l5-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.l5-h1{margin:0 0 4px}.l5-muted{color:var(--text-muted);margin:0;font-size:.9rem}.l5-message{background:var(--amber-soft);color:var(--amber);border-radius:10px;padding:8px 12px;font-size:.9rem}.l5-locked{flex-direction:column;align-items:flex-start;gap:10px;display:flex}.l5-card-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:10px;display:flex}.l5-label{color:var(--text-muted);margin:6px 0 4px;font-size:.8rem;font-weight:700;display:block}.l5-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:8px;display:flex}.l5-stats{grid-template-columns:2fr 1fr 1fr 1fr;gap:12px;display:grid}.l5-stat{flex-direction:column;gap:4px;display:flex}.l5-stat-label{letter-spacing:.04em;text-transform:uppercase;color:var(--primary);font-size:.75rem;font-weight:800}.l5-stat-value{color:var(--text);font-size:1.5rem;font-weight:800}.l5-of{color:var(--text-muted);font-size:.95rem;font-weight:600}.l5-stat-note{color:var(--text-muted);font-size:.8rem}.l5-bar{background:var(--surface-muted);border-radius:999px;height:8px;overflow:hidden}.l5-bar span{background:var(--primary);border-radius:999px;height:100%;display:block}.l5-target{color:var(--text);font-size:1rem}.l5-hours{flex-direction:column;align-items:flex-start;gap:10px;display:flex}.l5-hour-options{flex-wrap:wrap;gap:8px;display:flex}.l5-hour{cursor:pointer;border:1px solid var(--border);background:var(--surface-muted);min-width:64px;color:var(--text);border-radius:999px;padding:10px 14px;font-weight:700}.l5-hour.on{border-color:var(--primary);background:var(--primary-soft);color:var(--primary)}.l5-hour:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.l5-problem-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.l5-problem{border:1px solid var(--border);background:var(--surface-muted);border-radius:12px;padding:12px}.l5-problem.first{border-color:var(--primary)}.l5-problem-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.l5-problem-name{color:var(--text);font-weight:800}.l5-chip{background:var(--primary-soft);color:var(--primary);border-radius:999px;padding:2px 10px;font-size:.75rem;font-weight:800;display:inline-block}.l5-chip.working{background:var(--amber-soft);color:var(--amber)}.l5-chip.fixed{background:var(--green-soft);color:var(--green)}.l5-chip.reopened{background:var(--red-soft);color:var(--red)}.l5-examples,.l5-mistakes,.l5-changes{flex-direction:column;gap:4px;margin:8px 0 0;padding:0;font-size:.9rem;list-style:none;display:flex}.l5-changes{padding-left:20px;list-style:decimal}.l5-wrong{color:var(--red);text-decoration:line-through;text-decoration-thickness:1px}.l5-right{color:var(--green);font-weight:700}.l5-arrow{color:var(--text-muted);margin:0 6px}.l5-why{color:var(--text-muted);font-size:.8rem}.l5-fixed{color:var(--green);margin:10px 0 0;font-size:.85rem}.l5-mock-note{background:var(--primary-soft);color:var(--primary);border-radius:10px;margin:0 0 10px;padding:8px 12px;font-size:.9rem;font-weight:700}.l5-blocks{flex-direction:column;gap:8px;margin:0 0 10px;padding:0;list-style:none;display:flex}.l5-block{border:1px solid var(--border);background:var(--surface-muted);border-radius:12px;align-items:center;gap:12px;padding:12px;display:flex}.l5-block.break{background:0 0;border-style:dashed}.l5-block.mock{border-color:var(--primary)}.l5-block.done{opacity:.75}.l5-block-mins{color:var(--text-muted);flex:0 0 64px;font-size:.8rem;font-weight:800}.l5-block-body{flex:1;min-width:0}.l5-block-title{color:var(--text);font-weight:700}.l5-start{flex:none;text-decoration:none}.l5-done-mark{background:var(--green-soft);color:var(--green);border-radius:999px;flex:none;padding:4px 12px;font-size:.8rem;font-weight:800}.l5-runner{flex-direction:column;gap:14px;display:flex}.l5-runner-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.l5-focus-note{color:var(--primary);margin:0;font-size:.9rem;font-weight:700}.l5-stage{text-align:center;border:1px solid var(--border);border-radius:var(--radius);background:var(--card);flex-direction:column;align-items:center;gap:12px;padding:20px;display:flex}.l5-stage.left{text-align:left;align-items:stretch}.l5-countdown{color:var(--primary);font-size:3rem;font-weight:800}.l5-question{color:var(--text);font-size:1.15rem;font-weight:700;line-height:1.45}.l5-question.small{font-size:.95rem;font-weight:600}.l5-timer{color:var(--text);align-items:center;gap:8px;font-weight:800;display:flex}.l5-rec-dot{background:var(--red);border-radius:50%;width:10px;height:10px}.l5-go{align-self:flex-start}.l5-result{border:1px solid var(--border);border-radius:var(--radius);background:var(--card);flex-direction:column;gap:8px;padding:16px;display:flex}.l5-result-head{align-items:baseline;gap:12px;display:flex}.l5-score{color:var(--text);font-size:1.8rem;font-weight:800}.l5-score span{color:var(--text-muted);font-size:1rem}.l5-clb{background:var(--primary-soft);color:var(--primary);border-radius:999px;padding:2px 10px;font-weight:800}.l5-subs{flex-wrap:wrap;gap:6px;display:flex}.l5-sub{background:var(--surface-muted);color:var(--text);border-radius:999px;padding:3px 10px;font-size:.8rem;font-weight:700}.l5-suggestions{color:var(--text);margin:4px 0 0;padding-left:20px;font-size:.9rem}.l5-v7{border-top:1px solid var(--border);flex-direction:column;gap:4px;padding-top:8px;display:flex}.l5-text{color:var(--text);margin:0;line-height:1.5}.l5-better-text{color:var(--green)}.l5-notes{resize:vertical;box-sizing:border-box;width:100%;min-height:120px}.l5-said{color:var(--red);font-size:1.1rem;font-weight:700}.l5-check{border-radius:10px;padding:8px 12px;font-weight:700}.l5-check.ok{background:var(--green-soft);color:var(--green)}.l5-check.no{background:var(--red-soft);color:var(--red)}.l5-mock-summary{flex-direction:column;align-items:flex-start;gap:12px;display:flex}.l5-mock-item{box-sizing:border-box;border:1px solid var(--border);background:var(--card);border-radius:12px;width:100%;padding:12px}.l5-mock-q{color:var(--text);font-weight:700}.l5-behind{border-color:var(--red);background:var(--red-soft)}.l5-behind .block-title,.l5-behind li{color:var(--red)}.l5-behind ul{margin:6px 0 0;padding-left:18px}.l5-admin-card{flex-direction:column;gap:10px;display:flex}.l5-table-wrap{overflow-x:auto}.l5-table{border-collapse:collapse;width:100%;font-size:.875rem}.l5-table th{text-align:left;color:var(--text-muted);white-space:nowrap;padding:8px;font-weight:700}.l5-table td{border-top:1px solid var(--border);vertical-align:top;color:var(--text);padding:8px}.l5-table tr.behind td{background:var(--red-soft)}.l5-switch-other select{max-width:360px}.l5-form{flex-direction:column;align-items:flex-start;gap:6px;max-width:640px;display:flex}.l5-form select{max-width:360px}.l5-form-row{flex-wrap:wrap;gap:10px;display:flex}.l5-form-row input,.l5-form-row select{width:140px}.l5-results{color:var(--text);margin:8px 0 0;padding-left:18px;font-size:.875rem}@media (width<=760px){.l5-stats{grid-template-columns:1fr 1fr}.l5-stat-wide{grid-column:1/-1}}@media (width<=600px){.l5-block{flex-wrap:wrap;gap:6px 12px}.l5-block-mins{flex:0 0 100%}.l5-block-body{flex:100%}.l5-start,.l5-done-mark{text-align:center;box-sizing:border-box;width:100%}.l5-actions .sub-btn,.l5-actions .reveal-btn{flex:auto}}.l5-t2-theme{letter-spacing:.04em;text-transform:uppercase;color:var(--primary);font-size:.75rem;font-weight:800}.l5-t2-line{color:var(--text);font-size:.95rem;line-height:1.45}.l5-t2-line .l5-label{margin:6px 0 2px}.l5-t2-chat{flex-direction:column;gap:8px;max-height:420px;padding:4px 2px;display:flex;overflow-y:auto}.l5-t2-turn{overflow-wrap:anywhere;border-radius:14px;flex-direction:column;gap:2px;max-width:85%;padding:8px 12px;font-size:.95rem;line-height:1.4;display:flex}.l5-t2-turn.me{background:var(--primary-soft);color:var(--text);align-self:flex-end}.l5-t2-turn.them{background:var(--surface-muted);color:var(--text);align-self:flex-start}.l5-t2-who{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.7rem;font-weight:800}.l5-t2-text{white-space:pre-wrap}.l5-t2-hear{border:1px solid var(--border);background:var(--card);color:var(--text-muted);cursor:pointer;border-radius:999px;align-self:flex-start;margin-top:2px;padding:2px 10px;font-size:.75rem;font-weight:700}.l5-t2-hear:hover{color:var(--text)}.tm-page{max-width:980px;margin:0 auto}.tm-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.tm-title{color:var(--text);margin:0;font-size:1.5rem}.tm-sub{color:var(--text-muted);margin:4px 0 0;font-size:.875rem;line-height:1.5}.tm-back{color:var(--primary);margin-bottom:8px;font-size:.85rem;font-weight:600;text-decoration:none;display:inline-block}.tm-back:hover{text-decoration:underline}.tm-head-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.tm-btn{border:1px solid var(--border);background:var(--card);color:var(--text);cursor:pointer;border-radius:10px;align-items:center;gap:6px;padding:8px 14px;font-size:.85rem;font-weight:600;text-decoration:none;display:inline-flex}.tm-btn:hover{border-color:var(--primary);color:var(--primary)}.tm-btn.is-on{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}.tm-btn:disabled{opacity:.55;cursor:default}.tm-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr));gap:12px;display:grid}.tm-area{background:var(--card);border:1px solid var(--border);color:var(--text);box-shadow:var(--shadow);border-radius:14px;flex-direction:column;gap:4px;padding:16px;text-decoration:none;display:flex}.tm-area:hover{border-color:var(--primary)}.tm-area strong{color:var(--primary);font-size:1rem}.tm-area span{color:var(--text-muted);font-size:.82rem;line-height:1.45}.tm-area-links{flex-wrap:wrap;gap:8px;display:flex}.tm-denied{text-align:center;padding:32px 20px}.tm-denied strong{color:var(--text);margin-bottom:6px;font-size:1.05rem;display:block}.tm-muted{color:var(--text-muted);font-size:.875rem;line-height:1.5}.tm-error{color:var(--red);font-size:.875rem}.tm-nav{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px;display:flex}.tm-nav select{border:1px solid var(--input-border);background:var(--input-bg);color:var(--text);border-radius:10px;max-width:100%;padding:7px 10px;font-size:1rem}.tm-nav-label{color:var(--text-muted);font-size:.8rem;font-weight:700}.tm-day-head{margin-bottom:12px}.tm-day-title{color:var(--text);flex-wrap:wrap;align-items:center;gap:8px;font-size:1.2rem;font-weight:800;display:flex}.tm-pill{background:var(--surface-muted);color:var(--text-muted);border-radius:999px;padding:2px 8px;font-size:.7rem;font-weight:700}.tm-pill-primary{background:var(--primary-soft);color:var(--primary)}.tm-pill-amber{background:var(--amber-soft);color:var(--amber)}.tm-pill-green{background:var(--green-soft);color:var(--green)}.tm-item{background:var(--card);border:1px solid var(--border);border-radius:14px;margin-bottom:12px;padding:16px}.tm-item-type{letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted);margin-bottom:4px;font-size:.7rem;font-weight:800}.tm-item-title{color:var(--text);flex-wrap:wrap;align-items:center;gap:8px;font-size:1rem;font-weight:700;display:flex}.tm-item-text{white-space:pre-wrap;color:var(--text);margin-top:6px;font-size:.92rem;line-height:1.6}.tm-item-fr{color:var(--primary);margin-top:6px;font-size:.95rem;font-weight:600;line-height:1.6}.tm-links{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.tm-image{object-fit:contain;border-radius:12px;max-width:100%;max-height:420px;margin-top:10px;display:block}.tm-meta{color:var(--text-muted);margin-top:8px;font-size:.8rem}.tm-group{margin-top:12px}.tm-group-title{color:var(--primary);margin-bottom:4px;font-size:.8rem;font-weight:800}.tm-list{margin:0;padding:0;list-style:none}.tm-row{border-bottom:1px solid var(--border);grid-template-columns:2.2em minmax(0,1fr);gap:4px 8px;padding:7px 0;font-size:.92rem;line-height:1.5;display:grid}.tm-row:last-child{border-bottom:0}.tm-num{color:var(--text-muted);font-variant-numeric:tabular-nums}.tm-q{color:var(--text);overflow-wrap:anywhere}.tm-gloss{color:var(--text-muted);font-size:.8rem;display:block}.tm-a{color:var(--green);overflow-wrap:anywhere;font-weight:700;display:block}.tm-gurmukhi{color:var(--text-muted);font-size:.85rem;display:block}.tm-verb{grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr));gap:10px;margin-top:10px;display:grid}.tm-verb-tense{border:1px solid var(--border);background:var(--surface-muted);border-radius:10px;padding:8px 10px}.tm-verb-tense strong{color:var(--text);margin-bottom:4px;font-size:.8rem;display:block}.tm-verb-row{justify-content:space-between;gap:8px;font-size:.85rem;display:flex}.tm-verb-row span:first-child{color:var(--text-muted)}.tm-block-title{align-items:center;gap:8px;display:flex}body.tm-present .sidebar,body.tm-present .topbar,body.tm-present .bottom-nav{display:none!important}body.tm-present .main{margin-left:0}body.tm-present .content{max-width:none;padding:20px 28px}body.tm-present .tm-page{max-width:1200px;font-size:1.15rem}body.tm-present .tm-item-text,body.tm-present .tm-row,body.tm-present .tm-item-fr{font-size:1.2rem}body.tm-present .tm-item-title{font-size:1.3rem}body.tm-present .tm-day-title{font-size:1.6rem}.bbl-row{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:10px 0;display:flex}.bbl-row:last-child{border-bottom:0}.bbl-label{color:var(--text);font-size:.92rem;font-weight:700}.bbl-dates{color:var(--text-muted);font-size:.8rem}.bbl-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.bbl-upcoming{opacity:.85}.bbl-upcoming .bbl-label{color:var(--text-muted)}@media (width<=600px){.tm-item{padding:12px}.tm-title{font-size:1.25rem}}.tm-sr{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.bbl-actions a.sub-btn{align-items:center;text-decoration:none;display:inline-flex}.nm-app{--nm-bg:#f8f6ef;--nm-card:#fffdf8;--nm-ink:#203629;--nm-muted:#6d746a;--nm-sage:#e8ecdc;--nm-hero:#dce3c7;--nm-green:#62844d;--nm-green-dark:#4d6a3e;--nm-neutral:#e7e4dc;--nm-line:#e9e5db;--nm-sun:#f4e2b1;--nm-error:#904533;--nm-shadow:0 12px 45px #282a1910;color:var(--nm-ink);background:var(--nm-bg);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;isolation:isolate;min-height:100dvh;font-family:Arial,sans-serif;font-size:16px;line-height:1.45}.nm-app.nm-dark{--nm-bg:#17221d;--nm-card:#202f27;--nm-ink:#edf1e5;--nm-muted:#b7c0ae;--nm-sage:#2f3e30;--nm-hero:#3b4a32;--nm-green:#789b61;--nm-green-dark:#a8c38e;--nm-neutral:#39423a;--nm-line:#3b473c;--nm-sun:#625233;--nm-error:#e2ac96;--nm-shadow:0 12px 45px #0003;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.nm-app *{box-sizing:border-box}.nm-app button{font:inherit;cursor:pointer;color:inherit;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:0;border-radius:14px;justify-content:center;align-items:center;gap:8px;display:inline-flex}.nm-app button:disabled{cursor:default;opacity:.5}.nm-app button:focus-visible,.nm-app summary:focus-visible{outline:3px solid var(--nm-green);outline-offset:4px}.nm-app svg{vertical-align:middle;flex-shrink:0}.nm-app h1,.nm-app h2,.nm-app h3,.nm-app p{margin:0}.nm-app .nm-screen{width:100%;max-width:780px;margin:0 auto;padding:25px 24px 16px;position:relative}.nm-header{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.nm-wordmark{align-items:center;gap:14px;display:flex}.nm-wordmark>svg{color:var(--nm-green)}.nm-wordmark h1{letter-spacing:2.5px;color:var(--nm-ink);font-size:28px;font-weight:750;line-height:1.1}.nm-wordmark span{color:var(--nm-muted);letter-spacing:.3px;font-size:12px}.nm-app .nm-gear{background:var(--nm-sage);width:44px;height:44px;color:var(--nm-green-dark);border-radius:50%}.nm-date-chip{background:var(--nm-sage);max-width:100%;color:var(--nm-ink);text-align:center;border-radius:99px;margin:0 auto 16px;padding:7px 19px;font-size:14px;display:table}.nm-meal-heading{background:var(--nm-sage);border-radius:23px 23px 0 0;justify-content:space-between;align-items:center;gap:12px;padding:18px 22px 14px;display:flex}.nm-meal-heading h2{font-size:27px;font-weight:750;line-height:1.2}.nm-meal-heading p{color:var(--nm-muted);flex-wrap:wrap;align-items:center;gap:7px;margin-top:8px;font-size:17px;display:flex}.nm-sun{background:var(--nm-sun);width:66px;height:66px;color:var(--nm-green-dark);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.nm-next-morning{font-size:11px;display:block}.nm-hero{background:linear-gradient(110deg,var(--nm-hero),var(--nm-sage));border-radius:0 0 22px 22px;grid-template-columns:minmax(0,1fr) 185px;align-items:center;min-height:118px;margin-bottom:12px;padding:12px 12px 10px 22px;display:grid;overflow:hidden}.nm-hero h3{letter-spacing:-.3px;z-index:1;font-size:25px;font-weight:750;line-height:1.3}.nm-hero-art{align-self:end;width:185px;height:137px;margin:0 -8px -10px 0}.nm-hero-art svg{width:100%;height:100%;display:block}.nm-countdown{color:var(--nm-muted);text-align:right;padding:0 6px 6px;font-size:12px}.nm-table-wrap{background:var(--nm-card);border-radius:20px;padding:6px 18px;overflow:hidden}.nm-ingredients{border-collapse:collapse;width:100%;color:var(--nm-ink);table-layout:fixed;font-size:15px;line-height:1.35}.nm-ingredients th{text-align:left;border-bottom:1px solid var(--nm-line);color:var(--nm-muted);padding:9px 0;font-size:14px;font-weight:500}.nm-ingredients th:first-child{color:var(--nm-ink);width:59%;font-size:20px;font-weight:700}.nm-ingredients th:nth-child(2){text-align:center;width:25%}.nm-ingredients th:nth-child(3){text-align:right;width:16%}.nm-ingredients td{border-bottom:1px solid var(--nm-line);vertical-align:middle;overflow-wrap:anywhere;padding:7px 0}.nm-ingredients tr:last-child td{border-bottom:0}.nm-ingredients td:nth-child(2){text-align:center;font-variant-numeric:tabular-nums;padding-left:5px;padding-right:4px}.nm-ingredients td:nth-child(3){text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;font-size:14px}.nm-ingredient{align-items:center;gap:10px;display:flex}.nm-thumb{justify-content:center;align-items:center;width:48px;min-width:48px;height:47px;display:inline-flex}.nm-thumb svg{width:61px;max-width:none;height:52px}.nm-ingredient>span:last-child{flex:1}.nm-total{background:var(--nm-sage);border-radius:18px;align-items:center;gap:13px;margin-top:11px;padding:13px 20px;font-size:24px;display:flex}.nm-total svg{color:var(--nm-green)}.nm-actions{grid-template-columns:1fr 1fr;gap:14px;margin-top:17px;display:grid}.nm-app .nm-actions button{border-radius:23px;gap:17px;min-height:74px;font-size:24px;font-weight:700}.nm-app .nm-eaten{background:var(--nm-green);color:var(--nm-card)}.nm-app .nm-eaten:not(:disabled):active{filter:brightness(.92)}.nm-app .nm-skipped{background:var(--nm-neutral);color:var(--nm-muted)}.nm-actions button>span{background:var(--nm-card);width:39px;height:39px;color:var(--nm-green-dark);border-radius:50%;justify-content:center;align-items:center;display:flex}.nm-actions .nm-skipped>span{background:var(--nm-muted);color:var(--nm-card)}.nm-record-status{text-align:center;color:var(--nm-muted);min-height:24px;padding-top:5px;font-size:12px}.nm-record-status button{font-size:12px;text-decoration:underline}.nm-progress{justify-content:space-between;align-items:center;gap:12px;margin:13px 4px;display:flex}.nm-progress>button:first-child{color:var(--nm-muted);text-align:left;padding:3px 0;font-size:15px}.nm-dots{gap:12px;display:flex}.nm-app .nm-dot{background:var(--nm-neutral);width:17px;height:17px;color:var(--nm-card);border-radius:50%;min-width:17px;padding:0}.nm-app .nm-dot.nm-eaten{background:var(--nm-green)}.nm-app .nm-dot.nm-skipped{background:var(--nm-muted)}.nm-dot.nm-current{outline:2px solid var(--nm-green);outline-offset:4px}.nm-app .nm-today-icon{color:var(--nm-green-dark);padding:4px}.nm-tomorrow{background:var(--nm-sage);color:var(--nm-muted);text-align:center;border-radius:15px;justify-content:center;align-items:center;gap:10px;padding:11px 12px;font-size:13px;display:flex}.nm-note{color:var(--nm-muted);padding:11px 5px 0;font-size:12px}.nm-note summary{cursor:pointer}.nm-note p{padding-top:8px}.nm-sync-status{color:var(--nm-muted);align-items:center;gap:6px;margin-top:14px;font-size:11px;display:flex}.nm-sync-status button{margin-left:auto;font-size:12px;text-decoration:underline}.nm-notice,.nm-error,.nm-info{background:var(--nm-sage);border-radius:12px;margin-bottom:10px;padding:10px 13px;font-size:13px}.nm-notice{align-items:center;gap:10px;margin-top:10px;display:flex}.nm-notice button:last-child{margin-left:auto}.nm-notice button{font-size:12px;text-decoration:underline}.nm-error{color:var(--nm-error);border:1px solid;margin-top:10px}.nm-error button{text-decoration:underline}.nm-info{text-align:center}.nm-loading{flex-direction:column;justify-content:center;align-items:center;gap:14px;min-height:100vh;display:flex}.nm-empty{text-align:center;flex-direction:column;align-items:center;gap:16px;padding:55px 20px;display:flex}.nm-brand{color:var(--nm-green)}.nm-empty h1{font-size:30px}.nm-empty h2{font-size:28px}.nm-app .nm-primary{background:var(--nm-green);color:var(--nm-card);padding:12px 18px}.nm-app .nm-secondary{background:var(--nm-neutral);padding:12px 18px}.nm-backdrop{z-index:9999;background:color-mix(in srgb,var(--nm-ink) 65%,transparent);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.nm-modal{background:var(--nm-bg);box-shadow:var(--nm-shadow);border-radius:25px;flex-direction:column;width:min(690px,100%);max-height:90dvh;display:flex;overflow:hidden}.nm-modal>header{border-bottom:1px solid var(--nm-line);justify-content:space-between;align-items:center;padding:19px 22px;display:flex}.nm-modal h2{font-size:22px}.nm-modal>header button{width:40px;height:40px}.nm-modal-body{overscroll-behavior:contain;padding:20px;overflow:auto}.nm-modal-body>p{margin:0 0 16px;font-size:14px}.nm-modal-body .nm-fine{font-size:12px}.nm-fine{color:var(--nm-muted)}.nm-app .nm-setting{text-align:left;background:var(--nm-card);justify-content:flex-start;gap:15px;width:100%;min-height:67px;margin-bottom:9px;padding:14px 12px;display:flex}.nm-setting>span{flex:1}.nm-setting small{color:var(--nm-muted);margin-top:3px;font-size:12px;display:block}.nm-signout{width:100%}.nm-targets{grid-template-columns:repeat(4,1fr);gap:8px;margin:16px 0;display:grid}.nm-targets span{background:var(--nm-card);text-align:center;border-radius:12px;padding:10px;font-size:11px}.nm-targets strong{color:var(--nm-green);font-size:17px;display:block}.nm-day-nav{text-align:center;justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.nm-day-nav small{color:var(--nm-muted);font-size:12px;display:block}.nm-day-nav>button{background:var(--nm-card);width:38px;height:38px}.nm-day-nav>button:first-child svg{transform:rotate(180deg)}.nm-app .nm-day-row{background:var(--nm-card);text-align:left;border-radius:17px;justify-content:flex-start;gap:10px;width:100%;margin-bottom:9px;padding:11px 10px;display:flex}.nm-day-row>span:nth-child(2){flex:1;min-width:0}.nm-day-row strong{font-size:14px;display:block}.nm-day-row small{color:var(--nm-muted);margin-top:3px;font-size:12px;line-height:1.4;display:block}.nm-list-art{flex-shrink:0;width:63px}.nm-list-art svg{width:100%;height:58px}.nm-status{background:var(--nm-neutral);width:29px;height:29px;color:var(--nm-muted);border-radius:50%;justify-content:center;align-items:center;display:flex}.nm-status.nm-eaten{background:var(--nm-green);color:var(--nm-card)}.nm-summary{font-size:14px;margin-top:12px!important}@media (width<=620px){.nm-app .nm-screen{padding:18px 17px 12px}.nm-wordmark h1{font-size:24px}.nm-header{margin-bottom:11px}.nm-date-chip{margin-bottom:12px;font-size:12px}.nm-meal-heading{padding:15px 18px 12px}.nm-meal-heading h2{font-size:24px}.nm-meal-heading p{font-size:15px}.nm-sun{width:55px;height:55px}.nm-hero{grid-template-columns:minmax(0,1fr) 152px;min-height:104px;padding-left:18px}.nm-hero h3{font-size:22px}.nm-hero-art{width:160px;height:125px}.nm-table-wrap{padding:5px 12px}.nm-ingredients{font-size:13.5px}.nm-ingredients td{padding:5px 0}.nm-ingredients th:first-child{width:57%;font-size:18px}.nm-ingredients th:nth-child(2){width:27%}.nm-ingredients th,.nm-ingredients td:nth-child(3){font-size:12px}.nm-thumb{width:41px;min-width:41px;height:44px}.nm-thumb svg{width:54px;height:48px}.nm-ingredient{gap:7px}.nm-total{padding:11px 17px;font-size:22px}.nm-app .nm-actions button{min-height:66px;font-size:22px}.nm-actions{margin-top:13px}.nm-progress{margin:11px 3px}.nm-dots{gap:10px}.nm-tomorrow{font-size:12px}.nm-note{padding-top:7px}}@media (width<=420px){.nm-app .nm-screen{padding:15px 12px}.nm-wordmark h1{font-size:22px}.nm-wordmark{gap:9px}.nm-meal-heading h2{font-size:21px}.nm-hero{grid-template-columns:minmax(0,1fr) 112px}.nm-hero h3{font-size:19px}.nm-hero-art{width:128px;height:113px}.nm-meal-heading p{font-size:13px}.nm-sun{width:45px;height:45px}.nm-sun svg{width:28px}.nm-ingredients{font-size:12px}.nm-ingredients td:nth-child(3){font-size:11px}.nm-thumb{width:30px;min-width:30px;height:40px}.nm-thumb svg{width:42px;height:40px}.nm-ingredient{gap:4px}.nm-table-wrap{padding:6px 9px}.nm-ingredients th:first-child{width:55%;font-size:17px}.nm-ingredients th:nth-child(2){width:28%}.nm-ingredients th:nth-child(3){width:17%}.nm-ingredients th{font-size:11px}.nm-app .nm-actions button{gap:10px;min-height:61px;font-size:19px}.nm-actions button>span{width:31px;height:31px}.nm-progress>button:first-child{font-size:12px}.nm-dots{gap:8px}.nm-app .nm-dot{width:14px;min-width:14px;height:14px}.nm-total{font-size:21px}.nm-targets{grid-template-columns:1fr 1fr}.nm-backdrop{padding:10px}.nm-modal-body{padding:14px}}@media (width>=850px) and (orientation:landscape){.nm-app .nm-screen{max-width:1130px}.nm-main-grid{grid-template-columns:37% minmax(0,1fr);align-items:start;gap:18px;display:grid}.nm-hero{flex-direction:column;align-items:stretch;min-height:320px;padding:20px;display:flex}.nm-hero-art{align-self:center;width:240px;height:200px;margin:10px 0 0}.nm-hero h3{font-size:28px}.nm-meal-heading h2{font-size:25px}.nm-meal-heading{padding:19px}.nm-actions,.nm-progress,.nm-tomorrow{max-width:750px;margin-left:auto;margin-right:auto}}@media (prefers-reduced-motion:no-preference){.nm-actions button{transition:filter .15s,transform .15s}.nm-actions button:not(:disabled):active{transform:scale(.98)}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f5f6fc;--card:#fff;--surface-muted:#edeff7;--input-bg:#fafbfe;--primary:#6446d7;--primary-hover:#5235be;--primary-soft:#eee9fc;--on-primary:#fff;--text:#25243d;--text-muted:#626b82;--muted:var(--text-muted);--muted-text:var(--text-muted);--border:#dfe3ef;--input-border:#8791ab;--green:#177547;--green-soft:#e5f4ec;--red:#ba3348;--red-soft:#fceaef;--amber:#916000;--amber-soft:#fff2d7;--l1-article:#b4236a;--on-status:#fff;--on-medal:#231b12;--nav-bg:#231e3d;--nav-text:#d0cbe4;--nav-muted:#aca5c7;--nav-hover:#35304e;--nav-active:#fff;--nav-active-text:#5033b3;--feature-bg:#30224f;--feature-text:#fff;--feature-muted:#d4c9ec;--feature-track:#5b4b7b;--feature-fill:#c6b0ff;--chart-secondary:#9a8bdb;--focus-ring:#6446d7;--radius:18px;--shadow:0 3px 14px #201c3f0a;--shadow-raised:0 10px 30px #201c3f17;--primary-shadow:0 4px 12px #6446d729;--sidebar-width:248px}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{width:100%;min-height:100vh;margin:0;padding:0}#root{max-width:none;text-align:initial;display:block}body{-webkit-font-smoothing:antialiased;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:1rem;line-height:1.55}html{scroll-padding-top:96px}h1,h2,h3,h4{letter-spacing:-.035em;line-height:1.25}h1{font-size:clamp(1.75rem,3vw,2.25rem);font-weight:750}h2{font-size:clamp(1.375rem,2.2vw,1.75rem)}a{color:var(--primary);text-underline-offset:3px}:where(button,input,select,textarea){font:inherit;color:inherit}:where(input,select,textarea){background:var(--input-bg);min-width:0}:where(button,a,input,select,textarea){-webkit-tap-highlight-color:transparent}:where(button){line-height:1.4}button:disabled{cursor:not-allowed}input::placeholder,textarea::placeholder{color:var(--text-muted);opacity:1}input[type=checkbox],input[type=radio]{accent-color:var(--primary)}img,video,canvas,audio{max-width:100%}table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}th{color:var(--text-muted);font-size:.8125rem;font-weight:600}td{font-size:.875rem}:is(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}::selection{background:var(--primary-soft);color:var(--primary)}.portal-icon{vertical-align:middle;flex-shrink:0}.muted{color:var(--text-muted)}.skip-link{z-index:300;background:var(--card);color:var(--primary);border-radius:10px;padding:12px 18px;font-weight:650;position:fixed;top:-100px;left:16px}.skip-link:focus{top:12px}.app-shell{min-height:100vh;display:flex}.sidebar{width:var(--sidebar-width);background:var(--nav-bg);color:var(--nav-text);z-index:30;flex-direction:column;padding:28px 16px 18px;display:flex;position:fixed;inset:0 auto 0 0;overflow-y:auto}.logo{letter-spacing:-.02em;color:var(--text);align-items:center;gap:12px;font-size:1rem;font-weight:750;display:flex}.logo-badge{background:var(--primary);width:42px;height:42px;color:var(--on-primary);letter-spacing:-.06em;border-radius:13px;flex-shrink:0;place-items:center;font-size:1.125rem;display:grid}.nav-section{text-transform:uppercase;letter-spacing:.12em;color:var(--nav-muted);margin:28px 14px 12px;font-size:.75rem;font-weight:600}.nav-item{min-height:46px;color:var(--nav-text);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:11px;align-items:center;gap:12px;margin-bottom:5px;padding:11px 14px;font-size:.875rem;font-weight:500;text-decoration:none;transition:background .16s,color .16s;display:flex}.nav-item:hover{background:var(--nav-hover);color:var(--nav-text)}.nav-item.active{background:var(--nav-active);color:var(--nav-active-text);font-weight:700}.main{min-width:0;margin-left:var(--sidebar-width);flex:1}.topbar{background:var(--card);border-bottom:1px solid var(--border);z-index:10;justify-content:space-between;align-items:center;gap:16px;min-height:78px;padding:12px 32px;display:flex;position:sticky;top:0}.search{background:var(--bg);width:280px;color:var(--text);border:none;border-radius:10px;outline:none;padding:10px 16px;font-size:.875rem}.topbar-right{flex-shrink:0;align-items:center;gap:12px;display:flex}.avatar{background:var(--primary-soft);width:38px;height:38px;color:var(--primary);object-fit:cover;border-radius:50%;flex-shrink:0;place-items:center;font-weight:700;display:grid}.content{max-width:1600px;margin-inline:auto;padding:32px}.bottom-nav{display:none}.sidebar .logo{color:var(--nav-text);margin:0 8px 10px}.sidebar .logo-badge{background:var(--nav-active);color:var(--nav-active-text)}.logo-caption{color:var(--nav-muted);letter-spacing:.02em;margin-top:4px;font-size:.75rem;font-weight:400;display:block}.sidebar-footer{margin-top:auto;padding-top:32px}.signout{width:100%}.sidebar :focus-visible{outline-color:var(--nav-text)}.page-context{align-items:center;gap:14px;min-width:0;font-size:.875rem;display:flex}.context-label,.context-separator{color:var(--text-muted)}.context-current{text-overflow:ellipsis;white-space:nowrap;font-weight:650;overflow:hidden}.profile-summary{text-align:right;flex-direction:column;max-width:180px;display:flex}.profile-name{text-overflow:ellipsis;white-space:nowrap;font-size:.8125rem;font-weight:650;overflow:hidden}.profile-detail{color:var(--text-muted);font-size:.75rem}.topbar-right .mobile-signout{display:none}.eyebrow{color:var(--primary);letter-spacing:.12em;text-transform:uppercase;margin-bottom:8px;font-size:.75rem;font-weight:700}.dashboard-header{justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px;display:flex}.dashboard-header h1{overflow-wrap:anywhere}.dashboard-intro{color:var(--text-muted);margin-top:8px;font-size:.9375rem}.dashboard-cta{box-shadow:var(--primary-shadow);flex-shrink:0;align-items:center;gap:12px;text-decoration:none;display:inline-flex}.dashboard-week{margin-bottom:24px}.dashboard-grid{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:start;gap:20px;margin-bottom:24px;display:grid}.dashboard-panel{min-width:0}.dashboard-panel:empty{display:none}.dashboard-side{gap:20px;min-width:0;display:grid}.dashboard-leaderboard:empty+.dashboard-side{grid-column:1/-1}.dashboard-panel>.card{height:100%}.stat-icon{width:32px;height:32px;color:var(--primary);background:var(--primary-soft);border-radius:10px;place-items:center;margin-bottom:14px;display:grid}.cl-stat:nth-child(2) .stat-icon{color:var(--amber);background:var(--amber-soft)}.cl-stat:nth-child(3) .stat-icon{color:var(--green);background:var(--green-soft)}.dashboard-exam{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px;display:flex}.dashboard-exam .block-title{margin-bottom:5px}.exam-help,.exam-note{color:var(--text-muted);font-size:.8125rem}.exam-controls{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.exam-controls .solve-input{width:180px}.exam-note{flex-basis:100%}.cl-check{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:5px;min-height:32px;display:flex}.cl-day-row{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:14px;padding:12px 0;scroll-margin-bottom:100px;display:flex}.login-page{background:var(--bg);flex-direction:column;justify-content:center;align-items:center;min-height:100svh;padding:32px 20px;display:flex}.login-brand{margin-bottom:32px}.login-card{text-align:center;border-top:4px solid var(--primary);width:100%;max-width:470px;box-shadow:var(--shadow-raised);padding:48px 40px}.login-card h1{margin:16px 0;font-size:clamp(1.875rem,4vw,2.5rem)}.login-intro{color:var(--text-muted);margin-bottom:32px}.login-button{border:1px solid var(--input-border);background:var(--card);width:100%;min-height:50px;color:var(--text);cursor:pointer;border-radius:12px;justify-content:center;align-items:center;gap:12px;padding:12px 16px;font-size:.9375rem;font-weight:600;transition:border-color .16s,background .16s;display:flex}.login-button:hover{background:var(--input-bg);border-color:var(--primary)}.login-note,.login-footer{color:var(--text-muted);margin-top:20px;font-size:.8125rem}.login-footer{margin-top:28px}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);min-width:0;box-shadow:var(--shadow);padding:24px}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:16px;margin-bottom:16px;display:grid}.stat-value{letter-spacing:-.045em;font-variant-numeric:tabular-nums;font-size:clamp(1.5rem,2.3vw,2rem);font-weight:750;line-height:1.25}.stat-label{color:var(--text-muted);margin-top:8px;font-size:.8125rem;line-height:1.5}.trend{border-radius:20px;margin-left:8px;padding:2px 8px;font-size:.75rem;font-weight:700}.trend.up{color:var(--green);background:var(--green-soft)}.trend.down{color:var(--red);background:var(--red-soft)}.pill{border-radius:20px;padding:3px 10px;font-size:.75rem;font-weight:700}.pill.ontime{background:var(--green-soft);color:var(--green)}.pill.late{background:var(--red-soft);color:var(--red)}.pill.open{background:var(--amber-soft);color:var(--amber)}.mr-wpm-chart{width:100%;min-width:0;max-width:100%;height:200px;overflow-x:clip}.mr-wpm-chart>.recharts-responsive-container{min-width:0;max-width:100%}@media (width<=640px){.mr-wpm-chart{height:170px}}.theme-toggle{border:1px solid var(--border);background:var(--bg);width:40px;height:40px;color:var(--text-muted);cursor:pointer;border-radius:10px;flex-shrink:0;place-items:center;transition:color .16s,background .16s;display:grid}.theme-toggle:hover{color:var(--primary);background:var(--primary-soft)}.viewas-banner{z-index:200;background:var(--primary);color:var(--on-primary);justify-content:space-between;align-items:center;gap:12px;padding:10px 20px;font-size:.875rem;display:flex;position:sticky;top:0}.viewas-exit{background:var(--card);color:var(--primary);white-space:nowrap}.page-title{margin-bottom:16px}.hw-header{margin-bottom:20px}.hw-theme{font-size:1.375rem;font-weight:800}.hw-meta{color:var(--text-muted);margin-top:4px;font-size:.875rem}.hw-message{background:var(--primary-soft);color:var(--primary);border-radius:10px;margin-top:12px;padding:12px 16px;font-size:.875rem;font-weight:500}.timer-bar{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);justify-content:space-between;align-items:center;margin-bottom:16px;padding:14px 20px;display:flex}.timer-time{font-variant-numeric:tabular-nums;font-size:1.25rem;font-weight:800}.timer-state{margin-left:10px;font-size:.75rem;font-weight:600}.timer-state.on{color:var(--green)}.timer-state.off{color:var(--text-muted)}.timer-target{color:var(--text-muted);font-size:.8125rem}.timer-progress{background:var(--surface-muted);border-radius:3px;width:160px;height:6px;margin-top:6px;overflow:hidden}.timer-progress-fill{background:var(--primary);border-radius:3px;height:100%;transition:width 1s linear}.day-tabs{flex-wrap:wrap;gap:8px;margin-bottom:20px;display:flex}.day-tab{border:1px solid var(--border);background:var(--card);color:var(--text-muted);cursor:pointer;box-shadow:none;border-radius:10px;padding:10px 18px;font-size:.875rem;font-weight:600}.day-tab.active{background:var(--primary);color:var(--on-primary);border-color:var(--primary)}.day-tab.locked{opacity:.55;cursor:not-allowed}.block-card{margin-bottom:16px}.block-title{letter-spacing:-.02em;align-items:center;gap:8px;margin-bottom:18px;font-size:1rem;font-weight:700;display:flex}.block-num{background:var(--primary-soft);width:26px;height:26px;color:var(--primary);border-radius:8px;place-items:center;font-size:.8125rem;display:grid}.solve-row{border-bottom:1px solid var(--border);padding:14px 0}.solve-row:last-child{border-bottom:none}.solve-prompt{margin-bottom:10px;font-size:.9375rem}.solve-input{border:1px solid var(--input-border);width:100%;color:var(--text);resize:vertical;background:var(--input-bg);border-radius:10px;outline:none;min-height:44px;padding:10px 14px;font-family:inherit;font-size:.875rem}.solve-input:focus{border-color:var(--primary)}.reveal-btn{background:var(--primary-soft);color:var(--primary);cursor:pointer;border:none;border-radius:8px;margin-top:10px;padding:8px 14px;font-size:.8125rem;font-weight:600}.correction{background:var(--green-soft);color:var(--green);white-space:pre-wrap;border-radius:10px;margin-top:10px;padding:12px 14px;font-size:.875rem}.locked-panel{text-align:center;color:var(--text-muted);padding:48px 20px}.sub-actions{flex-wrap:wrap;gap:10px;margin-bottom:20px;display:flex}.sub-btn{background:var(--primary);color:var(--on-primary);cursor:pointer;border:none;border-radius:10px;min-height:44px;padding:12px 18px;font-size:.875rem;font-weight:600;transition:background .16s,box-shadow .16s}.sub-btn.secondary{background:var(--primary-soft);color:var(--primary)}.sub-btn.danger{background:var(--red);color:var(--on-status)}.sub-item{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:12px 0;font-size:.875rem;display:flex}.sub-item:last-child{border-bottom:none}.cl-stats{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:24px;display:grid}.cl-stat{min-width:0;padding:20px;position:relative}.cl-day-row:last-child{border-bottom:none}.cl-day-row.today{background:var(--primary-soft);border-radius:10px;padding:12px}.cl-date{width:110px;font-size:.875rem;font-weight:700}.cl-checks{flex-wrap:wrap;gap:14px;font-size:.8125rem;display:flex}.cl-check input{accent-color:var(--primary);cursor:pointer;width:16px;height:16px}.cl-check.auto{color:var(--text-muted);cursor:default}.cl-heading{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;display:flex}.cl-note{color:var(--text-muted);font-size:.8125rem}.cl-check-auto,.cl-check-auto input{cursor:default}.cl-check-auto input{opacity:1}.cl-check-auto.complete{color:var(--green)}.cl-check-auto.complete input{accent-color:var(--green)}.cl-today-label{color:var(--primary);margin-top:3px;font-size:.75rem;display:block}.cl-error{color:var(--red)}.daily-checklist .cl-checks{flex:1;align-items:center;min-width:0}.streak-flame{font-size:1.125rem}.cl-room-closed-hint{color:var(--text-muted);margin-left:10px;font-size:.8125rem;display:inline-block}.cl-timetable{flex-direction:column;gap:8px;margin-top:14px;display:flex}.cl-session{background:var(--surface-muted);border-radius:10px;justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.cl-session-label{font-size:.875rem;font-weight:600}.cl-tz{color:var(--text-muted);margin-top:10px;font-size:.75rem}.cl-recording{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:12px 0;display:flex}.cl-recording:last-child{border-bottom:none}.cl-rec-title{font-size:.875rem;font-weight:600}.cl-rec-meta{color:var(--text-muted);margin-top:2px;font-size:.75rem}.cl-rec-heading{margin-top:16px}.cl-rec-actions{gap:8px;display:flex}.cl-recording{gap:16px}.cl-recording>div:first-child{min-width:0}.l1-items>.cl-recording{padding:14px 18px}.cl-rec-title{overflow-wrap:anywhere;line-height:1.35}.cl-rec-meta{margin-top:4px;line-height:1.45}.cl-rec-actions{flex-shrink:0;align-items:center}.cl-rec-actions .reveal-btn{margin-top:0}.l1pv>.l1-day{margin-top:12px}.rm-groups{margin-top:6px}.rm-group-sub{color:var(--text-muted);margin-top:2px;font-size:.8125rem}.rm-group .l1-day-left{flex-direction:column;align-items:flex-start;gap:0}.rm-group .l1-day-count{white-space:nowrap;max-width:none}.rm-edit-row .rm-edit-fields{flex-wrap:wrap}@media (width<=600px){.cl-recording{flex-wrap:wrap;gap:10px}.l1-items>.cl-recording{padding:12px 14px}.cl-rec-actions{width:100%}}.verb-sheet{padding:4px 0}.verb-title{color:var(--primary);text-transform:lowercase;margin-bottom:12px;font-size:1.0625rem;font-style:italic;font-weight:800}.verb-tenses{flex-direction:column;gap:8px;display:flex}.verb-sheet-v2{padding:16px}.vs2-header{justify-content:space-between;align-items:baseline;margin-bottom:12px;display:flex}.vs2-score-summary{color:var(--text-muted);font-size:.8125rem}.vs2-pills{flex-wrap:wrap;gap:6px;margin-bottom:14px;display:flex}.vs2-pill{border:1px solid var(--border);background:var(--card);cursor:pointer;border-radius:999px;padding:5px 12px;font-size:.8125rem}.vs2-pill.active{border-color:var(--primary);background:var(--primary);color:var(--on-primary)}.vs2-pill.done{border-color:var(--green)}.vs2-pill.done.active{background:var(--green);border-color:var(--green);color:var(--on-status)}.vs2-pill.locked{opacity:.5}.vs2-grid{flex-direction:column;gap:8px;display:flex}.vs2-row{align-items:center;gap:8px;min-width:0;display:flex}.vs2-pronoun{width:110px;color:var(--text-muted);flex-shrink:0;font-size:.875rem}.vs2-input{border:1px solid var(--input-border);background:var(--input-bg);width:180px;color:var(--text);border-radius:6px;padding:6px 8px;font-size:.875rem}.vs2-input.correct{border-color:var(--green);background:var(--green-soft)}.vs2-input.accents{border-color:var(--amber);background:var(--amber-soft)}.vs2-input.wrong{border-color:var(--red);background:var(--red-soft)}.vs2-correction{overflow-wrap:anywhere;font-size:.8125rem}.vs2-correction.correct{color:var(--green)}.vs2-correction.accents{color:var(--amber)}.vs2-correction.wrong{color:var(--red)}.vs2-locked-msg{color:var(--text-muted);padding:16px;font-size:.875rem}.vs2-final-score{color:var(--text-muted);margin-top:12px;font-weight:600}.vs2-submit{background:var(--primary);color:var(--on-primary);cursor:pointer;box-shadow:var(--primary-shadow);border:none;border-radius:8px;margin-top:14px;padding:10px 22px;font-size:.875rem;font-weight:600;transition:background .15s,box-shadow .15s,transform .1s}.vs2-submit:hover:not(:disabled){background:var(--primary-hover);box-shadow:var(--primary-shadow);transform:translateY(-1px)}.vs2-submit:disabled{background:var(--primary-soft);color:var(--text-muted);box-shadow:none;cursor:not-allowed}.mt-title{margin-bottom:12px}.mt-row{align-items:center;gap:10px;padding:8px 0;display:flex}.mt-label{flex-shrink:0;width:170px;font-size:.875rem}.mt-bar{background:var(--surface-muted);border-radius:999px;flex:1;height:10px;overflow:hidden}.mt-bar-fill{border-radius:999px;height:100%}.mt-bar-fill.green{background:var(--green)}.mt-bar-fill.amber{background:var(--amber)}.mt-bar-fill.red{background:var(--red)}.mt-pct{text-align:right;width:48px;font-size:.875rem;font-weight:600}.mt-pct.green{color:var(--green)}.mt-pct.amber{color:var(--amber)}.mt-pct.red{color:var(--red)}.mt-detail{width:110px;color:var(--text-muted);text-align:right;font-size:.75rem}.rf-list{margin:12px 0;padding-left:28px}.rf-list li{margin-bottom:8px;line-height:1.5}.rf-fr{color:var(--primary);margin-top:2px}.rf-tabs{gap:8px;margin:12px 0;display:flex}.rf-meta{color:var(--text-muted);margin-bottom:8px;font-size:.8125rem}.rf-timer{font-variant-numeric:tabular-nums;color:var(--text);margin:8px 0;font-size:1.1rem;font-weight:600}.rf-timer-short{color:var(--red)}.rf-timer-hint{color:var(--text-muted);font-size:.85rem;font-weight:400}.rf-tabs .pill{cursor:pointer;border:2px solid var(--border);background:var(--card);color:var(--text);border-radius:999px;padding:10px 18px;font-weight:600;transition:all .15s}.rf-tabs .pill:hover{border-color:var(--primary);color:var(--primary)}.rf-tabs .pill-active{background:var(--primary);border-color:var(--primary);color:var(--on-primary);box-shadow:var(--primary-shadow)}.rf-tabs .pill-done{background:var(--green-soft);border-color:var(--green);color:var(--green)}.rf-tabs .pill-active.pill-done{background:var(--green);border-color:var(--green);color:var(--on-status)}.rf-checking{color:var(--primary);margin-top:10px;font-size:.875rem}.rf-result{background:var(--surface-muted);border-radius:14px;margin-top:14px;padding:14px}.rf-result-score{margin-bottom:8px;font-size:1rem;font-weight:700}.rf-result-mistakes{flex-wrap:wrap;gap:6px;margin-bottom:8px;display:flex}.rf-mistake-pill{background:var(--red-soft);color:var(--red);border-radius:999px;padding:4px 10px;font-size:.75rem;line-height:1.4}.rf-result-note{color:var(--primary);margin:6px 0;font-size:.875rem}.rf-transcript summary{cursor:pointer;color:var(--text-muted);font-size:.8125rem}.rf-transcript p{color:var(--text);margin-top:6px;font-size:.8125rem}.rf-goals{flex-wrap:wrap;gap:10px 18px;margin:10px 0;display:flex}.rf-goal-row{align-items:center;gap:6px;font-size:.9rem;display:flex}.rf-goal-label{color:var(--muted)}.rf-goal-time{font-weight:600}.rfp-week{margin-bottom:14px}.rfp-week-label{margin-bottom:4px;font-size:.8125rem;font-weight:600}.rfp-bar-row{align-items:center;gap:8px;margin-bottom:4px;display:flex}.rfp-bar-tag{width:42px;color:var(--text-muted);font-size:.75rem}.rfp-bar{border-radius:7px;min-width:6px;height:14px}.rfp-bar-you{background:var(--primary)}.rfp-bar-class{background:var(--chart-secondary)}.rfp-bar-val{color:var(--text);font-size:.75rem}.rfp-empty{color:var(--text-muted);font-size:.875rem}.rfp-note{color:var(--text-muted);margin-top:8px;font-size:.75rem}.rfp-chart{width:100%;height:auto}.rfp-grid{stroke:var(--border);stroke-width:1px}.rfp-axis-label{fill:var(--muted);font-size:.75rem}.rfp-line-you{stroke:var(--primary);stroke-width:2.5px}.rfp-dot{fill:var(--primary)}.rfp-bench{stroke-width:1.5px;stroke-dasharray:5 4}.rfp-line-top20{stroke:#f0a500}.rfp-line-top10{stroke:#e07b39}.rfp-line-top5{stroke:#d63447}.rfp-bench-label{fill:var(--text-muted);font-size:.75rem}.idb-image{border-radius:14px;width:100%;max-width:640px;margin:12px 0;display:block}.idb-timer{color:var(--amber);margin:10px 0;font-size:1.25rem;font-weight:700}.idb-timer-ok{color:var(--green)}.idb-done{color:var(--green);margin-top:10px;font-weight:600}.idb-error{color:var(--red);margin-top:10px;font-weight:600}.idb-suggestions{background:var(--bg);border:1px solid var(--border);border-radius:10px;margin-top:10px;padding:12px 14px}.idb-suggestions-title{color:var(--text);margin-bottom:6px;font-weight:600}.idb-suggestions ul{margin:0;padding-left:18px}.idb-suggestions li{color:var(--text);margin:3px 0}.idb-note{color:var(--muted-text);margin-top:8px;font-style:italic}.idb-fail{border:1px solid var(--red);color:var(--red);background:var(--card);border-radius:10px;margin-top:10px;padding:12px 14px}.pt-steps{color:var(--text);margin:12px 0;padding-left:22px;line-height:1.9}.pt-steps li{font-size:.9375rem}.pt-actions{gap:10px;margin-top:10px;display:flex}.pt-subscores{flex-wrap:wrap;gap:6px;margin:10px 0;display:flex}.pt-subscore{background:var(--primary-soft);color:var(--primary);border-radius:999px;padding:3px 10px;font-size:.75rem;font-weight:600}.pt-complete-note{color:var(--green);margin:8px 0;font-size:.875rem;font-weight:600}.pr-head-stats{flex-wrap:wrap;gap:24px;display:flex}.pr-head-stat{flex-direction:column;gap:2px;display:flex}.pr-head-num{color:var(--primary);font-size:1.5rem;font-weight:800}.pr-head-label{color:var(--text-muted);font-size:.75rem}.st-guide{color:var(--text-muted);margin:6px 0 10px;font-size:.875rem;line-height:1.5}.ss-block{padding:4px 0}.ss-head{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.ss-title{font-size:.9375rem;font-weight:800}.ss-progress{color:var(--primary);background:var(--primary-soft);border-radius:999px;padding:4px 12px;font-size:.8125rem;font-weight:700}.ss-hint{color:var(--text-muted);margin-bottom:14px;font-size:.875rem;line-height:1.5}.ss-error{color:var(--red);background:var(--red-soft);border-radius:10px;margin-bottom:12px;padding:10px 14px;font-size:.8125rem;font-weight:600}.ss-btn-primary{background:var(--primary);color:var(--on-primary);cursor:pointer;border:none;border-radius:10px;padding:12px 22px;font-size:.9375rem;font-weight:700}.ss-btn-primary:hover{opacity:.9}.ss-countdown{color:var(--primary);text-align:center;padding:30px 0;font-size:4rem;font-weight:800}.ss-recording{text-align:center;padding:10px 0}.ss-question{margin-bottom:16px;font-size:1.25rem;font-weight:700;line-height:1.4}.ss-timer{color:var(--red);justify-content:center;align-items:center;gap:8px;margin-bottom:16px;font-size:.9375rem;font-weight:700;display:flex}.ss-rec-dot{background:var(--red);border-radius:50%;width:10px;height:10px;animation:1s infinite ss-pulse}@keyframes ss-pulse{0%{opacity:1}50%{opacity:.3}to{opacity:1}}.ss-btn-stop{background:var(--red);color:var(--on-status);cursor:pointer;border:none;border-radius:10px;padding:12px 22px;font-size:.9375rem;font-weight:700}.ss-grading{color:var(--text-muted);text-align:center;padding:20px 0;font-size:.875rem;font-weight:600}.ss-result{background:var(--primary-soft);border-radius:10px;margin-top:14px;padding:14px 16px}.ss-result-score{margin-bottom:4px;font-size:.9375rem;font-weight:800}.ss-result-metrics{color:var(--text-muted);margin-bottom:6px;font-size:.8125rem}.ss-result-note{font-size:.875rem;font-style:italic}.ss-report{border-top:1px solid var(--border);margin-top:18px;padding-top:16px}.ss-report-title{margin-bottom:10px;font-size:1rem;font-weight:800}.ss-report-stats{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.ss-report-stats span{background:var(--primary-soft);color:var(--primary);border-radius:999px;padding:4px 12px;font-size:.75rem;font-weight:700}.ss-report-summary{margin-bottom:12px;font-size:.875rem;line-height:1.55}.ss-report-list{margin-bottom:12px}.ss-report-sub{margin-bottom:4px;font-size:.8125rem;font-weight:800}.ss-report-list ul{margin:0;padding-left:20px;font-size:.875rem;line-height:1.5}.ssr-section{margin-bottom:16px}.ssr-heading{margin:8px 0 12px;font-size:1.0625rem}.ssr-header-card{flex-wrap:wrap;align-items:center;gap:20px;margin-bottom:12px;display:flex}.ssr-header-clb{color:var(--primary);font-size:1.75rem;font-weight:800}.ssr-header-label{color:var(--text-muted);font-size:.75rem}.ssr-header-stats{flex-wrap:wrap;gap:8px;display:flex}.ssr-header-stats span{background:var(--primary-soft);color:var(--primary);border-radius:999px;padding:4px 12px;font-size:.75rem;font-weight:700}.ssr-card{margin-bottom:12px}.ssr-card-head{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.ssr-card-title{font-size:.9375rem;font-weight:800}.ssr-card-cycle{color:var(--text-muted);font-size:.75rem;font-weight:600}.ssr-pills{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.ssr-pill{background:var(--primary-soft);color:var(--primary);border-radius:999px;padding:3px 10px;font-size:.75rem;font-weight:700}.ssr-summary{margin-bottom:10px;font-size:.875rem;line-height:1.55}.ssr-list{margin-bottom:10px}.ssr-sub{margin-bottom:4px;font-size:.8125rem;font-weight:800}.ssr-list ul{margin:0;padding-left:20px;font-size:.875rem;line-height:1.5}.ssr-note{background:var(--primary-soft);border-radius:10px;padding:10px 14px;font-size:.875rem;font-style:italic}.wp-card{background:var(--feature-bg);color:var(--feature-text);border-color:var(--feature-bg);padding:28px}.wp-title{text-transform:uppercase;letter-spacing:.12em;color:var(--feature-muted);margin-bottom:10px;font-size:.75rem;font-weight:650}.wp-theme{letter-spacing:-.03em;color:var(--feature-text);margin-bottom:24px;font-size:clamp(1.25rem,2vw,1.75rem);font-weight:650;line-height:1.3}.wp-bar{background:var(--feature-track);border-radius:999px;height:8px;margin-bottom:12px;overflow:hidden}.wp-bar-fill{border-radius:inherit;background:var(--feature-fill);height:100%;transition:width .3s}.wp-meta{color:var(--feature-muted);justify-content:space-between;align-items:center;gap:16px;font-size:.875rem;display:flex}.wp-pct{color:var(--feature-text);font-size:1.125rem;font-weight:700}.lvl-card{margin-bottom:0}.lvl-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:14px;display:flex}.lvl-eta{color:var(--primary);background:var(--primary-soft);border-radius:999px;padding:4px 12px;font-size:.8125rem;font-weight:700}.lvl-row{margin-bottom:12px}.lvl-row:last-child{margin-bottom:0}.lvl-row-top{justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:5px;display:flex}.lvl-label{color:var(--text);font-size:.8125rem;font-weight:600}.lvl-val{color:var(--text-muted);white-space:nowrap;font-size:.8125rem;font-weight:800}.lvl-val-met{color:var(--green)}.lvl-bar-track{background:var(--surface-muted);border-radius:999px;height:10px;overflow:hidden}.lvl-bar{background:var(--primary);border-radius:999px;height:100%;transition:width .4s}.lvl-bar-met{background:var(--green)}.lvl-banner{background:var(--primary-soft);border:1px solid var(--primary);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.lvl-banner-title{color:var(--primary);margin-bottom:4px;font-size:1.0625rem;font-weight:800}.lvl-banner-sub{color:var(--text);font-size:.875rem}.lvl-hist-row{border-top:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:10px;padding:9px 0;font-size:.8125rem;display:flex}.lvl-hist-row:first-of-type{border-top:none}.lvl-hist-week{min-width:90px;font-weight:700}.lvl-hist-pill{border-radius:999px;padding:3px 10px;font-size:.75rem;font-weight:700}.lvl-hist-ok{background:var(--green-soft);color:var(--green)}.lvl-hist-bad{background:var(--red-soft);color:var(--red)}.lvl-hist-muted{background:var(--surface-muted);color:var(--text-muted)}.rm-form{flex-direction:column;gap:8px;max-width:480px;display:flex}.rm-header{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;display:flex}.rm-header h2{margin:0}.sync-rec-msg{margin-left:8px}.sync-rec-wrap{flex-wrap:wrap;flex:1;align-items:center;min-width:0;display:flex}.sync-rec-gaps{flex-basis:100%;margin:8px 0 0;padding-left:18px}.sync-rec-gaps li{overflow-wrap:anywhere;margin:2px 0}.rm-edit-fields{flex:1;gap:8px;display:flex}.challenges-page .ch-header{align-items:center;gap:12px;margin-bottom:16px;display:flex}.ch-back{border:1px solid var(--border);background:var(--card);color:var(--text);cursor:pointer;border-radius:10px;padding:6px 14px;font-size:.8125rem}.ch-back:hover{border-color:var(--primary);color:var(--primary)}.ch-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr));gap:14px;display:grid}.ch-card{background:var(--card);border:1px solid var(--border);text-align:left;cursor:pointer;border-radius:14px;padding:18px 16px;transition:border-color .15s,transform .15s}.ch-card:hover{border-color:var(--primary);transform:translateY(-2px)}.ch-card-title{color:var(--text);margin-bottom:4px;font-size:1rem;font-weight:600}.ch-card-sub{color:var(--text-muted);font-size:.8125rem}.ch-exercise-list{flex-direction:column;gap:8px;display:flex}.ch-exercise{background:var(--card);border:1px solid var(--border);cursor:pointer;text-align:left;border-radius:12px;align-items:center;gap:12px;padding:12px 16px;display:flex}.ch-exercise:hover:not(:disabled){border-color:var(--primary)}.ch-exercise.locked{opacity:.5;cursor:not-allowed}.ch-exercise.completed{border-color:var(--green)}.ch-ex-pos{background:var(--bg);width:28px;height:28px;color:var(--text);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.8125rem;font-weight:600;display:inline-flex}.ch-ex-title{color:var(--text);flex:1;font-size:.875rem}.ch-ex-state{color:var(--text-muted);font-size:.75rem}.ch-exercise.completed .ch-ex-state{color:var(--green);font-weight:600}.ch-rf-meta{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.ch-rf-pill{background:var(--bg);color:var(--text-muted);border:1px solid var(--border);border-radius:999px;padding:4px 12px;font-size:.75rem}.ch-rf-pill.done{background:var(--green-soft);color:var(--green);border-color:var(--green)}.ch-rf-goals{flex-wrap:wrap;gap:10px;margin-bottom:16px;display:flex}.ch-rf-goal{background:var(--card);border:1px solid var(--border);border-radius:12px;align-items:center;gap:8px;padding:8px 14px;display:flex}.ch-rf-goal.beaten{border-color:var(--green)}.ch-rf-goal-label{color:var(--text-muted);font-size:.75rem}.ch-rf-goal-value{color:var(--text);font-size:.875rem;font-weight:600}.ch-rf-beaten-pill{background:var(--green-soft);color:var(--green);border-radius:999px;padding:2px 8px;font-size:.75rem;font-weight:600}.ch-rf-tabs{gap:8px;margin-bottom:12px;display:flex}.ch-rf-tab{border:1px solid var(--border);background:var(--card);color:var(--text-muted);cursor:pointer;border-radius:10px;padding:6px 16px;font-size:.8125rem}.ch-rf-tab.active{border-color:var(--primary);color:var(--primary);font-weight:600}.ch-rf-items{background:var(--card);border:1px solid var(--border);border-radius:14px;margin-bottom:16px;padding:16px 16px 16px 36px}.ch-rf-item{border-bottom:1px solid var(--border);padding:6px 0}.ch-rf-item:last-child{border-bottom:none}.ch-rf-en{color:var(--text);font-size:.875rem;display:block}.ch-rf-fr{color:var(--primary);margin-top:2px;font-size:.8125rem;display:block}.ch-rf-recorder{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:16px}.ch-rf-btn{border:1px solid var(--border);background:var(--card);color:var(--text);cursor:pointer;border-radius:10px;padding:8px 18px;font-size:.875rem}.ch-rf-btn.primary{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}.ch-rf-btn.danger{background:var(--red);border-color:var(--red);color:var(--on-status)}.ch-rf-btn:disabled{opacity:.6;cursor:not-allowed}.ch-rf-review{flex-direction:column;gap:10px;display:flex}.ch-rf-review audio{width:100%;max-width:420px}.ch-rf-review-actions{gap:10px;display:flex}.ch-rf-error{color:var(--red);margin-top:10px;font-size:.8125rem}.ch-rf-result{border:1px solid var(--border);border-radius:12px;margin-top:14px;padding:14px}.ch-rf-result.pass{border-color:var(--green);background:var(--green-soft)}.ch-rf-result.fail{border-color:var(--red);background:var(--red-soft)}.ch-rf-result-score{color:var(--text);margin-bottom:6px;font-size:.9375rem;font-weight:600}.ch-rf-note{color:var(--text);margin-bottom:8px;font-size:.8125rem}.ch-rf-mistakes{flex-wrap:wrap;gap:6px;margin-bottom:8px;display:flex}.ch-rf-mistake-pill{background:var(--card);border:1px solid var(--red);color:var(--red);border-radius:999px;padding:3px 10px;font-size:.75rem}.ch-rf-transcript summary{color:var(--text-muted);cursor:pointer;font-size:.8125rem}.ch-rf-transcript p{color:var(--text);margin-top:6px;font-size:.8125rem}.lb-teacher-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.idb-sugg-fr{color:var(--text-muted);margin-top:1px;font-size:.78125rem;font-style:italic}.rf-transcript-open{background:var(--bg);border-radius:10px;margin-top:10px;padding:10px 14px;font-size:.875rem}.rf-transcript-title{margin-bottom:6px;font-size:.8125rem;font-weight:700}.rf-debate-mistakes{margin-top:10px}.rf-debate-mistake{border:1px solid var(--border);border-radius:10px;margin-bottom:8px;padding:8px 12px;font-size:.84375rem}.rf-dm-context{color:var(--text-muted);margin-bottom:4px;font-size:.78125rem}.rf-dm-line{flex-wrap:wrap;gap:14px;margin-bottom:4px;display:flex}.rf-dm-heard{color:var(--red);font-weight:600}.rf-dm-expected{color:var(--green);font-weight:600}.rf-dm-issue{font-size:.8125rem}.lb-card{padding:24px}.lb-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px 16px;margin-bottom:18px;display:flex}.lb-title{margin:0;font-size:1rem}.lb-sub{color:var(--muted-text);font-size:.75rem}.lb-cols{text-transform:uppercase;letter-spacing:.04em;color:var(--muted-text);align-items:center;gap:10px;padding:0 8px 6px;font-size:.75rem;display:flex}.lb-cols-left{flex:1}.lb-col{text-align:right;width:52px}.lb-col-overall{width:58px}.lb-list{flex-direction:column;gap:7px;display:flex}.lb-row{background:var(--input-bg);border-radius:10px;align-items:center;gap:10px;padding:11px 10px;display:flex}.lb-me{outline:2px solid var(--primary);outline-offset:-2px}.lb-clickable{cursor:pointer}.lb-badge{background:var(--surface-muted);width:26px;height:26px;color:var(--text);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.75rem;font-weight:700;display:flex}.lb-gold{color:var(--on-medal);background:#f0a500}.lb-silver{color:var(--on-medal);background:#9aa0a6}.lb-bronze{color:var(--on-medal);background:#cd7f32}.lb-avatar{object-fit:cover;border-radius:50%;flex-shrink:0;width:28px;height:28px}.lb-avatar-empty{background:var(--surface-muted);color:var(--text);justify-content:center;align-items:center;font-size:.75rem;font-weight:700;display:flex}.lb-name{text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.875rem;font-weight:600;overflow:hidden}.lb-you-tag{color:var(--primary);text-transform:uppercase;margin-left:6px;font-size:.75rem;font-weight:700}.lb-expand-hint{color:var(--muted-text);margin-left:8px;font-size:.75rem;font-weight:500;text-decoration:underline}.lb-metric{text-align:right;width:52px;color:var(--muted-text);font-variant-numeric:tabular-nums;font-size:.8125rem}.lb-overall{text-align:right;width:58px;color:var(--primary);font-variant-numeric:tabular-nums;font-size:.9375rem;font-weight:800}.lb-breakdown{background:var(--bg);border:1px solid var(--border);border-radius:10px;margin:4px 0 8px;padding:12px}.lb-bd-title{text-transform:uppercase;letter-spacing:.04em;color:var(--muted-text);margin-bottom:8px;font-size:.75rem}.lb-bd-row{align-items:center;gap:10px;margin-bottom:6px;display:flex}.lb-bd-label{flex-shrink:0;width:130px;font-size:.8125rem}.lb-bd-weight{color:var(--muted-text);font-size:.75rem}.lb-bd-bar{background:var(--surface-muted);border-radius:4px;flex:1;height:8px;overflow:hidden}.lb-bd-fill{background:var(--primary);border-radius:4px;height:100%;display:block}.lb-bd-value{text-align:right;font-variant-numeric:tabular-nums;width:40px;font-size:.8125rem;font-weight:700}.lb-bd-foot{color:var(--muted-text);margin-top:8px;font-size:.75rem}.lb-bd-note{font-style:italic}.lb-pinned{border-top:1px dashed var(--border);margin-top:10px;padding-top:10px}.lb-pinned-label{text-transform:uppercase;letter-spacing:.04em;color:var(--muted-text);margin-bottom:4px;padding:0 8px;font-size:.75rem}.lb-empty,.lb-enter-note{color:var(--muted-text);padding:12px 8px;font-size:.8125rem}.lb-teacher-stack{flex-direction:column;gap:16px;display:flex}.lb-scroll{overflow-x:auto}.lb-table{border-collapse:collapse;width:100%;font-size:.8125rem}.lb-table th{text-align:right;text-transform:uppercase;letter-spacing:.04em;color:var(--muted-text);white-space:nowrap;padding:6px 8px;font-size:.75rem;font-weight:600}.lb-th-name{text-align:left}.lb-table td{text-align:right;border-top:1px solid var(--border);font-variant-numeric:tabular-nums;white-space:nowrap;padding:8px}.lb-td-name{text-align:left;font-weight:600}.lb-td-quality{font-weight:700}.lb-td-overall{color:var(--primary);font-weight:800}.cts-block{background:var(--card);border-radius:14px;flex-direction:column;gap:16px;padding:20px;display:flex}.cts-loading{color:var(--muted-text);padding:20px}.cts-header{flex-direction:column;gap:6px;display:flex}.cts-title{flex-wrap:wrap;align-items:center;gap:10px;font-size:1.05rem;font-weight:700;display:flex}.cts-done-tick{background:var(--green);color:var(--on-status);border-radius:999px;padding:3px 10px;font-size:.72rem;font-weight:600}.cts-clb-tracker{flex-wrap:wrap;align-items:center;gap:12px;font-size:.85rem;display:flex}.cts-clb-current{color:var(--primary);font-weight:600}.cts-clb-gap{color:var(--muted-text)}.cts-question{background:var(--bg);border-radius:10px;padding:14px 16px;font-size:.95rem;line-height:1.5}.cts-pills{flex-wrap:wrap;gap:8px;display:flex}.cts-pill{border:1px solid var(--border);background:var(--card);color:inherit;cursor:pointer;border-radius:999px;padding:6px 14px;font-size:.8rem}.cts-pill-open{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}.cts-pill-next{color:var(--muted-text);cursor:default;border-style:dashed}.cts-history-panel{background:var(--bg);border-radius:10px;flex-direction:column;gap:10px;padding:14px 16px;display:flex}.cts-h-row{flex-wrap:wrap;gap:14px;font-size:.85rem;font-weight:600;display:flex}.cts-transcript summary{cursor:pointer;font-size:.85rem;font-weight:600}.cts-transcript p{margin:8px 0 0;font-size:.9rem;line-height:1.55}.cts-suggs{flex-direction:column;gap:8px;margin:0;padding-left:20px;font-size:.88rem;line-height:1.45;display:flex}.cts-note{color:var(--muted-text);font-size:.85rem;font-style:italic}.cts-recorder{flex-direction:column;gap:10px;display:flex}.cts-rec-meta{color:var(--muted-text);font-size:.8rem}.cts-btn{border:1px solid var(--border);background:var(--card);color:inherit;cursor:pointer;border-radius:10px;align-self:flex-start;padding:10px 18px;font-size:.9rem;font-weight:600}.cts-btn:disabled{opacity:.6;cursor:not-allowed}.cts-btn-primary{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}.cts-rec-live{align-items:center;gap:14px;display:flex}.cts-timer{font-variant-numeric:tabular-nums;color:var(--red);font-size:1.1rem;font-weight:700}.cts-timer-ok{color:var(--green)}.cts-rec-review{flex-direction:column;gap:10px;display:flex}.cts-rec-review audio{width:100%;max-width:420px}.cts-rec-actions{gap:10px;display:flex}.cts-error{background:var(--red-soft);color:var(--red);border-radius:10px;padding:10px 14px;font-size:.85rem}.cts-result{border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:12px;padding:16px;display:flex}.cts-result-pass{border-color:var(--green)}.cts-result-fail{border-color:var(--red)}.cts-result-head{font-size:.92rem;font-weight:700}.cts-result-pass .cts-result-head{color:var(--green)}.cts-result-fail .cts-result-head{color:var(--red)}.cts-sub-scores{color:var(--muted-text);font-size:.82rem}.cts-mistakes{flex-direction:column;gap:8px;display:flex}.cts-mistake{background:var(--bg);border-radius:8px;flex-wrap:wrap;align-items:baseline;gap:10px;padding:8px 12px;font-size:.85rem;display:flex}.cts-m-wrong{color:var(--red);text-decoration:line-through}.cts-m-right{color:var(--green);font-weight:600}.cts-m-tag{color:var(--muted-text);background:var(--card);border-radius:999px;padding:2px 8px;font-size:.72rem}.ag-wrap{background:var(--bg);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.ag-card{background:var(--card);width:100%;max-width:480px;box-shadow:var(--shadow);border-radius:14px;padding:32px}.ag-title{color:var(--text);margin:0 0 16px;font-size:1.375rem}.ag-body{color:var(--text);line-height:1.6}.ag-note{color:var(--muted-text);margin-top:12px;font-size:.875rem;line-height:1.5}.ag-foot{gap:10px;margin-top:24px;display:flex}.ag-btn{background:var(--primary);color:var(--on-primary);cursor:pointer;border:none;border-radius:10px;padding:10px 18px;font-size:.875rem}.ag-btn:disabled{opacity:.6;cursor:default}.ag-btn-ghost{color:var(--muted-text);border:1px solid var(--border);background:0 0}.ag-msg{color:var(--muted-text);margin-top:14px;font-size:.875rem}.cts-progress-bar{background:var(--bg);border-radius:999px;max-width:420px;height:8px;overflow:hidden}.cts-progress-fill{background:var(--primary);border-radius:999px;height:100%;transition:width .4s}.tpp-card{flex-direction:column;gap:16px;display:flex}.tpp-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.tpp-head h3{margin:0}.tpp-name{color:var(--muted-text);font-weight:600}.tpp-stats{flex-wrap:wrap;gap:20px;display:flex}.tpp-stat{flex-direction:column;gap:2px;display:flex}.tpp-stat-num{font-size:1.3rem;font-weight:700}.tpp-stat-label{color:var(--muted-text);font-size:.75rem}.tpp-graph{width:100%;height:auto}.tpp-axis{stroke:var(--border);stroke-width:1px}.tpp-goal{stroke:var(--amber);stroke-width:1px;stroke-dasharray:5 4}.tpp-goal-label{fill:var(--amber);font-size:.75rem}.tpp-line{stroke:var(--primary);stroke-width:2px}.tpp-dot{fill:var(--primary)}.tpp-table{border-collapse:collapse;width:100%;font-size:.85rem}.tpp-table th,.tpp-table td{text-align:left;border-bottom:1px solid var(--border);padding:6px 10px}.tpp-up{color:var(--green);font-weight:600}.tpp-down{color:var(--red);font-weight:600}.tpp-tags{flex-direction:column;gap:6px;display:flex}.tpp-tags-title{font-size:.85rem;font-weight:600}.tpp-tag-row{align-items:baseline;gap:14px;font-size:.82rem;display:flex}.tpp-tag-name{min-width:110px}.tpp-tag-nums{color:var(--muted-text);min-width:60px}.l3p-intro{color:var(--muted-text);margin-bottom:18px}.l3p-cards{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:16px;display:grid}.l3p-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);color:inherit;box-shadow:var(--shadow);padding:24px;text-decoration:none;transition:border-color .16s,box-shadow .16s;display:block}.l3p-card-live{border-color:var(--primary)}.l3p-card-locked{background:var(--input-bg);color:var(--text-muted);border-style:dashed}.l3p-card-title{margin-bottom:6px;font-size:1.0625rem;font-weight:700}.l3p-card-desc{color:var(--muted-text);margin-bottom:12px;font-size:.875rem}.l3p-card-badge{color:var(--primary);font-size:.8125rem;font-weight:600;display:inline-block}.l3p-badge-locked{color:var(--muted-text)}.ls-card{margin-top:14px;padding:20px}.ls-note{color:var(--muted-text);font-size:.8125rem}.ls-progress-row{justify-content:space-between;align-items:center;margin-top:12px;font-size:.875rem;font-weight:600;display:flex}.ls-strikes{color:var(--red);letter-spacing:2px}.ls-strikes-left{color:var(--muted-text)}.ls-rung{margin-bottom:14px;font-weight:700}.ls-play{margin-bottom:12px}.ls-input{border:1px solid var(--input-border);width:100%;font:inherit;background:var(--card);color:inherit;resize:vertical;border-radius:10px;margin-bottom:12px;padding:10px 12px}.ls-error{color:var(--red);margin-bottom:10px;font-size:.8125rem}.ls-verdict{border-radius:10px;padding:14px}.ls-ok{background:var(--green-soft)}.ls-bad{background:var(--red-soft)}.ls-verdict-head{margin-bottom:6px;font-weight:700}.ls-verdict-fr{margin-bottom:6px;font-style:italic}.ls-verdict-note{color:var(--muted-text);margin-bottom:12px;font-size:.875rem}.ls-done{text-align:center}.ls-score-label{color:var(--primary);margin-bottom:8px;font-size:2.625rem;font-weight:800}.lsr-section{margin-top:28px}.lsr-head{gap:40px;margin-bottom:14px;padding:18px 20px;display:flex}.lsr-head-label{color:var(--muted-text);font-size:.8125rem}.lsr-head-score{color:var(--primary);font-size:1.5rem;font-weight:800}.lsr-week{margin-bottom:14px;padding:16px 20px}.lsr-week-head{justify-content:space-between;margin-bottom:12px;font-size:.875rem;font-weight:600;display:flex}.lsr-week-avg{color:var(--primary)}.lsr-bars{align-items:flex-end;gap:18px;display:flex}.lsr-bar-col{text-align:center}.lsr-bar-track{background:var(--surface-muted);border-radius:8px;align-items:flex-end;width:34px;height:90px;display:flex;overflow:hidden}.lsr-bar-fill{background:var(--primary);border-radius:8px 8px 0 0;width:100%}.lsr-bar-label{margin-top:6px;font-size:.75rem;font-weight:700}.lsr-bar-date{color:var(--muted-text);font-size:.75rem}.l1-wrap{max-width:860px}.l1-muted{color:var(--muted-text);font-size:.875rem}.l1-pad{padding:14px 16px}.l1-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px;display:flex}.l1-title{margin:0 0 4px}.l1-stats{gap:18px;display:flex}.l1-stat{text-align:center}.l1-stat-val{justify-content:center;align-items:center;gap:6px;font-size:1.5rem;font-weight:700;line-height:1.1;display:flex}.l1-flame{color:var(--amber)}.l1-stat-lbl{color:var(--muted-text);margin-top:2px;font-size:.75rem}.l1-bar{background:var(--surface-muted);border-radius:999px;height:8px;margin-bottom:22px;overflow:hidden}.l1-bar-fill{background:var(--primary);border-radius:999px;height:100%;transition:width .3s}.l1-empty{background:var(--card);border:1px solid var(--border);text-align:center;border-radius:14px;padding:28px}.l1-day{background:var(--card);border:1px solid var(--border);border-radius:14px;margin-bottom:12px;overflow:hidden}.l1-day-head{cursor:pointer;text-align:left;width:100%;color:inherit;background:0 0;border:none;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;font-family:inherit;display:flex}.l1-day-left{align-items:center;gap:12px;min-width:0;display:flex}.l1-day-num{background:var(--surface-muted);width:34px;height:34px;color:var(--muted-text);border-radius:50%;flex-shrink:0;place-items:center;font-size:.875rem;font-weight:700;display:grid}.l1-day-num.done{background:var(--green);color:var(--on-status)}.l1-day-title{flex-wrap:wrap;align-items:center;gap:8px;font-size:.9375rem;font-weight:600;display:flex}.l1-day-sub{color:var(--muted-text);margin-top:2px;font-size:.8125rem}.l1-day-right{align-items:center;gap:10px;display:flex}.l1-day-count{color:var(--muted-text);font-size:.8125rem}.l1-chev{color:var(--muted-text);font-size:1.25rem;transition:transform .2s;display:inline-block}.l1-chev.open{transform:rotate(90deg)}.l1-pill{background:var(--surface-muted);color:var(--muted-text);border-radius:999px;padding:2px 8px;font-size:.75rem;font-weight:600}.l1-pill-rest{background:var(--amber-soft);color:var(--amber)}.l1-items{border-top:1px solid var(--border)}.l1-item{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.l1-item:last-child{border-bottom:none}.l1-item-main{min-width:0}.l1-item-type{text-transform:uppercase;letter-spacing:.04em;color:var(--muted-text);margin-bottom:2px;font-size:.75rem;font-weight:700}.l1-item-title{font-size:.875rem;font-weight:500}.l1-item-prompt{color:var(--muted-text);margin-top:3px;font-size:.8125rem}.l1-item.done .l1-item-title{color:var(--muted-text)}.l1-item-action{flex-shrink:0}.l1-tick,.l1-open{cursor:pointer;border:1px solid var(--border);background:var(--card);color:inherit;border-radius:10px;padding:7px 14px;font-family:inherit;font-size:.8125rem;font-weight:600}.l1-tick.on{background:var(--green);border-color:var(--green);color:var(--on-status);place-items:center;width:40px;padding:7px 0;display:grid}.l1-open{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}.l1-open:disabled{opacity:.5;cursor:default}.l1-tick:disabled{opacity:.6;cursor:default}.qr-wrap{max-width:620px}.qr-muted{color:var(--muted-text);font-size:.8125rem}.qr-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.qr-title{font-size:1.0625rem;font-weight:600}.qr-timer{font-variant-numeric:tabular-nums;color:var(--muted-text);flex-shrink:0;font-size:1.25rem;font-weight:700}.qr-timer.over{color:var(--amber)}.qr-group{margin-bottom:18px}.qr-group-name{text-transform:uppercase;letter-spacing:.04em;color:var(--muted-text);margin-bottom:8px;font-size:.75rem;font-weight:700}.qr-input-row{grid-template-columns:140px 1fr;align-items:center;gap:10px;margin-bottom:8px;display:grid}.qr-label{font-size:.875rem}.qr-input{border:1px solid var(--input-border);background:var(--card);color:inherit;border-radius:10px;width:100%;padding:9px 12px;font-family:inherit;font-size:.9375rem}.qr-input:focus{outline:2px solid var(--primary);outline-offset:-1px}.qr-submit{background:var(--primary);color:var(--on-primary);cursor:pointer;border:none;border-radius:12px;margin-top:8px;padding:11px 22px;font-family:inherit;font-size:.9375rem;font-weight:600}.qr-submit:disabled{opacity:.6;cursor:default}.qr-note{border-radius:10px;margin-bottom:16px;padding:11px 14px;font-size:.8125rem;line-height:1.5}.qr-note-warn{background:var(--amber-soft);color:var(--amber)}.qr-note-error{background:var(--red-soft);color:var(--red)}.qr-result-head{align-items:center;gap:14px;margin-bottom:20px;display:flex}.qr-score{font-size:1.875rem;font-weight:700}.qr-score span{color:var(--muted-text);font-size:1.125rem;font-weight:500}.qr-result-title{font-size:1rem;font-weight:600}.qr-row{border-radius:8px;grid-template-columns:140px 1fr 1fr;align-items:start;gap:10px;padding:8px 10px;font-size:.875rem;display:grid}.qr-ok{background:var(--green-soft)}.qr-warn{background:var(--amber-soft)}.qr-bad{background:var(--red-soft)}.qr-blank{background:var(--surface-muted)}.qr-hint{color:var(--muted-text);margin-top:2px;font-size:.75rem}.qr-wrap.qr-wide{max-width:760px}.qr-pair{grid-template-columns:1fr 1fr;gap:20px;display:grid}.qr-pair .qr-input-row.qr-narrow{grid-template-columns:96px minmax(0,150px)}.qr-pair .qr-row.qr-row-narrow{grid-template-columns:96px 1fr}.qr-pair .qr-row.qr-row-narrow .qr-fix{grid-column:2}.qr-input-row.qr-short{grid-template-columns:200px 72px}.qr-input-row.qr-short .qr-input{text-align:center;padding:7px 6px}.qr-art{color:var(--l1-article);font-weight:600}.qr-noun{color:var(--green);font-weight:600}.qr-table-wrap{overflow-x:auto}.qr-table{border-collapse:separate;border-spacing:4px}.qr-th{color:var(--muted-text);text-align:center;padding:0 2px;font-size:.75rem;font-weight:600}.qr-th-row{text-align:left;color:var(--text);padding-right:6px;font-size:.8125rem}.qr-td{vertical-align:top}.qr-cell{border:1px solid var(--input-border);text-align:center;background:var(--card);width:64px;color:inherit;border-radius:8px;min-height:32px;padding:6px 4px;font-family:inherit;font-size:.875rem}.qr-cell:focus{outline:2px solid var(--primary);outline-offset:-1px}.qr-cell-given{background:var(--surface-muted);border-color:var(--border);color:var(--muted-text);cursor:default}.qr-cell-result{border-color:#0000}.qr-cell-result.qr-ok{background:var(--green-soft)}.qr-cell-result.qr-warn{background:var(--amber-soft)}.qr-cell-result.qr-bad{background:var(--red-soft)}.qr-cell-result.qr-blank{background:var(--surface-muted)}.qr-cell-fix{text-align:center;margin-top:2px;font-size:.6875rem;font-weight:700}.l1hw-wrap{max-width:660px}.l1cv-wrap{max-width:900px}.l1hw-muted{color:var(--muted-text);font-size:.8125rem}.l1hw-pad{padding:10px 0}.l1hw-head,.l1cv-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.l1hw-title{font-size:1.0625rem;font-weight:600}.l1hw-running{flex-shrink:0;font-size:1.25rem;font-weight:700}.l1hw-running span{color:var(--muted-text);font-size:.875rem;font-weight:500}.l1hw-set{border:1px solid var(--border);background:var(--card);border-radius:14px;margin-bottom:14px;padding:14px 16px}.l1hw-set-head{text-transform:uppercase;letter-spacing:.04em;color:var(--muted-text);align-items:center;gap:8px;margin-bottom:12px;font-size:.75rem;font-weight:700;display:flex}.l1hw-done-pill{background:var(--green-soft);color:var(--green);text-transform:none;letter-spacing:0;border-radius:999px;padding:2px 8px;font-size:.75rem}.l1hw-q{border-radius:8px;gap:10px;margin-bottom:4px;padding:8px;display:flex}.l1hw-q.ok{background:var(--green-soft)}.l1hw-q.bad{background:var(--red-soft)}.l1hw-num{color:var(--muted-text);flex-shrink:0;width:22px;padding-top:3px;font-size:.75rem}.l1hw-body{flex:1;min-width:0}.l1hw-prompt{font-size:.875rem}.l1hw-gloss{color:var(--muted-text);margin-top:1px;font-size:.75rem;font-style:italic}.l1hw-input{border:1px solid var(--input-border);background:var(--card);color:inherit;border-radius:9px;width:100%;max-width:280px;margin-top:6px;padding:8px 11px;font-family:inherit;font-size:.9375rem}.l1hw-input:disabled{opacity:.75}.l1hw-fix{margin-top:4px;font-size:.8125rem}.l1hw-hint{color:var(--muted-text);font-size:.75rem}.l1hw-check{background:var(--primary);color:var(--on-primary);cursor:pointer;border:none;border-radius:11px;margin-top:10px;padding:9px 18px;font-family:inherit;font-size:.875rem;font-weight:600}.l1hw-check:disabled{opacity:.6;cursor:default}.l1hw-error{background:var(--red-soft);color:var(--red);border-radius:10px;margin-bottom:12px;padding:11px 14px;font-size:.8125rem}.l1hw-finish{border:1px solid var(--border);text-align:center;background:var(--card);border-radius:14px;padding:16px}.l1cv-dl{border:1px solid var(--border);color:inherit;border-radius:10px;flex-shrink:0;padding:8px 14px;font-size:.8125rem;font-weight:600;text-decoration:none}.l1cv-pages{flex-direction:column;align-items:center;gap:14px;display:flex}.l1cv-page{box-shadow:var(--shadow);border-radius:10px;max-width:100%;display:block}.l1-back{color:var(--primary);cursor:pointer;background:0 0;border:none;margin-bottom:16px;padding:0;font-family:inherit;font-size:.875rem;font-weight:600}.l1-item-action{align-items:center;gap:8px;display:flex}.l1-open-alt{background:var(--card);color:inherit;border:1px solid var(--border)}.l1-class-materials{background:var(--primary-soft)}.l1-class-materials .l1-item-action{flex-wrap:wrap;justify-content:flex-end}.l1pv{padding:0 16px 14px}.l1pv-card{border:1px solid var(--border);color:inherit;background:var(--card);border-radius:12px;align-items:flex-start;gap:14px;max-width:420px;padding:12px;text-decoration:none;display:flex}.l1pv-card:hover{border-color:var(--primary)}.l1pv-thumb{background:var(--surface-muted);border-radius:8px;flex-shrink:0;place-items:center;width:150px;min-height:90px;display:grid;overflow:hidden}.l1pv-thumb canvas{display:block}.l1pv-load{color:var(--muted-text);font-size:.75rem}.l1pv-meta{min-width:0;padding-top:4px}.l1pv-name{margin-bottom:2px;font-size:.875rem;font-weight:600}.l1pv-open{color:var(--primary);margin-top:8px;font-size:.8125rem;font-weight:600}.t3l-page{max-width:820px}.t3l-sub{color:var(--muted-text);margin-bottom:20px}.t3l-stats{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:20px;display:grid}.t3l-stat{background:var(--card);border:1px solid var(--border);text-align:center;border-radius:14px;padding:14px}.t3l-stat-value{color:var(--primary);font-size:1.625rem;font-weight:700}.t3l-stat-label{color:var(--muted-text);margin-top:4px;font-size:.75rem}.t3l-card{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:20px}.t3l-meta{color:var(--muted-text);margin-bottom:16px;font-size:.8125rem}.t3l-play{background:var(--primary);color:var(--on-primary);cursor:pointer;border:none;border-radius:10px;padding:10px 18px;font-size:.9375rem;font-weight:600}.t3l-play:disabled{opacity:.5;cursor:not-allowed}.t3l-plays{color:var(--muted-text);margin-left:12px;font-size:.8125rem}.t3l-answer{border:1px solid var(--border);background:var(--card);width:100%;color:inherit;resize:vertical;border-radius:10px;margin-top:16px;padding:12px;font-family:inherit;font-size:.9375rem;display:block}.t3l-answer:disabled{opacity:.6}.t3l-submit,.t3l-next{background:var(--primary);color:var(--on-primary);cursor:pointer;border:none;border-radius:10px;margin-top:14px;padding:10px 20px;font-size:.9375rem;font-weight:600}.t3l-submit:disabled{opacity:.5;cursor:not-allowed}.t3l-error{color:var(--red);margin-top:12px;font-size:.875rem}.t3l-result{border:1px solid var(--border);border-radius:12px;padding:16px}.t3l-result-good{border-color:var(--green)}.t3l-result-bad{border-color:var(--red)}.t3l-result-title{margin-bottom:10px;font-weight:700}.t3l-result-good .t3l-result-title{color:var(--green)}.t3l-result-bad .t3l-result-title{color:var(--red)}.t3l-fr{margin:0 0 8px;font-size:1.0625rem}.t3l-en{color:var(--muted-text);margin:0}.ofr-wrap{background:var(--bg);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.ofr-card{background:var(--card);width:100%;max-width:440px;box-shadow:var(--shadow);border-radius:14px;padding:28px}.ofr-center{text-align:center}.ofr-head{align-items:center;gap:12px;margin-bottom:18px;display:flex}.ofr-logo{background:var(--primary);width:44px;height:44px;color:var(--on-primary);border-radius:12px;justify-content:center;align-items:center;font-weight:700;display:flex}.ofr-sub{color:var(--muted-text);margin:2px 0 0;font-size:.875rem}.ofr-timer{background:var(--bg);border:1px solid var(--border);border-radius:12px;justify-content:space-between;align-items:center;margin-bottom:14px;padding:12px 16px;display:flex}.ofr-timer-label{color:var(--muted-text);font-size:.875rem}.ofr-timer-value{font-variant-numeric:tabular-nums;font-size:1.625rem;font-weight:700}.ofr-timer-urgent .ofr-timer-value{color:var(--red)}.ofr-price{margin-bottom:16px;font-size:2rem;font-weight:800}.ofr-form label{margin-bottom:12px;font-size:.875rem;font-weight:600;display:block}.ofr-form input,.ofr-form select{border:1px solid var(--input-border);background:var(--card);width:100%;color:inherit;border-radius:10px;margin-top:6px;padding:10px 12px;font-size:.9375rem;display:block}.ofr-hint{color:var(--muted-text);margin-top:4px;font-size:.75rem;font-weight:400;display:block}.ofr-error{background:var(--red-soft);color:var(--red);border-radius:10px;margin-bottom:10px;padding:10px 12px;font-size:.875rem}.ofr-pay{background:var(--primary);width:100%;color:var(--on-primary);cursor:pointer;border:none;border-radius:12px;padding:14px;font-size:1rem;font-weight:700}.ofr-pay:disabled{opacity:.6;cursor:default}.ofr-fine{text-align:center;color:var(--muted-text);margin-top:10px;font-size:.75rem}.sc-wrap{max-width:1000px}.sc-stats{grid-template-columns:repeat(4,1fr);gap:12px;margin:16px 0 20px;display:grid}.sc-stat{background:var(--card);text-align:center;border-radius:14px;padding:16px}.sc-stat span{font-size:1.625rem;font-weight:700;display:block}.sc-stat label{color:var(--muted-text);font-size:.8125rem}.sc-error{background:var(--red-soft);color:var(--red);border-radius:10px;margin-bottom:12px;padding:10px 12px;font-size:.875rem}.sc-create{flex-wrap:wrap;align-items:stretch;gap:10px;margin-bottom:18px;display:flex}.sc-create input{border:1px solid var(--input-border);background:var(--card);color:inherit;border-radius:10px;flex:1;padding:10px 12px;font-size:.9375rem}.sc-create input[type=date]{color-scheme:inherit}.sc-price-wrap{flex:0 0 120px;position:relative}.sc-price-sign{color:var(--muted-text);pointer-events:none;z-index:1;font-weight:600;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.sc-create .sc-price-input{border:1px solid var(--input-border);background:var(--card);width:100%;color:inherit;appearance:textfield;border-radius:10px;flex:none;padding:10px 12px 10px 28px;font-size:.9375rem}.sc-price-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.sc-price-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.sc-create-btn{background:var(--primary);color:var(--on-primary);cursor:pointer;white-space:nowrap;border:none;border-radius:10px;padding:10px 18px;font-weight:600}.sc-create-btn:disabled{opacity:.6;cursor:default}.sc-table{background:var(--card);border-collapse:collapse;border-radius:14px;width:100%;margin-bottom:22px;overflow:hidden}.sc-table th{text-align:left;color:var(--muted-text);border-bottom:1px solid var(--border);padding:12px 14px;font-size:.8125rem}.sc-table td{border-bottom:1px solid var(--border);padding:14px;font-size:.875rem}.sc-table tr:last-child td{border-bottom:none}.sc-name{font-weight:600}.sc-time{font-variant-numeric:tabular-nums;font-size:1.125rem;font-weight:700}.sc-pill{border-radius:999px;padding:5px 12px;font-size:.8125rem;font-weight:600;display:inline-block}.sc-pill-running{background:var(--green-soft);color:var(--green)}.sc-pill-expired{background:var(--red-soft);color:var(--red)}.sc-pill-sold{background:var(--primary-soft);color:var(--primary)}.sc-pill-idle{background:var(--bg);color:var(--muted-text)}.sc-icon,.sc-reactivate{border:1px solid var(--border);background:var(--card);color:inherit;cursor:pointer;border-radius:10px;padding:8px 14px;font-size:.8125rem;font-weight:600}.sc-reactivate:not(:disabled){border-color:var(--primary);color:var(--primary)}.sc-icon:disabled,.sc-reactivate:disabled{opacity:.4;cursor:default}.sc-sub{margin-bottom:10px}.sc-empty{color:var(--muted-text)}.l1-item-title{flex-wrap:wrap;align-items:center;gap:0;display:flex}.l1-pill-opt{background:var(--primary-soft);color:var(--primary);margin-left:8px}.l1hw-wide{max-width:1000px}.l1hw-grid{grid-template-columns:repeat(3,1fr);align-items:start;gap:14px;display:grid}.l1hw-grid .l1hw-set{margin-bottom:0}.l1hw-q-grid{padding:4px 6px;display:block}.l1hw-q-grid .l1hw-prompt{color:var(--muted-text);font-size:.8125rem}.l1hw-q-grid .l1hw-input{max-width:100%;margin-top:3px}.l1hw-radios{flex-wrap:wrap;gap:18px;margin-top:6px;display:flex}.l1hw-radio{cursor:pointer;align-items:center;gap:6px;font-size:.875rem;display:inline-flex}.l1hw-radio input{accent-color:var(--primary)}.l1hw-noun-link{color:var(--primary);margin-top:2px;font-size:.75rem;display:inline-block}.l1hw-live{background:var(--primary-soft);border-radius:12px;margin-bottom:14px;padding:10px 14px}.l1hw-live-row{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:4px;display:flex}.l1hw-live-pill{text-transform:uppercase;letter-spacing:.04em;color:var(--primary);font-size:.6875rem;font-weight:700}.l1hw-live-btn{margin-top:0}.l1hw-live-clock{font-variant-numeric:tabular-nums;color:var(--text);font-size:1.25rem;font-weight:700}.l1hw-live-clock.over{color:var(--amber)}.l1hw-live-link{color:var(--primary);font-size:.8125rem;font-weight:600}.l1hw-show{border:1px solid var(--border);background:var(--card);color:var(--text);cursor:pointer;border-radius:8px;margin-top:6px;padding:4px 10px;font-family:inherit;font-size:.75rem;font-weight:600}.l1hw-frame{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:6px 0;display:grid}.l1hw-frame-label{color:var(--muted-text);font-size:.6875rem;font-weight:600}.l1hw-frame .l1hw-radios{gap:10px;margin-top:4px}.l1hw-frame-input{margin-top:3px;padding:6px 8px}.l1hw-score-row{border-bottom:1px solid var(--border);justify-content:space-between;gap:10px;padding:6px 4px;font-size:.875rem;display:flex}.l1hw-score-row:last-child{border-bottom:none}.l1hw-score-val{font-variant-numeric:tabular-nums;font-weight:700}.l3w-page{max-width:860px}.l3w-intro{color:var(--muted-text);margin-bottom:20px;line-height:1.5}.l3w-error{color:var(--red);margin-top:10px}.l3w-task{background:var(--card);border:1px solid var(--border);border-radius:14px;margin-bottom:14px;overflow:hidden}.l3w-task-locked{background:var(--input-bg);border-style:dashed}.l3w-task-head{cursor:pointer;text-align:left;width:100%;font:inherit;color:inherit;background:0 0;border:none;justify-content:space-between;align-items:center;gap:12px;padding:16px 18px;display:flex}.l3w-task-title{font-size:.9375rem;font-weight:600}.l3w-task-meta{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.l3w-best,.l3w-tries,.l3w-lock{background:var(--surface-muted);color:var(--muted-text);white-space:nowrap;border-radius:999px;padding:3px 9px;font-size:.75rem}.l3w-best-pass{background:var(--green-soft);color:var(--green)}.l3w-lock{background:var(--surface-muted)}.l3w-task-body{padding:0 18px 18px}.l3w-lockmsg{color:var(--muted-text);margin:0;font-size:.875rem}.l3w-docs{margin-bottom:14px}.l3w-docs-toggle{border:1px solid var(--border);cursor:pointer;color:var(--primary);background:0 0;border-radius:8px;padding:7px 12px;font-size:.8125rem}.l3w-docs-body,.l3w-prompt,.l3w-corrected-body{white-space:pre-wrap;word-break:break-word;background:var(--surface-muted);border-radius:10px;margin:10px 0 0;padding:14px;font-family:inherit;font-size:.875rem;line-height:1.6}.l3w-prompt{margin-bottom:14px}.l3w-input{box-sizing:border-box;border:1px solid var(--input-border);width:100%;font:inherit;resize:vertical;background:var(--card);color:inherit;border-radius:10px;padding:12px;font-size:.9375rem;line-height:1.6}.l3w-input:focus{outline:2px solid var(--primary);outline-offset:-1px}.l3w-actions{align-items:center;gap:12px;margin-top:12px;display:flex}.l3w-submit{background:var(--primary);color:var(--on-primary);cursor:pointer;border:none;border-radius:10px;padding:10px 20px;font-size:.875rem;font-weight:600}.l3w-submit:disabled{opacity:.6;cursor:default}.l3w-count{color:var(--muted-text);font-size:.75rem}.l3w-result{border-top:1px solid var(--border);margin-top:18px;padding-top:16px}.l3w-score{flex-wrap:wrap;align-items:center;gap:12px;font-size:1.625rem;font-weight:700;display:flex}.l3w-score-pass{color:var(--green)}.l3w-passtag{background:var(--green-soft);color:var(--green);border-radius:999px;padding:4px 10px;font-size:.75rem;font-weight:600}.l3w-bands{color:var(--muted-text);flex-wrap:wrap;gap:14px;margin-top:8px;font-size:.8125rem;display:flex}.l3w-note{background:var(--surface-muted);border-radius:10px;margin-top:12px;padding:12px;font-size:.875rem;line-height:1.6}.l3w-mistakes{margin-top:16px}.l3w-mistakes-head{color:var(--muted-text);margin-bottom:8px;font-size:.8125rem;font-weight:600}.l3w-mistake{border:1px solid var(--border);border-radius:10px;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:6px;padding:8px 12px;font-size:.875rem;display:flex}.l3w-wrong{color:var(--red);text-decoration:line-through}.l3w-arrow{color:var(--muted-text)}.l3w-right{color:var(--green);font-weight:600}.l3w-tag{background:var(--surface-muted);color:var(--muted-text);border-radius:999px;margin-left:auto;padding:2px 8px;font-size:.75rem}.l3w-corrected{margin-top:16px}.l3w-corrected-head{color:var(--muted-text);font-size:.8125rem;font-weight:600}.wr-card{background:var(--card);border:1px solid var(--border);border-radius:14px;margin-bottom:20px;padding:20px}.wr-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:14px;display:flex}.wr-head h3{margin:0;font-size:1rem}.wr-stats{color:var(--muted-text);flex-wrap:wrap;gap:16px;font-size:.8125rem;display:flex}.wr-graph{width:100%;height:auto;margin-bottom:16px}.wr-weeks{flex-direction:column;gap:8px;display:flex}.wr-week{border:1px solid var(--border);border-radius:10px;flex-wrap:wrap;align-items:center;gap:12px;padding:10px 12px;display:flex}.wr-week-legacy{background:var(--input-bg);border-style:dashed}.wr-week-name{min-width:74px;font-size:.875rem;font-weight:600}.wr-week-tasks{flex-wrap:wrap;gap:6px;display:flex}.wr-pill{background:var(--surface-muted);color:var(--muted-text);border-radius:999px;padding:3px 9px;font-size:.75rem}.wr-pill-pass{background:var(--green-soft);color:var(--green)}.wr-pill-empty{border:1px dashed var(--input-border)}.wr-week-avg{margin-left:auto;font-size:.8125rem;font-weight:600}.wr-trend{border-top:1px solid var(--border);margin-top:18px;padding-top:14px}.wr-trend-head{color:var(--muted-text);margin-bottom:8px;font-size:.8125rem;font-weight:600}.wr-trend-row{flex-wrap:wrap;align-items:center;gap:10px;padding:5px 0;font-size:.8125rem;display:flex}.wr-trend-tag{text-transform:capitalize;min-width:120px}.wr-trend-nums{color:var(--muted-text)}.wr-arrow{color:var(--text-muted)}.wr-trend-dir{color:var(--muted-text);margin-left:auto;font-size:.75rem}.wr-better{color:var(--green)}.wr-worse{color:var(--red)}.wr-trend-note{color:var(--muted-text);margin:8px 0 0;font-size:.75rem}.cl-batch-dates{color:var(--text-muted);margin-bottom:10px;font-size:.8125rem}.cl-session-time{color:var(--text-muted);font-size:.8125rem}.bt-links{margin-top:14px}.bt-wrap{padding:4px 0 40px}.bt-title{color:var(--text);margin:0 0 6px;font-size:1.5rem;font-weight:700}.bt-muted{color:var(--muted-text);margin:0 0 18px;font-size:.875rem}.bt-error{color:var(--red);font-size:.875rem}.bt-notice{background:var(--primary-soft);color:var(--primary);border-radius:10px;margin-bottom:16px;padding:10px 14px;font-size:.875rem}.bt-section{color:var(--muted-text);text-transform:uppercase;letter-spacing:.04em;margin:22px 0 10px;font-size:.9375rem;font-weight:700}.bt-card{background:var(--card);border:1px solid var(--border);border-radius:14px;margin-bottom:14px;padding:18px}.bt-arch{background:var(--input-bg);border-style:dashed}.bt-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.bt-code{color:var(--text);font-size:1.125rem;font-weight:700}.bt-dates{color:var(--muted-text);margin-top:4px;font-size:.8125rem}.bt-daybox{text-align:right;flex-shrink:0}.bt-daynum{color:var(--primary);font-size:1.375rem;font-weight:700}.bt-daylabel{color:var(--muted-text);text-transform:uppercase;letter-spacing:.05em;font-size:.75rem}.bt-stats{flex-wrap:wrap;gap:26px;margin-top:16px;display:flex}.bt-stat{flex-direction:column;display:flex}.bt-statnum{color:var(--text);font-size:1.25rem;font-weight:700}.bt-statlabel{color:var(--muted-text);font-size:.75rem}.bt-current{color:var(--text);margin-top:14px;font-size:.875rem}.bt-next{color:var(--muted-text);margin-top:4px;font-size:.8125rem}.bt-warn{background:var(--red-soft);color:var(--red);border-radius:10px;margin-top:12px;padding:9px 12px;font-size:.8125rem}.bt-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:18px;display:flex}.bt-btn{background:var(--primary);color:var(--on-primary);cursor:pointer;border:none;border-radius:10px;padding:9px 16px;font-size:.875rem;font-weight:600}.bt-btn:disabled{opacity:.55;cursor:default}.bt-ghost{border:1px solid var(--border);color:var(--muted-text);cursor:pointer;background:0 0;border-radius:10px;padding:9px 14px;font-size:.8125rem}.bt-ghost:disabled{opacity:.55;cursor:default}.bt-link{color:var(--primary);font-size:.875rem;font-weight:600;text-decoration:none}.bt-link:hover{text-decoration:underline}.bt-archwrap{margin-top:26px}.bt-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,460px),1fr));align-items:start;gap:14px;display:grid}.bt-grid>.bt-card{min-width:0;margin-bottom:0}.bt-archwrap .bt-grid{margin-top:14px}.bt-health{border-radius:999px;align-items:center;gap:7px;margin-top:12px;padding:4px 10px;font-size:.78rem;font-weight:600;display:inline-flex}.bt-health-dot{background:currentColor;border-radius:50%;flex-shrink:0;width:8px;height:8px}.bt-health-up_to_date{background:var(--green-soft);color:var(--green)}.bt-health-processing{background:var(--amber-soft);color:var(--amber)}.bt-health-missing{background:var(--red-soft);color:var(--red)}.bt-health-none_expected,.bt-health-unknown{background:var(--surface-muted);color:var(--text-muted)}.bt-summary{border-radius:12px;flex-wrap:wrap;align-items:center;gap:4px 8px;margin-bottom:8px;padding:10px 14px;font-size:.875rem;display:flex}.bt-summary-ok{background:var(--green-soft);color:var(--green)}.bt-summary-attention{background:var(--red-soft);color:var(--red)}.bt-summary-unknown{background:var(--surface-muted);color:var(--text-muted)}.l1r-stats{flex-wrap:wrap;gap:26px;display:flex}.l1r-stat{flex-direction:column;display:flex}.l1r-num{color:var(--text);font-size:1.375rem;font-weight:800}.l1r-lab{color:var(--text-muted);font-size:.75rem}.l1r-meta{color:var(--text-muted);margin-bottom:10px;font-size:.8125rem}.l1r-items{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.l1r-item{background:var(--primary-soft);color:var(--primary);border-radius:999px;padding:3px 10px;font-size:.75rem;font-weight:600}.l1r-tags{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.l1r-tag{background:var(--red-soft);color:var(--red);border-radius:999px;padding:3px 10px;font-size:.75rem;font-weight:600}.bl-sub{color:var(--text-muted);margin:0 0 16px;font-size:.875rem}.bl-head,.bl-row{grid-template-columns:36px 1fr 62px 72px 62px 62px;align-items:center;gap:6px;padding:10px 8px;display:grid}.bl-head{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);border-bottom:1px solid var(--border);font-size:.75rem;font-weight:700}.bl-row{border-bottom:1px solid var(--border);font-size:.875rem}.bl-row:last-child{border-bottom:none}.bl-c-rank{color:var(--text-muted);font-weight:800}.bl-c-name{color:var(--text);overflow-wrap:anywhere;font-weight:600}.bl-c-num{text-align:right;color:var(--text-muted)}.bl-score{color:var(--text);font-weight:800}.bl-gold .bl-c-rank{color:#f0a500}.bl-silver .bl-c-rank{color:#9aa0a6}.bl-bronze .bl-c-rank{color:#cd7f32}.bl-me{background:var(--primary-soft);border-radius:10px}.bl-me .bl-c-name{color:var(--primary);font-weight:800}.bl-pinned{border-top:2px dashed var(--border);margin-top:10px;padding-top:10px}.bl-how{margin-top:16px}.bl-how-row{color:var(--text-muted);margin-bottom:6px;font-size:.8125rem}.cp-card{margin-top:16px}.cp-sub{color:var(--text-muted);margin:0 0 12px;font-size:.8125rem}.cp-note{color:var(--text-muted);margin:8px 0 0;font-size:.8125rem}.cp-latest{flex-wrap:wrap;align-items:baseline;gap:4px 10px;margin-bottom:6px;display:flex}.cp-latest-label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);font-size:.75rem;font-weight:700}.cp-latest-value{color:var(--primary);font-size:1.25rem;font-weight:800}.cp-latest-scale{color:var(--text-muted);font-size:.8125rem;font-weight:700}.cp-chart{width:100%;height:auto;display:block}.cp-grid{stroke:var(--border);stroke-width:1px}.cp-axis{fill:var(--text-muted);font-size:11px}.cp-axis-target{fill:var(--green);font-weight:700}.cp-target{stroke:var(--green);stroke-width:2px}.cp-target-label{fill:var(--green);font-size:11px;font-weight:800}.cp-proj-zone{fill:var(--surface-muted);opacity:.55}.cp-split{stroke:var(--border);stroke-width:1px;stroke-dasharray:3 3}.cp-proj-text{font-style:italic}.cp-day{fill:var(--primary);opacity:.35}.cp-week-line{stroke:var(--primary);stroke-width:2.5px;stroke-linejoin:round}.cp-week-dot{fill:var(--primary);stroke:var(--card);stroke-width:1.5px}.cp-proj-line{stroke:var(--text-muted);stroke-width:2px;stroke-dasharray:6 5;stroke-linejoin:round}.cp-proj-end{fill:var(--card);stroke:var(--text-muted);stroke-width:2px;stroke-dasharray:2 2}.cp-proj-arrow{fill:var(--text-muted);font-size:14px;font-weight:800}.cp-legend{color:var(--text-muted);flex-wrap:wrap;gap:6px 16px;margin-top:6px;font-size:.75rem;display:flex}.cp-key{align-items:center;gap:6px;display:inline-flex}.cp-key-line{border-top:3px solid var(--primary);border-radius:2px;width:18px;height:0}.cp-key-dot{background:var(--primary);opacity:.35;border-radius:50%;width:7px;height:7px}.cp-key-dash{border-top:2px dashed var(--text-muted);width:18px;height:0}@media (width<=600px){.cp-axis,.cp-target-label{font-size:15px}}.bt-board{margin-top:16px}.bt-board-body{margin-top:12px}.ldr-block{flex-direction:column;gap:14px;display:flex}.ldr-scores{flex-wrap:wrap;gap:12px;display:flex}.ldr-score{background:var(--card);border:1px solid var(--border);text-align:center;border-radius:12px;min-width:92px;padding:10px 16px}.ldr-score-val{color:var(--primary);font-size:1.25rem;font-weight:800;display:block}.ldr-score-lab{color:var(--muted-text);margin-top:2px;font-size:.75rem;display:block}.ldr-weak-note{color:var(--amber);background:var(--amber-soft);border-radius:10px;padding:8px 12px;font-size:.8125rem}.ldr-sentence{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:16px 18px}.ldr-kind-tag{text-transform:uppercase;letter-spacing:.04em;color:var(--primary);background:var(--primary-soft);border-radius:999px;margin-bottom:8px;padding:3px 10px;font-size:.75rem;font-weight:700;display:inline-block}.ldr-prompt{font-size:1rem;line-height:1.5}.ldr-target{color:var(--muted-text);margin-top:8px;font-size:.75rem}.ldr-reveal{background:var(--green-soft);border-radius:12px;padding:12px 16px}.ldr-reveal-label{color:var(--green);margin-bottom:4px;font-size:.75rem;font-weight:600}.ldr-reveal-text{color:var(--green);font-size:1rem;font-weight:700}.ldr-input{box-sizing:border-box;resize:vertical;border:1px solid var(--input-border);width:100%;min-height:70px;font:inherit;background:var(--card);color:inherit;border-radius:10px;padding:10px 14px;font-size:.9375rem}.ldr-input:focus{outline:2px solid var(--primary);outline-offset:-1px}.ldr-actions{gap:10px;display:flex}.ldr-send{background:var(--primary);color:var(--on-primary);cursor:pointer;border:none;border-radius:10px;padding:10px 22px;font-size:.875rem;font-weight:700}.ldr-send:disabled{opacity:.6;cursor:default}.ldr-vocab-btn{background:var(--card);color:var(--primary);border:1px solid var(--primary);cursor:pointer;border-radius:10px;padding:10px 18px;font-size:.875rem;font-weight:600}.ldr-vocab-btn:disabled{opacity:.5;cursor:default}.ldr-error{color:var(--red);font-size:.8125rem}.ldr-heard{overflow-wrap:anywhere;border-radius:10px;margin-top:10px;padding:8px 12px;font-size:.8125rem}.ldr-heard.ok{background:var(--green-soft);color:var(--green)}.ldr-heard.bad{background:var(--red-soft);color:var(--red)}.ldr-heard-text{color:var(--text);font-weight:600}.ldr-mistakes{flex-wrap:wrap;gap:6px;display:flex}.ldr-mistake-pill{background:var(--red-soft);color:var(--red);border-radius:999px;padding:3px 10px;font-size:.75rem;font-weight:600}.ldr-hint{color:var(--primary);background:var(--primary-soft);border-radius:10px;padding:10px 14px;font-size:.875rem;font-style:italic}.ldr-vocab{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:12px 16px}.ldr-vocab-title{color:var(--muted-text);text-transform:uppercase;letter-spacing:.04em;margin-bottom:8px;font-size:.75rem;font-weight:700}.ldr-vocab-list{flex-direction:column;gap:6px;display:flex}.ldr-vocab-item{gap:12px;font-size:.875rem;display:flex}.ldr-vocab-en{color:var(--muted-text);min-width:120px}.ldr-vocab-fr{color:var(--primary);font-weight:600}.lv-teacher-card{margin-bottom:20px}.lv-teacher-links{flex-wrap:wrap;gap:10px;display:flex}.lv-page{max-width:1400px}.lv-shell{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);height:calc(100dvh - 142px);min-height:360px;box-shadow:var(--shadow);flex-direction:column;display:flex;overflow:hidden}.lv-connecting,.lv-loading{text-align:center;color:var(--text-muted);padding:48px 20px}.lv-denied{text-align:center}.lv-denied p{color:var(--text-muted);margin:8px 0 16px}.lv-body{flex:1;align-items:stretch;min-height:0;display:flex;overflow:hidden}.lv-stage-wrap{flex-direction:column;flex:1;gap:8px;min-width:0;padding:14px;display:flex;position:relative;overflow:hidden}.lv-stage-banner{flex-shrink:0}.lv-stage-toast{z-index:20;background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow-raised);border-radius:999px;padding:8px 16px;font-size:.8125rem;font-weight:600;position:absolute;top:12px;left:50%;transform:translate(-50%)}.lv-stage{flex-direction:column;flex:1;min-height:0;display:flex}.lv-grid{flex-wrap:wrap;flex:1;place-content:center;min-height:0;display:flex}.lv-tile{box-sizing:border-box;flex:none;padding:5px;position:relative}.lv-tile-video,.lv-tile-photo{object-fit:cover;background:var(--nav-bg);border-radius:14px;width:100%;height:100%;display:block;overflow:hidden}.lv-tile-empty{width:100%;height:100%;color:var(--nav-text);background:var(--nav-bg);border-radius:14px;place-items:center;font-size:2rem;font-weight:700;display:grid}.lv-tile-label{color:#fff;background:#00000073;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:.75rem;font-weight:600;display:flex;position:absolute;bottom:11px;left:11px}.lv-tile-badge{text-transform:uppercase;letter-spacing:.04em;background:var(--primary);border-radius:999px;padding:1px 7px;font-size:.6875rem;font-weight:700}.lv-tile-empty-state{text-align:center;color:var(--text-muted);margin:auto;padding:40px 0}.lv-tile-mic{color:#fff;background:#00000073;border-radius:999px;align-items:center;gap:4px;padding:5px 7px;display:flex;position:absolute;top:11px;right:11px}.lv-mic-bars{align-items:flex-end;gap:2px;height:10px;display:inline-flex}.lv-mic-bar{background:#ffffff59;border-radius:1px;width:3px;height:4px}.lv-mic-bar:nth-child(2){height:7px}.lv-mic-bar:nth-child(3){height:10px}.lv-page-nav{flex-shrink:0;justify-content:center;align-items:center;gap:10px;height:32px;display:flex}.lv-page-count{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:.8125rem}.lv-share-layout{flex-direction:column;flex:1;gap:8px;min-height:0;display:flex}.lv-share-header{color:var(--text-muted);flex-shrink:0;font-size:.8125rem;font-weight:700}.lv-share-body{flex:1;gap:10px;min-height:0;display:flex}.lv-share-focus{background:#000;border-radius:14px;flex:1;justify-content:center;align-items:center;min-width:0;display:flex;overflow:hidden}.lv-share-video{object-fit:contain;max-width:100%;max-height:100%}.lv-share-strip{flex-direction:column;flex-shrink:0;gap:8px;width:200px;display:flex;overflow-y:auto}.lv-share-strip .lv-tile{aspect-ratio:16/9;flex:none;width:100%}.lv-share-body-stacked{flex-direction:column}.lv-share-body-stacked .lv-share-strip{flex-direction:row;width:100%;max-height:110px;overflow:auto hidden}.lv-share-body-stacked .lv-share-strip .lv-tile{flex-shrink:0;width:140px}.lv-controls{border-top:1px solid var(--border);flex-shrink:0;align-items:center;gap:6px;padding:10px 14px;display:flex}.lv-controls-title{white-space:nowrap;margin-right:10px;font-size:.9375rem;font-weight:700}.lv-controls-mid{flex-wrap:wrap;flex:1;justify-content:center;align-items:center;gap:6px;display:flex}.lv-icon-btn-wrap{display:inline-flex;position:relative}.lv-icon-btn{border:1px solid var(--border);background:var(--card);color:var(--text);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex}.lv-icon-btn:hover:not(:disabled){border-color:var(--primary)}.lv-icon-btn:disabled{opacity:.6;cursor:default}.lv-icon-btn-sm{border-radius:8px;width:32px;height:32px}.lv-icon-btn-on{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}.lv-icon-btn-leave{background:var(--red);border-color:var(--red);color:var(--on-status);margin-left:10px}.lv-icon-btn-recording{background:var(--red);border-color:var(--red);color:var(--on-status)}.lv-record-error{color:var(--red);font-size:.75rem}.lv-popover{z-index:20;background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow-raised);border-radius:12px;padding:10px;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)}.lv-popover-reactions{white-space:nowrap;gap:2px;display:flex}.lv-popover-more{flex-direction:column;gap:10px;min-width:220px;display:flex}.lv-popover-row{color:var(--text-muted);flex-direction:column;gap:4px;font-size:.75rem;display:flex}.lv-share-toast{z-index:20;background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow-raised);color:var(--text-muted);white-space:nowrap;border-radius:8px;padding:6px 10px;font-size:.75rem;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)}.lv-device-select{border:1px solid var(--border);background:var(--card);color:var(--text);border-radius:8px;width:100%;padding:6px 8px;font-size:.8125rem}.lv-reaction-btn{cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;min-height:40px;padding:8px;font-size:1.125rem;line-height:1}.lv-reaction-btn:hover{background:var(--input-bg);border-color:var(--border)}.lv-hand-queue{border:1px solid var(--border);background:var(--amber-soft);border-radius:10px;flex-direction:column;flex-shrink:0;gap:4px;padding:8px 10px;display:flex}.lv-hand-queue-item{align-items:center;gap:8px;font-size:.8125rem;display:flex}.lv-hand-queue-pos{color:var(--amber);min-width:16px;font-weight:800}.lv-hand-queue-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.lv-hand-queue-x{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:2px 6px;font-size:1rem;line-height:1}.lv-hand-queue-x:hover{background:var(--input-bg);color:var(--red)}.lv-side-panel{border-left:1px solid var(--border);flex-direction:column;flex-shrink:0;gap:18px;width:320px;padding:14px;display:flex;overflow-y:auto}.lv-panel-section{flex-direction:column;gap:10px;display:flex}.lv-panel-section-head{color:var(--text-muted);justify-content:space-between;align-items:center;gap:10px;font-size:.8125rem;font-weight:700;display:flex}.lv-roster-panel-list{flex-direction:column;gap:2px;display:flex}.lv-roster-panel-item{border-radius:8px;flex-wrap:wrap;align-items:center;gap:6px;padding:6px 8px;font-size:.8125rem;display:flex}.lv-roster-panel-item:hover{background:var(--input-bg)}.lv-roster-panel-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:60px;overflow:hidden}.lv-student-count{border:1px solid var(--border);background:var(--card);color:var(--text-muted);border-radius:999px;align-items:center;min-height:40px;padding:8px 16px;font-size:.8125rem;font-weight:600;display:inline-flex}.lv-poll-panel{border:1px solid var(--border);background:var(--card);border-radius:12px;flex-direction:column;gap:10px;padding:14px;display:flex}.lv-poll-current{flex-direction:column;gap:10px;display:flex}.lv-poll-question{font-size:.9375rem;font-weight:700}.lv-poll-options{flex-direction:column;gap:6px;display:flex}.lv-poll-option-btn{border:1px solid var(--border);background:var(--input-bg);color:var(--text);text-align:left;cursor:pointer;border-radius:10px;padding:10px 14px;font-size:.875rem}.lv-poll-option-btn:hover{border-color:var(--primary)}.lv-poll-results{flex-direction:column;gap:8px;display:flex}.lv-poll-result-row{align-items:center;gap:8px;font-size:.8125rem;display:flex}.lv-poll-result-label{text-overflow:ellipsis;white-space:nowrap;flex:0 0 30%;min-width:0;overflow:hidden}.lv-poll-bar-track{background:var(--surface-muted);border-radius:999px;flex:1;height:10px;overflow:hidden}.lv-poll-bar{background:var(--primary);border-radius:999px;height:100%;display:block}.lv-poll-result-pct{color:var(--text-muted);font-variant-numeric:tabular-nums;flex:none}.lv-poll-staff-controls{flex-wrap:wrap;gap:8px;display:flex}.lv-poll-create{flex-direction:column;gap:8px;display:flex}.lv-poll-create-input{border:1px solid var(--border);background:var(--input-bg);color:var(--text);border-radius:8px;padding:8px 12px;font-size:.875rem}.lv-teacher-drawer{flex-direction:column;gap:10px;display:flex}.lv-tp-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.lv-tp-title{font-size:1rem;font-weight:700}.lv-tp-close{border:1px solid var(--border);background:var(--card);color:var(--text);cursor:pointer;border-radius:8px;padding:6px 12px;font-size:.8125rem}.lv-tp-body{flex-direction:column;flex:1;gap:14px;min-height:0;display:flex;overflow-y:auto}.lv-tp-roster{flex-direction:column;gap:4px;display:flex}.lv-tp-roster-row{text-align:left;cursor:pointer;width:100%;color:inherit;font:inherit;background:0 0;border:none;border-radius:10px;align-items:center;gap:10px;padding:8px 6px;display:flex}.lv-tp-roster-row:hover{background:var(--input-bg)}.lv-tp-roster-row-active{background:var(--primary-soft)}.lv-tp-roster-row-faded{opacity:.55}.lv-tp-roster-avatar{object-fit:cover;border-radius:50%;flex-shrink:0;width:26px;height:26px}.lv-tp-roster-avatar-empty{background:var(--primary-soft);color:var(--primary);place-items:center;font-size:.75rem;font-weight:700;display:grid}.lv-tp-roster-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:.875rem;overflow:hidden}.lv-tp-left-tag{color:var(--text-muted);flex-shrink:0;font-size:.6875rem}.lv-tp-subhead{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin-top:4px;font-size:.75rem;font-weight:700}.lv-tp-muted{color:var(--text-muted);font-size:.875rem}.lv-tp-hint{padding:12px 0}.lv-tp-error{color:var(--red);font-size:.8125rem}.lv-tp-profile{border-top:1px solid var(--border);flex-direction:column;gap:12px;padding-top:12px;display:flex}.lv-tp-profile-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.lv-tp-name{font-size:.9375rem;font-weight:700}.lv-tp-sub{color:var(--text-muted);font-size:.75rem}.lv-tp-headline{font-size:1.375rem;font-weight:800}.lv-tp-facts{color:var(--text-muted);flex-direction:column;gap:3px;font-size:.8125rem;display:flex}.lv-tp-last5{flex-direction:column;gap:4px;display:flex}.lv-tp-last5-row{align-items:center;gap:8px;padding:4px 0;font-size:.8125rem;display:flex}.lv-tp-last5-pct{min-width:42px;font-weight:800}.lv-tp-last5-type{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.sub-btn:not(.secondary):not(.danger):hover:not(:disabled){background:var(--primary-hover);box-shadow:var(--primary-shadow)}.sub-btn.secondary:hover:not(:disabled),.reveal-btn:hover:not(:disabled){box-shadow:inset 0 0 0 1px var(--primary)}.sub-btn.danger:hover:not(:disabled){box-shadow:0 0 0 3px var(--red-soft)}.sub-btn:disabled{opacity:.6;box-shadow:none}.day-tab:hover:not(.active):not(.locked){border-color:var(--primary);color:var(--primary)}.solve-input,.vs2-input,.ls-input,.ldr-input,.l3w-input,.t3l-answer,.l1hw-input,.l1qr-input{min-height:44px;font-size:1rem;line-height:1.5;transition:border-color .16s}.t3l-answer{border-color:var(--input-border)}.rf-tabs,.ldr-actions{flex-wrap:wrap}.rf-tabs .pill,.vs2-pill,.reveal-btn,.bt-btn,.bt-ghost,.cts-btn,.ch-rf-btn{min-height:40px}.table-scroll,.bl-board-scroll{overscroll-behavior-x:contain;scrollbar-width:thin;max-width:100%;overflow-x:auto}.table-scroll{margin-bottom:20px}.table-scroll>table{min-width:520px;margin-bottom:0}.bl-board-scroll .bl-head,.bl-board-scroll .bl-row{grid-template-columns:32px minmax(120px,1fr) 62px 72px 62px 62px;min-width:540px}.bl-board-scroll .bl-pinned{min-width:540px}.sc-stat{border:1px solid var(--border);box-shadow:var(--shadow)}.l3p-card-live:hover{box-shadow:var(--shadow-raised)}.l1-day,.l3w-week,.wr-card,.bt-card,.t3l-card{border-radius:var(--radius)}.l1-day-head:hover{background:var(--input-bg)}.l1-item-title,.l3w-text,.ldr-vocab-fr{overflow-wrap:anywhere}.lsr-bars,.monday-bars{padding-bottom:8px;overflow-x:auto}.lsr-bar-col{flex-shrink:0}.monday-bars{align-items:flex-end;gap:10px;height:140px;margin-bottom:16px;padding-top:8px;display:flex}@media (width<=900px){.sidebar{display:none}.main{margin-left:0}.search{display:none}.card{padding:16px}.day-tabs{-webkit-overflow-scrolling:touch;flex-wrap:nowrap;padding-bottom:4px;overflow-x:auto}.day-tab{flex:none}.timer-bar{flex-direction:column;align-items:flex-start;gap:10px}.cl-date{width:100%}}@media (width<=640px){.cl-session{flex-direction:column;align-items:flex-start;gap:2px}}@media (width<=900px){.lb-teacher-grid{grid-template-columns:1fr}}@media (width<=560px){.qr-input-row{grid-template-columns:1fr;gap:4px}.qr-row{grid-template-columns:1fr;gap:2px}.qr-pair{grid-template-columns:1fr;gap:0}.qr-pair .qr-input-row.qr-narrow{grid-template-columns:96px minmax(0,1fr)}.qr-input-row.qr-short{grid-template-columns:1fr 72px}.qr-cell{width:52px}}@media (width<=640px){.t3l-stats{grid-template-columns:repeat(2,1fr)}}@media (width<=900px){.l1hw-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=600px){.l1hw-grid{grid-template-columns:1fr}.l1hw-frame{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=560px){.bl-head,.bl-row{grid-template-columns:28px 1fr 52px 52px 46px 52px;font-size:.8125rem}}@media (width<=1200px) and (width>=901px){.content{padding:24px}.cl-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-grid{grid-template-columns:minmax(0,1fr)}.dashboard-header{align-items:flex-start}}@media (width<=900px){.content{padding:24px 20px 112px}.topbar{min-height:68px;padding:12px 20px}.topbar-right .mobile-signout{display:grid}.bottom-nav{z-index:50;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:var(--input-border) var(--card);background:var(--card);border-top:1px solid var(--border);padding:8px max(8px, env(safe-area-inset-right)) calc(8px + env(safe-area-inset-bottom)) max(8px, env(safe-area-inset-left));gap:4px;display:flex;position:fixed;inset:auto 0 0;overflow-x:auto}.bottom-nav a{min-height:58px;color:var(--text-muted);white-space:nowrap;border-radius:10px;flex-direction:column;flex:1 0 84px;justify-content:center;align-items:center;gap:5px;padding:6px;font-size:.75rem;font-weight:600;text-decoration:none;display:flex}.bottom-nav a.active{color:var(--primary);background:var(--primary-soft)}.bottom-nav a:focus-visible{outline-offset:-3px}.dashboard-grid{grid-template-columns:minmax(0,1fr)}.cl-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-header{flex-wrap:wrap}.lv-shell{height:calc(100dvh - 204px)}}@media (width<=600px){html{scroll-padding-top:82px}.content{padding:22px 16px 112px}.topbar{gap:10px;padding:10px 16px}.topbar-right{gap:8px}.context-label,.context-separator,.profile-summary{display:none}.context-current{font-size:.8125rem}.dashboard-header{gap:18px;margin-bottom:24px}.dashboard-cta{justify-content:space-between;width:100%}.cl-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.cl-stat{padding:16px}.cl-stat:last-child{grid-column:1/-1;grid-template-columns:34px 1fr auto;align-items:center;gap:12px;display:grid}.cl-stat:last-child .stat-icon{margin:0}.cl-stat:last-child .stat-label{grid-area:1/2;margin:0}.cl-stat:last-child .stat-value{grid-area:1/3}.wp-card{padding:24px 20px}.dashboard-week,.dashboard-grid,.dashboard-exam{margin-bottom:20px}.dashboard-exam{align-items:flex-start}.exam-controls{width:100%}.exam-controls .solve-input{flex:1;width:0}.cl-checks{gap:8px 16px}.cl-check{min-height:36px}.vs2-header{flex-wrap:wrap;gap:8px}.vs2-row{grid-template-columns:minmax(64px,.6fr) minmax(0,1.4fr);gap:6px 10px;display:grid}.vs2-pronoun{width:auto}.vs2-input{width:100%}.vs2-correction{grid-column:2}.mt-row{grid-template-columns:minmax(0,1fr) 48px;gap:6px 12px;padding:12px 0;display:grid}.mt-label,.mt-detail{width:auto}.mt-label{grid-area:1/1}.mt-pct{grid-area:1/2}.mt-bar{grid-area:2/1/auto/-1}.mt-detail{text-align:left;grid-column:1/-1}.sc-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.sc-create>input{flex-basis:100%}.sc-price-wrap,.sc-create-btn{flex:1}.lsr-head{flex-wrap:wrap;gap:20px}.ls-progress-row,.lsr-week-head,.tpp-tag-row,.l1-item,.l3w-week-head,.ldr-vocab-item{flex-wrap:wrap;gap:10px}.l1-day-head{padding:14px 12px}.l1-day-right{flex-shrink:0;gap:6px}.l1-day-count{text-align:right;max-width:48px}.tpp-tag-name{overflow-wrap:anywhere;min-width:0}.sub-item{flex-wrap:wrap;gap:10px}.lb-avatar{display:none}.lb-row{gap:6px;padding:10px 8px}.lb-badge{width:22px;height:22px}.lb-name{min-width:50px;font-size:.8125rem}.lb-col,.lb-metric{flex:0 0 38px;width:38px}.lb-col-overall,.lb-overall{flex:0 0 46px;width:46px}.lb-cols{gap:6px}.lb-you-tag{margin-left:0;display:block}.login-card{padding:36px 24px}.viewas-banner{flex-wrap:wrap;padding:10px 16px}.lv-side-panel{z-index:40;width:auto;padding:16px;padding-top:max(16px, env(safe-area-inset-top));padding-bottom:max(16px, env(safe-area-inset-bottom));background:var(--card);border-left:none;border-radius:0;position:fixed;inset:0}.lv-controls-title{display:none}.lv-icon-btn{width:40px;height:40px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.trk-page{width:100%;min-width:0;max-width:1080px;margin:0 auto}.trk-header{margin-bottom:22px}.trk-title{color:var(--text);margin:0 0 6px;font-size:1.75rem}.trk-subtitle{color:var(--text-muted);margin:0;font-size:.9375rem}.trk-tabs{background:var(--surface-muted);border:1px solid var(--border);border-radius:12px;gap:4px;margin-bottom:18px;padding:4px;display:inline-flex}.trk-tab{min-height:42px;color:var(--text-muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:9px;padding:9px 18px;font-size:.875rem;font-weight:700}.trk-tab:hover{color:var(--text)}.trk-tab.active{background:var(--card);color:var(--primary);box-shadow:var(--shadow)}.trk-tab:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.trk-panel{width:100%;min-width:0;min-height:260px}.trk-empty{text-align:center;border:1px dashed var(--input-border);border-radius:var(--radius);background:var(--card);place-items:center;min-height:220px;padding:32px;display:grid}.trk-empty h3{color:var(--text);margin:0 0 8px}.trk-empty p{max-width:460px;color:var(--text-muted);margin:0;line-height:1.6}.trk-error{color:var(--red)}.trk-weight{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);width:100%;min-width:0;max-width:100%;box-shadow:var(--shadow);padding:24px}.trk-weight-head{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:20px;display:flex}.trk-weight-head h3{color:var(--text);margin:0 0 5px;font-size:1.25rem}.trk-weight-head p{color:var(--text-muted);margin:0;font-size:.875rem}.trk-target{background:var(--green-soft);color:var(--green);border-radius:999px;flex-shrink:0;padding:7px 11px;font-size:.8125rem;font-weight:700}.trk-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:22px;display:grid}.trk-metric{border:1px solid var(--border);background:var(--input-bg);border-radius:12px;min-width:0;padding:14px}.trk-metric-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px;font-size:.75rem;font-weight:700;display:block}.trk-metric strong{color:var(--text);font-size:1.25rem;display:block}.trk-metric small{color:var(--text-muted);overflow-wrap:anywhere;margin-top:3px;display:block}.trk-metric .trk-positive{color:var(--green)}.trk-metric .trk-negative{color:var(--red)}.trk-chart{width:100%;min-width:0;max-width:100%;height:390px;overflow-x:clip}.trk-chart>.recharts-responsive-container{min-width:0;max-width:100%}.trk-chart-note{color:var(--text-muted);margin:8px 0 0;font-size:.75rem;line-height:1.5}@media (width<=760px){.trk-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.trk-weight-head{flex-direction:column}.trk-chart{height:340px}}@media (width<=600px){.trk-page{max-width:100%;overflow-x:clip}.trk-title{font-size:1.5rem}.trk-tabs{width:100%;display:flex}.trk-tab{flex:1}.trk-empty{min-height:190px;padding:24px 18px}.trk-weight{padding:18px 12px}.trk-weight-head>div:first-child{min-width:0;max-width:100%}.trk-weight-head p{overflow-wrap:anywhere}.trk-target{white-space:normal;max-width:100%}.trk-metrics{gap:8px}.trk-metric{padding:12px 10px}.trk-chart{height:310px}}@media (width<=380px){.trk-metrics{grid-template-columns:minmax(0,1fr)}.trk-chart{height:290px}}.bill-stack{flex-direction:column;gap:18px;display:flex}.bill-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.bill-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:22px}.bill-card-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.bill-card-head h3{color:var(--text);margin:0 0 4px;font-size:1.125rem}.bill-card-head p,.bill-muted{color:var(--text-muted);margin:0;font-size:.875rem;line-height:1.5}.bill-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:16px;display:grid}.bill-form-grid label{color:var(--text-muted);flex-direction:column;gap:6px;font-size:.75rem;font-weight:700;display:flex}.bill-form-grid input,.bill-form-grid select{box-sizing:border-box;border:1px solid var(--input-border);background:var(--input-bg);width:100%;min-height:44px;color:var(--text);font:inherit;border-radius:10px;padding:10px 12px}.bill-form-grid input:focus,.bill-form-grid select:focus{outline:3px solid var(--focus-ring);outline-offset:1px}.bill-wide{grid-column:1/-1}.bill-primary,.bill-secondary,.bill-paid,.bill-remove,.bill-filters button{min-height:40px;font:inherit;cursor:pointer;border-radius:9px;padding:8px 14px;font-size:.8125rem;font-weight:700}.bill-primary,.bill-paid{background:var(--primary);color:var(--on-primary);border:0}.bill-secondary,.bill-filters button{border:1px solid var(--input-border);background:var(--card);color:var(--text)}.bill-remove{background:var(--red-soft);color:var(--red);border:0}.bill-primary:disabled,.bill-paid:disabled,.bill-remove:disabled{opacity:.55;cursor:default}.bill-account-list{flex-wrap:wrap;gap:10px;display:flex}.bill-account{border:1px solid var(--border);background:var(--input-bg);min-width:190px;color:var(--text);cursor:pointer;border-radius:10px;justify-content:space-between;align-items:center;gap:20px;padding:12px 14px;display:flex}.bill-account span{color:var(--text-muted)}.bill-filters{gap:7px;margin-bottom:8px;padding-bottom:10px;display:flex;overflow-x:auto}.bill-filters button{white-space:nowrap;flex:none}.bill-filters button.active{border-color:var(--primary);background:var(--primary-soft);color:var(--primary)}.bill-list{flex-direction:column;display:flex}.bill-row{border-bottom:1px solid var(--border);grid-template-columns:150px minmax(0,1fr) 120px auto;align-items:center;gap:16px;padding:16px 0;display:grid}.bill-row:last-child{border-bottom:0}.bill-row.overdue .bill-date span{color:var(--red)}.bill-date span{color:var(--primary);text-transform:uppercase;font-size:.75rem;font-weight:800;display:block}.bill-date strong{color:var(--text);margin-top:3px;font-size:.875rem;display:block}.bill-details{min-width:0}.bill-name-line{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.bill-name-line h4{color:var(--text);margin:0;font-size:1rem}.bill-name-line span{background:var(--surface-muted);color:var(--text-muted);border-radius:999px;padding:3px 8px;font-size:.6875rem;font-weight:700}.bill-details p{color:var(--text-muted);overflow-wrap:anywhere;margin:5px 0 0;font-size:.8125rem}.bill-amount{color:var(--text);text-align:right;font-size:1.05rem}.bill-actions{gap:7px;display:flex}.bill-message{border-radius:10px;justify-content:space-between;align-items:center;gap:14px;padding:12px 14px;font-size:.875rem;font-weight:700;display:flex}.bill-message.success{background:var(--green-soft);color:var(--green)}.bill-message.error{background:var(--red-soft);color:var(--red)}.bill-message button{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0}@media (width<=900px){.bill-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.bill-row{grid-template-columns:130px minmax(0,1fr) 100px}.bill-actions{grid-column:2/-1;justify-content:flex-end}}@media (width<=600px){.bill-summary,.bill-form-grid{grid-template-columns:minmax(0,1fr)}.bill-wide{grid-column:auto}.bill-card{padding:18px 14px}.bill-card-head{flex-direction:column;align-items:stretch}.bill-secondary{width:100%}.bill-row{grid-template-columns:minmax(0,1fr) auto;gap:9px 12px}.bill-date{grid-column:1}.bill-amount{grid-area:1/2}.bill-details{grid-column:1/-1}.bill-actions{grid-column:1/-1;justify-content:stretch}.bill-actions button{flex:1}.bill-account{width:100%}}.bill-ai textarea{box-sizing:border-box;resize:vertical;border:1px solid var(--input-border);background:var(--input-bg);width:100%;min-height:112px;color:var(--text);font:inherit;border-radius:11px;padding:13px 14px;line-height:1.5}.bill-ai textarea:focus{outline:3px solid var(--focus-ring);outline-offset:1px}.bill-ai-model{background:var(--primary-soft);color:var(--primary);border-radius:999px;flex:none;padding:6px 10px;font-size:.75rem;font-weight:700}.bill-ai-actions{justify-content:space-between;align-items:center;gap:14px;margin-top:12px;display:flex}.bill-ai-actions small{color:var(--text-muted)}.bill-preview{border-top:1px solid var(--border);margin-top:22px;padding-top:20px}.bill-preview-head{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:12px;display:flex}.bill-preview-head h4{color:var(--text);margin:0 0 4px}.bill-preview-head p{color:var(--text-muted);margin:0;font-size:.8125rem}.bill-preview-row{border-top:1px solid var(--border);grid-template-columns:1.4fr .7fr 1fr 1fr;gap:10px;padding:14px 0;display:grid}.bill-preview-row label{color:var(--text-muted);flex-direction:column;gap:5px;font-size:.6875rem;font-weight:700;display:flex}.bill-preview-row input,.bill-preview-row select{box-sizing:border-box;border:1px solid var(--input-border);background:var(--input-bg);width:100%;min-height:40px;color:var(--text);font:inherit;border-radius:9px;padding:8px 10px}.bill-preview-notes{grid-column:span 3}.bill-manual summary{color:var(--primary);cursor:pointer;font-weight:700}.bill-manual .bill-form{margin-top:20px}@media (width<=760px){.bill-preview-row{grid-template-columns:repeat(2,minmax(0,1fr))}.bill-preview-notes{grid-column:1/-1}}@media (width<=600px){.bill-ai-actions,.bill-preview-head{flex-direction:column;align-items:stretch}.bill-preview-row{grid-template-columns:minmax(0,1fr)}.bill-preview-notes{grid-column:auto}}.diet-stack{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);width:100%;min-width:0;box-shadow:var(--shadow);padding:24px}.diet-heading{margin-bottom:18px}.diet-heading h3{color:var(--text);margin:0 0 5px;font-size:1.25rem}.diet-heading p{color:var(--text-muted);margin:0;font-size:.875rem}.diet-target-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.diet-target-card{border:1px solid var(--input-border);background:var(--input-bg);border-radius:14px;min-width:0;padding:20px}.diet-target-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:10px;font-size:.75rem;font-weight:800;display:block}.diet-target-card strong{color:var(--text);align-items:baseline;gap:5px;font-size:2.25rem;line-height:1;display:flex}.diet-target-card strong small{color:var(--primary);font-size:1.125rem}.diet-target-period{color:var(--primary);margin-top:10px;font-size:.8125rem;font-weight:700;display:block}@media (width<=760px){.diet-target-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=600px){.diet-stack{padding:18px 14px}.diet-target-grid{grid-template-columns:minmax(0,1fr)}}.ops-alerts{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);margin:12px 0 24px;padding:16px 18px}.ops-alerts-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.ops-alerts-head h3{align-items:center;gap:8px;margin:0;display:flex}.ops-count{background:var(--red-soft);color:var(--red);border-radius:999px;padding:2px 10px;font-size:.8125rem;font-weight:700}.ops-toggle{color:var(--text-muted);align-items:center;gap:6px;font-size:.875rem;display:flex}.ops-error{color:var(--red)}.ops-empty{color:var(--text-muted);margin:10px 0 0}.ops-list{flex-direction:column;gap:8px;margin:12px 0 0;padding:0;list-style:none;display:flex}.ops-item{border:1px solid var(--border);border-left:4px solid var(--red);background:var(--surface-muted);border-radius:10px}.ops-item.ops-warn{border-left-color:var(--amber)}.ops-item.ops-resolved{opacity:.65}.ops-row{align-items:center;gap:10px;padding:8px 10px;display:flex}.ops-main{text-align:left;min-width:0;color:var(--text);cursor:pointer;font:inherit;background:0 0;border:0;flex:1;grid-template-columns:auto auto 1fr;gap:4px 10px;padding:0;display:grid}.ops-main:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;border-radius:6px}.ops-sev{text-transform:uppercase;color:var(--red);font-size:.75rem;font-weight:700}.ops-warn .ops-sev{color:var(--amber)}.ops-kind{color:var(--text);font-size:.8125rem;font-weight:600}.ops-when{color:var(--text-muted);justify-self:end;font-size:.8125rem}.ops-msg{overflow-wrap:anywhere;grid-column:1/-1;font-size:.9rem}.ops-resolve{background:var(--primary);color:var(--on-primary);font:inherit;cursor:pointer;border:0;border-radius:8px;flex-shrink:0;padding:6px 12px;font-size:.8125rem;font-weight:600}.ops-resolve:hover{background:var(--primary-hover)}.ops-resolve:disabled{opacity:.6;cursor:default}.ops-done{color:var(--green);flex-shrink:0;font-size:.8125rem;font-weight:600}.ops-detail{background:var(--input-bg);color:var(--text);border:1px solid var(--border);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:8px;max-height:280px;margin:0 10px 10px;padding:10px;font-size:.75rem;overflow:auto}@media (width<=600px){.ops-row{flex-direction:column;align-items:stretch}.ops-main{grid-template-columns:auto 1fr}.ops-when{grid-column:1/-1;justify-self:start}}html[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#141521;--card:#1e2030;--surface-muted:#2a2d40;--input-bg:#191b29;--primary:#beadff;--primary-hover:#d1c5ff;--primary-soft:#352c50;--on-primary:#21183d;--text:#eeeff8;--text-muted:#adb4cc;--border:#383c52;--input-border:#68728f;--green:#7fe0af;--green-soft:#193c30;--red:#ffa0af;--red-soft:#442633;--amber:#f5cf7f;--amber-soft:#423620;--l1-article:#ff8cc6;--on-status:#171d24;--nav-bg:#191625;--nav-text:#d0cbe4;--nav-muted:#aca5c7;--nav-hover:#302b43;--nav-active:#c8b8ff;--nav-active-text:#28194f;--feature-bg:#352852;--feature-text:#fff;--feature-muted:#d4c9ec;--feature-track:#5b4b7b;--feature-fill:#c6b0ff;--chart-secondary:#9f92de;--focus-ring:#c8b8ff;--shadow:0 3px 16px #0000001a;--shadow-raised:0 12px 32px #00000038;--primary-shadow:0 4px 12px #0000001f}.content.content-live{min-height:0;padding-bottom:0}.lv-page{min-width:0;max-width:none}.lv-page .lv-shell{height:var(--lv-height,calc(100dvh - 142px));isolation:isolate;background:var(--bg);border-color:color-mix(in srgb, var(--primary) 25%, var(--border));min-height:0;position:relative}.lv-shell[hidden],.lv-shell [hidden]{display:none!important}.lv-shell :is(button,select,textarea,input):focus-visible{outline-offset:-3px}.lv-cockpit{background:var(--card);border-bottom:1px solid var(--border);flex-direction:column;flex-shrink:0;gap:10px;padding:12px 16px;display:flex}.lv-room-status{align-items:center;gap:9px;min-width:0;font-size:.8rem;display:flex}.lv-room-status>strong{color:var(--text);white-space:nowrap;font-size:.9rem}.lv-live-dot{background:var(--green);border-radius:50%;flex:0 0 7px;height:7px}.lv-status-label,.lv-awake-label{color:var(--text-muted);font-size:.72rem}.lv-awake-label{margin-left:auto}.lv-recording-label{color:var(--red);align-items:center;gap:4px;font-size:.73rem;font-weight:700;display:inline-flex}.lv-teaching-actions{align-items:center;gap:8px;min-width:0;display:flex}.lv-speaker-chip{border:1px solid var(--green-soft);background:var(--green-soft);color:var(--green);cursor:pointer;border-radius:10px;align-items:center;gap:7px;min-width:0;max-width:38%;padding:8px 10px;font-size:.8rem;font-weight:700;display:flex}.lv-speaker-chip span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.lv-speaker-chip:disabled{color:var(--text-muted);background:var(--surface-muted);border-color:var(--border);cursor:default}.lv-evaluate-btn{border:1px solid var(--primary);min-width:0;color:var(--on-primary);background:var(--primary);cursor:pointer;border-radius:10px;align-items:center;gap:7px;padding:8px 12px;font-size:.83rem;font-weight:700;display:inline-flex}.lv-evaluate-btn span{white-space:nowrap;text-overflow:ellipsis;opacity:.9;max-width:125px;font-weight:500;overflow:hidden}.lv-mute-all{white-space:nowrap;margin-left:auto;font-size:.75rem}.lv-stage-wrap{gap:6px;padding:9px}.lv-stage{min-width:0}.lv-grid{place-content:flex-start}.lv-tile{padding:5px}.lv-tile-surface{background:var(--primary-soft);border:2px solid #0000;border-radius:13px;width:100%;height:100%;transition:border-color .14s,box-shadow .14s;position:relative;overflow:hidden}.lv-tile-video{object-fit:cover;border-radius:10px;width:100%;height:100%}.lv-tile-fallback{background:var(--primary-soft);place-items:center;width:100%;height:100%;padding:18px 10px 38px;display:grid}.lv-avatar{object-fit:cover;border:3px solid var(--card);border-radius:50%;width:clamp(40px,5vw,76px);height:clamp(40px,5vw,76px)}.lv-avatar-initial{background:var(--card);color:var(--primary);place-items:center;font-size:clamp(1.15rem,2.5vw,2rem);font-weight:750;display:grid}.lv-tile-speaking .lv-tile-video,.lv-tile-speaking .lv-tile-photo,.lv-tile-speaking .lv-tile-empty{box-shadow:none}.lv-tile-speaking .lv-tile-surface{border-color:var(--green)}.lv-tile-primary .lv-tile-surface{border-color:var(--green);box-shadow:0 0 0 2px var(--green-soft)}.lv-tile-selected .lv-tile-surface{outline:2px solid var(--primary);outline-offset:-6px}.lv-tile-state{pointer-events:none;z-index:2;flex-wrap:wrap;align-items:center;gap:4px;display:flex;position:absolute;top:6px;left:6px;right:6px}.lv-speaker-label,.lv-hand-label,.lv-selected-label{border-radius:6px;align-items:center;gap:4px;padding:2px 6px;font-size:.62rem;font-weight:800;line-height:1.5;display:inline-flex}.lv-speaker-label{background:var(--green-soft);color:var(--green)}.lv-hand-label{background:var(--amber-soft);color:var(--amber)}.lv-selected-label{background:var(--primary);color:var(--on-primary);margin-left:auto}.lv-tile-label{background:var(--nav-bg);color:var(--feature-text);pointer-events:none;border-radius:0;align-items:center;gap:6px;min-height:32px;padding:7px 9px;display:flex;position:absolute;inset:auto 0 0}.lv-tile-label>strong{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:clamp(.65rem,1vw,.88rem);overflow:hidden}.lv-tile-primary .lv-tile-label>strong{font-weight:850}.lv-tile-badge{background:var(--feature-track);color:var(--feature-text);font-size:.55rem}.lv-tile-mic{color:var(--feature-text);background:0 0;gap:4px;padding:0;display:inline-flex;position:static}.lv-tile-mic-off{color:var(--feature-muted)}.lv-mic-bar{background:var(--feature-track)}.lv-mic-bar.on{background:var(--feature-fill)}.lv-tile-select{cursor:pointer;z-index:3;background:0 0;border:0;border-radius:10px;width:100%;height:100%;position:absolute;inset:0}.lv-tile-select:hover{background:color-mix(in srgb, var(--primary) 5%, transparent)}.lv-tile-select:focus-visible{outline:3px solid var(--primary);outline-offset:-3px}.lv-hand-queue{border-color:var(--amber-soft);flex-wrap:nowrap;flex-shrink:0;max-height:46px;margin:0;padding:5px 8px;display:flex;overflow-x:auto}.lv-hand-queue-item{flex:none;gap:5px;padding-right:9px}.lv-hand-queue-name{color:var(--text);cursor:pointer;background:0 0;border:0;max-width:140px;font-size:.75rem}.lv-hand-queue-name:disabled{cursor:default}.lv-page-nav{flex-shrink:0;gap:9px;height:38px;padding:3px}.lv-page-nav .reveal-btn{padding:5px 8px;font-size:.7rem}.lv-share-header{min-height:23px;color:var(--text);flex-wrap:wrap;align-items:center;gap:6px;padding:2px 5px;font-size:.76rem;display:flex}.lv-share-header strong{color:var(--primary)}.lv-share-body{gap:6px}.lv-share-strip{justify-content:flex-start;gap:0;width:150px;overflow:hidden}.lv-share-strip .lv-tile{aspect-ratio:16/10;min-height:0;max-height:25%}.lv-share-strip .lv-tile-label{min-height:25px;padding:4px}.lv-share-strip .lv-avatar{border-width:2px;width:36px;height:36px;font-size:1rem}.lv-share-strip .lv-tile-fallback{padding:10px 4px 28px}.lv-share-strip .lv-tile-badge,.lv-share-strip .lv-selected-label{display:none}.lv-share-body-stacked .lv-share-strip{flex:0 0 86px;justify-content:center;width:100%;height:86px;max-height:86px;overflow:hidden}.lv-share-body-stacked .lv-share-strip .lv-tile{aspect-ratio:auto;flex:0 145px;width:min(25%,145px);height:86px;max-height:none}.lv-presentation{flex-direction:column;flex:1;gap:4px;min-width:0;min-height:0;display:flex}.lv-share-focus{background:var(--nav-bg);flex:1;width:100%;min-height:0;position:relative}.lv-share-video{object-fit:contain;width:100%;height:100%;min-height:0;display:block}.lv-controls{background:var(--card);justify-content:space-between;gap:10px;padding:9px 12px}.lv-controls-primary,.lv-controls-secondary{align-items:center;gap:7px;display:flex}.lv-controls-secondary{margin-left:auto}.lv-icon-btn{border-radius:12px;flex-shrink:0;transition:background .12s;position:relative}.lv-icon-btn:hover:not(:disabled){background:var(--primary-soft);color:var(--primary)}.lv-icon-btn-off{background:var(--surface-muted);color:var(--text-muted)}.lv-icon-btn-on{color:var(--primary);background:var(--primary-soft);border-color:var(--primary)}.lv-icon-btn-hand{background:var(--amber-soft);color:var(--amber);border-color:var(--amber)}.lv-icon-btn-leave{border-radius:12px;margin-left:0}.lv-icon-btn-leave:hover:not(:disabled),.lv-icon-btn-recording:hover:not(:disabled){color:var(--red);background:var(--red-soft)}.lv-unread{background:var(--primary);min-width:18px;color:var(--on-primary);border-radius:99px;padding:1px 5px;font-size:.65rem;font-weight:800;position:absolute;top:-5px;right:-5px}.lv-popover-more{min-width:255px;max-width:min(340px,100vw - 36px);max-height:55dvh;bottom:54px;left:auto;right:0;overflow-y:auto}.lv-reactions-row{gap:2px;display:flex}.lv-popover-more .reveal-btn{align-items:center;gap:8px;font-size:.8rem;display:flex}.lv-side-panel{background:var(--card);flex-direction:column;flex-shrink:0;gap:0;width:min(370px,38%);min-width:315px;max-width:100%;padding:0;display:flex;overflow:hidden}.lv-tool-tabs{border-bottom:1px solid var(--border);background:var(--primary-soft);flex-shrink:0;align-items:center;gap:1px;padding:8px;display:flex}.lv-tool-tabs>button:not(.lv-icon-btn){color:var(--text-muted);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:7px 8px;font-size:.75rem;font-weight:700}.lv-tool-tabs>button.active{background:var(--card);color:var(--primary);box-shadow:var(--shadow)}.lv-tool-tabs>.lv-icon-btn{margin-left:auto}.lv-tool-content{flex:1;min-height:0;padding:12px;overflow-y:auto}.lv-tool-hint{color:var(--text-muted);font-size:.75rem;line-height:1.5}.lv-roster-panel-name{text-align:left;cursor:pointer;color:var(--text);background:0 0;border:0;padding:5px 0;font-size:.8rem}.lv-roster-panel-name:disabled{cursor:default}.lv-teacher-drawer{gap:10px;height:100%;min-height:0}.lv-tp-title{font-size:.85rem}.lv-student-picker{color:var(--text-muted);flex-direction:column;flex-shrink:0;gap:4px;font-size:.7rem;display:flex}.lv-student-picker select{border:1px solid var(--border);width:100%;color:var(--text);border-radius:9px;padding:8px;font-size:.82rem;font-weight:600}.lv-tp-body{overscroll-behavior:contain;display:block}.lv-tp-profile{border:0;gap:9px;padding-top:0}.lv-tp-profile-head{background:var(--card);z-index:1;border-bottom:1px solid var(--border);padding:5px 0 9px;position:sticky;top:0}.lv-tp-name{font-size:.85rem}.lv-tp-headline{font-size:1.2rem}.lv-tp-profile .card{box-shadow:none;border-radius:10px;padding:12px}.lv-tp-profile .sub-btn{font-size:.82rem}.lv-profile-details{border-top:1px solid var(--border);padding:9px 0}.lv-profile-details summary{cursor:pointer;color:var(--primary);font-size:.8rem;font-weight:700}.lv-profile-details[open] summary{margin-bottom:9px}.lv-chat{flex-direction:column;gap:10px;height:100%;min-height:0;display:flex}.lv-chat-messages{overscroll-behavior:contain;flex:1;min-height:0;overflow-y:auto}.lv-chat-message{border-bottom:1px solid var(--border);padding:10px 0}.lv-chat-message>div{justify-content:space-between;align-items:baseline;gap:10px;font-size:.8rem;display:flex}.lv-chat-message strong{color:var(--primary);overflow-wrap:anywhere}.lv-chat-message time{color:var(--text-muted);flex-shrink:0;font-size:.66rem}.lv-chat-message p{white-space:pre-wrap;overflow-wrap:anywhere;margin-top:4px;font-size:.82rem}.lv-chat-compose{flex-direction:column;gap:6px;display:flex}.lv-chat-compose label{font-size:.75rem;font-weight:700}.lv-chat-compose textarea{resize:none;border:1px solid var(--input-border);border-radius:10px;width:100%;padding:9px;font-size:.85rem}.lv-chat-compose .sub-btn{align-self:flex-end;padding:7px 16px}.lv-dialog{border:1px solid var(--border);background:var(--card);color:var(--text);max-width:min(410px,100vw - 28px);box-shadow:var(--shadow-raised);border-radius:16px;margin:auto;padding:24px}.lv-dialog::backdrop{background:color-mix(in srgb, var(--nav-bg) 65%, transparent)}.lv-dialog h2{font-size:1.2rem}.lv-dialog p{color:var(--text-muted);margin-top:12px;font-size:.85rem}.lv-dialog-actions{justify-content:flex-end;align-items:center;gap:10px;margin-top:20px;display:flex}.lv-annotation-tools{flex-wrap:wrap;flex-shrink:0;gap:3px;display:flex}.lv-annotation-tools button{border:1px solid var(--border);background:var(--card);color:var(--text-muted);cursor:pointer;border-radius:7px;padding:4px 7px;font-size:.7rem}.lv-annotation-tools button.active{border-color:var(--primary);color:var(--primary);background:var(--primary-soft);font-weight:700}.lv-annotation-tools button:disabled{opacity:.5;cursor:default}.lv-annotation-layer{pointer-events:none;position:absolute;overflow:hidden}.lv-annotation-drawing{pointer-events:auto;touch-action:none;cursor:crosshair}.lv-annotation-stroke{stroke:var(--primary);stroke-width:3px;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round;fill:none}.lv-annotation-stroke-halo{stroke:var(--card);stroke-width:7px;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round;fill:none}.lv-annotation-text{fill:var(--primary);stroke:var(--card);paint-order:stroke;stroke-width:4px;font:700 30px sans-serif}.lv-annotation-laser{fill:var(--red);stroke:var(--on-status);stroke-width:2px}.lv-annotation-compose{background:var(--card);z-index:4;border-radius:10px;flex-wrap:wrap;gap:6px;padding:10px;display:flex;position:absolute;bottom:8px;left:8px;right:8px}.lv-annotation-compose label{width:100%;font-size:.72rem;font-weight:700}.lv-annotation-compose input{border:1px solid var(--border);flex:1;width:100px;min-width:70px;padding:7px}.lv-annotation-compose button{padding:6px 8px;font-size:.72rem}.lv-page .lv-shell:fullscreen{border:0;border-radius:0;width:100vw;height:100dvh}.lv-page-mini{z-index:80;width:340px;max-width:calc(100vw - 24px);box-shadow:var(--shadow-raised);border-radius:var(--radius);position:fixed;bottom:20px;right:20px}.lv-page-mini .lv-shell{height:280px}.lv-shell-mini .lv-cockpit{padding:8px 12px}.lv-shell-mini .lv-room-status>strong{font-size:.75rem}.lv-shell-mini .lv-status-label,.lv-shell-mini .lv-awake-label{display:none}.lv-shell-mini .lv-stage-wrap{padding:3px}.lv-shell-mini .lv-mini-hide{display:none}.lv-shell-mini .lv-controls{padding:7px 9px}.lv-shell-mini .lv-return{font-size:.75rem}.lv-shell-mini .lv-share-header{font-size:.65rem}.lv-shell-mini .lv-tile{padding:3px}.lv-floating-room{background:var(--card);height:100dvh;color:var(--text);flex-direction:column;gap:8px;padding:10px;display:flex;overflow:hidden}.lv-floating-room>strong{font-size:.85rem}.lv-floating-room>strong span{color:var(--text-muted);font-weight:400}.lv-floating-video{background:var(--primary-soft);border-radius:10px;flex:1;place-items:center;min-height:0;display:grid}.lv-floating-video video{object-fit:contain;width:100%;height:100%;min-height:0}.lv-floating-room .lv-dialog-actions{justify-content:space-between;gap:6px;margin:0;font-size:.72rem}@media (width<=1100px){.lv-cockpit{padding:9px 12px}.lv-evaluate-btn span{max-width:90px}.lv-controls{gap:7px;padding:8px}.lv-controls-primary,.lv-controls-secondary{gap:4px}.lv-icon-btn{width:39px;height:39px}.lv-icon-btn-sm{width:30px;height:30px}}@media (width<=800px){.lv-side-panel{border:1px solid var(--border);z-index:8;width:min(370px,100% - 16px);min-width:0;box-shadow:var(--shadow-raised);border-radius:13px;position:absolute;inset:105px 8px 70px auto}.lv-page-mini{bottom:100px;right:12px}}@media (width<=600px){.lv-room-status{flex-wrap:wrap;gap:6px}.lv-status-label,.lv-awake-label{display:none}.lv-room-status>strong{font-size:.78rem}.lv-cockpit{gap:7px;padding:7px 9px}.lv-teaching-actions{gap:5px}.lv-speaker-chip{max-width:45%;padding:7px;font-size:.7rem}.lv-evaluate-btn{padding:7px;font-size:.72rem}.lv-evaluate-btn span{display:none}.lv-mute-all{padding:6px;font-size:.68rem}.lv-controls{flex-wrap:wrap;justify-content:center;gap:6px;padding:7px 9px}.lv-controls-primary{flex:1;gap:7px}.lv-controls-secondary{border-bottom:1px solid var(--border);flex:1 0 100%;order:-1;justify-content:flex-end;margin-left:0;padding-bottom:5px}.lv-controls-secondary .lv-icon-btn{width:31px;height:31px}.lv-icon-btn{width:39px;height:39px}.lv-icon-btn-sm{width:28px;height:28px}.lv-stage-wrap{gap:4px;padding:4px}.lv-side-panel{border-radius:12px;width:auto;inset:26% 5px 102px}.lv-tool-tabs{padding:5px}.lv-tool-content{padding:9px}.lv-tile{padding:3px}.lv-tile-label{gap:4px;min-height:26px;padding:5px}.lv-tile-label>strong{font-size:.62rem}.lv-tile-label .lv-tile-badge{display:none}.lv-tile-state{gap:2px;top:3px;left:3px}.lv-speaker-label,.lv-hand-label,.lv-selected-label{padding:1px 4px;font-size:.6rem}.lv-avatar{width:40px;height:40px}.lv-share-body-stacked .lv-share-strip{flex-basis:65px;height:65px;max-height:65px}.lv-share-body-stacked .lv-share-strip .lv-tile{width:33%;height:65px}.lv-share-strip .lv-tile-state{display:none}.lv-share-strip .lv-avatar{width:26px;height:26px;font-size:.8rem}.lv-shell-mini .lv-controls-primary{flex:0}}@media (prefers-reduced-motion:reduce){.lv-shell *,.lv-shell :before,.lv-shell :after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.lv-session-notice{margin-bottom:16px}.lv-session-notice p{margin-bottom:10px}.lv-chat-badge{vertical-align:middle;margin-left:6px;font-size:.62rem}.lv-hand-queue{flex-direction:row;align-items:center;gap:4px 10px}.lv-shell .reveal-btn,.lv-dialog .reveal-btn,.lv-floating-room .reveal-btn{margin-top:0}.lv-page-nav .reveal-btn{min-height:0}.lv-loading .reveal-btn{margin-top:12px}.lv-chat-compose textarea,.lv-student-picker select,.lv-poll-create-input,.lv-device-select,.lv-annotation-compose input{font-size:1rem}@media (width<=800px){.lv-body:has(.lv-side-panel:not([hidden])) .lv-page-nav{justify-content:flex-start;padding-left:8px}}.lv-reaction-layer{pointer-events:none;z-index:3;width:min(250px,100% - 36px);height:0;position:absolute;bottom:52px;left:18px}.lv-reaction-chip{left:0;bottom:calc(var(--lv-react-slot,0) * 42px);box-sizing:border-box;background:var(--card);max-width:100%;min-height:34px;color:var(--text);border:1px solid var(--border);box-shadow:var(--shadow-raised);transform-origin:0;will-change:transform, opacity;border-radius:999px;align-items:center;gap:7px;padding:3px 12px 3px 5px;animation:3s cubic-bezier(.2,.8,.2,1) forwards lv-react-life;display:inline-flex;position:absolute}.lv-reaction-emoji{font-size:1.45rem;line-height:1;animation:.65s cubic-bezier(.34,1.56,.64,1) both lv-react-pop;display:inline-block;position:relative}.lv-reaction-emoji:after{content:"";border:2px solid var(--primary);opacity:0;border-radius:50%;animation:.7s ease-out lv-react-ring;position:absolute;inset:-5px}.lv-reaction-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.8rem;font-weight:700;overflow:hidden}.lv-reaction-count{color:var(--primary);font-variant-numeric:tabular-nums;flex-shrink:0;font-size:.72rem;font-weight:800}@keyframes lv-react-life{0%{opacity:0;transform:translate(-6px,10px)scale(.6)}10%{opacity:1;transform:translate(0)scale(1.05)}18%{transform:translate(0)scale(1)}80%{opacity:1;transform:translateY(-5px)scale(1)}to{opacity:0;transform:translateY(-10px)scale(.97)}}@keyframes lv-react-pop{0%{transform:scale(.2)rotate(0)}45%{transform:scale(1.45) rotate(var(--lv-react-tilt,0deg))}72%{transform:scale(.92) rotate(calc(var(--lv-react-tilt,0deg) * -.5))}to{transform:scale(1)rotate(0)}}@keyframes lv-react-ring{0%{opacity:.7;transform:scale(.4)}to{opacity:0;transform:scale(1.7)}}@media (width<=600px){.lv-reaction-layer{width:min(200px,100% - 16px);bottom:40px;left:8px}.lv-reaction-name{font-size:.72rem}}.lv-shell-mini .lv-reaction-layer{width:calc(100% - 12px);bottom:8px;left:6px}@media (prefers-reduced-motion:reduce){.lv-reaction-chip{animation:3s ease-out forwards lv-react-fade}.lv-reaction-emoji{animation:none}.lv-reaction-emoji:after{display:none}@keyframes lv-react-fade{0%{opacity:0}10%{opacity:1}80%{opacity:1}to{opacity:0}}}.lv-unread-tab{margin-left:6px;position:static}.lv-share-focus{position:relative}.lv-share-zoom-bar{flex-shrink:0;align-items:center;gap:6px;padding:2px 0;display:flex}.lv-share-zoom-bar button{border:1px solid var(--border);background:var(--card);min-width:34px;min-height:34px;color:var(--text);cursor:pointer;border-radius:8px;padding:4px 10px;font-size:.9rem;font-weight:700}.lv-share-zoom-bar button:hover:not(:disabled){background:var(--surface-muted)}.lv-share-zoom-bar button:disabled{opacity:.45;cursor:default}.lv-share-zoom-bar button:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.lv-share-zoom-pct{text-align:center;font-variant-numeric:tabular-nums;min-width:52px;color:var(--text-muted);font-size:.8125rem}.lv-share-zoom-layer{transform-origin:50%;will-change:transform;position:absolute;inset:0}.lv-share-focus.is-zoomed{cursor:grab;touch-action:none}.lv-share-focus.is-zoomed:active{cursor:grabbing}@media (width<=640px){.lv-share-zoom-bar button{min-width:40px;min-height:40px}}.lv-main{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.lv-main>.lv-stage-wrap{flex:auto;min-height:140px}.lv-eval-dock{background:var(--card);border-top:2px solid var(--primary);flex-direction:column;flex:none;height:clamp(240px,46%,520px);min-height:0;padding:10px 14px 0;display:flex;overflow:hidden}.lv-eval-dock .lv-teacher-drawer{flex-direction:column;height:100%;min-height:0;display:flex}.lv-eval-dock .lv-tp-head{flex-shrink:0}.lv-eval-dock .lv-student-picker{flex-direction:row;align-items:center;gap:8px}.lv-eval-dock .lv-student-picker select{width:auto;min-width:220px;max-width:100%}.lv-eval-dock .lv-tp-body{flex:1;min-height:0;padding-bottom:12px;overflow-y:auto}.lv-tp-workspace{grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));align-items:start;gap:14px;padding-top:10px;display:grid}.lv-tp-col{flex-direction:column;gap:9px;min-width:0;display:flex}.lv-tp-col-ai .ail-panel{margin-bottom:0}.lv-evaluate-btn.is-open{box-shadow:0 0 0 3px var(--primary-soft)}.lv-controls-secondary .lv-icon-btn-wrap{gap:inherit}.lv-popover-reactions{min-width:0}@media (width<=800px){.lv-eval-dock{height:58%;padding:8px 9px 0}.lv-eval-dock .lv-student-picker{flex-direction:column;align-items:stretch}.lv-eval-dock .lv-student-picker select{width:100%;min-width:0}}.lv-tile-fallback-photo{justify-content:center;align-items:center;min-height:0;padding:0 0 32px;display:flex;overflow:hidden}.lv-tile-photo{object-fit:contain;-webkit-user-select:none;user-select:none;border-radius:8px;width:auto;max-width:100%;height:auto;max-height:100%;display:block}.lv-share-strip .lv-tile-fallback-photo{padding:0 0 25px}@media (width<=600px){.lv-tile-fallback-photo{padding-bottom:26px}}.lv-chat-link{color:var(--primary);text-underline-offset:2px;overflow-wrap:anywhere;word-break:break-word;text-decoration:underline}.lv-chat-link:hover{color:var(--primary-hover)}.lv-tile-status{vertical-align:middle;border-radius:50%;flex:0 0 22px;justify-content:center;align-items:center;width:22px;height:22px;display:inline-flex}.lv-status-on{background:var(--green-soft);color:var(--green)}.lv-status-off{background:var(--red-soft);color:var(--red)}.lv-tile-mic,.lv-tile-mic-off{align-items:center}.lv-share-strip .lv-tile-status{flex-basis:18px;width:18px;height:18px}.lv-roster-panel-item .lv-tile-status{flex-shrink:0}.lv-icon-btn-off{background:var(--red-soft);color:var(--red);border-color:color-mix(in srgb, var(--red) 40%, var(--border))}.lv-icon-btn-off:hover:not(:disabled){background:var(--red-soft);color:var(--red);border-color:var(--red)}@media (width<=600px){.lv-tile-status{flex-basis:18px;width:18px;height:18px}}.lv-share-main{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.lv-focus-body{flex-direction:row;gap:8px}.lv-focus-main{flex-direction:column;flex:60%;gap:4px;min-width:0;min-height:0;display:flex}.lv-focus-student{flex:0 0 38%;min-width:0;min-height:0;display:flex}.lv-focus-student>.lv-tile{flex:auto;width:100%;height:100%;padding:0;container-type:size}.lv-focus-student .lv-tile-video{object-fit:contain;background:var(--nav-bg)}.lv-focus-student .lv-avatar{width:clamp(32px,40cqh,120px);height:clamp(32px,40cqh,120px);font-size:clamp(1rem,16cqh,2.4rem)}.lv-focus-student .lv-tile-label>strong{font-size:.95rem}.lv-focus-empty{text-align:center;min-height:0;color:var(--text-muted);background:var(--surface-muted);border:1px dashed var(--border);border-radius:14px;flex:1;place-items:center;padding:16px;font-size:.85rem;line-height:1.5;display:grid}.lv-focus-left-label{background:var(--amber-soft);color:var(--amber);border-radius:6px;flex-shrink:0;padding:2px 6px;font-size:.65rem;font-weight:800}.lv-focus-stacked{flex-direction:column}.lv-focus-stacked .lv-focus-main{flex:60%}.lv-focus-stacked .lv-focus-student{flex:0 0 40%}
