@import '_content/Microsoft.FluentUI.AspNetCore.Components/Microsoft.FluentUI.AspNetCore.Components.ewdlgswx1m.bundle.scp.css';

/* /Components/Layout/HeaderUserMenu.razor.rz.scp.css */
.user-menu[b-e0nwctalq7] {
  position: absolute;
  top: 6px;
  right: 16px;
}

.user-menu-popup[b-e0nwctalq7] {
  min-width: 220px;
  padding: 0;
}

.menu-user-info[b-e0nwctalq7] {
  padding: 12px 16px;
}

.user-name[b-e0nwctalq7] {
  font-weight: 700;
}

.user-email[b-e0nwctalq7] {
  font-size: 0.9rem;
  color: var(--neutral-foreground-secondary);
  margin-top: 4px;
}

.language-section[b-e0nwctalq7] {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 8px 12px;
}

.language-buttons[b-e0nwctalq7] {
  display: flex;
  gap: 6px;
}

.signout-item[b-e0nwctalq7] {
  color: var(--accent-fill-rest);
}


/* /Components/Layout/LoginLayout.razor.rz.scp.css */

body[b-5ip2n2wuic], html[b-5ip2n2wuic] {
    margin: 0;
    padding: 0;
    font-family: Arial, sans-serif;
}

.login-layout[b-5ip2n2wuic] {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    min-height: calc(100vh - 86px);
    overflow: hidden;
}

.login-layout[b-5ip2n2wuic]::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url('/background1.jpg');
    background-size: cover;
    background-position: center;
    filter: blur(1px);
    z-index: -1;
}

.login-box[b-5ip2n2wuic] {
    background-color: rgba(255, 255, 255, 0.95);
    padding: 3rem;
    border-radius: 12px;
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.15);
    max-width: 500px;
    width: 100%;
    box-sizing: border-box;
}

.login-form[b-5ip2n2wuic] {
    background-color: white;
    padding: 2rem;
    border-radius: 10px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.login-title[b-5ip2n2wuic] {
    text-align: center;
    font-size: 2rem;
    font-weight: bold;
    margin-bottom: 2rem;
    color: #333;
}

.login-box label[b-5ip2n2wuic] {
    display: block;
    font-weight: bold;
    margin-bottom: 0.5rem;
    color: #555;
}

.input-field[b-5ip2n2wuic] {
    width: 100%;
    padding: 0.75rem;
    margin-bottom: 1.5rem;
    border: 1px solid #ccc;
    border-radius: 8px;
    font-size: 1rem;
    box-sizing: border-box;
}

.login-box button[type="submit"][b-5ip2n2wuic] {
    width: 100%;
    padding: 1rem;
    border: none;
    border-radius: 8px;
    background-color: #af212f !important;
    color: white;
    font-size: 1.2rem;
    font-weight: bold;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

.login-box button[type="submit"]:hover[b-5ip2n2wuic] {
   background-color: #8a1a25 !important;
}

.login-box .error-message[b-5ip2n2wuic] {
    color: red;
    text-align: center;
    margin-top: 1rem;
}

.login-box .remember-me[b-5ip2n2wuic] {
    display: flex;
    align-items: center;
    margin-bottom: 1.5rem;
}

.login-box .remember-me label[b-5ip2n2wuic] {
    margin-left: 0.5rem;
}

.header[b-5ip2n2wuic] {
    color: white !important;
    font-size: 1.8rem;
    font-weight: bold;
    /* padding: 1rem 2rem; */
    background-color: #af212f !important;
}

.footer[b-5ip2n2wuic] {
    background-color: #af212f !important;
}
/* /Components/Layout/MainLayout.razor.rz.scp.css */
.header[b-pui3qmsk44] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: relative;
    color: white !important;
    background-color: transparent !important;
    padding: 0.5rem 1rem;
    box-shadow: none !important;
}

.header-left[b-pui3qmsk44] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-right: auto;
}

.page-header-text[b-pui3qmsk44] {
    display: flex;
    flex-direction: column;
    margin-left: var(--nav-expanded-width, 250px);
    padding: 0;
    align-items: flex-start;
    background: transparent !important;
    color: white !important;
    transition: margin-left 0.2s ease;
}

.header.nav-collapsed .page-header-text[b-pui3qmsk44] {
    margin-left: var(--nav-collapsed-width, 64px);
}

.page-title[b-pui3qmsk44] {
    font-size: 1.25rem;
    font-weight: 600;
    color: white !important;
    margin-left: 0;
}

.page-subtitle[b-pui3qmsk44] {
    font-size: 0.9rem;
    color: rgba(255,255,255,0.9) !important;
    margin-left: 0;
}

.Main-body-content[b-pui3qmsk44] {
    padding-top: 0.5rem !important;
}
/* /Components/Layout/NavMenu.razor.rz.scp.css */
.myclass[b-cfr3pjxbop] {
}

.navmenu[b-cfr3pjxbop]  .fluent-nav-item.expander {
    display: none !important;
}

.navmenu[b-cfr3pjxbop] {
    display: flex;
    flex-direction: column;
    height: calc(100dvh - 84px);
    max-height: calc(100dvh - 84px);
    min-height: 0;
}

.main[b-cfr3pjxbop] {
    min-height: 0;
    height: calc(100dvh - 86px);
    overflow: hidden;
}

.nav-header[b-cfr3pjxbop] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 12px;
    background-color: #f8f8f8;
    color: #333;
    flex-shrink: 0;
}

.menu-icon[b-cfr3pjxbop],
.add-icon-wrapper[b-cfr3pjxbop] {
    color: #333;
    cursor: pointer;
    display: flex;
    align-items: center;
}

.menu-icon[b-cfr3pjxbop]  .fluent-icon,
.add-icon-wrapper[b-cfr3pjxbop]  .fluent-icon {
    color: #333 !important;
    fill: #333 !important;
}

.navmenu-toggle-checkbox[b-cfr3pjxbop] {
    display: none;
}

.sitenav[b-cfr3pjxbop] {
    flex: 1;
    display: flex;
    flex-direction: column;
    overflow-y: auto;
    min-height: 0;
    max-height: 100%;
}

[b-cfr3pjxbop] #main-menu {
    display: flex !important;
    flex-direction: column !important;
    flex: 1 !important;
    min-height: 100% !important;
}

#main-menu[b-cfr3pjxbop] {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    min-height: 0;
}

.nav-links-container[b-cfr3pjxbop] {
    flex-shrink: 0;
}

.plus-menu-wrapper[b-cfr3pjxbop] {
    width: 100%;
    overflow: hidden;
}

.plus-menu-container[b-cfr3pjxbop] {
    display: flex;
    align-items: center;
    width: 100%;
    height: 40px;
    padding: 0 12px;
    cursor: pointer;
    background-color: transparent;
}

.menu-items-container[b-cfr3pjxbop] {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
}

.positioning-region[b-cfr3pjxbop] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
}

.plus-menu-text[b-cfr3pjxbop] {
    font-size: 0.8rem;
    color: #333;
    padding-left: 12px;
    flex-grow: 1;
}

.plus-menu-container FluentButton[b-cfr3pjxbop] {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 40px;
    width: 40px;
    padding: 0;
    margin-left: auto;
    background-color: brown;
    border: none !important;
    box-shadow: none !important;
    outline: none !important;
}

.plus-menu-container FluentButton .plus-menu-icon[b-cfr3pjxbop] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
}

.tree-search-box[b-cfr3pjxbop] {
    margin-bottom: 8px;
    width: 100%;
}

.organization-tree-nav[b-cfr3pjxbop] {
    margin-top: 8px;
    margin-bottom: 8px;
    padding: 0 8px;
    background: #f8f8f8;
    border-radius: 8px;
}

.organization-tree-nav h5[b-cfr3pjxbop] {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 8px;
}

.collapsed-top5-menu-btn-wrapper[b-cfr3pjxbop],
.departments-collapsed-icon-wrapper[b-cfr3pjxbop] {
    display: flex;
    justify-content: center;
    padding: 8px 0;
}

.collapsed-top5-menu-popup[b-cfr3pjxbop],
.organization-tree-nav-popup[b-cfr3pjxbop] {
    padding: 10px;
    min-width: 220px;
    max-width: 320px;
    background: white;
    border: 1px solid #ccc;
    border-radius: 4px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}

.collapsed-top5-list[b-cfr3pjxbop] {
    margin-top: 10px;
}

.sitenav[b-cfr3pjxbop]  .fluent-nav-item .fluent-nav-icon .fluent-icon {
    color: #333 !important;
    fill: #333 !important;
}

.themed-nav-link.active[b-cfr3pjxbop]  .fluent-nav-icon .fluent-icon {
    color: white !important;
    fill: white !important;
}

.departments-collapsed-icon[b-cfr3pjxbop] {
    font-size: 24px;
    cursor: pointer;
    color: #333 !important;
    fill: #333 !important;
}

.departments-collapsed-icon-wrapper[b-cfr3pjxbop]  .fluent-icon {
    color: #333 !important;
    fill: #333 !important;
}

.settings-container[b-cfr3pjxbop] {
    border-top: 1px solid #ccc;
    margin-top: auto;
    flex-shrink: 0;
}

.settings-navlink[b-cfr3pjxbop] {
    margin-top: auto;
    display: flex;
    align-items: center;
    min-height: 48px;
}

.fluent-navmenu[collapsed] .fluent-navlink .fluent-navlink-content[b-cfr3pjxbop] {
    display: none;
}

.fluent-navmenu[collapsed] .settings-navlink .fluent-navlink-content[b-cfr3pjxbop] {
    display: none;
}

.fluent-navmenu .settings-navlink .fluent-navlink-content[b-cfr3pjxbop] {
    display: inline;
}

.themed-nav-link:hover[b-cfr3pjxbop] {
    background-color: rgba(175, 33, 47, 0.1) !important;
}

.themed-nav-link.active[b-cfr3pjxbop] {
    background-color: #af212f !important;
    color: white !important;
}

.themed-nav-link.active[b-cfr3pjxbop]  .fluent-icon {
    color: white !important;
}

.fluent-navlink[b-cfr3pjxbop] {
    transition: background-color 0.3s ease;
}

.selected-org-nav-link[b-cfr3pjxbop] {
    background-color: rgba(175, 33, 47, 0.1) !important;
    border-left: 4px solid #af212f;
    font-weight: 600;
}

.selected-org-nav-link[b-cfr3pjxbop]  .fluent-nav-icon .fluent-icon {
    color: #af212f !important;
    fill: #af212f !important;
}
/* /Components/Layout/ProfileNavMenu.razor.rz.scp.css */

.content[b-ilhqsvi4v2] {
    padding: 0rem !important;
    align-self: stretch !important;
    /*  width: 100%; */
}

.profile-menu[b-ilhqsvi4v2] {
    background: var(--neutral-layer-3);
    align-self: stretch;
    height: calc(100dvh - 190px) !important;
    display: flex;
    padding: 0 !important;
    margin: 0 !important;
    box-shadow: none !important;
    border: none !important;
}




/* /Components/Layout/SettingsLayout.razor.rz.scp.css */
/* /Components/Layout/SettingsNavMenu.razor.rz.scp.css */
.main[b-5i8z2u3hxt], .fluent-stack[b-5i8z2u3hxt] {
    gap: 0 !important;
}

.content[b-5i8z2u3hxt] {
    padding: 0rem !important;
    align-self: stretch !important;
    /*  width: 100%; */
}

.settings-menu[b-5i8z2u3hxt] {
    background: var(--neutral-layer-3);
    align-self: stretch;
    height: calc(100dvh - 86px) !important;
    display: flex;
    padding: 0 !important;
    margin: 0 !important;
    box-shadow: none !important;
    border: none !important;
}




/* /Components/Pages/Admin/Components/AddressInfoPanel.razor.rz.scp.css */
.address-info-grid[b-1ne1o1mrq5] {
    display: grid;
    grid-template-columns: auto 1fr; /* �ndret fra 1fr 1fr. F�rste kolonne tilpasser sig indhold, anden tager resten. */
    gap: 10px 8px; /* Mindre horisontal afstand mellem label og input */
    width: 100%;
    align-items: start; /* Juster elementer til toppen af deres grid celle */
    margin-bottom: 12px;
}

/* Ny CSS-regel for view-mode, der �ndrer grid til en enkelt kolonne */
.address-info-grid.view-mode-grid[b-1ne1o1mrq5] {
    grid-template-columns: 1fr; /* Enkelt kolonne layout */
    gap: 6px 0; /* Reduceret mellemrum for view-mode */
}

/* Justering for at sikre at .address-info-item fylder hele bredden i view-mode-grid */
.address-info-grid.view-mode-grid .address-info-item[b-1ne1o1mrq5] {
    grid-column: 1 / -1; /* F�r item til at sp�nde over alle kolonner (selvom der kun er �n) */
    /* Yderligere justeringer kan tilf�jes her om n�dvendigt */
}

.address-info-actions[b-1ne1o1mrq5] {
    display: flex;
    gap: 12px; /* Mellemrum mellem knapper */
    margin-top: 20px; /* Lidt mere plads over knapperne */
    justify-content: flex-end; /* Juster knapper til h�jre */
}

.address-info-select-row[b-1ne1o1mrq5] {
    margin-bottom: 15px; /* Plads under dropdown */
}

/* Styling for adresseinformation items i label-format */
.address-info-item[b-1ne1o1mrq5] {
    display: flex;
    align-items: baseline;
    margin-bottom: 6px; 
    padding: 2px 0;
}

.address-info-label[b-1ne1o1mrq5] {
    font-weight: 600;
    color: #555;
    min-width: 120px; /* Juster evt. denne bredde for at aligne labels p�nt */
    margin-right: 8px; 
    flex-shrink: 0;
    text-align: left; /* Sikrer venstrejustering af label-tekst */
}

.address-info-value[b-1ne1o1mrq5] {
    color: #333;
    word-break: break-word;
    text-align: left; /* Sikrer venstrejustering af v�rdi-tekst */
}


.address-info-panel-scroll[b-1ne1o1mrq5] {
    /* Fast h�jde container med scrolling */
    height: 100%;
    max-height: 100%;
    overflow-y: auto;
    padding: 0 2px;
    display: flex;
    flex-direction: column;
    /* Forhindrer indhold i at udvide containeren */
    flex: 1 1 0%;
    min-height: 0;
}

/* G�r inputfelter st�rre og labels t�ttere p� input i edit-mode */
.address-info-grid .fluent-text-field[b-1ne1o1mrq5],
.address-info-grid .fluent-select[b-1ne1o1mrq5] {
    font-size: 1.15rem;
    min-height: 44px;
    padding: 10px 14px;
    margin-left: 0 !important; /* Fjern evt. default margin-left */
}

.address-info-grid .fluent-text-field-label[b-1ne1o1mrq5],
.address-info-grid .fluent-select-label[b-1ne1o1mrq5] {
    font-size: 1.08rem;
    margin-bottom: 2px !important; /* Mindre afstand mellem label og input */
    margin-top: 0;
    padding-bottom: 0;
    /* Tilf�j for at rykke label t�ttere p� input */
    display: block;
}
/* /Components/Pages/Admin/Components/Dialogs/InstructorDialog.razor.rz.scp.css */
.dialog-overlay[b-gqvp9zu2wm] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.5);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
    backdrop-filter: blur(2px);
}

.create-instructor-dialog[b-gqvp9zu2wm] {
    background: white;
    border-radius: 12px;
    width: 100%;
    max-width: 600px;
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
    animation: dialog-slide-in-b-gqvp9zu2wm 0.2s ease-out;
}

@keyframes dialog-slide-in-b-gqvp9zu2wm {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.dialog-header[b-gqvp9zu2wm] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 24px 24px 0 24px;
    margin-bottom: 24px;
}

.dialog-title h2[b-gqvp9zu2wm] {
    margin: 0;
    font-size: 20px;
    font-weight: 600;
    color: #1a1a1a;
}

.dialog-subtitle[b-gqvp9zu2wm] {
    margin: 4px 0 0 0;
    color: #666;
    font-size: 14px;
}

.close-button[b-gqvp9zu2wm] {
    background: none;
    border: none;
    padding: 8px;
    cursor: pointer;
    color: #666;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background-color 0.15s;
}

.close-button:hover[b-gqvp9zu2wm] {
    background-color: #f3f4f6;
    color: #1a1a1a;
}

.dialog-body[b-gqvp9zu2wm] {
    padding: 0 24px;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.form-group[b-gqvp9zu2wm] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.form-row[b-gqvp9zu2wm] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}



.form-input[b-gqvp9zu2wm] {
    width: 100%;
}

.form-input[b-gqvp9zu2wm]::part(control) {
    border-radius: 6px;
    border-color: #e5e7eb;
}

.specializations-grid[b-gqvp9zu2wm] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}

.toggle-group[b-gqvp9zu2wm] {
    background: #f9fafb;
    padding: 16px;
    border-radius: 8px;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    margin-top: 8px;
}

.toggle-label[b-gqvp9zu2wm] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.toggle-description[b-gqvp9zu2wm] {
    font-size: 12px;
    color: #6b7280;
}

.dialog-footer[b-gqvp9zu2wm] {
    padding: 24px;
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    border-top: 1px solid #f3f4f6;
    margin-top: 24px;
}

@media (max-width: 640px) {
    .create-instructor-dialog[b-gqvp9zu2wm] {
        margin: 16px;
        max-width: 100%;
    }

    .form-row[b-gqvp9zu2wm] {
        grid-template-columns: 1fr;
    }

    .specializations-grid[b-gqvp9zu2wm] {
        grid-template-columns: 1fr;
    }
}
/* /Components/Pages/Admin/Components/InfoPanel.razor.rz.scp.css */
.info-panel[b-yfmc94z9ar] {
    background: linear-gradient(135deg, #fff 80%, #f4f6fa 100%);
    border-radius: 12px;
    margin-top: 0;
    padding: 22px 20px 18px 20px;
    min-height: 120px;
    flex: 1 1 0%;
    box-shadow: 0 4px 24px rgba(33, 150, 243, 0.13), 0 2px 8px rgba(0,0,0,0.08);
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    border: 2px solid #af212f;
    transition: box-shadow 0.2s, border 0.2s;
    position: relative;
    /* Fixed height to prevent expanding beyond viewport */
    max-height: calc(100vh - 160px); /* Adjust based on your header and footer height */
    min-height: 0;
    overflow: hidden; /* Hide overflow at the panel level */
}

    .info-panel h6[b-yfmc94z9ar] {
        font-size: 17px;
        font-weight: 700;
        color: #af212f;
        margin-bottom: 10px;
        letter-spacing: 0.2px;
    }

.info-topbar[b-yfmc94z9ar] {
    width: 100%;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 18px;
    border-bottom: 1.5px solid #e0e0e0;
    margin-bottom: 18px;
    min-height: 48px;
    flex: 0 0 auto; /* Don't allow this to flex/grow/shrink */
}

.topbar-buttons[b-yfmc94z9ar] {
    display: flex;
    gap: 8px; /* Juster efter behov for mellemrum mellem knapperne */
    margin-left: auto; /* Skubber knapperne til h�jre */
}

.icon-btn[b-yfmc94z9ar] {
    /* Bevar eksisterende .icon-btn styles eller tilf�j/juster efter behov */
    min-width: 44px;
    min-height: 44px;
}



.info-text[b-yfmc94z9ar] {
    font-size: 1.08rem;
    color: #444;
    font-style: italic;
    flex: 1 1 auto;
}

.add-btn[b-yfmc94z9ar] {
    margin-left: auto;
    min-width: 44px;
    min-height: 44px;
}

.info-flex-container[b-yfmc94z9ar] {
    display: flex;
    flex-direction: row;
    gap: 32px;
    width: 100%;
    flex: 1 1 auto;
    min-height: 0; /* Critical for child elements to scroll */
    overflow: hidden; /* Don't show overflow at container level */
}

.add-address-btn[b-yfmc94z9ar] {
    position: absolute;
    top: 16px;
    right: 16px;
    z-index: 2;
}

    .add-address-btn .fluent-icon[b-yfmc94z9ar] {
        margin-right: 4px;
    }

.info-placeholder[b-yfmc94z9ar] {
    color: #888;
    font-style: italic;
    margin-bottom: 10px;
}

.info-panel .left-panel[b-yfmc94z9ar] {
    flex: 0 0 260px;
    min-width: 220px;
    max-width: 320px;
    padding-right: 2px;
    border-right: 1.5px solid #e0e0e0;
    position: relative;
    background: transparent;
    overflow-y: auto; /* Allow scrolling if needed */
}

.info-panel .right-panel[b-yfmc94z9ar] {
    flex: 1 1 0%;
    padding-left: 0px;
    min-width: 0;
    background: transparent;
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 0; /* Critical for flexbox child scrolling */
    overflow: hidden; /* Hide overflow, let child elements scroll */
}

.address-info-panel-scroll[b-yfmc94z9ar] {
    flex: 1 1 0%;
    min-height: 0;
    overflow-y: auto;
    padding: 0 2px;
    /* Remove height/max-height so flexbox controls the height */
}
/* /Components/Pages/Admin/Components/OrganizationTree.razor.rz.scp.css */
.organization-tree h5[b-42lpa6219a] {
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 14px;
    color: #af212f;
    letter-spacing: 0.5px;
}

.organization-tree-scroll[b-42lpa6219a] {
    overflow-y: auto;
    max-height: 100%;
}

.org-tree[b-42lpa6219a] {
    margin-top: 18px;
    margin-bottom: 8px;
    padding-left: 0;
}

.tree-item-row-grid[b-42lpa6219a] {
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: center;
    min-height: 32px;
    width: 100%; /* Ensure full width for alignment */
}

.tree-item-main[b-42lpa6219a] {
    display: flex;
    align-items: center;
    min-width: 0;
    cursor: pointer;
}

.tree-item-actions[b-42lpa6219a] {
    display: flex;
    align-items: center;
    gap: 16px;
    min-width: 120px;
    justify-content: flex-start;
    margin-left: 0;
    padding-left: 0;
    grid-column: 2;
}

.tree-action-btn[b-42lpa6219a] {
    cursor: pointer;
    display: inline-flex;
    align-items: center;
}
/* /Components/Pages/Admin/Components/Organization/OrganizationDialog.razor.rz.scp.css */
[b-q533yl5qy2] .styled-dialog {
    --dialog-width: 600px;
    --dialog-height: auto;
    border-radius: 8px;
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.15);
    padding: 0;
}

