/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.fixed{position:fixed}.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}:root{--canvas:#f7f6f1;--paper:#fffefa;--ink:#17202b;--muted:#69717a;--faint:#9299a1;--line:#dddcd5;--line-strong:#c8c8c1;--blue:#2057d4;--blue-dark:#1741a2;--blue-soft:#e9efff;--jade:#177d64;--jade-dark:#125c4b;--jade-soft:#e3f2ec;--amber:#a35b15;--amber-soft:#f7eadd;--red:#aa3f42;--shadow:0 18px 48px #17202b14;--radius:12px}*{box-sizing:border-box}html{background:var(--canvas);min-width:320px;color:var(--ink);overflow-x:hidden}body{background:var(--canvas);min-width:320px;color:var(--ink);font-family:var(--font-geist-sans), Arial, sans-serif;margin:0;font-size:15px;overflow-x:hidden}button,input,textarea,select{font:inherit}button{color:inherit}button,a,select{-webkit-tap-highlight-color:transparent}:is(button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,a:focus-visible){outline-offset:2px;outline:3px solid #2057d447}button:disabled{cursor:not-allowed;opacity:.48}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.035em}p{line-height:1.6}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.skip-link{z-index:100;background:var(--ink);color:#fff;border-radius:6px;padding:10px 14px;position:fixed;top:-50px;left:16px}.skip-link:focus{top:12px}.eyebrow{color:var(--muted);letter-spacing:.13em;text-transform:uppercase;margin:0 0 7px;font-size:11px;font-weight:750;line-height:1.2}.eyebrow.blue{color:var(--blue)}.subtle{color:var(--muted);font-size:13px}.app-frame{min-height:100vh}.side-rail{z-index:30;border-right:1px solid var(--line);background:#f0f0eb;flex-direction:column;width:246px;display:flex;position:fixed;inset:0 auto 0 0}.brand-row{justify-content:space-between;align-items:center;height:72px;padding:0 22px;display:flex}.brand{letter-spacing:.12em;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;font-size:17px;font-weight:790;display:flex}.brand-mark{border:2px solid var(--ink);letter-spacing:0;border-radius:50%;place-items:center;width:29px;height:29px;font-family:Georgia,serif;font-size:16px;display:grid}.close-nav,.menu-button{display:none!important}.nav-list{flex:1;padding:6px 12px 18px;overflow-y:auto}.nav-section{color:#8b8f91;letter-spacing:.13em;text-transform:uppercase;margin:23px 10px 7px;font-size:10px;font-weight:750}.nav-item{color:#545c63;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;align-items:center;gap:11px;width:100%;min-height:40px;padding:8px 11px;transition:background .15s,color .15s;display:flex}.nav-item:hover{color:var(--ink);background:#ffffff9e}.nav-item.active{background:var(--paper);color:var(--blue);font-weight:650;box-shadow:0 1px 2px #17202b14}.rail-note{border-top:1px solid var(--line);color:var(--jade);gap:10px;margin:14px;padding:13px;display:flex}.rail-note div{flex-direction:column;display:flex}.rail-note strong{color:var(--ink);font-size:12px}.rail-note span{color:var(--muted);margin-top:2px;font-size:11px}.app-body{width:calc(100% - 246px);min-width:0;min-height:100vh;margin-left:246px}.top-bar{z-index:20;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f7f6f1f0;justify-content:space-between;align-items:center;height:72px;padding:0 34px;display:flex;position:sticky;top:0}.context-title{flex-direction:column;display:flex}.context-title .eyebrow{margin-bottom:1px;font-size:9px}.context-title>span:last-child{font-size:13px;font-weight:600}.top-actions{align-items:center;gap:23px;display:flex}.sync-state{color:var(--muted);align-items:center;gap:8px;font-size:12px;display:flex}.sync-state>span{background:var(--jade);width:7px;height:7px;box-shadow:0 0 0 4px var(--jade-soft);border-radius:50%}.profile-wrap{position:relative}.profile-button{cursor:pointer;background:0 0;border:0;align-items:center;gap:9px;padding:4px 2px;display:flex}.avatar{background:var(--ink);color:#fff;border-radius:50%;place-items:center;width:34px;height:34px;font-size:11px;font-weight:720;display:grid}.profile-copy{flex-direction:column;align-items:flex-start;min-width:60px;display:flex}.profile-copy strong{font-size:12px}.profile-copy small{color:var(--muted);font-size:10px}.profile-menu{border:1px solid var(--line);background:var(--paper);width:220px;box-shadow:var(--shadow);border-radius:10px;padding:10px;position:absolute;top:calc(100% + 10px);right:0}.profile-menu p{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;margin:4px 8px 7px;font-size:10px;font-weight:700}.profile-menu button{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;align-items:center;gap:9px;width:100%;padding:10px;display:flex}.profile-menu button:hover,.profile-menu button.selected{background:var(--blue-soft);color:var(--blue)}.mobile-dock{display:none}.page{width:100%;max-width:1276px;margin:0 auto;padding:clamp(36px,4vw,58px) clamp(18px,3.2vw,42px) 72px}.narrow-page{width:100%;max-width:956px}.page-heading{margin-bottom:34px}.page-heading h1{letter-spacing:-.045em;margin:0 0 10px;font-family:Georgia,Times New Roman,serif;font-size:clamp(36px,4vw,51px);font-weight:500;line-height:1.06}.page-heading>p:last-child,.page-heading>div>p:last-child{max-width:690px;color:var(--muted);margin:0;font-size:16px}.split-heading,.graph-heading,.teacher-header{justify-content:space-between;align-items:flex-end;gap:28px;display:flex}.section-heading{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:22px;display:flex}.section-heading h2{margin:0;font-size:22px;font-weight:680}.primary-button,.secondary-button,.text-button,.back-button{cursor:pointer;border:0;justify-content:center;align-items:center;gap:8px;display:inline-flex}.primary-button{background:var(--blue);color:#fff;border-radius:7px;min-height:42px;padding:10px 17px;font-weight:650;box-shadow:0 5px 14px #2057d42b}.primary-button:hover{background:var(--blue-dark)}.secondary-button{border:1px solid var(--line-strong);background:var(--paper);border-radius:7px;min-height:42px;padding:9px 15px;font-weight:620}.secondary-button:hover{background:#fafaf7;border-color:#9fa4a8}.secondary-button.compact{min-height:35px;padding:7px 11px;font-size:12px}.text-button{color:var(--blue);background:0 0;padding:6px 0;font-size:13px;font-weight:650}.full{width:100%}.icon-button{border:1px solid var(--line);background:var(--paper);cursor:pointer;border-radius:7px;place-items:center;width:36px;height:36px;display:inline-grid}.subject-chip,.status-pill{letter-spacing:.02em;border-radius:99px;align-items:center;width:fit-content;font-size:11px;font-weight:700;display:inline-flex}.subject-chip{background:var(--blue-soft);color:var(--blue);padding:5px 8px}.status-pill{text-transform:capitalize;background:#eee;padding:5px 9px}.status-pill.review,.status-pill.uncertain{background:var(--amber-soft);color:var(--amber)}.status-pill.stable,.status-pill.recovered{background:var(--jade-soft);color:var(--jade)}.status-pill.developing{background:var(--blue-soft);color:var(--blue)}.learn-home{padding-top:44px}.welcome-block{justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:28px;display:flex}.welcome-block h1{margin:0 0 8px;font-family:Georgia,serif;font-size:clamp(34px,4vw,50px);font-weight:500}.welcome-block p:last-child{color:var(--muted);margin:0;font-size:16px}.session-pace{border-left:1px solid var(--line);grid-template-columns:1fr auto;gap:3px 12px;min-width:180px;padding-left:20px;display:grid}.session-pace span,.session-pace small{color:var(--muted);font-size:11px}.session-pace strong{grid-row:span 2;font-family:Georgia,serif;font-size:25px;font-weight:500}.continue-panel{border:1px solid #d1d3d0;border-top:3px solid var(--blue);background:var(--paper);border-radius:4px;overflow:hidden;box-shadow:0 12px 30px #17202b0e}.continue-meta{justify-content:space-between;align-items:center;padding:19px 25px 4px;display:flex}.continue-grid{grid-template-columns:1.35fr .75fr;gap:70px;padding:27px 42px 34px;display:grid}.continue-grid h2{margin:0 0 13px;font-family:Georgia,serif;font-size:clamp(30px,3.2vw,44px);font-weight:500}.continue-grid .lead{max-width:610px;color:var(--muted);margin-bottom:25px;font-size:16px}.continue-panel>footer{border-top:1px solid var(--line);color:var(--muted);background:#faf9f5;align-items:center;gap:9px;padding:13px 24px;font-size:12px;display:flex}.focus-path{align-self:center;padding:6px 0}.path-item{color:var(--faint);align-items:center;gap:11px;display:flex}.path-item>span{border:1px solid var(--line-strong);background:var(--paper);border-radius:50%;flex:none;place-items:center;width:25px;height:25px;font-size:11px;display:grid}.path-item div{flex-direction:column;display:flex}.path-item strong{font-size:13px}.path-item small{margin-top:2px;font-size:10px}.path-item.done{color:var(--jade)}.path-item.done>span{border-color:var(--jade);background:var(--jade);color:#fff}.path-item.current{color:var(--ink)}.path-item.current>span{border-color:var(--blue);background:var(--blue);color:#fff;box-shadow:0 0 0 5px var(--blue-soft)}.path-line{background:var(--jade);width:1px;height:28px;margin-left:12px}.path-line.muted{background:var(--line)}.home-lower-grid{grid-template-columns:1.2fr .8fr;gap:60px;margin-top:45px;display:grid}.plain-section{padding-top:4px}.change-list>div{border-top:1px solid var(--line);align-items:center;gap:13px;padding:13px 0;display:flex}.change-list>div:last-child{border-bottom:1px solid var(--line)}.change-list div div{flex-direction:column;display:flex}.change-list strong{font-size:13px}.change-list small{color:var(--muted);margin-top:3px}.state-mark{border-radius:50%;width:9px;height:9px}.state-mark.recovered{background:var(--jade);box-shadow:0 0 0 4px var(--jade-soft)}.state-mark.developing{background:var(--blue);box-shadow:0 0 0 4px var(--blue-soft)}.state-mark.review{background:var(--amber);box-shadow:0 0 0 4px var(--amber-soft)}.next-section{border-left:2px solid var(--line-strong);padding:24px 28px}.next-section h2{margin:0 0 7px;font-size:22px}.next-section p:not(.eyebrow){color:var(--muted)}.tiny-source{color:var(--muted);align-items:center;gap:8px;font-size:11px;display:flex}.session-page{background:var(--paper);min-height:calc(100vh - 72px)}.session-header{border-bottom:1px solid var(--line);grid-template-columns:1fr auto 1fr;align-items:center;min-height:70px;padding:0 30px;display:grid}.session-header>div{text-align:center}.session-header>div .eyebrow{margin-bottom:2px}.session-header>div strong{font-size:13px}.back-button{color:var(--muted);background:0 0;justify-self:start;padding:7px 0;font-size:12px}.session-time{color:var(--muted);justify-self:end;font-size:12px}.session-layout{grid-template-columns:minmax(0,1fr) 295px;min-height:calc(100vh - 142px);display:grid}.teaching-workspace{width:min(760px,100% - 56px);margin:0 auto;padding:56px 0 38px}.lesson-kicker{color:var(--muted);align-items:center;gap:12px;margin-bottom:28px;font-size:11px;display:flex}.lesson-kicker div{gap:4px;display:flex}.lesson-kicker i{background:var(--line);border-radius:2px;width:34px;height:3px}.lesson-kicker i.filled{background:var(--blue)}.teaching-workspace>h1{max-width:700px;margin:0 0 18px;font-family:Georgia,serif;font-size:clamp(35px,4vw,50px);font-weight:500;line-height:1.08}.lesson-content{max-width:700px;margin-bottom:20px}.lesson-content h1,.lesson-content h2{margin:0 0 18px;font-family:Georgia,serif;font-size:clamp(32px,4vw,48px);font-weight:500;line-height:1.1}.lesson-content h3{margin:24px 0 9px;font-size:19px}.lesson-content p,.lesson-content li{font-family:Georgia,serif;font-size:19px;line-height:1.65}.lesson-lead{color:#545c63;max-width:680px;font-family:Georgia,serif;font-size:19px;line-height:1.65}.code-example{border:1px solid var(--line);font-family:var(--font-geist-mono), monospace;background:#f5f5f1;border-radius:7px;margin:30px 0 17px;padding:18px 0}.code-example>div{grid-template-columns:36px 1fr auto;align-items:center;min-height:34px;padding:0 18px;display:grid}.code-example span{color:var(--faint);font-size:11px}.code-example code{font-size:13px}.code-example em{color:var(--jade);font-family:var(--font-geist-sans);font-size:11px;font-style:normal}.code-example .highlight{border-left:3px solid var(--jade);background:var(--jade-soft)}.listen-row{align-items:center;gap:12px;display:flex}.listen-row label{color:var(--muted);font-size:11px}.listen-row select{background:0 0;border:0;margin-left:4px;font-weight:600}.teaching-workspace>hr{border:0;border-top:1px solid var(--line);margin:38px 0}.check-section h2{max-width:690px;margin:0 0 19px;font-family:Georgia,serif;font-size:27px;font-weight:500;line-height:1.34}.answer-box{border:1px solid var(--line-strong);background:#fff;border-radius:8px;display:block;overflow:hidden}.answer-box:focus-within{border-color:var(--blue);box-shadow:0 0 0 3px #2057d417}.answer-box textarea{resize:vertical;background:0 0;border:0;outline:0;width:100%;min-height:120px;padding:16px;line-height:1.55}.answer-box>div{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;padding:7px 10px;font-size:10px;display:flex}.answer-box .icon-button{background:0 0;border:0;width:31px;height:31px}.answer-actions{justify-content:space-between;margin-top:13px;display:flex}.feedback-block{border-left:3px solid var(--jade);background:var(--jade-soft);padding:24px}.feedback-title{gap:14px;display:flex}.feedback-title>span{background:var(--jade);color:#fff;border-radius:50%;place-items:center;width:35px;height:35px;display:grid}.feedback-title h2{margin:0;font-family:Georgia,serif;font-size:27px;font-weight:500}.feedback-block>p{color:#40534d;margin:17px 0 20px 49px}.feedback-block>button{margin-left:49px}.source-footer{border-top:1px solid var(--line);color:var(--muted);align-items:center;gap:8px;margin-top:32px;padding-top:16px;font-size:11px;display:flex}.source-footer button{color:var(--blue);cursor:pointer;background:0 0;border:0;margin-left:auto}.focus-sidebar{border-left:1px solid var(--line);background:#f7f7f3;padding:42px 26px}.focus-sidebar h2{margin:0 0 10px;font-size:21px}.focus-sidebar dl{margin:29px 0 22px}.focus-sidebar dl>div{border-top:1px solid var(--line);padding:15px 0}.focus-sidebar dt{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:5px;font-size:10px;font-weight:700}.focus-sidebar dd{margin:0;font-size:12px;line-height:1.5}.status-dot{border-radius:50%;width:7px;height:7px;margin-left:4px;display:inline-block}.status-dot.stable{background:var(--jade)}.why-button{color:var(--blue);cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;padding:0;font-size:12px;font-weight:650;display:flex}.agent-note{border:1px solid var(--line);background:var(--paper);border-radius:6px;margin-top:18px;padding:14px}.agent-note strong{font-size:11px}.agent-note p{color:var(--muted);margin:6px 0 0;font-size:11px;line-height:1.5}.voice-stage{border:1px solid var(--line);border-top:3px solid var(--blue);background:var(--paper);text-align:center;flex-direction:column;align-items:center;padding:43px 30px 35px;display:flex}.voice-status{color:var(--muted);align-items:center;gap:7px;font-size:11px;display:flex}.live-dot{background:var(--jade);border-radius:50%;width:7px;height:7px}.waveform{align-items:center;gap:4px;height:70px;margin:32px 0 23px;display:flex}.waveform i{background:#a7b6d8;border-radius:2px;width:3px;max-height:16px;transition:max-height .2s}.waveform.active i{background:var(--blue);max-height:64px;animation:.8s ease-in-out infinite alternate waveform}.waveform i:nth-child(3n){animation-delay:-.25s}.waveform i:nth-child(4n){animation-delay:-.5s}@keyframes waveform{0%{transform:scaleY(.35)}to{transform:scaleY(1)}}.voice-stage h2{max-width:520px;margin:0 0 8px;font-family:Georgia,serif;font-size:29px;font-weight:500}.voice-stage>p{color:var(--muted);margin-bottom:28px}.record-button{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:99px;align-items:center;gap:10px;padding:13px 19px 13px 14px;font-weight:650;display:flex}.record-button svg{background:#ffffff26;border-radius:50%;padding:5px}.record-button.recording{background:var(--red)}.voice-controls{color:var(--muted);align-items:center;gap:8px;margin-top:25px;font-size:11px;display:flex}.voice-controls select{background:0 0;border:0;margin-left:4px;font-weight:650}.capability-note{border-left:3px solid var(--blue);background:var(--blue-soft);color:var(--blue);gap:13px;margin-top:22px;padding:17px 20px;display:flex}.capability-note strong{color:var(--ink);font-size:13px}.capability-note p{color:#4c5b7d;margin:4px 0 0;font-size:12px;line-height:1.5}.future-row{border-top:1px solid var(--line);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:30px;margin-top:35px;padding:25px 0;display:flex}.future-row span{color:var(--faint);letter-spacing:.1em;text-transform:uppercase;font-size:10px;font-weight:700}.future-row h2{margin:5px 0;font-size:19px}.future-row p{color:var(--muted);margin:0;font-size:12px}.future-row button{border:1px dashed var(--line-strong);color:var(--muted);background:0 0;border-radius:6px;padding:9px 13px}.privacy-line{color:var(--muted);align-items:center;gap:7px;margin:18px 0 0;font-size:11px;display:flex}.practice-feature{border:1px solid var(--line-strong);border-left:4px solid var(--blue);background:var(--paper);grid-template-columns:1.4fr .6fr;gap:55px;padding:35px 38px;display:grid}.practice-feature h2{max-width:620px;margin:16px 0 9px;font-family:Georgia,serif;font-size:32px;font-weight:500}.practice-feature p{max-width:620px;color:var(--muted)}.practice-reasons{gap:17px;margin:18px 0 23px;display:flex}.practice-reasons span{color:var(--muted);font-size:11px}.difficulty-scale{border-left:1px solid var(--line);align-self:center;padding-left:30px}.difficulty-scale p{color:var(--ink);font-weight:650}.difficulty-scale div{align-items:center;gap:7px;height:45px;display:flex}.difficulty-scale i{background:#c7cbd0;width:22px;height:5px}.difficulty-scale i:nth-child(2),.difficulty-scale i:nth-child(4){height:16px}.difficulty-scale i:nth-child(3){height:30px}.difficulty-scale i.target{background:var(--blue);box-shadow:0 0 0 5px var(--blue-soft)}.difficulty-scale span{color:var(--muted);font-size:10px;line-height:1.4}.subject-section{margin-top:48px}.subject-list{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;display:grid}.subject-list button{border:0;border-bottom:1px solid var(--line);text-align:left;cursor:pointer;background:0 0;grid-template-columns:42px 1fr auto;align-items:center;gap:8px;padding:18px 13px;display:grid}.subject-list button:nth-child(odd){border-right:1px solid var(--line)}.subject-list button:hover{background:var(--paper)}.subject-list span{color:var(--faint);font-family:var(--font-geist-mono);font-size:11px}.add-subject{border:1px solid var(--line);background:var(--paper);align-items:center;gap:10px;margin-top:20px;padding:8px 12px;display:flex}.add-subject input{background:0 0;border:0;outline:0;flex:1;min-width:0}.add-subject button{color:var(--blue);cursor:pointer;background:0 0;border:0;font-weight:650}.helper-text{color:var(--muted);margin-top:8px;font-size:10px}.graph-page{height:calc(100vh - 72px);padding:32px 34px 0;overflow:hidden}.graph-heading{margin:0 0 23px}.graph-heading h1{font-size:39px}.graph-heading>div>p:last-child{font-size:13px}.graph-tools{align-items:center;gap:8px;display:flex}.graph-tools label,.material-toolbar>label,.teacher-search{border:1px solid var(--line);background:var(--paper);border-radius:7px;align-items:center;gap:8px;height:36px;padding:0 10px;display:flex}.graph-tools input,.material-toolbar input,.teacher-search input{background:0 0;border:0;outline:0}.graph-layout{border:1px solid var(--line);background:var(--paper);grid-template-columns:1fr 290px;height:calc(100vh - 202px);display:grid}.graph-canvas{background-color:#f9f9f5;background-image:radial-gradient(#d6d7d2 1px,#0000 1px);background-size:24px 24px;min-width:0;position:relative;overflow:hidden}.graph-legend{z-index:5;border:1px solid var(--line);background:#fffefaf0;border-radius:6px;gap:14px;padding:8px 10px;font-size:9px;display:flex;position:absolute;top:18px;left:20px}.graph-legend span{align-items:center;gap:5px;display:flex}.graph-legend i{border-radius:50%;width:7px;height:7px}.graph-legend i.stable{background:var(--jade)}.graph-legend i.developing{background:var(--blue)}.graph-legend i.review{background:var(--amber)}.graph-legend i.recovered{border:2px solid var(--jade)}.map-area{position:absolute;inset:58px 20px 40px}.concept-node{z-index:3;border:1px solid var(--line-strong);background:var(--paper);text-align:left;cursor:pointer;border-radius:6px;min-width:120px;padding:9px 11px;position:absolute;transform:translate(-50%,-50%);box-shadow:0 4px 11px #17202b0f}.concept-node span,.concept-node small{display:block}.concept-node span{font-size:11px;font-weight:700}.concept-node small{color:var(--muted);text-transform:capitalize;margin-top:3px;font-size:8px}.concept-node.stable{border-left:3px solid var(--jade)}.concept-node.developing{border-left:3px solid var(--blue)}.concept-node.review,.concept-node.uncertain{border-left:3px solid var(--amber)}.concept-node.recovered{border:2px solid var(--jade)}.concept-node.selected{border-color:var(--blue);outline:3px solid #2057d429}.edge{z-index:1;transform-origin:0;background:#bfc3c3;height:1px;position:absolute}.edge-search{width:21%;top:16%;left:12%}.edge-binary{width:20%;top:16%;left:36%}.edge-invariants{width:19%;top:16%;left:59%;transform:rotate(-26deg)}.edge-bounds{width:19%;top:16%;left:59%;transform:rotate(26deg)}.edge-recursion{width:18%;top:58%;left:13%}.edge-base{width:21%;top:58%;left:34%}.edge-dp{width:22%;top:58%;left:58%;transform:rotate(27deg)}.graph-note{color:var(--muted);align-items:center;gap:6px;font-size:9px;display:flex;position:absolute;bottom:12px;left:15px}.concept-inspector{border-left:1px solid var(--line);padding:28px 23px}.concept-inspector h2{margin:0 0 11px;font-family:Georgia,serif;font-size:25px;font-weight:500}.concept-inspector dl{margin:27px 0}.concept-inspector dl div{border-top:1px solid var(--line);padding:14px 0}.concept-inspector dt{color:var(--muted);letter-spacing:.09em;text-transform:uppercase;font-size:9px;font-weight:700}.concept-inspector dd{margin:6px 0 0;font-size:11px;line-height:1.5}.material-toolbar{justify-content:space-between;align-items:center;gap:18px;margin-bottom:18px;display:flex}.filter-tabs{gap:20px;display:flex}.filter-tabs button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;padding:7px 0}.filter-tabs button.active{border-bottom-color:var(--blue);color:var(--ink);font-weight:650}.materials-list{border-top:1px solid var(--line-strong)}.material-row{border-bottom:1px solid var(--line);align-items:center;gap:16px;min-height:96px;padding:15px 4px;display:flex}.file-tile{border:1px solid var(--line);background:var(--paper);width:56px;height:63px;color:var(--blue);flex:none;place-items:center;display:grid}.file-tile span{color:var(--muted);margin-top:-12px;font-size:8px;font-weight:700}.material-main{flex:1;grid-template-columns:1fr 180px;align-items:center;gap:16px;min-width:0;display:grid}.material-main h2{text-overflow:ellipsis;white-space:nowrap;margin:0 0 4px;font-size:15px;font-weight:680;overflow:hidden}.material-main p{color:var(--muted);margin:0;font-size:11px}.material-coverage{flex-direction:column;align-items:flex-start;gap:5px;display:flex}.material-state{text-transform:capitalize;font-size:10px;font-weight:700}.material-state.ready{color:var(--jade)}.material-state.review{color:var(--amber)}.material-state.processing{color:var(--blue)}.material-coverage small{color:var(--muted)}.material-actions{align-items:center;gap:8px;display:flex}.material-explainer{border-top:1px solid var(--line);grid-template-columns:auto 1fr auto 1fr auto 1fr;gap:12px;margin-top:35px;padding:24px 0;display:grid}.material-explainer .number{color:var(--blue);font-family:var(--font-geist-mono);font-size:10px}.material-explainer strong{font-size:12px}.material-explainer p{color:var(--muted);margin:4px 0 0;font-size:10px;line-height:1.5}.progress-summary{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(4,1fr);display:grid}.progress-summary>div{border-right:1px solid var(--line);flex-direction:column;gap:4px;padding:18px;display:flex}.progress-summary>div:last-child{border-right:0}.progress-summary svg{color:var(--blue);margin-bottom:5px}.progress-summary span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:9px;font-weight:700}.progress-summary strong{font-size:13px}.progress-summary small{color:var(--muted);font-size:9px}.history-layout{grid-template-columns:1fr 290px;gap:55px;margin-top:45px;display:grid}.section-heading select{border:1px solid var(--line);background:var(--paper);color:var(--muted);border-radius:5px;padding:7px;font-size:10px}.timeline article{grid-template-columns:64px 15px 1fr;gap:10px;min-height:112px;display:grid}.timeline time{color:var(--muted);padding-top:3px;font-size:10px}.timeline-dot{background:var(--blue);border-radius:50%;width:9px;height:9px;margin-top:5px;position:relative}.timeline-dot:after{content:"";background:var(--line);width:1px;height:91px;position:absolute;top:12px;left:4px}.timeline article:last-child .timeline-dot:after{display:none}.timeline article>div{border-bottom:1px solid var(--line);padding:0 0 23px 5px}.timeline article>div>div{justify-content:space-between;align-items:center;gap:20px;display:flex}.timeline h3{margin:0;font-size:14px}.timeline article span:last-child{color:var(--muted);font-size:9px}.timeline article p{color:var(--muted);margin:6px 0;font-size:11px}.timeline article button{color:var(--blue);cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;padding:0;font-size:10px;display:inline-flex}.challenge-panel{border:1px solid var(--line);background:var(--paper);padding:23px}.challenge-panel h2{margin:0;font-size:20px}.bar-chart{border-bottom:1px solid var(--line);align-items:flex-end;gap:7px;height:150px;margin:25px 0 5px;display:flex}.bar-chart i{background:#9fb4e7;flex:1}.bar-chart i:last-child{background:var(--blue)}.chart-labels{color:var(--muted);justify-content:space-between;font-size:8px;display:flex}.challenge-panel>p:last-child{color:var(--muted);align-items:flex-start;gap:7px;margin:25px 0 0;font-size:10px;line-height:1.5;display:flex}.connections-layout{grid-template-columns:1fr 330px;gap:44px;display:grid}.connection-list{border-top:1px solid var(--line)}.connection-list>button{border:0;border-bottom:1px solid var(--line);text-align:left;cursor:pointer;background:0 0;grid-template-columns:42px 1fr auto auto;align-items:center;gap:12px;width:100%;padding:18px 10px;display:grid}.connection-list>button:hover,.connection-list>button.selected{background:var(--paper)}.connection-glyph{border:1px solid var(--line-strong);background:var(--paper);border-radius:8px;place-items:center;width:37px;height:37px;font-family:Georgia,serif;font-size:18px;display:grid}.connection-glyph.large{width:45px;height:45px}.connection-list div{flex-direction:column;display:flex}.connection-list small{color:var(--muted);margin-top:4px;font-size:10px}.connection-state{text-transform:capitalize;font-size:10px}.connection-state.connected{color:var(--jade)}.connection-state.available{color:var(--muted)}.scope-panel{border:1px solid var(--line);background:var(--paper);padding:25px}.scope-title{align-items:center;gap:12px;margin-bottom:26px;display:flex}.scope-title h2{margin:0;font-size:21px}.scope-panel h3{color:var(--muted);letter-spacing:.09em;text-transform:uppercase;margin:18px 0 8px;font-size:9px}.scope-panel ul{flex-direction:column;gap:10px;margin:0 0 22px;padding:0;list-style:none;display:flex}.scope-panel li{align-items:center;gap:8px;font-size:11px;display:flex}.scope-panel li svg{color:var(--jade)}.scope-panel ul.denied li,.scope-panel ul.denied svg{color:var(--muted)}.compact-note{max-width:730px;margin-top:38px}.settings-layout{grid-template-columns:190px 1fr;gap:50px;display:grid}.settings-layout>nav{border-top:1px solid var(--line);flex-direction:column;display:flex}.settings-layout>nav button{border:0;border-bottom:1px solid var(--line);color:var(--muted);text-align:left;cursor:pointer;background:0 0;padding:12px 8px}.settings-layout>nav button.active{color:var(--blue);font-weight:650}.settings-content{max-width:730px}.setting-title{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding-bottom:22px;display:flex}.setting-title h2{margin:0;font-size:25px}.switch{cursor:pointer;align-items:center;gap:9px;display:flex}.switch input{opacity:0;position:absolute}.switch span{background:#c8cbd0;border-radius:99px;width:40px;height:22px;position:relative}.switch span:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:left .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0003}.switch input:checked+span{background:var(--blue)}.switch input:checked+span:after{left:21px}.switch em{font-size:11px;font-style:normal}.switch.small span{width:35px;height:19px}.switch.small span:after{width:13px;height:13px}.switch.small input:checked+span:after{left:19px}.storage-callout{border-left:3px solid var(--jade);background:var(--jade-soft);color:var(--jade);gap:14px;margin:24px 0;padding:18px;display:flex}.storage-callout strong{color:var(--ink);font-size:13px}.storage-callout p{color:#4f655f;margin:4px 0 0;font-size:11px}.setting-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:30px;padding:18px 0;display:flex}.setting-row strong{font-size:13px}.setting-row p{color:var(--muted);margin:3px 0 0;font-size:11px}.settings-actions{gap:10px;margin:22px 0;display:flex}.settings-content>hr{border:0;border-top:1px solid var(--line);margin:38px 0 24px}.danger-zone{justify-content:space-between;align-items:center;gap:20px;display:flex}.danger-zone>div{gap:12px;display:flex}.danger-zone svg{color:var(--red)}.danger-zone strong{font-size:13px}.danger-zone p{color:var(--muted);margin:3px 0 0;font-size:11px}.danger-zone>button{color:var(--red);cursor:pointer;background:0 0;border:1px solid #d8a7a8;border-radius:5px;padding:8px 12px}.settings-footnote{color:var(--muted);align-items:center;gap:7px;margin-top:35px;font-size:10px;display:flex}.settings-footnote button{color:var(--blue);cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;margin-left:auto;display:inline-flex}.teacher-header{margin-bottom:20px}.teacher-header h1{margin:0 0 4px;font-family:Georgia,serif;font-size:41px;font-weight:500}.teacher-header p:last-child{color:var(--muted);margin:0;font-size:12px}.teacher-tabs{border-bottom:1px solid var(--line);gap:26px;margin-bottom:34px;display:flex}.teacher-tabs button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:7px;padding:11px 0;display:flex}.teacher-tabs button.active{border-bottom-color:var(--blue);color:var(--ink);font-weight:650}.teacher-tabs span{background:var(--amber-soft);width:17px;height:17px;color:var(--amber);border-radius:50%;place-items:center;font-size:9px;display:grid}.course-signal{border:1px solid var(--line-strong);border-left:4px solid var(--blue);background:var(--paper);grid-template-columns:1.4fr .6fr;gap:50px;padding:33px 37px;display:grid}.course-signal h2{max-width:700px;margin:0 0 12px;font-family:Georgia,serif;font-size:31px;font-weight:500;line-height:1.2}.course-signal p:not(.eyebrow){max-width:700px;color:var(--muted)}.cohort-strip{border-left:1px solid var(--line);grid-template-columns:1fr;display:grid}.cohort-strip div{border-bottom:1px solid var(--line);grid-template-columns:55px 1fr;align-items:center;padding:6px 0 6px 26px;display:grid}.cohort-strip div:last-child{border:0}.cohort-strip strong{font-family:Georgia,serif;font-size:25px;font-weight:500}.cohort-strip span{color:var(--muted);font-size:10px}.teacher-grid{grid-template-columns:1fr 1fr;gap:25px;margin-top:25px;display:grid}.teacher-panel{border:1px solid var(--line);background:var(--paper);padding:25px}.suggested-action{gap:13px;display:flex}.suggested-action>span{background:var(--blue-soft);width:39px;height:39px;color:var(--blue);border-radius:50%;flex:none;place-items:center;display:grid}.suggested-action strong{font-size:13px}.suggested-action p{color:var(--muted);margin:5px 0;font-size:11px}.evidence-line{color:var(--muted);gap:14px;font-size:9px;display:flex}.teacher-panel>.text-button{margin-top:17px}.readiness-list>div{border-top:1px solid var(--line);grid-template-columns:25px 1fr auto;align-items:center;gap:9px;padding:13px 0;display:grid}.readiness-list>div>div{flex-direction:column;display:flex}.readiness-list strong{font-size:12px}.readiness-list small{color:var(--muted);margin-top:3px;font-size:9px}.privacy-teacher{border-top:1px solid var(--line);color:var(--jade);gap:12px;margin-top:27px;padding:16px 20px;display:flex}.privacy-teacher strong{color:var(--ink);font-size:12px}.privacy-teacher p{color:var(--muted);margin:2px 0 0;font-size:10px}.teacher-surface{border:1px solid var(--line);background:var(--paper);min-height:480px;padding:28px}.surface-header{justify-content:space-between;align-items:flex-end;gap:25px;margin-bottom:27px;display:flex}.surface-header h2{margin:0 0 4px;font-family:Georgia,serif;font-size:28px;font-weight:500}.surface-header p:last-child{color:var(--muted);margin:0;font-size:10px}.material-review-table,.gap-table{border-top:1px solid var(--line-strong)}.material-review-table>div,.gap-table>button,.gap-table>.table-head{border:0;border-bottom:1px solid var(--line);text-align:left;background:0 0;grid-template-columns:1.5fr .7fr .7fr auto;align-items:center;gap:14px;min-height:58px;padding:8px 10px;display:grid}.material-review-table .table-head,.gap-table .table-head{min-height:37px;color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:9px;font-weight:700}.material-review-table>div>span:first-child{align-items:center;gap:9px;display:flex}.material-review-table strong{font-size:11px}.material-review-table span{font-size:10px}.material-review-table button{color:var(--blue);cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;font-size:10px;display:inline-flex}.review-explainer{border-left:3px solid var(--amber);background:var(--amber-soft);margin-top:27px;padding:16px}.review-explainer strong{font-size:12px}.review-explainer p{color:#70563b;margin:4px 0 0;font-size:10px}.graph-review-actions{gap:8px;display:flex}.course-graph-layout{border:1px solid var(--line);grid-template-columns:1fr 310px;display:grid}.outline-tree{padding:12px 0}.outline-tree button{text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:10px 1fr auto 20px;align-items:center;gap:8px;width:100%;min-height:43px;display:grid}.outline-tree button:hover{background:#f7f7f3}.outline-tree strong{font-size:11px}.outline-tree small{color:var(--muted);text-transform:capitalize;font-size:8px}.tree-state{background:var(--jade);border-radius:50%;width:7px;height:7px}.tree-state.review{background:var(--amber)}.tree-state.proposed{border:1px solid var(--blue);background:#fff}.graph-review-detail{border-left:1px solid var(--line);background:#f8f8f4;padding:23px}.graph-review-detail h2{margin:0 0 10px;font-size:20px}.graph-review-detail>p:not(.eyebrow){color:var(--muted);font-size:11px}.graph-review-detail dl div{border-top:1px solid var(--line);padding:12px 0}.graph-review-detail dt{color:var(--muted);text-transform:uppercase;font-size:8px}.graph-review-detail dd{margin:5px 0 0;font-size:10px;line-height:1.5}.graph-review-detail label{color:var(--muted);font-size:9px}.graph-review-detail textarea{border:1px solid var(--line);resize:vertical;background:var(--paper);width:100%;min-height:70px;margin-top:6px;padding:9px}.gap-table>button{cursor:pointer;width:100%}.gap-table>button:hover{background:#f8f8f4}.gap-table>button>span{align-items:center;gap:5px;font-size:10px;display:flex}.gap-table>button>span:first-child{flex-direction:column;align-items:flex-start}.gap-table strong{font-size:11px}.gap-table small{color:var(--muted);font-size:8px}.gap-footnote{color:var(--muted);margin-top:12px;font-size:9px}@media (max-width:1050px){.side-rail{width:218px}.app-body{width:calc(100% - 218px);margin-left:218px}.page,.narrow-page{width:100%}.continue-grid{gap:32px;padding-left:28px;padding-right:28px}.home-lower-grid{gap:30px}.session-layout{grid-template-columns:1fr}.focus-sidebar{display:none}.graph-layout{grid-template-columns:1fr 250px}.material-main{grid-template-columns:1fr 135px}.connections-layout{grid-template-columns:1fr 290px}.teacher-grid{grid-template-columns:1fr}}@media (max-width:760px){body{font-size:14px}.side-rail{width:min(310px,88vw);box-shadow:var(--shadow);transition:transform .2s;transform:translate(-103%)}.side-rail.is-open{transform:translate(0)}.close-nav,.menu-button{display:inline-grid!important}.nav-backdrop{z-index:25;background:#17202b52;border:0;position:fixed;inset:0}.app-body{width:100%;margin-left:0}.top-bar{height:62px;padding:0 14px}.context-title{display:none}.top-actions{gap:9px;margin-left:auto}.sync-state,.profile-copy{display:none}.page,.narrow-page{width:100%;padding:35px 18px 90px}.mobile-dock{z-index:20;border-top:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffefaf7;justify-content:space-around;align-items:center;height:65px;display:flex;position:fixed;inset:auto 0 0}.mobile-dock button{min-width:55px;color:var(--muted);background:0 0;border:0;flex-direction:column;align-items:center;gap:4px;font-size:9px;display:flex}.mobile-dock button.active{color:var(--blue)}.page-heading{margin-bottom:28px}.page-heading h1{font-size:35px}.split-heading,.graph-heading,.teacher-header,.welcome-block{flex-direction:column;align-items:flex-start}.session-pace{display:none}.continue-meta{padding:15px 16px 0}.continue-grid{grid-template-columns:1fr;gap:34px;padding:24px 18px 28px}.continue-grid h2{font-size:33px}.continue-panel>footer{align-items:flex-start}.home-lower-grid{grid-template-columns:1fr;gap:30px}.next-section{padding-left:19px}.session-page{min-height:calc(100dvh - 62px)}.session-header{grid-template-columns:1fr auto;padding:0 15px}.session-header>div{display:none}.session-layout{min-height:calc(100dvh - 132px)}.teaching-workspace{width:calc(100% - 36px);padding-top:34px;padding-bottom:90px}.teaching-workspace>h1{font-size:35px}.lesson-lead{font-size:17px}.code-example>div{grid-template-columns:25px 1fr;padding:0 10px}.code-example em{display:none}.answer-actions{flex-direction:column-reverse;align-items:stretch;gap:8px}.feedback-block{padding:18px 15px}.feedback-block>p,.feedback-block>button{margin-left:0}.source-footer{flex-wrap:wrap;align-items:flex-start}.voice-stage{padding:35px 18px}.waveform{gap:3px}.waveform i{width:2px}.future-row{flex-direction:column;align-items:flex-start}.practice-feature{grid-template-columns:1fr;padding:26px 20px}.difficulty-scale{border-top:1px solid var(--line);border-left:0;padding:20px 0 0}.subject-list{grid-template-columns:1fr}.subject-list button:nth-child(odd){border-right:0}.graph-page{height:auto;padding:27px 14px 82px;overflow:visible}.graph-tools{width:100%}.graph-tools label{flex:1}.graph-tools input{width:100%;min-width:0}.graph-layout{grid-template-columns:1fr;height:auto}.graph-canvas{height:530px}.concept-inspector{border-top:1px solid var(--line);border-left:0}.concept-node{min-width:92px;padding:7px}.concept-node span{font-size:9px}.concept-node small{font-size:7px}.graph-legend{flex-wrap:wrap;left:12px;right:12px}.map-area{inset:80px 10px 35px}.material-toolbar{flex-direction:column;align-items:stretch}.filter-tabs{overflow-x:auto}.material-row{flex-wrap:wrap;align-items:flex-start}.material-main{grid-template-columns:1fr}.material-actions{justify-content:flex-end;width:100%}.material-explainer{grid-template-columns:auto 1fr}.progress-summary{grid-template-columns:1fr 1fr}.progress-summary>div:nth-child(2){border-right:0}.history-layout,.connections-layout,.settings-layout{grid-template-columns:1fr}.settings-layout>nav{border-bottom:1px solid var(--line);flex-direction:row;overflow-x:auto}.settings-layout>nav button{white-space:nowrap;border-bottom:0}.settings-actions{flex-direction:column;align-items:stretch}.danger-zone{flex-direction:column;align-items:flex-start}.teacher-tabs{overflow-x:auto}.teacher-tabs button{white-space:nowrap}.course-signal{grid-template-columns:1fr;padding:25px 20px}.cohort-strip{border-top:1px solid var(--line);border-left:0;grid-template-columns:repeat(3,1fr)}.cohort-strip div{border-right:1px solid var(--line);border-bottom:0;flex-direction:column;align-items:flex-start;padding:14px 6px;display:flex}.teacher-grid{grid-template-columns:1fr}.surface-header{flex-direction:column;align-items:flex-start}.material-review-table{overflow-x:auto}.material-review-table>div{min-width:650px}.course-graph-layout{grid-template-columns:1fr}.graph-review-detail{border-top:1px solid var(--line);border-left:0}.gap-table{overflow-x:auto}.gap-table>button,.gap-table>.table-head{min-width:650px}.teacher-page{padding-bottom:90px}}.iris-page{width:min(1420px,100%);margin:0 auto;padding:42px clamp(20px,3.4vw,52px) 78px}.iris-heading{justify-content:space-between;align-items:flex-end;gap:40px;padding-bottom:30px;display:flex}.iris-heading>div:first-child{max-width:790px}.iris-heading h1{margin:0 0 11px;font-family:Georgia,serif;font-size:clamp(39px,4.1vw,58px);font-weight:500;line-height:1.02}.iris-heading>div:first-child>p:last-child{max-width:720px;color:var(--muted);margin:0;font-size:15px;line-height:1.65}.iris-controls{flex:none;align-items:flex-end;gap:9px;display:flex}.iris-controls label{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;gap:6px;font-size:9px;font-weight:750;display:grid}.iris-controls select{border:1px solid var(--line-strong);background:var(--paper);min-width:180px;height:42px;color:var(--ink);text-transform:none;border-radius:6px;padding:0 32px 0 11px}.iris-notice,.iris-error{border-left:3px solid var(--jade);background:var(--jade-soft);color:var(--jade);align-items:flex-start;gap:11px;margin-bottom:17px;padding:14px 16px;display:flex}.iris-notice strong{color:var(--ink);font-size:12px}.iris-notice p{color:#4f655f;margin:3px 0 0;font-size:11px}.iris-error{border-left-color:var(--red);color:var(--red);background:#f7e8e8;font-size:12px}.iris-loading,.iris-empty{text-align:center;align-content:center;place-items:center;min-height:430px;display:grid}.iris-loading span{border:2px solid var(--line);border-top-color:var(--blue);border-radius:50%;width:28px;height:28px;animation:.9s linear infinite spin}.iris-loading p{color:var(--muted);margin-top:14px;font-size:12px}.iris-empty{border-top:1px solid var(--line);border-bottom:1px solid var(--line);max-width:650px;margin:30px auto;padding:60px 35px}.iris-empty>svg{color:var(--blue);margin-bottom:20px}.iris-empty h2{max-width:540px;margin:0 0 12px;font-family:Georgia,serif;font-size:31px;font-weight:500}.iris-empty>p:not(.eyebrow){max-width:540px;color:var(--muted)}.iris-empty button{margin-top:12px}.iris-brief{border-top:1px solid var(--line-strong);border-bottom:1px solid var(--line-strong);justify-content:space-between;align-items:stretch;min-height:78px;margin-bottom:18px;display:flex}.iris-brief>div{align-items:center;gap:13px;max-width:760px;padding:16px 8px 16px 0;display:flex}.iris-brief>div>svg{color:var(--blue);flex:none}.iris-brief>div p{margin:0;font-family:Georgia,serif;font-size:18px;line-height:1.35}.iris-brief>div span{color:var(--muted);font-family:var(--font-geist-sans), Arial, sans-serif;letter-spacing:.1em;text-transform:uppercase;margin-bottom:3px;font-size:9px;font-weight:750;display:block}.iris-brief dl{margin:0;display:flex}.iris-brief dl div{border-left:1px solid var(--line);min-width:94px;padding:15px 18px}.iris-brief dt{color:var(--muted);letter-spacing:.07em;text-transform:uppercase;font-size:8px}.iris-brief dd{margin:5px 0 0;font-family:Georgia,serif;font-size:25px}.iris-workspace{border:1px solid var(--line-strong);background:var(--paper);grid-template-columns:minmax(260px,320px) minmax(0,1fr);min-height:730px;display:grid}.iris-case-list{border-right:1px solid var(--line);background:#f5f4ef}.iris-case-list>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:90px;padding:20px 19px;display:flex}.iris-case-list>header h2{letter-spacing:-.02em;margin:0;font-size:16px}.iris-case-list>header>span{border:1px solid var(--line-strong);border-radius:50%;place-items:center;width:28px;height:28px;font-size:10px;display:grid}.iris-case-list>button{border:0;border-bottom:1px solid var(--line);text-align:left;cursor:pointer;background:0 0;grid-template-columns:29px minmax(0,1fr) 40px;align-items:center;gap:8px;width:100%;min-height:91px;padding:14px;display:grid}.iris-case-list>button:hover{background:#ffffffa6}.iris-case-list>button.active{background:var(--paper);position:relative}.iris-case-list>button.active:before{background:var(--blue);content:"";width:3px;position:absolute;inset:0 auto 0 0}.iris-rank{color:var(--faint);align-self:start;padding-top:2px;font-family:Georgia,serif;font-size:12px}.iris-case-copy{min-width:0}.iris-case-copy strong,.iris-case-copy small{display:block}.iris-case-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.iris-case-copy small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;text-transform:capitalize;margin-top:4px;font-size:9px;overflow:hidden}.iris-case-copy i{background:#e0e0da;height:3px;margin-top:10px;display:block;overflow:hidden}.iris-case-copy i b{background:var(--blue);height:100%;display:block}.iris-allocation{color:var(--blue);text-align:right;font-family:Georgia,serif;font-size:17px}.iris-allocation small{color:var(--muted);font-family:var(--font-geist-sans), Arial, sans-serif;letter-spacing:.06em;text-transform:uppercase;margin-top:2px;font-size:7px;display:block}.iris-case-list>footer{color:var(--muted);gap:8px;padding:17px;font-size:9px;line-height:1.55;display:flex}.iris-case-list>footer svg{color:var(--jade);flex:none}.iris-dossier{min-width:0}.iris-case-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-end;gap:25px;min-height:155px;padding:28px clamp(24px,4vw,52px);display:flex}.iris-case-header h2{margin:8px 0 7px;font-family:Georgia,serif;font-size:clamp(30px,3vw,43px);font-weight:500}.iris-case-header p{color:var(--muted);margin:0;font-size:12px}.iris-case-header p strong{color:var(--ink);font-weight:650}.iris-status-line{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.iris-status-line>span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:8px}.iris-status-line>span+span{border-left:1px solid var(--line);padding-left:8px}.iris-status-line .iris-severity{border:0;border-radius:99px;padding:4px 7px;font-weight:750}.iris-severity.high{background:var(--amber-soft);color:var(--amber)}.iris-severity.medium{background:var(--blue-soft);color:var(--blue)}.iris-severity.watch{background:var(--jade-soft);color:var(--jade)}.iris-time{border-left:1px solid var(--line);grid-template-columns:auto 1fr;align-items:center;gap:9px;min-width:130px;padding-left:20px;display:grid}.iris-time strong{font-family:Georgia,serif;font-size:36px;font-weight:500}.iris-time span{color:var(--muted);text-transform:uppercase;font-size:8px;line-height:1.4}.iris-human-message{background:var(--jade-soft);color:var(--jade);border-bottom:1px solid #bfd8cf;gap:12px;padding:20px clamp(24px,4vw,52px);display:flex}.iris-human-message svg{flex:none}.iris-human-message .eyebrow{color:var(--jade);margin-bottom:4px}.iris-human-message div>p:last-child{color:#2f564a;max-width:800px;margin:0;font-family:Georgia,serif;font-size:16px;line-height:1.55}.iris-metrics{border-bottom:1px solid var(--line);grid-template-columns:repeat(3,1fr);display:grid}.iris-metrics>div{grid-template-columns:1fr auto;gap:6px 15px;padding:19px clamp(17px,2.5vw,31px);display:grid}.iris-metrics>div+div{border-left:1px solid var(--line)}.iris-metrics span{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;font-size:8px}.iris-metrics strong{grid-row:span 2;font-family:Georgia,serif;font-size:24px;font-weight:500}.iris-metrics i{background:#e5e5df;height:3px;display:block;overflow:hidden}.iris-metrics i b{background:var(--blue);height:100%;display:block}.iris-metrics small{color:var(--faint);font-size:8px}.iris-section{border-bottom:1px solid var(--line);padding:31px clamp(24px,4vw,52px)}.iris-section-title{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:19px;display:flex}.iris-section-title h3{margin:0;font-family:Georgia,serif;font-size:24px;font-weight:500}.iris-graph{margin:0}.iris-graph-labels{color:var(--faint);letter-spacing:.08em;text-align:center;text-transform:uppercase;grid-template-columns:repeat(4,1fr);padding:0 1% 7px;font-size:7px;font-weight:750;display:grid}.iris-graph svg{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background-color:#fbfbf7;background-image:radial-gradient(#d9dad5 .8px,#0000 .8px);background-size:18px 18px;width:100%;min-height:260px;display:block}.iris-graph line{stroke:#a8afb4;stroke-width:1.2px}.iris-graph marker path{fill:#a8afb4}.iris-graph>svg>g>text{fill:var(--muted);font-size:8px}.iris-graph-node rect{fill:var(--paper);stroke:var(--line-strong)}.iris-graph-node.cause rect{fill:var(--amber-soft);stroke:#d8b68e}.iris-graph-node.focus rect{fill:var(--blue);stroke:var(--blue-dark)}.iris-graph-node.downstream rect{fill:var(--jade-soft);stroke:#9bc4b6}.iris-graph-node text{fill:var(--ink);font-size:9px;font-weight:700}.iris-graph-node.focus text{fill:#fff}.iris-graph-node .node-state{fill:var(--muted);text-transform:capitalize;font-size:7px;font-weight:500}.iris-graph-node.focus .node-state{fill:#dce6ff}.iris-graph figcaption{color:var(--muted);margin-top:8px;font-size:8px}.iris-evidence-grid{grid-template-columns:1fr 1fr;display:grid}.iris-evidence-grid>section{border-bottom:1px solid var(--line);padding:28px clamp(24px,4vw,52px)}.iris-evidence-grid>section+section{border-left:1px solid var(--line)}.iris-signal{border-top:1px solid var(--line);grid-template-columns:18px minmax(0,1fr) auto;gap:8px;padding:11px 0;display:grid}.iris-signal svg{color:var(--jade)}.iris-signal strong{text-transform:capitalize;font-size:9px;display:block}.iris-signal p{color:var(--muted);margin:4px 0 0;font-size:9px;line-height:1.45}.iris-signal>span{color:var(--muted);font-family:Georgia,serif;font-size:13px}.iris-counter{border-top:1px solid var(--line);grid-template-columns:18px 1fr;gap:8px;padding:12px 0;display:grid}.iris-counter svg{color:var(--amber)}.iris-counter p{color:var(--muted);margin:0;font-size:9px;line-height:1.55}.iris-next{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:28px;padding:28px clamp(24px,4vw,52px);display:flex}.iris-next>div{max-width:680px}.iris-next h3{margin:0 0 7px;font-family:Georgia,serif;font-size:24px;font-weight:500}.iris-next>div>p:last-child{color:var(--muted);margin:0;font-size:10px}.iris-next .primary-button{flex:none}.iris-case-footer{justify-content:space-between;align-items:center;gap:20px;padding:17px clamp(24px,4vw,52px);display:flex}.iris-case-footer>div{color:var(--muted);align-items:center;gap:8px;font-size:8px;display:flex}.iris-case-footer svg{color:var(--jade);flex:none}.iris-case-footer .text-button{flex:none;font-size:10px}.iris-challenge{border:1px solid var(--line);background:#faf9f5;margin:0 clamp(24px,4vw,52px) 30px;padding:19px}.iris-challenge label{margin-bottom:7px;font-size:10px;font-weight:700;display:block}.iris-challenge textarea{border:1px solid var(--line-strong);resize:vertical;background:var(--paper);width:100%;min-height:78px;color:var(--ink);border-radius:4px;padding:10px}.iris-challenge>div{justify-content:flex-end;gap:9px;margin-top:9px;display:flex}.iris-privacy{color:var(--muted);align-items:center;gap:7px;margin:13px 0 0;font-size:8px;display:flex}.iris-privacy svg{color:var(--jade)}@media (max-width:1120px){.iris-heading{flex-direction:column;align-items:flex-start}.iris-controls{width:100%}.iris-controls label{flex:1}.iris-controls select{width:100%}.iris-workspace{grid-template-columns:260px minmax(0,1fr)}.iris-brief>div p{font-size:16px}.iris-evidence-grid{grid-template-columns:1fr}.iris-evidence-grid>section+section{border-left:0}}@media (max-width:820px){.iris-page{padding:28px 16px 86px}.iris-heading{padding-bottom:22px}.iris-heading h1{font-size:38px}.iris-controls,.iris-brief{flex-direction:column;align-items:stretch}.iris-brief dl{border-top:1px solid var(--line)}.iris-brief dl div{border-left:0;flex:1}.iris-brief dl div+div{border-left:1px solid var(--line)}.iris-workspace{border-left:0;border-right:0;display:block}.iris-case-list{border-right:0;border-bottom:1px solid var(--line);white-space:nowrap;overflow-x:auto}.iris-case-list>header,.iris-case-list>footer{display:none}.iris-case-list>button{border-right:1px solid var(--line);white-space:normal;width:250px;display:inline-grid}.iris-case-header{flex-direction:column;align-items:flex-start}.iris-time{border-left:0;padding:0}.iris-metrics{grid-template-columns:1fr}.iris-metrics>div+div{border-top:1px solid var(--line);border-left:0}.iris-graph{overflow-x:auto}.iris-graph svg,.iris-graph-labels{min-width:720px}.iris-next,.iris-case-footer{flex-direction:column;align-items:stretch}.iris-next .primary-button{width:100%}.iris-case-footer .text-button{align-self:flex-start}.iris-section-title{flex-direction:column;align-items:flex-start}}@media (max-width:480px){.iris-heading h1{font-size:34px}.iris-brief dl div{min-width:0;padding:12px 9px}.iris-brief dd{font-size:21px}.iris-case-header,.iris-human-message,.iris-section,.iris-evidence-grid>section,.iris-next,.iris-case-footer{padding-left:18px;padding-right:18px}.iris-challenge{margin-left:18px;margin-right:18px}.iris-dossier{overflow:hidden}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.auth-page{background:var(--paper);grid-template-columns:minmax(0,1.2fr) minmax(380px,.8fr);min-height:100vh;display:grid}.auth-intro{border-right:1px solid var(--line);background:var(--canvas);flex-direction:column;justify-content:center;padding:clamp(44px,8vw,120px);display:flex}.auth-brand{pointer-events:none;margin-bottom:90px}.auth-intro h1{max-width:760px;margin:0 0 24px;font-family:Georgia,serif;font-size:clamp(48px,6vw,82px);font-weight:500;line-height:1.02}.auth-intro>p:not(.eyebrow){max-width:650px;color:var(--muted);font-size:18px}.auth-points{flex-wrap:wrap;gap:9px;margin-top:28px;display:flex}.auth-points span{border:1px solid var(--line);color:var(--muted);border-radius:99px;padding:7px 10px;font-size:11px}.auth-panel{flex-direction:column;justify-content:center;padding:clamp(36px,6vw,90px);display:flex}.auth-panel h2{margin:0 0 28px;font-family:Georgia,serif;font-size:34px;font-weight:500}.auth-panel form{flex-direction:column;gap:17px;display:flex}.auth-panel label,.connection-create label,.create-course label{color:var(--muted);flex-direction:column;gap:7px;font-size:11px;font-weight:650;display:flex}.auth-panel input,.connection-create input,.create-course input,.inline-form input,.teacher-header select,.upload-controls select,.practice-config select{border:1px solid var(--line-strong);min-height:43px;color:var(--ink);background:#fff;border-radius:6px;padding:9px 11px}.backend-state{width:fit-content;color:var(--muted);align-items:center;gap:8px;margin-bottom:45px;font-size:11px;display:inline-flex}.backend-state i{background:var(--amber);width:8px;height:8px;box-shadow:0 0 0 4px var(--amber-soft);border-radius:50%}.backend-state.online i{background:var(--jade);box-shadow:0 0 0 4px var(--jade-soft)}.backend-state.checking i{background:var(--blue);box-shadow:0 0 0 4px var(--blue-soft)}.form-error{color:var(--red);margin:0;font-size:12px}.demo-login{width:fit-content;color:var(--blue);cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;margin-top:18px;padding:0;font-size:12px;display:inline-flex}.auth-privacy{color:var(--muted);gap:7px;margin-top:40px;font-size:10px;display:flex}.offline-help{border-left:3px solid var(--amber);background:var(--amber-soft);margin-top:24px;padding:16px}.offline-help p{color:#70563b;margin:0 0 7px;font-size:11px}.offline-help code{overflow-wrap:anywhere;margin-bottom:12px;font-size:10px;display:block}.sync-state.offline>span{background:var(--red);box-shadow:0 0 0 4px #f5e4e4}.app-error{z-index:50;border-left:3px solid var(--red);background:var(--paper);max-width:460px;box-shadow:var(--shadow);color:var(--red);align-items:center;gap:18px;padding:13px 15px;font-size:12px;display:flex;position:fixed;bottom:22px;right:22px}.app-error button{color:var(--blue);cursor:pointer;background:0 0;border:0;margin-left:auto}.spin{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.reduce-motion *,.reduce-motion :before,.reduce-motion :after{transition-duration:.01ms!important;animation-duration:.01ms!important}.inline-success{color:var(--jade);align-items:center;gap:7px;margin:12px 0 0;font-size:12px;display:flex}.option-list{gap:8px;margin:0 0 20px;display:grid}.option-list button{border:1px solid var(--line);background:var(--paper);text-align:left;cursor:pointer;border-radius:6px;align-items:center;gap:11px;padding:12px;display:flex}.option-list button.selected{border-color:var(--blue);background:var(--blue-soft)}.option-list button span{background:var(--canvas);width:23px;height:23px;color:var(--muted);border-radius:50%;place-items:center;font-size:10px;display:grid}.backend-map{grid-template-columns:repeat(4,minmax(120px,1fr));align-content:start;gap:14px;min-height:500px;padding:28px 22px;display:grid;overflow:auto}.backend-map .concept-node{width:100%;min-width:0;min-height:72px;position:relative;transform:none;top:auto!important;left:auto!important}.backend-map .empty-state{position:absolute;inset:40% 0 auto}.state-mark.active_blocker,.state-mark.needs_review,.state-mark.stale{background:var(--amber);box-shadow:0 0 0 4px var(--amber-soft)}.state-mark.verified{background:var(--jade);box-shadow:0 0 0 4px var(--jade-soft)}.materials-heading{justify-content:space-between;align-items:flex-start;gap:30px;display:flex}.materials-heading>div:first-child{min-width:min(100%,420px)}.upload-controls{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:9px;max-width:650px;display:flex}.upload-buttons{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.ocr-result{border-left:3px solid var(--jade);background:var(--jade-soft);color:var(--jade);grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:13px;margin:-10px 0 24px;padding:16px 18px;display:grid}.ocr-result strong{color:var(--ink);font-size:12px}.ocr-result p{color:#405d54;margin:4px 0 0;font-size:11px;line-height:1.55;overflow:hidden}.ocr-result button{color:var(--muted);cursor:pointer;background:0 0;border:0;font-size:20px}.ocr-badge{border:1px solid var(--line);width:fit-content;color:var(--muted);letter-spacing:.05em;text-transform:uppercase;padding:3px 6px;font-size:8px;font-weight:750}.ocr-badge.ready{color:var(--jade);border-color:#9dc8ba}.material-toolbar>label{border:1px solid var(--line);background:var(--paper);border-radius:6px;align-items:center;gap:8px;min-width:300px;padding:0 10px;display:flex}.material-toolbar input{background:0 0;border:0;outline:0;width:100%;min-height:38px}.material-list{border-top:1px solid var(--line-strong)}.material-list article{border-bottom:1px solid var(--line);grid-template-columns:50px minmax(180px,1fr) 190px auto;align-items:center;gap:16px;min-height:88px;display:grid}.file-icon{border:1px solid var(--line);background:var(--paper);width:44px;height:52px;color:var(--blue);place-items:center;display:grid}.material-title,.material-list article>div:nth-child(3){flex-direction:column;gap:4px;min-width:0;display:flex}.material-title strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.material-title small,.material-list article>div:nth-child(3) small{color:var(--muted);font-size:10px}.material-status{color:var(--blue);text-transform:capitalize;font-size:10px;font-weight:700}.material-status.ready{color:var(--jade)}.material-status.review{color:var(--amber)}.empty-library,.empty-state{color:var(--muted);text-align:center;padding:45px 20px}.empty-library h2{color:var(--ink);margin:12px 0 4px;font-size:18px}.empty-library p{margin:0;font-size:11px}.practice-config{border:1px solid var(--line);background:var(--paper);grid-template-columns:minmax(220px,1fr) minmax(220px,.8fr) auto;align-items:end;gap:20px;padding:24px;display:grid}.practice-config>div{gap:12px;display:flex}.practice-config p{color:var(--muted);margin:4px 0 0;font-size:11px}.practice-config label{color:var(--muted);flex-direction:column;gap:6px;font-size:10px;display:flex}.practice-card{border-top:3px solid var(--blue);background:var(--paper);max-width:820px;box-shadow:var(--shadow);margin:32px auto 0;padding:34px}.practice-card h2{font-family:Georgia,serif;font-size:27px;font-weight:500;line-height:1.35}.practice-card>p:not(.eyebrow){color:var(--muted)}.practice-card>textarea{border:1px solid var(--line-strong);resize:vertical;border-radius:7px;width:100%;min-height:130px;padding:14px}.practice-empty{color:var(--muted);text-align:center;padding:70px 20px}.practice-empty h2{color:var(--ink);margin:12px 0 4px}.connection-create{align-items:end;gap:12px;margin-bottom:28px;display:flex}.connection-create label{flex:1}.token-reveal{border-left:3px solid var(--jade);background:var(--jade-soft);margin-bottom:28px;padding:18px}.token-reveal>div{gap:10px;display:flex}.token-reveal p{color:#4f655f;margin:2px 0 10px;font-size:10px}.token-reveal code{overflow-wrap:anywhere;background:#ffffffb3;margin:10px 0;padding:9px;font-size:10px;display:block}.connections-heading{justify-content:space-between;align-items:flex-end;gap:30px;display:flex}.connections-heading>div:first-child{max-width:780px}.connection-count{border-left:1px solid var(--line-strong);flex-direction:column;min-width:145px;padding:8px 0 8px 18px;display:flex}.connection-count strong{font-family:Georgia,serif;font-size:30px;font-weight:500}.connection-count span{color:var(--muted);font-size:10px}.mcp-setup{border:1px solid #b7d8cd;border-left:4px solid var(--jade);background:var(--jade-soft);margin:4px 0 34px;padding:22px}.mcp-setup>header{gap:13px;display:flex}.setup-icon{background:var(--jade);color:#fff;flex:none;place-items:center;width:38px;height:38px;display:grid}.mcp-setup h2{margin:0 0 4px;font-size:21px}.mcp-setup header p:last-child{color:#4f655f;margin:0;font-size:10px}.mcp-setup-grid{background:#b7d8cd;border:1px solid #b7d8cd;grid-template-columns:1fr 1fr;gap:1px;margin-top:19px;display:grid}.mcp-setup-grid>div{background:var(--paper);grid-template-columns:1fr auto;gap:7px 12px;min-width:0;padding:14px;display:grid}.mcp-setup-grid span{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;grid-column:1/-1;font-size:9px;font-weight:750}.mcp-setup-grid code{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.mcp-setup-grid button,.endpoint-line button{color:var(--blue);cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;font-size:10px;display:inline-flex}.config-copy{justify-content:space-between;align-items:center;gap:18px;margin-top:17px;display:flex}.config-copy strong,.config-copy small{display:block}.config-copy strong{font-size:11px}.config-copy small{color:#4f655f;margin-top:3px;font-size:9px}.mcp-setup>pre{background:#ffffffb8;border:1px solid #c8ddd6;max-height:210px;margin:10px 0 0;padding:14px;font-size:10px;line-height:1.55;overflow:auto}.connection-list-title{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:72px;padding:12px 10px;display:flex!important}.connection-list-title>div{display:block!important}.connection-list-title h2{margin:0;font-size:18px}.connection-list-title>span{background:var(--blue-soft);width:27px;height:27px;color:var(--blue);border-radius:50%;place-items:center;font-size:10px;font-weight:750;display:grid}.connection-empty{color:var(--muted);align-items:flex-start;gap:12px;padding:22px 10px;display:flex!important}.connection-empty svg{color:var(--blue);flex:none}.connection-empty p{margin:0;font-size:11px}.connection-history{border-top:1px solid var(--line);margin-top:18px}.connection-history summary{color:var(--muted);cursor:pointer;align-items:center;gap:8px;padding:14px 10px;font-size:10px;list-style:none;display:flex}.connection-history summary::-webkit-details-marker{display:none}.connection-history summary em{margin-left:auto;font-style:normal}.connection-history[open] summary svg{transform:rotate(180deg)}.connection-history>div{max-height:280px;overflow-y:auto;display:block!important}.connection-history article{border-top:1px solid var(--line);opacity:.68;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:10px;padding:11px 10px;display:grid}.connection-history article .connection-glyph{width:31px;height:31px;font-size:14px}.connection-history article>div{flex-direction:column;display:flex}.connection-history article strong{font-size:10px}.connection-history article small{color:var(--muted);margin-top:2px;font-size:8px}.scope-panel{align-self:start}.endpoint-line{border:1px solid var(--line);background:var(--canvas);grid-template-columns:1fr auto;gap:5px 8px;min-width:0;padding:11px;display:grid}.endpoint-line span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;grid-column:1/-1;font-size:8px;font-weight:750}.endpoint-line code{text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.mcp-how{border-top:1px solid var(--line);gap:0;display:grid}.mcp-how>div{border-bottom:1px solid var(--line);grid-template-columns:28px 1fr;gap:9px;padding:13px 0;display:grid}.mcp-how>div>span{border:1px solid var(--line-strong);width:24px;height:24px;color:var(--blue);place-items:center;font-size:9px;display:grid}.mcp-how p{color:var(--muted);margin:0;font-size:9px;line-height:1.45}.mcp-how strong{color:var(--ink);margin-bottom:2px;font-size:10px;display:block}.create-course{grid-template-columns:1fr 1fr auto;align-items:end;gap:14px;max-width:720px;display:grid}.inline-form{gap:8px;margin:16px 0 20px;display:flex}.inline-form input{flex:1;min-width:0}.primary-button.compact{min-height:35px;padding:7px 11px;font-size:12px}.gap-table>div:not(.table-head){border-bottom:1px solid var(--line);grid-template-columns:1.5fr .7fr .7fr 1fr;align-items:center;gap:14px;min-height:58px;padding:8px 10px;font-size:10px;display:grid}.gap-table>div:not(.table-head)>span{align-items:center;gap:5px;display:flex}.gap-table>div:not(.table-head)>span:first-child{flex-direction:column;align-items:flex-start}.chat-workbench{background:var(--paper);grid-template-columns:clamp(238px,22vw,292px) minmax(0,1fr);min-height:calc(100dvh - 72px);display:grid}.chat-rail{border-right:1px solid var(--line);background:var(--canvas);flex-direction:column;min-width:0;padding:clamp(28px,3vw,42px) clamp(18px,2.2vw,28px) 28px;display:flex}.chat-rail h1{margin:7px 0 10px;font-family:Georgia,serif;font-size:clamp(23px,2.25vw,30px);font-weight:500;line-height:1.12}.chat-rail>div>p:last-child{color:var(--muted);margin:0;font-size:12px;line-height:1.6}.chat-control-label{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;margin-top:36px;font-size:10px;font-weight:700;display:block}.chat-control-label.compact{margin-top:15px}.select-wrap{margin-top:7px;position:relative}.select-wrap select{-webkit-appearance:none;appearance:none;border:1px solid var(--line-strong);background:var(--paper);width:100%;min-height:44px;color:var(--ink);border-radius:4px;padding:9px 35px 9px 11px;font-size:12px}.select-wrap svg{pointer-events:none;position:absolute;top:50%;right:11px;transform:translateY(-50%)}.chat-context{margin:22px 0 0}.chat-context>div{border-top:1px solid var(--line);padding:12px 0}.chat-context dt{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;font-size:9px}.chat-context dd{text-transform:capitalize;align-items:center;gap:8px;margin:5px 0 0;font-size:11px;display:flex}.chat-ocr-status{border-top:1px solid var(--line);color:var(--jade-dark);align-items:flex-start;gap:9px;margin-top:14px;padding:12px 0;display:flex}.chat-ocr-status svg{flex:none}.chat-ocr-status strong,.chat-ocr-status span{display:block}.chat-ocr-status strong{font-size:10px}.chat-ocr-status span{color:var(--muted);margin-top:3px;font-size:9px;line-height:1.45}.chat-rail-actions{gap:8px;margin-top:auto;padding-top:24px;display:grid}.quiet-button{min-height:38px;color:var(--muted);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;gap:7px;display:inline-flex}.chat-conversation{background:var(--paper);grid-template-rows:64px minmax(0,1fr) auto;min-width:0;min-height:calc(100dvh - 72px);display:grid}.conversation-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:0 clamp(20px,4vw,56px);display:flex}.conversation-header>div{align-items:center;gap:11px;display:flex}.conversation-header strong,.conversation-header small{display:block}.conversation-header strong{font-size:12px}.conversation-header small{color:var(--muted);margin-top:2px;font-size:10px}.conversation-presence,.call-presence{background:var(--line-strong);border-radius:50%;width:8px;height:8px}.conversation-presence.active,.call-presence.active{background:var(--jade);box-shadow:0 0 0 4px var(--jade-soft)}.conversation-mode{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:9px;font-weight:700}.conversation-scroll{padding:38px clamp(22px,6vw,88px) 34px;overflow-y:auto}.conversation-empty,.call-empty{max-width:470px;color:var(--muted);text-align:center;margin:12vh auto 0}.conversation-empty svg,.call-empty svg{color:var(--blue)}.conversation-empty h2,.call-empty h2{color:var(--ink);margin:14px 0 7px;font-family:Georgia,serif;font-size:25px;font-weight:500}.conversation-empty p,.call-empty p{margin:0;font-size:12px;line-height:1.7}.chat-starters{text-align:left;gap:7px;margin-top:22px;display:grid}.chat-starters button{border:1px solid var(--line);color:var(--ink);text-align:left;cursor:pointer;background:0 0;border-radius:4px;padding:10px 12px}.chat-starters button:hover{border-color:var(--blue);background:var(--blue-soft)}.conversation-entry{grid-template-columns:34px minmax(0,1fr);gap:14px;max-width:820px;margin:0 auto 30px;display:grid}.speaker-mark{border:1px solid var(--line);width:30px;height:30px;color:var(--blue);place-items:center;font-size:10px;font-weight:750;display:grid}.conversation-entry.learner .speaker-mark{border-color:var(--ink);background:var(--ink);color:#fff}.conversation-entry.note .speaker-mark{width:auto;color:var(--muted);font-size:8px}.entry-label{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;margin:2px 0 8px;font-size:9px;font-weight:750}.conversation-entry p{color:var(--ink);margin:0;font-family:Georgia,serif;font-size:20px;line-height:1.55}.rich-text>:first-child{margin-top:0!important}.rich-text>:last-child{margin-bottom:0!important}.conversation-entry .rich-text p,.call-entry .rich-text p{margin:0 0 12px}.rich-text h1,.rich-text h2,.rich-text h3{color:var(--ink);margin:22px 0 9px;font-family:Georgia,serif;font-weight:600;line-height:1.25}.conversation-entry .rich-text h1,.conversation-entry .rich-text h2,.call-entry .rich-text h1,.call-entry .rich-text h2{font-size:21px}.rich-text ul,.rich-text ol{gap:8px;margin:12px 0 16px;padding-left:22px;display:grid}.rich-text li{color:var(--ink);padding-left:3px;line-height:1.55}.rich-text li::marker{color:var(--blue)}.conversation-entry .rich-text li,.call-entry .rich-text li{font-family:Georgia,serif;font-size:18px}.rich-text blockquote{border-left:3px solid var(--blue);background:var(--blue-soft);margin:15px 0;padding:8px 14px}.rich-text blockquote p{color:#334667;font-size:.9em}.rich-text code{background:var(--canvas);font-family:var(--font-geist-mono), monospace;border-radius:3px;padding:2px 4px;font-size:.82em}.rich-text pre{background:var(--ink);color:#fff;padding:13px;overflow-x:auto}.rich-text pre code{color:inherit;background:0 0;padding:0}.rich-text table{border-collapse:collapse;width:100%;font-family:var(--font-geist-sans);margin:15px 0;font-size:11px}.rich-text th,.rich-text td{border:1px solid var(--line);text-align:left;padding:8px}.rich-text th{background:var(--canvas)}.conversation-entry.learner p{font-family:inherit;font-size:14px;line-height:1.65}.conversation-entry.note p{color:var(--muted);font-family:inherit;font-size:11px}.evidence-prompt{color:var(--muted);align-items:flex-start;gap:8px;margin-top:13px;font-size:11px;line-height:1.5;display:flex}.evidence-prompt svg{color:var(--jade);flex:none;margin-top:1px}.conversation-options{gap:7px;margin-top:16px;display:grid}.conversation-options button{border:1px solid var(--line);color:var(--ink);text-align:left;cursor:pointer;background:0 0;border-radius:4px;padding:10px 12px}.conversation-options button:hover,.conversation-options button.selected{border-color:var(--blue);background:var(--blue-soft)}.thinking-line{max-width:820px;color:var(--muted);align-items:center;gap:8px;margin:0 auto;font-size:10px;display:flex}.conversation-composer{border-top:1px solid var(--line);background:var(--paper);padding:15px clamp(22px,6vw,88px) 20px}.chat-ocr-source{border-left:3px solid var(--jade);background:var(--jade-soft);max-width:820px;color:var(--jade-dark);grid-template-columns:20px minmax(0,1fr) 24px;gap:9px;margin:0 auto 9px;padding:10px 11px;display:grid}.chat-ocr-source strong,.chat-ocr-source span{display:block}.chat-ocr-source strong{font-size:10px}.chat-ocr-source span{color:#4f655f;text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:9px;overflow:hidden}.chat-ocr-source button{color:var(--muted);cursor:pointer;background:0 0;border:0}.composer-box{border:1px solid var(--line-strong);background:#fff;border-radius:7px;max-width:820px;margin:0 auto;position:relative}.composer-box:focus-within{border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-soft)}.composer-box textarea{resize:vertical;width:100%;min-height:64px;max-height:150px;color:var(--ink);font:inherit;background:0 0;border:0;outline:0;padding:14px 54px 12px 15px;display:block}.composer-send,.call-text-fallback button{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:4px;place-items:center;width:34px;height:34px;display:grid;position:absolute;bottom:10px;right:10px}.composer-send:disabled,.call-text-fallback button:disabled{background:var(--line-strong);cursor:default}.composer-meta{max-width:820px;color:var(--muted);justify-content:space-between;align-items:center;margin:7px auto 0;font-size:9px;display:flex}.composer-meta>div{align-items:center;gap:16px;display:flex}.composer-meta button{color:var(--blue);cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;padding:0;font-size:10px;display:inline-flex}.composer-meta .ocr-composer-action{font-weight:750}.composer-meta button:disabled{color:var(--muted);cursor:default}.call-workbench{width:min(1120px,100% - 64px);margin:0 auto;padding:38px 0 55px}.call-topline{justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:25px;display:flex}.call-topline h1{max-width:720px;margin:7px 0 10px;font-family:Georgia,serif;font-size:clamp(32px,4vw,50px);font-weight:500;line-height:1.05}.call-topline>div:first-child>p:last-child{max-width:720px;color:var(--muted);margin:0;font-size:12px;line-height:1.6}.call-capability{border-left:1px solid var(--line-strong);align-items:center;gap:10px;min-width:220px;padding:13px 0 13px 18px;display:flex}.call-capability>span{background:var(--amber);border-radius:50%;width:8px;height:8px}.call-capability>span.ready{background:var(--jade)}.call-capability strong,.call-capability small{display:block}.call-capability strong{font-size:11px}.call-capability small{color:var(--muted);margin-top:3px;font-size:9px}.call-room{border:1px solid var(--line-strong);background:var(--paper);grid-template-rows:62px minmax(290px,1fr) auto auto;min-height:600px;display:grid}.call-room>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:0 22px;display:flex}.call-room>header>div{align-items:center;gap:11px;display:flex}.call-room>header strong,.call-room>header small{display:block}.call-room>header strong{font-size:11px}.call-room>header small{color:var(--muted);margin-top:3px;font-size:9px}.end-call{color:var(--red);cursor:pointer;background:0 0;border:1px solid #d8bcbc;border-radius:4px;align-items:center;gap:6px;padding:7px 9px;display:inline-flex}.call-transcript{padding:30px clamp(20px,5vw,64px);overflow-y:auto}.call-entry{grid-template-columns:36px minmax(0,1fr);gap:13px;max-width:780px;margin:0 auto 25px;display:grid}.call-entry>span{border:1px solid var(--line);width:32px;height:32px;color:var(--blue);place-items:center;font-size:9px;font-weight:750;display:grid}.call-entry.learner>span{border-color:var(--ink);background:var(--ink);color:#fff}.call-entry.note>span{width:auto;color:var(--muted);font-size:8px}.call-entry small{color:var(--muted);margin:1px 0 6px;font-size:9px;display:block}.call-entry p{margin:0;font-family:Georgia,serif;font-size:19px;line-height:1.55}.call-entry.learner p{font-family:inherit;font-size:14px}.call-entry.note p{color:var(--muted);font-family:inherit;font-size:11px}.call-entry.live{opacity:.7}.call-controls{border-top:1px solid var(--line);background:var(--canvas);justify-content:space-between;align-items:center;gap:20px;padding:17px 22px;display:flex}.call-primary-control{align-items:center;gap:13px;display:flex}.call-primary-control strong,.call-primary-control small{display:block}.call-primary-control strong{font-size:11px}.call-primary-control small{color:var(--muted);margin-top:3px;font-size:9px}.mic-control{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:50%;flex:none;place-items:center;width:48px;height:48px;display:grid}.mic-control.recording{background:var(--red);box-shadow:0 0 0 5px #f5e4e4}.mic-control:disabled{opacity:.55;cursor:default}.speed-control{color:var(--muted);align-items:center;gap:8px;font-size:10px;display:flex}.speed-control select{border:1px solid var(--line);background:var(--paper);border-radius:4px;min-height:34px;padding:5px 8px}.call-text-fallback{border-top:1px solid var(--line);padding:12px 70px 12px 22px;position:relative}.call-text-fallback textarea{resize:vertical;width:100%;min-height:50px;color:var(--ink);font:inherit;background:0 0;border:0;outline:0;display:block}.call-text-fallback button{bottom:18px;right:22px}.call-truth-row{color:var(--muted);align-items:flex-start;gap:9px;margin-top:13px;font-size:10px;line-height:1.55;display:flex}.call-truth-row svg{color:var(--jade);flex:none}.profile-facts{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;margin:10px 0 25px;display:grid}.profile-facts>div{border-bottom:1px solid var(--line);padding:16px 0}.profile-facts dt{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;font-size:9px}.profile-facts dd{text-transform:capitalize;margin:6px 0 0;font-size:12px}.security-form{gap:14px;max-width:650px;margin-bottom:30px;display:grid}.security-form label{color:var(--muted);gap:6px;font-size:10px;font-weight:700;display:grid}.security-form input{border:1px solid var(--line-strong);min-height:43px;color:var(--ink);background:#fff;border-radius:4px;padding:9px 11px}.security-form>div{flex-wrap:wrap;gap:8px;display:flex}.settings-subheading{margin:30px 0 10px;font-size:13px}.auth-session-list{border-top:1px solid var(--line)}.auth-session-list>div{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;padding:13px 0;display:flex}.auth-session-list strong,.auth-session-list small{display:block}.auth-session-list strong{font-size:11px}.auth-session-list small{max-width:520px;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:9px;overflow:hidden}.auth-session-list button{color:var(--red);cursor:pointer;background:0 0;border:0;font-size:10px}.sharing-list{border-top:1px solid var(--line)}.sharing-list>div{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:22px;padding:17px 0;display:flex}.sharing-list strong{font-size:12px}.sharing-list p{color:var(--muted);margin:4px 0 0;font-size:10px}@media (max-width:900px){.auth-page{grid-template-columns:1fr}.auth-intro{border-right:0;border-bottom:1px solid var(--line);min-height:42vh}.auth-brand{margin-bottom:50px}.auth-intro h1{font-size:clamp(42px,10vw,65px)}.auth-panel{min-height:58vh}}@media (max-width:1120px){.materials-heading{flex-direction:column}.upload-controls{justify-content:flex-start;width:100%;max-width:none}.upload-buttons{justify-content:flex-start}}@media (max-width:960px){.chat-workbench{grid-template-columns:1fr;min-height:calc(100dvh - 72px)}.chat-rail{border-right:0;border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) minmax(190px,.7fr);gap:16px 24px;padding:22px 24px;display:grid}.chat-rail>div:first-child{grid-column:1}.chat-control-label,.chat-control-label.compact{grid-column:2;margin-top:0}.chat-context,.chat-ocr-status{display:none}.chat-rail-actions{grid-area:2/1/span 2;align-self:end;margin:0;padding:0}.chat-conversation{min-height:660px}}@media (max-width:760px){.auth-intro,.auth-panel{padding:32px 22px}.auth-intro{min-height:auto}.auth-brand{margin-bottom:45px}.auth-intro h1{font-size:42px}.auth-intro>p:not(.eyebrow){font-size:15px}.backend-state{margin-bottom:30px}.materials-heading .upload-controls,.upload-controls{flex-direction:column;align-items:stretch;width:100%}.upload-buttons{grid-template-columns:1fr;display:grid}.material-toolbar>label{min-width:0}.material-list article{grid-template-columns:42px 1fr;padding:14px 0}.material-list article>div:nth-child(3){grid-column:2}.material-actions{grid-column:2;justify-content:flex-start}.ocr-result{margin-top:0}.practice-config,.create-course{grid-template-columns:1fr}.connection-create{flex-direction:column;align-items:stretch}.gap-table>div:not(.table-head){min-width:650px}.backend-map{grid-template-columns:repeat(2,minmax(115px,1fr));padding:22px 12px}.chat-workbench{grid-template-columns:1fr;min-height:calc(100dvh - 62px)}.chat-rail{border-right:0;border-bottom:1px solid var(--line);padding:22px 18px;display:block}.chat-rail h1{font-size:24px}.chat-control-label{margin-top:20px}.chat-control-label.compact{margin-top:12px}.chat-context,.chat-ocr-status{display:none}.chat-rail-actions{margin-top:18px}.chat-conversation{grid-template-rows:56px minmax(0,1fr) auto;min-height:650px}.conversation-header{padding:0 16px}.conversation-scroll{padding:25px 17px}.conversation-entry{grid-template-columns:29px minmax(0,1fr);gap:10px}.speaker-mark{width:27px;height:27px}.conversation-entry p{font-size:17px}.conversation-composer{padding:12px 14px 76px}.composer-meta span{display:none}.composer-meta>div{justify-content:space-between;width:100%}.call-workbench{width:100%;padding:24px 14px 90px}.call-topline{flex-direction:column;align-items:flex-start}.call-topline h1{font-size:34px}.call-capability{border-left:0;min-width:0;padding:5px 0}.call-room{min-height:650px}.call-transcript{padding:24px 14px}.call-entry{grid-template-columns:30px minmax(0,1fr);gap:9px}.call-entry>span{width:28px;height:28px}.call-entry p{font-size:17px}.call-controls{flex-direction:column;align-items:flex-start}.speed-control{justify-content:flex-end;width:100%}.call-text-fallback{padding-left:14px}.call-text-fallback button{right:14px}.profile-facts{grid-template-columns:1fr}.sharing-list>div{flex-direction:column;align-items:flex-start}.sharing-list button{width:100%}.auth-session-list small{max-width:220px}.connections-heading{flex-direction:column;align-items:flex-start}.connection-count{border-left:0;min-width:0;padding-left:0}.mcp-setup{padding:16px}.mcp-setup-grid{grid-template-columns:1fr}.config-copy{flex-direction:column;align-items:flex-start}.config-copy button{width:100%}.conversation-entry .rich-text li,.call-entry .rich-text li{font-size:16px}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}
