.build-actions.defense-actions{width:350px;gap:6px}.build-buttons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.defense-heading{margin-top:6px}.build-button{display:grid;grid-template-columns:23px minmax(0,1fr);grid-template-rows:auto auto;column-gap:6px;row-gap:3px;align-items:center;min-height:48px;padding:7px 6px;text-align:left;background:#35402e;border:2px solid #0d120e;box-shadow:inset 2px 2px #647057,inset -2px -2px #1a241b,2px 2px #0d120e;color:#e0e5c8}.build-button img{grid-row:1/3;width:23px;height:29px;object-fit:contain;image-rendering:pixelated}.build-button span{font-size:8px;line-height:1.4;overflow-wrap:break-word}.build-button small{font-size:8px;color:#c4d6ab;white-space:nowrap}.build-button:hover:enabled{background:#4a593e}.build-button:active:enabled{transform:translate(1px,1px);box-shadow:inset 2px 2px #101711}.build-button.built{opacity:.8;filter:none;background:#273a28}.build-button.built small{color:#9fd66a}#defensive-builds .build-button{background:#3d344b;box-shadow:inset 2px 2px #8c739f,inset -2px -2px #241e2c,2px 2px #0d120e}#defensive-builds .build-button:hover:enabled{background:#554665}
#node-structures{display:flex;flex-direction:column;gap:7px;margin-top:9px}.built-structure{display:grid;grid-template-columns:1fr auto;gap:4px;font-size:8px;line-height:1.35;color:#c4d1b2}.built-structure>span:last-of-type{color:#a7b793;font-size:8px}.built-structure>.health{grid-column:1/-1;height:6px;padding:1px}.built-structure>.health>div{height:4px}#unit-node-button{margin-top:14px;max-width:210px;font-size:9px}.node-empty p{max-width:390px;line-height:1.8}
@media(max-width:1200px){.build-actions.defense-actions{width:320px}.node-info{width:195px}.build-button{column-gap:5px;padding:6px 5px}.build-button span{font-size:8px}}
@media(max-width:900px){#node-details,#own-actions{gap:12px}.build-actions.defense-actions{width:290px}.node-info{width:175px}.build-button{grid-template-columns:18px minmax(0,1fr);column-gap:4px;padding:6px 4px;min-height:45px}.build-button img{width:18px;height:25px}.build-button span,.build-button small{font-size:7px}.built-structure{font-size:7px}.built-structure>span:last-of-type{font-size:7px}}
@media(max-width:680px){.node-info{width:auto}#own-actions{gap:10px}.build-actions.defense-actions{width:60%;gap:5px}.build-buttons{gap:4px}.build-button{grid-template-columns:13px minmax(0,1fr);column-gap:3px;row-gap:2px;min-height:44px;padding:5px 3px}.build-button img{width:13px;height:21px}.build-button span{font-size:7px;line-height:1.4}.build-button small{font-size:6px}.build-actions>.eyebrow{font-size:7px;letter-spacing:0}.defense-heading{margin-top:4px}#node-structures{display:grid;grid-template-columns:1fr 1fr;gap:6px 12px;margin:7px 0 9px}.built-structure{font-size:7px}.built-structure>span:last-of-type{font-size:6px}.built-structure>.health{height:4px;padding:1px}.built-structure>.health>div{height:2px}.spawn-actions{flex:1}.spawn-actions>.section-heading{display:block}.spawn-count-label{margin-top:6px}.spawn-button strong,.spawn-button small{font-size:7px}.spawn-button{padding-left:22px}.spawn-actions>.hint{font-size:6px}.spawn-buttons{margin-top:6px}#unit-node-button{font-size:8px;padding:8px}}
.build-button small{white-space:normal;line-height:1.5;font-size:7px}
.action-toolbar{display:flex;justify-content:flex-end;margin-bottom:8px}
.assault-button{background:#713d35;color:#ffe1ae;box-shadow:inset 2px 2px #b9694f,inset -2px -2px #40252a,2px 2px #0d120e;padding:8px 12px;font-size:10px}
.assault-button:hover:enabled{background:#93523d}
.spawn-button[data-unit=white_wizard]{background:#4b5141}.spawn-button[data-unit=red_wizard]{background:#673a35}.spawn-button[data-unit=black_wizard]{background:#342e42}
.spawn-button[data-unit=archer]{background:#324b35}.spawn-button[data-unit=trebuchet]{background:#51412b}.spawn-button[data-unit=agent]{background:#25463f}
.spawn-button[data-unit=trebuchet] strong{font-size:9px}
.spawn-button[data-unit$=_wizard] strong{font-size:9px;line-height:1.5;white-space:normal}.spawn-button[data-unit$=_wizard] .unit-icon{top:9px}
@media(max-width:900px){.spawn-button[data-unit$=_wizard] strong{font-size:7px}.spawn-button[data-unit$=_wizard] .unit-icon{top:4px}}
@media(max-width:680px){.spawn-button[data-unit=trebuchet] strong{font-size:6px}}
@media(max-width:680px){.assault-button{padding:7px 10px;font-size:8px}.build-button small{font-size:6px}.spawn-button[data-unit$=_wizard] strong{font-size:6px}.spawn-buttons{grid-template-columns:repeat(2,minmax(0,1fr))}}
.toast,#toast-message{user-select:text;-webkit-user-select:text;cursor:text;overflow-wrap:anywhere;pointer-events:auto}#toast-actions{display:flex;gap:8px;margin-top:10px}#toast-actions button{font-size:8px;padding:6px 9px}
.round-banner.pregame{top:58px;padding:10px 16px;font-size:11px;pointer-events:none;width:max-content;max-width:calc(100% - 40px)}.round-banner.pregame small{margin-top:6px;font-size:8px}
@media(max-width:680px){.round-banner.pregame{top:76px;max-width:90%;font-size:9px;padding:9px 12px}.round-banner.pregame small{font-size:7px}}
.connecting-panel{padding:28px 24px;z-index:5}.connecting-glurp{width:78px;height:88px;object-fit:contain;margin-bottom:20px}.connecting-panel h2{font-size:20px;color:var(--gold);margin-bottom:12px}.connecting-panel p{font-size:9px;line-height:1.8}.connecting-dots{display:flex;justify-content:center;gap:8px;margin-top:22px}.connecting-dots span{width:7px;height:7px;background:var(--green);animation:connecting-pulse 1.2s steps(2,end) infinite}.connecting-dots span:nth-child(2){animation-delay:.2s}.connecting-dots span:nth-child(3){animation-delay:.4s}@keyframes connecting-pulse{0%,100%{opacity:.3}50%{opacity:1}}#join-startup-error{margin-top:12px;color:#e9a17c}
@media(prefers-reduced-motion:reduce){.connecting-dots span{animation:none}}
.help-dialog{max-height:calc(100dvh - 32px);overflow-y:auto;padding:26px;background:#1d2820;scrollbar-color:#647057 #151e18}.help-header{display:flex;align-items:center;gap:16px;padding-right:20px}.help-header>img{width:68px;height:52px;object-fit:contain;flex-shrink:0;filter:drop-shadow(0 4px #101711)}.help-header .eyebrow{font-size:9px;color:#9fb48d;letter-spacing:2px}.help-dialog h2{font-size:20px;margin:8px 0 0;line-height:1.4}.help-dialog .help-goal{margin:18px 0 0;padding:11px 14px;background:#2d3524;border-left:3px solid var(--gold);color:#dfd5ac;font-size:10px;line-height:1.8}
.help-steps{display:grid;gap:7px;list-style:none;margin:16px 0 0;padding:0}.help-steps li{--help-accent:#b9d98c;display:grid;grid-template-columns:40px minmax(0,1fr);align-items:center;gap:14px;padding:11px 13px;margin:0;background:#253127;border:1px solid #3c4b37;box-shadow:inset 2px 0 var(--help-accent)}.help-steps li:nth-child(2){--help-accent:#c1a1dc}.help-steps li:nth-child(3){--help-accent:#ecc67c}.help-steps li:nth-child(4){--help-accent:#8ec7bc}.help-steps li:nth-child(5){--help-accent:#e3a186}.help-step-art{display:flex;flex-direction:column;align-items:center;gap:6px;align-self:start;padding-top:3px}.help-step-art img{width:32px;height:32px;object-fit:contain;filter:drop-shadow(0 2px #111b14)}.help-step-art>span{font-size:7px;letter-spacing:2px;color:var(--help-accent)}.help-steps h3{font-size:10px;color:var(--help-accent);line-height:1.5;margin-bottom:5px}.help-steps p{margin:0;font-size:10px;line-height:1.8;color:#b7c5ab}.help-steps strong{color:#e0e5c8}
.help-dialog .help-controls{margin-top:16px;padding-top:13px;border-top:1px solid #43533b}.help-controls p{font-size:8px;line-height:1.8;margin:0;color:#a2b397}.help-shortcuts{display:flex;flex-wrap:wrap;gap:10px 16px;margin-top:12px;font-size:8px;color:#bccaaa}.help-shortcuts>span{display:flex;align-items:center;gap:7px}.help-controls kbd{display:inline-block;min-width:22px;padding:4px 5px;background:#303c2d;border:1px solid #617251;box-shadow:0 2px #101711;font:inherit;text-align:center;color:var(--gold)}.help-dialog #help-done{margin-top:20px}
@media(max-width:680px){.help-dialog{padding:18px}.help-header{gap:10px}.help-header>img{width:51px;height:39px}.help-header .eyebrow{font-size:8px;letter-spacing:1px}.help-dialog h2{font-size:13px;margin-top:6px}.help-dialog .help-goal{font-size:8px;padding:9px 11px;margin-top:14px}.help-steps{margin-top:12px;gap:6px}.help-steps li{grid-template-columns:30px minmax(0,1fr);gap:10px;padding:10px}.help-step-art img{width:28px;height:28px}.help-steps h3{font-size:9px;margin-bottom:4px}.help-steps p{font-size:8px;line-height:1.9}.help-shortcuts{gap:10px;font-size:7px}.help-controls p{font-size:7px}.help-dialog #help-done{margin-top:16px}}
