:root{color-scheme:dark;--cream:#f5e8c7;--ink:#1c231b;--red:#d4563b;--safe-top:max(15px,env(safe-area-inset-top));--safe-bottom:max(13px,env(safe-area-inset-bottom))}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{width:100%;height:100%;margin:0;overflow:hidden;font-family:Inter,"PingFang SC","Microsoft YaHei",system-ui,sans-serif;background:#8b6948;color:var(--cream);touch-action:none}button,a{font:inherit}button{color:inherit}#game,#canvas-wrap{position:fixed;inset:0}canvas{display:block;width:100%;height:100%;outline:none}
.loading{position:fixed;z-index:60;inset:0;display:grid;place-content:center;justify-items:center;background:#19231a;transition:opacity .35s,visibility .35s}.loading.hidden{opacity:0;visibility:hidden}.loading p{margin-top:18px;font-size:13px;font-weight:800;letter-spacing:.13em}.loader-root{display:grid;place-items:center;width:62px;height:62px;border-radius:50%;border:8px solid #c68d4e;color:#e8c16e;font:900 36px system-ui;animation:strain .65s ease-in-out infinite alternate}@keyframes strain{to{transform:scaleX(1.35) rotate(8deg)}}
.topbar{position:fixed;z-index:7;left:0;right:0;top:0;padding:var(--safe-top) max(16px,env(safe-area-inset-right)) 0 max(16px,env(safe-area-inset-left));display:grid;grid-template-columns:1fr auto 1fr;align-items:center;pointer-events:none}.topbar>*{pointer-events:auto}.back{justify-self:start;color:inherit;text-decoration:none;font-size:13px;font-weight:800;text-shadow:0 1px 5px #0009}.match-pill{padding:9px 14px;border:1px solid #fff5;border-radius:99px;background:#283229cc;backdrop-filter:blur(8px);font-size:12px;font-weight:750}.icon-btn{justify-self:end;width:38px;height:38px;border-radius:50%;border:1px solid #fff5;background:#283229cc;cursor:pointer;font-weight:900}
.hud{position:fixed;z-index:6;top:calc(var(--safe-top) + 54px);left:50%;transform:translateX(-50%);display:grid;grid-template-columns:145px 90px 145px;border:1px solid #fff3;border-radius:15px;overflow:hidden;background:#1d261fdf;box-shadow:0 8px 24px #24160d55;backdrop-filter:blur(8px);pointer-events:none}.hud>div{padding:8px 13px;text-align:center}.hud>div+div{border-left:1px solid #fff2}.hud span{display:block;font-size:10px;opacity:.65}.hud strong{font-size:20px;font-variant-numeric:tabular-nums}.hud em{font-style:normal;font-size:9px;opacity:.6}.hud i{display:block;height:4px;margin-top:5px;border-radius:5px;background:#ffffff1d;overflow:hidden}.hud i b{display:block;height:100%;width:100%;border-radius:inherit}.mine i b{background:#63bfce}.enemy i b{margin-left:auto;background:#e36b4e}
.tension-panel{position:fixed;z-index:7;left:20px;top:50%;transform:translateY(-50%);width:180px;padding:13px;border-radius:18px;background:#1d261fe3;border:1px solid #fff3;box-shadow:0 10px 30px #28160c55;backdrop-filter:blur(9px);pointer-events:none}.tension-label{display:flex;justify-content:space-between;align-items:end}.tension-label span{font-size:10px;opacity:.65}.tension-label strong{font-size:24px}.tension-track{height:12px;margin:9px 0;border-radius:9px;background:linear-gradient(90deg,#436894,#e0bc4e 55%,#d5533a);position:relative}.tension-track i{position:absolute;left:48%;width:28%;top:-4px;height:20px;border:2px solid #77df7a;border-radius:7px;background:#65d36f28;transition:left .12s,width .12s}.tension-track b{position:absolute;left:0;top:-6px;width:5px;height:24px;border-radius:5px;background:#fff;box-shadow:0 0 8px #fff;transition:left .05s}.tension-panel p{margin:0;font-size:10px;line-height:1.45;color:#dcd7c1}.pull-control{position:fixed;z-index:9;left:50%;bottom:var(--safe-bottom);transform:translateX(-50%)}.pull-track{position:relative;width:190px;height:175px;border-radius:95px 95px 22px 22px;border:2px dashed #f3dfaf66;background:#241b144d}.pull-track:after{content:"";position:absolute;left:50%;top:70px;bottom:17px;width:2px;transform:translateX(-50%);background:linear-gradient(#fff4,#fff0)}#pull-handle{position:absolute;z-index:2;left:50%;top:8px;transform:translateX(-50%);width:136px;height:62px;border:1px solid #fff5;border-radius:35px;background:#efe0b9;color:#2b3027;display:flex;align-items:center;justify-content:center;gap:9px;cursor:grab;box-shadow:0 8px 20px #21130b66}#pull-handle i{display:block;width:42px;height:13px;border-radius:8px;background:linear-gradient(90deg,#7d4a2a,#cf9750,#75502d);box-shadow:inset 0 -3px 3px #4f2b2466}#pull-handle span{font-size:12px;font-weight:900}.pull-track em{position:absolute;left:0;right:0;bottom:8px;text-align:center;font-style:normal;font-size:9px;opacity:.55}.feedback{position:fixed;z-index:13;left:50%;top:44%;transform:translate(-50%,-50%) scale(.7);padding:10px 20px;border-radius:99px;background:#e6c454;color:#263126;font-size:19px;font-weight:950;opacity:0;pointer-events:none}.feedback.show{animation:pop .7s ease-out}.feedback.bad{background:#d9583e;color:#fff}@keyframes pop{0%{opacity:0;transform:translate(-50%,-20%) scale(.6)}25%{opacity:1;transform:translate(-50%,-50%) scale(1.12)}70%{opacity:1}100%{opacity:0;transform:translate(-50%,-80%) scale(.9)}}
.panel{position:fixed;z-index:30;inset:0;display:grid;place-items:center;padding:20px;background:#14201991;backdrop-filter:blur(7px);opacity:0;visibility:hidden;transition:opacity .25s,visibility .25s}.panel.visible{opacity:1;visibility:visible}.panel-card{position:relative;overflow:hidden;width:min(500px,100%);padding:32px 32px 27px;border-radius:28px;background:#eee0bc;color:var(--ink);text-align:center;border:1px solid #fffa;box-shadow:0 24px 80px #151d1599,inset 0 0 80px #fff3}.panel-card:before{content:"";position:absolute;inset:0;opacity:.16;pointer-events:none;background-image:radial-gradient(#714722 .7px,transparent .8px);background-size:6px 6px}.panel-card>*{position:relative}.eyebrow{margin:0 0 8px;font-size:11px;font-weight:900;letter-spacing:.16em;color:#88472f}.panel h1,.panel h2{margin:0 0 12px;font-family:"Songti SC","Noto Serif SC",serif;font-size:clamp(44px,9vw,67px);line-height:1;font-weight:900;letter-spacing:-.06em}.panel h2{font-size:clamp(34px,7vw,52px)}.panel-card>p:not(.eyebrow){margin:0 auto 18px;max-width:390px;line-height:1.65;color:#4e594e;font-size:14px}.root-choices{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:18px 0}.root-choices button{padding:10px 5px;border:1px dashed #88785f;border-radius:12px;background:transparent;color:#374238;cursor:pointer}.root-choices button.selected{border-style:solid;border-color:#b34e37;background:#dc604017;box-shadow:inset 0 0 0 2px #b34e3722}.root-choices i{display:block;width:65px;height:9px;margin:0 auto 8px;border-radius:8px;background:#8e6939}.root-choices button:nth-child(1) i{background:#78964b}.root-choices button:nth-child(2) i{height:13px;background:#8b5c31}.root-choices button:nth-child(3) i{height:7px;background:#c29350}.root-choices b{display:block;font-size:13px}.root-choices small{font-size:9px;opacity:.6}.primary,.secondary{width:100%;min-height:50px;border-radius:14px;border:0;cursor:pointer;font-weight:900}.primary{background:#d9573b;color:#fff;box-shadow:0 7px 0 #9c3b28,0 12px 20px #7d392f40}.primary:active{transform:translateY(4px);box-shadow:0 3px 0 #9c3b28}.secondary{margin-top:13px;background:transparent;color:#39483b;border:1px solid #6e776c}.compact{max-width:390px}.result-stat{display:flex;align-items:baseline;justify-content:center;gap:6px;margin:9px 0 22px}.result-stat span{font-size:12px;margin-right:7px}.result-stat strong{font-size:50px;color:#c84b32}.result-stat em{font-style:normal;font-size:12px}
@media(max-width:700px){.back span{display:none}.topbar{grid-template-columns:42px 1fr 42px}.match-pill{justify-self:center}.hud{top:calc(var(--safe-top) + 49px);width:calc(100% - 24px);grid-template-columns:1fr 74px 1fr}.hud>div{padding:7px 5px}.tension-panel{left:12px;right:12px;top:auto;bottom:calc(var(--safe-bottom) + 182px);transform:none;width:auto;padding:9px 12px}.tension-panel p{text-align:center}.pull-track{height:165px}.panel-card{padding:27px 20px 23px}.root-choices button{padding:8px 3px}.root-choices i{width:48px}}
@media(max-height:680px){.panel-card{transform:scale(.9)}.root-choices{margin:12px 0}.panel-card>p:not(.eyebrow){margin-bottom:10px}.hud{top:calc(var(--safe-top) + 44px)}.pull-track{height:145px}.tension-panel{bottom:calc(var(--safe-bottom) + 155px)}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
