@charset "UTF-8";
:root{--bg:#102527;--panel:#193235;--line:#2a4547;--mint:#97d7bd;--gold:#e4c28e;--ink:#e2eae3;--muted:#809b97}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:13px/1.7 "Malgun Gothic","Segoe UI",sans-serif}button,input{font:inherit}button{cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button:disabled{opacity:.4;cursor:default}[hidden]{display:none!important}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:2px solid var(--gold);outline-offset:4px}button{color:inherit}header{height:61px;background:#193032;border-bottom:1px solid #355053;display:flex;align-items:center;padding:0 32px;gap:35px}.brand{font:italic 20px/1 "Segoe Print","Comic Sans MS",cursive;letter-spacing:-1px;color:#d9e0da;white-space:nowrap}.brand>span{color:#b38c9e}.brand>b{font:7px "Segoe UI",sans-serif;letter-spacing:2px;color:#91aba4;margin-left:9px}header nav{display:flex;align-items:center;gap:25px;font-size:10px;color:#8aa39d;height:100%}header nav>.selected{border-bottom:2px solid #a6cfb8;align-self:stretch;display:flex;align-items:center;color:#bbd9c7}.network{display:flex;align-items:center;gap:6px;margin-left:auto;font-size:9px;color:#93aea5}.network>i,.live-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:#84b89f}.network.offline>i{background:#d2a58a}header>button{background:none;border:1px solid #425b5a;font-size:9px;color:#9cb2a6;border-radius:3px;padding:5px 9px}header kbd{font-size:8px;color:#7f978b;margin-left:5px}main{max-width:1420px;margin:auto;padding:0 45px}.intro{display:grid;grid-template-columns:1fr 375px;gap:50px;align-items:center;padding:42px 0 33px}.eyebrow{font-size:8px;letter-spacing:2px;color:#9ebbaa;margin-bottom:16px;font-weight:500}.eyebrow>i{display:inline-block;width:4px;height:4px;background:#bed7b8;border-radius:50%;vertical-align:middle;margin-right:6px}h1{font-size:43px;letter-spacing:-2.1px;line-height:1.35;margin:0 0 20px;font-weight:600;color:#e2e6d6}.intro h1>span{display:block;font-size:27px;font-weight:400;color:#a9c3ad;letter-spacing:-1px;margin-top:8px}.intro-copy>p{font-size:12px;line-height:2.1;color:#88a29a;margin:0}.intro-tags{display:flex;gap:9px;margin-top:25px}.intro-tags>span{font-size:9px;color:#abc3b2;border:1px solid #36534e;border-radius:3px;padding:4px 9px;background:#1d3734}.entry-panel{border:1px solid #3a5650;background:#1c3737;border-radius:5px;padding:0 23px 17px;box-shadow:0 12px 30px #071b1b38}.entry-tabs{display:flex;border-bottom:1px solid #36524d;margin-bottom:17px;gap:20px}.entry-tabs>button{background:none;border:0;border-bottom:2px solid transparent;font-size:10px;padding:15px 0 12px;color:#75978b}.entry-tabs>button.active{color:#b8dac3;border-bottom-color:#b4d5bb}label{display:block;font-size:9px;color:#94afa2;margin-bottom:6px}input{width:100%;height:39px;background:#193031;border:1px solid #3a554e;border-radius:3px;outline:none;padding:9px 11px;color:#ccddcd;font-size:11px}input::placeholder{color:#688f81;font-size:10px}input:focus{border-color:#a4cdb3;box-shadow:0 0 0 2px #a4cdb30e}#titleField,#codeField{margin-top:13px}#code{font:17px Consolas,monospace;letter-spacing:4px}.primary,.secondary{border:1px solid #b6d0ad;border-radius:3px;background:#c5d7b5;color:#28443c;font-size:11px;padding:10px 17px;font-weight:600}.primary:hover{background:#d6e2c3}.primary>span{float:right;margin-left:20px;font-weight:400}.secondary{background:#203c3a;color:#afcbb9;border-color:#46665a;font-size:10px;font-weight:400;padding:8px 12px}.secondary:hover{border-color:#aac4ac}.quiet{background:none;border:0;font-size:9px;color:#7f9f91;padding:5px}.entry-panel .primary{width:100%;margin-top:18px;text-align:left;font-size:10px;padding:10px 12px}.entry-panel>small{font-size:8px;color:#709082;display:block;text-align:center;margin-top:11px}.operation-grid{display:grid;grid-template-columns:minmax(0,1fr) 265px;gap:20px;align-items:start}.scene-panel{background:#1c3737;border:1px solid #3a5451;border-radius:5px;overflow:hidden;box-shadow:0 15px 40px #06171735}.scene-top{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 16px;background:#223b3b;border-bottom:1px solid #3a5451;font-size:9px;color:#9bb5a5}.scene-top>div:first-child{display:flex;align-items:center;gap:8px}.scene-clock{display:flex;align-items:center;gap:13px;color:#7c9d8c}.scene-clock>span{font-size:8px}.scene-clock b{font:18px/1 Consolas,monospace;color:#d5c99e;letter-spacing:1px}.scene-clock b.urgent{color:#e7a390}.canvas-wrap{position:relative;background:#183030;line-height:0}canvas{display:block;width:100%;height:auto;outline:none;touch-action:none}canvas:focus-visible{outline:2px solid #b1c7ad;outline-offset:-2px}.scene-message{position:absolute;bottom:24px;left:50%;transform:translateX(-50%);padding:17px 24px;background:#18302aeb;border:1px solid #547362;text-align:center;border-radius:4px;width:75%;line-height:1.6;backdrop-filter:blur(4px);pointer-events:none;box-shadow:0 5px 25px #061b1b40}.scene-message>span{font-size:7px;letter-spacing:2px;color:#7ba28c;display:block;margin-bottom:6px}.scene-message>b{font-size:13px;letter-spacing:-.4px;font-weight:400;color:#d0dcc0}.scene-message>p{font-size:9px;color:#8ba48f;margin:7px 0 0}.scene-bottom{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;border-top:1px solid #3b5650;gap:10px}.key-guide{display:flex;align-items:center;gap:13px;font-size:7px;color:#84a493}.key-guide>span{white-space:nowrap}kbd{font:7px/1.5 "Segoe UI",sans-serif;border:1px solid #4a6759;background:#24423a;color:#b3c9ad;padding:1px 4px;border-radius:2px;margin-right:2px}.key-guide kbd:last-of-type{margin-right:5px}.scene-bottom>.quiet{font-size:8px}.touch-controls{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px 17px;background:#193432;border-top:1px solid #315149}.dpad{display:grid;grid-template-columns:32px 32px 32px;grid-template-rows:27px 27px;gap:3px}.dpad button{background:#25483e;border:1px solid #466c55;border-radius:3px;color:#a8caa9;font-size:16px;line-height:1;touch-action:none;user-select:none}.dpad .up{grid-column:2;grid-row:1}.dpad .left{grid-column:1;grid-row:2}.dpad .down{grid-column:2;grid-row:2}.dpad .right{grid-column:3;grid-row:2}.dpad button:active,.dpad button.pressed{background:#4a6e4f;color:#e9e8cd}.action-keys{display:flex;gap:9px}.action-keys button{background:#254439;border:1px solid #50705a;border-radius:4px;padding:9px 13px;font-size:9px;color:#a9c3a4}.action-keys b{display:block;font:11px Consolas,monospace;color:#d0d8b7;font-weight:400;margin-bottom:2px}.action-keys button:active{background:#3c5a40}.operation-sidebar{display:flex;flex-direction:column;gap:16px}.mission-card,.team-card,.comms-card{background:#1d3735;border:1px solid #365349;border-radius:4px;padding:19px 17px}.card-label{display:flex;align-items:center;justify-content:space-between;font-size:7px;letter-spacing:1.6px;color:#729585}.card-label>span{font:9px Consolas,monospace;color:#a5bfa4;letter-spacing:1px}.mission-card h2{font-size:18px;font-weight:400;color:#b7cfb2;line-height:1.7;letter-spacing:-.5px;margin:16px 0 22px}.mission-card em{font-style:normal;color:#d4d9b8}.mission-card ol{padding:0;margin:0;list-style:none}.mission-card li{display:flex;gap:10px;align-items:center;padding:11px 0;border-top:1px solid #2f4a40}.mission-card li>span{font:9px Consolas,monospace;color:#658e79}.mission-card li b{font-size:10px;display:block;font-weight:400;color:#8cab96}.mission-card li small{font-size:7px;color:#597f6d;display:block;margin-top:4px;line-height:1.8}.mission-card li i{width:5px;height:5px;border-radius:50%;border:1px solid #53785e;margin-left:auto;flex-shrink:0}.mission-card li.active>span{color:#e0cea0}.mission-card li.active b{color:#d0dab1}.mission-card li.active small{color:#87a182}.mission-card li.active i{background:#dac588;border-color:#dac588;box-shadow:0 0 10px #dac58860}.mission-card li.done b{color:#6a9680}.mission-card li.done i{background:#82b08d;border-color:#82b08d}.mission-progress{height:2px;background:#2d4a3e;margin-top:15px}.mission-progress>i{display:block;height:100%;background:#b6c28e;width:0;transition:width .2s}.team{margin-top:11px}.empty-team{font-size:9px;color:#638a76;padding:8px 0}.teammate{display:flex;align-items:center;gap:9px;padding:9px 0;border-bottom:1px solid #2a493c}.teammate:last-child{border:0}.teammate .avatar{width:25px;height:25px;border-radius:4px;display:grid;place-items:center;font-size:10px;color:#22382e;border:1px solid #ffffff2a;box-shadow:inset 0 -4px 0 #00000014}.teammate .name{font-size:10px;color:#b1c6ab;flex:1;min-width:0;overflow-wrap:anywhere}.teammate .name>small{font-size:6px;color:#6d9c7e;margin-left:5px}.teammate .state{font-size:7px;color:#719b80}.team-card>.primary{width:100%;font-size:10px;padding:9px 11px;margin-top:15px;text-align:left}.team-card>p{font-size:8px;color:#72907c;margin:10px 0 0;line-height:1.9}.quick-signals{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:15px}.quick-signals>button{border:1px solid #3c5e48;background:#254234;border-radius:3px;padding:7px 5px;color:#8db292;font-size:8px;white-space:nowrap}.quick-signals kbd{font-size:6px;background:none;border-color:#3c5d44;margin-left:3px;padding:0 2px;color:#608969}.radio-log{border-top:1px solid #2f4c3b;padding-top:12px;margin-top:14px;font-size:8px;color:#7c9b7d;line-height:2;min-height:42px}.tip-row{display:flex;justify-content:space-between;gap:20px;font-size:8px;color:#698b75;margin:15px 0}.tip-row b{font-size:7px;font-weight:400;color:#a8b98d;margin-right:6px}.tip-row>span:last-child{white-space:nowrap}footer{border-top:1px solid #29463b;padding:19px 0 27px;margin-top:24px;display:flex;justify-content:space-between;gap:15px;font-size:8px;letter-spacing:1px;color:#527960}footer a{font-size:9px;letter-spacing:0;color:#8ca780}.room-heading{display:flex;justify-content:space-between;align-items:center;padding:25px 0 22px;gap:20px}.room-heading .eyebrow{font-size:8px;margin-bottom:8px;letter-spacing:1.7px}.room-heading .eyebrow span{margin-left:15px;border:1px solid #3c5d46;padding:2px 6px;border-radius:2px;font-family:Consolas,monospace;color:#b6ccaa;letter-spacing:2px}.room-heading h1{font-size:25px;letter-spacing:-.8px;margin:0;color:#cbd7bc}.room-heading>div:last-child{display:flex;gap:12px;align-items:center}.result{position:absolute;inset:0;background:#102d25e8;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.8;text-align:center;backdrop-filter:blur(5px);z-index:3}.result>span{font:9px Consolas,monospace;letter-spacing:4px;color:#b7c995}.result h2{font-size:32px;letter-spacing:-1px;font-weight:400;color:#e5e0ba;margin:15px 0 8px}.result>p{font-size:11px;color:#8eac8c;line-height:2;white-space:pre-line;margin:0 20px 18px}.result-stats{display:flex;gap:38px;margin:16px 0 27px}.result-stats>div{display:flex;flex-direction:column;gap:4px}.result-stats b{font:25px Consolas,monospace;font-weight:400;color:#cad4a4}.result-stats span{font-size:8px;color:#739676}.result>.primary{padding:10px 25px;font-size:10px}.result small{font-size:8px;color:#668c6c;margin-top:10px}.pause-banner{position:absolute;top:14px;left:50%;transform:translateX(-50%);font-size:10px;line-height:1.6;color:#d8ccac;background:#243b2ef2;border:1px solid #a99d6d;border-radius:3px;padding:8px 14px;white-space:nowrap;z-index:2}dialog{width:540px;max-width:calc(100vw - 30px);max-height:85vh;overflow:auto;background:#203e31;border:1px solid #57744d;border-radius:5px;color:#acc89c;padding:0;box-shadow:0 15px 60px #0005}dialog::backdrop{background:#061b16b3;backdrop-filter:blur(3px)}.dialog-head{background:#274738;border-bottom:1px solid #3c5c40;padding:12px 20px;font-size:11px;color:#a4bf93;display:flex;align-items:center;justify-content:space-between}.dialog-head>button{border:0;background:none;font-size:22px;line-height:1;color:#87a778}.help-body{padding:22px 25px}.help-body h2{font-size:21px;font-weight:400;letter-spacing:-.8px;margin:3px 0 16px;color:#d1d7aa}.help-body p,.help-body li{font-size:11px;line-height:2.1;color:#88aa7d}.help-body b{font-weight:500;color:#bbc99b}.help-body ol{padding-left:18px}.help-body li{padding:6px 0 6px 3px}.help-body small{display:block;border-top:1px solid #355536;padding-top:12px;font-size:8px;line-height:2;color:#628c57;margin-top:16px}.help-body>.primary{width:100%;margin-top:18px}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);font-size:11px;line-height:1.8;background:#c8d6af;color:#304731;border:1px solid #e0e3c6;padding:10px 20px;border-radius:3px;box-shadow:0 5px 25px #0003;opacity:0;pointer-events:none;z-index:100;transition:opacity .2s;max-width:calc(100vw - 30px);width:max-content}.toast.visible{opacity:1}body.boss-mode{background:#ededed;color:#555}body.boss-mode header{background:#343434;border-bottom:2px solid #ae466c}body.boss-mode header nav,body.boss-mode .network{display:none}body.boss-mode header>button{margin-left:auto;border-color:#666;color:#aaa}#bossPage{padding-top:28px}#bossPage>h1{font-size:18px;color:#555;font-weight:400;letter-spacing:0}#bossPage h1 small{font-size:11px;color:#999}.report-name{font-size:12px;margin:22px 0 13px}.paper{background:#fff;border:1px solid #ccc;min-height:600px;padding:0 12px 30px;font-size:12px}.paper>div{background:#ddd;text-align:center;padding:8px;margin:0 -12px;border-bottom:1px solid #ccc;font-size:15px}.paper h3{font-size:12px;margin:27px 0 18px}.paper p{font-size:11px;line-height:2.2;margin:10px 0}.boss-note{font-size:9px;color:#aaa}.boss-mode .secondary{background:#fff;color:#777;border-color:#ccc}
@media(max-width:1150px){main{padding:0 28px}.intro{grid-template-columns:1fr 320px;gap:25px;padding-top:32px}.intro h1{font-size:36px}.intro h1>span{font-size:22px}.intro-copy>p{font-size:11px}.operation-grid{grid-template-columns:minmax(0,1fr) 235px;gap:16px}.mission-card,.team-card,.comms-card{padding:17px 14px}.mission-card h2{font-size:16px}.mission-card li small{font-size:7px}.key-guide{gap:8px;font-size:6px}.key-guide kbd{font-size:6px;padding:1px 3px}.scene-bottom>.quiet{font-size:7px}.scene-message{padding:13px 15px;bottom:17px}.scene-message>b{font-size:11px}.scene-message>p{font-size:8px}.touch-controls{padding:10px 13px}.tip-row{font-size:7px}.result h2{font-size:28px}.result>p{font-size:10px}.result-stats{gap:30px;margin:10px 0 20px}.result-stats b{font-size:23px}.scene-clock b{font-size:16px}}
@media(max-width:920px){header{gap:25px;padding:0 23px}.intro{grid-template-columns:1fr 290px;gap:20px}.intro h1{font-size:31px}.intro h1>span{font-size:20px}.intro-copy>p{font-size:10px}.intro-tags{gap:6px;margin-top:20px}.intro-tags>span{font-size:7px;padding:3px 6px}.entry-panel{padding:0 18px 15px}.entry-tabs{gap:15px}.entry-tabs>button{font-size:9px}.operation-grid{grid-template-columns:1fr}.operation-sidebar{display:grid;grid-template-columns:1fr 1fr;gap:15px}.comms-card{grid-column:1/-1;padding:15px 18px;display:grid;grid-template-columns:130px 1fr;align-items:center;column-gap:15px}.quick-signals{grid-template-columns:repeat(4,1fr);margin:0}.radio-log{grid-column:1/-1;margin-top:12px;padding-top:9px;min-height:0}.mission-card h2{font-size:17px;margin-bottom:15px}.mission-card li small{font-size:8px}.key-guide{font-size:8px;gap:14px}.key-guide kbd{font-size:7px}.scene-message>b{font-size:14px}.scene-message>p{font-size:10px}.scene-message{bottom:25px}.touch-controls{padding:12px 17px}.tip-row{font-size:8px;display:block}.tip-row>span{display:block;margin:7px 0}.room-heading h1{font-size:23px}.pause-banner{font-size:9px}.result h2{font-size:32px}.result>p{font-size:12px}.result-stats{gap:40px;margin:17px 0 25px}}
@media(max-width:650px){header{height:54px;padding:0 15px;gap:15px}.brand{font-size:18px}.brand>b{font-size:6px;margin-left:5px}header nav{display:none}header>button{font-size:8px;padding:5px 7px}header kbd{display:none}.network{font-size:7px;gap:4px}main{padding:0 15px}.intro{grid-template-columns:1fr;gap:23px;padding:27px 0 24px}.intro .eyebrow{font-size:7px;letter-spacing:1.4px;margin-bottom:14px}.intro h1{font-size:34px;letter-spacing:-1.7px;margin-bottom:17px}.intro h1>span{font-size:23px;margin-top:7px}.intro-copy>p{font-size:11px;line-height:2}.intro-tags{margin-top:20px;gap:7px}.intro-tags>span{font-size:8px;padding:3px 7px}.entry-panel{padding:0 19px 16px}.entry-tabs{gap:23px;margin-bottom:17px}.entry-tabs>button{font-size:10px;padding:15px 0 12px}input{height:42px;font-size:12px}label{font-size:9px}.entry-panel .primary{font-size:11px;padding:11px 13px;margin-top:17px}.entry-panel>small{font-size:8px}.scene-top{padding:10px 12px;font-size:8px}.scene-clock{gap:8px}.scene-clock>span{font-size:7px}.scene-clock b{font-size:16px}.scene-message{bottom:14px;width:88%;padding:11px 12px}.scene-message>span{font-size:6px;margin-bottom:3px}.scene-message>b{font-size:10px}.scene-message>p{font-size:7px;margin-top:4px}.scene-bottom{padding:9px 10px}.key-guide{gap:7px;font-size:6px;flex-wrap:wrap;line-height:2}.key-guide kbd{font-size:6px;padding:1px 3px}.scene-bottom>.quiet{font-size:7px;white-space:nowrap}.touch-controls{padding:13px 12px;gap:10px}.dpad{grid-template-columns:40px 40px 40px;grid-template-rows:34px 34px;gap:4px}.dpad button{font-size:19px}.action-keys{gap:7px}.action-keys button{font-size:8px;padding:11px 10px}.action-keys b{font-size:10px}.operation-sidebar{grid-template-columns:1fr;gap:14px}.mission-card,.team-card,.comms-card{padding:18px}.mission-card h2{font-size:18px;margin:14px 0 17px}.mission-card li{padding:12px 0;gap:12px}.mission-card li>span{font-size:10px}.mission-card li b{font-size:11px}.mission-card li small{font-size:8px}.card-label{font-size:8px}.comms-card{display:block;grid-column:auto}.quick-signals{grid-template-columns:repeat(4,1fr);margin-top:16px;gap:6px}.quick-signals>button{font-size:8px;padding:8px 5px}.quick-signals kbd{display:none}.radio-log{font-size:9px;margin-top:14px;padding-top:12px}.teammate{padding:11px 0;gap:11px}.teammate .avatar{width:28px;height:28px;font-size:11px}.teammate .name{font-size:11px}.teammate .name>small{font-size:7px}.teammate .state{font-size:8px}.team-card>.primary{font-size:11px;padding:11px 13px}.team-card>p{font-size:9px}.empty-team{font-size:9px}.tip-row{font-size:8px;line-height:2;margin:17px 0}.tip-row>span:last-child{font-size:8px}footer{font-size:6px;letter-spacing:.6px;padding:17px 0 23px;gap:10px}footer a{font-size:8px;white-space:nowrap}.room-heading{padding:23px 0 18px;gap:12px;align-items:flex-start}.room-heading .eyebrow{font-size:6px;letter-spacing:1px;display:flex;align-items:center;gap:9px;margin-bottom:9px}.room-heading .eyebrow>span{font-size:8px;margin:0;padding:1px 4px;letter-spacing:1px}.room-heading h1{font-size:20px;letter-spacing:-.6px;line-height:1.5;max-width:230px;overflow-wrap:anywhere}.room-heading>div:last-child{flex-direction:column;gap:5px;align-items:flex-end}.room-heading .secondary{font-size:8px;padding:6px 8px}.room-heading .quiet{font-size:8px}.pause-banner{font-size:7px;top:8px;padding:5px 8px}.result>span{font-size:7px;letter-spacing:2px}.result h2{font-size:22px;margin:9px 0 5px}.result>p{font-size:8px;margin:0 12px 5px}.result-stats{gap:28px;margin:9px 0 12px}.result-stats b{font-size:19px}.result-stats span{font-size:6px}.result>.primary{padding:7px 16px;font-size:9px}.result small{font-size:6px;margin-top:7px}.help-body{padding:20px}.help-body h2{font-size:19px}.help-body p,.help-body li{font-size:10px}.help-body small{font-size:8px}.toast{font-size:10px;padding:10px 15px;bottom:20px}#bossPage{padding-top:23px}.paper{min-height:530px}.paper p{font-size:10px}.paper h3{font-size:11px}.report-name{font-size:10px}.paper>div{font-size:13px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
