:root {
  /* —— Marca —— */
  --sg-black: #0A0A0A;
  --sg-red: #FF3D2E;
  --sg-white: #FAFAFA;
  --sg-grey: #6E6E6E;
  --sg-red-hover: #E63425;
  --sg-red-tint: #FFF5F4;
  --sg-red-tint-2: #FFF8F7;
  --sg-red-border: #FFD9D5;
  --sg-red-border-soft: #FFE0DB;
  --sg-red-light: #FF8A7E;
  --sg-red-deep: #B8281C;
  --sg-line: #ECECEC;

  /* —— Alias cuenta / componentes (compat design-tokens.ts) —— */
  --sg-brand: var(--sg-red);
  --sg-ink: var(--sg-black);
  --sg-ink-2: #4A4A4A;
  --sg-muted: var(--sg-grey);
  --sg-hint: #9a9a9a;
  --sg-surface: #FFFFFF;
  --sg-surface-2: var(--sg-white);
  --sg-surface-soft: var(--sg-red-tint);
  --sg-border: #E5E5E5;
  --sg-border-soft: #F0F0F0;
  --sg-success: #1D9E75;
  --sg-success-dark: #1A8754;
  --sg-danger: #c62828;
  --sg-warn: #BA7517;
  --sg-weak: #E24B4A;

  /* —— Rampa neutros —— */
  --sg-n0: #FFFFFF;
  --sg-n50: #FAFAFA;
  --sg-n100: #F7F7F7;
  --sg-n150: #F5F5F5;
  --sg-n200: #F0F0F0;
  --sg-n300: #E5E5E5;
  --sg-n400: #D4D4D4;
  --sg-n450: #C0C0C0;
  --sg-n500: #9A9A9A;
  --sg-n600: #8A8A8A;
  --sg-n550: #888888;
  --sg-n425: #C5C5C5;
  --sg-n350: #DDDDDD;
  --sg-n325: #D8D8D8;
  --sg-n75: #F8F8F8;
  --sg-ink-deep: #14162E;
  --sg-accent-lilac: #A5B4FC;
  --sg-n700: var(--sg-grey);
  --sg-n800: var(--sg-ink-2);
  --sg-n900: var(--sg-black);
  --sg-body: #2A2A2A;
  --sg-body-muted: #6B6760;
  --sg-warm-ink: #1F1D1A;
  --sg-paper: #E4E4E2;

  /* —— Bandas evidencia Sigo —— */
  --sg-band-a: #1D9E75;
  --sg-band-a-fg: #117b58;
  --sg-band-a-bg: rgba(29, 158, 117, 0.12);
  --sg-band-b: #BA7517;
  --sg-band-b-bg: rgba(186, 117, 23, 0.12);
  --sg-band-c: #E24B4A;
  --sg-band-c-bg: rgba(226, 75, 74, 0.12);
  --sg-band-d: #c62828;
  --sg-band-d-bg: rgba(198, 40, 40, 0.12);
  --sg-band-color: var(--sg-grey);

  /* —— Wordmark —— */
  --sg-wordmark-weight: 900;
  --sg-wordmark-tracking: -0.02em;
  --sg-dot: var(--sg-red);

  /* —— Tipografía —— */
  --sg-font-sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
  --sg-font-serif: 'Source Serif 4', Georgia, 'Times New Roman', serif;

  /* —— Radios —— */
  --sg-radius-sm: 6px;
  --sg-radius-md: 8px;
  --sg-radius-lg: 12px;
  --sg-radius-xl: 16px;
  --sg-radius-pill: 999px;

  /* —— Sombras / focus —— */
  --sg-shadow-card: 0 1px 3px rgba(0, 0, 0, 0.04);
  --sg-shadow-modal: 0 8px 24px rgba(0, 0, 0, 0.08);
  --sg-focus-ring: 0 0 0 3px rgba(255, 61, 46, 0.12);

  /* —— WhatsApp share (#079) —— */
  --sg-wa: #25D366;
  --sg-wa-hover: #1FB855;

  /* —— Estados OK / error (home post-suscripción) —— */
  --sg-ok-bg: #E1F5EE;
  --sg-ok-fg: #0F6E56;
  --sg-err-bg: #FEF2F2;
  --sg-err-fg: #7F1D1D;

  /* —— Evidencia guías v2 (#063) —— */
  --sg-ev-rob: #1B8A4B;
  --sg-ev-eme: #2A55C8;
  --sg-ev-pre: #7B4FCF;
  --sg-ev-hip: #A8801A;
  --sg-alert-dato-bg: #F0F6FF;
  --sg-alert-frontera-bg: #F0FDF4;
  --sg-audio-bg: #1A1A1A;
  --sg-dark-panel: #181818;
  --sg-n475: #B5B5B5;
  --sg-n650: #666666;
  --sg-n550-mid: #555555;
  --sg-ok-msg-bg: #F5FDF6;
  --sg-ok-msg-fg: #2E7D32;
  --sg-warm-brown: #8A7F70;
  --sg-warm-ink-2: #33302B;
  --sg-highlight-red: #FFE8E6;
  --sg-danger-bright: #B91C1C;

  /* —— Tintes superficie (evitar colisión #FFF→var) —— */
  --sg-surface-tint-red: #FFF1EF;
  --sg-surface-tint-warm: #FFF8F0;
  --sg-surface-tint-pink: #FFF0EE;
  --sg-surface-tint-amber: #FFF8E1;
  --sg-surface-tint-warn: #FFF8F6;
  --sg-surface-tint-accion: #FFFBEB;
  --sg-card-dark: #2C2C2A;
  --sg-dot-coral: #FFC9C0;
  --sg-tier-banner: #FAEEDA;
  --sg-chip-border: #FFD9D3;
  --sg-consent-bg: #FCFCFC;
  --sg-err-border: #DC2626;

  /* —— Cuenta iOS (#073) —— */
  --sg-cuenta-em: #9B958C;
  --sg-cuenta-invite-bg: #FFE7E3;
  --sg-cuenta-chev: #C6C2BA;
  --sg-cuenta-premium-fg: #7A5A18;
  --sg-cuenta-premium-bg: #FBF0DD;
  --sg-cuenta-radio-border: #CFCBC3;
  --sg-cuenta-saved: #1B7A4B;
  --sg-cuenta-upgrade-border: #F2DFB8;

  /* —— Metodología grades —— */
  --sg-grade-b: #3D9970;
  --sg-grade-c: #C69200;
  --sg-grade-d: #E67E22;
  --sg-grade-f: #8B0000;

  /* —— Condición landing v2 header muted —— */
  --sg-clv2-tagline: #BBBBBB;
  --sg-clv2-edition: #777777;
  --sg-clv2-sub: #999999;

  /* —— Biblioteca highlight —— */
  --sg-mark-bg: #FFE8B0;
  --sg-subtle-grey: #BDBDBD;
}

