@font-face{font-family:Cinzel;font-style:normal;font-weight:400 900;font-display:swap;src:url(./Dzu6Mfm8.ttf) format("truetype")}:root{font-family:Cinzel,Georgia,Times New Roman,serif;color:#f1dca8;background:#120e09;font-synthesis:none;-webkit-font-smoothing:antialiased;--gold: #e8bf6f;--press: 0;--safe-x: max(env(safe-area-inset-left), env(safe-area-inset-right))}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;width:100%;height:100%;overflow:hidden;overscroll-behavior:none}button{font:inherit;touch-action:none;-webkit-user-select:none;user-select:none;cursor:pointer}button:focus-visible{outline:2px solid #ffedb9;outline-offset:6px}[hidden]{display:none!important}#game{position:relative;width:100%;height:100%;height:100dvh;min-height:280px;overflow:hidden;isolation:isolate;touch-action:none;-webkit-user-select:none;user-select:none}#scene{position:absolute;inset:0;width:100%;height:100%;display:block}.vignette{position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(ellipse at 50% 45%,transparent 35%,#08060333 76%,#08060388 100%),linear-gradient(#07050377,transparent 19%,transparent 81%,#08060355)}.hud{position:absolute;z-index:2;top:max(16px,env(safe-area-inset-top));left:50%;width:min(880px,calc(100% - 40px - var(--safe-x) - var(--safe-x)));transform:translate(-50%);pointer-events:none}.bar-labels{display:flex;justify-content:space-between;padding:0 9px;margin-bottom:8px;font-size:clamp(10px,2.5vw,16px);font-weight:600;letter-spacing:.035em;color:#f0dfb7;text-shadow:0 2px 5px #000,0 0 13px #000}.balance{position:relative;height:clamp(12px,2.5vw,20px);border:1px solid #f5dba2;background:linear-gradient(#4b1007,#bd170d 22%,#f73819 58%,#9a1309 83%,#461006);box-shadow:0 0 0 2px #24180c,0 0 0 3px #9f814c,0 3px 8px 5px #0009,inset 0 0 4px #2d0804}.blue-side{width:50%;height:100%;background:linear-gradient(#073553,#0077b5 22%,#00c8ff 58%,#007cb6 83%,#062b40);box-shadow:inset 0 0 5px #00334d,0 0 11px #00b7ff44}.bar-sheen{position:absolute;inset:1px 2px auto;height:1px;background:#fff4d9aa;box-shadow:0 1px 2px #fff2cd44}.bar-finial{position:absolute;width:21px;height:32px;top:50%;transform:translateY(-50%);filter:drop-shadow(0 2px 2px #000)}.bar-finial.left{left:-19px}.bar-finial.right{right:-19px;transform:translateY(-50%) scaleX(-1)}.balance-grip{position:absolute;z-index:1;width:24px;height:24px;top:50%;left:50%;border:1px solid #fff1c4;background:linear-gradient(135deg,#f8e0a0,#a67b35 42%,#583a16 48%,#eac17b 70%,#c08a39);transform:translate(-50%,-50%) rotate(45deg);box-shadow:0 0 0 2px #30200c,0 0 0 3px #d7bd86,2px 2px 8px 3px #0009}.balance-grip:before{content:"";position:absolute;inset:4px;border:1px solid #f3d89c;background:linear-gradient(135deg,#6e491a,#e4b567 48%,#754a18)}.balance-grip span{position:absolute;inset:8px;background:#fff0bd;box-shadow:0 0 3px #ffdf7a}.brand{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:15px}.brand h1{margin:0;font-size:clamp(14px,3.25vw,23px);line-height:1;font-weight:700;letter-spacing:.23em;padding-left:.23em;color:#e8c77e;text-shadow:0 2px 7px #000,0 0 15px #000}.brand>span{width:38px;height:1px;background:linear-gradient(90deg,transparent,#d1a34e);box-shadow:0 1px #2c1b08}.brand>span:last-child{transform:rotate(180deg)}.level{margin:9px 0 0;text-align:center;font-size:10px;font-weight:600;letter-spacing:.2em;color:#dcc08a;text-shadow:0 2px 6px #000}.controls{position:absolute;z-index:3;left:50%;bottom:max(29px,calc(env(safe-area-inset-bottom) + 12px));width:clamp(232px,61vw,350px);height:clamp(76px,19vw,110px);transform:translate(-50%)}.tap-button{position:relative;width:100%;height:100%;padding:0;border:0;background:none;color:#211303;transform:translateY(calc(var(--press) * 3px));filter:drop-shadow(0 6px 7px #000b)}.tap-button:disabled{cursor:default;filter:drop-shadow(0 6px 7px #000b) brightness(.85)}.tap-button:not(:disabled):hover{filter:drop-shadow(0 5px 8px #000b) brightness(1.045)}.tap-button:not(:disabled):active{transform:translateY(3px);filter:drop-shadow(0 3px 5px #000b) brightness(1.12)}.tap-plate{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.tap-content{position:relative;display:flex;height:100%;align-items:center;justify-content:center;gap:21px;padding:0 18px 2px}.fist{width:clamp(37px,10vw,51px);height:clamp(42px,11vw,57px);transform:rotate(-12deg);filter:drop-shadow(0 1px 0 #ffe6a7)}.tap-word{font-weight:900;font-size:clamp(35px,10vw,53px);line-height:1;letter-spacing:.055em;text-shadow:0 1px 0 #ffe7a5,0 -1px 0 #140b03}.tutorial-active .controls{z-index:6}.tutorial-active .tap-button{filter:drop-shadow(0 6px 7px #000b) drop-shadow(0 0 22px #e4b25d88) brightness(1.07);animation:tutorial-glow 1.8s ease-in-out infinite}.countdown{position:absolute;z-index:4;inset:0;display:grid;place-items:center;pointer-events:none;font-size:clamp(100px,25vh,210px);font-weight:700;color:#f6d58d;text-shadow:0 0 45px #090502,0 4px 8px #140c06,0 0 35px #d39a3c44;opacity:0}.countdown.visible{opacity:1}.countdown.pop{animation:count-in .78s cubic-bezier(.12,.72,.22,1) both}.countdown.go{font-size:clamp(85px,21vh,175px);letter-spacing:-.06em;color:#ffe8ac}.modal{position:absolute;z-index:5;inset:0;display:grid;place-items:center;padding:22px;background:#070604bd}.tutorial-copy{width:min(390px,100%);text-align:center;transform:translateY(-35px)}.modal h2{margin:0;font-size:clamp(32px,8.5vw,49px);font-weight:700;line-height:1.2;letter-spacing:.025em;color:#f4dba5;text-shadow:0 3px 15px #0009}.secondary-button{position:relative;min-width:160px;min-height:48px;margin-top:24px;padding:13px 24px 12px;border:1px solid #c4a05c;border-radius:1px;background:linear-gradient(#37291a,#20170e);box-shadow:inset 0 0 0 3px #1d140a,inset 0 0 0 4px #79582e66,0 3px 15px #0008;color:#f0d49b;font-size:13px;font-weight:700;letter-spacing:.1em}.secondary-button:hover{background:linear-gradient(#574024,#342311)}.secondary-button:active{transform:translateY(1px)}.result{z-index:7;background:#080604d9}.result-copy{text-align:center;transform:translateY(-12px)}.result h2{font-size:clamp(41px,12vw,84px);line-height:1.15;letter-spacing:-.01em;color:#f2cf84}.result.loss h2{color:#ddc3a2}.result .secondary-button{min-width:200px;margin-top:29px}.result .friend-button{display:block;margin:15px auto 0}.text-button{display:block;margin:18px auto 0;padding:10px 16px;border:0;background:none;color:#ddc498;font-size:11px;letter-spacing:.1em}.friend-lobby{z-index:8;background:#080604e8}.friend-copy{width:min(460px,100%);text-align:center}.friend-copy h2{font-size:clamp(22px,6vw,33px)}#invite-link{width:100%;margin-top:24px;padding:13px;border:1px solid #79582e;border-radius:2px;background:#130e09;color:#e9ce99;font:13px system-ui,sans-serif;user-select:text}.invite-actions{display:flex;gap:12px;justify-content:center}.invite-actions .secondary-button{min-width:0;flex:1;margin-top:12px}#invite-note{min-height:20px;font:13px/1.5 system-ui,sans-serif;color:#d9c5a2}@media(max-height:500px){.result .friend-button{margin-top:10px}.result-copy{transform:none}.friend-copy h2{font-size:22px}#invite-link{margin-top:14px}.text-button{margin-top:10px}}.loading{position:absolute;z-index:10;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:28px;background:radial-gradient(ellipse at 50% 45%,#2a1d11,#100c08 70%);text-align:center}.loading.done{visibility:hidden;opacity:0;pointer-events:none}.loading-brand{color:#efd398;font-size:clamp(24px,5vw,38px);font-weight:700;letter-spacing:.14em}.loading-brand span{color:#bb9653}.loading-rule{width:115px;height:1px;margin-top:24px;background:#604624;overflow:hidden}.loading-rule:after{content:"";display:block;height:100%;width:40%;background:#e8c27b;animation:loading-pass 1.5s ease-in-out infinite}.loading p{font-size:10px;font-weight:600;letter-spacing:.16em;line-height:1.7;margin:20px 0 0;max-width:330px;color:#bda273}.loading.error .loading-rule{display:none}.loading.error p{letter-spacing:.02em;font-size:12px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes tutorial-glow{50%{filter:drop-shadow(0 6px 7px #000b) drop-shadow(0 0 32px #e4b25dcc) brightness(1.12)}}@keyframes count-in{0%{transform:scale(1.28);opacity:0;filter:blur(3px)}16%,70%{opacity:1;filter:blur(0)}to{transform:scale(.98);opacity:0}}@keyframes loading-pass{0%{transform:translate(-110%)}to{transform:translate(350%)}}@media(min-width:900px)and (min-height:650px){.hud{top:max(22px,env(safe-area-inset-top));width:min(840px,calc(100% - 100px - var(--safe-x) - var(--safe-x)))}.controls{bottom:max(31px,calc(env(safe-area-inset-bottom) + 15px))}}@media(max-width:360px){.hud{width:calc(100% - 38px - var(--safe-x) - var(--safe-x))}.brand{margin-top:14px;gap:8px}.brand>span{width:24px}.balance-grip{width:20px;height:20px}.balance-grip:before{inset:3px}.balance-grip span{inset:7px}.controls{bottom:max(22px,calc(env(safe-area-inset-bottom) + 10px))}}@media(max-height:500px){.hud{top:max(10px,env(safe-area-inset-top));width:min(620px,calc(100% - 58px - var(--safe-x) - var(--safe-x)))}.bar-labels{font-size:10px;margin-bottom:5px}.balance{height:11px}.balance-grip{width:19px;height:19px}.balance-grip:before{inset:3px}.balance-grip span{inset:6px}.bar-finial{width:17px;height:26px}.bar-finial.left{left:-16px}.bar-finial.right{right:-16px}.brand{margin-top:11px}.brand h1{font-size:13px}.level{margin-top:6px;font-size:9px}.controls{width:232px;height:72px;bottom:max(13px,calc(env(safe-area-inset-bottom) + 7px))}.tap-word{font-size:35px}.fist{width:36px;height:42px}.tutorial-copy{transform:translateY(-25px);width:min(470px,100%)}.modal h2{font-size:29px}.secondary-button{min-height:41px;margin-top:15px;padding:10px 23px;font-size:11px}.result h2{font-size:47px}.result .secondary-button{margin-top:19px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important}.countdown.pop{animation:none;opacity:1}.tap-button,.tap-button:not(:disabled):active{transform:none}}.tap-button:focus-visible{outline:none;filter:drop-shadow(0 0 6px #ffe0a1) drop-shadow(0 4px 8px #000)}.level-reveal{position:absolute;z-index:4;inset:0;display:grid;place-items:center;pointer-events:none;font-size:clamp(52px,13vw,112px);font-weight:700;letter-spacing:.08em;color:#f6d58d;background:radial-gradient(ellipse at center,#10090588,transparent 70%);text-shadow:0 4px 20px #000,0 0 38px #d39a3c55;animation:level-reveal 1.2s ease-in-out both}@keyframes level-reveal{0%{opacity:0;transform:scale(.94)}20%,70%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.025)}}@media(prefers-reduced-motion:reduce){.level-reveal{animation:none}}.world-record{position:relative;text-align:right;margin:8px 0 0;color:#ddc99d;font:600 clamp(10px,1.8vw,11px)/1.3 Cinzel,serif;letter-spacing:.04em;text-shadow:0 2px 5px #000;pointer-events:none}@media(max-width:500px){.world-record{position:static;text-align:right;margin:9px 0 0}.brand{margin-top:9px}}.result{overflow-y:auto;padding:24px 16px}.result-copy{width:min(100%,410px);margin:auto}#nickname-entry{margin:24px auto 0;max-width:310px}#nickname-entry label{display:block;color:#d4b77e;font:600 11px system-ui;letter-spacing:.18em;margin-bottom:10px}#nickname{width:100%;border:1px solid #b89b5d80;border-radius:10px;padding:13px 15px;background:#17120de6;color:#fff0d0;font:16px system-ui;text-align:center;outline:none}#nickname:focus{border-color:#edcb81;box-shadow:0 0 0 3px #e6bd5820}#nickname-error{color:#f2ad91;font:12px system-ui;margin:8px 0 0}#leaderboard{margin-top:22px;border:1px solid #b89b5d50;border-radius:12px;padding:14px 10px 8px;background:linear-gradient(145deg,#292016ef,#120e0cef);box-shadow:0 12px 36px #0005}.ranking-heading{display:flex;justify-content:space-between;gap:8px;padding:0 6px 12px;font:600 10px system-ui;letter-spacing:.08em;color:#d0b887}#ranking-list{position:relative;padding:0;margin:0;height:156px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#b99b5b #211a13;touch-action:pan-y}.ranking-row{display:grid;grid-template-columns:30px minmax(0,1fr) 64px;align-items:center;gap:8px;height:52px;padding:0 10px;border-radius:7px;font:14px system-ui;color:#c6b9a3;text-align:left}.ranking-row span:nth-child(2){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ranking-row span:last-child{text-align:right;font-size:11px;letter-spacing:.06em}.ranking-row.current-player{color:#ffdf9a;background:#b58b282c;box-shadow:inset 0 0 0 1px #dfbb5a60;font-weight:700}.ranking-note{color:#8e8069;font:9px system-ui;letter-spacing:.08em;margin:10px 0 0}@media(max-height:500px){.result h2{font-size:34px}.result{display:block}.result[hidden]{display:none}#leaderboard{margin-top:12px}.result-copy{transform:none}.result .secondary-button{margin-top:12px}}.editable-nickname{display:flex;align-items:center;gap:5px;min-width:0}.ranking-nickname{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:inherit}.nickname-edit{flex:0 0 32px;width:32px;height:36px;display:grid;place-items:center;border:0;border-radius:6px;background:transparent;color:#dabe7a;padding:7px;cursor:pointer}.nickname-edit svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.nickname-edit:hover{color:#fff0bf;background:#dabe7a18}.nickname-edit:focus-visible{outline:1px solid #e4c77e;outline-offset:1px}.nickname-inline{width:100%;min-width:0;border:1px solid #dabe7a99;border-radius:5px;background:#17120d;color:#ffdf9a;padding:6px;font:16px system-ui;outline:none}.nickname-inline:focus{box-shadow:0 0 0 2px #dabe7a20}#ranking-name-error{color:#f2ad91;font:12px system-ui;margin:8px 0 0}.world-record{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:clamp(9px,2.4vw,11px)}html,body,#game,#game *{touch-action:manipulation}#ranking-list{touch-action:pan-y pinch-zoom}
