.page-container{width:100%;max-width:none}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.25rem;display:flex}.page-header h1{color:var(--text);margin:0;font-size:1.75rem;font-weight:700}.page-header p{color:var(--text-light);margin:.35rem 0 0;font-size:.95rem;line-height:1.45}.data-table-wrap{-webkit-overflow-scrolling:touch;width:100%;overflow-x:auto}.data-table{border-collapse:collapse;width:100%;min-width:640px}.data-table.data-table--compact{min-width:0}.data-table th,.data-table td{text-align:left;border-bottom:1px solid var(--border);vertical-align:middle;padding:.75rem 1rem}.data-table th{text-transform:uppercase;letter-spacing:.03em;color:var(--text-light);background:var(--bg);white-space:nowrap;font-size:.75rem;font-weight:600}.data-table tbody tr:nth-child(2n){background:var(--table-stripe)}.data-table tbody tr:hover{background:var(--hover-bg)}*{box-sizing:border-box;margin:0;padding:0}:root{--primary:#667eea;--primary-dark:#764ba2;--secondary:#4b5563;--success:#059669;--error:#dc2626;--warning:#b45309;--bg:#f9fafb;--bg-card:#fff;--bg-sidebar:#fff;--text:#1f2937;--text-light:#4b5563;--border:#e5e7eb;--shadow:#0000001a;--hover-bg:#667eea14;--input-bg:#fff;--skeleton-base:#e5e7eb;--skeleton-shine:#f3f4f6;--table-stripe:#f9fafb;--overlay:#0006;--btn-primary-bg:#4f46e5;--btn-primary-bg-end:#6366f1;--btn-primary-fg:#fff;--btn-primary-shadow:#4f46e559;--btn-secondary-bg:#fff;--btn-secondary-fg:#111827;--btn-secondary-border:#6b7280;--btn-secondary-hover:#f3f4f6;--btn-outline-fg:#4338ca;--btn-outline-border:#4338ca;--btn-ghost-fg:#374151;--btn-danger-bg:#dc2626;--btn-danger-fg:#fff;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:16px;--shadow-sm:0 1px 3px #0000000f;--shadow-md:0 2px 8px #00000014;--shadow-lg:0 8px 24px #0000001f;--shadow-xl:0 20px 60px #00000029;--icon-blue-bg:#dbeafe;--icon-blue:#2563eb;--icon-purple-bg:#ede9fe;--icon-purple:#7c3aed;--icon-green-bg:#d1fae5;--icon-green:#059669;--icon-amber-bg:#fef3c7;--icon-amber:#d97706;--icon-rose-bg:#ffe4e6;--icon-rose:#e11d48;--icon-red-bg:#fee2e2;--icon-red:#dc2626;--icon-emerald-bg:#dcfce7;--icon-emerald:#16a34a;--icon-pink-bg:#fce7f3;--icon-pink:#db2777}[data-theme=dark]{--primary:#818cf8;--primary-dark:#a78bfa;--secondary:#9ca3af;--success:#34d399;--error:#f87171;--warning:#fbbf24;--bg:#111827;--bg-card:#1f2937;--bg-sidebar:#1a2332;--text:#f3f4f6;--text-light:#9ca3af;--border:#374151;--shadow:#0006;--hover-bg:#818cf81f;--input-bg:#1f2937;--skeleton-base:#374151;--skeleton-shine:#4b5563;--table-stripe:#1a2332;--overlay:#0009;--btn-primary-bg:#4f46e5;--btn-primary-bg-end:#6366f1;--btn-primary-fg:#fff;--btn-primary-shadow:#6366f173;--btn-secondary-bg:#1f2937;--btn-secondary-fg:#f9fafb;--btn-secondary-border:#9ca3af;--btn-secondary-hover:#374151;--btn-outline-fg:#c7d2fe;--btn-outline-border:#a5b4fc;--btn-ghost-fg:#e5e7eb;--btn-danger-bg:#ef4444;--btn-danger-fg:#fff;--icon-blue-bg:#2563eb33;--icon-blue:#93c5fd;--icon-purple-bg:#7c3aed33;--icon-purple:#c4b5fd;--icon-green-bg:#05966933;--icon-green:#6ee7b7;--icon-amber-bg:#b4530933;--icon-amber:#fcd34d;--icon-rose-bg:#e11d4833;--icon-rose:#fda4af;--icon-red-bg:#dc262633;--icon-red:#fca5a5;--icon-emerald-bg:#16a34a33;--icon-emerald:#6ee7b7;--icon-pink-bg:#db277733;--icon-pink:#f9a8d4}body{color:var(--text);background:var(--bg);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.6}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}button{font-family:inherit}.btn,button.btn-primary,button.btn-secondary,a.btn-primary,a.btn-secondary{border-radius:var(--radius-md);cursor:pointer;justify-content:center;align-items:center;gap:.5rem;padding:.625rem 1.15rem;font-size:.9rem;font-weight:600;line-height:1.25;text-decoration:none;transition:background .15s,border-color .15s,color .15s,box-shadow .15s,transform .15s;display:inline-flex}.btn:disabled,button.btn-primary:disabled,button.btn-secondary:disabled{opacity:.55;cursor:not-allowed}.btn-primary,button.btn-primary,a.btn-primary{background:linear-gradient(135deg, var(--btn-primary-bg) 0%, var(--btn-primary-bg-end) 100%);box-shadow:0 2px 8px var(--btn-primary-shadow);border:1px solid #0000;color:var(--btn-primary-fg)!important}.btn-primary:hover:not(:disabled),button.btn-primary:hover:not(:disabled),a.btn-primary:hover{filter:brightness(1.06);text-decoration:none}.btn-secondary,button.btn-secondary,a.btn-secondary{background:var(--btn-secondary-bg);border:1.5px solid var(--btn-secondary-border);box-shadow:var(--shadow-sm);color:var(--btn-secondary-fg)!important}.btn-secondary:hover:not(:disabled),button.btn-secondary:hover:not(:disabled),a.btn-secondary:hover{background:var(--btn-secondary-hover);text-decoration:none}.btn-outline,a.btn-outline,button.btn-outline{border:2px solid var(--btn-outline-border);background:0 0;color:var(--btn-outline-fg)!important}.btn-outline:hover:not(:disabled),a.btn-outline:hover{background:color-mix(in srgb, var(--btn-outline-border) 14%, transparent);text-decoration:none}.btn-ghost,button.btn-ghost{color:var(--btn-ghost-fg);background:0 0;border:1px solid #0000}.btn-ghost:hover:not(:disabled){background:var(--hover-bg)}.btn-large{padding:.85rem 1.5rem;font-size:1rem}select,input,textarea{color:var(--text);background-color:var(--input-bg);border-color:var(--border)}select option{background-color:var(--bg-card);color:var(--text)}:focus{outline:2px solid var(--primary);outline-offset:2px}:focus:not(:focus-visible){outline:none}:focus-visible{outline:2px solid var(--primary);outline-offset:2px}
