/* /Layout/CompanySupportDialog.razor.rz.scp.css */
.hm-company-dialog[b-xtr2kdwzpn] { width: min(540px, calc(100vw - 48px)); max-height: calc(100vh - 56px); padding: 0; border: 1px solid #e2eaf3; border-radius: 28px; color: #25364d; background: #fff; box-shadow: 0 26px 90px #1026483d; }
.hm-company-dialog[b-xtr2kdwzpn]::backdrop { background: #13264170; backdrop-filter: blur(4px); }
.hm-company-dialog[open][b-xtr2kdwzpn] { animation: company-dialog-enter-b-xtr2kdwzpn 220ms ease-out; }
.hm-company-dialog-body[b-xtr2kdwzpn] { padding: 26px; }
.hm-company-dialog-header[b-xtr2kdwzpn] { display: flex; align-items: center; gap: 13px; }
.hm-company-dialog-icon[b-xtr2kdwzpn] { width: 54px; height: 54px; border-radius: 18px; display: grid; place-items: center; background: linear-gradient(135deg,#0175c2,#00a3e0); color: white; font-size: 28px; flex-shrink: 0; }
.hm-company-dialog-header h2[b-xtr2kdwzpn] { margin: 0; font-size: 18px; font-weight: 800; color: inherit; }
.hm-company-dialog-header p[b-xtr2kdwzpn] { margin: 6px 0 0; font-size: 12px; color: #7b8a9e; }
.hm-company-dialog-close[b-xtr2kdwzpn] { margin-inline-start: auto; width: 32px; height: 32px; border: 0; border-radius: 10px; background: #f2f5fa; color: #7b8a9e; font-size: 24px; flex-shrink: 0; }
.hm-company-description[b-xtr2kdwzpn] { margin: 23px 0; line-height: 2; font-size: 14px; font-weight: 600; }
.hm-company-contact[b-xtr2kdwzpn] { display: flex; align-items: center; gap: 12px; margin-block: 12px; padding: 14px; border: 1px solid #e8edf5; border-radius: 17px; background: #f8faff; color: #0175c2; text-decoration: none; transition: background 180ms; }
.hm-company-contact:hover[b-xtr2kdwzpn] { background: #edf6ff; color: #0175c2; }
.hm-contact-icon[b-xtr2kdwzpn] { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 13px; background: #0175c20c; font-size: 23px; }
.hm-company-contact > span:nth-child(2)[b-xtr2kdwzpn] { display: flex; flex-direction: column; flex: 1; gap: 4px; }
.hm-company-contact strong[b-xtr2kdwzpn] { font-size: 13px; }.hm-company-contact span[dir][b-xtr2kdwzpn] { text-align: start; align-self: flex-start; font-size: 14px; font-weight: 700; }
.hm-company-contact > i[b-xtr2kdwzpn] { font-size: 19px; }.hm-contact-phone[b-xtr2kdwzpn] { color: #26a69a; background: #f4fbfa; }.hm-contact-phone:hover[b-xtr2kdwzpn] { color: #23978c; background: #eafaF6; }.hm-contact-phone .hm-contact-icon[b-xtr2kdwzpn] { background: #26a69a14; }
.hm-company-dismiss[b-xtr2kdwzpn] { width: 100%; min-height: 47px; margin-top: 12px; border: 0; border-radius: 13px; background: #0175c2; color: white; font-weight: 700; font-size: 14px; }
.hm-company-dismiss:hover[b-xtr2kdwzpn] { background: #066bac; }
.hm-company-dialog button:focus-visible[b-xtr2kdwzpn], .hm-company-dialog a:focus-visible[b-xtr2kdwzpn] { outline: 2px solid #0175c2; outline-offset: 3px; }
@keyframes company-dialog-enter-b-xtr2kdwzpn { from { opacity: 0; transform: translateY(12px) scale(.98); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) { .hm-company-dialog[open][b-xtr2kdwzpn] { animation: none; } }
/* /Layout/ManagerChatTimetable.razor.rz.scp.css */
/* ══════════════════════════════════════════════════════════════
   Manager Chat Timetable (Read-Only Weekly Launcher) Styles
   Scoped specifically to Layout/ManagerChatTimetable.razor
   ══════════════════════════════════════════════════════════════ */

.hm-timetable-container[b-46ry83u9he] {
    max-width: 100%;
    font-family: inherit;
}

/* ──────────────────────────────────────────────────────────────
   Toolbar
   ────────────────────────────────────────────────────────────── */
.hm-tt-toolbar[b-46ry83u9he] {
    background: #FFFFFF;
    border: 1px solid #E2E8F0;
    border-radius: 8px;
    padding: 0.75rem 1rem;
    box-shadow: 0 1px 3px rgba(15, 23, 42, 0.03);
}

.hm-tt-select[b-46ry83u9he] {
    min-height: 42px;
    border-radius: 6px;
    border: 1px solid #CBD5E1;
    font-size: 0.875rem;
    color: #1E293B;
}

.hm-tt-select:focus[b-46ry83u9he] {
    border-color: #0175C2;
    box-shadow: 0 0 0 3px rgba(1, 117, 194, 0.15);
}

.hm-tt-pattern-group .btn[b-46ry83u9he] {
    min-height: 42px;
    font-size: 0.85rem;
    font-weight: 500;
}

.hm-tt-pattern-btn[b-46ry83u9he] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.35rem;
    border-width: 1px;
    font-weight: 600 !important;
}

.hm-tt-pattern-btn i[b-46ry83u9he] {
    font-size: 1rem;
    line-height: 1;
}

.hm-tt-pattern-morning.btn-primary[b-46ry83u9he] {
    background: #FFF0BC;
    border-color: #E3B52F;
    color: #765400;
}

.hm-tt-pattern-morning.btn-outline-primary[b-46ry83u9he] {
    background: #FFFCF1;
    border-color: #E8D9A3;
    color: #8A6B18;
}

.hm-tt-pattern-afternoon.btn-primary[b-46ry83u9he] {
    background: #EAE8FF;
    border-color: #9D91EA;
    color: #4C438E;
}

.hm-tt-pattern-afternoon.btn-outline-primary[b-46ry83u9he] {
    background: #F7F6FF;
    border-color: #D5D0F2;
    color: #5F5798;
}

.hm-tt-pattern-btn:focus-visible[b-46ry83u9he] {
    outline: 2px solid currentColor;
    outline-offset: 2px;
}

/* ──────────────────────────────────────────────────────────────
   Desktop Table Grid
   ────────────────────────────────────────────────────────────── */
.hm-tt-grid-wrapper[b-46ry83u9he] {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    border: 1px solid #E2E8F0;
    border-radius: 8px;
    background: #FFFFFF;
    box-shadow: 0 1px 4px rgba(15, 23, 42, 0.04);
}

.hm-tt-table[b-46ry83u9he] {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    table-layout: fixed;
    min-width: 680px;
}

.hm-tt-table th[b-46ry83u9he],
.hm-tt-table td[b-46ry83u9he] {
    border-bottom: 1px solid #E2E8F0;
    border-left: 1px solid #E2E8F0;
    padding: 0.625rem;
    vertical-align: top;
}

.hm-tt-bell-th[b-46ry83u9he] {
    transition: background-color 0.15s ease, color 0.15s ease;
}

.hm-tt-table th:last-child[b-46ry83u9he],
.hm-tt-table td:last-child[b-46ry83u9he] {
    border-left: none;
}

.hm-tt-table tbody tr:last-child td[b-46ry83u9he] {
    border-bottom: none;
}

.hm-tt-day-th[b-46ry83u9he] {
    width: 110px;
    background: #F8FAFC;
    color: #475569;
    font-size: 0.825rem;
    position: sticky;
    right: 0;
    z-index: 2;
    box-shadow: -2px 0 4px rgba(0, 0, 0, 0.04);
}

.hm-tt-day-td[b-46ry83u9he] {
    width: 110px;
    background: #F8FAFC;
    color: #1E293B;
    font-size: 0.875rem;
    position: sticky;
    right: 0;
    z-index: 2;
    box-shadow: -2px 0 4px rgba(0, 0, 0, 0.04);
    display: table-cell;
    vertical-align: middle !important;
}

.hm-tt-bell-th[b-46ry83u9he] {
    background: #F1F5F9;
    color: #1E293B;
    font-size: 0.825rem;
    text-align: center;
}

.hm-tt-bell-head-1[b-46ry83u9he] { background: #EAF3FF; }
.hm-tt-bell-head-2[b-46ry83u9he] { background: #F3EEFF; }
.hm-tt-bell-head-3[b-46ry83u9he] { background: #EAF8F1; }
.hm-tt-bell-head-4[b-46ry83u9he] { background: #FFF5E5; }

.hm-tt-bell-time-list[b-46ry83u9he] {
    display: flex;
    flex-direction: column;
    gap: 0.1rem;
    margin-top: 0.2rem;
    color: #64748B;
    font-size: 0.7rem;
    font-weight: 500;
    direction: ltr;
}

.hm-tt-bell-time[b-46ry83u9he] {
    white-space: nowrap;
}

.hm-tt-time-sub[b-46ry83u9he] {
    font-size: 0.725rem;
    margin-top: 0.15rem;
}

.hm-tt-cell-td[b-46ry83u9he] {
    background: #FFFFFF;
}

.hm-tt-empty-cell[b-46ry83u9he] {
    color: #CBD5E1;
    text-align: center;
    padding: 1rem 0;
    font-size: 1.1rem;
}

/* ──────────────────────────────────────────────────────────────
   Timetable Segment Button (One Semantic Button)
   ────────────────────────────────────────────────────────────── */
.hm-tt-segments-container[b-46ry83u9he] {
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
}

.hm-tt-segment-btn[b-46ry83u9he] {
    display: flex;
    flex-direction: column;
    width: 100%;
    min-height: 48px;
    padding: 0.5rem 0.65rem;
    border: 1px solid #E2E8F0;
    border-radius: 6px;
    background-color: #F8FAFC;
    text-align: right;
    font-family: inherit;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
    outline: none;
    user-select: none;
}

.hm-tt-segment-btn:hover:not(:disabled)[b-46ry83u9he] {
    filter: saturate(1.08) brightness(0.985);
    border-color: #0175C2;
    box-shadow: 0 1px 4px rgba(1, 117, 194, 0.1);
}

.hm-tt-segment-btn:focus-visible[b-46ry83u9he] {
    outline: 2px solid #0175C2;
    outline-offset: 1px;
    border-color: #0175C2;
}

.hm-tt-segment-btn:disabled[b-46ry83u9he] {
    opacity: 0.6;
    cursor: not-allowed;
    background-color: #F1F5F9;
}

.hm-tt-subject[b-46ry83u9he] {
    font-size: 0.85rem;
    line-height: 1.35;
}

.hm-tt-teacher[b-46ry83u9he] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.75rem;
    line-height: 1.35;
    min-width: 0;
}

.hm-tt-teacher-icon[b-46ry83u9he] {
    color: #64748B;
    font-size: 0.95rem;
    line-height: 1;
    flex-shrink: 0;
}

.hm-tt-unmapped-teacher[b-46ry83u9he],
.hm-tt-mobile-teacher[b-46ry83u9he] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
}

.hm-tt-seg-foot[b-46ry83u9he] {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 0.35rem;
    margin-top: 0.3rem;
    font-size: 0.725rem;
}

.hm-tt-enter-tag[b-46ry83u9he] {
    color: #0175C2;
    font-size: 0.95rem;
    line-height: 1;
    flex-shrink: 0;
}

.hm-tt-bell-tone-1[b-46ry83u9he] { background-color: #F0F6FF; border-color: #CFE0F7; }
.hm-tt-bell-tone-2[b-46ry83u9he] { background-color: #F7F2FF; border-color: #DDD0F5; }
.hm-tt-bell-tone-3[b-46ry83u9he] { background-color: #EFF9F3; border-color: #CBE9D7; }
.hm-tt-bell-tone-4[b-46ry83u9he] { background-color: #FFF8EC; border-color: #F1DDB7; }

.hm-tt-bell-tone-1:hover:not(:disabled)[b-46ry83u9he],
.hm-tt-bell-tone-2:hover:not(:disabled)[b-46ry83u9he],
.hm-tt-bell-tone-3:hover:not(:disabled)[b-46ry83u9he],
.hm-tt-bell-tone-4:hover:not(:disabled)[b-46ry83u9he] {
    filter: saturate(1.08) brightness(0.985);
}

.hm-tt-segment-unmapped[b-46ry83u9he] {
    padding: 0.4rem 0.5rem;
    border: 1px dashed #CBD5E1;
    border-radius: 6px;
    background-color: #F8FAFC;
}

/* ──────────────────────────────────────────────────────────────
   Mobile View Styles
   ────────────────────────────────────────────────────────────── */
.hm-tt-mobile-days[b-46ry83u9he] {
    scrollbar-width: none;
}

.hm-tt-mobile-days[b-46ry83u9he]::-webkit-scrollbar {
    display: none;
}

.hm-tt-mobile-day-btn[b-46ry83u9he] {
    min-height: 38px;
    padding: 0.35rem 0.85rem;
    font-size: 0.825rem;
    border-radius: 20px;
}

.hm-tt-mobile-bell-card[b-46ry83u9he] {
    border: 1px solid #E2E8F0;
    border-radius: 8px;
    background: #FFFFFF;
    overflow: hidden;
}

.hm-tt-mobile-lesson-btn[b-46ry83u9he] {
    display: block;
    width: 100%;
    min-height: 48px;
    padding: 0.625rem 0.75rem;
    border: 1px solid #E2E8F0;
    border-radius: 6px;
    background-color: #F8FAFC;
    text-align: right;
    font-family: inherit;
    cursor: pointer;
    outline: none;
}

.hm-tt-mobile-lesson-meta[b-46ry83u9he] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    margin-top: 0.15rem;
}

.hm-tt-mobile-bell-times[b-46ry83u9he] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.1rem;
    direction: ltr;
}

.hm-tt-mobile-lesson-btn:hover:not(:disabled)[b-46ry83u9he] {
    background-color: #F8FAFC;
    border-color: #0175C2;
}

.hm-tt-mobile-lesson-btn:focus-visible[b-46ry83u9he] {
    outline: 2px solid #0175C2;
    outline-offset: 1px;
}

/* ──────────────────────────────────────────────────────────────
   Empty & Loading
   ────────────────────────────────────────────────────────────── */
.hm-tt-empty-box[b-46ry83u9he] {
    background: #FFFFFF;
    border: 1px dashed #CBD5E1;
    border-radius: 8px;
    padding: 2.5rem 1rem;
}

.hm-tt-empty-icon[b-46ry83u9he] {
    font-size: 2.5rem;
    color: #94A3B8;
}

/* ──────────────────────────────────────────────────────────────
   Dark Style Overrides
   ────────────────────────────────────────────────────────────── */
html.dark-style .hm-tt-toolbar[b-46ry83u9he],
html.dark-style .hm-tt-grid-wrapper[b-46ry83u9he],
html.dark-style .hm-tt-mobile-bell-card[b-46ry83u9he],
html.dark-style .hm-tt-empty-box[b-46ry83u9he] {
    background: #283144;
    border-color: #36445D;
}

html.dark-style .hm-tt-table th[b-46ry83u9he],
html.dark-style .hm-tt-table td[b-46ry83u9he] {
    border-color: #36445D;
}

html.dark-style .hm-tt-day-th[b-46ry83u9he],
html.dark-style .hm-tt-day-td[b-46ry83u9he],
html.dark-style .hm-tt-bell-th[b-46ry83u9he] {
    background: #222A3A;
    color: #D8DEEA;
}

html.dark-style .hm-tt-bell-head-1[b-46ry83u9he],
html.dark-style .hm-tt-bell-head-2[b-46ry83u9he],
html.dark-style .hm-tt-bell-head-3[b-46ry83u9he],
html.dark-style .hm-tt-bell-head-4[b-46ry83u9he] {
    background: #222A3A;
}

html.dark-style .hm-tt-cell-td[b-46ry83u9he] {
    background: #283144;
}

html.dark-style .hm-tt-segment-btn[b-46ry83u9he],
html.dark-style .hm-tt-mobile-lesson-btn[b-46ry83u9he] {
    background-color: #222A3A;
    border-color: #36445D;
}

html.dark-style .hm-tt-bell-tone-1[b-46ry83u9he],
html.dark-style .hm-tt-bell-tone-2[b-46ry83u9he],
html.dark-style .hm-tt-bell-tone-3[b-46ry83u9he],
html.dark-style .hm-tt-bell-tone-4[b-46ry83u9he] {
    background: #222A3A;
    border-color: #36445D;
}

html.dark-style .hm-tt-segment-btn:hover:not(:disabled)[b-46ry83u9he],
html.dark-style .hm-tt-mobile-lesson-btn:hover:not(:disabled)[b-46ry83u9he] {
    background-color: #1E2533;
    border-color: #5A8DEE;
}

html.dark-style .hm-tt-subject[b-46ry83u9he] {
    color: #D8DEEA !important;
}

html.dark-style .hm-tt-teacher[b-46ry83u9he],
html.dark-style .hm-tt-time-sub[b-46ry83u9he],
html.dark-style .hm-tt-bell-time[b-46ry83u9he] {
    color: #8295BA !important;
}

html.dark-style .hm-tt-teacher-icon[b-46ry83u9he] {
    color: #8295BA;
}

html.dark-style .hm-tt-select[b-46ry83u9he] {
    background-color: #222A3A;
    border-color: #44536F;
    color: #D8DEEA;
}

html.dark-style .hm-tt-empty-cell[b-46ry83u9he] {
    color: #44536F;
}
/* /Layout/ManagerPageSkeleton.razor.rz.scp.css */
.manager-page-skeleton[b-i3zpxibr2g] {
    --skeleton-base: rgba(125, 138, 161, .12);
    --skeleton-highlight: rgba(255, 255, 255, .58);
    --skeleton-border: rgba(112, 127, 151, .15);
    display: flex;
    flex-direction: column;
    gap: 1rem;
    width: 100%;
}

.skeleton-panel[b-i3zpxibr2g] {
    border: 1px solid var(--skeleton-border);
    border-radius: 1rem;
    background: var(--bs-card-bg, #fff);
    box-shadow: 0 .35rem 1.15rem rgba(34, 48, 62, .045);
}

.skeleton-copy[b-i3zpxibr2g],
.skeleton-icon[b-i3zpxibr2g],
.skeleton-avatar[b-i3zpxibr2g],
.skeleton-circle[b-i3zpxibr2g],
.skeleton-input[b-i3zpxibr2g],
.skeleton-tabs span[b-i3zpxibr2g],
.skeleton-week-row span[b-i3zpxibr2g],
.skeleton-days-grid span[b-i3zpxibr2g] {
    position: relative;
    display: block;
    overflow: hidden;
    border-radius: .55rem;
    background: var(--skeleton-base);
}

.skeleton-copy[b-i3zpxibr2g]::after,
.skeleton-icon[b-i3zpxibr2g]::after,
.skeleton-avatar[b-i3zpxibr2g]::after,
.skeleton-circle[b-i3zpxibr2g]::after,
.skeleton-input[b-i3zpxibr2g]::after,
.skeleton-tabs span[b-i3zpxibr2g]::after,
.skeleton-week-row span[b-i3zpxibr2g]::after,
.skeleton-days-grid span[b-i3zpxibr2g]::after {
    position: absolute;
    inset: 0;
    content: "";
    transform: translateX(-105%);
    animation: managerSkeletonWave-b-i3zpxibr2g 1.35s ease-in-out infinite;
    background: linear-gradient(90deg, transparent, var(--skeleton-highlight), transparent);
}

.skeleton-copy[b-i3zpxibr2g] { width: 48%; height: .68rem; }
.skeleton-copy.short[b-i3zpxibr2g] { width: 28%; }
.skeleton-copy.medium[b-i3zpxibr2g] { width: 52%; }
.skeleton-copy.long[b-i3zpxibr2g] { width: 74%; }
.skeleton-copy.full[b-i3zpxibr2g] { width: 100%; }
.skeleton-copy.heading[b-i3zpxibr2g] { width: 36%; height: 1rem; }
.skeleton-copy.number[b-i3zpxibr2g] { width: 22%; height: 1.35rem; }
.skeleton-copy.badge[b-i3zpxibr2g] { width: 5rem; height: 1.55rem; border-radius: 2rem; }
.skeleton-copy.button[b-i3zpxibr2g] { width: 7rem; height: 2.15rem; }
.skeleton-copy.actions[b-i3zpxibr2g] { width: 4rem; height: 1.8rem; }
.skeleton-icon[b-i3zpxibr2g] { width: 2.7rem; height: 2.7rem; flex: 0 0 2.7rem; border-radius: .75rem; }
.skeleton-avatar[b-i3zpxibr2g] { width: 2.65rem; height: 2.65rem; flex: 0 0 2.65rem; border-radius: 50%; }
.skeleton-circle[b-i3zpxibr2g] { width: 2rem; height: 2rem; border-radius: 50%; }

.skeleton-filter-panel[b-i3zpxibr2g],
.skeleton-sms-toolbar[b-i3zpxibr2g] {
    display: flex;
    align-items: end;
    gap: 1rem;
    padding: 1.1rem;
}

.skeleton-field[b-i3zpxibr2g] { display: flex; width: min(21rem, 50%); flex-direction: column; gap: .45rem; }
.skeleton-input[b-i3zpxibr2g] { width: 100%; height: 2.45rem; }
.skeleton-sms-toolbar .skeleton-field[b-i3zpxibr2g] { width: 18rem; }
.skeleton-sms-toolbar .button[b-i3zpxibr2g] { margin-inline-start: auto; }

.skeleton-metric-grid[b-i3zpxibr2g],
.skeleton-card-grid[b-i3zpxibr2g] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: .8rem;
}

.skeleton-card-grid[b-i3zpxibr2g] { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.skeleton-metric[b-i3zpxibr2g] { position: relative; display: flex; min-height: 5.6rem; flex-direction: column; justify-content: center; gap: .55rem; padding: 1rem; border: 1px solid var(--skeleton-border); border-radius: .9rem; background: var(--bs-card-bg, #fff); }
.skeleton-metric .skeleton-icon[b-i3zpxibr2g] { position: absolute; inset-inline-end: 1rem; }
.skeleton-section-heading[b-i3zpxibr2g] { display: flex; flex-direction: column; gap: .5rem; padding-top: .25rem; }
.skeleton-compact-card[b-i3zpxibr2g] { display: flex; min-height: 5.4rem; align-items: center; gap: .8rem; padding: .9rem; }
.skeleton-compact-card > div[b-i3zpxibr2g] { display: flex; min-width: 0; flex: 1; flex-direction: column; gap: .55rem; }
.skeleton-compact-card .badge[b-i3zpxibr2g] { width: 3.5rem; }

.skeleton-person-card[b-i3zpxibr2g],
.skeleton-reminder-card[b-i3zpxibr2g] { min-height: 11.5rem; padding: 1rem; }
.skeleton-person-card[b-i3zpxibr2g] { display: grid; grid-template-columns: auto 1fr; gap: .8rem; }
.skeleton-person-copy[b-i3zpxibr2g] { display: flex; flex-direction: column; justify-content: center; gap: .55rem; }
.skeleton-person-card > .skeleton-copy[b-i3zpxibr2g] { grid-column: 1 / -1; }
.skeleton-card-footer[b-i3zpxibr2g] { display: flex; grid-column: 1 / -1; align-items: center; justify-content: space-between; margin-top: auto; padding-top: .75rem; border-top: 1px solid var(--skeleton-border); }

.skeleton-tabs[b-i3zpxibr2g] { display: grid; grid-template-columns: repeat(2, 1fr); gap: .35rem; padding: .35rem; border-radius: 2rem; }
.skeleton-tabs span[b-i3zpxibr2g] { height: 2.45rem; border-radius: 2rem; }
.skeleton-reminder-card[b-i3zpxibr2g] { display: flex; flex-direction: column; gap: 1rem; }
.skeleton-card-top[b-i3zpxibr2g],
.skeleton-event-title[b-i3zpxibr2g] { display: flex; align-items: center; justify-content: space-between; }
.skeleton-reminder-card .skeleton-card-footer[b-i3zpxibr2g] { margin-top: auto; }

.skeleton-calendar-layout[b-i3zpxibr2g] { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr); gap: 1rem; }
.skeleton-calendar-card[b-i3zpxibr2g] { min-height: 24rem; padding: 1rem; }
.skeleton-calendar-nav[b-i3zpxibr2g] { display: flex; align-items: center; justify-content: space-between; margin-bottom: 1rem; }
.skeleton-calendar-nav .heading[b-i3zpxibr2g] { width: 30%; }
.skeleton-week-row[b-i3zpxibr2g],
.skeleton-days-grid[b-i3zpxibr2g] { display: grid; grid-template-columns: repeat(7, 1fr); gap: .45rem; }
.skeleton-week-row[b-i3zpxibr2g] { margin-bottom: .55rem; }
.skeleton-week-row span[b-i3zpxibr2g] { height: .65rem; margin: .4rem; }
.skeleton-days-grid span[b-i3zpxibr2g] { aspect-ratio: 1; min-height: 2.25rem; }
.skeleton-calendar-side[b-i3zpxibr2g] { display: grid; grid-template-rows: repeat(2, 1fr); gap: 1rem; }
.skeleton-event-panel[b-i3zpxibr2g] { min-height: 11.5rem; padding: 1rem; }
.skeleton-event-title[b-i3zpxibr2g] { margin-bottom: .85rem; padding-bottom: .75rem; border-bottom: 1px solid var(--skeleton-border); }
.skeleton-event-row[b-i3zpxibr2g] { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: .65rem 0; border-bottom: 1px solid var(--skeleton-border); }

.skeleton-list[b-i3zpxibr2g] { overflow: hidden; border: 1px solid var(--skeleton-border); border-radius: .9rem; background: var(--bs-card-bg, #fff); }
.skeleton-list-row[b-i3zpxibr2g] { display: flex; min-height: 4.8rem; align-items: center; gap: .8rem; padding: .8rem 1rem; border-bottom: 1px solid var(--skeleton-border); }
.skeleton-list-row:last-child[b-i3zpxibr2g] { border-bottom: 0; }
.skeleton-list-row > div[b-i3zpxibr2g] { display: flex; min-width: 0; flex: 1; flex-direction: column; gap: .55rem; }

@keyframes managerSkeletonWave-b-i3zpxibr2g { 100% { transform: translateX(105%); } }

@media (max-width: 991.98px) {
    .skeleton-metric-grid[b-i3zpxibr2g] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .skeleton-card-grid[b-i3zpxibr2g] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .skeleton-calendar-layout[b-i3zpxibr2g] { grid-template-columns: 1fr; }
    .skeleton-calendar-side[b-i3zpxibr2g] { grid-template-columns: repeat(2, 1fr); grid-template-rows: none; }
}

@media (max-width: 575.98px) {
    .skeleton-filter-panel[b-i3zpxibr2g],
    .skeleton-sms-toolbar[b-i3zpxibr2g] { align-items: stretch; flex-direction: column; }
    .skeleton-field[b-i3zpxibr2g],
    .skeleton-sms-toolbar .skeleton-field[b-i3zpxibr2g] { width: 100%; }
    .skeleton-sms-toolbar .button[b-i3zpxibr2g] { margin-inline-start: 0; }
    .skeleton-card-grid[b-i3zpxibr2g] { grid-template-columns: 1fr; }
    .skeleton-calendar-side[b-i3zpxibr2g] { grid-template-columns: 1fr; }
    .skeleton-list-row .button[b-i3zpxibr2g] { width: 4rem; }
}

@media (prefers-reduced-motion: reduce) {
    .manager-page-skeleton *[b-i3zpxibr2g]::after { animation: none !important; }
}
/* /Layout/Navbar.razor.rz.scp.css */
.topbar-school-context[b-1hjjghooj9] { min-width: 0; }
.topbar-school-identity[b-1hjjghooj9] { min-width: 0; }
.topbar-context-select[b-1hjjghooj9] {
    min-height: 38px;
    border: 0;
    border-radius: 9px;
    padding-block: 6px;
    padding-inline: 8px 28px;
    background-color: transparent;
    background-position: left 8px center;
    color: #25396f;
    font-size: .88rem;
    font-weight: 700;
    cursor: pointer;
    text-overflow: ellipsis;
}
.topbar-context-select:focus[b-1hjjghooj9] { background-color: #fff; box-shadow: 0 0 0 3px #5a8dee26; }
.topbar-context-select:disabled[b-1hjjghooj9] { cursor: wait; opacity: .65; }
.topbar-school-select[b-1hjjghooj9] { width: clamp(150px, 16vw, 220px); max-width: 100%; }
.topbar-year-control[b-1hjjghooj9] {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    padding-inline: 9px 2px;
    min-height: 40px;
    border: 1px solid #39da8a40;
    border-radius: 11px;
    background: #39da8a14;
    color: #1b8a43;
}
.topbar-year-control > i[b-1hjjghooj9] { font-size: 1.15rem; }
.topbar-year-select[b-1hjjghooj9] { width: 162px; color: inherit; font-size: .8rem; }
.topbar-context-select option[b-1hjjghooj9] { background: #fff; color: #25396f; }

@media (max-width: 767.98px) {
    .topbar-school-context[b-1hjjghooj9] { gap: .4rem !important; }
    .topbar-school-info[b-1hjjghooj9] { gap: 0 !important; }
    .topbar-badge-city[b-1hjjghooj9] { display: none !important; }
    .topbar-school-select[b-1hjjghooj9] { width: 180px; }
    .topbar-year-select[b-1hjjghooj9] { width: 140px; font-size: .75rem; }
}
@media (max-width: 575.98px) {
    .app-topbar .container-fluid[b-1hjjghooj9] { flex-wrap: wrap; gap: .4rem; padding-block: .5rem; }
    .topbar-start[b-1hjjghooj9] { width: 100%; gap: .35rem; min-width: 0; }
    .topbar-school-context[b-1hjjghooj9] { flex: 1; flex-wrap: nowrap !important; }
    .topbar-school-identity[b-1hjjghooj9] { flex: 1; padding-inline-end: .2rem; }
    .topbar-school-avatar[b-1hjjghooj9] { display: none; }
    .topbar-school-select[b-1hjjghooj9] { width: 100%; min-width: 0; padding-inline-start: 2px; font-size: .78rem; }
    .topbar-year-control[b-1hjjghooj9] { padding-inline-start: 6px; }
    .topbar-year-select[b-1hjjghooj9] { width: 132px; padding-inline-start: 2px; }
    .topbar-actions[b-1hjjghooj9] { margin-inline-start: auto; }
}
/* /Layout/ScheduleBoardModal.razor.rz.scp.css */
.schedule-board-modal[b-takznkilgo]{position:fixed;inset:0;display:block;width:100%;height:100dvh;overflow:hidden;z-index:1090;background:#f5f7fb}
.sb-plan-controls[b-takznkilgo]{display:flex;align-items:end;gap:12px;flex:1;min-width:0;overflow-x:auto;padding:0;border:0;background:transparent}
.sb-plan-mode-field[b-takznkilgo],.sb-first-week-field[b-takznkilgo],.sb-pattern-field[b-takznkilgo]{display:grid;gap:4px;flex-shrink:0}.sb-control-label[b-takznkilgo]{font-size:.67rem;color:var(--sb-muted);font-weight:600;white-space:nowrap}
.sb-mode-picker[b-takznkilgo],.sb-first-week-picker[b-takznkilgo],.sb-pattern-tabs[b-takznkilgo]{display:flex;align-items:center;gap:3px;padding:3px;border:1px solid var(--sb-line);border-radius:12px;background:#edf2fa;flex-shrink:0}
.sb-mode-option[b-takznkilgo],.sb-first-option[b-takznkilgo],.sb-time-choice[b-takznkilgo]{display:inline-flex;align-items:center;justify-content:center;gap:5px;height:40px;padding:7px 10px;border:1px solid transparent;border-radius:9px;background:transparent;color:var(--sb-muted);font-size:.72rem;font-weight:600;white-space:nowrap;transition:background .18s,box-shadow .18s,color .18s}
.sb-mode-option i[b-takznkilgo],.sb-first-option i[b-takznkilgo],.sb-time-choice i[b-takznkilgo]{font-size:1rem}.sb-mode-option.is-active[b-takznkilgo]{background:#fff;color:#3865b9;border-color:#c9dafa;box-shadow:0 2px 6px #263f6812}
.sb-first-option.sb-morning[aria-pressed=true][b-takznkilgo]{background:#fff0ba;border-color:#e7be52;color:#795812}.sb-first-option.sb-afternoon[aria-pressed=true][b-takznkilgo]{background:#e6ddff;border-color:#b39ce9;color:#62419f}
.sb-pattern-tabs[b-takznkilgo]{background:#fff;border-color:#d4deee;box-shadow:0 2px 6px #263f680a}.sb-time-choice[aria-selected=true][b-takznkilgo]{background:#eaf1ff;border-color:#b4cdf5;color:#315ea8;box-shadow:0 1px 4px #263f6814}.sb-time-choice:hover:not([aria-selected=true])[b-takznkilgo]{background:#f2f5fa;color:#47638d}
.sb-pattern-toolbar[b-takznkilgo]{display:flex;align-items:end;gap:12px;flex:1;justify-content:space-between;min-width:max-content}.sb-copy-pattern[b-takznkilgo]{display:inline-flex;align-items:center;justify-content:center;gap:6px;flex-shrink:0;height:46px;padding:8px 10px;border:1px solid #b8cdef;border-radius:12px;background:#fff;color:#3865b9;font-size:.71rem;font-weight:600;white-space:nowrap;transition:background .18s,box-shadow .18s}.sb-copy-pattern:hover[b-takznkilgo]{background:#eaf1ff;box-shadow:0 2px 6px #263f6817}.sb-copy-pattern i[b-takznkilgo]{font-size:1rem}
.sb-mode-option:disabled[b-takznkilgo],.sb-first-option:disabled[b-takznkilgo],.sb-time-choice:disabled[b-takznkilgo],.sb-copy-pattern:disabled[b-takznkilgo]{opacity:.55;cursor:wait}
.sb-bell[b-takznkilgo]{height:100%;border:1px solid var(--sb-line);border-radius:12px;background:#fff;overflow:hidden}.sb-bell-mode[b-takznkilgo]{display:flex;padding:5px;gap:5px;border-bottom:1px solid var(--sb-line);background:#fbfcff}.sb-bell-mode button[b-takznkilgo]{flex:1;border:1px solid transparent;border-radius:8px;padding:6px 3px;color:var(--sb-muted);background:#fff;font-size:.67rem;font-weight:600;box-shadow:0 1px 3px #263f6812;transition:background-color .15s,border-color .15s,color .15s}.sb-bell-mode button.sb-full[b-takznkilgo]{background:#e8f5f0;border-color:#9bd4bd;color:#247652}.sb-bell-mode button.sb-split[b-takznkilgo]{background:#fff0e6;border-color:#efb37f;color:#a35420}.sb-bell-mode button[aria-pressed=true][b-takznkilgo]{font-weight:800;box-shadow:0 0 0 2px currentColor inset,0 2px 5px #263f6821}.sb-bell>.sb-slot[b-takznkilgo]{border:0;border-radius:0;height:auto;min-height:108px}.sb-bell.is-split>.sb-slot+.sb-slot[b-takznkilgo]{border-top:2px solid var(--sb-line)}.sb-segment-heading[b-takznkilgo]{display:flex;justify-content:space-between;gap:4px;align-items:center;padding:5px 7px;font-size:.63rem;background:#f7f9fe;border-bottom:1px solid var(--sb-line);color:var(--sb-muted)}.sb-segment-heading strong[b-takznkilgo]{font-weight:600}.sb-bell.is-split .sb-empty-slot[b-takznkilgo]{min-height:82px}.sb-bell.is-split .sb-placed-title strong[b-takznkilgo]{font-size:.78rem}.sb-split-hint[b-takznkilgo]{font-size:.75rem;color:var(--sb-muted);line-height:1.9;margin:14px 0 0}.sb-bell .sb-slot-time[b-takznkilgo]{border-radius:0}.sb-bell .sb-card-actions[b-takznkilgo]{margin-top:5px}
.schedule-board-modal .modal-dialog.modal-fullscreen[b-takznkilgo]{width:100%;max-width:none;height:100%;margin:0;padding:0}
.schedule-board-modal[data-confirm=true] .sb-workspace[b-takznkilgo],.schedule-board-modal[data-confirm=true] .sb-settings[b-takznkilgo],.schedule-board-modal[data-confirm=true] .sb-header[b-takznkilgo],.schedule-board-modal[data-confirm=true] .sb-footer[b-takznkilgo]{pointer-events:none;opacity:.65}
.schedule-board-modal .sb-content[b-takznkilgo]{--sb-blue:#5787ee;--sb-soft:#edf3ff;--sb-line:#e0e7f3;--sb-muted:#647894;--sb-ink:#304562;height:100%;width:100%;border:0;border-radius:0;background:#fff;color:var(--sb-ink);display:flex;flex-direction:column;overflow:hidden;box-shadow:none}
.sb-header[b-takznkilgo]{display:flex;flex-wrap:wrap;align-items:end;gap:12px;flex:0 0 auto;padding:10px 16px;background:#f8faff;border-bottom:1px solid var(--sb-line)}
.sb-header>.sb-icon-button[b-takznkilgo]{margin-inline-start:auto}.sb-header-controls[b-takznkilgo]{display:flex;flex:0 0 auto;align-items:center;gap:6px;min-width:0}
.sb-class-field[b-takznkilgo]{display:block;flex:0 0 250px;min-width:0;margin:0}.sb-class-field .form-select[b-takznkilgo]{width:100%;min-width:0;height:48px}
.sb-header-controls .btn[b-takznkilgo]{display:flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap;height:48px;flex-shrink:0}.sb-header-action[b-takznkilgo]{border:1px solid #d6e1f2;border-radius:11px;padding:8px 10px;background:#fff;color:#47638d;font-size:.74rem;box-shadow:0 2px 5px #263f6808}.sb-header-action:hover[b-takznkilgo]{background:#edf3ff;border-color:#b6cced;color:#315ea8}.sb-header-action i[b-takznkilgo]{font-size:1.1rem}.sb-header-action.sb-settings-toggle.is-active[b-takznkilgo]{background:#e4edff;color:#315ea8;border-color:#acc6ef}
.sb-icon-button[b-takznkilgo]{border:1px solid var(--sb-line);border-radius:10px;background:#fff;color:var(--sb-ink);width:48px;height:48px;display:grid;place-items:center;font-size:24px;flex-shrink:0}
.sb-alert[b-takznkilgo],.sb-confirm[b-takznkilgo]{display:flex;align-items:center;gap:10px;padding:10px 20px;flex:0 0 auto;background:#fff2f1;color:#a13835;border-bottom:1px solid #ffd8d6;font-size:.86rem}.sb-confirm[b-takznkilgo]{justify-content:space-between;flex-wrap:wrap;background:#fff7e8;color:#735221;border-color:#f0dfbd}.sb-confirm>div[b-takznkilgo]{display:flex;gap:8px}
.sb-loading[b-takznkilgo]{min-height:0;flex:1;padding:24px;overflow:auto}.sb-loading-label[b-takznkilgo]{display:flex;gap:10px;justify-content:center;margin:15px 0 24px;color:var(--sb-muted)}.sb-skeleton[b-takznkilgo]{display:grid;grid-template-columns:360px 1fr;gap:20px}.sb-skeleton aside[b-takznkilgo]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-content:start}.sb-skeleton main[b-takznkilgo]{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.sb-skeleton span[b-takznkilgo]{display:block;height:108px;border-radius:12px;background:linear-gradient(100deg,#eef2f8 25%,#f9fbff 45%,#eef2f8 65%);background-size:200% 100%;animation:sb-shimmer-b-takznkilgo 1.6s ease-in-out infinite}@keyframes sb-shimmer-b-takznkilgo{from{background-position:100% 0}to{background-position:-100% 0}}
.sb-welcome[b-takznkilgo]{flex:1;min-height:0;overflow:auto;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:24px;text-align:center}.sb-welcome-icon[b-takznkilgo]{display:grid;place-items:center;width:72px;height:72px;background:var(--sb-soft);color:var(--sb-blue);border-radius:20px;font-size:36px;margin-bottom:16px}.sb-welcome p[b-takznkilgo]{color:var(--sb-muted);margin:0}
.sb-settings-collapse[b-takznkilgo]{display:grid;grid-template-rows:0fr;flex:0 0 auto;opacity:0;transition:grid-template-rows .24s ease,opacity .2s ease;pointer-events:none}.sb-settings-collapse[data-open=true][b-takznkilgo]{grid-template-rows:1fr;opacity:1;pointer-events:auto}.sb-settings[b-takznkilgo]{min-height:0;overflow:hidden;background:#f8faff}.sb-settings-body[b-takznkilgo]{padding:12px 20px;border-bottom:1px solid var(--sb-line);max-height:30dvh;overflow:auto}.sb-settings-fields[b-takznkilgo]{display:flex;flex-wrap:wrap;align-items:end;gap:12px}.sb-settings-fields label[b-takznkilgo]{display:grid;gap:4px;font-size:.78rem;width:138px}
.sb-workspace[b-takznkilgo]{--sb-bank-width:430px;flex:1;min-height:0;min-width:0;display:grid;grid-template-columns:var(--sb-bank-width) minmax(0,1fr);overflow:hidden;transition:grid-template-columns .28s cubic-bezier(.2,.7,.2,1)}
.sb-workspace.is-bank-collapsed[b-takznkilgo]{grid-template-columns:0 minmax(0,1fr)}
.sb-workspace .sb-bank[b-takznkilgo]{width:var(--sb-bank-width);overflow:hidden;transition:opacity .18s ease,transform .28s ease}
.sb-workspace.is-bank-collapsed .sb-bank[b-takznkilgo]{opacity:0;transform:translateX(24px);pointer-events:none}
.sb-bank-heading>div[b-takznkilgo]{display:grid;gap:4px;min-width:0}.sb-bank-heading>div>span[b-takznkilgo]{font-size:.72rem;color:var(--sb-muted)}
.sb-bank-toggle[b-takznkilgo]{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:34px;padding:6px 9px;border:1px solid #cfddf4;border-radius:9px;background:#edf3ff;color:#4269ae;font-size:.7rem;white-space:nowrap;transition:background .15s,box-shadow .15s}
.sb-bank-toggle:hover[b-takznkilgo]{background:#dfeaff;box-shadow:0 2px 8px #34527a12}.sb-bank-toggle i[b-takznkilgo]{font-size:1.1rem}.sb-bank-toggle small[b-takznkilgo]{border-inline-start:1px solid #cfddf4;padding-inline-start:7px;color:var(--sb-muted)}
.sb-bank-restore[b-takznkilgo]{flex:0 0 auto;display:flex;align-items:center;padding:7px 18px 0;animation:sb-fade-b-takznkilgo .2s ease}
.sb-bank[b-takznkilgo]{display:flex;flex-direction:column;min-height:0;min-width:0;padding:14px 12px 10px;border-inline-end:1px solid var(--sb-line);background:#fbfcff}.sb-bank-heading[b-takznkilgo]{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:0 4px 10px}.sb-bank-heading h3[b-takznkilgo]{font-size:.94rem;font-weight:700;margin:0}.sb-bank-heading>span[b-takznkilgo]{font-size:.72rem;color:var(--sb-muted)}
.sb-bank-scroll[b-takznkilgo]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:10px;overflow:auto;flex:1;min-height:0;padding:4px 4px 12px;scrollbar-width:thin}
.sb-lesson-card[b-takznkilgo]{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid var(--sb-line);border-inline-start:3px solid #80a4ed;border-radius:12px;padding:10px 9px 0;min-height:110px;min-width:0;overflow:hidden;transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease}.sb-lesson-card:hover[b-takznkilgo]{border-color:#a7c0f1;box-shadow:0 4px 12px #34527a0c}
.sb-lesson-card>strong[b-takznkilgo]{display:block;font-size:.77rem;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-inline-end:25px;line-height:1.8;margin-bottom:4px;flex-shrink:0}
.sb-card-count[b-takznkilgo]{position:absolute;inset-inline-end:7px;top:8px;display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 5px;border-radius:6px;background:var(--sb-soft);color:#4777d7;font-size:.69rem;font-weight:600;font-variant-numeric:tabular-nums}
.sb-teacher[b-takznkilgo]{display:flex;gap:5px;align-items:center;font-size:.73rem;color:var(--sb-muted);overflow-wrap:anywhere;line-height:1.7}.sb-lesson-card .sb-teacher[b-takznkilgo]{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sb-teacher i[b-takznkilgo]{margin-inline-end:4px}
.sb-card-actions[b-takznkilgo]{display:flex;align-items:center;gap:2px;flex-shrink:0;border-top:1px solid var(--sb-line);margin:8px -6px 0;padding:4px 0}.sb-lesson-card .sb-card-actions[b-takznkilgo]{margin-top:auto}.sb-lesson-card .sb-teacher[b-takznkilgo]{padding-bottom:8px}
.sb-card-actions button[b-takznkilgo]{display:flex;align-items:center;justify-content:center;gap:3px;border:0;background:transparent;padding:5px;border-radius:7px;color:#4777d7;font-size:.73rem;min-width:30px;min-height:30px}.sb-card-actions button:hover[b-takznkilgo]{background:#e3ecff}.sb-card-actions .sb-drag-handle[b-takznkilgo]{margin-inline-end:auto;cursor:grab;color:var(--sb-muted);touch-action:none;user-select:none}.sb-card-actions .sb-delete[b-takznkilgo]{color:#ba4545}.sb-card-actions .sb-delete:hover[b-takznkilgo]{background:#ffeaea}.sb-selected[b-takznkilgo]{outline:2px solid var(--sb-blue);outline-offset:1px}.sb-empty-bank[b-takznkilgo]{grid-column:1/-1;padding:15px 6px;font-size:.84rem;color:var(--sb-muted);line-height:1.9}
.sb-board-area[b-takznkilgo]{min-width:0;min-height:0;display:flex;flex-direction:column}
.sb-board-scroll[b-takznkilgo]{flex:1;min-height:0;min-width:0;overflow:auto;padding:6px 10px 16px;overscroll-behavior:contain;scrollbar-width:thin}
.sb-table[b-takznkilgo]{width:100%;min-width:calc(120px + var(--sb-period-columns,4)*180px);border-collapse:separate;border-spacing:8px;table-layout:fixed}.sb-table th[b-takznkilgo]{text-align:center}
.sb-table thead th[b-takznkilgo]{position:sticky;top:0;z-index:3;height:48px;background:#f6f9ff;border:1px solid var(--sb-line);padding:10px 8px;border-radius:10px;font-size:.85rem;box-shadow:0 6px 0 #fff}.sb-table thead th:first-child[b-takznkilgo]{width:104px;inset-inline-start:0;z-index:5}
.sb-table .sb-day-count[b-takznkilgo]{display:block;width:100%;max-width:98px;margin:7px auto 0;font:inherit;font-size:.66rem;color:var(--sb-muted);background:transparent;border:0;padding:4px 2px;cursor:pointer}
.sb-table tbody th[b-takznkilgo]{position:sticky;inset-inline-start:0;z-index:2;width:104px;padding:10px 3px;background:#f6f9ff;border:1px solid var(--sb-line);border-radius:10px;color:var(--sb-ink);box-shadow:-4px 0 0 #fff;font-size:.83rem}
.sb-table td[b-takznkilgo]{vertical-align:top;padding:0;height:140px}.sb-slot[b-takznkilgo]{min-height:140px;height:100%;border:1px solid var(--sb-line);border-radius:12px;background:#fff;overflow:hidden;display:flex;flex-direction:column;transition:background-color .12s,border-color .12s}
.sb-slot-time[b-takznkilgo]{display:flex;direction:rtl;gap:5px;align-items:center;justify-content:center;border:0;background:#f7f9fe;border-bottom:1px solid var(--sb-line);font-size:.73rem;color:var(--sb-muted);padding:7px 5px;width:100%;min-height:34px;font-variant-numeric:tabular-nums}.sb-slot-range[b-takznkilgo]{display:flex;direction:rtl;gap:5px;align-items:center}.sb-slot-time>i:last-child[b-takznkilgo]{font-size:12px}
.sb-empty-slot[b-takznkilgo]{border:0;background:transparent;color:#8d9bb3;display:flex;flex:1;align-items:center;justify-content:center;flex-direction:column;gap:5px;width:100%;min-height:104px;font-size:.76rem}.sb-empty-slot>i[b-takznkilgo]{font-size:24px}.sb-empty-slot:disabled[b-takznkilgo]{opacity:.65}
.sb-placed-card[b-takznkilgo]{display:flex;flex:1;flex-direction:column;background:#eef7f6;padding:8px 8px 0}.sb-placed-title[b-takznkilgo]{display:block;text-align:start;border:0;background:transparent;color:var(--sb-ink);width:100%;padding:2px 1px;flex:1}.sb-placed-title strong[b-takznkilgo]{font-size:.84rem;font-weight:700;display:block;line-height:1.7;overflow-wrap:anywhere}.sb-placed-title .sb-teacher[b-takznkilgo]{font-size:.72rem;line-height:1.8;margin-top:4px}.sb-placed-card .sb-card-actions[b-takznkilgo]{margin-top:8px}.sb-inactive[b-takznkilgo]{height:100%;min-height:140px;display:flex;align-items:center;justify-content:center;font-size:.72rem;color:#9ba8bd;border-radius:12px;background:#f6f8fc}
.sb-conflict[b-takznkilgo]{border-color:#e69694;background:#fff5f4}.sb-conflict-text[b-takznkilgo]{display:block;font-size:.68rem;color:#a33835;line-height:1.7;padding:5px 6px;background:#fff1f0}
.sb-footer[b-takznkilgo]{display:flex;justify-content:space-between;align-items:center;flex:0 0 auto;gap:12px;padding:10px 20px;border-top:1px solid var(--sb-line);background:#fff;box-shadow:0 -4px 16px #25365c06}.sb-footer-status[b-takznkilgo]{display:flex;flex-direction:column;gap:3px;font-size:.85rem}.sb-footer-status>span[b-takznkilgo]{min-height:19px;color:var(--sb-muted);font-size:.75rem}.sb-footer-status .sb-unsaved[b-takznkilgo]{color:#95691d}.sb-footer-actions[b-takznkilgo]{display:flex;gap:8px;flex-shrink:0}
.sb-time-overlay[b-takznkilgo]{position:absolute;inset:0;background:#1b294b66;display:grid;place-items:center;z-index:20;padding:16px}.sb-time-dialog[b-takznkilgo]{width:min(400px,100%);background:#fff;color:var(--sb-ink);border-radius:16px;padding:22px;box-shadow:0 20px 60px #14264733}.sb-time-dialog h3[b-takznkilgo]{font-size:1rem;margin-bottom:16px}.sb-time-dialog>div[b-takznkilgo]{display:flex;gap:12px}.sb-time-dialog>div+div[b-takznkilgo]{margin-top:18px}.sb-time-dialog label[b-takznkilgo]{flex:1;display:grid;gap:5px;font-size:.85rem;min-width:0}.sb-time-dialog input[b-takznkilgo]{direction:ltr}.sb-time-dialog .sb-time-error[b-takznkilgo]{font-size:.76rem;color:#a13835;background:#fff2f1;padding:8px;border-radius:8px;margin:12px 0}
.sb-time-field[b-takznkilgo]{position:relative;min-width:0}.sb-time-field .sb-time-input[b-takznkilgo]{direction:ltr;text-align:center;padding-inline:28px;font-variant-numeric:tabular-nums}.sb-time-field>i[b-takznkilgo]{position:absolute;right:10px;top:50%;transform:translateY(-50%);pointer-events:none;color:var(--sb-muted)}.sb-time-to[b-takznkilgo]{font-size:.69rem;color:#8694aa}.sb-settings-toggle.is-active[b-takznkilgo]{background:#dce8ff;color:#355fac}.sb-header .btn[b-takznkilgo],.sb-icon-button[b-takznkilgo]{transition:background-color .18s ease,box-shadow .18s ease}.sb-icon-button:hover[b-takznkilgo]{background:#edf3ff}.sb-card-actions button[aria-pressed=true][b-takznkilgo]{background:#dce8ff;color:#355fac}.sb-slot-time:hover[b-takznkilgo]{background:#edf3ff}.sb-slot:has(.sb-empty-slot:not(:disabled)):hover[b-takznkilgo]{border-color:#abc3f3;background:#f9fbff}.sb-selected[b-takznkilgo]{background:#f3f7ff}.sb-content :focus-visible[b-takznkilgo]{outline:2px solid #5787ee;outline-offset:2px}
.schedule-board-modal[b-takznkilgo]  .select2-container .select2-selection--single{border:1px solid var(--sb-line)!important;border-radius:10px!important;background:#fff!important;height:40px!important;min-height:40px!important;transition:border-color .18s,box-shadow .18s}.schedule-board-modal[b-takznkilgo]  .select2-container .select2-selection__rendered{line-height:38px!important;font-size:.84rem;color:var(--sb-ink)!important;padding-inline-start:12px!important;padding-inline-end:30px!important}.schedule-board-modal[b-takznkilgo]  .select2-selection__arrow{height:38px!important}.schedule-board-modal[b-takznkilgo]  .select2-container--focus .select2-selection--single,.schedule-board-modal[b-takznkilgo]  .select2-container--open .select2-selection--single{border-color:#8dabec!important;box-shadow:0 0 0 3px #5787ee15!important}.schedule-board-modal[b-takznkilgo]  .select2-container--disabled .select2-selection--single{background:#f2f5fa!important}
.sb-row-label[b-takznkilgo]  .select2-container{display:block;width:96px!important;margin:7px auto 0}.sb-row-label[b-takznkilgo]  .select2-selection--single{height:30px!important;min-height:30px!important;background:transparent!important;border-color:transparent!important;border-radius:8px!important}.schedule-board-modal .sb-row-label[b-takznkilgo]  .select2-selection__rendered{line-height:28px!important;font-size:.66rem!important;padding-inline-start:4px!important;padding-inline-end:21px!important}.sb-row-label[b-takznkilgo]  .select2-selection__arrow{height:28px!important;width:20px!important}
.schedule-board-modal[b-takznkilgo]  .sb-select-dropdown{border:1px solid #dce5f3!important;border-radius:12px!important;overflow:hidden;box-shadow:0 12px 32px #263f6820;animation:sb-fade-b-takznkilgo .16s ease}.schedule-board-modal[b-takznkilgo]  .sb-select-dropdown .select2-results__option{padding:10px 12px!important;font-size:.82rem}.schedule-board-modal[b-takznkilgo]  .sb-select-dropdown .select2-results__option--highlighted{background:#eaf1ff!important;color:#345d9e!important}.schedule-board-modal[b-takznkilgo]  .sb-select-dropdown .select2-results__option[aria-selected=true]{background:#f3f7ff;color:#355fac}.schedule-board-modal[b-takznkilgo]  .select2-container--open{z-index:1110}
.schedule-board-modal[b-takznkilgo]  .flatpickr-calendar{z-index:1150!important;border:1px solid #dce5f3;border-radius:12px;box-shadow:0 12px 32px #263f6820;direction:ltr}.schedule-board-modal[b-takznkilgo]  .flatpickr-calendar .flatpickr-time input{font-family:inherit;color:#304562}.schedule-board-modal[b-takznkilgo]  .sb-save-alert{z-index:1200!important;direction:rtl}.schedule-board-modal[b-takznkilgo]  .sb-save-popup{font-family:inherit;border-radius:20px;padding:24px;color:#304562;box-shadow:0 24px 70px #14264733}.schedule-board-modal[b-takznkilgo]  .sb-save-popup .swal2-title{font-size:1.2rem}.schedule-board-modal[b-takznkilgo]  .sb-save-popup .swal2-html-container{font-size:.9rem;line-height:1.9}.schedule-board-modal[b-takznkilgo]  .sb-save-popup .swal2-actions{gap:10px}.sb-time-overlay[b-takznkilgo]{animation:sb-fade-b-takznkilgo .18s ease}.sb-time-dialog[b-takznkilgo]{animation:sb-fade-b-takznkilgo .18s ease}@keyframes sb-fade-b-takznkilgo{from{opacity:0}to{opacity:1}}
@media(min-width:1600px){.sb-workspace[b-takznkilgo]{--sb-bank-width:480px}}
@media(max-width:850px){.sb-header[b-takznkilgo],.sb-footer[b-takznkilgo]{padding:9px 12px}.sb-header[b-takznkilgo]{gap:10px}.sb-header-controls[b-takznkilgo]{gap:8px}.sb-header-controls .btn[b-takznkilgo]{padding:7px 9px;font-size:.75rem}.sb-workspace[b-takznkilgo]{--sb-bank-width:350px}.sb-bank[b-takznkilgo]{padding:10px 8px}.sb-settings-body[b-takznkilgo]{padding:10px 12px}}
@media(max-width:600px){.sb-header-controls .sb-action-label[b-takznkilgo]{display:none}.sb-header-controls .btn[b-takznkilgo]{width:40px;padding:7px;font-size:19px}.sb-class-field[b-takznkilgo]{flex:1;min-width:0}.sb-header-controls[b-takznkilgo]{gap:7px}.sb-workspace[b-takznkilgo]{grid-template-columns:1fr;grid-template-rows:180px minmax(0,1fr);transition:grid-template-rows .28s ease}.sb-workspace.is-bank-collapsed[b-takznkilgo]{grid-template-columns:1fr;grid-template-rows:0 minmax(0,1fr)}.sb-workspace .sb-bank[b-takznkilgo]{width:100%}.sb-workspace.is-bank-collapsed .sb-bank[b-takznkilgo]{transform:translateY(-14px)}.sb-bank[b-takznkilgo]{border-inline-end:0;border-bottom:1px solid var(--sb-line);padding:8px 10px}.sb-bank-heading[b-takznkilgo]{padding-bottom:5px}.sb-bank-scroll[b-takznkilgo]{gap:8px;padding:3px 3px 8px}.sb-lesson-card[b-takznkilgo]{min-height:112px;padding:8px 8px 0}.sb-lesson-card>strong[b-takznkilgo]{font-size:.77rem}.sb-board-toolbar[b-takznkilgo]{padding:5px 12px;font-size:.72rem}.sb-footer-status[b-takznkilgo]{font-size:.73rem}.sb-footer-status>span[b-takznkilgo]{font-size:.68rem}.sb-footer-actions .btn[b-takznkilgo]{font-size:.75rem;padding:8px}.sb-skeleton[b-takznkilgo]{grid-template-columns:1fr}.sb-skeleton aside[b-takznkilgo]{display:none}.sb-skeleton main[b-takznkilgo]{grid-template-columns:repeat(3,1fr)}.sb-settings-fields[b-takznkilgo]{gap:7px}.sb-settings-fields label[b-takznkilgo]{width:calc(50% - 7px)}}
@media(pointer:coarse){.sb-card-actions button[b-takznkilgo],.sb-icon-button[b-takznkilgo]{min-width:40px;min-height:48px}.sb-slot-time[b-takznkilgo]{min-height:48px}}
@media(prefers-reduced-motion:reduce){.sb-content *[b-takznkilgo]{animation:none!important;transition:none!important}.schedule-board-modal[b-takznkilgo]  .sb-select-dropdown,.schedule-board-modal[b-takznkilgo]  .swal2-popup{animation:none!important;transition:none!important}}
@media(max-width:1799px){.sb-header-controls .sb-action-label[b-takznkilgo]{display:none}.sb-header-controls .sb-header-action[b-takznkilgo]{width:48px;padding:7px}.sb-header-controls .sb-header-action i[b-takznkilgo]{font-size:1.2rem}}
@media(max-width:1439px){.sb-header .sb-plan-controls[b-takznkilgo]{order:3;flex:0 0 100%}.sb-header .sb-header-controls[b-takznkilgo]{flex:1}.sb-header .sb-class-field[b-takznkilgo]{flex:0 1 280px}}
@media(max-width:600px){.sb-header .sb-class-field[b-takznkilgo]{flex:1}.sb-header .sb-plan-controls[b-takznkilgo]{gap:10px;padding-bottom:3px}.sb-plan-controls .sb-mode-option[b-takznkilgo],.sb-plan-controls .sb-first-option[b-takznkilgo],.sb-plan-controls .sb-time-choice[b-takznkilgo]{font-size:.7rem;padding:7px 9px}.sb-plan-controls .sb-control-label[b-takznkilgo]{font-size:.65rem}}
.sb-class-field[b-takznkilgo]  .select2-container{width:100%!important;min-width:230px}.sb-class-field[b-takznkilgo]  .select2-container .select2-selection--single{height:48px!important;min-height:48px!important}.sb-class-field[b-takznkilgo]  .select2-container .select2-selection__rendered{line-height:46px!important}.sb-class-field[b-takznkilgo]  .select2-selection__arrow{height:46px!important}.sb-legacy-arrangement[b-takznkilgo]{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 16px;background:#fff6e4;color:#856324;font-size:.75rem;border-bottom:1px solid #efddb4}.sb-legacy-arrangement span[b-takznkilgo]{display:flex;align-items:center;gap:6px}.sb-legacy-arrangement button[b-takznkilgo]{border:1px solid #dbc18b;border-radius:8px;padding:6px 10px;background:#fff;color:#785813;white-space:nowrap}.sb-pattern-toolbar[b-takznkilgo]{flex:0 0 auto;min-width:0}.sb-plan-controls[b-takznkilgo]{overflow-x:auto;padding-bottom:2px}.sb-plan-mode-field[b-takznkilgo],.sb-first-week-field[b-takznkilgo],.sb-pattern-field[b-takznkilgo]{gap:3px}.sb-header-controls[b-takznkilgo]{padding-bottom:2px}.sb-header>.sb-icon-button[b-takznkilgo]{margin-bottom:2px}

@media(max-width:600px){.sb-class-field[b-takznkilgo]  .select2-container{min-width:0}.sb-header-controls[b-takznkilgo]{flex:1;min-width:0}.sb-class-field[b-takznkilgo]{min-width:0}.sb-legacy-arrangement[b-takznkilgo]{flex-wrap:wrap}.sb-plan-controls[b-takznkilgo]{gap:8px}}
/* /Layout/SmsCostPreviewPanel.razor.rz.scp.css */
.sms-cost-panel[b-eu4mi3b0gg]{display:grid;gap:14px;color:#203646}.sms-cost-total[b-eu4mi3b0gg]{display:grid;justify-items:center;gap:10px;padding:24px 16px;border:1px solid #d5eaf8;border-radius:20px;background:linear-gradient(120deg,#edf6fe,#f1fbfd)}.sms-cost-total>span:first-child[b-eu4mi3b0gg]{font-size:13px;color:#71818c}.sms-cost-total>strong[b-eu4mi3b0gg]{font-size:34px;font-weight:800;color:#087bc4;font-variant-numeric:tabular-nums}.sms-cost-total small[b-eu4mi3b0gg]{font-size:14px;font-weight:500}.sms-cost-status[b-eu4mi3b0gg]{display:flex;align-items:center;gap:6px;border-radius:20px;padding:5px 11px;background:#dff3ef;color:#168574;font-size:12px;font-weight:700}.sms-cost-metrics[b-eu4mi3b0gg]{display:grid;grid-template-columns:1fr 1fr;gap:12px}.sms-cost-metrics>div[b-eu4mi3b0gg]{display:grid;grid-template-columns:auto 1fr;align-items:center;column-gap:12px;border:1px solid #e5edf3;border-radius:16px;padding:14px}.sms-cost-metrics i[b-eu4mi3b0gg]{grid-row:span 2;font-size:26px;color:#087bc4}.sms-cost-metrics strong[b-eu4mi3b0gg]{font-size:23px}.sms-cost-metrics span[b-eu4mi3b0gg]{font-size:12px;color:#778792}.sms-cost-rate[b-eu4mi3b0gg]{display:flex;justify-content:space-between;font-size:12px;padding:2px 4px;color:#71818c}.sms-cost-rate strong[b-eu4mi3b0gg]{color:#30495b}.sms-cost-wallet[b-eu4mi3b0gg]{border-radius:16px;background:#f4f8fb;padding:14px}.sms-cost-wallet>div[b-eu4mi3b0gg]{display:flex;justify-content:space-between;gap:12px;font-size:12px}.sms-cost-wallet>div+div[b-eu4mi3b0gg]{border-top:1px solid #dfe9f0;margin-top:12px;padding-top:12px;color:#168574}.sms-cost-wallet strong[b-eu4mi3b0gg]{font-variant-numeric:tabular-nums}
/* /Layout/SmsRecipientSelector.razor.rz.scp.css */
.sms-recipient-selector[b-s80tm5nhvr] { border: 0; padding: 0; margin: 18px 0 4px; min-width: 0; }
.sms-recipient-selector legend[b-s80tm5nhvr] { float: none; width: auto; font-size: .86rem; font-weight: 700; margin-bottom: 10px; }
.recipient-options[b-s80tm5nhvr] { display: flex; flex-wrap: wrap; gap: 10px; }
.recipient-option[b-s80tm5nhvr] { position: relative; display: flex; align-items: center; gap: 10px; min-height: 54px; flex: 1 1 120px; padding: 12px 14px; border: 1.5px solid #e2e7f0; border-radius: 15px; background: #f8faff; cursor: pointer; transition: border-color .18s, background .18s, box-shadow .18s; }
.recipient-option:hover[b-s80tm5nhvr] { border-color: #a7adf3; }
.recipient-option.selected[b-s80tm5nhvr] { border-color: #7367f0; background: #f0eeff; box-shadow: 0 3px 12px #7367f015; color: #574bc8; }
.recipient-option input[b-s80tm5nhvr] { position: absolute; width: 1px; height: 1px; opacity: 0; }
.recipient-option:focus-within[b-s80tm5nhvr] { outline: 3px solid #7367f055; outline-offset: 3px; }
.recipient-icon[b-s80tm5nhvr] { font-size: 1.5rem; }
.recipient-option > span:not(.recipient-check)[b-s80tm5nhvr] { font-size: .9rem; font-weight: 700; }
.recipient-check[b-s80tm5nhvr] { display: grid; place-items: center; margin-inline-start: auto; width: 22px; height: 22px; border: 1.5px solid #c7ccda; border-radius: 7px; background: white; color: transparent; font-size: 1.1rem; }
.selected .recipient-check[b-s80tm5nhvr] { border-color: #7367f0; background: #7367f0; color: white; }
.sms-recipient-selector:disabled .recipient-option[b-s80tm5nhvr] { opacity: .65; cursor: default; }
.recipient-hint[b-s80tm5nhvr] { font-size: .8rem; color: #ba3c4b; margin: 8px 0 0; }
/* /Pages/Landing.razor.rz.scp.css */
.school-landing[b-500djcqgsv] {
    --ink: #172b40;
    --muted: #526578;
    --blue: #6745d5;
    --line: #dce4eb;
    --hm-ink: var(--ink);
    color: var(--ink);
    background: #fff;
    text-align: start;
    font-size: 16px;
    line-height: 1.9;
    overflow-wrap: anywhere;
}

.school-landing *[b-500djcqgsv] { box-sizing: border-box; }
.school-landing a[b-500djcqgsv] { text-decoration: none; }
.school-landing h1[b-500djcqgsv], .school-landing h2[b-500djcqgsv], .school-landing h3[b-500djcqgsv] { color: var(--ink); font-weight: 800; letter-spacing: -.035em; }
.school-landing h2[b-500djcqgsv] { font-size: clamp(1.8rem, 3vw, 2.55rem); line-height: 1.55; margin: 12px 0 20px; }
.school-landing p[b-500djcqgsv] { color: var(--muted); margin: 0; }
.hero h1:focus[b-500djcqgsv] { outline: none; }
.school-landing a:focus-visible[b-500djcqgsv], .school-landing button:focus-visible[b-500djcqgsv], .school-landing summary:focus-visible[b-500djcqgsv] { outline: 3px solid #d49b19; outline-offset: 5px; }
.school-landing section[b-500djcqgsv], .school-landing footer[b-500djcqgsv] { scroll-margin-top: 105px; }
.page-shell[b-500djcqgsv] { width: min(1180px, calc(100% - 80px)); margin-inline: auto; }
.skip-link[b-500djcqgsv] { position: absolute; top: -100px; right: 24px; padding: 8px 20px; color: #fff; background: #172b40; z-index: 50; }
.skip-link:focus[b-500djcqgsv] { top: 12px; }
.site-header[b-500djcqgsv] { position: sticky; top: 0; background: #fffffffa; border-bottom: 1px solid #e9edf1; z-index: 20; }
.header-content[b-500djcqgsv] { display: flex; align-items: center; justify-content: space-between; min-height: 94px; gap: 26px; }
.brand[b-500djcqgsv] { display: inline-flex; align-items: center; gap: 12px; flex-shrink: 0; color: var(--ink); }
.brand img[b-500djcqgsv] { object-fit: contain; }
.brand span[b-500djcqgsv], .footer-brand span[b-500djcqgsv] { display: grid; }
.brand strong[b-500djcqgsv] { font-size: 1.15rem; }
.brand small[b-500djcqgsv] { font-size: .7rem; color: var(--muted); }
.brand .brand-tagline[b-500djcqgsv] { position: relative; width: fit-content; font-weight: 700; background: linear-gradient(110deg, #355271 10%, #7655ca 40%, #226b89 65%, #355271 90%); background-size: 220% 100%; background-clip: text; -webkit-text-fill-color: transparent; animation: school-brand-shimmer-b-500djcqgsv 6s ease-in-out infinite; }
.brand-tagline[b-500djcqgsv]::after { content: ''; position: absolute; right: 0; bottom: -3px; width: 34px; height: 2px; border-radius: 2px; background: linear-gradient(to left, #7655ca80, #226b8920); }

@keyframes school-brand-shimmer-b-500djcqgsv {
    0%, 100% { background-position: 0% 50%; }
    50% { background-position: 100% 50%; }
}
.site-nav[b-500djcqgsv] { display: flex; align-items: center; gap: 27px; }
.site-nav > a[b-500djcqgsv] { color: var(--muted); font-size: .85rem; font-weight: 600; }
.site-nav > a:hover[b-500djcqgsv], .footer-bottom a:hover[b-500djcqgsv] { color: var(--blue); }
.action[b-500djcqgsv] { display: inline-flex; align-items: center; justify-content: center; gap: 12px; padding: 13px 23px; min-height: 54px; border: 1px solid transparent; border-radius: 12px; font-weight: 700; font-size: .94rem; line-height: 1.8; cursor: pointer; transition: background .2s, box-shadow .2s; }
.action i[b-500djcqgsv] { font-size: 1.3rem; }
.action-primary[b-500djcqgsv] { color: #fff; background: var(--blue); box-shadow: 0 6px 18px #1765c920; }
.action-primary:hover[b-500djcqgsv] { color: #fff; background: #1054ae; box-shadow: 0 8px 24px #1765c938; }
.action-outline[b-500djcqgsv] { color: var(--ink); background: #fff; border-color: #cbd7e1; }
.action-outline:hover[b-500djcqgsv] { color: var(--blue); border-color: var(--blue); background: #f4f8ff; }
.site-nav > .action-small[b-500djcqgsv] { min-height: 44px; padding: 9px 15px; color: var(--ink); }
.menu-toggle[b-500djcqgsv] { display: none; }
.hero[b-500djcqgsv] { --hm-ink: #fff; position: relative; isolation: isolate; color: #fff; background: #171334; background-image: radial-gradient(ellipse at 12% 25%, #3f3a8f 0%, transparent 47%), radial-gradient(ellipse at 5% 85%, #124469 0%, transparent 45%), radial-gradient(ellipse at 90% 10%, #42206490 0%, transparent 55%); overflow: hidden; }
.hero[b-500djcqgsv]::before { content: ''; position: absolute; z-index: -1; inset: 0; opacity: .28; background-image: linear-gradient(#ffffff0c 1px, transparent 1px), linear-gradient(90deg, #ffffff0c 1px, transparent 1px); background-size: 66px 66px; mask-image: linear-gradient(to left, transparent, #000); }
.hero[b-500djcqgsv]::after { content: ''; position: absolute; z-index: -1; width: 600px; height: 600px; border: 1px solid #b3b4ff18; border-radius: 50%; left: -260px; top: -200px; box-shadow: 0 0 0 75px #b3b4ff05, 0 0 0 150px #b3b4ff04; }
.hero-grid[b-500djcqgsv] { display: grid; grid-template-columns: 1.15fr 1fr; align-items: center; gap: 66px; padding-block: 64px 58px; }
.eyebrow[b-500djcqgsv] { display: inline-flex; align-items: center; gap: 9px; color: var(--blue); font-size: .82rem; font-weight: 700; }
.eyebrow-dot[b-500djcqgsv] { width: 7px; height: 7px; border-radius: 50%; background: #92e8d5; box-shadow: 0 0 0 5px #92e8d512; margin-inline-end: 4px; }
.hero .eyebrow[b-500djcqgsv] { color: #d2c7ff; border: 1px solid #d2c7ff30; border-radius: 30px; padding: 7px 14px; background: #ffffff05; }
.hero h1[b-500djcqgsv] { color: #fff; font-size: clamp(2.8rem, 4.4vw, 4rem); line-height: 1.48; margin: 20px 0 22px; }
.hero h1 span[b-500djcqgsv] { color: #a1dcff; background: linear-gradient(110deg, #96eee0, #a9c5ff 72%); background-clip: text; -webkit-text-fill-color: transparent; }
.school-landing .hero-description[b-500djcqgsv] { color: #d1cee2; max-width: 540px; font-size: 1.08rem; line-height: 2.05; }
.hero-downloads[b-500djcqgsv] { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 28px; }
.hero-download[b-500djcqgsv] { display: flex; align-items: center; justify-content: center; gap: 11px; min-height: 80px; padding: 14px; border: 1px solid #ffffff50; border-radius: 14px; line-height: 1.9; transition: background .2s, transform .2s, box-shadow .2s; }
.hero-download > span[b-500djcqgsv] { display: grid; text-align: start; }
.hero-download strong[b-500djcqgsv] { font-size: .85rem; }
.hero-download small[b-500djcqgsv] { font-size: .64rem; }
.hero-download > i:first-child[b-500djcqgsv] { font-size: 1.7rem; }
.hero-download > i:last-child[b-500djcqgsv] { font-size: 1.2rem; margin-inline-start: auto; }
.hero-download-new[b-500djcqgsv] { color: #231744; background: #fff; border-color: #fff; box-shadow: 0 8px 24px #09051b38; }
.hero-download-new small[b-500djcqgsv] { color: #645a7b; }
.hero-download-new:hover[b-500djcqgsv] { color: #231744; background: #eee8ff; transform: translateY(-3px); box-shadow: 0 10px 28px #05021460; }
.hero-download-old[b-500djcqgsv] { color: #fff; background: #ffffff0c; }
.hero-download-old small[b-500djcqgsv] { color: #d5cbe9; }
.hero-download-old:hover[b-500djcqgsv] { color: #fff; background: #ffffff20; transform: translateY(-3px); }
.hero-download:disabled[b-500djcqgsv] { cursor: wait; opacity: .75; transform: none; }
.hero-download-help[b-500djcqgsv] { color: #c3b9d7; font-size: .7rem; margin-top: 12px; }
.hero-download-help bdi[b-500djcqgsv] { margin-inline-start: 5px; }
.hero-download-error[b-500djcqgsv] { color: #ffd4c5; font-size: .74rem; margin-top: 8px; }
.hero-download-error button[b-500djcqgsv] { color: #fff; background: transparent; border: 0; text-decoration: underline; padding: 2px 8px; }
.hero-actions[b-500djcqgsv] { display: flex; align-items: center; flex-wrap: wrap; gap: 24px; margin-top: 25px; }
.action-chat[b-500djcqgsv] { position: relative; overflow: hidden; color: #fff; background: linear-gradient(120deg, #8756e8, #6054df 48%, #3564d9); border-color: #b3a7ff70; box-shadow: 0 6px 22px #6550e64a, inset 0 1px 0 #ffffff30; transition: transform .2s, box-shadow .2s, border-color .2s; }
.action-chat[b-500djcqgsv]::after { content: ''; position: absolute; top: -50%; left: -60%; width: 45%; height: 200%; background: linear-gradient(90deg, transparent, #ffffff38, transparent); transform: translateX(-260%) skewX(-20deg); animation: school-chat-sheen-b-500djcqgsv 6s ease-in-out infinite; pointer-events: none; }
.action-chat:hover[b-500djcqgsv] { color: #fff; transform: translateY(-3px); border-color: #c7cfff; box-shadow: 0 10px 30px #6656ef70, 0 0 18px #8b92ff25, inset 0 1px 0 #ffffff40; }
.action-chat:active[b-500djcqgsv] { transform: translateY(0); }

@keyframes school-chat-sheen-b-500djcqgsv {
    0%, 65% { transform: translateX(-260%) skewX(-20deg); }
    90%, 100% { transform: translateX(600%) skewX(-20deg); }
}
.hero-portal[b-500djcqgsv] { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 54px; padding: 12px 20px; border: 1px solid #d7cef570; border-radius: 12px; background: #ffffff0c; font-size: .8rem; font-weight: 700; color: #f0e9ff; line-height: 2.1; transition: background .2s, border-color .2s; }
.hero-portal:hover[b-500djcqgsv] { color: #fff; background: #ffffff20; border-color: #d7cef5b0; }
.hero-portal i[b-500djcqgsv] { vertical-align: middle; }
.hero-portal:hover strong[b-500djcqgsv] { color: var(--blue); }
.hero-footnote[b-500djcqgsv] { display: flex; flex-wrap: wrap; gap: 20px; font-size: .72rem; color: #c5bfd9; margin-top: 28px; }
.hero-footnote span[b-500djcqgsv] { display: flex; align-items: center; gap: 5px; }
.hero-footnote i[b-500djcqgsv] { color: #a1e8d6; font-size: 1rem; }
.hero-visual[b-500djcqgsv] { position: relative; min-height: 568px; display: flex; align-items: center; justify-content: center; }
.phone-orbit[b-500djcqgsv] { position: absolute; width: 455px; height: 455px; max-width: 100%; border: 1px solid #a6abff38; border-radius: 50%; background: radial-gradient(circle, #54bdf91f, #8586ff08 60%, transparent 70%); box-shadow: 0 0 80px #7971fb1a, inset 0 0 60px #43cbfb0a; }
.phone-orbit[b-500djcqgsv]::before { content: ''; position: absolute; inset: 29px; border: 1px dashed #bec2ff28; border-radius: inherit; }
.phone-frame[b-500djcqgsv] { position: relative; width: 260px; border: 7px solid #b6b7db; border-radius: 41px; overflow: hidden; background: #05314f; box-shadow: 0 32px 65px -10px #020716a0, 0 0 0 1px #ffffff30, 15px 0 70px #80c7ff17; transform: rotate(-7deg); }
.phone-frame img[b-500djcqgsv] { display: block; width: 100%; height: auto; }
.phone-frame[b-500djcqgsv] { animation: school-phone-float-b-500djcqgsv 7s ease-in-out infinite; }
.phone-orbit[b-500djcqgsv] { animation: school-orbit-turn-b-500djcqgsv 32s linear infinite; }
.orbit-comet[b-500djcqgsv] { --comet-rgb: 166, 224, 255; position: absolute; inset: 0; border-radius: 50%; }
.orbit-comet:nth-child(2)[b-500djcqgsv] { --comet-rgb: 198, 178, 255; transform: rotate(72deg); }
.orbit-comet:nth-child(3)[b-500djcqgsv] { transform: rotate(144deg); }
.orbit-comet:nth-child(4)[b-500djcqgsv] { --comet-rgb: 198, 178, 255; transform: rotate(216deg); }
.orbit-comet:nth-child(5)[b-500djcqgsv] { transform: rotate(288deg); }
.orbit-comet[b-500djcqgsv]::before { content: ''; position: absolute; inset: 0; border-radius: inherit; background: conic-gradient(transparent 0deg 318deg, rgba(var(--comet-rgb), 0) 318deg, rgba(var(--comet-rgb), .12) 330deg, rgba(var(--comet-rgb), .55) 347deg, #effaff 359deg, transparent 360deg); mask: radial-gradient(farthest-side, transparent calc(100% - 3px), #000 calc(100% - 2px)); }
.orbit-comet[b-500djcqgsv]::after { content: ''; position: absolute; top: -2px; left: 50%; width: 6px; height: 6px; transform: translateX(-50%); border-radius: 50%; background: #effaff; box-shadow: 0 0 8px 2px rgba(var(--comet-rgb), .7), 0 0 22px rgba(var(--comet-rgb), .45); }

@keyframes school-phone-float-b-500djcqgsv {
    0%, 100% { transform: translate3d(0, 0, 0) rotate(-7deg); }
    50% { transform: translate3d(0, -12px, 0) rotate(-5deg); }
}

@keyframes school-orbit-turn-b-500djcqgsv {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}
.hero-bottom[b-500djcqgsv] { display: flex; justify-content: space-between; gap: 20px; border-top: 1px solid #ffffff20; padding-block: 22px; color: #d0c9df; font-size: .75rem; }
.hero-bottom a[b-500djcqgsv] { color: #d1eaff; white-space: nowrap; }
.hero-bottom i[b-500djcqgsv] { vertical-align: middle; margin-inline-start: 6px; }
.section-block[b-500djcqgsv] { padding-block: 56px; }
.section-heading[b-500djcqgsv] { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-bottom: 24px; }
.section-heading h2[b-500djcqgsv] { font-size: 1.7rem; line-height: 1.5; margin: 3px 0 0; }
.landing-section-title[b-500djcqgsv] { display: flex; align-items: center; gap: 15px; }
.landing-section-title .eyebrow[b-500djcqgsv] { font-size: .72rem; }
.section-symbol[b-500djcqgsv] { display: grid; place-items: center; flex-shrink: 0; width: 56px; height: 56px; border: 1px solid #e6dff8; border-radius: 17px; color: #7453c9; background: linear-gradient(145deg, #f7f3ff, #ede5fb); font-size: 1.8rem; }
.section-caption[b-500djcqgsv] { display: inline-flex; align-items: center; gap: 8px; flex-shrink: 0; padding: 6px 12px; border: 1px solid #e7e3f1; border-radius: 30px; color: #65577b; background: #faf8fd; font-size: .73rem; }
.section-caption i[b-500djcqgsv] { font-size: 1.1rem; color: #8b73b7; }
.features-grid[b-500djcqgsv] { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; }
.feature-item[b-500djcqgsv] { --feature-accent: #7750ce; position: relative; padding: 22px; border: 1px solid #e4def3; border-radius: 18px; background: linear-gradient(150deg, #faf7ff, #fff); box-shadow: 0 8px 25px #3c246505; transition: transform .2s, box-shadow .2s; }
.feature-item:hover[b-500djcqgsv] { transform: translateY(-6px); box-shadow: 0 15px 35px #3c246512; }
.feature-item:nth-child(2)[b-500djcqgsv] { --feature-accent: #227b6a; background: linear-gradient(150deg, #effaf7, #fff); border-color: #d7eae4; }
.feature-item:nth-child(3)[b-500djcqgsv] { --feature-accent: #9a6a19; background: linear-gradient(150deg, #fff8ec, #fff); border-color: #eee1c9; }
.feature-item:nth-child(4)[b-500djcqgsv] { --feature-accent: #3463bb; background: linear-gradient(150deg, #eff6ff, #fff); border-color: #dbe6f3; }
.feature-card-heading[b-500djcqgsv] { display: flex; align-items: center; gap: 11px; }
.feature-icon[b-500djcqgsv] { display: grid; place-items: center; flex-shrink: 0; width: 43px; height: 43px; color: #7750ce; background: #eae0fb; border-radius: 13px; font-size: 1.55rem; }
.feature-item:nth-child(2) .feature-icon[b-500djcqgsv] { color: #227b6a; background: #dbf0e8; }
.feature-item:nth-child(3) .feature-icon[b-500djcqgsv] { color: #9a6a19; background: #faedcd; }
.feature-item:nth-child(4) .feature-icon[b-500djcqgsv] { color: #3463bb; background: #deebff; }
.feature-item h3[b-500djcqgsv] { font-size: .97rem; line-height: 1.6; margin: 0; }
.feature-item p[b-500djcqgsv] { font-size: .8rem; line-height: 1.9; margin-top: 13px; min-height: 3.8em; }
.feature-tags[b-500djcqgsv] { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 14px; }
.feature-tags span[b-500djcqgsv] { color: var(--feature-accent); background: #ffffffb8; border: 1px solid #18324b0c; border-radius: 6px; padding: 2px 8px; font-size: .64rem; font-weight: 600; }
.conversation-section[b-500djcqgsv] { --hm-ink: #fff; margin-inline: 24px; border-radius: 28px; background: #182f4b; background-image: radial-gradient(ellipse at 15% 50%, #285a7370, transparent 60%), linear-gradient(125deg, #1c3350, #252044); color: #fff; overflow: hidden; }
.conversation-grid[b-500djcqgsv] { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 80px; padding-block: 66px; }
.conversation-copy .eyebrow[b-500djcqgsv] { color: #8cd3e3; }
.conversation-copy h2[b-500djcqgsv] { color: #fff; font-size: clamp(2.2rem, 3.3vw, 3rem); }
.conversation-copy p[b-500djcqgsv] { color: #c3d3df; max-width: 490px; font-size: .95rem; line-height: 2; }
.action-white[b-500djcqgsv] { background: #fff; color: #163e5c; margin-top: 28px; }
.action-white:hover[b-500djcqgsv] { background: #e2f1fa; color: #163e5c; }
.conversation-hint[b-500djcqgsv] { display: block; color: #b8cbd9; font-size: .72rem; margin-top: 13px; }
.connection-map[b-500djcqgsv] { position: relative; width: 100%; max-width: 440px; height: 350px; justify-self: center; }
.connection-ring[b-500djcqgsv] { position: absolute; border: 1px solid #ffffff18; border-radius: 50%; top: 50%; left: 50%; transform: translate(-50%, -50%); }
.ring-outer[b-500djcqgsv] { width: 340px; height: 340px; }
.ring-inner[b-500djcqgsv] { width: 230px; height: 230px; background: #ffffff03; }
.connection-center[b-500djcqgsv] { position: absolute; width: 150px; height: 150px; top: 50%; left: 50%; transform: translate(-50%, -50%); border: 1px solid #80d7ed55; border-radius: 50%; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 12px; background: #17445e; box-shadow: 0 0 65px #67c8dd10; }
.connection-center i[b-500djcqgsv] { font-size: 3rem; color: #9ee1ed; }
.connection-center span[b-500djcqgsv] { font-size: .8rem; }
.connection-person[b-500djcqgsv] { position: absolute; display: flex; align-items: center; gap: 9px; padding: 9px 15px; border: 1px solid #ffffff26; border-radius: 11px; background: #183b54; color: #e4eef5; font-size: .8rem; }
.connection-person i[b-500djcqgsv] { color: #9bd6e5; font-size: 1.3rem; }
.person-teacher[b-500djcqgsv] { top: 22px; right: 26px; }
.person-student[b-500djcqgsv] { bottom: 24px; right: 0; }
.person-family[b-500djcqgsv] { top: 66px; left: 0; }
.person-school[b-500djcqgsv] { bottom: 38px; left: 20px; }
.audience-grid[b-500djcqgsv] { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.audience-grid article[b-500djcqgsv] { --audience-accent: #7453c9; border: 1px solid #e5dff3; padding: 22px; border-radius: 17px; background: #f9f7fd; }
.audience-grid article:nth-child(2)[b-500djcqgsv] { --audience-accent: #227b6a; border-color: #d9eae3; background: #f4faf7; }
.audience-grid article:nth-child(3)[b-500djcqgsv] { --audience-accent: #3463bb; border-color: #dce6f3; background: #f4f8fd; }
.audience-card-title[b-500djcqgsv] { display: flex; align-items: center; gap: 12px; }
.audience-icon[b-500djcqgsv] { display: grid; place-items: center; width: 45px; height: 45px; flex-shrink: 0; color: var(--audience-accent); background: #ffffffc9; border: 1px solid #18324b0a; border-radius: 13px; font-size: 1.6rem; }
.audience-label[b-500djcqgsv] { font-size: .68rem; color: var(--muted); }
.audience-grid h3[b-500djcqgsv] { font-size: 1.05rem; margin: 0; line-height: 1.6; }
.audience-grid p[b-500djcqgsv] { font-size: .82rem; line-height: 1.9; margin-top: 13px; }
.text-link[b-500djcqgsv] { display: inline-flex; align-items: center; gap: 9px; color: var(--blue); font-size: .8rem; font-weight: 700; margin-top: 21px; }
.text-link:hover[b-500djcqgsv] { color: #0d4995; }
.download-section[b-500djcqgsv] { padding-block: 0 32px; }
.download-panel[b-500djcqgsv] { display: grid; grid-template-columns: 1.1fr 1fr; gap: 66px; align-items: center; padding: 54px; background: #f0edfa; background-image: radial-gradient(ellipse at 95% 20%, #ded9f9, transparent 65%); border-radius: 24px; border: 1px solid #e0daf1; }
.download-copy h2[b-500djcqgsv] { font-size: clamp(1.7rem, 2.8vw, 2.3rem); }
.download-copy p[b-500djcqgsv] { font-size: .9rem; max-width: 450px; }
.version-label[b-500djcqgsv] { display: inline-block; color: var(--blue); font-size: .77rem; margin-top: 15px; }
.download-choices[b-500djcqgsv] { display: flex; flex-direction: column; gap: 12px; }
.download-link[b-500djcqgsv] { display: flex; align-items: center; gap: 14px; background: var(--blue); color: #fff; padding: 14px 19px; border-radius: 12px; border: 1px solid transparent; min-height: 82px; }
.download-link > i:first-child[b-500djcqgsv] { font-size: 2rem; }
.download-link > i:last-child[b-500djcqgsv] { margin-inline-start: auto; font-size: 1.4rem; }
.download-link > span[b-500djcqgsv] { display: grid; }
.download-link strong[b-500djcqgsv] { font-size: .9rem; }
.download-link small[b-500djcqgsv] { color: #e1eeff; font-size: .7rem; }
.download-link:hover[b-500djcqgsv] { color: #fff; background: #1054ae; }
.download-legacy[b-500djcqgsv] { color: var(--ink); background: #fff; border-color: #d6e0ea; }
.download-legacy small[b-500djcqgsv] { color: var(--muted); }
.download-legacy:hover[b-500djcqgsv] { color: var(--ink); background: #f8fbff; border-color: var(--blue); }
.download-help[b-500djcqgsv] { font-size: .71rem; line-height: 1.9; }
.download-status[b-500djcqgsv] { font-size: .86rem; }
.school-landing .download-error[b-500djcqgsv] { color: #9e2434; font-size: .86rem; }
.faq-section[b-500djcqgsv] { padding-block: 54px 88px; }
.faq-grid[b-500djcqgsv] { display: grid; grid-template-columns: 1fr 1.35fr; gap: 70px; }
.faq-grid h2[b-500djcqgsv] { font-size: 1.9rem; }
.faq-grid > div > p[b-500djcqgsv] { font-size: .85rem; }
.faq-list details[b-500djcqgsv] { border-bottom: 1px solid var(--line); }
.faq-list details:first-child[b-500djcqgsv] { border-top: 1px solid var(--line); }
.faq-list summary[b-500djcqgsv] { position: relative; cursor: pointer; list-style: none; font-weight: 600; font-size: .9rem; padding: 20px 0; padding-inline-end: 32px; }
.faq-list summary[b-500djcqgsv]::-webkit-details-marker { display: none; }
.faq-list summary[b-500djcqgsv]::after { content: '+'; position: absolute; left: 0; top: 18px; color: var(--blue); font-size: 1.4rem; font-weight: 400; }
.faq-list details[open] summary[b-500djcqgsv]::after { content: '−'; }
.faq-list details p[b-500djcqgsv] { font-size: .85rem; padding-bottom: 22px; line-height: 2; }
.site-footer[b-500djcqgsv] { background: #f7f9fc; border-top: 1px solid var(--line); }
.footer-top[b-500djcqgsv] { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding-block: 28px; }
.contact-heading[b-500djcqgsv] { display: flex; align-items: center; gap: 16px; }
.contact-symbol[b-500djcqgsv] { display: grid; place-items: center; width: 56px; height: 56px; flex-shrink: 0; border: 1px solid #e1dbf2; border-radius: 17px; color: #7453c9; background: linear-gradient(145deg, #f8f5ff, #eae3fa); font-size: 1.85rem; }
.footer-top h2[b-500djcqgsv] { font-size: 1.4rem; margin: 0 0 4px; }
.footer-top p[b-500djcqgsv] { font-size: .8rem; }
.support-phone[b-500djcqgsv] { display: flex; align-items: center; gap: 16px; color: var(--ink); border: 1px solid #cfdce7; background: #fff; padding: 17px 22px; border-radius: 14px; flex-shrink: 0; }
.support-icon[b-500djcqgsv] { display: grid; place-items: center; width: 47px; height: 47px; color: var(--blue); background: #edf4fc; border-radius: 50%; font-size: 1.6rem; }
.support-phone > span:nth-child(2)[b-500djcqgsv] { display: grid; }
.support-phone small[b-500djcqgsv] { font-size: .72rem; color: var(--muted); }
.support-phone bdi[b-500djcqgsv] { font-size: 1.6rem; line-height: 1.6; font-weight: 800; letter-spacing: .02em; }
.support-phone > i[b-500djcqgsv] { margin-inline-start: 18px; transform: rotate(-45deg); color: var(--blue); }
.support-phone:hover[b-500djcqgsv] { color: var(--blue); border-color: var(--blue); }
.footer-bottom[b-500djcqgsv] { display: flex; align-items: center; justify-content: space-between; gap: 25px; border-top: 1px solid var(--line); padding-block: 25px; }
.footer-brand[b-500djcqgsv] { display: flex; align-items: center; gap: 12px; }
.footer-brand img[b-500djcqgsv] { object-fit: contain; }
.footer-brand strong[b-500djcqgsv] { font-size: .9rem; }
.footer-brand small[b-500djcqgsv], .copyright[b-500djcqgsv] { font-size: .66rem; color: var(--muted); }
.footer-bottom nav[b-500djcqgsv] { display: flex; flex-wrap: wrap; gap: 23px; }
.footer-bottom a[b-500djcqgsv] { font-size: .75rem; color: var(--muted); }

@media (min-width: 1600px) {
    .hero-grid[b-500djcqgsv] { padding-block: 88px 84px; }
}

@media (max-width: 1100px) {
    .page-shell[b-500djcqgsv] { width: calc(100% - 48px); }
    .site-nav[b-500djcqgsv] { gap: 17px; }
    .site-nav > a[b-500djcqgsv] { font-size: .77rem; }
    .brand strong[b-500djcqgsv] { font-size: 1rem; }
    .hero-grid[b-500djcqgsv] { gap: 30px; }
    .hero h1[b-500djcqgsv] { font-size: 3.1rem; }
    .phone-frame[b-500djcqgsv] { width: 226px; }
    .hero-visual[b-500djcqgsv] { min-height: 510px; }
    .conversation-grid[b-500djcqgsv] { gap: 45px; }
    .download-panel[b-500djcqgsv] { padding: 38px; gap: 38px; }
    .footer-bottom[b-500djcqgsv] { flex-wrap: wrap; }
}

@media (max-width: 900px) {
    .header-content[b-500djcqgsv] { min-height: 78px; }
    .menu-toggle[b-500djcqgsv] { display: grid; place-items: center; width: 44px; height: 44px; padding: 0; border: 1px solid #d1dde7; border-radius: 10px; color: var(--ink); background: #fff; font-size: 1.8rem; }
    .site-nav[b-500djcqgsv] { display: none; position: absolute; top: 100%; right: 0; left: 0; padding: 14px 24px 22px; background: #fff; box-shadow: 0 16px 24px #152d4212; border-top: 1px solid var(--line); }
    .site-nav.is-open[b-500djcqgsv] { display: flex; flex-direction: column; align-items: stretch; gap: 0; }
    .site-nav > a[b-500djcqgsv] { padding: 11px 8px; font-size: .9rem; }
    .site-nav > .action-small[b-500djcqgsv] { margin-top: 9px; }
    .hero-grid[b-500djcqgsv] { gap: 24px; padding-block: 48px; }
    .hero h1[b-500djcqgsv] { font-size: 2.6rem; }
    .hero-description[b-500djcqgsv] { font-size: .95rem; }
    .hero-actions[b-500djcqgsv] { gap: 10px; }
    .hero-actions .action[b-500djcqgsv] { padding: 11px 16px; font-size: .8rem; }
    .hero-downloads[b-500djcqgsv] { grid-template-columns: 1fr; }
    .hero-download[b-500djcqgsv] { min-height: 68px; padding: 11px 15px; }
    .hero-footnote[b-500djcqgsv] { gap: 12px; font-size: .65rem; }
    .phone-frame[b-500djcqgsv] { width: 206px; }
    .hero-visual[b-500djcqgsv] { min-height: 475px; }
    .section-block[b-500djcqgsv] { padding-block: 48px; }
    .section-heading[b-500djcqgsv] { gap: 20px; }
    .section-heading h2[b-500djcqgsv] { font-size: 1.5rem; }
    .section-caption[b-500djcqgsv] { font-size: .67rem; padding: 5px 9px; }
    .features-grid[b-500djcqgsv] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .feature-item[b-500djcqgsv] { padding: 26px !important; }
    .conversation-grid[b-500djcqgsv] { gap: 30px; padding-block: 55px; }
    .connection-map[b-500djcqgsv] { height: 300px; }
    .ring-outer[b-500djcqgsv] { width: 280px; height: 280px; }
    .ring-inner[b-500djcqgsv] { width: 200px; height: 200px; }
    .connection-center[b-500djcqgsv] { width: 125px; height: 125px; }
    .connection-center span[b-500djcqgsv] { font-size: .66rem; }
    .connection-person[b-500djcqgsv] { font-size: .7rem; padding: 7px 10px; }
    .person-teacher[b-500djcqgsv] { right: 5px; top: 12px; }
    .person-family[b-500djcqgsv] { left: 0; top: 54px; }
    .person-student[b-500djcqgsv] { right: 0; bottom: 15px; }
    .person-school[b-500djcqgsv] { left: 0; bottom: 35px; }
    .audience-grid[b-500djcqgsv] { gap: 24px; }
    .audience-grid h3[b-500djcqgsv] { font-size: 1.1rem; }
    .download-panel[b-500djcqgsv] { gap: 26px; padding: 32px; }
    .download-link[b-500djcqgsv] { gap: 9px; padding: 12px; }
    .download-link strong[b-500djcqgsv] { font-size: .77rem; }
    .faq-grid[b-500djcqgsv] { gap: 35px; }
    .faq-grid h2[b-500djcqgsv] { font-size: 1.65rem; }
    .footer-top h2[b-500djcqgsv] { font-size: 1.3rem; }
    .support-phone[b-500djcqgsv] { padding: 14px; gap: 10px; }
    .support-phone > i[b-500djcqgsv] { margin-inline-start: 0; }
}

@media (max-width: 640px) {
    .page-shell[b-500djcqgsv] { width: calc(100% - 36px); }
    .brand img[b-500djcqgsv] { width: 43px; height: 43px; }
    .brand[b-500djcqgsv] { gap: 9px; }
    .brand small[b-500djcqgsv] { font-size: .64rem; }
    .header-content[b-500djcqgsv] { min-height: 74px; }
    .hero-grid[b-500djcqgsv] { grid-template-columns: 1fr; padding-block: 36px 28px; gap: 30px; }
    .hero-copy[b-500djcqgsv] { text-align: center; }
    .hero .eyebrow[b-500djcqgsv] { font-size: .7rem; }
    .hero h1[b-500djcqgsv] { font-size: clamp(2.3rem, 8.8vw, 3.15rem); margin-block: 18px; }
    .hero-description[b-500djcqgsv] { max-width: 420px; margin-inline: auto; font-size: .93rem; }
    .hero-actions[b-500djcqgsv] { justify-content: center; margin-top: 22px; gap: 18px; }
    .hero-actions .action[b-500djcqgsv] { padding: 12px 16px; font-size: .82rem; gap: 8px; }
    .hero-portal[b-500djcqgsv] { font-size: .76rem; margin-top: 0; }
    .hero-downloads[b-500djcqgsv] { grid-template-columns: 1fr 1fr; gap: 9px; margin-top: 24px; }
    .hero-download[b-500djcqgsv] { padding: 13px 10px; gap: 8px; min-height: 82px; }
    .hero-download strong[b-500djcqgsv] { font-size: .77rem; }
    .hero-download small[b-500djcqgsv] { font-size: .6rem; }
    .hero-download > i:first-child[b-500djcqgsv] { font-size: 1.4rem; }
    .hero-download > i:last-child[b-500djcqgsv] { display: none; }
    .hero-download-help[b-500djcqgsv] { font-size: .66rem; }
    .hero-footnote[b-500djcqgsv] { justify-content: center; margin-top: 24px; gap: 17px; }
    .hero-visual[b-500djcqgsv] { width: min(360px, 100%); justify-self: center; min-height: 450px; }
    .phone-frame[b-500djcqgsv] { width: 202px; border-width: 6px; border-radius: 32px; }
    .phone-orbit[b-500djcqgsv] { width: 320px; height: 320px; }
    .hero-bottom[b-500djcqgsv] { flex-direction: column; align-items: center; text-align: center; gap: 7px; font-size: .66rem; padding-block: 18px; }
    .section-block[b-500djcqgsv] { padding-block: 40px; }
    .section-heading[b-500djcqgsv] { flex-direction: column; align-items: stretch; gap: 11px; margin-bottom: 20px; }
    .school-landing h2[b-500djcqgsv] { font-size: 1.85rem; }
    .section-heading h2[b-500djcqgsv] { font-size: 1.35rem; margin: 3px 0 0; }
    .landing-section-title[b-500djcqgsv] { gap: 12px; }
    .section-symbol[b-500djcqgsv] { width: 47px; height: 47px; border-radius: 14px; font-size: 1.55rem; }
    .section-caption[b-500djcqgsv] { align-self: start; margin-inline-start: 59px; font-size: .65rem; }
    .features-grid[b-500djcqgsv] { gap: 12px; }
    .feature-item[b-500djcqgsv] { padding: 22px 14px !important; border-radius: 16px; }
    .feature-item h3[b-500djcqgsv] { font-size: .92rem; }
    .feature-item p[b-500djcqgsv] { font-size: .78rem; }
    .feature-card-heading[b-500djcqgsv] { gap: 8px; }
    .feature-icon[b-500djcqgsv] { width: 36px; height: 36px; font-size: 1.3rem; border-radius: 11px; }
    .feature-tags[b-500djcqgsv] { gap: 5px; margin-top: 12px; }
    .feature-tags span[b-500djcqgsv] { padding: 2px 6px; font-size: .6rem; }
    .conversation-section[b-500djcqgsv] { margin-inline: 10px; border-radius: 20px; }
    .conversation-grid[b-500djcqgsv] { grid-template-columns: 1fr; gap: 24px; padding-block: 36px 25px; }
    .conversation-copy h2[b-500djcqgsv] { font-size: 2.4rem; }
    .conversation-copy p[b-500djcqgsv] { font-size: .88rem; }
    .connection-map[b-500djcqgsv] { max-width: 330px; height: 300px; }
    .connection-center[b-500djcqgsv] { width: 130px; height: 130px; }
    .audience-grid[b-500djcqgsv] { grid-template-columns: 1fr; gap: 14px; }
    .audience-grid article[b-500djcqgsv] { padding: 18px; }
    .audience-grid h3[b-500djcqgsv] { font-size: 1.1rem; margin: 0; }
    .text-link[b-500djcqgsv] { margin-top: 13px; }
    .download-section[b-500djcqgsv] { padding-bottom: 0; }
    .download-panel[b-500djcqgsv] { grid-template-columns: 1fr; padding: 27px 20px; gap: 24px; border-radius: 17px; }
    .school-landing .download-copy h2[b-500djcqgsv] { font-size: 1.75rem; }
    .download-link[b-500djcqgsv] { padding: 14px; }
    .download-link strong[b-500djcqgsv] { font-size: .86rem; }
    .version-label[b-500djcqgsv] { margin-top: 10px; }
    .faq-section[b-500djcqgsv] { padding-block: 48px; }
    .faq-grid[b-500djcqgsv] { grid-template-columns: 1fr; gap: 24px; }
    .faq-grid h2[b-500djcqgsv] { margin-bottom: 10px; }
    .faq-list summary[b-500djcqgsv] { font-size: .86rem; }
    .footer-top[b-500djcqgsv] { flex-direction: column; align-items: stretch; padding-block: 26px; gap: 20px; }
    .contact-heading[b-500djcqgsv] { gap: 12px; }
    .contact-symbol[b-500djcqgsv] { width: 47px; height: 47px; border-radius: 14px; font-size: 1.55rem; }
    .school-landing .footer-top h2[b-500djcqgsv] { font-size: 1.3rem; }
    .footer-top p[b-500djcqgsv] { font-size: .73rem; }
    .support-phone[b-500djcqgsv] { justify-content: center; align-self: start; padding: 14px 20px; gap: 16px; }
    .footer-bottom[b-500djcqgsv] { flex-direction: column; align-items: start; gap: 20px; padding-block: 25px; }
    .footer-bottom nav[b-500djcqgsv] { gap: 22px; }
}

@media (prefers-reduced-motion: reduce) {
    .school-landing *[b-500djcqgsv], .school-landing *[b-500djcqgsv]::before, .school-landing *[b-500djcqgsv]::after { transition: none !important; animation: none !important; }
}
/* /Pages/ManagerAbsenceSms.razor.rz.scp.css */
.sms-toolbar-row[b-1m4jd0zpbp] {
    display: flex;
    align-items: center;
    gap: .85rem;
}
.date-control-wrap[b-1m4jd0zpbp] {
    display: flex;
    align-items: center;
    gap: .45rem;
}

.toolbar-field label[b-1m4jd0zpbp] {
    display: block;
    margin-bottom: .3rem;
    color: var(--bs-secondary-color);
    font-size: .72rem;
    font-weight: 700;
}

.date-field[b-1m4jd0zpbp] {
    width: 226px;
    min-width: 0;
}

.date-control-wrap .form-control[b-1m4jd0zpbp],
.date-control-wrap .input-group-text[b-1m4jd0zpbp],
.date-arrow[b-1m4jd0zpbp],
.today-button[b-1m4jd0zpbp] {
    min-height: 42px;
    height: 42px;
}

.date-control-wrap .form-control[b-1m4jd0zpbp] {
    padding-block: .45rem;
    font-size: .9rem;
}

.date-control-wrap .input-group-text[b-1m4jd0zpbp] {
    width: 42px;
    justify-content: center;
    padding: 0;
}

.date-arrow[b-1m4jd0zpbp] {
    display: grid;
    width: 42px;
    min-width: 42px;
    margin-bottom: 0;
    place-items: center;
    padding: 0;
    border: 1px solid var(--bs-border-color);
    background: var(--bs-card-bg);
}

.date-arrow i[b-1m4jd0zpbp] { font-size: 1.05rem; }
.today-button[b-1m4jd0zpbp] {
    min-width: 74px;
    margin-bottom: 0;
    padding-inline: .85rem;
    white-space: nowrap;
}

@media (max-width: 575.98px) {
    .sms-toolbar-row[b-1m4jd0zpbp] { align-items: stretch; flex-direction: column; }
    .date-control-wrap[b-1m4jd0zpbp] {
        display: grid;
        width: 100%;
        grid-template-columns: 42px minmax(128px, 1fr) 42px auto;
    }
    .date-field[b-1m4jd0zpbp] { width: auto; }
    .send-all-wrap[b-1m4jd0zpbp] { width: 100%; margin-inline-start: 0 !important; }
}

@media (max-width: 359.98px) {
    .date-control-wrap[b-1m4jd0zpbp] { gap: .3rem; grid-template-columns: 38px minmax(110px, 1fr) 38px auto; }
    .date-arrow[b-1m4jd0zpbp] { width: 38px; min-width: 38px; }
    .today-button[b-1m4jd0zpbp] { min-width: 62px; padding-inline: .55rem; }
}

.absence-card-grid > [class*="col-"][b-1m4jd0zpbp] {
    display: flex;
}

.absence-sms-card[b-1m4jd0zpbp] {
    width: 100%;
    overflow: hidden;
    border: 1px solid #dfe9f3;
    border-radius: 22px;
    background: #fff;
    box-shadow: 0 12px 30px rgba(36, 54, 83, .065);
    transition: transform .2s ease, box-shadow .2s ease;
}

.absence-sms-card:hover[b-1m4jd0zpbp] {
    transform: translateY(-2px);
    box-shadow: 0 18px 34px rgba(36, 54, 83, .1);
}

.absence-sms-card .card-body[b-1m4jd0zpbp] {
    padding: 0 1.25rem 1.25rem;
}

.absence-card-header[b-1m4jd0zpbp] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    padding: 1.2rem 0 1rem;
}

.absence-card-person[b-1m4jd0zpbp] {
    display: flex;
    align-items: center;
    min-width: 0;
    gap: .75rem;
}

.absence-student-avatar[b-1m4jd0zpbp] {
    display: grid;
    width: 50px;
    height: 50px;
    flex: 0 0 50px;
    place-items: center;
    border: 1px solid #d8e8fb;
    border-radius: 17px;
    background: linear-gradient(145deg, #eef7ff, #e7efff);
    color: #2562a2;
    font-size: .95rem;
    font-weight: 900;
}

.absence-student-copy[b-1m4jd0zpbp] {
    min-width: 0;
}

.absence-eyebrow[b-1m4jd0zpbp],
.absence-content-label[b-1m4jd0zpbp],
.absence-section-heading span[b-1m4jd0zpbp],
.absence-meta-item small[b-1m4jd0zpbp] {
    color: #8a98aa;
    font-size: .68rem;
    font-weight: 800;
}

.absence-student-copy h6[b-1m4jd0zpbp] {
    overflow: hidden;
    margin: .2rem 0 0;
    color: #223653;
    font-size: 1rem;
    font-weight: 900;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.absence-record-badge[b-1m4jd0zpbp] {
    display: inline-flex;
    align-items: center;
    gap: .3rem;
    flex-shrink: 0;
    padding: .42rem .62rem;
    border: 1px solid #e2eafa;
    border-radius: 999px;
    background: #f7f8ff;
    color: #6571bb;
    font-size: .68rem;
    font-weight: 800;
}

.absence-record-badge i[b-1m4jd0zpbp] {
    font-size: .95rem;
}

.absence-card-recipient-panel[b-1m4jd0zpbp] {
    padding: .85rem;
    border: 1px solid #e5eef7;
    border-radius: 16px;
    background: linear-gradient(145deg, #f9fcff, #f4f8fd);
}

.absence-section-heading[b-1m4jd0zpbp] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    margin-bottom: .65rem;
}

.absence-section-heading span[b-1m4jd0zpbp] {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
}

.absence-section-heading span i[b-1m4jd0zpbp] {
    color: #4b83bd;
    font-size: 1.05rem;
}

.absence-section-heading strong[b-1m4jd0zpbp] {
    color: #345d86;
    font-size: .72rem;
    font-weight: 900;
}

.absence-recipient-chips[b-1m4jd0zpbp] {
    display: flex;
    flex-wrap: wrap;
    gap: .45rem;
}

.absence-recipient-chip[b-1m4jd0zpbp] {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    padding: .38rem .55rem;
    border: 1px solid #e0e8f0;
    border-radius: 10px;
    background: #fff;
}

.absence-recipient-chip-name[b-1m4jd0zpbp] {
    color: #34475f;
    font-size: .72rem;
    font-weight: 900;
}

.absence-recipient-chip-state[b-1m4jd0zpbp] {
    font-size: .63rem;
    font-weight: 800;
}

.absence-recipient-chip.is-valid[b-1m4jd0zpbp] {
    border-color: #d8eee4;
    background: #f8fffb;
}

.absence-recipient-chip.is-valid .absence-recipient-chip-state[b-1m4jd0zpbp] {
    color: #239065;
}

.absence-recipient-chip.is-invalid[b-1m4jd0zpbp] {
    border-color: #f0e2dd;
    background: #fffafa;
}

.absence-recipient-chip.is-invalid .absence-recipient-chip-state[b-1m4jd0zpbp] {
    color: #bd7a6a;
}

.absence-card-meta[b-1m4jd0zpbp] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .65rem;
    margin-top: .85rem;
}

.absence-meta-item[b-1m4jd0zpbp] {
    display: flex;
    align-items: flex-start;
    min-width: 0;
    gap: .45rem;
    padding: .65rem .7rem;
    border: 1px solid #edf1f7;
    border-radius: 13px;
    background: #fff;
}

.absence-meta-item i[b-1m4jd0zpbp] {
    margin-top: .15rem;
    color: #5879b9;
    font-size: 1rem;
    flex-shrink: 0;
}

.absence-meta-item span[b-1m4jd0zpbp] {
    display: grid;
    gap: .12rem;
    min-width: 0;
}

.absence-meta-item strong[b-1m4jd0zpbp] {
    overflow: hidden;
    color: #263752;
    font-size: .78rem;
    font-weight: 800;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.absence-card-content[b-1m4jd0zpbp] {
    display: grid;
    gap: .65rem;
    margin-top: .85rem;
}

.absence-content-block[b-1m4jd0zpbp] {
    padding: .8rem .85rem;
    border-radius: 14px;
}

.absence-content-label[b-1m4jd0zpbp] {
    display: block;
    margin-bottom: .3rem;
}

.absence-content-block p[b-1m4jd0zpbp] {
    margin: 0;
    color: #293a52;
    font-size: .82rem;
    font-weight: 800;
    line-height: 1.8;
}

.absence-title-block[b-1m4jd0zpbp] {
    border: 1px solid #e4ecfa;
    background: #f7faff;
}

.absence-title-block p[b-1m4jd0zpbp] {
    color: #2d5f9b;
}

.absence-description-block[b-1m4jd0zpbp] {
    border: 1px solid #f0e9e5;
    background: #fffaf8;
}

.absence-description-block p[b-1m4jd0zpbp] {
    color: #7c5b51;
    font-weight: 700;
}

.absence-card-footer[b-1m4jd0zpbp] {
    display: grid;
    gap: .7rem;
    margin-top: 1rem;
    padding-top: .9rem !important;
    border-top: 1px solid #edf1f7;
}

.absence-card-status[b-1m4jd0zpbp] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
}

.absence-card-status-label[b-1m4jd0zpbp] {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    color: #7a879b;
    font-size: .72rem;
    font-weight: 700;
}

.absence-card-status-label i[b-1m4jd0zpbp] {
    color: #708bc0;
    font-size: 1rem;
}

.absence-card-actions[b-1m4jd0zpbp] {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
}

.absence-card-actions .btn[b-1m4jd0zpbp] {
    min-height: 38px;
    flex: 1 1 150px;
    font-size: .75rem;
    font-weight: 700;
}

.absence-recipient-state[b-1m4jd0zpbp] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .35rem;
    min-height: 38px;
    padding: .45rem .75rem;
    border: 1px solid #e3e8f0;
    border-radius: .375rem;
    color: #8591a3;
    font-size: .73rem;
    font-weight: 700;
    flex: 1 1 210px;
}

.absence-recipient-state i[b-1m4jd0zpbp] { font-size: 1rem; }

@media (max-width: 575.98px) {
    .sms-toolbar-row[b-1m4jd0zpbp] { align-items: stretch; flex-direction: column; }
    .date-control-wrap[b-1m4jd0zpbp] {
        display: grid;
        width: 100%;
        grid-template-columns: 42px minmax(128px, 1fr) 42px auto;
    }
    .date-field[b-1m4jd0zpbp] { width: auto; }
    .send-all-wrap[b-1m4jd0zpbp] { width: 100%; margin-inline-start: 0 !important; }
}

@media (max-width: 359.98px) {
    .date-control-wrap[b-1m4jd0zpbp] { gap: .3rem; grid-template-columns: 38px minmax(110px, 1fr) 38px auto; }
    .date-arrow[b-1m4jd0zpbp] { width: 38px; min-width: 38px; }
    .today-button[b-1m4jd0zpbp] { min-width: 62px; padding-inline: .55rem; }
}

@media (max-width: 575.98px) {
    .absence-sms-card .card-body[b-1m4jd0zpbp] { padding: 0 .9rem .9rem; }
    .absence-card-header[b-1m4jd0zpbp] { gap: .5rem; }
    .absence-record-badge[b-1m4jd0zpbp] { padding-inline: .5rem; font-size: .62rem; }
    .absence-card-meta[b-1m4jd0zpbp] { grid-template-columns: minmax(0, 1fr); }
    .absence-card-status[b-1m4jd0zpbp] { align-items: flex-start; flex-direction: column; gap: .45rem; }
    .absence-card-actions .btn[b-1m4jd0zpbp],
    .absence-recipient-state[b-1m4jd0zpbp] { flex-basis: 100%; width: 100%; }
}
/* /Pages/ManagerChat.razor.rz.scp.css */
/* ══════════════════════════════════════════════════════════════
   Manager School Conversation Rooms Directory Styles
   Scoped specifically to Pages/ManagerChat.razor
   ══════════════════════════════════════════════════════════════ */

.hm-chat-directory[b-roz64nqu0y] {
    max-width: 100%;
    overflow-x: hidden;
    font-family: inherit;
}

/* ──────────────────────────────────────────────────────────────
   Header: Dark Navy / Indigo Identity Panel
   ────────────────────────────────────────────────────────────── */
.hm-directory-header[b-roz64nqu0y] {
    background: linear-gradient(135deg, #1A2234 0%, #283144 100%);
    color: #FFFFFF;
    border-radius: 10px;
    padding: 0.875rem 1.25rem;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.08);
}

.hm-header-icon[b-roz64nqu0y] {
    width: 38px;
    height: 38px;
    border-radius: 8px;
    background: rgba(1, 117, 194, 0.35);
    color: #38BDF8;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.35rem;
    flex-shrink: 0;
}

.hm-header-title[b-roz64nqu0y] {
    color: #FFFFFF;
    font-size: 1.15rem;
    font-weight: 700;
    line-height: 1.4;
}

.hm-header-badge[b-roz64nqu0y] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    background: rgba(255, 255, 255, 0.12);
    color: #E2E8F0;
    border-radius: 6px;
    padding: 0.25rem 0.6rem;
    font-size: 0.8rem;
    line-height: 1.4;
    white-space: nowrap;
}

.hm-header-badge i[b-roz64nqu0y] {
    font-size: 0.95rem;
    color: #94A3B8;
}

.hm-count-badge[b-roz64nqu0y] {
    background: rgba(1, 117, 194, 0.45);
    color: #BAE6FD;
    font-weight: 600;
}

/* ──────────────────────────────────────────────────────────────
   View Switch Navigation Tabs
   ────────────────────────────────────────────────────────────── */
.hm-view-nav[b-roz64nqu0y] {
    border-bottom: 1px solid #E2E8F0;
    padding-bottom: 0.5rem;
}

.hm-view-tab[b-roz64nqu0y] {
    min-height: 40px;
    padding: 0.4rem 1rem;
    font-size: 0.85rem;
    font-weight: 600;
    border-radius: 6px;
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
}

/* ──────────────────────────────────────────────────────────────
   Search and Filter Toolbar
   ────────────────────────────────────────────────────────────── */
.hm-search-toolbar[b-roz64nqu0y] {
    background: #FFFFFF;
    border: 1px solid #E2E8F0;
    border-radius: 8px;
    padding: 0.75rem 1rem;
    box-shadow: 0 1px 3px rgba(15, 23, 42, 0.03);
}

.hm-search-field[b-roz64nqu0y] {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
}

.hm-search-icon[b-roz64nqu0y] {
    position: absolute;
    right: 0.75rem;
    color: #94A3B8;
    font-size: 1.15rem;
    pointer-events: none;
}

.hm-input[b-roz64nqu0y] {
    min-height: 44px;
    padding-right: 2.35rem;
    padding-left: 2rem;
    border-radius: 6px;
    border: 1px solid #CBD5E1;
    font-size: 0.875rem;
    color: #1E293B;
}

.hm-input:focus[b-roz64nqu0y] {
    border-color: #0175C2;
    box-shadow: 0 0 0 3px rgba(1, 117, 194, 0.15);
}

.hm-search-clear[b-roz64nqu0y] {
    position: absolute;
    left: 0.75rem;
    background: none;
    border: none;
    color: #94A3B8;
    font-size: 1.1rem;
    cursor: pointer;
    padding: 0;
    line-height: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
}

.hm-search-clear:hover[b-roz64nqu0y] {
    color: #475569;
}

.hm-select[b-roz64nqu0y] {
    min-height: 44px;
    border-radius: 6px;
    border: 1px solid #CBD5E1;
    font-size: 0.875rem;
    color: #1E293B;
}

.hm-select:focus[b-roz64nqu0y] {
    border-color: #0175C2;
    box-shadow: 0 0 0 3px rgba(1, 117, 194, 0.15);
}

.hm-toolbar-meta[b-roz64nqu0y] {
    font-size: 0.85rem;
}

.hm-clear-filters-btn[b-roz64nqu0y] {
    color: #0175C2;
    font-weight: 500;
    cursor: pointer;
}

.hm-clear-filters-btn:hover[b-roz64nqu0y] {
    color: #0284C7;
    text-decoration: underline !important;
}

/* ──────────────────────────────────────────────────────────────
   Group Header
   ────────────────────────────────────────────────────────────── */
.hm-group-header[b-roz64nqu0y] {
    border-bottom: 2px solid #E2E8F0;
    padding-bottom: 0.4rem;
}

.hm-group-title[b-roz64nqu0y] {
    font-size: 0.95rem;
    color: #1E293B;
}

.hm-group-badge[b-roz64nqu0y] {
    font-size: 0.75rem;
    padding: 0.25rem 0.5rem;
}

/* ──────────────────────────────────────────────────────────────
   Room List & Semantic Row Buttons
   ────────────────────────────────────────────────────────────── */
.hm-room-list[b-roz64nqu0y] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.hm-room-row[b-roz64nqu0y] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    width: 100%;
    min-height: 48px;
    padding: 0.65rem 0.875rem;
    background-color: #FFFFFF;
    border: 1px solid #E2E8F0;
    border-radius: 8px;
    text-align: right;
    font-family: inherit;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
    outline: none;
    user-select: none;
}

.hm-room-row:hover:not(:disabled)[b-roz64nqu0y] {
    background-color: #F8FAFC;
    border-color: #94A3B8;
    box-shadow: 0 1px 4px rgba(15, 23, 42, 0.05);
}

.hm-room-row:focus-visible[b-roz64nqu0y] {
    outline: 2px solid #0175C2;
    outline-offset: 2px;
    border-color: #0175C2;
}

.hm-room-row:disabled[b-roz64nqu0y] {
    opacity: 0.6;
    cursor: not-allowed;
    background-color: #F1F5F9;
    border-color: #E2E8F0;
}

.hm-room-icon-box[b-roz64nqu0y] {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    background-color: #F1F5F9;
    color: #0175C2;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
    flex-shrink: 0;
    transition: background-color 0.15s ease, color 0.15s ease;
}

.hm-room-row:hover:not(:disabled) .hm-room-icon-box[b-roz64nqu0y] {
    background-color: #E0F2FE;
    color: #0284C7;
}

.hm-room-main-info[b-roz64nqu0y] {
    flex: 1 1 auto;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
}

.hm-room-title-line[b-roz64nqu0y] {
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 0.4rem;
}

.hm-room-primary-title[b-roz64nqu0y] {
    font-size: 0.925rem;
    color: #0F172A;
    line-height: 1.35;
}

.hm-room-secondary-title[b-roz64nqu0y] {
    color: #64748B;
    font-size: 0.8rem;
    line-height: 1.35;
}

.hm-room-context-line[b-roz64nqu0y] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.35rem;
    color: #64748B;
    font-size: 0.775rem;
    line-height: 1.35;
}

.hm-room-meta-item[b-roz64nqu0y] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
}

.hm-room-bullet[b-roz64nqu0y] {
    color: #CBD5E1;
}

.hm-room-action[b-roz64nqu0y] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    color: #0175C2;
    font-size: 0.825rem;
    font-weight: 600;
    flex-shrink: 0;
    transition: color 0.15s ease, transform 0.15s ease;
}

.hm-room-action-text[b-roz64nqu0y] {
    display: none;
}

@media (min-width: 576px) {
    .hm-room-action-text[b-roz64nqu0y] {
        display: inline;
    }
}

.hm-room-chevron[b-roz64nqu0y] {
    font-size: 1.25rem;
    transition: transform 0.15s ease;
}

.hm-room-row:hover:not(:disabled) .hm-room-chevron[b-roz64nqu0y] {
    transform: translateX(-3px);
}

/* ──────────────────────────────────────────────────────────────
   No Results State
   ────────────────────────────────────────────────────────────── */
.hm-no-results-box[b-roz64nqu0y] {
    background: #FFFFFF;
    border: 1px dashed #CBD5E1;
    border-radius: 8px;
    padding: 2.5rem 1rem;
}

.hm-no-results-icon[b-roz64nqu0y] {
    font-size: 2.5rem;
    color: #94A3B8;
}

.hm-reset-button[b-roz64nqu0y] {
    min-height: 38px;
    padding: 0.375rem 1rem;
}

/* ──────────────────────────────────────────────────────────────
   Accessible Skeleton Loading State
   ────────────────────────────────────────────────────────────── */
.hm-skeleton-shell[b-roz64nqu0y] {
    width: 100%;
}

.hm-skeleton-card[b-roz64nqu0y] {
    background: linear-gradient(90deg, #F1F5F9 25%, #E2E8F0 50%, #F1F5F9 75%);
    background-size: 200% 100%;
    animation: hm-shimmer-b-roz64nqu0y 1.5s infinite;
    border-radius: 8px;
}

.hm-skeleton-header[b-roz64nqu0y] {
    height: 72px;
    width: 100%;
}

.hm-skeleton-toolbar[b-roz64nqu0y] {
    height: 60px;
    width: 100%;
}

.hm-skeleton-row[b-roz64nqu0y] {
    height: 52px;
    width: 100%;
}

@keyframes hm-shimmer-b-roz64nqu0y {
    0% {
        background-position: 200% 0;
    }
    100% {
        background-position: -200% 0;
    }
}

/* ──────────────────────────────────────────────────────────────
   Dark Theme Overrides
   ────────────────────────────────────────────────────────────── */
html.dark-style .hm-search-toolbar[b-roz64nqu0y],
html.dark-style .hm-room-row[b-roz64nqu0y],
html.dark-style .hm-no-results-box[b-roz64nqu0y] {
    background: #283144;
    border-color: #36445D;
}

html.dark-style .hm-group-title[b-roz64nqu0y],
html.dark-style .hm-room-primary-title[b-roz64nqu0y] {
    color: #D8DEEA !important;
}

html.dark-style .hm-room-secondary-title[b-roz64nqu0y],
html.dark-style .hm-room-context-line[b-roz64nqu0y],
html.dark-style .hm-result-counter[b-roz64nqu0y] {
    color: #8295BA !important;
}

html.dark-style .hm-group-header[b-roz64nqu0y] {
    border-bottom-color: #36445D;
}

html.dark-style .hm-room-row:hover:not(:disabled)[b-roz64nqu0y] {
    background: #222A3A;
    border-color: #44536F;
}

html.dark-style .hm-room-icon-box[b-roz64nqu0y] {
    background: #222A3A;
    color: #5A8DEE;
}

html.dark-style .hm-room-row:disabled[b-roz64nqu0y] {
    background: #1E2533;
    border-color: #36445D;
}

html.dark-style .hm-input[b-roz64nqu0y],
html.dark-style .hm-select[b-roz64nqu0y] {
    background-color: #222A3A;
    border-color: #44536F;
    color: #D8DEEA;
}

html.dark-style .hm-input:focus[b-roz64nqu0y],
html.dark-style .hm-select:focus[b-roz64nqu0y] {
    border-color: #5A8DEE;
}

html.dark-style .hm-skeleton-card[b-roz64nqu0y] {
    background: linear-gradient(90deg, #222A3A 25%, #283144 50%, #222A3A 75%);
    background-size: 200% 100%;
}
/* /Pages/ManagerDiscipline.razor.rz.scp.css */
.discipline-workflow[b-nl6sv5jgnq] {
    --discipline-blue: #3565bc;
    --discipline-ink: #243653;
    --discipline-muted: #718099;
    --discipline-line: #e5ebf4;
    max-width: 1180px;
    margin: 0 auto;
    color: var(--discipline-ink);
}
.discipline-heading[b-nl6sv5jgnq] { display: flex; align-items: center; gap: 16px; margin: 8px 0 24px; }
.heading-icon[b-nl6sv5jgnq] { display: grid; place-items: center; width: 58px; height: 58px; border-radius: 18px; background: #e9f0fe; color: var(--discipline-blue); font-size: 29px; flex-shrink: 0; }
.heading-copy[b-nl6sv5jgnq] { min-width: 0; }
.heading-eyebrow[b-nl6sv5jgnq] { display: block; font-size: .73rem; color: var(--discipline-muted); margin-bottom: 5px; }
.discipline-heading h4[b-nl6sv5jgnq] { margin: 0 0 7px; font-size: 1.35rem; font-weight: 800; color: var(--discipline-ink); }
.discipline-heading p[b-nl6sv5jgnq], .panel-title p[b-nl6sv5jgnq] { margin: 0; color: var(--discipline-muted); font-size: .84rem; line-height: 1.8; }
.discipline-context[b-nl6sv5jgnq] { margin-inline-start: auto; display: grid; gap: 6px; padding: 10px 14px; border: 1px solid var(--discipline-line); border-radius: 13px; background: #fff; flex-shrink: 0; font-size: .8rem; }
.discipline-context small[b-nl6sv5jgnq] { color: var(--discipline-muted); font-size: .75rem; }
.discipline-context i[b-nl6sv5jgnq] { margin-inline-end: 4px; }
.discipline-timeline[b-nl6sv5jgnq] { list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); padding: 7px; margin: 0 0 20px; gap: 8px; border: 1px solid var(--discipline-line); border-radius: 18px; background: #f3f6fb; }
.discipline-timeline li[b-nl6sv5jgnq] { display: flex; align-items: center; gap: 12px; padding: 12px 16px; border-radius: 12px; color: var(--discipline-muted); }
.step-marker[b-nl6sv5jgnq] { width: 34px; height: 34px; border-radius: 11px; display: grid; place-items: center; background: #e5ebf5; font-size: .95rem; font-weight: 800; flex-shrink: 0; }
.step-copy[b-nl6sv5jgnq] { display: grid; gap: 4px; }
.discipline-timeline strong[b-nl6sv5jgnq] { font-size: .86rem; }
.discipline-timeline small[b-nl6sv5jgnq] { font-size: .72rem; }
.discipline-timeline li.active[b-nl6sv5jgnq] { background: #fff; color: var(--discipline-blue); box-shadow: 0 3px 10px #2436530a; }
.active .step-marker[b-nl6sv5jgnq] { background: var(--discipline-blue); color: #fff; }
.discipline-timeline li.completed[b-nl6sv5jgnq] { color: #25826a; }
.completed .step-marker[b-nl6sv5jgnq] { background: #dff2eb; color: #25826a; }
.discipline-panel[b-nl6sv5jgnq] { background: #fff; border: 1px solid var(--discipline-line); border-radius: 22px; padding: 26px; box-shadow: 0 8px 32px #24365305; }
.panel-title[b-nl6sv5jgnq] { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 22px; }
.panel-title h5[b-nl6sv5jgnq] { color: var(--discipline-ink); font-size: 1.05rem; font-weight: 800; margin: 0 0 7px; }
.selected-count[b-nl6sv5jgnq] { display: inline-flex; align-items: center; gap: 6px; background: #edf3ff; color: var(--discipline-blue); padding: 10px 13px; border-radius: 12px; white-space: nowrap; font-size: .8rem; font-weight: 700; }
.discipline-filter-panel[b-nl6sv5jgnq] { border: 1px solid var(--discipline-line); background: #f8fafd; padding: 18px; border-radius: 16px; margin-bottom: 20px; }
.filter-panel-heading[b-nl6sv5jgnq], .selection-heading[b-nl6sv5jgnq] { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 14px; font-size: .8rem; font-weight: 700; }
.filter-panel-heading > span[b-nl6sv5jgnq], .selection-heading > span[b-nl6sv5jgnq] { display: inline-flex; align-items: center; gap: 6px; }
.filter-reset[b-nl6sv5jgnq] { border: 0; background: transparent; color: var(--discipline-muted); font-size: .76rem; padding: 4px 2px; cursor: pointer; }
.filter-reset:hover[b-nl6sv5jgnq] { color: var(--discipline-blue); }
.discipline-filters[b-nl6sv5jgnq] { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1.5fr); align-items: start; gap: 14px; }
.discipline-filters.with-major[b-nl6sv5jgnq] { grid-template-columns: repeat(3, minmax(0, 1fr)) minmax(0, 1.5fr); }
.discipline-filters label[b-nl6sv5jgnq], .date-label[b-nl6sv5jgnq], .text-label[b-nl6sv5jgnq] { display: flex; flex-direction: column; gap: 8px; font-weight: 600; font-size: .8rem; color: var(--discipline-ink); }
.discipline-filters .form-select[b-nl6sv5jgnq], .discipline-filters .form-control[b-nl6sv5jgnq], .incident-compose[b-nl6sv5jgnq]  .form-control { min-height: 44px; font-size: .83rem; border: 1px solid #dce4ef; border-radius: 10px; color: var(--discipline-ink); background-color: #fff; box-shadow: none; }
.discipline-filters .form-select:focus[b-nl6sv5jgnq], .search-row:focus-within[b-nl6sv5jgnq], .incident-compose[b-nl6sv5jgnq]  .form-control:focus { border-color: #7e9fd7; box-shadow: 0 0 0 3px #3565bc0d; }
.discipline-search-field label[b-nl6sv5jgnq] { margin-bottom: 8px; }
.discipline-search-field small[b-nl6sv5jgnq] { display: block; color: var(--discipline-muted); font-size: .69rem; margin-top: 6px; }
.search-row[b-nl6sv5jgnq] { display: flex; align-items: center; gap: 8px; padding: 3px 6px 3px 10px; min-height: 44px; border: 1px solid #dce4ef; border-radius: 10px; background: #fff; }
.search-row > i[b-nl6sv5jgnq] { color: #8b9ab0; font-size: 19px; }
.search-row .form-control[b-nl6sv5jgnq] { min-width: 0; min-height: 34px; padding: 4px 0; border: 0; background: transparent; }
.search-row .form-control:focus[b-nl6sv5jgnq] { box-shadow: none; }
.search-row button[b-nl6sv5jgnq] { display: grid; place-items: center; width: 32px; height: 32px; border: 0; border-radius: 8px; background: #edf3ff; color: var(--discipline-blue); flex-shrink: 0; }
.discipline-selection[b-nl6sv5jgnq] { padding: 14px 16px; border: 1px solid #dce8fc; border-radius: 14px; background: #f5f8ff; margin-bottom: 20px; }
.selection-heading[b-nl6sv5jgnq] { color: var(--discipline-blue); margin-bottom: 10px; }
.selection-chips[b-nl6sv5jgnq] { display: flex; gap: 7px; flex-wrap: wrap; margin: 0; max-height: 140px; overflow-y: auto; }
.selection-chips button[b-nl6sv5jgnq], .selection-chips > span[b-nl6sv5jgnq] { display: inline-flex; align-items: center; gap: 5px; border: 1px solid #dce7fb; background: #fff; color: #4268a7; border-radius: 8px; padding: 5px 9px; font-size: .75rem; }
.selection-chips button:hover[b-nl6sv5jgnq] { border-color: #90afe1; background: #edf3ff; }
.student-list-heading[b-nl6sv5jgnq] { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin: 22px 0 14px; }
.student-list-heading > span[b-nl6sv5jgnq] { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; }
.student-list-heading strong[b-nl6sv5jgnq] { font-size: .87rem; }
.student-list-heading small[b-nl6sv5jgnq] { color: var(--discipline-muted); background: #f1f4f8; padding: 4px 8px; border-radius: 7px; font-size: .71rem; }
.student-list-heading .btn[b-nl6sv5jgnq] { font-size: .74rem; padding: 7px 10px; }
.discipline-students[b-nl6sv5jgnq] { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.discipline-student[b-nl6sv5jgnq] { position: relative; display: flex; align-items: center; gap: 12px; border: 1px solid var(--discipline-line); border-radius: 14px; padding: 15px; cursor: pointer; transition: background .16s, border-color .16s, box-shadow .16s; }
.discipline-student:hover[b-nl6sv5jgnq] { border-color: #b8cce9; background: #fafcff; box-shadow: 0 4px 12px #24365306; }
.discipline-student.selected[b-nl6sv5jgnq] { background: #f2f7ff; border-color: #88a9dc; }
.discipline-student:focus-within[b-nl6sv5jgnq] { outline: 3px solid #3565bc33; outline-offset: 2px; }
.discipline-student > input[b-nl6sv5jgnq] { position: absolute; width: 1px; height: 1px; opacity: 0; }
.student-check[b-nl6sv5jgnq] { display: grid; place-items: center; width: 21px; height: 21px; border: 1.5px solid #ccd6e4; border-radius: 7px; color: transparent; background: #fff; flex-shrink: 0; font-size: 16px; }
.selected .student-check[b-nl6sv5jgnq] { border-color: var(--discipline-blue); background: var(--discipline-blue); color: #fff; }
.student-avatar[b-nl6sv5jgnq] { width: 43px; height: 43px; border-radius: 13px; display: grid; place-items: center; background: #eaf0f9; color: #53719b; font-size: .86rem; font-weight: 700; flex-shrink: 0; }
.selected .student-avatar[b-nl6sv5jgnq] { background: #dfeaff; color: var(--discipline-blue); }
.student-copy[b-nl6sv5jgnq] { min-width: 0; display: block; flex: 1; }
.student-copy > strong[b-nl6sv5jgnq] { display: block; font-size: .86rem; color: var(--discipline-ink); overflow-wrap: anywhere; }
.student-class[b-nl6sv5jgnq] { display: flex; align-items: center; gap: 4px; margin-top: 4px; color: var(--discipline-muted); font-size: .73rem; }
.student-contact[b-nl6sv5jgnq] { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; margin-top: 7px; }
.contact-badge[b-nl6sv5jgnq] { display: inline-flex; align-items: center; gap: 4px; padding: 3px 6px; border-radius: 6px; background: #f1f3f6; color: #748299; font-size: .64rem; line-height: 1.5; }
.contact-badge.available[b-nl6sv5jgnq] { background: #eaf6f0; color: #2e866b; }
.workflow-empty[b-nl6sv5jgnq] { display: flex; flex-direction: column; align-items: center; gap: 9px; text-align: center; color: var(--discipline-muted); padding: 36px 16px; font-size: .82rem; }
.workflow-empty > i[b-nl6sv5jgnq] { width: 54px; height: 54px; display: grid; place-items: center; border-radius: 16px; background: #f0f4fa; font-size: 27px; color: #7790b6; }
.workflow-empty strong[b-nl6sv5jgnq] { color: var(--discipline-ink); }
.load-more[b-nl6sv5jgnq] { display: flex; justify-content: center; margin-top: 20px; }
.workflow-actions[b-nl6sv5jgnq] { display: flex; justify-content: flex-end; align-items: center; gap: 12px; flex-wrap: wrap; padding-top: 20px; margin-top: 22px; border-top: 1px solid var(--discipline-line); }
.workflow-actions .btn[b-nl6sv5jgnq] { border-radius: 10px; padding: 10px 16px; font-size: .83rem; font-weight: 600; }
.discipline-workflow .btn-primary[b-nl6sv5jgnq] { background: var(--discipline-blue); border-color: var(--discipline-blue); box-shadow: 0 4px 10px #3565bc18; }
.discipline-workflow .btn-primary:hover[b-nl6sv5jgnq] { background: #2b55a1; border-color: #2b55a1; }
.discipline-workflow .btn-outline-primary[b-nl6sv5jgnq] { color: var(--discipline-blue); border-color: #ceddf5; }
.discipline-workflow .btn-outline-primary:hover[b-nl6sv5jgnq] { color: var(--discipline-blue); background: #edf3ff; border-color: #9eb8df; }
.selection-actions[b-nl6sv5jgnq] { position: sticky; bottom: 12px; z-index: 5; justify-content: space-between; background: #fff; border: 1px solid var(--discipline-line); border-radius: 14px; padding: 13px 16px; box-shadow: 0 6px 26px #2436530d; }
.selection-summary[b-nl6sv5jgnq] { display: flex; align-items: center; gap: 10px; }
.selection-summary-icon[b-nl6sv5jgnq] { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 10px; color: var(--discipline-blue); background: #edf3ff; font-size: 21px; }
.selection-summary strong[b-nl6sv5jgnq], .selection-summary small[b-nl6sv5jgnq] { display: block; }
.selection-summary strong[b-nl6sv5jgnq] { font-size: .8rem; }
.selection-summary small[b-nl6sv5jgnq] { color: var(--discipline-muted); font-size: .72rem; margin-top: 3px; }
.incident-form[b-nl6sv5jgnq] { max-width: 1040px; margin-inline: auto; }
.incident-layout[b-nl6sv5jgnq] { display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(285px, 1fr); align-items: start; gap: 18px; }
.incident-card[b-nl6sv5jgnq] { padding: 20px; border: 1px solid var(--discipline-line); border-radius: 16px; background: #fff; min-width: 0; }
.incident-compose[b-nl6sv5jgnq] { background: #fcfdff; }
.incident-card-heading[b-nl6sv5jgnq] { display: flex; align-items: center; gap: 10px; margin-bottom: 18px; }
.incident-card-heading h6[b-nl6sv5jgnq] { color: var(--discipline-ink); font-size: .86rem; font-weight: 800; margin: 0; line-height: 1.7; }
.incident-card-heading p[b-nl6sv5jgnq] { margin: 4px 0 0; font-size: .73rem; color: var(--discipline-muted); }
.incident-card-icon[b-nl6sv5jgnq] { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 10px; background: #edf3ff; color: var(--discipline-blue); font-size: 21px; flex-shrink: 0; }
.incident-date[b-nl6sv5jgnq] { max-width: 240px; margin: 22px 0; }
.incident-date > span[b-nl6sv5jgnq] { display: flex; align-items: center; gap: 5px; }
.incident-date[b-nl6sv5jgnq]  input { text-align: center; direction: ltr; }
.incident-text-label textarea[b-nl6sv5jgnq] { padding: 14px; border: 1px solid #dce4ef; border-radius: 12px; background: #fff; color: var(--discipline-ink); line-height: 1.9; font-size: .86rem; height: 190px !important; min-height: 150px !important; max-height: 360px; resize: vertical; text-align: right; }
.incident-text-label textarea[b-nl6sv5jgnq]::placeholder { color: #95a1b4; }
.incident-text-label textarea:focus[b-nl6sv5jgnq] { border-color: #7e9fd7; box-shadow: 0 0 0 3px #3565bc0d; }
.incident-text-footer[b-nl6sv5jgnq] { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 8px; font-size: .69rem; color: var(--discipline-muted); margin-top: 10px; }
.incident-text-count[b-nl6sv5jgnq] { color: #7e8ea8; font-variant-numeric: tabular-nums; white-space: nowrap; }
.incident-sidebar[b-nl6sv5jgnq] { display: grid; gap: 16px; min-width: 0; }
.incident-count[b-nl6sv5jgnq] { margin-inline-start: auto; flex-shrink: 0; font-size: .68rem; color: var(--discipline-blue); background: #edf3ff; padding: 4px 7px; border-radius: 7px; }
.incident-selected[b-nl6sv5jgnq] { margin-bottom: 12px; }
.incident-card-note[b-nl6sv5jgnq] { margin: 0; color: var(--discipline-muted); font-size: .74rem; line-height: 1.9; }
.incident-notification[b-nl6sv5jgnq] { background: #f8fafd; transition: border-color .16s, background .16s; }
.incident-notification.enabled[b-nl6sv5jgnq] { border-color: #bfd2ef; background: #f6f9ff; }
.notification-toggle[b-nl6sv5jgnq] { display: flex; align-items: center; justify-content: space-between; gap: 12px; font-size: .79rem; font-weight: 700; margin-bottom: 10px; cursor: pointer; }
.notification-switch[b-nl6sv5jgnq] { appearance: none; position: relative; width: 40px; height: 24px; border: 1px solid #c9d4e3; border-radius: 20px; background: #dce4ef; cursor: pointer; flex-shrink: 0; transition: background .16s; }
.notification-switch[b-nl6sv5jgnq]::before { content: ''; position: absolute; left: 3px; top: 3px; width: 16px; height: 16px; border-radius: 50%; background: #fff; box-shadow: 0 1px 3px #24365325; transition: transform .16s; }
.notification-switch:checked[b-nl6sv5jgnq] { border-color: var(--discipline-blue); background: var(--discipline-blue); }
.notification-switch:checked[b-nl6sv5jgnq]::before { transform: translateX(16px); }
.notification-switch:focus-visible[b-nl6sv5jgnq] { outline: 3px solid #3565bc33; outline-offset: 3px; }
.incident-recipients[b-nl6sv5jgnq]  .recipient-options { gap: 8px; }
.incident-recipients[b-nl6sv5jgnq]  .recipient-option { min-height: 46px; padding: 9px; border-radius: 10px; flex-basis: 100px; }
.incident-recipients[b-nl6sv5jgnq]  .recipient-option.selected { color: var(--discipline-blue); border-color: #94b2e0; background: #edf3ff; box-shadow: none; }
.incident-recipients[b-nl6sv5jgnq]  .selected .recipient-check { border-color: var(--discipline-blue); background: var(--discipline-blue); }
.incident-recipients[b-nl6sv5jgnq]  .recipient-icon { font-size: 1.2rem; }
.incident-recipients[b-nl6sv5jgnq]  .recipient-option > span:not(.recipient-check) { font-size: .79rem; }
.incident-recipients[b-nl6sv5jgnq]  .sms-recipient-selector legend { font-size: .76rem; }
.incident-recipients[b-nl6sv5jgnq]  .sms-recipient-selector:disabled .recipient-option { color: #78869b; background: #f0f3f8; border-color: #dce3ee; opacity: .75; }
.incident-recipients[b-nl6sv5jgnq]  .sms-recipient-selector:disabled .recipient-check { border-color: #c5cfdd; background: #c5cfdd; }
.incident-notification-note[b-nl6sv5jgnq] { display: flex; align-items: flex-start; gap: 7px; border-top: 1px solid #e1e9f6; padding-top: 12px; margin-top: 14px; color: #697e9e; font-size: .71rem; line-height: 1.8; }
.incident-notification-note i[b-nl6sv5jgnq] { font-size: 17px; margin-top: 3px; flex-shrink: 0; }
.incident-actions[b-nl6sv5jgnq] { justify-content: space-between; }
.incident-save-note[b-nl6sv5jgnq] { display: inline-flex; align-items: center; gap: 7px; color: var(--discipline-muted); font-size: .75rem; }
.incident-save-note i[b-nl6sv5jgnq] { font-size: 19px; }
.incident-action-buttons[b-nl6sv5jgnq] { display: flex; gap: 10px; }
.result-summary[b-nl6sv5jgnq] { justify-content: flex-start; padding: 20px; border: 1px solid #dce8fa; border-radius: 16px; background: #f3f7fe; }
.result-summary.complete[b-nl6sv5jgnq] { background: #f1faf6; border-color: #d5eee1; }
.result-icon[b-nl6sv5jgnq] { display: grid; place-items: center; width: 48px; height: 48px; border-radius: 14px; background: #e3edff; color: var(--discipline-blue); font-size: 30px; flex-shrink: 0; }
.complete .result-icon[b-nl6sv5jgnq] { background: #dff2e8; color: #2a946e; }
.discipline-result[b-nl6sv5jgnq] { padding: 20px; margin-bottom: 14px; border: 1px solid var(--discipline-line); border-radius: 16px; }
.result-title[b-nl6sv5jgnq] { display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; }
.result-title strong[b-nl6sv5jgnq] { font-size: .9rem; }
.result-title .badge[b-nl6sv5jgnq] { font-size: .7rem; border-radius: 7px; }
.incident-text[b-nl6sv5jgnq] { white-space: pre-wrap; overflow-wrap: anywhere; color: #53647b; line-height: 1.9; margin: 16px 0; padding: 12px 14px; background: #f8fafd; border-radius: 10px; font-size: .85rem; }
.recipient-result[b-nl6sv5jgnq] { display: flex; gap: 12px; align-items: center; flex-wrap: wrap; padding: 12px 0; border-top: 1px solid #edf1f7; font-size: .78rem; }
.recipient-result small[b-nl6sv5jgnq] { width: 100%; color: var(--discipline-muted); }
.recipient-status[b-nl6sv5jgnq] { margin-inline-start: auto; color: #718099; padding: 4px 8px; background: #f1f4f8; border-radius: 7px; font-size: .72rem; }
.status-Sent[b-nl6sv5jgnq], .status-Delivered[b-nl6sv5jgnq] { color: #25826a; background: #eaf6f0; }
.status-Failed[b-nl6sv5jgnq] { color: #b34f55; background: #fff0f0; }
.discipline-workflow button:focus-visible[b-nl6sv5jgnq] { outline: 3px solid #3565bc44; outline-offset: 3px; }
@media (max-width: 991px) {
    .discipline-context[b-nl6sv5jgnq] { max-width: 200px; }
    .discipline-filters.with-major[b-nl6sv5jgnq] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .incident-layout[b-nl6sv5jgnq] { grid-template-columns: minmax(0, 1.3fr) minmax(260px, 1fr); gap: 14px; }
    .incident-card[b-nl6sv5jgnq] { padding: 16px; }
    .discipline-timeline li[b-nl6sv5jgnq] { padding: 11px; gap: 8px; }
}
@media (max-width: 768px) {
    .discipline-heading[b-nl6sv5jgnq] { flex-wrap: wrap; gap: 12px; margin-bottom: 18px; }
    .heading-icon[b-nl6sv5jgnq] { width: 48px; height: 48px; border-radius: 14px; font-size: 25px; }
    .discipline-heading h4[b-nl6sv5jgnq] { font-size: 1.12rem; }
    .heading-eyebrow[b-nl6sv5jgnq] { display: none; }
    .discipline-context[b-nl6sv5jgnq] { width: 100%; max-width: none; display: flex; justify-content: space-between; flex-wrap: wrap; gap: 10px; margin: 0; }
    .discipline-timeline[b-nl6sv5jgnq] { padding: 5px; gap: 4px; border-radius: 14px; }
    .discipline-timeline li[b-nl6sv5jgnq] { flex-direction: column; text-align: center; padding: 10px 4px; gap: 7px; }
    .discipline-timeline strong[b-nl6sv5jgnq] { font-size: .71rem; }
    .discipline-timeline small[b-nl6sv5jgnq] { display: none; }
    .step-marker[b-nl6sv5jgnq] { width: 28px; height: 28px; border-radius: 9px; font-size: .8rem; }
    .discipline-panel[b-nl6sv5jgnq] { padding: 18px; border-radius: 18px; }
    .panel-title[b-nl6sv5jgnq] { align-items: flex-start; flex-wrap: wrap; gap: 12px; }
    .panel-title h5[b-nl6sv5jgnq] { font-size: .94rem; }
    .panel-title p[b-nl6sv5jgnq] { font-size: .77rem; }
    .selected-count[b-nl6sv5jgnq] { padding: 7px 10px; font-size: .72rem; }
    .discipline-filter-panel[b-nl6sv5jgnq] { padding: 14px; }
    .discipline-filters[b-nl6sv5jgnq] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .discipline-search-field[b-nl6sv5jgnq] { grid-column: 1 / -1; }
    .discipline-filters.with-major .discipline-search-field[b-nl6sv5jgnq] { grid-column: auto; }
    .discipline-students[b-nl6sv5jgnq] { grid-template-columns: minmax(0, 1fr); }
    .student-list-heading[b-nl6sv5jgnq] { align-items: flex-start; }
    .student-list-heading > span[b-nl6sv5jgnq] { flex-direction: column; align-items: flex-start; gap: 5px; }
    .student-list-heading .btn[b-nl6sv5jgnq] { font-size: .69rem; padding: 7px 8px; }
    .selection-actions[b-nl6sv5jgnq] { bottom: 8px; padding: 12px; gap: 12px; }
    .selection-summary small[b-nl6sv5jgnq] { display: none; }
    .selection-summary strong[b-nl6sv5jgnq] { font-size: .73rem; }
    .selection-summary-icon[b-nl6sv5jgnq] { width: 30px; height: 30px; font-size: 18px; }
    .selection-actions .btn[b-nl6sv5jgnq] { padding: 10px 12px; font-size: .75rem; }
    .incident-layout[b-nl6sv5jgnq] { grid-template-columns: minmax(0, 1fr); }
    .incident-sidebar[b-nl6sv5jgnq] { grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; }
    .incident-actions[b-nl6sv5jgnq] { gap: 14px; }
    .incident-action-buttons[b-nl6sv5jgnq] { width: 100%; }
    .incident-action-buttons .btn[b-nl6sv5jgnq] { flex: 1; }
    .result-summary[b-nl6sv5jgnq] { flex-wrap: nowrap; }
    .recipient-result[b-nl6sv5jgnq] { gap: 8px; }
}
@media (max-width: 520px) {
    .discipline-panel[b-nl6sv5jgnq] { padding: 14px; }
    .discipline-filters.with-major > label:nth-of-type(3)[b-nl6sv5jgnq] { grid-column: 1 / -1; }
    .discipline-filters.with-major .discipline-search-field[b-nl6sv5jgnq] { grid-column: 1 / -1; }
    .incident-sidebar[b-nl6sv5jgnq] { grid-template-columns: minmax(0, 1fr); }
    .selection-actions[b-nl6sv5jgnq] { align-items: stretch; }
    .selection-summary[b-nl6sv5jgnq] { width: 100%; }
    .selection-actions > .btn[b-nl6sv5jgnq] { width: 100%; }
    .discipline-student[b-nl6sv5jgnq] { gap: 9px; padding: 13px 11px; }
    .student-avatar[b-nl6sv5jgnq] { width: 36px; height: 36px; border-radius: 10px; font-size: .76rem; }
    .student-copy > strong[b-nl6sv5jgnq] { font-size: .81rem; }
    .student-contact[b-nl6sv5jgnq] { gap: 4px; }
    .contact-badge[b-nl6sv5jgnq] { font-size: .61rem; }
    .incident-date[b-nl6sv5jgnq] { max-width: none; }
    .incident-text-label textarea[b-nl6sv5jgnq] { height: 170px !important; }
}
@media (prefers-reduced-motion: reduce) {
    .discipline-student[b-nl6sv5jgnq], .incident-notification[b-nl6sv5jgnq], .notification-switch[b-nl6sv5jgnq], .notification-switch[b-nl6sv5jgnq]::before { transition: none; }
}
/* /Pages/ManagerDisciplineSms.razor.rz.scp.css */
.sms-toolbar-row[b-dfqdtykxz5] {
    display: flex;
    align-items: center;
    gap: .85rem;
}

.date-control-wrap[b-dfqdtykxz5] {
    display: flex;
    align-items: center;
    gap: .45rem;
}

.toolbar-field label[b-dfqdtykxz5] {
    display: block;
    margin-bottom: .3rem;
    color: var(--bs-secondary-color);
    font-size: .72rem;
    font-weight: 700;
}

.date-field[b-dfqdtykxz5] {
    width: 226px;
    min-width: 0;
}

.date-control-wrap .form-control[b-dfqdtykxz5],
.date-control-wrap .input-group-text[b-dfqdtykxz5],
.date-arrow[b-dfqdtykxz5],
.today-button[b-dfqdtykxz5] {
    min-height: 42px;
    height: 42px;
}

.date-control-wrap .form-control[b-dfqdtykxz5] {
    padding-block: .45rem;
    font-size: .9rem;
}

.date-control-wrap .input-group-text[b-dfqdtykxz5] {
    width: 42px;
    justify-content: center;
    padding: 0;
}

.date-arrow[b-dfqdtykxz5] {
    display: grid;
    width: 42px;
    min-width: 42px;
    margin-bottom: 0;
    place-items: center;
    padding: 0;
    border: 1px solid var(--bs-border-color);
    background: var(--bs-card-bg);
}

.date-arrow i[b-dfqdtykxz5] { font-size: 1.05rem; }
.today-button[b-dfqdtykxz5] {
    min-width: 74px;
    margin-bottom: 0;
    padding-inline: .85rem;
    white-space: nowrap;
}

.discipline-card-grid > [class*="col-"][b-dfqdtykxz5] {
    display: flex;
}

.discipline-sms-card[b-dfqdtykxz5] {
    width: 100%;
    overflow: hidden;
    border: 1px solid #dfe9f3;
    border-radius: 22px;
    background: #fff;
    box-shadow: 0 12px 30px rgba(36, 54, 83, .065);
    transition: transform .2s ease, box-shadow .2s ease;
}

.discipline-sms-card:hover[b-dfqdtykxz5] {
    transform: translateY(-2px);
    box-shadow: 0 18px 34px rgba(36, 54, 83, .1);
}

.discipline-sms-card .card-body[b-dfqdtykxz5] {
    padding: 0 1.25rem 1.25rem;
}

.discipline-card-header[b-dfqdtykxz5] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    padding: 1.2rem 0 1rem;
}

.discipline-card-person[b-dfqdtykxz5] {
    display: flex;
    align-items: center;
    min-width: 0;
    gap: .75rem;
}

.discipline-student-avatar[b-dfqdtykxz5] {
    display: grid;
    width: 50px;
    height: 50px;
    flex: 0 0 50px;
    place-items: center;
    border: 1px solid #d8e8fb;
    border-radius: 17px;
    background: linear-gradient(145deg, #eef7ff, #e7efff);
    color: #2562a2;
    font-size: .95rem;
    font-weight: 900;
}

.discipline-student-copy[b-dfqdtykxz5] {
    min-width: 0;
}

.discipline-eyebrow[b-dfqdtykxz5],
.discipline-content-label[b-dfqdtykxz5],
.discipline-section-heading span[b-dfqdtykxz5],
.discipline-meta-item small[b-dfqdtykxz5] {
    color: #8a98aa;
    font-size: .68rem;
    font-weight: 800;
}

.discipline-student-copy h6[b-dfqdtykxz5] {
    overflow: hidden;
    margin: .2rem 0 0;
    color: #223653;
    font-size: 1rem;
    font-weight: 900;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.discipline-record-badge[b-dfqdtykxz5] {
    display: inline-flex;
    align-items: center;
    gap: .3rem;
    flex-shrink: 0;
    padding: .42rem .62rem;
    border: 1px solid #e2eafa;
    border-radius: 999px;
    background: #f7f8ff;
    color: #6571bb;
    font-size: .68rem;
    font-weight: 800;
}

.discipline-record-badge i[b-dfqdtykxz5] {
    font-size: .95rem;
}

.discipline-card-recipient-panel[b-dfqdtykxz5] {
    padding: .85rem;
    border: 1px solid #e5eef7;
    border-radius: 16px;
    background: linear-gradient(145deg, #f9fcff, #f4f8fd);
}

.discipline-section-heading[b-dfqdtykxz5] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    margin-bottom: .65rem;
}

.discipline-section-heading span[b-dfqdtykxz5] {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
}

.discipline-section-heading span i[b-dfqdtykxz5] {
    color: #4b83bd;
    font-size: 1.05rem;
}

.discipline-section-heading strong[b-dfqdtykxz5] {
    color: #345d86;
    font-size: .72rem;
    font-weight: 900;
}

.discipline-recipient-chips[b-dfqdtykxz5] {
    display: flex;
    flex-wrap: wrap;
    gap: .45rem;
}

.discipline-recipient-chip[b-dfqdtykxz5] {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    padding: .38rem .55rem;
    border: 1px solid #e0e8f0;
    border-radius: 10px;
    background: #fff;
}

.discipline-recipient-chip-name[b-dfqdtykxz5] {
    color: #34475f;
    font-size: .72rem;
    font-weight: 900;
}

.discipline-recipient-chip-state[b-dfqdtykxz5] {
    font-size: .63rem;
    font-weight: 800;
}

.discipline-recipient-chip.is-valid[b-dfqdtykxz5] {
    border-color: #d8eee4;
    background: #f8fffb;
}

.discipline-recipient-chip.is-valid .discipline-recipient-chip-state[b-dfqdtykxz5] {
    color: #239065;
}

.discipline-recipient-chip.is-invalid[b-dfqdtykxz5] {
    border-color: #f0e2dd;
    background: #fffafa;
}

.discipline-recipient-chip.is-invalid .discipline-recipient-chip-state[b-dfqdtykxz5] {
    color: #bd7a6a;
}

.discipline-card-meta[b-dfqdtykxz5] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .65rem;
    margin-top: .85rem;
}

.discipline-meta-item[b-dfqdtykxz5] {
    display: flex;
    align-items: flex-start;
    min-width: 0;
    gap: .45rem;
    padding: .65rem .7rem;
    border: 1px solid #edf1f7;
    border-radius: 13px;
    background: #fff;
}

.discipline-meta-item i[b-dfqdtykxz5] {
    margin-top: .15rem;
    color: #5879b9;
    font-size: 1rem;
    flex-shrink: 0;
}

.discipline-meta-item span[b-dfqdtykxz5] {
    display: grid;
    gap: .12rem;
    min-width: 0;
}

.discipline-meta-item strong[b-dfqdtykxz5] {
    overflow: hidden;
    color: #263752;
    font-size: .78rem;
    font-weight: 800;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.discipline-card-content[b-dfqdtykxz5] {
    display: grid;
    gap: .65rem;
    margin-top: .85rem;
}

.discipline-content-block[b-dfqdtykxz5] {
    padding: .8rem .85rem;
    border-radius: 14px;
}

.discipline-content-label[b-dfqdtykxz5] {
    display: block;
    margin-bottom: .3rem;
}

.discipline-content-block p[b-dfqdtykxz5] {
    margin: 0;
    color: #293a52;
    font-size: .82rem;
    font-weight: 800;
    line-height: 1.8;
}

.discipline-title-block[b-dfqdtykxz5] {
    border: 1px solid #e4ecfa;
    background: #f7faff;
}

.discipline-title-block p[b-dfqdtykxz5] {
    color: #2d5f9b;
}

.discipline-description-block[b-dfqdtykxz5] {
    border: 1px solid #f0e9e5;
    background: #fffaf8;
}

.discipline-description-block p[b-dfqdtykxz5] {
    color: #7c5b51;
    font-weight: 700;
}

.discipline-card-footer[b-dfqdtykxz5] {
    display: grid;
    gap: .7rem;
    margin-top: 1rem;
    padding-top: .9rem !important;
    border-top: 1px solid #edf1f7;
}

.discipline-card-status[b-dfqdtykxz5] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
}

.discipline-card-status-label[b-dfqdtykxz5] {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    color: #7a879b;
    font-size: .72rem;
    font-weight: 700;
}

.discipline-card-status-label i[b-dfqdtykxz5] {
    color: #708bc0;
    font-size: 1rem;
}

.discipline-card-actions[b-dfqdtykxz5] {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
}

.discipline-card-actions .btn[b-dfqdtykxz5] {
    min-height: 38px;
    flex: 1 1 150px;
    font-size: .75rem;
    font-weight: 700;
}

.discipline-recipient-state[b-dfqdtykxz5] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .35rem;
    min-height: 38px;
    padding: .45rem .75rem;
    border: 1px solid #e3e8f0;
    border-radius: .375rem;
    color: #8591a3;
    font-size: .73rem;
    font-weight: 700;
    flex: 1 1 210px;
}

.discipline-recipient-state i[b-dfqdtykxz5] { font-size: 1rem; }

@media (max-width: 575.98px) {
    .sms-toolbar-row[b-dfqdtykxz5] { align-items: stretch; flex-direction: column; }
    .date-control-wrap[b-dfqdtykxz5] {
        display: grid;
        width: 100%;
        grid-template-columns: 42px minmax(128px, 1fr) 42px auto;
    }
    .date-field[b-dfqdtykxz5] { width: auto; }
    .send-all-wrap[b-dfqdtykxz5] { width: 100%; margin-inline-start: 0 !important; }
}

@media (max-width: 359.98px) {
    .date-control-wrap[b-dfqdtykxz5] { gap: .3rem; grid-template-columns: 38px minmax(110px, 1fr) 38px auto; }
    .date-arrow[b-dfqdtykxz5] { width: 38px; min-width: 38px; }
    .today-button[b-dfqdtykxz5] { min-width: 62px; padding-inline: .55rem; }
}

@media (max-width: 575.98px) {
    .discipline-sms-card .card-body[b-dfqdtykxz5] { padding: 0 .9rem .9rem; }
    .discipline-card-header[b-dfqdtykxz5] { gap: .5rem; }
    .discipline-record-badge[b-dfqdtykxz5] { padding-inline: .5rem; font-size: .62rem; }
    .discipline-card-meta[b-dfqdtykxz5] { grid-template-columns: minmax(0, 1fr); }
    .discipline-card-status[b-dfqdtykxz5] { align-items: flex-start; flex-direction: column; gap: .45rem; }
    .discipline-card-actions .btn[b-dfqdtykxz5],
    .discipline-recipient-state[b-dfqdtykxz5] { flex-basis: 100%; width: 100%; }
}
/* /Pages/ManagerHome.razor.rz.scp.css */
.student-editor-dialog[b-9pqpyidjb6] { width: calc(100% - 2rem); max-width: 980px; }
.student-editor[b-9pqpyidjb6]  form { display: flex; flex-direction: column; min-height: 0; max-height: calc(100dvh - 3.5rem); }
.student-editor .modal-header[b-9pqpyidjb6], .student-editor .modal-footer[b-9pqpyidjb6] { flex-shrink: 0; }
.student-editor .student-modal-body[b-9pqpyidjb6] { min-height: 0; overflow-y: auto; }
.student-editor-tabs[b-9pqpyidjb6] { display: flex; flex-wrap: wrap; gap: 4px; padding: 5px; border: 1px solid #e0e7f1; border-radius: 14px; background: #f3f6fb; }
.student-editor-tabs .nav-item[b-9pqpyidjb6] { flex: 1 1 auto; }
.student-editor-tabs .nav-link[b-9pqpyidjb6] { width: 100%; padding: 9px 13px; border-radius: 10px; white-space: nowrap; font-size: .86rem; }
.student-form-grid[b-9pqpyidjb6] { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px 14px; align-items: start; }
.student-field[b-9pqpyidjb6] { min-width: 0; }
.student-field-wide[b-9pqpyidjb6] { grid-column: span 2; }
.student-editor .form-label[b-9pqpyidjb6] { display: block; margin-bottom: 6px; font-size: .82rem; }
.student-field[b-9pqpyidjb6]  .form-control, .student-field[b-9pqpyidjb6]  .form-select { width: 100%; min-width: 0; min-height: 42px; padding: 8px 10px; font-size: .9rem; }
.student-check-field[b-9pqpyidjb6] { display: flex; align-items: center; gap: 9px; align-self: end; min-height: 42px; padding: 10px 12px; background: #f6f8fc; border: 1px solid #e3e9f3; border-radius: 10px; }
.student-check-field[b-9pqpyidjb6]  .form-check-input { float: none; flex: 0 0 auto; margin: 0; }
.student-check-field .form-check-label[b-9pqpyidjb6] { margin: 0; font-size: .84rem; cursor: pointer; }
.student-password-section[b-9pqpyidjb6] { min-width: 0; margin: 22px 0 0; padding: 16px 0 0; border: 0; border-top: 1px solid #e3e9f3; }
.student-password-section legend[b-9pqpyidjb6] { float: none; width: auto; margin-bottom: 12px; font-size: .9rem; font-weight: 700; }
.student-field[b-9pqpyidjb6]  .validation-message { margin-top: 5px; color: #c23545; font-size: .78rem; }
.student-registration-grid[b-9pqpyidjb6] { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.student-registration-grid .student-check-field[b-9pqpyidjb6] { grid-column: auto; align-self: stretch; }
[data-bs-theme="dark"] .student-editor-tabs[b-9pqpyidjb6], [data-bs-theme="dark"] .student-check-field[b-9pqpyidjb6] { background: #283144; border-color: #40506a; }
.dark-style .student-editor-tabs[b-9pqpyidjb6], .dark-style .student-check-field[b-9pqpyidjb6] { background: #283144; border-color: #40506a; }
@media (max-width: 767.98px) {
    .student-form-grid[b-9pqpyidjb6] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .student-registration-grid[b-9pqpyidjb6] { grid-template-columns: 1fr; }
}
@media (max-width: 479.98px) {
    .student-editor-dialog[b-9pqpyidjb6] { width: calc(100% - 1rem); margin: .5rem; }
    .student-editor[b-9pqpyidjb6]  form { max-height: calc(100dvh - 1rem); }
    .student-form-grid[b-9pqpyidjb6] { grid-template-columns: minmax(0, 1fr); gap: 13px; }
    .student-field-wide[b-9pqpyidjb6] { grid-column: auto; }
    .student-editor-tabs .nav-link[b-9pqpyidjb6] { padding: 8px 10px; }
}

.weekly-workspace[b-9pqpyidjb6] {
    --week-surface: #fff;
    --week-tint: #f6f8fd;
    --week-border: #e0e7f3;
    --week-ink: #344b70;
    --week-muted: #7385a0;
    background: var(--week-surface);
    border: 1px solid var(--week-border);
    border-radius: 22px;
    color: var(--week-ink);
    overflow: hidden;
    box-shadow: 0 8px 30px #233b6310;
}
.weekly-header[b-9pqpyidjb6] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 16px;
    padding: 18px 22px;
}
.weekly-heading[b-9pqpyidjb6] { display: flex; align-items: center; gap: 12px; }
.weekly-heading-icon[b-9pqpyidjb6] { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 14px; background: #ecf2ff; color: #4675d1; font-size: 24px; }
.weekly-heading h5[b-9pqpyidjb6] { margin: 0 0 4px; color: var(--week-ink); font-weight: 800; }
.weekly-heading div > span[b-9pqpyidjb6] { color: var(--week-muted); font-size: 12px; }
.weekly-toolbar[b-9pqpyidjb6] { display: flex; align-items: center; gap: 8px; }
.weekly-toolbar .btn[b-9pqpyidjb6], .weekly-icon-button[b-9pqpyidjb6] { min-height: 44px; border-radius: 12px; display: inline-flex; align-items: center; justify-content: center; gap: 7px; white-space: nowrap; }
.weekly-toolbar .btn i[b-9pqpyidjb6], .weekly-icon-button i[b-9pqpyidjb6] { font-size: 21px; }
.weekly-icon-button[b-9pqpyidjb6] { width: 44px; flex-shrink: 0; padding: 0; }
.weekly-filters[b-9pqpyidjb6] { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 12px; padding: 14px 22px 18px; background: var(--week-tint); border-block: 1px solid var(--week-border); }
.weekly-filter[b-9pqpyidjb6] { flex: 0 1 190px; min-width: 150px; }
.weekly-filter label[b-9pqpyidjb6] { display: block; font-size: 12px; font-weight: 700; color: var(--week-muted); margin-bottom: 6px; }
.weekly-filter .form-select[b-9pqpyidjb6] { min-height: 44px; border-radius: 12px; border-color: var(--week-border); }
.weekly-class-filter[b-9pqpyidjb6] { flex: 0 1 340px; min-width: 240px; }
.weekly-class-filter[b-9pqpyidjb6]  .select2-container { width: 100% !important; }
.weekly-class-filter[b-9pqpyidjb6]  .select2-selection--single { height: 44px !important; border: 1px solid var(--week-border) !important; border-radius: 12px !important; background: var(--week-surface) !important; }
.weekly-class-filter[b-9pqpyidjb6]  .select2-selection__rendered { line-height: 42px !important; padding-right: 14px !important; padding-left: 30px !important; color: var(--week-ink) !important; }
.weekly-class-filter[b-9pqpyidjb6]  .select2-selection__arrow { height: 42px !important; }
.weekly-context[b-9pqpyidjb6] { display: flex; align-items: center; gap: 6px; margin-inline-start: auto; min-height: 44px; white-space: nowrap; font-size: 12px; color: var(--week-muted); }
.weekly-context i[b-9pqpyidjb6] { font-size: 18px; }
.weekly-clock-field[b-9pqpyidjb6] { display: grid; gap: 6px; margin-inline-start: auto; }
.weekly-clock-field > span[b-9pqpyidjb6] { font-size: 12px; font-weight: 700; color: var(--week-muted); text-align: right; }
.weekly-clock-switch[b-9pqpyidjb6] { display: flex; padding: 3px; gap: 3px; border: 1px solid var(--week-border); border-radius: 14px; background: var(--week-surface); }
.weekly-clock-switch button[b-9pqpyidjb6] { display: inline-flex; justify-content: center; align-items: center; gap: 7px; min-height: 38px; padding: 8px 14px; border: 1px solid transparent; border-radius: 11px; background: transparent; color: var(--week-muted); font-size: 12px; font-weight: 700; white-space: nowrap; transition: background .15s, border-color .15s, color .15s; }
.weekly-clock-switch button i[b-9pqpyidjb6] { font-size: 18px; }
.weekly-clock-switch button:hover[b-9pqpyidjb6] { background: var(--week-tint); color: var(--week-ink); }
.weekly-clock-switch button.is-active[b-9pqpyidjb6] { border-color: #b4ceff; background: color-mix(in srgb, #5a8dee 12%, var(--week-surface)); color: #4675d1; box-shadow: 0 2px 5px #4675d115; }
.weekly-clock-switch button:focus-visible[b-9pqpyidjb6] { outline: 3px solid #5a8dee; outline-offset: 2px; }
.weekly-grid-scroll[b-9pqpyidjb6] { overflow: auto; max-height: min(780px, max(420px, calc(100dvh - 320px))); scrollbar-width: thin; scrollbar-color: #bdcbe1 transparent; }
.weekly-grid[b-9pqpyidjb6] { width: 100%; min-width: 820px; table-layout: fixed; border-collapse: separate; border-spacing: 0; }
.weekly-grid th[b-9pqpyidjb6] { color: var(--week-ink); text-align: center; font-size: 14px; font-weight: 800; background: var(--week-tint); }
.weekly-grid thead th[b-9pqpyidjb6] { height: 50px; position: sticky; top: 0; z-index: 2; border-bottom: 1px solid var(--week-border); }
.weekly-grid .weekly-day-heading[b-9pqpyidjb6] { position: sticky; right: 0; width: 100px; z-index: 1; border-left: 1px solid var(--week-border); }
.weekly-grid thead .weekly-day-heading[b-9pqpyidjb6] { z-index: 3; }
.weekly-grid tbody th[b-9pqpyidjb6], .weekly-grid td[b-9pqpyidjb6] { border-bottom: 1px solid var(--week-border); }
.weekly-grid td[b-9pqpyidjb6] { padding: 9px; vertical-align: top; border-left: 1px solid var(--week-border); height: 120px; }
.weekly-grid td:last-child[b-9pqpyidjb6] { border-left: 0; }
.weekly-grid tr:last-child td[b-9pqpyidjb6], .weekly-grid tr:last-child th[b-9pqpyidjb6] { border-bottom: 0; }
.weekly-bell[b-9pqpyidjb6] { display: flex; flex-direction: column; width: 100%; padding: 0; border: 1px solid #d5ebe8; border-radius: 12px; background: #f0f8f6; color: var(--week-ink); text-align: right; overflow: hidden; transition: box-shadow .15s, border-color .15s; }
.weekly-bell + .weekly-bell[b-9pqpyidjb6] { margin-top: 8px; }
.weekly-bell:hover[b-9pqpyidjb6] { border-color: #73b6a4; box-shadow: 0 4px 12px #233b6312; }
.weekly-bell:focus-visible[b-9pqpyidjb6], .weekly-grid-scroll:focus-visible[b-9pqpyidjb6] { outline: 3px solid #5a8dee; outline-offset: -3px; }
.weekly-bell.is-split[b-9pqpyidjb6] { background: #fff8ef; border-color: #f1dfc6; }
.weekly-bell.is-split:hover[b-9pqpyidjb6] { border-color: #dcb070; }
.weekly-bell-time[b-9pqpyidjb6] { display: flex; justify-content: center; align-items: center; gap: 5px; padding: 7px 4px; font-size: 11px; color: #66809e; background: #ffffff80; border-bottom: 1px solid #d5ebe8; white-space: nowrap; }
.weekly-bell.is-split .weekly-bell-time[b-9pqpyidjb6] { border-color: #f1dfc6; }
.weekly-bell-time i[b-9pqpyidjb6] { font-size: 15px; }
.weekly-time-range[b-9pqpyidjb6] { display: inline-flex; align-items: center; gap: 4px; direction: ltr; unicode-bidi: isolate; }
.weekly-lesson[b-9pqpyidjb6] { display: flex; flex-direction: column; gap: 7px; padding: 11px; }
.weekly-lesson + .weekly-lesson[b-9pqpyidjb6] { border-top: 1px dashed #e6cead; }
.weekly-lesson strong[b-9pqpyidjb6] { font-size: 13px; line-height: 1.8; }
.weekly-teacher[b-9pqpyidjb6] { display: flex; align-items: center; gap: 5px; font-size: 11px; line-height: 1.6; color: var(--week-muted); }
.weekly-segment[b-9pqpyidjb6] { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 3px; font-size: 10px; color: #a67638; }
.weekly-free[b-9pqpyidjb6] { display: grid; place-items: center; min-height: 100px; color: #b4c0d3; }
.weekly-legend[b-9pqpyidjb6] { display: flex; flex-wrap: wrap; align-items: center; gap: 18px; padding: 12px 22px; border-top: 1px solid var(--week-border); font-size: 11px; color: var(--week-muted); }
.weekly-legend > span[b-9pqpyidjb6] { display: flex; align-items: center; gap: 6px; }
.weekly-dot[b-9pqpyidjb6] { width: 9px; height: 9px; border-radius: 3px; background: #73b6a4; }
.weekly-dot.is-split[b-9pqpyidjb6] { background: #dcb070; }
.weekly-hint[b-9pqpyidjb6] { margin-inline-start: auto; }
.weekly-empty[b-9pqpyidjb6] { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 12px; padding: 64px 24px; text-align: center; min-height: 320px; }
.weekly-empty > i[b-9pqpyidjb6] { display: grid; place-items: center; width: 70px; height: 70px; background: var(--week-tint); border-radius: 22px; font-size: 34px; color: #7192c6; }
.weekly-empty strong[b-9pqpyidjb6] { color: var(--week-ink); }
.weekly-empty > span[b-9pqpyidjb6] { font-size: 13px; color: var(--week-muted); }
@media (max-width: 767px) {
    .weekly-header[b-9pqpyidjb6] { padding: 16px; gap: 12px; }
    .weekly-toolbar[b-9pqpyidjb6] { width: 100%; }
    .weekly-toolbar .weekly-edit[b-9pqpyidjb6] { flex: 1; }
    .weekly-filters[b-9pqpyidjb6] { padding: 12px 16px; gap: 10px; }
    .weekly-filter[b-9pqpyidjb6] { flex: 1 1 140px; }
    .weekly-class-filter[b-9pqpyidjb6] { flex: 1 1 240px; min-width: 0; }
    .weekly-context[b-9pqpyidjb6] { display: none; }
    .weekly-clock-field[b-9pqpyidjb6] { flex: 1 1 260px; margin-inline-start: 0; }
    .weekly-clock-switch button[b-9pqpyidjb6] { flex: 1; }
    .weekly-grid .weekly-day-heading[b-9pqpyidjb6] { width: 86px; }
    .weekly-legend[b-9pqpyidjb6] { padding: 12px 16px; gap: 12px; }
    .weekly-hint[b-9pqpyidjb6] { width: 100%; margin-inline-start: 0; }
}

.student-roster-tabs[b-9pqpyidjb6] {
    display: flex;
    gap: 24px;
    padding: 0 24px;
    border-bottom: 1px solid #e0e7f0;
}

.student-roster-tab[b-9pqpyidjb6] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 16px 4px 13px;
    border: 0;
    border-bottom: 3px solid transparent;
    background: transparent;
    color: #64748b;
    font: inherit;
    font-weight: 600;
    transition: color .15s, border-color .15s;
}

.student-roster-tab.is-selected[b-9pqpyidjb6] { color: #2563eb; border-bottom-color: #2563eb; }
.student-roster-tab:hover:not(:disabled)[b-9pqpyidjb6] { color: #2563eb; }
.student-roster-tab:focus-visible[b-9pqpyidjb6] { outline: 2px solid #2563eb; outline-offset: -2px; border-radius: 4px; }
.student-roster-tab:disabled[b-9pqpyidjb6] { cursor: wait; }
.student-roster-toolbar[b-9pqpyidjb6] { display: flex; align-items: center; gap: 24px; margin-bottom: 20px; }
.student-roster-search[b-9pqpyidjb6] { flex: 1; max-width: 640px; }
.student-roster-filter[b-9pqpyidjb6] { display: flex; align-items: center; gap: 10px; margin-inline-start: auto; }
.student-roster-filter label[b-9pqpyidjb6] { color: #64748b; white-space: nowrap; font-size: .85rem; }
.student-roster-filter select[b-9pqpyidjb6] { min-width: 190px; }
.student-roster-pagesize[b-9pqpyidjb6] { display: flex; align-items: center; gap: 8px; margin-inline-start: auto; }
.student-roster-pagesize select[b-9pqpyidjb6] { width: 75px; }
.student-roster-notice[b-9pqpyidjb6] { display: flex; align-items: center; gap: 8px; padding: 10px 14px; margin-bottom: 16px; border-radius: 8px; background: #edf9f2; color: #13734b; font-size: .875rem; }
.student-roster-notice button[b-9pqpyidjb6] { display: grid; place-items: center; margin-inline-start: auto; background: transparent; border: 0; color: inherit; font-size: 20px; }
.student-restore-action[b-9pqpyidjb6] { display: inline-flex; align-items: center; gap: 6px; white-space: nowrap; }
.student-import-template[b-9pqpyidjb6] { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }

@media (max-width: 767px) {
    .student-roster-tabs[b-9pqpyidjb6] { gap: 12px; padding: 0 16px; }
    .student-roster-tab[b-9pqpyidjb6] { flex: 1; gap: 6px; padding: 14px 0 11px; font-size: .8rem; }
    .student-roster-tab > i[b-9pqpyidjb6] { display: none; }
    .student-roster-toolbar[b-9pqpyidjb6] { flex-direction: column; align-items: stretch; gap: 12px; }
    .student-roster-search[b-9pqpyidjb6] { max-width: none; }
    .student-roster-filter[b-9pqpyidjb6] { margin-inline-start: 0; }
    .student-roster-filter select[b-9pqpyidjb6] { flex: 1; min-width: 0; }
    .student-roster-pagesize[b-9pqpyidjb6] { margin-inline-start: 0; }
    .student-roster-footer > .btn-group[b-9pqpyidjb6] { margin-inline-start: auto; }
    .student-roster-table[b-9pqpyidjb6] { overflow: visible; }
    .student-roster-table table[b-9pqpyidjb6], .student-roster-table tbody[b-9pqpyidjb6] { display: block; width: 100%; }
    .student-roster-table thead[b-9pqpyidjb6] { display: none; }
    .student-roster-table tbody > tr[b-9pqpyidjb6] { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); padding: 14px; gap: 14px 12px; border-bottom: 1px solid #e0e7f0; }
    .student-roster-table tbody > tr:last-child[b-9pqpyidjb6] { border-bottom: 0; }
    .student-roster-table tbody td[b-9pqpyidjb6] { display: block; padding: 0; border: 0; white-space: normal; text-align: start !important; box-shadow: none; background: transparent; min-width: 0; }
    .student-roster-table td[data-label][b-9pqpyidjb6]::before { content: attr(data-label); display: block; margin-bottom: 6px; color: #64748b; font-size: .75rem; font-weight: 400; direction: rtl; text-align: right; }
    .student-roster-table td[dir="ltr"][b-9pqpyidjb6] { text-align: end !important; }
    .student-roster-table .student-roster-name[b-9pqpyidjb6], .student-roster-table .student-roster-actions[b-9pqpyidjb6], .student-roster-table td[colspan][b-9pqpyidjb6] { grid-column: 1 / -1; }
    .student-roster-table .student-roster-actions[b-9pqpyidjb6] { padding-top: 10px; border-top: 1px solid #eef2f7; }
    .student-roster-table .student-restore-action[b-9pqpyidjb6] { min-height: 38px; }
}

.student-import-filebar[b-9pqpyidjb6] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
}

.student-import-file-picker[b-9pqpyidjb6] {
    display: flex;
    flex: 1 1 480px;
    flex-wrap: wrap;
    align-items: center;
    min-width: 0;
    gap: 12px;
    padding: 12px;
    border: 1px solid #dfe7f4;
    border-radius: 16px;
    background: #f8faff;
}

.student-import-file-action[b-9pqpyidjb6] {
    position: relative;
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    gap: 9px;
    min-height: 46px;
    margin: 0;
    padding: 11px 17px;
    border: 1px solid #c4d5f4;
    border-radius: 12px;
    background: #edf3ff;
    color: #366cc4;
    font-size: .92rem;
    font-weight: 700;
    cursor: pointer;
    transition: background-color .16s, border-color .16s, box-shadow .16s;
}

.student-import-file-action:hover[b-9pqpyidjb6] {
    background: #e0ebff;
    border-color: #8cb1ee;
}

.student-import-file-action:focus-within[b-9pqpyidjb6] {
    outline: 3px solid #5a8dee55;
    outline-offset: 3px;
}

.student-import-file-action.is-disabled[b-9pqpyidjb6] {
    opacity: .6;
    cursor: default;
}

.student-import-file-action > i[b-9pqpyidjb6] {
    font-size: 1.45rem;
}

/* Keep the actual file input focusable and clickable, while hiding the native English control. */
.student-import-file-action[b-9pqpyidjb6]  .student-import-file-input {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    opacity: 0;
    cursor: pointer;
}

.student-import-file-action.is-disabled[b-9pqpyidjb6]  .student-import-file-input {
    cursor: default;
}

.student-import-file-details[b-9pqpyidjb6] {
    display: flex;
    flex: 1 1 200px;
    align-items: center;
    gap: 10px;
    min-width: 0;
}

.student-import-file-details > i[b-9pqpyidjb6] {
    flex: 0 0 auto;
    font-size: 1.65rem;
    color: #6a83af;
}

.student-import-file-details > div[b-9pqpyidjb6] {
    flex: 1;
    min-width: 0;
}

.student-import-file-name[b-9pqpyidjb6] {
    display: block;
    overflow: hidden;
    color: #405577;
    font-size: .88rem;
    font-weight: 700;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.student-import-file-meta[b-9pqpyidjb6] {
    display: block;
    margin-top: 4px;
    color: #8190a8;
    font-size: .76rem;
}

.student-import-file-clear[b-9pqpyidjb6] {
    display: inline-grid;
    flex: 0 0 auto;
    place-items: center;
    width: 32px;
    height: 32px;
    border: 0;
    border-radius: 9px;
    background: transparent;
    color: #7f91ad;
    font-size: 1.3rem;
}

.student-import-file-clear:hover:not(:disabled)[b-9pqpyidjb6] {
    background: #fce9ed;
    color: #c04d66;
}

.student-import-file-clear:disabled[b-9pqpyidjb6] {
    opacity: .5;
}

@media (max-width: 575px) {
    .student-import-file-picker[b-9pqpyidjb6] {
        flex-basis: 100%;
    }

    .student-import-file-action[b-9pqpyidjb6],
    .student-import-file-details[b-9pqpyidjb6] {
        flex-basis: 100%;
    }

    .student-import-filebar > .btn[b-9pqpyidjb6] {
        flex: 1;
    }
}
.analytics-context-compact[b-9pqpyidjb6] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 16px 18px;
}
.analytics-context-compact .analytics-context-intro[b-9pqpyidjb6] {
    display: flex;
    align-items: center;
    flex: 1;
    min-width: 0;
    margin: 0;
}
.analytics-context-compact .analytics-context-title[b-9pqpyidjb6] { min-width: 0; }
.analytics-context-compact h1[b-9pqpyidjb6] { margin: 0; font-size: 1.35rem; line-height: 1.6; }
.analytics-report-date[b-9pqpyidjb6] { margin: 1px 0 0; color: var(--analytics-muted); font-size: .78rem; }
.analytics-date-toolbar[b-9pqpyidjb6] {
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 5px;
    border: 1px solid #5a8dee26;
    border-radius: 13px;
    background: var(--analytics-surface, #fff);
    flex-shrink: 0;
}
.analytics-date-input[b-9pqpyidjb6] { display: flex; align-items: center; width: 150px; padding-inline: 6px; }
.analytics-date-input > i[b-9pqpyidjb6] { color: #5a8dee; font-size: 1.15rem; }
.analytics-date-input[b-9pqpyidjb6]  .form-control {
    min-width: 0;
    height: 38px;
    border: 0;
    padding: 6px;
    background: transparent;
    color: var(--analytics-ink);
    direction: ltr;
    font-size: .86rem;
    font-weight: 700;
    border-radius: 8px;
}
.analytics-date-input[b-9pqpyidjb6]  .form-control:focus { box-shadow: 0 0 0 3px #5a8dee26; }
.analytics-day-arrow[b-9pqpyidjb6], .analytics-today-button[b-9pqpyidjb6] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    min-height: 40px;
    border: 0;
    border-radius: 9px;
    background: transparent;
    color: var(--analytics-ink);
    font-weight: 700;
    transition: background .15s;
}
.analytics-day-arrow[b-9pqpyidjb6] { width: 36px; font-size: 1.35rem; }
.analytics-today-button[b-9pqpyidjb6] { padding-inline: 12px; font-size: .8rem; background: #5a8dee12; color: #5a8dee; }
.analytics-day-arrow:hover:not(:disabled)[b-9pqpyidjb6], .analytics-today-button:hover:not(:disabled)[b-9pqpyidjb6] { background: #5a8dee20; }
.analytics-day-arrow:focus-visible[b-9pqpyidjb6], .analytics-today-button:focus-visible[b-9pqpyidjb6] { outline: 2px solid #5a8dee; outline-offset: 2px; }
.analytics-today-button.is-today[b-9pqpyidjb6] { background: #39da8a18; color: #1b8a43; }
.analytics-day-arrow:disabled[b-9pqpyidjb6], .analytics-today-button:disabled:not(.is-today)[b-9pqpyidjb6] { opacity: .5; }
@media (max-width: 767.98px) {
    .analytics-context-compact[b-9pqpyidjb6] { flex-wrap: wrap; gap: 12px; }
    .analytics-context-compact h1[b-9pqpyidjb6] { font-size: 1.15rem; }
    .analytics-date-toolbar[b-9pqpyidjb6] { width: 100%; }
    .analytics-date-input[b-9pqpyidjb6] { flex: 1; width: auto; }
}
/* /Pages/ManagerSmsBroadcast.razor.rz.scp.css */
.broadcast-layout[b-0w7ycj6xa7] {
    --broadcast-primary: #5a8dee;
    --broadcast-primary-rgb: 90, 141, 238;
    --broadcast-success: #27b879;
    --broadcast-warning: #f59f32;
    --broadcast-danger: #eb5b66;
    --broadcast-ink: var(--bs-heading-color, #25314c);
    --broadcast-muted: var(--bs-secondary-color, #7b8497);
    --broadcast-border: rgba(110, 125, 150, .18);
}

.broadcast-composer-column[b-0w7ycj6xa7] {
    position: sticky;
    top: 1.5rem;
    align-self: flex-start;
}

.broadcast-composer-card[b-0w7ycj6xa7],
.broadcast-history-card[b-0w7ycj6xa7] {
    overflow: hidden;
    border: 1px solid var(--broadcast-border);
    border-radius: 1.05rem;
    background: var(--bs-card-bg, #fff);
    box-shadow: 0 .75rem 2.2rem rgba(35, 52, 84, .075);
}

.broadcast-card-header[b-0w7ycj6xa7],
.broadcast-history-header[b-0w7ycj6xa7] {
    display: flex;
    align-items: center;
    gap: .8rem;
    padding: 1rem 1.2rem;
    border-bottom: 1px solid var(--broadcast-border);
    background: linear-gradient(135deg, rgba(var(--broadcast-primary-rgb), .07), transparent 58%);
}

.broadcast-card-header h5[b-0w7ycj6xa7],
.broadcast-history-header h5[b-0w7ycj6xa7] {
    color: var(--broadcast-ink);
    font-weight: 800;
}

.broadcast-card-header p[b-0w7ycj6xa7],
.broadcast-history-header small[b-0w7ycj6xa7] {
    color: var(--broadcast-muted);
    font-size: .75rem;
}

.header-icon[b-0w7ycj6xa7] {
    display: grid;
    width: 2.55rem;
    height: 2.55rem;
    flex: 0 0 2.55rem;
    place-items: center;
    border-radius: .78rem;
    font-size: 1.25rem;
}

.header-icon-primary[b-0w7ycj6xa7] {
    color: var(--broadcast-primary);
    background: rgba(var(--broadcast-primary-rgb), .13);
}

.header-icon-secondary[b-0w7ycj6xa7] {
    color: #7668ee;
    background: rgba(118, 104, 238, .12);
}

.broadcast-composer-body[b-0w7ycj6xa7] {
    padding: 1.15rem 1.2rem 1.25rem;
}

.composer-section + .composer-section[b-0w7ycj6xa7] {
    margin-top: 1.05rem;
    padding-top: 1.05rem;
    border-top: 1px dashed var(--broadcast-border);
}

.preflight-heading > div:first-child[b-0w7ycj6xa7] {
    display: flex;
    align-items: center;
    gap: .65rem;
}

.preflight-heading h6[b-0w7ycj6xa7] {
    margin: 0 0 .12rem;
    color: var(--broadcast-ink);
    font-size: .9rem;
    font-weight: 800;
}

.preflight-heading span[b-0w7ycj6xa7] {
    color: var(--broadcast-muted);
    font-size: .69rem;
}

.audience-section > .form-select[b-0w7ycj6xa7],
.audience-dependent-field .form-select[b-0w7ycj6xa7] {
    min-height: 2.8rem;
    border-color: var(--broadcast-border);
    border-radius: .72rem;
    background-color: var(--bs-card-bg, #fff);
    font-size: .82rem;
}

.audience-section > .form-select:focus[b-0w7ycj6xa7],
.audience-dependent-field .form-select:focus[b-0w7ycj6xa7] {
    border-color: rgba(var(--broadcast-primary-rgb), .58);
    box-shadow: 0 0 0 .18rem rgba(var(--broadcast-primary-rgb), .11);
}

.audience-dependent-field[b-0w7ycj6xa7] {
    margin-top: .75rem;
    padding: .8rem;
    border: 1px solid rgba(var(--broadcast-primary-rgb), .13);
    border-radius: .82rem;
    background: rgba(var(--broadcast-primary-rgb), .035);
}

.audience-dependent-field .form-label[b-0w7ycj6xa7] {
    margin-bottom: .4rem;
    color: var(--broadcast-muted);
    font-size: .72rem;
    font-weight: 700;
}

.field-loading[b-0w7ycj6xa7],
.preflight-loading[b-0w7ycj6xa7] {
    display: flex;
    min-height: 2.7rem;
    align-items: center;
    justify-content: center;
    gap: .25rem;
    color: var(--broadcast-muted);
    font-size: .75rem;
}

.field-loading span[b-0w7ycj6xa7],
.preflight-loading span[b-0w7ycj6xa7] {
    width: .34rem;
    height: .34rem;
    border-radius: 50%;
    background: var(--broadcast-primary);
    animation: broadcastDot-b-0w7ycj6xa7 1.1s infinite ease-in-out;
}

.field-loading span:nth-child(2)[b-0w7ycj6xa7],
.preflight-loading span:nth-child(2)[b-0w7ycj6xa7] { animation-delay: .14s; }
.field-loading span:nth-child(3)[b-0w7ycj6xa7],
.preflight-loading span:nth-child(3)[b-0w7ycj6xa7] { animation-delay: .28s; }

.message-editor[b-0w7ycj6xa7] {
    overflow: hidden;
    border: 1px solid var(--broadcast-border);
    border-radius: .85rem;
    background: var(--bs-card-bg, #fff);
    transition: border-color .18s ease, box-shadow .18s ease;
}

.message-editor:focus-within[b-0w7ycj6xa7] {
    border-color: rgba(var(--broadcast-primary-rgb), .58);
    box-shadow: 0 0 0 .2rem rgba(var(--broadcast-primary-rgb), .1);
}

.message-editor.editor-warning[b-0w7ycj6xa7] { border-color: rgba(245, 159, 50, .45); }
.message-editor.editor-danger[b-0w7ycj6xa7] { border-color: rgba(235, 91, 102, .45); }

.message-editor textarea[b-0w7ycj6xa7] {
    min-height: 8.7rem;
    padding: .85rem .9rem;
    border: 0;
    border-radius: 0;
    background: transparent;
    font-size: .86rem;
    line-height: 1.9;
    resize: vertical;
    box-shadow: none !important;
}

.message-editor-footer[b-0w7ycj6xa7] {
    display: flex;
    min-height: 2.5rem;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    padding: .45rem .72rem;
    border-top: 1px solid var(--broadcast-border);
    color: var(--broadcast-muted);
    background: rgba(115, 128, 151, .035);
    font-size: .67rem;
}

.message-editor-footer > span:first-child[b-0w7ycj6xa7] {
    display: inline-flex;
    align-items: center;
    gap: .3rem;
}

.message-counter[b-0w7ycj6xa7] {
    display: inline-flex;
    align-items: center;
    gap: .3rem;
    padding: .3rem .52rem;
    border-radius: 999px;
    font-size: .65rem;
    transition: color .18s ease, background .18s ease;
}

.message-counter strong[b-0w7ycj6xa7] { font-size: .72rem; }
.counter-normal[b-0w7ycj6xa7] { color: #4775c7; background: rgba(var(--broadcast-primary-rgb), .1); }
.counter-warning[b-0w7ycj6xa7] { color: #bd7312; background: rgba(245, 159, 50, .14); }
.counter-danger[b-0w7ycj6xa7] { color: #d33e4c; background: rgba(235, 91, 102, .13); }
.counter-divider[b-0w7ycj6xa7] { width: 1px; height: .8rem; background: currentColor; opacity: .22; }

.broadcast-feedback[b-0w7ycj6xa7] {
    display: flex;
    align-items: center;
    gap: .55rem;
    margin-top: .9rem;
    padding: .65rem .8rem;
    border-radius: .72rem;
    font-size: .75rem;
    font-weight: 650;
}

.broadcast-feedback-error[b-0w7ycj6xa7] { color: #c03d49; background: rgba(235, 91, 102, .11); }
.broadcast-feedback-success[b-0w7ycj6xa7] { color: #16895a; background: rgba(39, 184, 121, .11); }

.preflight-panel[b-0w7ycj6xa7] {
    margin-top: 1.05rem;
    padding: .9rem;
    border: 1px solid rgba(var(--broadcast-primary-rgb), .18);
    border-radius: .95rem;
    background: linear-gradient(135deg, rgba(var(--broadcast-primary-rgb), .075), rgba(118, 104, 238, .025));
}

.preflight-heading[b-0w7ycj6xa7],
.preflight-heading > div:first-child[b-0w7ycj6xa7] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .65rem;
}

.preflight-heading[b-0w7ycj6xa7] { margin-bottom: .75rem; }

.preflight-details[b-0w7ycj6xa7] {
    padding: .25rem .35rem;
    text-decoration: none;
    font-size: .68rem;
}

.preflight-content[b-0w7ycj6xa7] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(12rem, .42fr);
    gap: .75rem;
}

.preflight-metrics[b-0w7ycj6xa7] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .5rem;
}

.preflight-metric[b-0w7ycj6xa7] {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: .5rem;
    padding: .62rem;
    border: 1px solid rgba(110, 125, 150, .12);
    border-radius: .72rem;
    background: var(--bs-card-bg, #fff);
}

.metric-icon[b-0w7ycj6xa7] {
    display: grid;
    width: 2rem;
    height: 2rem;
    flex: 0 0 2rem;
    place-items: center;
    border-radius: .58rem;
    font-size: 1rem;
}

.preflight-metric > span:last-child[b-0w7ycj6xa7] {
    display: flex;
    min-width: 0;
    flex-direction: column;
}

.preflight-metric strong[b-0w7ycj6xa7] {
    color: var(--broadcast-ink);
    font-size: 1rem;
    line-height: 1.15;
}

.preflight-metric small[b-0w7ycj6xa7] {
    overflow: hidden;
    margin-top: .13rem;
    color: var(--broadcast-muted);
    font-size: .6rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.metric-total .metric-icon[b-0w7ycj6xa7] { color: var(--broadcast-primary); background: rgba(var(--broadcast-primary-rgb), .11); }
.metric-valid .metric-icon[b-0w7ycj6xa7] { color: var(--broadcast-success); background: rgba(39, 184, 121, .11); }
.metric-invalid .metric-icon[b-0w7ycj6xa7] { color: var(--broadcast-danger); background: rgba(235, 91, 102, .1); }

.preflight-loading[b-0w7ycj6xa7] {
    border: 1px solid var(--broadcast-border);
    border-radius: .72rem;
    background: var(--bs-card-bg, #fff);
}

.preflight-loading p[b-0w7ycj6xa7] { margin: 0 0 0 .3rem; }

.send-cta[b-0w7ycj6xa7] {
    display: flex;
    min-height: 3.55rem;
    align-items: center;
    gap: .58rem;
    padding: .55rem .7rem;
    border: 0;
    border-radius: .78rem;
    text-align: right;
    background: linear-gradient(118deg, #5a8dee, #7367f0);
    box-shadow: 0 .55rem 1rem rgba(var(--broadcast-primary-rgb), .24);
}

.send-cta:not(:disabled):hover[b-0w7ycj6xa7] { transform: translateY(-1px); box-shadow: 0 .7rem 1.15rem rgba(var(--broadcast-primary-rgb), .3); }
.send-cta:disabled[b-0w7ycj6xa7] { border: 1px solid var(--broadcast-border); color: var(--broadcast-muted); background: rgba(115, 128, 151, .09); box-shadow: none; opacity: 1; }

.send-cta-icon[b-0w7ycj6xa7] {
    display: grid;
    width: 2.15rem;
    height: 2.15rem;
    flex: 0 0 2.15rem;
    place-items: center;
    border-radius: .6rem;
    color: #fff;
    background: rgba(255,255,255,.16);
    font-size: 1.1rem;
}

.send-cta:disabled .send-cta-icon[b-0w7ycj6xa7] { color: var(--broadcast-muted); background: rgba(115, 128, 151, .1); }
.send-cta > span:nth-child(2)[b-0w7ycj6xa7] { display: flex; min-width: 0; flex: 1; flex-direction: column; }
.send-cta strong[b-0w7ycj6xa7] { font-size: .82rem; }
.send-cta small[b-0w7ycj6xa7] { margin-top: .12rem; font-size: .59rem; opacity: .8; }
.send-cta-arrow[b-0w7ycj6xa7] { font-size: 1.15rem; }

.broadcast-history-header[b-0w7ycj6xa7] {
    display: block;
    padding-bottom: .85rem;
}

.history-title-row[b-0w7ycj6xa7] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
}

.history-count[b-0w7ycj6xa7] {
    display: grid;
    min-width: 1.75rem;
    height: 1.75rem;
    place-items: center;
    border-radius: .55rem;
    color: var(--broadcast-primary);
    background: rgba(var(--broadcast-primary-rgb), .1);
    font-size: .7rem;
    font-weight: 800;
}

.history-search[b-0w7ycj6xa7] {
    position: relative;
    margin-top: .75rem;
}

.history-search > i[b-0w7ycj6xa7] {
    position: absolute;
    z-index: 2;
    top: 50%;
    right: .75rem;
    color: #99a3b5;
    transform: translateY(-50%);
}

.history-search input[b-0w7ycj6xa7] {
    height: 2.55rem;
    padding-right: 2.25rem;
    padding-left: 2.25rem;
    border-color: var(--broadcast-border);
    border-radius: .7rem;
    background: var(--bs-card-bg, #fff);
    font-size: .74rem;
}

.history-search button[b-0w7ycj6xa7] {
    position: absolute;
    top: 50%;
    left: .45rem;
    display: grid;
    width: 1.7rem;
    height: 1.7rem;
    place-items: center;
    border: 0;
    border-radius: .45rem;
    color: var(--broadcast-muted);
    background: transparent;
    transform: translateY(-50%);
}

.broadcast-history-scroll[b-0w7ycj6xa7] {
    max-height: calc(100vh - 235px);
    min-height: 24rem;
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-color: rgba(var(--broadcast-primary-rgb), .35) transparent;
    scrollbar-width: thin;
}

.broadcast-history-scroll[b-0w7ycj6xa7]::-webkit-scrollbar { width: .35rem; }
.broadcast-history-scroll[b-0w7ycj6xa7]::-webkit-scrollbar-thumb { border-radius: 999px; background: rgba(var(--broadcast-primary-rgb), .28); }

.history-list[b-0w7ycj6xa7] { padding: .55rem; }

.history-item[b-0w7ycj6xa7] {
    padding: .72rem;
    border: 1px solid transparent;
    border-radius: .78rem;
    transition: border-color .16s ease, background .16s ease, transform .16s ease;
}

.history-item + .history-item[b-0w7ycj6xa7] { margin-top: .35rem; }
.history-item:hover[b-0w7ycj6xa7] { border-color: rgba(var(--broadcast-primary-rgb), .15); background: rgba(var(--broadcast-primary-rgb), .035); transform: translateY(-1px); }

.history-item-top[b-0w7ycj6xa7],
.history-item-bottom[b-0w7ycj6xa7],
.history-badges[b-0w7ycj6xa7] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .45rem;
}

.history-item-top time[b-0w7ycj6xa7] {
    direction: ltr;
    color: var(--broadcast-muted);
    font-size: .61rem;
    white-space: nowrap;
}

.scope-badge[b-0w7ycj6xa7],
.status-badge[b-0w7ycj6xa7],
.recipient-badge[b-0w7ycj6xa7] {
    display: inline-flex;
    align-items: center;
    gap: .25rem;
    border-radius: 999px;
    font-size: .61rem;
    font-weight: 700;
    white-space: nowrap;
}

.scope-badge[b-0w7ycj6xa7] { padding: .3rem .48rem; color: #4775c7; background: rgba(var(--broadcast-primary-rgb), .1); }
.history-message[b-0w7ycj6xa7] { display: -webkit-box; overflow: hidden; margin: .58rem 0; color: var(--broadcast-ink); font-size: .72rem; line-height: 1.8; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }

.recipient-badge[b-0w7ycj6xa7] {
    padding: .28rem .42rem;
    border: 0;
    color: var(--broadcast-muted);
    background: rgba(115, 128, 151, .08);
}

.recipient-badge:hover[b-0w7ycj6xa7] { color: var(--broadcast-primary); background: rgba(var(--broadcast-primary-rgb), .1); }
.status-badge[b-0w7ycj6xa7] { padding: .28rem .44rem; }
.status-badge > i[b-0w7ycj6xa7] { width: .38rem; height: .38rem; border-radius: 50%; background: currentColor; box-shadow: 0 0 0 .15rem rgba(255,255,255,.45); }
.status-completed[b-0w7ycj6xa7] { color: #16895a; background: rgba(39, 184, 121, .1); }
.status-pending[b-0w7ycj6xa7] { color: #bd7312; background: rgba(245, 159, 50, .12); }
.status-processing[b-0w7ycj6xa7] { color: #2a7ba5; background: rgba(44, 151, 205, .11); }
.status-warning[b-0w7ycj6xa7] { color: #bd7312; background: rgba(245, 159, 50, .12); }
.status-failed[b-0w7ycj6xa7] { color: #ce3f4c; background: rgba(235, 91, 102, .11); }
.status-neutral[b-0w7ycj6xa7] { color: var(--broadcast-muted); background: rgba(115, 128, 151, .09); }

.sms-recipient-status[b-0w7ycj6xa7] {
    display: inline-flex;
    align-items: center;
    gap: .3rem;
    padding: .28rem .48rem;
    border-radius: 999px;
    font-size: .66rem;
    font-weight: 800;
    white-space: nowrap;
}

.sms-recipient-status > i[b-0w7ycj6xa7] { font-size: 1rem; line-height: 1; }
.sms-status-delivered[b-0w7ycj6xa7] { color: #1479d1; background: rgba(20, 121, 209, .10); }
.sms-status-sent[b-0w7ycj6xa7] { color: #20252d; background: rgba(32, 37, 45, .08); }
.sms-status-pending[b-0w7ycj6xa7] { color: #277da7; background: rgba(44, 151, 205, .11); }
.sms-status-failed[b-0w7ycj6xa7] { color: #ce3f4c; background: rgba(235, 91, 102, .11); }
.sms-status-unknown[b-0w7ycj6xa7] { color: #bd7312; background: rgba(245, 159, 50, .12); }
.sms-status-neutral[b-0w7ycj6xa7] { color: var(--broadcast-muted); background: rgba(115, 128, 151, .09); }

.reuse-message-button[b-0w7ycj6xa7] {
    display: inline-flex;
    align-items: center;
    gap: .25rem;
    padding: .3rem .45rem;
    border: 1px solid rgba(var(--broadcast-primary-rgb), .16);
    border-radius: .55rem;
    color: var(--broadcast-primary);
    background: transparent;
    font-size: .61rem;
    font-weight: 700;
    white-space: nowrap;
}

.reuse-message-button:hover[b-0w7ycj6xa7] { background: rgba(var(--broadcast-primary-rgb), .09); }

.history-empty[b-0w7ycj6xa7] {
    display: flex;
    min-height: 22rem;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    padding: 2rem 1.5rem;
    text-align: center;
}

.history-empty > span[b-0w7ycj6xa7] {
    display: grid;
    width: 3.2rem;
    height: 3.2rem;
    margin-bottom: .75rem;
    place-items: center;
    border-radius: .9rem;
    color: var(--broadcast-primary);
    background: rgba(var(--broadcast-primary-rgb), .09);
    font-size: 1.5rem;
}

.history-empty strong[b-0w7ycj6xa7] { color: var(--broadcast-ink); font-size: .82rem; }
.history-empty p[b-0w7ycj6xa7] { max-width: 14rem; margin: .35rem 0 0; color: var(--broadcast-muted); font-size: .69rem; line-height: 1.75; }

.history-skeleton[b-0w7ycj6xa7] { padding: .7rem; }
.history-skeleton span[b-0w7ycj6xa7] { display: block; height: 6.1rem; margin-bottom: .45rem; border-radius: .75rem; background: linear-gradient(100deg, rgba(130,142,165,.08) 20%, rgba(130,142,165,.16) 38%, rgba(130,142,165,.08) 56%); background-size: 220% 100%; animation: broadcastShimmer-b-0w7ycj6xa7 1.35s infinite linear; }

.broadcast-toast[b-0w7ycj6xa7] {
    position: fixed;
    z-index: 1100;
    bottom: 1.35rem;
    left: 5.75rem;
    display: flex;
    min-width: 18rem;
    max-width: min(24rem, calc(100vw - 2rem));
    align-items: center;
    gap: .65rem;
    padding: .72rem;
    border: 1px solid rgba(39, 184, 121, .2);
    border-radius: .85rem;
    background: var(--bs-card-bg, #fff);
    box-shadow: 0 1rem 2.5rem rgba(26, 43, 72, .18);
    animation: broadcastToastIn-b-0w7ycj6xa7 .22s ease-out;
}

.broadcast-toast > span[b-0w7ycj6xa7] { display: grid; width: 2rem; height: 2rem; flex: 0 0 2rem; place-items: center; border-radius: .6rem; color: #fff; background: var(--broadcast-success); }
.broadcast-toast > div[b-0w7ycj6xa7] { display: flex; min-width: 0; flex: 1; flex-direction: column; }
.broadcast-toast strong[b-0w7ycj6xa7] { color: var(--broadcast-ink); font-size: .75rem; }
.broadcast-toast small[b-0w7ycj6xa7] { margin-top: .1rem; color: var(--broadcast-muted); font-size: .65rem; }
.broadcast-toast button[b-0w7ycj6xa7] { display: grid; width: 1.75rem; height: 1.75rem; place-items: center; border: 0; border-radius: .45rem; color: var(--broadcast-muted); background: transparent; }

.broadcast-loading[b-0w7ycj6xa7] {
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(18rem, 1fr);
    gap: 1.25rem;
    padding: .75rem 0;
}

.loading-composer-card[b-0w7ycj6xa7],
.loading-history-card[b-0w7ycj6xa7] { padding: 1.2rem; border: 1px solid rgba(110,125,150,.13); border-radius: 1rem; background: var(--bs-card-bg, #fff); }
.loading-line[b-0w7ycj6xa7] { display: block; border-radius: .65rem; background: linear-gradient(100deg, rgba(130,142,165,.08) 20%, rgba(130,142,165,.17) 38%, rgba(130,142,165,.08) 56%); background-size: 220% 100%; animation: broadcastShimmer-b-0w7ycj6xa7 1.35s infinite linear; }
.loading-title[b-0w7ycj6xa7] { width: 35%; height: 1.6rem; margin-bottom: 1.2rem; }
.loading-field[b-0w7ycj6xa7] { height: 2.8rem; margin-bottom: .8rem; }
.loading-editor[b-0w7ycj6xa7] { height: 10.5rem; margin-bottom: .8rem; }
.loading-summary[b-0w7ycj6xa7] { height: 6rem; }
.loading-history-item[b-0w7ycj6xa7] { height: 5.4rem; margin-bottom: .55rem; }

@keyframes broadcastDot-b-0w7ycj6xa7 { 0%, 70%, 100% { transform: translateY(0); opacity: .35; } 35% { transform: translateY(-.22rem); opacity: 1; } }
@keyframes broadcastShimmer-b-0w7ycj6xa7 { to { background-position-x: -220%; } }
@keyframes broadcastToastIn-b-0w7ycj6xa7 { from { transform: translateY(.7rem); opacity: 0; } to { transform: translateY(0); opacity: 1; } }

@media (max-width: 1199.98px) {
    .preflight-content[b-0w7ycj6xa7] { grid-template-columns: 1fr; }
    .send-cta[b-0w7ycj6xa7] { width: 100%; }
}

@media (max-width: 991.98px) {
    .broadcast-composer-column[b-0w7ycj6xa7] { position: static; }
    .broadcast-history-scroll[b-0w7ycj6xa7] { max-height: 34rem; min-height: 0; }
    .broadcast-loading[b-0w7ycj6xa7] { grid-template-columns: 1fr; }
}

@media (max-width: 575.98px) {
    .broadcast-card-header[b-0w7ycj6xa7],
    .broadcast-history-header[b-0w7ycj6xa7],
    .broadcast-composer-body[b-0w7ycj6xa7] { padding-right: .85rem; padding-left: .85rem; }
    .composer-heading[b-0w7ycj6xa7] { align-items: flex-start; flex-direction: column; }
    .message-editor-footer[b-0w7ycj6xa7] { align-items: flex-start; flex-direction: column; }
    .preflight-heading[b-0w7ycj6xa7] { align-items: flex-start; flex-direction: column; }
    .preflight-details[b-0w7ycj6xa7] { align-self: flex-end; }
    .preflight-metrics[b-0w7ycj6xa7] { grid-template-columns: 1fr; }
    .preflight-metric[b-0w7ycj6xa7] { min-height: 3.25rem; }
    .history-item-bottom[b-0w7ycj6xa7] { align-items: flex-start; flex-direction: column; }
    .reuse-message-button[b-0w7ycj6xa7] { align-self: flex-end; }
    .broadcast-toast[b-0w7ycj6xa7] { right: 1rem; bottom: 5.25rem; left: 1rem; min-width: 0; }
}

@media (prefers-reduced-motion: reduce) {
    .field-loading span[b-0w7ycj6xa7],
    .preflight-loading span[b-0w7ycj6xa7],
    .history-skeleton span[b-0w7ycj6xa7],
    .loading-line[b-0w7ycj6xa7],
    .broadcast-toast[b-0w7ycj6xa7] { animation: none; }
}
/* /Pages/ManagerSmsSettings.razor.rz.scp.css */
.sms-settings-page[b-ciltzhf26y] {
    width: min(100%, 880px);
    margin-inline: auto;
    color: var(--bs-body-color, #263b53);
}

.settings-heading[b-ciltzhf26y], .settings-title[b-ciltzhf26y], .manual-link[b-ciltzhf26y], .activation-row[b-ciltzhf26y],
.activation-title[b-ciltzhf26y], .activation-control[b-ciltzhf26y], .timing-detail[b-ciltzhf26y], .shift-tags[b-ciltzhf26y],
.shift-tags span[b-ciltzhf26y], .recipient-option[b-ciltzhf26y], .settings-footer[b-ciltzhf26y], .save-settings[b-ciltzhf26y] {
    display: flex;
    align-items: center;
}

.settings-heading[b-ciltzhf26y] { justify-content: space-between; gap: 20px; margin-block: 8px 24px; }
.settings-title[b-ciltzhf26y] { gap: 14px; }
.settings-page-icon[b-ciltzhf26y] { display: grid; place-items: center; width: 52px; height: 52px; border-radius: 16px; background: rgba(var(--bs-primary-rgb, 49, 93, 166), .09); color: var(--bs-primary); font-size: 27px; }
.settings-school[b-ciltzhf26y] { display: block; margin-bottom: 5px; font-size: .82rem; color: var(--bs-secondary-color, #677c94); }
.settings-title h3[b-ciltzhf26y] { margin: 0; font-size: 1.35rem; font-weight: 750; }
.manual-link[b-ciltzhf26y] { gap: 7px; flex-shrink: 0; font-size: .88rem; font-weight: 600; color: var(--bs-primary); }
.manual-link i[b-ciltzhf26y] { font-size: 1.1rem; }

.settings-panel[b-ciltzhf26y] { overflow: hidden; background: var(--bs-card-bg, white); border: 1px solid var(--bs-border-color, #e5eaf1); border-radius: 18px; box-shadow: 0 7px 24px rgba(38, 59, 83, .035); }
.activation-row[b-ciltzhf26y] { justify-content: space-between; gap: 20px; padding: 26px 30px; border-bottom: 1px solid var(--bs-border-color, #e5eaf1); }
.activation-title[b-ciltzhf26y] { gap: 10px; font-size: 1.05rem; font-weight: 700; }
.activation-title i[b-ciltzhf26y] { color: var(--bs-primary); font-size: 24px; }
.activation-title label[b-ciltzhf26y] { cursor: pointer; }
.activation-control[b-ciltzhf26y] { gap: 12px; flex-shrink: 0; }
.activation-status[b-ciltzhf26y] { border-radius: 8px; padding: 5px 10px; font-size: .75rem; font-weight: 600; color: var(--bs-secondary-color, #677c94); background: rgba(103, 124, 148, .08); }
.activation-status.is-enabled[b-ciltzhf26y] { color: #147454; background: #e4f4ec; }
.automation-switch[b-ciltzhf26y] { appearance: none; cursor: pointer; position: relative; width: 44px; height: 25px; margin: 0; border: 0; border-radius: 20px; background: #c4cfdb; transition: background .16s; }
.automation-switch[b-ciltzhf26y]::after { content: ''; position: absolute; top: 3px; right: 3px; width: 19px; height: 19px; border-radius: 50%; background: white; box-shadow: 0 1px 3px #0002; transition: transform .16s; }
.automation-switch:checked[b-ciltzhf26y] { background: var(--bs-primary, #315da6); }
.automation-switch:checked[b-ciltzhf26y]::after { transform: translateX(-19px); }
.automation-switch:focus-visible[b-ciltzhf26y] { outline: 3px solid rgba(var(--bs-primary-rgb, 49, 93, 166), .3); outline-offset: 3px; }
.automation-switch:disabled[b-ciltzhf26y] { cursor: wait; opacity: .6; }

.settings-content[b-ciltzhf26y] { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); gap: 28px; padding: 26px 30px 30px; }
.settings-section[b-ciltzhf26y] { min-width: 0; margin: 0; padding: 0; border: 0; }
.section-label[b-ciltzhf26y] { float: none; width: auto; margin: 0 0 15px; font-size: .83rem; font-weight: 700; color: var(--bs-secondary-color, #677c94); }
.timing-section > .section-label[b-ciltzhf26y] { display: block; }
.timing-detail[b-ciltzhf26y] { align-items: flex-start; gap: 13px; }
.timing-icon[b-ciltzhf26y] { display: grid; place-items: center; width: 38px; height: 38px; flex-shrink: 0; border-radius: 11px; color: var(--bs-primary); background: rgba(var(--bs-primary-rgb, 49, 93, 166), .07); font-size: 22px; }
.timing-detail strong[b-ciltzhf26y] { display: block; margin-block: 1px 7px; font-size: .96rem; font-weight: 650; }
.timing-detail p[b-ciltzhf26y] { margin: 0; color: var(--bs-secondary-color, #677c94); font-size: .84rem; line-height: 1.9; }
.shift-tags[b-ciltzhf26y] { gap: 8px; margin-block-start: 14px; padding-inline-start: 51px; }
.shift-tags span[b-ciltzhf26y] { gap: 5px; padding: 4px 9px; border: 1px solid var(--bs-border-color, #e5eaf1); border-radius: 7px; font-size: .75rem; color: var(--bs-secondary-color, #677c94); }
.shift-tags i[b-ciltzhf26y] { font-size: 15px; }

.recipients-section[b-ciltzhf26y] { padding-inline-start: 26px; border-inline-start: 1px solid var(--bs-border-color, #e5eaf1); }
.recipients-section legend[b-ciltzhf26y] { margin-bottom: 13px; padding: 0; }
.recipient-options[b-ciltzhf26y] { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.recipient-option[b-ciltzhf26y] { gap: 10px; min-height: 59px; margin: 0; padding: 13px 16px; border: 1px solid var(--bs-border-color, #dce4ed); border-radius: 11px; cursor: pointer; font-size: .93rem; transition: background .16s, border-color .16s; }
.recipient-option.is-selected[b-ciltzhf26y] { border-color: var(--bs-primary, #315da6); background: rgba(var(--bs-primary-rgb, 49, 93, 166), .045); }
.recipient-option input[b-ciltzhf26y] { width: 17px; height: 17px; margin: 0; margin-inline-start: auto; accent-color: var(--bs-primary, #315da6); cursor: pointer; }
.recipient-option i[b-ciltzhf26y] { color: var(--bs-secondary-color, #677c94); font-size: 21px; }
.recipient-option span[b-ciltzhf26y] { min-width: 30px; }
.settings-footer[b-ciltzhf26y] { gap: 15px; justify-content: space-between; padding: 18px 30px; border-top: 1px solid var(--bs-border-color, #e5eaf1); background: rgba(103, 124, 148, .025); }
.save-state[b-ciltzhf26y] { font-size: .79rem; color: var(--bs-secondary-color, #677c94); }
.save-settings[b-ciltzhf26y] { justify-content: center; gap: 6px; min-height: 43px; border-radius: 9px; font-weight: 600; }
.save-settings i[b-ciltzhf26y] { font-size: 21px; }
.settings-loading[b-ciltzhf26y] { display: flex; justify-content: center; align-items: center; gap: 12px; padding: 60px 24px; color: var(--bs-secondary-color, #677c94); }
.settings-error[b-ciltzhf26y] { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 0; padding: 18px 30px; color: var(--bs-danger, #b33c49); font-size: .87rem; }

@media (max-width: 767px) {
    .settings-content[b-ciltzhf26y] { grid-template-columns: 1fr; gap: 23px; padding-inline: 22px; }
    .recipients-section[b-ciltzhf26y] { padding-inline-start: 0; border-inline-start: 0; }
}

@media (max-width: 575px) {
    .settings-heading[b-ciltzhf26y] { align-items: flex-start; gap: 12px; margin-bottom: 18px; }
    .settings-title[b-ciltzhf26y] { gap: 10px; }
    .settings-page-icon[b-ciltzhf26y] { width: 40px; height: 40px; border-radius: 12px; font-size: 22px; }
    .settings-title h3[b-ciltzhf26y] { font-size: 1.08rem; line-height: 1.6; }
    .settings-school[b-ciltzhf26y] { font-size: .75rem; }
    .manual-link[b-ciltzhf26y] { margin-top: 9px; font-size: .77rem; }
    .activation-row[b-ciltzhf26y] { padding: 20px 18px; gap: 12px; }
    .activation-title[b-ciltzhf26y] { font-size: .9rem; gap: 7px; }
    .activation-status[b-ciltzhf26y] { display: none; }
    .settings-content[b-ciltzhf26y] { padding: 23px 18px; }
    .timing-detail strong[b-ciltzhf26y] { font-size: .88rem; line-height: 1.8; }
    .timing-detail p[b-ciltzhf26y] { font-size: .79rem; }
    .settings-footer[b-ciltzhf26y] { padding: 16px 18px; }
    .recipient-option[b-ciltzhf26y] { padding-inline: 12px; gap: 7px; }
    .settings-error[b-ciltzhf26y] { padding-inline: 18px; }
}
/* /Pages/ManagerStaffAttendance.razor.rz.scp.css */
.manager-staff-attendance-page[b-kxz1ogrd0j] { max-width: 1500px; }

.attendance-page-header[b-kxz1ogrd0j] { display: flex; min-height: 72px; align-items: center; justify-content: space-between; gap: 1rem; padding: .85rem 1rem; border: 1px solid rgba(var(--bs-primary-rgb), .18); border-radius: .9rem; background: linear-gradient(135deg, rgba(var(--bs-primary-rgb), .105), rgba(var(--bs-primary-rgb), .025) 62%, var(--bs-card-bg)); box-shadow: 0 .35rem 1.2rem rgba(34, 48, 62, .055); }
.attendance-page-title[b-kxz1ogrd0j] { display: flex; align-items: center; gap: .7rem; color: var(--bs-heading-color); font-size: 1.2rem; }
.attendance-title-icon[b-kxz1ogrd0j] { display: grid; width: 40px; height: 40px; flex: 0 0 40px; place-items: center; border-radius: .72rem; color: var(--bs-primary); background: rgba(var(--bs-primary-rgb), .13); font-size: 1.3rem; }
.attendance-report-button[b-kxz1ogrd0j] { min-height: 38px; border-color: rgba(var(--bs-primary-rgb), .45); background: color-mix(in srgb, var(--bs-card-bg) 78%, transparent); white-space: nowrap; }
.attendance-toolbar[b-kxz1ogrd0j] { border: 1px solid rgba(var(--bs-primary-rgb), .14); background: linear-gradient(135deg, rgba(var(--bs-primary-rgb), .055), var(--bs-card-bg) 48%); box-shadow: 0 .35rem 1.2rem rgba(34, 48, 62, .05); }
.toolbar-grid[b-kxz1ogrd0j] { display: flex; align-items: end; gap: .85rem; }
.toolbar-field label[b-kxz1ogrd0j] { display: block; margin-bottom: .3rem; color: var(--bs-secondary-color); font-size: .72rem; font-weight: 700; }
.date-field[b-kxz1ogrd0j] { width: 180px; }
.date-control-wrap[b-kxz1ogrd0j] { display: flex; align-items: end; gap: .35rem; }
.date-control-wrap .form-control[b-kxz1ogrd0j],
.date-control-wrap .input-group-text[b-kxz1ogrd0j],
.date-arrow[b-kxz1ogrd0j],
.today-button[b-kxz1ogrd0j] { min-height: 34px; height: 34px; }
.date-control-wrap .form-control[b-kxz1ogrd0j] { padding-block: .35rem; font-size: .82rem; }
.date-control-wrap .input-group-text[b-kxz1ogrd0j] { padding-block: .35rem; }
.date-arrow[b-kxz1ogrd0j] { display: grid; width: 34px; min-width: 34px; margin-bottom: 0; place-items: center; padding: 0; border: 1px solid var(--bs-border-color); background: var(--bs-card-bg); }
.date-arrow i[b-kxz1ogrd0j] { font-size: 1.05rem; }
.today-button[b-kxz1ogrd0j] { margin-bottom: 0; white-space: nowrap; }
.toolbar-filters[b-kxz1ogrd0j] { display: flex; flex: 1; justify-content: flex-end; gap: .55rem; }
.search-box[b-kxz1ogrd0j] { max-width: 260px; }
.compact-filter[b-kxz1ogrd0j] { width: auto; min-width: 125px; }

.summary-grid[b-kxz1ogrd0j] { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: .75rem; }
.summary-card[b-kxz1ogrd0j] { position: relative; display: flex; min-height: 82px; align-items: center; gap: .8rem; overflow: hidden; padding: .9rem 1rem; border: 1px solid var(--bs-border-color); border-radius: .85rem; background: var(--bs-card-bg); box-shadow: 0 .25rem .9rem rgba(34, 48, 62, .04); }
.summary-card[b-kxz1ogrd0j]::after { position: absolute; inset-inline-end: -22px; bottom: -32px; width: 82px; height: 82px; border-radius: 50%; background: currentColor; content: ''; opacity: .055; }
.summary-card > i[b-kxz1ogrd0j] { display: grid; width: 40px; height: 40px; flex: 0 0 auto; place-items: center; border-radius: .7rem; background: currentColor; font-size: 1.35rem; }
.summary-card > i[b-kxz1ogrd0j]::before { color: white; }
.summary-card > span[b-kxz1ogrd0j] { display: flex; flex-direction: column; }
.summary-card strong[b-kxz1ogrd0j] { color: var(--bs-heading-color); font-size: 1.35rem; line-height: 1.15; }
.summary-card small[b-kxz1ogrd0j] { margin-top: .25rem; color: var(--bs-secondary-color); font-size: .75rem; }
.summary-total[b-kxz1ogrd0j] { color: #696cff; }.summary-present[b-kxz1ogrd0j] { color: #28c76f; }.summary-absent[b-kxz1ogrd0j] { color: #ea5455; }.summary-late[b-kxz1ogrd0j] { color: #ff9f43; }.summary-pending[b-kxz1ogrd0j] { color: #8592a3; }

.staff-list-card[b-kxz1ogrd0j] { overflow: hidden; border: 1px solid var(--bs-border-color); box-shadow: 0 .4rem 1.3rem rgba(34, 48, 62, .055); }
.list-header[b-kxz1ogrd0j] { display: flex; align-items: center; justify-content: space-between; padding: 1rem 1.15rem; border-bottom: 1px solid var(--bs-border-color); background: rgba(var(--bs-primary-rgb), .018); }
.list-header-actions[b-kxz1ogrd0j] { display: flex; align-items: center; gap: .5rem; }
.date-badge[b-kxz1ogrd0j] { display: inline-flex; align-items: center; gap: .4rem; padding: .42rem .7rem; border-radius: 2rem; color: var(--bs-primary); background: rgba(var(--bs-primary-rgb), .1); font-size: .77rem; font-weight: 700; }
.list-header-actions .mark-all-present[b-kxz1ogrd0j] { min-height: 34px; height: 34px; white-space: nowrap; }
.staff-row[b-kxz1ogrd0j] { display: flex; min-height: 82px; align-items: center; justify-content: space-between; gap: 1rem; padding: .85rem 1.15rem; border-inline-start: 3px solid transparent !important; transition: background-color .18s ease, border-color .18s ease; }
.staff-row:hover[b-kxz1ogrd0j] { background: rgba(var(--bs-primary-rgb), .025); }
.staff-row-dirty[b-kxz1ogrd0j] { border-inline-start-color: #ff9f43 !important; background: rgba(255, 159, 67, .035); }
.staff-identity[b-kxz1ogrd0j] { display: flex; min-width: 220px; align-items: center; gap: .75rem; }
.staff-copy[b-kxz1ogrd0j], .name-line[b-kxz1ogrd0j], .meta-line[b-kxz1ogrd0j] { display: flex; align-items: center; }
.staff-copy[b-kxz1ogrd0j] { min-width: 0; flex-direction: column; align-items: flex-start; gap: .28rem; }
.name-line[b-kxz1ogrd0j] { flex-wrap: wrap; gap: .4rem; }
.meta-line[b-kxz1ogrd0j] { gap: .7rem; color: var(--bs-secondary-color); font-size: .74rem; }
.dirty-badge[b-kxz1ogrd0j] { padding: .17rem .4rem; border-radius: 2rem; color: #b96900; background: rgba(255, 159, 67, .16); font-size: .62rem; font-weight: 700; }
.staff-actions[b-kxz1ogrd0j] { display: flex; align-items: center; gap: .45rem; }
.status-segment[b-kxz1ogrd0j] { display: inline-flex; overflow: hidden; padding: .22rem; border: 1px solid var(--bs-border-color); border-radius: .65rem; background: var(--bs-body-bg); }
.status-segment button[b-kxz1ogrd0j] { display: inline-flex; min-height: 32px; align-items: center; gap: .25rem; padding: .32rem .65rem; border: 0; border-radius: .45rem; color: var(--bs-secondary-color); background: transparent; font-size: .76rem; font-weight: 600; transition: all .16s ease; }
.status-segment button:hover[b-kxz1ogrd0j] { background: rgba(var(--bs-primary-rgb), .07); }
.status-segment button.active[b-kxz1ogrd0j] { color: white; box-shadow: 0 3px 10px rgba(34, 48, 62, .12); }
.status-segment button.present[b-kxz1ogrd0j] { background: #28c76f; }.status-segment button.absent[b-kxz1ogrd0j] { background: #ea5455; }.status-segment button.late[b-kxz1ogrd0j] { color: #5f3900; background: #ffb84d; }
.icon-action[b-kxz1ogrd0j] { display: grid; width: 36px; height: 36px; place-items: center; border: 1px solid var(--bs-border-color); border-radius: .6rem; color: var(--bs-secondary-color); background: var(--bs-card-bg); }
.icon-action.has-note[b-kxz1ogrd0j] { border-color: rgba(var(--bs-primary-rgb), .25); color: var(--bs-primary); background: rgba(var(--bs-primary-rgb), .09); }
.icon-action.clear-action[b-kxz1ogrd0j] { color: #ea5455; }
.empty-list[b-kxz1ogrd0j], .empty-state-card[b-kxz1ogrd0j] { padding: 3.5rem 1.25rem; }
.empty-list[b-kxz1ogrd0j] { text-align: center; }
.empty-list > i[b-kxz1ogrd0j], .empty-state-card > i[b-kxz1ogrd0j] { margin-bottom: .75rem; color: var(--bs-secondary-color); font-size: 3rem; opacity: .65; }
.empty-list p[b-kxz1ogrd0j] { max-width: 560px; margin: .4rem auto 0; color: var(--bs-secondary-color); font-size: .8rem; }

.save-dock[b-kxz1ogrd0j] { position: sticky; z-index: 5; bottom: 1rem; display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: .8rem 1rem; border: 1px solid var(--bs-border-color); border-radius: .85rem; background: color-mix(in srgb, var(--bs-card-bg) 92%, transparent); box-shadow: 0 .6rem 1.8rem rgba(34, 48, 62, .14); backdrop-filter: blur(12px); }
.save-dock-active[b-kxz1ogrd0j] { border-color: rgba(var(--bs-primary-rgb), .35); }
.save-dock > div[b-kxz1ogrd0j] { display: flex; flex-direction: column; }
.save-dock small[b-kxz1ogrd0j] { margin-top: .12rem; color: var(--bs-secondary-color); font-size: .72rem; }
.save-pulse[b-kxz1ogrd0j] { display: inline-flex; gap: 3px; margin-inline-end: .45rem; }
.save-pulse i[b-kxz1ogrd0j] { width: 5px; height: 5px; border-radius: 50%; background: currentColor; animation: savePulse-b-kxz1ogrd0j .9s ease-in-out infinite; }
.save-pulse i:nth-child(2)[b-kxz1ogrd0j] { animation-delay: .15s; }.save-pulse i:nth-child(3)[b-kxz1ogrd0j] { animation-delay: .3s; }

.attendance-modal[b-kxz1ogrd0j] { position: fixed; z-index: 1095; inset: 0; display: grid; overflow-y: auto; place-items: center; padding: 1rem; direction: rtl; background: rgba(20, 28, 45, .55); backdrop-filter: blur(3px); }
.attendance-modal .modal-dialog[b-kxz1ogrd0j] { display: block; width: 100%; max-width: 500px; min-height: 0; margin: auto; pointer-events: auto; }
.attendance-modal .modal-dialog.modal-sm[b-kxz1ogrd0j] { max-width: 390px; }
.attendance-modal .description-modal-dialog[b-kxz1ogrd0j] { max-width: 560px; }
.attendance-modal .modal-content[b-kxz1ogrd0j] { overflow: hidden; color: var(--bs-body-color, #566a7f); border: 1px solid var(--bs-border-color, #d9dee3); border-radius: 1rem; background: var(--bs-card-bg, #fff); box-shadow: 0 1rem 3rem rgba(20, 28, 45, .3); }
.attendance-modal .modal-header[b-kxz1ogrd0j] { min-height: 72px; padding: .9rem 1rem; border-bottom: 1px solid var(--bs-border-color, #d9dee3); background: linear-gradient(135deg, rgba(var(--bs-primary-rgb), .075), transparent 72%); }
.attendance-modal .modal-header .btn-close[b-kxz1ogrd0j] { width: 32px; height: 32px; flex: 0 0 32px; margin: 0 !important; padding: 0; border-radius: .6rem; background-color: rgba(133, 146, 163, .12); background-size: .62rem; opacity: .8; }
.attendance-modal .modal-header .btn-close:hover[b-kxz1ogrd0j] { background-color: rgba(133, 146, 163, .2); opacity: 1; }
.attendance-modal .modal-body[b-kxz1ogrd0j] { padding: 1.15rem; }
.attendance-modal .modal-footer[b-kxz1ogrd0j] { padding: .9rem 1.15rem; border-top: 1px solid var(--bs-border-color, #d9dee3); background: rgba(var(--bs-primary-rgb), .018); }
.attendance-modal .modal-footer > *[b-kxz1ogrd0j] { margin: 0; }
.attendance-modal .modal-title[b-kxz1ogrd0j],
.attendance-modal .confirm-body h5[b-kxz1ogrd0j] { color: var(--bs-heading-color, #384551); }
.attendance-modal-heading[b-kxz1ogrd0j] { display: flex; min-width: 0; align-items: center; gap: .7rem; }
.attendance-modal-heading > span:last-child[b-kxz1ogrd0j] { display: flex; min-width: 0; flex-direction: column; gap: .18rem; }
.attendance-modal-heading .modal-title[b-kxz1ogrd0j] { font-size: 1.02rem; font-weight: 700; }
.attendance-modal-heading small[b-kxz1ogrd0j] { overflow: hidden; color: var(--bs-secondary-color); font-size: .75rem; font-weight: 600; text-overflow: ellipsis; white-space: nowrap; }
.attendance-modal-icon[b-kxz1ogrd0j] { display: grid; width: 38px; height: 38px; flex: 0 0 38px; place-items: center; border-radius: .7rem; font-size: 1.2rem; }
.attendance-modal-icon.late[b-kxz1ogrd0j] { color: #b96900; background: rgba(255, 159, 67, .15); }
.attendance-modal-icon.note[b-kxz1ogrd0j] { color: var(--bs-primary); background: rgba(var(--bs-primary-rgb), .12); }
.attendance-modal-help[b-kxz1ogrd0j] { margin: 0 0 1.15rem; color: var(--bs-secondary-color); font-size: .78rem; }
.attendance-modal-actions[b-kxz1ogrd0j] { display: flex; align-items: center; justify-content: flex-end; gap: .55rem; }
.attendance-modal-actions .btn[b-kxz1ogrd0j] { min-width: 104px; }
.description-label-row[b-kxz1ogrd0j] { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-bottom: .55rem; }
.description-label-row label[b-kxz1ogrd0j] { color: var(--bs-heading-color); font-size: .8rem; font-weight: 700; }
.description-label-row small[b-kxz1ogrd0j] { color: var(--bs-secondary-color); font-size: .7rem; }
.attendance-description-input[b-kxz1ogrd0j] { min-height: 142px; padding: .8rem .9rem; line-height: 1.85; resize: vertical; }
.description-modal-footer[b-kxz1ogrd0j] { justify-content: space-between; gap: .75rem; }
.clear-description-button[b-kxz1ogrd0j] { white-space: nowrap; }
.attendance-modal .confirm-body[b-kxz1ogrd0j] { padding: 1.75rem; text-align: center; }
.confirm-body p[b-kxz1ogrd0j] { margin: .65rem 0 1.35rem; color: var(--bs-secondary-color); }
.confirm-body > div:last-child[b-kxz1ogrd0j] { display: flex; justify-content: center; gap: .55rem; }
.confirm-icon[b-kxz1ogrd0j] { display: grid; width: 54px; height: 54px; margin: 0 auto 1rem; place-items: center; border-radius: 1rem; font-size: 1.65rem; }
.confirm-icon.primary[b-kxz1ogrd0j] { color: var(--bs-primary); background: rgba(var(--bs-primary-rgb), .12); }.confirm-icon.danger[b-kxz1ogrd0j] { color: #ea5455; background: rgba(234, 84, 85, .12); }.confirm-icon.warning[b-kxz1ogrd0j] { color: #b96900; background: rgba(255, 159, 67, .15); }.confirm-icon.success[b-kxz1ogrd0j] { color: #159957; background: rgba(40, 199, 111, .14); }
.delay-stepper[b-kxz1ogrd0j] { display: grid; grid-template-columns: 42px 55px auto 42px; align-items: center; justify-content: center; gap: .4rem; }
.delay-stepper button[b-kxz1ogrd0j] { display: grid; width: 42px; height: 42px; place-items: center; border: 1px solid rgba(var(--bs-primary-rgb), .25); border-radius: .65rem; color: var(--bs-primary); background: rgba(var(--bs-primary-rgb), .07); }
.delay-stepper button:disabled[b-kxz1ogrd0j] { color: var(--bs-secondary-color); border-color: var(--bs-border-color); background: rgba(133, 146, 163, .07); opacity: .55; }
.delay-stepper strong[b-kxz1ogrd0j] { font-size: 1.7rem; }.delay-stepper span[b-kxz1ogrd0j] { color: var(--bs-secondary-color); font-size: .75rem; }
.delay-range[b-kxz1ogrd0j] { margin-top: 1.25rem; margin-bottom: .2rem; }
.delay-range-labels[b-kxz1ogrd0j] { display: flex; justify-content: space-between; color: var(--bs-secondary-color); font-size: .65rem; }

.skeleton-card[b-kxz1ogrd0j], .staff-skeleton span[b-kxz1ogrd0j] { overflow: hidden; background: var(--bs-border-color); }
.skeleton-card[b-kxz1ogrd0j]::before, .staff-skeleton span[b-kxz1ogrd0j]::before { position: absolute; inset: 0; content: ''; transform: translateX(-100%); animation: skeletonWave-b-kxz1ogrd0j 1.35s infinite; background: linear-gradient(90deg, transparent, rgba(255,255,255,.52), transparent); }
.skeleton-card[b-kxz1ogrd0j] { position: relative; display: flex; flex-direction: column; align-items: flex-start; justify-content: center; gap: .55rem; }
.skeleton-card span[b-kxz1ogrd0j] { width: 55%; height: 10px; border-radius: 1rem; background: rgba(255,255,255,.58); }.skeleton-card span:first-child[b-kxz1ogrd0j] { width: 32%; height: 18px; }
.staff-skeleton[b-kxz1ogrd0j] { display: flex; align-items: center; gap: .8rem; min-height: 76px; border-bottom: 1px solid var(--bs-border-color); }
.staff-skeleton:last-child[b-kxz1ogrd0j] { border-bottom: 0; }
.staff-skeleton span[b-kxz1ogrd0j] { position: relative; display: block; border-radius: .6rem; }
.skeleton-avatar[b-kxz1ogrd0j] { width: 42px; height: 42px; border-radius: 50% !important; }.skeleton-copy[b-kxz1ogrd0j] { width: min(230px, 35%); height: 30px; }.skeleton-actions[b-kxz1ogrd0j] { width: min(310px, 42%); height: 38px; margin-inline-start: auto; }

@keyframes skeletonWave-b-kxz1ogrd0j { 100% { transform: translateX(100%); } }
@keyframes savePulse-b-kxz1ogrd0j { 0%, 100% { transform: translateY(0); opacity: .45; } 50% { transform: translateY(-3px); opacity: 1; } }

@media (max-width: 1199.98px) { .toolbar-grid[b-kxz1ogrd0j] { flex-wrap: wrap; }.toolbar-filters[b-kxz1ogrd0j] { flex-basis: 100%; justify-content: flex-start; }.search-box[b-kxz1ogrd0j] { max-width: none; flex: 1; } }
@media (max-width: 767.98px) {
    .attendance-page-header[b-kxz1ogrd0j] { min-height: 0; align-items: stretch; flex-direction: column; }.attendance-page-header .btn[b-kxz1ogrd0j] { align-self: flex-start; }.attendance-page-title[b-kxz1ogrd0j] { font-size: 1.05rem; }
    .toolbar-grid[b-kxz1ogrd0j], .toolbar-filters[b-kxz1ogrd0j] { align-items: stretch; flex-direction: column; }.search-box[b-kxz1ogrd0j], .compact-filter[b-kxz1ogrd0j] { width: 100%; max-width: none; }
    .date-control-wrap[b-kxz1ogrd0j] { flex-wrap: wrap; align-items: end; }.date-field[b-kxz1ogrd0j] { flex: 1; width: auto; min-width: 155px; }
    .list-header[b-kxz1ogrd0j] { align-items: flex-start; flex-direction: column; gap: .75rem; }.list-header-actions[b-kxz1ogrd0j] { width: 100%; justify-content: space-between; }
    .summary-grid[b-kxz1ogrd0j] { grid-template-columns: repeat(2, minmax(0, 1fr)); }.summary-card:first-child[b-kxz1ogrd0j] { grid-column: span 2; }
    .staff-row[b-kxz1ogrd0j] { align-items: stretch; flex-direction: column; }.staff-actions[b-kxz1ogrd0j] { align-items: stretch; }.status-segment[b-kxz1ogrd0j] { display: grid; flex: 1; grid-template-columns: repeat(3, 1fr); }.status-segment button[b-kxz1ogrd0j] { justify-content: center; padding-inline: .35rem; }
    .save-dock[b-kxz1ogrd0j] { align-items: stretch; flex-direction: column; }.save-dock .btn[b-kxz1ogrd0j] { width: 100%; }
    .attendance-modal[b-kxz1ogrd0j] { padding: .75rem; }
    .attendance-modal .modal-header[b-kxz1ogrd0j] { min-height: 66px; padding: .75rem .8rem; }
    .attendance-modal .modal-body[b-kxz1ogrd0j] { padding: 1rem; }
    .attendance-modal .modal-footer[b-kxz1ogrd0j] { padding: .8rem 1rem; }
    .description-modal-footer[b-kxz1ogrd0j] { align-items: stretch; flex-direction: column-reverse; }
    .description-modal-footer .attendance-modal-actions[b-kxz1ogrd0j] { width: 100%; }
    .description-modal-footer .attendance-modal-actions .btn[b-kxz1ogrd0j] { flex: 1; min-width: 0; }
    .clear-description-button[b-kxz1ogrd0j] { align-self: flex-start; }
}
@media (max-width: 399.98px) { .status-segment button i[b-kxz1ogrd0j] { display: none; }.status-segment button[b-kxz1ogrd0j] { font-size: .7rem; }.date-arrow[b-kxz1ogrd0j] { display: none; } }
@media (prefers-reduced-motion: reduce) { .skeleton-card[b-kxz1ogrd0j]::before, .staff-skeleton span[b-kxz1ogrd0j]::before, .save-pulse i[b-kxz1ogrd0j] { animation: none; } }
/* /Pages/ManagerStudentAttendance.razor.rz.scp.css */
.manager-student-attendance-page[b-5hwcas2v84] { max-width: 1500px; margin-inline: auto; }
.page-heading[b-5hwcas2v84] { display: flex; align-items: center; gap: .8rem; }
.page-heading h4[b-5hwcas2v84] { color: var(--bs-heading-color); }
.heading-icon[b-5hwcas2v84] { width: 44px; height: 44px; display: grid; place-items: center; border-radius: 14px; color: #fff; font-size: 1.45rem; background: linear-gradient(135deg, #696cff, #8b5cf6); box-shadow: 0 8px 22px rgba(105,108,255,.24); }
.attendance-toolbar[b-5hwcas2v84] { border: 0; box-shadow: 0 3px 16px rgba(34,48,62,.07); }
.attendance-toolbar .card-body[b-5hwcas2v84] { display: flex; align-items: end; justify-content: space-between; gap: 1rem; padding: 1rem; }
.date-control[b-5hwcas2v84] { display: flex; align-items: end; gap: .45rem; }
.date-field[b-5hwcas2v84] { width: 190px; }
.date-field label[b-5hwcas2v84], .lesson-filters label[b-5hwcas2v84] { display: block; margin-bottom: .3rem; color: var(--bs-secondary-color); font-size: .72rem; font-weight: 700; }
.date-arrow[b-5hwcas2v84] { width: 36px; height: 32px; border: 1px solid var(--bs-border-color); border-radius: .45rem; background: var(--bs-body-bg); color: var(--bs-heading-color); font-size: 1.15rem; }
.date-arrow:hover[b-5hwcas2v84] { color: #696cff; border-color: #696cff; }
.lesson-filters[b-5hwcas2v84] { display: flex; align-items: end; justify-content: end; gap: .7rem; flex: 1; }
.lesson-filters > div[b-5hwcas2v84] { flex: 1 1 130px; min-width: 110px; max-width: 180px; }
.day-summary[b-5hwcas2v84] { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .75rem; }
.day-summary > div[b-5hwcas2v84] { display: grid; grid-template-columns: auto auto 1fr; align-items: center; gap: .6rem; min-height: 70px; padding: .9rem 1.1rem; background: var(--bs-body-bg); border: 1px solid var(--bs-border-color); border-radius: .75rem; box-shadow: 0 3px 14px rgba(34,48,62,.05); }
.day-summary i[b-5hwcas2v84] { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 11px; color: #696cff; background: rgba(105,108,255,.12); font-size: 1.25rem; }
.day-summary strong[b-5hwcas2v84] { font-size: 1.35rem; }
.day-summary span[b-5hwcas2v84] { color: var(--bs-secondary-color); font-size: .8rem; }
.day-summary .completed i[b-5hwcas2v84] { color: #28c76f; background: rgba(40,199,111,.12); }
.day-summary .pending i[b-5hwcas2v84] { color: #ff9f43; background: rgba(255,159,67,.14); }
.schedule-board[b-5hwcas2v84] { display: grid; gap: .75rem; }
.lesson-shell[b-5hwcas2v84] { overflow: hidden; border: 1px solid var(--bs-border-color); border-radius: .85rem; background: var(--bs-body-bg); box-shadow: 0 4px 16px rgba(34,48,62,.055); transition: border-color .2s, box-shadow .2s; }
.lesson-shell.expanded[b-5hwcas2v84] { border-color: rgba(105,108,255,.45); box-shadow: 0 9px 28px rgba(105,108,255,.11); }
.lesson-card[b-5hwcas2v84] { width: 100%; display: grid; grid-template-columns: 118px minmax(220px, 1fr) minmax(190px, auto) 28px; align-items: center; gap: 1rem; padding: .9rem 1rem; text-align: right; color: inherit; border: 0; background: transparent; }
.lesson-card:disabled[b-5hwcas2v84] { opacity: .75; }
.lesson-time[b-5hwcas2v84] { align-self: stretch; display: flex; flex-direction: column; justify-content: center; padding-left: .8rem; border-left: 1px solid var(--bs-border-color); }
.lesson-time strong[b-5hwcas2v84] { color: #696cff; font-size: 1.08rem; }
.lesson-time small[b-5hwcas2v84], .lesson-main small[b-5hwcas2v84], .lesson-state small[b-5hwcas2v84] { margin-top: .18rem; color: var(--bs-secondary-color); font-size: .75rem; }
.lesson-main[b-5hwcas2v84] { display: flex; flex-direction: column; min-width: 0; }
.lesson-main strong[b-5hwcas2v84] { font-size: .95rem; }
.lesson-state[b-5hwcas2v84] { display: flex; flex-direction: column; align-items: flex-end; }
.lesson-state > span[b-5hwcas2v84] { display: inline-flex; align-items: center; gap: .3rem; padding: .3rem .6rem; border-radius: 99px; font-size: .73rem; font-weight: 700; }
.lesson-state.done > span[b-5hwcas2v84] { color: #1c9b55; background: rgba(40,199,111,.12); }
.lesson-state.waiting > span[b-5hwcas2v84] { color: #d27615; background: rgba(255,159,67,.14); }
.expand-icon[b-5hwcas2v84] { color: var(--bs-secondary-color); font-size: 1.35rem; transition: transform .2s; }
.expanded .expand-icon[b-5hwcas2v84] { transform: rotate(180deg); color: #696cff; }
.attendance-editor[b-5hwcas2v84] { padding: 1rem; background: color-mix(in srgb, var(--bs-body-bg) 94%, #696cff 6%); border-top: 1px solid var(--bs-border-color); }
.editor-header[b-5hwcas2v84] { display: flex; justify-content: space-between; align-items: center; gap: 1rem; margin-bottom: 1rem; }
.editor-header h5[b-5hwcas2v84] { margin: 0 0 .2rem; font-size: 1rem; }
.editor-header span[b-5hwcas2v84] { color: var(--bs-secondary-color); font-size: .78rem; }
.editor-loading[b-5hwcas2v84], .editor-empty[b-5hwcas2v84] { display: flex; justify-content: center; align-items: center; gap: .6rem; min-height: 120px; color: var(--bs-secondary-color); }
.student-scroll-area[b-5hwcas2v84] { max-height: min(56vh, 620px); overflow-y: auto; overflow-x: hidden; overscroll-behavior: contain; scrollbar-gutter: stable; scrollbar-width: thin; scrollbar-color: rgba(105,108,255,.5) transparent; padding: .2rem .2rem .4rem; border-radius: .65rem; }
.student-scroll-area:focus-visible[b-5hwcas2v84] { outline: 2px solid #696cff; outline-offset: 3px; }
.student-scroll-area[b-5hwcas2v84]::-webkit-scrollbar { width: 8px; }
.student-scroll-area[b-5hwcas2v84]::-webkit-scrollbar-thumb { border: 2px solid transparent; border-radius: 8px; background: rgba(105,108,255,.5); background-clip: padding-box; }
.student-grid[b-5hwcas2v84] { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .75rem; }
.student-card[b-5hwcas2v84] { position: relative; padding: .8rem; border: 1px solid var(--bs-border-color); border-radius: .75rem; background: var(--bs-body-bg); transition: border-color .18s, transform .18s; }
.student-card:hover[b-5hwcas2v84] { transform: translateY(-1px); }
.student-card.is-present[b-5hwcas2v84] { border-color: rgba(40,199,111,.38); }
.student-card.is-absent[b-5hwcas2v84] { border-color: rgba(234,84,85,.38); }
.student-card.is-late[b-5hwcas2v84] { border-color: rgba(255,159,67,.48); }
.student-name[b-5hwcas2v84] { display: flex; align-items: center; gap: .55rem; margin-bottom: .75rem; min-width: 0; }
.student-name > span[b-5hwcas2v84] { flex: 0 0 34px; width: 34px; height: 34px; display: grid; place-items: center; border-radius: 50%; color: #696cff; background: rgba(105,108,255,.12); font-size: .73rem; font-weight: 800; }
.student-name strong[b-5hwcas2v84] { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: .84rem; }
.status-buttons[b-5hwcas2v84] { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .4rem; }
.status-buttons .present[b-5hwcas2v84] { --status-color: #18824b; --status-accent: #28c76f; }
.status-buttons .absent[b-5hwcas2v84] { --status-color: #c33946; --status-accent: #ea5455; }
.status-buttons .late[b-5hwcas2v84] { --status-color: #a46109; --status-accent: #e69a27; }
.status-buttons button[b-5hwcas2v84] { display: flex; align-items: center; justify-content: center; gap: .25rem; min-height: 40px; padding: .45rem .3rem; border: 1px solid color-mix(in srgb, var(--status-accent) 60%, var(--bs-border-color)); border-radius: .5rem; background: color-mix(in srgb, var(--bs-body-bg) 90%, var(--status-accent) 10%); color: color-mix(in srgb, var(--status-color) 65%, var(--bs-body-color)); box-shadow: 0 2px 5px rgba(34,48,62,.06); font-size: .75rem; font-weight: 700; cursor: pointer; transition: background .15s, border-color .15s, box-shadow .15s, transform .15s; }
.status-buttons button i[b-5hwcas2v84] { font-size: 1rem; }
.status-buttons button:hover:not(:disabled)[b-5hwcas2v84] { border-color: var(--status-color); background: color-mix(in srgb, var(--bs-body-bg) 80%, var(--status-accent) 20%); transform: translateY(-1px); box-shadow: 0 3px 8px rgba(34,48,62,.12); }
.status-buttons button.active[b-5hwcas2v84], .status-buttons button.active:hover[b-5hwcas2v84] { color: #fff; border-color: var(--status-color); background: var(--status-color); box-shadow: 0 3px 8px color-mix(in srgb, var(--status-accent) 25%, transparent); }
.status-buttons button:focus-visible[b-5hwcas2v84] { outline: 2px solid var(--status-color); outline-offset: 2px; }
.status-buttons button:disabled[b-5hwcas2v84] { opacity: .6; cursor: wait; }
.delay-field[b-5hwcas2v84] { display: flex; align-items: center; justify-content: space-between; gap: .5rem; margin-top: .65rem; color: var(--bs-secondary-color); font-size: .7rem; }
.delay-field input[b-5hwcas2v84] { width: 56px; padding: .2rem .3rem; text-align: center; border: 1px solid var(--bs-border-color); border-radius: .35rem; color: var(--bs-body-color); background: var(--bs-body-bg); }
.save-dock[b-5hwcas2v84] { display: flex; justify-content: space-between; align-items: center; gap: 1rem; margin-top: 1rem; padding: .75rem .9rem; border: 1px solid rgba(105,108,255,.28); border-radius: .7rem; background: color-mix(in srgb, var(--bs-body-bg) 94%, #696cff 6%); box-shadow: 0 8px 24px rgba(34,48,62,.12); }
.save-dock > div[b-5hwcas2v84] { display: flex; flex-direction: column; }
.save-dock strong[b-5hwcas2v84] { font-size: .82rem; }
.save-dock small[b-5hwcas2v84] { color: var(--bs-secondary-color); font-size: .72rem; }
.empty-card[b-5hwcas2v84] { min-height: 220px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: .7rem; text-align: center; border: 0; }
.empty-card i[b-5hwcas2v84] { color: #a8aaae; font-size: 2.5rem; }
.empty-card h5[b-5hwcas2v84] { margin: 0; font-size: 1rem; }
.lesson-skeleton[b-5hwcas2v84] { display: grid; gap: .75rem; }
.lesson-skeleton div[b-5hwcas2v84] { height: 82px; border-radius: .8rem; background: linear-gradient(90deg, var(--bs-tertiary-bg), var(--bs-body-bg), var(--bs-tertiary-bg)); background-size: 200% 100%; animation: shimmer-b-5hwcas2v84 1.3s infinite; }
@keyframes shimmer-b-5hwcas2v84 { to { background-position: -200% 0; } }

@media (max-width: 1199.98px) { .student-grid[b-5hwcas2v84] { grid-template-columns: repeat(3, minmax(0,1fr)); } }
@media (max-width: 991.98px) {
    .attendance-toolbar .card-body[b-5hwcas2v84] { align-items: stretch; flex-direction: column; }
    .lesson-filters[b-5hwcas2v84] { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); justify-content: stretch; }
    .lesson-filters > div[b-5hwcas2v84] { max-width: none; }
    .student-grid[b-5hwcas2v84] { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 767.98px) {
    .lesson-card[b-5hwcas2v84] { grid-template-columns: 80px 1fr 24px; gap: .7rem; }
    .lesson-state[b-5hwcas2v84] { grid-column: 2 / 3; align-items: flex-start; }
    .expand-icon[b-5hwcas2v84] { grid-column: 3; grid-row: 1 / span 2; }
    .day-summary[b-5hwcas2v84] { grid-template-columns: 1fr; }
}
@media (max-width: 575.98px) {
    .date-control[b-5hwcas2v84] { flex-wrap: wrap; }
    .date-field[b-5hwcas2v84] { flex: 1; min-width: 160px; }
    .lesson-filters[b-5hwcas2v84] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .lesson-filters > div[b-5hwcas2v84] { min-width: 0; }
    .lesson-filters > div:last-child:nth-child(odd)[b-5hwcas2v84] { grid-column: 1 / -1; }
    .student-scroll-area[b-5hwcas2v84] { max-height: 54vh; }
    .student-grid[b-5hwcas2v84] { grid-template-columns: 1fr; }
    .save-dock[b-5hwcas2v84] { align-items: stretch; flex-direction: column; }
    .save-dock .btn[b-5hwcas2v84] { width: 100%; }
}
/* /Pages/Reports/ManagerReportTemplate.razor.rz.scp.css */

    .hm-report-page .card[b-271t8tf9yc] {
        border-radius: 8px;
        box-shadow: 0 8px 24px rgba(15, 23, 42, 0.06);
    }

    .report-hero[b-271t8tf9yc] {
        background: linear-gradient(180deg, #ffffff 0%, #f6f8fc 100%);
    }

    .report-hero-icon[b-271t8tf9yc],
    .report-metric-icon[b-271t8tf9yc] {
        width: 48px;
        height: 48px;
        border-radius: 8px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        flex: 0 0 auto;
    }

    .report-hero-icon i[b-271t8tf9yc],
    .report-metric-icon i[b-271t8tf9yc] {
        font-size: 1.5rem;
    }

    .report-filter-card .form-label[b-271t8tf9yc] {
        font-size: 0.82rem;
        font-weight: 700;
        color: #566a7f;
    }

    .report-metric-card[b-271t8tf9yc] {
        min-height: 128px;
    }

    .report-table th[b-271t8tf9yc] {
        font-size: 0.78rem;
        color: #697a8d;
        white-space: nowrap;
    }

    .report-table td[b-271t8tf9yc] {
        font-size: 0.88rem;
        white-space: nowrap;
    }

    .report-insight-item[b-271t8tf9yc] {
        display: flex;
        align-items: flex-start;
        gap: 8px;
        padding: 12px 0;
        border-bottom: 1px solid #edf0f5;
        color: #4b5f78;
        line-height: 1.8;
    }

    .report-insight-item:last-child[b-271t8tf9yc] {
        border-bottom: 0;
    }

    .report-insight-item i[b-271t8tf9yc] {
        margin-top: 5px;
        color: #5a8dee;
    }

    .hm-bar[b-271t8tf9yc] {
        height: 6px;
        border-radius: 999px;
        background: #edf0f5;
        overflow: hidden;
    }

    .hm-bar-fill[b-271t8tf9yc] {
        height: 100%;
        border-radius: 999px;
        transition: width 0.4s ease;
    }

    .hm-bar-danger[b-271t8tf9yc] { background: #ff3e1d; }
    .hm-bar-warning[b-271t8tf9yc] { background: #ffab00; }
    .hm-bar-success[b-271t8tf9yc] { background: #71dd37; }
    .hm-bar-info[b-271t8tf9yc] { background: #03c3ec; }
    .hm-bar-primary[b-271t8tf9yc] { background: #696cff; }
    .hm-bar-secondary[b-271t8tf9yc] { background: #8592a3; }

    .skeleton-block[b-271t8tf9yc] {
        border-radius: 6px;
        background: linear-gradient(90deg, #eef1f6 25%, #e2e7ef 37%, #eef1f6 63%);
        background-size: 400% 100%;
        animation: hm-skeleton-b-271t8tf9yc 1.4s ease infinite;
    }

    .skeleton-title[b-271t8tf9yc] { height: 12px; width: 45%; margin-bottom: 12px; }
    .skeleton-value[b-271t8tf9yc] { height: 24px; width: 60%; margin-bottom: 8px; }
    .skeleton-hint[b-271t8tf9yc] { height: 12px; width: 80%; }
    .skeleton-line[b-271t8tf9yc] { height: 14px; width: 70%; }
    .skeleton-insight[b-271t8tf9yc] { height: 14px; width: 100%; }

    @keyframes hm-skeleton-b-271t8tf9yc {
        0% { background-position: 100% 50%; }
        100% { background-position: 0 50%; }
    }

    .report-table-scroll[b-271t8tf9yc] {
        max-height: 560px;
        overflow: auto;
    }

    .report-table thead th[b-271t8tf9yc] {
        position: sticky;
        top: 0;
        background: #f6f8fc;
        z-index: 2;
    }

    .report-table tbody tr:nth-child(even)[b-271t8tf9yc] {
        background-color: #fafbfe;
    }

    .risk-badge[b-271t8tf9yc] {
        display: inline-block;
        min-width: 28px;
        text-align: center;
        border-radius: 6px;
        padding: 2px 8px;
        font-weight: 600;
    }

    .risk-high[b-271t8tf9yc] { background: #ffe0db; color: #d92d20; }
    .risk-mid[b-271t8tf9yc] { background: #fff4d6; color: #b54708; }
    .risk-low[b-271t8tf9yc] { background: #e7f6ec; color: #1c7c3f; }

    .hm-report-page[b-271t8tf9yc] { --report-blue:#315da6; --report-ink:#25364b; --report-muted:#66778b; }
    .hm-report-page .card[b-271t8tf9yc] { border-radius:16px; box-shadow:0 4px 20px rgba(29,47,78,.045); }
    .report-hero[b-271t8tf9yc] { background:linear-gradient(115deg,#f5f9ff,#fff 70%); border:1px solid #e2eaf5 !important; }
    .report-eyebrow[b-271t8tf9yc] { color:#426690; font-size:.78rem; font-weight:700; }
    .report-eyebrow span[b-271t8tf9yc] { color:#79899c; font-weight:400; }
    .report-hero h3[b-271t8tf9yc] { color:var(--report-ink); font-size:1.45rem; letter-spacing:-.4px; }
    .report-hero p[b-271t8tf9yc] { font-size:.88rem; max-width:670px; line-height:1.9; }
    .hm-report-page .btn[b-271t8tf9yc] { border-radius:9px; font-size:.85rem; }
    .hm-report-page .btn-primary[b-271t8tf9yc] { background:var(--report-blue); border-color:var(--report-blue); box-shadow:none; }
    .hm-report-page .btn-primary:hover[b-271t8tf9yc] { background:#264c8a; border-color:#264c8a; }
    .report-filter-card .card-body[b-271t8tf9yc] { padding:20px 24px !important; }
    .report-filter-card h5[b-271t8tf9yc] { font-size:1rem; }
    .report-filter-toggle[b-271t8tf9yc] { display:flex; align-items:center; justify-content:space-between; gap:24px; width:100%; padding:0; border:0; background:transparent; color:var(--report-ink); text-align:right; min-height:36px; cursor:pointer; }
    .report-filter-toggle:focus-visible[b-271t8tf9yc] { outline:2px solid var(--report-blue); outline-offset:6px; border-radius:6px; }
    .filter-toggle-title[b-271t8tf9yc] { display:flex; align-items:center; gap:10px; font-size:1rem; }
    .filter-toggle-title i[b-271t8tf9yc] { color:var(--report-blue); font-size:1.35rem; }
    .filter-toggle-summary[b-271t8tf9yc] { display:flex; align-items:center; gap:16px; color:var(--report-muted); font-size:.8rem; }
    .filter-toggle-summary i[b-271t8tf9yc] { font-size:1.5rem; }
    .report-filter-content[b-271t8tf9yc] { padding-top:18px; margin-top:14px; border-top:1px solid #e6ecf3; }
    .report-filter-content[hidden][b-271t8tf9yc] { display:none; }
    .report-range-presets[b-271t8tf9yc] { display:flex; align-items:center; flex-wrap:wrap; gap:8px; margin-bottom:18px; }
    .report-range-label[b-271t8tf9yc] { display:inline-flex; align-items:center; gap:6px; margin-inline-end:6px; color:var(--hm-filter-ink); font-size:.8rem; font-weight:600; }
    .report-range-label i[b-271t8tf9yc] { font-size:1.15rem; }
    .report-range-presets .btn[b-271t8tf9yc] { border-radius:999px; padding:5px 14px; }
    .report-filter-grid[b-271t8tf9yc] { display:flex; align-items:flex-end; flex-wrap:wrap; gap:14px; }
    .report-filter-field[b-271t8tf9yc] { flex:1 1 165px; min-width:165px; max-width:280px; }
    .report-filter-date[b-271t8tf9yc] { flex:0 1 180px; min-width:160px; }
    .report-filter-grid-staff .report-filter-field:not(.report-filter-date)[b-271t8tf9yc] { flex:0 1 240px; }
    .report-filter-field .form-label[b-271t8tf9yc] { display:block; margin-bottom:7px; }
    .report-filter-grid[b-271t8tf9yc]  .form-control,
    .report-filter-grid .form-select[b-271t8tf9yc] { min-height:44px; border-radius:10px; }
    .report-filter-apply[b-271t8tf9yc] { flex:0 0 auto; margin-inline-start:auto; }
    .report-filter-apply .btn[b-271t8tf9yc],
    .report-filter-footer > .btn[b-271t8tf9yc] { min-height:44px; min-width:160px; }
    .report-filter-footer[b-271t8tf9yc] { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:14px; margin-top:18px; padding-top:16px; border-top:1px solid var(--hm-filter-border); }
    .report-filter-footer .report-period-option[b-271t8tf9yc] { padding:9px 12px; background:transparent !important; border:0 !important; }
    .report-period-option[b-271t8tf9yc] { display:flex; align-items:flex-start; gap:10px; padding:14px 16px; border:1px solid #e2eaf5; border-radius:10px; }
    .report-period-option input[b-271t8tf9yc] { margin:4px 0 0; cursor:pointer; }
    .report-period-option label[b-271t8tf9yc] { display:flex; flex-direction:column; gap:4px; color:var(--report-ink); font-size:.85rem; cursor:pointer; }
    .report-period-option label span[b-271t8tf9yc] { color:var(--report-muted); font-size:.78rem; }
    .report-loading[b-271t8tf9yc] { display:flex; align-items:center; flex-direction:column; padding:36px 24px 30px; min-height:340px; color:var(--report-ink); }
    .report-loading-orbit[b-271t8tf9yc] { position:relative; display:grid; place-items:center; width:68px; height:68px; margin-bottom:20px; color:var(--report-blue); background:#edf3fc; border-radius:50%; font-size:1.8rem; }
    .report-loading-orbit[b-271t8tf9yc]:before { content:""; position:absolute; inset:-5px; border:2px solid #dce6f5; border-top-color:var(--report-blue); border-radius:50%; animation:report-orbit-b-271t8tf9yc 1.1s linear infinite; }
    .report-loading strong[b-271t8tf9yc] { font-size:1rem; }
    .report-loading p[b-271t8tf9yc] { color:var(--report-muted); font-size:.85rem; margin:10px 0 18px; }
    .report-loading-progress[b-271t8tf9yc] { width:180px; height:4px; border-radius:8px; background:linear-gradient(90deg,#e7edf6,#5a84c4,#e7edf6); background-size:200% 100%; animation:hm-skeleton-b-271t8tf9yc 1.4s ease infinite; }
    .report-loading-lines[b-271t8tf9yc] { display:grid; gap:12px; width:100%; margin-top:32px; }
    .report-loading-lines .skeleton-block[b-271t8tf9yc] { height:13px; }
    .report-loading-lines .skeleton-block:nth-child(2)[b-271t8tf9yc] { width:85%; }
    .report-loading-lines .skeleton-block:nth-child(3)[b-271t8tf9yc] { width:65%; }
    @keyframes report-orbit-b-271t8tf9yc { to { transform:rotate(360deg); } }
    .report-filter-card .form-select[b-271t8tf9yc] { min-height:42px; border-radius:9px; }
    .report-filter-card .btn-outline-primary[b-271t8tf9yc] { border-color:#315da6; color:#315da6; min-height:42px; }
    .report-filter-card .btn-outline-primary:hover[b-271t8tf9yc] { color:#fff; background:#315da6; }
    .report-metric-card[b-271t8tf9yc] { min-height:142px; border:1px solid #e8edf4 !important; }
    .report-metric-card h4[b-271t8tf9yc] { font-size:1.8rem; color:var(--report-ink); letter-spacing:-.8px; }
    .report-metric-card .card-body[b-271t8tf9yc] { padding:20px; }
    .report-metric-card .hm-bar-success[b-271t8tf9yc] { background:#168566; }
    .report-metric-card .hm-bar-danger[b-271t8tf9yc] { background:#d45560; }
    .report-metric-card .hm-bar-warning[b-271t8tf9yc] { background:#d39420; }
    .report-metric-icon[b-271t8tf9yc] { border-radius:12px; }
    .report-metric-icon.bg-label-success[b-271t8tf9yc] { color:#168566 !important; background:#e5f5ee !important; }
    .report-metric-icon.bg-label-danger[b-271t8tf9yc] { color:#b94450 !important; background:#fdecef !important; }
    .report-metric-icon.bg-label-warning[b-271t8tf9yc] { color:#a16a0c !important; background:#fff4dc !important; }
    .report-results-card .card-header[b-271t8tf9yc] { padding:22px 24px 16px; border-radius:16px 16px 0 0; gap:16px; flex-wrap:wrap; }
    .report-results-card h5[b-271t8tf9yc] { font-size:1.04rem; color:var(--report-ink); }
    .report-results-card .card-body[b-271t8tf9yc] { padding:0 24px 24px; }
    .report-table-toolbar[b-271t8tf9yc] { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; padding:0 0 18px; }
    .report-search[b-271t8tf9yc] { position:relative; width:min(360px,100%); }
    .report-search i[b-271t8tf9yc] { position:absolute; right:12px; top:12px; color:#7b8ba1; font-size:1.2rem; }
    .report-search input[b-271t8tf9yc] { padding-right:38px; min-height:42px; border-radius:10px; background:var(--bs-body-bg,#fff); }
    .report-status-legend[b-271t8tf9yc] { display:flex; gap:14px; font-size:.75rem; color:var(--report-muted); }
    .report-status-legend span[b-271t8tf9yc] { display:inline-flex; gap:6px; align-items:center; }
    .report-status-legend span[b-271t8tf9yc]:before { content:""; display:block; width:7px; height:7px; border-radius:50%; }
    .legend-present[b-271t8tf9yc]:before { background:#168566; } .legend-absent[b-271t8tf9yc]:before { background:#c64b58; } .legend-late[b-271t8tf9yc]:before { background:#c78a20; }
    .report-table-scroll[b-271t8tf9yc] { border:1px solid #e6ecf3; border-radius:12px; max-height:640px; scrollbar-width:thin; }
    .report-table thead th[b-271t8tf9yc] { background:#f1f5fa; color:#52677f; font-size:.78rem; font-weight:700; padding:15px 12px; border-bottom:1px solid #e1e8f0; }
    .report-table td[b-271t8tf9yc] { padding:13px 12px; color:var(--report-ink); font-size:.84rem; border-bottom-color:#edf1f6; }
    .report-table tbody tr:nth-child(even)[b-271t8tf9yc] { background:#fafcfe; }
    .report-table tbody tr:hover[b-271t8tf9yc] { background:#f0f5fc; }
    .report-name-column[b-271t8tf9yc] { font-weight:600; }
    .report-number-column[b-271t8tf9yc] { text-align:center; min-width:65px; }
    .report-row-number[b-271t8tf9yc] { width:60px; text-align:center; font-variant-numeric:tabular-nums; }
    .report-table :is(th,td).report-long-text-column[b-271t8tf9yc] { min-width:260px; width:35%; white-space:pre-wrap; overflow-wrap:anywhere; text-align:right; line-height:1.9; }
    .attendance-count[b-271t8tf9yc] { display:inline-flex; justify-content:center; align-items:center; min-width:32px; height:29px; border-radius:8px; font-weight:700; font-variant-numeric:tabular-nums; }
    .count-present[b-271t8tf9yc] { color:#126b50; background:#e4f4ec; }
    .count-absent[b-271t8tf9yc] { color:#b33c49; background:#fce9ec; }
    .count-late[b-271t8tf9yc] { color:#916006; background:#fff1d2; }
    .count-zero[b-271t8tf9yc] { color:#8a97a8; font-weight:400; }
    @media(max-width:767px) { .report-filter-hint[b-271t8tf9yc] { display:none; } .report-hero h3[b-271t8tf9yc] { font-size:1.15rem; } .report-hero .card-body[b-271t8tf9yc] { padding:20px !important; } .report-actions[b-271t8tf9yc] { width:100%; } .report-actions .btn[b-271t8tf9yc] { flex:1; } .report-results-card .card-body[b-271t8tf9yc] { padding:0 12px 16px; } .report-results-card .card-header[b-271t8tf9yc] { padding:18px 16px; } .report-table-toolbar[b-271t8tf9yc] { padding-top:5px; } .report-metric-card .card-body[b-271t8tf9yc] { padding:16px; } }

    @media (prefers-reduced-motion: reduce) {
        .skeleton-block[b-271t8tf9yc],
        .report-loading-orbit[b-271t8tf9yc]:before,
        .report-loading-progress[b-271t8tf9yc],
        .hm-bar-fill[b-271t8tf9yc] {
            animation: none;
            transition: none;
        }
    }
/* /Pages/Reports/ReportImagePreview.razor.rz.scp.css */
.report-preview-backdrop[b-6wwfv82ops] { position:fixed; inset:0; z-index:1100; background:rgba(15,23,42,.58); display:flex; align-items:center; justify-content:center; padding:24px; backdrop-filter:blur(5px); }
.report-preview-dialog[b-6wwfv82ops] { display:flex; flex-direction:column; width:min(1200px,100%); max-height:94dvh; border-radius:20px; background:var(--bs-body-bg,#fff); color:var(--bs-body-color,#334155); box-shadow:0 24px 80px #0f172a50; overflow:hidden; outline:none; }
.report-preview-header[b-6wwfv82ops] { display:flex; justify-content:space-between; align-items:center; padding:20px 24px; gap:16px; border-bottom:1px solid var(--bs-border-color,#e2e8f0); }
.report-preview-header h4[b-6wwfv82ops] { margin:0 0 5px; font-size:1.2rem; font-weight:800; }
.report-preview-header p[b-6wwfv82ops] { margin:0; color:var(--bs-secondary-color,#64748b); font-size:.85rem; }
.report-preview-toolbar[b-6wwfv82ops] { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px; padding:12px 24px; }
.preview-format[b-6wwfv82ops] { display:flex; align-items:center; gap:10px; }
.preview-format i[b-6wwfv82ops] { font-size:1.7rem; color:#3972c8; }
.preview-format strong[b-6wwfv82ops],.preview-format small[b-6wwfv82ops] { display:block; }
.preview-format strong[b-6wwfv82ops] { font-size:.85rem; }
.preview-format small[b-6wwfv82ops] { color:var(--bs-secondary-color,#64748b); font-size:.72rem; margin-top:3px; }
.preview-page-controls[b-6wwfv82ops] { display:flex; align-items:center; flex-wrap:wrap; gap:10px; }
.preview-page-controls span[b-6wwfv82ops] { font-size:.8rem; min-width:90px; text-align:center; }
.preview-page-navigation[b-6wwfv82ops] { display:flex; align-items:center; gap:10px; padding:7px 9px; border-radius:12px; background:var(--hm-primary-soft,#eff6ff); border:1px solid var(--hm-primary-border,#bfdbfe); color:var(--hm-primary-ink,#1e40af); }
.preview-page-navigation .btn[b-6wwfv82ops] { background:var(--hm-surface,#fff); }
.preview-page-controls > .btn i[b-6wwfv82ops] { font-size:1.1rem; }
.report-preview-canvas[b-6wwfv82ops] { flex:1; min-height:160px; overflow:auto; padding:18px; background:#e9edf3; text-align:center; }
.report-preview-canvas img[b-6wwfv82ops] { display:block; width:auto; height:auto; max-width:100%; max-height:calc(94dvh - 290px); box-shadow:0 8px 28px #0f172a28; margin:auto; }
.report-preview-canvas img[hidden][b-6wwfv82ops] { display:none; }
.report-preview-canvas.is-zoomed img[b-6wwfv82ops] { width:827px; max-width:none; max-height:none; }
.is-landscape .report-preview-canvas.is-zoomed img[b-6wwfv82ops] { width:1169px; }
.preview-loading[b-6wwfv82ops] { padding:72px 0; color:var(--hm-muted,#475569); }
.preview-loading p[b-6wwfv82ops] { margin-top:20px; }
.preview-loading progress[b-6wwfv82ops] { display:block; width:240px; max-width:100%; height:8px; margin:16px auto; accent-color:var(--hm-primary); }
.preview-download-actions[b-6wwfv82ops] { display:flex; align-items:center; flex-wrap:wrap; gap:10px; }
.report-preview-footer[b-6wwfv82ops] { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px; padding:16px 24px; }
.report-preview-footer p[b-6wwfv82ops] { font-size:.8rem; margin:0; color:var(--bs-secondary-color,#64748b); }
@media(max-width:600px) { .report-preview-backdrop[b-6wwfv82ops] { padding:8px; } .report-preview-dialog[b-6wwfv82ops] { max-height:98dvh; border-radius:14px; } .report-preview-header[b-6wwfv82ops],.report-preview-toolbar[b-6wwfv82ops],.report-preview-footer[b-6wwfv82ops] { padding:14px; } .report-preview-canvas[b-6wwfv82ops] { padding:12px; } .report-preview-canvas img[b-6wwfv82ops] { max-height:calc(98dvh - 340px); } .report-preview-canvas.is-zoomed img[b-6wwfv82ops] { max-height:none; } .report-preview-footer .btn[b-6wwfv82ops] { width:100%; } .preview-page-controls[b-6wwfv82ops] { justify-content:space-between; width:100%; } }
