/**
 * Sollu Education - Student Portal & Learning Experience Stylesheet
 * Concept: Dark Luxury & Elegância (Nicho Estética, Saúde Avançada & Beleza Premium)
 * Module 2: Reset Rígido, Encapsulamento Total, Glassmorphism iOS & Zero Debug Borders
 * Version: 8.5 - Consolidated & Polished
 */

@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;600;700;800;900&family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;0,700;0,800;1,400&display=swap');

/* =============================================================================
   1. DESIGN TOKENS & PALETA DARK LUXURY
   ============================================================================= */
:root,
[data-sollu-theme="dark"],
#sollu-student-app[data-sollu-theme="dark"] {
        --sollu-bg-main: #0B0C10;
        --sollu-bg-surface: #13151B;
        --sollu-bg-card: rgba(23, 26, 34, 0.85);
        --sollu-bg-card-hover: rgba(30, 34, 45, 0.95);
        
        --sollu-accent-gold: #C5A880;
        --sollu-accent-gold-light: #E5CDB0;
        --sollu-accent-gold-dark: #9A7B54;
        --sollu-accent-glow: rgba(197, 168, 128, 0.18);
        --sollu-accent-gradient-gold: linear-gradient(135deg, #C5A880 0%, #E5CDB0 50%, #9A7B54 100%);
        --sollu-accent-gradient-gold-subtle: linear-gradient(135deg, rgba(197, 168, 128, 0.18) 0%, rgba(197, 168, 128, 0.04) 100%);
        
        --sollu-accent-ice: #8FA7BF;
        --sollu-accent-emerald: #52B788;
        --sollu-accent-rose: #DDA15E;
        --sollu-accent-danger: #E63946;

        --sollu-text-title: #FFFFFF;
        --sollu-text-body: #A0A5B5;
        --sollu-text-muted: #62687A;
        --sollu-text-gold: #C5A880;
        
        --sollu-border-glass: 1px solid rgba(255, 255, 255, 0.08);
        --sollu-border-glass-luminous: 1px solid rgba(255, 255, 255, 0.14);
        --sollu-border-gold: 1px solid rgba(197, 168, 128, 0.40);
        --sollu-border-gold-glow: 1px solid rgba(197, 168, 128, 0.70);
        
        --sollu-shadow-card: 0 10px 30px -5px rgba(0, 0, 0, 0.5);
        --sollu-shadow-hover: 0 16px 36px -5px rgba(0, 0, 0, 0.7), 0 0 20px rgba(197, 168, 128, 0.12);
        --sollu-shadow-dock: 0 20px 40px -5px rgba(0, 0, 0, 0.6);
        --sollu-shadow-gold: 0 0 20px rgba(197, 168, 128, 0.25);
        --sollu-shadow-dropdown: 0 16px 40px rgba(0, 0, 0, 0.6), 0 0 1px rgba(255, 255, 255, 0.1);
        
        --sollu-radius-sm: 8px;
        --sollu-radius-md: 14px;
        --sollu-radius-lg: 18px;
        --sollu-radius-pill: 9999px;
        
        --sollu-blur: blur(20px);
        --sollu-blur-sm: blur(12px);

        --sollu-font-sans: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
        --sollu-font-heading: 'Outfit', 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
        --sollu-font-mono: SFMono-Regular, Menlo, Monaco, Consolas, monospace;
}

[data-sollu-theme="light"],
#sollu-student-app[data-sollu-theme="light"] {
        --sollu-bg-main: #F8F7F4;
        --sollu-bg-surface: #FFFFFF;
        --sollu-bg-card: #FFFFFF;
        --sollu-bg-card-hover: #FAF9F6;
        
        --sollu-accent-gold: #A88656;
        --sollu-accent-gold-light: #C5A880;
        --sollu-accent-gold-dark: #7A5B2E;
        --sollu-accent-glow: rgba(168, 134, 86, 0.15);
        --sollu-accent-gradient-gold: linear-gradient(135deg, #A88656 0%, #C5A880 50%, #7A5B2E 100%);
        --sollu-accent-gradient-gold-subtle: linear-gradient(135deg, rgba(168, 134, 86, 0.18) 0%, rgba(168, 134, 86, 0.04) 100%);
        
        --sollu-text-title: #12141A;
        --sollu-text-body: #334155;
        --sollu-text-muted: #64748B;
        --sollu-text-gold: #7A5B2E;
        
        --sollu-border-glass: 1px solid rgba(168, 134, 86, 0.16);
        --sollu-border-glass-luminous: 1px solid rgba(168, 134, 86, 0.25);
        --sollu-border-gold: 1px solid rgba(168, 134, 86, 0.35);
        --sollu-border-gold-glow: 1px solid rgba(168, 134, 86, 0.65);
        
        --sollu-shadow-card: 0 10px 30px -5px rgba(26, 21, 15, 0.05);
        --sollu-shadow-hover: 0 15px 35px -5px rgba(26, 21, 15, 0.10), 0 0 20px rgba(168, 134, 86, 0.10);
        --sollu-shadow-dock: 0 10px 30px -5px rgba(26, 21, 15, 0.05);
        --sollu-shadow-dropdown: 0 16px 40px rgba(26, 21, 15, 0.12), 0 0 1px rgba(0, 0, 0, 0.1);
}

/* =============================================================================
   2. RESET E ENCAPSULAMENTO RIGIDO (#sollu-student-app)
   ============================================================================= */
#sollu-student-app {
        box-sizing: border-box !important;
        display: block !important;
        min-height: 100vh !important;
        width: 100% !important;
        background-color: var(--sollu-bg-main, #0B0C10) !important;
        background-image: 
                radial-gradient(ellipse at 15% 10%, rgba(197, 168, 128, 0.06) 0%, transparent 50%),
                radial-gradient(ellipse at 85% 85%, rgba(143, 167, 191, 0.04) 0%, transparent 60%) !important;
        background-attachment: fixed !important;
        color: var(--sollu-text-body, #A0A5B5) !important;
        font-family: var(--sollu-font-sans, 'Plus Jakarta Sans', -apple-system, sans-serif) !important;
        font-size: 14px !important;
        line-height: 1.5 !important;
        position: relative !important;
        overflow-x: hidden !important;
        -webkit-font-smoothing: antialiased !important;
        -moz-osx-font-smoothing: grayscale !important;
}

[data-sollu-theme="light"] #sollu-student-app,
#sollu-student-app[data-sollu-theme="light"] {
        background-color: #F8F7F4 !important;
        background-image: 
                radial-gradient(ellipse at 15% 10%, rgba(168, 134, 86, 0.05) 0%, transparent 50%),
                radial-gradient(ellipse at 85% 85%, rgba(143, 167, 191, 0.04) 0%, transparent 60%) !important;
        color: #334155 !important;
}

#sollu-student-app *,
#sollu-student-app *::before,
#sollu-student-app *::after {
        box-sizing: border-box !important;
        margin: 0;
        padding: 0;
        font-family: inherit !important;
}

/* Scrollbar Customizada */
#sollu-student-app ::-webkit-scrollbar {
        width: 6px;
        height: 6px;
}
#sollu-student-app ::-webkit-scrollbar-track {
        background: transparent;
}
#sollu-student-app ::-webkit-scrollbar-thumb {
        background: rgba(197, 168, 128, 0.25);
        border-radius: 9999px;
}
#sollu-student-app ::-webkit-scrollbar-thumb:hover {
        background: var(--sollu-accent-gold);
}

/* =============================================================================
   3. ISOLAMENTO E CONTROLE RIGIDO DE SVGS E ICONES (TRACO FINO 1.5px / 20px)
   ============================================================================= */
#sollu-student-app svg:not(.sollu-stat-sparkline) {
        vertical-align: middle;
        flex-shrink: 0;
        max-width: 100%;
}

#sollu-student-app .sollu-sidebar-nav svg,
#sollu-student-app .sollu-sidebar-footer svg,
#sollu-student-app .sollu-mobile-bottom-bar svg,
#sollu-student-app .sollu-topbar-actions svg {
        width: 20px !important;
        height: 20px !important;
        min-width: 20px !important;
        min-height: 20px !important;
        stroke: currentColor !important;
        stroke-width: 1.5 !important;
        stroke-linecap: round !important;
        stroke-linejoin: round !important;
        fill: none !important;
}

/* Regras Estritas para os Ícones do Botão de Alternar Tema */
[data-sollu-theme="dark"] .sollu-theme-icon-moon,
#sollu-student-app[data-sollu-theme="dark"] .sollu-theme-icon-moon {
        display: none !important;
}
[data-sollu-theme="dark"] .sollu-theme-icon-sun,
#sollu-student-app[data-sollu-theme="dark"] .sollu-theme-icon-sun {
        display: inline-block !important;
}
[data-sollu-theme="light"] .sollu-theme-icon-sun,
#sollu-student-app[data-sollu-theme="light"] .sollu-theme-icon-sun {
        display: none !important;
}
[data-sollu-theme="light"] .sollu-theme-icon-moon,
#sollu-student-app[data-sollu-theme="light"] .sollu-theme-icon-moon {
        display: inline-block !important;
}

#sollu-student-app .sollu-btn svg {
        width: 16px !important;
        height: 16px !important;
        min-width: 16px !important;
        min-height: 16px !important;
        flex-shrink: 0 !important;
}

#sollu-student-app .dashicons {
        font-size: 16px !important;
        width: 16px !important;
        height: 16px !important;
        line-height: 16px !important;
}

/* =============================================================================
   4. FORMULARIOS & INPUTS (DARK LUXURY)
   ============================================================================= */
#sollu-student-app input[type="text"],
#sollu-student-app input[type="email"],
#sollu-student-app input[type="password"],
#sollu-student-app input[type="tel"],
#sollu-student-app input[type="url"],
#sollu-student-app textarea,
#sollu-student-app select {
        background: #171A22 !important;
        border: 1px solid rgba(255, 255, 255, 0.10) !important;
        border-radius: var(--sollu-radius-sm) !important;
        color: var(--sollu-text-title) !important;
        padding: 12px 16px !important;
        font-size: 13.5px !important;
        width: 100% !important;
        outline: none !important;
        transition: all 0.2s ease !important;
        line-height: 1.5 !important;
}

[data-sollu-theme="light"] #sollu-student-app input[type="text"],
[data-sollu-theme="light"] #sollu-student-app input[type="email"],
[data-sollu-theme="light"] #sollu-student-app input[type="password"],
[data-sollu-theme="light"] #sollu-student-app input[type="tel"],
[data-sollu-theme="light"] #sollu-student-app input[type="url"],
[data-sollu-theme="light"] #sollu-student-app textarea,
[data-sollu-theme="light"] #sollu-student-app select {
        background: #FFFFFF !important;
        border: 1px solid rgba(0, 0, 0, 0.12) !important;
        color: #11141D !important;
}

#sollu-student-app input:focus,
#sollu-student-app textarea:focus,
#sollu-student-app select:focus {
        border-color: var(--sollu-accent-gold) !important;
        background: #1C202A !important;
        box-shadow: 0 0 0 2px rgba(197, 168, 128, 0.20) !important;
}

[data-sollu-theme="light"] #sollu-student-app input:focus,
[data-sollu-theme="light"] #sollu-student-app textarea:focus,
[data-sollu-theme="light"] #sollu-student-app select:focus {
        background: #FFFFFF !important;
        border-color: var(--sollu-accent-gold) !important;
        box-shadow: 0 0 0 2px rgba(168, 134, 86, 0.20) !important;
}

#sollu-student-app input::placeholder,
#sollu-student-app textarea::placeholder {
        color: var(--sollu-text-muted) !important;
}

#sollu-student-app .sollu-form-group {
        margin-bottom: 16px;
        display: flex;
        flex-direction: column;
        gap: 6px;
        text-align: left;
}

#sollu-student-app .sollu-form-group label {
        font-size: 12.5px;
        font-weight: 600;
        color: var(--sollu-text-body);
}

/* =============================================================================
   5. BOTOES DE ALTO PADRAO & ELIMINACAO DE BORDAS ROSAS / DEBUG
   ============================================================================= */
.sollu-btn {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 8px !important;
        padding: 10px 20px !important;
        border-radius: var(--sollu-radius-sm) !important;
        font-size: 13.5px !important;
        font-weight: 600 !important;
        cursor: pointer !important;
        border: 1px solid transparent !important;
        outline: none !important;
        text-decoration: none !important;
        transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
        line-height: 1.2 !important;
}

.sollu-btn:focus,
.sollu-btn:active {
        outline: none !important;
        box-shadow: none !important;
}

.sollu-btn-primary {
        background: var(--sollu-accent-gradient-gold) !important;
        color: #0B0C10 !important;
        box-shadow: var(--sollu-shadow-gold) !important;
        font-weight: 700 !important;
        border: 1px solid rgba(197, 168, 128, 0.5) !important;
}
.sollu-btn-primary:hover {
        transform: translateY(-2px) !important;
        box-shadow: 0 8px 25px rgba(197, 168, 128, 0.45) !important;
}

/* Botão Secundário Padronizado (Sem Bordas Rosas) */
.sollu-btn-secondary,
.sollu-section-header .sollu-btn-secondary,
.sollu-btn-open-vitrine,
.sollu-catalog-card .sollu-btn {
        background: rgba(255, 255, 255, 0.05) !important;
        border: 1px solid rgba(255, 255, 255, 0.08) !important;
        color: var(--sollu-text-title) !important;
        outline: none !important;
        box-shadow: none !important;
}

[data-sollu-theme="light"] .sollu-btn-secondary,
[data-sollu-theme="light"] .sollu-section-header .sollu-btn-secondary,
[data-sollu-theme="light"] .sollu-btn-open-vitrine,
[data-sollu-theme="light"] .sollu-catalog-card .sollu-btn {
        background: rgba(0, 0, 0, 0.04) !important;
        border: 1px solid rgba(0, 0, 0, 0.08) !important;
        color: var(--sollu-text-title) !important;
}

.sollu-btn-secondary:hover,
.sollu-section-header .sollu-btn-secondary:hover,
.sollu-btn-open-vitrine:hover,
.sollu-catalog-card .sollu-btn:hover {
        background: rgba(255, 255, 255, 0.10) !important;
        border-color: var(--sollu-accent-gold) !important;
        color: var(--sollu-accent-gold-light) !important;
        transform: translateY(-2px) !important;
}

.sollu-btn-sm { padding: 6px 14px !important; font-size: 12px !important; }
.sollu-btn-lg { padding: 14px 28px !important; font-size: 15px !important; }
.sollu-btn-block { width: 100% !important; }

/* =============================================================================
   6. SKELETON LOADER INICIAL
   ============================================================================= */
.sollu-student-skeleton {
        display: flex;
        width: 100%;
        min-height: 100vh;
        gap: 20px;
        padding: 20px;
}

.sollu-skel-sidebar {
        width: 72px;
        background: var(--sollu-bg-surface);
        border: var(--sollu-border-glass);
        border-radius: var(--sollu-radius-lg);
        padding: 20px 10px;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 20px;
}

.sollu-skel-main {
        flex: 1;
        display: flex;
        flex-direction: column;
        gap: 20px;
}

.sollu-skel-topbar {
        height: 64px;
        background: var(--sollu-bg-surface);
        border: var(--sollu-border-glass);
        border-radius: var(--sollu-radius-lg);
}

.sollu-skel-hero {
        height: 240px;
        background: var(--sollu-bg-card);
        border-radius: var(--sollu-radius-lg);
        border: var(--sollu-border-glass);
}

.sollu-skel-box {
        background: linear-gradient(90deg, rgba(255, 255, 255, 0.02) 25%, rgba(197, 168, 128, 0.06) 50%, rgba(255, 255, 255, 0.02) 75%);
        background-size: 200% 100%;
        animation: sollu-luxury-shimmer 2s infinite ease-in-out;
        border-radius: var(--sollu-radius-sm);
}

.sollu-skel-logo { height: 40px; width: 40px; border-radius: var(--sollu-radius-sm); }
.sollu-skel-user { height: 40px; width: 40px; border-radius: 50%; }
.sollu-skel-item { height: 40px; width: 40px; border-radius: var(--sollu-radius-sm); }
.sollu-skel-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.sollu-skel-card { height: 110px; border-radius: var(--sollu-radius-lg); }

@keyframes sollu-luxury-shimmer {
        0% { background-position: 200% 0; }
        100% { background-position: -200% 0; }
}

/* =============================================================================
   7. GATE DE ACESSO: LOGIN & RECUPERAÇÃO (DARK & LIGHT LUXURY MASTERPIECE)
   ============================================================================= */
.sollu-view-auth {
        display: flex;
        align-items: center;
        justify-content: center;
        min-height: 100vh;
        width: 100%;
        padding: 48px 24px;
        position: relative;
        box-sizing: border-box !important;
}

.sollu-auth-ambient-glow {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 500px;
        height: 500px;
        background: radial-gradient(circle, rgba(197, 168, 128, 0.12) 0%, rgba(168, 134, 86, 0.04) 45%, transparent 70%);
        filter: blur(50px);
        pointer-events: none;
        z-index: 0;
        border-radius: 50%;
}

.sollu-auth-card {
        background: rgba(18, 20, 26, 0.85) !important;
        backdrop-filter: blur(28px) !important;
        -webkit-backdrop-filter: blur(28px) !important;
        border: 1px solid rgba(197, 168, 128, 0.25) !important;
        border-radius: 24px !important;
        box-shadow: 0 25px 60px -15px rgba(0, 0, 0, 0.65), 0 0 35px rgba(197, 168, 128, 0.08) !important;
        width: 100% !important;
        max-width: 460px !important;
        padding: 44px 38px !important;
        text-align: center !important;
        animation: sollu-scale-in 0.35s cubic-bezier(0.16, 1, 0.3, 1) !important;
        position: relative !important;
        z-index: 1 !important;
        box-sizing: border-box !important;
}

.sollu-auth-header {
        margin-bottom: 28px !important;
}

.sollu-auth-brand-badge {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        margin-bottom: 16px !important;
}

.sollu-auth-brand-title {
        font-family: 'Outfit', -apple-system, sans-serif !important;
        font-size: 22px !important;
        font-weight: 800 !important;
        letter-spacing: -0.01em !important;
        background: linear-gradient(135deg, #E2CFB4 0%, #C5A880 50%, #A88656 100%) !important;
        -webkit-background-clip: text !important;
        background-clip: text !important;
        -webkit-text-fill-color: transparent !important;
        text-transform: capitalize !important;
}

.sollu-auth-logo {
        max-height: 52px !important;
        max-width: 220px !important;
        object-fit: contain !important;
}

.sollu-auth-header h2 {
        font-family: 'Outfit', -apple-system, sans-serif !important;
        font-size: 24px !important;
        font-weight: 700 !important;
        color: #FFFFFF !important;
        margin: 0 0 8px 0 !important;
        letter-spacing: -0.02em !important;
}

.sollu-auth-header p {
        font-family: 'Plus Jakarta Sans', -apple-system, sans-serif !important;
        font-size: 13.5px !important;
        line-height: 1.5 !important;
        color: #94A3B8 !important;
        margin: 0 !important;
}

/* ABAS DE AUTENTICAÇÃO ESTILO PILULA LUXUOSA */
.sollu-auth-tabs-wrapper {
        margin-bottom: 28px !important;
}

.sollu-auth-tabs {
        display: flex !important;
        background: rgba(255, 255, 255, 0.05) !important;
        border: 1px solid rgba(197, 168, 128, 0.18) !important;
        border-radius: 9999px !important;
        padding: 4px !important;
        gap: 4px !important;
        position: relative !important;
}

.sollu-auth-tab-btn {
        flex: 1 !important;
        padding: 10px 18px !important;
        border: none !important;
        outline: none !important;
        background: transparent !important;
        font-family: 'Plus Jakarta Sans', -apple-system, sans-serif !important;
        font-size: 13.5px !important;
        font-weight: 600 !important;
        color: #94A3B8 !important;
        border-radius: 9999px !important;
        cursor: pointer !important;
        transition: all 0.25s ease !important;
        box-shadow: none !important;
        appearance: none !important;
        -webkit-appearance: none !important;
}

.sollu-auth-tab-btn:hover {
        color: #FFFFFF !important;
}

.sollu-auth-tab-btn.sollu-tab-active {
        background: linear-gradient(135deg, #C5A880 0%, #E2CFB4 50%, #A88656 100%) !important;
        color: #0B0C10 !important;
        font-weight: 700 !important;
        box-shadow: 0 4px 14px rgba(168, 134, 86, 0.35) !important;
}

/* FORMULÁRIO DE LOGIN E RECUPERAÇÃO */
.sollu-auth-form {
        text-align: left !important;
}

.sollu-form-group {
        margin-bottom: 26px !important;
}

.sollu-form-group label {
        display: block !important;
        font-family: 'Plus Jakarta Sans', -apple-system, sans-serif !important;
        font-size: 12.5px !important;
        font-weight: 600 !important;
        color: #CBD5E1 !important;
        margin-bottom: 10px !important;
        letter-spacing: 0.02em !important;
}

.sollu-input-wrapper {
        position: relative !important;
        width: 100% !important;
}

.sollu-input-wrapper input,
.sollu-form-group input {
        width: 100% !important;
        height: 48px !important;
        padding: 0 16px !important;
        background: rgba(255, 255, 255, 0.04) !important;
        border: 1px solid rgba(255, 255, 255, 0.12) !important;
        border-radius: 12px !important;
        color: #FFFFFF !important;
        font-family: 'Plus Jakarta Sans', -apple-system, sans-serif !important;
        font-size: 14px !important;
        box-sizing: border-box !important;
        transition: all 0.25s ease !important;
        outline: none !important;
}

.sollu-input-wrapper input:focus,
.sollu-form-group input:focus {
        background: rgba(255, 255, 255, 0.07) !important;
        border-color: #C5A880 !important;
        box-shadow: 0 0 0 3.5px rgba(197, 168, 128, 0.22) !important;
}

.sollu-input-wrapper input::placeholder,
.sollu-form-group input::placeholder {
        color: #64748B !important;
        opacity: 0.8 !important;
}

.sollu-auth-options {
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        margin: 20px 0 28px 0 !important;
        font-size: 13px !important;
}

.sollu-checkbox-label {
        display: flex !important;
        align-items: center !important;
        gap: 10px !important;
        cursor: pointer !important;
        font-family: 'Plus Jakarta Sans', -apple-system, sans-serif !important;
        color: #94A3B8 !important;
        font-size: 13px !important;
        user-select: none !important;
}

.sollu-checkbox-label input[type="checkbox"] {
        width: 16px !important;
        height: 16px !important;
        accent-color: #C5A880 !important;
        cursor: pointer !important;
        border-radius: 4px !important;
}

.sollu-btn-auth-submit {
        width: 100% !important;
        height: 50px !important;
        margin-top: 28px !important;
        border: none !important;
        outline: none !important;
        border-radius: 12px !important;
        background: linear-gradient(135deg, #C5A880 0%, #E2CFB4 45%, #A88656 100%) !important;
        color: #0B0C10 !important;
        font-family: 'Plus Jakarta Sans', -apple-system, sans-serif !important;
        font-size: 14.5px !important;
        font-weight: 700 !important;
        letter-spacing: 0.02em !important;
        cursor: pointer !important;
        transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
        box-shadow: 0 8px 22px -4px rgba(168, 134, 86, 0.45) !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
}

.sollu-btn-auth-submit:hover {
        transform: translateY(-2px) !important;
        box-shadow: 0 12px 28px -4px rgba(168, 134, 86, 0.6) !important;
        filter: brightness(1.05) !important;
}

.sollu-btn-auth-submit:active {
        transform: translateY(0) !important;
}

.sollu-link-btn {
        background: none !important;
        border: none !important;
        outline: none !important;
        box-shadow: none !important;
        padding: 0 !important;
        color: var(--sollu-accent-gold) !important;
        font-family: 'Plus Jakarta Sans', -apple-system, sans-serif !important;
        font-size: 12.5px !important;
        font-weight: 600 !important;
        cursor: pointer !important;
        transition: all 0.2s ease !important;
        text-decoration: none !important;
}

.sollu-link-btn:hover {
        color: #E2CFB4 !important;
        text-decoration: underline !important;
}

.sollu-auth-feedback {
        margin-top: 18px !important;
        padding: 12px 16px !important;
        border-radius: 10px !important;
        font-size: 13px !important;
        background: rgba(230, 57, 70, 0.12) !important;
        border: 1px solid rgba(230, 57, 70, 0.30) !important;
        color: #FFFFFF !important;
        text-align: center !important;
}

/* =============================================================================
   TEMA CLARO (LIGHT LUXURY) PARA O GATE DE AUTENTICAÇÃO
   ============================================================================= */
[data-sollu-theme="light"] .sollu-auth-card,
#sollu-student-app[data-sollu-theme="light"] .sollu-auth-card {
        background: rgba(255, 255, 255, 0.96) !important;
        border: 1px solid rgba(197, 168, 128, 0.35) !important;
        box-shadow: 0 25px 60px -15px rgba(0, 0, 0, 0.10), 0 0 35px rgba(197, 168, 128, 0.15) !important;
}

[data-sollu-theme="light"] .sollu-auth-header h2,
#sollu-student-app[data-sollu-theme="light"] .sollu-auth-header h2 {
        color: #0F172A !important;
}

[data-sollu-theme="light"] .sollu-auth-header p,
#sollu-student-app[data-sollu-theme="light"] .sollu-auth-header p {
        color: #64748B !important;
}

