/* =========================================================
   ACADEMINT
   CSS GLOBAL DE LA APLICACIÓN
   ========================================================= */


/* =========================================================
   VARIABLES
   ========================================================= */

:root {

    /* Marca */
    --academint-primary: #635bff;
    --academint-primary-hover: #5149e8;
    --academint-primary-light: #eeecff;

    /* Sidebar */
    --sidebar-background: #171923;
    --sidebar-hover: #252837;
    --sidebar-active: #635bff;
    --sidebar-text: #c9cbd5;
    --sidebar-muted: #777b8e;

    /* Aplicación */
    --app-background: #f5f6fa;
    --card-background: #ffffff;

    /* Bordes */
    --border-color: #e5e7eb;
    --border-dark: #d1d5db;

    /* Texto */
    --text-primary: #1f2937;
    --text-secondary: #6b7280;
    --text-muted: #9ca3af;

    /* Estados */
    --success: #22c55e;
    --warning: #f59e0b;
    --danger: #ef4444;
    --info: #0ea5e9;

    /* Layout */
    --sidebar-width: 245px;
    --navbar-height: 64px;

    /* Bordes redondeados */
    --radius-sm: 6px;
    --radius-md: 9px;
    --radius-lg: 12px;

    /* Sombras */
    --shadow-sm:
        0 1px 3px rgba(0, 0, 0, 0.08);

    --shadow-md:
        0 4px 14px rgba(0, 0, 0, 0.08);

}


/* =========================================================
   RESET
   ========================================================= */

* {
    box-sizing: border-box;
}


html,
body {
    margin: 0;
    padding: 0;
    min-height: 100%;
}


html {
    scroll-behavior: smooth;
}


body {

    font-family:
        Inter,
        system-ui,
        -apple-system,
        BlinkMacSystemFont,
        "Segoe UI",
        Roboto,
        Helvetica,
        Arial,
        sans-serif;

    background: var(--app-background);

    color: var(--text-primary);

    font-size: 14px;

}


/* =========================================================
   LINKS
   ========================================================= */

a {
    color: var(--academint-primary);
}


a:hover {
    color: var(--academint-primary-hover);
}


/* =========================================================
   APP PRINCIPAL
   ========================================================= */

.app-wrapper {

    width: 100%;

    min-height: 100vh;

    display: flex;

}


/* =========================================================
   SIDEBAR
   ========================================================= */

.app-sidebar {

    position: fixed;

    top: 0;
    left: 0;

    width: var(--sidebar-width);
    min-width: var(--sidebar-width);

    height: 100vh;

    display: flex;

    flex-direction: column;

    background: var(--sidebar-background);

    color: white;

    z-index: 1050;

    box-shadow:
        3px 0 15px rgba(0, 0, 0, 0.08);

}


/* =========================================================
   LOGO
   ========================================================= */

.sidebar-brand {

    height: 72px;

    flex-shrink: 0;

    display: flex;

    align-items: center;

    gap: 12px;

    padding: 0 20px;

    border-bottom:
        1px solid rgba(255, 255, 255, 0.07);

    color: white;

    font-size: 20px;

    font-weight: 700;

}


.brand-icon {

    width: 36px;
    height: 36px;

    min-width: 36px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 9px;

    background: var(--academint-primary);

    color: white;

    font-size: 19px;

    font-weight: 800;

    box-shadow:
        0 4px 10px rgba(99, 91, 255, 0.3);

}


/* =========================================================
   NAVEGACIÓN SIDEBAR
   ========================================================= */

.sidebar-nav {

    flex: 1;

    min-height: 0;

    padding: 16px 12px;

    overflow-y: auto;
    overflow-x: hidden;

}


.sidebar-nav::-webkit-scrollbar {
    width: 5px;
}


.sidebar-nav::-webkit-scrollbar-thumb {

    background:
        rgba(255, 255, 255, 0.12);

    border-radius: 10px;

}


/* =========================================================
   SECCIONES SIDEBAR
   ========================================================= */

.sidebar-section {

    margin:
        22px
        12px
        8px;

    color: var(--sidebar-muted);

    font-size: 10px;

    font-weight: 700;

    text-transform: uppercase;

    letter-spacing: 0.1em;

}


/* =========================================================
   LINKS SIDEBAR
   ========================================================= */

.sidebar-link {

    width: 100%;

    min-height: 42px;

    display: flex;

    align-items: center;

    gap: 12px;

    padding: 9px 12px;

    margin-bottom: 4px;

    border-radius: 8px;

    color: var(--sidebar-text);

    text-decoration: none;

    font-size: 14px;

    font-weight: 500;

    transition:
        background-color 0.15s ease,
        color 0.15s ease,
        transform 0.15s ease;

}


.sidebar-link i {

    width: 21px;

    min-width: 21px;

    text-align: center;

    font-size: 17px;

}


.sidebar-link:hover {

    background: var(--sidebar-hover);

    color: white;

}


.sidebar-link.active {

    background: var(--sidebar-active);

    color: white;

    box-shadow:
        0 4px 12px rgba(99, 91, 255, 0.25);

}


/* =========================================================
   PERFIL DEL USUARIO
   ========================================================= */

.sidebar-profile {

    min-height: 74px;

    flex-shrink: 0;

    display: flex;

    align-items: center;

    gap: 10px;

    padding: 12px;

    border-top:
        1px solid rgba(255, 255, 255, 0.08);

    background:
        rgba(0, 0, 0, 0.08);

}




.sidebar-profile-link {

    min-width: 0;

    flex: 1;

    display: flex;

    align-items: center;

    gap: 10px;

    padding: 4px;

    margin: -4px;

    border-radius: 10px;

    color: inherit;

    text-decoration: none;

    transition:
        background-color 0.18s ease,
        transform 0.18s ease;

}


.sidebar-profile-link:hover {

    background: rgba(255, 255, 255, 0.07);

    color: inherit;

}


.sidebar-profile-link:focus-visible {

    outline: 2px solid rgba(139, 92, 246, 0.95);

    outline-offset: 2px;

}


/* Avatar */

.profile-avatar {

    width: 40px;
    height: 40px;

    min-width: 40px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background:
        linear-gradient(
            135deg,
            var(--academint-primary),
            #8b5cf6
        );

    color: white;

    font-size: 15px;

    font-weight: 700;

}


/* Información */

.profile-info {

    min-width: 0;

    flex: 1;

    display: flex;

    flex-direction: column;

}


