@import '_content/Shared/Shared.nynm01iwkv.bundle.scp.css';

/* /Components/TdSidebar.razor.rz.scp.css */
.td-sidebar[b-ygxu5bv3v3] {
    position: fixed;
    width: 16rem;
    height: 100vh;
    background: var(--color-surface-container-low);
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.td-sidebar__brand[b-ygxu5bv3v3] {
    padding: 1.5rem 1.25rem 1rem;
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.td-sidebar__portal[b-ygxu5bv3v3] {
    font-family: var(--font-serif);
    font-style: italic;
    font-size: 1.125rem;
    font-weight: 600;
    color: var(--color-primary);
}

.td-sidebar__mgmt[b-ygxu5bv3v3] {
    font-family: var(--font-sans);
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--color-on-surface-variant);
}

.td-sidebar__nav[b-ygxu5bv3v3] {
    display: flex;
    flex-direction: column;
    padding: 0.5rem 0.75rem;
    flex: 1;
    gap: 0.25rem;
}

[b-ygxu5bv3v3] .td-sidebar__link {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem 0.875rem;
    border-radius: 6px;
    font-family: var(--font-sans);
    font-size: 0.9375rem;
    font-weight: 500;
    color: var(--color-on-surface-variant);
    text-decoration: none;
    transition: background 0.1s, color 0.1s;
}

[b-ygxu5bv3v3] .td-sidebar__link:hover {
    background: var(--color-surface-container);
    color: var(--color-on-surface);
}

[b-ygxu5bv3v3] .td-sidebar__link.active {
    background: var(--color-primary-fixed);
    color: var(--color-primary);
}

[b-ygxu5bv3v3] .td-sidebar__link .material-symbols-outlined { font-size: 1.25rem; }

.td-sidebar__footer-actions[b-ygxu5bv3v3] {
    display: flex;
    flex-direction: column;
    padding: 0.5rem 0.75rem;
    gap: 0.125rem;
}

.td-sidebar__footer-actions form[b-ygxu5bv3v3] { display: contents; }

.td-sidebar__action-link[b-ygxu5bv3v3] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.625rem 0.875rem;
    border-radius: 6px;
    font-family: var(--font-sans);
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--color-on-surface-variant);
    text-decoration: none;
    transition: background 0.1s;
    appearance: none;
    background: none;
    border: none;
    cursor: pointer;
    width: 100%;
    text-align: left;
}

.td-sidebar__action-link:hover[b-ygxu5bv3v3] { background: var(--color-surface-container); }

.td-sidebar__action-link .material-symbols-outlined[b-ygxu5bv3v3] { font-size: 1.125rem; }

.td-sidebar__user[b-ygxu5bv3v3] {
    display: flex;
    align-items: center;
    gap: 0.875rem;
    padding: 1rem 1.25rem;
    background: var(--color-surface-container);
}

.td-sidebar__user-avatar[b-ygxu5bv3v3] {
    width: 2rem;
    height: 2rem;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--color-primary), var(--color-primary-container));
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: var(--font-serif);
    font-size: 0.875rem;
    font-weight: 600;
    flex-shrink: 0;
}

.td-sidebar__user-info[b-ygxu5bv3v3] {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.td-sidebar__user-name[b-ygxu5bv3v3] {
    font-family: var(--font-sans);
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--color-on-surface);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.td-sidebar__user-email[b-ygxu5bv3v3] {
    font-family: var(--font-sans);
    font-size: 0.75rem;
    color: var(--color-on-surface-variant);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
/* /Components/TdStudentPanel.razor.rz.scp.css */
.td-student-panel[b-7bka9ei6gv] {
    width: 20rem;
    flex-shrink: 0;
    background: var(--color-surface-container-lowest);
    border-radius: 8px;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    animation: td-panel-in-b-7bka9ei6gv 0.2s ease-out;
}

@keyframes td-panel-in-b-7bka9ei6gv {
    from { transform: translateX(1rem); opacity: 0; }
    to   { transform: none; opacity: 1; }
}

.td-panel__header[b-7bka9ei6gv] {
    background: var(--color-surface-container-low);
    padding: 1.25rem;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

.td-panel__identity[b-7bka9ei6gv] {
    display: flex;
    gap: 0.875rem;
    align-items: flex-start;
}

.td-panel__avatar[b-7bka9ei6gv] {
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--color-primary), var(--color-primary-container));
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: var(--font-serif);
    font-size: 1rem;
    font-weight: 600;
    flex-shrink: 0;
}

.td-panel__info[b-7bka9ei6gv] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.td-panel__name[b-7bka9ei6gv] {
    font-family: var(--font-sans);
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--color-on-surface);
}

