/* =============================================================
   DualAI CRM — «Atelier» (V10). Rediseño visual completo.
   Paleta de la marca (negro neutro, un solo verde) con identidad
   propia, distinta de la web: Geist para todo, Geist Mono para
   cifras y etiquetas, figuras 3D de líneas que se trazan al entrar,
   títulos que se descifran y tarjetas que aparecen con un barrido
   (atelier.js). Se carga la última.
   ============================================================= */

/* ── Tokens ─────────────────────────────────────────────────── */
:root,
[data-theme="dark"] {
  --at-bg: #0b0c0b;
  --at-surface: rgba(20, 22, 20, 0.78);
  --at-surface-solid: #141614;
  --at-surface-2: #191c19;
  --at-line: rgba(255, 255, 255, 0.08);
  --at-line-2: rgba(255, 255, 255, 0.16);
  --at-ink: #f2f3f1;
  --at-muted: #a4aaa5;
  --at-soft: #858b86;
  --at-accent: #6fd3a5;
  --at-accent-hover: #8be0b8;
  --at-accent-ink: #06140d;
  --at-accent-dim: rgba(111, 211, 165, 0.12);
  --at-warn: #e2b56f;
  --at-danger: #ef8a7c;
  --at-mono: "Geist Mono", "JetBrains Mono", ui-monospace, monospace;
  --at-ease: cubic-bezier(0.2, 0.8, 0.2, 1);

  /* El resto de hojas leen estos nombres: así hereda todo la paleta */
  --bg: var(--at-bg);
  --bg-elevated: var(--at-surface-solid);
  --bg-sunken: #090a09;
  --canvas: var(--at-bg);
  --border: var(--at-line);
  --border-strong: var(--at-line-2);
  --text: var(--at-ink);
  --text-muted: var(--at-muted);
  --text-soft: var(--at-soft);
  --primary: var(--at-accent);
  --primary-hover: var(--at-accent-hover);
  --primary-contrast: var(--at-accent-ink);
  --accent: var(--at-accent);
  --accent-hover: var(--at-accent-hover);
  --accent-bg: var(--at-accent-dim);
  --accent-border: rgba(111, 211, 165, 0.32);
  --success: var(--at-accent);
  --warn: var(--at-warn);
  --danger: var(--at-danger);
  --font-ui: Geist, system-ui, -apple-system, "Segoe UI", Arial, sans-serif;
  --font-mono: var(--at-mono);
  --font: var(--font-ui);
  --font-display: var(--font-ui);
  --hairline: var(--at-line);
  --hairline-strong: var(--at-line-2);
  --card-bg: var(--at-surface);
  --card-radius: 20px;
  --label: var(--at-soft);
  --ui-sidebar-w: 248px;
  --fx-jade: 111 211 165;
  --gcal-today: var(--at-accent);
  --gcal-grid-bg: #0e100e;
  --gcal-row-stripe: #0c0d0c;
}
[data-theme="light"] {
  --at-bg: #f4f5f2;
  --at-surface: rgba(255, 255, 255, 0.86);
  --at-surface-solid: #ffffff;
  --at-surface-2: #eef0ec;
  --at-line: rgba(11, 12, 11, 0.09);
  --at-line-2: rgba(11, 12, 11, 0.18);
  --at-ink: #0b0c0b;
  --at-muted: #4d544f;
  --at-soft: #6b726d;
  --at-accent: #1f7a55;
  --at-accent-hover: #17623f;
  --at-accent-ink: #ffffff;
  --at-accent-dim: rgba(31, 122, 85, 0.1);
  --at-warn: #9a6512;
  --at-danger: #b2433a;
  --bg-sunken: #eceee9;
  --accent-border: rgba(31, 122, 85, 0.3);
  --fx-jade: 31 122 85;
  --gcal-grid-bg: #ffffff;
  --gcal-row-stripe: #f7f8f5;
}

/* ── Base ───────────────────────────────────────────────────── */
html.atelier body.app-body,
html.atelier[data-theme] body.app-body {
  background: var(--at-bg);
  color: var(--at-ink);
  font-family: var(--font-ui);
  font-size: 15px;
  letter-spacing: 0;
  -webkit-font-smoothing: antialiased;
}
html.atelier .fx-ambient,
html.atelier .fx-border,
html.atelier .fx-progress { display: none !important; }
.at-cloud {
  position: fixed;
  inset: 0;
  z-index: 0;
  width: 100vw;
  height: 100vh;
  pointer-events: none;
}
html.atelier .app-shell { position: relative; z-index: 1; }
::selection { background: var(--at-accent); color: var(--at-accent-ink); }

