:root,[data-theme=light]{--bg-body: #f4f5f7;--bg-surface: #ffffff;--bg-hover: rgba(0, 0, 0, .04);--bg-border: #e4e7ec;--text-primary: #1a1d23;--text-secondary: #3d4452;--text-muted: #6b7280;--text-dimmed: #9ca3af;--color-primary: #0ea5e9;--color-primary-subtle: rgba(14, 165, 233, .12);--color-success: #22c55e;--color-success-subtle: rgba(34, 197, 94, .12);--color-error: #ef4444;--color-error-subtle: rgba(239, 68, 68, .12);--color-warning: #f59e0b;--color-warning-subtle: rgba(245, 158, 11, .12);--sidebar-bg: var(--bg-body);--sidebar-text: var(--text-muted);--sidebar-text-hover: var(--text-primary);--sidebar-active: var(--color-primary);--sidebar-border: var(--bg-border)}[data-theme=dark]{--bg-body: #0f1117;--bg-surface: #1a1d27;--bg-hover: rgba(255, 255, 255, .06);--bg-border: #2a2d3a;--text-primary: #e8eaed;--text-secondary: #b0b5bf;--text-muted: #7c8290;--text-dimmed: #555a66;--color-primary: #38bdf8;--color-primary-subtle: rgba(56, 189, 248, .15);--color-success: #4ade80;--color-success-subtle: rgba(74, 222, 128, .15);--color-error: #f87171;--color-error-subtle: rgba(248, 113, 113, .15);--color-warning: #fbbf24;--color-warning-subtle: rgba(251, 191, 36, .15);--sidebar-bg: var(--bg-body);--sidebar-text: var(--text-muted);--sidebar-text-hover: var(--text-primary);--sidebar-active: var(--color-primary);--sidebar-border: var(--bg-border)}*{scrollbar-width:thin;scrollbar-color:var(--bg-border) transparent}*::-webkit-scrollbar{width:6px;height:6px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:var(--bg-border);border-radius:3px}*::-webkit-scrollbar-thumb:hover{background:var(--text-dimmed)}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html,body{height:100%}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--bg-body);color:var(--text-primary);font-size:14px;line-height:1.6;-webkit-font-smoothing:antialiased}h1,h2,h3,h4{font-weight:600;color:var(--text-primary)}.card{padding:20px}.card:hover{background:var(--bg-hover)}.table-container{overflow-x:auto}.table{width:100%;border-collapse:collapse}.table th{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);padding:10px 16px;text-align:left;border-bottom:1px solid var(--bg-border)}.table td{font-size:14px;color:var(--text-secondary);padding:12px 16px;border-bottom:1px solid var(--bg-border)}.table tbody tr:hover{background:var(--bg-hover)}.table td.empty-row{text-align:center;color:var(--text-dimmed);padding:2.5rem 1rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 20px;border-radius:8px;font-size:14px;font-weight:600;border:none;cursor:pointer;text-decoration:none;transition:background .15s,opacity .15s}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover:not(:disabled){opacity:.9}.btn-danger{background:var(--color-error);color:#fff}.btn-danger:hover:not(:disabled){opacity:.9}.btn-ghost{background:transparent;color:var(--text-muted)}.btn-ghost:hover{background:var(--bg-hover)}.btn-icon{width:34px;height:34px;padding:0;background:transparent;border:none;border-radius:8px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;color:var(--text-muted)}.btn-icon:hover{background:var(--bg-hover)}.btn-icon.danger:hover{background:var(--color-error-subtle);color:var(--color-error)}.chip{display:inline-flex;align-items:center;padding:3px 10px;border-radius:20px;font-size:12px;font-weight:600;letter-spacing:.2px}.chip-success{background:var(--color-success-subtle);color:var(--color-success)}.chip-error{background:var(--color-error-subtle);color:var(--color-error)}.chip-warning{background:var(--color-warning-subtle);color:var(--color-warning)}.chip-primary{background:var(--color-primary-subtle);color:var(--color-primary)}.chip-muted{background:var(--bg-hover);color:var(--text-dimmed)}.chip-solid-success{background:var(--color-success);color:#fff}.chip-solid-error{background:var(--color-error);color:#fff}.chip-solid-warning{background:var(--color-warning);color:#fff}.chip-solid-primary{background:var(--color-primary);color:#fff}.form-input,.form-select,.form-textarea{width:100%;background:transparent;border:1px solid var(--bg-border);border-radius:8px;padding:10px 14px;font-size:14px;font-family:inherit;color:var(--text-primary);transition:border-color .15s}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--color-primary)}.form-input::placeholder,.form-textarea::placeholder{color:var(--text-dimmed)}.form-label{display:block;margin-bottom:6px;font-size:13px;font-weight:500;color:var(--text-muted)}.alert-error{background:var(--color-error-subtle);color:var(--color-error);padding:10px 16px;border-radius:8px;font-size:14px;margin-bottom:16px}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.page-title{font-size:22px;color:var(--color-primary);font-weight:600;margin-bottom:20px}.section-header{font-size:15px;font-weight:600;text-transform:uppercase;letter-spacing:.6px;color:var(--text-muted);margin-bottom:12px}.divider{border:none;border-bottom:1px solid var(--bg-border);margin:16px 0}.filters-row{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:16px}.filters-row .form-input{flex:1;min-width:200px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:flex;flex-direction:column}.field.full{grid-column:span 2}.form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:24px}@media(max-width:768px){.form-grid{grid-template-columns:1fr}.field.full{grid-column:span 1}}.loading-text{text-align:center;color:var(--text-dimmed);padding:3rem 1rem;font-size:14px}@media(max-width:768px){.page-header{flex-direction:column;align-items:flex-start;gap:12px}.page-title{font-size:20px;margin-bottom:16px}.filters-row{flex-direction:column}.filters-row .form-input{min-width:0}.table th,.table td{padding:10px 12px;font-size:13px}}@media(max-width:480px){.page-title{font-size:18px;margin-bottom:12px}.btn{padding:8px 14px;font-size:13px}.table th,.table td{padding:8px 10px;font-size:12px}}
