@import "https://fonts.googleapis.com/css2?family=Archivo:wght@500;600;700;800&family=IBM+Plex+Sans:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500;600&display=swap";
:root{--amber-50:#fff8ec;--amber-100:#feeecb;--amber-200:#fddd97;--amber-300:#fccb63;--amber-400:#ffba2e;--amber-500:#f2a30c;--amber-600:#d6850a;--amber-700:#ad660d;--amber-800:#834e12;--amber-900:#5e3a12;--neutral-0:#fff;--neutral-50:#f7f7f5;--neutral-100:#eeeeeb;--neutral-200:#deded9;--neutral-300:#c6c6bf;--neutral-400:#9c9c94;--neutral-500:#74746e;--neutral-600:#58595b;--neutral-700:#43444a;--neutral-800:#2c2e35;--neutral-900:#1b1d23;--neutral-950:#121319;--ink:#14151a;--blue-50:#eaf2ff;--blue-100:#d2e2ff;--blue-400:#4c8df6;--blue-500:#2d7ff9;--blue-600:#1a63d6;--blue-700:#1a4fa3;--green-50:#e7f6ee;--green-100:#c7ebd6;--green-400:#2fb36b;--green-500:#18a957;--green-600:#11854a;--green-700:#0e663b;--orange-50:#fff0e2;--orange-100:#ffdcbe;--orange-400:#fb922b;--orange-500:#f5860f;--orange-600:#d26a06;--orange-700:#a0500a;--red-50:#fdecec;--red-100:#fad2d2;--red-400:#ec5b60;--red-500:#e5484d;--red-600:#c5343a;--red-700:#9a282d;--font-sans:"IBM Plex Sans", system-ui, -apple-system, Segoe UI, sans-serif;--font-display:"Archivo", "Helvetica Neue", Arial, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--r-xs:4px;--r-sm:6px;--r-md:10px;--r-lg:14px;--r-xl:20px;--sidebar-w:248px;--topbar-h:60px}:root,[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:var(--neutral-50);--surface:var(--neutral-0);--surface-2:var(--neutral-100);--surface-3:var(--neutral-100);--border:var(--neutral-200);--border-strong:var(--neutral-300);--text:var(--ink);--text-muted:var(--neutral-600);--text-subtle:var(--neutral-500);--text-faint:var(--neutral-400);--accent:var(--amber-400);--accent-hover:var(--amber-500);--accent-on:var(--ink);--accent-soft:var(--amber-50);--accent-faint:var(--amber-50);--accent-text:var(--amber-700);--success:var(--green-600);--success-soft:var(--green-50);--success-text:var(--green-700);--warning:var(--orange-600);--warning-soft:var(--orange-50);--warning-text:var(--orange-700);--danger:var(--red-600);--danger-soft:var(--red-50);--danger-text:var(--red-700);--info:var(--blue-600);--info-soft:var(--blue-50);--info-text:var(--blue-700);--neutral-soft:var(--neutral-100);--neutral-text:var(--neutral-600);--risk-low:var(--green-600);--risk-medium:var(--amber-600);--risk-high:var(--orange-600);--risk-critical:var(--red-600);--shadow-xs:0 1px 2px #14151a0f;--shadow-sm:0 1px 3px #14151a14, 0 1px 2px #14151a0a;--shadow-md:0 4px 12px #14151a14, 0 2px 4px #14151a0d;--shadow-lg:0 12px 32px #14151a1f, 0 4px 8px #14151a0f;--shadow-focus:0 0 0 3px #ffba2e73}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:var(--neutral-950);--surface:var(--neutral-900);--surface-2:var(--neutral-800);--surface-3:var(--neutral-800);--border:#2c2e35;--border-strong:#3a3c44;--text:#f3f3f0;--text-muted:#ababa4;--text-subtle:#7e7e78;--text-faint:var(--neutral-500);--accent:var(--amber-400);--accent-hover:var(--amber-300);--accent-on:var(--ink);--accent-soft:#ffba2e1f;--accent-faint:#ffba2e12;--accent-text:var(--amber-300);--success:#5fd08c;--success-soft:#18a95726;--success-text:#5fd08c;--warning:#fbb05c;--warning-soft:#f5860f26;--warning-text:#fbb05c;--danger:#f0888b;--danger-soft:#e5484d29;--danger-text:#f0888b;--info:#8fb8fb;--info-soft:#2d7ff926;--info-text:#8fb8fb;--neutral-soft:var(--neutral-800);--neutral-text:#ababa4;--risk-low:#5fd08c;--risk-medium:var(--amber-300);--risk-high:#fbb05c;--risk-critical:#f0888b;--shadow-xs:0 1px 2px #0006;--shadow-sm:0 1px 3px #00000080, 0 1px 2px #0006;--shadow-md:0 4px 14px #00000080, 0 2px 4px #0006;--shadow-lg:0 16px 40px #0009;--shadow-focus:0 0 0 3px #ffba2e80}*,:before,:after{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--font-sans);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;font-size:14px;line-height:1.55}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:none;padding:0}a{color:inherit;text-decoration:none}table{border-collapse:collapse;width:100%}.app{grid-template-columns:var(--sidebar-w) 1fr;min-height:100vh;display:grid}@media (max-width:900px){.app{grid-template-columns:1fr}.sidebar{display:none!important}}.sidebar{background:var(--surface);color:var(--text-muted);border-right:1px solid var(--border);flex-direction:column;height:100vh;display:flex;position:sticky;top:0;overflow-y:auto}.sidebar-brand{border-bottom:1px solid var(--border);height:var(--topbar-h);align-items:center;gap:10px;padding:14px 18px;display:flex}.sidebar-brand .mark{background:var(--accent);width:30px;height:30px;color:var(--ink);font-family:var(--font-display);letter-spacing:-.02em;border-radius:8px;flex:none;place-items:center;font-size:13px;font-weight:800;display:grid}.sidebar-brand .name{font-family:var(--font-display);color:var(--text);letter-spacing:-.01em;font-size:15px;font-weight:700}.sidebar-brand .sub{color:var(--text-faint);text-transform:uppercase;letter-spacing:.14em;margin-top:1px;font-size:9px;font-weight:700}.sidebar-section{text-transform:uppercase;letter-spacing:.1em;color:var(--text-subtle);padding:16px 12px 6px;font-size:10px;font-weight:700}.nav-list{flex-direction:column;gap:2px;padding:0 8px;display:flex}.nav-item{border-radius:var(--r-md);color:var(--text-muted);cursor:pointer;align-items:center;gap:10px;padding:9px 10px;font-size:14px;font-weight:500;transition:background .13s,color .13s;display:flex;position:relative}.nav-item:hover{background:var(--surface-2);color:var(--text)}.nav-item[data-active=true]{background:var(--accent-soft);color:var(--text);font-weight:600}.nav-item[data-active=true]:before{content:"";background:var(--accent);border-radius:0 3px 3px 0;width:3px;position:absolute;top:8px;bottom:8px;left:-8px}.nav-item .icon{width:18px;height:18px;color:var(--text-subtle);flex:0 0 18px}.nav-item[data-active=true] .icon{color:var(--accent)}.nav-item .en{color:var(--text-faint);font-size:11px;font-weight:500;font-family:var(--font-mono);background:var(--surface-2);border:1px solid var(--border);border-radius:999px;margin-left:auto;padding:1px 6px}.nav-item[data-active=true] .en{background:var(--accent);color:var(--accent-on);border-color:var(--accent-hover)}.nav-footer{border-top:1px solid var(--border);align-items:center;gap:10px;margin-top:auto;padding:12px;display:flex}.nav-footer .avatar{background:var(--neutral-300);width:32px;height:32px;color:var(--ink);border-radius:50%;flex:none;place-items:center;font-size:12px;font-weight:700;display:grid}.nav-footer .meta{flex:1;min-width:0}.nav-footer .meta .name{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.nav-footer .meta .role{color:var(--text-subtle);font-size:11px}.main{flex-direction:column;min-width:0;display:flex}.topbar{height:var(--topbar-h);background:var(--surface);border-bottom:1px solid var(--border);z-index:10;align-items:center;gap:16px;padding:0 22px;display:flex;position:sticky;top:0}.crumb{color:var(--text-subtle);align-items:center;gap:8px;font-size:13px;display:flex}.crumb .sep{color:var(--text-faint)}.crumb .current{color:var(--text);font-weight:600}.topbar-spacer{flex:1}.topbar .search{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);width:280px;color:var(--text-subtle);align-items:center;gap:8px;padding:7px 12px;font-size:13px;display:flex}.topbar .kbd{background:var(--surface);border:1px solid var(--border);font-family:var(--font-mono);color:var(--text-faint);border-radius:4px;margin-left:auto;padding:1px 5px;font-size:10.5px}.icon-btn{border-radius:var(--r-md);width:34px;height:34px;color:var(--text-subtle);border:1px solid #0000;place-items:center;transition:all .13s;display:grid}.icon-btn:hover{background:var(--surface-2);border-color:var(--border);color:var(--text)}.content{width:100%;max-width:1440px;margin:0 auto;padding:26px 28px 64px}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:22px;display:flex}.page-title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--text);align-items:baseline;gap:10px;margin:0;font-size:22px;font-weight:700;display:flex}.page-title .en{color:var(--text-faint);letter-spacing:0;font-size:13px;font-weight:400;font-family:var(--font-sans)}.page-sub{color:var(--text-subtle);margin:4px 0 0;font-size:13.5px}.page-actions{align-items:center;gap:8px;display:flex}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm)}.card-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;padding:14px 18px;display:flex}.card-header h3{letter-spacing:-.01em;font-size:14px;font-weight:600;font-family:var(--font-display);margin:0}.card-header .en{color:var(--text-faint);margin-left:6px;font-size:11.5px;font-weight:400}.card-body{padding:18px}.card-body.flush{padding:0}.btn{border-radius:var(--r-md);height:36px;font-size:14px;font-weight:600;font-family:var(--font-sans);background:var(--surface);border:1px solid var(--border-strong);color:var(--text);white-space:nowrap;cursor:pointer;align-items:center;gap:7px;padding:0 16px;transition:all .13s;display:inline-flex}.btn:hover{background:var(--surface-2)}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--accent);border-color:var(--accent-hover);color:var(--accent-on);box-shadow:var(--shadow-xs)}.btn-primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.btn-ghost{color:var(--text-muted);background:0 0;border-color:#0000}.btn-ghost:hover{background:var(--surface-2);color:var(--text)}.btn-danger{background:var(--danger);border-color:var(--danger);color:#fff}.btn-danger:hover{filter:brightness(1.08)}.btn-sm{border-radius:var(--r-sm);height:30px;padding:0 12px;font-size:13px}.btn-xs{border-radius:var(--r-sm);height:26px;padding:0 9px;font-size:12px}.btn[disabled]{opacity:.45;cursor:not-allowed}.field{flex-direction:column;gap:6px;display:flex}.field label{color:var(--text-muted);font-size:12px;font-weight:600}.field label .en{color:var(--text-faint);margin-left:4px;font-size:11px;font-weight:400}.input,.select,.textarea{border-radius:var(--r-md);border:1px solid var(--border-strong);background:var(--surface);width:100%;height:36px;color:var(--text);font-size:14px;font-family:var(--font-sans);padding:0 12px;transition:border-color .13s,box-shadow .13s}.input:focus,.select:focus,.textarea:focus{border-color:var(--accent);box-shadow:var(--shadow-focus);outline:none}.input::placeholder{color:var(--text-subtle)}.textarea{resize:vertical;height:auto;min-height:80px;padding:10px 12px;line-height:1.55}.select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L5 5L9 1' stroke='%2374746E' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;padding-right:28px}.input-with-icon{position:relative}.input-with-icon .input{padding-left:34px}.input-with-icon .lead-icon{color:var(--text-faint);width:15px;height:15px;position:absolute;top:50%;left:11px;transform:translateY(-50%)}.help{color:var(--text-faint);margin-top:4px;font-size:11.5px}.badge{background:var(--neutral-soft);color:var(--neutral-text);border:1px solid var(--border);white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:3px 9px;font-size:12px;font-weight:600;line-height:1.5;display:inline-flex}.badge .dot{background:currentColor;border-radius:50%;flex:none;width:6px;height:6px}.badge-success{background:var(--success-soft);color:var(--success-text);border-color:#0000}.badge-warning{background:var(--warning-soft);color:var(--warning-text);border-color:#0000}.badge-danger{background:var(--danger-soft);color:var(--danger-text);border-color:#0000}.badge-info{background:var(--info-soft);color:var(--info-text);border-color:#0000}.badge-accent{background:var(--accent-soft);color:var(--accent-text);border-color:#0000}.badge-outline{border-color:var(--border-strong);color:var(--text-muted);background:0 0}.table-wrap{overflow-x:auto}.tbl{font-size:13.5px}.tbl th,.tbl td{text-align:left;border-bottom:1px solid var(--border);vertical-align:middle;padding:11px 16px}.tbl th{color:var(--text-subtle);text-transform:uppercase;letter-spacing:.07em;background:var(--surface-2);font-size:10.5px;font-weight:700;position:sticky;top:0}.tbl tbody tr{transition:background .1s}.tbl tbody tr:hover td{background:var(--accent-soft)}.tbl tbody tr[data-clickable=true]{cursor:pointer}.tbl tbody tr:last-child td{border-bottom:none}.tbl td .mono{font-family:var(--font-mono);color:var(--text-muted);white-space:nowrap;font-variant-numeric:tabular-nums;font-size:12.5px}.tbl td .strong{color:var(--text);font-weight:600}.tbl .num{text-align:right;font-variant-numeric:tabular-nums;font-family:var(--font-mono);font-size:12.5px}.tbl .col-actions{text-align:right;white-space:nowrap;width:1%}.table-toolbar{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:10px;padding:12px 16px;display:flex}.table-toolbar .input,.table-toolbar .select{height:32px;font-size:13px}.table-toolbar .search{width:260px}.pagination{border-top:1px solid var(--border);color:var(--text-subtle);justify-content:space-between;align-items:center;padding:12px 16px;font-size:12px;display:flex}.pagination-pages{gap:4px;display:flex}.pg-btn{border-radius:var(--r-sm);width:28px;height:28px;color:var(--text-muted);border:1px solid var(--border);background:var(--surface);cursor:pointer;place-items:center;font-size:12px;transition:all .13s;display:grid}.pg-btn[data-active=true]{background:var(--accent);color:var(--accent-on);border-color:var(--accent-hover);font-weight:700}.pg-btn:hover:not([data-active=true]){background:var(--surface-2)}.pg-btn[disabled]{opacity:.4;cursor:not-allowed}.status{white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;gap:6px;padding:3px 9px 3px 8px;font-size:12px;font-weight:600;display:inline-flex}.status .dot{background:currentColor;border-radius:50%;flex:none;width:6px;height:6px}.status-pending{background:var(--neutral-soft);color:var(--neutral-text)}.status-processing{background:var(--info-soft);color:var(--info-text)}.status-processing .dot{animation:1.4s ease-in-out infinite pulse-dot}.status-validated{background:var(--success-soft);color:var(--success-text)}.status-warning{background:var(--warning-soft);color:var(--warning-text)}.status-error{background:var(--danger-soft);color:var(--danger-text)}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.7)}}.stepper{background:var(--surface-2);border-radius:var(--r-md);border:1px solid var(--border);grid-template-columns:repeat(3,1fr);gap:0;display:grid;overflow:hidden}.step{background:var(--surface);align-items:center;gap:12px;padding:16px 20px;display:flex;position:relative}.step+.step:before{content:"";background:var(--border);width:1px;position:absolute;top:0;bottom:0;left:0}.step .step-num{background:var(--surface-2);width:28px;height:28px;color:var(--text-faint);border:1.5px solid var(--border-strong);font-size:12px;font-weight:700;font-family:var(--font-display);border-radius:50%;flex:0 0 28px;place-items:center;display:grid}.step .step-label{color:var(--text-muted);font-size:12.5px;font-weight:600}.step .step-en{color:var(--text-faint);font-size:11px}.step[data-state=done]{background:var(--success-soft)}.step[data-state=done] .step-num{background:var(--success);color:#fff;border-color:var(--success)}.step[data-state=done] .step-label{color:var(--success-text)}.step[data-state=active]{background:var(--accent-faint)}.step[data-state=active] .step-num{background:var(--accent);color:var(--accent-on);border-color:var(--accent-hover);animation:1.6s ease-out infinite ring-pulse}.step[data-state=active] .step-label{color:var(--accent-text)}.step[data-state=error]{background:var(--danger-soft)}.step[data-state=error] .step-num{background:var(--danger);color:#fff;border-color:var(--danger)}.step[data-state=error] .step-label{color:var(--danger-text)}@keyframes ring-pulse{0%{box-shadow:0 0 #ffba2e80}to{box-shadow:0 0 0 10px #ffba2e00}}.stat-grid{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.stat{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);padding:14px 16px}.stat .label{color:var(--text-subtle);text-transform:uppercase;letter-spacing:.07em;font-size:11px;font-weight:700}.stat .en{color:var(--text-faint);text-transform:none;margin-left:4px;font-weight:400}.stat .value{font-family:var(--font-display);letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--text);margin-top:8px;font-size:28px;font-weight:800;line-height:1}.stat .delta{color:var(--text-faint);font-size:11.5px;font-family:var(--font-mono);margin-top:6px}.stat .delta.pos{color:var(--success)}.stat .delta.neg{color:var(--danger)}@media (max-width:1100px){.stat-grid{grid-template-columns:repeat(2,1fr)}}.section-grid-2{grid-template-columns:1.6fr 1fr;gap:18px;display:grid}@media (max-width:1100px){.section-grid-2{grid-template-columns:1fr}}.empty{text-align:center;color:var(--text-subtle);padding:56px 24px}.empty .empty-art{border-radius:var(--r-lg);background:var(--surface-2);border:1px dashed var(--border-strong);width:56px;height:56px;color:var(--text-faint);place-items:center;margin:0 auto 16px;display:grid}.empty .empty-title{color:var(--text);font-size:15px;font-weight:700;font-family:var(--font-display);margin-bottom:4px}.empty .empty-msg{max-width:360px;margin:0 auto 18px;font-size:13px;line-height:1.6}.modal-backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:100;background:#14151a8c;place-items:center;padding:32px;animation:.16s ease-out fade-in;display:grid;position:fixed;inset:0}.modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xl);box-shadow:var(--shadow-lg);width:100%;max-width:480px;max-height:calc(100vh - 64px);animation:.2s cubic-bezier(.2,.8,.2,1) slide-up;overflow:auto}.modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:18px 22px;display:flex}.modal-header h3{font-size:15px;font-weight:700;font-family:var(--font-display);margin:0}.modal-body{padding:22px}.modal-footer{border-top:1px solid var(--border);background:var(--surface-2);justify-content:flex-end;gap:8px;padding:14px 22px;display:flex}.modal.lg{max-width:720px}.modal.sm{max-width:380px}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-up{0%{opacity:0;transform:translateY(8px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.form-grid{grid-template-columns:repeat(2,1fr);gap:14px 16px;display:grid}.form-grid .full{grid-column:1/-1}@media (max-width:700px){.form-grid{grid-template-columns:1fr}}.gauge-wrap{align-items:center;gap:24px;display:flex}.gauge{display:inline-block;position:relative}.gauge svg{display:block}.divider{background:var(--border);height:1px;margin:16px 0}.kvs{grid-template-columns:max-content 1fr;gap:8px 18px;font-size:13px;display:grid}.kvs dt{color:var(--text-subtle);font-weight:600}.kvs dd{color:var(--text);margin:0}.kvs dd.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:12.5px}.toast-wrap{z-index:200;flex-direction:column;gap:8px;display:flex;position:fixed;bottom:24px;right:24px}.toast{background:var(--neutral-900);color:#f3f3f0;border-radius:var(--r-md);box-shadow:var(--shadow-lg);border:1px solid var(--neutral-800);align-items:center;gap:10px;max-width:360px;padding:10px 14px;font-size:13px;animation:.2s ease-out slide-in;display:flex}.toast .icon{color:var(--success)}.toast.error .icon{color:var(--danger)}@keyframes slide-in{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.tabs{border-bottom:1px solid var(--border);gap:2px;padding:0 16px;display:flex}.tab{color:var(--text-subtle);cursor:pointer;border-bottom:2px solid #0000;align-items:center;gap:7px;margin-bottom:-1px;padding:10px 12px;font-size:13px;font-weight:500;transition:color .13s;display:inline-flex}.tab:hover{color:var(--text)}.tab[data-active=true]{color:var(--text);border-bottom-color:var(--accent);font-weight:600}.tab .count{background:var(--surface-2);border:1px solid var(--border);font-size:11px;font-family:var(--font-mono);border-radius:999px;padding:0 6px}.login-page{background:var(--bg);grid-template-columns:1fr 1fr;min-height:100vh;display:grid}.login-side{background:linear-gradient(165deg, var(--ink) 0%, var(--neutral-900) 55%, var(--neutral-800) 100%);color:#c6c6bf;flex-direction:column;padding:36px 40px;display:flex;position:relative;overflow:hidden}.login-side:after{content:"";pointer-events:none;background-image:radial-gradient(circle at 15% 10%,#ffba2e24,#0000 50%),radial-gradient(circle at 85% 80%,#ffba2e12,#0000 50%);position:absolute;inset:0}.login-form-side{background:var(--bg);place-items:center;padding:40px;display:grid}.login-form{width:100%;max-width:380px}@media (max-width:900px){.login-page{grid-template-columns:1fr}.login-side{display:none}}.dropzone{border:2px dashed var(--border-strong);border-radius:var(--r-lg);text-align:center;background:var(--surface-2);cursor:pointer;padding:32px;transition:all .15s}.dropzone:hover,.dropzone[data-active=true]{border-color:var(--accent);background:var(--accent-faint)}.dropzone .icon{color:var(--text-faint);margin:0 auto 10px}.dropzone[data-active=true] .icon{color:var(--accent)}.hstack{align-items:center;gap:var(--g,8px);display:flex}.vstack{gap:var(--g,8px);flex-direction:column;display:flex}.muted{color:var(--text-subtle)}.faint{color:var(--text-faint)}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.right{text-align:right}.text-xs{font-size:11.5px}.text-sm{font-size:12.5px}.text-lg{font-size:15px}.fw-500{font-weight:500}.fw-600{font-weight:600}.nowrap{white-space:nowrap}.sidebar::-webkit-scrollbar{width:8px;height:8px}.table-wrap::-webkit-scrollbar{width:8px;height:8px}.sidebar::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:8px}.table-wrap::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:8px}.spinner{border:2.5px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:28px;height:28px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}
