/* Lamplighter · lamplighter.help. Generated by source/build.py. */
@font-face{font-family:"Faustina";src:url(fonts/faustina.woff2) format("woff2");font-weight:300 800;font-style:normal;font-display:swap}
@font-face{font-family:"Faustina";src:url(fonts/faustina-italic.woff2) format("woff2");font-weight:300 800;font-style:italic;font-display:swap}
@font-face{font-family:"Public Sans";src:url(fonts/public-sans.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:"Atkinson Hyperlegible Next";src:url(fonts/atkinson-hyperlegible-next.woff2) format("woff2");font-weight:200 800;font-style:normal;font-display:swap}
@font-face{font-family:"IBM Plex Sans";src:url(fonts/ibm-plex-sans.woff2) format("woff2");font-weight:100 700;font-style:normal;font-display:swap}
/* ===== palette block: the only place a color value appears ===== */
:root{--w-bg:#FBEAD4;--w-doc:#FEF9F1;--w-chat:#FBEFDE;--w-his:#F7E3C8;--w-ink:#291B0E;--w-ink2:#614935;--w-ink3:#745D47;--w-line:#E8D0B1;--w-source:#207029;--w-source-wash:#D1F2D7;--w-source-line:#4C844F;--w-missing:#67212F;--w-missing-wash:#F9E3E4;--w-missing-line:#A24852;--w-dropped:#80536D;--w-dropped-line:#9F6F8A;--l-frame:#A47634;--l-lamp:#F5C483;--l-lamp-ink:#2A1904;--l-lamp-hi:#ECB166;--l-wick:#2F40A3;--l-wick-ink:#FFFFFF;--w-brand:#F5C483;--w-brand-ink:#2A1904;--w-brand2:#2F40A3;--w-brand2-ink:#FFFFFF;--w-lift:0 1px 2px rgba(41,27,14,.07),0 22px 48px -20px rgba(41,27,14,.28);--l-glow:rgba(255,249,238,.95);--l-glow2:rgba(245,196,131,.55);--l-lit:#291B0E;--w-control-edge:#968063;}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){--w-bg:#17130C;--w-doc:#231D15;--w-chat:#2E261C;--w-his:#3A3022;--w-ink:#F6EEDD;--w-ink2:#D2C5B2;--w-ink3:#B9AA94;--w-line:#41372A;--w-source:#8CEDD4;--w-source-wash:#0F382D;--w-source-line:#45A68B;--w-missing:#EF7D88;--w-missing-wash:#3E2225;--w-missing-line:#C8626D;--w-dropped:#B594BD;--w-dropped-line:#93739A;--l-frame:#AE8C5D;--l-lamp:#F5C483;--l-lamp-ink:#231604;--l-lamp-hi:#FFD79E;--l-wick:#8796F0;--l-wick-ink:#0D1233;--w-brand:#F5C483;--w-brand-ink:#231604;--w-brand2:#8796F0;--w-brand2-ink:#0D1233;--w-lift:0 1px 2px rgba(0,0,0,.45),0 26px 60px -18px rgba(0,0,0,.7);--l-glow:rgba(245,196,131,.20);--l-glow2:rgba(245,196,131,.07);--l-lit:#F5C483;--w-control-edge:#84796a;color-scheme:dark}}
:root[data-theme="dark"]{--w-bg:#17130C;--w-doc:#231D15;--w-chat:#2E261C;--w-his:#3A3022;--w-ink:#F6EEDD;--w-ink2:#D2C5B2;--w-ink3:#B9AA94;--w-line:#41372A;--w-source:#8CEDD4;--w-source-wash:#0F382D;--w-source-line:#45A68B;--w-missing:#EF7D88;--w-missing-wash:#3E2225;--w-missing-line:#C8626D;--w-dropped:#B594BD;--w-dropped-line:#93739A;--l-frame:#AE8C5D;--l-lamp:#F5C483;--l-lamp-ink:#231604;--l-lamp-hi:#FFD79E;--l-wick:#8796F0;--l-wick-ink:#0D1233;--w-brand:#F5C483;--w-brand-ink:#231604;--w-brand2:#8796F0;--w-brand2-ink:#0D1233;--w-lift:0 1px 2px rgba(0,0,0,.45),0 26px 60px -18px rgba(0,0,0,.7);--l-glow:rgba(245,196,131,.20);--l-glow2:rgba(245,196,131,.07);--l-lit:#F5C483;--w-control-edge:#84796a;color-scheme:dark}
:root[data-pal="lamplight"]{--w-bg:#FBEAD4;--w-doc:#FEF9F1;--w-chat:#FBEFDE;--w-his:#F7E3C8;--w-ink:#291B0E;--w-ink2:#614935;--w-ink3:#745D47;--w-line:#E8D0B1;--w-source:#207029;--w-source-wash:#D1F2D7;--w-source-line:#4C844F;--w-missing:#67212F;--w-missing-wash:#F9E3E4;--w-missing-line:#A24852;--w-dropped:#80536D;--w-dropped-line:#9F6F8A;--l-frame:#A47634;--l-lamp:#F5C483;--l-lamp-ink:#2A1904;--l-lamp-hi:#ECB166;--l-wick:#2F40A3;--l-wick-ink:#FFFFFF;--w-brand:#F5C483;--w-brand-ink:#2A1904;--w-brand2:#2F40A3;--w-brand2-ink:#FFFFFF;--w-lift:0 1px 2px rgba(41,27,14,.07),0 22px 48px -20px rgba(41,27,14,.28);--l-glow:rgba(255,249,238,.95);--l-glow2:rgba(245,196,131,.55);--l-lit:#291B0E;--w-control-edge:#968063;color-scheme:light}
:root[data-pal="lamplight-night"]{--w-bg:#17130C;--w-doc:#231D15;--w-chat:#2E261C;--w-his:#3A3022;--w-ink:#F6EEDD;--w-ink2:#D2C5B2;--w-ink3:#B9AA94;--w-line:#41372A;--w-source:#8CEDD4;--w-source-wash:#0F382D;--w-source-line:#45A68B;--w-missing:#EF7D88;--w-missing-wash:#3E2225;--w-missing-line:#C8626D;--w-dropped:#B594BD;--w-dropped-line:#93739A;--l-frame:#AE8C5D;--l-lamp:#F5C483;--l-lamp-ink:#231604;--l-lamp-hi:#FFD79E;--l-wick:#8796F0;--l-wick-ink:#0D1233;--w-brand:#F5C483;--w-brand-ink:#231604;--w-brand2:#8796F0;--w-brand2-ink:#0D1233;--w-lift:0 1px 2px rgba(0,0,0,.45),0 26px 60px -18px rgba(0,0,0,.7);--l-glow:rgba(245,196,131,.20);--l-glow2:rgba(245,196,131,.07);--l-lit:#F5C483;--w-control-edge:#84796a;color-scheme:dark}
.l-night{--w-bg:#17130C;--w-doc:#231D15;--w-chat:#2E261C;--w-his:#3A3022;--w-ink:#F6EEDD;--w-ink2:#D2C5B2;--w-ink3:#B9AA94;--w-line:#41372A;--w-source:#8CEDD4;--w-source-wash:#0F382D;--w-source-line:#45A68B;--w-missing:#EF7D88;--w-missing-wash:#3E2225;--w-missing-line:#C8626D;--w-dropped:#B594BD;--w-dropped-line:#93739A;--l-frame:#AE8C5D;--l-lamp:#F5C483;--l-lamp-ink:#231604;--l-lamp-hi:#FFD79E;--l-wick:#8796F0;--l-wick-ink:#0D1233;--w-brand:#F5C483;--w-brand-ink:#231604;--w-brand2:#8796F0;--w-brand2-ink:#0D1233;--w-lift:0 1px 2px rgba(0,0,0,.45),0 26px 60px -18px rgba(0,0,0,.7);--l-glow:rgba(245,196,131,.20);--l-glow2:rgba(245,196,131,.07);--l-lit:#F5C483;--w-control-edge:#84796a;color-scheme:dark}
.wk{--w-bg:#DBE2FC;--w-doc:#FEF6EA;--w-chat:#EEF1FC;--w-his:#D7DEFC;--w-ink:#111735;--w-ink2:#3F4565;--w-ink3:#535974;--w-line:#D1D5E5;--w-source:#207029;--w-source-wash:#D1F2D7;--w-source-line:#4C844F;--w-missing:#67212F;--w-missing-wash:#F9E3E4;--w-missing-line:#A24852;--w-dropped:#80536D;--w-dropped-line:#9F6F8A;--w-brand:#2F40A3;--w-brand-ink:#FFFFFF;--l-wick:#2F40A3;--w-lift:0 1px 2px rgba(17,23,53,.07),0 14px 34px -10px rgba(17,23,53,.18);}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .wk{--w-bg:#10132C;--w-doc:#261F16;--w-chat:#1A1E3E;--w-his:#292F5B;--w-ink:#F6EEDD;--w-ink2:#C6BCAC;--w-ink3:#A8A9BE;--w-line:#303658;--w-source:#8CEDD4;--w-source-wash:#0F382D;--w-source-line:#45A68B;--w-missing:#EF7D88;--w-missing-wash:#3E2225;--w-missing-line:#C8626D;--w-dropped:#B594BD;--w-dropped-line:#93739A;--w-brand:#8796F0;--w-brand-ink:#0D1233;--l-wick:#8796F0;--w-lift:0 1px 2px rgba(0,0,0,.45),0 18px 40px -12px rgba(0,0,0,.6);}}
:root[data-theme="dark"] .wk{--w-bg:#10132C;--w-doc:#261F16;--w-chat:#1A1E3E;--w-his:#292F5B;--w-ink:#F6EEDD;--w-ink2:#C6BCAC;--w-ink3:#A8A9BE;--w-line:#303658;--w-source:#8CEDD4;--w-source-wash:#0F382D;--w-source-line:#45A68B;--w-missing:#EF7D88;--w-missing-wash:#3E2225;--w-missing-line:#C8626D;--w-dropped:#B594BD;--w-dropped-line:#93739A;--w-brand:#8796F0;--w-brand-ink:#0D1233;--l-wick:#8796F0;--w-lift:0 1px 2px rgba(0,0,0,.45),0 18px 40px -12px rgba(0,0,0,.6);}
:root[data-pal="lamplight"] .wk{--w-bg:#DBE2FC;--w-doc:#FEF6EA;--w-chat:#EEF1FC;--w-his:#D7DEFC;--w-ink:#111735;--w-ink2:#3F4565;--w-ink3:#535974;--w-line:#D1D5E5;--w-source:#207029;--w-source-wash:#D1F2D7;--w-source-line:#4C844F;--w-missing:#67212F;--w-missing-wash:#F9E3E4;--w-missing-line:#A24852;--w-dropped:#80536D;--w-dropped-line:#9F6F8A;--w-brand:#2F40A3;--w-brand-ink:#FFFFFF;--l-wick:#2F40A3;--w-lift:0 1px 2px rgba(17,23,53,.07),0 14px 34px -10px rgba(17,23,53,.18);}
:root[data-pal="lamplight-night"] .wk{--w-bg:#10132C;--w-doc:#261F16;--w-chat:#1A1E3E;--w-his:#292F5B;--w-ink:#F6EEDD;--w-ink2:#C6BCAC;--w-ink3:#A8A9BE;--w-line:#303658;--w-source:#8CEDD4;--w-source-wash:#0F382D;--w-source-line:#45A68B;--w-missing:#EF7D88;--w-missing-wash:#3E2225;--w-missing-line:#C8626D;--w-dropped:#B594BD;--w-dropped-line:#93739A;--w-brand:#8796F0;--w-brand-ink:#0D1233;--l-wick:#8796F0;--w-lift:0 1px 2px rgba(0,0,0,.45),0 18px 40px -12px rgba(0,0,0,.6);}
:root{--g-fill:rgba(255,251,244,.46);--g-edge:rgba(255,255,255,.72);--g-hi:rgba(255,255,255,.95);--g-sheen:rgba(255,255,255,.55);--g-sheen2:rgba(255,236,205,.35);--g-drop:rgba(41,27,14,.08);--g-drop2:rgba(41,27,14,.32);--g-inner:rgba(164,118,52,.28);--g-blob1:rgba(245,196,131,.85);--g-blob1b:rgba(236,170,90,.9);--g-blob2:rgba(135,150,240,.55);--g-blob3:rgba(255,214,160,.6);}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){--g-fill:rgba(58,48,34,.42);--g-edge:rgba(255,236,205,.2);--g-hi:rgba(255,240,215,.45);--g-sheen:rgba(255,240,215,.14);--g-sheen2:rgba(245,196,131,.1);--g-drop:rgba(0,0,0,.3);--g-drop2:rgba(0,0,0,.6);--g-inner:rgba(0,0,0,.35);--g-blob1:rgba(245,196,131,.45);--g-blob1b:rgba(214,150,70,.6);--g-blob2:rgba(135,150,240,.4);--g-blob3:rgba(245,196,131,.25);}}
:root[data-theme="dark"],:root[data-pal="lamplight-night"],.l-night{--g-fill:rgba(58,48,34,.42);--g-edge:rgba(255,236,205,.2);--g-hi:rgba(255,240,215,.45);--g-sheen:rgba(255,240,215,.14);--g-sheen2:rgba(245,196,131,.1);--g-drop:rgba(0,0,0,.3);--g-drop2:rgba(0,0,0,.6);--g-inner:rgba(0,0,0,.35);--g-blob1:rgba(245,196,131,.45);--g-blob1b:rgba(214,150,70,.6);--g-blob2:rgba(135,150,240,.4);--g-blob3:rgba(245,196,131,.25);}
:root[data-pal="lamplight"]{--g-fill:rgba(255,251,244,.46);--g-edge:rgba(255,255,255,.72);--g-hi:rgba(255,255,255,.95);--g-sheen:rgba(255,255,255,.55);--g-sheen2:rgba(255,236,205,.35);--g-drop:rgba(41,27,14,.08);--g-drop2:rgba(41,27,14,.32);--g-inner:rgba(164,118,52,.28);--g-blob1:rgba(245,196,131,.85);--g-blob1b:rgba(236,170,90,.9);--g-blob2:rgba(135,150,240,.55);--g-blob3:rgba(255,214,160,.6);}
.ls{--w-bg:#FBEAD4;--w-doc:#FEF9F1;--w-chat:#FBEFDE;--w-his:#F7E3C8;--w-ink:#291B0E;--w-ink2:#614935;--w-ink3:#745D47;--w-line:#E8D0B1;--w-source:#207029;--w-source-wash:#D1F2D7;--w-source-line:#4C844F;--w-missing:#67212F;--w-missing-wash:#F9E3E4;--w-missing-line:#A24852;--w-dropped:#80536D;--w-dropped-line:#9F6F8A;--l-frame:#A47634;--l-lamp:#F5C483;--l-lamp-ink:#2A1904;--l-lamp-hi:#ECB166;--l-wick:#2F40A3;--l-wick-ink:#FFFFFF;--w-brand:#F5C483;--w-brand-ink:#2A1904;--w-brand2:#2F40A3;--w-brand2-ink:#FFFFFF;--w-lift:0 1px 2px rgba(41,27,14,.07),0 22px 48px -20px rgba(41,27,14,.28);--l-glow:rgba(255,249,238,.95);--l-glow2:rgba(245,196,131,.55);--l-lit:#291B0E;--w-control-edge:#968063;--g-fill:rgba(255,251,244,.46);--g-edge:rgba(255,255,255,.72);--g-hi:rgba(255,255,255,.95);--g-sheen:rgba(255,255,255,.55);--g-sheen2:rgba(255,236,205,.35);--g-drop:rgba(41,27,14,.08);--g-drop2:rgba(41,27,14,.32);--g-inner:rgba(164,118,52,.28);--g-blob1:rgba(245,196,131,.85);--g-blob1b:rgba(236,170,90,.9);--g-blob2:rgba(135,150,240,.55);--g-blob3:rgba(255,214,160,.6);}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .ls{--w-bg:#17130C;--w-doc:#231D15;--w-chat:#2E261C;--w-his:#3A3022;--w-ink:#F6EEDD;--w-ink2:#D2C5B2;--w-ink3:#B9AA94;--w-line:#41372A;--w-source:#8CEDD4;--w-source-wash:#0F382D;--w-source-line:#45A68B;--w-missing:#EF7D88;--w-missing-wash:#3E2225;--w-missing-line:#C8626D;--w-dropped:#B594BD;--w-dropped-line:#93739A;--l-frame:#AE8C5D;--l-lamp:#F5C483;--l-lamp-ink:#231604;--l-lamp-hi:#FFD79E;--l-wick:#8796F0;--l-wick-ink:#0D1233;--w-brand:#F5C483;--w-brand-ink:#231604;--w-brand2:#8796F0;--w-brand2-ink:#0D1233;--w-lift:0 1px 2px rgba(0,0,0,.45),0 26px 60px -18px rgba(0,0,0,.7);--l-glow:rgba(245,196,131,.20);--l-glow2:rgba(245,196,131,.07);--l-lit:#F5C483;--w-control-edge:#84796a;--g-fill:rgba(58,48,34,.42);--g-edge:rgba(255,236,205,.2);--g-hi:rgba(255,240,215,.45);--g-sheen:rgba(255,240,215,.14);--g-sheen2:rgba(245,196,131,.1);--g-drop:rgba(0,0,0,.3);--g-drop2:rgba(0,0,0,.6);--g-inner:rgba(0,0,0,.35);--g-blob1:rgba(245,196,131,.45);--g-blob1b:rgba(214,150,70,.6);--g-blob2:rgba(135,150,240,.4);--g-blob3:rgba(245,196,131,.25);}}
:root[data-theme="dark"] .ls,:root[data-pal="lamplight-night"] .ls{--w-bg:#17130C;--w-doc:#231D15;--w-chat:#2E261C;--w-his:#3A3022;--w-ink:#F6EEDD;--w-ink2:#D2C5B2;--w-ink3:#B9AA94;--w-line:#41372A;--w-source:#8CEDD4;--w-source-wash:#0F382D;--w-source-line:#45A68B;--w-missing:#EF7D88;--w-missing-wash:#3E2225;--w-missing-line:#C8626D;--w-dropped:#B594BD;--w-dropped-line:#93739A;--l-frame:#AE8C5D;--l-lamp:#F5C483;--l-lamp-ink:#231604;--l-lamp-hi:#FFD79E;--l-wick:#8796F0;--l-wick-ink:#0D1233;--w-brand:#F5C483;--w-brand-ink:#231604;--w-brand2:#8796F0;--w-brand2-ink:#0D1233;--w-lift:0 1px 2px rgba(0,0,0,.45),0 26px 60px -18px rgba(0,0,0,.7);--l-glow:rgba(245,196,131,.20);--l-glow2:rgba(245,196,131,.07);--l-lit:#F5C483;--w-control-edge:#84796a;--g-fill:rgba(58,48,34,.42);--g-edge:rgba(255,236,205,.2);--g-hi:rgba(255,240,215,.45);--g-sheen:rgba(255,240,215,.14);--g-sheen2:rgba(245,196,131,.1);--g-drop:rgba(0,0,0,.3);--g-drop2:rgba(0,0,0,.6);--g-inner:rgba(0,0,0,.35);--g-blob1:rgba(245,196,131,.45);--g-blob1b:rgba(214,150,70,.6);--g-blob2:rgba(135,150,240,.4);--g-blob3:rgba(245,196,131,.25);}
:root[data-pal="lamplight"] .ls{--w-bg:#FBEAD4;--w-doc:#FEF9F1;--w-chat:#FBEFDE;--w-his:#F7E3C8;--w-ink:#291B0E;--w-ink2:#614935;--w-ink3:#745D47;--w-line:#E8D0B1;--w-source:#207029;--w-source-wash:#D1F2D7;--w-source-line:#4C844F;--w-missing:#67212F;--w-missing-wash:#F9E3E4;--w-missing-line:#A24852;--w-dropped:#80536D;--w-dropped-line:#9F6F8A;--l-frame:#A47634;--l-lamp:#F5C483;--l-lamp-ink:#2A1904;--l-lamp-hi:#ECB166;--l-wick:#2F40A3;--l-wick-ink:#FFFFFF;--w-brand:#F5C483;--w-brand-ink:#2A1904;--w-brand2:#2F40A3;--w-brand2-ink:#FFFFFF;--w-lift:0 1px 2px rgba(41,27,14,.07),0 22px 48px -20px rgba(41,27,14,.28);--l-glow:rgba(255,249,238,.95);--l-glow2:rgba(245,196,131,.55);--l-lit:#291B0E;--w-control-edge:#968063;--g-fill:rgba(255,251,244,.46);--g-edge:rgba(255,255,255,.72);--g-hi:rgba(255,255,255,.95);--g-sheen:rgba(255,255,255,.55);--g-sheen2:rgba(255,236,205,.35);--g-drop:rgba(41,27,14,.08);--g-drop2:rgba(41,27,14,.32);--g-inner:rgba(164,118,52,.28);--g-blob1:rgba(245,196,131,.85);--g-blob1b:rgba(236,170,90,.9);--g-blob2:rgba(135,150,240,.55);--g-blob3:rgba(255,214,160,.6);}
:root,:root[data-pal="lamplight"]{--l-lit:#8C5800;--l-hero:var(--l-wick)}@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){--l-hero:var(--l-lit)}}:root[data-theme="dark"],:root[data-pal="lamplight-night"]{--l-hero:var(--l-lit)}
/* Calm (calm-day and calm-night): html[data-calm="on"] */
:root[data-calm="on"]{--w-bg:#eae1d7;--w-doc:#f2efeb;--w-chat:#ece6de;--w-his:#e5dbce;--w-line:#d4c8b9;--w-control-edge:#8f795d;--w-ink:#413225;--w-ink2:#604834;--w-ink3:#735c46;--w-ink3-shade:#705944;--w-source:#466847;--w-source-wash:#d3e3d6;--w-source-line:#627d63;--w-missing:#543236;--w-missing-wash:#e7dcdd;--w-missing-line:#885b5e;--w-dropped:#735c68;--w-dropped-line:#907885;--l-lamp:#e2c9aa;--l-lamp-hi:#d6b896;--l-frame:#90795c;--l-wick:#3d4a79;--w-brand:#e2c9aa;--w-brand2:#3d4a79;--l-lit:#775e40;}
@media (prefers-color-scheme: dark){:root[data-calm="on"]:not([data-theme="light"]){--w-bg:#1d1b18;--w-doc:#292622;--w-chat:#2e2a25;--w-his:#3a352e;--w-line:#46413a;--w-control-edge:#887d6e;--w-ink:#c8c0b0;--w-ink2:#b4a895;--w-ink3:#ac9d87;--w-ink3-shade:#ac9d87;--w-source:#b6e2d6;--w-source-wash:#273832;--w-source-line:#739d8f;--w-missing:#cd9396;--w-missing-wash:#392b2c;--w-missing-line:#aa777a;--w-dropped:#ab9baf;--w-dropped-line:#8a7a8d;--l-lamp:#e2c9aa;--l-lamp-ink:#231604;--l-lamp-hi:#efdbbf;--l-frame:#a09079;--l-wick:#929bc8;--l-wick-ink:#0D1233;--w-brand:#e2c9aa;--w-brand-ink:#231604;--w-brand2:#929bc8;--w-brand2-ink:#0D1233;--l-lit:#e2c9aa;--l-hero:var(--l-lit);--l-glow:rgba(245,196,131,0.1);--l-glow2:rgba(245,196,131,0.035);--g-fill:rgba(58,48,34,.42);--g-edge:rgba(255,236,205,.2);--g-hi:rgba(255,240,215,.45);--g-sheen:rgba(255,240,215,.14);--g-sheen2:rgba(245,196,131,.1);--g-drop:rgba(0,0,0,.3);--g-drop2:rgba(0,0,0,.6);--g-inner:rgba(0,0,0,.35);--g-blob1:rgba(245,196,131,0.225);--g-blob1b:rgba(214,150,70,0.3);--g-blob2:rgba(135,150,240,0.2);--g-blob3:rgba(245,196,131,0.125);}}
:root[data-calm="on"][data-theme="dark"]{--w-bg:#1d1b18;--w-doc:#292622;--w-chat:#2e2a25;--w-his:#3a352e;--w-line:#46413a;--w-control-edge:#887d6e;--w-ink:#c8c0b0;--w-ink2:#b4a895;--w-ink3:#ac9d87;--w-ink3-shade:#ac9d87;--w-source:#b6e2d6;--w-source-wash:#273832;--w-source-line:#739d8f;--w-missing:#cd9396;--w-missing-wash:#392b2c;--w-missing-line:#aa777a;--w-dropped:#ab9baf;--w-dropped-line:#8a7a8d;--l-lamp:#e2c9aa;--l-lamp-ink:#231604;--l-lamp-hi:#efdbbf;--l-frame:#a09079;--l-wick:#929bc8;--l-wick-ink:#0D1233;--w-brand:#e2c9aa;--w-brand-ink:#231604;--w-brand2:#929bc8;--w-brand2-ink:#0D1233;--l-lit:#e2c9aa;--l-hero:var(--l-lit);--l-glow:rgba(245,196,131,0.1);--l-glow2:rgba(245,196,131,0.035);--g-fill:rgba(58,48,34,.42);--g-edge:rgba(255,236,205,.2);--g-hi:rgba(255,240,215,.45);--g-sheen:rgba(255,240,215,.14);--g-sheen2:rgba(245,196,131,.1);--g-drop:rgba(0,0,0,.3);--g-drop2:rgba(0,0,0,.6);--g-inner:rgba(0,0,0,.35);--g-blob1:rgba(245,196,131,0.225);--g-blob1b:rgba(214,150,70,0.3);--g-blob2:rgba(135,150,240,0.2);--g-blob3:rgba(245,196,131,0.125);}
:root[data-calm="on"] .wk{--w-bg:#d5d9e6;--w-doc:#f0ede7;--w-chat:#e6e7ed;--w-his:#d1d5e4;--w-ink:#262d4e;--w-ink2:#404666;--w-ink3:#535874;--w-line:#caccd4;--w-brand:#3d4a79;--w-source:#436544;--w-source-wash:#d3e3d6;--w-source-line:#627d63;--w-missing:#543236;--w-missing-wash:#e7dcdd;--w-missing-line:#885b5e;--w-dropped:#735c68;--w-dropped-line:#907885;--l-wick:#3d4a79;}
@media (prefers-color-scheme: dark){:root[data-calm="on"]:not([data-theme="light"]) .wk{--w-bg:#1b1d2a;--w-doc:#2c2824;--w-chat:#262939;--w-his:#32364c;--w-ink:#cac3b2;--w-ink2:#b4aa9a;--w-ink3:#9e9fb3;--w-line:#3d4153;--w-brand:#929bc8;--w-brand-ink:#0D1233;--w-source:#b6e2d6;--w-source-wash:#273832;--w-source-line:#739d8f;--w-missing:#cd9396;--w-missing-wash:#392b2c;--w-missing-line:#aa777a;--w-dropped:#ab9baf;--w-dropped-line:#8a7a8d;--l-wick:#929bc8;}}
:root[data-calm="on"][data-theme="dark"] .wk{--w-bg:#1b1d2a;--w-doc:#2c2824;--w-chat:#262939;--w-his:#32364c;--w-ink:#cac3b2;--w-ink2:#b4aa9a;--w-ink3:#9e9fb3;--w-line:#3d4153;--w-brand:#929bc8;--w-brand-ink:#0D1233;--w-source:#b6e2d6;--w-source-wash:#273832;--w-source-line:#739d8f;--w-missing:#cd9396;--w-missing-wash:#392b2c;--w-missing-line:#aa777a;--w-dropped:#ab9baf;--w-dropped-line:#8a7a8d;--l-wick:#929bc8;}
:root[data-calm="on"] .ls{--w-bg:#eae1d7;--w-doc:#f2efeb;--w-chat:#ece6de;--w-his:#e5dbce;--w-line:#d4c8b9;--w-control-edge:#8f795d;--w-ink:#413225;--w-ink2:#604834;--w-ink3:#735c46;--w-ink3-shade:#705944;--w-source:#466847;--w-source-wash:#d3e3d6;--w-source-line:#627d63;--w-missing:#543236;--w-missing-wash:#e7dcdd;--w-missing-line:#885b5e;--w-dropped:#735c68;--w-dropped-line:#907885;--l-lamp:#e2c9aa;--l-lamp-hi:#d6b896;--l-frame:#90795c;--l-wick:#3d4a79;--w-brand:#e2c9aa;--w-brand2:#3d4a79;--l-lit:#775e40;}
@media (prefers-color-scheme: dark){:root[data-calm="on"]:not([data-theme="light"]) .ls{--w-bg:#1d1b18;--w-doc:#292622;--w-chat:#2e2a25;--w-his:#3a352e;--w-line:#46413a;--w-control-edge:#887d6e;--w-ink:#c8c0b0;--w-ink2:#b4a895;--w-ink3:#ac9d87;--w-ink3-shade:#ac9d87;--w-source:#b6e2d6;--w-source-wash:#273832;--w-source-line:#739d8f;--w-missing:#cd9396;--w-missing-wash:#392b2c;--w-missing-line:#aa777a;--w-dropped:#ab9baf;--w-dropped-line:#8a7a8d;--l-lamp:#e2c9aa;--l-lamp-ink:#231604;--l-lamp-hi:#efdbbf;--l-frame:#a09079;--l-wick:#929bc8;--l-wick-ink:#0D1233;--w-brand:#e2c9aa;--w-brand-ink:#231604;--w-brand2:#929bc8;--w-brand2-ink:#0D1233;--l-lit:#e2c9aa;--l-hero:var(--l-lit);--l-glow:rgba(245,196,131,0.1);--l-glow2:rgba(245,196,131,0.035);--g-fill:rgba(58,48,34,.42);--g-edge:rgba(255,236,205,.2);--g-hi:rgba(255,240,215,.45);--g-sheen:rgba(255,240,215,.14);--g-sheen2:rgba(245,196,131,.1);--g-drop:rgba(0,0,0,.3);--g-drop2:rgba(0,0,0,.6);--g-inner:rgba(0,0,0,.35);--g-blob1:rgba(245,196,131,0.225);--g-blob1b:rgba(214,150,70,0.3);--g-blob2:rgba(135,150,240,0.2);--g-blob3:rgba(245,196,131,0.125);}}
:root[data-calm="on"][data-theme="dark"] .ls{--w-bg:#1d1b18;--w-doc:#292622;--w-chat:#2e2a25;--w-his:#3a352e;--w-line:#46413a;--w-control-edge:#887d6e;--w-ink:#c8c0b0;--w-ink2:#b4a895;--w-ink3:#ac9d87;--w-ink3-shade:#ac9d87;--w-source:#b6e2d6;--w-source-wash:#273832;--w-source-line:#739d8f;--w-missing:#cd9396;--w-missing-wash:#392b2c;--w-missing-line:#aa777a;--w-dropped:#ab9baf;--w-dropped-line:#8a7a8d;--l-lamp:#e2c9aa;--l-lamp-ink:#231604;--l-lamp-hi:#efdbbf;--l-frame:#a09079;--l-wick:#929bc8;--l-wick-ink:#0D1233;--w-brand:#e2c9aa;--w-brand-ink:#231604;--w-brand2:#929bc8;--w-brand2-ink:#0D1233;--l-lit:#e2c9aa;--l-hero:var(--l-lit);--l-glow:rgba(245,196,131,0.1);--l-glow2:rgba(245,196,131,0.035);--g-fill:rgba(58,48,34,.42);--g-edge:rgba(255,236,205,.2);--g-hi:rgba(255,240,215,.45);--g-sheen:rgba(255,240,215,.14);--g-sheen2:rgba(245,196,131,.1);--g-drop:rgba(0,0,0,.3);--g-drop2:rgba(0,0,0,.6);--g-inner:rgba(0,0,0,.35);--g-blob1:rgba(245,196,131,0.225);--g-blob1b:rgba(214,150,70,0.3);--g-blob2:rgba(135,150,240,0.2);--g-blob3:rgba(245,196,131,0.125);}
:root[data-calm="on"] .l-night{--w-bg:#1d1b18;--w-doc:#292622;--w-chat:#2e2a25;--w-his:#3a352e;--w-line:#46413a;--w-control-edge:#887d6e;--w-ink:#c8c0b0;--w-ink2:#b4a895;--w-ink3:#ac9d87;--w-ink3-shade:#ac9d87;--w-source:#b6e2d6;--w-source-wash:#273832;--w-source-line:#739d8f;--w-missing:#cd9396;--w-missing-wash:#392b2c;--w-missing-line:#aa777a;--w-dropped:#ab9baf;--w-dropped-line:#8a7a8d;--l-lamp:#e2c9aa;--l-lamp-ink:#231604;--l-lamp-hi:#efdbbf;--l-frame:#a09079;--l-wick:#929bc8;--l-wick-ink:#0D1233;--w-brand:#e2c9aa;--w-brand-ink:#231604;--w-brand2:#929bc8;--w-brand2-ink:#0D1233;--l-lit:#e2c9aa;--l-hero:var(--l-lit);--l-glow:rgba(245,196,131,0.1);--l-glow2:rgba(245,196,131,0.035);--g-fill:rgba(58,48,34,.42);--g-edge:rgba(255,236,205,.2);--g-hi:rgba(255,240,215,.45);--g-sheen:rgba(255,240,215,.14);--g-sheen2:rgba(245,196,131,.1);--g-drop:rgba(0,0,0,.3);--g-drop2:rgba(0,0,0,.6);--g-inner:rgba(0,0,0,.35);--g-blob1:rgba(245,196,131,0.225);--g-blob1b:rgba(214,150,70,0.3);--g-blob2:rgba(135,150,240,0.2);--g-blob3:rgba(245,196,131,0.125);}
/* ===== type block: the only place a font family appears ===== */
:root{--w-doc-face:"Faustina",Georgia,serif;--w-ui-face:"Public Sans",ui-sans-serif,system-ui,"Helvetica Neue",Arial,sans-serif;--l-mark-face:"Public Sans",ui-sans-serif,system-ui,"Helvetica Neue",Arial,sans-serif;
--w-doc-xh:.494;--w-ui-xh:.517;--w-ui-weight:400;--w-ui-strong:600;--l-head-weight:560;--l-h1-weight:540;--l-mark-weight:600;--l-mark-track:.14em;--w-quote-style:italic}:root{--font-readable:"Atkinson Hyperlegible Next","Atkinson Hyperlegible",system-ui,sans-serif;--font-calm:"IBM Plex Sans",system-ui,sans-serif}
:root{--k-bg:var(--w-doc);--k-ink:var(--w-ink);--k-ink2:var(--w-ink2);--k-ink3:var(--w-ink3);--k-line:var(--w-line);--k-edge:var(--w-control-edge);--k-hover:var(--w-chat);--k-current:var(--w-doc);--k-panel:var(--w-doc);--k-ft-bg:var(--w-doc);--k-lift:var(--w-lift);--k-nav-bg:var(--w-bg);--k-r:999px}

/* ===== kit: navbar, reader choices, footer, page header. Tokens only. ===== */
html{scroll-behavior:smooth;scroll-padding-top:84px}
@media (min-width:1061px){html{scroll-padding-top:128px}}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:12px;top:-60px;z-index:100;background:var(--k-ink);color:var(--k-bg);padding:8px 14px;text-decoration:none;font-weight:600;border-radius:var(--k-r)}
.skip:focus{top:12px}
.nav{position:sticky;top:0;z-index:60;background:var(--k-nav-bg,var(--k-bg));color:var(--k-ink);border-bottom:1px solid var(--k-line);-webkit-backdrop-filter:saturate(1.3) blur(12px);backdrop-filter:saturate(1.3) blur(12px)}
.nav-in{display:flex;align-items:center;gap:18px;min-height:66px}
.nav-brand{display:inline-flex;align-items:center;color:inherit;text-decoration:none;margin-right:auto;padding:6px 0}
.nav-list{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:2px}
.nav-a{display:inline-flex;align-items:center;gap:5px;padding:8px 11px;border-radius:var(--k-r);color:var(--k-ink2);text-decoration:none;font-size:.9rem;font-weight:500;line-height:1.2;white-space:nowrap}
.nav-a:hover{color:var(--k-ink);background:var(--k-hover)}
.nav-a[aria-current="page"]{color:var(--k-ink);background:var(--k-current)}
.nav-a:focus-visible,.nav-brand:focus-visible,.nav-m-btn:focus-visible,.ft a:focus-visible,.skip:focus-visible{outline:2px solid var(--k-ink);outline-offset:2px}
.ext-ic{width:9px;height:9px;flex:none;opacity:.75}
.nav-sep{width:1px;height:22px;background:var(--k-line);margin:0 8px}
.nav-cta{flex:none}
.theme{display:none;align-items:center;gap:2px;padding:3px;border:1px solid var(--k-edge);border-radius:var(--k-r);flex:none}
:root[data-js] .theme{display:inline-flex}
.theme-b{font:inherit;font-size:.82rem;font-weight:600;line-height:1;display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:0 11px;border:0;border-radius:var(--k-r);background:transparent;color:var(--k-ink2);cursor:pointer}
.theme-b:hover{color:var(--k-ink);background:var(--k-hover)}
.theme-b[aria-pressed="true"]{background:var(--k-ink);color:var(--k-bg)}
.theme-b:focus-visible{outline:2px solid var(--k-ink);outline-offset:2px}
.theme-b svg{width:16px;height:16px;flex:none}
:root[data-theme="dark"]{color-scheme:dark}
:root[data-theme="light"]{color-scheme:light}
@media (max-width:560px){.theme-t{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.theme-b{min-height:36px;padding:0 10px}.nav-in{gap:12px}}
/* Reader choices: Day/Night, Readable letters, Calm and Motion, side by side. On wide screens they share a row at the
   top of the header; below 1061px Day/Night stays in the nav row and the other three sit in the Menu. Edges are
   --k-edge (the site's w-control-edge), not the hairline. A pressed toggle takes an ink edge and track. */
.nav-rd{display:none}
:root[data-js] .nav-rd{display:flex;justify-content:flex-end;padding-top:8px}
.rd{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.rd-m{display:none}
:root[data-js] .rd-m{display:flex}
.rd-t{font:inherit;font-size:.82rem;font-weight:600;line-height:1;display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:0 13px 0 9px;border:1px solid var(--k-edge);border-radius:var(--k-r);background:transparent;color:var(--k-ink2);cursor:pointer;white-space:nowrap}
.rd-sw{width:28px;height:16px;border-radius:var(--k-r);border:1px solid var(--k-edge);position:relative;flex:none;box-sizing:border-box}
.rd-sw::after{content:"";position:absolute;top:2px;left:2px;width:10px;height:10px;border-radius:var(--k-r);background:var(--k-ink3)}
.rd-t:hover{color:var(--k-ink);background:var(--k-hover)}
.rd-t[aria-pressed="true"]{color:var(--k-ink);border-color:var(--k-ink)}
.rd-t[aria-pressed="true"] .rd-sw{background:var(--k-ink);border-color:var(--k-ink)}
.rd-t[aria-pressed="true"] .rd-sw::after{left:14px;background:var(--k-bg)}
.rd-t:focus-visible{outline:2px solid var(--k-ink);outline-offset:2px}
.rd-m .rd-t{min-height:44px}
@media (max-width:1060px){:root[data-js] .nav-rd{display:none}}
@media (min-width:1061px){:root[data-js] .theme-m{display:none}}
.nav-m{display:none;position:static}
.nav-m-btn{list-style:none;display:inline-flex;align-items:center;gap:10px;cursor:pointer;font-size:.9rem;font-weight:600;color:var(--k-ink);padding:9px 14px;border:1px solid var(--k-edge);border-radius:var(--k-r);user-select:none}
.nav-m-btn::-webkit-details-marker{display:none}
.nav-m-ic{display:grid;gap:5px;width:16px}.nav-m-ic i{display:block;height:1.5px;background:currentColor;transition:transform .2s}
.nav-m[open] .nav-m-ic i:first-child{transform:translateY(3.25px) rotate(45deg)}.nav-m[open] .nav-m-ic i:last-child{transform:translateY(-3.25px) rotate(-45deg)}
.nav-m-panel{position:absolute;left:0;right:0;top:100%;background:var(--k-panel);border-bottom:1px solid var(--k-line);box-shadow:var(--k-lift);padding:10px 16px 20px;display:grid;gap:12px}
.nav-m-list{list-style:none;margin:0;padding:0;display:grid}
.nav-m-list li{border-bottom:1px solid var(--k-line)}
.nav-m-list .nav-a{display:flex;padding:14px 4px;font-size:1.02rem;border-radius:0;background:transparent}
.nav-m-list .nav-a[aria-current="page"]{font-weight:700}
.nav-m-list .nav-sep{display:none}
.nav-m-panel .btn{justify-self:start}
@media (max-width:1060px){.nav-main,.nav-in > .nav-cta{display:none}.nav-m{display:block}}

.ft{margin-top:128px;border-top:1px solid var(--k-line);background:var(--k-ft-bg);color:var(--k-ink2);font-size:.92rem}
main:has(> .band:last-child) + .ft{margin-top:0}
.ft-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.8fr) minmax(0,1fr);gap:40px;padding-block:56px 40px}
.ft-brand{display:grid;gap:14px;align-content:start}
.ft-mark{color:var(--k-ink);text-decoration:none;justify-self:start}
.ft-brand p{margin:0;max-width:34ch;color:var(--k-ink2)}
.ft-h{margin:0 0 12px;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:var(--k-ink3)}
.ft-col ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.ft-col a{color:var(--k-ink);text-decoration:none;display:inline-flex;align-items:center;gap:6px}
.ft-col a:hover{text-decoration:underline;text-underline-offset:4px}
.ft-fam li{display:grid;gap:1px}.ft-fam span{font-size:.82rem;color:var(--k-ink3)}
.ft-small{display:flex;flex-wrap:wrap;gap:8px 26px;padding-block:18px 40px;border-top:1px solid var(--k-line);font-size:.8rem;color:var(--k-ink3)}
.ft-small a{color:inherit;text-underline-offset:3px}
@media (max-width:760px){.ft-grid{grid-template-columns:1fr 1fr}.ft-brand{grid-column:1/-1}}

/* Motion. Off (data-motion="off") or Calm: every one-shot jumps to its final frame, every loop ends on its resting frame,
   transitions and smooth scrolling stop. The device's reduce-motion setting always wins, whatever the switch says. */
html[data-motion="off"] *,html[data-motion="off"] *::before,html[data-motion="off"] *::after,
html[data-calm="on"] *,html[data-calm="on"] *::before,html[data-calm="on"] *::after{animation-duration:0s!important;animation-delay:0s!important;animation-iteration-count:1!important;transition:none!important}
html[data-motion="off"],html[data-calm="on"]{scroll-behavior:auto!important}
@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto!important}
  *,*::before,*::after{animation-duration:0s!important;animation-delay:0s!important;animation-iteration-count:1!important;transition:none!important}
}

/* ===== reader choices: type ===== */
html[data-letters="readable"] body *:not(.l-mark):not(.l-mark *):not(.l-wickmark):not(.l-wickmark *){font-family:var(--font-readable)!important;font-size-adjust:none!important}
html[data-calm="on"]:not([data-letters="readable"]) :is(p,li,dd,blockquote,figcaption):not(:has(h1,h2,h3,h4,h5,h6)):not(.l-mark):not(.l-mark *):not(.l-wickmark):not(.l-wickmark *),html[data-calm="on"]:not([data-letters="readable"]) :is(p,li,dd,blockquote,figcaption):not(:has(h1,h2,h3,h4,h5,h6)) :is(span,em,i,b,strong,a,q,cite):not(.l-mark):not(.l-mark *):not(.l-wickmark):not(.l-wickmark *){font-family:var(--font-calm);font-size-adjust:none}


/* ===== Lamplighter · Frame. Tokens only below this line: no color value, no font family. ===== */
html{scroll-behavior:smooth}
body{margin:0;background:var(--w-bg);color:var(--w-ink);font-family:var(--w-ui-face);font-size-adjust:var(--w-ui-xh);font-weight:var(--w-ui-weight);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}
.wrap{max-width:1180px;margin-inline:auto;padding-inline:16px}
.doc{font-family:var(--w-doc-face);font-size-adjust:var(--w-doc-xh)}
.eyebrow{font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;font-weight:600;color:var(--w-ink3)}
.l-btn{font:inherit;font-weight:var(--w-ui-strong);font-size:.98rem;background:var(--l-lamp);color:var(--l-lamp-ink);border:1.5px solid var(--w-ink);border-radius:999px;padding:11px 22px;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;gap:10px;line-height:1.2;transition:background-color .12s}
.l-btn:hover{background:var(--l-lamp-hi)}
.l-btn:active{transition:none}
.l-btn svg{width:14px;height:14px}
.l-link{color:var(--w-ink);text-decoration:underline;text-decoration-color:var(--l-frame);text-decoration-thickness:1px;text-underline-offset:5px;font-weight:500}
.l-btn:focus-visible,.l-link:focus-visible,.rb:focus-visible,.l-in:focus-visible{outline:2px solid var(--w-ink);outline-offset:3px}

/* the frame: 1px pane edge, crop ticks outside each corner */
.fr{position:relative;border:1px solid var(--l-frame)}
.fr::before{content:"";position:absolute;inset:-9px;pointer-events:none;--t:13px;--s:1.5px;--c:var(--l-frame);
  background:linear-gradient(var(--c),var(--c)) 0 0/var(--t) var(--s),linear-gradient(var(--c),var(--c)) 0 0/var(--s) var(--t),
  linear-gradient(var(--c),var(--c)) 100% 0/var(--t) var(--s),linear-gradient(var(--c),var(--c)) 100% 0/var(--s) var(--t),
  linear-gradient(var(--c),var(--c)) 0 100%/var(--t) var(--s),linear-gradient(var(--c),var(--c)) 0 100%/var(--s) var(--t),
  linear-gradient(var(--c),var(--c)) 100% 100%/var(--t) var(--s),linear-gradient(var(--c),var(--c)) 100% 100%/var(--s) var(--t);background-repeat:no-repeat}

/* marks */
.l-mark{display:inline-flex;align-items:center;gap:.5em;font-family:var(--l-mark-face);font-weight:var(--l-mark-weight);letter-spacing:var(--l-mark-track);text-transform:uppercase;font-size:1rem;color:var(--w-ink);line-height:1}
.l-glyph{width:.72em;height:1.65em;flex:none;display:block;overflow:visible}
.l-glyph .g-braid{fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round}
.l-glyph .g-flame{fill:var(--l-lamp);stroke:currentColor;stroke-width:1.1;stroke-linejoin:round}
.l-lantern{width:1.25em;height:1.25em;flex:none;display:block}
.l-lantern rect{fill:var(--l-lamp);stroke:var(--w-ink);stroke-width:1.5}
.l-lantern path{fill:none;stroke:var(--l-lamp-ink);stroke-width:1.9;stroke-linecap:round}
.l-lanterntag{display:inline-flex;align-items:center;gap:7px;font-weight:600;color:var(--w-ink)}
.l-lanterntag .l-lantern{width:16px;height:16px}
.l-mark-sm{font-size:.8rem}
.l-wickmark{display:inline-flex;align-items:center;gap:.4em;font-family:var(--w-doc-face);font-size-adjust:var(--w-doc-xh);text-transform:uppercase;letter-spacing:.09em;font-weight:500;color:var(--l-wick)}
.l-wickglyph{width:.58em;height:1.22em;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round}
.nm{-webkit-box-decoration-break:clone;box-decoration-break:clone}

/* review bar */
.rvw{display:flex;flex-wrap:wrap;gap:6px 16px;align-items:center;padding:7px 16px;font-size:.78rem;background:var(--w-chat);color:var(--w-ink2);border-bottom:1px dashed var(--w-line)}
.rvw b{letter-spacing:.12em;text-transform:uppercase;font-size:.7rem;color:var(--w-ink3)}
.rg{display:inline-flex;flex-wrap:wrap;gap:4px;align-items:center}.rk{margin-right:4px;color:var(--w-ink3)}
.rb{font:inherit;font-size:.76rem;color:var(--w-ink);background:transparent;border:1px solid var(--w-line);border-radius:999px;padding:2px 9px;cursor:pointer}
.rb[aria-pressed="true"]{background:var(--w-ink);color:var(--w-chat);border-color:var(--w-ink)}

/* hero */
.hero{position:relative;isolation:isolate;overflow:hidden}
.hero::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(34% 44% at 74% 46%,var(--l-glow),transparent 72%),radial-gradient(58% 70% at 76% 44%,var(--l-glow2),transparent 74%);animation:lamp 1.8s cubic-bezier(.2,0,.2,1) both}
@keyframes lamp{from{opacity:.2}to{opacity:1}}
.head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:22px}
.head-r{display:flex;align-items:center;gap:22px}
.hero-grid{display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);gap:56px;align-items:center;padding-block:44px 104px}
.pill{display:inline-block;font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:var(--w-ink);border:1px solid var(--l-frame);border-radius:999px;padding:4px 11px}
.kick{display:flex;flex-wrap:wrap;gap:10px 14px;align-items:center}
.hero h1{font-family:var(--w-ui-face);font-size-adjust:var(--w-ui-xh);font-weight:var(--l-h1-weight);font-size:clamp(2.9rem,6.4vw,5.6rem);line-height:.98;letter-spacing:-.036em;margin:20px 0 24px;text-wrap:balance}
.l-theirs{font-family:var(--w-doc-face);font-size-adjust:var(--w-doc-xh);font-style:italic;font-weight:500;letter-spacing:-.012em;color:var(--l-lit);padding-inline:.04em .1em;margin-inline:-.04em -.1em;}
.hero .sub{font-size:1.18rem;line-height:1.58;color:var(--w-ink2);max-width:38ch;margin:0 0 30px}
.cta{display:flex;flex-wrap:wrap;gap:14px 24px;align-items:center}

/* reading view */
.rv{margin:0;background:var(--w-doc);color:var(--w-ink2);box-shadow:var(--w-lift);animation:rise .9s cubic-bezier(.2,0,.2,1) both}
@keyframes rise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.rv-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 16px;background:var(--l-lamp);color:var(--l-lamp-ink);font-size:.74rem;letter-spacing:.06em;--nm-bar:var(--l-lamp-ink)}
.rv-bar .l-mark{color:var(--l-lamp-ink)}
.rv-bar .l-glyph .g-flame{fill:var(--l-lamp-ink)}
.rv-seal{display:flex;flex-wrap:wrap;gap:6px 16px;align-items:center;padding:10px 16px;font-size:.78rem;color:var(--w-ink2);border-bottom:1px solid var(--l-frame)}
.l-wickpill{background:var(--l-wick);color:var(--l-wick-ink);border-radius:999px;padding:2px 10px;font-weight:500}
.rv-grid{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:22px;padding:20px 20px 18px}
.rv-doc{display:grid;gap:11px;align-content:start;min-width:0}
.rv-doc p,.rv-doc h3,.rv-doc blockquote{margin:0}
.rv-kick{font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:var(--w-ink3)}
.rv-title{font-family:var(--w-doc-face);font-size-adjust:var(--w-doc-xh);font-weight:600;font-size:1.45rem;line-height:1.15;color:var(--w-ink);letter-spacing:-.01em}
.rv-meta{font-size:.78rem;color:var(--w-ink3);margin-top:-6px !important}
.rv-p{font-family:var(--w-doc-face);font-size-adjust:var(--w-doc-xh);font-size:1.06rem;line-height:1.62;color:var(--w-ink)}
.rv-q{font-family:var(--w-doc-face);font-size-adjust:var(--w-doc-xh);font-style:var(--w-quote-style);font-size:1.12rem;line-height:1.5;color:var(--w-ink);border-left:2px solid var(--w-ink);padding-left:14px}
.who{display:block;font-family:var(--w-ui-face);font-size-adjust:var(--w-ui-xh);font-style:normal;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--w-ink3);margin-bottom:4px}
.rv-rm{display:flex;align-items:center;gap:10px;font-size:.8rem;color:var(--w-ink3)}
.rm-bar{display:inline-block;width:92px;height:12px;background:var(--w-ink);flex:none}
.rv-wick{display:grid;gap:4px;padding-top:4px}
.chip{font-family:var(--w-ui-face);font-size-adjust:var(--w-ui-xh);font-size:.74rem;font-weight:600;color:var(--w-source);white-space:nowrap}
.unsure{background:var(--w-missing-wash);padding:11px 14px 12px;display:grid;gap:4px}
.unsure p{margin:0}
.claim{font-size:.98rem;line-height:1.6;color:var(--w-missing)}
.note{font-size:.88rem;line-height:1.55;color:var(--w-ink2)}
.m-held,.m-drop,.m-unsup{-webkit-box-decoration-break:clone;box-decoration-break:clone;padding-bottom:3px;background-repeat:no-repeat;background-position:0 100%;background-size:0% 1.5px;animation:draw .7s cubic-bezier(.2,0,.2,1) forwards}
.m-held{color:var(--w-source);background-image:linear-gradient(var(--w-source-line),var(--w-source-line));animation-delay:.6s}
.m-drop{color:var(--w-dropped);background-image:repeating-linear-gradient(90deg,var(--w-dropped-line) 0 6px,transparent 6px 10px);animation-delay:1.4s}
.m-unsup{color:var(--w-missing);background-image:repeating-linear-gradient(90deg,var(--w-missing-line) 0 1.5px,transparent 1.5px 4.5px);animation-delay:1.8s}
.m-held.on,.m-drop.on,.m-unsup.on{animation:none;background-size:100% 1.5px}
@keyframes draw{to{background-size:100% 1.5px}}
.rv-notes{list-style:none;margin:0;padding:0 0 0 18px;border-left:1px solid var(--w-line);display:grid;gap:16px;align-content:start;font-size:.8rem;line-height:1.42}
.rv-notes li{display:grid;gap:3px;animation:note .5s ease-out both;animation-delay:var(--d)}
@keyframes note{from{opacity:.3;transform:translateX(6px)}to{opacity:1;transform:none}}
.rv-notes b{font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--w-ink)}
.rv-notes span{color:var(--w-ink2)}
.k{display:block;width:34px;height:0;border-bottom:2px solid;margin-bottom:4px}
.k-held{border-color:var(--w-source-line)}.k-drop{border-bottom-style:dashed;border-color:var(--w-dropped-line)}.k-unsup{border-bottom-style:dotted;border-color:var(--w-missing-line)}
.k-rm{height:8px;border:0;background:var(--w-ink);width:34px}
.rv figcaption{padding:10px 16px;font-size:.78rem;color:var(--w-ink3);border-top:1px solid var(--l-frame)}

/* sections */
.sec{padding-block:112px 0}
.sec-head{display:grid;gap:16px;max-width:780px;margin-bottom:44px}
h2{font-family:var(--w-ui-face);font-size-adjust:var(--w-ui-xh);font-weight:var(--l-head-weight);font-size:clamp(2.1rem,4.6vw,3.5rem);line-height:1.02;letter-spacing:-.03em;margin:0;text-wrap:balance}
.nb{display:inline-block}
.lede{font-size:1.14rem;line-height:1.6;color:var(--w-ink2);margin:0;max-width:60ch}
.head-row{display:flex;flex-wrap:wrap;gap:10px 14px;align-items:center}

.both{display:grid;grid-template-columns:minmax(0,1fr) 88px minmax(0,1fr);align-items:start}
.side{min-width:0}
.side-cap{margin:0 0 16px;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:var(--w-ink3)}
.wk-pane{background:var(--w-bg);color:var(--w-ink);border-radius:24px;padding:16px;box-shadow:var(--w-lift)}
.wk-bar{padding:4px 6px 14px}.wk-bar .l-wickmark{font-size:.95rem;color:var(--l-wick)}
.wk-talk{background:var(--w-chat);border-radius:20px;padding:20px 20px 18px;display:grid;gap:14px}
.wk-said{justify-self:end;max-width:30ch;background:var(--w-his);color:var(--w-ink);padding:11px 14px;border-radius:16px 16px 5px 16px;font-size:.93rem;line-height:1.58;margin:0}
.cv-r{margin:0;font-size:.97rem;line-height:1.68;color:var(--w-ink)}
.w-cite{color:var(--w-source);border-bottom:1.5px solid var(--w-source-line);padding:0 1px}
.wk .unsure{border-radius:14px}
.ln-pane{background:var(--w-doc);box-shadow:var(--w-lift)}
.ln-talk{padding:18px 20px 20px;display:grid;gap:14px}
.ln-said{margin:0;font-size:.93rem;line-height:1.58;color:var(--w-ink);border-left:2px solid var(--w-ink);padding-left:12px}
.ln-r{display:grid;gap:10px}
.conn{align-self:center;display:grid;justify-items:center;gap:8px;color:var(--l-frame);font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;font-weight:600}
.conn svg{width:44px;height:18px}.conn .conn-lantern{width:26px;height:26px}.conn span{color:var(--w-ink3)}
.both-cap{font-size:.84rem;color:var(--w-ink3);margin:22px 0 0}
.legend{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;margin-top:56px}
.legend > div{display:grid;gap:6px;align-content:start;border-top:1px solid var(--w-line);padding-top:16px}
.legend b{font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;color:var(--w-ink)}
.legend p{margin:0;color:var(--w-ink2)}
.outc{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0 28px}
.oc{border-top:1.5px solid var(--w-ink);padding-top:16px;display:grid;gap:8px;align-content:start}
.oc h3{margin:0;font-size:1.14rem;font-weight:var(--w-ui-strong);line-height:1.25;letter-spacing:-.01em}
.oc p{margin:0;color:var(--w-ink2)}
.sent{background:var(--w-doc);display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr);gap:40px;padding:40px 40px 36px;align-items:start}
.sent-main{display:grid;gap:16px}
.sent-list{list-style:none;margin:6px 0 0;padding:0;display:grid}
.sent-list li{padding:12px 0;border-top:1px solid var(--w-line);color:var(--w-ink2)}
.sent-list b{color:var(--w-ink);font-weight:var(--w-ui-strong)}
.share{background:var(--w-bg);padding:24px 22px 20px;display:grid;gap:10px;align-content:start}
.share-lantern{width:34px;height:34px;margin-bottom:4px}
.share-h{margin:0;font-weight:var(--w-ui-strong);color:var(--w-ink);font-size:1.05rem}
.share-p{margin:0;color:var(--w-ink2)}
.share-row{display:flex;gap:8px;margin-top:6px}
.share-url{flex:1;min-width:0;font-size:.9rem;padding:10px 12px}
.share-btn{padding:9px 16px;font-size:.9rem;flex:none}
.share .l-link{justify-self:start;font-size:.95rem}
.share-done{margin:0;min-height:1.3em;font-size:.85rem;color:var(--w-ink2)}
.l-ck{display:flex;gap:10px;align-items:flex-start;color:var(--w-ink);cursor:pointer;margin:4px 0 2px}
.l-ck input{margin-top:4px;width:17px;height:17px;accent-color:var(--w-ink);flex:none}
.l-hint{display:block;font-size:.84rem;color:var(--w-ink3);margin-top:2px}
.arr{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:36px;align-items:stretch}
.arr-col{padding:28px 28px 26px;display:grid;gap:14px;align-content:start}
.arr-col.fr{background:var(--w-doc)}
.arr-stay{border:1px solid var(--w-line)}
.arr-col h3{margin:0;font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:var(--w-ink)}
.arr-col ul{list-style:none;margin:0;padding:0;display:grid}
.arr-col li{display:grid;grid-template-columns:14px minmax(0,1fr);gap:14px;padding:12px 0;border-top:1px solid var(--w-line);color:var(--w-ink)}
.arr-col li::before{content:"";width:9px;height:9px;margin-top:.5em;background:var(--l-lamp);outline:1px solid var(--w-ink)}
.arr-stay li{color:var(--w-ink2)}
.arr-stay li::before{background:transparent;outline-color:var(--w-ink3)}
.steps{list-style:none;margin:64px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;counter-reset:s}
.steps li{counter-increment:s;display:grid;gap:6px;align-content:start;border-top:1.5px solid var(--w-ink);padding-top:14px}
.steps li::before{content:"0" counter(s);font-size:.78rem;font-weight:600;letter-spacing:.14em;color:var(--w-ink3);font-variant-numeric:tabular-nums}
.steps b{font-size:1.2rem;font-weight:var(--l-head-weight);letter-spacing:-.01em;color:var(--w-ink)}
.steps span{color:var(--w-ink2)}
.steps-h{margin:64px 0 0;font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:var(--w-ink3)}
.steps-h + .steps{margin-top:18px}

.four{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0 32px}
.four > div{border-top:1.5px solid var(--w-ink);padding-top:16px;display:grid;gap:8px;align-content:start}
.four h3{font-size:1.14rem;font-weight:var(--w-ui-strong);line-height:1.25;margin:0;letter-spacing:-.01em}
.four p{margin:0;color:var(--w-ink2)}
.bound{margin-top:56px;background:var(--w-doc);padding:28px 30px;display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:28px;align-items:start}
.bound h3{margin:0;font-size:1.3rem;font-weight:var(--l-head-weight);letter-spacing:-.015em;line-height:1.2}
.bound p{margin:0;color:var(--w-ink2);font-size:1.04rem}

.band{margin-top:128px;background:var(--w-bg);color:var(--w-ink);position:relative;isolation:isolate;overflow:hidden;padding-block:104px}
.band::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(40% 60% at 72% 50%,var(--l-glow),transparent 70%),radial-gradient(70% 90% at 72% 50%,var(--l-glow2),transparent 74%)}
.join{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:64px;align-items:center}
.l-form{background:var(--w-doc);border-radius:24px;padding:30px 28px 26px;display:grid;gap:10px;box-shadow:var(--w-lift)}
.l-lab{font-size:.9rem;font-weight:600;color:var(--w-ink)}
.l-lab + .l-in{margin-bottom:8px}
.l-in{font:inherit;font-size:1rem;color:var(--w-ink);background:var(--w-chat);border:1px solid var(--w-control-edge);border-radius:12px;padding:12px 14px;width:100%;box-sizing:border-box}
.l-in::placeholder{color:var(--w-ink3)}
.l-form .l-btn{justify-self:start;margin-top:8px;border-color:var(--w-ink)}
.l-note{font-size:.82rem;color:var(--w-ink3);margin:4px 0 0}
.l-todo{background:var(--w-chat);border:1px dashed var(--w-line);padding:0 6px;color:var(--w-ink2)}
.l-done{margin:0;font-size:.92rem;color:var(--w-ink);background:var(--w-chat);padding:10px 12px}
.l-err{font-weight:600;color:var(--w-ink);display:inline-flex;gap:8px;align-items:baseline}
.l-err .x-ic{width:12px;height:12px;flex:none;align-self:center}

.own{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:56px;align-items:start}
.own-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 28px}
.lp-pane{margin:0;background:var(--w-doc);border-radius:24px;box-shadow:var(--w-lift);padding:18px 18px 14px;display:grid;gap:14px}
.lp-top{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:2px 4px}
.lp-scope{font-size:.74rem;font-weight:600;color:var(--w-ink2);border:1px solid var(--w-ink3);border-radius:999px;padding:3px 10px;white-space:nowrap}
.lp-body{background:var(--w-chat);border-radius:18px;padding:18px;display:grid;gap:12px}
.lp-body p,.lp-body blockquote{margin:0}
.lp-ask{justify-self:end;max-width:34ch;background:var(--w-his);color:var(--w-ink);border-radius:16px 16px 5px 16px;padding:10px 14px;font-size:.95rem;line-height:1.5}
.lp-ans{font-size:.98rem;line-height:1.65;color:var(--w-ink)}
.lp-pane .unsure{border-radius:12px}
.lp-rcp{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:.76rem;color:var(--w-ink3);background:var(--w-doc);border-radius:10px;padding:8px 12px}
.lp-rcp b{letter-spacing:.12em;text-transform:uppercase;color:var(--w-ink2)}
.lp-pane figcaption{font-size:.78rem;color:var(--w-ink3);padding:0 4px}
.six{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 32px}

.foot{padding-block:36px 52px;display:flex;flex-wrap:wrap;gap:12px 28px;align-items:center;font-size:.85rem;color:var(--w-ink3)}
.foot a{color:inherit}
.foot-wick{display:inline-flex;align-items:center;gap:10px;text-decoration:none}
.foot-wick .l-wickmark{font-size:.9rem}

@media (max-width:980px){
  .hero-grid,.join,.arr,.bound{grid-template-columns:1fr}
  .both{grid-template-columns:1fr}.conn{padding:18px 0 14px}.conn svg{transform:rotate(90deg)}
  .legend{grid-template-columns:1fr;gap:24px}
  .steps,.four,.outc{grid-template-columns:repeat(2,minmax(0,1fr))}
  .outc{gap:28px 28px}
  .own{grid-template-columns:1fr;gap:44px}
  .six{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sent{grid-template-columns:1fr}
  .four{gap:28px 32px}
}
@media (max-width:640px){
  .rv-grid{grid-template-columns:1fr}
  .rv-notes{border-left:0;border-top:1px solid var(--w-line);padding:16px 0 0;grid-template-columns:repeat(2,minmax(0,1fr))}
  .steps,.four,.outc,.own-list,.six{grid-template-columns:1fr}
  .sent{padding:26px 20px 22px}
  .share-row{flex-direction:column}.share-btn{align-self:start}
  .sec{padding-block:84px 0}
  .band{margin-top:96px;padding-block:80px}
  .head-r .l-link{display:none}
  .head .l-btn{padding:8px 14px;font-size:.88rem}
  .arr-col{padding:22px 20px}
  .wk-talk,.ln-talk{padding:16px}
  .bound{padding:22px 20px}
  .l-form{padding:24px 20px 20px}
  .hero-grid{padding-block:28px 88px;gap:48px}
}
@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto}
  .hero::before,.rv,.rv-notes li{animation:none}
  .m-held,.m-drop,.m-unsup{animation:none;background-size:100% 1.5px}
  .l-btn{transition:none}
}


.l-lens{display:inline-block;flex:none;width:1.25em;height:1.25em;border-radius:50%;
  background:radial-gradient(circle at 33% 28%,var(--g-hi) 0,transparent 34%),radial-gradient(circle at 70% 76%,var(--g-blob2) 0,transparent 62%),radial-gradient(circle at 50% 50%,var(--g-blob1) 0,var(--g-blob1b) 100%);
  box-shadow:inset 0 0 0 1px var(--g-edge),inset 0 -2px 5px var(--g-inner),0 2px 6px -2px var(--g-drop2)}
.glass{position:relative;isolation:isolate;background:var(--g-fill);-webkit-backdrop-filter:blur(22px) saturate(1.8);backdrop-filter:blur(22px) saturate(1.8);border-radius:36px;
  box-shadow:inset 0 1px 0 var(--g-hi),inset 0 0 0 1px var(--g-edge),0 1px 1px var(--g-drop),0 26px 50px -26px var(--g-drop2)}
.glass::before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:-1;background:linear-gradient(140deg,var(--g-sheen) 0%,transparent 32%,transparent 68%,var(--g-sheen2) 100%)}
.glassfield{position:relative;isolation:isolate}
.glassfield::before{content:"";position:absolute;z-index:-1;inset:-40px 0;pointer-events:none;filter:blur(10px);
  background:radial-gradient(20% 36% at 16% 34%,var(--g-blob1),transparent 70%),radial-gradient(18% 34% at 80% 68%,var(--g-blob2),transparent 70%),radial-gradient(16% 30% at 50% 44%,var(--g-blob3),transparent 70%)}


/* ===== Lamplighter: The Wick's rounded sibling, in lamplight. Tokens only. ===== */
body{background:var(--w-bg)}
.btn{font:inherit;font-weight:var(--w-ui-strong);font-size:.9rem;background:var(--l-lamp);color:var(--l-lamp-ink);border:1.5px solid var(--w-ink);border-radius:999px;padding:9px 18px;text-decoration:none;display:inline-flex;align-items:center;gap:10px;line-height:1.2;cursor:pointer}
.btn:hover{background:var(--l-lamp-hi)}
.btn:focus-visible{outline:2px solid var(--w-ink);outline-offset:3px}
.btn svg{width:14px;height:14px}
.btn-lg{font-size:.98rem;padding:12px 22px}
.nav .l-mark{font-size:.95rem}
.hero-grid{padding-block:56px 104px}
.hero .h-head .l-theirs{color:var(--l-hero)}
.phead{position:relative;isolation:isolate;overflow:hidden}
.phead::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(34% 80% at 86% 20%,var(--l-glow),transparent 72%),radial-gradient(50% 90% at 90% 10%,var(--l-glow2),transparent 76%)}
.phead-in{padding-block:76px 40px;display:grid;gap:18px;max-width:900px}
.phead-kick{margin:0;display:flex;flex-wrap:wrap;gap:10px 14px;align-items:center}
.phead h1{font-family:var(--w-ui-face);font-size-adjust:var(--w-ui-xh);font-weight:var(--l-h1-weight);font-size:clamp(2.6rem,5.8vw,4.8rem);line-height:1;letter-spacing:-.034em;margin:0;text-wrap:balance}
.phead-lede{font-size:1.2rem;line-height:1.58;color:var(--w-ink2);max-width:54ch;margin:0}
.sec-first{padding-top:48px}
.sec-head-tight{margin-bottom:24px}
.h3like{margin:0 0 16px;font-size:1.3rem;font-weight:var(--l-head-weight);letter-spacing:-.015em}
.lp-pane{box-sizing:border-box}
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;align-items:center}
.ticks{list-style:none;margin:0;padding:0;display:grid;gap:0}
.ticks li{display:grid;grid-template-columns:18px minmax(0,1fr);gap:8px;padding:12px 0;border-top:1px solid var(--w-line);color:var(--w-ink2)}
.ticks li::before{content:"";width:9px;height:9px;margin-top:.5em;border-radius:50%;background:var(--l-lamp);box-shadow:0 0 0 1px var(--w-ink)}
.more{margin:28px 0 0;color:var(--w-ink2)}
.nf{padding-block:8px 40px}

/* rooms */
.rooms{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.room{background:var(--w-doc);color:var(--w-ink);text-decoration:none;border-radius:24px;padding:24px 22px 20px;display:grid;gap:10px;grid-template-rows:auto 1fr auto;box-shadow:var(--w-lift);transition:transform .15s ease}
.room:hover{transform:translateY(-2px)}
.room:focus-visible{outline:2px solid var(--w-ink);outline-offset:4px}
.room-h{font-size:1.35rem;font-weight:var(--l-head-weight);letter-spacing:-.018em;line-height:1.15}
.room-p{color:var(--w-ink2);font-size:.97rem}
.room-ar{justify-self:start;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--l-lamp);color:var(--l-lamp-ink);border:1.5px solid var(--w-ink)}
.room-ar svg{width:15px;height:15px}
.mods{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:56px;align-items:center}
.mods .sec-head{margin:0}
.mods .l-link{justify-self:start}
.mchips{display:flex;flex-wrap:wrap;gap:12px}
.mchip{background:var(--w-doc);color:var(--w-ink);border-radius:999px;padding:10px 18px;font-weight:600;box-shadow:var(--w-lift)}
.band{background:var(--w-bg)}
.band-in{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:48px;align-items:end}
.band-in .sec-head{margin:0}
.band-cta{display:grid;gap:16px;justify-items:start}

/* figures: Lamplighter speaking, rounded */
.lpf{margin:0;background:var(--w-doc);border-radius:24px;box-shadow:var(--w-lift);padding:16px 16px 12px;display:grid;gap:12px;box-sizing:border-box}
.lpf-top{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:2px 4px;font-size:.8rem;color:var(--w-ink3)}
.lpf-meta b{color:var(--w-ink);font-variant-numeric:tabular-nums}
.lpf figcaption{font-size:.78rem;color:var(--w-ink3);padding:0 4px}
.sess-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:12px}
.sess-pad{background:var(--w-chat);border-radius:18px;padding:16px;display:grid;gap:10px;align-content:start}
.sess-line{margin:0;display:grid;gap:4px;font-size:.95rem;line-height:1.5;color:var(--w-ink)}
.sess-line .fa{font-family:var(--w-doc-face);font-size-adjust:var(--w-doc-xh);font-size:1.05rem;font-style:var(--w-quote-style)}
.tagc{justify-self:start;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;font-weight:700;border-radius:999px;padding:2px 9px}
.tag-theirs{background:var(--w-source-wash);color:var(--w-source)}
.tag-fu{background:var(--w-his);color:var(--w-ink)}
.tag-me{background:var(--l-lamp);color:var(--l-lamp-ink)}
.sess-typing{color:var(--w-ink2)}
/* the typing caret blinks five times, then holds solid */
.caret{display:inline-block;width:1.5px;height:1.1em;background:var(--w-ink);vertical-align:-.2em;margin-left:2px;animation:blink 1.1s steps(1) 5}
@keyframes blink{50%{opacity:0}}
.sess-marks{display:flex;flex-wrap:wrap;gap:8px;padding-top:4px}
.chipbtn{font-size:.8rem;font-weight:600;border:1.5px solid var(--w-ink3);border-radius:999px;padding:4px 11px;color:var(--w-ink)}
.sess-side{background:var(--w-bg);border-radius:18px;padding:16px;display:grid;gap:6px;align-content:start}
.sess-side .cap{margin:6px 0 0}
.sess-side .cap:first-child{margin-top:0}
.sess-sum{margin:0;font-size:.92rem;line-height:1.5;color:var(--w-ink)}
.sess-note{margin:10px 0 0;font-size:.8rem;font-weight:600;color:var(--w-ink2)}
.cap{font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:var(--w-ink3);margin:0}
.stores{margin:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr) minmax(0,1fr);gap:28px;align-items:center}
.stores figcaption{grid-column:1/-1;font-size:.84rem;color:var(--w-ink3)}
.stores-col{display:grid;gap:10px}
.store{background:var(--w-doc);border-radius:18px;padding:12px 16px;display:grid;gap:2px;box-shadow:var(--w-lift)}
.store b{font-size:1rem}
.store span{font-size:.82rem;color:var(--w-ink3)}
.store.on{background:var(--l-lamp);color:var(--l-lamp-ink)}
.store.on span{color:var(--l-lamp-ink)}
.store.dash{background:transparent;box-shadow:none;border:1.5px dashed var(--w-ink3)}
.stores-mid{display:grid;gap:10px;justify-items:stretch}
.stores-mid .flowv:last-child{margin-top:14px}
.flowv{margin:0;text-align:center;font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:var(--w-ink3-shade,var(--w-ink3))}
.both-cap{color:var(--w-ink3-shade,var(--w-ink3))}   /* both sit in a card's shadow: one step darker in Calm by day */
.stores-core p{margin:0;font-size:1rem;line-height:1.5;color:var(--w-ink)}
.stores-core .ticks li{padding:8px 0;font-size:.9rem}
.trans-scope{display:flex;align-items:center;gap:10px;margin:0;padding:8px 12px;background:var(--w-doc);font-size:.82rem;font-weight:600;color:var(--w-ink)}
.trans-scope .l-lantern{width:16px;height:16px}
.trans-box{background:var(--w-chat);border-radius:18px;padding:16px;display:grid;gap:10px}
.trans-box p{margin:0;font-size:.95rem;line-height:1.55;color:var(--w-ink)}
.trans-box .fa{font-family:var(--w-doc-face);font-size-adjust:var(--w-doc-xh);font-size:1.05rem}
.trans-h{display:flex;justify-content:space-between;align-items:center;gap:10px}
.pill-t{background:var(--w-his);border-color:transparent;letter-spacing:.06em}
.pbtn{font-weight:600;font-size:.84rem;border-radius:999px;border:1.5px solid var(--w-ink);background:var(--l-lamp);color:var(--l-lamp-ink);padding:7px 14px;display:inline-flex;align-items:center;gap:8px;justify-self:start;line-height:1.2}
.pbtn-q{background:transparent;color:var(--w-ink);border-color:var(--w-ink3)}
.seg{display:inline-flex;background:var(--w-chat);border-radius:999px;padding:3px;gap:2px;font-weight:600;font-size:.78rem;color:var(--w-ink2)}
.seg span{padding:4px 11px;border-radius:999px}
.seg .seg-on{background:var(--l-lamp);color:var(--l-lamp-ink)}
.own-body{background:var(--w-chat);border-radius:18px;padding:16px;display:grid;gap:12px}
.own-body p{margin:0}
.own-body .ask{font-size:.98rem;line-height:1.6;color:var(--w-ink)}
.own-body .mine{justify-self:end;max-width:30ch;background:var(--w-his);color:var(--w-ink);border-radius:16px 16px 5px 16px;padding:10px 14px;font-size:.95rem;line-height:1.5}
.own-came{background:var(--w-doc);border-radius:14px;padding:12px 14px;display:grid;gap:4px}
.own-came .fa{font-family:var(--w-doc-face);font-size-adjust:var(--w-doc-xh);font-style:var(--w-quote-style);font-size:1.05rem;color:var(--w-ink)}
.rdoc-body{background:var(--w-chat);border-radius:18px;padding:18px 18px 16px;display:grid;gap:10px}
.rdoc-list{margin:0;padding-left:22px;display:grid;gap:6px;color:var(--w-ink)}
.rdoc-list li::marker{color:var(--w-ink3);font-weight:600}
.rdoc-p{margin:0;color:var(--w-ink)}
.rdoc-foot{margin:6px 0 0;font-size:.82rem;color:var(--w-ink3);border-top:1px solid var(--w-line);padding-top:10px}
.cnote{margin:0;background:var(--w-doc);border-radius:24px;box-shadow:var(--w-lift);padding:26px 28px 20px;display:grid;gap:10px}
.cnote-h{margin:0;font-size:1.3rem;font-weight:var(--l-head-weight);letter-spacing:-.015em}
.cnote .fa{margin:0;font-family:var(--w-doc-face);font-size-adjust:var(--w-doc-xh);font-size:1.12rem;line-height:1.6;color:var(--w-ink)}
.cnote figcaption{font-size:.78rem;color:var(--w-ink3);border-top:1px solid var(--w-line);padding-top:10px}

/* cards */
.outc{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.outc .oc,.six .oc,.three3 .oc{background:var(--w-doc);border-top:0;border-radius:22px;padding:22px 22px 20px;box-shadow:var(--w-lift)}
.outc2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 24px}
.outc2 .oc{border-top:1.5px solid var(--w-ink);padding-top:12px}
.outc2 .oc h3{font-size:1.02rem}
.six{gap:22px}
.three3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.callout{margin-top:40px;background:var(--w-doc);border-radius:22px;padding:24px 26px;display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:24px;box-shadow:var(--w-lift)}
.callout h3{margin:0;font-size:1.25rem;font-weight:var(--l-head-weight);letter-spacing:-.015em;line-height:1.2}
.callout p{margin:0;color:var(--w-ink2)}
.arr2{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:28px}
.arr-card{background:var(--w-doc);border-radius:24px;padding:26px 28px 20px;box-shadow:var(--w-lift)}
.arr-card h3{margin:0 0 10px;font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:var(--w-ink)}
.arr-card ul{list-style:none;margin:0;padding:0;display:grid}
.arr-card li{display:grid;grid-template-columns:18px minmax(0,1fr);gap:10px;padding:11px 0;border-top:1px solid var(--w-line);color:var(--w-ink)}
.arr-card li::before{content:"";width:9px;height:9px;margin-top:.5em;border-radius:50%;background:var(--l-lamp);box-shadow:0 0 0 1px var(--w-ink)}
.arr-stay{background:transparent;box-shadow:none;border:1.5px dashed var(--w-line)}
.arr-stay li{color:var(--w-ink2)}
.arr-stay li::before{background:transparent;box-shadow:0 0 0 1px var(--w-ink3)}
.lensrow{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:center}
.lensrow .sec-head{margin:0}
.lensrow .l-link{justify-self:start}
.stags{display:flex;flex-wrap:wrap;gap:22px 24px}
.stag{display:inline-flex;align-items:center;gap:10px;padding:10px 18px 10px 12px;border-radius:999px;color:var(--w-ink);text-decoration:none;font-weight:600;font-size:.92rem;transition:transform .15s ease}
.stag:hover{transform:translateY(-1px)}
.stag .l-lens{width:22px;height:22px}
.stag:focus-visible{outline:2px solid var(--w-ink);outline-offset:6px}

/* join */
.joinsplit{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:56px;align-items:start}
.steps3{list-style:none;margin:0;padding:0;display:grid;gap:0;counter-reset:s}
.steps3 li{counter-increment:s;display:grid;grid-template-columns:44px minmax(0,1fr);gap:2px 12px;padding:16px 0;border-top:1px solid var(--w-line)}
.steps3 li::before{content:counter(s);grid-row:span 2;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--l-lamp);color:var(--l-lamp-ink);font-weight:700;border:1.5px solid var(--w-ink)}
.steps3 b{font-size:1.05rem}
.steps3 span{color:var(--w-ink2)}

/* next */
.nextc{margin-top:112px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 20px;align-items:center;background:var(--w-doc);color:var(--w-ink);text-decoration:none;padding:26px 30px;border-radius:28px;box-shadow:var(--w-lift)}
.nextc:hover .nextc-ar{background:var(--l-lamp-hi)}
.nextc:focus-visible{outline:2px solid var(--w-ink);outline-offset:6px}
.nextc-h{font-size:clamp(1.6rem,3vw,2.2rem);font-weight:var(--l-head-weight);letter-spacing:-.025em;line-height:1.1}
.nextc-p{color:var(--w-ink2)}
.nextc-ar{grid-column:2;grid-row:1/4;width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:var(--l-lamp);color:var(--l-lamp-ink);border:1.5px solid var(--w-ink)}
.nextc-ar svg{width:18px;height:18px}

@media (max-width:980px){
  .split,.mods,.lensrow,.joinsplit,.band-in,.arr2,.callout{grid-template-columns:1fr}
  .rooms,.outc{grid-template-columns:repeat(2,minmax(0,1fr))}
  .stores{grid-template-columns:1fr}
  .three3{grid-template-columns:1fr}
}
@media (max-width:640px){
  .rooms,.outc,.outc2,.sess-grid{grid-template-columns:1fr}
  .phead-in{padding-block:52px 28px}
  .nextc{padding:22px 20px}
  .cnote{padding:22px 20px 18px}
}
@media (prefers-reduced-motion: reduce){.caret{animation:none}.room{transition:none}}

/* ===== support page (source/support.py). Tokens only. ===== */
.sup{padding-top:28px}
.sup a{color:var(--w-ink);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.sup a:focus-visible{outline:2px solid var(--w-ink);outline-offset:2px;border-radius:6px}
.sup-crisis{margin:0 0 6px;color:var(--w-ink2);font-size:1rem;line-height:1.5}
.sup-crisis a{display:inline-flex;align-items:center;min-height:44px;font-weight:600}
.sup-checked{margin:0;color:var(--w-ink2);font-size:.95rem}
.sup-toc ul{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:4px 18px}
.sup-toc a,.sup-index a{display:inline-flex;align-items:center;min-height:44px;font-weight:600}
.sup-sec{padding-top:56px}
.sup-sec > h2{margin:0 0 20px;font-size:clamp(1.7rem,3.4vw,2.4rem);line-height:1.1;letter-spacing:-.02em}
.sup-jump{margin:0 0 8px;padding:18px 20px 12px;background:var(--w-doc);border-radius:20px;box-shadow:var(--w-lift)}
.sup-jump-h{margin:0;font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:var(--w-ink2)}
.sup-index{list-style:none;margin:6px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(11rem,1fr));gap:0 16px}
.sup-index a{width:100%}
.sup-state{margin-top:36px;padding-top:24px;border-top:1px solid var(--w-line);scroll-margin-top:84px}
.sup-state > h3{margin:0 0 16px;font-size:1.45rem;line-height:1.2;letter-spacing:-.015em}
.sup-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,21rem),1fr));gap:18px}
.sup-e{background:var(--w-doc);color:var(--w-ink);border-radius:20px;padding:18px 20px 16px;box-shadow:var(--w-lift);display:grid;gap:8px;align-content:start;min-width:0;scroll-margin-top:84px}
.sup-n{margin:0;font-size:1.1rem;line-height:1.3;font-weight:var(--w-ui-strong);letter-spacing:-.005em;overflow-wrap:anywhere}
.sup-board{justify-self:start;margin:0;font-size:.84rem;font-weight:600;line-height:1.35;color:var(--w-ink);background:var(--w-chat);border:1px solid var(--w-line);border-radius:12px;padding:4px 10px}
.sup-dl{margin:0;display:grid;gap:2px}
.sup-dl > div{display:grid;grid-template-columns:4.6rem minmax(0,1fr);gap:0 10px;align-items:baseline}
.sup-dl dt{font-size:.74rem;letter-spacing:.1em;text-transform:uppercase;font-weight:600;color:var(--w-ink2)}
.sup-dl dd{margin:0;color:var(--w-ink);line-height:1.5;overflow-wrap:anywhere;min-width:0}
.sup-dl dd a{display:inline-flex;align-items:center;min-height:44px;font-weight:600;font-variant-numeric:tabular-nums}
/* a short link (call, 988) reaches 44px wide with side padding that its negative margin takes back, so the words don't move */
.sup-crisis a[href="tel:988"],.sup-dl dd a.sup-short{padding-inline:10px;margin-inline:-10px}
.sup-dl .sup-plain dd,.sup-opts li:not(:has(a)){padding-block:10px}
.sup-opts,.sup-alt{list-style:none;margin:0;padding:0;display:grid}
.sup-note{margin:10px 0 0;color:var(--w-ink2)}
.sup-own{margin:0;color:var(--w-ink2);font-size:.95rem;line-height:1.5}
.sup-date{margin:0;color:var(--w-ink2);font-size:.84rem}
.sup-nf{margin:0;color:var(--w-ink2)}
.sup-nf-list{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:6px;color:var(--w-ink2)}
.sup-nf-p{font-weight:600;color:var(--w-ink)}
@media (max-width:640px){.sup-e{padding:16px 16px 14px}.sup-dl > div{grid-template-columns:4.2rem minmax(0,1fr)}}
