/* platform.css — styles propres aux pages plateforme (landing, onboarding,
   super-admin). Complète base.css + le thème generic. */

.hero--landing{padding:44px 32px 38px}
.lead{font-size:1.15rem;line-height:1.5;margin:0;max-width:48ch;color:var(--hero-ink);opacity:.95}

.steps{margin:0;padding-left:1.2em;display:grid;gap:8px}
.steps li{padding-left:4px}

.offers{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.offer{border:1px solid var(--line);border-radius:14px;padding:18px;background:var(--bg)}
.offer--feature{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset}
.offer h3{margin:0 0 6px;font-family:var(--font-display)}
.offer-price{font-family:var(--font-data);font-weight:700;font-size:1.25rem;margin:0 0 8px;color:var(--accent)}
.offer p{margin:0;font-size:.92rem}

.site-links{margin:22px 0 8px;text-align:center;font-size:.9rem;color:var(--muted)}
.site-links a{color:var(--accent);text-decoration:none;font-weight:600}
.site-links a:hover{text-decoration:underline}

/* Bandeau légal « non vérifié » */
.legal-banner{
  margin-top:18px;padding:12px 16px;border-radius:12px;font-size:.86rem;line-height:1.45;
  background:color-mix(in srgb, var(--automate) 12%, transparent);
  border:1px solid color-mix(in srgb, var(--automate) 40%, transparent);
  color:var(--text);
}
.badge--verified{background:color-mix(in srgb, var(--open) 20%, transparent);border-color:color-mix(in srgb, var(--open) 45%, transparent);cursor:help}

/* Formulaire onboarding / admin plateforme */
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.form-grid label{display:flex;flex-direction:column;gap:5px;font-size:.9rem;color:var(--muted)}
.form-grid .col-2{grid-column:1 / -1}
.form-grid input,.form-grid select,.form-grid textarea{
  padding:10px;border:1px solid var(--line);border-radius:9px;font-size:.95rem;font-family:inherit;background:var(--card);color:var(--text)
}
.subdomain-row{display:flex;align-items:center;gap:0}
.subdomain-row input{border-radius:9px 0 0 9px;text-align:right}
.subdomain-row .suffix{padding:10px 12px;border:1px solid var(--line);border-left:0;border-radius:0 9px 9px 0;background:var(--bg);color:var(--muted);white-space:nowrap}

.admin-table{width:100%;border-collapse:collapse;font-size:.92rem}
.admin-table th,.admin-table td{text-align:left;padding:9px 10px;border-bottom:1px solid var(--line)}
.admin-table th{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}
/* Colonne « Actions » : boutons compacts en rangée (le <form> est déjà flex-wrap).
   Scopé à .admin-table => n'affecte que la page super-admin ; les .btn partagés
   des autres pages gardent leur taille normale. */
.admin-table .btn{padding:6px 11px;font-size:13px;line-height:1.2;border-radius:8px;white-space:nowrap;flex:0 0 auto}
/* Élargit la colonne d'actions du tableau des tenants pour que les boutons se
   placent côte à côte (et wrappent proprement). Scopé à .admin-table--tenants =>
   n'affecte pas le tableau des signalements. Desktop only pour éviter le scroll mobile. */
@media(min-width:681px){ .admin-table--tenants td:last-child{min-width:250px} }
/* Mobile : le tableau tenants (7 colonnes) devient une carte par ligne — pas de
   scroll horizontal, lignes courtes. Labels injectés en CSS (pas de data-label). */
@media(max-width:680px){
  .admin-table--tenants thead{display:none}
  .admin-table--tenants tbody,.admin-table--tenants tr,.admin-table--tenants td{display:block}
  .admin-table--tenants tr{border:1px solid var(--line);border-radius:12px;padding:8px 14px;margin:0 0 12px}
  .admin-table--tenants td{border:0;padding:5px 0;display:flex;justify-content:space-between;align-items:center;gap:14px;text-align:right}
  .admin-table--tenants td::before{content:attr(data-lbl);color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;font-weight:700;text-align:left}
  .admin-table--tenants td:nth-of-type(1)::before{content:"Sous-domaine"}
  .admin-table--tenants td:nth-of-type(2)::before{content:"Statut"}
  .admin-table--tenants td:nth-of-type(3)::before{content:"Offre"}
  .admin-table--tenants td:nth-of-type(4)::before{content:"E-mail"}
  .admin-table--tenants td:nth-of-type(5)::before{content:"Revalidation"}
  .admin-table--tenants td:nth-of-type(6)::before{content:"Signalements"}
  .admin-table--tenants td:last-child{display:block;text-align:left;margin-top:6px;padding-top:10px;border-top:1px solid var(--line)}
  .admin-table--tenants td:last-child::before{content:"Actions";display:block;margin-bottom:8px}
}
.pill{display:inline-block;padding:2px 9px;border-radius:999px;font-size:.78rem;font-weight:600}
.pill--active{background:color-mix(in srgb,var(--open) 18%,transparent);color:var(--open)}
.pill--suspended{background:color-mix(in srgb,var(--closed) 16%,transparent);color:var(--closed)}
.pill--pending_email,.pill--pending{background:color-mix(in srgb,var(--automate) 16%,transparent);color:var(--automate)}
.pill--banned{background:#444;color:#fff}

@media(max-width:680px){
  .offers{grid-template-columns:1fr}
  .form-grid{grid-template-columns:1fr}
}