[b-q533yl5qy2] .styled-dialog::part(control) {
    padding: 0;
    border-radius: 8px;
    overflow: hidden;
}

.dialog-close-btn[b-q533yl5qy2] {
    position: absolute;
    top: 12px;
    right: 12px;
    background: none;
    border: none;
    font-size: 24px;
    line-height: 1;
    cursor: pointer;
    color: #666;
    z-index: 10;
}

.dialog-title[b-q533yl5qy2] {
    font-size: 18px;
    font-weight: 600;
    color: #323130;
    padding: 16px 16px 8px 16px;
    display: flex;
    align-items: center;
}

.dialog-subtitle[b-q533yl5qy2] {
    font-size: 14px;
    color: #605e5c;
    padding: 0 16px 16px 16px;
    border-bottom: 1px solid #edebe9;
}

.dialog-content[b-q533yl5qy2] {
    padding: 16px;
    max-height: 70vh;
    overflow-y: auto;
}

.form-section[b-q533yl5qy2] {
    margin-bottom: 16px;
}

.section-header[b-q533yl5qy2] {
    display: flex;
    align-items: center;
    margin-bottom: 16px;
}

.section-indicator[b-q533yl5qy2] {
    width: 4px;
    height: 16px;
    background-color: #323130;
    margin-right: 8px;
    border-radius: 2px;
}

.section-label[b-q533yl5qy2] {
    font-size: 14px;
    font-weight: 600;
    color: #323130;
}

.form-group[b-q533yl5qy2] {
    margin-bottom: 16px;
}

.form-row[b-q533yl5qy2] {
    display: flex;
    gap: 16px;
    margin-bottom: 16px;
}

.half-width[b-q533yl5qy2] {
    flex: 1;
    margin-bottom: 0;
}




.full-width[b-q533yl5qy2] {
    width: 100%;
}

/* Logo Upload Styling */
.logo-upload-container[b-q533yl5qy2] {
    display: flex;
    align-items: center;
    gap: 16px;
}

.upload-box[b-q533yl5qy2] {
    width: 80px;
    height: 80px;
    border: 1px dashed #c8c6c4;
    border-radius: 4px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    background-color: #faf9f8;
    color: #605e5c;
    font-size: 12px;
}

.upload-box:hover[b-q533yl5qy2] {
    background-color: #f3f2f1;
    border-color: #8a8886;
}

.upload-text[b-q533yl5qy2] {
    font-size: 14px;
    color: #323130;
}

.upload-hint[b-q533yl5qy2] {
    font-size: 12px;
    color: #a19f9d;
    margin-top: 4px;
}

/* Status Section */
.status-section[b-q533yl5qy2] {
    background-color: #faf9f8;
    border: 1px solid #edebe9;
    border-radius: 4px;
    padding: 16px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.status-label[b-q533yl5qy2] {
    font-size: 14px;
    font-weight: 600;
    color: #323130;
}

.status-description[b-q533yl5qy2] {
    font-size: 12px;
    color: #605e5c;
    margin-top: 4px;
}

/* Footer */
.dialog-footer[b-q533yl5qy2] {
    margin-top: 16px;
    padding-top: 16px;
    border-top: 1px solid #edebe9;
    display: flex;
    justify-content: flex-end;
    gap: 12px;
}
/* /Components/Pages/Admin/Components/Organization/OrganizationEdit.razor.rz.scp.css */
/* /Components/Pages/Admin/Components/Users/EditUserDialog.razor.rz.scp.css */
.module-row[b-00al146iby] {
    align-items: flex-start !important;
}

    .module-row[b-00al146iby]  {
        padding-top: 8px;
    }

    .module-row .form-input[b-00al146iby] {
        padding-top: 0;
    }
/* /Components/Pages/Admin/Components/Users/OrganizationUsers.razor.rz.scp.css */
.users-list[b-3o1mbazerr] {
    background: #fff;
    border-radius: 12px;
    padding: 2px 0px 1px 2px;
    box-shadow: 0 4px 24px rgba(33, 150, 243, 0.13), 0 2px 8px rgba(0,0,0,0.08);
    min-width: 260px;
    display: flex;
    flex-direction: column;
    min-height: 250px;
    max-height: 250px;
    overflow-y: auto;
    margin-bottom: 12px;
    border: 2px solid #af212f;
    transition: box-shadow 0.2s, border 0.2s;
}



    .users-list h5[b-3o1mbazerr] {
        font-size: 18px;
        font-weight: 700;
        margin-bottom: 10px;
        color: #af212f;
        letter-spacing: 0.2px;
    }
/* /Components/Pages/Admin/Components/Users/OrganizationUsersList.razor.rz.scp.css */
.users-list[b-77kh3cj6cd], .custom-datagrid[b-77kh3cj6cd] {
    height: 100%;
    min-height: 0;
    display: flex;
    flex-direction: column;
}

.loading-container[b-77kh3cj6cd] {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
    flex-direction: column;
}

.loading-spinner[b-77kh3cj6cd] {
    border: 4px solid rgba(0, 0, 0, 0.1);
    border-left-color: #000;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    animation: spin-b-77kh3cj6cd 1s linear infinite;
}

@keyframes spin-b-77kh3cj6cd {
    to {
        transform: rotate(360deg);
    }
}
/* /Components/Pages/Admin/Components/Users/UserModuleClaimsList.razor.rz.scp.css */
.loading-container[b-b1z7xges8z] {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
    flex-direction: column;
}

.loading-spinner[b-b1z7xges8z] {
    border: 4px solid rgba(0, 0, 0, 0.1);
    border-left-color: #000;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    animation: spin-b-b1z7xges8z 1s linear infinite;
}

@keyframes spin-b-b1z7xges8z {
    to {
        transform: rotate(360deg);
    }
}
/* /Components/Pages/Admin/Components/Users/UsersList.razor.rz.scp.css */
.search-bar[b-vtiuqt2d6x] {
    margin-bottom: 16px;
    display: flex;
    justify-content: flex-end;
    padding-right: 16px;
}

.search-input[b-vtiuqt2d6x] {
    min-width: 320px;
    max-width: 400px;
}
/* /Components/Pages/Admin/Instructors.razor.rz.scp.css */
.instructor-search[b-u1gesyijan] {
    width: 250px;
}

/* Table */
.instructors-table-container[b-u1gesyijan] {
    background: white;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    overflow: hidden;
}



/* Columns */
.col-instructor[b-u1gesyijan] {
    display: flex;
    flex-direction: column;
}

.instructor-name[b-u1gesyijan] {
    font-weight: 500;
    color: #1a1a1a;
}

.instructor-id[b-u1gesyijan] {
    font-size: 12px;
    color: #666;
}

.col-contact[b-u1gesyijan] {
    display: flex;
    flex-direction: column;
    gap: 4px;
    font-size: 13px;
    color: #444;
}

.contact-item[b-u1gesyijan] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.col-specializations[b-u1gesyijan] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.spec-tag[b-u1gesyijan] {
    background: #f3f4f6;
    padding: 2px 8px;
    border-radius: 12px;
    font-size: 12px;
    color: #4b5563;
    border: 1px solid #e5e7eb;
}

.col-groups[b-u1gesyijan] {
    font-weight: 500;
    color: #1a1a1a;
    padding-left: 8px;
}

.col-status[b-u1gesyijan] {
    display: flex;
    align-items: center;
}

.col-actions[b-u1gesyijan] {
    display: flex;
    justify-content: flex-end;
}

/* Status Badges */
.status-badge[b-u1gesyijan] {
    padding: 4px 12px;
    border-radius: 16px;
    font-size: 12px;
    font-weight: 500;
}

.status-active[b-u1gesyijan] {
    background: #dcfce7;
    color: #16a34a;
}

.status-inactive[b-u1gesyijan] {
    background: #f3f4f6;
    color: #6b7280;
}

/* Loading & Empty States */
.loading-container[b-u1gesyijan] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 400px;
    gap: 16px;
    color: #666;
    background: white;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}

.empty-state[b-u1gesyijan] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 64px 24px;
    text-align: center;
    color: #666;
}

.empty-state h3[b-u1gesyijan] {
    margin: 16px 0 8px 0;
    font-size: 18px;
    font-weight: 600;
    color: #1a1a1a;
}

.empty-state p[b-u1gesyijan] {
    margin: 0 0 24px 0;
    font-size: 14px;
}

/* Responsive */
@media (max-width: 1024px) {
    .table-header[b-u1gesyijan],
    .table-row[b-u1gesyijan] {
        grid-template-columns: 2fr 2fr 1fr 1fr 60px;
    }

    .col-specializations[b-u1gesyijan] {
        display: none;
    }
}

@media (max-width: 768px) {
    .page-header[b-u1gesyijan] {
        flex-direction: column;
        gap: 16px;
    }

    .toolbar[b-u1gesyijan] {
        flex-direction: column;
        gap: 16px;
        align-items: stretch;
    }

    .toolbar-left[b-u1gesyijan] {
        flex-direction: column;
    }

    .instructor-search[b-u1gesyijan] {
        width: 100%;
    }

    .table-header[b-u1gesyijan],
    .table-row[b-u1gesyijan] {
        grid-template-columns: 2fr 1fr 60px;
    }

    .col-contact[b-u1gesyijan], .col-groups[b-u1gesyijan] {
        display: none;
    }
}
/* /Components/Pages/Admin/OrganizationManage.razor.rz.scp.css */
di.manage-layout[b-v4lg90ownm] {
    display: flex;
    flex-direction: row;
    gap: 32px;
    margin-top: 16px; /* Consistent small spacing under page title */
    flex: none;
    min-height: 0;
    height: auto;
    align-items: flex-start; /* Align children to top */
}
.manage-layout-grid[b-v4lg90ownm] {
    display: grid;
    grid-template-columns: 420px 1fr;
    gap: 32px;
    margin-top: 12px; /* Consistent small spacing under page title */
    min-height: 0;
    min-height: calc(100vh - 230px);
    align-items: flex-start;
}

.loading-indicator[b-v4lg90ownm] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    margin: 20px 0;
}

.organization-manager .left-panel[b-v4lg90ownm] {
    min-width: 340px;
    max-width: 480px;
    width: 420px;
    background: #f6f7fa;
    border-radius: 12px;
    padding: 24px 20px 18px 20px;
    box-shadow: 0 4px 24px rgba(33, 150, 243, 0.10), 0 2px 8px rgba(0,0,0,0.06);
    margin-bottom: 0;
    position: relative;
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 0;
    max-height: none;
    overflow-y: auto;
    border: 1.5px solid #e3eaf3;
}

.organization-manager .right-panel[b-v4lg90ownm] {
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 0;
    max-height: none;
    gap: 18px;
    background: none;
    border-radius: 0;
    box-shadow: none;
    padding: 0;
    border: none;
}

.organization-manager .right-panel > .user-list[b-v4lg90ownm] {
    flex: 0 0 30%;
    min-height: 0;
    overflow-y: auto;
}

.organization-manager .right-panel > .info-panel-root[b-v4lg90ownm] {
    flex: 1 1 0%;
    min-height: 0;
    overflow-y: auto;
}
/* End of file. Shared layout styles are now in app.css */
/* /Components/Pages/Admin/Profile.razor.rz.scp.css */
.profile-container[b-ki1yql77pw] {
    max-width: 800px;
    margin: 2rem auto;
    padding: 2rem;
    background-color: #fff;
    border-radius: 12px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}

.profile-header[b-ki1yql77pw] {
    display: flex;
    align-items: center;
    margin-bottom: 2rem;
    padding-bottom: 1.5rem;
    border-bottom: 1px solid #e0e0e0;
}

.profile-avatar[b-ki1yql77pw] {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    object-fit: cover;
    margin-right: 1.5rem;
    border: 3px solid #af212f;
}



.profile-form-grid[b-ki1yql77pw] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 1.5rem;
}


.profile-header-stack[b-ki1yql77pw] {
    margin-left: 240px;
}
/* /Components/Pages/Admin/PromptBuilder.razor.rz.scp.css */
.prompt-builder-page[b-l8ooiiayl1] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    padding: 0.5rem 0.5rem 1.5rem;
}

.eyebrow[b-l8ooiiayl1] {
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-size: 0.8rem;
    margin: 0;
    color: #cbd5e1;
}

.content-grid[b-l8ooiiayl1] {
    display: grid;
    grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr);
    gap: 1rem;
}

.left-col[b-l8ooiiayl1],
.right-col[b-l8ooiiayl1] {
    border: 1px solid #e5e7eb;
    border-radius: 14px;
    padding: 1rem;
    box-shadow: 0 8px 26px rgba(15, 23, 42, 0.06);
}

.helper-grid[b-l8ooiiayl1] {
    gap: 0.75rem;
    margin-bottom: 0.75rem;
}


.toggle-row[b-l8ooiiayl1] {
    display: flex;
    gap: 1rem;
    align-items: center;
    margin: 0.5rem 0;
}

.actors-section[b-l8ooiiayl1] {
    margin: 1rem 0;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.actors-header[b-l8ooiiayl1] {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.actor-buttons[b-l8ooiiayl1] {
    display: flex;
    gap: 0.5rem;
}

.actors-grid[b-l8ooiiayl1] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 0.75rem;
}

.actor-card[b-l8ooiiayl1] {
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    padding: 0.75rem;
    background: #fafafa;
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}

.actor-title[b-l8ooiiayl1] {
    font-weight: 700;
    color: #111827;
}

.helper-text[b-l8ooiiayl1] {
    margin: 0;
    color: #6b7280;
    font-size: 0.9rem;
}

.helper-text.compact[b-l8ooiiayl1] {
    margin-top: -0.15rem;
}

.warning-list[b-l8ooiiayl1] {
    margin-top: 1rem;
    padding: 0.75rem;
    border-radius: 10px;
    background: #fff7ed;
    color: #9a3412;
}

@media (max-width: 1024px) {
    .content-grid[b-l8ooiiayl1] {
        grid-template-columns: 1fr;
    }
}
/* /Components/Pages/Admin/User.razor.rz.scp.css */
.user-profile-page[b-x3kl6q34h4] {
    max-width: 100%;
    width: 100%;
}

.profile-header[b-x3kl6q34h4] {
    background: linear-gradient(135deg, #f5f7fa 0%, #c3cfe2 100%);
    border-radius: 12px;
    padding: 32px;
    margin-bottom: 24px;
    width: 100%;
}

.profile-header-content[b-x3kl6q34h4] {
    display: flex;
    align-items: center;
    gap: 24px;
    max-width: 100%;
}

.profile-avatar[b-x3kl6q34h4] {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    background: #323130;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    flex-shrink: 0;
}

.profile-avatar img[b-x3kl6q34h4] {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.avatar-initials[b-x3kl6q34h4] {
    font-size: 28px;
    font-weight: 600;
    color: white;
    text-transform: uppercase;
}

.profile-info[b-x3kl6q34h4] {
    flex: 1;
}

.profile-name-row[b-x3kl6q34h4] {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 4px;
}

.profile-name[b-x3kl6q34h4] {
    font-size: 24px;
    font-weight: 600;
    color: #323130;
    margin: 0;
}

.profile-role-badge[b-x3kl6q34h4] {
    padding: 4px 12px;
    background: #323130;
    color: white;
    border-radius: 12px;
    font-size: 12px;
    font-weight: 500;
}

.profile-organization[b-x3kl6q34h4] {
    color: #605e5c;
    font-size: 14px;
    margin: 0;
}

.profile-actions[b-x3kl6q34h4] {
    margin-left: auto;
}

.profile-tabs[b-x3kl6q34h4] {
    background: white;
    border-radius: 12px;
    padding: 0;
    margin-bottom: 24px;
    display: flex;
    border-bottom: 2px solid #edebe9;
    width: 100%;
}

.tab-button[b-x3kl6q34h4] {
    flex: 1;
    padding: 16px 24px;
    background: none;
    border: none;
    font-size: 14px;
    font-weight: 500;
    color: #605e5c;
    cursor: pointer;
    position: relative;
    transition: color 0.2s;
}

.tab-button:hover[b-x3kl6q34h4] {
    color: #323130;
}

.tab-button.active[b-x3kl6q34h4] {
    color: #323130;
}

.tab-button.active[b-x3kl6q34h4]::after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    right: 0;
    height: 2px;
    background: #323130;
}

.profile-content[b-x3kl6q34h4] {
    display: flex;
    flex-direction: column;
    gap: 24px;
    width: 100%;
}

.profile-section[b-x3kl6q34h4] {
    background: white;
    border-radius: 12px;
    border: 1px solid #edebe9;
    overflow: hidden;
    width: 100%;
}

.section-header[b-x3kl6q34h4] {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 24px;
    border-bottom: 1px solid #edebe9;
}

.section-title[b-x3kl6q34h4] {
    flex: 1;
}

.section-title h2[b-x3kl6q34h4] {
    font-size: 16px;
    font-weight: 600;
    color: #323130;
    margin: 0 0 4px 0;
}

.section-title p[b-x3kl6q34h4] {
    font-size: 13px;
    color: #605e5c;
    margin: 0;
}

.section-content[b-x3kl6q34h4] {
    padding: 24px;
}

.form-row[b-x3kl6q34h4] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    margin-bottom: 16px;
}

.form-group[b-x3kl6q34h4] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.form-group.full-width[b-x3kl6q34h4] {
    grid-column: 1 / -1;
}

.form-label[b-x3kl6q34h4] {
    font-size: 13px;
    font-weight: 600;
    color: #323130;
}

.form-input[b-x3kl6q34h4] {
    width: 100%;
}

.input-with-badge[b-x3kl6q34h4] {
    position: relative;
}

.verified-badge[b-x3kl6q34h4] {
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    padding: 4px 8px;
    background: #107c10;
    color: white;
    border-radius: 4px;
    font-size: 11px;
    font-weight: 500;
}

.section-actions[b-x3kl6q34h4] {
    margin-top: 24px;
    display: flex;
    justify-content: flex-start;
}

.two-factor-option[b-x3kl6q34h4] {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 16px;
    background: #faf9f8;
    border-radius: 8px;
}

.two-factor-icon[b-x3kl6q34h4] {
    width: 48px;
    height: 48px;
    background: #edebe9;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.two-factor-info[b-x3kl6q34h4] {
    flex: 1;
}

.two-factor-info h3[b-x3kl6q34h4] {
    font-size: 14px;
    font-weight: 600;
    color: #323130;
    margin: 0 0 4px 0;
}

.two-factor-info p[b-x3kl6q34h4] {
    font-size: 13px;
    color: #605e5c;
    margin: 0;
}

.danger-zone[b-x3kl6q34h4] {
    border-color: #f1aeb5;
    background: #f8d7da;
}

.danger-zone .section-header[b-x3kl6q34h4] {
    border-bottom-color: #f1aeb5;
}

.danger-title[b-x3kl6q34h4] {
    color: #842029;
}

.danger-action[b-x3kl6q34h4] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px;
    background: white;
    border-radius: 8px;
    border: 1px solid #f1aeb5;
}

.danger-info[b-x3kl6q34h4] {
    flex: 1;
}

.danger-info h3[b-x3kl6q34h4] {
    font-size: 14px;
    font-weight: 600;
    color: #842029;
    margin: 0 0 4px 0;
}

.danger-info p[b-x3kl6q34h4] {
    font-size: 13px;
    color: #721c24;
    margin: 0;
}

.danger-button[b-x3kl6q34h4] {
    background: #d32f2f !important;
    color: white !important;
}

.danger-button:hover[b-x3kl6q34h4] {
    background: #c62828 !important;
}

.empty-state[b-x3kl6q34h4] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 48px 24px;
    text-align: center;
}

.empty-state h3[b-x3kl6q34h4] {
    font-size: 18px;
    font-weight: 600;
    color: #323130;
    margin: 16px 0 8px 0;
}

.empty-state p[b-x3kl6q34h4] {
    font-size: 14px;
    color: #605e5c;
    margin: 0;
}

@media (max-width: 768px) {
    .profile-header-content[b-x3kl6q34h4] {
        flex-direction: column;
        text-align: center;
    }

    .profile-actions[b-x3kl6q34h4] {
        margin-left: 0;
        width: 100%;
    }

    .form-row[b-x3kl6q34h4] {
        grid-template-columns: 1fr;
    }

    .profile-tabs[b-x3kl6q34h4] {
        overflow-x: auto;
    }

    .tab-button[b-x3kl6q34h4] {
        flex-shrink: 0;
        min-width: 120px;
    }

    .two-factor-option[b-x3kl6q34h4] {
        flex-direction: column;
        text-align: center;
    }

    .danger-action[b-x3kl6q34h4] {
        flex-direction: column;
        gap: 16px;
        align-items: stretch;
    }
}
/* /Components/Pages/Portal/Categories.razor.rz.scp.css */
.category-search[b-a7up5bhnn1] {
    width: 250px;
}

.status-filter[b-a7up5bhnn1] {
    min-width: 120px;
}

/* Categories Grid */
.categories-grid[b-a7up5bhnn1] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
    gap: 20px;
}

/* Category Card */
.category-card[b-a7up5bhnn1] {
    background: white;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    overflow: hidden;
    transition: box-shadow 0.2s, transform 0.2s;
}

.category-card:hover[b-a7up5bhnn1] {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
    transform: translateY(-2px);
}

.category-card.inactive[b-a7up5bhnn1] {
    opacity: 0.7;
}

.category-card .card-header[b-a7up5bhnn1] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 20px 20px 0 20px;
}