[data-sollu-theme="light"] .sollu-auth-tabs,
#sollu-student-app[data-sollu-theme="light"] .sollu-auth-tabs {
        background: #F1F5F9 !important;
        border-color: #E2E8F0 !important;
}

[data-sollu-theme="light"] .sollu-auth-tab-btn,
#sollu-student-app[data-sollu-theme="light"] .sollu-auth-tab-btn {
        color: #64748B !important;
}

[data-sollu-theme="light"] .sollu-auth-tab-btn:hover,
#sollu-student-app[data-sollu-theme="light"] .sollu-auth-tab-btn:hover {
        color: #0F172A !important;
}

[data-sollu-theme="light"] .sollu-auth-tab-btn.sollu-tab-active,
#sollu-student-app[data-sollu-theme="light"] .sollu-auth-tab-btn.sollu-tab-active {
        background: #FFFFFF !important;
        color: #0F172A !important;
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08) !important;
}

[data-sollu-theme="light"] .sollu-form-group label,
#sollu-student-app[data-sollu-theme="light"] .sollu-form-group label {
        color: #334155 !important;
}

[data-sollu-theme="light"] .sollu-input-wrapper input,
#sollu-student-app[data-sollu-theme="light"] .sollu-input-wrapper input,
[data-sollu-theme="light"] .sollu-form-group input,
#sollu-student-app[data-sollu-theme="light"] .sollu-form-group input {
        background: #F8FAFC !important;
        border: 1.5px solid #E2E8F0 !important;
        color: #0F172A !important;
}

[data-sollu-theme="light"] .sollu-input-wrapper input:focus,
#sollu-student-app[data-sollu-theme="light"] .sollu-input-wrapper input:focus,
[data-sollu-theme="light"] .sollu-form-group input:focus,
#sollu-student-app[data-sollu-theme="light"] .sollu-form-group input:focus {
        background: #FFFFFF !important;
        border-color: #C5A880 !important;
        box-shadow: 0 0 0 3.5px rgba(197, 168, 128, 0.2) !important;
}

[data-sollu-theme="light"] .sollu-checkbox-label,
#sollu-student-app[data-sollu-theme="light"] .sollu-checkbox-label {
        color: #475569 !important;
}

/* =============================================================================
   8. ESTRUTURA PRINCIPAL (SPA SINGLE PAGE APPLICATION)
   ============================================================================= */
.sollu-student-main-layout {
        display: flex;
        flex-direction: row;
        width: 100%;
        min-height: 100vh;
        position: relative;
}

/* DOCK LATERAL ESQUERDA (DIMENSOES RIGIDAMENTE TRAVADAS EM 72px - HEIGHT 100vh) */
#sollu-student-app .sollu-dock-sidebar,
#sollu-student-app .sollu-student-sidebar {
        width: 72px !important;
        min-width: 72px !important;
        max-width: 72px !important;
        flex: 0 0 72px !important;
        flex-shrink: 0 !important;
        background: var(--sollu-bg-surface) !important;
        backdrop-filter: var(--sollu-blur) !important;
        -webkit-backdrop-filter: var(--sollu-blur) !important;
        border-right: var(--sollu-border-glass) !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: space-between !important;
        padding: 16px 0 !important;
        position: sticky !important;
        top: 0 !important;
        left: 0 !important;
        height: 100vh !important;
        min-height: 100vh !important;
        max-height: 100vh !important;
        z-index: 100 !important;
        box-shadow: var(--sollu-shadow-dock) !important;
        box-sizing: border-box !important;
}

.sollu-sidebar-brand {
        width: 44px !important;
        height: 44px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        border-radius: var(--sollu-radius-md) !important;
        background: rgba(255, 255, 255, 0.03) !important;
        border: var(--sollu-border-glass) !important;
        cursor: pointer !important;
        transition: all 0.2s ease !important;
        margin-bottom: 8px !important;
}
.sollu-sidebar-brand:hover {
        border-color: var(--sollu-border-gold) !important;
        box-shadow: 0 0 15px rgba(197, 168, 128, 0.2) !important;
}
.sollu-brand-img {
        max-height: 26px;
        max-width: 28px;
        object-fit: contain;
}
.sollu-brand-title {
        font-size: 18px;
        font-weight: 800;
        color: var(--sollu-accent-gold);
}

/* Foto de Perfil Superior na Dock (Círculo Perfeito 40px x 40px com Divisor Sutil) */
.sollu-sidebar-user-card {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        margin: 0 0 12px 0 !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
        width: 40px !important;
        padding-bottom: 16px !important;
        position: relative !important;
}

[data-sollu-theme="light"] .sollu-sidebar-user-card {
        border-bottom: 1px solid rgba(0, 0, 0, 0.08) !important;
}

.sollu-sidebar-avatar-wrap {
        width: 40px !important;
        height: 40px !important;
        min-width: 40px !important;
        min-height: 40px !important;
        max-width: 40px !important;
        max-height: 40px !important;
        border-radius: 50% !important;
        overflow: hidden !important;
        border: 2px solid var(--sollu-accent-gold) !important;
        position: relative !important;
        box-shadow: 0 0 12px rgba(197, 168, 128, 0.25) !important;
        background: #171A22 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        cursor: pointer;
}

.sollu-sidebar-avatar-wrap img,
#sollu-user-avatar {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        display: block !important;
        border-radius: 50% !important;
}

.sollu-user-streak-badge-dock {
        position: absolute;
        bottom: -4px;
        right: -4px;
        background: #0B0C10;
        border: 1px solid var(--sollu-accent-gold);
        color: var(--sollu-accent-gold-light);
        font-size: 10px;
        font-weight: 700;
        padding: 1px 5px;
        border-radius: var(--sollu-radius-pill);
        line-height: 1.2;
}

.sollu-sidebar-nav {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        gap: 10px !important;
        width: 100% !important;
        flex: 1 !important;
        justify-content: center !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        padding: 8px 0 !important;
        scrollbar-width: none !important;
        -ms-overflow-style: none !important;
}

.sollu-sidebar-nav::-webkit-scrollbar {
        display: none !important;
        width: 0 !important;
        height: 0 !important;
}

.sollu-nav-item,
.sollu-dock-item {
        width: 44px !important;
        height: 44px !important;
        min-width: 44px !important;
        min-height: 44px !important;
        border-radius: var(--sollu-radius-md) !important;
        border: 1px solid transparent !important;
        background: transparent !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        color: var(--sollu-text-muted) !important;
        cursor: pointer !important;
        position: relative !important;
        transition: all 0.2s ease !important;
        padding: 0 !important;
        outline: none !important;
}

.sollu-nav-item:hover,
.sollu-dock-item:hover {
        background: rgba(255, 255, 255, 0.05) !important;
        color: var(--sollu-text-title) !important;
        border-color: var(--sollu-border-glass) !important;
        transform: translateY(-1px);
}

.sollu-nav-item.sollu-nav-active,
.sollu-dock-item.sollu-nav-active {
        background: rgba(197, 168, 128, 0.14) !important;
        color: var(--sollu-accent-gold-light) !important;
        border: var(--sollu-border-gold) !important;
        box-shadow: 0 0 16px rgba(197, 168, 128, 0.20) !important;
}

.sollu-nav-badge {
        position: absolute;
        top: 6px;
        right: 6px;
        min-width: 16px;
        height: 16px;
        padding: 0 4px;
        background: var(--sollu-accent-gold);
        color: #0B0C10;
        font-size: 10px;
        font-weight: 700;
        border-radius: var(--sollu-radius-pill);
        display: flex;
        align-items: center;
        justify-content: center;
}

/* Rodapé da Dock (Tema & Sair) */
.sollu-sidebar-footer {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        gap: 10px !important;
        width: 100% !important;
}

.sollu-btn-theme-toggle,
.sollu-btn-logout {
        width: 44px !important;
        height: 44px !important;
        min-width: 44px !important;
        min-height: 44px !important;
        border-radius: var(--sollu-radius-md) !important;
        background: transparent !important;
        border: 1px solid transparent !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        color: var(--sollu-text-muted) !important;
        cursor: pointer !important;
        text-decoration: none !important;
        transition: all 0.2s ease !important;
        padding: 0 !important;
        outline: none !important;
}

.sollu-btn-theme-toggle:hover {
        background: rgba(197, 168, 128, 0.10) !important;
        border-color: var(--sollu-border-gold) !important;
        color: var(--sollu-accent-gold) !important;
}

.sollu-btn-logout:hover {
        background: rgba(230, 57, 70, 0.12) !important;
        border-color: rgba(230, 57, 70, 0.30) !important;
        color: var(--sollu-accent-danger) !important;
}

/* =============================================================================
   9. AREA PRINCIPAL DE CONTEUDO & TOPBAR (HEIGHT 64px)
   ============================================================================= */
.sollu-student-content {
        flex: 1 !important;
        display: flex !important;
        flex-direction: column !important;
        overflow-y: auto !important;
        padding: 24px 32px !important;
        min-width: 0 !important;
        width: calc(100% - 72px) !important;
}

.sollu-student-topbar {
        height: 64px !important;
        min-height: 64px !important;
        max-height: 64px !important;
        background: var(--sollu-bg-surface) !important;
        backdrop-filter: var(--sollu-blur) !important;
        -webkit-backdrop-filter: var(--sollu-blur) !important;
        border: var(--sollu-border-glass) !important;
        border-radius: var(--sollu-radius-lg) !important;
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        padding: 0 20px !important;
        margin-bottom: 24px !important;
        box-shadow: var(--sollu-shadow-card) !important;
        position: relative !important;
        z-index: 100 !important;
        flex-shrink: 0 !important;
}

[data-sollu-theme="light"] .sollu-student-topbar {
        background: rgba(255, 255, 255, 0.92) !important;
        border: 1px solid rgba(168, 134, 86, 0.15) !important;
        box-shadow: 0 10px 30px -5px rgba(26, 21, 15, 0.05) !important;
}

.sollu-topbar-search {
        display: flex !important;
        align-items: center !important;
        gap: 10px !important;
        background: rgba(11, 12, 16, 0.60) !important;
        border: var(--sollu-border-glass) !important;
        border-radius: var(--sollu-radius-pill) !important;
        padding: 0 16px !important;
        height: 40px !important;
        width: 100% !important;
        max-width: 380px !important;
        transition: all 0.2s ease !important;
}

[data-sollu-theme="light"] .sollu-topbar-search {
        background: rgba(0, 0, 0, 0.03) !important;
        border: 1px solid rgba(0, 0, 0, 0.08) !important;
}

.sollu-topbar-search:focus-within {
        border-color: var(--sollu-border-gold) !important;
        box-shadow: 0 0 0 3px rgba(197, 168, 128, 0.15) !important;
}

[data-sollu-theme="light"] .sollu-topbar-search:focus-within {
        background: #FFFFFF !important;
        border-color: var(--sollu-accent-gold) !important;
        box-shadow: 0 0 0 3px rgba(168, 134, 86, 0.15) !important;
}

#sollu-student-app .sollu-topbar-search input,
#sollu-student-app .sollu-topbar-search input[type="text"],
#sollu-student-app input#sollu-global-search-input {
        border: none !important;
        background: transparent !important;
        outline: none !important;
        font-size: 13px !important;
        color: var(--sollu-text-title) !important;
        padding: 0 !important;
        width: 100% !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        height: 100% !important;
}

.sollu-topbar-actions {
        display: flex !important;
        align-items: center !important;
        gap: 12px !important;
        position: relative !important;
}

.sollu-topbar-btn-notif,
.sollu-topbar-theme-toggle {
        width: 40px !important;
        height: 40px !important;
        min-width: 40px !important;
        min-height: 40px !important;
        border-radius: var(--sollu-radius-pill) !important;
        background: rgba(255, 255, 255, 0.03) !important;
        border: 1px solid rgba(255, 255, 255, 0.08) !important;
        cursor: pointer !important;
        position: relative !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        color: var(--sollu-text-body) !important;
        transition: all 0.2s ease !important;
        padding: 0 !important;
        outline: none !important;
}

/* O botão de tema na Topbar é exclusivo para Celular/Tablet (no Desktop fica na barra lateral) */
@media (min-width: 901px) {
        .sollu-topbar-theme-toggle {
                display: none !important;
        }
}

@media (max-width: 900px) {
        .sollu-topbar-theme-toggle {
                display: flex !important;
        }
}

[data-sollu-theme="light"] .sollu-topbar-btn-notif,
[data-sollu-theme="light"] .sollu-topbar-theme-toggle,
#sollu-student-app[data-sollu-theme="light"] .sollu-topbar-btn-notif,
#sollu-student-app[data-sollu-theme="light"] .sollu-topbar-theme-toggle {
        background: rgba(0, 0, 0, 0.03) !important;
        border: 1px solid rgba(0, 0, 0, 0.08) !important;
        color: #1E293B !important;
}

.sollu-topbar-btn-notif:hover,
.sollu-topbar-theme-toggle:hover {
        border-color: var(--sollu-accent-gold) !important;
        color: var(--sollu-accent-gold) !important;
        background: rgba(197, 168, 128, 0.10) !important;
        transform: translateY(-1px);
}

.sollu-topbar-badge {
        position: absolute;
        top: 8px;
        right: 8px;
        width: 8px;
        height: 8px;
        background: var(--sollu-accent-gold);
        border-radius: 50%;
        box-shadow: 0 0 8px var(--sollu-accent-gold);
}

/* User Capsule & Floating Dropdown (Nome e Sobrenome sem quebras) */
.sollu-topbar-user-dropdown-wrap,
.sollu-topbar-user-capsule-wrap {
        position: relative !important;
        display: inline-block !important;
}

.sollu-topbar-user-capsule {
        display: inline-flex !important;
        align-items: center !important;
        gap: 10px !important;
        padding: 4px 14px 4px 6px !important;
        height: 42px !important;
        background: rgba(255, 255, 255, 0.05) !important;
        backdrop-filter: var(--sollu-blur-sm) !important;
        -webkit-backdrop-filter: var(--sollu-blur-sm) !important;
        border: 1px solid rgba(197, 168, 128, 0.30) !important;
        border-radius: var(--sollu-radius-pill) !important;
        cursor: pointer !important;
        transition: all 0.2s ease !important;
        outline: none !important;
        text-decoration: none !important;
        color: #FFFFFF !important;
}

.sollu-topbar-user-capsule:hover {
        background: rgba(197, 168, 128, 0.12) !important;
        border-color: var(--sollu-accent-gold) !important;
        box-shadow: 0 0 16px rgba(197, 168, 128, 0.20) !important;
}

[data-sollu-theme="light"] .sollu-topbar-user-capsule,
#sollu-student-app[data-sollu-theme="light"] .sollu-topbar-user-capsule {
        background: #FFFFFF !important;
        border: 1px solid rgba(168, 134, 86, 0.25) !important;
        color: #12141A !important;
        box-shadow: 0 2px 10px rgba(0, 0, 0, 0.04) !important;
}

[data-sollu-theme="light"] .sollu-topbar-user-capsule:hover,
#sollu-student-app[data-sollu-theme="light"] .sollu-topbar-user-capsule:hover {
        background: rgba(168, 134, 86, 0.08) !important;
        border-color: #7A5B2E !important;
        box-shadow: 0 4px 14px rgba(168, 134, 86, 0.15) !important;
}

.sollu-topbar-avatar,
.sollu-topbar-avatar-wrap {
        width: 32px !important;
        height: 32px !important;
        min-width: 32px !important;
        min-height: 32px !important;
        max-width: 32px !important;
        max-height: 32px !important;
        border-radius: 50% !important;
        overflow: hidden !important;
        border: 1.5px solid var(--sollu-accent-gold) !important;
        flex-shrink: 0 !important;
        background: #171A22 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        color: var(--sollu-accent-gold-light) !important;
        font-size: 11.5px !important;
        font-weight: 700 !important;
        letter-spacing: 0.5px !important;
}

[data-sollu-theme="light"] .sollu-topbar-avatar,
#sollu-student-app[data-sollu-theme="light"] .sollu-topbar-avatar,
[data-sollu-theme="light"] .sollu-topbar-avatar-wrap,
#sollu-student-app[data-sollu-theme="light"] .sollu-topbar-avatar-wrap {
        background: #F8F7F4 !important;
        border: 1.5px solid #A88656 !important;
        color: #7A5B2E !important;
}

.sollu-topbar-avatar img,
.sollu-topbar-avatar-wrap img,
#sollu-topbar-avatar {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        display: block !important;
        border-radius: 50% !important;
}

.sollu-topbar-username,
.sollu-topbar-user-name {
        font-size: 13.5px !important;
        font-weight: 600 !important;
        color: inherit !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        max-width: 200px !important;
}

.sollu-topbar-chevron,
.sollu-dropdown-caret {
        width: 14px !important;
        height: 14px !important;
        min-width: 14px !important;
        min-height: 14px !important;
        stroke: var(--sollu-accent-gold) !important;
        stroke-width: 2 !important;
        transition: transform 0.2s ease !important;
        flex-shrink: 0 !important;
}

[data-sollu-theme="light"] .sollu-topbar-chevron,
#sollu-student-app[data-sollu-theme="light"] .sollu-topbar-chevron {
        stroke: #7A5B2E !important;
}

/* Dropdown Flutuante Elegante */
.sollu-user-dropdown-menu,
.sollu-profile-dropdown-menu {
        position: absolute !important;
        top: calc(100% + 8px) !important;
        right: 0 !important;
        z-index: 1000 !important;
        min-width: 240px !important;
        background: #171A22 !important;
        backdrop-filter: blur(20px) !important;
        -webkit-backdrop-filter: blur(20px) !important;
        border: 1px solid rgba(255, 255, 255, 0.08) !important;
        border-radius: 14px !important;
        box-shadow: var(--sollu-shadow-dropdown) !important;
        padding: 8px !important;
        animation: sollu-fade-in 0.2s ease !important;
        box-sizing: border-box !important;
}

.sollu-user-dropdown-menu.is-active,
.sollu-profile-dropdown-menu.is-active {
        opacity: 1 !important;
        visibility: visible !important;
        display: block !important;
        transform: translateY(0) !important;
}

[data-sollu-theme="light"] .sollu-user-dropdown-menu,
[data-sollu-theme="light"] .sollu-profile-dropdown-menu {
        background: #FFFFFF !important;
        border-color: rgba(0, 0, 0, 0.10) !important;
        box-shadow: 0 16px 40px rgba(0, 0, 0, 0.14), 0 0 1px rgba(0, 0, 0, 0.1) !important;
}

.sollu-user-dropdown-header {
        padding: 10px 12px;
        display: flex;
        flex-direction: column;
        gap: 2px;
}
.sollu-user-dropdown-header strong {
        font-size: 14px;
        color: var(--sollu-text-title);
}
.sollu-user-dropdown-header span {
        font-size: 12px;
        color: var(--sollu-text-muted);
        word-break: break-all;
}

.sollu-dropdown-divider {
        height: 1px;
        background: var(--sollu-border-glass);
        margin: 6px 0;
}

.sollu-dropdown-item {
        display: flex !important;
        align-items: center !important;
        gap: 10px !important;
        width: 100% !important;
        padding: 9px 12px !important;
        border: none !important;
        background: transparent !important;
        border-radius: var(--sollu-radius-sm) !important;
        color: var(--sollu-text-body) !important;
        font-size: 13px !important;
        font-weight: 500 !important;
        cursor: pointer !important;
        text-decoration: none !important;
        transition: all 0.2s ease !important;
        text-align: left !important;
        outline: none !important;
}
.sollu-dropdown-item:hover {
        background: rgba(197, 168, 128, 0.12) !important;
        color: var(--sollu-accent-gold-light) !important;
}
.sollu-dropdown-item-danger:hover {
        background: rgba(230, 57, 70, 0.12) !important;
        color: var(--sollu-accent-danger) !important;
}

.sollu-views-viewport {
        flex: 1;
        overflow-y: auto;
}

/* =============================================================================
   10. VIEW 1: HERO "CONTINUAR ASSISTINDO" (DARK LUXURY BANNER)
   ============================================================================= */
.sollu-hero-continue-card {
        position: relative !important;
        background: #13151B !important;
        border: 1px solid rgba(255, 255, 255, 0.08) !important;
        border-radius: 20px !important;
        overflow: hidden !important;
        margin-bottom: 28px !important;
        box-shadow: 0 14px 40px -10px rgba(0, 0, 0, 0.6) !important;
        backdrop-filter: blur(20px) !important;
        -webkit-backdrop-filter: blur(20px) !important;
}

[data-sollu-theme="light"] .sollu-hero-continue-card {
        background: #FFFFFF !important;
        border-color: rgba(0, 0, 0, 0.08) !important;
        box-shadow: 0 14px 35px -10px rgba(0, 0, 0, 0.08) !important;
}

.sollu-hero-bg-backdrop {
        position: absolute !important;
        inset: 0 !important;
        background-size: cover !important;
        background-position: center !important;
        filter: blur(35px) brightness(0.25) !important;
        opacity: 0.45 !important;
        transform: scale(1.1) !important;
        pointer-events: none !important;
}

[data-sollu-theme="light"] .sollu-hero-bg-backdrop {
        filter: blur(35px) brightness(0.85) !important;
        opacity: 0.20 !important;
}

.sollu-hero-overlay {
        position: absolute !important;
        inset: 0 !important;
        background: linear-gradient(90deg, rgba(11, 12, 16, 0.85) 0%, rgba(19, 21, 27, 0.60) 100%) !important;
        pointer-events: none !important;
}

[data-sollu-theme="light"] .sollu-hero-overlay {
        background: linear-gradient(90deg, rgba(255, 255, 255, 0.90) 0%, rgba(244, 246, 249, 0.70) 100%) !important;
}

.sollu-hero-content-wrap {
        position: relative !important;
        z-index: 2 !important;
        display: flex !important;
        align-items: center !important;
        gap: 28px !important;
        padding: 24px 28px !important;
}

@media (max-width: 768px) {
        .sollu-hero-content-wrap {
                flex-direction: column !important;
                align-items: flex-start !important;
                gap: 18px !important;
                padding: 20px !important;
        }
}

.sollu-hero-thumb-wrap {
        width: 240px !important;
        height: 135px !important;
        aspect-ratio: 16 / 9 !important;
        border-radius: 14px !important;
        overflow: hidden !important;
        position: relative !important;
        flex-shrink: 0 !important;
        border: 1px solid rgba(197, 168, 128, 0.35) !important;
        box-shadow: 0 10px 25px rgba(0, 0, 0, 0.6) !important;
        transition: transform 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease !important;
}

@media (max-width: 768px) {
        .sollu-hero-thumb-wrap {
                width: 100% !important;
                height: auto !important;
                max-height: 200px !important;
        }
}

.sollu-hero-thumb-wrap:hover {
        transform: scale(1.02) !important;
        border-color: #C5A880 !important;
        box-shadow: 0 12px 30px rgba(197, 168, 128, 0.25) !important;
}

.sollu-hero-thumb {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        display: block !important;
        transition: transform 0.4s ease !important;
}

.sollu-hero-thumb-wrap:hover .sollu-hero-thumb {
        transform: scale(1.05) !important;
}

.sollu-hero-play-badge {
        position: absolute !important;
        inset: 0 !important;
        background: rgba(0, 0, 0, 0.35) !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        transition: background 0.2s ease !important;
}

.sollu-hero-thumb-wrap:hover .sollu-hero-play-badge {
        background: rgba(0, 0, 0, 0.15) !important;
}

