.course-atlas{--atlas-gutter:clamp(1rem,2.5vw,2rem);--atlas-line:var(--cb-line,var(--border));--atlas-surface:var(--cb-surface,var(--card));--atlas-bg:var(--background);--atlas-tone:var(--primary);display:flex;flex:1 1 auto;flex-direction:column;width:100%;min-width:0;min-height:0;height:calc(100dvh - var(--header-offset, 0px));max-height:calc(100dvh - var(--header-offset, 0px));background:var(--atlas-bg)}.sombre .course-atlas{--atlas-surface:var(--surface,var(--card));--atlas-bg:var(--bg,var(--background))}.course-atlas__bar{display:flex;flex-shrink:0;flex-wrap:wrap;align-items:center;gap:.6rem 1.25rem;padding:.7rem var(--atlas-gutter);border-bottom:1px solid var(--atlas-line);background:var(--atlas-bg)}.course-atlas__identity{display:flex;min-width:0;flex-direction:column;gap:.1rem;margin-right:auto}.course-atlas__eyebrow{margin:0;font-size:.5625rem;font-weight:750;letter-spacing:.12em;text-transform:uppercase;color:var(--muted-foreground)}.course-atlas__title{margin:0;font-family:var(--font-heading,var(--font-sans));font-size:1.0625rem;font-weight:750;letter-spacing:-.038em;line-height:1.1}.course-atlas__stats{display:flex;align-items:stretch;gap:0;margin:0;border:1px solid var(--atlas-line)}.course-atlas__stats>div{display:flex;min-width:4.5rem;flex-direction:column;gap:.05rem;padding:.25rem .6rem}.course-atlas__stats>div+div{border-left:1px solid var(--atlas-line)}.course-atlas__stats dt{font-size:.5rem;font-weight:750;letter-spacing:.12em;text-transform:uppercase;color:var(--muted-foreground)}.course-atlas__stats dd{display:flex;align-items:center;gap:.4rem;margin:0;font-size:.8125rem;font-weight:700;font-variant-numeric:tabular-nums;line-height:1.2;color:var(--foreground)}.course-atlas__stat-of{font-size:.6875rem;font-weight:600;color:var(--muted-foreground)}.course-atlas__stat-track{width:2.5rem;height:2px;background:color-mix(in oklch,var(--muted-foreground) 20%,transparent)}.course-atlas__stat-fill{display:block;height:100%;background:var(--primary)}.course-atlas__tools{display:flex;flex-wrap:wrap;align-items:stretch;gap:.3rem}.course-atlas__search{display:inline-flex;align-items:center;gap:.4rem;height:2rem;padding:0 .55rem;border:1px solid var(--atlas-line);background:var(--atlas-surface);color:var(--muted-foreground)}.course-atlas__search svg{width:.8125rem;height:.8125rem;flex-shrink:0}.course-atlas__search:focus-within{border-color:color-mix(in oklch,var(--primary) 50%,var(--border))}.course-atlas__search input{width:12rem;border:none;background:none;font-size:.75rem;color:var(--foreground);outline:none}.course-atlas__search input::-webkit-search-cancel-button{-webkit-appearance:none;appearance:none}.course-atlas__reset,.course-atlas__select,.course-atlas__toggle{height:2rem;padding:0 .6rem;border:1px solid var(--atlas-line);border-radius:0;background:var(--atlas-surface);font-size:.6875rem;font-weight:650;letter-spacing:.03em;color:var(--foreground);cursor:pointer}.course-atlas__reset:hover,.course-atlas__select:hover,.course-atlas__toggle:hover{border-color:color-mix(in oklch,var(--primary) 40%,var(--border))}.course-atlas__toggle{font-size:.5625rem;font-weight:750;letter-spacing:.1em;text-transform:uppercase;color:var(--muted-foreground)}.course-atlas__toggle[aria-pressed=true]{border-color:color-mix(in oklch,var(--primary) 55%,var(--border));background:color-mix(in oklch,var(--primary) 12%,var(--atlas-surface));color:color-mix(in oklch,var(--primary) 70%,var(--foreground))}.course-atlas__reset{display:inline-flex;align-items:center;gap:.3rem;background:transparent;font-size:.5625rem;font-weight:750;letter-spacing:.1em;text-transform:uppercase;color:var(--muted-foreground)}.course-atlas__reset svg{width:.75rem;height:.75rem}.course-atlas__canvas{position:relative;flex:1 1 auto;min-height:0;background:var(--atlas-bg)}.course-atlas__canvas .react-flow{position:relative;width:100%;height:100%;overflow:hidden}.course-atlas__empty{display:flex;height:100%;flex-direction:column;align-items:center;justify-content:center;gap:.85rem;margin:0;padding:3rem 1rem;font-size:.8125rem;color:var(--muted-foreground)}.course-atlas__empty p{margin:0}.atlas-handle{width:1px;height:1px;min-width:0;min-height:0;border:none;background:transparent;opacity:0;pointer-events:none}.course-atlas .react-flow__node-atlasPromotion{width:216px}.course-atlas .react-flow__node-atlasSemester{width:176px}.course-atlas .react-flow__node-atlasCourse{width:268px}.atlas-group{display:flex;align-items:baseline;justify-content:space-between;gap:.4rem}.atlas-group--promotion{width:216px;padding:.2rem 0 .3rem;border-bottom:2px solid color-mix(in oklch,var(--foreground) 38%,transparent)}.atlas-group--semester{width:176px;padding:.2rem 0 .28rem;border-bottom:1px solid color-mix(in oklch,var(--foreground) 22%,transparent)}.atlas-group__label{overflow:hidden;min-width:0;font-size:.5625rem;font-weight:750;letter-spacing:.11em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;color:var(--muted-foreground)}.atlas-group--promotion .atlas-group__label{font-size:.6875rem;font-weight:800;letter-spacing:.09em;color:var(--foreground)}.atlas-group__count{flex-shrink:0;font-size:.5625rem;font-weight:700;font-variant-numeric:tabular-nums;color:color-mix(in oklch,var(--muted-foreground) 70%,transparent)}.course-atlas .atlas-edge .react-flow__edge-path{stroke:color-mix(in oklch,var(--muted-foreground) 32%,transparent);stroke-width:1}.course-atlas .react-flow__node{outline:none}.course-atlas .react-flow__controls{margin:.75rem;border:1px solid var(--atlas-line);border-radius:0;background:var(--atlas-surface);box-shadow:none}.course-atlas .react-flow__controls-button{width:1.75rem;height:1.75rem;border:none;border-bottom:1px solid var(--atlas-line);background:transparent;color:var(--foreground);fill:currentColor}.course-atlas .react-flow__controls-button:last-child{border-bottom:none}.course-atlas .react-flow__controls-button:hover{background:color-mix(in oklch,var(--muted) 30%,transparent)}.course-atlas .react-flow__attribution{background:transparent;font-size:.55rem}.course-atlas .react-flow__attribution a{color:color-mix(in oklch,var(--muted-foreground) 55%,transparent)}.atlas-node{--atlas-tone:var(--muted-foreground);position:relative;display:grid;width:100%;height:104px;grid-template-columns:7px 68px minmax(0,1fr);overflow:hidden;border:1px solid var(--atlas-line);border-left:none;border-radius:2px 5px 5px 2px;background:var(--atlas-surface);box-shadow:0 8px 16px -10px rgb(0 0 0/.45),0 1px 2px rgb(0 0 0/.1);cursor:pointer;text-align:left;transition:transform .2s cubic-bezier(.2,.9,.3,1.05),box-shadow .2s ease,border-color .2s ease}.atlas-node:hover{transform:translateY(-2px);border-color:color-mix(in oklch,var(--atlas-tone) 45%,var(--border));box-shadow:0 18px 26px -14px rgb(0 0 0/.5),0 3px 6px rgb(0 0 0/.14)}.atlas-node:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.atlas-node__spine{background:var(--atlas-tone);box-shadow:inset -1px 0 0 rgb(0 0 0/.22),inset 1px 0 0 rgb(255 255 255/.3)}.atlas-node__cover{position:relative;display:block;overflow:hidden;background:radial-gradient(circle at 70% 24%,rgb(255 255 255/.34),transparent 52%),radial-gradient(circle at 22% 84%,rgb(0 0 0/.24),transparent 56%),linear-gradient(142deg,var(--atlas-tone),color-mix(in oklch,var(--atlas-tone) 62%,black))}.atlas-node__image{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.atlas-node__watermark{position:absolute;inset:0;display:grid;place-items:center;color:rgb(255 255 255/.5)}.atlas-node__watermark svg{width:46%;height:auto}.atlas-node__lock{position:absolute;top:5px;left:5px;display:inline-flex;padding:3px;background:rgb(0 0 0/.5);backdrop-filter:blur(3px);border-radius:3px;color:#fff}.atlas-node__lock svg{width:.65rem;height:.65rem}.atlas-node__body{display:flex;min-width:0;flex-direction:column;gap:.2rem;padding:.5rem .6rem .45rem .65rem}.atlas-node__kicker{display:flex;min-width:0;align-items:center;gap:.35rem;font-size:.5rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted-foreground)}.atlas-node__kicker-text{overflow:hidden;min-width:0;text-overflow:ellipsis;white-space:nowrap}.atlas-node__mark{width:.7rem;height:.7rem;flex-shrink:0;margin-left:auto;color:color-mix(in oklch,var(--atlas-tone) 65%,var(--foreground))}.atlas-node__new{flex-shrink:0;padding:0 .35rem;border:1px solid;border-radius:999px;letter-spacing:.08em;color:color-mix(in oklch,var(--atlas-tone) 70%,var(--foreground))}.atlas-node__title{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-family:var(--font-heading,var(--font-sans));font-size:.8125rem;font-weight:700;letter-spacing:-.024em;line-height:1.22;color:var(--foreground)}.atlas-node__foot{display:flex;flex-direction:column;gap:.25rem;margin-top:auto}.atlas-node__row{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem;font-size:.5625rem;font-variant-numeric:tabular-nums;color:var(--muted-foreground)}.atlas-node__workload{overflow:hidden;min-width:0;text-overflow:ellipsis;white-space:nowrap}.atlas-node__state{flex-shrink:0;font-weight:750;letter-spacing:.04em;color:color-mix(in oklch,var(--atlas-tone) 62%,var(--foreground))}.atlas-node__bar{display:block;height:2px;background:color-mix(in oklch,var(--muted-foreground) 18%,transparent)}.atlas-node__fill{display:block;height:100%;background:var(--atlas-tone)}.atlas-node[data-state=restricted] .atlas-node__cover,.atlas-node[data-state=unavailable] .atlas-node__cover{filter:grayscale(1);opacity:.62}.atlas-node[data-state=unavailable]{border-style:dashed;box-shadow:none}.atlas-node[data-state=unavailable]:hover{box-shadow:0 10px 18px -12px rgb(0 0 0/.4)}.atlas-node[data-state=unavailable] .atlas-node__title{color:var(--muted-foreground)}.atlas-node[data-state=unavailable] .atlas-node__spine{background:repeating-linear-gradient(135deg,color-mix(in oklch,var(--muted-foreground) 45%,transparent) 0 3px,transparent 3px 6px);box-shadow:none}.atlas-sheet__backdrop{position:fixed;inset:0;z-index:60;background:color-mix(in oklch,black 62%,transparent);backdrop-filter:blur(3px)}.atlas-sheet{position:fixed;top:50%;left:50%;z-index:61;display:flex;width:min(40rem,calc(100vw - 1.5rem));max-height:min(46rem,calc(100dvh - 2.5rem));flex-direction:column;overflow:hidden;transform:translate(-50%,-50%);border:1px solid var(--border);border-radius:0;background:var(--cb-surface,var(--card))}.sombre .atlas-sheet{background:var(--surface,var(--card))}.atlas-sheet__head{position:relative;flex-shrink:0}.atlas-sheet__cover{display:flex;height:6.5rem;align-items:center;justify-content:center;overflow:hidden;border-bottom:1px solid var(--border);background:linear-gradient(160deg,color-mix(in oklch,var(--atlas-tone) 88%,black 4%),color-mix(in oklch,var(--atlas-tone) 58%,black 22%));color:color-mix(in oklch,white 88%,var(--atlas-tone))}.atlas-sheet__cover-image{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.atlas-sheet__cover-icon{width:2rem;height:2rem;opacity:.9}.atlas-sheet__close{position:absolute;top:.5rem;right:.5rem;z-index:1;display:inline-flex;width:1.6rem;height:1.6rem;align-items:center;justify-content:center;border:1px solid color-mix(in oklch,white 35%,transparent);background:color-mix(in oklch,black 35%,transparent);color:white;cursor:pointer}.atlas-sheet__close svg{width:.875rem;height:.875rem}.atlas-sheet__close:hover{background:color-mix(in oklch,black 55%,transparent)}.atlas-sheet__identity{padding:.8rem 1.1rem .85rem}.atlas-sheet__crumb{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .5rem;margin:0 0 .35rem;font-size:.5625rem;font-weight:750;letter-spacing:.11em;text-transform:uppercase;color:var(--muted-foreground)}.atlas-sheet__origin{color:color-mix(in oklch,var(--atlas-tone) 58%,var(--foreground))}.atlas-sheet__state{display:inline-flex;align-items:center;gap:.3rem;padding:.08rem .35rem;border:1px solid var(--border);color:var(--muted-foreground)}.atlas-sheet__state[data-state]:before{content:"";width:.35rem;height:.35rem;background:var(--atlas-tone)}.atlas-sheet__state[data-state=restricted]:before{background:color-mix(in oklch,var(--atlas-tone) 40%,transparent)}.atlas-sheet__state[data-state=unavailable]:before{background:color-mix(in oklch,var(--muted-foreground) 55%,transparent)}.atlas-sheet__title{margin:0;font-family:var(--font-heading,var(--font-sans));font-size:1.3125rem;font-weight:750;letter-spacing:-.038em;line-height:1.14;color:var(--foreground)}.atlas-sheet__lede{margin:.4rem 0 0;max-width:48ch;font-size:.8125rem;line-height:1.45;color:var(--muted-foreground)}.atlas-sheet__tags{display:flex;flex-wrap:wrap;gap:.25rem;margin:.6rem 0 0;padding:0;list-style:none}.atlas-sheet__tags li{padding:.1rem .35rem;border:1px solid var(--border);font-size:.5625rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted-foreground)}.atlas-sheet__followed{display:inline-flex;align-items:center;gap:.28rem;padding:.08rem .35rem;border:1px solid color-mix(in oklch,var(--atlas-tone) 45%,var(--border));color:color-mix(in oklch,var(--atlas-tone) 62%,var(--foreground))}.atlas-sheet__followed svg{width:.65rem;height:.65rem}.atlas-sheet__progress{display:flex;flex-shrink:0;flex-direction:column;gap:.4rem;padding:.65rem 1.1rem .7rem;border-top:1px solid var(--atlas-line)}.atlas-sheet__progress-head{display:flex;align-items:baseline;gap:.6rem;margin:0}.atlas-sheet__progress-label{font-size:.5rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--muted-foreground)}.atlas-sheet__progress-ratio{overflow:hidden;margin-left:auto;font-size:.6875rem;font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;color:var(--muted-foreground)}.atlas-sheet__progress-pct{flex-shrink:0;font-size:1.0625rem;font-weight:750;font-variant-numeric:tabular-nums;letter-spacing:-.03em;line-height:1;color:color-mix(in oklch,var(--atlas-tone) 68%,var(--foreground))}.atlas-sheet__bar{display:block;height:3px;background:color-mix(in oklch,var(--muted-foreground) 18%,transparent)}.atlas-sheet__bar-fill{display:block;height:100%;background:var(--atlas-tone)}.atlas-sheet__stats{display:flex;flex-shrink:0;flex-wrap:wrap;margin:0;border-top:1px solid var(--atlas-line)}.atlas-sheet__stat{display:flex;min-width:0;flex:1 1 6rem;flex-direction:column;gap:.1rem;padding:.45rem 1.1rem .55rem}.atlas-sheet__stat+.atlas-sheet__stat{border-left:1px solid var(--atlas-line)}.atlas-sheet__stat dt{font-size:.5rem;font-weight:750;letter-spacing:.13em;text-transform:uppercase;color:var(--muted-foreground)}.atlas-sheet__stat dd,.atlas-sheet__stat dt{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.atlas-sheet__stat dd{margin:0;font-size:.8125rem;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:-.015em;line-height:1.25;color:var(--foreground)}.atlas-sheet__body{display:flex;min-height:0;flex:1 1 auto;flex-direction:column;overflow-y:auto;padding:.85rem 1.1rem 1rem;border-top:1px solid var(--atlas-line)}.atlas-sheet__legend{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem;margin:0 0 .7rem;font-size:.5rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--muted-foreground)}.atlas-sheet__legend-count{font-size:.6875rem;font-weight:750;font-variant-numeric:tabular-nums;letter-spacing:.02em;text-transform:none;color:color-mix(in oklch,var(--atlas-tone) 62%,var(--foreground))}.atlas-sheet__void{margin:0;font-size:.75rem;color:var(--muted-foreground)}.atlas-sheet__parts{display:flex;flex-direction:column;gap:1.05rem;margin:0;padding:0;list-style:none}.atlas-sheet__part{display:flex;flex-direction:column;gap:.35rem}.atlas-sheet__part-head{display:flex;align-items:center;gap:.5rem}.atlas-sheet__part-num{display:inline-flex;min-width:1.3rem;height:1.3rem;flex-shrink:0;align-items:center;justify-content:center;border:1px solid color-mix(in oklch,var(--muted-foreground) 32%,transparent);font-size:.5625rem;font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:.04em;color:var(--muted-foreground)}.atlas-sheet__part[data-status=done] .atlas-sheet__part-num{border-color:var(--atlas-tone);background:var(--atlas-tone);color:color-mix(in oklch,white 94%,var(--atlas-tone))}.atlas-sheet__part[data-status=current] .atlas-sheet__part-num{border-color:var(--atlas-tone);box-shadow:inset 0 0 0 1px var(--atlas-tone);color:color-mix(in oklch,var(--atlas-tone) 72%,var(--foreground))}.atlas-sheet__part-title{overflow:hidden;flex:1 1 auto;min-width:0;font-size:.8125rem;font-weight:700;letter-spacing:-.02em;text-overflow:ellipsis;white-space:nowrap;color:var(--foreground)}.atlas-sheet__part-count{flex-shrink:0;font-size:.625rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--muted-foreground)}.atlas-sheet__part-track{height:2px;margin-left:1.8rem;background:color-mix(in oklch,var(--muted-foreground) 16%,transparent)}.atlas-sheet__part-fill{display:block;height:100%;background:color-mix(in oklch,var(--atlas-tone) 85%,transparent)}.atlas-sheet__sections{display:flex;flex-direction:column;margin:.15rem 0 0 .62rem;padding:0 0 0 .9rem;border-left:1px solid color-mix(in oklch,var(--atlas-line) 85%,transparent);list-style:none}.atlas-sheet__section{position:relative;display:flex;min-width:0;align-items:baseline;gap:.45rem;padding:.28rem 0;font-size:.75rem;line-height:1.4;color:var(--muted-foreground)}.atlas-sheet__section+.atlas-sheet__section{border-top:1px solid color-mix(in oklch,var(--border) 45%,transparent)}.atlas-sheet__section-dot{position:absolute;top:.62rem;left:-1.11rem;width:.42rem;height:.42rem;border:1px solid color-mix(in oklch,var(--muted-foreground) 42%,transparent);background:var(--cb-surface,var(--card))}.sombre .atlas-sheet__section-dot{background:var(--surface,var(--card))}.atlas-sheet__section-num{flex-shrink:0;font-size:.5625rem;font-weight:750;font-variant-numeric:tabular-nums;letter-spacing:.05em;color:color-mix(in oklch,var(--muted-foreground) 72%,transparent)}.atlas-sheet__section-title{min-width:0}.atlas-sheet__section[data-status=done]{color:color-mix(in oklch,var(--foreground) 72%,transparent)}.atlas-sheet__section[data-status=done] .atlas-sheet__section-dot{border-color:var(--atlas-tone);background:var(--atlas-tone)}.atlas-sheet__section[data-status=current]{font-weight:700;color:var(--foreground)}.atlas-sheet__section[data-status=current] .atlas-sheet__section-dot,.atlas-sheet__section[data-status=current] .atlas-sheet__section-num{border-color:var(--atlas-tone);color:color-mix(in oklch,var(--atlas-tone) 70%,var(--foreground))}.atlas-sheet__section[data-status=current] .atlas-sheet__section-dot{box-shadow:0 0 0 2px color-mix(in oklch,var(--atlas-tone) 22%,transparent)}.atlas-sheet__section[data-status=current]:before{content:"";position:absolute;top:0;bottom:0;left:-.905rem;width:1px;background:var(--atlas-tone)}.atlas-sheet__tutors{display:flex;flex-wrap:wrap;align-items:baseline;gap:.5rem;margin:1.1rem 0 0;padding-top:.6rem;border-top:1px solid color-mix(in oklch,var(--atlas-line) 70%,transparent);font-size:.75rem;color:var(--foreground)}.atlas-sheet__tutors span{font-size:.5rem;font-weight:750;letter-spacing:.12em;text-transform:uppercase;color:var(--muted-foreground)}.atlas-sheet__actions{display:flex;flex-shrink:0;flex-wrap:wrap;align-items:center;gap:.45rem;padding:.7rem 1.1rem;border-top:1px solid var(--atlas-line)}.atlas-sheet__step{display:inline-flex}.atlas-sheet__step button{display:inline-flex;width:1.9rem;height:1.9rem;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:0;background:transparent;color:var(--muted-foreground);cursor:pointer}.atlas-sheet__step button+button{border-left:none}.atlas-sheet__step button svg{width:.875rem;height:.875rem}.atlas-sheet__step button:hover:not(:disabled){background:color-mix(in oklch,var(--muted) 35%,transparent);color:var(--foreground)}.atlas-sheet__step button:disabled{opacity:.35;cursor:default}.atlas-sheet__links{flex-wrap:wrap;gap:.45rem;margin-left:auto}.atlas-sheet__cta,.atlas-sheet__links{display:inline-flex;align-items:center}.atlas-sheet__cta{min-height:1.9rem;gap:.4rem;padding:.25rem .8rem;background:var(--atlas-tone);font-size:.6875rem;font-weight:750;letter-spacing:.06em;text-decoration:none;text-transform:uppercase;color:color-mix(in oklch,white 94%,var(--atlas-tone))}.atlas-sheet__cta svg{width:.8125rem;height:.8125rem;flex-shrink:0}.atlas-sheet__cta:hover{background:color-mix(in oklch,var(--atlas-tone) 86%,black)}.atlas-sheet__cta-text{display:flex;min-width:0;flex-direction:column;align-items:flex-start;line-height:1.15}.atlas-sheet__cta-text em{overflow:hidden;max-width:16ch;font-size:.5625rem;font-style:normal;font-weight:650;letter-spacing:.02em;text-overflow:ellipsis;text-transform:none;white-space:nowrap;opacity:.85}.atlas-sheet__secondary{display:inline-flex;min-height:1.9rem;align-items:center;gap:.4rem;padding:.25rem .7rem;border:1px solid var(--border);font-size:.6875rem;font-weight:700;letter-spacing:.04em;text-decoration:none;color:var(--muted-foreground)}.atlas-sheet__secondary svg{width:.8125rem;height:.8125rem}.atlas-sheet__secondary:hover{border-color:color-mix(in oklch,var(--foreground) 28%,var(--border));color:var(--foreground)}.atlas-sheet__locked{flex:1 1 12rem;margin:0;text-align:right;font-size:.6875rem;line-height:1.35;color:var(--muted-foreground)}@media (max-width:639px){.course-atlas__bar{gap:.55rem .75rem;padding:.65rem var(--atlas-gutter)}.course-atlas__stats{order:3;width:100%}.course-atlas__stats>div{flex:1 1 0;min-width:0}.course-atlas__tools{order:2;width:100%}.course-atlas__search{flex:1 1 8rem}.course-atlas__search input{width:100%;min-width:0}.course-atlas__select{flex:1 1 8rem;min-width:0}.atlas-sheet{width:calc(100vw - 1rem);max-height:calc(100dvh - 1.5rem)}.atlas-sheet__cover{height:5rem}.atlas-sheet__title{font-size:1.125rem}.atlas-sheet__actions{gap:.4rem}.atlas-sheet__links{flex:1 1 auto;min-width:0}.atlas-sheet__cta,.atlas-sheet__secondary{flex:1 1 7rem;justify-content:center}.atlas-sheet__locked{flex:1 1 100%;text-align:left}}.sentier{--sentier-gutter:clamp(16px,4.5vw,64px);--sentier-ink:var(--primary);--sentier-on-ink:var(--primary-foreground);--sentier-line:var(--border);--sentier-paper:var(--background);--sentier-surface:var(--card);--sentier-muted:var(--muted-foreground);--sentier-off:color-mix(in oklch,var(--foreground) 9%,var(--background));--sentier-off-text:color-mix(in oklch,var(--foreground) 34%,var(--background));--sentier-off-track:color-mix(in oklch,var(--foreground) 10%,var(--background));--sentier-off-edge:color-mix(in oklch,var(--foreground) 17%,var(--background));--sentier-dim-ink:#0f0e0c;--sentier-jalon-ink:#ffffff;--sentier-shadow:color-mix(in oklch,var(--foreground) 18%,transparent);--sentier-shadow-soft:color-mix(in oklch,var(--foreground) 12%,transparent);--sentier-shadow-strong:color-mix(in oklch,var(--foreground) 22%,transparent);--sentier-ease:cubic-bezier(0.22,1,0.36,1);--stop:clamp(52px,5vw,68px);position:relative;min-height:100%;padding-bottom:72px;background:var(--sentier-paper);color:var(--foreground)}.sentier.sombre,.sombre .sentier{--sentier-dim-ink:#ffffff;--sentier-jalon-ink:#0f0e0c;--sentier-shadow:transparent;--sentier-shadow-soft:transparent;--sentier-shadow-strong:transparent}.sentier .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.sentier-balise{display:inline-flex;flex-direction:column;width:20px;height:14px;flex:none;box-shadow:0 0 0 1px color-mix(in oklch,var(--foreground) 16%,transparent)}.sentier-balise>span{flex:1;background:#ffffff}.sentier__head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,440px);gap:clamp(28px,5vw,64px);align-items:end;padding:clamp(32px,6vw,64px) var(--sentier-gutter) clamp(24px,3vw,36px)}.sentier__eyebrow{margin:0 0 14px;font-size:.75rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--sentier-muted)}.sentier__title{margin:0;font-family:var(--font-display,var(--font-sans));font-stretch:78%;font-weight:800;font-size:clamp(3rem,8.4vw,7rem);line-height:.88;letter-spacing:-.04em;color:var(--text-strong,var(--foreground));text-wrap:balance}.sentier__lead{margin-top:18px;max-width:36rem;font-size:clamp(1rem,1.3vw,1.125rem);line-height:1.55;color:var(--sentier-muted)}.sentier__lead p{margin:0}.sentier-sign{position:relative;display:flex;flex-direction:column;gap:8px;padding-left:26px}.sentier-sign__pole{position:absolute;left:0;top:-14px;bottom:-40px;width:10px;background:var(--sentier-ink)}.sentier-sign__plate{display:flex;align-items:center;gap:14px;width:var(--plate-w,100%);height:50px;padding:0 36px 0 16px;border:0;background:var(--sentier-ink);color:var(--sentier-on-ink);font:inherit;font-size:.875rem;text-align:left;cursor:pointer;clip-path:polygon(0 0,calc(100% - 20px) 0,100% 50%,calc(100% - 20px) 100%,0 100%);transition:transform .2s var(--sentier-ease),background-color .2s ease}.sentier-sign__plate:hover{transform:translateX(6px)}.sentier-sign__plate:focus-visible{outline:3px solid var(--plate-color);outline-offset:2px}.sentier-sign__plate.is-on{background:var(--plate-color);color:var(--plate-ink)}.sentier-sign__plate b{font-family:var(--font-display,var(--font-sans));font-size:1.1rem;font-weight:800}.sentier-sign__name{flex:1;min-width:0;opacity:.78;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sentier-sign__count{opacity:.78;font-variant-numeric:tabular-nums;white-space:nowrap}.sentier-bar{position:sticky;top:0;z-index:30;flex-wrap:wrap;margin:0 var(--sentier-gutter);padding:12px 0;border-top:1px solid var(--sentier-line);border-bottom:1px solid var(--sentier-line);background:color-mix(in srgb,var(--sentier-paper) 92%,transparent);backdrop-filter:blur(12px)}.sentier-bar,.sentier-bar__search{display:flex;align-items:center;gap:10px}.sentier-bar__search{position:relative;height:44px;width:min(360px,100%);padding:0 8px 0 12px;border:1.5px solid var(--sentier-line);background:var(--sentier-surface);cursor:text;transition:border-color .15s ease,box-shadow .2s var(--sentier-ease),width .25s var(--sentier-ease)}.sentier-bar__search:hover{border-color:color-mix(in oklch,var(--sentier-ink) 45%,var(--sentier-line))}.sentier-bar__search.is-filled{border-color:var(--sentier-ink)}.sentier-bar__search:focus-within{width:min(440px,100%);border-color:var(--sentier-ink);box-shadow:0 0 0 3px var(--sentier-paper),0 0 0 6px color-mix(in oklch,var(--sentier-ink) 22%,transparent)}.sentier-bar__search:after{content:"";position:absolute;left:-1.5px;right:-1.5px;bottom:-1.5px;height:3px;background:var(--sentier-ink);transform:scaleX(0);transform-origin:left;transition:transform .25s var(--sentier-ease)}.sentier-bar__search:focus-within:after{transform:scaleX(1)}.sentier-bar__random svg,.sentier-bar__search svg{width:17px;height:17px;flex:none;fill:none;stroke:currentColor;stroke-width:2;color:var(--sentier-muted)}.sentier-bar__search .sentier-bar__loupe{transition:color .15s ease,transform .2s var(--sentier-ease)}.sentier-bar__search.is-filled .sentier-bar__loupe,.sentier-bar__search:focus-within .sentier-bar__loupe{color:var(--sentier-ink);stroke-width:2.4}.sentier-bar__search:focus-within .sentier-bar__loupe{transform:scale(1.08)}.sentier-bar__search input{flex:1;min-width:0;height:100%;border:0;outline:none;background:transparent;color:var(--foreground);font:inherit;font-size:.9375rem}.sentier-bar .sentier-bar__search input:focus-visible{outline:none}.sentier-bar__search input::-moz-placeholder{color:var(--sentier-muted);-moz-transition:opacity .15s ease;transition:opacity .15s ease}.sentier-bar__search input::placeholder{color:var(--sentier-muted);transition:opacity .15s ease}.sentier-bar__search input:focus::-moz-placeholder{opacity:.55}.sentier-bar__search input:focus::placeholder{opacity:.55}.sentier-bar__search input::-webkit-search-cancel-button{-webkit-appearance:none;appearance:none}.sentier-bar__kbd{display:grid;place-items:center;min-width:24px;height:24px;padding:0 6px;border:solid var(--sentier-line);border-width:1px 1px 2px;font:inherit;font-size:.75rem;font-weight:700;color:var(--sentier-muted);transition:opacity .15s ease}.sentier-bar__search:focus-within .sentier-bar__kbd{opacity:0}.sentier-bar__clear{display:grid;place-items:center;width:30px;height:30px;flex:none;padding:0;border:0;background:var(--sentier-ink);color:var(--sentier-on-ink);cursor:pointer}.sentier-bar__clear svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2.4;color:inherit}.sentier-bar__clear:focus-visible{outline:2px solid var(--sentier-ink);outline-offset:2px}.sentier-bar__lines{display:flex;flex-wrap:wrap;gap:6px}.sentier-bar__chip,.sentier-bar__random{display:inline-flex;align-items:center;gap:8px;height:36px;padding:0 12px;border:1px solid var(--sentier-line);background:var(--sentier-surface);color:var(--foreground);font:inherit;font-size:.8125rem;font-weight:500;cursor:pointer;transition:background-color .15s ease,color .15s ease,border-color .15s ease}.sentier-bar__chip.is-on,.sentier-bar__chip:hover{border-color:var(--sentier-ink)}.sentier-bar__chip.is-on{background:var(--sentier-ink);color:var(--sentier-on-ink)}.sentier-bar__swatch{width:16px;height:4px}.sentier-bar__spacer{flex:1}.sentier-bar__random{border-color:var(--sentier-ink);background:transparent;font-weight:600}.sentier-bar__random svg{color:currentColor}.sentier-bar__random:hover{background:var(--sentier-ink);color:var(--sentier-on-ink)}.sentier-bar :focus-visible{outline:2px solid var(--sentier-ink);outline-offset:2px}.sentier-banner{display:flex;align-items:center;gap:14px;min-height:0;margin:0 var(--sentier-gutter);font-size:.875rem;overflow:hidden;transition:min-height .25s var(--sentier-ease)}.sentier-banner.is-on{min-height:52px}.sentier-banner__count{display:inline-flex;align-items:center;height:28px;padding:0 10px;background:var(--sentier-ink);color:var(--sentier-on-ink);font-weight:700;font-variant-numeric:tabular-nums}.sentier-banner__clear{border:0;background:none;padding:4px;color:var(--foreground);font:inherit;font-weight:600;text-decoration:underline;cursor:pointer}.sentier-map{padding:8px var(--sentier-gutter) 0}.sentier-map__stage{position:relative;width:100%;container-type:inline-size}.sentier-map__svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.sentier-map__contours path{fill:none;stroke:color-mix(in oklch,var(--foreground) 5%,transparent);stroke-width:1.2}.sentier-map__casing,.sentier-map__track{fill:none;stroke-linecap:round;stroke-linejoin:round;transition:stroke .35s ease}.sentier-map__casing{stroke-width:22}.sentier-map__track{stroke-width:15}.sentier-lacets .sentier-map__casing{stroke-width:17}.sentier-lacets .sentier-map__track{stroke-width:11}.sentier-map__dash{fill:none;stroke:var(--sentier-paper);stroke-width:2;stroke-dasharray:12 14;opacity:.85}.sentier-map__arrows path{stroke-width:2.6;transition:stroke .35s ease}.sentier-map__arrows path,.sentier-map__route-halo,.sentier-map__route-line{fill:none;stroke-linecap:round;stroke-linejoin:round}.sentier-map__route-halo{stroke:var(--sentier-paper);stroke-width:13}.sentier-map__route-line{stroke-width:7;animation:sentier-route .6s var(--sentier-ease)}.sentier--animate .sentier-map__casing,.sentier--animate .sentier-map__track{stroke-dasharray:1;stroke-dashoffset:1}.sentier--animate.is-drawn .sentier-map__casing,.sentier--animate.is-drawn .sentier-map__track{stroke-dashoffset:0;transition:stroke-dashoffset .9s var(--sentier-ease) var(--draw-delay,0s),stroke .35s ease}.sentier--animate .sentier-map__arrows,.sentier--animate .sentier-map__dash{opacity:0;transition:opacity .5s ease .9s}.sentier--animate.is-drawn .sentier-map__arrows{opacity:1}.sentier--animate.is-drawn .sentier-map__dash{opacity:.85}.sentier-map__mark{position:absolute;font-family:var(--font-display,var(--font-sans));font-stretch:75%;font-weight:800;font-size:16cqw;line-height:1;letter-spacing:-.05em;color:color-mix(in oklch,var(--foreground) 4.5%,transparent);pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.sentier-map__end{position:absolute;z-index:2;display:flex;flex-direction:column;align-items:center;transform:translate(-50%,-46px)}.sentier-map__end-label{margin-top:10px;font-size:.6875rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap}.sentier-map__flag{position:relative;width:4px;height:50px;background:var(--sentier-ink)}.sentier-map__flag:after{content:"";position:absolute;left:4px;top:0;width:30px;height:20px;background:var(--sentier-ink);clip-path:polygon(0 0,100% 0,78% 50%,100% 100%,0 100%)}.sentier-map__stops{margin:0;padding:0;list-style:none}.sentier-map .sentier-stop__label{width:max(100px,10.2cqw)}.sentier-gate{position:absolute;z-index:4;width:0;height:0}.sentier-gate__plate{position:absolute;left:0;top:0;display:flex;align-items:center;gap:12px;min-width:176px;height:64px;padding:0 30px 0 12px;border:0;background:var(--gate-color);color:var(--gate-ink);font:inherit;text-align:left;cursor:pointer;transform:translate(-50%,-50%);clip-path:polygon(0 0,calc(100% - 22px) 0,100% 50%,calc(100% - 22px) 100%,0 100%);filter:drop-shadow(0 8px 14px var(--sentier-shadow-strong));transition:transform .2s var(--sentier-ease),background-color .3s ease,color .3s ease}.sentier-gate[data-dir=rtl] .sentier-gate__plate{flex-direction:row-reverse;padding:0 12px 0 30px;text-align:right;clip-path:polygon(22px 0,100% 0,100% 100%,22px 100%,0 50%)}.sentier-gate[data-dir=down] .sentier-gate__plate{height:74px;padding:0 18px 12px 12px;clip-path:polygon(0 0,100% 0,100% calc(100% - 12px),50% 100%,0 calc(100% - 12px))}.sentier-gate__code{display:grid;place-items:center;min-width:44px;height:44px;padding:0 6px;background:var(--gate-ink);color:var(--gate-color);font-family:var(--font-display,var(--font-sans));font-weight:800;font-size:1.05rem;letter-spacing:-.02em}.sentier-gate__text{display:flex;flex-direction:column;gap:1px;min-width:0}.sentier-gate__kicker{font-size:.5625rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;opacity:.8}.sentier-gate__name{font-family:var(--font-display,var(--font-sans));font-weight:800;font-size:.9375rem;line-height:1.1;white-space:nowrap}.sentier-gate__count{font-size:.6875rem;opacity:.8;white-space:nowrap}.sentier-gate__post{position:absolute;left:-3px;top:30px;width:6px;height:22px;background:color-mix(in oklch,var(--gate-color) 60%,#000)}.sentier-gate[data-dir=down] .sentier-gate__post{display:none}.sentier--lift .sentier-gate__plate:hover,.sentier-gate__plate:focus-visible{transform:translate(-50%,calc(-50% - 4px))}.sentier-gate__plate:focus-visible{outline:3px solid var(--sentier-ink);outline-offset:3px}.sentier-gate[data-active] .sentier-gate__plate{box-shadow:inset 0 0 0 3px var(--gate-ink)}.sentier-gate[data-dim] .sentier-gate__plate{background:var(--sentier-off);color:var(--sentier-off-text);filter:none}.sentier-gate[data-dim] .sentier-gate__code{background:var(--sentier-off-edge);color:var(--sentier-paper)}.sentier-gate[data-dim] .sentier-gate__post{background:var(--sentier-off-edge)}.sentier-stop{position:absolute;z-index:3;width:0;height:0;--tile-bg:var(--stop-tint);--tile-ink:var(--stop-ink);--tile-ring:0 0 0 0 transparent;--icon-opacity:1}.sentier-stop__tile{position:absolute;left:0;top:0;display:grid;place-items:center;padding:0;box-sizing:border-box;border:4px solid var(--sentier-paper);background:var(--tile-bg);color:var(--tile-ink);box-shadow:var(--tile-ring),0 8px 18px var(--sentier-shadow);cursor:pointer;transition:transform .2s var(--sentier-ease),box-shadow .2s ease,background-color .3s ease,color .3s ease}.sentier-stop__stack,.sentier-stop__tile{width:var(--stop);height:var(--stop);transform:translate(-50%,-50%)}.sentier-stop__stack{position:absolute;left:0;top:0}.sentier-stop__stack>.sentier-stop__tile{left:0;top:0;width:100%;height:100%;transform:none}.sentier-stop__plate{position:absolute;inset:0;box-sizing:border-box;border:3px solid var(--sentier-paper);background:color-mix(in oklch,var(--stop-tint) 62%,var(--sentier-paper));box-shadow:0 6px 14px var(--sentier-shadow-soft);pointer-events:none;transition:transform .25s var(--sentier-ease),background-color .3s ease}.sentier-stop__plate--1{transform:translate(8px,-8px)}.sentier-stop__plate--2{transform:translate(16px,-16px);background:color-mix(in oklch,var(--stop-tint) 34%,var(--sentier-paper))}.sentier-stop[data-level="3"] .sentier-stop__plate--2:after{content:"";position:absolute;right:-3px;top:-3px;width:12px;height:12px;background:var(--stop-tint);clip-path:polygon(0 0,100% 0,100% 100%)}.sentier--lift .sentier-stop__stack:hover .sentier-stop__plate--1{transform:translate(10px,-11px)}.sentier--lift .sentier-stop__stack:hover .sentier-stop__plate--2{transform:translate(20px,-22px)}.sentier-stop[data-dim] .sentier-stop__plate{background:color-mix(in oklch,var(--sentier-off) 55%,var(--sentier-paper));box-shadow:none}.sentier-stop[data-dim] .sentier-stop__plate--2:after{background:var(--sentier-off-edge)}.sentier-stop[data-state=unavailable] .sentier-stop__plate{background:var(--sentier-paper);border:2px dashed var(--sentier-muted);box-shadow:none}.sentier-stop__icon{width:46%;height:46%;opacity:var(--icon-opacity);transition:opacity .3s ease}.sentier-initials{font-family:var(--font-display,var(--font-sans));font-weight:800;font-size:1rem}.sentier-stop__label{position:absolute;left:0;top:calc(var(--stop) * .5 + 10px);display:flex;flex-direction:column;align-items:center;gap:5px;width:168px;text-align:center;transform:translateX(-50%);pointer-events:none}.sentier-stop__kicker{font-size:.625rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--sentier-muted)}.sentier-stop__title{font-family:var(--font-display,var(--font-sans));font-weight:700;font-size:.9375rem;line-height:1.12;text-wrap:balance;transition:color .3s ease}.sentier-stop__meta{display:inline-flex;align-items:center;gap:7px;font-size:.6875rem;color:var(--sentier-muted);transition:color .3s ease}.sentier-stop__reason{padding:2px 6px;background:color-mix(in oklch,#f5d547 55%,var(--background));color:var(--foreground);font-size:.6875rem;line-height:1.3}.sentier-pips{display:inline-flex;gap:2px}.sentier-pips__pip{width:6px;height:6px;background:color-mix(in oklch,var(--foreground) 14%,var(--background))}.sentier-pips__pip.is-on{background:var(--sentier-ink)}.sentier-stop[data-state=unavailable]{--tile-bg:var(--sentier-paper);--tile-ink:var(--sentier-dim-ink);--icon-opacity:0.55}.sentier-stop[data-state=unavailable] .sentier-stop__tile{border:2px dashed var(--sentier-muted);box-shadow:none;cursor:not-allowed}.sentier-stop[data-state=restricted] .sentier-stop__title,.sentier-stop[data-state=unavailable] .sentier-stop__title{color:var(--sentier-muted)}.sentier--lift .sentier-stop__tile:focus-visible,.sentier--lift .sentier-stop__tile:not(:disabled):hover{transform:translate(-50%,calc(-50% - 5px)) scale(1.08)}.sentier--lift .sentier-stop__stack>.sentier-stop__tile:focus-visible,.sentier--lift .sentier-stop__stack>.sentier-stop__tile:not(:disabled):hover{transform:translateY(-5px) scale(1.06)}.sentier-stop__tile:focus-visible{outline:none;--tile-ring:0 0 0 3px var(--sentier-paper),0 0 0 6px var(--sentier-ink)}.sentier-stop[data-selected]{--tile-ring:0 0 0 3px var(--sentier-paper),0 0 0 6px var(--sentier-ink)}.sentier-stop[data-cursor] .sentier-stop__tile{--tile-ring:0 0 0 3px var(--sentier-paper),0 0 0 9px var(--stop-year);transform:scale(1.12)}.sentier-stop[data-hit]{--tile-ring:0 0 0 4px var(--sentier-paper),0 0 0 7px var(--stop-year)}.sentier-stop[data-dim]{--tile-bg:var(--sentier-off);--tile-ink:var(--sentier-dim-ink);--icon-opacity:0.3}.sentier-stop[data-dim] .sentier-stop__tile{box-shadow:none;opacity:1}.sentier-stop--jalon[data-dim] .sentier-stop__tile--jalon{background:var(--sentier-off);color:var(--sentier-dim-ink)}.sentier-stop[data-dim] .sentier-stop__kicker,.sentier-stop[data-dim] .sentier-stop__meta,.sentier-stop[data-dim] .sentier-stop__title{color:var(--sentier-off-text)}.sentier-stop[data-dim] .sentier-pips__pip{background:var(--sentier-off)}.sentier-stop[data-hidden]{visibility:hidden}.sentier-stop__tile--jalon{display:grid;background:var(--sentier-ink);color:var(--sentier-jalon-ink);cursor:default}.sentier-stop__link{color:inherit}.sentier-stop__link .sentier-stop__tile--jalon{cursor:pointer}.sentier-lacets{display:none;padding:8px var(--sentier-gutter) 0}.sentier-lacets__stage{position:relative;margin-bottom:110px}.sentier-lacets__svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.sentier-lacets .sentier-stop__label{top:-18px;width:min(44vw,200px);align-items:flex-start;text-align:left;transform:translateX(calc(var(--stop) * .5 + 28px))}.sentier-lacets .sentier-stop[data-side=right] .sentier-stop__label{align-items:flex-end;text-align:right;transform:translateX(calc(-100% - var(--stop) * .5 - 12px))}.sentier-map__end--lacets{transform:translate(-50%,-30px)}.sentier-map--lacets-only{display:none}.sentier-lacets--always{display:block;max-width:760px;margin:0 auto}.sentier-section-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px 24px;margin-bottom:16px}.sentier-section-head h2{margin:0;font-family:var(--font-display,var(--font-sans));font-weight:800;font-size:clamp(1.4rem,2.2vw,1.75rem)}.sentier-section-head p{margin:0;font-size:.8125rem;color:var(--sentier-muted)}.sentier-routes,.sentier-traverses{margin:36px var(--sentier-gutter) 0;padding-top:26px;border-top:1px solid var(--sentier-line)}.sentier-routes__list{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr));gap:14px}.sentier-route{display:flex;flex-direction:column;gap:12px;padding:18px 20px;border:1px solid var(--sentier-line);border-top:4px solid var(--route);background:var(--sentier-surface);color:var(--foreground);font:inherit;text-align:left;cursor:pointer;transition:transform .2s var(--sentier-ease),box-shadow .2s ease}.sentier-route:hover{transform:translateY(-3px);box-shadow:var(--shadow-card)}.sentier-route.is-on{box-shadow:0 0 0 2px var(--sentier-ink)}.sentier-route:focus-visible{outline:2px solid var(--sentier-ink);outline-offset:2px}.sentier-route__head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.sentier-route__title{font-family:var(--font-display,var(--font-sans));font-weight:800;font-size:1.3rem}.sentier-route__count,.sentier-route__list{font-size:.75rem;color:var(--sentier-muted)}.sentier-route__text{font-size:.875rem;line-height:1.5}.sentier-route__chain{display:flex;align-items:center}.sentier-route__step{display:grid;place-items:center;width:34px;height:34px;flex:none}.sentier-route__step+.sentier-route__step{margin-left:18px;position:relative}.sentier-route__step+.sentier-route__step:before{content:"";position:absolute;right:100%;top:50%;width:18px;height:3px;background:var(--route)}.sentier-route__step svg{width:18px;height:18px}.sentier-traverses__list{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:24px 12px;margin:0;padding:0;list-style:none}.sentier-stop--compact{position:relative;width:auto;height:auto;display:flex;flex-direction:column;align-items:center;--stop:52px}.sentier-stop--compact .sentier-stop__stack{position:relative;left:auto;top:auto;flex:none;margin-top:16px;transform:none}.sentier-stop--compact .sentier-stop__label{position:relative;top:auto;margin-top:10px;width:100%;transform:none}.sentier-keyline{display:flex;justify-content:flex-end;margin:12px var(--sentier-gutter) 0}.sentier-legend{display:flex;flex-wrap:wrap;align-items:center;gap:8px 22px;margin:0;padding:0;list-style:none;font-size:.75rem;color:var(--sentier-muted)}.sentier-legend__item{display:inline-flex;align-items:center;gap:10px}.sentier-legend__stack{position:relative;width:16px;height:16px;margin:8px 12px 0 0}.sentier-legend__plate,.sentier-legend__tile{position:absolute;inset:0;box-sizing:border-box;border:1.5px solid var(--sentier-paper)}.sentier-legend__tile{background:var(--sentier-ink)}.sentier-legend__plate--1{background:color-mix(in oklch,var(--sentier-ink) 55%,var(--sentier-paper));transform:translate(4px,-4px)}.sentier-legend__plate--2{background:color-mix(in oklch,var(--sentier-ink) 28%,var(--sentier-paper));transform:translate(8px,-8px)}@media (max-width:1099px){.sentier-map{display:none}.sentier-lacets{display:block}}.sentier-lacets__stage{max-width:720px;margin-left:auto;margin-right:auto}.sentier-map .sentier-map__stops{--stop:clamp(48px,5.6cqw,68px)}.sentier-map .sentier-gate__plate{min-width:clamp(150px,15.5cqw,186px);height:clamp(56px,5.4cqw,64px)}@media (max-width:899px){.sentier__head{grid-template-columns:minmax(0,1fr);gap:24px}.sentier-sign__pole{bottom:-12px}.sentier-bar__search,.sentier-bar__search:focus-within{width:100%}.sentier-bar__spacer{display:none}.sentier-keyline{justify-content:flex-start}}@media (max-width:640px){.sentier{--sentier-gutter:16px;padding-bottom:48px}.sentier__head{padding-top:24px;padding-bottom:20px;gap:20px}.sentier__title{font-size:clamp(2.5rem,13vw,3.4rem)}.sentier__lead{margin-top:12px;font-size:.9375rem}.sentier-sign{flex-direction:row;gap:6px;margin:0 calc(var(--sentier-gutter) * -1);padding:2px var(--sentier-gutter) 6px;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:none}.sentier-sign::-webkit-scrollbar{display:none}.sentier-sign__name,.sentier-sign__pole{display:none}.sentier-sign__plate{flex:none;width:auto;height:44px;gap:10px;padding:0 30px 0 12px;scroll-snap-align:start}.sentier-sign__plate:hover{transform:none}.sentier-bar{gap:8px;padding:10px 0}.sentier-bar__search{order:0}.sentier-bar__lines{order:1;flex:1 1 0;min-width:0;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.sentier-bar__lines::-webkit-scrollbar{display:none}.sentier-bar__chip{flex:none}.sentier-bar__random{order:2;flex:none;width:44px;height:44px;justify-content:center;padding:0}.sentier-bar__random-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.sentier-bar__kbd{display:none}.sentier-banner{flex-wrap:wrap;gap:6px 12px;font-size:.8125rem}.sentier-banner.is-on{padding:10px 0}.sentier-legend{gap:6px 16px;font-size:.6875rem}.sentier-lacets{--stop:50px}.sentier-lacets .sentier-stop__label{width:calc(50vw - 56px)}.sentier-lacets .sentier-stop__title{font-size:.875rem}.sentier-lacets .sentier-gate__plate{min-width:0;max-width:calc(100vw - 48px)}.sentier-routes,.sentier-traverses{margin-top:28px;padding-top:20px}.sentier-traverses__list{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:20px 8px}}@media (hover:none){.sentier--lift .sentier-stop__tile:not(:disabled):hover{transform:translate(-50%,-50%)}.sentier--lift .sentier-gate__plate:hover,.sentier--lift .sentier-stop__stack>.sentier-stop__tile:not(:disabled):hover{transform:none}.sentier--lift .sentier-lacets .sentier-gate__plate:hover,.sentier--lift .sentier-map .sentier-gate__plate:hover{transform:translate(-50%,-50%)}.sentier--lift .sentier-stop__stack:hover .sentier-stop__plate--1{transform:translate(8px,-8px)}.sentier--lift .sentier-stop__stack:hover .sentier-stop__plate--2{transform:translate(16px,-16px)}.sentier-route:hover,.sentier-sign__plate:hover{transform:none}}.fiche{--fiche-ease:cubic-bezier(0.22,1,0.36,1);position:fixed;inset:0;z-index:200;justify-content:flex-end;background:color-mix(in oklch,#1c1a18 42%,transparent);animation:sentier-fade .2s ease}.fiche,.fiche__panel{--fiche-on-10:color-mix(in srgb,var(--fiche-ink) 10%,transparent);--fiche-on-22:color-mix(in srgb,var(--fiche-ink) 22%,transparent);--fiche-on-32:color-mix(in srgb,var(--fiche-ink) 32%,transparent);--fiche-on-60:color-mix(in srgb,var(--fiche-ink) 60%,transparent);--fiche-on-80:color-mix(in srgb,var(--fiche-ink) 80%,transparent);display:flex}.fiche__panel{flex-direction:column;width:min(540px,100%);height:100dvh;background:var(--background);color:var(--foreground);box-shadow:-24px 0 60px rgb(0 0 0/.28);animation:fiche-in .34s var(--fiche-ease)}.fiche__head{display:flex;flex-direction:column;gap:18px;padding:18px 24px 22px;flex:none}.fiche__bar{justify-content:space-between;gap:12px}.fiche__bar,.fiche__where{display:flex;align-items:center}.fiche__where{gap:10px;min-width:0;font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted-foreground)}.fiche__where b{font-family:var(--font-display,var(--font-sans));font-size:.9375rem;letter-spacing:0;color:var(--foreground)}.fiche__where span:last-child{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fiche__nav{display:flex;align-items:center;gap:6px;flex:none}.fiche-near,.fiche__close{display:inline-flex;align-items:center;justify-content:center;gap:4px;height:40px;min-width:40px;padding:0 6px;border:1px solid var(--border);background:var(--card);color:var(--foreground);cursor:pointer;transition:border-color .15s ease,background-color .15s ease}.fiche-near>svg,.fiche__close>svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.fiche-near:disabled{opacity:.35;cursor:default}.fiche-near:not(:disabled):hover,.fiche__close:hover{border-color:var(--primary)}.fiche-near:focus-visible,.fiche__close:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.fiche-near__tile{display:grid;place-items:center;width:26px;height:26px}.fiche-near__tile svg{width:15px;height:15px}.fiche-near__tile .sentier-initials{font-size:.625rem}.fiche__close{margin-left:6px;background:var(--primary);border-color:var(--primary);color:var(--primary-foreground)}.fiche__close:hover{background:color-mix(in oklch,var(--primary) 86%,var(--background))}.fiche__id{display:flex;align-items:center;gap:16px}.fiche__tile{display:grid;place-items:center;width:68px;height:68px;flex:none;background:var(--fiche-tint);color:var(--fiche-ink)}.fiche__tile svg{width:34px;height:34px}.fiche__tile .sentier-initials{font-size:1.3rem}.fiche__titles{display:flex;flex-direction:column;gap:8px;min-width:0}.fiche__title{margin:0;font-family:var(--font-display,var(--font-sans));font-stretch:85%;font-weight:800;font-size:clamp(1.6rem,3.4vw,2.1rem);line-height:1;letter-spacing:-.02em;text-wrap:balance}.fiche__meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:0;font-size:.8125rem}.fiche__meta:empty{display:none}.fiche__level{display:inline-flex;align-items:center;gap:8px;font-weight:600}.fiche__level .sentier-pips__pip{width:8px;height:8px}.fiche__flag{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 8px;background:var(--muted);font-size:.6875rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.fiche__flag--draft:before{content:"";width:10px;height:10px;background:repeating-linear-gradient(135deg,currentColor 0 2px,transparent 2px 5px)}.fiche__lede{margin:0;font-size:.9375rem;line-height:1.55;color:color-mix(in oklch,var(--foreground) 82%,var(--background))}.fiche__tags{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}.fiche__tags li{padding:3px 8px;border:1px solid var(--border);font-size:.75rem;color:var(--muted-foreground)}.fiche__path{display:flex;flex-direction:column;flex:1;min-height:0;padding:18px 24px 0;background:var(--fiche-tint);color:var(--fiche-ink)}.fiche__path-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.fiche__path-head h3{margin:0;font-size:.6875rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.fiche__path-count{font-size:.75rem;font-variant-numeric:tabular-nums;color:var(--fiche-on-80)}.fiche__meter{display:block;height:3px;margin-top:12px;background:var(--fiche-on-22)}.fiche__meter i{display:block;height:100%;background:var(--fiche-ink);transition:width .5s var(--fiche-ease)}.fiche__scroll{flex:1;min-height:0;margin:10px -24px 0;padding:8px 24px 28px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--fiche-on-32) transparent}.fiche__scroll:focus-visible{outline:2px solid var(--fiche-ink);outline-offset:-4px}.fiche__empty{margin:12px 0 0;font-size:.875rem;color:var(--fiche-on-80)}.fiche-parts,.fiche-steps{position:relative;margin:0;padding:0;list-style:none}.fiche-parts:before,.fiche-steps:not(.fiche-steps--nested):before{content:"";position:absolute;left:17px;top:20px;bottom:20px;width:2px;background:var(--fiche-on-22)}.fiche-part{position:relative}.fiche-part__rail{position:absolute;left:17px;top:0;width:2px;height:28px;background:transparent}.fiche-part__rail.is-on{background:var(--fiche-ink)}.fiche-part__head{position:relative;display:grid;grid-template-columns:36px minmax(0,1fr) auto 18px;align-items:center;gap:12px;width:100%;min-height:58px;padding:8px 6px 8px 0;border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer;transition:background-color .15s ease}.fiche-part__head:disabled{cursor:default}.fiche-part__head:not(:disabled):hover{background:var(--fiche-on-10)}.fiche-part__head:focus-visible{outline:2px solid var(--fiche-ink);outline-offset:2px}.fiche-part__node{position:relative;z-index:1;display:grid;place-items:center;width:36px;height:36px;box-sizing:border-box;border:2px solid var(--fiche-ink);background:var(--fiche-tint);color:var(--fiche-ink);font-family:var(--font-display,var(--font-sans));font-size:.8125rem;font-weight:800}.fiche-part__node svg{width:16px;height:16px}.fiche-part.is-todo .fiche-part__node{border-style:dashed;border-color:var(--fiche-on-60);color:var(--fiche-on-80)}.fiche-part.is-done .fiche-part__node{background:var(--fiche-ink);color:var(--fiche-tint)}.fiche-part.is-current .fiche-part__node:after,.fiche-step.is-current .fiche-step__dot:after{content:"";position:absolute;inset:-5px;border:1px solid var(--fiche-ink);animation:fiche-halo 2.6s var(--fiche-ease) infinite;pointer-events:none}.fiche-part__text{display:flex;flex-direction:column;gap:2px;min-width:0}.fiche-part__kicker{font-size:.625rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--fiche-on-60)}.fiche-part__title{font-size:.9375rem;font-weight:700;line-height:1.25}.fiche-part__count{font-size:.75rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--fiche-on-80)}.fiche-part__chevron{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s var(--fiche-ease)}.fiche-part.is-open .fiche-part__chevron{transform:rotate(180deg)}.fiche-steps--nested{padding:2px 0 10px;animation:fiche-unfold .25s var(--fiche-ease)}.fiche-step{position:relative;display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:42px}.fiche-step__rail{position:absolute;left:17px;top:-50%;width:2px;height:100%;background:transparent}.fiche-step__rail.is-on{background:var(--fiche-ink)}.fiche-step__dot{position:relative;z-index:1;justify-self:center;display:grid;place-items:center;width:26px;height:26px;box-sizing:border-box;border:1px solid var(--fiche-on-32);background:var(--fiche-tint);color:var(--fiche-on-60);font-size:.625rem;font-weight:700;font-variant-numeric:tabular-nums}.fiche-step__dot svg{width:13px;height:13px}.fiche-step.is-todo .fiche-step__dot{border-style:dashed}.fiche-step.is-done .fiche-step__dot{border-color:var(--fiche-ink);background:var(--fiche-ink);color:var(--fiche-tint)}.fiche-step.is-current .fiche-step__dot{border:2px solid var(--fiche-ink);color:var(--fiche-ink)}.fiche-step__title{min-width:0;font-size:.875rem;font-weight:600;line-height:1.3;color:var(--fiche-on-80)}.fiche-step.is-current .fiche-step__title{color:var(--fiche-ink);font-weight:800}.fiche-step__state{font-size:.625rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--fiche-on-60)}.fiche-step.is-current .fiche-step__state{padding:2px 5px;border:1px solid var(--fiche-ink);color:var(--fiche-ink)}.fiche__foot{gap:16px;padding:16px 24px 20px;border-top:1px solid var(--border);background:var(--background);flex:none}.fiche__cta,.fiche__foot{display:flex;align-items:center}.fiche__cta{flex:1;justify-content:space-between;gap:14px;min-width:0;min-height:60px;padding:10px 18px;background:var(--primary);text-decoration:none;transition:transform .15s ease}.fiche__cta,.fiche__cta:hover{color:var(--primary-foreground)}.fiche__cta:hover{transform:translateY(-2px)}.fiche__cta:focus-visible{outline:3px solid var(--fiche-tint);outline-offset:2px}.fiche__cta svg{width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:2.2}.fiche__cta-text{display:flex;flex-direction:column;gap:2px;min-width:0}.fiche__cta-k{font-size:.625rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;opacity:.75}.fiche__cta-t{font-size:.9375rem;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fiche__cta.is-disabled{background:var(--muted);color:var(--muted-foreground)}.fiche__alt{flex:none;font-size:.8125rem;font-weight:600;color:var(--foreground);text-decoration:underline;text-underline-offset:3px}@media (max-width:640px){.fiche{align-items:flex-end}.fiche__panel{width:100%;height:94dvh;box-shadow:0 -20px 50px rgb(0 0 0/.28);animation-name:fiche-up}.fiche__head{padding:14px 16px 18px}.fiche__path{padding:16px 16px 0}.fiche__scroll{margin:10px -16px 0;padding:8px 16px 24px}.fiche__foot{padding:12px 16px 16px}.fiche-near{display:none}}@keyframes fiche-in{0%{transform:translateX(100%)}}@keyframes fiche-up{0%{transform:translateY(100%)}}@keyframes fiche-unfold{0%{opacity:0;transform:translateY(-6px)}}@keyframes fiche-halo{0%,to{opacity:.15}50%{opacity:.7}}.sentier-ghost{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.sentier-ghost .sentier__intro{display:flex;flex-direction:column;gap:14px}.sentier-ghost__bar{display:block;height:10px;background:var(--sentier-off);animation:sentier-ghost-pulse 1.6s ease-in-out infinite}.sentier-ghost__bar--strong{height:14px;background:var(--sentier-off-edge)}.sentier-ghost__title{display:flex;flex-direction:column;gap:12px;margin:4px 0 8px}.sentier-ghost__title .sentier-ghost__bar{height:clamp(40px,6.4vw,84px)}.sentier-ghost__title .sentier-ghost__bar:first-child{width:78%}.sentier-ghost__title .sentier-ghost__bar:last-child{width:56%}.sentier-ghost .sentier-sign__pole{background:var(--sentier-off-edge)}.sentier-ghost__plate{background:var(--sentier-off);cursor:default;animation:sentier-ghost-pulse 1.6s ease-in-out infinite}.sentier-ghost__search{cursor:default}.sentier-ghost__glow,.sentier-ghost__track{fill:none;stroke-linecap:round;stroke-linejoin:round}.sentier-ghost__track{stroke:var(--sentier-off-track);stroke-width:22}.sentier-lacets .sentier-ghost__track{stroke-width:17}.sentier-ghost__glow{stroke:var(--sentier-off-edge);stroke-width:8;stroke-dasharray:.07 .93;stroke-dashoffset:1;animation:sentier-ghost-walk 2.6s linear infinite}.sentier-lacets .sentier-ghost__glow{stroke-width:6}.sentier-ghost__gate .sentier-gate__plate{background:var(--sentier-off);color:transparent;filter:none;cursor:default}.sentier-ghost__gate .sentier-gate__code{background:var(--sentier-off-edge)}.sentier-ghost__gate .sentier-gate__text{gap:7px}.sentier-ghost__gate .sentier-ghost__bar{background:var(--sentier-off-edge)}.sentier-ghost__gate .sentier-ghost__bar--strong{background:color-mix(in oklch,var(--sentier-off-edge) 70%,var(--foreground) 8%)}.sentier-ghost__stop .sentier-stop__tile{background:var(--sentier-off);box-shadow:none;cursor:default;animation:sentier-ghost-pulse 1.6s ease-in-out infinite}.sentier-ghost__stop .sentier-stop__label{gap:7px}@keyframes sentier-ghost-walk{to{stroke-dashoffset:0}}@keyframes sentier-ghost-pulse{50%{opacity:.55}}@keyframes sentier-fade{0%{opacity:0}}@keyframes sentier-route{0%{opacity:0}}@media (prefers-reduced-motion:reduce){.fiche,.fiche *,.sentier *{animation:none!important;transition:none!important}.sentier--animate .sentier-map__casing,.sentier--animate .sentier-map__track{stroke-dasharray:none;stroke-dashoffset:0}.sentier--animate .sentier-map__arrows,.sentier--animate .sentier-map__dash{opacity:1}}