:root{--background:215 18% 95%;--foreground:215 26% 21%;--card:0 0% 100%;--card-foreground:215 26% 21%;--primary:157 34% 31%;--primary-hover:157 34% 25%;--primary-foreground:0 0% 100%;--ring:157 34% 31%;--muted:144 15% 96%;--muted-foreground:215 14% 43%;--border:210 20% 90%;--input:210 18% 85%;--radius-control:8px;--radius-panel:16px;--ui-surface:hsl(var(--card));--ui-ink:hsl(var(--foreground));--ui-muted:hsl(var(--muted-foreground));--ui-line:hsl(var(--border));--ui-soft:#f6f8fa;--ui-tint:#f1f6f3;--ui-accent:#356b56;--ui-accent-hover:#295440;--ui-accent-soft:#e7f2ed;--ui-on-accent:#fff;--ui-dialog-shadow:0 24px 80px rgb(15 23 42/16%);--shadow-panel:0 1px 3px rgb(24 39 58/6%),0 4px 12px rgb(24 39 58/3%);--shadow-panel-hover:0 2px 5px rgb(24 39 58/8%),0 6px 16px rgb(24 39 58/5%);--app-content-width:1500px;--app-content-gutter:24px}.dark{--background:216 28% 9%;--foreground:215 32% 90%;--card:215 32% 15%;--card-foreground:215 32% 90%;--primary:146 28% 72%;--primary-hover:146 32% 80%;--primary-foreground:150 24% 13%;--ring:146 28% 72%;--muted:215 28% 19%;--muted-foreground:215 19% 72%;--border:214 23% 25%;--input:214 20% 31%;--ui-soft:#222e3d;--ui-tint:#1b2922;--ui-accent:#a4cbb4;--ui-accent-hover:#c0dfca;--ui-accent-soft:#2c4134;--ui-on-accent:#17271e;--ui-dialog-shadow:0 24px 80px rgb(0 0 0/28%);--shadow-panel:0 1px 3px rgb(0 0 0/20%),0 4px 12px rgb(0 0 0/12%);--shadow-panel-hover:0 2px 5px rgb(0 0 0/24%),0 6px 16px rgb(0 0 0/16%)}.dark .text-primary{color:var(--ui-accent)}.admin-app-shell:has(.attendance-workspace[data-attendance-view=month]){--app-content-width:1900px;--app-content-gutter:12px}.admin-page-transition{width:100%;max-width:var(--app-content-width);margin-inline:auto;padding-inline:var(--app-content-gutter)}.admin-page-transition>:where(div,section,form){max-width:none;width:100%;margin-inline:0;padding-inline:0}.admin-page-transition:has(.attendance-workspace){max-width:none;padding-inline:0}.app-page-title{color:var(--ui-ink);line-height:1.35;letter-spacing:-.035em}.app-page-heading,.app-page-title{font-size:22px;font-weight:500}.app-page-header{gap:16px;padding-bottom:18px;border-color:var(--ui-line)}.app-page-header h1{font-size:22px;font-weight:500}.app-page-header p{font-size:13px;color:var(--ui-muted)}.app-heading-icon{border:0;border-radius:50%;background:var(--ui-accent-soft);color:var(--ui-accent)}.app-surface{border-color:var(--ui-line);background-color:var(--ui-surface);color:var(--ui-ink);box-shadow:var(--shadow-panel)}.app-surface:is(.rounded-3xl,.rounded-2xl,.rounded-xl){border-radius:var(--radius-panel)}.app-surface.glass-card{background:var(--ui-surface);backdrop-filter:none}.app-toolbar{border-color:var(--ui-line);background:var(--ui-surface);border-radius:var(--radius-panel);box-shadow:var(--shadow-panel)}.app-action{font-family:inherit;font-weight:500;letter-spacing:-.011em;transition:color .14s,background-color .14s,border-color .14s}.app-action:not(.rounded-full):not(.app-panel):is(.rounded-3xl,.rounded-2xl,.rounded-xl,.rounded-lg,.rounded-md){border-radius:var(--radius-control)}.app-action:is(.bg-primary,.bg-blue-500,.bg-blue-600,.bg-indigo-500,.bg-indigo-600,.bg-violet-600){background:var(--ui-accent);border-color:var(--ui-accent);color:var(--ui-on-accent);box-shadow:none}.app-action:is(.bg-primary,.bg-blue-500,.bg-blue-600,.bg-indigo-500,.bg-indigo-600,.bg-violet-600):hover:not(:disabled){background:var(--ui-accent-hover);border-color:var(--ui-accent-hover)}.app-action:is(.text-primary,.text-blue-500,.text-blue-600,.text-blue-700,.text-indigo-600){color:var(--ui-accent)}.app-action:is(.bg-blue-50,.bg-indigo-50,.bg-primary\/5,.bg-primary\/10){background-color:var(--ui-accent-soft);border-color:var(--ui-line);color:var(--ui-accent)}.app-action:is(.bg-white,.bg-card){background-color:var(--ui-surface);border-color:var(--ui-line);box-shadow:none}.app-action:is(.bg-white,.bg-card):hover:not(:disabled){background-color:var(--ui-soft);border-color:var(--ui-line)}.app-action:focus-visible,.app-field:focus-visible{outline:2px solid var(--ui-accent);outline-offset:3px}.app-field{font-family:inherit;font-weight:400;color:var(--ui-ink);border-color:hsl(var(--input));box-shadow:none}.app-field:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):not([type=color]){border-radius:var(--radius-control)}.app-field:is(.bg-white,.bg-card,.bg-slate-50,.bg-slate-100){background-color:var(--ui-surface)}.app-field::-moz-placeholder{color:var(--ui-muted);opacity:.85}.app-field::placeholder{color:var(--ui-muted);opacity:.85}.app-field:disabled{opacity:.6;cursor:not-allowed}.app-field:focus{border-color:var(--ui-accent)}.app-data-table{font-size:13px}.app-table-head,.app-table-head th{background-color:var(--ui-soft);border-color:var(--ui-line);color:var(--ui-muted);font-size:11px;font-weight:500;letter-spacing:0;text-transform:none}.app-data-table :is(td,th){border-color:var(--ui-line)}.app-tab-list{border:0;border-bottom:1px solid var(--ui-line);border-radius:0;padding:0;gap:20px}.app-tab,.app-tab-list{background:transparent;box-shadow:none}.app-tab{position:relative;border:0;border-radius:0;color:var(--ui-muted);font-size:12px;font-weight:400;padding-inline:0;min-height:42px}.app-tab[aria-selected=true]{box-shadow:inset 0 -2px var(--ui-accent);font-weight:500}.app-tab:hover:not(:disabled),.app-tab[aria-selected=true]{color:var(--ui-accent);background:transparent}.app-modal-overlay{background-color:rgb(25 34 46/42%);backdrop-filter:blur(5px)}.app-dialog{border-color:var(--ui-line);border-radius:18px;background-color:var(--ui-surface);color:var(--ui-ink);box-shadow:var(--ui-dialog-shadow);font-family:var(--font-sans),sans-serif}.app-dialog :is(h1,h2,h3,h4){font-weight:500;letter-spacing:-.025em}.app-dialog :is(.font-bold,.font-extrabold){font-weight:600}.app-dialog>:is(header,.border-b){border-color:var(--ui-line);background:var(--ui-surface)}.app-dialog>:is(footer,.border-t){border-color:var(--ui-line);background:var(--ui-surface)}.app-dialog :is(.shadow-xl,.shadow-2xl){box-shadow:var(--shadow-panel)}.app-dialog :is(input,select,textarea){font-family:inherit}.app-dialog :is(.bg-slate-50,.bg-gray-50){background-color:var(--ui-soft)}.app-dialog :is(.border-slate-100,.border-slate-200,.border-gray-200){border-color:var(--ui-line)}.dark .app-dialog :is(.text-slate-700,.text-slate-800,.text-slate-900,.text-gray-900){color:var(--ui-ink)}.dark .app-dialog :is(.text-slate-400,.text-slate-500,.text-slate-600){color:var(--ui-muted)}.dark .app-dialog .bg-white{background-color:var(--ui-surface)}.app-tooltip{--app-tooltip-bg:#273344;--app-tooltip-text:#f8fafc;--app-tooltip-radius:8px;font-weight:400}.dark .app-tooltip{--app-tooltip-bg:#e0e7ef;--app-tooltip-text:#192331}@media (max-width:767px){:root{--app-content-gutter:14px}.admin-page-transition{padding-inline:var(--app-content-gutter)}.admin-page-transition:has(.attendance-workspace){padding-inline:0}.app-page-header h1,.app-page-heading,.app-page-title{font-size:20px}.app-dialog{border-radius:15px}}@media (prefers-reduced-motion:reduce){.app-action{transition:none}}.app-surface :is(.font-semibold,.font-bold){font-weight:500}.app-surface>.border-b{border-color:var(--ui-line)}.app-toolbar :is(input,select){font-size:13px}.admin-page-transition{animation:app-page-appear .15s ease-out;transform:none;filter:none;will-change:auto;backface-visibility:visible}#main-content:has(.app-dialog){z-index:100}.mobile-page-transition:has(.app-dialog),.mobile-tab-panel-transition:has(.app-dialog){animation:none;contain:none;transform:none;filter:none;will-change:auto}@keyframes app-page-appear{0%{opacity:.5}to{opacity:1}}@media (prefers-reduced-motion:reduce){.admin-page-transition{animation:none}}.app-panel .font-semibold{font-weight:500}.manager-card-enter{animation:none;opacity:1;transform:none;filter:none;will-change:auto}.app-dialog :is(.text-blue-600,.text-indigo-600){color:var(--ui-accent)}.admin-page-transition .app-workspace-content{max-width:none;padding-inline:0}.app-panel{border-color:var(--ui-line);background-color:var(--ui-surface);border-radius:var(--radius-panel)}.app-action.app-panel,.app-panel{box-shadow:var(--shadow-panel)}.app-action.app-panel:hover{box-shadow:var(--shadow-panel-hover)}.app-workspace-toolbar{box-shadow:var(--shadow-panel)}.app-panel>.app-toolbar,.app-surface>.app-toolbar{box-shadow:none}.app-dialog-fullscreen{border-radius:0;box-shadow:none}.admin-page-transition{animation:none}.app-tab-panel:not([hidden]){position:relative;animation:app-panel-slide .18s cubic-bezier(.2,.7,.2,1)}@keyframes app-panel-slide{0%{left:8px}to{left:0}}.app-workspace-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;padding:12px 18px;border:1px solid hsl(var(--border));border-radius:16px;background:hsl(var(--card))}.app-workspace-toolbar h1{margin:0;font-size:15px;line-height:1.5;font-weight:500;letter-spacing:0}.app-workspace-toolbar>:is(a,button){min-height:34px;padding:6px 12px;border-radius:8px;font-size:12px;font-weight:500}@media(prefers-reduced-motion:reduce){.app-tab-panel:not([hidden]){animation:none}}