.eco-analytics-root,:root{--eco-analytics-primary:var(--qbit-brand-primary,#6366f1);--eco-analytics-success:var(--qbit-status-success,#10b981);--eco-analytics-warning:var(--qbit-status-warning,#f59e0b);--eco-analytics-error:var(--qbit-status-danger,#ef4444);--eco-analytics-bg:var(--qbit-white,#fff);--eco-analytics-bg-secondary:#f8fafc;--eco-analytics-border:var(--qbit-bg-card,#e2e8f0);--eco-analytics-text:var(--qbit-brand-primary,#1e293b);--eco-analytics-text-secondary:var(--qbit-brand-primary,#64748b);--eco-analytics-radius:12px;--eco-analytics-transition:all .2s ease}@media (prefers-color-scheme:dark){.eco-analytics-root,:root{--eco-analytics-bg:var(--qbit-bg-canvas,#1e1e2e);--eco-analytics-bg-secondary:#2a2a3e;--eco-analytics-border:var(--qbit-brand-primary,#3a3a4e);--eco-analytics-text:var(--qbit-bg-card,#f1f5f9);--eco-analytics-text-secondary:var(--qbit-brand-primary,#94a3b8)}}.eco-analytics-dashboard{flex-direction:column;gap:24px;display:flex}.eco-analytics-dashboard-header{justify-content:space-between;align-items:center;display:flex}.eco-analytics-dashboard-header h2{color:var(--eco-analytics-text);margin:0;font-size:24px}.eco-analytics-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;display:grid}.eco-analytics-card{background:var(--eco-analytics-bg);border:1px solid var(--eco-analytics-border);border-radius:var(--eco-analytics-radius);transition:var(--eco-analytics-transition);align-items:flex-start;gap:12px;padding:20px;display:flex}.eco-analytics-card:hover{box-shadow:0 4px 12px rgba(var(--qbit-black-rgb,0,0,0),.08)}.eco-analytics-card-icon{font-size:24px}.eco-analytics-card-content{flex-direction:column;gap:4px;display:flex}.eco-analytics-card-title{color:var(--eco-analytics-text-secondary);font-size:13px}.eco-analytics-card-value{color:var(--eco-analytics-text);font-size:24px;font-weight:700}.eco-analytics-card-change{color:var(--eco-analytics-text-secondary);font-size:12px;font-weight:500}.eco-analytics-card-change.up{color:var(--eco-analytics-success)}.eco-analytics-card-change.down{color:var(--eco-analytics-error)}.eco-analytics-realtime{background:linear-gradient(135deg,var(--qbit-brand-primary,#6366f1),var(--qbit-brand-secondary,#8b5cf6));border-radius:var(--eco-analytics-radius);color:#fff;flex-direction:column;align-items:center;padding:24px;display:flex}.eco-analytics-realtime-header{align-items:center;gap:8px;font-size:14px;font-weight:500;display:flex}.eco-analytics-realtime-dot{background:var(--qbit-status-danger,#ef4444);border-radius:50%;width:8px;height:8px;animation:2s infinite eco-analytics-pulse}.eco-analytics-realtime.connected .eco-analytics-realtime-dot{background:var(--eco-analytics-success)}@keyframes eco-analytics-pulse{0%,to{opacity:1}50%{opacity:.5}}.eco-analytics-realtime-value{margin:8px 0;font-size:48px;font-weight:700}.eco-analytics-realtime-label{opacity:.8;font-size:14px}.eco-analytics-chart{background:var(--eco-analytics-bg);border:1px solid var(--eco-analytics-border);border-radius:var(--eco-analytics-radius);padding:20px}.eco-analytics-chart-bars{justify-content:space-between;align-items:flex-end;gap:4px;height:100%;display:flex}.eco-analytics-chart-bar-wrapper{flex-direction:column;flex:1;align-items:center;gap:8px;height:100%;display:flex}.eco-analytics-chart-bar{background:linear-gradient(180deg,var(--eco-analytics-primary),#a5b4fc);max-width:32px;transition:var(--eco-analytics-transition);border-radius:4px 4px 0 0;width:100%}.eco-analytics-chart-bar:hover{opacity:.8}.eco-analytics-chart-label{color:var(--eco-analytics-text-secondary);white-space:nowrap;font-size:10px}.eco-analytics-table{background:var(--eco-analytics-bg);border:1px solid var(--eco-analytics-border);border-radius:var(--eco-analytics-radius);padding:20px}.eco-analytics-table-header{color:var(--eco-analytics-text-secondary);text-transform:uppercase;padding-bottom:12px;font-size:12px;font-weight:600}.eco-analytics-table-header,.eco-analytics-table-row{border-bottom:1px solid var(--eco-analytics-border);grid-template-columns:2fr 1fr 1fr;gap:16px;display:grid}.eco-analytics-table-row{align-items:center;padding:12px 0}.eco-analytics-table-row:last-child{border-bottom:none}.eco-analytics-table-name,.eco-analytics-table-value{color:var(--eco-analytics-text);font-size:14px}.eco-analytics-table-value{font-weight:600}.eco-analytics-table-bar-wrapper{align-items:center;gap:8px;display:flex}.eco-analytics-table-bar{background:var(--eco-analytics-primary);border-radius:3px;flex:1;max-width:80px;height:6px}.eco-analytics-table-percent{color:var(--eco-analytics-text-secondary);min-width:40px;font-size:12px}.eco-analytics-date-picker{position:relative}.eco-analytics-date-btn{background:var(--eco-analytics-bg);border:1px solid var(--eco-analytics-border);color:var(--eco-analytics-text);cursor:pointer;border-radius:8px;align-items:center;gap:8px;padding:10px 16px;font-size:14px;display:flex}.eco-analytics-date-arrow{color:var(--eco-analytics-text-secondary);font-size:10px}.eco-analytics-date-dropdown{background:var(--eco-analytics-bg);border:1px solid var(--eco-analytics-border);box-shadow:0 10px 30px rgba(var(--qbit-black-rgb,0,0,0),.1);z-index:100;border-radius:8px;min-width:150px;margin-top:4px;padding:8px;position:absolute;top:100%;right:0}.eco-analytics-date-option{color:var(--eco-analytics-text);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:6px;width:100%;padding:8px 12px;font-size:13px;display:block}.eco-analytics-date-option:hover{background:var(--eco-analytics-bg-secondary)}.eco-analytics-date-option.active{background:var(--eco-analytics-primary);color:#fff}.eco-analytics-activity{background:var(--eco-analytics-bg);border:1px solid var(--eco-analytics-border);border-radius:var(--eco-analytics-radius);padding:20px}.eco-analytics-activity h4{color:var(--eco-analytics-text);margin:0 0 16px;font-size:16px}.eco-analytics-activity-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.eco-analytics-activity-item{text-align:center}.eco-analytics-activity-value{color:var(--eco-analytics-primary);font-size:28px;font-weight:700;display:block}.eco-analytics-activity-label{color:var(--eco-analytics-text-secondary);font-size:12px}.eco-analytics-dashboard-charts{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;display:grid}.eco-analytics-dashboard-chart h4{color:var(--eco-analytics-text);margin:0 0 16px;font-size:16px}.eco-analytics-dashboard-tables{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:20px;display:grid}.eco-analytics-loading{justify-content:center;align-items:center;min-height:200px;display:flex}.eco-analytics-spinner{border:3px solid var(--eco-analytics-border);border-top-color:var(--eco-analytics-primary);border-radius:50%;width:28px;height:28px;animation:1s linear infinite eco-analytics-spin}@keyframes eco-analytics-spin{to{transform:rotate(1turn)}}.eco-analytics-empty{color:var(--eco-analytics-text-secondary);justify-content:center;align-items:center;min-height:100px;display:flex}@media (max-width:768px){.eco-analytics-dashboard-header{flex-direction:column;align-items:flex-start;gap:16px}.eco-analytics-grid{grid-template-columns:repeat(2,1fr)}.eco-analytics-activity-grid{grid-template-columns:1fr;gap:12px}}@media (max-width:480px){.eco-analytics-grid{grid-template-columns:1fr}}:root{--analytics-primary:var(--qbit-brand-primary,#6366f1);--analytics-success:var(--qbit-status-success,#22c55e);--analytics-warning:var(--qbit-status-warning,#f59e0b);--analytics-danger:var(--qbit-status-danger,#ef4444);--analytics-info:var(--qbit-brand-primary,#3b82f6);--analytics-gray-50:var(--qbit-white,#f9fafb);--analytics-gray-100:var(--qbit-bg-card,#f3f4f6);--analytics-gray-200:var(--qbit-bg-card,#e5e7eb);--analytics-gray-300:var(--qbit-line-soft,#d1d5db);--analytics-gray-500:var(--qbit-text-secondary,#6b7280);--analytics-gray-700:var(--qbit-brand-primary,#374151);--analytics-gray-900:var(--qbit-bg-canvas,#111827);--analytics-radius:12px}.analytics-overview{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:24px;display:grid}.analytics-stat-card{border-radius:var(--analytics-radius);box-shadow:0 1px 3px rgba(var(--qbit-black-rgb,0,0,0),.1);background:#fff;padding:24px;position:relative;overflow:hidden}.analytics-stat-card:before{background:linear-gradient(90deg,var(--analytics-primary),var(--analytics-info));content:"";height:4px;position:absolute;top:0;left:0;right:0}.analytics-stat-icon{margin-bottom:12px;font-size:24px}.analytics-stat-value{color:var(--analytics-gray-900);font-size:32px;font-weight:700}.analytics-stat-label{color:var(--analytics-gray-500);margin-top:4px;font-size:14px}.analytics-stat-change{border-radius:16px;align-items:center;gap:4px;margin-top:8px;padding:4px 8px;font-size:13px;display:inline-flex}.analytics-stat-change.positive{background:var(--qbit-status-success,#dcfce7);color:var(--qbit-status-success,#166534)}.analytics-stat-change.negative{background:var(--qbit-status-danger,#fee2e2);color:var(--qbit-status-danger,#991b1b)}.analytics-realtime{background:linear-gradient(135deg,var(--qbit-brand-primary,#1e1b4b),var(--qbit-brand-primary,#312e81));border-radius:var(--analytics-radius);color:#fff;padding:24px}.analytics-realtime-value{font-size:56px;font-weight:800}.analytics-realtime-label{opacity:.9;font-size:16px}.analytics-realtime-dot{background:var(--qbit-status-success,#22c55e);border-radius:50%;width:8px;height:8px;margin-right:8px;animation:1.5s infinite analytics-pulse;display:inline-block}.analytics-card{border-radius:var(--analytics-radius);box-shadow:0 1px 3px rgba(var(--qbit-black-rgb,0,0,0),.1);background:#fff;overflow:hidden}.analytics-header{border-bottom:1px solid var(--analytics-gray-200);justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.analytics-title{color:var(--analytics-gray-900);font-size:18px;font-weight:600}.analytics-table{border-collapse:collapse;width:100%}.analytics-table td,.analytics-table th{border-bottom:1px solid var(--analytics-gray-100);padding:14px 20px}.analytics-table th{color:var(--analytics-gray-500);letter-spacing:.5px}.analytics-table th,.analytics-table tr:hover td{background:var(--analytics-gray-50)}.analytics-chart{padding:24px}.analytics-chart-area{align-items:flex-end;gap:4px;height:280px;display:flex}.analytics-chart-bar{background:linear-gradient(to top,var(--analytics-primary),var(--analytics-info));border-radius:4px 4px 0 0;flex:1;min-height:4px;transition:height .3s;position:relative}.analytics-chart-bar:hover{opacity:.8}.analytics-chart-bar:hover:after{background:var(--analytics-gray-900);color:#fff;content:attr(data-value);white-space:nowrap;border-radius:4px;padding:4px 8px;font-size:12px;position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.analytics-date-picker{background:var(--analytics-gray-100);border-radius:8px;padding:4px;display:inline-flex}.analytics-date-btn{color:var(--analytics-gray-500);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:8px 16px;font-size:13px;font-weight:500;transition:all .2s}.analytics-date-btn.active{box-shadow:0 1px 2px rgba(var(--qbit-black-rgb,0,0,0),.1);color:var(--analytics-gray-900);background:#fff}.analytics-btn{cursor:pointer;border:none;border-radius:8px;align-items:center;gap:6px;padding:10px 20px;font-size:14px;font-weight:500;transition:all .2s;display:inline-flex}.analytics-btn-primary{background:var(--analytics-primary);color:#fff}.analytics-btn-primary:hover{background:var(--qbit-brand-primary,#4f46e5)}.analytics-btn-outline{border:1px solid var(--analytics-gray-300);color:var(--analytics-gray-700);background:0 0}.analytics-empty{color:var(--analytics-gray-500);text-align:center;padding:60px 20px}.analytics-empty-icon{opacity:.5;margin-bottom:16px;font-size:64px}.analytics-loading{justify-content:center;padding:40px;display:flex}.analytics-spinner{border:4px solid var(--analytics-gray-200);border-top-color:var(--analytics-primary);width:40px;height:40px}.analytics-overview{box-shadow:0 4px 24px rgba(var(--qbit-black-rgb,0,0,0),.08);background:#fff;border-radius:20px;padding:24px}.analytics-overview-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.analytics-overview-title{color:var(--qbit-bg-canvas,#111827);margin:0;font-size:20px;font-weight:700}.analytics-time-selector{gap:8px;display:flex}.analytics-time-btn{border:1px solid var(--qbit-bg-card,#e5e7eb);color:var(--qbit-text-secondary,#6b7280);cursor:pointer;background:0 0;border-radius:8px;padding:8px 16px;font-size:13px;transition:all .15s}.analytics-time-btn:hover{background:var(--qbit-white,#f9fafb)}.analytics-time-btn.active{background:var(--qbit-brand-primary,#6366f1);border-color:var(--qbit-brand-primary,#6366f1);color:#fff}.analytics-metrics-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;display:grid}.analytics-metric-card{background:var(--qbit-white,#f9fafb);border-radius:16px;align-items:center;gap:16px;padding:20px;transition:all .2s;display:flex}.analytics-metric-card:hover{background:var(--qbit-bg-card,#f3f4f6)}.analytics-metric-icon{font-size:32px}.analytics-metric-content{flex:1}.analytics-metric-value{color:var(--qbit-bg-canvas,#111827);font-size:24px;font-weight:700}.analytics-metric-label{color:var(--qbit-text-secondary,#6b7280);margin-top:4px;font-size:13px}.analytics-metric-change{border-radius:6px;padding:4px 8px;font-size:12px;font-weight:500}.analytics-metric-change.positive{background:var(--qbit-status-success,#dcfce7);color:var(--qbit-status-success,#16a34a)}.analytics-metric-change.negative{background:var(--qbit-status-danger,#fee2e2);color:var(--qbit-status-danger,#dc2626)}.analytics-realtime{box-shadow:0 2px 12px rgba(var(--qbit-black-rgb,0,0,0),.06);background:#fff;border-radius:16px;padding:20px}.analytics-realtime-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.analytics-realtime-title{color:var(--qbit-bg-canvas,#111827);align-items:center;gap:8px;margin:0;font-size:16px;font-weight:600;display:flex}.analytics-status-dot{background:var(--qbit-text-muted,#9ca3af);border-radius:50%;width:8px;height:8px}.analytics-status-dot.connected{background:var(--qbit-status-success,#22c55e);animation:2s infinite analytics-pulse}@keyframes analytics-pulse{0%,to{opacity:1}50%{opacity:.5}}.analytics-refresh-btn{background:var(--qbit-bg-card,#f3f4f6);cursor:pointer;border:none;border-radius:8px;padding:8px 16px;font-size:13px;transition:background .15s}.analytics-refresh-btn:hover{background:var(--qbit-bg-card,#e5e7eb)}.analytics-realtime-list{flex-direction:column;gap:8px;max-height:300px;display:flex;overflow-y:auto}.analytics-realtime-item{background:var(--qbit-white,#f9fafb);border-radius:8px;align-items:center;gap:12px;padding:12px;font-size:14px;display:flex}.analytics-realtime-time{color:var(--qbit-text-muted,#9ca3af);font-family:monospace}.analytics-realtime-event{color:var(--qbit-brand-primary,#374151);flex:1}.analytics-realtime-value{color:var(--qbit-bg-canvas,#111827);font-weight:500}.analytics-chart{box-shadow:0 2px 12px rgba(var(--qbit-black-rgb,0,0,0),.06);background:#fff;border-radius:16px;padding:20px}.analytics-chart-title{color:var(--qbit-bg-canvas,#111827);margin:0 0 16px;font-size:16px;font-weight:600}.analytics-bar-chart,.analytics-chart-container{align-items:flex-end;display:flex}.analytics-bar-chart{justify-content:space-around;gap:8px;width:100%;height:100%}.analytics-bar-wrapper{flex-direction:column;flex:1;align-items:center;height:100%;display:flex}.analytics-bar{border-radius:4px 4px 0 0;width:100%;max-width:40px;transition:height .3s}.analytics-bar-label{color:var(--qbit-text-secondary,#6b7280);margin-top:8px;font-size:12px}.analytics-table{box-shadow:0 2px 12px rgba(var(--qbit-black-rgb,0,0,0),.06);background:#fff;border-radius:16px;overflow:hidden}.analytics-table table{border-collapse:collapse;width:100%}.analytics-table td,.analytics-table th{text-align:left;padding:14px 16px}.analytics-table th{background:var(--qbit-white,#f9fafb);color:var(--qbit-text-secondary,#6b7280);text-transform:uppercase;font-size:13px;font-weight:600}.analytics-table td{border-top:1px solid var(--qbit-bg-card,#f3f4f6);color:var(--qbit-brand-primary,#374151);font-size:14px}.analytics-load-more,.analytics-table tr:hover td{background:var(--qbit-white,#f9fafb)}.analytics-load-more{color:var(--qbit-text-secondary,#6b7280);cursor:pointer;border:none;width:100%;padding:14px;font-size:14px;transition:background .15s}.analytics-load-more:hover{background:var(--qbit-bg-card,#f3f4f6)}.analytics-date-picker{flex-direction:column;gap:12px;display:flex}.analytics-date-presets{flex-wrap:wrap;gap:8px;display:flex}.analytics-preset-btn{background:var(--qbit-bg-card,#f3f4f6);color:var(--qbit-brand-primary,#374151);cursor:pointer;border:none;border-radius:8px;padding:8px 16px;font-size:13px;transition:all .15s}.analytics-preset-btn:hover{background:var(--qbit-bg-card,#e5e7eb)}.analytics-preset-btn.active{background:var(--qbit-brand-primary,#6366f1);color:#fff}.analytics-date-inputs{align-items:center;gap:12px;display:flex}.analytics-date-input{border:1px solid var(--qbit-bg-card,#e5e7eb);border-radius:8px;padding:10px 14px;font-size:14px}.analytics-date-input:focus{border-color:var(--qbit-brand-primary,#6366f1);outline:none}.analytics-date-separator,.analytics-empty,.analytics-loading{color:var(--qbit-text-secondary,#6b7280)}.analytics-empty,.analytics-loading{flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:48px;display:flex}.analytics-spinner{border:3px solid var(--qbit-bg-card,#e5e7eb);border-top-color:var(--qbit-brand-primary,#6366f1);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite analytics-spin}@keyframes analytics-spin{to{transform:rotate(1turn)}}
:root{--fw-primary:var(--qbit-brand-primary,var(--brand-primary,#7c3aed));--fw-primary-hover:var(--qbit-brand-secondary,var(--brand-secondary,#6d28d9));--fw-bg:var(--qbit-bg-canvas,var(--bg-canvas,#fff));--fw-bg-dark:var(--qbit-bg-elevated,var(--bg-elevated,#1f2937));--fw-text:var(--qbit-text-primary,var(--text-primary,#374151));--fw-text-dark:var(--qbit-text-primary,var(--text-primary,#f9fafb));--fw-shadow:var(--qbit-shadow-soft,var(--shadow-soft,0 4px 20px #00000026));--fw-shadow-hover:var(--qbit-shadow-card,var(--shadow-card,0 8px 30px #0003));--fw-transition:all .3s cubic-bezier(.4,0,.2,1);--fw-btn-size:56px;--fw-feature-size:48px;--qbit-bg-canvas:var(--bg-canvas,#fff);--qbit-bg-elevated:var(--bg-elevated,#fff);--qbit-text-primary:var(--text-primary,#0f172a);--qbit-text-secondary:var(--text-secondary,#475569);--qbit-text-muted:var(--text-muted,#94a3b8);--qbit-line-soft:var(--line-soft,#0000000f)}.dark,.did-theme-dark,[data-theme=dark]{--qbit-bg-canvas:var(--bg-canvas,#0f0f1a);--qbit-bg-elevated:var(--bg-elevated,#162033);--qbit-text-primary:var(--text-primary,#fff);--qbit-text-secondary:var(--text-secondary,#94a3b8);--qbit-text-muted:var(--text-muted,#64748b);--qbit-line-soft:var(--line-soft,#ffffff14)}.floating-widget{flex-direction:column;align-items:center;gap:8px;display:flex}.floating-widget__main-btn{background:linear-gradient(135deg,var(--fw-primary) 0,#8b5cf6 100%);box-shadow:var(--fw-shadow);color:#fff;cursor:pointer;height:var(--fw-btn-size);transform:translate(var(--fw-main-x,0),var(--fw-main-y,0));transition:var(--fw-transition);width:var(--fw-btn-size);z-index:10;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:relative}.floating-widget__main-btn:hover{box-shadow:var(--fw-shadow-hover);transform:translate(var(--fw-main-x,0),var(--fw-main-y,0)) scale(1.1)}.floating-widget__main-btn.expanded{background:linear-gradient(135deg,var(--qbit-status-danger,#ef4444) 0,var(--qbit-status-danger,#f87171) 100%);transform:translate(var(--fw-main-x,0),var(--fw-main-y,0)) rotate(0deg)}.floating-widget__main-icon{transition:var(--fw-transition);justify-content:center;align-items:center;display:flex}.floating-widget__main-btn.expanded .floating-widget__main-icon{animation:.3s fw-rotate-in}@keyframes fw-rotate-in{0%{opacity:0;transform:rotate(-90deg)}to{opacity:1;transform:rotate(0)}}.floating-widget__honeycomb{bottom:calc(var(--fw-btn-size)/2);height:0;left:calc(var(--fw-btn-size)/2);pointer-events:none;width:0;position:absolute}.floating-widget__honeycomb.expanded{pointer-events:auto}.floating-widget__feature-btn{background:var(--fw-bg);box-shadow:var(--fw-shadow);color:var(--color,var(--fw-primary));cursor:pointer;height:var(--fw-feature-size);opacity:0;pointer-events:none;transition:var(--fw-transition);width:var(--fw-feature-size);z-index:5;border:none;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;top:0;left:0;transform:translate(-50%,-50%)scale(0)}.floating-widget__honeycomb.expanded .floating-widget__feature-btn{opacity:1;pointer-events:auto;transform:translate(calc(-50% + var(--x)),calc(-50% + var(--y))) scale(1);transition-delay:var(--delay)}.floating-widget__feature-btn:hover{background:var(--color,var(--fw-primary));box-shadow:var(--fw-shadow-hover);color:#fff;transform:translate(calc(-50% + var(--x)),calc(-50% + var(--y))) scale(1.15)}.floating-widget__feature-btn:active{transform:translate(calc(-50% + var(--x)),calc(-50% + var(--y))) scale(1.05)}.floating-widget__feature-icon{font-size:20px;line-height:1}.floating-widget__feature-label{background:rgba(var(--qbit-black-rgb,0,0,0),.8);color:#fff;opacity:0;pointer-events:none;white-space:nowrap;border-radius:4px;padding:4px 8px;font-size:11px;font-weight:500;transition:opacity .2s;position:absolute;top:-30px;left:50%;transform:translate(-50%)}.floating-widget__feature-btn:hover .floating-widget__feature-label{opacity:1}.floating-widget__back-to-top{background:var(--fw-bg);box-shadow:var(--fw-shadow);color:var(--fw-text);cursor:pointer;height:40px;transition:var(--fw-transition);border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;animation:.3s fw-fade-in;display:flex}.floating-widget__back-to-top:hover{box-shadow:var(--fw-shadow-hover);color:var(--fw-primary);transform:translateY(-3px)}@keyframes fw-fade-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.floating-widget.dark{--fw-feature-bg-default:linear-gradient(135deg,var(--qbit-brand-primary,#4f46e5) 0%,var(--qbit-brand-secondary,#7c3aed) 100%);--fw-feature-bg-inner:var(--qbit-bg-canvas,#120b24);--fw-feature-icon-default:#a78bfa;--fw-feature-icon-hover:var(--qbit-white,#fff);--fw-feature-bg-classic:rgba(var(--qbit-bg-canvas-rgb,18,11,36),.85);--fw-feature-border-classic:#6366f166}.floating-widget.light{--fw-feature-bg-default:linear-gradient(135deg,var(--qbit-brand-primary,#818cf8) 0%,var(--qbit-brand-secondary,#c084fc) 100%);--fw-feature-bg-inner:var(--qbit-white,#fff);--fw-feature-icon-default:#6366f1;--fw-feature-icon-hover:var(--qbit-white,#fff);--fw-feature-bg-classic:rgba(var(--qbit-bg-card-rgb,238,242,255),.85);--fw-feature-border-classic:#a855f74d}.floating-widget.dark .floating-widget__back-to-top,.floating-widget.dark .floating-widget__feature-btn{background:var(--fw-bg-dark);color:var(--fw-text-dark)}.floating-widget.dark .floating-widget__feature-btn:hover{background:var(--color,var(--fw-primary));color:#fff}.floating-widget__main-btn:before{background:inherit;content:"";opacity:0;border-radius:50%;width:100%;height:100%;animation:2s ease-out infinite fw-pulse;position:absolute}@keyframes fw-pulse{0%{opacity:.5;transform:scale(1)}to{opacity:0;transform:scale(1.6)}}@media (max-width:640px){:root{--fw-btn-size:50px;--fw-feature-size:42px}.floating-widget__honeycomb.expanded .floating-widget__feature-btn{transform:translate(calc(-50% + var(--x)*.85),calc(-50% + var(--y)*.85)) scale(1)}.floating-widget__feature-btn:hover{transform:translate(calc(-50% + var(--x)*.85),calc(-50% + var(--y)*.85)) scale(1.1)}}.floating-widget__back-to-top:focus,.floating-widget__feature-btn:focus,.floating-widget__main-btn:focus{outline:2px solid var(--fw-primary);outline-offset:2px}@media print{.floating-widget{display:none!important}}.floating-widget.template-sci-fi{--fw-bg:rgba(var(--qbit-bg-canvas-rgb,15,23,42),.95);--fw-bg-dark:rgba(var(--qbit-bg-canvas-rgb,10,15,30),.95);--fw-text:var(--qbit-bg-card,#e2e8f0);--fw-text-dark:var(--qbit-white,#f8fafc)}.floating-widget.template-sci-fi .floating-widget__main-btn{background:linear-gradient(135deg,var(--fw-primary) 0,#8b5cf6 100%);clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%);filter:drop-shadow(0 0 10px rgba(var(--qbit-brand-secondary-rgb,139,92,246),.6));transition:var(--fw-transition);border:none;border-radius:0;position:relative}.floating-widget.template-sci-fi .floating-widget__main-btn:after{background:var(--fw-main-bg-inner,#120b24);clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%);content:"";transition:var(--fw-transition);z-index:1;position:absolute;inset:2px}.floating-widget.template-sci-fi .floating-widget__main-btn:hover:after{background:rgba(var(--qbit-brand-secondary-rgb,139,92,246),.25)}.floating-widget.template-sci-fi .floating-widget__main-btn.expanded{background:linear-gradient(135deg,var(--qbit-status-danger,#ef4444) 0,var(--qbit-status-danger,#f87171) 100%);filter:drop-shadow(0 0 12px rgba(var(--qbit-status-danger-rgb,239,68,68),.8))}.floating-widget.template-sci-fi .floating-widget__main-btn.expanded:after{background:var(--fw-main-bg-inner,#120b24)}.floating-widget.template-sci-fi .floating-widget__main-btn.expanded:hover:after{background:rgba(var(--qbit-status-danger-rgb,239,68,68),.25)}.floating-widget.template-sci-fi .floating-widget__main-icon{color:var(--qbit-brand-secondary,#a78bfa);z-index:2;position:relative}.floating-widget.template-sci-fi .floating-widget__main-btn.expanded .floating-widget__main-icon{color:var(--qbit-status-danger,#f87171)}.floating-widget.template-sci-fi .floating-widget__main-btn:before{clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%);border-radius:0;animation:2s ease-out infinite fw-hexagon-pulse}@keyframes fw-hexagon-pulse{0%{opacity:.6;transform:scale(1)}to{opacity:0;transform:scale(1.45)}}.floating-widget.template-sci-fi .floating-widget__feature-btn{background:var(--fw-feature-bg-default);clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%);filter:drop-shadow(0 0 8px rgba(var(--qbit-brand-primary-rgb,99,102,241),.4));height:var(--fw-feature-size);width:var(--fw-feature-size);border:none;border-radius:0;position:absolute}.floating-widget.template-sci-fi .floating-widget__feature-btn:after{background:var(--fw-main-bg-inner,#120b24);clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%);content:"";transition:var(--fw-transition);z-index:1;position:absolute;inset:2px}.floating-widget.template-sci-fi .floating-widget__feature-btn:hover:after{background:var(--color,var(--fw-primary));opacity:.15}.floating-widget.template-sci-fi .floating-widget__honeycomb.expanded .floating-widget__feature-btn{transform:translate(calc(-50% + var(--x)),calc(-50% + var(--y))) scale(1)}.floating-widget.template-sci-fi .floating-widget__feature-btn:hover{filter:drop-shadow(0 0 14px var(--color,var(--fw-primary)));background:var(--color,var(--fw-primary))!important;transform:translate(calc(-50% + var(--x)),calc(-50% + var(--y))) scale(1.15)!important}.floating-widget.template-sci-fi .floating-widget__feature-btn:active{transform:translate(calc(-50% + var(--x)),calc(-50% + var(--y))) scale(1.05)!important}.floating-widget.template-sci-fi .floating-widget__feature-icon{color:var(--color,#fff);transition:var(--fw-transition);z-index:2;font-size:20px;position:relative}.floating-widget.template-sci-fi .floating-widget__feature-btn:hover .floating-widget__feature-icon{color:var(--fw-feature-icon-hover,#fff)!important}.floating-widget.template-sci-fi .floating-widget__feature-label{background:var(--fw-main-bg-inner,#120b24);border:1px solid var(--color,var(--fw-primary));box-shadow:0 0 10px rgba(var(--qbit-black-rgb,0,0,0),.6);color:var(--qbit-bg-card,#f1f5f9);z-index:3}.floating-widget__hover-bridge{pointer-events:auto;z-index:1;background:0 0;border-radius:50%;width:320px;height:320px;position:absolute;transform:translate(-50%,-50%)}.floating-widget.template-classic .floating-widget__feature-btn{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:var(--fw-feature-bg-classic);border:1px solid var(--fw-feature-border-classic);box-shadow:0 4px 15px rgba(var(--qbit-black-rgb,0,0,0),.08);clip-path:none;border-radius:50%}.floating-widget.template-classic .floating-widget__feature-btn:hover{border-color:rgba(var(--qbit-white-rgb,255,255,255),.3);box-shadow:0 8px 25px rgba(var(--qbit-black-rgb,0,0,0),.15);transform:translate(calc(-50% + var(--x)),calc(-50% + var(--y))) scale(1.15) translateY(-2px);background:var(--color,var(--fw-primary))!important;color:var(--fw-feature-icon-hover,#fff)!important}.floating-widget.template-classic .floating-widget__feature-icon{color:var(--color,#6366f1);transition:var(--fw-transition)}.floating-widget.template-classic .floating-widget__feature-btn:hover .floating-widget__feature-icon{color:var(--fw-feature-icon-hover,#fff)!important}.floating-widget.template-cyberpunk{--fw-bg:var(--qbit-bg-canvas,#12072b);--fw-bg-dark:var(--qbit-black,#000);--fw-text:var(--qbit-brand-accent,#00f0ff);--fw-text-dark:var(--qbit-status-danger,#ff007f)}.floating-widget.template-cyberpunk .floating-widget__main-btn{background:linear-gradient(135deg,var(--qbit-status-danger,#ff007f) 0,var(--qbit-brand-secondary,#7b2ff7) 100%);clip-path:polygon(30% 0,70% 0,100% 30%,100% 70%,70% 100%,30% 100%,0 70%,0 30%);filter:drop-shadow(0 0 10px rgba(var(--qbit-status-danger-rgb,255,0,127),.7));transition:var(--fw-transition);border:none;border-radius:0;position:relative}.floating-widget.template-cyberpunk .floating-widget__main-btn:after{background:var(--fw-main-bg-inner,#12072b);clip-path:polygon(30% 0,70% 0,100% 30%,100% 70%,70% 100%,30% 100%,0 70%,0 30%);content:"";transition:var(--fw-transition);z-index:1;position:absolute;inset:2px}.floating-widget.template-cyberpunk .floating-widget__main-btn:hover:after{background:rgba(var(--qbit-brand-accent-rgb,0,240,255),.2)}.floating-widget.template-cyberpunk .floating-widget__main-btn.expanded{background:linear-gradient(135deg,var(--qbit-brand-accent,#00f0ff) 0,var(--qbit-status-danger,#ff007f) 100%);filter:drop-shadow(0 0 12px rgba(var(--qbit-brand-accent-rgb,0,240,255),.9))}.floating-widget.template-cyberpunk .floating-widget__main-icon{color:var(--qbit-brand-accent,#00f0ff);text-shadow:0 0 5px var(--qbit-brand-accent,#00f0ff);z-index:2;position:relative}.floating-widget.template-cyberpunk .floating-widget__main-btn.expanded .floating-widget__main-icon{color:var(--qbit-status-danger,#ff007f);text-shadow:0 0 5px var(--qbit-status-danger,#ff007f)}.floating-widget.template-cyberpunk .floating-widget__feature-btn{background:var(--fw-feature-bg-default);clip-path:polygon(30% 0,70% 0,100% 30%,100% 70%,70% 100%,30% 100%,0 70%,0 30%);filter:drop-shadow(0 0 8px rgba(var(--qbit-brand-accent-rgb,0,240,255),.5));height:var(--fw-feature-size);width:var(--fw-feature-size);border:none;border-radius:0;position:absolute}.floating-widget.template-cyberpunk .floating-widget__feature-btn:after{background:var(--fw-main-bg-inner,#12072b);clip-path:polygon(30% 0,70% 0,100% 30%,100% 70%,70% 100%,30% 100%,0 70%,0 30%);content:"";transition:var(--fw-transition);z-index:1;position:absolute;inset:2px}.floating-widget.template-cyberpunk .floating-widget__feature-btn:hover{background:var(--color,#ff007f)!important}.floating-widget.template-cyberpunk .floating-widget__feature-btn:hover:after{background:var(--color,#00f0ff);opacity:.2}.floating-widget.template-cyberpunk .floating-widget__feature-icon{color:var(--color,#fff);filter:drop-shadow(0 0 4px var(--color,#ff007f));transition:var(--fw-transition);z-index:2;font-size:20px;position:relative}.floating-widget.template-cyberpunk .floating-widget__feature-btn:hover .floating-widget__feature-icon{filter:none;color:var(--fw-feature-icon-hover,#fff)!important}.floating-widget.template-cyberpunk .floating-widget__feature-label{background:var(--fw-main-bg-inner,#12072b);border:1px solid var(--color,#00f0ff);box-shadow:0 0 10px rgba(var(--qbit-status-danger-rgb,255,0,127),.4);color:var(--qbit-brand-accent,#00f0ff);z-index:3;font-family:monospace}.eco-analytics-root,:root{--eco-analytics-primary:var(--qbit-brand-primary,#6366f1);--eco-analytics-success:var(--qbit-status-success,#10b981);--eco-analytics-warning:var(--qbit-status-warning,#f59e0b);--eco-analytics-error:var(--qbit-status-danger,#ef4444);--eco-analytics-bg:var(--qbit-white,#fff);--eco-analytics-bg-secondary:#f8fafc;--eco-analytics-border:var(--qbit-bg-card,#e2e8f0);--eco-analytics-text:var(--qbit-brand-primary,#1e293b);--eco-analytics-text-secondary:var(--qbit-brand-primary,#64748b);--eco-analytics-radius:12px;--eco-analytics-transition:all .2s ease}@media (prefers-color-scheme:dark){.eco-analytics-root,:root{--eco-analytics-bg:var(--qbit-bg-canvas,#1e1e2e);--eco-analytics-bg-secondary:#2a2a3e;--eco-analytics-border:var(--qbit-brand-primary,#3a3a4e);--eco-analytics-text:var(--qbit-bg-card,#f1f5f9);--eco-analytics-text-secondary:var(--qbit-brand-primary,#94a3b8)}}.eco-analytics-dashboard{flex-direction:column;gap:24px;display:flex}.eco-analytics-dashboard-header{justify-content:space-between;align-items:center;display:flex}.eco-analytics-dashboard-header h2{color:var(--eco-analytics-text);margin:0;font-size:24px}.eco-analytics-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;display:grid}.eco-analytics-card{background:var(--eco-analytics-bg);border:1px solid var(--eco-analytics-border);border-radius:var(--eco-analytics-radius);transition:var(--eco-analytics-transition);align-items:flex-start;gap:12px;padding:20px;display:flex}.eco-analytics-card:hover{box-shadow:0 4px 12px rgba(var(--qbit-black-rgb,0,0,0),.08)}.eco-analytics-card-icon{font-size:24px}.eco-analytics-card-content{flex-direction:column;gap:4px;display:flex}.eco-analytics-card-title{color:var(--eco-analytics-text-secondary);font-size:13px}.eco-analytics-card-value{color:var(--eco-analytics-text);font-size:24px;font-weight:700}.eco-analytics-card-change{color:var(--eco-analytics-text-secondary);font-size:12px;font-weight:500}.eco-analytics-card-change.up{color:var(--eco-analytics-success)}.eco-analytics-card-change.down{color:var(--eco-analytics-error)}.eco-analytics-realtime{background:linear-gradient(135deg,var(--qbit-brand-primary,#6366f1),var(--qbit-brand-secondary,#8b5cf6));border-radius:var(--eco-analytics-radius);color:#fff;flex-direction:column;align-items:center;padding:24px;display:flex}.eco-analytics-realtime-header{align-items:center;gap:8px;font-size:14px;font-weight:500;display:flex}.eco-analytics-realtime-dot{background:var(--qbit-status-danger,#ef4444);border-radius:50%;width:8px;height:8px;animation:2s infinite eco-analytics-pulse}.eco-analytics-realtime.connected .eco-analytics-realtime-dot{background:var(--eco-analytics-success)}@keyframes eco-analytics-pulse{0%,to{opacity:1}50%{opacity:.5}}.eco-analytics-realtime-value{margin:8px 0;font-size:48px;font-weight:700}.eco-analytics-realtime-label{opacity:.8;font-size:14px}.eco-analytics-chart{background:var(--eco-analytics-bg);border:1px solid var(--eco-analytics-border);border-radius:var(--eco-analytics-radius);padding:20px}.eco-analytics-chart-bars{justify-content:space-between;align-items:flex-end;gap:4px;height:100%;display:flex}.eco-analytics-chart-bar-wrapper{flex-direction:column;flex:1;align-items:center;gap:8px;height:100%;display:flex}.eco-analytics-chart-bar{background:linear-gradient(180deg,var(--eco-analytics-primary),#a5b4fc);max-width:32px;transition:var(--eco-analytics-transition);border-radius:4px 4px 0 0;width:100%}.eco-analytics-chart-bar:hover{opacity:.8}.eco-analytics-chart-label{color:var(--eco-analytics-text-secondary);white-space:nowrap;font-size:10px}.eco-analytics-table{background:var(--eco-analytics-bg);border:1px solid var(--eco-analytics-border);border-radius:var(--eco-analytics-radius);padding:20px}.eco-analytics-table-header{color:var(--eco-analytics-text-secondary);text-transform:uppercase;padding-bottom:12px;font-size:12px;font-weight:600}.eco-analytics-table-header,.eco-analytics-table-row{border-bottom:1px solid var(--eco-analytics-border);grid-template-columns:2fr 1fr 1fr;gap:16px;display:grid}.eco-analytics-table-row{align-items:center;padding:12px 0}.eco-analytics-table-row:last-child{border-bottom:none}.eco-analytics-table-name,.eco-analytics-table-value{color:var(--eco-analytics-text);font-size:14px}.eco-analytics-table-value{font-weight:600}.eco-analytics-table-bar-wrapper{align-items:center;gap:8px;display:flex}.eco-analytics-table-bar{background:var(--eco-analytics-primary);border-radius:3px;flex:1;max-width:80px;height:6px}.eco-analytics-table-percent{color:var(--eco-analytics-text-secondary);min-width:40px;font-size:12px}.eco-analytics-date-picker{position:relative}.eco-analytics-date-btn{background:var(--eco-analytics-bg);border:1px solid var(--eco-analytics-border);color:var(--eco-analytics-text);cursor:pointer;border-radius:8px;align-items:center;gap:8px;padding:10px 16px;font-size:14px;display:flex}.eco-analytics-date-arrow{color:var(--eco-analytics-text-secondary);font-size:10px}.eco-analytics-date-dropdown{background:var(--eco-analytics-bg);border:1px solid var(--eco-analytics-border);box-shadow:0 10px 30px rgba(var(--qbit-black-rgb,0,0,0),.1);z-index:100;border-radius:8px;min-width:150px;margin-top:4px;padding:8px;position:absolute;top:100%;right:0}.eco-analytics-date-option{color:var(--eco-analytics-text);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:6px;width:100%;padding:8px 12px;font-size:13px;display:block}.eco-analytics-date-option:hover{background:var(--eco-analytics-bg-secondary)}.eco-analytics-date-option.active{background:var(--eco-analytics-primary);color:#fff}.eco-analytics-activity{background:var(--eco-analytics-bg);border:1px solid var(--eco-analytics-border);border-radius:var(--eco-analytics-radius);padding:20px}.eco-analytics-activity h4{color:var(--eco-analytics-text);margin:0 0 16px;font-size:16px}.eco-analytics-activity-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.eco-analytics-activity-item{text-align:center}.eco-analytics-activity-value{color:var(--eco-analytics-primary);font-size:28px;font-weight:700;display:block}.eco-analytics-activity-label{color:var(--eco-analytics-text-secondary);font-size:12px}.eco-analytics-dashboard-charts{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;display:grid}.eco-analytics-dashboard-chart h4{color:var(--eco-analytics-text);margin:0 0 16px;font-size:16px}.eco-analytics-dashboard-tables{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:20px;display:grid}.eco-analytics-loading{justify-content:center;align-items:center;min-height:200px;display:flex}.eco-analytics-spinner{border:3px solid var(--eco-analytics-border);border-top-color:var(--eco-analytics-primary);border-radius:50%;width:28px;height:28px;animation:1s linear infinite eco-analytics-spin}@keyframes eco-analytics-spin{to{transform:rotate(1turn)}}.eco-analytics-empty{color:var(--eco-analytics-text-secondary);justify-content:center;align-items:center;min-height:100px;display:flex}@media (max-width:768px){.eco-analytics-dashboard-header{flex-direction:column;align-items:flex-start;gap:16px}.eco-analytics-grid{grid-template-columns:repeat(2,1fr)}.eco-analytics-activity-grid{grid-template-columns:1fr;gap:12px}}@media (max-width:480px){.eco-analytics-grid{grid-template-columns:1fr}}:root{--analytics-primary:var(--qbit-brand-primary,#6366f1);--analytics-success:var(--qbit-status-success,#22c55e);--analytics-warning:var(--qbit-status-warning,#f59e0b);--analytics-danger:var(--qbit-status-danger,#ef4444);--analytics-info:var(--qbit-brand-primary,#3b82f6);--analytics-gray-50:var(--qbit-white,#f9fafb);--analytics-gray-100:var(--qbit-bg-card,#f3f4f6);--analytics-gray-200:var(--qbit-bg-card,#e5e7eb);--analytics-gray-300:var(--qbit-line-soft,#d1d5db);--analytics-gray-500:var(--qbit-text-secondary,#6b7280);--analytics-gray-700:var(--qbit-brand-primary,#374151);--analytics-gray-900:var(--qbit-bg-canvas,#111827);--analytics-radius:12px}.analytics-overview{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:24px;display:grid}.analytics-stat-card{border-radius:var(--analytics-radius);box-shadow:0 1px 3px rgba(var(--qbit-black-rgb,0,0,0),.1);background:#fff;padding:24px;position:relative;overflow:hidden}.analytics-stat-card:before{background:linear-gradient(90deg,var(--analytics-primary),var(--analytics-info));content:"";height:4px;position:absolute;top:0;left:0;right:0}.analytics-stat-icon{margin-bottom:12px;font-size:24px}.analytics-stat-value{color:var(--analytics-gray-900);font-size:32px;font-weight:700}.analytics-stat-label{color:var(--analytics-gray-500);margin-top:4px;font-size:14px}.analytics-stat-change{border-radius:16px;align-items:center;gap:4px;margin-top:8px;padding:4px 8px;font-size:13px;display:inline-flex}.analytics-stat-change.positive{background:var(--qbit-status-success,#dcfce7);color:var(--qbit-status-success,#166534)}.analytics-stat-change.negative{background:var(--qbit-status-danger,#fee2e2);color:var(--qbit-status-danger,#991b1b)}.analytics-realtime{background:linear-gradient(135deg,var(--qbit-brand-primary,#1e1b4b),var(--qbit-brand-primary,#312e81));border-radius:var(--analytics-radius);color:#fff;padding:24px}.analytics-realtime-value{font-size:56px;font-weight:800}.analytics-realtime-label{opacity:.9;font-size:16px}.analytics-realtime-dot{background:var(--qbit-status-success,#22c55e);border-radius:50%;width:8px;height:8px;margin-right:8px;animation:1.5s infinite analytics-pulse;display:inline-block}.analytics-card{border-radius:var(--analytics-radius);box-shadow:0 1px 3px rgba(var(--qbit-black-rgb,0,0,0),.1);background:#fff;overflow:hidden}.analytics-header{border-bottom:1px solid var(--analytics-gray-200);justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.analytics-title{color:var(--analytics-gray-900);font-size:18px;font-weight:600}.analytics-table{border-collapse:collapse;width:100%}.analytics-table td,.analytics-table th{border-bottom:1px solid var(--analytics-gray-100);padding:14px 20px}.analytics-table th{color:var(--analytics-gray-500);letter-spacing:.5px}.analytics-table th,.analytics-table tr:hover td{background:var(--analytics-gray-50)}.analytics-chart{padding:24px}.analytics-chart-area{align-items:flex-end;gap:4px;height:280px;display:flex}.analytics-chart-bar{background:linear-gradient(to top,var(--analytics-primary),var(--analytics-info));border-radius:4px 4px 0 0;flex:1;min-height:4px;transition:height .3s;position:relative}.analytics-chart-bar:hover{opacity:.8}.analytics-chart-bar:hover:after{background:var(--analytics-gray-900);color:#fff;content:attr(data-value);white-space:nowrap;border-radius:4px;padding:4px 8px;font-size:12px;position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.analytics-date-picker{background:var(--analytics-gray-100);border-radius:8px;padding:4px;display:inline-flex}.analytics-date-btn{color:var(--analytics-gray-500);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:8px 16px;font-size:13px;font-weight:500;transition:all .2s}.analytics-date-btn.active{box-shadow:0 1px 2px rgba(var(--qbit-black-rgb,0,0,0),.1);color:var(--analytics-gray-900);background:#fff}.analytics-btn{cursor:pointer;border:none;border-radius:8px;align-items:center;gap:6px;padding:10px 20px;font-size:14px;font-weight:500;transition:all .2s;display:inline-flex}.analytics-btn-primary{background:var(--analytics-primary);color:#fff}.analytics-btn-primary:hover{background:var(--qbit-brand-primary,#4f46e5)}.analytics-btn-outline{border:1px solid var(--analytics-gray-300);color:var(--analytics-gray-700);background:0 0}.analytics-empty{color:var(--analytics-gray-500);text-align:center;padding:60px 20px}.analytics-empty-icon{opacity:.5;margin-bottom:16px;font-size:64px}.analytics-loading{justify-content:center;padding:40px;display:flex}.analytics-spinner{border:4px solid var(--analytics-gray-200);border-top-color:var(--analytics-primary);width:40px;height:40px}.analytics-overview{box-shadow:0 4px 24px rgba(var(--qbit-black-rgb,0,0,0),.08);background:#fff;border-radius:20px;padding:24px}.analytics-overview-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.analytics-overview-title{color:var(--qbit-bg-canvas,#111827);margin:0;font-size:20px;font-weight:700}.analytics-time-selector{gap:8px;display:flex}.analytics-time-btn{border:1px solid var(--qbit-bg-card,#e5e7eb);color:var(--qbit-text-secondary,#6b7280);cursor:pointer;background:0 0;border-radius:8px;padding:8px 16px;font-size:13px;transition:all .15s}.analytics-time-btn:hover{background:var(--qbit-white,#f9fafb)}.analytics-time-btn.active{background:var(--qbit-brand-primary,#6366f1);border-color:var(--qbit-brand-primary,#6366f1);color:#fff}.analytics-metrics-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;display:grid}.analytics-metric-card{background:var(--qbit-white,#f9fafb);border-radius:16px;align-items:center;gap:16px;padding:20px;transition:all .2s;display:flex}.analytics-metric-card:hover{background:var(--qbit-bg-card,#f3f4f6)}.analytics-metric-icon{font-size:32px}.analytics-metric-content{flex:1}.analytics-metric-value{color:var(--qbit-bg-canvas,#111827);font-size:24px;font-weight:700}.analytics-metric-label{color:var(--qbit-text-secondary,#6b7280);margin-top:4px;font-size:13px}.analytics-metric-change{border-radius:6px;padding:4px 8px;font-size:12px;font-weight:500}.analytics-metric-change.positive{background:var(--qbit-status-success,#dcfce7);color:var(--qbit-status-success,#16a34a)}.analytics-metric-change.negative{background:var(--qbit-status-danger,#fee2e2);color:var(--qbit-status-danger,#dc2626)}.analytics-realtime{box-shadow:0 2px 12px rgba(var(--qbit-black-rgb,0,0,0),.06);background:#fff;border-radius:16px;padding:20px}.analytics-realtime-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.analytics-realtime-title{color:var(--qbit-bg-canvas,#111827);align-items:center;gap:8px;margin:0;font-size:16px;font-weight:600;display:flex}.analytics-status-dot{background:var(--qbit-text-muted,#9ca3af);border-radius:50%;width:8px;height:8px}.analytics-status-dot.connected{background:var(--qbit-status-success,#22c55e);animation:2s infinite analytics-pulse}@keyframes analytics-pulse{0%,to{opacity:1}50%{opacity:.5}}.analytics-refresh-btn{background:var(--qbit-bg-card,#f3f4f6);cursor:pointer;border:none;border-radius:8px;padding:8px 16px;font-size:13px;transition:background .15s}.analytics-refresh-btn:hover{background:var(--qbit-bg-card,#e5e7eb)}.analytics-realtime-list{flex-direction:column;gap:8px;max-height:300px;display:flex;overflow-y:auto}.analytics-realtime-item{background:var(--qbit-white,#f9fafb);border-radius:8px;align-items:center;gap:12px;padding:12px;font-size:14px;display:flex}.analytics-realtime-time{color:var(--qbit-text-muted,#9ca3af);font-family:monospace}.analytics-realtime-event{color:var(--qbit-brand-primary,#374151);flex:1}.analytics-realtime-value{color:var(--qbit-bg-canvas,#111827);font-weight:500}.analytics-chart{box-shadow:0 2px 12px rgba(var(--qbit-black-rgb,0,0,0),.06);background:#fff;border-radius:16px;padding:20px}.analytics-chart-title{color:var(--qbit-bg-canvas,#111827);margin:0 0 16px;font-size:16px;font-weight:600}.analytics-bar-chart,.analytics-chart-container{align-items:flex-end;display:flex}.analytics-bar-chart{justify-content:space-around;gap:8px;width:100%;height:100%}.analytics-bar-wrapper{flex-direction:column;flex:1;align-items:center;height:100%;display:flex}.analytics-bar{border-radius:4px 4px 0 0;width:100%;max-width:40px;transition:height .3s}.analytics-bar-label{color:var(--qbit-text-secondary,#6b7280);margin-top:8px;font-size:12px}.analytics-table{box-shadow:0 2px 12px rgba(var(--qbit-black-rgb,0,0,0),.06);background:#fff;border-radius:16px;overflow:hidden}.analytics-table table{border-collapse:collapse;width:100%}.analytics-table td,.analytics-table th{text-align:left;padding:14px 16px}.analytics-table th{background:var(--qbit-white,#f9fafb);color:var(--qbit-text-secondary,#6b7280);text-transform:uppercase;font-size:13px;font-weight:600}.analytics-table td{border-top:1px solid var(--qbit-bg-card,#f3f4f6);color:var(--qbit-brand-primary,#374151);font-size:14px}.analytics-load-more,.analytics-table tr:hover td{background:var(--qbit-white,#f9fafb)}.analytics-load-more{color:var(--qbit-text-secondary,#6b7280);cursor:pointer;border:none;width:100%;padding:14px;font-size:14px;transition:background .15s}.analytics-load-more:hover{background:var(--qbit-bg-card,#f3f4f6)}.analytics-date-picker{flex-direction:column;gap:12px;display:flex}.analytics-date-presets{flex-wrap:wrap;gap:8px;display:flex}.analytics-preset-btn{background:var(--qbit-bg-card,#f3f4f6);color:var(--qbit-brand-primary,#374151);cursor:pointer;border:none;border-radius:8px;padding:8px 16px;font-size:13px;transition:all .15s}.analytics-preset-btn:hover{background:var(--qbit-bg-card,#e5e7eb)}.analytics-preset-btn.active{background:var(--qbit-brand-primary,#6366f1);color:#fff}.analytics-date-inputs{align-items:center;gap:12px;display:flex}.analytics-date-input{border:1px solid var(--qbit-bg-card,#e5e7eb);border-radius:8px;padding:10px 14px;font-size:14px}.analytics-date-input:focus{border-color:var(--qbit-brand-primary,#6366f1);outline:none}.analytics-date-separator,.analytics-empty,.analytics-loading{color:var(--qbit-text-secondary,#6b7280)}.analytics-empty,.analytics-loading{flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:48px;display:flex}.analytics-spinner{border:3px solid var(--qbit-bg-card,#e5e7eb);border-top-color:var(--qbit-brand-primary,#6366f1);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite analytics-spin}@keyframes analytics-spin{to{transform:rotate(1turn)}}
