:root{--bg: #0b1120;--bg-alt: #111827;--bg-card: rgba(15, 23, 42, .9);--accent: #fb923c;--accent-hover: #fed7aa;--success: #22c55e;--text: #f9fafb;--text-muted: #e5e7eb;--border: rgba(148, 163, 184, .45);--radius: 18px;--shadow: 0 22px 50px rgba(15, 23, 42, .8);font-family:"Baloo 2",system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5;font-weight:400;color:var(--text);background:radial-gradient(circle at top left,#1f2937 0,#020617 55% 100%);min-height:100vh}*{box-sizing:border-box;margin:0;padding:0}body{min-height:100vh;background:transparent}#root{min-height:100vh}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-hover);text-decoration:underline}button{font-family:inherit;cursor:pointer;border:none;border-radius:var(--radius);padding:.6rem 1.2rem;font-size:.95rem;font-weight:600;transition:transform .15s,box-shadow .15s}button:disabled{opacity:.6;cursor:not-allowed}button:not(:disabled):hover{transform:translateY(-1px)}button.primary{background:linear-gradient(135deg,var(--accent),#d97706);color:#fff}button.primary:hover:not(:disabled){box-shadow:0 4px 14px #f59e0b66}button.secondary{background:var(--bg-card);color:var(--text);border:1px solid var(--border)}input,select,textarea{font-family:inherit;font-size:1rem;padding:.5rem .75rem;border-radius:8px;border:1px solid var(--border);background:var(--bg);color:var(--text);width:100%}input::placeholder,textarea::placeholder{color:var(--text-muted)}.app{min-height:100vh;display:flex;flex-direction:column}.layout{flex:1;display:flex;flex-direction:column;max-width:1200px;margin:0 auto;width:100%;padding:1rem}@media(min-width:768px){.layout.with-nav{flex-direction:row;align-items:flex-start;gap:1.5rem;padding:1.5rem}}.card{background:linear-gradient(135deg,#f8fafc17,#3b82f659);border-radius:var(--radius);padding:1.35rem 1.5rem;box-shadow:var(--shadow);border:1px solid rgba(129,140,248,.3);position:relative;overflow:hidden}.card:before{content:"";position:absolute;inset:-30%;background:radial-gradient(circle at top left,rgba(248,250,252,.06),transparent 52%),radial-gradient(circle at bottom right,rgba(249,115,22,.12),transparent 55%);opacity:.9;pointer-events:none}.card>*{position:relative;z-index:1}.page-title{font-size:1.7rem;font-weight:700;margin-bottom:1.1rem;color:var(--text);display:inline-flex;align-items:center;gap:.5rem}.page-title span.emoji{font-size:1.9rem}.celebrate{animation:celebrate .5s ease}@keyframes celebrate{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.sidebar{flex-shrink:0;width:100%;margin-bottom:1rem;position:relative;overflow:hidden}@media(min-width:768px){.sidebar{width:220px;margin-bottom:0}}.brand{font-size:1.25rem;margin-bottom:.5rem;color:var(--accent);display:flex;align-items:center;gap:.4rem}.user-info{font-size:.85rem;color:var(--text-muted);margin-bottom:1rem}.nav{display:flex;flex-direction:column;gap:.25rem}.nav-link{padding:.55rem .85rem;border-radius:999px;color:#f9fafbcc;text-decoration:none;font-weight:600;display:inline-flex;align-items:center;gap:.4rem}.nav-link:before{content:"";width:8px;height:8px;border-radius:999px;background:#94a3b899}.nav-link:hover{background:#f9fafb14;color:#f9fafb;text-decoration:none}.nav-link.active{background:#fef3c73d;color:#111827}.nav-link.active:before{background:#f97316}.logout-btn{margin-top:1rem;width:100%}.main{flex:1;min-width:0}.form-group{margin-bottom:1rem}.form-group label{display:block;margin-bottom:.35rem;font-weight:500;color:var(--text-muted)}.error-msg{color:#ef4444;font-size:.9rem;margin-top:.5rem}.success-msg{color:var(--success);font-size:.9rem;margin-top:.5rem}.list-row{display:flex;align-items:center;justify-content:space-between;padding:.75rem;border-bottom:1px solid var(--border);gap:.5rem;flex-wrap:wrap}.list-row:last-child{border-bottom:none}.grid-2{display:grid;gap:1rem}@media(min-width:640px){.grid-2{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.grid-2{grid-template-columns:repeat(3,1fr)}}.badge{display:inline-block;padding:.2rem .5rem;border-radius:6px;font-size:.8rem;font-weight:600}.badge.admin{background:#7c3aed;color:#fff}.badge.employee{background:var(--bg-card);color:var(--text-muted);border:1px solid var(--border)}.badge.points{background:linear-gradient(135deg,#fee2e2,#f97316);color:#fff}.btn-sm{padding:.35rem .7rem;font-size:.85rem}.modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:100;padding:1rem}.modal{background:var(--bg-card);border-radius:var(--radius);padding:1.5rem;max-width:420px;width:100%;border:1px solid var(--border);box-shadow:var(--shadow)}.modal h3{margin-bottom:1rem}.modal-actions{display:flex;gap:.5rem;justify-content:flex-end;margin-top:1rem}.section-title{font-size:1.1rem;font-weight:600;margin-bottom:.75rem;color:var(--text)}.empty-state,.loading{text-align:center;padding:2rem;color:var(--text-muted)}.actions-top{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1.5rem}.actions-top .card{flex:1;min-width:200px;padding:1rem;cursor:pointer;transition:transform .15s,box-shadow .15s}.actions-top .card:hover{transform:translateY(-2px);box-shadow:0 6px 24px #00000059}.actions-top .card h3{font-size:1rem;margin-bottom:.25rem}.actions-top .card p{font-size:.85rem;color:var(--text-muted)}.stat-card{text-align:center;padding:1rem}.stat-card .value{font-size:1.75rem;font-weight:700;color:var(--accent)}.stat-card .label{font-size:.85rem;color:var(--text-muted)}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse}table th,table td{padding:.6rem .75rem;text-align:left;border-bottom:1px solid var(--border)}table th{font-weight:600;color:var(--text-muted);font-size:.85rem}.table-actions{display:flex;gap:.35rem;flex-wrap:wrap}
