:root{--lightningcss-light:initial;--lightningcss-dark: ;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--brand-50:#eff6ff;--brand-100:#dbeafe;--brand-200:#bfdbfe;--brand-300:#93c5fd;--brand-400:#4d9bff;--brand-500:#006eff;--brand-600:#0057cc;--brand-700:#0047a8;--brand-900:#0a2540;--c-bg:#fff;--c-bg-subtle:#f5f8fc;--c-bg-sunken:#edf2f9;--c-surface:#fff;--c-surface-2:#fafcfe;--c-border:#e2e9f2;--c-border-strong:#c7d5e6;--c-ink:#0b1b33;--c-ink-2:#48607d;--c-ink-3:#7189a3;--c-ink-invert:#fff;--c-ok:#12a150;--c-ok-bg:#e8f7ee;--c-warn:#b96a00;--c-warn-bg:#fdf3e4;--c-err:#d92d20;--c-err-bg:#fdecea;--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Source Han Sans SC", "Noto Sans CJK SC", sans-serif;--font-mono:ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;--r-control:8px;--r-card:14px;--r-pill:999px;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-8:32px;--sp-10:40px;--sp-12:48px;--sp-16:64px;--shadow-1:0 1px 2px #0b1b330f, 0 1px 3px #0b1b330d;--shadow-2:0 4px 14px #0b1b3312, 0 1px 3px #0b1b330d;--shadow-3:0 16px 40px #0b1b331f;--shadow-brand:0 2px 10px #006eff42;--ring:0 0 0 3px #006eff2e;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-spring:cubic-bezier(.16, 1, .3, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--dur-1:.12s;--dur-2:.18s;--dur-3:.26s;--dur-4:.42s;--container:1200px;--header-h:64px;--z-header:50;--z-notice:95;--z-overlay:100;--z-toast:200;--ease-back:cubic-bezier(.34, 1.56, .64, 1);--ease-glide:cubic-bezier(.16, 1, .3, 1);--ease-snap:cubic-bezier(.22, 1, .36, 1);--dur-5:.62s;--dur-6:.9s;--dur-7:1.4s}@keyframes enter-rise{0%{opacity:0;filter:blur(6px);transform:translateY(14px)scale(.985)}to{opacity:1;filter:blur();transform:none}}@keyframes enter-fade{0%{opacity:0}to{opacity:1}}@keyframes enter-slide-left{0%{opacity:0;transform:translate(-14px)}to{opacity:1;transform:none}}@keyframes enter-pop{0%{opacity:0;transform:scale(.94)}60%{opacity:1;transform:scale(1.015)}to{opacity:1;transform:scale(1)}}@keyframes count-glow{0%{text-shadow:0 0 #006eff00}35%{text-shadow:0 0 18px #006eff59}to{text-shadow:0 0 #006eff00}}@keyframes sheen-sweep{0%{transform:translate(-120%)skew(-18deg)}to{transform:translate(220%)skew(-18deg)}}@keyframes pulse-ring{0%{opacity:.55;transform:scale(.85)}70%{opacity:0;transform:scale(1.9)}to{opacity:0;transform:scale(1.9)}}@keyframes drift{0%,to{transform:translate(0,0)scale(1)}50%{transform:translate(18px,-22px)scale(1.06)}}@keyframes drift-slow{0%,to{transform:translate(0,0)scale(1.04)}50%{transform:translate(-24px,16px)scale(1)}}@keyframes shimmer-sweep{to{transform:translate(100%)}}@keyframes bar-grow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes bar-rise{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes line-draw{0%{stroke-dashoffset:var(--line-length,1200)}to{stroke-dashoffset:0}}@keyframes dot-pop{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}@keyframes ring-spin{to{transform:rotate(360deg)}}@keyframes toast-in{0%{opacity:0;transform:translateY(-8px)scale(.96)}to{opacity:1;transform:none}}.anim-rise{animation:enter-rise var(--dur-5) var(--ease-glide) both;animation-delay:var(--anim-delay,0s)}.anim-fade{animation:enter-fade var(--dur-4) var(--ease-snap) both;animation-delay:var(--anim-delay,0s)}.anim-pop{animation:enter-pop var(--dur-5) var(--ease-back) both;animation-delay:var(--anim-delay,0s)}.anim-slide-left{animation:enter-slide-left var(--dur-4) var(--ease-glide) both;animation-delay:var(--anim-delay,0s)}.stagger>*{animation:enter-rise var(--dur-5) var(--ease-glide) both}.stagger>:first-child{animation-delay:20ms}.stagger>:nth-child(2){animation-delay:70ms}.stagger>:nth-child(3){animation-delay:.12s}.stagger>:nth-child(4){animation-delay:.17s}.stagger>:nth-child(5){animation-delay:.22s}.stagger>:nth-child(6){animation-delay:.27s}.stagger>:nth-child(7){animation-delay:.32s}.stagger>:nth-child(8){animation-delay:.37s}.stagger>:nth-child(9){animation-delay:.42s}.stagger>:nth-child(n+10){animation-delay:.47s}.reveal{opacity:0;transition:opacity var(--dur-4) var(--ease-snap), transform var(--dur-5) var(--ease-glide);transition-delay:var(--reveal-delay,0s);transform:translateY(22px)}.reveal.is-revealed{opacity:1;transform:none}.spotlight{isolation:isolate;position:relative}.spotlight:before{border-radius:inherit;background:radial-gradient(240px circle at var(--mx,50%) var(--my,0%), #006eff21, transparent 68%);opacity:0;transition:opacity var(--dur-3) var(--ease-snap);content:"";pointer-events:none;z-index:-1;position:absolute;inset:-1px}.spotlight:hover:before{opacity:1}.sheen{position:relative;overflow:hidden}.sheen:after{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#ffffff6b,#0000);width:40%;position:absolute;top:0;bottom:0;transform:translate(-120%)skew(-18deg)}.sheen:hover:after{animation:sheen-sweep .9s var(--ease-snap)}.stat-value.is-counting{animation:count-glow var(--dur-6) var(--ease-snap)}.skeleton{background:var(--c-bg-sunken);border-radius:6px;position:relative;overflow:hidden}.skeleton:after{content:"";animation:shimmer-sweep 1.5s var(--ease-snap) infinite;background:linear-gradient(90deg,#0000,#ffffffb3,#0000);position:absolute;inset:0;transform:translate(-100%)}.grain{position:relative}.grain:after{content:"";pointer-events:none;z-index:0;background-image:radial-gradient(#0b1b330e 1px,#0000 1px),radial-gradient(#0b1b330a 1px,#0000 1px);background-position:0 0,7px 7px;background-size:14px 14px,14px 14px;position:absolute;inset:0}.grain>*{z-index:1;position:relative}.page-enter-active{transition:opacity var(--dur-3) var(--ease-snap), transform var(--dur-4) var(--ease-glide)}.page-leave-active{transition:opacity .1s}.page-enter-from{opacity:0;transform:translateY(10px)}.page-leave-to{opacity:0}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;transition-delay:0s!important;animation-duration:.001ms!important;animation-iteration-count:1!important;animation-delay:0s!important}.reveal{opacity:1;transform:none}}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}html,body,#app{min-height:100%}body{background:var(--c-bg-subtle);color:var(--c-ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:14px;line-height:1.6}h1,h2,h3,h4,p{margin:0}a{color:inherit;text-decoration:none}button,input,select{font:inherit;color:inherit}:focus-visible{box-shadow:var(--ring);outline:none}.card{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-card);box-shadow:var(--shadow-1);transition:box-shadow var(--dur-4) var(--ease-glide), border-color var(--dur-3) var(--ease-snap);position:relative}.card:hover{border-color:var(--brand-200);box-shadow:var(--shadow-2)}.card-head{justify-content:space-between;align-items:center;gap:var(--sp-4);padding:var(--sp-5) var(--sp-6);border-bottom:1px solid var(--c-border);display:flex}.card-title{letter-spacing:-.011em;text-wrap:balance;font-size:15px;font-weight:600}.card-sub{color:var(--c-ink-3);font-size:12.5px}.card-body{padding:var(--sp-6)}.stat-grid{gap:var(--sp-4);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));display:grid}.stat{padding:var(--sp-5);background:linear-gradient(168deg, var(--c-surface) 0%, var(--c-surface-2) 100%);border:1px solid var(--c-border);border-radius:var(--r-card);box-shadow:var(--shadow-1);transition:box-shadow var(--dur-4) var(--ease-glide), border-color var(--dur-3) var(--ease-snap);position:relative;overflow:hidden}.stat:before{background:linear-gradient(90deg, transparent, var(--brand-400), transparent);opacity:0;height:2px;transition:opacity var(--dur-3) var(--ease-snap);content:"";position:absolute;top:0;left:0;right:0}.stat:hover{border-color:var(--brand-200);box-shadow:var(--shadow-2)}.stat:hover:before{opacity:1}.stat-label{color:var(--c-ink-3);letter-spacing:.01em;font-size:12.5px}.stat-value{margin-top:var(--sp-2);letter-spacing:-.024em;font-variant-numeric:tabular-nums;font-size:27px;font-weight:650;line-height:1.15}.stat-unit{color:var(--c-ink-3);margin-left:4px;font-size:13px;font-weight:500}.stat-hint{margin-top:var(--sp-1);color:var(--c-ink-3);font-size:12px}.grid-2{gap:var(--sp-4);grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));display:grid}.stack{gap:var(--sp-4);flex-direction:column;display:flex}.stack>*,.grid-2>*,.stat-grid>*{min-width:0}.pill{border-radius:var(--r-pill);background:var(--c-bg-sunken);color:var(--c-ink-2);align-items:center;padding:2px 9px;font-size:12px;font-weight:500;display:inline-flex}.pill-ok{background:var(--c-ok-bg);color:var(--c-ok)}.pill-err{background:var(--c-err-bg);color:var(--c-err)}.pill-warn{background:var(--c-warn-bg);color:var(--c-warn)}.pill-brand{background:var(--brand-50);color:var(--brand-600)}.btn{justify-content:center;align-items:center;gap:var(--sp-2);height:38px;padding:0 var(--sp-4);border:1px solid var(--c-border-strong);border-radius:var(--r-control);background:var(--c-surface);color:var(--c-ink);cursor:pointer;transition:background var(--dur-2) var(--ease-snap), border-color var(--dur-2) var(--ease-snap), box-shadow var(--dur-3) var(--ease-glide), transform var(--dur-2) var(--ease-back);font-size:13.5px;font-weight:500;display:inline-flex;position:relative;overflow:hidden}.btn:hover:not(:disabled){background:var(--c-bg-subtle);border-color:var(--brand-300);box-shadow:var(--shadow-1)}.btn:active:not(:disabled){box-shadow:none;transform:scale(.975)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:linear-gradient(135deg, var(--brand-400), var(--brand-500) 55%, var(--brand-600));border-color:var(--brand-500);color:var(--c-ink-invert);box-shadow:var(--shadow-brand)}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg, var(--brand-500), var(--brand-600));border-color:var(--brand-600);box-shadow:0 6px 18px #006eff52}.field{gap:var(--sp-2);flex-direction:column;display:flex}.field-label{color:var(--c-ink-2);font-size:13px;font-weight:500}.input{height:40px;padding:0 var(--sp-3);border:1px solid var(--c-border-strong);border-radius:var(--r-control);background:var(--c-surface);transition:border-color var(--dur-2) var(--ease-snap), box-shadow var(--dur-3) var(--ease-glide), background var(--dur-2) var(--ease-snap)}.input:hover:not(:focus){border-color:var(--c-ink-3)}.input:focus{border-color:var(--brand-400);box-shadow:var(--ring);outline:none}.segmented{background:var(--c-bg-sunken);border-radius:var(--r-control);gap:2px;padding:3px;display:inline-flex}.segmented button{height:30px;padding:0 var(--sp-3);color:var(--c-ink-2);white-space:nowrap;cursor:pointer;transition:background var(--dur-3) var(--ease-glide), color var(--dur-2) var(--ease-snap), box-shadow var(--dur-3) var(--ease-glide), transform var(--dur-2) var(--ease-back);background:0 0;border:0;border-radius:6px;font-size:13px}.segmented button:hover{color:var(--c-ink)}.segmented button:active{transform:scale(.96)}.segmented button.is-active{background:var(--c-surface);color:var(--brand-600);box-shadow:var(--shadow-1);font-weight:600}.table-wrap{overflow-x:auto}table.data{border-collapse:collapse;width:100%;font-size:13px}table.data th{padding:var(--sp-3) var(--sp-4);text-align:left;color:var(--c-ink-3);letter-spacing:.012em;white-space:nowrap;border-bottom:1px solid var(--c-border);font-size:12.5px;font-weight:600}table.data td{padding:var(--sp-3) var(--sp-4);border-bottom:1px solid var(--c-border);vertical-align:middle;transition:background var(--dur-2) var(--ease-snap)}table.data tbody tr{animation:enter-fade var(--dur-4) var(--ease-snap) both}table.data tbody tr:first-child{animation-delay:10ms}table.data tbody tr:nth-child(2){animation-delay:30ms}table.data tbody tr:nth-child(3){animation-delay:50ms}table.data tbody tr:nth-child(4){animation-delay:70ms}table.data tbody tr:nth-child(5){animation-delay:90ms}table.data tbody tr:nth-child(n+6){animation-delay:.11s}table.data tbody tr:last-child td{border-bottom:0}table.data tbody tr:hover td{background:var(--brand-50)}.mono{font-family:var(--font-mono);font-size:12px}.num{font-variant-numeric:tabular-nums}.truncate{text-overflow:ellipsis;white-space:nowrap;max-width:340px;display:block;overflow:hidden}.empty{align-items:center;gap:var(--sp-2);padding:var(--sp-12) var(--sp-4);text-align:center;color:var(--c-ink-3);flex-direction:column;font-size:13px;display:flex}.empty-mark{width:46px;height:46px;margin-bottom:var(--sp-1);background:linear-gradient(140deg, var(--brand-50), var(--brand-100));color:var(--brand-500);border-radius:14px;justify-content:center;align-items:center;display:flex}.empty-title{color:var(--c-ink-2);font-size:13.5px;font-weight:600}.empty-hint{max-width:300px;color:var(--c-ink-3);text-wrap:pretty;font-size:12.5px;line-height:1.65}.alert{padding:var(--sp-3) var(--sp-4);border-radius:var(--r-control);border:1px solid var(--c-err);background:var(--c-err-bg);color:var(--c-err);animation:enter-rise var(--dur-4) var(--ease-back) both;font-size:13px}.skeleton-row{gap:var(--sp-4);padding:var(--sp-6);flex-direction:column;display:flex}.skeleton-line{height:13px}.skeleton-grid{gap:var(--sp-4);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));display:grid}.skeleton-card{border-radius:var(--r-card);height:104px}.spinner-row{justify-content:center;align-items:center;gap:var(--sp-3);padding:var(--sp-12) 0;color:var(--c-ink-3);font-size:13px;display:flex}.spinner{border:2px solid var(--c-border-strong);border-top-color:var(--brand-500);border-radius:50%;width:16px;height:16px;animation:.7s linear infinite ring-spin}.skip-link{top:-60px;left:var(--sp-4);z-index:var(--z-toast);padding:var(--sp-2) var(--sp-4);border-radius:var(--r-control);background:var(--brand-500);color:var(--c-ink-invert);transition:top var(--dur-3) var(--ease-glide);font-size:13px;position:fixed}.skip-link:focus{top:var(--sp-4)}@media (max-width:640px){.card-head,.card-body{padding:var(--sp-4)}}