/* ── Menú lateral: panel flotante ───────────────────────────── */
html.atelier .app-sidebar {
  background: transparent;
  border-right: 0;
  padding: 14px 0 14px 14px;
}
html.atelier .app-sidebar > * { position: relative; }
html.atelier .app-sidebar::before {
  content: "";
  position: absolute;
  inset: 12px 0 12px 12px;
  border-radius: 22px;
  background: var(--at-surface);
  box-shadow: 0 0 0 1px var(--at-line);
}
html.atelier .app-brand { padding: 14px 16px 18px; }
html.atelier .app-brand-name { font-weight: 700; letter-spacing: -0.03em; font-size: 19px; }
html.atelier .app-brand-sub {
  font-family: var(--at-mono);
  font-size: 11px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--at-accent);
}
html.atelier .app-nav { padding: 0 10px; }
html.atelier .app-nav-group-label {
  font-size: 10.5px;
  font-weight: 600;
  letter-spacing: 0.14em;
  color: var(--at-soft);
  padding: 18px 12px 6px;
}
html.atelier .app-sidebar .app-nav-item {
  min-height: 42px;
  padding: 9px 12px;
  border-radius: 12px;
  font-size: 14px;
  font-weight: 500;
  color: var(--at-muted);
  border: 0;
}
html.atelier .app-sidebar .app-nav-item:hover { background: rgba(255, 255, 255, 0.04); color: var(--at-ink); }
html.atelier[data-theme="light"] .app-sidebar .app-nav-item:hover { background: rgba(11, 12, 11, 0.04); }
html.atelier .app-sidebar .app-nav-item[aria-current="page"] {
  color: var(--at-ink);
  background: var(--at-accent-dim);
  box-shadow: none;
}
html.atelier .app-sidebar .app-nav-item[aria-current="page"] .ui-icon { color: var(--at-accent); }
html.atelier .app-sidebar .app-nav-item[aria-current="page"]::after {
  display: block;
  content: "";
  width: 6px;
  height: 6px;
  margin-left: auto;
  border-radius: 50%;
  background: var(--at-accent);
  box-shadow: 0 0 0 4px var(--at-accent-dim);
}
html.atelier .fx-nav-pill { display: none; }
html.atelier .app-sidebar-foot { border-top: 0; padding: 12px 14px 18px; background: transparent; }
html.atelier .premium-workspace { background: transparent; border: 0; padding: 4px 4px 10px; }
html.atelier .premium-workspace-mark {
  border-radius: 50%;
  background: var(--at-accent);
  color: var(--at-accent-ink);
  border: 0;
  font-weight: 700;
}
html.atelier .app-collapse-btn { border-radius: 999px; border-color: var(--at-line); background: transparent; }

/* ── Barra superior: integrada en la página ─────────────────── */
html.atelier .app-topbar {
  background: transparent;
  border-bottom: 0;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  min-height: 72px;
  padding-top: 12px;
}
html.atelier .premium-breadcrumb { font-size: 13px; color: var(--at-soft); }
html.atelier .premium-breadcrumb strong { color: var(--at-ink); font-weight: 600; }
html.atelier .ui-search {
  border-radius: 999px;
  background: var(--at-surface);
  border: 1px solid var(--at-line);
}
html.atelier .ui-search input { font-family: var(--font-ui); font-size: 14px; }
html.atelier .premium-command-trigger,
html.atelier .app-account,
html.atelier .app-topbar .ui-icon-btn {
  border-radius: 999px;
  background: var(--at-surface);
  border: 1px solid var(--at-line);
  box-shadow: none;
}
html.atelier .premium-command-trigger kbd { border-radius: 6px; background: transparent; border-color: var(--at-line-2); }
html.atelier .app-account .avatar { background: var(--at-accent); color: var(--at-accent-ink); border: 0; }
html.atelier .hal-chat-toggle { color: var(--at-accent); }

/* ── Contenido ──────────────────────────────────────────────── */
html.atelier .app-content { max-width: 1320px; padding-top: 8px; }
html.atelier .app-footer { color: var(--at-soft); border-top: 0; }

