:root{color:#f7fbff;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#080a0f;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Microsoft YaHei,PingFang SC,Hiragino Sans GB,sans-serif}*{box-sizing:border-box}html{background:#080a0f;min-width:320px;overflow-x:hidden}body{min-width:320px;min-height:100svh;margin:0;overflow-x:hidden}button,input{font:inherit}button:focus-visible,input:focus-visible{outline-offset:3px;outline:2px solid #19f1d7}img,canvas,video{max-width:100%}.app{--paper:#f7f3e8;--ink:#081016;--stage:#090c12;--stage-2:#121820;--panel:#0d1117c7;--panel-strong:#10141cf0;--line:#ffffff26;--line-strong:#ffffff47;--text:#f9fbff;--muted:#f9fbffad;--cyan:#1cf0d5;--green:#7cf4a9;--gold:#ffd05f;--coral:#ff5d79;--blue:#6ea8ff;--shadow:#0000006b;--tilt-rot-x:0deg;--tilt-rot-y:0deg;--tilt-shift-x:0px;--tilt-shift-y:0px;min-height:100dvh;color:var(--text);isolation:isolate;background:linear-gradient(#070a106b,#070a10b8),url(/generated/python-stage-imagen.png) 50%/cover fixed,linear-gradient(160deg,#090c12 0%,#111722 42%,#18131b 70%,#090c12 100%);position:relative;overflow-x:hidden}.app:before,.app:after{content:"";pointer-events:none;z-index:1;position:fixed;inset:0}.app:before{background-color:#0000;background-image:linear-gradient(#ffffff09 1px,#0000 1px),linear-gradient(90deg,#ffffff07 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:52px 52px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;-webkit-mask-image:linear-gradient(#000000e6,#0000 82%);mask-image:linear-gradient(#000000e6,#0000 82%)}.app:after{opacity:.26;background-image:radial-gradient(circle,#ffffff94 1px,#0000 1.6px),radial-gradient(circle,#ffd05f7a 1px,#0000 1.8px);background-position:0 0,23px 31px;background-size:58px 58px,83px 83px}.scene-layer{z-index:0;opacity:.56;transform:translate3d(calc(var(--tilt-shift-x) * -.7), calc(var(--tilt-shift-y) * -.5), 0);transition:transform .12s linear;position:fixed;inset:0}.sticker-cloud{z-index:1;pointer-events:none;opacity:.42;filter:drop-shadow(0 24px 42px #00000052);transform:translate3d(calc(var(--tilt-shift-x) * -.35), calc(var(--tilt-shift-y) * -.25), 0);background:url(/generated/python-stickers-imagen.png) right -9vw bottom -13vw/min(72vw,920px) no-repeat,url(/generated/python-stickers-imagen.png) -28vw -17vw/min(60vw,720px) no-repeat;position:fixed;inset:0}.phase-challenge .scene-layer,.phase-calibration .scene-layer,.phase-booting .scene-layer{opacity:.78}.topbar,.mission-layout{z-index:2;position:relative}.topbar{padding:max(14px, env(safe-area-inset-top)) max(14px, env(safe-area-inset-right)) 10px max(14px, env(safe-area-inset-left));grid-template-columns:minmax(0,1fr);gap:12px;display:grid}.brand-lockup,.status-strip,.status-pill,.privacy-row,.section-kicker,.challenge-header,.timer-chip,.score-row,.poster-actions,.teacher-ribbon{align-items:center;display:flex}.brand-lockup{gap:12px;min-width:0}.brand-mark,.panel-icon{background:conic-gradient(from 210deg, var(--cyan), var(--gold), var(--coral), var(--blue), var(--cyan));color:#061016;border:1px solid #ffffff47;border-radius:8px;flex:none;place-items:center;display:grid;box-shadow:inset 0 0 0 1px #ffffff14,0 18px 42px #1cf0d52e}.brand-mark{width:42px;height:42px}.eyebrow,.section-kicker{color:var(--gold);letter-spacing:0;text-transform:uppercase;font-size:11px;font-weight:900}h1,h2,p{margin:0}h1{letter-spacing:0;overflow-wrap:anywhere;font-size:clamp(22px,7vw,40px);line-height:1.05}h2{letter-spacing:0;overflow-wrap:anywhere;max-width:11em;font-size:clamp(28px,8vw,48px);line-height:1.03}.status-strip{flex-wrap:wrap;gap:8px;min-width:0}.status-pill{border:1px solid var(--line);min-height:34px;color:var(--muted);white-space:nowrap;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffff13;border-radius:999px;gap:7px;min-width:0;padding:7px 10px;font-size:12px;font-weight:800}.status-pill.ready{color:#06130e;background:linear-gradient(135deg, var(--green), #e2ffd7);border-color:#7cf4a9b3}.mission-layout{width:100%;max-width:100vw;padding:4px max(14px, env(safe-area-inset-right)) max(18px, env(safe-area-inset-bottom)) max(14px, env(safe-area-inset-left));grid-template-columns:minmax(0,1fr);gap:12px;display:grid}.camera-stage,.control-panel{min-width:0}.camera-stage{gap:10px;display:grid}.camera-frame{height:clamp(280px,43svh,470px);min-height:270px;box-shadow:0 20px 60px var(--shadow), inset 0 0 0 1px #ffffff0f;transform:perspective(1200px) rotateX(var(--tilt-rot-x)) rotateY(var(--tilt-rot-y));transform-origin:50%;background:linear-gradient(135deg,#ffffff1a,#0000 34%),linear-gradient(#070a1033,#070a109e),url(/generated/python-stage-imagen.png) 50%/cover,linear-gradient(#070a10db,#0f141df5);border:1px solid #ffffff38;border-radius:8px;transition:transform .12s linear;position:relative;overflow:hidden}.camera-frame:after{content:"";z-index:1;pointer-events:none;opacity:.48;mix-blend-mode:screen;background:url(/generated/python-hud-imagen.png) 50%/contain no-repeat;position:absolute;inset:0}.camera-frame:before{content:"PYTHON";z-index:4;color:#ffffffdb;letter-spacing:0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#00000057;border:1px solid #ffffff24;border-radius:999px;padding:6px 8px;font-size:10px;font-weight:900;position:absolute;top:10px;left:10px}.camera-video,.camera-overlay{object-fit:cover;width:100%;height:100%;position:absolute;inset:0;transform:scaleX(-1)}.camera-video{opacity:0;filter:saturate(1.08)contrast(1.08);transition:opacity .26s}.camera-video.active{opacity:1}.phase-calibration .camera-video.active,.phase-challenge .camera-video.active,.phase-capture .camera-video.active{object-position:center 38%}.camera-overlay{z-index:2;pointer-events:none}.camera-placeholder{text-align:center;color:var(--muted);z-index:6;place-content:center;gap:10px;padding:24px;display:grid;position:absolute;inset:0}.camera-placeholder strong{color:var(--text);font-size:clamp(34px,10vw,62px);line-height:1}.start-in-camera{align-self:center;min-width:min(260px,72vw);font-size:19px}.camera-error{color:#ffd8de;max-width:min(300px,78vw);line-height:1.45}.scanner-line{z-index:3;opacity:.78;background:linear-gradient(90deg,#0000,#1cf0d5f0,#ffd05fdb,#0000);height:2px;animation:2.55s linear infinite scan;position:absolute;top:18%;left:-8%;right:-8%;box-shadow:0 0 22px #1cf0d5bf}.voxel-sparks{z-index:3;pointer-events:none;transform:translate3d(var(--tilt-shift-x), var(--tilt-shift-y), 0);position:absolute;inset:0;overflow:hidden}.voxel-sparks span{background:var(--gold);opacity:.35;border-radius:2px;width:7px;height:7px;animation:4.8s ease-in-out infinite voxelFloat;position:absolute;box-shadow:0 0 18px #ffd05fb8}.voxel-sparks span:nth-child(3n){background:var(--cyan);box-shadow:0 0 18px #1cf0d5ad}.voxel-sparks span:nth-child(4n){background:var(--coral);box-shadow:0 0 18px #ff5d799e}.voxel-sparks span:first-child{animation-delay:-.2s;top:18%;left:10%}.voxel-sparks span:nth-child(2){animation-delay:-1.1s;top:16%;left:72%}.voxel-sparks span:nth-child(3){animation-delay:-1.8s;top:34%;left:88%}.voxel-sparks span:nth-child(4){animation-delay:-2.4s;top:48%;left:16%}.voxel-sparks span:nth-child(5){animation-delay:-.6s;top:62%;left:82%}.voxel-sparks span:nth-child(6){animation-delay:-3s;top:76%;left:8%}.voxel-sparks span:nth-child(7){animation-delay:-2s;top:24%;left:56%}.voxel-sparks span:nth-child(8){animation-delay:-1.5s;top:70%;left:42%}.voxel-sparks span:nth-child(9){animation-delay:-3.6s;top:28%;left:25%}.voxel-sparks span:nth-child(10){animation-delay:-2.9s;top:80%;left:64%}.voxel-sparks span:nth-child(11){animation-delay:-.9s;top:78%;left:92%}.voxel-sparks span:nth-child(12){animation-delay:-2.7s;top:12%;left:34%}.voxel-sparks span:nth-child(13){animation-delay:-.4s;top:42%;left:50%}.voxel-sparks span:nth-child(14){animation-delay:-1.9s;top:36%;left:7%}.voxel-sparks span:nth-child(15){animation-delay:-3.2s;top:48%;left:74%}.voxel-sparks span:nth-child(16){animation-delay:-2.2s;top:86%;left:20%}.voxel-sparks span:nth-child(17){animation-delay:-1.4s;top:18%;left:46%}.voxel-sparks span:nth-child(18){animation-delay:-2.6s;top:18%;left:90%}.face-safe-guide,.hand-safe-guide{z-index:4;pointer-events:none;position:absolute}.face-safe-guide{aspect-ratio:.76;width:min(34%,178px);min-width:112px;transform:translateX(-50%) translate3d(calc(var(--tilt-shift-x) * .55), calc(var(--tilt-shift-y) * .45), 0);background:radial-gradient(at 50% 32%,#fff4b82e,#0000 58%),radial-gradient(at 50% 88%,#1cf0d521,#0000 60%);border:2px solid #fff4b8d1;border-radius:48% 48% 44% 44%;animation:1.9s ease-in-out infinite alternate guidePulse;top:8%;left:50%;box-shadow:0 0 24px #ffd05f5c,inset 0 0 20px #1cf0d529}.face-safe-guide:before,.face-safe-guide:after,.face-safe-guide span{content:"";border-color:#1cf0d5bd;position:absolute}.face-safe-guide:before{background:linear-gradient(90deg,#0000,#1cf0d5e6,#0000);border-radius:999px;height:3px;top:-10px;left:18%;right:18%;box-shadow:0 0 16px #1cf0d58c}.face-safe-guide:after{background:#fff4b8bd;border-radius:999px;width:42%;height:2px;bottom:12%;left:50%;transform:translate(-50%)}.face-safe-guide span{border-radius:inherit;border:1px dashed #ffffff70;inset:10px}.hand-safe-guide{opacity:.72;height:20%;transform:translate3d(calc(var(--tilt-shift-x) * .45), calc(var(--tilt-shift-y) * .36), 0);background:radial-gradient(at 18% 60%,#1cf0d51f,#0000 42%),radial-gradient(at 82% 60%,#ffd05f1a,#0000 42%);border-left:2px solid #1cf0d575;border-right:2px solid #ffd05f75;bottom:26%;left:8%;right:8%}.capture-count{z-index:6;color:#fff9d8;text-shadow:0 0 24px #ffd05fe6,0 10px 46px #000000a6;background:#00000057;place-items:center;font-size:clamp(98px,32vw,190px);font-weight:1000;display:grid;position:absolute;inset:0}.capture-count:after{content:"放下手 看镜头";color:#071016;background:linear-gradient(135deg, var(--gold), #fff0a2 54%, var(--cyan));width:max-content;max-width:calc(100% - 34px);text-shadow:none;border:1px solid #ffd05f94;border-radius:999px;padding:10px 14px;font-size:clamp(18px,5vw,30px);line-height:1.1;position:absolute;bottom:clamp(42px,10vh,92px);left:50%;transform:translate(-50%);box-shadow:0 0 34px #ffd05f52}.capture-clean .camera-overlay,.capture-clean .scanner-line,.capture-clean .voxel-sparks,.capture-clean .face-safe-guide,.capture-clean .hand-safe-guide,.capture-clean .camera-mini-readout{display:none}.capture-clean .camera-frame:after{opacity:.04}.capture-clean .capture-hud{background:linear-gradient(135deg,#ffd05f2e,#1cf0d524),#060a10b8;border-color:#ffd05f80}.answer-burst{z-index:7;pointer-events:none;mix-blend-mode:screen;place-items:center;display:grid;position:absolute;inset:0;overflow:hidden}.answer-burst:before,.answer-burst:after{content:"";border-radius:999px;position:absolute;top:48%;left:50%;transform:translate(-50%,-50%)}.answer-burst:before{aspect-ratio:1;border:2px solid #1cf0d5d1;width:min(74%,520px);animation:.98s ease-out both burstRing;box-shadow:0 0 34px #1cf0d585,inset 0 0 40px #ffd05f2e}.answer-burst:after{background:#fff9c7;width:18px;height:18px;animation:.52s ease-out both burstFlash;box-shadow:0 0 34px #fffffff2,0 0 80px #ffd05fb8}.burst-core{color:#061016;background:radial-gradient(circle at 38% 24%, #fff, #ffffff1a 26%), conic-gradient(from 220deg, var(--cyan), #e8ff84, var(--gold), var(--coral), var(--cyan));border:1px solid #ffffff9e;border-radius:999px;place-items:center;min-width:118px;min-height:118px;animation:.9s cubic-bezier(.17,.98,.22,1) both burstCore;display:grid;box-shadow:0 0 42px #1cf0d59e,0 26px 56px #0006}.burst-core strong{text-align:center;max-width:5.2em;font-size:clamp(20px,6vw,34px);font-weight:1000;line-height:1.02}.answer-burst span{--x:0px;--y:0px;--rot:0deg;--scale:1;background:linear-gradient(180deg, #fff, var(--gold));transform-origin:50%;border-radius:999px;width:8px;height:24px;animation:1.08s cubic-bezier(.16,.8,.24,1) both fireworkParticle;position:absolute;top:48%;left:50%;box-shadow:0 0 18px #ffd05fc7}.answer-burst span:nth-of-type(3n){background:linear-gradient(180deg, #fff, var(--cyan));box-shadow:0 0 18px #1cf0d5c7}.answer-burst span:nth-of-type(4n){background:linear-gradient(180deg, #fff, var(--coral));box-shadow:0 0 18px #ff5d79b8}.answer-burst span:first-of-type{--x:-198px;--y:-106px;--rot:310deg;--scale:1.16;animation-delay:0s}.answer-burst span:nth-of-type(2){--x:-136px;--y:-156px;--rot:338deg;--scale:.92;animation-delay:18ms}.answer-burst span:nth-of-type(3){--x:-58px;--y:-190px;--rot:356deg;--scale:1.08;animation-delay:30ms}.answer-burst span:nth-of-type(4){--x:26px;--y:-184px;--rot:18deg;--scale:.86;animation-delay:42ms}.answer-burst span:nth-of-type(5){--x:108px;--y:-154px;--rot:38deg;--scale:1.18;animation-delay:12ms}.answer-burst span:nth-of-type(6){--x:186px;--y:-100px;--rot:62deg;--scale:.96;animation-delay:28ms}.answer-burst span:nth-of-type(7){--x:222px;--y:-20px;--rot:86deg;--scale:1.08;animation-delay:52ms}.answer-burst span:nth-of-type(8){--x:196px;--y:64px;--rot:112deg;--scale:.94;animation-delay:20ms}.answer-burst span:nth-of-type(9){--x:132px;--y:126px;--rot:134deg;--scale:1.18;animation-delay:38ms}.answer-burst span:nth-of-type(10){--x:52px;--y:166px;--rot:164deg;--scale:.9;animation-delay:48ms}.answer-burst span:nth-of-type(11){--x:-36px;--y:174px;--rot:194deg;--scale:1.1;animation-delay:8ms}.answer-burst span:nth-of-type(12){--x:-116px;--y:134px;--rot:220deg;--scale:.95;animation-delay:36ms}.answer-burst span:nth-of-type(13){--x:-186px;--y:74px;--rot:246deg;--scale:1.14;animation-delay:56ms}.answer-burst span:nth-of-type(14){--x:-222px;--y:-12px;--rot:274deg;--scale:.88;animation-delay:24ms}.answer-burst span:nth-of-type(15){--x:-102px;--y:-76px;--rot:314deg;--scale:.72;animation-delay:68ms}.answer-burst span:nth-of-type(16){--x:-8px;--y:-112px;--rot:4deg;--scale:.78;animation-delay:78ms}.answer-burst span:nth-of-type(17){--x:96px;--y:-72px;--rot:48deg;--scale:.82;animation-delay:62ms}.answer-burst span:nth-of-type(18){--x:116px;--y:44px;--rot:112deg;--scale:.76;animation-delay:74ms}.answer-burst span:nth-of-type(19){--x:12px;--y:106px;--rot:176deg;--scale:.86;animation-delay:88ms}.answer-burst span:nth-of-type(20){--x:-106px;--y:46px;--rot:238deg;--scale:.8;animation-delay:70ms}.answer-burst span:nth-of-type(21){--x:248px;--y:116px;--rot:128deg;--scale:.72;animation-delay:46ms}.answer-burst span:nth-of-type(22){--x:-248px;--y:108px;--rot:232deg;--scale:.72;animation-delay:50ms}.answer-burst.wrong:before,.answer-burst.timeout:before{border-color:#ff5d79d1;box-shadow:0 0 30px #ff5d7994,inset 0 0 34px #ffd05f1a}.answer-burst.wrong .burst-core,.answer-burst.timeout .burst-core{color:#fff;background:radial-gradient(circle at 35% 22%,#ffffffe6,#0000 24%),conic-gradient(from 220deg,#ff5d79,#ffbf61,#b71035,#ff5d79);box-shadow:0 0 42px #ff5d79a3,0 26px 56px #0006}.answer-burst.wrong span,.answer-burst.timeout span{background:linear-gradient(#fff2f5,#ff5d79);animation-name:warningShard;box-shadow:0 0 18px #ff5d79b8}.answer-burst.level .burst-core{min-width:104px;min-height:104px;animation-duration:.76s}.answer-burst.level span{width:6px;height:18px;animation-duration:.82s}.camera-mini-readout{z-index:6;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);transform:translate3d(calc(var(--tilt-shift-x) * -.5), calc(var(--tilt-shift-y) * -.5), 0);background:#05080c94;border:1px solid #ffffff2e;border-radius:8px;align-items:center;gap:8px;padding:8px 9px;display:flex;position:absolute;top:12px;right:12px;box-shadow:0 14px 34px #0000003d}.camera-mini-readout div:first-child{gap:1px;display:grid}.camera-mini-readout span,.camera-mini-readout small,.hud-kicker{color:#ffffffb8;letter-spacing:0;text-transform:uppercase;font-size:10px;font-weight:900}.camera-mini-readout strong{color:var(--gold);font-size:26px;line-height:.95}.camera-mini-readout small{text-align:right;min-width:32px}.mini-hold{--hold:0%;background:conic-gradient(var(--cyan), var(--gold) var(--hold), #ffffff26 0);border-radius:999px;width:36px;height:36px;padding:4px}.mini-hold span{border-radius:inherit;background:#0c1118;height:100%;display:block}.camera-hud{z-index:5;pointer-events:none;transform:translate3d(calc(var(--tilt-shift-x) * -.75), calc(var(--tilt-shift-y) * -.6), 0);flex-direction:column;justify-content:flex-end;gap:10px;padding:12px;display:flex;position:absolute;inset:0}.hud-status-row,.hud-answer-grid,.hud-gesture-row{gap:8px;display:grid}.hud-status-row{grid-template-columns:auto auto auto;justify-content:space-between;align-items:center;margin-top:auto}.hud-chip,.hud-timer,.hud-gesture-row span{color:#ffffffdb;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#070a1094;border:1px solid #ffffff29;border-radius:999px;justify-content:center;align-items:center;gap:6px;min-height:30px;padding:6px 9px;font-size:12px;font-weight:950;display:inline-flex}.hud-timer{color:#07100e;background:linear-gradient(135deg, var(--gold), #fff3b8);border-color:#ffd05fcc}.hud-timer.danger{color:#fff;background:linear-gradient(135deg, var(--coral), #a70f35);border-color:#ff5d79c7;animation:.52s ease-in-out infinite alternate urgent}.hud-question-card{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:linear-gradient(135deg,#ffffff29,#0000 38%),#060a10ad;border:1px solid #ffffff2e;border-radius:8px;gap:10px;padding:13px;display:grid;box-shadow:0 18px 46px #00000057,inset 0 -3px #ffffff0f}.hud-question-card h2{max-width:none;margin-top:4px;font-size:clamp(22px,7vw,38px)}.hud-question-card p{color:#ffffffd6;font-size:clamp(15px,4.2vw,22px);font-weight:850;line-height:1.38}.hud-question-card .hold-instruction,.hold-instruction{color:#fff7d7;background:#ffd05f1a;border:1px solid #ffd05f42;border-radius:8px;margin:0;padding:8px 10px;font-size:clamp(13px,3.4vw,16px);font-weight:900;line-height:1.35}.hud-answer-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.hud-answer-grid span{background:#ffffff14;border:1px solid #ffffff29;border-radius:8px;place-items:center;min-width:0;min-height:58px;padding:6px;transition:transform .14s,border-color .14s,background .14s;display:grid;box-shadow:inset 0 -3px #0000003d}.hud-answer-grid b{color:#061016;background:linear-gradient(135deg, var(--cyan), var(--gold));border-radius:8px;place-items:center;width:42px;height:42px;font-size:24px;font-weight:1000;display:grid}.hud-answer-grid span.active{background:#1cf0d52e;border-color:#1cf0d5db;transform:translateY(-2px)scale(1.02);box-shadow:0 0 24px #1cf0d547,inset 0 -3px #0000003d}.hud-answer-grid span.correct{background:#7cf4a933;border-color:#7cf4a9e6}.hud-feedback{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#060a10bd;border:1px solid #ffffff2e;border-radius:8px;gap:2px;padding:10px 12px;animation:.22s both popIn;display:grid}.challenge-hud,.challenge-panel{animation:.42s cubic-bezier(.18,.9,.2,1) both questionArrive}.hud-feedback strong{font-size:18px}.hud-feedback span{color:#ffffffc2;font-size:13px}.hud-feedback.correct{background:#125f36ad;border-color:#7cf4a9bd}.hud-feedback.wrong,.hud-feedback.timeout{background:#6c1226b8;border-color:#ff5d79c2}.calibration-hud,.lucky-hud,.capture-hud{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#060a10ad;border:1px solid #ffffff2e;border-radius:8px;padding:13px;inset:auto 12px 12px}.calibration-hud strong,.capture-hud strong{font-size:clamp(26px,8vw,42px);line-height:1}.capture-hud span{color:#ffffffbd;font-weight:800}.hud-gesture-row{grid-template-columns:repeat(5,minmax(0,1fr))}.hud-gesture-row span.current{color:#061016;background:linear-gradient(135deg, var(--gold), #fff3b8);border-color:#ffd05fcc}.hud-gesture-row span.done{color:#061016;background:linear-gradient(135deg, var(--green), #ddffde);border-color:#7cf4a9d1}.recognition-console{border:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#0c1017c7;border-radius:8px;grid-template-columns:minmax(86px,auto) 62px minmax(0,1fr);align-items:center;gap:10px;padding:12px;display:grid;box-shadow:0 14px 34px #00000042}.gesture-readout{gap:2px;min-width:92px;display:grid}.gesture-readout span,.score-row span{color:var(--muted);font-size:12px;font-weight:800}.gesture-readout strong{color:var(--gold);font-size:34px;line-height:1}.gesture-readout small{color:var(--muted);font-weight:800}.hold-meter{--hold:0%;background:conic-gradient(var(--cyan), var(--gold) var(--hold), #ffffff24 0);border-radius:999px;width:58px;height:58px;padding:5px;box-shadow:0 0 22px #1cf0d53d,inset 0 0 0 1px #ffffff29}.hold-meter span{border-radius:inherit;background:linear-gradient(#ffffff14,#0000),#0b1016;border:1px solid #ffffff1f;height:100%;display:block}.recognition-console p{color:var(--muted);overflow-wrap:anywhere;font-size:13px;line-height:1.45}.gesture-strip{grid-column:1/-1;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;display:grid}.gesture-strip span{color:#ffffffb8;background:linear-gradient(#ffffff1f,#ffffff09),#171d27;border:1px solid #ffffff2e;border-radius:8px;place-items:center;min-width:0;min-height:42px;font-size:18px;font-weight:1000;transition:transform .16s,background .16s,color .16s;display:grid;box-shadow:inset 0 -4px #0000003d,0 8px 18px #0000002e}.gesture-strip span.active{color:#061016;background:linear-gradient(135deg, var(--gold), var(--cyan));border-color:#ffd05fcc;transform:translateY(-2px);box-shadow:inset 0 -4px #0000002e,0 0 22px #1cf0d547}.control-panel{border:1px solid var(--line);background:linear-gradient(180deg, #ffffff14, transparent 30%), var(--panel);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);border-radius:8px;overflow:hidden;box-shadow:0 22px 68px #00000057}.panel-content{flex-direction:column;gap:16px;min-height:100%;padding:clamp(18px,5vw,30px);display:flex;position:relative}.intro-panel{background:linear-gradient(#070a1057,#070a10d1),url(/generated/python-poster-imagen.png) 50%/cover,linear-gradient(90deg,#f7f3e814,#0000 42%),linear-gradient(#1cf0d50f,#0000 54%)}.intro-panel:after{content:"";color:#ffffff0e;pointer-events:none;font-size:clamp(76px,28vw,132px);font-weight:1000;line-height:.8;position:absolute;bottom:10px;right:16px}.gesture-cue{color:#061016;background:linear-gradient(135deg, var(--gold), var(--cyan));border-radius:999px;width:max-content;max-width:100%;padding:8px 10px;font-weight:950;display:inline-flex}.panel-icon{width:56px;height:56px}.lead{color:var(--muted);overflow-wrap:anywhere;font-size:15px;line-height:1.62}.intro-highlights{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.intro-highlights span,.teacher-ribbon,.privacy-row{border:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff13;border-radius:8px}.intro-highlights span{color:#fff;align-items:center;min-height:54px;padding:10px;font-size:14px;font-weight:900;display:grid}.intro-highlights span:first-child{border-color:#1cf0d55c}.intro-highlights span:nth-child(2){border-color:#ffd05f61}.intro-highlights span:nth-child(3){border-color:#7cf4a957}.intro-highlights span:nth-child(4){border-color:#ff5d7957}.teacher-ribbon{color:#ffffffd1;gap:9px;padding:12px;font-size:13px;line-height:1.45}.primary-action,.secondary-action{cursor:pointer;border:0;border-radius:8px;justify-content:center;align-items:center;gap:10px;min-height:50px;font-size:15px;font-weight:950;transition:transform .16s,filter .16s,opacity .16s,box-shadow .16s;display:inline-flex}.primary-action{color:#06100e;background:linear-gradient(135deg, var(--cyan), #e7ff95 52%, var(--gold));box-shadow:0 14px 36px #1cf0d53d}.secondary-action{color:var(--text);border:1px solid var(--line-strong);background:#ffffff14}.primary-action:hover,.secondary-action:hover{filter:brightness(1.08);transform:translateY(-1px)}.primary-action:active,.secondary-action:active{transform:translateY(1px)scale(.99)}.primary-action:disabled{cursor:not-allowed;opacity:.42;filter:none;box-shadow:none;transform:none}.privacy-row{color:#ffffffbd;background:#7cf4a916;border-color:#7cf4a942;gap:10px;padding:12px;font-size:13px;line-height:1.5}.alert-box{color:#ffe0e6;background:#ff5d791f;border:1px solid #ff5d7966;border-radius:8px;align-items:flex-start;gap:10px;padding:12px;line-height:1.45;display:flex}.boot-panel{text-align:center;justify-content:center;align-items:center;min-height:320px}.loading-orbit{border:3px solid #ffffff29;border-top-color:var(--cyan);border-right-color:var(--gold);border-bottom-color:var(--coral);border-radius:999px;width:96px;height:96px;animation:1s linear infinite rotate}.section-kicker{gap:8px}.calibration-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid}.calibration-cell{border:1px solid var(--line);min-height:72px;color:var(--muted);background:#ffffff13;border-radius:8px;justify-content:center;align-items:center;gap:6px;font-size:clamp(22px,7vw,30px);font-weight:1000;display:flex}.calibration-cell.current{color:var(--ink);background:linear-gradient(135deg, var(--gold), #fff6ba);border-color:#ffd05fe0;box-shadow:0 0 28px #ffd05f52}.calibration-cell.done{color:#06100e;background:linear-gradient(135deg, var(--green), #dcffde);border-color:#7cf4a9b8}.challenge-panel{gap:14px}.challenge-header{justify-content:space-between;gap:14px}.level-chip,.timer-chip{white-space:nowrap;border-radius:999px;font-weight:950}.level-chip{color:#07100e;background:var(--gold);margin-bottom:9px;padding:7px 10px;font-size:12px;display:inline-flex}.timer-chip{min-width:90px;color:var(--text);border:1px solid var(--line-strong);background:#ffffff17;justify-content:center;gap:8px;padding:10px 12px;font-size:18px}.timer-chip.danger{color:#fff;background:#ff5d7957;border-color:#ff5d79b3;animation:.56s ease-in-out infinite alternate urgent}.time-track{background:#ffffff1f;border-radius:999px;height:12px;overflow:hidden}.time-track span{border-radius:inherit;background:linear-gradient(90deg, var(--green), var(--gold), var(--coral));height:100%;transition:width 80ms linear;display:block}.question-prompt{overflow-wrap:anywhere;font-size:clamp(20px,5.6vw,30px);font-weight:950;line-height:1.34}.answer-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;display:grid}.answer-tile{border:1px solid var(--line);background:linear-gradient(90deg,#ffffff1f,#ffffff0a),#ffffff0b;border-radius:8px;place-items:center;min-height:74px;padding:10px;transition:transform .16s,border-color .16s,background .16s,box-shadow .16s;display:grid;position:relative;overflow:hidden}.answer-tile:after{content:"";opacity:0;background:linear-gradient(100deg,#0000 0%,#ffffff24 42%,#0000 58%);position:absolute;inset:0;transform:translate(-120%)}.answer-tile.active{background:linear-gradient(90deg,#1cf0d52e,#ffd05f1a),#ffffff14;border-color:#1cf0d5b8;transform:translateY(-1px);box-shadow:0 0 26px #1cf0d538}.answer-tile.active:after{opacity:1;animation:.9s sweep}.answer-tile.correct{background:linear-gradient(90deg,#7cf4a933,#ffd05f1a),#ffffff14;border-color:#7cf4a9bd}.answer-gesture{width:52px;height:52px;color:var(--ink);background:linear-gradient(135deg, var(--cyan), var(--gold));border-radius:999px;place-items:center;font-size:30px;font-weight:1000;display:grid}.score-row{justify-content:space-between;gap:8px}.score-row div{border:1px solid var(--line);background:#fff1;border-radius:8px;flex:1 1 0;gap:4px;min-width:0;padding:10px;display:grid}.score-row strong{color:var(--gold);font-size:22px;line-height:1.05}.feedback{border:1px solid var(--line);border-radius:8px;gap:4px;padding:13px;display:grid}.feedback strong{font-size:20px}.feedback span{color:#ffffffb8}.feedback.correct{background:#7cf4a91f;border-color:#7cf4a985}.feedback.wrong,.feedback.timeout{background:#ff5d7921;border-color:#ff5d7985}.photo-toggle{color:var(--text);cursor:pointer;align-items:center;gap:10px;font-weight:850;display:flex}.photo-toggle input{width:20px;height:20px;accent-color:var(--cyan)}.poster-actions{flex-direction:column;align-items:stretch;gap:10px}.lucky-guide,.poster-help,.poster-lightbox-tip{color:#fff7d7d1;margin:0;font-size:13px;font-weight:850;line-height:1.45}.lucky-guide,.poster-help{background:#ffd05f1a;border:1px solid #ffd05f42;border-radius:8px;padding:10px 12px}.flow-guide{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;width:100%;display:grid}.flow-step{color:#ffffffb8;background:#ffffff12;border:1px solid #ffffff2e;border-radius:8px;grid-template-columns:26px minmax(0,1fr);align-items:center;gap:6px;min-width:0;min-height:40px;padding:7px 8px;font-size:clamp(12px,3.3vw,14px);font-weight:950;line-height:1.05;display:grid}.flow-step b{color:#071016;background:#ffffffb8;border-radius:999px;place-items:center;width:26px;height:26px;font-size:14px;display:grid}.flow-step.active{color:#071016;background:linear-gradient(135deg, var(--gold), #fff0a2 48%, var(--cyan));border-color:#ffd05fb3;animation:.86s ease-in-out infinite alternate actionGlow;box-shadow:0 0 26px #ffd05f47}.flow-step.active b{color:#fff;background:#071016}.flow-step.done{color:#06130e;background:linear-gradient(135deg, var(--green), #ddffde);border-color:#7cf4a999}.camera-float-note{color:#ebfffbf2;background:#1cf0d51f;border:1px solid #1cf0d557;border-radius:8px;margin:0;padding:11px 12px;font-size:clamp(14px,3.8vw,16px);font-weight:900;line-height:1.42}.next-action{min-height:58px;font-size:clamp(18px,5vw,24px);animation:.78s ease-in-out infinite alternate actionGlow}.share-mega{background:linear-gradient(135deg,#ffd05f47,#1cf0d529,#ff5d7938),#ffffff14;border:2px solid #ffd05f8f;border-radius:8px;gap:10px;padding:14px;animation:.98s ease-in-out infinite alternate sharePulse;display:grid;box-shadow:0 0 34px #ffd05f3d,inset 0 0 0 1px #ffffff29}.share-mega span{color:#071016;background:linear-gradient(135deg, var(--cyan), var(--gold));border-radius:999px;width:max-content;padding:5px 9px;font-size:13px;font-weight:1000}.share-mega strong{color:#fff;text-shadow:0 8px 28px #0000006b;font-size:clamp(34px,9vw,52px);line-height:1}.share-mega b{color:#fff1b5;font-size:clamp(22px,6vw,34px);line-height:1.14}.share-open-action{min-height:56px;font-size:clamp(16px,4.5vw,21px);animation:.78s ease-in-out infinite alternate actionGlow}.slot-machine{aspect-ratio:1.6;filter:drop-shadow(0 28px 52px #00000075);align-self:center;place-items:center;width:min(100%,560px);display:grid;position:relative;transform:perspective(900px)rotateX(3deg)}.slot-machine img{object-fit:contain;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.slot-reels{pointer-events:none;grid-template-columns:repeat(3,minmax(0,1fr));gap:5.5%;height:31%;display:grid;position:absolute;top:32%;left:23%;right:20%;overflow:hidden}.slot-reel{gap:8px;animation:.68s cubic-bezier(.2,.86,.18,1) both reelSettle;display:grid;transform:translateY(-8%)}.slot-machine.spinning .slot-reel{animation:.48s linear infinite reelSpin}.slot-reel span{color:#061016;background:linear-gradient(135deg,#fbfff0,#ffe575 52%,#43f5dc);border-radius:8px;place-items:center;min-height:38px;font-size:clamp(12px,2.8vw,18px);font-weight:1000;display:grid;box-shadow:inset 0 -3px #0000002e,0 0 16px #1cf0d547}.lucky-result{opacity:.72;background:linear-gradient(135deg,#ffd05f2e,#1cf0d514),#ffffff0e;border:1px solid #ffd05f57;border-radius:8px;gap:6px;padding:13px;display:grid}.lucky-result.visible{opacity:1;animation:.24s both popIn;box-shadow:0 0 28px #ffd05f38}.lucky-result.compact{padding:10px}.lucky-result span,.lucky-inline{color:#ffffffb8;font-size:13px;font-weight:850}.lucky-result strong{color:#fff7d7;font-size:clamp(17px,4.5vw,24px);line-height:1.35}.poster-thumb{border:1px solid #ffffff3d;border-radius:8px;align-self:center;width:min(100%,280px);box-shadow:0 18px 48px #0000006b}.poster-open{color:#ffffffb8;cursor:pointer;font:inherit;background:0 0;border:0;align-self:center;justify-items:center;gap:8px;padding:0;display:grid}.poster-open span{font-size:13px;font-weight:850}.poster-lightbox{z-index:20;padding:max(14px, env(safe-area-inset-top)) max(14px, env(safe-area-inset-right)) max(14px, env(safe-area-inset-bottom)) max(14px, env(safe-area-inset-left));-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#04070ce0;place-items:center;gap:10px;display:grid;position:fixed;inset:0}.poster-lightbox-tip{text-align:center;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:linear-gradient(135deg,#ffd05f3d,#ff5d792e),#070a10c2;border:1px solid #ffd05f66;border-radius:8px;max-width:min(92vw,430px);padding:13px 14px;font-size:clamp(17px,5vw,24px);font-weight:1000;animation:.98s ease-in-out infinite alternate sharePulse}.poster-lightbox img{border:1px solid #ffffff3d;border-radius:8px;max-width:min(92vw,430px);max-height:82svh;box-shadow:0 28px 70px #00000094}.poster-lightbox-bar{top:max(14px, env(safe-area-inset-top));left:max(14px, env(safe-area-inset-left));right:max(14px, env(safe-area-inset-right));z-index:21;justify-content:space-between;gap:12px;display:flex;position:fixed}.icon-action{width:auto;min-height:42px;padding:10px 14px}.hidden-canvas{display:none}.performance-safe{background:linear-gradient(#070a1080,#070a10b8),url(/generated/python-stage-imagen.png) 50%/cover,linear-gradient(160deg,#090c12 0%,#111722 48%,#15101a 100%)}.performance-safe:after{opacity:.22;display:block}.performance-safe .static-scene{opacity:.62;background:linear-gradient(#060a121a,#060a1270),url(/generated/python-stage-imagen.png) 50%/cover,linear-gradient(120deg,#0000 20%,#ffffff0e 49%,#0000 54%);transform:none}.performance-safe .camera-frame{background:linear-gradient(135deg,#ffffff1a,#0000 34%),linear-gradient(#070a102e,#070a109e),url(/generated/python-stage-imagen.png) 50%/cover,linear-gradient(#070a10db,#0f141df5);transform:none}.performance-safe .camera-frame:after{opacity:.42;display:block}.performance-safe .voxel-sparks{display:none}.performance-safe .status-pill,.performance-safe .control-panel,.performance-safe .recognition-console,.performance-safe .camera-frame:before,.performance-safe .camera-hud{-webkit-backdrop-filter:none;backdrop-filter:none}.performance-safe .scene-layer,.performance-safe .camera-frame{transition:none}@keyframes scan{0%{transform:translateY(-24svh)}to{transform:translateY(68svh)}}@keyframes rotate{to{transform:rotate(360deg)}}@keyframes urgent{0%{box-shadow:0 0 #ff5d791f}to{box-shadow:0 0 28px #ff5d7985}}@keyframes guidePulse{0%{opacity:.74;box-shadow:0 0 18px #ffd05f47,inset 0 0 16px #1cf0d51f}to{opacity:1;box-shadow:0 0 30px #ffd05f6b,inset 0 0 24px #1cf0d533}}@keyframes voxelFloat{0%,to{opacity:.18;transform:translate(0,0)rotate(0)scale(.9)}50%{opacity:.58;transform:translate(10px,-18px)rotate(45deg)scale(1.25)}}@keyframes sweep{to{transform:translate(120%)}}@keyframes sharePulse{0%{transform:translateY(0)scale(1);box-shadow:0 0 22px #ffd05f2e,inset 0 0 0 1px #ffffff1f}to{transform:translateY(-2px)scale(1.012);box-shadow:0 0 42px #ffd05f6b,0 0 28px #1cf0d533,inset 0 0 0 1px #ffffff38}}@keyframes actionGlow{0%{filter:saturate()}to{filter:saturate(1.3)brightness(1.08)}}@keyframes reelSpin{0%{transform:translateY(-8%)}to{transform:translateY(-72%)}}@keyframes reelSettle{0%{filter:blur(1px);transform:translateY(-54%)}to{filter:blur();transform:translateY(-8%)}}@keyframes popIn{0%{opacity:0;transform:translateY(12px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes questionArrive{0%{opacity:0;filter:saturate(1.2)brightness(1.16);transform:translateY(12px)scale(.985)}to{opacity:1;filter:saturate()brightness();transform:translateY(0)scale(1)}}@keyframes burstCore{0%{opacity:0;transform:scale(.52)rotate(-6deg)}18%{opacity:1}54%{opacity:1;transform:scale(1.08)rotate(2deg)}to{opacity:0;transform:scale(.86)rotate(0)}}@keyframes burstRing{0%{opacity:0;transform:translate(-50%,-50%)scale(.16)}18%{opacity:.92}to{opacity:0;transform:translate(-50%,-50%)scale(1.18)}}@keyframes burstFlash{0%{opacity:0;transform:translate(-50%,-50%)scale(.2)}18%{opacity:.95;transform:translate(-50%,-50%)scale(1)}to{opacity:0;transform:translate(-50%,-50%)scale(3.4)}}@keyframes fireworkParticle{0%{transform:translate(-50%, -50%) scale(.18) rotate(var(--rot));opacity:0}16%{opacity:1}to{transform:translate(calc(-50% + var(--x)), calc(-50% + var(--y))) scale(var(--scale)) rotate(calc(var(--rot) + 220deg));opacity:0}}@keyframes warningShard{0%{transform:translate(-50%, -50%) scale(.24) rotate(var(--rot));opacity:0}14%{opacity:1}42%{opacity:.95}to{transform:translate(calc(-50% + var(--x)), calc(-50% + var(--y))) scale(var(--scale)) rotate(calc(var(--rot) - 160deg));opacity:0}}@keyframes impactCorrect{0%{transform:translate(0,0)scale(1)}38%{transform:translateY(-3px)scale(1.012)}to{transform:translate(0,0)scale(1)}}@keyframes impactWrong{0%,to{transform:translate(0,0)}18%{transform:translate(-5px,2px)}36%{transform:translate(6px,-2px)}54%{transform:translate(-4px,1px)}72%{transform:translate(3px)}}.impact-correct .camera-frame{animation:.52s cubic-bezier(.2,.9,.2,1) impactCorrect}.impact-wrong .camera-frame,.impact-timeout .camera-frame{animation:.62s cubic-bezier(.36,.07,.19,.97) impactWrong}.impact-level .camera-frame,.impact-capture .camera-frame{animation:.42s cubic-bezier(.2,.9,.2,1) impactCorrect}@media (width>=700px){.topbar{grid-template-columns:minmax(0,1fr) auto;align-items:center;padding:22px clamp(22px,4vw,56px) 12px}.status-strip{justify-content:flex-end}.mission-layout{padding:10px clamp(22px,4vw,56px) 32px}.answer-tile{min-height:78px}}@media (width>=1040px){.mission-layout{grid-template-columns:minmax(0,1.24fr) minmax(370px,.76fr);gap:clamp(16px,3vw,28px);min-height:calc(100svh - 98px)}.camera-stage{grid-template-rows:minmax(410px,1fr) auto}.camera-frame{height:auto;min-height:410px}.control-panel{min-height:100%}}.phase-lucky .mission-layout{grid-template-columns:minmax(0,1fr);justify-items:center}.phase-lucky .control-panel{justify-self:center;width:min(720px,100%)}.phase-lucky .camera-stage{top:max(78px, calc(env(safe-area-inset-top) + 72px));right:max(14px, env(safe-area-inset-right));z-index:18;pointer-events:none;grid-template-rows:minmax(0,1fr);gap:0;width:min(30vw,190px);min-width:138px;max-width:190px;position:fixed}.phase-lucky .camera-frame{background:#070a10;border-color:#ffd05f9e;width:100%;height:clamp(96px,18vw,126px);min-height:0;box-shadow:0 18px 46px #0000007a,0 0 0 2px #ffd05f33,inset 0 0 0 1px #ffffff24}.phase-lucky .camera-video.active{opacity:.96;object-position:center 36%}.phase-lucky .camera-overlay{opacity:.58}.phase-lucky .scanner-line,.phase-lucky .voxel-sparks,.phase-lucky .lucky-hud,.phase-lucky .camera-mini-readout,.phase-lucky .camera-stage>.recognition-console{display:none}.phase-lucky .camera-frame:after{opacity:.08}.phase-lucky .camera-frame:before{content:"摄像头";z-index:6;color:#071016;background:linear-gradient(135deg, var(--gold), var(--cyan));border-color:#ffffff61}@media (width<=620px){.brand-mark{width:38px;height:38px}.status-strip{grid-template-columns:minmax(0,1fr);width:100%;display:grid}.status-pill{white-space:normal;text-align:center;justify-content:center;padding-inline:8px}.camera-frame{height:clamp(275px,42svh,390px)}.camera-stage,.camera-frame,.recognition-console,.control-panel{width:min(100%,100vw - 28px);max-width:calc(100vw - 28px)}.recognition-console{grid-template-columns:minmax(80px,1fr) 58px}.recognition-console p,.gesture-strip{grid-column:1/-1}.gesture-strip{grid-template-columns:minmax(0,1fr);display:grid}.hold-meter{width:54px;height:54px}.calibration-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.calibration-cell{min-height:60px}.challenge-header{flex-direction:column;align-items:flex-start}.timer-chip{width:max-content}.score-row{align-items:stretch}.score-row strong{font-size:20px}}@media (width<=390px){.topbar,.mission-layout{padding-inline:10px}.status-pill{font-size:11px}.intro-highlights{grid-template-columns:1fr}.score-row{flex-direction:column}}@media (height<=720px) and (width<=620px){.camera-frame{height:38svh;min-height:236px}.panel-content{gap:12px}}@media (width<=760px){.topbar{padding:max(8px, env(safe-area-inset-top)) 10px 6px;gap:6px}.status-strip,.eyebrow{display:none}.brand-mark{width:32px;height:32px}h1{font-size:26px}.phase-intro .control-panel,.phase-intro .camera-stage>.recognition-console,.phase-intro .camera-mini-readout,.camera-stage>.recognition-console{display:none}.phase-calibration .camera-frame:after,.phase-challenge .camera-frame:after,.phase-capture .camera-frame:after{opacity:.08}.phase-challenge .topbar,.phase-calibration .topbar,.phase-capture .topbar{gap:6px}.phase-challenge .brand-mark,.phase-calibration .brand-mark,.phase-capture .brand-mark{width:32px;height:32px}.phase-challenge .eyebrow,.phase-calibration .eyebrow,.phase-capture .eyebrow,.phase-challenge .status-strip,.phase-calibration .status-strip,.phase-capture .status-strip{display:none}.phase-challenge h1,.phase-calibration h1,.phase-capture h1{font-size:19px}.phase-challenge .mission-layout,.phase-calibration .mission-layout,.phase-capture .mission-layout{padding:4px 8px max(8px, env(safe-area-inset-bottom))}.phase-challenge .control-panel,.phase-calibration .control-panel,.phase-capture .control-panel,.phase-challenge .camera-stage>.recognition-console,.phase-calibration .camera-stage>.recognition-console,.phase-capture .camera-stage>.recognition-console{display:none}.phase-challenge .camera-stage,.phase-calibration .camera-stage,.phase-capture .camera-stage{width:calc(100vw - 16px);max-width:calc(100vw - 16px)}.phase-challenge .camera-frame,.phase-calibration .camera-frame,.phase-capture .camera-frame{width:calc(100vw - 16px);max-width:calc(100vw - 16px);height:calc(100dvh - 62px);min-height:0}.phase-calibration .camera-video.active,.phase-challenge .camera-video.active,.phase-capture .camera-video.active{object-position:center 34%}.face-safe-guide{width:min(42vw,174px);min-width:108px;top:max(42px,7dvh)}.phase-capture .face-safe-guide{width:min(50vw,220px)}.hand-safe-guide{opacity:.58;height:18%;bottom:30%;left:7%;right:7%}.camera-mini-readout{max-width:calc(100% - 18px);padding:7px;inset:auto auto 9px 9px;transform:none}.phase-challenge .camera-mini-readout,.phase-calibration .camera-mini-readout,.phase-capture .camera-mini-readout{inset:9px auto auto 9px}.camera-mini-readout small{display:none}.camera-frame:before{white-space:nowrap;text-overflow:ellipsis;max-width:44%;top:9px;left:9px;overflow:hidden}.phase-challenge .camera-frame:before,.phase-calibration .camera-frame:before,.phase-capture .camera-frame:before{display:none}.challenge-hud{justify-content:flex-end;padding:max(42dvh,220px) 10px 10px}.phase-calibration .hud-gesture-row{display:none}.phase-calibration .calibration-hud,.phase-capture .capture-hud{right:10px;bottom:max(10px, env(safe-area-inset-bottom));padding:12px;left:10px}.phase-calibration .calibration-hud strong,.phase-capture .capture-hud strong{font-size:clamp(24px,8vw,36px)}.phase-lucky .mission-layout{padding:4px 8px max(10px, env(safe-area-inset-bottom));gap:8px}.phase-lucky .control-panel{width:calc(100vw - 16px);max-width:calc(100vw - 16px)}.phase-lucky .camera-stage{top:max(54px, calc(env(safe-area-inset-top) + 48px));right:max(8px, env(safe-area-inset-right));width:min(36vw,150px);min-width:116px;max-width:150px}.phase-lucky .camera-frame{height:clamp(82px,25vw,108px);min-height:0}.phase-lucky .camera-video.active{opacity:.96}.phase-lucky .camera-overlay{opacity:.42;display:block}.phase-lucky .camera-frame:after{opacity:.06}.phase-lucky .camera-frame:before{content:"摄像头"}.phase-lucky .lucky-hud{display:none}.phase-lucky .lucky-hud strong{font-size:clamp(16px,4.8vw,22px);line-height:1.2}.phase-lucky .lucky-hud span{font-size:12px}.phase-lucky .panel-content{gap:10px;padding:116px 12px 12px}.phase-lucky .lucky-panel h2{font-size:clamp(22px,6.5vw,30px)}.phase-lucky .slot-machine{width:min(100%,330px);margin-block:-4px}.phase-lucky .slot-reel span{min-height:28px;font-size:11px}.hud-status-row{margin-top:0}.hud-question-card{gap:8px;max-height:min(42dvh,350px);padding:10px;overflow:hidden}.hud-question-card h2{margin-top:2px;font-size:clamp(18px,5.5vw,28px)}.hud-question-card p{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:clamp(13px,3.8vw,18px);display:-webkit-box;overflow:hidden}.hud-answer-grid span{min-height:50px;padding:7px}.hud-answer-grid b{width:36px;height:36px;font-size:21px}}@media (width<=410px){.camera-mini-readout{transform-origin:0 100%;transform:scale(.88)}.phase-challenge .camera-mini-readout,.phase-calibration .camera-mini-readout,.phase-capture .camera-mini-readout{transform-origin:0 0}.hud-status-row{grid-template-columns:1fr auto}.hud-status-row .hud-chip:last-child{grid-column:1/-1}.hud-answer-grid{gap:6px}.hud-answer-grid span{min-height:50px;padding:7px}.hud-answer-grid b{width:34px;height:34px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}
