/* ═══════════════════════════════════════════════════════════════
   STANDARD SALES GT — Luxury edition
   Paleta: carbón profundo + dorado champán + marfil
   Tipografía: Fraunces (display) · Manrope (texto)
   ═══════════════════════════════════════════════════════════════ */

:root {
  --ink:   #08090C;
  --ink2:  #0D0F14;
  --ink3:  #12151C;
  --ink4:  #191D26;
  --line:  rgba(232, 206, 140, .12);
  --line2: rgba(255, 255, 255, .07);
  --gold:  #C9A24B;
  --gold2: #E8CE8C;
  --gold3: #8C6D2B;
  --cream: #F4EFE4;
  --text:  #EAE5D9;
  --text2: #A89F8C;
  --text3: #6E6A5E;
  --red:   #E0655A;
  --green: #7FB069;
  --font-display: 'Fraunces', Georgia, serif;
  --font-body: 'Manrope', -apple-system, sans-serif;

  /* Sistema visual Standard Sales GT */
  --surface-base: var(--ink);
  --surface-raised: var(--ink2);
  --surface-card: var(--ink3);
  --surface-interactive: var(--ink4);
  --border-subtle: var(--line2);
  --border-accent: var(--line);
  --accent-primary: var(--gold);
  --accent-highlight: var(--gold2);
  --accent-deep: var(--gold3);
  --status-danger: var(--red);
  --status-success: var(--green);

  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-6: 24px;
  --space-8: 32px;
  --space-12: 48px;
  --space-16: 64px;
  --space-24: 96px;

  --radius-control: 2px;
  --radius-card: 4px;
  --radius-panel: 8px;
  --radius-pill: 999px;

  --shadow-control: 0 8px 24px rgba(0,0,0,.24);
  --shadow-card: 0 20px 56px rgba(0,0,0,.36);
  --shadow-elevated: 0 28px 80px rgba(0,0,0,.52);
  --focus-ring: 0 0 0 3px rgba(232,206,140,.2);

  --motion-fast: 160ms;
  --motion-base: 260ms;
  --motion-slow: 700ms;
  --ease-standard: cubic-bezier(.2,.8,.2,1);
  --ease-emphasized: cubic-bezier(.16,1,.3,1);
}

* { margin: 0; padding: 0; box-sizing: border-box; }

html { scroll-behavior: smooth; }

body {
  font-family: var(--font-body);
  background: var(--ink);
  color: var(--text);
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}

button, a, input, select, textarea { -webkit-tap-highlight-color: transparent; }
button, a { touch-action: manipulation; }

:where(button, a, input, select, textarea):focus-visible {
  outline: 2px solid var(--accent-highlight);
  outline-offset: 3px;
  box-shadow: var(--focus-ring);
}

:where(button, .option-pill, .check-pill, .urgencia-btn):active {
  transform: translateY(1px) scale(.99);
}

::selection { background: rgba(201,162,75,.35); color: #fff; }

/* ── Páginas SPA ─────────────────────────────────────────────── */
.page { display: none; min-height: 100vh; }
.page.active { display: block; animation: pageIn var(--motion-base) var(--ease-emphasized) both; }
@keyframes pageIn { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }

/* ═══ NAVBAR ══════════════════════════════════════════════════ */
#navbar {
  position: fixed; top: 0; left: 0; right: 0; z-index: 100;
  transition: background .35s ease, border-color .35s ease, box-shadow .35s ease;
  border-bottom: 1px solid transparent;
  background: linear-gradient(180deg, rgba(8,9,12,.72), rgba(8,9,12,0));
}
#navbar.scrolled {
  background: rgba(8,9,12,.88);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  border-bottom-color: var(--line);
  box-shadow: 0 10px 40px rgba(0,0,0,.45);
}
.nav-inner {
  max-width: 1240px; margin: 0 auto;
  padding: 14px 28px;
  display: flex; align-items: center; justify-content: space-between;
}
.nav-logo { display: flex; align-items: center; gap: 12px; text-decoration: none; }
.nav-logo-icon {
  display: flex;
  filter: drop-shadow(0 8px 18px rgba(0,0,0,.36));
  transition: transform var(--motion-base) var(--ease-standard), filter var(--motion-base) ease;
}
.nav-logo:hover .nav-logo-icon { transform: translateY(-1px); filter: drop-shadow(0 10px 24px rgba(201,162,75,.18)); }
.logo-text { display: flex; flex-direction: column; line-height: 1.15; }
.logo-main {
  font-family: var(--font-display);
  font-size: 19px; font-weight: 600; color: var(--cream);
  letter-spacing: .02em;
}
.logo-main span { color: var(--gold2); font-style: italic; }
.logo-sub {
  font-size: 9.5px; font-weight: 700; color: var(--text3);
  text-transform: uppercase; letter-spacing: .32em;
}
.nav-links { display: flex; align-items: center; gap: 34px; }
.nav-links a {
  color: var(--text2); text-decoration: none;
  font-size: 13px; font-weight: 600;
  text-transform: uppercase; letter-spacing: .14em;
  transition: color .25s;
  position: relative;
}
.nav-links a::after {
  content: ''; position: absolute; left: 0; bottom: -6px;
  width: 0; height: 1px; background: var(--gold);
  transition: width .3s ease;
}
.nav-links a:hover { color: var(--cream); }
.nav-links a:hover::after { width: 100%; }

.nav-cta {
  font-family: var(--font-body);
  background: linear-gradient(135deg, var(--gold2), var(--gold) 55%, var(--gold3));
  color: #14100A; border: none; cursor: pointer;
  font-size: 12.5px; font-weight: 800;
  text-transform: uppercase; letter-spacing: .12em;
  padding: 12px 22px; border-radius: 2px;
  transition: transform .25s ease, box-shadow .25s ease, filter .25s;
  box-shadow: 0 0 0 1px rgba(232,206,140,.25), 0 8px 24px rgba(201,162,75,.18);
}
.nav-cta:hover { transform: translateY(-1px); filter: brightness(1.07); box-shadow: 0 0 0 1px rgba(232,206,140,.4), 0 12px 30px rgba(201,162,75,.3); }

.hamburger { display: none; background: none; border: none; cursor: pointer; padding: 8px; }
.hamburger span {
  display: block; width: 24px; height: 2px; background: var(--cream);
  margin: 5px 0; transition: all .3s;
}
.mobile-menu {
  display: none; flex-direction: column; gap: 4px;
  background: rgba(10,11,15,.97); backdrop-filter: blur(16px);
  border-top: 1px solid var(--line);
  padding: 18px 28px 26px;
}
.mobile-menu.open { display: flex; }
.mobile-menu a {
  color: var(--text); text-decoration: none;
  font-size: 15px; font-weight: 600; padding: 13px 0;
  border-bottom: 1px solid var(--line2);
  letter-spacing: .06em;
}
.mobile-menu .nav-cta { margin-top: 16px; width: 100%; padding: 15px; }

/* ═══ HERO ════════════════════════════════════════════════════ */
.hero-section {
  position: relative; min-height: 100svh;
  display: flex; align-items: center; justify-content: center;
  overflow: hidden;
}
.hero-video {
  position: absolute; inset: 0;
  width: 100%; height: 100%; object-fit: cover;
  filter: saturate(.65) contrast(1.05);
}
.hero-overlay {
  position: absolute; inset: 0;
  background:
    radial-gradient(ellipse 90% 60% at 50% 105%, rgba(201,162,75,.14), transparent 60%),
    linear-gradient(180deg, rgba(8,9,12,.62) 0%, rgba(8,9,12,.55) 40%, rgba(8,9,12,.94) 100%);
}
.hero-frame {
  position: absolute; inset: 22px;
  border: 1px solid rgba(232,206,140,.16);
  pointer-events: none;
}
.hero-frame::before, .hero-frame::after {
  content: ''; position: absolute; width: 26px; height: 26px;
  border-color: rgba(232,206,140,.55); border-style: solid;
}
.hero-frame::before { top: -1px; left: -1px; border-width: 1px 0 0 1px; }
.hero-frame::after  { bottom: -1px; right: -1px; border-width: 0 1px 1px 0; }

.hero-content {
  position: relative; z-index: 2;
  text-align: center; max-width: 900px;
  padding: 130px 28px 90px;
}
.hero-badge {
  display: inline-flex; align-items: center; gap: 10px;
  font-size: 10.5px; font-weight: 800;
  text-transform: uppercase; letter-spacing: .38em;
  color: var(--gold2);
  border: 1px solid rgba(232,206,140,.28);
  padding: 10px 20px 10px 22px; border-radius: 100px;
  background: rgba(8,9,12,.45); backdrop-filter: blur(6px);
  opacity: 0; transform: translateY(16px);
}
.badge-dot {
  width: 6px; height: 6px; border-radius: 50%;
  background: var(--gold2);
  box-shadow: 0 0 12px rgba(232,206,140,.9);
  animation: pulse 2.2s ease-in-out infinite;
}
@keyframes pulse { 0%,100% { opacity: 1; } 50% { opacity: .35; } }