.category-icon[b-a7up5bhnn1] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
}


.category-icon-table[b-a7up5bhnn1] {
    width: 32px;
    height: 32px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 8px;
    font-size: 18px;
}

.card-actions[b-a7up5bhnn1] {
    position: relative;
}

.category-card .card-body[b-a7up5bhnn1] {
    padding: 16px 20px;
}

.category-name[b-a7up5bhnn1] {
    margin: 0 0 8px 0;
    font-size: 18px;
    font-weight: 600;
    color: #1a1a1a;
}

.category-description[b-a7up5bhnn1] {
    margin: 0 0 16px 0;
    font-size: 14px;
    color: #666;
    line-height: 1.5;
}

.category-stats[b-a7up5bhnn1] {
    display: flex;
    gap: 16px;
}

.stat-item[b-a7up5bhnn1] {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    color: #666;
}

.category-card .card-footer[b-a7up5bhnn1] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px 20px;
    background: #f9fafb;
    border-top: 1px solid #f0f0f0;
}

/* Status Badges */
.status-badge[b-a7up5bhnn1] {
    padding: 4px 12px;
    border-radius: 16px;
    font-size: 12px;
    font-weight: 500;
}

.status-active[b-a7up5bhnn1] {
    background: #dcfce7;
    color: #16a34a;
}

.status-inactive[b-a7up5bhnn1] {
    background: #f3f4f6;
    color: #6b7280;
}

.order-badge[b-a7up5bhnn1] {
    font-size: 12px;
    color: #888;
}

/* Loading & Empty States */
.loading-container[b-a7up5bhnn1] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 400px;
    gap: 16px;
    color: #666;
    background: white;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}

.empty-state[b-a7up5bhnn1] {
    grid-column: 1 / -1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 64px 24px;
    text-align: center;
    color: #666;
    background: white;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}

.empty-state h3[b-a7up5bhnn1] {
    margin: 16px 0 8px 0;
    font-size: 18px;
    font-weight: 600;
    color: #1a1a1a;
}

.empty-state p[b-a7up5bhnn1] {
    margin: 0 0 24px 0;
    font-size: 14px;
}

/* Dialog Overlay */
.dialog-overlay[b-a7up5bhnn1] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
    padding: 24px;
}

/* Create Category Dialog */
.create-category-dialog[b-a7up5bhnn1],
.confirm-dialog[b-a7up5bhnn1] {
    background: white;
    border-radius: 12px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.2);
    width: 100%;
    max-width: 480px;
    max-height: 90vh;
    overflow-y: auto;
}

.confirm-dialog[b-a7up5bhnn1] {
    max-width: 400px;
}

.dialog-header[b-a7up5bhnn1] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 24px 24px 0 24px;
}

.dialog-title h2[b-a7up5bhnn1] {
    margin: 0;
    font-size: 20px;
    font-weight: 600;
    color: #1a1a1a;
}

.dialog-subtitle[b-a7up5bhnn1] {
    margin: 4px 0 0 0;
    font-size: 14px;
    color: #666;
}

.close-button[b-a7up5bhnn1] {
    background: none;
    border: none;
    padding: 4px;
    cursor: pointer;
    color: #666;
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.close-button:hover[b-a7up5bhnn1] {
    background: #f5f5f5;
    color: #1a1a1a;
}

.dialog-body[b-a7up5bhnn1] {
    padding: 24px;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.form-group[b-a7up5bhnn1] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.form-row[b-a7up5bhnn1] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}



.form-input[b-a7up5bhnn1] {
    width: 100%;
}

/* Color Option */
.color-option[b-a7up5bhnn1] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.color-swatch[b-a7up5bhnn1] {
    width: 16px;
    height: 16px;
    border-radius: 4px;
    flex-shrink: 0;
}

/* Toggle Group */
.toggle-group[b-a7up5bhnn1] {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    padding: 16px;
    background: #f9fafb;
    border-radius: 8px;
    border: 1px solid #e5e7eb;
}

.toggle-label[b-a7up5bhnn1] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.toggle-label .form-label[b-a7up5bhnn1] {
    margin: 0;
}

.toggle-description[b-a7up5bhnn1] {
    font-size: 13px;
    color: #666;
}

.dialog-footer[b-a7up5bhnn1] {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    padding: 16px 24px 24px 24px;
    border-top: 1px solid #eee;
}

/* Table Styles for Questions */
.questions-table-container[b-a7up5bhnn1] {
    background: white;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    overflow: hidden;
}



.col-question[b-a7up5bhnn1] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.category-icon-table[b-a7up5bhnn1] {
    width: 32px;
    height: 32px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 8px;
    font-size: 18px;
}

.category-name-list[b-a7up5bhnn1] {
    font-weight: 500;
    color: #1a1a1a;
    font-size: 15px;
}

.col-description[b-a7up5bhnn1] {
    color: #666;
    font-size: 14px;
}

.col-questions[b-a7up5bhnn1], .col-lessons[b-a7up5bhnn1], .col-status[b-a7up5bhnn1], .col-order[b-a7up5bhnn1] {
    color: #666;
    font-size: 14px;
    display: flex;
    align-items: center;
}

.col-actions[b-a7up5bhnn1] {
    display: flex;
    justify-content: flex-end;
}

/* /Components/Pages/Portal/Components/Dialogs/GroupDialog.razor.rz.scp.css */
/* Dialog Overlay */
.dialog-overlay[b-cqgvbtexk8] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
    padding: 24px;
}

/* Create Group Dialog */
.create-group-dialog[b-cqgvbtexk8] {
    background: white;
    border-radius: 12px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.2);
    width: 100%;
    max-width: 480px;
    max-height: 90vh;
    overflow-y: auto;
}

.dialog-header[b-cqgvbtexk8] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 24px 24px 0 24px;
}

.dialog-title h2[b-cqgvbtexk8] {
    margin: 0;
    font-size: 20px;
    font-weight: 600;
    color: #1a1a1a;
}

.dialog-subtitle[b-cqgvbtexk8] {
    margin: 4px 0 0 0;
    font-size: 14px;
    color: #666;
}

.close-button[b-cqgvbtexk8] {
    background: none;
    border: none;
    padding: 4px;
    cursor: pointer;
    color: #666;
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.close-button:hover[b-cqgvbtexk8] {
    background: #f5f5f5;
    color: #1a1a1a;
}

.dialog-body[b-cqgvbtexk8] {
    padding: 24px;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

/* Validation Error Banner */
.validation-error-banner[b-cqgvbtexk8] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 16px;
    background: #fef2f2;
    border: 1px solid #fecaca;
    border-radius: 8px;
    color: #991b1b;
    font-size: 14px;
    font-weight: 500;
}

.validation-error-banner fluent-icon[b-cqgvbtexk8] {
    flex-shrink: 0;
}

.form-group[b-cqgvbtexk8] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.form-input[b-cqgvbtexk8] {
    width: 100%;
}

.form-row[b-cqgvbtexk8] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}

/* Native Select Styling */
.lessons-select[b-cqgvbtexk8] {
    width: 100%;
    padding: 8px 12px;
    font-size: 14px;
    border: 1px solid #d1d5db;
    border-radius: 6px;
    background: white;
    color: #1a1a1a;
    cursor: pointer;
    appearance: none;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");
    background-position: right 8px center;
    background-repeat: no-repeat;
    background-size: 20px;
    padding-right: 36px;
}

.lessons-select:hover[b-cqgvbtexk8] {
    border-color: #9ca3af;
}

.lessons-select:focus[b-cqgvbtexk8] {
    outline: none;
    border-color: #af212f;
    box-shadow: 0 0 0 2px rgba(175, 33, 47, 0.2);
}

/* Toggle Group */
.toggle-group[b-cqgvbtexk8] {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    padding: 16px;
    background: #f9fafb;
    border-radius: 8px;
    border: 1px solid #e5e7eb;
}

.toggle-label[b-cqgvbtexk8] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.toggle-label .form-label[b-cqgvbtexk8] {
    margin: 0;
}

.toggle-description[b-cqgvbtexk8] {
    font-size: 13px;
    color: #666;
}

.dialog-footer[b-cqgvbtexk8] {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    padding: 16px 24px 24px 24px;
    border-top: 1px solid #eee;
}

/* Responsive */
@media (max-width: 768px) {
    .create-group-dialog[b-cqgvbtexk8] {
        max-width: 100%;
        margin: 16px;
    }

    .form-row[b-cqgvbtexk8] {
        grid-template-columns: 1fr;
    }

    .dialog-overlay[b-cqgvbtexk8] {
        padding: 16px;
    }
}
/* /Components/Pages/Portal/Components/Dialogs/QuestionPreviewDialog.razor.rz.scp.css */
/* Preview Overlay */
.preview-overlay[b-j8zcryftkc] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.7);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 2000;
    padding: 24px;
    backdrop-filter: blur(4px);
}

.preview-container[b-j8zcryftkc] {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 24px;
    animation: slideUp-b-j8zcryftkc 0.3s ease-out;
}

@keyframes slideUp-b-j8zcryftkc {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.preview-close-btn[b-j8zcryftkc] {
    position: absolute;
    top: -50px;
    right: 0;
    background: white;
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

/* Phone Frame */
.phone-frame[b-j8zcryftkc] {
    position: relative;
    width: 375px;
    height: 812px;
    background: #1a1a1a;
    border-radius: 40px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.4),
                0 0 0 1px rgba(0, 0, 0, 0.1),
                inset 0 0 0 2px #2a2a2a;
    overflow: hidden;
}

/* Phone Notch */
.phone-notch[b-j8zcryftkc] {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 200px;
    height: 30px;
    background: #1a1a1a;
    border-radius: 0 0 20px 20px;
    z-index: 10;
}

/* Phone Screen */
.phone-screen[b-j8zcryftkc] {
    width: 100%;
    height: 100%;
    background: #ffffff;
    display: flex;
    flex-direction: column;
    overflow-y: auto;
    overflow-x: hidden;
}

/* Status Bar */
.status-bar[b-j8zcryftkc] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 8px 20px;
    padding-top: 12px;
    color: #1a1a1a;
    font-size: 13px;
    font-weight: 500;
    min-height: 44px;
    background: white;
}

.time[b-j8zcryftkc] {
    font-weight: 600;
}

.status-icons[b-j8zcryftkc] {
    display: flex;
    gap: 6px;
    align-items: center;
    font-size: 11px;
}

.status-icon[b-j8zcryftkc] {
    line-height: 1;
}

/* App Header */
.app-header[b-j8zcryftkc] {
    padding: 10px 20px;
    background: white;
    border-bottom: 1px solid #f0f0f0;
}

.header-title[b-j8zcryftkc] {
    font-size: 18px;
    font-weight: 700;
    color: #1a1a1a;
    margin-bottom: 2px;
}

.header-subtitle[b-j8zcryftkc] {
    font-size: 12px;
    color: #666;
    font-weight: 400;
}

/* Question Content */
.question-content[b-j8zcryftkc] {
    flex: 1;
    padding: 12px 20px;
    display: flex;
    flex-direction: column;
    gap: 12px;
    overflow-y: auto;
    background: #f8f9fa;
}

.question-image-container[b-j8zcryftkc] {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.question-image[b-j8zcryftkc] {
    width: 200px;
    height: 150px;
    object-fit: contain;
    display: block;
}

.question-text[b-j8zcryftkc] {
    font-size: 14px;
    font-weight: 600;
    color: #1a1a1a;
    line-height: 1.4;
    padding: 0;
    margin: 0;
}

/* Answer Options */
.answer-options[b-j8zcryftkc] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.answer-option[b-j8zcryftkc] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px;
    background: white;
    border: 2px solid #e8eaed;
    border-radius: 12px;
    cursor: pointer;
    transition: all 0.2s ease;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}

.answer-option:hover:not(.disabled)[b-j8zcryftkc] {
    border-color: #5f6368;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.answer-option.selected:not(.correct):not(.incorrect)[b-j8zcryftkc] {
    background: #e3f2fd;
    border-color: #2196f3;
}

.answer-option.selected.correct[b-j8zcryftkc] {
    background: #e8f5e9;
    border-color: #4caf50;
}

.answer-option.selected.incorrect[b-j8zcryftkc] {
    background: #ffebee;
    border-color: #f44336;
}

.answer-option.correct-answer[b-j8zcryftkc] {
    background: #e8f5e9;
    border-color: #4caf50;
}

.answer-option.disabled[b-j8zcryftkc] {
    opacity: 0.6;
    cursor: not-allowed;
}

.option-letter[b-j8zcryftkc] {
    flex-shrink: 0;
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #5f6368;
    color: white;
    border-radius: 8px;
    font-weight: 600;
    font-size: 16px;
}

.answer-option.selected:not(.correct):not(.incorrect) .option-letter[b-j8zcryftkc] {
    background: #2196f3;
}

.answer-option.selected.correct .option-letter[b-j8zcryftkc] {
    background: #4caf50;
}

.answer-option.selected.incorrect .option-letter[b-j8zcryftkc] {
    background: #f44336;
}

.answer-option.correct-answer .option-letter[b-j8zcryftkc] {
    background: #4caf50;
}

/* Explanation Box */
.explanation-box[b-j8zcryftkc] {
    padding: 16px;
    border-radius: 12px;
    border-left: 4px solid;
    background: white;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}

.explanation-box.correct[b-j8zcryftkc] {
    border-left-color: #4caf50;
}

.explanation-box.incorrect[b-j8zcryftkc] {
    border-left-color: #f44336;
}

.explanation-header[b-j8zcryftkc] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-weight: 600;
    font-size: 14px;
    margin-bottom: 8px;
    color: #1a1a1a;
}

.info-icon[b-j8zcryftkc] {
    font-size: 16px;
}

.explanation-text[b-j8zcryftkc] {
    font-size: 14px;
    line-height: 1.5;
    color: #5f6368;
}

/* Action Button */
.action-button[b-j8zcryftkc] {
    margin-top: 4px;
}

.submit-button[b-j8zcryftkc] {
    width: 100%;
    padding: 16px;
    background: linear-gradient(135deg, #E89D73 0%, #D88962 100%);
    color: white;
    border: none;
    border-radius: 12px;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    transition: all 0.2s ease;
    box-shadow: 0 4px 12px rgba(232, 157, 115, 0.3);
}

.submit-button:hover:not(:disabled):not(.disabled)[b-j8zcryftkc] {
    transform: translateY(-2px);
    box-shadow: 0 6px 16px rgba(232, 157, 115, 0.4);
}

.submit-button:disabled[b-j8zcryftkc],
.submit-button.disabled[b-j8zcryftkc] {
    opacity: 0.5;
    cursor: not-allowed;
    transform: none;
}

.submit-icon[b-j8zcryftkc] {
    font-size: 18px;
}

/* Hint Text */
.hint-text[b-j8zcryftkc] {
    text-align: center;
    font-size: 13px;
    color: #5f6368;
    font-style: italic;
}

/* Bottom Navigation */
.bottom-nav[b-j8zcryftkc] {
    display: flex;
    justify-content: center;
    padding: 12px;
    background: white;
}

.nav-indicator[b-j8zcryftkc] {
    width: 134px;
    height: 5px;
    background: #1a1a1a;
    border-radius: 3px;
}

/* Phone Buttons */
.phone-button-left[b-j8zcryftkc] {
    position: absolute;
    left: -3px;
    top: 120px;
    width: 3px;
    height: 32px;
    background: #2a2a2a;
    border-radius: 0 2px 2px 0;
}

.phone-button-right-1[b-j8zcryftkc] {
    position: absolute;
    right: -3px;
    top: 100px;
    width: 3px;
    height: 56px;
    background: #2a2a2a;
    border-radius: 2px 0 0 2px;
}

.phone-button-right-2[b-j8zcryftkc] {
    position: absolute;
    right: -3px;
    top: 170px;
    width: 3px;
    height: 56px;
    background: #2a2a2a;
    border-radius: 2px 0 0 2px;
}

/* Preview Info */
.preview-info[b-j8zcryftkc] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 12px 20px;
    background: white;
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    color: #666;
    font-size: 14px;
}

.preview-icon[b-j8zcryftkc] {
    font-size: 16px;
}

/* Scrollbar Styling */
.phone-screen[b-j8zcryftkc]::-webkit-scrollbar {
    width: 4px;
}

.phone-screen[b-j8zcryftkc]::-webkit-scrollbar-track {
    background: transparent;
}

.phone-screen[b-j8zcryftkc]::-webkit-scrollbar-thumb {
    background: rgba(0, 0, 0, 0.2);
    border-radius: 2px;
}

.phone-screen[b-j8zcryftkc]::-webkit-scrollbar-thumb:hover {
    background: rgba(0, 0, 0, 0.3);
}

.question-content[b-j8zcryftkc]::-webkit-scrollbar {
    width: 4px;
}

.question-content[b-j8zcryftkc]::-webkit-scrollbar-track {
    background: transparent;
}

.question-content[b-j8zcryftkc]::-webkit-scrollbar-thumb {
    background: rgba(0, 0, 0, 0.2);
    border-radius: 2px;
}

/* Responsive */
@media (max-width: 768px) {
    .phone-frame[b-j8zcryftkc] {
        transform: scale(0.85);
    }

    .preview-container[b-j8zcryftkc] {
        gap: 16px;
    }
}

@media (max-width: 480px) {
    .phone-frame[b-j8zcryftkc] {
        transform: scale(0.7);
    }
}
/* /Components/Pages/Portal/Components/Dialogs/StudentDialog.razor.rz.scp.css */
/* Dialog Overlay */
.dialog-overlay[b-9dh2i9w4mk] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
    padding: 24px;
}

/* Create Student Dialog */
.create-student-dialog[b-9dh2i9w4mk] {
    background: white;
    border-radius: 12px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.2);
    width: 100%;
    max-width: 480px;
    max-height: 90vh;
    overflow-y: auto;
}

.dialog-header[b-9dh2i9w4mk] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 24px 24px 0 24px;
}

.dialog-title h2[b-9dh2i9w4mk] {
    margin: 0;
    font-size: 20px;
    font-weight: 600;
    color: #1a1a1a;
}

.dialog-subtitle[b-9dh2i9w4mk] {
    margin: 4px 0 0 0;
    font-size: 14px;
    color: #666;
}

.close-button[b-9dh2i9w4mk] {
    background: none;
    border: none;
    padding: 4px;
    cursor: pointer;
    color: #666;
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.close-button:hover[b-9dh2i9w4mk] {
    background: #f5f5f5;
    color: #1a1a1a;
}

.dialog-body[b-9dh2i9w4mk] {
    padding: 24px;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

/* Validation Error Banner */
.validation-error-banner[b-9dh2i9w4mk] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 16px;
    background: #fef2f2;
    border: 1px solid #fecaca;
    border-radius: 8px;
    color: #991b1b;
    font-size: 14px;
    font-weight: 500;
}

.form-group[b-9dh2i9w4mk] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.form-input[b-9dh2i9w4mk] {
    width: 100%;
}

/* Toggle Group */
.toggle-group[b-9dh2i9w4mk] {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    padding: 16px;
    background: #f9fafb;
    border-radius: 8px;
    border: 1px solid #e5e7eb;
}

.toggle-label[b-9dh2i9w4mk] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.toggle-label .form-label[b-9dh2i9w4mk] {
    margin: 0;
}

.toggle-description[b-9dh2i9w4mk] {
    font-size: 13px;
    color: #666;
}

.dialog-footer[b-9dh2i9w4mk] {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    padding: 16px 24px 24px 24px;
    border-top: 1px solid #eee;
}

/* Responsive */
@media (max-width: 768px) {
    .create-student-dialog[b-9dh2i9w4mk] {
        max-width: 100%;
        margin: 16px;
    }

    .dialog-overlay[b-9dh2i9w4mk] {
        padding: 16px;
    }
}
/* /Components/Pages/Portal/CreateImage.razor.rz.scp.css */
.image-generator-page[b-woq4hyly02] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    padding: 0.5rem 0.5rem 1.5rem;
}



.hero-meta[b-woq4hyly02] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-top: 0.85rem;
}

.meta-chip[b-woq4hyly02] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.35rem 0.6rem;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.08);
    color: rgba(255, 255, 255, 0.92);
    font-weight: 600;
}

.eyebrow[b-woq4hyly02] {
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #9ca3af;
    margin: 0;
}

.endpoint-chip[b-woq4hyly02] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.35rem 0.75rem;
    border-radius: 999px;
    background: #111827;
    font-weight: 600;
    color: #fff;
    white-space: nowrap;
}

.meta-chip[b-woq4hyly02] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.35rem 0.6rem;
    border-radius: 10px;
    background: #f3f4f6;
    color: #111827;
    font-weight: 600;
}

.content-grid[b-woq4hyly02] {
    display: grid;
    grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr);
    gap: 1rem;
}

.form-card[b-woq4hyly02],
.result-card[b-woq4hyly02] {
    border: 1px solid #e5e7eb;
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 8px 26px rgba(15, 23, 42, 0.08);
}

.card-header[b-woq4hyly02] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.75rem;
    padding: 1rem 1.25rem 0.5rem;
}

.card-header h2[b-woq4hyly02] {
    margin: 0;
    font-size: 1.1rem;
}

.card-subtitle[b-woq4hyly02] {
    margin: 0.2rem 0 0;
    color: #4b5563;
    font-size: 0.95rem;
}

.helper-tag[b-woq4hyly02] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.35rem 0.6rem;
    border-radius: 999px;
    background: #f3f4f6;
    color: #374151;
    font-weight: 600;
    font-size: 0.85rem;
}

.required[b-woq4hyly02] {
    color: #af212f;
    font-weight: 700;
}

.form-grid[b-woq4hyly02] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    padding: 0.5rem 1.25rem 1.25rem;
}


