#flagship{color-scheme:dark;--light:#ecede8;--dark:#131c25;--hair:#43505b;--gold:#efd2a1;display:flex;flex-direction:column;height:100dvh;overflow:hidden;background:var(--dark);color:var(--light);font-family:var(--sans)}
#flagship .top{height:54px;min-height:54px;gap:16px;padding:0 clamp(14px,2.5vw,48px);background:#10171e;border-color:#34404a}
#flagship .simulator-name{font-size:14px;margin:0;font-weight:510;letter-spacing:.07em}
.fa-menu{display:flex;align-items:center;gap:14px;margin-left:auto}.fa-menu button,.transport button{border:1px solid #424f59;color:#e6ecec;background:#19232c;font-size:12px;font-weight:530;border-radius:2px;padding:7px 12px}
#flagship button:hover:not(:disabled),#flagship a:hover{filter:brightness(1.15)}
#flagship .theatre{position:relative;flex:1;min-height:0;padding:0;max-width:none;overflow:hidden;background:#17212d}
#scene{position:absolute;inset:0;isolation:isolate}#scene>canvas{display:block;width:100%;height:100%;touch-action:none}
.work-count{position:absolute;z-index:3;left:clamp(12px,2vw,38px);top:18px;display:flex;align-items:center;gap:10px;background:#121c24dc;padding:6px 10px;border-left:2px solid #9dbdb1;color:#dce8e3;font-size:11px;pointer-events:none}
.work-count:empty{display:none}.work-count b{font:600 13px var(--mono)}.work-count span{display:inline-flex;gap:5px;align-items:center}
#shared{position:absolute;z-index:3;top:10px;left:50%;transform:translateX(-50%);background:#101a22f2;border:1px solid #57646b;padding:6px 14px;display:flex;flex-direction:column;align-items:center;gap:3px;white-space:nowrap;pointer-events:none}
#shared strong{font-size:11px;color:#bccfc8;font-weight:500}#common-values{display:flex;gap:13px;font-size:12px;font-variant-numeric:tabular-nums}
#caption-box{position:absolute;z-index:4;bottom:14px;left:50%;transform:translateX(-50%);width:max-content;max-width:88%;pointer-events:none;text-align:center}
#caption{color:white;background:rgba(10,18,26,.91);padding:9px clamp(16px,1.6vw,36px);font-size:clamp(17px,1.5vw,32px);font-weight:550;line-height:1.45;margin:0;letter-spacing:.025em;text-wrap:balance}
#caption:empty{display:none}#caption-box.question{bottom:48%;max-width:92%}#caption-box.question p{font-size:clamp(22px,2.6vw,51px);padding:15px 24px}
.transport{height:55px;min-height:55px;display:flex;gap:16px;align-items:center;background:#10171e;border-top:1px solid #424e59;padding:0 clamp(12px,2.4vw,47px);color:#e6ece9}
.run-buttons{display:flex;gap:6px}.run-buttons button{font-size:17px;line-height:1.1;width:34px;height:30px;padding:0}.cue{display:flex;align-items:center;gap:10px;font-size:12px}.cue time{font:12px var(--mono);color:#b3c4c6}
.film-track{height:3px;flex:1;background:#39434c}.film-track>div{width:0;height:100%;background:#b5cec1}
.transport #advance{color:#18231f;background:#d6e4da;border-color:#c3d8c8}
#source-panel,#details-pane{position:absolute;z-index:8;background:#f3f5f1;color:#203038;border:1px solid #8d9c9e;right:15px;top:14px;max-height:calc(100% - 28px);box-shadow:0 5px 28px #0006}
#source-panel{width:min(300px,87vw);padding:14px}.drawer-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 10px}
.drawer-head h2{font-size:18px;font-weight:610}.close-btn{background:transparent;color:#364951;border:0;font-size:23px;line-height:1}
#source-panel label{display:block;font-size:11px;color:#53616a}#source-picker{margin:4px 0 12px;background:#fff;color:#203038;border:1px solid #a9b6b6;width:100%;font-size:13px;padding:7px}
.route-readout{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px}.route-readout strong{font:600 15px var(--mono)}
#route-impact{font-size:12px;margin:7px 0 12px}#toggle-source,.file-actions button,.world-actions button,.file-actions a{border:1px solid #9eabae;background:white;color:#293a40;border-radius:2px;padding:7px 10px;font-size:12px;font-weight:550;text-decoration:none}
#toggle-source{width:100%;background:#314048;color:white}.route-readout .off{color:#985220}
#details-pane{width:min(460px,94vw);display:flex;flex-direction:column}
#details-pane .drawer-head{padding:12px 15px;margin:0;border-bottom:1px solid #c5cecc}.drawer-scroll{overflow:auto;padding:2px 15px 17px}
.drawer-scroll h3,.drawer-scroll summary{font-size:14px;font-weight:610;margin:11px 0 6px}.drawer-scroll summary{cursor:pointer}.drawer-scroll details{border-bottom:1px solid #cbd2ce;padding-bottom:6px}
.audit-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;align-items:baseline;padding:5px 0;border-top:1px solid #d5dcd7;font-size:11px}.audit-row small{color:#56656a}.audit-row b{font-weight:550}
.audit-row .ok{color:#1f6856}.audit-row .bad{color:#965521}.file-actions,.world-actions,.research-links{display:flex;gap:6px;flex-wrap:wrap}.drawer-scroll code{display:block;font:11px var(--mono);margin-top:5px;color:#54646a}.research-links a{color:#315c53;font-size:12px;padding:3px 4px}
@media(max-width:900px){.work-count{top:auto;bottom:8px;left:7px;font-size:9px;padding:3px 5px}.transport{gap:6px}#common-values{font-size:10px;gap:7px}#caption-box{bottom:34px}.cue{gap:5px}#flagship .top{gap:9px}}
@media(max-width:560px){#flagship .top{padding:0 8px}.fa-menu{gap:4px}.fa-menu button{padding:5px}.transport button{padding:5px 6px}.transport{padding:0 5px}.film-track{min-width:5px}.run-buttons{gap:2px}.cue{display:grid;gap:0;font-size:10px}#shared{padding:3px 7px}#caption{font-size:15px}}
@media(prefers-reduced-motion:reduce){#flagship *{scroll-behavior:auto!important}}
.window-note,#route-window{font-size:11px;line-height:1.6;color:#53616a;margin:5px 0}
#flagship[data-mode="interactive"] #caption-box{display:none}
#operator-desk{display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid #516169;background:#17222b;color:#eef3ef;padding:15px clamp(16px,2.2vw,44px)}
.case-summary{min-width:0}.case-meta{display:flex;align-items:center;gap:12px;font:11px var(--mono);color:#b5c7c9}
#case-status{font:600 11px var(--sans);color:#e7c397}#case-status[data-decision="confirmed"]{color:#abd3b5}
.case-summary h2{font-size:clamp(16px,1.1vw,22px);font-weight:600;margin:4px 0 2px}.case-summary p{font-size:13px;line-height:1.5;color:#becbcf;margin:0}
.desk-controls,.field-views,.field-operations,.instrument-actions{display:flex;align-items:center;gap:6px}.desk-controls{flex-wrap:wrap;justify-content:flex-end;gap:15px}
.field-views{border-right:1px solid #50606a;padding-right:15px}.desk-controls button{padding:9px 12px;font:550 13px var(--sans);background:transparent;color:#dce6e5;border:1px solid #52626c;border-radius:2px;white-space:nowrap}
.field-views button{border-color:transparent}.field-views button[aria-pressed="true"]{background:#33434b;border-color:#83958f;color:white}
.desk-controls .field-primary{background:#cee6d4;color:#173128;border-color:#c0d7c4}.desk-controls button:disabled,.instrument-actions button:disabled{opacity:.48;cursor:default}
#instrument-reading{border-top:1px solid #cad4ce;padding:10px 0}#instrument-reading small{color:#56666a}#instrument-value{font:550 13px var(--sans);margin:4px 0 9px}.instrument-actions button{background:white;color:#243c3e;border:1px solid #92a3a5;padding:6px 10px;border-radius:2px}
@media(max-width:1100px){#operator-desk{gap:10px}.desk-controls{gap:6px}.field-views{padding-right:6px}.desk-controls button{padding:8px;font-size:12px}.case-summary p{font-size:12px}}
@media(max-width:760px){#operator-desk{align-items:flex-start;flex-direction:column;padding:8px 10px;gap:6px}.desk-controls{width:100%;justify-content:space-between}.field-views{border:0}.case-summary h2{display:inline-block;margin:0 8px 0 0}.case-summary p{display:inline}.case-meta{margin-bottom:3px}}