/* ── Titulares ──────────────────────────────────────────────── */
html.atelier .app-content :is(h1, h2, h3, h4) { font-family: var(--font-ui); color: var(--at-ink); }
html.atelier .app-content .page-head,
html.atelier .app-content .pw-page-head {
  position: relative;
  border-bottom: 0;
  padding: 36px 0 30px;
  margin-bottom: 8px;
  align-items: flex-end;
}
/* Etiqueta numerada de la sección («02 — Cartera») */
html.atelier .app-content .page-head > div:first-child::before,
html.atelier .app-content .pw-page-head > div:first-child::before {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 18px;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--at-muted);
}
body[data-section="sales"] .page-head > div:first-child::before { content: "01 \2014\2014  Oportunidades"; }
body[data-section="clients"] .page-head > div:first-child::before { content: "03 \2014\2014  Cartera de clientes"; }
body[data-section="calendar"] .page-head > div:first-child::before { content: "02 \2014\2014  Agenda"; }
body[data-section="work"] .page-head > div:first-child::before { content: "05 \2014\2014  Entrega"; }
body[data-section="projects"] .pw-page-head > div:first-child::before { content: "04 \2014\2014  Cartera de trabajos"; }
body[data-section="team"] .page-head > div:first-child::before { content: "06 \2014\2014  Personas"; }
html.atelier .pw-page-head .pw-eyebrow { display: none; }

html.atelier .app-content .page-head h1,
html.atelier .app-content .pw-page-head h1 {
  font-family: var(--font-ui);
  font-weight: 600;
  font-size: clamp(42px, 5vw, 76px);
  line-height: 1;
  letter-spacing: -0.055em;
  background: none;
  color: var(--at-ink);
  -webkit-text-fill-color: currentColor;
  margin: 0 0 14px;
}
html.atelier .app-content .page-head h1 .client-avatar { vertical-align: middle; }
html.atelier .app-content .page-head p.muted,
html.atelier .app-content .pw-page-head p { font-size: 15px; color: var(--at-muted); max-width: 64ch; }
html.atelier .app-content h2 { font-weight: 650; letter-spacing: -0.025em; }

/* Inicio y Control de IA: titular grande con la palabra clave en verde */
html.atelier .dash-greet,
html.atelier .ai-visual-hero h1 {
  font-family: var(--font-ui);
  font-weight: 600;
  font-size: clamp(46px, 6vw, 96px);
  line-height: 1;
  letter-spacing: -0.06em;
  background: none;
  color: var(--at-ink);
  -webkit-text-fill-color: currentColor;
}
html.atelier :is(.dash-greet, .ai-visual-hero h1, h1, h2) em {
  font-style: normal;
  color: var(--at-accent);
}
/* Cursor de terminal tras el título: parpadea al descifrarse y se queda */
html.atelier :is(.page-head h1, .pw-page-head h1, .dash-greet, .ai-visual-hero h1, .auth-card-premium h1)::after {
  content: "";
  display: inline-block;
  width: 0.09em;
  height: 0.78em;
  margin-left: 0.08em;
  vertical-align: -0.04em;
  border-radius: 2px;
  background: var(--at-accent);
}
@keyframes at-caret { 50% { opacity: 0; } }
html.atelier.at-motion :is(.page-head h1, .pw-page-head h1, .dash-greet, .ai-visual-hero h1, .auth-card-premium h1)::after {
  animation: at-caret 1s steps(1) 0.4s 4;
}
/* Etiquetas y numeración en mono */
html.atelier :is(.page-head, .pw-page-head) > div:first-child::before,
html.atelier :is(.premium-eyebrow, .app-nav-group-label, .dash-kpi-label, .premium-auth-domains span) {
  font-family: var(--at-mono);
  font-weight: 500;
}

/* El titular se descifra (atelier.js); el resto entra con un fundido corto */
@keyframes at-fade { from { opacity: 0; } }
html.atelier.at-motion :is(.page-head, .pw-page-head, .premium-hero-copy) :is(p, .page-head-actions, .dash-actions, .pw-page-actions) {
  animation: at-fade 0.6s var(--at-ease) 0.45s both;
}