.sollu-hero-play-icon {
        width: 44px !important;
        height: 44px !important;
        min-width: 44px !important;
        min-height: 44px !important;
        border-radius: 50% !important;
        background: linear-gradient(135deg, #C5A880 0%, #E5CDB0 50%, #9A7B54 100%) !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        color: #0B0C10 !important;
        box-shadow: 0 4px 15px rgba(197, 168, 128, 0.45) !important;
        transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}

.sollu-hero-thumb-wrap:hover .sollu-hero-play-icon {
        transform: scale(1.10) !important;
        box-shadow: 0 6px 20px rgba(197, 168, 128, 0.60) !important;
}

.sollu-hero-play-icon svg {
        width: 18px !important;
        height: 18px !important;
        min-width: 18px !important;
        min-height: 18px !important;
        fill: #0B0C10 !important;
        stroke: none !important;
        margin-left: 2px !important;
}

.sollu-hero-info {
        flex: 1 !important;
        min-width: 0 !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: center !important;
}

.sollu-hero-tag-pill {
        display: inline-flex !important;
        align-items: center !important;
        gap: 6px !important;
        padding: 4px 12px !important;
        border-radius: 9999px !important;
        background: rgba(197, 168, 128, 0.12) !important;
        border: 1px solid rgba(197, 168, 128, 0.35) !important;
        color: #E5CDB0 !important;
        font-size: 11px !important;
        font-weight: 700 !important;
        letter-spacing: 0.06em !important;
        text-transform: uppercase !important;
        margin-bottom: 8px !important;
        width: fit-content !important;
}

[data-sollu-theme="light"] .sollu-hero-tag-pill {
        background: rgba(168, 134, 86, 0.12) !important;
        border-color: rgba(168, 134, 86, 0.35) !important;
        color: #7A5B2E !important;
}

.sollu-hero-title {
        font-size: 20px !important;
        font-weight: 700 !important;
        color: #FFFFFF !important;
        margin: 0 0 6px 0 !important;
        line-height: 1.25 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
}

[data-sollu-theme="light"] .sollu-hero-title {
        color: #11141D !important;
}

.sollu-hero-course-chip {
        font-size: 13px !important;
        color: #A0A5B5 !important;
        display: flex !important;
        align-items: center !important;
        gap: 8px !important;
        margin-bottom: 14px !important;
}

[data-sollu-theme="light"] .sollu-hero-course-chip {
        color: #4A5568 !important;
}

.sollu-hero-course-chip strong {
        color: #FFFFFF !important;
        font-weight: 600 !important;
}

[data-sollu-theme="light"] .sollu-hero-course-chip strong {
        color: #11141D !important;
}

.sollu-hero-progress-track {
        width: 100% !important;
        max-width: 480px !important;
        height: 6px !important;
        background: rgba(255, 255, 255, 0.08) !important;
        border-radius: 9999px !important;
        overflow: hidden !important;
        margin-bottom: 16px !important;
}

[data-sollu-theme="light"] .sollu-hero-progress-track {
        background: rgba(0, 0, 0, 0.08) !important;
}

.sollu-hero-progress-fill {
        height: 100% !important;
        background: linear-gradient(135deg, #C5A880 0%, #E5CDB0 50%, #9A7B54 100%) !important;
        border-radius: 9999px !important;
        transition: width 0.4s ease !important;
}

.sollu-hero-actions {
        display: flex !important;
        align-items: center !important;
        gap: 12px !important;
}

.sollu-btn-hero-resume {
        padding: 10px 22px !important;
        font-size: 13.5px !important;
        font-weight: 700 !important;
        border-radius: 10px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 8px !important;
        background: linear-gradient(135deg, #C5A880 0%, #E5CDB0 50%, #9A7B54 100%) !important;
        color: #0B0C10 !important;
        border: 1px solid rgba(197, 168, 128, 0.50) !important;
        box-shadow: 0 4px 15px rgba(197, 168, 128, 0.30) !important;
        cursor: pointer !important;
        text-decoration: none !important;
        transition: all 0.2s ease !important;
        outline: none !important;
        line-height: 1.2 !important;
}

.sollu-btn-hero-resume svg {
        width: 14px !important;
        height: 14px !important;
        min-width: 14px !important;
        min-height: 14px !important;
        fill: #0B0C10 !important;
        stroke: none !important;
}

.sollu-btn-hero-resume:hover {
        transform: translateY(-2px) !important;
        box-shadow: 0 8px 25px rgba(197, 168, 128, 0.50) !important;
}

.sollu-hero-quick-metrics {
        position: relative !important;
        z-index: 2 !important;
        display: flex !important;
        align-items: center !important;
        gap: 16px !important;
        padding: 12px 28px !important;
        background: rgba(11, 12, 16, 0.50) !important;
        border-top: 1px solid rgba(255, 255, 255, 0.06) !important;
        font-size: 12.5px !important;
}

[data-sollu-theme="light"] .sollu-hero-quick-metrics {
        background: rgba(0, 0, 0, 0.03) !important;
        border-top-color: rgba(0, 0, 0, 0.06) !important;
}

.sollu-quick-metric-item {
        display: flex !important;
        align-items: center !important;
        gap: 6px !important;
        color: #8F9CAE !important;
}

[data-sollu-theme="light"] .sollu-quick-metric-item {
        color: #64748B !important;
}

.sollu-quick-metric-item strong {
        color: #FFFFFF !important;
        font-weight: 600 !important;
}

[data-sollu-theme="light"] .sollu-quick-metric-item strong {
        color: #11141D !important;
}

/* =============================================================================
   11. METRICAS & GAMIFICACAO EM GRID (DASHBOARD)
   ============================================================================= */
.sollu-student-stats-row {
        display: grid !important;
        grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)) !important;
        gap: 20px !important;
        margin-bottom: 24px !important;
}

.sollu-student-stat-card {
        background: var(--sollu-bg-card) !important;
        backdrop-filter: var(--sollu-blur) !important;
        -webkit-backdrop-filter: var(--sollu-blur) !important;
        border: var(--sollu-border-glass) !important;
        border-radius: 18px !important;
        padding: 18px 20px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        box-shadow: var(--sollu-shadow-card) !important;
        transition: all 0.25s ease !important;
        min-width: 0 !important;
        overflow: hidden !important;
        position: relative !important;
}

.sollu-student-stat-card:hover {
        transform: translateY(-2px);
        border-color: var(--sollu-border-gold);
        box-shadow: var(--sollu-shadow-hover);
}

.sollu-stat-left-side {
        display: flex !important;
        align-items: center !important;
        gap: 14px !important;
        min-width: 0 !important;
        flex: 1 !important;
}

.sollu-stat-icon-wrap {
        width: 44px !important;
        height: 44px !important;
        min-width: 44px !important;
        min-height: 44px !important;
        border-radius: 12px !important;
        background: rgba(197, 168, 128, 0.10) !important;
        border: 1px solid rgba(197, 168, 128, 0.30) !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        color: var(--sollu-accent-gold) !important;
        flex-shrink: 0 !important;
}

.sollu-stat-icon-wrap svg {
        width: 22px !important;
        height: 22px !important;
        min-width: 22px !important;
        min-height: 22px !important;
        stroke: currentColor !important;
        stroke-width: 1.75 !important;
        fill: none !important;
}

.sollu-stat-icon-wrap.stat-hours {
        background: rgba(143, 167, 191, 0.10) !important;
        border-color: rgba(143, 167, 191, 0.30) !important;
        color: var(--sollu-accent-ice) !important;
}

.sollu-stat-icon-wrap.stat-certs {
        background: rgba(82, 183, 136, 0.10) !important;
        border-color: rgba(82, 183, 136, 0.30) !important;
        color: var(--sollu-accent-emerald) !important;
}

.sollu-stat-texts {
        display: flex !important;
        flex-direction: column !important;
        min-width: 0 !important;
        gap: 2px !important;
}

.sollu-stat-label {
        font-size: 11.5px !important;
        font-weight: 600 !important;
        color: var(--sollu-text-muted) !important;
        text-transform: uppercase !important;
        letter-spacing: 0.04em !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
}

.sollu-stat-value {
        font-size: 20px !important;
        font-weight: 700 !important;
        color: var(--sollu-text-title) !important;
        line-height: 1.2 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
}

.sollu-stat-right-side {
        width: 70px !important;
        height: 32px !important;
        flex-shrink: 0 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: flex-end !important;
}

.sollu-stat-sparkline {
        width: 70px !important;
        height: 30px !important;
        display: block !important;
}

/* =============================================================================
   12. GALERIA DE CURSOS & ESPECIALIZAÇÕES (ESTILO VITRINE DARK LUXURY - RESPIRO & CONFORTO)
   ============================================================================= */
.sollu-courses-header-wrapper {
        margin-bottom: 24px;
}

.sollu-courses-view-header {
        display: flex !important;
        justify-content: space-between !important;
        align-items: flex-start !important;
        margin-bottom: 20px !important;
        gap: 20px !important;
}

.sollu-courses-view-header h2 {
        font-family: var(--sollu-font-heading), var(--sollu-font-sans) !important;
        font-size: 32px !important;
        font-weight: 800 !important;
        letter-spacing: -0.025em !important;
        line-height: 1.25 !important;
        margin: 0 0 8px 0 !important;
        color: var(--sollu-text-title) !important;
}

.sollu-courses-view-header p {
        font-family: var(--sollu-font-sans) !important;
        font-size: 15px !important;
        font-weight: 400 !important;
        line-height: 1.6 !important;
        color: var(--sollu-text-muted) !important;
        margin: 0 !important;
}

.sollu-courses-header-pill {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        background: rgba(197, 168, 128, 0.10);
        border: 1px solid rgba(197, 168, 128, 0.25);
        padding: 6px 14px;
        border-radius: var(--sollu-radius-pill);
        font-family: var(--sollu-font-heading), var(--sollu-font-sans) !important;
        font-size: 11.5px;
        font-weight: 700;
        color: var(--sollu-accent-gold-light);
        letter-spacing: 0.08em;
        text-transform: uppercase;
        margin-bottom: 12px;
}

.sollu-courses-header-pill svg {
        color: var(--sollu-accent-gold);
}

.sollu-courses-counter-badge {
        display: inline-flex;
        align-items: center;
        padding: 8px 18px;
        border-radius: var(--sollu-radius-pill);
        background: rgba(197, 168, 128, 0.08);
        border: 1px solid rgba(197, 168, 128, 0.25);
        color: var(--sollu-accent-gold-light);
        font-family: var(--sollu-font-sans) !important;
        font-size: 13px;
        font-weight: 700;
        letter-spacing: 0.02em;
        white-space: nowrap;
}

/* Barra Fluida de Filtros, Pesquisa & Ordenação */
.sollu-courses-toolbar {
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        gap: 20px !important;
        flex-wrap: wrap !important;
        background: rgba(19, 21, 27, 0.70);
        backdrop-filter: var(--sollu-blur);
        -webkit-backdrop-filter: var(--sollu-blur);
        border: 1px solid rgba(255, 255, 255, 0.08);
        border-radius: var(--sollu-radius-pill) !important;
        padding: 12px 18px !important;
        margin-top: 20px !important;
        margin-bottom: 44px !important;
        box-shadow: var(--sollu-shadow-card);
}

/* Filtros por Pílula (Segmented Control) */
.sollu-filter-segmented {
        display: inline-flex !important;
        align-items: center !important;
        background: rgba(11, 12, 16, 0.75);
        border: 1px solid rgba(255, 255, 255, 0.06);
        padding: 5px 6px !important;
        border-radius: var(--sollu-radius-pill) !important;
        gap: 6px !important;
        flex-wrap: wrap !important;
}

.sollu-segment-btn {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 7px !important;
        padding: 9px 20px !important;
        border-radius: var(--sollu-radius-pill) !important;
        border: 1px solid transparent !important;
        background: transparent !important;
        font-family: var(--sollu-font-sans) !important;
        font-size: 13.5px !important;
        font-weight: 600 !important;
        color: var(--sollu-text-body) !important;
        cursor: pointer !important;
        transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
        outline: none !important;
        line-height: 1.2 !important;
        user-select: none !important;
        box-shadow: none !important;
        letter-spacing: -0.01em !important;
}

.sollu-segment-btn:hover {
        color: #FFFFFF !important;
        background: rgba(255, 255, 255, 0.06) !important;
}

.sollu-segment-btn.sollu-segment-active {
        background: rgba(197, 168, 128, 0.22) !important;
        color: #FFFFFF !important;
        border: 1px solid rgba(197, 168, 128, 0.50) !important;
        box-shadow: 0 4px 16px rgba(197, 168, 128, 0.22) !important;
}

.sollu-fav-count-pill {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-width: 19px;
        height: 19px;
        padding: 0 5px;
        background: var(--sollu-accent-gold);
        color: #0B0C10;
        font-family: var(--sollu-font-sans) !important;
        font-size: 10.5px;
        font-weight: 800;
        border-radius: var(--sollu-radius-pill);
        line-height: 1;
}

/* Controles de Busca e Ordenação */
.sollu-courses-toolbar-actions {
        display: flex !important;
        align-items: center !important;
        gap: 14px !important;
        flex-wrap: wrap !important;
}

.sollu-courses-search-wrap {
        display: flex !important;
        align-items: center !important;
        background: rgba(11, 12, 16, 0.75);
        border: 1px solid rgba(255, 255, 255, 0.08);
        border-radius: var(--sollu-radius-pill) !important;
        padding: 0 20px !important;
        height: 44px !important;
        width: 290px !important;
        position: relative !important;
        transition: all 0.2s ease !important;
        box-sizing: border-box !important;
}

.sollu-courses-search-wrap:focus-within {
        border-color: var(--sollu-border-gold) !important;
        box-shadow: 0 0 0 3px rgba(197, 168, 128, 0.18) !important;
        width: 315px !important;
}

.sollu-courses-search-icon {
        color: #8A8F9E !important;
        flex-shrink: 0 !important;
        margin: 0 10px 0 0 !important;
        width: 16px !important;
        height: 16px !important;
}

#sollu-student-app .sollu-courses-search-wrap input,
#sollu-student-app input#sollu-courses-search-input {
        border: none !important;
        background: transparent !important;
        outline: none !important;
        font-family: var(--sollu-font-sans) !important;
        font-size: 13.5px !important;
        color: var(--sollu-text-title) !important;
        padding: 0 !important;
        width: 100% !important;
        height: 100% !important;
        box-shadow: none !important;
}

#sollu-student-app input#sollu-courses-search-input::placeholder {
        color: var(--sollu-text-muted) !important;
        font-family: var(--sollu-font-sans) !important;
        font-size: 13.5px !important;
}

.sollu-courses-search-clear {
        border: none !important;
        background: rgba(255, 255, 255, 0.12) !important;
        color: var(--sollu-text-muted) !important;
        border-radius: 50% !important;
        width: 20px !important;
        height: 20px !important;
        font-size: 11px !important;
        cursor: pointer !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 0 !important;
        margin: 0 0 0 8px !important;
        flex-shrink: 0 !important;
        transition: all 0.2s ease !important;
}

.sollu-courses-search-clear:hover {
        background: rgba(230, 57, 70, 0.35) !important;
        color: #FFFFFF !important;
}

/* Seletor de Ordenação */
.sollu-courses-sort-wrap {
        display: flex !important;
        align-items: center !important;
        gap: 8px !important;
        background: rgba(11, 12, 16, 0.75);
        border: 1px solid rgba(255, 255, 255, 0.08);
        border-radius: var(--sollu-radius-pill) !important;
        padding: 0 20px !important;
        height: 44px !important;
        box-sizing: border-box !important;
}

.sollu-courses-sort-label {
        display: inline-flex !important;
        align-items: center !important;
        gap: 6px !important;
        font-family: var(--sollu-font-sans) !important;
        font-size: 13px !important;
        font-weight: 600 !important;
        color: var(--sollu-text-muted) !important;
        white-space: nowrap !important;
        margin: 0 !important;
}

.sollu-courses-sort-label svg {
        color: var(--sollu-accent-gold) !important;
}

#sollu-student-app select.sollu-courses-sort-select {
        background: transparent !important;
        border: none !important;
        color: var(--sollu-text-title) !important;
        font-family: var(--sollu-font-sans) !important;
        font-size: 13.5px !important;
        font-weight: 700 !important;
        padding: 0 26px 0 6px !important;
        outline: none !important;
        box-shadow: none !important;
        cursor: pointer !important;
        appearance: none !important;
        -webkit-appearance: none !important;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%23C5A880' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E") !important;
        background-repeat: no-repeat !important;
        background-position: right 4px center !important;
        background-size: 10px !important;
}

#sollu-student-app select.sollu-courses-sort-select option {
        background: #171A22 !important;
        color: #FFFFFF !important;
}

/* =============================================================================
   GRID DE CURSOS & CARDS WIDESCREEN 16:9 (ESPAÇOSO & EQUILIBRADO)
   ============================================================================= */
.sollu-courses-grid,
.sollu-courses-gallery-grid {
        display: grid !important;
        grid-template-columns: repeat(auto-fill, minmax(380px, 460px)) !important;
        gap: 36px 32px !important;
        width: 100% !important;
        margin-top: 12px !important;
        align-items: stretch !important;
}

.sollu-course-card {
        background: rgba(23, 26, 34, 0.85) !important;
        backdrop-filter: var(--sollu-blur) !important;
        -webkit-backdrop-filter: var(--sollu-blur) !important;
        border: 1px solid rgba(255, 255, 255, 0.09) !important;
        border-radius: 24px !important;
        overflow: hidden !important;
        box-shadow: 0 14px 36px -8px rgba(0, 0, 0, 0.55) !important;
        transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
        display: flex !important;
        flex-direction: column !important;
        position: relative !important;
}

.sollu-course-card:hover {
        transform: translateY(-6px) !important;
        border-color: rgba(197, 168, 128, 0.50) !important;
        box-shadow: 0 22px 48px -10px rgba(0, 0, 0, 0.75), 0 0 24px rgba(197, 168, 128, 0.15) !important;
}

/* Thumbnail Widescreen 16:9 */
.sollu-course-card-thumb-wrap {
        width: 100% !important;
        aspect-ratio: 16 / 9.2 !important;
        min-height: 210px !important;
        position: relative !important;
        overflow: hidden !important;
        background: #11141D !important;
        border-radius: 24px 24px 0 0 !important;
}

.sollu-course-card-thumb {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        transition: transform 0.5s cubic-bezier(0.16, 1, 0.3, 1) !important;
        display: block !important;
}

.sollu-course-card:hover .sollu-course-card-thumb {
        transform: scale(1.06) !important;
}

.sollu-course-card-thumb-overlay {
        position: absolute;
        inset: 0;
        background: linear-gradient(180deg, rgba(0,0,0,0) 30%, rgba(11, 12, 16, 0.95) 100%);
        pointer-events: none;
}

/* Badges de Status Flutuantes */
.sollu-course-card-badge-wrap {
        position: absolute;
        top: 18px;
        left: 18px;
        z-index: 2;
}

.sollu-course-card-badge {
        display: inline-flex !important;
        align-items: center !important;
        gap: 5px !important;
        padding: 6px 14px !important;
        font-family: var(--sollu-font-sans) !important;
        font-size: 11px !important;
        font-weight: 700 !important;
        border-radius: var(--sollu-radius-pill) !important;
        letter-spacing: 0.05em !important;
        backdrop-filter: blur(12px) !important;
        -webkit-backdrop-filter: blur(12px) !important;
        box-shadow: 0 4px 14px rgba(0, 0, 0, 0.45) !important;
}

.sollu-badge-pulse-dot {
        width: 6px;
        height: 6px;
        border-radius: 50%;
        background: #E5CDB0;
        display: inline-block;
        box-shadow: 0 0 8px #C5A880;
        animation: sollu-pulse-glow 2s infinite ease-in-out;
}

@keyframes sollu-pulse-glow {
        0%, 100% { transform: scale(1); opacity: 1; }
        50% { transform: scale(1.35); opacity: 0.6; }
}

.badge-inprogress {
        background: rgba(15, 17, 23, 0.75) !important;
        color: #E5CDB0 !important;
        border: 1px solid rgba(197, 168, 128, 0.60) !important;
}

.badge-completed {
        background: rgba(15, 17, 23, 0.75) !important;
        color: #52B788 !important;
        border: 1px solid rgba(82, 183, 136, 0.60) !important;
}

.badge-notstarted {
        background: rgba(15, 17, 23, 0.75) !important;
        color: #F1F5F9 !important;
        border: 1px solid rgba(255, 255, 255, 0.22) !important;
}

.badge-available {
        background: rgba(15, 17, 23, 0.75) !important;
        color: #FFFFFF !important;
        border: 1px solid rgba(255, 255, 255, 0.35) !important;
}

/* Botão Flutuante de Favoritos */
.sollu-course-fav-btn {
        position: absolute !important;
        top: 18px !important;
        right: 18px !important;
        z-index: 2 !important;
        width: 38px !important;
        height: 38px !important;
        border-radius: 50% !important;
        background: rgba(15, 17, 23, 0.70) !important;
        backdrop-filter: blur(12px) !important;
        -webkit-backdrop-filter: blur(12px) !important;
        border: 1px solid rgba(255, 255, 255, 0.20) !important;
        color: rgba(255, 255, 255, 0.75) !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        cursor: pointer !important;
        transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
        padding: 0 !important;
        box-shadow: 0 4px 14px rgba(0, 0, 0, 0.35) !important;
        outline: none !important;
}

.sollu-course-fav-btn:hover {
        transform: scale(1.12) !important;
        background: rgba(197, 168, 128, 0.30) !important;
        border-color: var(--sollu-accent-gold) !important;
        color: var(--sollu-accent-gold-light) !important;
}

.sollu-course-fav-btn.is-favorited {
        color: #FFD166 !important;
        background: rgba(255, 209, 102, 0.25) !important;
        border-color: rgba(255, 209, 102, 0.60) !important;
}

.sollu-course-fav-btn.is-favorited svg {
        fill: #FFD166 !important;
        stroke: #FFD166 !important;
}

/* Informações do Corpo do Card (Espaçoso & Confortável) */
.sollu-course-card-body {
        padding: 28px 28px 26px 28px !important;
        display: flex !important;
        flex-direction: column !important;
        flex: 1 !important;
}

.sollu-course-card-title {
        font-family: var(--sollu-font-heading), var(--sollu-font-sans) !important;
        font-size: 21px !important;
        font-weight: 700 !important;
        color: #FFFFFF !important;
        margin: 0 0 10px 0 !important;
        line-height: 1.35 !important;
        letter-spacing: -0.015em !important;
}

.sollu-course-card-desc {
        font-family: var(--sollu-font-sans) !important;
        font-size: 14px !important;
        line-height: 1.65 !important;
        color: #94A3B8 !important;
        margin: 0 0 24px 0 !important;
        min-height: 46px !important;
        flex: 1 !important;
        display: -webkit-box !important;
        -webkit-line-clamp: 2 !important;
        line-clamp: 2 !important;
        -webkit-box-orient: vertical !important;
        overflow: hidden !important;
}

/* Barra de Progresso Integrada */
.sollu-course-progress-info {
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        font-size: 13px !important;
        margin-bottom: 10px !important;
}

.sollu-progress-lessons-text {
        font-family: var(--sollu-font-sans) !important;
        font-weight: 600 !important;
        color: #94A3B8 !important;
}

.sollu-progress-pct-num {
        font-family: var(--sollu-font-sans) !important;
        font-weight: 700 !important;
        color: var(--sollu-accent-gold-light) !important;
}

.sollu-progress-bar-wrap {
        height: 8px !important;
        background: rgba(255, 255, 255, 0.08) !important;
        border-radius: var(--sollu-radius-pill) !important;
        overflow: hidden !important;
        margin-bottom: 26px !important;
}

