.game-header{display:flex;align-items:flex-end;justify-content:space-between;gap:12px 20px;flex-wrap:wrap}.game-header .back{display:inline-flex;align-items:center;gap:6px;font:600 13px var(--body);color:var(--muted);text-decoration:none}.game-header .back:hover{color:var(--ink)}.game-title{display:flex;flex-direction:column;gap:6px}.game-title h1{font-size:clamp(30px,5vw,46px)}.hud{display:flex;align-items:flex-end;gap:22px;font-family:var(--mono);font-variant-numeric:tabular-nums}.stat{display:flex;flex-direction:column;gap:2px}.stat span{font:600 12px var(--body);color:var(--muted)}.stat b{font-size:25px;font-weight:700;line-height:1}.stat b.bump{animation:bump .35s ease-out}@keyframes bump{0%{transform:scale(1.35);color:var(--brass)}to{transform:scale(1)}}.icon-btn{font:600 13px var(--body);color:var(--muted);background:transparent;border:1px solid var(--line);border-radius:4px;padding:7px 10px;cursor:pointer}.icon-btn:hover{color:var(--ink);border-color:var(--muted)}.stage{position:relative;width:min(100%,calc((100vh - 190px) * 5 / 3));width:min(100%,calc((100dvh - 190px) * 5 / 3));min-width:min(100%,320px);max-width:100%;aspect-ratio:5 / 3;margin-inline:auto;border-radius:6px;overflow:hidden;outline:1px solid var(--line);touch-action:manipulation;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent}.stage canvas{display:block;width:100%;height:100%;cursor:crosshair}.card{position:absolute;inset:0;display:grid;place-items:center;padding:12px;background:#09101694;backdrop-filter:blur(2px)}.card-inner{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;max-width:420px}.card h2{margin:0;font-family:var(--display);font-weight:900;font-size:clamp(30px,6vw,58px);line-height:.95;letter-spacing:.04em;text-transform:uppercase;text-wrap:balance}.card p{margin:0;opacity:.85;font-size:16px;line-height:1.45;text-wrap:balance}.result{font-family:var(--mono);font-variant-numeric:tabular-nums}.result .big{display:block;font-size:clamp(40px,8vw,72px);font-weight:700;line-height:1;color:var(--brass)}.result .sub{font:600 14px var(--body);color:var(--muted)}.miss-note{font:700 15px var(--mono);color:var(--danger)}.actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}.share-text{width:min(320px,100%);font:13px var(--mono);color:var(--ink);background:var(--panel);border:1px solid var(--line);border-radius:4px;padding:8px}.notes{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 24px;color:var(--muted);font-size:14px;line-height:1.45}.notes p{margin:0;min-width:0}@media (max-width: 560px){.card .long{display:none}.card h2{font-size:30px}.card-inner{gap:8px}.result .big{font-size:40px}.card .btn{padding:8px 14px;font-size:14px}.hud{gap:14px}.stat b{font-size:20px}}@media (max-height: 500px){.wrap{gap:6px;padding-block:6px}.game-header{align-items:center;flex-wrap:nowrap}.game-title{flex-direction:row;align-items:baseline;gap:12px}.game-title h1{font-size:24px}.hud{align-items:center;gap:14px}.stat{flex-direction:row;align-items:baseline;gap:6px}.stat b{font-size:18px}.icon-btn{padding:4px 8px}.notes{display:none}.stage{width:min(100%,calc((100vh - 52px) * 5 / 3));width:min(100%,calc((100dvh - 52px) * 5 / 3))}}.page-footer{display:flex;gap:18px;margin-top:18px;padding-top:10px;border-top:1px solid var(--line);font:600 13px var(--body)}.page-footer a{color:var(--muted);text-decoration:none}.page-footer a:hover{color:var(--ink)}@media (orientation: landscape) and (max-height: 500px){body:not(.card-page) .wrap{flex-direction:row;align-items:center;justify-content:center;gap:12px;height:100vh;height:100dvh;max-width:none;padding-block:0;overflow:hidden}body:not(.card-page) .stage{order:1;flex:none;width:min(calc(100vh * 5 / 3),calc(100vw - 150px));width:min(calc(100dvh * 5 / 3),calc(100vw - 150px));min-width:0;margin:0;border-radius:0;outline:none}body:not(.card-page) .game-header{order:2;flex:none;width:118px;flex-direction:column;align-items:stretch;justify-content:center;flex-wrap:nowrap;gap:14px}body:not(.card-page) .game-title{flex-direction:column;align-items:flex-start;gap:4px}body:not(.card-page) .game-title h1{font-size:22px;line-height:1}body:not(.card-page) .game-header .back{font-size:12px}body:not(.card-page) .hud{flex-direction:column;align-items:stretch;gap:8px}body:not(.card-page) .stat{flex-direction:row;align-items:baseline;justify-content:space-between}body:not(.card-page) .icon-btn{padding:6px 8px}body:not(.card-page) .page-footer,body:not(.card-page) .ad-slot{display:none}body:not(.card-page) .card h2{font-size:30px}body:not(.card-page) .card-inner{gap:8px}body:not(.card-page) .card p{font-size:14px}body:not(.card-page) .result .big{font-size:44px}body:not(.card-page) .card .btn{padding:8px 14px;font-size:14px}.is-fullscreen body:not(.card-page) .wrap{padding-left:max(8px,env(safe-area-inset-left,0px));padding-right:max(8px,env(safe-area-inset-right,0px))}}.rotate-hint{position:fixed;inset:0;z-index:9000;display:grid;place-items:center;padding:24px;background:#091016f0;color:var(--ink);text-align:center}.rotate-inner{display:flex;flex-direction:column;align-items:center;gap:12px;max-width:320px}.rotate-inner svg{color:var(--brass);animation:turn 2.4s ease-in-out infinite}.rotate-inner h2{margin:0;font:900 30px / 1 var(--display);text-transform:uppercase;letter-spacing:.04em}.rotate-inner p{margin:0;color:var(--muted)}@keyframes turn{0%,30%{rotate:0deg}55%,to{rotate:-90deg}}@media (orientation: landscape){.rotate-hint{display:none}}@media (prefers-reduced-motion: reduce){.stat b.bump{animation:none}.rotate-inner svg{animation:none}}
