.supports-page{width:100%;--supports-page-gutter:clamp(1.25rem,3vw,3rem);--supports-page-bg:var(--background);--supports-page-surface:var(--cb-surface,var(--card));--supports-page-line:var(--cb-line,var(--border));background:var(--supports-page-bg)}.supports-page--fixed{flex-direction:column;height:100%;max-height:100%}.supports-main--fixed,.supports-page--fixed{display:flex;flex:1 1 auto;min-height:0;overflow:hidden}.supports-main--fixed{flex-direction:column}.sombre .supports-page{--supports-page-bg:var(--bg,var(--background));--supports-page-surface:var(--surface,var(--card))}.catalog-page{display:flex;flex-direction:column;gap:0;min-height:0}.catalog-page__filters{display:flex;flex-direction:column;gap:.65rem;padding:clamp(1rem,2.5vw,1.35rem) var(--supports-page-gutter,clamp(1.25rem,3vw,3rem)) .5rem}.catalog-page__promo-chips{display:flex;flex-wrap:wrap;gap:.4rem}.catalog-page__main{display:flex;flex-direction:column;gap:clamp(1.5rem,3.5vw,2.25rem);padding-bottom:clamp(2.5rem,6vw,4rem)}.catalog-library{--catalog-folio-accent:var(--primary);--catalog-library-dwell:5.2s;position:relative;border-bottom:1px solid var(--supports-page-line);background:linear-gradient(180deg,color-mix(in oklch,var(--muted) 22%,var(--supports-page-bg)) 0,var(--supports-page-bg) 100%);padding:clamp(1.05rem,2.6vw,1.45rem) 0 clamp(1.2rem,3vw,1.6rem)}.catalog-library__toolbar{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:0 var(--supports-page-gutter) .85rem}.catalog-library__counter{margin:0;display:inline-flex;align-items:baseline;gap:.15rem;font-size:.6875rem;font-weight:650;font-variant-numeric:tabular-nums;letter-spacing:.08em;color:var(--muted-foreground)}.catalog-library__counter-current{font-size:.875rem;font-weight:750;letter-spacing:-.02em;color:var(--foreground)}.catalog-library__counter-sep{opacity:.4}.catalog-library__nav{display:inline-flex;gap:.3rem}.catalog-library__nav-btn,.catalog-library__toggle{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;border:1px solid var(--supports-page-line);border-radius:0;background:var(--supports-page-surface);color:var(--foreground);cursor:pointer}.catalog-library__nav-btn:hover,.catalog-library__toggle:hover{border-color:color-mix(in oklch,var(--foreground) 22%,var(--border));background:color-mix(in oklch,var(--muted) 35%,var(--supports-page-surface))}.catalog-library__shelf-wrap{padding-inline:var(--supports-page-gutter)}.catalog-library__shelf{display:flex;align-items:stretch;gap:.45rem;min-height:15rem;padding:1rem 0 .45rem;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;overflow-anchor:none;scroll-snap-type:x proximity;scrollbar-width:thin;border-top:1px solid var(--supports-page-line)}.catalog-library__slot{flex:0 0 auto;scroll-snap-align:center}.catalog-library__slot.is-active{z-index:2}.catalog-library__ledge{height:.55rem;border:1px solid var(--supports-page-line);border-bottom:none;background:repeating-linear-gradient(-45deg,transparent,transparent 4px,color-mix(in oklch,var(--muted-foreground) 10%,transparent) 4px,color-mix(in oklch,var(--muted-foreground) 10%,transparent) 5px),var(--supports-page-surface)}.catalog-folio{--catalog-folio-accent:var(--primary);--catalog-item-title-size:1.12rem;--catalog-item-title-leading:1.18;position:relative;display:grid;grid-template-columns:3.15rem 0fr;width:3.15rem;height:15rem;padding:0;border:1px solid var(--supports-page-line);border-radius:0;background:var(--supports-page-surface);color:inherit;text-decoration:none;cursor:pointer;overflow:hidden;transition:width .55s cubic-bezier(.22,1,.36,1),grid-template-columns .55s cubic-bezier(.22,1,.36,1),border-color .2s ease}.catalog-folio:hover:not(.is-active){border-color:color-mix(in oklch,var(--catalog-folio-accent) 35%,var(--border))}.catalog-folio.is-active{width:min(21rem,82vw);grid-template-columns:3.35rem minmax(0,1fr);border-color:color-mix(in oklch,var(--catalog-folio-accent) 42%,var(--border))}.catalog-folio.is-locked,.catalog-folio.is-restricted{cursor:default}.catalog-folio.is-locked{--catalog-folio-accent:var(--foreground)}.catalog-folio.is-locked .catalog-folio__rail{background:linear-gradient(180deg,color-mix(in oklch,var(--foreground) 78%,var(--supports-page-surface)),color-mix(in oklch,var(--foreground) 62%,var(--supports-page-surface)));color:var(--supports-page-surface)}.clair .catalog-folio.is-locked .catalog-folio__rail{background:linear-gradient(180deg,color-mix(in oklch,var(--foreground) 88%,white),color-mix(in oklch,var(--foreground) 72%,white));color:white}.sombre .catalog-folio.is-locked .catalog-folio__rail{background:linear-gradient(180deg,color-mix(in oklch,var(--foreground) 22%,white),color-mix(in oklch,var(--foreground) 55%,white));color:var(--background)}.catalog-folio.is-locked .catalog-folio__flag{color:var(--muted-foreground)}.catalog-folio__hatch{position:absolute;inset:0;z-index:2;pointer-events:none;background:repeating-linear-gradient(-32deg,transparent 0,transparent 4px,color-mix(in oklch,var(--foreground) 22%,transparent) 4px,color-mix(in oklch,var(--foreground) 22%,transparent) 5.5px)}.catalog-folio.is-restricted .catalog-folio__body,.catalog-folio.is-restricted .catalog-folio__rail{position:relative;z-index:3}.catalog-folio.is-restricted .catalog-folio__hatch{z-index:4;mix-blend-mode:multiply;opacity:.85}.sombre .catalog-folio.is-restricted .catalog-folio__hatch{mix-blend-mode:soft-light;opacity:1;background:repeating-linear-gradient(-32deg,transparent,transparent 4px,color-mix(in oklch,white 16%,transparent) 0,color-mix(in oklch,white 16%,transparent) 5.5px)}.catalog-folio__rail{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:.65rem;min-width:0;min-height:0;height:100%;padding:.85rem .35rem .75rem;background:linear-gradient(180deg,color-mix(in oklch,var(--catalog-folio-accent) 88%,black 6%),color-mix(in oklch,var(--catalog-folio-accent) 72%,black 14%));color:color-mix(in oklch,white 92%,var(--catalog-folio-accent))}.catalog-folio__rail-index{flex-shrink:0;font-size:.625rem;font-weight:750;font-variant-numeric:tabular-nums;letter-spacing:.1em;opacity:.85}.catalog-folio__rail-icon{width:1.15rem;height:1.15rem;flex-shrink:0;opacity:.95}.catalog-folio__rail-title{flex:1 1 auto;display:flex;align-items:center;justify-content:center;min-height:0;writing-mode:vertical-rl;transform:rotate(180deg);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;font-weight:650;letter-spacing:.05em;opacity:.92;transition:opacity .18s ease}.catalog-folio.is-active .catalog-folio__rail-title,.catalog-folio__body{opacity:0;pointer-events:none}.catalog-folio__body{display:flex;flex-direction:column;gap:.4rem;min-width:0;min-height:0;height:100%;padding:0;overflow:hidden;transition:opacity .2s ease}.catalog-folio.is-active .catalog-folio__body{padding:.95rem 1.05rem .9rem 1rem;opacity:1;pointer-events:auto;transition:opacity .35s ease .12s}.catalog-folio__head{display:flex;align-items:center;gap:.5rem;flex-shrink:0;min-height:1rem}.catalog-folio__eyebrow{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.625rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted-foreground)}.catalog-folio__head-end{display:inline-flex;align-items:center;gap:.4rem;margin-left:auto;flex-shrink:0}.catalog-folio__flag{font-size:.5625rem;font-weight:750;letter-spacing:.1em;text-transform:uppercase;color:color-mix(in oklch,var(--catalog-folio-accent) 55%,var(--foreground))}.catalog-folio__lock{width:.9rem;height:.9rem;color:var(--muted-foreground)}.catalog-folio__title{-webkit-line-clamp:2;font-family:var(--font-heading,var(--font-sans));font-size:var(--catalog-item-title-size);font-weight:700;letter-spacing:-.035em;line-height:var(--catalog-item-title-leading);color:var(--foreground)}.catalog-folio__lede,.catalog-folio__title{flex:0 1 auto;display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden;min-height:0}.catalog-folio__lede{-webkit-line-clamp:1;font-size:.75rem;line-height:1.35;color:var(--muted-foreground)}.catalog-folio__foot{flex-shrink:0;margin-top:auto;padding-top:.5rem;border-top:1px solid color-mix(in srgb,var(--border) 82%,transparent)}.catalog-folio__cta{display:inline-flex;align-items:center;gap:.35rem;font-size:.75rem;font-weight:700;letter-spacing:.01em;color:var(--foreground)}.catalog-folio__cta-icon{width:.95rem;height:.95rem;flex-shrink:0;transition:transform .18s ease}.catalog-folio.is-active:hover .catalog-folio__cta-icon{transform:translate(.12rem,-.12rem)}.catalog-folio__cta--muted{font-weight:600;color:var(--muted-foreground)}.catalog-library__progress{position:absolute;left:var(--supports-page-gutter);right:var(--supports-page-gutter);bottom:0;height:2px;transform-origin:left center;background:color-mix(in oklch,var(--foreground) 32%,transparent);animation:catalog-library-progress var(--catalog-library-dwell) linear forwards}.catalog-library__progress.is-paused{animation-play-state:paused}@keyframes catalog-library-progress{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@media (prefers-reduced-motion:reduce){.catalog-folio,.catalog-folio__body,.catalog-folio__rail-title{transition:none}.catalog-library__progress{display:none}}.catalog-library--loading .catalog-folio{width:3.15rem;grid-template-columns:3.15rem 0fr;pointer-events:none}.catalog-library--loading .catalog-folio.is-active{width:min(21rem,82vw);grid-template-columns:3.35rem 1fr}.catalog-sections{display:flex;flex-direction:column;gap:clamp(1.75rem,4vw,2.5rem);padding-inline:var(--supports-page-gutter)}.catalog-sections__promo{display:flex;flex-direction:column;gap:1.15rem;scroll-margin-top:5rem}.catalog-sections__promo-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.5rem 1rem;padding-bottom:.75rem;border-bottom:1px solid var(--supports-page-line)}.catalog-sections__promo-title{display:flex;flex-wrap:wrap;align-items:baseline;gap:.55rem .75rem;margin:0;min-width:0}.catalog-sections__promo-code{display:inline-flex;align-items:center;padding:.15rem .45rem;border:none;border-radius:0;background:color-mix(in oklch,var(--primary) 12%,var(--muted));font-size:.6875rem;font-weight:750;letter-spacing:.06em;text-transform:uppercase;color:color-mix(in oklch,var(--primary) 55%,var(--foreground))}.catalog-sections__promo-label{font-family:var(--font-heading,var(--font-sans));font-size:clamp(1.125rem,2.2vw,1.375rem);font-weight:700;letter-spacing:-.025em;line-height:1.2;color:var(--foreground)}.catalog-sections__promo-count{font-size:.75rem;font-weight:600;color:var(--muted-foreground)}.catalog-sections__semesters{display:flex;flex-direction:column;gap:1.35rem}.catalog-sections__semester-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin:0 0 .65rem}.catalog-sections__semester-label{font-size:.8125rem;font-weight:650;letter-spacing:-.01em;color:var(--foreground)}.catalog-sections__semester-count{font-size:.6875rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--muted-foreground)}.catalog-sections__list,.catalog-sections__list--masonry{display:grid;grid-template-columns:repeat(var(--catalog-cols,1),minmax(0,1fr));grid-auto-flow:row dense;align-items:start;-moz-column-gap:.75rem;column-gap:.75rem;row-gap:.75rem;margin:0;padding:0;list-style:none}@media (min-width:60rem){.catalog-sections__list,.catalog-sections__list--masonry{--catalog-cols:4}}@media (min-width:90rem){.catalog-sections__list,.catalog-sections__list--masonry{--catalog-cols:6}}.catalog-sections__list.is-masonry{grid-auto-rows:4px;row-gap:0}.catalog-sections__item{display:block;container:catalog-item/inline-size;min-width:0}.catalog-fiche{--catalog-fiche-accent:var(--primary);--catalog-item-title-size:1.12rem;--catalog-item-title-leading:1.18;position:relative;display:grid;grid-template-columns:2.85rem minmax(0,1fr);width:100%;min-width:0;min-height:8.75rem;border:1px solid var(--supports-page-line);border-radius:0;background:var(--supports-page-surface);color:inherit;text-decoration:none;overflow:hidden;transition:border-color .2s ease,background-color .2s ease}.catalog-fiche:hover{border-color:color-mix(in oklch,var(--catalog-fiche-accent) 40%,var(--border));background:color-mix(in oklch,var(--muted) 12%,var(--supports-page-surface))}.catalog-fiche:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.catalog-fiche__rail{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;align-self:stretch;min-height:0;padding:1rem .4rem;background:linear-gradient(180deg,color-mix(in oklch,var(--catalog-fiche-accent) 88%,black 6%),color-mix(in oklch,var(--catalog-fiche-accent) 72%,black 14%));color:color-mix(in oklch,white 92%,var(--catalog-fiche-accent))}.catalog-fiche__rail-icon{width:1.15rem;height:1.15rem;flex-shrink:0}.catalog-fiche__body{display:flex;flex-direction:column;min-width:0;min-height:100%;height:100%}.catalog-fiche__id{display:flex;align-items:flex-start;gap:.75rem;flex:1 1 auto;min-width:0;padding:.95rem 1rem .9rem}.catalog-fiche__id-text{display:flex;flex-direction:column;gap:.25rem;min-width:0}.catalog-fiche__id-end{display:inline-flex;align-items:center;gap:.4rem;margin-left:auto;flex-shrink:0}.catalog-fiche__flag{font-size:.5625rem;font-weight:750;letter-spacing:.1em;text-transform:uppercase;color:color-mix(in oklch,var(--catalog-fiche-accent) 55%,var(--foreground))}.catalog-fiche__title{flex:0 1 auto;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:0;font-family:var(--font-heading,var(--font-sans));font-size:var(--catalog-item-title-size);font-weight:700;letter-spacing:-.035em;line-height:var(--catalog-item-title-leading);color:var(--foreground)}.catalog-fiche:hover .catalog-fiche__title{color:color-mix(in oklch,var(--foreground) 82%,var(--catalog-fiche-accent))}.catalog-fiche__lede{flex:0 1 auto;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;min-height:0;font-size:.75rem;line-height:1.35;color:var(--muted-foreground)}.catalog-fiche__parts{display:grid;grid-template-columns:repeat(auto-fit,minmax(9.5rem,1fr));align-items:stretch;gap:1px;flex-shrink:0;border-top:1px solid color-mix(in srgb,var(--border) 82%,transparent);background:color-mix(in srgb,var(--border) 82%,transparent)}.catalog-fiche__parts[data-single=true]{grid-template-columns:minmax(0,1fr);border-top:0;background:transparent}.catalog-fiche:hover .catalog-fiche__parts[data-single=true] .catalog-fiche__part,.catalog-fiche__parts[data-single=true] .catalog-fiche__part{background:transparent;padding-top:0}.catalog-fiche__parts[data-single=true] .catalog-fiche__part-track{height:.3125rem;margin-inline:-.85rem}.catalog-fiche__part{display:flex;flex-direction:column;gap:.4rem;min-width:0;padding:.7rem .85rem .8rem;background:var(--supports-page-surface)}.catalog-fiche:hover .catalog-fiche__part{background:color-mix(in oklch,var(--muted) 12%,var(--supports-page-surface))}.catalog-fiche:hover .catalog-fiche__part[data-status=current],.catalog-fiche__part[data-status=current]{background-color:var(--supports-page-surface);background-image:linear-gradient(color-mix(in srgb,var(--catalog-fiche-accent) 14%,transparent),color-mix(in srgb,var(--catalog-fiche-accent) 14%,transparent))}.catalog-fiche__part-track{display:block;height:.25rem;background:color-mix(in srgb,var(--border) 60%,transparent)}.catalog-fiche__part-fill{display:block;height:100%;width:var(--catalog-fiche-fill,0);background:var(--catalog-fiche-accent)}.catalog-fiche__part-head{display:flex;align-items:baseline;gap:.4rem;min-width:0}.catalog-fiche__part-num{flex-shrink:0;font-size:.625rem;font-weight:700;letter-spacing:.08em;color:var(--muted-foreground)}.catalog-fiche__part-title{min-width:0;font-size:.75rem;font-weight:650;letter-spacing:-.01em;line-height:1.3;color:var(--foreground);overflow-wrap:anywhere}.catalog-fiche__part-label{flex-shrink:0;font-size:.5625rem;font-weight:750;letter-spacing:.14em;text-transform:uppercase;color:var(--muted-foreground)}.catalog-fiche__part-count{margin-left:auto;flex-shrink:0;padding-left:.5rem;font-size:.625rem;font-variant-numeric:tabular-nums;color:var(--muted-foreground)}.catalog-fiche__sections{display:flex;flex-direction:column;gap:.1rem;min-width:0}.catalog-fiche__parts[data-single=true] .catalog-fiche__sections{display:block;-moz-columns:13rem auto;columns:13rem;-moz-column-gap:1.5rem;column-gap:1.5rem;-moz-column-rule:1px solid color-mix(in srgb,var(--border) 82%,transparent);column-rule:1px solid color-mix(in srgb,var(--border) 82%,transparent)}.catalog-fiche__parts[data-single=true] .catalog-fiche__section{-moz-column-break-inside:avoid;break-inside:avoid}.catalog-fiche__section{display:flex;align-items:baseline;gap:.35rem;min-width:0;margin-inline:-.3rem;padding:.12rem .3rem;font-size:.6875rem;line-height:1.45;color:var(--muted-foreground)}.catalog-fiche__section-num{flex-shrink:0;font-variant-numeric:tabular-nums;opacity:.75}.catalog-fiche__section-title{min-width:0;overflow-wrap:anywhere}.catalog-fiche__section[data-status=done]{color:color-mix(in oklch,var(--foreground) 62%,transparent)}.catalog-fiche__section[data-status=current]{background:var(--catalog-fiche-accent);font-weight:700;color:color-mix(in oklch,white 94%,var(--catalog-fiche-accent))}.catalog-fiche .tutorat-inline-text{min-width:0;overflow-wrap:anywhere}.catalog-fiche .tutorat-inline-text__code{border-radius:.15rem;background:color-mix(in oklch,var(--muted) 55%,transparent);padding:0 .22em;font-family:var(--font-mono,ui-monospace,monospace);font-size:.92em}.catalog-fiche__section[data-status=current] .tutorat-inline-text__code{background:color-mix(in oklch,black 22%,transparent);color:inherit}.catalog-fiche .tutorat-inline-math .katex{font-size:.95em}.catalog-fiche .tutorat-inline-math__loading{color:var(--muted-foreground)}.catalog-fiche__foot{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-shrink:0;padding:.6rem 1rem .65rem;border-top:1px solid color-mix(in srgb,var(--border) 82%,transparent)}.catalog-fiche__cta{display:inline-flex;align-items:center;gap:.35rem;font-size:.75rem;font-weight:700;letter-spacing:.01em;color:var(--foreground)}.catalog-fiche__cta-icon{width:.95rem;height:.95rem;flex-shrink:0;transition:transform .18s ease}.catalog-fiche__meta{flex-shrink:0;font-size:.6875rem;font-variant-numeric:tabular-nums;color:var(--muted-foreground)}.catalog-fiche:hover .catalog-fiche__cta-icon{transform:translate(.12rem,-.12rem)}.catalog-fiche.is-locked,.catalog-fiche.is-restricted{cursor:default}.catalog-fiche.is-locked{--catalog-fiche-accent:var(--foreground)}.catalog-fiche.is-locked .catalog-fiche__rail{background:linear-gradient(180deg,color-mix(in oklch,var(--foreground) 78%,var(--supports-page-surface)),color-mix(in oklch,var(--foreground) 62%,var(--supports-page-surface)));color:var(--supports-page-surface)}.clair .catalog-fiche.is-locked .catalog-fiche__rail{background:linear-gradient(180deg,color-mix(in oklch,var(--foreground) 88%,white),color-mix(in oklch,var(--foreground) 72%,white));color:white}.sombre .catalog-fiche.is-locked .catalog-fiche__rail{background:linear-gradient(180deg,color-mix(in oklch,var(--foreground) 22%,white),color-mix(in oklch,var(--foreground) 55%,white));color:var(--background)}.catalog-fiche.is-locked:hover{border-color:var(--supports-page-line);background:var(--supports-page-surface)}.catalog-fiche.is-locked:hover .catalog-fiche__title{color:var(--foreground)}.catalog-fiche.is-locked .catalog-fiche__flag,.catalog-fiche__lock{color:var(--muted-foreground)}.catalog-fiche__lock{width:.9rem;height:.9rem}.catalog-fiche__cta--muted{font-weight:600;color:var(--muted-foreground)}.catalog-fiche.is-restricted:hover{border-color:color-mix(in oklch,var(--catalog-fiche-accent) 40%,var(--border));background:var(--supports-page-surface)}.catalog-fiche.is-restricted:hover .catalog-fiche__title{color:var(--foreground)}.catalog-fiche.is-restricted:hover .catalog-fiche__cta-icon{transform:none}.catalog-fiche__hatch{position:absolute;inset:0;z-index:4;pointer-events:none;mix-blend-mode:multiply;opacity:.85;background:repeating-linear-gradient(-32deg,transparent 0,transparent 4px,color-mix(in oklch,var(--foreground) 22%,transparent) 4px,color-mix(in oklch,var(--foreground) 22%,transparent) 5.5px)}.sombre .catalog-fiche__hatch{mix-blend-mode:soft-light;opacity:1;background:repeating-linear-gradient(-32deg,transparent,transparent 4px,color-mix(in oklch,white 16%,transparent) 0,color-mix(in oklch,white 16%,transparent) 5.5px)}.catalog-fiche.is-restricted .catalog-fiche__body,.catalog-fiche.is-restricted .catalog-fiche__rail{position:relative;z-index:1}@container catalog-item (max-width: 26rem){.catalog-fiche{--catalog-item-title-size:1.02rem;grid-template-columns:2.35rem minmax(0,1fr)}.catalog-fiche__id{padding:.8rem .8rem .75rem}.catalog-fiche__parts{grid-template-columns:minmax(0,1fr)}.catalog-fiche__part{gap:.32rem;padding:.55rem .7rem .6rem}.catalog-fiche__parts[data-single=true] .catalog-fiche__part-track{margin-inline:-.7rem}.catalog-fiche__parts[data-single=true] .catalog-fiche__sections{-moz-columns:1;column-count:1}.catalog-fiche__foot{padding:.55rem .8rem}}.catalog-sections__unavailable{margin-top:.5rem;padding:1rem 0 0;border-top:1px dashed color-mix(in srgb,var(--supports-page-line) 85%,transparent)}.catalog-sections__unavailable-title{margin:0 0 .65rem;font-size:.6875rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted-foreground)}.catalog-sections__unavailable-list{display:flex;flex-wrap:wrap;gap:.45rem;margin:0;padding:0;list-style:none}.catalog-sections__unavailable-item{display:inline-flex;align-items:center;gap:.45rem;padding:.35rem .65rem;border:1px dashed var(--supports-page-line);background:color-mix(in oklch,var(--muted) 40%,transparent);opacity:.72}.catalog-sections__unavailable-code{font-size:.625rem;font-weight:750;letter-spacing:.06em;text-transform:uppercase;color:var(--muted-foreground)}.catalog-sections__unavailable-label{font-size:.75rem;font-weight:550;color:var(--muted-foreground)}.supports-header{border-bottom:1px solid var(--supports-page-line);background:var(--supports-page-bg)}.supports-header__inner{padding:clamp(2rem,5vw,2.75rem) var(--supports-page-gutter)}.supports-header__intro{padding-left:1.15rem;border-left:3px solid var(--primary)}@media (min-width:640px){.supports-header__intro{padding-left:1.35rem}}.supports-header__layout{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:1rem 1.5rem}.supports-header__primary{min-width:0;flex:1 1 16rem;max-width:42rem}.supports-header__secondary{flex-shrink:0;align-self:flex-start}.supports-header__eyebrow{margin:0;font-size:.6875rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted-foreground)}.supports-header__title{margin:.45rem 0 0;font-size:clamp(1.5rem,3vw,2.25rem);font-weight:700;line-height:1.12;letter-spacing:-.03em;text-wrap:balance;color:var(--foreground)}.supports-header__lead{margin:.55rem 0 0;max-width:36rem;font-size:.9375rem;line-height:1.55;color:var(--muted-foreground)}.supports-header__guest-note{margin:0;max-width:18rem;font-size:.8125rem;line-height:1.5;color:var(--muted-foreground);text-align:right}@media (max-width:639px){.supports-header__guest-note{text-align:left}}.supports-header__inline-link{font-weight:600;color:var(--primary);text-decoration:none}.supports-header__inline-link:hover{text-decoration:underline}.supports-header__action-chip{display:inline-flex;align-items:center;gap:.5rem;height:2.25rem;padding-inline:.875rem;border-radius:0;border:1px solid var(--supports-page-line);background:var(--supports-page-surface);font-size:.8125rem;font-weight:600;color:var(--foreground);text-decoration:none;transition:border-color .16s ease,background-color .16s ease}.supports-header__action-chip:hover{border-color:color-mix(in oklch,var(--primary) 28%,var(--border));background:color-mix(in oklch,var(--primary) 5%,var(--supports-page-surface))}.sombre .supports-header__action-chip{border-color:color-mix(in oklch,var(--foreground) 10%,var(--supports-page-line));background:color-mix(in oklch,var(--foreground) 3%,var(--supports-page-surface))}.sombre .supports-header__action-chip:hover{border-color:color-mix(in oklch,var(--primary) 32%,var(--border));background:color-mix(in oklch,var(--primary) 8%,var(--supports-page-surface))}.supports-filters-bar{position:sticky;top:calc(var(--header-offset, 4rem) - 1px);z-index:20;border-bottom:1px solid var(--supports-page-line);background:var(--supports-page-bg)}.supports-filters-bar--mobile{display:block;padding:.75rem var(--supports-page-gutter);background:var(--supports-page-bg)}.supports-filters-bar--desktop{display:none}.supports-filters-bar__sheet-trigger{width:100%;height:2.5rem;justify-content:center;border-radius:0}@media (min-width:1024px){.supports-filters-bar--desktop{display:block}.supports-filters-bar--mobile{display:none}}.supports-filters-bar__inner{padding:1rem var(--supports-page-gutter) 1.125rem}.supports-filters-bar__title{margin:0 0 1rem;font-size:.6875rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--muted-foreground)}.supports-filters-bar__active{padding:.625rem var(--supports-page-gutter);border-bottom:1px solid var(--supports-page-line);background:var(--supports-page-bg)}.supports-filters{display:flex;flex-direction:column;gap:.875rem}.supports-filters__toolbar{display:flex;flex-direction:column;gap:.75rem}@media (min-width:768px){.supports-filters__toolbar{flex-direction:row;align-items:flex-end;gap:1rem}}.supports-filters--compact .supports-filters__search-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.supports-filters__quick{display:flex;flex-wrap:wrap;align-items:center;gap:.375rem}@media (min-width:768px){.supports-filters__quick{flex:1;justify-content:flex-end}}.supports-filters__search{min-width:0;flex:1}@media (min-width:768px){.supports-filters__search{max-width:26rem}}.supports-filters__search-label{display:block;margin-bottom:.375rem;font-size:.625rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--muted-foreground)}.supports-filters__search-field{position:relative;display:flex;align-items:center;height:2.5rem;border-radius:0;border:1px solid var(--supports-page-line);background:var(--supports-page-surface);transition:border-color .16s ease,box-shadow .16s ease}.sombre .supports-filters__search-field{box-shadow:none}.supports-filters__search-field:focus-within{border-color:color-mix(in oklch,var(--ring) 55%,var(--border));box-shadow:0 0 0 3px color-mix(in oklch,var(--ring) 28%,transparent)}.clair .supports-filters__search-field .supports-filters__search-input:focus-visible,.sombre .supports-filters__search-field .supports-filters__search-input:focus-visible,.supports-filters__search-field .supports-filters__search-input:focus,.supports-filters__search-field .supports-filters__search-input:focus-visible{outline:none}.supports-filters__search-icon{pointer-events:none;flex-shrink:0;width:1rem;height:1rem;margin-inline:.875rem .25rem;color:var(--muted-foreground)}.supports-filters__search-input{width:100%;min-width:0;height:100%;border:none;background:transparent;padding:0 .5rem 0 0;font-size:.875rem;color:var(--foreground);outline:none}.supports-filters__search-input::-moz-placeholder{color:color-mix(in oklch,var(--muted-foreground) 85%,transparent)}.supports-filters__search-input::placeholder{color:color-mix(in oklch,var(--muted-foreground) 85%,transparent)}.supports-filters__search-input::-webkit-search-cancel-button{display:none}.supports-filters__search-clear{display:flex;width:1.75rem;height:1.75rem;flex-shrink:0;align-items:center;justify-content:center;margin-inline-end:.5rem;border:none;border-radius:.4375rem;background:transparent;color:var(--muted-foreground);cursor:pointer}.supports-filters__search-clear:hover{background:var(--muted);color:var(--foreground)}.supports-filters__section-title{margin:0 0 .625rem;font-size:.625rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--muted-foreground)}.supports-filters__section-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.625rem}.supports-filters__section-action{border:none;background:none;padding:0;font-size:.6875rem;font-weight:700;color:var(--primary);cursor:pointer}.supports-filters__section-action:hover{text-decoration:underline}.supports-filters__chip{display:inline-flex;align-items:center;gap:.375rem;border-radius:0;border:1px solid var(--supports-page-line);background:var(--supports-page-surface);padding:.375rem .75rem;font-size:.75rem;font-weight:600;color:var(--muted-foreground);cursor:pointer;transition:border-color .15s ease,background-color .15s ease,color .15s ease}.supports-filters__chip:hover{border-color:color-mix(in oklch,var(--foreground) 18%,var(--border));color:var(--foreground)}.supports-filters__chip--active{border-color:color-mix(in oklch,var(--primary) 35%,var(--border));background:color-mix(in oklch,var(--primary) 10%,transparent);color:var(--foreground)}.supports-filters__section-title--inline{margin:0}.supports-filters__reset-inline{display:inline-flex;align-items:center;gap:.25rem;border:none;border-radius:0;background:transparent;padding:.375rem .625rem;font-size:.75rem;font-weight:600;color:var(--muted-foreground);cursor:pointer}.supports-filters__reset-inline:hover{color:var(--foreground);background:var(--accent-fill)}.supports-active-filters{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.supports-active-filters__chip{display:inline-flex;align-items:center;gap:.375rem;border:none;border-radius:0;background:color-mix(in oklch,var(--primary) 12%,transparent);padding:.3125rem .625rem .3125rem .75rem;font-size:.6875rem;font-weight:700;color:var(--foreground);cursor:pointer;transition:background-color .14s ease}.supports-active-filters__chip:hover{background:color-mix(in oklch,var(--primary) 18%,transparent)}.supports-active-filters__chip-icon{width:.75rem;height:.75rem;opacity:.55}.supports-active-filters__clear-all{border:none;background:none;padding:.25rem .375rem;font-size:.6875rem;font-weight:600;color:var(--muted-foreground);cursor:pointer}.supports-active-filters__clear-all:hover{color:var(--foreground);text-decoration:underline}.supports-main{min-width:0;width:100%;background:var(--supports-page-bg)}.supports-catalog-columns{display:grid;grid-template-columns:minmax(0,1fr);-moz-column-gap:1.5rem;column-gap:1.5rem;row-gap:1.75rem;padding:1rem var(--supports-page-gutter) 2.75rem}@media (min-width:768px){.supports-catalog-columns{grid-template-columns:repeat(min(2,var(--supports-col-count,2)),minmax(0,1fr))}}@media (min-width:1024px){.supports-catalog-columns{grid-template-columns:repeat(min(3,var(--supports-col-count,3)),minmax(0,1fr))}}.supports-catalog-stage{--stage-gap:0.85rem;--stage-slide-w:94%;--stage-side-scale:0.96;--stage-side-opacity:0.2;display:flex;flex:1 1 auto;flex-direction:column;min-height:0;min-width:0;padding:.65rem 0 .85rem}@media (min-width:768px){.supports-catalog-stage{--stage-slide-w:90%;--stage-gap:1rem;--stage-side-scale:0.95;--stage-side-opacity:0.18}}@media (min-width:1024px){.supports-catalog-stage{--stage-slide-w:86%;--stage-gap:1.15rem;--stage-side-opacity:0.16}}.supports-catalog-stage__legend{display:flex;flex-shrink:0;align-items:stretch;gap:.625rem;max-width:100%;margin:0 var(--supports-page-gutter) .65rem;padding:.35rem;border-bottom:1px solid var(--supports-page-line)}.supports-catalog-stage__rail{display:flex;flex:1 1 auto;flex-wrap:nowrap;gap:.15rem;min-width:0;overflow-x:auto;scrollbar-width:none}.supports-catalog-stage__rail::-webkit-scrollbar{display:none}.supports-catalog-stage__rail-item{position:relative;display:inline-flex;flex-direction:column;align-items:flex-start;gap:.125rem;flex:0 0 auto;min-width:4.25rem;padding:.5rem .85rem .65rem;border:0;background:transparent;color:color-mix(in oklch,var(--muted-foreground) 88%,transparent);text-align:left;cursor:pointer;transition:color .18s ease}.supports-catalog-stage__rail-item:after{content:"";position:absolute;right:.35rem;bottom:0;left:.35rem;height:2px;background:transparent;transition:background-color .2s ease}.supports-catalog-stage__rail-item.is-active,.supports-catalog-stage__rail-item:hover{color:var(--foreground)}.supports-catalog-stage__rail-item.is-active:after{background:var(--primary)}.supports-catalog-stage__rail-code{font-size:.75rem;font-weight:800;letter-spacing:.06em;line-height:1.15}.supports-catalog-stage__rail-label{max-width:10rem;overflow:hidden;font-size:.625rem;font-weight:500;line-height:1.25;letter-spacing:.01em;text-overflow:ellipsis;white-space:nowrap;opacity:.72}.supports-catalog-stage__rail-item.is-active .supports-catalog-stage__rail-code{color:var(--primary)}.supports-catalog-stage__rail-item.is-active .supports-catalog-stage__rail-label{opacity:.92}.supports-catalog-stage__rail-item.is-unavailable{opacity:.45;cursor:not-allowed}.supports-catalog-stage__rail-item.is-unavailable,.supports-catalog-stage__rail-item.is-unavailable:hover{color:color-mix(in oklch,var(--muted-foreground) 55%,transparent)}.supports-catalog-stage__rail-item.is-unavailable .supports-catalog-stage__rail-label{opacity:.55;text-decoration:line-through}.sombre .supports-catalog-stage{--stage-accent:color-mix(in oklch,var(--primary) 42%,white 58%);--stage-accent-soft:color-mix(in oklch,var(--primary) 28%,white 35%);--stage-side-opacity:0.12}.sombre .supports-catalog-stage__rail-item{color:color-mix(in oklch,var(--muted-foreground) 72%,transparent)}.sombre .supports-catalog-stage__rail-item:hover{color:var(--foreground);background:color-mix(in oklch,white 4%,transparent)}.sombre .supports-catalog-stage__rail-item.is-active{color:var(--foreground);background:color-mix(in oklch,var(--stage-accent) 14%,transparent)}.sombre .supports-catalog-stage__rail-item.is-active:after{height:2.5px;background:var(--stage-accent)}.sombre .supports-catalog-stage__rail-item.is-active .supports-catalog-stage__rail-code{color:var(--stage-accent)}.sombre .supports-catalog-stage__rail-item.is-active .supports-catalog-stage__rail-label{opacity:1;color:color-mix(in oklch,var(--foreground) 88%,var(--stage-accent) 12%)}.sombre .supports-catalog-stage__rail-item.is-unavailable{color:color-mix(in oklch,var(--muted-foreground) 48%,transparent);opacity:.4}.sombre .supports-catalog-stage__rail-item.is-unavailable:hover{color:color-mix(in oklch,var(--muted-foreground) 48%,transparent);background:transparent}.sombre .supports-catalog-stage__arrow{border-color:color-mix(in oklch,var(--stage-accent) 28%,var(--supports-page-line))}.sombre .supports-catalog-stage__arrow:hover{border-color:color-mix(in oklch,var(--stage-accent) 55%,var(--supports-page-line));background:color-mix(in oklch,var(--stage-accent) 12%,var(--supports-page-surface));color:var(--stage-accent)}.supports-catalog-stage__arrow{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;align-self:center;width:2.125rem;height:2.125rem;border:1px solid var(--supports-page-line);border-radius:0;background:var(--supports-page-surface);color:var(--foreground);cursor:pointer;transition:background-color .15s ease,border-color .15s ease}.supports-catalog-stage__arrow:hover{border-color:color-mix(in oklch,var(--primary) 40%,var(--supports-page-line));background:color-mix(in oklch,var(--primary) 8%,var(--supports-page-surface))}.supports-catalog-stage__frame{position:relative;padding-inline:var(--supports-page-gutter)}.supports-catalog-stage__frame,.supports-catalog-stage__viewport{display:flex;flex:1 1 auto;flex-direction:column;min-height:0;min-width:0}.supports-catalog-stage__viewport>div{flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:hidden;padding-block:.5rem .75rem;-webkit-mask-image:linear-gradient(90deg,transparent,#000 2.5%,#000 97.5%,transparent);mask-image:linear-gradient(90deg,transparent,#000 2.5%,#000 97.5%,transparent)}.supports-catalog-stage__track{align-items:stretch;height:100%;margin-left:0!important}.supports-catalog-stage__slide{box-sizing:border-box;display:flex;flex:0 0 var(--stage-slide-w)!important;min-width:0;height:100%;padding-inline:calc(var(--stage-gap) / 2)!important;transform:scale(var(--stage-side-scale));transform-origin:center center;opacity:var(--stage-side-opacity);transition:transform .4s cubic-bezier(.22,1,.36,1),opacity .35s ease;will-change:transform,opacity}.supports-catalog-stage__slide.is-active{z-index:2;transform:none;opacity:1}.supports-catalog-stage--solo .supports-catalog-stage__slide{flex-basis:100%!important;max-width:none;margin-inline:0;transform:none;opacity:1}.supports-catalog-stage--solo .supports-catalog-stage__viewport>div{-webkit-mask-image:none;mask-image:none}.supports-catalog-stage__column{display:flex;flex:1 1 auto;flex-direction:column;width:100%;min-height:0;height:100%;padding:0;border:1px solid color-mix(in srgb,var(--supports-page-line) 92%,transparent);background:var(--supports-page-surface);cursor:pointer;overflow:hidden;transition:border-color .25s ease,outline-color .25s ease}.supports-catalog-stage__slide:not(.is-active) :is(a,button){pointer-events:none}.supports-catalog-stage__column--focus{cursor:default;border-color:color-mix(in oklch,var(--primary) 55%,var(--supports-page-line));box-shadow:none;outline:1px solid color-mix(in oklch,var(--primary) 28%,transparent);outline-offset:-1px}.supports-catalog-stage__column--focus .supports-catalog-column__code{background:color-mix(in oklch,var(--primary) 14%,transparent)}.sombre .supports-catalog-stage__column{border-color:color-mix(in srgb,var(--supports-page-line) 70%,transparent);background:color-mix(in oklch,var(--supports-page-surface) 92%,black 8%)}.sombre .supports-catalog-stage__column--focus{border-color:color-mix(in oklch,var(--stage-accent) 62%,var(--supports-page-line));outline:1px solid color-mix(in oklch,var(--stage-accent) 42%,transparent);background:color-mix(in oklch,var(--stage-accent-soft) 14%,var(--supports-page-surface));box-shadow:0 0 0 1px color-mix(in oklch,var(--stage-accent) 18%,transparent),0 16px 36px -24px color-mix(in oklch,black 70%,transparent)}.sombre .supports-catalog-stage__column--focus .supports-catalog-column__code{background:color-mix(in oklch,var(--stage-accent) 22%,transparent);color:var(--stage-accent)}.sombre .supports-catalog-stage__column--focus .supports-catalog-column__head{border-bottom-color:color-mix(in oklch,var(--stage-accent) 36%,var(--supports-page-line));background:color-mix(in oklch,var(--stage-accent) 12%,var(--supports-page-surface))}.sombre .supports-catalog-stage__column--focus .supports-catalog-column__label{color:var(--foreground)}.sombre .supports-catalog-stage .supports-catalog-semester__head{border-bottom-color:color-mix(in oklch,var(--stage-accent) 18%,var(--supports-page-line))}.supports-catalog-stage .supports-catalog-column{padding-top:0}.supports-catalog-stage .supports-catalog-column__head{flex-shrink:0;margin:0;padding:.9rem 1.05rem .8rem;border-bottom:1px solid color-mix(in srgb,var(--supports-page-line) 88%,transparent)}.supports-catalog-stage__column--focus .supports-catalog-column__head{border-bottom-color:color-mix(in oklch,var(--primary) 22%,var(--supports-page-line));background:color-mix(in oklch,var(--primary) 4%,var(--supports-page-surface))}.supports-catalog-stage .supports-catalog-column__body{display:flex;flex:1 1 auto;flex-direction:column;gap:1.1rem;min-height:0;margin:0;padding:.95rem 1.05rem 1.1rem;overflow-x:hidden;overflow-y:auto;scrollbar-width:thin}.supports-catalog-stage .supports-catalog-semester__head{margin:0 0 .55rem;padding:0 0 .4rem;border-bottom:1px dashed color-mix(in srgb,var(--supports-page-line) 80%,transparent)}.supports-catalog-stage__column--focus .supports-card{border-color:color-mix(in srgb,var(--supports-page-line) 90%,transparent)}.supports-catalog-stage__column--focus .supports-card--has-accent{border-color:var(--supports-card-accent-border)}.supports-catalog-column{display:flex;min-width:0;flex-direction:column;padding-top:1.25rem}.supports-catalog-column__head{display:flex;align-items:center;justify-content:space-between;gap:.625rem;margin-bottom:.875rem;padding-bottom:.75rem;border-bottom:1px solid var(--supports-page-line)}.supports-catalog-column__title{display:flex;min-width:0;flex-wrap:wrap;align-items:center;gap:.5rem;margin:0}.supports-catalog-column__code{display:inline-flex;align-items:center;padding:.1875rem .5rem;border-radius:.375rem;background:color-mix(in oklch,var(--primary) 11%,transparent);font-size:.6875rem;font-weight:800;letter-spacing:.07em;line-height:1.2;color:var(--primary)}.supports-catalog-column__label{font-size:.8125rem;font-weight:600;line-height:1.35;letter-spacing:-.01em;color:var(--foreground)}.supports-catalog-column__count{flex-shrink:0;min-width:1.375rem;padding:.125rem .4375rem;border-radius:0;border:1px solid var(--supports-page-line);background:var(--supports-page-surface);font-size:.625rem;font-weight:800;font-variant-numeric:tabular-nums;text-align:center;color:var(--muted-foreground)}.supports-catalog-column__list{display:flex;flex-direction:column;gap:.375rem;margin:0;padding:0;list-style:none}.supports-catalog-column__body{display:flex;flex-direction:column;gap:1rem}.supports-catalog-semester__head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin:0 0 .5rem;padding:0 0 .375rem;border-bottom:1px solid color-mix(in srgb,var(--supports-page-line) 85%,transparent)}.supports-catalog-semester__label{font-size:.625rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:color-mix(in oklch,var(--muted-foreground) 92%,var(--foreground))}.supports-catalog-semester__count{flex-shrink:0;font-size:.625rem;font-weight:700;font-variant-numeric:tabular-nums;color:color-mix(in oklch,var(--muted-foreground) 80%,transparent)}.supports-catalog-semester__list{display:flex;flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none}.supports-catalog-semester__list--grid,.supports-catalog-semester__list--masonry{display:block;-moz-columns:1;column-count:1;-moz-column-gap:.65rem;column-gap:.65rem;margin:0;padding:0;list-style:none}@media (min-width:640px){.supports-catalog-semester__list--grid,.supports-catalog-semester__list--masonry{-moz-columns:2;column-count:2}}.supports-catalog-semester__list--grid>.supports-catalog-semester__item,.supports-catalog-semester__list--masonry>.supports-catalog-semester__item{display:block;width:100%;margin:0 0 .65rem;-moz-column-break-inside:avoid;break-inside:avoid;page-break-inside:avoid;-webkit-column-break-inside:avoid}.supports-catalog-semester__list--grid>.supports-catalog-semester__item:last-child,.supports-catalog-semester__list--masonry>.supports-catalog-semester__item:last-child{margin-bottom:0}.supports-catalog-semester__item{min-width:0}.supports-catalog-stage .supports-card{align-items:flex-start;height:auto;min-height:0}.supports-catalog-column__item{min-width:0}.supports-card{--supports-card-accent-tint:var(--supports-page-surface);--supports-card-accent-tint-hover:color-mix(in oklch,var(--muted) 35%,var(--supports-page-surface));--supports-card-accent-border:var(--supports-page-line);--supports-card-accent-muted:var(--muted-foreground);position:relative;isolation:isolate;display:flex;align-items:flex-start;gap:.75rem;width:100%;height:auto;min-height:0;padding:.85rem .875rem .8rem;border-radius:0;border:1px solid var(--supports-page-line);border-top:none;background:var(--supports-page-surface);color:inherit;text-decoration:none;overflow:hidden;box-shadow:none;transition:border-color .14s ease,background-color .14s ease,color .14s ease}.supports-card:before{content:"";position:absolute;inset-inline:0;top:0;z-index:2;height:2px;background:color-mix(in oklch,var(--muted-foreground) 28%,var(--supports-page-line));pointer-events:none}.supports-card--has-accent{--supports-card-accent-tint:color-mix(in oklch,var(--supports-card-accent) 11%,var(--supports-page-bg));--supports-card-accent-tint-hover:color-mix(in oklch,var(--supports-card-accent) 16%,var(--supports-page-bg));--supports-card-accent-border:color-mix(in oklch,var(--supports-card-accent) 18%,var(--supports-page-line));--supports-card-accent-muted:color-mix(in oklch,var(--supports-card-accent) 42%,var(--muted-foreground));border-color:var(--supports-card-accent-border);background:var(--supports-card-accent-tint)}.supports-card--has-accent:before{background:var(--supports-card-accent)}.sombre .supports-card--has-accent{--supports-card-accent-tint:color-mix(in oklch,var(--supports-card-accent) 14%,var(--supports-page-surface));--supports-card-accent-tint-hover:color-mix(in oklch,var(--supports-card-accent) 20%,var(--supports-page-surface));--supports-card-accent-border:color-mix(in oklch,var(--supports-card-accent) 26%,var(--supports-page-line));--supports-card-accent-muted:color-mix(in oklch,var(--supports-card-accent) 48%,var(--muted-foreground))}.supports-card--interactive:hover{border-color:color-mix(in oklch,var(--foreground) 12%,var(--supports-page-line));background:var(--supports-card-accent-tint-hover);transform:none}.clair .supports-card--interactive:hover{box-shadow:none}.sombre .supports-card--interactive:hover{border-color:color-mix(in oklch,var(--foreground) 14%,var(--supports-page-line));box-shadow:none}.supports-card--has-accent.supports-card--interactive:hover{border-color:color-mix(in oklch,var(--supports-card-accent) 30%,var(--supports-page-line));background:var(--supports-card-accent-tint-hover)}.clair .supports-card--has-accent.supports-card--interactive:hover,.sombre .supports-card--has-accent.supports-card--interactive:hover{box-shadow:none}.supports-card--interactive:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.supports-card--has-accent.supports-card--interactive:focus-visible{outline-color:color-mix(in oklch,var(--supports-card-accent) 55%,var(--ring))}.supports-card--locked,.supports-card--restricted{cursor:not-allowed}.supports-card--restricted:after{background:repeating-linear-gradient(-45deg,transparent 0,transparent 8px,color-mix(in oklch,color-mix(in oklch,var(--supports-card-accent,var(--muted-foreground)) 22%,var(--supports-page-surface)),transparent 48%) 8px,color-mix(in oklch,color-mix(in oklch,var(--supports-card-accent,var(--muted-foreground)) 22%,var(--supports-page-surface)),transparent 48%) 16px)}.supports-card--locked:before,.supports-card--restricted:after{content:"";pointer-events:none;position:absolute;inset:0;z-index:3;border-radius:inherit}.supports-card--locked:before{background:color-mix(in oklch,var(--supports-page-bg) 52%,transparent)}.supports-card--locked .supports-card__body,.supports-card--locked .supports-card__icon,.supports-card--locked .supports-card__lock-overlay,.supports-card--locked .supports-card__watermark,.supports-card--restricted .supports-card__body,.supports-card--restricted .supports-card__icon,.supports-card--restricted .supports-card__lock-overlay,.supports-card--restricted .supports-card__watermark{position:relative;z-index:4}.supports-card__lock-overlay{position:absolute;inset:0;z-index:5;display:flex;align-items:center;justify-content:center;padding-left:.75rem;pointer-events:none}.supports-card__lock-watermark{width:3.5rem;height:3.5rem;flex-shrink:0;color:var(--foreground);opacity:.18}.sombre .supports-card__lock-watermark{opacity:.22}.supports-card--restricted .supports-card__lock-watermark{color:color-mix(in oklch,var(--supports-card-accent,var(--foreground)) 50%,var(--foreground));opacity:.22}.supports-card--locked .supports-card__cta,.supports-card--restricted .supports-card__cta{display:none}.supports-card--draft{border-style:dashed}.supports-card--has-accent.supports-card--draft{border-color:color-mix(in oklch,var(--supports-card-accent) 38%,var(--supports-page-line))}.supports-card--draft:not(.supports-card--has-accent){border-color:color-mix(in oklch,var(--muted-foreground) 28%,var(--border))}.supports-card__watermark{position:absolute;right:2.75rem;bottom:-.35rem;z-index:0;display:flex;width:4.25rem;height:4.25rem;align-items:center;justify-content:center;pointer-events:none;color:var(--supports-card-accent);opacity:.1}.sombre .supports-card__watermark{opacity:.14}.supports-card__watermark-glyph{width:100%;height:100%}.supports-card__icon{position:relative;z-index:1;display:flex;width:2.5rem;height:2.5rem;flex-shrink:0;align-items:center;justify-content:center;align-self:flex-start;margin-top:.1rem;border-radius:0;border:none;background:var(--muted);color:var(--muted-foreground);transition:background-color .14s ease,color .14s ease}.supports-card--has-accent .supports-card__icon{border:none;background:color-mix(in oklch,var(--supports-card-accent) 14%,var(--muted));color:color-mix(in oklch,var(--supports-card-accent) 55%,var(--foreground))}.supports-card--interactive:hover .supports-card__icon{transform:none}.supports-card--has-accent.supports-card--interactive:hover .supports-card__icon{background:color-mix(in oklch,var(--supports-card-accent) 18%,var(--muted));color:color-mix(in oklch,var(--supports-card-accent) 60%,var(--foreground))}.supports-card__glyph{width:1.2rem;height:1.2rem}.supports-card__body{position:relative;z-index:1;display:flex;min-width:0;flex:1;flex-direction:column;gap:.1875rem;padding-right:.125rem}.supports-card__meta{display:flex;flex-wrap:wrap;gap:.3125rem;margin-bottom:.0625rem}.supports-card__meta-pill{display:inline-flex;align-items:center;border-radius:0;border:none;background:var(--muted);padding:.125rem .4375rem;font-size:.5625rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted-foreground)}.supports-card--has-accent .supports-card__meta-pill{border:none;background:color-mix(in oklch,var(--supports-card-accent) 14%,var(--muted));color:color-mix(in oklch,var(--supports-card-accent) 55%,var(--foreground))}.supports-card__parts{align-items:flex-start;gap:.2rem;margin-top:.35rem}.supports-card__parts,.supports-card__parts-list{display:flex;flex-direction:column;min-width:0;width:100%}.supports-card__parts-list{gap:.15rem;margin:0;padding:0;list-style:none}.supports-card__parts-item{display:flex;align-items:baseline;gap:.4rem;min-width:0;font-size:.6875rem;line-height:1.35;color:var(--muted-foreground)}.supports-card--has-accent .supports-card__parts-item{color:var(--supports-card-accent-muted)}.supports-card__parts-num{flex-shrink:0;font-size:.625rem;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:.06em;opacity:.72}.supports-card--has-accent .supports-card__parts-num{color:var(--supports-card-accent);opacity:.85}.supports-card__parts-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500;letter-spacing:-.01em}.supports-card__parts-toggle{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:.05rem 0 0;padding:0;border:0;background:transparent;color:var(--muted-foreground);cursor:pointer;font-size:.6875rem;font-weight:650;letter-spacing:.02em;line-height:1.2;text-decoration:none}.supports-card__parts-toggle:hover{color:var(--foreground)}.supports-card--has-accent .supports-card__parts-toggle{color:var(--supports-card-accent);opacity:.85}.supports-card--has-accent .supports-card__parts-toggle:hover{opacity:1}.supports-card__title{font-family:var(--font-heading,var(--font-sans));font-size:.9375rem;font-weight:650;line-height:1.32;letter-spacing:-.018em;text-wrap:pretty;color:var(--foreground);transition:color .18s ease}.supports-card__subtitle{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:1;font-size:.75rem;line-height:1.4;color:color-mix(in oklch,var(--muted-foreground) 94%,transparent)}.supports-card--has-accent .supports-card__subtitle{color:var(--supports-card-accent-muted)}.supports-card__byline{display:inline-flex;align-items:center;gap:.3125rem;margin-top:.0625rem;font-size:.6875rem;font-weight:500;line-height:1.35;color:color-mix(in oklch,var(--muted-foreground) 88%,transparent)}.supports-card--has-accent .supports-card__byline{color:var(--supports-card-accent-muted)}.supports-card--interactive:hover .supports-card__title{color:color-mix(in oklch,var(--foreground) 78%,var(--primary) 22%)}.supports-card--has-accent.supports-card--interactive:hover .supports-card__title{color:color-mix(in oklch,var(--foreground) 72%,var(--supports-card-accent) 28%)}.supports-card__cta{position:relative;z-index:1;display:flex;width:1.75rem;height:1.75rem;flex-shrink:0;align-items:center;justify-content:center;align-self:flex-start;margin-top:.2rem;margin-right:0;border-radius:0;border:none;background:var(--muted);color:var(--muted-foreground);transition:color .14s ease,background-color .14s ease}.supports-card__cta-icon{width:.8125rem;height:.8125rem}.supports-card--has-accent .supports-card__cta{border:none;background:color-mix(in oklch,var(--supports-card-accent) 14%,var(--muted));color:color-mix(in oklch,var(--supports-card-accent) 55%,var(--foreground))}.supports-card--interactive:hover .supports-card__cta{transform:none}.supports-card--interactive:not(.supports-card--has-accent):hover .supports-card__cta{border:none;background:color-mix(in oklch,var(--primary) 12%,var(--muted));color:var(--primary)}.supports-card--has-accent.supports-card--interactive:hover .supports-card__cta{border:none;background:color-mix(in oklch,var(--supports-card-accent) 22%,var(--muted));color:color-mix(in oklch,var(--supports-card-accent) 60%,var(--foreground))}.supports-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;margin:clamp(2rem,5vw,3rem) var(--supports-page-gutter);padding:clamp(2.5rem,6vw,4rem) 1.5rem;border-radius:0;border:1px dashed var(--supports-page-line);background:var(--supports-page-surface);text-align:center}.sombre .supports-empty{box-shadow:none}.supports-empty__icon{display:flex;width:3rem;height:3rem;align-items:center;justify-content:center;border-radius:0;border:1px solid var(--supports-page-line);background:var(--supports-page-bg);color:var(--muted-foreground)}.supports-empty__title{margin:1.25rem 0 0;font-size:1.25rem;font-weight:700;letter-spacing:-.02em;color:var(--foreground)}.supports-empty__text{margin:.5rem 0 0;max-width:22rem;font-size:.875rem;line-height:1.6;color:var(--muted-foreground)}.supports-empty__action{margin-top:1.5rem}@media (prefers-reduced-motion:reduce){.supports-card,.supports-card__cta,.supports-card__icon{transition:none}.supports-card--interactive:hover,.supports-card--interactive:hover .supports-card__cta,.supports-card--interactive:hover .supports-card__icon{transform:none}.supports-card--locked:before{backdrop-filter:none}}.course-entry{--ce-accent:var(--primary);--ce-enter:420ms;--ce-exit:520ms;--ce-schema-w:min(22rem,38vw);--ce-x:0px;--ce-y:0px;--ce-sx:1;--ce-sy:0.04;position:fixed;inset:0;z-index:200;display:block;overflow:hidden;isolation:isolate;cursor:progress}.course-entry[data-stalled=true]{cursor:pointer}.course-entry__scrim{z-index:0;background:rgba(0,0,0,.32);opacity:0}.course-entry__panel,.course-entry__scrim{position:absolute;inset:0;pointer-events:none}.course-entry__panel{z-index:1;transform-origin:top left;background:var(--background);box-shadow:0 0 0 1px color-mix(in oklch,var(--foreground) 12%,transparent),0 30px 80px -24px rgba(0,0,0,.5);will-change:transform}.course-entry__panel:after{content:"";position:absolute;inset-inline:0;bottom:0;height:3px;background:linear-gradient(90deg,var(--ce-accent),color-mix(in oklch,var(--ce-accent) 55%,transparent))}.course-entry__shell{position:relative;z-index:2;display:grid;grid-template-columns:var(--ce-schema-w) minmax(0,1fr);width:100%;height:100%;min-height:100%;color:var(--foreground);pointer-events:none}.course-entry__shell:not(:has(.course-entry__schema,.course-entry__cahier)){grid-template-columns:minmax(0,1fr)}.course-entry__shell:has(.course-entry__cahier){--ce-schema-w:min(38rem,58vw)}.course-entry__content{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:.85rem;min-width:0;height:100%;padding-inline:clamp(1.5rem,5vw,4.5rem);padding-block:clamp(2rem,6vh,4rem)}.course-entry__mark{display:grid;place-items:center;width:clamp(2.75rem,6vw,3.5rem);height:clamp(2.75rem,6vw,3.5rem);background:linear-gradient(180deg,color-mix(in oklch,var(--ce-accent) 88%,black 6%),color-mix(in oklch,var(--ce-accent) 72%,black 14%));color:#fff}.course-entry__mark-icon{width:55%;height:55%}.course-entry__kicker{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem;font-size:.6875rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--muted-foreground)}.course-entry__chip{display:inline-flex;align-items:center;padding:.2rem .5rem;border:1px solid color-mix(in oklch,var(--ce-accent) 38%,transparent);background:color-mix(in oklch,var(--ce-accent) 12%,transparent);color:color-mix(in oklch,var(--ce-accent) 55%,var(--foreground))}.course-entry__title{margin:0;max-width:20ch;font-family:var(--font-heading,var(--font-sans));font-size:clamp(1.9rem,5.5vw,3.25rem);font-weight:700;letter-spacing:-.035em;line-height:1.06;text-wrap:balance;color:var(--foreground)}.course-entry__lede{margin:0;max-width:34rem;font-size:clamp(.9375rem,1.8vw,1.0625rem);line-height:1.45;color:var(--muted-foreground)}.course-entry__schema{display:flex;flex-direction:column;gap:.65rem;width:100%;height:100%;min-height:100%;min-width:0;padding:clamp(1.1rem,3vh,1.85rem) 0;border:none;background:transparent;opacity:0;overflow:hidden}.course-entry__schema-k{flex:none;margin:0;padding-inline:clamp(1rem,2.2vw,1.65rem);font-size:.625rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--muted-foreground)}.course-entry__schema-path{flex:none;margin:0 0 .25rem;padding-inline:clamp(1rem,2.2vw,1.65rem);font-size:clamp(1.05rem,2vw,1.35rem);font-weight:650;letter-spacing:-.025em;line-height:1.2;color:var(--foreground)}.course-entry__schema-list{list-style:none;margin:0;padding:0;flex:1 1 auto;min-height:0;display:flex;flex-direction:column;border-top:1px solid color-mix(in oklch,var(--foreground) 12%,transparent);overflow-y:auto;overscroll-behavior:contain}.course-entry__schema-item{flex:none;opacity:0;border-bottom:1px solid color-mix(in oklch,var(--foreground) 12%,transparent)}.course-entry__schema-band{display:flex;align-items:center;gap:clamp(.75rem,2vw,1.25rem);width:100%;padding:clamp(.95rem,2.2vh,1.35rem) clamp(1rem,2.2vw,1.65rem);color:inherit}.course-entry__schema-bn{flex:none;width:2.65rem;font-size:clamp(1.35rem,2.6vw,1.85rem);font-weight:200;letter-spacing:-.05em;line-height:1;font-variant-numeric:tabular-nums;color:color-mix(in oklch,var(--foreground) 34%,transparent)}.course-entry__schema-bt{flex:1;min-width:0;font-size:clamp(1.2rem,2.4vw,1.65rem);font-weight:200;letter-spacing:-.045em;line-height:1.15;color:var(--foreground);overflow-wrap:anywhere}.course-entry__schema-item.is-done .course-entry__schema-bn{color:color-mix(in srgb,var(--ce-accent) 70%,color-mix(in oklch,var(--foreground) 34%,transparent))}.course-entry__schema-item.is-done .course-entry__schema-bt{color:color-mix(in oklch,var(--foreground) 78%,var(--muted-foreground))}.course-entry__schema-item.is-now .course-entry__schema-band{background:var(--ce-accent);color:var(--ce-on-accent)}.course-entry__schema-item.is-now .course-entry__schema-bn{color:color-mix(in srgb,var(--ce-on-accent) 55%,transparent)}.course-entry__schema-item.is-now .course-entry__schema-bt{color:var(--ce-on-accent)}.course-entry__schema.is-pending .course-entry__schema-bt{color:transparent;background:color-mix(in oklch,var(--foreground) 10%,transparent)}.course-entry__schema.is-pending .course-entry__schema-bn{color:transparent;background:color-mix(in oklch,var(--foreground) 8%,transparent)}.course-entry__status{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem .9rem;margin-top:.35rem;opacity:0;transition:opacity .28s ease}.course-entry[data-stalled=true] .course-entry__status{opacity:1}.course-entry__rail{position:relative;display:block;width:min(16rem,45vw);height:2px;overflow:hidden;background:color-mix(in oklch,var(--foreground) 14%,transparent)}.course-entry__rail-fill{position:absolute;inset-block:0;left:0;width:38%;background:var(--ce-accent);animation:course-entry-rail 1.15s cubic-bezier(.65,0,.35,1) infinite}.course-entry__status-label{font-size:.6875rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted-foreground)}.course-entry__cahier{--ce-slat-w:2.55rem;display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-template-rows:minmax(0,1fr);width:100%;height:100%;min-height:100%;min-width:0;opacity:0;overflow:hidden}.course-entry__cahier-spine{display:none}.course-entry__cahier-slats{display:flex;flex-direction:row;align-items:stretch;min-width:0;height:100%}.course-entry__cahier-slats.is-empty{width:0;min-width:0;overflow:hidden;pointer-events:none}.course-entry__cahier-slat{display:flex;flex:none;align-items:stretch;justify-content:center;width:var(--ce-slat-w);min-height:0;border-right:1px solid color-mix(in oklch,var(--foreground) 12%,transparent);background:color-mix(in oklch,var(--muted) 28%,var(--background));color:var(--muted-foreground);opacity:0}.course-entry__cahier-slats--after .course-entry__cahier-slat{border-right:none;border-left:1px solid color-mix(in oklch,var(--foreground) 12%,transparent)}.course-entry__cahier-slat.is-done{color:color-mix(in oklch,var(--ce-accent) 55%,var(--muted-foreground))}.course-entry__cahier-slat-label{display:flex;align-items:center;gap:.65rem;padding:1.1rem 0;writing-mode:vertical-rl;transform:rotate(180deg);font-size:.6875rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;white-space:nowrap}.course-entry__cahier-slat-title{max-height:18rem;overflow:hidden;text-overflow:ellipsis;font-weight:650;letter-spacing:.1em}.course-entry__cahier-page{display:flex;flex-direction:column;min-width:0;min-height:0;padding:clamp(1.15rem,3vh,1.85rem) clamp(1.15rem,2.4vw,1.75rem) clamp(1.35rem,3vh,2rem);background:var(--ce-accent);color:var(--ce-on-accent);overflow:hidden}.course-entry__cahier-k{margin:0;font-size:.625rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:color-mix(in srgb,var(--ce-on-accent) 55%,transparent)}.course-entry__cahier-index{margin:.55rem 0 0;font-size:clamp(2rem,4.5vw,2.75rem);font-weight:200;letter-spacing:-.05em;line-height:1;font-variant-numeric:tabular-nums;color:color-mix(in srgb,var(--ce-on-accent) 70%,transparent)}.course-entry__cahier-title{margin:.35rem 0 0;font-size:clamp(1.35rem,2.6vw,1.75rem);font-weight:650;letter-spacing:-.03em;line-height:1.15;color:var(--ce-on-accent)}.course-entry__cahier-list{list-style:none;margin:1.15rem 0 0;padding:0;display:flex;flex-direction:column;gap:.55rem;min-height:0;overflow-y:auto;overscroll-behavior:contain}.course-entry__cahier-item{display:flex;align-items:baseline;gap:.75rem;min-width:0;opacity:0;font-size:clamp(.95rem,1.8vw,1.12rem);font-weight:400;letter-spacing:-.02em;line-height:1.25;color:color-mix(in srgb,var(--ce-on-accent) 78%,transparent)}.course-entry__cahier-item.is-now{font-weight:650;color:var(--ce-on-accent)}.course-entry__cahier-item.is-done{color:color-mix(in srgb,var(--ce-on-accent) 62%,transparent)}.course-entry__cahier-bn{flex:none;width:1.7rem;font-weight:200;font-variant-numeric:tabular-nums;letter-spacing:-.04em;opacity:.7}.course-entry__cahier-bt{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.course-entry__cahier.is-pending .course-entry__cahier-bn,.course-entry__cahier.is-pending .course-entry__cahier-bt{color:transparent;background:color-mix(in srgb,var(--ce-on-accent) 18%,transparent)}.course-entry.is-enter .course-entry__panel{animation:course-entry-panel-in var(--ce-enter) cubic-bezier(.22,1,.36,1) both}.course-entry.is-enter .course-entry__scrim{animation:course-entry-fade-in .3s ease both}.course-entry.is-enter .course-entry__schema{animation:course-entry-rise .48s cubic-bezier(.22,1,.36,1) .18s both}.course-entry.is-enter .course-entry__schema-item{animation:course-entry-dot-in .38s cubic-bezier(.22,1,.36,1) both;animation-delay:calc(.32s + (var(--ce-dot, 0) * 70ms))}.course-entry.is-enter .course-entry__cahier{animation:course-entry-rise .48s cubic-bezier(.22,1,.36,1) .16s both}.course-entry.is-enter .course-entry__cahier-slat{animation:course-entry-slat-in .42s cubic-bezier(.22,1,.36,1) both;animation-delay:calc(.22s + (var(--ce-slat, 0) * 55ms))}.course-entry.is-enter .course-entry__cahier-item{animation:course-entry-dot-in .38s cubic-bezier(.22,1,.36,1) both;animation-delay:calc(.36s + (var(--ce-dot, 0) * 70ms))}.course-entry.is-enter .course-entry__cahier-chip{animation:course-entry-dot-in .38s cubic-bezier(.22,1,.36,1) both;animation-delay:calc(.26s + (var(--ce-slat, 0) * 55ms))}.course-entry.is-enter .course-entry__mark{animation:course-entry-rise .42s cubic-bezier(.22,1,.36,1) .22s both}.course-entry.is-enter .course-entry__kicker{animation:course-entry-rise .42s cubic-bezier(.22,1,.36,1) .28s both}.course-entry.is-enter .course-entry__title{animation:course-entry-rise .42s cubic-bezier(.22,1,.36,1) .33s both}.course-entry.is-enter .course-entry__lede{animation:course-entry-rise .42s cubic-bezier(.22,1,.36,1) .38s both}.course-entry.is-exit{pointer-events:none;cursor:default}.course-entry.is-exit .course-entry__panel{animation:course-entry-panel-out var(--ce-exit) cubic-bezier(.76,0,.24,1) both}.course-entry.is-exit .course-entry__scrim{animation:course-entry-fade-out .32s ease both}.course-entry.is-exit .course-entry__shell{animation:course-entry-content-out .3s cubic-bezier(.55,0,1,.45) both}@keyframes course-entry-panel-in{0%{transform:translate(var(--ce-x),var(--ce-y)) scale(var(--ce-sx),var(--ce-sy))}to{transform:translate(0) scale(1)}}@keyframes course-entry-panel-out{0%{transform:translateY(0)}to{transform:translateY(-101%)}}@keyframes course-entry-rise{0%{opacity:0;transform:translateY(1rem)}to{opacity:1;transform:translateY(0)}}@keyframes course-entry-content-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-2.5rem)}}@keyframes course-entry-fade-in{0%{opacity:0}to{opacity:1}}@keyframes course-entry-fade-out{0%{opacity:1}to{opacity:0}}@keyframes course-entry-rail{0%{transform:translateX(-105%)}to{transform:translateX(265%)}}@keyframes course-entry-dot-in{0%{opacity:0;transform:scale(.65)}to{opacity:1;transform:scale(1)}}@keyframes course-entry-slat-in{0%{opacity:0;transform:translateX(-.55rem)}to{opacity:1;transform:translateX(0)}}.course-entry.is-enter .course-entry__cahier-slats--after .course-entry__cahier-slat{animation-name:course-entry-slat-in-end}@keyframes course-entry-slat-in-end{0%{opacity:0;transform:translateX(.55rem)}to{opacity:1;transform:translateX(0)}}@media (max-width:860px){.course-entry{--ce-schema-w:min(17.5rem,42vw)}.course-entry__shell:has(.course-entry__cahier){--ce-schema-w:min(28rem,52vw)}.course-entry__schema-bn{width:2.25rem;font-size:1.2rem}.course-entry__schema-bt{font-size:1.1rem}.course-entry__cahier{--ce-slat-w:2.15rem}}@media (max-width:640px){.course-entry{--ce-schema-w:100%}.course-entry__shell{grid-template-columns:1fr;grid-template-rows:minmax(42vh,1fr) auto}.course-entry__shell:has(.course-entry__cahier){grid-template-rows:minmax(48vh,1fr) auto}.course-entry__schema{border:none;min-height:0;height:100%}.course-entry__content{height:auto;justify-content:flex-start;padding-block:1.35rem 1.75rem}.course-entry__cahier{display:flex;flex-direction:column;min-height:0;height:100%}.course-entry__cahier-spine{display:flex;flex:none;align-items:stretch;gap:0;border-bottom:1px solid color-mix(in oklch,var(--foreground) 12%,transparent)}.course-entry__cahier-chip{display:flex;flex:1 1 0;align-items:center;justify-content:center;min-height:2.35rem;border-right:1px solid color-mix(in oklch,var(--foreground) 12%,transparent);font-size:.6875rem;font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:.06em;color:var(--muted-foreground);background:color-mix(in oklch,var(--muted) 22%,var(--background));opacity:0}.course-entry__cahier-chip:last-child{border-right:none}.course-entry__cahier-chip.is-current{background:var(--ce-accent);color:var(--ce-on-accent);font-weight:800}.course-entry__cahier-chip.is-done:not(.is-current){color:color-mix(in oklch,var(--ce-accent) 55%,var(--muted-foreground))}.course-entry__cahier-slats{display:none}.course-entry__cahier-page{flex:1 1 auto;min-height:0;padding:1.1rem 1.15rem 1.25rem}.course-entry__cahier-index{font-size:1.75rem}.course-entry__cahier-title{font-size:1.2rem}}@media (prefers-reduced-motion:reduce){.course-entry.is-enter .course-entry__panel,.course-entry.is-exit .course-entry__panel{animation:none;transform:none}.course-entry.is-enter .course-entry__scrim{animation:none;opacity:1}.course-entry.is-enter .course-entry__cahier,.course-entry.is-enter .course-entry__cahier-chip,.course-entry.is-enter .course-entry__cahier-item,.course-entry.is-enter .course-entry__cahier-page,.course-entry.is-enter .course-entry__cahier-slat,.course-entry.is-enter .course-entry__kicker,.course-entry.is-enter .course-entry__lede,.course-entry.is-enter .course-entry__mark,.course-entry.is-enter .course-entry__schema,.course-entry.is-enter .course-entry__schema-item,.course-entry.is-enter .course-entry__title{animation:none;opacity:1;transform:none}.course-entry.is-exit .course-entry__panel,.course-entry.is-exit .course-entry__scrim,.course-entry.is-exit .course-entry__shell{animation:course-entry-fade-out .18s ease both}.course-entry__rail-fill{animation-duration:2.4s}}:is([data-slot=button],.tutor-badge,.course-status-badge,.course-page-header__meta-pill,.course-page-header__action-chip,.course-page-header__home-tags li,.course-sidebar__meta-pill,.project-card__badge,.project-card__go,.project-github__panel-cta,.project-github__metric,.project-github__lang-chip,.supports-filters__chip,.supports-filters__reset-inline,.supports-card__meta-pill,.supports-card__cta,.catalog-library__toggle,.catalog-library__nav-btn,.catalog-folio__rail,.catalog-folio__flag,.catalog-fiche__rail,.catalog-fiche__flag,.home-quick-link,.home-banner,.home-carousel--cards .home-carousel__slide--card,.home-stats--cards .home-stats__item,.home-hero__aside,.home-hero__highlight-icon,.profile-hero__chip,.profile-hero__monogram,.profile-hero__logout,.profile-aside,.profile-aside__icon,.profile-form__submit,.profile-danger__reveal,.profile-danger__submit,.course-int-link__cta,.course-qcm-link__cta,.course-pdf-card__cta,.qcm-block__go,.profile-admin-cta__btn,.auth-page__submit){border-radius:0}.home-quick-link--primary{border-color:color-mix(in oklch,var(--primary) 40%,var(--border));background:var(--primary);color:var(--primary-foreground);box-shadow:none}.home-quick-link--primary .home-quick-link__cta{color:inherit}.sombre{--course-block-surface:color-mix(in srgb,var(--surface) 94%,var(--bg-soft) 6%);--course-block-surface-muted:color-mix(in srgb,var(--bg-soft) 40%,var(--muted) 60%);--course-block-inset:color-mix(in srgb,var(--surface) 78%,var(--bg-soft) 22%);--cb-surface:color-mix(in srgb,var(--surface) 96%,var(--bg-soft) 4%);--cb-surface-2:color-mix(in srgb,var(--muted) 44%,var(--bg-soft) 56%)}