:root{color:#25334a;font-synthesis:none;text-rendering:optimizelegibility;background:#8fd0cf;font-family:Trebuchet MS,Segoe UI,system-ui,sans-serif}*{box-sizing:border-box}html,body,#app{width:100%;height:100%;margin:0;overflow:hidden}button{font:inherit}.game-root{z-index:0;position:fixed;inset:0}canvas{cursor:none;width:100%;height:100%;display:block}.hud-root{z-index:10;pointer-events:none;color:#25334a;position:fixed;inset:0}.top-strip{justify-content:space-between;align-items:flex-start;gap:12px;display:flex;position:absolute;top:14px;left:14px;right:14px}.resources{flex-wrap:wrap;gap:8px;display:flex}.resource-pill,.debug,.hint-chip,.selection-panel,.build-menu,.ratio-widget{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:2px solid #2d3a4f2e;box-shadow:0 8px #38414d1f}.resource-pill{text-transform:uppercase;background:#ffffffb8;border-radius:8px;align-items:center;min-height:34px;padding:6px 10px;font-size:13px;font-weight:800;display:inline-flex}.resource-pill.food{background:#ffd0cf}.resource-pill.wood{background:#dcb689}.resource-pill.stone{background:#d7dbe9}.resource-pill.pop{background:#cfe8ff}.debug{text-align:right;background:#ffffff9e;border-radius:8px;max-width:360px;padding:8px 10px;font-size:12px}.build-menu{pointer-events:auto;background:#faf5e2c7;border-radius:8px;grid-template-columns:repeat(5,minmax(64px,1fr));gap:8px;width:min(480px,100vw - 28px);padding:10px;display:grid;position:absolute;bottom:18px;left:14px}.icon-button{color:#25334a;cursor:pointer;background:#f7ecc7;border:2px solid #303b462e;border-radius:8px;grid-template-rows:24px auto;place-items:center;min-width:0;min-height:58px;padding:6px;font-weight:800;display:grid}.icon-button b{background:#fff;border-radius:6px;place-items:center;width:28px;height:24px;line-height:1;display:grid}.icon-button span{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:11px;overflow:hidden}.icon-button:disabled{opacity:.45;cursor:not-allowed}.selection-panel{background:#e6f3e6cc;border-radius:8px;flex-direction:column;gap:6px;width:min(340px,100vw - 28px);min-height:94px;padding:12px;display:flex;position:absolute;bottom:18px;right:14px}.selection-panel strong{font-size:18px}.selection-panel span{font-size:13px;line-height:1.35}.action-row{pointer-events:auto;flex-wrap:wrap;gap:6px;display:flex}.mini-button,.primary,.menu-panel button{color:#25334a;cursor:pointer;background:#fff;border:2px solid #303b4633;border-radius:8px;font-weight:900}.mini-button{padding:5px 8px;font-size:12px}.hint-chip{text-align:center;background:#ffffffa8;border-radius:8px;max-width:min(520px,100vw - 28px);padding:8px 12px;font-size:13px;font-weight:800;position:absolute;top:64px;left:50%;transform:translate(-50%)}.ratio-widget{text-transform:uppercase;pointer-events:auto;background:#ffffffb8;border-radius:8px;grid-template-columns:auto minmax(180px,260px) auto;align-items:center;gap:8px;padding:8px 10px;font-size:12px;font-weight:900;display:grid;position:absolute;bottom:22px;left:50%;transform:translate(-50%)}.ratio-track{--ratio:55%;background:linear-gradient(90deg, #ffc4c4 0 var(--ratio), #bd9368 var(--ratio) 100%);cursor:ew-resize;border:2px solid #303b463d;border-radius:999px;height:22px;position:relative}.ratio-handle{background:#fff;border:2px solid #303b4638;border-radius:999px;width:26px;position:absolute;top:-2px;bottom:-2px;transform:translate(-50%);box-shadow:0 2px #0000001f}.command-cursor{z-index:20;pointer-events:none;background:#fff3;border:3px solid #fff;border-radius:999px;width:26px;height:26px;display:none;position:fixed;top:0;left:0;transform:translate(-50%,-50%);box-shadow:0 0 0 2px #25334a2e,0 4px #25334a29}.command-cursor.active{display:block}.command-cursor:before{content:"";background:#25334a;border-radius:50%;width:5px;height:5px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.command-cursor:after{content:"";background:inherit;border-bottom:3px solid #fff;border-right:3px solid #fff;width:9px;height:9px;position:absolute;bottom:-5px;right:-5px;transform:rotate(45deg)}.command-cursor[data-mode=attack]{background:#ff747494;border-color:#ffe3e3}.command-cursor[data-mode=gather]{background:#77d47c94;border-color:#edffdc}.command-cursor[data-mode=build]{background:#ffd56a9e;border-color:#fff0b8}.command-cursor[data-mode=move]{background:#7db4ff8f;border-color:#dceeff}.command-cursor[data-mode=select]{background:#ffffff57;border-color:#fff}.command-cursor[data-mode=invalid]{background:#5d5d5d80;border-color:#ffd0d0}.drag-box{z-index:15;pointer-events:none;background:#7eb4ff33;border:2px solid #fff;display:none;position:fixed}.title-screen,.pause-screen,.result-screen{z-index:30;pointer-events:auto;background:linear-gradient(#76bec838,#6997801f);align-items:center;padding:8vh 8vw;display:grid;position:fixed;inset:0}.title-copy{color:#1e2e44;text-shadow:0 2px #fff6;width:min(560px,90vw)}.eyebrow{text-transform:uppercase;margin-bottom:8px;font-size:14px;font-weight:900}h1{letter-spacing:0;max-width:10ch;margin:0 0 12px;font-size:clamp(52px,10vw,112px);line-height:.9}.title-copy p{max-width:480px;margin:0 0 22px;font-size:18px;font-weight:700;line-height:1.4}.primary,.menu-panel button{background:#fff0b8;min-height:44px;padding:10px 16px;box-shadow:0 6px #38414d29}.pause-screen,.result-screen{background:#48596557;place-items:center}.menu-panel{text-align:center;background:#faf5e2f0;border:2px solid #303b462e;border-radius:8px;gap:12px;width:min(360px,100vw - 28px);padding:20px;display:grid;box-shadow:0 12px #38414d29}.menu-panel h2{margin:0;font-size:34px}.menu-panel p{margin:0}.hidden,.hud-root.phase-title .top-strip,.hud-root.phase-title .build-menu,.hud-root.phase-title .selection-panel,.hud-root.phase-title .hint-chip,.hud-root.phase-title .ratio-widget,.hud-root.phase-title .command-cursor,.hud-root.phase-result .build-menu,.hud-root.phase-result .selection-panel,.hud-root.phase-result .hint-chip,.hud-root.phase-result .ratio-widget,.hud-root.phase-result .command-cursor{display:none}@media (max-width:760px){.top-strip{flex-direction:column;align-items:flex-start}.debug{text-align:left}.build-menu{grid-template-columns:repeat(5,minmax(48px,1fr));bottom:132px}.selection-panel{width:calc(100vw - 28px);bottom:14px;left:14px;right:auto}.ratio-widget{grid-template-columns:auto minmax(120px,1fr) auto;width:min(340px,100vw - 28px);bottom:118px}.hint-chip{top:116px}}
