:root{--mh-bg:#24130d;--mh-panel:#3a2117;--mh-line:#8f5130;--mh-text:#fff5e7;--mh-muted:#d6ae8a;--mh-gold:#ffd166;--mh-mint:#8be0b6;--mh-red:#f47c5c}.mh-page{min-height:calc(100vh - 67px);padding:28px 12px 48px;background:radial-gradient(circle at 20% 0,#704123,transparent 42%),linear-gradient(145deg,#1d100b,#332018 60%,#18100d);color:var(--mh-text);font-family:system-ui,sans-serif}.mh-page *{box-sizing:border-box}.mh-wrap{width:min(980px,100%);margin:auto}.mh-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}.mh-eyebrow{color:var(--mh-gold);font-size:10px;font-weight:900;letter-spacing:.2em}.mh-header h1{margin:5px 0;color:#fff;font-size:clamp(30px,7vw,48px);letter-spacing:.06em}.mh-header p{margin:0;color:var(--mh-muted);font-size:13px}.mh-back{margin-top:8px;color:#fff0dc;font-size:12px;text-decoration:underline;text-underline-offset:4px;white-space:nowrap}.mh-layout{display:grid;grid-template-columns:minmax(300px,720px) 220px;gap:18px;align-items:start}.mh-play,.mh-panel{border:1px solid var(--mh-line);border-radius:8px;background:#321c14e8;box-shadow:0 18px 55px #0008}.mh-play{padding:clamp(12px,3vw,22px)}.mh-score-row{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:12px}.mh-score-row div{padding:8px;border-radius:8px;background:#24130e;text-align:center}.mh-score-row span{display:block;color:var(--mh-muted);font-size:10px;letter-spacing:.1em}.mh-score-row strong{display:block;margin-top:2px;color:var(--mh-gold);font:800 22px ui-monospace,monospace}.mh-score-row div:nth-child(2) strong{color:var(--mh-mint)}.mh-intro{margin-bottom:14px;padding:11px 13px;border:1px solid #a36239;border-radius:8px;background:#472719;color:#ffead4;font-size:12px;line-height:1.6}.mh-intro strong{color:var(--mh-gold)}.mh-intro ol{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:7px 0 0;padding:0;list-style-position:inside}.mh-intro p{margin:7px 0 0;color:var(--mh-muted);font-size:11px}.mh-board{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;max-width:600px;margin:auto;padding:14px;border:1px solid #a6633b;border-radius:8px;background:#1b100d;box-shadow:inset 0 0 30px #0008}.mh-hole{position:relative;display:grid;place-items:end center;min-height:145px;overflow:hidden;border:0;border-radius:50% 50% 44% 44%;background:radial-gradient(ellipse at 50% 68%,#0d0806 0 35%,#160c08 36% 52%,#704021 54% 66%,#b36d3b 67% 74%,#5c321d 75%);cursor:pointer;touch-action:manipulation}.mh-hole::after{content:"";position:absolute;inset:auto 12% 7% 12%;height:21%;border-radius:50%;background:#0a0604aa;filter:blur(2px)}.mh-hole:hover{filter:brightness(1.14)}.mh-hole:focus-visible{outline:3px solid var(--mh-mint);outline-offset:3px}.mh-mole{position:relative;z-index:1;width:65%;height:72%;transform:translateY(75%);border-radius:50% 50% 38% 38%;background:linear-gradient(155deg,#a9683f,#6b3b26 70%);box-shadow:inset 9px 8px 0 #d0925a55,0 -5px 12px #0008;transition:transform .13s ease-out}.mh-mole::before,.mh-mole::after{content:"";position:absolute;top:43%;width:14%;height:10%;border-radius:50%;background:#1a0d09;box-shadow:0 0 0 3px #e1a46d55}.mh-mole::before{left:27%}.mh-mole::after{right:27%}.mh-mole-face{position:absolute;left:42%;top:57%;width:16%;height:10%;border-radius:50%;background:#e9aa72}.mh-hole.is-active .mh-mole{transform:translateY(8%);animation:mh-pop .18s ease-out}.mh-hole.is-hit .mh-mole{transform:translateY(8%) scale(.82);filter:brightness(1.8)}.mh-hole.is-miss{animation:mh-shake .2s ease-in-out}.mh-hole.is-hit::before{content:"+10";position:absolute;z-index:3;top:8%;color:var(--mh-gold);font-weight:900;animation:mh-score .5s ease-out forwards}.mh-message{min-height:1.5em;margin:12px 0 0;color:var(--mh-muted);font-size:11px;text-align:center}.mh-side{display:flex;flex-direction:column;gap:10px}.mh-panel{padding:13px}.mh-actions{display:grid;gap:8px}.mh-panel h2{margin:0 0 9px;color:#f0c79f;font-size:11px;letter-spacing:.13em}.mh-button{min-height:39px;border:1px solid #9a5b38;border-radius:8px;padding:8px 12px;background:#512b1c;color:var(--mh-text);font:700 12px system-ui,sans-serif;cursor:pointer}.mh-button:hover,.mh-button:focus-visible{border-color:var(--mh-gold);outline:2px solid #ffd16655;outline-offset:2px}.mh-primary{border-color:var(--mh-gold);background:var(--mh-gold);color:#271307}.mh-button:disabled{cursor:not-allowed;opacity:.4}.mh-button[aria-pressed=false]{color:var(--mh-muted);opacity:.65}.mh-sound>div{display:grid;grid-template-columns:1fr 1fr;gap:7px}.mh-sound .mh-button{padding:6px 3px;font-size:11px}.mh-sound label{display:grid;gap:4px;margin-top:10px;color:var(--mh-muted);font-size:11px}.mh-sound input{width:100%;accent-color:var(--mh-gold)}.mh-help ol{margin:0;padding-left:19px;color:#f2d8bd;font-size:11px;line-height:1.7}.mh-help p{margin:9px 0 0;color:var(--mh-muted);font-size:10px;line-height:1.7}.mh-help b{color:#fff}.mh-note{margin:14px 0 0;color:#aa8165;font-size:10px;text-align:center}.mh-result{position:fixed;z-index:20;inset:0;display:grid;place-items:center;padding:20px;background:#140904dd}.mh-result[hidden]{display:none}.mh-result-box{width:min(360px,100%);padding:28px;border:1px solid #b16b43;border-radius:8px;background:#3a2117;text-align:center;box-shadow:0 20px 70px #0008}.mh-result-box h2{margin:7px 0;color:var(--mh-gold);font-size:28px}.mh-result-box p{margin:0 0 20px;color:#f0d4b7;font-size:13px}@keyframes mh-pop{from{transform:translateY(75%)}to{transform:translateY(8%)}}@keyframes mh-score{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(-20px)}}@keyframes mh-shake{25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}.mh-page section{margin-bottom:10px}@media(min-width:1181px){.mh-page{padding-right:320px!important}}@media(max-width:760px){.mh-page{padding:19px 9px 38px}.mh-header{margin-bottom:13px}.mh-layout{display:block}.mh-side{display:grid;grid-template-columns:1fr 1fr;margin-top:10px}.mh-help{grid-column:1/-1}.mh-intro ol{grid-template-columns:1fr}.mh-hole{min-height:108px}}@media(max-width:440px){.mh-header{display:block}.mh-back{display:inline-block;margin-top:10px}.mh-score-row strong{font-size:17px}.mh-side{display:block}.mh-panel{margin-bottom:9px}.mh-board{gap:6px;padding:8px}}
