/* Roboto is bundled locally. Typography and rounded surfaces apply only to light mode. */
@font-face { font-family: 'Mambo Roboto'; font-style: normal; font-weight: 400; font-display: swap; src: url('fonts/roboto-400.ttf') format('truetype'); }
@font-face { font-family: 'Mambo Roboto'; font-style: normal; font-weight: 500; font-display: swap; src: url('fonts/roboto-500.ttf') format('truetype'); }
@font-face { font-family: 'Mambo Roboto'; font-style: normal; font-weight: 600; font-display: swap; src: url('fonts/roboto-600.ttf') format('truetype'); }
@font-face { font-family: 'Mambo Roboto'; font-style: normal; font-weight: 700; font-display: swap; src: url('fonts/roboto-700.ttf') format('truetype'); }
:root[data-admin-theme="light"] { --border: #cfcfcf; --border-light: #bfbfbf; --border-gold: #d4bd87; }
:root[data-admin-theme="light"] body { font-family: 'Mambo Roboto', Roboto, Helvetica, Arial, sans-serif; }
:root[data-admin-theme="light"] :is(button,input,select,textarea) { font-family: inherit; }
:root[data-admin-theme="light"] :is(h1,h2,h3) { font-weight: 700; letter-spacing: -.25px; }
:root[data-admin-theme="light"] .section-label,
:root[data-admin-theme="light"] :is(#academyClassDialog,#activitySummaryDialog) .section-label {
    display: block; font-size: 12px; font-weight: 500; letter-spacing: .15px;
    line-height: 1.4; text-transform: lowercase; color: #666;
}
:root[data-admin-theme="light"] .section-label::first-letter { text-transform: uppercase; }
:root[data-admin-theme="light"] .overline { font-size: 10px; font-weight: 500; letter-spacing: .6px; }
:root[data-admin-theme="light"] :is(.admin-header h1,.welcome-section h2) { font-weight: 700; letter-spacing: -.5px; }
:root[data-admin-theme="light"] :is(.nav-item,.logout-button,.gold-button,.danger-button,.analytics-button) {
    font-size: 11px; font-weight: 600; letter-spacing: .25px;
}
:root[data-admin-theme="light"] :is(.stat-title,.analytics-kpi > span,.analytics-panel-heading > span,.academy-category-title strong) {
    display: block; font-size: 11px; font-weight: 600; letter-spacing: .15px; line-height: 1.35;
}
:root[data-admin-theme="light"] :is(.stat-card p,.analytics-kpi small,.analytics-panel-heading small) {
    font-size: 11px; letter-spacing: 0; line-height: 1.4;
}
:root[data-admin-theme="light"] .analytics-panel { font-size: 12px; }
:root[data-admin-theme="light"] :is(.form-group label,.academy-filter-field > span,.academy-class-form-grid label > span:first-child,.academy-schedule-field > span) {
    font-size: 11px; font-weight: 500; letter-spacing: .2px;
}
:root[data-admin-theme="light"] :is(.welcome-section,.stat-card,.quick-card,.analytics-section,.attendance-form-card,.class-session-card,.academy-class-card,.workshop-card,.login-panel,.workshop-enrollment-section) {
    border: 1px solid var(--border); border-radius: 10px; box-shadow: 0 2px 6px rgba(32,33,36,.035);
}
:root[data-admin-theme="light"] :is(.analytics-kpi,.analytics-panel,.ledger-attendance-section,.attendance-history-section,.plan-card) {
    border: 1px solid var(--border); border-radius: 8px;
}
:root[data-admin-theme="light"] :is(.welcome-section,.login-panel)::before { display: none; }
:root[data-admin-theme="light"] :is(input,select,textarea,button,.nav-item) { border-radius: 6px; }
:root[data-admin-theme="light"] .nav-item::before { border-radius: 2px; }
:root[data-admin-theme="light"] :is(.admin-dialog,.students-directory-dialog,.workshop-history-dialog),
:root[data-admin-theme="light"] :is(#academyClassDialog,#activitySummaryDialog) { border-radius: 12px; border-color: var(--border-light); }
:root[data-admin-theme="light"] .admin-dialog-card { border-radius: 12px; }
:root[data-admin-theme="light"] .admin-dialog-card::before { display: none; }
:root[data-admin-theme="light"] :is(#academyClassDialog,#activitySummaryDialog) .admin-dialog-card { border-radius: 12px; }
:root[data-admin-theme="light"] :is(#academyClassDialog,#activitySummaryDialog) :is(input,select,textarea,button) { border-radius: 6px; }
:root[data-admin-theme="light"] :is(#academyClassDialog,#activitySummaryDialog) h2 { font-weight: 700; letter-spacing: -.25px; }
:root[data-admin-theme="light"] #academyClassDialog :is(label > span:first-child,.academy-schedule-heading > div > span),
:root[data-admin-theme="light"] #activitySummaryDialog .activity-summary-controls label > span {
    font-size: 11px; font-weight: 500; letter-spacing: .15px;
}
:root[data-admin-theme="light"] #academyClassDialog :is(.academy-schedule-row),
:root[data-admin-theme="light"] #activitySummaryDialog :is(.activity-ranking-row,.activity-summary-empty) {
    border: 1px solid var(--border); border-radius: 8px;
}
:root[data-admin-theme="light"] #activitySummaryDialog :is(.activity-summary-switch,.activity-summary-tabs) button {
    font-size: 11px; font-weight: 600; letter-spacing: .15px;
}
:root[data-admin-theme="light"] #activitySummaryDialog .activity-ranking-main strong { font-size: 13px; font-weight: 600; }
:root[data-admin-theme="light"] #activitySummaryDialog .activity-ranking-main small { font-size: 10px; }
:root[data-admin-theme="light"] #activitySummaryDialog .activity-ranking-value strong { font-weight: 700; }
:root[data-admin-theme="light"] #academyClassDialog :is(.dialog-actions button,#academyAddSchedule) { font-weight: 600; letter-spacing: .25px; }
:root[data-admin-theme="light"] #academyClassDialog #academyAddSchedule { border-radius: 6px; }
:root[data-admin-theme="light"] .mobile-admin-mark { background: #fdf1d5; border-color: var(--border); color: #202124; border-radius: 6px; }
