:root{--bg-primary:#0b1220;--bg-secondary:#111827;--bg-card:#151d2e;--bg-card-hover:#1a2438;--bg-elevated:#1c2639;--bg-sidebar:#0d1526;--bg-input:#0f172a;--border:#243044;--border-subtle:#1e293b;--text-primary:#f1f5f9;--text-secondary:#94a3b8;--text-muted:#64748b;--accent:#6366f1;--accent-secondary:#8b5cf6;--accent-gradient:linear-gradient(135deg, #6366f1 0%, #8b5cf6 100%);--accent-soft:#6366f126;--success:#22c55e;--warning:#f59e0b;--error:#ef4444;--shadow:0 4px 24px #00000040;--radius:12px;--radius-sm:8px;--radius-lg:16px;--sidebar-width:260px;--sidebar-collapsed:0px;--header-height:72px;--font:"DM Sans", "Segoe UI", system-ui, sans-serif;--transition:.2s ease}[data-theme=light]{--bg-primary:#f1f5f9;--bg-secondary:#fff;--bg-card:#fff;--bg-card-hover:#f8fafc;--bg-elevated:#f8fafc;--bg-sidebar:#fff;--bg-input:#fff;--border:#e2e8f0;--border-subtle:#e2e8f0;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#64748b;--shadow:0 4px 24px #0f172a14;--accent-soft:#6366f11a}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{min-height:100%}body{font-family:var(--font);background:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;line-height:1.5}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:none}img{max-width:100%;display:block}ul,ol{list-style:none}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.app-shell{background:var(--bg-primary);min-height:100vh;display:flex}.main-area{flex-direction:column;flex:1;min-width:0;min-height:100vh;display:flex}.page-content{flex:1;width:100%;max-width:1280px;margin:0 auto;padding:24px 28px 40px}.page-header{margin-bottom:28px}.page-header h1{letter-spacing:-.02em;margin-bottom:6px;font-size:1.75rem;font-weight:700}.page-header p{color:var(--text-secondary);font-size:.95rem}.section-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.section-header h2{font-size:1.1rem;font-weight:600}.view-all{color:var(--accent);transition:opacity var(--transition);font-size:.875rem;font-weight:500}.view-all:hover{opacity:.8}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.btn{border-radius:var(--radius-sm);transition:transform var(--transition), box-shadow var(--transition), background var(--transition), opacity var(--transition);justify-content:center;align-items:center;gap:8px;padding:10px 18px;font-size:.9rem;font-weight:600;display:inline-flex}.btn:hover{transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn-primary{background:var(--accent-gradient);color:#fff;box-shadow:0 4px 14px #6366f159}.btn-primary:hover{box-shadow:0 6px 18px #6366f173}.btn-ghost{color:var(--text-secondary);border:1px solid var(--border);background:0 0}.btn-ghost:hover{background:var(--bg-elevated);color:var(--text-primary)}.btn-sm{padding:6px 12px;font-size:.8rem}.input,.select,.textarea{background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;color:var(--text-primary);transition:border-color var(--transition);padding:10px 14px}.input:focus,.select:focus,.textarea:focus{border-color:var(--accent);outline:none}.textarea{resize:vertical;min-height:180px;line-height:1.6}.badge{letter-spacing:.02em;border-radius:999px;align-items:center;padding:2px 8px;font-size:.7rem;font-weight:600;display:inline-flex}.entity-badge{letter-spacing:.03em;background:color-mix(in srgb, var(--entity-color) 18%, transparent);color:var(--entity-color);border:1px solid color-mix(in srgb, var(--entity-color) 35%, transparent);border-radius:6px;align-items:center;gap:4px;padding:2px 8px;font-size:.7rem;font-weight:700;display:inline-flex}.grid-2{grid-template-columns:repeat(2,1fr);gap:20px;display:grid}.grid-4{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.overlay{z-index:40;opacity:0;pointer-events:none;transition:opacity var(--transition);background:#00000080;position:fixed;inset:0}.overlay.open{opacity:1;pointer-events:auto}.empty-state{text-align:center;color:var(--text-secondary);padding:48px 24px}.empty-state svg{opacity:.5;margin:0 auto 16px}.empty-state h3{color:var(--text-primary);margin-bottom:8px}.search-field{width:100%;max-width:420px;position:relative}.search-field svg{color:var(--text-muted);pointer-events:none;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.search-field .input{padding-left:38px}.file-badge{background:var(--bg-elevated);color:var(--text-secondary);border:1px solid var(--border)}.entity-dots{flex-wrap:wrap;gap:4px;display:flex}.sr-only{clip:rect(0, 0, 0, 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=1100px){.grid-4{grid-template-columns:repeat(2,1fr)}}@media (width<=900px){.grid-2{grid-template-columns:1fr}.page-content{padding:20px 16px 32px}}@media (width<=600px){.grid-4{grid-template-columns:1fr}.page-header h1{font-size:1.4rem}}.sidebar{width:var(--sidebar-width);background:var(--bg-sidebar);border-right:1px solid var(--border);z-index:50;flex-direction:column;flex-shrink:0;height:100vh;display:flex;position:sticky;top:0}.sidebar-top{justify-content:space-between;align-items:flex-start;gap:8px;padding:22px 18px 18px;display:flex}.sidebar-brand{align-items:center;gap:12px;display:flex}.brand-mark{background:var(--accent-gradient);letter-spacing:.02em;color:#fff;border-radius:10px;flex-shrink:0;place-items:center;width:40px;height:40px;font-size:.7rem;font-weight:800;display:grid}.brand-title{font-size:1.05rem;font-weight:700;line-height:1.2}.brand-sub{color:var(--text-muted);margin-top:2px;font-size:.7rem}.sidebar-close{color:var(--text-secondary);border-radius:6px;padding:4px;display:none}.sidebar-close:hover{background:var(--bg-elevated);color:var(--text-primary)}.sidebar-nav{flex-direction:column;flex:1;gap:2px;padding:8px 12px;display:flex;overflow-y:auto}.nav-item{border-radius:var(--radius-sm);color:var(--text-secondary);transition:background var(--transition), color var(--transition);align-items:center;gap:12px;padding:10px 12px;font-size:.9rem;font-weight:500;display:flex}.nav-item:hover{background:var(--bg-elevated);color:var(--text-primary)}.nav-item.active{background:var(--accent-soft);color:#c7d2fe}.sidebar-bottom{border-top:1px solid var(--border);flex-direction:column;gap:12px;padding:12px;display:flex}.user-profile{border-radius:var(--radius-sm);text-align:left;width:100%;transition:background var(--transition);align-items:center;gap:10px;padding:8px;display:flex}.user-profile:hover{background:var(--bg-elevated)}.avatar{background:var(--accent-gradient);color:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:36px;height:36px;font-size:.85rem;font-weight:700;display:grid;overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%}.user-meta{flex:1;min-width:0}.user-name{font-size:.875rem;font-weight:600;line-height:1.2}.user-sub{color:var(--text-muted);font-size:.72rem}.user-chevron{color:var(--text-muted);flex-shrink:0}.model-card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-sm);padding:12px}.model-card-top{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.model-label{color:var(--text-muted);font-size:.75rem;font-weight:500}.model-status{color:var(--success);align-items:center;gap:5px;font-size:.72rem;font-weight:600;display:inline-flex}.status-dot{background:var(--success);border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 3px #22c55e33}.model-name{color:var(--text-secondary);margin-bottom:10px;font-size:.8rem}.model-change{width:100%}@media (width<=900px){.sidebar{transition:transform var(--transition);box-shadow:var(--shadow);position:fixed;top:0;left:0;transform:translate(-100%)}.sidebar.open{transform:translate(0)}.sidebar-close{place-items:center;display:grid}}.top-header{justify-content:space-between;align-items:flex-start;gap:16px;width:100%;max-width:1280px;margin:0 auto;padding:24px 28px 0;display:flex}.header-left{align-items:flex-start;gap:12px;min-width:0;display:flex}.header-title{letter-spacing:-.02em;font-size:1.65rem;font-weight:700;line-height:1.25}.header-subtitle{color:var(--text-secondary);margin-top:4px;font-size:.925rem}.header-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.icon-btn{width:40px;height:40px;color:var(--text-secondary);background:var(--bg-card);border:1px solid var(--border);transition:background var(--transition), color var(--transition);border-radius:10px;place-items:center;display:grid;position:relative}.icon-btn:hover{background:var(--bg-elevated);color:var(--text-primary)}.menu-btn{display:none}.notif-dot{background:var(--accent);border:2px solid var(--bg-card);border-radius:50%;width:7px;height:7px;position:absolute;top:10px;right:11px}.header-avatar{background:var(--accent-gradient);color:#fff;border-radius:50%;place-items:center;width:40px;height:40px;font-size:.85rem;font-weight:700;display:grid;overflow:hidden}.header-avatar img{object-fit:cover;width:100%;height:100%}@media (width<=900px){.top-header{padding:16px 16px 0}.menu-btn{display:grid}.header-title{font-size:1.35rem}}.hero-card{background:radial-gradient(ellipse at top right, #6366f11f, transparent 55%), var(--bg-card);grid-template-columns:1.1fr 1fr;gap:28px;margin-bottom:28px;padding:28px;display:grid}.hero-content h2{letter-spacing:-.02em;margin-bottom:10px;font-size:1.45rem;font-weight:700}.hero-content p{color:var(--text-secondary);max-width:42ch;margin-bottom:20px}.hero-viz{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:14px;padding:20px;display:flex}.viz-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);font-size:.72rem;font-weight:600}.viz-sentence{color:var(--text-primary);font-size:1.05rem;line-height:2}.entity-mark{background:color-mix(in srgb, var(--entity-color,#60a5fa) 18%, transparent);border-bottom:2px solid var(--entity-color,#60a5fa);color:inherit;white-space:nowrap;border-radius:4px;align-items:center;gap:6px;margin:0 2px;padding:2px 4px;display:inline-flex}.entity-mark .entity-badge{padding:1px 5px;font-size:.6rem}.viz-legend{border-top:1px solid var(--border-subtle);flex-wrap:wrap;gap:6px;padding-top:8px;display:flex}@media (width<=900px){.hero-card{grid-template-columns:1fr;padding:22px}.entity-mark{white-space:normal;flex-wrap:wrap}}.quick-action{transition:background var(--transition), border-color var(--transition), transform var(--transition);align-items:flex-start;gap:14px;padding:18px;display:flex}.quick-action:hover{background:var(--bg-card-hover);border-color:color-mix(in srgb, var(--accent) 40%, var(--border));transform:translateY(-2px)}.qa-icon{background:var(--accent-soft);color:#a5b4fc;border-radius:10px;flex-shrink:0;place-items:center;width:40px;height:40px;display:grid}.qa-body{flex:1;min-width:0}.qa-body h3{margin-bottom:4px;font-size:.95rem;font-weight:600}.qa-body p{color:var(--text-secondary);font-size:.8rem;line-height:1.4}.qa-arrow{color:var(--text-muted);transition:transform var(--transition), color var(--transition);flex-shrink:0;margin-top:4px}.quick-action:hover .qa-arrow{color:var(--accent);transform:translate(2px)}.recent-section{margin-bottom:28px}.recent-list{overflow:hidden}.recent-row{border-bottom:1px solid var(--border-subtle);grid-template-columns:auto 1fr auto auto;align-items:center;gap:14px;padding:14px 18px;display:grid}.recent-row:last-child{border-bottom:none}.recent-row:hover{background:var(--bg-card-hover)}.recent-file-icon{background:var(--bg-elevated);border:1px solid var(--border);color:#93c5fd;border-radius:10px;place-items:center;width:40px;height:40px;display:grid}.recent-main{min-width:0}.recent-title-row{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:6px;display:flex}.recent-filename{font-size:.925rem;font-weight:600}.recent-meta{color:var(--text-secondary);flex-wrap:wrap;align-items:center;gap:8px;font-size:.8rem;display:flex}.dot{background:var(--text-muted);border-radius:50%;width:3px;height:3px}.recent-time{color:var(--text-muted);white-space:nowrap;font-size:.8rem}.icon-menu{width:32px;height:32px;color:var(--text-muted);border-radius:8px;place-items:center;display:grid}.icon-menu:hover{background:var(--bg-elevated);color:var(--text-primary)}@media (width<=700px){.recent-row{grid-template-columns:auto 1fr auto;grid-template-areas:"icon main menu""icon time menu"}.recent-file-icon{grid-area:icon}.recent-main{grid-area:main}.recent-time{grid-area:time}.icon-menu{grid-area:menu}}.stats-card{flex-direction:column;height:100%;padding:22px;display:flex}.stats-body{flex:1;grid-template-columns:auto 1fr;align-items:center;gap:20px;display:grid}.donut{width:140px;height:140px}.donut-total{fill:var(--text-primary);font-size:18px;font-weight:700;font-family:var(--font)}.donut-label{fill:var(--text-muted);font-size:11px;font-family:var(--font)}.stats-list{flex-direction:column;gap:8px;display:flex}.stats-list li{grid-template-columns:auto 1fr auto;align-items:center;gap:10px;font-size:.85rem;display:grid}.stat-dot{border-radius:50%;width:8px;height:8px}.stat-type{color:var(--text-secondary)}.stat-count{color:var(--text-primary);font-weight:600}.insights-link{color:var(--accent);align-items:center;gap:6px;margin-top:18px;font-size:.875rem;font-weight:560;display:inline-flex}.insights-link:hover{opacity:.85}@media (width<=500px){.stats-body{grid-template-columns:1fr;justify-items:center}.stats-list{width:100%}}.how-section{margin-top:8px}.how-steps{grid-template-columns:repeat(4,1fr);gap:8px;padding:22px;display:grid;position:relative}.how-step{padding-right:18px;position:relative}.how-icon{background:var(--accent-soft);color:#a5b4fc;border-radius:10px;place-items:center;width:40px;height:40px;margin-bottom:12px;display:grid}.how-num{margin-bottom:6px;font-size:.95rem;font-weight:600}.how-step p{color:var(--text-secondary);max-width:22ch;font-size:.825rem;line-height:1.45}.how-arrow{color:var(--text-muted);font-size:1.1rem;position:absolute;top:14px;right:0}@media (width<=900px){.how-steps{grid-template-columns:repeat(2,1fr);gap:20px}.how-arrow{display:none}.how-step{padding-right:0}}@media (width<=500px){.how-steps{grid-template-columns:1fr}}.quick-section{margin-bottom:28px}.home-grid{grid-template-columns:1.4fr 1fr;align-items:start;gap:20px;margin-bottom:28px;display:grid}@media (width<=1000px){.home-grid{grid-template-columns:1fr}}.entity-table-wrap{overflow-x:auto}.entity-table{border-collapse:collapse;width:100%;font-size:.9rem}.entity-table th{text-align:left;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--border);white-space:nowrap;padding:14px 16px;font-size:.75rem;font-weight:500}.entity-table td{border-bottom:1px solid var(--border-subtle);color:var(--text-secondary);padding:14px 16px}.entity-table tr:last-child td{border-bottom:none}.entity-table tbody tr:hover{background:var(--bg-card-hover)}.entity-name{font-weight:560;color:var(--text-primary)!important}.confidence{align-items:center;gap:8px;min-width:110px;display:flex}.confidence-bar{background:var(--border);border-radius:999px;flex:1;height:6px;overflow:hidden}.confidence-fill{background:var(--accent-gradient);border-radius:999px;height:100%}.entity-table-empty{text-align:center;color:var(--text-secondary);padding:32px}@media (width<=768px){.entity-table thead{display:none}.entity-table,.entity-table tbody,.entity-table tr,.entity-table td{width:100%;display:block}.entity-table tr{border-bottom:1px solid var(--border);padding:12px 16px}.entity-table td{border-bottom:none;justify-content:space-between;align-items:center;gap:12px;padding:8px 0;display:flex}.entity-table td:before{content:attr(data-label);color:var(--text-muted);font-size:.75rem;font-weight:500}}.explore-metrics{grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:16px;display:grid}.explore-metric{padding:16px}.explore-metric span{color:var(--text-muted);margin-bottom:6px;font-size:.78rem;display:block}.explore-metric strong{font-size:1.35rem}.explore-toolbar{flex-direction:column;gap:14px;margin-bottom:20px;padding:16px;display:flex}.explore-controls{flex-wrap:wrap;gap:12px;display:flex}.explore-select{max-width:220px}.filter-chips{flex-wrap:wrap;gap:8px;display:flex}.chip{color:var(--text-secondary);background:var(--bg-elevated);border:1px solid var(--border);transition:background var(--transition), color var(--transition), border-color var(--transition);border-radius:999px;align-items:center;gap:8px;padding:6px 12px;font-size:.75rem;font-weight:600;display:inline-flex}.chip span{color:var(--text-muted);font-size:.7rem}.chip:hover{color:var(--text-primary)}.chip.active{background:var(--accent-soft);color:#c7d2fe;border-color:color-mix(in srgb, var(--accent) 45%, var(--border))}@media (width<=800px){.explore-metrics{grid-template-columns:1fr}.explore-controls .search-field,.explore-select{width:100%;max-width:none}}.analyze-grid{grid-template-columns:1.6fr 1fr;gap:20px;margin-bottom:20px;display:grid}.analyze-input{padding:20px}.mode-tabs{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.mode-tab{border-radius:var(--radius-sm);color:var(--text-secondary);background:var(--bg-elevated);border:1px solid var(--border);align-items:center;gap:8px;padding:8px 14px;font-size:.85rem;font-weight:560;display:inline-flex}.mode-tab.active{background:var(--accent-soft);color:#c7d2fe;border-color:color-mix(in srgb, var(--accent) 45%, var(--border))}.upload-zone{border:1px dashed var(--border);border-radius:var(--radius);background:var(--bg-elevated);color:var(--text-secondary);text-align:center;cursor:pointer;transition:border-color var(--transition), background var(--transition);flex-direction:column;justify-content:center;align-items:center;gap:8px;margin-bottom:14px;padding:28px 16px;display:flex}.upload-zone:hover{border-color:var(--accent);background:var(--accent-soft)}.upload-hint{color:var(--text-muted);font-size:.75rem}.analyze-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:14px;display:flex}.analyze-actions .btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.formats{color:var(--text-muted);font-size:.8rem}.analyze-summary{height:fit-content;padding:20px}.analyze-summary h3,.analyze-results h3{margin-bottom:14px;font-size:1rem}.summary-empty{color:var(--text-secondary);font-size:.9rem}.summary-list{flex-direction:column;gap:10px;display:flex}.summary-list li{justify-content:space-between;align-items:center;display:flex}.summary-count{font-weight:700}.summary-total{border-top:1px solid var(--border);color:var(--text-secondary);margin-top:16px;padding-top:14px;font-size:.9rem}.engine-label{color:var(--text-muted);margin-top:6px;font-size:.8rem;display:block}.analysis-message{align-items:flex-start;gap:8px;margin-top:12px;font-size:.84rem;line-height:1.45;display:flex}.analysis-message.error{color:var(--error)}.analysis-message.warning{color:var(--warning)}.spin{animation:.85s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.analyze-results{padding:22px}.result-text{margin-bottom:16px;font-size:1.05rem;line-height:2.1}.result-legend{border-top:1px solid var(--border);flex-wrap:wrap;gap:12px;padding-top:14px;display:flex}.legend-item{color:var(--text-secondary);align-items:center;gap:8px;font-size:.85rem;display:inline-flex}@media (width<=900px){.analyze-grid{grid-template-columns:1fr}}.image-upload{margin-bottom:20px;padding:24px}.image-drop{border:1px dashed var(--border);border-radius:var(--radius);background:var(--bg-elevated);text-align:center;cursor:pointer;color:var(--text-secondary);flex-direction:column;align-items:center;gap:10px;margin-bottom:18px;padding:48px 20px;display:flex}.image-drop:hover{border-color:var(--accent);background:var(--accent-soft)}.image-drop h3{color:var(--text-primary);font-size:1.05rem}.image-drop p{max-width:42ch;font-size:.875rem}.image-preview{object-fit:contain;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-input);width:min(420px,100%);max-height:260px}.image-actions{flex-wrap:wrap;gap:10px;display:flex}.image-actions .btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.image-message{align-items:flex-start;gap:8px;margin-top:12px;font-size:.84rem;line-height:1.45;display:flex}.image-message.error{color:var(--error)}.image-message.warning{color:var(--warning)}.image-results{padding:22px}.image-results h3{margin-bottom:14px}.ocr-text{margin-bottom:12px;font-size:1.05rem;line-height:2.1}.ocr-note{color:var(--text-muted);font-size:.8rem}.ocr-empty{color:var(--text-secondary);margin-bottom:12px}.insight-kpis{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:20px;display:grid}.kpi{padding:18px}.kpi-label{color:var(--text-muted);margin-bottom:8px;font-size:.8rem;display:block}.kpi-value{letter-spacing:-.02em;font-size:1.6rem;font-weight:700}.kpi-note{color:var(--text-muted);margin-top:8px;font-size:.76rem;display:block}.insight-overview{grid-template-columns:minmax(0,1fr) minmax(260px,.8fr);align-items:center;gap:20px;margin-bottom:20px;padding:20px;display:grid}.overview-label{color:var(--text-muted);margin-bottom:6px;font-size:.78rem;display:block}.insight-overview strong{margin-bottom:6px;font-size:1.1rem;display:block}.insight-overview p{color:var(--text-secondary);font-size:.9rem}.overview-strip{background:var(--border);border-radius:999px;min-width:0;height:18px;display:flex;overflow:hidden}.overview-strip span{min-width:8px}.insight-charts{grid-template-columns:1.2fr 1fr 1fr;gap:16px;display:grid}.chart-card{padding:20px}.chart-card h3{margin-bottom:18px;font-size:.95rem}.dist-list{flex-direction:column;gap:12px;display:flex}.dist-meta{color:var(--text-secondary);justify-content:space-between;margin-bottom:6px;font-size:.8rem;display:flex}.dist-track{background:var(--border);border-radius:999px;height:8px;overflow:hidden}.dist-fill{border-radius:999px;height:100%}.bar-chart{align-items:flex-end;gap:12px;height:160px;padding-top:8px;display:flex}.bar-col{flex-direction:column;flex:1;align-items:center;gap:8px;height:100%;display:flex}.bar-track{background:var(--bg-elevated);border-radius:8px 8px 4px 4px;flex:1;align-items:flex-end;width:100%;display:flex;overflow:hidden}.bar-fill{background:var(--accent-gradient);border-radius:8px 8px 0 0;width:100%;min-height:4px}.bar-value{color:var(--text-secondary);font-size:.68rem}.bar-label{color:var(--text-muted);font-size:.7rem}@media (width<=1000px){.insight-kpis{grid-template-columns:repeat(2,1fr)}.insight-charts,.insight-overview{grid-template-columns:1fr}}@media (width<=500px){.insight-kpis{grid-template-columns:1fr}}.dataset-kpis{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:16px;display:grid}.dataset-kpi{padding:16px}.dataset-kpi span{color:var(--text-muted);margin-bottom:6px;font-size:.78rem;display:block}.dataset-kpi strong{font-size:1.35rem}.datasets-toolbar{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:12px;margin-bottom:20px;padding:16px;display:flex}.dataset-select{max-width:190px}.datasets-subhead{color:var(--text-secondary);justify-content:space-between;gap:12px;margin-bottom:14px;font-size:.9rem;display:flex}.datasets-grid{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.dataset-card{padding:20px}.dataset-top{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.dataset-top h3{font-size:1.05rem}.dataset-title{align-items:center;gap:10px;min-width:0;display:flex}.dataset-title svg{color:var(--accent);flex:none}.dataset-title h3{overflow-wrap:anywhere}.status-badge{border-radius:999px;padding:3px 8px;font-size:.7rem;font-weight:700}.status-ready{color:var(--success);background:#22c55e26}.status-processing{color:var(--warning);background:#f59e0b26}.status-draft{color:var(--text-secondary);background:#94a3b826}.dataset-meta{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px;display:grid}.dataset-share{background:var(--border);border-radius:999px;height:7px;margin-bottom:14px;overflow:hidden}.dataset-share span{border-radius:inherit;background:var(--accent-gradient);height:100%;display:block}.dataset-meta dt{color:var(--text-muted);margin-bottom:2px;font-size:.72rem}.dataset-meta dd{font-size:.9rem;font-weight:600}.dataset-types{flex-wrap:wrap;gap:6px;display:flex}.dataset-empty{text-align:center;color:var(--text-secondary);margin-top:16px;padding:28px}@media (width<=1000px){.dataset-kpis{grid-template-columns:repeat(2,1fr)}}@media (width<=700px){.dataset-kpis,.datasets-grid{grid-template-columns:1fr}.dataset-select,.datasets-toolbar .search-field,.datasets-toolbar .btn{width:100%;max-width:none}.datasets-subhead{flex-direction:column}}.history-kpis{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:16px;display:grid}.history-kpi{padding:16px}.history-kpi span{color:var(--text-muted);margin-bottom:6px;font-size:.78rem;display:block}.history-kpi strong{font-size:1.35rem}.history-filters{flex-direction:column;gap:12px;margin-bottom:20px;padding:16px;display:flex}.history-filter-top,.history-management,.history-bulk{align-items:center;gap:10px;display:flex}.history-filter-top{flex-wrap:wrap;justify-content:space-between}.history-management{flex-wrap:wrap}.filter-row{grid-template-columns:repeat(3,minmax(0,180px));gap:10px;display:grid}.danger-btn:hover{color:var(--error);border-color:color-mix(in srgb, var(--error) 40%, var(--border))}.history-bulk{color:var(--text-secondary);justify-content:space-between;margin-bottom:16px;padding:12px 16px}.history-table-wrap{overflow-x:auto}.history-table{border-collapse:collapse;width:100%;font-size:.9rem}.history-table th{text-align:left;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--border);white-space:nowrap;padding:14px 16px;font-size:.75rem;font-weight:500}.history-table th:first-child,.history-table td:first-child{width:44px}.history-table input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent)}.history-table td{border-bottom:1px solid var(--border-subtle);color:var(--text-secondary);vertical-align:middle;padding:14px 16px}.history-table tr:last-child td{border-bottom:none}.hist-name{font-weight:560;color:var(--text-primary)!important}.hist-actions{flex-wrap:wrap;gap:6px;display:flex}.action-btn{color:var(--text-secondary);background:var(--bg-elevated);border:1px solid var(--border);border-radius:6px;align-items:center;gap:5px;padding:5px 10px;font-size:.75rem;font-weight:560;display:inline-flex}.action-btn:hover{color:var(--text-primary)}.action-btn.danger:hover{color:var(--error);border-color:color-mix(in srgb, var(--error) 40%, var(--border))}.history-empty{text-align:center;color:var(--text-secondary);padding:28px}.history-detail{margin-top:16px;padding:18px}.history-detail-head{border-bottom:1px solid var(--border);justify-content:space-between;gap:12px;padding-bottom:14px;display:flex}.history-detail-head h3{font-size:1rem}.history-detail-head p{color:var(--text-secondary);margin-top:3px;font-size:.85rem}.history-detail-grid{grid-template-columns:repeat(3,1fr);gap:12px;margin:14px 0;display:grid}.history-detail-grid dt{color:var(--text-muted);margin-bottom:2px;font-size:.72rem}.history-detail-grid dd{color:var(--text-secondary);font-size:.88rem}.history-detail-types{flex-wrap:wrap;gap:6px;display:flex}@media (width<=1000px){.history-kpis{grid-template-columns:repeat(2,1fr)}}@media (width<=900px){.history-kpis,.filter-row{grid-template-columns:1fr}.history-filter-top,.history-management,.history-management .btn,.history-bulk,.history-bulk .btn{width:100%}.history-filter-top,.history-bulk{flex-direction:column;align-items:stretch}.history-table thead{display:none}.history-table,.history-table tbody,.history-table tr,.history-table td{width:100%;display:block}.history-table tr{border-bottom:1px solid var(--border);padding:12px 16px}.history-table td{border-bottom:none;justify-content:space-between;align-items:center;gap:12px;padding:8px 0;display:flex}.history-table td:before{content:attr(data-label);color:var(--text-muted);font-size:.75rem;font-weight:500}.history-detail-grid{grid-template-columns:1fr}}.settings-page{flex-direction:column;gap:16px;max-width:920px;display:flex}.settings-section{padding:22px}.settings-section h2{border-bottom:1px solid var(--border);margin-bottom:8px;padding-bottom:12px;font-size:1.05rem}.settings-heading{border-bottom:1px solid var(--border);justify-content:space-between;gap:16px;margin-bottom:16px;padding-bottom:14px;display:flex}.settings-heading h2{border:0;margin:0 0 4px;padding:0}.settings-heading p,.settings-note{color:var(--text-secondary);font-size:.84rem}.settings-note{margin-top:12px}.settings-note.error{color:var(--error)}.settings-note code{color:var(--text-primary);font-size:.82rem}.account-pill{height:fit-content;color:var(--text-secondary);background:var(--bg-elevated);border:1px solid var(--border);border-radius:999px;padding:4px 10px;font-size:.74rem;font-weight:700}.account-pill.connected{color:var(--success);border-color:color-mix(in srgb, var(--success) 38%, var(--border));background:color-mix(in srgb, var(--success) 12%, transparent)}.account-card{border-radius:var(--radius-sm);background:var(--bg-elevated);border:1px solid var(--border);align-items:center;gap:14px;padding:14px;display:flex}.account-avatar{color:#fff;background:var(--accent-gradient);border-radius:50%;flex:none;place-items:center;width:52px;height:52px;display:grid;overflow:hidden}.account-avatar img{object-fit:cover;width:100%;height:100%}.account-main{min-width:0}.account-main strong,.account-main span,.account-main small{display:block}.account-main span{color:var(--text-secondary);overflow-wrap:anywhere;font-size:.88rem}.account-main small{color:var(--text-muted);margin-top:3px}.account-actions,.profile-editor{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.account-actions .btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.profile-editor{border-top:1px solid var(--border-subtle);align-items:flex-end;padding-top:14px}.profile-editor label{flex:220px}.profile-editor .setting-label{margin-bottom:6px;display:block}.setting-row{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;gap:16px;padding:16px 0;display:flex}.setting-row:last-child{border-bottom:none;padding-bottom:0}.setting-label{font-size:.925rem;font-weight:600}.setting-desc{color:var(--text-secondary);margin-top:2px;font-size:.8rem}.setting-value{color:var(--text-secondary);font-size:.875rem;font-weight:560}.setting-control{width:160px}.theme-segments{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-elevated);gap:4px;padding:4px;display:inline-flex}.theme-segments button{min-width:76px;color:var(--text-secondary);text-transform:capitalize;border-radius:6px;padding:6px 10px;font-size:.8rem;font-weight:650}.theme-segments button.active{color:#fff;background:var(--accent)}.toggle{background:var(--border);width:44px;height:24px;transition:background var(--transition);border-radius:999px;flex-shrink:0;padding:2px}.toggle.on{background:var(--accent)}.toggle-thumb{width:20px;height:20px;transition:transform var(--transition);background:#fff;border-radius:50%;display:block}.toggle.on .toggle-thumb{transform:translate(20px)}.settings-security{border-radius:var(--radius-sm);color:var(--text-secondary);background:var(--bg-elevated);border:1px solid var(--border);align-items:center;gap:8px;margin-top:16px;padding:12px;font-size:.84rem;display:flex}@media (width<=600px){.setting-row{flex-direction:column;align-items:flex-start}.setting-control{width:100%}.settings-heading,.account-card{flex-direction:column;align-items:flex-start}.theme-segments,.theme-segments button,.account-actions .btn,.profile-editor .btn{width:100%}}.help-grid{grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:20px;display:grid}.help-card{transition:background var(--transition), transform var(--transition), border-color var(--transition);padding:20px}.help-card:hover{background:var(--bg-card-hover);border-color:color-mix(in srgb, var(--accent) 35%, var(--border));transform:translateY(-2px)}.help-icon{background:var(--accent-soft);color:#a5b4fc;border-radius:10px;place-items:center;width:40px;height:40px;margin-bottom:12px;display:grid}.help-card h3{margin-bottom:6px;font-size:1rem}.help-card p{color:var(--text-secondary);font-size:.875rem;line-height:1.45}.help-flow{padding:22px}.help-flow h2{margin-bottom:14px;font-size:1.05rem}.help-flow ol{counter-reset:help;flex-direction:column;gap:12px;display:flex}.help-flow li{color:var(--text-secondary);border-left:2px solid var(--border);padding-left:8px;font-size:.925rem}.help-flow strong{color:var(--text-primary)}@media (width<=700px){.help-grid{grid-template-columns:1fr}}
