*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f5f5f5;color:#333;line-height:1.5}#root{min-height:100vh}button{font-family:inherit;cursor:pointer;border:none;outline:none;transition:all .2s ease}button:disabled{cursor:not-allowed;opacity:.6}input,textarea,select{font-family:inherit;outline:none;border:1px solid #ddd;border-radius:4px;padding:8px 12px;font-size:14px;transition:border-color .2s ease}input:focus,textarea:focus,select:focus{border-color:#2563eb}table{width:100%;border-collapse:collapse}th,td{padding:12px;text-align:left;border-bottom:1px solid #e5e7eb}th{font-weight:600;color:#6b7280;font-size:12px;text-transform:uppercase;letter-spacing:.05em;background:#f9fafb}tr:hover{background:#f9fafb}.btn{padding:10px 20px;border-radius:6px;font-size:14px;font-weight:500;transition:all .2s ease}.btn-primary{background:#2563eb;color:#fff}.btn-primary:hover:not(:disabled){background:#1d4ed8}.btn-secondary{background:#6b7280;color:#fff}.btn-secondary:hover:not(:disabled){background:#4b5563}.btn-danger{background:#dc2626;color:#fff}.btn-danger:hover:not(:disabled){background:#b91c1c}.btn-success{background:#16a34a;color:#fff}.btn-success:hover:not(:disabled){background:#15803d}.card{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;padding:24px}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal{background:#fff;border-radius:8px;padding:24px;max-width:600px;width:90%;max-height:90vh;overflow-y:auto}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:6px;font-weight:500;font-size:14px;color:#374151}.form-group input,.form-group select,.form-group textarea{width:100%}.error-message{color:#dc2626;font-size:14px;margin-top:4px}.success-message{color:#16a34a;font-size:14px;margin-top:4px}.loading{display:flex;justify-content:center;align-items:center;padding:40px}.empty-state{text-align:center;padding:60px 20px;color:#6b7280}.empty-state h3{margin-bottom:8px;color:#374151}
