*{box-sizing:border-box}html,body{height:100%;margin:0;overflow:hidden}body{font-family:Arial,Helvetica,sans-serif;background:#163b36;color:#f5f8e9;display:flex;flex-direction:column;letter-spacing:0}header{height:74px;flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:0 26px;border-bottom:2px solid #c0df8e}.brand{font-size:24px;font-weight:900}.brand small{display:block;font-size:8px;color:#b5d5c5;margin-top:5px}.tools{display:flex;gap:7px}button{font:inherit;border:1px solid #81a08e;border-radius:6px;background:#284f43;color:#f5f8e9;cursor:pointer;touch-action:none;user-select:none;-webkit-user-select:none}button:hover{filter:brightness(1.2)}button:focus-visible{outline:3px solid #f3dd87;outline-offset:3px}button:disabled{opacity:.45;cursor:default}.tools button{width:41px;height:40px;font-size:24px}main{flex:1;min-height:0;position:relative}canvas{display:block;width:100%;height:100%;touch-action:none}.hud{position:absolute;top:20px;left:24px;display:flex;align-items:start;gap:24px;pointer-events:none;text-shadow:0 2px 5px #092d27}.hud small,.colony small{display:block;font-size:9px;color:#eff6dc;margin-bottom:6px}.hud b{font-size:11px;margin-left:5px;font-variant-numeric:tabular-nums}meter{width:88px;height:13px;vertical-align:middle}meter::-webkit-meter-bar{background:#1c453a;border:1px solid #a5c69c;border-radius:3px}meter::-webkit-meter-optimum-value{background:#f3a49a}#hunger::-webkit-meter-optimum-value{background:#f1db82}meter::-moz-meter-bar{background:#f3a49a}#hunger::-moz-meter-bar{background:#f1db82}.size strong{display:block;font-size:22px}.size span{font-size:10px;color:#e0efd5;display:block;margin-top:4px}.colony{position:absolute;top:20px;right:24px;text-align:right;text-shadow:0 2px 5px #092d27;pointer-events:none}.colony strong{font-size:24px;display:block}.colony span{font-size:10px;display:block;margin-top:5px;color:#eff4cb}#toast{position:absolute;top:108px;left:50%;transform:translateX(-50%);background:#193f35ed;max-width:90%;width:max-content;padding:11px 18px;font-size:13px;border-radius:6px;text-align:center}#target{position:absolute;bottom:142px;left:50%;transform:translateX(-50%);padding:9px 15px;background:#183d32e8;border-radius:6px;font-size:11px;white-space:nowrap}#target b{margin-left:12px;color:#ecdb8a}.controls{position:absolute;bottom:18px;left:20px;right:20px;display:flex;align-items:end;justify-content:space-between;pointer-events:none}.controls button{pointer-events:auto;background:#174236dc}.pad{display:grid;grid-template-columns:repeat(3,47px);grid-template-rows:repeat(2,45px);gap:4px}.pad button{font-size:25px}.pad button:first-child{grid-column:2}.pad button:nth-child(2){grid-column:1}.commands{display:flex;gap:10px;align-items:end}.commands div{display:flex;flex-direction:column;gap:6px}.commands div button{font-size:12px;padding:0 12px;min-width:88px;height:37px}#attack{background:#f3d885;color:#274136;width:66px;height:66px;font-size:29px}footer{height:32px;flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:0 24px;font-size:9px;color:#c0d4c8}#overlay{position:absolute;inset:0;display:grid;place-items:center;background:#13352ce3;backdrop-filter:blur(5px)}[hidden]{display:none!important}section{text-align:center;width:min(430px,95%);padding:24px}section small{color:#f4de8e;font-size:10px}h1{font-size:33px;margin:15px 0}section p{font-size:14px;line-height:1.6;color:#d3e3cf}section button{padding:12px 18px;font-size:14px;margin:7px 3px}section #continue{background:#f3d885;color:#274136;font-weight:bold}@media(max-width:600px){header{height:64px;padding:0 13px}.brand{font-size:17px}.brand small{font-size:7px}.tools{gap:4px}.tools button{width:33px;height:36px}.hud{top:14px;left:13px;gap:13px}.hud small,.colony small{font-size:7px}meter{width:55px}.hud b{font-size:9px;margin-left:2px}.size strong{font-size:17px}.size span{font-size:8px;max-width:90px}.colony{top:85px;right:13px}.colony strong{font-size:18px}#toast{top:142px;font-size:11px}.controls{left:12px;right:12px;bottom:12px}.pad{grid-template-columns:repeat(3,40px);grid-template-rows:repeat(2,43px)}.commands{gap:7px}#attack{width:53px;height:60px}.commands div button{min-width:75px;padding:0 8px;font-size:11px}footer{padding:0 12px;font-size:8px}}
