@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";:root{--primary:#073577;--primary-light:#004aad;--primary-dark:#052a5e;--primary-bright:#0a5bd8;--primary-surface:#eaf2ff;--bg:#f7f9fc;--surface:#fff;--border:#e5eaf2;--border-light:#f1f5f9;--text:#1f2937;--text-secondary:#6b7280;--text-muted:#9ca3af;--success:#16a34a;--warning:#d97706;--danger:#dc2626;--info:#2563eb;--radius:10px;--radius-lg:14px;--shadow-xs:0 1px 2px #0000000a;--shadow-sm:0 1px 3px #0000000f, 0 1px 2px #0000000a;--shadow-md:0 4px 6px -1px #0000000f, 0 2px 4px -2px #0000000a;--shadow-lg:0 10px 15px -3px #0000000f, 0 4px 6px -4px #0000000a;--transition:.15s cubic-bezier(.4, 0, .2, 1);--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,sans-serif;font-size:14px;line-height:1.5}#root{min-height:100vh}.kpi-card{background:var(--surface);border-radius:var(--radius-lg);border:1px solid var(--border-light);box-shadow:var(--shadow-xs);transition:all var(--transition);padding:20px 22px;position:relative;overflow:hidden}.kpi-card:before{content:"";background:linear-gradient(90deg, var(--primary), var(--primary-light));opacity:0;height:3px;transition:opacity var(--transition);position:absolute;top:0;left:0;right:0}.kpi-card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.kpi-card:hover:before{opacity:1}.kpi-card .ant-statistic-title{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px;font-size:11.5px;font-weight:500}.kpi-card .ant-statistic-content{color:var(--text);font-size:26px;font-weight:700;line-height:1.2}.kpi-card .ant-statistic-content-prefix{color:var(--primary);opacity:.7;margin-right:8px;font-size:18px}.chart-card{border-radius:var(--radius-lg);border:1px solid var(--border-light);box-shadow:var(--shadow-xs);transition:box-shadow var(--transition)}.chart-card:hover{box-shadow:var(--shadow-sm)}.chart-card .ant-card-head{border-bottom:1px solid var(--border-light);min-height:auto;padding:14px 22px}.chart-card .ant-card-head-title{color:var(--text);letter-spacing:-.01em;font-size:13.5px;font-weight:600}.chart-card .ant-card-body{cursor:pointer;padding:16px 22px 20px}.chart-card .ant-card-body div[dir=ltr],.chart-card .ant-card-body svg,.chart-card .ant-card-body svg *{cursor:pointer!important}.ant-card{border:1px solid var(--border-light);box-shadow:var(--shadow-xs);border-radius:var(--radius-lg)!important}.ant-card-head{border-bottom-color:var(--border-light)}.ant-table{border-radius:var(--radius-lg)}.ant-table-thead>tr>th{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border);font-size:11px;font-weight:600;position:relative;background:var(--bg)!important;padding:10px 16px!important}.ant-table-thead>tr>th .react-resizable-handle{cursor:col-resize;width:6px;position:absolute;top:0;bottom:0;right:0}.ant-table-tbody>tr>td{border-bottom:1px solid var(--border-light);transition:background var(--transition);font-size:13.5px;padding:10px 16px!important}.ant-table-tbody>tr:hover>td{background:var(--primary-surface)!important}.ant-table-tbody>tr{transition:background var(--transition)}.ant-tag{border:none;border-radius:6px;padding:1px 8px;font-size:11.5px;font-weight:500;line-height:20px}.ant-input,.ant-input-affix-wrapper,.ant-select-selector,.ant-picker{border-radius:var(--radius)!important;border-color:var(--border)!important;transition:all var(--transition)!important}.ant-input:focus,.ant-input-affix-wrapper:focus,.ant-input-affix-wrapper-focused,.ant-select-focused .ant-select-selector{border-color:var(--primary)!important;box-shadow:0 0 0 3px #07357714!important}.ant-btn{border-radius:var(--radius);transition:all var(--transition);font-weight:500;box-shadow:none!important}.ant-btn-primary{background:linear-gradient(135deg, var(--primary), var(--primary-light));border-color:#0000}.ant-btn-primary:hover{transform:translateY(-.5px);background:linear-gradient(135deg, var(--primary-light), #05c)!important;border-color:#0000!important}.ant-btn-default{border-color:var(--border)}.ant-btn-default:hover{border-color:var(--primary)!important;color:var(--primary)!important}.chat-container{background:linear-gradient(180deg, var(--bg) 0%, #f1f5f9 100%);border-radius:0 0 var(--radius-lg) var(--radius-lg);flex-direction:column;height:calc(100vh - 140px);display:flex}.chat-messages{flex:1;padding:24px;overflow-y:auto}.chat-input{border-top:1px solid var(--border-light);background:var(--surface);border-radius:0 0 var(--radius-lg) var(--radius-lg);padding:16px 24px}.message-bubble{white-space:pre-wrap;max-width:72%;box-shadow:var(--shadow-xs);border-radius:18px;margin-bottom:12px;padding:12px 16px;font-size:13.5px;line-height:1.6}.message-user{background:linear-gradient(135deg, var(--primary), var(--primary-light));color:#fff;border-bottom-right-radius:4px;margin-left:auto}.message-assistant{background:var(--surface);color:var(--text);border:1px solid var(--border-light);border-bottom-left-radius:4px;margin-right:auto}.sidebar-menu .ant-menu-item{height:40px;transition:all var(--transition);border-radius:8px;font-size:13.5px;font-weight:500;line-height:40px;color:#fff9!important;margin:3px 10px!important}.sidebar-menu .ant-menu-item:hover{color:#fff!important;background:#ffffff14!important}.sidebar-menu .ant-menu-item-selected{font-weight:600;color:#fff!important;background:#ffffff24!important}.sidebar-menu .ant-menu-item-selected:after{display:none}.ant-progress-bg{border-radius:4px!important}.loading-center{justify-content:center;align-items:center;min-height:400px;display:flex}.batch-bar{border-radius:var(--radius);background:var(--primary-surface);border:1px solid #bfdbfe;justify-content:space-between;align-items:center;margin-bottom:12px;padding:10px 16px;animation:.2s slideDown;display:flex}.batch-progress-bar{border-radius:var(--radius);background:linear-gradient(135deg,#eaf2ff,#f0f5ff);border:1px solid #bfdbfe;margin-bottom:12px;padding:14px 18px;animation:.2s slideDown}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#9ca3af}.ant-card,.ant-table-wrapper,.ant-tag,.ant-btn{transition:all var(--transition)}.ant-table-wrapper .ant-table-container{border-radius:var(--radius-lg)}.ant-card-bordered{border-color:var(--border-light)}.ant-descriptions-bordered .ant-descriptions-item-label{background:var(--bg)}.ant-timeline-item-tail{border-inline-start-color:var(--border-light)}.mobile-sidebar-drawer .ant-drawer-body{background:linear-gradient(#0a3d84 0%,#042552 50%,#021b3d 100%);padding:0!important}.mobile-sidebar-drawer .ant-drawer-header{display:none}@media (width<=1024px){.kpi-card{padding:16px 18px}.kpi-card .ant-statistic-content{font-size:22px}.chart-card .ant-card-body{padding:12px 16px 16px}.chat-container{height:calc(100vh - 120px)}}@media (width<=768px){body{font-size:14px}.kpi-card{padding:14px 16px}.kpi-card .ant-statistic-title{margin-bottom:4px;font-size:10.5px}.kpi-card .ant-statistic-content{font-size:20px}.kpi-card .ant-statistic-content-prefix{margin-right:6px;font-size:15px}.chart-card .ant-card-head{padding:12px 16px}.chart-card .ant-card-body{padding:8px 12px 14px}.chat-container{height:calc(100vh - 110px)}.chat-messages{padding:16px}.chat-input{padding:12px 16px}.message-bubble{max-width:88%;padding:10px 14px;font-size:13px}.ant-table-thead>tr>th{font-size:10px;padding:8px 10px!important}.ant-table-tbody>tr>td{font-size:12.5px;padding:8px 10px!important}.ant-btn{min-height:36px}.ant-btn-sm{min-height:32px}.ant-card-body{padding:16px!important}.ant-input,.ant-input-affix-wrapper,.ant-select-selector,.ant-picker{min-height:38px!important}.mobile-sidebar-drawer .sidebar-menu .ant-menu-item{height:48px;font-size:15px;line-height:48px;margin:4px 12px!important}}@media (width<=480px){.kpi-card .ant-statistic-content{font-size:18px}.message-bubble{max-width:92%}.ant-card-body{padding:12px!important}}