.helper-panel[b-woq4hyly02] {
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    padding: 1rem;
    background: linear-gradient(160deg, #f9fafb 0%, #f3f4f6 100%);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.7);
    display: flex;
    flex-direction: column;
}

.helper-panel-header[b-woq4hyly02] {
    display: flex;
    align-items: center;
    justify-content: space-between;
}



.helper-grid[b-woq4hyly02] {

    gap: 0.75rem 1rem;
    align-items: start;
}

.form-field[b-woq4hyly02] {
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
}






.helper-text[b-woq4hyly02] {
    margin: 0;
    color: #6b7280;
    font-size: 0.9rem;
}

.helper-text.compact[b-woq4hyly02] {
    margin-top: -0.15rem;
}

.toggle-row[b-woq4hyly02] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
}

.helper-toggles[b-woq4hyly02] {
    align-items: flex-start;
}

.toggle-item[b-woq4hyly02] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    flex: 1;
}

.error-banner[b-woq4hyly02] {
    margin: 0 1.25rem 0.5rem;
    padding: 0.75rem 0.9rem;
    border-radius: 10px;
    background: #fef2f2;
    color: #991b1b;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-weight: 600;
}

.form-actions[b-woq4hyly02] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0 1.25rem 1.25rem;
}

.loading-text[b-woq4hyly02] {
    margin-left: 0.35rem;
}

.actors-section[b-woq4hyly02] {
    border: 1px dashed #d1d5db;
    border-radius: 10px;
    padding: 0.75rem;
    background: #fff;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.actors-header[b-woq4hyly02] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
}

.actor-buttons[b-woq4hyly02] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.actors-grid[b-woq4hyly02] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 0.75rem;
}

.actor-card[b-woq4hyly02] {
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    padding: 0.75rem;
    background: #fafafa;
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}

.actor-title[b-woq4hyly02] {
    font-weight: 700;
    color: #111827;
}

.helper-preview[b-woq4hyly02] {
    display: flex;
    gap: 1rem;
    align-items: flex-start;
    justify-content: space-between;
    padding: 0.75rem 0.9rem 0.25rem;
    border-top: 1px dashed #d1d5db;
    margin-top: 0.25rem;
}

.helper-preview pre[b-woq4hyly02] {
    margin: 0;
    background: #111827;
    color: #e5e7eb;
    padding: 0.75rem;
    border-radius: 10px;
    font-size: 0.9rem;
    white-space: pre-wrap;
    width: 50%;
    min-width: 280px;
}

.pill[b-woq4hyly02] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.35rem 0.6rem;
    border-radius: 999px;
    background: #f3f4f6;
    color: #111827;
    font-weight: 600;
    font-size: 0.9rem;
}

.empty-state[b-woq4hyly02] {
    text-align: center;
    padding: 1.5rem;
    color: #4b5563;
}

.empty-state h3[b-woq4hyly02] {
    margin: 0.6rem 0 0.2rem;
}

.answer-block[b-woq4hyly02] {
    padding: 0 1.25rem 1.25rem;
}

.prompt-block[b-woq4hyly02] {
    padding: 0 1.25rem 1.25rem;
    border-bottom: 1px solid #e5e7eb;
    margin-bottom: 1rem;
}

.prompt-header[b-woq4hyly02] {
    display: flex;
    align-items: center;
    gap: 0.7rem;
    margin-bottom: 0.5rem;
}

.prompt-icon[b-woq4hyly02] {
    width: 36px;
    height: 36px;
    display: grid;
    place-items: center;
    border-radius: 10px;
    background: #f0fdf4;
    color: #16a34a;
}

.prompt-text[b-woq4hyly02] {
    margin: 0;
    padding: 1rem;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    font-size: 0.875rem;
    line-height: 1.6;
    white-space: pre-wrap;
    word-wrap: break-word;
    max-height: 400px;
    overflow-y: auto;
    color: #334155;
    font-family: ui-monospace, SFMono-Regular, "SF Mono", Consolas, "Liberation Mono", Menlo, monospace;
}

.answer-header[b-woq4hyly02] {
    display: flex;
    align-items: center;
    gap: 0.7rem;
    margin-bottom: 0.5rem;
}

.images-grid[b-woq4hyly02] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 1rem;
    padding: 0 1.25rem 1.25rem;
}

.image-card[b-woq4hyly02] {
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    overflow: hidden;
    background: #f9fafb;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.04);
    max-width: 600px;
}

.image-card img[b-woq4hyly02] {
    width: 100%;
    max-width: 600px;
    height: 400px;
    object-fit: contain;
    display: block;
    background: #f3f4f6;
}

.image-meta[b-woq4hyly02] {
    padding: 0.6rem 0.75rem;
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
}

.image-edit-section[b-woq4hyly02] {
    padding: 0.75rem;
    border-top: 1px solid #e5e7eb;
    background: #fafafa;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.edit-input-row[b-woq4hyly02] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.edit-error[b-woq4hyly02] {
    margin: 0;
    padding: 0.5rem 0.75rem;
    background: #fef2f2;
    color: #991b1b;
    border-radius: 6px;
    font-size: 0.875rem;
    font-weight: 500;
}

.reference-image-section[b-woq4hyly02] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    margin-top: 0.5rem;
    padding: 0.75rem;
    background: #f9fafb;
    border-radius: 8px;
    border: 1px solid #e5e7eb;
}

.upload-label[b-woq4hyly02] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 1rem;
    cursor: pointer;
    color: #6b7280;
    text-align: center;
}

.upload-label:hover[b-woq4hyly02] {
    color: #111827;
}

.upload-hint[b-woq4hyly02] {
    font-size: 0.75rem;
    color: #9ca3af;
}

.reference-image-preview[b-woq4hyly02] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem;
    background: #fff;
    border-radius: 8px;
    border: 1px solid #e5e7eb;
}

.reference-image-preview img[b-woq4hyly02] {
    max-width: 200px;
    max-height: 150px;
    object-fit: contain;
    border-radius: 6px;
    border: 1px solid #d1d5db;
}

.image-save-section[b-woq4hyly02] {
    padding: 0.75rem;
    border-top: 1px solid #e5e7eb;
    background: #f9fafb;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.save-error[b-woq4hyly02] {
    margin: 0;
    padding: 0.5rem 0.75rem;
    background: #fef2f2;
    color: #991b1b;
    border-radius: 6px;
    font-size: 0.875rem;
    font-weight: 500;
}

.saved-indicator[b-woq4hyly02] {
    color: #16a34a;
    font-weight: 600;
    font-size: 0.85rem;
}

@media (max-width: 1024px) {
    .content-grid[b-woq4hyly02] {
        grid-template-columns: 1fr;
    }

    .endpoint-chip[b-woq4hyly02] {
        align-self: flex-start;
    }

    .helper-panel-header[b-woq4hyly02] {
        flex-direction: column;
        align-items: flex-start;
    }

    .helper-preview[b-woq4hyly02] {
        flex-direction: column;
    }

    .helper-preview pre[b-woq4hyly02] {
        width: 100%;
    }

    .helper-panel-header[b-woq4hyly02] {
        flex-direction: column;
        align-items: flex-start;
    }

    .helper-preview[b-woq4hyly02] {
        flex-direction: column;
    }

    .helper-preview pre[b-woq4hyly02] {
        width: 100%;
    }
}
/* /Components/Pages/Portal/Dashboard.razor.rz.scp.css */


/* Filters */
.filters-row[b-ymrgolj57i] {
    display: flex;
    gap: 12px;
    margin-bottom: 24px;
    align-items: center;
}

.filter-select[b-ymrgolj57i] {
    min-width: 140px;
}

.demo-badge[b-ymrgolj57i] {
    background: #fef3c7;
    color: #92400e;
    padding: 4px 12px;
    border-radius: 16px;
    font-size: 12px;
    font-weight: 500;
}

.empty-data-badge[b-ymrgolj57i] {
    background: #fee2e2;
    color: #991b1b;
    padding: 4px 12px;
    border-radius: 16px;
    font-size: 12px;
    font-weight: 500;
    display: flex;
    align-items: center;
    gap: 4px;
}

/* KPI Cards */
.kpi-cards[b-ymrgolj57i] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
    margin-bottom: 24px;
}

.kpi-card[b-ymrgolj57i] {
    background: white;
    border-radius: 12px;
    padding: 20px;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    transition: box-shadow 0.2s;
}

.kpi-card:hover[b-ymrgolj57i] {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.kpi-label[b-ymrgolj57i] {
    font-size: 13px;
    color: #666;
    margin-bottom: 8px;
}

.kpi-value[b-ymrgolj57i] {
    font-size: 32px;
    font-weight: 600;
    color: #1a1a1a;
    line-height: 1;
    margin-bottom: 8px;
}

.kpi-change[b-ymrgolj57i] {
    font-size: 12px;
    display: flex;
    align-items: center;
    gap: 4px;
}

.kpi-change.positive[b-ymrgolj57i] {
    color: #16a34a;
}

.kpi-change.negative[b-ymrgolj57i] {
    color: #dc2626;
}

.kpi-change.neutral[b-ymrgolj57i] {
    color: #666;
}

.kpi-icon[b-ymrgolj57i] {
    background: #f5f5f5;
    border-radius: 8px;
    padding: 10px;
}

/* Main Content */
.main-content[b-ymrgolj57i] {
    display: grid;
    grid-template-columns: 1fr 380px;
    gap: 24px;
}

.content-section[b-ymrgolj57i] {
    background: white;
    border-radius: 12px;
    padding: 20px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}

.section-header[b-ymrgolj57i] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 16px;
}

.section-header h2[b-ymrgolj57i] {
    margin: 0;
    font-size: 16px;
    font-weight: 600;
    color: #1a1a1a;
    display: flex;
    align-items: center;
    gap: 8px;
}

.view-all-link[b-ymrgolj57i] {
    color: #666;
    font-size: 13px;
    text-decoration: none;
}

.view-all-link:hover[b-ymrgolj57i] {
    color: #af212f;
}

/* Group Table */
.group-table[b-ymrgolj57i] {
    display: flex;
    flex-direction: column;
}



.col-students[b-ymrgolj57i] {
    display: flex;
    align-items: center;
    gap: 6px;
    color: #666;
}

.col-answer[b-ymrgolj57i] {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #666;
}

.progress-bar-container[b-ymrgolj57i] {
    width: 80px;
    height: 6px;
    background: #e5e5e5;
    border-radius: 3px;
    overflow: hidden;
}

.progress-bar[b-ymrgolj57i] {
    height: 100%;
    background: #1a1a1a;
    border-radius: 3px;
    transition: width 0.3s;
}

.col-correct[b-ymrgolj57i] {
    font-weight: 600;
}

.col-correct.high[b-ymrgolj57i] {
    color: #16a34a;
}

.col-correct.medium[b-ymrgolj57i] {
    color: #ca8a04;
}

.col-correct.low[b-ymrgolj57i] {
    color: #dc2626;
}

/* Sidebar */
.sidebar[b-ymrgolj57i] {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

/* Activity List */
.activity-list[b-ymrgolj57i] {
    display: flex;
    flex-direction: column;
}

.activity-item[b-ymrgolj57i] {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 12px 0;
    border-bottom: 1px solid #f5f5f5;
}

.activity-item:last-child[b-ymrgolj57i] {
    border-bottom: none;
}

.activity-indicator[b-ymrgolj57i] {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    margin-top: 6px;
    flex-shrink: 0;
}

.activity-indicator.correct[b-ymrgolj57i] {
    background: #16a34a;
}

.activity-indicator.incorrect[b-ymrgolj57i] {
    background: #dc2626;
}

.activity-content[b-ymrgolj57i] {
    flex: 1;
    min-width: 0;
}

.activity-name[b-ymrgolj57i] {
    font-weight: 500;
    color: #1a1a1a;
    font-size: 14px;
}

.activity-question[b-ymrgolj57i] {
    color: #666;
    font-size: 13px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.activity-time[b-ymrgolj57i] {
    color: #999;
    font-size: 12px;
    white-space: nowrap;
}

/* Low Performance */
.low-perf-list[b-ymrgolj57i] {
    display: flex;
    flex-direction: column;
}

.low-perf-item[b-ymrgolj57i] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 16px;
    margin-bottom: 8px;
    background: #fef9f9;
    border-radius: 8px;
    border-left: 3px solid #fecaca;
    cursor: pointer;
    transition: background-color 0.15s;
}

.low-perf-item:hover[b-ymrgolj57i] {
    background: #fef2f2;
}

.question-content[b-ymrgolj57i] {
    flex: 1;
    min-width: 0;
}

.question-text[b-ymrgolj57i] {
    font-size: 14px;
    color: #1a1a1a;
    margin-bottom: 8px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.question-meta[b-ymrgolj57i] {
    display: flex;
    gap: 12px;
    font-size: 12px;
}

.category-tag[b-ymrgolj57i] {
    background: #f0f0f0;
    padding: 2px 8px;
    border-radius: 4px;
    color: #666;
}

.answer-count[b-ymrgolj57i] {
    color: #999;
}

.question-rate[b-ymrgolj57i] {
    text-align: right;
    font-size: 20px;
    font-weight: 600;
    flex-shrink: 0;
    margin-left: 16px;
}

.question-rate .rate-label[b-ymrgolj57i] {
    display: block;
    font-size: 11px;
    font-weight: 400;
    color: #999;
}

/* Loading & Empty States */
.loading-container[b-ymrgolj57i] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 400px;
    gap: 16px;
    color: #666;
}

.empty-state[b-ymrgolj57i] {
    text-align: center;
    padding: 32px;
    color: #666;
}

.dashboard-container .empty-state[b-ymrgolj57i] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 60vh;
}

.empty-state p[b-ymrgolj57i] {
    margin: 0 0 16px 0;
}

.empty-state-small[b-ymrgolj57i] {
    text-align: center;
    padding: 16px;
    color: #666;
}

.empty-state-small p[b-ymrgolj57i] {
    margin: 8px 0 0 0;
    font-size: 13px;
}

.empty-state-small.success[b-ymrgolj57i] {
    display: flex;
    flex-direction: column;
    align-items: center;
    color: #16a34a;
}

/* System Dashboard */
.system-dashboard[b-ymrgolj57i] {
    width: 100%;
}

.status-badge[b-ymrgolj57i] {
    padding: 4px 8px;
    border-radius: 12px;
    font-size: 12px;
    font-weight: 500;
}

.status-badge.active[b-ymrgolj57i] {
    background-color: #dcfce7;
    color: #166534;
}

.status-badge.inactive[b-ymrgolj57i] {
    background-color: #f3f4f6;
    color: #374151;
}

/* Responsive */
@media (max-width: 1200px) {
    .kpi-cards[b-ymrgolj57i] {
        grid-template-columns: repeat(2, 1fr);
    }

    .main-content[b-ymrgolj57i] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 768px) {
    .kpi-cards[b-ymrgolj57i] {
        grid-template-columns: 1fr;
    }

    .dashboard-header[b-ymrgolj57i] {
        flex-direction: column;
        gap: 16px;
    }

    .filters-row[b-ymrgolj57i] {
        flex-direction: column;
        align-items: flex-start;
    }

    .table-header[b-ymrgolj57i],
    .table-row[b-ymrgolj57i] {
        grid-template-columns: 2fr 1fr 1fr;
    }

    .col-answer[b-ymrgolj57i],
    .col-trend[b-ymrgolj57i] {
        display: none;
    }
}
/* /Components/Pages/Portal/GroupDetails.razor.rz.scp.css */
.group-details-container[b-6dq1g2mrq5] {
    padding: 24px;
    background-color: #fafafa;
    min-height: 100%;
    width: 100%;
    box-sizing: border-box;
}

/* Loading & Not Found States */
.loading-container[b-6dq1g2mrq5],
.not-found[b-6dq1g2mrq5] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 400px;
    gap: 16px;
    color: #666;
    background: white;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    text-align: center;
    padding: 48px;
}

.not-found h2[b-6dq1g2mrq5] {
    margin: 0;
    font-size: 20px;
    color: #1a1a1a;
}

.not-found p[b-6dq1g2mrq5] {
    margin: 0 0 16px 0;
    color: #666;
}

/* Header */
.page-header[b-6dq1g2mrq5] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0px;
}

.header-left[b-6dq1g2mrq5] {
    display: flex;
    align-items: center;
    gap: 16px;
}

.back-button[b-6dq1g2mrq5] {
    background: none;
    border: none;
    padding: 8px;
    cursor: pointer;
    color: #666;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.back-button:hover[b-6dq1g2mrq5] {
    background: #f0f0f0;
    color: #1a1a1a;
}

.group-icon[b-6dq1g2mrq5] {
    width: 48px;
    height: 48px;
    background: #f0f0f0;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.header-info h1[b-6dq1g2mrq5] {
    margin: 0;
    font-size: 24px;
    font-weight: 600;
    color: #1a1a1a;
}

.date-range[b-6dq1g2mrq5] {
    font-size: 14px;
    color: #666;
}

.header-right[b-6dq1g2mrq5] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.search-box[b-6dq1g2mrq5] {
    width: 200px;
}

/* KPI Cards */
.kpi-cards[b-6dq1g2mrq5] {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 16px;
    margin-bottom: 24px;
}

.kpi-card[b-6dq1g2mrq5] {
    background: white;
    border-radius: 12px;
    padding: 20px;
    display: flex;
    align-items: center;
    gap: 16px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    border-left: 4px solid transparent;
}

.kpi-icon[b-6dq1g2mrq5] {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.kpi-icon.students[b-6dq1g2mrq5] {
    background: #e0f2fe;
    color: #0284c7;
}

.kpi-icon.completed[b-6dq1g2mrq5] {
    background: #dcfce7;
    color: #16a34a;
}

.kpi-icon.upcoming[b-6dq1g2mrq5] {
    background: #fef3c7;
    color: #d97706;
}

.kpi-icon.attendance[b-6dq1g2mrq5] {
    background: #fce7f3;
    color: #db2777;
}

.kpi-icon.score[b-6dq1g2mrq5] {
    background: #fed7aa;
    color: #ea580c;
}

.kpi-content[b-6dq1g2mrq5] {
    display: flex;
    flex-direction: column;
}

.kpi-value[b-6dq1g2mrq5] {
    font-size: 28px;
    font-weight: 600;
    color: #1a1a1a;
    line-height: 1;
}

.kpi-label[b-6dq1g2mrq5] {
    font-size: 13px;
    color: #666;
    margin-top: 4px;
}

/* Tabs */
.tabs-container[b-6dq1g2mrq5] {
    margin-bottom: 24px;
}

.tabs[b-6dq1g2mrq5] {
    display: flex;
    gap: 8px;
    border-bottom: 1px solid #e5e5e5;
}

.tab[b-6dq1g2mrq5] {
    background: none;
    border: none;
    padding: 12px 20px;
    font-size: 14px;
    font-weight: 500;
    color: #666;
    cursor: pointer;
    position: relative;
    transition: color 0.2s;
}

.tab:hover[b-6dq1g2mrq5] {
    color: #1a1a1a;
}

.tab.active[b-6dq1g2mrq5] {
    color: #1a1a1a;
}

.tab.active[b-6dq1g2mrq5]::after {
    content: '';
    position: absolute;
    bottom: -1px;
    left: 0;
    right: 0;
    height: 2px;
    background: #1a1a1a;
}

/* Tab Content */
.tab-content[b-6dq1g2mrq5] {
    min-height: 400px;
}

/* Overview Layout */
.overview-layout[b-6dq1g2mrq5] {
    display: grid;
    grid-template-columns: 1fr 300px;
    gap: 24px;
}

/* Info Card */
.info-card[b-6dq1g2mrq5] {
    background: white;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    overflow: hidden;
}

.card-header[b-6dq1g2mrq5] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px 24px;
    border-bottom: 1px solid #f0f0f0;
}

.card-header h2[b-6dq1g2mrq5] {
    margin: 0;
    font-size: 16px;
    font-weight: 600;
    color: #1a1a1a;
}

.card-body[b-6dq1g2mrq5] {
    padding: 24px;
}

.description[b-6dq1g2mrq5] {
    margin: 0 0 24px 0;
    color: #666;
    font-size: 14px;
    line-height: 1.6;
}

.info-grid[b-6dq1g2mrq5] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
}

.info-item[b-6dq1g2mrq5] {
    display: flex;
    align-items: flex-start;
    gap: 12px;
}

.info-details[b-6dq1g2mrq5] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.info-label[b-6dq1g2mrq5] {
    font-size: 12px;
    color: #999;
}

.info-value[b-6dq1g2mrq5] {
    font-size: 14px;
    font-weight: 500;
    color: #1a1a1a;
}

.card-footer[b-6dq1g2mrq5] {
    display: flex;
    gap: 24px;
    padding: 16px 24px;
    background: #fafafa;
    border-top: 1px solid #f0f0f0;
}

.footer-item[b-6dq1g2mrq5] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
}

.footer-label[b-6dq1g2mrq5] {
    color: #666;
}

.footer-value[b-6dq1g2mrq5] {
    font-weight: 500;
    color: #1a1a1a;
}

/* Status Badges */
.status-badge[b-6dq1g2mrq5] {
    padding: 4px 12px;
    border-radius: 16px;
    font-size: 12px;
    font-weight: 500;
}

.status-active[b-6dq1g2mrq5] {
    background: #dcfce7;
    color: #16a34a;
}

.status-inactive[b-6dq1g2mrq5] {
    background: #f3f4f6;
    color: #6b7280;
}

.status-archived[b-6dq1g2mrq5] {
    background: #fef3c7;
    color: #92400e;
}

.status-default[b-6dq1g2mrq5] {
    background: #f3f4f6;
    color: #6b7280;
}

/* Actions Card */
.actions-card[b-6dq1g2mrq5] {
    background: white;
    border-radius: 12px;
    padding: 20px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    height: fit-content;
}

.actions-card h2[b-6dq1g2mrq5] {
    margin: 0 0 16px 0;
    font-size: 16px;
    font-weight: 600;
    color: #1a1a1a;
}

.actions-list[b-6dq1g2mrq5] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.action-item[b-6dq1g2mrq5] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 16px;
    background: none;
    border: 1px solid #e5e5e5;
    border-radius: 8px;
    cursor: pointer;
    font-size: 14px;
    color: #1a1a1a;
    transition: all 0.15s;
    text-align: left;
    width: 100%;
}

