        /* --------------------------------------------------------------
           CORE STYLES & VARIABLES
           -------------------------------------------------------------- */
           @import url('https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;700&family=Space+Grotesk:wght@700&family=Fira+Code&display=swap');
        :root {
            --primary: #FF1063;
            --primary-dark: #d6004c;
            --primary-light: #ff4d8a;
            --dark: #0b0f19;
            --darker: #05080f;
            --surface: #111625;
            --text: #e2e8f0;
            --text-muted: #94a3b8;
            --glass: rgba(255, 255, 255, 0.03);
            --glass-border: rgba(255, 255, 255, 0.08);
            --gradient: linear-gradient(135deg, #FF1063 0%, #ff5f6d 100%);
            --warning: #ffbd2e;
            --danger: #ff5f56;
            --success: #27c93f;
            --font-main: 'Outfit', sans-serif;
        }

        body {
            font-family: var(--font-main);
            background-color: var(--dark);
            color: var(--text);
            overflow-x: hidden;
            line-height: 1.6;
            /* AGREGA ESTO PARA EL FONDO LLAMATIVO EN TODO EL SITIO */
            background-image: 
                radial-gradient(circle at 15% 50%, rgba(255, 16, 99, 0.08) 0%, transparent 25%), 
                radial-gradient(circle at 85% 30%, rgba(13, 202, 240, 0.08) 0%, transparent 25%);
            background-attachment: fixed; /* Para que el fondo no se mueva al hacer scroll */
        }

        h1, h2, h3, h4, h5, h6 {
            font-family: 'Space Grotesk', sans-serif;
            font-weight: 700;
            color: #fff;
        }

        /* Scrollbar */
        ::-webkit-scrollbar { width: 10px; }
        ::-webkit-scrollbar-track { background: var(--darker); }
        ::-webkit-scrollbar-thumb { background: var(--primary); border-radius: 5px; }

        /* Utilities */
        .text-primary-brand { color: var(--primary) !important; }
        .bg-primary-brand { background-color: var(--primary) !important; }
        .section-padding { padding: 100px 0; }
        
        .section-title {
            margin-bottom: 20px;
            position: relative;
            display: inline-block;
        }
        
        .section-subtitle {
            color: var(--primary);
            text-transform: uppercase;
            letter-spacing: 2px;
            font-size: 0.9rem;
            font-weight: 700;
            margin-bottom: 15px;
            display: block;
        }

        /* Buttons */
        .btn-brand {
            background: var(--primary);
            color: white;
            padding: 14px 40px;
            border-radius: 50px;
            font-weight: 600;
            transition: 0.3s;
            box-shadow: 0 10px 30px rgba(255, 16, 99, 0.3);
            border: none;
        }
        .btn-brand:hover {
            transform: translateY(-3px);
            box-shadow: 0 20px 40px rgba(255, 16, 99, 0.5);
            color: white;
        }

        .btn-outline-brand {
            background: transparent;
            color: white;
            padding: 12px 35px;
            border-radius: 50px;
            font-weight: 600;
            border: 2px solid rgba(255,255,255,0.2);
            transition: 0.3s;
        }
        .btn-outline-brand:hover {
            border-color: var(--primary);
            color: var(--primary);
        }

        /* Glass Card */
        .glass-card {
            background: var(--glass);
            backdrop-filter: blur(20px);
            border: 1px solid var(--glass-border);
            border-radius: 24px;
            padding: 40px;
            transition: all 0.4s ease;
            position: relative;
            overflow: hidden;
        }
        .glass-card:hover {
            transform: translateY(-5px);
            border-color: var(--primary);
            box-shadow: 0 20px 50px rgba(0,0,0,0.5);
        }

        /* --------------------------------------------------------------
           COMPONENTS & SECTIONS
           -------------------------------------------------------------- */
        
        /* Navbar */
        .navbar {
            background: rgba(5, 8, 15, 0.9);
            backdrop-filter: blur(15px);
            border-bottom: 1px solid var(--glass-border);
            padding: 15px 0;
        }
        .navbar-brand {
             font-size: 1.8rem; font-weight: 900; color: white !important; 
            }
        .navbar-brand img{
            height: 60px;
        }

        /* Hero */
        .hero {
            min-height: 100vh;
            display: flex;
            align-items: center;
            background: radial-gradient(circle at top right, rgba(255,16,99,0.15), transparent 40%);
            position: relative;
            padding-top: 80px;
        }
        .hero h1 { font-size: 4rem; line-height: 1.1; margin-bottom: 20px; }
        .hero .hero-img { animation: float 6s ease-in-out infinite; }

        @keyframes float {
            0% { transform: translateY(0px); }
            50% { transform: translateY(-20px); }
            100% { transform: translateY(0px); }
        }

        /* Pain Points (Riesgos) */
        .pain-card {
            border-left: 4px solid var(--danger);
            background: linear-gradient(90deg, rgba(255, 95, 86, 0.05) 0%, rgba(0,0,0,0) 100%);
        }

        /* DIAN Benefits */
        .dian-badge {
            background: white;
            color: #003366; /* DIAN Blue */
            font-weight: 900;
            padding: 5px 15px;
            border-radius: 8px;
            display: inline-block;
            margin-bottom: 20px;
        }

        /* Timeline */
        .timeline-step {
            position: relative;
            padding-left: 30px;
            margin-bottom: 40px;
            border-left: 2px solid var(--glass-border);
        }
        .timeline-step::before {
            content: '';
            position: absolute;
            left: -9px;
            top: 0;
            width: 16px;
            height: 16px;
            background: var(--dark);
            border: 3px solid var(--primary);
            border-radius: 50%;
        }

        /* Pricing */
        .pricing-card {
            background: var(--surface);
            border-radius: 30px;
            padding: 40px 30px;
            height: 100%;
            border: 1px solid var(--glass-border);
            position: relative;
        }
        .pricing-card.featured {
            background: linear-gradient(180deg, rgba(255,16,99,0.1) 0%, var(--surface) 100%);
            border: 2px solid var(--primary);
            transform: scale(1.05);
            z-index: 2;
        }
        .price-tag { font-size: 3rem; font-weight: 700; color: var(--primary); }
        .price-period { font-size: 1rem; color: var(--text-muted); }

        /* Footer */
        footer { background: #020305; border-top: 1px solid var(--glass-border); padding-top: 80px; }
        .text-muted { color: #838688bf !important; }

        .accordion-item {
    background-color: var(--surface);
    border-radius: 24px;
    border: 1px solid var(--glass-border);
    overflow: hidden;
    margin-bottom: 1rem;
}

.accordion-button {
    background-color: var(--surface) !important;
    color: var(--text) !important;
    box-shadow: none;
    border-radius: 24px !important;
    padding: 1.2rem 1.5rem;
}

.accordion-button:not(.collapsed) {
    border-bottom: 1px solid var(--glass-border);
    color: #fff !important;
}

.accordion-button::after {
    filter: invert(1); /* hace la flechita visible en fondo oscuro */
}

.accordion-body {
    background-color: var(--surface);
    color: var(--text-muted);
}

/* ---------- FIX ALERTA "NOTA SOBRE PAGOS" Y OTRAS ---------- */

.bg-glass {
    background: rgba(255, 255, 255, 0.06);
    backdrop-filter: blur(10px);
    border-radius: 18px;
}

.alert.alert-secondary.bg-glass {
    border: 1px solid var(--glass-border);
    color: var(--text);          /* texto más fuerte */
}

.alert.alert-secondary.bg-glass strong {
    color: #fff;                 /* resalta el "Nota sobre pagos" */
}
.whatsapp-float {
        position: fixed;
        bottom: 30px;
        right: 30px;
        background-color: #25D366;
        color: #FFF;
        border-radius: 50px;
        text-align: center;
        font-size: 30px;
        box-shadow: 2px 2px 20px rgba(37, 211, 102, 0.4);
        z-index: 1000;
        width: 60px;
        height: 60px;
        display: flex;
        align-items: center;
        justify-content: center;
        transition: all 0.3s ease;
        text-decoration: none;
    }
    .whatsapp-float:hover {
        background-color: #1ebe57;
        transform: scale(1.1);
        color: white;
    }
    .whatsapp-pulse {
        animation: pulse-green 2s infinite;
    }
    @keyframes pulse-green {
        0% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(37, 211, 102, 0.7); }
        70% { transform: scale(1); box-shadow: 0 0 0 10px rgba(37, 211, 102, 0); }
        100% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(37, 211, 102, 0); }
    }
    .medium-i {
        font-size: 2.5rem;
    }
    /* --- ESTILOS CENTRO DE AYUDA Y EDITOR --- */
.manual-sidebar {
    max-height: 80vh;
    overflow-y: auto;
}
.category-header {
    font-weight: 700;
    color: var(--primary);
    text-transform: uppercase;
    font-size: 0.8rem;
    margin-top: 20px;
    margin-bottom: 10px;
    padding-left: 10px;
    border-left: 2px solid var(--glass-border);
}
.manual-link {
    display: block;
    padding: 10px 15px;
    color: var(--text-muted);
    text-decoration: none;
    border-radius: 8px;
    transition: all 0.2s;
    cursor: pointer;
}
.manual-link:hover, .manual-link.active {
    background: var(--glass-border);
    color: white;
    padding-left: 20px;
}

/* Área de Contenido */
.manual-content img {
    max-width: 100%;
    border-radius: 12px;
    margin: 20px 0;
    border: 1px solid var(--glass-border);
}
.manual-content iframe {
    width: 100%;
    aspect-ratio: 16/9;
    border-radius: 12px;
    margin: 20px 0;
}
.manual-content ul, .manual-content ol {
    color: var(--text-muted);
    margin-bottom: 20px;
}
.manual-content strong {
    color: white;
}

/* Editor Toolbar */
.editor-toolbar {
    background: var(--surface);
    border-bottom: 1px solid var(--glass-border);
    padding: 10px;
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}
.editor-btn {
    background: rgba(255,255,255,0.1);
    border: none;
    color: white;
    padding: 5px 10px;
    border-radius: 5px;
    cursor: pointer;
}
.editor-btn:hover { background: var(--primary); }

#editor-area {
    min-height: 300px;
    background: rgba(0,0,0,0.2);
    color: var(--text);
    padding: 20px;
    outline: none;
    overflow-y: auto;
}
#admin-panel {
    display: none; /* Oculto por defecto */
    border: 2px solid var(--warning);
}
/* ==========================================================================
   7. CHATBOT PREMIUM (ESTILOS FALTANTES)
   ========================================================================== */

