@keyframes astroFadeInOut{0%{opacity:1}to{opacity:0}}@keyframes astroFadeIn{0%{opacity:0;mix-blend-mode:plus-lighter}to{opacity:1;mix-blend-mode:plus-lighter}}@keyframes astroFadeOut{0%{opacity:1;mix-blend-mode:plus-lighter}to{opacity:0;mix-blend-mode:plus-lighter}}@keyframes astroSlideFromRight{0%{transform:translate(100%)}}@keyframes astroSlideFromLeft{0%{transform:translate(-100%)}}@keyframes astroSlideToRight{to{transform:translate(100%)}}@keyframes astroSlideToLeft{to{transform:translate(-100%)}}@media (prefers-reduced-motion){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*),[data-astro-transition-scope]{animation:none!important}}.astro-route-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}:root{color-scheme:light;--surface:#fbfaf7;--raised:#fff;--sunk:#f3f1ec;--line:#e7e3da;--line-strong:#cdc6b7;--ink:#1b1a17;--ink-2:#4c4841;--ink-3:#736e65;--gold:#be830e;--gold-soft:#f6eedc;--st-completed:#1f7a52;--st-current:#b8860b;--st-planned:#4a67a8;--st-none:#aaa396;--warn:#b23c17;--track:#ebe7de;--shadow:0 1px 2px #2820120f, 0 8px 24px #2820120f;--radius:12px;--gutter:clamp(16px, 4vw, 32px);--sans:var(--font-sans,"Public Sans"), system-ui, sans-serif;--serif:var(--font-serif,"Source Serif 4"), Georgia, serif;--mono:var(--font-mono,"IBM Plex Mono"), ui-monospace, monospace;--ease:cubic-bezier(.2, .7, .2, 1)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--surface:#17181a;--raised:#1f2023;--sunk:#131416;--line:#2c2d31;--line-strong:#46474c;--ink:#f1efe9;--ink-2:#c6c2b8;--ink-3:#9a968c;--gold:#d4a03a;--gold-soft:#2c2518;--st-completed:#2f9a68;--st-current:#b07d12;--st-planned:#6384d0;--st-none:#5f5c56;--warn:#e0714c;--track:#2a2b2f;--shadow:0 1px 2px #0000004d, 0 8px 24px #0000004d}}:root[data-theme=dark]{color-scheme:dark;--surface:#17181a;--raised:#1f2023;--sunk:#131416;--line:#2c2d31;--line-strong:#46474c;--ink:#f1efe9;--ink-2:#c6c2b8;--ink-3:#9a968c;--gold:#d4a03a;--gold-soft:#2c2518;--st-completed:#2f9a68;--st-current:#b07d12;--st-planned:#6384d0;--st-none:#5f5c56;--warn:#e0714c;--track:#2a2b2f}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--surface);color:var(--ink);font:400 15.5px/1.55 var(--sans);-webkit-font-smoothing:antialiased;flex-direction:column;min-height:100dvh;margin:0;display:flex}a{color:inherit;text-underline-offset:3px;text-decoration-thickness:1px}:focus-visible{outline:2px solid var(--ink);outline-offset:2px;border-radius:6px}h1,h2,h3{margin:0;font-weight:600;line-height:1.2}button{font:inherit;color:inherit}[hidden]{display:none!important}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.skip{background:var(--ink);color:var(--surface);z-index:50;border-radius:8px;padding:8px 12px;position:absolute;top:-40px;left:12px}.skip:focus{top:12px}.masthead{z-index:20;background:color-mix(in oklab, var(--surface) 88%, transparent);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);position:sticky;top:0}.masthead__inner{max-width:1200px;padding:0 var(--gutter);align-items:center;gap:28px;height:60px;margin:0 auto;display:flex}.wordmark{font:600 1.08rem/1 var(--serif);letter-spacing:-.01em;white-space:nowrap;align-items:center;gap:10px;text-decoration:none;display:flex}.wordmark__mark{background:var(--gold);border-radius:2px;width:4px;height:22px}.tabs{gap:4px;margin-right:auto;display:flex}.tabs a{white-space:nowrap;color:var(--ink-3);border-radius:8px;padding:8px 12px;font-size:.92rem;text-decoration:none;transition:color .2s;position:relative}.tabs a:hover{color:var(--ink)}.tabs a[aria-current=page]{color:var(--ink);font-weight:600}.tabs a[aria-current=page]:after{content:"";background:var(--gold);view-transition-name:tab-indicator;border-radius:2px;height:2px;position:absolute;bottom:-12px;left:12px;right:12px}.tabs__short{display:none}.switcher{position:relative}.switcher>summary{cursor:pointer;border:1px solid var(--line);background:var(--raised);border-radius:999px;align-items:center;gap:8px;padding:6px 10px;font-size:.85rem;list-style:none;display:flex}.switcher>summary::-webkit-details-marker{display:none}.switcher__label{color:var(--ink-3)}.switcher__code{font:600 .82rem var(--mono)}.switcher__menu{background:var(--raised);border:1px solid var(--line);border-radius:var(--radius);width:min(380px,100vw - 32px);box-shadow:var(--shadow);padding:10px;position:absolute;top:calc(100% + 8px);right:0}.switcher__hint{color:var(--ink-3);margin:4px 8px 8px;font-size:.8rem}.switcher__option{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;grid-template-columns:58px 1fr;gap:8px;width:100%;padding:9px 8px;font-size:.88rem;display:grid}.switcher__option:hover{background:var(--sunk)}.switcher__option[aria-current=true]{background:var(--gold-soft)}.switcher__option-code{font:600 .8rem/1.6 var(--mono);color:var(--ink-3)}main{width:100%;max-width:1200px;padding:0 var(--gutter) 64px;flex:1;margin:0 auto}.colophon{border-top:1px solid var(--line);color:var(--ink-3);font-size:.82rem}.colophon__inner{max-width:1200px;padding:20px var(--gutter) 32px;justify-content:space-between;align-items:flex-start;gap:24px;margin:0 auto;display:flex}.colophon p{max-width:72ch;margin:0}.colophon strong{color:var(--ink-2)}.eyebrow{font:500 .74rem/1.4 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);margin:0 0 10px}.lede{max-width:64ch;color:var(--ink-2);margin:12px 0 0;font-size:1.02rem}.section-title{font:600 .78rem/1.4 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}.btn{border:1px solid var(--ink);background:var(--ink);color:var(--surface);cursor:pointer;transition:transform .15s var(--ease), background .2s;border-radius:999px;align-items:center;gap:8px;padding:8px 14px;font-size:.88rem;font-weight:600;text-decoration:none;display:inline-flex}.btn:active{transform:scale(.98)}.btn--quiet{color:var(--ink-2);border-color:var(--line-strong);background:0 0;font-weight:500}.btn--quiet:hover{color:var(--ink);border-color:var(--ink-3)}form[aria-busy=true] .btn{opacity:.6;pointer-events:none}.linkish{color:var(--ink-2);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:2px 4px;font-size:.82rem;text-decoration:underline}.linkish--danger{color:var(--warn)}.official-link{color:var(--ink-2);margin-top:6px;font-size:.84rem;display:inline-block}.badge{border:1px solid var(--line-strong);font:500 .66rem/1.6 var(--mono);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-2);vertical-align:2px;border-radius:999px;margin-left:8px;padding:1px 7px;display:inline-block}.badge--chosen{background:var(--ink);border-color:var(--ink);color:var(--surface)}.badge--now{background:var(--gold-soft);border-color:var(--gold);color:var(--ink)}.mark{flex:none}.mark--completed{color:var(--st-completed)}.mark--current{color:var(--st-current)}.mark--planned{color:var(--st-planned)}.mark--none{color:var(--st-none)}.key{color:var(--ink-2);align-items:center;gap:6px;font-size:.86rem;display:inline-flex}.key:before{content:"";border-radius:3px;width:10px;height:10px}.key--completed:before{background:var(--st-completed)}.key--current:before{background:var(--st-current)}.key--planned:before{background:repeating-linear-gradient(135deg, var(--st-planned) 0 2px, color-mix(in oklab, var(--st-planned) 30%, var(--surface)) 2px 4px)}.key--target:before{display:none}.meter{width:var(--meter-w,96px);align-items:center;display:inline-flex}.meter--md{--meter-w:100%}.meter__track{border-radius:999px;gap:2px;width:100%;height:6px;display:flex;overflow:hidden}.meter--md .meter__track{height:10px}.meter__seg,.meter__rest{min-width:3px;transition:flex-basis .6s var(--ease);flex:0 1 0}.meter__rest{background:var(--track);flex:1 1 0}.meter__seg--completed{background:var(--st-completed)}.meter__seg--current{background:var(--st-current)}.meter__seg--planned{background:repeating-linear-gradient(135deg, var(--st-planned) 0 2px, color-mix(in oklab, var(--st-planned) 30%, var(--surface)) 2px 4px)}.hero{padding:40px 0 28px}.hero h1{font:600 clamp(1.75rem, 3.4vw, 2.6rem) / 1.12 var(--serif);letter-spacing:-.015em;max-width:24ch}.hero--compact h1{max-width:none}.hero__stats{grid-template-columns:auto minmax(160px,360px);align-items:center;gap:8px 20px;max-width:640px;margin-top:24px;display:grid}.hero__total{align-items:baseline;gap:8px;margin:0;display:flex}.hero__figure{letter-spacing:-.02em;font-size:2.6rem;font-weight:600;line-height:1}.hero__of{color:var(--ink-3);font-size:.9rem}.hero__breakdown{flex-wrap:wrap;grid-column:1/-1;gap:6px 18px;margin:4px 0 0;display:flex}.chooser{padding:56px 0 24px}.chooser__intro h1{font:600 clamp(2rem, 4.6vw, 3.3rem) / 1.08 var(--serif);letter-spacing:-.02em;max-width:18ch}.chooser__list{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:16px;margin:40px 0 0;padding:0;list-style:none;display:grid}.program-card form{height:100%}.program-card__button{text-align:left;background:var(--raised);border:1px solid var(--line);cursor:pointer;width:100%;height:100%;transition:transform .25s var(--ease), box-shadow .25s var(--ease), border-color .2s;border-radius:16px;flex-direction:column;gap:8px;padding:22px;display:flex}.program-card__button:hover{box-shadow:var(--shadow);border-color:var(--line-strong);transform:translateY(-2px)}.program-card__code{font:500 .78rem var(--mono);color:var(--ink-3)}.program-card__name{font:600 1.25rem/1.25 var(--serif)}.program-card__facts{color:var(--ink-2);font-size:.86rem}.program-card__summary{color:var(--ink-3);flex:1;font-size:.88rem}.program-card__cta{font-size:.9rem;font-weight:600}.program-card__button:hover .program-card__cta{text-underline-offset:3px;text-decoration:underline}.chooser__note{color:var(--ink-3);margin-top:20px;font-size:.84rem}.requirements__grid{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:40px;display:grid}.side{position:sticky;top:84px}.tree-panel__head{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding-bottom:10px;display:flex}.tree-tools{gap:8px;display:flex}.tree-tools .btn{padding:5px 12px;font-size:.8rem}.legend{color:var(--ink-2);margin:10px 0 6px;font-size:.84rem}.legend>summary{cursor:pointer;color:var(--ink-3);width:max-content}.legend__grid{grid-template-columns:1fr 1.6fr;gap:8px 28px;padding:12px 0 8px;display:grid}.legend__list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.legend__list li{align-items:center;gap:8px;display:flex}.legend__list .glyph{color:var(--ink-2);flex:none}.legend__track{color:var(--ink-3);grid-column:1/-1;align-items:center;gap:10px;margin:4px 0 0;display:flex}[data-tree]{scroll-margin-top:120px}.tree,.children{margin:0;padding:0;list-style:none}.tree>li{border-bottom:1px solid var(--line)}.tree>li>details>summary{padding-block:14px}.tree>li>details>summary .group__title{font-size:1.04rem}.group>summary{list-style:none}.group>summary::-webkit-details-marker{display:none}.group__head{cursor:pointer;border-radius:10px;grid-template-columns:28px minmax(0,1fr) auto 16px;align-items:center;gap:12px;padding:10px 12px;transition:background .15s;display:grid}.group__head:hover{background:var(--sunk)}.group__glyph{color:var(--ink-2);place-items:center;display:grid}.node--open>details>summary .group__glyph{color:var(--ink-3)}.group__titles{gap:2px;min-width:0;display:grid}.group__title{font-weight:600;line-height:1.3}.group__rule{color:var(--ink-3);font-size:.8rem}.group__rel{color:var(--ink-2);font-weight:600}.group__progress{align-items:center;gap:10px;display:flex}.group__fraction{font:500 .78rem var(--mono);font-variant-numeric:tabular-nums;text-align:right;min-width:52px}.group__of{color:var(--ink-3)}.group__chevron{color:var(--ink-3);transition:transform .25s var(--ease)}details[open]>summary>.group__chevron{transform:rotate(90deg)}.group__body{padding-bottom:8px}.group__intro{justify-items:start;gap:8px;margin:2px 12px 10px 52px;display:grid}.official{border-left:2px solid var(--line-strong);font:italic 400 .92rem/1.5 var(--serif);color:var(--ink-2);max-width:68ch;margin:0;padding-left:12px}.official__label{font:normal 500 .64rem/1.8 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);display:block}.notes{color:var(--ink-3);max-width:68ch;margin:0;padding-left:18px;font-size:.8rem}.choose .btn{padding:5px 12px;font-size:.8rem}.children{--spine:solid;margin-left:26px;padding-left:18px}.children[data-rel=choose],.children[data-rel=min],.children[data-rel=max],.children[data-rel=one]{--spine:dashed}.children[data-rel=open]{--spine:dotted}.children>li{position:relative}.children>li:before{content:"";border-left:1.5px var(--spine) var(--line-strong);position:absolute;top:0;bottom:0;left:-18px}.children>li:last-child:before{height:23px;bottom:auto}.children>li:after{content:"";border-top:1.5px var(--spine) var(--line-strong);width:12px;position:absolute;top:22px;left:-18px}.node[data-pathway]>details{border:1px solid var(--line);border-radius:var(--radius);background:var(--raised);margin:6px 0;transition:opacity .3s,border-color .3s,box-shadow .3s}.node[data-pathway=chosen]>details{border-color:var(--ink-2);box-shadow:var(--shadow)}.node[data-pathway=muted]>details{opacity:.55}.node[data-pathway=muted]>details:hover,.node[data-pathway=muted]>details[open]{opacity:1}.leaf{border-radius:10px;align-items:flex-start;gap:2px;display:flex}.leaf__main{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;flex:1;grid-template-columns:16px 86px minmax(0,1fr) auto;align-items:baseline;gap:3px 10px;min-width:0;padding:8px 10px;transition:background .15s;display:grid}.leaf__main:hover{background:var(--sunk)}.leaf__main .mark{align-self:center}.leaf__code{font:500 .84rem var(--mono)}.leaf__title{color:var(--ink-2);font-size:.9rem}.leaf[data-status=completed] .leaf__title,.leaf[data-status=current] .leaf__title{color:var(--ink)}.leaf__listed{color:var(--ink-3);font-size:.74rem;display:block}.leaf__meta{font:.74rem var(--mono);color:var(--ink-3);white-space:nowrap;gap:8px;display:flex}.leaf__state{flex-wrap:wrap;grid-column:3/-1;gap:6px;display:flex}.leaf__state:has(.state--none){display:none}.state{color:var(--ink-2);border:1px solid var(--line-strong);background:var(--raised);border-radius:999px;padding:1px 8px;font-size:.74rem}.state__label{font-weight:600}.state--completed{border-color:color-mix(in oklab, var(--st-completed) 45%, var(--surface));background:color-mix(in oklab, var(--st-completed) 9%, var(--surface))}.state--current{border-color:color-mix(in oklab, var(--st-current) 50%, var(--surface));background:color-mix(in oklab, var(--st-current) 11%, var(--surface))}.state--planned{border-style:dashed;border-color:color-mix(in oklab, var(--st-planned) 55%, var(--surface));background:color-mix(in oklab, var(--st-planned) 7%, var(--surface))}.state--gap{color:var(--ink-3);background:0 0;border-style:dashed}.leaf__link{width:36px;height:36px;color:var(--ink-3);border-radius:8px;flex:none;place-items:center;margin-top:2px;transition:background .15s,color .15s;display:grid}.leaf__link:hover{background:var(--gold-soft);color:var(--ink)}.bucket{justify-items:start;gap:8px;margin:0 12px 0 52px;display:grid}.bucket .children{width:calc(100% + 26px);margin-left:-26px}.bucket__empty{color:var(--ink-3);max-width:60ch;margin:0;font-size:.84rem}.bucket .btn{padding:5px 12px;font-size:.8rem}.pulse{animation:pulse 1.1s var(--ease)}.pulse .mark{animation:pop .5s var(--ease)}@keyframes pulse{0%{background:var(--gold-soft)}to{background:0 0}}@keyframes pop{0%{transform:scale(.4)}60%{transform:scale(1.25)}to{transform:scale(1)}}.rules__list{gap:12px;margin:12px 0 0;padding:0;list-style:none;display:grid}.rule{background:var(--raised);border:1px solid var(--line);border-radius:var(--radius);gap:8px;padding:14px 16px;display:grid}.rule__figure{align-items:baseline;gap:8px;margin:0;display:flex}.rule__value{font-size:1.6rem;font-weight:600;line-height:1}.rule__target{color:var(--ink-3);font-size:.84rem}.rule__verdict{color:var(--ink-2);align-items:center;gap:6px;margin:0;font-size:.82rem;font-weight:600;display:flex}.rule__verdict--todo{color:var(--ink-3);font-weight:500}.rule__verdict--warn{color:var(--warn)}.rule__text{font:italic .84rem/1.45 var(--serif);color:var(--ink-3);margin:0}.rule__caveat{color:var(--ink-3);margin:0;font-size:.74rem}.cap{display:block;position:relative}.cap__line{top:-4px;bottom:-4px;left:calc(var(--cap) - 1px);background:var(--ink);border-radius:1px;width:2px;position:absolute}.untracked{color:var(--ink-2);margin-top:14px;font-size:.84rem}.untracked>summary{cursor:pointer;color:var(--ink-3)}.untracked__item h3{margin-top:12px;font-size:.86rem}.untracked__item p{font:italic .84rem/1.5 var(--serif);color:var(--ink-3);margin:6px 0 0}.untracked>a{margin-top:12px;display:inline-block}.crumbs{z-index:5;margin:0 calc(var(--gutter) * -1);padding:10px var(--gutter);background:color-mix(in oklab, var(--surface) 94%, transparent);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);position:sticky;top:60px}.crumbs ol{flex-wrap:wrap;gap:2px 6px;margin:0;padding:0;font-size:.84rem;list-style:none;display:flex}.crumbs li+li:before{content:"›";color:var(--ink-3);margin-right:6px}.crumbs button{color:var(--ink-2);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.crumbs [aria-current]{font-weight:600}dialog.panel{background:var(--raised);width:min(460px,100vw);max-width:100vw;height:100dvh;max-height:100dvh;color:var(--ink);border:0;margin:0;padding:0;inset:0 0 0 auto;box-shadow:-12px 0 40px #14100824}dialog.panel::backdrop{backdrop-filter:blur(2px);background:#18140c52}.panel__inner{align-content:start;gap:18px;height:100%;padding:22px 24px 32px;display:grid;overflow:auto}.panel__head{padding-right:40px;position:relative}.panel__code{font:500 .84rem var(--mono);color:var(--ink-3);margin:0 0 4px}.panel__title{font:600 1.45rem/1.2 var(--serif)}.panel__close{width:36px;height:36px;color:var(--ink-2);cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;display:grid;position:absolute;top:-4px;right:-6px}.panel__close:hover{background:var(--sunk)}.btn--official{background:var(--gold-soft);color:var(--ink);border-color:var(--gold);justify-self:start}.facts{gap:8px;margin:0;font-size:.86rem;display:grid}.facts div{grid-template-columns:136px 1fr;gap:12px;display:grid}.facts dt{color:var(--ink-3)}.facts dd{margin:0}.panel__section{font:600 .74rem/1.4 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);margin-bottom:8px}.panel__entries{gap:6px;margin:0;padding:0;list-style:none;display:grid}.panel__entry{border:1px solid var(--line);border-radius:10px;align-items:center;gap:8px;padding:8px 10px;font-size:.88rem;display:flex}.panel__entry>span{flex:1}.panel__entry.is-editing{border-color:var(--ink-2)}.panel__empty{color:var(--ink-3);margin:0;font-size:.88rem}.entry-form{border-top:1px solid var(--line);gap:14px;padding-top:16px;display:grid}.seg{border:0;grid-template-columns:repeat(3,1fr);gap:6px;margin:0;padding:0;display:grid}.seg legend{color:var(--ink-3);margin-bottom:6px;font-size:.8rem}.seg__opt{border:1px solid var(--line);text-align:center;cursor:pointer;border-radius:10px;flex-direction:column;align-items:center;gap:6px;padding:10px 6px;font-size:.82rem;transition:border-color .15s,background .15s;display:flex}.seg__opt input{opacity:0;pointer-events:none;position:absolute}.seg__opt:has(input:checked){border-color:var(--ink);background:var(--sunk);font-weight:600}.seg__opt:has(input:focus-visible){outline:2px solid var(--ink);outline-offset:2px}.field-row{flex-wrap:wrap;gap:10px;display:flex}.field{color:var(--ink-3);flex:110px;gap:4px;font-size:.8rem;display:grid}.field input,.field select{font:.92rem var(--sans);color:var(--ink);border:1px solid var(--line-strong);background:var(--surface);border-radius:8px;min-width:0;padding:8px 10px}.field--units{flex:0 90px}.field__hint{min-height:1.5em;color:var(--ink-3);margin:0;font-size:.8rem}.form-error{color:var(--warn);margin:0;font-size:.84rem}.form-error:empty{display:none}.panel__actions{gap:8px;display:flex}.years{gap:28px;margin:8px 0 0;padding:0;list-style:none;display:grid}.year{border-top:1px solid var(--line);grid-template-columns:96px minmax(0,1fr);gap:16px;padding-top:20px;display:grid}.year__title{font:600 1.6rem/1 var(--serif);color:var(--ink-2)}.year__terms{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:14px;display:grid}.term{border:1px solid var(--line);border-radius:var(--radius);background:var(--raised);align-content:start;gap:8px;padding:14px;display:grid}.term[data-when=past]{background:color-mix(in oklab, var(--raised) 60%, var(--sunk))}.term[data-when=now]{border-color:var(--gold);box-shadow:0 0 0 3px var(--gold-soft)}.term__head{align-items:baseline;gap:8px;display:flex}.term__title{font-size:1rem}.term__head .badge{margin-left:0}.term__units{font:500 .78rem var(--mono);color:var(--ink-3);margin-left:auto}.term__list{gap:2px;margin:0;padding:0;list-style:none;display:grid}.entry{border-radius:10px;align-items:flex-start;display:flex}.entry__main{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;flex:1;grid-template-columns:16px auto minmax(0,1fr) auto;align-items:baseline;gap:2px 8px;min-width:0;padding:8px;display:grid}.entry__main:hover{background:var(--sunk)}.entry__main .mark{align-self:center}.entry__code{font:500 .84rem var(--mono)}.entry__title{color:var(--ink-2);text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;overflow:hidden}.entry__units{font:.74rem var(--mono);color:var(--ink-3)}.entry__status,.entry__toward,.entry__hint{grid-column:2/-1;font-size:.76rem}.entry__status{color:var(--ink-2);font-weight:600}.entry__toward{color:var(--ink-3)}.entry__toward--none{font-style:italic}.entry__hint{color:var(--warn)}.entry__hint:before{content:"⚠ "}.term__add{border:1px dashed var(--line-strong);color:var(--ink-3);cursor:pointer;background:0 0;border-radius:10px;margin-top:2px;padding:8px;font-size:.84rem;transition:color .15s,border-color .15s}.term__add:hover{color:var(--ink);border-color:var(--ink-3)}.planview__more{color:var(--ink-3);margin-top:28px;font-size:.84rem}.prose{max-width:72ch;padding:40px 0}.prose h1{font:600 2.2rem/1.15 var(--serif);margin-bottom:16px}.prose h2{font:600 1.4rem/1.25 var(--serif);margin:32px 0 8px}.prose h3{margin:24px 0 6px}.prose img{border:1px solid var(--line);border-radius:var(--radius);max-width:100%}.prose code{font:.88em var(--mono)}@media (width<=959px){.requirements__grid{grid-template-columns:1fr}.side{position:static}.rules__list{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))}}@media (width<=759px){body{font-size:15px}.masthead__inner{gap:12px}.wordmark__text{display:none}.tabs a{padding:8px;font-size:.86rem}.tabs__long{display:none}.tabs__short{display:inline}.tabs a[aria-current=page]:after{left:8px;right:8px}.switcher__label{display:none}.colophon__inner{flex-direction:column}.hero__stats{grid-template-columns:1fr}[data-reveal-mine],[data-collapse-all]{display:none}.legend__grid{grid-template-columns:1fr}.group__head{grid-template-columns:24px minmax(0,1fr) 16px;padding:12px 6px}.group__progress{grid-area:2/2}.group__progress .meter{--meter-w:120px}details[open]>summary>.group__chevron{transform:none}.group__intro,.bucket{margin-left:0;margin-right:0}.bucket .children{width:100%;margin-left:0}.children{margin-left:0;padding-left:0}.children>li:before,.children>li:after{display:none}.children>li+li{border-top:1px solid var(--line)}.leaf,.leaf__main{border-radius:0}.node[data-pathway]>details{margin:8px 0}[data-tree][data-focus] li:not(.is-trail,.is-focus,.is-focus>details>.group__body>.children>li){display:none}[data-tree][data-focus]>li{border-bottom:0}.is-trail>details>summary,.is-trail>details>.group__body>.group__intro{display:none}.is-trail>details,.is-trail>details>.group__body{padding:0;box-shadow:none!important;opacity:1!important;background:0 0!important;border:0!important;margin:0!important}.is-trail+li,.children>li.is-focus{border-top:0}.is-focus>details{box-shadow:none!important;opacity:1!important;background:0 0!important;border:0!important}.is-focus>details>summary{border-bottom:1px solid var(--line);border-radius:0;grid-template-columns:16px 24px minmax(0,1fr);padding:16px 0 12px}.is-focus>details>summary>.group__chevron{grid-area:1/1;transform:rotate(180deg)}.is-focus>details>summary .group__title{font:600 1.3rem/1.2 var(--serif)}.is-focus>details>summary .group__progress{grid-column:3}.is-focus>details>.group__body>.group__intro{margin-top:12px}.leaf__main{grid-template-columns:16px minmax(0,1fr) auto;padding:10px 6px}.leaf__code{grid-column:2}.leaf__title{grid-area:2/2/auto/-1}.leaf__meta{grid-area:1/3}.leaf__state{grid-column:2/-1}dialog.panel{border-radius:18px 18px 0 0;width:100vw;height:auto;max-height:90dvh;inset:auto 0 0;box-shadow:0 -12px 40px #1410082e}.panel__inner{max-height:90dvh;padding:20px 16px 28px}.facts div{grid-template-columns:1fr;gap:0}.year{grid-template-columns:1fr;gap:10px}}::view-transition-old(root),::view-transition-new(root){animation-duration:.22s}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.landing{padding:56px 0 24px}.landing h1{font:600 clamp(2rem, 4.6vw, 3.3rem) / 1.08 var(--serif);letter-spacing:-.02em;max-width:18ch}.landing__actions{flex-wrap:wrap;gap:10px;margin:28px 0 20px;display:flex}.landing__note{max-width:64ch;color:var(--ink-3);font-size:.88rem}.notice{border:1px solid var(--gold);border-radius:var(--radius);background:var(--gold-soft);max-width:60ch;color:var(--ink);align-items:flex-start;gap:10px;margin:16px 0;padding:12px 14px;font-size:.9rem;display:flex}.notice svg{color:var(--ink-2);flex:none;margin-top:2px}.auth{max-width:460px;padding:48px 0 24px}.auth h1{font:600 2rem/1.15 var(--serif)}.auth__form{gap:14px;margin-top:8px;display:grid}.auth__form .btn{justify-self:start}.auth__form .field{flex:none}.auth__alt{color:var(--ink-2);margin-top:20px;font-size:.9rem}.menu{position:relative}.menu>summary{cursor:pointer;list-style:none}.menu>summary::-webkit-details-marker{display:none}.account>summary{border:1px solid var(--line);background:var(--raised);color:var(--ink-2);border-radius:999px;align-items:center;gap:6px;padding:6px 10px;font-size:.85rem;display:flex}.account__name{text-overflow:ellipsis;white-space:nowrap;max-width:14ch;overflow:hidden}.menu__panel{z-index:30;background:var(--raised);border:1px solid var(--line);border-radius:var(--radius);width:min(380px,100vw - 32px);box-shadow:var(--shadow);padding:12px;position:absolute;top:calc(100% + 8px);right:0}.account__panel{justify-items:start;gap:8px;width:min(300px,100vw - 32px);display:grid}.account__who{margin:0;font-size:.9rem}.menu__list{margin:0;padding:0;list-style:none}.masthead__login{padding:6px 14px}.toast{z-index:60;background:var(--ink);max-width:min(560px,100vw - 32px);color:var(--surface);box-shadow:var(--shadow);animation:toast-in .25s var(--ease);border-radius:12px;align-items:center;gap:12px;padding:12px 16px;font-size:.9rem;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.toast .linkish{color:var(--surface);font-weight:600}.toast--warn{border-left:4px solid var(--gold)}.toast--error{border-left:4px solid var(--warn)}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,8px)}}.issues{gap:6px;margin:0;padding:0;list-style:none;display:grid}.issues:empty{display:none}.issue{border-radius:8px;padding:8px 10px;font-size:.82rem;line-height:1.45}.issue--warn{background:var(--gold-soft);color:var(--ink)}.issue--warn:before{content:"⚠ "}.issue--block{background:color-mix(in oklab, var(--warn) 12%, var(--surface));color:var(--warn);font-weight:600}.panel__alert:empty{display:none}.panel__alert,.form-error{color:var(--warn);font-size:.86rem}.status-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;display:flex}.bad{color:var(--warn)}.conflict{border:1px solid color-mix(in oklab, var(--warn) 40%, var(--surface));border-radius:var(--radius);justify-items:start;gap:8px;padding:14px;font-size:.9rem;display:grid}.conflict p{margin:0}.conflict__quote{font:italic .86rem/1.5 var(--serif);color:var(--ink-2)}.panel__current .panel__entry{align-items:flex-start}.panel__counts{color:var(--ink-3);margin-top:2px;font-size:.8rem;display:block}#panel-title:focus{outline:none}#panel-title:focus-visible{outline:2px solid var(--ink)}.credit{color:var(--ink-3);align-self:center;font-size:.74rem}.credit--elsewhere{font-style:italic}.leaf[data-counts=elsewhere] .leaf__title,.leaf[data-counts=none] .leaf__title{color:var(--ink-2)}.leaf[data-counts=elsewhere] .mark,.leaf[data-counts=none] .mark{opacity:.55}.leaf__use{flex:none;align-self:center}.leaf__use .linkish{white-space:nowrap;font-size:.78rem}.group__if{font:italic .72rem var(--sans);color:var(--ink-3)}.hero__extra{color:var(--ink-2);grid-column:1/-1;margin:4px 0 0;font-size:.88rem}.term__load{background:var(--gold-soft);border-radius:8px;margin:0;padding:6px 8px;font-size:.78rem}.term__load--over{background:color-mix(in oklab, var(--warn) 12%, var(--surface));color:var(--warn)}@media (width<=759px){.account__name{display:none}.leaf{flex-wrap:wrap}.leaf__use{order:3;width:100%;padding:0 6px 8px 32px}}.rules-panel{border-top:1px solid var(--line);gap:12px;padding-top:16px;display:grid}.rules-panel__block h4{margin:0 0 4px;font-size:.86rem;font-weight:600}.rules-panel__block p{color:var(--ink-2);margin:0 0 4px;font-size:.86rem}.rules-panel__groups{color:var(--ink-2);margin:4px 0 0;padding-left:20px;font-size:.86rem}.rules-panel__quote{font:italic .84rem/1.5 var(--serif)}.rules-panel__hint,.rules-panel__note{color:var(--ink-3);font-size:.8rem}.rules-panel__note{background:var(--sunk);border-radius:8px;margin:0;padding:8px 10px}.rules-panel__official summary{cursor:pointer;color:var(--ink-3);font-size:.84rem}.rules-panel__official p{font:italic .84rem/1.55 var(--serif);color:var(--ink-2);margin:8px 0}.rules-panel__official a{font-size:.84rem}.checks{gap:8px;display:grid}.checks .panel__section{margin:0}.issue--info{background:var(--sunk);color:var(--ink-2)}.checks__note{color:var(--ink-3);margin:0;font-size:.8rem}.replace{border:1px solid var(--line-strong);border-radius:var(--radius);justify-items:start;gap:8px;padding:12px;font-size:.88rem;display:grid}.replace p{margin:0}.replace__hint{color:var(--ink-3);font-size:.8rem}.status-note{color:var(--ink-3);font-size:.82rem}