/* ── Héroe (Inicio, Control de IA): tipografía sobre el fondo 3D ── */
html.atelier .premium-hero,
html.atelier .ai-visual-hero {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 48px 0 40px !important;
  min-height: 420px;
  overflow: visible;
}
html.atelier .premium-hero::before,
html.atelier .premium-hero::after { display: none !important; }
/* La escultura CSS deja su sitio a la nube de puntos */
html.atelier .premium-scene-rig,
html.atelier .premium-scene-caption,
html.atelier .ai-neural-caption { display: none !important; }
html.atelier .premium-scene { background: none; border: 0; box-shadow: none; }
html.atelier .ai-neural-label {
  border-radius: 999px;
  background: var(--at-surface);
  border: 1px solid var(--at-line);
  font-family: var(--font-ui);
  font-size: 11px;
  letter-spacing: 0.1em;
}
html.atelier .premium-eyebrow {
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.14em;
  color: var(--at-muted);
}
html.atelier .premium-eyebrow > span { background: var(--at-accent); width: 28px; }
html.atelier .dash-date { color: var(--at-accent); font-weight: 600; font-size: 14px; }
html.atelier .dash-phrase,
html.atelier .ai-visual-intro { font-size: 18px; color: var(--at-muted); max-width: 48ch; }

/* Accesos rápidos: filas numeradas, sin cajas */
html.atelier .premium-wayfinding { counter-reset: way; gap: 0; border-top: 1px solid var(--at-line); border-bottom: 1px solid var(--at-line); margin: 8px 0 40px; }
html.atelier .premium-wayfinding a {
  counter-increment: way;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  padding: 22px 20px;
  transition: background 0.3s var(--at-ease);
}
html.atelier .premium-wayfinding a + a { border-left: 1px solid var(--at-line); }
html.atelier .premium-wayfinding a::before {
  content: "0" counter(way);
  font-size: 12px;
  font-weight: 600;
  color: var(--at-accent);
  margin-right: 4px;
}
html.atelier .premium-wayfinding a:hover { background: var(--at-accent-dim); }
html.atelier .premium-wayfinding strong { font-size: 16px; font-weight: 600; }
html.atelier .premium-route-icon { display: none; }
html.atelier .premium-route-arrow { transition: transform 0.3s var(--at-ease); }
html.atelier .premium-wayfinding a:hover .premium-route-arrow { transform: translateX(4px); color: var(--at-accent); }
html.atelier .ai-visual-links a { border-radius: 999px; background: var(--at-surface); border: 1px solid var(--at-line); }
html.atelier .ai-visual-links a[aria-current="page"] { border-color: var(--accent-border); background: var(--at-accent-dim); }

/* ── Superficies ────────────────────────────────────────────── */
html.atelier :is(.panel, .dash-panel, .dash-kpi, .pw-project-card, .pw-panel, .team-card,
  .revenue-grid, .data-table-cards, .pw-filter, .form-card, .telemetry-card, .dd-section-card,
  .cockpit-root .panel, .kanban-col, .cap-col, .pipeline-col) {
  background: var(--at-surface);
  border: 1px solid var(--at-line);
  border-radius: 20px;
  box-shadow: none;
}
html.atelier .app-content .panel .revenue-grid { background: transparent; border: 0; }
html.atelier :is(.pw-project-card, .dash-kpi, .team-card, .cap-card, .kanban-card):hover {
  border-color: var(--accent-border);
  box-shadow: 0 30px 60px -36px rgba(0, 0, 0, 0.9);
}
html.atelier .panel-head,
html.atelier .dash-panel-head { border-bottom: 0; }
html.atelier :is(.panel-head h2, .dash-panel-head h2) { font-size: 17px; font-weight: 650; letter-spacing: -0.02em; }
html.atelier .fx-glare { opacity: 0.5; }

/* Indicadores: la cifra es la protagonista */
html.atelier .dash-kpis { gap: 14px; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); }
html.atelier .dash-kpi { padding: 24px 24px 22px; }
html.atelier .dash-kpi::before { display: none; }
html.atelier .dash-kpi-label {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--at-muted);
}
html.atelier .dash-kpi-label .ui-icon { color: var(--at-accent); }
html.atelier .dash-kpis .dash-kpi-label { min-height: 2.9em; align-items: flex-start; }
html.atelier .dash-kpi-value {
  font-family: var(--at-mono);
  font-size: 58px;
  font-weight: 400;
  letter-spacing: -0.06em;
  line-height: 1;
  margin: 22px 0 10px;
  color: var(--at-ink);
}
html.atelier .dash-kpi-value.is-na {
  font-family: var(--at-mono);
  font-weight: 400;
  font-size: 22px;
  letter-spacing: -0.02em;
  color: var(--at-muted);
}
html.atelier .dash-kpi.is-warn .dash-kpi-value { color: var(--at-warn); }
html.atelier .dash-kpi.is-danger .dash-kpi-value { color: var(--at-danger); }
html.atelier .dash-kpi-foot { font-size: 12.5px; color: var(--at-soft); }

