/* Bellaris Analytics Engine 1.0 — portable Wetpet-family analytics presentation.
   Scoped .bae-* classes do not interfere with CRM or client project layouts. */
.bae-engine{
  --bae-ink:#263d3b;--bae-muted:#62786a;--bae-line:#dce4d9;
  --bae-soft:#f6f7f4;--bae-green:#397b68;
  color:var(--bae-ink);display:grid;gap:18px;min-width:0
}
.bae-engine *{box-sizing:border-box}
.bae-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px 20px;margin-bottom:2px}
.bae-header h2{margin:0;font-size:clamp(19px,2vw,23px);letter-spacing:-.03em}
.bae-header p{font-size:12px;color:var(--bae-muted);margin:5px 0 0}
.bae-periods{display:flex;gap:6px;flex-wrap:wrap}
.bae-periods .btn{font-size:12px;border-radius:9px}
.bae-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.bae-metric,.bae-panel{background:#fff;border:1px solid var(--bae-line);border-radius:14px;min-width:0;box-shadow:0 8px 28px #092e3805}
.bae-metric{padding:21px}
.bae-metric>span{display:block;font-size:12px;color:var(--bae-muted);line-height:1.5}
.bae-metric>strong{display:block;color:#273e3b;font-size:clamp(28px,2.6vw,37px);font-weight:800;letter-spacing:-.05em;margin:12px 0 8px;font-variant-numeric:tabular-nums}
.bae-metric>p{color:#87958d;font-size:11px;line-height:1.5;margin:0}
.bae-panel{padding:24px}
.bae-panel h3{font-size:16px;font-weight:750;letter-spacing:-.025em;margin:0 0 18px}
.bae-two{display:grid;grid-template-columns:1fr 1fr;gap:18px;min-width:0}
.bae-line-svg{display:block;width:100%;height:auto;max-height:330px;overflow:visible}
.bae-grid{stroke:#e0e8de;stroke-dasharray:4 6;stroke-width:1}
.bae-line{fill:none;stroke:var(--bae-green);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.bae-point{fill:#fff;stroke:var(--bae-green);stroke-width:3;cursor:crosshair;outline:none}
.bae-point:hover,.bae-point:focus{fill:#cbeaab;stroke:#245e50;stroke-width:4;r:7}
.bae-date,.bae-y{font-size:12px;fill:#82928a;font-family:inherit}
.bae-help{font-size:11px;color:#81918a;line-height:1.6;margin:10px 0 0}
.bae-donut{display:grid;grid-template-columns:minmax(120px,210px) minmax(0,1fr);gap:20px;align-items:center;min-width:0}
.bae-donut-svg{width:100%;height:auto}
.bae-donut-total{fill:#29463a;font-size:25px;font-weight:800;font-family:inherit}
.bae-donut-caption{fill:#7e907e;font-size:10px;font-family:inherit}
.bae-legend{list-style:none;padding:0;margin:0;display:grid;gap:13px}
.bae-legend li{display:grid;grid-template-columns:11px minmax(0,1fr) auto;gap:8px;align-items:center;font-size:12px;min-width:0}
.bae-dot{width:10px;height:10px;border-radius:50%}
.bae-legend li span:nth-child(2){color:#506c60;overflow-wrap:anywhere}
.bae-legend strong,.bae-bars strong,.bae-funnel strong{font-variant-numeric:tabular-nums;color:#2a4439}
.bae-bars{list-style:none;display:grid;gap:17px;margin:0;padding:0}
.bae-bars li{min-width:0}
.bae-bars li>div{display:flex;gap:12px;justify-content:space-between;align-items:start;font-size:12px;line-height:1.5;margin-bottom:6px}
.bae-bars li span{color:#526c60;min-width:0;overflow-wrap:anywhere}
.bae-bars meter{display:block;width:100%;height:9px;border:0;border-radius:99px;background:#edf2e8}
.bae-bars meter::-webkit-meter-bar{height:9px;border:0;border-radius:99px;background:#edf2e8}
.bae-bars meter::-webkit-meter-optimum-value{background:#80ab81;border-radius:99px}
.bae-bars meter::-moz-meter-bar{background:#80ab81;border-radius:99px}
.bae-funnel{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.bae-funnel li{display:flex;flex-direction:column;gap:8px;padding:14px;border-radius:11px;background:var(--bae-soft);min-width:0}
.bae-funnel li span{font-size:12px;color:#647b6b}
.bae-funnel li strong{font-size:22px}
.bae-empty{padding:26px 12px;text-align:center;color:#8b998e}
.bae-empty strong{font-size:14px;color:#647b69}
.bae-empty p{font-size:12px;margin:7px 0}
.bae-warning{border-radius:11px;padding:12px 14px;background:#fff5dd;color:#744e18;font-size:12px}
.bae-method{padding:14px 17px;background:#edf2e7;border:1px solid #dce7d6;border-radius:12px;font-size:12px;line-height:1.7}
.bae-method summary{cursor:pointer;font-weight:700;color:#38594c}
.bae-method p{margin:9px 0 0;color:#557064}
.bae-footer{font-size:11px;color:#8b9a90;text-align:center;padding:6px 0}
.bae-state{text-align:center;padding:30px;border-radius:13px;background:#fff;color:#62786a}
@media(max-width:1180px){.bae-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.bae-donut{grid-template-columns:155px 1fr}}
@media(max-width:850px){.bae-two{grid-template-columns:minmax(0,1fr)}.bae-donut{grid-template-columns:minmax(120px,200px) 1fr}}
@media(max-width:560px){.bae-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.bae-metric{padding:14px}.bae-panel{padding:17px}.bae-donut{grid-template-columns:1fr;justify-items:center;gap:12px}.bae-donut-svg{max-width:195px}.bae-legend{width:100%}.bae-funnel{grid-template-columns:repeat(2,minmax(0,1fr))}.bae-metric>strong{font-size:27px}.bae-header{align-items:flex-start}.bae-header h2{font-size:20px}.bae-line-svg{min-height:130px}}
@media(prefers-reduced-motion:reduce){.bae-engine *{transition:none!important;animation:none!important}}
