.dash-ret-weeks{gap:4px;display:flex}.dash-ui-page-side>.dash-ret-weeks{margin-bottom:-17px}.dash-ret-page .dash-ret-kpi-pending{color:var(--dash-muted);font-weight:600}.dash-ret-page>.dash-ret-chart{margin:0}.dash-ret-chart .dash-chart-canvas,.dash-ret-chart .dash-chart-y{height:280px}.dash-ret-prev-line{fill:none;stroke:#ffffff6b;stroke-width:1.5px;stroke-dasharray:5 5;stroke-linejoin:round;vector-effect:non-scaling-stroke;animation:.52s ease-out .12s both dash-fade}.dash-ret-prev-dot{fill:var(--dash-surface);stroke:#fff9;stroke-width:1.5px}.dash-ret-chart [data-tone=prev]{--dash-tone:#ffffff8c}.dash-ret-chart .dash-chart-swatch[data-tone=prev]{background:0 0;border-top:2px dashed #ffffff8c;border-radius:0;height:0}.dash-ret-stats td[data-pending=true]{color:var(--dash-faint);font-weight:500}.dash-ret-grid-card>.dash-ret-splits{width:fit-content;max-width:100%;margin-bottom:var(--dash-gap-md)}.dash-ret-grid-card .dash-ret-split-btn{padding:4px 11px}.dash-ret-page .dash-ret-caption{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.dash-ret-page .dash-ret{gap:12px}.dash-ret-page .dash-ret-table{width:calc(100% + 6px);margin:0 -3px}.dash-ret-page .dash-ret-table thead{text-transform:none}.dash-ret-page .dash-ret-table thead th{color:var(--dash-faint);font-size:var(--dash-text-sm);letter-spacing:normal;font-weight:500}.dash-ret-page .dash-ret-table tbody th{font-weight:550}.dash-ret-page .dash-ret-table tbody th .dash-ui-tip{display:inline}.dash-ret-page .dash-ret-table [hidden]{display:none}.dash-ret-page .dash-ret-cell[data-pending=true]{outline-offset:-1px;color:var(--dash-faint);font-style:normal;font-size:var(--dash-text-xs);letter-spacing:.02em;background:0 0;outline:1px dashed #ffffff38;box-shadow:inset 0 0 0 1px #ffffff24}.dash-ret-legend{color:var(--dash-faint);font-size:var(--dash-text-xs);flex-wrap:wrap;align-items:center;gap:8px 20px;display:flex}.dash-ret-legend-scale,.dash-ret-legend-pending{align-items:center;gap:4px;display:inline-flex}.dash-ret-legend-scale>span:first-child{margin-right:4px}.dash-ret-legend-scale>span:last-child{margin-left:4px}.dash-ret-legend-pending{gap:8px}.dash-ret-legend-cell{background:#38bdf80d;border-radius:2px;width:14px;height:10px;display:inline-block}.dash-ret-legend-cell[data-shade="1"]{background:#38bdf824}.dash-ret-legend-cell[data-shade="2"]{background:#38bdf842}.dash-ret-legend-cell[data-shade="3"]{background:#38bdf86b}.dash-ret-legend-cell[data-shade="4"]{background:#38bdf89e}.dash-ret-legend-cell[data-shade="5"]{background:#38bdf8d1}.dash-ret-legend-cell[data-pending=true]{outline-offset:-1px;background:0 0;outline:1px dashed #ffffff52}.dash-ret-page .dash-ret-note{color:var(--dash-faint);margin:0}.dash-ret-risk .dash-table-cap-note{margin:0 0 var(--dash-gap-sm)}.dash-ret-risk .dash-ui-pager{margin-top:var(--dash-gap-sm)}.dash-app .dash-ret-risk-table tbody th a{font-weight:550}.dash-app .dash-ret-risk-table tbody th a:hover,.dash-app .dash-ret-risk-table tbody th a:focus-visible{color:var(--dash-accent-soft)}@media (max-width:800px){.dash-ui-page-side>.dash-ret-weeks{align-self:flex-start}}@media (max-width:560px){.dash-ret-chart .dash-chart-canvas,.dash-ret-chart .dash-chart-y{height:220px}.dash-ret-page .dash-card-actions .dash-chart-export{justify-content:center;width:30px;padding:0}.dash-ret-page .dash-card-actions .dash-chart-export-text{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}@media (prefers-reduced-motion:reduce){.dash-ret-prev-line{opacity:1;animation:none}}
.dash-churn-filters{align-items:flex-end;gap:var(--dash-gap-sm) var(--dash-gap-md);margin-bottom:var(--dash-gap-md);flex-wrap:wrap;display:flex}.dash-churn-field{flex-direction:column;gap:4px;min-width:0;display:flex}.dash-churn-field label{color:var(--dash-faint);font-size:var(--dash-text-xs);font-weight:550}.dash-churn-select{border:1px solid var(--dash-line);border-radius:var(--dash-radius-sm);max-width:200px;min-height:32px;color:var(--dash-text);font-size:var(--dash-text-sm);background:#ffffff05;padding:4px 8px;transition:background-color .16s,border-color .16s}.dash-churn-select:hover:not(:disabled){border-color:var(--dash-line-strong);background:#ffffff0f}.dash-churn-select:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px}.dash-churn-select:disabled{opacity:.6}.dash-churn-filter-actions{align-items:center;gap:var(--dash-gap-md);display:flex}.dash-churn-cohorts>.dash-churn-grains{width:fit-content;max-width:100%;margin-bottom:var(--dash-gap-md)}.dash-churn-cohorts .dash-ret-split-btn{padding:4px 11px}.dash-churn-cohorts .dash-ret-table{width:calc(100% + 6px);margin:0 -3px}.dash-churn-cohorts .dash-ret-table thead{text-transform:none}.dash-churn-cohorts .dash-ret-table thead th{color:var(--dash-faint);font-size:var(--dash-text-sm);letter-spacing:normal;font-weight:500}.dash-churn-cohorts .dash-ret-table tbody th,.dash-churn-cohorts .dash-ret-table tfoot th{text-align:left;white-space:nowrap;font-weight:550}.dash-churn-cohorts .dash-ret-table tbody th .dash-ui-tip{display:inline}.dash-churn-cohorts .dash-ret-caption{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.dash-churn-cohorts .dash-ret-cell[data-pending=true]{outline-offset:-1px;color:var(--dash-faint);font-size:var(--dash-text-xs);letter-spacing:.02em;background:0 0;outline:1px dashed #ffffff38;box-shadow:inset 0 0 0 1px #ffffff24}.dash-churn-total th,.dash-churn-total td{border-top:1px solid var(--dash-line);padding-top:8px}.dash-churn-total-cell{text-align:right;color:var(--dash-text);padding:8px 10px 4px;font-weight:600}.dash-churn-stats{gap:var(--dash-gap-md);margin:0 0 var(--dash-gap-lg);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.dash-churn-stats dt{color:var(--dash-muted);font-size:var(--dash-text-sm)}.dash-churn-stats dd{color:var(--dash-text);font-size:var(--dash-text-2xl);font-variant-numeric:tabular-nums;margin:2px 0 0;font-weight:650;line-height:1.15}.dash-churn-stats p{color:var(--dash-faint);font-size:var(--dash-text-xs);margin:2px 0 0}.dash-churn-tools{align-items:center;gap:var(--dash-gap-sm) var(--dash-gap-lg);margin-bottom:var(--dash-gap-md);flex-wrap:wrap;display:flex}.dash-churn-check{color:var(--dash-muted);font-size:var(--dash-text-sm);cursor:pointer;align-items:center;gap:8px;display:inline-flex}.dash-churn-check input{width:16px;height:16px;accent-color:var(--dash-accent)}.dash-churn-sub{color:var(--dash-faint);font-size:var(--dash-text-xs);margin-top:2px;font-weight:400;display:block}.dash-churn-level-mark{color:var(--dash-text);align-items:center;gap:7px;font-weight:550;display:inline-flex}.dash-churn-level-mark:before{content:"";background:var(--dash-faint);border-radius:50%;width:8px;height:8px}.dash-churn-level-mark[data-level=high]:before{background:var(--dash-down)}.dash-churn-level-mark[data-level=medium]:before{background:var(--dash-series-d)}.dash-churn-score{color:var(--dash-faint);font-size:var(--dash-text-xs);font-variant-numeric:tabular-nums;margin-left:8px}.dash-churn-reasons{color:var(--dash-muted);font-size:var(--dash-text-sm);flex-direction:column;gap:3px;margin:0;padding:0;line-height:1.4;list-style:none;display:flex}.dash-churn-points{color:var(--dash-faint);font-size:var(--dash-text-xs);font-variant-numeric:tabular-nums;margin-left:8px}.dash-churn-list td,.dash-churn-list th{vertical-align:top;text-align:left}.dash-churn-method{margin-top:var(--dash-gap-lg);color:var(--dash-muted);font-size:var(--dash-text-sm);line-height:1.5}.dash-churn-method summary{width:fit-content;color:var(--dash-text);cursor:pointer;font-weight:550}.dash-churn-method ul{margin:var(--dash-gap-sm) 0;flex-direction:column;gap:6px;padding-left:18px;display:flex}.dash-churn-method p{margin:0}.dash-churn-locked-list{margin:var(--dash-gap-sm) 0 0;color:var(--dash-muted);font-size:var(--dash-text-md);flex-direction:column;gap:6px;padding-left:18px;line-height:1.5;display:flex}.dash-churn-locked-actions{align-items:center;gap:var(--dash-gap-sm) var(--dash-gap-md);margin-top:var(--dash-gap-lg);flex-wrap:wrap;display:flex}.dash-churn-sample{color:var(--dash-text);font-size:var(--dash-text-xs);text-align:right;margin:0;font-weight:500}@media (max-width:640px){.dash-churn-stats{gap:var(--dash-gap-sm);grid-template-columns:1fr}.dash-churn-select{max-width:100%}.dash-churn-field{flex:140px}}