.sollu-progress-bar-fill {
        height: 100% !important;
        background: linear-gradient(90deg, #C5A880 0%, #E5CDB0 50%, #9A7B54 100%) !important;
        border-radius: var(--sollu-radius-pill) !important;
        transition: width 0.5s ease !important;
        box-shadow: 0 0 10px rgba(197, 168, 128, 0.35) !important;
}

/* Ações e Botões do Card */
.sollu-course-card-actions-container {
        margin-top: auto !important;
}

.sollu-course-card-actions-split {
        display: flex !important;
        gap: 12px !important;
        align-items: center !important;
}

.sollu-course-card-body .sollu-btn {
        width: 100% !important;
        border-radius: 14px !important;
        padding: 14px 22px !important;
        font-family: var(--sollu-font-heading), var(--sollu-font-sans) !important;
        font-size: 14.5px !important;
        font-weight: 700 !important;
        letter-spacing: 0.01em !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 8px !important;
}

/* =============================================================================
   ESTADOS VAZIOS ACOLHEDORES (EMPTY STATES)
   ============================================================================= */
.sollu-empty-state-card {
        background: rgba(23, 26, 34, 0.65) !important;
        backdrop-filter: var(--sollu-blur) !important;
        -webkit-backdrop-filter: var(--sollu-blur) !important;
        border: 1px solid rgba(255, 255, 255, 0.08) !important;
        border-radius: 24px !important;
        padding: 50px 30px !important;
        text-align: center !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        max-width: 640px !important;
        margin: 20px auto !important;
        box-shadow: var(--sollu-shadow-card) !important;
}

.sollu-empty-icon-wrap {
        width: 72px;
        height: 72px;
        border-radius: 50%;
        background: rgba(255, 255, 255, 0.04);
        border: 1px solid rgba(255, 255, 255, 0.10);
        color: var(--sollu-text-muted);
        display: flex;
        align-items: center;
        justify-content: center;
        margin-bottom: 20px;
}

.sollu-empty-icon-wrap.sollu-empty-icon-gold {
        background: rgba(197, 168, 128, 0.10);
        border-color: rgba(197, 168, 128, 0.30);
        color: var(--sollu-accent-gold);
        box-shadow: 0 0 24px rgba(197, 168, 128, 0.15);
}

.sollu-empty-title {
        font-size: 19px !important;
        font-weight: 700 !important;
        color: #FFFFFF !important;
        margin: 0 0 10px 0 !important;
        letter-spacing: -0.01em !important;
}

.sollu-empty-desc {
        font-size: 14px !important;
        line-height: 1.6 !important;
        color: #94A3B8 !important;
        max-width: 480px !important;
        margin: 0 0 24px 0 !important;
}

/* =============================================================================
   13. VIEW 2: SALA DE AULA & PLAYER LMS (70/30 DARK LUXURY)
   ============================================================================= */
.sollu-classroom-split {
        display: flex !important;
        gap: 28px !important;
        align-items: flex-start !important;
        width: 100% !important;
}

@media (max-width: 1024px) {
        .sollu-classroom-split {
                flex-direction: column !important;
        }
        .sollu-classroom-sidebar {
                width: 100% !important;
                min-width: 100% !important;
                max-width: 100% !important;
                position: static !important;
                max-height: none !important;
        }
}

.sollu-classroom-main {
        flex: 1 1 0% !important;
        min-width: 0 !important;
        width: 100% !important;
}

.sollu-classroom-sidebar {
        width: 360px !important;
        min-width: 360px !important;
        max-width: 360px !important;
        background: var(--sollu-bg-card) !important;
        backdrop-filter: var(--sollu-blur) !important;
        -webkit-backdrop-filter: var(--sollu-blur) !important;
        border: var(--sollu-border-glass) !important;
        border-radius: 20px !important;
        padding: 22px !important;
        box-shadow: var(--sollu-shadow-card) !important;
        position: sticky !important;
        top: 16px !important;
        max-height: calc(100vh - 100px) !important;
        overflow-y: auto !important;
        box-sizing: border-box !important;
}

.sollu-classroom-header {
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        margin-bottom: 18px !important;
}

.sollu-btn-back-course,
.sollu-btn-cinema-mode {
        background: rgba(255, 255, 255, 0.05) !important;
        border: 1px solid rgba(255, 255, 255, 0.08) !important;
        padding: 8px 18px !important;
        border-radius: var(--sollu-radius-pill) !important;
        font-size: 13px !important;
        font-weight: 600 !important;
        color: var(--sollu-text-title) !important;
        cursor: pointer !important;
        transition: all 0.2s ease !important;
        display: inline-flex !important;
        align-items: center !important;
        gap: 8px !important;
        outline: none !important;
}

.sollu-btn-back-course svg,
.sollu-btn-cinema-mode svg {
        width: 16px !important;
        height: 16px !important;
        min-width: 16px !important;
        min-height: 16px !important;
        stroke: currentColor !important;
        stroke-width: 2 !important;
        fill: none !important;
}

.sollu-btn-back-course {
        background: rgba(255, 255, 255, 0.05) !important;
        border: 1px solid rgba(197, 168, 128, 0.30) !important;
        padding: 8px 18px !important;
        border-radius: var(--sollu-radius-pill) !important;
        font-size: 13px !important;
        font-weight: 600 !important;
        color: #FFFFFF !important;
        cursor: pointer !important;
        transition: all 0.2s ease !important;
        display: inline-flex !important;
        align-items: center !important;
        gap: 8px !important;
        outline: none !important;
}

[data-sollu-theme="light"] .sollu-btn-back-course,
#sollu-student-app[data-sollu-theme="light"] .sollu-btn-back-course {
        background: #FFFFFF !important;
        border: 1px solid rgba(168, 134, 86, 0.25) !important;
        color: #12141A !important;
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04) !important;
}

.sollu-btn-back-course:hover {
        background: rgba(197, 168, 128, 0.15) !important;
        border-color: var(--sollu-accent-gold) !important;
        color: var(--sollu-accent-gold-light) !important;
}

[data-sollu-theme="light"] .sollu-btn-back-course:hover,
#sollu-student-app[data-sollu-theme="light"] .sollu-btn-back-course:hover {
        background: rgba(168, 134, 86, 0.08) !important;
        border-color: #7A5B2E !important;
        color: #7A5B2E !important;
}

.sollu-player-canvas-wrap {
        background: #000000 !important;
        border: 1px solid rgba(255, 255, 255, 0.12) !important;
        border-radius: 18px !important;
        overflow: hidden !important;
        margin-bottom: 20px !important;
        box-shadow: 0 20px 50px rgba(0, 0, 0, 0.8), 0 0 25px rgba(197, 168, 128, 0.10) !important;
        position: relative !important;
        width: 100% !important;
        transition: all 0.3s ease !important;
}

[data-sollu-theme="light"] .sollu-player-canvas-wrap,
#sollu-student-app[data-sollu-theme="light"] .sollu-player-canvas-wrap {
        background: #FFFFFF !important;
        border: 1px solid rgba(168, 134, 86, 0.18) !important;
        box-shadow: 0 10px 30px -5px rgba(26, 21, 15, 0.05) !important;
}

.sollu-player-canvas-wrap.sollu-canvas-video {
        aspect-ratio: 16 / 9 !important;
        min-height: 400px !important;
}

.sollu-player-canvas-wrap.sollu-canvas-content {
        aspect-ratio: unset !important;
        min-height: 380px !important;
        height: auto !important;
        background: var(--sollu-bg-surface) !important;
}

[data-sollu-theme="light"] .sollu-player-canvas-wrap.sollu-canvas-content,
#sollu-student-app[data-sollu-theme="light"] .sollu-player-canvas-wrap.sollu-canvas-content {
        background: #FFFFFF !important;
        border: 1px solid rgba(168, 134, 86, 0.18) !important;
}

.sollu-player-canvas {
        width: 100% !important;
        height: 100% !important;
        position: relative !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        background: transparent !important;
}

.sollu-player-canvas-wrap.sollu-canvas-content .sollu-player-canvas {
        height: auto !important;
        min-height: 380px !important;
        align-items: stretch !important;
}

.sollu-player-canvas iframe,
.sollu-player-canvas video,
#sollu-native-video-elem {
        width: 100% !important;
        height: 100% !important;
        border: none !important;
        object-fit: contain !important;
        display: block !important;
}

/* Painel Vertical de Ações da Aula (No topo da Sidebar do Desktop) */
.sollu-lesson-actions-card {
        background: var(--sollu-bg-card) !important;
        backdrop-filter: var(--sollu-blur) !important;
        -webkit-backdrop-filter: var(--sollu-blur) !important;
        border: var(--sollu-border-glass) !important;
        border-radius: 18px !important;
        padding: 16px 18px !important;
        margin-bottom: 16px !important;
        box-shadow: var(--sollu-shadow-card) !important;
        display: flex !important;
        flex-direction: column !important;
        gap: 10px !important;
        box-sizing: border-box !important;
}

[data-sollu-theme="light"] .sollu-lesson-actions-card,
#sollu-student-app[data-sollu-theme="light"] .sollu-lesson-actions-card {
        background: #FFFFFF !important;
        border: 1px solid rgba(168, 134, 86, 0.20) !important;
        box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04) !important;
}

.sollu-lesson-actions-card .sollu-btn-block {
        width: 100% !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 12px 18px !important;
        font-size: 13.5px !important;
        font-weight: 700 !important;
        border-radius: 12px !important;
        box-sizing: border-box !important;
}

.sollu-lesson-actions-card .sollu-btn-complete-main {
        box-shadow: 0 4px 16px rgba(197, 168, 128, 0.25) !important;
}

.sollu-lesson-actions-card .sollu-btn-rate-main {
        padding: 10px 16px !important;
        font-size: 13px !important;
}

.sollu-lesson-nav-buttons-row {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 8px !important;
        width: 100% !important;
}

.sollu-lesson-nav-buttons-row .sollu-btn {
        width: 100% !important;
        padding: 9px 10px !important;
        font-size: 12px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        box-sizing: border-box !important;
        border-radius: 10px !important;
}

.sollu-lesson-info-box {
        background: var(--sollu-bg-card) !important;
        backdrop-filter: var(--sollu-blur) !important;
        -webkit-backdrop-filter: var(--sollu-blur) !important;
        border: var(--sollu-border-glass) !important;
        border-radius: 18px !important;
        padding: 24px 28px !important;
        margin-bottom: 24px !important;
        box-shadow: var(--sollu-shadow-card) !important;
}

.sollu-cr-lesson-title {
        font-size: 22px !important;
        font-weight: 700 !important;
        margin: 0 0 10px 0 !important;
        color: var(--sollu-text-title) !important;
}

.sollu-cr-lesson-desc {
        font-size: 14px !important;
        line-height: 1.7 !important;
        color: var(--sollu-text-body) !important;
}

.sollu-support-tabs-card {
        background: var(--sollu-bg-card) !important;
        backdrop-filter: var(--sollu-blur) !important;
        -webkit-backdrop-filter: var(--sollu-blur) !important;
        border: var(--sollu-border-glass) !important;
        border-radius: 18px !important;
        padding: 24px 28px !important;
        box-shadow: var(--sollu-shadow-card) !important;
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
        overflow: hidden !important;
}

.sollu-support-tabs-nav {
        display: flex !important;
        flex-wrap: nowrap !important;
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch !important;
        border-bottom: var(--sollu-border-glass) !important;
        gap: 8px !important;
        margin-bottom: 22px !important;
        padding-bottom: 2px !important;
        scrollbar-width: none !important;
        -ms-overflow-style: none !important;
}

.sollu-support-tabs-nav::-webkit-scrollbar {
        display: none !important;
        width: 0 !important;
        height: 0 !important;
}

.sollu-sup-tab-btn {
        padding: 10px 16px !important;
        background: transparent !important;
        border: none !important;
        border-bottom: 2px solid transparent !important;
        font-size: 13px !important;
        font-weight: 600 !important;
        color: var(--sollu-text-body) !important;
        cursor: pointer !important;
        transition: all 0.2s ease !important;
        display: inline-flex !important;
        align-items: center !important;
        gap: 8px !important;
        outline: none !important;
        white-space: nowrap !important;
        flex-shrink: 0 !important;
}

.sollu-sup-tab-btn svg {
        width: 16px !important;
        height: 16px !important;
        min-width: 16px !important;
        min-height: 16px !important;
        stroke: currentColor !important;
        stroke-width: 1.75 !important;
        fill: none !important;
}

.sollu-sup-tab-btn.sollu-sup-active {
        color: var(--sollu-accent-gold-light) !important;
        border-bottom-color: var(--sollu-accent-gold) !important;
}

/* =============================================================================
   13.2 ANOTAÇÕES, MATERIAIS & DÚVIDAS DA AULA
   ============================================================================= */
.sollu-notes-creator {
        background: rgba(23, 26, 34, 0.70) !important;
        border: 1px solid rgba(255, 255, 255, 0.08) !important;
        border-radius: 14px !important;
        padding: 16px 18px !important;
        margin-bottom: 20px !important;
        box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2) !important;
}

[data-sollu-theme="light"] .sollu-notes-creator {
        background: #FFFFFF !important;
        border: 1px solid rgba(168, 134, 86, 0.15) !important;
        box-shadow: 0 4px 15px rgba(0, 0, 0, 0.04) !important;
}

.sollu-notes-creator textarea {
        width: 100% !important;
        border: none !important;
        background: transparent !important;
        outline: none !important;
        font-size: 13.5px !important;
        color: var(--sollu-text-title) !important;
        resize: vertical !important;
        box-shadow: none !important;
        padding: 0 !important;
        line-height: 1.6 !important;
        min-height: 54px !important;
}

.sollu-notes-creator-actions {
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        margin-top: 12px !important;
        padding-top: 10px !important;
        border-top: 1px solid rgba(255, 255, 255, 0.05) !important;
}

[data-sollu-theme="light"] .sollu-notes-creator-actions {
        border-top: 1px solid rgba(0, 0, 0, 0.06) !important;
}

.sollu-current-time-tag {
        font-size: 12px !important;
        font-weight: 600 !important;
        background: rgba(197, 168, 128, 0.12) !important;
        color: var(--sollu-accent-gold-light) !important;
        border: var(--sollu-border-gold) !important;
        padding: 4px 10px !important;
        border-radius: var(--sollu-radius-pill) !important;
}

.sollu-notes-header-actions {
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        margin-bottom: 14px !important;
        font-size: 13px !important;
        font-weight: 600 !important;
        color: var(--sollu-text-title) !important;
}

.sollu-notes-list {
        display: flex !important;
        flex-direction: column !important;
        gap: 10px !important;
}

.sollu-note-item {
        display: flex !important;
        align-items: flex-start !important;
        gap: 12px !important;
        background: rgba(23, 26, 34, 0.85) !important;
        border: 1px solid rgba(255, 255, 255, 0.08) !important;
        border-radius: 12px !important;
        padding: 14px 16px !important;
        transition: all 0.2s ease !important;
        position: relative !important;
}

[data-sollu-theme="light"] .sollu-note-item {
        background: #FFFFFF !important;
        border: 1px solid rgba(168, 134, 86, 0.15) !important;
        box-shadow: 0 4px 15px rgba(0, 0, 0, 0.04) !important;
}

.sollu-note-item:hover {
        border-color: rgba(197, 168, 128, 0.40) !important;
        transform: translateY(-1px) !important;
        box-shadow: 0 6px 20px rgba(0, 0, 0, 0.3) !important;
}

.sollu-note-item-time {
        display: inline-flex !important;
        align-items: center !important;
        gap: 4px !important;
        padding: 4px 10px !important;
        background: rgba(197, 168, 128, 0.15) !important;
        border: 1px solid rgba(197, 168, 128, 0.35) !important;
        color: var(--sollu-accent-gold-light) !important;
        font-size: 11.5px !important;
        font-weight: 700 !important;
        font-family: 'JetBrains Mono', monospace !important;
        border-radius: var(--sollu-radius-pill) !important;
        cursor: pointer !important;
        flex-shrink: 0 !important;
        transition: all 0.2s ease !important;
        outline: none !important;
}

.sollu-note-item-time:hover {
        background: var(--sollu-accent-gold) !important;
        color: #0B0C10 !important;
        box-shadow: 0 0 10px rgba(197, 168, 128, 0.35) !important;
}

.sollu-note-item-text {
        flex: 1 !important;
        font-size: 13.5px !important;
        line-height: 1.6 !important;
        color: var(--sollu-text-title) !important;
        word-break: break-word !important;
}

.sollu-btn-del-note {
        background: transparent !important;
        border: none !important;
        color: var(--sollu-text-muted) !important;
        cursor: pointer !important;
        padding: 4px !important;
        border-radius: 6px !important;
        transition: all 0.2s ease !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 26px !important;
        height: 26px !important;
        flex-shrink: 0 !important;
        outline: none !important;
}

.sollu-btn-del-note:hover {
        background: rgba(230, 57, 70, 0.15) !important;
        color: #FF7582 !important;
}

/* Download de Materiais da Aula */
.sollu-material-download-card {
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        padding: 14px 18px !important;
        background: rgba(23, 26, 34, 0.85) !important;
        border: 1px solid rgba(255, 255, 255, 0.08) !important;
        border-radius: 14px !important;
        margin-bottom: 10px !important;
        transition: all 0.2s ease !important;
}

[data-sollu-theme="light"] .sollu-material-download-card {
        background: #FFFFFF !important;
        border: 1px solid rgba(168, 134, 86, 0.15) !important;
        box-shadow: 0 4px 15px rgba(0, 0, 0, 0.04) !important;
}

.sollu-material-download-card:hover {
        border-color: rgba(197, 168, 128, 0.35) !important;
        transform: translateY(-1px) !important;
}

.sollu-material-icon-wrap {
        width: 38px !important;
        height: 38px !important;
        min-width: 38px !important;
        min-height: 38px !important;
        border-radius: 10px !important;
        background: rgba(197, 168, 128, 0.12) !important;
        border: 1px solid rgba(197, 168, 128, 0.30) !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        color: var(--sollu-accent-gold-light) !important;
        flex-shrink: 0 !important;
}

.sollu-material-title {
        font-size: 13.5px !important;
        font-weight: 600 !important;
        color: var(--sollu-text-title) !important;
        display: block !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
}

.sollu-material-subtitle {
        font-size: 11.5px !important;
        color: var(--sollu-text-muted) !important;
        display: block !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
}

/* =============================================================================
   13.3 ACORDEÃO DE MÓDULOS & SUBMÓDULOS NA SALA DE AULA
   ============================================================================= */
.sollu-cr-progress-card {
        padding-bottom: 18px !important;
        border-bottom: var(--sollu-border-glass) !important;
        margin-bottom: 18px !important;
}

.sollu-cr-progress-header {
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        font-size: 13px !important;
        font-weight: 700 !important;
        color: var(--sollu-text-title) !important;
        margin-bottom: 8px !important;
}

.sollu-cr-mobile-toggle-badge {
        display: none;
        align-items: center !important;
        gap: 5px !important;
        padding: 3px 9px !important;
        border-radius: var(--sollu-radius-pill) !important;
        background: rgba(197, 168, 128, 0.15) !important;
        border: 1px solid rgba(197, 168, 128, 0.35) !important;
        color: var(--sollu-accent-gold-light) !important;
        font-size: 11px !important;
        font-weight: 700 !important;
        cursor: pointer !important;
        transition: all 0.2s ease !important;
}

.sollu-cr-mobile-chevron {
        transition: transform 0.25s ease !important;
        stroke: currentColor !important;
}

.sollu-cr-mod-group {
        background: rgba(23, 26, 34, 0.60) !important;
        border: 1px solid rgba(255, 255, 255, 0.06) !important;
        border-radius: 14px !important;
        margin-bottom: 12px !important;
        overflow: hidden !important;
        transition: all 0.2s ease !important;
}

[data-sollu-theme="light"] .sollu-cr-mod-group {
        background: #FFFFFF !important;
        border: 1px solid rgba(168, 134, 86, 0.15) !important;
        box-shadow: 0 4px 15px rgba(0, 0, 0, 0.03) !important;
}

.sollu-cr-mod-group.sollu-mod-expanded {
        border-color: rgba(197, 168, 128, 0.30) !important;
}

.sollu-cr-mod-header {
        width: 100% !important;
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        padding: 13px 16px !important;
        background: rgba(255, 255, 255, 0.02) !important;
        border: none !important;
        cursor: pointer !important;
        text-align: left !important;
        outline: none !important;
        transition: all 0.2s ease !important;
}

.sollu-cr-mod-header:hover {
        background: rgba(197, 168, 128, 0.06) !important;
}

.sollu-cr-mod-badge {
        width: 22px !important;
        height: 22px !important;
        min-width: 22px !important;
        min-height: 22px !important;
        border-radius: 6px !important;
        background: rgba(197, 168, 128, 0.15) !important;
        border: 1px solid rgba(197, 168, 128, 0.35) !important;
        color: var(--sollu-accent-gold-light) !important;
        font-size: 11px !important;
        font-weight: 700 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        flex-shrink: 0 !important;
}

.sollu-cr-mod-name {
        font-size: 13px !important;
        font-weight: 700 !important;
        color: var(--sollu-text-title) !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
}

.sollu-cr-mod-count {
        font-size: 11px !important;
        color: var(--sollu-text-muted) !important;
        font-weight: 500 !important;
        background: rgba(255, 255, 255, 0.04) !important;
        padding: 2px 8px !important;
        border-radius: var(--sollu-radius-pill) !important;
        white-space: nowrap !important;
}

[data-sollu-theme="light"] .sollu-cr-mod-count {
        background: rgba(0, 0, 0, 0.05) !important;
}

.sollu-cr-mod-chevron {
        color: var(--sollu-text-muted) !important;
        transition: transform 0.2s ease !important;
        flex-shrink: 0 !important;
}

.sollu-mod-expanded .sollu-cr-mod-chevron {
        transform: rotate(180deg) !important;
        color: var(--sollu-accent-gold-light) !important;
}

.sollu-cr-mod-content {
        padding: 8px 10px 10px 10px !important;
        border-top: 1px solid rgba(255, 255, 255, 0.04) !important;
}

[data-sollu-theme="light"] .sollu-cr-mod-content {
        border-top: 1px solid rgba(0, 0, 0, 0.06) !important;
}

/* Submódulos (Categorias e Subcategorias com Aulas) */
.sollu-cr-submod-container {
        margin: 8px 0 6px 0 !important;
        border: 1px solid rgba(197, 168, 128, 0.20) !important;
        border-left: 3px solid var(--sollu-accent-gold) !important;
        border-radius: 10px !important;
        background: rgba(255, 255, 255, 0.02) !important;
        overflow: hidden !important;
        transition: all 0.2s ease !important;
}

[data-sollu-theme="light"] .sollu-cr-submod-container {
        background: #FAF8F5 !important;
        border: 1px solid rgba(168, 134, 86, 0.20) !important;
        border-left: 3px solid #A88656 !important;
}

.sollu-cr-submod-header {
        width: 100% !important;
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        padding: 9px 12px !important;
        background: transparent !important;
        border: none !important;
        font-size: 12px !important;
        font-weight: 600 !important;
        color: var(--sollu-accent-gold-light) !important;
        cursor: pointer !important;
        outline: none !important;
        transition: all 0.2s ease !important;
        text-align: left !important;
}

[data-sollu-theme="light"] .sollu-cr-submod-header {
        color: #7A5B2E !important;
}

.sollu-cr-submod-header:hover {
        background: rgba(197, 168, 128, 0.08) !important;
}

.sollu-cr-submod-name {
        flex: 1 !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
}

.sollu-cr-submod-count {
        font-size: 10.5px !important;
        color: var(--sollu-text-muted) !important;
        font-weight: 500 !important;
        background: rgba(255, 255, 255, 0.05) !important;
        padding: 2px 6px !important;
        border-radius: var(--sollu-radius-pill) !important;
}

[data-sollu-theme="light"] .sollu-cr-submod-count {
        background: rgba(0, 0, 0, 0.05) !important;
}

.sollu-cr-submod-chevron {
        color: var(--sollu-text-muted) !important;
        transition: transform 0.2s ease !important;
        flex-shrink: 0 !important;
}

.sollu-submod-expanded .sollu-cr-submod-chevron {
        transform: rotate(180deg) !important;
        color: var(--sollu-accent-gold-light) !important;
}

.sollu-cr-submod-lessons {
        padding: 4px 6px 6px 6px !important;
        border-top: 1px solid rgba(255, 255, 255, 0.03) !important;
}

[data-sollu-theme="light"] .sollu-cr-submod-lessons {
        border-top: 1px solid rgba(0, 0, 0, 0.04) !important;
}

/* Botões de Aulas do Acordeão */
.sollu-cr-lesson-btn {
        display: flex !important;
        align-items: center !important;
        gap: 10px !important;
        width: 100% !important;
        padding: 9px 12px !important;
        border: 1px solid transparent !important;
        background: rgba(255, 255, 255, 0.02) !important;
        border-radius: 10px !important;
        font-size: 12.5px !important;
        font-weight: 500 !important;
        color: var(--sollu-text-body) !important;
        cursor: pointer !important;
        transition: all 0.2s ease !important;
        text-align: left !important;
        margin-bottom: 5px !important;
        outline: none !important;
        box-sizing: border-box !important;
}

[data-sollu-theme="light"] .sollu-cr-lesson-btn {
        background: rgba(0, 0, 0, 0.02) !important;
        color: #334155 !important;
}

.sollu-cr-lesson-btn:hover {
        background: rgba(197, 168, 128, 0.10) !important;
        color: var(--sollu-text-title) !important;
        border-color: rgba(197, 168, 128, 0.25) !important;
        transform: translateX(2px) !important;
}

.sollu-cr-lesson-btn.sollu-cr-active {
        background: var(--sollu-accent-gradient-gold-subtle) !important;
        border-color: var(--sollu-border-gold) !important;
        color: var(--sollu-accent-gold-light) !important;
        font-weight: 700 !important;
        box-shadow: 0 0 15px rgba(197, 168, 128, 0.15) !important;
}

[data-sollu-theme="light"] .sollu-cr-lesson-btn.sollu-cr-active {
        color: #7A5B2E !important;
        background: rgba(168, 134, 86, 0.12) !important;
}

/* Aulas Concluídas - Destaque em Verde */
.sollu-cr-lesson-btn.sollu-cr-completed {
        background: rgba(82, 183, 136, 0.08) !important;
        border-color: rgba(82, 183, 136, 0.35) !important;
        color: #52B788 !important;
}