.profile-info strong {

    color: white;

    font-size: 13px;

    font-weight: 600;

    white-space: nowrap;

    overflow: hidden;

    text-overflow: ellipsis;

}


.profile-info small {

    margin-top: 2px;

    color: var(--sidebar-muted);

    font-size: 11px;

}


/* Botón opciones */

.profile-menu-button {

    width: 32px;
    height: 32px;

    display: flex;

    align-items: center;
    justify-content: center;

    padding: 0;

    border: none;

    border-radius: 7px;

    background: transparent;

    color: var(--sidebar-text);

    font-size: 17px;

    cursor: pointer;

}


.profile-menu-button:hover {

    background: var(--sidebar-hover);

    color: white;

}


/* =========================================================
   CONTENIDO PRINCIPAL
   ========================================================= */

.app-main {

    width:
        calc(
            100% - var(--sidebar-width)
        );

    min-width: 0;

    min-height: 100vh;

    margin-left: var(--sidebar-width);

}


/* =========================================================
   NAVBAR SUPERIOR
   ========================================================= */

.app-navbar {

    position: sticky;

    top: 0;

    width: 100%;

    height: var(--navbar-height);

    display: flex;

    align-items: center;

    justify-content: space-between;

    padding: 0 24px;

    background:
        rgba(255, 255, 255, 0.97);

    border-bottom:
        1px solid var(--border-color);

    z-index: 1000;

    backdrop-filter: blur(10px);

}


/* Academia */

.navbar-academy {

    color: var(--text-primary);

    font-size: 15px;

    font-weight: 600;

}


/* Acciones */

.navbar-actions {

    display: flex;

    align-items: center;

    gap: 5px;

}


/* Botones navbar */

.navbar-icon-button {

    width: 38px;
    height: 38px;

    display: flex;

    align-items: center;
    justify-content: center;

    padding: 0;

    border: none;

    border-radius: 8px;

    background: transparent;

    color: var(--text-secondary);

    font-size: 17px;

    cursor: pointer;

    transition:
        background-color 0.15s ease,
        color 0.15s ease;

}


.navbar-icon-button:hover {

    background: #f3f4f6;

    color: var(--text-primary);

}


/* =========================================================
   ÁREA DE CONTENIDO
   ========================================================= */

.app-content {

    width: 100%;

    min-height:
        calc(
            100vh - var(--navbar-height)
        );

    padding: 24px;

}


/* =========================================================
   TÍTULO DE PÁGINA
   ========================================================= */

.page-title {

    display: flex;

    align-items: flex-start;

    justify-content: space-between;

    gap: 20px;

    margin-bottom: 20px;

}


.page-title h1 {

    margin:
        4px
        0
        5px;

    color: var(--text-primary);

    font-size: 28px;

    font-weight: 700;

    line-height: 1.2;

}


.page-title p {

    margin: 0;

    color: var(--text-secondary);

    font-size: 14px;

}


.page-eyebrow {

    display: inline-flex;

    align-items: center;

    gap: 6px;

    color: var(--academint-primary);

    font-size: 12px;

    font-weight: 600;

}


/* =========================================================
   TARJETAS GLOBALES
   ========================================================= */

.academint-card {

    background: var(--card-background);

    border:
        1px solid var(--border-color);

    border-radius: var(--radius-lg);

    box-shadow: var(--shadow-sm);

}


/* =========================================================
   BOTONES ACADEMINT
   ========================================================= */

.btn-academint {

    border-color: var(--academint-primary);

    background: var(--academint-primary);

    color: white;

    font-weight: 500;

}


.btn-academint:hover,
.btn-academint:focus {

    border-color: var(--academint-primary-hover);

    background: var(--academint-primary-hover);

    color: white;

}


.btn-academint:active {

    border-color: var(--academint-primary-hover) !important;

    background: var(--academint-primary-hover) !important;

    color: white !important;

}


/* =========================================================
   FORMULARIOS
   ========================================================= */

.form-control,
.form-select {

    border-color: var(--border-color);

    border-radius: 8px;

}


.form-control:focus,
.form-select:focus {

    border-color: var(--academint-primary);

    box-shadow:
        0 0 0 0.2rem
        rgba(99, 91, 255, 0.12);

}


/* =========================================================
   DROPDOWNS
   ========================================================= */

.dropdown-menu {

    padding: 6px;

    border:
        1px solid var(--border-color);

    border-radius: 10px;

    box-shadow:
        0 10px 30px
        rgba(0, 0, 0, 0.12);

}


.dropdown-item {

    padding: 8px 10px;

    border-radius: 6px;

    font-size: 13px;

}


.dropdown-item:hover {

    background: #f4f4f7;

}


/* =========================================================
   BADGES
   ========================================================= */

.badge-academint {

    display: inline-flex;

    align-items: center;

    gap: 5px;

    padding: 5px 8px;

    border-radius: 999px;

    background:
        var(--academint-primary-light);

    color:
        var(--academint-primary);

    font-size: 11px;

    font-weight: 600;

}


/* =========================================================
   UTILIDADES
   ========================================================= */

.text-academint {
    color: var(--academint-primary) !important;
}


.bg-academint {
    background: var(--academint-primary) !important;
}


.text-secondary-app {
    color: var(--text-secondary);
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 900px) {

    :root {
        --sidebar-width: 72px;
    }


    .sidebar-brand {

        justify-content: center;

        padding: 0;

    }


    .sidebar-brand span {
        display: none;
    }


    .sidebar-section {
        display: none;
    }


    .sidebar-link {

        justify-content: center;

        padding-left: 0;
        padding-right: 0;

    }


    .sidebar-link span {
        display: none;
    }


    .sidebar-link i {

        width: auto;

        font-size: 20px;

    }


    .profile-info {
        display: none;
    }


    .sidebar-profile {

        flex-direction: column;

        justify-content: center;

        padding: 10px 5px;

    }


    .sidebar-profile-link {

        flex: 0 0 auto;

        justify-content: center;

        margin: 0;

        padding: 3px;

    }


    .profile-menu-button {
        display: none;
    }


    .app-content {
        padding: 18px;
    }


    .page-title h1 {
        font-size: 24px;
    }

}


/* =========================================================
   MÓVIL
   ========================================================= */

