.interaction-layer{position:absolute;inset:0;pointer-events:none;z-index:4;overflow:hidden}.action-receipt,.construction-meter,.upgrade-peek{position:absolute;transform:translate(-50%,calc(-100% - 30px));background:#143e43ee;color:#fff0bf;border:1px solid #dfc682;border-radius:7px;box-shadow:0 4px 12px #12363840;text-align:center;white-space:nowrap;font-size:11px;padding:6px 9px;line-height:1.35}.action-receipt{animation:receipt-arrive .2s ease-out}.action-receipt[data-kind=ready],.action-receipt[data-kind=upgrade]{border-color:#bce0a6;background:#245747f2}.action-receipt[data-kind=refund]{color:#c7f3b2}.construction-meter{min-width:93px;font-size:10px;padding:5px 7px}.construction-meter i{display:block;height:4px;background:#56756a;border-radius:4px;overflow:hidden;margin-top:4px}.construction-meter b{display:block;height:100%;background:#f1d889}.upgrade-peek{border:2px solid #bde6bd;z-index:2;white-space:normal;min-width:170px;max-width:210px;padding:8px 11px}.upgrade-peek strong,.upgrade-peek span,.upgrade-peek small{display:block}.upgrade-peek span{margin-top:4px}.upgrade-peek small{font-size:9px;color:#d2e5c5;margin-top:3px}.drag-ghost .drag-budget{display:block;padding-top:5px;border-top:1px solid #ffffff30;font-size:10px;color:#f9dfa1;margin-top:5px}.drag-ghost[data-valid=false] .drag-budget{color:#ffd0b9}@keyframes receipt-arrive{from{opacity:.3;translate:0 5px}to{opacity:1;translate:0 0}}@media(max-width:700px),(max-height:550px){.action-receipt{font-size:9px;padding:5px 7px}.construction-meter{font-size:9px;min-width:82px}.upgrade-peek{font-size:10px;min-width:160px;padding:7px 9px}}@media(prefers-reduced-motion:reduce){.action-receipt{animation:none}}



.drag-ghost[data-pointer=touch]{transform:none}
.game-shell button:not([data-tower]){touch-action:manipulation}