/* ── Botones: pastilla ──────────────────────────────────────── */
html.atelier .btn {
  border-radius: 999px;
  font-family: var(--font-ui);
  font-weight: 600;
  font-size: 14px;
  padding: 10px 20px;
  min-height: 42px;
  border: 1px solid var(--at-line-2);
  background: var(--at-surface-solid);
  color: var(--at-ink);
  box-shadow: none;
  transition: background 0.25s var(--at-ease), border-color 0.25s var(--at-ease), transform 0.25s var(--at-ease);
}
html.atelier .btn:hover { border-color: var(--at-accent); color: var(--at-ink); }
html.atelier .btn-primary {
  background: var(--at-accent);
  border-color: var(--at-accent);
  color: var(--at-accent-ink);
}
html.atelier .btn-primary:hover { background: var(--at-accent-hover); border-color: var(--at-accent-hover); color: var(--at-accent-ink); }
html.atelier .btn-danger { border-color: rgba(239, 138, 124, 0.45); color: var(--at-danger); background: var(--at-surface-solid); }
html.atelier .btn-danger:hover { background: rgba(239, 138, 124, 0.1); border-color: var(--at-danger); }
html.atelier .btn:active { transform: scale(0.98); }

/* ── Chips, insignias y vistas ──────────────────────────────── */
html.atelier :is(.badge, .chip, .pill, .count-pill, .tab-badge-count, .panel-count) {
  border-radius: 999px;
  font-family: var(--font-ui);
  font-weight: 600;
}
html.atelier .ui-views,
html.atelier .segmented {
  border-radius: 999px;
  background: var(--at-surface-solid);
  border: 1px solid var(--at-line);
  padding: 4px;
}
html.atelier .ui-views a,
html.atelier .segmented a { border-radius: 999px; font-weight: 600; }
html.atelier .ui-views a[aria-current="page"],
html.atelier .ui-views a.is-active {
  background: var(--at-ink);
  color: var(--at-bg);
}

/* ── Formularios ────────────────────────────────────────────── */
html.atelier :is(.form-input, input[type="text"], input[type="search"], input[type="email"], input[type="tel"],
  input[type="date"], input[type="number"], input[type="datetime-local"], select, textarea):not(.ui-search input) {
  font-family: var(--font-ui);
  border-radius: 12px;
  background: var(--at-surface-2);
  border: 1px solid var(--at-line);
  color: var(--at-ink);
}
html.atelier :is(.form-input, input, select, textarea):focus-visible {
  outline: none;
  border-color: var(--at-accent);
  box-shadow: 0 0 0 4px var(--at-accent-dim);
}

/* ── Avisos ─────────────────────────────────────────────────── */
html.atelier .flash { outline: 0; box-shadow: none; }
html.atelier .pw-alert,
html.atelier .flash-warn {
  border-radius: 16px;
  background: rgba(226, 181, 111, 0.08);
  border: 1px solid rgba(226, 181, 111, 0.28);
  color: var(--at-ink);
  box-shadow: none;
}
html.atelier .pw-alert strong { color: var(--at-warn); }

/* ── Vacíos ─────────────────────────────────────────────────── */
html.atelier .app-content .empty h3 {
  font-weight: 600;
  font-size: 18px;
  letter-spacing: -0.02em;
}
html.atelier .app-content .empty h3 .ui-icon { display: none; }

/* ── Tablas ─────────────────────────────────────────────────── */
html.atelier table th {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--at-soft);
  background: transparent;
}
html.atelier table td { border-color: var(--at-line); }
html.atelier table tbody tr { transition: background 0.2s; }
html.atelier table tbody tr:hover { background: var(--at-accent-dim); }

