:root{color-scheme:dark;--bg: #050914;--bg-elevated: #0b1020;--surface: #111827;--surface-soft: #0d1426;--border: #263244;--border-bright: #315069;--text: #edf7ff;--muted: #91a0b8;--faint: #65738b;--primary: #38ddf8;--primary-strong: #9eefff;--secondary: #3b82f6;--violet: #8b5cf6;--success: #22c55e;--warning: #f59e0b;--error: #ef4444;--radius: 8px;--shadow: 0 18px 60px rgba(0, 0, 0, .36)}*{box-sizing:border-box}html,body{min-height:100%;margin:0}.session-page .panel-tabs .cards-tab-button{align-items:center;background:#74521933;border-color:#f2c14e9e;color:#f1d78e;display:inline-flex;gap:.22rem;justify-content:center}.session-page .panel-tabs .cards-tab-button.active{background:#a6701c5c;border-color:#f2c14e;box-shadow:0 0 0 2px #f2c14e24;color:#fff3c4}.session-page .cards-tab-count{background:#f2c14e;border-radius:999px;color:#201805;font-size:.62rem;line-height:1;padding:.18rem .3rem}.session-page .planning-title{align-items:center;display:inline-flex;gap:.42rem}.session-page .planning-player-dot{border:1px solid rgba(255,255,255,.58);border-radius:50%;box-shadow:0 0 0 2px #ffffff14;display:inline-block;height:.72rem;width:.72rem}.session-page .shared-card-reader{background:linear-gradient(135deg,#12535c47,#7452192e),#050c18c2;border-color:#66d9c6b8;box-shadow:inset 3px 0 #66d9c6,0 0 0 1px #66d9c614}.session-page .shared-card-reader h3{align-items:center;color:#bff5eb;display:inline-flex;gap:.35rem;text-transform:uppercase}.session-page .shared-card-source{background:#66d9c61f;border:1px solid rgba(102,217,198,.34);border-radius:999px;color:#bff5eb;padding:.16rem .4rem}.session-page .shared-card-reader .card-reader-text{border-color:#66d9c64d}.session-page .deployment-failure-alert{background:linear-gradient(135deg,#75141c7a,#370a12b8);border:2px solid rgba(239,68,68,.9);border-radius:6px;box-shadow:0 0 0 3px #ef44441f;color:#ffd5d8;display:grid;gap:.28rem;padding:.68rem .75rem}.session-page .deployment-failure-alert strong{color:#fff;font-size:.82rem;letter-spacing:.08em;text-transform:uppercase}.session-page .deployment-failure-alert span{font-size:.82rem;font-weight:650}.session-page .deployment-failure-alert small{color:#efb5ba;font-size:.72rem}.session-page .session-error-panel,.session-page .inline-alert.error{background:linear-gradient(135deg,#75141c6b,#370a129e);border:2px solid rgba(239,68,68,.76);border-radius:6px;box-shadow:0 0 0 2px #ef444414;color:#ffd5d8;font-size:.82rem;line-height:1.45;padding:.62rem .7rem}.session-page .session-error-panel{display:grid;gap:.24rem}.session-page .session-error-panel strong{color:#fff;font-size:.76rem;letter-spacing:.08em;text-transform:uppercase}body{background:radial-gradient(circle at 18% 8%,rgba(56,221,248,.08),transparent 28rem),radial-gradient(circle at 76% 18%,rgba(139,92,246,.1),transparent 30rem),linear-gradient(135deg,#050914,#070d1b 52%,#050914);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}body:before{background-image:radial-gradient(circle,rgba(237,247,255,.2) 0 1px,transparent 1px),linear-gradient(rgba(56,221,248,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(56,221,248,.03) 1px,transparent 1px);background-size:80px 80px,48px 48px,48px 48px;content:"";inset:0;opacity:.25;pointer-events:none;position:fixed}button,input{font:inherit}button{align-items:center;border:1px solid transparent;border-radius:var(--radius);cursor:pointer;display:inline-flex;gap:.5rem;justify-content:center;min-height:2.75rem;padding:.7rem 1rem;transition:border-color .16s ease,background .16s ease,color .16s ease,opacity .16s ease}button:disabled{cursor:not-allowed;opacity:.48}input{background:#050914c7;border:1px solid var(--border);border-radius:var(--radius);color:var(--text);min-height:2.75rem;outline:none;padding:.72rem .82rem;width:100%}input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #38ddf821}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus{-webkit-text-fill-color:var(--text);box-shadow:0 0 0 1000px #050914 inset,0 0 0 3px #38ddf81a;caret-color:var(--text);transition:background-color 9999s ease-in-out 0s}.plasma-trace-dialog{max-width:min(92vw,24rem);width:24rem}.repair-dialog{border-color:#e0b85f6b;max-width:min(92vw,27rem);width:27rem}.repair-dialog>p:first-child{color:#dfc481;font-family:Courier New,ui-monospace,monospace;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.repair-formula{background:#e0b85f1a;border:1px solid rgba(224,184,95,.28);border-radius:6px;color:#f1dfaa;font-family:Courier New,ui-monospace,monospace;font-weight:700;margin:0;padding:.46rem .55rem;text-align:center}.repair-relays{display:grid;gap:.4rem;grid-template-columns:repeat(4,minmax(0,1fr))}.repair-relays span{background:#241d128a;border:1px solid rgba(224,184,95,.34);border-radius:6px;display:grid;gap:.18rem;padding:.52rem .35rem;text-align:center}.repair-relays small,.repair-relays strong{font-family:Courier New,ui-monospace,monospace}.repair-relays small{color:#dfc481;font-size:.68rem;font-weight:700}.repair-relays strong{color:#edf4fa;font-size:.92rem}.circuit-sequence,.circuit-entry{display:grid;gap:.32rem;grid-template-columns:repeat(5,1fr)}.circuit-sequence span,.circuit-entry span{background:#0d2236b8;border:1px solid rgba(79,146,190,.44);border-radius:5px;color:#edf4fa;font-family:Courier New,ui-monospace,monospace;font-weight:700;padding:.46rem 0;text-align:center}.circuit-entry small{color:#7891aa;grid-column:1 / -1;text-align:center}.trace-phase{color:#dfc481;font-family:Courier New,ui-monospace,monospace;font-size:.76rem;font-weight:700;margin:0;text-align:center;text-transform:uppercase}.trace-progress{color:#9fb0c4;font-size:.78rem;margin:-.25rem 0 0;text-align:center}.circuit-pad{display:grid;gap:.4rem;grid-template-columns:repeat(6,minmax(0,1fr))}.challenge-answer{display:grid;gap:.28rem}.challenge-answer span{color:#7891aa;font-size:.72rem}.challenge-answer input{font-family:Courier New,ui-monospace,monospace;font-weight:700}.powerless-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#03050ac7}.powerless-dialog{border-color:#dc4e4e85;box-shadow:0 1.4rem 4rem #0000007a;max-width:min(92vw,27rem);width:27rem}.powerless-dialog h2{color:#ffe4e4;font-size:1.18rem}.powerless-dialog>p:first-child{color:#e49a9a;font-family:Courier New,ui-monospace,monospace;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.powerless-dialog>p:not(:first-child){color:#d9c1c1}.powerless-dialog .primary-action{background:#dc4e4e2e;border-color:#dc4e4e8f;color:#fff0f0;justify-content:center}.mission-end-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#03060cc7}.mission-end-dialog{gap:.72rem;max-width:min(94vw,34rem);width:34rem}.mission-end-overlay.success .mission-end-dialog{border-color:#5cc4838a}.mission-end-overlay.failure .mission-end-dialog,.mission-end-overlay.warning .mission-end-dialog{border-color:#dc4e4e85}.mission-end-dialog h2{color:#edf4fa;font-size:1.24rem}.mission-end-dialog>p{color:#b8c7d8}.victory-kicker{color:#9ad9ae;font-family:Courier New,ui-monospace,monospace;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.mission-end-overlay.failure .victory-kicker,.mission-end-overlay.warning .victory-kicker{color:#e49a9a}.mission-end-telemetry{display:grid;gap:.35rem;grid-template-columns:repeat(4,minmax(0,1fr))}.mission-end-detail{background:#050c186b;border:1px solid rgba(76,104,138,.22);border-radius:6px;display:grid;gap:.38rem;padding:.55rem}.mission-end-detail p{align-items:baseline;display:flex;gap:.6rem;justify-content:space-between;margin:0}.mission-end-detail span{color:#7891aa;font-size:.72rem}.mission-end-detail strong{color:#edf4fa;font-size:.82rem;text-align:right}.mission-end-actions{flex-wrap:wrap}.mission-result-button{background:#5cc4831f;border-color:#5cc48361;color:#d8f1df}.cockpit-intro-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#03060cc7}.cockpit-intro-dialog{gap:.72rem;max-width:min(94vw,46rem);width:46rem}.cockpit-intro-dialog h2{color:#edf4fa;font-size:1.24rem}.cockpit-intro-grid{display:grid;gap:.55rem;grid-template-columns:repeat(3,minmax(0,1fr))}.cockpit-intro-grid section{background:#050c186b;border:1px solid rgba(76,104,138,.24);border-radius:6px;display:grid;gap:.42rem;padding:.62rem}.cockpit-intro-grid h3{color:#dce8f4;font-size:.78rem;letter-spacing:.08em;margin:0;text-transform:uppercase}.cockpit-intro-grid p{color:#a9b9ca;font-size:.74rem;line-height:1.42;margin:0}.cockpit-intro-grid strong{color:#edf4fa}.scan-symbol-list{display:grid;gap:.34rem;grid-template-columns:repeat(2,minmax(0,1fr))}.scan-symbol-list span{align-items:center;background:#060e1c7a;border:1px solid rgba(76,104,138,.24);border-radius:6px;color:#c4d2e1;display:flex;font-size:.72rem;gap:.38rem;min-height:2rem;padding:.28rem .35rem}.scan-symbol-list i{align-items:center;border:1px solid transparent;border-radius:50%;display:flex;flex:0 0 auto;font-family:Courier New,ui-monospace,monospace;font-size:.72rem;font-style:normal;font-weight:800;height:1.25rem;justify-content:center;width:1.25rem}.scan-symbol-list .safe{background:#5cc48333;border-color:#5cc483a8;color:#b8ebc7}.scan-symbol-list .blocked{background:#dc4e4e38;border-color:#dc4e4ebd;color:#ffd4d4}.scan-symbol-list .station{background:#e0b85f38;border-color:#e0b85fbd;color:#f6e1aa}.scan-symbol-list .corridor{background:#4f92be3d;border-color:#4f92bec7;color:#cbe8fa}.cockpit-intro-enter{justify-content:center}@media(max-width:760px){.cockpit-intro-dialog{max-height:92vh;overflow:auto}.cockpit-intro-grid,.scan-symbol-list{grid-template-columns:1fr}}osr-session .map-cell.scanned-cell{box-shadow:inset 0 0 0 2px #edf4fa14}osr-session .map-cell.scan-safe{border-color:#5cc483b8}osr-session .map-cell.scan-blocked{background:#40191edb;border-color:#dc4e4ed1}osr-session .map-cell.scan-station{border-color:#e0b85fe6}osr-session .map-cell.scan-corridor{border-color:#57aedbeb}osr-session .scan-token{align-items:center;border:1px solid transparent;border-radius:50%;bottom:12%;display:flex;font-family:Courier New,ui-monospace,monospace;font-size:clamp(.6rem,1.6cqw,.78rem);font-weight:800;height:clamp(1rem,2.5cqw,1.35rem);justify-content:center;position:absolute;right:12%;width:clamp(1rem,2.5cqw,1.35rem);z-index:2}osr-session .scan-token.safe{background:#5cc48333;border-color:#5cc483a8;color:#b8ebc7}osr-session .scan-token.blocked{background:#dc4e4e38;border-color:#dc4e4ebd;color:#ffd4d4}osr-session .scan-token.station{background:#e0b85f38;border-color:#e0b85fbd;color:#f6e1aa}osr-session .scan-token.corridor{background:#4f92be3d;border-color:#4f92bec7;color:#cbe8fa}osr-session .scan-history{display:grid;gap:.28rem}osr-session .scan-history button{align-items:center;background:#060e1c7a;border-color:#4c688a42;border-radius:6px;color:#a7bad0;display:flex;justify-content:space-between;min-height:1.85rem;padding:.22rem .42rem;text-align:left}osr-session .scan-history strong{color:#dce8f4;font-size:.72rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}osr-session .scan-history span{color:#7891aa;flex:0 0 auto;font-family:Courier New,ui-monospace,monospace;font-size:.68rem}label{color:var(--muted);display:grid;font-size:.78rem;font-weight:650;gap:.45rem;letter-spacing:.08em;text-transform:uppercase}a{color:var(--primary)}.page-shell{isolation:isolate;min-height:100vh;padding:clamp(1.25rem,3vw,2.5rem);position:relative}.panel{background:linear-gradient(180deg,#111827eb,#0b1020f5);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.primary-button{background:linear-gradient(135deg,var(--primary),var(--secondary));color:#02111b;font-weight:780}.primary-button:not(:disabled):hover{border-color:var(--primary-strong)}.secondary-button{background:#3b82f61a;border-color:var(--border);color:var(--text)}.secondary-button:not(:disabled):hover{border-color:var(--primary);color:var(--primary-strong)}.ghost-button{background:transparent;border-color:var(--border);color:var(--muted)}.ghost-button:not(:disabled):hover{border-color:var(--border-bright);color:var(--text)}.status-banner{border:1px solid var(--border);border-radius:var(--radius);color:var(--muted);font-size:.88rem;padding:.85rem .95rem}.status-banner.error{background:#ef444414;border-color:#ef444461;color:#fecaca}.status-banner.success{background:#22c55e14;border-color:#22c55e5c;color:#bbf7d0}osr-session .mobile-map-summary,osr-session .shared-card-banner,osr-session .shared-card-banner button{background:#060e1c9e;border-color:#4c688a6b;color:#a7bad0}osr-session .mobile-map-summary{display:none}osr-session .cards-tab{align-content:start;overflow-x:hidden}osr-session .shared-card-banner{align-items:start;border:1px solid rgba(76,104,138,.22);border-radius:6px;display:flex;font-size:.74rem;gap:.45rem;justify-content:space-between;min-width:0;padding:.42rem .5rem}osr-session .shared-card-copy{display:grid;gap:.08rem;min-width:0}osr-session .shared-card-copy span,osr-session .shared-card-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}osr-session .shared-card-copy small{color:#7891aa}osr-session .shared-card-banner button{flex:0 0 auto;min-height:1.6rem;padding:.15rem .55rem;white-space:nowrap}osr-session .hand-selector{display:grid;gap:.32rem;min-height:0}osr-session .hand-selector .private-card-head{margin-bottom:0}osr-session .private-cards{grid-template-columns:repeat(2,minmax(0,1fr));min-width:0}osr-session .private-card{align-content:center;display:grid;gap:.05rem;justify-items:start;min-height:2.5rem;min-width:0;padding:.24rem .42rem;text-align:left;width:100%}osr-session .private-card strong,osr-session .private-card small{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}osr-session .private-card small{color:#7891aa;font-size:.69rem}osr-session .selected-card{padding:.75rem}osr-session .selected-card p{font-size:.82rem;line-height:1.45}osr-session .card-reader{display:grid;gap:.42rem;grid-template-rows:auto auto auto auto auto;min-height:0}osr-session .card-reader>strong{display:-webkit-box;line-clamp:2;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}osr-session .card-reader-text{max-height:9rem;overflow:auto}osr-session .card-reader-text p{margin:0}osr-session .card-share-row{margin-top:.55rem}osr-session .card-share-action{background:#4c688a2e;border-color:#768ba46b;color:#c4d0dc;justify-content:start;min-height:2.45rem}osr-session .map-panel,osr-session .actions-tab{position:relative}osr-session .inline-alert.error{background:#2a0c14f0}osr-session .inline-alert.success{background:#0a2216f0}osr-session .map-alert-overlay,osr-session .action-alert-overlay{pointer-events:none;position:absolute;z-index:8}osr-session .map-alert-overlay{bottom:2.65rem;left:1rem;right:1rem}osr-session .action-alert-overlay{left:.55rem;right:.55rem;top:3.55rem}@media(max-width:820px){osr-session .map-panel.mobile-summary-only{grid-template-rows:auto;padding:.55rem}osr-session .map-panel.mobile-summary-only .mobile-map-summary{display:flex;justify-content:space-between;min-height:3.3rem;text-align:left;width:100%}osr-session .mobile-map-summary strong{display:block;font-size:.76rem}osr-session .mobile-map-summary em{color:#5cc483;font-size:.76rem;font-style:normal;white-space:nowrap}osr-session .map-panel.mobile-summary-only .map-header,osr-session .map-panel.mobile-summary-only .map-stage,osr-session .map-panel.mobile-summary-only .map-meta{display:none}osr-session .cards-tab{overflow:visible}osr-session .private-cards{display:flex;overflow-x:auto;padding-bottom:.15rem}osr-session .private-card{flex:0 0 9rem}}
