:root{--font-primary: "Inter", system-ui, -apple-system, sans-serif;--font-display: "Outfit", system-ui, -apple-system, sans-serif;--bg-dark: #0f172a;--bg-dark-card: rgba(30, 41, 59, .7);--bg-dark-border: rgba(255, 255, 255, .1);--accent-primary: #6366f1;--accent-primary-hover: #4f46e5;--accent-secondary: #06b6d4;--accent-success: #10b981;--accent-warning: #f59e0b;--accent-danger: #ef4444;--text-main: #f8fafc;--text-muted: #94a3b8;--glass-bg: rgba(15, 23, 42, .75);--glass-border: rgba(255, 255, 255, .08);--glass-shadow: 0 8px 32px 0 rgba(0, 0, 0, .37);--radius-sm: 8px;--radius-md: 14px;--radius-lg: 20px}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-primary);background-color:var(--bg-dark);color:var(--text-main);min-height:100vh;overflow-x:hidden;background-image:radial-gradient(at 0% 0%,rgba(99,102,241,.15) 0px,transparent 50%),radial-gradient(at 100% 100%,rgba(6,182,212,.15) 0px,transparent 50%)}h1,h2,h3,h4,.font-display{font-family:var(--font-display)}.glass-panel{background:var(--bg-dark-card);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--bg-dark-border);box-shadow:var(--glass-shadow);border-radius:var(--radius-md);padding:1.5rem;transition:transform .2s ease,box-shadow .2s ease}.glass-panel:hover{box-shadow:0 12px 40px #00000073}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.65rem 1.25rem;font-weight:600;font-size:.9rem;border-radius:var(--radius-sm);border:none;cursor:pointer;transition:all .2s ease}.btn-primary{background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));color:#fff;box-shadow:0 4px 14px #6366f159}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 6px 20px #6366f180}.btn-secondary{background:#ffffff14;color:var(--text-main);border:1px solid var(--bg-dark-border)}.btn-secondary:hover{background:#ffffff26}.btn-outline{border:1px solid var(--accent-primary);color:var(--accent-primary);background:transparent}.btn-outline:hover{background:var(--accent-primary);color:#fff}.badge{padding:.25rem .65rem;border-radius:50px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.badge-active,.badge-present,.badge-paid,.badge-approved{background:#10b98126;color:#34d399;border:1px solid rgba(16,185,129,.3)}.badge-pending,.badge-late,.badge-partially{background:#f59e0b26;color:#fbbf24;border:1px solid rgba(245,158,11,.3)}.badge-absent,.badge-unpaid,.badge-suspended{background:#ef444426;color:#f87171;border:1px solid rgba(239,68,68,.3)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#0f172a80}::-webkit-scrollbar-thumb{background:#fff3;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#ffffff59}.input-field{width:100%;padding:.75rem 1rem;background:#0f172a99;border:1px solid var(--bg-dark-border);border-radius:var(--radius-sm);color:#fff;font-size:.95rem;outline:none;transition:border-color .2s ease}.input-field:focus{border-color:var(--accent-primary)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000bf;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000}
