:root{--bg: #f5f6fb;--surface: #ffffff;--surface-2: #f0f1fa;--surface-3: #e9ebf5;--ink: #14162e;--ink-2: #3b3f5c;--muted: #6b7191;--rule: #e6e8f2;--rule-soft: #f0f1f7;--accent: #4f46e5;--accent-hover: #4338ca;--accent-soft: #eeeeff;--accent-ink: #ffffff;--ok: #0b7f6e;--ok-soft: #d9f6ef;--warn: #a45510;--warn-soft: #ffeeda;--danger: #c02636;--danger-soft: #ffe4e6;--info: #4338ca;--info-soft: #eeeeff;--shadow-1: 0 1px 2px rgb(18 20 43 / 6%);--shadow-2: 0 2px 6px rgb(18 20 43 / 7%), 0 10px 26px -12px rgb(18 20 43 / 10%);--focus: 0 0 0 3px var(--accent-soft), 0 0 0 4px var(--accent);--sans: "Inter", "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, Roboto, Arial, sans-serif;--display: "Plus Jakarta Sans", "Inter", "Segoe UI", system-ui, sans-serif;--mono: ui-monospace, "Cascadia Mono", "Segoe UI Mono", Consolas, "Liberation Mono", monospace;--radius: 12px;--radius-sm: 9px;--chrome: #12142b;--chrome-2: #1b1f3b;--chrome-line: #2c3358;--chrome-ink: #b9c0dd;--chrome-strong: #ffffff;--chrome-dim: #7d86ad}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg: #0e1022;--surface: #171a33;--surface-2: #1f2340;--surface-3: #2a2f52;--ink: #e7e9f5;--ink-2: #b9c0dd;--muted: #7d86ad;--rule: #2c3358;--rule-soft: #232849;--accent: #8b85f0;--accent-hover: #a5a0f5;--accent-soft: #232152;--accent-ink: #0e1022;--ok: #34d3b5;--ok-soft: #10322e;--warn: #e0a44f;--warn-soft: #33260f;--danger: #ff8a95;--danger-soft: #391a22;--info: #a5a0f5;--info-soft: #232152;--shadow-1: 0 1px 2px rgb(0 0 0 / 40%);--shadow-2: 0 2px 6px rgb(0 0 0 / 45%), 0 10px 26px -12px rgb(0 0 0 / 60%)}}:root[data-theme=dark]{--bg: #0e1022;--surface: #171a33;--surface-2: #1f2340;--surface-3: #2a2f52;--ink: #e7e9f5;--ink-2: #b9c0dd;--muted: #7d86ad;--rule: #2c3358;--rule-soft: #232849;--accent: #8b85f0;--accent-hover: #a5a0f5;--accent-soft: #232152;--accent-ink: #0e1022;--ok: #34d3b5;--ok-soft: #10322e;--warn: #e0a44f;--warn-soft: #33260f;--danger: #ff8a95;--danger-soft: #391a22;--info: #a5a0f5;--info-soft: #232152;--shadow-1: 0 1px 2px rgb(0 0 0 / 40%);--shadow-2: 0 2px 6px rgb(0 0 0 / 45%), 0 10px 26px -12px rgb(0 0 0 / 60%)}*{box-sizing:border-box}html,body{height:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:14.5px;line-height:1.5;-webkit-font-smoothing:antialiased}h1,h2,h3,h4{margin:0;font-family:var(--display);font-weight:700;letter-spacing:-.015em;text-wrap:balance}h1{font-size:22px}h2{font-size:17px}h3{font-size:14px}::selection{background:var(--accent-soft);color:var(--accent-hover)}a{color:var(--accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius-sm)}.field{display:flex;flex-direction:column;gap:5px}.label{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.input,.select,.textarea{font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-sm);padding:7px 10px;width:100%;transition:border-color .12s,box-shadow .12s}.input:focus,.select:focus,.textarea:focus{outline:none;border-color:var(--accent);box-shadow:var(--focus)}.input[aria-invalid=true]{border-color:var(--danger)}.hint{font-size:12px;color:var(--muted)}.error-text{font-size:12px;color:var(--danger)}.btn{font:inherit;font-weight:600;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:7px 14px;border-radius:var(--radius-sm);border:1px solid transparent;background:var(--surface);color:var(--ink);cursor:pointer;white-space:nowrap;transition:background .12s,border-color .12s}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent);color:var(--accent-ink)}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn:active:not(:disabled){transform:translateY(1px)}.btn-ghost{border-color:var(--rule)}.btn-ghost:hover:not(:disabled){background:var(--surface-2)}.btn-danger{background:var(--danger);color:#fff}.btn-sm{padding:4px 9px;font-size:12.5px}.card{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius);box-shadow:var(--shadow-1)}.card-pad{padding:16px 18px}.card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 18px;border-bottom:1px solid var(--rule-soft)}@media(max-width:560px){.card-head{flex-wrap:wrap;row-gap:4px}}.table-scroll{overflow-x:auto}table.data{width:100%;border-collapse:collapse;font-size:13.5px}table.data th{text-align:left;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:9px 14px;background:var(--surface-2);border-bottom:1px solid var(--rule);white-space:nowrap;position:sticky;top:0;z-index:1}table.data td{padding:10px 14px;border-bottom:1px solid var(--rule-soft);vertical-align:middle}table.data tbody tr:last-child td{border-bottom:0}table.data tbody tr:hover{background:var(--surface-2)}table.data .num{font-variant-numeric:tabular-nums;text-align:right}.pill{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;font-weight:500;padding:2px 8px;border-radius:100px;white-space:nowrap}.pill:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;flex:none}.pill-ok{background:var(--ok-soft);color:var(--ok)}.pill-warn{background:var(--warn-soft);color:var(--warn)}.pill-danger{background:var(--danger-soft);color:var(--danger)}.pill-info{background:var(--info-soft);color:var(--info)}.pill-muted{background:var(--surface-3);color:var(--muted)}.mono{font-family:var(--mono);font-size:12.5px}.empty{padding:44px 24px;text-align:center;color:var(--muted)}.empty h3{color:var(--ink);margin-bottom:6px}.skeleton{background:linear-gradient(90deg,var(--surface-2) 25%,var(--surface-3) 50%,var(--surface-2) 75%);background-size:200% 100%;animation:shimmer 1.4s infinite;border-radius:var(--radius-sm)}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
