:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;font-family:system-ui,-apple-system,Segoe UI,sans-serif}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}*{box-sizing:border-box}body{min-height:100vh;margin:0}#root{min-height:100vh}.viz-root{--surface-1:#fcfcfb;--page-plane:#f9f9f7;--text-primary:#0b0b0b;--text-secondary:#52514e;--text-muted:#898781;--gridline:#e1e0d9;--border:#0b0b0b1a;--series-blue:#2a78d6;--series-red:#e34948;--diverging-neutral:#f0efec;--status-good:#0ca30c}@media (prefers-color-scheme:dark){.viz-root{--surface-1:#1a1a19;--page-plane:#0d0d0d;--text-primary:#fff;--text-secondary:#c3c2b7;--text-muted:#898781;--gridline:#2c2c2a;--border:#ffffff1a;--series-blue:#3987e5;--series-red:#e66767;--diverging-neutral:#383835}}.viz-root{background:var(--page-plane);min-height:100vh;color:var(--text-primary);padding:20px 16px 32px}.page-state{text-align:center;color:#52514e;background:#f9f9f7;justify-content:center;align-items:center;min-height:100vh;padding:24px;font-family:system-ui,-apple-system,Segoe UI,sans-serif;display:flex}@media (prefers-color-scheme:dark){.page-state{color:#c3c2b7;background:#0d0d0d}}.app-header{margin-bottom:14px}.app-title{font-size:20px;font-weight:700}.community-trigger{cursor:pointer;background:0 0;border:none;align-items:center;gap:8px;margin-top:4px;padding:4px 0;font-family:inherit;display:flex}.community-trigger-avatar{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:11px;font-weight:700;display:flex}.community-trigger-label{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;max-width:220px;font-size:14px;font-weight:600;overflow:hidden}.community-trigger-chevron{color:var(--text-muted);font-size:12px}.community-modal-backdrop{z-index:100;background:#00000080;align-items:flex-end;display:flex;position:fixed;inset:0}.community-modal{background:var(--surface-1);border-radius:16px 16px 0 0;width:100%;max-height:70vh;padding:16px;overflow-y:auto;box-shadow:0 -4px 24px #0003}.community-modal-header{color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;margin-bottom:10px;font-size:12px;font-weight:700}.community-modal-list{flex-direction:column;gap:2px;margin-bottom:8px;display:flex}.community-row{cursor:pointer;text-align:left;background:0 0;border:none;border-radius:10px;align-items:center;gap:12px;width:100%;padding:10px 6px;font-family:inherit;display:flex}.community-row:active{background:var(--diverging-neutral)}.community-row-avatar{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:13px;font-weight:700;display:flex}.community-row-title{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:14px;overflow:hidden}.community-row-check{color:var(--series-blue);font-weight:700}.community-add-row{border:none;border-top:1px solid var(--gridline);cursor:pointer;text-align:left;background:0 0;align-items:center;gap:12px;width:100%;margin-top:6px;padding:12px 6px 6px;font-family:inherit;display:flex}.community-add-icon{border:1.5px dashed var(--text-muted);width:32px;height:32px;color:var(--text-muted);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:16px;font-weight:700;display:flex}.community-add-title{color:var(--text-primary);font-size:14px;font-weight:600;display:block}.community-add-sub{color:var(--text-muted);margin-top:1px;font-size:11px;display:block}.nav-tabs{background:var(--surface-1);border:1px solid var(--border);border-radius:10px;gap:4px;margin-bottom:16px;padding:4px;display:flex}.nav-tab{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;cursor:pointer;background:0 0;border:none;border-radius:7px;flex:1;padding:8px 2px;font-family:inherit;font-size:10.5px;font-weight:600;overflow:hidden}.nav-tab-active{background:var(--series-blue);color:#fff}.app-main{min-height:40vh}.view-state{text-align:center;color:var(--text-secondary);padding:32px 16px;font-size:14px}.view-state-inline{text-align:left;padding:8px 0}.filter-row{gap:8px;margin-bottom:12px;display:flex}.filter-chip{background:var(--surface-1);border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;border-radius:999px;padding:6px 14px;font-family:inherit;font-size:12px;font-weight:600}.filter-chip-active{background:var(--series-blue);border-color:var(--series-blue);color:#fff}.leaderboard-list{flex-direction:column;gap:10px;display:flex}.leaderboard-row{grid-template-columns:20px 1fr 28px;align-items:center;gap:10px;display:grid}.leaderboard-rank{color:var(--text-muted);font-variant-numeric:tabular-nums;text-align:right;font-size:12px}.leaderboard-main{min-width:0}.leaderboard-name{text-overflow:ellipsis;white-space:nowrap;margin-bottom:4px;font-size:13px;overflow:hidden}.leaderboard-track{background:var(--gridline);border-radius:4px;height:10px;overflow:hidden}.leaderboard-bar{background:var(--series-blue);border-radius:4px;height:100%}.leaderboard-count{font-variant-numeric:tabular-nums;text-align:right;font-size:13px;font-weight:600}.team-card{background:var(--surface-1);border:1px solid var(--border);border-radius:12px;margin-bottom:12px;padding:14px 16px}.team-name{margin-bottom:10px;font-size:14px;font-weight:700}.team-columns{grid-template-columns:1fr 1fr;gap:12px;display:grid}.team-period-label{color:var(--text-muted);margin-bottom:6px;font-size:11px}.team-metric{color:var(--text-secondary);border-top:1px solid var(--gridline);flex-direction:column;padding:5px 0;font-size:12px;display:flex}.team-metric:first-of-type{border-top:none}.team-metric-value{color:var(--text-primary);font-variant-numeric:tabular-nums;font-weight:600}.team-metric-sub{color:var(--text-muted);font-size:11px;font-weight:400}.sentiment-period{border-top:1px solid var(--gridline);margin-top:12px;padding-top:12px}.sentiment-period:first-of-type{border-top:none;margin-top:0;padding-top:0}.sentiment-period-title{color:var(--text-secondary);margin-bottom:8px;font-size:12px;font-weight:600}.sentiment-badge{background:var(--series-blue);color:#fff;border-radius:999px;margin-bottom:10px;padding:4px 10px;font-size:12px;font-weight:700;display:inline-block}.sentiment-badge-inline{flex-shrink:0;margin-bottom:0}.sentiment-bar{background:var(--gridline);border-radius:6px;gap:2px;height:28px;display:flex;overflow:hidden}.sentiment-segment{color:#fff;justify-content:center;align-items:center;font-size:11px;font-weight:700;display:flex}.sentiment-positive{background:var(--series-blue)}.sentiment-neutral{background:var(--text-muted)}.sentiment-negative{background:var(--series-red)}.sentiment-legend{color:var(--text-secondary);flex-wrap:wrap;gap:14px;margin-top:10px;font-size:12px;display:flex}.sentiment-legend span{align-items:center;gap:6px;display:inline-flex}.legend-swatch{border-radius:2px;width:10px;height:10px;display:inline-block}.legend-positive{background:var(--series-blue)}.legend-neutral{background:var(--text-muted)}.legend-negative{background:var(--series-red)}.sentiment-explanation{color:var(--text-secondary);margin:10px 0 0;font-size:12px;line-height:1.5}.sentiment-pending{color:var(--text-muted);margin-top:8px;font-size:11px}.kpi-row{grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:20px;display:grid}.stat-tile{background:var(--surface-1);border:1px solid var(--border);border-radius:12px;padding:14px}.stat-label{color:var(--text-muted);margin-bottom:6px;font-size:12px}.stat-value{font-variant-numeric:tabular-nums;font-size:28px;font-weight:700;line-height:1.1}.stat-sublabel{color:var(--text-muted);margin-top:4px;font-size:11px}.detail-block{background:var(--surface-1);border:1px solid var(--border);border-radius:12px;margin-bottom:12px;padding:14px 16px}.detail-title{color:var(--text-secondary);margin-bottom:8px;font-size:13px;font-weight:600}.detail-row{border-top:1px solid var(--gridline);justify-content:space-between;align-items:center;padding:6px 0;font-size:14px;display:flex}.detail-row:first-of-type{border-top:none}.detail-value{font-variant-numeric:tabular-nums;font-weight:600}.app-footer{text-align:center;color:var(--text-muted);margin-top:8px;font-size:11px}.pulse-card{background:var(--surface-1);border:1px solid var(--border);border-radius:12px;margin-bottom:12px;padding:16px}.pulse-eyebrow{letter-spacing:.04em;color:var(--status-good);align-items:center;gap:6px;margin-bottom:8px;font-size:11px;font-weight:700;display:flex}.pulse-dot{background:var(--status-good);border-radius:50%;flex-shrink:0;width:6px;height:6px}.pulse-status{font-size:24px;font-weight:700;line-height:1.1}.pulse-subtitle{color:var(--text-muted);margin-top:2px;font-size:12px}.pulse-line-wrap{width:100%;height:44px;margin-top:12px;overflow:hidden}.pulse-line-svg{width:200%;height:100%;animation:3s linear infinite pulse-scroll;display:block}.pulse-line-path{stroke:var(--status-good)}@keyframes pulse-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.pulse-line-svg{animation:none}}.trend-summary{flex-wrap:wrap;gap:16px;margin-bottom:10px;display:flex}.trend-summary-value{font-variant-numeric:tabular-nums;font-size:20px;font-weight:700;line-height:1.1}.trend-summary-label{color:var(--text-muted);white-space:nowrap;margin-top:2px;font-size:11px}.faq-add-button{background:var(--series-blue);color:#fff;cursor:pointer;border:none;border-radius:10px;width:100%;margin-bottom:14px;padding:10px;font-family:inherit;font-size:14px;font-weight:600;display:block}.faq-action-error{border:1px solid var(--series-red);color:var(--series-red);background:#e349481f;border-radius:8px;margin-bottom:12px;padding:8px 12px;font-size:12px}.faq-unanswered-block{margin-bottom:14px}.faq-unanswered-hint{color:var(--text-muted);margin-bottom:10px;font-size:12px}.faq-unanswered-list{flex-direction:column;gap:10px;display:flex}.faq-unanswered-row{border-top:1px solid var(--gridline);padding-top:10px}.faq-unanswered-row:first-child{border-top:none;padding-top:0}.faq-unanswered-top{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.faq-unanswered-question{color:var(--text-primary);font-size:13px;line-height:1.4}.faq-unanswered-count{color:var(--text-muted);margin-top:4px;font-size:11px}.faq-unanswered-actions{flex-shrink:0;gap:6px;display:flex}.faq-icon-btn{background:var(--page-plane);border:1px solid var(--border);width:24px;height:24px;color:var(--text-secondary);cursor:pointer;border-radius:50%;flex-shrink:0;font-family:inherit;font-size:14px;line-height:1}.faq-unanswered-answer-form{margin-top:8px}.faq-list{flex-direction:column;gap:10px;display:flex}.faq-card{margin-bottom:0}.faq-question{margin-bottom:6px;font-size:14px;font-weight:700}.faq-answer{color:var(--text-secondary);white-space:pre-wrap;font-size:13px;line-height:1.5}.faq-edit-row{flex-direction:column;gap:8px;display:flex}.faq-edit-actions{gap:8px;display:flex}.faq-card-footer{border-top:1px solid var(--gridline);justify-content:space-between;align-items:center;margin-top:10px;padding-top:8px;display:flex}.faq-times-matched{color:var(--text-muted);font-size:11px}.faq-card-actions{gap:12px;display:flex}.faq-link-btn{color:var(--series-blue);cursor:pointer;background:0 0;border:none;padding:0;font-family:inherit;font-size:12px;font-weight:600}.faq-link-btn-danger{color:var(--series-red)}.faq-mode-picker{gap:8px;margin-bottom:14px;display:flex}.faq-form-label{color:var(--text-secondary);margin-top:10px;margin-bottom:4px;font-size:12px;font-weight:600;display:block}.faq-form-label:first-of-type{margin-top:0}.faq-form-input{background:var(--page-plane);width:100%;color:var(--text-primary);border:1px solid var(--border);resize:vertical;border-radius:8px;padding:8px 10px;font-family:inherit;font-size:13px}.faq-progress-msg{color:var(--text-muted);margin-top:10px;font-size:12px;line-height:1.4}.faq-btn{background:var(--surface-1);color:var(--text-primary);border:1px solid var(--border);cursor:pointer;border-radius:8px;margin-top:14px;padding:9px 16px;font-family:inherit;font-size:13px;font-weight:600}.faq-btn-primary{background:var(--series-blue);border-color:var(--series-blue);color:#fff}.faq-btn:disabled{opacity:.5;cursor:default}.faq-review-hint{color:var(--text-muted);margin-bottom:12px;font-size:12px}.faq-review-list{flex-direction:column;gap:12px;max-height:45vh;display:flex;overflow-y:auto}.faq-review-row{align-items:flex-start;gap:10px;display:flex}.faq-review-row input[type=checkbox]{flex-shrink:0;margin-top:10px}.faq-review-fields{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.faq-review-question{font-weight:600}.faq-review-actions{justify-content:flex-end;gap:10px;display:flex}
