@font-face{font-family:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(../media/dm-sans-latin-ext-wght-normal.0x9ccydb91kkt.woff2)format("woff2-variations");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:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(../media/dm-sans-latin-wght-normal.0fpdy-lufm69d.woff2)format("woff2-variations");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:Newsreader Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(../media/newsreader-vietnamese-wght-normal.0r91virwwy7i7.woff2)format("woff2-variations");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:Newsreader Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(../media/newsreader-latin-ext-wght-normal.0b8fr24hsg_rp.woff2)format("woff2-variations");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:Newsreader Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(../media/newsreader-latin-wght-normal.1tkuwlnjs9jrl.woff2)format("woff2-variations");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:Newsreader Variable;font-style:italic;font-display:swap;font-weight:200 800;src:url(../media/newsreader-vietnamese-wght-italic.1ymvw8tmqwo_9.woff2)format("woff2-variations");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:Newsreader Variable;font-style:italic;font-display:swap;font-weight:200 800;src:url(../media/newsreader-latin-ext-wght-italic.2xfwkckxizj7s.woff2)format("woff2-variations");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:Newsreader Variable;font-style:italic;font-display:swap;font-weight:200 800;src:url(../media/newsreader-latin-wght-italic.0psn95x5q5t7r.woff2)format("woff2-variations");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}
:root{--canvas:#eae8df;--paper:#f8f6ee;--surface:#fffdf7;--ink:#203b32;--forest:#173e32;--forest-light:#244f40;--muted:#62695e;--line:#d6d8c9;--brass:#b79654;--brass-ink:#74521e;--butter:#f1e4c3;--tomato:#a23e2d;--sans:"DM Sans Variable", Arial, sans-serif;--serif:"Newsreader Variable", Georgia, serif;--mono:"SFMono-Regular", Consolas, "Liberation Mono", monospace;color:var(--ink);background:var(--canvas);font:16px var(--sans);font-synthesis:none;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{background-color:var(--canvas);background-image:radial-gradient(#344b3510 .65px,#0000 .65px);background-size:5px 5px;margin:0}::selection{color:#183d31;background:#dcc895}main{max-width:880px;margin:0 auto;padding:28px 28px 72px}header{background:var(--forest);color:var(--paper);border:1px solid #ffffff12;border-radius:18px;justify-content:space-between;align-items:center;gap:12px;padding:22px 24px;display:flex;box-shadow:0 5px 16px #203b3210}.brand{align-items:center;gap:12px;min-width:0;display:flex}.brand-mark{color:#d9c18a;flex:0 0 48px;width:48px;height:48px}.brand strong{text-transform:uppercase;letter-spacing:.17em;overflow-wrap:anywhere;font-size:18px;font-weight:650;line-height:1.4;display:block}.brand>div{min-width:0}.brand span{color:#d0d9c7;letter-spacing:.02em;margin-top:4px;font-size:11px;font-weight:400;display:block}svg{vertical-align:middle;display:inline-block}button>svg,.attachment>svg{flex-shrink:0;width:20px;height:20px;margin-right:7px}header .signout{color:var(--paper);white-space:nowrap;align-items:center;gap:5px;padding:12px 8px;font-size:13px;display:inline-flex}header .signout svg{width:17px;height:17px;margin:0}h1{font-family:var(--serif);letter-spacing:-.035em;overflow-wrap:anywhere;margin:24px 0 14px;font-size:clamp(36px,6vw,52px);font-weight:500;line-height:1.06}h2{font-family:var(--serif);letter-spacing:-.015em;margin:12px 0;font-size:29px;font-weight:500;line-height:1.16}p{margin:12px 0;line-height:1.65}strong{font-weight:650}button,.attachment{font:600 15px var(--sans);background:var(--forest);min-height:52px;color:var(--surface);cursor:pointer;touch-action:manipulation;border:1px solid #0000;border-radius:9px;padding:14px 19px;line-height:1.4;text-decoration:none}button:disabled{opacity:.55;cursor:not-allowed}button:focus-visible,a:focus-visible,summary:focus-visible{outline-offset:4px;outline:3px solid #b17725}button:active:not(:disabled){transform:translateY(1px)}form>button{width:100%;margin-top:10px}.text{color:var(--forest);background:0 0}.secondary{color:var(--forest);background:#e2e6d8;border-color:#d0d7c5}.danger{color:var(--tomato)}.eyebrow,.section-kicker{overflow-wrap:anywhere;font:500 11px/1.6 var(--mono);text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin:22px 0 12px}.section-kicker{color:var(--brass-ink);margin-top:26px}.heading{justify-content:space-between;align-items:center;gap:14px;display:flex}.heading h1{margin-top:12px}.count{font:500 11px/1.5 var(--mono);color:var(--forest);background:#e3e6d9;border:1px solid #cbd0bd;border-radius:7px;flex-shrink:0;padding:8px 11px}.intro{color:var(--muted);max-width:53ch;margin:0 0 23px}.muted,small{color:var(--muted);font-size:13px;line-height:1.6}label{margin:22px 0 8px;font-size:14px;font-weight:650;line-height:1.6;display:block}input,select,textarea{width:100%;min-width:0;font:400 16px/1.5 var(--sans);background:var(--surface);min-height:52px;color:var(--ink);border:1px solid #7d8d75;border-radius:8px;margin-top:8px;padding:14px;display:block;box-shadow:inset 0 1px #fff8}input::placeholder,textarea::placeholder{color:#74786e}input:focus,select:focus,textarea:focus{outline-offset:2px;border-color:var(--forest);outline:2px solid #55735a}input[type=file]{padding:12px;font-size:13px}input[type=file]::file-selector-button{font:600 13px var(--sans);color:var(--forest);background:#e4e8db;border:0;border-radius:5px;margin-right:12px;padding:8px 10px}textarea{resize:vertical;min-height:110px}nav{gap:8px;margin:18px 0;display:flex}nav button{flex:1}.app-navigation{z-index:20;-webkit-backdrop-filter:blur(14px);background:#eeeee5ed;border-radius:14px;margin:12px 0 24px;position:sticky;top:8px}.household-nav{border:1px solid #cbd0c1;border-radius:13px;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;margin:0;padding:5px;display:grid;box-shadow:0 2px 5px #203b3207}.household-nav button{border-radius:9px;flex-direction:column;justify-content:center;align-items:center;gap:7px;min-width:0;min-height:65px;padding:9px 2px;font-size:13px;font-weight:550;display:flex}.household-nav button>svg{width:21px;height:21px;margin:0}.active,.household-nav .active{background:var(--forest);color:var(--paper)}.household-nav .active>svg{color:#dfc686}.more-sections{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;padding:10px 4px 4px;display:grid}.more-sections button{text-align:left;background:var(--surface);border:1px solid var(--line);min-width:0;color:var(--forest);align-items:center;gap:8px;padding:12px;font-size:13px;display:flex;box-shadow:0 2px 3px #203b3205}.more-sections button>svg{width:22px;height:22px;margin:0}.more-sections .active{color:var(--paper);background:var(--forest)}.more-sections button:last-child:nth-child(odd){flex-direction:row;grid-column:1/-1;align-items:center}.cards{align-items:start;gap:16px;margin-top:24px;display:grid}.card,.family-card{text-align:left;background:var(--surface);width:100%;color:var(--ink);overflow-wrap:anywhere;border:1px solid #d0d5c3;border-radius:12px;padding:22px;box-shadow:0 3px #d7dbca,0 6px 15px #26372c05}.card h2{margin:20px 0 9px;font-size:29px}.card>h2:first-child{margin-top:2px}.cardtop,.cardbottom{justify-content:space-between;align-items:center;gap:12px;display:flex}.cardbottom{border-top:1px dashed #cdd3c0;margin-top:19px;padding-top:16px;font-size:12px;line-height:1.6}.cardbottom strong{font-size:12px}.badge{width:fit-content;font:550 11px/1.5 var(--sans);letter-spacing:.015em;background:var(--butter);color:var(--brass-ink);border:1px solid #e1d2ab;border-radius:5px;padding:6px 9px;display:inline-block}.badge.signed,.badge.in_progress{color:#245547;background:#e2ede5;border-color:#c3d8c9}.badge.returned,.badge.done,.badge.completed{color:#425d38;background:#e7ecda;border-color:#cdd9ba}.badge.cancelled{color:#765c50;background:#eee5df;border-color:#dfcfc4}.overdue{color:var(--tomato);font-weight:650}.cardnote{color:#5a6857;margin-bottom:0;font-size:14px}section{border-top:1px solid #cbd1bf;margin-top:30px;padding-top:24px}.empty{text-align:center;background:#eff0e5;border:1px dashed #b9c3ac;border-radius:12px;margin-top:25px;padding:27px 22px}.empty-mark{color:#607757;width:64px;height:60px;margin:0 auto 13px;display:block}.empty h2{margin-top:8px;font-size:28px}.empty p{color:var(--muted);max-width:40ch;margin:10px auto;font-size:14px}footer{font:400 10px/1.8 var(--mono);letter-spacing:.02em;text-align:center;color:var(--muted);border-top:1px solid #d0d5c2;margin-top:34px;padding-top:22px}.back{margin:4px 0 10px;padding-left:0;font-size:13px;display:block}.attachment{background:var(--surface);color:var(--forest);border:1px solid #bfcbb3;justify-content:center;align-items:center;gap:3px;margin:24px 0;display:flex}.note{overflow-wrap:anywhere;background:#f0e8d4;border:1px solid #dfd2b3;border-radius:10px;padding:20px}.note small{font:500 10px/1.5 var(--mono);letter-spacing:.11em;color:#7b6434}.note p:last-child{margin-bottom:0}.note p:first-child{margin-top:0}.timeline{padding-left:6px;list-style:none}.timeline li{overflow-wrap:anywhere;border-left:1px solid #b5c1a7;padding:2px 0 28px 22px;position:relative}.timeline li:before{content:"";background:var(--brass);outline:4px solid var(--canvas);border-radius:50%;width:7px;height:7px;position:absolute;top:9px;left:-4px}.timeline strong{font-size:14px}.timeline time{font:400 11px/1.6 var(--mono);color:var(--muted);margin-top:6px;display:block}.timeline p{font-size:14px}.error,.notice{border:1px solid;border-left-width:3px;border-radius:8px;padding:14px 16px;font-size:14px}.error{color:#8c3529;background:#f5e5dc;border-color:#d7ada0}.notice{color:#38532b;background:#e4ecdc;border-color:#b9c9a5}.pickup-summary{background:var(--forest);color:var(--surface);border:1px solid var(--forest);border-radius:13px;margin:24px 0 20px;padding:23px;position:relative;overflow:hidden;box-shadow:0 4px 12px #1f3d3010}.pickup-summary:after{content:"";pointer-events:none;border:1px solid #cbb57c25;border-radius:50%;width:115px;height:115px;position:absolute;bottom:-47px;right:-38px;box-shadow:0 0 0 9px #cbb57c07,0 0 0 19px #cbb57c07}.pickup-summary h2{margin:0;font-size:28px}.pickup-summary p{color:#e1e8d8;margin:12px 0 0;font-size:14px}.pickup-summary .text{color:#eed69c;white-space:nowrap;min-height:48px;padding:7px 0 7px 8px;font-size:12px}.pickup-summary .pickup-time{color:var(--surface);margin-top:18px}.pickup-summary .pickup-date{font-family:var(--mono);color:#d7dfc9;letter-spacing:.04em;font-size:12px;font-weight:400;display:block}.pickup-summary .pickup-clock{font-family:var(--serif);margin-top:4px;font-size:36px;font-weight:450;line-height:1.25;display:block}.pickup-time{font-variant-numeric:lining-nums tabular-nums;font-size:18px;font-weight:600;line-height:1.6}.pickup-filters,.homework-filters,.family-filters{border-bottom:1px solid #c9d0bc;gap:5px;margin:24px 0 18px;padding-bottom:7px;display:flex}.pickup-filters button,.homework-filters button,.family-filters button{border-radius:7px;flex:1;min-width:0;padding:11px 8px;font-size:13px}.pickup-facts{grid-template-columns:92px 1fr;gap:18px;margin:26px 0;font-size:15px;line-height:1.6;display:grid}.pickup-facts dt{color:var(--muted)}.pickup-facts dd{overflow-wrap:anywhere;margin:0;font-weight:600}.pickup-actions,.homework-actions,.family-actions{gap:11px;margin-top:18px;display:grid}.pickup-confirm{background:#efe5ce;border:1px solid #dcc8a5;border-radius:10px;padding:19px}.pickup-confirm button{width:100%;margin-top:8px}.pickup-planner .note,.homework-planner .note,.family-section .note{margin-top:22px}.pickup-planner form,.homework-planner form{margin-bottom:26px}.homework-summary{background:var(--surface);border:1px solid #cdd4bf;border-radius:13px;margin:20px 0 24px;padding:21px;box-shadow:0 3px #d8ddcc}.homework-summary h2{margin:0;font-size:27px}.homework-summary>.cardtop{gap:8px}.homework-summary .text{min-height:48px;padding:7px 0 7px 8px;font-size:12px}.homework-mini-list{gap:8px;margin-top:17px;display:grid}.homework-mini{color:var(--ink);text-align:left;overflow-wrap:anywhere;background:#eff1e6;border:1px solid #dde2d0;border-left:3px solid #a6b68d;border-radius:6px;gap:7px;padding:16px;display:grid}.homework-mini strong{font-size:15px}.homework-mini span{font-size:12px;font-weight:450;line-height:1.6}.homework-planner .card,.homework-planner .timeline{overflow-wrap:anywhere}.family-section .preserve-lines{white-space:pre-wrap;overflow-wrap:anywhere}.family-section .card .eyebrow{letter-spacing:.04em;margin-top:14px;font-size:10px}.entry-amount{font-family:var(--serif);font-variant-numeric:lining-nums tabular-nums;font-size:34px;font-weight:500;line-height:1.2}.family-actions{margin:26px 0}.family-actions .note button{width:100%;margin-top:10px}.money-summary{border:1px solid var(--forest);background:var(--forest);color:var(--surface);border-radius:13px;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin:24px 0;padding:25px;display:grid}.money-summary div:last-of-type{border-top:1px dashed #aab39766;grid-column:1/-1;padding-top:19px}.money-summary small{color:#d8ddb9;font:400 10px/1.6 var(--mono);text-transform:uppercase;letter-spacing:.09em;display:block}.money-summary strong{font:450 36px/1.15 var(--serif);font-variant-numeric:lining-nums tabular-nums;overflow-wrap:anywhere;margin-top:8px;display:block}.money-summary div:last-of-type strong{color:#eed9a4;font-size:48px}.money-summary p{color:#d0dcc7;grid-column:1/-1;margin:0;font-size:12px;line-height:1.6}.check-label{align-items:center;gap:12px;min-height:50px;margin:14px 0;display:flex}.check-label input[type=checkbox],.check-label input[type=radio],.routine-check input[type=checkbox]{width:26px;height:26px;min-height:26px;accent-color:var(--forest);box-shadow:none;flex:0 0 26px;margin:0}.weekdays{border:1px solid #b4c0a6;border-radius:9px;margin-top:22px;padding:12px 17px}.weekdays legend{padding:0 7px;font-size:14px;font-weight:550}.weekdays .check-label{margin:0}.routine-check{align-items:flex-start;gap:14px;min-height:52px;margin:0;display:flex}.routine-check span{gap:7px;min-width:0;display:grid}.routine-check strong{font-family:var(--serif);font-size:27px;font-weight:500;line-height:1.15}.routine-check small{font-size:12px;font-weight:400}.family-card .text{margin:12px 0 0 26px;font-size:12px;display:block}.routine-day{margin-bottom:0}.family-section .timeline details{padding-top:8px;font-size:14px}.family-section details summary{cursor:pointer;min-height:46px;padding:11px 0;font-size:13px;font-weight:550}.check-history{padding-left:20px;font-size:14px;line-height:1.9}.login{background:var(--paper);border:1px solid #cbd0bc;border-radius:20px;grid-template-columns:1.05fr 1fr;max-width:970px;margin:64px auto;padding:0;display:grid;overflow:hidden;box-shadow:0 16px 60px #253b3410}.login>section{border:0;margin:0}.login-story{background:var(--forest);color:var(--paper);flex-direction:column;align-items:flex-start;padding:34px;display:flex}.login-story-copy{margin-top:42px}.login-story .section-kicker{color:#d9c18b;margin:0 0 20px}.login-story h1{letter-spacing:-.035em;margin:0 0 20px;font-size:clamp(42px,5.2vw,60px);font-weight:400;line-height:1.02}.login-story h1 em{color:#e1c88e;font-weight:350}.login-story-copy>p:last-child{color:#d8e0ce;max-width:30ch;font-size:15px}.prep-illustration{color:#d4be85;width:100%;max-width:290px;height:auto;margin:18px 0 8px;display:block}.login-story-foot{color:#bdcdb5;font:400 10px/1.6 var(--mono);letter-spacing:.015em;margin-top:auto;padding-top:22px}.login-panel{flex-direction:column;justify-content:center;padding:36px;display:flex}.login-panel>.section-kicker{margin-top:0}.login form{margin:0}.login form h2{margin:10px 0;font-size:40px}.login form>.muted{margin-bottom:30px}.login form>button{margin-top:28px}.login-privacy{color:var(--muted);align-items:center;gap:8px;margin:28px 0 0;font-size:12px;display:flex}.login-privacy>span{color:var(--brass-ink);font-size:24px;line-height:0}.auth-switch{width:100%;margin-top:15px;font-size:14px}.team-choice{border:1px solid #a4b297;border-radius:9px;margin:24px 0;padding:10px 16px}.team-choice legend{padding:0 7px;font-size:14px;font-weight:600}.team-choice .check-label{margin:0;font-size:13px}.team-settings{overflow-wrap:anywhere}.team-preview{background:var(--forest);color:var(--paper);overflow-wrap:anywhere;border-radius:13px;margin:24px 0;padding:24px}.team-preview small{font:400 11px/1.6 var(--mono);color:#d9c18a;text-transform:uppercase;letter-spacing:.06em;display:block}.team-preview output{font:450 40px/1.15 var(--serif);margin-top:12px;display:block}.team-members{border:1px solid var(--line);background:var(--surface);border-radius:9px;padding:0;list-style:none}.team-members li{overflow-wrap:anywhere;padding:16px}.team-members li+li{border-top:1px dashed var(--line)}.team-settings .note button{width:100%}.team-settings section>button{margin-top:16px}.team-welcome{background:#eff0e5;border:1px dashed #a4b297;border-radius:10px;margin-bottom:22px;padding:18px}.team-welcome p{margin-top:0;font-size:14px}@media (min-width:760px){main{padding-top:36px}header{padding:25px 30px}.household-nav button{flex-direction:row;gap:10px;min-height:58px;padding:12px;font-size:14px}.more-sections{grid-template-columns:repeat(4,minmax(0,1fr))}.more-sections button{flex-direction:column;align-items:flex-start;gap:12px;padding:16px;font-size:13px}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.pickup-summary{padding:27px}}@media (max-width:760px){.login{max-width:480px;margin:20px auto;display:block}.login-story{padding:26px}.login-story-copy{margin-top:29px}.login-story h1{font-size:44px}.signup .login-story-copy h1,.prep-illustration,.login-story-foot{display:none}.login-story-copy>p:last-child{margin-bottom:0}.login-panel{padding:28px 26px}.login form h2{font-size:34px}.login form>.muted{margin-bottom:22px}}@media (max-width:480px){main{padding:18px 16px 48px}header{border-radius:13px;padding:18px 16px}.brand-mark{flex-basis:40px;width:40px;height:40px}.brand{gap:10px}.brand strong{letter-spacing:.13em;font-size:15px}.brand span{font-size:10px}.login{margin:12px}.app-navigation{top:5px}.card,.family-card,.pickup-summary,.homework-summary{padding:19px}.pickup-summary h2{font-size:26px}.homework-summary h2{font-size:25px}.cardbottom{flex-direction:column;align-items:flex-start;gap:6px}.money-summary{padding:21px}}@media (max-width:360px){.brand-mark{flex-basis:34px;width:34px;height:34px}.brand strong{font-size:14px}.brand span{font-size:9px}.brand{gap:8px}header .signout{gap:3px;padding:10px 2px;font-size:12px}header .signout svg{width:15px}.household-nav button{font-size:12px}.login-story{padding:22px}.login-story h1{font-size:39px}.login-panel{padding:24px 22px}.pickup-summary .text,.homework-summary .text{font-size:11px}.pickup-summary h2,.homework-summary h2{font-size:24px}.more-sections button{gap:6px;padding:10px;font-size:12px}.more-sections button>svg{width:19px;height:19px}.pickup-facts{grid-template-columns:78px 1fr;gap:13px;font-size:14px}}@media (hover:hover){button:hover:not(:disabled){filter:brightness(.96)}.card:hover{border-color:#8f9f7e;box-shadow:0 4px #c8d1b9,0 8px 20px #203b3208}.text:hover{background:#657d4a0b}header .text:hover{background:#ffffff0b}}@media (prefers-reduced-motion:no-preference){button,input,textarea,select{transition:background-color .14s,border-color .14s,box-shadow .14s}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}@media (forced-colors:active){button,.card,.badge,.household-nav{border:1px solid canvastext}}
