@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.06d3mdzz5bre_.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.11.cyxs5p-0z~.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.16t1db8_9y2o~.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_a71539c9-module__T19VSG__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_a71539c9-module__T19VSG__variable{--font-geist-sans:"Geist", "Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.0q3udbd2bu5yp.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.0gw~uztddq1df.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.0.q-h669a_dqa.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_8d43a2aa-module__8Li5zG__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_8d43a2aa-module__8Li5zG__variable{--font-geist-mono:"Geist Mono", "Geist Mono Fallback"}
:root{--background:#fafafa;--surface:#fff;--surface-subtle:#f5f5f5;--foreground:#171717;--muted:#737373;--border:#e5e5e5;--border-subtle:#f0f0f0;--bg-primary:var(--surface);--bg-secondary:var(--surface-subtle);--text-primary:var(--foreground);--text-secondary:var(--muted);--text-muted:var(--muted);--primary:#8b5cf6;--primary-hover:#7c3aed;--primary-soft:#f5f3ff;--primary-gradient:linear-gradient(135deg, #8b5cf6 0%, #6366f1 100%);--success:#10b981;--success-soft:#ecfdf5;--warning:#f59e0b;--warning-soft:#fef3c7;--danger:#ef4444;--danger-soft:#fee2e2;--info:#3b82f6;--info-soft:#dbeafe;--shadow-xs:0 1px 2px #0000000a;--shadow-sm:0 1px 3px #0000000f, 0 1px 2px #0000000a;--shadow-md:0 4px 12px #00000014, 0 1px 3px #0000000f;--shadow-lg:0 8px 24px #0000001a, 0 2px 6px #0000000f;--sidebar-bg:#18181b;--sidebar-fg:#fafafa;--sidebar-muted:#a1a1aa;--sidebar-hover-bg:#ffffff12;--sidebar-border:#ffffff14;--sidebar-active:#8b5cf6;--radius-sm:6px;--radius:8px;--radius-md:10px;--radius-lg:14px;--radius-xl:20px;--spacing-xs:4px;--spacing-sm:8px;--spacing:12px;--spacing-md:16px;--spacing-lg:20px;--spacing-xl:28px;--spacing-2xl:40px;--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", "Noto Sans", Helvetica, Arial, sans-serif;--font-mono:"SF Mono", Monaco, "Cascadia Code", "Roboto Mono", Consolas, "Courier New", monospace;--text-xs:11px;--text-sm:12px;--text-base:14px;--text-md:15px;--text-lg:17px;--text-xl:22px;--text-2xl:28px}html.dark{--background:#0a0a0a;--surface:#141414;--surface-subtle:#1c1c1c;--foreground:#ededed;--muted:#888;--border:#262626;--border-subtle:#1e1e1e;--primary:#a78bfa;--primary-hover:#8b5cf6;--primary-soft:#8b5cf61f;--success:#34d399;--success-soft:#34d3991f;--warning:#fbbf24;--warning-soft:#fbbf241f;--danger:#f87171;--danger-soft:#f871711f;--info:#60a5fa;--info-soft:#60a5fa1f;--shadow-xs:0 1px 2px #0003;--shadow-sm:0 1px 3px #0000004d, 0 1px 2px #0003;--shadow-md:0 4px 12px #00000059, 0 1px 3px #00000040;--shadow-lg:0 8px 24px #0006, 0 2px 6px #0000004d;--sidebar-bg:#09090b;--sidebar-fg:#fafafa;--sidebar-muted:#71717a;--sidebar-hover-bg:#ffffff0a;--sidebar-border:#ffffff0f}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility}body{background:var(--background);color:var(--foreground);line-height:1.55;font-size:var(--text-base)}.app-shell{background:var(--background);grid-template-columns:260px 1fr;min-height:100vh;display:grid}.app-shell.sidebar-collapsed{grid-template-columns:64px 1fr}.sidebar{background:var(--sidebar-bg);border-right:1px solid var(--sidebar-border);flex-direction:column;height:100vh;display:flex;position:sticky;top:0;overflow-y:auto}.sidebar::-webkit-scrollbar{width:5px}.sidebar::-webkit-scrollbar-thumb{background:var(--sidebar-hover-bg);border-radius:3px}.brand-mark{margin-bottom:var(--spacing-sm);text-align:center;filter:none;font-size:24px}.brand-title{color:var(--sidebar-fg);letter-spacing:-.3px;font-size:15px;font-weight:700}.brand-subtitle{color:var(--sidebar-muted);opacity:.7;font-size:10px;line-height:1.45}.nav-list{padding:var(--spacing) var(--spacing-sm);flex-direction:column;flex:1;gap:1px;display:flex}.nav-item{padding:8px var(--spacing);border-radius:var(--radius-sm);color:var(--sidebar-muted);flex-direction:column;gap:1px;text-decoration:none;transition:all .15s;display:flex;position:relative}.nav-item:before{content:"";background:var(--sidebar-active);opacity:0;border-radius:0 2px 2px 0;width:3px;transition:opacity .15s;position:absolute;top:4px;bottom:4px;left:0}.nav-item:hover{background:var(--sidebar-hover-bg);color:var(--sidebar-fg)}.nav-item.active{background:var(--sidebar-hover-bg);color:var(--sidebar-fg);font-weight:500}.nav-item.active:before{opacity:1}.nav-separator{background:var(--sidebar-border);height:1px;margin:8px var(--spacing-md)}.nav-label-row{font-size:var(--text-sm);justify-content:space-between;align-items:center;font-weight:500;display:flex}.nav-badge{background:var(--primary);color:#fff;letter-spacing:.3px;border-radius:10px;padding:2px 8px;font-size:10px;font-weight:600}.nav-description{color:var(--sidebar-muted);opacity:0;max-height:0;font-size:10px;line-height:1.3;transition:opacity .15s,max-height .15s;overflow:hidden}.nav-item:hover .nav-description,.nav-item.active .nav-description{opacity:.7;max-height:20px}.sidebar-footer{padding:var(--spacing-md);border-top:1px solid var(--sidebar-border);margin-top:auto}.sidebar-toggle,.theme-toggle{border-radius:var(--radius);background:var(--sidebar-hover-bg);border:1px solid var(--sidebar-border);width:36px;height:36px;color:var(--sidebar-fg);cursor:pointer;justify-content:center;align-items:center;font-size:15px;transition:background .15s;display:flex}.sidebar-toggle:hover,.theme-toggle:hover{background:var(--sidebar-hover-bg);opacity:.9}.sidebar-refresh{color:var(--sidebar-muted);text-align:center;padding:6px var(--spacing);background:var(--sidebar-hover-bg);border-radius:var(--radius-sm);margin-top:var(--spacing);font-size:11px}.page-main{width:100%;max-width:1600px;margin:0 auto;padding:0 24px}.page-header{border-bottom:1px solid var(--border-subtle);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;padding:20px 0 16px;display:flex}.page-header-left{min-width:0}.page-header-title{color:var(--foreground);letter-spacing:-.5px;font-size:20px;font-weight:750;line-height:1.2}.page-header-subtitle{font-size:var(--text-xs);color:var(--muted);opacity:.8;margin-top:3px}.page-header-actions{flex-wrap:wrap;flex-shrink:0;justify-content:flex-end;align-items:center;gap:8px;display:flex}.hero-card{background:var(--primary-gradient);color:#fff;padding:var(--spacing-xl) var(--spacing-lg);border-radius:var(--radius-lg);margin-bottom:var(--spacing-lg);box-shadow:var(--shadow-lg);position:relative;overflow:hidden}.hero-card:before{content:"";pointer-events:none;background:radial-gradient(circle,#ffffff14 0%,#0000 70%);width:260px;height:260px;position:absolute;top:-40%;right:-10%}.eyebrow{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.8px;opacity:.85;margin-bottom:6px;font-weight:600}.hero-title{letter-spacing:-.6px;margin-bottom:6px;font-size:28px;font-weight:700}.hero-subtitle{opacity:.9;margin-bottom:0;font-size:15px}.hero-actions{gap:var(--spacing);flex-wrap:wrap;display:flex}.link-button{color:#fff;border-radius:var(--radius);font-size:var(--text-sm);background:#ffffff1f;border:1px solid #ffffff26;justify-content:center;align-items:center;padding:8px 18px;font-weight:500;text-decoration:none;transition:all .15s;display:inline-flex}.link-button:hover{background:#fff3}.link-button.primary{color:var(--primary);background:#fff;border:none}.link-button.primary:hover{background:#fffffff2}.button{background:var(--surface);color:var(--foreground);border:1px solid var(--border);border-radius:var(--radius);font-size:var(--text-sm);cursor:pointer;justify-content:center;align-items:center;padding:8px 18px;font-weight:500;transition:all .15s;display:inline-flex}.button:hover{background:var(--surface-subtle);border-color:var(--primary);box-shadow:var(--shadow-xs);transform:translateY(-1px)}.button:active{transform:translateY(0)scale(.985)}.button.primary{background:var(--primary);color:#fff;border-color:#0000}.button.primary:hover{background:var(--primary-hover);box-shadow:0 2px 8px #8b5cf633}.button.loading{pointer-events:none;opacity:.6;position:relative}.button.loading:after{content:"";border:2px solid #0000;border-top-color:currentColor;border-radius:50%;width:16px;height:16px;margin-left:8px;animation:.6s linear infinite spin;position:absolute}.panel{background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--spacing-lg);margin-bottom:var(--spacing-md);box-shadow:var(--shadow-xs);transition:box-shadow .2s,border-color .2s,transform .2s}.panel:hover{box-shadow:var(--shadow-sm);border-color:var(--border);transform:translateY(-1px)}.panel:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft), var(--shadow-sm)}.panel-header{margin-bottom:var(--spacing-md);padding-bottom:var(--spacing);border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:flex-start;display:flex}.panel-title{color:var(--foreground);letter-spacing:-.2px;font-size:14px;font-weight:650}.panel-subtitle{font-size:var(--text-sm);color:var(--muted);line-height:1.5}.summary-card{background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--spacing-md) var(--spacing-lg);transition:box-shadow .2s,border-color .2s,transform .2s;position:relative;overflow:hidden}.summary-card:before{content:"";background:var(--primary);opacity:0;width:3px;height:100%;transition:opacity .2s;position:absolute;top:0;left:0}.summary-card:hover{border-color:var(--border);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.summary-card:hover:before{opacity:1}.summary-card.success:before{background:var(--success)}.summary-card.warning:before{background:var(--warning)}.summary-card.danger:before{background:var(--danger)}.summary-card.neutral:before{background:var(--muted)}.summary-label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.4px;color:var(--muted);margin-bottom:6px;font-weight:600}.summary-value-row{align-items:baseline;gap:6px;margin-bottom:4px;display:flex}.summary-value{color:var(--foreground);letter-spacing:-.8px;font-variant-numeric:tabular-nums;font-size:24px;font-weight:750}.summary-hint{font-size:var(--text-xs);color:var(--muted);line-height:1.4}.grid{gap:var(--spacing-lg);margin-bottom:var(--spacing-lg);display:grid}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}@media (max-width:1200px){.grid-4,.grid-3{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.app-shell{grid-template-columns:1fr}.sidebar{z-index:100;width:260px;position:fixed}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.page-main{padding:var(--spacing-md);max-width:100%}.panel{padding:var(--spacing-md)!important;margin-bottom:var(--spacing-md)!important}.panel-title{font-size:15px}.summary-card{padding:var(--spacing-md)!important}.summary-card:hover{transform:none!important}.summary-card:active{transition:transform .1s;transform:scale(.98)}.data-table-wrapper{position:relative}.data-table-wrapper:after{content:"← 左滑查看更多 →";color:#fff;opacity:.7;pointer-events:none;background:#8b5cf6e6;border-radius:10px;padding:2px 10px;font-size:11px;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.button,.input{min-height:44px}}@media (hover:none) and (pointer:coarse){.nav-item:hover,.button:hover,.summary-card:hover,.panel:hover{box-shadow:none;border-color:var(--border);background:0 0;transform:none}.nav-item:active,.button:active{opacity:.85}.summary-card:active{transform:scale(.98)}}.status-chip{letter-spacing:.2px;border-radius:10px;align-items:center;padding:3px 8px;font-size:10px;font-weight:600;display:inline-flex}.status-chip.success{background:var(--success-soft);color:var(--success)}.status-chip.warning{background:var(--warning-soft);color:var(--warning)}.status-chip.danger{background:var(--danger-soft);color:var(--danger)}.status-chip.neutral{background:var(--surface-subtle);color:var(--muted)}.data-table{border-collapse:separate;border-spacing:0;width:100%}.data-table thead{background:var(--surface-subtle)}.data-table th{padding:var(--spacing) var(--spacing-md);text-align:left;font-size:var(--text-xs);color:var(--muted);text-transform:uppercase;letter-spacing:.4px;border-bottom:1px solid var(--border);font-weight:600}.data-table td{padding:var(--spacing-md);border-bottom:1px solid var(--border-subtle);font-size:var(--text-base);transition:background .15s}.data-table tbody tr{transition:background .15s}.data-table tbody tr:hover{background:var(--surface-subtle)}.table-link{color:var(--primary);font-weight:500;text-decoration:none;transition:color .15s}.table-link:hover{color:var(--primary-hover);text-decoration:underline}.metric-bars{gap:var(--spacing-md);flex-direction:column;display:flex}.metric-bar-row{flex-direction:column;gap:4px;display:flex}.metric-bar-label-row{font-size:var(--text-base);justify-content:space-between;align-items:baseline;display:flex}.metric-bar-label{color:var(--foreground);font-weight:600}.metric-bar-value{color:var(--primary);font-size:15px;font-weight:700}.metric-bar-track{background:var(--surface-subtle);border-radius:3px;height:6px;overflow:hidden}.metric-bar-fill{border-radius:3px;height:100%;transition:width .5s cubic-bezier(.22,1,.36,1)}.metric-bar-fill.success{background:var(--success)}.metric-bar-fill.warning{background:var(--warning)}.metric-bar-fill.danger{background:var(--danger)}.metric-bar-fill.primary{background:var(--primary)}.metric-bar-fill.neutral{background:var(--muted)}.metric-bar-meta{font-size:var(--text-xs);color:var(--muted)}.back-to-top{background:var(--primary);color:#fff;cursor:pointer;width:42px;height:42px;box-shadow:var(--shadow-md);z-index:50;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:18px;transition:all .2s cubic-bezier(.22,1,.36,1);display:flex;position:fixed;bottom:24px;right:24px}.back-to-top:hover{transform:translateY(-2px);box-shadow:0 6px 16px #8b5cf640}.empty-state{text-align:center;min-height:120px;color:var(--muted);padding:48px 20px}.empty-state-icon{opacity:.45;margin-bottom:10px;font-size:2.5em;display:inline-block}.empty-state-title{color:var(--foreground);margin-bottom:4px;font-size:16px;font-weight:600}.empty-state-desc{font-size:var(--text-base);max-width:340px;margin:0 auto 16px;line-height:1.6}.skeleton-card{background:var(--surface-subtle);animation:1.5s ease-in-out infinite pulse}.skeleton-line{background:var(--border);border-radius:4px;height:14px;animation:1.5s ease-in-out infinite pulse}.skeleton-h6{height:20px}.skeleton-mt4{margin-top:4px}.skeleton-mt8{margin-top:8px}.skeleton-w30{width:30%}.skeleton-w40{width:40%}.skeleton-w50{width:50%}.skeleton-w60{width:60%}.skeleton-w80{width:80%}.skeleton-w100{width:100%}.input,.select,.textarea{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);font-size:var(--text-base);color:var(--foreground);outline:none;padding:8px 12px;font-family:inherit;transition:border-color .15s,box-shadow .15s}.input:focus,.select:focus,.textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.input::placeholder,.textarea::placeholder{color:var(--muted);opacity:.6}.shared-filter-bar{border-bottom:1px solid var(--border-subtle);flex-wrap:wrap;align-items:flex-end;gap:12px;margin-bottom:20px;padding:10px 0 12px;display:flex}.shared-filter-bar .sfb-field{flex-direction:column;gap:3px;min-width:0;display:flex}.shared-filter-bar .sfb-label{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:10px;font-weight:600}.shared-filter-bar .input,.shared-filter-bar .select{min-width:120px;font-size:var(--text-sm);background:var(--surface-subtle);border-radius:var(--radius-sm);border-color:#0000;padding:5px 10px;line-height:1.4;transition:border-color .15s,background .15s,box-shadow .15s}.shared-filter-bar .input:hover,.shared-filter-bar .select:hover{background:var(--surface);border-color:var(--border)}.shared-filter-bar .input:focus,.shared-filter-bar .select:focus{background:var(--surface);border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-soft)}.shared-filter-bar .select{padding-right:24px}.shared-filter-bar .select:disabled{opacity:.45;cursor:not-allowed}.shared-filter-bar .sfb-reset{border-radius:var(--radius-sm);color:var(--muted);font-size:var(--text-xs);cursor:pointer;background:0 0;border:none;align-self:flex-end;padding:5px 10px;font-weight:500;transition:color .15s,background .15s}.shared-filter-bar .sfb-reset:hover{color:var(--danger);background:var(--danger-soft)}@media (max-width:640px){.shared-filter-bar .input,.shared-filter-bar .select{width:100%;min-width:0}.shared-filter-bar .sfb-field{flex:130px}}@media print{.sidebar,.back-to-top,.hero-actions,.form-actions{display:none!important}.app-shell{grid-template-columns:1fr}.page-main{max-width:100%;padding:0}}
@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.45}}@keyframes slideInRight{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}
@keyframes fadeInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes breathe{0%,to{opacity:.55;transform:scale(1)}50%{opacity:.85;transform:scale(1.08)}}@keyframes numberLift{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes activePulse{0%{box-shadow:0 0 #8b5cf642}to{box-shadow:0 0 0 10px #8b5cf600}}@keyframes chartReveal{0%{opacity:0;transform:translateY(8px)scale(.995)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes ripple{0%{box-shadow:0 0 #8b5cf640}to{box-shadow:0 0 0 16px #8b5cf600}}@keyframes shimmer{0%{background-position:-500px 0}to{background-position:500px 0}}@keyframes fillBar{0%{width:0}}@keyframes highlightAlert{0%,to{background:0 0}50%{background:var(--danger-soft)}}@keyframes spinOnce{to{transform:rotate(90deg)}}.sidebar{animation:.35s ease-out fadeIn}.page-main>*{animation:.4s cubic-bezier(.22,1,.36,1) backwards fadeInUp}.page-main>:first-child{animation-delay:30ms}.page-main>:nth-child(2){animation-delay:60ms}.page-main>:nth-child(3){animation-delay:90ms}.page-main>:nth-child(4){animation-delay:.12s}.page-main>:nth-child(5){animation-delay:.15s}.grid>*,.grid-2>*,.grid-3>*,.grid-4>*,[class*=gridMetrics]>*,[class*=gridResponsive]>*{animation:.35s cubic-bezier(.22,1,.36,1) backwards scaleIn}.grid-4>:first-child{animation-delay:40ms}.grid-4>:nth-child(2){animation-delay:80ms}.grid-4>:nth-child(3){animation-delay:.12s}.grid-4>:nth-child(4){animation-delay:.16s}.grid-3>:first-child{animation-delay:40ms}.grid-3>:nth-child(2){animation-delay:80ms}.grid-3>:nth-child(3){animation-delay:.12s}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:var(--radius-sm)}.button.primary:active{animation:.5s ease-out ripple}.interactive-card,.interactive-panel,[class*=groupCard],[class*=quickEntryLink]{will-change:transform}.interactive-card:hover,.interactive-panel:hover,[class*=groupCard]:hover,[class*=quickEntryLink]:hover{transform:translateY(-2px)}.interactive-card:active,[class*=groupCard]:active,[class*=quickEntryLink]:active{transform:translateY(0)scale(.99)}.interactive-card:focus-visible,.interactive-panel:focus-within,[class*=groupCard]:focus-visible,[class*=quickEntryLink]:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.summary-value,.metric-bar-value,[class*=groupAccNum]{transition:transform .18s;animation:.35s cubic-bezier(.22,1,.36,1) backwards numberLift}.summary-card:hover .summary-value,.interactive-card:hover .summary-value{transform:translateY(-1px)}[class*=segmentedBtnActive],.button[style*="var(--primary)"]{animation:.45s ease-out activePulse}.empty-state-icon,.empty-state-inline-icon,[class*=emptyIcon],[class*=emptyDot]{animation:2.8s ease-in-out infinite breathe}.recharts-wrapper{animation:.42s cubic-bezier(.22,1,.36,1) backwards chartReveal}.recharts-bar-rectangle,.recharts-sector,.recharts-dot,.recharts-active-dot{transition:opacity .18s,transform .18s}.recharts-bar-rectangle:hover,.recharts-sector:hover{opacity:.86}.skeleton-card{background:linear-gradient(90deg, var(--surface-subtle) 30%, var(--surface) 50%, var(--surface-subtle) 70%);background-size:500px 100%;animation:1.5s linear infinite shimmer}.metric-bar-fill{animation:.8s cubic-bezier(.22,1,.36,1) forwards fillBar}.alert-row-severity-p0{animation:2.5s ease-in-out infinite highlightAlert}.shared-filter-bar .input,.shared-filter-bar .select,.input,.select{transition:border-color .15s,box-shadow .15s,background .15s,transform .15s}.shared-filter-bar .input:focus,.shared-filter-bar .select:focus,.input:focus,.select:focus{transform:translateY(-1px)}.collapsible-content{transition:all .25s}.panel--collapsed .collapsible-content{opacity:0;max-height:0;overflow:hidden}.collapsible-chevron{transition:transform .25s}.panel:not(.panel--collapsed) .collapsible-chevron{transform:rotate(90deg)}.scroll-progress{background:var(--primary-gradient);z-index:9999;width:0;height:2.5px;transition:width 80ms linear;position:fixed;top:0;left:0;box-shadow:0 1px 6px #8b5cf666}::selection{background:var(--primary-soft);color:var(--primary)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.page-main>*,.grid>*,.grid-2>*,.grid-3>*,.grid-4>*,[class*=gridMetrics]>*,[class*=gridResponsive]>*,.summary-value,.metric-bar-value,.empty-state-icon,.empty-state-inline-icon,.recharts-wrapper,[class*=segmentedBtnActive],[class*=emptyIcon],[class*=emptyDot],[class*=groupAccNum]{animation:none!important}}@media (prefers-reduced-motion:no-preference){*{scroll-behavior:smooth}}
