/* Precise placement controls are independent of the original canvas and save. */
[data-pip-upgrade="tower-defense-td"] { margin: 12px 0; max-width: 100%; }
[data-pip-upgrade="tower-defense-td"] [hidden] { display: none !important; }
[data-pip-upgrade="tower-defense-td"] .td-plan-open { width: 100%; }
#td-plan-panel { padding: 12px; margin-top: 10px; border: 2px solid #166534; border-radius: 12px; background: #f0fdf4; }
#td-plan-panel h2 { font-size: 1rem; margin-bottom: 6px; }
#td-plan-panel p { font-size: .8rem; line-height: 1.4; margin: 8px 0; overflow-wrap: anywhere; }
#td-plan-panel label { display: block; font-size: .8rem; font-weight: 700; margin: 8px 0 4px; }
#td-plan-panel select, #td-plan-panel input { min-height: 44px; min-width: 44px; width: 100%; padding: 8px; border: 2px solid #64748b; border-radius: 8px; background: #fff; color: #1e293b; font: inherit; font-size: 1rem; }
#td-plan-panel button { min-height: 44px; min-width: 44px; max-width: 100%; }
.td-plan-coords { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 10px; }
.td-plan-coords > div { min-width: 0; }
#td-plan-map { display: grid; grid-template-columns: repeat(9,minmax(0,1fr)); gap: 2px; width: 100%; max-width: 260px; margin: 10px auto; }
.td-plan-cell { aspect-ratio: 1; display: flex; align-items: center; justify-content: center; border: 1px solid #86a873; background: #b8d9a5; color: #172d19; font: 800 .8rem/1 system-ui,sans-serif; }
.td-plan-cell.road { background: #dcb77e; border-color: #8a5a17; }
.td-plan-cell.reach { outline: 2px solid #166534; outline-offset: -3px; }
.td-plan-cell.tower { background: #334155; color: #fff; }
.td-plan-cell.planned { border: 3px solid #111827; }
#td-plan-panel .td-plan-legend, #td-plan-panel .td-plan-note { font-size: .72rem; }
.td-plan-actions { display: flex; flex-wrap: wrap; gap: 8px; }
[data-pip-upgrade="tower-defense-td"] :focus-visible { outline: 3px solid #2563eb; outline-offset: 3px; }
@media (prefers-reduced-motion: reduce) { [data-pip-upgrade="tower-defense-td"] *, [data-pip-upgrade="tower-defense-td"] *::before, [data-pip-upgrade="tower-defense-td"] *::after { animation: none !important; transition: none !important; } }