.hero-title {
  font-family: var(--font-display);
  font-size: clamp(42px, 7vw, 82px);
  font-weight: 400; line-height: 1.06;
  letter-spacing: -.01em;
  color: var(--cream);
  margin: 34px 0 26px;
  opacity: 0; transform: translateY(20px);
}
.hero-title em {
  font-style: italic; font-weight: 550;
  background: linear-gradient(100deg, var(--gold2) 10%, var(--gold) 50%, #B08A3E 90%);
  -webkit-background-clip: text; background-clip: text;
  -webkit-text-fill-color: transparent;
}
.gold-dot { color: var(--gold); -webkit-text-fill-color: var(--gold); }

.hero-subtitle {
  font-size: clamp(15px, 2vw, 18px);
  color: var(--text2); max-width: 620px;
  margin: 0 auto 42px; line-height: 1.75; font-weight: 500;
  opacity: 0; transform: translateY(20px);
}
.hero-ctas {
  display: flex; gap: 18px; justify-content: center; flex-wrap: wrap;
  opacity: 0; transform: translateY(20px);
}

/* Botones principales */
.btn-gold {
  font-family: var(--font-body);
  display: inline-flex; align-items: center; gap: 12px;
  background: linear-gradient(135deg, var(--gold2), var(--gold) 55%, var(--gold3));
  color: #14100A; border: none; cursor: pointer;
  font-size: 13.5px; font-weight: 800;
  text-transform: uppercase; letter-spacing: .14em;
  padding: 19px 34px; border-radius: 2px;
  position: relative; overflow: hidden;
  min-height: 54px;
  transition: transform var(--motion-base) var(--ease-standard), box-shadow var(--motion-base) ease, filter var(--motion-fast) ease;
  box-shadow: 0 0 0 1px rgba(232,206,140,.3), 0 14px 38px rgba(201,162,75,.22);
}
.btn-gold::after {
  content: ''; position: absolute; top: 0; left: -80%;
  width: 50%; height: 100%;
  background: linear-gradient(100deg, transparent, rgba(255,255,255,.45), transparent);
  transform: skewX(-20deg);
  transition: left .6s ease;
}
.btn-gold:hover { transform: translateY(-2px); box-shadow: 0 0 0 1px rgba(232,206,140,.5), 0 20px 46px rgba(201,162,75,.35); }
.btn-gold:hover::after { left: 130%; }
.btn-gold.big { padding: 22px 44px; font-size: 14.5px; }
.btn-arrow { font-weight: 400; transition: transform .25s; }
.btn-gold:hover .btn-arrow { transform: translateX(4px); }

.btn-line {
  font-family: var(--font-body);
  background: transparent; color: var(--cream);
  border: 1px solid rgba(244,239,228,.28); cursor: pointer;
  font-size: 13.5px; font-weight: 700;
  text-transform: uppercase; letter-spacing: .14em;
  padding: 19px 34px; border-radius: 2px;
  transition: border-color .25s, background .25s, transform .25s;
  backdrop-filter: blur(4px);
  min-height: 54px;
}
.btn-line:hover { border-color: var(--gold2); color: var(--gold2); background: rgba(201,162,75,.06); transform: translateY(-2px); }

/* Stats hero */
.hero-stats {
  display: flex; justify-content: center; align-items: stretch;
  gap: 0; margin-top: 64px;
  opacity: 0; transform: translateY(20px);
}
.stat-item {
  display: flex; flex-direction: column; gap: 6px;
  padding: 4px 42px;
  border-right: 1px solid rgba(232,206,140,.18);
}
.stat-item:last-child { border-right: none; }
.stat-num {
  font-family: var(--font-display);
  font-size: clamp(26px, 3.4vw, 40px);
  font-weight: 550; color: var(--gold2);
  font-variant-numeric: tabular-nums;
  line-height: 1;
}
.stat-label {
  font-size: 10px; font-weight: 700; color: var(--text2);
  text-transform: uppercase; letter-spacing: .26em;
}
.hero-scrollcue {
  position: absolute; bottom: 34px; left: 50%; transform: translateX(-50%);
  z-index: 2; width: 1px; height: 52px; overflow: hidden;
}
.hero-scrollcue span {
  position: absolute; top: -50%; left: 0; width: 1px; height: 50%;
  background: linear-gradient(180deg, transparent, var(--gold2));
  animation: scrollcue 2.4s ease-in-out infinite;
}
@keyframes scrollcue { 0% { top: -50%; } 100% { top: 110%; } }

/* ═══ URGENCY BAR ═════════════════════════════════════════════ */
.urgency-bar {
  background: linear-gradient(90deg, #171207, #241B0A 30%, #2B2110 50%, #241B0A 70%, #171207);
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}
.urgency-inner {
  max-width: 1240px; margin: 0 auto;
  padding: 18px 28px;
  display: flex; align-items: center; justify-content: center;
  gap: 26px; flex-wrap: wrap; text-align: center;
}
.urgency-inner p { font-size: 14.5px; color: var(--gold2); font-weight: 800; letter-spacing: .02em; }
.urgency-inner p span { color: var(--text2); font-weight: 500; }
.urgency-inner button {
  font-family: var(--font-body);
  background: none; border: 1px solid rgba(232,206,140,.4);
  color: var(--gold2); cursor: pointer;
  font-size: 12px; font-weight: 800;
  text-transform: uppercase; letter-spacing: .12em;
  padding: 10px 20px; border-radius: 2px;
  transition: all .25s;
}
.urgency-inner button:hover { background: var(--gold); border-color: var(--gold); color: #14100A; }

/* ═══ SECCIONES ═══════════════════════════════════════════════ */
.section-container { max-width: 1240px; margin: 0 auto; padding: 110px 28px; }

.section-header { text-align: center; margin-bottom: 72px; }
.section-eyebrow {
  display: inline-block;
  font-size: 11px; font-weight: 800; color: var(--gold);
  text-transform: uppercase; letter-spacing: .42em;
  margin-bottom: 18px;
  position: relative;
}
.section-title {
  font-family: var(--font-display);
  font-size: clamp(34px, 4.6vw, 56px);
  font-weight: 400; color: var(--cream);
  line-height: 1.12; letter-spacing: -.01em;
}
.section-title em {
  font-style: italic; font-weight: 550;
  background: linear-gradient(100deg, var(--gold2), var(--gold));
  -webkit-background-clip: text; background-clip: text;
  -webkit-text-fill-color: transparent;
}
.section-sub {
  font-size: 16px; color: var(--text2);
  max-width: 560px; margin: 18px auto 0; font-weight: 500;
}
.section-sub strong { color: var(--gold2); }

/* ═══ HOW IT WORKS ════════════════════════════════════════════ */
.how-section { background: var(--ink); position: relative; }
.how-section::before {
  content: ''; position: absolute; top: 0; left: 50%; transform: translateX(-50%);
  width: min(1240px, calc(100% - 56px)); height: 1px;
  background: linear-gradient(90deg, transparent, var(--line), transparent);
}
.steps-grid {
  display: grid; grid-template-columns: repeat(4, 1fr);
  gap: 0;
  border-top: 1px solid var(--line2);
  border-bottom: 1px solid var(--line2);
}
.step-card {
  padding: 46px 32px 52px;
  border-right: 1px solid var(--line2);
  position: relative;
  transition: background var(--motion-base) ease, transform var(--motion-base) var(--ease-standard);
  opacity: 0; transform: translateY(24px);
}
.step-card:last-child { border-right: none; }
.step-card::after {
  content: ''; position: absolute; left: 0; bottom: -1px;
  width: 0; height: 1px; background: var(--gold);
  transition: width .45s ease;
}
.step-card:hover { background: rgba(201,162,75,.04); transform: translateY(-2px); }
.step-card:hover::after { width: 100%; }
.step-num {
  font-family: var(--font-display);
  font-size: 15px; font-style: italic; font-weight: 550;
  color: var(--gold);
  display: inline-block; margin-bottom: 22px;
  padding-bottom: 10px;
  border-bottom: 1px solid rgba(232,206,140,.3);
}
.step-card h3 {
  font-family: var(--font-display);
  font-size: 21px; font-weight: 550; color: var(--cream);
  margin-bottom: 12px; line-height: 1.25;
}
.step-card p { font-size: 14px; color: var(--text2); line-height: 1.7; }
.how-cta { text-align: center; margin-top: 64px; }

/* ═══ TRUST BAND ══════════════════════════════════════════════ */
.trust-band {
  background: linear-gradient(180deg, var(--ink2), var(--ink));
  border-top: 1px solid var(--line2);
  border-bottom: 1px solid var(--line2);
  opacity: 0; transform: translateY(24px);
}
.trust-inner {
  max-width: 1240px; margin: 0 auto;
  padding: 44px 28px;
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 28px;
  text-align: center;
}
.trust-item { display: flex; flex-direction: column; gap: 5px; }
.trust-item {
  padding: 4px 12px;
  transition: transform var(--motion-base) var(--ease-standard);
}
.trust-item:hover { transform: translateY(-2px); }
.trust-title {
  font-family: var(--font-display);
  font-size: 17px; font-weight: 550; color: var(--gold2); font-style: italic;
}
.trust-sub { font-size: 12.5px; color: var(--text3); font-weight: 600; letter-spacing: .04em; }

/* ═══ PRICING ═════════════════════════════════════════════════ */
.pricing-section { background: var(--ink2); position: relative; overflow: hidden; }
.pricing-section::before {
  content: ''; position: absolute;
  top: -220px; left: 50%; transform: translateX(-50%);
  width: 900px; height: 440px;
  background: radial-gradient(ellipse, rgba(201,162,75,.09), transparent 65%);
  pointer-events: none;
}
.plans-grid {
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 22px;
  align-items: stretch;
}
.plan-card {
  background: linear-gradient(180deg, var(--ink3), var(--ink2));
  border: 1px solid var(--line2);
  border-radius: 4px;
  padding: 38px 30px;
  display: flex; flex-direction: column;
  position: relative;
  transition: transform .35s ease, border-color .35s ease, box-shadow .35s ease;
  opacity: 0; transform: translateY(24px);
  isolation: isolate;
  overflow: hidden;
}
.plan-card::after {
  content: '';
  position: absolute; inset: 0 0 auto; height: 1px;
  background: linear-gradient(90deg, transparent, rgba(232,206,140,.28), transparent);
  opacity: 0;
  transition: opacity var(--motion-base) ease;
}
.plan-card:hover::after { opacity: 1; }
.plan-card:hover {
  transform: translateY(-6px);
  border-color: rgba(232,206,140,.3);
  box-shadow: 0 24px 60px rgba(0,0,0,.5);
}
.plan-card.popular {
  border-color: rgba(232,206,140,.45);
  background: linear-gradient(180deg, #1A1610, var(--ink3));
  box-shadow: 0 0 0 1px rgba(232,206,140,.2), 0 24px 70px rgba(0,0,0,.55);
}
.popular-badge {
  position: absolute; top: -13px; left: 50%; transform: translateX(-50%);
  background: linear-gradient(135deg, var(--gold2), var(--gold));
  color: #14100A;
  font-size: 10px; font-weight: 800;
  text-transform: uppercase; letter-spacing: .22em;
  padding: 7px 18px; border-radius: 100px;
  white-space: nowrap;
}
.plan-name {
  font-size: 11px; font-weight: 800; color: var(--gold);
  text-transform: uppercase; letter-spacing: .32em;
  margin-bottom: 14px;
}
.plan-price {
  font-family: var(--font-display);
  font-size: 46px; font-weight: 450; color: var(--cream);
  line-height: 1;
}
.plan-price span { font-family: var(--font-body); font-size: 13px; color: var(--text3); font-weight: 600; }
.plan-desc { font-size: 13px; color: var(--text2); margin: 10px 0 24px; font-weight: 500; }
.plan-features {
  list-style: none; margin-bottom: 30px; flex: 1;
  border-top: 1px solid var(--line2); padding-top: 20px;
}
.plan-features li {
  font-size: 13.5px; color: var(--text2);
  padding: 7px 0 7px 26px; position: relative; font-weight: 500;
}
.plan-features li.ok::before {
  content: '✓'; position: absolute; left: 0;
  color: var(--gold); font-weight: 800;
}
.plan-features li.no { color: var(--text3); }
.plan-features li.no::before {
  content: '—'; position: absolute; left: 0; color: var(--text3);
}
.plan-btn {
  font-family: var(--font-body);
  background: transparent; color: var(--cream);
  border: 1px solid rgba(244,239,228,.22); cursor: pointer;
  font-size: 12px; font-weight: 800;
  text-transform: uppercase; letter-spacing: .14em;
  padding: 15px; border-radius: 2px; width: 100%;
  transition: all .25s;
}
.plan-btn:hover { border-color: var(--gold2); color: var(--gold2); background: rgba(201,162,75,.06); }
.plan-btn.primary {
  background: linear-gradient(135deg, var(--gold2), var(--gold) 55%, var(--gold3));
  color: #14100A; border: none;
  box-shadow: 0 10px 28px rgba(201,162,75,.22);
}
.plan-btn.primary:hover { filter: brightness(1.08); transform: translateY(-1px); }

/* ═══ CTA FINAL ═══════════════════════════════════════════════ */
.cta-final-section {
  position: relative;
  background:
    radial-gradient(ellipse 70% 90% at 50% 115%, rgba(201,162,75,.16), transparent 60%),
    var(--ink);
  border-top: 1px solid var(--line2);
  opacity: 0; transform: translateY(24px);
}
.cta-final-inner {
  max-width: 800px; margin: 0 auto;
  padding: 130px 28px; text-align: center;
}
.cta-final-inner h2 {
  font-family: var(--font-display);
  font-size: clamp(36px, 5.4vw, 62px);
  font-weight: 400; color: var(--cream);
  line-height: 1.1; margin: 20px 0 22px;
}
.cta-final-inner h2 em {
  font-style: italic; font-weight: 550;
  background: linear-gradient(100deg, var(--gold2), var(--gold));
  -webkit-background-clip: text; background-clip: text;
  -webkit-text-fill-color: transparent;
}
.cta-final-inner p { font-size: 17px; color: var(--text2); margin-bottom: 44px; font-weight: 500; }

/* ═══ FOOTER ══════════════════════════════════════════════════ */
.site-footer { border-top: 1px solid var(--line2); background: var(--ink2); }
.footer-inner {
  max-width: 1240px; margin: 0 auto;
  padding: 44px 28px;
  display: flex; align-items: center; justify-content: space-between;
  gap: 20px; flex-wrap: wrap;
}
.footer-brand { display: flex; flex-direction: column; gap: 3px; }
.footer-logo {
  font-family: var(--font-display);
  font-size: 20px; color: var(--cream); font-weight: 550;
}
.footer-logo em { color: var(--gold2); }
.footer-tag {
  font-size: 10px; font-weight: 700; color: var(--text3);
  text-transform: uppercase; letter-spacing: .3em;
}
.footer-legal { font-size: 13px; color: var(--text3); font-weight: 500; }
.footer-legal a { color: var(--text2); text-decoration: none; transition: color .25s; }
.footer-legal a:hover { color: var(--gold2); }

/* ═══ FORM PAGES ══════════════════════════════════════════════ */
.form-page { background: var(--ink); padding-bottom: 90px; }
.form-hero {
  background:
    radial-gradient(ellipse 80% 100% at 50% -30%, rgba(201,162,75,.14), transparent 65%),
    linear-gradient(180deg, var(--ink3), var(--ink));
  border-bottom: 1px solid var(--line);
  padding: 120px 28px 54px;
  text-align: center;
  position: relative;
}
.form-hero h2 {
  font-family: var(--font-display);
  font-size: clamp(30px, 4.4vw, 46px);
  font-weight: 400; color: var(--cream);
  margin: 8px 0 10px;
}
.form-hero h2 em {
  font-style: italic; font-weight: 550;
  background: linear-gradient(100deg, var(--gold2), var(--gold));
  -webkit-background-clip: text; background-clip: text;
  -webkit-text-fill-color: transparent;
}
.form-hero p { font-size: 14.5px; color: var(--text2); font-weight: 500; }
.back-btn {
  position: absolute; top: 92px; left: 28px;
  font-family: var(--font-body);
  background: none; border: 1px solid var(--line2);
  color: var(--text2); cursor: pointer;
  font-size: 12px; font-weight: 700;
  text-transform: uppercase; letter-spacing: .1em;
  padding: 9px 16px; border-radius: 2px;
  transition: all .25s;
}
.back-btn:hover { color: var(--gold2); border-color: rgba(232,206,140,.4); }

.form-body { max-width: 760px; margin: 0 auto; padding: 46px 22px 0; }

.form-section {
  background: linear-gradient(180deg, var(--ink3), var(--ink2));
  border: 1px solid var(--line2);
  border-radius: 4px;
  padding: 30px 28px;
  margin-bottom: 22px;
  box-shadow: 0 14px 38px rgba(0,0,0,.18);
  transition: border-color var(--motion-base) ease, box-shadow var(--motion-base) ease;
}
.form-section:focus-within {
  border-color: rgba(232,206,140,.22);
  box-shadow: 0 18px 48px rgba(0,0,0,.28);
}
.form-section-title {
  display: flex; align-items: center; gap: 12px;
  font-size: 12px; font-weight: 800; color: var(--gold2);
  text-transform: uppercase; letter-spacing: .24em;
  margin-bottom: 24px;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--line);
}
.fs-num {
  display: inline-flex; align-items: center; justify-content: center;
  width: 26px; height: 26px; flex-shrink: 0;
  font-family: var(--font-display); font-style: italic;
  font-size: 13px; color: var(--gold2);
  border: 1px solid rgba(232,206,140,.4);
  border-radius: 50%;
}
.form-hint { font-size: 12.5px; color: var(--text3); margin: -10px 0 16px; font-weight: 500; }

.form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.form-group { margin-bottom: 18px; }
.form-group label {
  display: block;
  font-size: 11px; font-weight: 800; color: var(--text2);
  text-transform: uppercase; letter-spacing: .12em;
  margin-bottom: 8px;
}
.req { color: var(--gold); }

input[type="text"], input[type="tel"], input[type="email"], input[type="password"],
select, textarea {
  width: 100%;
  font-family: var(--font-body);
  background: var(--ink);
  border: 1px solid var(--line2);
  border-radius: 2px;
  color: var(--text);
  font-size: 14.5px; font-weight: 500;
  padding: 13px 15px;
  min-height: 48px;
  transition: border-color var(--motion-fast) ease, box-shadow var(--motion-fast) ease, background var(--motion-fast) ease;
  appearance: none; -webkit-appearance: none;
}
select {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23C9A24B' fill='none' stroke-width='1.5'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 14px center;
  padding-right: 36px;
  cursor: pointer;
}
select option { background: var(--ink3); color: var(--text); }
textarea { min-height: 88px; resize: vertical; }
input::placeholder, textarea::placeholder { color: var(--text3); }
input:focus, select:focus, textarea:focus {
  outline: none;
  border-color: rgba(232,206,140,.55);
  box-shadow: 0 0 0 3px rgba(201,162,75,.12);
  background: #0B0D12;
}

/* Pills de opción */
.option-pills { display: flex; flex-wrap: wrap; gap: 8px; }
.option-pill { cursor: pointer; }
.option-pill input { display: none; }
.option-pill span {
  display: inline-block;
  font-size: 12.5px; font-weight: 700;
  color: var(--text2);
  border: 1px solid var(--line2);
  background: var(--ink);
  padding: 9px 16px; border-radius: 100px;
  transition: all .22s;
  letter-spacing: .02em;
  min-height: 40px;
}
.option-pill:hover span { border-color: rgba(232,206,140,.35); color: var(--cream); }
.option-pill input:checked + span {
  background: linear-gradient(135deg, rgba(232,206,140,.16), rgba(201,162,75,.1));
  border-color: var(--gold);
  color: var(--gold2);
  box-shadow: 0 0 14px rgba(201,162,75,.15);
}

/* Check pills (vendedor) */
.check-pills {
  display: flex; flex-wrap: wrap; gap: 8px;
  max-height: 300px; overflow-y: auto;
  padding: 4px;
}
.check-pills::-webkit-scrollbar { width: 8px; }
.check-pills::-webkit-scrollbar-thumb { background: var(--ink4); border-radius: 4px; }
.check-pill { cursor: pointer; }
.check-pill input { display: none; }
.check-pill span {
  display: inline-block;
  font-size: 12.5px; font-weight: 700;
  color: var(--text2);
  border: 1px solid var(--line2);
  background: var(--ink);
  padding: 8px 15px; border-radius: 100px;
  transition: all .22s;
}
.check-pill:hover span { border-color: rgba(232,206,140,.35); color: var(--cream); }
.check-pill input:checked + span {
  background: linear-gradient(135deg, rgba(232,206,140,.16), rgba(201,162,75,.1));
  border-color: var(--gold); color: var(--gold2);
}
.seller-field-label { margin-bottom: 8px; color: var(--cream); font-weight: 700; }
.seller-brand-groups { display: grid; gap: 14px; margin-top: 18px; }
.seller-brand-group {
  padding: 16px;
  border: 1px solid var(--line);
  background: rgba(255,255,255,.018);
  border-radius: 8px;
}
.seller-brand-group h4 {
  margin: 0 0 11px;
  color: var(--cream);
  font-size: 13px;
  font-weight: 700;
}
.seller-brand-group .check-pills { max-height: none; padding: 0; }
.manual-lines-list { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; }
.manual-line-chip {
  display: inline-flex; align-items: center; gap: 7px; min-height: 34px;
  padding: 7px 11px; border: 1px solid rgba(111, 231, 255, .28);
  border-radius: 6px; background: rgba(111, 231, 255, .08); color: var(--text);
}
.manual-line-chip span { color: var(--muted); font-size: 18px; line-height: 1; }
@media (max-width: 600px) {
  .seller-brand-group { padding: 13px; }
  .seller-brand-group .check-pills { gap: 7px; }
  .seller-brand-group .check-pill span { padding: 8px 12px; }
}

.inline-add { display: flex; gap: 8px; }
.inline-add input { flex: 1; }
.inline-add .btn-ghost { white-space: nowrap; }

.cover-checks { display: flex; flex-wrap: wrap; gap: 18px; margin-top: 6px; }
.cover-checks label {
  display: flex; align-items: center; gap: 9px;
  font-size: 14px; cursor: pointer; font-weight: 600;
  color: var(--text2); text-transform: none; letter-spacing: 0;
}
.cover-checks input { width: 17px; height: 17px; accent-color: var(--gold); }

/* Urgencia */
.urgencia-btns { display: flex; gap: 8px; flex-wrap: wrap; }
.urgencia-btn {
  font-family: var(--font-body);
  display: inline-flex; align-items: center; gap: 8px;
  background: var(--ink);
  border: 1px solid var(--line2);
  color: var(--text2); cursor: pointer;
  font-size: 12.5px; font-weight: 700;
  padding: 11px 18px; border-radius: 100px;
  transition: all .22s;
}
.urgencia-btn:hover { border-color: rgba(232,206,140,.35); color: var(--cream); }
.urgencia-btn.active {
  background: linear-gradient(135deg, rgba(232,206,140,.16), rgba(201,162,75,.1));
  border-color: var(--gold); color: var(--gold2);
}
.u-dot { width: 8px; height: 8px; border-radius: 50%; display: inline-block; }
.u-dot.alta { background: var(--red); }
.u-dot.media { background: var(--gold); }
.u-dot.baja { background: var(--green); }

/* Zona de comprobante */
.bank-box {
  background: rgba(201,162,75,.07);
  border: 1px solid rgba(232,206,140,.22);
  border-left: 3px solid var(--gold);
  border-radius: 3px;
  padding: 16px 18px;
  margin-bottom: 18px;
  font-size: 13.5px; line-height: 1.9; color: var(--text2);
}
.bank-box strong { color: var(--cream); font-weight: 700; }
.dropzone {
  border: 1.5px dashed rgba(232,206,140,.35);
  border-radius: 4px;
  padding: 30px;
  text-align: center; cursor: pointer;
  transition: all .25s;
  background: rgba(201,162,75,.03);
}
.dropzone:hover, .dropzone.over { border-color: var(--gold2); background: rgba(201,162,75,.07); }
.drop-icon { font-size: 30px; margin-bottom: 8px; }
.drop-main { font-size: 13.5px; color: var(--text2); font-weight: 600; }
.drop-sub { font-size: 11.5px; color: var(--text3); margin-top: 4px; }

/* Botones de formulario */
.btn-submit {
  font-family: var(--font-body);
  display: inline-flex; align-items: center; justify-content: center; gap: 10px;
  width: 100%;
  background: linear-gradient(135deg, var(--gold2), var(--gold) 55%, var(--gold3));
  color: #14100A; border: none; cursor: pointer;
  font-size: 14px; font-weight: 800;
  text-transform: uppercase; letter-spacing: .14em;
  padding: 19px 30px; border-radius: 2px;
  min-height: 56px;
  transition: transform var(--motion-base) var(--ease-standard), filter var(--motion-fast) ease, box-shadow var(--motion-base) ease;
  box-shadow: 0 0 0 1px rgba(232,206,140,.28), 0 12px 34px rgba(201,162,75,.2);
}
.btn-submit:hover { transform: translateY(-2px); filter: brightness(1.07); box-shadow: 0 0 0 1px rgba(232,206,140,.4), 0 18px 42px rgba(201,162,75,.28); }
.btn-submit:disabled { opacity: .55; cursor: wait; transform: none; }
.btn-submit.small { width: auto; padding: 11px 18px; font-size: 12px; }

.btn-ghost {
  font-family: var(--font-body);
  background: transparent; color: var(--text2);
  border: 1px solid var(--line2); cursor: pointer;
  font-size: 12.5px; font-weight: 700;
  padding: 11px 16px; border-radius: 2px;
  transition: all .25s;
  letter-spacing: .04em;
}
.btn-ghost:hover { color: var(--gold2); border-color: rgba(232,206,140,.4); }

.btn-ghost-dark {
  font-family: var(--font-body);
  width: 100%;
  background: transparent; color: var(--text2);
  border: 1px solid var(--line2); cursor: pointer;
  font-size: 13px; font-weight: 700;
  text-transform: uppercase; letter-spacing: .1em;
  padding: 14px; border-radius: 2px;
  margin-top: 10px;
  transition: all .25s;
}
.btn-ghost-dark:hover { color: var(--gold2); border-color: rgba(232,206,140,.4); }

.form-footnote { text-align: center; font-size: 12px; color: var(--text3); margin-top: 12px; font-weight: 500; }

.footer-legal + .footer-legal { margin-top: 5px; }

/* ═══ CONFIRMACIÓN / LOGIN ════════════════════════════════════ */
.confirm-page {
  min-height: 100vh;
  display: flex; align-items: center; justify-content: center;
  padding: 110px 22px 60px;
  background:
    radial-gradient(ellipse 70% 60% at 50% -10%, rgba(201,162,75,.1), transparent 60%),
    var(--ink);
}
.confirm-card {
  background: linear-gradient(180deg, var(--ink3), var(--ink2));
  border: 1px solid var(--line);
  border-radius: 6px;
  padding: 46px 40px;
  max-width: 470px; width: 100%;
  text-align: center;
  box-shadow: 0 30px 80px rgba(0,0,0,.55);
}
.confirm-icon {
  width: 68px; height: 68px; margin: 0 auto 22px;
  display: flex; align-items: center; justify-content: center;
  font-size: 30px;
  border-radius: 50%;
}
.confirm-icon.ok {
  color: #14100A; font-weight: 800;
  background: linear-gradient(135deg, var(--gold2), var(--gold));
  box-shadow: 0 0 40px rgba(201,162,75,.35);
}
.confirm-card h2 {
  font-family: var(--font-display);
  font-size: 26px; font-weight: 550; color: var(--cream);
  margin-bottom: 10px;
}
.confirm-card > p, .confirm-card .login-sub {
  font-size: 14px; color: var(--text2); margin-bottom: 26px; font-weight: 500;
}
.login-card { max-width: 410px; }
.login-logo { margin-bottom: 20px; }
.login-logo-icon {
  width: 56px;
  height: 56px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(217, 193, 139, .55);
  border-radius: 6px;
  background: #12151C;
  color: var(--gold2);
}
.login-logo-icon .lucide { width: 25px; height: 25px; }
.login-fields { text-align: left; margin-bottom: 18px; }
.login-fields label {
  display: block;
  font-size: 10.5px; font-weight: 800; color: var(--text2);
  text-transform: uppercase; letter-spacing: .14em;
  margin: 14px 0 7px;
}
.password-input-wrap { position: relative; }
.password-input-wrap input { padding-right: 48px; }
.password-toggle {
  position: absolute;
  top: 50%;
  right: 8px;
  width: 36px;
  height: 36px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transform: translateY(-50%);
  border: 0;
  border-radius: 4px;
  background: transparent;
  color: var(--text3);
  cursor: pointer;
  transition: color 180ms ease, background 180ms ease;
}
.password-toggle:hover,
.password-toggle:focus-visible {
  background: rgba(217, 193, 139, .08);
  color: var(--gold2);
  outline: none;
}
.password-toggle .lucide { width: 18px; height: 18px; }
.login-error { display: none; font-size: 12.5px; color: var(--red); margin-top: 10px; font-weight: 600; }
.login-foot {
  margin-top: 22px; padding-top: 18px;
  border-top: 1px solid var(--line2);
  font-size: 12.5px; color: var(--text3); font-weight: 500;
}
.login-foot a { color: var(--gold2); text-decoration: none; }

/* ═══ PANELES ═════════════════════════════════════════════════ */
.panel-page { background: var(--ink); min-height: 100vh; padding-bottom: 70px; }
.panel-header {
  background: linear-gradient(180deg, var(--ink3), var(--ink));
  border-bottom: 1px solid var(--line);
  padding: 108px 28px 30px;
  display: flex; align-items: flex-end; justify-content: space-between;
  gap: 18px; flex-wrap: wrap;
  max-width: 100%;
}
.panel-header .back-btn { position: static; margin-bottom: 12px; }
.panel-header h2 {
  font-family: var(--font-display);
  font-size: 28px; font-weight: 550; color: var(--cream);
}
.panel-header p { font-size: 13px; color: var(--text2); font-weight: 500; }
.panel-header-actions { display: flex; gap: 10px; flex-wrap: wrap; }

.panel-body { max-width: 1080px; margin: 0 auto; padding: 34px 22px 0; }

.stat-grid {
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px;
  margin-bottom: 30px;
}
.stat-card {
  background: linear-gradient(180deg, var(--ink3), var(--ink2));
  border: 1px solid var(--line2);
  border-radius: 4px;
  padding: 22px 18px;
  text-align: center;
}
.stat-card .num {
  font-family: var(--font-display);
  font-size: 30px; font-weight: 550; color: var(--cream);
  line-height: 1.1;
}
.stat-card .num.red { color: var(--red); }
.stat-card .num.gold { color: var(--gold2); }
.stat-card .lbl {
  font-size: 10px; font-weight: 800; color: var(--text3);
  text-transform: uppercase; letter-spacing: .2em; margin-top: 6px;
}

.panel-tabs {
  display: flex; gap: 6px; flex-wrap: wrap;
  border-bottom: 1px solid var(--line2);
  margin-bottom: 24px;
}
.panel-tab {
  font-family: var(--font-body);
  background: none; border: none; cursor: pointer;
  font-size: 13px; font-weight: 700; color: var(--text3);
  padding: 12px 18px;
  border-bottom: 2px solid transparent;
  transition: all .25s;
  letter-spacing: .03em;
}
.panel-tab:hover { color: var(--text); }
.panel-tab.active { color: var(--gold2); border-bottom-color: var(--gold); }

.solicitud-card {
  background: linear-gradient(180deg, var(--ink3), var(--ink2));
  border: 1px solid var(--line2);
  border-left: 3px solid var(--gold3);
  border-radius: 4px;
  padding: 18px 20px;
  margin-bottom: 12px;
  transition: border-color .25s;
}
.solicitud-card:hover { border-left-color: var(--gold2); }
.sol-header { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 8px; }
.sol-pieza {
  font-family: var(--font-display);
  font-size: 17px; font-weight: 550; color: var(--cream);
}
.badge {
  font-size: 10px; font-weight: 800; color: var(--gold2);
  text-transform: uppercase; letter-spacing: .14em;
  border: 1px solid rgba(232,206,140,.35);
  padding: 4px 12px; border-radius: 100px;
}
.sol-meta { display: flex; flex-wrap: wrap; gap: 6px 20px; font-size: 12.5px; color: var(--text2); font-weight: 500; }

.empty-state { text-align: center; padding: 60px 20px; color: var(--text3); }
.empty-icon { font-size: 36px; margin-bottom: 12px; opacity: .5; }
.empty-state p { font-size: 13.5px; font-weight: 500; }

.admin-table-wrap { overflow-x: auto; border: 1px solid var(--line2); border-radius: 4px; }
.admin-table { width: 100%; border-collapse: collapse; font-size: 13px; }
.admin-table th {
  text-align: left;
  font-size: 10.5px; font-weight: 800; color: var(--gold);
  text-transform: uppercase; letter-spacing: .14em;
  padding: 13px 14px;
  background: var(--ink3);
  border-bottom: 1px solid var(--line);
  white-space: nowrap;
}
.admin-table td {
  padding: 12px 14px;
  border-bottom: 1px solid var(--line2);
  color: var(--text2); font-weight: 500;
  vertical-align: top;
}
.admin-table tr:last-child td { border-bottom: none; }
.admin-table tr:hover td { background: rgba(201,162,75,.03); }
.admin-table small { color: var(--text3); }

.metrics-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.metric-card {
  background: linear-gradient(180deg, var(--ink3), var(--ink2));
  border: 1px solid var(--line2);
  border-radius: 4px; padding: 22px;
}
.metric-card h4 {
  font-size: 11px; font-weight: 800; color: var(--gold2);
  text-transform: uppercase; letter-spacing: .2em;
  margin-bottom: 14px;
}
.metric-row {
  display: flex; justify-content: space-between;
  font-size: 13.5px; color: var(--text2); font-weight: 500;
  padding: 8px 0;
  border-bottom: 1px solid var(--line2);
}
.metric-row:last-child { border-bottom: none; }
.metric-val { color: var(--gold2); font-weight: 800; }
.muted { color: var(--text3); font-size: 13px; }

/* Accesos */
.acceso-form-box {
  background: linear-gradient(180deg, var(--ink3), var(--ink2));
  border: 1px solid var(--line2);
  border-left: 3px solid var(--gold);
  border-radius: 4px;
  padding: 24px;
  margin-bottom: 20px;
}
.acceso-box-title {
  font-size: 12px; font-weight: 800; color: var(--gold2);
  text-transform: uppercase; letter-spacing: .2em;
  margin-bottom: 18px;
}
.acceso-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-bottom: 16px; }
.mini-label {
  display: block;
  font-size: 10.5px; font-weight: 800; color: var(--text2);
  text-transform: uppercase; letter-spacing: .1em;
  margin-bottom: 6px;
}
.acceso-lista-box {
  background: linear-gradient(180deg, var(--ink3), var(--ink2));
  border: 1px solid var(--line2);
  border-radius: 4px; overflow: hidden;
}
.acceso-lista-head {
  padding: 15px 18px;
  border-bottom: 1px solid var(--line2);
  font-size: 12px; font-weight: 800; color: var(--text2);
  text-transform: uppercase; letter-spacing: .18em;
}
.acceso-row {
  display: flex; align-items: center; justify-content: space-between;
  gap: 14px; flex-wrap: wrap;
  padding: 15px 18px;
  border-bottom: 1px solid var(--line2);
  font-size: 13.5px;
}
.acceso-row:last-child { border-bottom: none; }
.acceso-row .a-info { display: flex; flex-direction: column; gap: 2px; }
.acceso-row .a-nombre { color: var(--cream); font-weight: 700; }
.acceso-row .a-user { color: var(--text3); font-size: 12px; font-weight: 500; }
.acceso-row .a-plan { color: var(--gold2); font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: .1em; }
.acceso-row .a-estado.on { color: var(--green); font-weight: 700; font-size: 12px; }
.acceso-row .a-estado.off { color: var(--red); font-weight: 700; font-size: 12px; }
.acceso-instrucciones {
  margin-top: 16px;
  background: rgba(201,162,75,.06);
  border: 1px solid rgba(232,206,140,.2);
  border-radius: 4px; padding: 18px;
}
.acceso-inst-title { font-size: 12px; font-weight: 800; color: var(--gold2); margin-bottom: 8px; text-transform: uppercase; letter-spacing: .12em; }
.acceso-inst-body { font-size: 12.5px; color: var(--text2); line-height: 1.9; font-weight: 500; }
.acceso-inst-body strong { color: var(--cream); }

/* ═══ TOASTS ══════════════════════════════════════════════════ */
#toasts {
  position: fixed; bottom: 24px; left: 50%; transform: translateX(-50%);
  z-index: 300; display: flex; flex-direction: column; gap: 10px;
  width: min(92vw, 430px);
}
.toast {
  background: var(--ink4);
  border: 1px solid rgba(232,206,140,.4);
  border-left: 3px solid var(--gold);
  color: var(--text);
  font-size: 13.5px; font-weight: 600;
  padding: 15px 18px; border-radius: 4px;
  box-shadow: 0 18px 50px rgba(0,0,0,.55);
  opacity: 0; transform: translateY(14px);
  transition: all .3s ease;
}
.toast.show { opacity: 1; transform: none; }
.toast-error { border-color: rgba(224,101,90,.5); border-left-color: var(--red); }

/* ═══ REVEAL (animations.js) ══════════════════════════════════ */
.reveal { opacity: 0; transform: translateY(24px); transition: opacity .8s ease, transform .8s ease; }
.reveal.in { opacity: 1; transform: none; }
.reveal-stagger { transition: opacity .7s ease, transform .7s ease; }
.reveal-stagger.in { opacity: 1; transform: none; }
#heroBadge.in, #heroTitle.in, #heroSubtitle.in, #heroCtas.in, #heroStats.in {
  opacity: 1; transform: none;
}
#heroBadge, #heroTitle, #heroSubtitle, #heroCtas, #heroStats {
  transition: opacity .9s ease, transform .9s ease;
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation: none !important; transition: none !important; }
  .reveal, .reveal-stagger, #heroBadge, #heroTitle, #heroSubtitle, #heroCtas, #heroStats {
    opacity: 1 !important; transform: none !important;
  }
}

