@import url("https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800;900&display=swap");:root{--sidebar-w:240px;--primary:#4f46e5;--primary-soft:rgba(79,70,229,0.10);--primary-med:rgba(79,70,229,0.22);--primary-fg:#ffffff;--accent:#4f46e5;--accent-soft:rgba(79,70,229,0.10);--accent-medium:rgba(79,70,229,0.22);--accent-fg:#ffffff;--bg-base:#f0f4f9;--bg-blob-a:rgba(79,70,229,0.08);--bg-blob-b:rgba(99,102,241,0.05);--surface:#ffffff;--border:#e8edf3;--border-light:#f0f4f9;--text:#1e293b;--text-2:#475569;--text-secondary:#475569;--text-3:#94a3b8;--green:#16a34a;--green-bg:rgba(22,163,74,.10);--red:#ef4444;--red-bg:rgba(239,68,68,.10);--yellow:#f59e0b;--yellow-bg:rgba(245,158,11,.10);--orange:#f97316;--orange-bg:rgba(249,115,22,.10);--blue:#2563eb;--blue-bg:rgba(37,99,235,.10);--r:8px;--r-sm:6px;--r-md:12px;--r-lg:16px;--r-xl:24px;--shadow-sm:0 1px 3px rgba(0,0,0,.06),0 1px 2px rgba(0,0,0,.04);--shadow:0 4px 16px rgba(0,0,0,.06),0 1px 3px rgba(0,0,0,.04);--shadow-lg:0 10px 40px rgba(0,0,0,.10),0 2px 8px rgba(0,0,0,.06)}*{box-sizing:border-box;margin:0;padding:0}body,html{height:100%}body{font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-size:14px;line-height:1.5;color:var(--text);background:var(--bg-base);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font-family:inherit}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:rgba(0,0,0,.12);border-radius:99px}.card{background:var(--surface)}.card,.card-dark{border-radius:var(--r-lg);border:1px solid var(--border);box-shadow:var(--shadow)}.card-dark{background:#f8fafc}.stat-chip{background:var(--surface);border-radius:var(--r-lg);border:1px solid var(--border);box-shadow:var(--shadow);padding:22px 24px}.accent-chip{padding:4px 12px;border-radius:99px;background:var(--accent-soft);border:1px solid var(--accent-medium);color:var(--accent)}.accent-chip,.badge{display:inline-flex;align-items:center;font-size:11px;font-weight:700}.badge{padding:2px 8px;border-radius:99px}.badge-green{background:var(--green-bg);color:var(--green)}.badge-red{background:var(--red-bg);color:var(--red)}.badge-yellow{background:var(--yellow-bg);color:var(--yellow)}.badge-blue{background:var(--blue-bg);color:var(--blue)}.btn{display:inline-flex;align-items:center;gap:6px;padding:8px 18px;border-radius:var(--r);font-size:13px;font-weight:600;cursor:pointer;border:none;transition:all .15s}.btn-primary{background:var(--accent);color:var(--accent-fg);box-shadow:0 1px 3px rgba(0,0,0,.15)}.btn-primary:hover{opacity:.9}.btn-ghost{background:transparent;color:var(--text-2);border:1px solid var(--border)}.btn-ghost:hover{background:var(--bg-base);color:var(--text)}.input{width:100%;padding:9px 12px;border:1.5px solid var(--border);border-radius:var(--r);background:var(--surface);color:var(--text);font-size:13px;outline:none;transition:border-color .15s}.input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.label{display:block;font-size:12px;font-weight:600;color:var(--text-2);margin-bottom:5px}.field{display:flex;flex-direction:column;margin-bottom:14px}.tbl{width:100%;border-collapse:collapse;font-size:13px}.tbl th{text-align:left;padding:10px 16px;font-size:11px;font-weight:700;color:var(--text-3);text-transform:uppercase;letter-spacing:.06em}.tbl td,.tbl th{border-bottom:1px solid var(--border)}.tbl td{padding:12px 16px;color:var(--text-2)}.tbl tr:last-child td{border-bottom:none}.tbl tbody tr:hover td{background:var(--bg-base)}.nav-lnk{display:flex;align-items:center;gap:10px;padding:9px 14px;margin:1px 0;border-radius:10px;color:var(--text-2);text-decoration:none;font-size:13px;font-weight:500;transition:all .12s}.nav-lnk:hover{background:var(--bg-base);color:var(--text)}.nav-lnk.on{background:var(--accent);color:#fff;font-weight:700;box-shadow:0 2px 8px var(--accent-medium)}.topbar-search{display:flex;align-items:center;gap:8px;padding:8px 14px;border-radius:10px;background:var(--bg-base);border:1.5px solid var(--border);font-size:13px;color:var(--text-3);transition:border-color .15s}.topbar-search:focus-within{border-color:var(--accent);color:var(--text)}.topbar-search input{border:none;background:transparent;outline:none;font-size:13px;color:var(--text);font-family:inherit;width:180px}.topbar-search input::placeholder{color:var(--text-3)}