:root{--primary:#4f46e5;--primary-dark:#4338ca;--text:#1f2937;--text-light:#6b7280;--border:#e5e7eb;--bg:#fff;--bg-light:#f9fafb;--error:#ef4444;--success:#10b981}@media (prefers-color-scheme:dark){:root{--text:#f3f4f6;--text-light:#d1d5db;--border:#374151;--bg:#1f2937;--bg-light:#111827}}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-light);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.5}.container{max-width:1200px;margin:0 auto;padding:2rem}.header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1.5rem;display:flex}.header h1{margin:0;font-size:2rem}h1{margin-bottom:1.5rem;font-size:1.875rem;font-weight:700}h2{margin-bottom:1rem;font-size:1.25rem;font-weight:600}.login-container{background:linear-gradient(135deg, var(--primary) 0%, #818cf8 100%);justify-content:center;align-items:center;min-height:100vh;display:flex}.login-card{background:var(--bg);border-radius:.5rem;width:100%;max-width:400px;padding:3rem;box-shadow:0 10px 25px #0000001a}.login-card h1{color:var(--primary);text-align:center;margin-bottom:2rem}.form-group{margin-bottom:1.5rem}label{color:var(--text);margin-bottom:.5rem;font-weight:500;display:block}input[type=text],input[type=email],input[type=password],textarea{border:1px solid var(--border);background-color:var(--bg);width:100%;color:var(--text);border-radius:.375rem;padding:.75rem;font-size:1rem;transition:border-color .2s}input:focus,textarea:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px #4f46e51a}input:disabled{opacity:.6;cursor:not-allowed}button{cursor:pointer;background-color:var(--primary);color:#fff;border:none;border-radius:.375rem;padding:.75rem 1.5rem;font-size:1rem;font-weight:500;transition:all .2s}button:hover:not(:disabled){background-color:var(--primary-dark);transform:translateY(-2px);box-shadow:0 4px 12px #4f46e566}button:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{background-color:var(--text-light)}.btn-secondary:hover:not(:disabled){background-color:var(--text)}.btn-danger{background-color:var(--error)}.btn-danger:hover:not(:disabled){background-color:#dc2626}.btn-back,.btn-logout,.btn-link{color:var(--primary);cursor:pointer;background:0 0;border:none;border-radius:.375rem;padding:.75rem 1.5rem;font-size:1rem;text-decoration:none;transition:background-color .2s}.btn-back:hover,.btn-logout:hover,.btn-link:hover{background-color:#4f46e51a}.error{color:var(--error);border-left:4px solid var(--error);background-color:#ef44441a;border-radius:.375rem;margin-bottom:1rem;padding:1rem}.success{color:var(--success);border-left:4px solid var(--success);background-color:#10b9811a;border-radius:.375rem;margin-bottom:1rem;padding:1rem}.users-table{border:1px solid var(--border);border-radius:.5rem;overflow-x:auto}table{border-collapse:collapse;background-color:var(--bg);width:100%}thead{background-color:var(--bg-light);border-bottom:2px solid var(--border)}th{text-align:left;color:var(--text);padding:1rem;font-weight:600}td{border-bottom:1px solid var(--border);padding:1rem}tbody tr:hover{background-color:var(--bg-light)}tbody tr:last-child td{border-bottom:none}.form-section{background:var(--bg);border:1px solid var(--border);border-radius:.5rem;margin-bottom:2rem;padding:1.5rem}.form-actions{gap:1rem;margin-top:1.5rem;display:flex}.text-muted{color:var(--text-light);margin-top:.5rem;font-size:.875rem}code{background-color:var(--bg-light);border-radius:.25rem;padding:.25rem .5rem;font-family:Monaco,Courier New,monospace;font-size:.875rem}.modal-overlay{z-index:1000;background-color:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background-color:var(--bg);border-radius:.5rem;max-width:400px;padding:2rem;box-shadow:0 20px 25px #00000026}.modal h2{margin-bottom:1rem}.modal p{color:var(--text);margin-bottom:1rem}.text-warning{color:#d97706;font-weight:500}.modal-actions{gap:1rem;margin-top:1.5rem;display:flex}@media (width<=768px){.container{padding:1rem}.header{flex-direction:column;align-items:flex-start;gap:1rem}.header h1,h1{font-size:1.5rem}.form-actions{flex-direction:column}button,.btn-back,.btn-logout{text-align:center;width:100%}}