.action-item:hover[b-6dq1g2mrq5] {
    background: #f5f5f5;
    border-color: #d0d0d0;
}

/* Students Tab */
.students-tab[b-6dq1g2mrq5],
.lessons-tab[b-6dq1g2mrq5] {
    background: white;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    overflow: hidden;
}

.tab-header[b-6dq1g2mrq5] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px 24px;
    border-bottom: 1px solid #f0f0f0;
}

.tab-header h2[b-6dq1g2mrq5] {
    margin: 0;
    font-size: 16px;
    font-weight: 600;
    color: #1a1a1a;
}

.students-list[b-6dq1g2mrq5],
.lessons-list[b-6dq1g2mrq5] {
    padding: 0;
}

.student-item[b-6dq1g2mrq5],
.lesson-item[b-6dq1g2mrq5] {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 16px 24px;
    border-bottom: 1px solid #f5f5f5;
    transition: background-color 0.15s;
}

.student-item:hover[b-6dq1g2mrq5],
.lesson-item:hover[b-6dq1g2mrq5] {
    background: #fafafa;
}

.student-item:last-child[b-6dq1g2mrq5],
.lesson-item:last-child[b-6dq1g2mrq5] {
    border-bottom: none;
}

.student-avatar[b-6dq1g2mrq5] {
    width: 40px;
    height: 40px;
    background: #f0f0f0;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.student-info[b-6dq1g2mrq5],
.lesson-info[b-6dq1g2mrq5] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.student-name[b-6dq1g2mrq5],
.lesson-name[b-6dq1g2mrq5] {
    font-weight: 500;
    color: #1a1a1a;
}

.student-email[b-6dq1g2mrq5],
.lesson-questions[b-6dq1g2mrq5] {
    font-size: 13px;
    color: #666;
}

.student-stats[b-6dq1g2mrq5] {
    text-align: right;
}

.stat[b-6dq1g2mrq5] {
    font-size: 13px;
    color: #666;
}

.lesson-number[b-6dq1g2mrq5] {
    width: 32px;
    height: 32px;
    background: #f0f0f0;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    color: #666;
    font-size: 14px;
}

.lesson-status[b-6dq1g2mrq5] {
    text-align: right;
}

/* Empty State */
.empty-state[b-6dq1g2mrq5] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 64px 24px;
    text-align: center;
    color: #666;
}

.empty-state p[b-6dq1g2mrq5] {
    margin: 16px 0 24px 0;
    font-size: 14px;
}

/* Responsive */
@media (max-width: 1200px) {
    .kpi-cards[b-6dq1g2mrq5] {
        grid-template-columns: repeat(3, 1fr);
    }

    .overview-layout[b-6dq1g2mrq5] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 768px) {
    .kpi-cards[b-6dq1g2mrq5] {
        grid-template-columns: repeat(2, 1fr);
    }

    .page-header[b-6dq1g2mrq5] {
        flex-direction: column;
        align-items: flex-start;
        gap: 16px;
    }

    .header-right[b-6dq1g2mrq5] {
        width: 100%;
    }

    .search-box[b-6dq1g2mrq5] {
        width: 100%;
    }

    .info-grid[b-6dq1g2mrq5] {
        grid-template-columns: 1fr;
    }

    .card-footer[b-6dq1g2mrq5] {
        flex-direction: column;
        gap: 12px;
    }

    .tabs[b-6dq1g2mrq5] {
        overflow-x: auto;
    }
}

@media (max-width: 480px) {
    .kpi-cards[b-6dq1g2mrq5] {
        grid-template-columns: 1fr;
    }
}

/* Dialog Overlay */
.dialog-overlay[b-6dq1g2mrq5] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
    padding: 24px;
}

/* Confirmation Dialog */
.confirm-dialog[b-6dq1g2mrq5] {
    background: white;
    border-radius: 12px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.2);
    width: 100%;
    max-width: 400px;
}

.dialog-header[b-6dq1g2mrq5] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 24px 24px 0 24px;
}

.dialog-title h2[b-6dq1g2mrq5] {
    margin: 0;
    font-size: 20px;
    font-weight: 600;
    color: #1a1a1a;
}

.close-button[b-6dq1g2mrq5] {
    background: none;
    border: none;
    padding: 4px;
    cursor: pointer;
    color: #666;
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.close-button:hover[b-6dq1g2mrq5] {
    background: #f5f5f5;
    color: #1a1a1a;
}

.dialog-body[b-6dq1g2mrq5] {
    padding: 24px;
}

.dialog-body p[b-6dq1g2mrq5] {
    margin: 0;
    color: #666;
    font-size: 14px;
    line-height: 1.5;
}

.dialog-footer[b-6dq1g2mrq5] {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    padding: 16px 24px 24px 24px;
    border-top: 1px solid #eee;
}
/* /Components/Pages/Portal/Groups.razor.rz.scp.css */
.group-search[b-hjzrxbukox] {
    width: 250px;
}

.status-filter[b-hjzrxbukox] {
    min-width: 140px;
}

/* Table */
.groups-table-container[b-hjzrxbukox] {
    background: white;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    overflow: hidden;
}


/* Columns */
.col-name[b-hjzrxbukox] {
    font-weight: 500;
    color: #1a1a1a;
}

.group-link[b-hjzrxbukox] {
    color: #1a1a1a;
    text-decoration: none;
    transition: color 0.15s;
}

.group-link:hover[b-hjzrxbukox] {
    color: #af212f;
}

.col-students[b-hjzrxbukox] {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #666;
}

.col-duration[b-hjzrxbukox] {
    color: #666;
    font-size: 14px;
}

.col-lessons[b-hjzrxbukox] {
    color: #666;
}

.lessons-link[b-hjzrxbukox] {
    color: #2563eb;
    text-decoration: none;
    font-weight: 500;
}

.lessons-link:hover[b-hjzrxbukox] {
    text-decoration: underline;
}

.col-status[b-hjzrxbukox] {
    display: flex;
    align-items: center;
}

.col-actions[b-hjzrxbukox] {
    display: flex;
    justify-content: flex-end;
}

/* Status Badges */
.status-badge[b-hjzrxbukox] {
    padding: 4px 12px;
    border-radius: 16px;
    font-size: 12px;
    font-weight: 500;
}

.status-active[b-hjzrxbukox] {
    background: #dcfce7;
    color: #16a34a;
}

.status-inactive[b-hjzrxbukox] {
    background: #f3f4f6;
    color: #6b7280;
}

.status-archived[b-hjzrxbukox] {
    background: #fef3c7;
    color: #92400e;
}

.status-default[b-hjzrxbukox] {
    background: #f3f4f6;
    color: #6b7280;
}

/* Loading & Empty States */
.loading-container[b-hjzrxbukox] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 400px;
    gap: 16px;
    color: #666;
    background: white;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}

.empty-state[b-hjzrxbukox] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 64px 24px;
    text-align: center;
    color: #666;
}

.empty-state h3[b-hjzrxbukox] {
    margin: 16px 0 8px 0;
    font-size: 18px;
    font-weight: 600;
    color: #1a1a1a;
}

.empty-state p[b-hjzrxbukox] {
    margin: 0 0 24px 0;
    font-size: 14px;
}

/* Responsive */
@media (max-width: 1024px) {
    .table-header[b-hjzrxbukox],
    .table-row[b-hjzrxbukox] {
        grid-template-columns: 2fr 1fr 1fr 60px;
    }

    .col-duration[b-hjzrxbukox],
    .col-lessons[b-hjzrxbukox] {
        display: none;
    }
}

@media (max-width: 768px) {
    .page-header[b-hjzrxbukox] {
        flex-direction: column;
        gap: 16px;
    }

    .toolbar[b-hjzrxbukox] {
        flex-direction: column;
        gap: 16px;
        align-items: stretch;
    }

    .toolbar-left[b-hjzrxbukox] {
        flex-direction: column;
    }

    .group-search[b-hjzrxbukox] {
        width: 100%;
    }

    .table-header[b-hjzrxbukox],
    .table-row[b-hjzrxbukox] {
        grid-template-columns: 2fr 1fr 60px;
    }

    .col-students[b-hjzrxbukox] {
        display: none;
    }

    .create-group-dialog[b-hjzrxbukox] {
        max-width: 100%;
        margin: 16px;
    }

    .form-row[b-hjzrxbukox] {
        grid-template-columns: 1fr;
    }

    .dialog-overlay[b-hjzrxbukox] {
        padding: 16px;
    }
}
/* /Components/Pages/Portal/LessonDetails.razor.rz.scp.css */
.lesson-details-container[b-7q5mdxxmxh] {
    padding: 24px;
    background-color: #fafafa;
    min-height: 100%;
    width: 100%;
    box-sizing: border-box;
}

/* Loading & Not Found */
.loading-container[b-7q5mdxxmxh] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 400px;
    gap: 16px;
    color: #666;
    background: white;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}

.not-found[b-7q5mdxxmxh] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 400px;
    gap: 16px;
    text-align: center;
    background: white;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    padding: 48px;
}

.not-found h2[b-7q5mdxxmxh] {
    margin: 0;
    font-size: 20px;
    font-weight: 600;
    color: #1a1a1a;
}

.not-found p[b-7q5mdxxmxh] {
    margin: 0;
    color: #666;
}


/* Toolbar */
.toolbar[b-7q5mdxxmxh] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 24px;
    padding: 16px 20px;
    background: white;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}

.toolbar-left[b-7q5mdxxmxh] {
    display: flex;
    gap: 12px;
    align-items: center;
}

.toolbar-right[b-7q5mdxxmxh] {
    display: flex;
    gap: 12px;
    align-items: center;
}

.lesson-search[b-7q5mdxxmxh] {
    width: 250px;
}

.category-filter[b-7q5mdxxmxh] {
    min-width: 160px;
}

.status-filter[b-7q5mdxxmxh] {
    min-width: 120px;
}

.back-button[b-7q5mdxxmxh] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border: none;
    background: white;
    border-radius: 8px;
    cursor: pointer;
    color: #666;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    transition: all 0.15s;
}

.back-button:hover[b-7q5mdxxmxh] {
    background: #f5f5f5;
    color: #1a1a1a;
}

.header-info[b-7q5mdxxmxh] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.header-title-row[b-7q5mdxxmxh] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.header-title-row h1[b-7q5mdxxmxh] {
    margin: 0;
    font-size: 24px;
    font-weight: 600;
    color: #1a1a1a;
}

.header-meta[b-7q5mdxxmxh] {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #666;
    font-size: 14px;
}

.category-tag[b-7q5mdxxmxh] {
    color: #2563eb;
    font-weight: 500;
}

.meta-separator[b-7q5mdxxmxh] {
    color: #ccc;
}

.header-right[b-7q5mdxxmxh] {
    display: flex;
    gap: 12px;
}

/* Status Badges */
.status-badge[b-7q5mdxxmxh] {
    padding: 4px 12px;
    border-radius: 16px;
    font-size: 12px;
    font-weight: 500;
}

.status-active[b-7q5mdxxmxh] {
    background: #dcfce7;
    color: #16a34a;
}

.status-draft[b-7q5mdxxmxh] {
    background: #fef3c7;
    color: #d97706;
}

.status-archived[b-7q5mdxxmxh] {
    background: #f3f4f6;
    color: #6b7280;
}

.status-default[b-7q5mdxxmxh] {
    background: #f3f4f6;
    color: #6b7280;
}

/* KPI Cards */
.kpi-cards[b-7q5mdxxmxh] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
    margin-bottom: 24px;
}

.kpi-card[b-7q5mdxxmxh] {
    background: white;
    border-radius: 12px;
    padding: 20px;
    display: flex;
    align-items: center;
    gap: 16px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}

.kpi-icon[b-7q5mdxxmxh] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.kpi-icon.questions[b-7q5mdxxmxh] {
    background: #e0e7ff;
    color: #4f46e5;
}

.kpi-icon.answers[b-7q5mdxxmxh] {
    background: #fce7f3;
    color: #db2777;
}

.kpi-icon.correct[b-7q5mdxxmxh] {
    background: #dcfce7;
    color: #16a34a;
}

.kpi-icon.groups[b-7q5mdxxmxh] {
    background: #f3e8ff;
    color: #9333ea;
}

.kpi-content[b-7q5mdxxmxh] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.kpi-value[b-7q5mdxxmxh] {
    font-size: 24px;
    font-weight: 600;
    color: #1a1a1a;
}

.kpi-label[b-7q5mdxxmxh] {
    font-size: 13px;
    color: #666;
}

/* Correct Rate Colors */
.rate-high[b-7q5mdxxmxh] {
    color: #16a34a;
}

.rate-medium[b-7q5mdxxmxh] {
    color: #d97706;
}

.rate-low[b-7q5mdxxmxh] {
    color: #dc2626;
}

/* Content Layout */
.content-layout[b-7q5mdxxmxh] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
}

/* Cards */
.lesson-card[b-7q5mdxxmxh],
.group-performance-card[b-7q5mdxxmxh],
.questions-card[b-7q5mdxxmxh] {
    background: white;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    overflow: hidden;
}

.card-header[b-7q5mdxxmxh] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px 24px;
    border-bottom: 1px solid #f0f0f0;
}

.card-header h2[b-7q5mdxxmxh] {
    margin: 0;
    font-size: 16px;
    font-weight: 600;
    color: #1a1a1a;
}

.card-body[b-7q5mdxxmxh] {
    padding: 24px;
}

.card-actions[b-7q5mdxxmxh] {
    display: flex;
    gap: 8px;
}

/* Lesson Card */
.lesson-card[b-7q5mdxxmxh] {
    grid-column: 1;
    grid-row: 1;
}

/* Sections */
.description-section[b-7q5mdxxmxh],
.completion-section[b-7q5mdxxmxh],
.groups-section[b-7q5mdxxmxh] {
    margin-bottom: 24px;
}

.description-section:last-child[b-7q5mdxxmxh],
.completion-section:last-child[b-7q5mdxxmxh],
.groups-section:last-child[b-7q5mdxxmxh] {
    margin-bottom: 0;
}

.description-section h3[b-7q5mdxxmxh],
.completion-section h3[b-7q5mdxxmxh],
.groups-section h3[b-7q5mdxxmxh] {
    margin: 0 0 12px 0;
    font-size: 14px;
    font-weight: 600;
    color: #666;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.description-text[b-7q5mdxxmxh] {
    font-size: 14px;
    color: #1a1a1a;
    line-height: 1.6;
    margin: 0;
}

/* Completion Bar */
.completion-bar-container[b-7q5mdxxmxh] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.completion-info[b-7q5mdxxmxh] {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.completion-label[b-7q5mdxxmxh] {
    font-size: 14px;
    color: #666;
}

.completion-percentage[b-7q5mdxxmxh] {
    font-size: 14px;
    font-weight: 600;
    color: #1a1a1a;
}

.completion-bar-bg[b-7q5mdxxmxh] {
    width: 100%;
    height: 8px;
    background: #e5e5e5;
    border-radius: 4px;
    overflow: hidden;
}

.completion-bar[b-7q5mdxxmxh] {
    height: 100%;
    background: linear-gradient(90deg, #4f46e5, #7c3aed);
    border-radius: 4px;
    transition: width 0.3s;
}

/* Groups Section */
.groups-list[b-7q5mdxxmxh] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.group-badge[b-7q5mdxxmxh] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    background: #f3e8ff;
    border-radius: 16px;
    font-size: 12px;
    color: #7c3aed;
    font-weight: 500;
}

/* Group Performance Card */
.group-performance-card[b-7q5mdxxmxh] {
    grid-column: 2;
    grid-row: 1;
}

.groups-performance-list[b-7q5mdxxmxh] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.group-performance-item[b-7q5mdxxmxh] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px 16px;
    background: #f9fafb;
    border-radius: 8px;
    border: 1px solid #e5e7eb;
}

.group-info[b-7q5mdxxmxh] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.group-info .group-name[b-7q5mdxxmxh] {
    font-size: 14px;
    font-weight: 500;
    color: #1a1a1a;
}

.group-info .student-count[b-7q5mdxxmxh] {
    font-size: 12px;
    color: #666;
}

.group-stats[b-7q5mdxxmxh] {
    display: flex;
    gap: 24px;
}

.group-stats .stat-item[b-7q5mdxxmxh] {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 2px;
}

.group-stats .stat-label[b-7q5mdxxmxh] {
    font-size: 11px;
    color: #888;
    text-transform: uppercase;
}

.group-stats .stat-value[b-7q5mdxxmxh] {
    font-size: 14px;
    font-weight: 600;
    color: #1a1a1a;
}

.empty-groups[b-7q5mdxxmxh] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 32px;
    text-align: center;
    color: #666;
}

.empty-groups p[b-7q5mdxxmxh] {
    margin: 12px 0 0 0;
    font-size: 14px;
}

/* Questions Card */
.questions-card[b-7q5mdxxmxh] {
    grid-column: 1 / -1;
    grid-row: 2;
}

/* Questions Table */
.questions-table[b-7q5mdxxmxh] {
    display: flex;
    flex-direction: column;
}



.td-order[b-7q5mdxxmxh] {
    font-size: 14px;
    font-weight: 600;
    color: #888;
}

.td-question[b-7q5mdxxmxh] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.td-question .question-text[b-7q5mdxxmxh] {
    font-size: 14px;
    color: #1a1a1a;
}

.td-question .question-status[b-7q5mdxxmxh] {
    display: inline-block;
    padding: 2px 8px;
    border-radius: 12px;
    font-size: 11px;
    font-weight: 500;
    width: fit-content;
}

.td-stats[b-7q5mdxxmxh],
.td-rate[b-7q5mdxxmxh],
.td-difficulty[b-7q5mdxxmxh] {
    font-size: 14px;
    color: #1a1a1a;
}

.td-actions[b-7q5mdxxmxh] {
    display: flex;
    justify-content: center;
}

.icon-button[b-7q5mdxxmxh] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border: none;
    background: transparent;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.15s;
}

.icon-button:hover[b-7q5mdxxmxh] {
    background: #fee2e2;
    color: #dc2626;
}

.empty-questions[b-7q5mdxxmxh] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 48px;
    text-align: center;
    color: #666;
}

.empty-questions p[b-7q5mdxxmxh] {
    margin: 12px 0 16px 0;
    font-size: 14px;
}
/* /Components/Pages/Portal/Lessons.razor.rz.scp.css */
.lesson-search[b-x36hd0mcng] {
    width: 250px;
}

.category-filter[b-x36hd0mcng] {
    min-width: 160px;
}

.status-filter[b-x36hd0mcng] {
    min-width: 120px;
}

/* Filter Notification */
.filter-notification[b-x36hd0mcng] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 16px;
    background: #eff6ff;
    border: 1px solid #bfdbfe;
    border-radius: 8px;
    margin-bottom: 16px;
    color: #1e40af;
    font-size: 14px;
}

.filter-notification fluent-icon[b-x36hd0mcng] {
    flex-shrink: 0;
}

.filter-notification span[b-x36hd0mcng] {
    flex: 1;
}

/* Table */
.lessons-table-container[b-x36hd0mcng] {
    background: white;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    overflow: hidden;
    --table-columns: 2.4fr 1.6fr 1fr 1.2fr 0.9fr 64px;
}


/* Title Column */
.col-title[b-x36hd0mcng] {
    font-weight: 500;
    color: #1a1a1a;
}

.lesson-link[b-x36hd0mcng] {
    color: #1a1a1a;
    text-decoration: none;
    font-weight: 500;
    transition: color 0.15s;
}

.lesson-link:hover[b-x36hd0mcng] {
    color: #af212f;
}

/* Category Column */
.col-category[b-x36hd0mcng] {
    display: flex;
    align-items: center;
}

.category-tag[b-x36hd0mcng] {
    color: #2563eb;
    font-size: 14px;
}

/* Questions Column */
.col-questions[b-x36hd0mcng] {
    display: flex;
    align-items: center;
    gap: 6px;
    color: #666;
    font-size: 14px;
}

/* Groups Column */
.col-groups[b-x36hd0mcng] {
    display: flex;
    align-items: center;
}

.groups-display[b-x36hd0mcng] {
    display: flex;
    align-items: center;
    gap: 6px;
    color: #666;
}

.groups-text[b-x36hd0mcng] {
    font-size: 14px;
    color: #2563eb;
}

.no-groups[b-x36hd0mcng] {
    color: #999;
    font-style: italic;
    font-size: 14px;
}

/* Status Column */
.col-status[b-x36hd0mcng] {
    display: flex;
    align-items: center;
}

/* Status Badges */
.status-badge[b-x36hd0mcng] {
    padding: 4px 12px;
    border-radius: 16px;
    font-size: 12px;
    font-weight: 500;
}

.status-active[b-x36hd0mcng] {
    background: #dcfce7;
    color: #16a34a;
}

.status-draft[b-x36hd0mcng] {
    background: #fef3c7;
    color: #d97706;
}

.status-archived[b-x36hd0mcng] {
    background: #f3f4f6;
    color: #6b7280;
}

.status-default[b-x36hd0mcng] {
    background: #f3f4f6;
    color: #6b7280;
}

/* Actions Column */
.col-actions[b-x36hd0mcng] {
    display: flex;
    justify-content: flex-end;
}

/* Loading & Empty States */
.loading-container[b-x36hd0mcng] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 400px;
    gap: 16px;
    color: #666;
    background: white;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}

.empty-state[b-x36hd0mcng] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 64px 24px;
    text-align: center;
    color: #666;
}

.empty-state h3[b-x36hd0mcng] {
    margin: 16px 0 8px 0;
    font-size: 18px;
    font-weight: 600;
    color: #1a1a1a;
}

.empty-state p[b-x36hd0mcng] {
    margin: 0 0 24px 0;
    font-size: 14px;
}

/* Dialog Overlay */
.dialog-overlay[b-x36hd0mcng] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
    padding: 24px;
}