/* Botón Flotante (El círculo con el robot) */
.chat-btn {
    position: fixed;
    bottom: 30px;
    right: 30px;
    width: 65px;
    height: 65px;
    background: linear-gradient(135deg, var(--primary), var(--primary-light));
    border-radius: 50%;
    color: white;
    font-size: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    box-shadow: 0 10px 25px rgba(255, 16, 99, 0.5); /* Sombra Neón */
    transition: transform 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    z-index: 9000;
    border: 2px solid rgba(255,255,255,0.2);
}

.chat-btn:hover {
    transform: scale(1.1) rotate(10deg);
    box-shadow: 0 15px 35px rgba(255, 16, 99, 0.7);
}

/* Ventana del Chat */
.chat-window {
    position: fixed;
    bottom: 110px;
    right: 30px;
    width: 380px; /* Ancho fijo para que no se estire */
    height: 600px;
    background: rgba(17, 22, 37, 0.95); /* Fondo oscuro casi sólido */
    backdrop-filter: blur(20px);
    border: 1px solid var(--glass-border);
    border-radius: 24px;
    display: none;
    flex-direction: column;
    overflow: hidden;
    z-index: 9000;
    box-shadow: 0 20px 60px rgba(0,0,0,0.7);
    animation: slideUp 0.3s ease-out;
}