@media (max-width: 576px) {

    :root {
        --sidebar-width: 58px;
    }


    .brand-icon {

        width: 32px;
        height: 32px;

        min-width: 32px;

    }


    .profile-avatar {

        width: 34px;
        height: 34px;

        min-width: 34px;

    }


    .app-navbar {

        padding:
            0
            14px;

    }


    .app-content {

        padding:
            14px;

    }


    .navbar-academy {

        max-width: 150px;

        overflow: hidden;

        text-overflow: ellipsis;

        white-space: nowrap;

    }


    .page-title h1 {

        font-size: 22px;

    }

    /* =========================================================
   DASHBOARD
   ========================================================= */

.dashboard-page {
    width: 100%;
    max-width: 1500px;
    margin: 0 auto;
}


/* HERO */

.dashboard-hero {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 30px;

    margin-bottom: 32px;

    padding: 8px 2px 4px;
}


.dashboard-hero h1 {
    margin:
        6px
        0
        8px;

    font-size: 30px;
    font-weight: 700;
}


.dashboard-hero p {
    max-width: 650px;

    margin: 0;

    color: var(--text-secondary);

    font-size: 15px;
    line-height: 1.6;
}


.dashboard-hero-actions {
    flex-shrink: 0;
}


/* RESUMEN */

.dashboard-summary {
    display: grid;

    grid-template-columns:
        repeat(
            2,
            minmax(220px, 320px)
        );

    gap: 20px;

    margin-bottom: 38px;
}


.summary-card {
    display: flex;

    align-items: center;

    gap: 16px;

    padding: 20px;
}


.summary-icon {
    width: 50px;
    height: 50px;

    min-width: 50px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 12px;

    font-size: 20px;
}


.summary-icon-primary {
    background: var(--academint-primary-light);

    color: var(--academint-primary);
}


.summary-icon-secondary {
    background: #e0f2fe;

    color: #0284c7;
}


.summary-label {
    display: block;

    margin-bottom: 3px;

    color: var(--text-secondary);

    font-size: 12px;
}


.summary-value {
    display: block;

    font-size: 25px;

    line-height: 1.1;
}


.summary-text-value {
    display: block;

    font-size: 18px;
}


/* SECCIÓN */

.dashboard-section {
    margin-top: 10px;
}


.section-heading {
    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 25px;

    margin-bottom: 20px;
}


.section-heading h2 {
    margin:
        0
        0
        5px;

    font-size: 21px;

    font-weight: 700;
}


.section-heading p {
    margin: 0;

    color: var(--text-secondary);

    line-height: 1.5;
}


/* GRID DE ACADEMIAS */

.academies-grid {
    display: grid;

    grid-template-columns:
        repeat(
            auto-fill,
            minmax(300px, 1fr)
        );

    gap: 22px;
}


/* TARJETA ACADEMIA */

.academy-card {
    min-height: 245px;

    display: flex;

    flex-direction: column;

    padding: 22px;

    transition:
        transform 0.15s ease,
        box-shadow 0.15s ease;
}


.academy-card:hover {
    transform: translateY(-2px);

    box-shadow: var(--shadow-md);
}


.academy-card-top {
    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 12px;

    margin-bottom: 20px;
}


.academy-card-icon {
    width: 46px;
    height: 46px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 12px;

    background:
        var(--academint-primary-light);

    color:
        var(--academint-primary);

    font-size: 20px;
}


.academy-role-badge {
    display: inline-flex;

    align-items: center;

    padding:
        5px
        9px;

    border-radius: 999px;

    background: #f3f4f6;

    color: #4b5563;

    font-size: 11px;

    font-weight: 600;
}


.academy-role-admin {
    background:
        var(--academint-primary-light);

    color:
        var(--academint-primary);
}


.academy-card-body {
    flex: 1;
}


.academy-card-body h3 {
    margin:
        0
        0
        10px;

    font-size: 19px;

    font-weight: 700;
}


.academy-card-body p {
    margin: 0;

    color:
        var(--text-secondary);

    line-height: 1.55;
}


.academy-description-empty {
    font-style: italic;

    color:
        var(--text-muted) !important;
}


.academy-card-footer {
    display: flex;

    align-items: center;

    gap: 10px;

    flex-wrap: wrap;

    margin-top: 24px;

    padding-top: 18px;

    border-top:
        1px solid var(--border-color);
}


/* EMPTY STATE */

.empty-state {
    max-width: 700px;

    padding: 48px 30px;

    text-align: center;
}


.empty-state-icon {
    width: 64px;
    height: 64px;

    display: flex;

    align-items: center;
    justify-content: center;

    margin:
        0
        auto
        18px;

    border-radius: 16px;

    background:
        var(--academint-primary-light);

    color:
        var(--academint-primary);

    font-size: 27px;
}


.empty-state h3 {
    margin-bottom: 8px;

    font-size: 21px;
}


.empty-state p {
    max-width: 470px;

    margin:
        0
        auto
        22px;

    color:
        var(--text-secondary);

    line-height: 1.6;
}


/* RESPONSIVE DASHBOARD */

@media (max-width: 800px) {

    .dashboard-hero {
        align-items: flex-start;
        flex-direction: column;
    }


    .dashboard-summary {
        grid-template-columns: 1fr;
    }


    .section-heading {
        align-items: flex-start;
        flex-direction: column;
    }


    .academies-grid {
        grid-template-columns: 1fr;
    }

}


/* =========================================================
   ACADEMY PAGE
   ========================================================= */

.academy-page {
    width: 100%;
    max-width: 1500px;
    margin: 0 auto;
}


/* =========================================================
   HERO
   ========================================================= */

.academy-hero {
    display: flex;

    align-items: flex-start;
    justify-content: space-between;

    gap: 30px;

    padding: 8px 2px 30px;

    margin-bottom: 8px;

    border-bottom:
        1px solid var(--border-color);
}


.academy-hero-main {
    display: flex;

    align-items: flex-start;

    gap: 20px;

    min-width: 0;
}


.academy-hero-icon {
    width: 62px;
    height: 62px;

    min-width: 62px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 16px;

    background:
        linear-gradient(
            135deg,
            var(--academint-primary-light),
            #ddd6fe
        );

    color:
        var(--academint-primary);

    font-size: 27px;
}


.academy-hero h1 {
    margin:
        5px
        0
        8px;

    font-size: 30px;

    font-weight: 700;
}


.academy-hero p {
    max-width: 720px;

    margin: 0;

    color:
        var(--text-secondary);

    font-size: 15px;

    line-height: 1.6;
}


.academy-meta {
    display: flex;

    align-items: center;

    gap: 8px;

    margin-top: 15px;
}


.academy-role-badge-large {
    display: inline-flex;

    align-items: center;

    gap: 6px;

    padding:
        6px
        10px;

    border-radius: 999px;

    background:
        var(--academint-primary-light);

    color:
        var(--academint-primary);

    font-size: 12px;

    font-weight: 600;
}


.academy-hero-actions {
    flex-shrink: 0;
}


/* =========================================================
   SECCIONES
   ========================================================= */

.academy-section {
    margin-top: 36px;
}


.academy-projects-section {
    margin-top: 44px;
}


/* =========================================================
   ACCESOS RÁPIDOS
   ========================================================= */

.academy-actions-grid {
    display: grid;

    grid-template-columns:
        repeat(
            auto-fit,
            minmax(260px, 1fr)
        );

    gap: 20px;
}


.academy-action-card {
    position: relative;

    min-height: 145px;

    display: flex;

    align-items: flex-start;

    gap: 16px;

    padding: 22px;

    color:
        var(--text-primary);

    text-decoration: none;

    transition:
        transform 0.15s ease,
        box-shadow 0.15s ease,
        border-color 0.15s ease;
}


.academy-action-card:hover {
    color:
        var(--text-primary);

    transform:
        translateY(-2px);

    border-color:
        rgba(99, 91, 255, 0.25);

    box-shadow:
        var(--shadow-md);
}


.academy-action-icon {
    width: 48px;
    height: 48px;

    min-width: 48px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 12px;

    font-size: 20px;
}


.action-icon-purple {
    background: #ede9fe;
    color: #7c3aed;
}


.action-icon-blue {
    background: #dbeafe;
    color: #2563eb;
}


.action-icon-green {
    background: #dcfce7;
    color: #16a34a;
}


.action-icon-orange {
    background: #ffedd5;
    color: #ea580c;
}


.academy-action-card h3 {
    margin:
        2px
        0
        7px;

    font-size: 16px;

    font-weight: 700;
}


.academy-action-card p {
    margin: 0;

    color:
        var(--text-secondary);

    font-size: 13px;

    line-height: 1.5;
}


.academy-action-arrow {
    position: absolute;

    right: 18px;
    bottom: 18px;

    color:
        var(--text-muted);
}


/* =========================================================
   PROYECTOS
   ========================================================= */

.projects-grid {
    display: grid;

    grid-template-columns:
        repeat(
            auto-fill,
            minmax(300px, 1fr)
        );

    gap: 22px;
}


.project-card {
    min-height: 230px;

    display: flex;

    flex-direction: column;

    padding: 20px;

    transition:
        transform 0.15s ease,
        box-shadow 0.15s ease;
}


.project-card:hover {
    transform:
        translateY(-2px);

    box-shadow:
        var(--shadow-md);
}


.project-card-header {
    display: flex;

    align-items: center;
    justify-content: space-between;

    margin-bottom: 16px;
}


.project-icon {
    width: 42px;
    height: 42px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 11px;

    background:
        var(--academint-primary-light);

    color:
        var(--academint-primary);

    font-size: 18px;
}


.project-menu-button {
    width: 34px;
    height: 34px;

    border: none;

    border-radius: 8px;

    background: transparent;

    color:
        var(--text-secondary);
}


.project-menu-button:hover {
    background: #f3f4f6;

    color:
        var(--text-primary);
}


.project-card-body {
    flex: 1;
}


.project-card-body h3 {
    margin:
        0
        0
        9px;

    font-size: 18px;

    font-weight: 700;
}


.project-card-body p {
    margin: 0;

    color:
        var(--text-secondary);

    line-height: 1.55;
}


.project-empty-description {
    color:
        var(--text-muted) !important;

    font-style: italic;
}


.project-card-footer {
    margin-top: 22px;

    padding-top: 17px;

    border-top:
        1px solid var(--border-color);
}


/* =========================================================
   SIN PROYECTOS
   ========================================================= */

.academy-empty-projects {
    display: flex;

    align-items: center;

    gap: 20px;

    padding: 25px;
}


.empty-project-icon {
    width: 52px;
    height: 52px;

    min-width: 52px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 13px;

    background:
        var(--academint-primary-light);

    color:
        var(--academint-primary);

    font-size: 21px;
}


.academy-empty-projects h3 {
    margin:
        0
        0
        5px;

    font-size: 16px;
}


.academy-empty-projects p {
    margin: 0;

    color:
        var(--text-secondary);

    line-height: 1.5;

    flex: 1;
}


.academy-empty-projects .btn {
    margin-left: auto;

    flex-shrink: 0;
}


/* =========================================================
   ARCHIVADOS
   ========================================================= */

.archived-empty {
    display: flex;

    align-items: center;

    gap: 10px;

    padding: 20px;

    color:
        var(--text-secondary);
}


.archived-empty i {
    color:
        var(--text-muted);

    font-size: 18px;
}


.archived-projects-list {
    display: flex;

    flex-direction: column;

    gap: 12px;
}


.archived-project {
    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 25px;

    padding: 18px 20px;
}


.archived-project-info {
    display: flex;

    align-items: center;

    gap: 15px;

    min-width: 0;
}


.archived-project-icon {
    width: 42px;
    height: 42px;

    min-width: 42px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 10px;

    background: #f3f4f6;

    color:
        var(--text-secondary);
}


.archived-project h3 {
    margin:
        0
        0
        4px;

    font-size: 15px;

    font-weight: 700;
}


.archived-project p {
    margin: 0;

    color:
        var(--text-secondary);

    font-size: 13px;
}


.archived-project-actions {
    display: flex;

    align-items: center;

    gap: 8px;

    flex-shrink: 0;
}


.archived-project-actions form {
    margin: 0;
}


/* =========================================================
   RESPONSIVE ACADEMY
   ========================================================= */

@media (max-width: 900px) {

    .academy-hero {
        flex-direction: column;
    }


    .academy-hero-actions {
        width: 100%;
    }


    .academy-actions-grid {
        grid-template-columns: 1fr;
    }


    .projects-grid {
        grid-template-columns: 1fr;
    }


    .academy-empty-projects {
        align-items: flex-start;

        flex-direction: column;
    }


    .academy-empty-projects .btn {
        margin-left: 0;
    }


    .archived-project {
        align-items: flex-start;

        flex-direction: column;
    }


    .archived-project-actions {
        width: 100%;

        flex-wrap: wrap;
    }

}


@media (max-width: 576px) {

    .academy-hero-main {
        flex-direction: column;
    }


    .academy-hero-icon {
        width: 54px;
        height: 54px;

        min-width: 54px;
    }


    .academy-hero h1 {
        font-size: 25px;
    }

}

/* =========================================================
   GROUP DETAIL
   ========================================================= */

.group-detail-page {
    width: 100%;
    max-width: 1450px;
    margin: 0 auto;
}


/* =========================================================
   HERO
   ========================================================= */

.group-detail-hero {
    display: flex;

    align-items: flex-start;
    justify-content: space-between;

    gap: 30px;

    padding: 6px 2px 30px;

    margin-bottom: 26px;

    border-bottom:
        1px solid var(--border-color);
}


.group-detail-hero-main {
    display: flex;

    align-items: flex-start;

    gap: 22px;

    min-width: 0;
}


.group-detail-cover {
    width: 150px;
    height: 105px;

    min-width: 150px;

    overflow: hidden;

    border-radius: 14px;

    background: #e5e7eb;
}


.group-detail-cover img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;
}