/* Create Lesson Dialog */
.create-lesson-dialog[b-x36hd0mcng] {
    background: white;
    border-radius: 12px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.2);
    width: 100%;
    max-width: 480px;
    max-height: 90vh;
    overflow-y: auto;
}

.dialog-header[b-x36hd0mcng] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 24px 24px 0 24px;
}

.dialog-title h2[b-x36hd0mcng] {
    margin: 0;
    font-size: 20px;
    font-weight: 600;
    color: #1a1a1a;
}

.dialog-subtitle[b-x36hd0mcng] {
    margin: 4px 0 0 0;
    font-size: 14px;
    color: #666;
}

.close-button[b-x36hd0mcng] {
    background: none;
    border: none;
    padding: 4px;
    cursor: pointer;
    color: #666;
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.close-button:hover[b-x36hd0mcng] {
    background: #f5f5f5;
    color: #1a1a1a;
}

.dialog-body[b-x36hd0mcng] {
    padding: 24px;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.form-group[b-x36hd0mcng] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}



.form-input[b-x36hd0mcng] {
    width: 100%;
}

/* Toggle Group */
.toggle-group[b-x36hd0mcng] {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    padding: 16px;
    background: #f9fafb;
    border-radius: 8px;
    border: 1px solid #e5e7eb;
}

.toggle-label[b-x36hd0mcng] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.toggle-label .form-label[b-x36hd0mcng] {
    margin: 0;
}

.toggle-description[b-x36hd0mcng] {
    font-size: 13px;
    color: #666;
}

.dialog-footer[b-x36hd0mcng] {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    padding: 16px 24px 24px 24px;
    border-top: 1px solid #eee;
}
/* /Components/Pages/Portal/OptionEditor.razor.rz.scp.css */
.option-row[b-juqivclkv1] {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    padding: 16px;
    background: #ffffff;
    border-radius: 8px;
    border: 1px solid #e0e0e0;
    transition: all 0.2s ease-in-out;
}

.option-row:hover[b-juqivclkv1] {
    border-color: #b0b0b0;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05);
}

.option-row.correct[b-juqivclkv1] {
    background: #f0fdf4;
    border-color: #86efac;
}

.option-marker[b-juqivclkv1] {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    font-weight: 600;
    background: #f3f4f6;
    color: #4b5563;
    flex-shrink: 0;
    margin-top: 2px;
}

.option-marker.correct[b-juqivclkv1] {
    background: #16a34a;
    color: white;
}

.option-content[b-juqivclkv1] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.option-actions[b-juqivclkv1] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-top: 4px;
}

.correct-selector[b-juqivclkv1] {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #4b5563;
    font-size: 14px;
    cursor: pointer;
    user-select: none;
}

.correct-selector input[type="radio"][b-juqivclkv1] {
    width: 16px;
    height: 16px;
    accent-color: #16a34a;
    cursor: pointer;
}

.correct-selector:hover[b-juqivclkv1] {
    color: #16a34a;
}
/* /Components/Pages/Portal/QuestionAddEdit.razor.rz.scp.css */
.question-add-container[b-zpchgfg53m] {
    padding: 32px;
    background-color: #f3f4f6;
    width: 100%;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    flex: 1;
}

/* Page Header - simplified */
.page-header[b-zpchgfg53m] {
    display: none; /* We moved controls to toolbar */
}

/* Back Button */
.back-button[b-zpchgfg53m] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border: 1px solid #e5e7eb;
    background: white;
    border-radius: 6px;
    cursor: pointer;
    color: #4b5563;
    transition: all 0.2s;
}

.back-button:hover[b-zpchgfg53m] {
    background: #f9fafb;
    border-color: #d1d5db;
    color: #111827;
}

/* Toolbar */
.toolbar[b-zpchgfg53m] {
    display: sticky;
    top: 0;
    z-index: 100;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 24px;
    padding: 12px 24px;
    background: white;
    border-radius: 10px;
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
    border: 1px solid #e5e7eb;
    flex-shrink: 0; /* Prevent toolbar from shrinking */
}

.toolbar-left[b-zpchgfg53m] {
    display: flex;
    gap: 16px;
    align-items: center;
}

.header-info[b-zpchgfg53m] {
    display: flex;
    flex-direction: column;
}

.header-title-row[b-zpchgfg53m] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.toolbar-right[b-zpchgfg53m] {
    display: flex;
    gap: 12px;
    align-items: center;
}

/* Badge Styles */
.status-badge[b-zpchgfg53m] {
    padding: 2px 10px;
    border-radius: 9999px;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.025em;
}

.status-active[b-zpchgfg53m] {
    background: #dcfce7;
    color: #15803d;
}

.status-draft[b-zpchgfg53m] {
    background: #fef3c7;
    color: #b45309;
}

.status-archived[b-zpchgfg53m] {
    background: #f3f4f6;
    color: #4b5563;
}

.status-default[b-zpchgfg53m] {
    background: #f3f4f6;
    color: #4b5563;
}

.category-tag[b-zpchgfg53m] {
    color: #2563eb;
    font-weight: 500;
    font-size: 14px;
    background: #eff6ff;
    padding: 2px 8px;
    border-radius: 6px;
}

.meta-separator[b-zpchgfg53m] {
    color: #d1d5db;
}

.meta-text[b-zpchgfg53m] {
    color: #6b7280;
    font-size: 14px;
}

/* Layout */
.content-layout[b-zpchgfg53m] {
    display: grid;
    grid-template-columns: 2fr 360px; /* Fixed width sidebar */
    gap: 24px;
    align-items: start;
    flex: 1; /* Take remaining height */
}

/* Cards */
.question-card[b-zpchgfg53m],
.statistics-card[b-zpchgfg53m],
.recent-answers-card[b-zpchgfg53m] {
    background: white;
    border-radius: 12px;
    box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px -1px rgba(0, 0, 0, 0.1);
    border: 1px solid #e5e7eb;
    overflow: visible; /* Helper tooltips might need this */
}

.card-header[b-zpchgfg53m] {
    display: flex;
    flex-direction: column;
    padding: 24px 24px 0 24px;
    margin-bottom: 24px;
}

.card-header h2[b-zpchgfg53m] {
    margin: 0;
    font-size: 18px;
    font-weight: 600;
    color: #111827;
}

.card-subtitle[b-zpchgfg53m] {
    margin: 6px 0 0 0;
    color: #6b7280;
    font-size: 14px;
}

.card-body[b-zpchgfg53m] {
    padding: 0 24px 24px 24px;
    display: flex;
    flex-direction: column;
    gap: 24px;
}

/* Forms */
.form-field[b-zpchgfg53m] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.form-label[b-zpchgfg53m] {
    font-size: 14px;
    font-weight: 500;
    color: #374151;
}

.helper-text[b-zpchgfg53m] {
    font-size: 13px;
    color: #6b7280;
}

.form-grid[b-zpchgfg53m] {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

/* Create Fluent UI overrides carefully */
[b-zpchgfg53m](.question-input textarea) {
    font-size: 16px;
    line-height: 1.5;
    padding: 12px;
}

/* Options Section */
.options-section[b-zpchgfg53m] {
    display: flex;
    flex-direction: column;
    gap: 16px;
    background: #f9fafb;
    padding: 20px;
    border-radius: 12px;
    border: 1px solid #e5e7eb;
}

.section-header[b-zpchgfg53m] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 8px;
}

.section-header h3[b-zpchgfg53m] {
    margin: 0;
    font-size: 14px;
    font-weight: 600;
    color: #4b5563;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.section-helper[b-zpchgfg53m] {
    font-size: 13px;
    color: #6b7280;
}

.options-list[b-zpchgfg53m] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

/* Removed deep styles for options as they are now in OptionEditor.razor.css */

.option-toolbar[b-zpchgfg53m] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 8px;
}

.note[b-zpchgfg53m] {
    color: #9ca3af;
    font-size: 13px;
    font-style: italic;
}

/* Image Section */
.image-section[b-zpchgfg53m] {
    margin-top: 8px;
    padding-top: 24px;
    border-top: 1px dashed #e5e7eb;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.image-controls[b-zpchgfg53m] {
    display: flex;
    gap: 12px;
    align-items: center;
    flex-wrap: wrap;
}

.image-preview[b-zpchgfg53m] {
    width: 100%;
    margin-top: 8px;
    background: #f3f4f6;
    border-radius: 8px;
    overflow: hidden;
    display: flex;
    justify-content: center;
    border: 1px solid #e5e7eb;
}

.image-preview img[b-zpchgfg53m] {
    max-width: 100%;
    max-height: 400px;
    object-fit: contain;
}

/* Sidebar Specifics */
.sidebar[b-zpchgfg53m] {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.metadata-card .card-body[b-zpchgfg53m] {
    gap: 20px;
}

.checklist[b-zpchgfg53m] {
    margin: 0;
    padding-left: 16px;
    color: #4b5563;
    font-size: 14px;
}

.checklist li[b-zpchgfg53m] {
    margin-bottom: 8px;
    line-height: 1.5;
}

.divider[b-zpchgfg53m] {
    height: 1px;
    background: #e5e7eb;
    margin: 8px 0;
}

.save-actions[b-zpchgfg53m] {
    display: flex;
    gap: 12px;
    justify-content: flex-end;
}

.save-actions.column[b-zpchgfg53m] {
    flex-direction: column;
}

/* AI Prompt */
.ai-prompt-overlay[b-zpchgfg53m] {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.5);
    backdrop-filter: blur(2px);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
}

.ai-prompt[b-zpchgfg53m] {
    background: white;
    padding: 24px;
    border-radius: 16px;
    width: 540px;
    max-width: 90vw;
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.ai-prompt h3[b-zpchgfg53m] {
    margin-top: 0;
}

/* Responsive */
@media (max-width: 1024px) {
    .content-layout[b-zpchgfg53m] {
        grid-template-columns: 1fr;
    }

    .toolbar[b-zpchgfg53m] {
        position: static;
        margin-bottom: 24px;
    }
}
/* /Components/Pages/Portal/QuestionDetails.razor.rz.scp.css */
.loading-container[b-tf7y6iwan2] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 400px;
    gap: 16px;
    color: #666;
    background: white;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}

.not-found[b-tf7y6iwan2] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 400px;
    gap: 16px;
    text-align: center;
    background: white;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    padding: 48px;
}

.not-found h2[b-tf7y6iwan2] {
    margin: 0;
    font-size: 20px;
    font-weight: 600;
    color: #1a1a1a;
}

.not-found p[b-tf7y6iwan2] {
    margin: 0;
    color: #666;
}

.back-button[b-tf7y6iwan2] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border: none;
    background: white;
    border-radius: 8px;
    cursor: pointer;
    color: #666;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    transition: all 0.15s;
}

.back-button:hover[b-tf7y6iwan2] {
    background: #f5f5f5;
    color: #1a1a1a;
}

.header-info[b-tf7y6iwan2] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.header-title-row[b-tf7y6iwan2] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.header-title-row h1[b-tf7y6iwan2] {
    margin: 0;
    font-size: 24px;
    font-weight: 600;
    color: #1a1a1a;
}

.header-meta[b-tf7y6iwan2] {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #666;
    font-size: 14px;
}

.category-tag[b-tf7y6iwan2] {
    color: #2563eb;
    font-weight: 500;
}

.meta-separator[b-tf7y6iwan2] {
    color: #ccc;
}

.header-right[b-tf7y6iwan2] {
    display: flex;
    gap: 12px;
}

/* Status Badges */
.status-badge[b-tf7y6iwan2] {
    padding: 4px 12px;
    border-radius: 16px;
    font-size: 12px;
    font-weight: 500;
}

.status-active[b-tf7y6iwan2] {
    background: #dcfce7;
    color: #16a34a;
}

.status-draft[b-tf7y6iwan2] {
    background: #fef3c7;
    color: #d97706;
}

.status-archived[b-tf7y6iwan2] {
    background: #f3f4f6;
    color: #6b7280;
}

.status-default[b-tf7y6iwan2] {
    background: #f3f4f6;
    color: #6b7280;
}

/* KPI Cards */
.kpi-cards[b-tf7y6iwan2] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
    margin-bottom: 24px;
}

.kpi-card[b-tf7y6iwan2] {
    background: white;
    border-radius: 12px;
    padding: 20px;
    display: flex;
    align-items: center;
    gap: 16px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}

.kpi-icon[b-tf7y6iwan2] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.kpi-icon.answers[b-tf7y6iwan2] {
    background: #e0e7ff;
    color: #4f46e5;
}

.kpi-icon.correct[b-tf7y6iwan2] {
    background: #dcfce7;
    color: #16a34a;
}

.kpi-icon.difficulty[b-tf7y6iwan2] {
    background: #fef3c7;
    color: #d97706;
}

.kpi-icon.lessons[b-tf7y6iwan2] {
    background: #f3e8ff;
    color: #9333ea;
}

.kpi-content[b-tf7y6iwan2] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.kpi-value[b-tf7y6iwan2] {
    font-size: 24px;
    font-weight: 600;
    color: #1a1a1a;
}

.kpi-label[b-tf7y6iwan2] {
    font-size: 13px;
    color: #666;
}

/* Correct Rate Colors */
.rate-high[b-tf7y6iwan2] {
    color: #16a34a;
}

.rate-medium[b-tf7y6iwan2] {
    color: #d97706;
}

.rate-low[b-tf7y6iwan2] {
    color: #dc2626;
}

/* Content Layout */
.content-layout[b-tf7y6iwan2] {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 24px;
}

/* Cards */
.question-card[b-tf7y6iwan2],
.statistics-card[b-tf7y6iwan2],
.recent-answers-card[b-tf7y6iwan2] {
    background: white;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    overflow: hidden;
}

.card-header[b-tf7y6iwan2] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px 24px;
    border-bottom: 1px solid #f0f0f0;
}

.card-header h2[b-tf7y6iwan2] {
    margin: 0;
    font-size: 16px;
    font-weight: 600;
    color: #1a1a1a;
}

.card-body[b-tf7y6iwan2] {
    padding: 24px;
}

/* Question Card */
.question-card[b-tf7y6iwan2] {
    grid-column: 1;
    grid-row: 1 / 3;
}

.question-text[b-tf7y6iwan2] {
    font-size: 18px;
    font-weight: 500;
    color: #1a1a1a;
    line-height: 1.6;
    margin: 0 0 24px 0;
}

.question-image[b-tf7y6iwan2] {
    margin-bottom: 24px;
    overflow: hidden;
    display: flex;
    justify-content: center;
    align-items: center;
}

.question-image img[b-tf7y6iwan2] {
    max-width: 100%;
    height: auto;
    display: block;
}

/* Options Section */
.options-section[b-tf7y6iwan2] {
    margin-bottom: 24px;
}

.options-section h3[b-tf7y6iwan2],
.explanation-section h3[b-tf7y6iwan2],
.tags-section h3[b-tf7y6iwan2],
.lessons-section h3[b-tf7y6iwan2] {
    margin: 0 0 12px 0;
    font-size: 14px;
    font-weight: 600;
    color: #666;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.options-list[b-tf7y6iwan2] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.option-item[b-tf7y6iwan2] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 16px;
    background: #f9fafb;
    border-radius: 8px;
    border: 1px solid #e5e7eb;
    transition: all 0.15s;
}

.option-item.correct[b-tf7y6iwan2] {
    background: #f0fdf4;
    border-color: #86efac;
}

.option-marker[b-tf7y6iwan2] {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    font-weight: 600;
    background: #e5e7eb;
    color: #666;
}

.option-marker.correct[b-tf7y6iwan2] {
    background: #16a34a;
    color: white;
}

.option-text[b-tf7y6iwan2] {
    font-size: 14px;
    color: #1a1a1a;
}

/* Explanation Section */
.explanation-section[b-tf7y6iwan2] {
    margin-bottom: 24px;
    padding: 16px;
    background: #f0f9ff;
    border-radius: 8px;
    border-left: 4px solid #0ea5e9;
}

.explanation-text[b-tf7y6iwan2] {
    margin: 0;
    font-size: 14px;
    color: #1a1a1a;
    line-height: 1.6;
}

/* Tags Section */
.tags-section[b-tf7y6iwan2] {
    margin-bottom: 24px;
}

.tags-list[b-tf7y6iwan2] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.tag[b-tf7y6iwan2] {
    padding: 4px 12px;
    background: #f5f5f5;
    border-radius: 16px;
    font-size: 12px;
    color: #666;
    border: 1px solid #e5e5e5;
}

/* Lessons Section */
.lessons-section[b-tf7y6iwan2] {
    margin-bottom: 0;
}

.lessons-list[b-tf7y6iwan2] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.lesson-badge[b-tf7y6iwan2] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    background: #f3e8ff;
    border-radius: 16px;
    font-size: 12px;
    color: #7c3aed;
    font-weight: 500;
}

/* Statistics Card */
.statistics-card[b-tf7y6iwan2] {
    grid-column: 2;
    grid-row: 1;
}

.statistics-list[b-tf7y6iwan2] {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.stat-item[b-tf7y6iwan2] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.stat-header[b-tf7y6iwan2] {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.stat-option[b-tf7y6iwan2] {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    color: #1a1a1a;
}

.stat-option.correct[b-tf7y6iwan2] {
    color: #16a34a;
    font-weight: 500;
}

.stat-value[b-tf7y6iwan2] {
    font-size: 14px;
    font-weight: 600;
    color: #1a1a1a;
}

.stat-bar-container[b-tf7y6iwan2] {
    width: 100%;
    height: 8px;
    background: #e5e5e5;
    border-radius: 4px;
    overflow: hidden;
}

.stat-bar[b-tf7y6iwan2] {
    height: 100%;
    background: #9ca3af;
    border-radius: 4px;
    transition: width 0.3s;
}

.stat-bar.correct[b-tf7y6iwan2] {
    background: #16a34a;
}

.stat-count[b-tf7y6iwan2] {
    font-size: 12px;
    color: #888;
}

.empty-stats[b-tf7y6iwan2],
.empty-answers[b-tf7y6iwan2] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 32px;
    text-align: center;
    color: #666;
}

.empty-stats p[b-tf7y6iwan2],
.empty-answers p[b-tf7y6iwan2] {
    margin: 12px 0 0 0;
    font-size: 14px;
}

/* Recent Answers Card */
.recent-answers-card[b-tf7y6iwan2] {
    grid-column: 2;
    grid-row: 2;
}

.answer-count[b-tf7y6iwan2] {
    font-size: 13px;
    color: #888;
}

.answers-list[b-tf7y6iwan2] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.answer-item[b-tf7y6iwan2] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px;
    background: #f9fafb;
    border-radius: 8px;
}

.answer-result[b-tf7y6iwan2] {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.answer-result.correct[b-tf7y6iwan2] {
    background: #dcfce7;
    color: #16a34a;
}

.answer-result.incorrect[b-tf7y6iwan2] {
    background: #fee2e2;
    color: #dc2626;
}

.answer-info[b-tf7y6iwan2] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.student-name[b-tf7y6iwan2] {
    font-size: 14px;
    font-weight: 500;
    color: #1a1a1a;
}

.group-name[b-tf7y6iwan2] {
    font-size: 12px;
    color: #666;
}

.answer-time[b-tf7y6iwan2] {
    font-size: 12px;
    color: #888;
}

/* /Components/Pages/Portal/Questions.razor.rz.scp.css */
.question-search[b-906nfoyzpg] {
    width: 250px;
}

.category-filter[b-906nfoyzpg] {
    min-width: 160px;
}

.status-filter[b-906nfoyzpg] {
    min-width: 120px;
}

/* Tag Filter Panel */
.tag-filter-panel[b-906nfoyzpg] {
    background: white;
    border-radius: 12px;
    padding: 20px;
    margin-bottom: 20px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    border: 1px solid #e5e7eb;
}

.tag-filter-header[b-906nfoyzpg] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 16px;
}

.tag-filter-header h4[b-906nfoyzpg] {
    margin: 0;
    font-size: 14px;
    font-weight: 600;
    color: #4b5563;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.tag-chips[b-906nfoyzpg] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.tag-chip[b-906nfoyzpg] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    background: #f3f4f6;
    border: 1px solid #e5e7eb;
    border-radius: 16px;
    font-size: 13px;
    font-weight: 500;
    color: #4b5563;
    cursor: pointer;
    transition: all 0.2s;
    white-space: nowrap;
}

.tag-chip:hover[b-906nfoyzpg] {
    background: #e5e7eb;
    border-color: #d1d5db;
    transform: translateY(-1px);
}

.tag-chip.selected[b-906nfoyzpg] {
    background: #2563eb;
    border-color: #2563eb;
    color: white;
}

.tag-chip.selected:hover[b-906nfoyzpg] {
    background: #1d4ed8;
    border-color: #1d4ed8;
}



/* Card View */
.questions-grid[b-906nfoyzpg] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(340px, 1fr));
    gap: 20px;
}

.question-card[b-906nfoyzpg] {
    background: white;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    padding: 20px;
    display: flex;
    flex-direction: column;
    gap: 16px;
    transition: box-shadow 0.15s, transform 0.15s;
}

.question-icon[b-906nfoyzpg] {
    width: 68px;
    height: 38px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
}


.question-icon-table[b-906nfoyzpg] {
    width: 32px;
    height: 32px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 8px;
    font-size: 18px;
}

.question-card:hover[b-906nfoyzpg] {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
    transform: translateY(-2px);
}

.card-header[b-906nfoyzpg] {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.card-body[b-906nfoyzpg] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.question-text[b-906nfoyzpg] {
    font-size: 15px;
    font-weight: 500;
    color: #1a1a1a;
    text-decoration: none;
    line-height: 1.5;
    transition: color 0.15s;
}

.question-text:hover[b-906nfoyzpg] {
    color: #af212f;
}

.tags-container[b-906nfoyzpg] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.tag[b-906nfoyzpg] {
    padding: 4px 10px;
    background: #f5f5f5;
    border-radius: 16px;
    font-size: 12px;
    color: #666;
    border: 1px solid #e5e5e5;
}

.card-footer[b-906nfoyzpg] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-top: 12px;
    border-top: 1px solid #f0f0f0;
}

