/* Sinapse LMS v3.7.1 — Student Experience UI Stabilization
   Capa visual Ingeniería de la Calma para el front del estudiante. No cambia lógica ni permisos. */

body.sinapse-ui-v370 {
    --bio-black: #0A0A0A;
    --bio-ink: #171717;
    --bio-cream: #F8F8F6;
    --bio-ivory: #F6F3ED;
    --bio-beige: #ECE7DD;
    --bio-gold: #F2B632;
    --bio-gold-soft: #F8D77A;
    --bio-muted: #6E6A63;
    --bio-border: rgba(10,10,10,.10);
    --bio-border-strong: rgba(10,10,10,.16);
    --bio-shadow: 0 22px 60px rgba(10,10,10,.10);
    --bio-shadow-soft: 0 14px 38px rgba(10,10,10,.07);
    --bio-radius-xl: 30px;
    --bio-radius-lg: 22px;
    --bio-radius-md: 16px;
    --bio-font-body: Manrope, Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --bio-font-display: Fraunces, Georgia, "Times New Roman", serif;
    background: radial-gradient(circle at 15% -10%, rgba(242,182,50,.12), transparent 28%), var(--bio-cream);
    color: var(--bio-ink);
    font-family: var(--bio-font-body);
}

body.sinapse-ui-v370 * { box-sizing: border-box; }
body.sinapse-ui-v370 a { text-underline-offset: 3px; }

body.sinapse-ui-v370 .sinapse-wrap {
    width: min(1180px, calc(100% - 36px));
    max-width: 1180px;
    padding: 34px 0 110px;
    font-family: var(--bio-font-body);
}

body.sinapse-ui-v370 .sinapse-heading,
body.sinapse-ui-v370 h1,
body.sinapse-ui-v370 h2,
body.sinapse-ui-v370 h3 {
    letter-spacing: -0.035em;
    color: var(--bio-ink);
}

body.sinapse-ui-v370 .sinapse-heading,
body.sinapse-ui-v370 h1 {
    font-family: var(--bio-font-display);
}

body.sinapse-ui-v370 .sinapse-meta {
    color: var(--bio-muted) !important;
    line-height: 1.55;
}

