
*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent;}
html,body{min-height:100%;font-family:'Palatino Linotype', Georgia, serif;background:#fff6ec;color:#5a3011;-webkit-font-smoothing:antialiased;overflow:hidden;user-select:none;-webkit-user-select:none;}
#ah-menu{position:fixed;inset:0;z-index:100;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(180deg,#fff6ec 0%,#ffe3c2 55%,#fff6ec 100%);padding:env(safe-area-inset-top,20px) 22px calc(env(safe-area-inset-bottom,0px)+22px);overflow-y:auto;}
.ah-decor{position:fixed;inset:0;pointer-events:none;z-index:0;overflow:hidden;}

.ah-lf{position:absolute;animation:ahFall linear infinite;}
@keyframes ahFall{0%{transform:translateY(-8vh) rotate(0deg) translateX(0)}50%{transform:translateY(50vh) rotate(180deg) translateX(20px)}100%{transform:translateY(108vh) rotate(360deg) translateX(-10px);opacity:0}}

.ah-inner{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:14px;width:100%;max-width:420px;}
.ah-icon{font-size:clamp(52px,14vw,78px);filter:drop-shadow(0 4px 14px #c9682a55);animation:ahBob 3.6s ease-in-out infinite;}
@keyframes ahBob{0%,100%{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-8px) rotate(3deg)}}
.ah-title{font-size:clamp(26px,7.5vw,46px);font-weight:900;letter-spacing:3px;text-align:center;color:#c9682a;text-shadow:0 3px 0 #8a3f1033;text-transform:uppercase;}
.ah-sub{font-size:11px;letter-spacing:4px;color:#8a3f10;text-transform:uppercase;}
.ah-divider{width:160px;height:2px;background:linear-gradient(90deg,transparent,#c9682a,transparent);border-radius:2px;}
.ah-tip{font-size:11.5px;line-height:1.5;color:#8a3f10;text-align:center;max-width:340px;font-style:italic;padding:0 6px;}
.ah-how{width:100%;background:rgba(255,255,255,.82);border:1px solid #c9682a40;border-radius:16px;padding:16px;box-shadow:0 4px 18px rgba(0,0,0,.06);}
.ah-how-title{font-size:10px;letter-spacing:4px;color:#8a3f10;text-align:center;margin-bottom:10px;text-transform:uppercase;font-weight:700;}
.ah-how-row{display:flex;align-items:center;justify-content:space-between;font-size:clamp(12px,3.5vw,14px);padding:3px 0;color:#5a3011;}
.ah-how-row .pts{color:#c9682a;font-weight:900;}
.ah-how-row .neg{color:#e0526b;font-weight:900;}
.ah-mile{width:100%;background:rgba(255,255,255,.82);border:1px solid #c9682a40;border-radius:16px;padding:14px 16px;box-shadow:0 4px 18px rgba(0,0,0,.06);}
.ah-mile-title{font-size:10px;letter-spacing:4px;color:#8a3f10;text-align:center;margin-bottom:8px;text-transform:uppercase;font-weight:700;}
.ah-mile-row{display:flex;justify-content:space-between;font-size:12px;color:#5a3011;padding:2px 0;}
.ah-play{width:100%;padding:17px 32px;border-radius:12px;border:none;cursor:pointer;background:linear-gradient(180deg,#c9682a,#8a3f10);color:#fff;font-weight:900;font-family:'Palatino Linotype', Georgia, serif;font-size:clamp(14px,4.5vw,18px);letter-spacing:3px;text-transform:uppercase;box-shadow:0 8px 24px #c9682a55;transition:all .15s;}
.ah-play:active{transform:scale(.97);}
.ah-flinks{display:flex;gap:14px;}
.ah-flinks a{font-size:10px;letter-spacing:2px;color:#8a3f10;text-decoration:none;text-transform:uppercase;padding:5px 12px;border:1px solid #c9682a55;border-radius:6px;}
#ah-game{position:fixed;inset:0;z-index:50;display:none;flex-direction:column;}
#ah-canvas{position:absolute;inset:0;background:linear-gradient(180deg,#ffe3c2 0%,#fff6ec 60%,#ffe3c2 100%);}

.ah-corner{position:absolute;top:env(safe-area-inset-top,10px);z-index:10;background:rgba(255,255,255,.82);border:1px solid #c9682a55;border-radius:10px;padding:6px 14px;text-align:center;min-width:64px;backdrop-filter:blur(6px);box-shadow:0 2px 10px rgba(0,0,0,.08);}
.ah-corner.left{left:14px;}
.ah-corner.right{right:14px;}
.ah-hlbl{font-size:8px;letter-spacing:2px;color:#8a3f10;text-transform:uppercase;margin-bottom:2px;}
.ah-hval{font-size:clamp(16px,4.5vw,20px);font-weight:900;color:#5a3011;}
.ah-pill{position:absolute;top:calc(env(safe-area-inset-top,10px) + 2px);left:50%;transform:translateX(-50%);z-index:10;background:#c9682a;color:#fff;border-radius:999px;padding:8px 22px;font-weight:900;font-size:clamp(13px,4vw,16px);letter-spacing:2px;box-shadow:0 4px 14px #c9682a66;}
.ah-pill.urgent{animation:ahUrg .5s ease-in-out infinite;}
@keyframes ahUrg{0%,100%{background:#c9682a;}50%{background:#ff5566;}}

.ah-item{position:absolute;display:flex;flex-direction:column;align-items:center;cursor:pointer;z-index:5;}
.ah-item-e{display:block;line-height:1;transition:transform .1s;}
.ah-item:active .ah-item-e{transform:scale(.82);}
.ah-item-pts{font-size:10px;font-weight:900;color:#fff;letter-spacing:1px;margin-top:2px;background:#8a3f10cc;padding:1px 6px;border-radius:6px;}
.ah-item.good .ah-item-e{animation:ahFloat 2s ease-in-out infinite alternate;}
@keyframes ahFloat{from{transform:translateY(0)}to{transform:translateY(-7px)}}
.ah-item.bad .ah-item-e{animation:ahWobble .5s ease-in-out infinite;}
@keyframes ahWobble{0%,100%{transform:scaleX(1)}50%{transform:scaleX(1.15) scaleY(.9)}}
.ah-item.dying{animation:ahPop .25s forwards;}
@keyframes ahPop{0%{transform:scale(1);opacity:1}100%{transform:scale(2.4);opacity:0}}
.ah-score-pop{position:absolute;font-size:20px;font-weight:900;pointer-events:none;z-index:20;animation:ahFly .65s ease-out forwards;font-family:'Palatino Linotype', Georgia, serif;}
.ah-score-pop.pos{color:#c9682a;}
.ah-score-pop.neg{color:#e0526b;}
@keyframes ahFly{0%{transform:translateY(0);opacity:1}100%{transform:translateY(-65px);opacity:0}}

.ah-pop{position:absolute;inset:0;z-index:30;display:none;align-items:center;justify-content:center;background:rgba(255,255,255,.55);backdrop-filter:blur(6px);}
.ah-popcard{background:rgba(255,255,255,.82);border:1px solid #c9682a55;border-radius:18px;padding:30px 26px;text-align:center;max-width:320px;width:90%;box-shadow:0 10px 40px rgba(0,0,0,.15);}
.ah-poptitle{font-size:clamp(20px,6vw,27px);font-weight:900;color:#5a3011;margin-bottom:6px;letter-spacing:1px;}
.ah-popsub{font-size:13px;color:#8a3f10;margin-bottom:18px;}
.ah-scorelbl{font-size:10px;letter-spacing:3px;color:#8a3f10;text-transform:uppercase;margin-bottom:4px;}
.ah-scoreval{font-size:clamp(38px,13vw,54px);font-weight:900;color:#c9682a;margin-bottom:20px;}
.ah-replay{width:100%;padding:14px;border-radius:10px;border:none;cursor:pointer;background:#c9682a;color:#fff;font-weight:900;font-size:15px;letter-spacing:2px;text-transform:uppercase;box-shadow:0 6px 18px #c9682a55;}
.ah-replay:active{transform:scale(.97);}

