.theme-swatch.locked:hover .theme-swatch-dot{opacity:.82}.tutor-stage{position:fixed;inset:0;display:flex;flex-direction:column;color:var(--text-primary);font-family:var(--font-sans);padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);z-index:60;overflow:hidden;isolation:isolate;--tt-accent:var(--text-primary);--tt-on-accent:var(--bg-primary);background:var(--bg-primary)}.tutor-stage:before{inset:-20%;z-index:-2;filter:blur(80px);opacity:.9;background:radial-gradient(28% 32% at 18% 22%,color-mix(in srgb,var(--text-primary) 22%,transparent),transparent 70%),radial-gradient(30% 30% at 82% 30%,color-mix(in srgb,var(--text-primary) 12%,transparent),transparent 70%),radial-gradient(34% 30% at 50% 88%,color-mix(in srgb,var(--text-primary) 16%,transparent),transparent 70%)}.tutor-stage:after,.tutor-stage:before{content:"";position:absolute;pointer-events:none}.tutor-stage:after{inset:0;z-index:-1;-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0);background:radial-gradient(80% 60% at 50% 50%,transparent 40%,color-mix(in srgb,var(--bg-primary) 60%,transparent) 100%)}.tutor-topbar{flex:0 0 auto;height:52px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 12px;border-bottom:1px solid var(--border-subtle);background:color-mix(in srgb,var(--bg-primary) 70%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);z-index:5}.tutor-back{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;color:var(--text-secondary);text-decoration:none}.tutor-back:hover{background:color-mix(in srgb,var(--text-primary) 7%,transparent);color:var(--text-primary)}.tutor-brand{font:600 12px var(--font-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--text-tertiary)}.tutor-lesson-title{font-size:14px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:40vw;padding-left:10px;border-left:1px solid var(--border-subtle);margin-left:4px}.tutor-icon-btn{display:inline-grid;place-items:center;min-width:34px;height:34px;padding:0 8px;border-radius:10px;border:1px solid transparent;background:transparent;color:var(--text-secondary);cursor:pointer;font:600 12px var(--font-sans);transition:background .15s,color .15s,border-color .15s}.tutor-icon-btn:hover{background:color-mix(in srgb,var(--text-primary) 7%,transparent);color:var(--text-primary)}.tutor-icon-btn.on{background:var(--tt-accent);color:var(--tt-on-accent);border-color:var(--tt-accent)}.tutor-icon-btn:disabled{opacity:.45;cursor:default}.tutor-board-wrap{flex:1 1 auto;display:grid;padding:12px 16px 16px}.tutor-stage.is-idle .tutor-board-wrap>.tutor-board{opacity:0;pointer-events:none}.tutor-board-wrap>.tutor-board{width:100%;height:100%;min-height:0;border-radius:22px;border:1px solid color-mix(in srgb,var(--text-primary) 14%,transparent);background:color-mix(in srgb,var(--bg-secondary) 62%,transparent);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);transition:opacity .3s ease;box-shadow:inset 0 1px 0 color-mix(in srgb,var(--text-primary) 10%,transparent),0 40px 80px -40px rgba(0,0,0,.6);overflow:hidden}.tutor-stage.chalk .tutor-board-wrap>.tutor-board{background:#1e2a24}.tutor-intro{position:absolute;inset:0;z-index:3;display:grid;grid-template-columns:minmax(0,720px) minmax(0,320px);grid-gap:40px;gap:40px;align-content:center;justify-content:center;align-items:center;padding:40px;overflow:auto}.tutor-go{width:56px;height:56px;border-radius:18px;display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--text-primary) 14%,transparent);background:color-mix(in srgb,var(--bg-secondary) 55%,transparent);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);color:var(--text-primary);cursor:pointer;transition:transform .12s,background .15s}.tutor-go:hover{background:var(--bg-hover)}.tutor-go:active{transform:scale(.96)}.tutor-go:disabled{opacity:.45;cursor:default}.tutor-go.primary{background:var(--tt-accent);color:var(--tt-on-accent);border-color:var(--tt-accent)}.tutor-caption{position:absolute;left:50%;bottom:22px;transform:translateX(-50%);z-index:2;max-width:min(760px,calc(100% - 40px));padding:12px 18px;border-radius:16px;font-size:16px;line-height:1.45;text-align:center;color:var(--text-primary);border:1px solid color-mix(in srgb,var(--text-primary) 14%,transparent);background:color-mix(in srgb,var(--bg-secondary) 84%,transparent);box-shadow:inset 0 1px 0 color-mix(in srgb,var(--text-primary) 14%,transparent),0 16px 32px -20px rgba(0,0,0,.6)}.tutor-caption.phase-asking{border-color:color-mix(in srgb,var(--tt-accent) 50%,transparent)}.tutor-endbar{position:absolute;left:50%;bottom:20px;transform:translateX(-50%);z-index:3;width:min(760px,calc(100% - 40px));padding:14px 16px;border-radius:18px;display:flex;flex-direction:column;align-items:center;gap:10px;border:1px solid color-mix(in srgb,var(--text-primary) 14%,transparent);background:color-mix(in srgb,var(--bg-secondary) 88%,transparent);box-shadow:inset 0 1px 0 color-mix(in srgb,var(--text-primary) 14%,transparent),0 24px 48px -30px rgba(0,0,0,.6)}.tutor-endbar-question{margin:0;text-align:center;font-size:15px;color:var(--text-primary)}.tutor-endbar-actions{display:flex;flex-wrap:wrap;gap:6px;justify-content:center}.tutor-dock{flex:0 0 auto;display:flex;justify-content:space-between;padding:10px 14px;border-top:1px solid var(--border-subtle);background:color-mix(in srgb,var(--bg-primary) 70%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);flex-wrap:wrap}.tutor-dock,.tutor-mic{align-items:center;gap:10px}.tutor-mic{display:inline-flex;padding:10px 18px 10px 14px;border-radius:999px;border:1px solid color-mix(in srgb,var(--text-primary) 14%,transparent);background:var(--bg-tertiary);color:var(--text-primary);font:600 14px var(--font-sans);cursor:pointer;transition:background .15s}.tutor-mic:hover{background:var(--bg-hover)}.tutor-mic.on{background:var(--tt-accent);color:var(--tt-on-accent);border-color:var(--tt-accent);box-shadow:0 0 0 6px color-mix(in srgb,var(--tt-accent) 18%,transparent)}.tutor-mic:disabled{opacity:.45;cursor:default}@media (max-width:900px){.tutor-intro{grid-template-columns:1fr;align-content:start;padding:20px 16px;gap:18px}.tutor-lesson-title{max-width:30vw}.tutor-board-wrap{padding:8px}.tutor-board-wrap>.tutor-board{border-radius:16px}.tutor-ask-row input,.tutor-board-wrap>.tutor-board,.tutor-dock,.tutor-go,.tutor-shelf-continue,.tutor-shelf-list,.tutor-topbar{backdrop-filter:none;-webkit-backdrop-filter:none}.tutor-stage:before{filter:blur(50px)}}@media (prefers-reduced-motion:reduce){.tutor-go,.tutor-icon-btn,.tutor-mic{transition:none}}.tutor-board-wrap{position:relative;flex:1 1;min-height:0;overflow:hidden}.tutor-board-overlay{position:absolute;inset:0;pointer-events:none}.tutor-voice-down{position:absolute;left:50%;bottom:84px;transform:translateX(-50%);z-index:6;padding:6px 12px;border-radius:999px;border:1px solid color-mix(in srgb,var(--text-primary) 14%,transparent);background:color-mix(in srgb,var(--bg-secondary) 80%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-size:12px;color:var(--text-secondary);white-space:nowrap;pointer-events:none}.tutor-ov{position:absolute}.tutor-ov-text{line-height:1.2;font-weight:500;white-space:nowrap;animation:tutorOvIn .42s ease both}.tutor-ov-text.wiping{-webkit-clip-path:inset(0 100% 0 0);clip-path:inset(0 100% 0 0);animation:tutorWipe var(--wipe-ms,.6s) linear forwards}.tutor-ov-point{transform:translate(-50%,-50%);display:flex;align-items:center;gap:6px;animation:tutorPop .4s cubic-bezier(.2,1.4,.4,1) both}.tutor-ov-dot{width:9px;height:9px;border-radius:50%;box-shadow:0 0 0 4px color-mix(in srgb,currentColor 22%,transparent)}.tutor-ov-plabel{font-size:13px;color:var(--text-tertiary,#8b84a0);white-space:nowrap}@keyframes tutorOvIn{0%{opacity:0}}@media (prefers-reduced-motion:reduce){.tutor-ov-point,.tutor-ov-text{animation-duration:.01ms}.tutor-ov-text.wiping{animation:none;-webkit-clip-path:none;clip-path:none}}.tutor-board-graph{position:absolute;top:4%;right:3%;width:min(42%,460px);height:min(58%,420px);border-radius:14px;overflow:hidden;border:1px solid rgba(255,255,255,.1);background:#0a0a0a;opacity:0;transform:translateX(20px) scale(.98);pointer-events:none;transition:opacity .4s ease,transform .4s cubic-bezier(.2,.9,.3,1)}.tutor-board-graph-host{width:100%;height:100%}.tutor-page-pill{position:absolute;top:12px;right:14px;z-index:3;font-family:var(--font-mono,monospace);font-size:11.5px;color:var(--text-tertiary,#8b84a0);padding:3px 9px;border:1px solid rgba(255,255,255,.1);border-radius:99px;background:rgba(11,9,18,.6)}.tutor-board.flipping .tutor-board-overlay{animation:tutorPageFlip .42s ease both}.tutor-board-wrap{transition:transform 1.6s cubic-bezier(.3,.7,.4,1);will-change:transform}@keyframes tutorPop{0%{opacity:0;transform:translate(-50%,-50%) scale(.4)}}@keyframes tutorPageFlip{0%{opacity:1;transform:translateX(0)}45%{opacity:0;transform:translateX(-26px)}55%{opacity:0;transform:translateX(26px)}to{opacity:1;transform:translateX(0)}}@keyframes tutorWipe{to{-webkit-clip-path:inset(0 -2% 0 0);clip-path:inset(0 -2% 0 0)}}