.group-detail-cover-placeholder {
    width: 110px;
    height: 110px;

    min-width: 110px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 16px;

    background:
        var(--academint-primary-light);

    color:
        var(--academint-primary);

    font-size: 34px;
}


.group-detail-heading h1 {
    margin:
        5px
        0
        10px;

    font-size: 31px;

    font-weight: 700;
}


.group-detail-badges {
    display: flex;

    align-items: center;

    gap: 8px;

    flex-wrap: wrap;
}


.group-level-badge,
.group-modality-badge,
.group-status-badge {
    display: inline-flex;

    align-items: center;

    gap: 5px;

    padding:
        6px
        10px;

    border-radius: 999px;

    font-size: 11px;

    font-weight: 600;
}


.group-level-badge {
    background: #dbeafe;
    color: #2563eb;
}


.group-modality-badge {
    background:
        var(--academint-primary-light);

    color:
        var(--academint-primary);
}


.group-status-badge {
    background: #dcfce7;
    color: #15803d;
}


.group-status-badge i {
    font-size: 6px;
}


.group-detail-description {
    max-width: 720px;

    margin:
        14px
        0
        0;

    color:
        var(--text-secondary);

    line-height: 1.6;
}


.group-detail-actions {
    flex-shrink: 0;
}


/* =========================================================
   SUMMARY
   ========================================================= */

