/* Secured app typography — loads last so login + authenticated UI match the public site. */

@font-face {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('/fonts/inter-latin-400-normal.woff2') format('woff2');
}

@font-face {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url('/fonts/inter-latin-500-normal.woff2') format('woff2');
}

@font-face {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: url('/fonts/inter-latin-600-normal.woff2') format('woff2');
}

@font-face {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url('/fonts/inter-latin-700-normal.woff2') format('woff2');
}

@font-face {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 800;
    font-display: swap;
    src: url('/fonts/inter-latin-800-normal.woff2') format('woff2');
}

:root {
    --app-font-family: Inter, system-ui, sans-serif;
}

/* Login, centre app (sidebar layout), site admin */
.auth-shell,
.site-admin-shell,
.page {
    font-family: var(--app-font-family);
    font-size: var(--app-text-base);
    line-height: 1.5;
    color: #0f172a;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.auth-shell .auth-shell-panel,
.page .sidebar,
.page main.app-main,
.page main article.content,
.site-admin-shell .site-admin-main {
    font-family: inherit;
    font-size: inherit;
}

.auth-shell .btn,
.auth-shell .form-control,
.auth-shell .form-select,
.auth-shell .form-label,
.auth-shell .alert,
.page .btn,
.page .form-control,
.page .form-select,
.page .form-label,
.page .input-group-text,
.page .table,
.page .card,
.page .card-header,
.page .card-body,
.page .modal-content,
.page .modal-title,
.page .dropdown-menu,
.page .nav-link,
.page .top-row,
.page .badge,
.page .alert,
.site-admin-shell .btn,
.site-admin-shell .form-control,
.site-admin-shell .form-select,
.site-admin-shell .form-label,
.site-admin-shell .table,
.site-admin-shell .card,
.site-admin-shell .alert,
.site-admin-shell .site-admin-topbar {
    font-family: inherit;
}

.page main article.content h1,
.page main article.content h2,
.page main article.content h3,
.page main article.content h4,
.page main article.content h5,
.page main article.content h6,
.auth-shell h1,
.auth-shell h2,
.site-admin-shell h1,
.site-admin-shell h2 {
    font-family: inherit;
}

.page main article.content .table thead th,
.page main article.content .table tbody td,
.data-list-frame .table thead th,
.data-list-frame .table tbody td,
.student-list-frame .table thead th,
.student-list-frame .table tbody td {
    font-family: inherit;
    font-size: var(--app-text-sm);
}

.page main article.content .table.table-sm,
.page main article.content .table.table-sm thead th,
.page main article.content .table.table-sm tbody td {
    font-size: var(--app-text-sm);
}

.page .sidebar,
.page .sidebar .nav-link,
.page .sidebar .nav-link-text,
.page .sidebar .nav-group-title,
.page .sidebar .upgrade-alert {
    font-family: inherit;
}

.page .metric-note,
.page .metric-link {
    font-family: inherit;
}

.page .metric-grid--compact .metric-label {
    font-size: var(--app-text-xs);
}

.page .metric-grid--compact .metric-stat-muted {
    font-size: var(--app-text-xs);
}

.page .home-enrollment-badge {
    font-size: var(--app-text-xs);
}

.page main article.content .small,
.page main article.content .form-label.small,
.page main article.content .form-check-label.small {
    font-size: var(--app-text-sm);
}