@keyframes slideUp {
    from { opacity: 0; transform: translateY(20px); }
    to { opacity: 1; transform: translateY(0); }
}

/* Cabecera del Chat */
.chat-header {
    background: linear-gradient(to right, rgba(255, 16, 99, 0.1), transparent);
    padding: 18px 20px;
    border-bottom: 1px solid var(--glass-border);
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.chat-header span { font-family: var(--font-heading); }

/* Botones de cabecera (Borrar / Cerrar) */
.clear-chat {
    font-size: 0.75rem;
    color: var(--text-muted);
    cursor: pointer;
    margin-right: 15px;
    transition: 0.2s;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    font-weight: 600;
}
.clear-chat:hover { color: var(--danger); }

/* Cuerpo del Chat */
.chat-body {
    flex: 1;
    padding: 20px;
    overflow-y: auto;
    scroll-behavior: smooth;
    display: flex;
    flex-direction: column;
    gap: 15px;
}

/* BURBUJAS DE MENSAJE */
.msg {
    max-width: 85%;
    padding: 12px 16px;
    border-radius: 18px;
    font-size: 0.95rem;
    line-height: 1.5;
    position: relative;
    word-wrap: break-word;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
}

/* Mensaje del Bot (Gris Oscuro) */
.msg-bot {
    background: #1f2937;
    color: #e2e8f0;
    border-bottom-left-radius: 4px;
    align-self: flex-start;
    border: 1px solid rgba(255,255,255,0.05);
}

/* Mensaje del Usuario (Rosa Logexa) */
.msg-user {
    background: linear-gradient(135deg, var(--primary), var(--primary-light));
    color: white;
    border-bottom-right-radius: 4px;
    align-self: flex-end;
    box-shadow: 0 4px 15px rgba(255, 16, 99, 0.3);
}

/* Imágenes dentro del chat */
.msg img {
    margin-top: 10px;
    border-radius: 12px;
    border: 1px solid rgba(255,255,255,0.2);
    max-width: 100%;
    transition: transform 0.2s;
    cursor: zoom-in;
}
.msg img:hover { transform: scale(1.02); }

/* Enlaces dentro del chat */
.msg a {
    color: #fff;
    font-weight: 700;
    text-decoration: underline;
    text-decoration-color: rgba(255,255,255,0.5);
}

/* Área de Escritura (Footer) */
.chat-footer {
    padding: 15px;
    background: var(--darker);
    border-top: 1px solid var(--glass-border);
    display: flex;
    gap: 10px;
    align-items: center;
}

.chat-input {
    flex: 1;
    background: rgba(255,255,255,0.05);
    border: 1px solid var(--glass-border);
    color: white;
    padding: 12px 15px;
    border-radius: 50px;
    outline: none;
    transition: 0.3s;
}
.chat-input:focus {
    border-color: var(--primary);
    background: rgba(0,0,0,0.3);
}

.send-btn {
    background: transparent;
    border: none;
    color: var(--primary);
    font-size: 1.4rem;
    cursor: pointer;
    transition: 0.2s;
    display: flex;
    align-items: center;
}
.send-btn:hover {
    color: var(--primary-light);
    transform: translateX(3px);
}

/* Indicador de escribiendo */
.typing {
    font-style: italic;
    color: var(--primary);
    font-size: 0.8rem;
    margin: 0 20px 10px;
    display: none;
    animation: pulse 1.5s infinite;
}

@keyframes pulse { 0% { opacity: 0.5; } 50% { opacity: 1; } 100% { opacity: 0.5; } }

/* ==========================================================================
   8. MEJORAS VISUALES (BUSCADOR Y ENLACES)
   ========================================================================== */

/* Buscador Estilo Cápsula */
.input-group {
    position: relative;
    border-radius: 50px;
    background: rgba(0, 0, 0, 0.3); /* Fondo muy oscuro */
    border: 1px solid rgba(255, 255, 255, 0.1);
    transition: all 0.3s ease;
}

/* El icono de la lupa */
.input-group-text {
    border: none;
    background: transparent;
    color: var(--text-muted);
    padding-left: 20px;
    transition: color 0.3s;
}

/* El campo de texto */
#search {
    background: transparent !important;
    border: none !important;
    color: white !important;
    box-shadow: none !important;
    padding: 15px 15px 15px 5px;
    font-weight: 500;
}

