@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";:root{--color-bg: #fafafa;--color-surface: #ffffff;--color-border: #e5e5e5;--color-border-subtle: #f0f0f0;--color-text-primary: #171717;--color-text-secondary: #525252;--color-text-tertiary: #a3a3a3;--color-accent: #171717;--color-accent-hover: #404040;--color-success: #22c55e;--color-success-bg: #f0fdf4;--color-error: #ef4444;--color-error-bg: #fef2f2;--color-info: #3b82f6;--color-info-bg: #eff6ff;--color-warning: #f59e0b;--color-warning-bg: #fffbeb;--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--space-2xl: 48px;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-xl: 20px;--shadow-sm: 0 1px 2px rgba(0,0,0,.04);--shadow-md: 0 4px 12px rgba(0,0,0,.06);--shadow-lg: 0 12px 40px rgba(0,0,0,.08);--transition-fast: .15s ease;--transition-base: .2s ease;--transition-slow: .3s ease}*{box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background-color:var(--color-bg);color:var(--color-text-primary);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.sidebar{background-color:var(--color-surface);border-right:1px solid var(--color-border);min-height:100vh;padding:var(--space-xl) var(--space-lg);display:flex;flex-direction:column}.sidebar-brand{font-size:13px;font-weight:600;letter-spacing:-.02em;color:var(--color-text-primary);margin-bottom:var(--space-2xl);display:flex;align-items:center;gap:var(--space-sm)}.sidebar-brand-icon{width:28px;height:28px;background:var(--color-accent);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:12px}.nav-section{margin-bottom:var(--space-xl)}.nav-section-title{font-size:11px;font-weight:600;color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-sm);padding:0 var(--space-sm)}.nav-link{color:var(--color-text-secondary);font-weight:500;font-size:13px;padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);transition:all var(--transition-fast);display:flex;align-items:center;gap:var(--space-sm);margin-bottom:2px}.nav-link:hover{color:var(--color-text-primary);background-color:var(--color-bg)}.nav-link.active{background-color:var(--color-accent);color:#fff}.nav-link i{width:18px;height:18px;opacity:.7}.nav-link.active i{opacity:1}.sidebar-footer{margin-top:auto;padding-top:var(--space-lg);border-top:1px solid var(--color-border-subtle)}.sidebar-bottom-actions{margin-bottom:var(--space-lg)}.metric-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-lg);transition:all var(--transition-base);position:relative;overflow:hidden}.metric-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--color-border);transition:background var(--transition-base)}.metric-card:hover{border-color:var(--color-border);box-shadow:var(--shadow-md);transform:translateY(-2px)}.metric-card.accent-success:before{background:var(--color-success)}.metric-card.accent-error:before{background:var(--color-error)}.metric-card.accent-info:before{background:var(--color-info)}.metric-label{font-size:11px;color:var(--color-text-tertiary);margin-bottom:var(--space-xs);font-weight:600;text-transform:uppercase;letter-spacing:.04em}.metric-value{font-size:28px;font-weight:700;color:var(--color-text-primary);letter-spacing:-.02em;line-height:1.2}.metric-value.accent-green{color:var(--color-success)}.metric-value.accent-red{color:var(--color-error)}.metric-value.accent-blue{color:var(--color-info)}.metric-value.accent-amber{color:var(--color-warning)}.metric-description{font-size:12px;color:var(--color-text-tertiary);margin-top:var(--space-sm);line-height:1.5}.metric-trend{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:500;margin-top:var(--space-sm)}.metric-trend.up{color:var(--color-success)}.metric-trend.down{color:var(--color-error)}.status-badge{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:var(--radius-xl);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.badge-green{background:var(--color-success-bg);color:#15803d}.badge-red{background:var(--color-error-bg);color:#b91c1c}.badge-neutral{background:var(--color-bg);color:var(--color-text-secondary)}.card{border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);background:var(--color-surface)}.card-header{background:transparent;border-bottom:1px solid var(--color-border-subtle);padding:var(--space-md) var(--space-lg)}.status-strip{display:flex;justify-content:space-between;align-items:center;gap:var(--space-md);padding:var(--space-sm) var(--space-md);border:1px solid var(--color-border-subtle);background:var(--color-surface);border-radius:var(--radius-md);margin-bottom:var(--space-md);font-size:12px;color:var(--color-text-secondary)}.status-left,.status-right{display:flex;align-items:center;gap:var(--space-sm)}.status-dot{width:8px;height:8px;border-radius:50%;background:var(--color-warning);box-shadow:0 0 #f59e0b99;animation:statusPulse 2s ease-in-out infinite}.status-dot.live{background:var(--color-success);box-shadow:0 0 #22c55e73}.status-dot.syncing{background:var(--color-warning);box-shadow:0 0 #f59e0b73}@keyframes statusPulse{0%{box-shadow:0 0 #22c55e59}70%{box-shadow:0 0 0 8px #22c55e00}to{box-shadow:0 0 #22c55e00}}.status-sep{opacity:.6}.sync-toggle{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--color-text-secondary)}.sync-toggle input{accent-color:var(--color-info)}.preset-bar{display:flex;flex-wrap:wrap;gap:var(--space-sm);margin-top:var(--space-sm)}.preset-pill{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-secondary);font-size:12px;padding:4px 10px;border-radius:999px;transition:all var(--transition-fast)}.preset-pill.active,.preset-pill:hover{border-color:var(--color-info);color:var(--color-info);background:var(--color-info-bg)}.signal-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-md);min-height:90px;display:flex;flex-direction:column;justify-content:space-between}.signal-label{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-tertiary)}.signal-value{font-size:20px;font-weight:700;color:var(--color-text-primary)}.signal-detail{font-size:12px;color:var(--color-text-secondary)}.analytics-sparklines{display:none;gap:var(--space-md);align-items:center}.analytics-panel.collapsed .analytics-sparklines{display:flex}.sparkline-item{display:flex;flex-direction:column;gap:2px}.sparkline-label{font-size:10px;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-tertiary)}.sparkline polyline{fill:none;stroke:var(--color-info);stroke-width:2}.chart-explain{margin-top:var(--space-sm);font-size:12px;color:var(--color-text-secondary)}.chart-explain-toggle{background:transparent;border:none;color:var(--color-info);font-size:12px;padding:0;cursor:pointer}.chart-explain-body{margin-top:var(--space-xs);display:none}.chart-explain-title{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-tertiary)}.chart-explain-text{margin-top:6px;line-height:1.45}.chart-explain-list{margin:6px 0 0 16px;padding:0;line-height:1.45}.chart-explain-list li{margin-bottom:4px}.chart-explain.open .chart-explain-body{display:block}.empty-state-hint{margin-top:6px;font-size:11px;color:var(--color-text-tertiary)}.search-input{display:inline-flex;align-items:center;gap:6px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:999px;padding:4px 10px;font-size:12px;color:var(--color-text-secondary)}.search-input input{border:none;outline:none;font-size:12px;background:transparent;color:var(--color-text-primary);min-width:140px}.anomaly-strip{display:flex;flex-wrap:wrap;gap:var(--space-sm);margin-bottom:var(--space-lg)}.anomaly-pill{background:var(--color-warning-bg);color:var(--color-warning);border:1px solid var(--color-warning);font-size:11px;padding:4px 8px;border-radius:999px}.anomaly-pill.positive{background:#22c55e1f;color:var(--color-success);border-color:var(--color-success)}.anomaly-pill.negative{background:#ef44441f;color:var(--color-error);border-color:var(--color-error)}.section-title{font-size:13px;font-weight:600;color:var(--color-text-primary);margin-bottom:var(--space-md);display:flex;align-items:center;gap:var(--space-sm)}.section-title:before{content:"";width:3px;height:16px;background:var(--color-accent);border-radius:2px}.analytics-panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);margin-bottom:var(--space-lg);overflow:hidden;box-shadow:var(--shadow-sm)}.analytics-panel-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-md) var(--space-lg);background:linear-gradient(to right,#f8fafc,#fff);border-bottom:1px solid var(--color-border);cursor:pointer;-webkit-user-select:none;user-select:none;transition:background var(--transition-fast)}.analytics-panel-header:hover{background:linear-gradient(to right,#f1f5f9,#f8fafc)}.analytics-panel.collapsed .analytics-panel-header{border-bottom:none;border-left:3px solid var(--color-info)}.analytics-panel.collapsed .analytics-panel-hint{opacity:.7}.analytics-panel.collapsed .analytics-panel-toggle i{animation:subtleBounce 2s ease-in-out 3}@keyframes subtleBounce{0%,to{transform:rotate(180deg) translateY(0)}50%{transform:rotate(180deg) translateY(-3px)}}.analytics-panel-title{display:flex;align-items:center;gap:var(--space-sm);font-weight:600;font-size:14px;color:var(--color-text-primary)}.analytics-panel-badge{background:var(--color-info-bg);color:var(--color-info);font-size:11px;font-weight:500;padding:2px 8px;border-radius:10px;margin-left:var(--space-xs)}.analytics-panel-toggle{display:flex;align-items:center;gap:var(--space-sm);color:var(--color-text-tertiary)}.analytics-panel-hint{font-size:12px;opacity:0;transition:opacity var(--transition-fast)}.analytics-panel-header:hover .analytics-panel-hint{opacity:1}.analytics-panel-content{padding:var(--space-lg);max-height:5000px;opacity:1;transition:max-height .4s cubic-bezier(.4,0,.2,1),opacity .3s ease,padding .4s cubic-bezier(.4,0,.2,1)}.analytics-panel-content.collapsed{max-height:0;padding-top:0;padding-bottom:0;opacity:0;overflow:hidden}.chart-group{margin-bottom:var(--space-xl)}.chart-group:last-child{margin-bottom:0}.chart-group-title{font-size:11px;font-weight:600;color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-md);padding-bottom:var(--space-xs);border-bottom:1px dashed var(--color-border-subtle)}.chart-description{font-size:12px;color:var(--color-text-tertiary);margin-bottom:var(--space-sm);margin-top:-4px}.chart-group .row{margin-bottom:0}.chart-group .row>[class*=col-]{margin-bottom:var(--space-md)}.btn{font-weight:500;font-size:13px;padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);transition:all var(--transition-fast);display:inline-flex;align-items:center;gap:var(--space-sm)}.btn-primary{background:var(--color-accent);border:none;color:#fff}.btn-primary:hover{background:var(--color-accent-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-outline{background:transparent;border:1px solid var(--color-border);color:var(--color-text-primary)}.btn-outline:hover{background:var(--color-bg);border-color:var(--color-text-tertiary)}.btn-ghost{background:transparent;border:none;color:var(--color-text-secondary);padding:var(--space-xs) var(--space-sm)}.btn-ghost:hover{background:var(--color-bg);color:var(--color-text-primary)}.btn-icon{width:32px;height:32px;padding:0;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm)}.form-select,.form-control{border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:13px;padding:var(--space-sm) var(--space-md);transition:all var(--transition-fast);background-color:var(--color-surface);color:var(--color-text-primary)}.form-select:focus,.form-control:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px #17171714;outline:none}.form-label{font-size:12px;font-weight:500;color:var(--color-text-secondary);margin-bottom:var(--space-xs)}.filter-bar{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);margin-bottom:var(--space-lg)}.filter-group{display:flex;align-items:center;gap:var(--space-sm)}.filter-label{font-size:12px;color:var(--color-text-tertiary);white-space:nowrap}.filter-divider{width:1px;height:24px;background:var(--color-border)}.pagination{gap:var(--space-xs)}.pagination .page-link{color:var(--color-text-primary);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-sm) var(--space-md);font-size:13px;font-weight:500;transition:all var(--transition-fast)}.pagination .page-link:hover{background:var(--color-bg);border-color:var(--color-text-tertiary)}.pagination .page-item.active .page-link{background:var(--color-accent);border-color:var(--color-accent);color:#fff}.pagination .page-item.disabled .page-link{color:var(--color-text-tertiary);background:var(--color-bg)}.img-zoom-overlay{position:fixed;inset:0;background:#000000d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:none;align-items:center;justify-content:center;z-index:2000;padding:var(--space-xl)}.img-zoom-overlay.open{display:flex;animation:fadeIn var(--transition-base)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.img-zoom-modal{background:#0a0a0a;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-lg);width:min(1200px,96vw);height:min(86vh,860px);display:flex;flex-direction:column;overflow:hidden;box-shadow:0 25px 80px #00000080;animation:scaleIn var(--transition-base)}@keyframes scaleIn{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.img-zoom-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);padding:var(--space-md) var(--space-lg);background:#ffffff08;border-bottom:1px solid rgba(255,255,255,.06)}.img-zoom-title{color:#fffc;font-size:13px;font-weight:500}.img-zoom-actions{display:flex;align-items:center;gap:var(--space-sm)}.img-zoom-stage{flex:1;background:#000;display:flex;align-items:center;justify-content:center;overflow:auto;cursor:zoom-in}.img-zoom-stage.grabbing{cursor:grabbing}.img-zoom-img{max-width:100%;max-height:100%;transform-origin:center center;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.thumbnail-img{max-width:150px;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);transition:all var(--transition-base)}.thumbnail-img:hover{box-shadow:var(--shadow-md);transform:scale(1.02)}.feedback-box{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-md);font-size:13px;min-height:60px;color:var(--color-text-secondary)}.chart-container{background:var(--color-bg);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);padding:var(--space-md);transition:all var(--transition-base);height:100%}.chart-container:hover{border-color:var(--color-border);box-shadow:var(--shadow-sm)}.chart-container h5{font-size:13px;font-weight:600;color:var(--color-text-primary);margin-bottom:var(--space-sm);padding-bottom:var(--space-xs);border-bottom:1px solid var(--color-border-subtle)}.chart-section{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);margin-bottom:var(--space-lg);overflow:hidden}.chart-section summary{padding:var(--space-lg);cursor:pointer;font-weight:600;font-size:15px;color:var(--color-text-primary);display:flex;align-items:center;justify-content:space-between;transition:background var(--transition-fast);-webkit-user-select:none;user-select:none}.chart-section summary:hover{background:var(--color-bg)}.chart-section summary:after{content:"›";font-size:24px;transform:rotate(0);transition:transform var(--transition-fast);color:var(--color-text-tertiary)}.chart-section[open] summary:after{transform:rotate(90deg)}.chart-section-content{padding:0 var(--space-lg) var(--space-lg) var(--space-lg);animation:slideDown var(--transition-base)}.chart-section-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;background:var(--color-bg);border-radius:var(--radius-xl);font-size:11px;font-weight:500;color:var(--color-text-tertiary)}.chart-loading{text-align:center;padding:var(--space-2xl);color:var(--color-text-tertiary)}.last-updated{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-xl);font-size:11px;color:var(--color-text-secondary);font-weight:500}.saved-feedback-box{background:var(--color-success-bg);border:1px solid #bbf7d0;border-radius:var(--radius-md);padding:var(--space-md);margin-top:var(--space-md)}.saved-feedback-badge{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:var(--radius-xl);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.3px}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.spinner-border{color:var(--color-accent);width:24px;height:24px;border-width:2px}@keyframes skeleton-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton{background:linear-gradient(90deg,var(--color-border-subtle) 0%,var(--color-bg) 50%,var(--color-border-subtle) 100%);background-size:200% 100%;animation:skeleton-shimmer 1.5s ease-in-out infinite;border-radius:var(--radius-sm)}.skeleton-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-lg);margin-bottom:var(--space-md)}.skeleton-header{height:20px;width:50%;margin-bottom:var(--space-md)}.skeleton-text{height:14px;width:100%;margin-bottom:var(--space-sm)}.skeleton-text.short{width:30%}.skeleton-text.medium{width:60%}.skeleton-badge{height:24px;width:72px;border-radius:var(--radius-xl);display:inline-block}.skeleton-image{width:120px;height:120px;border-radius:var(--radius-md)}.chart-skeleton{height:200px;background:linear-gradient(90deg,var(--color-border-subtle) 0%,var(--color-bg) 50%,var(--color-border-subtle) 100%);background-size:200% 100%;animation:skeleton-shimmer 1.5s ease-in-out infinite;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center}.chart-skeleton:after{content:"Loading chart...";color:var(--color-text-tertiary);font-size:12px}.chart-loading-progress{background:var(--color-info-bg);border:1px solid var(--color-info);border-radius:var(--radius-md);padding:var(--space-md);margin-bottom:var(--space-md)}.chart-loading-progress .progress-text{font-size:13px;color:var(--color-info);font-weight:500;margin-bottom:var(--space-sm)}.chart-loading-progress .progress-bar-container{height:6px;background:var(--color-border);border-radius:3px;overflow:hidden}.chart-loading-progress .progress-bar-fill{height:100%;background:var(--color-info);border-radius:3px;transition:width .3s ease}.cache-indicator{font-size:11px;padding:4px 10px;border-radius:var(--radius-xl);display:inline-flex;align-items:center;gap:5px;font-weight:500}.cache-indicator.cached{background:var(--color-success-bg);color:#15803d}.cache-indicator.fresh{background:var(--color-info-bg);color:#1d4ed8}.log-entry.loading{opacity:.5;pointer-events:none}.filter-input-wrapper{position:relative}.filter-input-wrapper .debounce-indicator{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:14px;height:14px;border:2px solid var(--color-border);border-top-color:var(--color-accent);border-radius:50%;animation:spin .6s linear infinite;opacity:0;transition:opacity var(--transition-fast)}@keyframes spin{to{transform:translateY(-50%) rotate(360deg)}}.filter-input-wrapper.typing .debounce-indicator{opacity:1}.image-placeholder{width:150px;height:150px;background:var(--color-bg);border:1px dashed var(--color-border);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;color:var(--color-text-tertiary);font-size:12px}.image-loading{position:relative}.image-loading:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:20px;height:20px;border:2px solid #e5e7eb;border-top-color:#2563eb;border-radius:50%;animation:spin .6s linear infinite}@keyframes spin{to{transform:translate(-50%,-50%) rotate(360deg)}}.thumbnail-img.loaded{opacity:1;transition:opacity .3s ease}.thumbnail-img:not(.loaded){opacity:.3}.toast-container{position:fixed;top:20px;right:20px;z-index:9999;display:flex;flex-direction:column;gap:10px}.toast-notification{min-width:320px;max-width:400px;background:#fff;border-radius:12px;box-shadow:0 8px 24px #00000026;padding:16px 20px;display:flex;align-items:center;gap:12px;animation:slideInRight .3s ease-out;border-left:4px solid}.toast-notification.success{border-left-color:#10b981}.toast-notification.error{border-left-color:#ef4444}.toast-notification.info{border-left-color:#3b82f6}.toast-notification.warning{border-left-color:#f59e0b}.toast-icon{font-size:24px;line-height:1}.toast-notification.success .toast-icon{color:#10b981}.toast-notification.error .toast-icon{color:#ef4444}.toast-notification.info .toast-icon{color:#3b82f6}.toast-notification.warning .toast-icon{color:#f59e0b}.toast-content{flex:1}.toast-title{font-weight:600;font-size:14px;margin-bottom:2px;color:#1f2937}.toast-message{font-size:13px;color:#6b7280}.toast-close{background:none;border:none;font-size:20px;color:#9ca3af;cursor:pointer;padding:0;line-height:1;transition:color .2s}.toast-close:hover{color:#4b5563}@keyframes slideInRight{0%{transform:translate(400px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideOutRight{0%{transform:translate(0);opacity:1}to{transform:translate(400px);opacity:0}}.toast-notification.hiding{animation:slideOutRight .3s ease-out forwards}.col-md-10.p-4{padding:var(--space-xl) var(--space-2xl)!important;background:var(--color-bg)}.row.mb-4{margin-bottom:var(--space-lg)!important}.empty-state{text-align:center;padding:var(--space-2xl);color:var(--color-text-tertiary)}.empty-state-icon{width:48px;height:48px;margin-bottom:var(--space-md);opacity:.5}.empty-state-title{font-size:16px;font-weight:600;color:var(--color-text-secondary);margin-bottom:var(--space-xs)}.empty-state-description{font-size:13px;color:var(--color-text-tertiary)}.alert{border-radius:var(--radius-md);border:none;font-size:13px}.alert-danger{background:var(--color-error-bg);color:#991b1b}.alert-success{background:var(--color-success-bg);color:#15803d}#dashboard-page,#logs-page{animation:fadeInPage var(--transition-base)}@keyframes fadeInPage{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}*:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-bg)}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--color-text-tertiary)}[data-tooltip]{position:relative}[data-tooltip]:after{content:attr(data-tooltip);position:absolute;bottom:100%;left:50%;transform:translate(-50%);padding:6px 10px;background:var(--color-text-primary);color:#fff;font-size:11px;border-radius:var(--radius-sm);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity var(--transition-fast),transform var(--transition-fast)}[data-tooltip]:hover:after{opacity:1;transform:translate(-50%) translateY(-4px)}@media(max-width:1200px){.filter-bar{gap:var(--space-sm)}.filter-divider{display:none}}@media(max-width:768px){.sidebar{display:none}.col-md-10.p-4{padding:var(--space-md)!important}}.log-entry{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);margin-bottom:var(--space-lg);transition:all var(--transition-base);overflow:hidden;box-shadow:0 1px 3px #0000000d}.log-entry:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-1px);border-color:var(--color-border-hover, #d0d0d0)}.log-entry-header{padding:var(--space-lg) var(--space-lg);cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);transition:all var(--transition-fast);border-left:4px solid transparent;position:relative}.log-entry-header:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(to bottom,transparent,var(--color-primary),transparent);opacity:0;transition:opacity var(--transition-fast)}.log-entry-header:hover{background:var(--color-bg)}.log-entry-header:hover:before{opacity:.3}.log-entry.action-accept .log-entry-header{border-left-color:var(--color-success)}.log-entry.action-cancel .log-entry-header{border-left-color:var(--color-error)}.log-entry.action-pending .log-entry-header{border-left-color:var(--color-warning)}.log-header-row{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);margin-bottom:var(--space-md);transition:all var(--transition-base);overflow:hidden}.log-header-row:hover{box-shadow:var(--shadow-md)}.log-header-row.action-accept{border-left:3px solid var(--color-success)}.log-header-row.action-cancel{border-left:3px solid var(--color-error)}.log-header-row.action-pending{border-left:3px solid var(--color-warning)}.log-header-content{padding:var(--space-md) var(--space-lg);cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);transition:background var(--transition-fast)}.log-header-content:hover{background:var(--color-bg)}.log-header-main{display:flex;flex-direction:column;gap:var(--space-xs);flex:1}.log-header-id{display:flex;align-items:center;gap:var(--space-sm);font-size:14px}.log-header-meta{display:flex;align-items:center;gap:var(--space-md);font-size:12px;color:var(--color-text-secondary)}.log-header-summary{display:flex;align-items:center;gap:var(--space-sm)}.log-details-container{border-top:1px solid var(--color-border)}.log-entry-meta{display:flex;align-items:center;gap:var(--space-lg);flex:1;min-width:0}.log-entry-id-group{display:flex;flex-direction:column;gap:2px}.log-entry-id-label{font-size:9px;color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.03em;font-weight:500}.log-entry-id{font-size:12px;color:var(--color-text-primary);font-weight:500;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.log-entry-time{font-size:12px;color:var(--color-text-tertiary);display:flex;align-items:center;gap:6px}.log-entry-time i{width:14px;height:14px}.log-entry-badges{display:flex;align-items:center;gap:var(--space-lg)}.log-section{display:flex;flex-direction:column;gap:4px}.log-section-label{font-size:10px;color:var(--color-text-tertiary);font-weight:500;text-transform:uppercase;letter-spacing:.03em}.log-badge-status{font-size:11px;font-weight:600;padding:5px 12px;border-radius:6px;text-transform:uppercase;letter-spacing:.03em;box-shadow:0 1px 2px #0000000d;transition:all var(--transition-fast)}.log-badge-status:hover{transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.log-badge-status.accepted{background:linear-gradient(135deg,#dcfce7,#bbf7d0);color:#15803d;border:1px solid #86efac}.log-badge-status.cancelled{background:linear-gradient(135deg,#fee2e2,#fecaca);color:#b91c1c;border:1px solid #fca5a5}.log-badge-status.pending{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#d97706;border:1px solid #fcd34d}.log-transformation-size{font-size:12px;font-weight:600;color:var(--color-text-primary);padding:5px 12px;background:linear-gradient(135deg,var(--color-surface) 0%,var(--color-bg) 100%);border-radius:6px;border:1px solid var(--color-border);box-shadow:0 1px 2px #0000000d;transition:all var(--transition-fast)}.log-transformation-size:hover{border-color:var(--color-primary);box-shadow:0 2px 4px #0000001a}.log-metrics{display:flex;align-items:center;gap:var(--space-sm)}.log-metric{display:flex;align-items:center;gap:6px;padding:5px 12px;background:var(--color-bg);border-radius:6px;border:1px solid var(--color-border-subtle);box-shadow:0 1px 2px #00000008;transition:all var(--transition-fast)}.log-metric:hover{border-color:var(--color-border);box-shadow:0 2px 4px #00000014}.log-metric-source{font-size:10px;color:var(--color-text-tertiary);font-weight:500;text-transform:uppercase}.log-metric-value{font-size:12px;font-weight:600;color:var(--color-text-primary)}.log-metric-value.success{color:#15803d}.log-metric-value.warning{color:#d97706}.log-metric-value.error{color:#b91c1c}.log-metric-value.muted{color:var(--color-text-tertiary)}.log-entry-content{padding:var(--space-lg);display:none;border-top:1px solid var(--color-border-subtle);background:var(--color-bg)}.log-entry-content.show{display:block;animation:slideDown var(--transition-base)}.log-entry-layout{display:grid;grid-template-columns:340px 1fr;gap:var(--space-xl)}@media(max-width:992px){.log-entry-layout{grid-template-columns:1fr}}.preview-column{display:flex;flex-direction:column;gap:var(--space-md)}.preview-item{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-md);text-align:center}.preview-item-label{font-size:11px;font-weight:600;color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.03em;margin-bottom:var(--space-sm);display:flex;align-items:center;justify-content:center;gap:6px}.preview-item-size{font-size:10px;color:var(--color-text-tertiary);font-weight:400}.preview-item img{max-width:100%;height:auto;max-height:240px;object-fit:contain;border-radius:var(--radius-sm);cursor:pointer;transition:transform var(--transition-fast)}.preview-item img:hover{transform:scale(1.02)}.preview-item img[alt="Image unavailable"],.preview-item img[alt="Image not available"],.preview-item img[alt="Error loading image"],.preview-item img[alt="No image data"],.preview-item img.image-error{min-height:200px;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;border:2px dashed rgba(255,255,255,.3)}.feedback-column{display:flex;flex-direction:column;gap:var(--space-md)}.info-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-md)}.info-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-sm)}.info-card-title{font-size:11px;font-weight:600;color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.03em}.feedback-section{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-lg);margin-top:var(--space-md)}.feedback-section-title{font-size:12px;font-weight:600;color:var(--color-text-primary);margin-bottom:var(--space-md);display:flex;align-items:center;gap:var(--space-sm)}.feedback-section-title i{width:16px;height:16px;color:var(--color-text-tertiary)}.llm-feedback-box{background:var(--color-bg);border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);padding:var(--space-md);font-size:13px;color:var(--color-text-secondary);line-height:1.6;max-height:120px;overflow-y:auto}.decision-buttons{display:flex;gap:var(--space-sm);margin:var(--space-md) 0}.decision-btn{flex:1;padding:var(--space-sm) var(--space-md);border:1px solid var(--color-border);background:var(--color-surface);border-radius:var(--radius-sm);font-weight:500;font-size:12px;cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center;gap:6px}.decision-btn:hover{background:var(--color-bg);border-color:var(--color-text-tertiary)}.decision-btn.selected.no-change{background:var(--color-bg);border-color:var(--color-text-secondary);color:var(--color-text-secondary)}.decision-btn.selected.pass{background:var(--color-success-bg);border-color:var(--color-success);color:#15803d}.decision-btn.selected.fail{background:var(--color-error-bg);border-color:var(--color-error);color:#b91c1c}.variant-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);margin-bottom:var(--space-md);overflow:hidden}.variant-card-header{padding:var(--space-sm) var(--space-md);background:var(--color-bg);cursor:pointer;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--color-border-subtle);transition:background var(--transition-fast)}.variant-card-header:hover{background:var(--color-border-subtle)}.variant-card-title{font-size:12px;font-weight:600;color:var(--color-text-primary);display:flex;align-items:center;gap:var(--space-sm)}.variant-card-content{padding:var(--space-md);display:none}.variant-card-content.show{display:block}.variant-card.accepted{border:2px solid var(--color-success);background:var(--color-success-bg)}.variant-card.accepted .variant-card-header{background:#22c55e1a}.badge-accepted{background:var(--color-success-bg);color:#15803d;font-weight:600;padding:3px 8px;border-radius:var(--radius-sm);font-size:10px;text-transform:uppercase;letter-spacing:.03em}.pass-fail-summary{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:500;padding:4px 8px;border-radius:var(--radius-sm);background:var(--color-bg)}.pass-fail-summary .pass-count{color:var(--color-success)}.pass-fail-summary .fail-count{color:var(--color-error)}.pass-fail-summary .unknown-count{color:var(--color-text-tertiary)}.variants-summary{display:flex;align-items:center;gap:var(--space-md);padding:8px 12px;background:var(--color-bg);border-radius:var(--radius-sm);border:1px solid var(--color-border-subtle);margin-top:var(--space-sm)}.variants-summary-item{display:flex;align-items:center;gap:6px;font-size:12px}.variants-summary-item .label{color:var(--color-text-tertiary);font-weight:500}.variants-summary-item .value{font-weight:600}.variants-summary-item.pass .value{color:#15803d}.variants-summary-item.warning .value{color:#d97706}.variants-summary-item.pending .value{color:var(--color-text-tertiary)}.data-viewers{margin-top:var(--space-lg);border-top:1px solid var(--color-border-subtle);padding-top:var(--space-md);display:grid;grid-template-columns:1fr 1fr 1fr;gap:var(--space-md)}@media(max-width:1024px){.data-viewers{grid-template-columns:1fr 1fr}}@media(max-width:768px){.data-viewers{grid-template-columns:1fr}}.data-viewer-section{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-sm);transition:all var(--transition-base)}.data-viewer-section:hover{border-color:var(--color-primary);box-shadow:0 2px 8px #00000014}.data-viewer-section summary{font-size:12px;font-weight:600;color:var(--color-text-secondary);cursor:pointer;padding:var(--space-sm);display:flex;align-items:center;gap:var(--space-sm);border-radius:var(--radius-sm);transition:all var(--transition-fast);-webkit-user-select:none;user-select:none}.data-viewer-section summary:hover{background:var(--color-surface);color:var(--color-primary)}.data-viewer-section summary i{flex-shrink:0}.data-viewer-section[open] summary{border-bottom:1px solid var(--color-border);margin-bottom:var(--space-sm);background:var(--color-surface)}.data-viewer-section pre{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-md);font-size:11px;font-family:SF Mono,Monaco,Consolas,monospace;max-height:300px;overflow:auto;margin:var(--space-sm);color:var(--color-text-secondary);line-height:1.5}.prompt-content{padding:0}.prompt-content .no-data{padding:var(--space-lg);text-align:center;color:var(--color-text-tertiary);font-size:13px;font-style:italic}.loading-data{padding:var(--space-lg);text-align:center;color:var(--color-text-tertiary);font-size:13px;display:flex;align-items:center;justify-content:center;gap:var(--space-sm)}.no-data-message,.error-message{padding:var(--space-lg);text-align:center;border-radius:var(--radius-sm);background:var(--color-bg);display:flex;flex-direction:column;align-items:center;gap:var(--space-sm)}.error-message{background:#fee2e2;color:#b91c1c}.prompt-data-display{padding:var(--space-sm)}.prompt-summary{display:flex;flex-wrap:wrap;gap:var(--space-md);padding:var(--space-md);background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border:1px solid #bae6fd;border-radius:var(--radius-sm);margin-bottom:var(--space-md)}.prompt-summary-item{display:flex;flex-direction:column;gap:4px}.prompt-summary-item .label{font-size:11px;font-weight:500;color:#0369a1;text-transform:uppercase;letter-spacing:.05em}.prompt-summary-item .value{font-size:13px;font-weight:600;color:#0c4a6e}.prompt-section{margin-bottom:var(--space-md)}.prompt-section h4{font-size:13px;font-weight:600;color:var(--color-text-secondary);margin:0 0 var(--space-sm) 0}.prompt-section pre{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-sm);font-size:11px;font-family:SF Mono,Monaco,Consolas,monospace;max-height:300px;overflow:auto;margin:0;color:var(--color-text-secondary);line-height:1.5}.prompt-section pre.prompt-text{background:linear-gradient(135deg,#fefce8,#fef9c3);border:1px solid #fde047;padding:var(--space-md);font-size:12px;max-height:400px;white-space:pre-wrap;word-wrap:break-word;color:#422006}.visualization-container{padding:var(--space-sm);background:var(--color-bg)}.visualization-loading{padding:var(--space-lg);text-align:center;color:var(--color-text-tertiary);font-size:13px;display:flex;align-items:center;justify-content:center;gap:var(--space-sm)}.visualization-result{display:flex;flex-direction:column;gap:var(--space-sm)}.visualization-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-sm) 0;border-bottom:1px solid var(--color-border);margin-bottom:var(--space-sm)}.visualization-header h4{font-size:13px;font-weight:600;color:var(--color-text-primary);margin:0}.visualization-meta{font-size:11px;color:var(--color-text-tertiary);background:var(--color-surface);padding:3px 8px;border-radius:var(--radius-sm)}.visualization-result img{max-width:100%;border-radius:var(--radius-sm);box-shadow:0 2px 8px #0000001a}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spin{animation:spin 1s linear infinite}.json-details{margin-top:var(--space-lg);border-top:1px solid var(--color-border-subtle);padding-top:var(--space-md)}.json-details summary{font-size:12px;font-weight:500;color:var(--color-text-tertiary);cursor:pointer;padding:var(--space-sm) 0;display:flex;align-items:center;gap:var(--space-sm)}.json-details summary:hover{color:var(--color-text-secondary)}.json-details pre{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-md);font-size:11px;font-family:SF Mono,Monaco,monospace;max-height:250px;overflow:auto;margin-top:var(--space-sm);color:var(--color-text-secondary)}.status-row{display:flex;gap:var(--space-lg);margin-bottom:var(--space-md);flex-wrap:wrap}.status-item{display:flex;align-items:center;gap:var(--space-sm)}.status-item-label{font-size:12px;color:var(--color-text-tertiary)}.status-item-value{font-size:12px;font-weight:600}.status-item-value.success{color:var(--color-success)}.status-item-value.error{color:var(--color-error)}.logs-empty{text-align:center;padding:var(--space-2xl);background:var(--color-surface);border:1px dashed var(--color-border);border-radius:var(--radius-lg)}.logs-empty-icon{width:48px;height:48px;color:var(--color-text-tertiary);margin-bottom:var(--space-md);opacity:.5}.logs-empty-title{font-size:15px;font-weight:600;color:var(--color-text-secondary);margin-bottom:var(--space-xs)}.logs-empty-description{font-size:13px;color:var(--color-text-tertiary)}.log-pagination{display:flex;align-items:center;justify-content:center;gap:var(--space-xs)}.pagination-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:1px solid var(--color-border);background:var(--color-surface);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);color:var(--color-text-secondary)}.pagination-btn:hover:not(.disabled){background:var(--color-bg);border-color:var(--color-text-tertiary)}.pagination-btn.disabled{opacity:.4;cursor:not-allowed}.pagination-info{font-size:13px;font-weight:500;color:var(--color-text-secondary);padding:0 var(--space-md)}.variants-container{display:flex;flex-direction:column;gap:var(--space-sm)}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background:var(--color-text-primary);color:#fff;border:none;border-radius:var(--radius-sm);font-size:13px;font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.btn-primary:hover{background:#404040}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-xs);padding:var(--space-sm) var(--space-md);background:var(--color-surface);color:var(--color-text-secondary);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:13px;font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.btn-secondary:hover{background:var(--color-bg);border-color:var(--color-text-tertiary)}.form-control{border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-sm) var(--space-md);transition:border-color var(--transition-fast)}.form-control:focus{border-color:var(--color-text-tertiary);box-shadow:none;outline:none}.log-entry-content.loading{opacity:.6;pointer-events:none}.log-entry-content.loading:after{content:"Loading...";display:block;text-align:center;padding:var(--space-md);color:var(--color-text-tertiary);font-size:13px}.expand-icon{transition:all var(--transition-fast);background:var(--color-bg);border-radius:50%;padding:4px}.expand-icon:hover{background:var(--color-border);color:var(--color-primary)!important}.log-entry-header:hover .expand-icon{background:var(--color-surface)}.success-message{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background:var(--color-success-bg);border:1px solid var(--color-success);border-radius:var(--radius-sm);color:#15803d;font-size:12px;font-weight:500}.success-message i{width:14px;height:14px}.saved-feedback{margin-top:var(--space-md);padding:var(--space-md);background:var(--color-bg);border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm)}.saved-feedback-title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-tertiary);margin-bottom:var(--space-sm)}.saved-feedback-item{display:flex;align-items:center;gap:var(--space-sm);font-size:13px;color:var(--color-text-secondary);margin-bottom:var(--space-xs)}.saved-feedback-item:last-child{margin-bottom:0}.saved-feedback-label{font-weight:500;color:var(--color-text-tertiary)}.variety-heatmap{display:grid;gap:4px;align-items:center;margin-top:6px}.heatmap-corner{width:100%;height:100%}.heatmap-label{font-size:10px;font-weight:600;color:var(--color-text-tertiary);text-align:center}.heatmap-cell{display:flex;align-items:center;justify-content:center;height:24px;border-radius:6px;font-size:10px;font-weight:600;color:#1f2937;font-variant-numeric:tabular-nums}.heatmap-cell.diag{color:var(--color-text-tertiary)}.heatmap-cell.muted{background:var(--color-border);color:var(--color-text-tertiary)}.variety-heatmap-empty{font-size:11px;color:var(--color-text-tertiary)}.heatmap-legend{margin-top:6px;font-size:10px;color:var(--color-text-tertiary);display:flex;align-items:center;gap:8px}.heatmap-legend-scale{display:inline-flex;align-items:center;gap:4px}.heatmap-legend-swatch{width:12px;height:12px;border-radius:3px;border:1px solid rgba(0,0,0,.06)}.variety-heatmap-toggle{margin-top:6px}.variety-heatmap-toggle summary{cursor:pointer;font-size:11px;font-weight:600;color:var(--color-text-secondary);list-style:none}.variety-heatmap-toggle summary::-webkit-details-marker{display:none}.variety-heatmap-toggle summary:before{content:"▸";display:inline-block;margin-right:6px;transition:transform .2s ease}.variety-heatmap-toggle[open] summary:before{transform:rotate(90deg)}@layer components;@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-font-weight:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-red-50:oklch(97.1% .013 17.38);--color-red-200:oklch(88.5% .062 18.334);--color-red-700:oklch(50.5% .213 27.518);--color-amber-50:oklch(98.7% .022 95.277);--color-amber-200:oklch(92.4% .12 95.746);--color-amber-800:oklch(47.3% .137 46.201);--color-white:#fff;--spacing:.25rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--font-weight-medium:500;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--shadow-sm:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--ease-out:cubic-bezier(0,0,.2,1);--animate-spin:spin 1s linear infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-background:#f8f8f9;--color-bg:#f3f3f5;--color-surface:#fff;--color-border:#e8e8ec;--color-border-subtle:#f0f0f3;--color-text-primary:#1a1a1a;--color-text-secondary:#555;--color-text-tertiary:#999;--color-accent:#1a1a1a;--color-accent-hover:#111;--color-accent-subtle:#1a1a1a0f;--color-accent-soft:#1a1a1a0f;--color-accent-border:#1a1a1a26;--color-success:#2d8a4e;--color-success-bg:#2d8a4e14;--color-error:#c53030;--color-error-bg:#c5303014;--color-info:#1a1a1a;--color-info-bg:#1a1a1a0f;--color-warning:#b45309;--color-warning-bg:#b4530914;--font-family-sans:"Inter",system-ui,sans-serif;--font-family-display:"Inter",system-ui,sans-serif}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer utilities{.\!visible{visibility:visible!important}.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.relative{position:relative}.static{position:static}.inset-0{inset:calc(var(--spacing)*0)}.col-6{grid-column:6}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.mx-auto{margin-inline:auto}.ms-2{margin-inline-start:calc(var(--spacing)*2)}.ms-3{margin-inline-start:calc(var(--spacing)*3)}.me-1{margin-inline-end:calc(var(--spacing)*1)}.mt-3{margin-top:calc(var(--spacing)*3)}.mb-1{margin-bottom:calc(var(--spacing)*1)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-3{margin-bottom:calc(var(--spacing)*3)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.h-0\.5{height:calc(var(--spacing)*.5)}.h-3{height:calc(var(--spacing)*3)}.h-4{height:calc(var(--spacing)*4)}.h-5{height:calc(var(--spacing)*5)}.h-7{height:calc(var(--spacing)*7)}.h-48{height:calc(var(--spacing)*48)}.h-full{height:100%}.max-h-60{max-height:calc(var(--spacing)*60)}.min-h-screen{min-height:100vh}.w-1\/3{width:33.3333%}.w-3\/4{width:75%}.w-4{width:calc(var(--spacing)*4)}.w-14{width:calc(var(--spacing)*14)}.w-16{width:calc(var(--spacing)*16)}.w-20{width:calc(var(--spacing)*20)}.w-24{width:calc(var(--spacing)*24)}.w-28{width:calc(var(--spacing)*28)}.w-32{width:calc(var(--spacing)*32)}.w-36{width:calc(var(--spacing)*36)}.w-52{width:calc(var(--spacing)*52)}.w-100{width:calc(var(--spacing)*100)}.w-\[72px\]{width:72px}.w-\[220px\]{width:220px}.w-full{width:100%}.max-w-\[1180px\]{max-width:1180px}.max-w-\[1560px\]{max-width:1560px}.flex-1{flex:1}.flex-grow-1{flex-grow:1}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.animate-\[shimmer_1s_ease-in-out_infinite\]{animation:1s ease-in-out infinite shimmer}.animate-spin{animation:var(--animate-spin)}.cursor-zoom-in{cursor:zoom-in}.resize{resize:both}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-center{justify-content:center}.gap-2{gap:calc(var(--spacing)*2)}.gap-3{gap:calc(var(--spacing)*3)}.gap-4{gap:calc(var(--spacing)*4)}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*4)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*4)*calc(1 - var(--tw-space-y-reverse)))}.overflow-hidden{overflow:hidden}.rounded-\[14px\]{border-radius:14px}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-amber-200{border-color:var(--color-amber-200)}.border-border{border-color:var(--color-border)}.border-red-200{border-color:var(--color-red-200)}.bg-\[var\(--color-bg\)\]{background-color:var(--color-bg)}.bg-accent\/10{background-color:#1a1a1a1a}@supports (color:color-mix(in lab,red,red)){.bg-accent\/10{background-color:color-mix(in oklab,var(--color-accent)10%,transparent)}}.bg-accent\/50{background-color:#1a1a1a80}@supports (color:color-mix(in lab,red,red)){.bg-accent\/50{background-color:color-mix(in oklab,var(--color-accent)50%,transparent)}}.bg-amber-50{background-color:var(--color-amber-50)}.bg-red-50{background-color:var(--color-red-50)}.bg-white{background-color:var(--color-white)}.object-contain{object-fit:contain}.p-4{padding:calc(var(--spacing)*4)}.px-4{padding-inline:calc(var(--spacing)*4)}.px-6{padding-inline:calc(var(--spacing)*6)}.py-3{padding-block:calc(var(--spacing)*3)}.py-4{padding-block:calc(var(--spacing)*4)}.py-5{padding-block:calc(var(--spacing)*5)}.pl-6{padding-left:calc(var(--spacing)*6)}.text-center{text-align:center}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-\[11px\]{font-size:11px}.text-\[12px\]{font-size:12px}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.text-amber-800{color:var(--color-amber-800)}.text-error{color:var(--color-error)}.text-red-700{color:var(--color-red-700)}.text-success{color:var(--color-success)}.text-text-tertiary{color:var(--color-text-tertiary)}.text-text-tertiary\/50{color:#99999980}@supports (color:color-mix(in lab,red,red)){.text-text-tertiary\/50{color:color-mix(in oklab,var(--color-text-tertiary)50%,transparent)}}.text-warning{color:var(--color-warning)}.accent-error{accent-color:var(--color-error)}.accent-info{accent-color:var(--color-info)}.accent-success{accent-color:var(--color-success)}.opacity-0{opacity:0}.opacity-100{opacity:1}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}@media(hover:hover){.hover\:scale-\[1\.01\]:hover{scale:1.01}}}body{font-family:var(--font-family-sans);font-variant-numeric:tabular-nums;background-color:var(--color-background);color:var(--color-text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:14px;line-height:1.55}.form-select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='%236b7280' d='M5.3 7.7a1 1 0 0 1 1.4 0L10 11l3.3-3.3a1 1 0 1 1 1.4 1.4l-4 4a1 1 0 0 1-1.4 0l-4-4a1 1 0 0 1 0-1.4z'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;background-size:12px;padding-right:28px;font-weight:500;transition:border-color .15s,box-shadow .15s,background-color .15s}.form-select:hover{border-color:var(--color-text-tertiary)}.form-select:focus{border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-soft);outline:none}.form-select:disabled{opacity:.6;cursor:not-allowed}.app-shell{position:relative}.app-main{margin-left:var(--sidebar-width,220px);width:calc(100% - var(--sidebar-width,220px));min-height:100vh}html{scrollbar-gutter:stable}.login-page{background:#f7f7f7;place-items:center;min-height:100vh;padding:40px 20px;display:grid}.login-card-minimal{opacity:0;background:#fff;border:1px solid #94a3b833;border-radius:16px;flex-direction:column;gap:14px;width:min(420px,100%);padding:28px;animation:.55s cubic-bezier(.16,1,.3,1) forwards login-enter;display:flex;transform:translateY(10px)scale(.98);box-shadow:0 10px 40px #1a1a1a14}.login-card-submitting{border-color:#1a1a1a52;animation:1.35s ease-in-out infinite login-pulse}.login-card-animating{animation:.7s cubic-bezier(.16,1,.3,1) forwards login-exit}@keyframes login-enter{0%{opacity:0;transform:translateY(16px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes login-exit{0%{opacity:1;transform:scale(1)}60%{opacity:.9;transform:scale(.98)}to{opacity:0;transform:translateY(12px)scale(.96)}}@keyframes login-pulse{0%{box-shadow:0 10px 40px #1a1a1a14}50%{box-shadow:0 18px 50px #1a1a1a29}to{box-shadow:0 10px 40px #1a1a1a14}}.login-logo{letter-spacing:-.02em;text-align:center;color:var(--color-text-primary);font-size:32px;font-weight:800}.login-title{text-align:center;color:var(--color-text-primary);margin-bottom:6px;font-size:18px;font-weight:600}.login-input{background:#f1f5f9;border:1px solid #e5e7eb;border-radius:12px;height:40px;padding:0 12px;font-size:13px}.login-password-field{align-items:center;display:flex;position:relative}.login-password-field .login-input{width:100%;padding-right:40px}.login-eye{color:#6b7280;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex;position:absolute;right:10px}.login-eye:disabled{cursor:not-allowed;opacity:.5}.login-input:focus{border-color:var(--color-accent);background:#f0f0f3;outline:none}.login-actions{color:var(--color-text-tertiary);justify-content:space-between;align-items:center;font-size:12px;display:flex}.login-remember{align-items:center;gap:8px;display:flex}.login-link{color:var(--color-text-tertiary);cursor:pointer;background:0 0;border:none;padding:0;font-size:12px;text-decoration:underline}.login-link:hover{color:var(--color-text-primary)}.login-error{color:#b91c1c;text-align:center;font-size:12px}.login-submit{background:var(--color-accent);color:#fff;cursor:pointer;border:none;border-radius:12px;height:44px;font-size:14px;font-weight:600;transition:transform .2s,box-shadow .2s,background .2s}.login-submit:hover{background:var(--color-accent-hover);transform:translateY(-1px);box-shadow:0 10px 18px #1a1a1a24}.login-submit:disabled{cursor:progress;opacity:.9;box-shadow:none;transform:none}.login-submit:disabled:hover{background:#111}@media(prefers-reduced-motion:reduce){.login-card-minimal,.login-card-submitting,.login-card-animating{opacity:1;animation:none;transform:none}.login-submit{transition:none}}.tour-card{z-index:50;background:#fff;border:1px solid #94a3b840;border-radius:14px;width:min(320px,90vw);padding:14px;animation:.3s tour-fade-in;position:fixed;bottom:24px;right:24px;box-shadow:0 12px 30px #1a1a1a1f}.tour-card-anchored{position:fixed;bottom:auto;right:auto}.tour-overlay{-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);z-index:40;background:#1a1a1a73;transition:background .2s;position:fixed;inset:0}.tour-highlight{box-shadow:none;filter:brightness(.8);border-radius:12px;outline:none;position:relative}@keyframes tour-fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.tour-step{text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-tertiary);margin-bottom:6px;font-size:11px}.tour-title{color:var(--color-text-primary);margin-bottom:4px;font-size:14px;font-weight:700}.tour-body{color:var(--color-text-secondary);margin-bottom:10px;font-size:12px;line-height:1.4}.tour-actions{justify-content:flex-end;gap:8px;display:flex}.nav{margin:0;padding:0;list-style:none}.flex-column{flex-direction:column;display:flex}.nav-item{list-style:none}.w-100{width:100%}.card-body{padding:var(--space-lg)}.table-responsive{width:100%;overflow-x:auto}.table{border-collapse:collapse;width:100%;font-size:13px}.table thead th{text-align:left;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-tertiary);border-bottom:1px solid var(--color-border-subtle);padding:10px 12px;font-size:11px}.table tbody td{border-bottom:1px solid var(--color-border-subtle);color:var(--color-text-secondary);padding:10px 12px}.table tbody tr:hover{background:var(--color-bg)}.badge-yellow{background:var(--color-warning-bg);color:#d97706}.badge-blue{background:var(--color-info-bg);color:var(--color-info)}.expand-icon{justify-content:center;align-items:center;line-height:1;display:inline-flex}.analytics-panel-chevron{justify-content:center;align-items:center;width:24px;height:24px;display:inline-flex}.log-entry-badges{flex:1;justify-content:flex-end}.log-entry-badges-main{align-items:center;gap:var(--space-lg);flex-wrap:wrap;display:flex}.log-entry-badges .expand-icon{margin-left:auto}.variant-card-actions{align-items:center;gap:12px;margin-left:auto;display:inline-flex}.variant-card-header .expand-icon{margin-left:var(--space-sm)}.analytics-panel-header{text-align:left;gap:var(--space-lg);border:none;width:100%}.variant-card-header{text-align:left;border:none;width:100%}.log-entry-flags{align-items:center;gap:6px;display:inline-flex}.scorecard-row{gap:var(--space-md);grid-template-columns:repeat(5,1fr);grid-auto-rows:1fr;align-items:stretch;margin-bottom:0;display:grid}@media(max-width:1024px){.scorecard-row{grid-template-columns:repeat(3,1fr)}}@media(max-width:640px){.scorecard-row{grid-template-columns:repeat(2,1fr)}}@media(max-width:400px){.scorecard-row{grid-template-columns:1fr}}.scorecard-row-compact{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.segment-card{flex-direction:column;gap:0;padding:0;display:flex}.segment-header{justify-content:space-between;align-items:center;gap:var(--space-md);flex-wrap:wrap;display:flex}.segment-title-block{flex-direction:column;gap:2px;display:flex}.segment-title{font-size:inherit;font-weight:inherit;color:inherit}.segment-subtitle{color:var(--color-text-tertiary);font-size:11px}.segment-select{color:var(--color-text-tertiary);flex-direction:row;align-items:center;gap:8px;font-size:11px;display:inline-flex}.segment-controls{flex-flow:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.segment-select-label{text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-tertiary);font-size:10px;font-weight:600}.segment-select-control{min-width:160px;height:32px}.segment-apply-btn{border-radius:10px;justify-content:center;align-self:center;min-width:160px;height:32px;padding:0 14px}.segment-apply-btn:disabled{color:var(--color-text-tertiary);background:#94a3b81f;border-color:#94a3b833}.segment-scope{color:inherit;background:0 0;border-radius:0;align-items:center;margin-top:4px;padding:0;font-size:10px;font-weight:600;display:inline-flex}.segment-note{color:var(--color-text-tertiary);background:#94a3b81f;border:1px solid #94a3b833;border-radius:10px;padding:6px 10px;font-size:11px}.segment-content{gap:var(--space-sm);flex-direction:column;display:flex}.segment-grid{gap:var(--space-sm);grid-template-columns:repeat(3,1fr);display:grid}.segment-mobile{flex-direction:column;gap:10px;display:none}.segment-mobile-select{flex-direction:column;gap:6px;width:100%;display:flex}.segment-item.segment-item-static{cursor:default}.segment-item.segment-item-static:hover{box-shadow:none;border-color:#1a1a1a14;transform:none}.segment-grid.segment-grid-env{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px}@media(max-width:860px){.segment-grid{grid-template-columns:repeat(2,1fr)}.segment-grid.segment-grid-env{grid-template-columns:repeat(3,1fr)}}@media(max-width:480px){.segment-grid{grid-template-columns:1fr}.segment-grid.segment-grid-env{grid-template-columns:repeat(2,1fr)}}.segment-item{background:var(--color-surface);text-align:left;cursor:pointer;border:1px solid #1a1a1a14;border-radius:12px;flex-direction:column;gap:6px;padding:10px 12px;transition:all .15s;display:flex}.segment-grid-env .segment-item{padding:8px 10px}.segment-grid-env .segment-metric-label{font-size:9px}.segment-grid-env .segment-metric-value{font-size:12px}.segment-item:hover{box-shadow:none;border-color:#1a1a1a40;transform:none}.segment-item.active{background:#1a1a1a08;border-color:#1a1a1a59;box-shadow:0 0 0 2px #1a1a1a0f}.segment-label{color:var(--color-text-primary);font-size:12px;font-weight:700;font-family:var(--font-family-display);letter-spacing:-.01em;justify-content:space-between;align-items:center;gap:8px;display:flex}.segment-metrics{grid-template-columns:repeat(2,1fr);gap:6px;display:grid}.segment-metric{border:1px solid var(--color-border-subtle);background:var(--color-bg);border-radius:10px;flex-direction:column;gap:4px;padding:6px 8px;display:flex}.segment-metric-label{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-tertiary);font-size:10px;font-weight:600}.segment-metric-value{color:var(--color-text-primary);font-size:13px;font-weight:700}.segment-active{text-transform:uppercase;letter-spacing:.08em;background:var(--color-accent-soft);color:var(--color-accent);border:1px solid var(--color-accent-border);border-radius:999px;padding:2px 6px;font-size:9px;font-weight:700}.segment-loading,.segment-empty{color:var(--color-text-secondary);align-items:center;gap:8px;font-size:12px;display:flex}@media(max-width:720px){.segment-select{flex-direction:column;align-items:flex-start;width:100%}.segment-select-control{width:100%}.segment-controls{flex-direction:column;align-items:flex-start;width:100%}.segment-apply-btn{justify-content:center;width:100%}.segment-mobile{display:flex}.segment-grid{display:none}}.scorecard-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-md);box-shadow:none;flex-direction:column;gap:6px;display:flex}.metric-groups{gap:var(--space-lg);flex-direction:column;margin-bottom:0;display:flex}.metric-group{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:none;overflow:hidden}.metric-group-title{color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.08em;margin:0;font-size:11px;font-weight:700}.metric-group-title-block{flex-direction:column;gap:4px;display:flex}.metric-group-scope{background:var(--color-accent-soft);color:var(--color-accent);border:1px solid var(--color-accent-border);text-transform:none;letter-spacing:.02em;border-radius:999px;align-items:center;gap:6px;padding:2px 8px;font-size:10px;font-weight:600;display:inline-flex}.scope-chip-row{flex-wrap:wrap;align-items:center;gap:10px;display:inline-flex}.scope-chip{background:var(--color-accent-subtle);color:var(--color-text-secondary);border:1px solid var(--color-border);letter-spacing:.02em;text-transform:uppercase;border-radius:999px;align-items:center;padding:2px 8px;font-size:10px;font-weight:600;display:inline-flex}.metric-group-header{justify-content:space-between;align-items:center;gap:var(--space-md);border:none;border-bottom:1px solid var(--color-border-subtle);text-align:left;cursor:pointer;-webkit-user-select:none;user-select:none;background:0 0;width:100%;margin-bottom:0;padding:14px 18px;transition:background .15s;display:flex}.metric-group-header:hover{background:var(--color-accent-subtle)}.metric-group-toggle{align-items:center;gap:var(--space-sm);color:var(--color-text-tertiary);font-size:11px;font-weight:600;display:inline-flex}.metric-group-hint{color:var(--color-text-tertiary)}.metric-group-chevron{transition:transform var(--transition-fast)}.metric-group-chevron.open{transform:rotate(180deg)}.metric-group-content.collapsed{display:none}.metric-group-content{padding:14px 18px 18px}.analytics-panel-header.metric-group-header{padding:14px 18px}.scorecard-label{color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:600}.scorecard-value{font-family:var(--font-family-display);color:var(--color-text-primary);letter-spacing:-.01em;font-size:22px;font-weight:700}.scorecard-badge{border:1px solid var(--color-border);background:var(--color-accent-subtle);color:var(--color-text-secondary);border-radius:999px;align-items:center;gap:6px;width:fit-content;padding:3px 8px;font-size:10px;font-weight:600;display:inline-flex}.scorecard-hint{color:var(--color-text-tertiary);font-size:11px}.scorecard-breakdown{flex-wrap:wrap;align-items:center;gap:4px;margin-bottom:2px;display:flex}.scorecard-breakdown-item{align-items:center;gap:3px;display:inline-flex}.scorecard-breakdown-sep{color:var(--color-text-tertiary);margin:0 2px;font-size:10px}.scorecard-breakdown-label{color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.03em;font-size:10px}.scorecard-breakdown-value{color:var(--color-text-secondary);font-size:11px;font-weight:600;font-family:var(--font-family-mono,monospace)}.scorecard-meta{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.scorecard-insights{margin-top:var(--space-sm);padding-top:var(--space-sm);border-top:1px solid var(--color-border-subtle);flex-wrap:wrap;gap:10px;display:flex}.scorecard-insight{border:1px solid var(--color-border);background:var(--color-bg);border-radius:10px;flex-direction:column;gap:2px;min-width:160px;padding:6px 10px;display:flex}.scorecard-insight-label{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-tertiary);font-size:10px;font-weight:600}.scorecard-insight-value{color:var(--color-text-primary);font-size:12px;font-weight:600}.scorecard-delta{border:1px solid #0000;border-radius:999px;align-items:center;gap:4px;padding:2px 6px;font-size:10px;font-weight:600;display:inline-flex}.scorecard-delta.up{background:var(--color-success-bg);color:var(--color-success);border-color:#2d8a4e33}.scorecard-delta.down{background:var(--color-error-bg);color:var(--color-error);border-color:#c5303033}.scorecard-delta.neutral{background:var(--color-accent-subtle);color:var(--color-text-secondary);border-color:var(--color-border)}.dashboard-filters .filter-chips{gap:var(--space-sm);margin-top:var(--space-sm);flex-wrap:wrap;display:flex}.chip{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-secondary);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:6px 10px;font-size:11px;font-weight:600;transition:all .15s;display:inline-flex}.chip.active{background:var(--color-accent);color:#fff;border-color:var(--color-accent)}.chip:hover{border-color:var(--color-text-tertiary)}.quick-filter-row{align-items:center;gap:var(--space-sm);flex-wrap:wrap;display:flex}.quick-filter-label{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-tertiary);font-size:11px;font-weight:600}.quick-filter-count{color:var(--color-text-tertiary);margin-left:var(--space-sm);font-size:11px}.logs-toolbar{border:1px solid var(--color-border);background:var(--color-surface);-webkit-backdrop-filter:none;backdrop-filter:none;margin-bottom:var(--space-md);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;padding:12px 14px;display:flex}.timeline{gap:var(--space-sm);flex-direction:column;display:flex}.timeline-item{gap:var(--space-sm);grid-template-columns:12px 1fr;align-items:start;display:grid}.timeline-dot{background:var(--color-border);border-radius:50%;width:10px;height:10px;margin-top:4px}.timeline-dot.done{background:var(--color-success)}.timeline-dot.pending{background:var(--color-warning)}.timeline-title{color:var(--color-text-primary);font-size:12px;font-weight:600}.timeline-subtitle{color:var(--color-text-tertiary);font-size:11px}@media(max-width:1024px){.chart-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.chart-span-2{grid-column:span 2}.chart-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:768px){.chart-grid{grid-template-columns:1fr}.chart-span-2{grid-column:span 1}.chart-grid--two{grid-template-columns:1fr}}.analytics-panel-title{flex:none}.analytics-panel-title-block{flex-direction:column;gap:6px;display:flex}.analytics-panel-title-row{flex-wrap:wrap;align-items:center;gap:8px;display:inline-flex}.analytics-panel-badge{color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em;background:#1a1a1a0f;border:1px solid #1a1a1a14;border-radius:999px;padding:2px 6px;font-size:10px;font-weight:600}.analytics-panel-scope{width:fit-content}.dashboard-status{color:var(--color-text-secondary);background:#ffffffb3;border:1px solid #94a3b833;border-radius:999px;align-items:center;gap:8px;width:fit-content;margin-bottom:12px;padding:8px 12px;font-size:12px;display:flex}.dashboard-status-text{font-weight:500}.dashboard-status-pill{text-transform:uppercase;letter-spacing:.04em;color:#b45309;background:#f59e0b26;border:1px solid #f59e0b4d;border-radius:999px;margin-left:4px;padding:2px 8px;font-size:10px;font-weight:600}.dashboard-status-pill.success{color:#0f766e;background:#10b98126;border:1px solid #10b9814d}.analytics-sparklines{gap:var(--space-md);align-items:center;margin-left:auto;display:flex}.analytics-panel-toggle{margin-left:var(--space-lg)}.sparkline-item{flex-direction:column;gap:2px;display:flex}.sparkline-label{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-tertiary);font-size:10px}.sparkline{width:90px;height:24px}.sparkline polyline{fill:none;stroke:var(--color-info);stroke-width:2px}.sparkline.secondary polyline{stroke:var(--color-success)}.data-viewer-section summary{padding-right:28px;position:relative}.data-viewer-section summary::-webkit-details-marker{display:none}.data-viewer-section summary::marker{content:""}.data-viewer-section summary:after{content:"›";color:var(--color-text-tertiary);transition:transform var(--transition-fast);font-size:18px;position:absolute;right:10px;transform:rotate(0)}.data-viewer-section[open] summary:after{transform:rotate(90deg)}::selection{background-color:var(--color-accent);color:#fff}.chart-grid{gap:var(--space-lg);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.chart-span-2{grid-column:span 2}.chart-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}.chart-group{gap:var(--space-md);flex-direction:column;display:flex}.chart-group-header{justify-content:space-between;align-items:flex-end;gap:var(--space-sm);display:flex}.chart-group-title{text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-tertiary);font-size:12px;font-weight:700}.chart-group-subtitle{color:var(--color-text-secondary);margin-top:4px;font-size:12px}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:4px}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:99px}::-webkit-scrollbar-thumb:hover{background:#9ca3af}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes spin{to{transform:rotate(360deg)}}.animate-fade-in{animation:.35s ease-out forwards fadeIn}.skeleton-shimmer{background:linear-gradient(90deg,#f3f4f6 25%,#e5e7eb,#f3f4f6 75%) 0 0/200% 100%;border-radius:8px;animation:1.5s infinite shimmer}.loading-spinner{border:2px solid var(--color-border);border-top-color:var(--color-text-secondary);border-radius:999px;width:14px;height:14px;animation:.8s linear infinite spin;display:inline-block}.loading-pill{background:var(--color-accent-subtle);border:1px solid var(--color-border);color:var(--color-text-secondary);border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:11px;font-weight:600;display:inline-flex}.chart-loading{height:100%;position:relative}.chart-loading-overlay{color:var(--color-text-tertiary);justify-content:center;align-items:center;gap:8px;font-size:12px;font-weight:600;display:flex;position:absolute;inset:0}.thumbnail-loading{min-height:120px;position:relative}.thumbnail-skeleton{border-radius:10px;width:100%;height:160px;min-height:120px}.thumbnail-loading-overlay{color:var(--color-text-tertiary);letter-spacing:.01em;justify-content:center;align-items:center;gap:8px;font-size:11px;font-weight:500;display:flex;position:absolute;inset:0}.thumbnail-error-state{border:1.5px dashed var(--color-border);min-height:120px;color:var(--color-text-tertiary);opacity:.6;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:6px;font-size:11px;display:flex}.scorecard-card-loading{gap:10px}.log-detail-skeleton{gap:var(--space-sm);padding:0 var(--space-lg)var(--space-lg);display:grid}:root{--color-bg:#f3f3f5;--color-surface:#fff;--color-border:#e8e8ec;--color-border-subtle:#f0f0f3;--color-text-secondary:#555;--color-text-tertiary:#999;--color-success:#2d8a4e;--color-error:#c53030;--color-info:#1a1a1a;--color-accent:#1a1a1a;--color-accent-hover:#111;--color-accent-subtle:#1a1a1a0f;--color-accent-soft:#1a1a1a0f;--color-accent-border:#1a1a1a26;--shadow-sm:0 1px 2px #00000008;--shadow-md:0 4px 12px #0000000d}body{font-size:13.5px}main.col-md-10.p-4{background:var(--color-bg)}.sidebar{z-index:10;height:100vh;padding:20px 14px;position:fixed;top:0;left:0;overflow:visible}.sidebar-inner{flex-direction:column;height:100%;display:flex;overflow-y:auto}.sidebar .sidebar-brand{padding-bottom:var(--space-lg);margin-bottom:0}.sidebar .sidebar-brand-icon{border-radius:var(--radius-sm);background:var(--color-text-primary);width:30px;height:30px;color:var(--color-surface);letter-spacing:-.02em;font-size:13px;font-weight:800}.sidebar .nav-section{margin-bottom:18px}.sidebar .nav-section-title{color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.08em;margin-bottom:6px;padding:0 10px;font-size:10px;font-weight:700}.sidebar .nav-section-title.nav-actions-title{margin-top:6px}.sidebar-settings-toggle{width:100%;color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.08em;cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;margin-bottom:8px;padding:0 10px;font-size:10px;font-weight:700;transition:color .15s;display:flex}.sidebar-settings-label{align-items:center;gap:6px;display:inline-flex}.sidebar-settings-toggle:hover{color:var(--color-text-secondary)}.sidebar-settings-chevron{opacity:.7;transition:transform .2s,opacity .2s}.sidebar-settings-chevron.open{opacity:.9;transform:rotate(180deg)}.sidebar .nav{gap:4px}.sidebar .nav-link{color:var(--color-text-secondary);border-radius:var(--radius-sm);gap:10px;padding:9px 12px;font-size:13px;font-weight:500;text-decoration:none;transition:color .15s,background .15s;position:relative}.sidebar .nav-link.nav-action{text-align:left;cursor:pointer;background:0 0;border:none;width:100%}.sidebar .nav-link.nav-action-dark{background:var(--color-accent);color:#f9fafb}.sidebar .nav-link.nav-action-refresh{margin-top:4px}.sidebar .nav-link.nav-action-dark svg{opacity:1;color:#f9fafb}.sidebar .nav-link.nav-action-dark:hover{color:#f9fafb;background:#333}.sidebar .nav-link.nav-action:disabled{opacity:.5;cursor:not-allowed}.sidebar .nav-refresh-status{background:var(--color-accent-subtle);color:var(--color-text-secondary);border:1px solid var(--color-border-subtle);letter-spacing:.02em;text-transform:uppercase;border-radius:999px;margin-left:auto;padding:2px 6px;font-size:10px;font-weight:700}.sidebar .nav-refresh-status.nav-ready{background:var(--color-success-bg);border-color:var(--color-success)}.sidebar .nav-divider{background:var(--color-border-subtle);height:1px;margin:8px 12px;list-style:none}.sidebar .nav-link svg{opacity:.6;flex-shrink:0;width:16px;height:16px;transition:opacity .15s}.sidebar .nav-link:hover{color:var(--color-text-primary);background:var(--color-accent-subtle)}.sidebar .nav-link:hover svg{opacity:.85}.sidebar .nav-link.active{color:var(--color-text-primary);background:var(--color-bg);font-weight:600}.sidebar .nav-link.active:before{content:"";background:var(--color-accent);border-radius:0 3px 3px 0;width:3px;position:absolute;top:6px;bottom:6px;left:0}.sidebar .nav-link.active svg{opacity:1;color:var(--color-accent)}.sidebar .sidebar-actions{margin-top:var(--space-xs);margin-bottom:var(--space-sm);opacity:1;flex-direction:column;gap:4px;max-height:320px;padding:0;transition:max-height .25s,opacity .2s,margin-top .2s;display:flex;overflow:hidden}.sidebar .sidebar-actions.collapsed{opacity:0;pointer-events:none;max-height:0;margin-top:0}.sidebar.sidebar-collapsed .sidebar-actions{padding:0}.sidebar .sidebar-action-btn{border-radius:var(--radius-sm);width:100%;color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;align-items:center;gap:10px;padding:8px 12px;font-family:inherit;font-size:13px;font-weight:500;transition:color .15s,background .15s;display:flex}.sidebar .sidebar-action-btn:hover{color:var(--color-text-primary);background:var(--color-accent-subtle)}.sidebar .sidebar-action-btn:disabled{opacity:.5;cursor:not-allowed}.sidebar .sidebar-action-btn svg{opacity:.6;flex-shrink:0;width:16px;height:16px}.sidebar .sidebar-action-btn:hover svg{opacity:.85}.sidebar .sidebar-action-clear{margin-bottom:var(--space-xs)}.sidebar.sidebar-collapsed .sidebar-action-btn{justify-content:center;padding:8px}.sidebar-divider{background:var(--color-border-subtle);height:1px;margin:var(--space-sm)var(--space-md)}.sidebar.sidebar-collapsed .sidebar-divider{margin:var(--space-sm)var(--space-sm)}.sidebar .sidebar-footer{padding-top:var(--space-sm);border-top:none;margin-top:auto}.sidebar .sidebar-bottom-actions{flex-direction:column;gap:4px;display:flex}.sidebar .sidebar-footer .last-updated{color:var(--color-text-tertiary);padding:4px var(--space-md);margin-top:var(--space-xs);font-size:11px}.sidebar .sidebar-footer .sidebar-version{color:var(--color-text-tertiary);padding:0 var(--space-md);opacity:.6;margin-bottom:var(--space-sm);font-size:10px}.sidebar-toggle{border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;width:24px;height:48px;color:var(--color-text-tertiary);z-index:3;opacity:1;border-left:none;border-radius:0 10px 10px 0;justify-content:center;align-items:center;transition:opacity .2s,width .15s,right .15s,color .15s,background .15s,border-color .15s,box-shadow .15s,transform .15s;display:inline-flex;position:absolute;top:50%;right:-12px;transform:translateY(-50%);box-shadow:2px 0 8px #1a1a1a0f}.sidebar-toggle:hover{width:28px;color:var(--color-text-primary);background:var(--color-accent-subtle);border-color:#1a1a1a33;right:-14px;box-shadow:2px 0 8px #1a1a1a14}.sidebar-toggle:active{transform:translateY(-50%)scale(.96)}.sidebar-toggle svg{transition:transform .2s}.sidebar-toggle:hover svg{transform:translate(1px)}.sidebar.sidebar-collapsed{padding:var(--space-md)var(--space-sm)}.sidebar.sidebar-collapsed .sidebar-brand{justify-content:center;gap:var(--space-xs);padding-bottom:var(--space-md)}.sidebar.sidebar-collapsed .nav-section-title,.sidebar.sidebar-collapsed .last-updated,.sidebar.sidebar-collapsed .sidebar-version{display:none}.sidebar.sidebar-collapsed .nav-link{padding:10px var(--space-sm);justify-content:center}.sidebar.sidebar-collapsed .nav-divider{margin:6px var(--space-sm)}.sidebar.sidebar-collapsed .nav-link.active:before{top:8px;bottom:8px}.sidebar.sidebar-collapsed .btn{justify-content:center;padding-left:0;padding-right:0}.btn{border:1px solid var(--color-border);background:var(--color-surface);height:32px;color:var(--color-text-primary);cursor:pointer;border-radius:10px;align-items:center;gap:8px;padding:0 12px;font-size:12px;font-weight:600;line-height:1;transition:color .15s,background .15s,border-color .15s,box-shadow .15s;display:inline-flex}.btn:hover:not(:disabled){background:var(--color-accent-subtle);border-color:var(--color-text-tertiary)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--color-accent);color:#fff;border-color:#0000}.btn-primary:hover:not(:disabled){background:var(--color-accent-hover)}.btn-invite{box-shadow:0 0 0 3px var(--color-accent-soft)}.load-details-cta{align-self:flex-start}.load-details-empty{text-align:center;background:var(--color-accent-soft);border-color:var(--color-accent-border);align-items:center;padding:20px}.load-details-icon{background:var(--color-accent-soft);width:34px;height:34px;color:var(--color-accent);border-radius:10px;justify-content:center;align-items:center;display:inline-flex}.load-details-empty .load-details-cta{align-self:center}.btn-secondary{background:var(--color-surface);color:var(--color-text-primary);border-color:var(--color-border)}[data-sonner-toaster]{--width:360px;--offset-bottom:18px}[data-sonner-toast].toast-clean{color:#0f172a;background:#fffffff5;border:1px solid #94a3b859;border-radius:12px;box-shadow:0 12px 24px #1a1a1a1f}[data-sonner-toast].toast-clean[data-type=success]{border-color:#22c55e59}[data-sonner-toast].toast-clean[data-type=warning]{border-color:#f59e0b59}[data-sonner-toast].toast-clean[data-type=error]{border-color:#ef444459}[data-sonner-toast].toast-clean [data-description]{color:#475569}html.dark [data-sonner-toast].toast-clean{color:#f8fafc;background:#111827f5;border-color:#94a3b833;box-shadow:0 16px 32px #00000073}html.dark [data-sonner-toast].toast-clean [data-description]{color:#e2e8f0cc}.btn-ghost{color:var(--color-text-secondary);background:0 0;border-color:#0000}.btn-ghost:hover:not(:disabled){background:var(--color-accent-subtle);color:var(--color-text-primary)}.btn.btn-sm{height:26px;padding:0 8px;font-size:11px}.status-badge,.log-badge-status{white-space:nowrap;border:1px solid #0000;border-radius:6px;align-items:center;height:22px;padding:0 8px;font-size:11px;font-weight:600;line-height:1;display:inline-flex}.table thead th{text-transform:none;letter-spacing:.02em;color:var(--color-text-secondary);font-size:12px}.card,.metric-card,.log-entry,.variant-card,.info-card,.preview-item,.chart-container{box-shadow:none}.log-entry:hover,.variant-card:hover,.chart-container:hover,.metric-card:hover,.card:hover{box-shadow:var(--shadow-sm)}.variant-llm-label{color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.02em;font-size:10px;font-weight:600}.variant-mini-label{color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.04em;font-size:10px;font-weight:700}.variant-pill-group{align-items:center;gap:6px;display:inline-flex}.variant-result-badge{text-transform:uppercase;letter-spacing:.03em;border:1px solid #0000;border-radius:999px;align-items:center;padding:2px 7px;font-size:10px;font-weight:700;display:inline-flex}.badge-green{color:#0f766e;background:#10b98126;border-color:#10b98159}.badge-red{color:#b91c1c;background:#ef44441f;border-color:#ef444459}.badge-neutral{color:#64748b;background:#94a3b826;border-color:#94a3b859}.badge-llm-pass{background:var(--color-success-bg);color:var(--color-success);border-color:#2d8a4e40}.badge-llm-fail{background:var(--color-error-bg);color:var(--color-error);border-color:#c5303040}.badge-llm-pending{background:var(--color-warning-bg);color:var(--color-warning);border-color:#b4530940}.active-filter-strip{flex-wrap:wrap;align-items:center;gap:6px;padding:4px 2px 0;display:flex}.active-filter-strip-label{color:var(--color-text-tertiary);font-size:11px;font-weight:500}.active-filter-chip{background:var(--color-accent-soft);color:var(--color-text-secondary);border:1px solid var(--color-accent-border);border-radius:4px;padding:2px 8px;font-size:11px;font-weight:500}.active-filter-reset{color:var(--color-text-tertiary);cursor:pointer;text-underline-offset:2px;background:0 0;border:none;padding:0;font-size:11px;text-decoration:underline}.active-filter-reset:hover{color:var(--color-error)}.scorecard-info-icon{color:var(--color-text-tertiary);vertical-align:middle;cursor:help;flex-shrink:0;margin-left:3px}.logs-summary-flags{align-items:center;gap:12px;display:flex}.logs-summary-flag-item{align-items:center;gap:4px;font-size:12px;display:inline-flex}.logs-summary-flag-item.has-warning{color:var(--color-warning);font-weight:500}.logs-summary-flag-item.has-error{color:var(--color-error);font-weight:500}.chart-container{border-radius:var(--radius-md);padding:var(--space-md);background:var(--color-surface);border:1px solid var(--color-border-subtle);gap:var(--space-sm);flex-direction:column;display:flex}.chart-header{flex-direction:column;gap:4px;display:flex}.chart-title{color:var(--color-text-primary);font-size:13px;font-weight:600}.chart-description{color:var(--color-text-tertiary);margin:0;font-size:11px;line-height:1.45}.chart-body{position:relative}.recharts-default-tooltip{box-shadow:var(--shadow-sm);background:var(--color-surface)!important;border:1px solid var(--color-border-subtle)!important;border-radius:10px!important}.recharts-tooltip-label{color:var(--color-text-tertiary);font-size:10px}.recharts-tooltip-item{color:var(--color-text-secondary);font-size:11px}.recharts-legend-item-text{font-size:10px;color:var(--color-text-tertiary)!important}.filter-bar{background:var(--color-surface)}.filter-actions{white-space:nowrap;align-items:center;gap:10px;display:flex}.filter-divider{background:var(--color-border);flex-shrink:0;align-self:stretch;width:1px;margin:6px 2px 4px}.page-header{margin-bottom:24px}.page-title{font-family:var(--font-family-display);color:var(--color-text-primary);letter-spacing:-.02em;margin:0;font-size:24px;font-weight:700;line-height:1.2}.page-subtitle{color:var(--color-text-secondary);margin:2px 0 0;font-size:13px}.dashboard-sections{flex-direction:column;gap:20px;display:flex}.dash-filter-card{border:1px solid var(--color-border);background:var(--color-surface);-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none;border-radius:16px}.dash-filter-title-row{align-items:center;gap:8px;padding:10px 16px 0;display:flex}.dash-filter-title{color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.06em;font-size:12px;font-weight:700}.dash-filter-dirty-dot{letter-spacing:.03em;background:var(--color-warning-bg);color:var(--color-warning);border-radius:4px;flex-shrink:0;align-items:center;padding:1px 6px;font-size:10px;font-weight:600;display:inline-flex}.dash-filter-actions{flex-shrink:0;align-items:center;gap:8px;margin-left:auto;display:flex}.dash-filter-apply-pulse{animation:2s ease-out infinite dash-apply-ring;box-shadow:0 0 #1a1a1a33}@keyframes dash-apply-ring{0%{box-shadow:0 0 #1a1a1a33}70%{box-shadow:0 0 0 4px #1a1a1a00}to{box-shadow:0 0 #1a1a1a00}}.dash-filter-controls{flex-wrap:nowrap;align-items:center;gap:8px 10px;padding:0;display:flex}.dash-filter-field{white-space:nowrap;flex-direction:row;flex:0 auto;align-items:center;gap:6px;min-width:0;display:inline-flex}.dash-filter-label{color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.06em;flex-shrink:0;font-size:10px;font-weight:600}.dash-filter-sep{color:var(--color-text-tertiary);flex-shrink:0;justify-content:center;align-items:center;padding:0 6px;font-size:12px;line-height:1;display:inline-flex}.dash-filter-sep:before{content:"|"}.dash-filter-date-row{align-items:center;gap:4px;display:inline-flex}.dash-filter-date-sep{color:var(--color-text-tertiary);flex-shrink:0;font-size:11px}.dash-filter-card .form-select,.dash-filter-card .form-control{border:1px solid var(--color-border);background-color:var(--color-surface);height:30px;color:var(--color-text-primary);border-radius:8px;min-width:0;padding:4px 8px;font-size:12px;line-height:1.2;transition:border-color .15s,box-shadow .15s}.dash-filter-field .form-select{width:108px;min-width:108px}.dash-filter-header{cursor:default}.dash-filter-content{padding:12px 16px}.dash-filter-card .form-select:focus,.dash-filter-card .form-control:focus{border-color:#1a1a1a4d;outline:none;box-shadow:0 0 0 2px #1a1a1a0f}.dash-filter-card .form-select{text-overflow:ellipsis;width:100%;min-width:92px;max-width:120px;overflow:hidden}.dash-filter-date-row .form-control{width:clamp(92px,8.5vw,120px);min-width:92px}.dash-filter-chips{background:var(--color-bg);border:1px solid var(--color-border);border-radius:8px;flex-shrink:1;align-items:center;gap:2px;min-width:0;height:30px;padding:2px;display:inline-flex}.dash-filter-field-quick{flex-direction:row;flex:0 auto;align-items:center;gap:6px;min-width:0}.dash-chip{height:24px;color:var(--color-text-secondary);cursor:pointer;letter-spacing:.04em;text-transform:uppercase;background:0 0;border:none;border-radius:7px;padding:0 9px;font-size:10px;font-weight:600;line-height:1;transition:all .15s}.dash-chip:hover{color:var(--color-text-primary);background:#1a1a1a0a}.dash-chip.active{background:var(--color-surface);color:var(--color-text-primary);border:1px solid var(--color-border);box-shadow:none}.dash-chip.active:hover{background:var(--color-surface)}@media(max-width:960px){.dash-filter-sep{display:none}.dash-filter-actions{margin-left:0}}@media(max-width:520px){.dash-filter-controls{flex-direction:column;align-items:stretch;gap:10px}.dash-filter-field{justify-content:space-between;width:100%}.dash-filter-card .form-select{flex:1;width:auto;max-width:none}.dash-filter-date-row{flex-wrap:wrap;width:100%}.dash-filter-date-row .form-control{flex:1;width:auto;min-width:0}.dash-filter-chips{justify-content:center;width:100%}.dash-filter-actions{justify-content:flex-end;width:100%}}[data-tour=logs-filters] .dash-filter-controls{gap:6px 8px}[data-tour=logs-filters] .dash-filter-field{gap:4px}[data-tour=logs-filters] .form-select,[data-tour=logs-filters] .form-control{border-radius:7px;height:28px;padding:3px 6px;font-size:11px}[data-tour=logs-filters] .form-select{width:92px;min-width:80px;max-width:100px}[data-tour=logs-filters] .dash-filter-date-row .form-control{width:clamp(84px,7vw,108px);min-width:84px}[data-tour=logs-filters] .dash-filter-sep{padding:0 3px}[data-tour=logs-filters] .dash-filter-label{font-size:9px}[data-tour=logs-filters] .dash-filter-chips{height:28px}[data-tour=logs-filters] .dash-chip{height:22px;padding:0 7px;font-size:9px}[data-tour=logs-filters] .dash-filter-content{padding:10px 14px}[data-tour=logs-filters] .dash-filter-title-row{padding:8px 14px 0}.filter-pill{background:var(--color-accent-soft);color:var(--color-accent);border:1px solid var(--color-accent-border);border-radius:999px;padding:4px 10px;font-size:11px;font-weight:600}.filter-pill-placeholder{visibility:hidden;pointer-events:none}.filter-row{background:var(--color-surface);-webkit-backdrop-filter:none;backdrop-filter:none;z-index:1;border:1px solid #1a1a1a14;border-radius:12px;flex-wrap:nowrap;align-items:center;gap:10px;padding:10px 12px;display:flex;position:relative;overflow-x:auto}.filter-row .filter-group{white-space:nowrap;align-items:center;gap:6px;min-width:130px;display:inline-flex}.filter-row .form-select,.filter-row .form-control{min-width:120px;height:32px;padding:4px 10px;line-height:1.2}.logs-filter-row .form-select{text-overflow:ellipsis;white-space:nowrap;width:clamp(92px,8vw,120px);min-width:92px;max-width:120px;overflow:hidden}.logs-filter-row .filter-date-range .form-control{width:clamp(92px,8.5vw,120px);min-width:92px;max-width:120px}.logs-filter-row{scrollbar-gutter:stable;flex-wrap:nowrap;align-items:center;gap:10px 12px;width:100%;max-width:100%;padding:4px 0}.logs-filter-row .filter-group{gap:6px;min-width:0;padding:2px 0}.logs-filter-row .filter-actions{flex:none;gap:8px;margin-left:auto;padding:2px 0}.logs-filter-row .filter-label{letter-spacing:.06em;font-size:10px}.logs-filter-row .filter-pill{padding:3px 8px;font-size:10px}.logs-filter-row .btn{height:30px;padding:4px 10px}.filter-date-range{flex-wrap:nowrap;align-items:center;gap:6px;display:flex}.filter-date-range .btn{margin-left:2px}.filter-quick-row{flex-wrap:wrap;align-items:center;gap:6px;margin-top:6px;display:flex}.filter-quick-label{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-tertiary);font-size:10px;font-weight:700}.filter-row .btn{justify-content:center;align-items:center;height:32px;display:inline-flex}.logs-summary{color:var(--color-text-secondary);flex-wrap:wrap;gap:8px;font-size:12px;display:flex}.logs-summary-item{background:#1a1a1a0a;border:1px solid #1a1a1a14;border-radius:999px;padding:4px 10px}.logs-summary-sep{color:var(--color-text-tertiary);-webkit-user-select:none;user-select:none;font-size:11px}.badge-dot{vertical-align:middle;border-radius:50%;flex-shrink:0;width:6px;height:6px;margin-right:5px;display:inline-block;position:relative;top:-1px}.badge-dot.green{background:var(--color-success)}.badge-dot.red{background:var(--color-error)}.badge-dot.neutral{background:var(--color-text-tertiary)}.logs-panel-header{background:var(--color-surface);border:1px solid #1a1a1a14;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;padding:12px 14px;display:flex}.logs-panel-title{color:var(--color-text-primary);font-size:clamp(12px,1.6vw,13px);font-weight:700;font-family:var(--font-family-display);letter-spacing:-.01em}.logs-panel-subtitle{color:var(--color-text-tertiary);font-size:clamp(10px,1.4vw,11px)}.logs-panel-meta{color:var(--color-text-secondary);background:#1a1a1a0d;border:1px solid #1a1a1a14;border-radius:999px;padding:4px 10px;font-size:11px}.logs-split{gap:var(--space-lg);grid-template-columns:minmax(240px,.8fr) minmax(640px,2.4fr);align-items:start;display:grid}.logs-list{background:var(--color-surface);box-shadow:none;border:1px solid #1a1a1a14;border-radius:14px;flex-direction:column;gap:10px;width:100%;max-width:440px;padding:14px;display:flex}.logs-list-stack{flex-direction:column;gap:10px;display:flex}.logs-detail{min-width:520px;max-width:100%;position:sticky;top:16px}.logs-detail-card{background:var(--color-surface);box-shadow:none;border:1px solid #1a1a1a14;border-radius:14px;overflow:hidden}.logs-detail-header{border-bottom:1px solid #1a1a1a14;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.logs-detail-heading{flex-direction:row;align-items:center;gap:4px;min-width:0;display:flex}.logs-detail-primary{color:var(--color-text-primary);font-size:13px;font-weight:600;font-family:var(--font-family-display);letter-spacing:-.01em;flex-wrap:wrap;align-items:center;gap:6px;display:flex}.logs-detail-secondary{color:var(--color-text-tertiary);font-size:11px}.logs-detail-request{color:var(--color-text-secondary);font-size:11px}.logs-detail-id{color:var(--color-text-tertiary);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.logs-detail-sep{color:var(--color-text-tertiary);font-weight:500}.logs-detail-size{color:var(--color-text-secondary);font-weight:500}.logs-detail-action.success,.logs-detail-status.ok{color:var(--color-success)}.logs-detail-action.error,.logs-detail-status.error{color:var(--color-error)}.logs-detail-action.pending,.logs-detail-status.warn{color:var(--color-warning)}@keyframes log-item-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.log-list-item{appearance:none;font:inherit;text-align:left;background:var(--color-surface);cursor:pointer;border:1px solid #1a1a1a14;border-radius:12px;align-items:stretch;gap:12px;width:100%;padding:12px 14px;transition:box-shadow .15s,border-color .15s,background .15s,transform .12s;animation:.22s ease-out both log-item-in;display:flex;position:relative;overflow:hidden}.log-list-item:first-child{animation-delay:0s}.log-list-item:nth-child(2){animation-delay:30ms}.log-list-item:nth-child(3){animation-delay:55ms}.log-list-item:nth-child(4){animation-delay:75ms}.log-list-item:nth-child(5){animation-delay:95ms}.log-list-item:nth-child(6){animation-delay:.11s}.log-list-item:nth-child(7){animation-delay:.125s}.log-list-item:nth-child(8){animation-delay:.138s}.log-list-item:nth-child(9){animation-delay:.15s}.log-list-item:nth-child(10){animation-delay:.16s}.log-list-item:nth-child(11){animation-delay:.168s}.log-list-item:nth-child(12){animation-delay:.175s}@media(prefers-reduced-motion:reduce){.log-list-item{animation:none}}.log-list-item:hover{border-color:var(--color-accent-border);transform:translateY(-1px);box-shadow:0 2px 8px #0000000f}.log-list-item:active{box-shadow:none;transform:translateY(0)}.log-list-item.selected{border-color:var(--color-accent-border);box-shadow:none;background:var(--color-accent-soft);transform:none}.log-list-item.selected:before{content:"";background:var(--color-accent);width:3px;box-shadow:0 0 0 3px var(--color-accent-soft);border-radius:999px;position:absolute;top:10px;bottom:10px;left:-6px}.log-list-accent{opacity:.7;border-radius:12px 0 0 12px;width:3px;transition:opacity .15s,width .15s;position:absolute;top:0;bottom:0;left:0}.log-list-item:hover .log-list-accent,.log-list-item.selected .log-list-accent{opacity:1;width:4px}.log-list-accent-accept{background:#10b981}.log-list-accent-cancel{background:#ef4444}.log-list-accent-pending{background:#9ca3af}html.dark .log-list-item.selected:before{background:var(--color-accent);box-shadow:0 0 0 3px #c8c8c833}.log-list-main{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.log-list-top{justify-content:space-between;align-items:center;gap:8px;font-size:11px;display:flex}.log-list-date{color:var(--color-text-primary);text-overflow:ellipsis;white-space:nowrap;font-weight:600;font-family:var(--font-family-display);letter-spacing:-.01em;align-items:center;display:inline-flex;overflow:hidden}.log-list-meta{color:var(--color-text-secondary);flex-wrap:wrap;align-items:center;gap:5px;font-size:11px;display:flex}.log-list-meta .status-badge,.log-list-meta .log-badge-status,.log-list-meta .log-list-dim{white-space:nowrap;vertical-align:middle;border-radius:6px;justify-content:center;align-items:center;height:22px;padding:0 8px;font-size:11px;font-weight:600;line-height:1;display:inline-flex}.log-list-dim{letter-spacing:.03em;text-transform:uppercase;color:var(--color-text-tertiary);background:#94a3b814}.logs-page{flex-direction:column;gap:16px;display:flex}.logs-page-header{background:var(--color-surface);box-shadow:none;border:1px solid #1a1a1a14;border-radius:14px;justify-content:space-between;align-items:center;gap:16px;padding:12px 14px;display:flex}.logs-page-title{font-family:var(--font-family-display);color:var(--color-text-primary);letter-spacing:-.01em;margin:0;font-size:clamp(18px,2.2vw,22px);font-weight:700}.logs-page-subtitle{color:var(--color-text-tertiary);margin:4px 0 0;font-size:clamp(11px,1.6vw,12px)}.logs-page-meta{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.logs-updated{color:var(--color-text-tertiary);font-size:12px}.logs-page-count{color:var(--color-text-secondary);font-size:12px}.logs-page-section{margin-bottom:0}.logs-toolbar{background:var(--color-surface);box-shadow:none;border-color:#1a1a1a14;border-radius:14px}.log-entry-content{padding:14px;animation:.18s ease-out both log-detail-in}@keyframes log-detail-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.log-entry-content{animation:none}}.log-entry-layout{gap:var(--space-lg);grid-template-columns:minmax(200px,.7fr) minmax(0,1.3fr);align-items:start;display:grid}.preview-column,.feedback-column{gap:var(--space-md);flex-direction:column;min-width:0;display:flex}.log-entry-secondary-row{gap:var(--space-lg);grid-column:1/-1;grid-template-columns:minmax(200px,.7fr) minmax(0,1.3fr);align-items:start;display:grid}.log-entry-secondary-row.single{grid-template-columns:minmax(200px,1fr)}.preview-item{background:var(--color-surface);border:1px solid #1a1a1a14;border-radius:12px;padding:10px}.preview-item-label{color:var(--color-text-secondary);align-items:center;gap:6px;margin-bottom:8px;font-size:11px;font-weight:600;display:flex}.preview-item-size{color:var(--color-text-tertiary);font-size:10px}.thumbnail-img{background:var(--color-accent-subtle);border:1px solid #1a1a1a14;border-radius:10px;width:100%;height:auto;display:block}.info-card{background:var(--color-surface);border:1px solid #1a1a1a14;border-radius:12px;padding:12px}.info-card-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.info-card-title{color:var(--color-text-primary);font-size:12px;font-weight:600}.variants-summary{flex-direction:column;gap:6px;display:flex}.variants-summary-item{color:var(--color-text-secondary);background:#1a1a1a08;border:1px solid #1a1a1a14;border-radius:10px;justify-content:space-between;gap:8px;padding:6px 10px;font-size:11px;display:flex}.variants-summary-item .label{color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.03em;font-weight:600}.variants-summary-item.pass{background:#16a34a14;border-color:#16a34a40}.variants-summary-item.warning{background:#d977061a;border-color:#d977064d}.variants-summary-item.pending{background:#1a1a1a0a;border-color:#1a1a1a1a}.variants-container{flex-direction:column;gap:12px;display:flex}.variants-container.animate-outputs,.variants-container.animate-outputs .variant-card{animation:.35s ease-out both fadeIn}.variants-container.animate-outputs .variant-card:first-child{animation-delay:20ms}.variants-container.animate-outputs .variant-card:nth-child(2){animation-delay:50ms}.variants-container.animate-outputs .variant-card:nth-child(3){animation-delay:80ms}.variants-container.animate-outputs .variant-card:nth-child(4){animation-delay:.11s}@media(prefers-reduced-motion:reduce){.variants-container.animate-outputs,.variants-container.animate-outputs .variant-card{animation:none}}.variant-card{background:var(--color-surface);border:1px solid #1a1a1a14;border-radius:12px;transition:box-shadow .2s,border-color .2s;overflow:hidden}.variant-card.accepted{border-color:#10b98173;box-shadow:0 0 0 2px #10b98114}.variant-card-header{align-items:center;gap:var(--space-sm);cursor:pointer;text-align:left;background:#1a1a1a08 padding-box padding-box;border:none;width:100%;padding:10px 12px;display:flex}.variant-card-title{color:var(--color-text-primary);align-items:center;gap:8px;font-size:12px;font-weight:600;display:inline-flex}.variant-card-actions{flex-wrap:wrap}.variant-card-content{border-top:1px solid #0000;max-height:0;padding:0;transition:max-height .2s,padding .2s,border-color .2s;overflow:hidden}.variant-card-content.show{border-top-color:#1a1a1a14;max-height:4000px;padding:12px}.variant-card-grid{gap:var(--space-lg);grid-template-columns:1fr;align-items:start;min-width:0;display:grid}.variant-card-grid>*{min-width:0}.variant-preview{min-width:0;margin:0}.feedback-section{margin-bottom:var(--space-md);flex-direction:column;gap:8px;display:flex}.feedback-section:last-child{margin-bottom:0}.feedback-section-title{align-items:center;gap:var(--space-sm);color:var(--color-text-primary);font-size:12px;font-weight:600;display:flex}.feedback-section-title.between{justify-content:space-between}.feedback-section-label{align-items:center;gap:var(--space-sm);display:inline-flex}.llm-feedback-box{color:var(--color-text-secondary);word-break:break-word;overflow-wrap:anywhere;background:#1a1a1a08;border:1px solid #1a1a1a14;border-radius:10px;padding:10px;font-size:12px;line-height:1.5}.llm-feedback-meta{margin-top:var(--space-sm);color:var(--color-text-tertiary);font-size:11px}.data-viewers{gap:var(--space-md);margin-top:var(--space-lg);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));display:grid}@media(max-width:1200px){.log-entry-layout{grid-template-columns:minmax(220px,1fr)}}@media(max-width:980px){.filter-header{flex-direction:column;align-items:flex-start}.filter-meta{align-items:flex-start;width:100%}.filter-actions{flex-wrap:wrap;justify-content:flex-start;width:100%}.filter-row{flex-direction:column;align-items:stretch}.filter-row .filter-divider{display:none}.filter-row .filter-group,.filter-row .form-select,.filter-row .form-control{width:100%;min-width:0}.filter-date-range{flex-wrap:wrap}.logs-toolbar{flex-direction:column;align-items:flex-start}.logs-split{grid-template-columns:1fr}.logs-list{max-width:100%}.logs-detail{min-width:0;position:static}.logs-page-header{flex-direction:column;align-items:flex-start}.logs-page-meta{justify-content:flex-start;width:100%}.logs-detail-header{flex-direction:column;align-items:flex-start}.log-detail-nav{justify-content:flex-start;width:100%}.quick-filter-count{margin-left:0}}@media(max-width:720px){.log-list-top{flex-direction:column;align-items:flex-start;gap:4px}.log-list-date{white-space:normal}.log-list-item{padding:8px}.logs-summary{gap:8px}}.log-entry-time svg{width:14px;height:14px}.scorecard-delta.up.inverted{background:var(--color-error-bg);color:#b91c1c;border-color:#fecaca}.scorecard-delta.down.inverted{background:var(--color-success-bg);color:#15803d;border-color:#86efac}.chart-empty{height:100%;color:var(--color-text-tertiary);flex-direction:column;justify-content:center;align-items:center;gap:8px;display:flex}.chart-empty-icon{opacity:.4}.chart-empty-title{color:var(--color-text-secondary);font-size:13px;font-weight:600}.chart-empty-subtitle{font-size:11px}.sidebar-tooltip{position:relative}.sidebar-tooltip:after{content:attr(data-tooltip);background:var(--color-text-primary);color:#fff;white-space:nowrap;pointer-events:none;opacity:0;z-index:100;border-radius:8px;padding:4px 10px;font-size:11px;font-weight:600;transition:opacity .15s .15s;position:absolute;top:50%;left:calc(100% + 12px);transform:translateY(-50%)}.sidebar-tooltip:hover:after{opacity:1}.shortcut-modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999;background:#0006;justify-content:center;align-items:center;animation:.15s ease-out fadeIn;display:flex;position:fixed;inset:0}.shortcut-modal{background:var(--color-surface);border:1px solid var(--color-border);width:90%;max-width:420px;box-shadow:var(--shadow-md);border-radius:16px;padding:24px}.shortcut-modal-title{color:var(--color-text-primary);margin:0 0 16px;font-size:16px;font-weight:700}.shortcut-modal-section{margin-bottom:16px}.shortcut-modal-section:last-child{margin-bottom:0}.shortcut-modal-section-title{text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-tertiary);margin-bottom:8px;font-size:10px;font-weight:700}.shortcut-row{color:var(--color-text-secondary);justify-content:space-between;align-items:center;padding:4px 0;font-size:12px;display:flex}.shortcut-keys{gap:4px;display:flex}.shortcut-key{background:var(--color-accent-subtle);border:1px solid var(--color-border);min-width:24px;height:24px;font-size:11px;font-weight:600;font-family:var(--font-family-sans);color:var(--color-text-primary);border-radius:6px;justify-content:center;align-items:center;padding:0 6px;display:inline-flex}.shortcut-modal-footer{border-top:1px solid var(--color-border-subtle);color:var(--color-text-tertiary);text-align:center;margin-top:16px;padding-top:12px;font-size:11px}.log-detail-nav{align-items:center;gap:6px;display:flex}.log-detail-nav button{border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;width:28px;height:28px;color:var(--color-text-secondary);border-radius:8px;justify-content:center;align-items:center;transition:all .15s;display:inline-flex}.log-detail-nav button:hover:not(:disabled){border-color:var(--color-text-tertiary);color:var(--color-text-primary)}.log-detail-nav button:disabled{opacity:.3;cursor:not-allowed}.log-detail-nav-count{color:var(--color-text-tertiary);text-align:center;min-width:60px;font-size:11px;font-weight:600}.dark-mode-toggle{border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;width:32px;height:32px;color:var(--color-text-secondary);border-radius:10px;justify-content:center;align-items:center;transition:all .15s;display:inline-flex}.dark-mode-toggle:hover{border-color:var(--color-text-tertiary);color:var(--color-text-primary)}html.dark{color-scheme:dark}html.dark :root,html.dark{--color-bg:#0f1115;--color-background:#0b0c0f;--color-surface:#14161b;--color-border:#23262c;--color-border-subtle:#1b1e24;--color-text-primary:#f4f4f5;--color-text-secondary:#cbd5e1;--color-text-tertiary:#71717a;--color-accent:#e5e7eb;--color-accent-hover:#f4f4f5;--color-accent-subtle:#e2e8f01f;--color-accent-soft:#e2e8f01f;--color-accent-border:#e2e8f04d;--color-success:#22c55e;--color-success-bg:#22c55e2e;--color-error:#f87171;--color-error-bg:#f8717129;--color-info:#e5e7eb;--color-info-bg:#e2e8f01f;--color-warning:#fbbf24;--color-warning-bg:#fbbf2429;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 8px 20px #0006}html.dark body{background-color:#0a0a0a}html.dark main.col-md-10.p-4{background:var(--color-bg)}html.dark .skeleton-shimmer{background:linear-gradient(90deg,#1e1e1e 25%,#2a2a2a,#1e1e1e 75%) 0 0/200% 100%}html.dark ::-webkit-scrollbar-thumb{background:#3a3a3a}html.dark ::-webkit-scrollbar-thumb:hover{background:#4a4a4a}html.dark .metric-group-header{background:0 0;border-bottom-color:#ffffff14}html.dark .metric-group,html.dark .scorecard-card{border-color:#ffffff14}html.dark .segment-card{background:#141414;border-color:#ffffff14}html.dark .metric-group-scope{color:#c8c8c8e6;background:#c8c8c826}html.dark .segment-note{background:#ffffff0f;border-color:#ffffff1a}html.dark .segment-item{background:#111827b3;border-color:#ffffff1a}html.dark .segment-item:hover{box-shadow:none;border-color:#c8c8c866}html.dark .segment-metric{background:#1118278c;border-color:#ffffff14}html.dark .segment-item.active{background:#c8c8c81f;border-color:#c8c8c880;box-shadow:0 0 0 2px #c8c8c82e}html.dark .segment-active{color:#c8c8c8d9;background:#c8c8c833}html.dark .segment-scope{color:#c8c8c8d9;background:#c8c8c826}html.dark .filter-divider{background:#ffffff14}html.dark .filter-row,html.dark .filter-bar{background:#141414cc;border-color:#ffffff14}html.dark .dash-filter-card{background:#111827b3;border-color:#ffffff14}html.dark .dash-filter-title{color:#e2e8f0b3}html.dark .dash-filter-label,html.dark .dash-filter-sep{color:#94a3b880}html.dark .dash-filter-date-sep{color:#94a3b866}html.dark .dash-filter-card .form-select,html.dark .dash-filter-card .form-control{color:#e2e8f0e6;background-color:#ffffff0f;border-color:#ffffff1a}html.dark .dash-filter-card .form-select:focus,html.dark .dash-filter-card .form-control:focus{border-color:#ffffff40;box-shadow:0 0 0 2px #ffffff14}html.dark .form-select{background-image:url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='%23cbd5e1' d='M5.3 7.7a1 1 0 0 1 1.4 0L10 11l3.3-3.3a1 1 0 1 1 1.4 1.4l-4 4a1 1 0 0 1-1.4 0l-4-4a1 1 0 0 1 0-1.4z'/%3E%3C/svg%3E")}html.dark .dash-filter-chips{background:#ffffff14;border-color:#ffffff1a}html.dark .scope-chip{color:#e2e8f0d9;background:#94a3b829;border-color:#94a3b859}html.dark .dash-chip{color:#e2e8f099}html.dark .dash-chip:hover{color:#e2e8f0e6;background:#ffffff0f}html.dark .dash-chip.active{color:#e2e8f0f2;box-shadow:none;background:#ffffff1a}html.dark .dash-chip.active:hover{color:#e2e8f0f2;background:#ffffff1f}html.dark .analytics-panel-badge{color:#e2e8f0cc;background:#ffffff14;border-color:#ffffff1f}html.dark .dashboard-status{background:#141414b3;border-color:#ffffff14}html.dark .logs-toolbar{background:#141414e6;border-color:#ffffff14}html.dark .logs-page-header{box-shadow:none;background:#141414f2;border-color:#ffffff14}html.dark .logs-panel-header{background:#141414e6;border-color:#ffffff14}html.dark .logs-list{box-shadow:none;background:#141414eb;border-color:#ffffff14}html.dark .log-list-item{background:var(--color-surface);border-color:#ffffff14}html.dark .log-list-item:hover{border-color:var(--color-accent-border)}html.dark .log-list-item.selected{border-color:var(--color-accent-border);box-shadow:none;background:#c8c8c829}html.dark .log-list-dim{color:#e2e8f080;background:#ffffff0f}html.dark .logs-detail-card{background:var(--color-surface);box-shadow:none;border-color:#ffffff14}html.dark .logs-detail-header{border-bottom-color:#ffffff0f}html.dark .logs-summary-item{background:#ffffff0f;border-color:#ffffff14}html.dark .logs-panel-meta{background:#ffffff14;border-color:#ffffff1a}html.dark .chip{background:var(--color-surface);border-color:#ffffff1a}html.dark .chip.active{background:var(--color-accent);color:#0b0c0f;border-color:var(--color-accent)}html.dark .info-card,html.dark .preview-item,html.dark .variant-card{background:#141414;border-color:#ffffff14}html.dark .variant-card-header{background:#1e1e1eb3}html.dark .variant-card-content.show{border-top-color:#ffffff0f}html.dark .llm-feedback-box{background:#1e1e1ee6;border-color:#ffffff14}html.dark .variants-summary-item{background:#1e1e1ecc;border-color:#ffffff14}html.dark .thumbnail-img{background:#1e1e1e;border-color:#ffffff0f}html.dark .sidebar-toggle{background:var(--color-surface);border-color:#ffffff1a;box-shadow:2px 0 8px #0003}html.dark .sidebar-toggle:hover{background:#ffffff14;border-color:#fff3;box-shadow:2px 0 8px #0003}html.dark .sidebar .nav-link.active{background:#ffffff0f}html.dark .sidebar .nav-link:hover{background:#ffffff0d}html.dark .sidebar .nav-link.active:before{background:#e5e5e5}html.dark .sidebar .nav-link.active svg{color:#e5e5e5}html.dark .sidebar .nav-link.nav-action-dark{color:#f9fafb;background:#1f2937}html.dark .sidebar .nav-link.nav-action-dark:hover{background:#374151}html.dark .sidebar .nav-section-title,html.dark .sidebar-settings-toggle{color:var(--color-text-secondary)}html.dark .sidebar-settings-toggle:hover{color:#f8fafcd9}html.dark .sidebar-action-btn{color:var(--color-text-secondary);background:0 0}html.dark .sidebar-action-btn:hover{color:var(--color-text-primary);background:#ffffff0d}html.dark .sidebar-divider{background:#ffffff0f}html.dark .filter-pill{color:#93bbfd;background:#c8c8c826}html.dark .btn-primary{color:#0a0a0a;background:#e5e5e5}html.dark .btn-primary:hover{color:#0a0a0a;background:#f5f5f5}html.dark .btn-invite{box-shadow:0 0 0 3px #94a3b82e,0 10px 18px #00000073}html.dark .dashboard-status-pill{color:#fbbf24;background:#fbbf2426;border-color:#fbbf244d}html.dark .dashboard-status-pill.success,html.dark .badge-green{color:#4ade80;background:#22c55e26;border-color:#22c55e4d}html.dark .badge-red{color:#f87171;background:#ef444426;border-color:#ef44444d}html.dark .badge-neutral{color:#94a3b8;background:#94a3b81f;border-color:#94a3b840}html.dark .badge-llm-pass{color:#4ade80;background:#4ade801a;border-color:#4ade8040}html.dark .badge-llm-fail{color:#f87171;background:#f871711a;border-color:#f8717140}html.dark .badge-llm-pending{color:#fbbf24;background:#fbbf241a;border-color:#fbbf2440}html.dark .active-filter-chip{color:var(--color-text-secondary);background:#ffffff0f;border-color:#ffffff1f}html.dark .scorecard-info-icon{color:var(--color-text-tertiary)}html.dark .badge-yellow{color:#fbbf24;background:#fbbf241f}html.dark .badge-blue{background:var(--color-accent-soft);color:var(--color-accent)}html.dark .scorecard-delta.up{color:#4ade80;background:#22c55e1f;border-color:#22c55e4d}html.dark .scorecard-delta.down,html.dark .scorecard-delta.up.inverted{color:#f87171;background:#ef44441f;border-color:#ef44444d}html.dark .scorecard-delta.down.inverted{color:#4ade80;background:#22c55e1f;border-color:#22c55e4d}html.dark .scorecard-delta.neutral{background:#ffffff0f;border-color:#ffffff1a}html.dark .scorecard-insights{border-top-color:#ffffff14}html.dark .scorecard-insight{background:#11182799;border-color:#ffffff1a}html.dark .filter-status{background:#ffffff0f;border-color:#ffffff1a}html.dark .shortcut-modal{background:#141414;border-color:#ffffff1a}html.dark .shortcut-key{background:#1e1e1e;border-color:#ffffff1f}html.dark .sidebar-tooltip:after{color:#0a0a0a;background:#e5e5e5}html.dark .shortcut-modal-overlay{background:#0009}html.dark ::selection{color:#0a0a0a;background-color:#e5e5e5}.product-selector{border-bottom:1px solid var(--color-border-subtle);padding:8px 12px}.product-selector-collapsed{padding:8px 6px}.product-selector-label{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-tertiary);margin-bottom:6px;font-size:10px;font-weight:600}.product-selector-buttons{background:var(--color-accent-subtle);border-radius:8px;gap:4px;padding:3px;display:flex}.product-btn{color:var(--color-text-secondary);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:6px;flex:1;padding:5px 8px;font-size:12px;font-weight:500;transition:all .15s}.product-btn:hover{color:var(--color-text-primary);background:#ffffff80}.product-btn.active{background:var(--color-surface);color:var(--color-text-primary);box-shadow:0 1px 3px #00000014}.copilot-table{border-collapse:separate;border-spacing:0;width:100%;font-size:13px}.copilot-table th{text-align:left;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-tertiary);border-bottom:1px solid var(--color-border);background:var(--color-bg);z-index:1;padding:10px 12px;font-size:11px;font-weight:600;position:sticky;top:0}.copilot-table td{border-bottom:1px solid var(--color-border-subtle);vertical-align:middle;padding:10px 12px}.copilot-table tbody tr{cursor:pointer;transition:background-color .1s}.copilot-table tbody tr:hover,.copilot-table tbody tr.expanded{background:var(--color-accent-subtle)}.copilot-id{color:var(--color-text-secondary);font-family:SF Mono,Cascadia Code,Fira Code,monospace;font-size:12px}.copilot-detail-row td{border-bottom:2px solid var(--color-border);padding:0}.copilot-detail-content{background:var(--color-bg);padding:20px}.copilot-detail-section{margin-bottom:20px}.copilot-detail-section-title{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-tertiary);margin-bottom:10px;font-size:12px;font-weight:600}.copilot-meta-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px;display:grid}.copilot-meta-item{background:var(--color-surface);border:1px solid var(--color-border-subtle);border-radius:8px;padding:8px 10px}.copilot-meta-label{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-tertiary);margin-bottom:2px;font-size:10px;font-weight:600}.copilot-meta-value{color:var(--color-text-primary);word-break:break-all;font-size:13px;font-weight:500}.copilot-timing-table{border-collapse:collapse;width:100%;font-size:12px}.copilot-timing-table th,.copilot-timing-table td{text-align:left;border-bottom:1px solid var(--color-border-subtle);padding:6px 10px}.copilot-timing-table th{color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.04em;background:var(--color-surface);font-size:11px;font-weight:600}.copilot-error-trace{background:var(--color-error-bg);color:var(--color-error);white-space:pre-wrap;word-break:break-all;border:1px solid #c5303033;border-radius:8px;max-height:300px;padding:12px;font-family:SF Mono,Cascadia Code,monospace;font-size:12px;overflow-y:auto}.copilot-pagination{color:var(--color-text-secondary);justify-content:space-between;align-items:center;padding:12px 0;font-size:13px;display:flex}.copilot-pagination-buttons{gap:6px;display:flex}.copilot-pagination-btn{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-primary);cursor:pointer;border-radius:6px;padding:6px 14px;font-size:12px;font-weight:500;transition:all .15s}.copilot-pagination-btn:hover:not(:disabled){border-color:var(--color-accent);background:var(--color-accent-subtle)}.copilot-pagination-btn:disabled{opacity:.4;cursor:not-allowed}.copilot-image-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.copilot-image-label{color:var(--color-text-secondary);margin-bottom:8px;font-size:12px;font-weight:600}.copilot-image-placeholder{background:var(--color-bg);height:200px;color:var(--color-text-tertiary);border:1px dashed var(--color-border);border-radius:8px;place-items:center;font-size:13px;display:grid}.copilot-image-preview{border:1px solid var(--color-border);border-radius:8px;width:100%}html.dark .product-selector-buttons{background:#ffffff0f}html.dark .product-btn.active{background:#ffffff1f}html.dark .copilot-table th{background:var(--color-surface)}html.dark .copilot-meta-item,html.dark .copilot-timing-table th{background:#ffffff0a}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}
