@font-face{font-family:Corpid;src:url('../assets/My Collection/CorpidOffice Bold.ttf')}
@font-face{font-family:Matisse;src:url('../assets/My Collection/Fonts/MatissePro B.otf')}
*{box-sizing:border-box}
html,body{width:100%;height:100%;margin:0;overflow:hidden;background:#030107}
body{display:grid;place-items:center;color:#fff;font-family:Corpid,Arial,sans-serif;background:radial-gradient(circle at 50% 25%,#39114b,#030107 70%)}
button,a{font:inherit}
main{width:min(100vw,160vh);max-width:1440px;padding:12px 22px 18px}
header{height:88px;display:grid;grid-template-columns:220px 1fr 250px;align-items:center;padding:8px 22px;background:linear-gradient(#f5f5fb,#c5b3d2 70%,#654c76);border:2px solid #e6d078;color:#321342;box-shadow:0 8px 26px #000b}
header>a{justify-self:start;padding:12px 18px;background:linear-gradient(#7d3697,#3d1357);border:2px solid #f3ddff;color:#fff;text-decoration:none}
header>div{text-align:center}header small{color:#7b368e;letter-spacing:.24em;font-size:10px}header h1{margin:5px 0 0;font:32px Matisse,serif;letter-spacing:.08em}
header aside{justify-self:end;display:grid;grid-template-columns:52px 1fr;grid-template-rows:1fr 1fr;align-items:center;min-width:215px;padding:7px 13px;background:#f4eef7;border:2px solid #7b628b}
header aside img{grid-row:1/3;width:46px;height:46px;image-rendering:pixelated}header aside span{font-size:9px;letter-spacing:.15em;color:#744486}header aside b{font-size:22px}
.current-frame{position:relative;width:100%;aspect-ratio:16/9;margin-top:12px;overflow:hidden;border:3px solid #e8cd6c;outline:2px solid #6c307c;background:#09030e;box-shadow:0 14px 45px #000d}
canvas{display:block;width:100%;height:100%;image-rendering:pixelated;outline:0}
.current-hud{position:absolute;z-index:3;top:15px;left:18px;right:18px;display:flex;justify-content:space-between;text-align:center;text-shadow:2px 2px #000;pointer-events:none}
.current-hud>div{min-width:170px;padding:8px 15px;background:linear-gradient(90deg,transparent,#160822dc 18% 82%,transparent)}
.current-hud span{display:block;color:#d2a4e8;font-size:9px;letter-spacing:.2em}.current-hud b{display:block;margin-top:4px;color:#fff0a1;font-size:20px}.current-hud .timer b{font-size:28px}
.overlay{position:absolute;z-index:7;inset:0;display:grid;place-items:center;align-content:center;padding:35px;text-align:center;background:linear-gradient(#100318bf,#030108f2),radial-gradient(circle,#71198755,transparent 55%);opacity:0;visibility:hidden;transition:.25s}
.overlay.visible{opacity:1;visibility:visible}.overlay small{color:#dfa5f3;letter-spacing:.32em}.overlay h2{margin:13px 0;color:#fff0b0;font:40px/1.2 Matisse,serif;text-shadow:0 0 24px #d23cff}.overlay p{max-width:700px;margin:0 0 22px;color:#decfe4;font:18px/1.5 Georgia,serif}
.legend{display:flex;gap:12px;margin-bottom:24px}.legend span{padding:8px 12px;background:#160921;border:1px solid #6d3a79;color:#bda9c5;font-size:10px}.legend b{color:#ffe37e}
.overlay button,.actions a{min-width:220px;padding:13px 22px;border:2px solid #ffed9e;background:linear-gradient(135deg,#ffc83e,#cf3c68 48%,#621572);color:#fff;text-decoration:none;cursor:pointer}
.reward{display:grid;grid-template-columns:68px auto;grid-template-rows:1fr 1fr;align-items:center;margin:0 0 23px;padding:9px 26px;background:#11051c;border:2px solid #e3c66d}.reward img{grid-row:1/3;width:58px;height:58px;image-rendering:pixelated}.reward span{color:#ffe27c;font-size:30px}.reward b{font-size:10px;letter-spacing:.2em}.actions{display:flex;gap:12px}.actions a{display:grid;place-items:center;background:linear-gradient(#633175,#29113c)}
.pause{position:absolute;z-index:6;left:50%;top:50%;transform:translate(-50%,-50%);padding:18px 38px;background:#09030de8;border:2px solid #f1d26e;letter-spacing:.25em;font-size:26px;opacity:0}.pause.visible{opacity:1}
.touch-controls{display:none;position:absolute;z-index:5;left:18px;right:18px;bottom:17px;justify-content:space-between;pointer-events:none}.touch-controls button{width:64px;height:64px;border-radius:50%;border:2px solid #e0b9ef;background:#351044c9;color:#fff;pointer-events:auto;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.touch-controls button[data-control=dash]{margin-left:auto;margin-right:12px;width:76px;border-color:#ffe187;background:#7f2358d4;font-size:10px}
footer{display:flex;justify-content:space-between;padding:10px 8px 0;color:#966daa;font-size:9px;letter-spacing:.16em}
@media(pointer:coarse),(max-width:800px){main{width:100vw;padding:0}header{height:62px;grid-template-columns:90px 1fr 110px;padding:5px 7px}header>a{padding:8px;font-size:9px}header h1{font-size:18px}header small{font-size:6px}header aside{min-width:0;grid-template-columns:34px 1fr;padding:3px 5px}header aside img{width:30px;height:30px}header aside span{font-size:6px}header aside b{font-size:14px}.current-frame{margin:0;border-width:2px}.touch-controls{display:flex}.current-hud{top:7px;left:7px;right:7px}.current-hud>div{min-width:90px;padding:4px}.current-hud span{font-size:6px}.current-hud b{font-size:13px}.current-hud .timer b{font-size:18px}.overlay{padding:18px}.overlay h2{font-size:27px}.overlay p{font-size:14px}.legend{display:none}footer{display:none}}
@media(max-height:650px){header{height:58px}.current-frame{width:min(100%,calc((100vh - 60px)*16/9));margin:0 auto}footer{display:none}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
