*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;height:100%;overflow:hidden;background:#04030d;color:#dde0f8;font-family:Courier New,Courier,monospace;user-select:none;-webkit-tap-highlight-color:transparent}[hidden]{display:none!important}body:before{content:"";position:fixed;inset:0;background:radial-gradient(ellipse 80% 55% at 50% 100%,rgba(0,200,100,.06) 0%,transparent 70%),linear-gradient(180deg,#04030d,#060818 40%,#080b1a);pointer-events:none}body:after{content:"";position:fixed;inset:0;background-image:linear-gradient(rgba(0,255,120,.024) 1px,transparent 1px),linear-gradient(90deg,rgba(0,255,120,.024) 1px,transparent 1px);background-size:44px 44px;pointer-events:none}.wh-overlay{position:fixed;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:20px;z-index:100}.wh-full{position:fixed;inset:0;display:flex;flex-direction:column;align-items:center;overflow:hidden}.wh-logo-wrap{text-align:center;margin-bottom:6px}.wh-logo-icon{font-size:clamp(3.5rem,14vw,5.5rem);display:block;filter:drop-shadow(0 0 18px #00ff88) drop-shadow(0 0 40px #00ff8840);animation:wh-icon-float 3s ease-in-out infinite}@keyframes wh-icon-float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.wh-logo{font-size:clamp(2rem,9vw,3.4rem);font-weight:900;letter-spacing:.16em;background:linear-gradient(135deg,#0f8,#0dc,#09f);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;filter:drop-shadow(0 0 18px #00ff8855)}.wh-tagline{font-size:clamp(.65rem,2.8vw,.82rem);color:#2a6040;letter-spacing:.18em;text-transform:uppercase;margin-top:5px}.wh-btn{position:relative;padding:clamp(13px,3vw,17px) clamp(30px,9vw,50px);font-family:inherit;font-size:clamp(.85rem,3.4vw,1.05rem);font-weight:900;letter-spacing:.14em;color:#04030d;background:linear-gradient(135deg,#0f8,#0da);border:none;border-radius:4px;cursor:pointer;overflow:hidden;box-shadow:0 0 14px #0f86,0 0 32px #00ff8830,inset 0 1px #ffffff59;transition:transform .12s,box-shadow .18s;margin-top:6px}.wh-btn:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.3) 0%,transparent 55%);pointer-events:none}.wh-btn:after{content:"";position:absolute;left:-60%;top:-10%;width:40%;height:120%;background:#ffffff38;transform:skew(-22deg);transition:left .45s ease}.wh-btn:hover:after{left:130%}.wh-btn:hover{transform:translateY(-2px);box-shadow:0 0 28px #0f8a,0 6px 20px #0006}.wh-btn:active{transform:scale(.96)}.wh-btn-secondary{background:transparent;color:#0f8;border:1px solid #00ff8840;box-shadow:0 0 10px #00ff8818}.wh-btn-secondary:hover{background:#00ff8814;box-shadow:0 0 18px #0f84}.wh-best{font-size:.78rem;color:gold;letter-spacing:.06em;min-height:1.2em;text-shadow:0 0 10px #ffd70055}.wh-diff-wrap{display:flex;align-items:center;gap:10px;font-size:.78rem;color:#2a6040}.wh-diff-wrap select{font-family:inherit;font-size:.78rem;background:#0a0a1e;color:#0f8;border:1px solid #00ff8828;padding:6px 12px;border-radius:4px;cursor:pointer;outline:none;box-shadow:0 0 8px #00ff8814}.wh-link{font-size:.74rem;color:#1e3a2a;text-decoration:none;letter-spacing:.06em;transition:color .2s}.wh-link:hover{color:#0f8}#wh-hud{width:100%;height:52px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(14px,4vw,30px);background:#04030df2;border-bottom:1px solid rgba(0,255,136,.12);box-shadow:0 2px 18px #00000080;flex-shrink:0;z-index:10;position:relative}#wh-hud:after{content:"";position:absolute;bottom:-1px;left:10%;right:10%;height:1px;background:linear-gradient(90deg,transparent,#00ff8866,transparent)}#wh-mute-btn{background:none;border:1px solid rgba(0,255,136,.25);border-radius:6px;color:#0f8;font-size:1rem;cursor:pointer;padding:3px 8px;line-height:1;transition:background .2s,border-color .2s}#wh-mute-btn:hover{background:#00ff881f;border-color:#0f89}#wh-level-badge{font-size:.76rem;font-weight:900;letter-spacing:.14em;color:#0f8;text-shadow:0 0 10px #00ff8866;min-width:64px}#wh-lives{display:flex;gap:7px;align-items:center}.wh-life{width:16px;height:16px;border-radius:3px;background:linear-gradient(135deg,#f45,#c12);box-shadow:0 0 9px #f346,inset 0 1px #ff96964d;transition:all .3s}.wh-life.lost{background:#18080d;box-shadow:none;opacity:.25}.wh-life.flash{animation:wh-life-flash .35s ease-out}@keyframes wh-life-flash{0%{transform:scale(2.2)}to{transform:scale(1)}}#wh-money{font-size:.92rem;font-weight:900;background:linear-gradient(90deg,gold,#fa0);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;filter:drop-shadow(0 0 8px #ffd70044);min-width:90px;text-align:right}#wh-timer-track{width:100%;height:5px;background:#080814;flex-shrink:0;position:relative}#wh-timer-fill{height:100%;width:100%;background:linear-gradient(90deg,#0f8,#0dc);transform-origin:left;transition:background .5s;box-shadow:0 0 8px currentColor}#wh-prompt-wrap{margin-top:clamp(16px,4.5vh,40px);text-align:center;flex-shrink:0;position:relative}#wh-prompt-label{font-size:clamp(.56rem,2vw,.7rem);letter-spacing:.22em;color:#1e4030;margin-bottom:7px}#wh-prompt-word{font-size:clamp(2rem,9vw,3.2rem);font-weight:900;letter-spacing:.07em;background:linear-gradient(135deg,#0f8,#0eb);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;filter:drop-shadow(0 0 20px #00ff8866)}#wh-prompt-word.pop{animation:wh-pop .24s cubic-bezier(.3,0,0,1.5)}@keyframes wh-pop{0%{transform:scale(1.22)}to{transform:scale(1)}}#wh-combo{font-size:clamp(.68rem,2.6vw,.84rem);font-weight:900;letter-spacing:.1em;min-height:1.3em;margin-top:5px;background:linear-gradient(90deg,gold,#fa0);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;filter:drop-shadow(0 0 10px #ffd70050)}#wh-doors{display:flex;flex-wrap:wrap;gap:clamp(16px,4.5vw,40px);justify-content:center;align-items:center;margin-top:clamp(16px,3.5vh,34px);padding:0 16px;width:100%}.wh-door{position:relative;width:clamp(140px,24vw,198px);height:clamp(170px,29vw,240px);background:none!important;border:none!important;outline:none!important;padding:0;cursor:pointer;touch-action:manipulation;perspective:1100px;-webkit-appearance:none;appearance:none}.wh-door:before{content:"";position:absolute;inset:-4px;border-radius:10px;box-shadow:0 0 16px #00ff882e,0 0 38px #00ff8812;transition:box-shadow .3s;pointer-events:none;z-index:10}.wh-door:hover:not(.open):not(.wrong):before{box-shadow:0 0 28px #00ff888c,0 0 60px #0f83}.wh-door.open:before{box-shadow:0 0 36px #0f88,0 0 80px #00ff8830}.wh-door.wrong:before{box-shadow:0 0 30px #f348,0 0 60px #f342}.wh-door.shake{animation:wh-shake .44s ease-out}@keyframes wh-shake{0%,to{transform:translate(0)}15%{transform:translate(-9px) rotate(-1deg)}35%{transform:translate(9px) rotate(1deg)}55%{transform:translate(-6px)}75%{transform:translate(5px)}}.wh-safe-wall{position:absolute;inset:0;border-radius:8px;background:linear-gradient(160deg,#111120,#0a0a16,#060610);border:3px solid #1a1a30;box-shadow:inset 0 0 0 5px #0e0e20,inset 3px 3px 12px #000000e6,0 10px 40px #000000e6,0 3px 10px #0009}.wh-safe-wall:after{content:"";position:absolute;inset:3px;border-radius:5px;background:repeating-linear-gradient(0deg,transparent 0px,transparent 4px,rgba(255,255,255,.015) 4px,rgba(255,255,255,.015) 5px)}.wh-safe-door{position:absolute;inset:0;transform-style:preserve-3d;transform-origin:left center;transition:transform .78s cubic-bezier(.35,0,.1,1)}.wh-door.open .wh-safe-door{transform:rotateY(-72deg)}.wh-door-face{position:absolute;inset:0;border-radius:7px;background:linear-gradient(160deg,#2d2d50,#202040 18%,#181830,#141428,#111120 78%,#0d0d1a);border:2px solid #28284a;box-shadow:inset 1px 2px #ffffff14,inset -1px -2px #0000008c,inset 2px 0 8px #0006,3px 3px 16px #000000b3;overflow:visible;backface-visibility:hidden}.wh-door-face:before{content:"";position:absolute;inset:0;border-radius:6px;background:repeating-linear-gradient(90deg,transparent 0px,transparent 6px,rgba(255,255,255,.011) 6px,rgba(255,255,255,.011) 7px)}.wh-door-face:after{content:"";position:absolute;top:0;left:0;right:0;height:42%;border-radius:7px 7px 0 0;background:linear-gradient(170deg,rgba(255,255,255,.07) 0%,transparent 100%)}.wh-door.open .wh-door-face{border-color:#0f86}.wh-door.wrong .wh-door-face{border-color:#f346}.wh-hinge{position:absolute;left:-6px;z-index:2;width:clamp(11px,2.2vw,17px);height:clamp(20px,4vw,32px);background:linear-gradient(90deg,#22223a,#44447a 30%,#5a5a9a,#44447a 70%,#22223a);border:1px solid rgba(120,120,190,.45);border-radius:3px;box-shadow:2px 0 8px #000000b3,inset 0 1px #ffffff26,inset 0 -1px #0006}.wh-hinge:after{content:"";position:absolute;left:25%;right:25%;top:50%;transform:translateY(-50%);height:3px;border-radius:2px;background:#00ff884d;box-shadow:0 0 4px #00ff8880}.wh-hinge:nth-child(1){top:14%}.wh-hinge:nth-child(2){bottom:14%}.wh-bolt-row{position:absolute;right:-4px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:clamp(5px,1.2vw,9px);z-index:2}.wh-bolt-bar{width:clamp(7px,1.4vw,11px);height:clamp(20px,4vw,30px);border-radius:2px 4px 4px 2px;background:linear-gradient(90deg,#666,#aaa 35%,#ddd,#aaa 65%,#666);border:1px solid rgba(200,200,220,.3);box-shadow:2px 1px 6px #000000b3,inset 0 1px #fff6,inset 0 -1px #0000004d;transition:transform .55s cubic-bezier(.4,0,.2,1),background .4s}.wh-door.open .wh-bolt-bar{transform:translate(clamp(10px,2vw,16px));background:linear-gradient(90deg,#363,#6a6 35%,#8d8,#6a6 65%,#363);box-shadow:2px 1px 6px #000000b3,0 0 8px #00ff6466}.wh-door.wrong .wh-bolt-bar{background:linear-gradient(90deg,#633,#a55 35%,#d77,#a55 65%,#633)}.wh-wheel{position:absolute;width:clamp(58px,11.5vw,84px);height:clamp(58px,11.5vw,84px);top:44%;left:50%;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle at 37% 30%,#3e3e6e,#28285a 22%,#1a1a42 48%,#101030 72%,#080820);border:2px solid rgba(140,140,220,.45);box-shadow:0 0 0 4px #080818e6,0 0 0 6px #00ff882e,0 5px 18px #000000d9,inset 0 2px 8px #ffffff12,inset 0 -2px 8px #0009;transition:transform .8s cubic-bezier(.2,0,.08,1.1),box-shadow .35s}.wh-door.open .wh-wheel{transform:translate(-50%,-50%) rotate(310deg);box-shadow:0 0 0 4px #080818e6,0 0 0 6px #00ff88b3,0 0 24px #0f86,0 5px 18px #000000d9}.wh-door.wrong .wh-wheel{box-shadow:0 0 0 4px #080818e6,0 0 0 6px #f349,0 0 18px #f346,0 5px 18px #000000d9}.wh-wtick{position:absolute;left:calc(50% - 1.5px);width:3px;border-radius:1.5px;transform-origin:50% 500%}.wh-wtick.major{height:26%;top:3%;background:#0f89;box-shadow:0 0 4px #00ff8880}.wh-wtick.minor{height:14%;top:4%;background:#8c8cd259}.wh-whandle{position:absolute;left:calc(50% - 4px);top:5%;width:8px;height:34%;background:linear-gradient(90deg,#44448a,#88c 40%,#44448a);border-radius:2px;transform-origin:50% 100%;box-shadow:0 0 6px #00ff884d}.wh-whandle:before{content:"";position:absolute;top:0;left:-7px;width:22px;height:7px;background:linear-gradient(180deg,#66a,#33336a);border-radius:3px}.wh-wcenter{position:absolute;width:30%;height:30%;top:35%;left:35%;border-radius:50%;background:radial-gradient(circle at 32% 32%,#abf,#1a1a5a 60%,#0a0a2e);border:2px solid rgba(120,120,200,.5);box-shadow:0 0 0 3px #08081a,0 0 10px #00ff8859;transition:background .35s,box-shadow .35s}.wh-door.open .wh-wcenter{background:radial-gradient(circle at 32% 32%,#0f8,#042);box-shadow:0 0 0 3px #08081a,0 0 14px #0f8}.wh-door.wrong .wh-wcenter{background:radial-gradient(circle at 32% 32%,#f34,#401);box-shadow:0 0 0 3px #08081a,0 0 12px #f34}.wh-door-plate{position:absolute;bottom:clamp(10px,2.2vw,18px);left:50%;transform:translate(-50%);width:82%;padding:clamp(5px,1vw,8px) clamp(8px,1.6vw,14px);border-radius:5px;background:linear-gradient(165deg,#1e1e3c,#131328,#1a1a32);border:1px solid rgba(0,255,136,.32);box-shadow:0 2px 10px #000000a6,inset 0 1px #ffffff14,inset 0 -1px #00000073,0 0 14px #00ff8817;transition:border-color .3s,box-shadow .3s}.wh-door:hover:not(.open):not(.wrong) .wh-door-plate{border-color:#00ff88bf;box-shadow:0 2px 10px #000000a6,inset 0 1px #ffffff1a,0 0 26px #00ff884d}.wh-door.open .wh-door-plate{border-color:#0f8;box-shadow:0 0 18px #0f85}.wh-door.wrong .wh-door-plate{border-color:#f34;box-shadow:0 0 16px #f345}.wh-door-word{display:block;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:clamp(.78rem,2.8vw,1.06rem);font-weight:900;letter-spacing:.1em;color:#bcc0e8;transition:color .3s}.wh-door:hover:not(.open):not(.wrong) .wh-door-word{color:#0f8}.wh-door.open .wh-door-word{color:#0f8}.wh-door.wrong .wh-door-word{color:#f45}.wh-door-inside{position:absolute;inset:0;border-radius:7px;background:radial-gradient(ellipse 70% 60% at 50% 50%,#042,#021,#000c08);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px}.wh-inside-icon{font-size:clamp(2rem,6vw,3.2rem);opacity:0;transition:opacity .35s ease .48s;filter:drop-shadow(0 0 12px #ffd70077)}.wh-door.open .wh-inside-icon{opacity:1}.wh-loot{font-size:clamp(.8rem,2.9vw,1.1rem);font-weight:900;letter-spacing:.05em;color:gold;text-shadow:0 0 14px #ffd700aa;opacity:0;pointer-events:none;transition:opacity .35s ease .55s}.wh-door.open .wh-loot{opacity:1}#wh-level-banner{position:fixed;inset:0;display:flex!important;align-items:center;justify-content:center;pointer-events:none;z-index:60}.wh-banner-inner{text-align:center;padding:28px 48px;background:#04030de0;border:1px solid rgba(0,255,136,.3);border-radius:8px;box-shadow:0 0 60px #0f83;animation:wh-banner-in .38s cubic-bezier(.3,0,0,1.5),wh-banner-out .38s ease-in 1.55s forwards}@keyframes wh-banner-in{0%{opacity:0;transform:scale(.55)}to{opacity:1;transform:scale(1)}}@keyframes wh-banner-out{0%{opacity:1}to{opacity:0;transform:scale(1.1)}}#wh-banner-title{font-size:clamp(2.4rem,12vw,5rem);font-weight:900;letter-spacing:.16em;background:linear-gradient(135deg,#0f8,#0dc);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;filter:drop-shadow(0 0 22px #00ff8877)}#wh-banner-sub{font-size:clamp(.72rem,3vw,.96rem);letter-spacing:.12em;color:#1e6040;margin-top:8px}.wh-over-card{background:#080814e6;border:1px solid rgba(255,51,68,.3);border-radius:12px;padding:32px 40px;text-align:center;box-shadow:0 0 50px #ff334426;display:flex;flex-direction:column;gap:14px;align-items:center}.wh-over-icon{font-size:clamp(2.5rem,10vw,4rem)}.wh-over-title{font-size:clamp(1.2rem,5vw,1.9rem);font-weight:900;letter-spacing:.12em;color:#f34;text-shadow:0 0 22px #ff334866}.wh-over-score{font-size:clamp(2.8rem,13vw,5.5rem);font-weight:900;background:linear-gradient(135deg,gold,#fa0);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;filter:drop-shadow(0 0 20px #ffd70055);line-height:1}.wh-over-detail{display:flex;gap:20px;font-size:.8rem;color:#1e4030;letter-spacing:.06em;align-items:center}.wh-over-best{color:gold;text-shadow:0 0 8px #ffd70044}#wh-alarm{position:fixed;inset:0;pointer-events:none;z-index:200}#wh-alarm.flash-red{animation:wh-alarm-red .55s ease-out forwards}#wh-alarm.flash-green{animation:wh-alarm-green .45s ease-out forwards}@keyframes wh-alarm-red{0%{background:#ff33444d}to{background:transparent}}@keyframes wh-alarm-green{0%{background:#00ff8824}to{background:transparent}}.wh-float{position:fixed;pointer-events:none;font-family:Courier New,monospace;font-size:clamp(1rem,4vw,1.4rem);font-weight:900;letter-spacing:.04em;z-index:150;animation:wh-float-up 1s cubic-bezier(0,0,.2,1) forwards}@keyframes wh-float-up{0%{opacity:1;transform:translateY(0) scale(1.2)}70%{opacity:1;transform:translateY(-52px) scale(1)}to{opacity:0;transform:translateY(-76px) scale(.85)}}