#search::placeholder { color: rgba(255, 255, 255, 0.3); }

/* EFECTO NEÓN AL HACER CLIC (FOCUS) */
.input-group:focus-within {
    border-color: var(--primary);
    background: rgba(0, 0, 0, 0.5);
    box-shadow: 0 0 15px rgba(255, 16, 99, 0.3), inset 0 0 10px rgba(0,0,0,0.5);
}

.input-group:focus-within .input-group-text {
    color: var(--primary); /* La lupa se pone rosa */
}

/* Enlaces dentro del contenido del manual */
.manual-body a {
    color: var(--primary); /* Rosa Logexa */
    font-weight: 700;
    text-decoration: none;
    position: relative;
    transition: all 0.3s ease;
    text-shadow: 0 0 2px rgba(0,0,0,0.5);
    padding-bottom: 2px;
    border-bottom: 1px dashed rgba(255, 16, 99, 0.4);
}

/* Animación Hover (Subrayado expansivo + Brillo) */
.manual-body a:hover {
    color: #fff; /* Texto blanco al pasar mouse */
    text-shadow: 0 0 10px var(--primary); /* Brillo rosa alrededor */
    border-bottom-style: solid;
    border-bottom-color: var(--primary);
    background: rgba(255, 16, 99, 0.1); /* Fondo sutil */
    border-radius: 4px;
    padding: 2px 5px; /* Un poco de aire */
    margin: 0 -5px; /* Compensar el padding para que no mueva el texto */
}