@media (hover: none) {
  .step-card:hover, .plan-card:hover, .trust-item:hover,
  .btn-gold:hover, .btn-line:hover, .btn-submit:hover { transform: none; }
}

/* ═══ RESPONSIVE ══════════════════════════════════════════════ */
@media (max-width: 1020px) {
  .steps-grid { grid-template-columns: 1fr 1fr; }
  .step-card:nth-child(2n) { border-right: none; }
  .step-card:nth-child(-n+2) { border-bottom: 1px solid var(--line2); }
  .plans-grid { grid-template-columns: 1fr 1fr; }
  .trust-inner { grid-template-columns: 1fr 1fr; gap: 32px 20px; }
}

@media (max-width: 720px) {
  .nav-links { display: none; }
  .hamburger { display: block; }
  .nav-inner { padding: 12px 20px; }
  .hero-frame { inset: 12px; }
  .hero-content { padding: 120px 20px 80px; }
  .hero-stats { flex-wrap: wrap; gap: 18px 0; }
  .stat-item { padding: 4px 22px; }
  .stat-item:nth-child(2) { border-right: none; }
  .section-container { padding: 76px 20px; }
  .steps-grid { grid-template-columns: 1fr; }
  .step-card { border-right: none; border-bottom: 1px solid var(--line2); }
  .step-card:last-child { border-bottom: none; }
  .plans-grid { grid-template-columns: 1fr; }
  .plan-card.popular { order: -1; }
  .trust-inner { grid-template-columns: 1fr 1fr; }
  .form-row { grid-template-columns: 1fr; gap: 0; }
  .acceso-grid { grid-template-columns: 1fr; }
  .metrics-grid { grid-template-columns: 1fr; }
  .stat-grid { grid-template-columns: 1fr 1fr; }
  .back-btn { top: 80px; left: 20px; }
  .form-hero { padding: 108px 20px 44px; }
  .footer-inner { flex-direction: column; text-align: center; }
  .footer-tag { max-width: 300px; line-height: 1.6; letter-spacing: .2em; }
  .btn-gold, .btn-line { min-height: 52px; padding: 16px 24px; }
  .form-section { padding: 26px 20px; }
  .form-section-title { letter-spacing: .16em; }
  .urgency-inner { flex-direction: column; gap: 12px; }
  .panel-header { padding-top: 96px; }
}

