/* Private backend migration v1.1: styling unchanged from Analytics v1. */
/* NWAradar Custody Analytics v1 — widget-scoped. Does not change shell CSS. */
.nca{
  --nca-ink:var(--nwa-text,#193b43);
  --nca-muted:var(--nwa-muted,#637e80);
  --nca-outline:var(--nwa-border,#cbdcd5);
  --nca-panel:var(--nwa-surface,#fff);
  --nca-total:#168b7e;
  --nca-male:#3987b5;
  --nca-female:#a471ab;
  box-sizing:border-box;min-width:0;min-height:0;height:100%;overflow-y:auto;
  padding:0!important;background:var(--nca-panel);color:var(--nca-ink);
  scrollbar-width:thin;overscroll-behavior:contain;
}
.nca *, .nca *::before, .nca *::after{box-sizing:border-box}
.nca [hidden]{display:none!important}
.nca-header{padding:22px 20px 17px;border-bottom:1px solid var(--nca-outline)}
.nca-eyebrow{display:flex;gap:7px;align-items:center;color:var(--nca-muted);font-size:10px;font-weight:850;letter-spacing:.1em}
.nca-live-dot{height:8px;width:8px;flex:none;border-radius:50%;background:#58a77a;box-shadow:0 0 0 3px rgba(88,167,122,.16)}
.nca-header h2{font-size:clamp(24px,2.4vw,30px);letter-spacing:-.045em;line-height:1.12;margin:9px 0 5px;font-weight:850}
.nca-header p{font-size:12px;color:var(--nca-muted);line-height:1.45;margin:0}
.nca-meta{display:flex;align-items:center;gap:6px;color:var(--nca-muted);font-size:10px;margin-top:11px;flex-wrap:wrap;font-weight:650}
.nca-alert{margin:12px 17px 0;border:1px solid var(--nca-outline);border-radius:10px;padding:11px;font-size:12px;color:var(--nca-ink);background:var(--nwa-bg,#eff4f0)}
.nca-chart-stack{display:grid;gap:14px;padding:17px}
.nca-chart-card{--nca-line:var(--nca-total);position:relative;min-width:0;overflow:hidden;border:1px solid var(--nca-outline);border-radius:16px;background:var(--nca-panel);box-shadow:0 3px 14px rgba(20,51,58,.045);padding:14px 12px 11px}
.nca-chart-male{--nca-line:var(--nca-male)}
.nca-chart-female{--nca-line:var(--nca-female)}
.nca-chart-header{display:flex;align-items:flex-start;justify-content:space-between;gap:5px;padding:0 3px 7px}
.nca-chart-label{display:flex;align-items:center;gap:7px}
.nca-series-dot{width:8px;height:8px;border-radius:50%;flex:none;background:var(--nca-line)}
.nca-chart-header h3{margin:0;font-size:14px;font-weight:850;letter-spacing:-.02em;color:var(--nca-ink)}
.nca-chart-header p{margin:4px 0 0 15px;font-size:10px;color:var(--nca-muted)}
.nca-current{text-align:right;min-width:76px;flex:none}
.nca-current strong{display:block;font-weight:850;font-size:25px;line-height:1.15;letter-spacing:-.04em;color:var(--nca-ink)}
.nca-current small{display:block;margin-top:4px;color:var(--nca-muted);font-size:10px;font-weight:750;white-space:nowrap}
.nca-plot{position:relative;height:168px;min-width:0;margin-top:7px}
.nca-svg{display:block;overflow:visible;width:100%;height:100%}
.nca-grid-line{fill:none;stroke:var(--nca-outline);stroke-width:1;opacity:.65;stroke-dasharray:3 4}
.nca-area{fill:var(--nca-line);opacity:.10}
.nca-line{fill:none;stroke:var(--nca-line);stroke-width:2.8;stroke-linecap:round;stroke-linejoin:round}
.nca-dot{fill:var(--nca-panel);stroke:var(--nca-line);stroke-width:2;pointer-events:none}
.nca-dot-group{cursor:pointer;outline:none}
.nca-dot-group:focus .nca-dot,.nca-dot-group:hover .nca-dot,.nca-dot-group.is-selected .nca-dot{fill:var(--nca-line);stroke:var(--nca-panel);stroke-width:2.5}
.nca-dot-group:focus-visible .nca-focus-ring{stroke:var(--nca-line);stroke-width:2;fill:none}
.nca-axis-label{font:10px system-ui,-apple-system,sans-serif;fill:var(--nca-muted)}
.nca-plot-popup{position:absolute;z-index:5;pointer-events:none;max-width:170px;min-width:126px;padding:8px 10px;border:1px solid var(--nca-outline);border-radius:10px;background:var(--nca-panel);box-shadow:0 6px 21px rgba(12,43,52,.18);font-size:11px;text-align:center;line-height:1.35;color:var(--nca-ink)}
.nca-plot-popup strong{display:block;font-size:15px;margin:1px 0;color:var(--nca-ink)}
.nca-plot-popup small{display:block;font-size:10px;color:var(--nca-muted)}
.nca-chart-caption{padding:8px 5px 0;border-top:1px solid var(--nca-outline);color:var(--nca-muted);font-size:10px;line-height:1.35;min-height:25px}
.nca-loading,.nca-no-data{position:absolute;inset:0;display:grid;place-content:center;text-align:center;padding:16px;color:var(--nca-muted);font-size:12px;line-height:1.6}
.nca-footer{border-top:1px solid var(--nca-outline);padding:14px 18px 18px;color:var(--nca-muted)}
.nca-footer p{font-size:10px;line-height:1.6;margin:0 0 10px}
.nca-footer [data-nca-refresh]{display:block;font-size:10px;font-weight:700;color:var(--nca-muted)}
@media(max-width:800px){.nca-header{padding:18px 15px 14px}.nca-chart-stack{padding:12px;gap:11px}.nca-chart-card{padding:13px 11px}.nca-plot{height:170px}.nca-footer{padding:12px 15px 15px}}
@media(max-width:355px){.nca-chart-header h3{font-size:13px}.nca-current strong{font-size:22px}.nca-plot{height:154px}}



/* One chart uses the available height; the shell owns the only scroll area. */
.nca{display:flex!important;flex-direction:column;height:auto!important;min-height:0!important;overflow:visible!important;padding:0!important}.nca-chart-stack{display:block!important;padding:12px}.nca-chart-card{display:block!important}.nca-plot{height:clamp(220px,36dvh,340px)!important;min-height:220px!important}.nca-header{padding:16px}.nca-header label{margin:4px 0}.nca-meta{margin-top:8px}.nca-footer{padding:0 16px 12px}.nca-footer p{font-size:12px}.nca-chart-header{display:flex}.nca-chart-caption{font-size:12px}.nca-current small{font-size:11px}.nca.nwa-card{flex:none}.nca .np-info{margin-top:0}

[data-theme=dark] .nca{--nca-total:#83d8bc;--nca-male:#8cc9eb;--nca-female:#d6a7dc}

.nca [data-nca-average]{display:block;font-size:10px;line-height:1.4;max-width:165px;margin-top:4px}.nca .nca-current{max-width:58%}.nca .nca-current small{white-space:normal}

/* A single fitting chart, with direct tap controls. */
.nca{height:100%!important;min-height:0!important;flex:1!important;overflow:hidden!important}.nca-header{flex:0 0 auto;padding:11px 12px 8px}.nca-header h2{font-size:23px;margin:5px 0 9px}.nca-metric-buttons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}.nca-metric-buttons button,.nca-period-buttons button{min-height:31px;padding:5px 6px;border:1px solid var(--nca-outline);border-radius:8px;background:var(--nwa-bg);color:var(--nca-muted);font-size:11px;font-weight:650;white-space:nowrap}.nca-metric-buttons [aria-pressed=true],.nca-period-buttons [aria-pressed=true]{background:#d9ece6;border-color:#91bdb0;color:#154d48;font-weight:800}.nca-period-buttons{display:flex;gap:4px;margin-top:7px}.nca-period-buttons button{flex:1;min-height:29px}.nca-meta{margin-top:6px;font-size:10px;justify-content:space-between}.nca-chart-stack{display:flex!important;flex:1;min-height:0;padding:8px 12px}.nca-chart-card{display:flex!important;flex-direction:column;flex:1;min-height:0;padding:9px 8px}.nca-plot{height:auto!important;min-height:110px!important;flex:1;margin-top:3px;max-height:320px}.nca-chart-header{flex:none;padding-bottom:4px}.nca-chart-header h3{font-size:13px}.nca-chart-caption{flex:none;font-size:10px;min-height:0;padding:5px 2px 0;line-height:1.3}.nca-current strong{font-size:23px}.nca-current small{font-size:10px;margin-top:3px}.nca-footer{flex:none;padding:0 12px 7px}.nca-footer .np-info summary{min-height:30px;font-size:11px}.nca-footer [data-nca-refresh]{font-size:10px}.nca-footer [data-nca-refresh]:empty{display:none}[data-theme=dark] .nca-metric-buttons [aria-pressed=true],[data-theme=dark] .nca-period-buttons [aria-pressed=true]{background:#21454d;color:#c7f7e7;border-color:#4c7772}@media(max-height:720px){.nca-header{padding:7px 10px}.nca-header h2{font-size:20px;margin:3px 0 6px}.nca-metric-buttons button{min-height:27px}.nca-plot{min-height:85px!important}.nca-chart-stack{padding:6px 10px}.nca-header .nca-eyebrow{display:none}.nca-footer{padding-bottom:4px}}

.nca-title-row{display:flex;align-items:center;gap:3px}.nca-info{position:static;margin:0}.nca-info summary{list-style:none;display:grid;place-items:center;width:28px;height:28px;min-height:28px;cursor:pointer;color:var(--nca-muted)}.nca-info summary::-webkit-details-marker{display:none}.nca-info p{position:absolute;z-index:12;left:10px;right:10px;top:43px;margin:0;padding:12px;border:1px solid var(--nca-outline);border-radius:10px;background:var(--nca-panel);color:var(--nca-ink);font-size:12px;line-height:1.5;box-shadow:0 8px 25px #102a3330}.nca-footer:has([data-nca-refresh]:empty){padding:0;border:0}.nca-chart-card{overflow:visible}

.nca-timeline-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px;padding-top:8px;border-top:1px solid var(--nca-outline)}.nca-timeline-row>span{font-size:11px;font-weight:700;color:var(--nca-muted)}.nca-period-buttons{margin:0;flex:none;gap:4px}.nca-period-buttons button{min-width:61px;background:transparent;border-color:transparent;min-height:28px}.nca-period-buttons button[aria-pressed=true]{background:#174f5d;color:#fff;border-color:#174f5d}[data-theme=dark] .nca-period-buttons button[aria-pressed=true]{background:#b2e3d3;color:#123b3e;border-color:#b2e3d3}.nca-metric-buttons [data-nca-metric=total]{grid-column:span 2}

/* Direct metric controls fit one row; shorter viewports keep every chart label visible. */
.nca-metric-buttons{grid-template-columns:repeat(5,minmax(0,1fr))}.nca-metric-buttons [data-nca-metric=total]{grid-column:auto}.nca-metric-buttons button{min-height:36px;white-space:normal;line-height:1.2;padding:4px 3px;font-size:10px}
@media(max-height:720px){.nca .nca-plot{min-height:40px!important}.nca .nca-chart-card{padding:6px}.nca .nca-timeline-row{margin-top:7px;padding-top:6px}}

.nca .nca-plot{min-height:40px!important}

.nca-footer [data-nca-refresh]{font-size:9px;line-height:1.3}.nca-footer{padding:3px 10px 5px}

@media(max-height:720px){.nca .nca-metric-buttons button{min-height:30px}.nca .nca-header{padding:6px 10px}.nca .nca-timeline-row{margin-top:5px;padding-top:4px}.nca .nca-current strong{font-size:21px}.nca .nca-plot{min-height:66px!important}.nca .nca-chart-header{padding-bottom:2px}.nca .nca-meta{margin-top:4px}}

@media(max-height:720px){.nca-header{position:relative}.nca-header .nca-eyebrow{display:block;position:absolute;right:10px;top:10px;font-size:8px;letter-spacing:.04em}.nca-header h2{margin-right:90px}}

.nca-timeline-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.nca-timeline-row>span{font-weight:700}.nca .nca-period-buttons{display:flex;padding:4px;gap:4px;border:1px solid var(--border,#ccd8d5);border-radius:12px;background:var(--surface,#fff)}.nca-footer{flex-wrap:wrap;gap:10px}.nca-house-promo{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:.86rem;padding:14px 18px;border-radius:14px;background:color-mix(in srgb,#2ba482 10%,transparent);margin-top:12px}.nca-house-promo a{font-weight:700}.nca [data-nca-change]:empty{display:none}

/* Keep the plot and its caption inside one card; the page owns any overflow. */
.nca-house-promo{margin-top:0;padding:8px 12px;gap:4px 10px;align-items:center;font-size:11px}.nca-house-promo p,.nca-house-promo h3{margin:0;font-size:11px}.nca .nca-plot{min-height:40px!important}.nca-chart-caption{min-height:22px;flex:0 0 auto}.nca-chart-card{overflow:hidden}@media(max-height:500px){.nca{height:330px!important;min-height:330px!important;flex:none!important}}