.group-summary-grid {
    display: grid;

    grid-template-columns:
        repeat(4, 1fr);

    gap: 18px;

    margin-bottom: 22px;
}


.group-summary-card {
    display: flex;

    align-items: center;

    gap: 14px;

    padding: 18px;
}


.group-summary-icon {
    width: 46px;
    height: 46px;

    min-width: 46px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 12px;

    font-size: 18px;
}


.summary-purple {
    background: #ede9fe;
    color: #7c3aed;
}


.summary-blue {
    background: #dbeafe;
    color: #2563eb;
}


.summary-green {
    background: #dcfce7;
    color: #16a34a;
}


.summary-orange {
    background: #ffedd5;
    color: #ea580c;
}


.group-summary-label {
    display: block;

    margin-bottom: 3px;

    color:
        var(--text-secondary);

    font-size: 11px;
}


.group-summary-card strong {
    font-size: 16px;
}


/* =========================================================
   CAPACITY
   ========================================================= */

.group-capacity-card {
    padding: 20px 22px;

    margin-bottom: 22px;
}


.group-capacity-heading {
    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 20px;

    margin-bottom: 14px;
}


.group-capacity-heading h2 {
    margin:
        0
        0
        3px;

    font-size: 15px;

    font-weight: 700;
}


.group-capacity-heading p {
    margin: 0;

    color:
        var(--text-secondary);

    font-size: 12px;
}


.group-capacity-heading > strong {
    font-size: 18px;

    color:
        var(--academint-primary);
}


.group-detail-progress {
    height: 8px;

    border-radius: 999px;

    background: #eef0f4;
}


.group-detail-progress .progress-bar {
    background:
        var(--academint-primary);
}


/* =========================================================
   MAIN GRID
   ========================================================= */

.group-main-grid {
    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 22px;

    margin-bottom: 22px;
}


/* =========================================================
   PANELS
   ========================================================= */

.group-panel {
    padding: 22px;
}


.group-panel-header {
    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 18px;

    margin-bottom: 22px;
}


.group-panel-header > div:first-child {
    display: flex;

    align-items: center;

    gap: 13px;
}


.panel-icon {
    width: 42px;
    height: 42px;

    min-width: 42px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 11px;

    font-size: 17px;
}


.panel-icon-purple {
    background: #ede9fe;
    color: #7c3aed;
}


.panel-icon-blue {
    background: #dbeafe;
    color: #2563eb;
}


.panel-icon-green {
    background: #dcfce7;
    color: #16a34a;
}


.group-panel-header h2 {
    margin:
        0
        0
        3px;

    font-size: 17px;

    font-weight: 700;
}


.group-panel-header p {
    margin: 0;

    color:
        var(--text-secondary);

    font-size: 12px;
}


/* =========================================================
   TEACHER
   ========================================================= */

.teacher-profile {
    display: flex;

    align-items: center;

    gap: 13px;
}


.teacher-avatar,
.student-avatar {
    width: 42px;
    height: 42px;

    min-width: 42px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background:
        linear-gradient(
            135deg,
            var(--academint-primary),
            #8b5cf6
        );

    color: white;

    font-weight: 700;
}


.teacher-data,
.student-info {
    display: flex;

    flex-direction: column;

    min-width: 0;
}


.teacher-data strong,
.student-info strong {
    font-size: 13px;
}


.teacher-data span,
.student-info span {
    margin-top: 2px;

    color:
        var(--text-secondary);

    font-size: 12px;

    overflow: hidden;

    text-overflow: ellipsis;

    white-space: nowrap;
}


.group-panel-divider {
    height: 1px;

    margin: 22px 0;

    background:
        var(--border-color);
}


.teacher-form-row {
    display: flex;

    align-items: center;

    gap: 10px;
}


.teacher-form-row .form-select {
    flex: 1;
}


