/* Optional reference columns stay beside the shared scene, never below it. */
.tm-chart { display:grid; grid-template-columns:minmax(0,1fr); min-width:0; }
.tm-chart[data-columns=true] { grid-template-columns:76px minmax(0,1fr) 76px; }
.tm-chart[data-columns=true] .tm-stage { grid-column:2; grid-row:1; }
.tm-stage { height:clamp(240px,calc(100svh - 240px),600px); }
.tm-activation-column { grid-row:1; display:flex; flex-direction:column; min-width:0; padding:12px 6px; font-family:SourceSans3,'Segoe UI',sans-serif; }
.tm-activation-column--D { grid-column:1; color:#ad3029; }
.tm-activation-column--P { grid-column:3; color:var(--ink); }
.tm-activation-column h2 { margin:0 0 8px; text-align:center; font:600 14px/1.2 SourceSans3,'Segoe UI',sans-serif; }
.tm-activation-column__rows { display:grid; grid-template-rows:repeat(13,minmax(0,1fr)); flex:1; min-height:0; margin:0; }
.tm-activation-column__row { display:flex; align-items:center; justify-content:center; gap:7px; min-width:0; }
.tm-activation-column dt { display:flex; flex:0 0 21px; }
.tm-activation-column dt svg { width:21px; height:21px; }
.tm-activation-column dd { margin:0; font-size:18px; font-weight:600; font-variant-numeric:tabular-nums; white-space:nowrap; }
.tm-fixation,.tm-activation-button .tm-fixation { flex:0 0 10px; width:10px; height:16px; overflow:visible; }
.tm-activation-column dd { position:relative; }
.tm-activation-column dd .tm-fixation { position:absolute; top:50%; transform:translateY(-50%); }
.tm-activation-column--D dd .tm-fixation { right:-11px; }
.tm-activation-column--P dd .tm-fixation { left:-11px; }
.tm-activation-column--P .tm-activation-column__row { flex-direction:row-reverse; }
/* Date/range settings no longer separate the native slider from the map. */
.tm-map-time-dock { padding:10px 16px 12px; }
.tm-map-time-dock .tm-time-heading { margin:0; gap:8px; flex-wrap:nowrap; }
.tm-map-time-dock .tm-time-heading h2 { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.tm-map-time-dock .tm-time-heading output { display:block; flex:1; min-width:0; font-size:14px; color:var(--ink); }
.tm-map-time-dock .tm-slider-wrap { margin:2px 0 8px; }
.tm-map-time-dock .tm-time-transport { grid-template-columns:auto minmax(110px,155px); align-items:center; justify-content:space-between; gap:12px; }
.tm-map-time-dock .tm-time-transport p { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.tm-map-time-dock .tm-map-settings { margin-top:8px; border-top:1px solid var(--line); padding-top:4px; }
.tm-map-time-dock .tm-window-controls { grid-template-columns:minmax(0,1fr); }
.tm-map-time-dock .tm-period-navigation { grid-column:auto; }
@media(max-width:620px) {
  .tm-chart[data-columns=true] { grid-template-columns:60px minmax(0,1fr) 60px; }
  .tm-stage { height:clamp(240px,calc(100svh - 260px),440px); }
  .tm-chart[data-columns=true] .tm-stage { height:320px; }
  .tm-activation-column { padding:10px 2px; }
  .tm-activation-column h2 { font-size:12px; }
  .tm-activation-column__row { gap:4px; }
  .tm-activation-column dt { flex-basis:16px; }
  .tm-activation-column dt svg { width:16px; height:16px; }
  .tm-activation-column dd { font-size:16px; }
  .tm-map-time-dock { padding-inline:10px; }
}
