.sc-page{color:#e9f2ff;background:radial-gradient(at 80% 0,#252044 0,#0000 55%),#090e1b;min-height:100dvh;padding:22px 18px 40px;font-size:16px}.sc-shell{max-width:780px;margin:auto}.sc-page button,.sc-nav a{color:#eff7ff;font:inherit;cursor:pointer;background:#172137;border:1px solid #3a4967;border-radius:10px;min-height:46px;padding:12px 18px;transition:background .16s,transform .16s,border-color .16s}.sc-page button:hover:not(:disabled),.sc-nav a:hover{background:#283953;border-color:#8eafff;transform:translateY(-2px)}.sc-page button:active:not(:disabled){transform:scale(.97)}:is(.sc-page button:focus-visible,.sc-nav a:focus-visible){outline-offset:3px;outline:3px solid #83f0ff}.sc-page button:disabled{opacity:.4;cursor:not-allowed}.sc-page button.sc-primary{color:#0b2438;background:#91e9f4;border-color:#a9f6ff;font-weight:750}.sc-nav{letter-spacing:.08em;align-items:center;gap:14px;margin-bottom:26px;font-size:14px;display:flex}.sc-nav a{padding:10px 15px;font-size:24px;line-height:1;text-decoration:none}.sc-nav b{color:#b1a0ed}.sc-nav>button{margin-left:auto;font-size:14px}.sc-eyebrow{color:#a9b4d7;letter-spacing:.19em;margin:0 0 9px;font-size:13px}.sc-title{text-align:center;max-width:590px;margin:20px auto}.sc-title h1{letter-spacing:.09em;margin:22px 0 16px;font-size:clamp(46px,10vw,76px);font-weight:800;line-height:.98}.sc-title h1 span{color:#a698f3}.sc-tagline{letter-spacing:.15em;color:#d0d8ef;font-size:12px}.sc-cover{object-fit:cover;border:1px solid #343d66;border-radius:18px;width:100%;max-height:270px;margin:16px 0}.sc-title-actions{justify-content:center;gap:12px;margin:22px 0;display:flex}.sc-title-actions button{min-width:160px}.sc-title small{color:#a2adca;font-size:13px}.sc-help{text-align:left;background:#151d33;border:1px solid #3b4665;border-radius:14px;padding:22px 22px 22px 46px;line-height:1.9}.sc-select h1{margin:8px 0;font-size:32px}.sc-select>p{color:#b1bfd9}.sc-stage-list{grid-template-columns:repeat(3,1fr);gap:12px;margin:26px 0;display:grid}.sc-stage-list button{text-align:left;flex-direction:column;gap:9px;min-height:136px;display:flex}.sc-stage-list button>span{color:#92ebf7;font-size:26px}.sc-stage-list b{font-size:14px}.sc-stage-list small{color:#c0c9dc;font-size:13px}.sc-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.sc-heading h1{letter-spacing:.04em;margin:0;font-size:clamp(18px,4vw,28px)}.sc-time{color:#aab8d1;text-align:right;white-space:nowrap;font-size:12px}.sc-time b{color:#fff;font-variant-numeric:tabular-nums;font-size:20px;display:block}.sc-objective{color:#cbd5e9;margin:14px 0;font-size:15px;line-height:1.65}.sc-status{color:#b0bdd8;justify-content:space-between;gap:12px;font-size:12px;display:flex}.sc-status b{color:#eff7ff;font-variant-numeric:tabular-nums;margin-left:7px}.sc-status .is-recording{color:#ffa5d5}.sc-record-track{background:#283048;border-radius:8px;height:4px;margin:10px 0 15px;overflow:hidden}.sc-record-track i{background:#bc9cff;height:100%;transition:width .18s linear;display:block}.sc-board{isolation:isolate;background:#0c1526;border:1px solid #526080;border-radius:14px;position:relative;overflow:hidden}.sc-grid{grid-auto-rows:1fr;display:grid;position:absolute;inset:0}.sc-cell{border:1px solid #24314b;place-items:center;min-width:0;display:grid;position:relative}.sc-cell small{color:#899cbb;font-size:clamp(8px,1.7vw,11px)}.sc-wall{background:linear-gradient(135deg,#26354b,#1a2234);border-color:#111b2b;box-shadow:inset 0 3px #354460,inset 0 -4px #101b2d}.sc-switch:before{content:"";background:#322a51;border:2px solid #8274c7;border-radius:8px;position:absolute;inset:22%}.sc-switch>span{color:#e1d7ff;font-size:clamp(12px,2.7vw,19px);font-weight:800;position:relative}.sc-switch.active:before{background:#6950a3;border-color:#d4b7ff;box-shadow:0 0 18px #bda0ed66}.sc-door{background:repeating-linear-gradient(90deg,#533650 0 5px,#36233d 5px 10px);border:2px solid #a574a5;transition:background .15s,border-color .15s}.sc-door span{text-align:center;text-shadow:0 1px 4px #000;font-size:clamp(10px,2vw,17px);font-weight:700}.sc-door small{color:#ffcadb;display:block}.sc-door.open{background:#153d43;border-color:#72dcca}.sc-door.open small{color:#9cf5e5}.sc-goal{background:#113c46;box-shadow:inset 0 0 22px #32bfd133}.sc-goal>span{text-align:center;color:#9fffff;font-size:clamp(20px,5vw,38px);line-height:.9}.sc-goal small{color:#baf9ff;margin-top:5px;font-size:9px;display:block}.sc-actor{pointer-events:none;z-index:3;width:5.2%;height:6.7%;transition:left .15s linear,top .15s linear;position:absolute;transform:translate(-50%,-50%)}.sc-actor i{background:#b1f4fa;border:2px solid #edffff;border-radius:5px;width:100%;height:100%;display:block;transform:rotate(45deg);box-shadow:0 0 15px #72e6ff99}.sc-actor small{color:#12364a;place-items:center;font-size:clamp(8px,1.5vw,11px);font-weight:900;display:grid;position:absolute;inset:0}.sc-clone{z-index:2;opacity:.72;animation:.45s ease-out sc-summon}.sc-clone i{background:#9374df;border:2px solid #d6baff;box-shadow:-5px 6px #9a72da33,-10px 12px #9a72da15,0 0 18px #b397ff77}.sc-clone small{color:#fff}.sc-clone.blocked{opacity:.3}.sc-player.recording i{animation:1s infinite sc-record;box-shadow:0 0 0 5px #ec9fff33,0 0 20px #e0aeff}.sc-hazard{z-index:2;background:#ae354f;border:2px solid #ff99a6;border-radius:50%;place-items:center;width:6%;height:7.7%;font-size:24px;line-height:1;transition:left .18s linear,top .18s linear;display:grid;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 16px #eb4f7655}.sc-legend{color:#a8b9d1;flex-wrap:wrap;gap:14px;margin:10px 0;font-size:12px;display:flex}.sc-legend span:nth-child(2){color:#c1a4f1}.sc-message{color:#d1d8ee;min-height:2.8em;margin:10px 0;font-size:14px;line-height:1.5}.sc-controls{justify-content:space-between;align-items:center;gap:24px;display:flex}.sc-dpad{touch-action:none;grid-template-rows:repeat(2,46px);grid-template-columns:repeat(3,52px);gap:5px;display:grid}.sc-dpad button{-webkit-user-select:none;user-select:none;touch-action:none;padding:4px;font-size:23px}.sc-up{grid-column:2}.sc-left{grid-area:2/1}.sc-down{grid-area:2/2}.sc-right{grid-area:2/3}.sc-action-buttons{flex:1;grid-template-columns:1fr 1fr;gap:10px;display:grid}.sc-action-buttons button{min-height:54px;padding:15px 8px;font-size:15px}.sc-action-buttons .sc-recording-button{background:#62304d;border-color:#f3a0cb}.sc-clone-status{color:#c5a9ed;border-top:1px solid #293653;flex-wrap:wrap;align-items:center;gap:12px;margin-top:18px;padding-top:12px;font-size:13px;display:flex}.sc-clone-status button{min-height:38px;margin-left:auto;padding:8px 10px;font-size:13px}.sc-tools{flex-wrap:wrap;gap:8px;margin-top:20px;display:flex}.sc-tools button{background:0 0;padding:8px 12px;font-size:14px}.sc-hint{background:#1e233c;border-left:3px solid #b197e2;padding:12px 16px;font-size:14px;line-height:1.7}.sc-overlay{z-index:5;text-align:center;background:#0a1029ed;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:20px;animation:.25s ease-out sc-arrive;display:flex;position:absolute;inset:0}.sc-overlay h2{color:#c8faff;letter-spacing:.08em;margin:0;font-size:clamp(23px,6vw,42px)}.sc-overlay p{margin:4px}.sc-results{color:#aebbd8;gap:30px;margin:12px 0 20px;font-size:12px;display:flex}.sc-results b{color:#fff;margin-top:5px;font-size:20px;display:block}.sc-result{box-shadow:inset 0 0 75px #5353ab40}.sc-result .sc-eyebrow{font-size:10px}.sc-cleared{border-color:#a2f3f2}@keyframes sc-summon{0%{opacity:0;filter:blur(9px)}to{opacity:.72;filter:none}}@keyframes sc-record{50%{filter:brightness(1.3)}}@keyframes sc-arrive{0%{opacity:0}to{opacity:1}}@media (max-width:520px){.sc-page{padding:12px 12px 30px}.sc-nav{margin-bottom:18px;font-size:11px}.sc-nav>button{padding:8px;font-size:12px}.sc-stage-list{grid-template-columns:repeat(2,1fr)}.sc-controls{gap:12px}.sc-dpad{grid-template-rows:repeat(2,44px);grid-template-columns:repeat(3,44px);gap:3px}.sc-dpad button{min-height:44px}.sc-action-buttons{grid-template-columns:1fr;gap:5px}.sc-action-buttons button{min-height:44px;padding:8px;font-size:14px}.sc-results{gap:20px;margin:8px 0}.sc-overlay{gap:8px;padding:12px}.sc-overlay button{min-height:40px;padding:8px 12px;font-size:14px}.sc-title-actions{flex-direction:column}.sc-status{font-size:10px}.sc-status b{margin-left:4px}.sc-time b{font-size:17px}}@media (prefers-reduced-motion:reduce){.sc-page *{transition:none!important;animation:none!important}}
