*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #0f0f0f;--surface: #1a1a1a;--surface2: #242424;--surface3: #2e2e2e;--border: #333;--text: #e0e0e0;--text-muted: #888;--primary: #00dcdc;--primary-dark:#009999;--danger: #ff4444;--success: #00cc66;--warning: #ffaa00;--radius: 8px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}body{background:var(--bg);color:var(--text);min-height:100vh}button{cursor:pointer;border:none;border-radius:var(--radius);padding:8px 16px;font-size:13px;font-weight:500;transition:opacity .15s,transform .1s}button:hover:not(:disabled){opacity:.85}button:active:not(:disabled){transform:scale(.97)}button:disabled{opacity:.4;cursor:not-allowed}.btn-primary{background:var(--primary);color:#000}.btn-danger{background:var(--danger);color:#fff}.btn-ghost{background:var(--surface3);color:var(--text)}.btn-sm{padding:5px 10px;font-size:12px}input,select{background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);padding:8px 12px;font-size:14px;outline:none;width:100%;transition:border-color .15s}input:focus,select:focus{border-color:var(--primary)}input[type=date]::-webkit-calendar-picker-indicator{filter:invert(1)}label{font-size:13px;color:var(--text-muted);margin-bottom:4px;display:block}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000bf;display:flex;align-items:center;justify-content:center;z-index:100}.modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:28px;width:100%;max-width:460px}.modal h2{font-size:18px;margin-bottom:20px;color:var(--primary)}.form-group{margin-bottom:16px}table{width:100%;border-collapse:collapse;font-size:14px}th{text-align:left;padding:10px 14px;color:var(--text-muted);font-weight:500;border-bottom:1px solid var(--border);font-size:11px;text-transform:uppercase;letter-spacing:.5px}td{padding:12px 14px;border-bottom:1px solid var(--border)}tr:last-child td{border-bottom:none}tbody tr:hover td{background:var(--surface2)}.actions{display:flex;gap:6px;flex-wrap:wrap}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--surface)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}