/* ── Proyectos ──────────────────────────────────────────────── */
html.atelier .pw-project-card { min-height: 0; display: flex; flex-direction: column; gap: 4px; padding: 24px; }
html.atelier .pw-project-card h3 { font-size: 19px; font-weight: 650; letter-spacing: -0.025em; margin: 8px 0 2px; }
html.atelier .pw-project-card p { font-size: 13.5px; line-height: 1.5; color: var(--at-muted); margin: 0; }
html.atelier .pw-project-card .pw-card-client { font-size: 12px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: var(--at-soft); }
html.atelier .pw-project-card .pw-page-actions { margin-top: auto; padding-top: 18px; }
html.atelier .pw-card-link { font-weight: 600; color: var(--at-accent); }
html.atelier .pw-page-head .pw-count,
html.atelier .app-content .pw-alert :is(strong, code) { font-family: var(--font-ui); }
html.atelier .pw-page-head .pw-count { font-size: 13px; color: var(--at-soft); }

/* Vacío suelto en la página (Trabajo): tarjeta propia */
html.atelier .app-content .work-groups > .empty:only-child {
  background: var(--at-surface);
  border: 1px solid var(--at-line);
  border-radius: 20px;
  padding: 64px 16px;
}

/* ── Captación ──────────────────────────────────────────────── */
html.atelier .revenue-card { background: transparent; border: 0; box-shadow: none; }
html.atelier .cap-col { background: rgba(255, 255, 255, 0.015); }
html.atelier[data-theme="light"] .cap-col { background: rgba(11, 12, 11, 0.02); }
html.atelier .cap-card {
  border-radius: 14px;
  background: var(--at-surface-2);
  border: 1px solid var(--at-line);
  box-shadow: none;
}

/* ── Entrada de tarjetas: barrido de escáner (atelier.js añade .at-enter y --i) ── */
@keyframes at-scan {
  from { clip-path: inset(0 100% 0 0 round 20px); border-color: var(--at-accent); }
  70% { border-color: var(--accent-border); }
  to { clip-path: inset(0 0 0 0 round 20px); }
}
html.atelier.at-motion .at-enter {
  animation: at-scan 0.85s cubic-bezier(0.65, 0, 0.35, 1) both;
  animation-delay: calc(var(--i, 0) * 80ms + 200ms);
}

/* ── Móvil ──────────────────────────────────────────────────── */
@media (max-width: 900px) {
  html.atelier .app-sidebar::before { display: none; }
  html.atelier .premium-wayfinding a + a { border-left: 0; border-top: 1px solid var(--at-line); }
  html.atelier .premium-hero,
  html.atelier .ai-visual-hero { min-height: 0; padding: 20px 0 24px !important; }
  html.atelier .dash-kpi-value { font-size: 48px; }
  html.atelier .app-content .page-head,
  html.atelier .app-content .pw-page-head { padding: 20px 0 18px; }
  html.atelier .app-mobile-nav { background: rgba(11, 12, 11, 0.94); border-top: 1px solid var(--at-line); }
  html.atelier[data-theme="light"] .app-mobile-nav { background: rgba(244, 245, 242, 0.96); }
  html.atelier .app-mobile-nav a[aria-current="page"] { color: var(--at-accent); background: var(--at-accent-dim); }
}

@media (prefers-reduced-motion: reduce) {
  html.atelier .at-enter,
  html.atelier :is(.page-head h1, .pw-page-head h1, .dash-greet, .ai-visual-hero h1)::after { animation: none !important; }
}

/* ── Acceso ─────────────────────────────────────────────────── */
html.atelier body.auth-body { background: var(--at-bg); color: var(--at-ink); font-family: var(--font-ui); }
html.atelier .premium-auth-story { background: transparent; border: 0; box-shadow: none; }
html.atelier .premium-auth-story h2 {
  font-family: var(--font-ui);
  font-weight: 650;
  font-size: clamp(40px, 5vw, 76px);
  line-height: 1;
  letter-spacing: -0.05em;
}
html.atelier .premium-auth-domains span { font-size: 12px; font-weight: 600; letter-spacing: 0.12em; color: var(--at-muted); }
html.atelier .auth-card-premium {
  background: var(--at-surface);
  border: 1px solid var(--at-line);
  border-radius: 24px;
  box-shadow: none;
}
html.atelier .auth-card-premium h1 { font-family: var(--font-ui); font-weight: 650; font-size: 40px; letter-spacing: -0.04em; }
html.atelier .auth-brand-suffix { font-family: var(--at-mono); color: var(--at-accent); font-size: 12px; letter-spacing: 0.12em; text-transform: uppercase; }
