*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}

:root{
  --bg:#EEF3FB;
  --surface:#fff;
  --surface2:#F6F8FC;
  --text:#13203B;
  --muted:#71819E;
  --border:#D7E1F0;
  --primary:#2F7CFF;
  --primary-dk:#2059C9;
  --soft:#EAF2FF;
  --ok:#22C55E;
  --ok-s:#E9FFF1;
  --warn:#F59E0B;
  --warn-s:#FFF4DD;
  --err:#EF4444;
  --err-s:#FFE8E8;
  --purple:#9B7BFF;
  --purple-s:#F0EBFF;
  --shadow:rgba(11,18,32,.10);
  --r:20px;
  --r2:14px;
  --r3:10px;
}

[data-theme="light"]{
  --bg:#EEF3FB;
  --surface:#fff;
  --surface2:#F6F8FC;
  --text:#13203B;
  --muted:#71819E;
  --border:#D7E1F0;
  --primary:#2F7CFF;
  --primary-dk:#2059C9;
  --soft:#EAF2FF;
  --shadow:rgba(11,18,32,.10);
}

[data-theme="dark"]{
  --bg:#0F172A;
  --surface:#1E293B;
  --surface2:#334155;
  --text:#F8FAFC;
  --muted:#94A3B8;
  --border:#475569;
  --primary:#3B82F6;
  --primary-dk:#2563EB;
  --soft:#1E3A8A;
  --shadow:rgba(0,0,0,.35);
}

html,body{
  min-height:100%;
  background:var(--bg);
  color:var(--text);
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:15px;
  line-height:1.5;
}