@font-face{font-family:__Barlow_dcf1d9;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/88e4012f2051f8b4-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Barlow_dcf1d9;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/0be08cad6fae8421-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:__Barlow_dcf1d9;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/61d96c4884191721-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Barlow_dcf1d9;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/cd5242d34e82716d-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Barlow_dcf1d9;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/6662f7f4c6f2f062-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:__Barlow_dcf1d9;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/b0bb26939bb40fdb-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Barlow_dcf1d9;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/7816b93d847886e9-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Barlow_dcf1d9;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/ea06843a6d8e9ab3-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:__Barlow_dcf1d9;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/60c9b95e8d9e49be-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Barlow_dcf1d9;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/1e6ec62843814326-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Barlow_dcf1d9;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/a8bcd0492b5976ee-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:__Barlow_dcf1d9;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/6ad0344ed98ac2e9-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Barlow_dcf1d9;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/a919ac6ebfd565cf-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Barlow_dcf1d9;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/01c7be446e8f31f5-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:__Barlow_dcf1d9;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/cb8236635aff3c3e-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Barlow_Fallback_dcf1d9;src:local("Arial");ascent-override:103.43%;descent-override:20.69%;line-gap-override:0.00%;size-adjust:96.68%}.__className_dcf1d9{font-family:__Barlow_dcf1d9,__Barlow_Fallback_dcf1d9;font-style:normal}.__variable_dcf1d9{--font-barlow:"__Barlow_dcf1d9","__Barlow_Fallback_dcf1d9"}@font-face{font-family:__IBM_Plex_Mono_05908d;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/58f386aa6b1a2a92-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__IBM_Plex_Mono_05908d;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/011e180705008d6f-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__IBM_Plex_Mono_05908d;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/7ba5fb2a8c88521c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__IBM_Plex_Mono_05908d;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/92eeb95d069020cc-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:__IBM_Plex_Mono_05908d;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/d3ebbfd689654d3a-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__IBM_Plex_Mono_05908d;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ef4d5661765d0e49-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__IBM_Plex_Mono_05908d;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/d29838c109ef09b4-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__IBM_Plex_Mono_05908d;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/e40af3453d7c920a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__IBM_Plex_Mono_05908d;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/99dcf268bda04fe5-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:__IBM_Plex_Mono_05908d;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/98e207f02528a563-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__IBM_Plex_Mono_05908d;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/704b853f32d191d5-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__IBM_Plex_Mono_05908d;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/656feb427634a431-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__IBM_Plex_Mono_05908d;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/991629005c80bdf1-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__IBM_Plex_Mono_05908d;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/46e154b2fcbd6033-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:__IBM_Plex_Mono_05908d;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/37786be940ec402b-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__IBM_Plex_Mono_Fallback_05908d;src:local("Arial");ascent-override:76.16%;descent-override:20.43%;line-gap-override:0.00%;size-adjust:134.59%}.__className_05908d{font-family:__IBM_Plex_Mono_05908d,__IBM_Plex_Mono_Fallback_05908d;font-style:normal}.__variable_05908d{--font-mono:"__IBM_Plex_Mono_05908d","__IBM_Plex_Mono_Fallback_05908d"}:root{--bg-0:#07090d;--bg-1:#0b0e14;--bg-2:#0f1319;--bg-3:#141a22;--bg-hover:#1a2230;--border-0:#1c2838;--border-1:#243347;--tx-0:#dce8f8;--tx-1:#7c9ab8;--tx-2:#3d5570;--tx-3:#1e3048;--ac:#00d4ff;--ac-dim:rgba(0,212,255,.08);--ac-glow:0 0 24px rgba(0,212,255,.25);--green:#00e676;--red:#ff1744;--yellow:#ffc400;--orange:#ff6d00;--purple:#a0f;--pink:#f50057;--teal:#00bfa5;--green-dim:rgba(0,230,118,.1);--red-dim:rgba(255,23,68,.1);--yellow-dim:rgba(255,196,0,.1);--orange-dim:rgba(255,109,0,.1);--purple-dim:rgba(170,0,255,.1);--ff-ui:var(--font-barlow),"Helvetica Neue",sans-serif;--ff-mono:var(--font-mono),"Courier New",monospace;--sidebar-w:248px;--sidebar-w-sm:56px;--header-h:56px;--radius:6px;--radius-lg:10px;--transition:120ms ease}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-size:14px}body{background:var(--bg-0);color:var(--tx-0);font-family:var(--ff-ui);line-height:1.55;-webkit-font-smoothing:antialiased;min-height:100vh;background-image:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,.03) 0,rgba(0,0,0,.03) 4px)}::-webkit-scrollbar{width:3px;height:3px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-1);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--tx-2)}::selection{background:var(--ac-dim);color:var(--ac)}h1,h2,h3,h4,h5{font-family:var(--ff-ui);font-weight:700;line-height:1.2}.mono,code,pre{font-family:var(--ff-mono)}a{color:var(--ac);text-decoration:none}a:hover{text-decoration:underline}.shell{height:100vh}.main-content,.shell{display:flex;overflow:hidden}.main-content{flex:1 1;flex-direction:column;min-width:0}.page-body{flex:1 1;overflow-y:auto;padding:24px}.sidebar{width:var(--sidebar-w);min-width:var(--sidebar-w);background:var(--bg-1);border-right:1px solid var(--border-0);display:flex;flex-direction:column;transition:width .18s ease,min-width .18s ease;overflow:hidden;z-index:10;position:relative}.sidebar.collapsed{width:var(--sidebar-w-sm);min-width:var(--sidebar-w-sm)}.topbar{height:var(--header-h);background:var(--bg-1);border-bottom:1px solid var(--border-0);display:flex;align-items:center;padding:0 20px;gap:12px;flex-shrink:0}.card{background:var(--bg-2);border:1px solid var(--border-0);border-radius:var(--radius-lg)}.card-body{padding:18px}.card-header{padding:12px 16px;border-bottom:1px solid var(--border-0);display:flex;align-items:center;gap:8px;min-height:44px}.card-header h3{font-size:13px;font-weight:700;color:var(--tx-0)}.stat-card{background:var(--bg-2);border:1px solid var(--border-0);border-radius:var(--radius-lg);padding:16px 18px;position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:var(--accent-color,var(--ac))}.stat-value{font-family:var(--ff-mono);font-size:32px;font-weight:700;line-height:1;color:var(--accent-color,var(--ac));letter-spacing:-1px}.stat-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:var(--tx-2);margin-bottom:8px}.stat-sub{font-size:12px;color:var(--tx-1);margin-top:6px}.data-table th{padding:9px 12px;text-align:left;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:var(--tx-2);white-space:nowrap;background:var(--bg-1);position:-webkit-sticky;position:sticky;top:0;z-index:10}.data-table td,.data-table th{border-bottom:1px solid var(--border-0)}.data-table td{padding:11px 12px;color:var(--tx-1);font-size:13px;vertical-align:middle}.data-table tr:last-child td{border-bottom:none}.data-table tbody tr:hover td{background:var(--bg-hover);color:var(--tx-0)}.data-table .cell-primary{color:var(--tx-0);font-weight:600}.data-table .cell-mono{font-family:var(--ff-mono);font-size:11px}.btn{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:var(--radius);border:1px solid var(--border-1);background:var(--bg-3);color:var(--tx-0);font-family:var(--ff-ui);font-size:12.5px;font-weight:600;cursor:pointer;transition:var(--transition);white-space:nowrap;line-height:1;height:32px}.btn:hover{border-color:var(--ac);color:var(--ac)}.btn:active{opacity:.8}.btn:disabled{opacity:.4;cursor:not-allowed}.btn-primary{background:var(--ac);color:#000;border-color:var(--ac)}.btn-primary:hover{background:#00b8d9;color:#000;border-color:#00b8d9}.btn-success{border-color:var(--green-dim);color:var(--green)}.btn-success:hover{background:var(--green-dim);border-color:var(--green)}.btn-danger{border-color:var(--red-dim);color:var(--red)}.btn-danger:hover{background:var(--red-dim);border-color:var(--red)}.btn-warning{border-color:var(--yellow-dim);color:var(--yellow)}.btn-warning:hover{background:var(--yellow-dim);border-color:var(--yellow)}.btn-ghost{background:transparent;border-color:transparent;color:var(--tx-1)}.btn-ghost:hover{background:var(--bg-hover);color:var(--tx-0);border-color:var(--border-1)}.btn-sm{height:26px;padding:4px 10px;font-size:11.5px}.btn-icon{padding:0;width:32px;justify-content:center}.btn-icon.btn-sm{width:26px}.badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:20px;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;line-height:1.6;white-space:nowrap}.badge-green{background:var(--green-dim);color:var(--green);border:1px solid rgba(0,230,118,.2)}.badge-red{color:var(--red);border:1px solid rgba(255,23,68,.2)}.badge-yellow{background:var(--yellow-dim);color:var(--yellow);border:1px solid rgba(255,196,0,.2)}.badge-orange{background:var(--orange-dim);color:var(--orange);border:1px solid rgba(255,109,0,.2)}.badge-blue{border:1px solid rgba(0,212,255,.15)}.badge-gray{color:var(--tx-1)}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;flex-shrink:0}.dot-green{background:var(--green);box-shadow:0 0 6px var(--green);animation:blink 2.2s ease-in-out infinite}.dot-red{background:var(--red);box-shadow:0 0 6px var(--red)}.dot-yellow{background:var(--yellow);box-shadow:0 0 6px var(--yellow);animation:blink 1s ease-in-out infinite}.dot-gray{background:var(--tx-3)}.dot-blue{background:var(--ac);box-shadow:0 0 6px var(--ac)}.input,.select{width:100%;background:var(--bg-1);border:1px solid var(--border-0);border-radius:var(--radius);padding:8px 12px;color:var(--tx-0);font-family:var(--ff-ui);font-size:13px;outline:none;transition:var(--transition)}.input:focus,.select:focus{border-color:var(--ac);box-shadow:0 0 0 2px var(--ac-dim)}.input::placeholder{color:var(--tx-3)}.select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%233d5570' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;padding-right:28px}.label{display:block;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:var(--tx-2);margin-bottom:5px}.divider{height:1px;background:var(--border-0)}.flex,.flex-col{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-4{gap:4px}.gap-8{gap:8px}.gap-12{gap:12px}.gap-16{gap:16px}.flex-1{flex:1 1}.min-w-0{min-width:0}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-dim{color:var(--tx-2)}.text-sub{color:var(--tx-1)}.text-primary{color:var(--tx-0)}.text-accent{color:var(--ac)}.text-xs{font-size:11px}.text-sm{font-size:12px}.text-base{font-size:13px}.font-bold{font-weight:700}.font-mono{font-family:var(--ff-mono)}.w-full{width:100%}.grid-2{grid-template-columns:repeat(2,1fr);grid-gap:14px}.grid-2,.grid-3{display:grid;gap:14px}.grid-3{grid-template-columns:repeat(3,1fr);grid-gap:14px}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:14px;gap:14px}@media (max-width:1280px){.grid-4{grid-template-columns:repeat(2,1fr)}}@media (max-width:900px){.grid-3{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 20px;gap:10px;color:var(--tx-2);text-align:center}.empty-state svg{opacity:.4}.spinning{animation:spin .75s linear infinite}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .25s ease}@keyframes slideIn{0%{transform:translateX(-8px);opacity:0}to{transform:translateX(0);opacity:1}}.slide-in{animation:slideIn .2s ease}.spinner{width:18px;height:18px;border:2px solid var(--border-1);border-top-color:var(--ac);border-radius:50%;animation:spin .7s linear infinite}.alert{align-items:flex-start;gap:10px;font-size:12.5px}.alert-error{color:var(--red);border:1px solid rgba(255,23,68,.2)}.alert-success{background:var(--green-dim);color:var(--green);border:1px solid rgba(0,230,118,.2)}.metric-bar{height:3px;background:var(--border-0);border-radius:4px;overflow:hidden;margin-top:8px}.metric-bar-fill{height:100%;background:var(--ac);border-radius:4px;transition:width .5s ease}.toast-container{position:fixed;bottom:24px;right:24px;z-index:9999;display:flex;flex-direction:column;gap:8px;pointer-events:none}.toast{pointer-events:all;background:var(--bg-3);border:1px solid var(--border-1);border-radius:var(--radius-lg);padding:12px 16px;min-width:280px;max-width:360px;display:flex;align-items:flex-start;gap:10px;box-shadow:0 8px 32px rgba(0,0,0,.5);animation:slideInToast .25s ease}@keyframes slideInToast{0%{transform:translateX(20px);opacity:0}to{transform:translateX(0);opacity:1}}.toast-success{border-left:3px solid var(--green)}.toast-error{border-left:3px solid var(--red)}.toast-warning{border-left:3px solid var(--yellow)}.toast-info{border-left:3px solid var(--ac)}.recharts-tooltip-wrapper .recharts-default-tooltip{background:var(--bg-3)!important;border:1px solid var(--border-1)!important;border-radius:var(--radius)!important;font-family:var(--ff-mono)!important;font-size:11px!important}.badge-purple{background:var(--purple-dim);color:var(--purple);border:1px solid rgba(170,0,255,.2)}.badge-blue{background:var(--ac-dim);color:var(--ac);border:1px solid rgba(0,212,255,.2)}.badge-red{background:var(--red-dim);color:#ff4757;border:1px solid rgba(255,71,87,.25)}.badge-gray{background:hsla(0,0%,100%,.04);color:var(--tx-2);border:1px solid var(--border-0)}.data-table{width:100%;border-collapse:collapse;font-size:12.5px}.data-table thead th{padding:10px 14px;text-align:left;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.7px;color:var(--tx-2);border-bottom:1px solid var(--border-0);white-space:nowrap;background:var(--bg-1);position:-webkit-sticky;position:sticky;top:0;z-index:10}.data-table tbody tr{border-bottom:1px solid var(--border-0);transition:background .1s}.data-table tbody tr:last-child{border-bottom:none}.data-table tbody tr:hover{background:var(--bg-hover)}.data-table tbody td{padding:9px 14px;vertical-align:middle}.alert{display:flex;align-items:center;gap:8;padding:10px 14px;border-radius:var(--radius);font-size:12px}.alert-error{background:var(--red-dim);color:#ff4757;border:1px solid rgba(255,71,87,.2)}.alert-warn{background:var(--yellow-dim);color:var(--yellow);border:1px solid rgba(255,196,0,.2)}.alert-info{background:var(--ac-dim);color:var(--ac);border:1px solid rgba(0,212,255,.15)}.alert-ok{background:var(--green-dim);color:var(--green);border:1px solid rgba(0,230,118,.2)}.spinning{animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}@keyframes blink{0%,to{opacity:1}50%{opacity:.4}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}