@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-sans-latin-400-normal-CW0RaeGs.woff2)format("woff2"),url(/assets/dm-sans-latin-400-normal-BwCSEQnW.woff)format("woff")}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/dm-sans-latin-500-normal-B9HHJjqV.woff2)format("woff2"),url(/assets/dm-sans-latin-500-normal-Dr3UlScf.woff)format("woff")}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/dm-sans-latin-600-normal-Aqo67rzb.woff2)format("woff2"),url(/assets/dm-sans-latin-600-normal-BmdmIIQ2.woff)format("woff")}@font-face{font-family:Fraunces;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fraunces-latin-400-normal-6IfK1voy.woff2)format("woff2"),url(/assets/fraunces-latin-400-normal-NUPT2cO8.woff)format("woff")}@font-face{font-family:Fraunces;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fraunces-latin-500-normal-DnGCNyPD.woff2)format("woff2"),url(/assets/fraunces-latin-500-normal-BTR4KCeb.woff)format("woff")}:root{color:#22362c;font-synthesis:none;-webkit-text-size-adjust:100%;--paper:#f4f1e9;--surface:#fbf9f3;--ink:#22362c;--muted:#5d685d;--faint:#8a9387;--line:#dcd9cc;--sage:#e4e9da;--sage-line:#cdd5c2;--green:#335a44;--rust:#a5512b;--glow:#fbeedd;--error:#983d36;--display:"Fraunces", Georgia, serif;--radius:14px;--header:0px;--tap:48px;background:#f4f1e9;font-family:DM Sans,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer;color:inherit;background:0 0;border:0;padding:0}button:disabled{cursor:default}a{color:inherit}:focus-visible{outline:3px solid var(--rust);outline-offset:2px}h1,h2,h3,h4,p{margin:0}h1{font-family:var(--display);letter-spacing:-.03em;font-size:clamp(32px,4vw,48px);font-weight:400;line-height:1.1}p{line-height:1.5}input,select{min-height:var(--tap);border:1px solid var(--line);background:var(--surface);width:100%;color:var(--ink);border-radius:10px;padding:10px 14px}input::placeholder{color:var(--faint)}label{font-size:14px;font-weight:500;display:block}label input,label select{margin-top:6px;display:block}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.wordmark{font-family:var(--display);letter-spacing:-.05em;white-space:nowrap;align-items:baseline;font-size:26px;text-decoration:none;display:flex}.wordmark span{color:var(--muted)}.wordmark i{background:var(--rust);border-radius:50%;width:7px;height:7px;margin-left:3px}.button{min-height:var(--tap);border:1px solid var(--line);background:var(--surface);border-radius:10px;justify-content:center;align-items:center;gap:9px;padding:10px 18px;font-size:15px;font-weight:600;transition:background .18s;display:inline-flex}.button:disabled{opacity:.55}.button:hover:not(:disabled){background:var(--sage)}.button--primary{background:var(--green);color:var(--surface);border-color:var(--green)}.button--primary:hover:not(:disabled){background:var(--ink)}.button--quiet{background:0 0;border-color:#0000}.text-link{text-underline-offset:4px;align-items:center;gap:6px;min-height:44px;padding:12px 0;font-size:14px;font-weight:500;text-decoration:underline;display:inline-flex}.chip{border:1px solid var(--line);background:var(--surface);white-space:nowrap;border-radius:999px;flex-shrink:0;align-items:center;gap:6px;min-height:44px;padding:0 16px;font-size:15px;font-weight:500;display:inline-flex}.chip[aria-checked=true]{background:var(--green);border-color:var(--green);color:var(--surface)}.count{background:var(--green);min-width:1.6em;height:1.6em;color:var(--surface);letter-spacing:0;vertical-align:.25em;border-radius:999px;justify-content:center;align-items:center;margin-left:10px;padding:0 .45em;font:600 15px/1 DM Sans,sans-serif;display:inline-flex}.notice{border:1px solid var(--line);background:var(--sage);border-radius:10px;flex-wrap:wrap;align-items:center;gap:4px 12px;margin:0 0 12px;padding:10px 14px;font-size:15px;line-height:1.4;display:flex}.notice--error{color:var(--error);background:#fbeee6;border-color:#ebcdbf}.notice__action{text-underline-offset:3px;align-items:center;gap:6px;min-height:40px;margin-left:auto;font-weight:600;text-decoration:underline;display:inline-flex}.quiet-line{color:var(--muted);padding:10px 0;font-size:16px}.app-header{z-index:10;background:var(--paper);border-bottom:1px solid var(--line);align-items:center;gap:24px;height:60px;padding:0 20px;display:flex;position:sticky;top:0}.app-header nav{gap:6px;margin:auto;display:flex}.app-header nav button{min-height:44px;color:var(--muted);border-radius:10px;align-items:center;gap:8px;padding:8px 16px;font-size:15px;font-weight:500;display:flex}.app-header nav button.active{background:var(--sage);color:var(--green)}.avatar{border:1px solid var(--line);width:36px;height:36px;font-family:var(--display);background:var(--surface);border-radius:50%;justify-content:center;align-items:center;display:flex}.app-main{max-width:1200px;margin:0 auto;padding:24px 20px 40px}.app-main--narrow{max-width:640px}.app-notice{padding:12px 20px 0}.dashboard{flex-direction:column;gap:12px;padding:12px;display:flex}.dashboard>*{min-width:0;animation:.45s cubic-bezier(.16,1,.3,1) both arrive}.dashboard__glance{background:var(--sage);border-radius:var(--radius)}.dashboard__schedule,.dashboard__shopping{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:16px 18px}.dashboard__schedule{animation-delay:60ms}.dashboard__shopping{animation-delay:.12s}.clock__time{font-family:var(--display);letter-spacing:-.045em;font-variant-numeric:lining-nums proportional-nums;white-space:nowrap;font-size:56px;line-height:.95;display:block}.clock__period{letter-spacing:.02em;color:var(--muted);margin-left:.35em;font-family:DM Sans,sans-serif;font-size:.3em;font-weight:600}.clock__date{margin-top:6px;font-size:18px;line-height:1.25}.clock__date span{color:var(--muted);white-space:nowrap}.weather{gap:10px;display:grid}.weather--quiet{color:var(--muted);justify-items:start;gap:8px;font-size:16px}.weather__now{align-items:center;gap:14px;display:flex}.weather__now svg{color:var(--green)}.weather__temp{font-family:var(--display);letter-spacing:-.05em;font-size:64px;line-height:.95}.weather__summary{font-size:15px;line-height:1.35;display:grid}.weather__summary strong{font-size:18px;font-weight:600}.weather__summary span{color:var(--muted)}.forecast{border-top:1px solid var(--sage-line);margin:0;padding:8px 0 0;list-style:none;display:grid}.forecast li{font-variant-numeric:tabular-nums;grid-template-columns:3.2em 26px 2.4em minmax(40px,1fr) 2.4em;align-items:center;gap:8px;min-height:38px;font-size:16px;display:grid}.forecast__day{font-weight:600}.forecast li svg{color:var(--muted)}.forecast__low{text-align:right;color:var(--muted)}.forecast__high{font-weight:600}.forecast__range{background:var(--sage-line);border-radius:3px;height:6px;position:relative}.forecast__range i{top:0;bottom:0;left:calc(var(--from) * 100%);right:calc((1 - var(--to)) * 100%);background:linear-gradient(90deg, #6f927b, #d39a55 70%, var(--rust));border-radius:3px;min-width:6px;position:absolute}.forecast__range b{top:50%;left:calc(var(--at) * 100%);background:var(--surface);border:3px solid var(--ink);border-radius:50%;width:12px;height:12px;margin:-6px 0 0 -6px;position:absolute}.weather__source{color:var(--muted);font-size:13px}.weather__source.is-stale{color:var(--error)}.glance{isolation:isolate;--muted:#505b51;--span:calc(100vw - 24px);--fall:520px;--cloud-dur:150s;--leaf-dur:19s;--spin-k:1.6;--sway-dur:7s;--sway-amp:1.5deg;--tilt:4deg;--drift:.07;--hill:#d3dbc6;--grass:#93a582;position:relative;overflow:hidden}.glance[data-wind=breeze]{--cloud-dur:110s;--leaf-dur:13s;--spin-k:1.2;--sway-dur:5s;--sway-amp:3deg;--tilt:9deg;--drift:.16}.glance[data-wind=wind]{--cloud-dur:72s;--leaf-dur:8.5s;--spin-k:.9;--sway-dur:3.4s;--sway-amp:5deg;--tilt:15deg;--drift:.27}.glance[data-wind=gale],.glance[data-dry]{--cloud-dur:46s;--leaf-dur:5.8s;--spin-k:.7;--sway-dur:2.4s;--sway-amp:7deg;--tilt:20deg;--drift:.36}.glance[data-season=spring]{--hill:#cad8b4;--grass:#7f9a63}.glance[data-season=summer]{--hill:#ddd5b2;--grass:#b6a56e}.glance[data-season=fall]{--hill:#d8cfb3;--grass:#a89466}.glance__content{z-index:1;gap:14px;padding:18px 18px 0;display:grid;position:relative}.glance__foot{gap:4px;padding-bottom:46px;display:grid}.glance[data-season=spring] .glance__foot{padding-bottom:76px}.sky,.sky *{pointer-events:none}.sky{z-index:0;position:absolute;inset:0;overflow:hidden}.sky>*{position:absolute}.sky[data-paused] *,.sky[data-paused] :after{animation-play-state:paused}.sky__wash{opacity:0;transition:opacity 4s;inset:0}.sky__wash--heat{opacity:var(--heat);background:linear-gradient(195deg,#f6c985 0%,#f5dcae 30%,#f2e6c9 58%,#f2e6c900 88%)}.sky__wash--cloud{opacity:calc(var(--cloud) * .9);background:linear-gradient(#d8dcd5 0%,#dfe2da 55%,#dfe2da00 100%)}.sky__wash--night{background:linear-gradient(#c8d0d4 0%,#d4dad6 50%,#dde2d8 100%)}.glance[data-night] .sky__wash--night{opacity:.95}.sky__wash--wet{background:linear-gradient(#cdd4d4 0%,#d8ded8 60%,#e0e4dc 100%)}.glance[data-sky=rain] .sky__wash--wet,.glance[data-sky=fog] .sky__wash--wet,.glance[data-sky=snow] .sky__wash--wet{opacity:.85}.sky__wash--dry{background:linear-gradient(#efdcc2 0%,#f2c697 36%,#efab6c 70%,#eb9750 100%)}.sky__wash--ember{background:radial-gradient(95% 45% at 18% 100%,#e2702a6b,#e2702a00 70%)}.glance[data-dry] .sky__wash--dry{opacity:1}.glance[data-dry] .sky__wash--ember{opacity:1;transition:none;animation:12s ease-in-out infinite alternate smolder}.glance[data-dry]{--muted:#41301f;--hill:#d9874a;--grass:#8a4d22}.sky__sun{width:280px;height:280px;opacity:var(--sun);transform:scale(calc(.8 + var(--heat) * .45));background:radial-gradient(circle,#fff9e6 0 17%,#fadca0bf 30%,#f7c87800 68%);border-radius:50%;transition:opacity 4s,transform 4s;top:-96px;right:-96px}.sky__sun:after{content:"";opacity:var(--heat);background:radial-gradient(circle,#f0a8508c 0%,#f0a85000 62%);border-radius:50%;animation:14s ease-in-out infinite alternate breathe;position:absolute;inset:-10%}.sky__cloud{top:var(--top);width:230px;height:92px;opacity:calc(.45 + var(--cloud) * .4);transform:translate3d(-260px, 0, 0) scale(var(--s));animation:cloud-drift var(--cloud-dur) linear infinite var(--delay);will-change:transform;background:radial-gradient(closest-side,#ffffffd9,#fff0) 18% 62%/46% 70% no-repeat,radial-gradient(closest-side,#ffffffe6,#fff0) 46% 40%/52% 86% no-repeat,radial-gradient(closest-side,#fffc,#fff0) 76% 60%/44% 66% no-repeat,radial-gradient(closest-side,#b0b8b052,#b0b8b000) 50% 92%/84% 34% no-repeat;left:0}.glance[data-sky=cloudy] .sky__cloud,.glance[data-sky=rain] .sky__cloud{opacity:.7}.sky__streak{top:var(--top);opacity:0;width:130px;height:1.5px;animation:streak calc(var(--leaf-dur) * .55) cubic-bezier(.4, 0, .7, 1) infinite var(--delay);background:linear-gradient(90deg,#fff0,#ffffffd9,#fff0);border-radius:1px;left:0}.glance[data-dry] .sky__streak{background:linear-gradient(90deg,#ffecd200,#ffecd2bf,#ffecd200)}.sky__drop,.sky__flake{top:-24px;left:var(--x)}.sky__drop{width:1.5px;height:16px;animation:fall 1.7s linear infinite var(--delay);background:linear-gradient(#40586000,#4058606b)}.sky__flake{width:5px;height:5px;animation:fall 11s linear infinite calc(var(--delay) * 6);background:#ffffffe6;border-radius:50%}.sky__ground{width:100%;height:30px;bottom:0;left:0}.ground__hill{fill:var(--hill);transition:fill 4s}.ground__grass{fill:none;stroke:var(--grass);stroke-width:1.3px;stroke-linecap:round}.flower{bottom:9px;left:var(--x);transform:translate(-50%)}.flower__shape{transform-origin:50% 100%;animation:sway var(--sway-dur) ease-in-out infinite alternate var(--delay);display:block;overflow:visible}.flower__stem{fill:none;stroke:#5f7f4f;stroke-width:1.6px;stroke-linecap:round}.flower__leaf,.flower__bud{fill:#7c9a63}.flower__poppy path{fill:#ec8a2b}.flower__poppy .flower__poppy-inner{fill:#f6b551}.flower__lupine ellipse{fill:#6d78b2}.flower__lupine ellipse:nth-child(2n){fill:#8f98c8}.flower__yarrow circle{fill:#f7f1de;stroke:#c3bb9c;stroke-width:.7px}.leaf{left:0}.leaf--resting{bottom:5px;left:var(--x);transform:rotate(var(--r));opacity:.85}.leaf--flying{top:var(--y);animation:leaf-fly var(--leaf-dur) linear infinite var(--delay);will-change:transform;transform:translate(-30px)}.leaf__shape{display:block}.leaf--flying .leaf__shape{opacity:.38;animation:spin calc(var(--spin) * var(--spin-k)) linear infinite}.leaf__shape path{fill:#b5602e}.leaf__shape--1 path{fill:#c98a35}.leaf__shape--2 path{fill:#8f7a3c}.leaf__shape .leaf__rib{fill:none;stroke:#3c231459;stroke-width:.6px}@keyframes cloud-drift{0%{transform:translate3d(-260px, 0, 0) scale(var(--s))}to{transform:translate3d(calc(var(--span) + 30px), 0, 0) scale(var(--s))}}@keyframes leaf-fly{0%{opacity:0;transform:translate(-30px,-12px)}8%{opacity:1}35%{transform:translate3d(calc(var(--span) * .32), 6px, 0)}62%{transform:translate3d(calc(var(--span) * .62), -8px, 0)}92%{opacity:1}to{transform:translate3d(calc(var(--span) + 30px), 6px, 0);opacity:0}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes sway{0%{transform:rotate(calc(var(--sway-amp) * -.4))}to{transform:rotate(var(--sway-amp))}}@keyframes streak{0%{opacity:0;transform:translate(-140px)}30%{opacity:.9}70%{opacity:.6}to{transform:translate3d(calc(var(--span) + 20px), 10px, 0);opacity:0}}@keyframes fall{0%{transform:translate3d(0, 0, 0) rotate(calc(var(--tilt) * -1))}to{transform:translate3d(calc(var(--fall) * var(--drift)), var(--fall), 0) rotate(calc(var(--tilt) * -1))}}@keyframes breathe{0%{opacity:calc(var(--heat) * .5)}to{opacity:var(--heat)}}@keyframes smolder{0%{opacity:.45}to{opacity:1}}.moon{border-top:1px solid var(--sage-line);align-items:center;gap:14px;padding-top:12px;display:flex}.glance[data-dry] .moon{border-top-color:#41301f40}.moon__disc{flex:none}.moon__dark{fill:#34473b}.moon__lit{fill:#f7f1dc}.moon__rim{fill:none;stroke:#22362c8c;stroke-width:1px}.moon__text{color:var(--muted);margin:0;font-size:15px;line-height:1.3;display:grid}.moon__next{color:var(--ink);font-weight:500}.moon__text strong{font-family:var(--display);letter-spacing:-.01em;color:var(--ink);font-size:19px;font-weight:500}.weather__conditions{color:var(--muted);font-variant-numeric:tabular-nums;flex-wrap:wrap;align-items:center;gap:2px 6px;margin:0;font-size:15px;display:flex}.weather__conditions>span{white-space:nowrap}.weather__dry{color:#5a2810;letter-spacing:.04em;text-transform:uppercase;background:#ffeed673;border:1px solid;border-radius:999px;padding:1px 9px;font-size:13px;font-weight:700}.glance[data-dry] .weather__now svg{color:#5a2810}.glance[data-dry] .forecast{border-top-color:#41301f40}.glance[data-dry] .forecast__range{background:#41301f33}@media (width>=1000px){.glance{--span:320px;--fall:840px}.moon__text strong{font-size:21px}.moon__text,.weather__conditions{font-size:16px}}@media (prefers-reduced-motion:reduce){.sky__cloud{transform:translate3d(calc(var(--rest) * var(--span)), 0, 0) scale(var(--s))}.leaf--flying{transform:translate3d(calc(var(--rest) * (var(--span) - 20px)), 0, 0) rotate(calc(var(--rest) * 300deg))}.sky__drop,.sky__flake,.sky__streak{display:none}.glance[data-dry] .sky__wash--ember{opacity:.8}}.schedule{align-content:start;gap:18px;display:grid}.schedule--setup{justify-items:start;gap:12px}.schedule--setup .day__title{justify-self:stretch}.day__title{font-family:var(--display);letter-spacing:-.03em;border-bottom:2px solid var(--ink);justify-content:space-between;align-items:baseline;gap:12px;padding-bottom:8px;font-size:28px;font-weight:400;line-height:1.1;display:flex}.day__title span{letter-spacing:0;color:var(--muted);white-space:nowrap;font-family:DM Sans,sans-serif;font-size:15px}.day__title--later{border-bottom-width:1px;border-color:var(--line);padding-bottom:6px;font-size:21px}.allday{flex-wrap:wrap;gap:6px;margin:10px 0 0;padding:0;list-style:none;display:flex}.allday li{background:var(--sage);border-left:4px solid var(--green);border-radius:8px;padding:6px 12px;font-size:16px;font-weight:500}.allday small{color:var(--muted);font-weight:400}.events{margin:0;padding:0;list-style:none}.event{border-bottom:1px solid var(--line);grid-template-columns:5.6em minmax(0,1fr);align-items:baseline;gap:12px;padding:10px 0;display:grid}.event__time{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:18px;font-weight:600}.event__time small{color:var(--muted);margin-left:.25em;font-size:.7em;font-weight:500}.event__body{gap:2px;min-width:0;display:grid}.event__title{overflow-wrap:anywhere;font-size:19px;font-weight:500;line-height:1.25}.event__meta{color:var(--muted);align-items:center;gap:8px;font-size:14px;display:flex}.event__status{letter-spacing:.08em;text-transform:uppercase;color:var(--rust);font-size:12px;font-weight:700}.event--past .event__time,.event--past .event__title,.event--past .event__status{color:var(--faint)}.event--past .event__status:before{content:"✓ "}.events .event--now{background:var(--glow);box-shadow:inset 4px 0 0 var(--rust);border-bottom-color:#0000;border-radius:10px;margin:0 -12px;padding-left:12px;padding-right:12px}.event--now .event__status{background:var(--rust);color:var(--surface);border-radius:999px;padding:2px 8px}.event--next .event__title{font-weight:600}.events--later .event{border-bottom:0;padding:6px 0}.events--later .event__time{color:var(--muted);font-size:16px}.events--later .event__title{font-size:17px}.now-line{border-top:2px solid var(--rust);z-index:1;height:0;margin:-1px 0;position:relative}.now-line span{background:var(--rust);color:var(--surface);letter-spacing:.02em;white-space:nowrap;border-radius:999px;padding:1px 8px;font-size:12px;font-weight:700;position:absolute;top:50%;left:0;transform:translateY(-50%)}.quiet-line--end{border-top:1px dashed var(--line)}.shopping{flex-direction:column;gap:12px;min-height:0;display:flex}.column-title{font-family:var(--display);letter-spacing:-.03em;font-size:28px;font-weight:400;line-height:1.1}.add-item{gap:8px;display:grid}.add-item__row{gap:8px;display:flex}.add-item__row input{background:var(--paper);border-radius:12px;flex:1;min-width:0;min-height:54px;font-size:18px}.add-item__submit{background:var(--green);height:54px;color:var(--surface);border-radius:12px;flex:0 0 54px;justify-content:center;align-items:center;transition:opacity .18s;display:flex}.add-item__submit:disabled{opacity:.35}.add-item__details{gap:8px;min-width:0;animation:.2s cubic-bezier(.16,1,.3,1) both arrive;display:flex}.add-item__quantity{flex:0 0 5.5em;min-height:44px}.aisles{scrollbar-width:none;overscroll-behavior:contain;gap:6px;min-width:0;display:flex;overflow-x:auto}.aisles::-webkit-scrollbar{display:none}.shopping__lists{flex-direction:column;gap:16px;display:flex}.shopping__lists>*{flex-shrink:0}.groceries{margin:0;padding:0;list-style:none}.groceries li+li{border-top:1px solid var(--line)}.grocery{text-align:left;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:14px;width:100%;min-height:56px;padding:8px 2px;display:grid}.grocery__check{color:#0000;border:2px solid #8b9688;border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;transition:background .15s,color .15s;display:flex}.grocery:active .grocery__check{background:var(--green);border-color:var(--green);color:var(--surface)}.grocery__name{overflow-wrap:anywhere;font-size:19px;font-weight:500;line-height:1.25}.grocery__meta{color:var(--muted);text-align:right;font-size:14px}.again{gap:8px;display:grid}.again__title{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:13px;font-weight:600}.again__items{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.again__item{border:1px solid var(--line);background:var(--paper);border-radius:999px;align-items:stretch;max-width:100%;display:flex}.again__restore{overflow-wrap:anywhere;text-align:left;align-items:center;gap:8px;min-width:0;min-height:46px;padding:0 4px 0 16px;font-size:16px;font-weight:500;display:flex}.again__restore svg{color:var(--green);flex-shrink:0}.again__remove{width:44px;color:var(--faint);border-radius:0 999px 999px 0;flex-shrink:0;justify-content:center;align-items:center;display:flex}.again__remove:active{color:var(--error)}.again button:disabled,.grocery:disabled{opacity:.6}.sync{color:var(--muted);align-items:center;gap:8px;font-size:13px;display:flex}.sync:before{content:"";background:var(--green);border-radius:50%;width:7px;height:7px}.sync--offline{color:var(--error)}.sync--offline:before{background:var(--error)}@media (width>=1000px){.app{--header:60px}.app--display{--header:0px;height:100vh;overflow:hidden}.dashboard{height:calc(100vh - var(--header));grid-template-columns:320px minmax(0,1fr) 392px;gap:0;padding:0;display:grid}.dashboard>*{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;border:0;border-radius:0;overflow-y:auto}.dashboard>.dashboard__glance{background:radial-gradient(120% 60% at 0% 0%, #eef1e6 0%, transparent 60%), var(--sage);overflow:hidden}.glance__content{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex-direction:column;gap:22px;height:100%;padding:26px 26px 0;display:flex;overflow-y:auto}.glance__foot{margin-top:auto;padding-bottom:66px}.glance[data-season=spring] .glance__foot{padding-bottom:92px}.dashboard__schedule{background:var(--paper);padding:22px 30px 40px}.dashboard__schedule,.dashboard__shopping .shopping__lists{-webkit-mask-image:linear-gradient(#000 calc(100% - 28px),#0000);mask-image:linear-gradient(#000 calc(100% - 28px),#0000)}.dashboard__shopping{background:var(--surface);border-left:1px solid var(--line);flex-direction:column;padding:22px 24px 0;display:flex;overflow:hidden}.dashboard__shopping .shopping{flex:1}.dashboard__shopping .shopping__lists{overscroll-behavior:contain;flex:1;min-height:0;padding-bottom:28px;overflow-y:auto}.dashboard__shopping .sync{border-top:1px solid var(--line);flex:0 0 60px;padding-right:64px}.clock__time{font-size:88px}.clock__date{margin-top:10px;font-size:21px}.clock__date strong{font-size:26px;font-weight:600;display:block}.weather__temp{font-size:80px}.weather__summary{font-size:17px}.weather__summary strong{font-size:21px}.forecast li{min-height:42px;font-size:17px}.day__title{font-size:34px}.day__title span{font-size:17px}.day__title--later{font-size:23px}.day__title--later span{font-size:16px}.event{grid-template-columns:6.2em minmax(0,1fr);gap:14px;padding:13px 0}.event__time{font-size:21px}.event__title{font-size:25px}.event__meta{font-size:16px}.event__status{font-size:13px}.events--later .event{padding:7px 0}.events--later .event__time{font-size:18px}.events--later .event__title{font-size:20px}.allday li{padding:8px 14px;font-size:18px}.quiet-line{font-size:18px}.column-title{font-size:34px}.add-item__row input{min-height:60px;font-size:21px}.add-item__submit{flex-basis:60px;height:60px}.chip{min-height:48px;font-size:16px}.grocery{min-height:62px}.grocery__name{font-size:22px}.grocery__meta{font-size:15px}.again__restore{min-height:50px;font-size:17px}.again__remove{width:48px}}.app--display{--header:0px;--tap:52px;user-select:none}.app--display input{user-select:text}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);min-width:0;padding:22px}.settings h1{margin-bottom:4px}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:20px;display:grid}.settings-card>svg{color:var(--muted);margin-bottom:12px}.settings-card h2{font-family:var(--display);letter-spacing:-.03em;margin-bottom:10px;font-size:24px;font-weight:400}.settings-card p{color:var(--muted);margin-bottom:16px;font-size:15px}.settings-card form{margin-top:14px}.settings-card label{margin-bottom:12px}.settings-card>.button{margin:0 5px 8px 0}.settings-card fieldset{border:1px solid var(--line);border-radius:10px;margin:0 0 12px;padding:14px}.settings-card legend{font-size:14px}.choice{overflow-wrap:anywhere;align-items:center;gap:12px;min-height:44px;display:flex}.choice input{flex-shrink:0;width:20px;height:20px;min-height:20px}.device-row{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;margin-top:14px;padding-top:14px;font-size:15px;display:flex}.device-row small{color:var(--muted);margin-top:4px;display:block}.section-heading{justify-content:space-between;align-items:center;display:flex}.eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:8px;font-size:12px;font-weight:600}.welcome{background:radial-gradient(ellipse at 80% 50%, #e4e9d9 0%, transparent 50%), var(--paper);flex-direction:column;min-height:100vh;padding:32px 6vw;display:flex}.welcome__content{width:100%;max-width:1200px;margin:auto;padding:48px 0;position:relative}.welcome h1{max-width:650px;font-size:clamp(42px,6vw,76px);line-height:1.1}.welcome__intro{color:var(--muted);margin-top:22px;font-size:16px}.signin-panel{border:1px solid var(--line);background:var(--surface);border-radius:var(--radius);width:400px;padding:34px;position:absolute;top:50%;right:0;transform:translateY(-50%);box-shadow:0 15px 50px #253b3110}.signin-panel>svg{color:var(--green);margin-bottom:20px}.signin-panel h2{font-family:var(--display);letter-spacing:-.03em;margin-bottom:10px;font-size:28px;font-weight:400}.signin-panel p{color:var(--muted);margin-bottom:22px;font-size:15px}.signin-panel .button{width:100%;margin-bottom:10px}.signin-panel .text-link{text-align:center;display:block}.welcome footer{color:var(--muted);font-size:13px}.pair-code{font-family:var(--display);font-variant-numeric:lining-nums tabular-nums;letter-spacing:.06em;color:var(--ink);white-space:nowrap;padding:10px 0 18px;font-size:44px}.welcome--display .pair-code{font-size:56px}.welcome--display .signin-panel{width:460px}.boot{flex-direction:column;justify-content:center;align-items:center;gap:20px;min-height:100vh;padding:30px;display:flex}@keyframes arrive{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media (width<=1050px){.welcome h1{font-size:52px}.signin-panel,.welcome--display .signin-panel{width:100%;max-width:470px;margin-top:32px;position:static;transform:none}.welcome__intro br{display:none}}@media (width<=760px){.app-header{justify-content:space-between}.app-header nav{z-index:20;background:var(--surface);border-top:1px solid var(--line);padding:6px 12px max(6px, env(safe-area-inset-bottom));justify-content:space-around;gap:0;position:fixed;bottom:0;left:0;right:0}.app-header nav button{flex-direction:column;flex:1;gap:2px;max-width:130px;padding:6px;font-size:12px}.app{padding-bottom:76px}.app-main{padding:16px 12px 24px}.settings-grid{grid-template-columns:1fr}.welcome{padding:24px}.welcome h1{font-size:42px}.signin-panel{padding:26px 22px}}@media (width<=999px){.glance__content{grid-template-columns:minmax(0,1fr) auto;align-items:start}.dashboard__glance .weather{display:contents}.glance__foot{grid-column:1/-1}.weather__now{grid-area:1/2}.weather__summary,.weather__conditions,.forecast{grid-column:1/-1}.weather__summary{flex-wrap:wrap;align-items:baseline;gap:0 10px;display:flex}.weather__now svg{width:40px;height:40px}.weather--quiet{grid-column:1/-1}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