.sollu-cr-lesson-btn.sollu-cr-completed .sollu-cr-icon {
        color: #52B788 !important;
        background: rgba(82, 183, 136, 0.2) !important;
        border: 1px solid rgba(82, 183, 136, 0.45) !important;
        border-radius: 50% !important;
        width: 18px !important;
        height: 18px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        font-weight: 700 !important;
        font-size: 11px !important;
}

.sollu-cr-lesson-btn.sollu-cr-completed .sollu-cr-lesson-label {
        color: #E2E8F0 !important;
}

.sollu-cr-lesson-btn.sollu-cr-completed:hover {
        background: rgba(82, 183, 136, 0.14) !important;
        border-color: rgba(82, 183, 136, 0.6) !important;
}

[data-sollu-theme="light"] .sollu-cr-lesson-btn.sollu-cr-completed,
#sollu-student-app[data-sollu-theme="light"] .sollu-cr-lesson-btn.sollu-cr-completed {
        background: rgba(82, 183, 136, 0.12) !important;
        border-color: rgba(82, 183, 136, 0.4) !important;
        color: #1B4332 !important;
}

[data-sollu-theme="light"] .sollu-cr-lesson-btn.sollu-cr-completed .sollu-cr-lesson-label,
#sollu-student-app[data-sollu-theme="light"] .sollu-cr-lesson-btn.sollu-cr-completed .sollu-cr-lesson-label {
        color: #1E293B !important;
}

/* Badges de Progresso de Módulo e Submódulo */
.sollu-cr-mod-count,
.sollu-cr-submod-count {
        font-size: 11px !important;
        color: var(--sollu-accent-gold-light) !important;
        font-weight: 600 !important;
        background: rgba(197, 168, 128, 0.12) !important;
        border: 1px solid rgba(197, 168, 128, 0.25) !important;
        padding: 2px 8px !important;
        border-radius: var(--sollu-radius-pill) !important;
        letter-spacing: 0.2px !important;
}

[data-sollu-theme="light"] .sollu-cr-mod-count,
[data-sollu-theme="light"] .sollu-cr-submod-count,
#sollu-student-app[data-sollu-theme="light"] .sollu-cr-mod-count,
#sollu-student-app[data-sollu-theme="light"] .sollu-cr-submod-count {
        background: rgba(168, 134, 86, 0.10) !important;
        color: #7A5B2E !important;
        border-color: rgba(168, 134, 86, 0.25) !important;
}

.sollu-cr-mod-count.sollu-count-completed,
.sollu-cr-submod-count.sollu-count-completed {
        color: #52B788 !important;
        background: rgba(82, 183, 136, 0.16) !important;
        border-color: rgba(82, 183, 136, 0.45) !important;
}

[data-sollu-theme="light"] .sollu-cr-mod-count.sollu-count-completed,
[data-sollu-theme="light"] .sollu-cr-submod-count.sollu-count-completed,
#sollu-student-app[data-sollu-theme="light"] .sollu-cr-mod-count.sollu-count-completed,
#sollu-student-app[data-sollu-theme="light"] .sollu-cr-submod-count.sollu-count-completed {
        color: #1B4332 !important;
        background: rgba(82, 183, 136, 0.18) !important;
        border-color: rgba(82, 183, 136, 0.5) !important;
}

.sollu-mod-badge-completed {
        background: rgba(82, 183, 136, 0.22) !important;
        color: #52B788 !important;
        border-color: rgba(82, 183, 136, 0.5) !important;
        font-weight: 700 !important;
}

.sollu-cr-lesson-btn.sollu-cr-locked {
        opacity: 0.40 !important;
        cursor: not-allowed !important;
}

.sollu-cr-icon {
        width: 18px !important;
        text-align: center !important;
        font-size: 11px !important;
        flex-shrink: 0 !important;
}

.sollu-cr-lesson-label {
        flex: 1 !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
}

.sollu-cr-duration {
        font-size: 11px !important;
        opacity: 0.65 !important;
        flex-shrink: 0 !important;
}

/* Modo Cinema / Foco Total (Desktop & Mobile) */
body.sollu-cinema-mode-active #sollu-student-app .sollu-student-sidebar,
body.sollu-cinema-mode-active #sollu-student-app .sollu-dock-sidebar,
body.sollu-cinema-mode-active #sollu-student-app .sollu-student-topbar,
body.sollu-cinema-mode-active #sollu-student-app .sollu-mobile-bottom-bar,
body.sollu-cinema-mode-active #sollu-student-app .sollu-classroom-sidebar,
body.sollu-cinema-mode-active #sollu-student-app .sollu-support-tabs-card,
body.sollu-cinema-mode-active #sollu-student-app .sollu-lesson-info-box {
        display: none !important;
}

body.sollu-cinema-mode-active .sollu-classroom-main {
        flex: 1 0 100% !important;
        max-width: 100% !important;
        width: 100% !important;
}

body.sollu-cinema-mode-active #sollu-btn-cinema-mode {
        background: rgba(197, 168, 128, 0.25) !important;
        border-color: var(--sollu-accent-gold) !important;
        color: #FFFFFF !important;
        box-shadow: 0 0 16px rgba(197, 168, 128, 0.35) !important;
}

[data-sollu-theme="light"] body.sollu-cinema-mode-active #sollu-btn-cinema-mode,
#sollu-student-app[data-sollu-theme="light"] body.sollu-cinema-mode-active #sollu-btn-cinema-mode {
        background: rgba(168, 134, 86, 0.20) !important;
        color: #7A5B2E !important;
}

/* =============================================================================
   13.3.1 NAVEGAÇÃO & SCROLL EM MODO TELA CHEIA (FULLSCREEN)
   ============================================================================= */
:fullscreen,
:-webkit-full-screen,
.sollu-in-fullscreen,
.sollu-in-fullscreen .sollu-player-canvas-wrap,
.sollu-player-canvas-wrap:fullscreen,
.sollu-player-canvas-wrap:-webkit-full-screen {
        overflow-y: auto !important;
        overflow-x: hidden !important;
        height: 100vh !important;
        max-height: 100vh !important;
        width: 100vw !important;
        max-width: 100vw !important;
        border-radius: 0 !important;
        border: none !important;
        margin: 0 !important;
        padding: 0 !important;
        background: #0B0C10 !important;
        box-sizing: border-box !important;
        -webkit-overflow-scrolling: touch !important;
        z-index: 2147483647 !important;
}

[data-sollu-theme="light"] :fullscreen,
[data-sollu-theme="light"] :-webkit-full-screen,
[data-sollu-theme="light"] .sollu-in-fullscreen,
[data-sollu-theme="light"] .sollu-player-canvas-wrap:fullscreen {
        background: #F8FAFC !important;
}

:fullscreen .sollu-player-canvas,
:-webkit-full-screen .sollu-player-canvas,
.sollu-in-fullscreen .sollu-player-canvas {
        height: auto !important;
        min-height: 100vh !important;
        display: block !important;
        overflow-y: visible !important;
        pointer-events: auto !important;
        padding-top: 40px !important;
        padding-bottom: 60px !important;
}

:fullscreen .sollu-quiz-exam-container,
:-webkit-full-screen .sollu-quiz-exam-container,
.sollu-in-fullscreen .sollu-quiz-exam-container {
        max-width: 860px !important;
        margin: 0 auto !important;
        position: relative !important;
        z-index: 10 !important;
        pointer-events: auto !important;
}

:fullscreen .sollu-quiz-option-label,
:-webkit-full-screen .sollu-quiz-option-label,
.sollu-in-fullscreen .sollu-quiz-option-label {
        pointer-events: auto !important;
        cursor: pointer !important;
}

:fullscreen .sollu-quiz-option-label input,
:-webkit-full-screen .sollu-quiz-option-label input,
.sollu-in-fullscreen .sollu-quiz-option-label input {
        pointer-events: auto !important;
        cursor: pointer !important;
}

/* Botão Flutuante Sair da Tela Cheia */
.sollu-btn-exit-fullscreen {
        position: fixed !important;
        top: 18px !important;
        right: 22px !important;
        z-index: 2147483647 !important;
        background: rgba(18, 20, 26, 0.88) !important;
        backdrop-filter: blur(12px) !important;
        -webkit-backdrop-filter: blur(12px) !important;
        border: 1px solid rgba(197, 168, 128, 0.40) !important;
        border-radius: var(--sollu-radius-pill) !important;
        padding: 8px 16px !important;
        color: #FFFFFF !important;
        font-size: 12.5px !important;
        font-weight: 600 !important;
        display: inline-flex !important;
        align-items: center !important;
        gap: 8px !important;
        cursor: pointer !important;
        box-shadow: 0 8px 24px rgba(0, 0, 0, 0.6) !important;
        transition: all 0.2s ease !important;
}

.sollu-btn-exit-fullscreen:hover {
        background: rgba(197, 168, 128, 0.25) !important;
        border-color: var(--sollu-accent-gold) !important;
        color: var(--sollu-accent-gold-light) !important;
        transform: scale(1.04) !important;
}

[data-sollu-theme="light"] .sollu-btn-exit-fullscreen {
        background: rgba(255, 255, 255, 0.92) !important;
        border: 1px solid rgba(168, 134, 86, 0.35) !important;
        color: #12141A !important;
        box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12) !important;
}

/* =============================================================================
   13.4 EXECUTOR DE QUIZZES & AVALIAÇÕES NA SALA DE AULA
   ============================================================================= */
.sollu-quiz-exam-container {
        width: 100% !important;
        max-width: 860px !important;
        margin: 0 auto !important;
        padding: 36px 24px !important;
        background: transparent !important;
        box-sizing: border-box !important;
        display: flex !important;
        flex-direction: column !important;
}

.sollu-quiz-timer-header {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 8px !important;
        background: rgba(230, 57, 70, 0.12) !important;
        border: 1px solid rgba(230, 57, 70, 0.35) !important;
        padding: 6px 18px !important;
        border-radius: var(--sollu-radius-pill) !important;
        margin: 0 auto 24px auto !important;
        font-size: 13px !important;
        font-weight: 600 !important;
        color: #FF7582 !important;
}

.sollu-quiz-timer-clock {
        font-family: 'JetBrains Mono', monospace, sans-serif !important;
        font-size: 15px !important;
        font-weight: 700 !important;
        color: #FFFFFF !important;
}

.sollu-quiz-question-card {
        background: rgba(23, 26, 34, 0.90) !important;
        border: 1px solid rgba(255, 255, 255, 0.08) !important;
        border-radius: 16px !important;
        padding: 22px 24px !important;
        margin-bottom: 20px !important;
        box-sizing: border-box !important;
        width: 100% !important;
        transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}

[data-sollu-theme="light"] .sollu-quiz-question-card {
        background: #FFFFFF !important;
        border: 1px solid rgba(168, 134, 86, 0.15) !important;
        box-shadow: 0 4px 15px rgba(0, 0, 0, 0.04) !important;
}

.sollu-quiz-question-card:hover {
        border-color: rgba(197, 168, 128, 0.35) !important;
        box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4) !important;
}

.sollu-quiz-option-label {
        display: flex !important;
        align-items: center !important;
        gap: 14px !important;
        padding: 13px 18px !important;
        background: rgba(255, 255, 255, 0.03) !important;
        border: 1px solid rgba(255, 255, 255, 0.06) !important;
        border-radius: 12px !important;
        margin-bottom: 10px !important;
        cursor: pointer !important;
        font-size: 14px !important;
        color: var(--sollu-text-title) !important;
        transition: all 0.2s ease !important;
}

[data-sollu-theme="light"] .sollu-quiz-option-label {
        background: rgba(0, 0, 0, 0.02) !important;
        border: 1px solid rgba(0, 0, 0, 0.06) !important;
}

.sollu-quiz-option-label:hover {
        background: rgba(197, 168, 128, 0.10) !important;
        border-color: rgba(197, 168, 128, 0.35) !important;
        transform: translateX(3px) !important;
}

.sollu-quiz-option-label input[type="radio"] {
        accent-color: var(--sollu-accent-gold) !important;
        width: 18px !important;
        height: 18px !important;
        min-width: 18px !important;
        min-height: 18px !important;
        cursor: pointer !important;
        margin: 0 !important;
}

/* Barra Fixa / Flutuante de Envio da Prova */
.sollu-quiz-submit-action-bar {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        background: rgba(23, 26, 34, 0.95) !important;
        backdrop-filter: var(--sollu-blur) !important;
        -webkit-backdrop-filter: var(--sollu-blur) !important;
        border: 1px solid rgba(197, 168, 128, 0.30) !important;
        border-radius: 16px !important;
        padding: 14px 22px !important;
        margin-top: 24px !important;
        box-shadow: 0 10px 35px rgba(0, 0, 0, 0.5), 0 0 20px rgba(197, 168, 128, 0.12) !important;
        position: sticky !important;
        bottom: 16px !important;
        z-index: 50 !important;
}

[data-sollu-theme="light"] .sollu-quiz-submit-action-bar {
        background: #FFFFFF !important;
        border: 1px solid rgba(168, 134, 86, 0.25) !important;
        box-shadow: 0 10px 30px rgba(0, 0, 0, 0.10) !important;
}

.sollu-quiz-answered-indicator {
        font-size: 13px !important;
        color: var(--sollu-text-title) !important;
        display: flex !important;
        align-items: center !important;
        gap: 6px !important;
}

.sollu-quiz-answered-indicator strong {
        color: var(--sollu-accent-gold-light) !important;
        font-size: 16px !important;
}

/* =============================================================================
   14. FEED DE NOTIFICACOES (ESTILO iOS COMPACTO)
   ============================================================================= */
.sollu-notif-feed-wrap {
        max-width: 780px !important;
        margin: 0 auto !important;
        display: flex !important;
        flex-direction: column !important;
        gap: 10px !important;
}

.sollu-notif-card-compact {
        background: var(--sollu-bg-card) !important;
        backdrop-filter: var(--sollu-blur) !important;
        -webkit-backdrop-filter: var(--sollu-blur) !important;
        border: var(--sollu-border-glass) !important;
        border-radius: 14px !important;
        padding: 14px 18px !important;
        display: flex !important;
        align-items: center !important;
        gap: 14px !important;
        cursor: pointer !important;
        transition: all 0.2s ease !important;
        position: relative !important;
}
.sollu-notif-card-compact:hover {
        transform: translateY(-2px) !important;
        border-color: var(--sollu-border-gold) !important;
        background: var(--sollu-bg-card-hover) !important;
}
.sollu-notif-card-compact.is-unread {
        border-left: 3px solid var(--sollu-accent-gold) !important;
        background: rgba(30, 34, 45, 0.95) !important;
}

[data-sollu-theme="light"] .sollu-notif-card-compact,
#sollu-student-app[data-sollu-theme="light"] .sollu-notif-card-compact {
        background: #FFFFFF !important;
        border: 1px solid #E8E5DF !important;
        box-shadow: 0 2px 10px rgba(26, 21, 15, 0.04) !important;
}

[data-sollu-theme="light"] .sollu-notif-card-compact:hover,
#sollu-student-app[data-sollu-theme="light"] .sollu-notif-card-compact:hover {
        background: #FAF9F6 !important;
        border-color: #A88656 !important;
        box-shadow: 0 4px 16px rgba(168, 134, 86, 0.10) !important;
}

[data-sollu-theme="light"] .sollu-notif-card-compact.is-unread,
#sollu-student-app[data-sollu-theme="light"] .sollu-notif-card-compact.is-unread {
        background: #FFFFFF !important;
        border-left: 3px solid #A88656 !important;
        border-top: 1px solid #E8E5DF !important;
        border-right: 1px solid #E8E5DF !important;
        border-bottom: 1px solid #E8E5DF !important;
        box-shadow: 0 4px 14px rgba(168, 134, 86, 0.08) !important;
}

.sollu-notif-icon-col {
        width: 36px !important;
        height: 36px !important;
        min-width: 36px !important;
        min-height: 36px !important;
        border-radius: 10px !important;
        background: rgba(197, 168, 128, 0.10) !important;
        border: 1px solid rgba(197, 168, 128, 0.30) !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        color: var(--sollu-accent-gold) !important;
        flex-shrink: 0 !important;
}

[data-sollu-theme="light"] .sollu-notif-icon-col,
#sollu-student-app[data-sollu-theme="light"] .sollu-notif-icon-col {
        background: rgba(168, 134, 86, 0.12) !important;
        border: 1px solid rgba(168, 134, 86, 0.30) !important;
        color: #7A5B2E !important;
}

.sollu-notif-main-col {
        flex: 1 !important;
        min-width: 0 !important;
}
.sollu-notif-topline {
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        margin-bottom: 4px !important;
}
.sollu-notif-heading {
        font-size: 14px !important;
        font-weight: 600 !important;
        color: var(--sollu-text-title) !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
}

[data-sollu-theme="light"] .sollu-notif-heading,
#sollu-student-app[data-sollu-theme="light"] .sollu-notif-heading {
        color: #12141A !important;
}

.sollu-notif-timestamp {
        font-size: 11px !important;
        color: var(--sollu-text-muted) !important;
        white-space: nowrap !important;
        margin-left: 8px !important;
}

[data-sollu-theme="light"] .sollu-notif-timestamp,
#sollu-student-app[data-sollu-theme="light"] .sollu-notif-timestamp {
        color: #64748B !important;
}

.sollu-notif-body-preview {
        font-size: 12.5px !important;
        color: var(--sollu-text-body) !important;
        margin: 0 !important;
        line-height: 1.4 !important;
        display: -webkit-box !important;
        -webkit-line-clamp: 2 !important;
        line-clamp: 2 !important;
        -webkit-box-orient: vertical !important;
        overflow: hidden !important;
}

[data-sollu-theme="light"] .sollu-notif-body-preview,
#sollu-student-app[data-sollu-theme="light"] .sollu-notif-body-preview {
        color: #334155 !important;
}

.sollu-notif-dot-gold {
        width: 8px !important;
        height: 8px !important;
        border-radius: 50% !important;
        background: var(--sollu-accent-gold) !important;
        box-shadow: 0 0 8px rgba(197, 168, 128, 0.8) !important;
        flex-shrink: 0 !important;
        align-self: center !important;
}

[data-sollu-theme="light"] .sollu-notif-dot-gold,
#sollu-student-app[data-sollu-theme="light"] .sollu-notif-dot-gold {
        background: #A88656 !important;
        box-shadow: 0 0 8px rgba(168, 134, 86, 0.6) !important;
}

/* =============================================================================
   15. CENTRAL DE PERFIL, CONTA & SEGURANÇA (MÓDULO 2.7 - DARK LUXURY)
   ============================================================================= */
.sollu-profile-layout,
.sollu-profile-hub-layout {
        display: grid !important;
        grid-template-columns: 280px 1fr !important;
        gap: 32px !important;
        align-items: start !important;
        max-width: 1200px !important;
        margin: 0 auto !important;
        padding: 20px 0 !important;
        width: 100% !important;
        box-sizing: border-box !important;
}

@media (max-width: 900px) {
        /* No celular, a cápsula de usuário mostra apenas o avatar circular */
        .sollu-topbar-username,
        .sollu-topbar-chevron {
                display: none !important;
        }
        .sollu-topbar-user-capsule {
                padding: 2px !important;
                width: 38px !important;
                height: 38px !important;
                min-width: 38px !important;
                border-radius: 50% !important;
                justify-content: center !important;
                background: rgba(255, 255, 255, 0.04) !important;
                border: 1px solid rgba(255, 255, 255, 0.14) !important;
        }
        [data-sollu-theme="light"] .sollu-topbar-user-capsule,
        #sollu-student-app[data-sollu-theme="light"] .sollu-topbar-user-capsule {
                background: #F1F5F9 !important;
                border-color: rgba(168, 134, 86, 0.3) !important;
        }
        .sollu-topbar-avatar,
        .sollu-topbar-avatar-display {
                width: 32px !important;
                height: 32px !important;
                min-width: 32px !important;
                margin: 0 !important;
        }

        .sollu-profile-layout,
        .sollu-profile-hub-layout {
                grid-template-columns: 1fr !important;
                gap: 24px !important;
                padding: 10px 0 !important;
        }
}

/* Card Lateral Esquerdo (Sidebar do Aluno) */
.sollu-profile-card,
.sollu-profile-sidebar-card {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        text-align: center !important;
        padding: 28px 20px !important;
        background: rgba(23, 26, 34, 0.75) !important;
        backdrop-filter: var(--sollu-blur) !important;
        -webkit-backdrop-filter: var(--sollu-blur) !important;
        border: 1px solid rgba(255, 255, 255, 0.08) !important;
        border-radius: 20px !important;
        box-shadow: var(--sollu-shadow-card) !important;
        box-sizing: border-box !important;
        position: relative !important;
}

[data-sollu-theme="light"] .sollu-profile-card,
[data-sollu-theme="light"] .sollu-profile-sidebar-card {
        background: rgba(255, 255, 255, 0.90) !important;
        border: 1px solid rgba(0, 0, 0, 0.08) !important;
}

/* Avatar & Ações de Upload */
.sollu-profile-avatar,
.sollu-profile-avatar-pic {
        width: 96px !important;
        height: 96px !important;
        min-width: 96px !important;
        min-height: 96px !important;
        max-width: 96px !important;
        max-height: 96px !important;
        border-radius: 50% !important;
        object-fit: cover !important;
        border: 2px solid #C5A880 !important;
        margin-bottom: 12px !important;
        display: block !important;
        background: #171A22 !important;
        box-shadow: 0 0 20px rgba(197, 168, 128, 0.25) !important;
}

.sollu-profile-avatar-actions {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 8px !important;
        margin-bottom: 16px !important;
        position: static !important;
        width: 100% !important;
}

.sollu-profile-avatar-btn {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 6px !important;
        padding: 6px 14px !important;
        font-size: 12px !important;
        font-weight: 600 !important;
        color: #C5A880 !important;
        background: rgba(197, 168, 128, 0.10) !important;
        border: 1px solid rgba(197, 168, 128, 0.30) !important;
        border-radius: 8px !important;
        cursor: pointer !important;
        position: static !important;
        outline: none !important;
        transition: all 0.2s ease !important;
        text-decoration: none !important;
        box-shadow: none !important;
}

.sollu-profile-avatar-btn:hover {
        background: rgba(197, 168, 128, 0.20) !important;
        border-color: #C5A880 !important;
        transform: translateY(-1px) !important;
}

.sollu-profile-avatar-btn svg {
        width: 13px !important;
        height: 13px !important;
        stroke: currentColor !important;
        stroke-width: 2 !important;
        fill: none !important;
}

.sollu-profile-avatar-remove {
        display: inline-block !important;
        padding: 6px 12px !important;
        font-size: 11px !important;
        font-weight: 600 !important;
        color: #E63946 !important;
        background: rgba(230, 57, 70, 0.10) !important;
        border: 1px solid rgba(230, 57, 70, 0.25) !important;
        border-radius: 8px !important;
        cursor: pointer !important;
        position: static !important;
        outline: none !important;
        transition: all 0.2s ease !important;
}

.sollu-profile-avatar-remove:hover {
        background: rgba(230, 57, 70, 0.20) !important;
        border-color: #E63946 !important;
}

/* Identificação do Aluno */
.sollu-profile-name {
        font-size: 16px !important;
        font-weight: 600 !important;
        color: #FFFFFF !important;
        word-break: break-word !important;
        max-width: 100% !important;
        margin: 0 0 6px 0 !important;
        line-height: 1.3 !important;
}

[data-sollu-theme="light"] .sollu-profile-name {
        color: #11141D !important;
}

.sollu-profile-tag {
        display: inline-block !important;
        font-size: 11px !important;
        font-weight: 600 !important;
        color: #C5A880 !important;
        background: rgba(197, 168, 128, 0.08) !important;
        border: 1px solid rgba(197, 168, 128, 0.20) !important;
        padding: 4px 10px !important;
        border-radius: 20px !important;
        margin-bottom: 8px !important;
        line-height: 1.2 !important;
}

.sollu-profile-email {
        font-size: 12px !important;
        color: #62687A !important;
        margin: 0 0 20px 0 !important;
        word-break: break-all !important;
        line-height: 1.4 !important;
}

/* Mini-Métricas (3 Colunas) */
.sollu-profile-stats,
.sollu-profile-stats-grid {
        display: grid !important;
        grid-template-columns: repeat(3, 1fr) !important;
        gap: 8px !important;
        width: 100% !important;
        padding: 14px 0 !important;
        border-top: 1px solid rgba(255, 255, 255, 0.06) !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.06) !important;
        margin-bottom: 20px !important;
        box-sizing: border-box !important;
}

[data-sollu-theme="light"] .sollu-profile-stats,
[data-sollu-theme="light"] .sollu-profile-stats-grid {
        border-top: 1px solid rgba(0, 0, 0, 0.06) !important;
        border-bottom: 1px solid rgba(0, 0, 0, 0.06) !important;
}

