/* Local coordinates below belong to each physical screen, before projection. */
.instrument-surface{position:absolute;left:0;top:0;transform-origin:0 0;z-index:2;pointer-events:none}
.instrument-surface .mon,.instrument-surface .glass{transform:none!important}
.instrument-surface #rearwrap,.instrument-surface [title],.instrument-surface a{pointer-events:auto}
#surface-hud{z-index:3}
#surface-hud #hud-pane{left:0;top:0;width:100%;height:100%}
#surface-hud #phase{left:24px;top:7px;width:482px;max-width:none;transform:none;font-size:10px!important}
#surface-hud #speed{left:24px;top:35px;width:430px}
#surface-hud #speed .val{font-size:38px}
#surface-hud #target-caption{left:465px;top:39px;width:55px}
#surface-hud #board{left:14px;top:125px;width:502px}
#surface-hud #board .cell{padding:6px 0}
#surface-hud #board .v{font-size:16px}
#surface-hud #board .th{font-size:11px}
#surface-comms #m-left{left:32px;top:31px;width:294px;height:auto}
#surface-comms #m-left h3{font-size:12px;margin-bottom:12px;letter-spacing:.06em}
#surface-comms #m-left #dop{font-size:8px}
#surface-comms #m-left .row{font-size:11px;padding:9px 0}
#surface-comms #m-left .row span:last-child{font-size:11px}
#surface-rear-log #rearwrap{left:3px;top:3px;width:334px;height:184px;clip-path:polygon(0 0,100% 0,100% 80%,89% 100%,14% 100%,0 80%);background:#02070b}
#surface-rear-log #rearwrap .t{left:15px;top:10px}
#surface-rear-log #rearwrap .t2{right:38px;bottom:16px}
#surface-rear-log #m-log{left:23px;top:99px;width:278px;height:auto}
#surface-rear-log #m-log h3{font-size:11px;margin-bottom:6px}
#surface-rear-log #m-log li{font-size:10px;line-height:14px;height:17px}
#surface-navigation #m-right{left:36px;top:15px;width:628px}
#surface-navigation #m-right .scr{display:grid;grid-template-columns:1fr 1fr;column-gap:38px}
#surface-navigation #m-right h3{grid-column:1/-1;font-size:14px;line-height:17px;margin-bottom:4px}
#surface-navigation #nav-phase{font-size:11px}
#surface-navigation #route{grid-column:1/-1;width:628px;height:100px}
#surface-navigation #m-right .row{font-size:14px;padding:8px 0;border:0} #surface-navigation #m-right .row span:last-child{font-size:16px}
#surface-time #clock{left:24px;top:23px;width:290px;height:102px}
#surface-time #clock>.lbl:first-child{font-size:12px;letter-spacing:.09em}
#surface-time #clock .ratio .s1{font-size:10px;max-width:160px;white-space:normal}
#surface-time #clock .ratio .val{font-size:27px}
#surface-time #clock .ratio .s1:last-child{display:block}
#surface-time #clock .lbl[style]{left:193px;top:0;font-size:11px}
#surface-time #clock #acc{left:193px;top:25px;font-size:25px}
#surface-time #clock #r-day{font-size:10px;margin-top:8px;max-width:286px}
#surface-time #arrival-caption{left:24px;top:139px;width:280px;font-size:10px}
#surface-time #arrival-caption #eta{font-size:12px;margin-top:6px}
#surface-spectrum #spectrum-title{left:36px;top:18px;font-size:12px;letter-spacing:.08em;color:#abd9e2}
#surface-spectrum #spectrum{left:9px!important;top:38px!important;width:342px;height:128px}
#surface-systems #m-mid{left:40px;top:10px;width:666px}
#surface-systems #systems{display:flex;flex-direction:column;align-items:flex-start;gap:3px}
#surface-systems #m-mid h3{position:absolute;right:0;top:17px;margin:0}
#surface-systems #m-mid h3>span:first-child{display:none}
#surface-systems #m-mid .row{width:220px;padding:0;font-size:14px;line-height:16px}
#surface-systems #m-mid .row span:first-child{font-size:10px;line-height:11px;margin-bottom:0!important}
.instrument-surface .scr::before{display:none}
.instrument-surface h3{color:#81bdca}
#surface-rear-log #m-log{top:90px}
#surface-rear-log #m-log h3{line-height:14px;margin-bottom:7px}
#surface-rear-log #m-log li{height:16px}
#surface-hud #board .cell{padding:5px 0}

/* The logbook shares the lower central display's perspective. */
#surface-systems #m-log{left:50%;margin-left:-155px;top:12px;width:310px;height:auto}
#surface-systems #m-log h3{font-size:12px;line-height:15px;letter-spacing:.08em;margin:0 0 9px;justify-content:center;text-align:center}
#surface-systems #m-log .log{margin:0;padding:0}
#surface-systems #m-log .log li{font-size:11px;line-height:18px;height:23px;padding:2px 0;gap:10px;border-bottom:1px solid #10232a}
#surface-systems #m-log .log li span:last-child{flex-shrink:0}




/* Consolidated Earth terminal; one hierarchy for rate, signal and arrival. */
#surface-time #clock{left:23px;top:12px;width:292px;height:auto}
#surface-time #clock h3{font-family:var(--font-ui);font-size:12px;line-height:15px;letter-spacing:.06em;font-weight:600;color:#a0cbd5;margin:0 0 6px}
#surface-time .time-rate{display:grid;grid-template-columns:1fr 94px;align-items:end;gap:10px;margin-bottom:5px;padding-bottom:5px;border-bottom:1px solid #26404b}
#surface-time .metric-label{display:block;font-family:var(--font-ui);font-size:10px;line-height:12px;color:#8fb2bd;letter-spacing:0}
#surface-time #clock #r-day{display:block;font-size:18px;line-height:21px;color:#91dfbc;margin:2px 0 0;max-width:none;white-space:nowrap}
#surface-time #clock #r-day.compound{font-size:14px;line-height:14px;white-space:pre-line}
#surface-time .rate-second{text-align:right}
#surface-time #r-sec{display:block;color:#a4c7d0;font-size:11px;line-height:14px;white-space:pre-line;margin-top:2px}
#surface-time .link-row{display:flex;justify-content:space-between;align-items:baseline;gap:7px;line-height:18px}
#surface-time .link-row>span{font-family:var(--font-ui);font-size:11px;color:#8fb2bd}
#surface-time .link-row strong{font-size:12px;font-weight:400;white-space:nowrap;color:#b7e7ef}
#surface-time #arrival-caption{left:47px;top:126px;width:260px;font-family:var(--font-ui);font-size:10px;line-height:12px;border-top:1px solid #26404b;padding-top:5px}
#surface-time .arrival-heading{font-size:11px;line-height:13px;letter-spacing:.08em;color:#a5ced7;margin-bottom:2px}
#surface-time .arrival-dates{display:grid;grid-template-columns:1fr 1fr;gap:15px}
#surface-time .arrival-dates span{display:block;color:#a0c5cf;font-size:10px;line-height:12px}
#surface-time .arrival-dates strong{display:block;color:#c7edf3;font-family:'JetBrains Mono',Consolas,monospace;font-size:16px;line-height:22px;font-weight:500;font-variant-numeric:tabular-nums;white-space:nowrap}


/* Three comparison columns; section labels get their own full-width line. */
#surface-comparison #board{left:28px;top:22px;width:304px;padding:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;background:transparent}
#surface-comparison #board>.th:first-child{display:none}
#surface-comparison #board .th{font-size:11px;line-height:13px;letter-spacing:.06em;padding:0 0 3px;color:#9cc8d4}
#surface-comparison #board .rl{grid-column:1/-1;font-size:9px;line-height:11px;letter-spacing:.07em;padding:3px 0 0;border:0;color:#80aeba}
#surface-comparison #board .rl br{display:none}
#surface-comparison #board .cell{padding:2px 0 3px}
#surface-comparison #board .v{font-size:12px;line-height:14px}
#surface-comparison #board .s{font-size:8px;line-height:9px;margin-top:1px}

#surface-comparison #board .foot{display:none}
/* Windshield news strip: no frame; motion is a compositor transform only. */
#surface-ticker>#phase{left:0;top:0;width:470px;max-width:none;height:20px;padding:0 12px;display:block;transform:none;border:0;border-radius:0;box-shadow:none;background:rgba(2,8,12,.80);overflow:hidden;z-index:3;font-size:13px!important;letter-spacing:.06em!important;text-align:left;line-height:20px;pointer-events:none}
#phase .news-track{display:flex;width:max-content;animation:windshield-news 38s linear infinite}
#phase .news-item{display:flex;flex-shrink:0;align-items:center;gap:12px;min-width:720px;padding-right:90px;white-space:nowrap}
#phase .news-state{color:#8dd5e4}
#phase .news-event{color:#b7dfe7}
#phase .news-separator{color:#6f99a5}
#phase .news-count{display:inline-block;min-width:166px;color:#c4e5ec;font-variant-numeric:tabular-nums}
@keyframes windshield-news{from{transform:translateX(0)}to{transform:translateX(-50%)}}



#surface-ticker{z-index:3}


/* Replace the baked floating outline with a compact flight strip. */
#cabin{mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201600%20900%22%3E%0A%20%20%3C%21--%20Hide%20only%20the%20old%20floating%20frame%3B%20the%20structural%20crossbar%20stays%20visible.%20--%3E%0A%20%20%3Cpath%20fill%3D%22white%22%20fill-rule%3D%22evenodd%22%20d%3D%22M0%200H1600V900H0Z%20M502%20134H1098V442H502Z%22%2F%3E%0A%3C%2Fsvg%3E%0D%0A");mask-size:100% 100%;mask-repeat:no-repeat}
#surface-hud #hud-pane{left:0;top:0;width:100%;height:100%;background:rgba(2,8,12,.80);clip-path:polygon(1.5% 0,98.5% 0,100% 10%,100% 90%,98.5% 100%,1.5% 100%,0 90%,0 10%);box-shadow:inset 0 1px rgba(143,216,232,.18)}
#surface-hud #target-caption{display:none}
#surface-hud #speed{left:0;top:0;width:100%;height:100%;padding:11px 17px;background:none;border:0}
#surface-hud .flight-destination{font-family:var(--font-ui);font-size:10px;line-height:12px;letter-spacing:.1em;color:#779da9;margin-bottom:10px}
#surface-hud .flight-metrics{display:grid;grid-template-columns:200px 142px 100px minmax(0,1fr);gap:10px;align-items:start;text-align:center}
#surface-hud #speed .lbl{font-size:10px;line-height:12px;letter-spacing:.04em;color:#9abcc7;margin-bottom:3px}
#surface-hud .flight-speed{font-size:18px;line-height:24px;color:#b7e7ef;white-space:nowrap}
#surface-hud .flight-speed small{font-size:10px;color:#87afbd}
#surface-hud .flight-value{font-size:18px;line-height:24px;color:#b7e7ef;white-space:nowrap}
#surface-hud .flight-remaining{font-size:13px;line-height:24px;color:#b7e7ef;white-space:nowrap}


#surface-navigation .nav-destination{font-size:11px;letter-spacing:.06em;color:#a0cbd5}

/* Comparable navigation distances, all expressed in AU with four decimals. */
#surface-navigation .nav-distances{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:3px 0 0}
#surface-navigation .nav-distance{min-width:0;display:flex;flex-direction:column;align-items:center;text-align:center;gap:3px}
#surface-navigation .nav-distance>span{font-family:var(--font-ui);font-size:13px;line-height:16px;color:#8fb2bd}
#surface-navigation .nav-distance strong{font-size:15px;line-height:21px;font-weight:400;white-space:nowrap;color:#b7e7ef;font-variant-numeric:tabular-nums}
#surface-navigation #nav-contraction{color:#91dfbc}

/* Shield, logbook and fuel occupy distinct thirds of the lower console. */
#surface-systems #m-mid{left:40px;top:12px;width:660px;height:116px}
#surface-systems #m-mid .scr{padding:0}
#surface-systems #systems{position:relative;display:block;width:660px;height:116px}
#surface-systems .system-stack{position:absolute;top:0;width:160px}
#surface-systems .shield-stack{left:0}
#surface-systems .fuel-stack{right:0}
#surface-systems #m-mid .system-stack h3{position:static;display:block;font-size:12px;line-height:15px;letter-spacing:.08em;margin:0 0 9px;color:#81bdca}
#surface-systems #m-mid .system-stack .row{display:block;width:100%;font-size:13px;line-height:16px;margin-bottom:5px;padding:0;border:0}
#surface-systems #m-mid .system-stack .row span:first-child{font-size:9px;line-height:11px;letter-spacing:.04em}
#surface-systems #m-mid .system-stack .row span:last-child{font-size:13px;line-height:16px;white-space:nowrap}
#surface-systems #fuel-remaining{color:#91dfbc}
/* Symmetric side stacks: headings, labels and values share each column's axis. */
#surface-systems .system-stack{width:148px;text-align:center}
#surface-systems .shield-stack{left:-18px}
#surface-systems .fuel-stack{right:-18px}
#surface-systems #m-mid .system-stack h3{text-align:center;margin-bottom:9px}
#surface-systems #m-mid .system-stack .row{margin:0 0 5px;min-height:27px;text-align:center}
#surface-systems #m-mid .system-stack .row span{width:100%;text-align:center;font-variant-numeric:tabular-nums}
/* Two clock comparisons use the full upper-left monitor. */
#surface-comparison #board{top:20px}
#surface-comparison #board .th{font-size:12px;line-height:15px;padding-bottom:5px}
#surface-comparison #board .rl{font-size:10px;line-height:13px;padding-top:5px}
#surface-comparison #board .cell{padding:4px 0 7px}
#surface-comparison #board .v{font-size:16px;line-height:21px}
#surface-comparison #board #d-ship,#surface-comparison #board #d-earth{font-size:14px}
#surface-comparison #board .s{font-size:10px;line-height:12px;margin-top:2px}
/* One shared clock difference, vertically centered beside both comparisons. */
#surface-comparison #board .rl{grid-column:1/3}
#surface-comparison #board .clock-advantage{grid-column:3;grid-row:1/6;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:7px;border:0;border-left:1px solid #213c45;padding:0 0 0 7px;margin-left:5px;min-width:0;text-align:center}
#surface-comparison .advantage-label{font-family:var(--font-ui);font-size:10px;line-height:13px;letter-spacing:.03em;text-transform:uppercase;color:#91c5b2;white-space:nowrap}
#surface-comparison #board #d-dif{display:flex;flex-direction:column;align-items:center;gap:2px;width:100%;min-width:0;line-height:20px;white-space:normal;letter-spacing:0;font-variant-numeric:tabular-nums}
#surface-comparison #d-dif-number{display:block;max-width:100%;white-space:nowrap;font-size:16px;line-height:20px;letter-spacing:0}
#surface-comparison #d-dif-unit{display:block;font-size:11px;line-height:14px;color:#91c5b2}
#surface-comparison #d-dif.compound #d-dif-number{white-space:pre-line;line-height:17px}
#surface-comparison #d-dif.compound #d-dif-unit{display:none}
#surface-comparison #e-ship,#surface-comparison #e-earth{letter-spacing:0;font-variant-numeric:tabular-nums}
/* Header and distance readouts share the same three column axes. */
#surface-navigation #m-right .scr{grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible}
#surface-navigation #m-right h3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:center;text-align:center}
#surface-navigation #m-right h3>span{display:block;min-width:0;text-align:center;white-space:nowrap}
#surface-navigation #route{width:664px;max-width:none;min-width:0;margin-left:-18px}
/* Stable centered axes; the speed column accommodates 1.079.252.849 km/h. */
#surface-hud .flight-metrics>div{min-width:0}
#surface-hud .flight-metrics .lbl{white-space:nowrap;text-align:center}
#surface-hud .flight-speed,#surface-hud .flight-value,#surface-hud .flight-remaining{display:flex;justify-content:center;align-items:baseline;height:24px;font-variant-numeric:tabular-nums;letter-spacing:0}
#surface-hud #hud-remaining{display:block;height:28px;font-size:12px;line-height:14px;white-space:pre-line}
#surface-hud .flight-speed{gap:5px}
/* Both cords and the sign swing together around one fixed ceiling attachment. */
#chalk-hanger{position:absolute;left:97px;top:18px;width:132px;height:170px;z-index:2;pointer-events:none;transform-origin:66px 24px;animation:sign-pendulum 2.4s ease-in-out infinite}
#chalk-hanger .sign-cords{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
#chalk-hanger .sign-cords circle{fill:#7d7460;stroke:#272820;stroke-width:1}
#chalk-hanger .cord{fill:none;stroke:#817762;stroke-width:1.4;stroke-linecap:round}
#chalk-hanger #chalk{left:0;top:76px;transform-origin:50% 0;transform:rotate(-5deg)}
#chalk-hanger #chalk small{font-size:10px;letter-spacing:.06em;margin-top:5px;white-space:nowrap}
@keyframes sign-pendulum{0%,100%{transform:rotate(-2deg)}50%{transform:rotate(2deg)}}
@media(prefers-reduced-motion:reduce){#chalk-hanger{animation:none}}
/* Flight status is already shown on the upper instruments. */
#thrust,#preview-note{display:none}

/* Editorial radio: a single complete passage, then a different bulletin. */
#phase.radio-ticker .news-track{animation:none;will-change:transform}
#phase.radio-ticker .news-item{min-width:0;padding-right:24px;gap:12px}
/* Readable secondary clock values; completed diary entries keep their intentional dimming. */
#surface-comparison #board .s{color:#82aeba}
/* Keep the launch caption entirely above the flight strip at y=380. */
#launch{top:260px;gap:18px}
#launch .cap{font-size:11px;line-height:16px;letter-spacing:.18em;color:#b7dfe7;text-shadow:0 1px 3px rgba(0,0,0,.8);white-space:nowrap}
