:root{--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-serif: var(--font-sans);--font-display: var(--font-sans);--font-mono: "JetBrains Mono", "Fira Code", monospace;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--shadow-sm: 0 1px 0 rgba(255,255,255,.04) inset, 0 2px 6px -2px rgba(0,0,0,.4);--shadow-md: 0 1px 0 rgba(255,255,255,.04) inset, 0 12px 24px -12px rgba(0,0,0,.5);--shadow-lg: 0 1px 0 rgba(255,255,255,.05) inset, 0 24px 48px -16px rgba(0,0,0,.6);--max-width: 1200px}[data-theme=dark]{--bg-primary: #0f1017;--bg-secondary: #181b2b;--bg-card: #1c1f32;--bg-hover: #252839;--bg-input: #23263a;--border: #2c2f4c;--border-hover: #3c3f64;--text-primary: #e8eaf0;--text-secondary: #9ca3b8;--text-muted: #6b7394;--accent: #6c63ff;--accent-hover: #7b73ff;--accent-subtle: rgba(108,99,255,.12);--success: #34d399;--success-subtle: rgba(52,211,153,.12);--warning: #fbbf24;--warning-subtle: rgba(251,191,36,.12);--danger: #f87171;--danger-subtle: rgba(248,113,113,.12);--info: #60a5fa;--info-subtle: rgba(96,165,250,.12)}[data-theme=light]{--bg-primary: #f8f9fc;--bg-secondary: #ffffff;--bg-card: #ffffff;--bg-hover: #f0f1f5;--bg-input: #f0f1f5;--border: #e2e4ea;--border-hover: #c8ccd8;--text-primary: #1a1d27;--text-secondary: #5a6178;--text-muted: #8b92a8;--accent: #5b52e0;--accent-hover: #4a42cc;--accent-subtle: rgba(91,82,224,.08);--success: #10b981;--success-subtle: rgba(16,185,129,.08);--warning: #f59e0b;--warning-subtle: rgba(245,158,11,.08);--danger: #ef4444;--danger-subtle: rgba(239,68,68,.08);--info: #3b82f6;--info-subtle: rgba(59,130,246,.08);--shadow-sm: 0 1px 2px rgba(15,17,23,.06), 0 2px 4px -2px rgba(15,17,23,.04);--shadow-md: 0 4px 12px -4px rgba(15,17,23,.1), 0 12px 24px -12px rgba(15,17,23,.08);--shadow-lg: 0 12px 24px -12px rgba(15,17,23,.16), 0 24px 48px -16px rgba(15,17,23,.1)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth;-webkit-font-smoothing:antialiased}body{font-family:var(--font-sans);background:var(--bg-primary);color:var(--text-primary);line-height:1.6;min-height:100vh;overflow-x:hidden}html[data-theme=dark] body{background:radial-gradient(ellipse at 15% 0%,rgba(108,99,255,.07) 0%,transparent 50%),radial-gradient(ellipse at 85% 90%,rgba(60,40,220,.05) 0%,transparent 45%),#0f1017}a{color:var(--accent);text-decoration:none;transition:color var(--transition)}a:hover{color:var(--accent-hover)}.container{max-width:var(--max-width);margin:0 auto;padding:0 24px;overflow-wrap:break-word;word-break:break-word;width:100%;box-sizing:border-box}.page-wrapper{min-height:100vh;display:flex;flex-direction:column}.nav{background:var(--bg-secondary);background:linear-gradient(180deg,color-mix(in srgb,var(--bg-secondary) 92%,transparent),color-mix(in srgb,var(--bg-secondary) 82%,transparent)),linear-gradient(115deg,color-mix(in srgb,var(--accent) 6%,transparent),transparent 44%,color-mix(in srgb,var(--info) 4%,transparent));border-bottom:1px solid color-mix(in srgb,var(--border) 76%,transparent);padding:16px 0;position:sticky;top:0;z-index:100;-webkit-backdrop-filter:blur(18px) saturate(1.08);backdrop-filter:blur(18px) saturate(1.08)}.nav .container{display:flex;align-items:center;justify-content:space-between;gap:16px}.nav-brand{display:flex;align-items:center;gap:12px;font-weight:700;font-size:1.1rem;color:var(--text-primary)}.nav-brand-icon{width:36px;height:36px;border-radius:var(--radius-sm);object-fit:contain}.nav-links{display:flex;gap:8px;align-items:center;list-style:none;flex-wrap:wrap}.nav-links a{padding:8px 14px;border-radius:var(--radius-sm);color:var(--text-secondary);font-size:.9rem;font-weight:500;transition:all var(--transition)}.nav-links a:hover,.nav-links a.active{background:var(--accent-subtle);color:var(--accent)}.nav-links a[data-shell-tier=primary]{font-weight:700}.nav-links a[data-shell-tier=secondary]{opacity:.78}.nav-links a[data-shell-tier=secondary]:hover,.nav-links a[data-shell-tier=secondary].active{opacity:1}.nav-actions{display:flex;gap:8px;align-items:center}.nav-brand,.nav-links,.nav-actions{min-width:0}.nav-brand span,#userInfo{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(min-width:769px)and (max-width:1160px){.nav .container{gap:12px}.nav-brand{flex:1 1 190px;max-width:240px}.nav-links{flex:1 1 auto;flex-wrap:nowrap;justify-content:center}.nav-links a[data-shell-tier=secondary]{display:none}.nav-actions{flex:0 1 auto}#userInfo{max-width:16ch}}.theme-toggle{width:44px;height:44px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-card);background:linear-gradient(145deg,color-mix(in srgb,var(--bg-card) 72%,transparent),color-mix(in srgb,var(--bg-hover) 48%,transparent));color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1.2rem;box-shadow:inset 0 1px color-mix(in srgb,#fff 8%,transparent);-webkit-backdrop-filter:blur(10px) saturate(1.05);backdrop-filter:blur(10px) saturate(1.05);transition:all var(--transition)}.theme-toggle:hover{border-color:var(--border-hover);color:var(--text-primary);background:linear-gradient(145deg,color-mix(in srgb,var(--bg-hover) 68%,transparent),color-mix(in srgb,var(--accent) 10%,transparent))}.page-header{padding:48px 0 32px}.page-header h1{font-size:2.5rem;font-weight:800;letter-spacing:-.025em;line-height:1.1;margin-bottom:12px}.page-header p{color:var(--text-secondary);font-size:1.1rem;max-width:60ch}h2{font-size:1.75rem;font-weight:700;letter-spacing:-.015em;line-height:1.2}h3{font-size:1.25rem;font-weight:600;letter-spacing:-.01em;line-height:1.3}.editorial{font-family:var(--font-serif);font-weight:400;letter-spacing:0}.page-header h1.hero-display,h1.hero-display,.hero-display{font-family:var(--font-display);font-weight:500;font-size:4rem;line-height:1.05;letter-spacing:-.035em;margin-bottom:20px}.hero-lede{font-size:1.25rem;line-height:1.5;color:var(--text-secondary);max-width:56ch;margin-bottom:32px}.home-hero{padding-bottom:14px}body.home-source-first .home-hero{padding-top:clamp(10px,2.5vw,20px)}.home-hero .hero-lede{margin-bottom:0}.learning-pipeline{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:-12px 0 26px;padding-left:12px;border-left:2px solid var(--accent);color:color-mix(in srgb,var(--text-secondary) 68%,var(--accent) 32%);font-size:.88rem;font-weight:700}.home-hero+.learning-pipeline{margin:0 0 28px}body.home-source-first .home-hero+.learning-pipeline{margin-bottom:22px}.learning-pipeline-step{position:relative;min-width:0;display:inline-flex;align-items:center;gap:8px}.learning-pipeline-step:not(:last-child):after{content:"";width:4px;height:4px;border-radius:50%;background:color-mix(in srgb,var(--accent) 70%,transparent);opacity:.72}.learning-pipeline-step:nth-child(3) span{color:var(--accent-hover)}.today-surface{position:relative;overflow:visible;isolation:isolate;width:min(100%,760px);margin:24px auto 34px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.today-surface:before{display:none}.today-intro{display:flex;align-items:flex-start;justify-content:flex-end;gap:0;margin:0}.today-intro>div{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.today-eyebrow{margin:0 0 6px;color:var(--accent);font-size:.8rem;font-weight:800;text-transform:uppercase;letter-spacing:0}.today-title{margin:0;font-size:clamp(1.95rem,4vw,3rem);line-height:1.08;letter-spacing:0}.today-copy{margin:10px 0 0;max-width:58ch;color:var(--text-secondary);font-size:1rem;line-height:1.55}.today-library-count{display:none;flex:0 0 auto;border:1px solid color-mix(in srgb,var(--border) 72%,transparent);border-radius:999px;padding:7px 12px;color:var(--text-secondary);background:color-mix(in srgb,var(--bg-card) 54%,transparent);font-size:.82rem;font-weight:700;box-shadow:none}.today-workspace{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;align-items:stretch}.today-continue-card{position:relative;overflow:hidden;display:flex;flex-direction:column;min-height:320px;text-decoration:none;color:var(--text-primary);border:1px solid color-mix(in srgb,var(--accent) 48%,var(--border-hover) 52%);border-radius:18px;padding:clamp(24px,4.4vw,34px);background:linear-gradient(145deg,color-mix(in srgb,var(--bg-card) 92%,var(--accent) 8%),color-mix(in srgb,var(--bg-secondary) 94%,var(--info) 6%));box-shadow:inset 0 1px color-mix(in srgb,#fff 8%,transparent),0 22px 54px -40px color-mix(in srgb,var(--accent) 76%,transparent);transition:transform var(--transition),border-color var(--transition),box-shadow var(--transition)}.today-continue-card:after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.12;background:linear-gradient(90deg,color-mix(in srgb,var(--accent) 14%,transparent),transparent 38%),repeating-linear-gradient(135deg,color-mix(in srgb,#fff 6%,transparent) 0 1px,transparent 1px 15px);mask-image:linear-gradient(180deg,#000,transparent 90%)}.today-continue-card:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:0 20px 42px -34px color-mix(in srgb,var(--accent) 85%,transparent)}.today-continue-meta{position:relative;z-index:1;display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:14px}.today-card-eyebrow{display:inline-flex;color:var(--accent);font-size:.8rem;font-weight:800;text-transform:uppercase;letter-spacing:0}.today-continue-card h2{position:relative;z-index:1;margin:0;max-width:16ch;font-size:clamp(2.15rem,5vw,3.25rem);line-height:1.04;letter-spacing:0}.today-continue-card p{position:relative;z-index:1;margin:20px 0 0;max-width:34ch;color:var(--text-secondary);font-size:clamp(1.12rem,2.6vw,1.38rem);line-height:1.5}.today-continue-session{display:inline-flex;align-items:center;min-height:31px;margin-top:0;padding:0 12px;border-radius:999px;color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,transparent);font-size:.86rem;font-weight:800;line-height:1.25}.today-continue-session[hidden]{display:none}.today-continue-cta{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;align-self:stretch;margin-top:auto;min-height:66px;padding:0 18px;border-radius:16px;border:1px solid color-mix(in srgb,var(--accent) 52%,transparent);color:#fff;background:linear-gradient(135deg,var(--accent),color-mix(in srgb,var(--accent) 68%,var(--info)));font-weight:800;font-size:1.05rem;box-shadow:0 18px 34px -26px color-mix(in srgb,var(--accent) 90%,transparent)}.next-move-card{--next-move-radius: 14px;--next-move-pad-y: 18px;--next-move-pad-x: 20px;border:1px solid color-mix(in srgb,var(--accent) 34%,var(--border) 66%);border-radius:var(--next-move-radius);background:linear-gradient(135deg,color-mix(in srgb,var(--bg-card) 92%,var(--accent) 6%),color-mix(in srgb,var(--bg-secondary) 94%,var(--success) 4%));box-shadow:0 18px 44px -38px color-mix(in srgb,var(--accent) 72%,transparent)}.next-move-copy{min-width:0}.next-move-header{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:4px}.next-move-kicker{color:var(--accent);font-size:.72rem;font-weight:800;letter-spacing:0;text-transform:uppercase}.next-move-title{margin:0;color:var(--text-primary);font-size:1.08rem;line-height:1.25;font-weight:850;letter-spacing:0;min-width:0;overflow-wrap:anywhere}.next-move-reason{margin:6px 0 0;color:var(--text-secondary);font-size:.9rem;line-height:1.45;overflow-wrap:anywhere;min-width:0}.next-move-evidence{margin:8px 0 0;color:var(--text-muted);font-size:.78rem;line-height:1.35;min-width:0;overflow-wrap:anywhere}.next-move-meta{display:inline-flex;align-items:center;max-width:100%;min-width:0;min-height:26px;padding:4px 10px;border-radius:999px;background:color-mix(in srgb,var(--accent) 13%,transparent);color:var(--accent);font-size:.75rem;font-weight:800;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.next-move-meta[hidden]{display:none}.next-move-action{flex:0 0 auto;min-width:0;min-height:42px;padding:9px 14px;border-radius:12px;white-space:nowrap}.today-continue-card.next-move-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 18px;overflow:hidden;min-height:0;padding:var(--next-move-pad-y) var(--next-move-pad-x);border-color:color-mix(in srgb,var(--accent) 34%,var(--border) 66%);border-radius:var(--next-move-radius);background:linear-gradient(135deg,color-mix(in srgb,var(--bg-card) 92%,var(--accent) 6%),color-mix(in srgb,var(--bg-secondary) 94%,var(--success) 4%));box-shadow:0 18px 44px -38px color-mix(in srgb,var(--accent) 72%,transparent)}.today-continue-card.next-move-card:after{display:none}.today-continue-card.next-move-card .today-continue-meta,.today-continue-card.next-move-card h2,.today-continue-card.next-move-card p{grid-column:1}.today-continue-card.next-move-card h2{max-width:none;font-size:1.08rem;line-height:1.25}.today-continue-card.next-move-card p{max-width:62ch;margin-top:6px;font-size:.9rem;line-height:1.45}.today-continue-card.next-move-card .today-continue-meta{margin-bottom:4px}.today-continue-card.next-move-card .today-continue-cta{grid-column:2;grid-row:1 / span 3;align-self:center;min-height:42px;margin-top:0;padding:9px 14px;border-radius:12px;font-size:.92rem}.today-continue-card.next-move-card .today-continue-session{align-self:flex-start;box-sizing:border-box;display:block;flex:1 1 100%;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%;max-width:100%}.today-continue-card.next-move-card .today-continue-session[hidden]{display:none}body.home-has-next-move .home-hero,body.home-has-next-move .learning-pipeline{display:none!important}.home-today-intro{align-items:flex-start;justify-content:flex-start;margin:0 0 14px}.home-today-intro>div{position:static;width:auto;height:auto;overflow:visible;clip:auto;clip-path:none;white-space:normal}.home-today-intro .today-title{max-width:none;font-size:clamp(1.9rem,4vw,2.55rem)}.home-today-intro .today-copy{max-width:44ch;margin-top:8px}.today-secondary-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.today-secondary-actions[hidden]{display:none}.today-secondary-link{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:6px 12px;border:1px solid color-mix(in srgb,var(--accent) 20%,var(--border) 80%);border-radius:999px;background:color-mix(in srgb,var(--bg-card) 88%,var(--accent) 12%);color:var(--accent);font-size:.78rem;font-weight:800;text-decoration:none}.today-secondary-link:hover,.today-secondary-link:focus-visible{border-color:color-mix(in srgb,var(--accent) 44%,var(--border) 56%);background:color-mix(in srgb,var(--accent) 13%,transparent);text-decoration:none}.home-library-divider{margin:34px 0 18px;padding-top:4px}.home-library-divider h2{margin:0;font-size:clamp(1.35rem,2.8vw,1.7rem);line-height:1.14}.home-library-divider p:not(.today-eyebrow){margin:7px 0 0;max-width:42ch;color:var(--text-secondary);line-height:1.5}.today-empty-hint{margin:14px 0 0;color:var(--text-secondary);font-size:.92rem;line-height:1.5}.today-empty-hint[hidden]{display:none}.today-actions-panel{display:grid;gap:8px;margin-top:2px}.today-actions-label{margin:0 4px;color:var(--text-muted);font-size:.74rem;font-weight:800;letter-spacing:0;text-transform:uppercase}.today-action-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;margin-top:0}.today-action-card{position:relative;display:flex;flex-direction:column;justify-content:center;min-height:0;padding:14px 16px;border:1px solid color-mix(in srgb,var(--border) 68%,transparent);border-radius:14px;background:color-mix(in srgb,var(--bg-card) 46%,transparent);color:color-mix(in srgb,var(--text-secondary) 88%,var(--text-primary));text-decoration:none;box-shadow:none;opacity:.74;transition:border-color var(--transition),background var(--transition),color var(--transition),opacity var(--transition),transform var(--transition)}.today-action-card:hover{border-color:color-mix(in srgb,var(--accent) 40%,var(--border));background:color-mix(in srgb,var(--accent-subtle) 56%,transparent);color:var(--text-primary);opacity:1;transform:translateY(-1px)}.today-action-card span{display:block;font-weight:800;line-height:1.3}.today-action-card p{margin:6px 0 0;color:var(--text-secondary);font-size:.86rem;line-height:1.45}.library-section{scroll-margin-top:96px;margin-top:30px}.library-section-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}.library-section-header h2{margin:0;font-size:1.7rem;letter-spacing:0}.source-card-heading{margin-bottom:20px;max-width:680px}.source-card-heading h2{margin:0;font-size:clamp(1.45rem,3.2vw,1.72rem);letter-spacing:0}.source-card-heading p{margin:0;color:var(--text-secondary);font-size:.94rem;line-height:1.55}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:768px){.page-header h1{font-size:1.875rem}.page-header h1.hero-display,h1.hero-display,.hero-display{font-size:2.5rem;letter-spacing:-.03em;line-height:1.05}.hero-lede{font-size:1.075rem}body.home-source-first .hero-lede{max-width:30ch}.home-hero{padding-bottom:12px}.today-surface{margin-top:18px;margin-bottom:20px}body.home-has-next-move .today-surface{margin-top:16px}.today-intro{margin-bottom:0}.today-title{max-width:13ch;font-size:1.9rem}.home-today-intro{margin-bottom:12px}.home-today-intro .today-title{max-width:12ch;font-size:2rem;line-height:1.06}.home-today-intro .today-copy{max-width:28ch;font-size:.94rem}.today-workspace{grid-template-columns:1fr;gap:10px}.today-continue-card.next-move-card{grid-template-columns:1fr;min-height:0;padding:18px}.today-continue-card.next-move-card .today-continue-cta{grid-column:1;grid-row:auto;width:100%;min-height:42px}.today-secondary-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.today-secondary-link{min-width:0;padding-inline:8px;font-size:.72rem}.proof-activity-card.home-proof-activity-card{margin-top:64px;padding:14px}body.home-has-next-move .home-proof-activity-card{display:none!important}.home-library-divider{margin:28px 0 14px}body.home-has-next-move .home-source-builder{margin-top:148px;padding:22px;box-shadow:0 18px 42px -34px color-mix(in srgb,var(--accent) 70%,transparent)}body.home-source-first .home-source-builder{margin-top:14px;padding:24px 22px}.today-action-grid{grid-template-columns:1fr}.today-action-card{min-height:74px}.library-section-header{align-items:flex-start;flex-direction:column}h2{font-size:1.5rem}}@media(max-width:480px){.page-header h1.hero-display,h1.hero-display,.hero-display{font-size:2.25rem;line-height:1.05}.today-title{font-size:1.65rem}.home-today-intro .today-title{font-size:1.85rem}.today-continue-card.next-move-card h2{font-size:1.08rem}.today-copy{font-size:.94rem}.today-action-card p{font-size:.82rem}.learning-pipeline{margin-top:-6px;font-size:.82rem}.home-hero+.learning-pipeline{margin:0 0 24px}}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);padding:24px;transition:all var(--transition);overflow:hidden;max-width:100%;box-shadow:var(--shadow-sm)}.card:hover{border-color:var(--border-hover);box-shadow:var(--shadow-md)}.card-clickable{cursor:pointer}.card-clickable:hover{transform:translateY(-3px) scale(1.005);box-shadow:var(--shadow-md)}.card-clickable:active{transform:scale(.99);transition:var(--motion-press)}.daily-practice-link{color:inherit}.card.daily-practice-card{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:18px;padding:18px 22px;border-left:4px solid var(--accent);cursor:pointer;overflow:hidden}.card.daily-practice-card:hover{transform:translateY(-1px)}.daily-practice-icon{width:44px;height:44px;display:flex;align-items:center;justify-content:center;color:var(--accent);background:var(--accent-subtle);border-radius:14px}.daily-practice-copy{min-width:0}.daily-practice-title-row{display:flex;align-items:center;flex-wrap:wrap;gap:6px 8px;margin-bottom:4px;font-size:1.05rem;font-weight:700;line-height:1.25}.daily-practice-title{min-width:min-content}.daily-practice-due-badge{display:inline-flex;align-items:center;justify-content:center;min-height:22px;padding:3px 8px;border-radius:999px;background:var(--accent);color:#fff;font-size:.72rem;font-weight:700;line-height:1;white-space:nowrap}.daily-practice-due-badge[hidden]{display:none}.daily-practice-subline{color:var(--text-secondary);font-size:.88rem;line-height:1.45;overflow-wrap:anywhere}.daily-practice-stats{display:flex;align-items:center;justify-content:flex-end;gap:18px;min-width:0}.daily-practice-stat{min-width:48px;text-align:center}.daily-practice-stat-value{display:flex;align-items:center;justify-content:center;gap:4px;font-size:1.1rem;font-weight:700;line-height:1.2}.daily-practice-stat--streak .daily-practice-stat-value{color:#f59e0b}.daily-practice-stat-label{margin-top:4px;color:var(--text-muted);font-size:.7rem;letter-spacing:.05em;line-height:1;text-transform:uppercase;white-space:nowrap}@media(max-width:560px){.card.daily-practice-card{grid-template-columns:44px minmax(0,1fr);gap:12px 14px;padding:18px}.daily-practice-copy{align-self:center}.daily-practice-stats{grid-column:2;justify-content:flex-start;gap:16px;flex-wrap:wrap}}@media(max-width:380px){.card.daily-practice-card{grid-template-columns:40px minmax(0,1fr);padding:16px}.daily-practice-icon{width:40px;height:40px;border-radius:12px}.daily-practice-title-row{font-size:1rem}.daily-practice-stats{gap:14px}.daily-practice-stat{min-width:44px}}.sessions-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px;margin-bottom:48px}.session-card{display:flex;flex-direction:column;gap:12px}.session-card-header{display:flex;align-items:flex-start;gap:14px}.session-card-header>div{min-width:0}.session-number{width:44px;height:44px;min-width:44px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.1rem}.session-number.not-started{background:var(--bg-hover);color:var(--text-muted)}.session-number.in-progress{background:var(--warning-subtle);color:var(--warning)}.session-number.completed{background:var(--success-subtle);color:var(--success)}.session-number.completed:after{content:"\2713";position:absolute;font-size:.55rem;font-weight:800;bottom:2px;right:2px;line-height:1;opacity:.85}.session-number.in-progress:after{content:"\25cf";position:absolute;font-size:.45rem;bottom:3px;right:3px;line-height:1;opacity:.85}.session-number{position:relative}.session-card-title{font-weight:600;font-size:1rem;line-height:1.4;overflow-wrap:anywhere}.session-card-subtitle{color:var(--text-secondary);font-size:.85rem;overflow-wrap:anywhere}.session-card-footer{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto}.badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:999px;font-size:.75rem;font-weight:600;white-space:nowrap}.badge-default{background:var(--bg-hover);color:var(--text-muted)}.badge-accent{background:var(--accent-subtle);color:var(--accent)}.badge-success{background:var(--success-subtle);color:var(--success)}.badge-warning{background:var(--warning-subtle);color:var(--warning)}.badge-danger{background:var(--danger-subtle);color:var(--danger)}.badge-info{background:var(--info-subtle);color:var(--info)}.source-badge{padding:2px 7px;font-size:.65rem;font-weight:700;border-radius:4px;text-transform:uppercase;letter-spacing:.5px}.source-badge--ocw{background:#ef4444;color:#fff}.source-badge--youtube{background:red;color:#fff}.source-badge--document{background:#3b82f6;color:#fff}.source-badge--unknown{background:var(--bg-hover);color:var(--text-muted)}.add-source-panel{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:20px;margin-top:16px}.add-source-panel .source-tabs{display:flex;gap:8px;margin-bottom:16px}.add-source-panel .source-tab{padding:6px 14px;border-radius:8px;border:1px solid var(--border);background:var(--bg);cursor:pointer;font-size:.85rem;font-weight:500;color:var(--text-muted);transition:all var(--dur-base)}.add-source-panel .source-tab.active{background:var(--accent);color:#fff;border-color:var(--accent)}.add-source-panel .source-input-group{display:none}.add-source-panel .source-input-group.active{display:block}.sources-summary{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.folder-bar{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:20px}.folder-pill{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:999px;border:1.5px solid var(--border);background:var(--bg-card);cursor:pointer;font-size:.82rem;font-weight:500;color:var(--text-muted);transition:all var(--dur-base);white-space:nowrap;user-select:none}.folder-pill:hover{border-color:var(--accent);color:var(--text)}.folder-pill.active{background:var(--accent);color:#fff;border-color:var(--accent)}.folder-pill .folder-count{font-size:.7rem;opacity:.7}.folder-pill.drop-target{border-color:var(--success);background:var(--success-subtle);transform:scale(1.05)}.folder-pill--add{border-style:dashed}.folder-pill--add:hover{border-color:var(--accent)}.folder-pill[data-color=red]{border-left:3px solid #ef4444}.folder-pill[data-color=blue]{border-left:3px solid #3b82f6}.folder-pill[data-color=green]{border-left:3px solid #22c55e}.folder-pill[data-color=purple]{border-left:3px solid #a855f7}.folder-pill[data-color=orange]{border-left:3px solid #f97316}.folder-pill[data-color=yellow]{border-left:3px solid #eab308}.folder-pill.active[data-color=red]{background:#ef4444}.folder-pill.active[data-color=blue]{background:#3b82f6}.folder-pill.active[data-color=green]{background:#22c55e}.folder-pill.active[data-color=purple]{background:#a855f7}.folder-pill.active[data-color=orange]{background:#f97316}.folder-pill.active[data-color=yellow]{background:#eab308}.search-sort-bar{display:flex;gap:10px;align-items:center;margin-bottom:16px}.search-input-wrap{position:relative;flex:1}.search-input-wrap .search-icon{position:absolute;left:10px;top:50%;transform:translateY(-50%);font-size:.85rem;pointer-events:none;opacity:.5}.search-input-wrap .search-icon .icon{width:15px;height:15px;display:block}.search-input-wrap .search-input{padding-left:32px;width:100%}.sort-select{flex:0 0 150px;width:150px;min-width:130px;font-size:.85rem;padding:8px 10px}@media(max-width:600px){.search-sort-bar{flex-wrap:wrap;gap:8px}.search-input-wrap{flex-basis:100%}.sort-select{flex:1 1 100%;width:auto;max-width:100%}}.streak-bar{display:flex;align-items:center;gap:16px;padding:12px 16px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:16px}.streak-flame{display:flex;align-items:center;gap:6px;flex-shrink:0}.streak-icon{font-size:1.4rem}.streak-flame svg.icon{width:22px;height:22px;vertical-align:-4px;color:#f59e0b}.streak-count{font-size:1.3rem;font-weight:800;color:var(--text-primary)}.streak-label{font-size:.78rem;color:var(--text-muted);max-width:260px;line-height:1.35}.streak-milestone{color:var(--accent);font-weight:600}.daily-goal-wrap{flex:1;min-width:0}.daily-goal-bar{height:8px;background:var(--bg-input);border-radius:4px;overflow:hidden;margin-bottom:4px}.daily-goal-fill{height:100%;background:var(--accent);border-radius:4px;transition:width var(--dur-slow) var(--ease-spring-soft)}.daily-goal-fill.goal-met{background:var(--success)}.daily-goal-text{font-size:.75rem;color:var(--text-muted)}.daily-goal-select{background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:.78rem;padding:4px 6px;flex-shrink:0}@media(max-width:480px){.streak-bar{flex-wrap:wrap;gap:10px}.daily-goal-wrap{flex-basis:100%;order:3}}.course-cover{width:calc(100% + 48px);margin:-24px -24px 14px;height:68px;position:relative;overflow:hidden;border-radius:var(--radius-md) var(--radius-md) 0 0;flex-shrink:0}.course-cover-noise{position:absolute;inset:0;background:repeating-linear-gradient(-45deg,transparent,transparent 8px,rgba(255,255,255,.05) 8px,rgba(255,255,255,.05) 9px)}@media(max-width:768px){.course-cover{width:calc(100% + 32px);height:62px;margin:-16px -16px 12px}}.course-progress-bar{position:absolute;bottom:0;left:0;right:0;height:5px;background:#00000047}.course-progress-fill{height:100%;background:#ffffffd1;transition:width .5s var(--ease-spring-soft)}.course-progress-label{font-size:.7rem;font-weight:600;color:var(--text-muted);letter-spacing:.01em;margin:2px 0 6px;display:block}.course-progress-label.complete{color:var(--success)}.catalog-card{cursor:default;transition:border-color var(--dur-base)}.catalog-card:hover{border-color:var(--accent)}.catalog-added{opacity:.6}.course-card-dragging{opacity:.4;transform:scale(.97)}.folder-bar.drag-active .folder-pill:not(.active){animation:pulse-border 1s infinite}@keyframes pulse-border{0%,to{border-color:var(--border)}50%{border-color:var(--accent)}}.tag-filter-bar{display:flex;align-items:center;gap:8px;overflow-x:auto;padding:4px 0 8px;margin-bottom:8px;-webkit-overflow-scrolling:touch;scrollbar-width:none}.tag-filter-bar::-webkit-scrollbar{display:none}.tag-chip{display:inline-flex;align-items:center;padding:5px 13px;border-radius:999px;border:1.5px solid var(--border);background:var(--bg-card);cursor:pointer;font-size:.78rem;font-weight:500;color:var(--text-muted);white-space:nowrap;transition:all var(--dur-fast);flex-shrink:0}.tag-chip:hover{border-color:var(--accent);color:var(--text)}.tag-chip.active{background:var(--accent);color:#fff;border-color:var(--accent)}.course-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:8px}.course-tag{display:inline-block;padding:2px 8px;border-radius:999px;background:var(--bg-input);border:1px solid var(--border);font-size:.7rem;color:var(--text-muted)}.folder-rename-input{background:transparent;border:none;border-bottom:1.5px solid var(--accent);color:inherit;font:inherit;font-size:.82rem;width:100px;outline:none;padding:0 2px}.folder-ctx-menu{position:absolute;background:var(--bg-card);border:1px solid var(--border);border-radius:8px;padding:4px 0;z-index:100;min-width:140px;box-shadow:0 4px 16px #0000004d}.folder-ctx-menu button{display:block;width:100%;text-align:left;padding:8px 14px;border:none;background:none;color:var(--text);font-size:.82rem;cursor:pointer}.folder-ctx-menu button:hover{background:var(--bg-hover)}.folder-ctx-menu .color-row{display:flex;gap:6px;padding:8px 14px}.folder-ctx-menu .color-dot{width:18px;height:18px;border-radius:50%;cursor:pointer;border:2px solid transparent;transition:transform var(--dur-fast)}.folder-ctx-menu .color-dot:hover{transform:scale(1.2)}.folder-ctx-menu .color-dot.selected{border-color:#fff}.folder-sheet-overlay{position:fixed;inset:0;background:#00000080;z-index:200;display:flex;align-items:flex-end}.folder-sheet{background:var(--bg-card);border-radius:16px 16px 0 0;padding:20px;width:100%;max-height:60vh;overflow-y:auto}.folder-sheet h3{margin:0 0 12px;font-size:1rem}.folder-sheet button{display:block;width:100%;text-align:left;padding:12px 16px;border:none;background:none;color:var(--text);font-size:.9rem;cursor:pointer;border-radius:8px}.folder-sheet button:hover{background:var(--bg-hover)}.journey-courses{display:flex;flex-direction:column;gap:8px}.journey-course-card{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:14px 16px;cursor:pointer;transition:all var(--dur-base)}.journey-course-card:hover{border-color:var(--accent)}.journey-course-card.selected{border-color:var(--accent);background:var(--accent-subtle)}.journey-course-num{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:var(--bg-hover);font-size:.75rem;font-weight:700;flex-shrink:0}.journey-course-card.selected .journey-course-num{background:var(--accent);color:#fff}.podcast-section{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:20px}.podcast-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}.podcast-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.podcast-toggle-icon{transition:transform var(--dur-fast) var(--ease-out-expo)}.podcast-section.is-expanded .podcast-toggle-icon{transform:rotate(180deg)}.podcast-summary{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px 16px;margin-top:14px;padding:13px 14px 16px;border:1px solid var(--border);border-radius:10px;background:var(--bg-input);color:var(--text-secondary);font-size:.86rem;cursor:pointer;overflow:hidden;transition:border-color var(--dur-fast),background var(--dur-fast)}.podcast-summary:hover{border-color:var(--border-hover);background:var(--bg-hover)}.podcast-summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.podcast-summary-copy{display:grid;gap:2px;min-width:0}.podcast-summary-kicker{color:var(--text-muted);font-size:.68rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.podcast-summary strong{color:var(--text-primary);font-size:.95rem;line-height:1.25}.podcast-summary-copy>span:last-child{color:var(--text-muted)}.podcast-summary-meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end}.podcast-summary-meta span{padding:4px 8px;border:1px solid var(--border);border-radius:999px;color:var(--text-secondary);font-size:.72rem;font-weight:700;text-transform:capitalize}.podcast-ready-bar{grid-column:1 / -1;height:4px;border-radius:999px;background:var(--border);overflow:hidden}.podcast-ready-bar span{display:block;height:100%;border-radius:inherit;background:var(--accent);transition:width var(--dur-base) var(--ease-out-expo)}.podcast-body{margin-top:16px}.podcast-body[hidden]{display:none}.podcast-episode-list{display:flex;flex-direction:column;gap:2px;max-height:400px;overflow-y:auto}.podcast-episode{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:8px;cursor:pointer;transition:background var(--dur-fast)}.podcast-episode:hover{background:var(--bg-hover)}.podcast-episode.playing{background:var(--accent-subtle)}.podcast-episode.not-generated{opacity:.4;cursor:default}.podcast-ep-num{width:28px;height:28px;min-width:28px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--bg-hover);font-size:.75rem;font-weight:700}.podcast-episode.playing .podcast-ep-num{background:var(--accent);color:#fff}.podcast-ep-title{flex:1;font-size:.88rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.podcast-ep-dur{font-size:.75rem;color:var(--text-muted);white-space:nowrap}.podcast-ep-play{width:28px;height:28px;border-radius:50%;border:none;background:var(--accent);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.7rem;flex-shrink:0}.podcast-ep-play:hover{opacity:.85}.podcast-player{background:var(--bg);border:1px solid var(--border);border-radius:10px;padding:14px 16px;margin-top:12px}.podcast-player-info{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;font-size:.82rem}.podcast-progress-bar{width:100%;height:6px;background:var(--bg-hover);border-radius:3px;cursor:pointer;margin-bottom:10px;position:relative}.podcast-progress-fill{height:100%;background:var(--accent);border-radius:3px;transition:width var(--dur-slow) linear}.podcast-controls{display:flex;align-items:center;justify-content:center;gap:16px}.podcast-controls button{background:none;border:none;color:var(--text);cursor:pointer;font-size:1.1rem;padding:4px}.podcast-controls button:hover{color:var(--accent)}.podcast-controls .podcast-play-main{width:40px;height:40px;border-radius:50%;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1rem}.podcast-controls button .icon{width:18px;height:18px;display:block}.podcast-controls .podcast-speed-btn{font-size:.72rem;font-weight:600;background:var(--bg-hover);border-radius:4px;padding:3px 8px}@media(max-width:768px){.podcast-section{padding:14px}.podcast-actions,.podcast-summary{width:100%}.podcast-actions{display:grid;grid-template-columns:1fr}.podcast-actions .text-sm{grid-column:1 / -1}.podcast-actions .btn{width:100%;min-width:0;padding-inline:10px}.podcast-summary{grid-template-columns:1fr}.podcast-summary-meta{justify-content:flex-start}}.checkpoint-data-block{background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:16px;font-family:Courier New,monospace;font-size:.85rem;line-height:1.6;white-space:pre-wrap;margin-bottom:12px;overflow-x:auto}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;border-radius:var(--radius-sm);font-size:.9rem;font-weight:600;border:none;cursor:pointer;transition:all var(--transition);font-family:inherit;white-space:nowrap}.btn-primary{background:var(--accent);color:#fff;border-radius:var(--radius-md);font-weight:700;box-shadow:0 4px 14px -4px #6c63ff66}.btn-primary:hover{background:var(--accent-hover);transform:translateY(-1px);box-shadow:0 6px 20px -4px #6c63ff80}.btn-secondary{background:transparent;color:var(--text-primary);border:1px solid var(--border)}.btn-secondary:hover{background:var(--bg-hover);border-color:var(--border-hover)}.btn-success{background:var(--success);color:#fff}.btn-success:hover{filter:brightness(1.1)}.btn-accent{background:var(--accent);color:#fff}.btn-accent:hover{filter:brightness(1.1)}.btn-danger{background:var(--danger-subtle);color:var(--danger)}.btn-danger:hover{background:var(--danger);color:#fff}.btn-ghost{background:transparent;color:var(--text-secondary);border:none;padding:8px 12px}.btn-ghost:hover{color:var(--text-primary);background:var(--bg-hover)}.btn-sm{padding:6px 12px;font-size:.8rem}.btn-lg{padding:14px 28px;font-size:1rem}.btn:active:not(:disabled){transform:scale(.97);transition:var(--motion-press)}.icon{display:inline-block;width:16px;height:16px;vertical-align:-2px;flex-shrink:0}.icon-sm{width:14px;height:14px;vertical-align:-1px}.icon-lg{width:20px;height:20px;vertical-align:-3px}.icon-xl{width:28px;height:28px;vertical-align:-5px}.btn .icon{vertical-align:-3px}.idea-action-icon{display:inline-flex;align-items:center}.btn:focus-visible,.tab:focus-visible,.theme-toggle:focus-visible,.nav-brand:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.input:focus-visible,.textarea:focus-visible,.select:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-subtle)}.flashcard:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.quiz-option:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn-icon{width:40px;height:40px;padding:0;border-radius:var(--radius-sm)}.progress-ring-wrap{display:flex;align-items:center;justify-content:center}.progress-ring{transform:rotate(-90deg)}.progress-ring-bg{fill:none;stroke:var(--border)}.progress-ring-fill{fill:none;stroke:var(--accent);stroke-linecap:round;transition:stroke-dashoffset .8s ease}.progress-ring-text{font-size:2rem;font-weight:800;fill:var(--text-primary)}.progress-ring-label{font-size:.85rem;fill:var(--text-secondary)}.stats-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;margin-bottom:32px}.stat-card{text-align:center;padding:20px}.stat-card-btn{cursor:pointer;background:none;border:2px solid transparent;width:100%;transition:border-color .15s,transform .1s}.stat-card-btn:hover{border-color:var(--accent);transform:translateY(-1px)}.stat-card-btn[aria-pressed=true]{border-color:var(--accent);background:var(--accent-subtle, rgba(99,102,241,.12))}.status-card-list{display:flex;flex-direction:column;gap:6px;max-height:320px;overflow-y:auto}.status-card-item{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;background:var(--bg-secondary);border-radius:var(--radius-md);font-size:.9rem}.status-card-item .session-badge{flex-shrink:0;font-size:.72rem;font-weight:600;color:var(--text-secondary);background:var(--bg-card);border:1px solid var(--border);border-radius:4px;padding:2px 6px;white-space:nowrap}.status-card-item .card-front-text{color:var(--text-primary);line-height:1.4}.stat-value{font-size:2rem;font-weight:800;color:var(--accent)}.stat-label{font-size:.85rem;color:var(--text-secondary);margin-top:4px}.accordion{display:flex;flex-direction:column;gap:8px}.accordion-item{border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.accordion-trigger{width:100%;padding:16px 20px;display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--bg-card);border:none;color:var(--text-primary);font-size:1rem;font-weight:600;font-family:inherit;cursor:pointer;transition:background var(--transition);text-align:left}.accordion-trigger:hover{background:var(--bg-hover)}.accordion-trigger .arrow{transition:transform var(--transition);font-size:.8rem;color:var(--text-muted)}.accordion-item.open .accordion-trigger .arrow{transform:rotate(180deg)}.accordion-content{max-height:0;overflow:hidden;transition:max-height var(--dur-slow) var(--ease-out-expo)}.accordion-item.open .accordion-content{max-height:2000px}.accordion-body{padding:0 20px 20px;color:var(--text-secondary);line-height:1.7}.session-throughline{margin-top:12px;padding:0;border:1px solid color-mix(in srgb,var(--accent) 34%,var(--border));border-radius:18px;background:linear-gradient(145deg,color-mix(in srgb,var(--bg-card) 92%,var(--accent) 8%),color-mix(in srgb,var(--bg-secondary) 92%,var(--info) 8%));overflow:hidden;box-shadow:0 20px 54px -46px color-mix(in srgb,var(--accent) 72%,transparent),inset 0 1px color-mix(in srgb,#fff 7%,transparent)}.session-throughline[hidden]{display:none}.session-throughline summary{list-style:none}.session-throughline summary::-webkit-details-marker{display:none}.session-throughline-summary{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;min-height:64px;padding:18px 18px 12px;cursor:default}.session-throughline-summary:after{display:none}.session-throughline[open] .session-throughline-summary:after{transform:rotate(225deg)}.session-throughline-summary:hover:after{border-color:var(--accent)}.session-throughline-summary-copy{display:grid;gap:2px;min-width:0}.session-throughline-summary-copy strong{color:var(--text-primary);font-size:.95rem;line-height:1.35;overflow-wrap:anywhere}.session-throughline-body{padding:0 18px 18px;border-top:1px solid color-mix(in srgb,var(--border) 74%,transparent)}.session-throughline-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}.session-throughline-kicker{margin-bottom:4px;color:var(--accent);font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.session-throughline h3{margin:0;color:var(--text-primary);font-size:1rem;line-height:1.35}.session-throughline-status{display:inline-flex;align-items:center;gap:7px;flex:0 0 auto;color:var(--text-muted);font-size:.78rem;font-weight:700}.session-throughline-status .generation-spinner{width:14px;height:14px;border-width:2px}.session-throughline-context,.session-throughline-transfer{margin:0 0 12px;color:var(--text-secondary);font-size:.92rem;line-height:1.65}.session-throughline-spine{margin:12px 0;padding:10px 12px;border-left:3px solid var(--accent);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:var(--accent-subtle);color:var(--text-primary);font-size:.92rem;font-weight:600;line-height:1.55}.session-throughline-arc{display:grid;gap:10px;margin:12px 0}.session-throughline-step{display:grid;grid-template-columns:26px minmax(0,1fr);gap:10px;align-items:start}.session-throughline-step-num{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border:1px solid var(--border);border-radius:999px;color:var(--accent);font-size:.72rem;font-weight:800}.session-throughline-step strong{display:block;color:var(--text-primary);font-size:.88rem;line-height:1.35}.session-throughline-step p{margin:2px 0 0;color:var(--text-secondary);font-size:.84rem;line-height:1.55}.session-throughline:not(.is-loading) .session-throughline-step{animation:sessionThreadStepIn .22s var(--ease-out-expo) both;animation-delay:calc(var(--step-index, 0) * 70ms)}.session-throughline:not(.is-loading) .session-entry-concept-row{animation:sessionConceptChipIn .56s var(--ease-out-expo) both;animation-delay:calc(var(--step-index, 0) * 115ms)}@keyframes sessionThreadStepIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes sessionConceptChipIn{0%{opacity:0;filter:blur(10px);transform:translateY(10px) scale(.96)}70%{filter:blur(0)}to{opacity:1;filter:blur(0);transform:translateY(0) scale(1)}}.session-composition-card{position:relative;min-height:min(360px,42svh);padding:22px;isolation:isolate;overflow:hidden;border-radius:18px;background:linear-gradient(145deg,color-mix(in srgb,var(--bg-card) 88%,var(--accent) 10%),color-mix(in srgb,var(--bg-secondary) 92%,var(--info) 8%))}.session-composition-card:before,.session-composition-card:after{content:"";position:absolute;inset:18px;z-index:-1;border:1px solid color-mix(in srgb,var(--accent) 22%,transparent);border-radius:18px;background:linear-gradient(115deg,transparent,color-mix(in srgb,var(--accent) 10%,transparent),transparent);filter:blur(18px);opacity:.54;animation:sessionCompositionBreathe 2.6s var(--ease-out-expo) infinite alternate}.session-composition-card:after{inset:56px 24px 24px;opacity:.36;animation-delay:.42s}.session-composition-field{display:flex;flex-wrap:wrap;align-content:flex-start;gap:10px;min-height:156px;padding-right:8px}.session-composition-chip{display:inline-flex;align-items:center;max-width:min(100%,34ch);min-height:34px;padding:8px 12px;border:1px solid color-mix(in srgb,var(--accent) 30%,var(--border));border-radius:999px;background:color-mix(in srgb,var(--bg-card) 74%,var(--accent) 12%);color:color-mix(in srgb,var(--text-primary) 82%,var(--accent) 18%);font-size:.84rem;font-weight:800;line-height:1.2;box-shadow:0 14px 34px -30px color-mix(in srgb,var(--accent) 78%,transparent);opacity:0;filter:blur(14px);transform:translateY(12px) scale(.96);animation:sessionConceptChipIn .72s var(--ease-out-expo) both;animation-delay:calc(var(--step-index, 0) * .15s)}.session-composition-core{position:absolute;left:22px;right:22px;bottom:22px;display:grid;gap:7px}.session-composition-kicker{color:var(--accent);font-size:.72rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.session-composition-core strong{color:var(--text-primary);font-size:clamp(1.04rem,3vw,1.28rem);line-height:1.2}.session-composition-line{position:relative;display:block;width:min(100%,260px);height:5px;overflow:hidden;border-radius:999px;background:color-mix(in srgb,var(--border) 64%,transparent)}.session-composition-line:after{content:"";position:absolute;inset:0;width:42%;border-radius:inherit;background:var(--accent);filter:blur(.4px);animation:sessionCompositionLine 1.6s ease-in-out infinite}@keyframes sessionCompositionBreathe{0%{opacity:.28;transform:scale(.98)}to{opacity:.6;transform:scale(1.02)}}@keyframes sessionCompositionLine{0%{transform:translate(-110%)}to{transform:translate(250%)}}.session-lesson-overview{display:grid;gap:10px;margin-top:14px;scroll-margin:86px 0 calc(120px + env(safe-area-inset-bottom,0px));padding:14px;border:1px solid color-mix(in srgb,var(--accent) 36%,var(--border));border-radius:14px;background:linear-gradient(145deg,color-mix(in srgb,var(--accent-subtle) 64%,transparent),color-mix(in srgb,var(--bg-card) 86%,var(--info) 8%));outline:none}.session-throughline.is-overview-open .session-lesson-overview{margin-top:0}.session-throughline .session-entry-card{margin-top:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.session-lesson-overview-kicker{color:var(--accent);font-size:.72rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.session-lesson-overview h3{margin:0;color:var(--text-primary);font-size:1.02rem;line-height:1.28}.session-lesson-overview p{margin:0;color:var(--text-secondary);font-size:.92rem;line-height:1.62}.session-lesson-overview-chain{display:grid;gap:7px;margin-top:2px}.session-entry-concept-list{display:grid;gap:8px;margin-top:2px}.session-entry-concept-row{display:grid;grid-template-columns:30px minmax(0,1fr);align-items:start;gap:10px;min-height:48px;padding:10px 12px;border:1px solid color-mix(in srgb,var(--border) 76%,var(--accent) 18%);border-radius:12px;background:color-mix(in srgb,var(--bg-card) 82%,var(--accent) 7%)}.session-entry-concept-num{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border:1px solid color-mix(in srgb,var(--accent) 52%,var(--border));border-radius:999px;background:var(--accent-subtle);color:var(--accent);font-size:.76rem;font-weight:900}.session-entry-concept-row strong{display:block;min-width:0;color:var(--text-primary);font-size:.9rem;line-height:1.28;overflow-wrap:anywhere}.session-entry-concept-row p{margin:3px 0 0;color:var(--text-secondary);font-size:.82rem;line-height:1.42;overflow-wrap:anywhere}.session-entry-briefing{gap:16px}.session-briefing-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.session-briefing-head>div{min-width:0}.session-briefing-text{display:grid;gap:12px;color:var(--text-secondary);font-size:1.02rem;line-height:1.68}.session-briefing-text p{margin:0}.session-briefing-text p:first-child{color:color-mix(in srgb,var(--text-primary) 72%,var(--text-secondary) 28%)}.session-briefing-watch-list{display:grid;gap:8px;margin-top:2px}.session-briefing-watch-row{background:color-mix(in srgb,var(--bg-card) 88%,var(--info) 5%)}.session-briefing-listen-btn{flex:0 0 auto;min-height:38px;padding:0 12px;border-radius:999px;font-size:.84rem;box-shadow:none}.session-briefing-listen-btn .idea-action-icon{width:16px;height:16px}.session-entry-lecture{gap:14px}.session-mini-lecture-head{display:flex;justify-content:flex-end;min-height:38px}.session-mini-lecture-text{display:grid;gap:16px;color:var(--text-secondary);font-size:1.02rem;line-height:1.72}.session-mini-lecture-paragraph{margin:0;color:var(--text-secondary);font-size:1.02rem;line-height:1.72;overflow-wrap:anywhere}.session-mini-lecture-paragraph:first-child{color:color-mix(in srgb,var(--text-primary) 70%,var(--text-secondary) 30%);font-weight:650}@media(max-width:420px){.session-briefing-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px}.session-briefing-listen-btn{min-width:0;padding-inline:10px}}.session-lesson-overview-chip{display:inline-flex;align-items:flex-start;gap:8px;min-height:30px;max-width:100%;padding:5px 9px;border:1px solid color-mix(in srgb,var(--accent) 34%,var(--border));border-radius:12px;background:color-mix(in srgb,var(--bg-card) 78%,var(--accent) 8%);color:var(--text-primary);font-size:.8rem;font-weight:800;line-height:1.25;overflow-wrap:anywhere}.session-lesson-overview-chip:before{content:attr(data-step);display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:18px;height:18px;border-radius:999px;background:var(--accent-subtle);color:var(--accent);font-size:.68rem;font-weight:900}.session-path-enter-btn{width:100%;min-height:54px;margin:4px 0 0;border-radius:15px;font-weight:900}.session-path-enter-btn:disabled{cursor:wait;opacity:.74}.session-path-explore-btn{margin-top:2px}.session-entry-answer{margin-top:2px;font-weight:650}.session-throughline[data-entry-step=answer]{border:0;background:transparent;box-shadow:none;overflow:visible}.session-throughline[data-entry-step=briefing] .session-throughline-body,.session-throughline[data-entry-step=lecture] .session-throughline-body{padding-top:18px;border-top:0}.session-throughline[data-entry-step=answer] .session-throughline-body{padding:0;border-top:0}.session-entry-question-card{perspective:1400px}.session-entry-question-shell{min-height:min(560px,calc(100svh - 230px));border-radius:18px;perspective:inherit}.session-entry-question-inner{position:relative;min-height:inherit;transform-style:preserve-3d;transition:transform .62s var(--ease-out-expo)}.session-entry-question-card.is-revealed .session-entry-question-inner{transform:rotateY(180deg)}.session-entry-question-face{position:absolute;inset:0;display:flex;flex-direction:column;gap:16px;justify-content:center;min-height:inherit;min-width:0;padding:clamp(28px,8vw,44px);border:1px solid color-mix(in srgb,var(--accent) 34%,var(--border));border-radius:18px;background:linear-gradient(145deg,color-mix(in srgb,var(--bg-secondary) 94%,var(--accent) 6%),color-mix(in srgb,var(--bg-card) 94%,var(--info) 6%));box-shadow:0 24px 60px -46px color-mix(in srgb,var(--accent) 74%,transparent),inset 0 1px color-mix(in srgb,#fff 7%,transparent);backface-visibility:hidden;-webkit-backface-visibility:hidden}.session-entry-question-front[role=button]{cursor:pointer}.session-entry-question-front[role=button]:hover{border-color:color-mix(in srgb,var(--accent) 48%,var(--border))}.session-entry-question-front[role=button]:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 82%,#fff 18%);outline-offset:4px}.session-throughline .session-entry-question-front h3{width:min(100%,29ch);max-width:none;font-size:clamp(1.46rem,6.1vw,2.2rem);line-height:1.06;overflow-wrap:break-word;hyphens:auto;text-wrap:balance}.session-throughline .session-entry-question-hint{max-width:31ch;color:var(--text-secondary);font-size:clamp(1rem,3.9vw,1.12rem);font-weight:700;line-height:1.55}.session-entry-question-back{display:grid;grid-template-rows:auto minmax(0,1fr) auto;align-content:center;transform:rotateY(180deg)}.session-throughline .session-entry-question-back .session-entry-answer{min-height:0;max-height:none;overflow-y:auto;overscroll-behavior:contain;margin:0;padding:0;border:0;border-radius:0;background:transparent;color:var(--text-secondary);font-size:clamp(1.08rem,4.5vw,1.28rem);font-weight:500;line-height:1.72;overflow-wrap:break-word;word-break:normal;hyphens:auto}.session-entry-question-back .session-path-enter-btn{align-self:end}@media(prefers-reduced-motion:reduce){.session-throughline:not(.is-loading) :is(.session-throughline-step,.session-entry-concept-row),.session-composition-card:before,.session-composition-card:after,.session-composition-chip,.session-composition-line:after{animation:none!important;filter:none!important;opacity:1;transform:none!important}.session-entry-question-inner{transition:none;transform:none!important}.session-entry-question-face{position:relative;transform:none!important}.session-entry-question-card.is-unrevealed .session-entry-question-back,.session-entry-question-card.is-revealed .session-entry-question-front{display:none}}.session-focus-page{max-width:880px;overflow-x:clip}.session-focus-intro{position:relative;z-index:30;padding-top:30px}.session-focus-header{padding:28px 0 20px}.session-top-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px}.session-focus-header h1{max-width:760px;margin-bottom:8px;font-size:clamp(2rem,5vw,3.25rem);line-height:1.05;letter-spacing:-.02em}.session-focus-header p{max-width:680px;color:var(--text-secondary);font-size:1.05rem}.session-shell-card{position:relative;overflow:visible;padding:clamp(24px,4vw,34px);border:1px solid color-mix(in srgb,var(--accent) 48%,var(--border-hover) 52%);border-radius:8px;background:linear-gradient(145deg,color-mix(in srgb,var(--bg-secondary) 88%,var(--accent) 12%),color-mix(in srgb,var(--bg-card) 88%,var(--info) 12%));box-shadow:inset 0 1px color-mix(in srgb,#fff 8%,transparent),0 22px 52px -38px color-mix(in srgb,var(--accent) 76%,transparent)}.session-shell-card:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.28;background:linear-gradient(90deg,color-mix(in srgb,var(--accent) 14%,transparent),transparent 38%),repeating-linear-gradient(135deg,color-mix(in srgb,#fff 6%,transparent) 0 1px,transparent 1px 15px);mask-image:linear-gradient(180deg,#000,transparent 90%)}.session-shell-card,.session-shell-card *{min-width:0}.session-shell-meta{position:relative;z-index:1;display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:14px}#statusBadge[hidden]{display:none!important}.session-shell-kicker{color:var(--accent);font-size:.82rem;font-weight:800;letter-spacing:0;text-transform:uppercase}.session-focus-copy{position:relative;z-index:1;max-width:720px}.session-focus-copy h1{margin:0;max-width:16ch;font-size:clamp(1.9rem,4.5vw,3.2rem);line-height:1.08;letter-spacing:0}.session-shell-subtitle{margin:18px 0 0;max-width:27ch;color:var(--text-secondary);font-size:clamp(1.18rem,2.4vw,1.55rem);line-height:1.48}.session-artifact-return{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;margin-top:16px;padding:12px;border:1px solid color-mix(in srgb,var(--accent) 28%,var(--border));border-radius:8px;background:color-mix(in srgb,var(--bg-card) 88%,var(--accent) 12%)}.session-artifact-return[hidden]{display:none!important}.session-artifact-return-kicker{display:block;margin-bottom:4px;color:var(--accent);font-size:.74rem;font-weight:800;letter-spacing:0;text-transform:uppercase}.session-artifact-return-copy strong{display:block;color:var(--text-primary);font-size:1rem;line-height:1.2}.session-artifact-return-copy p{margin:4px 0 0;color:var(--text-secondary);font-size:.86rem;line-height:1.32}.session-artifact-return-btn{min-height:40px;padding-inline:14px;white-space:nowrap}.session-overview{margin:18px 0 0;color:var(--text-secondary);font-size:1rem;line-height:1.65;overflow-wrap:anywhere}.session-shell-briefing{position:relative;z-index:1;margin-top:22px;padding-top:20px;border-top:1px solid color-mix(in srgb,var(--accent) 20%,transparent)}.session-shell-briefing[hidden]{display:none}.session-shell-briefing h3{margin:4px 0 0;color:var(--text-primary);font-size:1rem;line-height:1.25;letter-spacing:0}.session-shell-briefing .session-briefing-text{margin-top:18px;color:var(--text-secondary);font-size:1rem;line-height:1.55}.session-shell-briefing .session-briefing-text p{margin:0}.session-shell-briefing .session-briefing-text p+p{margin-top:10px}.session-visual-map{position:relative;z-index:1;margin-top:18px;padding:14px;border:1px solid color-mix(in srgb,var(--info) 26%,var(--border));border-radius:8px;background:color-mix(in srgb,var(--bg-card) 86%,var(--info) 14%)}.session-visual-map[hidden]{display:none!important}.session-visual-map-copy{display:grid;gap:6px}.session-visual-map-kicker{color:var(--info);font-size:.74rem;font-weight:850;letter-spacing:0;text-transform:uppercase}.session-visual-map h3{margin:0;color:var(--text-primary);font-size:1.05rem;line-height:1.2}.session-visual-map p{margin:0;max-width:62ch;color:var(--text-secondary);font-size:.94rem;line-height:1.45}.session-visual-map-toggle{justify-self:start;margin-top:4px;border:0;border-radius:999px;padding:8px 12px;background:color-mix(in srgb,var(--info) 16%,var(--bg-input));color:var(--text-primary);font:inherit;font-size:.84rem;font-weight:800;cursor:pointer}.session-visual-map-toggle:hover,.session-visual-map-toggle:focus-visible{background:color-mix(in srgb,var(--info) 26%,var(--bg-input));outline:none}.session-visual-map-frame{margin:14px 0 0;border:1px solid color-mix(in srgb,var(--info) 22%,var(--border));border-radius:8px;overflow:hidden;background:var(--bg-card)}.session-visual-map-frame[hidden]{display:none!important}.session-visual-map-frame img{display:block;width:100%;max-height:min(64vh,760px);object-fit:contain;background:#fff}.session-visual-map-frame figcaption{padding:10px 12px;color:var(--text-muted);font-size:.78rem;line-height:1.35}.session-focus-actions{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr);align-items:stretch;gap:10px;margin-top:30px}.session-focus-actions .btn,.session-more-menu summary{border-radius:8px}#sessionStartBtn{min-height:56px;width:100%;padding-inline:28px}.session-entry-skip-btn{justify-self:center;min-height:34px;padding:4px 10px;border:0;border-radius:8px;background:transparent;color:var(--text-secondary);font:inherit;font-size:.92rem;font-weight:700;text-decoration:none;cursor:pointer}.session-entry-skip-btn:hover,.session-entry-skip-btn:focus-visible{color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,transparent);outline:none}.session-more-menu{position:relative}.session-more-menu summary{list-style:none;cursor:pointer}.session-more-menu summary::-webkit-details-marker{display:none}.session-more-list{position:absolute;top:calc(100% + 8px);right:0;z-index:20;min-width:180px;max-height:min(58vh,420px);overflow-y:auto;padding:8px;border:1px solid var(--border);border-radius:8px;background:var(--bg-card);box-shadow:var(--shadow-lg)}.session-more-list a,.session-more-list button{display:block;width:100%;padding:10px 12px;border:0;border-radius:6px;background:transparent;color:var(--text-secondary);font:inherit;font-size:.9rem;text-align:left;text-decoration:none;cursor:pointer}.session-more-list a:hover,.session-more-list button:hover{background:var(--bg-hover);color:var(--text-primary)}.session-more-group{margin:6px 0;padding:6px 0;border-top:1px solid color-mix(in srgb,var(--border) 72%,transparent);border-bottom:1px solid color-mix(in srgb,var(--border) 72%,transparent)}.session-more-group .icon{display:inline-flex;width:18px;margin-right:6px;vertical-align:-3px}.session-guided-target{border-color:color-mix(in srgb,var(--accent) 72%,var(--border))!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}.session-guided-target .accordion-trigger{color:var(--text-primary)}.session-coach-section[hidden]{display:none}.session-coach-section{margin:10px 0 22px}.session-coach-card{padding:18px 20px;border:1px solid color-mix(in srgb,var(--accent) 34%,var(--border) 66%);border-radius:14px;background:linear-gradient(135deg,color-mix(in srgb,var(--bg-card) 92%,var(--accent) 6%),color-mix(in srgb,var(--bg-secondary) 94%,var(--success) 4%));box-shadow:0 18px 44px -38px color-mix(in srgb,var(--accent) 72%,transparent)}.session-coach-card.is-loading{opacity:.92}.session-coach-primary{display:flex;align-items:center;justify-content:space-between;gap:16px}.session-coach-copy{min-width:0}.session-coach-label-row{display:flex;align-items:center;gap:8px;margin-bottom:4px}.session-coach-copy h2{margin:0;font-size:1.08rem;line-height:1.25;font-weight:850}.session-coach-copy p{margin:6px 0 0;color:var(--text-secondary);font-size:.9rem;line-height:1.45;overflow-wrap:anywhere}.session-coach-status{display:inline-flex;align-items:center;min-height:26px;padding:4px 10px;border:0;border-radius:999px;background:color-mix(in srgb,var(--accent) 13%,transparent);color:var(--accent);font-size:.75rem;font-weight:800;white-space:nowrap}.session-proof-trail[hidden]{display:none}.session-proof-trail{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-top:12px;padding:10px 12px;border:1px solid color-mix(in srgb,var(--border) 84%,transparent);border-radius:8px;background:color-mix(in srgb,var(--bg-card) 92%,var(--success) 8%);box-shadow:inset 3px 0 color-mix(in srgb,var(--success) 70%,transparent)}.session-proof-trail-copy{min-width:0}.session-proof-trail-label{display:block;margin-bottom:3px;color:color-mix(in srgb,var(--success) 72%,var(--text-secondary) 28%);font-size:.7rem;font-weight:780;letter-spacing:0}.session-proof-trail-title{margin:0;color:var(--text-primary);font-size:.88rem;font-weight:800;line-height:1.3;overflow-wrap:anywhere}.session-proof-trail-summary{margin:3px 0 0;color:var(--text-secondary);font-size:.78rem;line-height:1.35;overflow-wrap:anywhere}.session-proof-trail-meta{flex:0 0 auto;display:inline-flex;align-items:center;max-width:100%;min-width:0;min-height:24px;padding:3px 8px;border-radius:999px;border:1px solid color-mix(in srgb,var(--success) 22%,var(--border) 78%);background:color-mix(in srgb,var(--bg-card) 82%,var(--success) 18%);color:color-mix(in srgb,var(--success) 78%,var(--text-primary) 22%);font-size:.72rem;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.proof-inspection[hidden]{display:none}.proof-inspection{flex:1 1 100%;min-width:0;padding-top:9px;border-top:1px solid color-mix(in srgb,var(--success) 18%,var(--border) 82%)}.proof-inspection-header{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-bottom:4px}.proof-inspection-label{color:var(--text-primary);font-size:.75rem;font-weight:820}.proof-inspection-count,.proof-inspection-scope{color:var(--text-muted);font-size:.7rem;font-weight:760}.proof-inspection-reason{margin:0;color:var(--text-secondary);font-size:.76rem;line-height:1.4;overflow-wrap:anywhere}.proof-inspection-scope{display:block;margin-top:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.session-coach-details{margin-top:10px}.session-coach-details summary{display:inline-flex;align-items:center;min-height:30px;padding:0 10px;border:1px solid transparent;border-radius:999px;color:var(--text-muted);cursor:pointer;font-size:.8rem;font-weight:800;list-style:none;transition:background var(--transition),border-color var(--transition),color var(--transition)}.session-coach-details summary::-webkit-details-marker{display:none}.session-coach-details summary:hover,.session-coach-details[open] summary{border-color:color-mix(in srgb,var(--accent) 32%,var(--border));background:var(--accent-subtle);color:var(--accent)}.session-coach-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:10px}.session-coach-panel{min-width:0;padding:10px;border:1px solid color-mix(in srgb,var(--border) 74%,transparent);border-radius:8px;background:color-mix(in srgb,var(--bg-primary) 30%,transparent)}.session-coach-panel span{display:block;margin-bottom:6px;color:var(--text-muted);font-size:.72rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.session-coach-panel p{margin:0;color:var(--text-secondary);font-size:.88rem;line-height:1.48;overflow-wrap:anywhere}.session-coach-action{flex:0 0 auto;min-height:42px;padding:9px 14px;border-radius:12px;box-shadow:none}.session-proof-summary-section[hidden]{display:none}.session-proof-summary-section{margin:-6px 0 22px}.session-proof-summary-card{padding:16px 18px;border:1px solid color-mix(in srgb,var(--border) 72%,var(--success) 28%);border-radius:12px;background:linear-gradient(135deg,color-mix(in srgb,var(--bg-card) 94%,var(--success) 5%),color-mix(in srgb,var(--bg-secondary) 96%,var(--info) 4%))}.session-proof-summary-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:12px}.session-proof-summary-head h2{margin:2px 0 0;font-size:1.02rem;line-height:1.25}.session-proof-summary-head p{margin:6px 0 0;color:var(--text-secondary);font-size:.88rem;line-height:1.42}.session-proof-summary-count{display:inline-flex;align-items:center;min-height:26px;padding:4px 10px;border-radius:999px;background:color-mix(in srgb,var(--success) 14%,transparent);color:color-mix(in srgb,var(--success) 86%,var(--text-primary) 14%);font-size:.74rem;font-weight:850;white-space:nowrap}.session-proof-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.session-proof-summary-panel{min-width:0;padding:10px;border:1px solid color-mix(in srgb,var(--border) 76%,transparent);border-radius:8px;background:color-mix(in srgb,var(--bg-primary) 32%,transparent)}.session-proof-summary-panel>span{display:block;margin-bottom:8px;color:var(--text-muted);font-size:.72rem;font-weight:850;letter-spacing:.04em;text-transform:uppercase}.session-proof-summary-list{display:grid;gap:7px}.session-proof-item,.session-proof-empty{min-height:34px;padding:8px 9px;border-radius:8px;font-size:.84rem;line-height:1.35}.session-proof-item{display:grid;gap:2px;border:1px solid color-mix(in srgb,var(--border) 72%,transparent);background:color-mix(in srgb,var(--bg-card) 78%,transparent);color:var(--text-primary)}.session-proof-item[data-proof-kind=earned]{border-color:color-mix(in srgb,var(--success) 42%,var(--border))}.session-proof-item[data-proof-kind=missing]{border-color:color-mix(in srgb,var(--warning) 28%,var(--border))}.session-proof-item strong{font-size:.85rem;font-weight:850}.session-proof-item span,.session-proof-empty{color:var(--text-secondary);font-size:.78rem}@media(max-width:640px){.session-proof-summary-card{padding:14px}.session-proof-summary-head,.session-proof-summary-grid{grid-template-columns:1fr}.session-proof-summary-head{display:grid}.session-proof-summary-count{justify-self:start}}.session-focus-page .session-throughline{margin-top:14px;padding:0}.session-focus-page .session-throughline-summary:hover{background:transparent}.session-focus-page .session-throughline-kicker{color:color-mix(in srgb,var(--text-secondary) 68%,var(--accent) 32%);letter-spacing:.04em}.session-focus-page .session-throughline-spine{margin:12px 0 14px;padding:12px 14px;border-left:3px solid var(--accent);border-radius:0 10px 10px 0;background:color-mix(in srgb,var(--accent-subtle) 72%,transparent);overflow-wrap:anywhere}.session-focus-page .session-entry-question-back .session-entry-answer{margin:0;padding:0;border:0;border-radius:0;background:transparent}.session-focus-page .session-throughline-arc{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px}.session-focus-page .session-throughline-step{grid-template-columns:28px minmax(0,1fr);padding:10px;border:1px solid color-mix(in srgb,var(--border) 78%,transparent);border-radius:12px;background:color-mix(in srgb,var(--bg-card) 84%,var(--bg-primary) 16%)}.session-focus-page .session-throughline-step-num{border-color:color-mix(in srgb,var(--accent) 44%,var(--border));background:var(--accent-subtle)}.session-focus-page .session-throughline-transfer{margin:12px 0 0;padding-top:12px;border-top:1px solid var(--border)}.session-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:16px}.session-section-head h2{margin:4px 0 0}.session-audio-controls{padding:6px;border:1px solid var(--border);border-radius:999px;background:color-mix(in srgb,var(--bg-card) 82%,var(--bg-primary) 18%)}.session-audio-drawer[hidden]{display:none}.session-audio-drawer{margin-top:12px;padding:14px;border:1px solid color-mix(in srgb,var(--border) 78%,transparent);border-radius:8px;background:color-mix(in srgb,var(--bg-card) 72%,transparent)}.session-audio-drawer-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.session-audio-drawer-head h3{margin:2px 0 0;font-size:1rem}.session-references-drawer[hidden]{display:none}.session-references-drawer{padding:0;overflow:hidden}.session-references-drawer summary{display:flex;align-items:center;justify-content:space-between;min-height:52px;padding:0 16px;border-radius:8px;color:var(--text-secondary);cursor:pointer;font-weight:800;list-style:none}.session-references-drawer summary::-webkit-details-marker{display:none}.session-references-drawer summary:after{content:"";width:8px;height:8px;border-right:2px solid color-mix(in srgb,var(--text-muted) 80%,transparent);border-bottom:2px solid color-mix(in srgb,var(--text-muted) 80%,transparent);transform:rotate(45deg);transition:transform var(--transition),border-color var(--transition)}.session-references-drawer[open] summary:after{transform:rotate(225deg)}.session-references-content{display:grid;gap:16px;padding:0 16px 16px;border-top:1px solid color-mix(in srgb,var(--border) 72%,transparent)}.session-audio-controls .select{border:0;background:transparent}.tts-follow-toggle{border:1px solid var(--border);border-radius:999px;background:transparent;color:var(--text-muted);padding:6px 11px;font:inherit;font-size:.78rem;font-weight:700;line-height:1;cursor:pointer;transition:background var(--dur-base) var(--ease-out-expo),border-color var(--dur-base) var(--ease-out-expo),color var(--dur-base) var(--ease-out-expo),transform var(--dur-fast) var(--ease-out-expo)}.tts-follow-toggle:hover{border-color:color-mix(in srgb,var(--accent) 50%,var(--border));color:var(--accent)}.tts-follow-toggle.active{border-color:color-mix(in srgb,var(--accent) 70%,var(--border));background:var(--accent-subtle);color:var(--accent)}.tts-follow-toggle:active{transform:scale(.97)}.session-ideas-section .accordion{gap:12px}.session-idea-stage{position:relative;margin-top:6px;z-index:1}.session-idea-carousel-toolbar{display:flex;align-items:center;justify-content:center;margin:4px 0 20px}.session-idea-progress{display:grid;justify-items:center;gap:10px;width:min(100%,430px);min-width:0}.session-idea-progress span{color:var(--text-muted);font-size:.88rem;font-weight:900;letter-spacing:0;text-transform:uppercase}.session-idea-progress-bars{display:flex;align-items:center;justify-content:center;gap:8px;width:100%}.session-idea-progress-bar{flex:1 1 0;width:auto;max-width:78px;height:6px;padding:0;border:0;border-radius:999px;background:color-mix(in srgb,var(--border) 74%,var(--text-muted) 26%);cursor:pointer;opacity:.72;transition:background var(--transition),opacity var(--transition),transform var(--transition)}.session-idea-progress-bar.is-active{background:var(--accent);opacity:1;transform:scaleY(1.12)}.session-idea-carousel-actions{position:relative;z-index:5;display:grid;grid-template-columns:38px minmax(0,112px) 38px;align-items:center;justify-content:center;gap:12px;width:fit-content;margin:12px auto 0;padding:0}.session-idea-nav-btn,.session-idea-list-toggle{border:0;background:transparent;color:var(--text-secondary);font:inherit;font-weight:800;cursor:pointer;transition:border-color var(--transition),background var(--transition),color var(--transition),transform var(--transition),opacity var(--transition)}.session-idea-nav-btn{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;padding:0;border-radius:999px;opacity:.62}.session-idea-nav-btn svg{width:19px;height:19px}.session-idea-list-toggle{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 16px;border:1px solid color-mix(in srgb,var(--border) 58%,transparent);border-radius:999px;background:color-mix(in srgb,var(--bg-secondary) 62%,transparent);font-size:.84rem;backdrop-filter:blur(10px)}.session-idea-nav-btn:hover,.session-idea-list-toggle:hover,.session-idea-list-toggle[aria-expanded=true]{border-color:color-mix(in srgb,var(--accent) 42%,var(--border));background:var(--accent-subtle);color:var(--accent);opacity:1}.session-idea-nav-btn:active,.session-idea-list-toggle:active{transform:scale(.97)}.session-idea-nav-btn:disabled{cursor:default;opacity:.36;transform:none}.session-idea-list{display:grid;gap:8px;width:min(100%,560px);margin:0 auto 16px;padding:10px;border:1px solid color-mix(in srgb,var(--border) 82%,transparent);border-radius:8px;background:color-mix(in srgb,var(--bg-secondary) 76%,transparent)}.session-idea-list[hidden]{display:none}.session-idea-list-item{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:10px;width:100%;padding:9px 10px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--text-secondary);font:inherit;text-align:left;cursor:pointer}.session-idea-list-item span{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:9px;background:color-mix(in srgb,var(--accent-subtle) 72%,transparent);color:var(--accent);font-weight:900}.session-idea-list-item strong{min-width:0;overflow-wrap:anywhere}.session-idea-list-item:hover,.session-idea-list-item.is-active{border-color:color-mix(in srgb,var(--accent) 42%,var(--border));background:var(--accent-subtle);color:var(--text-primary)}.session-ideas-section .session-idea-carousel{display:flex;flex-direction:row;gap:16px;overflow-x:auto;overflow-y:visible;scroll-snap-type:x mandatory;scroll-padding-inline:50%;-webkit-overflow-scrolling:touch;padding:4px 2px 16px;margin-inline:-2px;scrollbar-width:none}.session-ideas-section .session-idea-carousel::-webkit-scrollbar{display:none}.session-ideas-section .session-idea-carousel.is-empty{display:grid;place-items:center;overflow:hidden}.session-idea-empty-state{display:inline-flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:320px;padding:28px 18px;border:1px solid color-mix(in srgb,var(--border) 72%,var(--accent) 20%);border-radius:18px;background:color-mix(in srgb,var(--bg-card) 86%,var(--accent) 8%);color:var(--text-secondary);font-weight:800}.session-idea-empty-state .generation-spinner{width:18px;height:18px;border-width:2px}.session-idea-card{border-radius:14px;background:var(--bg-card);box-shadow:var(--shadow-sm)}.session-ideas-section .session-idea-carousel .session-idea-card{position:relative;flex:0 0 min(78%,620px);min-height:430px;display:flex;flex-direction:column;scroll-snap-align:center;opacity:.58;transform:scale(.965);background:linear-gradient(145deg,color-mix(in srgb,var(--bg-secondary) 86%,var(--accent) 14%),color-mix(in srgb,var(--bg-card) 91%,var(--info) 9%));transition:opacity var(--transition),transform var(--transition),border-color var(--transition),box-shadow var(--transition)}.session-ideas-section .session-idea-carousel .session-idea-card:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.24;background:linear-gradient(90deg,color-mix(in srgb,var(--accent) 12%,transparent),transparent 46%),repeating-linear-gradient(135deg,color-mix(in srgb,#fff 6%,transparent) 0 1px,transparent 1px 16px)}.session-ideas-section .session-idea-carousel .session-idea-card.is-active{opacity:1;transform:scale(1);border-color:color-mix(in srgb,var(--accent) 58%,var(--border));box-shadow:0 24px 58px -44px color-mix(in srgb,var(--accent) 82%,transparent),inset 0 1px color-mix(in srgb,#fff 8%,transparent)}.session-idea-card.open{border-color:color-mix(in srgb,var(--border) 68%,var(--accent) 32%)}.session-idea-card.open .accordion-content{max-height:none;overflow:visible}.session-idea-trigger{position:relative;z-index:1;justify-content:flex-start;gap:12px;padding:22px 24px 14px;background:transparent}.session-idea-carousel .session-idea-trigger:hover{background:transparent}.session-idea-num{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;flex:0 0 auto;border-radius:10px;background:color-mix(in srgb,var(--accent-subtle) 72%,var(--bg-primary) 28%);color:var(--accent);font-weight:800}.session-idea-title{flex:1;min-width:0;overflow-wrap:anywhere}.session-focus-page .session-throughline-step strong,.session-focus-page .session-throughline-step p{overflow-wrap:anywhere}.session-focus-page .session-throughline-step p{display:none}.session-idea-card .accordion-body{position:relative;z-index:1;padding:8px 24px 22px;color:var(--text-secondary);font-size:clamp(1.02rem,2vw,1.14rem);line-height:1.78;overflow-wrap:anywhere;min-width:0}.session-idea-card .idea-actions{position:relative;z-index:1;margin:auto 24px 24px;padding-top:12px}.session-idea-carousel .accordion-content{flex:1;display:flex;flex-direction:column;max-height:none;overflow:visible}.session-idea-carousel .idea-actions{align-items:stretch}.session-idea-carousel .idea-action-cluster,.session-idea-carousel .idea-action-utility{width:100%;margin-left:0;padding-left:0;border-left:0}.session-idea-carousel .idea-action-primary{flex:1 1 100%;min-height:52px;font-size:.95rem}.session-pattern-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;margin-top:16px;padding:16px;border:1px solid color-mix(in srgb,var(--border) 72%,var(--accent) 28%);border-radius:14px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent-subtle) 76%,transparent),var(--bg-card))}.session-pattern-card h3{margin:3px 0 0}.session-pattern-card p{margin:4px 0 0;color:var(--text-secondary)}.session-pattern-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.session-pattern-actions .btn{border-radius:999px}.session-map-section .concept-map-container{opacity:.94}.session-map-section .concept-map-header{align-items:center}.session-map-section .concept-map-header h3{margin-top:2px;font-size:1rem}.session-concept-map{min-height:260px;padding:8px}.session-map-section .concept-map-container svg{width:calc(100% - 8px);margin-inline:auto}.session-resource-section h2,.session-notes-section h2{font-size:1.2rem}.session-discussion-card,.session-discussion-card *{min-width:0}.session-practice-carousel-toolbar{display:flex;justify-content:center;margin:8px 0 18px}.session-practice-progress{display:grid;justify-items:center;gap:11px;width:min(100%,440px)}.session-practice-progress span{color:color-mix(in srgb,var(--text-secondary) 86%,var(--accent));font-size:.9rem;font-weight:900;letter-spacing:0;text-transform:uppercase}.session-practice-progress-bars{display:flex;justify-content:center;gap:8px;width:100%}.session-practice-progress-bar{flex:1 1 0;max-width:118px;height:8px;padding:0;border:0;border-radius:999px;background:color-mix(in srgb,var(--border) 72%,var(--text-muted) 28%);cursor:pointer;opacity:.62;transition:background var(--transition),opacity var(--transition),transform var(--transition)}.session-practice-progress-bar.is-active{background:var(--accent);opacity:1;transform:scaleY(1.12)}.session-practice-section #discussions.session-discussion-carousel{display:flex;flex-direction:row;gap:18px;overflow-x:auto;padding:0 8px 14px;scroll-snap-type:x proximity;scroll-padding-inline:12px;touch-action:pan-y;-webkit-overflow-scrolling:touch;scrollbar-width:none}.session-practice-section #discussions.session-discussion-carousel::-webkit-scrollbar{display:none}.session-discussion-carousel .session-discussion-card.card{position:relative;display:flex;flex-direction:column;flex:0 0 min(92%,720px);min-height:470px;overflow:hidden;padding:clamp(24px,4vw,32px);border:1px solid color-mix(in srgb,var(--border) 68%,var(--accent) 16%);border-radius:18px;background:linear-gradient(145deg,color-mix(in srgb,var(--bg-card) 91%,var(--accent) 7%),color-mix(in srgb,var(--bg-secondary) 89%,var(--info) 3%)),repeating-linear-gradient(135deg,color-mix(in srgb,#fff 4%,transparent) 0 1px,transparent 1px 16px);box-shadow:inset 0 1px color-mix(in srgb,#fff 6%,transparent);scroll-snap-align:center;opacity:.58;transition:opacity var(--transition),border-color var(--transition),background var(--transition),transform var(--transition)}.session-discussion-carousel .session-discussion-card.card.is-active{border-color:color-mix(in srgb,var(--accent) 62%,var(--border));background:linear-gradient(145deg,color-mix(in srgb,var(--bg-card) 88%,var(--accent) 9%),color-mix(in srgb,var(--bg-secondary) 82%,var(--info) 4%)),repeating-linear-gradient(135deg,color-mix(in srgb,#fff 5%,transparent) 0 1px,transparent 1px 16px);opacity:1;transform:translateY(-1px)}.session-discussion-carousel .session-discussion-card.card:hover{border-color:color-mix(in srgb,var(--accent) 42%,var(--border));box-shadow:none}.session-discussion-prompt{display:grid;grid-template-columns:42px minmax(0,1fr);gap:16px;align-items:start}.session-discussion-index{display:inline-flex;align-items:center;justify-content:flex-start;min-height:34px;padding-top:4px;color:var(--accent);font-size:.95rem;font-weight:900;line-height:1}.session-discussion-copy{min-width:0;display:grid;gap:8px}.session-discussion-kicker{color:color-mix(in srgb,var(--text-muted) 78%,var(--accent) 22%);font-size:.74rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.session-discussion-question{margin:0;color:var(--text-primary);font-size:clamp(1.18rem,2.55vw,1.55rem);font-weight:820;line-height:1.28;overflow-wrap:anywhere;text-wrap:balance}.session-discussion-helper{margin:10px 0 0;color:color-mix(in srgb,var(--text-muted) 84%,var(--accent) 16%);font-size:.86rem;font-weight:760;line-height:1.35}.session-discussion-writing{flex:0 0 auto;min-height:0;display:block;margin-top:22px}.textarea.session-discussion-textarea{display:block;width:100%;min-height:154px;border-color:color-mix(in srgb,var(--border) 54%,transparent);border-radius:16px;background:linear-gradient(145deg,color-mix(in srgb,var(--bg-secondary) 70%,transparent),color-mix(in srgb,var(--bg-card) 74%,transparent));box-shadow:none;color:var(--text-primary);font-size:clamp(1.04rem,2.5vw,1.22rem);line-height:1.62;resize:none}.textarea.session-discussion-textarea:focus{border-color:color-mix(in srgb,var(--accent) 56%,var(--border));box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 15%,transparent)}.session-answer-voice-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;min-height:42px}.session-answer-voice-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 15px;border:1px solid color-mix(in srgb,var(--border) 66%,var(--accent) 22%);border-radius:999px;background:color-mix(in srgb,var(--bg-card) 78%,transparent);color:var(--text-secondary);font:inherit;font-size:.9rem;font-weight:860;cursor:pointer;transition:border-color var(--transition),background var(--transition),color var(--transition),transform var(--transition),opacity var(--transition)}.session-answer-voice-btn:hover,.session-answer-voice-btn:focus-visible{border-color:color-mix(in srgb,var(--accent) 56%,var(--border));background:var(--accent-subtle);color:var(--accent)}.session-answer-voice-btn.is-listening{border-color:color-mix(in srgb,var(--accent) 82%,transparent);background:var(--accent);color:#fff}.session-answer-voice-btn.is-busy{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 52%,var(--border))}.session-answer-voice-btn:disabled{cursor:not-allowed;opacity:.55}.session-answer-voice-icon,.session-answer-voice-icon .icon{width:17px;height:17px;flex:0 0 auto}.session-answer-voice-icon{display:inline-flex;align-items:center;justify-content:center}.session-answer-voice-status{min-width:0;color:var(--text-muted);font-size:.82rem;font-weight:800;line-height:1.28;text-align:right}.session-answer-voice-status.is-error{color:var(--danger)}.session-answer-voice-status.is-done{color:color-mix(in srgb,var(--success) 84%,var(--text-primary) 16%)}.session-discussion-actions{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;justify-content:stretch;gap:12px;margin-top:auto;padding-top:18px}.session-feedback-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap}.session-feedback-btn.btn{min-height:48px;padding:0 20px;border:0;border-radius:15px;background:var(--accent);color:#fff;box-shadow:0 18px 38px -30px color-mix(in srgb,var(--accent) 90%,transparent);font-size:.94rem;font-weight:900}.session-feedback-icon{display:inline-flex;align-items:center;margin-right:6px}.session-feedback-btn.btn:hover:not(:disabled){filter:brightness(1.06)}.session-feedback-btn.btn:disabled{cursor:default;opacity:.46}.session-feedback-btn.btn.is-refresh{border:1px solid color-mix(in srgb,var(--border) 70%,var(--accent) 20%);background:color-mix(in srgb,var(--bg-card) 78%,transparent);color:var(--text-secondary);box-shadow:none}.session-feedback-btn[hidden],.session-feedback-view-btn[hidden],.session-feedback-next-btn[hidden]{display:none!important}.session-feedback-view-btn,.session-feedback-next-btn{min-height:46px;padding:0 16px;border-radius:15px;font:inherit;font-size:.9rem;font-weight:900;cursor:pointer}.session-feedback-view-btn{border:1px solid color-mix(in srgb,var(--border) 72%,var(--accent) 24%);background:color-mix(in srgb,var(--bg-card) 76%,transparent);color:var(--text-secondary)}.session-feedback-next-btn{border:0;background:color-mix(in srgb,var(--accent) 90%,#fff 10%);color:#fff}.session-feedback-view-btn:hover,.session-feedback-view-btn:focus-visible{border-color:color-mix(in srgb,var(--accent) 58%,var(--border));color:var(--accent)}.session-char-count{color:var(--text-muted);font-size:.82rem;font-weight:800;white-space:nowrap}.session-char-count.is-ready{color:color-mix(in srgb,var(--success) 82%,var(--text-primary) 18%)}.session-practice-feedback-inline{display:none!important}.session-practice-carousel-actions{position:relative;z-index:5;display:grid;grid-template-columns:minmax(82px,1fr) minmax(126px,1.08fr) minmax(82px,1fr);align-items:center;justify-content:center;gap:10px;width:min(100%,430px);margin:8px auto 0;padding:8px;border:1px solid color-mix(in srgb,var(--border) 62%,transparent);border-radius:999px;background:color-mix(in srgb,var(--bg-secondary) 62%,transparent);backdrop-filter:blur(14px)}.session-practice-nav-btn,.session-practice-list-toggle{border:0;background:transparent;color:var(--text-secondary);font:inherit;font-weight:800;cursor:pointer;transition:border-color var(--transition),background var(--transition),color var(--transition),transform var(--transition),opacity var(--transition)}.session-practice-nav-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:100%;min-height:46px;padding:0 12px;border-radius:999px;opacity:.82}.session-practice-nav-btn svg{width:18px;height:18px}.session-practice-nav-btn span{font-size:.82rem}.session-practice-list-toggle{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 18px;border:1px solid color-mix(in srgb,var(--border) 58%,transparent);border-radius:999px;background:color-mix(in srgb,var(--bg-card) 74%,transparent);font-size:.9rem;backdrop-filter:blur(10px)}.session-practice-nav-btn:hover,.session-practice-list-toggle:hover,.session-practice-list-toggle[aria-expanded=true]{border-color:color-mix(in srgb,var(--accent) 42%,var(--border));background:var(--accent-subtle);color:var(--accent);opacity:1}.session-practice-nav-btn:active,.session-practice-list-toggle:active{transform:scale(.97)}.session-practice-nav-btn:disabled{cursor:default;opacity:.36;transform:none}.session-practice-list{display:grid;gap:8px;width:min(100%,560px);margin:0 auto 14px;padding:10px;border:1px solid color-mix(in srgb,var(--border) 82%,transparent);border-radius:8px;background:color-mix(in srgb,var(--bg-secondary) 76%,transparent)}.session-practice-list[hidden]{display:none}.session-practice-list-item{display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:10px;width:100%;padding:9px 10px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--text-secondary);font:inherit;text-align:left;cursor:pointer}.session-practice-list-item span{color:var(--accent);font-size:.78rem;font-weight:900}.session-practice-list-item strong{min-width:0;overflow-wrap:anywhere}.session-practice-list-item:hover,.session-practice-list-item.is-active{border-color:color-mix(in srgb,var(--accent) 42%,var(--border));background:var(--accent-subtle);color:var(--text-primary)}.session-reflection-card.card{position:relative;display:grid;grid-template-rows:auto minmax(180px,1fr) auto auto;gap:18px;min-height:min(640px,68svh);overflow:hidden;padding:clamp(24px,4vw,32px);border:1px solid color-mix(in srgb,var(--border) 66%,var(--accent) 22%);border-radius:18px;background:linear-gradient(145deg,color-mix(in srgb,var(--bg-card) 89%,var(--accent) 8%),color-mix(in srgb,var(--bg-secondary) 88%,var(--success) 3%)),repeating-linear-gradient(135deg,color-mix(in srgb,#fff 4%,transparent) 0 1px,transparent 1px 16px);box-shadow:0 20px 54px -42px color-mix(in srgb,var(--accent) 70%,transparent),inset 0 1px color-mix(in srgb,#fff 7%,transparent)}.session-reflection-prompt{display:grid;grid-template-columns:42px minmax(0,1fr);gap:16px;align-items:start}.session-reflection-index{display:inline-flex;align-items:flex-start;justify-content:flex-start;min-height:34px;padding-top:4px;color:var(--accent);font-size:.95rem;font-weight:900;line-height:1}.session-reflection-copy{min-width:0;display:grid;gap:8px}.session-reflection-kicker{color:color-mix(in srgb,var(--text-muted) 78%,var(--accent) 22%);font-size:.74rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.session-reflection-copy p{margin:0;color:var(--text-primary);font-size:clamp(1.16rem,2.6vw,1.52rem);font-weight:800;line-height:1.34;overflow-wrap:anywhere;text-wrap:balance}.session-reflection-writing{display:flex;min-height:0}.textarea.session-reflection-textarea{display:block;width:100%;height:100%;min-height:190px;resize:none;border-color:color-mix(in srgb,var(--border) 54%,transparent);border-radius:18px;background:linear-gradient(145deg,color-mix(in srgb,var(--bg-secondary) 70%,transparent),color-mix(in srgb,var(--bg-card) 74%,transparent));color:var(--text-primary);font-size:clamp(1.04rem,2.5vw,1.2rem);line-height:1.62;overflow-y:auto;box-shadow:none}.textarea.session-reflection-textarea:focus{border-color:color-mix(in srgb,var(--accent) 58%,var(--border));box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 15%,transparent)}.session-reflection-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding-top:2px}.session-reflection-status{display:flex;align-items:center;gap:10px;min-width:0;flex-wrap:wrap}.session-char-count.is-stale{color:var(--warning)}.session-reflection-path{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:8px;border:1px solid color-mix(in srgb,var(--border) 62%,transparent);border-radius:16px;background:color-mix(in srgb,var(--bg-secondary) 58%,transparent)}.session-reflection-path-step{min-width:0;display:grid;gap:4px;padding:10px;border:1px solid color-mix(in srgb,var(--border) 70%,transparent);border-radius:12px;background:color-mix(in srgb,var(--bg-card) 62%,transparent);transition:border-color var(--transition),background var(--transition),color var(--transition)}.session-reflection-path-step span{color:var(--text-muted);font-size:.72rem;font-weight:900;text-transform:uppercase}.session-reflection-path-step strong{min-width:0;color:var(--text-secondary);font-size:.9rem;font-weight:900;overflow-wrap:anywhere}.session-reflection-path-step.is-current{border-color:color-mix(in srgb,var(--accent) 48%,var(--border));background:var(--accent-subtle)}.session-reflection-path-step.is-current strong{color:var(--accent)}.session-reflection-path-step.is-done{border-color:color-mix(in srgb,var(--success) 52%,var(--border));background:color-mix(in srgb,var(--success) 12%,var(--bg-card))}.session-reflection-path-step.is-done strong{color:color-mix(in srgb,var(--success) 82%,var(--text-primary) 18%)}.session-closing-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;border-color:color-mix(in srgb,var(--border) 70%,var(--accent) 30%);background:radial-gradient(ellipse at 88% 0%,color-mix(in srgb,var(--accent) 12%,transparent),transparent 38%),var(--bg-card)}.session-finish-card.is-guided-next{border-color:color-mix(in srgb,var(--accent) 52%,var(--border));box-shadow:0 18px 42px #6366f12e,0 0 0 4px color-mix(in srgb,var(--accent) 10%,transparent)}.session-closing-card h2{margin:4px 0 0}.session-closing-card p{margin:6px 0 0;color:var(--text-secondary)}.session-closing-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.session-closing-actions .btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:999px}.session-closing-actions #quizBtn.is-loading,.session-closing-actions #quizBtn[aria-busy=true]{color:color-mix(in srgb,var(--text-secondary) 88%,var(--accent) 12%);border-color:color-mix(in srgb,var(--border) 68%,var(--accent) 24%);background:color-mix(in srgb,var(--bg-card) 82%,var(--accent) 8%);opacity:1}.session-check-spinner{width:16px;height:16px;border:2px solid color-mix(in srgb,currentColor 24%,transparent);border-top-color:currentColor;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.session-quiz-progress{align-items:center;gap:10px;flex-wrap:wrap}.session-nav-row{display:flex;justify-content:space-between;gap:12px;padding-bottom:48px}@media(max-width:768px){.session-focus-page{max-width:100%}.session-focus-header{padding:22px 0 14px}.session-focus-header h1{font-size:clamp(1.9rem,9vw,2.6rem)}.session-shell-card{padding:18px}.session-focus-copy h1{font-size:clamp(1.75rem,8vw,2.35rem)}.session-shell-subtitle{font-size:1.08rem}.session-artifact-return{grid-template-columns:minmax(0,1fr) auto}.session-artifact-return-btn{width:auto}.session-focus-actions{display:grid;grid-template-columns:1fr 1fr;align-items:stretch}#sessionStartBtn,.session-focus-actions .btn,.session-more-menu,.session-more-menu summary{width:100%}#sessionStartBtn{grid-column:1 / -1}.session-more-list{left:auto;right:0;max-height:min(38vh,300px)}.session-coach-card{padding:12px}.session-coach-primary{flex-direction:column;align-items:stretch;gap:10px}.session-coach-grid{grid-template-columns:1fr}.session-proof-trail{align-items:flex-start;flex-direction:column}.proof-inspection-scope{white-space:normal}.session-coach-action{width:100%}.session-focus-page .session-throughline-head{flex-direction:column}.session-focus-page .session-throughline-arc{grid-template-columns:1fr}.session-section-head{align-items:flex-start;flex-direction:column}.session-audio-controls{display:grid;grid-template-columns:1fr;width:100%;border-radius:14px}.session-audio-controls .select{width:100%}.session-audio-controls .tts-speed{width:100%;justify-content:space-between;margin-left:0}.session-audio-controls .tts-range{flex:1;width:100%;min-width:0}.session-idea-carousel-toolbar{margin:2px 0 18px}.session-idea-progress{width:min(100%,330px)}.session-idea-progress span{font-size:.86rem}.session-idea-progress-bars{gap:7px}.session-idea-progress-bar{height:6px}.session-idea-carousel-actions{position:sticky;bottom:calc(76px + env(safe-area-inset-bottom));grid-template-columns:38px minmax(0,104px) 38px;gap:10px;width:fit-content;margin-top:12px;padding:0}.session-idea-nav-btn{width:38px;height:38px}.session-idea-list-toggle{min-height:38px;font-size:.82rem}.session-ideas-section .session-idea-carousel{gap:12px;padding-bottom:14px;scroll-padding-inline:12px}.session-ideas-section .session-idea-carousel .session-idea-card{flex-basis:calc(100% - 18px);min-height:430px;opacity:.72}.session-practice-carousel-toolbar{margin:4px 0 16px}.session-practice-progress{width:min(100%,340px)}.session-practice-progress span{font-size:.86rem}.session-practice-progress-bars{gap:7px}.session-practice-progress-bar{height:7px}.session-practice-section #discussions.session-discussion-carousel{gap:12px;padding:0 2px 14px;scroll-padding-inline:12px}.session-discussion-carousel .session-discussion-card.card{flex-basis:calc(100% - 18px);min-height:430px;padding:22px 18px;opacity:.72}.session-discussion-prompt{grid-template-columns:38px minmax(0,1fr);gap:12px}.session-discussion-actions{grid-template-columns:1fr;align-items:stretch;gap:10px}.session-feedback-actions{justify-content:stretch}.session-feedback-btn.btn,.session-feedback-view-btn,.session-feedback-next-btn{width:100%}.session-practice-carousel-actions{grid-template-columns:minmax(72px,1fr) minmax(112px,1.05fr) minmax(72px,1fr);gap:8px;width:min(100%,360px);margin-top:2px;padding:7px}.session-practice-nav-btn{min-height:44px;padding-inline:9px}.session-practice-list-toggle{min-height:44px;font-size:.86rem;padding-inline:12px}.session-idea-trigger{padding:18px 18px 12px}.session-idea-card .accordion-body{padding:4px 18px 20px;font-size:1rem}.session-idea-card .idea-actions{margin:auto 18px 20px}.session-pattern-card,.session-closing-card{grid-template-columns:1fr;align-items:stretch}.session-pattern-actions,.session-closing-actions{justify-content:flex-start}.session-discussion-actions{align-items:center;flex-direction:row}.session-feedback-actions,.session-feedback-actions .btn{width:auto}.session-discussion-prompt{grid-template-columns:30px minmax(0,1fr);gap:10px}.session-discussion-index{height:26px;font-size:.8rem}.session-discussion-question{font-size:1.18rem;line-height:1.34}.textarea.session-discussion-textarea{min-height:208px;margin-top:16px;padding:16px;font-size:1.08rem;line-height:1.58}.session-answer-voice-row{align-items:flex-start;flex-direction:column;gap:8px;margin-top:10px}.session-answer-voice-btn{width:100%;min-height:46px;font-size:.94rem}.session-answer-voice-status{width:100%;text-align:left}.session-char-count{white-space:nowrap}.session-concept-map{min-height:230px}}@media(max-width:360px){.session-artifact-return{grid-template-columns:1fr}.session-artifact-return-btn{width:100%}}@media(max-width:480px){.session-top-row .btn,.session-top-row .badge{min-height:34px}.session-focus-actions .btn,.session-pattern-actions .btn,.session-closing-actions .btn,.session-nav-row .btn{width:100%}.session-nav-row{flex-direction:column}.session-idea-trigger{padding:14px}.session-idea-num{width:30px;height:30px;border-radius:9px}.session-audio-controls{align-items:stretch}.session-audio-controls .select,.session-audio-controls .tts-speed{width:100%}.session-audio-controls .tts-speed{justify-content:space-between}}.textarea,.input{width:100%;padding:12px 16px;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);font-family:inherit;font-size:16px;line-height:1.6;transition:border-color var(--transition);resize:vertical}@media(min-width:769px){.textarea,.input{font-size:.95rem}}.textarea:focus,.input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-subtle)}.textarea{min-height:120px}.select{padding:10px 14px;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);font-family:inherit;font-size:16px;cursor:pointer;min-height:44px;max-width:100%}@media(min-width:769px){.select{font-size:.9rem;min-height:0}}.auth-shell{width:min(100%,460px);max-width:460px;padding-top:48px;padding-bottom:48px}.auth-card{width:100%;max-width:100%;padding:32px}.auth-card,.auth-card *{min-width:0}.auth-header{text-align:center;margin-bottom:24px}.auth-kicker,.auth-prompt-label{display:block;margin-bottom:6px;color:var(--accent);font-size:.78rem;font-weight:800}.auth-header h1{margin-bottom:8px;font-size:2rem;line-height:1.15;overflow-wrap:anywhere;word-break:break-word}.auth-header p,.auth-prompt h2,.auth-prompt p{overflow-wrap:anywhere}.auth-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;margin-bottom:24px;padding:4px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-secondary)}.auth-tab{min-height:40px;padding:8px 12px;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);cursor:pointer;font:inherit;font-weight:700;transition:background var(--transition),color var(--transition),box-shadow var(--transition)}.auth-tab.active{background:var(--accent);color:#fff;box-shadow:0 8px 18px #6c63ff33}.auth-tab:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.auth-form{display:flex;flex-direction:column;gap:16px}.auth-form .btn{width:100%;max-width:100%;white-space:normal;text-align:center}.auth-field label{display:block;margin-bottom:4px}.auth-field-hint{min-height:1.25em;margin-top:6px;color:var(--text-muted);font-size:.78rem;line-height:1.35}.auth-field-hint.is-error{color:var(--danger)}.auth-field-hint.is-success{color:var(--success)}.auth-feedback{margin-top:16px;padding:12px 14px;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:.86rem;font-weight:600;line-height:1.45;text-align:center}.auth-feedback[hidden]{display:none}.auth-feedback--success{border-color:color-mix(in srgb,var(--success) 36%,var(--border));background:var(--success-subtle);color:var(--success)}.auth-feedback--error{border-color:color-mix(in srgb,var(--danger) 36%,var(--border));background:var(--danger-subtle);color:var(--danger)}.auth-feedback--info{border-color:color-mix(in srgb,var(--info) 32%,var(--border));background:var(--info-subtle);color:var(--info)}.auth-inline-action{width:100%;margin-top:8px}.auth-inline-action[hidden]{display:none}.auth-secondary-action{margin-top:18px;text-align:center}.auth-text-action{border:0;background:transparent;color:var(--accent);cursor:pointer;font:inherit;font-size:.9rem;font-weight:700;text-decoration:none}.auth-text-action:hover{color:var(--accent-hover)}.auth-text-action:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:var(--radius-sm)}.auth-footnote{margin-top:24px;text-align:center}.auth-prompt-overlay{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:24px;background:#05070fad}.auth-prompt-overlay[hidden]{display:none}.auth-prompt{position:relative;width:min(100%,430px);padding:28px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-secondary);box-shadow:var(--shadow-lg);text-align:center}.auth-prompt-close{position:absolute;top:12px;right:12px;width:34px;height:34px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-hover);color:var(--text-secondary);cursor:pointer;font-size:1.2rem;line-height:1}.auth-prompt-close:hover{color:var(--text-primary);border-color:var(--border-hover)}.auth-prompt-close .icon{width:16px;height:16px}.auth-prompt-icon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;margin-bottom:14px;border-radius:50%;background:var(--success-subtle);color:var(--success);font-weight:800}.auth-prompt-icon .icon{width:24px;height:24px}.auth-prompt h2{margin-bottom:8px;font-size:1.45rem}.auth-prompt p{color:var(--text-secondary)}.auth-prompt-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.auth-prompt-actions .btn{flex:1 1 160px;white-space:normal;text-align:center}.auth-prompt-actions .btn[hidden]{display:none}@media(max-width:768px){.container.auth-shell{margin-right:auto;margin-left:auto}.auth-header,.auth-footnote,.auth-secondary-action{text-align:center}.auth-header p,.auth-footnote{max-width:none}.auth-tabs,.auth-form,.auth-feedback,.auth-inline-action,.auth-secondary-action{width:100%;max-width:100%}}@media(max-width:480px){.container.auth-shell{width:100%;max-width:100%;margin-right:0;margin-left:0;padding:32px 8px}.auth-card{width:100%;max-width:100%;padding:24px}.auth-header h1{max-width:calc(100vw - 32px);margin-right:0;margin-left:0;font-size:1.65rem}.auth-header p{max-width:calc(100vw - 32px);margin-right:0;margin-left:0}.auth-prompt{padding:26px 20px 22px}}@media(max-width:380px){.container.auth-shell{padding-right:8px;padding-left:8px}.auth-card{padding:18px 14px}.auth-header h1{font-size:1.35rem}.auth-tabs{padding:3px;gap:3px}.auth-tab{padding:8px 6px;font-size:.84rem}}@media(max-width:240px){.container.auth-shell{padding-right:4px;padding-left:4px}.auth-card{padding:14px 8px}.auth-header{margin-bottom:16px}.auth-kicker{font-size:.68rem}.auth-header h1{font-size:1.12rem;max-width:11ch;margin-right:0;margin-left:0}.auth-header p,.auth-footnote{max-width:calc(100vw - 28px);margin-right:0;margin-left:0;font-size:.76rem}.auth-tabs{width:100%;max-width:calc(100vw - 24px);margin-bottom:16px}.auth-tab,.auth-text-action{font-size:.76rem}.auth-form{gap:12px}.auth-field label{font-size:.76rem}.auth-field-hint{font-size:.7rem}.auth-card .input{max-width:calc(100vw - 24px);padding:9px 10px}.auth-form .btn,.auth-secondary-action{max-width:calc(100vw - 24px)}}.quiz-option{display:block;width:100%;padding:16px 20px;background:var(--bg-card);border:2px solid var(--border);border-radius:var(--radius-md);color:var(--text-primary);font-size:1rem;font-family:inherit;cursor:pointer;transition:all var(--transition);text-align:left;margin-bottom:10px;overflow-wrap:anywhere}#questionText{overflow-wrap:anywhere}.quiz-option:hover{border-color:var(--accent);background:var(--accent-subtle)}.quiz-option.correct{border-color:var(--success);background:var(--success-subtle)}.quiz-option.incorrect{border-color:var(--danger);background:var(--danger-subtle);animation:quiz-wrong-shake .4s var(--ease-out) both}.quiz-option.correct{animation:quiz-correct-pop .3s var(--ease-spring-soft) both}@keyframes quiz-correct-pop{0%{transform:scale(1)}40%{transform:scale(1.02)}to{transform:scale(1)}}@keyframes quiz-wrong-shake{0%,to{transform:translate(0)}15%{transform:translate(-8px)}30%{transform:translate(8px)}45%{transform:translate(-6px)}60%{transform:translate(6px)}75%{transform:translate(-3px)}}@media(prefers-reduced-motion:reduce){.quiz-option.correct,.quiz-option.incorrect{animation:none}}.quiz-option.dimmed{opacity:.5;pointer-events:none}.quiz-key-hint{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:4px;background:var(--bg-hover);border:1px solid var(--border);font-size:.75rem;font-weight:700;color:var(--text-muted);margin-right:8px;flex-shrink:0}.quiz-explanation{padding:16px 20px;border-radius:var(--radius-md);margin-top:16px;line-height:1.6}.quiz-explanation.correct-bg{background:var(--success-subtle);color:var(--success)}.quiz-explanation.incorrect-bg{background:var(--danger-subtle);color:var(--danger)}.quiz-explanation.self-check-bg{background:color-mix(in srgb,var(--accent-subtle) 82%,var(--bg-card));color:var(--text-secondary);border:1px solid color-mix(in srgb,var(--accent) 24%,var(--border))}.quiz-loading-card,.quiz-written-card{display:grid;gap:14px;padding:18px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-card)}.quiz-loading-card{grid-template-columns:auto 1fr;align-items:center;color:var(--text-secondary)}.quiz-written-answer{width:100%;min-height:140px;resize:vertical;line-height:1.65;font-family:inherit}.quiz-model-answer{margin:10px 0 12px;padding:14px;border-radius:12px;background:var(--bg-card);color:var(--text-primary);line-height:1.65;white-space:pre-wrap;overflow-wrap:anywhere}.quiz-self-check{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:14px}.quiz-self-check span{flex-basis:100%;color:var(--text-muted);font-size:.82rem;font-weight:650}.quiz-self-check button{border:1px solid var(--border);border-radius:999px;background:var(--bg-card);color:var(--text-primary);padding:8px 13px;font:inherit;font-size:.86rem;font-weight:750;cursor:pointer;transition:transform var(--dur-fast),border-color var(--dur-base),background var(--dur-base)}.quiz-self-check button:hover,.quiz-self-check button.selected{border-color:var(--accent);background:var(--accent);color:#fff}.quiz-self-check button:disabled{cursor:default;opacity:.72}.quiz-self-check.answered .quiz-rating-btn:not(.selected){display:none}.quiz-self-check.answered .quiz-rating-btn.selected{opacity:1}.quiz-self-check .quiz-inline-next{border-color:var(--accent);border-radius:var(--radius-sm);background:var(--accent);color:#fff;padding:8px 14px;min-height:40px}.quiz-self-check .quiz-inline-next[hidden]{display:none!important}.quiz-review-answer{margin:8px 0 12px;padding:12px;border-radius:10px;background:var(--bg-input);color:var(--text-primary);line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere}.quiz-empty-options{padding:18px 20px;border-color:color-mix(in srgb,var(--warning) 38%,var(--border))}.quiz-empty-options p{margin-top:6px}.quiz-progress{height:6px;background:var(--border);border-radius:999px;overflow:hidden;margin-bottom:32px}.quiz-progress-fill{height:100%;background:var(--accent);border-radius:999px;transition:width var(--dur-slow) var(--ease-spring-soft)}.quiz-strengthen-page main.container{max-width:660px!important}.quiz-strengthen-page .page-header{margin-bottom:22px}.quiz-strengthen-page #quizBadge{background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent)}.quiz-strengthen-page #quizTitle{max-width:18ch;line-height:1.05}.quiz-strengthen-page #questionCounter{margin-bottom:16px!important}.quiz-strengthen-page #resultsArea>.card{padding:34px 26px!important}.quiz-strengthen-page #resultsScore{max-width:18ch;margin-left:auto;margin-right:auto;line-height:1.15}.quiz-strengthen-page #resultsMessage{max-width:36ch;margin-left:auto;margin-right:auto;line-height:1.55}.flashcard-container{perspective:1200px;width:100%;max-width:600px;margin:0 auto}.flashcard{width:100%;min-height:300px;position:relative;transform-style:preserve-3d;transition:transform .6s cubic-bezier(.4,0,.2,1);cursor:pointer}.flashcard.flipped{transform:rotateY(180deg)}.flashcard-face{position:absolute;inset:0;backface-visibility:hidden;border-radius:var(--radius-lg);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;text-align:center}.flashcard-front{background:var(--bg-card);border:2px solid var(--border);color:var(--text-primary);font-size:1.2rem;font-weight:600;line-height:1.6}.flashcard-back{background:var(--accent-subtle);border:2px solid var(--accent);transform:rotateY(180deg);color:var(--text-primary);font-size:1.05rem;line-height:1.7}.flashcard-rating{display:flex;gap:10px;justify-content:center;margin-top:24px;flex-wrap:wrap}.rating-btn{padding:10px 20px;border:2px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-card);color:var(--text-primary);font-weight:600;font-family:inherit;cursor:pointer;transition:all var(--transition)}.rating-btn:hover{border-color:var(--accent)}.rating-btn.again{border-color:var(--danger);color:var(--danger)}.rating-btn.hard{border-color:var(--warning);color:var(--warning)}.rating-btn.good{border-color:var(--success);color:var(--success)}.rating-btn.easy{border-color:var(--info);color:var(--info)}.journal-list{display:flex;flex-direction:column;gap:16px}.journal-entry{position:relative}.journal-entry-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;flex-wrap:wrap;gap:8px}.journal-date{font-size:.85rem;color:var(--text-muted)}.journal-entry-body{color:var(--text-secondary);line-height:1.7;white-space:pre-wrap}.journal-actions{display:flex;gap:8px}.heatmap{display:grid;grid-template-columns:repeat(auto-fill,18px);gap:3px}.heatmap-cell{width:16px;height:16px;border-radius:3px;background:var(--bg-hover)}.heatmap-cell.active{background:var(--accent)}.heatmap-cell.active-light{background:var(--accent-subtle)}.progress-table{width:100%;border-collapse:separate;border-spacing:0}.progress-table th,.progress-table td{padding:12px 16px;text-align:left;border-bottom:1px solid var(--border)}.progress-table th{font-weight:600;color:var(--text-secondary);font-size:.85rem;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.progress-table td:nth-child(2){min-width:140px}.progress-table td:nth-child(3),.progress-table td:nth-child(4),.progress-table td:nth-child(5),.progress-table td:nth-child(6){white-space:nowrap}.progress-table-card{overflow-x:auto}@media(max-width:640px){.progress-page-header{padding:22px 0 12px}.progress-page-header h1{font-size:clamp(1.6rem,7vw,2rem);line-height:1.05}.progress-page-header p{margin-top:8px;font-size:.88rem}.stats-row.progress-stats-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-bottom:16px}.stats-row.progress-stats-row .stat-card{min-height:72px;padding:10px 5px}.stats-row.progress-stats-row .stat-value{font-size:1.1rem;line-height:1}.stats-row.progress-stats-row .stat-label{margin-top:6px;font-size:.64rem;line-height:1.15}.progress-streak-card{padding:12px}.progress-streak-card .heatmap{grid-template-columns:repeat(auto-fill,12px);gap:2px}.progress-streak-card .heatmap-cell{width:11px;height:11px;border-radius:2px}.progress-table-card{padding:0;overflow:visible;background:transparent;border:0}.progress-table,.progress-table thead,.progress-table tbody,.progress-table tr,.progress-table td{display:block;width:100%}.progress-table thead{display:none}.progress-table tbody{display:grid;gap:10px}.progress-table tr{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-card);padding:12px}.progress-table th,.progress-table td{border-bottom:0}.progress-table td{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0!important;padding:7px 0;color:var(--text-secondary);white-space:normal!important;text-align:right}.progress-table td:before{content:attr(data-label);flex:0 0 auto;color:var(--text-muted);font-size:.68rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.progress-table td:nth-child(2){align-items:flex-start;color:var(--text-primary);font-weight:750;line-height:1.3}.progress-table td:nth-child(6) .btn{width:auto;min-width:92px;justify-content:center}}.quick-actions{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:32px}.course-path-page{overflow-x:clip}.course-back-row{padding-top:16px}.course-path-header{padding:26px 0 16px}.course-path-hero{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:28px;min-width:0}.course-path-titleblock,.course-path-titlebar{min-width:0}.course-path-titlebar{display:flex;align-items:flex-start;gap:10px}.course-path-titlebar h1{flex:1;min-width:0;margin:0;overflow-wrap:anywhere;letter-spacing:-.02em}.course-path-purpose,.course-section-note{max-width:62ch;margin:6px 0 0;color:color-mix(in srgb,var(--text-primary) 72%,var(--text-secondary) 28%);font-size:.92rem;line-height:1.45}.course-menu-wrap{position:relative;flex-shrink:0}.course-next-card{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;padding:18px 20px 20px;margin-bottom:22px;border-color:color-mix(in srgb,var(--accent) 34%,var(--border) 66%);border-radius:14px;background:linear-gradient(135deg,color-mix(in srgb,var(--bg-card) 92%,var(--accent) 6%),color-mix(in srgb,var(--bg-secondary) 94%,var(--success) 4%));box-shadow:0 18px 44px -38px color-mix(in srgb,var(--accent) 72%,transparent)}.course-kicker{color:var(--accent);font-size:.72rem;font-weight:800;letter-spacing:0;text-transform:uppercase}.course-next-copy h2,.course-tools-head h2,.course-section-header h2{margin:4px 0 0}.course-next-copy p{max-width:62ch;margin:6px 0 0;color:var(--text-secondary);font-size:.9rem;line-height:1.45}.course-next-side{display:flex;align-items:center;gap:14px;min-width:0;flex-shrink:0}.course-next-meta{max-width:100%;min-width:0;min-height:26px;padding:4px 10px;border-radius:999px;background:color-mix(in srgb,var(--accent) 13%,transparent);color:var(--accent);font-size:.75rem;font-weight:800;line-height:1.25;overflow-wrap:anywhere;white-space:normal}.course-path-section{margin-bottom:28px}.course-section-header{align-items:flex-end}.course-generate-controls{align-items:center;gap:12px;flex-wrap:wrap}.course-tools-panel{margin-bottom:36px;padding:18px;border:1px solid var(--border);border-radius:var(--radius-md);background:color-mix(in srgb,var(--bg-card) 72%,transparent)}.course-tools-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;margin-bottom:16px}.course-path-page .quick-actions{justify-content:flex-end;margin-bottom:0}.course-path-page .quick-actions .btn{border-radius:999px}.course-stats-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:0}.course-stats-row .stat-card{padding:12px 14px;background:color-mix(in srgb,var(--bg-card) 74%,var(--bg-primary) 26%)}.course-stats-row .stat-value{font-size:1.18rem}.course-stats-row .stat-label{font-size:.72rem}.empty-state{text-align:center;padding:64px 24px;color:var(--text-muted);background:var(--bg-card);border:2px dashed var(--border);border-radius:var(--radius-lg)}.empty-state-icon{font-size:3.5rem;margin-bottom:16px;opacity:.7}.empty-state-icon svg.icon{width:52px;height:52px;color:var(--text-muted);display:block;margin:0 auto}.empty-state h3{color:var(--text-secondary);margin-bottom:8px;font-size:1.1rem}.empty-state p{max-width:360px;margin:0 auto;line-height:1.6}.lecture-notes-empty{padding:28px;text-align:left;border-style:solid;background:linear-gradient(180deg,color-mix(in srgb,var(--bg-card) 94%,var(--accent) 6%),var(--bg-card));box-shadow:0 24px 62px -48px color-mix(in srgb,var(--accent) 80%,transparent)}.lecture-empty-hero{display:flex;align-items:flex-start;gap:14px}.lecture-empty-icon{width:42px;height:42px;margin:0;border-radius:12px;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;background:var(--accent-subtle);color:var(--accent);opacity:1}.lecture-empty-icon svg.icon{width:22px;height:22px;color:currentColor}.lecture-empty-copy{min-width:0}.lecture-empty-kicker{margin:0 0 5px;color:var(--accent);font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.lecture-notes-empty h3{margin:0 0 8px;color:var(--text-primary);font-size:1.2rem;line-height:1.16}.lecture-notes-empty p{max-width:none;margin:0;color:var(--text-secondary);font-size:.9rem;line-height:1.5}.lecture-empty-preview{display:grid;gap:8px;margin:22px 0 18px}.lecture-empty-row{padding:12px 14px;border:1px solid color-mix(in srgb,var(--border) 78%,transparent);border-radius:10px;background:color-mix(in srgb,var(--bg-secondary) 76%,transparent)}.lecture-empty-row strong{display:block;color:var(--text-primary);font-size:.86rem;line-height:1.25}.lecture-empty-row span{display:block;margin-top:3px;color:var(--text-muted);font-size:.78rem;line-height:1.32}.lecture-empty-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.86fr);gap:10px}.lecture-empty-actions .btn{width:100%;justify-content:center;min-height:42px;padding-left:12px;padding-right:12px}@media(max-width:768px){.lecture-notes-page .page-header{padding:18px 0 14px}.lecture-notes-empty{padding:18px 16px;border-radius:12px}.lecture-empty-hero{gap:12px}.lecture-empty-icon{width:38px;height:38px}.lecture-notes-empty h3{font-size:1.08rem}.lecture-notes-empty p{font-size:.82rem}.lecture-empty-preview{gap:7px;margin:16px 0 14px}.lecture-empty-row{padding:10px 11px}.lecture-empty-row span{font-size:.74rem}}@media(max-width:640px){.flashcards-page .page-header{padding:22px 0 12px}.flashcards-page .page-header h1{font-size:1.6rem;line-height:1.08}.flashcards-page .page-header p{margin-top:8px;font-size:.88rem}.stats-row.flashcard-stats-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-bottom:14px}.flashcard-stats-row .stat-card{min-height:72px;padding:10px 5px}.flashcard-stats-row .stat-value{font-size:1.1rem;line-height:1}.flashcard-stats-row .stat-label{margin-top:6px;font-size:.64rem;line-height:1.15}}.section{margin-bottom:40px}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;gap:16px;flex-wrap:wrap}.reading-card{padding:20px;background:var(--bg-hover);border-radius:var(--radius-md);margin-bottom:12px}.reading-card h4{font-weight:600;margin-bottom:4px}.reading-card .author{color:var(--text-muted);font-size:.85rem;margin-bottom:10px}.reading-card p{color:var(--text-secondary);line-height:1.7}.modal-overlay{position:fixed;inset:0;background:#0009;backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:24px;opacity:0;pointer-events:none;transition:opacity var(--transition)}.modal-overlay.active{opacity:1;pointer-events:all}.modal{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);padding:32px;max-width:560px;width:100%;max-height:80vh;overflow-y:auto;opacity:0;transform:translate3d(0,16px,0);transition:transform var(--dur-base) var(--ease-spring-soft),opacity var(--dur-fast) var(--ease-out-expo)}.modal-overlay.active .modal{opacity:1;transform:translateZ(0)}.modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.modal-close{width:32px;height:32px;border:none;background:var(--bg-hover);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1.2rem}.confirm-overlay{position:fixed;inset:0;z-index:9999;background:#00000080;display:flex;align-items:center;justify-content:center;padding:24px;opacity:0;transition:opacity var(--dur-fast) var(--ease-out-expo)}.confirm-overlay.active{opacity:1}.confirm-dialog{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);padding:24px;max-width:420px;width:100%;box-shadow:var(--shadow-lg)}@keyframes skeleton-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton{background:linear-gradient(90deg,var(--bg-hover) 25%,var(--border) 50%,var(--bg-hover) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s ease-in-out infinite;border-radius:var(--radius-sm)}.skeleton-text{height:16px;margin-bottom:10px}.skeleton-text:last-child{width:60%}.skeleton-title{height:24px;width:70%;margin-bottom:14px}.skeleton-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);padding:24px;margin-bottom:16px}.skeleton-circle{width:48px;height:48px;border-radius:50%}.skeleton-row{display:flex;gap:16px;align-items:center;margin-bottom:16px}.toast{position:fixed;bottom:24px;right:24px;padding:14px 24px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);font-weight:500;z-index:2000;transform:translate3d(0,100px,0);opacity:0;pointer-events:none;transition:all var(--dur-slow) var(--ease-out-expo)}.toast.show{transform:translateZ(0);opacity:1;pointer-events:auto}.toast.success{border-left:4px solid var(--success)}.toast.error{border-left:4px solid var(--danger)}.saved-pulse{background:#34d3992e!important;border-color:#34d3998c!important;color:#34d399!important;transform:scale(1.04);transition:background var(--dur-base) var(--ease-out-expo),border-color var(--dur-base) var(--ease-out-expo),color var(--dur-base) var(--ease-out-expo),transform var(--dur-base) var(--ease-out-expo)}.saved-pulse-reset{transition:background var(--dur-slow) var(--ease-out-expo),border-color var(--dur-slow) var(--ease-out-expo),color var(--dur-slow) var(--ease-out-expo),transform var(--dur-slow) var(--ease-out-expo)}.save-float-bubble{position:fixed;z-index:2001;pointer-events:none;font-size:.8rem;font-weight:700;padding:4px 10px;border-radius:999px;background:#34d399f2;color:#fff;box-shadow:0 4px 14px #34d39959;transform:translate(-50%);opacity:0;animation:saveFloatBubble 1s ease-out forwards}@keyframes saveFloatBubble{0%{opacity:0;transform:translate(-50%) scale(.8)}15%{opacity:1;transform:translate(-50%,-6px) scale(1)}80%{opacity:1;transform:translate(-50%,-36px) scale(1)}to{opacity:0;transform:translate(-50%,-52px) scale(.9)}}.tab-bar{display:flex;gap:4px;border-bottom:1px solid var(--border);margin-bottom:24px;overflow-x:auto}.tab{padding:10px 18px;border:none;background:none;color:var(--text-muted);font-family:inherit;font-size:.9rem;font-weight:500;cursor:pointer;border-bottom:2px solid transparent;white-space:nowrap;transition:all var(--transition)}.tab:hover{color:var(--text-secondary)}.tab.active{color:var(--accent);border-bottom-color:var(--accent)}@media(max-width:768px){.container{padding:0 16px}.page-header{padding:32px 0 20px}.page-header h1{font-size:1.5rem}.page-header p{font-size:.95rem}.sessions-grid{grid-template-columns:1fr}.stats-row{grid-template-columns:repeat(2,1fr);gap:8px}.stat-card{padding:12px 8px}.stat-value{font-size:1.5rem}.nav-links{display:none}.nav-brand span{font-size:.9rem}#userInfo{display:none!important}.nav{padding:10px 0}.nav .container{padding:0 16px}.card{padding:16px}.tab-bar{-webkit-overflow-scrolling:touch;scrollbar-width:none}.tab-bar::-webkit-scrollbar{display:none}.tab{padding:10px 14px;font-size:.82rem}.btn-lg{padding:12px 20px;font-size:.9rem}h2{font-size:1.25rem}h3{font-size:1.05rem}.flashcard-face{padding:20px 16px;font-size:1rem}.flashcard{min-height:220px}.flashcard-container{margin-bottom:16px}.flashcard-rating{gap:8px;margin-top:16px}.rating-btn{padding:12px 16px;flex:1;min-width:0;text-align:center;font-size:.85rem}#cardArea{position:fixed;inset:57px 0 0;background:var(--bg-primary);z-index:90;display:flex;flex-direction:column;padding:16px 16px 80px}#cardArea .flashcard-container{flex:1;display:flex;align-items:center;margin-bottom:0;padding:0}#cardArea .flashcard{min-height:0;height:100%}#cardArea .flashcard-face{padding:24px 20px;font-size:1.05rem}#cardArea .flashcard-rating{margin-top:auto;padding:16px 0 0;flex-shrink:0}#cardArea #cardCounter{padding:0;margin-bottom:12px;flex-shrink:0}.difficulty-selector{flex-wrap:wrap}.section{margin-bottom:20px}.accordion-header{padding:14px 16px;font-size:.9rem}.accordion-body{padding:16px}.quiz-option{padding:12px 14px;font-size:.9rem}.discussion-input{font-size:.9rem;min-height:100px}.idea-actions{gap:6px}.idea-action-btn{padding:10px 12px;font-size:.78rem;min-height:40px}.course-card-title,.session-card-title{word-break:break-word}.tutor-fab{bottom:80px;right:16px;width:34px;height:34px;font-size:1rem}.mobile-nav{display:flex;position:fixed;bottom:0;left:0;right:0;background:var(--bg-secondary);border-top:1px solid var(--border);padding:8px 4px;z-index:100;justify-content:space-around}.mobile-nav a{display:flex;flex-direction:column;align-items:center;gap:3px;font-size:.68rem;color:var(--text-secondary);padding:6px 8px;min-width:52px;min-height:52px;justify-content:center;border-radius:var(--radius-sm);transition:color var(--transition),background var(--transition)}.mobile-nav a:active{opacity:.75}.mobile-nav a.active{color:var(--accent);font-weight:600}.mobile-nav a span.icon{font-size:1.3rem}.page-wrapper{padding-bottom:72px}main{padding-bottom:80px}.progress-ring-wrap svg{width:100px;height:100px}.progress-ring-text{font-size:1.4rem}.progress-ring-label{visibility:hidden}.course-path-header{padding:18px 0 10px}.course-path-hero{grid-template-columns:1fr;gap:14px}.course-path-page .progress-ring-wrap{display:none}.course-path-titlebar h1{font-size:clamp(1.54rem,7.4vw,2.18rem);line-height:1.1}.course-path-purpose,.course-section-note{display:none}.course-path-titleblock .difficulty-badge{display:none!important}.course-next-card{grid-template-columns:1fr;gap:16px;margin-bottom:20px}.course-next-side{align-items:flex-start;flex-direction:column;justify-content:flex-start;width:100%}.course-next-side .btn{width:100%;min-height:56px}.course-tools-head{grid-template-columns:1fr;align-items:stretch}.course-path-page .quick-actions{justify-content:flex-start}.course-stats-row{grid-template-columns:repeat(2,minmax(0,1fr))}.concept-map-container{max-height:300px;overflow:auto}}@media(max-width:480px){.quick-actions{flex-direction:column}.quick-actions .btn{width:100%;justify-content:center}.course-back-row{padding-top:12px}.course-path-titlebar{align-items:flex-start}.course-menu-btn{width:40px;padding-inline:0}.course-next-card{padding:17px;border-radius:12px}.course-next-copy p{font-size:.88rem;line-height:1.4}.course-tools-panel{padding:14px}}@media(min-width:769px){.mobile-nav{display:none}}.page-subnav{display:flex;gap:4px;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none;border-bottom:1px solid var(--border);background:var(--bg-primary);padding:0 max(16px,env(safe-area-inset-left,0px))}.page-subnav::-webkit-scrollbar{display:none}.page-subnav a{flex:0 0 auto;display:inline-flex;align-items:center;gap:6px;padding:12px 14px;min-height:44px;color:var(--text-muted);font-size:.88rem;font-weight:500;border-bottom:2px solid transparent;white-space:nowrap;transition:color var(--transition),border-color var(--transition);-webkit-tap-highlight-color:transparent}.page-subnav a:hover{color:var(--text-primary)}.page-subnav a.active{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.page-subnav a .icon{font-size:1rem;line-height:1;width:17px;height:17px}@media(max-width:768px){.page-subnav{padding:0 12px;gap:2px}.page-subnav a{padding:11px 10px;font-size:.82rem}}.idea-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:14px;padding-top:14px;border-top:1px solid var(--border)}.idea-action-cluster,.idea-action-utility{display:inline-flex;align-items:center;gap:7px;flex-wrap:wrap;min-width:0}.idea-action-cluster{flex:1 1 auto}.idea-action-utility{flex:0 1 auto;margin-left:auto;padding-left:10px;border-left:1px solid var(--border)}.idea-actions-label{font-size:.75rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-right:4px}.idea-action-btn{display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:7px 14px;border:1.5px solid var(--border);border-radius:100px;background:var(--bg-primary);color:var(--text-secondary);font-size:.8rem;font-weight:600;font-family:inherit;cursor:pointer;transition:all var(--dur-base) var(--ease-out-expo)}.idea-action-btn .idea-action-icon,.idea-action-btn .idea-action-label{display:inline-flex;align-items:center}.idea-action-btn .idea-action-icon{justify-content:center;width:16px;height:16px}.idea-action-btn .idea-action-icon svg{width:16px;height:16px}.idea-action-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-subtle);transform:translateY(-1px);box-shadow:0 2px 8px #6366f126}.idea-action-btn:active{transform:translateY(0)}.idea-action-btn:disabled{opacity:.6;cursor:wait}.idea-action-primary{padding-inline:16px;border-color:color-mix(in srgb,var(--accent) 76%,var(--border));background:var(--accent);color:#fff;box-shadow:0 10px 24px color-mix(in srgb,var(--accent) 22%,transparent)}.idea-action-primary:hover{background:var(--accent-hover);color:#fff;box-shadow:0 12px 28px color-mix(in srgb,var(--accent) 28%,transparent)}.idea-action-utility .idea-action-btn{background:transparent;border-color:color-mix(in srgb,var(--border) 78%,transparent);color:var(--text-muted)}.idea-action-utility .idea-action-btn:hover{background:var(--bg-input);color:var(--text-primary);border-color:color-mix(in srgb,var(--border) 60%,var(--text-muted) 40%);box-shadow:none}.idea-action-btn[data-type=elaborate]:hover{border-color:#8b5cf6;color:#8b5cf6}.idea-action-btn[data-type=case_study]:hover{border-color:#06b6d4;color:#06b6d4}.idea-action-btn[data-type=analogy]:hover{border-color:#f59e0b;color:#f59e0b}.idea-action-btn[data-type=eli5]:hover{border-color:#22c55e;color:#22c55e}.idea-action-btn.idea-action-primary:hover{border-color:color-mix(in srgb,var(--accent) 78%,var(--border));color:#fff}.idea-action-btn[data-type=listen]{min-width:92px}.idea-action-btn[data-type=listen]:hover{border-color:var(--accent);color:var(--accent)}.idea-action-btn.tts-active{border-color:var(--accent);background:var(--accent);color:#fff;box-shadow:0 10px 24px color-mix(in srgb,var(--accent) 26%,transparent)}.idea-action-btn.tts-loading{cursor:wait}.idea-action-btn.tts-paused{background:var(--accent-subtle);color:var(--accent);border-color:color-mix(in srgb,var(--accent) 42%,var(--border));box-shadow:none}.tts-audio-spinner,.followup-send-spinner{width:15px;height:15px;border-radius:50%;border:2px solid rgba(255,255,255,.34);border-top-color:#fff;animation:lectureAudioSpin .72s linear infinite}.idea-action-btn:not(.tts-active):not(.idea-action-primary) .tts-audio-spinner{border-color:color-mix(in srgb,var(--text-muted) 28%,transparent);border-top-color:var(--accent)}.tts-word{transition:background 80ms var(--ease-out),color 80ms var(--ease-out);border-radius:3px;padding:0 2px}.tts-word.active{background:var(--accent);color:#fff;border-radius:4px;box-shadow:0 0 8px #6366f166;transition:none}.tts-controls{display:flex;align-items:center;gap:10px}.tts-select{max-width:180px;font-size:.78rem;padding:5px 8px}.tts-speed{display:flex;align-items:center;gap:6px}.tts-range{width:70px;height:4px;-webkit-appearance:none;appearance:none;background:var(--border);border-radius:2px;outline:none}.tts-range::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;border-radius:50%;background:var(--accent);cursor:pointer}@media(max-width:768px){.tts-controls{width:100%}.tts-select{flex:1}}.idea-action-icon{font-size:.9rem}.lecture-config-overlay{position:fixed;inset:0;z-index:10000;background:#00000080;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity var(--dur-base) var(--ease-out-expo);padding:20px}.lecture-config-overlay.active{opacity:1;pointer-events:all}.lecture-config-modal{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg, 16px);max-width:560px;width:100%;max-height:85vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d;opacity:0;transform:translateY(12px);transition:transform var(--dur-base) var(--ease-spring-soft),opacity var(--dur-fast) var(--ease-out-expo)}.lecture-config-overlay.active .lecture-config-modal{opacity:1;transform:translateY(0)}.lecture-config-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 16px;border-bottom:1px solid var(--border)}.lecture-config-header h3{font-size:1.1rem;font-weight:700;margin:0}.lecture-config-close{width:32px;height:32px;border-radius:8px;border:none;background:transparent;color:var(--text-muted);font-size:1.3rem;cursor:pointer;display:flex;align-items:center;justify-content:center}.lecture-config-close:hover{background:var(--bg-secondary);color:var(--text-primary)}.lecture-config-section{padding:16px 24px}.lecture-config-label{display:block;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:12px}.lecture-style-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.lecture-style-card{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:14px 16px;border:2px solid var(--border);border-radius:var(--radius-md, 10px);background:var(--bg-primary);cursor:pointer;transition:border-color var(--dur-base),background var(--dur-base),box-shadow var(--dur-base);text-align:left}.lecture-style-card:hover{border-color:var(--accent);background:var(--bg-secondary)}.lecture-style-card.active{border-color:var(--accent);background:#6366f114;box-shadow:0 0 0 1px var(--accent)}.lecture-style-icon{width:34px;height:34px;border-radius:12px;background:var(--accent-subtle);color:var(--accent);display:inline-flex;align-items:center;justify-content:center;margin-bottom:2px}.lecture-style-icon .icon{width:20px;height:20px}.lecture-style-name{font-size:.85rem;font-weight:600;color:var(--text-primary)}.lecture-style-desc{font-size:.72rem;color:var(--text-muted);line-height:1.4}.lecture-length-chips{display:flex;gap:8px;flex-wrap:wrap}.lecture-length-chip{padding:8px 20px;border:2px solid var(--border);border-radius:100px;background:var(--bg-primary);color:var(--text-secondary);font-size:.85rem;font-weight:500;cursor:pointer;transition:border-color var(--dur-base),background var(--dur-base),color var(--dur-base)}.lecture-length-chip:hover{border-color:var(--accent);color:var(--accent)}.lecture-length-chip.active{border-color:var(--accent);background:var(--accent);color:#fff}.lecture-custom-style-input{width:100%;padding:10px 12px;border:2px solid var(--border);border-radius:10px;background:var(--bg-primary);color:var(--text-primary);font-size:.88rem;font-family:inherit;line-height:1.4;resize:vertical;min-height:56px;box-sizing:border-box;transition:border-color var(--dur-base),background var(--dur-base)}.lecture-custom-style-input:focus{outline:none;border-color:var(--accent);background:var(--bg-secondary)}.lecture-custom-style-input::placeholder{color:var(--text-muted)}.lecture-config-actions{display:flex;gap:10px;padding:16px 24px 20px;border-top:1px solid var(--border)}.lecture-config-actions .btn{flex:1}@media(max-width:480px){.lecture-style-grid{grid-template-columns:1fr}.lecture-config-modal{max-height:90vh}.lecture-config-section{padding:12px 16px}.lecture-config-actions{padding:12px 16px 16px}}.lecture-player{position:fixed;inset:0;z-index:9999;--lecture-snip-bottom: 116px;background:var(--bg-primary);isolation:isolate;display:flex;flex-direction:column;opacity:0;pointer-events:none;transition:opacity var(--dur-slow) var(--ease-out-expo)}.lecture-player.active{opacity:1;pointer-events:all}.lecture-player:not(.active) *{pointer-events:none!important}.lecture-player-body:before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;opacity:0;background:linear-gradient(150deg,transparent 0%,color-mix(in srgb,var(--accent) 10%,transparent) 34%,color-mix(in srgb,#8bd7ff 9%,transparent) 52%,transparent 74%);transform:translate3d(-8%,-6%,0) scale(1.04);transition:opacity var(--dur-slow) var(--ease-out-expo)}.lecture-player.is-preparing .lecture-player-body:before{opacity:1;animation:lectureAmbientWash 7.6s ease-in-out infinite}.lecture-player-header{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:16px 22px 14px;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--bg-primary) 94%,var(--bg-secondary) 6%);flex-shrink:0}.lecture-player-titleblock{min-width:0}.lecture-player-header h3{font-size:1rem;line-height:1.28;font-weight:750;margin:0;letter-spacing:0;overflow-wrap:anywhere}.lecture-player-header .sub{font-size:.78rem;line-height:1.55;color:var(--text-muted);margin-top:5px;max-width:56ch;overflow-wrap:anywhere}.lecture-player-actions{position:relative;display:flex;justify-content:flex-end;align-items:center;max-width:none}.lecture-action-btn,.lecture-close-btn,.lecture-overflow-btn{min-height:34px;border:1px solid color-mix(in srgb,var(--border) 82%,var(--text-muted) 18%);border-radius:999px;background:transparent;color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;gap:7px;font:inherit;font-size:.8rem;font-weight:700;line-height:1;cursor:pointer;transition:background var(--dur-base) var(--ease-out-expo),border-color var(--dur-base) var(--ease-out-expo),color var(--dur-base) var(--ease-out-expo),transform var(--dur-fast) var(--ease-out-expo)}.lecture-action-btn{padding:0 12px}.lecture-close-btn,.lecture-overflow-btn{width:38px;height:38px;min-height:38px;padding:0}.lecture-collapse-btn{grid-column:1}.lecture-overflow-menu{position:relative}.lecture-overflow-btn{list-style:none}.lecture-overflow-btn::-webkit-details-marker{display:none}.lecture-overflow-panel{position:absolute;top:calc(100% + 8px);right:0;z-index:20;display:grid;gap:4px;min-width:168px;padding:8px;border:1px solid color-mix(in srgb,var(--border) 82%,var(--text-muted) 18%);border-radius:12px;background:color-mix(in srgb,var(--bg-secondary) 96%,var(--bg-card) 4%);box-shadow:0 18px 44px #0f172a2e}.lecture-overflow-menu:not([open]) .lecture-overflow-panel{display:none}.lecture-overflow-panel .lecture-action-btn{justify-content:flex-start;width:100%;min-height:38px;border-color:transparent;border-radius:9px;background:transparent}.lecture-text-size-row{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:6px;margin-top:4px;padding:8px 4px 2px;border-top:1px solid color-mix(in srgb,var(--border) 78%,transparent)}.lecture-text-size-label{padding-left:8px;color:var(--text-muted);font-size:.74rem;font-weight:800;letter-spacing:0}.lecture-text-size-btn{width:34px;height:32px;border:1px solid color-mix(in srgb,var(--border) 82%,var(--text-muted) 18%);border-radius:999px;background:color-mix(in srgb,var(--bg-card) 70%,transparent);color:var(--text-secondary);font:inherit;font-size:.78rem;font-weight:900;line-height:1;letter-spacing:0;cursor:pointer}.lecture-text-size-btn:hover{border-color:color-mix(in srgb,var(--accent) 56%,var(--border));background:var(--accent-subtle);color:var(--text-primary)}.lecture-text-size-btn:disabled,.lecture-text-size-btn[aria-disabled=true]{cursor:not-allowed;opacity:.42}.lecture-action-btn .icon,.lecture-close-btn .icon,.lecture-overflow-btn .icon{width:15px;height:15px}.lecture-action-btn:hover,.lecture-close-btn:hover,.lecture-overflow-btn:hover{border-color:color-mix(in srgb,var(--accent) 52%,var(--border));background:var(--accent-subtle);color:var(--text-primary)}.lecture-ask-tutor-btn{padding-inline:13px;border-color:color-mix(in srgb,var(--accent) 42%,var(--border));background:color-mix(in srgb,var(--accent) 10%,var(--bg-card) 90%);color:color-mix(in srgb,var(--text-primary) 82%,var(--accent) 18%)}.lecture-ask-tutor-btn .icon{width:15px;height:15px}.lecture-action-btn:disabled,.lecture-action-btn[aria-disabled=true]{cursor:not-allowed;opacity:.48;transform:none;box-shadow:none}.lecture-action-btn:active,.lecture-close-btn:active,.lecture-overflow-btn:active{transform:scale(.97)}.lecture-player-body{position:relative;z-index:1;flex:1;overflow-y:auto;padding:30px 24px 40px;display:flex;justify-content:center;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--accent) 42%,var(--border)) transparent}.lecture-player-body::-webkit-scrollbar{width:8px}.lecture-player-body::-webkit-scrollbar-track{background:transparent}.lecture-player-body::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--accent) 36%,var(--border));border-radius:999px;border:2px solid transparent;background-clip:padding-box}.lecture-player-body-inner{position:relative;z-index:1;max-width:640px;width:100%;padding-bottom:92px}.lecture-player.is-complete .lecture-player-body-inner{padding-bottom:230px}.lecture-transcript{position:relative;font-size:1.06rem;line-height:1.88;color:var(--text-secondary);letter-spacing:0;text-align:left;word-spacing:normal;word-break:normal;overflow-wrap:break-word;hyphens:auto}.lecture-player.lecture-text-small .lecture-transcript{font-size:.96rem;line-height:1.82}.lecture-player.lecture-text-large .lecture-transcript{font-size:1.18rem;line-height:1.9}.lecture-player.lecture-text-xlarge .lecture-transcript{font-size:1.32rem;line-height:1.92}.lecture-transcript p{margin-bottom:22px;max-width:68ch}.lecture-transcript p:last-child{margin-bottom:0}.lecture-transcript .tts-word{display:inline;white-space:normal}.lecture-transcript.is-streaming{color:var(--text-primary);min-height:120px;isolation:isolate}.lecture-transcript.is-streaming:before{content:"";position:absolute;inset:-22px -18px auto;z-index:0;height:min(44vh,320px);border-radius:28px;pointer-events:none;opacity:.48;background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 13%,transparent),color-mix(in srgb,#7dd3fc 7%,transparent) 52%,transparent 100%);animation:lectureAmbientBreath 5.8s ease-in-out infinite}.lecture-transcript.is-streaming p:last-child{position:relative}.lecture-transcript.is-streaming p{position:relative;z-index:1}.lecture-transcript.is-streaming p:empty:before{content:"Setting the stage...";color:var(--text-muted)}.lecture-transcript.is-streaming p:last-child:after{content:"";display:inline-block;width:2px;height:.95em;margin-left:.18em;border-radius:999px;background:var(--accent);vertical-align:-.12em;animation:lectureStreamingCaret .92s ease-in-out infinite}.lecture-transcript p:has(.tts-word.active){color:var(--text-primary)}.lecture-transcript .tts-word.active{background:color-mix(in srgb,var(--accent) 88%,#ffffff 12%);color:#fff;box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 55%,transparent),0 0 18px color-mix(in srgb,var(--accent) 28%,transparent)}.lecture-transcript .tts-word.sentence-active{background:color-mix(in srgb,var(--accent) 14%,transparent);color:color-mix(in srgb,var(--text-primary) 92%,var(--accent) 8%)}.lecture-generating{position:relative;display:flex;align-items:center;justify-content:center;min-height:152px;padding:30px 0 18px;color:var(--text-muted)}.lecture-start-shell{position:relative;display:grid;justify-items:center;align-items:center;gap:12px;width:min(100%,360px);padding:22px 22px 20px;border:1px solid color-mix(in srgb,var(--accent) 26%,var(--border));border-radius:24px;background:linear-gradient(180deg,color-mix(in srgb,var(--bg-card) 78%,transparent),color-mix(in srgb,var(--bg-secondary) 88%,transparent));box-shadow:0 24px 70px color-mix(in srgb,var(--accent) 12%,transparent),inset 0 1px color-mix(in srgb,#fff 15%,transparent);overflow:hidden;text-align:center}.lecture-start-shell:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(118deg,transparent 0%,transparent 28%,color-mix(in srgb,var(--accent) 18%,transparent) 50%,transparent 72%,transparent 100%);opacity:.62;transform:translate(-68%);animation:lectureOpeningSheen 4.8s ease-in-out infinite}.lecture-start-spinner{--sz: 25px;position:relative;z-index:1;flex:0 0 auto;filter:drop-shadow(0 0 18px color-mix(in srgb,var(--accent) 45%,transparent))}.lecture-start-copy{position:relative;z-index:1;display:grid;justify-items:center;gap:5px;max-width:28ch}.lecture-start-kicker{color:color-mix(in srgb,var(--accent) 86%,#fff 14%);font-size:.68rem;font-weight:850;line-height:1;letter-spacing:.08em;text-transform:uppercase}.lecture-start-text{color:var(--text-primary);font-size:1rem;line-height:1.24;font-weight:820;letter-spacing:0}.lecture-start-subtext{color:var(--text-muted);font-size:.84rem;line-height:1.48;font-weight:600}@keyframes lectureStreamingCaret{0%,to{opacity:.24}45%{opacity:1}}@keyframes lectureAmbientWash{0%,to{opacity:.64;transform:translate3d(-10%,-7%,0) scale(1.04)}50%{opacity:1;transform:translate3d(7%,5%,0) scale(1.08)}}@keyframes lectureAmbientBreath{0%,to{opacity:.32;transform:translateY(0)}50%{opacity:.58;transform:translateY(8px)}}@keyframes lectureOpeningSheen{0%,18%{transform:translate(-76%);opacity:0}38%,62%{opacity:.62}82%,to{transform:translate(76%);opacity:0}}.lecture-player-controls{position:relative;flex-shrink:0;border-top:1px solid var(--border);background:linear-gradient(180deg,color-mix(in srgb,var(--bg-secondary) 96%,var(--bg-card) 4%),var(--bg-secondary));padding:10px 24px 16px;box-shadow:0 -10px 30px #0f172a0f}body:has(.lecture-player.active) .lecture-player:after{content:"";position:fixed;inset:0;z-index:12;pointer-events:none;opacity:0;background:#0f172a24;-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0);transition:opacity var(--dur-base) var(--ease-out-expo),backdrop-filter var(--dur-base) var(--ease-out-expo)}body:has(.lecture-player.active):has(#tutorChat:not(.hidden)) .lecture-player:after{opacity:1}body:has(.lecture-player.active):has(#tutorChat:not(.hidden):has(.tutor-voice-input:not(.hidden))) .lecture-player:after{opacity:1;background:#0f172a47;-webkit-backdrop-filter:blur(5px) saturate(.92);backdrop-filter:blur(5px) saturate(.92)}.lecture-progress-bar{width:100%;height:7px;background:color-mix(in srgb,var(--border) 72%,transparent);border-radius:999px;cursor:pointer;margin-bottom:14px;position:relative;overflow:hidden}.lecture-progress-fill{height:100%;background:linear-gradient(90deg,var(--accent),color-mix(in srgb,var(--accent) 76%,#ffffff 24%));border-radius:inherit;width:0%;transition:width var(--dur-slow) var(--ease-spring-soft)}.lecture-follow-lock-btn{position:absolute;right:22px;bottom:calc(var(--lecture-snip-bottom) + 4px + env(safe-area-inset-bottom,0px));z-index:6;width:40px;height:40px;border:1px solid color-mix(in srgb,var(--border) 80%,var(--text-muted) 20%);border-radius:50%;background:color-mix(in srgb,var(--bg-card) 86%,transparent);color:var(--text-muted);display:inline-flex;align-items:center;justify-content:center;padding:0;cursor:pointer;opacity:.82;box-shadow:0 12px 28px #0f172a1a,inset 0 1px #ffffff2e;backdrop-filter:blur(16px) saturate(1.12);-webkit-backdrop-filter:blur(16px) saturate(1.12);transition:opacity var(--dur-base) var(--ease-out-expo),transform var(--dur-fast) var(--ease-out-expo),border-color var(--dur-base) var(--ease-out-expo),background var(--dur-base) var(--ease-out-expo),color var(--dur-base) var(--ease-out-expo),box-shadow var(--dur-base) var(--ease-out-expo)}.lecture-follow-lock-btn .icon{width:17px;height:17px}.lecture-follow-lock-btn:hover,.lecture-follow-lock-btn:focus-visible{opacity:1;border-color:color-mix(in srgb,var(--accent) 54%,var(--border));color:var(--text-primary);transform:translateY(-1px)}.lecture-follow-lock-btn:active{transform:translateY(0) scale(.97)}.lecture-follow-lock-btn.is-locked{opacity:1;border-color:color-mix(in srgb,var(--accent) 70%,var(--border));background:color-mix(in srgb,var(--accent) 18%,var(--bg-card) 82%);color:var(--accent);box-shadow:0 14px 34px color-mix(in srgb,var(--accent) 18%,transparent),inset 0 1px #fff3}.lecture-snip-row{position:absolute;left:50%;bottom:calc(var(--lecture-snip-bottom) + env(safe-area-inset-bottom,0px));z-index:6;display:flex;justify-content:center;margin:0;pointer-events:none;opacity:0;transform:translate(-50%) translateY(8px);transition:opacity var(--dur-base) var(--ease-out-expo),transform var(--dur-base) var(--ease-out-expo)}.lecture-player.has-transcript .lecture-snip-row{opacity:1;transform:translate(-50%) translateY(0)}.lecture-player.is-complete .lecture-snip-row,.lecture-player.has-error .lecture-snip-row{display:none}.lecture-player.has-error .lecture-follow-lock-btn,.lecture-player:not(.has-transcript) .lecture-follow-lock-btn{opacity:0;pointer-events:none}.lecture-error-state{max-width:340px;margin:clamp(72px,18vh,180px) auto 0;padding:0 12px;text-align:center}.lecture-error-title{margin:0;color:color-mix(in srgb,var(--danger) 78%,var(--text-primary) 22%);font-size:1rem;font-weight:780;line-height:1.45}.lecture-error-detail{margin:14px 0 0;color:var(--text-muted);font-size:.9rem;line-height:1.55}.lecture-error-state .btn{margin-top:18px;min-width:86px}.lecture-completion-handoff{position:absolute;left:50%;bottom:calc(106px + env(safe-area-inset-bottom,0px));z-index:7;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;width:min(560px,calc(100% - 48px));padding:16px;border:1px solid color-mix(in srgb,var(--accent) 28%,var(--border) 72%);border-radius:10px;background:color-mix(in srgb,var(--bg-card) 94%,transparent);color:var(--text-primary);box-shadow:0 18px 46px #0f172a24,0 0 0 1px #ffffff6b inset;backdrop-filter:blur(18px) saturate(1.12);-webkit-backdrop-filter:blur(18px) saturate(1.12);transform:translate(-50%) translateY(0);transition:opacity var(--dur-base) var(--ease-out-expo),transform var(--dur-base) var(--ease-out-expo)}.lecture-completion-handoff[hidden]{display:none}.lecture-completion-copy{min-width:0}.lecture-completion-kicker{margin:0 0 3px;color:color-mix(in srgb,var(--accent) 72%,var(--text-primary) 28%);font-size:.76rem;font-weight:850;letter-spacing:0}.lecture-completion-handoff h4{margin:0;color:var(--text-primary);font-size:1.05rem;line-height:1.25;letter-spacing:0}.lecture-completion-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.lecture-completion-actions .btn{min-height:40px;border-radius:10px;white-space:nowrap}.lecture-controls-row{display:grid;grid-template-columns:minmax(84px,1fr) auto minmax(84px,1fr);grid-template-areas:"time time time" "voice transport speed";align-items:center;column-gap:12px;row-gap:10px}.lecture-voice-control,.lecture-speed-control{min-width:0;display:flex;align-items:center}.lecture-voice-control{position:relative;grid-area:voice;justify-self:start;justify-content:flex-start}.lecture-voice-control:after{content:"";position:absolute;right:13px;top:50%;width:7px;height:7px;border-right:1.6px solid currentColor;border-bottom:1.6px solid currentColor;color:var(--text-secondary);pointer-events:none;transform:translateY(-65%) rotate(45deg)}.lecture-speed-control{grid-area:speed;justify-self:end;justify-content:flex-end}.lecture-transport-controls{grid-area:transport;width:max-content;display:flex;align-items:center;justify-content:center;gap:14px}.lecture-controls-row .lecture-voice-select{width:min(104px,100%);min-width:78px;max-width:104px;min-height:34px;margin-left:0!important;padding:0 28px;border-radius:999px;background:color-mix(in srgb,var(--bg-card) 64%,transparent);border-color:color-mix(in srgb,var(--border) 90%,var(--text-muted) 10%);color:var(--text-secondary);font-size:.78rem;font-weight:750;line-height:1;box-shadow:none;-webkit-appearance:none;appearance:none;text-align:center;text-align-last:center}.lecture-skip-btn,.lecture-speed-btn{min-width:50px;min-height:50px;border:1px solid color-mix(in srgb,var(--border) 82%,var(--text-muted) 18%);border-radius:50%;background:color-mix(in srgb,var(--bg-card) 78%,transparent);color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;font:inherit;font-weight:850;cursor:pointer;transition:background var(--dur-base) var(--ease-out-expo),border-color var(--dur-base) var(--ease-out-expo),color var(--dur-base) var(--ease-out-expo),transform var(--dur-fast) var(--ease-out-expo),box-shadow var(--dur-base) var(--ease-out-expo)}.lecture-skip-btn{position:relative;width:50px;height:50px}.lecture-skip-btn .icon{width:26px;height:26px;display:block;opacity:.86}.lecture-skip-count{display:inline-flex;align-items:center;justify-content:center;font-size:.62rem;line-height:1;letter-spacing:0;color:var(--text-primary);font-weight:900}.lecture-speed-btn{border-radius:999px;min-width:48px;min-height:34px;padding:0 10px;background:color-mix(in srgb,var(--bg-card) 58%,transparent);color:var(--text-secondary);font-size:.78rem;box-shadow:none}.lecture-skip-btn:hover,.lecture-speed-btn:hover,.lecture-speed-btn[aria-expanded=true]{border-color:color-mix(in srgb,var(--accent) 56%,var(--border));background:var(--accent-subtle);color:var(--text-primary);box-shadow:0 8px 18px color-mix(in srgb,var(--accent) 9%,transparent)}.lecture-skip-btn:active,.lecture-speed-btn:active{transform:scale(.96)}.lecture-play-btn{position:relative;width:64px;height:64px;border-radius:50%;border:none;background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 84%,#ffffff 16%),var(--accent));color:#fff;font-size:1.2rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background var(--dur-base),transform var(--dur-fast),box-shadow var(--dur-base);flex-shrink:0;box-shadow:0 12px 28px color-mix(in srgb,var(--accent) 26%,transparent)}.lecture-play-btn.is-loading,.lecture-mini-play.is-loading,.tts-mini-play.is-loading{cursor:wait}.lecture-play-btn:disabled{cursor:wait;opacity:.68;filter:saturate(.82);box-shadow:none}.lecture-play-btn.is-loading:after{content:"";position:absolute;inset:-6px;border:1px solid color-mix(in srgb,var(--accent) 54%,transparent);border-radius:50%;opacity:.64;animation:lectureVoicePrepRing 1.35s ease-out infinite;pointer-events:none}.lecture-play-btn:active{transform:scale(.96)}.lecture-play-btn .icon{width:21px;height:21px;display:block}.lecture-mini-btn .icon,.lecture-mini-play .icon,.tts-mini-play .icon{width:18px;height:18px;display:block}.lecture-audio-spinner{width:18px;height:18px;border-radius:50%;border:2px solid rgba(255,255,255,.32);border-top-color:#fff;animation:lectureAudioSpin .72s linear infinite}@keyframes lectureAudioSpin{to{transform:rotate(360deg)}}@keyframes lectureVoicePrepRing{0%{transform:scale(.84);opacity:.7}to{transform:scale(1.22);opacity:0}}.lecture-time{grid-area:time;text-align:center;font-size:.82rem;color:var(--text-muted);font-variant-numeric:tabular-nums;min-width:0}.lecture-speed-sheet{position:absolute;right:24px;bottom:calc(100% + 12px);width:min(360px,calc(100vw - 32px));padding:14px;border:1px solid color-mix(in srgb,var(--border) 82%,var(--text-muted) 18%);border-radius:14px;background:var(--bg-primary);color:var(--text-primary);box-shadow:0 22px 60px #0f172a38,inset 0 1px #ffffff38;backdrop-filter:blur(20px) saturate(1.14);-webkit-backdrop-filter:blur(20px) saturate(1.14);z-index:8}.lecture-speed-sheet[hidden]{display:none}.lecture-speed-sheet-handle{width:48px;height:4px;margin:0 auto 12px;border-radius:999px;background:color-mix(in srgb,var(--text-muted) 28%,transparent)}.lecture-speed-sheet-title{text-align:center;font-size:.95rem;font-weight:850;margin-bottom:4px}.lecture-speed-sheet-value{text-align:center;font-size:2rem;line-height:1.1;font-weight:850;margin-bottom:14px}.lecture-speed-options{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.lecture-speed-options button{min-height:42px;border:1px solid color-mix(in srgb,var(--border) 78%,var(--text-muted) 22%);border-radius:999px;background:color-mix(in srgb,var(--bg-card) 82%,transparent);color:var(--text-secondary);font:inherit;font-weight:800;cursor:pointer}.lecture-speed-options button.active{border-color:color-mix(in srgb,var(--accent) 78%,var(--border));background:color-mix(in srgb,var(--accent) 16%,var(--bg-card) 84%);color:var(--text-primary)}.lecture-player:has(.lecture-speed-sheet:not([hidden])) .lecture-snip-row{opacity:0;pointer-events:none}.lecture-snip-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 20px;border-radius:999px;border-color:#10b98170!important;background:linear-gradient(145deg,#10b98133,#10b9811a)!important;color:color-mix(in srgb,var(--text-primary) 86%,#10b981 14%)!important;opacity:.88;backdrop-filter:blur(18px) saturate(1.16);-webkit-backdrop-filter:blur(18px) saturate(1.16);box-shadow:0 14px 34px #10b9812e,inset 0 1px #ffffff38;font-size:.9rem;font-weight:800;white-space:nowrap;flex-shrink:0;pointer-events:auto;transform:translateY(0);transition:opacity var(--dur-base) var(--ease-out-expo),transform var(--dur-fast) var(--ease-out-expo),box-shadow var(--dur-base) var(--ease-out-expo),border-color var(--dur-base) var(--ease-out-expo),background var(--dur-base) var(--ease-out-expo)}.lecture-snip-btn:hover,.lecture-snip-btn:focus-visible{border-color:#10b981b8!important;opacity:1;box-shadow:0 18px 42px #10b9813d,inset 0 1px #ffffff47;transform:translateY(-1px)}.lecture-snip-btn:active{transform:translateY(0) scale(.98)}.lecture-snip-btn .icon{width:17px;height:17px;color:#10b981}.lecture-snip-btn.saved-pulse{box-shadow:0 14px 34px #34d39947,inset 0 1px #ffffff38}.lecture-snip-btn.snip-pending{opacity:1;border-color:#10b981bd!important;background:linear-gradient(145deg,#10b98142,#10b98124)!important}.lecture-snip-btn.snip-error{border-color:color-mix(in srgb,var(--danger) 62%,var(--border))!important;background:color-mix(in srgb,var(--danger) 10%,var(--bg-card) 90%)!important;color:color-mix(in srgb,var(--text-primary) 82%,var(--danger) 18%)!important}@media(max-width:640px){.lecture-player{--lecture-snip-bottom: 188px}.lecture-player-header{grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 20px;padding-top:calc(12px + env(safe-area-inset-top,0px))}.lecture-player-titleblock{grid-column:2}.lecture-player-actions{grid-column:3;justify-content:flex-end;width:88px;gap:6px}.lecture-ask-tutor-btn{width:40px;min-width:40px;height:40px;min-height:40px;padding:0}.lecture-ask-tutor-label{display:none}.lecture-close-btn{position:static;width:40px;height:40px;min-height:40px}.lecture-action-btn{flex:0 0 auto;min-height:32px;padding-inline:10px;font-size:.78rem}.lecture-player-header h3{font-size:1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lecture-player-header .sub{display:-webkit-box;max-width:100%;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:1;line-height:1.36;margin-top:4px}.lecture-player-body{padding:22px 16px 36px}.lecture-player-body-inner{padding-bottom:248px}.lecture-player.is-complete .lecture-player-body-inner{padding-bottom:330px}.lecture-transcript{font-size:1.02rem;line-height:1.82}.lecture-transcript.is-streaming{min-height:96px}.lecture-follow-lock-btn{right:16px;bottom:calc(var(--lecture-snip-bottom) + 2px + env(safe-area-inset-bottom,0px));width:38px;height:38px}.lecture-generating{min-height:96px;padding:18px 0 8px}.lecture-start-shell{width:100%;max-width:342px;padding:18px 18px 17px;border-radius:20px}.lecture-start-subtext{font-size:.8rem;line-height:1.45}.lecture-completion-handoff{bottom:calc(168px + env(safe-area-inset-bottom,0px));grid-template-columns:1fr;align-items:stretch;gap:10px;width:calc(100% - 32px);padding:13px 14px 12px;border-radius:16px;background:linear-gradient(180deg,color-mix(in srgb,var(--bg-card) 96%,transparent),color-mix(in srgb,var(--bg-secondary) 90%,transparent))}.lecture-completion-kicker{font-size:.72rem}.lecture-completion-handoff h4{font-size:.98rem;line-height:1.24}.lecture-completion-actions{display:grid;grid-template-columns:1fr;gap:6px}.lecture-completion-actions .btn{width:100%;min-height:42px;white-space:normal}.lecture-completion-actions .lecture-completion-secondary{min-height:36px;border-color:color-mix(in srgb,var(--border) 58%,transparent);background:color-mix(in srgb,var(--bg-card) 68%,transparent);box-shadow:none}.lecture-snip-btn{min-height:38px;padding:0 15px;font-size:.82rem;opacity:.76}.lecture-player-controls{padding:10px 16px calc(16px + env(safe-area-inset-bottom,0px))}.lecture-controls-row{grid-template-columns:minmax(88px,1fr) minmax(162px,auto) minmax(88px,1fr);grid-template-areas:"time time time" "voice transport speed";grid-template-rows:auto auto;gap:8px 8px;justify-content:stretch}.lecture-transport-controls{width:100%;min-width:162px;gap:7px;justify-content:center}.lecture-skip-btn{width:44px;min-width:44px;height:44px;min-height:44px}.lecture-play-btn{width:60px;height:60px}.lecture-time{text-align:center}.lecture-controls-row .lecture-voice-select{width:min(104px,100%);max-width:104px;min-width:78px;min-height:36px;padding:0 28px;font-size:.78rem}.lecture-speed-btn{min-width:52px;min-height:36px;padding:0 10px}.lecture-speed-sheet{right:16px;bottom:calc(100% + 10px);width:calc(100vw - 32px)}}@media(prefers-reduced-motion:reduce){.lecture-player.is-preparing .lecture-player-body:before,.lecture-transcript.is-streaming:before,.lecture-start-shell:before,.lecture-transcript.is-streaming p:last-child:after,.lecture-play-btn.is-loading:after{animation:none}.lecture-player.is-preparing .lecture-player-body:before,.lecture-transcript.is-streaming:before,.lecture-start-shell:before{opacity:.24}.lecture-completion-handoff{transition:none}}.lecture-mini-bar{position:fixed;bottom:0;left:0;right:0;z-index:9998;background:var(--bg-secondary);border-top:1px solid var(--border);box-shadow:0 -4px 20px #00000026;transform:translate3d(0,100%,0);transition:transform var(--dur-slow) cubic-bezier(.4,0,.2,1);overflow:hidden;will-change:transform;pointer-events:none}.lecture-mini-bar.active{transform:translateZ(0);pointer-events:auto}.lecture-mini-seek{width:100%;height:4px;background:var(--border);cursor:pointer;position:relative;transition:height var(--dur-fast)}.lecture-mini-seek:hover{height:8px}.lecture-mini-seek-fill{height:100%;background:var(--accent);width:0%;transition:width var(--dur-fast) linear;pointer-events:none}.lecture-mini-content{display:flex;align-items:center;gap:8px;padding:8px 16px}.lecture-mini-play{width:38px;height:38px;border-radius:50%;border:none;background:var(--accent);color:#fff;font-size:1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background var(--dur-base)}.lecture-mini-play:hover{background:var(--accent-hover)}.lecture-mini-btn{width:32px;height:32px;border-radius:50%;border:none;background:transparent;color:var(--text-secondary);font-size:1.1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background var(--dur-base),color var(--dur-base)}.lecture-mini-btn:hover{background:var(--bg-card);color:var(--text-primary)}.lecture-mini-info{flex:1;min-width:0;padding:0 4px}.lecture-mini-title{font-size:.85rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lecture-mini-time{font-size:.75rem;color:var(--text-muted);font-variant-numeric:tabular-nums}.lecture-mini-close{width:32px;height:32px;border-radius:6px;border:1px solid var(--border);background:transparent;color:var(--text-secondary);font-size:1.2rem;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background var(--dur-base),color var(--dur-base)}.lecture-mini-close:hover{background:var(--danger);color:#fff;border-color:var(--danger)}.tts-mini-bar{position:fixed;bottom:0;left:0;right:0;z-index:90;background:color-mix(in srgb,var(--bg-secondary) 96%,transparent);border-top:1px solid var(--border);box-shadow:0 -10px 30px #0f172a29;transform:translate3d(0,100%,0);transition:transform var(--dur-slow) cubic-bezier(.4,0,.2,1);overflow:hidden;pointer-events:none;will-change:transform;padding-bottom:env(safe-area-inset-bottom,0px)}.tts-mini-bar.active{transform:translateZ(0);pointer-events:auto}.tts-mini-seek{width:100%;height:4px;background:var(--border)}.tts-mini-seek-fill{width:0%;height:100%;background:var(--accent);transition:width var(--dur-fast) linear}.tts-mini-content{display:flex;align-items:center;gap:10px;padding:8px 16px}.tts-mini-play{width:42px;height:42px;border-radius:50%;border:none;background:var(--accent);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 10px 24px color-mix(in srgb,var(--accent) 24%,transparent)}.tts-mini-play.is-loading{cursor:wait}.tts-mini-play .icon{width:18px;height:18px;display:block}.tts-mini-info{min-width:0;flex:1}.tts-mini-title{font-size:.84rem;font-weight:700;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tts-mini-time{font-size:.74rem;color:var(--text-muted);font-variant-numeric:tabular-nums}.tts-mini-close{width:38px;height:38px;border-radius:10px;border:1px solid var(--border);background:var(--bg-card);color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background var(--dur-base),color var(--dur-base),border-color var(--dur-base)}.tts-mini-close:hover{background:var(--danger);color:#fff;border-color:var(--danger)}.mobile-nav.mini-bar-active{bottom:60px}@media(max-width:640px){.lecture-mini-content{padding:6px 10px;gap:4px}.lecture-mini-play{width:34px;height:34px;font-size:.9rem}.lecture-mini-btn{width:28px;height:28px;font-size:.95rem}.tts-mini-content{padding:7px 10px;gap:8px}.tts-mini-play{width:42px;height:42px}.tts-mini-close{width:38px;height:38px}}.tts-word.active{background:var(--accent);color:#fff;padding:1px 3px;border-radius:4px;box-shadow:0 0 8px #6366f166}.tts-word.sentence-active{background:#6366f11a;color:var(--text-primary);border-radius:3px}[data-theme=dark] .tts-word.sentence-active{background:#6366f126}.expand-card{--expand-accent: var(--accent);background:linear-gradient(180deg,color-mix(in srgb,var(--bg-card) 94%,var(--expand-accent) 6%),var(--bg-card));border:1px solid color-mix(in srgb,var(--border) 78%,var(--expand-accent) 22%);border-radius:16px;overflow:hidden;margin-top:14px;margin-bottom:10px;max-width:100%;min-width:0;box-shadow:0 14px 36px color-mix(in srgb,var(--expand-accent) 8%,transparent)}.expand-card[data-type=elaborate]{--expand-accent: #8b5cf6}.expand-card[data-type=case_study]{--expand-accent: #06b6d4}.expand-card[data-type=analogy]{--expand-accent: #f59e0b}.expand-card[data-type=eli5]{--expand-accent: #22c55e}.expand-card[data-type=followup]{--expand-accent: var(--accent)}.expand-card.is-collapsed{box-shadow:none}.expand-card-header{padding:10px;border-bottom:1px solid var(--border);display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;font-weight:700;font-size:.85rem;min-width:0;background:color-mix(in srgb,var(--expand-accent) 8%,transparent)}.expand-card-toggle{appearance:none;border:0;background:transparent;color:var(--text-primary);font:inherit;display:inline-flex;align-items:center;gap:9px;min-width:0;padding:0;cursor:pointer;text-align:left}.expand-card-toggle:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px;border-radius:10px}.expand-card-icon{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;flex:0 0 auto;border-radius:10px;background:color-mix(in srgb,var(--expand-accent) 14%,var(--bg-card));color:var(--expand-accent)}.expand-card-icon svg,.expand-toggle svg{width:16px;height:16px}.expand-card-title{min-width:0;overflow-wrap:anywhere;color:var(--text-primary);letter-spacing:0}.expand-toggle{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;margin-left:2px;color:var(--text-muted)}.expand-card-actions{display:inline-flex;align-items:center;gap:6px;flex-wrap:nowrap;margin-left:auto}.expand-card-action{padding:6px 11px;font-size:.75rem;min-height:30px}.expand-card-body{padding:18px 20px 20px;font-size:.92rem;line-height:1.72;color:var(--text-secondary);max-width:100%;min-width:0;overflow-wrap:anywhere;word-break:normal;hyphens:auto}.expand-card-body :where(p,ul,ol,h1,h2,h3,blockquote){max-width:68ch}.expand-card-body p{margin:0 0 14px;line-height:1.72;min-width:0;overflow-wrap:anywhere}.expand-card-body p:last-child{margin-bottom:0}.expand-card-body ul{margin:0 0 16px;padding-left:20px}.expand-card-body li{margin-bottom:6px;line-height:1.75;overflow-wrap:anywhere}.expand-card-body strong,.expand-card-body b{color:var(--text-primary)}.expand-card-body h1,.expand-card-body h2,.expand-card-body h3{color:var(--text-primary);font-size:.98rem;margin:14px 0 8px;overflow-wrap:anywhere}.expand-card-body>:first-child{margin-top:0}.expand-card-body code,.expand-card-body pre{white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}.expand-card-body table{display:block;max-width:100%;overflow-x:auto}.expand-card-body img,.expand-card-body video{max-width:100%;height:auto}.expand-card-loading{display:inline-flex;align-items:center;gap:10px;margin:12px 0 2px;padding:10px 14px;border:1px solid color-mix(in srgb,var(--border) 78%,var(--accent) 22%);border-radius:999px;background:color-mix(in srgb,var(--bg-card) 88%,var(--accent) 12%);color:var(--text-secondary);font-size:.84rem;font-weight:700}.expand-card-loading .generation-spinner{width:18px;height:18px;border-width:2px}.followup-input-wrap{margin-top:16px}.followup-input-row{display:flex;align-items:flex-end;gap:0;background:var(--bg-input);border:1.5px solid var(--border);border-radius:24px;padding:6px 6px 6px 18px;transition:border-color var(--dur-base)}.followup-input-row:focus-within{border-color:var(--accent)}.followup-input{flex:1;min-width:0;width:100%;min-height:24px;max-height:128px;border:none;background:transparent;color:var(--text-primary);font-family:inherit;font-size:.88rem;line-height:1.45;padding:8px 0;outline:none;resize:none;overflow-y:auto;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}.followup-input::placeholder{color:var(--text-muted)}.followup-send{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;border:none;background:var(--accent);color:#fff;cursor:pointer;flex-shrink:0;transition:background var(--dur-base),transform var(--dur-fast)}.followup-send.is-loading{cursor:wait}.followup-send:hover{background:var(--accent-hover);transform:scale(1.05)}.followup-send:active{transform:scale(.95)}.followup-send:disabled{opacity:.5;cursor:wait}.followup-question{padding:10px 16px;background:var(--accent);color:#fff;border-radius:16px 16px 4px;font-size:.88rem;font-weight:500;line-height:1.5;max-width:85%;margin:12px 0 8px auto;width:fit-content;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}.followup-loading-card{display:inline-flex;align-items:center;gap:10px;padding:10px 14px;margin:8px 0 10px;border:1px solid var(--border);border-radius:16px;background:color-mix(in srgb,var(--bg-card) 84%,var(--accent) 16%);color:var(--text-secondary);font-size:.88rem;font-weight:600}.followup-loading-dots{display:inline-flex;align-items:center;gap:4px}.followup-loading-dots i{display:block;width:5px;height:5px;border-radius:50%;background:var(--accent);animation:followupDotPulse 1s ease-in-out infinite}.followup-loading-dots i:nth-child(2){animation-delay:.14s}.followup-loading-dots i:nth-child(3){animation-delay:.28s}@keyframes followupDotPulse{0%,80%,to{opacity:.35;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}.idea-practice-bridge{display:flex;align-items:center;gap:12px;margin:12px 0 10px;padding:12px 14px;border:1px solid color-mix(in srgb,var(--border) 72%,var(--accent) 28%);border-radius:14px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent-subtle) 72%,transparent),var(--bg-card));color:var(--text-secondary);box-shadow:0 12px 30px color-mix(in srgb,var(--accent) 10%,transparent);opacity:0;transform:translateY(6px);animation:practiceBridgeIn .28s var(--ease-out-expo) forwards}.idea-practice-bridge.is-fresh{animation:practiceBridgeIn .28s var(--ease-out-expo) forwards,practiceBridgePulse .8s var(--ease-out-expo)}.idea-practice-icon{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:12px;background:var(--accent);color:#fff;flex:0 0 auto;box-shadow:0 10px 24px color-mix(in srgb,var(--accent) 22%,transparent)}.idea-practice-icon svg{width:17px;height:17px}.idea-practice-copy{min-width:0;flex:1;display:grid;gap:2px}.idea-practice-copy strong{color:var(--text-primary);font-size:.9rem;line-height:1.25}.idea-practice-copy span{color:var(--text-muted);font-size:.8rem;line-height:1.35}.idea-practice-link{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:7px 14px;border-radius:999px;background:var(--accent);color:#fff;font-size:.82rem;font-weight:750;text-decoration:none;flex:0 0 auto;transition:transform var(--dur-fast),background var(--dur-base),box-shadow var(--dur-base)}.idea-practice-link:hover{background:var(--accent-hover);color:#fff;transform:translateY(-1px);box-shadow:0 10px 24px color-mix(in srgb,var(--accent) 22%,transparent)}@keyframes practiceBridgeIn{to{opacity:1;transform:translateY(0)}}@keyframes practiceBridgePulse{0%,to{border-color:color-mix(in srgb,var(--border) 72%,var(--accent) 28%)}45%{border-color:color-mix(in srgb,var(--accent) 72%,var(--border) 28%)}}.tutor-fab{position:fixed;bottom:24px;right:24px;width:40px;height:40px;border-radius:50%;background:color-mix(in srgb,var(--bg-card) 76%,var(--accent) 18%);color:color-mix(in srgb,var(--text-primary) 72%,var(--accent) 28%);border:1px solid color-mix(in srgb,var(--accent) 42%,var(--border));cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 22px -20px color-mix(in srgb,var(--accent) 70%,transparent),inset 0 1px color-mix(in srgb,#fff 8%,transparent);z-index:1000;opacity:.62;transition:opacity var(--dur-base),border-color var(--dur-base),background var(--dur-base)}.tutor-fab:hover{opacity:1;border-color:color-mix(in srgb,var(--accent) 58%,var(--border));background:color-mix(in srgb,var(--bg-card) 66%,var(--accent) 26%)}.tutor-chat{--tutor-panel: color-mix(in srgb, var(--bg-card) 54%, transparent);--tutor-panel-soft: color-mix(in srgb, var(--bg-card) 34%, transparent);--tutor-panel-strong: color-mix(in srgb, var(--bg-secondary) 68%, transparent);--tutor-border: color-mix(in srgb, var(--border) 58%, transparent);--tutor-accent-wash: color-mix(in srgb, var(--accent) 14%, transparent);position:fixed;bottom:24px;right:24px;width:400px;max-width:calc(100vw - 32px);height:520px;max-height:calc(100vh - 100px);background:var(--bg-secondary);background:linear-gradient(180deg,color-mix(in srgb,var(--bg-secondary) 78%,transparent),color-mix(in srgb,var(--bg-primary) 70%,transparent)),linear-gradient(135deg,color-mix(in srgb,var(--accent) 10%,transparent),transparent 38%,color-mix(in srgb,var(--info) 8%,transparent));border:1px solid var(--tutor-border);border-radius:16px;display:flex;flex-direction:column;z-index:1001;box-shadow:0 8px 32px #0000004d;-webkit-backdrop-filter:blur(20px) saturate(1.12);backdrop-filter:blur(20px) saturate(1.12);overflow:hidden;animation:fadeIn var(--dur-fast) var(--ease-out-expo)}.fusion-jarvis-chat{animation:none}@media(max-width:768px){.tutor-chat{bottom:0;right:0;left:0;width:100%;max-width:100%;height:calc(100vh - 60px);max-height:calc(100vh - 60px);border-radius:16px 16px 0 0}}.tutor-chat-header{position:relative;z-index:3;display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--tutor-border);background:var(--bg-card);background:linear-gradient(180deg,var(--tutor-panel),var(--tutor-panel-soft)),radial-gradient(circle at 68% 12%,color-mix(in srgb,var(--accent) 16%,transparent),transparent 32%),linear-gradient(115deg,var(--tutor-accent-wash),transparent 58%);box-shadow:0 16px 32px -28px #0000008c,inset 0 1px color-mix(in srgb,#fff 8%,transparent);-webkit-backdrop-filter:blur(18px) saturate(1.14);backdrop-filter:blur(18px) saturate(1.14)}.tutor-chat-header:after{content:"";position:absolute;right:0;bottom:-22px;left:0;height:22px;pointer-events:none;background:linear-gradient(180deg,color-mix(in srgb,var(--bg-secondary) 30%,transparent),transparent)}.tutor-chat-heading{min-width:0;flex:1 1 auto;padding-right:10px}.tutor-chat-title{font-weight:700;font-size:.95rem}.tutor-chat-sub{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;color:var(--text-muted);margin-top:2px}.tutor-lecture-context{display:none;align-items:center;gap:7px;min-width:0;margin-top:7px;color:var(--text-muted);font-size:.72rem;line-height:1.2}.tutor-lecture-context-main{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:760;color:color-mix(in srgb,var(--text-primary) 78%,var(--accent) 22%)}.tutor-lecture-playback-chip{flex:0 0 auto;display:inline-flex;align-items:center;min-height:22px;padding:0 8px;border:1px solid color-mix(in srgb,var(--border) 72%,transparent);border-radius:999px;background:color-mix(in srgb,var(--bg-card) 70%,transparent);color:var(--text-muted);font-size:.68rem;font-weight:780;white-space:nowrap}.tutor-lecture-playback-chip[data-lecture-playback-state=playing]{border-color:color-mix(in srgb,#22c55e 38%,var(--border));color:color-mix(in srgb,var(--text-primary) 78%,#16a34a 22%)}.tutor-lecture-playback-chip[data-lecture-playback-state=paused],.tutor-lecture-playback-chip[data-lecture-playback-state=voice-tutor-active]{border-color:color-mix(in srgb,var(--accent) 44%,var(--border));color:color-mix(in srgb,var(--text-primary) 78%,var(--accent) 22%)}.tutor-chat-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-shrink:0}.tutor-header-btn{width:32px;height:32px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--text-muted);cursor:pointer;font-size:1.1rem;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:background var(--dur-fast),border-color var(--dur-fast),color var(--dur-fast),transform var(--dur-fast),box-shadow var(--dur-fast)}.tutor-header-btn:hover{background:linear-gradient(145deg,color-mix(in srgb,var(--bg-hover) 56%,transparent),color-mix(in srgb,var(--accent) 8%,transparent));border-color:color-mix(in srgb,var(--border-hover) 70%,transparent);color:var(--text-primary);box-shadow:inset 0 1px color-mix(in srgb,#fff 8%,transparent)}.tutor-header-btn:active{transform:scale(.94)}.tutor-header-btn .icon{width:16px;height:16px}.tutor-chat-messages{position:relative;z-index:1;flex:1 1 auto;min-height:0;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:12px;background:linear-gradient(180deg,color-mix(in srgb,var(--bg-secondary) 10%,transparent),transparent 18%,transparent 82%,color-mix(in srgb,var(--bg-secondary) 8%,transparent))}.tutor-msg{display:flex}.tutor-msg-user{justify-content:flex-end}.tutor-msg-ai{justify-content:flex-start}.tutor-msg-bubble{max-width:85%;padding:10px 14px;border-radius:16px;font-size:.88rem;line-height:1.65;overflow-wrap:anywhere}.tutor-msg-user .tutor-msg-bubble{background:linear-gradient(135deg,var(--accent),color-mix(in srgb,var(--accent) 72%,var(--info)));color:#fff;border-bottom-right-radius:4px;box-shadow:0 12px 28px -22px color-mix(in srgb,var(--accent) 70%,transparent)}.tutor-msg-ai .tutor-msg-bubble{background:var(--bg-card);background:linear-gradient(145deg,color-mix(in srgb,var(--bg-card) 58%,transparent),color-mix(in srgb,var(--bg-hover) 28%,transparent)),linear-gradient(115deg,color-mix(in srgb,var(--accent) 10%,transparent),transparent 60%);border:1px solid color-mix(in srgb,var(--border) 62%,transparent);color:var(--text-primary);border-bottom-left-radius:4px;box-shadow:0 10px 26px -22px #0000008c,inset 0 1px color-mix(in srgb,#fff 7%,transparent);-webkit-backdrop-filter:blur(12px) saturate(1.04);backdrop-filter:blur(12px) saturate(1.04)}.tutor-msg-ai .tutor-msg-bubble p{margin:0 0 8px}.tutor-msg-ai .tutor-msg-bubble p:last-child{margin:0}.tutor-msg-ai .tutor-msg-bubble strong{color:var(--accent)}.tutor-msg-streaming .tutor-msg-bubble:after{content:"";display:inline-block;width:.45em;height:1em;margin-left:3px;border-radius:2px;background:var(--accent);vertical-align:-.15em;animation:tutorCursorBlink .9s steps(2,start) infinite}@keyframes tutorCursorBlink{50%{opacity:0}}.tutor-msg-typing .tutor-msg-bubble{padding:14px 20px}.tutor-typing-dots{display:flex;gap:4px}.tutor-typing-dots span{width:8px;height:8px;border-radius:50%;background:var(--text-muted);animation:tutorBounce 1.2s infinite}.tutor-typing-dots span:nth-child(2){animation-delay:.2s}.tutor-typing-dots span:nth-child(3){animation-delay:.4s}@keyframes tutorBounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-6px)}}.tutor-chat-input{position:relative;flex:0 0 auto;z-index:3;display:flex;align-items:flex-end;gap:0;padding:10px 10px 10px 18px;border-top:1px solid var(--tutor-border);background:var(--bg-secondary);background:linear-gradient(180deg,color-mix(in srgb,var(--bg-secondary) 94%,transparent),color-mix(in srgb,var(--bg-card) 98%,transparent)),linear-gradient(115deg,color-mix(in srgb,var(--accent) 5%,transparent),transparent 68%);box-shadow:0 -10px 24px -24px #00000073,inset 0 1px color-mix(in srgb,#fff 7%,transparent);-webkit-backdrop-filter:blur(18px) saturate(1.12);backdrop-filter:blur(18px) saturate(1.12)}.tutor-chat-input:before,.tutor-voice-input:before{content:"";position:absolute;top:-22px;right:0;left:0;height:22px;pointer-events:none;background:linear-gradient(180deg,transparent,color-mix(in srgb,var(--bg-secondary) 52%,transparent))}.tutor-chat-input>*,.tutor-voice-input>*{position:relative;z-index:1}.tutor-chat-input textarea{flex:1;border:none;background:transparent;color:var(--text-primary);font-family:inherit;font-size:.88rem;padding:8px 0;outline:none;resize:none;overflow-y:auto;min-height:36px;max-height:150px;line-height:1.4;display:block}.tutor-chat-input textarea::placeholder{color:var(--text-muted)}.tutor-voice-toggle{transition:background var(--dur-base),color var(--dur-base)}.tutor-voice-toggle.active{background:linear-gradient(135deg,var(--accent),color-mix(in srgb,var(--accent) 66%,var(--info)));color:#fff;border-color:color-mix(in srgb,#fff 18%,transparent);border-radius:6px;box-shadow:0 12px 24px -18px color-mix(in srgb,var(--accent) 90%,transparent),inset 0 1px color-mix(in srgb,#fff 20%,transparent)}.tutor-voice-status{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;padding:8px 16px;border-bottom:1px solid var(--tutor-border);background:var(--bg-primary);background:linear-gradient(90deg,color-mix(in srgb,var(--bg-primary) 44%,transparent),color-mix(in srgb,var(--bg-card) 32%,transparent)),linear-gradient(115deg,color-mix(in srgb,var(--accent) 12%,transparent),transparent 64%);font-size:.78rem;-webkit-backdrop-filter:blur(16px) saturate(1.1);backdrop-filter:blur(16px) saturate(1.1)}.voice-status-left{display:flex;align-items:center;gap:8px}.voice-pulse{width:10px;height:10px;border-radius:50%;background:var(--text-muted);flex-shrink:0;transition:background var(--dur-slow)}.voice-pulse.listening{background:#22c55e;animation:voicePulseAnim 1.2s ease-in-out infinite}.voice-pulse.speaking{background:var(--accent);animation:voicePulseAnim 1.5s ease-in-out infinite}.voice-pulse.processing{background:#f59e0b;animation:voicePulseAnim .6s ease-in-out infinite}.voice-pulse.heard,.voice-pulse[data-voice-state=heard]{background:#22c55e}@keyframes voicePulseAnim{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.4);opacity:.6}}.voice-status-text{color:var(--text-secondary);font-weight:500}.voice-select-mini{font-size:.72rem;padding:3px 6px;max-width:130px;border:1px solid color-mix(in srgb,var(--border) 78%,transparent);border-radius:6px;background:var(--bg-card);background:color-mix(in srgb,var(--bg-card) 72%,transparent);color:var(--text-primary);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.tutor-voice-input{position:relative;flex:0 0 auto;z-index:3;display:flex;flex-direction:column;align-items:center;gap:10px;justify-content:center;width:100%;min-height:132px;padding:20px 16px 18px;border-top:1px solid var(--tutor-border);border-right:0;border-bottom:0;border-left:0;background:var(--bg-card);background:linear-gradient(180deg,transparent 0%,color-mix(in srgb,var(--bg-card) 22%,transparent) 20%,color-mix(in srgb,var(--bg-secondary) 46%,transparent) 56%,var(--tutor-panel-strong) 100%),radial-gradient(circle at 50% 16%,color-mix(in srgb,var(--accent) 10%,transparent),transparent 34%),linear-gradient(120deg,transparent,color-mix(in srgb,var(--accent) 14%,transparent) 78%);color:inherit;cursor:pointer;font:inherit;text-align:center;box-shadow:0 -20px 44px -34px #00000094,inset 0 1px color-mix(in srgb,#fff 7%,transparent);-webkit-backdrop-filter:blur(18px) saturate(1.12);backdrop-filter:blur(18px) saturate(1.12);isolation:isolate;touch-action:manipulation;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;appearance:none;-webkit-appearance:none}.tutor-chat:has(.tutor-chat-input:not(.hidden)) .tutor-chat-messages{padding-bottom:16px;margin-bottom:0}.tutor-chat:has(.tutor-voice-input:not(.hidden)) .tutor-chat-messages{padding-bottom:18px;margin-bottom:0}.mechanism-coach-chat .tutor-chat-messages{padding-top:12px;min-height:0}.mechanism-coach-fab{z-index:2200}.mechanism-coach-chat{z-index:2201;height:600px}.mechanism-coach-chat .tutor-chat-input,.mechanism-coach-chat .tutor-voice-input{position:relative;right:auto;bottom:auto;left:auto;flex-shrink:0}.mechanism-coach-chat .tutor-chat-input:before,.mechanism-coach-chat .tutor-voice-input:before{display:none}.mechanism-coach-chat:has(.tutor-chat-input:not(.hidden)) .tutor-chat-messages,.mechanism-coach-chat:has(.tutor-voice-input:not(.hidden)) .tutor-chat-messages{padding-bottom:16px;margin-bottom:0}.mechanism-coach-context{position:relative;z-index:2;display:flex;flex-wrap:wrap;gap:6px;padding:8px 16px;border-bottom:1px solid var(--tutor-border);background:linear-gradient(90deg,color-mix(in srgb,var(--bg-card) 44%,transparent),color-mix(in srgb,var(--accent) 8%,transparent));color:var(--text-muted);font-size:.72rem}.mechanism-coach-context span{display:inline-flex;align-items:center;max-width:100%;min-height:22px;padding:2px 8px;border:1px solid color-mix(in srgb,var(--border) 72%,transparent);border-radius:999px;background:color-mix(in srgb,var(--bg-card) 62%,transparent);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mechanism-coach-actions{flex-wrap:wrap;max-width:85%}.mechanism-coach-action-btn{border-radius:8px}.voice-mic-btn{width:64px;height:64px;border-radius:50%;border:1px solid color-mix(in srgb,var(--border) 82%,transparent);background:var(--bg-card);background:linear-gradient(145deg,color-mix(in srgb,var(--bg-card) 42%,transparent),color-mix(in srgb,var(--bg-hover) 24%,transparent));color:var(--text-secondary);display:flex;align-items:center;justify-content:center;box-shadow:0 18px 38px -26px #000000a8,0 0 0 1px color-mix(in srgb,#fff 5%,transparent),inset 0 1px color-mix(in srgb,#fff 13%,transparent);-webkit-backdrop-filter:blur(12px) saturate(1.08);backdrop-filter:blur(12px) saturate(1.08);transition:border-color var(--dur-base),background var(--dur-base),box-shadow var(--dur-base),color var(--dur-base),transform var(--dur-fast)}.tutor-voice-input:hover .voice-mic-btn,.voice-mic-btn:hover{border-color:var(--accent);color:var(--accent)}.tutor-voice-input:focus-visible{outline:2px solid var(--accent);outline-offset:-4px}.tutor-voice-input:active .voice-mic-btn{transform:scale(.96)}.voice-mic-btn.listening{border-color:#22c55e;color:#22c55e;background:linear-gradient(145deg,#22c55e24,color-mix(in srgb,var(--bg-card) 58%,transparent));animation:voice-rings 1.2s ease-out infinite}.voice-mic-btn.speaking{border-color:var(--accent);color:var(--accent);opacity:.5}.voice-mic-btn.processing{border-color:#f59e0b;color:#f59e0b;background:linear-gradient(145deg,#f59e0b24,color-mix(in srgb,var(--bg-card) 58%,transparent))}.voice-mic-btn.heard,.voice-mic-btn[data-voice-state=heard]{border-color:#22c55e;color:#16a34a;background:linear-gradient(145deg,#22c55e1f,color-mix(in srgb,var(--bg-card) 62%,transparent))}@keyframes voice-rings{0%{box-shadow:0 0 #22c55e80,0 0 #22c55e4d,0 0 #22c55e26}to{box-shadow:0 0 0 20px #22c55e00,0 0 0 36px #22c55e00,0 0 0 52px #22c55e00}}.voice-mic-hint{font-size:.78rem;font-weight:760;color:var(--text-secondary);user-select:none;-webkit-user-select:none}.voice-mic-subhint{max-width:24ch;color:var(--text-muted);font-size:.76rem;line-height:1.35;text-align:center;user-select:none;-webkit-user-select:none}.tutor-msg-bubble.voice-speaking{border-color:var(--accent);box-shadow:0 0 12px #6366f133}@keyframes thinking-breathe{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.tutor-msg-typing .tutor-msg-bubble{background:linear-gradient(135deg,var(--bg-input) 0%,var(--accent-subtle) 50%,var(--bg-input) 100%);background-size:200% 200%;animation:thinking-breathe 2s linear infinite}@media(prefers-reduced-motion:reduce){.voice-mic-btn.listening{animation:none}.tutor-msg-typing .tutor-msg-bubble{animation:none;background:var(--bg-input)}.tutor-msg-streaming .tutor-msg-bubble:after{animation:none}}.tutor-msg-interim .tutor-msg-bubble{opacity:.5;font-style:italic;border-style:dashed}@media(max-width:768px){.voice-mic-btn{width:72px;height:72px}.tutor-voice-input{min-height:156px;padding:18px 12px calc(20px + env(safe-area-inset-bottom,0px))}}body:has(.lecture-player.active) .tutor-fab{display:none}body:has(.lecture-player.active) .tutor-chat{z-index:10020}body:has(.lecture-player.active) .tutor-chat:not(.hidden){top:calc(env(safe-area-inset-top,0px) + 78px);right:22px;bottom:calc(104px + env(safe-area-inset-bottom,0px));left:auto;width:min(410px,calc(100vw - 44px));height:auto;max-height:none;border-radius:14px;border-color:color-mix(in srgb,var(--accent) 26%,var(--border) 74%);box-shadow:0 24px 70px #0f172a3d,inset 0 1px color-mix(in srgb,#fff 10%,transparent)}body:has(.lecture-player.active) .tutor-chat:not(.hidden) .tutor-chat-header{min-height:70px;padding:14px 14px 12px}body:has(.lecture-player.active) .tutor-chat:not(.hidden) .tutor-chat-title{font-size:.9rem}body:has(.lecture-player.active) .tutor-chat:not(.hidden) .tutor-chat-sub{max-width:42ch}body:has(.lecture-player.active) .tutor-chat:not(.hidden) .tutor-lecture-context{display:flex}body:has(.lecture-player.active) .tutor-chat:not(.hidden) .tutor-chat-actions{max-width:190px;flex-wrap:wrap;gap:4px}body:has(.lecture-player.active) .tutor-chat:not(.hidden) .tutor-header-btn{width:31px;height:31px}body:has(.lecture-player.active) .tutor-chat:not(.hidden) .tutor-chat-messages{padding:16px 20px 14px;gap:12px}body:has(.lecture-player.active) .tutor-chat:not(.hidden) .tutor-msg-bubble{max-width:min(94%,34rem);padding:12px 16px;line-height:1.56}body:has(.lecture-player.active) .tutor-chat:not(.hidden) .tutor-voice-status{padding:8px 16px 6px;border-bottom:0;background:linear-gradient(90deg,color-mix(in srgb,var(--bg-card) 58%,transparent),color-mix(in srgb,var(--bg-secondary) 30%,transparent))}body:has(.lecture-player.active) .tutor-chat:not(.hidden) .tutor-chat-input{padding:10px 12px 10px 18px}body:has(.lecture-player.active) .tutor-chat:not(.hidden) .tutor-chat-input textarea{font-size:.92rem}body:has(.lecture-player.active) .tutor-chat:not(.hidden):has(.tutor-voice-input:not(.hidden)){inset:50% 50% auto auto;width:min(560px,calc(100vw - 34px));height:min(720px,calc(100dvh - 48px));max-height:calc(100dvh - 48px);transform:translate(50%,-50%);border-radius:16px;border-color:color-mix(in srgb,var(--accent) 34%,var(--border) 66%);box-shadow:0 34px 90px #0f172a57,inset 0 1px color-mix(in srgb,#fff 11%,transparent)}body:has(.lecture-player.active) .tutor-chat:not(.hidden):has(.tutor-voice-input:not(.hidden)) .tutor-chat-header{min-height:74px}body:has(.lecture-player.active) .tutor-chat:not(.hidden):has(.tutor-voice-input:not(.hidden)) .tutor-voice-status{flex:0 0 auto;padding:8px 20px 0}body:has(.lecture-player.active) .tutor-chat:not(.hidden):has(.tutor-voice-input:not(.hidden)) .voice-select-mini{max-width:min(170px,42vw);min-height:32px;border-radius:999px}body:has(.lecture-player.active) .tutor-chat:not(.hidden):has(.tutor-voice-input:not(.hidden)) .tutor-chat-messages{flex:1 1 auto;min-height:132px;padding:14px 20px 10px;margin-bottom:0}body:has(.lecture-player.active) .tutor-chat:not(.hidden):has(.tutor-voice-input:not(.hidden)) .tutor-voice-input{position:relative;right:auto;bottom:auto;left:auto;flex:0 0 auto;width:calc(100% - 40px);min-height:clamp(188px,30dvh,250px);margin:8px 20px 20px;padding:22px 20px calc(24px + env(safe-area-inset-bottom,0px));border:1px solid color-mix(in srgb,var(--accent) 18%,var(--border));border-radius:22px;background:radial-gradient(circle at 50% 32%,color-mix(in srgb,var(--accent) 10%,transparent),transparent 34%),linear-gradient(180deg,color-mix(in srgb,var(--bg-card) 88%,transparent),color-mix(in srgb,var(--bg-secondary) 74%,transparent));box-shadow:0 18px 46px -38px #0f172a8f,inset 0 1px color-mix(in srgb,#fff 18%,transparent)}body:has(.lecture-player.active) .tutor-chat:not(.hidden):has(.tutor-voice-input:not(.hidden)) .tutor-voice-input:before{top:-16px;height:16px}body:has(.lecture-player.active) .tutor-chat:not(.hidden):has(.tutor-voice-input:not(.hidden)) .voice-mic-btn{width:clamp(86px,13dvh,112px);height:clamp(86px,13dvh,112px)}body:has(.lecture-player.active) .tutor-chat:not(.hidden):has(.tutor-voice-input:not(.hidden)) .voice-mic-btn .icon,body:has(.lecture-player.active) .tutor-chat:not(.hidden):has(.tutor-voice-input:not(.hidden)) .voice-mic-btn svg{width:42px;height:42px}body:has(.lecture-player.active) .tutor-chat:not(.hidden):has(.tutor-voice-input:not(.hidden)) .voice-mic-hint{color:var(--text-primary);font-size:1rem;font-weight:820}body:has(.lecture-player.active) .tutor-chat:not(.hidden):has(.tutor-voice-input:not(.hidden)) .voice-mic-subhint{color:var(--text-muted);font-size:.82rem}@media(max-width:768px){body:has(.lecture-player.active) .lecture-player:after{background:#0f172a2e}body:has(.lecture-player.active) .tutor-chat:not(.hidden){inset:auto 0 0;width:100%;max-width:100%;height:min(66dvh,580px);max-height:calc(100dvh - 84px);border-radius:16px 16px 0 0;transform:none}body:has(.lecture-player.active) .tutor-chat:not(.hidden) .tutor-chat-header{min-height:72px;padding:18px 14px 10px 16px}body:has(.lecture-player.active) .tutor-chat:not(.hidden) .tutor-chat-actions{max-width:84px;gap:6px}body:has(.lecture-player.active) .tutor-chat:not(.hidden) .tutor-chat-actions .tutor-header-btn:not(.tutor-voice-toggle):not(:last-child){display:none}body:has(.lecture-player.active) .tutor-chat:not(.hidden) .tutor-header-btn{width:34px;height:34px;border-radius:999px;background:color-mix(in srgb,var(--bg-card) 54%,transparent)}body:has(.lecture-player.active) .tutor-chat:not(.hidden) .tutor-voice-toggle.active{border-color:color-mix(in srgb,var(--accent) 56%,transparent);background:linear-gradient(135deg,var(--accent),color-mix(in srgb,var(--accent) 72%,var(--info)));color:#fff;box-shadow:0 12px 26px -20px color-mix(in srgb,var(--accent) 86%,transparent)}body:has(.lecture-player.active) .tutor-chat:not(.hidden) .tutor-lecture-context{gap:5px}body:has(.lecture-player.active) .tutor-chat:not(.hidden) .tutor-lecture-context-main{max-width:42vw}body:has(.lecture-player.active) .tutor-chat:not(.hidden) .tutor-lecture-playback-chip{max-width:34vw;overflow:hidden;text-overflow:ellipsis}body:has(.lecture-player.active) .tutor-chat:not(.hidden):has(.tutor-voice-input:not(.hidden)){top:calc(env(safe-area-inset-top,0px) + 10px);right:10px;bottom:calc(env(safe-area-inset-bottom,0px) + 10px);left:10px;width:auto;max-width:none;height:auto;max-height:none;border-radius:16px;transform:none}body:has(.lecture-player.active) .tutor-chat:not(.hidden):has(.tutor-voice-input:not(.hidden)) .tutor-chat-messages{padding:12px 16px 8px}body:has(.lecture-player.active) .tutor-chat:not(.hidden):has(.tutor-voice-input:not(.hidden)) .tutor-voice-input{width:calc(100% - 28px);min-height:clamp(172px,28dvh,230px);margin:6px 14px 14px;padding:20px 18px calc(22px + env(safe-area-inset-bottom,0px))}body:has(.lecture-player.active) .tutor-chat:not(.hidden):has(.tutor-voice-input:not(.hidden)) .voice-mic-btn{width:clamp(84px,13dvh,108px);height:clamp(84px,13dvh,108px)}}@media(max-width:768px){body.kb-open:has(.lecture-player.active) .tutor-chat:not(.hidden){top:calc(var(--vv-offset-top, 0px) + env(safe-area-inset-top,0px) + 8px);right:0;bottom:var(--kb-offset, 0px);left:0;height:auto;max-height:none;border-radius:16px 16px 0 0;transform:none;animation:none}body.kb-open:has(.lecture-player.active) .tutor-chat:not(.hidden) .tutor-chat-messages{padding:14px 18px 12px;gap:11px}body.kb-open:has(.lecture-player.active) .tutor-chat:not(.hidden) .tutor-msg-bubble{max-width:min(94%,34rem);line-height:1.5}body.kb-open:has(.lecture-player.active) .tutor-chat:not(.hidden) .tutor-chat-input{padding:8px 10px 8px 16px;border-bottom:0;background:linear-gradient(180deg,color-mix(in srgb,var(--bg-card) 98%,transparent),color-mix(in srgb,var(--bg-card) 100%,transparent));box-shadow:0 -14px 24px -26px #0f172a80,inset 0 1px color-mix(in srgb,#fff 10%,transparent)}body.kb-open:has(.lecture-player.active) .tutor-chat:not(.hidden):has(.tutor-voice-input:not(.hidden)){right:10px;bottom:calc(var(--kb-offset, 0px) + 14px);left:10px}}@media(prefers-reduced-motion:reduce){body:has(.lecture-player.active) .lecture-player:after,body:has(.lecture-player.active) .tutor-chat,body:has(.lecture-player.active) .tutor-voice-input,body:has(.lecture-player.active) .voice-pulse,body:has(.lecture-player.active) .voice-mic-btn{transition:none!important;animation:none!important}}.roadmap{display:flex;flex-direction:column;gap:0}.roadmap-step{display:flex;gap:16px;text-decoration:none;color:inherit;padding:4px 0;transition:background var(--transition);border-radius:var(--radius-sm)}.roadmap-step:hover{background:var(--bg-hover)}.roadmap-marker{display:flex;flex-direction:column;align-items:center;min-width:40px}.roadmap-dot{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.8rem;flex-shrink:0;border:2px solid var(--border);background:var(--bg-card);color:var(--text-muted)}.roadmap-line{width:2px;flex:1;min-height:12px;background:var(--border)}.roadmap-content{padding:6px 0 16px;min-width:0}.roadmap-title{font-weight:600;font-size:.9rem;line-height:1.4;color:var(--text-primary)}.roadmap-sub{font-size:.78rem;color:var(--text-muted);margin-top:2px}.roadmap-done .roadmap-dot{background:var(--success);border-color:var(--success);color:#fff}.roadmap-done .roadmap-line{background:var(--success)}.roadmap-active .roadmap-dot{background:var(--warning);border-color:var(--warning);color:#fff}.roadmap-active .roadmap-line{background:var(--warning)}.roadmap-todo .roadmap-dot{border-color:var(--accent);color:var(--accent)}.roadmap-locked .roadmap-dot{opacity:.5}.roadmap-locked .roadmap-title{color:var(--text-muted)}.mindmap-fullscreen{position:fixed;inset:0;z-index:9999;background:var(--bg-primary);display:flex;flex-direction:column;animation:fadeIn var(--dur-fast) var(--ease-out-expo)}.mindmap-fullscreen-header{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;border-bottom:1px solid var(--border);background:var(--bg-secondary)}.concept-map-container{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;position:relative}.concept-map-container svg{display:block;width:100%}.concept-map-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border)}.concept-map-header h3{margin:0;font-size:.9rem;font-weight:700}.concept-map-legend{display:flex;gap:12px;font-size:.7rem;color:var(--text-muted)}.concept-map-legend span:before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:4px;vertical-align:middle}.legend-completed:before{background:var(--success)}.legend-progress:before{background:var(--warning)}.legend-notstarted:before{background:var(--text-muted)}.legend-center:before{background:var(--accent)}.legend-idea:before{background:#8b5cf6}.legend-flashcard:before{background:var(--text-muted)}.kg-page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;flex-wrap:wrap}.kg-page-header>div:first-child{max-width:720px}.kg-header-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.kg-stats-row{margin-bottom:20px}.knowledge-toolbar{display:grid;grid-template-columns:minmax(190px,260px) minmax(240px,1fr) auto;align-items:end;gap:12px;margin-bottom:24px;padding:14px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-card)}.kg-control{display:flex;flex-direction:column;gap:6px;min-width:0}.kg-control span{color:var(--text-muted);font-size:.74rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.course-map-workspace{width:100%}.course-map-shell{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-sm)}.course-map-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px}.course-map-titleblock{min-width:160px}.course-map-titleblock h2{margin:0;font-size:1.35rem}.course-map-stats{margin-top:4px;color:var(--text-muted);font-size:.78rem;font-weight:600}.course-map-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.course-map-toggle-icon{transition:transform var(--dur-fast) var(--ease-out-expo)}.course-map-shell.is-expanded .course-map-toggle-icon{transform:rotate(180deg)}.course-map-summary{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px 16px;margin:0 16px 16px;padding:13px 14px 16px;border:1px solid var(--border);border-radius:10px;background:var(--bg-input);color:var(--text-secondary);font-size:.86rem;cursor:pointer;overflow:hidden;transition:border-color var(--dur-fast),background var(--dur-fast)}.course-map-summary:hover{border-color:var(--border-hover);background:var(--bg-hover)}.course-map-summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.course-map-summary-copy{display:grid;gap:2px;min-width:0}.course-map-summary-kicker{color:var(--text-muted);font-size:.68rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.kg-control-search{min-width:220px}.kg-export-status{min-height:42px;display:inline-flex;align-items:center;justify-content:center;padding:8px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:.86rem;font-weight:600;white-space:nowrap}.kg-ai-section{margin-bottom:28px}.kg-ai-controls{display:grid;grid-template-columns:minmax(260px,1fr) auto;gap:12px;align-items:end;padding:14px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-card)}.kg-ai-query{min-width:0}.kg-ai-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.kg-ai-actions .btn{min-height:42px}.kg-ai-tag-bar,.kg-ai-results{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.kg-ai-tag-bar[hidden],.kg-ai-results[hidden]{display:none}.kg-ai-tag{display:inline-flex;align-items:center;gap:6px;min-height:30px;padding:5px 10px;border:1px solid var(--border);border-radius:999px;background:var(--bg-card);color:var(--text-secondary);font-size:.8rem;font-weight:650;cursor:pointer;transition:border-color var(--dur-fast),color var(--dur-fast),background var(--dur-fast)}.kg-ai-tag:hover,.kg-ai-tag.active{border-color:var(--accent);color:var(--accent);background:var(--accent-subtle)}.kg-ai-result{flex:1 1 260px;min-height:72px;padding:12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-card);color:var(--text-primary);text-align:left;cursor:pointer;transition:border-color var(--dur-fast),transform var(--dur-fast),box-shadow var(--dur-base)}.kg-ai-result:hover{border-color:var(--accent);box-shadow:var(--shadow-sm)}.kg-ai-result:active{transform:scale(.99)}.kg-ai-result strong{display:block;margin-bottom:5px;font-size:.92rem}.kg-ai-result span{display:block;color:var(--text-muted);font-size:.8rem;line-height:1.4}.kg-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,360px);gap:18px;align-items:start}.kg-section-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.kg-section-header h2{margin:0}.kg-map-container{min-height:560px}.kg-map-container #kgGraphMap{min-height:560px;padding:8px}.kg-detail-panel{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-card);padding:18px;position:sticky;top:92px}.kg-detail-panel h3{margin:0 0 10px;font-size:1.2rem;line-height:1.25}.kg-detail-panel p{color:var(--text-secondary);line-height:1.6}.kg-detail-list{display:grid;gap:8px;margin:14px 0 0}.kg-detail-list a,.kg-detail-list span{display:block;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-secondary);color:var(--text-secondary);font-size:.86rem}.kg-concept-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}.kg-concept-card{width:100%;min-height:132px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-card);color:var(--text-primary);text-align:left;padding:14px;cursor:pointer;transition:border-color var(--dur-base),transform var(--dur-fast),box-shadow var(--dur-base)}.kg-concept-card:hover,.kg-concept-card.active{border-color:var(--accent);box-shadow:var(--shadow-sm)}.kg-concept-card:active{transform:scale(.99)}.kg-concept-title{font-weight:750;line-height:1.3;margin-bottom:8px}.kg-concept-desc{color:var(--text-secondary);font-size:.86rem;line-height:1.5;margin-bottom:12px}.kg-chip-row{display:flex;flex-wrap:wrap;gap:6px}.kg-chip{display:inline-flex;align-items:center;min-height:24px;padding:3px 8px;border:1px solid var(--border);border-radius:999px;background:var(--bg-input);color:var(--text-muted);font-size:.74rem;font-weight:600}.kg-chip-voyage{border-color:var(--success);background:var(--success-subtle);color:var(--success)}.kg-vault-panel{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:12px;align-items:stretch;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-card);padding:14px}.kg-vault-stat{display:flex;flex-direction:column;justify-content:center;min-height:74px;padding:12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-secondary)}.kg-vault-stat strong{font-size:1.5rem;line-height:1}.kg-vault-stat span{color:var(--text-muted);font-size:.8rem;margin-top:6px}@media(max-width:980px){.knowledge-toolbar,.kg-ai-controls,.kg-layout,.kg-vault-panel{grid-template-columns:1fr}.kg-ai-actions{width:100%}.kg-detail-panel{position:static}}@media(max-width:768px){.kg-page-header{align-items:flex-start}.kg-ai-actions .btn,.kg-vault-panel .btn{width:100%}.kg-ai-actions .btn,.kg-vault-panel .btn{justify-content:center}.kg-map-container,.kg-map-container #kgGraphMap{min-height:420px}.kg-concept-list{grid-template-columns:1fr}}@media(max-width:640px){.kg-page-header{gap:12px;padding:22px 0 12px}.kg-page-header>div:first-child{width:100%}.kg-page-header .hero-display{font-size:clamp(1.75rem,8vw,2.2rem);line-height:1.05}.kg-page-header .hero-lede{margin-top:8px;font-size:.88rem;line-height:1.35}.kg-header-actions{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);width:100%;gap:8px}.kg-header-actions .btn{width:100%;min-height:38px;padding:9px 12px;justify-content:center}.kg-stats-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-bottom:12px}.kg-stats-row .stat-card{min-height:70px;padding:10px 5px}.kg-stats-row .stat-value{font-size:1.2rem;line-height:1}.kg-stats-row .stat-label{margin-top:6px;font-size:.66rem;line-height:1.15}.knowledge-toolbar{gap:10px;margin-bottom:16px;padding:12px}.kg-export-status{min-height:36px}.kg-ai-section{margin-bottom:18px}.kg-ai-controls{padding:12px}.kg-map-container,.kg-map-container #kgGraphMap{min-height:340px}}@media(max-width:380px){.mobile-nav a{min-width:48px;padding-left:4px;padding-right:4px;font-size:.62rem}}.course-map-summary strong{color:var(--text-primary);font-size:.95rem;line-height:1.25}.course-map-summary-copy>span:last-child{color:var(--text-muted)}.course-map-summary-meta{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}.course-map-summary-meta span{padding:4px 8px;border:1px solid var(--border);border-radius:999px;color:var(--text-secondary);font-size:.72rem;font-weight:700}.course-map-ready-bar{grid-column:1 / -1;height:4px;border-radius:999px;background:var(--border);overflow:hidden}.course-map-ready-bar span{display:block;height:100%;border-radius:inherit;background:var(--accent);transition:width var(--dur-base) var(--ease-out-expo)}.course-map-body-wrap{border-top:1px solid var(--border)}.course-map-body-wrap[hidden]{display:none}.course-map-controls{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;padding:12px 16px;border-bottom:1px solid var(--border)}.course-map-search{position:relative;display:inline-flex;align-items:center;min-width:220px}.course-map-search span{position:absolute;left:11px;color:var(--text-muted);pointer-events:none;line-height:0}.course-map-search input{width:100%;height:40px;padding:9px 12px 9px 34px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-input);color:var(--text-primary);font:inherit;font-size:16px;outline:none}@media(min-width:769px){.course-map-search input{font-size:.9rem}}.course-map-search input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-subtle)}.course-map-session-select{width:auto;max-width:220px;height:40px;padding-top:8px;padding-bottom:8px;font-size:.86rem}.course-map-segmented{display:inline-flex;align-items:center;gap:2px;padding:3px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-input)}.course-map-segmented button{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:6px 10px;border:0;border-radius:6px;background:transparent;color:var(--text-secondary);cursor:pointer;font:inherit;font-size:.82rem;font-weight:700;white-space:nowrap}.course-map-segmented button:hover{color:var(--text-primary)}.course-map-segmented button.active{background:var(--bg-card);color:var(--text-primary);box-shadow:var(--shadow-sm)}.course-map-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,320px);min-height:460px}.course-map-canvas{border:0;border-radius:0;max-height:none;min-height:420px;background:linear-gradient(var(--border) 1px,transparent 1px),linear-gradient(90deg,var(--border) 1px,transparent 1px),var(--bg-card);background-size:48px 48px;background-position:-1px -1px}.course-map-canvas svg{min-height:inherit}.course-map-empty{min-height:420px;display:grid;place-items:center;padding:24px;color:var(--text-muted);text-align:center}.course-map-inspector{border-left:1px solid var(--border);padding:18px;background:var(--bg-secondary);overflow:auto}.course-map-inspector h3{margin:4px 0 8px;font-size:1.05rem;line-height:1.25}.course-map-inspector p{margin:0 0 14px;color:var(--text-secondary);font-size:.88rem;line-height:1.55}.course-map-panel-kicker,.course-map-panel-label{color:var(--text-muted);font-size:.72rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.course-map-panel-label{margin-bottom:8px}.course-map-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:14px 0}.course-map-metrics span{min-width:0;padding:9px 8px;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-muted);font-size:.72rem;text-align:center}.course-map-metrics strong{display:block;color:var(--text-primary);font-size:1rem;line-height:1.1}.course-map-panel-actions{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 16px}.course-map-panel-section{margin-top:16px}.course-map-minirow{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 0;border:0;border-bottom:1px solid var(--border);background:transparent;color:var(--text-secondary);font:inherit;font-size:.82rem;line-height:1.35;text-align:left;cursor:pointer}a.course-map-minirow{color:var(--text-secondary)}.course-map-minirow:hover{color:var(--text-primary)}.course-map-minirow span{min-width:0;overflow:hidden;text-overflow:ellipsis}.course-map-minirow strong,.course-map-minirow small{flex-shrink:0;color:var(--text-muted);font-size:.76rem;font-weight:800}.course-map-muted{color:var(--text-muted);font-size:.82rem;line-height:1.45}.course-map-meter{height:8px;margin:12px 0 6px;border-radius:999px;background:var(--bg-input);overflow:hidden}.course-map-meter span{display:block;height:100%;border-radius:inherit}.course-map-fullscreen-body{padding:16px!important}.course-map-fullscreen-body .course-map-shell,.course-map-fullscreen-body .course-map-body{min-height:calc(100vh - 96px)}@media(max-width:980px){.course-map-toolbar{align-items:flex-start;flex-direction:column}.course-map-actions,.course-map-controls,.course-map-search{width:100%}.course-map-session-select{flex:1;max-width:none}.course-map-body{grid-template-columns:1fr}.course-map-inspector{border-left:0;border-top:1px solid var(--border);max-height:none}}@media(max-width:768px){.course-map-toolbar{padding:12px}.course-map-actions{display:grid;grid-template-columns:1fr}.course-map-actions .btn{width:100%;min-width:0}.course-map-summary{grid-template-columns:1fr;margin:0 12px 12px}.course-map-summary-meta{justify-content:flex-start}.course-map-controls{gap:6px}.course-map-segmented{width:100%}.course-map-segmented button{flex:1;justify-content:center}.course-map-body{min-height:0}.course-map-canvas,.course-map-empty{min-height:340px}.course-map-canvas{max-height:none}.course-map-inspector{padding:14px}.course-map-metrics{grid-template-columns:repeat(3,1fr)}}.course-delete-btn{position:absolute;top:8px;right:8px;width:28px;height:28px;border-radius:50%;border:none;background:transparent;color:var(--text-muted);font-size:1.2rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--dur-base);z-index:2;opacity:0}.card:hover .course-delete-btn{opacity:1}.course-delete-btn:hover{background:var(--danger);color:#fff}.difficulty-selector{display:flex;gap:8px}.difficulty-btn{padding:8px 20px;border:1.5px solid var(--border);border-radius:100px;background:transparent;color:var(--text-secondary);cursor:pointer;transition:all var(--transition);font-family:inherit;font-size:.85rem;font-weight:600}.difficulty-btn:hover{border-color:var(--accent);color:var(--text-primary)}.difficulty-btn.active{border-color:var(--accent);background:var(--accent);color:#fff}.difficulty-badge{display:inline-flex;align-items:center;gap:4px;font-size:.7rem;font-weight:600;padding:2px 8px;border-radius:12px;text-transform:uppercase;letter-spacing:.03em}.difficulty-badge.beginner{background:#22c55e22;color:#22c55e;border:1px solid #22c55e44}.difficulty-badge.intermediate{background:#3b82f622;color:#3b82f6;border:1px solid #3b82f644}.difficulty-badge.advanced{background:#f59e0b22;color:#f59e0b;border:1px solid #f59e0b44}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}@keyframes fadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .4s ease forwards}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.saving-indicator{color:var(--text-muted);font-size:.8rem;animation:pulse 1.5s infinite}.url-input-row{display:flex;align-items:center;gap:12px}@media(max-width:480px){.url-input-row{flex-direction:column;align-items:stretch}.url-input-row .btn{width:100%;justify-content:center}}.add-course-card{position:relative;isolation:isolate;overflow:visible;margin-top:26px;margin-inline:0;padding:clamp(28px,5vw,44px);transform:translateY(-2px);transform-origin:center top;border:1px solid color-mix(in srgb,var(--border) 68%,var(--accent) 32%);background:radial-gradient(ellipse at 16% 0%,rgba(255,255,255,.13),transparent 34%),radial-gradient(ellipse at 82% 12%,color-mix(in srgb,var(--accent) 15%,transparent),transparent 38%),linear-gradient(155deg,color-mix(in srgb,var(--bg-card) 90%,var(--accent) 10%),var(--bg-card) 62%);box-shadow:0 30px 62px -42px color-mix(in srgb,var(--accent) 78%,transparent),0 24px 46px -30px #0f11176b,0 1px #ffffff14 inset}#dailyPracticeTile{text-decoration:none;color:inherit;margin-bottom:26px}#dailyPracticeTile[style*="display: block"]{display:block!important}.add-course-card>*{position:relative;z-index:1}.add-course-card:before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;opacity:.26;background:radial-gradient(ellipse at 14% 16%,rgba(255,255,255,.28) 0 7%,transparent 28%),radial-gradient(ellipse at 24% 28%,color-mix(in srgb,var(--accent) 34%,transparent) 0 18%,transparent 58%),radial-gradient(ellipse at 88% 16%,color-mix(in srgb,var(--info) 16%,transparent) 0 18%,transparent 58%),radial-gradient(ellipse at 58% 92%,color-mix(in srgb,var(--accent-hover) 18%,transparent) 0 22%,transparent 66%);animation:sourceCardPulse 10s ease-in-out infinite alternate}.add-course-card:after{content:"";position:absolute;inset:-10px -12px -18px;z-index:-1;pointer-events:none;border-radius:calc(var(--radius-md) + 12px);background:radial-gradient(ellipse at 48% 0%,color-mix(in srgb,var(--accent) 34%,transparent),transparent 58%),radial-gradient(ellipse at 52% 100%,color-mix(in srgb,var(--accent-hover) 22%,transparent),transparent 64%);filter:blur(18px);opacity:.48}.add-course-card:hover{border-color:color-mix(in srgb,var(--border-hover) 54%,var(--accent) 46%);transform:translateY(-4px);box-shadow:0 38px 78px -48px color-mix(in srgb,var(--accent) 84%,transparent),0 30px 58px -34px #0f11177a,0 1px #ffffff1a inset}#sourceTabBar{max-width:100%;gap:clamp(10px,2.5vw,20px);border-bottom:0;margin-bottom:24px!important;overflow-x:auto;overflow-y:visible;-webkit-overflow-scrolling:touch;scrollbar-width:none}#sourceTabBar::-webkit-scrollbar{display:none}#sourceTabBar:after{content:none!important}#sourceTabBar .tab{flex:0 0 auto;min-height:38px;padding:7px 17px;border:1px solid transparent;border-radius:999px;color:color-mix(in srgb,var(--text-secondary) 74%,var(--accent) 26%);font-size:.86rem;font-weight:700;line-height:1;cursor:pointer;transform-origin:center;transition:transform var(--dur-fast) var(--ease-out-expo),color var(--dur-fast),background var(--dur-fast),border-color var(--dur-fast),box-shadow var(--dur-fast)}@media(max-width:480px){#sourceTabBar{gap:6px;padding:2px 1px 4px}#sourceTabBar .tab{min-height:36px;padding:7px 13px;font-size:.82rem}}#sourceTabBar .tab:hover{border-color:color-mix(in srgb,var(--accent) 28%,transparent);background:color-mix(in srgb,var(--accent-subtle) 58%,transparent);color:var(--text-primary);transform:translateY(-1px)}#sourceTabBar .tab:focus-visible{outline:0;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 24%,transparent)}#sourceTabBar .tab.active{border-color:color-mix(in srgb,var(--accent) 58%,rgba(255,255,255,.16) 42%);background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 78%,#2a245f 22%),color-mix(in srgb,var(--accent-hover) 74%,#2a245f 26%));box-shadow:0 8px 18px -14px color-mix(in srgb,var(--accent) 82%,transparent),inset 0 1px #ffffff24;color:#fff;font-weight:800;transform:translateY(-1px) scale(1.025)}#sourceTabBar .tab.active:focus-visible{box-shadow:0 8px 18px -14px color-mix(in srgb,var(--accent) 82%,transparent),inset 0 1px #ffffff24,0 0 0 3px color-mix(in srgb,var(--accent) 26%,transparent)}#sourceYoutube .input{margin-bottom:0!important;min-height:58px;padding:0 18px;font-size:1rem;border-color:color-mix(in srgb,var(--border) 80%,var(--accent) 20%);background:color-mix(in srgb,var(--bg-input) 88%,var(--bg-card) 12%)}.source-action-row{display:flex;align-items:center;margin-top:18px}.source-action-row[hidden]{display:none}.source-primary-action{width:min(100%,360px);min-height:56px;padding:0 26px;border:1px solid color-mix(in srgb,var(--accent) 58%,rgba(255,255,255,.18) 42%);border-radius:999px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 82%,#2a245f 18%),color-mix(in srgb,var(--accent-hover) 78%,#2a245f 22%));font-size:.98rem;font-weight:850;box-shadow:0 16px 30px -18px color-mix(in srgb,var(--accent) 92%,transparent),inset 0 1px #ffffff1f}.source-primary-action[hidden]{display:none!important}.source-primary-action:hover{box-shadow:0 18px 34px -19px color-mix(in srgb,var(--accent) 96%,transparent),inset 0 1px #ffffff24}.source-difficulty{margin-top:16px!important}.source-difficulty .difficulty-selector{gap:8px}.source-difficulty .difficulty-btn{min-height:32px;padding:5px 15px;font-size:.78rem;border-radius:999px;border-color:color-mix(in srgb,var(--border) 74%,var(--accent) 26%);background:color-mix(in srgb,var(--bg-card) 76%,var(--bg-input) 24%);color:color-mix(in srgb,var(--text-secondary) 88%,var(--text-primary) 12%)}.source-difficulty .difficulty-btn:hover{border-color:color-mix(in srgb,var(--accent) 62%,var(--border) 38%);background:var(--accent-subtle);color:var(--text-primary)}.source-difficulty .difficulty-btn.active{border-color:color-mix(in srgb,var(--accent) 70%,#19153f 30%);background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 78%,#19153f 22%),color-mix(in srgb,var(--accent-hover) 74%,#19153f 26%));color:#fff;box-shadow:0 8px 18px -14px color-mix(in srgb,var(--accent) 82%,transparent),inset 0 1px #ffffff1f}@keyframes sourceCardPulse{0%{opacity:.24}45%{opacity:.38}to{opacity:.3}}@media(prefers-reduced-motion:reduce){.add-course-card:before{animation:none}}@media(max-width:560px){.source-action-row{margin-top:16px}.source-primary-action{width:100%;min-height:54px}}.course-library-card{position:relative}.course-card-purpose{margin:8px 0 0;color:var(--text-secondary);font-size:.86rem;line-height:1.45}.course-card-purpose strong{color:var(--text-primary);font-weight:850}.source-tab-hint{margin:-6px 0 14px;font-size:.88rem;line-height:1.45}.generation-status{display:flex;align-items:center;gap:16px;margin-top:20px;padding:16px;background:var(--accent-subtle);border-radius:var(--radius-md);border:1px solid var(--accent)}.generation-spinner{--sz: 32px;width:var(--sz);height:var(--sz);min-width:var(--sz);position:relative;display:inline-block;flex-shrink:0}.generation-spinner:before{content:"";position:absolute;inset:0;margin:auto;width:12px;height:12px;border-radius:50%;box-shadow:0 -9px 0 2.5px var(--accent),9px 0 0 2.5px color-mix(in srgb,var(--accent) 65%,transparent),0 9px 0 2.5px color-mix(in srgb,var(--accent) 35%,transparent),-9px 0 0 2.5px color-mix(in srgb,var(--accent) 15%,transparent);animation:spinnerOrbit 1.1s linear infinite}@keyframes spinnerOrbit{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.generation-spinner[data-state=streaming]:before{animation-duration:.45s;box-shadow:0 -9px 0 3px var(--accent),9px 0 0 3px color-mix(in srgb,var(--accent) 75%,transparent),0 9px 0 3px color-mix(in srgb,var(--accent) 50%,transparent),-9px 0 0 3px color-mix(in srgb,var(--accent) 25%,transparent)}.generation-spinner[data-state=thinking]:before{animation:spinnerOrbitSlow 2s linear infinite}@keyframes spinnerOrbitSlow{0%{transform:rotate(0);opacity:.7}50%{opacity:1}to{transform:rotate(360deg);opacity:.7}}.generation-spinner[style*="width:16px"],.generation-spinner[style*="width: 16px"]{transform:scale(.5);transform-origin:center;margin:-8px}.generation-spinner[style*="width:20px"],.generation-spinner[style*="width: 20px"]{transform:scale(.625);transform-origin:center;margin:-6px}.generation-spinner[style*="width:24px"],.generation-spinner[style*="width: 24px"]{transform:scale(.75);transform-origin:center;margin:-4px}.generation-spinner[style*="width:40px"],.generation-spinner[style*="width: 40px"]{transform:scale(1.25);transform-origin:center;margin:4px}@media(prefers-reduced-motion:reduce){.generation-spinner:before{animation:none;opacity:.7}}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-8{gap:8px}.gap-12{gap:12px}.gap-16{gap:16px}.gap-24{gap:24px}.mt-8{margin-top:8px}.mt-16{margin-top:16px}.mt-24{margin-top:24px}.mt-32{margin-top:32px}.mb-16{margin-bottom:16px}.mb-24{margin-bottom:24px}.mb-32{margin-bottom:32px}.text-center{text-align:center}.text-muted{color:var(--text-muted)}.text-secondary{color:var(--text-secondary)}.text-sm{font-size:.85rem}.font-bold{font-weight:700}.w-full{width:100%}.hidden{display:none!important}html{-webkit-tap-highlight-color:transparent}button,a,[role=button],.btn,.tab,.accordion-trigger,.quiz-option,.likert-btn,.lecture-style-card,.lecture-length-chip,.idea-action-btn,.rating-btn,.folder-pill,.source-tab,.mobile-nav a,.tutor-voice-input{-webkit-tap-highlight-color:transparent;touch-action:manipulation}@media(hover:none)and (pointer:coarse){.btn:active:not(:disabled){transform:scale(.97)}.tab:active,.accordion-trigger:active,.quiz-option:active,.lecture-style-card:active,.lecture-length-chip:active,.idea-action-btn:active,.rating-btn:active,.folder-pill:active{transform:scale(.98)}.card-clickable:hover{transform:none}.course-delete-btn{opacity:1}}.container,.page-wrapper,main{max-width:100%}.mobile-nav{padding-bottom:calc(8px + env(safe-area-inset-bottom,0px))!important}.lecture-mini-bar{padding-bottom:env(safe-area-inset-bottom,0px)}.tutor-fab{bottom:calc(24px + env(safe-area-inset-bottom,0px))}@media(max-width:768px){.page-wrapper{padding-bottom:calc(112px + env(safe-area-inset-bottom,0px))}.toast{bottom:calc(24px + env(safe-area-inset-bottom,0px));right:16px;left:16px;text-align:center}}@media(max-width:768px){.mobile-nav{background:color-mix(in srgb,var(--bg-secondary) 92%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 -2px 12px #00000014}.mobile-nav a{position:relative;flex:1 1 0;min-width:0;padding:8px 3px 6px;font-size:clamp(.56rem,2.5vw,.68rem);gap:2px;letter-spacing:0}.mobile-nav a span.icon{display:flex!important;align-items:center;justify-content:center;width:min(42px,100%)!important;height:30px!important;border-radius:15px;transition:background var(--transition),color var(--transition),transform .15s}.mobile-nav a span.icon svg.nav-icon{width:22px;height:22px}.mobile-nav a.active{background:transparent;color:var(--accent);font-weight:600}.mobile-nav a.active span.icon{background:var(--accent);color:#fff;transform:scale(1.05)}.mobile-nav a.active:before{display:none}}@media(max-width:768px){.nav{padding:8px 0}.nav-brand{font-size:.95rem;gap:8px}.nav-brand-icon{width:28px;height:28px}.nav-actions{gap:6px}.theme-toggle{width:44px;height:44px;font-size:1.05rem}#authBtn{font-size:.78rem;padding:6px 10px}}.tab-bar{position:relative}@media(max-width:768px){.tab-bar:after{content:"";position:absolute;top:0;right:0;bottom:1px;width:28px;pointer-events:none;background:linear-gradient(to left,var(--bg-primary),transparent);opacity:.9}.card .tab-bar:after,.add-course-card .tab-bar:after{background:linear-gradient(to left,var(--bg-card),transparent)}.tab{min-height:44px;padding:10px 14px}}@media(max-width:768px){.page-subnav{display:none!important}}@media(max-width:380px){.container,.nav .container{padding:0 12px}.page-header h1{font-size:1.35rem}.page-header p{font-size:.9rem}h2{font-size:1.15rem}.stats-row{gap:6px}.stat-value{font-size:1.3rem}.stat-label{font-size:.72rem}.card{padding:14px}.accordion-trigger{padding:14px;font-size:.9rem}.accordion-body{padding:0 14px 16px;font-size:.9rem}.btn{font-size:.85rem;padding:9px 14px}.btn-lg{font-size:.9rem;padding:11px 18px}.quick-actions .btn{padding:10px 14px;font-size:.85rem}}@media(max-width:340px){.container{padding:0 10px}.nav-brand span{display:none}.page-header h1{font-size:1.2rem}h2{font-size:1.05rem}}@media(max-width:768px){.idea-actions{gap:8px;margin-top:12px;padding-top:12px}.idea-action-cluster,.idea-action-utility{width:100%}.idea-action-utility{margin-left:0;padding-left:0;border-left:0}.idea-action-btn{padding:9px 14px;font-size:.82rem;min-height:36px;border-width:1px}.idea-action-primary{flex:1 1 100%}.idea-actions-label{flex-basis:100%;margin:0 0 4px;font-size:.7rem}}@media(max-width:768px){.accordion-trigger{padding:16px;min-height:52px;font-size:.95rem}.accordion-trigger .arrow{font-size:.95rem}.session-throughline-head{flex-direction:column;gap:8px}.session-throughline h3{font-size:.95rem}.session-throughline-spine,.session-throughline-context,.session-throughline-transfer{font-size:.88rem}}@media(max-width:640px){.lecture-config-overlay{align-items:flex-end;padding:0}.lecture-config-modal{max-width:100%;width:100%;max-height:92vh;border-radius:20px 20px 0 0;padding-bottom:env(safe-area-inset-bottom,0px);transform:translateY(60px)}.lecture-config-modal:before{content:"";display:block;width:40px;height:4px;background:var(--border);border-radius:2px;margin:10px auto 0}.lecture-config-header{padding:12px 20px 14px}.lecture-config-header h3{font-size:1rem}.lecture-config-close{width:40px;height:40px;font-size:1.4rem}.lecture-config-section{padding:12px 20px}.lecture-style-card{padding:14px;min-height:64px}.lecture-length-chip{padding:10px 18px;font-size:.88rem;min-height:40px;flex:1 1 calc(50% - 4px);text-align:center}.lecture-config-actions{padding:14px 20px calc(18px + env(safe-area-inset-bottom,0px));gap:8px}}@keyframes sheetSlideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@media(max-width:640px){.lecture-player-header{grid-template-columns:40px minmax(0,1fr) 88px;align-items:center;gap:12px;padding:12px 20px;padding-top:calc(12px + env(safe-area-inset-top,0px))}.lecture-player-titleblock{min-width:0}.lecture-player-actions{width:88px;gap:6px;justify-content:flex-end}.lecture-player-header h3{font-size:1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lecture-player-header .sub{display:-webkit-box;max-width:100%;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:1;line-height:1.36;margin-top:4px}.lecture-player-body{padding:22px 16px 14px}.lecture-player-controls{padding:10px 16px calc(16px + env(safe-area-inset-bottom,0px))}.lecture-controls-row{display:grid;grid-template-columns:minmax(88px,1fr) minmax(162px,auto) minmax(88px,1fr);grid-template-areas:"time time time" "voice transport speed";grid-template-rows:auto auto;gap:8px 8px;align-items:center;justify-content:stretch}.lecture-transport-controls{width:100%;min-width:162px;gap:7px;justify-content:center}.lecture-skip-btn{width:44px;min-width:44px;height:44px;min-height:44px}.lecture-play-btn{width:60px;height:60px;font-size:1.1rem}.lecture-time{text-align:center;font-size:.78rem;min-width:0}.lecture-snip-row{bottom:calc(var(--lecture-snip-bottom) + env(safe-area-inset-bottom,0px))}.lecture-controls-row .lecture-voice-select{width:min(104px,100%);min-width:78px;max-width:104px;margin-left:0!important;font-size:.78rem;min-height:36px;padding:0 28px}.lecture-speed-btn{min-width:52px;min-height:36px;padding:0 10px}.lecture-speed-sheet{right:16px;bottom:calc(100% + 10px);width:calc(100vw - 32px)}.lecture-progress-bar{height:8px;margin-bottom:10px}}@media(max-width:380px){.lecture-controls-row{grid-template-columns:minmax(80px,1fr) minmax(150px,auto) minmax(80px,1fr);grid-template-areas:"time time time" "voice transport speed";column-gap:8px}.lecture-transport-controls{min-width:150px;gap:4px}.lecture-skip-btn{width:42px;min-width:42px;height:42px;min-height:42px}.lecture-play-btn{width:58px;height:58px}.lecture-controls-row .lecture-voice-select{width:min(92px,100%);min-width:78px;max-width:92px;padding:0 24px;font-size:.74rem}}@media(max-width:640px){.lecture-mini-bar{padding-bottom:env(safe-area-inset-bottom,0px)}.lecture-mini-content{padding:8px 10px;gap:6px}.lecture-mini-play{width:44px;height:44px;font-size:1rem}.lecture-mini-btn{width:40px;height:40px;font-size:1.1rem;min-width:40px}.lecture-mini-close{width:40px;height:40px;font-size:1.3rem}.lecture-mini-title{font-size:.82rem}.lecture-mini-time{font-size:.7rem}.mobile-nav.mini-bar-active{bottom:calc(60px + env(safe-area-inset-bottom,0px))}body:has(.lecture-mini-bar.active) .tutor-fab,body:has(.tts-mini-bar.active) .tutor-fab{bottom:calc(140px + env(safe-area-inset-bottom,0px))}}@media(max-width:768px){.tutor-fab{bottom:calc(88px + env(safe-area-inset-bottom,0px));right:14px;width:34px;height:34px}body.lecture-mini-active .tutor-fab{bottom:calc(150px + env(safe-area-inset-bottom,0px))}.tutor-chat{height:calc(100dvh - 57px);max-height:calc(100dvh - 57px);padding-bottom:env(safe-area-inset-bottom,0px)}body.lecture-mini-active .tutor-chat{bottom:calc(150px + env(safe-area-inset-bottom,0px));height:calc(100dvh - 166px - env(safe-area-inset-bottom,0px));max-height:calc(100dvh - 166px - env(safe-area-inset-bottom,0px))}.tutor-chat-header{position:relative;gap:8px;min-height:66px;padding:20px 12px 10px 16px}.tutor-chat-header:before{content:"";position:absolute;top:8px;left:50%;transform:translate(-50%);width:36px;height:4px;border-radius:2px;background:color-mix(in srgb,var(--text-muted) 38%,transparent);box-shadow:0 0 14px color-mix(in srgb,var(--accent) 18%,transparent)}.tutor-chat-heading{padding-right:0}.tutor-chat-actions{gap:3px}.tutor-header-btn{width:34px;height:34px;border-radius:7px}.tutor-chat-input{padding:10px 12px calc(10px + env(safe-area-inset-bottom,0px))}.tutor-chat-input textarea{font-size:16px}.tutor-msg-bubble{font-size:.92rem}}body:has(.session-focus-page):not(.session-tutor-ready) .tutor-fab{display:none}body.session-tutor-ready:has(.session-focus-page) .tutor-fab{display:flex;width:40px;height:40px;border:1px solid color-mix(in srgb,var(--accent) 42%,var(--border));background:color-mix(in srgb,var(--bg-card) 76%,var(--accent) 18%);color:color-mix(in srgb,var(--text-primary) 72%,var(--accent) 28%);box-shadow:0 8px 22px -20px color-mix(in srgb,var(--accent) 70%,transparent);opacity:.62}body.session-tutor-ready:has(.session-focus-page) .tutor-fab:hover,body.session-tutor-ready:has(.session-focus-page) .tutor-fab:focus-visible{opacity:1;transform:scale(1.04)}body.session-tutor-ready:has(.session-focus-page) .tutor-fab svg{width:18px;height:18px}body:has(.session-focus-page):not(:has(.lecture-player.active)) .tutor-chat:has(.tutor-voice-input:not(.hidden)) .tutor-chat-messages{padding-bottom:14px;margin-bottom:0}body:has(.session-focus-page):not(:has(.lecture-player.active)) .tutor-voice-input{min-height:92px;flex-direction:row;justify-content:center;gap:12px;padding:12px 16px calc(12px + env(safe-area-inset-bottom,0px))}body:has(.session-focus-page):not(:has(.lecture-player.active)) .tutor-voice-input:before{top:-38px;height:38px}body:has(.session-focus-page):not(:has(.lecture-player.active)) .tutor-voice-input .voice-mic-btn{width:56px;height:56px}body:has(.session-focus-page):not(:has(.lecture-player.active)) .tutor-voice-input .voice-mic-hint{font-size:.85rem;font-weight:750}body:has(.session-focus-page):not(:has(.lecture-player.active)) .tutor-voice-input .voice-mic-subhint{display:none}@media(max-width:768px){body.session-tutor-ready:has(.session-focus-page) .tutor-fab{right:8px;bottom:calc(84px + env(safe-area-inset-bottom,0px));width:34px;height:34px}body:has(.session-focus-page):not(:has(.lecture-player.active)) .tutor-chat:has(.tutor-voice-input:not(.hidden)) .tutor-chat-messages{padding-bottom:12px;margin-bottom:0}body:has(.session-focus-page):not(:has(.lecture-player.active)) .tutor-voice-input{min-height:82px;padding:10px 14px calc(10px + env(safe-area-inset-bottom,0px))}body:has(.session-focus-page):not(:has(.lecture-player.active)) .tutor-voice-input .voice-mic-btn{width:50px;height:50px}}@media(max-width:380px){.voice-mic-btn{width:68px;height:68px}}@media(max-width:480px){.likert-row{gap:6px}.likert-btn{padding:14px 2px!important;font-size:.88rem!important;min-height:52px}}@media(max-width:360px){.likert-btn{font-size:.82rem!important;padding:12px 2px!important}}@media(max-width:768px){.quiz-option{padding:14px 16px;font-size:.95rem}.quiz-option:active{background:var(--accent-subtle)}}@media(max-width:480px){.flashcard-rating{display:grid;grid-template-columns:1fr 1fr;gap:8px}.rating-btn{padding:14px 8px;min-height:48px;font-size:.9rem}}@media(max-width:640px){.arc-timeline{gap:2px;padding:20px 4px;-webkit-overflow-scrolling:touch}.arc-dot{width:26px;height:26px;font-size:10px}.arc-dot-wrap{min-width:38px;padding:4px 2px}.arc-label{font-size:9px;max-width:48px}.contribution-view{padding:16px;margin:16px 0}.contribution-textarea{min-height:140px;font-size:16px;padding:12px}.ai-feedback-card{padding:14px;font-size:.9rem}}@media(max-width:640px){.progress-ring-wrap svg{width:88px;height:88px}.progress-ring-wrap+div h1{font-size:1.35rem;line-height:1.25}.progress-ring-wrap+div p{font-size:.85rem}}@media(max-width:480px){.add-source-panel .source-tabs{gap:6px;overflow-x:auto;flex-wrap:nowrap;scrollbar-width:none}.add-source-panel .source-tabs::-webkit-scrollbar{display:none}.add-source-panel .source-tab{padding:10px 14px;font-size:.82rem;flex-shrink:0;min-height:40px}.folder-bar{gap:6px}.folder-pill{padding:8px 12px;min-height:36px;font-size:.8rem}}@media(max-width:640px){.tts-controls{width:100%;flex-wrap:wrap;gap:8px}.tts-select{max-width:100%;flex:1 1 140px;font-size:14px;padding:6px 8px}.tts-speed{flex:1 1 auto;justify-content:flex-end}.tts-range{width:90px}}@media(hover:none)and (pointer:coarse){.card .course-delete-btn{opacity:.6;width:32px;height:32px}.card .course-delete-btn:active{opacity:1;background:var(--danger);color:#fff}}@media(max-width:640px){.modal{padding:20px}.modal-close{width:40px;height:40px;font-size:1.3rem}}.tutor-chat-messages,.lecture-player-body,.podcast-episode-list,.tab-bar,.arc-timeline{-webkit-overflow-scrolling:touch;overscroll-behavior:contain}@media(max-width:640px){.followup-send{width:42px;height:42px}.followup-input-row{padding:5px 5px 5px 14px}.followup-input{font-size:16px;line-height:1.45}.idea-practice-bridge{align-items:flex-start;gap:10px;padding:12px}.idea-practice-icon{width:32px;height:32px;border-radius:11px}.idea-practice-link{min-height:32px;padding:7px 12px}}@media(max-width:640px){.concept-map-container{max-height:260px}.concept-map-header{padding:10px 12px}.concept-map-header h3{font-size:.85rem}.concept-map-legend{font-size:.65rem;gap:8px;flex-wrap:wrap}}@media(max-width:480px){.main-narrow{padding-top:16px}.main-narrow .card{padding:20px}}@media(max-width:768px){.nav-links{display:none!important}}@media(max-width:640px){.expand-card{border-radius:14px}.expand-card-header{grid-template-columns:1fr;align-items:stretch;padding:10px;font-size:.82rem}.expand-card-actions{justify-content:flex-start;margin-left:39px;flex-wrap:wrap}.expand-card-body{padding:15px;font-size:.9rem;line-height:1.7}.expand-card-body p{line-height:1.7}}[id]{scroll-margin-top:72px}@media(max-width:768px){[id]{scroll-margin-top:60px}}@media(max-width:768px){.btn:focus-visible,.tab:focus-visible,.mobile-nav a:focus-visible,.idea-action-btn:focus-visible{outline:2px solid var(--accent);outline-offset:3px}}.ptr-indicator{position:fixed;top:-48px;left:50%;transform:translate3d(-50%,0,0);width:40px;height:40px;border-radius:50%;background:var(--bg-card);border:1px solid var(--border);box-shadow:0 4px 14px #00000026;display:flex;align-items:center;justify-content:center;z-index:2500;opacity:0;pointer-events:none;will-change:transform,opacity}.ptr-indicator.visible{opacity:1}.ptr-spinner{width:22px;height:22px;border:2.5px solid var(--border);border-top-color:var(--accent);border-radius:50%;transition:transform var(--dur-base) var(--ease-out-expo)}.ptr-indicator.ready .ptr-spinner{transform:rotate(180deg);border-top-color:var(--success)}.ptr-indicator.refreshing .ptr-spinner{animation:ptr-spin .8s linear infinite;transform:none;border-top-color:var(--accent)}@keyframes ptr-spin{to{transform:rotate(360deg)}}@media(max-width:768px){.tutor-chat-header,.lecture-config-modal:before{cursor:grab;touch-action:pan-y}.tutor-chat-header:active{cursor:grabbing}.tutor-chat{will-change:transform,opacity}}.program-header{margin-bottom:32px}.program-header h1{font-size:1.75rem;margin-bottom:8px}.program-header p{color:var(--text-secondary);line-height:1.6}.mech-gym-main{max-width:1040px;padding:32px 20px 88px}.mech-auth-screen{max-width:820px;margin:0 auto;padding:44px 20px 80px}.mech-primary-capture{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px 24px;align-items:center;padding:30px;margin-bottom:0;overflow:hidden;border-radius:10px;border-color:color-mix(in srgb,var(--accent) 32%,var(--border));background:linear-gradient(135deg,color-mix(in srgb,var(--bg-card) 94%,transparent),color-mix(in srgb,var(--bg-secondary) 96%,transparent)),radial-gradient(circle at 100% 0%,rgba(16,185,129,.12),transparent 18rem);box-shadow:0 22px 60px #00000038}.mech-primary-copy{min-width:0}.mech-primary-copy>span{display:block;margin-bottom:8px;color:var(--accent);font-size:.74rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.mech-primary-copy h2{margin:0;font-size:clamp(1.55rem,3vw,2.35rem);line-height:1.05;letter-spacing:0}.mech-primary-copy p{margin:10px 0 0;color:var(--text-secondary);line-height:1.45}.mech-primary-loop{grid-column:1 / -1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.mech-primary-loop span{min-height:34px;display:inline-flex;align-items:center;justify-content:center;border:1px solid color-mix(in srgb,var(--border) 72%,transparent);border-radius:999px;color:var(--text-secondary);background:color-mix(in srgb,var(--bg-input) 76%,transparent);font-size:.8rem;font-weight:700}.mech-primary-loop span:first-child{border-color:color-mix(in srgb,var(--accent) 48%,var(--border));color:var(--text-primary);background:var(--accent-subtle)}.bridge-collision-section,.bridge-cards-section,.bridge-readiness-section{margin-bottom:28px}.bridge-readiness-card{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px;border:1px solid color-mix(in srgb,var(--accent) 24%,var(--border));border-radius:10px;background:color-mix(in srgb,var(--bg-input) 86%,transparent)}.bridge-readiness-card h3{margin:0;font-size:1rem;line-height:1.25}.bridge-readiness-card p{margin:6px 0 0;color:var(--text-secondary);font-size:.9rem;line-height:1.45}.bridge-collision-card{display:grid;grid-template-columns:minmax(0,.9fr) minmax(320px,1.1fr);gap:22px;align-items:center;padding:28px;border-radius:10px;border-color:color-mix(in srgb,var(--accent) 34%,var(--border));background:linear-gradient(135deg,color-mix(in srgb,var(--bg-card) 96%,transparent),color-mix(in srgb,var(--bg-secondary) 94%,transparent)),radial-gradient(circle at 100% 0%,rgba(99,102,241,.12),transparent 18rem);box-shadow:0 20px 56px #0003}.bridge-kicker{display:block;margin-bottom:8px;color:var(--accent);font-size:.74rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.bridge-collision-copy h2{margin:0;font-size:clamp(1.45rem,2.5vw,2.1rem);line-height:1.08;letter-spacing:0}.bridge-collision-copy p{margin:10px 0 0;color:var(--text-secondary);line-height:1.45}.bridge-suggestion-list{display:grid;gap:10px}.bridge-suggestion-card{width:100%;text-align:left;border:1px solid color-mix(in srgb,var(--border) 86%,transparent);border-radius:10px;padding:14px;background:color-mix(in srgb,var(--bg-input) 84%,transparent);color:var(--text-primary);cursor:pointer;transition:transform var(--dur-fast),border-color var(--dur-fast),background var(--dur-fast)}.bridge-suggestion-card:hover,.bridge-suggestion-card:focus-visible{transform:translateY(-1px);border-color:var(--accent);background:color-mix(in srgb,var(--bg-card) 90%,transparent);outline:none}.bridge-suggestion-top{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:8px}.bridge-lens{display:inline-flex;align-items:center;min-height:24px;padding:2px 9px;border-radius:999px;background:color-mix(in srgb,var(--accent) 13%,transparent);color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 38%,transparent);font-size:.72rem;font-weight:750}.bridge-source-row{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.bridge-source-pill{display:inline-flex;align-items:center;max-width:100%;min-height:26px;padding:3px 9px;border-radius:999px;background:var(--bg-card);border:1px solid var(--border);color:var(--text-secondary);font-size:.76rem;font-weight:650}.bridge-suggestion-card p{margin:0;color:var(--text-secondary);line-height:1.45;font-size:.9rem}.bridge-section-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.bridge-section-header h3{margin:0;font-size:1.05rem}.bridge-card-artifact{cursor:default}.bridge-card-artifact:hover{transform:none}.bridge-card-meta{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.bridge-card-body{color:var(--text-secondary);line-height:1.5;font-size:.88rem}.bridge-card-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.bridge-composer{position:fixed;inset:0;z-index:2100;display:flex;align-items:center;justify-content:center;padding:20px;background:#040612d6;backdrop-filter:blur(14px)}.bridge-composer-dialog{width:min(820px,100%);max-height:min(90vh,820px);overflow-y:auto;background:var(--bg-secondary);border:1px solid var(--border);border-radius:14px;padding:26px;box-shadow:var(--shadow-xl)}.bridge-composer-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:18px}.bridge-composer-head h3{margin:4px 0 6px;font-size:1.25rem}.bridge-composer-question{color:var(--text-secondary);margin:0;line-height:1.5}.bridge-composer-sources{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}.bridge-form-grid{display:grid;gap:14px}.bridge-field label{display:block;font-size:.82rem;font-weight:750;color:var(--text-secondary);margin-bottom:6px}.bridge-field textarea{width:100%;min-height:92px;resize:vertical;background:var(--bg-input);border:1px solid var(--border);border-radius:9px;color:var(--text-primary);padding:12px;font:inherit;line-height:1.45}.bridge-field textarea:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}.bridge-composer-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:18px}.artifact-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(240px,100%),1fr));gap:16px;margin:24px 0;min-width:0}.artifact-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);padding:20px;cursor:pointer;transition:all var(--dur-base);display:block;min-width:0;text-decoration:none;color:inherit;overflow-wrap:anywhere}.artifact-card:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:var(--shadow-md)}.artifact-card h3{font-size:.95rem;margin-bottom:8px;line-height:1.35}.artifact-card .artifact-meta{font-size:.8rem;color:var(--text-muted)}.artifact-type-badge{display:inline-block;padding:2px 8px;border-radius:4px;font-size:.7rem;font-weight:600;text-transform:uppercase;margin-bottom:8px}.evidence-modal{position:fixed;inset:0;z-index:1000;background:#000000d1;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;pointer-events:none;transition:opacity var(--dur-slow),visibility 0s linear var(--dur-slow);padding:20px}.evidence-modal.active{opacity:1;visibility:visible;pointer-events:all;transition-delay:0s}.evidence-modal:not(.active) *{pointer-events:none}.evidence-modal-inner{background:color-mix(in srgb,var(--bg-secondary) 96%,#0f172a);border:1px solid var(--border);border-radius:14px;padding:44px;max-width:800px;width:100%;max-height:90vh;overflow-y:auto;position:relative;box-shadow:0 24px 70px #0000007a}.evidence-close{position:absolute;top:16px;right:16px;background:none;border:1px solid var(--border);border-radius:8px;color:var(--text-muted);cursor:pointer;padding:6px 12px;font-size:.8rem;transition:all var(--dur-base)}.evidence-close:hover{color:var(--text-primary);border-color:var(--text-muted)}.evidence-modal .evidence-header{margin-bottom:32px}.evidence-modal h2{font-size:1.5rem;font-weight:700;margin-bottom:6px;letter-spacing:-.02em}.evidence-modal .framing{color:var(--text-secondary);margin-bottom:0;font-size:.95rem}.evidence-step-counter{font-size:.74rem;color:var(--text-muted);margin-bottom:8px;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.evidence-progress{display:flex;gap:6px;margin-bottom:28px}.evidence-progress-dot{flex:1;height:4px;border-radius:2px;background:var(--border);transition:background var(--dur-slow);cursor:pointer}.evidence-progress-dot.done{background:var(--success)}.evidence-progress-dot.active{background:var(--accent)}.evidence-progress-dot.is-disabled{cursor:not-allowed;opacity:.45}.evidence-step{display:none}.evidence-step.active{display:block}.evidence-step label{display:block;color:var(--text-primary);font-size:1.15rem;line-height:1.35;margin-bottom:12px;font-weight:700}.evidence-step textarea{width:100%;min-height:140px;background:var(--bg-input);border:1px solid var(--border);border-radius:10px;padding:16px;color:var(--text-primary);font-family:var(--font-sans);font-size:1rem;line-height:1.6;resize:vertical;transition:border-color var(--dur-base)}.evidence-step textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #6366f126}.evidence-nav{display:flex;align-items:center;justify-content:space-between;margin-top:24px;gap:12px}.stage-output{background:color-mix(in srgb,var(--bg-card) 90%,transparent);border:1px solid color-mix(in srgb,var(--accent) 28%,var(--border));border-left:0;border-radius:10px;padding:18px 20px;margin:8px 0 16px;color:var(--text-primary);line-height:1.62;font-size:1rem;box-shadow:0 14px 34px #0000001f;white-space:pre-wrap}.stage-output.is-editing[contenteditable=true],.mechanism-card-preview .mech-causal.is-editing[contenteditable=true]{cursor:text;border-color:color-mix(in srgb,var(--accent) 72%,var(--border));background:color-mix(in srgb,var(--bg-input) 86%,var(--accent-subtle));box-shadow:0 0 0 3px var(--accent-subtle),0 18px 42px #00000029}.stage-output.is-editing[contenteditable=true]:focus,.mechanism-card-preview .mech-causal.is-editing[contenteditable=true]:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent-subtle) 78%,transparent),0 22px 48px #0000002e}.stage-output em.placeholder{color:var(--text-muted);font-style:italic}.stage-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px;justify-content:flex-end}.stage-actions .btn{font-size:.88rem;padding:8px 16px}.stage-actions .btn:disabled{opacity:.52;cursor:not-allowed;transform:none}.verdict-banner{padding:14px 18px;border-radius:10px;margin:12px 0;font-size:.95rem;display:flex;align-items:center;gap:10px}.verdict-banner.clean{background:#34d39926;color:#34d399;border:1px solid rgba(52,211,153,.3)}.verdict-banner.not-clean{background:#fbbf2426;color:#fbbf24;border:1px solid rgba(251,191,36,.3)}.verdict-banner.invalidated{background:#fbbf241a;color:#fbbf24;border:1px solid rgba(251,191,36,.25);font-size:.9rem}.domain-card{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:14px;margin-bottom:10px}.domain-card .domain-name{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-weight:600;margin-bottom:4px}.domain-card .domain-test{font-size:.95rem;color:var(--text-primary);line-height:1.5;margin-bottom:6px}.domain-card .domain-result{font-size:.85rem;font-weight:600;display:inline-block;padding:2px 8px;border-radius:4px;margin-right:8px}.domain-card .domain-result.survives{background:#34d3992e;color:#34d399}.domain-card .domain-result.partial{background:#60a5fa2e;color:#60a5fa}.domain-card .domain-result.collapses{background:#ef44442e;color:#f87171}.domain-card .domain-detail{font-size:.85rem;color:var(--text-secondary);line-height:1.5;margin-top:4px}.mechanism-card-preview{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:20px}.mechanism-card-preview .mech-name{font-size:1.25rem;font-weight:700;letter-spacing:-.01em;margin-bottom:10px}.mechanism-card-preview .mech-name[contenteditable=true]{display:inline-block;max-width:100%;border-bottom:1px dashed var(--border);cursor:text}.mechanism-card-preview .mech-name[contenteditable=true]:focus{outline:2px solid rgba(99,102,241,.35);outline-offset:3px;border-bottom-color:var(--accent);border-radius:4px}.mechanism-card-preview .mech-causal{font-size:.98rem;line-height:1.55;color:var(--text-primary);background:var(--accent-subtle);border:1px solid transparent;border-left:3px solid var(--accent);padding:12px 14px;border-radius:0 8px 8px 0;margin-bottom:12px;white-space:pre-wrap}.mechanism-card-preview .mech-summary{font-size:.9rem;color:var(--text-secondary);line-height:1.5;margin-bottom:12px}.mechanism-card-preview .mech-tags{display:flex;flex-wrap:wrap;gap:6px}.mech-tag-chip{display:inline-block;padding:3px 10px;background:var(--bg-input);border:1px solid var(--border);border-radius:999px;font-size:.78rem;color:var(--text-secondary)}.mech-tag-chip.active,.mech-tag-chip[data-active=true]{background:var(--accent-subtle);color:var(--accent);border-color:var(--accent)}.mech-filter-bar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:12px}.mech-filter-bar .search-input{flex:1;min-width:220px}.mech-share-card{padding:20px;margin-top:20px;background:var(--accent-subtle);border:1px solid rgba(99,102,241,.25);border-radius:12px}.mech-share-card label{display:flex;align-items:flex-start;gap:12px;cursor:pointer}.mech-share-card input[type=checkbox]{margin-top:4px}.mech-share-card .nudge-title{font-weight:600}.mech-share-card .nudge-sub{font-size:.88rem;color:var(--text-secondary);display:block;margin-top:4px;line-height:1.5}.mech-share-preview{margin-top:14px;padding:14px;background:var(--bg-card);border:1px solid var(--border);border-radius:10px}.mech-source-tabs{display:flex;gap:4px;background:var(--bg-input);padding:4px;border-radius:10px;margin-bottom:16px}.mech-source-tabs .tab{flex:1;background:none;border:none;padding:10px 14px;border-radius:8px;cursor:pointer;font-size:.9rem;color:var(--text-muted);transition:all var(--dur-fast)}.mech-source-tabs .tab.active{background:var(--bg-card);color:var(--text-primary);box-shadow:0 1px 3px #00000026}#inputText,#inputVoice,#inputDocument{transition:opacity var(--dur-fast) var(--ease-out-expo)}.mech-voice-big{font-size:1.05rem;padding:14px 28px}.mech-voice-transcript{min-height:140px;white-space:pre-wrap}.mech-draft-shelf .artifact-card{position:relative}.mech-draft-shelf .draft-stage{font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);position:absolute;top:12px;left:14px}.mech-draft-shelf .artifact-card h3{margin-top:18px}.mech-draft-shelf-card .mech-draft-top{display:flex;align-items:center;gap:10px;margin-bottom:6px}.mech-draft-shelf-card .mech-draft-top .mech-draft-stage-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-weight:600}.mech-draft-shelf-card h3{margin-top:2px;font-size:1rem;line-height:1.35}.mech-draft-shelf-card .mech-draft-sub{margin:6px 0 0;font-size:.85rem;color:var(--text-secondary);line-height:1.5}.mech-draft-shelf-card .mech-draft-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px;padding-top:10px;border-top:1px solid var(--border)}.mech-draft-shelf-card .mech-draft-next{font-size:.85rem;color:var(--accent);font-weight:600}.mech-draft-shelf-card .mech-draft-when{font-size:.75rem;color:var(--text-muted);white-space:nowrap;flex-shrink:0}.mech-draft-shelf-card .mech-draft-next{flex:1 1 auto;min-width:0}.mech-stage-dots{display:inline-flex;gap:5px;align-items:center}.mech-stage-dots .dot{width:8px;height:8px;border-radius:50%;background:var(--border);transition:background var(--dur-fast) var(--ease-out-expo),transform var(--dur-fast) var(--ease-out-expo)}.mech-stage-dots .dot.on{background:var(--accent)}.mech-draft-shelf-card:hover .mech-stage-dots .dot.on{transform:scale(1.1)}.mech-starters{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:10px}.mech-starters-label{font-size:.8rem;color:var(--text-muted)}.mech-starter-chip{background:var(--bg-input);border:1px dashed var(--border);color:var(--text-secondary);padding:6px 12px;border-radius:999px;font-size:.82rem;cursor:pointer;transition:background var(--dur-fast),border-color var(--dur-fast),color var(--dur-fast)}.mech-starter-chip:hover{background:var(--bg-card);border-color:var(--accent);color:var(--accent)}.mech-starter-chip:active{transform:scale(.97)}.mech-capabilities{border:1px solid var(--border);border-radius:10px;background:var(--bg-card);padding:12px;margin:16px 0}.mech-capabilities-label{color:var(--text-muted);font-size:.72rem;font-weight:700;letter-spacing:.05em;margin-bottom:8px;text-transform:uppercase}.mech-capabilities-actions{display:grid;gap:8px}.mech-capability-action{width:100%;min-height:64px;display:flex;align-items:center;gap:12px;border:1px solid var(--border);border-radius:8px;background:var(--bg-secondary);color:var(--text-primary);padding:12px 14px;cursor:pointer;text-align:left;transition:border-color var(--dur-base),background var(--dur-base),transform var(--dur-fast)}.mech-capability-action:hover{border-color:var(--accent);background:var(--accent-subtle);transform:translateY(-1px)}.mech-capability-icon{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;color:var(--accent);flex-shrink:0}.mech-capability-icon .icon,.mech-capability-action .icon{width:20px;height:20px}.mech-capability-action strong,.mech-capability-action small{display:block}.mech-capability-action strong{font-size:.92rem;margin-bottom:2px}.mech-capability-action small{color:var(--text-muted);font-size:.78rem;line-height:1.35}.mech-test-route #gymLanding .program-header{text-align:left;margin-bottom:22px}.mech-test-route #gymLanding .program-header h1{max-width:680px;font-size:clamp(2rem,5vw,4rem);line-height:.98;letter-spacing:0}.mech-test-route #gymLanding .program-header p{max-width:48ch;margin-top:12px;font-size:1rem}.mech-test-layout{display:grid;grid-template-columns:minmax(120px,148px) minmax(0,1fr);gap:18px;align-items:start}.mech-test-rail{position:sticky;top:86px;display:grid;gap:6px;border:0;border-radius:0;background:transparent;padding:2px 0}.mech-test-tab{width:100%;min-height:44px;display:flex;align-items:center;gap:8px;border:1px solid transparent;border-radius:999px;background:transparent;color:var(--text-secondary);padding:8px 10px;cursor:pointer;text-align:left;font:inherit;transition:background var(--dur-base),color var(--dur-base),border-color var(--dur-base),transform var(--dur-base)}.mech-test-tab:hover,.mech-test-tab.active{background:var(--accent-subtle);border-color:color-mix(in srgb,var(--accent) 38%,transparent);color:var(--text-primary)}.mech-test-tab.active{transform:translate(2px)}.mech-test-tab-icon{width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;color:var(--accent);flex-shrink:0}.mech-test-tab-copy strong,.mech-test-tab-copy small{display:block}.mech-test-tab-copy strong{font-size:.84rem;line-height:1.2}.mech-test-tab-copy small{color:var(--text-muted);font-size:.72rem;line-height:1.3;margin-top:2px}.mech-test-main{min-width:0}.mech-test-panel{display:none}.mech-test-panel.active{display:block}.mech-test-panel-shell{border:1px solid color-mix(in srgb,var(--border) 86%,transparent);border-radius:10px;background:color-mix(in srgb,var(--bg-secondary) 94%,transparent);padding:24px;min-width:0;overflow:hidden;box-shadow:0 18px 48px #00000024}.mech-test-panel-header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:18px}.mech-test-panel-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;flex-shrink:0}.mech-playground-link{white-space:nowrap}.mech-test-panel-header h2{margin:0 0 4px;font-size:1.1rem}.mech-test-panel-header p,.mech-test-empty{color:var(--text-muted);font-size:.88rem;margin:0}.mech-test-panel #mechPrimaryCaptureCard,.mech-test-panel #snippetsShelfSection,.mech-test-panel #draftsShelfSection,.mech-test-panel #myMechanismsSection{margin-top:0!important;margin-bottom:0!important}.mech-test-panel #mechLandingFooterActions{margin-top:20px!important;padding-top:18px!important}.mech-test-empty{display:none;border:1px dashed var(--border);border-radius:10px;padding:16px;background:var(--bg-card)}.mech-test-panel.is-empty .mech-test-empty{display:block}.mech-test-course-workspace{margin-top:12px}.mech-test-course-workspace:not(.is-course-mode) .mech-test-course-drawer,.mech-test-course-workspace:not(.is-course-mode) .mech-test-course-summary{display:none}.mech-test-course-content{min-width:0;max-width:100%}.mech-test-course-summary{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,340px);gap:18px;align-items:end;border:1px solid var(--border);border-radius:10px;background:var(--bg-card);padding:14px;margin-bottom:14px}.mech-test-course-kicker{display:block;color:var(--text-muted);font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;margin-bottom:4px}.mech-test-course-summary h4{margin:0;color:var(--text-primary);font-size:1rem;line-height:1.25}.mech-test-course-summary p{margin:4px 0 0;color:var(--text-muted);font-size:.84rem}.mech-test-course-controls{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0}.mech-test-course-picker{flex:1 1 230px;min-width:0;display:flex;flex-direction:column;gap:5px;color:var(--text-muted);font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.mech-test-course-picker select{width:100%;min-height:38px;border:1px solid var(--border);border-radius:8px;background:var(--bg-input);color:var(--text-primary);padding:7px 10px;font:inherit;font-size:.86rem;text-transform:none;letter-spacing:0}.mech-test-course-mobile-trigger{display:none;width:100%;min-height:56px;border:1px solid var(--border);border-radius:10px;background:var(--bg-input);color:var(--text-primary);padding:10px 12px;font:inherit;text-align:left;cursor:pointer}.mech-test-course-mobile-copy{min-width:0;display:flex;flex-direction:column;gap:3px}.mech-test-course-mobile-copy small{color:var(--text-muted);font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.mech-test-course-mobile-copy strong{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:1rem;line-height:1.25}.mech-test-course-mobile-action{flex-shrink:0;color:var(--accent);font-size:.86rem;font-weight:700}.mech-test-course-browse{min-height:38px;align-self:flex-end;white-space:nowrap}.mech-test-course-drawer{border:1px solid var(--border);border-radius:10px;background:var(--bg-card);padding:12px;margin-bottom:14px}.mech-test-course-drawer[hidden]{display:none!important}.mech-test-course-drawer-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;margin-bottom:10px}.mech-test-course-search{display:flex;align-items:center;gap:6px;border:1px solid var(--border);border-radius:8px;background:var(--bg-input);padding:6px 8px}.mech-test-course-search-icon{width:16px;height:16px;color:var(--text-muted);display:inline-flex;flex-shrink:0}.mech-test-course-search input{min-width:0;width:100%;border:0;outline:0;background:transparent;color:var(--text-primary);font:inherit;font-size:.82rem}.mech-test-course-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:6px;max-height:270px;overflow:auto;padding-right:2px}.mech-test-course-option{width:100%;min-height:38px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;border:0;border-radius:8px;background:transparent;color:var(--text-secondary);text-align:left;padding:8px 9px;font:inherit;cursor:pointer;transition:background var(--dur-base),color var(--dur-base)}.mech-test-course-option:hover,.mech-test-course-option.active{background:var(--accent-subtle);color:var(--text-primary)}.mech-test-course-option-title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;font-weight:600}.mech-test-course-option-count{min-width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:var(--bg-input);color:var(--text-muted);font-size:.72rem;font-weight:600}.mech-test-course-option.active .mech-test-course-option-count{background:var(--bg-secondary);color:var(--accent)}.mech-test-course-no-results{color:var(--text-muted);font-size:.82rem;padding:12px 8px}.mech-test-route #myMechanismsSection.mech-test-course-picker-active #mechCourseFilterBar{display:none!important}.mech-test-snippet-filters{border:1px solid var(--border);border-radius:10px;background:var(--bg-card);padding:12px;margin:12px 0 14px}.mech-test-snippet-filters[hidden]{display:none!important}.mech-test-snippet-filter-summary{display:flex;align-items:center;justify-content:space-between;gap:12px}.mech-test-snippet-filter-copy{min-width:0}.mech-test-snippet-filter-copy span,.mech-test-snippet-filter-copy small,.mech-test-snippet-filter-copy strong{display:block}.mech-test-snippet-filter-copy span{color:var(--text-muted);font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;margin-bottom:3px}.mech-test-snippet-filter-copy strong{color:var(--text-primary);font-size:.95rem;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mech-test-snippet-filter-copy small{color:var(--text-muted);font-size:.82rem;line-height:1.35;margin-top:2px}.mech-test-snippet-filter-drawer{border-top:1px solid var(--border);margin-top:12px;padding-top:12px}.mech-test-snippet-filter-drawer[hidden]{display:none!important}.mech-test-snippet-filter-drawer #snippetTagFilterBar{margin-bottom:0!important}@media(max-width:960px){.mech-test-course-summary{grid-template-columns:1fr}.mech-test-course-controls{justify-content:stretch}}@media(max-width:760px){.mech-test-layout{grid-template-columns:1fr;min-width:0}.mech-test-rail{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.mech-test-tab{min-height:48px}.mech-test-tab-copy small{display:none}.mech-test-panel-shell{padding:16px;width:100%}.mech-test-panel-header{align-items:stretch;flex-direction:column}.mech-test-panel-header>div{min-width:0}.mech-test-panel-header h2{overflow-wrap:normal;word-break:normal}.mech-test-course-controls,.mech-test-course-drawer-head{grid-template-columns:1fr}.mech-test-panel-actions{width:100%;justify-content:stretch}.mech-test-panel-actions .btn{flex:1 1 150px}.mech-test-course-controls{display:grid}.mech-test-course-browse,.mech-test-course-picker{display:none}.mech-test-course-mobile-trigger{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px}.mech-test-course-list{grid-template-columns:1fr;max-height:min(420px,58vh)}.mech-test-course-search{padding:10px 12px}.mech-test-course-search input{font-size:1rem}.mech-test-course-option{min-height:50px;padding:11px 12px}.mech-test-course-option-title{font-size:.95rem}.mech-test-course-option-count{min-width:26px;height:26px;font-size:.78rem}.mech-test-snippet-filter-summary{align-items:stretch;flex-direction:column}.mech-test-snippet-filter-summary .btn{width:100%}.mech-test-snippet-filter-drawer #snippetTagFilterBar{gap:8px!important}.mech-test-snippet-filter-drawer .mech-snippet-filter-pill{min-height:36px;padding:7px 12px;font-size:.9rem}.mech-course-group,.mech-course-group-header,.mech-course-group-header h4{max-width:100%;min-width:0}.mech-course-group-header h4,.mech-library-card h3,.mech-library-card .mech-summary,.mech-library-why p,.mech-library-action-note{overflow-wrap:anywhere}.mech-library-card,.mech-library-why,.mech-library-actions,.mech-library-action-note,.mech-snippet-tags,.mech-tag-pill{max-width:100%;min-width:0}.mech-library-card{width:100%}.mech-tag-pill{white-space:normal}}.mech-mine-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px}.mech-mine-search{flex:1 1 220px;min-width:180px;background:var(--bg-input);border:1px solid var(--border);border-radius:8px;padding:8px 12px;color:var(--text-primary);font-size:.9rem}.mech-mine-search:focus{outline:none;border-color:var(--accent)}.mech-axis-toggle{display:inline-flex;background:var(--bg-input);border:1px solid var(--border);border-radius:8px;padding:2px;gap:2px}.mech-axis-btn{background:transparent;border:none;color:var(--text-secondary);padding:6px 12px;border-radius:6px;font-size:.82rem;cursor:pointer;transition:background var(--dur-fast),color var(--dur-fast)}.mech-axis-btn:hover{color:var(--text-primary)}.mech-axis-btn.active{background:var(--accent-subtle);color:var(--accent);font-weight:600}.mech-course-pill{max-width:260px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mech-card-delete{position:absolute;top:8px;right:10px;z-index:2;width:26px;height:26px;line-height:22px;text-align:center;background:transparent;border:1px solid var(--border);border-radius:50%;color:var(--text-muted);font-size:1.1rem;font-weight:600;cursor:pointer;padding:0;transition:all var(--dur-fast) var(--ease-out-expo)}.mech-card-delete:hover{background:#ef444426;color:#f87171;border-color:#ef444466}.mech-apply-block h4{color:var(--text-primary)}.mech-apply-result{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:14px 16px}.mech-apply-result .apply-section{padding:10px 0;border-bottom:1px solid var(--border)}.mech-apply-result .apply-section:last-child{border-bottom:none;padding-bottom:0}.mech-apply-result .apply-section:first-child{padding-top:0}.mech-apply-result .apply-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-weight:600;margin-bottom:4px}.mech-apply-result .apply-body{font-size:.95rem;line-height:1.55;color:var(--text-primary);white-space:pre-wrap}.mech-apply-result .apply-cautions .apply-label{color:#fbbf24}.mech-apply-result .apply-cautions .apply-body{color:var(--text-secondary)}.mech-suggestion-row{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;background:var(--bg-card);border:1px solid var(--border);border-radius:8px;margin-bottom:8px}.mech-suggestion-row input[type=checkbox]{margin-top:4px}.mech-suggestion-row .mech-suggestion-name{font-weight:600;font-size:.92rem}.mech-suggestion-row .mech-suggestion-summary{font-size:.82rem;color:var(--text-muted);line-height:1.4;margin-top:2px}.mech-suggestion-row select{margin-left:auto;background:var(--bg-input);border:1px solid var(--border);border-radius:6px;color:var(--text-primary);padding:4px 8px;font-size:.82rem}.mech-contributor{font-size:.8rem;color:var(--text-muted);display:inline-flex;align-items:center;gap:6px}.mech-ref-count{font-size:.75rem;color:var(--text-muted);background:var(--bg-input);padding:2px 8px;border-radius:999px}@media(max-width:640px){.evidence-modal{padding:0;align-items:flex-end}.evidence-modal-inner{max-width:100%;border-radius:16px 16px 0 0;padding:32px 20px;max-height:95vh}.evidence-modal h2{font-size:1.25rem}.stage-actions{justify-content:stretch}.stage-actions .btn{flex:1}.stage-actions-final{justify-content:center;padding-bottom:max(8px,env(safe-area-inset-bottom))}.stage-actions-final .btn{flex:1 1 calc(33.333% - 10px);min-width:0}.stage-actions-final .stage-file-action{order:10;flex:0 1 min(72vw,220px);width:min(72vw,220px);min-height:48px;margin:10px auto 0;border-radius:999px;position:relative;overflow:visible;isolation:isolate;box-shadow:0 14px 30px #5b52e057,0 0 0 7px color-mix(in srgb,var(--accent-subtle) 82%,transparent)}.stage-actions-final .stage-file-action:before{content:"";position:absolute;inset:-10px -14px;border-radius:inherit;background:radial-gradient(circle at 50% 50%,color-mix(in srgb,var(--accent) 28%,transparent),transparent 68%);opacity:.62;pointer-events:none;z-index:-1}.artifact-grid{grid-template-columns:1fr}}.mech-export-dialog{background:var(--bg-secondary);border:1px solid var(--border);border-radius:14px;padding:24px;max-width:720px;width:100%;max-height:90vh;display:flex;flex-direction:column;gap:14px;overflow:hidden}.mech-export-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.mech-export-header h3{font-size:1.1rem}.mech-export-scope{display:flex;flex-direction:column;gap:8px;padding:12px;background:var(--bg-card);border:1px solid var(--border);border-radius:10px}.mech-export-scope label{display:flex;align-items:flex-start;gap:10px;cursor:pointer;padding:6px 4px;border-radius:6px;transition:background var(--dur-fast)}.mech-export-scope label:hover{background:var(--bg-input)}.mech-export-scope input[type=radio]{margin-top:4px;accent-color:var(--accent)}.mech-export-scope label>span{display:flex;flex-direction:column;gap:2px;flex:1}.mech-export-scope strong{font-size:.95rem;color:var(--text-primary)}.mech-export-scope small{font-size:.82rem;color:var(--text-muted);line-height:1.4}.mech-export-status{font-size:.85rem;color:var(--text-muted);padding:4px 2px}.mech-export-preview{flex:1;min-height:180px;max-height:40vh;overflow:auto;background:var(--bg-input);border:1px solid var(--border);border-radius:10px;padding:12px 14px;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:.78rem;line-height:1.5;color:var(--text-secondary);white-space:pre-wrap;word-break:break-word;margin:0}.mech-export-actions{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap;padding-top:4px}.mech-export-actions .btn[disabled]{opacity:.5;cursor:not-allowed}@media(max-width:640px){.mech-export-modal{padding:0!important;align-items:flex-end!important}.mech-export-dialog{max-width:100%;border-radius:16px 16px 0 0;max-height:94vh}.mech-export-actions .btn{flex:1;min-width:0}}.mech-my-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;flex-wrap:wrap}.mech-course-pill{background:var(--bg-input);border:1px solid var(--border);color:var(--text-secondary);padding:6px 12px;border-radius:999px;font-size:.82rem;cursor:pointer;transition:background var(--dur-fast),border-color var(--dur-fast),color var(--dur-fast)}.mech-course-pill:hover{background:var(--bg-card);color:var(--text-primary)}.mech-course-pill.active{background:var(--accent-subtle);border-color:var(--accent);color:var(--accent);font-weight:600}.mech-course-group{margin-bottom:28px}.mech-course-group:last-child{margin-bottom:0}.mech-course-group-header{display:flex;align-items:center;gap:10px;margin-bottom:12px;padding-bottom:6px;border-bottom:1px solid var(--border)}.mech-course-group-header h4{margin:0;font-size:.95rem;font-weight:600;color:var(--text-primary);display:inline-flex;align-items:center;gap:8px}.mech-group-count{font-size:.72rem;font-weight:500;color:var(--text-muted);background:var(--bg-input);padding:2px 8px;border-radius:999px}.artifact-card.mech-selectable{cursor:pointer}.artifact-card.mech-selectable:hover{border-color:var(--accent)}.artifact-card.mech-selected{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-subtle)}.mech-select-check{position:absolute;top:10px;left:10px;width:20px;height:20px;border:2px solid var(--border);border-radius:4px;background:var(--bg-card);transition:background var(--dur-fast),border-color var(--dur-fast);pointer-events:none}.mech-select-check.checked{background:var(--accent);border-color:var(--accent)}.mech-select-check.checked:after{content:"";position:absolute;top:2px;left:5px;width:5px;height:10px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}.artifact-card.mech-selectable h3{padding-left:30px}.mech-select-action-bar{position:fixed;left:50%;bottom:24px;transform:translate(-50%);z-index:1500;display:none;align-items:center;gap:16px;padding:12px 20px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:999px;box-shadow:0 8px 28px #00000073;font-size:.9rem;color:var(--text-primary);max-width:calc(100vw - 32px)}.mech-select-action-bar-actions{display:flex;gap:8px;align-items:center}.mech-select-action-bar .btn[disabled]{opacity:.5;cursor:not-allowed}@media(max-width:640px){.mech-select-action-bar{left:16px;right:16px;transform:none;border-radius:14px;bottom:16px;padding:10px 14px;flex-wrap:wrap;justify-content:space-between}.mech-select-action-bar-actions{flex-wrap:wrap}.mech-course-group-header h4{font-size:.9rem}}.mech-cluster-svg{width:100%;max-height:520px;display:block;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-secondary);margin-bottom:12px;overflow:visible}.mech-cluster-node{transition:opacity var(--dur-fast)}.mech-cluster-node:hover circle,.mech-cluster-node:focus circle{stroke:var(--accent);stroke-width:2.5;filter:brightness(1.15)}.mech-cluster-label{font-size:9px;fill:var(--text-secondary);font-family:var(--font-sans, sans-serif);pointer-events:none}.mech-cluster-legend{display:flex;flex-wrap:wrap;gap:8px;padding:6px 2px}.mech-cluster-legend-item{display:inline-flex;align-items:center;gap:5px;font-size:.78rem;color:var(--text-secondary)}.mech-cluster-dot{width:10px;height:10px;border-radius:50%;display:inline-block;flex-shrink:0}.mechanism-inline-chip{display:inline-flex;align-items:center;gap:3px;padding:1px 9px;border-radius:999px;background:var(--accent-subtle);border:1px solid var(--accent);color:var(--accent);font-size:.82rem;font-weight:500;text-decoration:none;white-space:nowrap;transition:background var(--dur-fast),color var(--dur-fast)}.mechanism-inline-chip:hover{background:var(--accent);color:#fff}.mechanism-inline-chip.mec-loading{opacity:.55;pointer-events:none}.mech-snippet-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:8px;align-items:center}.mech-tag-pill{display:inline-flex;align-items:center;gap:3px;padding:2px 8px;border-radius:999px;background:var(--bg-input);border:1px solid var(--border);font-size:.72rem;color:var(--text-secondary);line-height:1.4}.mech-tag-pill-remove{background:none;border:none;cursor:pointer;color:var(--text-muted);padding:0;font-size:.85rem;line-height:1}.mech-tag-pill-remove:hover{color:#e05}.mech-tag-add{background:none;border:1px dashed var(--border);border-radius:999px;padding:2px 8px;font-size:.72rem;color:var(--text-muted);cursor:pointer;line-height:1.4}.mech-tag-add:hover{border-color:var(--accent);color:var(--accent)}.mech-snippet-filter-pill{background:var(--bg-input);border:1px solid var(--border);color:var(--text-secondary);border-radius:999px;padding:4px 12px;font-size:.8rem;cursor:pointer;transition:background var(--dur-fast),border-color var(--dur-fast),color var(--dur-fast)}.mech-snippet-filter-pill:hover{background:var(--bg-card);color:var(--text-primary)}.mech-snippet-filter-pill.active{background:var(--accent-subtle);border-color:var(--accent);color:var(--accent);font-weight:600}.mech-snippet-viewer{position:fixed;inset:0;z-index:2000;display:flex;align-items:center;justify-content:center;padding:18px;background:#040612db;backdrop-filter:blur(14px)}.mech-snippet-dialog{width:min(680px,100%);max-height:min(84vh,760px);overflow-y:auto;background:var(--bg-secondary);border:1px solid var(--border);border-radius:14px;padding:24px;box-shadow:var(--shadow-xl)}.mech-snippet-dialog-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px}.mech-snippet-dialog-head h3{margin:4px 0 6px;font-size:1.1rem;line-height:1.35}.mech-snippet-dialog-tags{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 14px}.mech-snippet-full-text{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:16px;color:var(--text-secondary);font-size:.95rem;line-height:1.65;white-space:pre-wrap}.mech-snippet-dialog-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:16px}@media(max-width:560px){.mech-snippet-viewer{align-items:flex-end;padding:0}.mech-snippet-dialog{width:100%;max-height:88vh;border-radius:18px 18px 0 0;padding:20px 16px calc(20px + env(safe-area-inset-bottom))}.mech-snippet-dialog-head{align-items:flex-start;gap:10px}.mech-snippet-dialog-head h3{font-size:1rem}.mech-snippet-full-text{font-size:.92rem;padding:14px}.mech-snippet-dialog-actions .btn{flex:1}}@media(max-width:720px){.bridge-collision-card{grid-template-columns:1fr;padding:22px}.bridge-readiness-card{align-items:stretch;flex-direction:column}.bridge-composer{align-items:flex-end;padding:0}.bridge-composer-dialog{width:100%;max-height:92vh;border-radius:18px 18px 0 0;padding:22px 16px calc(22px + env(safe-area-inset-bottom))}.bridge-composer-head{align-items:flex-start}.bridge-composer-actions .btn{flex:1}}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;-webkit-touch-callout:none;-webkit-user-drag:none}body,p,h1,h2,h3,h4,h5,h6,li,blockquote,pre,code,.idea-desc,.accordion-body,.tutor-msg-bubble,.stage-output,.lecture-script,.flashcard-face,[contenteditable=true],textarea,input{-webkit-touch-callout:default;-webkit-user-select:text;user-select:text}img,svg,.nav-brand-icon{-webkit-user-drag:none;user-drag:none}body{overscroll-behavior-y:contain;min-height:100vh;min-height:100dvh;-webkit-overflow-scrolling:touch}.page-wrapper{min-height:100vh;min-height:100dvh}.use-app-vh-100{height:calc(var(--app-vh, 1vh) * 100)}.nav,.mobile-nav,.tutor-fab,.lecture-config-modal,.tutor-chat,.folder-sheet{transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden}@media(max-width:768px){.nav{background:var(--bg-secondary)}@supports ((backdrop-filter: blur(10px)) or (-webkit-backdrop-filter: blur(10px))){.nav{background:linear-gradient(180deg,color-mix(in srgb,var(--bg-secondary) 88%,transparent),color-mix(in srgb,var(--bg-secondary) 76%,transparent)),linear-gradient(115deg,color-mix(in srgb,var(--accent) 7%,transparent),transparent 48%,color-mix(in srgb,var(--info) 4%,transparent));-webkit-backdrop-filter:saturate(160%) blur(14px);backdrop-filter:saturate(160%) blur(14px)}}}@media(max-width:768px){body{scrollbar-width:none}body::-webkit-scrollbar{width:0;height:0;display:none}}@media(max-width:768px){input,textarea,select{font-size:16px}input:focus,textarea:focus,select:focus{scroll-margin-top:80px;scroll-margin-bottom:80px}}@media(display-mode:standalone){.nav{padding-top:calc(8px + env(safe-area-inset-top,0px))}body{background:var(--bg-secondary)}.browser-only{display:none!important}}body.is-standalone .nav{padding-top:calc(8px + env(safe-area-inset-top,0px))}body.is-standalone .browser-only{display:none!important}@media(hover:none)and (pointer:coarse){.btn,.tab,.card-clickable,.session-card,.course-card,.accordion-trigger,.quiz-option,.lecture-style-card,.lecture-length-chip,.idea-action-btn,.rating-btn,.folder-pill,.source-tab,.mobile-nav a,.artifact-card,.journey-course-card,.difficulty-btn,.tutor-fab,.podcast-episode,.mech-course-pill,.mech-tag-chip,.lecture-play-btn,.lecture-mini-play,.lecture-mini-btn,.tts-mini-play,.tts-mini-close,.theme-toggle{transition:transform .18s cubic-bezier(.22,1,.36,1),opacity .15s ease,background-color .18s ease,border-color .18s ease,box-shadow .18s ease}.btn:active:not(:disabled){transform:scale(.96);opacity:.85;transition-duration:.05s}.tab:active,.accordion-trigger:active,.quiz-option:active,.lecture-style-card:active,.lecture-length-chip:active,.idea-action-btn:active,.rating-btn:active,.folder-pill:active,.source-tab:active,.artifact-card:active,.journey-course-card:active,.difficulty-btn:active,.podcast-episode:active,.mech-course-pill:active,.mech-tag-chip:active,.theme-toggle:active{transform:scale(.97);opacity:.85;transition-duration:.05s}.session-card:active,.course-card:active{transform:scale(.985);transition-duration:.05s}.mobile-nav a:active{transform:scale(.92);transition-duration:.05s}.tutor-fab:active,.lecture-play-btn:active,.lecture-mini-play:active,.lecture-mini-btn:active,.tts-mini-play:active,.tts-mini-close:active{transform:scale(.9);transition-duration:.05s}.card-clickable:hover,.session-card:hover,.course-card:hover,.artifact-card:hover,.idea-action-btn:hover{transform:none;box-shadow:var(--shadow-sm)}.btn:hover{transform:none}}@media(hover:none)and (pointer:coarse){.btn-primary,.btn-accent,.btn-success,.lecture-play-btn,.tutor-fab,.quiz-option,.rating-btn{position:relative;overflow:hidden;isolation:isolate}.btn-primary:after,.btn-accent:after,.btn-success:after,.lecture-play-btn:after,.tutor-fab:after,.quiz-option:after,.rating-btn:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at center,currentColor 0%,transparent 70%);opacity:0;pointer-events:none;z-index:0;transition:opacity var(--dur-slow) var(--ease-out-expo);mix-blend-mode:overlay}.btn-primary:active:after,.btn-accent:active:after,.btn-success:active:after,.lecture-play-btn:active:after,.tutor-fab:active:after,.quiz-option:active:after,.rating-btn:active:after{opacity:.18;transition-duration:0s}.btn-primary>*,.btn-accent>*,.btn-success>*{position:relative;z-index:1}}.nav-brand,.nav-links,.mobile-nav,.tab-bar,.tab,.btn,.badge,.folder-pill,.source-tab,.idea-action-btn,.rating-btn,.difficulty-btn,.lecture-style-card,.lecture-length-chip,.stat-card,.session-number,.tutor-fab,.lecture-mini-bar,.tts-mini-bar,.ptr-indicator,.theme-toggle,.mech-course-pill,.mech-tag-chip,.evidence-progress,.arc-timeline{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}@media(max-width:768px){.card{will-change:auto;transform:translateZ(0)}}.tutor-chat-messages,.lecture-player-body,.podcast-episode-list,.tab-bar,.arc-timeline,.tag-filter-bar{contain:layout paint style;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;scroll-behavior:smooth}@media(max-width:768px){.mobile-nav{bottom:0;background:linear-gradient(180deg,color-mix(in srgb,var(--bg-secondary) 76%,transparent),color-mix(in srgb,var(--bg-secondary) 92%,transparent)),linear-gradient(110deg,color-mix(in srgb,var(--accent) 7%,transparent),transparent 54%,color-mix(in srgb,var(--info) 4%,transparent));padding-top:6px;box-shadow:0 -1px #ffffff0a,0 -8px 24px #0000002e;transition:transform var(--dur-base) cubic-bezier(.22,1,.36,1),opacity var(--dur-fast) ease}[data-theme=light] .mobile-nav{background:linear-gradient(180deg,color-mix(in srgb,var(--bg-secondary) 74%,transparent),color-mix(in srgb,var(--bg-secondary) 92%,transparent)),linear-gradient(110deg,color-mix(in srgb,var(--accent) 6%,transparent),transparent 54%,color-mix(in srgb,var(--info) 4%,transparent));box-shadow:0 -1px #0000000a,0 -6px 18px #0000000f}.mobile-nav a.active:before{width:28px;height:3px;background:var(--accent);box-shadow:0 0 8px var(--accent)}.mobile-nav a:active span.icon{transform:scale(.88)}.mobile-nav a span.icon{transition:transform var(--dur-base) cubic-bezier(.22,1,.36,1);display:inline-block}}@media(max-width:768px){body.kb-open .mobile-nav{opacity:0;pointer-events:none;transform:translateY(calc(100% + env(safe-area-inset-bottom,0px)))}body.kb-open .tutor-fab{opacity:0;pointer-events:none;transform:translateY(18px)}}.nav{transition:transform var(--dur-base) cubic-bezier(.22,1,.36,1);will-change:transform}.nav.nav-hidden{transform:translateY(-100%)}body.page-enter main,body.page-enter .page-header{animation:pageEnter .24s cubic-bezier(.22,1,.36,1) both}body.page-leave main,body.page-leave .page-header{animation:pageLeave .14s cubic-bezier(.22,1,.36,1) both}@keyframes pageEnter{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@keyframes pageLeave{0%{opacity:1;transform:translateY(0)}to{opacity:.82;transform:translateY(-3px)}}.skeleton{position:relative;background:var(--bg-hover);border-radius:var(--radius-sm);overflow:hidden;isolation:isolate;color:transparent!important;pointer-events:none}.skeleton:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--text-muted) 12%,transparent),transparent);transform:translate(-100%);animation:skeletonShimmer 1.4s infinite}@keyframes skeletonShimmer{to{transform:translate(100%)}}.skeleton-line{height:12px;margin:8px 0}.skeleton-line.lg{height:18px}.skeleton-line.sm{height:8px}.skeleton-card{padding:16px;border-radius:var(--radius-md);height:96px}.skeleton-circle{border-radius:50%}.app-progress{position:fixed;top:0;left:0;height:2px;background:linear-gradient(90deg,var(--accent),var(--info));width:0;z-index:9999;pointer-events:none;box-shadow:0 0 8px var(--accent);transform-origin:left;transition:width var(--dur-base) var(--ease-out-expo),opacity var(--dur-slow) var(--ease-out-expo);border-radius:0 2px 2px 0}.app-progress.active{opacity:1}.app-progress.done{opacity:0;width:100%!important}@media(display-mode:standalone){.app-progress{top:env(safe-area-inset-top,0px)}}.net-banner{position:fixed;left:50%;transform:translate(-50%) translateY(-120%);top:calc(env(safe-area-inset-top,0px) + 12px);background:var(--bg-card);border:1px solid var(--border);color:var(--text-primary);padding:10px 16px;border-radius:999px;font-size:.85rem;font-weight:500;z-index:10000;box-shadow:0 8px 28px #00000040;display:flex;align-items:center;gap:8px;transition:transform var(--dur-slow) cubic-bezier(.22,1,.36,1);pointer-events:none;white-space:nowrap;max-width:calc(100vw - 32px)}.net-banner.visible{transform:translate(-50%) translateY(0)}.net-banner .net-dot{width:8px;height:8px;border-radius:50%;background:var(--danger);box-shadow:0 0 8px var(--danger)}.net-banner.online .net-dot{background:var(--success);box-shadow:0 0 8px var(--success)}.sw-update-banner{position:fixed;left:16px;right:16px;bottom:calc(80px + env(safe-area-inset-bottom,0px));background:var(--accent);color:#fff;padding:12px 16px;border-radius:14px;font-size:.9rem;font-weight:600;z-index:9998;box-shadow:0 12px 32px #6366f166;transform:translateY(140%);transition:transform var(--dur-slow) cubic-bezier(.22,1,.36,1);display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer}.sw-update-banner.visible{transform:translateY(0)}.sw-update-banner button{background:#ffffff2e;border:none;color:#fff;padding:6px 14px;border-radius:999px;font-weight:600;font-size:.85rem;cursor:pointer;white-space:nowrap}.kb-aware{bottom:var(--kb-offset, 0px);transition:bottom var(--dur-base) ease-out}@media(max-width:768px){body.kb-open .tutor-chat:not(.hidden){top:calc(var(--vv-offset-top, 0px) + env(safe-area-inset-top,0px) + 4px);right:0;bottom:calc(var(--kb-offset, 0px) + 10px);left:0;height:auto;max-height:none;min-height:0;padding-bottom:0;border-radius:14px 14px 0 0;transform:none;animation:none}body.kb-open .tutor-chat-header{flex:0 0 auto;min-height:56px;padding:16px 12px 10px 14px}body.kb-open .tutor-chat-header:before{top:6px;width:32px}body.kb-open .tutor-chat-title{font-size:.9rem}body.kb-open .tutor-chat-sub{font-size:.68rem}body.kb-open .tutor-header-btn{width:32px;height:32px}body.kb-open .tutor-chat-messages{flex:1 1 auto;min-height:0;padding:12px;gap:10px}body.kb-open .tutor-msg-bubble{max-width:92%;font-size:.88rem;line-height:1.45}body.kb-open .home-coach-chips{flex:0 0 auto;flex-wrap:nowrap;overflow-x:auto;gap:6px;padding:6px 10px;scrollbar-width:none}body.kb-open .home-coach-chips::-webkit-scrollbar{display:none}body.kb-open .home-coach-chips button{flex:0 0 auto;padding:6px 10px;font-size:.75rem;white-space:nowrap}body.kb-open .tutor-chat-input{flex:0 0 auto;padding:8px 10px calc(8px + env(safe-area-inset-bottom,0px))}}@media(hover:none)and (pointer:coarse){:focus{outline:none}}@media(max-width:768px){html{scroll-behavior:smooth}}@media(prefers-reduced-motion:reduce){body.page-enter main,body.page-enter .page-header,body.page-leave main,body.page-leave .page-header{animation:none!important}.skeleton:after{animation:none!important}.app-progress{transition:none!important}}@media(max-width:768px){.tutor-chat{height:calc(100dvh - 60px);max-height:calc(100dvh - 60px)}}.evidence-modal-inner,.lecture-config-modal,.mech-export-dialog{max-height:90vh;max-height:90dvh}@media(max-width:768px){.session-card,.course-card,.artifact-card,.mechanism-card-preview{content-visibility:auto;contain-intrinsic-size:auto 220px}}@media(max-width:768px){.page-header h1{font-size:clamp(1.35rem,5.5vw,1.75rem)}h2{font-size:clamp(1.1rem,4.4vw,1.35rem)}}html.no-bounce,html.no-bounce body{position:fixed;width:100%;height:100%;overflow:hidden}html.no-bounce .page-wrapper{height:100%;overflow-y:auto;-webkit-overflow-scrolling:touch}.tab-bar,.tag-filter-bar,.arc-timeline,.add-source-panel .source-tabs{scroll-snap-type:x proximity;scroll-padding-inline:16px}.tab,.tag-chip,.arc-dot-wrap,.add-source-panel .source-tab{scroll-snap-align:start}img,svg{image-rendering:-webkit-optimize-contrast}@media(max-width:768px){.tutor-fab{box-shadow:0 8px 22px #6366f16b}}.khmer-translation{margin-top:14px;padding:14px 16px;background:var(--accent-subtle);border:1px solid color-mix(in srgb,var(--accent) 25%,transparent);border-left:3px solid var(--accent);border-radius:var(--radius-md);font-family:Khmer OS,Khmer Sangam MN,Khmer UI,Noto Sans Khmer,"Noto Serif Khmer",sans-serif}.khmer-translation-label{display:flex;align-items:center;gap:8px;font-size:.75rem;font-weight:700;color:var(--accent);text-transform:uppercase;letter-spacing:.04em;margin-bottom:8px;font-family:inherit}.khmer-translation-label span:first-child{font-size:1rem}.khmer-translation-body{color:var(--text-primary);line-height:1.9;font-size:1rem}.khmer-translation-body p{margin:0 0 10px}.khmer-translation-body p:last-child{margin-bottom:0}.khmer-translation-body strong{color:var(--accent)}.khmer-translation-truncated{margin-top:10px;padding-top:8px;border-top:1px dashed color-mix(in srgb,var(--accent) 30%,transparent);font-size:.75rem;color:var(--text-muted);font-style:italic}.idea-action-btn[data-type=translate]:hover{border-color:#c4252a;color:#c4252a}.idea-action-btn-sm{padding:4px 10px;font-size:.72rem}.lecture-transcript-toolbar{display:flex;justify-content:flex-end;padding:4px 0 10px;border-bottom:1px solid var(--border);margin-bottom:12px}.tutor-msg-ai{flex-direction:column;align-items:flex-start}.tutor-msg-actions{display:flex;gap:6px;margin-top:4px;padding-left:4px}.tutor-translate-btn{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;font-size:.7rem;font-weight:600;color:var(--text-muted);background:transparent;border:1px solid var(--border);border-radius:100px;cursor:pointer;font-family:inherit;transition:all var(--dur-fast) var(--ease-out-expo)}.tutor-translate-btn:hover{border-color:#c4252a;color:#c4252a}.tutor-translate-btn:disabled{opacity:.6;cursor:wait}.tutor-msg-ai .tutor-msg-bubble .khmer-translation{margin-top:10px;padding:10px 12px;font-size:.92rem}.course-menu-btn{width:36px;padding:0;font-size:1.25rem;line-height:1}.course-menu{position:absolute;top:calc(100% + 6px);right:0;min-width:180px;background:var(--bg-elevated, #1f2937);border:1px solid var(--border);border-radius:10px;box-shadow:0 8px 24px #0000004d;padding:6px;z-index:50;display:flex;flex-direction:column}.course-menu[hidden]{display:none}.course-menu button{text-align:left;background:transparent;border:0;padding:8px 12px;border-radius:6px;color:var(--text-primary);font:inherit;cursor:pointer}.course-menu button:hover{background:var(--bg-hover, rgba(255,255,255,.06))}.course-menu button.danger{color:var(--danger, #ef4444)}.course-menu button.danger:hover{background:var(--danger-subtle, rgba(239,68,68,.12))}.gym-demo{max-width:720px;margin:0 auto 42px;text-align:left}.gym-demo-eyebrow{text-align:center;font-size:.78rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:20px}.gym-demo-input{position:relative;background:var(--bg-card);border:1px solid color-mix(in srgb,var(--accent) 34%,var(--border));border-left:0;border-radius:10px;padding:18px 22px;margin-bottom:28px;font-family:var(--font-serif);font-size:1.15rem;line-height:1.5;color:var(--text-primary);min-height:64px;box-shadow:0 18px 48px #0000002e}.gym-demo-input-label{display:block;font-family:var(--font-sans);font-size:.7rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:6px}.gym-demo-input-text{white-space:pre-wrap}.gym-demo-cursor{display:inline-block;width:2px;margin-left:1px;color:var(--accent);font-weight:400;animation:gymDemoBlink 1s steps(1) infinite}.gym-demo-cursor.is-hidden{opacity:0;animation:none}@keyframes gymDemoBlink{50%{opacity:0}}.gym-demo-stages{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:24px;position:relative}.gym-demo-stages:before{content:"";position:absolute;top:18px;left:18px;right:18px;height:2px;background:var(--border);z-index:0}.gym-demo-stage-dot{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:8px;flex:1;text-align:center}.gym-demo-stage-dot span{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:var(--bg-card);border:2px solid var(--border);color:var(--text-muted);font-weight:700;font-size:.9rem;font-family:var(--font-sans);transition:all var(--dur-base) var(--ease-out-expo)}.gym-demo-stage-dot label{font-size:.7rem;font-weight:600;letter-spacing:.04em;color:var(--text-muted);white-space:nowrap;transition:color var(--dur-base) var(--ease-out-expo)}.gym-demo-stage-dot.is-active span{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 0 0 6px var(--accent-subtle);transform:scale(1.08)}.gym-demo-stage-dot.is-active label{color:var(--accent)}.gym-demo-stage-dot.is-done span{background:var(--accent-subtle);border-color:var(--accent);color:var(--accent)}.gym-demo-card{position:relative;background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:28px;min-height:180px;margin-bottom:24px;overflow:hidden;box-shadow:0 18px 48px #00000029}.gym-demo-stage-content{position:absolute;inset:28px;opacity:0;transform:translateY(8px);transition:opacity var(--dur-slow) var(--ease-out-expo),transform var(--dur-slow) var(--ease-out-expo);pointer-events:none}.gym-demo-stage-content.is-current{opacity:1;transform:translateY(0);pointer-events:auto}.gym-demo-stage-placeholder{position:absolute;inset:28px;display:flex;align-items:center;gap:12px;color:var(--text-muted);font-size:.82rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase;transition:opacity var(--dur-med) var(--ease-out-expo)}.gym-demo-stage-content.is-current~.gym-demo-stage-placeholder{opacity:0}.gym-demo-stage-placeholder span{width:10px;height:10px;border-radius:999px;background:var(--accent);box-shadow:0 0 #6c63ff6b;animation:gymDemoPulse 1.15s ease-out infinite}@keyframes gymDemoPulse{70%{box-shadow:0 0 0 12px #6c63ff00}to{box-shadow:0 0 #6c63ff00}}.gym-demo-stage-label{font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-bottom:12px}.gym-demo-stage-body{font-family:var(--font-serif);font-size:1.2rem;line-height:1.45;color:var(--text-primary);margin:0}.gym-demo-stage-body--causal{font-size:1.35rem;font-weight:500}.gym-demo-stage-body strong{font-family:var(--font-sans);font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--accent);margin-right:4px}.gym-demo-domain-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:4px}.gym-demo-domain{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:.92rem;font-weight:500;color:var(--text-secondary);opacity:.4;transition:all var(--dur-base) var(--ease-out-expo)}.gym-demo-domain.is-passed{opacity:1;background:var(--success-subtle);border-color:var(--success);color:var(--text-primary)}.gym-demo-check{font-weight:700;color:var(--success);opacity:0;transition:opacity var(--dur-base) var(--ease-out-expo)}.gym-demo-domain.is-passed .gym-demo-check{opacity:1}.gym-demo-filed{background:linear-gradient(135deg,rgba(16,185,129,.14),var(--accent-subtle) 72%);border:1px solid color-mix(in srgb,#10b981 42%,var(--accent));border-radius:10px;padding:24px 28px;margin-bottom:24px;opacity:0;transform:translateY(16px) scale(.98);transition:opacity var(--dur-slow) var(--ease-out-expo),transform var(--dur-slow) var(--ease-out-expo);pointer-events:none}.gym-demo-filed.is-visible{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}.gym-demo-filed-eyebrow{font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-bottom:8px}.gym-demo-filed-name{font-family:var(--font-display);font-size:1.6rem;font-weight:600;letter-spacing:-.02em;margin-bottom:8px;color:var(--text-primary)}.gym-demo-filed-causal{font-family:var(--font-serif);font-size:1.05rem;line-height:1.5;color:var(--text-secondary);margin:0 0 14px}.gym-demo-filed-tags{display:flex;gap:6px;flex-wrap:wrap}.gym-demo-tag{font-size:.72rem;font-weight:600;padding:4px 10px;border-radius:999px;background:var(--bg-card);border:1px solid var(--border);color:var(--text-muted)}.gym-demo-replay{display:none;margin:0 auto;padding:8px 16px;background:transparent;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:.85rem;font-weight:500;font-family:inherit;cursor:pointer;transition:all var(--dur-base) var(--ease-out-expo)}.gym-demo-replay.is-visible{display:block}.gym-demo-replay:hover{border-color:var(--accent);color:var(--accent)}.gym-demo-gate{text-align:center;max-width:520px;margin:0 auto;padding-top:26px;border-top:1px solid color-mix(in srgb,var(--border) 70%,transparent)}.gym-demo-gate h2{margin-bottom:0;font-size:clamp(1.65rem,4vw,2.6rem);line-height:1;letter-spacing:0}.gym-demo-gate p{color:var(--text-secondary);margin:12px auto 24px;max-width:42ch;line-height:1.5}@media(prefers-reduced-motion:reduce){.gym-demo-stage-content,.gym-demo-filed,.gym-demo-domain,.gym-demo-stage-placeholder,.gym-demo-stage-placeholder span,.gym-demo-stage-dot span{transition:none!important;animation:none!important}.gym-demo-cursor{animation:none;opacity:0}}@media(max-width:640px){.gym-demo{margin-bottom:40px}.mech-auth-screen{padding:28px 0 72px}.mech-primary-capture{grid-template-columns:1fr;padding:22px}.mech-primary-capture .btn{width:100%}.mech-primary-loop{grid-template-columns:repeat(2,minmax(0,1fr))}.gym-demo-stages{gap:4px}.gym-demo-stages:before{left:14px;right:14px;top:14px}.gym-demo-stage-dot span{width:28px;height:28px;font-size:.78rem}.gym-demo-stage-dot label{font-size:.62rem;letter-spacing:.02em}.gym-demo-input{font-size:1rem;padding:14px 16px}.gym-demo-card{padding:20px;min-height:200px}.gym-demo-stage-content,.gym-demo-stage-placeholder{inset:20px}.gym-demo-stage-body{font-size:1.05rem}.gym-demo-stage-body--causal{font-size:1.15rem}.gym-demo-domain-grid{grid-template-columns:1fr;gap:8px}.gym-demo-filed-name{font-size:1.35rem}}.demo-frame{max-width:720px;margin:0 auto 56px;text-align:left}.demo-eyebrow{text-align:center;font-size:.78rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:20px}.demo-source{background:var(--bg-card);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:var(--radius-md);padding:16px 22px;margin-bottom:28px;font-family:var(--font-serif);font-size:1.1rem;line-height:1.5}.demo-source-label{display:block;font-family:var(--font-sans);font-size:.7rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:4px}.demo-source-text{color:var(--text-primary)}.demo-final{background:linear-gradient(135deg,var(--accent-subtle),transparent 60%);border:1px solid var(--accent);border-radius:var(--radius-lg);padding:18px 24px;margin-bottom:24px;text-align:center;opacity:0;transform:translateY(12px) scale(.98);transition:opacity var(--dur-slow) var(--ease-out-expo),transform var(--dur-slow) var(--ease-out-expo);pointer-events:none}.demo-final.is-visible{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}.demo-final-eyebrow{font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-bottom:4px}.demo-final-line{font-family:var(--font-serif);font-size:1.05rem;color:var(--text-secondary)}.demo-replay{display:none;margin:0 auto;padding:8px 16px;background:transparent;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:.85rem;font-weight:500;font-family:inherit;cursor:pointer;transition:all var(--dur-base) var(--ease-out-expo)}.demo-replay.is-visible{display:block}.demo-replay:hover{border-color:var(--accent);color:var(--accent)}.demo-gate{text-align:center;padding-top:32px;border-top:1px dashed var(--border)}.demo-gate h2{margin-bottom:0}@media(prefers-reduced-motion:reduce){.demo-final{transition:none!important}}.program-demo-track{list-style:none;padding:0;margin:0 0 24px;display:flex;flex-direction:column;gap:12px;position:relative}.program-demo-track:before{content:"";position:absolute;left:22px;top:14px;bottom:14px;width:2px;background:var(--border);z-index:0}.program-demo-phase{position:relative;z-index:1;display:flex;gap:16px;align-items:flex-start;padding:16px 18px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);opacity:0;transform:translateY(8px);transition:opacity var(--dur-slow) var(--ease-out-expo),transform var(--dur-slow) var(--ease-out-expo),border-color var(--dur-base) var(--ease-out-expo)}.program-demo-phase.is-visible{opacity:1;transform:translateY(0)}.program-demo-phase.is-active{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-subtle)}.program-demo-phase-num{flex-shrink:0;width:28px;height:28px;border-radius:50%;background:var(--bg-input);border:2px solid var(--border);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.85rem;color:var(--text-muted);transition:all var(--dur-base) var(--ease-out-expo)}.program-demo-phase.is-active .program-demo-phase-num,.program-demo-phase.is-done .program-demo-phase-num{background:var(--accent);border-color:var(--accent);color:#fff}.program-demo-phase-body{flex:1;min-width:0}.program-demo-phase-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:4px;flex-wrap:wrap}.bloom-pill{display:inline-flex;align-items:center;font-size:.66rem;font-weight:700;letter-spacing:.04em;padding:3px 8px;border-radius:999px;text-transform:uppercase}.bloom-pill--low{background:var(--info-subtle);color:var(--info)}.bloom-pill--mid{background:var(--accent-subtle);color:var(--accent)}.bloom-pill--high{background:var(--warning-subtle);color:var(--warning)}.bloom-pill--top{background:var(--success-subtle);color:var(--success)}.program-demo-phase-pct{font-size:.72rem;font-weight:600;color:var(--text-muted);font-variant-numeric:tabular-nums}.program-demo-phase-title{font-family:var(--font-display);font-size:1.1rem;font-weight:600;letter-spacing:-.01em;margin:4px 0;color:var(--text-primary)}.program-demo-phase-desc{font-size:.92rem;color:var(--text-secondary);line-height:1.45;margin:0}@media(max-width:640px){.program-demo-track:before{left:18px}.program-demo-phase{padding:14px;gap:12px}.program-demo-phase-num{width:22px;height:22px;font-size:.75rem}.program-demo-phase-title{font-size:1rem}.bloom-pill{font-size:.62rem;padding:2px 6px}}@media(prefers-reduced-motion:reduce){.program-demo-phase{transition:none!important;opacity:1;transform:none}}.practice-demo-stack{display:flex;flex-direction:column;gap:14px;margin-bottom:24px}.practice-demo-card{perspective:1000px;height:130px;opacity:0;transform:translateY(8px);transition:opacity var(--dur-slow) var(--ease-out-expo),transform var(--dur-slow) var(--ease-out-expo)}.practice-demo-card.is-visible{opacity:1;transform:translateY(0)}.practice-demo-card-inner{position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform .7s var(--ease-out-expo)}.practice-demo-card.is-flipped .practice-demo-card-inner{transform:rotateY(180deg)}.practice-demo-card-front,.practice-demo-card-back{position:absolute;inset:0;-webkit-backface-visibility:hidden;backface-visibility:hidden;border-radius:var(--radius-lg);padding:18px 22px;display:flex;flex-direction:column;justify-content:center}.practice-demo-card-front{background:var(--bg-card);border:1px solid var(--border)}.practice-demo-card-back{background:linear-gradient(135deg,var(--accent-subtle),var(--bg-card) 70%);border:1px solid var(--accent);transform:rotateY(180deg)}.practice-demo-card-eyebrow{font-size:.7rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:6px}.practice-demo-card-q{font-family:var(--font-serif);font-size:1.15rem;line-height:1.4;color:var(--text-primary);margin:0}.practice-demo-card-a{font-family:var(--font-serif);font-size:1rem;line-height:1.45;color:var(--text-primary);margin:0 0 10px}.practice-demo-due{align-self:flex-start;display:inline-flex;align-items:center;font-family:var(--font-sans);font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:4px 10px;border-radius:999px;opacity:0;transition:opacity var(--dur-base) var(--ease-out-expo) .3s}.practice-demo-card.is-flipped .practice-demo-due{opacity:1}.practice-demo-due--today{background:var(--success-subtle);color:var(--success)}.practice-demo-due--soon{background:var(--info-subtle);color:var(--info)}.practice-demo-due--later{background:var(--bg-input);color:var(--text-muted);border:1px solid var(--border)}@media(max-width:640px){.practice-demo-card{height:140px}.practice-demo-card-q{font-size:1.02rem}.practice-demo-card-a{font-size:.95rem}}@media(prefers-reduced-motion:reduce){.practice-demo-card,.practice-demo-card-inner,.practice-demo-due{transition:none!important;opacity:1;transform:none}.practice-demo-card.is-flipped .practice-demo-card-inner{transform:rotateY(180deg)}}.assess-demo-questions{position:relative;min-height:220px;margin-bottom:16px;transition:min-height var(--dur-slow) var(--ease-out-expo),opacity var(--dur-base) var(--ease-out-expo),margin-bottom var(--dur-slow) var(--ease-out-expo)}.assess-demo-questions.is-collapsed{min-height:0;opacity:0;margin-bottom:0;pointer-events:none}.assess-demo-q{position:absolute;inset:0;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:22px 24px;opacity:0;transform:translateY(8px);transition:opacity var(--dur-slow) var(--ease-out-expo),transform var(--dur-slow) var(--ease-out-expo);pointer-events:none}.assess-demo-q.is-current{opacity:1;transform:translateY(0);pointer-events:auto}.assess-demo-q-num{font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);margin-bottom:8px}.assess-demo-q-text{font-family:var(--font-serif);font-size:1.15rem;line-height:1.4;color:var(--text-primary);margin:0 0 16px}.assess-demo-q-opts{display:flex;flex-direction:column;gap:8px}.assess-demo-opt{padding:10px 14px;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:.92rem;color:var(--text-secondary);background:var(--bg-input);transition:all var(--dur-base) var(--ease-out-expo)}.assess-demo-opt.is-selected{border-color:var(--accent);background:var(--accent-subtle);color:var(--text-primary);font-weight:500}.assess-demo-synth{text-align:center;padding:24px 0;opacity:0;transition:opacity var(--dur-slow) var(--ease-out-expo)}.assess-demo-synth.is-visible{opacity:1}.assess-demo-synth-dots{display:inline-flex;gap:8px;margin-bottom:10px}.assess-demo-synth-dots span{width:10px;height:10px;border-radius:50%;background:var(--accent);animation:assessDemoBounce 1.2s infinite ease-in-out}.assess-demo-synth-dots span:nth-child(2){animation-delay:.15s}.assess-demo-synth-dots span:nth-child(3){animation-delay:.3s}@keyframes assessDemoBounce{0%,80%,to{transform:scale(.6);opacity:.5}40%{transform:scale(1);opacity:1}}.assess-demo-synth-label{font-size:.85rem;color:var(--text-muted);font-style:italic}.assess-demo-result{background:linear-gradient(135deg,var(--accent-subtle),var(--bg-card) 60%);border:1px solid var(--accent);border-radius:var(--radius-lg);padding:24px 28px;margin-bottom:20px;opacity:0;transform:translateY(12px) scale(.98);transition:opacity var(--dur-slow) var(--ease-out-expo),transform var(--dur-slow) var(--ease-out-expo);pointer-events:none}.assess-demo-result.is-visible{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}.assess-demo-result-eyebrow{font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-bottom:6px}.assess-demo-result-name{font-family:var(--font-display);font-size:1.7rem;font-weight:600;letter-spacing:-.025em;color:var(--text-primary);margin-bottom:8px}.assess-demo-result-line{font-family:var(--font-serif);font-size:1rem;line-height:1.5;color:var(--text-secondary);margin:0 0 16px}.assess-demo-tags{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.assess-demo-tag{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 12px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);opacity:0;transform:translateY(6px);transition:opacity var(--dur-base) var(--ease-out-expo),transform var(--dur-base) var(--ease-out-expo)}.assess-demo-tag.is-visible{opacity:1;transform:translateY(0)}.assess-demo-tag label{font-size:.7rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.assess-demo-tag strong{font-size:.88rem;font-weight:600;color:var(--accent)}@media(max-width:640px){.assess-demo-questions{min-height:240px}.assess-demo-q{padding:18px}.assess-demo-q-text{font-size:1.05rem}.assess-demo-tags{grid-template-columns:1fr}.assess-demo-result-name{font-size:1.45rem}}@media(prefers-reduced-motion:reduce){.assess-demo-q,.assess-demo-synth,.assess-demo-result,.assess-demo-tag,.assess-demo-synth-dots span{transition:none!important;animation:none!important;opacity:1;transform:none}}.site-footer{margin-top:96px;padding:48px 0 64px;border-top:1px solid var(--border);background:var(--bg-primary)}.site-footer-inner{display:flex;flex-direction:column;gap:16px;align-items:flex-start}.site-footer-line{font-family:var(--font-serif);font-size:1.25rem;line-height:1.4;color:var(--text-primary);max-width:640px;margin:0}.site-footer-links{display:flex;flex-wrap:wrap;gap:24px;margin-top:4px}.site-footer-links a{color:var(--text-secondary);font-size:.95rem;text-decoration:none;transition:color var(--dur-fast) var(--ease-out)}.site-footer-links a:hover{color:var(--accent)}.site-footer-meta{font-size:.85rem;color:var(--text-muted);margin:0}@media(max-width:768px){.site-footer{margin-top:64px;padding:36px 0 96px}.site-footer-line{font-size:1.1rem}.site-footer-links{gap:18px}}#filingOverlay{position:fixed;inset:0;z-index:9999;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 24px;background:#080910eb;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);opacity:0;pointer-events:none;transition:opacity var(--dur-base) var(--ease-out)}#filingOverlay.is-active{opacity:1;pointer-events:all}#filingOverlay.is-exiting{opacity:0;transition:opacity .5s var(--ease-out)}.filing-spotlight{position:absolute;width:min(600px,100vw);height:min(600px,100vh);border-radius:50%;background:radial-gradient(circle,rgba(108,99,255,.18) 0%,transparent 65%);pointer-events:none;animation:spotlight-breathe 2.4s ease-in-out infinite alternate}@keyframes spotlight-breathe{0%{transform:scale(.85);opacity:.5}to{transform:scale(1.15);opacity:1}}.filing-content{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:16px;width:min(540px,100%);text-align:center;animation:content-lift .6s var(--ease-out-expo) both}.filing-content.is-settling{animation:content-settle .6s var(--ease-out-expo) forwards}@keyframes content-lift{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(-5px)}}@keyframes content-settle{0%{opacity:1;transform:translateY(-5px) scale(1)}to{opacity:0;transform:translateY(-5px) scale(.82)}}.filing-crystal{width:72px;height:72px;animation:crystal-in .7s var(--ease-spring) both}.filing-crystal svg{width:100%;height:100%;filter:drop-shadow(0 0 12px rgba(108,99,255,.6));animation:crystal-glow 1.8s .7s ease-in-out infinite alternate}@keyframes crystal-in{0%{opacity:0;transform:scale(.2) rotate(45deg)}60%{opacity:1;transform:scale(1.18) rotate(-6deg)}to{opacity:1;transform:scale(1) rotate(0)}}@keyframes crystal-glow{0%{filter:drop-shadow(0 0 8px rgba(108,99,255,.5))}to{filter:drop-shadow(0 0 22px rgba(167,139,250,.9))}}.filing-name{font-size:clamp(1.2rem,4vw,1.8rem);font-weight:700;color:var(--text-primary);text-align:center;max-width:520px;line-height:1.2;min-height:1.2em}.filing-causal{font-size:.95rem;color:var(--text-muted);text-align:center;max-width:480px;line-height:1.6;font-style:italic;animation:filing-rise .5s .7s var(--ease-out-expo) both}.filing-status{font-size:.82rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--success);animation:filing-rise .5s .9s var(--ease-out-expo) both}@keyframes filing-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.filing-tags{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;max-width:400px}.filing-tag-chip{padding:4px 12px;border-radius:999px;border:1px solid rgba(108,99,255,.4);background:#6c63ff1f;color:#a78bfa;font-size:.78rem;font-weight:500;letter-spacing:.02em;opacity:0;transform:scale(.85);animation:tag-coalesce var(--dur-base) var(--ease-spring-soft) forwards}@keyframes tag-coalesce{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}.filing-lattice{position:absolute;inset:0;pointer-events:none;overflow:hidden}.filing-lattice-dot{position:absolute;border-radius:50%;background:var(--accent);opacity:0;animation:lattice-pop var(--dur-slow) var(--ease-out) forwards}.filing-lattice-line{position:absolute;height:1px;background:var(--accent);opacity:0;transform-origin:left center;animation:lattice-line-in .6s var(--ease-out) forwards}@keyframes lattice-pop{0%{opacity:0;transform:scale(0)}60%{opacity:.35;transform:scale(1.3)}to{opacity:.18;transform:scale(1)}}@keyframes lattice-line-in{0%{opacity:0;transform:scaleX(0)}to{opacity:.1;transform:scaleX(1)}}@media(prefers-reduced-motion:reduce){#filingOverlay,#filingOverlay.is-exiting{transition:opacity .1s}.filing-spotlight{animation:none;opacity:.6}.filing-content{animation:none;opacity:1;transform:none}.filing-content.is-settling{animation:none;opacity:0}.filing-crystal,.filing-crystal svg{animation:none;opacity:1;transform:none;filter:drop-shadow(0 0 12px rgba(108,99,255,.6))}.filing-name,.filing-causal,.filing-status,.filing-tag-chip{animation:none;opacity:1;transform:none}.filing-lattice-dot,.filing-lattice-line{animation:none;opacity:.15}}@keyframes node-pop-in{0%{transform:scale(0);opacity:0}65%{transform:scale(1.15);opacity:1}to{transform:scale(1);opacity:.9}}@keyframes node-breathe{0%,to{transform:scale(1);opacity:.85}50%{transform:scale(1.06);opacity:1}}.map-node-entering{transform-box:fill-box;transform-origin:center;animation:node-pop-in var(--dur-base) var(--ease-spring-overshoot) both}.map-node-mastered{transform-box:fill-box;transform-origin:center;animation:node-breathe 2.5s ease-in-out infinite}@media(prefers-reduced-motion:reduce){.map-node-entering{animation:none;opacity:.9}.map-node-mastered{animation:none}}@keyframes content-appear{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.lecture-transcript>p{animation:content-appear .22s var(--ease-out-expo) both}@media(prefers-reduced-motion:reduce){.lecture-transcript>p{animation:none}}#homeCoachFab,#tutorFab,#mechanismCoachFab,#fusionJarvisFab{transform:none!important;-webkit-transform:none!important;will-change:auto!important;position:fixed!important;z-index:1000!important;width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important;padding:0!important;gap:0!important;overflow:hidden;border:1px solid color-mix(in srgb,var(--accent) 42%,var(--border))!important;border-radius:999px!important;background:color-mix(in srgb,var(--bg-card) 76%,var(--accent) 18%)!important;color:color-mix(in srgb,var(--text-primary) 72%,var(--accent) 28%)!important;box-shadow:0 8px 22px -20px color-mix(in srgb,var(--accent) 70%,transparent),inset 0 1px color-mix(in srgb,#fff 8%,transparent)!important;opacity:.62;font-size:0;line-height:1;transition:opacity .2s ease,border-color .2s ease,background .2s ease}#homeCoachFab:hover,#homeCoachFab:active,#homeCoachFab:focus,#tutorFab:hover,#tutorFab:active,#tutorFab:focus,#mechanismCoachFab:hover,#mechanismCoachFab:active,#mechanismCoachFab:focus,#fusionJarvisFab:hover,#fusionJarvisFab:active,#fusionJarvisFab:focus{opacity:1;border-color:color-mix(in srgb,var(--accent) 58%,var(--border))!important;background:color-mix(in srgb,var(--bg-card) 66%,var(--accent) 26%)!important}#homeCoachFab svg,#tutorFab svg,#mechanismCoachFab svg,#fusionJarvisFab svg{width:18px!important;height:18px!important;flex:0 0 auto}#fusionJarvisFab span:not([data-icon]){display:none!important}#mechanismCoachFab{z-index:2200!important}@media(max-width:768px){#homeCoachFab,#tutorFab,#mechanismCoachFab,#fusionJarvisFab{bottom:calc(84px + env(safe-area-inset-bottom,0px))!important;right:8px!important;left:auto!important;width:34px!important;height:34px!important;min-width:34px!important;min-height:34px!important}#homeCoachFab svg,#tutorFab svg,#mechanismCoachFab svg,#fusionJarvisFab svg{width:17px!important;height:17px!important}body.lecture-mini-active #tutorFab,body.tts-mini-active #tutorFab,body.lecture-mini-active #mechanismCoachFab,body.tts-mini-active #mechanismCoachFab{bottom:calc(150px + env(safe-area-inset-bottom,0px))!important}#homeCoachNudge{bottom:calc(150px + env(safe-area-inset-bottom,0px))!important;right:14px!important;max-width:calc(100vw - 28px)}}body:has(.session-focus-page):not(.session-tutor-ready) #tutorFab{display:none!important}body.session-tutor-ready:has(.session-focus-page) #tutorFab:not(.hidden){display:flex!important}@media(max-width:768px){body.session-tutor-ready:has(.session-focus-page) #tutorFab:not(.hidden){right:8px!important;bottom:calc(84px + env(safe-area-inset-bottom,0px))!important}}.completion-overlay{position:fixed;inset:0;background:#080a189e;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1100;padding:24px;opacity:0;pointer-events:none;transition:opacity var(--dur-base) var(--ease-out-expo)}.completion-overlay[hidden]{display:none!important}.completion-overlay.is-entering{opacity:1;pointer-events:auto}.completion-sheet{position:relative;width:100%;max-width:460px;max-height:calc(100svh - 32px);overflow-y:auto;overscroll-behavior:contain;background:var(--bg-secondary);border:1px solid var(--border);border-radius:24px;padding:32px 32px 24px;text-align:center;box-shadow:0 20px 60px #080a1873,0 0 0 1px #a78bfa14;background-image:radial-gradient(120% 60% at 50% -10%,rgba(167,139,250,.1),transparent 60%),linear-gradient(180deg,transparent,transparent);opacity:0;transform:translate3d(0,24px,0) scale(.98);transition:var(--motion-rise),transform var(--dur-base) var(--ease-spring-soft);will-change:transform,opacity}.completion-sheet.is-entering{opacity:1;transform:translateZ(0) scale(1)}.completion-drag-handle{display:none;width:40px;height:4px;border-radius:2px;background:var(--border);margin:-12px auto 14px;cursor:grab}.completion-close{position:absolute;top:14px;right:14px;width:32px;height:32px;border:none;background:transparent;color:var(--text-muted);font-size:22px;line-height:1;cursor:pointer;border-radius:999px;display:flex;align-items:center;justify-content:center;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.completion-close:hover{background:var(--bg-hover);color:var(--text)}.completion-checkmark{display:inline-flex;margin:0 auto 16px;filter:drop-shadow(0 6px 16px rgba(99,102,241,.35))}.completion-check-circle{stroke-dasharray:176;stroke-dashoffset:176;transform-origin:center}.completion-check-tick{stroke-dasharray:48;stroke-dashoffset:48}.completion-sheet.is-entering .completion-check-circle{animation:completion-check-circle .52s var(--ease-out-expo) .2s forwards}.completion-sheet.is-entering .completion-check-tick{animation:completion-check-tick .38s var(--ease-out-expo) .58s forwards}.completion-headline{font-size:30px;font-weight:700;letter-spacing:-.02em;line-height:1.15;margin:0 0 10px;color:var(--text);opacity:0;transform:translateY(8px);transition:opacity var(--dur-base) var(--ease-out-expo) .6s,transform var(--dur-base) var(--ease-out-expo) .6s}.completion-sheet.is-entering .completion-headline{opacity:1;transform:translateY(0)}.completion-subhead{font-size:15px;line-height:1.5;color:var(--text-muted);margin:0 0 18px;opacity:0;transition:opacity var(--dur-base) var(--ease-out-expo) .75s}.completion-sheet.is-entering .completion-subhead{opacity:1}.completion-evidence{display:grid;gap:8px;margin:0 0 16px;text-align:left;opacity:0;transform:translateY(8px);transition:opacity var(--dur-base) var(--ease-out-expo) .88s,transform var(--dur-base) var(--ease-out-expo) .88s}.completion-sheet.is-entering .completion-evidence{opacity:1;transform:translateY(0)}.completion-evidence:empty{display:none}.completion-evidence-row{padding:9px 11px;background:color-mix(in srgb,var(--bg-card) 86%,transparent);border:1px solid var(--border);border-radius:12px}.completion-evidence-label{display:block;margin-bottom:4px;color:var(--text-muted);font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.completion-evidence-value{display:block;color:var(--text);font-size:13px;font-weight:600;line-height:1.42}.completion-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:10px;margin-bottom:14px}.completion-stats:empty{display:none;margin:0}.completion-stats--single .completion-stat{padding:28px 16px}.completion-stats--single .completion-stat-value{font-size:48px}.completion-stat{background:var(--bg-tertiary, var(--bg-hover));border:1px solid var(--border);border-radius:14px;padding:14px 12px 12px}.completion-stat-value{font-size:32px;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:-.02em;line-height:1.05;color:var(--text);background:linear-gradient(135deg,#a78bfa,#6366f1);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.completion-stat-label{margin-top:4px;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.completion-streak{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:500;color:#f59e0b;background:#f59e0b14;border:1px solid rgba(245,158,11,.18);padding:6px 12px;border-radius:999px;margin-bottom:22px;opacity:0;transform:translateY(6px);transition:opacity var(--dur-base) var(--ease-out-expo) 1.1s,transform var(--dur-base) var(--ease-out-expo) 1.1s}.completion-sheet.is-entering .completion-streak:not([hidden]){opacity:1;transform:translateY(0)}.completion-flame{font-size:14px;line-height:1}.completion-cta-row{display:flex;flex-direction:column;align-items:stretch;gap:8px;margin-top:8px;position:sticky;bottom:-1px;z-index:2;padding-top:8px;padding-bottom:2px;background:linear-gradient(180deg,transparent,var(--bg-secondary) 18%);opacity:0;transform:translateY(12px);transition:opacity var(--dur-base) var(--ease-out-expo) 1.3s,transform var(--dur-base) var(--ease-out-expo) 1.3s}.completion-sheet.is-entering .completion-cta-row{opacity:1;transform:translateY(0)}.completion-cta-primary{width:100%;padding:14px 22px;border:none;border-radius:14px;font-size:15px;font-weight:600;color:#fff;cursor:pointer;background:linear-gradient(135deg,#6366f1,#8b5cf6);box-shadow:0 8px 20px #6366f159;transition:transform var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out),opacity var(--dur-fast) var(--ease-out)}.completion-cta-primary:hover{transform:translateY(-1px);box-shadow:0 10px 24px #6366f173}.completion-cta-primary:active{transform:translateY(0)}.completion-cta-primary:disabled{opacity:.7;cursor:progress;transform:none}.completion-next-peek{font-size:12px;color:var(--text-muted);line-height:1.4;min-height:1em;padding:0 4px}.completion-cta-secondary{background:transparent;border:none;color:var(--text-muted);font-size:13px;font-weight:500;padding:8px;cursor:pointer;border-radius:8px;transition:color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out)}.completion-cta-secondary:hover{color:var(--text);background:var(--bg-hover)}@media(max-width:560px){.completion-overlay{align-items:flex-end;padding:0}.completion-sheet{max-width:100%;max-height:calc(100svh - 8px);border-radius:24px 24px 0 0;padding:16px 16px calc(10px + env(safe-area-inset-bottom,0px));transform:translate3d(0,100%,0)}.completion-sheet.is-entering{transform:translateZ(0)}.completion-drag-handle{display:block}.completion-close{display:none}.completion-checkmark{margin-bottom:8px}.completion-checkmark svg{width:48px;height:48px}.completion-headline{font-size:23px;margin-bottom:6px}.completion-subhead{font-size:13px;line-height:1.4;margin-bottom:10px}.completion-evidence{gap:6px;margin-bottom:8px}.completion-evidence-row{padding:7px 9px;border-radius:10px}.completion-evidence-label{margin-bottom:2px;font-size:9px}.completion-evidence-value{font-size:12px;line-height:1.32}.completion-stats{gap:8px;margin-bottom:8px}.completion-stat{padding:9px 8px 8px;border-radius:12px}.completion-stat-value{font-size:24px}.completion-stat-label{font-size:9px;margin-top:2px}.completion-stats--single .completion-stat-value{font-size:36px}.completion-cta-row{gap:4px;margin-top:4px;padding-top:6px;padding-bottom:0;bottom:0}.completion-cta-primary{padding:12px 18px;border-radius:12px}.completion-next-peek{font-size:11px;line-height:1.25}.completion-cta-secondary{padding:6px;font-size:12px}}@media(prefers-reduced-motion:reduce){.completion-sheet,.completion-headline,.completion-subhead,.completion-streak,.completion-cta-row{transition:opacity .01ms!important;transform:none!important}.completion-sheet.is-entering .completion-check-circle,.completion-sheet.is-entering .completion-check-tick{animation:none!important;stroke-dashoffset:0!important}.completion-sheet.is-entering .completion-headline,.completion-sheet.is-entering .completion-subhead,.completion-sheet.is-entering .completion-streak:not([hidden]),.completion-sheet.is-entering .completion-cta-row{opacity:1;transform:none}}html:has(.session-lesson-mode){scroll-behavior:smooth;scroll-padding-top:84px;scroll-padding-bottom:calc(96px + env(safe-area-inset-bottom,0px));scroll-snap-type:none}.session-lesson-mode{width:min(100% - 24px,640px);max-width:640px;padding-bottom:calc(104px + env(safe-area-inset-bottom,0px))}.session-lesson-mode .section{margin-bottom:18px}.session-lesson-mode .session-focus-intro,.session-lesson-mode .session-ideas-section,.session-lesson-mode .session-coach-section,.session-lesson-mode .session-proof-summary-section,.session-lesson-mode .session-practice-section,.session-lesson-mode .session-reflection-section,.session-lesson-mode .session-notes-section{scroll-margin-top:84px;scroll-snap-align:none;scroll-snap-stop:normal}.session-lesson-mode .session-idea-card,.session-lesson-mode .session-discussion-card{scroll-snap-stop:normal}.session-lesson-mode textarea,.session-lesson-mode input,.session-lesson-mode select{scroll-snap-align:none}.session-lesson-mode .session-focus-intro{padding-top:18px}.session-lesson-mode .session-shell-card{position:relative;overflow:visible;padding:20px;border-radius:18px;background:linear-gradient(145deg,color-mix(in srgb,var(--bg-card) 92%,var(--accent) 8%),color-mix(in srgb,var(--bg-secondary) 94%,var(--info) 6%))}.session-lesson-mode .session-shell-card:before{opacity:.12}.session-lesson-mode .session-shell-meta{padding-right:52px;margin-bottom:10px}.session-lesson-mode .session-focus-copy h1{max-width:14ch;font-size:clamp(1.7rem,6vw,2.45rem);line-height:1.04}.session-lesson-mode .session-shell-subtitle{max-width:30ch;margin-top:12px;font-size:clamp(1rem,3vw,1.2rem);line-height:1.42}.session-path-purpose,.session-section-note{max-width:58ch;margin:10px 0 0;color:var(--text-secondary);font-size:.92rem;line-height:1.45}.session-lesson-mode .session-overview{display:none}.session-lesson-mode .session-focus-actions{position:static;display:grid;grid-template-columns:1fr;gap:10px;margin-top:18px}.session-lesson-mode #sessionStartBtn{width:100%;min-height:56px;border-radius:15px;font-size:1.04rem}body.session-entry-active .session-lesson-mode .session-shell-card{display:none}.session-lesson-mode .session-listen-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:50px;border-color:color-mix(in srgb,var(--accent) 28%,var(--border));border-radius:15px;background:color-mix(in srgb,var(--bg-card) 92%,var(--accent) 8%);color:color-mix(in srgb,var(--text-primary) 82%,var(--accent) 18%);box-shadow:none}.session-lesson-mode .session-listen-btn:hover,.session-lesson-mode .session-listen-btn:focus-visible{border-color:color-mix(in srgb,var(--accent) 42%,var(--border));background:var(--accent-subtle);color:var(--accent)}.session-lesson-mode .session-listen-btn .icon{width:18px;height:18px}.session-lesson-mode #lectureDuration{display:none}.session-lesson-mode .session-more-menu{position:absolute;top:14px;right:14px;z-index:30;width:42px}.session-lesson-mode .session-more-menu summary.session-tools-btn{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;min-height:42px;padding:0;border-radius:12px;background:color-mix(in srgb,var(--bg-card) 70%,transparent);color:var(--text-secondary)}.session-lesson-mode .session-more-menu summary.session-tools-btn .icon{width:20px;height:20px}.session-lesson-mode .session-more-list{top:calc(100% + 10px);min-width:230px;max-height:min(62vh,480px)}.session-player-head{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;justify-content:stretch;gap:14px;margin-bottom:14px;color:var(--text-muted);font-size:.78rem;font-weight:900;letter-spacing:0;text-transform:uppercase}.session-exit-lesson-btn{justify-self:start;display:inline-flex;align-items:center;gap:6px;min-height:38px;padding:0 12px;border:1px solid color-mix(in srgb,var(--border) 72%,var(--accent) 18%);border-radius:999px;background:color-mix(in srgb,var(--bg-card) 74%,transparent);color:var(--text-secondary);font:inherit;font-size:.82rem;font-weight:900;text-transform:none;cursor:pointer}.session-exit-lesson-btn .icon{width:16px;height:16px}.session-player-label{justify-self:center}.session-player-head strong{justify-self:end;color:var(--text-primary);font-size:.92rem;font-weight:900;text-transform:none}.session-practice-player-head{display:none}.session-practice-player-head strong{justify-self:end;color:var(--text-primary);font-size:.92rem;font-weight:900}body.session-practice-immersive-active .session-practice-player-head{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:14px;margin-bottom:14px;color:var(--text-muted);font-size:.78rem;font-weight:900;letter-spacing:0;text-transform:uppercase}body.session-practice-immersive-active .session-practice-section>.session-section-head,body.session-practice-immersive-active .session-practice-complete-card{display:none!important}.session-lesson-mode .session-ideas-section{display:none}body.session-immersive-active .session-lesson-mode .session-ideas-section{display:block}.session-lesson-mode .session-ideas-section>.session-section-head{display:none}.session-lesson-mode .session-idea-stage{overflow:visible}.session-lesson-mode .session-idea-carousel-toolbar{margin-bottom:12px}.session-lesson-mode .session-idea-progress{width:min(100%,360px);margin-inline:auto;text-align:center}.session-lesson-mode .session-idea-progress span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.session-lesson-mode .session-idea-progress-bars{justify-content:center;gap:8px}.session-lesson-mode .session-idea-progress-bar{height:8px;border-radius:999px}.session-lesson-mode .session-ideas-section .session-idea-carousel{--session-idea-card-gutter: 0px;gap:14px;padding:2px 0 12px;margin-inline:0;scroll-padding-inline:0;align-items:flex-start;scroll-snap-type:x proximity;touch-action:pan-y}.session-lesson-mode .session-ideas-section .session-idea-carousel .session-idea-card{flex:0 0 100%;height:clamp(520px,68svh,680px);min-height:0;max-height:680px;border-radius:18px;position:relative;overflow:hidden;perspective:1400px;opacity:.38;transform:scale(.985);transition:opacity var(--transition),transform var(--transition),filter var(--transition);background:linear-gradient(145deg,color-mix(in srgb,var(--bg-secondary) 92%,var(--accent) 8%),color-mix(in srgb,var(--bg-card) 94%,var(--info) 6%))}.session-lesson-mode .session-ideas-section .session-idea-carousel .session-idea-card:before{opacity:.1}.session-lesson-mode .session-ideas-section .session-idea-carousel .session-idea-card.is-active{opacity:1;transform:none;box-shadow:0 20px 54px -42px color-mix(in srgb,var(--accent) 70%,transparent),inset 0 1px color-mix(in srgb,#fff 7%,transparent)}.session-idea-prelude,.session-idea-think-block{display:none}.session-lesson-mode .session-idea-card.is-unrevealed{justify-content:center;cursor:pointer}.session-lesson-mode .session-idea-card.is-unrevealed .session-card-utilities,.session-lesson-mode .session-idea-card.is-unrevealed .accordion-content{display:none!important}.session-lesson-mode .session-idea-card.is-unrevealed .session-idea-prelude,.session-lesson-mode .session-idea-card.is-unrevealed .session-idea-think-block{position:relative;z-index:1;display:grid;gap:12px;padding-inline:24px}.session-lesson-mode .session-idea-card.is-unrevealed .session-idea-prelude{padding-top:clamp(26px,7svh,78px);padding-bottom:4px}.session-idea-prelude-kicker{color:color-mix(in srgb,var(--accent) 84%,var(--text-secondary) 16%);font-size:.78rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.session-lesson-mode .session-idea-card.is-unrevealed .session-idea-think-block{padding-top:14px;padding-bottom:clamp(26px,7svh,76px)}.session-idea-think-question{max-width:24ch;margin:0;color:color-mix(in srgb,var(--text-secondary) 88%,var(--text-primary) 12%);font-size:clamp(1.08rem,3.5vw,1.28rem);font-weight:760;line-height:1.42;text-wrap:balance}.session-idea-tap-hint{color:color-mix(in srgb,var(--text-muted) 82%,var(--accent) 18%);font-size:.86rem;font-weight:850}.session-card-utilities{position:absolute;top:18px;right:18px;z-index:4;display:flex;align-items:center;gap:8px}.session-card-utility-btn{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;padding:0;border:1px solid color-mix(in srgb,var(--border) 68%,var(--accent) 22%);border-radius:999px;background:color-mix(in srgb,var(--bg-card) 72%,transparent);color:color-mix(in srgb,var(--text-secondary) 78%,var(--accent) 22%);cursor:pointer;backdrop-filter:blur(12px);box-shadow:inset 0 1px color-mix(in srgb,#fff 6%,transparent);transition:transform var(--transition),border-color var(--transition),background var(--transition),color var(--transition),opacity var(--transition)}.session-card-utility-btn:hover,.session-card-utility-btn:focus-visible{border-color:color-mix(in srgb,var(--accent) 56%,var(--border));background:var(--accent-subtle);color:var(--accent);opacity:1;transform:translateY(-1px)}.session-card-utility-btn .icon{width:18px;height:18px}.session-card-utility-btn .idea-action-icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px}.session-card-utility-btn .idea-action-label{display:none}.session-card-utility-btn .tts-audio-spinner,.session-card-utility-btn .session-card-utility-spinner{width:17px;height:17px}.session-card-utility-btn.tts-loading,.session-card-utility-btn.is-saving{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 48%,var(--border));background:color-mix(in srgb,var(--accent) 12%,var(--bg-card))}.session-card-utility-btn.tts-playing,.session-card-utility-btn.tts-paused{color:#fff;border-color:color-mix(in srgb,var(--accent) 78%,transparent);background:var(--accent);box-shadow:0 14px 30px -24px color-mix(in srgb,var(--accent) 90%,transparent),inset 0 1px color-mix(in srgb,#fff 16%,transparent)}.session-card-utility-btn.is-saved{color:#fff!important;background:var(--success)!important;border-color:color-mix(in srgb,var(--success) 82%,transparent)!important}.session-card-utility-spinner{width:17px;height:17px;border:2px solid color-mix(in srgb,currentColor 22%,transparent);border-top-color:currentColor;border-radius:999px;animation:lectureAudioSpin .7s linear infinite}.session-card-flip-inner{position:absolute;inset:0;display:block;transform-style:preserve-3d;transition:transform .52s var(--ease-out-expo)}.session-idea-card.is-revealed .session-card-flip-inner{transform:rotateY(180deg)}.session-idea-card.is-revealed .session-card-face-back{justify-content:center}.session-card-face{position:absolute;inset:0;display:flex;flex-direction:column;backface-visibility:hidden;-webkit-backface-visibility:hidden;overflow:hidden}.session-card-face-front{justify-content:center;gap:16px;padding:28px;background:linear-gradient(145deg,color-mix(in srgb,var(--bg-secondary) 94%,var(--accent) 6%),color-mix(in srgb,var(--bg-card) 94%,var(--info) 6%))}.session-card-face-back{transform:rotateY(180deg);background:linear-gradient(145deg,color-mix(in srgb,var(--bg-secondary) 92%,var(--accent) 8%),color-mix(in srgb,var(--bg-card) 94%,var(--info) 6%))}.session-card-front-kicker{color:var(--accent);font-size:.78rem;font-weight:900;letter-spacing:0;text-transform:uppercase}.session-card-face-front .session-idea-num{width:auto;height:auto;min-width:0;min-height:0;padding:0;background:transparent;color:color-mix(in srgb,var(--accent) 88%,#fff 12%);font-size:1rem}.session-card-front-title{width:min(100%,18ch);margin:0;color:var(--text-primary);font-size:2rem;line-height:1.04;overflow-wrap:anywhere;word-break:normal;text-wrap:balance}.session-card-front-prompt{max-width:32ch;margin:0;color:var(--text-secondary);font-size:1.08rem;line-height:1.55}.session-card-front-hint{color:color-mix(in srgb,var(--text-muted) 82%,var(--accent) 18%);font-size:.86rem;font-weight:850}.session-idea-card:not(.is-revealed) .session-card-face-front{cursor:pointer}.session-card-reveal-btn{width:100%;min-height:54px;margin-top:8px;border:0;border-radius:15px;background:var(--accent);color:#fff;font:inherit;font-weight:900;cursor:pointer;box-shadow:0 18px 38px -30px color-mix(in srgb,var(--accent) 90%,transparent)}.session-card-reveal-btn:hover,.session-card-reveal-btn:focus-visible{filter:brightness(1.06)}.session-lesson-mode .session-idea-trigger{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:12px;padding:24px 24px 8px;cursor:default}.session-lesson-mode .session-idea-card.is-unrevealed .session-idea-trigger{padding:4px 24px 0;cursor:pointer}.session-lesson-mode .session-idea-trigger .arrow{display:none}.session-lesson-mode .session-idea-num{width:auto;height:auto;min-width:30px;min-height:42px;align-items:center;justify-content:flex-start;padding-right:104px;background:transparent;color:var(--accent);font-size:.95rem}.session-lesson-mode .session-idea-title{display:block;width:100%;max-width:min(100%,24ch);font-size:clamp(1.25rem,4.4vw,1.65rem);line-height:1.12;overflow-wrap:normal;word-break:normal;hyphens:none;text-wrap:balance}.session-lesson-mode .session-idea-card .accordion-body{flex:0 0 auto;min-height:auto;overflow:visible;padding:14px 24px 20px;font-size:clamp(1.05rem,3.8vw,1.28rem);line-height:1.72;overflow-wrap:anywhere;word-break:break-word}.session-lesson-mode .session-idea-carousel.is-swipe-dragging,.session-lesson-mode .session-discussion-carousel.is-swipe-dragging{cursor:grabbing;scroll-snap-type:none}.session-lesson-mode .session-idea-carousel.is-swipe-dragging *,.session-lesson-mode .session-discussion-carousel.is-swipe-dragging *{user-select:none}.session-lesson-mode .session-idea-card.is-understood{border-color:color-mix(in srgb,var(--success) 38%,var(--accent))}.session-lesson-mode .session-idea-card .idea-actions,.session-lesson-mode [id^=ideaExpand]{display:none!important}.session-lesson-actions{position:relative;z-index:2;display:grid;grid-template-columns:1fr;gap:10px;margin:0 24px 24px;padding-top:14px;flex:0 0 auto}.session-lesson-action-bar{display:none}body.session-immersive-active .session-lesson-action-bar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%;margin-top:10px;padding:8px;border:1px solid color-mix(in srgb,var(--border) 64%,var(--accent) 20%);border-radius:18px;background:color-mix(in srgb,var(--bg-card) 84%,transparent);box-shadow:0 -18px 48px -40px color-mix(in srgb,var(--accent) 82%,transparent),inset 0 1px color-mix(in srgb,#fff 7%,transparent)}body.session-immersive-active .session-lesson-action-bar.is-empty{display:none!important}body.session-immersive-active .session-lesson-action-bar.is-transitioning{cursor:progress}.session-idea-completion-choice{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;margin-top:10px;padding:12px;border:1px solid color-mix(in srgb,var(--border) 66%,var(--accent) 24%);border-radius:18px;background:linear-gradient(145deg,color-mix(in srgb,var(--bg-card) 90%,var(--success) 6%),color-mix(in srgb,var(--bg-secondary) 94%,transparent));box-shadow:0 14px 34px -30px color-mix(in srgb,var(--success) 60%,transparent),inset 0 1px color-mix(in srgb,#fff 7%,transparent)}.session-idea-completion-choice[hidden]{display:none!important}.session-idea-completion-choice span{display:block;margin-bottom:3px;color:color-mix(in srgb,var(--success) 76%,var(--accent) 24%);font-size:.7rem;font-weight:900;letter-spacing:0;text-transform:uppercase}.session-idea-completion-choice strong{display:block;color:var(--text-primary);font-size:.98rem;line-height:1.2}.session-idea-completion-choice p{margin:4px 0 0;color:var(--text-secondary);font-size:.82rem;line-height:1.4}.session-idea-finish-btn{min-height:44px;padding:0 14px;border:1px solid color-mix(in srgb,var(--success) 48%,var(--border));border-radius:14px;background:color-mix(in srgb,var(--success) 16%,var(--bg-card));color:color-mix(in srgb,var(--success) 82%,var(--text-primary) 18%);font:inherit;font-size:.86rem;font-weight:900;cursor:pointer;white-space:nowrap}.session-idea-finish-btn:hover,.session-idea-finish-btn:focus-visible{border-color:color-mix(in srgb,var(--success) 72%,var(--accent));background:color-mix(in srgb,var(--success) 22%,var(--bg-card));outline:0}.session-lesson-secondary-btn,.session-lesson-primary-btn{min-height:52px;border-radius:15px;font:inherit;font-weight:900;cursor:pointer}.session-lesson-secondary-btn{border:1px solid color-mix(in srgb,var(--border) 76%,var(--accent) 22%);background:color-mix(in srgb,var(--bg-secondary) 72%,transparent);color:var(--text-secondary)}.session-lesson-primary-btn{border:0;background:var(--accent);color:#fff;box-shadow:0 18px 38px -30px color-mix(in srgb,var(--accent) 90%,transparent)}.session-lesson-secondary-btn:disabled,.session-lesson-primary-btn:disabled{cursor:default;opacity:.48;filter:none}.session-lesson-secondary-btn:disabled{color:color-mix(in srgb,var(--text-muted) 78%,transparent);border-color:color-mix(in srgb,var(--border) 58%,transparent)}.session-lesson-secondary-btn:hover,.session-lesson-secondary-btn:focus-visible{color:var(--text-primary);border-color:color-mix(in srgb,var(--accent) 46%,var(--border))}.session-lesson-primary-btn:hover,.session-lesson-primary-btn:focus-visible{filter:brightness(1.06)}.session-lesson-mode .session-idea-carousel .accordion-content{flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y}.session-idea-card:not(.is-revealed) .session-card-face-back{pointer-events:none}.session-idea-card.is-revealed .session-card-face-front{pointer-events:none}.session-practice-this-btn,.session-explain-menu summary{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:54px;border-radius:15px;font:inherit;font-weight:900;cursor:pointer}.session-practice-this-btn{border:0;background:var(--accent);color:#fff;box-shadow:0 18px 38px -30px color-mix(in srgb,var(--accent) 90%,transparent)}.session-practice-this-btn:hover,.session-practice-this-btn:focus-visible{filter:brightness(1.06)}.session-explain-menu{position:relative}.session-explain-menu summary{width:100%;min-width:112px;padding:0 18px;border:1px solid color-mix(in srgb,var(--border) 78%,var(--accent) 22%);background:color-mix(in srgb,var(--bg-card) 84%,transparent);color:var(--text-secondary);list-style:none}.session-explain-menu summary::-webkit-details-marker{display:none}.session-explain-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:8px;padding:8px;border:1px solid color-mix(in srgb,var(--border) 78%,var(--accent) 22%);border-radius:12px;background:color-mix(in srgb,var(--bg-card) 78%,transparent);box-shadow:inset 0 1px color-mix(in srgb,#fff 6%,transparent)}.session-explain-options button{min-height:42px;padding:0 12px;border:1px solid color-mix(in srgb,var(--border) 70%,transparent);border-radius:10px;background:color-mix(in srgb,var(--bg-secondary) 56%,transparent);color:var(--text-secondary);font:inherit;font-size:.9rem;font-weight:800;text-align:center;cursor:pointer}.session-explain-options button:hover,.session-explain-options button:focus-visible{background:var(--bg-hover);color:var(--text-primary)}.session-lesson-mode .session-idea-carousel-actions,.session-lesson-mode .session-practice-carousel-actions{grid-template-columns:34px minmax(0,82px) 34px;gap:6px;width:min(100%,180px);margin:2px auto 0;padding:4px;border-radius:14px;background:color-mix(in srgb,var(--bg-card) 72%,transparent)}.session-lesson-mode .session-idea-list-toggle,.session-lesson-mode .session-practice-list-toggle{min-height:36px;border-radius:11px;font-size:.9rem}.session-lesson-mode .session-idea-nav-btn,.session-lesson-mode .session-practice-nav-btn{width:34px;height:36px;padding:0;min-height:36px;border-radius:10px}.session-lesson-mode .session-practice-carousel-actions{grid-template-columns:38px minmax(0,112px) 38px;gap:12px;width:min(100%,276px);padding:6px;border-radius:16px}.session-lesson-mode .session-practice-list-toggle{min-height:42px;border-radius:13px}.session-lesson-mode .session-practice-nav-btn{width:38px;height:42px;min-height:42px;border-radius:12px}.session-lesson-mode .session-idea-completion-choice{grid-template-columns:1fr}.session-lesson-mode .session-idea-finish-btn{width:100%}.session-lesson-mode .session-practice-section #discussions.session-discussion-carousel{--session-practice-card-gutter: 0px;align-items:flex-start;scroll-snap-type:x proximity;touch-action:pan-y}.session-lesson-mode .session-discussion-carousel .session-discussion-card.card{flex:0 0 100%;height:clamp(500px,62svh,620px);min-height:0;max-height:620px;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y;opacity:.38;transform:scale(.985)}.session-lesson-mode .session-discussion-carousel .session-discussion-card.card.is-active{opacity:1;transform:none}.session-lesson-mode .session-discussion-writing{flex:0 0 auto;min-height:0}.session-lesson-mode .session-discussion-textarea{flex:0 0 auto;max-height:min(42svh,320px);overflow-x:hidden;overflow-y:auto;overflow-wrap:anywhere;word-break:break-word;white-space:pre-wrap;-webkit-overflow-scrolling:touch;touch-action:pan-y}.session-lesson-mode .session-discussion-actions{flex:0 0 auto;min-width:0;grid-template-columns:minmax(0,1fr) auto;gap:8px 10px;margin-top:12px;padding-top:12px}.session-lesson-mode .session-char-count,.session-lesson-mode .session-feedback-actions{min-width:0}.session-lesson-mode .session-feedback-actions{grid-column:1 / -1;justify-content:stretch}.session-lesson-mode .session-feedback-actions .session-feedback-btn,.session-lesson-mode .session-feedback-view-btn,.session-lesson-mode .session-feedback-next-btn{width:100%}.session-lesson-mode .session-discussion-actions>.text-muted{justify-self:end;text-align:right}.session-lesson-mode .session-reflection-card.card{min-height:min(660px,70svh);padding:clamp(22px,4vw,30px)}.session-lesson-mode .session-reflection-writing{min-height:0}.session-lesson-mode .session-reflection-textarea{min-height:220px;overflow-x:hidden;overflow-y:auto;overflow-wrap:anywhere;word-break:break-word;white-space:pre-wrap;-webkit-overflow-scrolling:touch;touch-action:pan-y}.session-lesson-mode .session-reflection-actions{min-width:0;grid-template-columns:minmax(0,1fr) auto;gap:8px 10px}.session-lesson-mode .session-reflection-actions .session-feedback-actions{min-width:0}.session-lesson-mode .session-reflection-actions .session-feedback-btn,.session-lesson-mode .session-reflection-actions .session-feedback-view-btn,.session-lesson-mode .session-reflection-actions .session-feedback-next-btn{min-width:132px}.session-sheet-overlay{position:fixed;inset:0;z-index:3200;display:flex;align-items:flex-end;justify-content:center;padding:20px;background:color-mix(in srgb,#020617 48%,transparent);backdrop-filter:blur(10px)}body.session-sheet-open{overflow:hidden}.session-sheet-overlay[hidden]{display:none!important}.session-bottom-sheet{width:min(100%,640px);max-height:min(88svh,760px);display:flex;flex-direction:column;gap:16px;padding:10px 18px 18px;border:1px solid color-mix(in srgb,var(--border) 64%,var(--accent) 30%);border-radius:24px 24px 18px 18px;background:linear-gradient(145deg,color-mix(in srgb,var(--bg-card) 96%,var(--accent) 4%),color-mix(in srgb,var(--bg-secondary) 94%,transparent));box-shadow:0 -18px 70px -44px color-mix(in srgb,var(--accent) 70%,transparent),inset 0 1px color-mix(in srgb,#fff 8%,transparent)}.session-sheet-handle{width:46px;height:5px;margin:0 auto 2px;border-radius:999px;background:color-mix(in srgb,var(--text-muted) 44%,transparent)}.session-sheet-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.session-sheet-head-actions{display:inline-flex;align-items:center;gap:8px;flex:0 0 auto}.session-sheet-head h2{margin:4px 0 0;font-size:clamp(1.25rem,4vw,1.8rem);line-height:1.15}.session-sheet-close,.session-sheet-icon-btn{width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;border:1px solid color-mix(in srgb,var(--border) 70%,transparent);border-radius:999px;background:color-mix(in srgb,var(--bg-secondary) 72%,transparent);color:var(--text-secondary);cursor:pointer}.session-sheet-icon-btn{opacity:.72}.session-sheet-icon-btn:hover,.session-sheet-icon-btn:focus-visible{opacity:1;color:var(--accent);border-color:color-mix(in srgb,var(--accent) 55%,var(--border))}.session-sheet-save-btn.is-saved{color:#fff;border-color:color-mix(in srgb,var(--success) 82%,transparent);background:var(--success)}.session-sheet-body{min-height:160px;max-height:min(58svh,520px);overflow-y:auto;overscroll-behavior:contain;padding:4px 4px 2px;color:var(--text-secondary);font-size:1.08rem;line-height:1.66;outline:none}.session-sheet-body p{margin:0 0 1em}.session-sheet-body p:last-child{margin-bottom:0}.session-sheet-body.is-streaming{color:color-mix(in srgb,var(--text-primary) 92%,var(--text-secondary) 8%)}.session-sheet-body.is-streaming p:last-child:after{content:"";display:inline-block;width:2px;height:.95em;margin-left:.18em;border-radius:999px;background:var(--accent);vertical-align:-.12em;animation:lectureStreamingCaret .92s ease-in-out infinite}.session-explain-loading{min-height:132px;display:flex;align-items:center;justify-content:center;gap:10px;color:var(--text-secondary);font-size:.92rem;font-weight:800}.session-explain-loading .generation-spinner{width:22px;height:22px}.session-explain-loading-dots{display:inline-flex;align-items:center;gap:3px}.session-explain-loading-dots i{width:4px;height:4px;border-radius:999px;background:currentColor;opacity:.42;animation:sessionExplainDotPulse 1.05s ease-in-out infinite}.session-explain-loading-dots i:nth-child(2){animation-delay:.12s}.session-explain-loading-dots i:nth-child(3){animation-delay:.24s}@keyframes sessionExplainDotPulse{0%,to{opacity:.32;transform:translateY(0)}45%{opacity:1;transform:translateY(-2px)}}.session-sheet-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.session-explain-mode-menu{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:9px;border:1px solid color-mix(in srgb,var(--border) 66%,var(--accent) 22%);border-radius:16px;background:color-mix(in srgb,var(--bg-secondary) 72%,transparent);box-shadow:inset 0 1px color-mix(in srgb,#fff 7%,transparent)}.session-explain-mode-menu[hidden]{display:none!important}.session-explain-mode-menu button{min-width:0;min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0 10px;border:1px solid color-mix(in srgb,var(--border) 70%,transparent);border-radius:12px;background:color-mix(in srgb,var(--bg-card) 68%,transparent);color:var(--text-secondary);font:inherit;font-size:.82rem;font-weight:860;letter-spacing:0;cursor:pointer}.session-explain-mode-menu button svg{width:16px;height:16px;flex:0 0 auto}.session-explain-mode-menu button:hover,.session-explain-mode-menu button:focus-visible,.session-explain-mode-menu button.is-active{border-color:color-mix(in srgb,var(--accent) 64%,var(--border));background:var(--accent-subtle);color:var(--accent)}.session-explain-mode-menu button.is-active{cursor:default}@media(max-width:520px){.session-explain-mode-menu{grid-template-columns:repeat(2,minmax(0,1fr))}}.session-sheet-action,.concept-audio-play-btn{min-height:50px;justify-content:center;border-radius:15px}.session-sheet-action .idea-action-icon,.session-sheet-action .idea-action-label{opacity:1;visibility:visible}.session-sheet-mode-btn{min-width:0}.session-sheet-mode-btn[aria-expanded=true]{border-color:color-mix(in srgb,var(--accent) 66%,var(--border));background:var(--accent-subtle);color:var(--accent)}.session-sheet-overlay.is-loading .session-sheet-actions,.session-sheet-overlay.is-error .session-sheet-actions{opacity:.52;pointer-events:none}.session-practice-feedback-sheet{max-width:620px}.session-practice-feedback-body .feedback-card{background:transparent!important;border-color:color-mix(in srgb,var(--border) 60%,var(--accent) 18%)!important}.session-practice-feedback-body .feedback-card-body{gap:12px!important;padding:14px!important}.session-practice-feedback-body .feedback-card-body p{line-height:1.58!important}.session-practice-feedback-loading,.session-practice-feedback-empty{display:flex;align-items:center;gap:14px;min-height:160px;padding:18px;border:1px solid color-mix(in srgb,var(--border) 70%,transparent);border-radius:18px;background:color-mix(in srgb,var(--bg-secondary) 68%,transparent)}.session-practice-feedback-loading .generation-spinner{width:28px;height:28px;border-width:2px;flex:0 0 auto}.session-practice-feedback-loading strong,.session-practice-feedback-empty strong{display:block;color:var(--text-primary);font-size:1rem;margin-bottom:4px}.session-practice-feedback-loading p,.session-practice-feedback-empty p{margin:0;color:var(--text-secondary)}.session-feedback-loading-steps{display:flex;flex-direction:column;gap:5px;margin-top:12px;color:var(--text-muted);font-size:.78rem;font-weight:760}.session-feedback-loading-steps span{position:relative;padding-left:14px}.session-feedback-loading-steps span:before{content:"";position:absolute;left:0;top:.55em;width:5px;height:5px;border-radius:999px;background:color-mix(in srgb,var(--accent) 76%,transparent)}.session-feedback-loading-steps span:nth-child(2){opacity:.72}.session-feedback-loading-steps span:nth-child(3){opacity:.48}.session-practice-feedback-sheet-actions{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr)}.session-audio-sheet{max-width:420px}.concept-audio-play-btn{width:100%;background:var(--accent);color:#fff}.concept-audio-speed{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.concept-audio-speed button{min-height:44px;border:1px solid color-mix(in srgb,var(--border) 70%,transparent);border-radius:14px;background:color-mix(in srgb,var(--bg-secondary) 70%,transparent);color:var(--text-secondary);font:inherit;font-weight:850;cursor:pointer}.concept-audio-speed button.is-active{border-color:color-mix(in srgb,var(--accent) 80%,transparent);background:var(--accent-subtle);color:var(--accent)}.concept-audio-foot{display:flex;align-items:center;justify-content:flex-start;gap:12px;color:var(--text-muted);font-weight:800}body:has(.session-lesson-mode) .tts-mini-bar{display:none!important}body.session-sheet-open .session-audio-pill{display:none!important}body.session-completion-open .nav,body.session-completion-open .mobile-nav,body.session-completion-open #tutorFab,body.session-completion-open .session-audio-pill{opacity:0;pointer-events:none}.session-audio-pill{position:fixed;right:12px;bottom:calc(92px + env(safe-area-inset-bottom,0px));left:auto;z-index:1900;display:grid;grid-template-columns:38px minmax(0,1fr) 34px;align-items:center;gap:8px;width:min(244px,calc(100vw - 24px));min-height:52px;padding:6px;border:1px solid color-mix(in srgb,var(--border) 62%,var(--accent) 26%);border-radius:999px;background:linear-gradient(145deg,color-mix(in srgb,var(--bg-card) 92%,var(--accent) 8%),color-mix(in srgb,var(--bg-secondary) 92%,transparent));box-shadow:0 16px 42px -30px color-mix(in srgb,var(--accent) 76%,transparent);backdrop-filter:blur(16px)}.session-audio-pill[hidden]{display:none!important}.session-audio-pill-play,.session-audio-pill-close{display:inline-flex;align-items:center;justify-content:center;border:1px solid color-mix(in srgb,var(--border) 68%,transparent);border-radius:999px;background:color-mix(in srgb,var(--bg-secondary) 78%,transparent);color:var(--text-secondary);cursor:pointer}.session-audio-pill-play{width:38px;height:38px;color:#fff;background:var(--accent);border-color:color-mix(in srgb,var(--accent) 82%,transparent)}.session-audio-pill-close{width:34px;height:34px}.session-audio-pill-copy{min-width:0;display:grid;gap:2px}.session-audio-pill-copy strong,.session-audio-pill-copy span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.session-audio-pill-copy strong{color:var(--text-primary);font-size:.82rem}.session-audio-pill-copy span{color:var(--text-muted);font-size:.72rem;font-weight:800}body.session-audio-pill-active:has(.session-focus-page) .tutor-fab{bottom:calc(152px + env(safe-area-inset-bottom,0px))}.session-lesson-mode .session-practice-nav-btn svg{width:19px;height:19px}.session-practice-section[hidden]{display:none!important}body:has(.session-lesson-mode):not(.session-practice-complete) .session-reflection-section,body:has(.session-lesson-mode):not(.session-practice-complete) .session-notes-section,body:has(.session-lesson-mode):not(.session-practice-complete) .session-nav-row{display:none}.session-practice-complete-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;margin-top:18px;padding:16px;border:1px solid color-mix(in srgb,var(--border) 70%,var(--accent) 18%);border-radius:18px;background:linear-gradient(145deg,color-mix(in srgb,var(--bg-card) 94%,var(--accent) 6%),color-mix(in srgb,var(--bg-secondary) 94%,transparent))}.session-practice-complete-card[hidden]{display:none!important}.session-practice-complete-card h3{margin:4px 0 6px;font-size:clamp(1.05rem,3.6vw,1.25rem);line-height:1.2}.session-practice-complete-card p{margin:0;color:var(--text-secondary);line-height:1.5}.session-practice-complete-card .btn{min-width:168px}.session-lesson-mode #nextBtn.disabled,.session-lesson-mode #nextBtn[aria-disabled=true]{opacity:.48;filter:grayscale(.28);pointer-events:auto;cursor:not-allowed}.session-lesson-mode .session-nav-row{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:10px;margin:20px 0 10px;padding-bottom:calc(56px + env(safe-area-inset-bottom,0px))}.session-lesson-mode .session-nav-row .btn{min-height:56px;border-radius:17px;font-weight:900;letter-spacing:0;box-shadow:none}.session-lesson-mode .session-nav-row .btn .icon{width:18px;height:18px}.session-lesson-mode #prevBtn{color:color-mix(in srgb,var(--text-secondary) 82%,transparent);border-color:color-mix(in srgb,var(--border) 70%,transparent);background:color-mix(in srgb,var(--bg-card) 70%,transparent)}.session-lesson-mode #nextBtn{color:#fff;border-color:color-mix(in srgb,var(--accent) 84%,transparent);background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 96%,#fff 4%),color-mix(in srgb,var(--accent) 74%,var(--info) 26%));box-shadow:0 18px 44px -32px color-mix(in srgb,var(--accent) 88%,transparent),inset 0 1px color-mix(in srgb,#fff 16%,transparent)}.session-lesson-mode #nextBtn:hover,.session-lesson-mode #nextBtn:focus-visible{transform:translateY(-1px);filter:brightness(1.04)}.session-lesson-mode .session-coach-section{margin-top:12px}.session-lesson-mode .session-coach-card{border-radius:14px;background:linear-gradient(135deg,color-mix(in srgb,var(--bg-card) 92%,var(--accent) 6%),color-mix(in srgb,var(--bg-secondary) 94%,var(--success) 4%))}.session-lesson-mode .session-coach-action{min-width:140px;border-radius:12px}.session-immersive-chrome-hidden{opacity:0!important;pointer-events:none!important}@media(max-width:768px){.session-lesson-mode .session-discussion-carousel .session-discussion-card.card{height:auto;min-height:min(500px,calc(100svh - 240px));max-height:none;overflow:visible;padding:20px 16px 18px}.session-lesson-mode .session-discussion-prompt{grid-template-columns:32px minmax(0,1fr);gap:10px}.session-lesson-mode .session-discussion-question{font-size:clamp(1.08rem,4.6vw,1.28rem)}.session-lesson-mode .session-discussion-writing{margin-top:16px}.session-lesson-mode .session-discussion-actions{padding-top:14px}.session-lesson-mode .session-reflection-card.card{grid-template-rows:auto auto auto auto;min-height:0;padding:20px 16px 18px;border-radius:18px}.session-lesson-mode .session-reflection-prompt{grid-template-columns:32px minmax(0,1fr);gap:10px;max-height:min(28svh,220px);overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch}.session-lesson-mode .session-reflection-copy p{font-size:clamp(1.12rem,4.8vw,1.36rem);line-height:1.3}.session-lesson-mode .textarea.session-reflection-textarea{height:min(260px,31svh);min-height:190px;padding:18px;border-radius:18px;font-size:1.06rem;line-height:1.58}.session-lesson-mode .session-reflection-actions{grid-template-columns:minmax(0,1fr);align-items:stretch}.session-lesson-mode .session-reflection-status{justify-content:space-between}.session-lesson-mode .session-reflection-actions .session-feedback-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));justify-content:stretch;width:100%}.session-lesson-mode .session-reflection-actions .session-feedback-actions:has(#reflectionFeedbackBtn:not([hidden])){grid-template-columns:1fr}.session-lesson-mode .session-reflection-actions .session-feedback-btn,.session-lesson-mode .session-reflection-actions .session-feedback-view-btn,.session-lesson-mode .session-reflection-actions .session-feedback-next-btn{width:100%;min-height:48px;border-radius:14px}.session-lesson-mode .session-reflection-path{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.session-lesson-mode .session-reflection-path-step{grid-template-columns:minmax(0,1fr);align-items:start;padding:8px 6px;text-align:center}.session-lesson-mode .session-reflection-path-step span{font-size:.66rem}.session-lesson-mode .session-reflection-path-step strong{font-size:.82rem}body.session-immersive-active{overflow:hidden}body.session-immersive-active .nav,body.session-immersive-active .mobile-nav,body.session-immersive-active #tutorFab,body.session-immersive-active .session-audio-pill{opacity:0;pointer-events:none}body.session-immersive-active .session-lesson-mode .session-ideas-section{position:fixed;inset:0;z-index:2400;display:flex;flex-direction:column;width:100%;height:100svh;min-height:100svh;margin:0;padding:calc(12px + env(safe-area-inset-top,0px)) 12px calc(12px + env(safe-area-inset-bottom,0px));border:0;border-radius:0;background:var(--bg-primary);overflow:hidden}body.session-immersive-active .session-player-head{flex:0 0 auto;margin-bottom:8px}body.session-immersive-active .session-idea-stage{flex:1 1 auto;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto auto auto;gap:7px;overflow:hidden}body.session-immersive-active .session-idea-carousel-toolbar,body.session-immersive-active .session-idea-carousel-actions{flex:0 0 auto}body.session-immersive-active .session-idea-carousel-toolbar{margin:0 0 2px}body.session-immersive-active .session-idea-carousel-actions{position:static;bottom:auto;margin:0 auto}body.session-immersive-active .session-idea-completion-choice{position:static;z-index:1;display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:28px;margin:-1px auto 0;padding:0;border:0;background:transparent;box-shadow:none;opacity:.64;backdrop-filter:none}body.session-immersive-active .session-idea-completion-choice span,body.session-immersive-active .session-idea-completion-choice p{display:none}body.session-immersive-active .session-idea-completion-choice strong{color:var(--text-muted);font-size:.74rem;font-weight:760;line-height:1.2;white-space:nowrap}body.session-immersive-active .session-ideas-section .session-idea-carousel{--session-idea-card-gutter: clamp(8px, 2.4vw, 12px);flex:1 1 auto;min-height:0;align-items:stretch;gap:var(--session-idea-card-gutter);padding:0 calc(var(--session-idea-card-gutter) * 2);scroll-padding-inline:calc(var(--session-idea-card-gutter) * 2);overflow-x:auto;overflow-y:hidden;touch-action:pan-y}body.session-immersive-active .session-ideas-section .session-idea-carousel .session-idea-card{flex:0 0 100%;height:100%;min-height:0;max-height:none;border-radius:18px}body.session-immersive-active .session-lesson-mode .session-idea-carousel .accordion-content{flex:0 1 auto;min-height:0;max-height:min(52svh,420px)}body.session-immersive-active .session-lesson-action-bar{position:relative;z-index:6;margin-top:0;padding:6px;padding-bottom:max(6px,env(safe-area-inset-bottom,0px));border-radius:16px}body.session-immersive-active .session-idea-finish-btn{width:auto;min-height:28px;padding:0 4px;border-color:transparent;border-radius:8px;background:transparent;color:color-mix(in srgb,var(--text-muted) 72%,var(--success) 28%);font-size:.74rem;font-weight:800;box-shadow:none}body.session-immersive-active .session-idea-finish-btn:hover,body.session-immersive-active .session-idea-finish-btn:focus-visible{border-color:color-mix(in srgb,var(--success) 30%,transparent);background:color-mix(in srgb,var(--success) 8%,transparent);color:color-mix(in srgb,var(--text-secondary) 78%,var(--success) 22%)}body.session-practice-immersive-active{overflow:hidden}body.session-practice-immersive-active .nav,body.session-practice-immersive-active .mobile-nav,body.session-practice-immersive-active #tutorFab,body.session-practice-immersive-active .session-audio-pill{opacity:0;pointer-events:none}body.session-practice-immersive-active .session-lesson-mode .session-practice-section{position:fixed;inset:0;z-index:2400;display:flex;flex-direction:column;width:100%;height:100svh;min-height:100svh;margin:0;padding:calc(12px + env(safe-area-inset-top,0px)) 12px calc(12px + env(safe-area-inset-bottom,0px));border:0;border-radius:0;background:var(--bg-primary);overflow:hidden}body.session-practice-immersive-active .session-practice-player-head{flex:0 0 auto;margin-bottom:8px}body.session-practice-immersive-active .session-practice-back-btn{max-width:150px;white-space:nowrap}body.session-practice-immersive-active .session-practice-carousel-toolbar{flex:0 0 auto;margin:0 0 8px}body.session-practice-immersive-active .session-practice-progress{width:min(100%,360px)}body.session-practice-immersive-active .session-practice-progress span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}body.session-practice-immersive-active .session-practice-progress-bars{gap:8px}body.session-practice-immersive-active .session-practice-progress-bar{height:8px;border-radius:999px}body.session-practice-immersive-active .session-practice-section #discussions.session-discussion-carousel{--session-practice-card-gutter: clamp(8px, 2.4vw, 12px);flex:1 1 auto;min-height:0;align-items:stretch;gap:var(--session-practice-card-gutter);padding:0 calc(var(--session-practice-card-gutter) * 2);scroll-padding-inline:calc(var(--session-practice-card-gutter) * 2);overflow-x:auto;overflow-y:hidden;touch-action:pan-y}body.session-practice-immersive-active .session-discussion-carousel .session-discussion-card.card{display:grid;grid-template-rows:auto minmax(150px,1fr) auto auto;gap:12px;flex:0 0 100%;height:100%;min-height:0;max-height:none;padding:24px 22px 18px;border-radius:18px;overflow:hidden;opacity:.38;transform:scale(.985);background:linear-gradient(145deg,color-mix(in srgb,var(--bg-secondary) 94%,var(--accent) 6%),color-mix(in srgb,var(--bg-card) 94%,var(--info) 6%))}body.session-practice-immersive-active .session-discussion-carousel .session-discussion-card.card.is-active{opacity:1;transform:none;box-shadow:0 20px 54px -42px color-mix(in srgb,var(--accent) 70%,transparent),inset 0 1px color-mix(in srgb,#fff 7%,transparent)}body.session-practice-immersive-active .session-discussion-prompt{grid-template-columns:34px minmax(0,1fr);gap:12px;max-height:min(26svh,196px);overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch}body.session-practice-immersive-active .session-discussion-index{min-height:28px;padding-top:3px;font-size:.9rem}body.session-practice-immersive-active .session-discussion-question{font-size:clamp(1.04rem,4.2vw,1.28rem);line-height:1.32}body.session-practice-immersive-active .session-discussion-helper{margin-top:8px;font-size:.8rem;line-height:1.34}body.session-practice-immersive-active .session-discussion-writing{display:flex;min-height:0;margin-top:2px}body.session-practice-immersive-active .textarea.session-discussion-textarea{height:100%!important;min-height:0;max-height:none;margin-top:0;padding:18px;overflow-y:auto;border-radius:18px;font-size:1.06rem;line-height:1.58}body.session-practice-immersive-active .session-answer-voice-row{flex:0 0 auto;align-items:center;flex-direction:row;justify-content:center;flex-wrap:wrap;gap:10px;margin-top:0;min-height:44px}body.session-practice-immersive-active .session-answer-voice-btn{width:auto;min-width:min(100%,190px);min-height:44px}body.session-practice-immersive-active .session-answer-voice-status{width:100%;text-align:center}body.session-practice-immersive-active .session-discussion-actions{flex:0 0 auto;grid-template-columns:minmax(0,1fr) auto;gap:8px 10px;margin-top:0;padding-top:6px}body.session-practice-immersive-active .session-feedback-actions{grid-column:1 / -1;justify-content:stretch;width:100%}body.session-practice-immersive-active .session-feedback-btn.btn,body.session-practice-immersive-active .session-feedback-view-btn,body.session-practice-immersive-active .session-feedback-next-btn{width:100%;min-height:48px;border-radius:14px}body.session-practice-immersive-active .session-practice-carousel-actions{flex:0 0 auto;position:static;bottom:auto;grid-template-columns:38px minmax(0,112px) 38px;width:min(100%,276px);margin:8px auto 0;padding:6px;border-radius:16px}body.session-practice-immersive-active .session-practice-list{position:fixed;left:18px;right:18px;bottom:calc(80px + env(safe-area-inset-bottom,0px));z-index:2440;width:auto;max-height:36svh;overflow-y:auto;margin:0;border-radius:16px;box-shadow:0 20px 56px -40px color-mix(in srgb,#000 62%,transparent)}.session-lesson-mode .session-practice-section #discussions.session-discussion-carousel{--session-practice-card-gutter: 8px;gap:var(--session-practice-card-gutter);padding-inline:calc(var(--session-practice-card-gutter) * 2);scroll-padding-inline:calc(var(--session-practice-card-gutter) * 2)}.session-lesson-mode .session-practice-section #discussions.session-discussion-carousel .session-discussion-card.card{flex-basis:100%}body.session-immersive-active .session-lesson-secondary-btn,body.session-immersive-active .session-lesson-primary-btn{min-height:48px;border-radius:13px}body.session-immersive-active .session-lesson-mode .session-idea-title{font-size:1.42rem;line-height:1.14}body.session-immersive-active .session-lesson-mode .session-idea-card .accordion-body{font-size:1.12rem;line-height:1.6}}@media(prefers-reduced-motion:reduce){.session-card-flip-inner{transition:none;transform:none!important}.session-card-face{transform:none!important}.session-idea-card:not(.is-revealed) .session-card-face-back,.session-idea-card.is-revealed .session-card-face-front{opacity:0;visibility:hidden}}@media(max-width:560px){html:has(.session-lesson-mode){scroll-padding-top:72px;scroll-padding-bottom:calc(92px + env(safe-area-inset-bottom,0px))}.session-lesson-mode{width:min(100% - 18px,640px)}body.session-entry-active .session-lesson-mode .session-shell-card{display:none}body.session-entry-active .session-lesson-mode .session-focus-intro{padding-top:0}body.session-entry-active .session-lesson-mode .session-throughline{margin-top:12px}.session-lesson-mode .session-shell-card{padding:18px}.session-lesson-mode .session-more-menu summary.session-tools-btn{width:40px;min-width:40px;height:40px}.session-lesson-mode .session-more-menu{width:40px}.session-lesson-mode .session-ideas-section .session-idea-carousel .session-idea-card{height:clamp(510px,70svh,610px)}.session-lesson-mode .session-idea-trigger{padding:22px 20px 8px;gap:10px}.session-lesson-mode .session-idea-num{min-height:40px;padding-right:96px}.session-card-utilities{top:18px;right:18px}.session-card-face-front{padding:24px 20px}.session-card-front-title{font-size:1.65rem}.session-card-front-prompt{font-size:1rem}.session-lesson-mode .session-idea-card .accordion-body{padding:12px 20px 18px}.session-lesson-actions{grid-template-columns:1fr;margin:0 20px 22px}.session-explain-menu summary{width:100%}.session-explain-options{left:0;right:0}.session-lesson-mode .session-coach-primary{align-items:stretch;flex-direction:column}.session-lesson-mode .session-coach-action{width:100%}.session-lesson-mode .session-nav-row{grid-template-columns:1fr;padding-bottom:calc(104px + env(safe-area-inset-bottom,0px))}.session-lesson-mode #nextBtn{order:-1}}@media(prefers-reduced-motion:reduce){html:has(.session-lesson-mode){scroll-behavior:auto}}.lecture-player{--lecture-snip-bottom: 112px}.lecture-player-controls{border-top:0;background:linear-gradient(180deg,color-mix(in srgb,var(--bg-primary) 0%,transparent),color-mix(in srgb,var(--bg-primary) 64%,transparent) 28%,color-mix(in srgb,var(--bg-primary) 96%,transparent));padding:6px 24px calc(18px + env(safe-area-inset-bottom,0px));box-shadow:none}.lecture-progress-bar{max-width:min(660px,calc(100% - 36px));height:4px;margin:0 auto 7px;background:color-mix(in srgb,var(--border) 68%,transparent);box-shadow:none}.lecture-progress-fill{background:color-mix(in srgb,var(--accent) 88%,#4f46e5 12%);transition:width .42s var(--ease-spring-soft)}.lecture-controls-row{position:relative;display:grid;grid-template-columns:minmax(108px,1fr) auto minmax(78px,1fr);grid-template-areas:"voice transport speed";align-items:center;gap:10px;width:min(660px,calc(100% - 24px));margin:22px auto 0;padding:8px 10px;border:1px solid color-mix(in srgb,var(--border) 82%,#fff 18%);border-radius:999px;background:linear-gradient(180deg,color-mix(in srgb,var(--bg-card) 96%,#fff 4%),color-mix(in srgb,var(--bg-secondary) 86%,#fff 14%));box-shadow:0 18px 46px #0f172a1c,0 4px 12px #0f172a0d,inset 0 1px #ffffffc2;-webkit-backdrop-filter:blur(18px) saturate(1.08);backdrop-filter:blur(18px) saturate(1.08)}.lecture-time{position:absolute;top:-26px;left:50%;transform:translate(-50%);width:max-content;color:var(--text-muted);font-size:.76rem;font-weight:650;font-variant-numeric:tabular-nums}.lecture-voice-control{position:relative;min-width:108px;min-height:44px;padding:0 12px;border-radius:999px;border:1px solid transparent;background:transparent;color:var(--text-secondary);gap:8px;cursor:pointer;overflow:hidden;transition:border-color var(--dur-base) var(--ease-out-expo),background var(--dur-base) var(--ease-out-expo),box-shadow var(--dur-base) var(--ease-out-expo),transform var(--dur-fast) var(--ease-out-expo)}.lecture-voice-control:after{display:none}.lecture-voice-control:hover,.lecture-voice-control:focus-within{border-color:color-mix(in srgb,var(--border) 82%,var(--accent) 18%);background:color-mix(in srgb,var(--bg-card) 72%,transparent);box-shadow:none}.lecture-voice-avatar{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;flex:0 0 22px;border-radius:50%;border:1px solid color-mix(in srgb,var(--border) 74%,var(--text-muted) 26%);background:color-mix(in srgb,var(--bg-card) 78%,transparent);color:var(--text-muted);font-size:.68rem;font-weight:780;box-shadow:none}.lecture-voice-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-secondary);font-size:.78rem;font-weight:740;letter-spacing:0}.lecture-controls-row .lecture-voice-select{position:absolute;inset:0;width:100%;max-width:none;min-width:0;height:100%;min-height:0;padding:0;border:0;opacity:0;cursor:pointer}.lecture-transport-controls{gap:10px}.lecture-skip-btn{width:44px;min-width:44px;height:44px;min-height:44px;border-color:color-mix(in srgb,var(--border) 72%,transparent);background:color-mix(in srgb,var(--bg-card) 58%,transparent);color:var(--text-secondary);box-shadow:none}.lecture-skip-btn .icon{width:23px;height:23px}.lecture-play-btn{width:58px;height:58px;background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 86%,#fff 14%),color-mix(in srgb,var(--accent) 94%,#1f2937 6%));box-shadow:0 13px 30px color-mix(in srgb,var(--accent) 22%,transparent),inset 0 1px #ffffff52}.lecture-play-btn:hover{background:linear-gradient(145deg,color-mix(in srgb,var(--accent-hover) 88%,#fff 12%),var(--accent-hover));box-shadow:0 14px 32px color-mix(in srgb,var(--accent) 26%,transparent),inset 0 1px #ffffff57}.lecture-play-btn .icon{width:22px;height:22px}.lecture-speed-control{min-width:78px}.lecture-speed-btn{min-width:78px;min-height:42px;padding:0 13px;border-radius:999px;border-color:color-mix(in srgb,var(--border) 72%,transparent);background:color-mix(in srgb,var(--bg-card) 64%,transparent);color:var(--text-primary);font-size:.82rem;font-weight:780;font-variant-numeric:tabular-nums;box-shadow:none}.lecture-speed-btn:after{content:"";width:6px;height:6px;margin-left:7px;border-right:1.7px solid currentColor;border-bottom:1.7px solid currentColor;transform:translateY(-2px) rotate(45deg);opacity:.62}.lecture-skip-btn:hover,.lecture-speed-btn:hover,.lecture-speed-btn[aria-expanded=true]{border-color:color-mix(in srgb,var(--accent) 46%,var(--border));background:color-mix(in srgb,var(--accent-subtle) 38%,var(--bg-card) 62%);color:var(--text-primary);box-shadow:none}.lecture-speed-sheet{left:50%;right:auto;bottom:calc(100% + 12px);width:min(440px,calc(100vw - 48px));padding:12px 18px 17px;border:1px solid color-mix(in srgb,var(--border) 78%,#fff 22%);border-radius:18px;background:linear-gradient(180deg,color-mix(in srgb,var(--bg-card) 96%,#fff 4%),color-mix(in srgb,var(--bg-secondary) 90%,#fff 10%));color:var(--text-primary);box-shadow:0 22px 58px #0f172a29,0 7px 16px #0f172a12,inset 0 1px #ffffffc7;transform:translate(-50%);animation:lectureSpeedSheetIn .24s var(--ease-out-expo)}.lecture-speed-sheet[hidden]{display:none!important}.lecture-speed-sheet-handle{width:44px;height:4px;margin-bottom:18px;background:color-mix(in srgb,var(--text-muted) 18%,transparent)}.lecture-speed-sheet-title{margin-bottom:6px;color:var(--text-muted);font-size:.74rem;font-weight:760;letter-spacing:.01em}.lecture-speed-stepper{display:grid;grid-template-columns:48px minmax(0,1fr) 48px;align-items:center;gap:10px;margin-bottom:14px}.lecture-speed-step-btn{width:40px;height:40px;justify-self:center;border:1px solid color-mix(in srgb,var(--border) 74%,transparent);border-radius:50%;background:color-mix(in srgb,var(--bg-card) 72%,transparent);color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;font:inherit;font-size:1.35rem;font-weight:380;line-height:1;cursor:pointer;box-shadow:none;transition:transform var(--dur-fast) var(--ease-out-expo),border-color var(--dur-base) var(--ease-out-expo),background var(--dur-base) var(--ease-out-expo),box-shadow var(--dur-base) var(--ease-out-expo)}.lecture-speed-step-btn:hover,.lecture-speed-step-btn:focus-visible{border-color:color-mix(in srgb,var(--accent) 42%,var(--border));background:color-mix(in srgb,var(--accent-subtle) 32%,var(--bg-card) 68%);color:var(--text-primary)}.lecture-speed-step-btn:active{transform:scale(.95)}.lecture-speed-sheet-value{margin:0;text-align:center;color:var(--text-primary);font-size:clamp(1.65rem,5vw,2.1rem);line-height:1;font-weight:760;letter-spacing:0;font-variant-numeric:tabular-nums}.lecture-speed-range-shell{position:relative;padding:0 2px}.lecture-speed-range{--lecture-speed-progress: 12%;position:relative;z-index:2;width:100%;height:28px;margin:0;border-radius:999px;background:linear-gradient(90deg,color-mix(in srgb,var(--accent) 84%,#4f46e5 16%) 0 var(--lecture-speed-progress),color-mix(in srgb,var(--text-primary) 7%,transparent) var(--lecture-speed-progress) 100%);box-shadow:inset 0 1px 2px #0f172a14;cursor:pointer;-webkit-appearance:none;appearance:none}.lecture-speed-range::-webkit-slider-runnable-track{height:28px;border-radius:999px;background:transparent}.lecture-speed-range::-moz-range-track{height:28px;border-radius:999px;background:transparent}.lecture-speed-range::-webkit-slider-thumb{width:34px;height:34px;margin-top:-3px;border:1px solid color-mix(in srgb,var(--accent) 38%,#fff 62%);border-radius:50%;background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 88%,#fff 12%),color-mix(in srgb,var(--accent) 96%,#1f2937 4%));box-shadow:0 7px 15px color-mix(in srgb,var(--accent) 18%,transparent),inset 0 1px #ffffff57;-webkit-appearance:none;appearance:none;transition:transform var(--dur-fast) var(--ease-out-expo)}.lecture-speed-range::-moz-range-thumb{width:34px;height:34px;border:1px solid color-mix(in srgb,var(--accent) 38%,#fff 62%);border-radius:50%;background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 88%,#fff 12%),color-mix(in srgb,var(--accent) 96%,#1f2937 4%));box-shadow:0 7px 15px color-mix(in srgb,var(--accent) 18%,transparent),inset 0 1px #ffffff57;transition:transform var(--dur-fast) var(--ease-out-expo)}.lecture-speed-range:active::-webkit-slider-thumb{transform:scale(1.06)}.lecture-speed-range:active::-moz-range-thumb{transform:scale(1.06)}.lecture-speed-range-ticks{position:absolute;z-index:3;inset:0 18px;display:flex;align-items:center;justify-content:space-between;pointer-events:none}.lecture-speed-range-ticks span{width:2px;height:8px;border-radius:999px;background:#ffffff6b;mix-blend-mode:screen}.lecture-speed-range-labels{display:flex;justify-content:space-between;margin-top:9px;color:var(--text-muted);font-size:.76rem;font-weight:720;font-variant-numeric:tabular-nums}.lecture-player.speed-sheet-open .lecture-player-body{opacity:.68;filter:saturate(.88);transition:opacity var(--dur-base) var(--ease-out-expo),filter var(--dur-base) var(--ease-out-expo)}.lecture-player.speed-sheet-open .lecture-snip-row,.lecture-player.speed-sheet-open .lecture-follow-lock-btn{opacity:0;pointer-events:none}.lecture-snip-row{bottom:calc(var(--lecture-snip-bottom) + 8px + env(safe-area-inset-bottom,0px))}.lecture-snip-btn{min-height:34px;padding:0 13px;gap:6px;border-color:color-mix(in srgb,var(--border) 76%,#10b981 24%)!important;background:color-mix(in srgb,var(--bg-card) 78%,transparent)!important;color:color-mix(in srgb,var(--text-secondary) 82%,#047857 18%)!important;font-size:.78rem;font-weight:760;opacity:.8;box-shadow:0 10px 26px #0f172a14,inset 0 1px #ffffffa8}.lecture-snip-btn:hover,.lecture-snip-btn:focus-visible{opacity:1;border-color:color-mix(in srgb,#10b981 42%,var(--border))!important;background:color-mix(in srgb,#10b981 7%,var(--bg-card) 93%)!important}.lecture-snip-btn .icon{width:15px;height:15px}@keyframes lectureSpeedSheetIn{0%{opacity:0;transform:translate(-50%) translateY(18px) scale(.985)}to{opacity:1;transform:translate(-50%) translateY(0) scale(1)}}@media(max-width:640px){.lecture-player{--lecture-snip-bottom: 112px}.lecture-player-controls{padding:6px 10px calc(14px + env(safe-area-inset-bottom,0px))}.lecture-progress-bar{max-width:calc(100% - 34px);height:4px;margin-bottom:6px}.lecture-controls-row{grid-template-columns:minmax(74px,1fr) minmax(150px,auto) minmax(72px,1fr);gap:6px;width:calc(100% - 12px);margin-top:22px;padding:8px}.lecture-time{top:-25px;font-size:.76rem}.lecture-voice-control{min-width:74px;min-height:42px;width:auto;padding:0 9px;justify-self:start}.lecture-voice-avatar{width:18px;height:18px;flex-basis:18px;font-size:.58rem}.lecture-voice-name{display:inline-block;max-width:48px;font-size:.72rem}.lecture-transport-controls{min-width:150px;gap:6px}.lecture-skip-btn{width:40px;min-width:40px;height:40px;min-height:40px}.lecture-skip-btn .icon{width:21px;height:21px}.lecture-play-btn{width:54px;height:54px}.lecture-speed-control{min-width:72px}.lecture-speed-btn{min-width:72px;min-height:40px;padding:0 10px;font-size:.76rem}.lecture-speed-btn:after{width:6px;height:6px;margin-left:6px;border-width:1.8px}.lecture-speed-sheet{bottom:calc(100% + 10px);width:calc(100vw - 48px);padding:12px 16px 16px;border-radius:18px}.lecture-speed-sheet-handle{margin-bottom:16px}.lecture-speed-stepper{grid-template-columns:42px minmax(0,1fr) 42px;gap:9px;margin-bottom:14px}.lecture-speed-step-btn{width:36px;height:36px;font-size:1.25rem}.lecture-speed-sheet-value{font-size:clamp(1.65rem,8vw,2.05rem)}.lecture-speed-range,.lecture-speed-range::-webkit-slider-runnable-track,.lecture-speed-range::-moz-range-track{height:28px}.lecture-speed-range::-webkit-slider-thumb{width:34px;height:34px}.lecture-speed-range::-moz-range-thumb{width:34px;height:34px}}@media(max-width:380px){.lecture-controls-row{grid-template-columns:64px minmax(142px,auto) 66px;gap:5px;padding:7px}.lecture-voice-control{min-width:64px;min-height:38px;padding:0 8px}.lecture-voice-avatar{display:none}.lecture-voice-name{max-width:46px}.lecture-transport-controls{min-width:142px;gap:5px}.lecture-skip-btn{width:38px;min-width:38px;height:38px;min-height:38px}.lecture-play-btn{width:50px;height:50px}.lecture-speed-btn{min-width:66px;min-height:38px;font-size:.72rem}.lecture-speed-sheet{width:calc(100vw - 28px);padding-inline:14px}}@media(prefers-reduced-motion:reduce){.lecture-speed-sheet{animation:none}.lecture-player.speed-sheet-open .lecture-player-body{transition:none}}.lecture-player{--lecture-snip-bottom: 116px}.lecture-player-controls{border-top:1px solid var(--border);background:var(--bg-secondary);padding:10px 24px 16px;box-shadow:0 -10px 30px #0f172a0f}.lecture-progress-bar{width:100%;max-width:none;height:7px;margin:0 0 14px;background:color-mix(in srgb,var(--border) 72%,transparent);box-shadow:none}.lecture-progress-fill{background:linear-gradient(90deg,var(--accent),color-mix(in srgb,var(--accent) 76%,#ffffff 24%))}.lecture-controls-row{display:grid;grid-template-columns:minmax(84px,1fr) auto minmax(84px,1fr);grid-template-areas:"time time time" "voice transport speed";align-items:center;width:100%;max-width:none;margin:0;padding:0;gap:10px 12px;border:0;border-radius:0;background:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.lecture-time{position:static;grid-area:time;transform:none;width:auto;text-align:center;color:var(--text-muted);font-size:.82rem;font-weight:500}.lecture-voice-control{position:relative;grid-area:voice;justify-self:start;min-width:0;min-height:0;width:auto;padding:0;border:0;border-radius:0;background:transparent;overflow:visible}.lecture-voice-control:after{content:"";display:block;position:absolute;right:13px;top:50%;width:7px;height:7px;border-right:1.6px solid currentColor;border-bottom:1.6px solid currentColor;color:var(--text-secondary);pointer-events:none;transform:translateY(-65%) rotate(45deg)}.lecture-voice-avatar,.lecture-voice-name{display:none}.lecture-controls-row .lecture-voice-select{position:static;inset:auto;width:min(116px,100%);min-width:92px;max-width:116px;height:auto;min-height:38px;margin-left:0!important;padding:0 30px 0 16px;border:1px solid color-mix(in srgb,var(--border) 82%,var(--text-muted) 18%);border-radius:999px;background:color-mix(in srgb,var(--bg-card) 78%,transparent);color:var(--text-secondary);opacity:1;font-size:.78rem;font-weight:760;line-height:1;box-shadow:none;-webkit-appearance:none;appearance:none;text-align:center;text-align-last:center;cursor:pointer}.lecture-transport-controls{grid-area:transport;width:max-content;gap:14px}.lecture-skip-btn{width:50px;min-width:50px;height:50px;min-height:50px;border-color:color-mix(in srgb,var(--border) 82%,var(--text-muted) 18%);background:color-mix(in srgb,var(--bg-card) 78%,transparent);color:var(--text-secondary);box-shadow:none}.lecture-skip-btn .icon{width:26px;height:26px}.lecture-play-btn{width:64px;height:64px;background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 84%,#ffffff 16%),var(--accent));box-shadow:0 12px 28px color-mix(in srgb,var(--accent) 26%,transparent)}.lecture-play-btn:hover{background:var(--accent-hover);box-shadow:0 14px 34px color-mix(in srgb,var(--accent) 32%,transparent)}.lecture-play-btn .icon{width:21px;height:21px}.lecture-speed-control{grid-area:speed;justify-self:end;min-width:0}.lecture-speed-btn{min-width:56px;min-height:38px;padding:0 13px;border-color:color-mix(in srgb,var(--border) 78%,var(--text-muted) 22%);background:color-mix(in srgb,var(--bg-card) 78%,transparent);color:var(--text-primary);font-size:.8rem;font-weight:820}.lecture-speed-btn:after{width:6px;height:6px;margin-left:7px;border-width:1.7px}.lecture-skip-btn:hover,.lecture-speed-btn:hover,.lecture-speed-btn[aria-expanded=true],.lecture-controls-row .lecture-voice-select:hover,.lecture-controls-row .lecture-voice-select:focus{border-color:color-mix(in srgb,var(--accent) 54%,var(--border));background:var(--accent-subtle);color:var(--text-primary);box-shadow:none}[data-theme=dark] .lecture-player-controls{border-top-color:color-mix(in srgb,#272b45 82%,transparent);background:#151827;box-shadow:0 -10px 28px #00000038}[data-theme=dark] .lecture-progress-bar{background:#2a2d4a}[data-theme=dark] .lecture-progress-fill{background:#6a5ce7}[data-theme=dark] .lecture-time{color:#7f86a3}[data-theme=dark] .lecture-controls-row .lecture-voice-select,[data-theme=dark] .lecture-skip-btn,[data-theme=dark] .lecture-speed-btn{border-color:#343852;background:transparent;color:#aeb4ca}[data-theme=dark] .lecture-voice-control:after{color:#8e95b2}[data-theme=dark] .lecture-skip-btn:hover,[data-theme=dark] .lecture-speed-btn:hover,[data-theme=dark] .lecture-speed-btn[aria-expanded=true],[data-theme=dark] .lecture-controls-row .lecture-voice-select:hover,[data-theme=dark] .lecture-controls-row .lecture-voice-select:focus{border-color:#5f57cb;background:#6a5ce71a;color:#eef0ff}[data-theme=dark] .lecture-play-btn{background:#6a5ce7;color:#fff;box-shadow:0 10px 24px #6a5ce73d}[data-theme=dark] .lecture-play-btn:hover{background:#7668ee;box-shadow:0 12px 28px #6a5ce74d}[data-theme=dark] .lecture-speed-sheet{border-color:#30344d;background:#191c2d;color:#f2f3ff;box-shadow:0 24px 64px #00000057,inset 0 1px #ffffff0a}[data-theme=dark] .lecture-speed-sheet-handle{background:#3a3e5b}[data-theme=dark] .lecture-speed-sheet-title,[data-theme=dark] .lecture-speed-range-labels{color:#8e95b2}[data-theme=dark] .lecture-speed-step-btn{border-color:#30344d;background:transparent;color:#b7bdd5}[data-theme=dark] .lecture-speed-step-btn:hover,[data-theme=dark] .lecture-speed-step-btn:focus-visible{border-color:#5f57cb;background:#6a5ce71a;color:#f2f3ff}[data-theme=dark] .lecture-speed-range{background:linear-gradient(90deg,#6a5ce7 0 var(--lecture-speed-progress),#2a2d4a var(--lecture-speed-progress) 100%)}[data-theme=dark] .lecture-speed-range::-webkit-slider-thumb{border-color:#7a70f0;background:#6a5ce7;box-shadow:0 7px 16px #6a5ce742}[data-theme=dark] .lecture-speed-range::-moz-range-thumb{border-color:#7a70f0;background:#6a5ce7;box-shadow:0 7px 16px #6a5ce742}@media(max-width:640px){.lecture-player{--lecture-snip-bottom: 188px}.lecture-player-controls{padding:10px 16px calc(16px + env(safe-area-inset-bottom,0px))}.lecture-progress-bar{height:8px;margin-bottom:10px}.lecture-controls-row{grid-template-columns:minmax(88px,1fr) minmax(162px,auto) minmax(88px,1fr);grid-template-areas:"time time time" "voice transport speed";gap:8px}.lecture-transport-controls{min-width:162px;gap:7px}.lecture-skip-btn{width:44px;min-width:44px;height:44px;min-height:44px}.lecture-play-btn{width:60px;height:60px}.lecture-controls-row .lecture-voice-select{width:min(108px,100%);min-width:86px;max-width:108px;min-height:36px;padding:0 28px 0 14px;font-size:.78rem}.lecture-speed-btn{min-width:58px;min-height:36px;padding:0 11px}}@media(max-width:380px){.lecture-controls-row{grid-template-columns:minmax(80px,1fr) minmax(150px,auto) minmax(80px,1fr);column-gap:8px}.lecture-transport-controls{min-width:150px;gap:4px}.lecture-skip-btn{width:42px;min-width:42px;height:42px;min-height:42px}.lecture-play-btn{width:58px;height:58px}.lecture-controls-row .lecture-voice-select{width:min(92px,100%);min-width:78px;max-width:92px;padding:0 24px 0 12px;font-size:.74rem}}.lecture-player{--lecture-snip-bottom: 128px}.lecture-player-controls{border-top:1px solid color-mix(in srgb,var(--border) 74%,transparent);background:color-mix(in srgb,var(--bg-secondary) 96%,transparent);padding:11px 24px calc(18px + env(safe-area-inset-bottom,0px));box-shadow:0 -12px 26px #0f172a0b}.lecture-progress-bar{height:6px;margin:0 0 13px;border-radius:999px;background:color-mix(in srgb,var(--border) 64%,transparent)}.lecture-progress-fill{background:color-mix(in srgb,var(--accent) 88%,#5b50d6 12%)}.lecture-controls-row{grid-template-columns:minmax(108px,1fr) auto minmax(82px,1fr);gap:8px 12px}.lecture-time{color:color-mix(in srgb,var(--text-muted) 92%,var(--text-primary) 8%);font-size:.78rem;font-weight:560;font-variant-numeric:tabular-nums}.lecture-controls-row .lecture-voice-select,.lecture-speed-btn{min-height:36px;border-color:color-mix(in srgb,var(--border) 76%,transparent);background:color-mix(in srgb,var(--bg-card) 58%,transparent);color:color-mix(in srgb,var(--text-secondary) 92%,var(--text-primary) 8%);font-weight:760;box-shadow:none}.lecture-controls-row .lecture-voice-select{width:min(112px,100%);min-width:92px;max-width:112px;padding:0 30px 0 15px}.lecture-speed-btn{min-width:54px;padding:0 12px;font-variant-numeric:tabular-nums}.lecture-skip-btn{width:46px;min-width:46px;height:46px;min-height:46px;border-color:color-mix(in srgb,var(--border) 72%,transparent);background:color-mix(in srgb,var(--bg-card) 44%,transparent);color:color-mix(in srgb,var(--text-secondary) 88%,var(--text-primary) 12%)}.lecture-skip-btn .icon{width:24px;height:24px}.lecture-play-btn{width:60px;height:60px;background:color-mix(in srgb,var(--accent) 92%,#ffffff 8%);box-shadow:0 10px 22px color-mix(in srgb,var(--accent) 20%,transparent),inset 0 1px #ffffff3d}.lecture-play-btn:hover,.lecture-play-btn:focus-visible{background:var(--accent-hover);box-shadow:0 12px 26px color-mix(in srgb,var(--accent) 25%,transparent),inset 0 1px #ffffff42}.lecture-play-btn .icon{width:20px;height:20px}.lecture-skip-btn:hover,.lecture-speed-btn:hover,.lecture-speed-btn[aria-expanded=true],.lecture-controls-row .lecture-voice-select:hover,.lecture-controls-row .lecture-voice-select:focus{border-color:color-mix(in srgb,var(--accent) 48%,var(--border));background:color-mix(in srgb,var(--accent-subtle) 68%,var(--bg-card) 32%);color:var(--text-primary)}.lecture-speed-sheet{left:50%;right:auto;bottom:calc(100% + 13px);width:min(386px,calc(100vw - 44px));padding:12px 18px 18px;border:1px solid color-mix(in srgb,var(--border) 70%,transparent);border-radius:20px;background:color-mix(in srgb,var(--bg-card) 94%,var(--bg-secondary) 6%);color:var(--text-primary);box-shadow:0 20px 48px #0f172a26,0 5px 14px #0f172a0f,inset 0 1px #ffffff9e;transform:translate(-50%);animation:lectureSpeedSheetIn .22s var(--ease-out-expo)}.lecture-speed-sheet-handle{width:42px;height:4px;margin:0 auto 15px;background:color-mix(in srgb,var(--text-muted) 22%,transparent)}.lecture-speed-sheet-title{margin:0 0 6px;text-align:center;color:color-mix(in srgb,var(--text-secondary) 88%,var(--text-primary) 12%);font-size:.83rem;font-weight:780;letter-spacing:0}.lecture-speed-stepper{grid-template-columns:48px minmax(0,1fr) 48px;gap:12px;margin-bottom:17px}.lecture-speed-step-btn{width:42px;height:42px;border-color:color-mix(in srgb,var(--border) 72%,transparent);background:color-mix(in srgb,var(--bg-secondary) 64%,transparent);color:var(--text-secondary);font-size:1.38rem;font-weight:360}.lecture-speed-sheet-value{font-size:clamp(2.05rem,8vw,2.8rem);font-weight:720;letter-spacing:0}.lecture-speed-range-shell{padding:0 1px}.lecture-speed-range{height:25px;background:linear-gradient(90deg,color-mix(in srgb,var(--accent) 90%,#4f46e5 10%) 0 var(--lecture-speed-progress),color-mix(in srgb,var(--text-primary) 7%,transparent) var(--lecture-speed-progress) 100%);box-shadow:inset 0 1px 2px #0f172a14}.lecture-speed-range::-webkit-slider-runnable-track,.lecture-speed-range::-moz-range-track{height:25px}.lecture-speed-range::-webkit-slider-thumb{width:32px;height:32px;margin-top:-3.5px;border-color:color-mix(in srgb,var(--accent) 44%,#ffffff 56%);background:color-mix(in srgb,var(--accent) 96%,#ffffff 4%);box-shadow:0 7px 14px color-mix(in srgb,var(--accent) 19%,transparent)}.lecture-speed-range::-moz-range-thumb{width:32px;height:32px;border-color:color-mix(in srgb,var(--accent) 44%,#ffffff 56%);background:color-mix(in srgb,var(--accent) 96%,#ffffff 4%);box-shadow:0 7px 14px color-mix(in srgb,var(--accent) 19%,transparent)}.lecture-speed-range-labels{margin-top:10px;color:color-mix(in srgb,var(--text-muted) 88%,var(--text-primary) 12%);font-size:.75rem;font-weight:700}.lecture-speed-range-ticks{inset:0 16px}.lecture-speed-range-ticks span{width:2px;height:7px;opacity:.56}.lecture-player.speed-sheet-open .lecture-player-body{opacity:.74;filter:saturate(.92)}[data-theme=dark] .lecture-player-controls{border-top-color:#242840;background:#151827;box-shadow:0 -12px 26px #0003}[data-theme=dark] .lecture-progress-bar{background:#2a2e49}[data-theme=dark] .lecture-progress-fill,[data-theme=dark] .lecture-play-btn{background:#6a5ce7}[data-theme=dark] .lecture-time{color:#8289a7}[data-theme=dark] .lecture-controls-row .lecture-voice-select,[data-theme=dark] .lecture-skip-btn,[data-theme=dark] .lecture-speed-btn{border-color:#333850;background:transparent;color:#aeb4ca}[data-theme=dark] .lecture-voice-control:after{color:#8f96b2}[data-theme=dark] .lecture-play-btn{color:#fff;box-shadow:0 10px 22px #6a5ce738,inset 0 1px #ffffff24}[data-theme=dark] .lecture-play-btn:hover,[data-theme=dark] .lecture-play-btn:focus-visible{background:#7467ee;box-shadow:0 12px 26px #6a5ce745,inset 0 1px #ffffff29}[data-theme=dark] .lecture-skip-btn:hover,[data-theme=dark] .lecture-speed-btn:hover,[data-theme=dark] .lecture-speed-btn[aria-expanded=true],[data-theme=dark] .lecture-controls-row .lecture-voice-select:hover,[data-theme=dark] .lecture-controls-row .lecture-voice-select:focus{border-color:#5e58ca;background:#6a5ce718;color:#f0f2ff}[data-theme=dark] .lecture-speed-sheet{border-color:#2d3249;background:#191c2d;color:#f4f5ff;box-shadow:0 24px 58px #00000057,inset 0 1px #ffffff0b}[data-theme=dark] .lecture-speed-sheet-handle{background:#3b405b}[data-theme=dark] .lecture-speed-sheet-title,[data-theme=dark] .lecture-speed-range-labels{color:#9097b4}[data-theme=dark] .lecture-speed-step-btn{border-color:#30354d;background:transparent;color:#b8bed4}[data-theme=dark] .lecture-speed-step-btn:hover,[data-theme=dark] .lecture-speed-step-btn:focus-visible{border-color:#5e58ca;background:#6a5ce718;color:#f4f5ff}[data-theme=dark] .lecture-speed-range{background:linear-gradient(90deg,#6a5ce7 0 var(--lecture-speed-progress),#2a2e49 var(--lecture-speed-progress) 100%)}[data-theme=dark] .lecture-speed-range::-webkit-slider-thumb,[data-theme=dark] .lecture-speed-range::-moz-range-thumb{border-color:#756bee;background:#6a5ce7;box-shadow:0 7px 15px #6a5ce740}@media(max-width:640px){.lecture-player{--lecture-snip-bottom: 170px}.lecture-player-controls{padding:10px 16px calc(16px + env(safe-area-inset-bottom,0px))}.lecture-controls-row{grid-template-columns:minmax(88px,1fr) minmax(152px,auto) minmax(78px,1fr);gap:8px}.lecture-progress-bar{height:6px;margin-bottom:12px}.lecture-controls-row .lecture-voice-select{width:min(104px,100%);min-width:84px;min-height:36px;padding:0 28px 0 13px}.lecture-transport-controls{min-width:152px;gap:6px}.lecture-skip-btn{width:42px;min-width:42px;height:42px;min-height:42px}.lecture-play-btn{width:60px;min-width:60px;height:60px;min-height:60px}.lecture-speed-btn{min-width:54px;min-height:36px}.lecture-speed-sheet{width:calc(100vw - 42px);padding:12px 16px 17px}}@media(max-width:380px){.lecture-controls-row{grid-template-columns:minmax(74px,1fr) minmax(142px,auto) minmax(66px,1fr);column-gap:6px}.lecture-controls-row .lecture-voice-select{width:min(88px,100%);min-width:72px;padding:0 23px 0 11px;font-size:.72rem}.lecture-transport-controls{min-width:142px;gap:4px}.lecture-skip-btn{width:40px;min-width:40px;height:40px;min-height:40px}.lecture-play-btn{width:54px;height:54px}.lecture-speed-btn{min-width:50px;padding:0 10px;font-size:.74rem}}@media(prefers-reduced-motion:no-preference){@view-transition{navigation:auto}::view-transition-old(root),::view-transition-new(root){animation-duration:.22s;animation-timing-function:cubic-bezier(.22,1,.36,1);mix-blend-mode:normal}::view-transition-old(root){animation-name:curio-page-out}::view-transition-new(root){animation-name:curio-page-in}@keyframes curio-page-out{0%{opacity:1;filter:blur(0);transform:scale(1)}to{opacity:0;filter:blur(3px);transform:scale(.992)}}@keyframes curio-page-in{0%{opacity:0;filter:blur(3px);transform:scale(1.006)}to{opacity:1;filter:blur(0);transform:scale(1)}}}