.sollu-profile-stat-box,
.sollu-profile-stat-item {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        gap: 2px !important;
}

.sollu-profile-stat-val,
.sollu-profile-stat-value {
        display: block !important;
        font-size: 15px !important;
        font-weight: 600 !important;
        color: #FFFFFF !important;
        line-height: 1.2 !important;
}

[data-sollu-theme="light"] .sollu-profile-stat-val,
[data-sollu-theme="light"] .sollu-profile-stat-value {
        color: #11141D !important;
}

.sollu-profile-stat-lab,
.sollu-profile-stat-label {
        display: block !important;
        font-size: 11px !important;
        color: #62687A !important;
        line-height: 1.2 !important;
}

/* Menu de Abas Verticais */
.sollu-profile-nav,
.sollu-profile-nav-menu {
        display: flex !important;
        flex-direction: column !important;
        gap: 6px !important;
        width: 100% !important;
        box-sizing: border-box !important;
}

.sollu-profile-nav-item {
        display: flex !important;
        align-items: center !important;
        gap: 10px !important;
        padding: 12px 14px !important;
        width: 100% !important;
        border-radius: 10px !important;
        border: 1px solid transparent !important;
        background: transparent !important;
        color: #8F9CAE !important;
        font-size: 13px !important;
        font-weight: 500 !important;
        cursor: pointer !important;
        text-align: left !important;
        transition: all 0.2s ease !important;
        outline: none !important;
        box-sizing: border-box !important;
        text-decoration: none !important;
}

.sollu-profile-nav-item svg {
        width: 16px !important;
        height: 16px !important;
        min-width: 16px !important;
        min-height: 16px !important;
        flex-shrink: 0 !important;
        stroke: currentColor !important;
        stroke-width: 1.5 !important;
        stroke-linecap: round !important;
        stroke-linejoin: round !important;
        fill: none !important;
}

.sollu-profile-nav-item:hover {
        background: rgba(255, 255, 255, 0.04) !important;
        color: #FFFFFF !important;
}

[data-sollu-theme="light"] .sollu-profile-nav-item:hover {
        background: rgba(0, 0, 0, 0.04) !important;
        color: #11141D !important;
}

.sollu-profile-nav-item.active {
        background: rgba(197, 168, 128, 0.12) !important;
        border-color: rgba(197, 168, 128, 0.30) !important;
        color: #C5A880 !important;
        font-weight: 500 !important;
}

/* Painel de Formulário (Coluna Direita) */
.sollu-profile-content,
.sollu-profile-main-content {
        background: rgba(23, 26, 34, 0.75) !important;
        backdrop-filter: var(--sollu-blur) !important;
        -webkit-backdrop-filter: var(--sollu-blur) !important;
        border: 1px solid rgba(255, 255, 255, 0.08) !important;
        border-radius: 20px !important;
        padding: 32px !important;
        box-shadow: var(--sollu-shadow-card) !important;
        box-sizing: border-box !important;
}

[data-sollu-theme="light"] .sollu-profile-content,
[data-sollu-theme="light"] .sollu-profile-main-content {
        background: rgba(255, 255, 255, 0.90) !important;
        border: 1px solid rgba(0, 0, 0, 0.08) !important;
}

/* Cabeçalho da Seção */
.sollu-proftab-header {
        margin-bottom: 28px !important;
        padding-bottom: 16px !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.06) !important;
}

[data-sollu-theme="light"] .sollu-proftab-header {
        border-bottom: 1px solid rgba(0, 0, 0, 0.06) !important;
}

.sollu-proftab-header h4 {
        font-size: 20px !important;
        font-weight: 700 !important;
        color: #FFFFFF !important;
        margin: 0 0 4px 0 !important;
        line-height: 1.3 !important;
}

[data-sollu-theme="light"] .sollu-proftab-header h4 {
        color: #11141D !important;
}

.sollu-proftab-header p {
        font-size: 13px !important;
        color: #8F9CAE !important;
        margin: 0 !important;
        line-height: 1.5 !important;
}

/* Grid de Campos do Formulário */
.sollu-form-row {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 20px !important;
        margin-bottom: 20px !important;
}

@media (max-width: 680px) {
        .sollu-form-row {
                grid-template-columns: 1fr !important;
                gap: 16px !important;
        }
}

.sollu-form-group {
        display: flex !important;
        flex-direction: column !important;
        gap: 0 !important;
        margin-bottom: 0 !important;
}

.sollu-form-group-full {
        grid-column: 1 / -1 !important;
        margin-bottom: 20px !important;
        display: flex !important;
        flex-direction: column !important;
}

/* Inputs & Labels */
#sollu-student-app .sollu-profile-content label,
#sollu-student-app .sollu-profile-main-content label,
.sollu-profile-content label {
        display: block !important;
        font-size: 11px !important;
        font-weight: 600 !important;
        text-transform: uppercase !important;
        letter-spacing: 0.5px !important;
        color: #8F9CAE !important;
        margin-bottom: 8px !important;
}

#sollu-student-app .sollu-profile-content input[type="text"],
#sollu-student-app .sollu-profile-content input[type="email"],
#sollu-student-app .sollu-profile-content input[type="password"],
#sollu-student-app .sollu-profile-content input[type="tel"],
#sollu-student-app .sollu-profile-content textarea,
#sollu-student-app .sollu-profile-main-content input[type="text"],
#sollu-student-app .sollu-profile-main-content input[type="email"],
#sollu-student-app .sollu-profile-main-content input[type="password"],
#sollu-student-app .sollu-profile-main-content input[type="tel"],
#sollu-student-app .sollu-profile-main-content textarea {
        width: 100% !important;
        background: #12141A !important;
        border: 1px solid rgba(255, 255, 255, 0.08) !important;
        border-radius: 10px !important;
        padding: 12px 16px !important;
        color: #FFFFFF !important;
        font-size: 14px !important;
        outline: none !important;
        box-shadow: none !important;
        transition: border-color 0.2s, box-shadow 0.2s !important;
        box-sizing: border-box !important;
        font-family: inherit !important;
}

[data-sollu-theme="light"] #sollu-student-app .sollu-profile-content input[type="text"],
[data-sollu-theme="light"] #sollu-student-app .sollu-profile-content input[type="email"],
[data-sollu-theme="light"] #sollu-student-app .sollu-profile-content input[type="password"],
[data-sollu-theme="light"] #sollu-student-app .sollu-profile-content input[type="tel"],
[data-sollu-theme="light"] #sollu-student-app .sollu-profile-content textarea {
        background: #FFFFFF !important;
        border: 1px solid rgba(0, 0, 0, 0.12) !important;
        color: #11141D !important;
}

#sollu-student-app .sollu-profile-content input:focus,
#sollu-student-app .sollu-profile-content textarea:focus,
#sollu-student-app .sollu-profile-main-content input:focus,
#sollu-student-app .sollu-profile-main-content textarea:focus {
        border-color: #C5A880 !important;
        box-shadow: 0 0 0 2px rgba(197, 168, 128, 0.15) !important;
}

/* Botão Salvar */
.sollu-btn-profile-submit,
#sollu-btn-save-personal,
#sollu-btn-save-security,
#sollu-btn-save-prefs {
        padding: 12px 28px !important;
        background: linear-gradient(135deg, #C5A880 0%, #A88B60 100%) !important;
        color: #0B0C10 !important;
        font-weight: 600 !important;
        font-size: 14px !important;
        border: none !important;
        border-radius: 10px !important;
        cursor: pointer !important;
        box-shadow: 0 4px 15px rgba(197, 168, 128, 0.25) !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 8px !important;
        outline: none !important;
        transition: all 0.2s ease !important;
        text-decoration: none !important;
}

.sollu-btn-profile-submit:hover,
#sollu-btn-save-personal:hover,
#sollu-btn-save-security:hover,
#sollu-btn-save-prefs:hover {
        transform: translateY(-2px) !important;
        box-shadow: 0 6px 20px rgba(197, 168, 128, 0.40) !important;
}

/* Preferências & Switch iOS */
.sollu-pref-item-row {
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        gap: 20px !important;
        padding: 16px 0 !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.06) !important;
}

[data-sollu-theme="light"] .sollu-pref-item-row {
        border-bottom: 1px solid rgba(0, 0, 0, 0.06) !important;
}

.sollu-pref-item-text strong {
        display: block !important;
        font-size: 13.5px !important;
        color: #FFFFFF !important;
        margin-bottom: 4px !important;
}

[data-sollu-theme="light"] .sollu-pref-item-text strong {
        color: #11141D !important;
}

.sollu-pref-item-text p {
        font-size: 12px !important;
        color: #8F9CAE !important;
        margin: 0 !important;
}

.sollu-switch-ios {
        position: relative;
        display: inline-block;
        width: 48px;
        height: 26px;
        flex-shrink: 0;
}
.sollu-switch-ios input {
        opacity: 0;
        width: 0;
        height: 0;
}
.sollu-switch-slider {
        position: absolute;
        cursor: pointer;
        inset: 0;
        background-color: rgba(255, 255, 255, 0.12);
        border: 1px solid rgba(255, 255, 255, 0.08);
        transition: 0.25s ease;
        border-radius: 34px;
}
.sollu-switch-slider::before {
        position: absolute;
        content: "";
        height: 20px;
        width: 20px;
        left: 2px;
        bottom: 2px;
        background-color: #FFFFFF;
        transition: 0.25s ease;
        border-radius: 50%;
}
.sollu-switch-ios input:checked + .sollu-switch-slider {
        background-color: #C5A880 !important;
        border-color: #C5A880 !important;
}
.sollu-switch-ios input:checked + .sollu-switch-slider::before {
        transform: translateX(22px);
        background-color: #0B0C10;
}

/* =============================================================================
   16. MODAIS GLOBAIS & VITRINE DO CURSO (FIM DE BORDAS ROSAS / DEBUG)
   ============================================================================= */
.sollu-modal {
        position: fixed;
        inset: 0;
        z-index: 99999;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 20px;
}

.sollu-modal-backdrop {
        position: absolute;
        inset: 0;
        background: rgba(0, 0, 0, 0.85);
        backdrop-filter: var(--sollu-blur);
        -webkit-backdrop-filter: var(--sollu-blur);
}

.sollu-modal-card {
        position: relative;
        z-index: 2;
        background: #13151B !important;
        border: var(--sollu-border-glass-luminous) !important;
        border-radius: 18px !important;
        box-shadow: 0 30px 80px rgba(0, 0, 0, 0.8) !important;
        width: 100%;
        max-width: 600px;
        padding: 28px;
        animation: sollu-scale-in 0.25s cubic-bezier(0.16, 1, 0.3, 1);
}

[data-sollu-theme="light"] .sollu-modal-card {
        background: #FFFFFF !important;
        border: 1px solid rgba(0, 0, 0, 0.12) !important;
        box-shadow: 0 30px 80px rgba(0, 0, 0, 0.25) !important;
}

.sollu-modal-header {
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-bottom: 20px;
        padding-bottom: 14px;
        border-bottom: var(--sollu-border-glass);
}
.sollu-modal-header h3 {
        margin: 0;
        font-size: 18px;
        font-weight: 700;
        color: var(--sollu-text-title);
}

#sollu-student-app .sollu-modal-close {
        width: 32px !important;
        height: 32px !important;
        min-width: 32px !important;
        min-height: 32px !important;
        max-width: 32px !important;
        max-height: 32px !important;
        border-radius: 50% !important;
        background: rgba(255, 255, 255, 0.05) !important;
        border: 1px solid rgba(255, 255, 255, 0.08) !important;
        color: var(--sollu-text-body) !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        cursor: pointer !important;
        padding: 0 !important;
        outline: none !important;
        transition: all 0.2s ease !important;
}

[data-sollu-theme="light"] #sollu-student-app .sollu-modal-close {
        background: rgba(0, 0, 0, 0.05) !important;
        border: 1px solid rgba(0, 0, 0, 0.08) !important;
}

#sollu-student-app .sollu-modal-close:hover {
        background: rgba(197, 168, 128, 0.15) !important;
        border-color: var(--sollu-accent-gold) !important;
        color: var(--sollu-accent-gold-light) !important;
        transform: scale(1.05) !important;
}

#sollu-student-app .sollu-modal-close svg {
        width: 14px !important;
        height: 14px !important;
        min-width: 14px !important;
        min-height: 14px !important;
        stroke: currentColor !important;
        stroke-width: 2 !important;
        fill: none !important;
        display: block !important;
}

/* Modal "Janela do Curso" (Vitrine Imersiva Dark Luxury) */
.sollu-vitrine-modal-card {
        max-width: 680px !important;
        width: 90% !important;
        max-height: 90vh !important;
        overflow-y: auto !important;
        background: #13151B !important;
        border: 1px solid rgba(197, 168, 128, 0.35) !important;
        border-radius: 24px !important;
        box-shadow: 0 24px 60px rgba(0, 0, 0, 0.85) !important;
        padding: 28px !important;
        box-sizing: border-box !important;
}

[data-sollu-theme="light"] .sollu-vitrine-modal-card {
        background: #FFFFFF !important;
        border: 1px solid rgba(168, 134, 86, 0.35) !important;
        box-shadow: 0 24px 60px rgba(0, 0, 0, 0.18) !important;
}

.sollu-vitrine-video-frame,
.sollu-vitrine-img-frame {
        width: 100% !important;
        border-radius: 16px !important;
        overflow: hidden !important;
        margin-bottom: 20px !important;
        max-height: 280px !important;
        background: #000000 !important;
        border: 1px solid rgba(255, 255, 255, 0.08) !important;
        box-shadow: 0 8px 24px rgba(0, 0, 0, 0.5) !important;
}
.sollu-vitrine-video-frame {
        aspect-ratio: 16 / 9 !important;
}
.sollu-vitrine-video-frame iframe,
.sollu-vitrine-video-frame video {
        width: 100% !important;
        height: 100% !important;
        border: none !important;
        display: block !important;
        object-fit: cover !important;
}

.sollu-vitrine-img-frame img {
        width: 100% !important;
        height: 100% !important;
        max-height: 280px !important;
        object-fit: cover !important;
        display: block !important;
}

.sollu-vitrine-badges {
        display: flex !important;
        gap: 10px !important;
        flex-wrap: wrap !important;
        margin-bottom: 16px !important;
}

.sollu-vitrine-badge {
        padding: 6px 12px !important;
        font-size: 12px !important;
        font-weight: 600 !important;
        border-radius: 20px !important;
        background: rgba(255, 255, 255, 0.06) !important;
        color: var(--sollu-text-body) !important;
        border: 1px solid rgba(255, 255, 255, 0.08) !important;
        display: inline-flex !important;
        align-items: center !important;
        gap: 6px !important;
}

[data-sollu-theme="light"] .sollu-vitrine-badge {
        background: rgba(0, 0, 0, 0.05) !important;
        color: #4A5568 !important;
        border: 1px solid rgba(0, 0, 0, 0.08) !important;
}

.sollu-vitrine-badge-gold {
        background: rgba(197, 168, 128, 0.15) !important;
        color: var(--sollu-accent-gold-light) !important;
        border: 1px solid rgba(197, 168, 128, 0.40) !important;
}

.sollu-vitrine-course-name {
        font-size: 22px !important;
        font-weight: 700 !important;
        color: var(--sollu-text-title) !important;
        margin: 0 0 6px 0 !important;
        line-height: 1.25 !important;
}

[data-sollu-theme="light"] .sollu-vitrine-course-name {
        color: #11141D !important;
}

.sollu-vitrine-author {
        font-size: 13px !important;
        color: #8F9CAE !important;
        margin-bottom: 18px !important;
}

.sollu-vitrine-desc {
        background: rgba(255, 255, 255, 0.03) !important;
        border: 1px solid rgba(255, 255, 255, 0.06) !important;
        border-radius: 14px !important;
        padding: 16px 20px !important;
        margin-bottom: 24px !important;
        font-size: 14px !important;
        line-height: 1.6 !important;
}

[data-sollu-theme="light"] .sollu-vitrine-desc {
        background: rgba(0, 0, 0, 0.03) !important;
        border: 1px solid rgba(0, 0, 0, 0.06) !important;
}

.sollu-vitrine-desc h4,
.sollu-vitrine-skills-box h4 {
        font-size: 14px !important;
        font-weight: 700 !important;
        color: var(--sollu-accent-gold) !important;
        margin: 0 0 10px 0 !important;
}

.sollu-vitrine-desc-content {
        font-size: 14px !important;
        color: var(--sollu-text-body) !important;
        line-height: 1.6 !important;
}

.sollu-vitrine-skills-box {
        background: rgba(11, 12, 16, 0.50);
        border: var(--sollu-border-glass);
        border-radius: var(--sollu-radius-md);
        padding: 18px 20px;
        margin-bottom: 24px;
}

[data-sollu-theme="light"] .sollu-vitrine-skills-box {
        background: rgba(0, 0, 0, 0.03);
}

.sollu-vitrine-skills-list {
        list-style: none;
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 10px;
}
@media (max-width: 600px) {
        .sollu-vitrine-skills-list {
                grid-template-columns: 1fr;
        }
}
.sollu-vitrine-skills-list li {
        display: flex;
        align-items: center;
        gap: 8px;
        font-size: 13px;
        color: var(--sollu-text-title);
}
.sollu-vitrine-skills-list li .dashicons {
        color: var(--sollu-accent-gold);
}

.sollu-vitrine-cta-bar {
        margin-top: 10px;
}

.sollu-vitrine-cta-bar .sollu-btn {
        width: 100% !important;
        padding: 14px !important;
        font-size: 15px !important;
        font-weight: 600 !important;
        border-radius: 12px !important;
        box-sizing: border-box !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
}

/* Modal de Detalhes da Notificação (Padrão Dark Luxury) */
.sollu-notif-modal-card {
        max-width: 520px !important;
        width: 90% !important;
        border-radius: 20px !important;
        padding: 24px !important;
        background: #171A22 !important;
        border: 1px solid rgba(255, 255, 255, 0.08) !important;
        box-shadow: 0 20px 60px rgba(0, 0, 0, 0.8) !important;
        box-sizing: border-box !important;
}

[data-sollu-theme="light"] .sollu-notif-modal-card {
        background: #FFFFFF !important;
        border: 1px solid rgba(0, 0, 0, 0.08) !important;
        box-shadow: 0 20px 60px rgba(0, 0, 0, 0.15) !important;
}

.sollu-notif-header-clean {
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        margin-bottom: 16px !important;
        padding-bottom: 12px !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.06) !important;
}

[data-sollu-theme="light"] .sollu-notif-header-clean {
        border-bottom: 1px solid rgba(0, 0, 0, 0.06) !important;
}

.sollu-notif-header-badge {
        font-size: 14px !important;
        font-weight: 700 !important;
        color: #FFFFFF !important;
}

[data-sollu-theme="light"] .sollu-notif-header-badge {
        color: #11141D !important;
}

.sollu-notif-modal-top {
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        margin-bottom: 12px !important;
        flex-wrap: wrap !important;
        gap: 8px !important;
}

.sollu-notif-icon-pill {
        display: inline-flex !important;
        align-items: center !important;
        gap: 6px !important;
        padding: 4px 12px !important;
        border-radius: 20px !important;
        background: rgba(197, 168, 128, 0.10) !important;
        color: #C5A880 !important;
        font-size: 11.5px !important;
        font-weight: 600 !important;
        border: 1px solid rgba(197, 168, 128, 0.25) !important;
}

.sollu-notif-modal-date {
        font-size: 12px !important;
        color: #62687A !important;
        font-weight: 500 !important;
}

.sollu-notif-modal-subject {
        font-size: 18px !important;
        font-weight: 600 !important;
        color: #FFFFFF !important;
        margin: 16px 0 8px 0 !important;
        line-height: 1.35 !important;
}

[data-sollu-theme="light"] .sollu-notif-modal-subject {
        color: #11141D !important;
}

.sollu-notif-modal-msg {
        font-size: 14px !important;
        line-height: 1.6 !important;
        color: #A0A5B5 !important;
        margin: 0 !important;
}

[data-sollu-theme="light"] .sollu-notif-modal-msg {
        color: #4A5568 !important;
}

.sollu-notif-footer-clean {
        display: flex !important;
        justify-content: flex-end !important;
        margin-top: 20px !important;
        padding-top: 14px !important;
        border-top: 1px solid rgba(255, 255, 255, 0.06) !important;
}

[data-sollu-theme="light"] .sollu-notif-footer-clean {
        border-top: 1px solid rgba(0, 0, 0, 0.06) !important;
}

.sollu-btn-notif-close {
        padding: 8px 20px !important;
        font-size: 13px !important;
        font-weight: 600 !important;
        border-radius: 10px !important;
        background: rgba(255, 255, 255, 0.05) !important;
        border: 1px solid rgba(255, 255, 255, 0.08) !important;
        color: #FFFFFF !important;
        cursor: pointer !important;
        transition: all 0.2s ease !important;
}

[data-sollu-theme="light"] .sollu-btn-notif-close {
        background: rgba(0, 0, 0, 0.05) !important;
        border: 1px solid rgba(0, 0, 0, 0.08) !important;
        color: #11141D !important;
}

.sollu-btn-notif-close:hover {
        background: rgba(197, 168, 128, 0.15) !important;
        border-color: #C5A880 !important;
        color: #C5A880 !important;
}

/* =============================================================================
   17. CERTIFICADOS, VALIDADOR & TOAST
   ============================================================================= */
.sollu-certs-grid {
        display: grid;
        grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
        gap: 24px;
}

.sollu-cert-card-futuristic {
        background: var(--sollu-bg-card);
        backdrop-filter: var(--sollu-blur);
        border: var(--sollu-border-glass);
        border-radius: 18px;
        padding: 28px;
        box-shadow: var(--sollu-shadow-card);
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        transition: all 0.3s ease;
}
.sollu-cert-card-futuristic:hover {
        transform: translateY(-4px);
        border-color: var(--sollu-border-gold);
        box-shadow: var(--sollu-shadow-hover);
}

.sollu-toast {
        position: fixed;
        bottom: 24px;
        right: 24px;
        z-index: 100000;
        background: #171A22;
        border: var(--sollu-border-gold);
        border-radius: var(--sollu-radius-md);
        padding: 14px 20px;
        color: var(--sollu-text-title);
        font-size: 13px;
        font-weight: 500;
        box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
        animation: sollu-slide-up 0.3s ease;
}

/* =============================================================================
   18. MOBILE BOTTOM BAR & RESPONSIVIDADE (< 900px)
   ============================================================================= */
#sollu-student-app .sollu-mobile-bottom-bar {
        display: none;
        position: fixed !important;
        bottom: 16px !important;
        left: 16px !important;
        right: 16px !important;
        max-width: 440px !important;
        margin: 0 auto !important;
        height: 62px !important;
        background: rgba(18, 20, 26, 0.95) !important;
        backdrop-filter: blur(20px) !important;
        -webkit-backdrop-filter: blur(20px) !important;
        border: 1px solid rgba(197, 168, 128, 0.35) !important;
        border-radius: 20px !important;
        z-index: 9999 !important;
        box-shadow: 0 15px 40px rgba(0, 0, 0, 0.7), 0 0 20px rgba(197, 168, 128, 0.12) !important;
        align-items: center !important;
        justify-content: space-around !important;
        padding: 0 8px !important;
        box-sizing: border-box !important;
}

[data-sollu-theme="light"] .sollu-mobile-bottom-bar,
#sollu-student-app[data-sollu-theme="light"] .sollu-mobile-bottom-bar {
        background: rgba(255, 255, 255, 0.96) !important;
        border: 1px solid rgba(168, 134, 86, 0.25) !important;
        box-shadow: 0 15px 40px rgba(0, 0, 0, 0.10), 0 0 20px rgba(168, 134, 86, 0.08) !important;
}

#sollu-student-app .sollu-mob-nav-btn {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        background: transparent !important;
        border: none !important;
        outline: none !important;
        box-shadow: none !important;
        font-size: 11px !important;
        font-weight: 600 !important;
        color: #94A3B8 !important;
        cursor: pointer !important;
        gap: 4px !important;
        padding: 6px 12px !important;
        border-radius: 12px !important;
        transition: all 0.2s ease !important;
        text-decoration: none !important;
        flex: 1 !important;
        max-width: 90px !important;
        box-sizing: border-box !important;
}

#sollu-student-app .sollu-mob-nav-btn svg {
        width: 20px !important;
        height: 20px !important;
        min-width: 20px !important;
        min-height: 20px !important;
        stroke: currentColor !important;
        stroke-width: 2 !important;
        fill: none !important;
        transition: transform 0.2s ease, stroke 0.2s ease !important;
}

#sollu-student-app .sollu-mob-nav-btn:hover {
        color: var(--sollu-accent-gold) !important;
        background: rgba(197, 168, 128, 0.08) !important;
}