/* ═══════════════════════════════════════════════════════════════
   PREMIUM EDITORIAL REFINEMENT — v23
   Menos efectos, más jerarquía, espacio y materialidad real.
   ═══════════════════════════════════════════════════════════════ */

:root {
  --ink: #090A0C;
  --ink2: #0D0E11;
  --ink3: #121317;
  --ink4: #181A1F;
  --line: rgba(210, 181, 112, .18);
  --line2: rgba(255, 255, 255, .10);
  --gold: #C7A766;
  --gold2: #D9C18B;
  --gold3: #8E7440;
  --cream: #F2F0EA;
  --text: #E7E5DF;
  --text2: #AAA9A4;
  --text3: #747570;
  --shadow-control: none;
  --shadow-card: 0 18px 44px rgba(0,0,0,.24);
  --shadow-elevated: 0 28px 72px rgba(0,0,0,.38);
}

body { background: var(--ink); }

#navbar {
  background: linear-gradient(180deg, rgba(9,10,12,.72), transparent);
}

#navbar.scrolled {
  background: rgba(9,10,12,.96);
  border-bottom-color: rgba(255,255,255,.09);
  box-shadow: none;
}

.nav-inner { max-width: 1320px; }
.nav-links { gap: 30px; }
.nav-links a { letter-spacing: .08em; text-transform: none; font-size: 13px; }
.nav-links a::after { background: var(--cream); }