/* Icono automático para enlaces externos (Opcional pero se ve pro) */
.manual-body a::after {
    content: ' \f061'; /* Flecha FontAwesome */
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    font-size: 0.8em;
    opacity: 0;
    margin-left: 5px;
    transition: 0.3s;
    display: inline-block;
    transform: translateX(-5px);
}

.manual-body a:hover::after {
    opacity: 1;
    transform: translateX(0);
}

/* Links del Sidebar (Menú) */
.manual-link {
    color: var(--text-muted);
    border-left: 3px solid transparent;
    padding: 12px 15px;
    margin-bottom: 5px;
    transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
    font-size: 0.95rem;
}

.manual-link:hover {
    color: #fff;
    background: linear-gradient(90deg, rgba(255,255,255,0.05) 0%, transparent 100%);
    padding-left: 20px; /* Pequeño desplazamiento a la derecha */
}

.manual-link.active {
    color: #fff;
    border-left-color: var(--primary);
    background: linear-gradient(90deg, rgba(255, 16, 99, 0.15) 0%, transparent 100%);
    font-weight: 600;
    padding-left: 20px;
    text-shadow: 0 0 10px rgba(255, 16, 99, 0.4);
}

/* ==========================================================================
   9. MENÚ HAMBURGUESA Y NAV DINÁMICA
   ========================================================================== */

/* Botón Hamburguesa (Solo visible en móviles) */
.navbar-toggler {
    border: none;
    color: white;
    font-size: 1.5rem;
    cursor: pointer;
    padding: 5px;
    transition: 0.3s;
}
.navbar-toggler:hover { color: var(--primary); }

/* Menú Lateral Móvil (Offcanvas personalizado) */
.mobile-nav {
    position: fixed;
    top: 0; right: -300px; /* Oculto a la derecha */
    width: 280px; height: 100vh;
    background: rgba(11, 15, 25, 0.95);
    backdrop-filter: blur(20px);
    border-left: 1px solid var(--glass-border);
    z-index: 10000;
    transition: right 0.4s cubic-bezier(0.77, 0, 0.175, 1);
    padding: 25px;
    display: flex;
    flex-direction: column;
    box-shadow: -10px 0 30px rgba(0,0,0,0.5);
}

.btn-close-white {
    opacity: 0.8;
    transition: 0.3s;
}
.btn-close-white:hover { opacity: 1; transform: rotate(90deg); }

/* Enlaces del Menú */
.nav-link {
    color: #a0aec0 !important;
    font-weight: 500;
    padding: 12px 15px;
    border-radius: 8px;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    gap: 10px;
}

/* Hover y Activo */
.nav-link:hover, .nav-link.active {
    color: white !important;
    background: linear-gradient(90deg, rgba(255, 16, 99, 0.1), transparent);
    border-left: 3px solid var(--primary);
    padding-left: 20px; /* Animación de desplazamiento */
}

/* Iconos dentro del menú */
.nav-link i {
    width: 20px;
    text-align: center;
    color: var(--primary);
}

/* Separadores */
.nav-divider {
    margin: 15px 0;
    border-top: 1px solid rgba(255, 255, 255, 0) }