.correct-rate[b-906nfoyzpg] {
    display: flex;
    align-items: center;
    gap: 6px;
    font-weight: 600;
    font-size: 14px;
}

.rate-label[b-906nfoyzpg] {
    font-weight: 400;
    color: #666;
}

.answer-count[b-906nfoyzpg] {
    font-size: 13px;
    color: #888;
}

/* List View Table */
.questions-table-container[b-906nfoyzpg] {
    background: white;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    overflow: hidden;
}



/* Table Columns */
.col-question[b-906nfoyzpg] {
    display: flex;
    align-items: flex-start;
}

.question-info[b-906nfoyzpg] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.question-link[b-906nfoyzpg] {
    font-weight: 500;
    color: #1a1a1a;
    text-decoration: none;
    transition: color 0.15s;
    line-height: 1.4;
}

.question-link:hover[b-906nfoyzpg] {
    color: #af212f;
}

.tags-container-inline[b-906nfoyzpg] {
    display: flex;
    gap: 6px;
}

.tag-small[b-906nfoyzpg] {
    padding: 2px 8px;
    background: #f5f5f5;
    border-radius: 12px;
    font-size: 11px;
    color: #666;
    border: 1px solid #e5e5e5;
}

.col-category[b-906nfoyzpg] {
    color: #666;
    font-size: 14px;
}

.col-status[b-906nfoyzpg] {
    display: flex;
    align-items: center;
}

.col-correct[b-906nfoyzpg] {
    display: flex;
    align-items: center;
    gap: 4px;
    font-weight: 600;
    font-size: 14px;
}

.col-answers[b-906nfoyzpg] {
    color: #666;
    font-size: 14px;
}

.col-actions[b-906nfoyzpg] {
    display: flex;
    justify-content: flex-end;
}

/* Status Badges */
.status-badge[b-906nfoyzpg] {
    padding: 4px 12px;
    border-radius: 16px;
    font-size: 12px;
    font-weight: 500;
}

.status-active[b-906nfoyzpg] {
    background: #dcfce7;
    color: #16a34a;
}

.status-draft[b-906nfoyzpg] {
    background: #fef3c7;
    color: #d97706;
}

.status-archived[b-906nfoyzpg] {
    background: #f3f4f6;
    color: #6b7280;
}

.status-default[b-906nfoyzpg] {
    background: #f3f4f6;
    color: #6b7280;
}

/* Correct Rate Colors */
.rate-high[b-906nfoyzpg] {
    color: #16a34a;
}

.rate-medium[b-906nfoyzpg] {
    color: #d97706;
}

.rate-low[b-906nfoyzpg] {
    color: #dc2626;
}

/* Loading & Empty States */
.loading-container[b-906nfoyzpg] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 400px;
    gap: 16px;
    color: #666;
    background: white;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}

.empty-state[b-906nfoyzpg] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 64px 24px;
    text-align: center;
    color: #666;
    background: white;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}

.empty-state h3[b-906nfoyzpg] {
    margin: 16px 0 8px 0;
    font-size: 18px;
    font-weight: 600;
    color: #1a1a1a;
}

.empty-state p[b-906nfoyzpg] {
    margin: 0 0 24px 0;
    font-size: 14px;
}

/* Dialog Overlay */
.dialog-overlay[b-906nfoyzpg] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
    padding: 24px;
}

/* Create Question Dialog */
.create-question-dialog[b-906nfoyzpg] {
    background: white;
    border-radius: 12px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.2);
    width: 100%;
    max-width: 560px;
    max-height: 90vh;
    overflow-y: auto;
}

.dialog-header[b-906nfoyzpg] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 24px 24px 0 24px;
}

.dialog-title h2[b-906nfoyzpg] {
    margin: 0;
    font-size: 20px;
    font-weight: 600;
    color: #1a1a1a;
}

.dialog-subtitle[b-906nfoyzpg] {
    margin: 4px 0 0 0;
    font-size: 14px;
    color: #666;
}

.close-button[b-906nfoyzpg] {
    background: none;
    border: none;
    padding: 4px;
    cursor: pointer;
    color: #666;
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.close-button:hover[b-906nfoyzpg] {
    background: #f5f5f5;
    color: #1a1a1a;
}

.dialog-body[b-906nfoyzpg] {
    padding: 24px;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.form-group[b-906nfoyzpg] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}



.form-input[b-906nfoyzpg] {
    width: 100%;
}

.dialog-footer[b-906nfoyzpg] {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    padding: 16px 24px 24px 24px;
    border-top: 1px solid #eee;
}
/* /Components/Pages/Portal/Reports.razor.rz.scp.css */
.period-filter[b-tr4ps5j7aj] {
    min-width: 140px;
}

.group-filter[b-tr4ps5j7aj] {
    min-width: 140px;
}

/* Tabs */
.tabs-container[b-tr4ps5j7aj] {
    margin-bottom: 24px;
}

.tabs[b-tr4ps5j7aj] {
    display: flex;
    gap: 4px;
    background: white;
    padding: 4px;
    border-radius: 8px;
    width: fit-content;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}

.tab[b-tr4ps5j7aj] {
    padding: 10px 20px;
    border: none;
    background: transparent;
    border-radius: 6px;
    cursor: pointer;
    font-size: 14px;
    font-weight: 500;
    color: #666;
    transition: all 0.15s;
}

.tab:hover[b-tr4ps5j7aj] {
    background: #f5f5f5;
    color: #1a1a1a;
}

.tab.active[b-tr4ps5j7aj] {
    background: #f5f5f5;
    color: #1a1a1a;
}

/* Loading */
.loading-container[b-tr4ps5j7aj] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 400px;
    gap: 16px;
    color: #666;
    background: white;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}

/* Overview Tab */
.overview-tab[b-tr4ps5j7aj] {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

/* Chart Cards */
.chart-card[b-tr4ps5j7aj],
.table-card[b-tr4ps5j7aj] {
    background: white;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    overflow: hidden;
}

.card-header[b-tr4ps5j7aj] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px 24px;
    border-bottom: 1px solid #f0f0f0;
}

.card-header h2[b-tr4ps5j7aj] {
    margin: 0;
    font-size: 16px;
    font-weight: 600;
    color: #1a1a1a;
}

.record-count[b-tr4ps5j7aj] {
    font-size: 13px;
    color: #888;
}

.card-body[b-tr4ps5j7aj] {
    padding: 24px;
}

.chart-body[b-tr4ps5j7aj] {
    min-height: 300px;
}

.empty-chart[b-tr4ps5j7aj] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 300px;
    color: #666;
}

.empty-chart p[b-tr4ps5j7aj] {
    margin: 12px 0 0 0;
    font-size: 14px;
}

/* Table Styles */
.table-header[b-tr4ps5j7aj] {
    display: grid;
    padding: 12px 16px;
    background: #fafafa;
    border-radius: 8px;
    font-size: 11px;
    font-weight: 600;
    color: #888;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 8px;
}

.table-row[b-tr4ps5j7aj] {
    display: grid;
    padding: 16px;
    border-bottom: 1px solid #f5f5f5;
    align-items: center;
    transition: background-color 0.15s;
}

.table-row:hover[b-tr4ps5j7aj] {
    background-color: #fafafa;
}

.table-row:last-child[b-tr4ps5j7aj] {
    border-bottom: none;
}

/* Questions Tab Table */
.questions-tab .table-header[b-tr4ps5j7aj],
.questions-tab .table-row[b-tr4ps5j7aj] {
    grid-template-columns: 3fr 1.5fr 1fr 1fr 1fr;
}

/* Students Tab Table */
.students-tab .table-header[b-tr4ps5j7aj],
.students-tab .table-row[b-tr4ps5j7aj] {
    grid-template-columns: 2fr 1.5fr 1fr 1fr 1fr 1fr 1.5fr;
}

/* Column Styles */
.col-question[b-tr4ps5j7aj],
.col-student[b-tr4ps5j7aj] {
    font-weight: 500;
}

.question-link[b-tr4ps5j7aj],
.student-link[b-tr4ps5j7aj] {
    color: #1a1a1a;
    text-decoration: none;
    transition: color 0.15s;
}

.question-link:hover[b-tr4ps5j7aj],
.student-link:hover[b-tr4ps5j7aj] {
    color: #af212f;
}

.col-category[b-tr4ps5j7aj],
.col-group[b-tr4ps5j7aj] {
    color: #666;
    font-size: 14px;
}

.col-answers[b-tr4ps5j7aj],
.col-correct[b-tr4ps5j7aj],
.col-rate[b-tr4ps5j7aj],
.col-streak[b-tr4ps5j7aj],
.col-activity[b-tr4ps5j7aj],
.col-difficulty[b-tr4ps5j7aj] {
    font-size: 14px;
}

/* Percentage Colors */
.percentage[b-tr4ps5j7aj] {
    font-weight: 600;
}

.rate-high[b-tr4ps5j7aj] {
    color: #16a34a;
}

.rate-medium[b-tr4ps5j7aj] {
    color: #d97706;
}

.rate-low[b-tr4ps5j7aj] {
    color: #dc2626;
}

/* Difficulty Badges */
.difficulty-badge[b-tr4ps5j7aj] {
    padding: 4px 10px;
    border-radius: 12px;
    font-size: 12px;
    font-weight: 500;
}

.difficulty-easy[b-tr4ps5j7aj] {
    background: #dcfce7;
    color: #16a34a;
}

.difficulty-medium[b-tr4ps5j7aj] {
    background: #fef3c7;
    color: #d97706;
}

.difficulty-hard[b-tr4ps5j7aj] {
    background: #fee2e2;
    color: #dc2626;
}

.difficulty-unknown[b-tr4ps5j7aj] {
    background: #f3f4f6;
    color: #6b7280;
}

/* Streak Badge */
.streak-badge[b-tr4ps5j7aj] {
    font-weight: 500;
    color: #d97706;
}

.no-streak[b-tr4ps5j7aj] {
    color: #ccc;
}

/* Empty State */
.empty-state[b-tr4ps5j7aj] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 64px 24px;
    text-align: center;
    color: #666;
}

.empty-state p[b-tr4ps5j7aj] {
    margin: 16px 0 0 0;
    font-size: 14px;
}

/* Export Dialog Overlay */
.dialog-overlay[b-tr4ps5j7aj] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
    padding: 24px;
}

/* Export Dialog */
.export-dialog[b-tr4ps5j7aj] {
    background: white;
    border-radius: 12px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.2);
    width: 100%;
    max-width: 500px;
    max-height: 90vh;
    overflow-y: auto;
}

.dialog-header[b-tr4ps5j7aj] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 24px 24px 0 24px;
}

.dialog-title h2[b-tr4ps5j7aj] {
    margin: 0;
    font-size: 20px;
    font-weight: 600;
    color: #1a1a1a;
}

.dialog-subtitle[b-tr4ps5j7aj] {
    margin: 4px 0 0 0;
    font-size: 14px;
    color: #666;
}

.close-button[b-tr4ps5j7aj] {
    background: none;
    border: none;
    padding: 4px;
    cursor: pointer;
    color: #666;
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.close-button:hover[b-tr4ps5j7aj] {
    background: #f5f5f5;
    color: #1a1a1a;
}

.dialog-body[b-tr4ps5j7aj] {
    padding: 24px;
}

/* Export Options */
.export-options[b-tr4ps5j7aj] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.export-option[b-tr4ps5j7aj] {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 16px;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    cursor: pointer;
    transition: all 0.15s;
}

.export-option:hover[b-tr4ps5j7aj] {
    background: #f9fafb;
    border-color: #d1d5db;
}

.export-icon[b-tr4ps5j7aj] {
    flex-shrink: 0;
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fee2e2;
    border-radius: 10px;
}

.export-info[b-tr4ps5j7aj] {
    flex: 1;
}

.export-info h4[b-tr4ps5j7aj] {
    margin: 0 0 4px 0;
    font-size: 15px;
    font-weight: 600;
    color: #1a1a1a;
}

.export-info p[b-tr4ps5j7aj] {
    margin: 0;
    font-size: 13px;
    color: #666;
    line-height: 1.4;
}

/* Export Progress */
.export-progress[b-tr4ps5j7aj] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 20px;
    margin-top: 16px;
    background: #f9fafb;
    border-radius: 8px;
    color: #666;
    font-size: 14px;
}

/* Export Error */
.export-error[b-tr4ps5j7aj] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 16px;
    margin-bottom: 16px;
    background: #fee2e2;
    border: 1px solid #fecaca;
    border-radius: 8px;
    color: #dc2626;
    font-size: 14px;
}

/* Disabled export option */
.export-option.disabled[b-tr4ps5j7aj] {
    opacity: 0.5;
    pointer-events: none;
    cursor: not-allowed;
}
/* /Components/Pages/Portal/Schedules.razor.rz.scp.css */
.group-filter[b-fw6fxc0hf0] {
    min-width: 160px;
}

.view-toggle[b-fw6fxc0hf0] {
    display: flex;
    gap: 4px;
    padding: 4px;
    background: #f5f5f5;
    border-radius: 8px;
}

/* Calendar Container */
.calendar-container[b-fw6fxc0hf0] {
    background: white;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    padding: 24px;
}

/* Week Navigation */
.week-navigation[b-fw6fxc0hf0] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 24px;
}

.nav-button[b-fw6fxc0hf0] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border: 1px solid #e5e5e5;
    background: white;
    border-radius: 8px;
    cursor: pointer;
    color: #666;
    transition: all 0.15s;
}

.nav-button:hover[b-fw6fxc0hf0] {
    background: #f5f5f5;
    color: #1a1a1a;
    border-color: #ccc;
}

.week-title[b-fw6fxc0hf0] {
    margin: 0;
    font-size: 18px;
    font-weight: 600;
    color: #1a1a1a;
}

/* Week Grid */
.week-grid[b-fw6fxc0hf0] {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 12px;
}

.day-column[b-fw6fxc0hf0] {
    display: flex;
    flex-direction: column;
    min-height: 300px;
    background: #fafafa;
    border-radius: 12px;
    border: 1px solid #e5e5e5;
    overflow: hidden;
}

.day-column.today[b-fw6fxc0hf0] {
    border-color: #2563eb;
    background: #f0f7ff;
}

.day-header[b-fw6fxc0hf0] {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 12px 8px;
    border-bottom: 1px solid #e5e5e5;
}

.day-column.today .day-header[b-fw6fxc0hf0] {
    border-bottom-color: #bfdbfe;
}

.day-name[b-fw6fxc0hf0] {
    font-size: 11px;
    font-weight: 600;
    color: #888;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.day-column.today .day-name[b-fw6fxc0hf0] {
    color: #2563eb;
}

.day-number[b-fw6fxc0hf0] {
    font-size: 24px;
    font-weight: 600;
    color: #1a1a1a;
    margin-top: 4px;
}

.day-column.today .day-number[b-fw6fxc0hf0] {
    color: #2563eb;
}

.day-content[b-fw6fxc0hf0] {
    flex: 1;
    padding: 8px;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

/* Schedule Card in Calendar */
.schedule-card[b-fw6fxc0hf0] {
    padding: 8px 10px;
    background: white;
    border-radius: 8px;
    border-left: 3px solid #2563eb;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.06);
    cursor: pointer;
    transition: all 0.15s;
}

.schedule-card:hover[b-fw6fxc0hf0] {
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
    transform: translateY(-1px);
}

.schedule-card.status-completed[b-fw6fxc0hf0] {
    border-left-color: #16a34a;
    opacity: 0.7;
}

.schedule-card.status-cancelled[b-fw6fxc0hf0] {
    border-left-color: #dc2626;
    opacity: 0.6;
}

.schedule-question[b-fw6fxc0hf0] {
    font-size: 12px;
    font-weight: 500;
    color: #1a1a1a;
    line-height: 1.4;
    margin-bottom: 4px;
}

.schedule-group[b-fw6fxc0hf0] {
    font-size: 11px;
    color: #666;
}

/* Add Schedule Button */
.add-schedule-button[b-fw6fxc0hf0] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    padding: 8px;
    border: 1px dashed #ccc;
    background: transparent;
    border-radius: 8px;
    cursor: pointer;
    color: #888;
    transition: all 0.15s;
    margin-top: auto;
}

.add-schedule-button:hover[b-fw6fxc0hf0] {
    border-color: #2563eb;
    color: #2563eb;
    background: #f0f7ff;
}

/* List View */
.list-container[b-fw6fxc0hf0] {
    background: white;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    overflow: hidden;
}


.date-display[b-fw6fxc0hf0] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.date-day[b-fw6fxc0hf0] {
    font-size: 11px;
    font-weight: 600;
    color: #888;
    text-transform: uppercase;
}

.date-full[b-fw6fxc0hf0] {
    font-size: 14px;
    color: #1a1a1a;
}

.col-question[b-fw6fxc0hf0] {
    display: flex;
    align-items: center;
}

.question-link[b-fw6fxc0hf0] {
    font-weight: 500;
    color: #1a1a1a;
    text-decoration: none;
    transition: color 0.15s;
}

.question-link:hover[b-fw6fxc0hf0] {
    color: #af212f;
}

.col-group[b-fw6fxc0hf0] {
    display: flex;
    align-items: center;
}

.group-link[b-fw6fxc0hf0] {
    color: #2563eb;
    text-decoration: none;
    font-size: 14px;
    transition: color 0.15s;
}

.group-link:hover[b-fw6fxc0hf0] {
    color: #1d4ed8;
}

.all-groups[b-fw6fxc0hf0] {
    color: #666;
    font-style: italic;
    font-size: 14px;
}

.col-status[b-fw6fxc0hf0] {
    display: flex;
    align-items: center;
}

.col-actions[b-fw6fxc0hf0] {
    display: flex;
    justify-content: flex-end;
}

/* Status Badges */
.status-badge[b-fw6fxc0hf0] {
    padding: 4px 12px;
    border-radius: 16px;
    font-size: 12px;
    font-weight: 500;
}

.status-scheduled[b-fw6fxc0hf0] {
    background: #dbeafe;
    color: #2563eb;
}

.status-completed[b-fw6fxc0hf0] {
    background: #dcfce7;
    color: #16a34a;
}

.status-cancelled[b-fw6fxc0hf0] {
    background: #fee2e2;
    color: #dc2626;
}

.status-default[b-fw6fxc0hf0] {
    background: #f3f4f6;
    color: #6b7280;
}

/* Loading & Empty States */
.loading-container[b-fw6fxc0hf0] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 400px;
    gap: 16px;
    color: #666;
    background: white;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}

.empty-state[b-fw6fxc0hf0] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 64px 24px;
    text-align: center;
    color: #666;
}

.empty-state h3[b-fw6fxc0hf0] {
    margin: 16px 0 8px 0;
    font-size: 18px;
    font-weight: 600;
    color: #1a1a1a;
}

.empty-state p[b-fw6fxc0hf0] {
    margin: 0 0 24px 0;
    font-size: 14px;
}

/* Dialog Overlay */
.dialog-overlay[b-fw6fxc0hf0] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
    padding: 24px;
}

/* Create Schedule Dialog */
.create-schedule-dialog[b-fw6fxc0hf0] {
    background: white;
    border-radius: 12px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.2);
    width: 100%;
    max-width: 480px;
    max-height: 90vh;
    overflow-y: auto;
}

.dialog-header[b-fw6fxc0hf0] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 24px 24px 0 24px;
}

.dialog-title h2[b-fw6fxc0hf0] {
    margin: 0;
    font-size: 20px;
    font-weight: 600;
    color: #1a1a1a;
}

.dialog-subtitle[b-fw6fxc0hf0] {
    margin: 4px 0 0 0;
    font-size: 14px;
    color: #666;
}

.close-button[b-fw6fxc0hf0] {
    background: none;
    border: none;
    padding: 4px;
    cursor: pointer;
    color: #666;
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.close-button:hover[b-fw6fxc0hf0] {
    background: #f5f5f5;
    color: #1a1a1a;
}

.dialog-body[b-fw6fxc0hf0] {
    padding: 24px;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.form-group[b-fw6fxc0hf0] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}



.form-input[b-fw6fxc0hf0] {
    width: 100%;
}

.dialog-footer[b-fw6fxc0hf0] {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    padding: 16px 24px 24px 24px;
    border-top: 1px solid #eee;
}

/* /Components/Pages/Portal/StudentDetails.razor.rz.scp.css */
.loading-container[b-pyxpjns2dv] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 400px;
    gap: 16px;
    color: #666;
    background: white;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}

.not-found[b-pyxpjns2dv] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 400px;
    gap: 16px;
    text-align: center;
    background: white;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    padding: 48px;
}

.not-found h2[b-pyxpjns2dv] {
    margin: 0;
    font-size: 20px;
    font-weight: 600;
    color: #1a1a1a;
}

.not-found p[b-pyxpjns2dv] {
    margin: 0;
    color: #666;
}



.back-button[b-pyxpjns2dv] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border: none;
    background: white;
    border-radius: 8px;
    cursor: pointer;
    color: #666;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    transition: all 0.15s;
}

.back-button:hover[b-pyxpjns2dv] {
    background: #f5f5f5;
    color: #1a1a1a;
}

.student-avatar[b-pyxpjns2dv] {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: #e0e7ff;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #4f46e5;
}

.header-info[b-pyxpjns2dv] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.header-title-row[b-pyxpjns2dv] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.header-title-row h1[b-pyxpjns2dv] {
    margin: 0;
    font-size: 24px;
    font-weight: 600;
    color: #1a1a1a;
}

.header-meta[b-pyxpjns2dv] {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #666;
    font-size: 14px;
}

.meta-separator[b-pyxpjns2dv] {
    color: #ccc;
}

.header-right[b-pyxpjns2dv] {
    display: flex;
    gap: 12px;
}

