@import"https://fonts.googleapis.com/css2?family=Syne:wght@400;500;600;700;800&family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500&display=swap";:root{--font-head: "Syne", sans-serif;--font-body: "DM Sans", sans-serif;--bg: #f4f5f7;--bg-card: #ffffff;--bg-hover: #f0f1f3;--bg-input: #f8f9fa;--sidebar: #0f1117;--sidebar-text: #a0a8b8;--sidebar-active: #ffffff;--sidebar-active-bg: rgba(99,209,130,.15);--border: #e5e7eb;--text: #111827;--text-muted:#6b7280;--accent: #22c55e;--accent-2: #16a34a;--danger: #ef4444;--warning: #f59e0b;--info: #3b82f6;--shadow: 0 1px 3px rgba(0,0,0,.08), 0 1px 2px rgba(0,0,0,.04);--shadow-md: 0 4px 16px rgba(0,0,0,.1);--radius: 12px;--radius-sm: 8px;--transition: .2s ease}[data-theme=dark]{--bg: #0d0f14;--bg-card: #161b24;--bg-hover: #1e2530;--bg-input: #1a2030;--sidebar: #0a0c10;--sidebar-text: #7a8494;--border: #232b38;--text: #e8edf5;--text-muted:#7a8494;--shadow: 0 1px 3px rgba(0,0,0,.4), 0 1px 2px rgba(0,0,0,.3);--shadow-md: 0 4px 24px rgba(0,0,0,.5)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:15px}body{font-family:var(--font-body);background:var(--bg);color:var(--text);transition:background var(--transition),color var(--transition);line-height:1.6;-webkit-font-smoothing:antialiased}h1,h2,h3,h4,h5{font-family:var(--font-head);line-height:1.2}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:var(--font-body)}input,select,textarea{font-family:var(--font-body);background:var(--bg-input);color:var(--text);border:1.5px solid var(--border);border-radius:var(--radius-sm);padding:.55rem .85rem;font-size:.9rem;outline:none;transition:border-color var(--transition),box-shadow var(--transition);width:100%}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px #22c55e1f}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:99px}.app-layout{display:flex;min-height:100vh}.main-content{flex:1;margin-left:240px;display:flex;flex-direction:column;min-height:100vh;transition:margin-left var(--transition)}.page-body{flex:1;padding:1.75rem 2rem}.card{background:var(--bg-card);border-radius:var(--radius);border:1px solid var(--border);box-shadow:var(--shadow);padding:1.5rem;transition:background var(--transition),border-color var(--transition)}.btn{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem 1.1rem;border-radius:var(--radius-sm);font-size:.875rem;font-weight:500;border:none;transition:all var(--transition);white-space:nowrap}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-2);transform:translateY(-1px);box-shadow:0 4px 12px #22c55e4d}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover{opacity:.88}.btn-ghost{background:var(--bg-hover);color:var(--text);border:1px solid var(--border)}.btn-ghost:hover{background:var(--border)}.btn-sm{padding:.35rem .75rem;font-size:.8rem}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.badge{display:inline-flex;align-items:center;padding:.2rem .65rem;border-radius:99px;font-size:.75rem;font-weight:600;font-family:var(--font-head)}.badge-green{background:#22c55e26;color:#16a34a}.badge-yellow{background:#f59e0b26;color:#b45309}.badge-red{background:#ef444426;color:#b91c1c}.badge-blue{background:#3b82f626;color:#1d4ed8}.badge-gray{background:var(--bg-hover);color:var(--text-muted)}[data-theme=dark] .badge-green{color:#4ade80}[data-theme=dark] .badge-yellow{color:#fbbf24}[data-theme=dark] .badge-red{color:#f87171}[data-theme=dark] .badge-blue{color:#60a5fa}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:.875rem}thead th{text-align:left;padding:.75rem 1rem;font-family:var(--font-head);font-size:.78rem;letter-spacing:.05em;color:var(--text-muted);border-bottom:1px solid var(--border);background:var(--bg-card);text-transform:uppercase}tbody tr{border-bottom:1px solid var(--border);transition:background var(--transition)}tbody tr:last-child{border-bottom:none}tbody tr:hover{background:var(--bg-hover)}tbody td{padding:.85rem 1rem;color:var(--text);vertical-align:middle}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-group{display:flex;flex-direction:column;gap:.4rem}.form-group label{font-size:.82rem;font-weight:500;color:var(--text-muted);font-family:var(--font-head);text-transform:uppercase;letter-spacing:.04em}.form-full{grid-column:1 / -1}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#0000008c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:1rem;animation:fadeIn .15s ease}.modal{background:var(--bg-card);border-radius:var(--radius);border:1px solid var(--border);width:100%;max-width:560px;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-md);animation:slideUp .2s ease}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border)}.modal-header h3{font-size:1.1rem;font-family:var(--font-head)}.modal-body{padding:1.5rem}.modal-footer{display:flex;gap:.75rem;justify-content:flex-end;padding:1rem 1.5rem;border-top:1px solid var(--border)}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.75rem}.page-header h1{font-size:1.6rem}.page-header p{color:var(--text-muted);font-size:.875rem;margin-top:.15rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1.75rem}.search-bar{display:flex;align-items:center;gap:.5rem;background:var(--bg-input);border:1.5px solid var(--border);border-radius:var(--radius-sm);padding:.5rem .85rem;transition:border-color var(--transition)}.search-bar:focus-within{border-color:var(--accent)}.search-bar input{border:none;background:transparent;padding:0;box-shadow:none}.search-bar svg{color:var(--text-muted);flex-shrink:0}.avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--accent),#0ea5e9);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.8rem;color:#fff;flex-shrink:0}.pagination{display:flex;align-items:center;gap:.5rem;justify-content:center;margin-top:1.5rem}.pagination button{width:34px;height:34px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-card);color:var(--text);font-size:.85rem;transition:all var(--transition)}.pagination button.active,.pagination button:hover{background:var(--accent);color:#fff;border-color:var(--accent)}.pagination button:disabled{opacity:.4;cursor:not-allowed}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:spin .8s linear infinite}@media (max-width: 768px){.main-content{margin-left:0}.page-body{padding:1rem}.form-grid{grid-template-columns:1fr}}.empty-state{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:3rem 1rem;color:var(--text-muted)}.empty-state svg{opacity:.3}.toggle{position:relative;display:inline-block;width:40px;height:22px}.toggle input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;top:0;right:0;bottom:0;left:0;background:var(--border);border-radius:99px;transition:.3s}.toggle-slider:before{content:"";position:absolute;width:16px;height:16px;left:3px;bottom:3px;background:#fff;border-radius:50%;transition:.3s}.toggle input:checked+.toggle-slider{background:var(--accent)}.toggle input:checked+.toggle-slider:before{transform:translate(18px)}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;padding-right:2rem}.skeleton{background:linear-gradient(90deg,var(--bg-hover) 25%,var(--border) 50%,var(--bg-hover) 75%);background-size:200% 100%;animation:shimmer 1.4s infinite;border-radius:var(--radius-sm)}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}
