:root{color:#1d291f;font-synthesis:none;text-rendering:optimizelegibility;background:#e8e0d2;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif}*{box-sizing:border-box}html,body,#dashboard{width:100%;height:100%;margin:0;overflow:hidden}body{background:radial-gradient(circle at 78% -20%,#c2724e24,#0000 38%),linear-gradient(135deg,#eee7da 0%,#e6ddce 100%)}button{font:inherit}.shell{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;grid-template-rows:86px minmax(0,1fr);gap:18px;width:100%;height:100%;padding:24px 30px 28px;display:grid}.topbar{grid-template-columns:1fr auto 240px;align-items:center;gap:26px;min-width:0;display:grid}.identity{align-items:center;gap:16px;min-width:0;display:flex}.identity__mark{object-fit:contain;pointer-events:none;width:88px;height:64px}.eyebrow{color:#6a2e45;letter-spacing:.15em;text-transform:uppercase;margin:0 0 4px;font-size:12px;font-weight:800}h1,h2,h3,p{margin-top:0}h1,h2{letter-spacing:-.025em;font-family:Georgia,Times New Roman,serif;font-weight:600}.identity h1{margin:0;font-size:30px;line-height:1}.today{text-align:right;min-width:280px}.today p{color:#5f675f;margin:0 0 2px;font-size:15px;font-weight:650}.today time{font-family:Georgia,Times New Roman,serif;font-size:36px;line-height:1}.connection{color:#344337;touch-action:manipulation;background:#f6efe3b8;border:1px solid #2f4a3229;border-radius:999px;justify-content:center;justify-self:end;align-items:center;gap:9px;width:228px;min-height:48px;padding:0 16px;font-size:13px;font-weight:750;display:flex}.connection span{background:#8a9a76;border-radius:50%;width:9px;height:9px}.connection--live span{background:#4e7554}.connection--warn span{background:#c2724e}.connection--loading span{animation:1.5s ease-in-out infinite pulse}.dashboard-grid{grid-template-columns:minmax(0,1.68fr) minmax(360px,.92fr);gap:18px;min-height:0;display:grid}.panel{background:#faf6eee0;border:1px solid #2f4a321f;border-radius:23px;min-width:0;min-height:0;box-shadow:0 14px 32px #312d2414}.agenda{grid-template-rows:auto minmax(0,1fr);padding:25px 26px 18px;display:grid}.panel__heading{justify-content:space-between;align-items:center;gap:18px;margin-bottom:16px;display:flex}.panel__heading h2{margin:0;font-size:30px;line-height:1}.panel__heading--compact{margin-bottom:11px}.panel__heading--compact h2{font-size:24px}.count-badge{color:#2f4a32;background:#dfe7d7;border-radius:999px;flex:none;padding:8px 12px;font-size:12px;font-weight:800}.count-badge--plum{color:#6a2e45;background:#eadce0}.agenda__list{min-height:0;overflow:hidden}.agenda-row{border-top:1px solid #2f4a321f;grid-template-columns:52px 4px minmax(0,1fr) auto;align-items:center;gap:15px;min-height:72px;display:grid}.agenda-row:first-child{border-top:0}.agenda-row__date{text-align:center}.agenda-row__date span{color:#6a2e45;letter-spacing:.08em;font-size:10px;font-weight:850;display:block}.agenda-row__date strong{font-family:Georgia,Times New Roman,serif;font-size:27px;line-height:1}.calendar-stripe{background:var(--event-color);border-radius:999px;width:4px;height:38px}.agenda-row__copy{min-width:0}.agenda-row__copy h3{color:#1f2d23;text-overflow:ellipsis;white-space:nowrap;margin:0 0 4px;font-size:17px;line-height:1.2;overflow:hidden}.agenda-row__copy p,.calendar-name{color:#697169;font-size:12px}.agenda-row__copy p{text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.calendar-name{text-overflow:ellipsis;white-space:nowrap;max-width:125px;overflow:hidden}.side-stack{grid-template-rows:166px minmax(0,1fr) 112px;gap:16px;min-height:0;display:grid}.dinner-card{color:#fff9ef;background:radial-gradient(circle at 92% 15%,#f6efe333,#0000 28%),linear-gradient(135deg,#6a2e45 0%,#7d3b50 100%);padding:22px 24px;position:relative;overflow:hidden}.dinner-card:after{content:"";background:#c2724e8c;border-radius:50% 50% 0 0;width:160px;height:100px;position:absolute;bottom:-50px;right:-32px;transform:rotate(-8deg)}.dinner-card .eyebrow{color:#efd9c9}.dinner-card h2{z-index:1;text-overflow:ellipsis;white-space:nowrap;max-width:80%;margin:10px 0 7px;font-size:27px;line-height:1.05;position:relative;overflow:hidden}.dinner-card__meta,.dinner-card__location{z-index:1;margin:0;font-size:13px;position:relative}.dinner-card__location{opacity:.74;margin-top:4px}.tasks-card{padding:21px 23px 16px;overflow:hidden}.tasks-list{overflow:hidden}.task-row{border-top:1px solid #2f4a321a;grid-template-columns:20px minmax(0,1fr);align-items:start;gap:11px;min-height:47px;padding:8px 0;display:grid}.task-row:first-child{border-top:0}.task-row__check{border:2px solid #8a9a76;border-radius:50%;width:18px;height:18px;margin-top:1px}.task-row strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;line-height:1.25;display:block;overflow:hidden}.task-row p{color:#717871;text-overflow:ellipsis;white-space:nowrap;margin:2px 0 0;font-size:11px;overflow:hidden}.quiet-empty{color:#737a73;text-align:center;margin:32px 0 0;font-family:Georgia,Times New Roman,serif;font-size:17px}.household{grid-template-columns:1fr 1fr;gap:16px;display:grid}.summary-card{color:#fffaf2;border-radius:20px;grid-template-columns:auto 1fr;align-items:center;gap:12px;padding:18px 20px;display:grid}.summary-card--forest{background:#2f4a32}.summary-card--terra{background:#b96543}.summary-card strong{font-family:Georgia,Times New Roman,serif;font-size:40px;font-weight:500;line-height:1}.summary-card span{font-size:12px;font-weight:750;line-height:1.25}.empty-state{color:#657065;text-align:center;place-content:center;height:100%;display:grid}.empty-state span{color:#2f4a32;font-family:Georgia,Times New Roman,serif;font-size:36px}.empty-state p{margin:8px 0 0}.diagnostics-backdrop{z-index:10;background:#1d291fb8;place-items:center;padding:30px;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}.diagnostics{-webkit-user-select:text;user-select:text;background:#f8f1e6;border-radius:24px;width:min(760px,90vw);max-height:720px;padding:27px;overflow:auto;box-shadow:0 24px 70px #00000047}.icon-button{color:#fff;touch-action:manipulation;background:#6a2e45;border:0;border-radius:50%;width:48px;height:48px;font-size:27px}.diagnostics dl{margin:0}.diagnostics dl>div{border-top:1px solid #2f4a321f;grid-template-columns:150px minmax(0,1fr);gap:20px;padding:8px 0;display:grid}.diagnostics dt{color:#6a2e45;font-weight:800}.diagnostics dd{overflow-wrap:anywhere;margin:0}.diagnostics__errors{margin:18px 0}.diagnostics__errors h3{margin-bottom:8px}.diagnostics__errors p,.diagnostics__errors ul{color:#626b63;margin:0;font-size:13px}.reload-button{color:#fff;touch-action:manipulation;background:#2f4a32;border:0;border-radius:14px;min-height:52px;padding:0 22px;font-weight:800}.enrollment{color:#2d3a2f;text-align:center;-webkit-user-select:none;user-select:none;place-content:center;justify-items:center;width:100%;height:100%;padding:40px;display:grid}.enrollment img{width:180px;height:110px;margin-bottom:18px}.enrollment h1{margin:6px 0 12px;font-size:46px}.enrollment>p:not(.eyebrow){max-width:620px;margin-bottom:8px;font-size:18px;line-height:1.5}.enrollment__hint{color:#6f756f}.enrollment .reload-button{margin-top:22px}@keyframes pulse{50%{opacity:.35}}@media (hover:none) and (pointer:coarse){button{min-height:48px}}@media (max-width:1000px),(max-height:680px){.shell{grid-template-rows:74px minmax(0,1fr);gap:12px;padding:18px}.identity__mark{width:72px;height:52px}.identity h1{font-size:25px}.today time{font-size:31px}.dashboard-grid{grid-template-columns:minmax(0,1.5fr) minmax(320px,.9fr);gap:12px}.agenda{padding:19px}.agenda-row{min-height:62px}.side-stack{grid-template-rows:146px minmax(0,1fr) 96px;gap:12px}.panel__heading h2{font-size:26px}.summary-card{padding:12px 15px}}@media (prefers-reduced-motion:reduce){*,:before,:after{animation-duration:.01ms!important;animation-iteration-count:1!important}}
