.learning-links{flex-wrap:wrap;gap:1.25rem;margin:1.5rem 0 2rem;display:flex}.learning-links a{color:var(--blue);font-weight:650}.learning-progress{margin:1rem 0 1.5rem}.learning-progress p{color:var(--aic-muted-fg);margin:0 0 .65rem;font-size:.9rem}.learning-progress progress{width:100%;height:.65rem;accent-color:var(--blue);border:0;border-radius:12px;display:block;overflow:hidden}.learning-progress progress::-webkit-progress-bar{background:#e9edff;border-radius:12px}.learning-progress progress::-webkit-progress-value{background:var(--blue);border-radius:12px}.learning-help{color:var(--aic-muted-fg);max-width:70ch;margin-bottom:2rem}.learning-layout{grid-template-columns:minmax(230px,300px) minmax(0,1fr);align-items:start;gap:2rem;display:grid}.learning-outline{border:1px solid var(--line);border-radius:20px;max-height:80vh;padding:1.25rem;position:sticky;top:1.5rem;overflow:auto}.learning-outline h2{font-size:1.35rem}.learning-outline h3{margin:1.5rem 0 .7rem;font-size:1rem}.learning-outline ol{padding:0;list-style:none}.learning-outline li+li{margin-top:.4rem}.learning-outline button{text-align:left;width:100%;color:var(--ink);font:inherit;cursor:pointer;overflow-wrap:anywhere;background:0 0;border:1px solid #0000;border-radius:10px;padding:.75rem;line-height:1.4;display:block}.learning-outline button[aria-current]{background:var(--cloud);border-color:var(--line);color:var(--blue)}.learning-outline button small{color:var(--aic-muted-fg);margin-top:.3rem;font-size:.78rem;display:block}.learning-outline button:disabled{opacity:.65;cursor:wait}.learning-lesson{border:1px solid var(--line);border-radius:22px;min-width:0;padding:clamp(1.25rem,3vw,2.5rem);scroll-margin-top:1.5rem}.learning-lesson h2{overflow-wrap:anywhere;font-size:clamp(1.5rem,3vw,2.15rem)}.learning-text{white-space:pre-wrap;overflow-wrap:anywhere;color:var(--ink);margin:2rem 0;font-size:1.02rem;line-height:1.85}.learning-resources{border-top:1px solid var(--line);margin-top:2rem;padding-top:1.25rem}.learning-controls{border-top:1px solid var(--line);flex-direction:column;gap:1rem;margin-top:2rem;padding-top:1.5rem;display:flex}.learning-controls>.course-actions{justify-content:space-between}.learning-next{margin-top:2rem}.learning-video iframe,.learning-video video{aspect-ratio:16/9;background:#101a39;border:0;border-radius:14px;width:100%}.learning-video{margin-top:1.5rem}.course-enrolment-notice>.text-link{margin:1rem;display:inline-block}@media (width<=800px){.learning-layout{grid-template-columns:1fr}.learning-outline{max-height:none;position:static}.learning-lesson{scroll-margin-top:1rem}.learning-controls .course-actions{flex-direction:column}.learning-controls button{width:100%}}@media (prefers-reduced-motion:reduce){.learning-reader{scroll-behavior:auto}}.learning-reader .page-intro{margin:1.5rem 0 2rem}.learning-reader .page-intro h1{letter-spacing:-.03em;max-width:950px;margin:.8rem 0;font-size:clamp(1.75rem,3.4vw,2.6rem);line-height:1.18}.learning-reader .page-intro p{margin-top:.75rem}@media (width<=800px){.learning-outline{max-height:22rem}.learning-reader .page-intro{margin-bottom:1.5rem}}.tutor-trigger{align-items:center;gap:.4rem;margin:.5rem 0 1rem;display:inline-flex}.tutor-overlay{pointer-events:none}.tutor-sheet{background:var(--background);width:min(92vw,30rem);max-width:30rem;height:100dvh;box-shadow:-1.5rem 0 4rem color-mix(in srgb, var(--foreground) 12%, transparent);flex-direction:column;gap:0;padding:0;display:flex;overflow:hidden}.tutor-header{border-bottom:1px solid var(--border);background:var(--muted);flex:none;gap:1rem;padding:1.35rem 3.5rem 1.15rem 1.35rem}.tutor-brand{align-items:center;gap:.75rem;display:flex}.tutor-badge,.tutor-empty-icon{background:var(--primary);width:2.6rem;height:2.6rem;color:var(--primary-foreground);border-radius:.85rem;flex:none;justify-content:center;align-items:center;display:inline-flex}.tutor-brand [data-slot=sheet-title]{font-size:1rem;line-height:1.3}.tutor-brand p{color:var(--muted-foreground);margin:.2rem 0 0;font-size:.76rem}.tutor-lesson{min-width:0;color:var(--muted-foreground);align-items:center;gap:.45rem;font-size:.78rem;display:flex}.tutor-lesson svg{color:var(--primary);flex:none}.tutor-lesson span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tutor-log{overscroll-behavior:contain;flex-direction:column;flex:1;gap:.9rem;min-height:0;padding:1.25rem 1.35rem;display:flex;overflow-y:auto}.tutor-empty{text-align:center;flex-direction:column;align-items:center;margin:auto 0;padding:1rem 0;display:flex}.tutor-empty-icon{background:var(--accent);width:3.4rem;height:3.4rem;color:var(--primary);border-radius:1.1rem;margin-bottom:1rem}.tutor-empty h3{margin:0;font-size:1.05rem;font-weight:650}.tutor-empty>p{max-width:20rem;color:var(--muted-foreground);margin:.5rem auto 1.25rem;font-size:.84rem;line-height:1.55}.tutor-starters{gap:.5rem;width:100%;display:grid}.tutor-starters button{border:1px solid var(--border);background:var(--card);width:100%;color:var(--foreground);font:inherit;text-align:left;cursor:pointer;border-radius:.7rem;align-items:center;gap:.55rem;padding:.65rem .75rem;font-size:.8rem;display:flex}.tutor-starters button:hover{border-color:var(--primary);background:var(--accent)}.tutor-starters svg{color:var(--primary);flex:none}.tutor-guardrail{color:var(--muted-foreground);text-align:left;align-items:flex-start;gap:.5rem;margin-top:1.25rem;font-size:.72rem;line-height:1.5;display:flex}.tutor-guardrail svg{color:var(--primary);flex:none;margin-top:.1rem}.tutor-msg{align-items:flex-start;gap:.55rem;max-width:92%;font-size:.86rem;display:flex}.tutor-msg.user{flex-direction:row-reverse;align-self:flex-end}.tutor-msg.model{align-self:flex-start}.tutor-msg-avatar{border:1px solid var(--border);background:var(--card);width:1.75rem;height:1.75rem;color:var(--primary);border-radius:.55rem;flex:none;justify-content:center;align-items:center;margin-top:.15rem;display:inline-flex}.tutor-msg-body{border:1px solid var(--border);background:var(--card);border-radius:.25rem .85rem .85rem;min-width:0;padding:.7rem .8rem}.tutor-msg.user .tutor-msg-body{border-color:var(--primary);background:var(--primary);color:var(--primary-foreground);border-radius:.85rem .25rem .85rem .85rem}.tutor-msg.user .tutor-msg-avatar{color:var(--muted-foreground)}.tutor-msg-label{color:var(--muted-foreground);margin-bottom:.3rem;font-size:.68rem;font-weight:650;display:block}.tutor-msg.user .tutor-msg-label{color:var(--primary-foreground);opacity:.75}.tutor-msg p{overflow-wrap:anywhere;white-space:pre-wrap;margin:0;line-height:1.6}.tutor-listen{color:var(--primary);font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:.3rem;margin-top:.6rem;padding:.2rem 0;font-size:.72rem;display:inline-flex}.tutor-error{border:1px solid var(--destructive);color:var(--destructive);border-radius:.65rem;margin:0;padding:.65rem .75rem;font-size:.78rem;line-height:1.45}.tutor-input-wrap{border-top:1px solid var(--border);background:var(--muted);flex:none;padding:.85rem 1rem 1rem}.tutor-form{border:1px solid var(--border);background:var(--card);box-shadow:0 .25rem 1rem color-mix(in srgb, var(--foreground) 5%, transparent);border-radius:.9rem;overflow:hidden}.tutor-form:focus-within{border-color:var(--ring);box-shadow:0 0 0 3px color-mix(in srgb, var(--ring) 15%, transparent)}.tutor-form textarea{resize:vertical;width:100%;min-height:4.25rem;max-height:10rem;color:var(--foreground);font:inherit;background:0 0;border:0;outline:0;padding:.75rem .8rem .35rem;font-size:.84rem;line-height:1.5;display:block}.tutor-form-footer{align-items:center;gap:.5rem;padding:.4rem .5rem .5rem;display:flex}.tutor-icon,.tutor-send{height:2.1rem;font:inherit;cursor:pointer;border-radius:.55rem;flex:none;justify-content:center;align-items:center;display:inline-flex}.tutor-icon{border:1px solid var(--border);width:2.1rem;color:var(--muted-foreground);background:0 0}.tutor-icon:hover{background:var(--accent);color:var(--foreground)}.tutor-mic[data-listening=true]{border-color:var(--primary);background:var(--primary);color:var(--primary-foreground)}.tutor-send{border:1px solid var(--primary);background:var(--primary);color:var(--primary-foreground);gap:.35rem;margin-left:auto;padding:0 .8rem;font-size:.76rem;font-weight:600}.tutor-send:disabled,.tutor-icon:disabled{opacity:.45;cursor:not-allowed}.tutor-key-hint{color:var(--muted-foreground);font-size:.66rem}.tutor-voice{border:1px solid var(--border);background:var(--card);border-radius:.8rem;margin-bottom:.65rem;padding:.65rem .75rem .35rem}.tutor-voice-status{color:var(--foreground);flex-wrap:wrap;align-items:center;gap:.35rem;font-size:.72rem;font-weight:600;display:flex}.tutor-voice-status span:last-child{color:var(--muted-foreground);font-size:.66rem;font-weight:400}.tutor-live-dot{background:var(--destructive);border-radius:50%;width:.45rem;height:.45rem;animation:1.5s ease-in-out infinite tutor-pulse}.tutor-wave{width:100%;height:2.5rem;color:var(--primary);display:block}.tutor-dots{align-items:center;gap:.25rem;height:1.25rem;display:flex}.tutor-dots i{background:var(--muted-foreground);border-radius:50%;width:.35rem;height:.35rem;animation:1.2s ease-in-out infinite tutor-thinking}.tutor-dots i:nth-child(2){animation-delay:.15s}.tutor-dots i:nth-child(3){animation-delay:.3s}@keyframes tutor-pulse{50%{opacity:.35}}@keyframes tutor-thinking{50%{opacity:.45;transform:translateY(-.2rem)}}@media (width<=640px){.tutor-sheet{width:100vw;max-width:none}.tutor-header{padding-left:1rem}.tutor-log{padding:1rem}.tutor-key-hint{display:none}}@media (prefers-reduced-motion:reduce){.tutor-live-dot,.tutor-dots i{animation:none}}