.nav-cta,
.btn-gold,
.btn-submit,
.plan-btn.primary {
  background: var(--cream);
  color: #0A0B0D;
  border: 1px solid var(--cream);
  box-shadow: none;
  border-radius: 2px;
}

.nav-cta { text-transform: none; letter-spacing: .04em; }

.nav-cta:hover,
.btn-gold:hover,
.btn-submit:hover,
.plan-btn.primary:hover {
  background: #FFFFFF;
  border-color: #FFFFFF;
  box-shadow: none;
  filter: none;
}

.btn-gold::after { display: none; }
.btn-gold, .btn-line, .btn-submit, .plan-btn { text-transform: none; letter-spacing: .04em; }

.hero-section { justify-content: flex-start; }
.hero-video { filter: saturate(.78) contrast(1.02); }
.hero-overlay {
  background:
    linear-gradient(90deg, rgba(9,10,12,.90) 0%, rgba(9,10,12,.64) 48%, rgba(9,10,12,.18) 78%),
    linear-gradient(180deg, rgba(9,10,12,.24) 0%, rgba(9,10,12,.10) 58%, rgba(9,10,12,.92) 100%);
}
.hero-frame { display: none; }

.hero-content {
  width: min(1320px, 100%);
  max-width: none;
  margin: 0 auto;
  padding: 150px 42px 82px;
  text-align: left;
}

