:root{--primary: #059669;--primary-deep: #047857;--primary-tint: #D1FAE5;--primary-glow: rgba(5, 150, 105, .12);--ink: #0F172A;--ink-soft: #1E293B;--muted: #475569;--muted-soft: #64748B;--line: #E2E8F0;--line-soft: #CBD5E1;--surface: #FFFFFF;--surface-hover: #F1F5F9;--bg: #F8FAFC;--success: #16A34A;--danger: #DC2626;--warning: #F59E0B;--info: #0EA5E9;--e-out: cubic-bezier(.2, 0, 0, 1)}[data-theme=dark]{--primary: #10B981;--primary-deep: #059669;--primary-tint: #064E3B;--primary-glow: rgba(16, 185, 129, .16);--ink: #E2E8F0;--ink-soft: #CBD5E1;--muted: #94A3B8;--muted-soft: #64748B;--line: #334155;--line-soft: #475569;--surface: #1E293B;--surface-hover: #263344;--bg: #0F172A;--success: #4ADE80;--danger: #F87171;--warning: #FBBF24;--info: #7DD3FC}*{box-sizing:border-box}html,body{margin:0;padding:0;min-height:100%}body{font-family:Cairo,sans-serif;background:var(--bg);color:var(--ink);transition:background .3s}.nums{font-variant-numeric:tabular-nums}.dt{font-variant-numeric:tabular-nums;direction:ltr;unicode-bidi:isolate;display:inline-block}.fgs-mcard{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:12px 14px;box-shadow:0 1px 2px #0f172a0d}.fgs-zebra>td.ant-table-cell{background:var(--surface-hover)}.fgs-attendance-absent>td.ant-table-cell{background:#dc262624}.fgs-mcard.fgs-attendance-absent{background:#dc262624}.fgs-row-unread>td.ant-table-cell{font-weight:600}.fgs-attendance-excused>td.ant-table-cell,.fgs-mcard.fgs-attendance-excused{background:#d977061f}.ant-modal{max-width:calc(100vw - 24px)}@keyframes fgs-pulse{0%,to{opacity:1}50%{opacity:.5}}.ant-skeleton.ant-skeleton-active .ant-skeleton-title,.ant-skeleton.ant-skeleton-active .ant-skeleton-paragraph>li,.ant-skeleton.ant-skeleton-active .ant-skeleton-avatar,.ant-skeleton.ant-skeleton-active .ant-skeleton-button,.ant-skeleton.ant-skeleton-active .ant-skeleton-input,.ant-skeleton.ant-skeleton-active .ant-skeleton-image{background:var(--line)!important;animation:fgs-pulse 1.2s ease-in-out infinite!important}.fgs-skel{background:var(--line);border-radius:6px;animation:fgs-pulse 1.2s ease-in-out infinite}:where(a,button,[role=button],input,select,textarea,[tabindex]):focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:6px}.ant-table-tbody>tr>td,.ant-btn{transition:background-color .12s ease-out,border-color .12s ease-out,color .12s ease-out,box-shadow .12s ease-out}.ant-drawer .ant-drawer-content-wrapper,.ant-drawer .ant-drawer-mask{transition-timing-function:var(--e-out)!important}.ant-modal,.ant-modal-mask{animation-timing-function:var(--e-out)!important;transition-timing-function:var(--e-out)!important}.ant-layout-sider-children{display:flex;flex-direction:column}.fgs-row-actions{opacity:0;transition:opacity .12s ease-out}tr:hover .fgs-row-actions,tr:focus-within .fgs-row-actions{opacity:1}@media(hover:none){.fgs-row-actions{opacity:1}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}.ant-skeleton.ant-skeleton-active .ant-skeleton-title,.ant-skeleton.ant-skeleton-active .ant-skeleton-paragraph>li,.ant-skeleton.ant-skeleton-active .ant-skeleton-avatar,.ant-skeleton.ant-skeleton-active .ant-skeleton-button,.ant-skeleton.ant-skeleton-active .ant-skeleton-input,.ant-skeleton.ant-skeleton-active .ant-skeleton-image,.fgs-skel{animation:none!important;opacity:1!important}.fgs-row-actions{transition:none!important}}.creds-print-sheet{display:none}@media print{body *{visibility:hidden}.creds-print-sheet,.creds-print-sheet *{visibility:visible}.creds-print-sheet{display:block;position:fixed;inset:0;background:#fff;padding:48px 24px}.creds-print-card{max-width:420px;margin:0 auto;border:2px solid #059669;border-radius:16px;padding:28px 24px;font-family:Cairo,sans-serif;color:#0f172a}.creds-print-title{text-align:center;font-weight:900;font-size:18px;color:#047857;margin-bottom:20px}.creds-print-table{width:100%;border-collapse:collapse}.creds-print-table td{border:1px solid #e2e8f0;padding:10px 12px;font-size:14px}.creds-print-table td:first-child{color:#475569;font-size:12px;width:38%}.creds-print-table td:last-child{font-weight:700;font-variant-numeric:tabular-nums}.creds-print-note{margin-top:16px;text-align:center;font-size:12px;color:#475569}}
