.admin-module__r4bRMW__page{flex-direction:column;gap:2rem;padding:1rem 0 3rem;display:flex}.admin-module__r4bRMW__pageHeader{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.admin-module__r4bRMW__pageHeader h1{font-size:1.75rem}.admin-module__r4bRMW__pageLinks{flex-wrap:wrap;gap:.75rem;display:flex}.admin-module__r4bRMW__pageLinks a{color:var(--purple-highlight);font-weight:600}.admin-module__r4bRMW__pageLinks a:hover{text-decoration:underline}.admin-module__r4bRMW__section{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-elevated);flex-direction:column;gap:1rem;padding:1.25rem;display:flex}.admin-module__r4bRMW__sectionTitle{color:var(--foreground);font-size:1.15rem;font-weight:600}.admin-module__r4bRMW__sectionSubtitle{color:var(--text-secondary);font-size:.9rem}.admin-module__r4bRMW__statRow{flex-wrap:wrap;gap:1rem;display:flex}.admin-module__r4bRMW__statTile{border-radius:var(--radius-md);border:1px solid var(--border);background:var(--background);min-width:140px;padding:.85rem 1.1rem}.admin-module__r4bRMW__statNumber{color:var(--foreground);font-size:1.75rem;font-weight:700}.admin-module__r4bRMW__statLabel{color:var(--text-secondary);font-size:.85rem}.admin-module__r4bRMW__tableWrap{overflow-x:auto}.admin-module__r4bRMW__table{border-collapse:collapse;width:100%;font-size:.9rem}.admin-module__r4bRMW__table th{text-align:left;color:var(--text-secondary);border-bottom:1px solid var(--border);white-space:nowrap;padding:.65rem .6rem;font-weight:600}.admin-module__r4bRMW__table td{border-bottom:1px solid var(--border);vertical-align:top;color:var(--foreground);padding:.65rem .6rem}.admin-module__r4bRMW__table tr:last-child td{border-bottom:none}.admin-module__r4bRMW__table tbody tr{transition:background var(--transition)}.admin-module__r4bRMW__table tbody tr:hover{background:var(--surface-hover)}.admin-module__r4bRMW__empty{color:var(--text-secondary);padding:.5rem 0;font-size:.9rem}.admin-module__r4bRMW__badge{border-radius:var(--radius-pill);white-space:nowrap;align-items:center;gap:.35rem;padding:.2rem .6rem;font-size:.75rem;font-weight:600;display:inline-flex}.admin-module__r4bRMW__badgeNormal,.admin-module__r4bRMW__badgeApproved{background:color-mix(in srgb, var(--success) 18%, transparent);color:var(--success)}.admin-module__r4bRMW__badgeReview{background:color-mix(in srgb, var(--warning) 20%, transparent);color:var(--warning)}.admin-module__r4bRMW__badgeCorrected{background:color-mix(in srgb, var(--info) 18%, transparent);color:var(--info)}.admin-module__r4bRMW__badgeInactive{background:var(--surface-hover);color:var(--inactive)}.admin-module__r4bRMW__badgeDanger{background:color-mix(in srgb, var(--danger) 18%, transparent);color:var(--danger)}.admin-module__r4bRMW__form{flex-direction:column;gap:.85rem;display:flex}.admin-module__r4bRMW__formGrid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.85rem;display:grid}.admin-module__r4bRMW__field{flex-direction:column;gap:.3rem;display:flex}.admin-module__r4bRMW__field label{color:var(--text-secondary);font-size:.8rem;font-weight:600}.admin-module__r4bRMW__field input,.admin-module__r4bRMW__field select,.admin-module__r4bRMW__field textarea{border-radius:var(--radius-md);border:1px solid var(--border);background:var(--background);min-height:44px;color:var(--foreground);transition:border-color var(--transition);padding:.6rem .75rem;font-family:inherit;font-size:.95rem}.admin-module__r4bRMW__field input::placeholder,.admin-module__r4bRMW__field textarea::placeholder{color:var(--text-muted)}.admin-module__r4bRMW__field input:focus,.admin-module__r4bRMW__field select:focus,.admin-module__r4bRMW__field textarea:focus{border-color:var(--purple-highlight);outline:none}.admin-module__r4bRMW__actions{flex-wrap:wrap;gap:.5rem;display:flex}.admin-module__r4bRMW__button{border-radius:var(--radius-md);border:1px solid var(--border);background:var(--surface-elevated);min-height:44px;color:var(--foreground);cursor:pointer;transition:background var(--transition), border-color var(--transition);padding:.55rem 1.1rem;font-family:inherit;font-size:.9rem;font-weight:500}.admin-module__r4bRMW__button:hover{background:var(--surface-hover)}.admin-module__r4bRMW__buttonPrimary{background:var(--purple);color:var(--accent-contrast);border-color:var(--purple)}.admin-module__r4bRMW__buttonPrimary:hover{background:var(--purple-highlight);border-color:var(--purple-highlight)}.admin-module__r4bRMW__buttonGhost{color:var(--text-secondary);background:0 0;border-color:#0000}.admin-module__r4bRMW__buttonGhost:hover{background:var(--surface-hover);color:var(--foreground)}.admin-module__r4bRMW__buttonDestructive{color:var(--danger);border-color:color-mix(in srgb, var(--danger) 45%, var(--border));background:0 0}.admin-module__r4bRMW__buttonDestructive:hover{background:color-mix(in srgb, var(--danger) 14%, transparent)}.admin-module__r4bRMW__buttonSmall{min-height:36px;padding:.35rem .75rem;font-size:.8rem}.admin-module__r4bRMW__inlineForm{display:inline-block}.admin-module__r4bRMW__rowActions{flex-wrap:wrap;gap:.4rem;display:flex}.admin-module__r4bRMW__subNav{border-bottom:1px solid var(--border);gap:.25rem;margin-bottom:1.5rem;display:flex}.admin-module__r4bRMW__subNavLink{color:var(--text-secondary);transition:color var(--transition), border-color var(--transition);border-bottom:2px solid #0000;margin-bottom:-1px;padding:.6rem .9rem;font-size:.9rem;font-weight:500}.admin-module__r4bRMW__subNavLink:hover{color:var(--foreground)}.admin-module__r4bRMW__subNavLinkActive{color:var(--purple-highlight);border-bottom-color:var(--purple)}.admin-module__r4bRMW__permissionNotice{border-radius:var(--radius-md);border:1px solid var(--border);border-left:3px solid var(--info);background:var(--surface-secondary);color:var(--text-secondary);padding:.65rem .9rem;font-size:.85rem}.admin-module__r4bRMW__permissionNotice code{font-family:var(--font-geist-mono,monospace);font-size:.85em}.admin-module__r4bRMW__summaryCards{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;display:grid}.admin-module__r4bRMW__summaryCard{border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--surface-elevated);text-align:center;padding:1.1rem 1.25rem}.admin-module__r4bRMW__summaryCardNumber{color:var(--foreground);font-size:2.25rem;font-weight:700;line-height:1.1}.admin-module__r4bRMW__summaryCardLabel{color:var(--text-secondary);margin-top:.35rem;font-size:.85rem}.admin-module__r4bRMW__reviewCard{border-color:color-mix(in srgb, var(--warning) 40%, var(--border))}
.MonthlyHoursChart-module__VShNla__wrap{--series-physical:#3987e5;--series-remote:#d95926;--chart-text-secondary:#c3c2b7;--chart-muted:#898781;--chart-gridline:#34373c;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.MonthlyHoursChart-module__VShNla__legend{color:var(--chart-text-secondary);gap:1.25rem;margin-bottom:.5rem;font-size:.8rem;display:flex}.MonthlyHoursChart-module__VShNla__legendItem{align-items:center;gap:.4rem;display:flex}.MonthlyHoursChart-module__VShNla__legendSwatch{border-radius:2px;width:.7rem;height:.7rem}.MonthlyHoursChart-module__VShNla__svgWrap{width:100%;overflow-x:auto}.MonthlyHoursChart-module__VShNla__axisLabel{fill:var(--chart-muted);font-size:9px}.MonthlyHoursChart-module__VShNla__monthLabel{fill:var(--chart-text-secondary);font-size:9px}.MonthlyHoursChart-module__VShNla__gridline{stroke:var(--chart-gridline);stroke-width:1px}
.RollCallBoard-module__Oll-1G__header{z-index:1;background:var(--background);border-bottom:1px solid var(--border);flex-direction:column;gap:.75rem;padding-bottom:.75rem;display:flex;position:sticky;top:0}.RollCallBoard-module__Oll-1G__titles h1{font-size:1.4rem}.RollCallBoard-module__Oll-1G__titles p{color:var(--muted);font-size:.95rem}.RollCallBoard-module__Oll-1G__stats{flex-wrap:wrap;gap:.75rem;display:flex}.RollCallBoard-module__Oll-1G__stat{border:1px solid var(--border);background:var(--card-background);text-align:center;border-radius:.6rem;flex:1;min-width:90px;padding:.6rem .8rem}.RollCallBoard-module__Oll-1G__statNumber{font-size:1.5rem;font-weight:700}.RollCallBoard-module__Oll-1G__statLabel{color:var(--muted);font-size:.75rem}.RollCallBoard-module__Oll-1G__controls{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.RollCallBoard-module__Oll-1G__controls input[type=search]{border:1px solid var(--border);background:var(--background);min-width:160px;color:var(--foreground);border-radius:.5rem;flex:1;padding:.55rem .75rem;font-size:.95rem}.RollCallBoard-module__Oll-1G__toggleButton{border:1px solid var(--border);background:var(--background);color:var(--foreground);cursor:pointer;border-radius:.5rem;padding:.55rem .9rem;font-size:.85rem;font-weight:600}.RollCallBoard-module__Oll-1G__toggleButtonActive{background:var(--accent);color:var(--accent-contrast);border-color:var(--accent)}.RollCallBoard-module__Oll-1G__list{flex-direction:column;gap:.6rem;padding:.75rem 0;display:flex}.RollCallBoard-module__Oll-1G__row{border:1px solid var(--border);background:var(--card-background);border-radius:.75rem;flex-direction:column;gap:.5rem;padding:.75rem .9rem;display:flex}.RollCallBoard-module__Oll-1G__rowTop{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.RollCallBoard-module__Oll-1G__rowName{font-weight:600}.RollCallBoard-module__Oll-1G__rowType{color:var(--muted);font-size:.8rem}.RollCallBoard-module__Oll-1G__statusButtons{flex-wrap:wrap;gap:.4rem;display:flex}.RollCallBoard-module__Oll-1G__statusButton{border:1px solid var(--border);background:var(--background);color:var(--foreground);cursor:pointer;border-radius:.5rem;min-height:44px;padding:.55rem .85rem;font-size:.85rem;font-weight:600}.RollCallBoard-module__Oll-1G__statusButton:disabled{opacity:.5;cursor:default}.RollCallBoard-module__Oll-1G__statusButtonActivePresent{background:color-mix(in srgb, var(--success) 20%, transparent);border-color:var(--success);color:var(--success)}.RollCallBoard-module__Oll-1G__statusButtonActiveAbsent{background:color-mix(in srgb, var(--danger) 20%, transparent);border-color:var(--danger);color:var(--danger)}.RollCallBoard-module__Oll-1G__statusButtonActiveLate{background:color-mix(in srgb, var(--warning) 20%, transparent);border-color:var(--warning);color:var(--warning)}.RollCallBoard-module__Oll-1G__statusButtonActiveExcused{background:color-mix(in srgb, var(--info) 20%, transparent);border-color:var(--info);color:var(--info)}.RollCallBoard-module__Oll-1G__note{color:var(--muted);font-size:.85rem;font-style:italic}.RollCallBoard-module__Oll-1G__markedBy{color:var(--muted);font-size:.75rem}