.hero-badge {
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  backdrop-filter: none;
  letter-spacing: .16em;
  color: var(--gold2);
}
.badge-dot { box-shadow: none; animation: none; }

.hero-title {
  max-width: 820px;
  margin: 30px 0 24px;
  font-family: var(--font-body);
  font-size: clamp(46px, 6.5vw, 84px);
  font-weight: 600;
  line-height: 1.02;
  letter-spacing: 0;
}

.hero-title em,
.section-title em,
.cta-final-inner h2 em,
.form-hero h2 em {
  color: var(--gold2);
  background: none;
  -webkit-text-fill-color: currentColor;
  font-style: normal;
  font-weight: inherit;
}

.gold-dot { color: var(--gold2); -webkit-text-fill-color: currentColor; }
.hero-subtitle { margin: 0 0 36px; max-width: 590px; color: rgba(242,240,234,.72); }
.hero-ctas { justify-content: flex-start; gap: 12px; }
.btn-line { background: rgba(9,10,12,.14); border-color: rgba(255,255,255,.34); }

.hero-stats { justify-content: flex-start; margin-top: 60px; }
.stat-item { padding: 3px 28px; }
.stat-item:first-child { padding-left: 0; }
.stat-num {
  font-family: var(--font-body);
  font-size: 17px;
  font-weight: 700;
  color: var(--cream);
}
.stat-label { letter-spacing: .10em; color: rgba(242,240,234,.52); }