/* =========================================================
   EMPTY PANEL
   ========================================================= */

.panel-empty-state {
    display: flex;

    align-items: center;

    gap: 10px;

    padding: 14px;

    border-radius: 9px;

    background: #f8f9fb;

    color:
        var(--text-secondary);
}


.panel-empty-state i {
    font-size: 18px;
}


.panel-empty-state p {
    margin: 0;
}


/* =========================================================
   INFO LIST
   ========================================================= */

.group-info-list {
    display: flex;

    flex-direction: column;
}


.group-info-item {
    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 20px;

    padding:
        13px
        0;

    border-bottom:
        1px solid var(--border-color);
}


.group-info-item:first-child {
    padding-top: 0;
}


.group-info-item:last-child {
    padding-bottom: 0;

    border-bottom: 0;
}


.group-info-item span {
    display: inline-flex;

    align-items: center;

    gap: 8px;

    color:
        var(--text-secondary);

    font-size: 12px;
}


.group-info-item strong {
    text-align: right;

    font-size: 12px;
}


/* =========================================================
   STUDENTS
   ========================================================= */

.students-panel {
    margin-bottom: 24px;
}


.students-panel-header {
    margin-bottom: 18px;
}


.group-full-badge {
    display: inline-flex;

    align-items: center;

    gap: 5px;

    padding:
        6px
        9px;

    border-radius: 999px;

    background: #fee2e2;

    color: #b91c1c;

    font-size: 11px;

    font-weight: 600;
}


.students-list {
    display: flex;

    flex-direction: column;

    border-top:
        1px solid var(--border-color);
}


.student-row {
    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 20px;

    padding:
        14px
        2px;

    border-bottom:
        1px solid var(--border-color);
}


.student-main {
    display: flex;

    align-items: center;

    gap: 12px;

    min-width: 0;
}


.students-empty {
    padding: 35px 20px;

    text-align: center;

    color:
        var(--text-secondary);
}


.students-empty > i {
    display: block;

    margin-bottom: 10px;

    color:
        var(--text-muted);

    font-size: 30px;
}


.students-empty h3 {
    margin:
        0
        0
        5px;

    color:
        var(--text-primary);

    font-size: 15px;
}


.students-empty p {
    margin: 0;
}


/* =========================================================
   ENROLLMENT
   ========================================================= */

.student-enrollment {
    margin-top: 28px;

    padding-top: 22px;

    border-top:
        1px solid var(--border-color);
}


.student-enrollment h3 {
    margin:
        0
        0
        15px;

    font-size: 15px;

    font-weight: 700;
}


.student-enrollment h3 i {
    margin-right: 5px;

    color:
        var(--academint-primary);
}


.enrollment-form {
    display: flex;

    align-items: center;

    gap: 10px;

    max-width: 750px;
}


.enrollment-form .form-select {
    flex: 1;
}


.enrollment-empty {
    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 25px;

    padding: 16px;

    border-radius: 10px;

    background: #f8f9fb;
}


.enrollment-empty strong {
    display: block;

    margin-bottom: 3px;
}


.enrollment-empty p {
    margin: 0;

    color:
        var(--text-secondary);

    font-size: 12px;

    line-height: 1.5;
}


/* =========================================================
   BOTTOM
   ========================================================= */

.group-detail-bottom-actions {
    display: flex;

    align-items: center;

    gap: 10px;

    flex-wrap: wrap;

    padding-bottom: 20px;
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 1100px) {

    .group-summary-grid {
        grid-template-columns:
            repeat(2, 1fr);
    }

}


@media (max-width: 850px) {

    .group-detail-hero {
        flex-direction: column;
    }


    .group-main-grid {
        grid-template-columns: 1fr;
    }


    .teacher-form-row,
    .enrollment-form {
        align-items: stretch;

        flex-direction: column;
    }


    .teacher-form-row .btn,
    .enrollment-form .btn {
        width: 100%;
    }

}


@media (max-width: 600px) {

    .group-detail-hero-main {
        flex-direction: column;
    }


    .group-detail-cover {
        width: 100%;
        height: 160px;
    }


    .group-summary-grid {
        grid-template-columns: 1fr;
    }


    .student-row {
        align-items: flex-start;

        flex-direction: column;
    }


    .enrollment-empty {
        align-items: flex-start;

        flex-direction: column;
    }

}

/* =========================================================
   GROUPS ADMIN PAGE
   ========================================================= */

.groups-page {
    width: 100%;
    max-width: 1500px;
    margin: 0 auto;
}


/* =========================================================
   HEADER
   ========================================================= */

.groups-page-header {
    display: flex;

    align-items: flex-start;
    justify-content: space-between;

    gap: 30px;

    padding: 6px 2px 26px;

    margin-bottom: 24px;

    border-bottom:
        1px solid var(--border-color);
}


.groups-page-header h1 {
    margin:
        5px
        0
        8px;

    font-size: 30px;

    font-weight: 700;
}


.groups-page-header p {
    max-width: 700px;

    margin: 0;

    color:
        var(--text-secondary);

    line-height: 1.6;
}


.groups-page-actions {
    display: flex;

    align-items: center;

    gap: 10px;

    flex-shrink: 0;
}


/* =========================================================
   SUMMARY
   ========================================================= */

.groups-summary {
    display: grid;

    grid-template-columns:
        repeat(
            2,
            minmax(220px, 320px)
        );

    gap: 18px;

    margin-bottom: 24px;
}


.groups-summary-card {
    display: flex;

    align-items: center;

    gap: 14px;

    padding: 18px;
}


.groups-summary-icon {
    width: 46px;
    height: 46px;

    min-width: 46px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 12px;

    font-size: 18px;
}


.groups-summary-icon.summary-purple {
    background: #ede9fe;
    color: #7c3aed;
}


.groups-summary-icon.summary-gray {
    background: #f3f4f6;
    color: #6b7280;
}


.groups-summary-card span {
    display: block;

    margin-bottom: 2px;

    color:
        var(--text-secondary);

    font-size: 11px;
}


.groups-summary-card strong {
    display: block;

    font-size: 22px;
}


/* =========================================================
   TOOLBAR
   ========================================================= */

.groups-toolbar {
    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 20px;

    padding: 14px;

    margin-bottom: 32px;
}


.groups-search {
    position: relative;

    width: min(
        100%,
        520px
    );
}


