/* T-ZERO 3D launch tracker (/tracker/). Loaded after /assets/style.css; everything is scoped under .tk / .tk-* so it
   cannot leak into (or be broken by) the shared site styles. Illustrative visualisation only - not telemetry. */
main.tk-main{max-width:1560px;padding-top:.8rem}
.tk-head{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .8rem;margin:0 0 .6rem}
.tk-head h1{font-size:1.2rem;margin:0}
.tk .spacer{flex:1}
.tk .pill{display:inline-block;padding:.12rem .6rem;border-radius:999px;font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;border:1px solid currentColor;white-space:nowrap}
.tk .pill.beta{color:var(--accent2)}.tk .pill.illus{color:var(--warn)}
.tk .mute{color:var(--mute)}.tk .small{font-size:.8rem}.tk .sr{position:absolute;left:-9999px}
.tk-app{display:grid;grid-template-columns:290px minmax(0,1fr) 330px;gap:.7rem;height:max(680px,calc(100vh - 215px));height:max(680px,calc(100dvh - 215px))}
.tk .panel{background:linear-gradient(180deg,var(--panel),var(--bg2));border:1px solid var(--line);border-radius:var(--r);padding:.8rem;overflow:auto;min-height:0;margin:0}
.tk .panel h2{font-size:1.05rem;margin:0 0 .5rem}.tk .panel h3{font-size:.8rem;margin:1rem 0 .4rem;color:var(--mute);text-transform:uppercase;letter-spacing:.12em}
.tk .tag{font-size:.65rem;border:1px solid var(--warn);color:var(--warn);border-radius:999px;padding:0 .4rem;letter-spacing:.04em;vertical-align:middle}
.tk #filter,.tk select{background:var(--bg);color:var(--text);border:1px solid var(--line);border-radius:8px;padding:.45rem .5rem;font:inherit;font-size:.9rem;width:auto}
.tk #filter{width:100%;margin-bottom:.5rem}
.tk .llist{list-style:none;margin:0;padding:0;display:grid;gap:.35rem}
.tk .llist button{display:block;width:100%;text-align:left;background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:.45rem .6rem;color:var(--text);cursor:pointer;font:inherit}
.tk .llist button:hover{border-color:var(--accent2)}
.tk .llist button[aria-current=true]{border-color:var(--accent);background:var(--panel2)}
.tk .llist .n{font-weight:600;font-size:.88rem;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tk .llist .s{font-size:.75rem;color:var(--mute);display:flex;justify-content:space-between;gap:.4rem}
.tk .llist .launched{color:var(--ok)}
.tk .stage{display:flex;flex-direction:column;gap:.6rem;min-width:0;min-height:0}
.tk #view{position:relative;flex:1;min-height:300px;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;background:#02030a}
.tk #gl{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:none;outline:none}
.tk #labels{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.tk .lbl{position:absolute;left:0;top:0;white-space:nowrap;font-size:11px;padding:1px 6px;border-radius:999px;background:rgba(7,8,15,.72);border:1px solid var(--line);color:var(--text);transform:translate(10px,-50%);will-change:transform}
.tk .lbl.pad{color:var(--accent);border-color:var(--accent)}.tk .lbl.rkt{color:#fff;border-color:#fff}.tk .lbl.iss{color:#ffe08a;border-color:#ffe08a}.tk .lbl.sta{color:var(--accent2);border-color:var(--accent2)}.tk .lbl.tev{color:#fff}
.tk .hud{position:absolute;z-index:2}
.tk .hud.tl{left:.7rem;top:.6rem;max-width:62%;text-shadow:0 1px 6px #000}
.tk .hud-name{font-weight:700;font-size:1rem;line-height:1.25}
.tk .hud-t{font:700 clamp(1.6rem,5vw,2.5rem)/1.1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-variant-numeric:tabular-nums;margin-top:.1rem}
.tk .hud-phase{color:var(--mute);font-size:.85rem}
.tk .hud-live{margin-top:.2rem;color:var(--ok);font-size:.78rem}
.tk .hud.tr{right:.6rem;top:.6rem}
.tk .hud.bl{left:.7rem;bottom:.6rem;display:flex;flex-wrap:wrap;gap:.2rem .8rem;font-size:.7rem;color:var(--mute);max-width:80%}
.tk .legend span{display:inline-flex;align-items:center;gap:.3rem}
.tk .dot{width:.6rem;height:.6rem;border-radius:50%;display:inline-block}.tk .dot.pad{background:var(--accent)}.tk .dot.rkt{background:#fff;box-shadow:0 0 6px #fff}.tk .dot.iss{background:#ffe08a}.tk .dot.sta{background:var(--accent2)}.tk .dot.sl{background:#8fa3c7}
.tk .ln{width:1rem;height:3px;display:inline-block;border-radius:2px}.tk .ln.traj{background:#ff9a5c}.tk .ln.gt{background:#46e0d0}
.tk .mobsel{display:none}
.tk .nogl{position:absolute;inset:0;display:grid;place-content:center;text-align:center;padding:2rem;color:var(--mute);z-index:3;background:#02030a}
.tk .bar{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .7rem;background:linear-gradient(180deg,var(--panel),var(--bg2));border:1px solid var(--line);border-radius:var(--r);padding:.6rem .7rem}
.tk button{font:inherit;color:var(--text);background:var(--panel2);border:1px solid var(--line);border-radius:8px;padding:.45rem .8rem;cursor:pointer;min-height:38px}
.tk button:hover{border-color:var(--accent2)}
.tk button.primary{background:var(--accent);border-color:var(--accent);color:#120800;font-weight:700;min-width:6rem}
.tk button[aria-pressed=true]:not(.primary){background:var(--panel2);border-color:var(--accent);color:var(--accent);font-weight:inherit}
.tk #btnLive[aria-pressed=true]{background:var(--ok);color:#001a0d;border-color:var(--ok);font-weight:700}
.tk .seg{display:inline-flex;background:rgba(7,8,15,.7);border-radius:8px}
.tk .seg button{border-radius:0;padding:.35rem .65rem;min-height:34px}.tk .seg button:first-child{border-radius:8px 0 0 8px}.tk .seg button:last-child{border-radius:0 8px 8px 0}.tk .seg button+button{border-left:0}
.tk .speed{display:flex;align-items:center;gap:.4rem;color:var(--mute);font-size:.82rem}
.tk .scrub{flex:1 1 260px;position:relative;min-width:180px;padding-top:2px}
.tk input[type=range]{width:100%;accent-color:var(--accent);height:28px;margin:0;background:transparent}
.tk .marks{position:relative;height:8px;margin-top:-4px;pointer-events:none}
.tk .marks i{position:absolute;top:0;width:2px;height:8px;background:var(--accent2);opacity:.75;transform:translateX(-1px)}
.tk .marks i.zero{background:var(--accent);height:10px}
.tk #mission h2{margin:0 0 .2rem}
.tk .kv{display:grid;grid-template-columns:auto 1fr;gap:.15rem .7rem;font-size:.84rem;margin:.4rem 0}
.tk .kv dt{color:var(--mute)}.tk .kv dd{margin:0}
.tk .tele{display:grid;grid-template-columns:repeat(2,1fr);gap:.4rem;margin:0}
.tk .tele div{background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:.35rem .5rem}
.tk .tele dt{font-size:.68rem;color:var(--mute);text-transform:uppercase;letter-spacing:.1em;margin:0}
.tk .tele dd{margin:0;font:600 1rem ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-variant-numeric:tabular-nums}
.tk .timeline{list-style:none;margin:0;padding:0;display:grid;gap:.25rem}
.tk .timeline button{display:flex;width:100%;gap:.6rem;align-items:baseline;text-align:left;background:var(--bg);padding:.35rem .5rem;font-size:.84rem;min-height:34px}
.tk .timeline .tt{font:600 .82rem ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;min-width:4.6rem;color:var(--accent2)}
.tk .timeline li.done button{border-color:#25503f}.tk .timeline li.done .tt{color:var(--ok)}
.tk .timeline li.next button{border-color:var(--accent)}
.tk .layers{display:grid;gap:.3rem;font-size:.85rem}.tk .layers label{display:flex;gap:.5rem;align-items:center}
.tk .foot{margin-top:.8rem}
.tk .badge{display:inline-block;padding:0 .45rem;border-radius:999px;font-size:.66rem;font-weight:700;border:1px solid currentColor;text-transform:uppercase;letter-spacing:0}
.tk-about{margin-top:1.2rem}
.tk-about h2{font-size:1.1rem}
.tk-about p{color:var(--mute);max-width:70ch}
@media (max-width:1100px){.tk-app{grid-template-columns:240px minmax(0,1fr) 290px}}
@media (max-width:900px){
  .tk-app{display:flex;flex-direction:column;gap:.5rem;height:auto}
  .tk .stage{order:1}.tk .info{order:2}.tk .side{order:3;max-height:420px}
  .tk #view{flex:none;height:min(66vh,560px);min-height:360px}
  .tk .panel{overflow:visible}.tk .side{overflow:auto}
  .tk .mobsel{display:block;margin-bottom:.3rem;pointer-events:auto}
  .tk .mobsel select{max-width:100%;width:calc(100vw - 6.5rem);font-size:.82rem;padding:.35rem}
  .tk .hud.tl{max-width:calc(100% - 1.4rem)}
  .tk .hud.tr{top:auto;right:.5rem;bottom:.5rem}
  .tk .hud.bl{max-width:62%;bottom:.55rem;font-size:.62rem;gap:.1rem .5rem}
  .tk #dataInfo{display:none}
  .tk .speed{order:3}.tk .scrub{order:4;flex-basis:100%}
  .tk button{min-height:42px}.tk .seg button{min-height:36px;padding:.3rem .5rem}
}
.tk [hidden]{display:none!important}
