/* Shared Matrix loadout/dialog styling is loaded first; only Tower's inner layout changes. */
.tower-selectors{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0}
.tower-selectors button{display:flex;align-items:center;justify-content:center;gap:10px;min-height:80px;padding:12px;border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--card));color:hsl(var(--foreground));font:inherit;font-size:.85rem;cursor:pointer}
.tower-selectors button[aria-pressed=true]{border-color:hsl(var(--primary));background:hsl(var(--primary)/.1)}
.tower-selectors button:focus-visible{outline:2px solid hsl(var(--primary));outline-offset:3px}
.tower-spire{display:block;flex:none;width:58px;height:58px;background-image:var(--tower-art);background-size:232px 77px;background-position:50% center;border-radius:4px}
.tower-spire--left{background-position:49% center}.tower-spire--middle{background-position:73% center}.tower-spire--right{background-position:98% center}.tower-spire--all{background-size:174px 58px;background-position:90% center;width:100px}
.tower-selector-copy{display:grid;gap:4px;min-width:0;text-align:start;line-height:1.35}
.tower-selector-copy small{font-size:.75rem;color:hsl(var(--muted-foreground))}
.tower-floor{padding-block:14px 28px;border-bottom:1px solid hsl(var(--border));min-width:0}
.tower-floor-heading{display:flex;align-items:center;gap:16px;margin-bottom:14px}.tower-floor-heading>div{flex:1;min-width:0}.tower-floor-heading h3{font-size:1.05rem;margin:0 0 6px}.tower-floor-heading p{margin:0;color:hsl(var(--muted-foreground));font-size:.85rem}.tower-enemy{width:96px;height:96px;object-fit:contain}
.tower-run .matrix-run-main{grid-template-columns:52px minmax(150px,1fr) minmax(300px,1.6fr) auto;grid-template-areas:'rank result team actions';gap:20px}
.tower-run .matrix-run-team{justify-content:center;grid-template-columns:repeat(3,minmax(0,100px))}.tower-run .matrix-run-team[data-members="1"]{grid-template-columns:minmax(0,100px)}.tower-run .matrix-run-team[data-members="2"]{grid-template-columns:repeat(2,minmax(0,100px))}
.tower-run .matrix-run-actions{max-width:150px;flex-wrap:wrap}.tower-run .matrix-score{font-size:clamp(1.3rem,2.4vw,2rem)}
.tower-guide-floor{padding-block:20px;border-bottom:1px solid hsl(var(--border))}.tower-guide-floor li{margin:10px 0}.tower-guide-floor p{line-height:1.75}
.aw-tower-page .matrix-filters{grid-template-columns:repeat(3,minmax(0,1fr))}
.tower-time-entry{display:grid;grid-template-columns:minmax(180px,1fr) minmax(0,1.5fr);gap:12px 18px;align-items:center}
.tower-time-guidance{margin:0;color:hsl(var(--muted-foreground));font-size:.82rem;line-height:1.65}
.tower-time-result{grid-column:1/-1;margin:0;font-size:.9rem}.tower-time-result output{display:inline-block;color:hsl(var(--primary));font-weight:700;font-variant-numeric:tabular-nums}
@media(max-width:600px){.tower-time-entry{grid-template-columns:1fr}}
@media(max-width:800px){.tower-selectors{grid-template-columns:repeat(2,minmax(0,1fr))}.tower-run .matrix-run-main{grid-template-columns:42px minmax(0,1fr);grid-template-areas:'rank result' 'team team' 'actions actions';gap:12px}.tower-run .matrix-run-actions{max-width:none;justify-content:center}.tower-run .matrix-run-team{width:100%;justify-content:center}.tower-enemy{width:70px;height:70px}.tower-floor-heading{gap:10px}.tower-floor-heading h3{font-size:.9rem}.aw-tower-page .matrix-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.tower-selectors button{flex-direction:column;gap:6px}.tower-selector-copy{text-align:center}}
@media(max-width:390px){.tower-floor-heading{flex-wrap:wrap}.tower-floor-heading>button{margin-inline-start:auto}.aw-tower-page .matrix-filters{grid-template-columns:1fr}}