/* Status Badges */
.status-badge[b-pyxpjns2dv] {
    padding: 4px 12px;
    border-radius: 16px;
    font-size: 12px;
    font-weight: 500;
}

.status-active[b-pyxpjns2dv] {
    background: #dcfce7;
    color: #16a34a;
}

.status-pending[b-pyxpjns2dv] {
    background: #fef3c7;
    color: #d97706;
}

.status-inactive[b-pyxpjns2dv] {
    background: #f3f4f6;
    color: #6b7280;
}

.status-default[b-pyxpjns2dv] {
    background: #f3f4f6;
    color: #6b7280;
}

/* Student Info Header */
.student-info-header[b-pyxpjns2dv] {
    display: flex;
    align-items: center;
    gap: 20px;
    padding: 24px 32px;
    background: white;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    margin-bottom: 24px;
}

.student-avatar[b-pyxpjns2dv] {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 32px;
    font-weight: 600;
    flex-shrink: 0;
}

.student-header-details[b-pyxpjns2dv] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.student-name-row[b-pyxpjns2dv] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.student-name-row h2[b-pyxpjns2dv] {
    margin: 0;
    font-size: 24px;
    font-weight: 600;
    color: #1a1a1a;
}

.student-meta-grid[b-pyxpjns2dv] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 16px;
}

.meta-item[b-pyxpjns2dv] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    color: #666;
}

.meta-item span[b-pyxpjns2dv] {
    color: #1a1a1a;
}

/* KPI Cards */
.kpi-cards[b-pyxpjns2dv] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
    margin-bottom: 24px;
}

.kpi-card[b-pyxpjns2dv] {
    background: white;
    border-radius: 12px;
    padding: 20px;
    display: flex;
    align-items: center;
    gap: 16px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}

.kpi-icon[b-pyxpjns2dv] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.kpi-icon.answers[b-pyxpjns2dv] {
    background: #e0e7ff;
    color: #4f46e5;
}

.kpi-icon.correct[b-pyxpjns2dv] {
    background: #dcfce7;
    color: #16a34a;
}

.kpi-icon.lessons[b-pyxpjns2dv] {
    background: #f3e8ff;
    color: #9333ea;
}

.kpi-icon.streak[b-pyxpjns2dv] {
    background: #fef3c7;
    color: #d97706;
}

.kpi-icon.rate[b-pyxpjns2dv] {
    background: #dbeafe;
    color: #2563eb;
}

.kpi-content[b-pyxpjns2dv] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.kpi-value[b-pyxpjns2dv] {
    font-size: 24px;
    font-weight: 600;
    color: #1a1a1a;
}

.kpi-label[b-pyxpjns2dv] {
    font-size: 13px;
    color: #666;
}

/* Correct Rate Colors */
.rate-high[b-pyxpjns2dv] {
    color: #16a34a;
}

.rate-medium[b-pyxpjns2dv] {
    color: #d97706;
}

.rate-low[b-pyxpjns2dv] {
    color: #dc2626;
}

/* Tab Content Styling */
.tab-content[b-pyxpjns2dv] {
    padding: 24px;
    background: #ffffff;
    border-radius: 0 0 8px 8px;
    border: 1px solid #e2e8f0;
    border-top: none;
    margin-top: 0;
}

/* FluentTabs styling override */
[b-pyxpjns2dv] .fluent-tabs {
    background: transparent;
}

[b-pyxpjns2dv] .fluent-tabs .tab-list {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-bottom: none;
    border-radius: 8px 8px 0 0;
    padding: 8px 8px 0 8px;
}

[b-pyxpjns2dv] .fluent-tabs .tab-panel {
    padding: 0;
}

/* Progress Tab Styles */
.progress-grid[b-pyxpjns2dv] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
}

.progress-section[b-pyxpjns2dv] {
    background: #f8f9fa;
    border-radius: 8px;
    padding: 16px;
    border: 1px solid #e2e8f0;
    position: relative;
}

.section-header[b-pyxpjns2dv] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 16px;
    padding-bottom: 12px;
    border-bottom: 2px solid #e2e8f0;
}

.section-header h3[b-pyxpjns2dv] {
    margin: 0;
    font-size: 16px;
    font-weight: 600;
    color: #2d3748;
}

.progress-items[b-pyxpjns2dv] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.progress-item[b-pyxpjns2dv] {
    background: #ffffff;
    padding: 12px;
    border-radius: 6px;
    border: 1px solid #e2e8f0;
}

.progress-label[b-pyxpjns2dv] {
    display: flex;
    justify-content: space-between;
    margin-bottom: 8px;
    font-size: 13px;
    color: #4a5568;
}

.progress-value[b-pyxpjns2dv] {
    font-weight: 600;
    color: #2d3748;
}

/* Activity Summary Styles */
.activity-summary[b-pyxpjns2dv] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.activity-summary-item[b-pyxpjns2dv] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    background: #ffffff;
    border-radius: 6px;
    border: 1px solid #e2e8f0;
}

.activity-result-small[b-pyxpjns2dv] {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.activity-result-small.correct[b-pyxpjns2dv] {
    background: #dcfce7;
    color: #16a34a;
}

.activity-result-small.incorrect[b-pyxpjns2dv] {
    background: #fee2e2;
    color: #dc2626;
}

.activity-summary-text[b-pyxpjns2dv] {
    font-size: 13px;
    color: #4a5568;
}

.empty-text[b-pyxpjns2dv] {
    text-align: center;
    color: #94a3b8;
    font-size: 13px;
    margin: 8px 0;
}

/* App Login Styles - Redesigned */
.app-login-section-full[b-pyxpjns2dv] {
    width: 100%;
}

.section-header-large[b-pyxpjns2dv] {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    margin-bottom: 32px;
    padding-bottom: 24px;
    border-bottom: 2px solid #e2e8f0;
}

.section-header-large h3[b-pyxpjns2dv] {
    margin: 0;
    font-size: 24px;
    font-weight: 600;
    color: #2d3748;
}

.section-description[b-pyxpjns2dv] {
    color: #64748b;
    font-size: 14px;
    margin: 4px 0 0 0;
}

.credentials-display-box[b-pyxpjns2dv] {
    background: #ffffff;
    border-radius: 12px;
    padding: 32px;
    margin-bottom: 32px;
    border: 2px solid #e2e8f0;
    display: flex;
    flex-direction: column;
    gap: 32px;
}

.credential-section[b-pyxpjns2dv] {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.credential-section.password-reveal-section[b-pyxpjns2dv] {
    background: #fffbeb;
    padding: 24px;
    border-radius: 12px;
    border: 2px solid #fbbf24;
}

.credential-label[b-pyxpjns2dv] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    font-weight: 600;
    color: #4a5568;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.credential-label.warning[b-pyxpjns2dv] {
    color: #f59e0b;
}

.credential-display-large[b-pyxpjns2dv] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.credential-id-box[b-pyxpjns2dv],
.credential-password-box[b-pyxpjns2dv] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px 24px;
    background: #f8f9fa;
    border-radius: 8px;
    border: 2px solid #e2e8f0;
}

.credential-password-box[b-pyxpjns2dv] {
    background: #ffffff;
    border-color: #fbbf24;
}

.credential-id-large[b-pyxpjns2dv],
.credential-password-large[b-pyxpjns2dv] {
    font-size: 32px;
    font-weight: 700;
    font-family: 'Courier New', monospace;
    letter-spacing: 3px;
}

.credential-id-large[b-pyxpjns2dv] {
    color: #667eea;
}

.credential-password-large[b-pyxpjns2dv] {
    color: #f59e0b;
}

.credential-empty-large[b-pyxpjns2dv] {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 24px;
    background: #fef3c7;
    border-radius: 12px;
    border: 2px dashed #fbbf24;
}

.empty-title[b-pyxpjns2dv] {
    margin: 0;
    font-size: 16px;
    font-weight: 600;
    color: #92400e;
}

.empty-subtitle[b-pyxpjns2dv] {
    margin: 4px 0 0 0;
    font-size: 14px;
    color: #78350f;
}

.help-text-success[b-pyxpjns2dv] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    color: #16a34a;
    font-weight: 500;
}

.help-text-error[b-pyxpjns2dv] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    color: #dc2626;
    font-weight: 500;
    margin-top: 8px;
}

.warning-banner[b-pyxpjns2dv] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 16px;
    background: #fef3c7;
    border-radius: 6px;
    border: 1px solid #fbbf24;
}

.warning-banner span[b-pyxpjns2dv] {
    font-size: 14px;
    color: #92400e;
    font-weight: 600;
}

.status-badge-large[b-pyxpjns2dv] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 20px;
    border-radius: 8px;
    font-size: 16px;
    font-weight: 600;
    align-self: flex-start;
}

.status-badge-large.status-active[b-pyxpjns2dv] {
    background: #dcfce7;
    color: #16a34a;
    border: 2px solid #bbf7d0;
}

.password-management-section[b-pyxpjns2dv] {
    margin-top: 24px;
}

.section-title[b-pyxpjns2dv] {
    font-size: 20px;
    font-weight: 600;
    color: #2d3748;
    margin: 0 0 24px 0;
}

.management-cards[b-pyxpjns2dv] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
}

.management-card[b-pyxpjns2dv] {
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding: 24px;
    background: #f8f9fa;
    border-radius: 12px;
    border: 2px solid #e2e8f0;
}

.card-icon[b-pyxpjns2dv] {
    width: 64px;
    height: 64px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #ffffff;
    border-radius: 12px;
    border: 2px solid #e2e8f0;
}

.card-content h5[b-pyxpjns2dv] {
    margin: 0;
    font-size: 18px;
    font-weight: 600;
    color: #2d3748;
}

.card-content p[b-pyxpjns2dv] {
    margin: 4px 0 0 0;
    font-size: 14px;
    color: #64748b;
    line-height: 1.5;
}

.recent-logins-section[b-pyxpjns2dv] {
    margin-top: 32px;
}

.login-history[b-pyxpjns2dv] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.login-entry[b-pyxpjns2dv] {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 16px;
    background: #f8f9fa;
    border-radius: 8px;
    border: 1px solid #e2e8f0;
    transition: all 0.2s;
}

.login-entry:hover[b-pyxpjns2dv] {
    border-color: #cbd5e0;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
}

.login-icon[b-pyxpjns2dv] {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #ffffff;
    border-radius: 8px;
    border: 1px solid #e2e8f0;
}

.login-details[b-pyxpjns2dv] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.login-device[b-pyxpjns2dv] {
    font-size: 14px;
    font-weight: 600;
    color: #2d3748;
}

.login-time[b-pyxpjns2dv] {
    font-size: 13px;
    color: #64748b;
}

/* Legacy styles cleanup */
.app-login-section[b-pyxpjns2dv] {
    max-width: 800px;
}

.credentials-box[b-pyxpjns2dv],
.password-section[b-pyxpjns2dv],
.password-fields[b-pyxpjns2dv],
.password-actions[b-pyxpjns2dv],
.recent-logins[b-pyxpjns2dv] {
    /* Deprecated - using new structure above */
}

/* Responsive */
@media (max-width: 768px) {
    .kpi-cards[b-pyxpjns2dv] {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .password-fields[b-pyxpjns2dv] {
        grid-template-columns: 1fr;
    }
    
    .password-actions[b-pyxpjns2dv] {
        flex-direction: column;
    }
    
    .activity-timeline-item[b-pyxpjns2dv] {
        flex-direction: column;
    }
    
    .activity-date[b-pyxpjns2dv] {
        min-width: auto;
    }
    
    .student-info-header[b-pyxpjns2dv] {
        flex-direction: column;
        text-align: center;
    }
    
    .student-meta-grid[b-pyxpjns2dv] {
        grid-template-columns: 1fr;
    }
    
    .management-cards[b-pyxpjns2dv] {
        grid-template-columns: 1fr;
    }
    
    .credential-id-large[b-pyxpjns2dv],
    .credential-password-large[b-pyxpjns2dv] {
        font-size: 24px;
    }
}

/* Notes Styles */
.notes-header[b-pyxpjns2dv] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 24px;
}

.notes-header h3[b-pyxpjns2dv] {
    margin: 0;
    font-size: 20px;
    font-weight: 600;
    color: #2d3748;
}

.notes-list[b-pyxpjns2dv] {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.note-item[b-pyxpjns2dv] {
    background: #f8f9fa;
    padding: 20px;
    border-radius: 8px;
    border: 1px solid #e2e8f0;
    transition: all 0.2s;
}

.note-item:hover[b-pyxpjns2dv] {
    border-color: #cbd5e0;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
}

.note-header[b-pyxpjns2dv] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 12px;
}

.note-header strong[b-pyxpjns2dv] {
    font-size: 14px;
    font-weight: 600;
    color: #2d3748;
}

.note-actions[b-pyxpjns2dv] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.note-date[b-pyxpjns2dv] {
    font-size: 13px;
    color: #64748b;
    margin-right: 8px;
}

.note-content[b-pyxpjns2dv] {
    margin: 0;
    font-size: 14px;
    line-height: 1.6;
    color: #4a5568;
    white-space: pre-wrap;
}

.note-updated[b-pyxpjns2dv] {
    display: block;
    margin-top: 8px;
    font-size: 12px;
    color: #94a3b8;
    font-style: italic;
}

.empty-state[b-pyxpjns2dv] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 64px 24px;
    text-align: center;
    color: #666;
}

.empty-state h3[b-pyxpjns2dv] {
    margin: 16px 0 8px 0;
    font-size: 18px;
    font-weight: 600;
    color: #2d3748;
}

.empty-state p[b-pyxpjns2dv] {
    margin: 0 0 24px 0;
    font-size: 14px;
    color: #64748b;
}

/* /Components/Pages/Portal/Students.razor.rz.scp.css */
.student-search[b-k1izxiltgc] {
    width: 250px;
}

.group-filter[b-k1izxiltgc] {
    min-width: 160px;
}

.status-filter[b-k1izxiltgc] {
    min-width: 120px;
}

/* Table */
.students-table-container[b-k1izxiltgc] {
    background: white;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    overflow: hidden;
}



/* Student Column */
.col-student[b-k1izxiltgc] {
    display: flex;
    align-items: center;
}

.student-info[b-k1izxiltgc] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.student-name[b-k1izxiltgc] {
    font-weight: 600;
    color: #1a1a1a;
    text-decoration: none;
    transition: color 0.15s;
}

.student-name:hover[b-k1izxiltgc] {
    color: #af212f;
}

.student-email[b-k1izxiltgc] {
    font-size: 13px;
    color: #666;
}

/* Group Column */
.col-group[b-k1izxiltgc] {
    color: #1a1a1a;
}

.group-link[b-k1izxiltgc] {
    color: #1a1a1a;
    text-decoration: none;
    transition: color 0.15s;
}

.group-link:hover[b-k1izxiltgc] {
    color: #af212f;
}

.no-group[b-k1izxiltgc] {
    color: #999;
    font-style: italic;
}

/* Status Column */
.col-status[b-k1izxiltgc] {
    display: flex;
    align-items: center;
}

/* Status Badges */
.status-badge[b-k1izxiltgc] {
    padding: 4px 12px;
    border-radius: 16px;
    font-size: 12px;
    font-weight: 500;
}

.status-active[b-k1izxiltgc] {
    background: #dcfce7;
    color: #16a34a;
}

.status-pending[b-k1izxiltgc] {
    background: #fef3c7;
    color: #d97706;
}

.status-inactive[b-k1izxiltgc] {
    background: #f3f4f6;
    color: #6b7280;
}

.status-default[b-k1izxiltgc] {
    background: #f3f4f6;
    color: #6b7280;
}

/* Answer Rate Column */
.col-answer-rate[b-k1izxiltgc] {
    display: flex;
    align-items: center;
}

.rate-display[b-k1izxiltgc] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.progress-bar-container[b-k1izxiltgc] {
    width: 80px;
    height: 6px;
    background: #e5e5e5;
    border-radius: 3px;
    overflow: hidden;
}

.progress-bar[b-k1izxiltgc] {
    height: 100%;
    background: #1a1a1a;
    border-radius: 3px;
    transition: width 0.3s;
}

.rate-value[b-k1izxiltgc] {
    font-size: 14px;
    color: #666;
    min-width: 40px;
}

/* Correct Rate Column */
.col-correct[b-k1izxiltgc] {
    font-weight: 600;
    font-size: 14px;
}

.rate-high[b-k1izxiltgc] {
    color: #16a34a;
}

.rate-medium[b-k1izxiltgc] {
    color: #d97706;
}

.rate-low[b-k1izxiltgc] {
    color: #dc2626;
}

/* Activity Column */
.col-activity[b-k1izxiltgc] {
    display: flex;
    align-items: center;
    gap: 6px;
    color: #666;
    font-size: 14px;
}

/* Actions Column */
.col-actions[b-k1izxiltgc] {
    display: flex;
    justify-content: flex-end;
}

/* Loading & Empty States */
.loading-container[b-k1izxiltgc] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 400px;
    gap: 16px;
    color: #666;
    background: white;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}

.empty-state[b-k1izxiltgc] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 64px 24px;
    text-align: center;
    color: #666;
}

.empty-state h3[b-k1izxiltgc] {
    margin: 16px 0 8px 0;
    font-size: 18px;
    font-weight: 600;
    color: #1a1a1a;
}

.empty-state p[b-k1izxiltgc] {
    margin: 0 0 24px 0;
    font-size: 14px;
}

/* Dialog Overlay */
.dialog-overlay[b-k1izxiltgc] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
    padding: 24px;
}

/* Create Student Dialog */
.create-student-dialog[b-k1izxiltgc] {
    background: white;
    border-radius: 12px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.2);
    width: 100%;
    max-width: 480px;
    max-height: 90vh;
    overflow-y: auto;
}

.dialog-header[b-k1izxiltgc] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 24px 24px 0 24px;
}

.dialog-title h2[b-k1izxiltgc] {
    margin: 0;
    font-size: 20px;
    font-weight: 600;
    color: #1a1a1a;
}

.dialog-subtitle[b-k1izxiltgc] {
    margin: 4px 0 0 0;
    font-size: 14px;
    color: #666;
}

.close-button[b-k1izxiltgc] {
    background: none;
    border: none;
    padding: 4px;
    cursor: pointer;
    color: #666;
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.close-button:hover[b-k1izxiltgc] {
    background: #f5f5f5;
    color: #1a1a1a;
}

.dialog-body[b-k1izxiltgc] {
    padding: 24px;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.form-group[b-k1izxiltgc] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}



.form-input[b-k1izxiltgc] {
    width: 100%;
}

/* Toggle Group */
.toggle-group[b-k1izxiltgc] {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    padding: 16px;
    background: #f9fafb;
    border-radius: 8px;
    border: 1px solid #e5e7eb;
}

.toggle-label[b-k1izxiltgc] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.toggle-label .form-label[b-k1izxiltgc] {
    margin: 0;
}

.toggle-description[b-k1izxiltgc] {
    font-size: 13px;
    color: #666;
}

.dialog-footer[b-k1izxiltgc] {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    padding: 16px 24px 24px 24px;
    border-top: 1px solid #eee;
}

/* Responsive */
@media (max-width: 1200px) {
    .table-header[b-k1izxiltgc],
    .table-row[b-k1izxiltgc] {
        grid-template-columns: 2fr 1.5fr 1fr 1fr 60px;
    }

    .col-answer-rate[b-k1izxiltgc],
    .col-activity[b-k1izxiltgc] {
        display: none;
    }
}

@media (max-width: 768px) {
    .page-header[b-k1izxiltgc] {
        flex-direction: column;
        gap: 16px;
    }

    .toolbar[b-k1izxiltgc] {
        flex-direction: column;
        gap: 16px;
        align-items: stretch;
    }

    .toolbar-left[b-k1izxiltgc] {
        flex-direction: column;
    }

    .toolbar-right[b-k1izxiltgc] {
        justify-content: flex-end;
    }

    .student-search[b-k1izxiltgc] {
        width: 100%;
    }

    .table-header[b-k1izxiltgc],
    .table-row[b-k1izxiltgc] {
        grid-template-columns: 2fr 1fr 60px;
    }

    .col-group[b-k1izxiltgc],
    .col-correct[b-k1izxiltgc] {
        display: none;
    }

    .create-student-dialog[b-k1izxiltgc] {
        max-width: 100%;
        margin: 16px;
    }

    .dialog-overlay[b-k1izxiltgc] {
        padding: 16px;
    }
}
/* /Components/Shared/FullScreenLoader.razor.rz.scp.css */
.fullscreen-loader-overlay[b-izvg196xxc] {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background-image: url('/background1.jpg');
    background-size: cover;
    background-position: center;
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center;
}
.fullscreen-loader-centerbox[b-izvg196xxc] {
    background: #fff;
    border-radius: 16px;
    box-shadow: 0 4px 32px rgba(0,0,0,0.15);
    padding: 2rem 3rem;
    display: flex;
    flex-direction: column;
    align-items: center;
}
.fullscreen-loader-spinner[b-izvg196xxc] {
    display: flex;
    flex-direction: column;
    align-items: center;
}
.spinner[b-izvg196xxc] {
    animation: rotate-b-izvg196xxc 1s linear infinite;
    width: 60px;
    height: 60px;
}
@keyframes rotate-b-izvg196xxc {
    100% {
        transform: rotate(360deg);
    }
}
.path[b-izvg196xxc] {
    stroke: #af212f;
    stroke-linecap: round;
    animation: dash-b-izvg196xxc 1.5s ease-in-out infinite;
}
@keyframes dash-b-izvg196xxc {
    0% {
        stroke-dasharray: 1, 150;
        stroke-dashoffset: 0;
    }
    50% {
        stroke-dasharray: 90, 150;
        stroke-dashoffset: -35;
    }
    100% {
        stroke-dasharray: 90, 150;
        stroke-dashoffset: -124;
    }
}
.fullscreen-loader-text[b-izvg196xxc] {
    margin-top: 1rem;
    font-size: 1.2rem;
    color: #af212f;
    font-weight: 500;
}
