/* Generated from design/tokens.json. Edit the source tokens, then run node scripts/build.mjs. */
:root{
 --background:#FBFBF9;
 --surface:#FFFFFF;
 --control-background:#F3F4F2;
 --control-active:#E6F2EC;
 --green-50:var(--control-active);
 --pt-green:#0B6B45;
 --green-hover:#07523A;
 --pt-red:#C83D3D;
 --pt-blue:#1E5573;
 --pt-ochre:#D7A326;
 --pt-charcoal:#262626;
 --ink-muted:#5E5E5E;
 --line-strong:#8A8A8A;
 --assessment-good:#CDE5D8;
 --assessment-some-good:#E6F2EC;
 --assessment-some-bad:#FBEDED;
 --assessment-bad:#F4D2D2;
 --assessment-neutral:#F3F4F2;
 --assessment-negative-ink:#942D2D;
 --error:#A82318;
 --warning:#B54708;
 --info:#1E5573;
 --success:#0B6B45;
 --activity-1:#FEF0D9;
 --activity-2:#FDCC8A;
 --activity-3:#FC8D59;
 --activity-4:#E34A33;
 --activity-5:#B30000;
 --activity-light-ink:#663F20;
 --activity-medium-ink:#4A2712;
 --rainfall-blue:#397FA8;
 --temperature-outside:#F58220;
 --temperature-band:var(--control-active);
 --map-baseline:#BDBDBD;
 --map-land:#EFEDE8;
 --map-water:#E3EBEF;
 --map-boundary:#C4C4C4;
 --temperature-map-1:#FFF7EC;
 --temperature-map-2:#FEE8C8;
 --temperature-map-3:#FDBB84;
 --temperature-map-4:#E34A33;
 --temperature-map-5:#990000;
 --rainfall-probability:#7FB0D0;
 --activity-high-ink:#000000;
 --line:#E5E5E5;
 --white:#FFFFFF;
 --black:#000000;
 --information-surface:#E3EBEF;
 --inverse-surface:#0B6B45;
 --inverse-text:#FFFFFF;
 --inverse-line:#ffffff66;
 --overlay-backdrop:#0006;
 --shadow-overlay:0 8px 24px #0002;
 --shadow-sticky:0 3px 10px #0000000c;
 --font-display:'Momo Trust Display',sans-serif;
 --font-heading:ABeeZee,sans-serif;
 --font-body:Inter,system-ui,sans-serif;
 --font-figure:'SUSE Mono',monospace;
 --size-display:56px;
 --leading-display:60px;
 --size-title:40px;
 --leading-title:48px;
 --size-h1:40px;
 --leading-h1:48px;
 --size-h2:28px;
 --leading-h2:36px;
 --size-h3:20px;
 --leading-h3:28px;
 --size-body:17px;
 --leading-body:28px;
 --size-small:14px;
 --leading-small:20px;
 --leading-explanation:24px;
 --size-card-title:24px;
 --leading-card-title:32px;
 --size-table-data:10pt;
 --size-dense-support:11px;
 --size-chart:12px;
 --size-figure:28px;
 --leading-figure:36px;
 --input-height:40px;
 --button-height:36px;
 --radius-control:8px;
 --radius-card:16px;
 --header-expanded:64px;
 --header-compact:56px;
 --bottom-bar-height:64px;
 --z-sticky:100;
 --z-menu:200;
 --z-dialog:300;
 --z-toast:400;
 --content-width:1200px;
 --reading-width:720px;
 --wide-width:1440px;
 --gutter:24px;
 --padding-comfortable:24px;
 --gap-comfortable:24px;
 --padding-compact:16px;
 --gap-compact:12px;
 --motion-state:150ms;
 --motion-panel:250ms;
 --space-4:4px;
 --space-8:8px;
 --space-12:12px;
 --space-16:16px;
 --space-24:24px;
 --space-32:32px;
 --space-48:48px;
 --space-64:64px;
 --space-96:96px;
 --match-0:#D9D9D9;
 --match-1:#F4C89B;
 --match-2:#F2DF91;
 --match-3:#0B6B45;
 --match-ink:#262626;
 --annual-match-0:#D9D9D9;
 --annual-match-1:#E6F2EC;
 --annual-match-2:#A7D2BB;
 --annual-match-3:#54A27B;
 --annual-match-4:#0B6B45;
 --rainfall-map-1:#EFF6FC;
 --rainfall-map-2:#BDD7E7;
 --rainfall-map-3:#7FB0D0;
 --rainfall-map-4:#397FA8;
 --rainfall-map-5:#184866;
 --rainfall-band:#DCECF5;
}
body{
 --paper:var(--background);
 --ink:var(--pt-charcoal);
 --muted:var(--ink-muted);
 --green:var(--pt-green);
 --warm:var(--pt-red);
 --selected:var(--control-active);
 --strong:var(--line-strong);
 --focus:var(--pt-green);
 --on-primary:#FFFFFF;
 --negative-ink:var(--assessment-negative-ink);
}
body.dark{
 --paper:#141414;
 --surface:#1E1E1E;
 --ink:#EDEDED;
 --muted:#A3A3A3;
 --green:#4CC08A;
 --strong:#727272;
 --line:#414141;
 --selected:#203B30;
 --control-background:#252525;
 --control-active:#203B30;
 --green-hover:#68CFA1;
 --on-primary:#141414;
 --focus:#D7A326;
 --error:#FF8A80;
 --warning:#F5A35C;
 --information-surface:#20313A;
 --assessment-good:#203B30;
 --assessment-some-good:#183529;
 --assessment-bad:#3C2424;
 --assessment-some-bad:#322323;
 --negative-ink:#F07575;
 --assessment-neutral:#252525;
 --rainfall-band:#203745;
}
