:root{--night: #070d0b;--turf: #2f7a45;--brass: #d6a23a;--cream: #fff3d6;--ink: #e9efe9;--muted: #8fa396;--panel: rgba(9, 18, 14, .9);--line: rgba(255, 243, 214, .14);--good: #39d98a;--ok: #ffc53d;--bad: #ff4d4d;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%;margin:0;background:var(--night);color:var(--ink);overscroll-behavior:none}body{font-family:Barlow Semi Condensed,Arial Narrow,Roboto Condensed,system-ui,sans-serif;font-size:15px;-webkit-tap-highlight-color:transparent;user-select:none}.app{position:relative;height:100%;overflow:hidden}.stage{position:absolute;inset:0}.top{position:absolute;top:0;left:0;right:0;display:flex;justify-content:space-between;align-items:flex-start;padding:calc(env(safe-area-inset-top,0px) + 10px) 12px 0;pointer-events:none;gap:10px}.brand strong{display:block;font-size:22px;letter-spacing:.02em;color:var(--cream);font-weight:700}.draft{display:inline-block;margin-top:2px;padding:2px 8px;border:1px solid var(--brass);border-radius:999px;color:var(--brass);font-size:12px}.fps{text-align:right;font-variant-numeric:tabular-nums;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:6px 10px;min-width:96px}.fps b{font-size:22px}.fps small{display:block;color:var(--muted);font-size:11px}.fps.good b{color:var(--good)}.fps.ok b{color:var(--ok)}.fps.bad b{color:var(--bad)}.turn-hud{position:absolute;top:88px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:2px;max-width:calc(100vw - 24px);padding:8px 16px;border:1px solid rgba(214,162,58,.55);border-radius:14px;background:#09120ee0;text-align:center;pointer-events:none;white-space:nowrap}.turn-hud strong{color:var(--cream);font-size:15px}.turn-hud span{color:var(--muted);font-size:12px}.toast{pointer-events:none;position:absolute;left:50%;top:74px;transform:translate(-50%);background:var(--panel);border:1px solid var(--line);padding:7px 14px;border-radius:999px;max-width:92vw;text-align:center}.toast.soft{color:var(--muted);font-size:13px}.dock{position:absolute;left:0;right:0;bottom:0;display:flex;gap:8px;padding:10px 10px calc(env(safe-area-inset-bottom,0px) + 10px);background:linear-gradient(transparent,#070d0beb 40%)}.dock .sp{flex:1}button{font:inherit;color:var(--ink);background:#fff3d614;border:1px solid var(--line);border-radius:10px;padding:10px 14px;min-height:44px;cursor:pointer}button:hover:not(:disabled){background:#fff3d629}button:focus-visible,input:focus-visible{outline:2px solid var(--brass);outline-offset:2px}button:disabled{opacity:.4;cursor:default}button.on{background:var(--brass);color:#1b1304;border-color:var(--brass);font-weight:700}.sheet{position:absolute;left:8px;right:8px;bottom:calc(env(safe-area-inset-bottom,0px) + 66px);max-height:58vh;overflow-y:auto;background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:10px 14px 14px;backdrop-filter:blur(8px);-webkit-overflow-scrolling:touch}@media(min-width:820px){.sheet{left:auto;width:400px;right:12px;max-height:72vh}}.sheet h4{margin:14px 0 4px;font-size:14px;color:var(--brass);font-weight:600}.row{display:flex;align-items:center;gap:10px;min-height:40px}.row.wrap{flex-wrap:wrap}.lbl{flex:0 0 150px;color:var(--muted);font-size:14px}.slider input{flex:1;min-width:0;accent-color:var(--brass);height:32px}.val{width:70px;text-align:right;font-variant-numeric:tabular-nums}.toggle{justify-content:space-between}.toggle input{width:22px;height:22px;accent-color:var(--brass)}.seg{display:flex;flex:1;gap:4px;flex-wrap:wrap}.seg button{flex:1;padding:8px 6px}.grid{display:grid;grid-template-columns:1fr auto;gap:4px 12px;margin:6px 0;font-variant-numeric:tabular-nums}.grid dt{color:var(--muted)}.grid dd{margin:0;text-align:right}.bad{color:var(--bad)}.warn{color:var(--ok);font-size:13px;margin:4px 0}.hint{color:var(--muted);font-size:13px;margin:4px 0 8px}.log{background:#00000073;padding:8px;border-radius:8px;font-size:11.5px;white-space:pre-wrap;max-height:120px;overflow:auto;user-select:text}.scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;font-variant-numeric:tabular-nums;font-size:13px}th,td{padding:4px 8px;text-align:right;border-bottom:1px solid var(--line)}th{color:var(--muted);font-weight:500}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}@media(max-width:480px){.lbl{flex-basis:112px;font-size:13px}}.scoreline{color:var(--cream);font-size:25px;line-height:1.05;font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:.06em}.scoreline small{color:var(--brass);font-size:15px;padding:0 8px}.restart-bar{position:absolute;z-index:5;top:170px;left:50%;transform:translate(-50%);display:flex;align-items:center;justify-content:center;gap:10px;max-width:calc(100vw - 20px);padding:8px 10px;border:1px solid var(--brass);border-radius:12px;background:#09120ef5;box-shadow:0 8px 24px #00000059}.restart-bar strong{color:var(--cream);font-size:13px;white-space:nowrap}.restart-bar button{min-height:38px;padding:7px 12px;background:var(--brass);color:#1b1304;font-weight:700;white-space:nowrap}@media(max-width:480px){.turn-hud{top:86px}.restart-bar{top:176px;width:calc(100vw - 20px)}.restart-bar strong{white-space:normal}}
