@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:200 900;font-display:swap;src:url(../media/62492e45f348cf87-s.1i31pqskun3om.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:200 900;font-display:swap;src:url(../media/8f9704ed0c18c9e0-s.2tf78tohaw2ta.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:200 900;font-display:swap;src:url(../media/c73d4b34880585a8-s.1o1rwbwcd1il6.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:200 900;font-display:swap;src:url(../media/f00b8cc54454926d-s.2zjf5q-8tbk0-.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:200 900;font-display:swap;src:url(../media/741805f5bd1ef272-s.412k-l0vbrw4v.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:200 900;font-display:swap;src:url(../media/ea3421846039b7f3-s.p.3yajkaw9ed9d3.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/20aee433927f7d4b-s.2_7u3qf8hb00l.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/256e1f7f180674ba-s.3qp6y754qyij-.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/be3bf58b83159894-s.437wgy8nypf_z.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/753b6407f468151f-s.36f255hs6fere.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/292081311a6a8abc-s.3ffd3kh1ay1yu.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/68d403cf9f2c68c5-s.p.0xq4un9mlaiqb.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Source Serif 4 Fallback";src:local(Times New Roman);ascent-override:87.87%;descent-override:28.41%;line-gap-override:0.0%;size-adjust:117.91%}.source_serif_4_6574a827-module__MP1fpG__className{font-family:"Source Serif 4","Source Serif 4 Fallback"}.source_serif_4_6574a827-module__MP1fpG__variable{--font-serif:"Source Serif 4", "Source Serif 4 Fallback"}
@font-face{font-family:Plus Jakarta Sans;font-style:italic;font-weight:400;font-display:swap;src:url(../media/d5ed7948d3d83345-s.1axboe36mgj2e.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:italic;font-weight:400;font-display:swap;src:url(../media/f6b8295589aa3077-s.2su_cm6t_752r.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:italic;font-weight:400;font-display:swap;src:url(../media/a7a9f39beafcc7f2-s.0_d1ay-85opzk.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:italic;font-weight:400;font-display:swap;src:url(../media/b65c166e5423853f-s.p.1x5es1flj2cxs.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:italic;font-weight:500;font-display:swap;src:url(../media/d5ed7948d3d83345-s.1axboe36mgj2e.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:italic;font-weight:500;font-display:swap;src:url(../media/f6b8295589aa3077-s.2su_cm6t_752r.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:italic;font-weight:500;font-display:swap;src:url(../media/a7a9f39beafcc7f2-s.0_d1ay-85opzk.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:italic;font-weight:500;font-display:swap;src:url(../media/b65c166e5423853f-s.p.1x5es1flj2cxs.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:italic;font-weight:600;font-display:swap;src:url(../media/d5ed7948d3d83345-s.1axboe36mgj2e.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:italic;font-weight:600;font-display:swap;src:url(../media/f6b8295589aa3077-s.2su_cm6t_752r.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:italic;font-weight:600;font-display:swap;src:url(../media/a7a9f39beafcc7f2-s.0_d1ay-85opzk.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:italic;font-weight:600;font-display:swap;src:url(../media/b65c166e5423853f-s.p.1x5es1flj2cxs.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:italic;font-weight:700;font-display:swap;src:url(../media/d5ed7948d3d83345-s.1axboe36mgj2e.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:italic;font-weight:700;font-display:swap;src:url(../media/f6b8295589aa3077-s.2su_cm6t_752r.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:italic;font-weight:700;font-display:swap;src:url(../media/a7a9f39beafcc7f2-s.0_d1ay-85opzk.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:italic;font-weight:700;font-display:swap;src:url(../media/b65c166e5423853f-s.p.1x5es1flj2cxs.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:italic;font-weight:800;font-display:swap;src:url(../media/d5ed7948d3d83345-s.1axboe36mgj2e.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:italic;font-weight:800;font-display:swap;src:url(../media/f6b8295589aa3077-s.2su_cm6t_752r.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:italic;font-weight:800;font-display:swap;src:url(../media/a7a9f39beafcc7f2-s.0_d1ay-85opzk.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:italic;font-weight:800;font-display:swap;src:url(../media/b65c166e5423853f-s.p.1x5es1flj2cxs.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../media/0b1dc8ddaa74ba49-s.1w1m1wqmjasxa.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e629b5bc06499d58-s.1y3v-klcv8xov.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../media/1a099d89ee94ee96-s.15dvesjzf7814.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../media/fba5a26ea33df6a3-s.p.08ssgmy_tb90r.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(../media/0b1dc8ddaa74ba49-s.1w1m1wqmjasxa.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(../media/e629b5bc06499d58-s.1y3v-klcv8xov.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(../media/1a099d89ee94ee96-s.15dvesjzf7814.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(../media/fba5a26ea33df6a3-s.p.08ssgmy_tb90r.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(../media/0b1dc8ddaa74ba49-s.1w1m1wqmjasxa.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(../media/e629b5bc06499d58-s.1y3v-klcv8xov.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(../media/1a099d89ee94ee96-s.15dvesjzf7814.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(../media/fba5a26ea33df6a3-s.p.08ssgmy_tb90r.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/0b1dc8ddaa74ba49-s.1w1m1wqmjasxa.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/e629b5bc06499d58-s.1y3v-klcv8xov.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/1a099d89ee94ee96-s.15dvesjzf7814.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/fba5a26ea33df6a3-s.p.08ssgmy_tb90r.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:800;font-display:swap;src:url(../media/0b1dc8ddaa74ba49-s.1w1m1wqmjasxa.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:800;font-display:swap;src:url(../media/e629b5bc06499d58-s.1y3v-klcv8xov.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:800;font-display:swap;src:url(../media/1a099d89ee94ee96-s.15dvesjzf7814.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:800;font-display:swap;src:url(../media/fba5a26ea33df6a3-s.p.08ssgmy_tb90r.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans Fallback;src:local(Arial);ascent-override:98.88%;descent-override:21.15%;line-gap-override:0.0%;size-adjust:104.98%}.plus_jakarta_sans_4034526d-module__zQyAYW__className{font-family:Plus Jakarta Sans,Plus Jakarta Sans Fallback}.plus_jakarta_sans_4034526d-module__zQyAYW__variable{--font-sans:"Plus Jakarta Sans", "Plus Jakarta Sans Fallback"}
:root{--font-body:var(--font-serif), "Source Serif 4", Georgia, serif;--font-heading:var(--font-body);--color-bg:#f3f2f2;--color-text:#201e1d;--color-accent:#0088b0;--color-accent-100:#e9f8ff;--color-accent-200:#c9ecfb;--color-accent-600:#1186ac;--color-accent-700:#006786;--color-accent-900:#00374a;--color-accent-2:#d6006c;--color-accent-2-200:#ffdee6;--color-accent-2-900:#4b1528;--color-neutral-100:#f8f4f4;--color-neutral-200:#eae7e7;--color-neutral-300:#d7d3d3;--color-neutral-400:#bab6b6;--color-neutral-500:#9b9797;--color-neutral-700:#605d5d;--color-neutral-800:#444141;--color-neutral-900:#2d2b2b;--color-red:#cc2827;--color-red-text:#bb0916;--color-red-tint:#ffe4e0;--radius:2px;--shadow-sm:0 1px 2px #2d2b2b24;--shadow-md:0 3px 10px #2d2b2b29;--shadow-lg:0 12px 32px #2d2b2b38;--ui-ink:#0f172a;--ui-ink-2:#1e293b;--ui-text:#334155;--ui-muted:#64748b;--ui-faint:#94a3b8;--ui-line:#e2e8f0;--ui-line-soft:#f1f5f9;--ui-hover:#f8fafc;--ui-sky:#0ea5e9;--ui-sky-ink:#0284c7;--ui-sky-soft:#f0f9ff;--ui-sky-line:#bae6fd;--ui-page:radial-gradient(circle at 15% 10%, #f8fafc 0%, #f1f5f9 45%, #eef2ff 100%);--ui-shadow-card:0 4px 20px -2px #0f172a0d, 0 2px 6px -1px #0f172a08;--ui-shadow-float:0 10px 30px -4px #0f172a14, 0 4px 6px -2px #0f172a0a}@supports (color:lab(0% 0 0)){:root{--color-red:lab(45.8049% 62.9533 44.1);--color-red-text:lab(39.9824% 63.1491 46.7224);--color-red-tint:lab(92.7731% 9.04921 5.32348)}}*{box-sizing:border-box}html{background:var(--color-neutral-200);-moz-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--color-neutral-200);color:var(--color-text);font:14px/1.4 var(--font-body);margin:0}button,input,select,textarea{font:inherit;color:inherit}a{color:var(--color-accent-700)}a:hover{color:var(--color-accent-900)}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}h1,h2,h3{font-family:var(--font-heading)}.btn{border:1px solid var(--color-text);border-radius:var(--radius);background:var(--color-bg);cursor:pointer;justify-content:center;align-items:center;gap:6px;padding:6px 14px;font-size:14px;font-weight:600;display:inline-flex}.btn:hover:not(:disabled){background:var(--color-accent-100)}.btn:disabled{opacity:.5;cursor:default}.btn-primary{border-color:var(--color-text);background:var(--color-text);color:var(--color-bg)}.btn-primary:hover:not(:disabled){background:var(--color-neutral-800)}.btn-danger{border-color:var(--color-red);background:var(--color-red);color:#fff}.btn-danger:hover:not(:disabled){background:var(--color-red-text)}.btn-ghost{background:0 0;border-color:#0000}.btn-xs{padding:1px 5px;font-size:10.5px;font-weight:600}.input,.admin input:not([type=checkbox]):not([type=color]),.admin select{border:1px solid var(--color-neutral-400);border-radius:var(--radius);background:#fff;padding:6px 8px}.link-button{color:var(--color-accent-700);cursor:pointer;text-underline-offset:2px;background:0 0;border:0;padding:0;text-decoration:underline}.muted{color:var(--color-neutral-700)}.login-page{color:#fff;min-height:100dvh;font-family:var(--font-sans), system-ui, sans-serif;letter-spacing:-.011em;-webkit-font-smoothing:antialiased;background:radial-gradient(120% 90% at 0 0,#1e1b4b 0%,#0000 55%),radial-gradient(100% 80% at 100% 100%,#0c4a6e 0%,#0000 55%),#0b1120;justify-content:center;align-items:center;padding:48px 24px;display:flex;position:relative;overflow:hidden}.login-page:after{content:"";pointer-events:none;background-image:radial-gradient(#ffffff12 1px,#0000 1px);background-size:26px 26px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(#000 30%,#0000 75%);mask-image:radial-gradient(#000 30%,#0000 75%)}.login-orbs span{filter:blur(70px);opacity:.55;border-radius:50%;width:420px;height:420px;animation:16s ease-in-out infinite alternate login-float;position:absolute}.login-orbs span:first-child{background:#ec4899;top:-120px;left:-80px}.login-orbs span:nth-child(2){background:#6366f1;animation-delay:-4s;top:20%;right:-140px}.login-orbs span:nth-child(3){opacity:.35;background:#22c55e;animation-delay:-8s;bottom:-160px;left:20%}.login-orbs span:nth-child(4){opacity:.4;background:#0ea5e9;width:300px;height:300px;animation-delay:-12s;bottom:10%;right:25%}@keyframes login-float{0%{transform:translate(0)scale(1)}to{transform:translate(60px,-40px)scale(1.15)}}.login-shell{z-index:1;flex-direction:column;align-items:center;gap:40px;width:100%;max-width:980px;display:flex;position:relative}.login-title{text-align:center;flex-direction:column;align-items:center;gap:14px;display:flex}.login-badge{letter-spacing:.12em;text-transform:uppercase;color:#ffffffd9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff14;border:1px solid #ffffff29;border-radius:999px;align-items:center;gap:8px;padding:6px 14px 6px 8px;font-size:12px;font-weight:600;display:inline-flex}.login-badge img{background:#fff;border-radius:50%;width:22px;height:22px;padding:3px}.login-title h1{letter-spacing:-.04em;background:linear-gradient(100deg,#fff 20%,#fbcfe8 45%,#c7d2fe 70%,#bae6fd 95%);color:#0000;-webkit-background-clip:text;background-clip:text;margin:0;padding:0 .06em .12em;font-family:inherit;font-size:clamp(36px,6vw,60px);font-weight:800;line-height:1.15}.login-title p{color:#e2e8f0bf;margin:0;font-size:15px}.login-tiles{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:18px;width:100%;display:grid}.login-tile{color:#fff;text-align:center;cursor:pointer;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);animation:.6s cubic-bezier(.16,1,.3,1) both login-rise;animation-delay:var(--delay);background:linear-gradient(#ffffff1a,#ffffff0a);border:1px solid #ffffff1f;border-radius:24px;flex-direction:column;align-items:center;gap:16px;padding:28px 18px 24px;font-family:inherit;transition:transform .25s cubic-bezier(.16,1,.3,1),border-color .2s,box-shadow .25s,background-color .2s;display:flex;position:relative;box-shadow:inset 0 1px #ffffff1f,0 20px 40px -24px #0009}@keyframes login-rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}.login-tile:hover{transform:translateY(-6px);box-shadow:inset 0 1px #ffffff24,0 26px 50px -24px #0009}.login-tile:focus-visible{outline:2px solid var(--to);outline-offset:3px}.login-tile[aria-pressed=true]{background:linear-gradient(180deg, color-mix(in srgb, var(--to) 22%, transparent), #ffffff0d);transform:translateY(-6px);box-shadow:inset 0 1px #ffffff24,0 26px 50px -24px #0009}.login-monogram{background:linear-gradient(135deg, var(--from), var(--to));color:#fff;text-shadow:0 2px 8px #00000040;width:84px;height:84px;box-shadow:inset 0 2px 0 #ffffff73, 0 14px 30px -10px var(--to);border-radius:28px;justify-content:center;align-items:center;font-size:38px;font-weight:800;transition:transform .3s cubic-bezier(.16,1,.3,1),border-radius .3s;display:flex}.login-tile:hover .login-monogram{border-radius:50%;transform:rotate(-6deg)scale(1.05)}.login-name{white-space:nowrap;flex-direction:column;gap:4px;display:flex}.login-name>span{letter-spacing:.08em;font-size:18px;font-weight:800}.login-name i{color:#e2e8f0b3;font-size:12.5px;font-style:normal}.login-check{background:var(--to);color:#fff;opacity:0;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;transition:opacity .2s,transform .25s cubic-bezier(.34,1.56,.64,1);display:flex;position:absolute;top:14px;right:14px;transform:scale(.5)}.login-check svg{width:13px;height:13px}.login-tile[aria-pressed=true] .login-check{opacity:1;transform:none}.login-form{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);width:100%;max-width:560px;box-shadow:0 30px 60px -24px #000000b3, 0 0 0 1px color-mix(in srgb, var(--to) 25%, transparent);background:#0f172a8c;border:1px solid #ffffff24;border-radius:24px;flex-direction:column;gap:16px;padding:28px;animation:.45s cubic-bezier(.16,1,.3,1) both login-rise;display:flex}.login-form.has-error{animation:.4s login-shake}@keyframes login-shake{20%,60%{transform:translate(-6px)}40%,80%{transform:translate(6px)}}.login-form label{color:#e2e8f0d9;font-size:17px;font-weight:500}.login-form label b{color:#fff;font-weight:800}.login-row{flex-direction:column;gap:14px;display:flex}.login-field{flex:1;align-items:center;display:flex;position:relative}.login-field svg{color:#e2e8f099;pointer-events:none;width:22px;height:22px;position:absolute;left:20px}.login-field input{letter-spacing:.02em;color:#fff;background:#ffffff17;border:1px solid #fff3;border-radius:18px;width:100%;height:62px;padding:0 20px 0 56px;font-family:inherit;font-size:19px;transition:border-color .18s,box-shadow .18s,background-color .18s}.login-field input::placeholder{color:#e2e8f080}.login-field input:focus{border-color:var(--to);box-shadow:0 0 0 4px color-mix(in srgb, var(--to) 30%, transparent);background:#ffffff1a;outline:none}.login-go{background:linear-gradient(135deg, color-mix(in srgb, var(--to) 70%, #fff) 0%, var(--to) 45%, color-mix(in srgb, var(--to) 85%, #000) 100%);letter-spacing:.01em;color:#fff;text-shadow:0 1px 2px #00000040;cursor:pointer;height:58px;box-shadow:0 0 0 1px color-mix(in srgb, var(--to) 60%, #fff) inset, 0 18px 36px -12px var(--to), 0 0 40px -8px color-mix(in srgb, var(--to) 70%, transparent);border:0;border-radius:18px;justify-content:center;align-items:center;gap:10px;padding:0 24px;font-family:inherit;font-size:18px;font-weight:800;transition:transform .15s,filter .15s,box-shadow .2s;display:inline-flex}.login-go svg{width:20px;height:20px;transition:transform .2s}.login-go:hover:not(:disabled){filter:brightness(1.1)saturate(1.1);box-shadow:0 0 0 1px color-mix(in srgb, var(--to) 60%, #fff) inset, 0 22px 44px -12px var(--to), 0 0 56px -6px color-mix(in srgb, var(--to) 80%, transparent)}.login-go:hover:not(:disabled) svg{transform:translate(3px)}.login-go:active:not(:disabled){transform:scale(.97)}.login-go:disabled{opacity:.7;cursor:default}.login-error{color:#fda4af;font-size:13px;font-weight:500}@property --spin{syntax:"<angle>";inherits:true;initial-value:0deg}.login-tile-wrap{isolation:isolate;--spin-colors:var(--to), var(--from), color-mix(in srgb, var(--from) 55%, #fff), var(--to), color-mix(in srgb, var(--to) 70%, #000), var(--to);animation:3s linear infinite paused login-spin;display:flex;position:relative}.login-tile-wrap.is-everyone{--spin-colors:#ec4899, #6366f1, #0ea5e9, #22c55e, #ec4899}.login-tile-wrap>.login-tile{flex:1}.login-tile-wrap:before{content:"";z-index:-1;background:conic-gradient(from var(--spin), var(--spin-colors));filter:blur(22px);opacity:0;pointer-events:none;border-radius:26px;transition:opacity .3s,transform .25s cubic-bezier(.16,1,.3,1);position:absolute;inset:4px}.login-tile-wrap:hover{animation-play-state:running}.login-tile-wrap:has(.login-tile:focus-visible){animation-play-state:running}.login-tile-wrap:has(.login-tile[aria-pressed=true]){animation-play-state:running}.login-tile-wrap:hover:before{opacity:.8;transform:translateY(-6px)}.login-tile-wrap:has(.login-tile:focus-visible):before{opacity:.8;transform:translateY(-6px)}.login-tile-wrap:has(.login-tile[aria-pressed=true]):before{opacity:1;transform:translateY(-6px)}.login-tile{background:linear-gradient(#1e293beb,#0f172ae6)}.login-tile[aria-pressed=true]{background:linear-gradient(180deg, color-mix(in srgb, var(--to) 22%, #1e293b), #0f172a)}.login-tile:before{content:"";border-radius:inherit;background:conic-gradient(from var(--spin), var(--spin-colors));opacity:0;-webkit-mask-composite:xor;pointer-events:none;padding:1.5px;transition:opacity .25s;position:absolute;inset:-1px;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.login-tile-wrap:hover .login-tile:before,.login-tile:focus-visible:before,.login-tile[aria-pressed=true]:before{opacity:1}.login-tile-wrap:hover .login-tile,.login-tile[aria-pressed=true]{border-color:#0000}@keyframes login-spin{to{--spin:360deg}}@media (max-width:520px){.login-tiles{grid-template-columns:1fr 1fr;gap:12px}.login-monogram{border-radius:20px;width:64px;height:64px;font-size:28px}.login-form{padding:20px}.login-field input{height:56px;font-size:17px}.login-go{height:54px}}@media (prefers-reduced-motion:reduce){.login-orbs span,.login-tile,.login-tile-wrap,.login-form{animation:none}}.planner-page{min-height:100dvh}.planner{background:var(--ui-page);width:100%;height:100dvh;min-height:520px;color:var(--ui-ink);font-family:var(--font-sans), system-ui, sans-serif;letter-spacing:-.011em;-webkit-font-smoothing:antialiased;grid-template-rows:auto minmax(0,1fr);grid-template-columns:96px minmax(0,1fr) 164px;gap:14px 22px;padding:16px 18px 18px;display:grid;position:relative}.planner-head{grid-area:1/1/auto/3;align-items:center;gap:18px;min-height:36px;display:flex}.planner-head h1{letter-spacing:-.01em;text-transform:uppercase;white-space:nowrap;color:var(--ui-ink);flex-shrink:0;margin:0;font-family:inherit;font-size:21px;font-weight:800;line-height:1}.planner-nav{letter-spacing:.02em;white-space:nowrap;align-items:center;gap:2px;margin-right:auto;font-size:11px;font-weight:600;display:flex}.planner-nav:has(a){background:#e2e8f099;border:1px solid #e2e8f099;border-radius:10px;padding:3px;box-shadow:inset 0 2px 4px #0f172a0d}.planner-nav a{color:#475569;border-radius:7px;padding:4px 11px;text-decoration:none;transition:background-color .15s,color .15s}.planner-nav a:hover{color:var(--ui-ink);background:#fff9}.planner-nav a[aria-current=page]{color:var(--ui-ink);background:#fff;font-weight:700;box-shadow:0 1px 2px #0f172a14}.planner-nav .link-button{font-style:italic;font-weight:400}.planner-legend{box-shadow:var(--ui-shadow-card);color:var(--ui-text);background:#ffffffe6;border:1px solid #e2e8f0e6;border-radius:999px;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:14px;padding:5px 14px 5px 5px;font-size:12px;font-weight:500;display:flex}.undo-button{background:var(--ui-ink);color:#fff;white-space:nowrap;cursor:pointer;border:0;border-radius:999px;padding:4px 11px;font-family:inherit;font-size:11px;font-weight:600;transition:background-color .15s}.undo-button:hover:not(:disabled){background:var(--ui-ink-2)}.undo-button:disabled{background:var(--ui-line);color:var(--ui-muted);cursor:default}.legend-item{white-space:nowrap;align-items:center;gap:6px;display:flex}.swatch{cursor:pointer;border-radius:4px;flex-shrink:0;width:14px;height:14px;position:relative;box-shadow:inset 0 0 0 1px #0f172a1a}.swatch input{opacity:0;cursor:pointer;border:0;width:100%;height:100%;padding:0;position:absolute;inset:0}.key-box{min-height:0;box-shadow:var(--ui-shadow-card);background:#fffffff2;border:1px solid #e2e8f0e6;border-radius:16px;flex-direction:column;grid-area:1/3/3;gap:8px;padding:14px 14px 12px;display:flex}.key-title{flex-direction:column;gap:2px;display:flex}.key-title span{letter-spacing:-.02em;font-size:15px;font-weight:800}.key-title i{color:var(--ui-muted);font-size:9.5px}.key-rows{flex-direction:column;flex:1;justify-content:space-evenly;gap:3px;min-height:0;display:flex}.key-row{cursor:pointer;border-radius:8px;flex-direction:column;gap:1px;margin:-2px -6px;padding:3px 6px;transition:background-color .15s;display:flex}.key-row:hover{background:var(--ui-sky-soft)}.key-row-name{align-items:center;gap:6px;font-size:11.5px;font-weight:600;line-height:1.15;display:flex}.key-row-need{color:var(--ui-muted);flex-wrap:wrap;column-gap:5px;padding-left:20px;font-size:10px;line-height:1.2;display:flex}.note-dot-key{background:var(--color-accent);border-radius:50%;flex-shrink:0;width:6px;height:6px}.key-actions{flex-wrap:wrap;align-items:flex-end;gap:4px;min-height:22px;display:flex}.tray{min-height:0;box-shadow:var(--ui-shadow-card);background:#fffffff2;border:1px solid #e2e8f0e6;border-radius:16px;flex-direction:column;grid-area:2/1;gap:8px;padding:14px 10px;display:flex;overflow:auto}.tray-hint{letter-spacing:.04em;text-transform:uppercase;color:var(--ui-muted);margin-bottom:2px;font-size:9.5px;font-weight:600;line-height:1.2}.chip{white-space:nowrap;cursor:grab;border-radius:6px;justify-content:center;align-items:center;font-weight:700;transition:transform .15s;display:flex;overflow:hidden;box-shadow:0 1px 2px #0f172a1f}.chip:hover{transform:translateY(-1px)}.chip-meal{background:var(--color-red);color:#fff;letter-spacing:.02em;height:28px;font-size:10px}.chip-icon{padding-left:16px}.chip.chip-icon{position:relative}.brand-mark{pointer-events:none;width:auto;height:70%;max-height:18px;position:absolute;bottom:2px;left:3px}.block .brand-mark{height:18px;max-height:45%;bottom:6px}.chip-chore{background:var(--color-text);height:22px;color:var(--color-bg);letter-spacing:.02em;font-size:9.5px;line-height:1}.chip-slot{border:1px dashed #cbd5e1;border-radius:6px}.chip-slot-meal{height:28px}.chip-slot-chore{height:22px}.tray-button{background:var(--ui-line-soft);color:var(--ui-text);letter-spacing:.04em;cursor:pointer;border:0;border-radius:6px;margin-bottom:6px;padding:6px 0;font-family:inherit;font-size:9.5px;font-weight:700;transition:background-color .15s}.tray-button:hover{background:var(--ui-line)}.palettes{border-top:1px solid var(--ui-line-soft);flex-direction:column;gap:8px;margin-top:8px;padding-top:12px;display:flex}.tray-footer{flex-direction:column;gap:8px;margin-top:auto;padding-top:12px;display:flex}.tray-icons{justify-content:space-between;gap:8px;display:flex}.tray-icon{border:1px solid var(--ui-line);height:34px;color:var(--ui-text);cursor:pointer;background:#fff;border-radius:9px;flex:1;justify-content:center;align-items:center;padding:0;transition:background-color .15s,color .15s,border-color .15s;display:flex}.tray-icon:hover:not(:disabled){border-color:var(--ui-sky-line);background:var(--ui-sky-soft);color:var(--ui-sky-ink)}.tray-icon:disabled{opacity:.5;cursor:default}.tray-icon svg{width:18px;height:18px}.palette-button{cursor:pointer;background:#fff;border-radius:8px;flex-direction:column;gap:5px;padding:6px;transition:background-color .15s;display:flex}.palette-button:hover{background:var(--ui-hover)}.palette-strip{border-radius:4px;grid-template-columns:repeat(5,1fr);height:14px;display:grid;overflow:hidden}.palette-name{text-align:left;font-size:10.5px;font-weight:700;line-height:1}.save-user{border:1px solid var(--ui-sky-line);background:var(--ui-sky-soft);color:var(--ui-sky-ink);letter-spacing:.02em;cursor:pointer;border-radius:8px;padding:6px 4px;font-family:inherit;font-size:9.5px;font-weight:700;line-height:1.15}.save-user:hover{background:#e0f2fe}.grid{z-index:0;-webkit-user-select:none;user-select:none;grid-area:2/2;min-height:0;position:relative}.grid:before{content:"";z-index:-1;box-shadow:var(--ui-shadow-card);pointer-events:none;background:#fffffff2;border:1px solid #e2e8f0e6;border-radius:16px;position:absolute;inset:-6px -10px -10px}.day-head{letter-spacing:-.01em;white-space:nowrap;height:24px;color:var(--ui-ink);align-items:flex-end;gap:5px;padding:0 9px 6px;font-size:13.5px;font-weight:700;display:flex;position:absolute;top:0}.day-date{color:var(--ui-faint);font-size:11px;font-weight:500}.lab-toggle{letter-spacing:.03em;cursor:pointer;align-items:center;gap:3px;margin-left:auto;font-size:9.5px;font-weight:700;display:inline-flex}.lab-toggle input{width:11px;height:11px;accent-color:var(--color-accent);margin:0}.lab-toggle-ab{flex-direction:column;align-items:flex-start;gap:1px;font-size:8.5px;line-height:1}.lab-toggle-ab label{cursor:pointer;align-items:center;gap:3px;display:inline-flex}.hour-label{width:52px;color:var(--ui-faint);font-variant-numeric:tabular-nums;padding-top:2px;line-height:1;position:absolute;left:0}.grid-line{border-top:1px solid var(--ui-line);position:absolute;left:0;right:0}.grid-line-half{border-top:1px dashed var(--ui-line-soft)}.block{text-overflow:ellipsis;text-wrap:pretty;border-radius:6px;font-weight:700;line-height:1.1;position:absolute;overflow:hidden;box-shadow:inset 0 0 0 1px #0f172a0f}.block>span:first-child,.board-fixed,.chip-placed{text-transform:uppercase;letter-spacing:.02em}.block-fixed{z-index:1}.block-class{z-index:2;cursor:grab;font-weight:600;transition:box-shadow .15s}.block-class:hover,.block-activity:hover{box-shadow:inset 0 0 0 1px #0f172a1a,0 4px 12px -2px #0f172a2e}.block-activity{z-index:2;cursor:grab;line-height:1.1}.block-class .design-label{border-radius:var(--radius);-webkit-box-decoration-break:clone;box-decoration-break:clone;background:#f8f7ff;background:lab(97.4883% 2.47437 -7.0722);padding:0 3px;font-weight:700}.sublabel{opacity:.8;white-space:nowrap;margin-top:1px;font-style:normal;font-weight:500;display:block}.note-dot{background:var(--color-accent);width:7px;height:7px;box-shadow:0 0 0 1.5px var(--color-bg);border-radius:50%;position:absolute;top:3px;right:3px}.resize-handle{cursor:ns-resize;justify-content:center;align-items:center;height:6px;display:flex;position:absolute;bottom:0;left:0;right:0}.resize-handle span{opacity:.35;background:currentColor;border-radius:1px;width:16px;height:2px}.chip-placed{z-index:3;white-space:nowrap;cursor:grab;border-radius:6px;justify-content:center;align-items:center;font-weight:700;display:flex;position:absolute;overflow:hidden;box-shadow:0 2px 6px -1px #0f172a40}.chip-placed.chip-meal{letter-spacing:.02em;height:auto;font-size:9.5px}.chip-placed.chip-chore{z-index:4;height:auto;font-size:8px}.screens-off{z-index:6;background:var(--color-red);cursor:ns-resize;border-radius:999px;height:4px;margin-top:-2px;position:absolute}.screens-off span{color:var(--color-red-text);letter-spacing:.03em;white-space:nowrap;background:#fff;border-radius:999px;padding:2px 5px;font-size:8px;font-weight:700;line-height:1;position:absolute;bottom:6px;right:2px;box-shadow:0 1px 3px #0f172a26}.week-picker{position:relative}.week-picker-trigger{font:inherit;color:inherit;cursor:pointer;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;-webkit-text-decoration-color:var(--ui-sky);text-decoration-color:var(--ui-sky);text-underline-offset:3px;background:0 0;border:0;padding:0;font-weight:700}.popover-backdrop{z-index:19;position:fixed;inset:0}.popover{z-index:20;border:1px solid var(--ui-line);width:232px;box-shadow:var(--ui-shadow-float);white-space:normal;background:#fff;border-radius:14px;flex-direction:column;gap:8px;margin-top:6px;padding:12px;font-size:12px;font-weight:500;line-height:1.3;display:flex;position:absolute;top:100%;left:0}.popover-head{justify-content:space-between;align-items:center;gap:6px;font-weight:700;display:flex}.popover-head button{cursor:pointer;background:0 0;border:0;padding:0 6px;font-size:16px}.popover-head button:hover{color:var(--color-accent)}.popover-grid{grid-template-columns:1fr 1fr;gap:4px;display:grid}.popover-grid button{border:1px solid var(--ui-line);font:inherit;text-align:left;cursor:pointer;background:#fff;border-radius:8px;padding:5px 8px;font-size:12px}.popover-grid button:hover{background:var(--ui-hover)}.popover-grid button.selected{border-color:var(--ui-ink);background:var(--ui-ink);color:#fff;font-weight:700}.this-week{color:var(--ui-sky-ink);font:inherit;cursor:pointer;background:0 0;border:0;align-self:flex-start;padding:0;font-size:11px;font-weight:600}.modal-backdrop{z-index:50;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f172a59;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{border:1px solid var(--ui-line);max-width:90vw;max-height:86vh;box-shadow:var(--ui-shadow-float);color:var(--ui-ink);font-family:var(--font-sans), system-ui, sans-serif;letter-spacing:-.011em;background:#fff;border-radius:16px;flex-direction:column;gap:14px;padding:22px 24px;display:flex}.modal-title{letter-spacing:-.02em;font-size:18px;font-weight:700}.modal-body{flex-direction:column;gap:8px;font-size:14px;line-height:1.45;display:flex}.modal-body p{margin:0}.modal-body ul{color:var(--color-neutral-800);margin:0;padding-left:18px;font-size:13px}.modal-class{border:1px solid var(--ui-line);background:var(--ui-hover);border-radius:10px;align-items:center;gap:8px;padding:8px 10px;font-weight:700;display:flex}.modal-class .swatch{cursor:default}.modal-class i{color:var(--color-neutral-700);margin-left:auto;font-size:12px;font-weight:400}.modal-actions{justify-content:flex-end;gap:8px;display:flex}.modal.modal-notes{border:1px solid #e2e8f0cc;border-radius:22px;gap:0;min-width:min(420px,92vw);min-height:min(300px,86vh);padding:0;overflow:hidden;box-shadow:0 24px 60px -12px #0f172a47,0 8px 20px -8px #0f172a1f}.notes-head{border-bottom:1px solid var(--ui-line-soft);background:linear-gradient(135deg, color-mix(in srgb, var(--note-tint) 30%, #fff) 0%, color-mix(in srgb, var(--note-tint) 8%, #fff) 55%, #fff 100%);align-items:center;gap:14px;padding:18px 20px 16px 22px;display:flex}.notes-swatch{background:var(--note-tint);width:38px;height:38px;box-shadow:inset 0 0 0 1px #0f172a14, 0 4px 10px -4px color-mix(in srgb, var(--note-tint) 70%, #0f172a);border-radius:12px;flex-shrink:0}.notes-titles{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.notes-eyebrow{letter-spacing:.06em;text-transform:uppercase;color:var(--ui-muted);font-size:11px;font-weight:600}.notes-title{letter-spacing:-.01em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;color:var(--ui-ink);font-size:20px;font-weight:800;line-height:1.15;overflow:hidden}.notes-saved{color:#047857;background:#ecfdf5e6;border:1px solid #10b98140;border-radius:999px;flex-shrink:0;align-items:center;gap:5px;padding:5px 10px;font-size:11px;font-weight:600;display:inline-flex}.notes-saved svg{width:12px;height:12px}.notes-close{width:32px;height:32px;color:var(--ui-muted);cursor:pointer;background:#ffffffb3;border:0;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;font-size:20px;line-height:1;transition:background-color .15s,color .15s;display:flex}.notes-close:hover{color:var(--ui-ink);background:#fff}.notes-body{flex-direction:column;flex:1;min-height:0;padding:16px 20px;display:flex}.notes-field{background:var(--ui-hover);width:100%;min-height:0;color:var(--ui-ink);white-space:pre-wrap;resize:none;border:1px solid #0000;border-radius:14px;flex:1;padding:14px 16px;font-family:inherit;font-size:15px;line-height:1.6;transition:border-color .18s,box-shadow .18s,background-color .18s}.notes-field::placeholder{color:var(--ui-faint)}.notes-field:hover{background:var(--ui-line-soft)}.notes-field:focus{border-color:var(--ui-sky);background:#fff;outline:none;box-shadow:0 0 0 4px #0ea5e91f}.class-notes{flex:1;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-auto-rows:minmax(140px,1fr);gap:12px;min-height:0;display:grid;overflow:auto}.class-note{border:1px solid var(--ui-line);min-height:0;box-shadow:var(--ui-shadow-card);background:#fff;border-radius:16px;flex-direction:column;gap:8px;padding:12px;display:flex}.class-note-head{color:var(--ui-muted);justify-content:space-between;align-items:baseline;gap:8px;font-size:11.5px;display:flex}.class-note-head b{background:var(--ui-ink);letter-spacing:.04em;text-transform:uppercase;color:#fff;border-radius:999px;padding:3px 9px;font-size:11px;font-weight:700}.class-note .notes-field{padding:10px 12px;font-size:13.5px;line-height:1.5}.notes-empty{text-align:center;max-width:320px;color:var(--ui-muted);margin:auto;font-size:13px}.notes-foot{border-top:1px solid var(--ui-line-soft);justify-content:space-between;align-items:center;gap:12px;padding:12px 20px 16px;display:flex}.notes-foot-end{justify-content:flex-end}.notes-done{background:var(--ui-ink);color:#fff;cursor:pointer;border:0;border-radius:999px;padding:9px 22px;font-family:inherit;font-size:13px;font-weight:600;transition:background-color .15s,transform .15s;box-shadow:0 4px 12px -4px #0f172a66}.notes-done:hover{background:var(--ui-ink-2)}.notes-done:active{transform:scale(.98)}@media (max-width:700px){.modal.modal-notes{width:92vw!important}.notes-saved{display:none}}.danger-outline{color:#e11d48;font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;padding:6px 10px;font-size:12px;font-weight:600;transition:background-color .15s,border-color .15s}.danger-outline:hover{background:#fff1f2;border-color:#fecdd3}.planner-error{z-index:40;color:#be123c;box-shadow:var(--ui-shadow-float);cursor:pointer;background:#fff1f2;border:1px solid #fecdd3;border-radius:12px;padding:10px 14px;font-size:12px;font-weight:500;position:absolute;bottom:14px;left:50%;transform:translate(-50%)}.drop-ghost{z-index:8;border:2px dashed var(--ui-sky);pointer-events:none;background:#0ea5e91f;border-radius:6px;transition:top 60ms ease-out,left 60ms ease-out;position:absolute}.drop-ghost-label,.resize-tag{background:var(--ui-ink);color:#fff;font-family:var(--font-sans), system-ui, sans-serif;letter-spacing:0;white-space:nowrap;border-radius:999px;padding:3px 7px;font-size:10.5px;font-weight:700;line-height:1.2;box-shadow:0 4px 12px -2px #0f172a4d}.drop-ghost-label{position:absolute;top:-22px;left:-2px}.resize-tag{z-index:9;pointer-events:none;margin-top:4px;position:absolute}.now-line{z-index:7;pointer-events:none;border-top:1.5px solid #ef4444;height:0;position:absolute}.now-line:before{content:"";background:#ef4444;border-radius:50%;width:9px;height:9px;position:absolute;top:-5.5px;left:-5px;box-shadow:0 0 0 2px #fff}@supports (-webkit-touch-callout:none){input,textarea,select{font-size:max(16px,1em)!important}}@media print{.now-line{display:none}}.planner.is-mobile{touch-action:pan-y;height:auto;min-height:100dvh;padding:0 0 40px;display:block;overflow-x:clip}@media (max-width:767px){body{overflow-x:hidden}}.is-mobile button,.is-mobile a,.m-dots{touch-action:manipulation}.m-head,.m-daybar{z-index:30;-webkit-backdrop-filter:blur(14px);background:#f5f7fbe0;align-items:center;gap:10px;padding:10px 14px;display:flex;position:sticky}.m-head{border-bottom:1px solid var(--ui-line-soft);top:0}.m-title{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.m-title .week-picker-trigger{color:var(--ui-muted);font-size:12px;font-weight:600;text-decoration:none}.m-head h1{letter-spacing:-.01em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;min-width:0;color:var(--ui-ink);margin:0;font-family:inherit;font-size:17px;font-weight:800;overflow:hidden}.m-head .undo-button{padding:7px 12px;font-size:13px}.m-daybar{z-index:29;border-bottom:1px solid var(--ui-line-soft);padding-top:8px;padding-bottom:10px;top:61px}.m-icon-button{border:1px solid var(--ui-line);width:40px;height:40px;color:var(--ui-ink);cursor:pointer;background:#fff;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-family:inherit;font-size:22px;line-height:1;display:flex;box-shadow:0 1px 2px #0f172a0f}.m-icon-button svg{width:20px;height:20px}.m-icon-button:disabled{opacity:.35}.m-dots{flex:1;justify-content:space-between;gap:4px;min-width:0;display:flex;position:relative}.m-dot-pill{z-index:0;background:var(--ui-ink);pointer-events:none;border-radius:10px;position:absolute;top:0;bottom:0;box-shadow:0 6px 14px -6px #0f172a99}.m-dot-pill:not(.is-ready){transition:none!important}@media (prefers-reduced-motion:reduce){.m-dot-pill{transition:none!important}}.m-dots button{letter-spacing:.02em;min-width:0;color:var(--ui-muted);cursor:pointer;background:0 0;border:0;border-radius:10px;flex-direction:column;flex:1;align-items:center;gap:1px;padding:7px 0;font-family:inherit;font-size:12.5px;font-weight:700;line-height:1.1;transition:color .3s 80ms;display:flex}.m-dots small{opacity:.75;font-size:10.5px;font-weight:500}.m-dots button{z-index:1;position:relative}.m-dots button[aria-current=date]{color:#fff}.m-day{touch-action:pan-y;padding:16px 16px 0}.m-day.m-from-right{animation:.32s cubic-bezier(.22,1,.36,1) m-slide-right}.m-day.m-from-left{animation:.32s cubic-bezier(.22,1,.36,1) m-slide-left}@keyframes m-slide-right{0%{opacity:.3;transform:translate(40px)}to{opacity:1;transform:none}}@keyframes m-slide-left{0%{opacity:.3;transform:translate(-40px)}to{opacity:1;transform:none}}.is-mobile .grid{height:1182px;margin:6px 6px 0}.is-mobile .day-head{font-size:17px}.is-mobile .day-date{font-size:13px}.is-mobile .lab-toggle{font-size:12px}.is-mobile .lab-toggle input{width:16px;height:16px}.is-mobile .lab-toggle-ab{flex-direction:row;align-items:center;gap:14px;font-size:12px}.is-mobile .lab-toggle-ab label{gap:5px}.is-mobile .hour-label{font-size:12px!important}.is-mobile .chip-placed.chip-meal{font-size:12px}.is-mobile .chip-placed.chip-chore{font-size:11px}.is-mobile .screens-off span{padding:3px 7px;font-size:10px}.is-mobile .note-dot{width:9px;height:9px;top:6px;right:6px}.is-mobile .resize-handle{display:none}.is-mobile .block .brand-mark{height:50%;max-height:300px;bottom:0;left:0}.m-drawer-backdrop{z-index:45;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f172a66;animation:.2s ease-out m-fade;position:fixed;inset:0}.m-drawer{background:#f5f7fb;flex-direction:column;gap:14px;width:min(88vw,380px);padding:14px 14px 32px;animation:.3s cubic-bezier(.22,1,.36,1) m-drawer-in;display:flex;position:absolute;top:0;bottom:0;left:0;overflow-y:auto;box-shadow:20px 0 50px -20px #0f172a80}@keyframes m-fade{0%{opacity:0}}@keyframes m-drawer-in{0%{transform:translate(-100%)}}.m-drawer>*{flex-shrink:0}.m-drawer-head{justify-content:space-between;align-items:center;display:flex}.m-drawer-head b{letter-spacing:-.02em;font-size:18px;font-weight:800}.m-drawer .planner-nav{align-self:flex-start;margin:0;font-size:13px}.m-drawer .planner-nav a{padding:7px 14px}.m-drawer .planner-legend{border-radius:16px;flex-wrap:wrap;justify-content:flex-start;gap:12px 16px;padding:12px 14px;font-size:14px}.m-drawer .planner-legend .undo-button{display:none}.m-drawer .swatch{width:18px;height:18px}.m-drawer .key-box{min-height:0;padding:16px}.m-drawer .key-rows{flex:none;gap:10px}.m-drawer .key-title span{font-size:18px}.m-drawer .key-title i{font-size:12px}.m-drawer .key-row-name{font-size:15px}.m-drawer .key-row-need{padding-left:26px;font-size:12.5px}.m-drawer .key-actions .btn-xs{padding:6px 10px;font-size:13px}.m-drawer .tray{padding:16px;overflow:visible}.m-drawer .tray>.tray-hint,.m-drawer .tray>.chip,.m-drawer .tray>.chip-slot,.m-drawer .tray>.tray-button,.m-drawer .tray>div[style]{display:none}.m-drawer .palettes{border-top:0;grid-template-columns:1fr 1fr;gap:10px;margin-top:0;padding-top:0;display:grid}.m-drawer .palettes .tray-hint{grid-column:1/-1;font-size:12px}.m-drawer .palette-name{font-size:13px}.m-drawer .palette-strip{height:18px}.m-drawer .save-user{grid-column:1/-1;padding:10px;font-size:12px}.m-drawer .tray-footer{padding-top:16px}.m-drawer .tray-icon{height:44px}@media (max-width:767px){.modal.modal-notes{width:94vw!important;height:72vh!important}.notes-head{gap:10px;padding:14px 14px 12px 16px}.notes-title{font-size:17px}.notes-saved{display:none}.class-notes{grid-template-columns:1fr;grid-auto-rows:minmax(130px,auto)}.modal{max-width:94vw}}@media (prefers-reduced-motion:reduce){.m-day.m-from-right,.m-day.m-from-left,.m-drawer,.m-drawer-backdrop{animation:none}}@media print{body,html,.planner-page,.planner{background:0 0}.key-box,.tray,.planner-legend,.grid:before{box-shadow:none}.planner{break-inside:avoid;width:100%;height:7.7in;min-height:0;box-shadow:none}.planner,.planner *{-webkit-print-color-adjust:exact;print-color-adjust:exact}[data-handle],.resize-handle,.tray-button,.palettes,.tray-icons,.undo-button,.planner-nav,.key-actions,.save-user,.planner-error,.chip-slot{display:none!important}@page{size:landscape;margin:.25in}}
