.workshop-lobby,.progress-screen,.workshop-missions-screen{min-height:var(--app-viewport-height);color:var(--ink);background:radial-gradient(circle at 13% 18%, #45e3a11a, transparent 28rem), linear-gradient(#b7d5cd09 1px, transparent 1px), linear-gradient(90deg, #b7d5cd09 1px, transparent 1px), var(--canvas);background-size:auto,28px 28px,28px 28px,auto}.workshop-missions-screen{height:var(--app-viewport-height);overscroll-behavior:none;min-height:0;overflow:hidden}.workshop-lobby{padding:24px clamp(18px,4vw,58px) 48px;overflow:hidden}.workshop-lobby:after{z-index:0;content:"";pointer-events:none;border:1px solid #45e3a11f;border-radius:50%;width:72vw;height:72vw;position:fixed;bottom:-42vw;right:-13vw;box-shadow:0 0 0 8vw #45e3a105,0 0 0 17vw #45e3a103}.workshop-lobby-header,.workshop-bar{z-index:2;justify-content:space-between;align-items:center;gap:20px;display:flex;position:relative}.workshop-lobby-header{border-bottom:1px solid var(--line);max-width:1440px;margin:0 auto;padding-bottom:22px}.workshop-brand{align-items:center;gap:12px;display:flex}.workshop-brand-mark{width:48px;height:48px;color:var(--accent);background:#0d1720b8;border:1px solid #45e3a194;place-items:center;display:grid}.workshop-brand>span:last-child{gap:3px;display:grid}.workshop-brand small,.workshop-brand strong,.session-live,.crew-panel-head>span,.workshop-field>span,.global-score-panel small,.team-card-stats small,.trajectory-list small,.facilitator-chip{font-family:var(--font-geist-mono), monospace;letter-spacing:.08em;text-transform:uppercase}.workshop-brand small{color:var(--accent);font-size:.58rem;font-weight:900}.workshop-brand strong{font-size:.72rem}.session-live{color:var(--muted);align-items:center;gap:11px;font-size:.58rem;font-weight:800;display:flex}.session-live i,.facilitator-chip i{background:var(--accent);border-radius:50%;width:7px;height:7px;animation:1.6s ease-in-out infinite pulse;box-shadow:0 0 0 4px #45e3a11f}.session-live strong{color:var(--ink);border:1px solid var(--line);padding:8px 10px}.workshop-theme{border:1px solid var(--line);width:46px;height:46px;color:var(--ink);cursor:pointer;background:#0d1720b8;place-items:center;padding:0;display:grid}.workshop-lobby-header>.language-switcher{--language-control-height:46px}.lobby-stage{z-index:1;width:min(560px,100%);min-height:calc(var(--app-viewport-height) - 120px);grid-template-columns:1fr;align-content:center;gap:24px;margin:0 auto;padding:54px 0 38px;display:grid;position:relative}.collective-target{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:14px;max-width:520px;margin-top:44px;padding:14px;display:grid}.lobby-intro .collective-target{margin-top:0}.collective-target>span{width:42px;height:42px;color:var(--accent);background:#45e3a11a;place-items:center;display:grid}.collective-target div{gap:3px;display:grid}.collective-target small{color:var(--muted);font-family:var(--font-geist-mono), monospace;letter-spacing:.09em;font-size:.55rem;font-weight:800}.collective-target strong{font-size:.88rem}.collective-target b{color:var(--accent);font-family:var(--font-geist-mono), monospace;font-size:1.25rem}.crew-panel{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#0b131ce6;border:1px solid #d5e5e133;padding:clamp(24px,3.2vw,42px);box-shadow:inset 0 1px #ffffff0d,0 34px 90px -45px #000000f2}.crew-panel-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:start;padding-bottom:24px;display:flex}.crew-panel-head h2{margin-top:6px;font-size:1.45rem}.crew-panel-head>span{color:var(--muted);font-size:.58rem}.workshop-field{gap:8px;margin-top:24px;display:grid}.workshop-field>span{color:var(--muted);font-size:.58rem;font-weight:850}.workshop-field>div{border:1px solid var(--line);min-height:50px;color:var(--muted);background:#ffffff06;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:10px;padding:0 14px;display:grid}.workshop-field>div:focus-within{color:var(--accent);border-color:#45e3a1a3}.workshop-field input{min-width:0;color:var(--ink);font:inherit;background:0 0;border:0;outline:0}.workshop-field input::placeholder{color:#647176}.crew-mode-tabs{background:#ffffff09;grid-template-columns:1fr 1fr;gap:5px;margin:20px 0 12px;padding:4px;display:grid}.crew-mode-tabs button{min-height:40px;color:var(--muted);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;gap:8px;font-size:.72rem;font-weight:800;display:flex}.crew-mode-tabs button.active{color:var(--ink);background:#263643}.team-choice{gap:7px;display:grid}.team-choice.late-join{margin-top:20px}.team-choice button{border:1px solid var(--line);min-height:64px;color:var(--ink);text-align:left;cursor:pointer;background:#ffffff05;grid-template-columns:42px minmax(0,1fr) 28px;align-items:center;gap:12px;padding:8px 12px;transition:border-color .18s,background .18s,transform .18s;display:grid}.team-choice button:hover{border-color:color-mix(in srgb, var(--team-tone) 45%, transparent);transform:translate(3px)}.team-choice button.selected{border-color:var(--team-tone);background:color-mix(in srgb, var(--team-tone) 9%, transparent)}.team-choice button>i,.active-crew>i{color:#07130e;background:var(--team-tone);width:42px;height:42px;font-family:var(--font-geist-mono), monospace;place-items:center;font-size:.64rem;font-style:normal;font-weight:950;display:grid}.team-choice button>span{gap:3px;display:grid}.team-choice button small{color:var(--muted);font-size:.67rem}.team-choice button>b{color:var(--team-tone);place-items:center;display:grid}.new-team-field{margin-top:16px}.workshop-primary{border:1px solid var(--accent);color:#071710;background:var(--accent);cursor:pointer;justify-content:space-between;align-items:center;width:100%;min-height:54px;margin-top:20px;padding:0 18px 0 22px;font-weight:900;display:flex}.workshop-primary:disabled{border-color:var(--line);color:#71807b;cursor:not-allowed;background:#22302f}.workshop-bar{z-index:20;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#0a121af0;min-height:72px;padding:10px max(18px,50vw - 590px);position:sticky;top:0}.workshop-bar-main,.workshop-bar-actions{align-items:center;display:flex}.workshop-bar-main{align-self:stretch;gap:clamp(24px,3vw,48px)}.workshop-bar-actions{gap:12px;margin-left:auto}.workshop-bar-actions>.language-switcher{--language-control-height:38px}.workshop-bar .workshop-brand-mark{border-color:color-mix(in srgb, var(--team-tone) 55%, transparent);width:42px;height:42px;color:var(--team-tone)}.workshop-nav-links{align-self:stretch;gap:4px;display:flex}.workshop-nav-links button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:8px;padding:0 18px;font-size:.72rem;font-weight:800;display:flex}.workshop-nav-links button.active{border-color:var(--team-tone);color:var(--ink)}.workshop-bar-theme{border:1px solid var(--line);width:38px;height:38px;color:var(--muted);cursor:pointer;background:0 0;flex:none;place-items:center;padding:0;display:grid}.workshop-bar-theme:hover{border-color:var(--team-tone);color:var(--ink)}.active-crew{grid-template-columns:40px minmax(0,1fr);align-items:center;gap:10px;display:grid}.active-crew>i{width:40px;height:40px}.active-crew>span{gap:2px;display:grid}.active-crew small{color:var(--muted);font-size:.62rem}.active-crew strong{font-size:.72rem}.workshop-missions-screen .level-select-shell{height:calc(var(--app-viewport-height) - 72px);overscroll-behavior-y:contain;scrollbar-gutter:stable;min-height:0;padding-top:14px;overflow-y:auto}@media (min-width:941px){.workshop-missions-screen .level-select-shell{width:min(1180px,100% - 48px);padding:20px 0}.workshop-missions-screen .mission-selector{height:100%;min-height:0}.workshop-bar-actions{border:1px solid var(--line);gap:0;min-height:44px;padding-left:10px}.workshop-bar-actions .workshop-bar-theme{border-width:0 0 0 1px}.levels-active .workshop-bar{padding-right:calc(max(18px,50vw - 590px) + 152px)}.levels-active .station-invite-trigger{min-height:44px;box-shadow:none;top:14px;bottom:auto;right:max(18px,50vw - 590px)}}.progress-screen{padding-bottom:60px}.progress-shell{width:min(1380px,100% - 40px);margin:0 auto;padding-top:34px}.progress-hero{justify-content:space-between;align-items:end;gap:20px;margin-bottom:25px;display:flex}.progress-hero h1{letter-spacing:-.045em;max-width:none;margin:8px 0 0;font-size:clamp(2rem,4vw,4rem)}.facilitator-chip{border:1px solid var(--line);color:var(--muted);align-items:center;gap:10px;padding:12px 14px;font-size:.55rem;font-weight:850;display:flex}.facilitator-chip strong{color:var(--ink);font-size:.72rem}.global-score-panel{background:linear-gradient(105deg,#45e3a11c,#0d161fe0 42%);border:1px solid #45e3a14d;grid-template-columns:minmax(250px,.78fr) minmax(360px,1.4fr) minmax(190px,.58fr);align-items:center;gap:28px;min-height:144px;padding:24px 28px;display:grid}.global-score-copy{align-items:center;gap:16px;display:flex}.global-score-copy>span{color:#07160f;background:var(--accent);place-items:center;width:52px;height:52px;display:grid}.global-score-copy>div{flex-wrap:wrap;align-items:baseline;gap:6px;display:flex}.global-score-copy small{width:100%;color:var(--muted);font-size:.55rem;font-weight:800}.global-score-copy strong{font-family:var(--font-geist-mono), monospace;font-size:clamp(1.8rem,3vw,2.7rem)}.global-score-copy b{color:var(--muted);font-size:.62rem}.global-gauge>div:first-child{font-family:var(--font-geist-mono), monospace;justify-content:space-between;margin-bottom:9px;font-size:.58rem;font-weight:850;display:flex}.global-gauge>div:first-child span{color:var(--muted)}.global-gauge>div:first-child strong{color:var(--accent)}.global-track{border:1px solid #d5e5e12e;height:9px;padding:2px}.global-track i{background:var(--accent);height:100%;display:block;box-shadow:0 0 18px #45e3a173}.global-gauge p{color:var(--muted);margin:9px 0 0;font-size:.64rem}.next-milestone{border-left:1px solid var(--line);gap:4px;padding-left:25px;display:grid}.next-milestone small{color:var(--muted);font-size:.52rem;font-weight:850}.next-milestone strong{color:var(--gold);font-family:var(--font-geist-mono), monospace;font-size:1.08rem}.next-milestone span{color:var(--muted);font-size:.62rem;line-height:1.4}.progress-grid{grid-template-columns:minmax(0,1.4fr) minmax(340px,.76fr);gap:14px;margin-top:14px;display:grid}.team-ranking,.mission-trajectory{border:1px solid var(--line);background:#0b131cdb;padding:24px}.progress-section-head{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.progress-section-head h2{margin-top:5px;font-size:1.15rem}.progress-section-head>span{color:var(--muted);font-family:var(--font-geist-mono), monospace;font-size:.48rem;font-weight:800}.progress-section-head>strong{color:var(--accent);font-family:var(--font-geist-mono), monospace}.team-card-list{gap:8px;display:grid}.progress-team-card{border:1px solid var(--line);border-left:3px solid color-mix(in srgb, var(--team-tone) 52%, transparent);background:#ffffff06;grid-template-rows:auto auto;grid-template-columns:92px minmax(210px,1fr) minmax(180px,.65fr);align-items:center;display:grid}.progress-team-card.is-current{border-color:color-mix(in srgb, var(--team-tone) 52%, transparent);background:color-mix(in srgb, var(--team-tone) 7%, transparent)}.team-rank{border-right:1px solid var(--line);grid-row:1/3;align-self:stretch;align-items:center;gap:10px;padding:14px;display:flex}.team-rank>span{color:var(--muted);font-family:var(--font-geist-mono), monospace;font-size:.55rem}.team-rank>i{color:#07130e;background:var(--team-tone);width:38px;height:38px;font-family:var(--font-geist-mono), monospace;place-items:center;font-size:.58rem;font-style:normal;font-weight:900;display:grid}.team-card-main{justify-content:space-between;align-items:center;gap:15px;padding:14px 18px 8px;display:flex}.team-card-main h3{margin:0 0 4px;font-size:1rem}.team-card-main span{color:var(--muted);align-items:center;gap:5px;font-size:.6rem;display:flex}.team-card-main>strong{font-family:var(--font-geist-mono), monospace;font-size:1.05rem}.team-card-main>strong small{color:var(--muted);font-size:.48rem}.team-progress-track{background:#ffffff14;height:3px;margin:0 18px 13px}.team-progress-track i{background:var(--team-tone);height:100%;display:block}.team-card-stats{border-left:1px solid var(--line);grid-area:1/3/3;grid-template-columns:repeat(3,1fr);align-self:stretch;display:grid}.team-card-stats>span{border-left:1px solid var(--line);place-content:center;gap:5px;padding:10px;display:grid}.team-card-stats>span:first-child{border-left:0}.team-card-stats small{color:var(--muted);font-size:.42rem}.team-card-stats strong{font-family:var(--font-geist-mono), monospace;font-size:.62rem}.trajectory-list{gap:0;margin:0;padding:0;list-style:none;display:grid}.trajectory-list li{grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:62px;padding:7px 0;display:grid;position:relative}.trajectory-list li:not(:last-child):after{background:var(--line);content:"";width:1px;position:absolute;top:49px;bottom:-13px;left:17px}.trajectory-list li>i{z-index:1;border:1px solid var(--line);width:35px;height:35px;color:var(--muted);font-family:var(--font-geist-mono), monospace;background:#121e28;place-items:center;font-size:.52rem;font-style:normal;display:grid}.trajectory-list li.complete>i{border-color:var(--accent);color:#07130e;background:var(--accent)}.trajectory-list li.current>i{border-color:var(--gold);color:var(--gold);box-shadow:0 0 0 4px #ffd43b17}.trajectory-list li>span{gap:4px;display:grid}.trajectory-list small{color:var(--muted);font-size:.46rem}.trajectory-list strong{font-size:.72rem}.trajectory-list li>b{color:var(--accent);font-family:var(--font-geist-mono), monospace;font-size:.58rem}.trajectory-list button{border:1px solid var(--gold);color:#161303;background:var(--gold);cursor:pointer;align-items:center;gap:6px;padding:8px 10px;font-size:.58rem;font-weight:900;display:flex}.back-to-missions{border:1px solid var(--line);width:100%;min-height:42px;color:var(--muted);cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:8px;margin-top:20px;font-size:.68rem;font-weight:800;display:flex}.back-to-missions:hover{color:var(--ink);border-color:#45e3a173}html[data-theme=light] .crew-panel,html[data-theme=light] .team-ranking,html[data-theme=light] .mission-trajectory,html[data-theme=light] .workshop-bar{background:#f8faf9f0}html[data-theme=light] .crew-mode-tabs button.active{background:#dfe8e3}html[data-theme=light] .workshop-brand-mark,html[data-theme=light] .workshop-theme,html[data-theme=light] .trajectory-list li>i{background:#f8faf9e6}@media (max-width:980px){.lobby-stage{grid-template-columns:1fr;align-items:start;gap:34px;padding-top:70px}.lobby-intro{text-align:center}.collective-target{margin-left:auto;margin-right:auto}.crew-panel{width:min(560px,100%);margin:0 auto}.global-score-panel{grid-template-columns:1fr 1.3fr}.next-milestone{display:none}.progress-grid{grid-template-columns:1fr}}@media (max-width:700px){body{padding-bottom:0}.workshop-missions-screen .level-select-shell{height:calc(var(--app-viewport-height) - 62px);min-height:0;padding-bottom:12px}.workshop-lobby{padding:14px 12px 28px}.workshop-lobby-header{padding-bottom:12px}.workshop-brand strong,.session-live span{display:none}.session-live{margin-left:auto}.lobby-stage{min-height:0;padding-top:44px}.collective-target{text-align:left}.crew-panel{padding:22px 16px}.workshop-bar{min-height:62px;padding:8px}.workshop-bar-main{flex:1;gap:6px;min-width:0}.workshop-bar-actions{gap:6px;margin-left:0}.workshop-bar .workshop-brand>span:last-child,.active-crew>span{display:none}.workshop-nav-links{order:2;margin-left:auto}.workshop-nav-links button{justify-content:center;width:42px;padding:0;font-size:0}.active-crew{order:3;grid-template-columns:36px;gap:4px}.active-crew>i{width:36px;height:36px}.progress-shell{width:calc(100% - 16px);padding-top:22px}.progress-hero{align-items:start}.progress-hero h1{font-size:2.2rem}.facilitator-chip{padding:9px}.facilitator-chip span{display:none}.global-score-panel{grid-template-columns:1fr;gap:20px;padding:20px}.global-score-copy{justify-content:center}.team-ranking,.mission-trajectory{padding:16px 12px}.progress-team-card{grid-template-columns:78px minmax(0,1fr)}.team-card-stats{display:none}.team-rank{padding:10px}.team-card-main{padding-left:12px;padding-right:12px}.team-card-main>strong{font-size:.85rem}.team-progress-track{margin-left:12px;margin-right:12px}}@media (prefers-reduced-motion:reduce){.station-invite-backdrop,.station-invite-dialog,.solution-success-backdrop,.solution-success-dialog{transition:none!important;animation:none!important}}.proposal-status{z-index:25;background:#080e15f7;border:1px solid #45e3a15c;justify-content:space-between;align-items:center;gap:10px;min-height:64px;padding:10px 12px;display:flex;position:fixed;bottom:12px;left:max(12px,50vw - 348px);right:max(12px,50vw - 348px);box-shadow:0 18px 50px #00000080}.proposal-status>span,.proposal-status.is-sent{color:var(--muted);align-items:center;gap:7px;font-size:.65rem;display:flex}.proposal-status button{border:1px solid var(--accent);color:#07120e;background:var(--accent);cursor:pointer;justify-content:center;align-items:center;gap:7px;min-height:42px;padding:0 13px;font-size:.66rem;font-weight:900;display:inline-flex}.proposal-status button:disabled{opacity:.55;cursor:wait}.proposal-status.is-sent{color:var(--accent);justify-content:center}.proposal-status.is-test{min-height:0;box-shadow:none;background:0 0;border:0;padding:0}.proposal-status.is-test button{width:100%}.proposal-status.is-success>span{color:var(--accent);font-weight:800}@media (max-width:440px){.proposal-status{flex-direction:column;align-items:stretch}}.companion-lab{z-index:1;overscroll-behavior:none;background:#0c141e;min-height:0;margin:0;padding:0;position:fixed;inset:0;overflow:hidden}.companion-context{z-index:13;min-height:38px;color:var(--ink);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#080e15e6;border:1px solid #45e3a152;align-items:center;gap:12px;padding:7px 10px;display:flex;position:fixed;top:78px;right:18px;box-shadow:0 12px 34px #00000047}.companion-context>div{gap:1px;display:grid}.companion-context small{color:var(--accent);font-family:var(--font-geist-mono), monospace;letter-spacing:.08em;font-size:.48rem;font-weight:900}.companion-context strong{font-size:.64rem}.companion-context>span{border-left:1px solid var(--line);color:var(--muted);align-items:center;gap:5px;padding-left:9px;font-size:.58rem;display:flex}.companion-help-button{border:1px solid var(--line);width:34px;height:34px;color:var(--muted);cursor:pointer;background:0 0;place-items:center;padding:0;display:none}.companion-lab .companion-network-state,.companion-engine-error{z-index:14;width:min(360px,100vw - 36px);margin:0;position:fixed;top:126px;right:18px}.companion-engine-error{top:174px}.companion-lab .proposal-status{width:min(430px,100vw - 36px);bottom:160px;left:auto;right:18px}html[data-theme=light] .companion-context,html[data-theme=light] .companion-lab .proposal-status{background:#f8faf9f0}@media (max-width:700px),(max-width:940px) and (max-height:520px){.companion-context{min-height:36px;padding:5px 7px;top:8px;right:8px}.companion-context>span{display:none}.game-context-companion.mobile-program .companion-help-button{display:grid}.game-context-companion.mobile-program .game-bottom-console>.console-help{display:none}.companion-lab .companion-network-state,.companion-engine-error{width:min(360px,100vw - 16px);top:52px;right:8px}.companion-engine-error{top:98px}.companion-lab .proposal-status{width:auto;min-height:54px;padding:7px 9px;left:8px;right:8px}.game-context-companion.mobile-puzzle .proposal-status:not(.is-success):not(.is-after-success){display:none}.game-context-companion.mobile-puzzle .proposal-status.is-success,.game-context-companion.mobile-puzzle .proposal-status.is-after-success,.game-context-companion.mobile-program .proposal-status{bottom:calc(var(--mobile-nav-height) + 8px)}.game-context-companion.mobile-program .game-bottom-console{bottom:calc(var(--mobile-nav-height) + 72px)}}@media (max-width:440px){.companion-lab .proposal-status{flex-direction:row;align-items:center}.companion-lab .proposal-status>span{min-width:0;font-size:.55rem}.companion-lab .proposal-status button{flex:none;min-height:38px;padding:0 9px;font-size:.57rem}}.station-drawer-trigger{z-index:24;border:1px solid var(--line);min-height:42px;color:var(--ink);cursor:pointer;background:#080e15f0;align-items:center;gap:7px;padding:0 11px;display:flex;position:fixed;top:82px;right:16px}.station-drawer-trigger.solutions{top:132px}.station-drawer-trigger b{color:#07120e;background:var(--accent);border-radius:20px;place-items:center;min-width:21px;height:21px;font-size:.6rem;display:grid}.station-help-trigger,.station-help-status{z-index:24;color:#dff4ff;background:#08141ff5;border:1px solid #7fd3ff6b;align-items:center;gap:7px;min-height:42px;padding:0 11px;font-size:.66rem;font-weight:850;display:flex;position:fixed;top:182px;right:16px}.station-help-trigger{cursor:pointer}.station-help-trigger:disabled{cursor:not-allowed;opacity:.55}.station-help-status.requested{color:#071710;background:#ffd36e;border-color:#ffd36e}.station-help-status.claimed{color:#071710;border-color:var(--accent);background:var(--accent)}.station-help-status>button{width:27px;height:27px;color:inherit;cursor:pointer;background:0 0;border:1px solid;place-items:center;margin-right:-5px;display:grid}.station-help-status>button:disabled{cursor:not-allowed;opacity:.55}.station-side-drawer{z-index:45;width:min(390px,100vw);height:var(--app-viewport-height);border-left:1px solid var(--line);background:#080e15fa;align-content:start;padding:22px;display:grid;position:fixed;top:0;right:0;overflow-y:auto;box-shadow:-24px 0 70px #0000007a}.station-side-drawer>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding-bottom:18px;display:flex}.station-side-drawer>header small{color:var(--accent);font-family:var(--font-geist-mono), monospace;letter-spacing:.08em;font-size:.52rem;font-weight:900}.station-side-drawer>header h2{margin-top:4px;font-size:1.35rem}.station-side-drawer>header button{border:1px solid var(--line);width:38px;height:38px;color:var(--muted);cursor:pointer;background:0 0;place-items:center;display:grid}.station-side-drawer ul{gap:8px;margin:16px 0 0;padding:0;list-style:none;display:grid}.station-side-drawer li{border:1px solid var(--line);background:#ffffff06;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px;display:grid}.station-side-drawer li>div{gap:4px;display:grid}.station-side-drawer li strong{font-size:.78rem}.station-side-drawer li small{color:var(--muted);font-size:.6rem;line-height:1.35}.station-side-drawer li button{min-height:38px;color:var(--accent);cursor:pointer;background:#45e3a10f;border:1px solid #45e3a166;align-items:center;gap:6px;padding:0 10px;font-size:.63rem;font-weight:850;display:flex}.station-side-drawer li>.solution-drawer-actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.station-drawer-empty{color:var(--muted);text-align:center;padding:30px 12px;font-size:.75rem;line-height:1.5}.solution-validated{color:var(--accent);align-items:center;gap:5px;font-size:.62rem;display:flex}.solution-success-backdrop{z-index:60;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:#02070cd1;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.solution-success-dialog{border:1px solid color-mix(in srgb, var(--accent) 40%, transparent);background:var(--panel-deep);border-radius:0;justify-items:start;width:min(540px,100%);padding:clamp(26px,5vw,42px);display:grid;position:relative;box-shadow:0 40px 100px #000000a6}.solution-success-mark{color:#07120e;background:var(--accent);place-items:center;width:54px;height:54px;margin-bottom:22px;display:grid}.solution-success-dialog h2{margin:6px 0 12px;font-size:clamp(1.6rem,5vw,2.2rem)}.solution-success-dialog>p:not(.eyebrow){color:var(--muted);line-height:1.55}.solution-success-dialog>small{color:var(--accent);font-family:var(--font-geist-mono), monospace;margin-top:14px;font-size:.58rem}.solution-success-actions{grid-template-columns:1fr 1.25fr;gap:8px;width:100%;margin-top:26px;display:grid}.solution-success-actions button{border:1px solid var(--line);min-height:48px;color:var(--ink);cursor:pointer;background:0 0;border-radius:0;justify-content:center;align-items:center;gap:7px;padding:0 12px;font-size:.67rem;font-weight:850;display:flex}.solution-success-actions button.primary{color:#07120e;border-color:var(--accent);background:var(--accent)}html[data-theme=light] .solution-success-dialog{--accent:#176f4d;--muted:#526159}html[data-theme=light] .solution-success-actions button.primary,html[data-theme=light] .solution-success-mark,html[data-theme=light] .engine-tutorial-steps article>span{color:#fff}.solution-success-close{border:1px solid var(--line);width:38px;height:38px;color:var(--muted);cursor:pointer;background:0 0;place-items:center;display:grid;position:absolute;top:15px;right:15px}@media (max-width:700px){.station-drawer-trigger{top:auto;bottom:78px;right:12px}.station-drawer-trigger.solutions{inset:auto auto 78px 12px}.station-drawer-trigger span{display:none}.station-help-trigger,.station-help-status{min-height:40px;padding:0 9px;top:54px;right:8px}.solution-success-actions{grid-template-columns:1fr}}.workshop-form-error{color:#ff9189;background:#ff665c14;border:1px solid #ff665c73;margin:14px 0 0;padding:10px 12px;font-size:.72rem;line-height:1.4}.workshop-waiting{min-height:var(--app-viewport-height)}.waiting-stage{z-index:1;min-height:calc(var(--app-viewport-height) - 96px);text-align:center;align-content:center;place-items:center;padding:50px 20px;display:grid;position:relative}.waiting-orbit{width:112px;height:112px;color:var(--accent);border:1px solid #45e3a159;border-radius:50%;place-items:center;margin-bottom:35px;display:grid;position:relative}.waiting-orbit:before,.waiting-orbit:after{content:"";border:1px solid #45e3a124;border-radius:50%;position:absolute}.waiting-orbit:before{inset:-22px}.waiting-orbit:after{inset:-44px}.waiting-stage h1{letter-spacing:-.055em;max-width:780px;margin:11px 0 18px;font-size:clamp(2.5rem,6vw,5.4rem)}.waiting-stage>p:not(.eyebrow){max-width:610px;color:var(--muted);margin-bottom:32px;font-size:1rem;line-height:1.6}.waiting-signal{color:var(--muted);font-family:var(--font-geist-mono), monospace;letter-spacing:.08em;align-items:center;gap:10px;font-size:.55rem;font-weight:850;display:flex}.waiting-signal i{background:var(--accent);border-radius:50%;width:7px;height:7px;animation:1.4s ease-in-out infinite pulse;box-shadow:0 0 0 4px #45e3a11f}.crew-recap-stage{z-index:1;width:min(620px,100%);min-height:calc(var(--app-viewport-height) - 96px);align-content:center;margin:0 auto;padding:48px 0;display:grid;position:relative}.crew-recap-card{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#0b131ce6;border:1px solid #d5e5e133;padding:clamp(24px,5vw,44px);box-shadow:inset 0 1px #ffffff0d,0 34px 90px -45px #000000f2}.crew-recap-head{border-bottom:1px solid var(--line);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;padding-bottom:28px;display:grid}.crew-recap-avatar{width:62px;height:62px;color:var(--accent);font-family:var(--font-geist-mono), monospace;background:#45e3a114;border:1px solid #45e3a180;place-items:center;font-size:1rem;font-weight:900;display:grid}.crew-recap-head h1{letter-spacing:-.045em;margin-top:4px;font-size:clamp(1.8rem,5vw,2.8rem)}.crew-member-count{color:var(--muted);font-family:var(--font-geist-mono), monospace;align-items:center;gap:7px;font-size:.68rem;font-weight:850;display:flex}.crew-members-head{color:var(--muted);font-family:var(--font-geist-mono), monospace;letter-spacing:.08em;justify-content:space-between;margin:28px 0 12px;font-size:.58rem;font-weight:850;display:flex}.crew-members-head small{color:var(--accent);font:inherit;letter-spacing:0}.crew-member-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.crew-member-list li{border:1px solid var(--line);background:#ffffff06;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:58px;padding:9px 14px;display:grid}.crew-member-list li>span{width:34px;height:34px;color:var(--muted);background:#ffffff0a;place-items:center;display:grid}.crew-member-list li>strong{text-overflow:ellipsis;white-space:nowrap;font-size:.86rem;overflow:hidden}.crew-member-list li>small{color:var(--accent);font-family:var(--font-geist-mono), monospace;letter-spacing:.08em;font-size:.53rem;font-weight:900}.crew-member-list li.is-current{background:#45e3a10e;border-color:#45e3a15c}.crew-member-list li.is-current>span{color:var(--accent);background:#45e3a11a}.leave-team-button{color:#ff9189;cursor:pointer;background:#ff665c0f;border:1px solid #ff665c52;justify-content:center;align-items:center;gap:9px;width:100%;min-height:48px;margin-top:28px;font-size:.7rem;font-weight:850;display:flex}.leave-team-button:hover{background:#ff665c1f;border-color:#ff665ca6}.leave-confirmation-backdrop{z-index:30;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#02070cc7;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.leave-confirmation{border:1px solid var(--line);background:var(--panel);width:min(430px,100%);padding:34px;position:relative;box-shadow:0 35px 100px #0000008c}.leave-confirmation>span{color:#ff9189;background:#ff665c1a;place-items:center;width:48px;height:48px;margin-bottom:24px;display:grid}.leave-confirmation h2{margin:7px 38px 10px 0;font-size:1.35rem}.leave-confirmation>p:not(.eyebrow){color:var(--muted);font-size:.82rem;line-height:1.55}.leave-confirmation>div{grid-template-columns:1fr 1fr;gap:10px;margin-top:26px;display:grid}.leave-confirmation>div button{border:1px solid var(--line);min-height:44px;color:var(--ink);cursor:pointer;background:0 0;font-size:.7rem;font-weight:850}.leave-confirmation>div button:last-child{color:#fff;background:#d84b43;border-color:#ff665c}.leave-confirmation button:disabled{opacity:.55;cursor:wait}.leave-confirmation-close{border:1px solid var(--line);width:36px;height:36px;color:var(--muted);cursor:pointer;background:0 0;place-items:center;padding:0;display:grid;position:absolute;top:18px;right:18px}@media (max-width:620px){.crew-recap-stage{min-height:calc(var(--app-viewport-height) - 84px);align-content:start;padding:28px 0}.crew-recap-card{padding:22px 18px}.crew-recap-head{grid-template-columns:52px minmax(0,1fr);gap:13px;padding-bottom:22px}.crew-recap-avatar{width:52px;height:52px}.crew-member-count{grid-column:2;margin-top:-8px}.crew-members-head{margin-top:22px}.leave-confirmation{padding:28px 22px 22px}}.station-loading,.station-onboarding,.station-lobby,.companion-empty,.companion-join{z-index:1;min-height:var(--app-viewport-height);place-items:center;padding:clamp(20px,5vw,54px);display:grid;position:relative}.station-onboarding-card,.companion-join-card{border:1px solid var(--line);background:#0b131cf0;gap:18px;width:min(470px,100%);padding:clamp(24px,5vw,42px);display:grid;position:relative;box-shadow:0 34px 90px -48px #000000f2}.station-onboarding-card>.language-switcher,.companion-join-card>.language-switcher{position:absolute;top:calc(clamp(24px,5vw,42px) + 6px);right:clamp(24px,5vw,42px)}.station-onboarding-mark,.companion-join-mark{width:54px;height:54px;color:var(--accent);background:#45e3a114;border:1px solid #45e3a166;place-items:center;display:grid}.station-onboarding-objective{gap:4px;margin-bottom:6px;display:grid}.station-onboarding-objective small{color:var(--accent);font-family:var(--font-geist-mono), monospace;letter-spacing:.1em;font-size:.55rem;font-weight:900}.station-onboarding-objective strong{font-size:clamp(1.25rem,4vw,1.7rem)}.station-recovery-link{color:var(--muted);text-align:center;text-underline-offset:3px;font-size:.68rem;text-decoration:underline}.station-shell{min-height:var(--app-viewport-height)}.station-lobby-card{border:1px solid var(--line);background:#0b131cf0;width:min(980px,100%);padding:clamp(22px,4vw,42px)}.station-lobby-card h1{margin-top:4px;font-size:clamp(1.6rem,4vw,2.5rem)}.station-invite-members{color:var(--muted);font-family:var(--font-geist-mono), monospace;align-items:center;gap:7px;font-size:.65rem;display:flex}.station-lobby-grid{grid-template-columns:minmax(0,1fr) 300px;gap:clamp(28px,6vw,72px);padding-top:28px;display:grid}.station-lobby-grid ul{gap:8px;margin:13px 0 0;padding:0;list-style:none;display:grid}.station-lobby-grid li{border:1px solid var(--line);background:#ffffff06;grid-template-columns:36px minmax(0,1fr);align-items:center;gap:12px;min-height:54px;padding:8px 13px;display:grid}.station-lobby-grid li>span{color:var(--accent);place-items:center;display:grid}.station-lobby-invite{text-align:center}.station-qr{justify-items:center;gap:10px;margin-top:13px;display:grid}.station-qr-image{background:#fff;border:8px solid #fff;width:min(240px,100%);overflow:hidden}.station-qr-image svg{width:100%;height:auto;display:block}.station-qr a{color:var(--muted);text-underline-offset:3px;font-size:.68rem;text-decoration:underline}.station-invite-trigger{z-index:20;min-height:44px;color:var(--ink);cursor:pointer;background:#0b131cf0;border:1px solid #45e3a173;align-items:center;gap:8px;padding:0 14px;display:flex;position:fixed;bottom:20px;right:20px;box-shadow:0 12px 35px #00000059}.station-invite-trigger b{color:#07120e;background:var(--accent);border-radius:20px;place-items:center;min-width:22px;height:22px;font-size:.65rem;display:grid}.station-invite-backdrop{z-index:50;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#02070ccc;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.station-invite-dialog{border:1px solid var(--line);background:var(--panel);text-align:center;justify-items:center;width:min(400px,100%);padding:32px;display:grid;position:relative}.station-invite-dialog h2{margin-top:6px}.station-invite-close{border:1px solid var(--line);width:38px;height:38px;color:var(--muted);cursor:pointer;background:0 0;place-items:center;display:grid;position:absolute;top:12px;right:12px}.station-invite-members{margin:16px 0 10px}.station-invite-roster{flex-wrap:wrap;justify-content:center;gap:6px;margin:0 0 14px;padding:0;list-style:none;display:flex}.station-invite-roster li{color:var(--ink);border:1px solid var(--line);background:#ffffff08;padding:5px 8px;font-size:.68rem}.station-rotate-invite{border:1px solid var(--line);min-height:42px;color:var(--muted);cursor:pointer;background:0 0;align-items:center;gap:8px;padding:0 14px;display:flex}.station-global-error{z-index:60;color:#ffaaa4;background:var(--panel);border:1px solid #ff665c59;max-width:min(380px,100vw - 40px);padding:12px 15px;font-size:.75rem;position:fixed;bottom:78px;right:20px}.game-shell .game-pause-state{z-index:24;max-width:min(430px,100% - 32px);min-height:48px;color:var(--gold);background:var(--panel);border:1px solid #ffd43b80;align-items:center;gap:10px;padding:8px 13px;display:flex;position:absolute;top:82px;left:50%;transform:translate(-50%);box-shadow:0 12px 32px #00000057}.game-shell .game-pause-state>span{gap:2px;min-width:0;display:grid}.game-shell .game-pause-state strong{font-size:.68rem}.game-shell .game-pause-state small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.56rem;overflow:hidden}.game-shell.is-session-paused .tool-button:disabled,.game-shell.is-session-paused .condition-token:disabled{opacity:.48;cursor:not-allowed}.companion-join-card h1{font-size:clamp(1.8rem,8vw,2.7rem)}.companion-join-card>small{color:var(--muted);margin-top:-12px}.companion-empty{text-align:center;align-content:center;justify-items:center;gap:12px}.companion-empty>.language-switcher,.station-loading>.language-switcher{top:max(14px, env(safe-area-inset-top));right:max(14px, env(safe-area-inset-right));position:absolute}.companion-empty>svg{color:var(--accent)}.companion-empty h1{max-width:460px;font-size:clamp(1.8rem,8vw,3rem)}.companion-empty>p:not(.eyebrow){max-width:420px;color:var(--muted);line-height:1.55}@media (max-width:700px){.game-shell .game-pause-state{min-height:44px;top:66px}.game-shell .game-pause-state small{white-space:normal}.station-lobby{place-items:start stretch;padding:18px}.station-lobby-grid{grid-template-columns:1fr}.station-invite-trigger{bottom:12px;right:12px}.station-onboarding,.companion-join{place-items:start stretch;padding:16px}.station-onboarding-card,.companion-join-card{margin:auto;padding:24px 18px}.station-onboarding-card>.language-switcher,.companion-join-card>.language-switcher{top:30px;right:18px}.companion-join{height:var(--app-viewport-height);min-height:0;padding:max(8px, env(safe-area-inset-top)) 10px max(8px, env(safe-area-inset-bottom));overflow:hidden}.companion-join-card{gap:9px;padding:16px}.companion-join-mark{width:40px;height:40px}.companion-join-mark svg{width:20px;height:20px}.companion-join-card h1{font-size:clamp(1.4rem,7vw,1.8rem);line-height:1.05}.companion-join-card>small{margin-top:-5px;font-size:.65rem}.companion-join-card .workshop-field{gap:5px;margin-top:4px}.companion-join-card .workshop-field>div{min-height:44px}.companion-join-card .workshop-primary{min-height:44px;margin-top:4px}.companion-join-card .workshop-form-error{margin-top:2px;padding:7px 9px}.companion-join:focus-within .companion-join-mark{display:none}.station-invite-dialog{padding:28px 20px 22px}}
.proposal-status.is-actions{min-height:0;box-shadow:none;background:0 0;border:0;padding:0}.proposal-status.is-actions button{flex:1 1 0}.proposal-status.is-actions .proposal-send{color:var(--accent);background:#45e3a10f}.proposal-status.is-sent,.proposal-status.is-loaded{color:var(--accent);justify-content:space-between}.proposal-status.is-loaded>span{color:inherit}.proposal-drawer ul{gap:12px}.proposal-drawer li{grid-template-columns:minmax(0,1fr) auto;align-items:start}.proposal-drawer-heading{align-self:center}.proposal-drawer .reference-program{border:1px solid var(--line);grid-column:1/-1;min-width:0}.proposal-drawer .reference-program>header{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;min-height:38px;padding:0 9px;display:grid}.proposal-drawer .reference-program>header strong{text-overflow:ellipsis;white-space:nowrap;font-size:.62rem;overflow:hidden}.proposal-drawer .reference-program>header small{color:var(--muted);font-size:.52rem}.proposal-drawer .reference-function{border-bottom:1px solid var(--line);grid-template-columns:30px minmax(0,1fr);align-items:start;padding:7px;display:grid}.proposal-drawer .reference-function:last-child{border:0}.proposal-drawer .reference-function>b{color:var(--accent);font-family:var(--font-geist-mono), monospace;text-transform:uppercase;padding-top:8px;font-size:.56rem}.proposal-drawer .reference-function ol{flex-wrap:wrap;gap:4px;min-width:0;margin:0;padding:0;list-style:none;display:flex}.proposal-drawer .reference-function li{border:1px solid var(--line);grid-template:1fr/1fr;place-items:center;gap:0;width:44px;height:44px;padding:4px;display:grid;position:relative}.proposal-drawer .reference-function li>span:first-child{color:var(--muted);font-family:var(--font-geist-mono), monospace;font-size:.38rem;position:absolute;top:2px;left:4px}.proposal-drawer .reference-function li>small{color:var(--muted);font-size:.35rem;position:absolute;bottom:2px;right:3px}.proposal-drawer .reference-function li.condition-blue{border-bottom-color:var(--blue)}.proposal-drawer .reference-function li.condition-red{border-bottom-color:var(--red)}.proposal-drawer .reference-function li.condition-green{border-bottom-color:var(--accent)}.proposal-drawer li>.proposal-drawer-load{align-self:center}.proposal-drawer li>.proposal-drawer-load:disabled{opacity:.45;cursor:not-allowed}@media (max-width:440px){.companion-lab .proposal-status.is-actions{align-items:stretch}.companion-lab .proposal-status.is-actions .proposal-test{flex:none}.companion-lab .proposal-status.is-actions .proposal-send{flex:auto;min-width:0}}@media (max-width:350px){.companion-lab .proposal-status.is-actions{min-height:66px}.companion-lab .proposal-status.is-actions button{min-width:0;padding:0 6px;font-size:.54rem;line-height:1.2}.game-context-companion.mobile-program:has(.proposal-status.is-actions) .game-bottom-console{bottom:calc(var(--mobile-nav-height) + 84px)}}
.facilitator-screen{min-height:var(--app-viewport-height);color:var(--ink);background:linear-gradient(#b7d5cd09 1px, transparent 1px), linear-gradient(90deg, #b7d5cd09 1px, transparent 1px), var(--canvas);background-size:28px 28px;padding:0 0 60px}.facilitator-loading{min-height:var(--app-viewport-height);color:var(--muted);justify-content:center;align-items:center;gap:14px;display:flex}.facilitator-login{border:1px solid var(--line);background:#0b131cf0;width:min(440px,100% - 30px);padding:38px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 34px 90px -45px #000000f2}.facilitator-login>.language-switcher{position:absolute;top:46px;right:38px}.facilitator-logo{width:58px;height:58px;color:var(--accent);border:1px solid #45e3a18c;place-items:center;margin-bottom:28px;display:grid}.facilitator-login h1{letter-spacing:-.04em;margin:8px 0 15px;font-size:2.25rem}.facilitator-login>p:not(.eyebrow,.workshop-form-error){color:var(--muted);font-size:.86rem;line-height:1.55}.facilitator-login label,.create-session-panel label{gap:8px;margin-top:24px;display:grid}.facilitator-login label>span,.create-session-panel label>span{color:var(--muted);font-family:var(--font-geist-mono), monospace;letter-spacing:.08em;font-size:.53rem;font-weight:850}.facilitator-login input,.create-session-panel input{border:1px solid var(--line);width:100%;min-height:48px;color:var(--ink);font:inherit;background:#ffffff06;outline:none;padding:0 13px}.facilitator-login input:focus,.create-session-panel input:focus{border-color:#45e3a199}.facilitator-login>button,.create-session-panel form>button{border:1px solid var(--accent);color:#07160f;background:var(--accent);cursor:pointer;justify-content:center;align-items:center;gap:9px;width:100%;min-height:48px;margin-top:20px;font-weight:900;display:flex}.facilitator-login>button:disabled,.create-session-panel form>button:disabled{opacity:.45;cursor:not-allowed}.facilitator-header{z-index:10;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#0a121af0;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;min-height:76px;padding:10px max(20px,50vw - 690px);display:grid;position:sticky;top:0}.facilitator-current{border:1px solid var(--line);align-items:center;gap:11px;padding:9px 14px;display:flex}.facilitator-current>i{background:var(--muted);border-radius:50%;width:7px;height:7px}.facilitator-current>i.online{background:var(--accent);box-shadow:0 0 0 4px #45e3a11f}.facilitator-current>span{gap:2px;display:grid}.facilitator-current small{color:var(--muted);font-family:var(--font-geist-mono), monospace;letter-spacing:.08em;font-size:.46rem}.facilitator-current strong{font-size:.7rem}.facilitator-header-actions{justify-self:end;align-items:center;gap:6px;display:flex}.facilitator-header-actions>.language-switcher{--language-control-height:40px}.facilitator-home,.facilitator-logout{border:1px solid var(--line);min-height:40px;color:var(--muted);cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:7px;padding:0 12px;font-size:.65rem;text-decoration:none;display:flex}.facilitator-home:hover,.facilitator-logout:hover{color:var(--ink);border-color:#45e3a173}.facilitator-shell{width:min(1400px,100% - 48px);margin:0 auto;padding-top:34px}.facilitator-title{justify-content:space-between;align-items:end;gap:20px;margin-bottom:26px;display:flex}.facilitator-title h1{letter-spacing:-.06em;margin:7px 0 0;font-size:clamp(2.7rem,5vw,5rem)}.facilitator-title-tools{justify-content:flex-end;align-items:center;gap:8px;display:flex}.facilitator-title-tools>span{border:1px solid var(--line);color:var(--muted);font-family:var(--font-geist-mono), monospace;padding:8px 10px;font-size:.58rem}.facilitator-direct-links{align-items:center;gap:6px;display:flex}.facilitator-direct-links a{min-height:40px;color:var(--ink);background:#35bff20d;border:1px solid #35bff261;justify-content:center;align-items:center;gap:7px;padding:0 12px;font-size:.63rem;font-weight:800;text-decoration:none;display:flex}.facilitator-direct-links a:hover{border-color:var(--blue);color:var(--blue)}.facilitator-error{margin-bottom:14px}.facilitator-layout{grid-template-columns:minmax(0,1fr) 350px;align-items:start;gap:24px;display:grid}.session-list-panel,.create-session-panel{border:1px solid var(--line);background:#0b131ce0;min-width:0}.session-list-panel{overflow:hidden}.session-list-head,.session-row{box-sizing:border-box;grid-template-columns:minmax(240px,1fr) 118px 102px 250px;align-items:center;gap:18px;width:100%;display:grid}.session-list-head{border-bottom:1px solid var(--line);min-height:44px;color:var(--muted);font-family:var(--font-geist-mono), monospace;letter-spacing:.07em;background:#ffffff05;padding:0 20px;font-size:.46rem;font-weight:850}.session-row{border-bottom:1px solid var(--line);min-height:88px;padding:12px 20px;position:relative}.session-row:last-child{border-bottom:0}.session-row.is-active{box-shadow:inset 3px 0 0 var(--accent);background:#45e3a10e}.session-identity{align-items:center;gap:12px;min-width:0;display:flex}.session-identity>i{border:1px solid var(--line);width:38px;height:38px;color:var(--muted);place-items:center;font-style:normal;display:grid}.session-row.is-active .session-identity>i{color:var(--accent);border-color:#45e3a180}.session-identity>span{gap:4px;min-width:0;display:grid}.session-identity strong{text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;overflow:hidden}.session-identity small{color:var(--muted);font-size:.56rem}.session-audience{color:var(--muted);grid-template-columns:18px minmax(0,1fr);align-items:center;display:grid}.session-audience strong{color:var(--ink);font-family:var(--font-geist-mono), monospace;font-size:.72rem}.session-audience span{white-space:nowrap;grid-column:2;font-size:.5rem}.session-status{border:1px solid var(--line);color:var(--muted);font-family:var(--font-geist-mono), monospace;text-transform:uppercase;justify-self:start;padding:6px 7px;font-size:.48rem;font-weight:850}.status-running{color:var(--accent);border-color:#45e3a173}.status-lobby{color:var(--blue);border-color:#35bff273}.status-paused{color:var(--gold);border-color:#ffd43b73}.session-actions{flex-wrap:wrap;justify-content:flex-end;gap:5px;min-width:0;display:flex}.session-actions button,.active-label{border:1px solid var(--line);min-height:36px;color:var(--muted);cursor:pointer;background:0 0;align-items:center;gap:5px;padding:0 10px;font-size:.58rem;font-weight:800;display:flex}.session-actions button.primary{border-color:var(--accent);color:#07160f;background:var(--accent)}.session-actions button.danger:hover{color:var(--red);border-color:#ff665c80}.active-label{color:var(--accent);cursor:default;border-color:#0000}.empty-sessions{min-height:300px;color:var(--muted);text-align:center;place-content:center;place-items:center;gap:9px;display:grid}.empty-sessions strong{color:var(--ink)}.empty-sessions span{font-size:.72rem}.create-session-panel{padding:25px;position:sticky;top:100px}.create-session-panel h2{margin:6px 0 13px;font-size:1.3rem}.create-session-panel>p:not(.eyebrow){color:var(--muted);font-size:.72rem;line-height:1.5}.create-session-panel label>div{border:1px solid var(--line);grid-template-columns:1fr 42px;align-items:center;display:grid}.create-session-panel label>div input{border:0}.create-session-panel label>div b{color:var(--muted);font-family:var(--font-geist-mono), monospace;font-size:.52rem}.admin-milestone-fields{gap:8px;margin-top:24px;display:grid}.admin-milestone-fields>span{color:var(--muted);font-family:var(--font-geist-mono), monospace;letter-spacing:.08em;font-size:.53rem;font-weight:850}.admin-milestone-fields label{gap:6px;margin-top:0}.admin-milestone-fields label>span{color:var(--muted);letter-spacing:0;align-items:center;gap:7px;font-size:.49rem;display:flex}.admin-milestone-fields label>span b{width:19px;height:19px;color:var(--accent);border:1px solid #45e3a152;place-items:center;font-size:.48rem;display:grid}.admin-milestone-fields input{min-height:40px;font-size:.7rem}.admin-collective-summary{border:1px solid var(--line);background:#ffffff05;margin:18px;padding:16px}.admin-collective-summary>header{justify-content:space-between;align-items:end;gap:18px;display:flex}.admin-collective-summary>header>div{gap:5px;display:grid}.admin-collective-summary>header small{color:var(--accent);font-family:var(--font-geist-mono), monospace;letter-spacing:.08em;font-size:.5rem}.admin-collective-summary>header strong{font-size:1.05rem}.admin-collective-summary>header>span{color:var(--muted);font-size:.62rem}.admin-collective-progress{background:#ffffff12;height:5px;margin:13px 0;overflow:hidden}.admin-collective-progress i{background:var(--accent);height:100%;display:block}.admin-collective-milestones{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;display:grid}.admin-collective-milestones>div{border:1px solid var(--line);gap:8px;min-width:0;padding:9px;display:flex}.admin-collective-milestones>div>span{width:22px;height:22px;color:var(--muted);border:1px solid var(--line);flex:none;place-items:center;font-size:.58rem;font-weight:900;display:grid}.admin-collective-milestones>div.unlocked>span{color:#071710;border-color:var(--accent);background:var(--accent)}.admin-collective-milestones p{gap:2px;min-width:0;margin:0;display:grid}.admin-collective-milestones strong{font-size:.62rem}.admin-collective-milestones small{color:var(--muted);font-size:.53rem}.admin-collective-milestones b{color:var(--accent);text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:3px;font-size:.53rem;display:flex;overflow:hidden}.admin-danger-zone{border-top:1px solid #ff665c3d;gap:7px;margin-top:28px;padding-top:22px;display:grid}.admin-demo-zone{border-top:1px solid #35bff23d;gap:7px;margin-top:28px;padding-top:22px;display:grid}.admin-demo-zone>small{color:var(--blue);font-family:var(--font-geist-mono), monospace;letter-spacing:.09em;font-size:.5rem;font-weight:900}.admin-demo-zone>strong{margin-top:2px;font-size:.78rem}.admin-demo-zone>p{color:var(--muted);margin:0;font-size:.65rem;line-height:1.5}.admin-demo-zone>button{min-height:42px;color:var(--blue);cursor:pointer;background:#35bff20f;border:1px solid #35bff26b;justify-content:center;align-items:center;gap:7px;margin-top:6px;font-size:.64rem;font-weight:850;display:flex}.admin-danger-zone>small{color:var(--red);font-family:var(--font-geist-mono), monospace;letter-spacing:.09em;font-size:.5rem;font-weight:900}.admin-danger-zone>strong{margin-top:2px;font-size:.78rem}.admin-danger-zone>p{color:var(--muted);margin:0;font-size:.65rem;line-height:1.5}.admin-danger-zone>button{min-height:42px;color:var(--red);cursor:pointer;background:#ff665c0f;border:1px solid #ff665c6b;justify-content:center;align-items:center;gap:7px;margin-top:6px;font-size:.64rem;font-weight:850;display:flex}.admin-danger-zone>button:disabled{opacity:.4;cursor:not-allowed}html[data-theme=light] .facilitator-login,html[data-theme=light] .facilitator-header,html[data-theme=light] .session-list-panel,html[data-theme=light] .create-session-panel{background:#f8faf9f2}@media (max-width:1240px){.facilitator-layout{grid-template-columns:1fr}.create-session-panel{width:min(480px,100%);position:static}}@media (max-width:900px) and (min-width:761px){.session-list-head,.session-row{grid-template-columns:minmax(220px,1fr) 110px 96px 230px;gap:12px;padding-left:15px;padding-right:15px}}@media (max-width:760px){.facilitator-header{grid-template-columns:auto minmax(0,1fr) auto;gap:8px;min-height:56px;padding:6px 8px}.facilitator-header .workshop-brand{gap:0}.facilitator-header .workshop-brand-mark{width:42px;height:42px}.facilitator-header .workshop-brand>span:last-child{display:none}.facilitator-current{border:0;justify-content:start;gap:8px;min-width:0;padding:0 6px}.facilitator-current>span{min-width:0}.facilitator-current small{display:none}.facilitator-current strong{text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;overflow:hidden}.facilitator-header-actions{gap:4px}.facilitator-home,.facilitator-logout{width:44px;min-height:44px;padding:0}.facilitator-home span,.facilitator-logout span{display:none}.facilitator-shell{width:calc(100% - 16px);padding-top:16px}.facilitator-title{margin-bottom:16px}.facilitator-title h1{font-size:2.35rem}.facilitator-title-tools{flex-direction:column;align-items:flex-end}.facilitator-direct-links a{min-height:44px}.session-list-head{display:none}.session-row{grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:14px 12px}.session-audience{grid-row:2}.session-status{grid-area:1/2}.session-actions{grid-area:3/1/auto/3;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px;display:grid}.session-actions button,.session-actions .active-label{justify-content:center;min-height:44px;padding:0 13px;font-size:.68rem}.admin-collective-summary{min-width:0;margin:12px;padding:13px 12px}.admin-collective-summary>header{justify-content:stretch;align-items:start;gap:7px;display:grid}.admin-collective-summary>header>div{min-width:0}.admin-collective-summary>header strong{overflow-wrap:anywhere;font-size:.9rem}.admin-collective-summary>header>span{line-height:1.4}.admin-collective-milestones{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-collective-milestones>div{gap:7px;min-width:0;padding:8px 7px}.admin-collective-milestones p{overflow:hidden}.admin-collective-milestones strong,.admin-collective-milestones small,.admin-collective-milestones b{white-space:normal;overflow-wrap:anywhere}.create-session-panel{padding:20px 16px}}.admin-station-list{border-top:1px solid var(--line);background:#00000014;gap:8px;padding:20px;display:grid}.admin-station-list>header{justify-content:space-between;align-items:center;margin-bottom:3px;display:flex}.admin-station-list>header>div{gap:3px;display:grid}.admin-station-list>header small{color:var(--accent);font-family:var(--font-geist-mono), monospace;letter-spacing:.08em;font-size:.5rem;font-weight:900}.admin-station-list>header>span{color:var(--muted);font-family:var(--font-geist-mono), monospace;font-size:.65rem}.admin-station-row{border:1px solid var(--line);background:#ffffff06;grid-template-columns:minmax(150px,.65fr) minmax(230px,1.35fr) auto;align-items:center;gap:18px;min-height:72px;padding:11px 13px;display:grid}.admin-station-row>span{gap:4px;min-width:0;display:grid}.admin-station-row small{min-width:0;color:var(--muted);font-size:.58rem;line-height:1.35}.admin-station-identity strong,.admin-station-progress strong{text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;overflow:hidden}.admin-station-progress{border-left:1px solid var(--line);padding-left:16px}.admin-station-row>button{border:1px solid var(--line);min-height:38px;color:var(--muted);cursor:pointer;background:0 0;flex:none;align-items:center;gap:6px;padding:0 11px;font-size:.62rem;font-weight:800;display:flex}.admin-recovery-backdrop{z-index:70;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#02070cd1;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.admin-recovery-dialog{background:var(--panel);text-align:center;border:1px solid #45e3a166;justify-items:center;width:min(450px,100%);padding:34px;display:grid}.admin-recovery-dialog h2{margin:5px 0 20px}.admin-recovery-dialog>strong{color:var(--accent);font-family:var(--font-geist-mono), monospace;letter-spacing:.12em;background:#45e3a10f;border:1px solid #45e3a166;padding:14px 18px;font-size:clamp(1.45rem,7vw,2.2rem)}.admin-recovery-dialog>p:not(.eyebrow){color:var(--muted);margin:18px 0;font-size:.75rem;line-height:1.55}.admin-recovery-dialog>button{border:1px solid var(--accent);color:#07120e;background:var(--accent);cursor:pointer;min-height:44px;padding:0 16px;font-weight:850}.admin-reset-backdrop{z-index:75;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#02070cdb;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.admin-reset-dialog{background:var(--panel);border:1px solid #ff665c6b;width:min(500px,100%);padding:34px;display:grid;box-shadow:0 35px 100px #00000080}.admin-reset-icon{width:48px;height:48px;color:var(--red);background:#ff665c12;border:1px solid #ff665c73;place-items:center;margin-bottom:22px;display:grid}.admin-reset-dialog h2{margin:6px 0 10px;font-size:1.5rem}.admin-reset-dialog>p:not(.eyebrow){color:var(--muted);margin:0;font-size:.76rem;line-height:1.55}.admin-reset-dialog label{gap:8px;margin-top:23px;display:grid}.admin-reset-dialog label>span{color:var(--red);font-family:var(--font-geist-mono), monospace;letter-spacing:.08em;font-size:.52rem;font-weight:900}.admin-reset-dialog input{width:100%;min-height:48px;color:var(--ink);font:inherit;font-family:var(--font-geist-mono), monospace;letter-spacing:.12em;background:#ffffff06;border:1px solid #ff665c61;outline:0;padding:0 13px}.admin-reset-dialog input:focus{border-color:var(--red)}.admin-reset-dialog>div{grid-template-columns:1fr 1fr;gap:8px;margin-top:20px;display:grid}.admin-reset-dialog>div button{border:1px solid var(--line);min-height:44px;color:var(--muted);cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:7px;font-weight:850;display:flex}.admin-reset-dialog>div button.danger{border-color:var(--red);color:#190603;background:var(--red)}.admin-completion-dialog{border-color:#ff665c8c}.admin-completion-dialog h2{overflow-wrap:anywhere}.admin-completion-dialog>.admin-completion-error{color:#ffaaa4;margin:16px 0 0}.admin-reset-dialog.admin-demo-dialog{border-color:#35bff26b}.admin-demo-dialog label>span{color:var(--blue)}.admin-demo-dialog input{border-color:#35bff261}.admin-demo-dialog input:focus{border-color:var(--blue)}.admin-reset-dialog>div button.demo{border-color:var(--blue);color:#06131a;background:var(--blue)}.admin-reset-dialog>div button:disabled{border-color:var(--line);color:var(--muted);opacity:.45;cursor:not-allowed;background:0 0}@media (max-width:620px){.facilitator-title{align-items:start}.facilitator-title-tools{max-width:180px}.facilitator-title-tools>span{align-self:flex-end}.facilitator-direct-links{grid-template-columns:1fr;width:100%;display:grid}.facilitator-direct-links a{justify-content:flex-start}.admin-station-list{padding:12px}.admin-station-row{grid-template-columns:minmax(0,1fr);gap:10px}.admin-station-progress{border-top:1px solid var(--line);border-left:0;padding:10px 0 0}.admin-station-row>button{justify-content:center}.admin-recovery-dialog{padding:28px 20px}.admin-reset-dialog{padding:26px 18px}.admin-reset-dialog>div{grid-template-columns:1fr}}@media (max-width:360px){.admin-collective-milestones{grid-template-columns:minmax(0,1fr)}}@media (prefers-reduced-motion:reduce){.admin-recovery-backdrop,.admin-recovery-dialog{transition:none!important;animation:none!important}}.admin-library-screen{z-index:80;min-width:0;color:var(--ink);background:var(--canvas);grid-template-rows:auto minmax(0,1fr);display:grid;position:fixed;inset:0}.admin-library-header{border-bottom:1px solid var(--line);background:#0a121af7;grid-template-columns:1fr minmax(220px,360px) auto auto;align-items:center;gap:12px;min-height:72px;padding:10px 20px;display:grid}.admin-library-brand{color:var(--accent);align-items:center;gap:11px;display:flex}.admin-library-brand>span{gap:2px;display:grid}.admin-library-header small,.admin-library-campaign-select>span{color:var(--muted);font-family:var(--font-geist-mono), monospace;letter-spacing:.08em;font-size:.48rem;font-weight:850}.admin-library-header strong{color:var(--ink);font-size:.85rem}.admin-library-campaign-select{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:9px;display:grid}.admin-library-campaign-select select{border:1px solid var(--line);min-width:0;min-height:40px;color:var(--ink);background:var(--panel);font:inherit;outline:none;padding:0 34px 0 11px;font-size:.7rem}.admin-library-campaign-select select:focus{border-color:#45e3a199}.admin-library-header>.language-switcher{--language-control-height:42px;justify-self:end}.admin-library-header>button{border:1px solid var(--line);width:42px;height:42px;color:var(--muted);cursor:pointer;background:0 0;place-items:center;display:grid}.admin-library-header>button:hover{color:var(--ink);border-color:#45e3a180}.admin-library-state{color:var(--muted);place-items:center;display:grid}.admin-library-state.error{color:var(--red)}.admin-library-layout{grid-template-columns:285px minmax(0,1fr);min-height:0;display:grid}.admin-library-stages{border-right:1px solid var(--line);background:#0b131cd1;min-height:0;padding:15px 12px;overflow:auto}.admin-library-stages>p{color:var(--muted);align-items:center;gap:7px;margin:0 4px 14px;font-size:.57rem;display:flex}.admin-library-stages>button{width:100%;min-height:62px;color:var(--muted);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;grid-template-columns:29px minmax(0,1fr) auto;align-items:center;gap:9px;padding:9px 8px;display:grid}.admin-library-stages>button:hover{border-color:var(--line);color:var(--ink)}.admin-library-stages>button.active{color:var(--ink);background:#45e3a112;border-color:#45e3a159}.admin-library-stages>button>span:first-child{border:1px solid var(--line);width:27px;height:27px;color:var(--muted);font-family:var(--font-geist-mono), monospace;place-items:center;font-size:.57rem;display:grid}.admin-library-stages>button.active>span:first-child{border-color:var(--accent);color:var(--accent)}.admin-library-stages>button>span:nth-child(2){gap:4px;min-width:0;display:grid}.admin-library-stages strong{text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;overflow:hidden}.admin-library-stages small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.52rem;overflow:hidden}.admin-library-detail{min-width:0;padding:30px clamp(18px,4vw,58px) 60px;overflow:auto}.admin-library-detail>section,.admin-library-detail>div{width:min(1180px,100%);margin-left:auto;margin-right:auto}.admin-library-level-head{justify-content:space-between;align-items:end;gap:20px;margin-bottom:24px;display:flex}.admin-library-level-head h1{letter-spacing:-.055em;margin:5px 0 7px;font-size:clamp(2rem,4vw,3.8rem)}.admin-library-level-head>div:first-child>p:last-child{max-width:700px;color:var(--muted);margin:0;font-size:.76rem;line-height:1.55}.admin-library-level-actions{flex:none;justify-items:end;gap:8px;display:grid}.admin-library-variants{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.admin-library-variants button{border:1px solid var(--line);min-height:36px;color:var(--muted);font-family:var(--font-geist-mono), monospace;cursor:pointer;background:0 0;padding:0 10px;font-size:.55rem}.admin-library-variants button.active{border-color:var(--accent);color:var(--accent);background:#45e3a10f}.admin-library-play{border:1px solid var(--accent);color:#07120e;background:var(--accent);cursor:pointer;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 14px;font-size:.67rem;font-weight:900;display:flex}.admin-library-overview{grid-template-columns:minmax(300px,600px) minmax(240px,1fr);align-items:start;gap:18px;display:grid}.mission-board-preview{border:1px solid var(--line);background:#ffffff06;gap:3px;width:100%;max-width:600px;padding:13px;display:grid}.mission-board-cell{aspect-ratio:1;min-width:0;color:var(--ink);background:#b7d5cd14;border:1px solid #b7d5cd1f;place-items:center;display:grid;position:relative}.mission-board-cell.cell-void{visibility:hidden}.mission-board-cell.cell-blue{background:#35bff238;border-color:#35bff261}.mission-board-cell.cell-red{background:#ff665c38;border-color:#ff665c66}.mission-board-cell.cell-green{background:#45e3a133;border-color:#45e3a166}.mission-board-cell>i{color:var(--gold);font-family:var(--font-geist-mono), monospace;font-size:clamp(.5rem,1.3vw,.75rem);font-style:normal;font-weight:900;position:absolute;top:5px;right:6px}.mission-board-cell>b{color:var(--accent);font-family:var(--font-geist-mono), monospace;text-shadow:0 0 14px #45e3a1b3;font-size:clamp(.85rem,2.4vw,1.45rem)}.admin-library-overview>aside{gap:8px;display:grid}.admin-library-overview>aside>div{border:1px solid var(--line);background:#ffffff05;padding:14px}.admin-library-overview>aside small{color:var(--accent);font-family:var(--font-geist-mono), monospace;letter-spacing:.08em;font-size:.48rem;font-weight:900}.admin-library-overview>aside strong{margin-top:6px;font-size:.82rem;display:block}.admin-library-overview>aside p{color:var(--muted);margin:6px 0 0;font-size:.65rem;line-height:1.5}.admin-library-overview dl{border:1px solid var(--line);grid-template-columns:repeat(3,1fr);margin:0;display:grid}.admin-library-overview dl>div{border-right:1px solid var(--line);gap:4px;padding:11px;display:grid}.admin-library-overview dl>div:last-child{border:0}.admin-library-overview dt{color:var(--muted);font-size:.48rem}.admin-library-overview dd{font-family:var(--font-geist-mono), monospace;margin:0;font-size:.66rem;font-weight:850}.admin-library-toolbox,.admin-library-hints,.admin-library-solutions{border:1px solid var(--line);background:#ffffff05;margin-top:18px;padding:18px}.admin-library-toolbox h2,.admin-library-hints h2,.admin-library-solutions h2{margin:0 0 13px;font-size:.9rem}.admin-library-toolbox>div{flex-wrap:wrap;align-items:center;gap:6px;margin-top:7px;display:flex}.admin-library-toolbox>div>span{width:85px;color:var(--muted);font-size:.55rem}.admin-library-toolbox b{border:1px solid var(--line);min-height:31px;font-family:var(--font-geist-mono), monospace;align-items:center;gap:6px;padding:0 8px;font-size:.54rem;display:inline-flex}.admin-library-toolbox b.condition-blue{color:var(--blue);border-color:#35bff273}.admin-library-toolbox b.condition-red{color:var(--red);border-color:#ff665c73}.admin-library-toolbox b.condition-green{color:var(--accent);border-color:#45e3a173}.admin-library-hints h2{align-items:center;gap:8px;display:flex}.admin-library-hints ol{gap:7px;margin:0;padding-left:22px;display:grid}.admin-library-hints li{color:var(--muted);padding-left:4px;font-size:.68rem;line-height:1.5}.admin-library-solutions>p{color:var(--muted);margin:-5px 0 16px;font-size:.62rem}.admin-library-solutions>div{grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:10px;display:grid}.reference-program{border:1px solid var(--line);min-width:0}.reference-program>header{border-bottom:1px solid var(--line);grid-template-columns:1fr auto auto;align-items:center;gap:9px;min-height:42px;padding:0 7px 0 10px;display:grid}.reference-program>header strong{font-size:.65rem}.reference-program>header small{color:var(--muted);font-size:.52rem}.reference-program>header button{min-height:30px;color:var(--accent);cursor:pointer;background:#45e3a10f;border:1px solid #45e3a166;align-items:center;gap:5px;padding:0 8px;font-size:.54rem;font-weight:850;display:flex}.reference-function{border-bottom:1px solid var(--line);grid-template-columns:35px minmax(0,1fr);align-items:start;padding:9px;display:grid}.reference-function:last-child{border:0}.reference-function>b{color:var(--accent);font-family:var(--font-geist-mono), monospace;text-transform:uppercase;padding-top:9px;font-size:.58rem}.reference-function ol{flex-wrap:wrap;gap:5px;min-width:0;margin:0;padding:0;list-style:none;display:flex}.reference-function li{border:1px solid var(--line);place-items:center;width:48px;height:48px;display:grid;position:relative}.reference-function li>span:first-child{color:var(--muted);font-family:var(--font-geist-mono), monospace;font-size:.4rem;position:absolute;top:2px;left:4px}.reference-function li>small{color:var(--muted);font-size:.37rem;position:absolute;bottom:2px;right:3px}.reference-function li.condition-blue{border-bottom-color:var(--blue)}.reference-function li.condition-red{border-bottom-color:var(--red)}.reference-function li.condition-green{border-bottom-color:var(--accent)}html[data-theme=light] .admin-library-header,html[data-theme=light] .admin-library-stages{background:#f8faf9f7}.admin-playtest-screen{z-index:90;overscroll-behavior:none;min-width:0;color:var(--ink);background:var(--canvas);position:fixed;inset:0;overflow:hidden}.admin-playtest-context{z-index:13;min-height:38px;color:var(--accent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0a121ae6;border:1px solid #45e3a159;align-items:center;gap:8px;padding:7px 10px;display:flex;position:fixed;top:86px;right:20px;box-shadow:0 12px 34px #00000047}.admin-playtest-context>span{gap:1px;display:grid}.admin-playtest-context strong{letter-spacing:.08em;font-size:.58rem}.admin-playtest-context small{color:var(--muted);font-size:.46rem}.admin-playtest-context .admin-playtest-private{border-left:1px solid var(--line);color:var(--muted);grid-auto-flow:column;align-items:center;gap:4px;margin-left:4px;padding-left:8px;font-size:.5rem;display:flex}.admin-playtest-help{border:1px solid var(--line);width:34px;height:34px;color:var(--muted);cursor:pointer;background:0 0;place-items:center;padding:0;display:none}html[data-theme=light] .admin-playtest-context{background:#f8faf9eb}@media (max-width:900px){.admin-library-layout{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr)}.admin-library-stages{border-right:0;border-bottom:1px solid var(--line);min-width:0;padding:8px;display:flex;overflow-x:auto}.admin-library-stages>p{display:none}.admin-library-stages>button{flex:0 0 220px}.admin-library-overview{grid-template-columns:minmax(0,1fr)}.mission-board-preview{max-width:560px;margin:0 auto}}@media (max-width:620px){.admin-library-header{grid-template-columns:minmax(0,1fr) auto auto;gap:8px;min-height:62px;padding:8px}.admin-library-brand small{display:none}.admin-library-campaign-select{grid-area:2/1/auto/4}.admin-library-campaign-select>span{width:64px}.admin-library-detail{padding:20px 12px 45px}.admin-library-level-head{flex-direction:column;align-items:stretch}.admin-library-level-actions{justify-items:stretch}.admin-library-level-head h1{font-size:2.25rem}.admin-library-variants{justify-content:flex-start}.admin-library-play{width:100%}.mission-board-preview{gap:2px;padding:7px}.admin-library-toolbox,.admin-library-hints,.admin-library-solutions{padding:13px}.admin-library-toolbox>div>span{width:100%;margin-top:4px}.admin-library-solutions>div{grid-template-columns:minmax(0,1fr)}.admin-playtest-context{max-width:calc(100vw - 64px);min-height:40px;padding:3px 5px;top:8px;right:8px}.admin-playtest-context .admin-playtest-private{display:none}.game-context-playtest.mobile-program .admin-playtest-help{display:grid}.game-context-playtest.mobile-program .game-bottom-console>.console-help{display:none}}
.staff-screen{min-height:var(--app-viewport-height);color:var(--ink);background:radial-gradient(circle at 88% 8%, #45e3a11a, transparent 25rem), var(--canvas)}.staff-loading{color:var(--muted);justify-content:center;align-items:center;gap:10px;display:flex}.staff-login-screen{place-items:center;padding:18px;display:grid}.staff-login{border:1px solid var(--line);background:var(--panel);width:min(430px,100%);padding:30px 24px;display:grid;position:relative;box-shadow:0 28px 80px #00000047}.staff-login>.language-switcher{position:absolute;top:34px;right:24px}.staff-login>span{width:48px;height:48px;color:var(--accent);border:1px solid #45e3a173;place-items:center;margin-bottom:22px;display:grid}.staff-login>small,.staff-login label>span{color:var(--accent);font-family:var(--font-geist-mono), monospace;letter-spacing:.1em;font-size:.58rem;font-weight:900}.staff-login h1{margin:8px 0;font-size:2.2rem}.staff-login>p{color:var(--muted);margin:0 0 24px;font-size:.82rem;line-height:1.5}.staff-login label{gap:8px;display:grid}.staff-login input{border:1px solid var(--line);min-height:50px;color:var(--ink);font:inherit;background:#ffffff06;outline:0;padding:0 13px}.staff-login input:focus{border-color:var(--accent)}.staff-login>button{color:#071710;background:var(--accent);cursor:pointer;border:0;justify-content:space-between;align-items:center;min-height:50px;margin-top:14px;padding:0 16px;font-weight:900;display:flex}.staff-login>button:disabled{opacity:.55}.staff-error{color:#ffaea6;background:#ff665c14;border:1px solid #ff665c52;padding:11px 13px;font-size:.72rem}.staff-header{z-index:20;border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--canvas) 92%, transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);justify-content:space-between;align-items:center;min-height:64px;padding:8px max(14px,50vw - 360px);display:flex;position:sticky;top:0}.staff-header-identity{align-items:center;gap:10px;min-width:0;display:flex}.staff-header-identity>span{width:34px;height:34px;color:var(--accent);border:1px solid #45e3a15c;flex:none;place-items:center;display:grid}.staff-header>.language-switcher{--language-control-height:38px}.staff-header p{gap:2px;min-width:0;margin:0;display:grid}.staff-header small{color:var(--accent);font-family:var(--font-geist-mono), monospace;letter-spacing:.09em;font-size:.48rem}.staff-header strong{text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.staff-header>button{border:1px solid var(--line);width:38px;height:38px;color:var(--muted);background:0 0;place-items:center;display:grid}.staff-content{width:min(720px,100%);margin:0 auto;padding:18px 12px 70px}.staff-summary{border:1px solid var(--line);background:#ffffff05;grid-template-columns:repeat(4,1fr);display:grid}.staff-summary>div{border-right:1px solid var(--line);gap:5px;padding:14px;display:grid}.staff-summary>div:last-child{border:0}.staff-summary small{color:var(--muted);font-family:var(--font-geist-mono), monospace;letter-spacing:.07em;font-size:.48rem}.staff-summary strong{font-size:1.5rem}.staff-summary-help strong{color:#ffd36e}.staff-collective-summary{border:1px solid var(--line);background:#ffffff05;margin-top:10px;padding:14px}.staff-collective-summary>header{grid-template-columns:1.4fr 1fr;gap:12px;display:grid}.staff-collective-summary>header>div{gap:4px;display:grid}.staff-collective-summary small{color:var(--muted);font-family:var(--font-geist-mono), monospace;letter-spacing:.06em;font-size:.45rem}.staff-collective-summary strong{font-size:.88rem}.staff-collective-progress{background:#ffffff12;height:5px;margin-top:12px;overflow:hidden}.staff-collective-progress i{background:var(--accent);height:100%;display:block}.staff-collective-next{color:var(--muted);justify-content:space-between;align-items:center;gap:8px;margin-top:9px;font-size:.59rem;display:flex}.staff-collective-next b{color:var(--accent);align-items:center;gap:4px;display:inline-flex}.staff-sort{gap:8px;margin:18px 0 12px;display:grid}.staff-sort>span{color:var(--muted);font-family:var(--font-geist-mono), monospace;letter-spacing:.08em;font-size:.5rem;font-weight:850}.staff-sort>div{background:#ffffff09;grid-template-columns:1fr 1fr;gap:5px;padding:4px;display:grid}.staff-sort button{min-height:40px;color:var(--muted);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;gap:7px;font-size:.65rem;font-weight:800;display:flex}.staff-sort button.active{color:var(--ink);background:#263643}.staff-team-list{gap:10px;display:grid}.staff-team-card{border:1px solid var(--line);background:#0d1720c7;overflow:hidden}.staff-team-card.help-requested{border-color:#ffd36e9e;box-shadow:inset 0 0 0 1px #ffd36e14}.staff-team-card.help-claimed{border-color:#45e3a16b}.staff-team-card>header{grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:10px;padding:13px;display:grid}.staff-team-avatar{color:#071710;background:var(--accent);width:38px;height:38px;font-family:var(--font-geist-mono), monospace;place-items:center;font-size:.62rem;font-weight:950;display:grid}.staff-team-card>header h2{margin:0;font-size:.92rem}.staff-team-card>header p{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin:3px 0 0;font-size:.62rem;overflow:hidden}.staff-team-card>header>span{color:var(--accent);font-family:var(--font-geist-mono), monospace;letter-spacing:.07em;font-size:.52rem;font-weight:900}.staff-team-card.complete{opacity:.62}.staff-help-request{color:#ffe4a3;background:#ffd36e13;border:1px solid #ffd36e47;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;margin:0 13px 12px;padding:10px;display:grid}.staff-help-request>svg{flex:none}.staff-help-request>span{gap:2px;min-width:0;display:grid}.staff-help-request strong{font-size:.68rem}.staff-help-request small{color:var(--muted);font-size:.54rem}.staff-help-request>button{min-height:36px;color:inherit;cursor:pointer;background:0 0;border:1px solid;justify-content:center;align-items:center;gap:6px;padding:0 10px;font-size:.59rem;font-weight:900;display:flex}.staff-help-request>button:disabled{cursor:wait;opacity:.6}.staff-team-card.help-claimed .staff-help-request{color:var(--accent);background:#45e3a111;border-color:#45e3a142}.staff-team-level{gap:3px;padding:0 13px 11px 61px;display:grid}.staff-team-level strong{font-size:.73rem}.staff-team-level small{color:var(--muted);font-size:.6rem}.staff-team-progress{background:#ffffff0f;height:3px}.staff-team-progress i{background:var(--accent);height:100%;display:block}.staff-team-stats{grid-template-columns:1fr 1fr;display:grid}.staff-team-stats>div{border-right:1px solid var(--line);align-items:center;gap:9px;min-width:0;padding:12px 13px;display:flex}.staff-team-stats>div:last-child{border:0}.staff-team-stats svg{color:var(--muted);flex:none}.staff-team-stats span{gap:3px;min-width:0;display:grid}.staff-team-stats small{color:var(--muted);font-family:var(--font-geist-mono), monospace;letter-spacing:.05em;font-size:.43rem}.staff-team-stats strong{font-size:.76rem}.staff-assist-button{width:100%;min-height:45px;color:var(--accent);cursor:pointer;background:#45e3a10f;border:0;border-top:1px solid #45e3a140;justify-content:center;align-items:center;gap:8px;font-size:.68rem;font-weight:900;display:flex}.staff-empty{color:var(--muted);border:1px solid var(--line);text-align:center;justify-items:center;gap:7px;padding:50px 20px;display:grid}.staff-sheet-backdrop{z-index:80;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#03080eb3;align-items:end;display:grid;position:fixed;inset:0}.staff-assist-sheet{width:min(720px,100%);max-height:calc(var(--app-viewport-height) - 32px);border:1px solid var(--line);color:var(--ink);background:var(--canvas);border-bottom:0;border-radius:22px 22px 0 0;margin:0 auto;overflow:hidden;box-shadow:0 -24px 80px #0000006b}.staff-assist-sheet>header{border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--canvas) 94%, transparent);justify-content:space-between;align-items:center;min-height:68px;padding:10px 16px;display:flex}.staff-assist-sheet>header small{color:var(--accent);font-family:var(--font-geist-mono), monospace;letter-spacing:.08em;font-size:.48rem}.staff-assist-sheet>header h2{margin:3px 0 0;font-size:1rem}.staff-assist-sheet>header button{border:1px solid var(--line);width:38px;height:38px;color:var(--ink);background:0 0;place-items:center;display:grid}.staff-assist-content{max-height:calc(var(--app-viewport-height) - 101px);overscroll-behavior:contain;padding:18px 14px 42px;overflow-y:auto}.staff-mission-heading span{color:var(--accent);font-family:var(--font-geist-mono), monospace;letter-spacing:.08em;font-size:.52rem;font-weight:900}.staff-mission-heading h3{margin:5px 0 4px;font-size:1.8rem}.staff-mission-heading p{color:var(--muted);margin:0 0 16px;font-size:.7rem}.staff-assist-content .mission-board-preview{margin:0 auto}.staff-hints{border:1px solid var(--line);margin-top:14px;padding:14px}.staff-hints h4{margin:0 0 10px;font-size:.78rem}.staff-hints ol{color:var(--muted);gap:7px;margin:0;padding-left:20px;font-size:.67rem;line-height:1.45;display:grid}.staff-solutions{margin-top:12px}.staff-solutions>button{width:100%;min-height:48px;color:var(--accent);background:#45e3a10f;border:1px solid #45e3a161;justify-content:center;align-items:center;gap:8px;font-size:.7rem;font-weight:900;display:flex}.staff-solutions>div{gap:9px;margin-top:9px;display:grid}.staff-sheet-state{min-height:240px;color:var(--muted);text-align:center;place-items:center;padding:30px;display:grid}.staff-sheet-state.error{color:#ffaea6}@media (min-width:721px){.staff-team-list{grid-template-columns:1fr 1fr}.staff-assist-content{padding-left:24px;padding-right:24px}}@media (max-width:520px){.staff-summary{grid-template-columns:1fr 1fr}.staff-summary>div:nth-child(2){border-right:0}.staff-summary>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.staff-help-request{grid-template-columns:auto minmax(0,1fr)}.staff-help-request>button{grid-column:1/-1}}
.workshop-event{--event-turquoise:#00babc;--event-magenta:#ed3491;--event-ink:#54d9da;--event-surface:#0b131cf0;isolation:isolate;background:radial-gradient(ellipse at 10% 0, #00babc1a, transparent 60%), radial-gradient(ellipse at 100% 100%, #ed34910b, transparent 45%), linear-gradient(#b7d5cd06 1px, transparent 1px), linear-gradient(90deg, #b7d5cd06 1px, transparent 1px), var(--canvas);background-size:auto,auto,40px 40px,40px 40px,auto;position:relative}.workshop-event:before{z-index:-1;aspect-ratio:1;width:clamp(8px,.8vw,22px);color:var(--event-magenta);opacity:.18;pointer-events:none;content:"";background:currentColor;font-size:clamp(8px,.8vw,22px);position:absolute;bottom:clamp(18px,3vw,72px);right:clamp(18px,3vw,72px);box-shadow:-1.5em -1.5em,-3em 0}.workshop-event.workshop-lobby:after{content:none}.workshop-brand-42{flex:0 auto;width:180px;min-width:0;max-width:100%}.workshop-brand-42 img{width:100%;height:auto;display:block}.workshop-brand-42-tv{width:clamp(240px,22vw,640px)}.workshop-brand-42-hero{width:min(60vw,1080px);margin-bottom:clamp(32px,5vh,96px)}.workshop-entry-header{justify-content:space-between;align-items:center;gap:clamp(16px,3vw,28px);width:100%;min-width:0;min-height:42px;margin-bottom:12px;display:flex}.workshop-entry-header>.language-switcher{flex:none}.workshop-event .eyebrow,.workshop-event .station-onboarding-objective small{color:var(--event-ink)}.workshop-event .workshop-primary:not(:disabled){border-color:var(--event-turquoise);color:#041b20;background:var(--event-turquoise)}.workshop-event .workshop-primary:not(:disabled):hover{background:#37d4d5}.workshop-event .workshop-field>div:focus-within{border-color:var(--event-turquoise);color:var(--event-ink)}.workshop-event .language-switcher-icon{color:var(--event-ink)}.workshop-event .station-onboarding-card,.workshop-event .companion-join-card,.workshop-event .station-lobby-card{background:var(--event-surface)}.workshop-event.station-lobby{grid-template-columns:minmax(0,1fr)}.workshop-event .station-lobby-card,.workshop-event .station-lobby-grid>div{min-width:0}.workshop-event .station-qr{grid-template-columns:minmax(0,1fr)}.workshop-event .companion-join-card>h1,.workshop-event .companion-join-card>small{overflow-wrap:anywhere;min-width:0}.workshop-event.companion-join{overscroll-behavior:contain;overflow-y:auto}.workshop-idle-screen{padding-top:max(84px, calc(env(safe-area-inset-top) + 70px));gap:16px;padding-bottom:32px}.workshop-idle-screen>.workshop-brand-42{width:min(260px,65vw);margin-bottom:24px}.workshop-event .waiting-stage>.workshop-brand-42{width:min(400px,70vw);margin-bottom:28px}.workshop-waiting .workshop-lobby-header{justify-content:flex-end}.workshop-event .session-live i{background:var(--event-turquoise);box-shadow:0 0 0 4px #00babc1f}.workshop-event .station-lobby-card>.workshop-entry-header{margin-bottom:28px}.workshop-event .station-lobby-grid li>span,.workshop-idle-screen>svg{color:var(--event-ink)}.station-lobby-team{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;min-width:0;padding-bottom:22px;display:flex}.station-lobby-team>div{min-width:0}.station-lobby-team h1{overflow-wrap:anywhere}.station-lobby-team>b{color:var(--muted);flex:none;align-items:center;gap:7px;font-size:.75rem;display:inline-flex}.workshop-event .workshop-lobby-header>.workshop-brand-42{margin-right:auto}.workshop-event .workshop-lobby-header .session-live{min-width:0}.workshop-event .workshop-lobby-header .session-live strong{overflow-wrap:anywhere}.workshop-tv-brand-header{border-bottom:1px solid #00babc40;align-items:center;gap:clamp(28px,3vw,90px);min-width:0;padding-bottom:clamp(16px,2vh,48px);display:flex}.workshop-tv-brand-header>strong{color:#b7cbd7;text-align:right;overflow-wrap:anywhere;flex:1;min-width:0;font-size:clamp(20px,1.7vw,54px);font-weight:600;line-height:1.25}.workshop-progress-tv .workshop-brand-42{flex-shrink:0}.workshop-tv-scene.workshop-event .workshop-tv-lobby-main small{color:#54d9da}.station-device-icons{color:var(--accent);justify-content:center;align-items:center;gap:20px;display:flex}.station-device-icons svg{width:36px;height:36px}html[data-theme=light] .workshop-event{--event-ink:#087577;--event-surface:#f8faf9f5}html[data-theme=light] .workshop-event .workshop-brand-42 img{filter:brightness(0)}html[data-theme=light] .workshop-progress-tv .workshop-brand-42 img{filter:none}@media (max-width:700px){.workshop-event.station-lobby{padding-bottom:max(80px, env(safe-area-inset-bottom))}.workshop-event .station-lobby-grid{grid-template-columns:minmax(0,1fr)}.workshop-entry-header{gap:16px;margin-bottom:12px}.workshop-entry-header .workshop-brand-42{width:166px}.workshop-event .workshop-lobby-header{flex-wrap:wrap;gap:10px}.workshop-event .workshop-lobby-header>.workshop-brand-42{width:min(166px,100% - 146px)}.workshop-event .workshop-lobby-header .session-live{flex-basis:100%;order:4}.workshop-event .workshop-lobby-header .session-live strong{flex:1}}
.concept-art{--concept-tone:#54d9da;width:100%;height:auto;color:var(--concept-tone);display:block;overflow:visible}[data-family=sequence]{--concept-tone:#54d9da}[data-family=recursion]{--concept-tone:#f06bb0}[data-family=conditions]{--concept-tone:#ffb257}[data-family=functions]{--concept-tone:#45e3a1}[data-family=memory]{--concept-tone:#6ea8ff}[data-family=stack]{--concept-tone:#ffd36e}.concept-art-cell{fill:currentColor;fill-opacity:.14;stroke:currentColor;stroke-opacity:.7;stroke-width:2px}.concept-art-frame{fill:none;stroke:currentColor;stroke-width:2.5px}.concept-art-line{fill:none;stroke:currentColor;stroke-opacity:.55;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.concept-art-dot{fill:currentColor;filter:drop-shadow(0 0 4px)}.concept-art-label{fill:currentColor;font:800 13px/1 ui-monospace,monospace}.concept-art[data-motion=loop] *{animation-duration:4s;animation-timing-function:ease-in-out;animation-iteration-count:infinite}.concept-art[data-motion=loop] .seq-dot{animation-name:seq-walk}.concept-art[data-motion=loop] .seq-cell{animation-name:seq-lit;animation-delay:calc(var(--i) * 1s);animation-timing-function:linear}@keyframes seq-walk{0%,18%{opacity:1;transform:translate(0)}25%,43%{transform:translate(28px)}50%,68%{transform:translate(56px)}75%,93%{opacity:1;transform:translate(84px)}to{opacity:0;transform:translate(84px)}}@keyframes seq-lit{0%{fill-opacity:.14}4%,20%{fill-opacity:.8}26%,to{fill-opacity:.14}}.rec-stop{transform-box:fill-box;transform-origin:50%}.concept-art[data-motion=still] .rec-dot{display:none}.concept-art-check{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:3.5px}.concept-art[data-motion=loop] .rec-frame{animation-name:rec-open;animation-duration:6s;animation-timing-function:ease-out}.concept-art[data-motion=loop] .rec-frame-1{animation-delay:.9s}.concept-art[data-motion=loop] .rec-frame-2{animation-delay:1.8s}.concept-art[data-motion=loop] .rec-stop{animation-name:rec-stop;animation-duration:6s}.concept-art[data-motion=loop] .rec-dot{animation-name:rec-dive;animation-duration:6s;animation-timing-function:linear}@keyframes rec-open{0%{opacity:0}4%,90%{opacity:1}98%,to{opacity:0}}@keyframes rec-stop{0%,48%{opacity:0;transform:scale(.6)}54%,90%{opacity:1;transform:none}98%,to{opacity:0}}@keyframes rec-dive{0%,4%{opacity:1;transform:translate(0)}15%,19%{transform:translate(14px,15px)}30%,34%{transform:translate(28px,31px)}45%,to{opacity:0;transform:translate(28px,31px)}}.cond-blue{fill:#35bff2;stroke:#8fdcff;stroke-width:2px}.cond-turn{fill:none;stroke:#07111b;stroke-linecap:round;stroke-linejoin:round;stroke-width:3px}.concept-art[data-motion=loop] .cond-dot{animation-name:cond-run;animation-duration:6s;animation-timing-function:linear}.concept-art[data-motion=loop] .cond-blue,.concept-art[data-motion=loop] .cond-turn{animation-name:cond-blue;animation-duration:6s;animation-timing-function:linear}.concept-art[data-motion=loop] .cond-up{animation-name:cond-up;animation-duration:6s;animation-timing-function:linear}.concept-art[data-motion=loop] .cond-next{animation-name:cond-next;animation-duration:6s;animation-timing-function:linear}@keyframes cond-run{0%,8%{opacity:1;transform:translate(0)}18%,26%{transform:translate(24px)}36%,40%{transform:translate(48px)}48%{opacity:1;transform:translate(48px,-26px)}51%{opacity:0;transform:translate(48px,-26px)}52%{opacity:0;transform:translate(0)}54%,58%{opacity:1;transform:translate(0)}66%,72%{transform:translate(24px)}80%,84%{transform:translate(48px)}92%,96%{opacity:1;transform:translate(72px)}to{opacity:0;transform:translate(72px)}}@keyframes cond-blue{0%,49%{opacity:1}52%,to{opacity:0}}@keyframes cond-up{0%,42%{fill-opacity:.14}48%,54%{fill-opacity:.9}58%,to{fill-opacity:.14}}@keyframes cond-next{0%,90%{fill-opacity:.14}94%,98%{fill-opacity:.9}to{fill-opacity:.14}}.fn-call{fill-opacity:.4}.fn-link{stroke-dasharray:3 3}.concept-art[data-motion=loop] .fn-dot{animation-name:fn-run;animation-duration:6s;animation-timing-function:linear}.concept-art[data-motion=loop] .fn-box{animation-name:fn-glow;animation-duration:6s;animation-timing-function:linear}.concept-art[data-motion=loop] .fn-mini{animation-name:fn-mini;animation-duration:6s;animation-timing-function:linear}.concept-art[data-motion=loop] .fn-link-a{animation-name:fn-link-a;animation-duration:6s;animation-timing-function:linear}.concept-art[data-motion=loop] .fn-link-b{animation-name:fn-link-b;animation-duration:6s;animation-timing-function:linear}@keyframes fn-run{0%,8%{opacity:1;transform:translate(0)}14%,24%{transform:translate(22px)}30%,38%{transform:translate(44px)}44%,54%{transform:translate(66px)}60%,76%{opacity:1;transform:translate(88px)}82%,99%{opacity:0;transform:translate(88px)}to{opacity:0;transform:translate(0)}}@keyframes fn-glow{0%,12%,28%,42%,58%,to{stroke-opacity:.45;stroke-width:2.5px}16%,24%,46%,54%{stroke-opacity:1;stroke-width:4.5px}}@keyframes fn-mini{0%,12%,28%,42%,58%,to{fill-opacity:.14}16%,24%,46%,54%{fill-opacity:.9}}@keyframes fn-link-a{0%,12%,28%,to{stroke-opacity:.2}16%,24%{stroke-opacity:1}}@keyframes fn-link-b{0%,42%,58%,to{stroke-opacity:.2}46%,54%{stroke-opacity:1}}.mem-target{fill:#45e3a1;fill-opacity:.9;stroke:#45e3a1}.mem-drop{fill:#45e3a1;opacity:0}.mem-eye{color:#fff;opacity:1}.mem-eye path,.mem-eye circle{fill:none;stroke:currentColor;stroke-linejoin:round;stroke-width:2.5px}.mem-eye circle{fill:currentColor}.concept-art[data-motion=loop] .mem-dot{animation-name:mem-run;animation-duration:6s;animation-timing-function:linear}.concept-art[data-motion=loop] .mem-target{animation-name:mem-paint;animation-duration:6s;animation-timing-function:linear}.concept-art[data-motion=loop] .mem-drop{animation-name:mem-drop;animation-duration:6s;animation-timing-function:linear}.concept-art[data-motion=loop] .mem-eye{animation-name:mem-eye;animation-duration:6s;animation-timing-function:linear}@keyframes mem-run{0%,10%{opacity:1;transform:translate(0)}22%,36%{transform:translate(44px)}45%{opacity:1;transform:translate(88px)}48%{opacity:0;transform:translate(88px)}52%{opacity:0;transform:translate(0)}54%,60%{opacity:1;transform:translate(0)}72%,86%{transform:translate(44px)}95%{opacity:1;transform:translate(88px)}99%,to{opacity:0;transform:translate(88px)}}@keyframes mem-paint{0%,26%{fill-opacity:.14;stroke:currentColor}32%,94%{fill-opacity:.9;stroke:#45e3a1}99%,to{fill-opacity:.14;stroke:currentColor}}@keyframes mem-drop{0%,18%{opacity:0;transform:translateY(-18px)}24%{opacity:1;transform:translateY(0)}30%,to{opacity:0;transform:translateY(4px)}}@keyframes mem-eye{0%,68%{opacity:0}74%,90%{opacity:1}95%,to{opacity:0}}.concept-art[data-motion=loop] .stack-frame{animation-duration:6s;animation-timing-function:cubic-bezier(.16,1,.3,1)}.concept-art[data-motion=loop] .stack-a{animation-name:stack-a}.concept-art[data-motion=loop] .stack-b{animation-name:stack-b}.concept-art[data-motion=loop] .stack-c{animation-name:stack-c}@keyframes stack-a{0%{opacity:0;transform:translateY(-14px)}6%,90%{opacity:1;transform:none}96%,to{opacity:0;transform:translateY(-14px)}}@keyframes stack-b{0%,16%{opacity:0;transform:translateY(-14px)}24%,74%{opacity:1;transform:none}82%,to{opacity:0;transform:translateY(-14px)}}@keyframes stack-c{0%,34%{opacity:0;transform:translateY(-14px)}42%,58%{opacity:1;transform:none}66%,to{opacity:0;transform:translateY(-14px)}}@media (prefers-reduced-motion:reduce){.concept-art *{animation:none!important}}.concept-strip ul{margin:0;padding:0;list-style:none;display:grid}.concept-strip-eyebrow{color:#45e3a1;letter-spacing:.13em;font-size:clamp(13px,1vw,32px);font-weight:850}.concept-strip li{animation:.6s cubic-bezier(.16,1,.3,1) both concept-in;animation-delay:calc(var(--concept-index) * .12s)}@keyframes concept-in{0%{opacity:0;transform:translateY(14px)}}@media (prefers-reduced-motion:reduce){.concept-strip li{animation:none}}.concept-strip-preview{align-content:center;gap:clamp(8px,1.4vh,28px);min-height:0;display:grid}.concept-strip-preview ul{grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:clamp(10px,1.4vw,44px)}.concept-strip-preview li{border:1px solid color-mix(in srgb, var(--concept-tone) 38%, #334651);background:linear-gradient(180deg, color-mix(in srgb, var(--concept-tone) 10%, transparent), transparent);align-content:start;gap:.35em;min-width:0;padding:clamp(10px,1vw,30px);display:grid}.concept-strip-preview .concept-art{max-height:clamp(48px,11.5vh,300px)}.concept-strip-preview li>strong{color:#eef7ff;font-size:clamp(18px,1.6vw,52px);line-height:1.1}.concept-strip-preview li>span{color:#9bb3c3;font-size:clamp(13px,1.05vw,34px);line-height:1.25}.concept-strip-card{justify-self:stretch;gap:10px;width:100%;min-width:0;display:grid}.concept-briefing-card .concept-strip-card{margin:16px 0 18px}.station-onboarding-card .concept-strip-card .concept-art{max-height:38px}.concept-strip-card>.eyebrow{display:block}.concept-strip-card ul{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.concept-strip-card li{border:1px solid var(--line);background:color-mix(in srgb, var(--concept-tone) 7%, transparent);align-content:start;gap:4px;min-width:0;padding:8px 8px 9px;display:grid}.concept-strip-card .concept-art{max-height:52px}.concept-strip-card li>strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:.74rem;line-height:1.15;overflow:hidden}.concept-strip-card li>span{color:var(--muted);font-size:.72rem;line-height:1.3}.concept-strip-card li[data-current=true]{border-color:var(--concept-tone);background:color-mix(in srgb, var(--concept-tone) 14%, transparent);grid-column:1/-1;grid-template-columns:minmax(0,120px) minmax(0,1fr);align-items:center;column-gap:14px}.concept-strip-card li[data-current=true] .concept-art{grid-row:1/span 2;max-height:74px}.concept-strip-card li[data-current=true]>strong{white-space:normal;align-self:end;font-size:1rem}.concept-strip-card li[data-current=true]>span{align-self:start}.concept-pips{gap:6px;margin:0;padding:0;list-style:none;display:flex}.concept-pips li{background:color-mix(in srgb, var(--concept-tone) 30%, transparent);flex:1;height:4px;animation:none}.concept-pips li[data-current=true]{background:var(--concept-tone)}.station-lobby-card .concept-strip-card{margin-top:24px}.station-lobby-card .concept-strip-card ul{grid-template-columns:repeat(6,minmax(0,1fr))}.waiting-stage .concept-strip-card{text-align:left;width:min(560px,100%);margin-top:30px}.crew-recap-card .concept-strip-card{margin:18px 0}@media (max-width:720px){.station-lobby-card .concept-strip-card ul{grid-template-columns:repeat(3,minmax(0,1fr))}}.concept-strip-progress{margin-top:clamp(8px,.8vw,30px)}.concept-strip-progress ul{grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:clamp(10px,1.4vw,48px)}.concept-strip-progress li{grid-template-columns:clamp(64px,7vw,230px) minmax(0,1fr);align-items:center;gap:clamp(8px,.8vw,28px);transition:opacity .6s,filter .6s;display:grid}.concept-strip-progress li[data-state=upcoming]{opacity:.45;filter:saturate(.4)}.concept-strip-progress li>div{gap:clamp(3px,.3vw,10px);min-width:0;display:grid}.concept-strip-progress li strong{color:#eef7ff;text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:.3em;font-size:clamp(14px,1.15vw,40px);line-height:1.1;display:flex;overflow:hidden}.concept-strip-progress li strong svg{width:1em;height:1em;color:var(--concept-tone);flex:none}.concept-strip-progress li span{color:#9bb3c3;font-variant-numeric:tabular-nums;font-size:clamp(11px,.9vw,30px)}.concept-strip-gauge{background:#7fd3ff24;border-radius:99px;height:clamp(5px,.5vw,16px);overflow:hidden}.concept-strip-gauge i{width:var(--concept-ratio);border-radius:inherit;background:var(--concept-tone);height:100%;transition:width .9s cubic-bezier(.16,1,.3,1);display:block}.concept-strip-progress li[data-state=active] .concept-strip-gauge i{box-shadow:0 0 12px var(--concept-tone)}@media (max-width:720px){.concept-strip-preview ul{grid-template-columns:repeat(3,minmax(0,1fr))}.concept-strip-progress ul{grid-template-columns:repeat(2,minmax(0,1fr))}}
.connection-notice{border:1px solid var(--gold,#ffd43b);max-width:760px;color:var(--ink,#eef7ff);background:var(--panel-deep,#102030);text-align:left;align-items:center;gap:12px;margin:16px auto;padding:14px 16px;display:flex}.connection-notice>svg{color:var(--gold,#ffd43b);flex:none}.connection-notice>div{flex:1;min-width:0}.connection-notice strong{font-size:.9rem}.connection-notice p{color:var(--muted,#b7cbd7);margin:4px 0 0;font-size:.8rem;line-height:1.4}.connection-notice button{min-height:44px;color:var(--ink,#eef7ff);cursor:pointer;background:0 0;border:1px solid;flex:none;justify-content:center;align-items:center;gap:8px;padding:8px 12px;font-weight:750;display:inline-flex}.connection-notice button:disabled{opacity:.6;cursor:wait}.connection-notice.is-floating{z-index:30;top:max(80px, env(safe-area-inset-top));position:fixed;left:16px;right:16px;box-shadow:0 12px 40px #0006}.connection-notice.is-tv{max-width:min(1200px,92vw);padding:20px 28px;top:auto;bottom:24px}.connection-notice.is-tv strong{font-size:clamp(24px,2vw,60px)}.connection-notice.is-tv p{font-size:clamp(18px,1.4vw,42px)}@media (max-width:500px){.connection-notice{flex-wrap:wrap;padding:12px}.connection-notice>div{flex-basis:calc(100% - 40px)}.connection-notice button{width:100%}}
