/* Shared V2 visual foundation. Screen modules consume these tokens and primitives. */
:root,
html[data-theme="light"]{
  color-scheme:light;
  --navy:#082f5b;
  --navy-soft:#59698b;
  --orange:#ff571f;
  --orange-dark:#d83c0d;
  --green:#3d7849;
  --line:#e4e7eb;
  --paper:#fffdf9;
  --white:#fff;
  --page-background:#edf2f1;
  --surface-muted:#f6f7f5;
  --warm-surface:#fff1e8;
  --green-surface:#eef6ea;
  --surface-translucent:#fffffff2;
  --v2-radius-sm:14px;
  --v2-radius-md:20px;
  --v2-radius-lg:28px;
  --v2-shadow:0 10px 30px #163d6812;
  --v2-content-inline:clamp(18px,5vw,48px);
  --v2-content-width:940px;

  /* Default environment colors (Cidadão) */
  --env-color:#ff7b4d;
  --env-color-dark:#e85d3a;
  --env-color-light:#fff4f0;
  --env-text:#082f5b;
  --env-text-soft:#59698b;
}

html[data-theme="light"] body{background:var(--page-background);color:var(--navy)}
html[data-theme="light"] :is(button,input,select,textarea){color-scheme:light}
:is(button,a,input,select,textarea):focus-visible{outline:3px solid #ff7b4d;outline-offset:3px}

/* Environment-specific color overrides - applied via [data-env] attribute on body or .citizen-app */
html[data-env="user"]{--env-color:#ff7b4d;--env-color-dark:#e85d3a;--env-color-light:#fff4f0;--env-text:#082f5b;--env-text-soft:#59698b}
html[data-env="business"]{--env-color:#1e3a5f;--env-color-dark:#0f2742;--env-color-light:#eef2f7;--env-text:#1e3a5f;--env-text-soft:#59698b}
html[data-env="professional"]{--env-color:#2563eb;--env-color-dark:#1d4ed8;--env-color-light:#eff6ff;--env-text:#1e3a5f;--env-text-soft:#59698b}
html[data-env="collaborator"]{--env-color:#16a34a;--env-color-dark:#15803d;--env-color-light:#f0fdf4;--env-text:#082f5b;--env-text-soft:#59698b}
html[data-env="delivery"]{--env-color:#f59e0b;--env-color-dark:#d97706;--env-color-light:#fffbeb;--env-text:#082f5b;--env-text-soft:#59698b}
html[data-env="admin"]{--env-color:#7c3aed;--env-color-dark:#6d28d9;--env-color-light:#f5f3ff;--env-text:#082f5b;--env-text-soft:#59698b}
html[data-env="enterprise"]{--env-color:#0891b2;--env-color-dark:#0e7490;--env-color-light:#f0f9ff;--env-text:#082f5b;--env-text-soft:#59698b}
html[data-env="advertiser"]{--env-color:#c026d3;--env-color-dark:#a21caf;--env-color-light:#fdf4ff;--env-text:#082f5b;--env-text-soft:#59698b}
html[data-env="partner"]{--env-color:#059669;--env-color-dark:#047857;--env-color-light:#ecfdf5;--env-text:#082f5b;--env-text-soft:#59698b}
html[data-env="sponsor"]{--env-color:#dc2626;--env-color-dark:#b91c1c;--env-color-light:#fef2f2;--env-text:#082f5b;--env-text-soft:#59698b}
html[data-env="public-institutions"]{--env-color:#0891b2;--env-color-dark:#0e7490;--env-color-light:#f0f9ff;--env-text:#082f5b;--env-text-soft:#59698b}
html[data-env="private-institutions"]{--env-color:#7c2d12;--env-color-dark:#9a3412;--env-color-light:#fff7ed;--env-text:#082f5b;--env-text-soft:#59698b}

/* Environment-aware component tokens */
:root{
  --button-primary-bg:var(--env-color);
  --button-primary-hover:var(--env-color-dark);
  --button-primary-text:var(--white);
  --button-secondary-bg:var(--env-color-light);
  --button-secondary-hover:var(--env-color);
  --button-secondary-text:var(--env-color);
  --accent-color:var(--env-color);
  --accent-color-dark:var(--env-color-dark);
  --accent-color-light:var(--env-color-light);
  --focus-ring:var(--env-color);
  --link-color:var(--env-color);
  --link-hover:var(--env-color-dark);
  --accent-border:var(--env-color);
  --accent-bg:var(--env-color-light);
}

/* The future dark palette remains preserved in preferences, but V2 renders light for now. */
.preference-row.is-temporarily-locked{cursor:not-allowed}
.preference-row.is-temporarily-locked .preference-copy span{color:#7a8496}
.preference-row.is-temporarily-locked .preference-switch{background:#c4c8ce;opacity:.72}
