html,body{margin:0;height:100%;overflow:hidden;overscroll-behavior:none;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;background:#fdfdfb;font-family:ui-rounded,Nunito,system-ui,sans-serif}canvas{display:block;width:100vw;height:100vh}#ui{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none}#ui>*{pointer-events:auto}.menu{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;gap:6vmin;align-items:center;justify-content:center;background:#fdfdfb}.tile{width:32vmin;height:32vmin;font-size:14vmin;border:2px solid #D6E9EF;border-radius:5vmin;background:#fff;box-shadow:0 6px 24px #2b2b331f;cursor:pointer}.tile:active{transform:scale(.94)}.home{position:absolute;top:12px;left:12px;width:56px;height:56px;font-size:30px;border:none;border-radius:16px;background:#ffffffd9;box-shadow:0 2px 10px #2b2b331f;cursor:pointer}.skip{position:absolute;top:20px;left:80px;width:40px;height:40px;font-size:18px;border:none;border-radius:12px;background:#fff6;color:#3e4a52;cursor:pointer}.quiz{position:absolute;right:0;bottom:0;width:33vw;height:45vh;display:flex;gap:2vmin;align-items:center;justify-content:center;flex-wrap:wrap}.quiz button{width:12vmin;height:12vmin;font-size:6vmin;font-weight:700;color:#3e4a52;border:none;border-radius:3vmin;background:#fff;box-shadow:0 4px 16px #2b2b3326;cursor:pointer}.target{position:absolute;right:0;bottom:18vh;width:33vw;text-align:center;font-size:11vmin;font-weight:800;color:#3e4a52;pointer-events:none}.target-card{display:inline-block;background:#fff;border-radius:3vmin;padding:1.5vmin 2vmin;box-shadow:0 6px 24px #2b2b332e}.confirm{position:absolute;right:calc(16.5vw - 7vmin);bottom:4vh;width:14vmin;height:14vmin;font-size:7vmin;font-weight:700;color:#fff;border:none;border-radius:50%;background:#f6b26b;box-shadow:0 4px 16px #2b2b3333;cursor:pointer}.confirm:active{transform:scale(.94)}.parent-panel{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:#fff;border-radius:20px;padding:24px 28px;box-shadow:0 12px 48px #2b2b334d;display:flex;flex-direction:column;gap:14px;font-size:17px;color:#3e4a52;z-index:10}.parent-panel h2{margin:0;font-size:20px}.parent-panel .ranges{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.parent-panel button{padding:10px 14px;border:1px solid #D6E9EF;border-radius:10px;background:#fdfdfb;font-size:16px;cursor:pointer}.parent-panel .reset-confirm{display:flex;gap:8px;align-items:center}.parent-panel .confirm-reset{background:#f8d0cc}
