:root{--bg-base:#0f172a;--bg-surface:#1e293b;--bg-surface-hover:#334155;--bg-dark:#090e1a;--text-primary:#f8fafc;--text-secondary:#94a3b8;--text-muted:#64748b;--accent:#3b82f6;--accent-hover:#2563eb;--danger:#ef4444;--success:#10b981;--warning:#f59e0b;--border-color:#334155;--focus-ring:#3b82f680;--radius-sm:4px;--radius-md:6px;--radius-lg:8px}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-base);color:var(--text-primary);-webkit-font-smoothing:antialiased;font-family:Inter,system-ui,-apple-system,sans-serif;line-height:1.5}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,h4,h5,h6{color:var(--text-primary);font-weight:600}h1{margin-bottom:1rem;font-size:1.5rem}h2{margin-bottom:.75rem;font-size:1.25rem}.data-table{border-collapse:collapse;background-color:var(--bg-surface);border-radius:var(--radius-md);width:100%;overflow:hidden;box-shadow:0 4px 6px -1px #0000001a}.data-table th,.data-table td{text-align:left;border-bottom:1px solid var(--border-color);padding:.75rem 1rem;font-size:.875rem}.data-table th{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;background-color:#0003;font-size:.75rem;font-weight:500}.data-table tr:hover td{background-color:var(--bg-surface-hover)}.form-group{margin-bottom:1rem}.form-label{color:var(--text-secondary);margin-bottom:.25rem;font-size:.875rem;display:block}.form-input{background-color:var(--bg-base);border:1px solid var(--border-color);width:100%;color:var(--text-primary);border-radius:var(--radius-sm);padding:.5rem .75rem;font-size:.875rem;transition:border-color .15s}.form-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--focus-ring);outline:none}select.form-input option{background-color:var(--bg-surface);color:var(--text-primary)}.btn{border-radius:var(--radius-sm);cursor:pointer;border:none;justify-content:center;align-items:center;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:all .15s;display:inline-flex}.btn-primary{background-color:var(--accent);color:#fff}.btn-primary:hover{background-color:var(--accent-hover)}.btn-danger{background-color:var(--danger);color:#fff}.admin-layout{min-height:100vh;display:flex}.sidebar{background-color:var(--bg-surface);border-right:1px solid var(--border-color);flex-direction:column;width:250px;display:flex}.sidebar-header{border-bottom:1px solid var(--border-color);color:var(--accent);padding:1.5rem;font-size:1.25rem;font-weight:700}.nav-link{color:var(--text-secondary);border-left:3px solid #0000;padding:.75rem 1.5rem}.nav-link:hover,.nav-link.active{background-color:var(--bg-surface-hover);color:var(--text-primary);text-decoration:none}.nav-link.active{border-left-color:var(--accent)}.main-content{flex:1;padding:2rem;overflow-y:auto}.page-header{justify-content:space-between;align-items:center;margin-bottom:2rem;display:flex}.modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#000000b3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{background-color:var(--bg-surface);border-radius:var(--radius-lg);width:90%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #00000080}.modal-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:1.5rem;display:flex}.modal-body{padding:1.5rem}.modal-footer{border-top:1px solid var(--border-color);justify-content:flex-end;gap:1rem;padding:1.5rem;display:flex}.btn-secondary{color:var(--text-primary);border:1px solid var(--border-color);background-color:#0000}.btn-secondary:hover{background-color:var(--bg-surface-hover)}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background-color:#0f172ab3;justify-content:center;align-items:center;padding:1rem;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.modal-content{background-color:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);flex-direction:column;width:100%;max-height:90vh;animation:.3s cubic-bezier(.16,1,.3,1) slideUp;display:flex;overflow:hidden;box-shadow:0 20px 25px -5px #00000080,0 10px 10px -5px #0000004d}.modal-header{border-bottom:1px solid var(--border-color);background-color:var(--surface-light);justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;display:flex}.modal-header h2{color:var(--text-primary);margin:0;font-size:1.25rem;font-weight:600}.modal-close-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;font-size:1.75rem;line-height:1;transition:color .2s;display:flex}.modal-close-btn:hover{color:var(--danger)}.modal-body{flex:1;padding:1.5rem;overflow-y:auto}.modal-body::-webkit-scrollbar{width:6px}.modal-body::-webkit-scrollbar-track{background:0 0}.modal-body::-webkit-scrollbar-thumb{background-color:var(--border-color);border-radius:4px}.modal-footer{border-top:1px solid var(--border-color);background-color:var(--surface-light);justify-content:flex-end;gap:1rem;padding:1.25rem 1.5rem;display:flex}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.modal-content .form-group{margin-bottom:1.25rem}.modal-content .form-label{color:var(--text-secondary);margin-bottom:.5rem;font-size:.875rem;font-weight:500;display:block}.modal-content .form-input{background-color:var(--bg-dark);border:1px solid var(--border-color);border-radius:var(--radius-md);width:100%;color:var(--text-primary);padding:.75rem 1rem;font-family:inherit;transition:all .2s}.modal-content .form-input:focus{border-color:var(--accent);box-shadow:0 0 0 2px rgba(var(--accent-rgb), .2);outline:none}