.urgency-bar { background: var(--cream); color: #101114; }
.urgency-inner p { color: #101114; }
.urgency-inner p span { color: #555650; }
.urgency-inner button { color: #101114; border-color: rgba(16,17,20,.28); }
.urgency-inner button:hover { background: #101114; border-color: #101114; color: var(--cream); }

.section-container { max-width: 1320px; }
.section-header { max-width: 760px; margin-left: 0; text-align: left; }
.section-eyebrow { letter-spacing: .14em; }
.section-title,
.cta-final-inner h2,
.form-hero h2,
.confirm-card h2 {
  font-family: var(--font-body);
  letter-spacing: 0;
}
.section-title { font-weight: 600; }
.section-sub { margin-left: 0; }

.how-section::before,
.pricing-section::before { display: none; }
.steps-grid { border-color: rgba(255,255,255,.10); }
.step-card { padding: 42px 28px 48px; }
.step-card:hover { background: rgba(255,255,255,.025); transform: none; }
.step-card::after { background: var(--gold); }
.step-card h3 { font-family: var(--font-body); font-size: 19px; }
.step-num { font-family: var(--font-body); font-style: normal; }
.how-cta { text-align: left; }

.trust-band { background: var(--ink2); }
.trust-inner { text-align: left; }
.trust-title { font-family: var(--font-body); font-style: normal; color: var(--cream); }
.trust-item:hover { transform: none; }

.pricing-section { background: #0B0C0F; }
.plan-card {
  background: var(--ink3);
  border-color: rgba(255,255,255,.11);
  box-shadow: none;
}
.plan-card:hover {
  transform: translateY(-3px);
  border-color: rgba(217,193,139,.38);
  box-shadow: var(--shadow-card);
}
.plan-card.popular {
  background: #141519;
  border-color: var(--gold3);
  box-shadow: none;
  overflow: visible;
}
.popular-badge {
  z-index: 2;
  background: var(--gold2);
  border-radius: 2px;
  letter-spacing: .10em;
}
.plan-name { letter-spacing: .16em; }
.plan-price { font-family: var(--font-body); font-weight: 500; }

.cta-final-section { background: var(--ink); }
.cta-final-inner { max-width: 1320px; text-align: left; }

.site-footer { background: #08090B; }
.footer-logo { font-size: 19px; }

.form-hero {
  background: var(--ink2);
  border-bottom-color: rgba(255,255,255,.10);
}
.form-section {
  background: var(--ink3);
  border-color: rgba(255,255,255,.10);
  box-shadow: none;
}
.form-section:focus-within { border-color: rgba(217,193,139,.34); box-shadow: none; }
.form-section-title { letter-spacing: .12em; }
.fs-num { font-family: var(--font-body); font-style: normal; }
input[type="text"], input[type="tel"], input[type="email"], input[type="password"], select, textarea {
  background: #0C0D10;
  border-color: rgba(255,255,255,.13);
}
input:focus, select:focus, textarea:focus { background: #0C0D10; }
.option-pill span, .check-pill span, .urgencia-btn { background: #0C0D10; }
.option-pill input:checked + span,
.check-pill input:checked + span,
.urgencia-btn.active { background: rgba(199,167,102,.10); box-shadow: none; }

.confirm-card,
.login-card,
.stat-card,
.solicitud-card,
.metric-card,
.acceso-form-box,
.acceso-lista-box {
  background: var(--ink3);
  border-color: rgba(255,255,255,.10);
  box-shadow: none;
}

.reveal { transition-duration: .55s; transform: translateY(14px); }
.reveal-stagger { transition-duration: .5s; }
#heroBadge, #heroTitle, #heroSubtitle, #heroCtas, #heroStats { transition-duration: .65s; }

@media (max-width: 720px) {
  .hero-content { padding: 126px 20px 74px; text-align: left; }
  .hero-title { font-size: clamp(42px, 13vw, 58px); line-height: 1.02; }
  .hero-subtitle { font-size: 15px; line-height: 1.65; }
  .hero-ctas { display: grid; grid-template-columns: 1fr; width: 100%; }
  .hero-ctas .btn-gold, .hero-ctas .btn-line { width: 100%; justify-content: center; }
  .hero-stats { display: grid; grid-template-columns: 1fr 1fr; gap: 20px 0; }
  .stat-item { padding: 0 18px; border-right: 1px solid rgba(255,255,255,.12); }
  .stat-item:nth-child(odd) { padding-left: 0; }
  .stat-item:nth-child(even) { border-right: 0; }
  .section-header { text-align: left; }
  .trust-inner { text-align: left; }
  .cta-final-inner { text-align: left; }
}

@media (prefers-reduced-motion: reduce) {
  .reveal, .reveal-stagger, #heroBadge, #heroTitle, #heroSubtitle, #heroCtas, #heroStats {
    transition: none !important;
  }
}

/* ═══════════════════════════════════════════════════════════════
   INTERACTIVE ICONS + CONFIRMATION SOUND — v24
   Iconografía funcional y respuesta sensorial contenida.
   ═══════════════════════════════════════════════════════════════ */

.lucide {
  width: 1em;
  height: 1em;
  flex: 0 0 auto;
  fill: none;
  stroke: currentColor;
  vector-effect: non-scaling-stroke;
}

.btn-arrow-icon {
  width: 17px;
  height: 17px;
  transition: transform 180ms var(--ease-standard);
}

:where(.btn-gold, .btn-submit, .nav-cta):hover .btn-arrow-icon {
  transform: translateX(3px);
}

.sound-toggle {
  width: 40px;
  height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  margin-left: 14px;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 50%;
  background: rgba(9,10,12,.42);
  color: var(--text2);
  cursor: pointer;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  transition: color 180ms ease, border-color 180ms ease, background 180ms ease, transform 180ms var(--ease-standard);
}

.sound-toggle .lucide { width: 18px; height: 18px; }
.sound-toggle:hover {
  color: var(--cream);
  border-color: rgba(217,193,139,.56);
  background: rgba(217,193,139,.08);
  transform: translateY(-1px);
}
.sound-toggle[aria-pressed="false"] { color: var(--text3); }

.step-kicker {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 26px;
}

.step-icon {
  width: 46px;
  height: 46px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(255,255,255,.13);
  background: #0C0D10;
  color: var(--gold2);
  transition: color 180ms ease, border-color 180ms ease, background 180ms ease, transform 180ms var(--ease-standard);
}

.step-icon .lucide {
  width: 21px;
  height: 21px;
  transition: transform 180ms var(--ease-standard);
}

.step-num {
  margin-bottom: 0;
  padding: 0;
  border: 0;
  color: var(--text3);
  letter-spacing: .08em;
}

.step-card:hover .step-icon {
  color: var(--cream);
  border-color: rgba(217,193,139,.46);
  background: rgba(217,193,139,.07);
  transform: translateY(-2px);
}
.step-card:hover .step-icon .lucide { transform: scale(1.07); }

.trust-item { position: relative; }
.trust-icon {
  width: 36px;
  height: 36px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 12px;
  color: var(--gold2);
  border: 1px solid rgba(217,193,139,.24);
  background: rgba(217,193,139,.04);
  transition: color 180ms ease, border-color 180ms ease, transform 180ms var(--ease-standard);
}
.trust-icon .lucide { width: 18px; height: 18px; }
.trust-item:hover .trust-icon {
  color: var(--cream);
  border-color: rgba(217,193,139,.52);
  transform: translateY(-2px);
}

.form-section-icon {
  width: 17px;
  height: 17px;
  color: var(--text3);
  transition: color 180ms ease, transform 180ms var(--ease-standard);
}
.form-section:focus-within .form-section-icon {
  color: var(--gold2);
  transform: translateY(-1px);
}

.confirm-icon.ok {
  background: var(--cream);
  color: #0A0B0D;
  box-shadow: none;
}
.confirm-icon .lucide { width: 31px; height: 31px; }

@media (max-width: 720px) {
  .nav-inner { gap: 10px; }
  .nav-logo { margin-right: auto; }
  .sound-toggle { width: 38px; height: 38px; margin-left: 0; }
  .step-kicker { margin-bottom: 22px; }
  .trust-icon { margin-bottom: 10px; }
}

@media (prefers-reduced-motion: reduce) {
  .btn-arrow-icon,
  .sound-toggle,
  .step-icon,
  .step-icon .lucide,
  .trust-icon,
  .form-section-icon { transition: none !important; transform: none !important; }
}

/* Admin conectado a Google Sheets */
.panel-header-actions .btn-ghost,
.admin-request-actions button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}

.panel-header-actions .btn-ghost .lucide,
.admin-request-actions .lucide {
  width: 16px;
  height: 16px;
}

.panel-section-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 20px;
  margin: 8px 0 22px;
  padding-bottom: 18px;
  border-bottom: 1px solid var(--line2);
}

.panel-section-head h3 {
  margin: 3px 0 5px;
  color: var(--cream);
  font-family: var(--font-display);
  font-size: 24px;
  font-weight: 550;
}

.panel-section-head > div > p:last-child {
  color: var(--text2);
  font-size: 13px;
}

.admin-request-list {
  display: grid;
  gap: 14px;
  padding-bottom: 42px;
}

.admin-request-card {
  padding: 22px;
  border: 1px solid var(--line2);
  border-radius: 6px;
  background: var(--ink2);
  box-shadow: 0 14px 34px rgba(0, 0, 0, .12);
}

.admin-request-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
  padding-bottom: 18px;
  border-bottom: 1px solid var(--line);
}

.admin-request-kicker {
  margin: 0;
  color: var(--gold2);
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .12em;
}

.admin-request-head h4 {
  margin-top: 5px;
  color: var(--cream);
  font-size: 18px;
  font-weight: 650;
}

.admin-request-summary {
  display: flex;
  align-items: flex-end;
  flex-direction: column;
  gap: 8px;
  color: var(--text3);
  font-size: 11px;
}

.admin-request-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px 22px;
  margin: 0;
  padding: 20px 0;
}

.admin-request-grid div { min-width: 0; }

.admin-request-grid dt {
  margin-bottom: 5px;
  color: var(--text3);
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.admin-request-grid dd {
  overflow-wrap: anywhere;
  color: var(--text1);
  font-size: 13px;
  line-height: 1.5;
}

.admin-request-notes {
  margin: 0 0 18px;
  padding: 13px 15px;
  border-left: 2px solid rgba(217, 193, 139, .5);
  background: rgba(255, 255, 255, .025);
  color: var(--text2);
  font-size: 12.5px;
  line-height: 1.55;
}

.admin-request-actions {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  padding-top: 18px;
  border-top: 1px solid var(--line);
}

.btn-admin-approve,
.btn-admin-reject {
  min-height: 42px;
  padding: 10px 15px;
  border-radius: 4px;
  font: 700 12px var(--font-body);
  cursor: pointer;
  transition: border-color 180ms ease, background 180ms ease, color 180ms ease, transform 180ms var(--ease-standard);
}

.btn-admin-approve {
  border: 1px solid var(--gold2);
  background: var(--gold2);
  color: #0A0B0D;
}

.btn-admin-reject {
  border: 1px solid rgba(235, 108, 108, .45);
  background: transparent;
  color: #F0A0A0;
}

.btn-admin-approve:hover,
.btn-admin-reject:hover { transform: translateY(-1px); }
.btn-admin-approve:hover { background: var(--cream); border-color: var(--cream); }
.btn-admin-reject:hover { background: rgba(235, 108, 108, .08); border-color: rgba(235, 108, 108, .7); }

.admin-loading {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 180px;
  color: var(--text2);
  font-size: 13px;
}

.admin-loading .spinner {
  width: 18px;
  height: 18px;
  border: 2px solid var(--line2);
  border-top-color: var(--gold2);
  border-radius: 50%;
  animation: admin-spin .8s linear infinite;
}

.admin-empty-state .lucide {
  width: 30px;
  height: 30px;
  margin-bottom: 12px;
  color: var(--gold2);
}

@keyframes admin-spin { to { transform: rotate(360deg); } }

.admin-dashboard-heading, .admin-section-title { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px; }
.admin-dashboard-heading { margin-bottom: 18px; }
.admin-dashboard-heading h3, .admin-section-title h3 { margin: 2px 0 0; }
.admin-sync-status, #admin-vendedores-resumen { color: var(--text3); font-size: 12px; }
.admin-kpi-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-bottom: 34px; }
.admin-kpi { min-height: 94px; display: flex; align-items: center; gap: 14px; padding: 18px; border: 1px solid var(--line2); border-radius: 6px; background: var(--surface); }
.admin-kpi > .lucide { width: 21px; height: 21px; color: var(--gold); flex: 0 0 auto; }
.admin-kpi.success > .lucide { color: #73b88a; }
.admin-kpi.warning > .lucide { color: #dfb25c; }
.admin-kpi.danger > .lucide { color: #eb6c6c; }
.admin-kpi strong { display: block; color: var(--text); font-size: 24px; line-height: 1; }
.admin-kpi span { display: block; margin-top: 7px; color: var(--text3); font-size: 12px; }
.admin-dashboard-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; margin-top: 28px; }
.admin-data-section { min-width: 0; padding-top: 20px; border-top: 1px solid var(--line2); }
.admin-span-2 { grid-column: 1 / -1; }
.admin-section-title { margin-bottom: 14px; }
.admin-dashboard-table { min-width: 780px; }
.admin-status { display: inline-flex; padding: 4px 8px; border: 1px solid var(--line2); border-radius: 999px; color: var(--text2); font-size: 11px; white-space: nowrap; }
.admin-status.activo, .admin-status.vigente { color: #80c996; border-color: rgba(128,201,150,.35); background: rgba(128,201,150,.07); }
.admin-status.por-vencer { color: #dfb25c; border-color: rgba(223,178,92,.38); background: rgba(223,178,92,.08); }
.admin-status.vencida, .admin-status.retirado, .admin-status.inactivo { color: #eb8484; border-color: rgba(235,108,108,.34); background: rgba(235,108,108,.07); }
.admin-membership-summary { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 12px; }
.admin-membership-summary span { padding: 7px 10px; border: 1px solid var(--line2); border-radius: 4px; color: var(--text3); font-size: 11px; }
.admin-membership-summary strong { margin-left: 5px; color: var(--text); }
.admin-ranking { display: grid; gap: 13px; }
.admin-rank-row > div:first-child { display: flex; justify-content: space-between; gap: 12px; color: var(--text2); font-size: 12px; }
.admin-rank-row strong { color: var(--text); }
.admin-rank-track { height: 3px; margin-top: 7px; background: var(--line2); overflow: hidden; }
.admin-rank-track span { display: block; height: 100%; background: var(--gold); }
.admin-inline-empty { padding: 24px 0; color: var(--text3); font-size: 13px; }
.admin-send-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin: 0; }
.admin-send-grid div { padding: 12px; border: 1px solid var(--line2); }
.admin-send-grid dt { color: var(--text3); font-size: 11px; }
.admin-send-grid dd { margin: 7px 0 0; color: var(--text); font-size: 17px; font-weight: 700; }
.admin-error-list { margin-top: 12px; }
.admin-error-list p { display: flex; flex-direction: column; gap: 3px; margin: 0; padding: 10px 0; border-bottom: 1px solid var(--line2); font-size: 12px; }
.admin-error-list span { color: var(--text3); }
.admin-visits-section { margin-top: 10px; }
.admin-visits-section > .admin-section-title > span { color: var(--text3); font-size: 12px; }
.admin-visit-kpis { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 10px; margin: 18px 0 24px; }
.admin-visit-kpis > div { min-width: 0; padding: 16px; border: 1px solid var(--line2); background: var(--surface); }
.admin-visit-kpis strong { display: block; color: var(--text); font-size: 23px; line-height: 1; }
.admin-visit-kpis span { display: block; margin-top: 8px; color: var(--text3); font-size: 11px; }
.admin-visit-breakdown { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.admin-visit-breakdown > div { min-width: 0; }
.admin-visit-breakdown h4, .admin-visits-recent-title h4 { margin: 0 0 14px; color: var(--text2); font-size: 13px; }
.admin-visits-recent-title { margin-top: 28px; }
.admin-visits-table { min-width: 680px; }

@media (max-width: 820px) {
  .admin-kpi-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .admin-dashboard-grid { grid-template-columns: 1fr; }
  .admin-span-2 { grid-column: auto; }
  .admin-request-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .admin-visit-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .admin-visit-breakdown { grid-template-columns: 1fr; }
}

@media (max-width: 560px) {
  .admin-kpi-grid { grid-template-columns: 1fr; }
  .admin-kpi { min-height: 78px; }
  .admin-dashboard-heading, .admin-section-title { align-items: flex-start; flex-direction: column; gap: 5px; }
  .admin-send-grid { grid-template-columns: 1fr; }
  .panel-header-actions { width: 100%; }
  .panel-header-actions .btn-ghost { flex: 1; min-width: 0; }
  .admin-request-card { padding: 18px 16px; }
  .admin-request-head { flex-direction: column; }
  .admin-request-summary { align-items: flex-start; }
  .admin-request-grid { grid-template-columns: 1fr; gap: 14px; }
  .admin-request-actions { flex-direction: column; }
  .admin-request-actions button { width: 100%; }
  .admin-visit-kpis { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
  .admin-loading .spinner { animation: none; }
  .btn-admin-approve,
  .btn-admin-reject { transition: none; }
}
.seller-dependent-block {
  margin-top: 18px;
  padding: 16px;
  border: 1px solid rgba(92, 111, 255, 0.22);
  border-radius: 6px;
  background: rgba(92, 111, 255, 0.04);
}

.seller-dependent-block[hidden],
#buyer-other-part-wrap[hidden] {
  display: none;
}

.seller-other-part {
  margin-top: 14px;
  margin-bottom: 0;
}
