@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;600;700&display=swap";:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box;margin:0;padding:0}html,body{color:#f3f4f6;-webkit-font-smoothing:antialiased;background:#0a0804;width:100%;height:100%;font-family:Outfit,Consolas,Courier New,monospace;overflow:hidden}#app{flex-direction:column;justify-content:center;align-items:center;width:100vw;height:100vh;padding:24px;display:flex;position:relative}.hud-bar{-webkit-backdrop-filter:blur(12px);pointer-events:none;z-index:20;background:#1a140899;border:1px solid #ffffff14;border-radius:16px;justify-content:space-between;align-items:center;width:100%;max-width:480px;margin-bottom:20px;padding:14px 28px;transition:opacity .3s;display:flex;box-shadow:0 10px 30px #0006}.hud-bar.hidden{display:none}.hud-bar__moves,.hud-bar__size,.hud-bar__time{letter-spacing:1.5px;color:#fff9;text-transform:uppercase;font-size:12px;font-weight:700}.hud-bar__size{color:#ffd23f;text-shadow:0 0 8px #ffd23f4d}.board-wrapper{z-index:10;justify-content:center;align-items:center;width:100%;max-width:480px;display:flex;position:relative}.lights-board{--grid-size:4;grid-template-columns:repeat(var(--grid-size), 1fr);grid-template-rows:repeat(var(--grid-size), 1fr);-webkit-backdrop-filter:blur(14px);background:#181208b3;border:1px solid #ffd23f26;border-radius:20px;gap:8px;width:clamp(280px,85vw,460px);height:clamp(280px,85vw,460px);padding:12px;display:grid;box-shadow:0 16px 40px #0009,0 0 30px #ffd23f0d,inset 0 0 20px #ffd23f0d}.lights-board.hidden{display:none}.light-cell{cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.light-cell-inner{background:linear-gradient(135deg,#ffffff0d 0%,#ffffff03 100%);border:1px solid #ffffff14;border-radius:12px;width:100%;height:100%;transition:background .18s,border-color .18s,box-shadow .18s,transform .1s;box-shadow:inset 0 2px 6px #0006}.light-cell:hover .light-cell-inner{border-color:#ffffff38}.light-cell:active .light-cell-inner{transform:scale(.94)}.light-cell.is-on .light-cell-inner{background:radial-gradient(circle at 35% 30%,#fff3c4 0%,#ffd23f 45%,#e0a615 100%);border-color:#ffe082e6;box-shadow:0 0 24px #ffd23f8c,0 0 60px #ffd23f33,inset 0 0 10px #ffffff59}.light-cell.is-on:hover .light-cell-inner{box-shadow:0 0 30px #ffd23fb3,0 0 70px #ffd23f47,inset 0 0 10px #fff6}.light-cell.is-cursor .light-cell-inner{outline-offset:2px;outline:2px solid #ffffffbf}.overlay{-webkit-backdrop-filter:blur(20px);z-index:40;text-align:center;background:#0a0702d9;flex-direction:column;justify-content:center;align-items:center;padding:32px;transition:opacity .3s;display:flex;position:absolute;inset:0}.overlay.hidden{display:none!important}.overlay__title{letter-spacing:4px;background:linear-gradient(135deg,#fff 30%,#ffd23f 100%);-webkit-text-fill-color:transparent;text-shadow:0 10px 30px #ffd23f40;-webkit-background-clip:text;margin-bottom:8px;font-size:clamp(32px,8vw,52px);font-weight:700}.overlay__subtitle{letter-spacing:1px;color:#fff9;max-width:440px;margin-bottom:28px;font-size:15px;font-weight:300;line-height:1.5}.overlay__score{letter-spacing:1px;color:#fff;margin-bottom:12px;font-size:22px;font-weight:600;line-height:1.6}.overlay__rating{letter-spacing:2px;text-transform:uppercase;border-radius:9999px;margin-bottom:28px;padding:6px 18px;font-size:12px;font-weight:700;box-shadow:0 4px 15px #00000040}.rating-divine{color:#1a1206;background:linear-gradient(135deg,#ffd23f,#f97316);box-shadow:0 0 20px #ffd23f66}.rating-ultra{color:#1a1206;background:#f59e0b;box-shadow:0 0 20px #f59e0b66}.rating-fast{color:#fff;background:#10b981;box-shadow:0 0 20px #10b98166}.rating-average{color:#fff;background:#6b7280;box-shadow:0 0 20px #6b728066}.overlay__size-selector{gap:16px;margin-bottom:24px;display:flex}.size-btn{color:#ffffffb3;letter-spacing:1px;cursor:pointer;background:#ffffff08;border:1px solid #ffffff26;border-radius:10px;padding:10px 22px;font-size:14px;font-weight:600;transition:all .2s cubic-bezier(.16,1,.3,1)}.size-btn:hover{color:#fff;background:#ffffff14;border-color:#ffffff4d}.size-btn.active{color:#0a0804;background:#ffd23f;border-color:#ffd23f;font-weight:700;box-shadow:0 0 20px #ffd23f66}.overlay__bests{letter-spacing:1.5px;color:#ffffff80;margin-bottom:36px;font-size:13px;font-weight:500;line-height:1.6}.overlay__hint{letter-spacing:2px;color:#fff6;text-transform:uppercase;font-size:12px;font-weight:500}.countdown{pointer-events:none;z-index:45;letter-spacing:4px;color:#fff;text-shadow:0 0 40px #ffd23f66,0 10px 40px #0009;opacity:0;justify-content:center;align-items:center;font-size:160px;font-weight:700;display:flex;position:absolute;inset:0}.countdown.is-shown{animation:.75s cubic-bezier(.25,1,.5,1) countdown-pop}@keyframes countdown-pop{0%{opacity:0;transform:scale(.3)}25%{opacity:1;transform:scale(1.1)}45%{transform:scale(1)}85%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.2)}}
