:root{color-scheme:dark;--bg:#101c19;--paper:#eee7d6;--muted:#95a298;--gold:#d2ae70;--red:#c8735e}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--paper);font-family:Arial,Helvetica,sans-serif}button,a,input{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid #f3d197;outline-offset:5px}a{color:inherit}.app{max-width:1400px;margin:0 auto;padding:0 5%}.masthead{height:96px;border-bottom:1px solid #ffffff18;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{text-decoration:none;font:26px Georgia,serif;letter-spacing:5px}.brand span{font:8px Arial,sans-serif;display:block;letter-spacing:3.3px;margin-top:7px}.edition{font-size:9px;letter-spacing:2px;color:var(--muted)}.edition i{margin-left:16px;padding:8px;border:1px solid #ffffff30;font-style:normal;color:var(--gold)}.top-actions{display:flex;gap:10px}.top-actions button{background:none;border:1px solid #ffffff20;color:var(--paper);height:34px;min-width:35px;padding:0 12px;font-size:15px}.top-actions button span{font-size:9px;letter-spacing:1.2px;margin-left:7px}main{display:grid;grid-template-columns:minmax(270px,1fr) minmax(350px,570px);gap:7%;padding:36px 0 26px;align-items:center}.editorial{padding-bottom:20px}.eyebrow{font-size:9px;letter-spacing:2.1px;color:var(--gold);display:flex;align-items:center;gap:10px}.eyebrow>span{width:5px;height:5px;background:var(--gold);border-radius:50%}h1{font:clamp(40px,4.2vw,65px)/1.03 Georgia,serif;font-weight:400;letter-spacing:-2px;margin:27px 0 22px}h1 em,h2 em{color:var(--gold);font-weight:normal}.deck{font:17px/1.6 Georgia,serif;color:#b9c2b8}.rule{width:48px;height:1px;background:var(--gold);margin:30px 0}.instruction{font-size:12px;line-height:1.9;max-width:300px;color:#a4b0a7}.control-list{margin:23px 0 32px;display:grid;gap:13px}.control-list>div{display:flex;align-items:center;gap:14px;font-size:10px;color:var(--muted)}kbd{display:inline-block;min-width:75px;text-align:center;font:9px Arial;letter-spacing:1px;border:1px solid #67766a;padding:7px 9px;color:var(--paper);border-radius:3px}.best-label{font-size:8px;letter-spacing:2px;color:var(--gold)}.best{font:30px Georgia;margin-top:10px}.best small{font:8px Arial;letter-spacing:2px;color:var(--muted)}.tiny{font-size:9px;line-height:1.8;color:#718379;margin-top:28px}.download{font-size:10px;color:#aabaac;text-underline-offset:4px}.game-column{width:100%;max-width:min(570px,calc((100dvh - 225px)*.766));justify-self:center}.hud{display:flex;justify-content:space-between;align-items:center;margin:0 2px 14px}.hud>div{display:flex;flex-direction:column;gap:5px}.hud span{font-size:8px;letter-spacing:1.5px;color:var(--muted)}.hud strong{font:24px Georgia;font-variant-numeric:tabular-nums}.hud strong small{font-size:13px;color:var(--muted);margin-left:3px}.hud .bill{text-align:center}.hud .health{text-align:right}.hud .health strong{font-size:13px;letter-spacing:2px;line-height:28px;color:var(--gold)}.stage{position:relative;aspect-ratio:720/940;background:#253127;box-shadow:0 20px 60px #0005;isolation:isolate;overflow:hidden;border:1px solid #9d8c6144;border-radius:3px}canvas{width:100%;height:100%;display:block;touch-action:none}.stage-corners{position:absolute;inset:8px;border:1px solid #dcc69123;pointer-events:none;z-index:2}.game-caption{position:absolute;bottom:12px;left:0;right:0;text-align:center;font-size:7px;letter-spacing:2.4px;color:#ddcfacaa;pointer-events:none}.overlay{position:absolute;inset:0;z-index:4;background:linear-gradient(180deg,#0b18196b,#0b1819e8 70%,#0b1819ed);display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:24px 22px}.hidden{display:none!important}.intro-content{width:100%;max-width:340px}.tag{display:inline-block;border:1px solid #d2ae7055;padding:8px 12px;color:var(--gold);font-size:8px;letter-spacing:2px}.axe-mark{height:46px;color:var(--red);font:bold 64px/1 Georgia;text-shadow:8px -1px #d2ae7044;margin:7px}.intro-content h2{font:clamp(29px,3vw,45px)/1.05 Georgia;margin:16px 0;letter-spacing:1px;font-weight:normal}.intro-content h2 span{display:block;font:9px Arial;letter-spacing:6px;color:var(--gold);margin-top:15px}.intro-content p{font:14px/1.6 Georgia;color:#c4cabe;margin:22px 0}.primary{border:1px solid var(--gold);background:var(--gold);color:#17251f;padding:15px 20px;font-size:10px;font-weight:bold;letter-spacing:1.5px;width:100%;display:flex;align-items:center;justify-content:space-between;transition:background .15s,transform .15s}.primary:hover{background:#e7c58e;transform:translateY(-1px)}.primary span{font-size:20px;line-height:12px}.mini-controls{margin-top:15px;font-size:7px;letter-spacing:1.2px;color:#9fae9e}.assist{font-size:10px;display:flex;justify-content:center;gap:5px;align-items:center;margin-top:25px;flex-wrap:wrap;color:#c9d0c4;cursor:pointer}.assist input{accent-color:var(--gold);width:13px;height:13px}.assist span{width:100%;font-size:8px;color:var(--muted)}.intro-footer{position:absolute;bottom:25px;left:0;right:0;font-size:6px;letter-spacing:1px;color:#8d9d91}.panel{width:100%;max-width:320px}.panel .eyebrow{justify-content:center;font-size:8px}.panel h2{font:38px/1.1 Georgia;margin:18px 0}.panel p{font:14px/1.5 Georgia;color:#bac4b7}.secondary{border:0;background:none;text-decoration:none;color:var(--paper);font-size:10px;letter-spacing:.8px;display:block;margin:13px auto 0;padding:5px;cursor:pointer}.result-panel h2{font-size:36px;margin:14px 0 8px}.result-panel>p{font-size:12px;margin:6px 0 14px}.result-score{padding:13px 0;border-top:1px solid #ffffff20;border-bottom:1px solid #ffffff20}.result-score>span{display:block;letter-spacing:2px;font-size:8px;color:var(--gold)}.result-score strong{font:44px Georgia;display:block;margin-top:3px}.result-score small{font-size:8px;letter-spacing:1.4px;color:var(--gold)}.receipt{margin:15px 0;display:grid;gap:7px}.receipt>div{display:flex;justify-content:space-between;font-size:10px;color:#abb9aa}.receipt b{color:var(--paper);font-weight:400}.call{display:flex;align-items:center;text-align:left;padding:10px 14px;border:1px solid #a4b89a44;background:#adc09912;margin:12px 0 8px;gap:12px}.call-avatar{border:1px solid #d2ae7060;border-radius:50%;height:33px;width:33px;text-align:center;line-height:33px;font-family:Georgia;color:var(--gold)}.call div:nth-child(2){display:flex;flex-direction:column;gap:3px}.call div span{font-size:7px;letter-spacing:1.4px;color:var(--muted)}.call strong{font:17px Georgia}.call-icon{margin-left:auto;color:#b4ceaa;font-size:24px}.result-panel .teaser{font-size:12px;color:var(--gold);margin:10px 0 17px}.status-bar{display:flex;justify-content:space-between;gap:10px;padding:13px 0;font-size:7px;letter-spacing:1px;color:var(--muted)}#objective{display:flex;align-items:center;gap:6px}#objective i{width:4px;height:4px;border-radius:50%;background:var(--gold)}#shove-state{color:var(--gold)}.floating-tip{position:absolute;top:8%;left:5%;right:5%;text-align:center;padding:10px;background:#101c19eb;color:#e4cc98;border:1px solid #d2ae7055;font-size:10px;letter-spacing:.5px;z-index:3;pointer-events:none}.touch-controls{display:none;align-items:center;justify-content:space-between;user-select:none;-webkit-user-select:none;touch-action:none;padding:0 15px 6px;gap:14px}.joystick{position:relative;width:92px;height:92px;flex-shrink:0;border:1px solid #d2ae7040;border-radius:50%;background:radial-gradient(circle,#ffffff0a,#ffffff02);touch-action:none}.joystick:before,.joystick:after{content:"";position:absolute;background:#c7b48720}.joystick:before{width:1px;height:100%;left:50%}.joystick:after{height:1px;width:100%;top:50%}.stick{width:38px;height:38px;border:1px solid #d2ae7080;background:#ad936a33;border-radius:50%;position:absolute;left:26px;top:26px;pointer-events:none}.joystick>span{position:absolute;bottom:10px;text-align:center;left:0;right:0;font-size:6px;letter-spacing:1.5px;color:#a69d80;pointer-events:none}.touch-controls button{width:80px;height:80px;border:1px solid #cda76b80;border-radius:50%;background:#cda76b18;color:var(--gold);font-size:29px;touch-action:none}.touch-controls button span{display:block;font-size:8px;letter-spacing:1.5px;margin-top:2px}.touch-hint{font:11px/1.7 Georgia;color:#a5b19f;text-align:center}footer{display:flex;justify-content:space-between;border-top:1px solid #ffffff13;padding:20px 0;font-size:7px;letter-spacing:1.5px;color:#778d80}footer i{font-style:normal;margin:0 12px;color:var(--gold)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}body.playing{overscroll-behavior:none}.low-time{color:#e39579!important}
@media(pointer:coarse){.touch-controls{display:flex}.game-column{max-width:min(570px,calc((100dvh - 330px)*.766))}.control-list{display:none}}@media(max-width:760px){.app{padding:0 16px}.masthead{height:65px}.brand{font-size:20px;letter-spacing:4px}.brand span{font-size:6px;letter-spacing:2.7px;margin-top:5px}.edition,.editorial,footer{display:none}.top-actions button{padding:0 9px}.top-actions button span{display:none}main{display:block;padding:17px 0 0}.game-column{max-width:min(510px,calc((100dvh - 165px)*.766));margin:0 auto}.hud{margin-bottom:10px}.hud span{font-size:7px}.hud strong{font-size:21px}.status-bar{font-size:6px;padding:11px 0}.intro-content h2{font-size:36px}.intro-content p{font-size:13px;margin:16px 0}.intro-footer{bottom:15px;font-size:5px}.overlay{padding:18px}.tag{font-size:7px}.assist{margin-top:18px}.result-panel h2{font-size:30px}.result-score strong{font-size:35px}.receipt{margin:10px 0;gap:6px}.result-panel>p{font-size:11px}.panel h2{font-size:34px}.call{padding:7px 12px}.primary{padding:13px 15px;font-size:9px}.result-panel .teaser{font-size:11px;margin:8px 0 12px}}@media(max-width:760px) and (pointer:coarse){.game-column{max-width:min(510px,calc((100dvh - 270px)*.766))}.touch-controls{width:calc(100% + 25px);margin-left:-12px;padding:0 0 5px}.joystick{width:82px;height:82px}.stick{left:21px;top:21px}.touch-controls button{width:70px;height:70px}.touch-hint{font-size:9px}}@media(max-height:740px) and (max-width:760px){.masthead{height:50px}main{padding-top:10px}.game-column{max-width:min(510px,calc((100dvh - 238px)*.766))}.axe-mark{display:none}.intro-content h2{font-size:27px;margin:13px 0}.intro-content p{font-size:11px;margin:12px 0}.tag{padding:6px 8px;font-size:6px}.assist{margin-top:12px}.intro-footer{display:none}.mini-controls{font-size:6px}.result-panel .eyebrow{font-size:6px}.result-panel h2{font-size:25px;margin:8px 0}.result-score{padding:8px 0}.result-score strong{font-size:28px}.result-panel>p{font-size:10px;margin:5px 0 8px}.receipt{gap:5px}.receipt>div{font-size:9px}.call{margin:8px 0 5px;padding:5px 9px}.call-avatar{height:24px;width:24px;line-height:24px;font-size:12px}.call strong{font-size:14px}.result-panel .teaser{font-size:10px}.secondary{margin-top:9px}.result-panel .primary{padding:11px 13px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}

/* Keep all controls reachable in short embedded viewports. */
.overlay{overflow-y:auto}.panel,.intro-content{flex-shrink:0;margin-top:auto;margin-bottom:auto}@media(max-height:560px){.intro-footer{display:none}.touch-hint{display:none}.game-column{max-width:340px}.masthead{height:50px}main{padding-top:10px}.stage{min-height:365px}.app{padding-bottom:8px}}