.groups-search > i {
    position: absolute;

    left: 14px;
    top: 50%;

    transform:
        translateY(-50%);

    color:
        var(--text-muted);

    pointer-events: none;
}


.groups-search input {
    width: 100%;
    height: 40px;

    padding:
        0
        14px
        0
        40px;

    border:
        1px solid var(--border-color);

    border-radius: 8px;

    background: #fff;

    color:
        var(--text-primary);

    outline: none;
}


.groups-search input:focus {
    border-color:
        var(--academint-primary);

    box-shadow:
        0 0 0 3px
        rgba(99, 91, 255, 0.1);
}


.groups-toolbar-actions {
    flex-shrink: 0;
}


/* =========================================================
   SECTION
   ========================================================= */

.groups-section {
    margin-bottom: 42px;
}


.groups-inactive-section {
    margin-top: 50px;
}


/* =========================================================
   GRID
   ========================================================= */

.groups-admin-grid {
    display: grid;

    grid-template-columns:
        repeat(
            auto-fill,
            minmax(320px, 1fr)
        );

    gap: 22px;
}


/* =========================================================
   CARD
   ========================================================= */

.group-admin-card {
    min-width: 0;

    display: flex;

    flex-direction: column;

    padding: 20px;

    transition:
        transform 0.15s ease,
        box-shadow 0.15s ease;
}


.group-admin-card:hover {
    transform:
        translateY(-2px);

    box-shadow:
        var(--shadow-md);
}


/* HEADER */

.group-admin-card-header {
    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 15px;

    margin-bottom: 16px;
}


.group-admin-title {
    display: flex;

    align-items: center;

    gap: 12px;

    min-width: 0;
}


.group-admin-icon {
    width: 42px;
    height: 42px;

    min-width: 42px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 11px;

    background:
        var(--academint-primary-light);

    color:
        var(--academint-primary);

    font-size: 18px;
}


.group-admin-title h3 {
    margin:
        0
        0
        2px;

    font-size: 17px;

    font-weight: 700;

    overflow-wrap: anywhere;
}


.group-admin-title span {
    color:
        var(--text-secondary);

    font-size: 11px;
}


.group-admin-menu {
    width: 34px;
    height: 34px;

    display: flex;

    align-items: center;
    justify-content: center;

    border: none;

    border-radius: 8px;

    background: transparent;

    color:
        var(--text-secondary);
}


.group-admin-menu:hover {
    background: #f3f4f6;

    color:
        var(--text-primary);
}


/* =========================================================
   COVER
   ========================================================= */

.group-admin-cover {
    display: block;

    width: 100%;
    height: 150px;

    margin-bottom: 15px;

    overflow: hidden;

    border-radius: 10px;
}


.group-admin-cover img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;
}


/* =========================================================
   BADGES
   ========================================================= */

.group-admin-badges {
    display: flex;

    align-items: center;

    flex-wrap: wrap;

    gap: 7px;

    margin-bottom: 17px;
}


.group-admin-level-badge,
.group-admin-modality-badge {
    display: inline-flex;

    align-items: center;

    gap: 5px;

    padding:
        5px
        8px;

    border-radius: 999px;

    font-size: 10px;

    font-weight: 600;
}


.group-admin-level-badge {
    background: #dbeafe;
    color: #2563eb;
}


.group-admin-modality-badge {
    background:
        var(--academint-primary-light);

    color:
        var(--academint-primary);
}


/* =========================================================
   DETAILS
   ========================================================= */

.group-admin-details {
    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 15px;

    margin-bottom: 18px;
}


.group-admin-detail {
    display: flex;

    align-items: flex-start;

    gap: 9px;

    min-width: 0;
}


.group-admin-detail > i {
    margin-top: 2px;

    color:
        var(--academint-primary);

    font-size: 14px;
}


.group-admin-detail > div {
    min-width: 0;
}


.group-admin-detail span {
    display: block;

    margin-bottom: 2px;

    color:
        var(--text-secondary);

    font-size: 10px;
}


.group-admin-detail strong {
    display: block;

    font-size: 12px;

    font-weight: 600;

    line-height: 1.4;

    overflow-wrap: anywhere;
}


/* =========================================================
   CAPACITY
   ========================================================= */

.group-admin-capacity {
    margin:
        2px
        0
        17px;
}


.group-admin-capacity-label {
    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 15px;

    margin-bottom: 7px;

    color:
        var(--text-secondary);

    font-size: 10px;
}


.group-admin-progress {
    height: 6px;

    border-radius: 999px;

    background: #eef0f4;
}


.group-admin-progress .progress-bar {
    background:
        var(--academint-primary);
}


.group-admin-unlimited {
    display: flex;

    align-items: center;

    gap: 6px;

    margin-bottom: 17px;

    color:
        var(--text-secondary);

    font-size: 11px;
}


/* =========================================================
   DESCRIPTION
   ========================================================= */

.group-admin-description {
    margin:
        0
        0
        18px;

    color:
        var(--text-secondary);

    font-size: 12px;

    line-height: 1.55;
}


/* =========================================================
   FOOTER
   ========================================================= */

.group-admin-footer {
    display: flex;

    align-items: center;

    gap: 9px;

    flex-wrap: wrap;

    margin-top: auto;

    padding-top: 16px;

    border-top:
        1px solid var(--border-color);
}


/* =========================================================
   EMPTY STATE
   ========================================================= */

.groups-empty {
    max-width: 700px;

    padding: 45px 30px;

    text-align: center;
}


.groups-empty-icon {
    width: 60px;
    height: 60px;

    display: flex;

    align-items: center;
    justify-content: center;

    margin:
        0
        auto
        16px;

    border-radius: 15px;

    background:
        var(--academint-primary-light);

    color:
        var(--academint-primary);

    font-size: 25px;
}


.groups-empty h3 {
    margin:
        0
        0
        6px;

    font-size: 18px;
}


.groups-empty p {
    max-width: 430px;

    margin:
        0
        auto
        20px;

    color:
        var(--text-secondary);

    line-height: 1.55;
}


/* =========================================================
   INACTIVE
   ========================================================= */

.inactive-groups-list {
    display: flex;

    flex-direction: column;

    gap: 12px;
}


.inactive-group-row {
    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 25px;

    padding: 17px 20px;
}


.inactive-group-main {
    display: flex;

    align-items: center;

    gap: 13px;

    min-width: 0;
}


