.rs-player{display:grid}
.rs-stage{position:relative;overflow:hidden;background:var(--color-void);container-type:inline-size;isolation:isolate;box-shadow:inset 0 0 0 var(--hair) var(--color-line)}
.rs-stage__art{position:absolute;inset:0;width:100%;height:100%;display:block;z-index:-1}

.rs-bar{position:relative;display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-xs);padding-top:var(--space-m)}
.rs-progress{position:absolute;left:0;right:0;top:0;height:var(--hair);background:var(--color-line);overflow:hidden}
.rs-progress i{position:absolute;inset:0;background:var(--color-accent-line);transform-origin:left;transform:scaleX(1)}
.rs-controls{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-xs)}
.rs-btn{display:inline-flex;align-items:center;gap:var(--space-xs);min-height:var(--target);padding:0 var(--space-m) 0 var(--space-s);border:var(--hair) solid var(--color-line-strong);border-radius:var(--radius-control);background:transparent;color:var(--color-text);font:inherit;font-size:var(--type-label);font-weight:var(--weight-medium);cursor:pointer;transition:border-color var(--dur-feedback) ease-out}
.rs-btn:hover{border-color:var(--color-accent-line)}
.rs-btn:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}
.rs-btn svg{width:var(--space-s);height:var(--space-s);flex:none}
.rs-btn .i-play{display:none}
.rs-btn[data-state="paused"] .i-pause{display:none}
.rs-btn[data-state="paused"] .i-play{display:inline}
.rs-note{font-size:var(--type-label);color:var(--color-text-faint);padding-left:var(--space-xs)}
.rs-prov{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-xs) var(--space-s);font-size:var(--type-label);color:var(--color-text-faint);max-width:var(--measure)}

.rs-sw{flex:none;display:inline-block;width:var(--step-7);height:var(--step-7);background:var(--sw);vertical-align:middle}
.rs-sw--ring{box-shadow:0 0 0 var(--step-2) var(--color-void),0 0 0 var(--step-3) var(--color-mark)}
.rs-sw--blue{--sw:var(--color-region-blue)}
.rs-sw--violet{--sw:var(--color-lilac)}
.rs-sw--cite{background:none;border:var(--hair) dashed var(--color-lilac)}
.rs-sw--human{border-radius:50%;background:var(--color-mark);box-shadow:0 0 0 var(--step-2) var(--color-void),0 0 0 var(--step-3) var(--color-line-strong)}
.rs-unit{flex:none;display:inline-block;width:var(--step-6);height:var(--step-6);background:var(--color-portal);vertical-align:middle}

.rs-trail{list-style:none;margin:0;padding:var(--space-m);display:grid;grid-template-columns:minmax(0,1fr);gap:0}
.rs-stop{display:grid;grid-template-columns:calc(var(--space-4xl) - var(--space-xs)) minmax(0,1fr);column-gap:var(--space-m);align-items:center;padding-block:var(--space-xs)}
.rs-stop__art{align-self:stretch;min-height:calc(var(--space-4xl) + var(--space-m))}
.rs-stop--survey .rs-stop__art{min-height:calc(var(--space-4xl) + var(--space-2xl));cursor:var(--cursor-pointer-hd,pointer)}
.rs-stop__text{display:grid;align-content:center;justify-items:start;gap:0}
.rs-stop__when{font-family:var(--font-mono);font-size:var(--type-meta);color:var(--color-text-faint)}
.rs-stop__link{font-size:var(--type-caption)}
.rs-stop__link .sig-label{color:var(--color-text)}
.rs-stop__kept{display:flex;align-items:baseline;gap:var(--space-xs);font-size:var(--type-label);line-height:var(--lh-label);color:var(--color-text);transform:translateY(var(--rise,0))}
.rs-stop__kept .rs-sw{transform:translateY(calc(-1 * var(--hair)))}
.rs-stop.is-now .rs-stop__when{color:var(--color-lilac)}
.rs-state{display:grid}
.rs-state>span{grid-area:1 / 1;display:grid;gap:var(--space-2xs);opacity:0;transition:opacity var(--dur-feedback) ease-out}
.rs-state>span.is-shown{opacity:1}
.rs-num{display:flex;flex-wrap:nowrap;white-space:nowrap;align-items:baseline;gap:var(--space-xs);color:var(--color-text-muted)}
.rs-num b{font-size:var(--type-title);line-height:var(--lh-title);letter-spacing:var(--ls-title);font-weight:var(--weight-medium);color:var(--color-text);font-variant-numeric:tabular-nums}
.rs-num .rs-num__was{color:var(--color-text-muted)}
.rs-num__was::after{content:"";display:inline-block;width:var(--step-7);height:var(--step-9);margin-left:var(--space-xs);background:var(--color-slash);clip-path:polygon(50% 0,100% 0,100% 34%,75% 34%,75% 67%,50% 67%,50% 100%,0 100%,0 67%,25% 67%,25% 34%,50% 34%)}
.rs-num__by{font-size:var(--type-label);color:var(--color-text-muted)}

.rs-toggle{display:inline-flex;align-items:center;gap:var(--space-xs);min-height:var(--target);margin-top:var(--space-xs);padding:0 var(--space-m) 0 var(--space-s);border:var(--hair) solid var(--color-line-strong);border-radius:var(--radius-control);background:color-mix(in oklch,var(--color-void) 80%,transparent);color:var(--color-text);font:inherit;font-size:var(--type-label);font-weight:var(--weight-medium);cursor:pointer;transition:border-color var(--dur-feedback) ease-out}
.rs-toggle:hover{border-color:var(--color-accent-line)}
.rs-toggle:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}
.rs-toggle[aria-expanded="true"]{border-color:var(--color-accent-line)}
.rs-toggle__glyph{position:relative;flex:none;width:var(--space-s);height:var(--space-s)}
.rs-toggle__glyph::before,.rs-toggle__glyph::after{content:"";position:absolute;background:currentColor;left:0;right:0;top:calc(50% - var(--hair) / 2);height:var(--hair)}
.rs-toggle__glyph::after{transform:rotate(90deg);transition:transform var(--dur-feedback) var(--ease-out)}
.rs-toggle[aria-expanded="true"] .rs-toggle__glyph::after{transform:rotate(0deg)}

