/* /Shared/MainLayout.razor.rz.scp.css */
/* ======================================
 * MainLayout — Scoped styles
 * ====================================== */

.page[b-fqa1fonptl] {
    position: relative;
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    background-color: var(--color-bg, #f7f9f9);
}

/* ---- Sidebar ---- */
.sidebar[b-fqa1fonptl] {
    background-color: var(--color-surface, #ffffff);
    border-right: 1px solid var(--color-border, #e4e8ec);
    box-shadow: 2px 0 8px rgba(0, 0, 0, 0.04);
    z-index: 100;
    transition: width 250ms ease;
}

/* ---- Main content ---- */
.main[b-fqa1fonptl] {
    flex: 1;
    display: flex;
    flex-direction: column;
    min-width: 0; /* prevent overflow issues */
    background-color: var(--color-bg, #f7f9f9);
}

/* ---- Top bar ---- */
.top-row[b-fqa1fonptl] {
    background-color: var(--color-surface, #ffffff);
    border-bottom: 1px solid var(--color-border, #e4e8ec);
    height: var(--topbar-height, 3.25rem);
    display: flex;
    align-items: center;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    position: sticky;
    top: 0;
    z-index: 90;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.04);
    gap: 0.75rem;
}

.top-row[b-fqa1fonptl]  a,
.top-row .btn-link[b-fqa1fonptl] {
    white-space: nowrap;
    margin-left: 1rem;
    font-size: 0.875rem;
}

.top-row a:first-child[b-fqa1fonptl] {
    overflow: hidden;
    text-overflow: ellipsis;
}

/* ---- Content wrapper ---- */
.content[b-fqa1fonptl] {
    padding: 1.5rem;
    flex: 1;
}

/* ---- Inner control wrappers (Syncfusion pattern) ---- */
.col-lg-12.control-section[b-fqa1fonptl] {
    padding: 0;
}

.control-wrapper[b-fqa1fonptl] {
    width: 100%;
}

/* ======================================
 * Responsive — mobile first
 * ====================================== */
@media (max-width: 640.98px) {
    .top-row:not(.auth)[b-fqa1fonptl] {
        display: none;
    }

    .top-row.auth[b-fqa1fonptl] {
        justify-content: space-between;
    }

    .top-row a[b-fqa1fonptl],
    .top-row .btn-link[b-fqa1fonptl] {
        margin-left: 0;
    }

    .content[b-fqa1fonptl] {
        padding: 1rem;
    }
}

@media (min-width: 641px) {
    .page[b-fqa1fonptl] {
        flex-direction: row;
    }

    .sidebar[b-fqa1fonptl] {
        width: var(--sidebar-width, 240px);
        height: 100vh;
        position: sticky;
        top: 0;
        flex-shrink: 0;
    }

    .main[b-fqa1fonptl] {
        width: calc(100% - var(--sidebar-width, 240px));
    }

    .top-row[b-fqa1fonptl] {
        padding-left: 1.75rem !important;
        padding-right: 1.75rem !important;
    }
}
/* /Shared/NavMenu.razor.rz.scp.css */
/* ======================================
 * NavMenu — Scoped styles
 * ====================================== */

/* ---- Logo / brand row ---- */
.top-row[b-xr7qjzz7k7] {
    height: var(--topbar-height, 3.25rem);
    background-color: var(--color-surface, #ffffff);
    border-bottom: 1px solid var(--color-border, #e4e8ec);
    display: flex;
    align-items: center;
    padding: 0 1rem;
}

.navbar-brand[b-xr7qjzz7k7] {
    font-size: 1rem;
    font-weight: 600;
    display: flex;
    align-items: center;
}

.navbar-brand img[b-xr7qjzz7k7] {
    display: block;
}

.navbar-toggler[b-xr7qjzz7k7] {
    background-color: transparent;
    border: 1px solid var(--color-border, #e4e8ec);
    border-radius: 6px;
    padding: 4px 8px;
    color: var(--color-fg, #777b8b);
    transition: background-color 150ms ease;
}

.navbar-toggler:hover[b-xr7qjzz7k7] {
    background-color: var(--color-bg, #f7f9f9);
}

/* ---- Icon spacing ---- */
.oi[b-xr7qjzz7k7] {
    width: 1.6rem;
    font-size: 0.95rem;
    vertical-align: text-top;
    top: -1px;
    position: relative;
    color: inherit;
    opacity: 0.75;
    flex-shrink: 0;
}

/* ---- Nav items ---- */
.nav-item[b-xr7qjzz7k7] {
    font-size: 0.875rem;
    padding-bottom: 2px;
}

.nav-item:first-of-type[b-xr7qjzz7k7] {
    padding-top: 0.5rem;
}

.nav-item:last-of-type[b-xr7qjzz7k7] {
    padding-bottom: 0.75rem;
}

/* Nav links */
.nav-item[b-xr7qjzz7k7]  a {
    color: var(--color-fg, #777b8b);
    border-radius: var(--radius-sm, 6px);
    min-height: 2.6rem;
    padding: 0 0.75rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-weight: 450;
    transition: background-color 120ms ease, color 120ms ease;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Active state */
.nav-item[b-xr7qjzz7k7]  a.active {
    background-color: rgba(0, 178, 107, 0.12);
    color: var(--color-accent1, #00b26b);
    font-weight: 600;
}

.nav-item[b-xr7qjzz7k7]  a.active .oi {
    opacity: 1;
    color: var(--color-accent1, #00b26b);
}

/* Hover state */
.nav-item[b-xr7qjzz7k7]  a:hover:not(.active) {
    background-color: var(--color-bg, #f7f9f9);
    color: var(--color-fg-dark, #3d4152);
}

.nav-item[b-xr7qjzz7k7]  a:hover .oi {
    opacity: 1;
}

/* ---- Language dropdown ---- */
.nav-item .dropdown[b-xr7qjzz7k7] {
    padding: 0.25rem 0;
}

.nav-item .btn-outline-secondary[b-xr7qjzz7k7] {
    border-color: var(--color-border, #e4e8ec);
    color: var(--color-fg, #777b8b);
    background-color: transparent;
    border-radius: var(--radius-sm, 6px);
    font-size: 0.85rem;
    padding: 0.3rem 0.65rem;
    width: 100%;
    display: flex;
    align-items: center;
    gap: 0.4rem;
    transition: background-color 120ms ease, border-color 120ms ease;
}

.nav-item .btn-outline-secondary:hover[b-xr7qjzz7k7],
.nav-item .btn-outline-secondary:focus[b-xr7qjzz7k7] {
    background-color: var(--color-bg, #f7f9f9);
    border-color: var(--color-accent1, #00b26b);
    color: var(--color-fg-dark, #3d4152);
    box-shadow: none;
}

/* ---- Scrollable nav area ---- */
.nav-scrollable[b-xr7qjzz7k7] {
    padding: 0.5rem 0.75rem;
    display: flex;
    flex-direction: column;
    gap: 0;
}

.nav-scrollable nav[b-xr7qjzz7k7] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

/* ---- Divider ---- */
.nav-scrollable hr[b-xr7qjzz7k7] {
    margin: 0.5rem 0;
    border-top: 1px solid var(--color-border, #e4e8ec);
    opacity: 1;
}

/* Section label (optional, used for grouping) */
.nav-section-label[b-xr7qjzz7k7] {
    font-size: 0.7rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--color-fg, #777b8b);
    opacity: 0.6;
    padding: 0.5rem 0.75rem 0.2rem;
}

/* ======================================
 * Responsive
 * ====================================== */
@media (min-width: 641px) {
    .navbar-toggler[b-xr7qjzz7k7] {
        display: none;
    }

    .collapse[b-xr7qjzz7k7] {
        display: block !important;
    }

    .nav-scrollable[b-xr7qjzz7k7] {
        height: calc(100vh - var(--topbar-height, 3.25rem));
        overflow-y: auto;
        overflow-x: hidden;
    }
}

@media (max-width: 640.98px) {
    .nav-scrollable[b-xr7qjzz7k7] {
        padding: 0.5rem 0.5rem;
    }
}
