/* SmartGrowth identity v1. Load after your base stylesheet. No external fonts. */
:root{
 --sg-violet:#6954dd;--sg-violet-dark:#5041b4;--sg-lavender:#f0edff;
 --sg-ink:#202438;--sg-muted:#596174;--sg-mint:#64d8b0;--sg-mint-dark:#147859;
 --sg-amber:#a56816;--sg-danger:#b34250;--sg-paper:#fff;--sg-canvas:#f7f8fc;--sg-border:#e1e4ed;
 --sg-font:Inter,'Segoe UI',system-ui,-apple-system,sans-serif;
 --sg-radius:12px;--sg-shadow:0 14px 40px #2024380a;
 --purple:var(--sg-violet);--purple-dark:var(--sg-violet-dark);--purple-soft:var(--sg-lavender);
 --ink:var(--sg-ink);--muted:var(--sg-muted);--border:var(--sg-border);--background:var(--sg-canvas);
 --bs-body-font-family:var(--sg-font);--bs-body-color:var(--sg-ink);
}
body{font-family:var(--sg-font);color:var(--sg-ink)}
.sg-button{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;padding:.8rem 1.2rem;border:1px solid transparent;border-radius:8px;font:600 .875rem/1.5 var(--sg-font);text-decoration:none;cursor:pointer;transition:background .15s}
.sg-button-primary{background:var(--sg-violet);color:white}.sg-button-primary:hover{background:var(--sg-violet-dark);color:white}
.sg-button-secondary{background:white;color:var(--sg-violet-dark);border-color:var(--sg-border)}.sg-button-secondary:hover{background:var(--sg-lavender)}
.sg-button:disabled{opacity:.55;cursor:not-allowed}
:where(a,button,input,select,textarea,summary):focus-visible{outline:3px solid var(--sg-violet);outline-offset:4px}
.sg-card{background:white;border:1px solid var(--sg-border);border-radius:var(--sg-radius);padding:1.5rem;box-shadow:var(--sg-shadow)}
.sg-background-grid{background:var(--sg-canvas) url('../backgrounds/signal-grid.svg') center/640px}
.sg-background-orbit{background:var(--sg-lavender) url('../backgrounds/orbit.svg') center/cover}
.sg-background-dark{background:var(--sg-ink) url('../backgrounds/night-signals.svg') center/cover;color:white}
.sg-chart-primary{stroke:var(--sg-violet);fill:none}.sg-chart-secondary{stroke:var(--sg-mint-dark);fill:none}
.sg-chart-grid{stroke:var(--sg-border)}.sg-chart-label{fill:var(--sg-muted);font-family:var(--sg-font)}
/* Existing workspace components share these semantic brand colours. */
.trend-chart svg polyline,.trend-chart svg circle{stroke:var(--sg-violet)}.trend-chart svg circle{fill:var(--sg-violet)}
.score-ring{--ring:var(--sg-violet)}.score-ring.strong{--ring:var(--sg-mint-dark)}.score-ring.weak{--ring:var(--sg-amber)}
.text-button,.brand-dot,.heading-dot{color:var(--sg-violet-dark)}.tiny-dot{background:var(--sg-violet)}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

