/* CONTROLLER_HF_V153 */
:root{--ts-v153-cyan:#72c7dd;--ts-v153-amber:#d9aa4a}
html,body{font-family:Inter,"Helvetica Neue",Arial,sans-serif;font-weight:400;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
button,input,select{font-family:inherit}

/* Homepage: restrained product typography inspired by mature aviation software, not game UI. */
body h1,body h2,body h3,body h4,body b,body strong{font-weight:560}
.navlinks{font-weight:500!important;letter-spacing:.01em}
.eyebrow,.kicker{font-weight:600!important;letter-spacing:1.25px!important}
.hero h1{font-size:clamp(40px,5.2vw,66px)!important;line-height:1.04!important;letter-spacing:-1.8px!important;font-weight:540!important;max-width:760px!important}
.lede{font-size:20px!important;line-height:1.5!important;color:#c4ccd3!important;max-width:720px!important;font-weight:400!important}
.modernization-note{max-width:720px;margin:-8px 0 28px;color:#8f9ca8;font-size:14px;line-height:1.62;border-left:2px solid #2d3a45;padding-left:15px}
.primary,.secondary,.searchbox button{font-weight:600!important;box-shadow:none!important}
.screenbar,.pane-title,.sidebar h3,.module .code,.seq{font-weight:560!important;letter-spacing:.7px!important}
.module{border-top-width:1px!important;box-shadow:none!important}
.module h3{font-weight:560!important}
.module .go{font-weight:560!important}
.cap b{font-weight:560!important}
.trustline{font-size:12px!important;letter-spacing:.01em}

/* Controller environment: clearer hierarchy with fewer heavy weights. */
.tbar{align-items:flex-start}
.tbar .module-label,.chip,.mctl h5,.pane>.hd,.card h4,.bay .bh{font-weight:560!important;letter-spacing:.75px!important}
.seg .b{font-weight:560!important}
.ac .db,.strip .cs,.seqno,.healthrow .name{font-weight:560!important}
.ts-clock-stack{margin-left:auto;display:flex;flex-direction:column;align-items:flex-end;gap:4px;min-width:300px}
.ts-clock-stack #clock{margin-left:0!important;font-size:18px!important;line-height:1.05;color:#72c7dd!important;letter-spacing:1px;font-weight:560!important}
.ts-clock-weather{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}
.ts-clock-weather .ts-altimeter,.ts-clock-weather .ts-wind,.ts-clock-weather .ts-flight-category{font-size:11.5px!important;font-weight:500!important;padding:5px 9px!important;min-height:27px;display:inline-flex;align-items:center;border-radius:5px!important;background:#0c141d!important;border-color:#2a3945!important}
.ts-build-chip{align-self:center;margin-top:2px;color:#9aa8b3!important;background:#0b131b!important;font-weight:500!important}
.ts-ptl-controls .seg .b{min-width:46px}
.ts-ptl-controls .trailhint{max-width:210px;line-height:1.45}
.ts-control-toggle{display:none;position:absolute;right:10px;top:42px;z-index:760;border:1px solid rgba(114,199,221,.42);border-radius:6px;background:rgba(7,14,21,.96);color:#d6e1e8;font:560 10px Inter,"Helvetica Neue",Arial,sans-serif;letter-spacing:.35px;padding:6px 9px;box-shadow:0 5px 18px rgba(0,0,0,.35)}
.ts-surface-readable{background:#08111a!important}
.ts-surface-readable .leaflet-tile-pane{opacity:.96}
#rangeSeg .b.on,#ringIntervalSeg .b.on,#ptlSeg .b.on{color:#071018!important;background:var(--ts-v153-cyan)!important;border-color:var(--ts-v153-cyan)!important;box-shadow:0 0 0 1px rgba(114,199,221,.18)}
#ptlTog{accent-color:var(--ts-v153-cyan)}

@media(min-width:821px){.ts-controller-panel{display:block!important;visibility:visible!important;opacity:1!important}.ts-control-toggle{display:none!important}}
@media(max-width:820px){
 .tbar{align-items:center;gap:8px}
 .ts-clock-stack{order:90;width:100%;min-width:0;align-items:flex-start;margin-left:0;padding-top:4px;border-top:1px solid rgba(255,255,255,.08)}
 .ts-clock-weather{justify-content:flex-start;width:100%;overflow-x:auto;flex-wrap:nowrap;padding-bottom:2px}
 .ts-build-chip{order:91;margin-left:auto}
 .ts-control-toggle{display:block}
 .ts-controller-panel{max-width:min(86vw,310px)!important}
 .ts-controller-panel.ts-mobile-hidden{display:none!important}
 .pane>.hd{padding-right:88px}
 .hero h1{font-size:clamp(36px,11vw,50px)!important;letter-spacing:-1.2px!important}
 .lede{font-size:17px!important}
}