/* === RESET + BASE === */
  *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
  html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
  body {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    font-size: 16px; line-height: 1.6;
    color: var(--sg-black); background: var(--sg-white);
    font-feature-settings: 'ss01';
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }
  img { max-width: 100%; height: auto; display: block; }
  a { color: inherit; text-decoration: none; }
  a:hover { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; }
  button { font-family: inherit; cursor: pointer; border: none; background: none; }

  /* === LAYOUT === */
  .sigo-container { width: 100%; max-width: 720px; margin: 0 auto; padding: 0 20px; }
  @media (min-width: 768px) { .sigo-container { max-width: 880px; padding: 0 32px; } }
  @media (min-width: 1100px) { .sigo-container { max-width: 1040px; } }

  /* === LOGO === */
  .sigo-logo { font-size: 22px; font-weight: 900; letter-spacing: -0.02em; color: var(--sg-black); }
  .sigo-logo__dot { color: var(--sg-red); }

  /* === NAVBAR === */
  .sigo-nav {
    position: sticky; top: 0; z-index: 50;
    background: rgba(250, 250, 250, 0.92);
    backdrop-filter: saturate(180%) blur(10px);
    -webkit-backdrop-filter: saturate(180%) blur(10px);
    border-bottom: 1px solid var(--sg-border);
  }
  .sigo-nav__inner {
    display: flex; align-items: center; justify-content: space-between;
    padding: 14px 0;
  }
  .sigo-nav__links {
    display: none; gap: 28px;
    font-size: 14px; color: var(--sg-grey);
  }
  .sigo-nav__links a:hover { color: var(--sg-black); text-decoration: none; }
  .sigo-nav__links a.active { color: var(--sg-black); font-weight: 600; }
  @media (min-width: 768px) { .sigo-nav__links { display: flex; } }
  .sigo-nav__cta {
    display: inline-block;
    padding: 9px 16px;
    background: var(--sg-black); color: var(--sg-white);
    font-size: 13px; font-weight: 600;
    border-radius: 6px;
    transition: background 0.15s;
  }
  .sigo-nav__cta:hover { background: var(--sg-red); text-decoration: none; }

  /* === TIPOGRAFÍA === */
  h1, .sigo-h1 {
    font-size: 36px; line-height: 1.15; font-weight: 900;
    letter-spacing: -0.025em; margin-bottom: 20px;
  }
  @media (min-width: 768px) { h1, .sigo-h1 { font-size: 52px; } }
  h2, .sigo-h2 {
    font-size: 26px; line-height: 1.25; font-weight: 800;
    letter-spacing: -0.02em; margin: 48px 0 16px;
  }
  @media (min-width: 768px) { h2, .sigo-h2 { font-size: 36px; margin: 64px 0 20px; } }
  h3, .sigo-h3 {
    font-size: 19px; line-height: 1.3; font-weight: 700;
    letter-spacing: -0.01em; margin: 32px 0 12px;
  }
  @media (min-width: 768px) { h3, .sigo-h3 { font-size: 22px; } }
  p { margin-bottom: 18px; color: var(--sg-body); font-size: 16px; line-height: 1.7; }
  @media (min-width: 768px) { p { font-size: 17px; } }
  strong { font-weight: 700; color: var(--sg-black); }
  em { font-style: italic; }
  ul, ol { padding-left: 24px; margin-bottom: 18px; color: var(--sg-body); }
  li { margin-bottom: 8px; line-height: 1.65; }
  blockquote {
    border-left: 3px solid var(--sg-red);
    padding: 4px 0 4px 18px; margin: 24px 0;
    font-style: italic; color: var(--sg-body);
  }
  code {
    font-family: 'JetBrains Mono', 'IBM Plex Mono', ui-monospace, monospace;
    font-size: 0.92em; background: var(--sg-border-soft);
    padding: 2px 6px; border-radius: 4px;
  }
  hr { border: none; border-top: 1px solid var(--sg-border); margin: 48px 0; }
  table {
    width: 100%; border-collapse: collapse; margin: 24px 0; font-size: 15px;
  }
  th, td {
    text-align: left; padding: 12px 14px;
    border-bottom: 1px solid var(--sg-border);
  }
  th { font-weight: 700; color: var(--sg-black); background: var(--sg-n150); }
  td { color: var(--sg-body); }

  /* === BLOQUES UTILITARIOS === */
  .sigo-section { padding: 56px 0; }
  @media (min-width: 768px) { .sigo-section { padding: 80px 0; } }
  .sigo-eyebrow {
    display: inline-block;
    font-size: 13px; font-weight: 600; letter-spacing: 0.08em;
    text-transform: uppercase; color: var(--sg-red);
    margin-bottom: 12px;
  }
  .sigo-lead {
    font-size: 19px; line-height: 1.6; color: var(--sg-body); margin-bottom: 28px;
  }
  @media (min-width: 768px) { .sigo-lead { font-size: 21px; } }
  .sigo-card {
    background: var(--sg-surface); border: 1px solid var(--sg-border); border-radius: 10px;
    padding: 24px; margin-bottom: 16px;
  }
  .sigo-callout {
    background: var(--sg-red-tint-2); border: 1px solid var(--sg-red-border); border-radius: 8px;
    padding: 20px; margin: 24px 0;
    font-size: 15px; color: var(--sg-body);
  }
  .sigo-callout strong { color: var(--sg-red-deep); }

  /* === CTA calculadora en landings de condición === */
  .sigo-calc-cta {
    background: var(--sg-red-tint); border: 1px solid var(--sg-red); border-radius: 14px;
    padding: 28px 24px; margin: 32px 0;
  }
  .sigo-calc-cta__eyebrow {
    font-size: 12px; font-weight: 700; text-transform: uppercase;
    letter-spacing: 0.08em; color: var(--sg-red); margin-bottom: 10px;
  }
  .sigo-calc-cta h3 {
    font-size: 22px; font-weight: 800; line-height: 1.25;
    margin: 0 0 12px; color: var(--sg-black);
  }
  .sigo-calc-cta p { font-size: 15px; line-height: 1.6; color: var(--sg-ink-2); margin-bottom: 18px; }
  .sigo-calc-cta__btn {
    display: inline-block; padding: 12px 22px;
    background: var(--sg-red); color: var(--sg-white) !important;
    font-size: 15px; font-weight: 700; border-radius: 8px;
    text-decoration: none !important;
  }
  .sigo-calc-cta__btn:hover { opacity: 0.92; text-decoration: none !important; }

  /* === BREADCRUMBS === */
  .sigo-breadcrumb {
    font-size: 13px; color: var(--sg-grey); margin-bottom: 24px;
  }
  .sigo-breadcrumb a { color: var(--sg-grey); }
  .sigo-breadcrumb a:hover { color: var(--sg-black); }
  .sigo-breadcrumb__sep { margin: 0 8px; color: var(--sg-n450); }

  /* === CTA BUTTONS === */
  .sigo-btn {
    display: inline-block; padding: 14px 24px;
    font-size: 15px; font-weight: 600;
    border-radius: 8px;
    transition: background 0.15s, transform 0.05s;
  }
  .sigo-btn:active { transform: translateY(1px); }
  .sigo-btn--primary { background: var(--sg-red); color: var(--sg-white); }
  .sigo-btn--primary:hover { background: var(--sg-red-hover); text-decoration: none; }
  .sigo-btn--secondary {
    background: transparent; color: var(--sg-black);
    border: 1px solid var(--sg-black);
  }
  .sigo-btn--secondary:hover { background: var(--sg-black); color: var(--sg-white); text-decoration: none; }

  /* === FOOTER (6 columnas desktop, accordion mobile) === */
  .sigo-footer {
    background: var(--sg-black); color: var(--sg-n450);
    padding: 56px 0 24px; margin-top: 80px;
  }
  .sigo-footer__cols {
    display: grid; gap: 32px;
    grid-template-columns: 1fr;
  }
  @media (min-width: 600px) { .sigo-footer__cols { grid-template-columns: 1fr 1fr; } }
  @media (min-width: 900px) { .sigo-footer__cols { grid-template-columns: repeat(3, 1fr); } }
  @media (min-width: 1100px) { .sigo-footer__cols { grid-template-columns: repeat(6, 1fr); gap: 24px; } }
  .sigo-footer__col h4 {
    font-size: 13px; font-weight: 700; color: var(--sg-white);
    text-transform: uppercase; letter-spacing: 0.06em;
    margin: 0 0 16px;
  }
  .sigo-footer__col ul { list-style: none; padding: 0; margin: 0; }
  .sigo-footer__col li { margin-bottom: 10px; font-size: 14px; }
  .sigo-footer__col a { color: var(--sg-n450); }
  .sigo-footer__col a:hover { color: var(--sg-white); text-decoration: none; }
  .sigo-footer__tagline { font-size: 14px; color: var(--sg-n450); font-style: italic; margin-top: 8px; }
  .sigo-footer__legal {
    border-top: 1px solid var(--sg-body); margin-top: 40px; padding-top: 24px;
    text-align: center; font-size: 12px; color: var(--sg-grey);
  }
  .sigo-footer__legal a { color: var(--sg-grey); }
  .sigo-footer .sigo-logo { color: var(--sg-white); }

  /* === COOKIE BANNER === */
  .sigo-cookie {
    position: fixed; bottom: 16px; left: 16px; right: 16px;
    background: var(--sg-black); color: var(--sg-white);
    padding: 16px 20px; border-radius: 10px;
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.18);
    display: flex; flex-direction: column; gap: 12px;
    z-index: 100; font-size: 14px;
    max-width: 720px; margin: 0 auto;
  }
  @media (min-width: 768px) {
    .sigo-cookie { flex-direction: row; align-items: center; justify-content: space-between; }
  }
  .sigo-cookie__text { flex: 1; line-height: 1.5; }
  .sigo-cookie__text a { color: var(--sg-red-light); text-decoration: underline; }
  .sigo-cookie__btn {
    background: var(--sg-white); color: var(--sg-black);
    padding: 8px 16px; border-radius: 6px;
    font-weight: 600; font-size: 13px;
    cursor: pointer; border: none;
    white-space: nowrap;
  }
  .sigo-cookie__btn:hover { background: var(--sg-red); color: var(--sg-white); }
  .sigo-cookie.hidden { display: none; }

  /* === BOTÓN FLOTANTE "REPORTAR ERROR" === */
  .sigo-report-fab {
    position: fixed; bottom: 24px; right: 24px;
    width: 44px; height: 44px; border-radius: 50%;
    background: var(--sg-black); color: var(--sg-white);
    display: flex; align-items: center; justify-content: center;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    cursor: pointer; z-index: 90;
    transition: background 0.15s, transform 0.1s;
    font-size: 18px;
  }
  .sigo-report-fab:hover { background: var(--sg-red); transform: scale(1.05); }
  .sigo-report-modal {
    position: fixed; inset: 0;
    background: rgba(0, 0, 0, 0.5);
    display: none; align-items: center; justify-content: center;
    z-index: 200; padding: 20px;
  }
  .sigo-report-modal.open { display: flex; }
  .sigo-report-modal__inner {
    background: var(--sg-white); padding: 28px;
    border-radius: 12px; max-width: 500px; width: 100%;
  }
  .sigo-report-modal h3 { margin: 0 0 12px; font-size: 20px; }
  .sigo-report-modal label { display: block; font-size: 13px; font-weight: 600; margin: 12px 0 6px; }
  .sigo-report-modal input, .sigo-report-modal textarea {
    width: 100%; padding: 10px 12px; font-size: 14px;
    border: 1px solid var(--sg-border); border-radius: 6px;
    font-family: inherit; background: var(--sg-surface);
  }
  .sigo-report-modal textarea { resize: vertical; min-height: 100px; }
  .sigo-report-modal__actions {
    display: flex; gap: 8px; justify-content: flex-end; margin-top: 20px;
  }
  .sigo-report-modal__msg { margin-top: 12px; font-size: 13px; }
  .sigo-report-modal__msg.ok { color: var(--sg-success-dark); }
  .sigo-report-modal__msg.err { color: var(--sg-red-deep); }

  /* === ACCESIBILIDAD === */
  :focus-visible { outline: 2px solid var(--sg-red); outline-offset: 2px; border-radius: 4px; }
  @media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { transition: none !important; animation: none !important; }
  }

  /* === SKIP LINK === */
  .sg-skip-link {
    position: absolute; left: -9999px; top: auto; width: 1px; height: 1px; overflow: hidden;
  }
  .sg-skip-link:focus {
    position: fixed; left: 16px; top: 16px; width: auto; height: auto; overflow: visible;
    z-index: 10000; padding: 12px 20px; background: var(--sg-black); color: var(--sg-white);
    font-size: 14px; font-weight: 600; border-radius: 8px; text-decoration: none;
  }


  .sg-auth-wrap { min-height: calc(100vh - 64px); background: var(--sg-white); padding: 0 20px 48px; box-sizing: border-box; }
  .sg-auth-card {
    max-width: 440px; margin: 80px auto 0; background: var(--sg-surface); border: 0.5px solid var(--sg-border-soft);
    border-radius: 12px; padding: 40px; box-shadow: 0 4px 12px rgba(0,0,0,0.04); box-sizing: border-box;
  }
  .sg-auth-logo { display: block; text-align: center; font-size: 36px; font-weight: 900; letter-spacing: -0.03em; color: var(--sg-black); text-decoration: none; margin-bottom: 28px; }
  .sg-auth-logo span { color: var(--sg-red); }
  .sg-auth-card h1 { font-size: 24px; font-weight: 500; text-align: center; margin: 0 0 12px; color: var(--sg-black); }
  .sg-auth-card .sg-auth-copy { font-size: 14px; color: var(--sg-grey); text-align: center; line-height: 1.5; max-width: 340px; margin: 0 auto 24px; }
  .sg-auth-card input[type="email"], .sg-auth-card input[type="password"], .sg-auth-card input[type="text"] {
    width: 100%; padding: 12px 14px; border: 1px solid var(--sg-border); border-radius: 8px; font-size: 15px;
    margin-bottom: 12px; box-sizing: border-box; font-family: inherit;
  }
  .sg-auth-card input:focus { outline: none; border-color: var(--sg-red); box-shadow: 0 0 0 3px rgba(255,61,46,0.12); }
  .sg-pwd-wrapper { position: relative; margin-bottom: 12px; }
  .sg-pwd-wrapper input { margin-bottom: 0 !important; padding-right: 84px !important; }
  .sg-show-pwd-btn {
    position: absolute; right: 8px; top: 50%; transform: translateY(-50%);
    background: transparent; border: 0; font-size: 13px; color: var(--sg-n650); cursor: pointer; padding: 4px 8px;
    font-family: inherit;
  }
  .sg-auth-primary {
    width: 100%; padding: 12px; background: var(--sg-red); color: var(--sg-surface); border: none; border-radius: 8px;
    font-size: 15px; font-weight: 500; cursor: pointer; font-family: inherit; margin-top: 4px;
  }
  .sg-auth-primary:hover { opacity: 0.92; }
  .sg-auth-link-row { text-align: center; margin-top: 20px; font-size: 13px; color: var(--sg-grey); }
  .sg-auth-link-row a { color: var(--sg-red); font-weight: 600; text-decoration: none; }
  .sg-auth-link-row a:hover { text-decoration: underline; }
  .sg-auth-forgot { text-align: center; margin: 12px 0 0; font-size: 13px; }
  .sg-auth-forgot a { color: var(--sg-n650); text-decoration: underline; }
  .sg-auth-sep { border: none; border-top: 0.5px solid var(--sg-border-soft); margin: 28px 0 20px; }
  .sg-auth-footer { text-align: center; font-size: 12px; color: var(--sg-n500); }
  .sg-auth-footer a { color: var(--sg-red); text-decoration: none; font-weight: 600; }
  .sg-auth-footer a:hover { text-decoration: underline; }
  .sg-auth-msg { padding: 12px 14px; border-radius: 8px; margin-bottom: 16px; font-size: 14px; line-height: 1.45; }
  .sg-auth-msg--ok { background: var(--sg-ok-msg-bg); color: var(--sg-ok-msg-fg); }
  .sg-auth-msg--err { background: var(--sg-red-tint); color: var(--sg-danger); }
  #sg-password-form { display: none; margin-top: 16px; }
  #sg-password-form.is-visible { display: block; }
  #sg-reset-modal { display: none; position: fixed; inset: 0; background: rgba(0,0,0,.5); z-index: 9999; align-items: center; justify-content: center; }
  #sg-reset-modal.is-open { display: flex; }
  .sg-reset-card { background: var(--sg-surface); border-radius: 12px; padding: 32px; max-width: 400px; width: 90%; }
  .sg-reset-card h3 { margin: 0 0 12px; font-size: 18px; }
  .sg-reset-card p { margin: 0 0 16px; font-size: 14px; color: var(--sg-n650); }
  .sg-reset-card input { width: 100%; padding: 12px; border: 1px solid var(--sg-n350); border-radius: 8px; margin-bottom: 12px; box-sizing: border-box; }
  .sg-reset-actions { display: flex; gap: 8px; }
  .sg-reset-actions button { flex: 1; padding: 12px; border: 0; border-radius: 8px; cursor: pointer; font-family: inherit; }
  .sg-reset-cancel { background: var(--sg-border-soft); }
  .sg-reset-send { background: var(--sg-red); color: var(--sg-surface); font-weight: 600; }
  .sg-reset-back { display: none; width: 100%; margin-top: 12px; padding: 12px; border: 0; border-radius: 8px; cursor: pointer; font-family: inherit; background: var(--sg-red); color: var(--sg-surface); font-weight: 600; }
  .sg-reset-back.is-visible { display: block; }
  .sg-reset-card.is-success .sg-reset-actions,
  .sg-reset-card.is-success #sg-reset-email { display: none; }


.sigo-form { display: flex; flex-direction: column; gap: 0; }
  .sigo-message { margin-top: 14px; padding: 12px 14px; border-radius: 8px; font-size: 14px; line-height: 1.5; }
  .sigo-message[hidden] { display: none !important; }
  .sigo-message--ok { background: var(--sg-ok-bg); color: var(--sg-ok-fg); border-left: 3px solid var(--sg-ok-fg); }
  .sigo-message--err { background: var(--sg-err-bg); color: var(--sg-err-fg); border-left: 3px solid var(--sg-err-border); }