/* Botones base */
body.sinapse-ui-v370 .sinapse-btn {
    border-radius: 999px !important;
    min-height: 42px;
    padding: 10px 18px;
    font-weight: 800;
    letter-spacing: -0.01em;
    border-color: var(--bio-border-strong);
    box-shadow: none;
}
body.sinapse-ui-v370 .sinapse-btn-primary {
    background: linear-gradient(135deg, var(--bio-black), #23211B) !important;
    border-color: rgba(10,10,10,.92) !important;
    color: var(--bio-cream) !important;
    box-shadow: 0 12px 30px rgba(10,10,10,.16);
}
body.sinapse-ui-v370 .sinapse-btn-primary:hover {
    background: linear-gradient(135deg, #171717, #0A0A0A) !important;
    transform: translateY(-1px);
}
body.sinapse-ui-v370 .sinapse-btn-outline {
    background: rgba(255,255,255,.74) !important;
    border-color: var(--bio-border) !important;
    color: var(--bio-ink) !important;
}
body.sinapse-ui-v370 .sinapse-btn-outline:hover {
    background: #fff !important;
    border-color: rgba(242,182,50,.55) !important;
    color: var(--bio-black) !important;
    transform: translateY(-1px);
}
body.sinapse-ui-v370 .sinapse-btn-small { min-height: 34px; padding: 7px 13px; font-size: 12px; }

/* Inputs */
body.sinapse-ui-v370 .sinapse-input,
body.sinapse-ui-v370 input[type="text"],
body.sinapse-ui-v370 input[type="email"],
body.sinapse-ui-v370 input[type="password"],
body.sinapse-ui-v370 input[type="url"],
body.sinapse-ui-v370 textarea,
body.sinapse-ui-v370 select {
    border-radius: 16px !important;
    border-color: var(--bio-border) !important;
    background: rgba(255,255,255,.88) !important;
    color: var(--bio-ink) !important;
    font-family: var(--bio-font-body) !important;
}
body.sinapse-ui-v370 .sinapse-input:focus,
body.sinapse-ui-v370 input:focus,
body.sinapse-ui-v370 textarea:focus,
body.sinapse-ui-v370 select:focus {
    outline: none !important;
    border-color: rgba(242,182,50,.72) !important;
    box-shadow: 0 0 0 4px rgba(242,182,50,.12) !important;
}

/* Dashboard / Mi academia */
body.sinapse-ui-v370 .sinapse-dashboard { display: grid; gap: 24px; }
body.sinapse-ui-v370 .sinapse-dashboard-hub-card {
    position: relative;
    overflow: hidden;
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) minmax(260px, .75fr);
    gap: 28px;
    align-items: stretch;
    padding: clamp(28px, 4vw, 48px) !important;
    border-radius: var(--bio-radius-xl) !important;
    border: 1px solid rgba(242,182,50,.20) !important;
    background:
        radial-gradient(circle at 12% 12%, rgba(242,182,50,.25), transparent 26%),
        linear-gradient(135deg, #0A0A0A 0%, #171717 58%, #2B2412 100%) !important;
    box-shadow: 0 30px 80px rgba(10,10,10,.24) !important;
    color: var(--bio-cream) !important;
}
body.sinapse-ui-v370 .sinapse-dashboard-hub-card::after {
    content: '';
    position: absolute;
    inset: auto -18% -45% auto;
    width: 440px;
    height: 440px;
    border-radius: 50%;
    background: rgba(242,182,50,.13);
    filter: blur(10px);
    pointer-events: none;
}
body.sinapse-ui-v370 .sinapse-dashboard-hub-copy,
body.sinapse-ui-v370 .sinapse-dashboard-hub-aside { position: relative; z-index: 1; }
body.sinapse-ui-v370 .sinapse-dashboard-hub-title {
    margin: 18px 0 12px !important;
    color: var(--bio-cream) !important;
    font-size: clamp(34px, 4.8vw, 64px) !important;
    line-height: .92 !important;
    max-width: 740px;
}
body.sinapse-ui-v370 .sinapse-dashboard-hub-subtitle {
    color: rgba(248,248,246,.78) !important;
    font-size: clamp(15px, 1.4vw, 18px) !important;
    line-height: 1.7 !important;
    max-width: 680px;
}
body.sinapse-ui-v370 .sinapse-dashboard-brand-kicker {
    display: inline-flex;
    color: var(--bio-gold);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .12em;
    text-transform: uppercase;
}
body.sinapse-ui-v370 .sinapse-dashboard-brand-logo {
    width: 54px !important;
    height: 54px !important;
    object-fit: contain;
    border-radius: 16px;
    background: rgba(255,255,255,.06);
    padding: 7px;
}
body.sinapse-ui-v370 .sinapse-dashboard-hub-actions { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 24px; }
body.sinapse-ui-v370 .sinapse-dashboard-hub-card .sinapse-btn-primary {
    background: var(--bio-gold) !important;
    border-color: var(--bio-gold) !important;
    color: #0A0A0A !important;
}
body.sinapse-ui-v370 .sinapse-dashboard-hub-card .sinapse-btn-outline {
    background: rgba(255,255,255,.08) !important;
    border-color: rgba(255,255,255,.18) !important;
    color: var(--bio-cream) !important;
}
body.sinapse-ui-v370 .sinapse-dashboard-hub-aside {
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px;
}
body.sinapse-ui-v370 .sinapse-dashboard-mini-stat {
    padding: 18px;
    border-radius: 20px;
    background: rgba(255,255,255,.08);
    border: 1px solid rgba(255,255,255,.13);
    backdrop-filter: blur(12px);
}
body.sinapse-ui-v370 .sinapse-dashboard-mini-stat strong {
    display: block;
    color: var(--bio-gold);
    font-size: 34px;
    line-height: 1;
    letter-spacing: -0.06em;
}
body.sinapse-ui-v370 .sinapse-dashboard-mini-stat span { color: rgba(248,248,246,.76); font-size: 13px; font-weight: 800; }

body.sinapse-ui-v370 .sinapse-dashboard-featured-grid,
body.sinapse-ui-v370 .sinapse-dashboard-live-grid,
body.sinapse-ui-v370 .sinapse-courses-grid,
body.sinapse-ui-v370 .sinapse-pricing-grid {
    gap: 18px !important;
}
body.sinapse-ui-v370 .sinapse-dashboard-featured-card,
body.sinapse-ui-v370 .sinapse-dashboard-live-card,
body.sinapse-ui-v370 .sinapse-live-card,
body.sinapse-ui-v370 .sinapse-course-card,
body.sinapse-ui-v370 .sinapse-post,
body.sinapse-ui-v370 .sinapse-forum,
body.sinapse-ui-v370 .sinapse-profile-header,
body.sinapse-ui-v370 .sinapse-register-form,
body.sinapse-ui-v370 .sinapse-auth-form,
body.sinapse-ui-v370 .sinapse-pricing-card,
body.sinapse-ui-v370 .sinapse-certificate-card,
body.sinapse-ui-v370 .sinapse-notes-section,
body.sinapse-ui-v370 .sinapse-quiz-box,
body.sinapse-ui-v370 .sinapse-pdf-box,
body.sinapse-ui-v370 .sinapse-preview-notice,
body.sinapse-ui-v370 .sinapse-preview-cta,
body.sinapse-ui-v370 .sinapse-live-hero,
body.sinapse-ui-v370 .sinapse-live-panel {
    border-radius: var(--bio-radius-lg) !important;
    border: 1px solid var(--bio-border) !important;
    background: rgba(255,255,255,.88) !important;
    box-shadow: var(--bio-shadow-soft) !important;
}
body.sinapse-ui-v370 .sinapse-dashboard-featured-card {
    display: grid;
    gap: 8px;
    padding: 20px !important;
    color: var(--bio-ink) !important;
    text-decoration: none !important;
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
body.sinapse-ui-v370 .sinapse-dashboard-featured-card:hover,
body.sinapse-ui-v370 .sinapse-course-card:hover,
body.sinapse-ui-v370 .sinapse-post:hover {
    transform: translateY(-3px);
    box-shadow: var(--bio-shadow) !important;
    border-color: rgba(242,182,50,.42) !important;
}
body.sinapse-ui-v370 .sinapse-dashboard-featured-type,
body.sinapse-ui-v370 .sinapse-dashboard-live-date,
body.sinapse-ui-v370 .sinapse-live-date,
body.sinapse-ui-v370 .sinapse-course-category,
body.sinapse-ui-v370 .sinapse-course-tier-badge {
    background: rgba(242,182,50,.14) !important;
    color: #8A5A00 !important;
    border: 1px solid rgba(242,182,50,.28) !important;
    border-radius: 999px !important;
    font-weight: 900 !important;
}
body.sinapse-ui-v370 .sinapse-dashboard-hero {
    border-radius: var(--bio-radius-xl) !important;
    border: 1px solid var(--bio-border) !important;
    background: linear-gradient(180deg, rgba(255,255,255,.92), rgba(246,243,237,.86)) !important;
    box-shadow: var(--bio-shadow-soft) !important;
    padding: 24px !important;
}
body.sinapse-ui-v370 .sinapse-dashboard-user h2 { font-family: var(--bio-font-display); font-size: clamp(26px, 3vw, 38px) !important; }
body.sinapse-ui-v370 .sinapse-stat-box {
    border-radius: 18px;
    background: #fff !important;
    border: 1px solid var(--bio-border);
    box-shadow: 0 8px 22px rgba(10,10,10,.04);
}
body.sinapse-ui-v370 .sinapse-stat-box strong { color: var(--bio-black); }

/* Cursos / biblioteca */
body.sinapse-ui-v370 .sinapse-course-card {
    overflow: hidden;
    background: rgba(255,255,255,.92) !important;
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
body.sinapse-ui-v370 .sinapse-course-thumb,
body.sinapse-ui-v370 .sinapse-course-thumb-placeholder {
    height: 190px !important;
    background-color: #0A0A0A !important;
}
body.sinapse-ui-v370 .sinapse-course-thumb::after {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, transparent 40%, rgba(10,10,10,.32));
}
body.sinapse-ui-v370 .sinapse-course-info { padding: 20px !important; }
body.sinapse-ui-v370 .sinapse-course-info h3 { font-size: 19px !important; line-height: 1.15; letter-spacing: -.035em; }
body.sinapse-ui-v370 .sinapse-course-excerpt { font-size: 14px; line-height: 1.6; }

/* Barras de progreso */
body.sinapse-ui-v370 .sinapse-progress-bar {
    height: 9px !important;
    background: rgba(10,10,10,.08) !important;
    border-radius: 999px !important;
    overflow: hidden;
}
body.sinapse-ui-v370 .sinapse-progress-fill {
    background: linear-gradient(90deg, var(--bio-gold), #FFE08A) !important;
    border-radius: 999px !important;
}

/* Curso individual */
body.sinapse-ui-v370.single-sinapse_course,
body.sinapse-ui-v370 .sinapse-course-layout {
    background: var(--bio-cream);
}
body.sinapse-ui-v370 .sinapse-course-layout {
    width: min(1180px, calc(100% - 36px));
    max-width: 1180px;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 320px !important;
    gap: 26px !important;
    align-items: start;
}
body.sinapse-ui-v370 .sinapse-course-main {
    min-width: 0;
}
body.sinapse-ui-v370 .sinapse-course-layout > .sinapse-course-main > div:first-child {
    position: relative;
    overflow: hidden;
    padding: clamp(24px, 4vw, 40px) !important;
    border-radius: var(--bio-radius-xl) !important;
    border: 1px solid rgba(242,182,50,.18) !important;
    background: linear-gradient(135deg, #0A0A0A 0%, #161616 68%, #2C250F 100%) !important;
    color: var(--bio-cream) !important;
    box-shadow: 0 30px 80px rgba(10,10,10,.22) !important;
}
body.sinapse-ui-v370 .sinapse-course-layout > .sinapse-course-main > div:first-child h1 {
    color: var(--bio-cream) !important;
    font-size: clamp(34px, 4.2vw, 58px) !important;
    line-height: .98 !important;
}
body.sinapse-ui-v370 .sinapse-course-layout > .sinapse-course-main > div:first-child .sinapse-meta,
body.sinapse-ui-v370 .sinapse-course-layout > .sinapse-course-main > div:first-child p,
body.sinapse-ui-v370 .sinapse-course-layout > .sinapse-course-main > div:first-child div {
    color: rgba(248,248,246,.78);
}
body.sinapse-ui-v370 .sinapse-course-layout > .sinapse-course-main > div:first-child img {
    border-radius: 24px !important;
    box-shadow: 0 18px 60px rgba(0,0,0,.32) !important;
}
body.sinapse-ui-v370 .sinapse-course-main h2 {
    font-family: var(--bio-font-display);
    font-size: 32px !important;
    margin-top: 34px !important;
}
body.sinapse-ui-v370 .sinapse-course-main > div[style*="border:1px solid"] {
    border-radius: 22px !important;
    border: 1px solid var(--bio-border) !important;
    background: rgba(255,255,255,.92) !important;
    box-shadow: var(--bio-shadow-soft) !important;
    overflow: hidden !important;
}
body.sinapse-ui-v370 .sinapse-course-main > div[style*="border:1px solid"] > div:first-child {
    background: linear-gradient(180deg, #fff, var(--bio-ivory)) !important;
    border-bottom: 1px solid var(--bio-border) !important;
}
body.sinapse-ui-v370 .sinapse-course-main a[style*="display:flex"] {
    transition: background .16s ease, transform .16s ease;
}
body.sinapse-ui-v370 .sinapse-course-main a[style*="display:flex"]:hover {
    background: rgba(242,182,50,.08) !important;
}
body.sinapse-ui-v370 .sinapse-course-sidebar,
body.sinapse-ui-v370 .sinapse-course-panel {
    border-radius: var(--bio-radius-lg) !important;
    background: rgba(255,255,255,.88) !important;
    border: 1px solid var(--bio-border) !important;
    box-shadow: var(--bio-shadow-soft) !important;
}

/* Lección individual */
body.sinapse-ui-v370.single-sinapse_lesson { background: var(--bio-cream); }
body.sinapse-ui-v370 .sinapse-lesson-layout {
    min-height: 100vh;
    background: var(--bio-cream) !important;
}
body.sinapse-ui-v370 .sinapse-lesson-sidebar {
    background: linear-gradient(180deg, #0A0A0A, #171717) !important;
    border-right: 1px solid rgba(242,182,50,.20) !important;
    color: var(--bio-cream) !important;
}
body.sinapse-ui-v370 .sinapse-sidebar-header,
body.sinapse-ui-v370 .sinapse-sidebar-course {
    border-bottom-color: rgba(255,255,255,.10) !important;
}
body.sinapse-ui-v370 .sinapse-sidebar-back,
body.sinapse-ui-v370 .sinapse-sidebar-progress span,
body.sinapse-ui-v370 .sinapse-mod-title,
body.sinapse-ui-v370 .sinapse-mod-count,
body.sinapse-ui-v370 .sinapse-mod-arrow,
body.sinapse-ui-v370 .sinapse-lesson-dur {
    color: rgba(248,248,246,.60) !important;
}
body.sinapse-ui-v370 .sinapse-sidebar-course strong { color: var(--bio-cream) !important; }
body.sinapse-ui-v370 .sinapse-sidebar-mod-header:hover { background: rgba(255,255,255,.06) !important; }
body.sinapse-ui-v370 .sinapse-sidebar-lesson {
    color: rgba(248,248,246,.76) !important;
    border-left-color: transparent !important;
    border-radius: 0 999px 999px 0;
    margin-right: 10px;
}
body.sinapse-ui-v370 .sinapse-sidebar-lesson:hover { background: rgba(242,182,50,.10) !important; }
body.sinapse-ui-v370 .sinapse-lesson-current {
    background: rgba(242,182,50,.16) !important;
    border-left-color: var(--bio-gold) !important;
    color: var(--bio-gold) !important;
}
body.sinapse-ui-v370 .sinapse-lesson-done { color: rgba(248,248,246,.42) !important; }
body.sinapse-ui-v370 .sinapse-sidebar-toggle {
    border-radius: 999px !important;
    border-color: var(--bio-border) !important;
    background: #fff !important;
    box-shadow: var(--bio-shadow-soft);
    font-weight: 800;
}
body.sinapse-ui-v370 .sinapse-lesson-main { padding: clamp(22px, 4vw, 44px) !important; }
body.sinapse-ui-v370 .sinapse-lesson-shell { grid-template-columns: minmax(0, 900px) 250px !important; gap: 28px !important; }
body.sinapse-ui-v370 .sinapse-lesson-topbar,
body.sinapse-ui-v370 .sinapse-lesson-content,
body.sinapse-ui-v370 .sinapse-video-wrap,
body.sinapse-ui-v370 .sinapse-video-interactions,
body.sinapse-ui-v370 .sinapse-notes-section,
body.sinapse-ui-v370 .sinapse-pdf-box,
body.sinapse-ui-v370 .sinapse-quiz-box,
body.sinapse-ui-v370 .sinapse-lesson-forum,
body.sinapse-ui-v370 .sinapse-preview-notice,
body.sinapse-ui-v370 .sinapse-preview-cta {
    background: rgba(255,255,255,.90) !important;
    border: 1px solid var(--bio-border) !important;
    border-radius: var(--bio-radius-lg) !important;
    box-shadow: var(--bio-shadow-soft) !important;
}
body.sinapse-ui-v370 .sinapse-lesson-topbar { padding: 14px 16px !important; }
body.sinapse-ui-v370 .sinapse-lesson-heading {
    font-family: var(--bio-font-display) !important;
    font-size: clamp(32px, 4vw, 54px) !important;
    line-height: 1 !important;
    margin: 22px 0 !important;
}
body.sinapse-ui-v370 .sinapse-video-wrap {
    overflow: hidden;
    padding: 8px;
    background: #0A0A0A !important;
}
body.sinapse-ui-v370 .sinapse-video-responsive,
body.sinapse-ui-v370 .sinapse-video-wrap video {
    border-radius: 18px !important;
    overflow: hidden;
}
body.sinapse-ui-v370 .sinapse-lesson-content {
    padding: clamp(20px, 3vw, 32px) !important;
    font-size: 16px !important;
    line-height: 1.82 !important;
}
body.sinapse-ui-v370 .sinapse-lesson-content :is(p, li) { color: #2b2925; }
body.sinapse-ui-v370 .sinapse-pdf-box,
body.sinapse-ui-v370 .sinapse-quiz-box,
body.sinapse-ui-v370 .sinapse-lesson-forum,
body.sinapse-ui-v370 .sinapse-notes-section { padding: 22px !important; }
body.sinapse-ui-v370 .sinapse-notes-toggle {
    border-radius: 16px !important;
    background: var(--bio-ivory) !important;
    font-weight: 900 !important;
}
body.sinapse-ui-v370 .sinapse-lesson-nav {
    border-top: 0 !important;
    padding-top: 10px !important;
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 12px !important;
}
body.sinapse-ui-v370 .sinapse-focus-card {
    border-radius: var(--bio-radius-lg) !important;
    border: 1px solid var(--bio-border) !important;
    background: rgba(255,255,255,.9) !important;
    box-shadow: var(--bio-shadow-soft) !important;
}
body.sinapse-ui-v370 .sinapse-focus-link-community {
    background: linear-gradient(135deg, var(--bio-black), #2B2412) !important;
}

/* Comunidad */
body.sinapse-ui-v370 .sinapse-community-hero,
body.sinapse-ui-v370 .sinapse-community-card,
body.sinapse-ui-v370 .sinapse-community-panel,
body.sinapse-ui-v370 .sinapse-post-form {
    border-radius: var(--bio-radius-xl) !important;
    background: rgba(255,255,255,.90) !important;
    border: 1px solid var(--bio-border) !important;
    box-shadow: var(--bio-shadow-soft) !important;
}
body.sinapse-ui-v370 .sinapse-post-form textarea {
    min-height: 110px;
    padding: 14px !important;
    background: var(--bio-ivory) !important;
    border-radius: 18px !important;
}
body.sinapse-ui-v370 .sinapse-post-actions { border-top-color: var(--bio-border) !important; }
body.sinapse-ui-v370 .sinapse-action-btn { border-radius: 999px; font-weight: 800; }
body.sinapse-ui-v370 .sinapse-action-btn:hover { background: rgba(242,182,50,.12) !important; color: #8A5A00 !important; }

/* Perfil / auth / certificados / notificaciones */
body.sinapse-ui-v370 .sinapse-profile-header {
    align-items: center !important;
    background: linear-gradient(135deg, #0A0A0A, #211E15) !important;
    color: var(--bio-cream) !important;
    border-color: rgba(242,182,50,.18) !important;
}
body.sinapse-ui-v370 .sinapse-profile-header h2,
body.sinapse-ui-v370 .sinapse-profile-header strong { color: var(--bio-cream) !important; }
body.sinapse-ui-v370 .sinapse-profile-stats div { color: rgba(248,248,246,.68) !important; }
body.sinapse-ui-v370 .sinapse-profile-stats strong { color: var(--bio-gold) !important; }
body.sinapse-ui-v370 .sinapse-avatar,
body.sinapse-ui-v370 .sinapse-avatar-sm,
body.sinapse-ui-v370 .sinapse-avatar-lg,
body.sinapse-ui-v370 .sinapse-focus-avatar {
    object-fit: cover;
    border: 2px solid rgba(242,182,50,.34);
    box-shadow: 0 10px 24px rgba(10,10,10,.12);
}
body.sinapse-ui-v370 .sinapse-auth-form,
body.sinapse-ui-v370 .sinapse-register-form {
    max-width: 520px !important;
    padding: clamp(26px, 4vw, 42px) !important;
    margin-top: 42px !important;
}
body.sinapse-ui-v370 .sinapse-auth-form h2,
body.sinapse-ui-v370 .sinapse-register-form h2 {
    font-family: var(--bio-font-display);
    font-size: clamp(30px, 4vw, 46px);
}
body.sinapse-ui-v370 .sinapse-certificate-inner { border-color: var(--bio-gold) !important; }
body.sinapse-ui-v370 .sinapse-certificate-card h1,
body.sinapse-ui-v370 .sinapse-certificate-card h2,
body.sinapse-ui-v370 .sinapse-certificate-card h3 { font-family: var(--bio-font-display); }
body.sinapse-ui-v370 .sinapse-notif-bell { background: var(--bio-black) !important; border: 1px solid rgba(242,182,50,.25); }
body.sinapse-ui-v370 .sinapse-notif-panel { border-radius: 22px !important; border-color: var(--bio-border) !important; box-shadow: var(--bio-shadow) !important; }
body.sinapse-ui-v370 .sinapse-notif-item.sinapse-unread { background: rgba(242,182,50,.10) !important; }

/* Estados */
body.sinapse-ui-v370 .sinapse-empty,
body.sinapse-ui-v370 .sinapse-login-prompt,
body.sinapse-ui-v370 .sinapse-empty-text {
    border-radius: var(--bio-radius-xl);
    background: rgba(255,255,255,.78);
    border: 1px solid var(--bio-border);
    box-shadow: var(--bio-shadow-soft);
    color: var(--bio-muted) !important;
}
body.sinapse-ui-v370 .sinapse-error {
    border-radius: 16px !important;
    border: 1px solid rgba(220,38,38,.18);
}
body.sinapse-ui-v370 .sinapse-tier-badge {
    padding: 5px 11px !important;
    border-radius: 999px !important;
    letter-spacing: .08em !important;
}
body.sinapse-ui-v370 .sinapse-tier-premium { background: rgba(242,182,50,.16) !important; color: #8A5A00 !important; }
body.sinapse-ui-v370 .sinapse-tier-basic { background: rgba(10,10,10,.08) !important; color: var(--bio-black) !important; }
body.sinapse-ui-v370 .sinapse-tier-free { background: rgba(110,106,99,.12) !important; color: var(--bio-muted) !important; }

/* Microinteracciones */
body.sinapse-ui-v370 .sinapse-ui-toast {
    position: fixed;
    left: 50%;
    bottom: 92px;
    transform: translateX(-50%) translateY(20px);
    opacity: 0;
    pointer-events: none;
    z-index: 100000;
    padding: 12px 16px;
    border-radius: 999px;
    background: rgba(10,10,10,.92);
    color: var(--bio-cream);
    border: 1px solid rgba(242,182,50,.22);
    box-shadow: 0 18px 50px rgba(0,0,0,.28);
    font-weight: 800;
    font-size: 13px;
    transition: opacity .18s ease, transform .18s ease;
}
body.sinapse-ui-v370 .sinapse-ui-toast.is-visible {
    opacity: 1;
    transform: translateX(-50%) translateY(0);
}

/* Responsive */
@media (max-width: 1020px) {
    body.sinapse-ui-v370 .sinapse-dashboard-hub-card,
    body.sinapse-ui-v370 .sinapse-course-layout,
    body.sinapse-ui-v370 .sinapse-live-layout {
        grid-template-columns: 1fr !important;
    }
    body.sinapse-ui-v370 .sinapse-lesson-shell { grid-template-columns: 1fr !important; }
    body.sinapse-ui-v370 .sinapse-focus-panel { position: static !important; }
}
@media (max-width: 768px) {
    body.sinapse-ui-v370 .sinapse-wrap { width: min(100% - 24px, 1180px); padding-top: 20px; }
    body.sinapse-ui-v370 .sinapse-dashboard-hub-card { padding: 26px 22px !important; border-radius: 26px !important; }
    body.sinapse-ui-v370 .sinapse-dashboard-hub-aside { grid-template-columns: repeat(3, 1fr); gap: 8px; }
    body.sinapse-ui-v370 .sinapse-dashboard-mini-stat { padding: 12px 10px; border-radius: 16px; }
    body.sinapse-ui-v370 .sinapse-dashboard-mini-stat strong { font-size: 24px; }
    body.sinapse-ui-v370 .sinapse-dashboard-mini-stat span { font-size: 10px; }
    body.sinapse-ui-v370 .sinapse-courses-grid { grid-template-columns: 1fr !important; }
    body.sinapse-ui-v370 .sinapse-lesson-main { padding: 18px 14px 98px !important; }
    body.sinapse-ui-v370 .sinapse-lesson-nav { grid-template-columns: 1fr !important; }
    body.sinapse-ui-v370 .sinapse-lesson-nav .sinapse-btn { width: 100%; justify-content: center; }
    body.sinapse-ui-v370 .sinapse-focus-card { display: block !important; }
    body.sinapse-ui-v370 .sinapse-profile-header { text-align: center; justify-content: center; }
    body.sinapse-ui-v370 .sinapse-profile-stats { justify-content: center; }
    body.sinapse-ui-v370 .sinapse-notif-bell { bottom: 84px !important; right: 14px !important; }
}
@media (max-width: 520px) {
    body.sinapse-ui-v370 .sinapse-dashboard-hub-actions .sinapse-btn,
    body.sinapse-ui-v370 .sinapse-preview-actions .sinapse-btn,
    body.sinapse-ui-v370 .sinapse-dashboard-live-actions .sinapse-btn,
    body.sinapse-ui-v370 .sinapse-live-actions .sinapse-btn { width: 100%; justify-content: center; }
    body.sinapse-ui-v370 .sinapse-dashboard-hub-aside { grid-template-columns: 1fr; }
    body.sinapse-ui-v370 .sinapse-comment-form { flex-direction: column; }
}

/* Sinapse LMS v3.7.1 — Premium polish + stability */
body.sinapse-ui-v371 {
    --bio-safe-bottom: 92px;
}
body.sinapse-ui-v371 .sinapse-user-quickbar {
    max-width: min(96vw, 980px);
}
body.sinapse-ui-v371 .sinapse-user-quickbar a.is-active {
    background: rgba(242,182,50,.20) !important;
    color: #F2B632 !important;
}
body.sinapse-ui-v371 .sinapse-dashboard-hub-card,
body.sinapse-ui-v371 .sinapse-course-hero,
body.sinapse-ui-v371 .sinapse-lesson-header,
body.sinapse-ui-v371 .sinapse-community-hero,
body.sinapse-ui-v371 .sinapse-live-hero {
    isolation: isolate;
}
body.sinapse-ui-v371 .sinapse-section-title {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 26px !important;
    margin-bottom: 14px !important;
    letter-spacing: -.03em;
}
body.sinapse-ui-v371 .sinapse-section-title::after {
    content: "";
    flex: 1;
    height: 1px;
    background: linear-gradient(90deg, rgba(242,182,50,.34), rgba(10,10,10,0));
}
body.sinapse-ui-v371 .sinapse-course-card .sinapse-btn,
body.sinapse-ui-v371 .sinapse-dashboard-live-card .sinapse-btn,
body.sinapse-ui-v371 .sinapse-live-card .sinapse-btn {
    margin-top: 12px;
}
body.sinapse-ui-v371 .sinapse-progress-bar {
    height: 9px !important;
    border-radius: 999px !important;
    background: rgba(10,10,10,.07) !important;
    overflow: hidden !important;
}
body.sinapse-ui-v371 .sinapse-progress-fill {
    border-radius: 999px !important;
    background: linear-gradient(90deg, #F2B632, #F8D77A) !important;
}
body.sinapse-ui-v371 .sinapse-empty,
body.sinapse-ui-v371 .sinapse-login-prompt {
    padding: clamp(24px, 4vw, 42px) !important;
    text-align: center;
}
body.sinapse-ui-v371 .sinapse-empty p,
body.sinapse-ui-v371 .sinapse-login-prompt p {
    max-width: 58ch;
    margin-left: auto;
    margin-right: auto;
}
body.sinapse-ui-v371 .sinapse-post,
body.sinapse-ui-v371 .sinapse-comment {
    overflow-wrap: anywhere;
}
body.sinapse-ui-v371 .sinapse-post img,
body.sinapse-ui-v371 .sinapse-lesson-content img,
body.sinapse-ui-v371 .sinapse-course-content img {
    max-width: 100%;
    height: auto;
    border-radius: 18px;
}
body.sinapse-ui-v371 .sinapse-lesson-content iframe,
body.sinapse-ui-v371 .sinapse-video-wrap iframe,
body.sinapse-ui-v371 iframe[src*="youtube"],
body.sinapse-ui-v371 iframe[src*="vimeo"] {
    max-width: 100%;
    border-radius: 18px;
}
body.sinapse-ui-v371 .sinapse-lesson-content table,
body.sinapse-ui-v371 .sinapse-course-content table {
    display: block;
    width: 100%;
    overflow-x: auto;
    border-radius: 14px;
}
body.sinapse-ui-v371 .sinapse-btn:focus-visible,
body.sinapse-ui-v371 .sinapse-user-quickbar a:focus-visible,
body.sinapse-ui-v371 input:focus-visible,
body.sinapse-ui-v371 textarea:focus-visible,
body.sinapse-ui-v371 select:focus-visible {
    outline: 3px solid rgba(242,182,50,.45) !important;
    outline-offset: 3px !important;
}
body.sinapse-ui-v371 .sinapse-form-row,
body.sinapse-ui-v371 .sinapse-field {
    margin-bottom: 14px;
}
body.sinapse-ui-v371 .sinapse-notif-panel,
body.sinapse-ui-v371 .sinapse-dropdown,
body.sinapse-ui-v371 .sinapse-modal {
    z-index: 100001 !important;
}
@media (max-width: 860px) {
    body.sinapse-ui-v371.sinapse-user-logged-in { padding-bottom: var(--bio-safe-bottom); }
    body.sinapse-ui-v371 .sinapse-user-quickbar {
        max-width: none;
        box-shadow: 0 14px 40px rgba(0,0,0,.24) !important;
    }
    body.sinapse-ui-v371 .sinapse-user-quickbar a span { display: block; }
    body.sinapse-ui-v371 .sinapse-user-quickbar a[data-sinapse-nav="logout"] { display: none; }
}
@media (max-width: 480px) {
    body.sinapse-ui-v371 .sinapse-wrap { width: min(100% - 18px, 1180px); }
    body.sinapse-ui-v371 .sinapse-dashboard-hub-title,
    body.sinapse-ui-v371 .sinapse-course-hero h1,
    body.sinapse-ui-v371 .sinapse-lesson-header h1 { font-size: clamp(30px, 9vw, 40px) !important; }
    body.sinapse-ui-v371 .sinapse-user-quickbar a { padding-inline: 8px !important; }
}

/* Sinapse v4.0.1 — Front Contrast & Layout Hotfix
   Corrige textos oscuros sobre fondos dark y evita que la barra inferior tape contenido. */
body.sinapse-ui-v401 {
    --bio-safe-bottom: 118px;
}
body.sinapse-ui-v401.sinapse-user-logged-in {
    padding-bottom: var(--bio-safe-bottom) !important;
}
body.sinapse-ui-v401 .sinapse-wrap,
body.sinapse-ui-v401 .sinapse-dashboard,
body.sinapse-ui-v401 .sinapse-course-layout,
body.sinapse-ui-v401 .sinapse-lesson-main,
body.sinapse-ui-v401 .sinapse-community,
body.sinapse-ui-v401 .sinapse-profile,
body.sinapse-ui-v401 .sinapse-live-layout {
    padding-bottom: max(120px, var(--bio-safe-bottom)) !important;
}
body.sinapse-ui-v401 .sinapse-user-quickbar {
    bottom: 14px !important;
    max-width: min(94vw, 980px) !important;
}

/* Superficies oscuras: blindaje contra h1/h2 globales del tema. */
body.sinapse-ui-v401 .sinapse-dashboard-hub-card,
body.sinapse-ui-v401 .sinapse-course-layout > .sinapse-course-main > div:first-child,
body.sinapse-ui-v401 .sinapse-profile-header,
body.sinapse-ui-v401 .sinapse-lesson-sidebar,
body.sinapse-ui-v401 .sinapse-video-wrap,
body.sinapse-ui-v401 .sinapse-focus-link-community,
body.sinapse-ui-v401 .sinapse-live-hero {
    color: #F8F8F6 !important;
}
body.sinapse-ui-v401 .sinapse-dashboard-hub-card :is(h1,h2,h3,h4,h5,h6),
body.sinapse-ui-v401 .sinapse-course-layout > .sinapse-course-main > div:first-child :is(h1,h2,h3,h4,h5,h6),
body.sinapse-ui-v401 .sinapse-profile-header :is(h1,h2,h3,h4,h5,h6),
body.sinapse-ui-v401 .sinapse-lesson-sidebar :is(h1,h2,h3,h4,h5,h6,strong),
body.sinapse-ui-v401 .sinapse-live-hero :is(h1,h2,h3,h4,h5,h6) {
    color: #F8F8F6 !important;
    opacity: 1 !important;
    text-shadow: 0 2px 18px rgba(0,0,0,.30) !important;
}
body.sinapse-ui-v401 .sinapse-dashboard-hub-card :is(p,li,span:not(.sinapse-tier-badge)),
body.sinapse-ui-v401 .sinapse-course-layout > .sinapse-course-main > div:first-child :is(p,li),
body.sinapse-ui-v401 .sinapse-profile-header :is(p,span,div),
body.sinapse-ui-v401 .sinapse-live-hero :is(p,span,div) {
    color: rgba(248,248,246,.82) !important;
    opacity: 1 !important;
}

/* Contenido descriptivo del curso dentro del hero oscuro. */
body.sinapse-ui-v401 .sinapse-course-layout > .sinapse-course-main > div:first-child > div[style*="font-size:15px"] {
    color: rgba(248,248,246,.82) !important;
}
body.sinapse-ui-v401 .sinapse-course-layout > .sinapse-course-main > div:first-child > div[style*="font-size:15px"] :is(h1,h2,h3,h4,h5,h6,strong,b) {
    color: #F8F8F6 !important;
    opacity: 1 !important;
}
body.sinapse-ui-v401 .sinapse-course-layout > .sinapse-course-main > div:first-child > div[style*="font-size:15px"] :is(p,li,span,em,a) {
    color: rgba(248,248,246,.84) !important;
    opacity: 1 !important;
}
body.sinapse-ui-v401 .sinapse-course-layout > .sinapse-course-main > div:first-child a {
    color: #F8D77A !important;
}
body.sinapse-ui-v401 .sinapse-course-layout > .sinapse-course-main > div:first-child .sinapse-tier-badge {
    color: #0A0A0A !important;
}

/* Superficies claras: asegura lectura normal después de blindar dark. */
body.sinapse-ui-v401 .sinapse-course-main > div[style*="border:1px solid"],
body.sinapse-ui-v401 .sinapse-course-main > div[style*="border:1px solid"] *,
body.sinapse-ui-v401 .sinapse-course-panel-card,
body.sinapse-ui-v401 .sinapse-course-panel-card *,
body.sinapse-ui-v401 .sinapse-lesson-content,
body.sinapse-ui-v401 .sinapse-lesson-content *,
body.sinapse-ui-v401 .sinapse-post,
body.sinapse-ui-v401 .sinapse-post *,
body.sinapse-ui-v401 .sinapse-empty,
body.sinapse-ui-v401 .sinapse-empty * {
    text-shadow: none !important;
}
body.sinapse-ui-v401 .sinapse-course-main > div[style*="border:1px solid"] :is(h1,h2,h3,h4,h5,h6,strong),
body.sinapse-ui-v401 .sinapse-course-panel-card :is(h1,h2,h3,h4,h5,h6,strong),
body.sinapse-ui-v401 .sinapse-empty strong {
    color: #171717 !important;
}
body.sinapse-ui-v401 .sinapse-course-main > div[style*="border:1px solid"] :is(p,li,span:not(.sinapse-tier-badge)),
body.sinapse-ui-v401 .sinapse-empty span,
body.sinapse-ui-v401 .sinapse-empty p {
    color: #6E6A63 !important;
}

@media (max-width: 860px) {
    body.sinapse-ui-v401 { --bio-safe-bottom: 128px; }
    body.sinapse-ui-v401 .sinapse-user-quickbar {
        bottom: 10px !important;
        left: 10px !important;
        right: 10px !important;
        max-width: none !important;
    }
}
@media (max-width: 520px) {
    body.sinapse-ui-v401 .sinapse-user-quickbar a { font-size: 10px !important; padding-inline: 7px !important; }
}


/* Sinapse LMS v4.0.14 — Top navigation + contrast hardening
   Mueve la barra de usuario arriba y corrige textos invisibles en tarjetas claras dentro de superficies oscuras. */
body.sinapse-ui-v414 {
    --bio-safe-top: 82px;
    --bio-safe-bottom: 0px;
}
body.sinapse-ui-v414.sinapse-user-logged-in {
    padding-top: var(--bio-safe-top) !important;
    padding-bottom: 0 !important;
}
body.admin-bar.sinapse-ui-v414.sinapse-user-logged-in {
    --bio-safe-top: 104px;
}
body.sinapse-ui-v414 .sinapse-wrap,
body.sinapse-ui-v414 .sinapse-dashboard,
body.sinapse-ui-v414 .sinapse-course-layout,
body.sinapse-ui-v414 .sinapse-lesson-main,
body.sinapse-ui-v414 .sinapse-community,
body.sinapse-ui-v414 .sinapse-profile,
body.sinapse-ui-v414 .sinapse-live-layout,
body.sinapse-ui-v414 .sinapse-prof-wrap,
body.sinapse-ui-v414 .sinapse-prof-single {
    padding-bottom: 32px !important;
}
body.sinapse-ui-v414 .sinapse-user-quickbar {
    top: 14px !important;
    bottom: auto !important;
    max-width: min(94vw, 980px) !important;
    box-shadow: 0 18px 52px rgba(0,0,0,.24) !important;
}
body.admin-bar.sinapse-ui-v414 .sinapse-user-quickbar {
    top: 46px !important;
}

/* Perfil: fondo oscuro con textos legibles y tarjetas internas claras con texto oscuro. */
body.sinapse-ui-v414 .sinapse-profile-header {
    background: radial-gradient(circle at 84% 12%, rgba(242,182,50,.16), transparent 34%), linear-gradient(135deg, #0A0A0A, #17140D) !important;
    border-color: rgba(242,182,50,.20) !important;
    color: #F8F8F6 !important;
}
body.sinapse-ui-v414 .sinapse-profile-header :is(h1,h2,h3,h4,h5,h6) {
    color: #F8F8F6 !important;
    text-shadow: 0 2px 18px rgba(0,0,0,.32) !important;
}
body.sinapse-ui-v414 .sinapse-profile-header .sinapse-profile-headline,
body.sinapse-ui-v414 .sinapse-profile-header .sinapse-profile-bio,
body.sinapse-ui-v414 .sinapse-profile-header .sinapse-meta,
body.sinapse-ui-v414 .sinapse-profile-header .sinapse-points {
    color: rgba(248,248,246,.88) !important;
    opacity: 1 !important;
}
body.sinapse-ui-v414 .sinapse-profile-header .sinapse-tier-badge {
    background: rgba(242,182,50,.18) !important;
    border: 1px solid rgba(242,182,50,.28) !important;
    color: #F8D77A !important;
}
body.sinapse-ui-v414 .sinapse-profile-header .sinapse-profile-chip,
body.sinapse-ui-v414 .sinapse-profile-header .sinapse-profile-chip *,
body.sinapse-ui-v414 .sinapse-profile-header .sinapse-profile-chip:visited,
body.sinapse-ui-v414 .sinapse-profile-header .sinapse-btn,
body.sinapse-ui-v414 .sinapse-profile-header .sinapse-btn *,
body.sinapse-ui-v414 .sinapse-profile-header .sinapse-btn:visited {
    color: #0A0A0A !important;
    text-shadow: none !important;
    opacity: 1 !important;
}
body.sinapse-ui-v414 .sinapse-profile-header .sinapse-profile-chip,
body.sinapse-ui-v414 .sinapse-profile-header .sinapse-btn {
    background: #F8F8F6 !important;
    border-color: rgba(255,255,255,.72) !important;
    box-shadow: 0 12px 30px rgba(0,0,0,.16) !important;
    font-weight: 850 !important;
}
body.sinapse-ui-v414 .sinapse-profile-header .sinapse-btn-outline {
    background: rgba(248,248,246,.86) !important;
}
body.sinapse-ui-v414 .sinapse-profile-header .sinapse-profile-stats > div,
body.sinapse-ui-v414 .sinapse-profile-header .sinapse-profile-stats > div *,
body.sinapse-ui-v414 .sinapse-profile-header .sinapse-profile-stats > div :is(span,p,strong,br) {
    color: #171717 !important;
    text-shadow: none !important;
    opacity: 1 !important;
}
body.sinapse-ui-v414 .sinapse-profile-header .sinapse-profile-stats > div {
    background: #F8F8F6 !important;
    border-color: rgba(255,255,255,.72) !important;
    box-shadow: 0 14px 32px rgba(0,0,0,.14) !important;
}
body.sinapse-ui-v414 .sinapse-profile-header .sinapse-profile-stats strong {
    color: #D9A928 !important;
}
body.sinapse-ui-v414 .sinapse-profile-edit-card,
body.sinapse-ui-v414 .sinapse-profile-edit-card * {
    text-shadow: none !important;
}
body.sinapse-ui-v414 .sinapse-profile-edit-card :is(h1,h2,h3,h4,h5,h6,label,strong) {
    color: #171717 !important;
}
body.sinapse-ui-v414 .sinapse-profile-edit-card :is(p,span,small,.sinapse-meta) {
    color: #6E6A63 !important;
}
body.sinapse-ui-v414 .sinapse-profile-edit-card :is(input,textarea,select) {
    color: #171717 !important;
    background: #FFFFFF !important;
}
body.sinapse-ui-v414 .sinapse-profile-edit-card :is(input,textarea,select)::placeholder {
    color: #8A8580 !important;
    opacity: 1 !important;
}

/* Blindaje general para tarjetas claras que vivan dentro de bloques dark. */
body.sinapse-ui-v414 :is(.sinapse-profile-stats,.sinapse-course-panel-card,.sinapse-empty,.sinapse-badge-card) :is(div,p,span,small,li) {
    opacity: 1 !important;
}
body.sinapse-ui-v414 :is(.sinapse-course-panel-card,.sinapse-empty,.sinapse-badge-card) :is(h1,h2,h3,h4,h5,h6,strong) {
    color: #171717 !important;
    text-shadow: none !important;
}
body.sinapse-ui-v414 :is(.sinapse-course-panel-card,.sinapse-empty,.sinapse-badge-card) :is(p,span,small,li) {
    color: #6E6A63 !important;
    text-shadow: none !important;
}

@media (max-width: 860px) {
    body.sinapse-ui-v414 { --bio-safe-top: 82px; }
    body.admin-bar.sinapse-ui-v414 { --bio-safe-top: 104px; }
    body.sinapse-ui-v414 .sinapse-user-quickbar {
        top: 10px !important;
        bottom: auto !important;
        left: 10px !important;
        right: 10px !important;
        max-width: none !important;
    }
    body.admin-bar.sinapse-ui-v414 .sinapse-user-quickbar { top: 56px !important; }
}
@media (max-width: 520px) {
    body.sinapse-ui-v414 .sinapse-user-quickbar a { font-size: 10px !important; padding-inline: 7px !important; }
    body.sinapse-ui-v414 .sinapse-profile-header { padding: 22px !important; }
    body.sinapse-ui-v414 .sinapse-profile-stats { grid-template-columns: repeat(2, minmax(0,1fr)) !important; }
}

/* Sinapse LMS v4.0.15 — Campus global header/footer + logo sizing
   Crea una cabecera/pie común para las páginas del plugin y evita logos enormes del tema. */
body.sinapse-ui-v415 {
    --bio-campus-header-h: 78px;
    --bio-campus-top: 14px;
    --bio-campus-safe-top: 108px;
    --bio-campus-max: min(1180px, calc(100vw - 32px));
}
body.admin-bar.sinapse-ui-v415 {
    --bio-campus-top: 46px;
    --bio-campus-safe-top: 138px;
}
body.sinapse-ui-v415.sinapse-user-logged-in,
body.sinapse-ui-v415.sinapse-campus-context {
    padding-top: var(--bio-campus-safe-top) !important;
    padding-bottom: 0 !important;
}
body.sinapse-ui-v415 .sinapse-user-quickbar {
    display: none !important;
}

/* Oculta cabecera/pie del tema en páginas del campus para que el plugin tenga una identidad única. */
body.sinapse-ui-v415.sinapse-campus-context :where(
    header.site-header,
    .site-header,
    .elementor-location-header,
    .site-branding,
    .wp-block-site-logo,
    .custom-logo-link,
    .custom-logo,
    footer.site-footer,
    .site-footer,
    .elementor-location-footer
) {
    display: none !important;
}
body.sinapse-ui-v415.sinapse-campus-context .wp-site-blocks > header,
body.sinapse-ui-v415.sinapse-campus-context .wp-site-blocks > footer {
    display: none !important;
}

body.sinapse-ui-v415 .sinapse-campus-header,
body.sinapse-ui-v415 .sinapse-campus-header * ,
body.sinapse-ui-v415 .sinapse-campus-footer,
body.sinapse-ui-v415 .sinapse-campus-footer * {
    box-sizing: border-box !important;
}
body.sinapse-ui-v415 .sinapse-campus-header {
    position: fixed;
    top: var(--bio-campus-top);
    left: 0;
    right: 0;
    z-index: 99998;
    pointer-events: none;
    padding: 0 16px;
    font-family: Manrope, Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
body.sinapse-ui-v415 .sinapse-campus-header-inner {
    width: var(--bio-campus-max);
    min-height: var(--bio-campus-header-h);
    margin: 0 auto;
    display: grid;
    grid-template-columns: minmax(190px, .7fr) auto minmax(86px, .25fr);
    gap: 14px;
    align-items: center;
    padding: 10px 12px;
    border-radius: 999px;
    background: rgba(10,10,10,.88);
    border: 1px solid rgba(242,182,50,.24);
    box-shadow: 0 22px 70px rgba(0,0,0,.24);
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
    pointer-events: auto;
}
body.sinapse-ui-v415 .sinapse-campus-brand {
    display: inline-flex;
    min-width: 0;
    align-items: center;
    gap: 10px;
    color: #F8F8F6 !important;
    text-decoration: none !important;
}
body.sinapse-ui-v415 .sinapse-campus-logo {
    width: 46px !important;
    height: 46px !important;
    min-width: 46px !important;
    max-width: 46px !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    overflow: hidden;
    background: #F8F8F6;
    border: 1px solid rgba(242,182,50,.52);
    box-shadow: 0 10px 28px rgba(0,0,0,.20);
    color: #0A0A0A;
    font-size: 11px;
    font-weight: 950;
    letter-spacing: -.04em;
}
body.sinapse-ui-v415 .sinapse-campus-logo img {
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: contain !important;
    display: block !important;
    padding: 5px !important;
}
body.sinapse-ui-v415 .sinapse-campus-brand-copy {
    min-width: 0;
    display: grid;
    gap: 1px;
    line-height: 1.05;
}
body.sinapse-ui-v415 .sinapse-campus-brand-copy strong {
    color: #F8F8F6 !important;
    font-size: 13px;
    font-weight: 900;
    letter-spacing: -.02em;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
body.sinapse-ui-v415 .sinapse-campus-brand-copy small {
    color: rgba(248,248,246,.62) !important;
    font-size: 10px;
    font-weight: 750;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
body.sinapse-ui-v415 .sinapse-campus-nav {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    min-width: 0;
}
body.sinapse-ui-v415 .sinapse-campus-nav a,
body.sinapse-ui-v415 .sinapse-campus-action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    padding: 9px 13px;
    border-radius: 999px;
    color: #F8F8F6 !important;
    text-decoration: none !important;
    font-size: 12px;
    font-weight: 850;
    line-height: 1;
    white-space: nowrap;
    letter-spacing: -.01em;
    border: 1px solid transparent;
    transition: background .18s ease, color .18s ease, transform .18s ease, border-color .18s ease;
}
body.sinapse-ui-v415 .sinapse-campus-nav a:hover,
body.sinapse-ui-v415 .sinapse-campus-nav a.is-active,
body.sinapse-ui-v415 .sinapse-campus-action:hover {
    background: rgba(242,182,50,.15) !important;
    border-color: rgba(242,182,50,.18) !important;
    color: #F2B632 !important;
    transform: translateY(-1px);
}
body.sinapse-ui-v415 .sinapse-campus-actions {
    display: flex;
    justify-content: flex-end;
    align-items: center;
}
body.sinapse-ui-v415 .sinapse-campus-action {
    background: #F2B632 !important;
    color: #0A0A0A !important;
    border-color: #F2B632 !important;
    box-shadow: 0 10px 28px rgba(242,182,50,.18);
}
body.sinapse-ui-v415 .sinapse-campus-action:hover {
    background: #F8D77A !important;
    color: #0A0A0A !important;
}

body.sinapse-ui-v415 .sinapse-campus-footer {
    width: min(1180px, calc(100% - 32px));
    margin: 34px auto 28px;
    padding: 0;
    font-family: Manrope, Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
body.sinapse-ui-v415 .sinapse-campus-footer-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 20px 24px;
    border-radius: 28px;
    background: rgba(255,255,255,.72);
    border: 1px solid rgba(10,10,10,.08);
    box-shadow: 0 18px 48px rgba(10,10,10,.07);
}
body.sinapse-ui-v415 .sinapse-campus-footer-brand {
    display: grid;
    gap: 3px;
}
body.sinapse-ui-v415 .sinapse-campus-footer-brand strong {
    color: #171717 !important;
    font-size: 14px;
    font-weight: 900;
}
body.sinapse-ui-v415 .sinapse-campus-footer-brand span,
body.sinapse-ui-v415 .sinapse-campus-footer-links a {
    color: #6E6A63 !important;
    font-size: 12px;
    font-weight: 750;
    text-decoration: none !important;
}
body.sinapse-ui-v415 .sinapse-campus-footer-links {
    display: flex;
    gap: 14px;
    flex-wrap: wrap;
    justify-content: flex-end;
}
body.sinapse-ui-v415 .sinapse-campus-footer-links a:hover {
    color: #0A0A0A !important;
}

@media (max-width: 980px) {
    body.sinapse-ui-v415 {
        --bio-campus-header-h: auto;
        --bio-campus-safe-top: 126px;
    }
    body.admin-bar.sinapse-ui-v415 { --bio-campus-safe-top: 152px; }
    body.sinapse-ui-v415 .sinapse-campus-header-inner {
        grid-template-columns: 1fr auto;
        border-radius: 28px;
        gap: 8px 10px;
        padding: 10px;
    }
    body.sinapse-ui-v415 .sinapse-campus-nav {
        grid-column: 1 / -1;
        justify-content: flex-start;
        overflow-x: auto;
        scrollbar-width: none;
        padding: 2px 0 0;
    }
    body.sinapse-ui-v415 .sinapse-campus-nav::-webkit-scrollbar { display: none; }
    body.sinapse-ui-v415 .sinapse-campus-brand-copy small { display: none; }
}
@media (max-width: 600px) {
    body.sinapse-ui-v415 {
        --bio-campus-top: 8px;
        --bio-campus-safe-top: 130px;
        --bio-campus-max: calc(100vw - 20px);
    }
    body.admin-bar.sinapse-ui-v415 {
        --bio-campus-top: 54px;
        --bio-campus-safe-top: 174px;
    }
    body.sinapse-ui-v415 .sinapse-campus-header { padding: 0 10px; }
    body.sinapse-ui-v415 .sinapse-campus-header-inner { border-radius: 24px; }
    body.sinapse-ui-v415 .sinapse-campus-logo {
        width: 40px !important;
        height: 40px !important;
        min-width: 40px !important;
        max-width: 40px !important;
    }
    body.sinapse-ui-v415 .sinapse-campus-brand-copy strong { font-size: 12px; }
    body.sinapse-ui-v415 .sinapse-campus-nav a,
    body.sinapse-ui-v415 .sinapse-campus-action { font-size: 11px; min-height: 35px; padding: 8px 10px; }
    body.sinapse-ui-v415 .sinapse-campus-footer-inner {
        align-items: flex-start;
        flex-direction: column;
        border-radius: 22px;
        padding: 18px;
    }
    body.sinapse-ui-v415 .sinapse-campus-footer-links { justify-content: flex-start; }
}


/* Sinapse LMS v4.0.16 — Brand logo replacement
   Mantiene ubicaciones y tamaños existentes; solo adapta el contenedor al nuevo logo Ingeniería de la Calma. */
body.sinapse-ui-v416 .sinapse-campus-logo {
    background: #0A0A0A !important;
    border-color: rgba(242,182,50,.58) !important;
    box-shadow: 0 10px 28px rgba(0,0,0,.22), inset 0 0 0 1px rgba(255,255,255,.06) !important;
}
body.sinapse-ui-v416 .sinapse-campus-logo img {
    padding: 4px !important;
}
body.sinapse-ui-v416 .sinapse-dashboard-brand-logo {
    object-fit: contain !important;
}

/* Sinapse LMS v4.0.17 — Ingeniería de la Calma Visual Identity System
   Capa estética global: no altera lógica, roles, builder, checkout ni endpoints. */
body.sinapse-ui-v417 {
    --bio-black: #080706;
    --bio-black-2: #14110D;
    --bio-dark-surface: #1B1710;
    --bio-ivory: #FAF7EF;
    --bio-cream: #F3EDE2;
    --bio-surface: #FFFDF8;
    --bio-gold: #D6A73C;
    --bio-gold-soft: #E8C769;
    --bio-gold-dark: #9B7228;
    --bio-text: #15120E;
    --bio-text-muted: #6F665A;
    --bio-text-soft: #948A7D;
    --bio-border: #E4D9C8;
    --bio-border-dark: rgba(214,167,60,.28);
    --bio-success: #3F6F4E;
    --bio-success-bg: #EDF7EF;
    --bio-warning: #B7791F;
    --bio-warning-bg: #FFF6DA;
    --bio-error: #A94438;
    --bio-error-bg: #FBEDEA;
    --bio-info: #365C63;
    --bio-info-bg: #EAF2F3;
    --bio-campus-header-h: 84px;
    --bio-campus-top: 14px;
    --bio-campus-safe-top: 116px;
    --bio-campus-max: min(1180px, calc(100vw - 32px));
    background: var(--bio-ivory) !important;
}
body.admin-bar.sinapse-ui-v417 {
    --bio-campus-top: 46px;
    --bio-campus-safe-top: 148px;
}
body.sinapse-ui-v417.sinapse-user-logged-in,
body.sinapse-ui-v417.sinapse-campus-context {
    padding-top: var(--bio-campus-safe-top) !important;
}
body.sinapse-ui-v417 .sinapse-wrap,
body.sinapse-ui-v417 .sinapse-dashboard,
body.sinapse-ui-v417 .sinapse-course-layout,
body.sinapse-ui-v417 .sinapse-lesson-layout,
body.sinapse-ui-v417 .sinapse-profile-wrap,
body.sinapse-ui-v417 .sinapse-community-wrap {
    color: var(--bio-text) !important;
}

/* Header común del campus: proporciones cuidadas del logo nuevo. */
body.sinapse-ui-v417 .sinapse-campus-header {
    top: var(--bio-campus-top) !important;
    padding: 0 16px !important;
}
body.sinapse-ui-v417 .sinapse-campus-header-inner {
    width: var(--bio-campus-max) !important;
    min-height: var(--bio-campus-header-h) !important;
    display: grid !important;
    grid-template-columns: minmax(250px,.82fr) auto minmax(86px,.24fr) !important;
    gap: 14px !important;
    align-items: center !important;
    padding: 10px 14px 10px 18px !important;
    border-radius: 999px !important;
    background: linear-gradient(135deg, #181816 0%, #24231F 100%) !important;
    border: 1px solid rgba(214,167,60,.24) !important;
    box-shadow: 0 24px 72px rgba(8,7,6,.24) !important;
    backdrop-filter: blur(18px) !important;
    -webkit-backdrop-filter: blur(18px) !important;
}
body.sinapse-ui-v417 .sinapse-campus-brand {
    gap: 12px !important;
    min-width: 0 !important;
}
body.sinapse-ui-v417 .sinapse-campus-logo {
    width: 58px !important;
    height: 58px !important;
    min-width: 58px !important;
    max-width: 58px !important;
    border-radius: 50% !important;
    background: radial-gradient(circle at 50% 42%, rgba(214,167,60,.10), rgba(8,7,6,.84)) !important;
    border: 1px solid rgba(214,167,60,.62) !important;
    box-shadow: 0 0 0 5px rgba(214,167,60,.06), 0 12px 28px rgba(0,0,0,.24) !important;
    overflow: hidden !important;
}
body.sinapse-ui-v417 .sinapse-campus-logo img {
    width: 52px !important;
    height: 52px !important;
    max-width: 52px !important;
    max-height: 52px !important;
    object-fit: contain !important;
    object-position: center center !important;
    display: block !important;
    padding: 2px !important;
}
body.sinapse-ui-v417 .sinapse-campus-logo span {
    color: var(--bio-gold-soft) !important;
}
body.sinapse-ui-v417 .sinapse-campus-brand-copy {
    line-height: 1.05 !important;
    gap: 2px !important;
}
body.sinapse-ui-v417 .sinapse-campus-brand-copy strong {
    color: #FFFFFF !important;
    font-size: 15px !important;
    font-weight: 950 !important;
    letter-spacing: -.02em !important;
}
body.sinapse-ui-v417 .sinapse-campus-brand-copy small {
    color: rgba(250,247,239,.70) !important;
    font-size: 11px !important;
    font-weight: 800 !important;
}
body.sinapse-ui-v417 .sinapse-campus-nav {
    gap: 6px !important;
}
body.sinapse-ui-v417 .sinapse-campus-nav a,
body.sinapse-ui-v417 .sinapse-campus-action {
    min-height: 40px !important;
    padding: 10px 14px !important;
    border-radius: 999px !important;
    color: rgba(250,247,239,.90) !important;
    font-size: 12px !important;
    font-weight: 900 !important;
    border: 1px solid transparent !important;
}
body.sinapse-ui-v417 .sinapse-campus-nav a:hover,
body.sinapse-ui-v417 .sinapse-campus-nav a.is-active {
    background: rgba(214,167,60,.15) !important;
    border-color: rgba(214,167,60,.22) !important;
    color: var(--bio-gold-soft) !important;
}
body.sinapse-ui-v417 .sinapse-campus-nav a[data-sinapse-nav="academy"] {
    background: rgba(214,167,60,.16) !important;
    border-color: rgba(214,167,60,.22) !important;
    color: var(--bio-gold-soft) !important;
}
body.sinapse-ui-v417 .sinapse-campus-action,
body.sinapse-ui-v417 .sinapse-campus-action-logout {
    background: linear-gradient(135deg,var(--bio-gold),var(--bio-gold-soft)) !important;
    color: var(--bio-black) !important;
    border-color: rgba(214,167,60,.75) !important;
    box-shadow: 0 12px 28px rgba(214,167,60,.18) !important;
}
body.sinapse-ui-v417 .sinapse-campus-action:hover,
body.sinapse-ui-v417 .sinapse-campus-action-logout:hover {
    background: linear-gradient(135deg,var(--bio-gold-soft),var(--bio-gold)) !important;
    color: var(--bio-black) !important;
    transform: translateY(-1px) !important;
}

/* Footer común. */
body.sinapse-ui-v417 .sinapse-campus-footer-inner {
    background: linear-gradient(135deg,#FFFDF8,#F3EDE2) !important;
    border: 1px solid var(--bio-border) !important;
    box-shadow: 0 18px 48px rgba(8,7,6,.07) !important;
}
body.sinapse-ui-v417 .sinapse-campus-footer-brand strong {
    color: var(--bio-text) !important;
}
body.sinapse-ui-v417 .sinapse-campus-footer-brand span,
body.sinapse-ui-v417 .sinapse-campus-footer-links a {
    color: var(--bio-text-muted) !important;
}
body.sinapse-ui-v417 .sinapse-campus-footer-links a:hover {
    color: var(--bio-black) !important;
}

/* Superficies, cards y botones del alumno/comunidad/cursos. */
body.sinapse-ui-v417 .sinapse-btn-primary,
body.sinapse-ui-v417 a.sinapse-btn-primary,
body.sinapse-ui-v417 button.sinapse-btn-primary {
    background: linear-gradient(135deg,var(--bio-gold-dark),var(--bio-gold) 58%,var(--bio-gold-soft)) !important;
    border-color: rgba(214,167,60,.75) !important;
    color: var(--bio-black) !important;
    box-shadow: 0 14px 32px rgba(123,88,31,.18) !important;
}
body.sinapse-ui-v417 .sinapse-btn-primary:hover,
body.sinapse-ui-v417 a.sinapse-btn-primary:hover,
body.sinapse-ui-v417 button.sinapse-btn-primary:hover {
    background: linear-gradient(135deg,var(--bio-gold),var(--bio-gold-soft)) !important;
    color: var(--bio-black) !important;
}
body.sinapse-ui-v417 .sinapse-btn-outline,
body.sinapse-ui-v417 .sinapse-btn:not(.sinapse-btn-primary) {
    border-color: var(--bio-border) !important;
    color: var(--bio-text) !important;
    background: rgba(255,253,248,.86) !important;
}
body.sinapse-ui-v417 .sinapse-btn-outline:hover,
body.sinapse-ui-v417 .sinapse-btn:not(.sinapse-btn-primary):hover {
    border-color: rgba(214,167,60,.55) !important;
    background: #fff !important;
}
body.sinapse-ui-v417 .sinapse-course-card,
body.sinapse-ui-v417 .sinapse-dashboard-featured-card,
body.sinapse-ui-v417 .sinapse-dashboard-live-card,
body.sinapse-ui-v417 .sinapse-live-card,
body.sinapse-ui-v417 .sinapse-post,
body.sinapse-ui-v417 .sinapse-post-form,
body.sinapse-ui-v417 .sinapse-card,
body.sinapse-ui-v417 .sinapse-profile-form,
body.sinapse-ui-v417 .sinapse-course-panel,
body.sinapse-ui-v417 .sinapse-course-sidebar,
body.sinapse-ui-v417 .sinapse-lesson-card,
body.sinapse-ui-v417 .sinapse-empty-state {
    background: rgba(255,253,248,.92) !important;
    border-color: var(--bio-border) !important;
    box-shadow: 0 16px 42px rgba(8,7,6,.06) !important;
}
body.sinapse-ui-v417 .sinapse-course-card:hover,
body.sinapse-ui-v417 .sinapse-dashboard-featured-card:hover,
body.sinapse-ui-v417 .sinapse-post:hover {
    border-color: rgba(214,167,60,.45) !important;
    box-shadow: 0 22px 58px rgba(8,7,6,.09) !important;
}
body.sinapse-ui-v417 .sinapse-input,
body.sinapse-ui-v417 input[type="text"],
body.sinapse-ui-v417 input[type="email"],
body.sinapse-ui-v417 input[type="url"],
body.sinapse-ui-v417 input[type="password"],
body.sinapse-ui-v417 textarea,
body.sinapse-ui-v417 select {
    border-color: var(--bio-border) !important;
    background: #FFFDF8 !important;
    color: var(--bio-text) !important;
}
body.sinapse-ui-v417 .sinapse-input:focus,
body.sinapse-ui-v417 input[type="text"]:focus,
body.sinapse-ui-v417 input[type="email"]:focus,
body.sinapse-ui-v417 input[type="url"]:focus,
body.sinapse-ui-v417 input[type="password"]:focus,
body.sinapse-ui-v417 textarea:focus,
body.sinapse-ui-v417 select:focus {
    border-color: var(--bio-gold) !important;
    box-shadow: 0 0 0 4px rgba(214,167,60,.18) !important;
    outline: none !important;
}
body.sinapse-ui-v417 ::placeholder {
    color: #8D8274 !important;
    opacity: 1 !important;
}

/* Perfil: contraste estable en superficies oscuras y claras. */
body.sinapse-ui-v417 .sinapse-profile-header {
    background: radial-gradient(circle at 78% 12%, rgba(214,167,60,.20), transparent 32%), linear-gradient(135deg,var(--bio-black),var(--bio-dark-surface)) !important;
    border-color: rgba(214,167,60,.32) !important;
    color: var(--bio-ivory) !important;
}
body.sinapse-ui-v417 .sinapse-profile-header h1,
body.sinapse-ui-v417 .sinapse-profile-header h2,
body.sinapse-ui-v417 .sinapse-profile-header h3,
body.sinapse-ui-v417 .sinapse-profile-header strong {
    color: #fff !important;
}
body.sinapse-ui-v417 .sinapse-profile-header p,
body.sinapse-ui-v417 .sinapse-profile-header span,
body.sinapse-ui-v417 .sinapse-profile-header small {
    color: rgba(250,247,239,.78) !important;
}
body.sinapse-ui-v417 .sinapse-profile-stats div,
body.sinapse-ui-v417 .sinapse-dashboard-mini-stat {
    background: rgba(255,253,248,.08) !important;
    border: 1px solid rgba(255,253,248,.13) !important;
    color: rgba(250,247,239,.76) !important;
}
body.sinapse-ui-v417 .sinapse-profile-stats strong,
body.sinapse-ui-v417 .sinapse-dashboard-mini-stat strong {
    color: var(--bio-gold-soft) !important;
}
body.sinapse-ui-v417 .sinapse-tier-badge,
body.sinapse-ui-v417 .sinapse-course-tier-badge,
body.sinapse-ui-v417 .sinapse-dashboard-featured-type,
body.sinapse-ui-v417 .sinapse-dashboard-live-date,
body.sinapse-ui-v417 .sinapse-course-category {
    background: rgba(214,167,60,.13) !important;
    border: 1px solid rgba(214,167,60,.25) !important;
    color: #6B4B12 !important;
}
body.sinapse-ui-v417 .sinapse-tier-premium,
body.sinapse-ui-v417 .sinapse-course-tier-badge.sinapse-tier-premium {
    background: rgba(214,167,60,.18) !important;
    color: #6B4B12 !important;
}
body.sinapse-ui-v417 .sinapse-tier-basic,
body.sinapse-ui-v417 .sinapse-course-tier-badge.sinapse-tier-basic {
    background: var(--bio-info-bg) !important;
    color: var(--bio-info) !important;
}
body.sinapse-ui-v417 .sinapse-tier-free,
body.sinapse-ui-v417 .sinapse-course-tier-badge.sinapse-tier-free {
    background: var(--bio-cream) !important;
    color: var(--bio-text-muted) !important;
}

@media (max-width: 980px) {
    body.sinapse-ui-v417 {
        --bio-campus-header-h: auto;
        --bio-campus-safe-top: 136px;
    }
    body.admin-bar.sinapse-ui-v417 { --bio-campus-safe-top: 164px; }
    body.sinapse-ui-v417 .sinapse-campus-header-inner {
        grid-template-columns: 1fr auto !important;
        border-radius: 30px !important;
        gap: 8px 10px !important;
        padding: 10px !important;
    }
    body.sinapse-ui-v417 .sinapse-campus-logo {
        width: 52px !important;
        height: 52px !important;
        min-width: 52px !important;
        max-width: 52px !important;
    }
    body.sinapse-ui-v417 .sinapse-campus-logo img {
        width: 46px !important;
        height: 46px !important;
        max-width: 46px !important;
        max-height: 46px !important;
    }
    body.sinapse-ui-v417 .sinapse-campus-nav {
        grid-column: 1 / -1 !important;
        justify-content: flex-start !important;
        overflow-x: auto !important;
        scrollbar-width: none !important;
        padding: 2px 0 0 !important;
    }
    body.sinapse-ui-v417 .sinapse-campus-nav::-webkit-scrollbar { display: none !important; }
}
@media (max-width: 600px) {
    body.sinapse-ui-v417 {
        --bio-campus-top: 8px;
        --bio-campus-safe-top: 138px;
        --bio-campus-max: calc(100vw - 20px);
    }
    body.admin-bar.sinapse-ui-v417 {
        --bio-campus-top: 54px;
        --bio-campus-safe-top: 182px;
    }
    body.sinapse-ui-v417 .sinapse-campus-header { padding: 0 10px !important; }
    body.sinapse-ui-v417 .sinapse-campus-header-inner { border-radius: 24px !important; }
    body.sinapse-ui-v417 .sinapse-campus-logo {
        width: 48px !important;
        height: 48px !important;
        min-width: 48px !important;
        max-width: 48px !important;
    }
    body.sinapse-ui-v417 .sinapse-campus-logo img {
        width: 42px !important;
        height: 42px !important;
        max-width: 42px !important;
        max-height: 42px !important;
    }
    body.sinapse-ui-v417 .sinapse-campus-brand-copy strong { font-size: 12px !important; }
    body.sinapse-ui-v417 .sinapse-campus-brand-copy small { display: none !important; }
    body.sinapse-ui-v417 .sinapse-campus-nav a,
    body.sinapse-ui-v417 .sinapse-campus-action { font-size: 11px !important; min-height: 35px !important; padding: 8px 10px !important; }
}

/* Sinapse LMS v4.0.18 — Archive Template & Theme Logo Guard
   Corrige /cursos/ y taxonomías para evitar el archivo nativo del tema, logos enormes y visual desconfigurada. */
body.sinapse-ui-v418.sinapse-campus-context :where(
    body > header:not(.sinapse-campus-header),
    #page > header:not(.sinapse-campus-header),
    .wp-site-blocks > header:not(.sinapse-campus-header),
    .wp-block-template-part:has(header),
    .elementor-location-header,
    header.site-header,
    .site-header,
    .site-branding,
    .wp-block-site-logo,
    .custom-logo-link,
    img.custom-logo,
    .site-logo,
    .site-title,
    .site-description,
    footer.site-footer,
    .site-footer,
    .elementor-location-footer
) {
    display: none !important;
}
body.sinapse-ui-v418.sinapse-campus-context :where(.custom-logo-link img, img.custom-logo, .wp-block-site-logo img) {
    width: auto !important;
    max-width: 120px !important;
    max-height: 64px !important;
    object-fit: contain !important;
}
body.sinapse-ui-v418.post-type-archive-sinapse_course,
body.sinapse-ui-v418.tax-sinapse_course_cat,
body.sinapse-ui-v418.tax-sinapse_difficulty {
    background: var(--bio-ivory) !important;
}
body.sinapse-ui-v418 .sinapse-archive-courses {
    max-width: min(1180px, calc(100vw - 32px)) !important;
    margin: 0 auto 72px !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}
body.sinapse-ui-v418 .sinapse-archive-hero {
    position: relative !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 28px !important;
    padding: clamp(28px, 4vw, 52px) !important;
    margin: 0 0 28px !important;
    border-radius: 34px !important;
    background: radial-gradient(circle at 88% 8%, rgba(214,167,60,.22), transparent 34%), linear-gradient(135deg, #080706, #1B1710) !important;
    border: 1px solid rgba(214,167,60,.28) !important;
    box-shadow: 0 28px 78px rgba(8,7,6,.16) !important;
    overflow: hidden !important;
    color: var(--bio-ivory) !important;
}
body.sinapse-ui-v418 .sinapse-archive-hero-copy {
    position: relative !important;
    z-index: 2 !important;
    max-width: 760px !important;
}
body.sinapse-ui-v418 .sinapse-archive-eyebrow {
    display: inline-flex !important;
    align-items: center !important;
    gap: 10px !important;
    margin-bottom: 14px !important;
    color: var(--bio-gold-soft) !important;
    font-size: 12px !important;
    font-weight: 900 !important;
    letter-spacing: .15em !important;
    text-transform: uppercase !important;
}
body.sinapse-ui-v418 .sinapse-archive-eyebrow:before {
    content: "" !important;
    width: 32px !important;
    height: 1px !important;
    background: currentColor !important;
    opacity: .72 !important;
}
body.sinapse-ui-v418 .sinapse-archive-hero h1 {
    margin: 0 0 14px !important;
    color: #fff !important;
    font-family: Fraunces, Georgia, serif !important;
    font-size: clamp(38px, 5.4vw, 70px) !important;
    line-height: 1.02 !important;
    letter-spacing: -.04em !important;
}
body.sinapse-ui-v418 .sinapse-archive-hero p {
    max-width: 720px !important;
    margin: 0 !important;
    color: rgba(250,247,239,.76) !important;
    font-size: 17px !important;
    line-height: 1.65 !important;
}
body.sinapse-ui-v418 .sinapse-archive-actions {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
    margin-top: 24px !important;
}
body.sinapse-ui-v418 .sinapse-archive-mark {
    position: relative !important;
    z-index: 2 !important;
    width: clamp(88px, 10vw, 128px) !important;
    height: clamp(88px, 10vw, 128px) !important;
    min-width: clamp(88px, 10vw, 128px) !important;
    border-radius: 999px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: 1px solid rgba(214,167,60,.44) !important;
    background: rgba(255,255,255,.035) !important;
    box-shadow: 0 0 0 8px rgba(214,167,60,.055), inset 0 0 34px rgba(214,167,60,.08) !important;
    overflow: hidden !important;
}
body.sinapse-ui-v418 .sinapse-archive-mark img {
    width: 82% !important;
    height: 82% !important;
    max-width: 82% !important;
    max-height: 82% !important;
    object-fit: contain !important;
    object-position: center !important;
    display: block !important;
}
body.sinapse-ui-v418 .sinapse-archive-catalog {
    position: relative !important;
}
body.sinapse-ui-v418 .sinapse-archive-catalog .sinapse-wrap {
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}
body.sinapse-ui-v418 .sinapse-course-catalog .sinapse-courses-grid {
    gap: 22px !important;
}
body.sinapse-ui-v418 .sinapse-course-card .sinapse-course-thumb {
    min-height: 210px !important;
    background-size: cover !important;
    background-position: center !important;
}
body.sinapse-ui-v418 .sinapse-course-card h3 a {
    color: var(--bio-text) !important;
    text-decoration: none !important;
}
body.sinapse-ui-v418 .sinapse-course-card h3 a:hover {
    color: var(--bio-bronze) !important;
}
body.sinapse-ui-v418 .sinapse-price-tag {
    color: var(--bio-text) !important;
}

@media (max-width: 780px) {
    body.sinapse-ui-v418 .sinapse-archive-courses {
        max-width: calc(100vw - 24px) !important;
        margin-bottom: 52px !important;
    }
    body.sinapse-ui-v418 .sinapse-archive-hero {
        grid-template-columns: 1fr !important;
        padding: 28px !important;
        border-radius: 26px !important;
    }
    body.sinapse-ui-v418 .sinapse-archive-mark {
        width: 82px !important;
        height: 82px !important;
        min-width: 82px !important;
        order: -1 !important;
    }
    body.sinapse-ui-v418 .sinapse-archive-actions {
        flex-direction: column !important;
        align-items: stretch !important;
    }
}

/* Sinapse LMS v4.0.19 — Campus Footer Upgrade
   Footer premium funcional: navegación, contacto y conversión sin tocar lógica LMS. */
body.sinapse-ui-v419 .sinapse-campus-footer-upgraded,
body.sinapse-ui-v419 .sinapse-campus-footer-upgraded * {
    box-sizing: border-box !important;
}
body.sinapse-ui-v419 .sinapse-campus-footer-upgraded {
    width: min(1180px, calc(100% - 32px)) !important;
    margin: 42px auto 30px !important;
    padding: 0 !important;
    font-family: Manrope, Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
    color: var(--bio-ivory) !important;
}
body.sinapse-ui-v419 .sinapse-campus-footer-cta {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 22px !important;
    align-items: center !important;
    margin: 0 0 16px !important;
    padding: clamp(24px, 3vw, 34px) !important;
    border-radius: 34px !important;
    background: radial-gradient(circle at 88% 10%, rgba(214,167,60,.24), transparent 32%), linear-gradient(135deg, #080706, #1B1710) !important;
    border: 1px solid rgba(214,167,60,.28) !important;
    box-shadow: 0 28px 80px rgba(8,7,6,.16) !important;
    overflow: hidden !important;
}
body.sinapse-ui-v419 .sinapse-campus-footer-cta-copy span {
    display: inline-flex !important;
    align-items: center !important;
    gap: 10px !important;
    margin: 0 0 10px !important;
    color: var(--bio-gold-soft) !important;
    font-size: 12px !important;
    font-weight: 900 !important;
    letter-spacing: .15em !important;
    text-transform: uppercase !important;
}
body.sinapse-ui-v419 .sinapse-campus-footer-cta-copy span:before {
    content: "" !important;
    display: inline-block !important;
    width: 30px !important;
    height: 1px !important;
    background: currentColor !important;
    opacity: .72 !important;
}
body.sinapse-ui-v419 .sinapse-campus-footer-cta-copy strong {
    display: block !important;
    max-width: 720px !important;
    color: #FFFFFF !important;
    font-family: Fraunces, Georgia, serif !important;
    font-size: clamp(28px, 3.4vw, 46px) !important;
    line-height: 1.04 !important;
    letter-spacing: -.04em !important;
}
body.sinapse-ui-v419 .sinapse-campus-footer-cta-copy p {
    max-width: 740px !important;
    margin: 12px 0 0 !important;
    color: rgba(250,247,239,.74) !important;
    font-size: 15px !important;
    line-height: 1.62 !important;
}
body.sinapse-ui-v419 .sinapse-campus-footer-cta-actions {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 12px !important;
}
body.sinapse-ui-v419 .sinapse-campus-footer-primary,
body.sinapse-ui-v419 .sinapse-campus-footer-secondary {
    min-height: 48px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 13px 20px !important;
    border-radius: 999px !important;
    font-size: 13px !important;
    font-weight: 950 !important;
    line-height: 1 !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    transition: transform .18s ease, border-color .18s ease, background .18s ease, color .18s ease !important;
}
body.sinapse-ui-v419 .sinapse-campus-footer-primary {
    background: linear-gradient(135deg, var(--bio-gold), var(--bio-gold-soft)) !important;
    color: var(--bio-black) !important;
    border: 1px solid rgba(214,167,60,.72) !important;
    box-shadow: 0 14px 34px rgba(214,167,60,.18) !important;
}
body.sinapse-ui-v419 .sinapse-campus-footer-secondary {
    background: rgba(255,255,255,.08) !important;
    color: var(--bio-ivory) !important;
    border: 1px solid rgba(250,247,239,.18) !important;
}
body.sinapse-ui-v419 .sinapse-campus-footer-primary:hover,
body.sinapse-ui-v419 .sinapse-campus-footer-secondary:hover {
    transform: translateY(-2px) !important;
}
body.sinapse-ui-v419 .sinapse-campus-footer-secondary:hover {
    border-color: rgba(214,167,60,.46) !important;
    background: rgba(255,255,255,.12) !important;
}
body.sinapse-ui-v419 .sinapse-campus-footer-map {
    display: grid !important;
    grid-template-columns: minmax(240px, 1.35fr) repeat(3, minmax(150px, .7fr)) !important;
    gap: clamp(22px, 3vw, 38px) !important;
    padding: clamp(24px, 3vw, 34px) !important;
    border-radius: 34px !important;
    background: radial-gradient(circle at 4% 8%, rgba(214,167,60,.12), transparent 28%), linear-gradient(135deg, #080706, #17130D 62%, #1B1710) !important;
    border: 1px solid rgba(214,167,60,.22) !important;
    box-shadow: 0 28px 80px rgba(8,7,6,.16) !important;
}
body.sinapse-ui-v419 .sinapse-campus-footer-brand-block {
    min-width: 0 !important;
}
body.sinapse-ui-v419 .sinapse-campus-footer-logo-row {
    display: inline-flex !important;
    align-items: center !important;
    gap: 14px !important;
    color: #fff !important;
    text-decoration: none !important;
    max-width: 100% !important;
}
body.sinapse-ui-v419 .sinapse-campus-footer-logo {
    width: 62px !important;
    height: 62px !important;
    min-width: 62px !important;
    max-width: 62px !important;
    max-height: 62px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 999px !important;
    overflow: hidden !important;
    background: radial-gradient(circle at 50% 42%, rgba(214,167,60,.08), rgba(8,7,6,.82)) !important;
    border: 1px solid rgba(214,167,60,.55) !important;
    box-shadow: 0 0 0 6px rgba(214,167,60,.055), 0 14px 34px rgba(0,0,0,.24) !important;
    color: var(--bio-gold-soft) !important;
    font-size: 12px !important;
    font-weight: 950 !important;
}
body.sinapse-ui-v419 .sinapse-campus-footer-logo img {
    width: 54px !important;
    height: 54px !important;
    max-width: 54px !important;
    max-height: 54px !important;
    object-fit: contain !important;
    object-position: center center !important;
    display: block !important;
    padding: 2px !important;
    margin: 0 !important;
}
body.sinapse-ui-v419 .sinapse-campus-footer-brand-copy {
    display: grid !important;
    gap: 3px !important;
    line-height: 1.05 !important;
    min-width: 0 !important;
}
body.sinapse-ui-v419 .sinapse-campus-footer-brand-copy strong {
    color: #fff !important;
    font-size: 18px !important;
    font-weight: 950 !important;
    letter-spacing: -.02em !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}
body.sinapse-ui-v419 .sinapse-campus-footer-brand-copy small {
    color: rgba(250,247,239,.68) !important;
    font-size: 12px !important;
    font-weight: 850 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}
body.sinapse-ui-v419 .sinapse-campus-footer-brand-block p {
    max-width: 390px !important;
    margin: 18px 0 0 !important;
    color: rgba(250,247,239,.72) !important;
    font-size: 14px !important;
    line-height: 1.6 !important;
}
body.sinapse-ui-v419 .sinapse-campus-footer-pills {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    margin-top: 18px !important;
}
body.sinapse-ui-v419 .sinapse-campus-footer-pills span {
    display: inline-flex !important;
    align-items: center !important;
    min-height: 30px !important;
    padding: 7px 10px !important;
    border-radius: 999px !important;
    border: 1px solid rgba(214,167,60,.22) !important;
    background: rgba(214,167,60,.08) !important;
    color: rgba(250,247,239,.78) !important;
    font-size: 11px !important;
    font-weight: 900 !important;
}
body.sinapse-ui-v419 .sinapse-campus-footer-col {
    display: grid !important;
    align-content: start !important;
    gap: 10px !important;
    min-width: 0 !important;
}
body.sinapse-ui-v419 .sinapse-campus-footer-col strong {
    color: var(--bio-gold-soft) !important;
    font-size: 12px !important;
    font-weight: 950 !important;
    letter-spacing: .13em !important;
    text-transform: uppercase !important;
    margin-bottom: 4px !important;
}
body.sinapse-ui-v419 .sinapse-campus-footer-col a {
    color: rgba(250,247,239,.74) !important;
    text-decoration: none !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    line-height: 1.35 !important;
    transition: color .18s ease, transform .18s ease !important;
}
body.sinapse-ui-v419 .sinapse-campus-footer-col a:hover {
    color: #fff !important;
    transform: translateX(2px) !important;
}
body.sinapse-ui-v419 .sinapse-campus-footer-bottom {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 16px !important;
    padding: 16px 6px 0 !important;
    color: rgba(21,18,14,.60) !important;
    font-size: 12px !important;
    font-weight: 750 !important;
}
body.sinapse-ui-v419 .sinapse-campus-footer-bottom div {
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    justify-content: flex-end !important;
    gap: 14px !important;
}
body.sinapse-ui-v419 .sinapse-campus-footer-bottom a {
    color: rgba(21,18,14,.68) !important;
    text-decoration: none !important;
    font-size: 12px !important;
    font-weight: 850 !important;
}
body.sinapse-ui-v419 .sinapse-campus-footer-bottom a:hover {
    color: var(--bio-black) !important;
}

@media (max-width: 980px) {
    body.sinapse-ui-v419 .sinapse-campus-footer-cta {
        grid-template-columns: 1fr !important;
    }
    body.sinapse-ui-v419 .sinapse-campus-footer-cta-actions {
        justify-content: flex-start !important;
    }
    body.sinapse-ui-v419 .sinapse-campus-footer-map {
        grid-template-columns: repeat(2, minmax(0,1fr)) !important;
    }
    body.sinapse-ui-v419 .sinapse-campus-footer-brand-block {
        grid-column: 1 / -1 !important;
    }
}
@media (max-width: 600px) {
    body.sinapse-ui-v419 .sinapse-campus-footer-upgraded {
        width: calc(100% - 20px) !important;
        margin: 30px auto 22px !important;
    }
    body.sinapse-ui-v419 .sinapse-campus-footer-cta,
    body.sinapse-ui-v419 .sinapse-campus-footer-map {
        border-radius: 26px !important;
        padding: 22px !important;
    }
    body.sinapse-ui-v419 .sinapse-campus-footer-cta-copy strong {
        font-size: 28px !important;
    }
    body.sinapse-ui-v419 .sinapse-campus-footer-cta-actions,
    body.sinapse-ui-v419 .sinapse-campus-footer-primary,
    body.sinapse-ui-v419 .sinapse-campus-footer-secondary {
        width: 100% !important;
    }
    body.sinapse-ui-v419 .sinapse-campus-footer-map {
        grid-template-columns: 1fr !important;
        gap: 24px !important;
    }
    body.sinapse-ui-v419 .sinapse-campus-footer-logo {
        width: 56px !important;
        height: 56px !important;
        min-width: 56px !important;
        max-width: 56px !important;
        max-height: 56px !important;
    }
    body.sinapse-ui-v419 .sinapse-campus-footer-logo img {
        width: 48px !important;
        height: 48px !important;
        max-width: 48px !important;
        max-height: 48px !important;
    }
    body.sinapse-ui-v419 .sinapse-campus-footer-brand-copy strong {
        font-size: 16px !important;
    }
    body.sinapse-ui-v419 .sinapse-campus-footer-bottom {
        flex-direction: column !important;
        align-items: flex-start !important;
    }
    body.sinapse-ui-v419 .sinapse-campus-footer-bottom div {
        justify-content: flex-start !important;
    }
}

/* =========================================================
   Sinapse LMS v4.0.21 — Profile, Community Media & Live UI Polish
   Correcciones visuales solicitadas: avatar perfil +25%, truncado con elipsis,
   links sin subrayado, footer inferior dentro del bloque negro, comunidad tipo feed,
   directos modernizados y gamificación más atractiva.
========================================================= */
body.sinapse-ui-v421.sinapse-campus-context a,
body.sinapse-ui-v421.sinapse-campus-context a:visited,
body.sinapse-ui-v421.sinapse-campus-context a:hover,
body.sinapse-ui-v421.sinapse-campus-context a:focus,
body.sinapse-ui-v421.sinapse-campus-context .sinapse-post-content a,
body.sinapse-ui-v421.sinapse-campus-context .sinapse-live-card h3 a,
body.sinapse-ui-v421.sinapse-campus-context .sinapse-dashboard-live-card a,
body.sinapse-ui-v421.sinapse-campus-context .sinapse-profile-chip,
body.sinapse-ui-v421.sinapse-campus-context .sinapse-btn {
    text-decoration: none !important;
}
body.sinapse-ui-v421.sinapse-campus-context :is(.sinapse-post-content, .sinapse-live-card, .sinapse-profile-header, .sinapse-campus-footer) a {
    text-decoration-thickness: 0 !important;
    text-underline-offset: 0 !important;
}

/* Perfil — avatar un 25% más grande y con presencia premium controlada. */
body.sinapse-ui-v421 .sinapse-profile-avatar-block {
    display: grid !important;
    justify-items: center !important;
    align-content: center !important;
    gap: 12px !important;
    min-width: 190px !important;
}
body.sinapse-ui-v421 .sinapse-profile .sinapse-avatar-lg,
body.sinapse-ui-v421 .sinapse-profile-avatar-block .sinapse-avatar-lg,
body.sinapse-ui-v421 img#sinapse-profile-avatar {
    width: 100px !important;
    height: 100px !important;
    min-width: 100px !important;
    max-width: 100px !important;
    min-height: 100px !important;
    max-height: 100px !important;
    object-fit: cover !important;
    border-radius: 999px !important;
    border: 2px solid rgba(214,167,60,.56) !important;
    box-shadow: 0 0 0 7px rgba(214,167,60,.08), 0 20px 44px rgba(0,0,0,.26) !important;
}
body.sinapse-ui-v421 .sinapse-profile-main {
    min-width: 0 !important;
}

/* Perfil — cuando el texto continúa, mostrar elipsis clara. */
body.sinapse-ui-v421 .sinapse-profile-headline,
body.sinapse-ui-v421 .sinapse-profile-bio {
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    white-space: normal !important;
    max-width: 780px !important;
}
body.sinapse-ui-v421 .sinapse-profile-headline {
    -webkit-line-clamp: 2 !important;
    line-clamp: 2 !important;
}
body.sinapse-ui-v421 .sinapse-profile-bio {
    -webkit-line-clamp: 4 !important;
    line-clamp: 4 !important;
    line-height: 1.58 !important;
}

/* Perfil — gamificación más atractiva y ordenada. */
body.sinapse-ui-v421 .sinapse-profile-stats {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(116px, 1fr)) !important;
    gap: 14px !important;
    margin-top: 24px !important;
    max-width: 760px !important;
}
body.sinapse-ui-v421 .sinapse-profile-header .sinapse-profile-stats > div,
body.sinapse-ui-v421 .sinapse-profile-stats > div {
    position: relative !important;
    min-height: 112px !important;
    display: grid !important;
    align-content: center !important;
    justify-items: center !important;
    gap: 6px !important;
    padding: 18px 14px 16px !important;
    border-radius: 22px !important;
    background: radial-gradient(circle at 50% 0%, rgba(214,167,60,.20), transparent 44%), linear-gradient(180deg, #FFFDF8, #F3EDE2) !important;
    border: 1px solid rgba(214,167,60,.28) !important;
    box-shadow: 0 18px 40px rgba(0,0,0,.16) !important;
    color: var(--bio-text) !important;
    text-align: center !important;
    overflow: hidden !important;
}
body.sinapse-ui-v421 .sinapse-profile-stats > div:before {
    width: 32px !important;
    height: 32px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 999px !important;
    background: linear-gradient(135deg, rgba(214,167,60,.22), rgba(232,199,105,.10)) !important;
    border: 1px solid rgba(214,167,60,.24) !important;
    color: #8A641E !important;
    font-size: 15px !important;
    line-height: 1 !important;
}
body.sinapse-ui-v421 .sinapse-profile-stats > div:nth-child(1):before { content: "✦" !important; }
body.sinapse-ui-v421 .sinapse-profile-stats > div:nth-child(2):before { content: "◆" !important; }
body.sinapse-ui-v421 .sinapse-profile-stats > div:nth-child(3):before { content: "●" !important; }
body.sinapse-ui-v421 .sinapse-profile-stats > div:nth-child(4):before { content: "★" !important; }
body.sinapse-ui-v421 .sinapse-profile-header .sinapse-profile-stats strong,
body.sinapse-ui-v421 .sinapse-profile-stats strong {
    display: block !important;
    color: var(--bio-black) !important;
    font-family: Fraunces, Georgia, serif !important;
    font-size: 24px !important;
    line-height: 1 !important;
    letter-spacing: -.035em !important;
    margin: 0 !important;
}
body.sinapse-ui-v421 .sinapse-profile-header .sinapse-profile-stats > div,
body.sinapse-ui-v421 .sinapse-profile-header .sinapse-profile-stats > div *,
body.sinapse-ui-v421 .sinapse-profile-stats > div,
body.sinapse-ui-v421 .sinapse-profile-stats > div * {
    text-shadow: none !important;
    opacity: 1 !important;
}
body.sinapse-ui-v421 .sinapse-profile-stats > div br {
    display: none !important;
}
body.sinapse-ui-v421 .sinapse-profile-stats > div {
    font-size: 13px !important;
    font-weight: 850 !important;
    color: rgba(21,18,14,.68) !important;
}

/* Footer — todo el cierre vive dentro de la zona negra, nada queda como franja suelta debajo. */
body.sinapse-ui-v421 .sinapse-campus-footer-upgraded {
    margin-bottom: 0 !important;
}
body.sinapse-ui-v421 .sinapse-campus-footer-map .sinapse-campus-footer-bottom {
    grid-column: 1 / -1 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 16px !important;
    padding: 20px 0 0 !important;
    margin: 4px 0 0 !important;
    border-top: 1px solid rgba(250,247,239,.12) !important;
    color: rgba(250,247,239,.62) !important;
    font-size: 12px !important;
    font-weight: 750 !important;
}
body.sinapse-ui-v421 .sinapse-campus-footer-map .sinapse-campus-footer-bottom span {
    color: rgba(250,247,239,.62) !important;
}
body.sinapse-ui-v421 .sinapse-campus-footer-map .sinapse-campus-footer-bottom div {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    flex-wrap: wrap !important;
    gap: 14px !important;
}
body.sinapse-ui-v421 .sinapse-campus-footer-map .sinapse-campus-footer-bottom a {
    color: rgba(250,247,239,.72) !important;
    text-decoration: none !important;
    font-size: 12px !important;
    font-weight: 850 !important;
}
body.sinapse-ui-v421 .sinapse-campus-footer-map .sinapse-campus-footer-bottom a:hover {
    color: var(--bio-gold-soft) !important;
}

/* Comunidad — media compartida más contenida, clara y limpia estilo feed social. */
body.sinapse-ui-v421 .sinapse-community-wrap,
body.sinapse-ui-v421 .sinapse-community {
    max-width: 1180px !important;
}
body.sinapse-ui-v421 .sinapse-community-wrap .sinapse-post,
body.sinapse-ui-v421 .sinapse-community .sinapse-post {
    max-width: 860px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    border-radius: 24px !important;
    overflow: hidden !important;
}
body.sinapse-ui-v421 .sinapse-post-image {
    width: calc(100% - 36px) !important;
    max-width: 760px !important;
    max-height: 520px !important;
    margin: 0 auto 16px !important;
    display: block !important;
    object-fit: contain !important;
    object-position: center center !important;
    border-radius: 20px !important;
    background: linear-gradient(180deg, #F7F1E8, #FFFDF8) !important;
    border: 1px solid var(--bio-border) !important;
    box-shadow: 0 14px 36px rgba(8,7,6,.06) !important;
}
body.sinapse-ui-v421 .sinapse-post-content :is(img, video, iframe) {
    max-width: 760px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    border-radius: 20px !important;
}
body.sinapse-ui-v421 .sinapse-post-content iframe,
body.sinapse-ui-v421 .sinapse-post-content video,
body.sinapse-ui-v421 .sinapse-post iframe,
body.sinapse-ui-v421 .sinapse-post video {
    max-height: 430px !important;
    border: 1px solid var(--bio-border) !important;
    background: #080706 !important;
    box-shadow: 0 14px 36px rgba(8,7,6,.08) !important;
}
body.sinapse-ui-v421 .sinapse-embed-video {
    width: calc(100% - 36px) !important;
    max-width: 760px !important;
    margin: 0 auto 16px !important;
    position: relative !important;
    height: auto !important;
    padding-bottom: 0 !important;
    aspect-ratio: 16 / 9 !important;
    overflow: hidden !important;
    border-radius: 20px !important;
    border: 1px solid var(--bio-border) !important;
    background: #080706 !important;
    box-shadow: 0 14px 36px rgba(8,7,6,.08) !important;
}
body.sinapse-ui-v421 .sinapse-embed-video iframe {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    border: 0 !important;
}
body.sinapse-ui-v421 .sinapse-post-content a {
    color: #8A641E !important;
    font-weight: 850 !important;
    overflow-wrap: anywhere !important;
}

/* Directos — cards más modernas, visuales e interactivas sin tocar la lógica. */
body.sinapse-ui-v421 .sinapse-live-grid,
body.sinapse-ui-v421 .sinapse-dashboard-live-grid {
    grid-template-columns: repeat(auto-fit, minmax(290px, 1fr)) !important;
    gap: 20px !important;
}
body.sinapse-ui-v421 .sinapse-live-card,
body.sinapse-ui-v421 .sinapse-dashboard-live-card {
    position: relative !important;
    isolation: isolate !important;
    display: grid !important;
    gap: 16px !important;
    padding: clamp(22px, 2.5vw, 30px) !important;
    border-radius: 30px !important;
    overflow: hidden !important;
    background: radial-gradient(circle at 94% 0%, rgba(214,167,60,.22), transparent 34%), linear-gradient(180deg, rgba(255,253,248,.96), rgba(243,237,226,.88)) !important;
    border: 1px solid rgba(214,167,60,.26) !important;
    box-shadow: 0 22px 60px rgba(8,7,6,.075) !important;
    transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease !important;
}
body.sinapse-ui-v421 .sinapse-live-card:before,
body.sinapse-ui-v421 .sinapse-dashboard-live-card:before {
    content: "" !important;
    position: absolute !important;
    right: -46px !important;
    top: -46px !important;
    width: 148px !important;
    height: 148px !important;
    border-radius: 999px !important;
    border: 1px solid rgba(214,167,60,.26) !important;
    background: radial-gradient(circle, rgba(214,167,60,.18), transparent 66%) !important;
    z-index: -1 !important;
}
body.sinapse-ui-v421 .sinapse-live-card:hover,
body.sinapse-ui-v421 .sinapse-dashboard-live-card:hover {
    transform: translateY(-4px) !important;
    border-color: rgba(214,167,60,.52) !important;
    box-shadow: 0 30px 76px rgba(8,7,6,.12) !important;
}
body.sinapse-ui-v421 .sinapse-live-date,
body.sinapse-ui-v421 .sinapse-dashboard-live-date {
    width: fit-content !important;
    max-width: 100% !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 8px 12px !important;
    border-radius: 999px !important;
    background: rgba(214,167,60,.16) !important;
    border: 1px solid rgba(214,167,60,.28) !important;
    color: #7A5518 !important;
    font-size: 12px !important;
    font-weight: 950 !important;
    letter-spacing: .02em !important;
}
body.sinapse-ui-v421 .sinapse-live-date:before,
body.sinapse-ui-v421 .sinapse-dashboard-live-date:before {
    content: "●" !important;
    color: var(--bio-gold) !important;
    font-size: 10px !important;
}
body.sinapse-ui-v421 .sinapse-live-card h3,
body.sinapse-ui-v421 .sinapse-dashboard-live-card strong {
    margin: 0 !important;
    color: var(--bio-text) !important;
    font-family: Fraunces, Georgia, serif !important;
    letter-spacing: -.035em !important;
    line-height: 1.08 !important;
}
body.sinapse-ui-v421 .sinapse-live-card h3 a {
    color: var(--bio-text) !important;
    font-size: clamp(24px, 2.4vw, 34px) !important;
    line-height: 1.05 !important;
}
body.sinapse-ui-v421 .sinapse-live-card p,
body.sinapse-ui-v421 .sinapse-dashboard-live-card .sinapse-meta {
    color: var(--bio-muted) !important;
    line-height: 1.65 !important;
}
body.sinapse-ui-v421 .sinapse-live-meta {
    display: flex !important;
    gap: 8px !important;
    flex-wrap: wrap !important;
    color: var(--bio-muted) !important;
    font-size: 13px !important;
}
body.sinapse-ui-v421 .sinapse-live-meta span {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    min-height: 32px !important;
    padding: 7px 10px !important;
    border-radius: 999px !important;
    background: rgba(255,253,248,.82) !important;
    border: 1px solid var(--bio-border) !important;
    color: #5D5145 !important;
    font-weight: 850 !important;
}
body.sinapse-ui-v421 .sinapse-live-actions,
body.sinapse-ui-v421 .sinapse-dashboard-live-actions {
    margin-top: 4px !important;
    padding-top: 16px !important;
    border-top: 1px solid rgba(21,18,14,.08) !important;
}
body.sinapse-ui-v421 .sinapse-live-actions .sinapse-btn,
body.sinapse-ui-v421 .sinapse-dashboard-live-actions .sinapse-btn {
    min-height: 44px !important;
    border-radius: 999px !important;
    font-weight: 950 !important;
}

@media (max-width: 780px) {
    body.sinapse-ui-v421 .sinapse-profile-avatar-block {
        min-width: 0 !important;
    }
    body.sinapse-ui-v421 .sinapse-profile .sinapse-avatar-lg,
    body.sinapse-ui-v421 .sinapse-profile-avatar-block .sinapse-avatar-lg,
    body.sinapse-ui-v421 img#sinapse-profile-avatar {
        width: 92px !important;
        height: 92px !important;
        min-width: 92px !important;
        max-width: 92px !important;
        min-height: 92px !important;
        max-height: 92px !important;
    }
    body.sinapse-ui-v421 .sinapse-profile-stats {
        grid-template-columns: repeat(2, minmax(0,1fr)) !important;
        width: 100% !important;
        max-width: 100% !important;
    }
    body.sinapse-ui-v421 .sinapse-post-image,
    body.sinapse-ui-v421 .sinapse-embed-video {
        width: calc(100% - 24px) !important;
        max-height: 420px !important;
        border-radius: 16px !important;
    }
    body.sinapse-ui-v421 .sinapse-campus-footer-map .sinapse-campus-footer-bottom {
        flex-direction: column !important;
        align-items: flex-start !important;
    }
    body.sinapse-ui-v421 .sinapse-campus-footer-map .sinapse-campus-footer-bottom div {
        justify-content: flex-start !important;
    }
    body.sinapse-ui-v421 .sinapse-live-grid,
    body.sinapse-ui-v421 .sinapse-dashboard-live-grid {
        grid-template-columns: 1fr !important;
    }
}

/* =========================================================
   Sinapse LMS v4.0.22 — Instructor Activation & Conversion UX
   Objetivo: convertir el panel en un recorrido guiado, no solo en una pantalla administrativa.
========================================================= */
body.sinapse-ui-v422 .sinapse-instructor-dash,
body.sinapse-ui-v422 .sinapse-dashboard,
body.sinapse-ui-v422 .sinapse-auth-form-v422 {
    --bio-black:#080706;
    --bio-dark:#1B1710;
    --bio-ivory:#FAF7EF;
    --bio-cream:#F3EDE2;
    --bio-surface:#FFFDF8;
    --bio-gold:#D6A73C;
    --bio-gold-soft:#E8C769;
    --bio-gold-dark:#9B7228;
    --bio-text:#15120E;
    --bio-muted:#6F665A;
    --bio-border:#E4D9C8;
}

body.sinapse-ui-v422 .sinapse-instructor-header {
    position: relative !important;
    overflow: hidden !important;
    border: 1px solid rgba(214,167,60,.30) !important;
    border-radius: 30px !important;
    padding: clamp(22px, 3vw, 34px) !important;
    margin-bottom: 18px !important;
    background: radial-gradient(circle at 92% 0%, rgba(214,167,60,.22), transparent 34%), linear-gradient(135deg, var(--bio-black), var(--bio-dark)) !important;
    box-shadow: 0 28px 80px rgba(8,7,6,.16) !important;
    color: var(--bio-ivory) !important;
}
body.sinapse-ui-v422 .sinapse-instructor-header h2 {
    font-family: Fraunces, Georgia, serif !important;
    letter-spacing: -.035em !important;
    color: #fff !important;
    font-size: clamp(32px, 4vw, 54px) !important;
    line-height: 1 !important;
}
body.sinapse-ui-v422 .sinapse-instructor-header p {
    color: rgba(250,247,239,.72) !important;
    max-width: 640px !important;
    font-weight: 650 !important;
}
body.sinapse-ui-v422 .sinapse-instructor-header .sinapse-btn-outline {
    background: rgba(250,247,239,.08) !important;
    border-color: rgba(250,247,239,.18) !important;
    color: #fff !important;
}
body.sinapse-ui-v422 .sinapse-instructor-header .sinapse-btn-primary {
    background: linear-gradient(135deg, var(--bio-gold), var(--bio-gold-soft)) !important;
    border-color: rgba(214,167,60,.45) !important;
    color: var(--bio-black) !important;
}

body.sinapse-ui-v422 .sinapse-instructor-activation {
    display: grid !important;
    grid-template-columns: minmax(0, 1.05fr) minmax(300px, .95fr) !important;
    gap: 20px !important;
    align-items: stretch !important;
    margin: 20px 0 24px !important;
}
body.sinapse-ui-v422 .sinapse-activation-main,
body.sinapse-ui-v422 .sinapse-activation-progress-card {
    border: 1px solid rgba(214,167,60,.28) !important;
    border-radius: 28px !important;
    background: linear-gradient(180deg, rgba(255,253,248,.96), rgba(243,237,226,.86)) !important;
    box-shadow: 0 18px 54px rgba(8,7,6,.07) !important;
    padding: clamp(20px, 2.5vw, 30px) !important;
}
body.sinapse-ui-v422 .sinapse-activation-main {
    position: relative !important;
    overflow: hidden !important;
}
body.sinapse-ui-v422 .sinapse-activation-main:after {
    content: "" !important;
    position: absolute !important;
    width: 160px !important;
    height: 160px !important;
    right: -56px !important;
    top: -56px !important;
    border-radius: 999px !important;
    background: radial-gradient(circle, rgba(214,167,60,.18), transparent 68%) !important;
    pointer-events: none !important;
}
body.sinapse-ui-v422 .sinapse-activation-kicker,
body.sinapse-ui-v422 .sinapse-activation-main > span {
    display: inline-flex !important;
    margin-bottom: 12px !important;
    color: var(--bio-gold-dark) !important;
    font-size: 12px !important;
    letter-spacing: .16em !important;
    text-transform: uppercase !important;
    font-weight: 950 !important;
}
body.sinapse-ui-v422 .sinapse-activation-main h3 {
    font-family: Fraunces, Georgia, serif !important;
    font-size: clamp(28px, 3.2vw, 44px) !important;
    line-height: 1.02 !important;
    letter-spacing: -.035em !important;
    color: var(--bio-text) !important;
    margin: 0 0 10px !important;
}
body.sinapse-ui-v422 .sinapse-activation-main p {
    color: var(--bio-muted) !important;
    max-width: 640px !important;
    margin: 0 0 18px !important;
    font-size: 16px !important;
    line-height: 1.65 !important;
}
body.sinapse-ui-v422 .sinapse-activation-actions {
    display: flex !important;
    gap: 10px !important;
    flex-wrap: wrap !important;
}
body.sinapse-ui-v422 .sinapse-activation-progress-head {
    display: flex !important;
    justify-content: space-between !important;
    gap: 14px !important;
    align-items: baseline !important;
    margin-bottom: 12px !important;
}
body.sinapse-ui-v422 .sinapse-activation-progress-head strong {
    font-family: Fraunces, Georgia, serif !important;
    font-size: 46px !important;
    line-height: 1 !important;
    color: var(--bio-text) !important;
    letter-spacing: -.035em !important;
}
body.sinapse-ui-v422 .sinapse-activation-progress-head span {
    font-size: 13px !important;
    color: var(--bio-muted) !important;
    font-weight: 900 !important;
}
body.sinapse-ui-v422 .sinapse-activation-progress {
    width: 100% !important;
    height: 12px !important;
    overflow: hidden !important;
    border-radius: 999px !important;
    background: rgba(21,18,14,.08) !important;
    margin-bottom: 16px !important;
}
body.sinapse-ui-v422 .sinapse-activation-progress span {
    display: block !important;
    height: 100% !important;
    border-radius: 999px !important;
    background: linear-gradient(90deg, var(--bio-gold-dark), var(--bio-gold-soft)) !important;
}
body.sinapse-ui-v422 .sinapse-activation-task-list {
    display: grid !important;
    gap: 8px !important;
}
body.sinapse-ui-v422 .sinapse-activation-task {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    text-decoration: none !important;
    padding: 10px 12px !important;
    border-radius: 16px !important;
    background: rgba(255,255,255,.66) !important;
    border: 1px solid rgba(21,18,14,.08) !important;
    color: var(--bio-text) !important;
    transition: .22s ease !important;
}
body.sinapse-ui-v422 .sinapse-activation-task:hover {
    border-color: rgba(214,167,60,.42) !important;
    transform: translateY(-1px) !important;
}
body.sinapse-ui-v422 .sinapse-activation-task span {
    width: 24px !important;
    height: 24px !important;
    border-radius: 999px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: rgba(214,167,60,.14) !important;
    color: var(--bio-gold-dark) !important;
    font-weight: 950 !important;
    flex: 0 0 auto !important;
}
body.sinapse-ui-v422 .sinapse-activation-task em {
    font-style: normal !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    color: inherit !important;
}
body.sinapse-ui-v422 .sinapse-activation-task.is-done {
    opacity: .74 !important;
    background: rgba(63,111,78,.08) !important;
    border-color: rgba(63,111,78,.20) !important;
}
body.sinapse-ui-v422 .sinapse-activation-task.is-done span {
    background: rgba(63,111,78,.16) !important;
    color: #315D3E !important;
}

body.sinapse-ui-v422 .sinapse-tabs {
    background: rgba(255,253,248,.78) !important;
    border: 1px solid var(--bio-border) !important;
    border-radius: 22px !important;
    padding: 8px !important;
    box-shadow: 0 12px 34px rgba(8,7,6,.045) !important;
    border-bottom: 1px solid var(--bio-border) !important;
}
body.sinapse-ui-v422 .sinapse-tab {
    border-bottom: 0 !important;
    border-radius: 999px !important;
    font-weight: 900 !important;
    color: var(--bio-muted) !important;
    padding: 10px 16px !important;
    text-decoration: none !important;
}
body.sinapse-ui-v422 .sinapse-tab-active {
    color: var(--bio-black) !important;
    background: rgba(214,167,60,.18) !important;
    box-shadow: inset 0 0 0 1px rgba(214,167,60,.22) !important;
}

body.sinapse-ui-v422 .sinapse-empty-conversion {
    max-width: 760px !important;
    margin: 16px auto !important;
    padding: clamp(24px, 3vw, 38px) !important;
    border: 1px dashed rgba(214,167,60,.42) !important;
    border-radius: 30px !important;
    text-align: center !important;
    background: radial-gradient(circle at 50% 0%, rgba(214,167,60,.12), transparent 34%), linear-gradient(180deg, rgba(255,253,248,.96), rgba(243,237,226,.84)) !important;
    color: var(--bio-muted) !important;
}
body.sinapse-ui-v422 .sinapse-empty-conversion h3 {
    margin: 0 0 10px !important;
    font-family: Fraunces, Georgia, serif !important;
    letter-spacing: -.035em !important;
    color: var(--bio-text) !important;
    font-size: clamp(26px, 3vw, 38px) !important;
}
body.sinapse-ui-v422 .sinapse-empty-conversion p {
    max-width: 560px !important;
    margin: 0 auto 18px !important;
    color: var(--bio-muted) !important;
    line-height: 1.65 !important;
}

body.sinapse-ui-v422 .sinapse-student-next-action {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 22px !important;
    margin: 20px 0 24px !important;
    padding: clamp(20px, 2.5vw, 28px) !important;
    border: 1px solid rgba(214,167,60,.28) !important;
    border-radius: 28px !important;
    background: radial-gradient(circle at 96% 0%, rgba(214,167,60,.18), transparent 36%), linear-gradient(180deg, rgba(255,253,248,.96), rgba(243,237,226,.86)) !important;
    box-shadow: 0 18px 54px rgba(8,7,6,.07) !important;
}
body.sinapse-ui-v422 .sinapse-student-next-action span {
    color: var(--bio-gold-dark) !important;
    font-size: 12px !important;
    text-transform: uppercase !important;
    letter-spacing: .14em !important;
    font-weight: 950 !important;
}
body.sinapse-ui-v422 .sinapse-student-next-action h3 {
    margin: 8px 0 8px !important;
    font-family: Fraunces, Georgia, serif !important;
    letter-spacing: -.035em !important;
    color: var(--bio-text) !important;
    font-size: clamp(26px, 3vw, 40px) !important;
    line-height: 1.03 !important;
}
body.sinapse-ui-v422 .sinapse-student-next-action p {
    margin: 0 !important;
    color: var(--bio-muted) !important;
    max-width: 680px !important;
}
body.sinapse-ui-v422 .sinapse-student-next-action-buttons {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
    justify-content: flex-end !important;
}

body.sinapse-ui-v422 .sinapse-auth-form-v422 {
    position: relative !important;
    overflow: hidden !important;
    max-width: 520px !important;
    margin: 28px auto !important;
    border-radius: 34px !important;
    border: 1px solid rgba(214,167,60,.30) !important;
    background: radial-gradient(circle at 100% 0%, rgba(214,167,60,.15), transparent 36%), linear-gradient(180deg, rgba(255,253,248,.98), rgba(243,237,226,.88)) !important;
    box-shadow: 0 30px 86px rgba(8,7,6,.14) !important;
    padding: clamp(26px, 4vw, 42px) !important;
}
body.sinapse-ui-v422 .sinapse-auth-kicker {
    display: inline-flex !important;
    color: var(--bio-gold-dark) !important;
    font-size: 12px !important;
    font-weight: 950 !important;
    letter-spacing: .15em !important;
    text-transform: uppercase !important;
    margin-bottom: 10px !important;
}
body.sinapse-ui-v422 .sinapse-auth-form-v422 h2 {
    font-family: Fraunces, Georgia, serif !important;
    color: var(--bio-text) !important;
    letter-spacing: -.035em !important;
    font-size: clamp(34px, 4vw, 52px) !important;
    margin: 0 0 8px !important;
}
body.sinapse-ui-v422 .sinapse-auth-intro {
    color: var(--bio-muted) !important;
    margin: 0 0 22px !important;
    line-height: 1.6 !important;
}
body.sinapse-ui-v422 .sinapse-auth-form-v422 .sinapse-input {
    min-height: 48px !important;
    border-radius: 16px !important;
    border-color: var(--bio-border) !important;
    background: rgba(255,255,255,.86) !important;
}
body.sinapse-ui-v422 .sinapse-auth-form-v422 .sinapse-input:focus {
    border-color: var(--bio-gold) !important;
    box-shadow: 0 0 0 4px rgba(214,167,60,.16) !important;
}

@media (max-width: 900px) {
    body.sinapse-ui-v422 .sinapse-instructor-activation {
        grid-template-columns: 1fr !important;
    }
    body.sinapse-ui-v422 .sinapse-student-next-action {
        flex-direction: column !important;
        align-items: stretch !important;
    }
    body.sinapse-ui-v422 .sinapse-student-next-action-buttons {
        justify-content: flex-start !important;
    }
}
@media (max-width: 640px) {
    body.sinapse-ui-v422 .sinapse-activation-actions,
    body.sinapse-ui-v422 .sinapse-student-next-action-buttons {
        flex-direction: column !important;
    }
    body.sinapse-ui-v422 .sinapse-activation-actions .sinapse-btn,
    body.sinapse-ui-v422 .sinapse-student-next-action-buttons .sinapse-btn {
        width: 100% !important;
        justify-content: center !important;
    }
}

/* Sinapse LMS v4.0.24 — Academy Hero Brand Contrast Fix
   Corrige la cápsula blanca del título/marca dentro del hero de Mi Academia.
   No toca lógica, checkout, roles, inscripciones, comunidad ni constructor. */
body.sinapse-ui-v424 .sinapse-dashboard-hub-card .sinapse-dashboard-hub-brand {
    align-items: center !important;
    gap: 14px !important;
    margin-bottom: 16px !important;
}
body.sinapse-ui-v424 .sinapse-dashboard-hub-card .sinapse-dashboard-brand-logo {
    width: 56px !important;
    height: 56px !important;
    min-width: 56px !important;
    max-width: 56px !important;
    max-height: 56px !important;
    object-fit: contain !important;
    object-position: center !important;
    border-radius: 16px !important;
    padding: 7px !important;
    background: rgba(8,7,6,.72) !important;
    border: 1px solid rgba(214,167,60,.46) !important;
    box-shadow: 0 12px 30px rgba(0,0,0,.22), inset 0 0 0 1px rgba(255,255,255,.05) !important;
}
body.sinapse-ui-v424 .sinapse-dashboard-hub-card .sinapse-dashboard-brand-kicker {
    display: inline-flex !important;
    align-items: center !important;
    width: auto !important;
    max-width: min(100%, 360px) !important;
    padding: 7px 13px !important;
    border-radius: 999px !important;
    background: rgba(214,167,60,.14) !important;
    border: 1px solid rgba(214,167,60,.34) !important;
    color: #F3D27A !important;
    box-shadow: none !important;
    font-size: 12px !important;
    font-weight: 900 !important;
    line-height: 1.1 !important;
    letter-spacing: .14em !important;
    text-transform: uppercase !important;
    text-shadow: 0 1px 0 rgba(0,0,0,.22) !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}
body.sinapse-ui-v424 .sinapse-dashboard-hub-card .sinapse-dashboard-hub-brand .sinapse-meta {
    color: rgba(250,247,239,.66) !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
    margin-top: 7px !important;
    max-width: 420px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}
body.sinapse-ui-v424 .sinapse-dashboard-hub-card .sinapse-dashboard-hub-brand > div {
    min-width: 0 !important;
}
body.sinapse-ui-v424 .sinapse-dashboard-hub-card .sinapse-dashboard-brand-kicker,
body.sinapse-ui-v424 .sinapse-dashboard-hub-card .sinapse-dashboard-brand-kicker * {
    color: #F3D27A !important;
}

@media (max-width: 780px) {
    body.sinapse-ui-v424 .sinapse-dashboard-hub-card .sinapse-dashboard-hub-brand {
        align-items: flex-start !important;
    }
    body.sinapse-ui-v424 .sinapse-dashboard-hub-card .sinapse-dashboard-brand-logo {
        width: 48px !important;
        height: 48px !important;
        min-width: 48px !important;
        max-width: 48px !important;
        max-height: 48px !important;
        border-radius: 14px !important;
        padding: 6px !important;
    }
    body.sinapse-ui-v424 .sinapse-dashboard-hub-card .sinapse-dashboard-brand-kicker {
        max-width: 250px !important;
        font-size: 10px !important;
        letter-spacing: .11em !important;
        padding: 7px 10px !important;
    }
    body.sinapse-ui-v424 .sinapse-dashboard-hub-card .sinapse-dashboard-hub-brand .sinapse-meta {
        max-width: 250px !important;
        font-size: 12px !important;
    }
}


/* ICH Hub v2.2.1 — Palette Softening & Readability Fix
   Objetivo: retirar superficies negras en perfil/footer/hero y alinearlas con la paleta real de Ingeniería de la Calma.
   No toca lógica, permisos, reservas ni flujos. */
body.sinapse-ui-v425 {
    --ich-plum: #4C315F;
    --ich-plum-dark: #3F284F;
    --ich-plum-soft: #6D577D;
    --ich-plum-mist: #8D7A98;
    --ich-cream: #F3ECDD;
    --ich-cream-soft: #FAF6EE;
    --ich-cream-deep: #ECE2D2;
    --ich-text: #2C2231;
    --ich-muted: #6F6475;
    --ich-gold: #D4B06A;
    --ich-gold-soft: #E7C98A;
    --ich-border: rgba(76,49,95,.16);
    --ich-shadow: 0 22px 60px rgba(76,49,95,.12);
}

body.sinapse-ui-v425 .sinapse-dashboard-hub-card {
    border: 1px solid rgba(76,49,95,.18) !important;
    background:
        radial-gradient(circle at 10% 12%, rgba(212,176,106,.18), transparent 24%),
        radial-gradient(circle at 88% 14%, rgba(255,255,255,.10), transparent 26%),
        linear-gradient(135deg, var(--ich-plum) 0%, #5C426E 56%, var(--ich-plum-soft) 100%) !important;
    box-shadow: var(--ich-shadow) !important;
    color: #FAF7F2 !important;
}
body.sinapse-ui-v425 .sinapse-dashboard-hub-card .sinapse-dashboard-hub-title,
body.sinapse-ui-v425 .sinapse-dashboard-hub-card :is(h1,h2,h3,h4,h5,h6) {
    color: #FFFDF9 !important;
}
body.sinapse-ui-v425 .sinapse-dashboard-hub-card .sinapse-dashboard-hub-subtitle,
body.sinapse-ui-v425 .sinapse-dashboard-hub-card .sinapse-meta,
body.sinapse-ui-v425 .sinapse-dashboard-hub-card p {
    color: rgba(255,248,239,.82) !important;
}
body.sinapse-ui-v425 .sinapse-dashboard-hub-card .sinapse-dashboard-brand-logo {
    background: rgba(255,255,255,.10) !important;
    border: 1px solid rgba(212,176,106,.30) !important;
    box-shadow: 0 12px 28px rgba(43,31,52,.20) !important;
}
body.sinapse-ui-v425 .sinapse-dashboard-hub-card .sinapse-dashboard-brand-kicker,
body.sinapse-ui-v425 .sinapse-dashboard-hub-card .sinapse-dashboard-brand-kicker * {
    background: rgba(243,236,221,.16) !important;
    border-color: rgba(212,176,106,.26) !important;
    color: #F4DFC0 !important;
    text-shadow: none !important;
}
body.sinapse-ui-v425 .sinapse-dashboard-hub-card .sinapse-dashboard-mini-stat {
    background: rgba(250,247,242,.14) !important;
    border: 1px solid rgba(255,255,255,.16) !important;
    box-shadow: none !important;
}
body.sinapse-ui-v425 .sinapse-dashboard-hub-card .sinapse-dashboard-mini-stat strong {
    color: #F3D99E !important;
}
body.sinapse-ui-v425 .sinapse-dashboard-hub-card .sinapse-dashboard-mini-stat span {
    color: rgba(255,248,239,.82) !important;
}
body.sinapse-ui-v425 .sinapse-dashboard-hub-card .sinapse-btn-primary {
    background: linear-gradient(135deg, var(--ich-gold), var(--ich-gold-soft)) !important;
    border-color: rgba(212,176,106,.46) !important;
    color: var(--ich-text) !important;
}
body.sinapse-ui-v425 .sinapse-dashboard-hub-card .sinapse-btn-outline {
    background: rgba(255,255,255,.14) !important;
    border-color: rgba(255,255,255,.20) !important;
    color: #FFF8EF !important;
}

body.sinapse-ui-v425 .sinapse-profile-header {
    align-items: center !important;
    border: 1px solid rgba(76,49,95,.18) !important;
    background:
        radial-gradient(circle at 84% 14%, rgba(212,176,106,.16), transparent 28%),
        linear-gradient(135deg, #4C315F 0%, #5C426E 58%, #725A82 100%) !important;
    box-shadow: var(--ich-shadow) !important;
    color: #FAF7F2 !important;
}
body.sinapse-ui-v425 .sinapse-profile-header :is(h1,h2,h3,h4,h5,h6,strong) {
    color: #FFFDF9 !important;
    text-shadow: none !important;
}
body.sinapse-ui-v425 .sinapse-profile-header :is(.sinapse-profile-headline,.sinapse-profile-bio,.sinapse-meta,p,span,small) {
    color: rgba(255,248,239,.84) !important;
    text-shadow: none !important;
}
body.sinapse-ui-v425 .sinapse-profile-header .sinapse-tier-badge {
    background: rgba(243,236,221,.14) !important;
    border: 1px solid rgba(212,176,106,.28) !important;
    color: #F3D99E !important;
}
body.sinapse-ui-v425 .sinapse-profile-header .sinapse-profile-chip,
body.sinapse-ui-v425 .sinapse-profile-header .sinapse-btn,
body.sinapse-ui-v425 .sinapse-profile-header .sinapse-btn-outline {
    background: #F7F1E5 !important;
    border-color: rgba(76,49,95,.12) !important;
    color: var(--ich-text) !important;
    box-shadow: 0 8px 22px rgba(43,31,52,.10) !important;
}
body.sinapse-ui-v425 .sinapse-profile-header .sinapse-profile-chip *,
body.sinapse-ui-v425 .sinapse-profile-header .sinapse-btn *,
body.sinapse-ui-v425 .sinapse-profile-header .sinapse-btn:visited,
body.sinapse-ui-v425 .sinapse-profile-header .sinapse-profile-chip:visited {
    color: var(--ich-text) !important;
}
body.sinapse-ui-v425 .sinapse-profile-header .sinapse-avatar-lg,
body.sinapse-ui-v425 .sinapse-profile-header img#sinapse-profile-avatar {
    border-color: rgba(212,176,106,.58) !important;
    box-shadow: 0 0 0 7px rgba(243,236,221,.10), 0 18px 42px rgba(43,31,52,.16) !important;
}
body.sinapse-ui-v425 .sinapse-profile-header .sinapse-profile-stats > div,
body.sinapse-ui-v425 .sinapse-profile-stats > div {
    background: linear-gradient(180deg, #FBF7EF, #EFE5D6) !important;
    border: 1px solid rgba(76,49,95,.10) !important;
    box-shadow: 0 14px 34px rgba(43,31,52,.08) !important;
}
body.sinapse-ui-v425 .sinapse-profile-header .sinapse-profile-stats > div,
body.sinapse-ui-v425 .sinapse-profile-header .sinapse-profile-stats > div *,
body.sinapse-ui-v425 .sinapse-profile-stats > div,
body.sinapse-ui-v425 .sinapse-profile-stats > div * {
    color: var(--ich-text) !important;
    text-shadow: none !important;
}
body.sinapse-ui-v425 .sinapse-profile-header .sinapse-profile-stats > div:before,
body.sinapse-ui-v425 .sinapse-profile-stats > div:before {
    background: linear-gradient(135deg, rgba(212,176,106,.24), rgba(243,236,221,.55)) !important;
    border-color: rgba(212,176,106,.22) !important;
    color: #8A641E !important;
}
body.sinapse-ui-v425 .sinapse-profile-header .sinapse-profile-stats strong,
body.sinapse-ui-v425 .sinapse-profile-stats strong {
    color: var(--ich-text) !important;
}

body.sinapse-ui-v425 .sinapse-campus-footer-upgraded {
    width: min(1180px, calc(100% - 32px)) !important;
    margin: 34px auto 22px !important;
}
body.sinapse-ui-v425 .sinapse-campus-footer-map {
    display: grid !important;
    grid-template-columns: minmax(240px, 1.35fr) repeat(3, minmax(150px, .7fr)) !important;
    gap: clamp(22px, 3vw, 38px) !important;
    padding: clamp(24px, 3vw, 34px) !important;
    border-radius: 34px !important;
    background: linear-gradient(180deg, #F7F0E4 0%, #EFE4D5 100%) !important;
    border: 1px solid rgba(76,49,95,.14) !important;
    box-shadow: 0 22px 60px rgba(76,49,95,.10) !important;
}
body.sinapse-ui-v425 .sinapse-campus-footer-logo {
    background: radial-gradient(circle at 50% 42%, rgba(255,255,255,.66), rgba(236,226,210,.92)) !important;
    border: 1px solid rgba(76,49,95,.18) !important;
    box-shadow: 0 0 0 6px rgba(255,255,255,.44), 0 14px 28px rgba(76,49,95,.10) !important;
}
body.sinapse-ui-v425 .sinapse-campus-footer-brand-copy strong,
body.sinapse-ui-v425 .sinapse-campus-footer-col strong {
    color: var(--ich-plum-dark) !important;
}
body.sinapse-ui-v425 .sinapse-campus-footer-brand-copy small,
body.sinapse-ui-v425 .sinapse-campus-footer-brand-block p,
body.sinapse-ui-v425 .sinapse-campus-footer-col a,
body.sinapse-ui-v425 .sinapse-campus-footer-bottom,
body.sinapse-ui-v425 .sinapse-campus-footer-bottom span,
body.sinapse-ui-v425 .sinapse-campus-footer-bottom a {
    color: var(--ich-text) !important;
}
body.sinapse-ui-v425 .sinapse-campus-footer-brand-block p,
body.sinapse-ui-v425 .sinapse-campus-footer-col a,
body.sinapse-ui-v425 .sinapse-campus-footer-bottom,
body.sinapse-ui-v425 .sinapse-campus-footer-bottom span,
body.sinapse-ui-v425 .sinapse-campus-footer-bottom a {
    opacity: 1 !important;
}
body.sinapse-ui-v425 .sinapse-campus-footer-pills span {
    background: rgba(76,49,95,.06) !important;
    border: 1px solid rgba(76,49,95,.12) !important;
    color: var(--ich-plum) !important;
}
body.sinapse-ui-v425 .sinapse-campus-footer-col a:hover,
body.sinapse-ui-v425 .sinapse-campus-footer-bottom a:hover {
    color: var(--ich-plum) !important;
}
body.sinapse-ui-v425 .sinapse-campus-footer-map .sinapse-campus-footer-bottom {
    border-top: 1px solid rgba(76,49,95,.12) !important;
    padding-top: 20px !important;
}

@media (max-width: 980px) {
    body.sinapse-ui-v425 .sinapse-campus-footer-map {
        grid-template-columns: repeat(2, minmax(0,1fr)) !important;
    }
    body.sinapse-ui-v425 .sinapse-campus-footer-brand-block {
        grid-column: 1 / -1 !important;
    }
}
@media (max-width: 600px) {
    body.sinapse-ui-v425 .sinapse-campus-footer-upgraded {
        width: calc(100% - 20px) !important;
        margin: 28px auto 20px !important;
    }
    body.sinapse-ui-v425 .sinapse-campus-footer-map {
        grid-template-columns: 1fr !important;
        gap: 24px !important;
        border-radius: 26px !important;
        padding: 22px !important;
    }
    body.sinapse-ui-v425 .sinapse-profile-header {
        padding: 22px !important;
    }
}
