/* ══════════════════════════════════════
   ATLAS MAP — Account Dashboard
   Namespace: .atlasmap-*  (non confondere con .atlas-* del sito marketing)
══════════════════════════════════════ */

.atlasmap-acct {
  font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, sans-serif;
  max-width: 960px;
  margin: 0 auto;
  padding: 32px 20px 72px;
  color: #1f2a37;
  box-sizing: border-box;
}
.atlasmap-acct * { box-sizing: border-box; }

/* Header */
.atlasmap-acct__header {
  display: flex; align-items: center; justify-content: space-between;
  gap: 16px; padding-bottom: 24px; margin-bottom: 28px;
  border-bottom: 1px solid #e2e8f0; flex-wrap: wrap;
}
.atlasmap-acct__brand-name { display: block; font-weight: 700; font-size: 18px; color: #223a5e; letter-spacing: 0.02em; }
.atlasmap-acct__brand-sub { display: block; font-size: 12px; color: #64748b; }
.atlasmap-acct__user { display: flex; align-items: center; gap: 10px; }
.atlasmap-acct__user img { border-radius: 50%; }
.atlasmap-acct__user-name { font-weight: 600; font-size: 14px; }
.atlasmap-acct__logout { font-size: 13px; color: #64748b; text-decoration: none; border: 1px solid #e2e8f0; padding: 6px 12px; border-radius: 8px; }
.atlasmap-acct__logout:hover { background: #f8fafc; color: #223a5e; }

/* Welcome */
.atlasmap-acct__welcome { margin-bottom: 28px; }
.atlasmap-acct__welcome h1 { font-size: 28px; font-weight: 600; margin: 0 0 6px; color: #1f2a37; }
.atlasmap-acct__welcome p { margin: 0 0 14px; color: #64748b; font-size: 15px; }

.atlasmap-status {
  display: inline-flex; align-items: center; gap: 8px;
  font-size: 13px; font-weight: 600; padding: 7px 14px; border-radius: 999px;
}
.atlasmap-status--on { background: #edf5f0; color: #1f7a49; }
.atlasmap-status--off { background: #fff7ed; color: #a85d00; }
.atlasmap-status::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: currentColor; }

/* Card principale */
.atlasmap-card {
  background: #ffffff; border: 1px solid #e2e8f0; border-radius: 18px;
  padding: 28px; margin-bottom: 20px;
}
.atlasmap-card--main { border-top: 4px solid #223a5e; }
.atlasmap-card__head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 20px; flex-wrap: wrap; gap: 10px; }
.atlasmap-card__head h2 { font-size: 20px; font-weight: 600; margin: 0; }

.atlasmap-badge { display: inline-block; font-size: 12px; font-weight: 700; text-transform: uppercase; padding: 5px 12px; border-radius: 999px; }
.atlasmap-badge--active { background: #47c27a; color: #fff; }

.atlasmap-card__grid {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px;
  padding: 20px 0; margin-bottom: 22px; border-top: 1px solid #f1f5f9; border-bottom: 1px solid #f1f5f9;
}
.atlasmap-card__field { display: flex; flex-direction: column; gap: 4px; }
.atlasmap-card__label { font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.06em; color: #94a3b8; }
.atlasmap-card__field strong { font-size: 16px; color: #1f2a37; }
.atlasmap-card__note { font-size: 14px; color: #a85d00; background: #fff7ed; padding: 12px 16px; border-radius: 10px; margin: 0; }

/* Card stato vuoto */
.atlasmap-card--empty { text-align: center; border-top: 4px solid #f59e0b; }
.atlasmap-card--empty h2 { font-size: 22px; margin-bottom: 8px; }
.atlasmap-card--empty p { color: #64748b; margin-bottom: 20px; }

/* Bottoni */
.atlasmap-btn {
  display: inline-block; text-decoration: none; font-weight: 700; font-size: 15px;
  padding: 14px 24px; border-radius: 10px; text-align: center; transition: 0.2s ease;
}
.atlasmap-btn--cta { background: #223a5e; color: #fff; width: 100%; }
.atlasmap-btn--cta:hover { background: #1a2f4d; transform: translateY(-1px); }
.atlasmap-btn--primary { background: #223a5e; color: #fff; }
.atlasmap-btn--primary:hover { background: #1a2f4d; }

/* Griglia gestione abbonamento */
.atlasmap-grid--secondary {
  display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 16px; margin-bottom: 32px;
}
.atlasmap-tile {
  display: flex; flex-direction: column; gap: 4px;
  background: #f8fafc; border: 1px solid #e2e8f0; border-radius: 14px;
  padding: 18px 20px; text-decoration: none; color: #1f2a37; transition: 0.2s ease;
}
.atlasmap-tile:hover { border-color: #223a5e; background: #fff; transform: translateY(-2px); }
.atlasmap-tile__title { font-weight: 700; font-size: 14.5px; }
.atlasmap-tile__desc { font-size: 13px; color: #64748b; }
.atlasmap-tile--muted .atlasmap-tile__title { color: #7a4b1d; }

/* Supporto */
.atlasmap-support h3 { font-size: 15px; font-weight: 700; margin-bottom: 12px; color: #1f2a37; }
.atlasmap-tag-riga { display: flex; flex-wrap: wrap; gap: 10px; }
.atlasmap-pill {
  display: inline-flex; align-items: center; padding: 9px 16px; border-radius: 999px;
  font-size: 13.5px; font-weight: 600; text-decoration: none;
  background: #fff; border: 1.5px solid #cbd5e1; color: #475569; transition: 0.2s ease;
}
.atlasmap-pill:hover { border-color: #223a5e; color: #223a5e; }

/* Guest */
.atlasmap-acct--guest { text-align: center; padding: 60px 20px; }

/* Responsive */
@media (max-width: 640px) {
  .atlasmap-acct__header { flex-direction: column; align-items: flex-start; }
  .atlasmap-card__grid { grid-template-columns: 1fr; }
  .atlasmap-grid--secondary { grid-template-columns: 1fr; }
  .atlasmap-card { padding: 20px; }
}

/* Accesso amministratore */
.atlasmap-badge--admin { background: #0891b2; color: #fff; }
.atlasmap-card__grid--admin { grid-template-columns: repeat(2, 1fr); }

/* Quando sostituiamo l'account PMPro, neutralizza gli spazi del wrapper del tema/PMPro. */
body.pmpro-account .atlasmap-acct,
body.page .atlasmap-acct { width: 100%; }

@media (max-width: 640px) {
  .atlasmap-card__grid--admin { grid-template-columns: 1fr; }
}
