/* Full viewport bridge. The helm and engine levers never leave the scene. */
.cockpit-view{background:#0b2632;overflow:hidden;height:100dvh;color:#e3efec}
.cockpit-view .topbar{height:56px;position:fixed;inset:0 0 auto;z-index:12;background:linear-gradient(#08232bea,#08232b88);border:0;padding:0 24px;backdrop-filter:blur(8px)}
.bridge-toolbar{display:flex;gap:6px;align-items:center}.bridge-toolbar button{background:#0b2b38aa;border:1px solid #85b4b52e;color:#e3eeea;padding:10px 14px;font-size:12px;min-height:38px}.bridge-toolbar button:hover{background:#396c7199}#fullscreen{font-size:24px;line-height:16px;min-width:42px;padding:10px}
.cockpit-view #app{display:block;width:100vw;height:100dvh;min-height:0;max-width:none;margin:0}.cockpit-view .simulation{display:block;padding:0;position:static;width:100%;height:100%;margin:0}.cockpit-view .scene-wrap{height:100dvh;width:100%;min-height:0;border-radius:0;overflow:hidden;flex:none}
.mission-strip{position:absolute;top:76px;left:26px;width:min(390px,42vw);text-shadow:0 2px 12px #062d38;pointer-events:none}.instrument-eyebrow{display:block;font-size:8px;letter-spacing:2px;color:#b5dbce}.mission-strip>strong{display:block;font-size:22px;letter-spacing:-.5px;margin:5px 0 6px;color:#fff}.mission-strip>span:last-of-type{font-size:11px;display:block;color:#cce5dc}.mission-strip progress{width:150px;margin:9px 0 0;background:#203f4477;height:3px;opacity:.8}.mission-strip progress::-webkit-progress-bar{background:#244e5366}.mission-strip progress::-webkit-progress-value{background:#91d9b6}
.cockpit-view .telemetry{top:176px;left:26px;gap:23px;padding:13px 17px;background:#062c38b0;backdrop-filter:blur(9px);border:1px solid #a7d5d421;border-radius:10px;pointer-events:none}.cockpit-view .telemetry strong{font:500 25px 'Consolas','Courier New',monospace;font-variant-numeric:tabular-nums;letter-spacing:-1px;color:#d9f4e9}.cockpit-view .telemetry span{font-size:7px;letter-spacing:1.2px;color:#a5c8c9}.cockpit-view .telemetry small{font-size:12px}.cockpit-view .points-hud strong{color:#ebd599}
.cockpit-view .scene-top{top:75px;left:auto;right:24px}.cockpit-view .views{background:#082b38b3;border:1px solid #96bebb36;backdrop-filter:blur(8px)}.cockpit-view .views button{font-size:12px;min-height:35px;padding:8px 14px}.cockpit-view #minimap{top:132px;right:25px;bottom:auto;width:134px;height:110px;opacity:.82;background:#0a2e34b0}
.weather-chip{position:absolute;right:25px;top:255px;font-size:8px;letter-spacing:.8px;color:#d6e7db;background:#072e39a6;padding:9px 12px;border-radius:5px;pointer-events:none}
.wheel-console{position:absolute;bottom:0;left:4%;width:270px;z-index:4;filter:drop-shadow(0 7px 15px #00182388);pointer-events:none}.rudder-display{display:flex;align-items:center;justify-content:center;gap:10px;padding:8px 12px;background:#08242dce;border:1px solid #90acaf44;border-radius:9px;width:max-content;margin:0 auto 13px;pointer-events:auto;backdrop-filter:blur(10px)}.rudder-display>span{font-size:8px;letter-spacing:1px;color:#91b3b5}.rudder-display strong{font:25px 'Consolas',monospace;color:#deede3;min-width:46px}.rudder-display b{font-size:8px;letter-spacing:1px;color:#bccecc;min-width:47px}.rudder-display button{font-size:9px;color:#c8dfd4;background:#274d55;padding:8px 9px;min-height:31px}
.wheel-crop{height:146px;overflow:hidden;position:relative;pointer-events:none}.wheel{width:270px;height:270px;touch-action:none;cursor:grab;user-select:none;pointer-events:auto;border-radius:50%;outline-offset:-10px}.wheel.dragging{cursor:grabbing}.wheel-art{width:100%;height:100%;display:block;transform:rotate(var(--wheel-angle,0deg));transform-origin:center}.wheel:focus-visible{outline:3px solid #cfc38b}.wheel[aria-disabled=true]{cursor:default}
.engine-console{position:absolute;right:26px;bottom:17px;width:224px;padding:12px 14px 10px;border:1px solid #87a8ad5c;border-radius:19px 19px 10px 10px;background:linear-gradient(140deg,#24444ef2,#0b202af2 60%);box-shadow:0 6px 26px #02131f88,inset 0 1px 1px #c4d3d340;z-index:4;backdrop-filter:blur(10px)}.engine-console-title{display:flex;align-items:center;justify-content:space-between;font-size:8px;letter-spacing:1.5px;color:#b9cdcc;margin:0 2px 10px}.power-light{background:#87cead;width:5px;height:5px;border-radius:100%;box-shadow:0 0 6px #92dfaf}.engine-pair{display:flex;gap:14px;justify-content:center}.engine-instrument{flex:1;min-width:0;max-width:95px}.engine-name{font-size:8px;text-align:center;letter-spacing:1.2px;color:#c7d9d7;margin-bottom:6px}.rpm-screen{display:grid;grid-template-columns:1fr 20px;align-items:center;background:#020f14;border:1px solid #49716c;box-shadow:inset 0 2px 7px #000a;border-radius:5px;padding:6px 7px 4px}.rpm-screen strong{font:25px/1.1 'Consolas','Courier New',monospace;color:#ff4b43;letter-spacing:-1px;text-shadow:0 0 8px #ff2e3060;font-variant-numeric:tabular-nums}.rpm-screen>span{grid-column:1;grid-row:2;font-size:6px;color:#75a290;letter-spacing:2px}.rpm-screen b{grid-column:2;grid-row:1/3;font:13px 'Consolas',monospace;text-align:center;color:#d2c99d}.rpm-screen b[data-gear=A]{color:#8ee9bf}.rpm-screen b[data-gear=R]{color:#f0b398}
.lever-box{display:flex;justify-content:center;position:relative;margin-top:9px}.lever-legends{display:flex;flex-direction:column;justify-content:space-between;position:absolute;left:0;top:11px;bottom:10px;width:14px;font:9px 'Consolas',monospace;color:#809a9b;pointer-events:none}.lever-legends span:nth-child(2){position:absolute;top:57.14%;left:0;transform:translateY(-50%);color:#dccba2}.throttle{--lever-position:.57142857;width:62px;height:140px;position:relative;cursor:ns-resize;touch-action:none;user-select:none;outline-offset:1px;border-radius:8px}.throttle-track{position:absolute;top:12px;bottom:12px;width:11px;left:calc(50% - 5.5px);border-radius:8px;background:#020f16;box-shadow:inset 2px 1px 4px #000,inset -1px 0 #63818a60}.neutral-detent{position:absolute;top:calc(12px + (100% - 24px)*.57142857);left:5px;right:5px;height:1px;background:#c3b99299}.lever-ticks{position:absolute;top:12px;bottom:12px;right:4px;width:6px;background:repeating-linear-gradient(to bottom,#84a29f55 0 1px,transparent 1px 14.5px)}.throttle-handle{position:absolute;top:calc(12px + (100% - 24px)*var(--lever-position));left:3px;right:3px;height:24px;transform:translateY(-50%);background:linear-gradient(#b2c4c6,#6a858e 22%,#213e4b 25%,#294651 65%,#112b39 70%);border:1px solid #819ba8;border-radius:6px;box-shadow:0 4px 6px #0008,inset 0 1px #d4e5dfbb;display:flex;align-items:center;justify-content:center;gap:5px;pointer-events:none}.throttle-handle span{width:20px;height:3px;background:#c4d7d4;border-radius:2px;box-shadow:0 1px 0 #041d27}.throttle-handle i{height:12px;width:1px;background:#98aeab66}.throttle.dragging .throttle-handle{border-color:#d8e9c1;box-shadow:0 0 10px #abddc650,0 5px 9px #000b}.throttle[data-gear=R] .throttle-handle span{background:#e5b39a}.throttle[data-gear=A] .throttle-handle span{background:#a2ebbf}
.engine-console #neutral{width:100%;font-size:8px;letter-spacing:1.3px;border:1px solid #607e8155;background:#28444b;color:#d1e3df;padding:8px;min-height:30px;margin-top:7px}.engine-console #rpm-note{font-size:7px;display:block;text-align:center;color:#99b4b0;margin-top:7px}.engine-console.single-engine{width:133px}.engine-console.single-engine .engine-instrument{max-width:100%}
.cockpit-view .scene-controls{bottom:23px;left:50%;transform:translateX(-50%);gap:5px;z-index:4}.cockpit-view .scene-controls button{font-size:11px;padding:10px;min-height:37px;background:#092b34d9;border:1px solid #90b5b340;backdrop-filter:blur(8px)}.cockpit-view .scene-controls #sound{font-size:0;width:37px}.cockpit-view #sound:after{content:'♫';font-size:17px}.cockpit-view #sound[aria-pressed=true]:after{color:#9fe4bb}
.cockpit-view .scene-bottom{position:absolute;bottom:79px;left:340px;right:280px;display:flex;flex-direction:column;text-align:center;align-items:center;padding:0;background:none;pointer-events:none;font-size:11px;gap:8px;color:#d5eae1;text-shadow:0 1px 9px #001c25}.cockpit-view .scene-bottom #contacts{font-size:9px;color:#afd3c1}.cockpit-view .ripa-instrument{position:absolute;top:256px;left:26px;max-width:330px;z-index:4}.ripa-instrument .primary{padding:13px 19px;box-shadow:0 5px 20px #071c3299;background:#286251ea;backdrop-filter:blur(8px);font-size:13px;margin:0}.ripa-instrument .visible-lights{margin-top:7px}.ripa-instrument .light{background:#0a2d3abc;color:#d7e7df;font-size:9px;border:1px solid #7c9d9f35}
.cockpit-view .toast{top:58px;bottom:auto;font-size:12px;max-width:min(88vw,470px);background:#102e38e8;backdrop-filter:blur(10px);transform:translate(-50%,-10px)}.cockpit-view .toast.visible{transform:translate(-50%,0)}.cockpit-view .pause-screen{z-index:9;background:#09293677;backdrop-filter:blur(2px)}
.cockpit-view dialog{background:#102d37e8;color:#e2ece5;border:1px solid #aacabd55;box-shadow:0 18px 65px #00101b66;backdrop-filter:blur(9px)}.cockpit-view dialog::backdrop{background:#071c2826;backdrop-filter:blur(1px)}.cockpit-view dialog p,.cockpit-view dialog .dialog-note{color:#c2d8cd}.cockpit-view dialog .eyebrow{color:#94c2b3}.cockpit-view dialog .close{background:#d5e5de22;color:#dae7df}.cockpit-view dialog .tip{background:#709b7840;color:#e1eddf}.cockpit-view dialog .outline{color:#d6e7df;border-color:#98baaa66}.cockpit-view dialog .outline:hover{background:#38605c}.cockpit-view dialog .mode-tabs{background:#b7d0bd30;color:#eff7ec}.cockpit-view dialog .mode-tabs .selected{background:#d5e9d4;color:#1e4740}.cockpit-view .result-stats>div{background:#cce1d022}.cockpit-view .result-stats span,.cockpit-view .result-errors{color:#c4dfd0}.cockpit-view .ranking-table th{color:#b4cbbc}.cockpit-view .ranking-table tr.me{background:#8bd2a73b}.cockpit-view .mission-card{color:#1c403c}.cockpit-view .mission-card.campaign-card{color:#e6f1e9}.cockpit-view .boat-option{color:#1c403c}
.cockpit-view dialog.live-panel{position:fixed;top:68px;right:20px;left:auto;bottom:auto;margin:0;padding:18px;max-width:365px;width:calc(100% - 32px);max-height:calc(100dvh - 410px);min-height:160px;border-radius:12px;background:#082936ca;z-index:15;backdrop-filter:blur(4px)}.cockpit-view dialog.live-panel h2{font-size:23px;margin-bottom:12px}.cockpit-view dialog.live-panel .mission-panel{padding:0;margin:0;background:none;border:0;display:block;border-radius:0;color:#dceade}.cockpit-view .live-panel .mission-panel>h1,.cockpit-view .live-panel .mission-panel>.eyebrow,.cockpit-view .live-panel .mission-panel>.intro{display:none}.cockpit-view .live-panel .mission-panel .player-level{padding:10px 0}.cockpit-view .live-panel .section-label,.cockpit-view .live-panel .check,.cockpit-view .live-panel .progress-line,.cockpit-view .live-panel .player-level span{color:#b9d0c7}.cockpit-view .live-panel .check.met{color:#9ce9b3}.cockpit-view .live-panel .choose{background:#c8dfd02b;color:#e0eee2;border-color:#b3cec54d;margin-bottom:15px}.cockpit-view .live-panel .choose small{color:#9ab8af}.cockpit-view .live-panel .environment{margin-top:15px;padding-top:14px;display:block}.cockpit-view .live-panel .direction{color:#b2dfd1}.cockpit-view .live-panel .env-button{background:#759e9433;color:#d9ece4;border-color:#b2d0c05a}.cockpit-view .live-panel .model-note button{color:#bbdcc7}.cockpit-view #guide-dialog.live-panel{right:auto;left:20px;max-height:calc(100dvh - 280px)}.cockpit-view .live-panel ol{margin:12px 0}.cockpit-view .live-panel ol li{font-size:12px;padding-top:5px;padding-bottom:5px}.cockpit-view #anchor-dialog{max-width:275px}.cockpit-view #anchor-label{font:26px 'Consolas',monospace;color:#c8efdb}.cockpit-view #anchor-dialog .outline{margin-top:9px}.cockpit-view .live-panel .primary{margin-top:12px}
@media(min-width:1500px){.engine-console{right:34px;bottom:22px;width:248px;padding:16px}.throttle{height:160px;width:68px}.rpm-screen strong{font-size:29px}.wheel-console{width:310px}.wheel{width:310px;height:310px}.wheel-crop{height:165px}.mission-strip>strong{font-size:26px}}
@media(max-width:900px){.cockpit-view .topbar{padding:0 16px}.bridge-toolbar button{font-size:11px;padding:8px 11px}.mission-strip{left:18px;top:72px;width:45vw}.mission-strip>strong{font-size:19px}.cockpit-view .telemetry{left:18px;top:161px;gap:17px;padding:10px 12px}.cockpit-view .telemetry strong{font-size:23px}.cockpit-view .scene-top{right:16px;top:72px}.cockpit-view #minimap{right:16px;top:122px;width:107px;height:88px}.weather-chip{top:222px;right:16px;max-width:150px;line-height:1.5;font-size:7px}.wheel-console{left:2%;width:220px}.wheel{width:220px;height:220px}.wheel-crop{height:119px}.rudder-display{gap:6px;margin-bottom:9px;padding:7px 9px}.rudder-display strong{font-size:21px;min-width:39px}.rudder-display b{font-size:7px;min-width:40px}.rudder-display>span{display:none}.engine-console{right:16px;width:191px;bottom:12px;padding:10px 11px}.engine-pair{gap:10px}.rpm-screen{padding:5px}.rpm-screen strong{font-size:22px}.throttle{height:125px;width:56px}.engine-console-title{font-size:7px}.engine-name{font-size:7px}.lever-legends{left:-3px}.engine-console #rpm-note{font-size:6px}.cockpit-view .scene-controls{bottom:16px;gap:4px;left:49%}.cockpit-view .scene-controls button{padding:8px;min-height:34px}.cockpit-view .scene-controls #sound{display:none}.cockpit-view .scene-bottom{left:240px;right:225px;bottom:63px;font-size:10px}.cockpit-view .scene-bottom #hint{display:none}.cockpit-view .ripa-instrument{left:18px;top:242px;max-width:270px}.cockpit-view .ripa-instrument .primary{font-size:12px;padding:12px 16px}}
@media(max-width:600px){.cockpit-view .topbar{height:50px;padding:0 9px;gap:7px}.cockpit-view .brand{gap:4px}.cockpit-view .brand>span:last-child{display:none}.bridge-toolbar{gap:4px;flex:1;justify-content:flex-end}.bridge-toolbar button{font-size:10px;padding:8px 9px;min-height:34px}.bridge-toolbar #fullscreen{min-width:32px;font-size:22px;padding:8px}.mission-strip{left:12px;top:63px;width:calc(100% - 24px)}.mission-strip>strong{font-size:18px;margin:3px 0 5px}.mission-strip>span:last-of-type{max-width:92%;font-size:10px}.mission-strip .instrument-eyebrow{font-size:6px}.mission-strip progress{width:105px;margin-top:6px}.cockpit-view .scene-top{left:12px;right:auto;top:144px}.cockpit-view .views button{font-size:10px;min-height:31px;padding:7px 10px}.cockpit-view .telemetry{top:192px;left:12px;padding:9px 10px;gap:15px;max-width:calc(100% - 118px)}.cockpit-view .telemetry strong{font-size:19px}.cockpit-view .telemetry span{font-size:6px;letter-spacing:.4px}.cockpit-view .points-hud{display:none}.cockpit-view #minimap{top:143px;right:12px;width:85px;height:70px}.weather-chip{top:222px;right:12px;max-width:90px;font-size:6px;padding:6px;line-height:1.6;letter-spacing:0}.wheel-console{left:0;width:172px;bottom:0}.wheel{width:172px;height:172px}.wheel-crop{height:95px}.rudder-display{gap:4px;margin:0 auto 9px;padding:6px 7px}.rudder-display strong{font-size:19px;min-width:34px}.rudder-display b{font-size:6px;min-width:35px}.rudder-display button{font-size:8px;padding:5px;min-height:28px}.engine-console{width:172px;right:9px;bottom:9px;border-radius:13px 13px 7px 7px;padding:9px}.engine-console-title{margin-bottom:8px;font-size:6px}.engine-pair{gap:8px}.engine-name{font-size:6px}.rpm-screen strong{font-size:20px}.rpm-screen{grid-template-columns:1fr 15px;padding:5px 4px}.rpm-screen b{font-size:11px}.throttle{height:114px;width:51px}.throttle-handle{height:23px;left:2px;right:2px}.lever-legends{left:-3px;font-size:8px}.engine-console #neutral{font-size:7px;margin-top:5px;min-height:28px}.engine-console #rpm-note{font-size:6px;letter-spacing:-.1px;margin-top:5px}.engine-console.single-engine{width:105px}.cockpit-view .scene-controls{left:12px;transform:none;bottom:174px;display:grid;grid-template-columns:repeat(3,34px);gap:5px}.cockpit-view .scene-controls button{padding:6px;min-height:32px;font-size:11px}.cockpit-view #pause{grid-column:1/-1;font-size:11px}.cockpit-view #anchor-open{position:absolute;left:78px;top:37px}.cockpit-view #zoom-out{grid-column:2}.cockpit-view #zoom-in{grid-column:1;grid-row:3}.cockpit-view #reset{grid-column:1}.cockpit-view .scene-bottom{left:12px;right:auto;bottom:284px;font-size:8px}.cockpit-view .scene-bottom #contacts{font-size:8px}.cockpit-view .ripa-instrument{left:12px;top:265px;max-width:245px}.ripa-instrument .visible-lights{max-width:245px}.ripa-instrument .light{font-size:7px;padding:5px 6px}.cockpit-view .ripa-instrument .primary{font-size:11px;padding:10px 12px}.cockpit-view dialog.live-panel,.cockpit-view #guide-dialog.live-panel{left:auto;right:9px;top:58px;width:calc(100% - 18px);max-height:calc(100dvh - 350px);padding:15px}.cockpit-view .toast{font-size:11px;max-width:calc(100% - 28px);padding:10px 13px;top:52px}}
@media(max-height:520px) and (min-width:601px){.cockpit-view .topbar{height:44px}.mission-strip{top:53px}.mission-strip>strong{font-size:16px}.mission-strip .instrument-eyebrow{display:none}.mission-strip progress{display:none}.cockpit-view .scene-top{top:53px}.cockpit-view .telemetry{top:113px}.cockpit-view #minimap{top:105px;width:91px;height:75px}.weather-chip{top:190px}.wheel-console{width:190px}.wheel{width:190px;height:190px}.wheel-crop{height:100px}.engine-console{width:185px;padding:8px;right:12px;bottom:8px}.throttle{height:86px}.engine-console-title{display:none}.engine-console #rpm-note{display:none}.engine-console #neutral{min-height:25px;padding:6px}.cockpit-view .scene-controls{bottom:12px}.cockpit-view .ripa-instrument{top:181px;max-width:260px}.cockpit-view .scene-bottom{bottom:55px}.cockpit-view dialog.live-panel,.cockpit-view #guide-dialog.live-panel{top:49px;max-height:calc(100dvh - 190px);min-height:120px}.rudder-display{margin-bottom:5px}}

/* Official wordmark on desktop; compact symbol where space is limited. */
.cockpit-view .brand{gap:14px;flex-shrink:0}
.cockpit-view .brand-logo{display:block;width:105px;height:auto;max-height:43px;object-fit:contain}
.cockpit-view .brand-symbol{display:none;width:32px;height:32px;filter:brightness(0) invert(1)}
.cockpit-view .brand-caption{font-size:8px;letter-spacing:1.5px;margin:0;color:#b8d0ce}
@media(max-width:600px){.cockpit-view .brand-logo,.cockpit-view .brand-caption{display:none}.cockpit-view .brand-symbol{display:block}}
@media(max-height:520px) and (min-width:601px){.cockpit-view .brand-logo{width:83px;max-height:34px}}

/* Free head movement remains separate from all boat controls. */
.bridge-active #scene{touch-action:none;cursor:grab}.bridge-active #scene.looking{cursor:grabbing}
.cockpit-view .scene-top{display:block}
.bridge-look{margin-top:6px;padding:5px;background:#082b38c2;border:1px solid #96bebb36;border-radius:8px;backdrop-filter:blur(8px)}
.bridge-look[hidden]{display:none}.look-buttons{display:flex;gap:3px}.look-buttons button{min-width:44px;min-height:36px;flex:1;padding:6px 8px;background:#35545bb0;color:#e4f2ea;font-size:11px}.look-buttons button:hover{background:#527b79}.look-buttons button:active{background:#789f93}
.bridge-look>span,.bridge-look>small{display:block;text-align:center;font-size:9px;color:#d2e6de;padding-top:4px}.bridge-look>small{font-size:8px;color:#acc8c3}
.cockpit-view.bridge-active #minimap{top:216px}.cockpit-view.bridge-active .weather-chip{top:336px}
@media(max-width:900px){.cockpit-view.bridge-active #minimap{top:212px}.cockpit-view.bridge-active .weather-chip{top:306px}}
@media(max-width:600px){.look-buttons button{min-width:44px;min-height:34px;padding:5px;font-size:10px}.bridge-look>small{display:none}.cockpit-view.bridge-active #minimap{top:143px}.cockpit-view.bridge-active .weather-chip{top:222px}.cockpit-view.bridge-active .telemetry{top:260px}.cockpit-view.bridge-active .ripa-instrument{top:329px}}
@media(max-height:520px) and (min-width:601px){.bridge-look>small{display:none}.cockpit-view.bridge-active #minimap{top:53px;right:244px}.cockpit-view.bridge-active .weather-chip{top:134px;right:244px}}

/* Always offer an explicit motor-audio switch, including on mobile. */
.cockpit-view .scene-controls #sound{display:block;font-size:11px;width:auto;white-space:nowrap}
.cockpit-view #sound:after{content:none}
.cockpit-view .scene-controls #sound[aria-pressed=true]{background:#2b6158;border-color:#87bca2;color:#dfffe8}
@media(max-width:600px){.cockpit-view .scene-controls #sound{grid-row:3;grid-column:2 / span 2;font-size:9px;width:73px;padding:5px}}
.bridge-look{pointer-events:auto}

/* Explicit foregrounds on light answer cards and navigation-light labels. */
.cockpit-view .ripa-options button{color:#173b42;background:#e8f0e8;font-size:14px;font-weight:600;line-height:1.45;min-height:52px;border:1px solid #b4ccbd;text-shadow:none}
.cockpit-view .ripa-options button:hover{color:#0a3038;background:#cbe2d1}
.cockpit-view .ripa-options button:active{color:#092a30;background:#b6d4bf}
.cockpit-view .ripa-options button:focus-visible{outline:3px solid #84c9e3;outline-offset:3px}
.cockpit-view #ripa-dialog .light{color:#173b42;background:#e8f0e8;font-size:12px;font-weight:600;padding:9px 11px;line-height:1.4}
.cockpit-view #ripa-dialog a{color:#c5e5f2;text-decoration:underline;text-underline-offset:3px}
@media(max-width:600px){.cockpit-view .ripa-options button{font-size:13px;padding:12px}.cockpit-view #ripa-dialog .light{font-size:11px}}

/* Learning and rope controls use the same unobstructed cockpit. */
.learn-banner[hidden],.mooring-panel[hidden],#demo-result-actions[hidden]{display:none!important}
.learn-banner{position:absolute;top:255px;left:26px;width:min(520px,calc(100% - 310px));padding:14px 16px;border:1px solid #bcda995c;border-radius:12px;background:#102d37e8;color:#f0f5e4;z-index:5;backdrop-filter:blur(6px)}
.learn-banner strong{font-size:10px;letter-spacing:1.2px;color:#c5e9a4}.learn-banner span{display:block;font-size:13px;line-height:1.5;margin:6px 0 10px}.demo-buttons{display:flex;gap:8px;flex-wrap:wrap}.demo-buttons button{min-height:40px;background:#d4e9cb;color:#153c39;font-size:12px;padding:9px 12px}.demo-buttons #demo-speed{background:#33585e;color:#f1f6ed}
.mooring-panel{position:absolute;left:26px;top:255px;display:flex;flex-direction:column;gap:7px;max-width:260px;padding:13px;border-radius:12px;background:#17363dec;color:#edf5e8;border:1px solid #ffd18570;z-index:5}.mooring-panel strong{font-size:13px}.mooring-panel span{font-size:11px;color:#e6d5ab}.mooring-panel button{min-height:42px;color:#1a3e3e;background:#f2ce89;padding:9px 20px;font-weight:700}.mooring-panel button:disabled{opacity:.6}.learning .mooring-panel{left:auto;right:25px;top:290px}.learning .ripa-instrument{top:440px}.learning .scene-bottom #hint{display:none}.learning .wheel,.learning .throttle{cursor:default}.learning #neutral,.learning #center{opacity:.55}
.mission-search{margin:16px 0 22px;display:flex;flex-wrap:wrap;gap:8px;align-items:center}.mission-search label{font-size:13px;color:#e7f0e8}.mission-search input{flex:1;min-width:170px;background:#f0f5ee;color:#16393f;padding:12px 14px;border:1px solid #77968e;border-radius:8px;font:inherit}.mission-search span{flex-basis:100%;font-size:12px;color:#b8d6c9}
.practice-card{display:flex;flex-direction:column;background:#e9f0e6;border:1px solid #b5cabe;border-radius:13px;padding:18px;color:#173d3c;min-height:200px}.practice-level{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:#3c6960}.practice-card h3{color:#173d3c;font-size:19px;line-height:1.25;margin:10px 0}.cockpit-view dialog .practice-card p{color:#46695f;font-size:12px;margin:0 0 18px}.practice-actions{display:flex;gap:8px;margin-top:auto;flex-wrap:wrap}.practice-actions button{flex:1;min-height:44px;padding:10px 12px;font-size:13px;border-radius:7px;white-space:nowrap}.practice-actions .primary{background:#183f45;color:#f2f8ee;margin:0}.practice-actions .learn-choice{background:#c5ddb6;color:#173d3c;border:1px solid #9cba91}.practice-actions button:hover{filter:brightness(.92)}.practice-actions button:focus-visible{outline:3px solid #0a7884;outline-offset:3px}.cockpit-view .mode-tabs button{color:#f0f5ed}.cockpit-view .mode-tabs button.selected{color:#183f3d}
@media(max-width:900px){.learn-banner{left:18px;top:242px;width:calc(100% - 246px);padding:11px}.learning .mooring-panel{right:16px;top:257px;max-width:175px}.learning .ripa-instrument{top:445px}}
@media(max-width:600px){.learn-banner{left:12px;top:250px;width:calc(100% - 24px);padding:10px 12px}.learn-banner span{font-size:12px;margin:5px 0 8px}.demo-buttons button{font-size:11px;min-height:38px;padding:8px 11px}.learning .ripa-instrument{top:410px}.learning .mooring-panel{left:12px;right:auto;top:410px;padding:8px 11px;max-width:calc(100% - 24px);gap:4px}.learning .mooring-panel strong{font-size:11px}.learning .mooring-panel span{font-size:10px}.learning .mooring-panel button{display:none}.mooring-panel{top:255px;left:12px;padding:10px}.bridge-active .mooring-panel{top:328px}.learning.bridge-active .learn-banner{top:323px}.learning.bridge-active .mooring-panel,.learning.bridge-active .ripa-instrument{top:478px}.practice-card{padding:15px;min-height:175px}.practice-card h3{font-size:18px}.mission-search{display:block}.mission-search input{width:100%;margin:7px 0}.mission-search span{display:block}.cockpit-view .mode-tabs button{font-size:12px;padding:10px}}
@media(max-height:600px) and (min-width:601px){.learn-banner{top:175px;left:18px;width:calc(100% - 242px);max-width:510px;padding:9px 12px}.learn-banner span{font-size:11px;line-height:1.35;margin:5px 0}.demo-buttons button{min-height:32px;padding:6px 10px;font-size:11px}.learning .ripa-instrument{top:300px}.learning .mooring-panel{top:140px;right:12px;max-width:182px;padding:8px}.learning .mooring-panel button{display:none}.mooring-panel{top:173px;left:18px}}
/* Longer travel improves the usable low-speed range without moving the helm. */
@media(min-width:901px) and (min-height:650px){.throttle{height:192px}.engine-console{bottom:17px}}
@media(min-width:1500px) and (min-height:750px){.throttle{height:220px}}
@media(max-width:900px) and (min-width:601px) and (min-height:650px){.throttle{height:158px}}
@media(max-width:600px) and (min-height:740px){.throttle{height:145px}}
.learning .mooring-panel{position:static!important;max-width:none!important;width:100%;padding:7px 0 0!important;background:transparent;border:0;border-top:1px solid #8ba99644;margin-top:9px;flex-direction:row;align-items:center;gap:8px;flex-wrap:wrap;box-sizing:border-box}.learning .mooring-panel button{display:none}.learning .mooring-panel strong{font-size:11px}.learning .mooring-panel span{font-size:11px}
.creative-credit{display:flex;flex-direction:column;justify-content:center;gap:2px;text-decoration:none;color:#e5f2e9;margin-right:auto;padding:5px 10px;border-left:1px solid #61808766}.creative-credit>span{font-size:7px;letter-spacing:1px;color:#a8c6bd}.creative-credit strong{font-size:16px;font-weight:750;letter-spacing:-.6px;color:#f0f7ee}.creative-credit strong span{color:#b9e8ab}.creative-credit:hover strong{color:#c5f1d2}.creative-credit:focus-visible{outline:2px solid #b9e8ab;outline-offset:3px}
@media(max-width:900px){.brand-caption{display:none!important}.creative-credit strong{font-size:13px}}
@media(max-width:600px){.creative-credit{padding:4px 5px;margin-right:0;border:0}.creative-credit>span{display:none}.creative-credit strong{font-size:11px;letter-spacing:-.4px}.cockpit-view .topbar{gap:3px}.bridge-toolbar{gap:3px}.bridge-toolbar button{padding:7px 6px;font-size:9px}.bridge-toolbar #fullscreen{min-width:25px;padding:3px}.creative-credit strong span{color:#b9e8ab}}
/* Keep the central view clear while watching a demonstration on a phone. */
@media(max-width:600px){
.learning .mission-strip{top:60px}.learning .mission-strip .instrument-eyebrow,.learning .mission-strip #active-step,.learning .mission-strip progress{display:none}.learning .mission-strip>strong{font-size:16px;margin:0}
.learning .learn-banner{top:87px}.learning .learn-banner>div:first-child>strong{display:none}.learning .learn-banner span{margin-top:0}.learning .scene-top{top:238px}.learning .telemetry{top:282px}.learning #minimap{top:236px}.learning .weather-chip{top:310px}.learning .ripa-instrument{top:344px}
.learning.bridge-active .learn-banner{top:87px}.learning.bridge-active .scene-top{top:238px}.learning.bridge-active .telemetry{top:352px}.learning.bridge-active #minimap{top:236px}.learning.bridge-active .weather-chip{top:310px}.learning.bridge-active .ripa-instrument{top:402px}
}
/* More sea, less console: phone controls stay readable over the scenery. */
@media(max-width:600px){
.cockpit-view .engine-console{background:linear-gradient(140deg,#193c485c,#071e2966);backdrop-filter:none;border-color:#c4dedb44;box-shadow:0 3px 12px #061b252b,inset 0 1px 1px #daeee422}
.cockpit-view .wheel-console{filter:drop-shadow(0 2px 4px #00182333)}.cockpit-view .wheel-art{opacity:.68}.cockpit-view .rudder-display{background:#082a3459;backdrop-filter:none;border-color:#bfdfcf44;box-shadow:none}.cockpit-view .rudder-display button{background:#214b545e}
.cockpit-view .rpm-screen{background:#030c13b3;border-color:#a5c0be44;box-shadow:inset 0 1px 4px #0005}.cockpit-view .rpm-screen strong{color:#ff564b;text-shadow:0 0 4px #ff372477}
.cockpit-view .engine-console #neutral{background:#12374073;border-color:#a7c9bd55;color:#f0fff5}.cockpit-view .engine-name,.cockpit-view .engine-console-title,.cockpit-view #rpm-note,.cockpit-view .rudder-display strong,.cockpit-view .rudder-display b{color:#edf8ee;text-shadow:0 1px 3px #001824}
.cockpit-view .scene-controls button{background:#082c3666;backdrop-filter:none;border-color:#c5e4d544;color:#f0fff5;text-shadow:0 1px 2px #052333}.cockpit-view .telemetry{background:#07273173;backdrop-filter:none}.cockpit-view .telemetry strong,.cockpit-view .telemetry span{text-shadow:0 1px 3px #001824}
.cockpit-view .views{background:#0b303c66;backdrop-filter:none}.cockpit-view .views button{background:transparent;color:#f1fff6;text-shadow:0 1px 2px #072630}.cockpit-view .views button.selected{background:#dceddc99;color:#16393f;text-shadow:none}
.cockpit-view .weather-chip{background:#072e3959}.cockpit-view .bridge-look{background:#082b3866;backdrop-filter:none}.cockpit-view .look-buttons button{background:#23474c73;color:#f2fff7}
.cockpit-view .learn-banner{background:#0b2d37b8;backdrop-filter:none}.cockpit-view .mooring-panel{background:#12343eb3;backdrop-filter:none}.cockpit-view .ripa-instrument .primary{background:#214f44b3;backdrop-filter:none}.cockpit-view .ripa-instrument .light{background:#0a2d3a88}
.cockpit-view .engine-console:focus-within,.cockpit-view .rudder-display:focus-within{border-color:#dcefd588}
}

/* Abort is a visible action, replacing the unlabeled restart icon. */
.cockpit-view .scene-controls #abort{color:#fff2e9;background:#73382f99;border-color:#e9b9a06b;white-space:nowrap;min-height:40px}
.cockpit-view .scene-controls #abort:hover{background:#945344cc}
#abort-dialog{max-width:460px}#abort-dialog h2{font-size:30px}#abort-dialog p{line-height:1.6}
.abort-actions{display:grid;gap:12px;margin-top:24px}.abort-actions button{min-height:48px;font-size:15px;width:100%}
@media(max-width:600px){
.cockpit-view .scene-controls #pause{grid-row:1;grid-column:1/-1}
.cockpit-view .scene-controls #abort{grid-row:2;grid-column:1/-1;font-size:12px}
.cockpit-view .scene-controls #zoom-in{grid-row:3;grid-column:1}
.cockpit-view .scene-controls #zoom-out{grid-row:3;grid-column:2}
.cockpit-view .scene-controls #anchor-open{position:static;grid-row:3;grid-column:3}
.cockpit-view .scene-controls #sound{position:static;grid-row:4;grid-column:1/-1}
.cockpit-view .scene-bottom{bottom:353px}
#abort-dialog{padding:24px;max-width:calc(100vw - 24px)}#abort-dialog h2{font-size:26px}
}
