/* Photographic bridge plate with registered live surfaces. */
@font-face{font-family:'Nova Orbitron';src:url('assets/nova-orbitron.ttf') format('truetype');font-style:normal;font-weight:400 900;font-display:swap}
.hybrid-bridge{background:#03030a}
.hybrid-bridge #gl{cursor:default}
.hybrid-bridge .bridge-top{top:18px;opacity:.68}
.hybrid-bridge .bridge-bottom{bottom:18px}
.hybrid-bridge .console-hit{overflow:hidden;border-radius:2px}
.hybrid-bridge .console-hit .screen-name,.hybrid-bridge .console-hit.deck .screen-name{font:400 40px/1.08 Arial,Helvetica,sans-serif;letter-spacing:1.4px;left:16px;right:16px;top:13px;color:#e5f8ff;text-shadow:0 0 7px color-mix(in srgb,var(--accent) 65%,transparent)}
.hybrid-bridge .console-hit.deck[data-screen="jump"] .screen-name{font-size:34px;top:15px}
.hybrid-bridge .console-hit.deck[data-screen="council"] .screen-name{font-size:31px;top:9px}
.hybrid-bridge .console-hit .screen-sub{top:61px;font-size:15px;letter-spacing:3px;opacity:.84}
.hybrid-bridge .console-hit .screen-action{opacity:0;bottom:10px;font-size:54px;line-height:1.1;letter-spacing:2px;white-space:normal;overflow-wrap:anywhere;background:#03101df2;padding:12px 4px;border-top:1px solid color-mix(in srgb,var(--accent) 45%,transparent);transition:opacity .25s}
.hybrid-bridge .console-hit:hover .screen-action,.hybrid-bridge .console-hit:focus-visible .screen-action{opacity:1}
.hybrid-bridge .console-hit.floating[data-float-side] .screen-name{font:400 43px/1.15 Arial,sans-serif;top:23px;left:25px;right:25px;letter-spacing:2px;height:auto;display:block;color:#f5e8c8}
.hybrid-bridge .console-hit.floating[data-float-side] .screen-sub{top:85px;left:25px;right:25px;font-size:22px;letter-spacing:4px;color:#d5ecf1}
.hybrid-bridge .console-hit.floating .screen-action{display:block}
.hybrid-bridge .console-hit:hover::before,.hybrid-bridge .console-hit:focus-visible::before{border-color:color-mix(in srgb,var(--accent) 50%,transparent);background:color-mix(in srgb,var(--accent) 3%,transparent);box-shadow:inset 0 0 28px color-mix(in srgb,var(--accent) 13%,transparent)}
.hybrid-bridge #nova-identity{height:160px;will-change:transform;backface-visibility:hidden;isolation:isolate;filter:none}
.hybrid-bridge #nova-identity .identity-orbit,.hybrid-bridge #nova-identity::before{display:none}
.hybrid-bridge #nova-identity h1{font:500 68px/1.3 'Nova Orbitron',Arial,sans-serif;letter-spacing:10px;margin:5px -30px 21px;white-space:nowrap;color:#ffe6a8;background:none;-webkit-text-fill-color:#ffe6a8;-webkit-text-stroke:.35px #fff6d3;animation:none;text-shadow:0 2px 3px #160c17,0 0 5px #fff0bb80,0 0 19px #eba74099,0 0 42px #c2834070,0 0 78px #9b54d977}
.hybrid-bridge #nova-identity::after{content:'';position:absolute;z-index:-1;inset:-38px -70px -18px;pointer-events:none;background:radial-gradient(ellipse at 50% 40%,#ce8c3026,transparent 62%),radial-gradient(ellipse at 50% 75%,#8242ba24,transparent 68%)}
.hybrid-bridge #nova-identity h1::after{content:'';position:absolute;left:9%;right:9%;top:94px;height:1px;background:linear-gradient(90deg,transparent,#f7c46b70,transparent);box-shadow:0 0 12px #f5c37599}
.hybrid-bridge #nova-identity p{font:400 17px/1.4 Arial,sans-serif;letter-spacing:7px;color:#ffe6b0;margin:0 -40px;white-space:nowrap}
.hybrid-bridge .explore-hint{font-size:8px;letter-spacing:1.4px;background:#060b12a0;border:1px solid #c4b48025;padding:9px 13px}
.hybrid-bridge .system-state{opacity:.7}
.hybrid-bridge.mobile-bridge #gl{opacity:.7;height:100vh;height:100lvh;width:100%;pointer-events:none}
.hybrid-bridge.mobile-bridge{overflow-x:hidden}
.hybrid-bridge.mobile-bridge #stack{background:linear-gradient(#02071208,#0207124d 380px,#020712c9);padding-top:max(104px,calc(env(safe-area-inset-top) + 84px));padding-bottom:max(110px,calc(env(safe-area-inset-bottom) + 90px))}
.hybrid-bridge.mobile-bridge .hero{padding-bottom:30px}
.hybrid-bridge.mobile-bridge .hero .lore{background:#081121bf;border-radius:4px}
.hybrid-bridge.mobile-bridge .bridge-top{top:max(18px,env(safe-area-inset-top));left:max(21px,env(safe-area-inset-left));right:max(21px,env(safe-area-inset-right))}
.hybrid-bridge.mobile-bridge .bridge-bottom{bottom:max(18px,env(safe-area-inset-bottom));right:max(18px,env(safe-area-inset-right))}
.hybrid-bridge.mobile-bridge .bridge-tools{padding:5px;border:1px solid #cfb77933;border-radius:30px;background:#060b12e8}
@media(min-width:700px){.hybrid-bridge.mobile-bridge #stack{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-width:900px;gap:18px;padding-left:28px;padding-right:28px}.hybrid-bridge.mobile-bridge .hero{grid-column:1/-1;max-width:600px;width:100%;margin:0 auto;min-height:310px}.hybrid-bridge.mobile-bridge .card{height:100%}}
@media(max-height:520px) and (orientation:landscape){.hybrid-bridge.mobile-bridge #stack{padding-top:92px}.hybrid-bridge.mobile-bridge .hero{min-height:0;padding-bottom:18px}.hybrid-bridge.mobile-bridge .hero::before{width:60px;height:72px}.hybrid-bridge.mobile-bridge .hero .lore{max-width:520px;margin-top:13px}}
.hybrid-bridge.graphics-fallback #gl{display:none}
.hybrid-bridge .screen-name,.hybrid-bridge .screen-sub,.hybrid-bridge .screen-action{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hybrid-bridge.reading #nova-identity h1{animation-play-state:paused}

.hybrid-bridge .hero h1{font:500 clamp(20px,5.8vw,29px)/1.4 'Nova Orbitron',Arial,sans-serif;letter-spacing:2px}
.hybrid-bridge .console-hit:disabled{visibility:hidden;pointer-events:none}
.hybrid-bridge.editing .console-hit[data-enabled="false"]{outline:2px dashed #eac987;outline-offset:-4px;background:#080d18c9}
.hybrid-bridge.editing .console-hit[data-enabled="false"] .screen-action{opacity:1}
.card.disabled-card{border-style:dashed;opacity:.7}
.screen-availability{padding:14px 16px;margin:12px 0 20px;border:1px solid #7fa9bb55;background:#8bbacf0a;border-radius:4px}
.screen-availability label{display:flex;align-items:center;gap:10px;font-size:14px;letter-spacing:.5px}
.screen-availability input{width:18px;height:18px;margin:0;accent-color:#deb75c}