#sollu-student-app .sollu-mob-nav-btn.sollu-mob-active {
        color: var(--sollu-accent-gold-light) !important;
        background: rgba(197, 168, 128, 0.15) !important;
        border: 1px solid rgba(197, 168, 128, 0.35) !important;
}

[data-sollu-theme="light"] .sollu-mob-nav-btn,
#sollu-student-app[data-sollu-theme="light"] .sollu-mob-nav-btn {
        color: #64748B !important;
}

[data-sollu-theme="light"] .sollu-mob-nav-btn:hover,
#sollu-student-app[data-sollu-theme="light"] .sollu-mob-nav-btn:hover {
        color: #7A5B2E !important;
        background: rgba(168, 134, 86, 0.08) !important;
}

[data-sollu-theme="light"] .sollu-mob-nav-btn.sollu-mob-active,
#sollu-student-app[data-sollu-theme="light"] .sollu-mob-nav-btn.sollu-mob-active {
        color: #7A5B2E !important;
        background: rgba(168, 134, 86, 0.12) !important;
        border: 1px solid rgba(168, 134, 86, 0.30) !important;
}

@media (max-width: 900px) {
        #sollu-student-app .sollu-student-sidebar,
        #sollu-student-app .sollu-dock-sidebar {
                display: none !important;
        }

        .sollu-mobile-bottom-bar,
        #sollu-student-app .sollu-mobile-bottom-bar {
                display: flex !important;
        }

        .sollu-student-content {
                width: 100% !important;
                padding: 16px !important;
                padding-bottom: 90px !important;
                box-sizing: border-box !important;
        }

        .sollu-student-topbar {
                padding: 0 16px !important;
        }

        .sollu-student-stats-row {
                grid-template-columns: 1fr !important;
        }

        .sollu-courses-grid,
        .sollu-courses-gallery-grid {
                grid-template-columns: 1fr !important;
                gap: 20px !important;
        }

        .sollu-courses-view-header {
                flex-direction: column !important;
                align-items: flex-start !important;
                gap: 12px !important;
        }

        .sollu-courses-toolbar {
                flex-direction: column !important;
                align-items: stretch !important;
                gap: 12px !important;
                padding: 12px !important;
                border-radius: 16px !important;
        }

        .sollu-filter-segmented {
                width: 100% !important;
                justify-content: space-between !important;
                overflow-x: auto !important;
                scrollbar-width: none !important;
        }

        .sollu-filter-segmented::-webkit-scrollbar {
                display: none !important;
        }

        .sollu-segment-btn {
                flex: 1 1 auto !important;
                padding: 7px 12px !important;
                font-size: 12px !important;
                white-space: nowrap !important;
        }

        .sollu-courses-toolbar-actions {
                width: 100% !important;
                flex-direction: column !important;
                align-items: stretch !important;
                gap: 10px !important;
        }

        .sollu-courses-search-wrap {
                width: 100% !important;
        }

        .sollu-courses-sort-wrap {
                width: 100% !important;
                justify-content: space-between !important;
        }

        /* SALA DE AULA NO MOBILE: PROGRESSO EXPANSÍVEL NO TOPO */
        .sollu-classroom-split {
                display: flex !important;
                flex-direction: column !important;
                gap: 16px !important;
        }

        .sollu-classroom-main {
                order: 2 !important;
                width: 100% !important;
                min-width: 0 !important;
        }

        .sollu-classroom-sidebar,
        #sollu-student-app .sollu-classroom-sidebar {
                order: 1 !important;
                width: 100% !important;
                min-width: 100% !important;
                max-width: 100% !important;
                position: static !important;
                max-height: none !important;
                padding: 16px 18px !important;
                margin: 0 auto 4px auto !important;
                border-radius: 18px !important;
                box-sizing: border-box !important;
                display: flex !important;
                flex-direction: column !important;
        }

        .sollu-cr-progress-card {
                padding-bottom: 0 !important;
                border-bottom: none !important;
                margin-bottom: 0 !important;
                cursor: pointer !important;
                user-select: none !important;
        }

        .sollu-cr-mobile-toggle-badge {
                display: inline-flex !important;
        }

        .sollu-cr-modules-accordion {
                display: none !important;
                margin-top: 14px !important;
                padding-top: 14px !important;
                border-top: var(--sollu-border-glass) !important;
        }

        .sollu-classroom-sidebar.sollu-mobile-curriculum-open .sollu-cr-modules-accordion {
                display: flex !important;
                flex-direction: column !important;
                gap: 10px !important;
                animation: sollu-fade-in 0.25s ease !important;
        }

        .sollu-classroom-sidebar.sollu-mobile-curriculum-open .sollu-cr-mobile-chevron {
                transform: rotate(180deg) !important;
        }

        /* SUPORTE TABS E ANOTAÇÕES NO MOBILE */
        .sollu-support-tabs-card {
                padding: 16px 14px !important;
        }

        .sollu-sup-tab-btn {
                padding: 8px 12px !important;
                font-size: 12px !important;
                gap: 6px !important;
        }

        .sollu-notes-header-actions {
                flex-wrap: wrap !important;
                gap: 8px !important;
        }

        /* FORMULÁRIO DE PROVA / QUIZ NO MOBILE */
        .sollu-quiz-exam-container {
                padding: 20px 12px !important;
        }

        .sollu-quiz-question-card {
                padding: 16px 14px !important;
                margin-bottom: 14px !important;
        }

        .sollu-quiz-option-label {
                padding: 12px 14px !important;
                font-size: 13px !important;
                gap: 10px !important;
        }

        .sollu-quiz-submit-action-bar {
                flex-direction: column !important;
                align-items: stretch !important;
                gap: 12px !important;
                padding: 14px 16px !important;
                width: 100% !important;
                box-sizing: border-box !important;
        }

        .sollu-quiz-answered-indicator {
                justify-content: center !important;
                width: 100% !important;
        }

        #sollu-btn-submit-quiz-action {
                width: 100% !important;
                justify-content: center !important;
                padding: 12px 16px !important;
                font-size: 13.5px !important;
                white-space: normal !important;
                text-align: center !important;
        }
}

/* =============================================================================
   18.1 ULTRA-LUXURIOUS LIGHT THEME SPECIFIC OVERHAUL (100% ALABASTER & WARM GOLD)
   ============================================================================= */
html[data-sollu-theme="light"],
body[data-sollu-theme="light"],
[data-sollu-theme="light"] {
        background-color: #F8F7F4 !important;
        color: #334155 !important;
}

[data-sollu-theme="light"] #sollu-student-app,
#sollu-student-app[data-sollu-theme="light"] {
        background-color: #F8F7F4 !important;
        background-image: 
                radial-gradient(ellipse at 15% 10%, rgba(168, 134, 86, 0.05) 0%, transparent 50%),
                radial-gradient(ellipse at 85% 85%, rgba(143, 167, 191, 0.04) 0%, transparent 60%) !important;
        color: #334155 !important;
}

/* Dock Lateral Esquerda */
[data-sollu-theme="light"] .sollu-student-sidebar,
[data-sollu-theme="light"] .sollu-dock-sidebar,
#sollu-student-app[data-sollu-theme="light"] .sollu-student-sidebar,
#sollu-student-app[data-sollu-theme="light"] .sollu-dock-sidebar {
        background: #FFFFFF !important;
        border-right: 1px solid rgba(168, 134, 86, 0.16) !important;
        box-shadow: 0 10px 30px -5px rgba(26, 21, 15, 0.05) !important;
}

#sollu-student-app[data-sollu-theme="light"] .sollu-sidebar-brand {
        background: #F8F7F4 !important;
        border: 1px solid rgba(168, 134, 86, 0.20) !important;
}

#sollu-student-app[data-sollu-theme="light"] .sollu-nav-item {
        color: #64748B !important;
}

#sollu-student-app[data-sollu-theme="light"] .sollu-nav-item:hover {
        color: #7A5B2E !important;
        background: rgba(168, 134, 86, 0.08) !important;
        border-color: rgba(168, 134, 86, 0.25) !important;
}

#sollu-student-app[data-sollu-theme="light"] .sollu-nav-item.sollu-nav-active {
        color: #7A5B2E !important;
        background: rgba(168, 134, 86, 0.14) !important;
        border: 1px solid rgba(168, 134, 86, 0.35) !important;
        box-shadow: 0 2px 10px rgba(168, 134, 86, 0.12) !important;
}

#sollu-student-app[data-sollu-theme="light"] .sollu-btn-theme-toggle,
#sollu-student-app[data-sollu-theme="light"] .sollu-btn-logout {
        color: #64748B !important;
}

#sollu-student-app[data-sollu-theme="light"] .sollu-btn-theme-toggle:hover,
#sollu-student-app[data-sollu-theme="light"] .sollu-btn-logout:hover {
        color: #7A5B2E !important;
        background: rgba(168, 134, 86, 0.08) !important;
}

/* Topbar */
[data-sollu-theme="light"] .sollu-student-topbar,
#sollu-student-app[data-sollu-theme="light"] .sollu-student-topbar {
        background: rgba(255, 255, 255, 0.95) !important;
        border: 1px solid rgba(168, 134, 86, 0.16) !important;
        box-shadow: 0 10px 30px -5px rgba(26, 21, 15, 0.05) !important;
}

[data-sollu-theme="light"] .sollu-topbar-search,
#sollu-student-app[data-sollu-theme="light"] .sollu-topbar-search {
        background: #F8F7F4 !important;
        border: 1px solid rgba(0, 0, 0, 0.08) !important;
}

[data-sollu-theme="light"] .sollu-topbar-search input,
#sollu-student-app[data-sollu-theme="light"] .sollu-topbar-search input {
        color: #12141A !important;
}

[data-sollu-theme="light"] .sollu-topbar-btn-notif,
#sollu-student-app[data-sollu-theme="light"] .sollu-topbar-btn-notif {
        background: #FFFFFF !important;
        border: 1px solid rgba(168, 134, 86, 0.20) !important;
        color: #64748B !important;
}

[data-sollu-theme="light"] .sollu-topbar-btn-notif:hover,
#sollu-student-app[data-sollu-theme="light"] .sollu-topbar-btn-notif:hover {
        color: #7A5B2E !important;
        border-color: #7A5B2E !important;
        background: rgba(168, 134, 86, 0.08) !important;
}

[data-sollu-theme="light"] .sollu-topbar-user-capsule,
#sollu-student-app[data-sollu-theme="light"] .sollu-topbar-user-capsule {
        background: #FFFFFF !important;
        border: 1px solid rgba(168, 134, 86, 0.25) !important;
        color: #12141A !important;
        box-shadow: 0 2px 10px rgba(0, 0, 0, 0.04) !important;
}

[data-sollu-theme="light"] .sollu-topbar-user-capsule:hover,
#sollu-student-app[data-sollu-theme="light"] .sollu-topbar-user-capsule:hover {
        background: rgba(168, 134, 86, 0.08) !important;
        border-color: #7A5B2E !important;
        box-shadow: 0 4px 14px rgba(168, 134, 86, 0.15) !important;
}

[data-sollu-theme="light"] .sollu-topbar-avatar,
#sollu-student-app[data-sollu-theme="light"] .sollu-topbar-avatar {
        background: #F8F7F4 !important;
        border: 1.5px solid #A88656 !important;
        color: #7A5B2E !important;
}

/* Canvas da Sala de Aula & Player */
[data-sollu-theme="light"] .sollu-player-canvas-wrap,
#sollu-student-app[data-sollu-theme="light"] .sollu-player-canvas-wrap {
        background: #FFFFFF !important;
        border: 1px solid rgba(168, 134, 86, 0.18) !important;
        box-shadow: 0 10px 30px -5px rgba(26, 21, 15, 0.05) !important;
}

[data-sollu-theme="light"] .sollu-player-canvas-wrap.sollu-canvas-content,
#sollu-student-app[data-sollu-theme="light"] .sollu-player-canvas-wrap.sollu-canvas-content {
        background: #FFFFFF !important;
        border: 1px solid rgba(168, 134, 86, 0.18) !important;
}

/* Provas & Avaliações na Sala de Aula */
[data-sollu-theme="light"] .sollu-quiz-exam-container,
#sollu-student-app[data-sollu-theme="light"] .sollu-quiz-exam-container {
        background: transparent !important;
        color: #12141A !important;
}

[data-sollu-theme="light"] .sollu-quiz-exam-container h2,
#sollu-student-app[data-sollu-theme="light"] .sollu-quiz-exam-container h2 {
        color: #12141A !important;
}

[data-sollu-theme="light"] .sollu-quiz-exam-container p,
#sollu-student-app[data-sollu-theme="light"] .sollu-quiz-exam-container p {
        color: #4A5060 !important;
}

[data-sollu-theme="light"] .sollu-quiz-timer-header,
#sollu-student-app[data-sollu-theme="light"] .sollu-quiz-timer-header {
        background: rgba(230, 57, 70, 0.08) !important;
        border: 1px solid rgba(230, 57, 70, 0.25) !important;
        color: #D90429 !important;
}

[data-sollu-theme="light"] .sollu-quiz-timer-clock,
#sollu-student-app[data-sollu-theme="light"] .sollu-quiz-timer-clock {
        color: #D90429 !important;
}

[data-sollu-theme="light"] .sollu-quiz-question-card,
#sollu-student-app[data-sollu-theme="light"] .sollu-quiz-question-card {
        background: #FAF9F6 !important;
        border: 1px solid rgba(168, 134, 86, 0.18) !important;
        box-shadow: 0 4px 15px rgba(0, 0, 0, 0.03) !important;
}

[data-sollu-theme="light"] .sollu-quiz-question-card h3,
#sollu-student-app[data-sollu-theme="light"] .sollu-quiz-question-card h3 {
        color: #12141A !important;
}

[data-sollu-theme="light"] .sollu-quiz-option-label,
#sollu-student-app[data-sollu-theme="light"] .sollu-quiz-option-label {
        background: #FFFFFF !important;
        border: 1px solid rgba(168, 134, 86, 0.20) !important;
        color: #12141A !important;
}

[data-sollu-theme="light"] .sollu-quiz-option-label:hover,
#sollu-student-app[data-sollu-theme="light"] .sollu-quiz-option-label:hover {
        background: rgba(168, 134, 86, 0.08) !important;
        border-color: #7A5B2E !important;
}

[data-sollu-theme="light"] .sollu-quiz-submit-action-bar,
#sollu-student-app[data-sollu-theme="light"] .sollu-quiz-submit-action-bar {
        background: #FFFFFF !important;
        border: 1px solid rgba(168, 134, 86, 0.25) !important;
        box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08) !important;
}

[data-sollu-theme="light"] .sollu-quiz-answered-indicator,
#sollu-student-app[data-sollu-theme="light"] .sollu-quiz-answered-indicator {
        color: #12141A !important;
}

[data-sollu-theme="light"] .sollu-quiz-answered-indicator strong,
#sollu-student-app[data-sollu-theme="light"] .sollu-quiz-answered-indicator strong {
        color: #7A5B2E !important;
}

/* Ações do Topo da Sala de Aula (Voltar, Tela Cheia, Modo Foco) */
[data-sollu-theme="light"] .sollu-btn-back-course,
#sollu-student-app[data-sollu-theme="light"] .sollu-btn-back-course {
        background: #FFFFFF !important;
        border: 1px solid rgba(168, 134, 86, 0.25) !important;
        color: #12141A !important;
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04) !important;
}

[data-sollu-theme="light"] .sollu-btn-back-course:hover,
#sollu-student-app[data-sollu-theme="light"] .sollu-btn-back-course:hover {
        background: rgba(168, 134, 86, 0.08) !important;
        border-color: #7A5B2E !important;
        color: #7A5B2E !important;
}

[data-sollu-theme="light"] .sollu-cr-header-actions button,
[data-sollu-theme="light"] #sollu-btn-fullscreen,
[data-sollu-theme="light"] #sollu-btn-cinema-mode,
#sollu-student-app[data-sollu-theme="light"] .sollu-cr-header-actions button,
#sollu-student-app[data-sollu-theme="light"] #sollu-btn-fullscreen,
#sollu-student-app[data-sollu-theme="light"] #sollu-btn-cinema-mode {
        color: #334155 !important;
        background: #FFFFFF !important;
        border: 1px solid rgba(168, 134, 86, 0.20) !important;
}

[data-sollu-theme="light"] .sollu-cr-header-actions button:hover,
[data-sollu-theme="light"] #sollu-btn-fullscreen:hover,
[data-sollu-theme="light"] #sollu-btn-cinema-mode:hover,
#sollu-student-app[data-sollu-theme="light"] .sollu-cr-header-actions button:hover,
#sollu-student-app[data-sollu-theme="light"] #sollu-btn-fullscreen:hover,
#sollu-student-app[data-sollu-theme="light"] #sollu-btn-cinema-mode:hover {
        color: #7A5B2E !important;
        background: rgba(168, 134, 86, 0.08) !important;
        border-color: #7A5B2E !important;
}

/* Sidebar da Sala de Aula & Acordeão */
[data-sollu-theme="light"] .sollu-classroom-sidebar,
#sollu-student-app[data-sollu-theme="light"] .sollu-classroom-sidebar {
        background: #FFFFFF !important;
        border: 1px solid rgba(168, 134, 86, 0.16) !important;
        box-shadow: 0 8px 24px rgba(26, 21, 15, 0.04) !important;
}

[data-sollu-theme="light"] .sollu-cr-progress-card h4,
#sollu-student-app[data-sollu-theme="light"] .sollu-cr-progress-card h4 {
        color: #12141A !important;
}

[data-sollu-theme="light"] .sollu-cr-mod-group,
#sollu-student-app[data-sollu-theme="light"] .sollu-cr-mod-group {
        background: #FFFFFF !important;
        border: 1px solid rgba(168, 134, 86, 0.16) !important;
        box-shadow: 0 4px 15px rgba(0, 0, 0, 0.03) !important;
}

[data-sollu-theme="light"] .sollu-cr-mod-header,
#sollu-student-app[data-sollu-theme="light"] .sollu-cr-mod-header {
        background: #FAF8F5 !important;
        color: #12141A !important;
}

[data-sollu-theme="light"] .sollu-cr-mod-header:hover,
#sollu-student-app[data-sollu-theme="light"] .sollu-cr-mod-header:hover {
        background: rgba(168, 134, 86, 0.08) !important;
}

[data-sollu-theme="light"] .sollu-cr-submod-container,
#sollu-student-app[data-sollu-theme="light"] .sollu-cr-submod-container {
        background: #FAF8F5 !important;
        border: 1px solid rgba(168, 134, 86, 0.20) !important;
        border-left: 3px solid #A88656 !important;
}

[data-sollu-theme="light"] .sollu-cr-submod-header,
#sollu-student-app[data-sollu-theme="light"] .sollu-cr-submod-header {
        color: #7A5B2E !important;
}

[data-sollu-theme="light"] .sollu-cr-lesson-btn,
#sollu-student-app[data-sollu-theme="light"] .sollu-cr-lesson-btn {
        background: rgba(0, 0, 0, 0.02) !important;
        color: #334155 !important;
}

[data-sollu-theme="light"] .sollu-cr-lesson-btn:hover,
#sollu-student-app[data-sollu-theme="light"] .sollu-cr-lesson-btn:hover {
        background: rgba(168, 134, 86, 0.10) !important;
        color: #7A5B2E !important;
}

[data-sollu-theme="light"] .sollu-cr-lesson-btn.sollu-cr-active,
#sollu-student-app[data-sollu-theme="light"] .sollu-cr-lesson-btn.sollu-cr-active {
        color: #7A5B2E !important;
        background: rgba(168, 134, 86, 0.14) !important;
        border: 1px solid rgba(168, 134, 86, 0.35) !important;
}

/* Barra de Ações da Aula no Rodapé */
[data-sollu-theme="light"] .sollu-lesson-actions-bar,
#sollu-student-app[data-sollu-theme="light"] .sollu-lesson-actions-bar {
        background: #FFFFFF !important;
        border: 1px solid rgba(168, 134, 86, 0.16) !important;
        box-shadow: 0 8px 24px rgba(26, 21, 15, 0.04) !important;
}

[data-sollu-theme="light"] .sollu-lesson-actions-bar .sollu-btn-secondary,
#sollu-student-app[data-sollu-theme="light"] .sollu-lesson-actions-bar .sollu-btn-secondary {
        background: #F8F7F4 !important;
        border: 1px solid rgba(168, 134, 86, 0.20) !important;
        color: #12141A !important;
}

[data-sollu-theme="light"] .sollu-lesson-actions-bar .sollu-btn-secondary:hover,
#sollu-student-app[data-sollu-theme="light"] .sollu-lesson-actions-bar .sollu-btn-secondary:hover {
        background: rgba(168, 134, 86, 0.10) !important;
        border-color: #7A5B2E !important;
        color: #7A5B2E !important;
}

/* Anotações & Abas de Suporte */
[data-sollu-theme="light"] .sollu-support-tabs-card,
[data-sollu-theme="light"] .sollu-lesson-info-box,
#sollu-student-app[data-sollu-theme="light"] .sollu-support-tabs-card,
#sollu-student-app[data-sollu-theme="light"] .sollu-lesson-info-box {
        background: #FFFFFF !important;
        border: 1px solid rgba(168, 134, 86, 0.16) !important;
        box-shadow: 0 8px 24px rgba(26, 21, 15, 0.04) !important;
}

[data-sollu-theme="light"] .sollu-notes-creator,
#sollu-student-app[data-sollu-theme="light"] .sollu-notes-creator {
        background: #FAF8F5 !important;
        border: 1px solid rgba(168, 134, 86, 0.18) !important;
        box-shadow: 0 4px 15px rgba(0, 0, 0, 0.03) !important;
}

[data-sollu-theme="light"] .sollu-notes-creator textarea,
#sollu-student-app[data-sollu-theme="light"] .sollu-notes-creator textarea {
        color: #12141A !important;
}

[data-sollu-theme="light"] .sollu-note-item,
#sollu-student-app[data-sollu-theme="light"] .sollu-note-item {
        background: #FFFFFF !important;
        border: 1px solid rgba(168, 134, 86, 0.16) !important;
        box-shadow: 0 4px 15px rgba(0, 0, 0, 0.03) !important;
}

[data-sollu-theme="light"] .sollu-note-item-text,
#sollu-student-app[data-sollu-theme="light"] .sollu-note-item-text {
        color: #12141A !important;
}

[data-sollu-theme="light"] .sollu-material-download-card,
#sollu-student-app[data-sollu-theme="light"] .sollu-material-download-card {
        background: #FFFFFF !important;
        border: 1px solid rgba(168, 134, 86, 0.16) !important;
        box-shadow: 0 4px 15px rgba(0, 0, 0, 0.03) !important;
}

/* Cards de Cursos, Vitrine e Estatísticas */
[data-sollu-theme="light"] .sollu-student-stat-card,
#sollu-student-app[data-sollu-theme="light"] .sollu-student-stat-card {
        background: #FFFFFF !important;
        border: 1px solid rgba(168, 134, 86, 0.16) !important;
        box-shadow: 0 8px 24px rgba(26, 21, 15, 0.04) !important;
}

[data-sollu-theme="light"] .sollu-course-card,
#sollu-student-app[data-sollu-theme="light"] .sollu-course-card {
        background: #FFFFFF !important;
        border: 1px solid rgba(168, 134, 86, 0.22) !important;
        box-shadow: 0 14px 36px -8px rgba(26, 21, 15, 0.08), 0 2px 8px rgba(0, 0, 0, 0.02) !important;
}

[data-sollu-theme="light"] .sollu-course-card:hover,
#sollu-student-app[data-sollu-theme="light"] .sollu-course-card:hover {
        border-color: rgba(168, 134, 86, 0.50) !important;
        box-shadow: 0 20px 45px -10px rgba(26, 21, 15, 0.14), 0 0 20px rgba(168, 134, 86, 0.12) !important;
}

[data-sollu-theme="light"] .sollu-course-card-title,
#sollu-student-app[data-sollu-theme="light"] .sollu-course-card-title {
        color: #0F172A !important;
}

[data-sollu-theme="light"] .sollu-course-card-desc,
#sollu-student-app[data-sollu-theme="light"] .sollu-course-card-desc {
        color: #475569 !important;
}

[data-sollu-theme="light"] .sollu-progress-lessons-text,
#sollu-student-app[data-sollu-theme="light"] .sollu-progress-lessons-text {
        color: #64748B !important;
        font-weight: 600 !important;
}

[data-sollu-theme="light"] .sollu-progress-pct-num,
#sollu-student-app[data-sollu-theme="light"] .sollu-progress-pct-num {
        color: #8A6530 !important;
        font-weight: 700 !important;
}

[data-sollu-theme="light"] .sollu-progress-bar-wrap,
#sollu-student-app[data-sollu-theme="light"] .sollu-progress-bar-wrap {
        background: rgba(0, 0, 0, 0.07) !important;
        border: 1px solid rgba(0, 0, 0, 0.04) !important;
}

