.spot-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 1rem; }
.spot-card { border: 1px solid var(--line); border-radius: var(--radius-lg); background: var(--panel); padding: 1rem; min-height: 210px; display: grid; align-content: space-between; gap: .8rem; }
.spot-card.founded { border-color: rgba(132,240,192,.42); background: linear-gradient(135deg, rgba(132,240,192,.10), rgba(8,17,31,.82)); }
.spot-card.locked { opacity: .68; }
.spot-art { height: 84px; border-radius: var(--radius-md); border: 1px solid var(--line); background: radial-gradient(circle at 25% 20%, rgba(104,215,255,.24), transparent 36%), linear-gradient(135deg, rgba(74, 92, 120, .35), rgba(18,34,54,.88)); position: relative; overflow: hidden; }
.spot-art::after { content: ""; position: absolute; inset: auto -10% -22% -10%; height: 54%; background: rgba(132,240,192,.12); transform: skewY(-5deg); }
.object-list { display: grid; gap: .75rem; }
.object-row { display: grid; grid-template-columns: 150px 1fr auto; gap: .8rem; align-items: center; border: 1px solid var(--line); border-radius: var(--radius-md); background: rgba(255,255,255,.035); padding: .75rem; }
.object-type { color: var(--accent); font-weight: 800; }
.object-note { color: var(--muted); }
.galaxy-map { border: 1px solid var(--line); border-radius: var(--radius-xl); background: rgba(3,8,15,.55); padding: 1rem; display: grid; gap: .5rem; justify-content: center; overflow: auto; }
.galaxy-row { display: flex; gap: .5rem; }
.sector-cell { width: 54px; height: 54px; border: 1px solid var(--line); border-radius: 14px; background: rgba(255,255,255,.035); display: grid; place-items: center; color: var(--faint); position: relative; }
.sector-cell.home { border-color: rgba(104,215,255,.72); color: var(--accent); background: rgba(104,215,255,.12); box-shadow: 0 0 24px rgba(104,215,255,.16); }
.sector-cell.protected::after { content: ""; position: absolute; inset: 5px; border: 1px dashed rgba(132,240,192,.28); border-radius: 10px; }
.sector-cell.unknown { color: rgba(255,255,255,.22); }
@media (max-width: 900px) {
  .spot-grid { grid-template-columns: 1fr; }
  .object-row { grid-template-columns: 1fr; }
}
