/* Shared static time controls; all ages remain keyboard reachable. */
.timeline{flex:0 0 auto;z-index:5;background:#0d2029;border-top:1px solid #36515c;padding:12px 24px 10px;box-shadow:0 -6px 25px #04101855}.timeline[hidden]{display:none}.timeline-top{display:flex;align-items:center;gap:22px}.timeline-title{display:flex;align-items:baseline;gap:16px}.timeline-title output{font-size:1.2rem;font-weight:600;min-width:90px}.timeline-actions{display:flex;gap:6px}.timeline-actions button{font-size:.8rem;min-height:44px}.timeline #stageCounts{font-size:.8rem;color:#b3c8cb;margin:0 0 0 auto}.timeline-track{position:relative;margin:5px 0 0;padding:0 21px}.timeline input[type=range]{accent-color:#bce4dc;cursor:pointer;margin:0;display:block;width:100%;padding:0;height:44px;min-height:44px;border:0;background:transparent}.all-time input[type=range]{opacity:.45}.stage-ticks{display:flex;justify-content:space-between;margin:0 -21px}.stage-ticks button{border:0;border-radius:5px;background:transparent;min-width:44px;min-height:44px;font-size:.75rem;padding:2px 4px;position:relative;color:#9fb8c0}.stage-ticks button:before{content:'';display:block;width:1px;height:5px;background:#526f78;margin:-4px auto 5px}.stage-ticks button[aria-pressed=true]{color:#fff0c9;background:#34453d;box-shadow:inset 0 -2px #edcf95}.timeline-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px}.timeline-bottom p{font-size:.72rem;color:#a4bec4;margin:0}.time-dot{display:inline-block;width:7px;height:7px;border-radius:100%;margin:0 6px 0 18px;vertical-align:1px}.time-dot:first-child{margin-left:0}.time-dot.bright{background:#c6f1e6}.time-dot.unknown{background:#748489;border:1px dashed #adbec3}.time-dot.dim{background:#30434a;border:1px solid #617c86}#timeEvidence{margin:0;position:relative}#timeEvidence summary{font-size:.73rem;min-height:28px;display:flex;align-items:center;text-decoration:underline}#timeEvidence[open] p{position:absolute;bottom:36px;right:0;width:min(570px,85vw);padding:18px;border:1px solid #698189;border-radius:8px;background:#10252ff5;color:#d4e5e6;box-shadow:0 10px 35px #0008;font-size:.85rem;line-height:1.6;z-index:8}#timeAxisLabels{position:absolute;inset:0;pointer-events:none;z-index:1}.axis-age,.axis-title{position:absolute;font-size:.64rem;color:#8fa9b3;transform:translate(-100%,-50%);white-space:nowrap;text-shadow:0 1px 4px #000}.axis-age.current{color:#ffdea3;font-weight:700;font-size:.76rem}.axis-title{font-size:.55rem;letter-spacing:1.2px;max-width:80px}.selected-stage{font-size:.78rem;border-left:2px solid #809fa7;padding-left:9px;color:#bed2d4}.selected-stage[data-time=active]{border-color:#b3e2d6;color:#d5f4e8}.selected-stage[data-time=outside]{color:#9ab2bb}.finding-card{border:1px solid #45666d;border-radius:10px;background:linear-gradient(125deg,#1a363c,#12262d);padding:15px;margin:12px 0}.findings-panel h2{font-size:1.25rem;margin:6px 0 10px}.finding-card h3{font-size:1rem;line-height:1.3;margin:0 0 9px;color:#e4f2e8}.finding-card p,.finding-empty{font-size:.84rem;line-height:1.6;color:#b9d0d2;margin:8px 0 12px}.finding-card a{font-size:.73rem;line-height:1.4;display:block}.finding-focus{font-size:.75rem;margin-top:12px;width:100%;text-align:left;min-height:44px}.findings-panel{margin-bottom:24px}.findings-panel[hidden]{display:none}.endpoint[data-time=outside] .number{color:#72888e}.endpoint[data-time=outside] small{color:#7b949c}.endpoint .time-badge{display:block;font-size:.7rem;color:#9fb6ba;margin-top:5px}.endpoint[data-time=active] .time-badge{color:#c8e8cd}.hotspot[data-time=outside]{opacity:.27}.hotspot[data-time=unknown]{opacity:.55;border-style:dashed}.hotspot[data-time=context]{opacity:.65}.hotspot[data-time=active]{border-color:#dcffe9;box-shadow:0 0 10px #b5eee544}.hotspot.selected[data-time=outside],.hotspot.selected[data-time=unknown]{opacity:.75}.graphics-failed #timeAxisLabels{display:none}
@media(max-width:800px){.timeline{padding:9px 12px 7px}.timeline-top{gap:9px;flex-wrap:wrap}.timeline-title{gap:8px}.timeline-title .kicker{font-size:.58rem;max-width:78px}.timeline-title output{font-size:1rem;min-width:60px}.timeline-actions{margin-left:auto}.timeline-actions button{font-size:.7rem;padding:5px 9px;min-height:44px}.timeline #stageCounts{margin:0;flex-basis:100%;font-size:.66rem;line-height:1.25}.timeline-track{padding:0 12px}.stage-ticks{margin:0 -12px}.stage-ticks button{min-width:0;flex:1;min-height:44px;font-size:.58rem;padding:2px 0}.timeline-bottom{gap:8px;align-items:flex-start}.timeline-bottom p{font-size:.6rem;line-height:1.65}.time-dot{margin-left:8px;margin-right:3px;width:5px;height:5px}#timeEvidence summary{font-size:.62rem;white-space:nowrap;min-height:30px}.stage{flex:0 0 49%;min-height:230px}.toolbar{max-width:calc(100% - 70px)}.toolbar button{min-height:44px}.hint{max-width:calc(100% - 20px);font-size:.59rem}.axis-age{font-size:.56rem}.axis-title{font-size:.48rem}.finding-card{padding:12px}.finding-card p{font-size:.82rem}}
@media(max-height:730px) and (max-width:800px){header #subtitle{display:none}.timeline{padding-top:5px;padding-bottom:3px}.timeline-top .kicker{display:none}.timeline-bottom #stageLegend{max-width:220px}.stage{min-height:200px}.hint{display:none}}

.hint>span{display:block}
@media(max-width:800px){
 .stage{flex:0 0 60%;min-height:280px}
 .toolbar{max-width:calc(100% - 24px);right:12px;flex-wrap:nowrap;gap:5px}
 .toolbar button{font-size:.69rem;padding:6px 7px}
 .stats{display:none}
 .scene-label.root{top:58px!important;left:50%!important;transform:translateX(-50%);max-width:88%;width:max-content;line-height:1.3;pointer-events:auto}
 #edgeLabel{display:none!important}
 .hint .legend,.hint .geometry-note{display:none}
 .hint{font-size:.58rem;padding:3px 5px;background:#08131bcc}
 .timeline-title .kicker{width:88px;max-width:88px;flex-shrink:0;font-size:.51rem;letter-spacing:.8px}
 .timeline-title output{min-width:47px}
 .timeline-top{gap:7px}
}
@media(max-width:370px){
 .toolbar{gap:3px;left:8px;right:8px;max-width:calc(100% - 16px)}
 .toolbar button{font-size:.64rem;padding:6px 5px}
 .timeline-title .kicker{width:74px;max-width:74px;font-size:.46rem}
 .timeline-title output{font-size:.85rem;min-width:43px}
 .timeline-actions button{padding:5px 7px}
}
@media(max-height:730px) and (max-width:800px){.stage{min-height:235px;flex-basis:58%}}