.td-panel__location[b-7bka9ei6gv] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    font-family: var(--font-sans);
    font-size: 0.8125rem;
    color: var(--color-on-surface-variant);
}

.td-panel__location .material-symbols-outlined[b-7bka9ei6gv] { font-size: 0.875rem; }

.td-panel__online[b-7bka9ei6gv] {
    font-family: var(--font-sans);
    font-size: 0.8125rem;
    font-weight: 600;
}

.td-panel__online--on[b-7bka9ei6gv]  { color: #22c55e; }
.td-panel__online--off[b-7bka9ei6gv] { color: var(--color-on-surface-variant); }

.td-panel__close[b-7bka9ei6gv] {
    appearance: none;
    background: none;
    border: none;
    cursor: pointer;
    color: var(--color-on-surface-variant);
    padding: 0;
    display: flex;
}

.td-panel__section[b-7bka9ei6gv] { padding: 1.25rem; }
.td-panel__section + .td-panel__section[b-7bka9ei6gv] { padding-top: 0; }

.td-panel__section-title[b-7bka9ei6gv] {
    font-family: var(--font-sans);
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--color-on-surface-variant);
    margin: 0 0 0.875rem;
}

.td-panel__course[b-7bka9ei6gv] { margin-bottom: 0.875rem; }

.td-panel__course-header[b-7bka9ei6gv] {
    display: flex;
    justify-content: space-between;
    margin-bottom: 0.375rem;
}

.td-panel__course-title[b-7bka9ei6gv] {
    font-family: var(--font-sans);
    font-size: 0.875rem;
    color: var(--color-on-surface);
}

.td-panel__course-pct[b-7bka9ei6gv] {
    font-family: var(--font-sans);
    font-size: 0.8125rem;
    color: var(--color-on-surface-variant);
}

.td-progress[b-7bka9ei6gv] {
    height: 6px;
    background: var(--color-surface-container-high);
    border-radius: 3px;
    overflow: hidden;
}

.td-progress--full[b-7bka9ei6gv] { width: 100%; }

.td-progress__bar[b-7bka9ei6gv] {
    height: 100%;
    background: var(--color-primary);
    border-radius: 3px;
}

.td-panel__activity[b-7bka9ei6gv] {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 0.625rem;
}

.td-panel__activity li[b-7bka9ei6gv] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-family: var(--font-sans);
    font-size: 0.875rem;
    color: var(--color-on-surface);
}

.td-panel__activity .material-symbols-outlined[b-7bka9ei6gv] {
    font-size: 0.875rem;
    color: var(--color-primary);
}

.td-panel__footer[b-7bka9ei6gv] {
    background: var(--color-surface-container-low);
    padding: 1rem 1.25rem;
    margin-top: auto;
}

.td-panel__message-btn[b-7bka9ei6gv] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    width: 100%;
    padding: 0.5rem 1.25rem;
    border-radius: 4px;
    font-family: var(--font-sans);
    font-size: 0.875rem;
    font-weight: 600;
    background: linear-gradient(135deg, var(--color-primary), var(--color-primary-container));
    color: #fff;
    border: none;
    cursor: pointer;
    transition: opacity 0.15s;
}

.td-panel__message-btn:hover[b-7bka9ei6gv] { opacity: 0.9; }
/* /Layout/MainLayout.razor.rz.scp.css */
.td-layout[b-0xpizy37yd] {
    margin-left: 16rem;
    min-height: 100vh;
    background: var(--color-background);
}
/* /Pages/Index.razor.rz.scp.css */
.td-courses[b-ntizu4fyzi] {
    padding: 2rem;
    max-width: 1200px;
}

.td-courses__header[b-ntizu4fyzi] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    margin-bottom: 2rem;
    gap: 1rem;
}

