*{box-sizing:border-box}body{margin:0;background:#121a30;color:#f5efdf;font-family:Arial,Microsoft YaHei,sans-serif}button,input{font:inherit}h1,h2,h3,p{margin:0}p{line-height:1.8;color:#bac3d5}button{display:inline-flex;justify-content:center;align-items:center;gap:14px;background:linear-gradient(#ffad68,#e77832);border:2px solid #ffd5a1;border-radius:10px;color:#231d20;padding:16px 25px;min-height:54px;font-weight:800;box-shadow:0 5px #833e22;cursor:pointer}button:active{transform:translateY(3px);box-shadow:0 2px #833e22}button:disabled{opacity:.45;cursor:not-allowed}button:focus-visible,input:focus-visible{outline:3px solid #6ce4ed;outline-offset:4px}.secondary{background:#e8dfcf;border-color:#fff2da;color:#25314e;box-shadow:0 4px #66697a}main{max-width:1450px;margin:auto;padding:22px 4vw;position:relative;isolation:isolate;min-height:100vh}.stars{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;background:radial-gradient(1px 1px at 20px 40px,#b4d2ec 90%,transparent),radial-gradient(1px 1px at 110px 80px,#fff 90%,transparent),radial-gradient(ellipse at 50% 35%,#35496a77,transparent 65%);background-size:140px 140px,230px 230px,100% 100%}header{display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid #47516d;padding:10px 0 18px}.logo{display:flex;align-items:center;gap:14px}.logo>svg{width:45px;height:45px;color:#ffad68}h1{font-size:38px;font-style:italic;font-weight:900;letter-spacing:3px}.logo small{font:9px monospace;letter-spacing:2px;color:#d4b598}.badge{background:#e9dfcf;color:#27314c;padding:12px 20px;border-radius:4px 15px;font-size:12px;font-weight:700}.mission{display:flex;justify-content:space-between;gap:15px;align-items:center;margin:20px 0;color:#abb9d1;font-size:13px}.mission span{display:flex;align-items:center;gap:8px}.mission strong{color:#ffb575}.panel{background:linear-gradient(135deg,#283752,#1e2941);border:2px solid #63708a;border-radius:12px;padding:30px;box-shadow:inset 0 0 0 5px #131b2c44,0 14px 35px #050a1444}.eyebrow{font:10px monospace;letter-spacing:2px;color:#ffb778}.welcome{display:grid;grid-template-columns:1fr 1fr;gap:80px;max-width:1050px;margin:55px auto}.welcome h2{font-size:44px;line-height:1.4;margin:18px 0}.welcome em,.lobby em{font-style:normal;color:#ffaf71}.welcome .crew{width:180px;height:200px;margin-top:15px}.welcome form{align-self:center}.welcome form h2{font-size:28px}.welcome label{display:block;color:#c3cede;font-size:13px;margin-top:30px}input{width:100%;display:block;padding:16px;background:#10192b;border:1px solid #62718a;color:#fff;border-radius:7px;margin:10px 0 25px}.welcome form button{width:100%}.welcome form>small{display:block;text-align:center;color:#8b9ab3;margin-top:24px}.lobby{display:flex;align-items:center;justify-content:space-around;gap:30px;min-height:430px}.lobby h2{font-size:48px;margin:20px 0}.lobby p{font-size:13px}.big{display:block;font:800 74px monospace;color:#ffba7f;margin:24px 0}.big small{font-size:25px;color:#c6cde0}.qr{background:#eee6d8;padding:18px;border-radius:10px;text-align:center}.qr p{color:#23324d;margin-top:12px}.stage{position:relative;display:grid;grid-template-columns:1fr 2fr 1fr;align-items:center;gap:20px;min-height:340px;overflow:hidden;border:1px solid #56637f;border-radius:90px 15px 50px;background:linear-gradient(125deg,#1a253b99,#101a2ab0);padding:25px}.moon{position:absolute;right:16%;top:25px;width:130px;height:130px;border-radius:50%;background:radial-gradient(circle at 30% 30%,#d4d1c5,#747f92 75%,#334057);opacity:.25;box-shadow:0 0 50px #dcdeee20}.stage-side{padding:20px;z-index:1}.stage-side strong{display:block;font:700 65px monospace;color:#ffa765;margin:12px 0}.stage-side p{font-size:12px}.stage-rule{z-index:1}.stage-rule h3{font-size:23px;line-height:1.6;margin-bottom:15px}.stage-rule p{font-size:12px}.reactor{position:relative;min-height:300px;display:flex;justify-content:center;align-items:center;isolation:isolate}.reactor-cap,.reactor-base{position:absolute;left:8%;right:8%;height:55px;top:0;border-radius:50% 50% 10px 10px;background:repeating-linear-gradient(90deg,#65738b 0,#65738b 20px,#3f4d65 22px,#3f4d65 35px);border:6px solid #8490a3;box-shadow:0 10px #253247,0 15px #ec9a51}.reactor-base{top:auto;bottom:0;transform:rotate(180deg)}.reactor-light{position:absolute;top:40px;right:17%;bottom:40px;left:17%;border:5px solid #ffc27d;background:repeating-linear-gradient(0deg,#ff9e2f44 0,#ff9e2f44 15px,#fff7c444 18px,#fff7c444 20px),radial-gradient(ellipse,#ffe59e,#fc9327 55%,#903b24);box-shadow:0 0 35px #ff9c3844,inset 0 0 40px #fff3ab}.reactor-screen{z-index:2;width:100%;padding:22px 10px;border:5px solid #8992a6;background:linear-gradient(#2a3753,#142039);border-radius:20px;box-shadow:0 0 0 4px #ec9a51;display:flex;flex-direction:column;text-align:center;gap:10px}.reactor-screen small{font-size:15px}.reactor-screen b{font:800 clamp(40px,5vw,75px) monospace;color:#ffaf66}.reactor-screen i{font:400 30px monospace;color:#e6e9ef}.reactor-screen span{font-size:11px;color:#afbdd2}.pipe{position:absolute;bottom:-25px;width:45%;height:70px;border-top:10px solid #ffb871;border-left:10px solid #ffb871;border-radius:35px;filter:drop-shadow(0 0 8px #ff8c26);z-index:-1}.pipe.left{left:-10%}.pipe.right{right:-10%;transform:scaleX(-1)}.heartbeat{--signal:#ed645c;border:2px solid var(--signal);background:#10192c;padding:22px 26px;margin-top:20px;border-radius:10px}.heartbeat.warning{--signal:#edc660}.heartbeat.safe{--signal:#64d7a1}.heartbeat>div:first-child{display:flex;justify-content:space-between;color:var(--signal);align-items:center}.heartbeat b{font:700 40px monospace}.track{position:relative;height:25px;background:#303a50;border-radius:6px;margin:15px 0 28px}.track i{display:block;height:100%;background:var(--signal);border-radius:6px;transition:width .8s;box-shadow:0 0 20px color-mix(in srgb,var(--signal) 35%,transparent)}.track span{position:absolute;top:-5px;height:36px;border-left:3px solid white;padding:34px 0 0 6px;font:11px monospace}.heartbeat small{font-size:11px;color:#91a0b8}.controls{display:flex;justify-content:center;gap:20px;margin:25px 0}.result{text-align:center;min-height:400px}.result h2{font-size:36px;line-height:1.5;margin:20px 0}.result h2 em{font:800 65px monospace;color:#ff9b64;font-style:normal}.lucky{display:inline-block;padding:20px;background:#e9dfce;color:#27314a;border-radius:8px}.lucky svg{display:inline;vertical-align:middle;margin-right:10px}.lucky p{color:#845124;font-size:15px;margin-top:10px}.top-three{display:flex;justify-content:center;gap:18px;margin:25px 0}.top-three>div{display:flex;flex-direction:column;align-items:center;gap:10px;border:1px solid #728099;padding:20px 40px;border-radius:8px}.top-three svg{color:#f5c783}.top-three small{color:#97a7c1;font:10px monospace}.message-control{border-top:1px solid #53607c;padding-top:20px}.message-control small{display:block;color:#9faec3;margin-top:12px;font-size:11px}.verdict{min-height:440px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;animation:arrive .6s ease;background:radial-gradient(ellipse,#78412688,transparent 70%)}.verdict>span{font:11px monospace;letter-spacing:4px;margin-top:20px}.verdict h2{font-size:clamp(36px,5.5vw,80px);font-weight:900;line-height:1.5;color:#ffac72;margin-top:15px}.victory{background:radial-gradient(ellipse,#27675377,transparent 70%)}.victory h2{color:#99f0c3}.exposure h2,.final-board h2{font-size:30px;margin-bottom:18px}.exposure-scroll{max-height:360px;overflow:auto;margin:20px 0;scrollbar-color:#ffaa66 #1c2940}.exposure article{padding:18px;border-left:4px solid #ffad6d;background:#101d32;margin:12px 0;animation:arrive .4s ease}.exposure article b{color:#ffd6a6}.exposure article p{font-size:13px;margin-top:6px}.final-board>svg{color:#ffc885;margin-bottom:15px}.rank{display:flex;gap:24px;border-bottom:1px solid #4a5873;padding:12px;font-size:16px}.rank>b{color:#ffb97b}.rank strong{margin-left:auto;font:20px monospace}.final-board>p{margin-top:20px;font-size:12px}.student{max-width:500px;padding:20px}.student h1{font-size:26px}.student .logo>svg{width:28px}.student .logo small{font-size:6px;letter-spacing:1px}.student .badge{font-size:9px;padding:9px}.student .welcome{display:block;margin:25px 0}.student .welcome>div{display:none}.student .mission{font-size:11px}.id-card{display:flex;align-items:center;gap:5px;padding:18px 10px 0;background:linear-gradient(135deg,#eee5d3,#b8c4ce);color:#1b2844;overflow:hidden}.crew{width:45%;flex-shrink:0}.id-card h2{font-size:26px;margin:15px 0}.id-card .eyebrow{font-size:8px;color:#6f563b}.id-card small{display:inline-flex;align-items:center;gap:6px;color:#f9e7ca;background:#344360;padding:5px 10px;border-radius:14px}.role-rules{padding:20px;margin-top:14px}.role-rules p{font-size:13px}.role-rules b{display:block;color:#ffbc87;margin:5px 0}.account{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0}.account>div{background:#e9dfce;border:2px solid #fff0d8;border-radius:10px;padding:18px;color:#24314c}.account small{display:block;font-size:12px}.account strong{font:700 30px monospace;display:block;margin-top:12px}.choices{display:flex;gap:12px;margin-top:24px}.choices button{flex:1;padding:18px 8px;font-size:17px;gap:5px}.choices b{font:800 29px monospace}.choices svg{display:none}.click-hint{display:block;text-align:center;color:#a8b6ce;font-size:11px;margin-top:20px}.locked{display:flex;justify-content:center;gap:12px;background:#203e4a;color:#a8e4d3;border:1px solid #548d8e;border-radius:10px;padding:22px}.waiting-note{text-align:center;font-size:13px;margin:22px 0}.receipt{font-size:11px;text-align:center;margin-bottom:22px}.private-message{background:#45342a;border:1px solid #ffaf64;padding:18px;border-radius:9px;margin-top:16px}.private-message>svg{display:inline;width:16px;vertical-align:middle;margin-right:10px;color:#ffc289}.private-message p{color:#f4d3a8;font-size:14px;margin-top:10px}.error{padding:14px;margin:15px 0;background:#592d35;border:1px solid #ba6670;color:#ffd6d6;border-radius:7px;font-size:13px}.countdown{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:#111a30f5;display:flex;flex-direction:column;justify-content:center;align-items:center}.countdown>b{font:900 200px monospace;color:#ffb26f;animation:arrive .3s ease}.countdown span{letter-spacing:3px;color:#bac6d9}.countdown p{color:#7789a7;letter-spacing:15px}footer{text-align:center;font-size:10px;letter-spacing:2px;color:#72849e;margin-top:26px}@keyframes arrive{0%{opacity:0;transform:scale(.94) translateY(10px)}to{opacity:1;transform:none}}@media(max-width:850px){.welcome{gap:25px}.stage{grid-template-columns:1fr 2fr}.stage-rule{display:none}.stage-side{padding:15px}.lobby h2{font-size:35px}.top-three>div{padding:20px}.result h2{font-size:28px}}@media(max-width:560px){main{padding:16px}.badge{font-size:9px;padding:10px}h1{font-size:28px}.logo>svg{width:30px}.logo small{font-size:6px}.welcome{display:block;margin-top:25px}.welcome>div>.crew{display:none}.welcome h2{font-size:30px}.welcome form{margin-top:30px}.lobby{flex-direction:column;padding:20px}.lobby .big{font-size:45px;margin:15px 0}.lobby h2{font-size:30px}.mission{font-size:10px}.stage{display:block;padding:22px 15px;border-radius:20px;min-height:320px}.stage-side{display:none}.reactor{min-height:270px}.reactor-screen b{font-size:55px}.heartbeat{padding:15px}.heartbeat b{font-size:30px}.controls{gap:10px;flex-wrap:wrap}.controls button{font-size:13px;padding:13px 16px}.result{padding:20px}.result h2{font-size:24px}.top-three{gap:8px}.top-three>div{padding:15px 10px;flex:1;font-size:12px;min-width:0;overflow-wrap:anywhere}.big{font-size:60px}.verdict{min-height:370px}.exposure{padding:20px}.exposure article p{font-size:12px}.student .panel{padding:20px}.student .id-card{padding:15px 6px 0}.student .id-card h2{font-size:23px}.account strong{font-size:27px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.host-presentation [hidden]{display:none!important}.host-presentation .hp-toolbar{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:0 0 14px;color:#a8b8d0;font-size:11px}.host-presentation .hp-toolbar button{min-height:35px;padding:7px 13px;font-size:11px}.host-presentation .hp-slide{min-height:calc(100svh - 235px);display:flex;flex-direction:column;justify-content:center;text-align:center;padding:clamp(22px,4vw,55px);background:linear-gradient(135deg,#283752,#1e2941)}.host-presentation .hp-slide h2{font-size:clamp(28px,4vw,58px);line-height:1.35;margin:24px 0;color:#f5efdf}.host-presentation .hp-opening{font-size:clamp(23px,3vw,42px);color:#ffba7f;line-height:1.6;margin:20px 0}.host-presentation .hp-presenters{margin:20px 0}.host-presentation .hp-presenters small{color:#8f9fb9}.host-presentation .hp-presenters p{font-size:clamp(15px,1.7vw,24px);margin-top:12px}.host-presentation .hp-navigation{display:flex;flex-wrap:wrap;gap:18px;justify-content:center;margin-top:30px}.host-presentation .hp-rules{list-style:none;text-align:left;margin:12px auto;padding:0;max-width:1000px}.host-presentation .hp-rules li{display:flex;gap:25px;padding:18px 0;border-bottom:1px solid #52617b}.host-presentation .hp-rules b{font:700 32px monospace;color:#ffb575}.host-presentation .hp-rules p{font-size:clamp(19px,2.1vw,29px);color:#e6e9f0}.host-presentation .hp-rules small{display:block;color:#ffb575;font-size:16px;margin-top:8px}.host-presentation .hp-lesson{max-width:1000px;margin:20px auto;min-height:230px;display:flex;flex-direction:column;justify-content:center}.host-presentation .hp-lesson>small{color:#8497b5;font:16px monospace}.host-presentation .hp-lesson h3{font-size:clamp(30px,4vw,56px);color:#ffb575;margin:20px 0}.host-presentation .hp-lesson p{font-size:clamp(23px,2.8vw,38px);color:#e6e9f0;line-height:1.8}.host-presentation .hp-note{font-size:11px;color:#8292aa;margin-top:22px}@media(max-width:600px){.host-presentation .hp-slide{padding:22px 16px}.host-presentation .hp-rules li{gap:14px}.host-presentation .hp-navigation button{font-size:13px;padding:13px 18px}}@media(min-width:1000px)and (max-height:800px){.host-presentation .hp-slide{padding:22px}.host-presentation .hp-slide h2{margin:15px 0;font-size:38px}.host-presentation .hp-opening{font-size:30px;margin:12px 0}.host-presentation .hp-rules li{padding:10px 0}.host-presentation .hp-rules p{font-size:23px}.host-presentation .hp-lesson{min-height:170px;margin:10px auto}.host-presentation .hp-navigation{margin-top:20px}}