.rs-panel{grid-column:1 / -1;position:relative;margin-top:var(--space-m);padding:var(--space-m);border:var(--hair) solid var(--color-line-panel);border-radius:var(--radius-chip);background:color-mix(in oklch,var(--color-shell-panel) 96%,transparent);box-shadow:var(--shadow-panel);font-size:var(--type-label);line-height:var(--lh-label);animation:rs-panel-in var(--dur-reveal) var(--ease-out)}
.rs-panel[hidden]{display:none}
@keyframes rs-panel-in{from{opacity:0;translate:0 calc(-1 * var(--space-xs))}to{opacity:1;translate:0 0}}
.rs-panel__head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--space-2xs) var(--space-m);padding-bottom:var(--space-s);border-bottom:var(--hair) solid var(--color-line)}
.rs-panel__id{font-size:var(--type-subtitle);line-height:var(--lh-subtitle);letter-spacing:var(--ls-subtitle);font-weight:var(--weight-medium)}
.rs-panel__where{color:var(--color-text-muted);font-size:var(--type-meta)}
.rs-read{display:grid;gap:var(--space-2xs);padding-block:var(--space-s);border-bottom:var(--hair) solid var(--color-line-row)}
.rs-read__who{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2xs) var(--space-xs)}
.rs-read__name{font-weight:var(--weight-medium)}
.rs-read__when{margin-left:auto;font-family:var(--font-mono);font-size:var(--type-meta);color:var(--color-text-faint)}
.rs-read__val{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-xs);color:var(--color-text-muted)}
.rs-read__val b{font-size:var(--type-title);line-height:var(--lh-title);letter-spacing:var(--ls-title);font-weight:var(--weight-medium);color:var(--color-text);font-variant-numeric:tabular-nums;min-width:3ch}
.rs-read:first-of-type .rs-read__val b{color:var(--color-text-muted)}
.rs-flag{display:inline-flex;align-items:center;gap:var(--space-xs);min-height:var(--label-height);padding:var(--label-pad);border:var(--hair) solid var(--color-accent-line);border-radius:var(--radius-chip);color:var(--color-lilac);font-size:var(--type-meta);font-weight:var(--weight-medium)}
.rs-flag::before{content:"";width:var(--step-6);height:var(--step-6);border:var(--hair) solid currentColor;transform:rotate(45deg)}
.rs-holds{display:grid;gap:var(--space-xs);padding-block:var(--space-s)}
.rs-holds__lead{font-size:var(--type-meta);color:var(--color-text-faint)}
.rs-holds__list{display:flex;flex-wrap:wrap;gap:var(--space-2xs)}
.rs-holds__list span{display:inline-flex;align-items:center;gap:var(--space-xs);min-height:var(--chip-height);padding:var(--chip-pad);border:var(--hair) dashed var(--color-line-strong);border-radius:var(--radius-chip);color:var(--color-text-faint);font-size:var(--type-meta);font-weight:var(--weight-medium);transition:color var(--dur-feedback) ease-out,border-color var(--dur-feedback) ease-out}
.rs-holds__list span::before{content:"";width:var(--step-6);height:var(--step-6);border:var(--hair) solid currentColor}
.rs-holds__list span.is-lit{color:var(--color-text);border-style:solid}
.rs-holds__list span.is-lit::before{background:currentColor}
.rs-kept{display:flex;align-items:center;gap:var(--space-xs);padding-top:var(--space-s);border-top:var(--hair) solid var(--color-line);color:var(--color-text)}
.rs-kept__mark{flex:none;width:var(--step-9);height:var(--step-9);border:var(--hair) solid var(--color-region-rose-light)}

.rs-panel [data-p-at]{opacity:0;transition:opacity var(--dur-sweep) var(--ease-out)}
.rs-panel [data-p-at].is-in{opacity:1}
@media (prefers-reduced-motion:reduce){
  .rs-panel{animation:none}
  .rs-panel [data-p-at],.rs-holds__list span,.rs-toggle__glyph::after{transition:none}
}

@container (max-width:22rem){
  .rs-num b{font-size:var(--type-subtitle);line-height:var(--lh-subtitle)}
  .rs-stop{grid-template-columns:calc(var(--space-3xl) + var(--space-xs)) minmax(0,1fr);column-gap:var(--space-s)}
  .rs-panel{padding:var(--space-s)}
}
@container (min-width:46rem){

  .rs-trail{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto auto auto;gap:0 var(--space-l);padding:var(--space-xl) var(--space-l) var(--space-l)}
  .rs-stop{grid-row:span 3;grid-template-columns:minmax(0,1fr);grid-template-rows:subgrid;align-items:start;padding:0}
  .rs-stop__art,.rs-stop--survey .rs-stop__art{min-height:clamp(calc(var(--space-4xl) * 1.8),20cqi,calc(var(--space-4xl) * 2.6))}
  .rs-stop__text{align-content:start;padding-top:var(--space-m)}

  .rs-panel{justify-self:center;width:min(36rem,calc(100cqi - 2 * var(--space-l)));margin-top:var(--space-l);padding:var(--space-l)}
}
