:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;font-synthesis:none;text-rendering:optimizelegibility;--page:#eee3ce;--page-deep:#e3d3b7;--paper:#fbf4e5;--paper-raised:#fff9ed;--paper-soft:#f5ead5;--ink:#2d2821;--ink-soft:#625a4e;--ink-faint:#857a69;--line:#b9aa91;--line-soft:#d8cbb5;--accent:#7b392c;--accent-soft:#e8c9b7;--accent-ink:#59261e;--success:#334a36;--success-soft:#dce2d3;--warning:#714126;--warning-soft:#ead8c3;--code-background:#f1e5cf;--code-ink:#302a23;--code-border:#b9aa91;--shadow:#45341e29;--shadow-deep:#3325133d;--surface-corner:0;--control-corner:2px;--serif:Georgia, "Times New Roman", Times, serif;--sans:ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mono:ui-monospace, "SFMono-Regular", Consolas, "Liberation Mono", monospace;font-family:Georgia,Times New Roman,Times,serif}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--page:#1a1917;--page-deep:#151412;--paper:#24221f;--paper-raised:#292722;--paper-soft:#201f1c;--ink:#e8e1d5;--ink-soft:#b8b0a4;--ink-faint:#908a81;--line:#625e57;--line-soft:#403d38;--accent:#c9a28c;--accent-soft:#493a32;--accent-ink:#ead2c4;--success:#c1c9b8;--success-soft:#343a31;--warning:#dcc2a3;--warning-soft:#42372c;--code-background:#1b1a18;--code-ink:#eee7dc;--code-border:#625e57;--shadow:#00000047;--shadow-deep:#00000073}}*{box-sizing:border-box}html{background:var(--page);max-width:100%;min-height:100%;overflow-x:clip}body{background:radial-gradient(circle at 16% 8%, color-mix(in srgb, var(--paper) 38%, transparent) 0 1px, transparent 1.5px) 0 0 / 9px 11px, radial-gradient(circle at 81% 71%, color-mix(in srgb, var(--ink) 8%, transparent) 0 .7px, transparent 1px) 0 0 / 13px 15px, linear-gradient(115deg, var(--page), var(--page-deep));max-width:100%;min-height:100dvh;color:var(--ink);margin:0;overflow-x:clip}button,textarea,input{font:inherit}button,a,textarea,input{-webkit-tap-highlight-color:transparent}button{color:inherit}button:focus-visible,a:focus-visible,textarea:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:3px}button:disabled{cursor:not-allowed}code{border:1px solid var(--line-soft);background:var(--paper-soft);font-family:var(--mono);padding:.12em .35em;font-size:.86em}.rich-text>:first-child,.prose>:first-child,.choice-content>:first-child{margin-top:0}.rich-text>:last-child,.prose>:last-child,.choice-content>:last-child{margin-bottom:0}.rich-text h2,.rich-text h3,.prose h2,.prose h3{margin:1.45em 0 .55em;font-weight:600;line-height:1.18}.rich-text h2,.prose h2{font-size:1.35em}.rich-text h3,.prose h3{font-size:1.12em}.rich-text ul,.rich-text ol,.prose ul,.prose ol{padding-left:1.55em}.rich-text li,.prose li{margin:.32em 0;line-height:1.55}.rich-text blockquote,.prose blockquote{border-left:3px solid var(--line);color:var(--ink-soft);margin:1.2em 0;padding:.15em 0 .15em 1em;font-style:italic}.rich-text pre,.prose pre{border:1px solid var(--code-border);background:var(--code-background);max-width:100%;color:var(--code-ink);tab-size:2;margin:1.2em 0;padding:1rem;font-size:.82em;line-height:1.55;overflow-x:auto}.rich-text pre code,.prose pre code{color:inherit;font-size:inherit;background:0 0;border:0;padding:0}.rich-text a,.prose a{color:inherit;text-underline-offset:.18em;text-decoration-thickness:1px}.rich-text table,.prose table{border-collapse:collapse;width:max-content;max-width:100%;font-family:var(--sans);margin:1.2em 0;font-size:.82em;display:block;overflow-x:auto}.rich-text th,.rich-text td,.prose th,.prose td{border:1px solid var(--line);text-align:left;vertical-align:top;padding:.5rem .65rem}.rich-text th,.prose th{background:var(--paper-soft)}.rich-text hr,.prose hr{border:0;border-top:1px solid var(--line);width:35%;margin:1.8em auto}.rich-text .katex-display,.prose .katex-display{max-width:100%;margin:1.2em 0;padding:.3em 0;overflow:auto hidden}.rich-text .katex,.prose .katex,.choice-content .katex{color:inherit;font-size:1.04em}.rich-text,.prose,.choice-content{overflow-wrap:anywhere;min-width:0}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.site-shell{width:min(1480px,100%);min-height:100dvh;margin:0 auto}.button,.toolbar-button,.page-button,.close-button,.underlined-button,.text-row,.recent-course,.course-card-action,.tutor-compose button{cursor:pointer}.button{border:1px solid var(--line);background:var(--paper-raised);min-height:44px;box-shadow:2px 2px 0 color-mix(in srgb, var(--line) 55%, transparent);color:var(--ink);font-family:var(--sans);letter-spacing:.025em;border-radius:2px;padding:.65rem 1rem;font-size:.82rem;font-weight:700}.button:hover:not(:disabled){border-color:var(--ink);box-shadow:3px 3px 0 color-mix(in srgb, var(--line) 70%, transparent);transform:translate(-1px,-1px)}.primary-button{border-color:var(--ink);background:var(--ink);box-shadow:2px 2px 0 var(--accent);color:var(--paper)}.small-button{min-height:38px;padding:.45rem .8rem;font-size:.76rem}.kicker,.pane-number,.page-kind,.course-card-meta,.fine-print,.folio,.message-speaker,.closed-book-note,.tutor-fine-print,.quiet-count,.status-stamp{font-family:var(--sans)}.kicker,.pane-number,.page-kind,.course-card-meta{color:var(--accent);letter-spacing:.17em;text-transform:uppercase;margin:0 0 .55rem;font-size:.69rem;font-weight:800;line-height:1.2}.book-mark,.wordmark-initial{border:1px solid var(--ink);background:var(--accent);width:52px;height:58px;box-shadow:inset 0 0 0 4px var(--accent), inset 0 0 0 5px color-mix(in srgb, var(--paper) 72%, transparent);color:var(--paper-raised);place-items:center;font-size:1.8rem;font-weight:700;line-height:1;display:inline-grid}.boot-page{text-align:center;place-content:center;justify-items:center;min-height:100dvh;padding:2rem;display:grid}.login-page{place-items:center;min-height:100dvh;padding:clamp(1rem,5vw,4rem);display:grid}.login-card{border:1px solid var(--line);background:var(--paper);width:min(100%,470px);box-shadow:0 22px 65px var(--shadow-deep);padding:clamp(1.6rem,6vw,3.4rem)}.login-card .book-mark{margin-bottom:1.7rem}.login-card h1{margin:0;font-size:clamp(2rem,8vw,3.5rem);font-weight:500;line-height:1.02}.login-card .lede{color:var(--ink-soft);margin:1rem 0 1.8rem;line-height:1.55}.login-form,.waitlist-form{gap:.55rem;display:grid}.login-form label,.waitlist-form label{color:var(--ink-soft);font-family:var(--sans);letter-spacing:.08em;text-transform:uppercase;margin-top:.65rem;font-size:.75rem;font-weight:800}.login-form input,.waitlist-form input{border:1px solid var(--line);background:var(--paper-raised);width:100%;min-height:48px;color:var(--ink);font-family:var(--sans);border-radius:0;padding:.75rem .85rem;font-size:1rem}.login-button{width:100%;margin-top:1rem}.login-error{color:var(--accent-ink);font-family:var(--sans);margin:.65rem 0 0;font-size:.86rem;line-height:1.45}.waitlist-section{border-top:1px solid var(--line-soft);margin-top:2rem;padding-top:1.7rem}.waitlist-section h2{margin:0;font-size:1.35rem;font-weight:600}.waitlist-section>p{color:var(--ink-soft);font-family:var(--sans);margin:.55rem 0 .85rem;font-size:.86rem;line-height:1.5}.waitlist-button{width:100%;margin-top:.45rem}.waitlist-status{font-family:var(--sans);margin:.55rem 0 0;font-size:.84rem;line-height:1.45}.waitlist-status.is-success{color:var(--success)}.waitlist-status.is-error{color:var(--accent-ink)}.boot-page .book-mark{margin-bottom:1.6rem}.boot-page h1{max-width:650px;margin:0;font-size:clamp(2rem,6vw,4rem);font-weight:500;line-height:1.06}.boot-page .lede{max-width:560px;color:var(--ink-soft);font-size:1.1rem;line-height:1.6}.boot-page .fine-print{color:var(--ink-faint);margin:1rem 0 1.5rem;font-size:.78rem}.ink-loader,.typing-mark{justify-content:center;align-items:center;gap:6px;display:flex}.ink-loader{margin-top:1.8rem}.ink-loader span,.typing-mark span{background:currentColor;border-radius:50%;width:5px;height:5px;animation:1.2s steps(3,end) infinite ink-pulse}.ink-loader span:nth-child(2),.typing-mark span:nth-child(2){animation-delay:.2s}.ink-loader span:nth-child(3),.typing-mark span:nth-child(3){animation-delay:.4s}@keyframes ink-pulse{0%,55%,to{opacity:.25}25%{opacity:1}}.dashboard-shell{padding:0 clamp(1rem,4vw,4.5rem)}.dashboard-masthead{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:104px;display:flex;position:relative}.wordmark{color:inherit;align-items:center;gap:.85rem;text-decoration:none;display:inline-flex}.wordmark-initial{width:43px;height:49px;font-size:1.42rem}.wordmark strong,.wordmark small{display:block}.wordmark strong{letter-spacing:.025em;font-size:1.2rem;font-weight:600}.wordmark small{color:var(--ink-soft);font-family:var(--sans);letter-spacing:.11em;text-transform:uppercase;margin-top:.15rem;font-size:.66rem}.folio{color:var(--ink-faint);letter-spacing:.09em;text-transform:uppercase;margin:0;font-size:.68rem;font-weight:650}.learner-summary{align-items:center;gap:1rem;display:flex}.catalog-search-toggle,.catalog-search-close{color:var(--ink-soft);cursor:pointer;background:0 0;border:1px solid #0000;place-items:center;padding:0;display:grid}.catalog-search-toggle{border-radius:50%;width:38px;height:38px}.catalog-search-toggle:hover,.catalog-search-toggle[aria-expanded=true]{border-color:var(--line);background:var(--paper-soft);color:var(--accent)}.catalog-search-toggle svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-width:1.8px;width:20px;height:20px}.xp-chip{border:1px solid var(--line);min-height:30px;color:var(--accent);font-family:var(--sans);letter-spacing:.055em;white-space:nowrap;border-radius:999px;align-items:center;gap:.38rem;padding:.25rem .65rem;font-size:.68rem;font-weight:800;display:inline-flex}.xp-chip>span{font-size:.78rem}.dashboard-main{padding:clamp(2.2rem,6vw,5.5rem) 0 3.5rem}.dashboard-intro{grid-template-columns:minmax(0,1fr) minmax(280px,500px);align-items:end;gap:2rem;max-width:1180px;margin:0 auto clamp(2rem,5vw,4rem);display:grid}.dashboard-intro .kicker{grid-column:1/-1;margin-bottom:-1rem}.dashboard-intro h1{letter-spacing:-.045em;margin:0;font-size:clamp(2.7rem,6vw,5.4rem);font-weight:400;line-height:.98}.dashboard-intro>p:last-child{color:var(--ink-soft);margin:0 0 .4rem;font-size:clamp(1rem,1.7vw,1.16rem);line-height:1.65}.dashboard-grid{border-top:1px solid var(--ink);border-left:1px solid var(--ink);background:var(--paper);max-width:1280px;box-shadow:0 18px 50px var(--shadow);grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(355px,auto);margin:0 auto;display:grid}.desk-pane{border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);background:linear-gradient(color-mix(in srgb, var(--paper) 94%, transparent), color-mix(in srgb, var(--paper) 94%, transparent)), repeating-linear-gradient(0deg, transparent 0 26px, color-mix(in srgb, var(--line-soft) 28%, transparent) 27px);flex-direction:column;min-width:0;min-height:0;display:flex;position:relative}.pane-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:1rem;min-height:89px;padding:1.25rem 1.45rem 1rem;display:flex}.pane-number{color:var(--ink-faint);letter-spacing:.13em;margin-bottom:.2rem}.pane-heading h2{margin:0;font-size:clamp(1.35rem,2.2vw,1.8rem);font-weight:500;line-height:1.1}.quiet-count,.status-stamp{border:1px solid var(--line);color:var(--ink-soft);letter-spacing:.08em;text-transform:uppercase;flex:none;padding:.28rem .45rem;font-size:.61rem;font-weight:750}.status-stamp{border-style:double;border-width:3px;transform:rotate(1.5deg)}.pane-body{flex-direction:column;flex:1;min-height:0;padding:1.3rem 1.45rem 1.45rem;display:flex}.pane-copy{max-width:52ch;color:var(--ink-soft);margin:0 0 1.15rem;font-size:.96rem;line-height:1.55}.compact-course-list{gap:0}.recent-course{border:0;border-bottom:1px solid var(--line-soft);text-align:left;background:0 0;grid-template-columns:minmax(0,1fr) minmax(110px,.55fr) auto;align-items:center;gap:1rem;width:100%;min-height:68px;padding:.8rem 0;display:grid}.recent-course:first-child{padding-top:0}.recent-course:hover .recent-course-main strong,.text-row:hover span:first-child{text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1px}.recent-course-main,.recent-course-progress{min-width:0}.recent-course-main strong,.recent-course-main small,.recent-course-progress small{display:block}.recent-course-main strong{text-overflow:ellipsis;white-space:nowrap;font-size:1rem;font-weight:600;overflow:hidden}.recent-course-main small,.recent-course-progress small{color:var(--ink-soft);font-family:var(--sans);text-overflow:ellipsis;white-space:nowrap;margin-top:.25rem;font-size:.68rem;overflow:hidden}.recent-course-progress small{text-align:right}.row-arrow{font-family:var(--sans);font-size:1.1rem}.progress-track{border:1px solid var(--ink-soft);background:0 0;width:100%;height:8px;display:block;position:relative;overflow:hidden}.progress-track>span{width:var(--progress);border-right:1px solid var(--ink);background:repeating-linear-gradient(-45deg, var(--ink) 0 1px, transparent 1px 4px), color-mix(in srgb, var(--ink) 15%, transparent);height:100%;display:block}.empty-state{border:1px dashed var(--line);background:color-mix(in srgb, var(--paper-soft) 72%, transparent);grid-template-columns:auto 1fr;align-items:center;gap:.9rem 1rem;margin:auto 0;padding:1.1rem;display:grid}.empty-state .button{grid-column:2;justify-self:start}.empty-state strong,.empty-state p{margin:0;display:block}.empty-state p{color:var(--ink-soft);margin-top:.25rem;font-size:.88rem;line-height:1.45}.empty-glyph{color:var(--ink-faint);font-size:2.3rem}.catalog-preview{border-top:1px solid var(--line-soft);margin-bottom:auto}.text-row{border:0;border-bottom:1px solid var(--line-soft);text-align:left;background:0 0;justify-content:space-between;align-items:center;gap:1rem;width:100%;min-height:43px;padding:.45rem 0;font-size:.93rem;display:flex}.underlined-button{min-height:40px;color:var(--accent);font-family:var(--sans);letter-spacing:.035em;background:0 0;border:0;border-bottom:1px solid;align-self:flex-start;margin-top:1rem;padding:.35rem 0;font-size:.74rem;font-weight:800}.underlined-button:hover{color:var(--ink)}.stat-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(4,1fr);margin-bottom:1.25rem;display:grid}.stat{border-right:1px solid var(--line-soft);text-align:center;padding:1.1rem .65rem 1rem}.stat:last-child{border-right:0}.stat strong,.stat span{display:block}.stat strong{margin-bottom:.25rem;font-size:1.75rem;font-weight:400}.stat span{color:var(--ink-soft);font-family:var(--sans);letter-spacing:.06em;text-transform:uppercase;font-size:.61rem;line-height:1.35}.tutor-pane .pane-heading{flex:none}.tutor-pane .tutor-chat{flex:1}.tutor-chat{flex-direction:column;min-width:0;min-height:0;display:flex}.tutor-chat-inline{padding:0 1.45rem 1rem}.tutor-messages{overscroll-behavior:contain;scrollbar-color:var(--line) transparent;min-height:0;overflow-y:auto}.tutor-chat-inline .tutor-messages{height:176px;padding:.8rem 0 .35rem}.chat-message{border-left:2px solid var(--line);background:color-mix(in srgb, var(--paper-soft) 65%, transparent);max-width:88%;margin:0 0 .8rem;padding:.65rem .8rem;position:relative}.learner-message{border-right:2px solid var(--ink-soft);background:0 0;border-left:0;margin-left:auto}.chat-error{color:var(--warning);border-style:double}.message-speaker{color:var(--ink-faint);letter-spacing:.1em;text-transform:uppercase;margin-bottom:.25rem;font-size:.58rem;font-weight:800;display:block}.chat-message .prose p,.chat-message p{margin:0 0 .45em;font-size:.88rem;line-height:1.48}.chat-message p:last-child{margin-bottom:0}.thinking-message{width:70px}.typing-mark{justify-content:flex-start;min-height:18px}.tutor-compose{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) 42px;gap:.5rem;padding-top:.7rem;display:grid}.tutor-compose textarea{resize:vertical;border:1px solid var(--line);background:var(--paper-raised);width:100%;min-height:46px;max-height:120px;color:var(--ink);font-family:var(--serif);border-radius:0;padding:.65rem .75rem;font-size:.9rem;line-height:1.35}.tutor-compose textarea::placeholder{color:var(--ink-faint)}.tutor-compose button{border:1px solid var(--ink);background:var(--ink);width:42px;min-height:42px;color:var(--paper);font-family:var(--sans);border-radius:50%;align-self:end;place-items:center;font-size:1.15rem;display:grid}.tutor-compose button:disabled,.tutor-compose textarea:disabled{opacity:.48}.tutor-fine-print{color:var(--ink-faint);margin:.45rem 0 0;font-size:.6rem;line-height:1.35}.site-footer{border-top:1px solid var(--line);min-height:86px;color:var(--ink-faint);font-family:var(--sans);letter-spacing:.12em;text-transform:uppercase;justify-content:center;align-items:center;gap:.65rem;font-size:.62rem;font-weight:700;display:flex}.inner-shell{padding:0 clamp(1rem,4vw,4.5rem)}.inner-header{border-bottom:1px solid var(--line);grid-template-columns:1fr minmax(0,2fr) 1fr;align-items:center;min-height:96px;display:grid}.inner-header .back-button{justify-self:start}.inner-header-title{text-align:center;min-width:0}.inner-header-title strong,.inner-header-title small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.inner-header-title strong{font-size:1.1rem;font-weight:600}.inner-header-title small{color:var(--ink-soft);font-family:var(--sans);margin-top:.25rem;font-size:.67rem}.small-initial{justify-self:end;width:35px;height:40px;font-size:1rem}.toolbar-button{min-height:44px;color:var(--ink);font-family:var(--sans);letter-spacing:.025em;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;gap:.55rem;padding:.5rem .8rem;font-size:.72rem;font-weight:750;text-decoration:none;display:inline-flex}.toolbar-button:hover:not(:disabled){border-color:var(--line);background:var(--paper-soft)}.library-main,.profile-main{max-width:1180px;margin:0 auto;padding:clamp(3.2rem,8vw,7rem) 0}.section-heading,.profile-title-block{max-width:760px;margin-bottom:clamp(2.2rem,5vw,4.5rem)}.section-heading h1,.profile-title-block h1{letter-spacing:-.045em;margin:0;font-size:clamp(3.2rem,8vw,6.5rem);font-weight:400;line-height:.95}.section-heading>p:last-child,.profile-title-block>p:last-child{color:var(--ink-soft);margin:1.1rem 0 0;font-size:1.03rem;line-height:1.65}.course-library{border-top:1px solid var(--ink);width:100%;min-width:0;max-width:100%}.course-card{border-bottom:1px solid var(--ink);grid-template-columns:60px minmax(0,1fr) auto;align-items:center;gap:1.5rem;width:100%;min-width:0;max-width:100%;min-height:224px;padding:2rem 0;display:grid}.course-card-index{color:var(--ink-faint);font-family:var(--sans);letter-spacing:.13em;align-self:start;padding-top:.15rem;font-size:.67rem;font-weight:700}.course-card-copy{overflow-wrap:anywhere;min-width:0;max-width:760px}.course-card-meta{color:var(--ink-faint)}.course-card h2{margin:0 0 .65rem;font-size:clamp(1.65rem,3vw,2.5rem);font-weight:500;line-height:1.1}.course-card-copy>p:not(.course-card-meta){max-width:68ch;color:var(--ink-soft);margin:0;line-height:1.55}.course-progress-summary{grid-template-columns:minmax(120px,230px) auto;align-items:center;gap:.8rem;margin-top:1.2rem;display:grid}.course-progress-summary>span:last-child{color:var(--ink-soft);font-family:var(--sans);font-size:.66rem}.course-card-action{justify-content:space-between;align-items:center;gap:1.2rem;min-width:166px;display:inline-flex}.course-card-actions{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:.65rem;min-width:0;display:flex}.course-card-actions>.button{overflow-wrap:anywhere}.reference-button{margin-top:1.5rem}.reference-panel{border:1px solid var(--line,#c9c0ad);background:#f0eadb8c;margin-top:1.5rem;padding:1.25rem}.empty-library{padding:4rem 0}.profile-main{position:relative}.profile-ledger{border-top:1px solid var(--ink);max-width:880px}.ledger-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2rem;min-height:94px;padding:1rem 0;display:grid}.ledger-row strong,.ledger-row small{display:block}.ledger-row strong{font-size:1.12rem;font-weight:600}.ledger-row small{color:var(--ink-soft);font-family:var(--sans);margin-top:.25rem;font-size:.68rem;line-height:1.45}.ledger-row>span{text-align:right;min-width:72px;font-size:2rem}.margin-note{border-top:1px solid var(--line);border-bottom:1px solid var(--line);width:220px;color:var(--ink-soft);padding:1rem;position:absolute;bottom:4rem;right:0;transform:rotate(-1deg)}.margin-note span{color:var(--accent)}.margin-note p{margin:.45rem 0 0;font-size:.82rem;font-style:italic;line-height:1.5}.debug-reviews{border:1px dashed var(--ink);background:color-mix(in srgb, var(--paper-soft) 72%, transparent);max-width:880px;margin-top:3.5rem;padding:1.4rem}.debug-section-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:1rem;padding-bottom:1rem;display:flex}.debug-section-heading h2{margin:0;font-size:1.55rem;font-weight:500}.debug-badge{border:1px solid var(--ink);font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;padding:.3rem .5rem;font-size:.62rem}.debug-review-list{display:grid}.debug-review-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:1rem;padding:1rem 0;display:grid}.debug-review-row:last-child{border-bottom:0}.debug-review-row strong,.debug-review-row small,.debug-review-state span{display:block}.debug-review-row small{color:var(--ink-soft);font-family:var(--sans);margin-top:.3rem;font-size:.68rem;line-height:1.4}.debug-review-state{min-width:120px;font-family:var(--mono);text-align:right;font-size:.62rem;line-height:1.5}.debug-empty{color:var(--ink-soft);margin:1.2rem 0 0;font-style:italic}.course-workspace{background:radial-gradient(circle at 40% 16%, color-mix(in srgb, var(--paper) 45%, transparent), transparent 48%), var(--page);min-height:100dvh}.course-toolbar{z-index:30;min-height:76px;padding:max(.5rem, env(safe-area-inset-top)) max(1rem, env(safe-area-inset-right)) .5rem max(1rem, env(safe-area-inset-left));border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--page) 95%, transparent);box-shadow:0 4px 18px color-mix(in srgb, var(--shadow) 48%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);grid-template-columns:1fr minmax(0,2fr) 1fr;align-items:center;display:grid;position:sticky;top:0}.course-toolbar .back-button{justify-self:start}.toolbar-back-icon,.toolbar-back-icon svg{display:block}.toolbar-back-icon svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;width:19px;height:19px}.course-toolbar-title{text-align:center;min-width:0}.course-toolbar-title strong,.course-toolbar-title small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.course-toolbar-title strong{font-size:1rem;font-weight:600}.course-toolbar-title small{color:var(--ink-faint);font-family:var(--sans);letter-spacing:.07em;text-transform:uppercase;margin-top:.25rem;font-size:.61rem;font-weight:700}.course-toolbar .toolbar-actions{justify-self:end;gap:.25rem;display:flex}.toolbar-xp{align-self:center;margin-right:.25rem}.course-toolbar .tutor-button,.course-toolbar .report-button,.course-toolbar .graph-button,.course-toolbar .debug-button{justify-self:end}.tutor-button>span:first-child,.report-button>span:first-child,.graph-button>span:first-child,.debug-button>span:first-child{width:27px;height:27px;font-family:var(--serif);border:1px solid;border-radius:50%;place-items:center;font-size:1rem;display:grid}.report-button>span:first-child{font-family:var(--sans);border-radius:3px;font-size:.82rem;font-weight:900}.graph-button>span:first-child{line-height:0}.graph-button svg{width:17px;height:17px;fill:var(--paper-raised);stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7px}.debug-button>span:first-child{width:31px;font-family:var(--mono);border-radius:3px;font-size:.58rem;font-weight:800}.tutor-button:disabled,.report-button:disabled,.debug-button:disabled{color:var(--ink-faint);opacity:.42}.course-stage{place-items:start center;min-height:calc(100dvh - 76px);padding:clamp(1rem,3vw,2.5rem) clamp(.75rem,3vw,2.5rem) clamp(2rem,5vw,5rem);display:grid}.lesson-paper{--reading-measure:660px;--wide-measure:880px;border:1px solid var(--line);background:linear-gradient(90deg, transparent 0 63px, color-mix(in srgb, var(--accent) 17%, transparent) 64px, transparent 65px), repeating-linear-gradient(0deg, transparent 0 31px, color-mix(in srgb, var(--line-soft) 19%, transparent) 32px), var(--paper);width:min(900px,100%);min-height:min(760px,100dvh - 125px);box-shadow:0 2px 1px color-mix(in srgb, var(--paper-raised) 60%, transparent) inset, 0 20px 46px var(--shadow-deep), 9px 9px 0 -4px var(--page-deep), 9px 9px 0 -3px var(--line);flex-direction:column;display:flex;position:relative}.page-progress{background:0 0;flex-shrink:0;height:2px;margin:-1px clamp(1.1rem,6vw,4.8rem) 0}.page-progress span{width:var(--page-progress);background:var(--ink);height:100%;display:block}.lesson-content{flex:1;grid-template-columns:minmax(0,1fr);padding:clamp(2.6rem,7vw,5.6rem) clamp(1.4rem,10vw,7.5rem) clamp(2rem,5vw,4rem);display:grid}.reading-page{width:100%;min-width:0;max-width:var(--reading-measure);margin:0 auto}.lesson-bet-paper .page-progress span{background:var(--accent)}.lesson-bet-status{width:100%;max-width:var(--reading-measure);border:1px solid color-mix(in srgb, var(--accent) 48%, var(--line));background:color-mix(in srgb, var(--accent-soft) 50%, var(--paper-raised));color:var(--accent-ink);font-family:var(--sans);align-items:flex-start;gap:.85rem;margin-bottom:1.5rem;margin-left:auto;margin-right:auto;padding:.9rem 1rem;display:flex}.lesson-bet-status>span{font-size:1.25rem;line-height:1}.lesson-bet-status strong,.lesson-bet-status p{margin:0}.lesson-bet-status p{color:var(--ink-soft);margin-top:.2rem;font-size:.78rem;line-height:1.45}.lesson-bet-return{border-color:var(--line);background:var(--warning-soft);color:var(--warning)}@media (width>=961px){.lesson-paper:has(.reading-page pre,.reading-page table,.reading-page .katex-display){width:min(1120px,100%)}.lesson-content{container-type:inline-size}.reading-page>:is(.rich-text,.prose)>:is(pre,table,.katex-display){width:max-content;min-width:100%;max-width:min(var(--wide-measure), 100cqi);position:relative;left:50%;transform:translate(-50%)}.example-page>.worked-example:has(pre,table,.katex-display){width:min(var(--wide-measure), 100cqi);max-width:none;position:relative;left:50%;transform:translate(-50%)}}.page-kind{align-items:center;gap:.45rem;margin-bottom:1rem;display:flex}.page-kind span{font-family:var(--serif);font-size:.95rem}.reading-page h1{letter-spacing:-.035em;margin:0;font-size:clamp(2.25rem,5vw,4.15rem);font-weight:400;line-height:1.02}.chapter-deck{color:var(--ink-soft);margin:1rem 0 0;font-size:clamp(1rem,1.8vw,1.16rem);font-style:italic;line-height:1.55}.chapter-deck p{margin:0}.ornament{color:var(--ink-faint);letter-spacing:.2em;margin:1.6rem 0;font-size:1.15rem}.prose p{margin:0 0 1em;font-size:clamp(1.08rem,2vw,1.28rem);line-height:1.72}.prose p:last-child{margin-bottom:0}.worked-example{border:1px solid var(--ink);background:color-mix(in srgb, var(--paper-raised) 72%, transparent);box-shadow:5px 5px 0 color-mix(in srgb, var(--line-soft) 70%, transparent);border-left-width:4px;margin-top:1.7rem;padding:clamp(1.3rem,4vw,2.3rem);position:relative}.example-number{border:1px solid var(--line);background:var(--paper);color:var(--ink-faint);font-family:var(--mono);padding:.25rem .5rem;font-size:.63rem;position:absolute;top:-.75rem;right:1rem}.page-media{gap:1.15rem;margin:1.7rem 0;display:grid}.media-figure{border:1px solid var(--line);background:var(--paper-raised);margin:0;padding:.55rem;position:relative}.media-figure>.media-image-trigger,.media-figure>video,.media-figure>iframe{background:var(--paper-soft);object-fit:contain;border:0;width:100%;max-height:min(58dvh,620px);display:block}.media-image-trigger{background:var(--paper-soft);color:inherit;cursor:zoom-in;border:0;border-radius:0;margin:0;padding:0;position:relative;overflow:hidden}.media-image-trigger>img{object-fit:contain;width:100%;max-height:min(58dvh,620px);display:block}.media-image-trigger:hover .media-expand-hint,.media-image-trigger:focus-visible .media-expand-hint{opacity:1;transform:translateY(0)}.media-expand-hint{border:1px solid color-mix(in srgb, var(--paper) 65%, transparent);background:color-mix(in srgb, var(--ink) 84%, transparent);color:var(--paper-raised);font-family:var(--sans);letter-spacing:.07em;opacity:.78;text-transform:uppercase;padding:.28rem .45rem;font-size:.58rem;font-weight:750;transition:opacity .12s,transform .12s;position:absolute;bottom:.55rem;right:.55rem;transform:translateY(2px)}.media-figure>iframe{border:1px solid var(--line-soft);min-height:360px}.media-role{z-index:1;border:1px solid var(--line);background:var(--paper);color:var(--ink-faint);font-family:var(--mono);letter-spacing:.05em;text-transform:uppercase;padding:.2rem .45rem;font-size:.58rem;position:absolute;top:-.7rem;left:.75rem}.media-figure figcaption{color:var(--ink-soft);padding:.65rem .35rem .15rem;font-size:.82rem;line-height:1.45}.media-figure figcaption p{margin:0}.audio-media{border:1px solid var(--line-soft);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.75rem;min-height:74px;padding:.8rem;display:grid}.audio-media>span{border:1px solid var(--ink);border-radius:50%;place-items:center;width:38px;height:38px;display:grid}.audio-media audio{width:100%}.media-transcript,.media-fallback{border-top:1px dotted var(--line);color:var(--ink-soft);margin:.6rem .35rem .2rem;font-size:.82rem}.media-fallback summary{cursor:pointer;font-family:var(--sans);letter-spacing:.06em;text-transform:uppercase;padding:.55rem 0;font-size:.66rem;font-weight:750}.media-fallback .media-image-trigger{width:100%}.media-fallback .media-image-trigger>img{max-height:520px}.image-viewer{z-index:100;color:#fff;cursor:default;overscroll-behavior:contain;background:#0a0a09f5;position:fixed;inset:0;overflow:hidden}:is(html:has(.image-viewer),body:has(.image-viewer)){overflow:hidden}.image-viewer:focus{outline:none}.image-viewer-viewport{cursor:grab;touch-action:none;scrollbar-color:#fff6 transparent;position:absolute;inset:0;overflow:auto}.image-viewer-viewport.is-dragging{cursor:grabbing}.image-viewer-viewport.is-pinching{cursor:zoom-in}.image-viewer-image{-webkit-user-select:none;user-select:none;pointer-events:none;-webkit-user-drag:none;max-width:none;max-height:none;display:block}.image-viewer-close{z-index:2;top:max(.75rem, env(safe-area-inset-top));right:max(.75rem, env(safe-area-inset-right));color:#fff;cursor:pointer;width:46px;height:46px;font-family:var(--sans);background:#0000008f;border:1px solid #ffffffb8;border-radius:50%;place-items:center;padding:0;font-size:1.7rem;font-weight:300;line-height:1;display:grid;position:fixed}.image-viewer-close:focus-visible{outline-color:#fff}.image-viewer-controls{z-index:2;right:max(.75rem, env(safe-area-inset-right));bottom:max(.75rem, env(safe-area-inset-bottom));background:#000000b3;border:1px solid #ffffff9e;border-radius:999px;display:flex;position:fixed;overflow:hidden;box-shadow:0 8px 24px #00000047}.image-viewer-controls button{color:#fff;cursor:pointer;min-width:44px;min-height:42px;font-family:var(--sans);background:0 0;border:0;border-right:1px solid #ffffff4d;padding:0 .72rem;font-size:1rem;font-weight:750}.image-viewer-controls button:last-child{border-right:0}.image-viewer-controls button:hover:not(:disabled){background:#ffffff29}.image-viewer-controls button:disabled{opacity:.36}.image-viewer-controls button:focus-visible{outline-offset:-3px;outline-color:#fff}.image-viewer-instructions{z-index:2;right:auto;bottom:max(4.25rem, calc(3.5rem + env(safe-area-inset-bottom)));color:#ffffffdb;width:max-content;max-width:calc(100vw - 2rem);font-family:var(--sans);letter-spacing:.035em;text-align:center;text-shadow:0 1px 4px #000;pointer-events:none;background:#0000009e;border:1px solid #ffffff6b;border-radius:999px;margin:0;padding:.38rem .62rem;font-size:.72rem;font-weight:700;position:fixed;left:50%;transform:translate(-50%)}.media-transcript summary{cursor:pointer;font-family:var(--sans);letter-spacing:.06em;text-transform:uppercase;padding:.55rem 0 .25rem;font-size:.66rem;font-weight:750}.media-transcript p{margin:.4rem 0}.media-missing{border:1px dashed var(--warning);color:var(--warning);font-family:var(--mono);margin:0;padding:.7rem;font-size:.72rem}.problem-heading{justify-content:space-between;align-items:center;gap:1rem;display:flex}.closed-book-note{color:var(--ink-faint);letter-spacing:.07em;text-transform:uppercase;font-size:.59rem;font-weight:750}.supported-attempt-note{border-left:3px solid var(--accent);background:color-mix(in srgb, var(--accent-soft) 48%, transparent);color:var(--ink-soft);font-family:var(--sans);margin:-.65rem 0 1.2rem;padding:.7rem .85rem;font-size:.72rem;line-height:1.45}.supported-attempt-note strong{color:var(--ink)}.problem-prompt{border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);margin:clamp(1.35rem,3vw,2.1rem) 0;padding:1.15rem 0;font-size:clamp(1.13rem,2.3vw,1.42rem);font-weight:600;line-height:1.55}.problem-prompt p{margin:0 0 .7em}.problem-prompt p:last-child{margin-bottom:0}.answer-area{margin-top:1.2rem}.debug-problem-skip{border:1px dashed var(--warning);background:color-mix(in srgb, var(--warning-soft) 58%, transparent);color:var(--warning);font-family:var(--sans);justify-content:space-between;align-items:center;gap:.8rem;margin-top:.9rem;padding:.65rem .75rem;font-size:.68rem;line-height:1.4;display:flex}.debug-problem-skip .button{flex:none}.choice-list{border:0;gap:.7rem;margin:0;padding:0;display:grid}.choice{border:1px solid var(--line);background:color-mix(in srgb, var(--paper-raised) 58%, transparent);cursor:pointer;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:.75rem;min-height:58px;padding:.65rem .8rem;font-size:.96rem;line-height:1.4;display:grid}.choice:hover,.choice.is-selected{border-color:var(--ink)}.choice.is-selected{background:var(--paper-raised);border-left-width:4px;padding-left:calc(.8rem - 3px)}.choice input{opacity:0;pointer-events:none;position:absolute}.choice-letter{border:1px solid var(--ink-soft);width:30px;height:30px;font-family:var(--sans);border-radius:50%;place-items:center;font-size:.7rem;font-weight:800;display:grid}.choice.is-selected .choice-letter{background:var(--ink);color:var(--paper)}.choice-list:disabled .choice{cursor:default;opacity:.74}.written-answer>span{color:var(--ink-soft);font-family:var(--sans);letter-spacing:.09em;text-transform:uppercase;margin-bottom:.45rem;font-size:.65rem;font-weight:750;display:block}.written-answer textarea{resize:vertical;border:1px solid var(--line);background:repeating-linear-gradient(0deg, transparent 0 27px, color-mix(in srgb, var(--line) 25%, transparent) 28px), var(--paper-raised);width:100%;min-height:148px;color:var(--ink);border-radius:0;padding:.9rem 1rem;font-size:1rem;line-height:1.75;display:block}.written-answer textarea:focus{border-color:var(--ink)}.written-answer textarea:disabled{color:var(--ink-soft);opacity:.78}.answer-guidance{color:var(--ink-faint);font-family:var(--sans);margin:.75rem 0 0;font-size:.66rem;line-height:1.45}.problem-support-entry{color:var(--ink-faint);font-family:var(--sans);align-items:baseline;gap:.7rem;margin-top:.85rem;font-size:.68rem;line-height:1.45;display:flex}.problem-support-entry .underlined-button{color:var(--accent-ink);flex:none}.problem-support-entry [role=alert]{color:var(--warning)}.problem-support{border:1px solid color-mix(in srgb, var(--accent) 48%, var(--line));background:color-mix(in srgb, var(--accent-soft) 45%, var(--paper-raised));border-left-width:4px;margin-top:1rem;padding:clamp(1rem,3vw,1.35rem)}.problem-support .kicker{margin:0 0 .35rem}.problem-support h2{font-family:var(--serif);margin:0;font-size:clamp(1.25rem,3vw,1.55rem);font-weight:560;line-height:1.2}.problem-support>p:not(.kicker,.problem-support-note,.problem-support-error),.problem-support ol{color:var(--ink-soft);margin:.8rem 0 0;font-size:.9rem;line-height:1.55}.problem-support ol{gap:.35rem;padding-left:1.25rem;display:grid}.problem-support-actions{flex-wrap:wrap;gap:.65rem;margin-top:1rem;display:flex}.problem-support-note{color:var(--ink-faint);font-family:var(--sans);margin:.8rem 0 0;font-size:.65rem;line-height:1.45}.problem-scaffold-content{border-left:3px solid var(--accent);background:color-mix(in srgb, var(--accent-soft) 30%, var(--paper));padding:.9rem 1rem}.problem-scaffold-content>.kicker{margin-bottom:.55rem}.problem-scaffold-content .prose>:first-child{margin-top:0}.problem-scaffold-content .prose>:last-child{margin-bottom:0}.problem-support-error{color:var(--warning);font-family:var(--sans);margin:.75rem 0 0;font-size:.72rem;line-height:1.45}.evaluation{background:var(--paper-soft);border:1px solid;border-left-width:4px;margin-top:1rem;padding:.85rem 1rem}.evaluation strong{align-items:center;gap:.5rem;font-size:.92rem;display:flex}.evaluation p{margin:.45rem 0 0;font-size:.86rem;line-height:1.5}.evaluation-copy{margin-top:.45rem;font-size:.86rem;line-height:1.5}.evaluation-copy p,.evaluation .hint p{margin:0}.success-evaluation{background:var(--success-soft);color:var(--success)}.retry-evaluation{background:var(--warning-soft);color:var(--warning)}.evaluation .hint{border-top:1px dotted;margin-top:.55rem;padding-top:.45rem;font-size:.86rem;line-height:1.5}.lesson-navigation{border-top:1px solid var(--line);flex-shrink:0;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;min-height:86px;margin:0 clamp(1.1rem,6vw,4.8rem);display:grid}.lesson-navigation-center{justify-content:center;align-items:center;gap:.7rem;display:flex}.lesson-bet-control{display:inline-flex;position:relative}.lesson-bet-nav-button{border:1px solid var(--line);background:var(--paper-raised);min-height:30px;color:var(--accent);cursor:pointer;font:800 .64rem/1 var(--sans);letter-spacing:.035em;white-space:nowrap;border-radius:999px;align-items:center;gap:.25rem;padding:.3rem .55rem;display:inline-flex}.lesson-bet-nav-button:hover:not(:disabled),.lesson-bet-nav-button.is-active{border-color:var(--accent);background:var(--accent);color:var(--paper-raised)}.lesson-bet-nav-button.is-active{cursor:default}.lesson-bet-tip{z-index:12;border:1px solid var(--accent);background:var(--paper-raised);width:min(240px,100vw - 2rem);box-shadow:0 12px 32px var(--shadow-deep);color:var(--ink);font-family:var(--sans);text-align:left;padding:.85rem .9rem;position:absolute;bottom:calc(100% + .7rem);left:50%;transform:translate(-50%)}.lesson-bet-tip:after{border-right:1px solid var(--accent);border-bottom:1px solid var(--accent);background:var(--paper-raised);content:"";width:.65rem;height:.65rem;position:absolute;top:100%;left:50%;transform:translate(-50%,-50%)rotate(45deg)}.lesson-bet-tip strong,.lesson-bet-tip p{margin:0;display:block}.lesson-bet-tip p{color:var(--ink-soft);margin-top:.25rem;font-size:.73rem;line-height:1.45}.lesson-bet-tip label{z-index:1;color:var(--ink-soft);cursor:pointer;align-items:center;gap:.45rem;margin-top:.65rem;font-size:.68rem;font-weight:700;display:flex;position:relative}.page-button{min-height:46px;font-family:var(--sans);letter-spacing:.025em;background:0 0;border:1px solid #0000;align-items:center;gap:.65rem;padding:.5rem .75rem;font-size:.73rem;font-weight:800;display:inline-flex}.page-button:hover:not(:disabled){border-color:var(--line);background:var(--paper-soft)}.page-button:disabled{color:var(--ink-faint);opacity:.38}.previous-button{justify-self:start}.next-button{border-color:var(--ink);background:var(--ink);color:var(--paper);justify-self:end}.next-button:hover:not(:disabled){background:var(--accent-ink);color:var(--paper-raised)}.next-button:disabled{border-color:var(--line);background:var(--line-soft);color:var(--ink-faint);opacity:.68}.next-label{text-align:right;display:grid}.next-label small{letter-spacing:.04em;opacity:.74;margin-top:.05rem;font-size:.52rem;font-weight:600}.page-number{color:var(--ink-faint);font-family:var(--mono);align-items:center;gap:.45rem;font-size:.61rem;display:flex}.page-number i{background:currentColor;width:22px;height:1px;display:block}.course-message-card{border:1px solid var(--line);background:var(--paper);width:min(720px,100%);box-shadow:8px 8px 0 -3px var(--page-deep), 8px 8px 0 -2px var(--line), 0 18px 50px var(--shadow);text-align:center;margin-top:clamp(2rem,8vw,7rem);padding:clamp(2rem,7vw,5rem)}.course-message-card h1{letter-spacing:-.035em;margin:0;font-size:clamp(2.1rem,6vw,4.3rem);font-weight:400;line-height:1.02}.course-message-card>p:not(.kicker){max-width:54ch;color:var(--ink-soft);margin:1rem auto 0;line-height:1.6}.course-message-card .book-mark{margin-bottom:1.4rem}.course-message-card .progress-track{width:min(360px,100%);margin:1.7rem auto 0}.message-actions{flex-wrap:wrap;justify-content:center;gap:.8rem;margin-top:2rem;display:flex}.completion-mark{border:1px solid var(--ink);width:58px;height:58px;font-family:var(--sans);border-radius:50%;place-items:center;margin:0 auto 1.4rem;font-size:1.5rem;display:grid}.course-message-card .completion-xp{color:var(--accent);font-family:var(--sans);letter-spacing:.035em;justify-content:center;align-items:center;gap:.35rem;margin-top:1rem;font-size:.76rem;display:flex}.completion-xp strong{font-size:.9rem}.error-card .kicker{color:var(--warning)}.tutor-backdrop{z-index:50;background:color-mix(in srgb, var(--page-deep) 62%, transparent);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);justify-content:flex-end;display:flex;position:fixed;inset:0}.tutor-overlay{width:min(450px,94vw);height:100%;padding:max(1.2rem, env(safe-area-inset-top)) max(1.2rem, env(safe-area-inset-right)) max(1rem, env(safe-area-inset-bottom)) 1.2rem;border-left:1px solid var(--ink);background:linear-gradient(color-mix(in srgb, var(--paper) 96%, transparent), color-mix(in srgb, var(--paper) 96%, transparent)), repeating-linear-gradient(0deg, transparent 0 30px, color-mix(in srgb, var(--line-soft) 30%, transparent) 31px);box-shadow:-14px 0 44px var(--shadow-deep);flex-direction:column;display:flex}.tutor-overlay-heading{border-bottom:1px solid var(--ink);flex-direction:column;align-items:flex-start;gap:.8rem;padding-bottom:1rem;display:flex}.tutor-overlay-heading h2{margin:0;font-size:1.8rem;font-weight:500}.contextual-tutor-back{min-height:36px;color:var(--accent-ink);font:750 .72rem/1 var(--sans);cursor:pointer;background:0 0;border:0;align-items:center;gap:.35rem;padding:0;display:inline-flex}.contextual-tutor-back svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:20px;height:20px}.tutor-context-line{color:var(--ink-faint);font:.75rem/1.45 var(--sans);margin:.4rem 0 0}.report-backdrop{z-index:60;background:color-mix(in srgb, var(--page-deep) 68%, transparent);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.report-dialog{border:1px solid var(--ink);background:var(--paper);width:min(560px,100%);max-height:calc(100dvh - 2rem);box-shadow:8px 8px 0 -3px var(--page-deep), 8px 8px 0 -2px var(--ink), 0 22px 60px var(--shadow-deep);padding:clamp(1.25rem,4vw,2rem);overflow-y:auto}.report-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:1rem;padding-bottom:1rem;display:flex}.report-heading h2{margin:0;font-size:clamp(1.7rem,6vw,2.4rem);font-weight:500}.report-form{padding-top:1.3rem}.report-form label{color:var(--ink-soft);margin-bottom:.7rem;font-size:.91rem;line-height:1.5;display:block}.report-form textarea{resize:vertical;border:1px solid var(--line);background:var(--paper-raised);width:100%;min-height:150px;color:var(--ink);border-radius:0;padding:.85rem .9rem;line-height:1.55;display:block}.report-form textarea:focus{border-color:var(--ink)}.report-actions{justify-content:flex-end;gap:.7rem;margin-top:1rem;display:flex}.report-error{color:var(--warning);font-family:var(--sans);margin:.7rem 0 0;font-size:.78rem}.report-confirmation{text-align:center;padding:2rem 0 .5rem}.report-confirmation>span{border:1px solid var(--ink);border-radius:50%;place-items:center;width:48px;height:48px;margin:0 auto 1rem;display:grid}.report-confirmation h3{margin:0;font-size:1.5rem;font-weight:500}.report-confirmation p{max-width:42ch;color:var(--ink-soft);margin:.65rem auto 1.4rem;line-height:1.5}.debug-backdrop{z-index:70;background:color-mix(in srgb, var(--page-deep) 68%, transparent);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);justify-content:flex-end;display:flex;position:fixed;inset:0}.debug-dialog{width:min(760px,96vw);height:100%;min-height:0;padding:max(1.2rem, env(safe-area-inset-top)) max(1.2rem, env(safe-area-inset-right)) max(1rem, env(safe-area-inset-bottom)) 1.2rem;border-left:1px solid var(--ink);background:var(--paper);box-shadow:-14px 0 44px var(--shadow-deep);flex-direction:column;display:flex}.debug-heading{border-bottom:1px solid var(--ink);justify-content:space-between;align-items:flex-start;gap:1rem;padding-bottom:1rem;display:flex}.debug-heading h2{margin:0;font-size:1.8rem;font-weight:500}.debug-loading{color:var(--ink-soft);font-family:var(--mono);font-size:.78rem}.debug-data-actions{color:var(--ink-soft);font-family:var(--sans);justify-content:space-between;align-items:center;gap:1rem;padding:.8rem 0;font-size:.7rem;display:flex}.debug-json{border:1px solid var(--line);background:var(--ink);min-height:0;color:var(--paper-raised);font-family:var(--mono);white-space:pre-wrap;word-break:break-word;flex:1;margin:0;padding:1rem;font-size:.72rem;line-height:1.55;overflow:auto}.debug-json code{color:inherit;font-size:inherit;background:0 0;border:0;padding:0}.close-button{border:1px solid var(--line);width:42px;height:42px;font-family:var(--sans);background:0 0;border-radius:50%;place-items:center;font-size:1.45rem;font-weight:300;display:grid}.close-button:hover{border-color:var(--ink);background:var(--paper-soft)}.tutor-chat-overlay{flex:1;min-height:0}.tutor-chat-overlay .tutor-messages{flex:1;padding:1.2rem 0 .5rem}@media (width<=960px){.dashboard-grid{grid-template-columns:1fr;grid-auto-rows:auto}.desk-pane{min-height:330px}.tutor-pane{min-height:420px}.tutor-chat-inline .tutor-messages{height:210px}.margin-note{width:min(100%,520px);margin-top:3rem;position:static}.profile-ledger{max-width:none}}@media (width<=720px){.course-workspace{height:100dvh;min-height:0;display:block;position:relative;overflow:hidden}.dashboard-shell,.inner-shell{padding:0 .8rem}.dashboard-masthead{min-height:84px}.wordmark small,.folio{display:none}.learner-summary{gap:0}.dashboard-main{padding-top:2.6rem}.dashboard-intro{margin-bottom:2.2rem;display:block}.dashboard-intro .kicker{margin-bottom:.7rem}.dashboard-intro h1{font-size:clamp(2.65rem,14vw,4.4rem)}.dashboard-intro>p:last-child{margin-top:1rem}.stat-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.stat:nth-child(2){border-right:0}.stat:nth-child(-n+2){border-bottom:1px solid var(--line-soft)}.pane-heading,.pane-body{padding-left:1rem;padding-right:1rem}.recent-course{grid-template-columns:minmax(0,1fr) 92px auto;gap:.7rem}.stat{padding-left:.3rem;padding-right:.3rem}.tutor-chat-inline{padding-left:1rem;padding-right:1rem}.inner-header{grid-template-columns:auto minmax(0,1fr) auto;min-height:76px}.inner-header-title{padding:0 .5rem}.inner-header-title small{display:none}.library-main,.profile-main{padding-top:3.5rem}.section-heading h1,.profile-title-block h1{font-size:clamp(3rem,16vw,5rem)}.course-card{grid-template-columns:32px minmax(0,1fr);grid-template-areas:"index copy"".actions";gap:.8rem;padding:1.6rem 0}.course-card-index{grid-area:index}.course-card-copy{grid-area:copy}.course-card-actions{grid-area:actions;justify-content:flex-start;justify-self:stretch;width:100%;max-width:100%;margin-top:.4rem}.course-card-actions>.button{min-width:0;max-width:100%}.course-card-meta{overflow-wrap:anywhere;letter-spacing:.11em;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.small-button,.underlined-button,.close-button,.tutor-compose button{min-height:44px}.close-button,.tutor-compose button{width:44px}.tutor-compose{grid-template-columns:minmax(0,1fr) 44px}.course-progress-summary{grid-template-columns:1fr;gap:.45rem}.ledger-row{gap:1rem}.debug-review-row{grid-template-columns:minmax(0,1fr) auto}.debug-review-state{text-align:left;grid-column:1}.debug-review-row .button{grid-area:1/2/span 2}.course-toolbar{display:contents}.course-toolbar-title,.toolbar-action-label,.toolbar-xp-mark,.toolbar-xp-label{display:none}.course-toolbar .back-button,.course-toolbar .toolbar-actions{z-index:55;top:calc(10px + env(safe-area-inset-top));position:fixed}.course-toolbar .back-button{left:calc(10px + env(safe-area-inset-left));border:1px solid color-mix(in srgb, var(--ink) 34%, var(--line));background:color-mix(in srgb, var(--paper-raised) 91%, transparent);width:44px;min-width:44px;height:44px;min-height:44px;box-shadow:0 8px 24px var(--shadow);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:50%;place-items:center;padding:0;transition:transform .18s,border-color .18s,background .18s;display:grid}.course-toolbar .back-button:hover:not(:disabled){border-color:var(--accent);background:color-mix(in srgb, var(--paper-raised) 97%, transparent);transform:translateY(-1px)}.course-toolbar .back-button>span:last-child{display:none}.course-toolbar .toolbar-actions{right:calc(10px + env(safe-area-inset-right));gap:7px;display:flex}.course-toolbar .toolbar-actions .toolbar-button,.course-toolbar .toolbar-xp{border:1px solid color-mix(in srgb, var(--ink) 30%, var(--line));background:color-mix(in srgb, var(--paper-raised) 91%, transparent);width:42px;min-width:42px;height:42px;min-height:42px;box-shadow:0 8px 24px var(--shadow);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:50%;place-items:center;margin:0;padding:0;transition:transform .18s,border-color .18s,background .18s;display:grid}.course-toolbar .toolbar-actions .toolbar-button:hover:not(:disabled){border-color:var(--accent);background:color-mix(in srgb, var(--paper-raised) 97%, transparent);transform:translateY(-1px)}.course-toolbar .toolbar-xp{color:var(--accent-ink);font:800 .62rem/1 var(--sans);letter-spacing:-.02em}.course-toolbar .toolbar-xp-value{font-size:inherit}.course-toolbar .tutor-button>span:first-child,.course-toolbar .report-button>span:first-child,.course-toolbar .graph-button>span:first-child,.course-toolbar .debug-button>span:first-child{border:0;border-radius:0;width:auto;height:auto}.course-toolbar .graph-button>span:first-child svg{width:19px;height:19px}.course-stage{height:100dvh;min-height:0;padding:0;overflow-y:auto}.lesson-paper{background:repeating-linear-gradient(0deg, transparent 0 31px, color-mix(in srgb, var(--line-soft) 18%, transparent) 32px), var(--paper);height:auto;min-height:100%;box-shadow:none;border:0;overflow:visible}.page-progress,.lesson-navigation{margin-left:1rem;margin-right:1rem}.lesson-content{min-height:auto;padding:calc(5rem + env(safe-area-inset-top)) 1.2rem 2rem;overflow:visible}.reading-page h1{font-size:clamp(2.25rem,11.5vw,3.5rem)}.prose p{font-size:1.08rem;line-height:1.65}.worked-example{box-shadow:4px 4px 0 color-mix(in srgb, var(--line-soft) 70%, transparent);padding:1.25rem}.media-figure{padding:.35rem}.media-figure>iframe{min-height:280px}.problem-heading{display:block}.closed-book-note{margin:-.45rem 0 .8rem;display:block}.choice{min-height:62px}.debug-problem-skip{flex-direction:column;align-items:stretch}.problem-support-entry{flex-direction:column;align-items:flex-start;gap:.25rem}.problem-support-actions{flex-direction:column;align-items:stretch}.lesson-navigation{z-index:5;min-height:calc(76px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:color-mix(in srgb, var(--paper) 96%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;bottom:auto}.lesson-navigation-center{flex-direction:column;gap:.2rem}.lesson-bet-nav-button{min-height:27px;padding:.25rem .45rem;font-size:.59rem}.debug-dialog{border-left:0;width:100%}.page-button{min-height:48px;padding:.45rem .6rem}.page-number{gap:.3rem}.page-number i{width:12px}.course-message-card{min-height:calc(100dvh - 66px);box-shadow:none;border:0;margin-top:0}.tutor-backdrop{align-items:flex-end}.tutor-overlay{border-top:1px solid var(--ink);width:100%;height:min(78dvh,720px);box-shadow:0 -14px 44px var(--shadow-deep);border-left:0;padding-top:1rem}}@media (width<=430px){.recent-course{grid-template-columns:minmax(0,1fr) auto}.recent-course-progress{grid-column:1;width:100%}.recent-course .row-arrow{grid-area:1/2/3}.stat strong{font-size:1.45rem}.stat span{font-size:.56rem}.course-card{grid-template-columns:24px minmax(0,1fr)}.course-card-actions .button{width:100%}.small-initial{display:none}.inner-header{grid-template-columns:44px minmax(0,1fr) 44px}.inner-header .back-button span:last-child{display:none}.lesson-content{padding-left:1rem;padding-right:1rem}.lesson-navigation{gap:.35rem}.page-button{gap:.35rem;font-size:.68rem}.next-label small{display:none}}.masthead-link{border:0;border-bottom:1px solid var(--line);color:var(--ink-soft);font:700 .72rem/1 var(--sans);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;background:0 0}.catalog-search{z-index:40;border:1px solid var(--line);background:var(--paper-raised);width:min(620px,100vw - 2rem);max-height:min(72vh,680px);box-shadow:0 18px 44px var(--shadow-deep);margin:0;padding:1rem;position:absolute;top:calc(100% - 1px);right:0;overflow:hidden}.catalog-search-heading{font-family:var(--sans);letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:1rem;font-size:.78rem;display:flex}.catalog-search-close{width:34px;height:34px;font-size:1.45rem;font-weight:300;line-height:1}.catalog-search-close:hover{border-color:var(--line);background:var(--paper-soft)}.catalog-search>div:first-child>p:last-child,.catalog-search-result>div>p{color:var(--ink-soft);line-height:1.6}.catalog-search form{grid-template-columns:minmax(0,1fr) auto;gap:.65rem;margin-top:.7rem;display:grid}.catalog-search input{border:1px solid var(--line);background:var(--paper);min-width:0;color:var(--ink);font:inherit;padding:.8rem 1rem}.catalog-search-results{border-top:1px solid var(--line-soft);overscroll-behavior:contain;gap:.7rem;max-height:min(48vh,450px);margin-top:1.2rem;padding-top:1rem;display:grid;overflow-y:auto}.catalog-search-summary,.catalog-search-result{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.catalog-search-summary span,.catalog-search-subtitle,.catalog-search-result details{color:var(--ink-faint);font-size:.76rem}.catalog-search-result{border:1px solid var(--line-soft);background:var(--paper);padding:.85rem}.catalog-search-result>div{max-width:72ch}.catalog-search-result h3{font-family:var(--serif);margin:.25rem 0;font-size:1.12rem}.catalog-search-result details summary{cursor:pointer;color:var(--accent);font-weight:700}.today-plan{border:1px solid var(--line);border-left:5px solid var(--accent);background:color-mix(in srgb, var(--paper-raised) 92%, transparent);box-shadow:0 16px 40px var(--shadow);margin:0 0 2.5rem;padding:clamp(1.2rem,3vw,2rem)}.today-heading,.today-item,.today-links,.map-course-heading,.contract-goal{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.today-heading h2,.today-item h3,.product-title-block h1,.map-course h2{margin:.25rem 0}.today-budget{border-left:1px solid var(--line-soft);text-align:right;min-width:8rem;padding-left:1rem}.today-budget strong,.today-budget span{display:block}.today-budget strong{font-size:1.45rem}.today-budget span,.today-course,.today-item-meta,.recommendation-details,.map-node summary small,.capability-row small,.contract-goal small{color:var(--ink-soft);font-family:var(--sans);font-size:.74rem}.today-explanation{max-width:72ch;color:var(--ink-soft)}.today-items,.today-alternatives{gap:.8rem;margin-top:1rem;display:grid}.today-item{border:1px solid var(--line-soft);background:var(--paper);padding:1rem}.today-item-primary{border-color:var(--accent);background:color-mix(in srgb, var(--accent-soft) 22%, var(--paper))}.today-item-copy{max-width:72ch}.today-item-copy>p{margin:.35rem 0}.today-item-meta{text-transform:uppercase;letter-spacing:.07em;flex-wrap:wrap;gap:.55rem;display:flex}.today-priority,.map-goal{color:var(--accent-ink);font-weight:800}.recommendation-details{margin-top:.7rem}.recommendation-details summary{cursor:pointer;font-weight:700}.today-alternatives-toggle{margin-top:1rem}.today-links{justify-content:flex-start;margin-top:1.2rem}.product-main{width:min(1120px,100% - 2rem);margin:0 auto;padding:clamp(2rem,5vw,4.5rem) 0}.product-title-block{max-width:780px;margin-bottom:2rem}.knowledge-map-courses,.map-node-list,.capability-list,.contract-goals,.debrief-notes{gap:.9rem;display:grid}.map-course{border:1px solid var(--line);background:var(--paper);padding:clamp(1rem,2vw,1.6rem)}.map-node{border:1px solid var(--line-soft);background:var(--paper-raised)}.map-node summary{cursor:pointer;grid-template-columns:auto 1fr auto;align-items:center;gap:.8rem;padding:.85rem 1rem;list-style:none;display:grid}.map-node summary span:nth-child(2)>*{display:block}.map-status-dot{border:1px solid var(--line);background:var(--paper-soft);border-radius:50%;width:.72rem;height:.72rem}.map-status-durable .map-status-dot,.map-status-certified .map-status-dot{background:var(--success)}.map-status-review_due .map-status-dot,.map-status-confirmation_due .map-status-dot,.map-status-recovery .map-status-dot{background:var(--accent)}.map-status-ready .map-status-dot,.map-status-learning .map-status-dot{background:var(--warning)}.map-node-body{padding:0 1rem 1rem 2.5rem}.capability-row{border-left:2px solid var(--line);background:var(--paper-soft);grid-template-columns:minmax(12rem,.7fr) 1.3fr;gap:1rem;padding:.8rem;display:grid}.capability-row>div:first-child>*{display:block}.capability-vectors{grid-template-columns:repeat(2,minmax(8rem,1fr));gap:.45rem .8rem;display:grid}.capability-meter{font-family:var(--sans);grid-template-columns:4.5rem 1fr 2.2rem;align-items:center;gap:.35rem;display:grid}.capability-meter>span{background:var(--line-soft);height:.3rem;overflow:hidden}.capability-meter i{width:var(--meter);background:var(--accent);height:100%;display:block}.capability-meter em{font-size:.7rem;font-style:normal}.learning-contract-form{border:1px solid var(--line);background:var(--paper);gap:1rem;max-width:860px;padding:clamp(1rem,3vw,2rem);display:grid}.learning-contract-form fieldset{border:0;border-top:1px solid var(--line-soft);grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;padding:1rem 0 0;display:grid}.learning-contract-form legend{padding-right:1rem;font-weight:800}.learning-contract-form label{color:var(--ink-soft);font:700 .76rem/1.3 var(--sans);gap:.35rem;display:grid}.learning-contract-form input,.learning-contract-form select,.learning-contract-form textarea,.enrollment-form input,.enrollment-form textarea{border:1px solid var(--line);background:var(--paper-raised);width:100%;min-height:2.7rem;color:var(--ink);font-family:var(--serif);border-radius:0;padding:.55rem .7rem}.primary-session-setting{border-left:4px solid var(--accent);background:var(--paper-soft);max-width:340px;padding:1rem}.advanced-contract-settings{border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft)}.advanced-contract-settings>summary{color:var(--accent);cursor:pointer;font:800 .75rem/1.4 var(--sans);letter-spacing:.04em;padding:.9rem 0}.advanced-contract-settings>div{padding-bottom:1rem}.enrollment-grid{grid-template-columns:minmax(280px,.85fr) minmax(340px,1.15fr);align-items:start;gap:clamp(1rem,4vw,3rem);display:grid}.enrollment-form{border:1px solid var(--line);background:var(--paper);gap:1rem;padding:clamp(1rem,3vw,1.6rem);display:grid}.enrollment-form label{color:var(--ink-soft);font:750 .76rem/1.4 var(--sans);gap:.4rem;display:grid}.enrollment-form textarea,.learning-contract-form textarea{resize:vertical;min-height:7rem}.enrollment-goal-confirmation{border:1px solid color-mix(in srgb, var(--success) 45%, var(--line));background:var(--success-soft);color:var(--success);font:.72rem/1.4 var(--sans);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.7rem;margin:0;padding:.75rem .85rem;display:grid}.enrollment-goal-confirmation>span:first-child{border:1px solid;border-radius:50%;place-items:center;width:1.7rem;height:1.7rem;font-weight:800;display:grid}.enrollment-goal-confirmation strong{font-size:.78rem;display:block}.enrollment-tutor,.plan-tutor{border:1px solid var(--line);background:var(--paper);overflow:hidden}.enrollment-tutor>p{color:var(--ink-soft);margin:0;padding:0 1.45rem .8rem;line-height:1.55}.plan-tutor{max-width:860px;margin-top:2rem}.chat-goal-update-row{align-items:center;gap:.55rem;margin-top:.55rem;display:inline-flex}.chat-goal-update{border:1px solid var(--success);color:var(--success);font:800 .62rem/1 var(--sans);letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:.2rem .45rem;display:inline-flex}.chat-goal-undo{color:var(--ink-soft);cursor:pointer;font:700 .68rem/1.2 var(--sans);background:0 0;border:0;border-bottom:1px solid;padding:0}.chat-goal-undo:disabled{cursor:wait;opacity:.65}.chat-goal-undo-error{color:var(--danger);font:.72rem/1.4 var(--sans);margin:.45rem 0 0}.contract-goals{max-width:860px;margin-top:2rem}.contract-goal{border:1px solid var(--line-soft);background:var(--paper);padding:.85rem 1rem}.contract-goal div>*{display:block}.placement-grid{grid-template-columns:repeat(3,1fr);gap:1rem;margin:2rem 0;display:grid}.placement-column,.debrief-next,.debrief-notes{border:1px solid var(--line-soft);background:var(--paper);padding:1rem}.placement-column h2,.debrief-notes h2,.debrief-next h2{margin-top:0}.placement-confidence{color:var(--ink-soft);margin:1.5rem 0}.debrief-ledger{border-top:1px solid var(--line);max-width:800px;margin-bottom:1.2rem}.debrief-notes,.debrief-next{max-width:800px;margin:1rem 0}.profile-product-links{gap:.8rem;margin-top:1.5rem;display:flex}@media (width<=760px){.today-heading,.today-item,.map-course-heading,.contract-goal{flex-direction:column;align-items:stretch}.today-budget{text-align:left;border:0;padding:0}.catalog-search form{grid-template-columns:1fr}.catalog-search{width:auto;max-height:calc(100dvh - 84px - .8rem);left:0;right:0}.catalog-search-result{flex-direction:column;align-items:stretch}.capability-row,.placement-grid,.learning-contract-form fieldset,.enrollment-grid,.capability-vectors{grid-template-columns:1fr}.learner-summary .masthead-link{display:none}}.workspace-library-main{width:min(1180px,100% - 40px);margin:0 auto;padding:clamp(48px,7vw,96px) 0 100px}.workspace-library-grid{grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:18px;margin-top:38px;display:grid}.reading-next-work{border:1px solid color-mix(in srgb, var(--accent) 42%, var(--line));border-left:4px solid var(--accent);background:color-mix(in srgb, var(--accent) 5%, var(--paper));margin-top:38px;padding:clamp(24px,4vw,42px)}.reading-next-work>p,.recommended-work>div>p,.recommended-work details{color:var(--ink-soft);line-height:1.6}.reading-next-work h2,.recommended-work h3{font-family:var(--serif);margin:8px 0 10px}.reading-next-work h2{font-size:clamp(1.8rem,4vw,2.8rem)}.recommended-work{border:1px solid var(--line-soft);background:var(--paper);justify-content:space-between;align-items:center;gap:28px;margin-top:24px;padding:22px;display:flex}.recommended-work>div{max-width:760px}.recommended-work h3{font-size:1.55rem}.reading-alternatives{margin-top:22px}.reading-alternatives>summary,.recommended-work summary{cursor:pointer;color:var(--accent);font-weight:700}.reading-alternatives .recommended-work{margin-top:12px}.workspace-card,.workspace-empty{border:1px solid var(--line);border-radius:var(--surface-corner);background:color-mix(in srgb, var(--paper) 90%, transparent);flex-direction:column;align-items:flex-start;min-height:290px;padding:28px;display:flex;box-shadow:0 14px 34px #392d1c12}.workspace-card h2,.workspace-empty h2{font-family:var(--serif);margin:10px 0 8px;font-size:clamp(1.45rem,3vw,2rem)}.workspace-card>p,.workspace-empty>p{color:var(--ink-soft);line-height:1.65}.workspace-card-kind,.workspace-status{color:var(--accent);letter-spacing:.12em;text-transform:uppercase;font-size:.72rem;font-weight:750}.workspace-card-meta{width:100%;color:var(--ink-faint);justify-content:space-between;margin:auto 0 18px;padding-top:22px;font-size:.78rem;display:flex}.workspace-corpus{border-top:1px solid var(--line);margin-top:58px;padding-top:28px}.workspace-corpus h2{font-family:var(--serif);font-size:1.8rem}.workspace-corpus ul{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;padding:0;list-style:none;display:grid}.workspace-corpus li{border-bottom:1px solid var(--line-soft);flex-direction:column;gap:4px;padding:16px 0;display:flex}.workspace-corpus li span{color:var(--ink-faint);font-size:.82rem}.workspace-corpus li a{color:var(--accent);font:750 .72rem/1.4 var(--sans);align-self:flex-start;margin-top:.35rem}.activity-workspace{background:var(--page);min-height:100vh}.activity-toolbar{z-index:20;border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--paper) 94%, transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);grid-template-columns:minmax(150px,1fr) minmax(240px,2fr) minmax(120px,1fr);align-items:center;gap:18px;min-height:70px;padding:10px 22px;display:grid;position:sticky;top:0}.activity-toolbar>div{text-align:center;flex-direction:column;min-width:0;display:flex}.activity-toolbar>div strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.activity-toolbar>div small{color:var(--ink-faint)}.activity-toolbar .workspace-status{justify-self:end}.activity-workspace-main{grid-template-columns:minmax(190px,.65fr) minmax(420px,1.55fr) minmax(280px,1fr);min-height:calc(100vh - 70px);display:grid}.activity-stage-rail,.source-packet-panel{background:color-mix(in srgb, var(--paper) 72%, var(--page));padding:36px 26px}.activity-stage-rail{border-right:1px solid var(--line)}.activity-stage-rail ol{gap:22px;margin:28px 0 0;padding:0;list-style:none;display:grid}.activity-stage-rail li{color:var(--ink-faint);grid-template-columns:28px 1fr;align-items:start;gap:10px;display:grid}.activity-stage-rail li>span{border:1px solid var(--line);border-radius:50%;place-items:center;width:26px;height:26px;font-size:.72rem;display:grid}.activity-stage-rail li div{flex-direction:column;gap:3px;display:flex}.activity-stage-rail li.is-current{color:var(--ink)}.activity-stage-rail li.is-current>span{border-color:var(--accent);background:var(--accent);color:var(--paper)}.activity-stage-rail li.is-complete>span{color:var(--accent)}.activity-stage-panel{background:var(--paper);padding:clamp(38px,6vw,76px) clamp(28px,6vw,76px) 90px}.activity-stage-panel h1{max-width:720px;font-family:var(--serif);margin:10px 0 18px;font-size:clamp(2.2rem,5vw,4.2rem);font-weight:520;line-height:1.04}.workspace-instructions{max-width:680px;color:var(--ink-soft);font-size:1.05rem;line-height:1.75}.independence-boundary,.closed-book-boundary,.assessment-status,.sealed-reading-feedback,.reading-step-guide{border:1px solid color-mix(in srgb, var(--accent) 40%, var(--line));border-left:3px solid var(--accent);background:color-mix(in srgb, var(--accent) 7%, var(--paper));flex-direction:column;gap:5px;margin:26px 0;padding:16px 18px;display:flex}.independence-boundary span,.assessment-status span,.sealed-reading-feedback span{color:var(--ink-soft);font-size:.86rem;line-height:1.5}.sealed-reading-feedback{border-style:dashed}.reading-step-guide ul{margin:10px 0;padding-left:20px}.reading-step-guide li,.reading-step-guide p,.annotation-gate-note{color:var(--ink-soft);font-size:.88rem;line-height:1.55}.workspace-response-form{gap:16px;max-width:760px;margin-top:30px;display:grid}.workspace-response-form>label,.workspace-citations legend{letter-spacing:.07em;text-transform:uppercase;font-size:.77rem;font-weight:750}.workspace-response-form textarea{resize:vertical;border:1px solid var(--line);background:color-mix(in srgb, var(--page) 35%, var(--paper));width:100%;min-height:300px;color:var(--ink);font:1rem/1.7 var(--sans);border-radius:3px;padding:20px}.workspace-response-form textarea:focus,.workspace-response-form select:focus,.workspace-citations input:focus-visible{outline:3px solid color-mix(in srgb, var(--accent) 40%, transparent);outline-offset:2px}.workspace-citations{border:1px solid var(--line-soft);gap:9px;margin:0;padding:15px 18px;display:grid}.workspace-citations label{color:var(--ink-soft);align-items:start;gap:9px;font-size:.86rem;display:flex}.workspace-assistance{justify-content:space-between;align-items:center;gap:18px;display:flex}.workspace-assistance select{border:1px solid var(--line);background:var(--paper);min-width:190px;color:var(--ink);padding:9px 12px}.source-packet-panel{border-left:1px solid var(--line);max-height:calc(100vh - 70px);overflow:auto}.source-packet-heading h2{font-family:var(--serif);margin:8px 0;font-size:1.65rem}.source-packet-heading>p:last-child,.source-empty p,.closed-book-boundary p,.withheld-note{color:var(--ink-faint);font-size:.82rem;line-height:1.55}.source-segments{gap:16px;margin-top:26px;display:grid}.source-segments article{border:1px solid var(--line-soft);background:var(--paper);padding:18px}.source-segments article header{color:var(--accent);justify-content:space-between;gap:10px;font-size:.75rem;display:flex}.source-segments article p{white-space:pre-wrap;font-family:var(--serif);margin:14px 0 0;line-height:1.7}.source-segments [data-reading-segment-body]::selection{background:color-mix(in srgb, var(--accent) 28%, transparent)}.reading-annotations{border-top:1px solid var(--line-soft);margin-top:18px;padding-top:14px}.reading-annotations ul{gap:10px;margin:8px 0 0;padding:0;list-style:none;display:grid}.reading-annotations li{border-left:2px solid var(--accent);flex-direction:column;gap:3px;padding-left:10px;font-size:.82rem;display:flex}.reading-annotations li small{color:var(--ink-faint)}.reading-annotation-body{color:var(--ink)}.reading-highlight-toggle{color:var(--accent-ink);cursor:pointer;font:750 .66rem/1.3 var(--sans);letter-spacing:.035em;background:0 0;border:0;border-bottom:1px solid;align-self:flex-start;padding:0}.reading-text-highlight{border-bottom:1px solid #0000;transition:background .12s,border-color .12s}.reading-text-highlight.is-visible{border-bottom-color:color-mix(in srgb, var(--accent) 62%, transparent);background:color-mix(in srgb, var(--accent-soft) 68%, transparent)}.reading-annotation-kind{color:var(--accent-ink);font:750 .66rem/1.3 var(--sans);text-transform:capitalize;margin-top:8px;display:block}.annotation-anchor{color:var(--ink-faint);font:.78rem/1.45 var(--sans)!important;margin:0!important}.artifact-preview{border:1px solid var(--line);background:color-mix(in srgb, var(--page) 30%, var(--paper));margin:26px 0;padding:22px}.artifact-preview>p:last-child{white-space:pre-wrap;line-height:1.7}.studio-guidance,.assessment-gate,.delayed-stage{border:1px solid var(--line);background:color-mix(in srgb, var(--page) 42%, var(--paper));max-width:720px;margin:28px 0;padding:22px 24px}.studio-guidance{border-left:3px solid var(--accent)}.studio-guidance p:not(.kicker),.assessment-gate p,.delayed-stage p{color:var(--ink-soft);line-height:1.65}.assessment-gate,.delayed-stage{flex-direction:column;align-items:flex-start;gap:10px;display:flex}.assessment-gate.needs-review{border-color:color-mix(in srgb, #a34a36 45%, var(--line));background:color-mix(in srgb, #a34a36 7%, var(--paper))}@media (width<=980px){.activity-workspace-main{grid-template-columns:170px minmax(0,1fr)}.source-packet-panel{border-top:1px solid var(--line);border-left:0;grid-column:1/-1;max-height:none}}@media (width<=680px){.recommended-work{flex-direction:column;align-items:stretch}.activity-toolbar{grid-template-columns:auto 1fr}.activity-toolbar .workspace-status{display:none}.activity-workspace-main{display:block}.activity-stage-rail{border-right:0;border-bottom:1px solid var(--line);padding:18px;overflow-x:auto}.activity-stage-rail ol{min-width:max-content;margin-top:12px;display:flex}.activity-stage-rail li{min-width:150px}.activity-stage-panel{padding:38px 20px 60px}.workspace-response-form textarea{min-height:230px}}.mobile-menu-toggle,.mobile-nav-backdrop,.mobile-edge-swipe-zone,.mobile-app-navigation,.mobile-floating-controls,.mobile-floating-search{display:none}.reading-workspace{background:radial-gradient(circle at 50% 10%, color-mix(in srgb, var(--paper) 76%, transparent), transparent 48%), var(--page);min-height:100dvh;position:relative;overflow-x:hidden}.reading-back-button{z-index:55;top:calc(12px + env(safe-area-inset-top));left:calc(14px + env(safe-area-inset-left));border:1px solid color-mix(in srgb, var(--ink) 38%, var(--line));background:color-mix(in srgb, var(--paper) 92%, transparent);width:42px;height:42px;box-shadow:0 8px 24px var(--shadow);color:var(--ink);font:700 1.1rem/1 var(--sans);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);cursor:pointer;border-radius:50%;place-items:center;display:grid;position:fixed}.reading-back-button svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;width:21px;height:21px;display:block;overflow:visible;transform:translate(-.5px)}.reading-progress-shell{z-index:50;height:8px;padding-top:env(safe-area-inset-top);background:color-mix(in srgb, var(--paper) 76%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);position:fixed;top:0;left:0;right:0}.reading-progress-track{background:color-mix(in srgb, var(--line) 68%, transparent);height:5px;overflow:hidden}.reading-progress-track>span{width:var(--reading-progress);background:var(--accent);height:100%;transition:width .24s;display:block}.reading-progress-shell>span{top:calc(var(--app-visual-offset-top,0px) + 64px + env(safe-area-inset-top));right:calc(16px + env(safe-area-inset-right));border:1px solid var(--line-soft);border-radius:var(--surface-corner);background:color-mix(in srgb, var(--paper) 90%, transparent);color:var(--ink-soft);font:750 .64rem/1 var(--sans);letter-spacing:.06em;text-transform:uppercase;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:.28rem .55rem;position:absolute}.reading-room-main{min-height:100dvh;padding:calc(76px + env(safe-area-inset-top)) clamp(20px, 5vw, 72px) calc(110px + env(safe-area-inset-bottom));place-items:start center;display:grid}.reading-room-error{z-index:60;top:calc(62px + env(safe-area-inset-top));width:min(620px,100% - 32px);box-shadow:0 10px 30px var(--shadow);position:fixed;left:50%;transform:translate(-50%)}.reading-page-deck{touch-action:pan-y;isolation:isolate;width:min(790px,100vw - clamp(40px,10vw,140px));position:relative}.reading-page-deck:before,.reading-page-deck:after{z-index:-2;content:"";border:1px solid var(--line-soft);border-radius:var(--surface-corner);background:var(--paper);box-shadow:0 14px 32px var(--shadow);position:absolute;inset:10px 2px -8px;transform:rotate(-.7deg)}.reading-page-deck:after{z-index:-1;inset:5px -3px -4px 5px;transform:rotate(.55deg)}.reading-sheet{border:1px solid var(--line);border-radius:var(--surface-corner);background:linear-gradient(color-mix(in srgb, var(--paper) 97%, transparent), color-mix(in srgb, var(--paper) 97%, transparent)), repeating-linear-gradient(0deg, transparent 0 31px, color-mix(in srgb, var(--line-soft) 18%, transparent) 32px);min-height:calc(100dvh - 176px);box-shadow:0 24px 58px var(--shadow-deep);will-change:transform;padding:clamp(36px,7vw,76px) clamp(28px,8vw,88px) clamp(54px,8vw,84px);transition:transform .18s;position:relative}.reading-sheet:focus{outline:none}.reading-sheet-heading{border-bottom:1px solid var(--line-soft);color:var(--ink-soft);font-family:var(--sans);justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:clamp(28px,5vw,50px);padding-bottom:12px;display:flex}.reading-sheet-heading span{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;flex:none;font-size:.68rem;font-weight:800}.reading-sheet-heading strong{font-family:var(--serif);text-align:right;font-size:clamp(1rem,2.4vw,1.3rem);font-weight:520}.reading-sheet-text{white-space:pre-wrap;color:var(--ink);font-family:var(--serif);text-wrap:pretty;-webkit-user-select:text;user-select:text;font-size:clamp(1.08rem,2.4vw,1.3rem);line-height:1.88}.reading-sheet-text:focus-visible{outline:2px solid color-mix(in srgb, var(--accent) 44%, transparent);outline-offset:8px}.reading-sheet-text::selection{background:color-mix(in srgb, var(--accent) 34%, transparent)}.reading-highlight-hint{border-top:1px solid var(--line-soft);color:var(--ink-faint);font:.75rem/1.5 var(--sans);text-align:center;margin:34px 0 0;padding-top:14px}.reading-highlight-hint strong,.reading-highlight-hint span{color:var(--accent-ink)}.reading-selection-action{z-index:46;right:50%;bottom:calc(18px + env(safe-area-inset-bottom));border:1px solid var(--accent);border-radius:var(--control-corner);background:var(--accent);min-height:48px;box-shadow:0 12px 34px var(--shadow-deep);color:var(--paper);font:800 .72rem/1 var(--sans);letter-spacing:.04em;cursor:pointer;align-items:center;gap:.55rem;padding:.65rem .9rem;display:inline-flex;position:fixed;transform:translate(50%)}.reading-selection-action[hidden]{display:none}.reading-sheet .reading-annotations{border:1px solid color-mix(in srgb, var(--accent) 24%, var(--line-soft));background:color-mix(in srgb, var(--accent) 5%, var(--paper));margin-top:36px;padding:18px}.reading-sheet .reading-annotations li{padding-left:12px;font-size:.9rem;line-height:1.55}.reading-page-foot{color:var(--ink-faint);font:700 .68rem/1.4 var(--sans);letter-spacing:.04em;text-transform:uppercase;flex-wrap:wrap;justify-content:center;gap:.45rem 1rem;margin-top:24px;display:flex}.reading-page-turns{justify-content:space-between;gap:1rem;margin-top:18px;display:flex}.reading-page-advance{display:contents}.reading-page-turn{border:1px solid var(--line);border-radius:var(--control-corner);background:color-mix(in srgb, var(--paper) 90%, transparent);min-height:42px;color:var(--ink);font:750 .7rem/1 var(--sans);letter-spacing:.05em;text-transform:uppercase;cursor:pointer;align-items:center;gap:.55rem;padding:.55rem .85rem;display:inline-flex}.reading-page-turn:disabled{opacity:.36;cursor:default}.reading-page-turn-next{border-color:var(--accent);color:var(--accent-ink);margin-left:auto}.reading-annotation-gate{color:var(--accent-ink);font:700 .74rem/1.45 var(--sans);text-align:right;margin:12px 0 0}.reading-prompt-bubble{z-index:35;top:calc(var(--app-visual-offset-top,0px) + 104px + env(safe-area-inset-top));right:calc(22px + env(safe-area-inset-right));border:1px solid color-mix(in srgb, var(--accent) 52%, var(--line));border-radius:var(--surface-corner);background:color-mix(in srgb, var(--paper-raised) 94%, transparent);width:min(320px,100vw - 32px);max-height:min(50dvh,430px);box-shadow:0 14px 42px var(--shadow-deep);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);padding:0;transition:width .18s,height .18s,border-radius .18s;position:fixed;overflow:hidden}.reading-prompt-toggle{width:100%;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;gap:10px;padding:14px 42px 16px 16px;display:grid}.reading-prompt-label{color:var(--accent);font:800 .65rem/1 var(--sans);letter-spacing:.08em;text-transform:uppercase}.reading-prompt-content{gap:10px;display:grid}.reading-prompt-content[hidden]{display:none}.reading-prompt-content>span{color:var(--ink-soft);font:.84rem/1.55 var(--sans)}.reading-prompt-content strong{font-family:var(--serif);font-size:1.02rem;font-weight:600;line-height:1.45}.reading-prompt-content small{color:var(--ink-faint);font:700 .68rem/1.4 var(--sans)}.reading-prompt-collapsed-icon{color:var(--accent);font:700 1.1rem/1 var(--serif);display:none}.reading-prompt-handle{border-radius:var(--control-corner);width:30px;height:30px;color:var(--accent);font:800 1rem/1 var(--sans);touch-action:none;cursor:grab;background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:flex;position:absolute;top:7px;right:7px}.reading-prompt-handle:active{cursor:grabbing}.reading-prompt-bubble.is-collapsed{border-radius:var(--surface-corner);width:58px;height:58px}.reading-prompt-bubble.is-collapsed .reading-prompt-toggle{place-items:center;height:100%;padding:0 18px 12px 0}.reading-prompt-bubble.is-collapsed .reading-prompt-label,.reading-prompt-bubble.is-collapsed .reading-prompt-content{display:none}.reading-prompt-bubble.is-collapsed .reading-prompt-collapsed-icon{display:block}.reading-prompt-bubble.is-collapsed .reading-prompt-handle{width:25px;height:25px;font-size:.8rem;top:auto;bottom:1px;right:2px}.reading-prompt-bubble span,.reading-prompt-bubble strong,.reading-prompt-bubble small{margin:0}.reading-response-button{z-index:45;right:calc(20px + env(safe-area-inset-right));bottom:calc(20px + env(safe-area-inset-bottom));border:1px solid var(--accent);border-radius:var(--control-corner);background:var(--accent);min-height:50px;box-shadow:0 12px 34px var(--shadow-deep);color:var(--paper);font:800 .72rem/1 var(--sans);letter-spacing:.04em;cursor:pointer;align-items:center;gap:.6rem;padding:.7rem 1rem;display:inline-flex;position:fixed}.reading-response-bubble{z-index:44;right:calc(20px + env(safe-area-inset-right));bottom:calc(82px + env(safe-area-inset-bottom));border:1px solid var(--line);border-radius:var(--surface-corner);background:color-mix(in srgb, var(--paper-raised) 97%, transparent);width:min(440px,100vw - 32px);max-height:min(72dvh,680px);box-shadow:0 20px 54px var(--shadow-deep);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);padding:18px;position:fixed;overflow:auto}.reading-response-heading,.reading-note-heading{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.reading-response-heading>div,.reading-note-heading>div{gap:3px;min-width:0;display:grid}.reading-response-heading span,.reading-note-heading span{color:var(--ink-faint);font:750 .65rem/1.3 var(--sans);letter-spacing:.07em;text-transform:uppercase}.reading-response-heading strong,.reading-note-heading strong{font-family:var(--serif);text-overflow:ellipsis;font-size:1.15rem;overflow:hidden}.reading-response-heading button,.reading-note-heading button{border:1px solid var(--line-soft);border-radius:var(--control-corner);width:34px;height:34px;color:var(--ink);cursor:pointer;background:0 0;flex:none;place-items:center;font-size:1.25rem;display:grid}.reading-response-form{margin-top:16px}.reading-response-form textarea{min-height:220px}.reading-response-prompt{color:var(--ink);font-family:var(--serif);margin:0;font-size:1.08rem;font-weight:600;line-height:1.48}.reading-response-sealed{color:var(--ink-soft);font-size:.82rem;line-height:1.5}.reading-note-layer,.reading-stage-response-layer{z-index:90;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#1e191338;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.reading-note-layer,.reading-stage-response-layer.is-entering{animation:.18s both calm-fade-in}.reading-note-composer{border:1px solid var(--line);border-radius:var(--surface-corner);background:var(--paper-raised);width:min(460px,100%);box-shadow:0 22px 62px var(--shadow-deep);gap:13px;padding:20px;display:grid}.reading-stage-response-layer{z-index:92}.reading-stage-response-modal{border:1px solid var(--line);border-radius:var(--surface-corner);background:var(--paper-raised);width:min(680px,100%);max-height:min(86dvh,820px);box-shadow:0 24px 68px var(--shadow-deep);gap:14px;padding:clamp(22px,4vw,34px);display:grid;overflow:auto}.reading-stage-response-layer.is-entering .reading-stage-response-modal{animation:.22s cubic-bezier(.22,.78,.28,1) both calm-modal-in}.reading-stage-response-heading{justify-content:space-between;align-items:center;gap:1rem;display:flex}.reading-stage-response-heading p{margin:0}.reading-stage-response-heading button{border:1px solid var(--line-soft);border-radius:var(--control-corner);width:36px;height:36px;color:var(--ink);cursor:pointer;background:0 0;flex:none;place-items:center;font-size:1.25rem;display:grid}.reading-stage-response-modal h2{max-width:620px;font-family:var(--serif);text-wrap:balance;margin:2px 0 4px;font-size:clamp(1.55rem,4vw,2.25rem);font-weight:540;line-height:1.18}.reading-stage-response-modal>label{color:var(--ink-soft);font:750 .72rem/1 var(--sans);letter-spacing:.07em;text-transform:uppercase}.reading-stage-response-modal>textarea{resize:vertical;border:1px solid var(--line);border-radius:var(--surface-corner);background:color-mix(in srgb, var(--page) 35%, var(--paper));width:100%;min-height:150px;color:var(--ink);font:1rem/1.6 var(--sans);padding:15px}.reading-stage-response-modal>textarea:focus{outline:3px solid color-mix(in srgb, var(--accent) 40%, transparent);outline-offset:2px}.reading-stage-response-actions{justify-content:flex-end;gap:10px;display:flex}.reading-checkpoint-feedback{border:1px solid color-mix(in srgb, var(--accent) 52%, var(--line));border-radius:var(--surface-corner);background:color-mix(in srgb, var(--accent-soft) 28%, var(--paper));gap:6px;padding:14px 16px;display:grid}.reading-checkpoint-feedback strong{color:var(--accent-ink);font:800 .72rem/1.3 var(--sans);letter-spacing:.04em;text-transform:uppercase}.reading-checkpoint-feedback p{white-space:pre-wrap;color:var(--ink-soft);font:.92rem/1.55 var(--sans);margin:0}.reading-checkpoint-feedback.has-error{border-color:color-mix(in srgb, var(--warning) 60%, var(--line));background:color-mix(in srgb, var(--warning) 7%, var(--paper))}.reading-citation-choices{border-radius:var(--surface-corner);max-height:270px;padding:14px;overflow:auto}.reading-citation-choices>p{color:var(--ink-faint);font:.78rem/1.45 var(--sans);margin:-2px 0 3px}.reading-citation-choices label{border-radius:var(--surface-corner);background:color-mix(in srgb, var(--page) 36%, transparent);cursor:pointer;border:1px solid #0000;padding:10px}.reading-citation-choices label:has(input:checked){border-color:color-mix(in srgb, var(--accent) 58%, var(--line));background:color-mix(in srgb, var(--accent-soft) 42%, var(--paper))}.reading-citation-choices input{width:18px;height:18px;accent-color:var(--accent);flex:none}.reading-citation-choices label>span,.reading-citation-choices small{display:block}.reading-citation-choices strong{color:var(--ink);font-family:var(--sans);font-size:.8rem}.reading-citation-choices small{color:var(--ink-faint);font:.76rem/1.45 var(--serif);margin-top:4px}.reading-citation-choices q{color:var(--accent-ink);font:600 .82rem/1.45 var(--serif);margin-top:5px;display:block}.reading-citation-note{border-left-color:color-mix(in srgb, var(--accent) 42%, var(--line))!important}@keyframes calm-fade-in{0%{opacity:0}to{opacity:1}}@keyframes calm-modal-in{0%{opacity:0;transform:translateY(14px)scale(.99)}to{opacity:1;transform:translateY(0)scale(1)}}.reading-note-composer>label{color:var(--ink-soft);font:750 .68rem/1 var(--sans);letter-spacing:.06em;text-transform:uppercase}.reading-note-composer textarea{resize:vertical;border:1px solid var(--line);background:var(--paper);width:100%;color:var(--ink);font:1rem/1.55 var(--sans);padding:12px}.reading-state-page{border:1px solid var(--line);background:var(--paper);width:min(720px,100%);box-shadow:0 22px 52px var(--shadow);margin:auto;padding:clamp(52px,10vw,110px) clamp(22px,7vw,72px)}.reading-state-page h1{font-family:var(--serif);margin:10px 0 20px;font-size:clamp(2.2rem,6vw,4.2rem);font-weight:520;line-height:1.04}.reading-state-page>p:not(.kicker){color:var(--ink-soft);font-size:1.05rem;line-height:1.7}.reading-state-page>form{margin-top:28px}.tutor-page-main{flex-direction:column;gap:24px;width:min(920px,100% - 2rem);min-height:680px;margin:0 auto;padding:clamp(40px,7vw,76px) 0;display:flex}.tutor-page-heading{max-width:680px}.tutor-page-heading h1{font-family:var(--serif);margin:.25rem 0 .65rem;font-size:clamp(2rem,5vw,4rem);font-weight:500;line-height:1.05}.tutor-page-heading>p:last-child{color:var(--ink-soft);margin:0;line-height:1.6}.tutor-chat-page{border:1px solid var(--line);background:color-mix(in srgb, var(--paper-raised) 94%, transparent);min-height:500px;box-shadow:0 18px 48px var(--shadow);padding:20px}.tutor-chat-page .tutor-messages{flex:1;padding:4px 2px 12px}@media (width<=720px){.dashboard-masthead{grid-template-columns:auto minmax(0,1fr) auto;gap:.65rem;display:grid}.mobile-menu-toggle{width:42px;height:42px;color:var(--ink);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:50%;place-content:center;gap:4px;padding:0;display:grid}.mobile-menu-toggle:hover,.mobile-menu-toggle[aria-expanded=true]{border-color:var(--line);background:var(--paper-soft)}.mobile-menu-toggle span{background:currentColor;width:19px;height:1.5px}.dashboard-masthead .wordmark{min-width:0}.dashboard-masthead .wordmark-initial{display:none}.dashboard-masthead .wordmark strong{text-overflow:ellipsis;white-space:nowrap;font-size:1rem;overflow:hidden}.dashboard-grid,.dashboard-shell>.site-footer{display:none}.dashboard-main{padding:1.15rem 0 calc(2rem + env(safe-area-inset-bottom))}.today-plan{margin-bottom:0}.mobile-nav-backdrop{z-index:100;pointer-events:none;transition:background .18s;display:block;position:fixed;inset:0}.mobile-nav-backdrop.is-open{pointer-events:auto;background:#14110d5c}.mobile-dashboard-nav{width:min(88vw,370px);height:100%;padding:calc(20px + env(safe-area-inset-top)) 18px calc(24px + env(safe-area-inset-bottom));border-right:1px solid var(--ink);background:var(--paper-raised);overscroll-behavior:contain;flex-direction:column;transition:transform .21s,box-shadow .21s;display:flex;overflow:auto;transform:translate(-102%);box-shadow:16px 0 44px #0000}.mobile-nav-backdrop.is-open .mobile-dashboard-nav{box-shadow:16px 0 44px var(--shadow-deep);transform:translate(0)}.mobile-app-navigation.mobile-nav-is-closing .mobile-nav-backdrop{pointer-events:none;background:0 0}.mobile-app-navigation.mobile-nav-is-closing .mobile-dashboard-nav{transform:translate(calc(100vw + 4px));box-shadow:16px 0 44px #0000}.mobile-nav-heading,.mobile-nav-heading>div,.mobile-recent-courses>div:first-child{justify-content:space-between;align-items:center;gap:1rem;display:flex}.mobile-nav-heading{border-bottom:1px solid var(--ink);padding-bottom:20px}.mobile-nav-heading>div{flex-direction:column;align-items:flex-start;gap:2px}.mobile-nav-heading strong{font-family:var(--serif);font-size:1.55rem;font-weight:520}.mobile-nav-heading button{border:1px solid var(--line);background:0 0;border-radius:50%;place-items:center;width:40px;height:40px;font-size:1.4rem;display:grid}.mobile-recent-courses{border-bottom:1px solid var(--line);padding:24px 0}.mobile-recent-courses h2{font-family:var(--serif);margin:0;font-size:1.22rem}.mobile-recent-courses>div:first-child>span{border:1px solid var(--line);min-width:28px;height:28px;color:var(--ink-soft);font:750 .67rem/1 var(--sans);border-radius:50%;place-items:center;display:grid}.mobile-recent-list{margin-top:16px}.mobile-recent-list>p{color:var(--ink-faint);font-size:.86rem}.mobile-recent-list .recent-course{grid-template-columns:minmax(0,1fr) auto;min-height:62px}.mobile-recent-list .recent-course-progress{grid-column:1;width:100%}.mobile-recent-list .row-arrow{grid-area:1/2/3}.mobile-nav-actions{margin-top:8px;display:grid}.mobile-nav-actions>button{border:0;border-bottom:1px solid var(--line-soft);min-height:68px;color:var(--ink);text-align:left;background:0 0;justify-content:space-between;align-items:center;padding:0;display:flex}.mobile-nav-actions>button>span:first-child{align-items:center;gap:12px;display:flex}.mobile-nav-actions b{border:1px solid var(--line);width:30px;height:30px;color:var(--accent);border-radius:50%;place-items:center;display:grid}.mobile-edge-swipe-zone{z-index:95;touch-action:pan-y;width:18px;display:block;position:fixed;top:0;bottom:0;left:0}.mobile-nav-is-open .mobile-edge-swipe-zone{pointer-events:none}.reading-room-main{padding:calc(66px + env(safe-area-inset-top)) 12px calc(104px + env(safe-area-inset-bottom))}.reading-back-button{top:calc(11px + env(safe-area-inset-top));left:calc(10px + env(safe-area-inset-left));width:40px;height:40px}.reading-progress-shell>span{top:calc(var(--app-visual-offset-top,0px) + 62px + env(safe-area-inset-top));right:calc(10px + env(safe-area-inset-right))}.reading-page-deck{width:calc(100vw - 32px)}.reading-sheet{min-height:calc(100dvh - 154px);box-shadow:0 18px 42px var(--shadow-deep);padding:44px 24px 60px}.reading-sheet-heading{flex-direction:column;align-items:flex-start;gap:6px;margin-bottom:30px}.reading-sheet-heading strong{text-align:left}.reading-sheet-text{font-size:1.08rem;line-height:1.82}.reading-page-turn span{display:none}.reading-page-turn{justify-content:center;width:44px;padding:0}.reading-page-advance .reading-page-turn{width:auto;padding:0 .85rem}.reading-page-advance .reading-page-turn span{display:inline}.reading-prompt-bubble{top:calc(var(--app-visual-offset-top,0px) + 102px + env(safe-area-inset-top));right:calc(10px + env(safe-area-inset-right));border-radius:var(--surface-corner);width:min(275px,100vw - 28px);max-height:38dvh;padding:12px 14px 14px}.reading-prompt-bubble p{font-size:.78rem}.reading-prompt-bubble strong{font-size:.94rem}.reading-response-button{right:calc(12px + env(safe-area-inset-right));bottom:calc(12px + env(safe-area-inset-bottom))}.reading-response-bubble{right:8px;bottom:calc(74px + env(safe-area-inset-bottom));border-radius:var(--surface-corner);width:calc(100vw - 16px);max-height:70dvh}.reading-response-form textarea{min-height:190px}.reading-note-layer,.reading-stage-response-layer{align-items:end;padding:8px}.reading-note-composer{border-radius:var(--surface-corner);width:100%;padding:18px}.reading-stage-response-layer{top:var(--app-visual-offset-top,0px);height:var(--app-visual-height,100dvh);bottom:auto}.reading-stage-response-modal{width:100%;max-height:calc(var(--app-visual-height,100dvh) - 12px);padding:20px 16px max(14px, env(safe-area-inset-bottom));border-radius:var(--surface-corner);gap:12px}.reading-stage-response-modal h2{font-size:clamp(1.35rem,6.4vw,1.8rem)}.reading-stage-response-modal>textarea{min-height:118px;font-size:16px}.reading-citation-choices{max-height:min(31dvh,240px)}.reading-stage-response-actions .button{flex:1}.reading-state-page{padding:58px 24px}.mobile-app-navigation{display:block}.dashboard-masthead,.inner-header{display:none}.mobile-floating-controls{z-index:90;top:calc(var(--app-visual-offset-top,0px) + 10px + env(safe-area-inset-top));right:calc(10px + env(safe-area-inset-right));left:calc(10px + env(safe-area-inset-left));pointer-events:none;justify-content:space-between;align-items:center;display:flex;position:fixed}.mobile-floating-controls-right{align-items:center;gap:8px;display:flex}.mobile-circle-control,.mobile-xp-orb{border:1px solid color-mix(in srgb, var(--ink) 34%, var(--line));background:color-mix(in srgb, var(--paper-raised) 91%, transparent);width:44px;height:44px;box-shadow:0 8px 24px var(--shadow);color:var(--ink);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);pointer-events:auto;border-radius:50%}.mobile-menu-toggle.mobile-circle-control{border-color:color-mix(in srgb, var(--ink) 34%, var(--line));background:color-mix(in srgb, var(--paper-raised) 91%, transparent);place-content:center;gap:4px;width:44px;height:44px;padding:0;display:grid}.mobile-menu-toggle.mobile-circle-control span{background:currentColor;width:18px;height:1.5px}.mobile-search-toggle{cursor:pointer;place-items:center;padding:0;display:grid}.mobile-search-toggle[aria-expanded=true]{border-color:var(--accent);color:var(--accent)}.mobile-search-toggle svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-width:1.8px;width:19px;height:19px}.mobile-xp-orb{color:var(--accent-ink);font:800 .62rem/1 var(--sans);letter-spacing:-.02em;place-items:center;display:grid}.mobile-floating-search{z-index:99;top:calc(var(--app-visual-offset-top,0px) + 64px + env(safe-area-inset-top));right:calc(10px + env(safe-area-inset-right));left:calc(10px + env(safe-area-inset-left));transform-origin:top;animation:.22s cubic-bezier(.22,.78,.28,1) both mobile-search-drop;display:block;position:fixed}.mobile-floating-search .catalog-search{width:100%;max-height:calc(var(--app-visual-height,100dvh) - 78px - env(safe-area-inset-top));border-radius:16px;position:relative;top:auto;left:auto;right:auto}@keyframes mobile-search-drop{0%{opacity:0;transform:translateY(-18px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}.mobile-primary-nav,.mobile-nav-actions{margin:8px 0 0;display:grid}.mobile-primary-nav{border-bottom:1px solid var(--line);padding-bottom:8px}.mobile-primary-nav>button,.mobile-nav-actions>button{border:0;border-bottom:1px solid var(--line-soft);min-height:62px;color:var(--ink);text-align:left;background:0 0;justify-content:space-between;align-items:center;padding:0 8px;display:flex}.mobile-primary-nav>button[aria-current=page],.mobile-nav-actions>button[aria-current=page]{background:color-mix(in srgb, var(--accent) 9%, transparent);color:var(--accent-ink)}.mobile-primary-nav>button>span:first-child,.mobile-nav-actions>button>span:first-child{align-items:center;gap:12px;display:flex}.mobile-primary-nav b,.mobile-nav-actions b{border:1px solid var(--line);width:30px;height:30px;color:var(--accent);border-radius:50%;place-items:center;font-weight:600;display:grid}.mobile-edge-swipe-zone{z-index:80}.dashboard-main{padding-top:calc(68px + env(safe-area-inset-top))}.library-main,.profile-main,.product-main{padding-top:calc(82px + env(safe-area-inset-top))}.workspace-library-main{width:calc(100% - 24px);padding-top:calc(80px + env(safe-area-inset-top))}.reading-prompt-bubble{padding:0}.reading-prompt-toggle{max-height:38dvh;padding:12px 40px 14px 14px;overflow:auto}.reading-prompt-content>span{font-size:.78rem}.reading-prompt-bubble.is-collapsed{width:58px;height:58px;padding:0}.reading-highlight-hint{margin-left:-8px;margin-right:-8px;padding:14px 10px 0;font-size:.78rem}.reading-selection-action{bottom:calc(12px + env(safe-area-inset-bottom))}.tutor-page-shell{top:var(--app-visual-offset-top,0px);width:100%;height:var(--app-visual-height,100dvh);background:var(--page);min-height:0;padding:0;position:fixed;left:0;overflow:hidden}.tutor-page-main{width:100%;height:100%;min-height:0;padding:calc(68px + env(safe-area-inset-top)) 10px max(8px, env(safe-area-inset-bottom));gap:12px}.tutor-page-heading{flex:none;padding:0 6px}.tutor-page-heading h1{margin-bottom:.35rem;font-size:clamp(1.75rem,8vw,2.5rem)}.tutor-page-heading>p:last-child{font-size:.82rem;line-height:1.4}.tutor-chat-page{min-height:0;box-shadow:0 10px 30px var(--shadow);border-radius:16px;flex:1;padding:12px;overflow:hidden}.tutor-chat-page .tutor-messages{flex:1;min-height:0;padding:2px 0 10px;scroll-padding-bottom:12px}.tutor-chat-page .tutor-compose{background:var(--paper-raised);flex:none;padding-top:8px}.tutor-chat-page .tutor-compose textarea{resize:none;min-height:46px;max-height:88px;font-size:16px}.tutor-chat-page .tutor-fine-print{flex:none}.tutor-page-main:focus-within{padding-top:calc(62px + env(safe-area-inset-top))}.tutor-page-main:focus-within .tutor-page-heading,.tutor-page-main:focus-within .tutor-fine-print{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}body.onboarding-open{overflow:hidden}.onboarding-layer{z-index:200;pointer-events:none;padding:clamp(1rem,4vw,3.5rem);display:grid;position:fixed;inset:0}.onboarding-step-1{place-items:center end}.onboarding-step-2{place-items:center start}.onboarding-step-3{place-items:center}.onboarding-scrim{z-index:0;background:#1c1712ad;position:fixed;inset:0}.onboarding-spotlight{z-index:0;border:2px solid var(--accent);box-shadow:0 0 0 120vmax #1c1712b3, 0 0 0 5px color-mix(in srgb, var(--paper-raised) 75%, transparent);opacity:0;pointer-events:none;border-radius:8px;transition:top .22s,left .22s,width .22s,height .22s,opacity .16s;position:fixed}.onboarding-spotlight.is-positioned{opacity:1}.onboarding-spotlight>span{background:var(--accent);box-shadow:0 5px 18px var(--shadow-deep);color:var(--paper-raised);font:750 .68rem/1 var(--sans);letter-spacing:.045em;white-space:nowrap;border-radius:3px;padding:.42rem .62rem;position:absolute;top:calc(100% + 9px);right:0}.onboarding-card{--onboarding-card-padding:clamp(1.25rem, 3.5vw, 2rem);z-index:1;width:min(500px,100%);max-height:calc(100dvh - 2rem);padding:var(--onboarding-card-padding);border:1px solid var(--ink);background:linear-gradient(var(--paper), var(--paper)), repeating-linear-gradient(0deg, transparent 0 29px, color-mix(in srgb, var(--line-soft) 35%, transparent) 30px);box-shadow:8px 8px 0 -3px var(--page-deep), 8px 8px 0 -2px var(--ink), 0 26px 72px #00000061;pointer-events:auto;animation:.22s cubic-bezier(.22,.78,.28,1) both calm-modal-in;position:relative;overflow-y:auto}.onboarding-card[data-step="3"]{width:min(760px,100%)}.onboarding-heading{z-index:2;top:calc(0px - var(--onboarding-card-padding));margin:calc(0px - var(--onboarding-card-padding)) calc(0px - var(--onboarding-card-padding)) 0;padding:var(--onboarding-card-padding) var(--onboarding-card-padding) 1rem;border-bottom:1px solid var(--line);background:var(--paper);justify-content:space-between;align-items:flex-start;gap:1rem;display:flex;position:sticky}.onboarding-heading .kicker{margin-bottom:.35rem}.onboarding-step-label{color:var(--ink-faint);font:700 .68rem/1.2 var(--sans);letter-spacing:.04em;margin:0}.onboarding-progress{flex:none;gap:7px;margin:4px 0 0;padding:0;list-style:none;display:flex}.onboarding-progress li{border:1px solid var(--line);background:0 0;width:22px;height:5px}.onboarding-progress li.is-current,.onboarding-progress li.is-complete{border-color:var(--accent);background:var(--accent)}.onboarding-progress li.is-complete{opacity:.48}.onboarding-copy{padding:clamp(1.4rem,4vw,2.4rem) 0 1rem}.onboarding-eyebrow{color:var(--accent);font:800 .67rem/1.25 var(--sans);letter-spacing:.12em;text-transform:uppercase;margin:0 0 .55rem}.onboarding-copy h2{letter-spacing:-.035em;margin:0;font-size:clamp(2rem,5vw,3rem);font-weight:450;line-height:1}.onboarding-copy>p:not(.onboarding-eyebrow,.onboarding-note){color:var(--ink-soft);margin:1rem 0 0;font-size:1rem;line-height:1.62}.onboarding-note{color:var(--ink-faint);font:650 .7rem/1.45 var(--sans);margin:1rem 0 0}.onboarding-course-rhythm{border-top:1px solid var(--line);border-bottom:1px solid var(--line);font:750 .72rem/1 var(--sans);letter-spacing:.04em;justify-content:space-between;align-items:center;gap:.6rem;margin-top:1.35rem;padding:.9rem;display:flex}.onboarding-course-rhythm span{align-items:center;gap:.4rem;display:flex}.onboarding-course-rhythm b{border:1px solid var(--line);width:25px;height:25px;color:var(--accent);border-radius:50%;place-items:center;display:grid}.onboarding-course-rhythm i{color:var(--ink-faint);font-style:normal}.onboarding-reading-note{border:1px solid var(--line);background:color-mix(in srgb, var(--paper-soft) 82%, transparent);grid-template-columns:auto minmax(0,1fr);gap:.85rem;margin-top:1.35rem;padding:1rem;display:grid}.onboarding-reading-note>span{border:1px solid var(--line);width:36px;height:36px;color:var(--accent);font-family:var(--sans);border-radius:50%;place-items:center;display:grid}.onboarding-reading-note strong,.onboarding-reading-note p{display:block}.onboarding-reading-note p{color:var(--ink-soft);margin:.3rem 0 0;font-size:.88rem;line-height:1.5}.onboarding-actions{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:.8rem;padding-top:1rem;display:flex}.onboarding-actions .button{justify-content:center;align-items:center;gap:.65rem;display:inline-flex}.onboarding-interview-intro{padding-bottom:1.2rem}.onboarding-interview label>span,.onboarding-course-fieldset legend{color:var(--ink);font:750 .76rem/1.35 var(--sans);letter-spacing:.025em}.onboarding-goal-field,.onboarding-missing-field{gap:.55rem;display:grid}.onboarding-interview textarea{resize:vertical;border:1px solid var(--line);background:color-mix(in srgb, var(--paper-raised) 88%, transparent);width:100%;color:var(--ink);font-family:var(--sans);border-radius:2px;padding:.75rem .8rem;font-size:.92rem;line-height:1.45}.onboarding-interview textarea:focus{border-color:var(--accent);background:var(--paper-raised)}.onboarding-course-fieldset{border:0;min-width:0;margin:1.25rem 0;padding:0}.onboarding-course-fieldset>p{color:var(--ink-faint);font:.72rem/1.4 var(--sans);margin:.3rem 0 .7rem}.onboarding-course-options{border-top:1px solid var(--line);scrollbar-color:var(--line) transparent;max-height:205px;display:grid;overflow-y:auto}.onboarding-course-option{border-bottom:1px solid var(--line-soft);cursor:pointer;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.75rem;min-height:58px;padding:.55rem .25rem;display:grid}.onboarding-course-option:hover{background:color-mix(in srgb, var(--accent) 6%, transparent)}.onboarding-course-option input{width:19px;height:19px;accent-color:var(--accent);margin:0}.onboarding-course-option strong,.onboarding-course-option small{display:block}.onboarding-course-option strong{font:650 .89rem/1.3 var(--sans)}.onboarding-course-option small{color:var(--ink-faint);font:.66rem/1.3 var(--sans);margin-top:.18rem}.onboarding-empty-courses{color:var(--ink-soft);margin:0;padding:1rem 0;font-size:.9rem}.onboarding-missing-field{margin-bottom:1.15rem}.onboarding-error{border-left:3px solid var(--warning);background:var(--warning-soft);color:var(--warning);font:700 .78rem/1.45 var(--sans);margin:0 0 1rem;padding:.7rem .8rem}@media (width<=720px){.onboarding-layer,.onboarding-step-1,.onboarding-step-2,.onboarding-step-3{padding:max(10px, env(safe-area-inset-top)) 10px max(10px, env(safe-area-inset-bottom));place-items:end center}.onboarding-card{--onboarding-card-padding:1.15rem;width:100%;max-height:min(70dvh,590px)}.onboarding-card[data-step="3"]{max-height:calc(100dvh - max(20px, env(safe-area-inset-top) + env(safe-area-inset-bottom)))}.onboarding-copy{padding-top:1.2rem}.onboarding-copy h2{font-size:clamp(1.85rem,9vw,2.45rem)}.onboarding-copy>p:not(.onboarding-eyebrow,.onboarding-note){font-size:.93rem;line-height:1.52}.onboarding-course-rhythm{padding-inline:.35rem}.onboarding-course-rhythm i{display:none}.onboarding-actions .primary-button{flex:1}.onboarding-spotlight>span{max-width:calc(100vw - 24px);right:0}}@media (forced-colors:active){.progress-track>span,.page-progress span,.choice.is-selected .choice-letter,.next-button,.primary-button,.onboarding-progress li.is-current,.onboarding-progress li.is-complete,.tutor-compose button{forced-color-adjust:none;color:canvas;background:canvastext}}.mobile-app-navigation{display:block}.app-header{z-index:110;top:calc(var(--app-visual-offset-top,0px) + 10px + env(safe-area-inset-top));right:calc(10px + env(safe-area-inset-right));left:calc(10px + env(safe-area-inset-left));pointer-events:none;background:0 0;justify-content:space-between;align-items:center;display:flex;position:fixed}.app-header-actions,.app-course-actions{align-items:center;gap:7px;display:flex}.app-header-actions{min-width:0}.app-chrome-is-obscured .app-header{visibility:hidden;pointer-events:none}.app-course-actions{margin-right:3px}.app-circle-control,.app-xp-control{border:1px solid color-mix(in srgb, var(--ink) 34%, var(--line));background:color-mix(in srgb, var(--paper-raised) 91%, transparent);min-height:44px;box-shadow:0 8px 24px var(--shadow);color:var(--ink);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);pointer-events:auto;transition:transform .12s,border-color .12s,background .12s}.app-circle-control{width:44px;min-width:44px;height:44px;font:600 1.05rem/1 var(--serif);border-radius:50%;place-items:center;padding:0;text-decoration:none;display:grid}.app-circle-control:hover:not(:disabled),.app-xp-control:hover:not(:disabled){border-color:var(--accent);background:color-mix(in srgb, var(--paper-raised) 97%, transparent);transform:translateY(-1px)}.app-circle-control:disabled{opacity:.42}.app-navigation-control svg,.app-course-tool svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:19px;height:19px}.app-menu-lines{gap:4px;display:grid}.app-menu-lines i{background:currentColor;width:18px;height:1.5px;display:block}.app-xp-control{height:44px;color:var(--accent-ink);font:750 .68rem/1 var(--sans);white-space:nowrap;border-radius:22px;align-items:center;gap:4px;padding:0 12px;display:flex}.app-xp-control strong{font:inherit}.app-tutor-control{font-size:1.18rem}.app-course-tool{font-family:var(--sans);font-size:.78rem}.app-debug-tool{font-size:.61rem;font-weight:750}.mobile-nav-backdrop{z-index:100;pointer-events:none;background:0 0;transition:background .14s;display:block;position:fixed;inset:0}.mobile-nav-backdrop.is-open{pointer-events:auto;background:#14110d5c;animation:.16s both app-sidebar-backdrop-in}.mobile-dashboard-nav{width:min(88vw,370px);height:100%;padding:calc(20px + env(safe-area-inset-top)) 18px calc(24px + env(safe-area-inset-bottom));border-right:1px solid var(--ink);background:var(--paper-raised);overscroll-behavior:contain;flex-direction:column;transition:transform .16s cubic-bezier(.22,.75,.28,1),box-shadow .16s;display:flex;overflow:auto;transform:translate(-102%);box-shadow:16px 0 44px #0000}.mobile-nav-backdrop.is-open .mobile-dashboard-nav{box-shadow:16px 0 44px var(--shadow-deep);animation:.16s cubic-bezier(.22,.75,.28,1) both app-sidebar-in;transform:translate(0)}.mobile-app-navigation.mobile-nav-is-closing .mobile-nav-backdrop{pointer-events:none;background:0 0;animation:.16s both app-sidebar-backdrop-out}.mobile-app-navigation.mobile-nav-is-closing .mobile-dashboard-nav{animation:.16s cubic-bezier(.4,0,.7,.2) both app-sidebar-out;transform:translate(-102%);box-shadow:16px 0 44px #0000}@keyframes app-sidebar-in{0%{transform:translate(-102%);box-shadow:16px 0 44px #0000}to{box-shadow:16px 0 44px var(--shadow-deep);transform:translate(0)}}@keyframes app-sidebar-out{0%{box-shadow:16px 0 44px var(--shadow-deep);transform:translate(0)}to{transform:translate(-102%);box-shadow:16px 0 44px #0000}}@keyframes app-sidebar-backdrop-in{0%{background:0 0}to{background:#14110d5c}}@keyframes app-sidebar-backdrop-out{0%{background:#14110d5c}to{background:0 0}}.mobile-nav-heading,.mobile-nav-heading>div,.mobile-recent-courses>div:first-child{justify-content:space-between;align-items:center;gap:1rem;display:flex}.mobile-nav-heading{border-bottom:1px solid var(--ink);padding-bottom:20px;padding-left:52px}.mobile-nav-heading>div{flex-direction:column;align-items:flex-start;gap:2px}.mobile-nav-heading strong{font-family:var(--serif);font-size:1.55rem;font-weight:520}.mobile-nav-heading button{border:1px solid var(--line);background:0 0;border-radius:50%;place-items:center;width:40px;height:40px;font-size:1.4rem;display:grid}.mobile-primary-nav,.mobile-nav-actions{margin:8px 0 0;display:grid}.mobile-primary-nav{border-bottom:1px solid var(--line);padding-bottom:8px}.mobile-primary-nav>button,.mobile-nav-actions>button{border:0;border-bottom:1px solid var(--line-soft);min-height:62px;color:var(--ink);text-align:left;background:0 0;justify-content:space-between;align-items:center;padding:0 8px;display:flex}.mobile-primary-nav>button[aria-current=page],.mobile-nav-actions>button[aria-current=page]{background:color-mix(in srgb, var(--accent) 9%, transparent);color:var(--accent-ink)}.mobile-primary-nav>button>span:first-child,.mobile-nav-actions>button>span:first-child{align-items:center;gap:12px;display:flex}.mobile-primary-nav b,.mobile-nav-actions b{border:1px solid var(--line);width:30px;height:30px;color:var(--accent);border-radius:50%;place-items:center;font-weight:600;display:grid}.mobile-recent-courses{border-bottom:1px solid var(--line);padding:24px 0}.mobile-recent-courses h2{font-family:var(--serif);margin:0;font-size:1.22rem}.mobile-recent-list{margin-top:16px}.mobile-recent-list .recent-course{grid-template-columns:minmax(0,1fr) auto;min-height:62px}.mobile-recent-list .recent-course-progress{grid-column:1;width:100%}.mobile-recent-list .row-arrow{grid-area:1/2/3}.mobile-edge-swipe-zone{z-index:80;touch-action:pan-y;width:18px;display:block;position:fixed;top:0;bottom:0;left:0}.mobile-floating-search{z-index:99;top:calc(var(--app-visual-offset-top,0px) + 64px + env(safe-area-inset-top));right:calc(10px + env(safe-area-inset-right));width:min(560px, calc(100vw - 20px - env(safe-area-inset-left) - env(safe-area-inset-right)));transform-origin:100% 0;animation:.18s cubic-bezier(.22,.78,.28,1) both mobile-search-drop;display:block;position:fixed}.mobile-floating-search .catalog-search{width:100%;max-height:calc(var(--app-visual-height,100dvh) - 78px - env(safe-area-inset-top));border-radius:16px;position:relative;inset:auto}.activity-toolbar{grid-template-columns:minmax(0,1fr) auto}.activity-toolbar.has-local-navigation{grid-template-columns:minmax(150px,1fr) minmax(240px,2fr) minmax(120px,1fr)}.activity-toolbar>div{text-align:left}.activity-toolbar.has-local-navigation>div{text-align:center}@media (width<=560px){.app-course-actions{gap:5px}.app-course-tool,.app-circle-control{width:42px;min-width:42px;height:42px;min-height:42px}.app-xp-control{height:42px;min-height:42px;padding:0 9px}}@media (prefers-reduced-motion:reduce){.mobile-dashboard-nav,.mobile-nav-backdrop,.app-circle-control,.app-xp-control{transition-duration:1ms;animation-duration:1ms}}@media print{:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--page:#fff;--paper:#fff;--ink:#000;--ink-soft:#222;--ink-faint:#444;--line:#666;--line-soft:#aaa}body{background:#fff}.course-toolbar,.lesson-navigation,.tutor-backdrop,.onboarding-layer,.report-backdrop,.debug-backdrop,.image-viewer,.media-audio,.media-video,.media-interactive{display:none}.course-stage{padding:0}.lesson-paper{min-height:0;box-shadow:none;border:0}}