.mobile-nav.active { right: 0; } /* Mostrar */

/* Overlay oscuro para el fondo */
.nav-overlay {
    position: fixed; top: 0; left: 0; width: 100%; height: 100%;
    background: rgba(0,0,0,0.6); z-index: 9999;
    display: none; backdrop-filter: blur(3px);
}
.nav-overlay.active { display: block; }

/* Elementos del menú móvil */
.mobile-nav-header {
    display: flex; justify-content: space-between; align-items: center;
    margin-bottom: 30px; border-bottom: 1px solid var(--glass-border);
    padding-bottom:0.05px;
}

.nav-subtitle {
    font-size: 0.75rem;
    text-transform: uppercase;
    color: var(--text-muted);
    letter-spacing: 1px;
    margin-bottom: 10px;
    padding-left: 15px;
    font-weight: 700;
}
/* BARRA SUPERIOR */
        .editor-header {
            height: 70px;
            background: var(--surface);
            border-bottom: 1px solid var(--glass-border);
            display: flex;
            align-items: center;
            padding: 0 20px;
            justify-content: space-between;
            z-index: 10;
        }

        /* LOGO */
        .admin-logo {
            height: 35px; /* Ajusta esto según tu logo */
            width: auto;
            filter: drop-shadow(0 0 5px rgba(255, 16, 99, 0.3));
        }

        /* BOTÓN HAMBURGUESA */
        .menu-btn {
            background: transparent;
            border: 1px solid var(--glass-border);
            color: var(--text);
            padding: 8px 12px;
            border-radius: 8px;
            cursor: pointer;
            transition: 0.3s;
            margin-right: 15px;
        }
        .menu-btn:hover {
            background: rgba(255,255,255,0.1);
            color: var(--primary);
            border-color: var(--primary);
        }

        /* Inputs del Header */
        .header-input {
            background: var(--darker);
            border: 1px solid var(--glass-border);
            color: white;
            border-radius: 8px;
            padding: 8px 12px;
            font-size: 0.9rem;
        }
        .header-input:focus {
            border-color: var(--primary);
            outline: none;
            box-shadow: 0 0 10px rgba(255, 16, 99, 0.2);
        }

        /* AREA DE TRABAJO */
        .workspace { display: flex; flex: 1; height: calc(100vh - 70px); }
        .col-code { width: 50%; display: flex; flex-direction: column; border-right: 1px solid var(--glass-border); background-color: #0d1117; }
        .toolbar { padding: 10px; background: #161b22; border-bottom: 1px solid var(--glass-border); display: flex; gap: 8px; overflow-x: auto; }
        
        .tool-btn {
            background: rgba(255,255,255,0.05); border: 1px solid var(--glass-border);
            color: #c9d1d9; padding: 5px 10px; border-radius: 5px; font-size: 0.85rem;
            cursor: pointer; transition: 0.2s; white-space: nowrap;
        }
        .tool-btn:hover { background: var(--primary); color: white; border-color: var(--primary); }

        #html-code { flex: 1; width: 100%; background: transparent; color: #e6edf3; border: none; padding: 20px; font-family: 'Fira Code', monospace; font-size: 14px; line-height: 1.6; resize: none; outline: none; }
        .col-preview { width: 50%; background: var(--dark); overflow-y: auto; padding: 40px; position: relative; }
        .preview-label { position: absolute; top: 10px; right: 20px; font-size: 0.7rem; text-transform: uppercase; color: var(--text-muted); letter-spacing: 1px; opacity: 0.5; pointer-events: none; }
        .workspace ::-webkit-scrollbar { width: 8px; }
        .workspace ::-webkit-scrollbar-thumb { background: #30363d; border-radius: 4px; }

        /* MENÚ LATERAL (OFFCANVAS) PERSONALIZADO */
        .offcanvas {
            background-color: rgba(11, 15, 25, 0.98) !important;
            backdrop-filter: blur(15px);
            border-right: 1px solid var(--glass-border);
        }
        .offcanvas-header { border-bottom: 1px solid var(--glass-border); }
        .nav-link-admin {
            color: #a0aec0; padding: 12px 15px; border-radius: 8px; display: flex; align-items: center; gap: 10px; text-decoration: none; margin-bottom: 5px; transition: 0.3s;
        }
        .nav-link-admin:hover {
            background: rgba(255, 16, 99, 0.1); color: white; border-left: 3px solid var(--primary);
        }
        .nav-link-admin i { width: 20px; text-align: center; }
        .nav-link-admin.danger:hover { background: rgba(220, 53, 69, 0.1); border-left-color: var(--danger); color: var(--danger); }
/* ==========================================================================
   MEJORA DE COMENTARIOS (DARK GLASS UI)
   ========================================================================== */

/* Contenedor del Formulario */
.comment-form-box {
    background: rgba(0, 0, 0, 0.2);
    border-radius: 16px;
    padding: 25px;
    border: 1px solid var(--glass-border);
}

/* Inputs Oscuros Personalizados */
.comment-input {
    background-color: rgba(17, 24, 39, 0.8) !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    color: #e2e8f0 !important;
    border-radius: 12px !important;
    padding: 12px 15px !important;
    transition: all 0.3s ease;
}

.comment-input:focus {
    background-color: rgba(17, 24, 39, 1) !important;
    border-color: var(--primary) !important;
    box-shadow: 0 0 0 3px rgba(255, 16, 99, 0.15) !important;
}

.comment-input::placeholder {
    color: rgba(255, 255, 255, 0.3);
    font-size: 0.9rem;
}

/* Tarjeta de Comentario Individual */
.comment-card {
    background: rgba(255, 255, 255, 0.02);
    border: 1px solid rgba(255, 255, 255, 0.05);
    border-radius: 16px;
    padding: 20px;
    margin-bottom: 20px;
    transition: transform 0.2s;
    position: relative;
}

.comment-card:hover {
    background: rgba(255, 255, 255, 0.04);
    border-color: rgba(255, 255, 255, 0.1);
}

/* Avatar del Usuario */
.user-avatar {
    width: 45px; height: 45px;
    background: linear-gradient(135deg, #4facfe 0%, #00f2fe 100%); /* Azul eléctrico */
    color: #fff;
    font-weight: 800;
    border-radius: 12px; /* Cuadrado redondeado moderno */
    display: flex; align-items: center; justify-content: center;
    box-shadow: 0 4px 10px rgba(79, 172, 254, 0.3);
    font-size: 1.2rem;
}

/* Respuesta del Admin (Soporte) */
.admin-reply {
    margin-top: 15px;
    margin-left: 20px; /* Indentación */
    padding: 15px;
    background: rgba(255, 16, 99, 0.05); /* Fondo rosado muy sutil */
    border-left: 3px solid var(--primary);
    border-radius: 0 12px 12px 12px;
    position: relative;
}

.admin-reply::before {
    /* Línea conectora */
    content: '';
    position: absolute;
    top: -15px; left: -23px;
    width: 20px; height: 30px;
    border-bottom: 2px solid rgba(255, 16, 99, 0.3);
    border-left: 2px solid rgba(255, 16, 99, 0.3);
    border-bottom-left-radius: 10px;
}

.admin-badge {
    background: var(--primary);
    color: white;
    font-size: 0.7rem;
    padding: 2px 8px;
    border-radius: 4px;
    text-transform: uppercase;
    font-weight: 700;
    letter-spacing: 0.5px;
    margin-left: 8px;
}

/* Iconos en Inputs */
.input-icon-wrapper { position: relative; margin-bottom: 15px; }
.input-icon-wrapper i {
    position: absolute; left: 15px; top: 50%; transform: translateY(-50%);
    color: var(--text-muted);
}
.input-icon-wrapper input, .input-icon-wrapper textarea {
    padding-left: 40px !important; /* Espacio para el icono */
}
.input-icon-wrapper textarea { padding-top: 12px !important; }

@media (max-width: 576px) {
    .navbar-brand img {
        height: 50px !important; /* Un poco más pequeño en celular */
    }
    .navbar-brand span {
        font-size: 1.2rem !important; /* Texto más pequeño si decides mostrarlo */
    }
    /* Ajustar padding para que quepa el botón hamburguesa */
    .container-fluid {
        padding-left: 15px;
        padding-right: 15px;
    }
}