:root{--brand-50:#f5f3ff;--brand-100:#ede9fe;--brand-200:#ddd6fe;--brand-300:#c4b5fd;--brand-400:#a78bfa;--brand-500:#8b5cf6;--brand-600:#7c3aed;--brand-700:#6d28d9;--brand-800:#5b21b6;--brand-900:#4c1d95;--brand-950:#2e1065;--accent-300:#f9a8d4;--accent-400:#f472b6;--accent-500:#ec4899;--ink-900:#0f172a;--ink-700:#334155;--ink-500:#64748b;--ink-400:#94a3b8;--ink-300:#cbd5e1;--ink-200:#e2e8f0;--ink-100:#f1f5f9;--ink-50:#f8fafc;--bg-page:#fafafa;--bg-panel:#fff;--bg-hover:#fafbfc;--color-primary:#8b5cf6;--color-success:#10b981;--color-warning:#f59e0b;--color-danger:#f43f5e;--color-info:#6366f1;--color-purple:#7c3aed;--font-sans:"Outfit", "Noto Sans SC", system-ui, -apple-system, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "SF Mono", monospace;--radius-sm:6px;--radius-md:8px;--radius-lg:10px;--radius-xl:12px;--radius-2xl:18px;--radius-3xl:20px;--radius-4xl:24px;--shadow-bento:0 4px 20px -8px #6366f11f;--shadow-bento-hover:0 8px 30px -8px #6366f133;--shadow-glass:0 20px 60px -10px #0003;--shadow-glow:0 4px 12px -2px #8b5cf666;--shadow-avatar:0 4px 12px -2px #8b5cf64d;--ease:cubic-bezier(.4, 0, .2, 1);--motion-fast:.15s;--motion-base:.25s;--motion-slow:.4s}@keyframes page-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes page-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-4px)}}@keyframes stagger-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse-dot{0%{box-shadow:0 0 #10b98180}70%{box-shadow:0 0 0 6px #10b98100}to{box-shadow:0 0 #10b98100}}html,body{height:100%;font-family:var(--font-sans);color:var(--ink-900);background:var(--bg-page);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;padding:0;font-size:14px}*{box-sizing:border-box}.tabular-nums{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.bg-brand-gradient{background:linear-gradient(135deg,#8b5cf6 0%,#f472b6 100%)}.bg-aurora-gradient{background:linear-gradient(135deg,#1e1b4b 0%,#312e81 50%,#6d28d9 100%)}.text-brand-gradient{background:linear-gradient(135deg,#8b5cf6 0%,#f472b6 100%);-webkit-text-fill-color:transparent;color:#0000;-webkit-background-clip:text;background-clip:text}.brand-gradient{background:linear-gradient(135deg,#8b5cf6 0%,#f472b6 100%)}.brand-text{background:linear-gradient(135deg,#8b5cf6 0%,#f472b6 100%);-webkit-text-fill-color:transparent;color:#0000;-webkit-background-clip:text;background-clip:text}.bento-card{-webkit-backdrop-filter:blur(20px);border-radius:var(--radius-2xl);box-shadow:var(--shadow-bento);transition:transform var(--motion-base) var(--ease), box-shadow var(--motion-base) var(--ease);background-color:#ffffffb3;border:1px solid #ffffffe6;padding:24px}.bento-card-hoverable:hover{box-shadow:var(--shadow-bento-hover);transform:translateY(-2px)}.bento-card-hero{color:#fff;background:linear-gradient(135deg,#1e1b4b 0%,#312e81 50%,#6d28d9 100%);border-color:#0000;position:relative;overflow:hidden}.bento-card-hero:after{content:"";background:radial-gradient(circle, var(--accent-400) 0%, transparent 70%);opacity:.5;pointer-events:none;width:200px;height:200px;position:absolute;top:-50px;right:-50px}.bg-bento-canvas{background:radial-gradient(at 0% 0%, var(--brand-100) 0%, transparent 50%), radial-gradient(at 100% 100%, #fce7f3 0%, transparent 50%), var(--bg-page);position:relative;overflow:hidden}.bg-bento-canvas:before{content:"";background:radial-gradient(circle, var(--brand-300) 0%, transparent 70%);opacity:.18;filter:blur(60px);pointer-events:none;z-index:0;width:600px;height:600px;position:absolute;top:-200px;right:-200px}.glass-card{-webkit-backdrop-filter:blur(20px);border-radius:var(--radius-3xl);box-shadow:var(--shadow-bento);background:#ffffffb3;border:1px solid #ffffffe6;padding:24px}.glass-card-light{-webkit-backdrop-filter:blur(20px);border-radius:var(--radius-3xl);box-shadow:var(--shadow-bento);background:linear-gradient(135deg,#ffffffb3 0%,#ede9fe66 100%);border:1px solid #ffffffe6}.glass-card-tinted{-webkit-backdrop-filter:blur(20px);border-radius:var(--radius-3xl);background:linear-gradient(135deg,#ffffffb3 0%,#fce7f366 100%);border:1px solid #ffffffe6;box-shadow:0 4px 20px -8px #f472b626}.glass-card-dark{-webkit-backdrop-filter:blur(40px);border-radius:var(--radius-4xl);box-shadow:var(--shadow-glass);color:#fff;background:#ffffff26;border:1px solid #ffffff40}.bg-glass-mesh{background:linear-gradient(125deg,#3b82f6 0%,#8b5cf6 35%,#ec4899 70%,#f97316 100%);position:relative;overflow:hidden}.bg-glass-mesh:before{content:"";opacity:.6;mix-blend-mode:screen;pointer-events:none;background:radial-gradient(at 20% 80%,#06b6d4 0%,#0000 40%),radial-gradient(at 80% 20%,#f43f5e 0%,#0000 40%);position:absolute;inset:0}.stat-card{-webkit-backdrop-filter:blur(20px);border-radius:var(--radius-2xl);box-shadow:var(--shadow-bento);transition:transform var(--motion-base) var(--ease), box-shadow var(--motion-base) var(--ease);cursor:default;background-color:#ffffffb3;border:1px solid #ffffffe6;padding:24px}.stat-card-clickable{cursor:pointer}.stat-card-clickable:hover{box-shadow:var(--shadow-bento-hover);transform:translateY(-2px)}.stat-card-label{color:var(--brand-500);letter-spacing:.05em;text-transform:uppercase;font-size:11px;font-weight:500;font-family:var(--font-mono)}.stat-card-value{font-variant-numeric:tabular-nums;letter-spacing:-.02em;color:var(--ink-900);margin-top:8px;font-size:32px;font-weight:700;line-height:1.1}.stat-card-extra{color:var(--ink-500);margin-top:8px;font-size:12px;font-weight:500}.stat-card-extra-up{color:var(--color-success)}.stat-card-extra-down{color:var(--color-danger)}.stat-card-icon{border-radius:var(--radius-lg);flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:20px;display:flex}.stat-card.active{outline:2px solid var(--brand-500);outline-offset:-2px}.stat-primary{color:var(--color-primary)}.stat-success{color:var(--color-success)}.stat-warning{color:var(--color-warning)}.stat-danger{color:var(--color-danger)}.stat-info{color:var(--color-info)}.stat-purple{color:var(--color-purple)}.bg-primary-50{background:var(--brand-50)}.bg-success-50{background:#ecfdf5}.bg-warning-50{background:#fffbeb}.bg-danger-50{background:#fef2f2}.bg-info-50{background:#ecfeff}.bg-purple-50{background:var(--brand-50)}.status-tag{white-space:nowrap;font-size:11.5px;font-weight:600;line-height:1.4;font-family:var(--font-sans);border-radius:999px;align-items:center;gap:5px;padding:3px 9px;display:inline-flex}.status-tag .status-dot{border-radius:50%;flex-shrink:0;width:5px;height:5px}.status-tag-sm{padding:2px 7px;font-size:10px}.status-tag-online{color:#047857;background:#10b9811f}.status-tag-online .status-dot{background:var(--color-success);animation:2s infinite pulse-dot}.status-tag-offline{color:#be123c;background:#f43f5e1f}.status-tag-offline .status-dot{background:var(--color-danger)}.status-tag-warning{color:#b45309;background:#f59e0b1f}.status-tag-warning .status-dot{background:var(--color-warning)}.status-tag-error{color:#be123c;background:#f43f5e26}.status-tag-error .status-dot{background:var(--color-danger)}.status-tag-info{color:#5b21b6;background:#8b5cf61a}.status-tag-info .status-dot{background:var(--brand-500)}.status-tag-idle{color:#475569;background:#94a3b81f}.status-tag-idle .status-dot{background:var(--ink-400)}.btn-brand{color:#fff;border-radius:var(--radius-xl);cursor:pointer;transition:transform var(--motion-fast) var(--ease), box-shadow var(--motion-base) var(--ease);background:linear-gradient(135deg,#8b5cf6 0%,#f472b6 100%);border:0;padding:9px 18px;font-size:14px;font-weight:500;box-shadow:0 1px 3px #0000000a}.btn-brand:hover{box-shadow:var(--shadow-glow);transform:translateY(-1px)}.btn-brand:active{transform:scale(.98)}.btn-default{background:var(--bg-panel);color:var(--ink-700);border:1px solid var(--ink-200);border-radius:var(--radius-xl);cursor:pointer;transition:all var(--motion-fast) var(--ease);padding:9px 18px;font-size:14px;font-weight:500}.btn-default:hover{border-color:var(--ink-300)}.btn-ghost{color:var(--ink-500);border-radius:var(--radius-xl);cursor:pointer;transition:all var(--motion-fast) var(--ease);background:0 0;border:0;padding:9px 18px;font-size:14px;font-weight:500}.btn-ghost:hover{background:var(--ink-50);color:var(--ink-700)}.btn-danger{background:var(--color-danger);color:#fff;border-radius:var(--radius-xl);cursor:pointer;transition:all var(--motion-fast) var(--ease);border:0;padding:9px 18px;font-size:14px;font-weight:500}.btn-danger:hover{background:#e11d48}.btn-link{color:var(--color-primary);cursor:pointer;background:0 0;border:0;padding:4px 8px;font-size:14px;font-weight:500}.btn-link:hover{color:var(--brand-700)}.app-page-header{border-bottom:1px solid var(--ink-100);justify-content:space-between;align-items:flex-end;margin-bottom:32px;padding-bottom:12px;display:flex}.app-page-header-title{letter-spacing:-.015em;color:var(--ink-900);margin:0;font-size:24px;font-weight:700}.app-page-header-subtitle{color:var(--ink-500);font-size:12px;font-family:var(--font-mono);margin-top:4px}.app-page-header-extra{gap:12px;display:flex}.app-page-header-meta{border-top:1px solid var(--ink-100);flex-wrap:wrap;gap:12px 28px;margin-top:16px;padding-top:12px;display:flex}.app-kv-cell{flex:none;align-items:baseline;gap:8px;min-width:0;display:flex}.app-kv-label{color:var(--ink-500);white-space:nowrap;font-size:12px;font-weight:500}.app-kv-value{color:var(--ink-900);white-space:nowrap;font-size:13px;font-weight:600}.app-section-title{color:var(--ink-900);align-items:center;gap:8px;margin-bottom:16px;font-size:16px;font-weight:600;display:flex}.app-section-title-icon{font-size:18px}.app-sider{-webkit-backdrop-filter:blur(20px);border-right:1px solid var(--ink-100);z-index:10;background:#fffc;flex-direction:column;flex-shrink:0;width:240px;height:100vh;display:flex;overflow-y:auto}.app-sider-collapsed{width:64px}.sider-menu-group-label{color:var(--ink-500);text-transform:uppercase;letter-spacing:.1em;font-size:11px;font-weight:500;font-family:var(--font-mono);padding:12px 16px 6px}.sider-menu-item{border-radius:var(--radius-md);color:var(--ink-700);cursor:pointer;transition:all var(--motion-fast) var(--ease);align-items:center;margin:2px 8px;padding:10px 16px;font-size:14px;display:flex}.sider-menu-item:hover{background:var(--ink-100);color:var(--brand-600)}.sider-menu-item-active{background:linear-gradient(135deg, var(--brand-50) 0%, #fce7f34d 100%);color:var(--brand-600);font-weight:600}.sider-menu-icon{justify-content:center;width:20px;margin-right:12px;font-size:16px;display:inline-flex}.app-topbar{-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--ink-100);z-index:10;background:#ffffffb3;flex-shrink:0;justify-content:space-between;align-items:center;height:64px;padding:0 32px;display:flex;position:sticky;top:0}.app-topbar-menu-item{border-radius:var(--radius-md);color:var(--ink-700);cursor:pointer;transition:all var(--motion-fast) var(--ease);align-items:center;gap:6px;padding:8px 14px;font-size:14px;text-decoration:none;display:inline-flex}.app-topbar-menu-item:hover{background:var(--brand-50);color:var(--brand-600)}.app-topbar-menu-item.active{background:var(--brand-50);color:var(--brand-600);font-weight:600}.app-sider-v3 .sider-menu-item-v3{border-radius:var(--radius-lg);color:#ffffffd9;cursor:pointer;transition:all var(--motion-fast) var(--ease);align-items:center;gap:12px;margin:2px 12px;font-size:14px;text-decoration:none;display:flex;position:relative}.app-sider-v3 .sider-menu-item-v3:hover{color:#fff;background:#ffffff14}.app-sider-v3 .sider-menu-item-v3-active{color:#fff;background:linear-gradient(135deg,#8b5cf640 0%,#f472b62e 100%);font-weight:600;box-shadow:0 4px 12px -4px #8b5cf666}.app-topbar-v3{-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--ink-100);z-index:10;background:linear-gradient(#fffffff2 0%,#ffffffd9 100%);flex-shrink:0;justify-content:space-between;align-items:center;height:64px;padding:0 32px;display:flex;position:sticky;top:0}.app-topbar-v3 .app-topbar-menu-item-v3{border-radius:var(--radius-md);color:var(--ink-700);cursor:pointer;transition:all var(--motion-fast) var(--ease);align-items:center;gap:6px;padding:8px 14px;font-size:14px;text-decoration:none;display:inline-flex;position:relative}.app-topbar-v3 .app-topbar-menu-item-v3:hover{background:var(--brand-50);color:var(--brand-600)}.app-topbar-v3 .app-topbar-menu-item-v3.active{background:var(--brand-50);color:var(--brand-600);font-weight:600}@media (max-width:768px){.app-sider-v3{z-index:100;height:100vh;transition:left .25s cubic-bezier(.4,0,.2,1);top:0;left:-240px;position:fixed!important}.app-sider-v3.sider-mobile-open{left:0}.bg-bento-canvas{padding:0 16px 16px!important}[style*="grid-template-columns: repeat(12, 1fr)"]{grid-template-columns:1fr!important}[style*="gridColumn: 'span 5'"],[style*="gridColumn: 'span 3'"],[style*="gridColumn: 'span 2'"],[style*="gridColumn: 'span 8'"],[style*="gridColumn: 'span 4'"],[style*="gridColumn: 'span 12'"]{grid-column:span 1!important}[style*="font-size: 64px"]{font-size:48px!important}[style*="font-size: 36px"]{font-size:28px!important}.app-topbar-v3{padding:0 16px!important}.page-header-v3{padding:0!important}.app-topbar-menu-item-v3{padding:8px 10px!important;font-size:13px!important}.app-topbar-menu-item-v3 span:not(.topbar-icon){display:none}[class*=v3-device-hero]{padding:20px!important}[class*=v3-device-hero] h2{font-size:18px!important}}@media (max-width:480px){[style*="font-size: 48px"]{font-size:36px!important}}.ant-table-tbody>tr>td{font-size:14px;border-bottom:1px solid #8b5cf60f!important;padding:16px 24px!important}.ant-table-thead>tr>th{text-transform:uppercase!important;letter-spacing:.05em!important;color:var(--ink-500)!important;border-bottom:1px solid var(--ink-100)!important;font-size:11px!important;font-weight:500!important;font-family:var(--font-mono)!important;background:#ede9fe4d!important;padding:16px 24px!important}.ant-table-tbody>tr:hover>td{background:#8b5cf60a!important}.ant-card{border-radius:var(--radius-2xl)!important}.ant-card-head{border-bottom:1px solid var(--ink-100)!important}.ant-input,.ant-input-affix-wrapper,.ant-select-selector,.ant-picker{border-radius:var(--radius-lg)!important;background:var(--ink-50)!important;transition:all var(--motion-fast) var(--ease)!important;font-family:var(--font-sans)!important;border-color:#0000!important}.ant-input:focus,.ant-input-affix-wrapper:focus,.ant-input-affix-wrapper-focused,.ant-select-focused .ant-select-selector,.ant-picker-focused{background:var(--bg-panel)!important;box-shadow:0 0 0 3px #8b5cf626!important}.ant-modal-header{border-bottom:1px solid var(--ink-100)!important;padding:20px 24px!important}.ant-modal-body{padding:24px!important}.ant-modal-content{border-radius:var(--radius-3xl)!important}.ant-tabs-tab.ant-tabs-tab-active .ant-tabs-tab-btn{font-weight:600;color:var(--brand-600)!important}.ant-tabs-ink-bar{border-radius:2px;background:linear-gradient(90deg,#8b5cf6,#f472b6)!important;height:3px!important}.ant-empty{padding:48px 0!important}.ant-btn-primary{background:linear-gradient(135deg,#8b5cf6 0%,#f472b6 100%)!important;border:none!important;box-shadow:0 1px 3px #0000000a!important}.ant-btn-primary:hover{transform:translateY(-1px);box-shadow:var(--shadow-glow)!important;background:linear-gradient(135deg,#7c3aed 0%,#ec4899 100%)!important}.ant-layout,.ant-layout-content,.ant-layout-sider{background:0 0!important}.text-center{text-align:center}.flex-center{justify-content:center;align-items:center;display:flex}.scroll-area{flex:1;padding:32px;overflow-y:auto}@media (max-width:768px){.scroll-area{padding:16px}.app-page-header{flex-direction:column;align-items:flex-start;gap:12px}.bento-card,.glass-card,.glass-card-light,.glass-card-tinted{padding:20px}.stat-card-value{font-size:28px}}.ai-workspace-middle{flex:1;gap:12px;min-height:0;display:flex}@media (max-width:768px){.ai-workspace-middle{flex-direction:column}.ai-workspace-left,.ai-workspace-right{min-height:320px;flex:1 1 0!important}}@media (min-width:768px) and (max-width:991px){.ai-workspace-middle{gap:8px}}.stats-pane-compact{flex-wrap:wrap;align-items:center;gap:32px;display:flex}@media (max-width:768px){.stats-pane-compact{gap:12px;font-size:12px}.stats-pane-compact>div[style*="width: 1"]{display:none}.ant-form-item-control-input-content .ant-select,.ant-form-item-control-input-content .ant-input{width:100%!important;min-width:0!important}}