.inactive-group-icon {
    width: 42px;
    height: 42px;

    min-width: 42px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 10px;

    background: #f3f4f6;

    color:
        var(--text-secondary);
}


.inactive-group-row h3 {
    margin:
        0
        0
        4px;

    font-size: 14px;

    font-weight: 700;
}


.inactive-group-meta {
    display: flex;

    align-items: center;

    gap: 14px;

    flex-wrap: wrap;

    color:
        var(--text-secondary);

    font-size: 11px;
}


.inactive-group-meta span {
    display: inline-flex;

    align-items: center;

    gap: 5px;
}


.inactive-group-meta .bi-circle-fill {
    font-size: 6px;
}


.inactive-group-actions {
    flex-shrink: 0;
}


.inactive-group-actions form {
    margin: 0;
}


.groups-inactive-empty {
    display: flex;

    align-items: center;

    gap: 10px;

    padding: 18px 20px;

    color:
        var(--text-secondary);
}


/* =========================================================
   BOTTOM
   ========================================================= */

.groups-bottom-actions {
    padding:
        0
        0
        20px;
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 900px) {

    .groups-page-header {
        flex-direction: column;
    }


    .groups-page-actions {
        flex-wrap: wrap;
    }


    .groups-summary {
        grid-template-columns: 1fr;
    }


    .groups-toolbar {
        align-items: stretch;

        flex-direction: column;
    }


    .groups-search {
        width: 100%;
        max-width: none;
    }


    .groups-admin-grid {
        grid-template-columns: 1fr;
    }

}


@media (max-width: 600px) {

    .group-admin-details {
        grid-template-columns: 1fr;
    }


    .inactive-group-row {
        align-items: flex-start;

        flex-direction: column;
    }

}

/* =========================================================
   AJUSTE DE PORTADAS DE GRUPOS
   Más compactas
   ========================================================= */


/* FICHA INDIVIDUAL DEL GRUPO */

.group-detail-cover {
    width: 110px;
    height: 78px;

    min-width: 110px;

    border-radius: 12px;
}

.group-detail-cover img {
    width: 100%;
    height: 100%;

    object-fit: cover;
}


/* Placeholder cuando no hay imagen */

.group-detail-cover-placeholder {
    width: 78px;
    height: 78px;

    min-width: 78px;

    border-radius: 13px;

    font-size: 25px;
}


/* =========================================================
   LISTA GENERAL DE GRUPOS
   ========================================================= */

.group-admin-cover {
    width: 100%;
    height: 95px;

    margin-bottom: 14px;

    border-radius: 9px;
}

.group-admin-cover img {
    width: 100%;
    height: 100%;

    object-fit: cover;
    object-position: center;
}


/* =========================================================
   MÓVIL
   ========================================================= */

@media (max-width: 600px) {

    .group-detail-cover {
        width: 100%;
        height: 110px;
    }

}

}

/* Foto real en el avatar del sidebar */
.profile-avatar { overflow: hidden; }
.profile-avatar-img { width: 100%; height: 100%; object-fit: cover; display: block; }
/* AKANDIX BRAND MARK */
.brand-icon {
    padding: 0;
    background: transparent;
    box-shadow: 0 5px 14px rgba(99, 91, 255, 0.28);
    overflow: hidden;
}
.brand-icon img {
    width: 100%;
    height: 100%;
    display: block;
}


/* =========================================================
   Akandix 1.9.1 - UI consistency / members polish
   ========================================================= */

.page-header,
.members-page-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 32px;
}

.page-header-actions,
.members-header-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    flex-shrink: 0;
}

.page-header-actions .btn,
.members-header-actions .btn {
    white-space: nowrap;
}

.page-header-actions .dropdown-menu,
.members-header-actions .dropdown-menu {
    min-width: 230px;
    padding: 8px;
    border-radius: 12px;
}

.page-header-actions .dropdown-item,
.members-header-actions .dropdown-item {
    display: flex;
    align-items: center;
    gap: 2px;
    padding: 9px 12px;
    border-radius: 8px;
}

.page-toolbar,
.members-toolbar {
    padding: 14px 16px;
    margin-bottom: 34px;
}

.members-toolbar {
    display: flex;
    align-items: center;
    gap: 16px;
}

.members-search {
    position: relative;
    width: 100%;
    max-width: 620px;
}

.members-search > i {
    position: absolute;
    left: 16px;
    top: 50%;
    transform: translateY(-50%);
    color: #8a94a6;
    pointer-events: none;
    z-index: 2;
}

.members-search .form-control {
    padding-left: 44px;
    min-height: 46px;
    border-radius: 10px;
}

.member-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    flex-wrap: wrap;
}

.member-actions .btn {
    white-space: nowrap;
}

.action-dropdown .dropdown-menu {
    min-width: 190px;
    padding: 8px;
    border-radius: 12px;
}

.action-dropdown .dropdown-item {
    display: flex;
    align-items: center;
    padding: 9px 12px;
    border-radius: 8px;
}

@media (max-width: 992px) {
    .page-header,
    .members-page-header {
        flex-direction: column;
        align-items: stretch;
    }

    .page-header-actions,
    .members-header-actions {
        width: 100%;
        justify-content: flex-start;
        flex-wrap: wrap;
    }
}

@media (max-width: 576px) {
    .page-header-actions,
    .members-header-actions {
        display: grid;
        grid-template-columns: 1fr auto;
    }

    .page-header-actions > .btn,
    .members-header-actions > .btn {
        width: 100%;
    }

    .member-actions {
        width: 100%;
        justify-content: flex-start;
    }
}





/* Akandix version: subtle metadata under the signed-in user */
.sidebar-profile-version {
    display: block;
    margin-top: 1px;
    font-size: .54rem !important;
    line-height: 1.05;
    font-weight: 500;
    letter-spacing: .02em;
    color: rgba(255,255,255,.26) !important;
    white-space: nowrap;
}

@media (max-width: 900px) {
    .sidebar-profile-version {
        display: none;
    }
}


/* Formal product footer */
.app-legal-footer{
    margin-top:auto;
    padding:18px 28px;
    border-top:1px solid rgba(120,124,140,.16);
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    flex-wrap:wrap;
    color:#8a8f9c;
    font-size:11px;
}
.app-legal-links{display:flex;gap:13px;flex-wrap:wrap}
.app-legal-footer a{color:#737988;text-decoration:none}
.app-legal-footer a:hover{text-decoration:underline}
