@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/a342834df7752944-s.3hd2l7bm32o7k.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/d3fe2f289711ac3f-s.p.1l2zhvq5eocqf.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/58c4895d0a0ef7cc-s.2vhvl9vrvk-va.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/bfc7db5c00d21bc5-s.173xwsdme27n8.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/6ab0db14f70d8ed6-s.13hnt-xgp82zk.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/a343f882a40d2cc9-s.p.1sj6eobyi31rd.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Manrope Fallback;src:local(Arial);ascent-override:103.31%;descent-override:29.07%;line-gap-override:0.0%;size-adjust:103.19%}.manrope_4c79fd9a-module__APX_7a__className{font-family:Manrope,Manrope Fallback;font-style:normal}.manrope_4c79fd9a-module__APX_7a__variable{--font-sans:"Manrope", "Manrope Fallback"}
@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/13bf9871fe164e7f-s.2f7nqdagzwx2-.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/cc545e633e20c56d-s.p.176arc174-8zp.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/71b036adf157cdcf-s.0bp8oijd_gu96.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/89b21bb081cb7469-s.1fby2rem9ngyr.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/3fe682a82f50d426-s.0vfdmo25voy_0.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/70bc3e132a0a741e-s.p.3t6q91iet4nsy.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Fallback;src:local(Arial);ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.0%;size-adjust:134.59%}.jetbrains_mono_83417d3f-module__4ahRAq__className{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.jetbrains_mono_83417d3f-module__4ahRAq__variable{--font-mono:"JetBrains Mono", "JetBrains Mono Fallback"}
:root{--canvas:#f5f7f3;--ink:#17211b;--muted:#657167;--line:#dfe6df;--pine:#16241c;--pine-light:#eaf2ec;--accent:#147a50;--soft:#eef2ec;--sans:var(--font-sans),sans-serif;--mono:var(--font-mono),ui-monospace,monospace;--content:68rem;--ease:cubic-bezier(.22,1,.36,1);--decorative-flow-opacity:.08;--decorative-flow-color:var(--pine-light)}*{box-sizing:border-box}html{background:var(--pine);-webkit-text-size-adjust:100%}body{background:var(--canvas);color:var(--ink);font-family:var(--sans);margin:0}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}a,button{-webkit-tap-highlight-color:transparent}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.logo{align-items:center;min-width:48px;min-height:48px;display:inline-flex}.logo img{width:auto;height:38px;display:block}.landing{background:var(--canvas);min-height:100svh}.landing__hero{background:var(--pine);min-height:clamp(29rem,68svh,40rem);color:var(--pine-light);border-radius:0 0 32px 32px;flex-direction:column;padding:28px 24px 36px;display:flex}.landing__hero-copy{margin-top:auto}.landing__hero h1{letter-spacing:-.065em;max-width:12ch;margin:0;font-size:clamp(2.75rem,12vw,4.5rem);font-weight:500;line-height:.98}.landing__hero p{color:#b9c6bb;max-width:31rem;margin:18px 0 0;font-size:clamp(1.05rem,3.7vw,1.35rem);line-height:1.5}.landing__hero-action{color:#9fe0b9;justify-content:flex-start;align-items:center;gap:14px;min-height:48px;margin-top:26px;font-size:1rem;font-weight:750;display:flex}.landing__action{border-bottom:1px solid var(--line);min-height:60px;color:var(--accent);justify-content:space-between;align-items:center;padding:0 24px;font-size:1.125rem;font-weight:750;display:flex}.landing__purpose,.landing__preview,.landing__footer{width:min(calc(100% - 48px),var(--content));margin-inline:auto;padding-block:42px}.landing__purpose,.landing__preview{border-bottom:1px solid var(--line)}.landing__purpose h2,.landing__preview h2{letter-spacing:-.055em;max-width:22ch;margin:0;font-size:clamp(1.75rem,7vw,2.75rem);line-height:1.06}.landing__purpose p,.landing__preview>p:last-of-type,.landing__footer p{max-width:42rem;color:var(--muted);margin:14px 0 0;line-height:1.6}.landing__preview>p:first-child{color:var(--accent);font:600 .75rem/1.4 var(--mono);margin:0 0 16px}.landing__preview a,.landing__footer a{min-height:48px;color:var(--accent);align-items:center;margin-top:20px;font-weight:750;display:inline-flex}.landing__footer{padding-bottom:68px}.app-background{background:var(--canvas);min-height:100svh}.desktop-rail{display:none}.app-surface{min-height:100svh;padding:max(20px,env(safe-area-inset-top)) clamp(16px,5vw,24px) calc(116px + env(safe-area-inset-bottom));background:var(--canvas)}.mobile-header{align-items:center;min-height:48px;margin-bottom:36px;display:flex}.mobile-nav{z-index:2;min-height:72px;padding:8px 12px max(8px,env(safe-area-inset-bottom));background:var(--canvas);border-top:1px solid var(--line);grid-template-columns:repeat(4,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.mobile-nav a{min-height:48px;color:var(--muted);place-items:center;font-size:.75rem;font-weight:700;display:grid;position:relative}.mobile-nav a.is-active{color:var(--ink)}.mobile-nav a.is-active:after{background:var(--accent);content:"";height:2px;position:absolute;bottom:2px;left:30%;right:30%}.page-head{margin-bottom:36px}.page-head__line{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:20px;padding-bottom:22px;display:flex}.page-head h1{letter-spacing:-.06em;margin:0;font-size:clamp(2rem,8vw,3.25rem);font-weight:600;line-height:1}.page-head__meta{color:var(--muted);margin:5px 0 0;font-size:.875rem}.calendar-date{border-left:1px solid var(--line);text-align:right;align-items:flex-start;gap:10px;min-width:88px;padding-left:14px;display:flex}.calendar-date b{color:var(--accent);letter-spacing:-.06em;font-size:2rem;line-height:.82}.calendar-date>span{color:var(--muted);gap:2px;font-size:.75rem;line-height:1.15;display:grid}.page-lead{max-width:38rem;color:var(--muted);margin:16px 0 0;line-height:1.55}.section-heading,.week-day__title{justify-content:space-between;align-items:center;gap:16px;margin-bottom:8px;display:flex}.section-heading h2,.week-day h2,.lecture-detail h2{letter-spacing:-.03em;margin:0;font-size:1.125rem}.section-heading a,.week-day__title a{min-height:48px;color:var(--accent);align-items:center;font-size:.8125rem;font-weight:750;display:inline-flex}.content-section{margin-top:32px}.lecture-list{border-top:1px solid var(--line)}.lecture-row{border-bottom:1px solid var(--line);min-height:76px;transition:background-color .18s var(--ease),color .18s var(--ease);grid-template-columns:3rem 2.25rem minmax(0,1fr) 1.25rem;align-items:start;gap:8px;padding:16px 4px;display:grid}.lecture-row time,.lecture-row__subject,.lecture-detail__meta{font:600 .75rem/1.35 var(--mono)}.lecture-row time,.lecture-row small,.next-note span{color:var(--muted)}.lecture-row__subject,.lecture-row__arrow,.lecture-detail__meta{color:var(--accent)}.lecture-row__main{gap:3px;min-width:0;display:grid}.lecture-row strong{font-size:.875rem;line-height:1.35}.lecture-row small{text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;line-height:1.35;overflow:hidden}.next-note{border-top:1px solid var(--line);margin-top:36px;padding-top:18px}.next-note a{gap:4px;min-height:48px;display:grid}.week-list{gap:34px;display:grid}.empty-state{color:var(--muted);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:0;padding:24px 0;line-height:1.55}.lecture-detail{max-width:42.5rem}.back-link{min-height:48px;color:var(--accent);align-items:center;margin-bottom:28px;font-size:.8125rem;font-weight:750;display:inline-flex}.lecture-detail h1{letter-spacing:-.06em;margin:12px 0 0;font-size:clamp(2rem,7vw,3.25rem);line-height:1.03}.lecture-detail__subject{color:var(--muted);margin:10px 0 38px}.lecture-detail section{border-top:1px solid var(--line);padding:26px 0}.materials-list{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.materials-list li{border-bottom:1px solid var(--line)}.materials-list li>a{grid-template-columns:minmax(0,1fr) auto 1rem;align-items:center;gap:12px;min-height:60px;display:grid}.materials-list span,.material-row strong{font-size:.875rem;font-weight:700}.materials-list small,.lecture-detail footer,.material-row span{color:var(--muted);font-size:.75rem}.materials-list b{color:var(--accent)}.lecture-detail footer{flex-wrap:wrap;gap:10px 24px;padding:20px 0;display:flex}.material-row{border-top:1px solid var(--line);min-height:72px;transition:background-color .18s var(--ease);justify-content:space-between;align-items:center;gap:16px;display:flex}.material-row:last-child{border-bottom:1px solid var(--line)}.material-row>a:first-child{gap:3px;min-width:0;padding:12px 0;display:grid}.material-row>a:last-child{min-width:48px;min-height:48px;color:var(--accent);justify-content:center;align-items:center;font-size:.75rem;font-weight:750;display:inline-flex}@media (hover:hover){.lecture-row:hover,.material-row:hover{background:var(--soft)}}@media (min-width:600px){body{background:var(--pine)}.landing{background:var(--pine);padding:20px 20px 72px}.landing__hero{border-radius:24px 24px 0 0;padding:42px}.landing__action,.landing__purpose,.landing__preview,.landing__footer{background:var(--canvas)}.landing__action{width:min(100%,80rem);margin:auto;padding-inline:42px}.landing__purpose,.landing__preview,.landing__footer{width:min(100%,80rem);padding-inline:max(42px,8vw)}.app-background{background:var(--pine);padding:20px 20px 0}.app-surface{border-radius:24px 24px 0 0;min-height:calc(100svh - 20px);padding:32px 32px 100px}.mobile-nav{left:20px;right:20px}.mobile-header{margin-bottom:44px}}@media (min-width:1024px){.landing{width:min(100%,80rem);margin:auto;padding:clamp(20px,3vh,32px)}.landing__hero{min-height:min(40rem,100svh - 11rem);padding:clamp(44px,6vw,72px)}.landing__hero h1{font-size:clamp(4rem,5vw,4.5rem)}.app-background{background:var(--pine);padding:clamp(20px,2.2vw,32px)}.desktop-rail{z-index:1;width:clamp(190px,16vw,238px);color:var(--pine-light);flex-direction:column;padding:24px 20px;display:flex;position:fixed;inset:clamp(20px,2.2vw,32px) auto clamp(20px,2.2vw,32px) clamp(20px,2.2vw,32px)}.desktop-rail nav{gap:4px;margin-top:54px;display:grid}.desktop-rail nav a{color:#a6b4a9;align-items:center;min-height:48px;font-size:.875rem;font-weight:650;display:flex}.desktop-rail nav a.is-active{color:#fff}.desktop-rail nav a.is-active:before{content:"";background:#9fe0b9;width:12px;height:2px;margin-right:10px}.desktop-rail>p{color:#7e9384;font:.75rem/1.4 var(--mono);margin:auto 0 0}.app-surface{z-index:1;border-radius:24px;min-height:calc(100svh - 2*clamp(20px,2.2vw,32px));margin-left:clamp(190px,16vw,238px);padding:clamp(40px,6vh,64px) clamp(40px,6vw,88px);position:relative}.mobile-header,.mobile-nav{display:none}.app-surface>*{width:min(100%,var(--content))}.page-head{margin-bottom:42px}.page-head h1{font-size:3.25rem}.lecture-row{grid-template-columns:4.25rem 3rem minmax(0,1fr) 1.25rem;padding:18px 8px}.lecture-row strong{font-size:.9375rem}}@media (min-width:1024px) and (max-height:760px){.app-background{padding:16px}.desktop-rail{padding-block:18px;inset:16px auto 16px 16px}.desktop-rail nav{margin-top:32px}.app-surface{min-height:calc(100svh - 32px);margin-left:210px;padding-top:32px;padding-bottom:32px}.landing{padding-block:16px}.landing__hero{min-height:32rem;padding-block:36px}.landing__hero h1{font-size:3.75rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}:root{--ease-soft:cubic-bezier(.22, 1, .36, 1);--dur-base:.3s;--dur-fast:.2s;--nav-motion:cubic-bezier(.22, 1, .36, 1);--nav-duration:.24s}.section-nav{position:relative}.section-nav__marker{z-index:1;background:var(--accent);pointer-events:none;transition:transform var(--nav-duration) var(--nav-motion);display:block;position:absolute}.section-nav a{z-index:2;transition:color .22s var(--nav-motion), transform .22s var(--nav-motion);position:relative}.section-nav a:active{transform:scale(.985)}.section-nav a[aria-current=page]{color:var(--nav-active)}.section-nav--mobile{--nav-active:var(--ink)}.section-nav--mobile .section-nav__marker{width:25%;height:2px;transform:translateX(calc(var(--section-index) * 100%));bottom:2px;left:0;right:0}.section-nav--mobile a.is-active:after{display:none}.section-nav--desktop{--nav-active:#fff}.section-nav--desktop .section-nav__marker{width:2px;height:48px;transform:translateY(calc(var(--section-index) * 52px));background:#9fe0b9;top:0;bottom:auto;left:0}.desktop-rail .section-nav--desktop a.is-active:before{display:none}.lecture-row{transition-duration:.22s}@media (prefers-reduced-motion:reduce){.section-nav__marker,.section-nav a{transition:none}.section-nav a:active{transform:none}}.mobile-nav{grid-template-columns:repeat(4,1fr)}.notes-catalog{gap:16px;display:grid}.notes-filters{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:16px 0;display:grid}.notes-filters label{gap:6px;display:grid}.notes-filters label span{color:var(--muted);font:600 .6875rem/1.2 var(--mono);text-transform:uppercase;letter-spacing:.04em}.notes-filters select{width:100%;min-height:44px;color:var(--ink);background:var(--canvas);border:1px solid var(--line);font:500 .8125rem/1.2 var(--sans);padding:0 8px}.notes-catalog__count{color:var(--muted);font:600 .75rem/1.3 var(--mono);margin:0}.collapsible-section{border-top:1px solid var(--line)}.collapsible-section>summary{cursor:pointer;list-style:none}.collapsible-section>summary::-webkit-details-marker{display:none}.collapsible-section>summary .section-heading{min-height:56px;margin:0}.collapsible-section>summary strong{letter-spacing:-.03em;font-size:1.125rem}.collapsible-section>summary .content-kicker{margin-top:4px;display:block}.collapsible-section__content{opacity:0;pointer-events:none;transition:grid-template-rows .42s var(--ease-soft), opacity .3s ease-out, transform .42s var(--ease-soft);grid-template-rows:0fr;display:grid;transform:translateY(-8px)}.collapsible-section__content>*{min-height:0;overflow:hidden}.collapsible-section[data-collapsed=false]>.collapsible-section__content{opacity:1;pointer-events:auto;grid-template-rows:1fr;transform:translateY(0)}.collapsible-section__marker{color:var(--accent);font:700 1.25rem/1 var(--mono);transition:transform .42s var(--ease-soft)}.collapsible-section[data-collapsed=false]>summary .collapsible-section__marker{transform:rotate(180deg)}.guide-overview>.guide-list{padding-top:4px}.guide-group{border-top:1px solid var(--line)}.guide-group>summary .section-heading{min-height:52px}.guide-group>summary strong{font-size:1rem;font-weight:700}@media (prefers-reduced-motion:reduce){.collapsible-section__content{transition:none;transform:none!important}.collapsible-section__marker{transition:none}}@media (min-width:700px){.notes-filters{grid-template-columns:repeat(4,minmax(0,1fr))}}.animated-logo{justify-content:center;align-items:center;width:max-content;line-height:0;display:inline-flex}.guide-link{margin:-14px 0 28px}.guide-link a{min-height:48px;color:var(--accent);align-items:center;font-size:.8125rem;font-weight:750;display:inline-flex}.notice-section{margin:0 0 30px}.notice-section .section-heading{margin-bottom:12px}.content-kicker{color:var(--muted);font:600 12px/1.3 var(--mono);text-transform:uppercase;letter-spacing:.04em}.notice-list{border-top:1px solid var(--line)}.notice-row{border-bottom:1px solid var(--line);grid-template-columns:5.25rem minmax(0,1fr);gap:12px;padding:16px 4px;display:grid}.notice-row__kind{color:var(--accent);font:600 12px/1.3 var(--mono);text-transform:uppercase;padding-top:3px}.notice-row h3{margin:0;font-size:.9375rem}.notice-row p{color:var(--muted);margin:4px 0 8px;font-size:.8125rem;line-height:1.5}.notice-row small{color:var(--muted);font:600 12px/1.3 var(--mono)}.guide-list{gap:34px;display:grid}.guide-group .section-heading{margin-bottom:10px}.guide-rows{border-top:1px solid var(--line)}.guide-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;min-height:68px;padding:12px 4px;display:flex}.guide-row>div{gap:4px;display:grid}.guide-row strong{font-size:.875rem}.guide-row span{color:var(--muted);font-size:.75rem;line-height:1.35}.guide-row a{min-height:48px;color:var(--accent);white-space:nowrap;align-items:center;font-size:.75rem;font-weight:750;display:inline-flex}.animated-logo__svg{display:block;overflow:visible}.page-reveal--leaving{pointer-events:none;animation:.15s cubic-bezier(.4,0,1,1) both page-sheet-leave}.page-reveal--entering{animation:.36s cubic-bezier(.22,1,.36,1) both page-sheet-enter}[data-transition-link]:active{transform:translateY(1px)scale(.985)}@keyframes page-sheet-leave{to{opacity:.18;transform:translate(-14px)scale(.992)}}@keyframes page-sheet-enter{0%{opacity:.12;transform:translate(18px)scale(.994)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.page-reveal--leaving,.page-reveal--entering{animation:none}[data-transition-link]:active{transform:none}}.animated-logo__line{stroke-dasharray:var(--al-line-len);stroke-dashoffset:var(--al-line-len);opacity:.35;will-change:stroke-dashoffset, opacity}.animated-logo__wordmark{opacity:0;will-change:opacity}@media (hover:hover){.logo--interactive:hover .animated-logo__line,.logo--interactive:focus-visible .animated-logo__line{animation:al-hover-draw .9s var(--ease-soft) both}.logo--interactive:hover .animated-logo__line--2,.logo--interactive:focus-visible .animated-logo__line--2{animation-delay:.14s}.logo--interactive:hover .animated-logo__line--3,.logo--interactive:focus-visible .animated-logo__line--3{animation-delay:.28s}.logo--interactive:hover .animated-logo__wordmark,.logo--interactive:focus-visible .animated-logo__wordmark{animation:al-hover-wordmark .8s var(--ease-soft) .42s both}}@keyframes al-hover-draw{0%{stroke-dashoffset:var(--al-line-len);opacity:.35}60%,to{opacity:1}to{stroke-dashoffset:0}}@keyframes al-hover-wordmark{0%{opacity:0;clip-path:inset(0 100% 0 0);transform:translate(-6px)}to{opacity:1;clip-path:inset(0);transform:translate(0)}}.animated-logo--static .animated-logo__line{stroke-dashoffset:0;opacity:1;will-change:auto}.animated-logo--static .animated-logo__wordmark{opacity:1;will-change:auto}.animated-logo--standard .animated-logo__line--1{animation:al-draw .36s var(--ease-soft) 0s forwards}.animated-logo--standard .animated-logo__line--2{animation:al-draw .36s var(--ease-soft) 60ms forwards}.animated-logo--standard .animated-logo__line--3{animation:al-draw .36s var(--ease-soft) .12s forwards}.animated-logo--standard .animated-logo__wordmark{animation:al-wordmark .24s var(--ease-soft) .18s forwards}.animated-logo--splash .animated-logo__line--1{animation:al-reveal-wave .7s var(--ease-soft) 0s both}.animated-logo--splash .animated-logo__line--2{animation:al-reveal-wave .7s var(--ease-soft) .14s both}.animated-logo--splash .animated-logo__line--3{animation:al-reveal-wave .7s var(--ease-soft) .28s both}.animated-logo--splash .animated-logo__line{stroke-dashoffset:0}.animated-logo--splash .animated-logo__wordmark{animation:al-wordmark-wave .42s var(--ease-soft) .62s both}.animated-logo--splash .animated-logo__svg{animation:.52s cubic-bezier(.16,1,.3,1) .62s both splash-logo-assemble}@keyframes al-draw{0%{stroke-dashoffset:var(--al-line-len);opacity:.35}60%,to{opacity:1}to{stroke-dashoffset:0}}@keyframes al-wordmark{0%{opacity:0}to{opacity:1}}@keyframes al-draw-wave{0%{stroke-dashoffset:var(--al-line-len);opacity:.25;transform:translate(-3px)}65%{opacity:1}to{stroke-dashoffset:0;opacity:1;transform:translate(0)}}@keyframes al-reveal-wave{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@keyframes al-wordmark-wave{0%{opacity:0;clip-path:inset(0 100% 0 0);transform:translate(-6px)}to{opacity:1;clip-path:inset(0);transform:translate(0)}}@keyframes splash-logo-assemble{0%{transform:translate(clamp(86px,15vw,142px))}to{transform:translate(clamp(32px,6vw,58px))}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.animated-logo__line,.animated-logo__wordmark,.animated-logo__svg{animation:none!important}.animated-logo__line{stroke-dashoffset:0;opacity:1}.animated-logo__wordmark{opacity:1;transform:none}.splash-screen,.loading-screen--fullscreen{display:none!important}.page-transition-wrapper{opacity:1!important;transition:none!important;transform:none!important}.page-reveal--content{animation:none!important}}.splash-screen{z-index:9999;pointer-events:auto;place-items:center;display:grid;position:fixed;inset:0;overflow:hidden}.splash-screen__backdrop{background:var(--pine);clip-path:circle(150vmax);position:absolute;inset:0}.splash-screen__content{z-index:1;place-items:center;max-width:calc(100vw - 48px);display:grid;position:relative}.splash-screen__content .animated-logo__svg{width:clamp(13rem,28vw,23rem);max-width:calc(100vw - 48px);height:auto}.splash-screen--collapsing .splash-screen__backdrop{animation:.7s cubic-bezier(.16,1,.3,1) forwards splash-backdrop-fade}.splash-screen--collapsing .splash-screen__content{transform-origin:50%;animation:.5s cubic-bezier(.16,1,.3,1) forwards splash-brand-release}@keyframes splash-backdrop-fade{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.025)}}@keyframes splash-brand-release{0%{opacity:1;transform:translate(0)scale(1)}to{opacity:0;transform:translate(12vw,-5vh)scale(.94)}}.desktop-rail .logo,.desktop-rail .animated-logo{max-width:100%}.desktop-rail .animated-logo__svg{max-width:100%;height:auto}.desktop-rail__footer{margin-top:auto;display:grid}.desktop-rail__footer a{color:#7e9384;align-items:center;width:max-content;min-height:48px;font-size:.75rem;font-weight:650;display:inline-flex}.desktop-rail__footer p{color:#7e9384;font:.75rem/1.4 var(--mono);margin:0}.loading-screen{justify-content:center;align-items:center;padding:32px;display:flex}.loading-screen--fullscreen{z-index:9000;position:fixed;inset:0}.loading-screen--dark,.loading-screen--light{background:var(--pine)}.loading-screen--inline{background:0 0;min-height:160px}.loading-screen__content{justify-items:center;display:grid}.loading-screen--leaving{opacity:0;pointer-events:none;transition:opacity var(--dur-base) var(--ease-soft)}.inline-loader{justify-content:center;align-items:center;line-height:0;display:inline-flex}@media (prefers-reduced-motion:no-preference){.page-reveal--content{animation:page-content-enter .2s var(--ease-soft) both}a,button,input,select,.lecture-row,.material-row,.schedule-row,.materials-list li>a,.lecture-row__arrow,.materials-list b{transition:background-color var(--dur-fast) var(--ease-soft), color var(--dur-fast) var(--ease-soft), transform var(--dur-fast) var(--ease-soft)}.lecture-row:active,.material-row:active,.schedule-row:active{transform:scale(.985)}}@keyframes page-content-enter{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.lecture-row,.material-row,.materials-list li>a{position:relative}.lecture-row__arrow,.materials-list b,.material-row>a:last-child{transition:transform var(--dur-fast) var(--ease-soft)}@media (hover:hover) and (pointer:fine){.lecture-row:hover,.material-row:hover,.materials-list li>a:hover{background:var(--soft);box-shadow:inset 2px 0 0 var(--accent)}.lecture-row:hover .lecture-row__arrow,.materials-list li>a:hover b,.material-row>a:last-child:hover{transform:translate(3px)}.desktop-rail nav a:hover,.mobile-nav a:hover,.section-heading a:hover,.week-day__title a:hover,.back-link:hover,.next-note a:hover,.landing__action:hover,.landing__preview a:hover,.landing__footer a:hover,.schedule__source a:hover{color:var(--accent)}.desktop-rail nav a:hover{color:#fff}.desktop-rail__footer a:hover{color:#a6b4a9}}@media (min-width:1024px){.app-background{padding:clamp(24px,2.2vw,32px)}.desktop-rail{width:clamp(225px,17vw,258px);inset:clamp(24px,2.2vw,32px) auto clamp(24px,2.2vw,32px) clamp(24px,2.2vw,32px)}.app-surface{border-radius:clamp(32px,3vw,40px);min-height:calc(100svh - 2*clamp(24px,2.2vw,32px));margin-left:clamp(225px,17vw,258px);padding:clamp(40px,6vh,64px) clamp(40px,6vw,88px)}.landing{background:var(--pine);width:100%;max-width:none;min-height:100svh;margin:0;padding:clamp(24px,2.2vw,32px)}.landing>.page-reveal{grid-template-columns:minmax(18rem,.72fr) minmax(0,1.28fr);gap:clamp(18px,2vw,32px);min-height:calc(100svh - 2*clamp(24px,2.2vw,32px));display:grid}.landing__hero{border-radius:clamp(32px,3vw,40px);align-self:start;min-height:calc(100svh - 2*clamp(24px,2.2vw,32px));padding:clamp(40px,4vw,64px);position:sticky;top:clamp(24px,2.2vw,32px)}.landing__hero-copy{margin-top:auto;margin-bottom:auto}.landing__hero h1{font-size:clamp(3.25rem,4.2vw,4.5rem)}.landing__paper{background:var(--canvas);border-radius:clamp(32px,3vw,40px);flex-direction:column;min-width:0;display:flex;overflow:hidden}.landing__action,.landing__purpose,.landing__preview,.landing__footer{background:0 0;width:auto;margin:0;padding-left:clamp(32px,4vw,64px);padding-right:clamp(32px,4vw,64px)}.landing__action{padding-top:18px;padding-bottom:18px}.landing__purpose,.landing__preview,.landing__footer{padding-top:clamp(30px,4vw,56px);padding-bottom:clamp(30px,4vw,56px)}.landing__footer{margin-top:auto}.schedule__day{grid-column:2}}.schedule-agenda ol{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.schedule-row{border-bottom:1px solid var(--line);grid-template-columns:4rem minmax(0,1fr);gap:12px;min-height:68px;padding:14px 0;display:grid;position:relative}.schedule-row time{color:var(--accent);font:600 .75rem/1.25 var(--mono);align-content:start;gap:2px;display:grid}.schedule-row time span{color:var(--muted)}.schedule-row>div{align-content:start;gap:4px;min-width:0;display:grid}.schedule-row strong{font-size:.875rem;line-height:1.35}.schedule-row p{color:var(--muted);margin:0;font-size:.75rem;line-height:1.45}.schedule-row a{min-height:48px;color:var(--accent);align-items:center;margin-top:2px;font-size:.8125rem;font-weight:750;display:inline-flex}.schedule-row:before{background:var(--accent);content:"";opacity:0;width:2px;transition:opacity var(--dur-fast) var(--ease-soft);position:absolute;top:0;bottom:0;left:-4px}@media (hover:hover) and (pointer:fine){.schedule-row:hover{background:var(--soft)}.schedule-row:hover:before{opacity:1}}@media (min-width:600px){.schedule-row{grid-template-columns:5rem minmax(0,1fr);padding-inline:8px}}@media (min-width:1024px){.schedule-row{padding-left:12px;padding-right:12px}}.schedule-screen__links{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:0 14px;display:flex}.schedule-screen__links>a,.schedule-context{min-height:48px;color:var(--accent);align-items:center;font-size:.8125rem;font-weight:750;display:inline-flex}.week-agenda{gap:40px;display:grid}.week-agenda>.schedule-context{width:max-content;margin-bottom:-20px}.week-agenda__week{gap:18px;display:grid}.week-agenda__days{gap:28px;display:grid}.week-agenda__day{border-top:1px solid var(--line);padding-top:14px}.week-agenda__day h2{margin:0}.week-agenda__day h2 a{letter-spacing:-.03em;align-items:center;min-height:48px;font-size:1.125rem;display:inline-flex}.week-agenda__day .schedule-agenda{margin-top:4px}@media (min-width:1024px){.week-agenda{gap:52px}.week-agenda__week{grid-template-columns:7rem minmax(0,1fr);gap:28px}.week-agenda__week>.schedule__week-label{padding-top:14px}.week-agenda__days{gap:30px}}.schedule__controls{border-bottom:1px solid var(--line);grid-template-columns:1fr;gap:12px;margin-bottom:36px;padding-bottom:28px;display:grid}.schedule__controls label{color:var(--muted);font:600 .75rem/1.3 var(--mono);gap:6px;display:grid}.schedule__controls select{border:1px solid var(--line);width:100%;min-height:48px;color:var(--ink);font:650 .9375rem/1.3 var(--sans);cursor:pointer;appearance:auto;background:#fff;border-radius:14px;padding:0 13px}.schedule__weeks{gap:38px;display:grid}.schedule__week{gap:18px;display:grid}.schedule__week-label{color:var(--accent);font:600 .75rem/1.3 var(--mono);margin:0}.schedule__day{border-top:1px solid var(--line);padding-top:14px}.schedule__day h2{letter-spacing:-.02em;margin:0 0 4px;font-size:1rem}.schedule__day ol{margin:0;padding:0;list-style:none}.schedule__day li{border-bottom:1px solid var(--line);grid-template-columns:4rem minmax(0,1fr);gap:12px;min-height:68px;padding:14px 0;display:grid}.schedule__day time{color:var(--accent);font:600 .75rem/1.25 var(--mono);align-content:start;gap:2px;display:grid}.schedule__day time span{color:var(--muted)}.schedule__day li>div{align-content:start;gap:4px;display:grid}.schedule__day strong{font-size:.875rem;line-height:1.35}.schedule__day li p{color:var(--muted);flex-wrap:wrap;gap:0 6px;margin:0;font-size:.75rem;line-height:1.45;display:flex}.schedule__source{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 20px;margin-top:34px;padding-top:18px;display:flex}.schedule__source p{color:var(--muted);font:.75rem/1.45 var(--mono);margin:0}.schedule__source a{min-height:48px;color:var(--accent);align-items:center;font-size:.8125rem;font-weight:750;display:inline-flex}@media (hover:hover){.schedule__controls select:hover{border-color:var(--accent);background:var(--soft)}.schedule__day li:hover{background:var(--soft)}}@media (min-width:600px){.schedule__controls{grid-template-columns:1.4fr .75fr .75fr;gap:16px}.schedule__day li{grid-template-columns:5rem minmax(0,1fr);padding-inline:8px}}@media (min-width:1024px){.schedule{max-width:var(--content)}.schedule__controls{margin-bottom:42px}.schedule__weeks{gap:48px}.schedule__week{grid-template-columns:7rem minmax(0,1fr);gap:28px}.schedule__week-label{padding-top:14px}.schedule__day{grid-template-columns:8rem minmax(0,1fr);gap:28px;display:grid}.schedule__day h2{padding-top:14px}.schedule__day ol{border-top:0}.schedule__day li{padding-left:12px;padding-right:12px}}.landing__action,.landing__purpose,.landing__preview,.landing__contact{border-bottom:0}.landing__footer p:last-child{border-top:0;padding-top:0}.flow-divider{width:min(calc(100% - 48px),var(--content));color:var(--accent);margin:0 auto;padding:0}.flow-divider svg{width:100%;height:24px;display:block;overflow:visible}.flow-divider__line{stroke:currentColor;stroke-width:1.75px;stroke-linecap:round;opacity:.88}.landing__contact{width:min(calc(100% - 48px),var(--content));margin:auto;padding:32px 0}.landing__eyebrow{color:var(--accent);font:600 .75rem/1.4 var(--mono);margin:0 0 14px}.landing__contact h2{letter-spacing:-.055em;max-width:18ch;margin:0;font-size:clamp(1.75rem,7vw,2.75rem);line-height:1.06}.landing__contact>p:not(.landing__eyebrow){max-width:42rem;color:var(--muted);margin:14px 0 0;line-height:1.6}.landing__contact-links{flex-wrap:wrap;gap:0 24px;display:flex}.landing__contact-action{min-height:48px;color:var(--accent);align-items:center;gap:10px;margin-top:20px;font-weight:750;display:inline-flex}.landing__interactive,.landing__interactive-arrow{transition:color var(--dur-fast) var(--ease-soft),transform var(--dur-fast) var(--ease-soft)}@media (hover:hover) and (pointer:fine){.landing__interactive:hover{color:var(--ink);transform:translateY(-2px)}.landing__hero-action:hover{color:#fff}.landing__interactive:hover .landing__interactive-arrow{transform:translate(4px,-2px)}}@media (min-width:600px){.flow-divider,.landing__contact{width:min(100%,80rem);padding-left:max(42px,8vw);padding-right:max(42px,8vw)}.flow-divider svg{height:32px}}@media (min-width:1024px){.flow-divider,.landing__contact{width:auto;margin:0;padding-left:clamp(32px,4vw,64px);padding-right:clamp(32px,4vw,64px)}.flow-divider svg{height:36px}.landing__contact{padding-top:clamp(28px,3vw,44px);padding-bottom:clamp(28px,3vw,44px)}}@media (prefers-reduced-motion:reduce){.landing__interactive:hover,.landing__interactive:hover .landing__interactive-arrow{transform:none}}.landing__hero-action{gap:18px;min-height:64px;margin-top:32px;font-size:1.25rem}.landing__logo .animated-logo__svg{width:auto;height:clamp(4.75rem,8vw,5.5rem)}.landing__situations{width:min(calc(100% - 48px),var(--content));margin:auto;padding:32px 0}.landing__situations h2{letter-spacing:-.055em;max-width:18ch;margin:0;font-size:clamp(1.75rem,7vw,2.75rem);line-height:1.06}.landing__situations ol{border-top:1px solid var(--line);counter-reset:situation;margin:24px 0 0;padding:0;list-style:none}.landing__situations li{border-bottom:1px solid var(--line);min-height:64px;color:var(--muted);counter-increment:situation;grid-template-columns:2.5rem minmax(0,1fr);align-items:start;gap:12px;padding:16px 0;line-height:1.5;display:grid}.landing__situations li:before{color:var(--accent);font:600 .75rem/1.5 var(--mono);content:counter(situation,decimal-leading-zero)}.landing__meta{max-width:42rem;color:var(--muted);font:500 .75rem/1.4 var(--mono);letter-spacing:.01em;margin:12px 0 0}.landing__path{width:min(calc(100% - 48px),var(--content));margin:auto;padding:32px 0}.landing__path h2{letter-spacing:-.055em;max-width:18ch;margin:0;font-size:clamp(1.75rem,7vw,2.75rem);line-height:1.06}.landing__path-lead{max-width:38rem;color:var(--muted);margin:14px 0 0;line-height:1.6}.landing__path-list{border-top:1px solid var(--line);counter-reset:path-step;margin:24px 0 0;padding:0;list-style:none}.landing__path-list li{border-bottom:1px solid var(--line);counter-increment:path-step;grid-template-columns:4.25rem minmax(0,1fr);gap:14px;padding:16px 0;display:grid}.landing__path-list li>span{color:var(--accent);font:600 .75rem/1.5 var(--mono)}.landing__path-list li>p{color:var(--muted);margin:0;line-height:1.55}@media (min-width:600px){.landing__situations{width:min(100%,80rem);padding-left:max(42px,8vw);padding-right:max(42px,8vw)}}@media (min-width:1024px){.landing__situations{width:auto;margin:0;padding:clamp(28px,3vw,44px) clamp(32px,4vw,64px)}}@media (min-width:600px){.landing__path{width:min(100%,80rem);padding-left:max(42px,8vw);padding-right:max(42px,8vw)}}@media (min-width:1024px){.landing__path{width:auto;margin:0;padding:clamp(28px,3vw,44px) clamp(32px,4vw,64px)}}.editorial-note{margin-top:8px}.editorial-takeaway{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0 26px}.editorial-label{color:var(--accent);font:600 .75rem/1.35 var(--mono);text-transform:uppercase;letter-spacing:.06em;margin:0 0 8px}.editorial-takeaway>p:last-child{max-width:42rem;margin:0;font-size:1.1rem;line-height:1.55}.editorial-section{border-bottom:1px solid var(--line);padding:26px 0}.editorial-section h2{margin:0 0 14px}.editorial-section p{margin:0 0 12px;line-height:1.65}.editorial-section p:last-child{margin-bottom:0}.editorial-section ul{gap:8px;margin:14px 0 0;padding-left:20px;line-height:1.55;display:grid}.editorial-formula{background:var(--soft);padding:12px 16px;overflow:auto}.editorial-formula code{font:500 1rem/1.5 var(--mono)}.editorial-diagram__steps{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));list-style:none;gap:8px!important;padding:0!important;display:grid!important}.editorial-diagram__steps li{border:1px solid var(--line);background:var(--soft);gap:10px;min-height:92px;padding:14px;display:grid}.editorial-diagram__steps span{color:var(--accent);font:500 .75rem/1 var(--mono)}.editorial-diagram__steps strong{font-size:.875rem;line-height:1.35}.editorial-memory{border-bottom:0}.editorial-next-step{border-top:1px solid var(--line)}.editorial-sources ul{padding:0;list-style:none}.editorial-sources li{border-top:1px solid var(--line);gap:4px;padding:12px 0;display:grid}.editorial-sources li:last-child{border-bottom:1px solid var(--line)}.editorial-sources a{color:var(--accent);font-weight:700}.editorial-sources span{color:var(--muted);font-size:.8125rem}.notes-index{margin:0 0 40px}.notes-index__rows{border-top:1px solid var(--line)}.notes-index__row{border-bottom:1px solid var(--line);gap:4px;padding:16px 28px 16px 4px;display:grid;position:relative}.notes-index__row:hover{background:var(--soft)}.notes-index__row strong{font-size:.9375rem}.notes-index__row>span:last-of-type{max-width:52rem;color:var(--muted);font-size:.8125rem;line-height:1.45}.notes-index__meta{color:var(--accent);font:600 .75rem/1.35 var(--mono)}.notes-index__row b{color:var(--accent);position:absolute;top:50%;right:4px;transform:translateY(-50%)}.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}.page-head__line{flex-wrap:wrap}@media (min-width:1024px) and (max-height:760px){.app-background{padding:16px}.desktop-rail{width:clamp(225px,17vw,258px);padding-block:18px;inset:16px auto 16px 16px}.app-surface{height:calc(100svh - 32px);min-height:calc(100svh - 32px);margin-left:clamp(225px,17vw,258px);padding-top:32px;padding-bottom:32px;overflow-y:auto}}.legal-nav{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:8px 20px;margin:-16px 0 34px;padding-bottom:16px;display:flex}.legal-nav a{min-height:40px;color:var(--muted);align-items:center;font-size:.8125rem;font-weight:700;display:inline-flex}.legal-nav a.is-active{color:var(--accent)}.legal-document{max-width:44rem}.legal-document section{border-top:1px solid var(--line);padding:26px 0}.legal-document h2{letter-spacing:-.03em;margin:0 0 12px;font-size:1.125rem}.legal-document p{max-width:42rem;margin:0 0 12px;font-size:.9375rem;line-height:1.7}.legal-document a{color:var(--accent);text-underline-offset:3px;text-decoration:underline}.legal-document footer{color:var(--muted);flex-wrap:wrap;gap:10px 24px;padding:20px 0;font-size:.75rem;display:flex}.analytics-consent{z-index:5;right:auto;bottom:max(16px,env(safe-area-inset-bottom));left:max(16px,env(safe-area-inset-left));background:var(--pine);width:min(440px,100vw - 32px);color:var(--pine-light);pointer-events:none;border:1px solid #9fe0b938;border-radius:20px;padding:20px;position:fixed;box-shadow:0 20px 48px #0000003d,0 4px 12px #0000001f}.analytics-consent>*{pointer-events:auto}.analytics-consent p{margin:0 0 16px;font-size:.875rem;line-height:1.5}.analytics-consent strong{color:#fff;margin-bottom:3px;display:inline-block}.analytics-consent div{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.analytics-consent button,.analytics-consent a{color:#fff;min-height:48px;font:700 .75rem var(--sans);background:0 0;border:0;border-radius:12px;align-items:center;padding:0 16px;text-decoration:none;transition:background-color .16s,color .16s;display:inline-flex}.analytics-consent button:first-child{background:var(--accent)}.analytics-consent button:first-child:hover{background:#198b5b}.analytics-consent button:nth-child(2),.analytics-consent a{color:var(--pine-light);text-underline-offset:3px;text-decoration:underline}.analytics-consent button:nth-child(2):hover,.analytics-consent a:hover{color:#fff}@media (min-width:800px){.analytics-consent{bottom:max(24px,env(safe-area-inset-bottom));left:max(24px,env(safe-area-inset-left));width:min(440px,100vw - 48px)}.analytics-settings-link{color:var(--accent);font:inherit;cursor:pointer;text-underline-offset:3px;background:0 0;border:0;text-decoration:underline}.editorial-diagram__visual{border:1px solid var(--line);background:var(--soft);margin:20px 0 24px;padding:18px 8px 4px;overflow:hidden}.editorial-diagram__visual svg{width:100%;min-width:560px;height:auto;display:block}.diagram-line{stroke:var(--accent);stroke-width:2px;stroke-dasharray:4 5}.diagram-node{fill:var(--surface);stroke:var(--accent);stroke-width:2px}.editorial-diagram__visual text{fill:var(--accent);font:600 11px var(--mono)}.editorial-diagram__visual foreignObject div{color:var(--ink);font:600 11px/1.25 var(--sans);text-align:center}.editorial-diagram__visual--logic .diagram-node{fill:#dff1e5}.editorial-diagram__visual--economics .diagram-line{stroke-dasharray:none}.schedule-row__link{min-width:0;color:inherit;grid-column:1/-1;grid-template-columns:4rem minmax(0,1fr);align-content:start;gap:12px;text-decoration:none;display:grid}.schedule-row__link>div{align-content:start;gap:4px;min-width:0;display:grid}.schedule-row__note{color:var(--accent);font-size:.8125rem;font-weight:750}.schedule-row__shared{color:var(--accent);font-size:.75rem;font-weight:650}.schedule-row__status{color:var(--muted);font-size:.75rem}.schedule__day li>div{align-content:start;gap:4px;min-width:0;display:grid}@media (min-width:600px){.schedule-row__link{grid-template-columns:5rem minmax(0,1fr)}}.editorial-diagram__visual .diagram-grid{fill:var(--surface);stroke:var(--accent);stroke-width:2px}.editorial-diagram__visual .diagram-grid-lines{stroke:var(--line);stroke-width:1px}.editorial-diagram__visual .diagram-axis,.editorial-diagram__visual .diagram-curve{fill:none;stroke:var(--accent);stroke-width:2px}.editorial-diagram__visual .diagram-box{fill:var(--surface);stroke:var(--accent);stroke-width:2px}.editorial-diagram__visual .diagram-arrow{stroke:var(--accent);stroke-width:2px;marker-end:url(#arrow)}.editorial-diagram__visual .diagram-sheet{fill:var(--surface);stroke:var(--ink);stroke-width:2px}.editorial-diagram__visual .diagram-frame,.editorial-diagram__visual .diagram-titleblock{fill:none;stroke:var(--accent);stroke-width:2px}.landing__meta,.landing__preview>p:first-child{color:var(--muted);font:500 .8125rem/1.45 var(--sans);letter-spacing:0}.landing__preview>p:first-child{margin:0 0 16px}.lecture-detail__context{color:var(--muted);flex-wrap:wrap;gap:5px 12px;margin:12px 0 38px;font-size:.9375rem;line-height:1.45;display:flex}.lecture-detail__shared{color:var(--accent);font-weight:650}.lecture-detail__context span+span:before,.lecture-detail__context time:before,.notes-index__context span+span:before,.notes-index__context time:before{color:var(--line);content:"·";margin-right:12px}.lecture-detail__context time,.notes-index__context time{font:600 .8125rem/1.45 var(--mono)}.lecture-row__subject{color:var(--muted);font:700 .75rem/1.35 var(--sans)}.lecture-row__arrow{color:var(--accent)}.notes-index__context{color:var(--muted);flex-wrap:wrap;gap:5px 12px;font-size:.8125rem;line-height:1.4;display:flex}.notes-index__context span+span,.notes-index__context time{position:relative}.notes-index__meta{color:var(--muted);font:500 .8125rem/1.4 var(--sans)}.content-kicker,.notice-row__kind{color:var(--muted);font-family:var(--sans);text-transform:none;letter-spacing:0}.editorial-label{color:var(--muted);font-family:var(--sans)}.schedule-row time{color:var(--muted)}.schedule-hub{gap:24px;display:grid}.schedule-hub__switch{border-bottom:1px solid var(--line);gap:20px;display:flex}.schedule-hub__switch button{min-height:48px;color:var(--muted);font:700 .8125rem/1 var(--sans);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;padding:0}.schedule-hub__switch button.is-active{color:var(--ink);border-bottom-color:var(--accent)}.group-overlay{z-index:20;padding:max(24px, env(safe-area-inset-top)) 24px max(24px, env(safe-area-inset-bottom));background:var(--pine);color:var(--pine-light);transition:opacity .18s var(--ease);place-items:center;display:grid;position:fixed;inset:0;overflow-y:auto}.group-overlay__panel{width:min(100%,34rem);transition:transform .18s var(--ease), opacity .18s var(--ease);gap:16px;display:grid}.group-overlay h2{letter-spacing:-.06em;margin:0;font-size:clamp(2rem,8vw,3rem);font-weight:600;line-height:1}.group-overlay__lead{color:#b9c6bb;max-width:34rem;margin:-2px 0 8px;line-height:1.55}.group-overlay__field{gap:8px;display:grid;position:relative}.group-overlay__field label{color:#b9c6bb;font:600 .75rem/1.3 var(--mono)}.group-overlay__field:after{content:"";pointer-events:none;border-bottom:2px solid #9fe0b9;border-right:2px solid #9fe0b9;width:9px;height:9px;position:absolute;bottom:19px;right:19px;transform:rotate(45deg)translateY(-2px)}.group-overlay__field select{background:color-mix(in srgb, var(--pine-light) 8%, var(--pine));width:100%;min-height:56px;color:var(--pine-light);font:650 1rem/1.2 var(--sans);appearance:none;transition:border-color .16s var(--ease), background-color .16s var(--ease), box-shadow .16s var(--ease);border:1px solid #9fe0b957;border-radius:18px;outline:none;padding:0 48px 0 18px}.group-overlay__field select:focus-visible{border-color:#9fe0b9;box-shadow:0 0 0 3px #9fe0b942}.group-overlay__leader{color:#b9c6bb;margin:-2px 0 0;font-size:.875rem}.group-overlay__confirm,.group-overlay__cancel{min-height:48px;color:var(--pine);font:750 1rem/1.3 var(--sans);text-align:center;cursor:pointer;transition:transform .16s var(--ease), background-color .16s var(--ease), opacity .16s var(--ease);background:#9fe0b9;border:1px solid #0000;border-radius:16px;padding:0 18px}.group-overlay__confirm{margin-top:2px}.group-overlay__confirm:disabled{opacity:.42;cursor:not-allowed}.group-overlay__confirm:not(:disabled):active{transform:scale(.985)}.group-overlay__cancel{color:#b9c6bb;background:0 0;border-color:#9fe0b94d;font-size:.875rem}.group-overlay--leaving{opacity:0;pointer-events:none}.group-overlay--leaving .group-overlay__panel{opacity:0;transform:translate(-14px)scale(.992)}.group-context{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;margin-top:18px;padding-top:14px;font-size:.8125rem;line-height:1.45;display:flex}.group-context button{min-width:48px;min-height:48px;color:var(--accent);font:750 .8125rem/1.3 var(--sans);cursor:pointer;background:0 0;border:0;justify-content:flex-end;align-items:center;padding:0;display:inline-flex}@media (min-width:1024px){.group-overlay{padding:48px}.group-overlay__panel{width:min(100%,38rem)}}:root{--surface-radius:clamp(32px,3vw,40px);--surface-shadow:-18px 18px 42px #05100a3d,-3px 4px 12px #05100a24}.app-surface,.landing__paper{box-shadow:none}@media (min-width:1024px){.app-surface,.landing__paper{box-shadow:var(--surface-shadow)}.app-surface,.landing__paper,.landing__hero{border-radius:var(--surface-radius)}}.landing__hero,.app-background{position:relative;overflow:clip hidden}.decorative-flow{z-index:0;pointer-events:none;isolation:isolate;color:var(--decorative-flow-color);mix-blend-mode:normal;position:absolute;inset:0;overflow:hidden}.decorative-flow svg{width:100%;min-width:720px;height:100%;display:block}.decorative-flow--landing{opacity:1}.decorative-flow--app{opacity:.85}.landing__hero>:not(.decorative-flow),.app-background>.app-surface,.app-background>.app-surface>*{z-index:1;position:relative}@media (max-width:599px){.app-background>.decorative-flow{display:none}}@media (min-width:1024px){.landing__hero{position:sticky}.app-background>.decorative-flow{position:fixed;inset:0}}:root{font-variant-emoji:text}.landing__hero-copy{transform:translateY(clamp(1rem,3.5vh,3rem))}@media (min-width:1024px){.landing{overflow-x:clip}.landing>.page-reveal{isolation:isolate;position:relative}.landing__hero{z-index:0;overflow:visible}.landing__hero>.decorative-flow--landing{z-index:0;inset:-18% -48% -18% -16%;overflow:visible}.landing__hero>.decorative-flow--landing svg{width:118%;min-width:960px;height:136%;transform:translate(-4%,-8%)}.landing__paper{z-index:1;position:relative}}.notice-group+.notice-group{margin-top:24px}.notice-group__title{color:var(--muted);font:600 12px/1.3 var(--mono);text-transform:uppercase;letter-spacing:.04em;margin:0 0 10px}.notice-row h4{margin:0;font-size:.9375rem;font-weight:750}}
.page-reveal--leaving{pointer-events:none;animation:.26s cubic-bezier(.4,0,1,1) both page-sheet-leave}.page-reveal--entering{animation:.42s cubic-bezier(.22,1,.36,1) both page-sheet-enter}[data-transition-link]:active{transform:translateY(1px)scale(.985)}@keyframes page-sheet-leave{to{opacity:.14;transform:translate(-16px)scale(.992)}}@keyframes page-sheet-enter{0%{opacity:.1;transform:translate(18px)scale(.994)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.page-reveal--leaving,.page-reveal--entering{animation:none}[data-transition-link]:active{transform:none}}
