.session-plan{padding:0}.session-plan--loading{display:flex;align-items:center;gap:.5rem;color:var(--color-text-muted, #a8a29e);font-size:.8rem}.session-plan-skeleton-dot{width:8px;height:8px;border-radius:50%;background:var(--color-border-strong);animation:planPulse 1.5s ease-in-out infinite}.session-plan-skeleton-text{opacity:.6}.session-plan-header{font-size:.7rem;font-weight:600;color:var(--color-text-muted, #a8a29e);letter-spacing:.06em;text-transform:uppercase;margin-bottom:.35rem}.session-plan-topic{font-size:.85rem;color:var(--color-text-secondary, #e7e5e4);margin-bottom:.6rem;font-weight:500}.session-plan-steps{display:flex;flex-direction:column;gap:.15rem}.plan-step{display:flex;align-items:center;gap:.5rem;padding:.3rem 0;font-size:.78rem;color:var(--color-text-muted, #a8a29e);transition:color .3s,opacity .3s}.plan-step-indicator{flex-shrink:0;width:8px;height:8px;border-radius:50%;transition:background .3s,border-color .3s,box-shadow .3s}.plan-step--upcoming .plan-step-indicator{background:transparent;border:1.5px solid var(--color-border)}.plan-step--active .plan-step-indicator{background:var(--color-primary);border:none;box-shadow:0 0 6px #10b98180;animation:planPulse 1.5s ease-in-out infinite}.plan-step--active{color:var(--color-primary);font-weight:500}.plan-step--completed .plan-step-indicator{background:var(--color-primary-border);border:none}.plan-step--completed{opacity:.5}.plan-step-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.plan-step-time{flex-shrink:0;font-size:.7rem;color:#fff3}@keyframes planPulse{0%,to{opacity:1}50%{opacity:.5}}.session-plan--summary .plan-step--completed{opacity:1}.session-plan--summary .plan-step--completed .plan-step-indicator{background:#10b981}.session-plan-all-covered{margin-top:.5rem;font-size:.75rem;font-weight:600;color:#10b981;letter-spacing:.04em}@media(max-width:768px){.session-plan-steps{flex-direction:row;gap:.25rem;overflow-x:auto}.plan-step{flex-direction:column;gap:.15rem;min-width:0;padding:.2rem .3rem}.plan-step-title{font-size:.65rem;white-space:normal;text-align:center;-webkit-line-clamp:2;display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}.plan-step-time{display:none}}.post-session{position:absolute;inset:0;z-index:30;display:flex;flex-direction:column;align-items:center;background:var(--color-bg);overflow-y:auto;padding:2rem 0;animation:postSessionFadeIn .5s ease-out}@keyframes postSessionFadeIn{0%{opacity:0}to{opacity:1}}.post-session-content{display:flex;flex-direction:column;align-items:center;max-width:480px;width:100%;padding:0 1.5rem;text-align:center;margin:auto 0}.post-session-reveal{opacity:0;transform:translateY(12px);animation:postSessionReveal .5s cubic-bezier(.16,1,.3,1) forwards}.post-session-reveal--1{animation-delay:0ms}.post-session-reveal--2{animation-delay:.3s}.post-session-reveal--3{animation-delay:.8s}.post-session-reveal--4{animation-delay:1.5s;animation-duration:.3s}@keyframes postSessionReveal{to{opacity:1;transform:translateY(0)}}.post-session-heading{font-family:"Instrument Serif",Georgia,serif;font-size:clamp(1.5rem,3vw,2rem);font-weight:400;color:var(--color-text);margin:0;line-height:1.3}.post-session-topic{display:block;margin-top:1rem;font-family:Plus Jakarta Sans,sans-serif;font-size:.7rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--color-primary)}.post-session-plan{width:100%;margin-top:1rem;padding:1rem 0;border-bottom:1px solid var(--color-border-subtle)}.post-session-plan .session-plan{text-align:left}.post-session-problems{width:100%;margin-top:1rem;padding:1rem 0;border-bottom:1px solid var(--color-border-subtle);text-align:left}.post-session-problems-header{font-family:Plus Jakarta Sans,sans-serif;font-size:.7rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:.75rem}.post-session-problems-list{display:flex;flex-direction:column;gap:.5rem;max-height:40vh;overflow-y:auto}.post-session-problem{padding:.6rem .75rem;background:var(--color-bg-card);border-radius:6px;border-left:2px solid var(--color-border-strong)}.post-session-problem-text{font-family:Plus Jakarta Sans,sans-serif;font-size:.85rem;color:var(--color-text-soft);margin:0;line-height:1.4}.post-session-mcq-header{margin-bottom:.35rem}.post-session-mcq-badge{font-family:Plus Jakarta Sans,sans-serif;font-size:.65rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;padding:.15rem .4rem;border-radius:3px}.post-session-mcq-badge.correct{background:var(--color-primary-bg-hover);color:var(--color-primary)}.post-session-mcq-badge.incorrect{background:#f8717126;color:var(--color-error-strong)}.post-session-mcq-badge.unanswered{background:#a8a29e26;color:var(--color-text-muted)}.post-session-mcq-question{font-family:Plus Jakarta Sans,sans-serif;font-size:.85rem;color:var(--color-text-soft);margin:0;line-height:1.4}.post-session-mcq-answer{font-family:Plus Jakarta Sans,sans-serif;font-size:.75rem;color:var(--color-text-muted);margin:.25rem 0 0}.post-session-mcq-correct{color:var(--color-primary)}.post-session-cta{margin-top:2rem;display:flex;flex-direction:column;align-items:center;gap:.75rem}.post-session-btn{padding:.8rem 2rem;background:var(--color-primary);color:var(--color-bg);font-family:Plus Jakarta Sans,sans-serif;font-weight:600;font-size:.9rem;border:none;border-radius:8px;cursor:pointer;transition:background .2s,transform .15s}.post-session-btn:hover{background:var(--color-primary-light);transform:translateY(-1px)}.post-session-btn:active{transform:translateY(0)}.post-session-link{font-family:Plus Jakarta Sans,sans-serif;font-size:.8rem;color:var(--color-primary);text-decoration:none;background:none;border:none;cursor:pointer;padding:0;transition:color .2s}.post-session-link:hover{color:var(--color-primary-light)}@media(prefers-reduced-motion:reduce){.post-session{animation:none}.post-session-reveal{transform:none;animation:postSessionRevealReduced .3s ease forwards}@keyframes postSessionRevealReduced{0%{opacity:0}to{opacity:1}}}.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}.reveal.revealed{opacity:1;transform:translateY(0)}.reveal:nth-child(2){transition-delay:.08s}.reveal:nth-child(3){transition-delay:.16s}.reveal:nth-child(4){transition-delay:.24s}.reveal:nth-child(5){transition-delay:.32s}.reveal:nth-child(6){transition-delay:.4s}.landing-page{min-height:100vh;background:var(--color-bg);color:var(--color-text);display:flex;flex-direction:column;overflow-x:hidden}.landing-nav{position:fixed;top:0;left:0;right:0;padding:1.25rem 2.5rem;z-index:50;display:flex;align-items:center;justify-content:space-between;background:var(--color-nav-bg);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--color-border-subtle)}.nav-logo{font-family:"Instrument Serif",Georgia,serif;font-size:1.5rem;font-weight:400;font-style:italic;letter-spacing:-.01em;color:var(--color-text)}.nav-links{display:flex;align-items:center;gap:2rem}.nav-link{font-family:Plus Jakarta Sans,sans-serif;font-size:.8rem;font-weight:500;color:var(--color-text-muted);text-decoration:none;transition:color .2s;letter-spacing:.01em}.nav-link:hover{color:var(--color-text)}button.nav-signin{background:none;border:none;padding:0;cursor:pointer}.nav-cta{font-family:Plus Jakarta Sans,sans-serif;font-size:.8rem;font-weight:600;padding:.5rem 1.25rem;background:var(--color-primary);color:#fff;border:none;border-radius:6px;cursor:pointer;transition:background .2s,transform .1s}.nav-cta:hover{background:var(--color-primary-light);transform:translateY(-1px)}.hero{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:7rem 2rem 4rem;position:relative;overflow:hidden}.hero:before,.hero:after{content:"";position:absolute;border-radius:50%;filter:blur(80px);opacity:.35;pointer-events:none;z-index:0}.hero:before{width:600px;height:600px;background:radial-gradient(circle,rgba(16,185,129,.15),transparent 70%);top:-200px;right:-200px;animation:orbFloat 20s ease-in-out infinite}.hero:after{width:500px;height:500px;background:radial-gradient(circle,rgba(16,185,129,.08),transparent 70%);bottom:-100px;left:-150px;animation:orbFloat 25s ease-in-out infinite reverse}@keyframes orbFloat{0%,to{transform:translate(0)}25%{transform:translate(30px,-20px)}50%{transform:translate(-20px,30px)}75%{transform:translate(15px,15px)}}.hero-demo-video{width:min(92vw,940px);border-radius:16px;margin-bottom:3rem;position:relative;z-index:1;box-shadow:0 8px 60px #0006}.hero-text{text-align:center;display:flex;flex-direction:column;align-items:center;position:relative;z-index:1;transition:opacity .5s ease,transform .5s ease}.hero h1{font-family:"Instrument Serif",Georgia,serif;font-size:clamp(3.25rem,7.5vw,6.5rem);font-weight:400;letter-spacing:-.04em;line-height:1.02;color:var(--color-text);margin:0}.hero-subtitle{font-family:Plus Jakarta Sans,sans-serif;font-size:clamp(1rem,1.8vw,1.125rem);color:var(--color-text-muted);max-width:440px;line-height:1.6;margin-top:1.75rem;font-weight:400}.hero-cta{margin-top:3rem;padding:.9rem 2.25rem;background:var(--color-primary);color:#fff;font-family:Plus Jakarta Sans,sans-serif;font-weight:600;font-size:.95rem;border:none;border-radius:8px;cursor:pointer;transition:background .2s,transform .15s,box-shadow .3s;box-shadow:0 0 #10b98100;position:relative;z-index:1}.hero-cta:hover{background:var(--color-primary-light);transform:translateY(-2px);box-shadow:0 8px 40px #10b9814d}.hero-cta:active{transform:translateY(0)}.hero-cta-sub{display:block;margin-top:.875rem;font-family:Plus Jakarta Sans,sans-serif;font-size:.775rem;color:var(--color-text-hint);position:relative;z-index:1}.hero[data-state=idle] .hero-text{opacity:1;transform:translateY(0)}.hero[data-state=topic_selecting] .hero-text{opacity:0;transform:translateY(-40px);pointer-events:none}.hero[data-state=connecting] .hero-text,.hero[data-state=in_session] .hero-text{opacity:0;transform:translateY(-40px);pointer-events:none;position:absolute}.hero[data-state=connecting],.hero[data-state=in_session]{padding:0;height:100vh;min-height:100vh;overflow:hidden}.session-container{width:100%;height:100vh;overflow:hidden;display:flex;flex-direction:column;opacity:0;transform:scale(.98);transition:opacity .5s ease .15s,transform .5s ease .15s}.hero[data-state=connecting] .session-container,.hero[data-state=in_session] .session-container,.hero[data-state=session_ending] .session-container{opacity:1;transform:scale(1)}.hero[data-state=post_session]{padding:0;height:100vh;min-height:100vh;overflow:auto}.hero[data-state=post_session] .hero-text{opacity:0;transform:translateY(-40px);pointer-events:none;position:absolute}.hero[data-state=session_ending]{padding:0;height:100vh;min-height:100vh;overflow:hidden}.hero[data-state=session_ending] .hero-text{opacity:0;transform:translateY(-40px);pointer-events:none;position:absolute}.topic-chips-overlay{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:2rem;padding:2.5rem 3rem;z-index:2;animation:chipsFadeIn .4s ease}@keyframes chipsFadeIn{0%{opacity:0;transform:translate(-50%,-46%)}to{opacity:1;transform:translate(-50%,-50%)}}.language-toggle{display:flex;gap:.25rem;padding:.2rem;background:var(--color-bg-card-hover);border-radius:100px;border:1px solid var(--color-border)}.language-toggle-btn{padding:.4rem 1rem;border:none;border-radius:100px;background:transparent;color:var(--color-text-muted);font-family:Plus Jakarta Sans,sans-serif;font-size:.8rem;font-weight:500;cursor:pointer;transition:background .2s,color .2s}.language-toggle-btn.active{background:var(--color-primary);color:#fff}.language-toggle-btn:not(.active):hover{color:var(--color-text)}.topic-chips-heading{font-family:"Instrument Serif",Georgia,serif;font-size:1.75rem;font-weight:400;color:var(--color-text);margin:0}.topic-chips{display:flex;flex-wrap:wrap;gap:.625rem;justify-content:center;max-width:480px}.topic-chip{padding:.7rem 1.5rem;min-height:44px;background:var(--color-bg-card-hover);border:1px solid var(--color-border-strong);border-radius:100px;color:var(--color-text-secondary);font-family:Plus Jakarta Sans,sans-serif;font-size:.9rem;font-weight:500;cursor:pointer;transition:background .2s,border-color .2s,transform .15s,box-shadow .2s}.topic-chip:hover{background:#10b9811a;border-color:#10b98159;transform:translateY(-2px);box-shadow:0 4px 20px #10b9811f}.section-label{font-family:Plus Jakarta Sans,sans-serif;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.15em;color:var(--color-primary);margin:0 0 1rem}.section-headline{font-family:"Instrument Serif",Georgia,serif;font-size:clamp(2rem,4vw,3rem);font-weight:400;letter-spacing:-.03em;line-height:1.1;color:var(--color-text);margin:0 0 3.5rem}.trust-stats{padding:3rem 2rem;border-top:1px solid var(--color-border-subtle);border-bottom:1px solid var(--color-border-subtle)}.trust-inner{max-width:900px;margin:0 auto;display:flex;align-items:center;justify-content:center;gap:3rem}.stat{display:flex;flex-direction:column;align-items:center;gap:.25rem}.stat-number{font-family:"Instrument Serif",Georgia,serif;font-size:2rem;font-weight:400;color:var(--color-text);letter-spacing:-.03em}.stat-label{font-family:Plus Jakarta Sans,sans-serif;font-size:.7rem;font-weight:500;color:var(--color-text-hint);text-transform:uppercase;letter-spacing:.08em}.stat-divider{width:1px;height:40px;background:var(--color-border)}.features-section{padding:7rem 2rem;background:linear-gradient(180deg,transparent 0%,rgba(16,185,129,.015) 50%,transparent 100%)}.features-inner{max-width:1080px;margin:0 auto}.features-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.feature-card{padding:1.75rem;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:14px;transition:border-color .3s,transform .2s,box-shadow .3s}.feature-card:hover{border-color:var(--color-primary-border);transform:translateY(-3px);box-shadow:0 12px 40px var(--color-shadow)}.feature-visual{height:120px;display:flex;align-items:center;justify-content:center;margin-bottom:1.25rem;border-radius:10px;background:#ffffff04;overflow:hidden}.feature-card h3{font-family:Plus Jakarta Sans,sans-serif;font-size:1rem;font-weight:600;color:var(--color-text);margin:0 0 .5rem}.feature-card p{font-family:Plus Jakarta Sans,sans-serif;font-size:.8rem;color:var(--color-text-hint);line-height:1.6;margin:0}.voice-wave{display:flex;align-items:center;gap:4px}.voice-wave span{display:block;width:4px;border-radius:2px;background:var(--color-primary);animation:waveBar 1.2s ease-in-out infinite}.voice-wave span:nth-child(1){height:16px;animation-delay:0s}.voice-wave span:nth-child(2){height:28px;animation-delay:.15s}.voice-wave span:nth-child(3){height:40px;animation-delay:.3s}.voice-wave span:nth-child(4){height:28px;animation-delay:.45s}.voice-wave span:nth-child(5){height:16px;animation-delay:.6s}@keyframes waveBar{0%,to{transform:scaleY(1);opacity:.5}50%{transform:scaleY(1.6);opacity:1}}.avatar-silhouette{width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,#10b9814d,#10b9811a);border:2px solid rgba(16,185,129,.3);animation:avatarPulse 3s ease-in-out infinite}@keyframes avatarPulse{0%,to{box-shadow:0 0 #10b98133}50%{box-shadow:0 0 0 16px #10b98100}}.board-mockup{display:flex;flex-direction:column;gap:4px;font-family:"Instrument Serif",Georgia,serif}.board-line{font-size:.9rem;color:#faf5ef;animation:boardWrite .8s ease forwards;opacity:0}.board-line:nth-child(1){animation-delay:.3s}.board-line:nth-child(2){animation-delay:.9s}.board-line:nth-child(3){animation-delay:1.5s}.board-line.dim{color:var(--color-text-hint)}.board-line.accent{color:var(--color-primary)}@keyframes boardWrite{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}.proactive-bubble{padding:.5rem 1rem;background:#10b98114;border:1px solid rgba(16,185,129,.2);border-radius:12px 12px 12px 2px;animation:bubbleIn .6s ease .5s forwards;opacity:0}.proactive-bubble span{font-family:Plus Jakarta Sans,sans-serif;font-size:.8rem;color:var(--color-text-muted);font-style:italic}@keyframes bubbleIn{0%{opacity:0;transform:translateY(8px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.verify-check{color:var(--color-primary);animation:checkPop .5s ease .3s forwards;opacity:0;transform:scale(.7)}@keyframes checkPop{0%{opacity:0;transform:scale(.7)}60%{transform:scale(1.15)}to{opacity:1;transform:scale(1)}}.adaptive-bars{display:flex;align-items:flex-end;gap:6px;height:60px}.adaptive-bars span{width:14px;border-radius:3px 3px 0 0;background:linear-gradient(to top,var(--color-primary-dark),var(--color-primary-light));animation:barGrow .6s ease forwards;opacity:0;transform-origin:bottom;transform:scaleY(0)}.adaptive-bars span:nth-child(1){animation-delay:.2s}.adaptive-bars span:nth-child(2){animation-delay:.35s}.adaptive-bars span:nth-child(3){animation-delay:.5s}.adaptive-bars span:nth-child(4){animation-delay:.65s}@keyframes barGrow{to{opacity:1;transform:scaleY(1)}}.how-section{padding:7rem 2rem}.how-inner{max-width:640px;margin:0 auto}.how-steps{display:flex;flex-direction:column;gap:0}.how-step{display:flex;gap:1.5rem;align-items:flex-start;padding:1.5rem 0}.step-number{font-family:"Instrument Serif",Georgia,serif;font-size:2.5rem;font-weight:400;color:#10b98140;line-height:1;flex-shrink:0;width:56px;letter-spacing:-.04em}.step-content h3{font-family:Plus Jakarta Sans,sans-serif;font-size:1.1rem;font-weight:600;color:var(--color-text);margin:0 0 .375rem}.step-content p{font-family:Plus Jakarta Sans,sans-serif;font-size:.85rem;color:var(--color-text-hint);line-height:1.6;margin:0}.how-connector{width:1px;height:24px;background:var(--color-border);margin-left:27px}.preview-section{padding:7rem 2rem;background:linear-gradient(180deg,transparent 0%,rgba(16,185,129,.02) 50%,transparent 100%)}.preview-inner{max-width:900px;margin:0 auto;text-align:center}.preview-mockup{margin:0 auto 2.5rem;perspective:1200px}.mockup-window{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:12px;overflow:hidden;transform:rotateX(2deg);transition:transform .4s ease;box-shadow:0 24px 80px #00000080,0 0 0 1px var(--color-border-subtle)}.mockup-window:hover{transform:rotateX(0)}.mockup-topbar{display:flex;gap:6px;padding:10px 14px;background:var(--color-bg-card);border-bottom:1px solid var(--color-border)}.mockup-dot{width:10px;height:10px;border-radius:50%}.mockup-dot.red{background:var(--color-error);opacity:.6}.mockup-dot.yellow{background:#eab308;opacity:.6}.mockup-dot.green{background:var(--color-success);opacity:.6}.mockup-body{display:flex;min-height:320px}.mockup-board{flex:3;padding:2rem;background:var(--color-bg-warm);display:flex;flex-direction:column;gap:.75rem;border-right:1px solid var(--color-border-subtle)}.mockup-board-label{font-family:Plus Jakarta Sans,sans-serif;font-size:.6rem;font-weight:600;text-transform:uppercase;letter-spacing:.15em;color:var(--color-text-faint);margin-bottom:.5rem}.mockup-equation{font-family:"Instrument Serif",Georgia,serif;font-size:1.25rem;color:#faf5ef}.mockup-equation.step{color:var(--color-text-muted);font-size:1rem}.mockup-equation.result{color:var(--color-primary);font-size:1.35rem}.mockup-mcq{margin-top:auto;padding-top:1rem;border-top:1px solid var(--color-border-subtle)}.mockup-mcq-q{font-family:Plus Jakarta Sans,sans-serif;font-size:.8rem;font-weight:600;color:var(--color-text-secondary);margin:0 0 .5rem}.mockup-mcq-opts{display:flex;gap:.5rem;flex-wrap:wrap}.mockup-mcq-opts span{font-family:Plus Jakarta Sans,sans-serif;font-size:.7rem;padding:.35rem .75rem;border-radius:6px;background:var(--color-bg-card-hover);border:1px solid var(--color-border);color:var(--color-text-muted)}.mockup-mcq-opts span.correct{background:#10b9811f;border-color:#10b9814d;color:var(--color-primary-light)}.mockup-avatar{flex:2;display:flex;align-items:center;justify-content:center;position:relative;background:radial-gradient(ellipse at 50% 40%,rgba(245,233,210,.06) 0%,transparent 60%),linear-gradient(180deg,#1a1815,#141210)}.mockup-avatar-placeholder{display:flex;flex-direction:column;align-items:center;gap:4px;opacity:.3}.mockup-avatar-head{width:44px;height:44px;border-radius:50%;background:#ffffff1a}.mockup-avatar-body{width:60px;height:48px;border-radius:30px 30px 0 0;background:#ffffff0f}.mockup-avatar-glow{position:absolute;width:120px;height:120px;border-radius:50%;background:radial-gradient(circle,rgba(16,185,129,.08),transparent 70%);animation:avatarPulse 4s ease-in-out infinite}.preview-cta{font-family:Plus Jakarta Sans,sans-serif;font-size:.95rem;font-weight:600;padding:.85rem 2rem;background:transparent;color:var(--color-primary);border:1px solid var(--color-primary-border);border-radius:8px;cursor:pointer;transition:background .2s,border-color .2s,transform .15s,box-shadow .3s}.preview-cta:hover{background:var(--color-primary-bg);border-color:var(--color-primary);transform:translateY(-2px);box-shadow:0 8px 30px #10b98126}.platform-section{padding:7rem 2rem;background:linear-gradient(180deg,transparent 0%,rgba(16,185,129,.02) 50%,transparent 100%)}.platform-inner{max-width:900px;margin:0 auto;text-align:center}.platform-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem;text-align:left;margin-bottom:2.5rem}.platform-card{padding:1.75rem;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:14px;transition:border-color .3s,transform .2s}.platform-card:hover{border-color:var(--color-primary-border);transform:translateY(-2px)}.platform-icon{color:var(--color-primary);margin-bottom:1rem;opacity:.8}.platform-card h3{font-family:Plus Jakarta Sans,sans-serif;font-size:1rem;font-weight:600;color:var(--color-text);margin:0 0 .5rem}.platform-card p{font-family:Plus Jakarta Sans,sans-serif;font-size:.8rem;color:var(--color-text-hint);line-height:1.6;margin:0}.platform-cta{font-family:Plus Jakarta Sans,sans-serif;font-size:.95rem;font-weight:600;padding:.85rem 2rem;background:transparent;color:var(--color-primary);border:1px solid var(--color-primary-border);border-radius:8px;cursor:pointer;transition:background .2s,border-color .2s,transform .15s,box-shadow .3s}.platform-cta:hover{background:var(--color-primary-bg);border-color:var(--color-primary);transform:translateY(-2px);box-shadow:0 8px 30px #10b98126}.comparison-section{padding:7rem 2rem}.comparison-inner{max-width:720px;margin:0 auto}.comparison-table{border:1px solid var(--color-border);border-radius:12px;overflow:hidden}.comp-header,.comp-row{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:0}.comp-header{background:var(--color-bg-card);border-bottom:1px solid var(--color-border);padding:.75rem 1.25rem;font-family:Plus Jakarta Sans,sans-serif;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em}.comp-header .comp-them{color:var(--color-text-faint)}.comp-header .comp-us{color:var(--color-primary)}.comp-row{padding:.875rem 1.25rem;border-bottom:1px solid var(--color-bg-card);font-family:Plus Jakarta Sans,sans-serif;font-size:.825rem;transition:background .2s}.comp-row:last-child{border-bottom:none}.comp-row:hover{background:var(--color-bg-card)}.comp-label{font-weight:600;color:var(--color-text-secondary)}.comp-row .comp-them{color:var(--color-text-faint)}.comp-row .comp-us{color:var(--color-primary-light);font-weight:500}.subjects-section{padding:7rem 2rem;background:linear-gradient(180deg,transparent 0%,rgba(16,185,129,.01) 50%,transparent 100%)}.subjects-inner{max-width:900px;margin:0 auto;text-align:center}.subjects-desc{font-family:Plus Jakarta Sans,sans-serif;font-size:.9rem;color:var(--color-text-hint);line-height:1.6;max-width:600px;margin:-2rem auto 3rem}.subjects-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;text-align:left}.subject-card{padding:1.25rem;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:10px;transition:border-color .3s,transform .2s}.subject-card:hover{border-color:var(--color-primary-border);transform:translateY(-2px)}.subject-card--featured{border-color:var(--color-primary-border);background:#10b98108;position:relative}.subject-badge{display:inline-block;font-family:Plus Jakarta Sans,sans-serif;font-size:.6rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--color-primary);background:var(--color-primary-bg);padding:.2rem .5rem;border-radius:4px;margin-bottom:.5rem}.subject-card h4{font-family:Plus Jakarta Sans,sans-serif;font-size:.9rem;font-weight:600;color:var(--color-text);margin:0 0 .25rem}.subject-card p{font-family:Plus Jakarta Sans,sans-serif;font-size:.75rem;color:var(--color-text-hint);margin:0;line-height:1.5}.faq-section{padding:7rem 2rem}.faq-inner{max-width:640px;margin:0 auto}.faq-list{display:flex;flex-direction:column;gap:0}.faq-item{border-bottom:1px solid var(--color-border)}.faq-question{width:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.25rem 0;background:none;border:none;color:var(--color-text-secondary);font-family:Plus Jakarta Sans,sans-serif;font-size:.9rem;font-weight:600;text-align:left;cursor:pointer;transition:color .2s}.faq-question:hover{color:var(--color-text)}.faq-chevron{flex-shrink:0;color:var(--color-text-faint);transition:transform .3s ease}.faq-item.open .faq-chevron{transform:rotate(180deg)}.faq-answer{max-height:0;overflow:hidden;transition:max-height .35s ease,padding .35s ease;padding:0}.faq-item.open .faq-answer{max-height:300px;padding-bottom:1.25rem}.faq-answer p{font-family:Plus Jakarta Sans,sans-serif;font-size:.825rem;color:var(--color-text-hint);line-height:1.7;margin:0}.final-cta-section{padding:8rem 2rem;text-align:center;position:relative}.final-cta-section:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:500px;height:500px;border-radius:50%;background:radial-gradient(circle,rgba(16,185,129,.06),transparent 70%);pointer-events:none}.final-cta-inner h2{font-family:"Instrument Serif",Georgia,serif;font-size:clamp(2rem,4vw,3.25rem);font-weight:400;letter-spacing:-.03em;color:var(--color-text);margin:0 0 .75rem}.final-cta-inner p{font-family:Plus Jakarta Sans,sans-serif;font-size:1rem;color:var(--color-text-hint);margin:0 0 2.5rem}.final-cta-buttons{display:flex;align-items:center;justify-content:center;gap:1rem;flex-wrap:wrap}.final-cta-btn{font-family:Plus Jakarta Sans,sans-serif;font-size:1rem;font-weight:600;padding:1rem 2.5rem;background:var(--color-primary);color:#fff;border:none;border-radius:8px;cursor:pointer;transition:background .2s,transform .15s,box-shadow .3s;position:relative;z-index:1}.final-cta-btn:hover{background:var(--color-primary-light);transform:translateY(-2px);box-shadow:0 12px 40px #10b9814d}.final-cta-btn-secondary{font-family:Plus Jakarta Sans,sans-serif;font-size:1rem;font-weight:600;padding:1rem 2.5rem;background:transparent;color:var(--color-primary);border:1px solid var(--color-primary-border);border-radius:8px;cursor:pointer;transition:background .2s,border-color .2s,transform .15s;position:relative;z-index:1}.final-cta-btn-secondary:hover{background:var(--color-primary-bg);border-color:var(--color-primary);transform:translateY(-2px)}.landing-footer{border-top:1px solid var(--color-border-subtle);padding:0}.footer-inner{max-width:960px;margin:0 auto;padding:3rem 2rem;display:flex;justify-content:space-between;align-items:flex-start;gap:4rem}.footer-logo{font-family:"Instrument Serif",Georgia,serif;font-size:1.25rem;font-style:italic;color:var(--color-text)}.footer-tagline{font-family:Plus Jakarta Sans,sans-serif;font-size:.775rem;color:var(--color-text-faint);margin:.375rem 0 0}.footer-links{display:flex;gap:4rem}.footer-col{display:flex;flex-direction:column;gap:.5rem}.footer-col h5{font-family:Plus Jakarta Sans,sans-serif;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-hint);margin:0 0 .25rem}.footer-col a{font-family:Plus Jakarta Sans,sans-serif;font-size:.8rem;color:var(--color-text-faint);text-decoration:none;transition:color .2s}.footer-col a:hover{color:var(--color-text-muted)}.footer-link-btn{background:none;border:none;padding:0;font-family:Plus Jakarta Sans,sans-serif;font-size:.8rem;color:var(--color-text-faint);text-decoration:none;text-align:left;cursor:pointer;transition:color .2s}.footer-link-btn:hover{color:var(--color-text-muted)}.footer-bottom{padding:1.25rem 2rem;border-top:1px solid var(--color-bg-card);text-align:center}.footer-bottom span{font-family:Plus Jakarta Sans,sans-serif;font-size:.7rem;color:var(--color-text-subtle)}@media(max-width:768px){.landing-nav{padding:1rem 1.5rem}.nav-links{display:none}.hero{padding:5rem 1.5rem 3rem}.features-grid,.subjects-grid,.platform-grid{grid-template-columns:1fr;gap:1rem}.trust-inner{flex-direction:column;gap:1.5rem}.stat-divider{width:40px;height:1px}.mockup-body{flex-direction:column;min-height:auto}.mockup-board{border-right:none;border-bottom:1px solid var(--color-border-subtle)}.mockup-avatar{min-height:160px}.comp-header,.comp-row{grid-template-columns:1fr 1fr 1fr;font-size:.7rem;padding:.75rem}.footer-inner{flex-direction:column;gap:2rem}.hero-demo-video{width:95vw;border-radius:12px;margin-bottom:2rem}.topic-chips-overlay{width:calc(100% - 2rem);max-width:420px;padding:2rem 1.5rem}}@media(max-width:480px){.hero h1{font-size:2.75rem}.stat-number{font-size:1.5rem}.section-headline{font-size:1.75rem}}@media(prefers-reduced-motion:reduce){.reveal{transition:none!important}.reveal.revealed{opacity:1;transform:none}.hero:before,.hero:after,.voice-wave span,.avatar-silhouette,.board-line,.proactive-bubble,.verify-check,.adaptive-bars span,.mockup-avatar-glow{animation:none!important;opacity:1!important;transform:none!important}}.surface-nav{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 3rem;max-width:var(--study-content-max-width, 1280px);margin:0 auto;width:100%}.surface-nav__links{display:flex;align-items:center;gap:.25rem}.surface-nav__dot{color:var(--color-text-subtle);margin:0 .5rem;font-size:.8rem}.surface-nav__link{background:none;border:none;font-family:Plus Jakarta Sans,sans-serif;font-size:.8rem;font-weight:500;color:var(--color-text-hint);cursor:pointer;padding:.25rem 0;border-bottom:2px solid transparent;transition:color .2s ease,border-color .2s ease}.surface-nav__link:hover{color:var(--color-text-muted)}.surface-nav__link--active{color:var(--color-text);border-bottom-color:var(--color-primary);padding-bottom:.15rem}.surface-nav__user{display:flex;align-items:center;gap:.75rem}.surface-nav__view-toggle{display:flex;gap:.15rem;background:var(--color-bg-card-hover);border-radius:6px;padding:.15rem}.surface-nav__view-btn{background:none;border:none;font-family:Plus Jakarta Sans,sans-serif;font-size:.65rem;font-weight:500;color:var(--color-text-hint);cursor:pointer;padding:.2rem .5rem;border-radius:4px;transition:all .2s ease}.surface-nav__view-btn:hover{color:var(--color-text-muted)}.surface-nav__view-btn--active{color:var(--color-text);background:var(--color-border-strong)}.surface-nav__theme-toggle{background:none;border:none;font-size:.9rem;cursor:pointer;opacity:.6;transition:opacity .2s;padding:.2rem;line-height:1;color:var(--color-text-muted)}.surface-nav__theme-toggle:hover{opacity:1}.surface-nav__name{font-family:Plus Jakarta Sans,sans-serif;font-size:.75rem;color:var(--color-text-muted)}.surface-nav__logout{background:none;border:none;font-family:Plus Jakarta Sans,sans-serif;font-size:.7rem;color:var(--color-text-hint);cursor:pointer;opacity:0;transition:opacity .2s ease,color .2s ease}.surface-nav:hover .surface-nav__logout{opacity:1}.surface-nav__logout:hover{color:var(--color-text)}@media(min-width:1024px){.surface-nav{max-width:1200px}}@media(max-width:768px){.surface-nav{padding:1rem 1.25rem}.surface-nav__link{font-size:.75rem}}.study{min-height:100vh;background:var(--color-bg);color:var(--color-text);padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}.study__surface{max-width:var(--study-content-max-width, 1280px);margin:0 auto;padding:0 3rem 4rem}@media(min-width:1024px){.study__surface{max-width:1200px;padding:0 4rem 4rem}}@media(max-width:768px){.study__surface{padding:0 1.25rem 3rem}}.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}.study__offline{background:#f59e0b1a;border-bottom:1px solid rgba(245,158,11,.2);color:#f59e0b;font-family:Plus Jakarta Sans,sans-serif;font-size:.75rem;text-align:center;padding:.5rem}.study__surface>*{animation:surfaceEnter var(--study-surface-transition, .3s cubic-bezier(.16, 1, .3, 1)) both}@keyframes surfaceEnter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(min-width:1024px){.study__surface>*{animation:surfaceEnterDesktop .55s cubic-bezier(.16,1,.3,1) both}.study__surface>*:nth-child(1){animation-delay:.05s}.study__surface>*:nth-child(2){animation-delay:.12s}.study__surface>*:nth-child(3){animation-delay:.19s}.study__surface>*:nth-child(4){animation-delay:.26s}.study__surface>*:nth-child(5){animation-delay:.33s}@keyframes surfaceEnterDesktop{0%{opacity:0;transform:translateY(20px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}}.study__loader{display:flex;justify-content:center;align-items:center;padding:4rem 0}.study__spinner{width:28px;height:28px;border:2px solid var(--color-primary-bg-hover);border-top-color:var(--color-primary);border-radius:50%;animation:studySpin .8s linear infinite}@keyframes studySpin{to{transform:rotate(360deg)}}.study-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;padding:2rem;text-align:center}.study-error__heading{font-family:"Instrument Serif",serif;font-size:1.5rem;color:var(--color-text);margin-bottom:.75rem}.study-error__message{font-family:Plus Jakarta Sans,sans-serif;font-size:.875rem;color:var(--color-text-muted);margin-bottom:1.5rem;max-width:400px}.study-error__retry{background:var(--color-primary);color:var(--color-bg);border:none;font-family:Plus Jakarta Sans,sans-serif;font-size:.875rem;font-weight:600;padding:.625rem 1.5rem;border-radius:8px;cursor:pointer;transition:opacity .2s ease}.study-error__retry:hover{opacity:.9}.study__view-toggle{display:flex;justify-content:center;gap:2px;padding:0 2rem;margin-bottom:.5rem}.study__toggle-btn{background:var(--color-bg-card);border:1px solid var(--color-border-subtle);font-family:Plus Jakarta Sans,sans-serif;font-size:.7rem;font-weight:500;color:var(--color-text-hint);cursor:pointer;padding:.35rem .9rem;transition:color .2s ease,background .2s ease,border-color .2s ease}.study__toggle-btn:first-child{border-radius:6px 0 0 6px}.study__toggle-btn:last-child{border-radius:0 6px 6px 0}.study__toggle-btn:hover{color:var(--color-text-muted);background:var(--color-bg-card-hover)}.study__toggle-btn--active{color:var(--color-primary);background:var(--color-primary-bg);border-color:var(--color-primary-border)}.study__toggle-btn--active:hover{color:var(--color-primary-light)}.study button:focus-visible,.study a:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}@media(prefers-reduced-motion:reduce){.study__spinner{animation:none;border-top-color:var(--color-primary)}.study__surface>*{animation:none!important;opacity:1!important;transform:none!important}}@media(min-width:1024px){.study:before,.study:after{content:"";position:fixed;inset:-6px;pointer-events:none;z-index:0;transform:translate(var(--mx, 0px),var(--my, 0px));will-change:transform;transition:transform .15s ease-out}.study>*{position:relative;z-index:1}@keyframes envDeskIn{0%{opacity:0}to{opacity:1}}@keyframes envJournalIn{0%{opacity:0}to{opacity:1}}@keyframes envShelfIn{0%{opacity:0}to{opacity:1}}@keyframes envPracticeIn{0%{opacity:0}to{opacity:1}}@keyframes envReadingIn{0%{opacity:0}to{opacity:1}}@keyframes lampBreathe{0%,to{opacity:1}50%{opacity:.92}}.study[data-surface=desk]:before{animation:envDeskIn .8s ease both,lampBreathe 10s ease-in-out 1s infinite;background:radial-gradient(ellipse 40% 50% at 50% 30%,rgba(232,208,112,.09) 0%,rgba(200,170,80,.04) 40%,transparent 70%),radial-gradient(ellipse 60% 50% at 50% 50%,rgba(100,80,52,.18) 0%,rgba(60,48,30,.08) 50%,transparent 80%),linear-gradient(to top,rgba(100,70,35,.06) 0%,transparent 20%),radial-gradient(ellipse 80% 80% at 50% 50%,transparent 30%,rgba(0,0,0,.15) 100%)}.study[data-surface=desk]:after{animation:envDeskIn .8s ease .1s both;background:linear-gradient(to top,rgba(74,56,40,.1) 0%,rgba(74,56,40,.06) 2px,transparent 3px,transparent 12%,transparent 100%),linear-gradient(to right,rgba(40,30,18,.07) 0%,transparent 6%),linear-gradient(to left,rgba(40,30,18,.07) 0%,transparent 6%),transparent}.study[data-surface=journal]:before{animation:envJournalIn .8s ease both,lampBreathe 10s ease-in-out 1s infinite;background:radial-gradient(ellipse 35% 45% at 50% 32%,rgba(232,208,112,.1) 0%,rgba(200,170,80,.05) 40%,transparent 70%),radial-gradient(ellipse 45% 50% at 50% 45%,rgba(250,245,239,.04) 0%,rgba(100,80,52,.12) 40%,transparent 75%),radial-gradient(ellipse 70% 70% at 50% 50%,rgba(80,64,40,.08) 0%,transparent 70%),radial-gradient(ellipse 80% 80% at 50% 50%,transparent 30%,rgba(0,0,0,.18) 100%)}.study[data-surface=journal]:after{animation:envJournalIn .8s ease .1s both;background:linear-gradient(to right,transparent 48.5%,rgba(0,0,0,.06) 49.5%,rgba(0,0,0,.08) 50%,rgba(0,0,0,.06) 50.5%,transparent 51.5%),linear-gradient(to top,rgba(74,56,40,.06) 0%,transparent 8%),transparent,transparent}.study[data-surface=shelf]:before{animation:envShelfIn .8s ease both;background:radial-gradient(ellipse 70% 60% at 50% 45%,rgba(50,40,28,.15) 0%,rgba(30,24,18,.08) 50%,transparent 80%),linear-gradient(to top,rgba(232,208,112,.03) 0%,transparent 25%),linear-gradient(to right,rgba(0,0,0,.12) 0%,transparent 15%),linear-gradient(to left,rgba(0,0,0,.12) 0%,transparent 15%)}.study[data-surface=shelf]:after{animation:envShelfIn .8s ease .1s both;background:linear-gradient(to right,rgba(74,56,40,.12) 0%,rgba(74,56,40,.08) 12px,rgba(74,56,40,.03) 24px,transparent 48px),linear-gradient(to left,rgba(74,56,40,.12) 0%,rgba(74,56,40,.08) 12px,rgba(74,56,40,.03) 24px,transparent 48px),repeating-linear-gradient(to bottom,transparent 0%,transparent 28vh,rgba(74,56,40,.04) 28vh,rgba(74,56,40,.04) calc(28vh + 1px),transparent calc(28vh + 1px)),transparent}.study[data-surface=practice]:before{animation:envPracticeIn .8s ease both;background:radial-gradient(ellipse 50% 40% at 50% 20%,rgba(200,210,220,.04) 0%,transparent 70%),radial-gradient(ellipse 60% 55% at 50% 45%,rgba(30,64,48,.2) 0%,rgba(20,40,30,.1) 50%,transparent 80%),radial-gradient(ellipse 70% 50% at 50% 35%,rgba(255,255,255,.015) 0%,transparent 70%),radial-gradient(ellipse 80% 80% at 50% 50%,transparent 30%,rgba(0,0,0,.18) 100%)}.study[data-surface=practice]:after{animation:envPracticeIn .8s ease .1s both;background:linear-gradient(to top,rgba(74,56,40,.08) 0%,rgba(74,56,40,.05) 4px,rgba(74,56,40,.02) 8px,transparent 16px),linear-gradient(to bottom,rgba(74,56,40,.04) 0%,transparent 6px),transparent,transparent}.study[data-surface=reading]:before{animation:envReadingIn .8s ease both,lampBreathe 10s ease-in-out 1s infinite;background:radial-gradient(ellipse 30% 40% at 50% 30%,rgba(232,208,112,.08) 0%,rgba(200,170,80,.03) 50%,transparent 70%),radial-gradient(ellipse 40% 50% at 50% 45%,rgba(100,80,52,.1) 0%,transparent 70%),radial-gradient(ellipse 80% 80% at 50% 50%,transparent 20%,rgba(0,0,0,.12) 100%),transparent}.study[data-surface=reading]:after{background:transparent;animation:envReadingIn .8s ease both}.study[data-surface=call]:before,.study[data-surface=call]:after,.study[data-surface=chat]:before,.study[data-surface=chat]:after{opacity:0}.study[data-surface=journal]{cursor:text}.study[data-surface=practice]{cursor:crosshair}.study[data-surface=shelf]{cursor:pointer}.study[data-time=morning]{background-color:#0c0d10}.study[data-time=evening]{background-color:#100e08}.study[data-time=night]{background-color:#06060e}.study[data-time=night]:before{filter:brightness(.75) saturate(.85)}.study[data-time=evening]:before{filter:brightness(.9) saturate(1.2)}.study[data-surface=desk]:before,.study[data-surface=journal]:before,.study[data-surface=reading]:before{filter:brightness(max(.2,var(--lamp-intensity, 1)))}.study[data-time=night][data-surface=desk]:before,.study[data-time=night][data-surface=journal]:before,.study[data-time=night][data-surface=reading]:before{filter:brightness(max(.15,calc(.75 * var(--lamp-intensity, 1)))) saturate(.85)}.study[data-time=evening][data-surface=desk]:before,.study[data-time=evening][data-surface=journal]:before,.study[data-time=evening][data-surface=reading]:before{filter:brightness(max(.18,calc(.9 * var(--lamp-intensity, 1)))) saturate(1.2)}@keyframes dustDrift1{0%,to{transform:translate(0);opacity:0}15%,85%{opacity:.4}50%{transform:translate(30px,60px)}}@keyframes dustDrift2{0%,to{transform:translate(0);opacity:0}15%,85%{opacity:.3}50%{transform:translate(-25px,45px)}}@keyframes dustDrift3{0%,to{transform:translate(0);opacity:0}15%,85%{opacity:.35}50%{transform:translate(15px,-35px)}}.dust-mote{position:fixed;width:3px;height:3px;border-radius:50%;background:#e8d07066;pointer-events:none;z-index:0}.dust-mote:nth-of-type(1){animation:dustDrift1 18s ease-in-out infinite}.dust-mote:nth-of-type(2){animation:dustDrift2 22s ease-in-out -8s infinite}.dust-mote:nth-of-type(3){animation:dustDrift3 26s ease-in-out -15s infinite}.lamp-toggle{position:fixed;top:50%;right:24px;transform:translateY(-50%);z-index:2;background:none;border:none;padding:12px;cursor:pointer;opacity:.4;transition:opacity .3s}.lamp-toggle:hover{opacity:1}.lamp-toggle:active .lamp-toggle__bulb{transform:scale(.6)!important;transition:transform .05s}.lamp-toggle__bulb{display:block;width:14px;height:14px;border-radius:50%;background:radial-gradient(circle,#e8d070e6,#e8d07000 70%);box-shadow:0 0 10px #e8d07080;transition:transform .2s ease-out,box-shadow .3s,background .3s}.lamp-toggle__bulb[data-level=off]{width:10px;height:10px;background:radial-gradient(circle,#786e5a80,#50463200 70%);box-shadow:none}.lamp-toggle__bulb[data-level=dim]{transform:scale(.85);box-shadow:0 0 6px #e8d07040}.lamp-toggle__bulb[data-level=bright]{transform:scale(1.5);box-shadow:0 0 22px #e8d070bf}.study:not([data-surface=call]):not([data-surface=chat]):before,.study:not([data-surface=call]):not([data-surface=chat]):after{opacity:.3!important}.study[data-time=morning]{background-color:#f0f1f5}.study[data-time=evening]{background-color:#f5f0e8}.study[data-time=night]{background-color:#eaebf0}.dust-mote{background:#c8b47840}.lamp-toggle__bulb{background:radial-gradient(circle,#c8b464b3,#c8b46400 70%);box-shadow:0 0 8px #c8b46459}:root[data-theme=dark] .study:before,:root[data-theme=dark] .study:after{opacity:1!important}:root[data-theme=dark] .study[data-time=morning]{background-color:#0c0d10}:root[data-theme=dark] .study[data-time=evening]{background-color:#100e08}:root[data-theme=dark] .study[data-time=night]{background-color:#06060e}:root[data-theme=dark] .dust-mote{background:#e8d07066}:root[data-theme=dark] .lamp-toggle__bulb{background:radial-gradient(circle,#e8d070e6,#e8d07000 70%);box-shadow:0 0 10px #e8d07080}@media(prefers-reduced-motion:reduce){.study:before,.study:after{animation:none!important;opacity:1}.dust-mote{display:none}}}.auth-page{min-height:100vh;background:var(--color-bg);display:flex;align-items:center;justify-content:center;padding:2rem 1.25rem}.auth-card{position:relative;background:var(--color-bg-card);border:1px solid var(--color-border-subtle);border-radius:14px;padding:2.5rem;width:100%;max-width:400px}.auth-back{background:none;border:none;font-family:Plus Jakarta Sans,sans-serif;font-size:.75rem;color:var(--color-text-hint);cursor:pointer;padding:0;margin-bottom:1.75rem;transition:color .2s ease;display:block}.auth-back:hover{color:var(--color-text-muted)}.auth-logo{font-family:"Instrument Serif",serif;font-style:italic;font-size:1.5rem;color:var(--color-text);margin-bottom:.5rem;letter-spacing:-.01em}.auth-heading{font-family:Plus Jakarta Sans,sans-serif;font-size:1rem;font-weight:500;color:var(--color-text-muted);margin:0 0 1.75rem}.auth-form{display:flex;flex-direction:column;gap:1rem}.auth-field{display:flex;flex-direction:column;gap:.35rem}.auth-label{font-family:Plus Jakarta Sans,sans-serif;font-size:.75rem;font-weight:500;color:var(--color-text-muted)}.auth-input{background:var(--color-bg-input);border:1px solid var(--color-border);border-radius:8px;padding:.6rem .75rem;font-family:Plus Jakarta Sans,sans-serif;font-size:.875rem;color:var(--color-text);outline:none;transition:border-color .2s ease;width:100%;box-sizing:border-box}.auth-input::placeholder{color:var(--color-text-subtle)}.auth-input:focus{border-color:var(--color-primary-border)}.auth-error{font-family:Plus Jakarta Sans,sans-serif;font-size:.8rem;color:var(--color-error-text);margin:0;padding:.5rem .75rem;background:var(--color-error-bg);border:1px solid rgba(239,68,68,.15);border-radius:6px}.auth-submit{margin-top:.5rem;background:var(--color-primary);border:none;border-radius:8px;padding:.7rem 1rem;font-family:Plus Jakarta Sans,sans-serif;font-size:.875rem;font-weight:600;color:#fff;cursor:pointer;width:100%;transition:background .2s ease,opacity .2s ease}.auth-submit:hover:not(:disabled){background:var(--color-primary-dark)}.auth-submit:disabled{opacity:.6;cursor:not-allowed}.auth-switch{margin:1.25rem 0 0;font-family:Plus Jakarta Sans,sans-serif;font-size:.8rem;color:var(--color-text-hint);text-align:center}.auth-switch-link{background:none;border:none;font-family:Plus Jakarta Sans,sans-serif;font-size:.8rem;color:var(--color-primary);cursor:pointer;padding:0;text-decoration:none;transition:text-decoration .15s ease}.auth-switch-link:hover{text-decoration:underline}.signup-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--color-bg);padding:2rem}.signup-content{display:flex;flex-direction:column;align-items:center;max-width:420px;width:100%;text-align:center}.signup-back{align-self:flex-start;font-family:Plus Jakarta Sans,sans-serif;font-size:.85rem;color:var(--color-text-muted);background:none;border:none;cursor:pointer;padding:0;margin-bottom:2rem;transition:color .2s}.signup-back:hover{color:var(--color-text)}.signup-logo{font-family:"Instrument Serif",Georgia,serif;font-size:1.5rem;color:var(--color-primary);margin-bottom:2rem}.signup-heading{font-family:"Instrument Serif",Georgia,serif;font-size:clamp(1.5rem,3vw,2rem);font-weight:400;color:var(--color-text);margin:0 0 .5rem;line-height:1.3}.signup-subheading{font-family:Plus Jakarta Sans,sans-serif;font-size:1rem;color:var(--color-text-muted);margin:0 0 2rem;line-height:1.5}.signup-form{width:100%;display:flex;flex-direction:column;gap:1rem}.signup-input{width:100%;padding:.85rem 1rem;background:var(--color-bg-card-hover);border:1px solid var(--color-border-strong);border-radius:8px;color:var(--color-text);font-family:Plus Jakarta Sans,sans-serif;font-size:.95rem;outline:none;transition:border-color .2s;box-sizing:border-box}.signup-input:focus{border-color:var(--color-primary)}.signup-input::placeholder{color:#a8a29e99}.signup-submit{width:100%;padding:.85rem 2rem;background:var(--color-primary);color:var(--color-bg);font-family:Plus Jakarta Sans,sans-serif;font-weight:600;font-size:.95rem;border:none;border-radius:8px;cursor:pointer;transition:background .2s,transform .15s}.signup-submit:hover:not(:disabled){background:var(--color-primary-light);transform:translateY(-1px)}.signup-submit:active:not(:disabled){transform:translateY(0)}.signup-submit:disabled{opacity:.5;cursor:not-allowed}.signup-error{font-family:Plus Jakarta Sans,sans-serif;font-size:.8rem;color:var(--color-error-strong);margin:0}.signup-fine-print{font-family:Plus Jakarta Sans,sans-serif;font-size:.75rem;color:#a8a29e80;margin:.5rem 0 0}.signup-success{display:flex;flex-direction:column;align-items:center;gap:1rem;animation:signupReveal .5s cubic-bezier(.16,1,.3,1)}.signup-check{width:48px;height:48px;border-radius:50%;background:var(--color-primary-bg-hover);display:flex;align-items:center;justify-content:center;color:var(--color-primary)}.signup-success-heading{font-family:"Instrument Serif",Georgia,serif;font-size:clamp(1.25rem,2.5vw,1.75rem);font-weight:400;color:var(--color-text);margin:0}.signup-success-text{font-family:Plus Jakarta Sans,sans-serif;font-size:.95rem;color:var(--color-text-muted);margin:0;line-height:1.5}.signup-home-btn{margin-top:1rem;padding:.7rem 1.5rem;background:var(--color-bg-card-hover);color:var(--color-text);font-family:Plus Jakarta Sans,sans-serif;font-weight:500;font-size:.85rem;border:1px solid var(--color-border-strong);border-radius:8px;cursor:pointer;transition:background .2s}.signup-home-btn:hover{background:var(--color-border-strong)}@keyframes signupReveal{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.apbio-page .reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}.apbio-page .reveal.revealed{opacity:1;transform:translateY(0)}.apbio-page{min-height:100vh;background:var(--color-bg);color:var(--color-text);display:flex;flex-direction:column;overflow-x:hidden;font-family:Plus Jakarta Sans,sans-serif}.apbio-nav{position:fixed;top:0;left:0;right:0;padding:1.25rem 2.5rem;z-index:50;display:flex;align-items:center;justify-content:space-between;background:var(--color-nav-bg);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--color-border-subtle)}.apbio-nav-logo{font-family:"Instrument Serif",Georgia,serif;font-size:1.5rem;font-weight:400;font-style:italic;letter-spacing:-.01em;color:var(--color-text)}.apbio-nav-links{display:flex;align-items:center;gap:2rem}.apbio-nav-link{font-family:Plus Jakarta Sans,sans-serif;font-size:.8rem;font-weight:500;color:var(--color-text-muted);text-decoration:none;transition:color .2s;letter-spacing:.01em}.apbio-nav-link:hover{color:var(--color-text)}button.apbio-nav-signin{background:none;border:none;padding:0;cursor:pointer}.apbio-nav-cta{font-family:Plus Jakarta Sans,sans-serif;font-size:.8rem;font-weight:600;padding:.5rem 1.25rem;background:var(--color-primary);color:#fff;border:none;border-radius:6px;cursor:pointer;transition:background .2s,transform .1s}.apbio-nav-cta:hover{background:var(--color-primary-light);transform:translateY(-1px)}.apbio-hero{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:7rem 2rem 4rem;position:relative;overflow:hidden}.apbio-hero:before,.apbio-hero:after{content:"";position:absolute;border-radius:50%;filter:blur(80px);opacity:.35;pointer-events:none;z-index:0}.apbio-hero:before{width:600px;height:600px;background:radial-gradient(circle,rgba(16,185,129,.15),transparent 70%);top:-200px;right:-200px;animation:apbioOrbFloat 20s ease-in-out infinite}.apbio-hero:after{width:500px;height:500px;background:radial-gradient(circle,rgba(16,185,129,.08),transparent 70%);bottom:-100px;left:-150px;animation:apbioOrbFloat 25s ease-in-out infinite reverse}@keyframes apbioOrbFloat{0%,to{transform:translate(0)}25%{transform:translate(30px,-20px)}50%{transform:translate(-20px,30px)}75%{transform:translate(15px,15px)}}.apbio-hero-text{text-align:center;display:flex;flex-direction:column;align-items:center;position:relative;z-index:1}.apbio-hero-headline{font-family:"Instrument Serif",Georgia,serif;font-size:clamp(2.75rem,7vw,5.5rem);font-weight:400;letter-spacing:-.04em;line-height:1.05;color:var(--color-text);margin:0;max-width:800px}.apbio-hero-subtitle{font-family:Plus Jakarta Sans,sans-serif;font-size:clamp(1rem,1.8vw,1.125rem);color:var(--color-text-muted);max-width:480px;line-height:1.6;margin-top:1.75rem;font-weight:400}.apbio-hero-cta{margin-top:2.5rem;padding:.9rem 2.25rem;background:var(--color-primary);color:#fff;font-family:Plus Jakarta Sans,sans-serif;font-weight:600;font-size:.95rem;border:none;border-radius:8px;cursor:pointer;transition:background .2s,transform .15s,box-shadow .3s;box-shadow:0 0 #10b98100;min-height:44px}.apbio-hero-cta:hover{background:var(--color-primary-light);transform:translateY(-2px);box-shadow:0 8px 40px #10b9814d}.apbio-hero-cta:active{transform:translateY(0)}.apbio-hero-cta-sub{display:block;margin-top:.875rem;font-family:Plus Jakarta Sans,sans-serif;font-size:.775rem;color:var(--color-text-hint)}.apbio-section-label{font-family:Plus Jakarta Sans,sans-serif;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.12em;color:var(--color-primary);margin:0 0 1rem}.apbio-section-headline{font-family:"Instrument Serif",Georgia,serif;font-size:clamp(1.75rem,4vw,2.75rem);font-weight:400;letter-spacing:-.03em;line-height:1.1;color:var(--color-text);margin:0 0 3rem;max-width:600px}.apbio-how{padding:6rem 2rem}.apbio-how-inner{max-width:1080px;margin:0 auto}.apbio-how-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.apbio-how-card{background:var(--color-bg-card);border:1px solid var(--color-border-subtle);border-radius:12px;padding:2rem;transition:background .3s,border-color .3s}.apbio-how-card:hover{background:var(--color-bg-card-hover);border-color:var(--color-primary-border)}.apbio-how-step-num{font-family:Plus Jakarta Sans,sans-serif;font-size:.7rem;font-weight:600;color:var(--color-primary);letter-spacing:.05em;display:block;margin-bottom:1rem}.apbio-how-card h3{font-family:Plus Jakarta Sans,sans-serif;font-size:1.05rem;font-weight:600;color:var(--color-text);margin:0 0 .75rem}.apbio-how-card p{font-size:.875rem;color:var(--color-text-muted);line-height:1.6;margin:0}.apbio-whatyouget{padding:6rem 2rem}.apbio-whatyouget-inner{max-width:1080px;margin:0 auto}.apbio-whatyouget-grid{display:grid;grid-template-columns:1fr 320px;gap:3rem;align-items:start}.apbio-feature-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:1.5rem}.apbio-feature-item{padding-left:1.25rem;border-left:2px solid var(--color-primary-border)}.apbio-feature-item h4{font-family:Plus Jakarta Sans,sans-serif;font-size:.95rem;font-weight:600;color:var(--color-text);margin:0 0 .375rem}.apbio-feature-item p{font-size:.85rem;color:var(--color-text-muted);line-height:1.55;margin:0}.apbio-pricing-card{background:var(--color-bg-card);border:1px solid var(--color-primary-border);border-radius:12px;padding:2.5rem 2rem;display:flex;flex-direction:column;align-items:center;text-align:center;position:sticky;top:6rem}.apbio-pricing-amount{font-family:"Instrument Serif",Georgia,serif;font-size:3rem;font-weight:400;color:var(--color-text);letter-spacing:-.03em}.apbio-pricing-desc{font-size:.9rem;color:var(--color-text-muted);margin-top:.5rem}.apbio-pricing-detail{font-size:.8rem;color:var(--color-text-hint);margin-top:.25rem}.apbio-pricing-divider{width:40px;height:1px;background:var(--color-border);margin:1.5rem 0}.apbio-pricing-free{font-size:.85rem;color:var(--color-primary);font-weight:500}.apbio-credibility{padding:4rem 2rem;border-top:1px solid var(--color-border-subtle);border-bottom:1px solid var(--color-border-subtle)}.apbio-credibility-inner{max-width:1080px;margin:0 auto;display:flex;justify-content:center;gap:4rem}.apbio-stat{text-align:center;max-width:280px}.apbio-stat-number{font-family:"Instrument Serif",Georgia,serif;font-size:2rem;color:var(--color-text);display:block;letter-spacing:-.02em}.apbio-stat-label{font-size:.8rem;font-weight:600;color:var(--color-primary);text-transform:uppercase;letter-spacing:.08em;display:block;margin-top:.375rem}.apbio-stat-detail{font-size:.8rem;color:var(--color-text-hint);line-height:1.5;margin:.75rem 0 0}.apbio-faq{padding:6rem 2rem}.apbio-faq-inner{max-width:680px;margin:0 auto}.apbio-faq-list{display:flex;flex-direction:column;gap:0}.apbio-faq-item{border-bottom:1px solid var(--color-border-subtle)}.apbio-faq-question{width:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.25rem 0;background:none;border:none;color:var(--color-text);font-family:Plus Jakarta Sans,sans-serif;font-size:.95rem;font-weight:500;text-align:left;cursor:pointer;min-height:44px}.apbio-faq-question:hover{color:var(--color-primary)}.apbio-faq-chevron{flex-shrink:0;transition:transform .3s ease;color:var(--color-text-hint)}.apbio-faq-item.open .apbio-faq-chevron{transform:rotate(180deg)}.apbio-faq-answer{max-height:0;overflow:hidden;transition:max-height .3s ease}.apbio-faq-item.open .apbio-faq-answer{max-height:300px}.apbio-faq-answer p{font-size:.875rem;color:var(--color-text-muted);line-height:1.65;margin:0;padding-bottom:1.25rem}.apbio-final-cta{padding:6rem 2rem;text-align:center}.apbio-final-cta-inner{max-width:600px;margin:0 auto;display:flex;flex-direction:column;align-items:center}.apbio-final-cta-headline{font-family:"Instrument Serif",Georgia,serif;font-size:clamp(1.75rem,4vw,2.75rem);font-weight:400;letter-spacing:-.03em;line-height:1.1;color:var(--color-text);margin:0 0 1.25rem}.apbio-final-cta-body{font-size:1rem;color:var(--color-text-muted);margin:0 0 2rem;line-height:1.6}.apbio-footer{padding:3rem 2rem;border-top:1px solid var(--color-border-subtle)}.apbio-footer-inner{max-width:1080px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:.75rem}.apbio-footer-logo{font-family:"Instrument Serif",Georgia,serif;font-size:1.25rem;font-weight:400;font-style:italic;color:var(--color-text)}.apbio-footer-tagline{font-size:.8rem;color:var(--color-text-hint);margin:0}.apbio-footer-copy{font-size:.7rem;color:var(--color-text-faint);margin-top:.5rem}@media(max-width:1024px){.apbio-whatyouget-grid{grid-template-columns:1fr}.apbio-pricing-card{position:static;max-width:360px;margin:0 auto}}@media(max-width:768px){.apbio-nav-links{gap:1rem}.apbio-nav-link:not(.apbio-nav-signin){display:none}.apbio-how-grid{grid-template-columns:1fr}.apbio-credibility-inner{flex-direction:column;align-items:center;gap:2.5rem}.apbio-hero{padding:6rem 1.5rem 3rem}.apbio-section-headline{font-size:clamp(1.5rem,5vw,2.25rem)}}@media(max-width:480px){.apbio-nav{padding:1rem 1.25rem}.apbio-hero-headline{font-size:clamp(2rem,8vw,2.75rem)}.apbio-hero{padding:5rem 1rem 2.5rem}.apbio-hero-cta{width:100%;text-align:center}.apbio-nav-cta{font-size:.75rem;padding:.45rem 1rem;min-height:44px}.apbio-how,.apbio-whatyouget,.apbio-faq,.apbio-final-cta{padding:4rem 1.25rem}.apbio-how-card{padding:1.5rem}.apbio-credibility{padding:3rem 1.25rem}.apbio-final-cta .apbio-hero-cta{width:100%}}:root{--color-bg: #f5f4f1;--color-bg-elevated: #ffffff;--color-bg-warm: #ede9e3;--color-bg-card: rgba(0, 0, 0, .03);--color-bg-card-hover: rgba(0, 0, 0, .06);--color-bg-input: #ffffff;--color-text: #1c1917;--color-text-secondary: #292524;--color-text-soft: #44403c;--color-text-muted: #78716c;--color-text-hint: #a8a29e;--color-text-faint: #d6d3d1;--color-text-subtle: #e7e5e4;--color-primary: #059669;--color-primary-light: #10b981;--color-primary-dark: #047857;--color-primary-bg: rgba(5, 150, 105, .08);--color-primary-bg-hover: rgba(5, 150, 105, .14);--color-primary-border: rgba(5, 150, 105, .25);--color-accent: #059669;--color-error: #dc2626;--color-error-text: #991b1b;--color-error-strong: #b91c1c;--color-error-bg: rgba(220, 38, 38, .06);--color-success: #16a34a;--color-success-text: #15803d;--color-border: rgba(0, 0, 0, .1);--color-border-subtle: rgba(0, 0, 0, .06);--color-border-strong: rgba(0, 0, 0, .15);--color-backdrop: rgba(0, 0, 0, .25);--color-shadow: rgba(0, 0, 0, .08);--color-nav-bg: rgba(245, 244, 241, .85);--study-content-max-width: 680px;--study-surface-transition: .3s cubic-bezier(.16, 1, .3, 1);--annotation-bg: rgba(5, 150, 105, .06);--annotation-bg-warm: rgba(245, 240, 230, .5);--annotation-border: rgba(5, 150, 105, .25);--color-parchment: rgba(245, 240, 230, .5);--color-ruled-line: rgba(180, 170, 150, .15);--color-margin-line: rgba(180, 60, 60, .12);--color-spine: rgba(0, 0, 0, .08);--color-chalk: #2d2a26;--color-chalk-dim: #44403c}:root[data-theme=dark]{--color-bg: #0a0a0a;--color-bg-elevated: #141414;--color-bg-warm: #1c1a17;--color-bg-card: rgba(255, 255, 255, .03);--color-bg-card-hover: rgba(255, 255, 255, .05);--color-bg-input: #141414;--color-text: #f5f5f4;--color-text-secondary: #e7e5e4;--color-text-soft: #d6d3d1;--color-text-muted: #a8a29e;--color-text-hint: #78716c;--color-text-faint: #57534e;--color-text-subtle: #44403c;--color-primary: #10b981;--color-primary-light: #34d399;--color-primary-dark: #059669;--color-primary-bg: rgba(16, 185, 129, .08);--color-primary-bg-hover: rgba(16, 185, 129, .15);--color-primary-border: rgba(16, 185, 129, .2);--color-accent: #10b981;--color-error: #ef4444;--color-error-text: #fca5a5;--color-error-strong: #f87171;--color-error-bg: rgba(239, 68, 68, .08);--color-success: #22c55e;--color-success-text: #4ade80;--color-border: rgba(255, 255, 255, .08);--color-border-subtle: rgba(255, 255, 255, .05);--color-border-strong: rgba(255, 255, 255, .12);--color-backdrop: rgba(0, 0, 0, .5);--color-shadow: rgba(0, 0, 0, .3);--color-nav-bg: rgba(10, 10, 10, .8);--annotation-bg: rgba(16, 185, 129, .06);--annotation-bg-warm: rgba(250, 245, 239, .08);--annotation-border: rgba(16, 185, 129, .2);--color-parchment: rgba(250, 245, 239, .03);--color-ruled-line: rgba(200, 190, 170, .07);--color-margin-line: rgba(180, 60, 60, .08);--color-spine: rgba(0, 0, 0, .06);--color-chalk: #faf5ef;--color-chalk-dim: #e8e0d4}.app{min-height:100vh;background:var(--color-bg)}.voice-chat.avatar-mode{position:relative;height:100vh;max-height:100vh;display:flex;flex-direction:column;background:var(--color-bg);color:var(--color-text);user-select:none;-webkit-user-select:none;overflow:hidden}.status-dot{width:8px;height:8px;border-radius:50%;background:var(--color-text-muted);flex-shrink:0;transition:background .3s ease}.status-dot.state-listening{background:var(--color-success);animation:pulse 1.5s ease-in-out infinite}.status-dot.state-processing{background:var(--color-accent);animation:pulse .8s ease-in-out infinite}.status-dot.state-speaking{background:var(--color-primary-light);animation:pulse 1.2s ease-in-out infinite}.status-dot.state-muted,.status-dot.state-error{background:var(--color-error)}.status-dot.state-connecting{background:var(--color-accent);animation:pulse .6s ease-in-out infinite}.status-dot.state-connected{background:var(--color-success)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.error-message{position:absolute;top:5rem;left:50%;transform:translate(-50%);background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:var(--color-error-text);padding:.75rem 1.5rem;border-radius:.5rem;font-size:.85rem;text-align:center;max-width:90vw;display:flex;align-items:center;gap:.75rem;z-index:30}.error-text{flex:1}.error-retry-btn{background:#ef444426;border:1px solid rgba(239,68,68,.4);color:var(--color-error-text);padding:.35rem .75rem;min-height:36px;min-width:44px;border-radius:.375rem;font-size:.8rem;cursor:pointer;flex-shrink:0;transition:background .2s ease,border-color .2s ease}.error-retry-btn:hover{background:#ef444440;border-color:#ef444499}.visual-board{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;background:transparent;border:none;border-radius:0;padding:1.5rem;font-family:Patrick Hand,cursive}.visual-board::-webkit-scrollbar{width:4px}.visual-board::-webkit-scrollbar-track{background:transparent}.visual-board::-webkit-scrollbar-thumb{background:#10b98133;border-radius:2px}.visual-board::-webkit-scrollbar-thumb:hover{background:#10b98166}.board-content{display:flex;flex-direction:column;gap:0;justify-content:flex-start}.board-item{background:none;border:none;border-bottom:1px solid rgba(255,255,255,.06);border-radius:8px;padding:1rem 1.25rem;animation:boardSlideIn .5s cubic-bezier(.16,1,.3,1) forwards;opacity:0}.board-item:last-child{border-bottom:none}@keyframes boardSlideIn{0%{opacity:0;transform:translateY(16px);filter:blur(2px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}.board-item-label{display:block;font-family:Plus Jakarta Sans,sans-serif;font-size:.6rem;text-transform:uppercase;letter-spacing:.12em;color:#a8a29e80;margin-bottom:8px}.board-equation{text-align:center;font-size:1.3rem;color:#faf5ef;padding:4px 0;animation:chalkWrite .8s ease forwards}.board-equation .katex{color:#faf5ef;font-size:1.4em}@keyframes chalkWrite{0%{opacity:0;clip-path:inset(0 100% 0 0)}30%{opacity:1}to{opacity:1;clip-path:inset(0 0 0 0)}}.board-text{font-family:Patrick Hand,cursive;color:#faf5ef;font-size:1.35rem;font-weight:500;line-height:1.5;white-space:pre-line;animation:chalkWrite 1s ease forwards}.board-passage{font-family:Patrick Hand,cursive;color:#e8e0d4;font-size:1.2rem;font-weight:400;line-height:1.6;white-space:pre-line;text-align:left;background:#ffffff05;border-radius:8px;padding:10px 14px;animation:chalkWrite 1.2s ease forwards}.board-note{font-family:Patrick Hand,cursive;color:#faf5ef;font-size:1.35rem;font-weight:500;line-height:1.5;white-space:pre-wrap;animation:chalkWrite 1s ease forwards}.board-note.board-math{text-align:center;font-size:1.3rem;padding:4px 0;animation:chalkWrite .8s ease forwards}.board-note.board-math .katex{color:#faf5ef;font-size:1.4em}.board-streamed,.board-streaming{animation:none!important;clip-path:none!important;opacity:1!important}.board-caret{display:inline-block;width:2px;height:1em;margin-left:2px;vertical-align:text-bottom;background:#faf5ef;animation:boardCaretBlink .9s steps(2,start) infinite}@keyframes boardCaretBlink{to{visibility:hidden}}.board-question{display:flex;flex-direction:column;gap:12px}.board-question-text{font-family:Patrick Hand,cursive;color:#faf5ef;font-size:1.4rem;font-weight:600;line-height:1.4;animation:chalkWrite .8s ease forwards}.board-question-text.board-math{text-align:center;padding:4px 0}.board-question-text.board-math .katex{color:#faf5ef;font-size:1.5em}.board-question-input-row{display:flex;gap:8px;align-items:center;animation:boardSlideIn .4s .3s cubic-bezier(.16,1,.3,1) forwards;opacity:0}.board-question-input{flex:1;font-family:Patrick Hand,cursive;font-size:1.2rem;color:#faf5ef;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);border-radius:8px;padding:10px 14px;outline:none;transition:border-color .2s}.board-question-input:focus{border-color:#10b98180}.board-question-input::placeholder{color:#a8a29e80}.board-question-submit{font-family:Plus Jakarta Sans,sans-serif;font-size:.85rem;font-weight:600;color:#faf5ef;background:#10b98133;border:1px solid rgba(16,185,129,.3);border-radius:8px;padding:10px 20px;cursor:pointer;transition:background .2s,border-color .2s;white-space:nowrap}.board-question-submit:hover:not(:disabled){background:#10b98159;border-color:#10b98180}.board-question-submit:disabled{opacity:.4;cursor:default}.board-question-answered{font-family:Patrick Hand,cursive;font-size:1.2rem;color:#10b981;padding:10px 14px;background:#10b98114;border:1px solid rgba(16,185,129,.2);border-radius:8px;flex:1}.board-step{display:flex;gap:10px;align-items:baseline;animation:chalkWrite .8s ease forwards}.board-step-number{font-family:Patrick Hand,cursive;font-size:1.1rem;font-weight:700;color:#10b981;min-width:1.5em;text-align:right;flex-shrink:0}.board-step-content{font-family:Patrick Hand,cursive;color:#faf5ef;font-size:1.3rem;font-weight:500;line-height:1.5;white-space:pre-wrap}.board-step-content.board-math{font-size:1.3rem}.board-step-content.board-math .katex{color:#faf5ef;font-size:1.35em}.board-item-step .board-item-label,.board-item-question .board-item-label,.board-item-mcq .board-item-label{display:none}.board-mcq{display:flex;flex-direction:column;gap:12px}.mcq-question{font-family:Patrick Hand,cursive;font-size:1.3rem;font-weight:600;color:#faf5ef;line-height:1.4;animation:chalkWrite .8s ease forwards}.mcq-options{display:flex;flex-direction:column;gap:8px}.mcq-option{display:flex;align-items:center;gap:10px;padding:10px 14px;min-height:44px;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:10px;cursor:pointer;text-align:left;color:#e8e0d4;font-family:Patrick Hand,cursive;font-size:1.15rem;font-weight:500;line-height:1.3;opacity:0;transform:translate(-12px);animation:mcqSlideIn .4s cubic-bezier(.16,1,.3,1) forwards;transition:background .2s ease,border-color .2s ease,transform .15s ease,box-shadow .2s ease}.mcq-option:nth-child(1){animation-delay:.15s}.mcq-option:nth-child(2){animation-delay:.25s}.mcq-option:nth-child(3){animation-delay:.35s}.mcq-option:nth-child(4){animation-delay:.45s}@keyframes mcqSlideIn{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}.mcq-option:hover:not(.disabled){background:#10b98114;border-color:#10b9814d;transform:translate(4px);box-shadow:0 2px 12px #10b9811a}.mcq-option:active:not(.disabled){transform:scale(.98)}.mcq-option.disabled{cursor:default;opacity:.6}.mcq-option.correct{background:#22c55e1f;border-color:#22c55e80;opacity:1}.mcq-option.correct .mcq-label{background:#22c55e40;border-color:#22c55e99;color:var(--color-success-text)}.mcq-option.incorrect{background:#ef44441f;border-color:#ef444480;opacity:1}.mcq-option.incorrect .mcq-label{background:#ef444440;border-color:#ef444499;color:var(--color-error-strong)}.mcq-label{flex-shrink:0;width:26px;height:26px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#10b9811f;border:1px solid rgba(16,185,129,.25);color:var(--color-primary-light);font-size:.75rem;font-weight:700;transition:background .2s ease,border-color .2s ease,color .2s ease}.mcq-text{flex:1;min-width:0}.brain-drawer-backdrop{position:fixed;inset:0;background:var(--color-backdrop);z-index:90;opacity:0;pointer-events:none;transition:opacity .3s ease}.brain-drawer-backdrop.open{opacity:1;pointer-events:auto}.brain-drawer{position:fixed;right:0;top:0;height:100vh;width:420px;background:var(--color-bg);border-left:1px solid var(--color-border-subtle);z-index:100;transform:translate(100%);transition:transform .3s ease;display:flex;flex-direction:column;overflow:hidden}.brain-drawer.open{transform:translate(0)}.brain-drawer-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--color-border-subtle);flex-shrink:0}.brain-drawer-title{font-size:.8rem;font-weight:600;color:var(--color-text-muted);letter-spacing:.03em}.brain-drawer-close{background:none;border:none;color:#fff6;font-size:1.1rem;cursor:pointer;min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;line-height:1;border-radius:4px;transition:color .2s ease,background .2s ease}.brain-drawer-close:hover{color:#fffc;background:#ffffff0f}.brain-drawer-content{flex:1;overflow-y:auto;overflow-x:hidden;padding:16px}.brain-drawer-content::-webkit-scrollbar{width:4px}.brain-drawer-content::-webkit-scrollbar-track{background:transparent}.brain-drawer-content::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:2px}.brain-drawer-toggle{position:absolute;top:1.5rem;left:1.5rem;width:44px;height:44px;border-radius:8px;background:none;border:1px solid var(--color-border);color:var(--color-text-muted);font-size:1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:.4;transition:opacity .3s ease,border-color .3s ease,color .3s ease,background .2s ease;z-index:10}.brain-drawer-toggle:hover{opacity:1;color:#fffc;border-color:#ffffff4d;background:#ffffff0a}@keyframes slide-in-right{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.animate-slide-in-right{animation:slide-in-right .3s ease-out}@media(max-width:1024px){.brain-drawer{width:100%}}@media(max-width:639px){.brain-drawer{width:100%;max-width:100%}.brain-drawer-toggle{top:1rem;left:1rem}.visual-board{padding:1rem}}@keyframes boardHighlightPulse{0%{box-shadow:0 0 #ffdc7800;outline:2px solid rgba(255,220,120,0);opacity:1;transform:scale(1)}20%{box-shadow:0 0 28px 6px #ffdc78d9;outline:2px solid rgba(255,220,120,.95);opacity:1;transform:scale(1.03)}to{box-shadow:0 0 #ffdc7800;outline:2px solid rgba(255,220,120,0);opacity:1;transform:scale(1)}}.board-item.is-highlighted{position:relative;z-index:2;animation:boardHighlightPulse 1.1s ease-out forwards}@keyframes boardItemBreathe{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}.board-item.is-active.board-item-note,.board-item.is-active.board-item-step{animation:boardItemBreathe 3.6s ease-in-out infinite}.board-item.is-active.is-highlighted{animation:boardActiveHighlightPulse 1.1s ease-out forwards}@keyframes boardActiveHighlightPulse{0%{box-shadow:0 0 16px #78c8ff40;outline:2px solid rgba(255,220,120,0)}15%{box-shadow:0 0 32px 8px #ffc850b3,0 0 16px #78c8ff66;outline:2.5px solid rgba(255,220,120,.95);transform:scale(1.04)}to{box-shadow:0 0 16px #78c8ff40;outline:2px solid rgba(255,220,120,0);transform:scale(1.02)}}@keyframes katexTokenIn{0%{opacity:0;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}.board-math .base{display:inline-block;opacity:0;animation:katexTokenIn .18s ease-out forwards}@media(prefers-reduced-motion:reduce){.board-item.is-active.board-item-note,.board-item.is-active.board-item-step,.board-item.is-highlighted,.board-item.is-active.is-highlighted,.board-math .base{animation:none!important}.board-item{transition:none!important}}.gaze-line-overlay{position:fixed;inset:0;pointer-events:none;z-index:9999}.gaze-line-overlay line{stroke:#ffdc788c;stroke-width:2;stroke-dasharray:4 6;filter:drop-shadow(0 0 6px rgba(255,220,120,.6))}.board-math .base:nth-child(1){animation-delay:0ms}.board-math .base:nth-child(2){animation-delay:40ms}.board-math .base:nth-child(3){animation-delay:80ms}.board-math .base:nth-child(4){animation-delay:.12s}.board-math .base:nth-child(5){animation-delay:.16s}.board-math .base:nth-child(6){animation-delay:.2s}.board-math .base:nth-child(7){animation-delay:.24s}.board-math .base:nth-child(8){animation-delay:.28s}.board-math .base:nth-child(9){animation-delay:.32s}.board-math .base:nth-child(10){animation-delay:.36s}.board-math .base:nth-child(n+11){animation-delay:.4s}.voice-indicator{position:absolute;bottom:16px;left:50%;transform:translate(-50%);display:flex;align-items:center;justify-content:center;gap:3px;padding:8px 16px;background:#00000073;border-radius:20px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);z-index:10;animation:voiceIndicatorIn .25s ease-out}@keyframes voiceIndicatorIn{0%{opacity:0;transform:translate(-50%) translateY(6px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.voice-indicator-bar{width:3px;height:16px;border-radius:2px;background:var(--color-primary-light, #34d399);transition:all .4s cubic-bezier(.16,1,.3,1);transform-origin:center}.voice-indicator.listening .voice-indicator-bar{animation:voiceWaveBar .8s ease-in-out infinite}.voice-indicator.listening .voice-indicator-bar:nth-child(1){animation-delay:0s;height:10px}.voice-indicator.listening .voice-indicator-bar:nth-child(2){animation-delay:.1s;height:14px}.voice-indicator.listening .voice-indicator-bar:nth-child(3){animation-delay:.2s;height:18px}.voice-indicator.listening .voice-indicator-bar:nth-child(4){animation-delay:.3s;height:14px}.voice-indicator.listening .voice-indicator-bar:nth-child(5){animation-delay:.4s;height:10px}@keyframes voiceWaveBar{0%,to{transform:scaleY(.35)}50%{transform:scaleY(1)}}.voice-indicator.thinking .voice-indicator-bar{width:0;height:0;opacity:0}.voice-indicator.thinking .voice-indicator-bar:nth-child(3){width:8px;height:8px;border-radius:50%;opacity:1;background:var(--color-primary-light, #34d399);animation:voiceThinkingPulse 1.4s ease-in-out infinite}@keyframes voiceThinkingPulse{0%,to{transform:scale(1);opacity:.5}50%{transform:scale(1.5);opacity:1}}