[data-sollu-theme="light"] .sollu-progress-bar-fill,
#sollu-student-app[data-sollu-theme="light"] .sollu-progress-bar-fill {
        background: linear-gradient(90deg, #A88656 0%, #C5A880 50%, #7A5B2E 100%) !important;
        box-shadow: 0 0 8px rgba(168, 134, 86, 0.30) !important;
}

[data-sollu-theme="light"] .sollu-course-card-body .sollu-btn.sollu-btn-primary,
#sollu-student-app[data-sollu-theme="light"] .sollu-course-card-body .sollu-btn.sollu-btn-primary {
        background: linear-gradient(135deg, #A88656 0%, #7A5B2E 100%) !important;
        color: #FFFFFF !important;
        box-shadow: 0 6px 18px rgba(122, 91, 46, 0.25) !important;
}

[data-sollu-theme="light"] .sollu-course-card-body .sollu-btn.sollu-btn-primary:hover,
#sollu-student-app[data-sollu-theme="light"] .sollu-course-card-body .sollu-btn.sollu-btn-primary:hover {
        background: linear-gradient(135deg, #B89360 0%, #8A6530 100%) !important;
        box-shadow: 0 8px 24px rgba(122, 91, 46, 0.35) !important;
        transform: translateY(-2px) !important;
}

[data-sollu-theme="light"] .sollu-filter-segmented,
#sollu-student-app[data-sollu-theme="light"] .sollu-filter-segmented {
        background: #F1EFEA !important;
        border: 1px solid rgba(168, 134, 86, 0.18) !important;
}

[data-sollu-theme="light"] .sollu-segment-btn,
#sollu-student-app[data-sollu-theme="light"] .sollu-segment-btn {
        color: #556277 !important;
}

[data-sollu-theme="light"] .sollu-segment-btn:hover,
#sollu-student-app[data-sollu-theme="light"] .sollu-segment-btn:hover {
        color: #12141A !important;
        background: rgba(0, 0, 0, 0.04) !important;
}

[data-sollu-theme="light"] .sollu-segment-btn.sollu-segment-active,
#sollu-student-app[data-sollu-theme="light"] .sollu-segment-btn.sollu-segment-active {
        background: #FFFFFF !important;
        color: #7A5B2E !important;
        font-weight: 700 !important;
        border: 1px solid rgba(168, 134, 86, 0.35) !important;
        box-shadow: 0 3px 12px rgba(26, 21, 15, 0.08) !important;
}

[data-sollu-theme="light"] .sollu-courses-toolbar,
#sollu-student-app[data-sollu-theme="light"] .sollu-courses-toolbar {
        background: #FFFFFF !important;
        border: 1px solid rgba(168, 134, 86, 0.20) !important;
        box-shadow: 0 10px 30px -5px rgba(26, 21, 15, 0.06) !important;
}

[data-sollu-theme="light"] .sollu-courses-search-wrap,
[data-sollu-theme="light"] .sollu-courses-sort-wrap,
#sollu-student-app[data-sollu-theme="light"] .sollu-courses-search-wrap,
#sollu-student-app[data-sollu-theme="light"] .sollu-courses-sort-wrap {
        background: #F8F7F4 !important;
        border: 1px solid rgba(168, 134, 86, 0.20) !important;
}

[data-sollu-theme="light"] .sollu-courses-search-wrap:focus-within,
#sollu-student-app[data-sollu-theme="light"] .sollu-courses-search-wrap:focus-within {
        background: #FFFFFF !important;
        border-color: var(--sollu-accent-gold) !important;
        box-shadow: 0 0 0 3px rgba(168, 134, 86, 0.18) !important;
}

[data-sollu-theme="light"] .sollu-courses-counter-badge,
#sollu-student-app[data-sollu-theme="light"] .sollu-courses-counter-badge {
        background: rgba(168, 134, 86, 0.08) !important;
        border: 1px solid rgba(168, 134, 86, 0.25) !important;
        color: #7A5B2E !important;
}

[data-sollu-theme="light"] .sollu-course-fav-btn,
#sollu-student-app[data-sollu-theme="light"] .sollu-course-fav-btn {
        background: rgba(255, 255, 255, 0.85) !important;
        border: 1px solid rgba(0, 0, 0, 0.10) !important;
        color: #64748B !important;
}

[data-sollu-theme="light"] .sollu-course-fav-btn.is-favorited,
#sollu-student-app[data-sollu-theme="light"] .sollu-course-fav-btn.is-favorited {
        color: #D97706 !important;
        background: #FEF3C7 !important;
        border-color: #F59E0B !important;
}

[data-sollu-theme="light"] .sollu-course-fav-btn.is-favorited svg,
#sollu-student-app[data-sollu-theme="light"] .sollu-course-fav-btn.is-favorited svg {
        fill: #D97706 !important;
        stroke: #D97706 !important;
}

[data-sollu-theme="light"] .sollu-empty-state-card,
#sollu-student-app[data-sollu-theme="light"] .sollu-empty-state-card {
        background: #FFFFFF !important;
        border: 1px solid rgba(168, 134, 86, 0.18) !important;
        box-shadow: 0 10px 30px -5px rgba(26, 21, 15, 0.06) !important;
}

[data-sollu-theme="light"] .sollu-empty-title,
#sollu-student-app[data-sollu-theme="light"] .sollu-empty-title {
        color: #12141A !important;
}

[data-sollu-theme="light"] .sollu-empty-desc,
#sollu-student-app[data-sollu-theme="light"] .sollu-empty-desc {
        color: #64748B !important;
}

[data-sollu-theme="light"] .sollu-empty-icon-wrap,
#sollu-student-app[data-sollu-theme="light"] .sollu-empty-icon-wrap {
        background: rgba(0, 0, 0, 0.03) !important;
        border: 1px solid rgba(0, 0, 0, 0.08) !important;
        color: #64748B !important;
}

[data-sollu-theme="light"] .sollu-empty-icon-wrap.sollu-empty-icon-gold,
#sollu-student-app[data-sollu-theme="light"] .sollu-empty-icon-wrap.sollu-empty-icon-gold {
        background: rgba(168, 134, 86, 0.10) !important;
        border-color: rgba(168, 134, 86, 0.30) !important;
        color: #7A5B2E !important;
}

/* Modais e Dropdowns */
[data-sollu-theme="light"] .sollu-user-dropdown-menu,
[data-sollu-theme="light"] .sollu-profile-dropdown-menu,
[data-sollu-theme="light"] .sollu-modal-card,
#sollu-student-app[data-sollu-theme="light"] .sollu-user-dropdown-menu,
#sollu-student-app[data-sollu-theme="light"] .sollu-profile-dropdown-menu,
#sollu-student-app[data-sollu-theme="light"] .sollu-modal-card {
        background: #FFFFFF !important;
        border: 1px solid rgba(168, 134, 86, 0.20) !important;
        box-shadow: 0 20px 45px rgba(26, 21, 15, 0.12) !important;
}

[data-sollu-theme="light"] .sollu-dropdown-item,
#sollu-student-app[data-sollu-theme="light"] .sollu-dropdown-item {
        color: #334155 !important;
}

[data-sollu-theme="light"] .sollu-dropdown-item:hover,
#sollu-student-app[data-sollu-theme="light"] .sollu-dropdown-item:hover {
        background: rgba(168, 134, 86, 0.08) !important;
        color: #7A5B2E !important;
}

/* Botões Secundários e Dourados em Modo Claro */
[data-sollu-theme="light"] .sollu-btn-secondary,
#sollu-student-app[data-sollu-theme="light"] .sollu-btn-secondary {
        background: rgba(0, 0, 0, 0.04) !important;
        border: 1px solid rgba(0, 0, 0, 0.10) !important;
        color: #334155 !important;
}

[data-sollu-theme="light"] .sollu-btn-secondary:hover,
#sollu-student-app[data-sollu-theme="light"] .sollu-btn-secondary:hover {
        background: rgba(168, 134, 86, 0.10) !important;
        border-color: rgba(168, 134, 86, 0.35) !important;
        color: #7A5B2E !important;
}

[data-sollu-theme="light"] .sollu-btn-gold-glass,
#sollu-student-app[data-sollu-theme="light"] .sollu-btn-gold-glass {
        background: rgba(168, 134, 86, 0.10) !important;
        border: 1px solid rgba(168, 134, 86, 0.30) !important;
        color: #7A5B2E !important;
}

[data-sollu-theme="light"] .sollu-btn-gold-glass:hover,
#sollu-student-app[data-sollu-theme="light"] .sollu-btn-gold-glass:hover {
        background: var(--sollu-accent-gradient-gold) !important;
        color: #FFFFFF !important;
        box-shadow: 0 4px 15px rgba(168, 134, 86, 0.30) !important;
}

/* Botão Flutuante de Sair da Tela Cheia */
.sollu-btn-exit-fullscreen {
        position: absolute !important;
        top: 16px !important;
        right: 16px !important;
        z-index: 99999 !important;
        display: inline-flex !important;
        align-items: center !important;
        gap: 8px !important;
        background: rgba(11, 12, 16, 0.85) !important;
        backdrop-filter: var(--sollu-blur) !important;
        -webkit-backdrop-filter: var(--sollu-blur) !important;
        border: 1px solid rgba(197, 168, 128, 0.40) !important;
        color: #FFFFFF !important;
        padding: 8px 16px !important;
        border-radius: var(--sollu-radius-pill) !important;
        font-size: 13px !important;
        font-weight: 600 !important;
        cursor: pointer !important;
        box-shadow: 0 8px 24px rgba(0, 0, 0, 0.6) !important;
        transition: all 0.2s ease !important;
        outline: none !important;
}

.sollu-btn-exit-fullscreen:hover {
        background: var(--sollu-accent-gold) !important;
        color: #0B0C10 !important;
        box-shadow: 0 10px 30px rgba(197, 168, 128, 0.35) !important;
        transform: translateY(-2px) !important;
}

[data-sollu-theme="light"] .sollu-btn-exit-fullscreen,
#sollu-student-app[data-sollu-theme="light"] .sollu-btn-exit-fullscreen {
        background: rgba(255, 255, 255, 0.95) !important;
        border: 1px solid rgba(168, 134, 86, 0.35) !important;
        color: #12141A !important;
        box-shadow: 0 8px 24px rgba(0, 0, 0, 0.15) !important;
}

[data-sollu-theme="light"] .sollu-btn-exit-fullscreen:hover,
#sollu-student-app[data-sollu-theme="light"] .sollu-btn-exit-fullscreen:hover {
        background: var(--sollu-accent-gradient-gold) !important;
        color: #FFFFFF !important;
}

/* =============================================================================
   19. ANIMATION KEYFRAMES
   ============================================================================= */
@keyframes sollu-slide-up {
        from { transform: translateY(20px); opacity: 0; }
        to { transform: translateY(0); opacity: 1; }
}

@keyframes sollu-fade-in {
        from { opacity: 0; transform: translateY(6px); }
        to { opacity: 1; transform: translateY(0); }
}

@keyframes sollu-scale-in {
        from { transform: scale(0.96); opacity: 0; }
        to { transform: scale(1); opacity: 1; }
}

/* =============================================================================
   20. MODAL DE AVALIAÇÃO DE AULA (5 ESTRELAS + FEEDBACK) - LUXURY REDESIGN
   ============================================================================= */
.sollu-rate-modal-card {
        max-width: 500px !important;
        width: 92% !important;
        background: #0E131F !important;
        border: 1px solid rgba(255, 184, 0, 0.22) !important;
        border-radius: 24px !important;
        padding: 28px 30px !important;
        box-shadow: 0 25px 70px rgba(0, 0, 0, 0.75), 0 0 35px rgba(255, 184, 0, 0.08) !important;
        animation: sollu-scale-in 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
        position: relative !important;
        z-index: 10001 !important;
        box-sizing: border-box !important;
}

[data-sollu-theme="light"] .sollu-rate-modal-card,
#sollu-student-app[data-sollu-theme="light"] .sollu-rate-modal-card {
        background: #FFFFFF !important;
        border: 1px solid rgba(168, 134, 86, 0.25) !important;
        box-shadow: 0 25px 70px rgba(0, 0, 0, 0.12), 0 0 35px rgba(200, 154, 60, 0.08) !important;
}

/* Header do Modal */
.sollu-rate-modal-head {
        display: flex !important;
        align-items: center !important;
        gap: 16px !important;
        padding-bottom: 18px !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.07) !important;
        position: relative !important;
}

[data-sollu-theme="light"] .sollu-rate-modal-head,
#sollu-student-app[data-sollu-theme="light"] .sollu-rate-modal-head {
        border-bottom: 1px solid rgba(0, 0, 0, 0.07) !important;
}

.sollu-rate-icon-badge {
        width: 44px !important;
        height: 44px !important;
        min-width: 44px !important;
        border-radius: 14px !important;
        background: linear-gradient(135deg, rgba(255, 184, 0, 0.18), rgba(255, 184, 0, 0.04)) !important;
        border: 1px solid rgba(255, 184, 0, 0.35) !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        box-shadow: 0 4px 14px rgba(255, 184, 0, 0.15) !important;
}

.sollu-rate-head-info {
        flex: 1 !important;
        min-width: 0 !important;
        text-align: left !important;
}

.sollu-rate-title {
        margin: 0 !important;
        font-size: 18px !important;
        font-weight: 700 !important;
        color: #FFFFFF !important;
        letter-spacing: -0.2px !important;
}

[data-sollu-theme="light"] .sollu-rate-title,
#sollu-student-app[data-sollu-theme="light"] .sollu-rate-title {
        color: #0F172A !important;
}

.sollu-rate-lesson-tag {
        display: inline-block !important;
        font-size: 12px !important;
        font-weight: 600 !important;
        color: #FFB800 !important;
        background: rgba(255, 184, 0, 0.12) !important;
        border: 1px solid rgba(255, 184, 0, 0.25) !important;
        padding: 2px 10px !important;
        border-radius: 20px !important;
        margin-top: 4px !important;
        max-width: 300px !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
}

[data-sollu-theme="light"] .sollu-rate-lesson-tag,
#sollu-student-app[data-sollu-theme="light"] .sollu-rate-lesson-tag {
        color: #8C6228 !important;
        background: rgba(200, 154, 60, 0.12) !important;
        border-color: rgba(200, 154, 60, 0.28) !important;
}

/* Corpo do Modal */
.sollu-rate-modal-body {
        padding: 20px 0 6px 0 !important;
}

.sollu-rate-subtitle {
        font-size: 13.5px !important;
        color: #94A3B8 !important;
        line-height: 1.5 !important;
        margin: 0 0 18px 0 !important;
        text-align: center !important;
}

[data-sollu-theme="light"] .sollu-rate-subtitle,
#sollu-student-app[data-sollu-theme="light"] .sollu-rate-subtitle {
        color: #64748B !important;
}

/* Container de Estrelas */
.sollu-rating-stars-container {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 14px !important;
        padding: 20px 16px !important;
        background: rgba(255, 255, 255, 0.02) !important;
        border: 1px solid rgba(255, 255, 255, 0.05) !important;
        border-radius: 18px !important;
        margin-bottom: 20px !important;
}

[data-sollu-theme="light"] .sollu-rating-stars-container,
#sollu-student-app[data-sollu-theme="light"] .sollu-rating-stars-container {
        background: #F8FAFC !important;
        border: 1px solid #E2E8F0 !important;
}

.sollu-rating-stars {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 14px !important;
}

.sollu-star-btn {
        background: transparent !important;
        border: none !important;
        outline: none !important;
        box-shadow: none !important;
        padding: 6px !important;
        cursor: pointer !important;
        color: rgba(255, 255, 255, 0.22) !important;
        transition: transform 0.2s cubic-bezier(0.34, 1.56, 0.64, 1), color 0.2s ease, filter 0.2s ease !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
}

[data-sollu-theme="light"] .sollu-star-btn,
#sollu-student-app[data-sollu-theme="light"] .sollu-star-btn {
        color: #CBD5E1 !important;
}

.sollu-star-btn svg {
        width: 38px !important;
        height: 38px !important;
        fill: currentColor !important;
        transition: all 0.2s ease !important;
}

.sollu-star-btn:hover,
.sollu-star-btn.sollu-star-hover {
        transform: scale(1.26) !important;
        color: #FFB800 !important;
        filter: drop-shadow(0 0 12px rgba(255, 184, 0, 0.8)) !important;
}

.sollu-star-btn.sollu-star-active {
        color: #FFB800 !important;
        filter: drop-shadow(0 0 12px rgba(255, 184, 0, 0.7)) !important;
}

.sollu-rating-feedback-badge {
        font-size: 13px !important;
        font-weight: 700 !important;
        color: #FFB800 !important;
        background: rgba(255, 184, 0, 0.1) !important;
        border: 1px solid rgba(255, 184, 0, 0.25) !important;
        padding: 5px 16px !important;
        border-radius: 20px !important;
        min-height: 28px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        letter-spacing: 0.2px !important;
        transition: all 0.2s ease !important;
}

[data-sollu-theme="light"] .sollu-rating-feedback-badge,
#sollu-student-app[data-sollu-theme="light"] .sollu-rating-feedback-badge {
        color: #8C6228 !important;
        background: rgba(200, 154, 60, 0.1) !important;
        border-color: rgba(200, 154, 60, 0.28) !important;
}

/* Campo de Comentário */
.sollu-rate-form-group {
        text-align: left !important;
        margin-top: 10px !important;
}

.sollu-rate-form-label {
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        font-size: 13.5px !important;
        font-weight: 600 !important;
        color: #E2E8F0 !important;
        margin-bottom: 8px !important;
}

[data-sollu-theme="light"] .sollu-rate-form-label,
#sollu-student-app[data-sollu-theme="light"] .sollu-rate-form-label {
        color: #334155 !important;
}

.sollu-rate-optional-tag {
        font-size: 11.5px !important;
        font-weight: 500 !important;
        color: #94A3B8 !important;
}

.sollu-rate-textarea {
        width: 100% !important;
        box-sizing: border-box !important;
        background: rgba(0, 0, 0, 0.3) !important;
        border: 1px solid rgba(255, 255, 255, 0.1) !important;
        border-radius: 14px !important;
        padding: 12px 16px !important;
        color: #F1F5F9 !important;
        font-size: 13.5px !important;
        line-height: 1.5 !important;
        resize: vertical !important;
        min-height: 85px !important;
        outline: none !important;
        transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
        font-family: inherit !important;
}

[data-sollu-theme="light"] .sollu-rate-textarea,
#sollu-student-app[data-sollu-theme="light"] .sollu-rate-textarea {
        background: #FFFFFF !important;
        border: 1px solid #CBD5E1 !important;
        color: #0F172A !important;
}

.sollu-rate-textarea:focus {
        border-color: #FFB800 !important;
        box-shadow: 0 0 0 3px rgba(255, 184, 0, 0.15) !important;
}

[data-sollu-theme="light"] .sollu-rate-textarea:focus,
#sollu-student-app[data-sollu-theme="light"] .sollu-rate-textarea:focus {
        border-color: #C89A3C !important;
        box-shadow: 0 0 0 3px rgba(200, 154, 60, 0.15) !important;
}

/* Rodapé do Modal */
.sollu-rate-modal-footer {
        display: flex !important;
        align-items: center !important;
        justify-content: flex-end !important;
        gap: 12px !important;
        padding-top: 18px !important;
        border-top: 1px solid rgba(255, 255, 255, 0.07) !important;
        margin-top: 18px !important;
}

[data-sollu-theme="light"] .sollu-rate-modal-footer,
#sollu-student-app[data-sollu-theme="light"] .sollu-rate-modal-footer {
        border-top: 1px solid rgba(0, 0, 0, 0.07) !important;
}

.sollu-rate-btn-cancel {
        padding: 11px 22px !important;
        border-radius: 12px !important;
        background: rgba(255, 255, 255, 0.06) !important;
        border: 1px solid rgba(255, 255, 255, 0.1) !important;
        color: #CBD5E1 !important;
        font-weight: 600 !important;
        font-size: 13.5px !important;
        cursor: pointer !important;
        transition: all 0.2s ease !important;
}

[data-sollu-theme="light"] .sollu-rate-btn-cancel,
#sollu-student-app[data-sollu-theme="light"] .sollu-rate-btn-cancel {
        background: #F1F5F9 !important;
        border: 1px solid #CBD5E1 !important;
        color: #334155 !important;
}

.sollu-rate-btn-cancel:hover {
        background: rgba(255, 255, 255, 0.12) !important;
        color: #FFFFFF !important;
}

[data-sollu-theme="light"] .sollu-rate-btn-cancel:hover,
#sollu-student-app[data-sollu-theme="light"] .sollu-rate-btn-cancel:hover {
        background: #E2E8F0 !important;
        color: #0F172A !important;
}

.sollu-rate-btn-submit {
        padding: 11px 24px !important;
        border-radius: 12px !important;
        background: linear-gradient(135deg, #FFB800, #E6A100) !important;
        color: #000000 !important;
        font-weight: 700 !important;
        font-size: 13.5px !important;
        border: none !important;
        box-shadow: 0 4px 15px rgba(255, 184, 0, 0.3) !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        cursor: pointer !important;
        transition: all 0.2s ease !important;
}

[data-sollu-theme="light"] .sollu-rate-btn-submit,
#sollu-student-app[data-sollu-theme="light"] .sollu-rate-btn-submit {
        background: linear-gradient(135deg, #C89A3C, #A77B28) !important;
        color: #FFFFFF !important;
        box-shadow: 0 4px 15px rgba(168, 134, 86, 0.3) !important;
}

.sollu-rate-btn-submit:hover {
        transform: translateY(-1px) !important;
        box-shadow: 0 6px 20px rgba(255, 184, 0, 0.45) !important;
}

#sollu-btn-rate-lesson svg {
        color: #FFB800 !important;
}

/* =========================================================================
   DISCUSSION / Q&A FORUM STYLES
   ========================================================================= */
.sollu-discussion-thread-card {
        transition: all 0.2s ease !important;
}

[data-sollu-theme="light"] .sollu-discussion-thread-card,
#sollu-student-app[data-sollu-theme="light"] .sollu-discussion-thread-card {
        background: #FFFFFF !important;
        border: 1px solid #E2E8F0 !important;
        box-shadow: 0 2px 10px rgba(0, 0, 0, 0.04) !important;
}

[data-sollu-theme="light"] .sollu-disc-reply-item,
#sollu-student-app[data-sollu-theme="light"] .sollu-disc-reply-item {
        background: #F8FAFC !important;
        border-left: 3px solid #C89A3C !important;
}

.sollu-disc-action-btn {
        transition: opacity 0.2s ease, transform 0.15s ease !important;
        opacity: 0.8 !important;
}

.sollu-disc-action-btn:hover {
        opacity: 1 !important;
        transform: scale(1.05) !important;
}

.sollu-inline-reply-box textarea {
        font-family: inherit !important;
}


/* =========================================================================
   VOLTAR AO SITE (Tela de Login / Pós-Logout) — Dark/Gold discreto
   ========================================================================= */
.sollu-auth-back-to-site {
        margin-top: 22px;
        text-align: center;
}
.sollu-back-to-site-link {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        padding: 9px 20px;
        font-size: 13px;
        font-weight: 600;
        letter-spacing: 0.02em;
        color: var(--sollu-accent-gold, #C5A880);
        text-decoration: none;
        border: 1px solid rgba(197, 168, 128, 0.35);
        border-radius: 999px;
        background: rgba(197, 168, 128, 0.05);
        transition: all 0.22s ease;
}
.sollu-back-to-site-link:hover {
        color: #0B0C10;
        background: var(--sollu-accent-gold, #C5A880);
        border-color: var(--sollu-accent-gold, #C5A880);
        box-shadow: 0 4px 16px rgba(197, 168, 128, 0.28);
        transform: translateY(-1px);
}
.sollu-back-to-site-link span:first-child {
        transition: transform 0.22s ease;
}
.sollu-back-to-site-link:hover span:first-child {
        transform: translateX(-3px);
}

/* =========================================================================
   AVISO DE NOME COMPLETO (Cadastro → Certificado)
   ========================================================================= */
.sollu-cert-name-warning {
        display: flex;
        align-items: flex-start;
        gap: 8px;
        margin-top: 8px;
        padding: 10px 12px;
        font-size: 12px;
        line-height: 1.45;
        color: var(--sollu-accent-gold-light, #E5CDB0);
        background: rgba(197, 168, 128, 0.09);
        border: 1px solid rgba(197, 168, 128, 0.30);
        border-left: 3px solid var(--sollu-accent-gold, #C5A880);
        border-radius: 8px;
}
.sollu-cert-name-warning-icon {
        flex-shrink: 0;
        font-size: 14px;
        line-height: 1.2;
}