.td-courses__title[b-ntizu4fyzi] {
    font-family: var(--font-serif);
    font-size: 1.75rem;
    font-weight: 400;
    color: var(--color-primary);
    margin: 0 0 0.25rem;
}

.td-courses__subtitle[b-ntizu4fyzi] {
    font-family: var(--font-sans);
    font-size: 0.9375rem;
    color: var(--color-on-surface-variant);
    margin: 0;
}

.td-courses__filters[b-ntizu4fyzi] {
    display: flex;
    gap: 0.75rem;
}

.td-select[b-ntizu4fyzi] {
    font-family: var(--font-sans);
    font-size: 0.875rem;
    padding: 0.5rem 0.75rem;
    border-radius: 4px;
    border: 1px solid var(--color-outline-variant);
    background: var(--color-surface-container-low);
    color: var(--color-on-surface);
    cursor: pointer;
}

.td-courses__grid[b-ntizu4fyzi] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 1.25rem;
    margin-bottom: 2rem;
}

.td-course-card[b-ntizu4fyzi] {
    background: var(--color-surface-container-lowest);
    border-radius: 8px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

.td-course-card__thumbnail[b-ntizu4fyzi] { height: 120px; }

.td-course-card__body[b-ntizu4fyzi] {
    padding: 1rem 1.25rem 0.75rem;
    flex: 1;
}

.td-course-card__badge[b-ntizu4fyzi] {
    display: inline-block;
    font-family: var(--font-sans);
    font-size: 0.75rem;
    font-weight: 600;
    padding: 0.25rem 0.625rem;
    border-radius: 4px;
    margin-bottom: 0.625rem;
}

.td-course-card__badge--published[b-ntizu4fyzi] {
    background: var(--color-primary-fixed);
    color: var(--color-primary);
}

.td-course-card__badge--draft[b-ntizu4fyzi] {
    background: var(--color-surface-container-highest);
    color: var(--color-on-surface-variant);
}

.td-course-card__title[b-ntizu4fyzi] {
    font-family: var(--font-sans);
    font-size: 1rem;
    font-weight: 600;
    color: var(--color-on-surface);
    margin: 0 0 0.75rem;
}

.td-course-card__meta[b-ntizu4fyzi] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    font-family: var(--font-sans);
    font-size: 0.8125rem;
    color: var(--color-on-surface-variant);
}

.td-course-card__meta span[b-ntizu4fyzi] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
}

.td-course-card__meta .material-symbols-outlined[b-ntizu4fyzi] { font-size: 1rem; }

.td-course-card__footer[b-ntizu4fyzi] { padding: 0.75rem 1.25rem 1rem; }

.td-btn[b-ntizu4fyzi] {
    font-family: var(--font-sans);
    font-size: 0.875rem;
    font-weight: 600;
    padding: 0.5rem 1.25rem;
    border-radius: 4px;
    cursor: pointer;
    transition: background 0.15s, opacity 0.15s;
    border: none;
}

.td-btn--outline[b-ntizu4fyzi] {
    background: none;
    border: 1px solid var(--color-outline-variant);
    color: var(--color-primary);
    width: 100%;
}

.td-btn--outline:hover[b-ntizu4fyzi] { background: var(--color-primary-fixed); }

.td-btn--filled[b-ntizu4fyzi] {
    background: linear-gradient(135deg, var(--color-primary), var(--color-primary-container));
    color: #fff;
}

.td-btn--filled:hover[b-ntizu4fyzi] { opacity: 0.9; }

.td-course-card--create[b-ntizu4fyzi] {
    background: var(--color-surface-container-low);
    border: 2px dashed var(--color-outline-variant);
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 2rem 1.5rem;
    gap: 0.75rem;
}

.td-course-card__create-icon .material-symbols-outlined[b-ntizu4fyzi] {
    font-size: 2.5rem;
    color: var(--color-primary);
}

.td-course-card__create-title[b-ntizu4fyzi] {
    font-family: var(--font-serif);
    font-size: 1.125rem;
    font-weight: 400;
    color: var(--color-primary);
    margin: 0;
}

.td-course-card__create-body[b-ntizu4fyzi] {
    font-family: var(--font-sans);
    font-size: 0.875rem;
    color: var(--color-on-surface-variant);
    margin: 0;
}

