.ssyh-page{
  --ssyh-paper:#f7f2e8;
  --ssyh-ink:#181510;
  --ssyh-muted:#625b4d;
  --ssyh-red:#8f1d19;
  --ssyh-gold:#c79a31;
  --ssyh-border:#d8cbb6;
  margin:0;
  background:linear-gradient(180deg,#fbf7ef 0%,#efe6d5 100%);
  color:var(--ssyh-ink);
  font-family:Arial, Helvetica, sans-serif;
}
.ssyh-page *{box-sizing:border-box}
.ssyh-page a{color:inherit}
.ssyh-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px clamp(18px,4vw,56px);background:rgba(255,252,245,.94);border-bottom:1px solid var(--ssyh-border);backdrop-filter:blur(14px)}
.ssyh-brand{font-weight:950;letter-spacing:.18em;text-decoration:none;color:#12100c}
.ssyh-nav{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.ssyh-nav a,.ssyh-nav button{border:1px solid var(--ssyh-border);background:#fff;color:#16120d;padding:10px 14px;text-decoration:none;font-weight:900;text-transform:uppercase;font-size:12px;letter-spacing:.08em;cursor:pointer}
.ssyh-nav .ssyh-nav-cta{background:var(--ssyh-red);border-color:var(--ssyh-red);color:#fff}
.ssyh-shell{width:min(100% - 28px,1680px);margin:0 auto;padding:24px 0 60px}
.ssyh-hero,.ssyh-auth{min-height:320px;display:flex;align-items:flex-end;border:1px solid var(--ssyh-border);background:linear-gradient(90deg,rgba(28,18,10,.74),rgba(28,18,10,.12)),var(--ssyh-hero) center/cover;box-shadow:0 18px 50px rgba(69,48,20,.16);overflow:hidden}
.ssyh-hero-copy,.ssyh-auth>div{max-width:760px;padding:clamp(24px,5vw,60px);color:#fff}
.ssyh-eyebrow{margin:0 0 10px;color:var(--ssyh-gold);font-weight:950;letter-spacing:.18em;text-transform:uppercase;font-size:12px}
.ssyh-hero h1,.ssyh-auth h1{font-family:Georgia,serif;font-size:clamp(44px,8vw,98px);line-height:.92;margin:0 0 18px;color:#fff;text-shadow:0 2px 22px rgba(0,0,0,.35)}
.ssyh-hero p,.ssyh-auth p{font-size:clamp(17px,2vw,24px);line-height:1.45;margin:0 0 22px}
.ssyh-actions{display:flex;gap:12px;flex-wrap:wrap}
.ssyh-actions a,.ssyh-auth-cta,.ssyh-book-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:12px 18px;background:var(--ssyh-red);color:#fff;text-decoration:none;font-weight:950;text-transform:uppercase;letter-spacing:.08em;border:1px solid var(--ssyh-red);cursor:pointer}
.ssyh-actions a+ a{background:#fff;color:#16120d;border-color:#fff}
.ssyh-filters{display:grid;grid-template-columns:1fr 1fr auto auto;gap:12px;align-items:end;margin:18px 0;padding:18px;background:#fff;border:1px solid var(--ssyh-border);box-shadow:0 12px 30px rgba(69,48,20,.08)}
.ssyh-filters label{display:grid;gap:6px;color:var(--ssyh-muted);font-weight:900;text-transform:uppercase;font-size:11px;letter-spacing:.08em}
.ssyh-filters select,.ssyh-filters select option{width:100%;min-height:44px;background:#fff;color:#17120d;border:1px solid var(--ssyh-border);padding:10px;font-size:15px}
.ssyh-filters button,.ssyh-filters a{min-height:44px;border:1px solid var(--ssyh-red);background:var(--ssyh-red);color:#fff;padding:12px 16px;text-decoration:none;font-weight:950;text-transform:uppercase;cursor:pointer}
.ssyh-filters a{background:#fff;color:#17120d;border-color:var(--ssyh-border)}
.ssyh-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px}
.ssyh-card{min-height:310px;background:#fff;border:1px solid var(--ssyh-border);padding:18px;display:flex;flex-direction:column;gap:12px;box-shadow:0 12px 32px rgba(69,48,20,.08);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.ssyh-card:hover{transform:translateY(-3px);border-color:var(--ssyh-gold);box-shadow:0 20px 42px rgba(69,48,20,.16)}
.ssyh-card-top{display:flex;gap:8px;align-items:center}
.ssyh-sprite-icon{width:42px;height:42px;display:inline-block;flex:0 0 42px;border-radius:8px;border:1px solid var(--ssyh-border);background-color:#f2eadc;background-image:var(--ssyh-sprite-url);background-size:500% 500%;background-repeat:no-repeat;background-position:calc(var(--ssyh-sprite-col) * 25%) calc(var(--ssyh-sprite-row) * 25%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.55)}
.ssyh-card-kicker{margin:0;color:var(--ssyh-red);font-weight:950;letter-spacing:.12em;text-transform:uppercase;font-size:12px}
.ssyh-card h2{font-family:Georgia,serif;font-size:28px;line-height:1;margin:0}.ssyh-card h2 a{text-decoration:none}
.ssyh-card p{color:var(--ssyh-muted);line-height:1.45;margin:0}
.ssyh-metrics{display:flex;gap:8px;flex-wrap:wrap;margin-top:auto}.ssyh-metrics span{background:#f3ead8;border:1px solid var(--ssyh-border);padding:7px 9px;font-weight:800;font-size:12px}
.ssyh-pagination{display:flex;gap:8px;flex-wrap:wrap;align-items:center;justify-content:center;margin:24px 0}.ssyh-pagination a,.ssyh-pagination span{min-width:40px;padding:10px 12px;border:1px solid var(--ssyh-border);background:#fff;color:#181510;text-align:center;text-decoration:none;font-weight:900}.ssyh-pagination .is-active{background:var(--ssyh-red);border-color:var(--ssyh-red);color:#fff}
.ssyh-detail{display:grid;gap:18px}.ssyh-detail-hero{min-height:340px;border:1px solid var(--ssyh-border);padding:clamp(24px,5vw,58px);color:#fff;background:linear-gradient(90deg,rgba(28,18,10,.82),rgba(28,18,10,.28)),var(--ssyh-hero) center/cover}
.ssyh-detail-hero h1{font-family:Georgia,serif;font-size:clamp(42px,7vw,86px);line-height:.94;margin:14px 0;color:#fff;max-width:900px;text-shadow:0 2px 22px rgba(0,0,0,.35)}
.ssyh-detail-hero p{font-size:20px;line-height:1.45;max-width:820px}
.ssyh-detail-body{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:18px}
.ssyh-panel,.ssyh-comments,.ssyh-book{background:#fff;border:1px solid var(--ssyh-border);padding:22px;box-shadow:0 12px 30px rgba(69,48,20,.08)}
.ssyh-panel h2,.ssyh-comments h2,.ssyh-book h2{font-family:Georgia,serif;font-size:34px;margin:0 0 12px}.ssyh-prose{font-size:19px;line-height:1.68;color:#211b14}
.ssyh-vote{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:18px}.ssyh-vote button,.ssyh-comment-form button{background:var(--ssyh-red);color:#fff;border:0;padding:12px 16px;font-weight:950;text-transform:uppercase;cursor:pointer}
.ssyh-login-note{font-weight:900;color:#211b14}.ssyh-error{border:1px solid #9b1c1c;background:#fff2f0;color:#7a1111;padding:12px}
.ssyh-book img{width:100%;display:block;border:1px solid var(--ssyh-border);margin-bottom:12px}.ssyh-book p{color:var(--ssyh-muted);line-height:1.45}
.ssyh-comment-form{display:grid;gap:10px;margin-bottom:18px}.ssyh-comment-form textarea{min-height:110px;border:1px solid var(--ssyh-border);background:#fff;color:#111;padding:12px}
.ssyh-comment-list{display:grid;gap:10px}.ssyh-comment-list article{border:1px solid var(--ssyh-border);background:#fbf7ef;padding:14px}.ssyh-comment-list time{display:block;color:var(--ssyh-muted);font-size:12px;margin-top:4px}
.ssyh-auth{min-height:520px}.ssyh-back-to-top{position:fixed;left:18px;bottom:18px;z-index:30;width:46px;height:46px;border-radius:999px;border:1px solid var(--ssyh-gold);background:var(--ssyh-red);color:#fff;font-weight:950;font-size:22px;box-shadow:0 10px 24px rgba(0,0,0,.22);cursor:pointer;opacity:0;pointer-events:none;transition:opacity .16s ease,transform .16s ease}.ssyh-back-to-top.is-visible{opacity:1;pointer-events:auto}.ssyh-back-to-top:hover{transform:translateY(-2px)}
@media(max-width:860px){.ssyh-header{position:relative;align-items:flex-start;flex-direction:column}.ssyh-filters{grid-template-columns:1fr}.ssyh-detail-body{grid-template-columns:1fr}.ssyh-shell{width:min(100% - 18px,1680px)}}

/* LUNA_SSYH_FIX_WHITE_BUTTON_TEXT_V2
   Texto blanco en CTA principales del satélite SSyH.
   Alcance encapsulado bajo .ssyh-page para no afectar otros módulos. */
.ssyh-page .ssyh-auth-cta,
.ssyh-page .ssyh-auth-cta:link,
.ssyh-page .ssyh-auth-cta:visited,
.ssyh-page .ssyh-auth-cta:hover,
.ssyh-page .ssyh-auth-cta:focus,
.ssyh-page .ssyh-auth-cta:active,
.ssyh-page a.ssyh-auth-cta,
.ssyh-page a.ssyh-auth-cta:link,
.ssyh-page a.ssyh-auth-cta:visited,
.ssyh-page a.ssyh-auth-cta:hover,
.ssyh-page a.ssyh-auth-cta:focus,
.ssyh-page a.ssyh-auth-cta:active,
.ssyh-page .ssyh-book-cta,
.ssyh-page .ssyh-book-cta:link,
.ssyh-page .ssyh-book-cta:visited,
.ssyh-page .ssyh-book-cta:hover,
.ssyh-page .ssyh-book-cta:focus,
.ssyh-page .ssyh-book-cta:active,
.ssyh-page a.ssyh-book-cta,
.ssyh-page a.ssyh-book-cta:link,
.ssyh-page a.ssyh-book-cta:visited,
.ssyh-page a.ssyh-book-cta:hover,
.ssyh-page a.ssyh-book-cta:focus,
.ssyh-page a.ssyh-book-cta:active,
.ssyh-page .ssyh-book-link,
.ssyh-page .ssyh-book-link:link,
.ssyh-page .ssyh-book-link:visited,
.ssyh-page .ssyh-book-link:hover,
.ssyh-page .ssyh-book-link:focus,
.ssyh-page .ssyh-book-link:active,
.ssyh-page .ssyh-featured-book .ssyh-btn,
.ssyh-page .ssyh-featured-book .ssyh-btn:link,
.ssyh-page .ssyh-featured-book .ssyh-btn:visited,
.ssyh-page .ssyh-featured-book .ssyh-btn:hover,
.ssyh-page .ssyh-featured-book .ssyh-btn:focus,
.ssyh-page .ssyh-featured-book .ssyh-btn:active,
.ssyh-page .ssyh-featured-book a.ssyh-btn,
.ssyh-page .ssyh-featured-book a.ssyh-btn:link,
.ssyh-page .ssyh-featured-book a.ssyh-btn:visited,
.ssyh-page .ssyh-featured-book a.ssyh-btn:hover,
.ssyh-page .ssyh-featured-book a.ssyh-btn:focus,
.ssyh-page .ssyh-featured-book a.ssyh-btn:active,
.ssyh-page a[href*="thydom.com"].ssyh-btn,
.ssyh-page a[href*="thydom.com"].ssyh-btn:link,
.ssyh-page a[href*="thydom.com"].ssyh-btn:visited,
.ssyh-page a[href*="thydom.com"].ssyh-btn:hover,
.ssyh-page a[href*="thydom.com"].ssyh-btn:focus,
.ssyh-page a[href*="thydom.com"].ssyh-btn:active,
.ssyh-page a[href*="thydom.com"].ssyh-cta,
.ssyh-page a[href*="thydom.com"].ssyh-cta:link,
.ssyh-page a[href*="thydom.com"].ssyh-cta:visited,
.ssyh-page a[href*="thydom.com"].ssyh-cta:hover,
.ssyh-page a[href*="thydom.com"].ssyh-cta:focus,
.ssyh-page a[href*="thydom.com"].ssyh-cta:active {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

.ssyh-page .ssyh-auth-cta *,
.ssyh-page .ssyh-book-cta *,
.ssyh-page .ssyh-book-link *,
.ssyh-page .ssyh-featured-book .ssyh-btn *,
.ssyh-page .ssyh-featured-book a.ssyh-btn *,
.ssyh-page a[href*="thydom.com"].ssyh-btn *,
.ssyh-page a[href*="thydom.com"].ssyh-cta * {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

/* LUNA_SSYH_FIX_WHITE_BUTTON_TEXT_V3_CACHEBUST
   Corrección reforzada: texto blanco en CTA del satélite SSyH.
   Cubre clases y href reales. Encapsulado bajo .ssyh-page. */
.ssyh-page a.ssyh-auth-cta,
.ssyh-page a.ssyh-auth-cta:link,
.ssyh-page a.ssyh-auth-cta:visited,
.ssyh-page a.ssyh-auth-cta:hover,
.ssyh-page a.ssyh-auth-cta:focus,
.ssyh-page a.ssyh-auth-cta:active,

.ssyh-page a.ssyh-nav-cta,
.ssyh-page a.ssyh-nav-cta:link,
.ssyh-page a.ssyh-nav-cta:visited,
.ssyh-page a.ssyh-nav-cta:hover,
.ssyh-page a.ssyh-nav-cta:focus,
.ssyh-page a.ssyh-nav-cta:active,

.ssyh-page a.ssyh-book-cta,
.ssyh-page a.ssyh-book-cta:link,
.ssyh-page a.ssyh-book-cta:visited,
.ssyh-page a.ssyh-book-cta:hover,
.ssyh-page a.ssyh-book-cta:focus,
.ssyh-page a.ssyh-book-cta:active,

.ssyh-page a.ssyh-book-link,
.ssyh-page a.ssyh-book-link:link,
.ssyh-page a.ssyh-book-link:visited,
.ssyh-page a.ssyh-book-link:hover,
.ssyh-page a.ssyh-book-link:focus,
.ssyh-page a.ssyh-book-link:active,

.ssyh-page .ssyh-featured-book a,
.ssyh-page .ssyh-featured-book a:link,
.ssyh-page .ssyh-featured-book a:visited,
.ssyh-page .ssyh-featured-book a:hover,
.ssyh-page .ssyh-featured-book a:focus,
.ssyh-page .ssyh-featured-book a:active,

.ssyh-page a[href*="/entrar"],
.ssyh-page a[href*="/entrar"]:link,
.ssyh-page a[href*="/entrar"]:visited,
.ssyh-page a[href*="/entrar"]:hover,
.ssyh-page a[href*="/entrar"]:focus,
.ssyh-page a[href*="/entrar"]:active,

.ssyh-page a[href*="/login/google"],
.ssyh-page a[href*="/login/google"]:link,
.ssyh-page a[href*="/login/google"]:visited,
.ssyh-page a[href*="/login/google"]:hover,
.ssyh-page a[href*="/login/google"]:focus,
.ssyh-page a[href*="/login/google"]:active,

.ssyh-page a[href*="thydom.com"],
.ssyh-page a[href*="thydom.com"]:link,
.ssyh-page a[href*="thydom.com"]:visited,
.ssyh-page a[href*="thydom.com"]:hover,
.ssyh-page a[href*="thydom.com"]:focus,
.ssyh-page a[href*="thydom.com"]:active,

.ssyh-page .ssyh-btn,
.ssyh-page .ssyh-btn:link,
.ssyh-page .ssyh-btn:visited,
.ssyh-page .ssyh-btn:hover,
.ssyh-page .ssyh-btn:focus,
.ssyh-page .ssyh-btn:active,

.ssyh-page .ssyh-button,
.ssyh-page .ssyh-button:link,
.ssyh-page .ssyh-button:visited,
.ssyh-page .ssyh-button:hover,
.ssyh-page .ssyh-button:focus,
.ssyh-page .ssyh-button:active,

.ssyh-page [class*="cta"],
.ssyh-page [class*="cta"]:link,
.ssyh-page [class*="cta"]:visited,
.ssyh-page [class*="cta"]:hover,
.ssyh-page [class*="cta"]:focus,
.ssyh-page [class*="cta"]:active {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    text-decoration-color: #ffffff !important;
}

.ssyh-page a.ssyh-auth-cta *,
.ssyh-page a.ssyh-nav-cta *,
.ssyh-page a.ssyh-book-cta *,
.ssyh-page a.ssyh-book-link *,
.ssyh-page .ssyh-featured-book a *,
.ssyh-page a[href*="/entrar"] *,
.ssyh-page a[href*="/login/google"] *,
.ssyh-page a[href*="thydom.com"] *,
.ssyh-page .ssyh-btn *,
.ssyh-page .ssyh-button *,
.ssyh-page [class*="cta"] * {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    text-decoration-color: #ffffff !important;
}

/* Refuerzo específico para botones de libro y Google si el HTML no usa clases esperadas. */
.ssyh-page a[href*="/login/google"],
.ssyh-page a[href*="/entrar"],
.ssyh-page a[href*="thydom.com/b/"],
.ssyh-page a[href*="thydom.com/app/beta/books"] {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

/* LUNA_SSYH_FIX_BACK_TO_TOP_RIGHT_V1
   Mueve el botón flotante de subir arriba al margen inferior derecho.
   Alcance encapsulado bajo .ssyh-page. */
.ssyh-page .ssyh-back-to-top {
    left: auto !important;
    right: 24px !important;
    bottom: 24px !important;
}

@media (max-width: 640px) {
    .ssyh-page .ssyh-back-to-top {
        left: auto !important;
        right: 16px !important;
        bottom: 16px !important;
    }
}

/* LUNA_SSYH_FIX_COMMENTS_AUTHOR_RENDER_CSS_V1 */
.ssyh-page .ssyh-comments,
.ssyh-page #ssyh-comments,
.ssyh-page #ssyh-interaction {
    scroll-margin-top: 96px;
}

.ssyh-page .ssyh-comment,
.ssyh-page .ssyh-comment-item {
    border: 1px solid var(--ssyh-border, #d9cfb8);
    background: #fffdf8;
    padding: 16px;
    margin: 14px 0 0;
}

.ssyh-page .ssyh-comment strong,
.ssyh-page .ssyh-comment-author,
.ssyh-page .ssyh-comment-name {
    display: block;
    color: #07111d;
    font-weight: 1000;
    font-size: 15px;
    margin-bottom: 4px;
}

.ssyh-page .ssyh-comment time,
.ssyh-page .ssyh-comment-date,
.ssyh-page .ssyh-comment small {
    display: block;
    color: #6b6254;
    font-size: 13px;
    margin-bottom: 12px;
}

.ssyh-page .ssyh-comment p,
.ssyh-page .ssyh-comment-body {
    color: #171717;
    font-size: 16px;
    line-height: 1.55;
    margin: 0;
}

.ssyh-page textarea[name="body"],
.ssyh-page textarea[name="comment"],
.ssyh-page .ssyh-comment-form textarea {
    width: 100%;
    min-height: 112px;
    box-sizing: border-box;
    border: 1px solid var(--ssyh-border, #d9cfb8);
    background: #ffffff;
    color: #171717;
    padding: 14px;
    font: 500 15px/1.5 system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.ssyh-page .ssyh-comment-form button,
.ssyh-page button[type="submit"].ssyh-comment-submit {
    width: 100%;
    min-height: 48px;
    border: 1px solid #9f171b;
    background: #9f171b;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    font-weight: 1000;
    letter-spacing: .06em;
    text-transform: uppercase;
    cursor: pointer;
}

/* LUNA_SSYH_FIX_HOME_READ_THYDOM_BLACK_V1_CSS
   Clase específica para el CTA "Leer en Thydom" de la home.
   No afecta a login, comentarios, libro destacado ni otros botones. */
.ssyh-page .ssyh-read-thydom-home-cta,
.ssyh-page .ssyh-read-thydom-home-cta:link,
.ssyh-page .ssyh-read-thydom-home-cta:visited,
.ssyh-page .ssyh-read-thydom-home-cta:hover,
.ssyh-page .ssyh-read-thydom-home-cta:focus,
.ssyh-page .ssyh-read-thydom-home-cta:active {
    color: #07111d !important;
    -webkit-text-fill-color: #07111d !important;
    text-decoration-color: #07111d !important;
}

.ssyh-page .ssyh-read-thydom-home-cta *,
.ssyh-page .ssyh-read-thydom-home-cta:hover *,
.ssyh-page .ssyh-read-thydom-home-cta:focus * {
    color: #07111d !important;
    -webkit-text-fill-color: #07111d !important;
    text-decoration-color: #07111d !important;
}

/* LUNA_SSYH_FIX_COMMENTS_MARKER_HOME_CTA_NAV_V1_CSS
   1) CTA "Leer en Thydom" de home con texto negro.
   2) Botón/form logout alineado con Tarjetas.
   3) Sin afectar Entrar con Google ni Ir al libro de ficha. */

/* CTA específico de home: texto negro aunque haya reglas globales de CTA en blanco. */
.ssyh-page .ssyh-read-thydom-home-cta,
.ssyh-page .ssyh-read-thydom-home-cta:link,
.ssyh-page .ssyh-read-thydom-home-cta:visited,
.ssyh-page .ssyh-read-thydom-home-cta:hover,
.ssyh-page .ssyh-read-thydom-home-cta:focus,
.ssyh-page .ssyh-read-thydom-home-cta:active {
    color: #07111d !important;
    -webkit-text-fill-color: #07111d !important;
    text-decoration-color: #07111d !important;
}

.ssyh-page .ssyh-read-thydom-home-cta *,
.ssyh-page .ssyh-read-thydom-home-cta:hover *,
.ssyh-page .ssyh-read-thydom-home-cta:focus * {
    color: #07111d !important;
    -webkit-text-fill-color: #07111d !important;
    text-decoration-color: #07111d !important;
}

/* Si el botón es el segundo CTA del hero y no se pudo marcar por HTML, cubrirlo sin afectar nav ni fichas. */
.ssyh-page .ssyh-hero a[href*="thydom.com"],
.ssyh-page .ssyh-hero a[href*="thydom.com"]:link,
.ssyh-page .ssyh-hero a[href*="thydom.com"]:visited,
.ssyh-page .ssyh-hero a[href*="thydom.com"]:hover,
.ssyh-page .ssyh-hero a[href*="thydom.com"]:focus,
.ssyh-page .ssyh-hero a[href*="thydom.com"]:active {
    color: #07111d !important;
    -webkit-text-fill-color: #07111d !important;
}

.ssyh-page .ssyh-hero a[href*="thydom.com"] * {
    color: #07111d !important;
    -webkit-text-fill-color: #07111d !important;
}

/* Alineación nav cuando aparece Salir como formulario POST. */
.ssyh-page .ssyh-nav {
    display: flex;
    align-items: center;
    gap: 10px;
}

.ssyh-page .ssyh-nav .ssyh-logout-form {
    display: inline-flex !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
}

.ssyh-page .ssyh-nav a,
.ssyh-page .ssyh-nav .ssyh-nav-cta,
.ssyh-page .ssyh-nav .ssyh-logout-form .ssyh-nav-cta {
    min-height: 46px !important;
    height: 46px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
    line-height: 1 !important;
    margin: 0 !important;
    vertical-align: middle !important;
}

.ssyh-page .ssyh-nav .ssyh-logout-form button.ssyh-nav-cta {
    font-family: inherit !important;
    appearance: none !important;
    cursor: pointer !important;
}

/* Quitar cualquier marcador técnico que por error pudiera quedar como texto suelto en comentarios.
   CSS no elimina contenido, pero evita que rompa el layout si quedase dentro de nodos conocidos. */
.ssyh-page .ssyh-comment-list {
    overflow-wrap: anywhere;
}

/* LUNA_SSYH_FIX_COMMENTS_BRACES_LOGOUT_ICON_V1_CSS
   1) Botón Salir como icono rojo.
   2) Alineación exacta con Tarjetas.
   3) No afecta a otros CTA. */

.ssyh-page .ssyh-nav {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end;
    gap: 10px !important;
}

.ssyh-page .ssyh-nav > a,
.ssyh-page .ssyh-nav .ssyh-nav-cta,
.ssyh-page .ssyh-nav .ssyh-logout-form,
.ssyh-page .ssyh-nav .ssyh-logout-icon {
    height: 46px !important;
    min-height: 46px !important;
    box-sizing: border-box !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    vertical-align: middle !important;
}

.ssyh-page .ssyh-nav .ssyh-logout-form {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1 !important;
}

.ssyh-page .ssyh-nav .ssyh-logout-icon {
    width: 46px !important;
    min-width: 46px !important;
    padding: 0 !important;
    border: 1px solid #aa151b !important;
    background: #aa151b !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 20px !important;
    font-weight: 1000 !important;
    line-height: 1 !important;
    cursor: pointer !important;
    appearance: none !important;
    border-radius: 0 !important;
}

.ssyh-page .ssyh-nav .ssyh-logout-icon:hover,
.ssyh-page .ssyh-nav .ssyh-logout-icon:focus-visible {
    background: #7f1115 !important;
    border-color: #7f1115 !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    outline: none !important;
}

.ssyh-page .ssyh-nav > a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 1 !important;
}

/* LUNA_SSYH_FIX_LOGOUT_VISIBLE_RED_V1_CSS
   Botón SALIR rojo, visible y alineado con TARJETAS.
   Evita iconos unicode que se renderizan como cuadrados. */
.ssyh-page .ssyh-nav {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 10px !important;
}

.ssyh-page .ssyh-nav > a,
.ssyh-page .ssyh-nav .ssyh-logout-form,
.ssyh-page .ssyh-nav .ssyh-logout-visible {
    height: 46px !important;
    min-height: 46px !important;
    box-sizing: border-box !important;
    margin: 0 !important;
    vertical-align: middle !important;
}

.ssyh-page .ssyh-nav .ssyh-logout-form {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    line-height: 1 !important;
}

.ssyh-page .ssyh-nav .ssyh-logout-visible {
    min-width: 92px !important;
    padding: 0 18px !important;
    border: 1px solid #aa151b !important;
    background: #aa151b !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-family: inherit !important;
    font-size: 13px !important;
    font-weight: 1000 !important;
    letter-spacing: .08em !important;
    line-height: 1 !important;
    cursor: pointer !important;
    appearance: none !important;
    border-radius: 0 !important;
    text-transform: uppercase !important;
}

.ssyh-page .ssyh-nav .ssyh-logout-visible:hover,
.ssyh-page .ssyh-nav .ssyh-logout-visible:focus-visible {
    background: #7f1115 !important;
    border-color: #7f1115 !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    outline: none !important;
}

.ssyh-page .ssyh-nav .ssyh-logout-visible * {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

/* LUNA_SSYH_SSO_PHASE2_LOGIN_UI_V2 */
.ssyh-auth-page {
  min-height: 100vh;
  background: #f8f5ed !important;
  color: #19140f !important;
}

.ssyh-auth-shell {
  width: min(1040px, calc(100% - 32px));
  min-height: 100vh;
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 420px;
  gap: 28px;
  align-items: center;
  padding: 42px 0;
}

.ssyh-auth-minimal .ssyh-auth-shell {
  width: min(460px, calc(100% - 32px));
  grid-template-columns: 1fr;
  justify-items: center;
}

.ssyh-auth-context {
  border: 1px solid rgba(25,20,15,.12);
  background: linear-gradient(135deg, rgba(170,21,27,.94), rgba(92,18,18,.94));
  color: #fff !important;
  padding: 42px;
  min-height: 360px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.ssyh-auth-context .ssyh-kicker {
  color: #f1bf00 !important;
  font-weight: 1000;
  letter-spacing: .14em;
}

.ssyh-auth-context h1 {
  color: #fff !important;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: clamp(34px, 5vw, 62px);
  line-height: .95;
  margin: 12px 0 18px;
  text-transform: uppercase;
}

.ssyh-auth-context p {
  color: #fff !important;
  font-size: 18px;
  line-height: 1.55;
}

.ssyh-google-card {
  background: #ffffff;
  border: 1px solid rgba(25,20,15,.14);
  box-shadow: 0 22px 60px rgba(40,30,15,.14);
  padding: 34px;
  text-align: center;
}

.ssyh-auth-minimal .ssyh-google-card {
  width: 100%;
}

.ssyh-google-card h1,
.ssyh-google-card h2 {
  color: #19140f !important;
  font-family: Georgia, 'Times New Roman', serif;
  text-transform: uppercase;
  letter-spacing: .04em;
  margin: 0 0 12px;
}

.ssyh-google-card p {
  color: #62574a !important;
}

.ssyh-google-blue-btn {
  width: 100%;
  min-height: 50px;
  margin: 20px 0 12px;
  border: 1px solid #1a73e8 !important;
  background: #1a73e8 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  font-weight: 900;
  cursor: pointer;
  border-radius: 4px;
}

.ssyh-google-blue-btn:hover,
.ssyh-google-blue-btn:focus {
  background: #1558b0 !important;
  border-color: #1558b0 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

.ssyh-google-blue-btn:disabled {
  opacity: .68;
  cursor: wait;
}

.ssyh-google-status {
  min-height: 22px;
  font-size: 13px;
  font-weight: 800;
  color: #7a5b12 !important;
}

.ssyh-auth-back {
  display: inline-flex;
  margin-top: 10px;
  color: #19140f !important;
  font-weight: 900;
  text-decoration: none;
  border-bottom: 1px solid currentColor;
}

.ssyh-auth-error {
  background: #fff1f1;
  border: 1px solid #e0a0a0;
  color: #7f1115;
  padding: 12px;
  margin: 12px 0;
  text-align: left;
  font-weight: 800;
}

@media (max-width: 820px) {
  .ssyh-auth-shell {
    grid-template-columns: 1fr;
    padding: 24px 0;
  }

  .ssyh-auth-context {
    min-height: auto;
    padding: 28px;
  }
}

/* LUNA_SSYH_SSO_PHASE3_ONBOARDING_V1 */
.ssyh-onboarding-shell {
  grid-template-columns: minmax(0, 1fr) 480px;
}

.ssyh-onboarding-form {
  display: grid;
  gap: 16px;
  text-align: left;
  margin-top: 18px;
}

.ssyh-onboarding-form label {
  display: grid;
  gap: 7px;
  color: #19140f !important;
  font-weight: 900;
}

.ssyh-onboarding-form input[type="text"],
.ssyh-onboarding-form input[type="date"] {
  width: 100%;
  min-height: 46px;
  border: 1px solid rgba(25,20,15,.22);
  background: #fff;
  color: #19140f !important;
  padding: 0 12px;
  border-radius: 6px;
}

.ssyh-onboarding-form small {
  color: #62574a !important;
  font-weight: 700;
  line-height: 1.35;
}

.ssyh-check {
  grid-template-columns: 22px 1fr !important;
  align-items: start;
  gap: 10px !important;
  background: #fffaf1;
  border: 1px solid #e3d1aa;
  padding: 12px;
  border-radius: 8px;
}

.ssyh-check input {
  margin-top: 3px;
}

.ssyh-check a {
  color: #8b1117 !important;
  font-weight: 1000;
}

/* LUNA_SSYH_SSO_PHASE4_ONBOARDING_REFINED_V3 */
.ssyh-onboarding-shell {
  grid-template-columns: minmax(0, 1fr) 480px;
}

.ssyh-onboarding-form {
  display: grid;
  gap: 16px;
  text-align: left;
  margin-top: 18px;
}

.ssyh-onboarding-form label {
  display: grid;
  gap: 7px;
  color: #19140f !important;
  font-weight: 900;
}

.ssyh-onboarding-form input[type="text"],
.ssyh-onboarding-form input[type="date"] {
  width: 100%;
  min-height: 46px;
  border: 1px solid rgba(25,20,15,.22);
  background: #fff;
  color: #19140f !important;
  padding: 0 12px;
  border-radius: 6px;
}

.ssyh-onboarding-form small {
  color: #62574a !important;
  font-weight: 700;
  line-height: 1.35;
}

.ssyh-check {
  grid-template-columns: 22px 1fr !important;
  align-items: start;
  gap: 10px !important;
  background: #fffaf1;
  border: 1px solid #e3d1aa;
  padding: 12px;
  border-radius: 8px;
}

.ssyh-check input {
  margin-top: 3px;
}

.ssyh-check a {
  color: #8b1117 !important;
  font-weight: 1000;
}