.td-insight-banner[b-ntizu4fyzi] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1.25rem 1.5rem;
    background: var(--color-primary-fixed);
    border-radius: 8px;
    font-family: var(--font-sans);
    font-size: 0.9375rem;
    color: var(--color-primary);
}

.td-insight-banner .material-symbols-outlined[b-ntizu4fyzi] {
    font-size: 1.5rem;
    flex-shrink: 0;
}

.td-insight-banner p[b-ntizu4fyzi] { margin: 0; line-height: 1.5; }
/* /Pages/Students.razor.rz.scp.css */
.td-students[b-7aey8i1qa3] { padding: 2rem; }

.td-students__header[b-7aey8i1qa3] { margin-bottom: 1.5rem; }

.td-students__title[b-7aey8i1qa3] {
    font-family: var(--font-serif);
    font-size: 1.75rem;
    font-weight: 400;
    color: var(--color-primary);
    margin: 0 0 0.25rem;
}

.td-students__subtitle[b-7aey8i1qa3] {
    font-family: var(--font-sans);
    font-size: 0.9375rem;
    color: var(--color-on-surface-variant);
    margin: 0;
}

.td-students__stats[b-7aey8i1qa3] {
    display: flex;
    gap: 1.25rem;
    margin-bottom: 1.5rem;
}

.td-stat-card[b-7aey8i1qa3] {
    background: var(--color-surface-container-low);
    border-radius: 8px;
    padding: 1.25rem;
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    min-width: 180px;
}

.td-stat-card__label[b-7aey8i1qa3] {
    font-family: var(--font-sans);
    font-size: 0.8125rem;
    color: var(--color-on-surface-variant);
}

.td-stat-card__value[b-7aey8i1qa3] {
    font-family: var(--font-serif);
    font-size: 2rem;
    color: var(--color-primary);
    line-height: 1;
}

.td-stat-card__change[b-7aey8i1qa3] {
    font-family: var(--font-sans);
    font-size: 0.8125rem;
}

.td-stat-card__change--up[b-7aey8i1qa3] { color: #22c55e; }

.td-students__body[b-7aey8i1qa3] {
    display: flex;
    gap: 1.25rem;
}

.td-students__table-wrap[b-7aey8i1qa3] {
    flex: 1;
    overflow-x: auto;
}

.td-students__body--panel-open .td-students__table-wrap[b-7aey8i1qa3] { min-width: 0; }

.td-students__table[b-7aey8i1qa3] {
    width: 100%;
    border-collapse: collapse;
    font-family: var(--font-sans);
    font-size: 0.875rem;
}

.td-students__table th[b-7aey8i1qa3] {
    text-align: left;
    padding: 0.75rem 1rem;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--color-on-surface-variant);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    background: var(--color-surface-container-low);
}

.td-students__table td[b-7aey8i1qa3] {
    padding: 0.875rem 1rem;
    color: var(--color-on-surface);
    border-bottom: 1px solid var(--color-surface-container-high);
}

.td-students__table tbody tr[b-7aey8i1qa3] {
    cursor: pointer;
    transition: background 0.1s;
}

.td-students__table tbody tr:hover td[b-7aey8i1qa3] { background: var(--color-surface-container-low); }

.td-students__row--active td[b-7aey8i1qa3] { background: var(--color-primary-fixed); }

.td-student-avatar[b-7aey8i1qa3] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.td-student-avatar__initial[b-7aey8i1qa3] {
    width: 2rem;
    height: 2rem;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--color-primary), var(--color-primary-container));
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: var(--font-serif);
    font-size: 0.875rem;
    font-weight: 600;
    flex-shrink: 0;
}

.td-students__email[b-7aey8i1qa3] { color: var(--color-on-surface-variant); }

.td-progress[b-7aey8i1qa3] {
    height: 6px;
    background: var(--color-surface-container-high);
    border-radius: 3px;
    overflow: hidden;
    width: 120px;
    display: inline-block;
    vertical-align: middle;
    margin-right: 0.5rem;
}

.td-progress__bar[b-7aey8i1qa3] {
    height: 100%;
    background: var(--color-primary);
    border-radius: 3px;
}

.td-progress__label[b-7aey8i1qa3] {
    font-family: var(--font-sans);
    font-size: 0.8125rem;
    color: var(--color-on-surface-variant);
    vertical-align: middle;
}
