.pwa-status{z-index:100;left:1rem;right:1rem;bottom:calc(6rem + env(safe-area-inset-bottom));color:#29251f;background:#f7f6ef;border:1px solid #727a60;border-radius:1rem;max-width:28rem;margin-inline:auto;padding:1rem;position:fixed;box-shadow:0 4px 24px #29251f22}.pwa-status p{margin:0 0 .75rem}.pwa-status button{margin:.25rem}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.fixed{position:fixed}.relative{position:relative}.static{position:static}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.block{display:block}.hidden{display:none}.table{display:table}.uppercase{text-transform:uppercase}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{--color-background:#f7f3eb;--color-surface:#fffdf8;--color-text:#332a22;--color-muted:#7d7468;--color-primary:#4d5942;--color-primary-soft:#e4e7d9;--color-warm:#a78369;--color-warm-soft:#eadecf;--color-border:#e5ded2;--font-body:-apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-heading:Georgia, "Times New Roman", serif}*{box-sizing:border-box}html{background:var(--color-background);-webkit-text-size-adjust:100%;min-width:320px}body{color:var(--color-text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;margin:0;font-size:15px;line-height:1.6}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer;font:inherit}button,a{touch-action:manipulation}button:focus-visible,a:focus-visible{outline:3px solid var(--color-warm);outline-offset:5px}button{color:inherit}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}h1{font-family:var(--font-heading);letter-spacing:-.045em;font-weight:400;line-height:1.12}h2{font-size:18px;font-weight:600;line-height:1.4}svg{flex-shrink:0}::selection{background:#dae5d4}.brand{align-items:center;gap:10px;display:inline-flex}.brand-mark{background:var(--color-primary-soft);border-radius:50%;place-items:center;width:39px;height:39px;display:grid}.brand-mark svg{width:23px;height:23px}.brand-name{letter-spacing:.15em;font-size:11px;font-weight:650;line-height:1.3}.brand-name>span{letter-spacing:.32em;margin-top:2px;font-size:9px;font-weight:500;display:block}.eyebrow{letter-spacing:.16em;color:var(--color-primary);font-size:10px;font-weight:650}.demo-label{border:1px solid var(--color-border);color:var(--color-muted);white-space:nowrap;border-radius:20px;padding:5px 10px;font-size:10px}.avatar{background:var(--color-primary-soft);width:45px;height:45px;font-family:var(--font-heading);color:var(--color-primary);border-radius:50%;flex-shrink:0;place-items:center;font-size:22px;display:inline-grid}.avatar-small{width:32px;height:32px;font-size:17px}.avatar-large{width:60px;height:60px;font-size:28px}.avatar-warm{background:var(--color-warm-soft);color:var(--color-warm)}.button{border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;gap:10px;min-height:46px;padding:11px 18px;font-size:14px;font-weight:550;display:inline-flex}.button-primary{background:var(--color-primary);color:#fff}.button-primary:hover{background:#334c3a}.button-secondary{border-color:var(--color-border);background:var(--color-surface)}.button-secondary:hover{background:var(--color-primary-soft)}.button svg{width:18px;height:18px}.muted-text{color:var(--color-muted);font-size:13px}.feedback{background:var(--color-surface);border:1px solid var(--color-border);text-align:center;color:var(--color-muted);border-radius:18px;padding:36px 20px}.feedback-title{color:var(--color-text);font-weight:600}.feedback p+p{margin-top:6px;font-size:13px}.feedback .button{margin-top:20px}.standalone-feedback{width:min(100% - 40px,480px);margin:20vh auto}.sign-in-shell{flex-direction:column;min-height:100svh;display:flex}.sign-in-header{justify-content:space-between;align-items:center;gap:12px;width:min(100%,1100px);margin:0 auto;padding:25px 24px;display:flex}.sign-in-main{text-align:center;flex:1;width:min(100% - 40px,520px);margin:0 auto;padding:34px 0 32px}.welcome-art{width:150px;height:134px;margin:0 auto 29px;position:relative}.welcome-orbit{border:1px solid #d8dfd2;border-radius:50%;width:121px;height:121px;position:absolute;inset:2px auto auto 14px}.welcome-house{background:#e5ebdf;border-radius:50% 50% 36% 36%;place-items:center;width:98px;height:102px;display:grid;position:absolute;top:15px;left:24px;transform:rotate(-7deg)}.welcome-house svg{stroke-width:1.1px;width:49px;height:49px;transform:rotate(7deg)}.welcome-leaf{background:var(--color-warm-soft);width:49px;height:49px;color:var(--color-warm);border:5px solid var(--color-background);border-radius:50%;place-items:center;display:grid;position:absolute;bottom:4px;right:1px;transform:rotate(14deg)}.welcome-dot{background:#c9a88b;border-radius:50%;width:8px;height:8px;position:absolute;top:27px;left:5px}.sign-in-main h1{margin-top:15px;font-size:clamp(38px,8vw,54px)}.welcome-description{color:var(--color-muted);margin-top:19px;font-size:15px;line-height:1.8}.person-selection{margin-top:38px}.person-selection h2{margin-bottom:17px;font-size:14px;font-weight:550}.person-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;max-width:370px;margin:0 auto;display:grid}.person-option{border:1px solid var(--color-border);background:var(--color-surface);border-radius:20px;flex-direction:column;align-items:center;padding:23px 12px 17px;transition:border-color .15s,transform .15s,box-shadow .15s;display:flex;box-shadow:0 3px 10px #293d3103}.person-option:hover{border-color:#9eaf95;transform:translateY(-3px);box-shadow:0 6px 20px #293d3108}.person-option-warm .avatar{background:var(--color-warm-soft);color:var(--color-warm)}.person-option-warm:hover{border-color:#cbaf9c}.person-option-name{margin-top:12px;font-size:17px;font-weight:600}.person-option-arrow{width:18px;height:18px;color:var(--color-muted);margin-top:16px}.prototype-note{color:var(--color-muted);margin-top:21px;font-size:11px;line-height:1.7}.sign-in-footer{color:var(--color-muted);padding:16px 20px max(23px, env(safe-area-inset-bottom));justify-content:center;align-items:center;gap:8px;font-size:11px;display:flex}.sign-in-footer svg{width:16px;height:16px}.app-shell{min-height:100svh;padding-bottom:calc(100px + env(safe-area-inset-bottom))}.skip-link{z-index:20;background:#fff;padding:12px;position:fixed;top:12px;left:12px;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.app-header{justify-content:space-between;align-items:center;gap:12px;max-width:1020px;margin:0 auto;padding:22px 24px;display:flex}.current-person{align-items:center;gap:8px;font-size:12px;font-weight:550;display:flex}.app-content{max-width:860px;margin:0 auto;padding:30px 24px 15px}.app-content:focus{outline:none}.page-heading{margin-bottom:35px}.page-heading h1{margin-top:12px;font-size:clamp(34px,7vw,48px)}.page-heading>p:last-child{color:var(--color-muted);max-width:340px;margin-top:14px;font-size:14px}.activity-toolbar{justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;display:flex}.activity-toolbar h2{font-size:17px}.filter-group{border:1px solid var(--color-border);background:#efefe8;border-radius:12px;gap:2px;padding:4px;display:inline-flex}.filter-group button{min-height:38px;color:var(--color-muted);background:0 0;border:none;border-radius:8px;padding:7px 13px;font-size:12px}.filter-group button[aria-pressed=true]{color:var(--color-text);background:#fff;font-weight:600;box-shadow:0 1px 4px #293d310d}.activity-list{grid-template-columns:minmax(0,1fr);gap:12px;margin:0;padding:0;list-style:none;display:grid}.activity-card{border:1px solid var(--color-border);background:var(--color-surface);border-radius:17px;gap:16px;padding:21px 18px;display:flex}.activity-symbol{background:var(--color-primary-soft);width:42px;height:42px;color:var(--color-primary);border-radius:13px;flex-shrink:0;place-items:center;display:grid}.activity-symbol svg{width:21px;height:21px}.activity-symbol-monthly{background:var(--color-warm-soft);color:var(--color-warm)}.activity-symbol-daily{color:#717651;background:#eef0e7}.activity-card-content{min-width:0}.activity-card h3{overflow-wrap:anywhere;margin:0 0 4px;font-size:15px;font-weight:600;line-height:1.45}.activity-schedule{color:var(--color-muted);font-size:12px;line-height:1.6}.assignee-label{color:var(--color-primary);align-items:center;gap:6px;margin-top:12px;font-size:11px;display:inline-flex}.assignee-dot{background:#809572;border-radius:50%;width:5px;height:5px}.assignee-label-unassigned{color:var(--color-muted)}.assignee-label-unassigned .assignee-dot{background:#b9b5a6}.page-footnote{color:var(--color-muted);text-align:center;margin-top:24px;font-size:10px}.page-footnote>span{margin:0 4px}.bottom-nav{z-index:10;border-top:1px solid var(--color-border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:8px 20px calc(8px + env(safe-area-inset-bottom));background:#fcfcf8f5;position:fixed;bottom:0;left:0;right:0}.bottom-nav-inner{grid-template-columns:repeat(2,1fr);gap:10px;max-width:420px;margin:0 auto;display:grid}.nav-link{min-height:54px;color:var(--color-muted);border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:10px;display:flex}.nav-link svg{width:21px;height:21px}.household-card{border:1px solid var(--color-border);background:var(--color-surface);border-radius:18px;margin-bottom:18px;padding:23px}.section-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.section-heading svg{color:var(--color-muted);width:22px;height:22px}.household-card h2{font-size:16px}.member-list{margin:13px 0 0;padding:0;list-style:none}.member-list li{align-items:center;gap:12px;padding:15px 0;display:flex}.member-list li+li{border-top:1px solid var(--color-border)}.member-list li:last-child{padding-bottom:0}.member-name{flex:1;font-size:14px;font-weight:550}.member-current-label{background:var(--color-primary-soft);border-radius:6px;padding:3px 8px;font-size:10px}.household-details dl{margin:21px 0 0}.household-details dl>div{justify-content:space-between;align-items:baseline;gap:16px;margin-top:16px;font-size:12px;display:flex}.household-details dt{color:var(--color-muted)}.household-details dd{text-align:right;margin:0}.household-details dd span{color:var(--color-muted);font-size:10px;display:block}.household-details .muted-text{border-top:1px solid var(--color-border);margin-top:23px;padding-top:20px;font-size:12px}.switch-person{width:100%;margin-top:5px}.not-found{width:min(100% - 48px,550px);margin:10vh auto}.not-found .brand{margin-bottom:70px}.not-found h1{margin:15px 0;font-size:42px}.not-found .button{margin-top:24px}@media (width>=700px){.sign-in-header{padding:32px}.sign-in-main{padding-top:44px}.welcome-art{margin-bottom:32px}.app-header{padding:29px 32px}.app-content{padding-top:43px}.page-heading{margin-bottom:45px}.page-heading>p:last-child{max-width:none;font-size:15px}.activity-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.activity-card{padding:24px 21px}.activity-toolbar{margin-bottom:22px}.household-card{padding:27px}.household-details dl>div{font-size:14px}.switch-person{width:auto}.bottom-nav{padding-top:9px;padding-bottom:calc(9px + env(safe-area-inset-bottom))}.nav-link{flex-direction:row;gap:9px;min-height:46px;font-size:12px}}@media (width<=359px){.app-header,.sign-in-header,.app-content{padding-left:18px;padding-right:18px}.current-person>span:last-child{display:none}.activity-card{gap:12px;padding:18px 14px}.activity-symbol{width:36px;height:36px}.filter-group button{padding-left:10px;padding-right:10px}.household-card{padding:18px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}body{background-image:radial-gradient(at 5% 15%,#e9dfcf45,#0000 55%),radial-gradient(at 95% 60%,#e7e9dd55,#0000 55%)}.brand-mark{display:none}.brand-name{font-family:var(--font-heading);letter-spacing:.23em;white-space:nowrap;font-size:13px;font-weight:400}.brand-name>span{font-family:inherit;font-size:inherit;letter-spacing:inherit;margin:0;display:inline}.brand-name>span:before{content:" "}.app-header{max-width:1120px;padding-top:max(24px, env(safe-area-inset-top))}.household-avatars{align-items:center;gap:4px;display:flex}.member-switch{color:#505b41;width:39px;height:39px;font-size:18px;font-family:var(--font-heading);background:#dedfce;border:2px solid #0000;border-radius:50%;transition:transform .18s,background .18s}.member-switch-warm{color:#604831;background:#e5d5c2}.member-switch[aria-pressed=true]{color:#fffdf5;background:#6c7559;box-shadow:0 0 0 3px #f7f3eb,0 0 0 4px #7d85664d}.member-switch:active{transform:scale(.92)}.app-content-dashboard{max-width:1160px;padding:0 0 24px}.dashboard-greeting{justify-content:space-between;align-items:center;gap:24px;padding:13px 24px 22px;display:flex}.dashboard-greeting .eyebrow{color:#74644f;letter-spacing:.21em;font-size:10px}.dashboard-greeting h1{letter-spacing:-.06em;align-items:center;gap:9px;margin-top:12px;font-size:clamp(32px,8vw,62px);display:flex}.dashboard-greeting h1 svg{color:#b5967a;stroke-width:1.2px;width:28px;height:36px;transform:rotate(-14deg)}.dashboard-motto{display:none}.dashboard-controls{justify-content:space-between;align-items:center;gap:12px;max-width:760px;margin:0 auto;padding:0 24px;display:flex}.dashboard-controls .filter-group{background:#eee7dc9c;border-color:#ded6c84d;border-radius:30px;padding:3px}.dashboard-controls .filter-group button{border-radius:24px;min-height:38px;padding:7px 11px;font-size:11px}.dashboard-controls .filter-group button[aria-pressed=true]{color:var(--color-primary);background:#fffdf8}.date-navigation{color:var(--color-muted);text-transform:capitalize;justify-content:center;align-items:center;gap:22px;padding:10px 24px 0;font-size:12px;display:flex}.icon-button{width:42px;height:42px;color:var(--color-primary);background:0 0;border:none;border-radius:50%;flex-shrink:0;place-items:center;display:inline-grid}.icon-button svg{width:18px;height:18px}.icon-button:hover:not(:disabled){background:#e5e5d79c}.icon-button:disabled{opacity:.27;cursor:default}.back-to-today{color:var(--color-primary);background:0 0;border:none;border-bottom:1px solid #b4bba7;margin:0 auto 4px;padding:4px 0;font-size:11px;display:block}.calendar-full-bleed{width:100%}.day-carousel{--column-width:min(80vw, 420px);padding:18px calc((100% - var(--column-width)) / 2) 30px;scroll-snap-type:x mandatory;scroll-padding-inline:calc((100% - var(--column-width)) / 2);scrollbar-width:none;overscroll-behavior-x:contain;align-items:stretch;gap:16px;display:flex;position:relative;overflow-x:auto}.day-carousel::-webkit-scrollbar{display:none}.task-stack::-webkit-scrollbar{display:none}.day-column{flex:0 0 var(--column-width);width:var(--column-width);scroll-snap-align:center;scroll-snap-stop:always;opacity:.44;transform-origin:50% 35%;background:#fffdf795;border-radius:27px;min-width:0;transition:opacity .22s,transform .22s,box-shadow .22s;position:relative;transform:scale(.96);box-shadow:0 8px 24px #6552370b}.day-column-active{opacity:1;background:#fffdf9d6;transform:none;box-shadow:0 12px 34px #65523712,inset 0 1px #fff}.day-column-body{padding:17px 13px 4px}.day-title{text-align:center;padding:2px 4px 18px}.day-title h2{font-family:var(--font-heading);letter-spacing:-.035em;text-transform:capitalize;font-size:34px;font-weight:400;line-height:1.15}.day-title p{color:#86755c;margin-top:4px;font-size:14px}.day-preview-hitbox{z-index:3;border-radius:inherit;background:0 0;border:none;width:100%;position:absolute;inset:0}.task-stack{--task-row-height:62px;--task-gap:12px;--task-card-padding:15px;--task-title-size:clamp(27px, 7.9vw, 43px);--task-title-top:37px;--task-row-font:16px;height:calc(var(--column-width) + 156px);scrollbar-width:none;scroll-snap-type:y mandatory;overflow-anchor:none;overscroll-behavior-y:contain;border-radius:18px;max-height:576px;margin:0;padding:0;position:relative;overflow-y:auto}.task-scroll-track{height:var(--task-track-height,100%);position:relative}.task-snap-points>span{top:calc(var(--task-viewport-height) / 2 - .5px + var(--task-index) * var(--task-step));scroll-snap-align:center;scroll-snap-stop:normal;pointer-events:none;width:1px;height:1px;position:absolute}.task-list{margin:0;padding:0;list-style:none;position:absolute;inset:0}.task-list>li{--task-expansion:0;width:100%;height:var(--task-height,var(--task-row-height));transform:translateY(var(--task-y,0px));position:absolute;top:0;left:0}.task-stack .occurrence-fluid{aspect-ratio:auto;isolation:isolate;height:100%;box-shadow:none;background:#eae3d7}.occurrence-fluid:before{content:"";z-index:-2;opacity:var(--task-expansion);background:linear-gradient(125deg,#e1e2d4,#d1d5bf);position:absolute;inset:0}.occurrence-fluid.category-kitchen:before{background:linear-gradient(125deg,#eee2ce,#e3d6bf)}.occurrence-fluid.category-plants:before{background:linear-gradient(125deg,#e4e6d6,#d9dec7)}.occurrence-fluid.category-laundry:before{background:linear-gradient(125deg,#e7e1d9,#d8d3c9)}.occurrence-fluid.category-home:before{background:linear-gradient(125deg,#e8e0d1,#dad8c4)}.task-stack .occurrence-fluid .task-illustration{height:calc(var(--task-expanded-height) * .92);bottom:auto;top:calc(var(--task-expanded-height) * .04);opacity:calc(.67 * var(--task-expansion))}.task-stack .occurrence-fluid .task-card-content{height:var(--task-expanded-height);padding:var(--task-card-padding)}.occurrence-fluid .task-category,.occurrence-fluid .task-detail-body{opacity:var(--task-expansion)}.task-stack .occurrence-fluid .task-heading{left:var(--task-card-padding);right:var(--task-card-padding);top:calc((var(--task-row-height) / 2 - 10px) * (1 - var(--task-expansion)) + var(--task-title-top) * var(--task-expansion));margin:0;position:absolute}.task-stack .occurrence-fluid .task-select{gap:calc(12px * (1 - var(--task-expansion)));min-height:0;font-family:var(--font-heading);font-size:calc(var(--task-row-font) + (var(--task-title-size) - var(--task-row-font)) * var(--task-expansion));letter-spacing:calc(-.045em * var(--task-expansion));padding:0;line-height:1.1}.task-stack .occurrence-fluid .task-select>span{max-width:calc(100% - 17% * var(--task-expansion))}.task-stack .occurrence-fluid .task-select>svg{width:calc(23px * (1 - var(--task-expansion)));height:23px;opacity:calc(1 - var(--task-expansion))}.occurrence-card{background:#eae3d7;border-radius:17px;position:relative;overflow:hidden}.occurrence-expanded{aspect-ratio:1;isolation:isolate;background:linear-gradient(125deg,#e1e2d4 0%,#d1d5bf 100%);box-shadow:0 5px 13px #5a53331c}.category-kitchen.occurrence-expanded{background:linear-gradient(125deg,#eee2ce,#e3d6bf)}.category-plants.occurrence-expanded{background:linear-gradient(125deg,#e4e6d6,#d9dec7)}.category-laundry.occurrence-expanded{background:linear-gradient(125deg,#e7e1d9,#d8d3c9)}.category-home.occurrence-expanded{background:linear-gradient(125deg,#e8e0d1,#dad8c4)}.task-illustration{pointer-events:none;z-index:-1;object-fit:contain;opacity:.67;width:102%;height:92%;position:absolute;bottom:4%;right:-14%;mask-image:linear-gradient(90deg,#0000 12%,#000 60%)}.task-card-content{flex-direction:column;height:100%;padding:15px;display:flex;position:relative}.task-category{letter-spacing:.16em;text-transform:uppercase;color:#626951;font-size:9px;font-weight:600;line-height:1.5}.task-heading{font-size:inherit;margin:0;font-weight:400}.task-select{text-align:left;width:100%;color:var(--color-text);background:0 0;border:none;align-items:center;gap:12px;padding:0;display:flex}.occurrence-expanded .task-heading{margin-top:8px}.occurrence-expanded .task-select{font-family:var(--font-heading);letter-spacing:-.045em;font-size:clamp(27px,7.9vw,43px);line-height:1.04}.occurrence-expanded .task-select>span{text-wrap:pretty;max-width:83%}.occurrence-collapsed .task-card-content{padding:0}.occurrence-collapsed .task-select{min-height:62px;padding:13px 17px;font-size:14px}.occurrence-collapsed .task-select>svg{color:#667057;stroke-width:1.35px;width:23px;height:26px}.occurrence-collapsed .collapsed-check{width:17px;margin-left:auto}.task-detail-body{flex-direction:column;align-items:stretch;gap:7px;margin-top:auto;display:flex}.task-person{color:#34352a;align-items:center;gap:8px;min-height:29px;font-size:12px;display:flex}.avatar-task{color:#fffdf6;width:28px;height:28px;font-size:16px;font-family:var(--font-body);background:#778064}.avatar-task.avatar-warm{color:#352b21;background:#d5bea3}.task-more{color:#4f5c43;background:#fffdf440;border:none;border-radius:14px;place-items:center;width:33px;height:29px;margin-left:auto;display:grid}.task-more svg{stroke-width:3px;width:20px;height:20px}.task-status{color:#4b4b3b;background:#fffdf568;border-radius:20px;align-self:flex-start;align-items:center;gap:4px;max-width:100%;padding:3px 9px;font-size:10px;line-height:1.35;display:inline-flex}.task-status svg{width:12px;height:12px}.task-status-completed{color:#425836;background:#f4f7e7a6}.task-status-overdue{color:#805b35;background:#fff5e1a1}.task-actions{margin-top:3px}.complete-button{color:#fffdf5;background:#4f5c43;border:none;border-radius:24px;justify-content:center;align-items:center;gap:9px;width:100%;min-height:43px;font-size:14px;font-weight:500;transition:background .2s,transform .18s,box-shadow .2s;display:flex;box-shadow:0 2px 4px #27351e10}.complete-button:hover:not(:disabled){background:#414e37;box-shadow:0 3px 10px #27351e20}.complete-button:active:not(:disabled){transform:scale(.97)}.complete-button:disabled{opacity:.65;cursor:progress}.complete-button svg{stroke-width:1.7px;width:20px;height:20px}.complete-button-quiet{color:#505b43;box-shadow:none;background:#faf9ed8c}.complete-button-quiet:hover:not(:disabled){background:#fffdf4d9}.status-completed svg{fill:#71805e40}.review-note-link{color:#4e5b43;text-underline-offset:3px;background:0 0;border:none;width:100%;margin-top:5px;padding:2px;font-size:10px;text-decoration:underline;display:block}.task-stepper{color:#9a8d7d;justify-content:center;align-items:center;gap:15px;font-size:10px;display:flex}.task-stepper .icon-button{width:36px;height:33px}.task-stepper .icon-button svg{width:14px}.day-empty{min-height:calc(var(--column-width) + 156px);text-align:center;color:var(--color-muted);flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:24px;display:flex}.day-empty>svg{color:#97a084;stroke-width:1px;width:54px;height:54px}.day-empty h3{font-family:var(--font-heading);color:#655e4c;font-size:26px;font-weight:400}.day-empty p{max-width:240px;font-size:12px}.gesture-hint{letter-spacing:.04em;color:#9a8b79;justify-content:center;gap:12px;margin:-9px 0 26px;font-size:11px;display:flex}.period-agenda{margin:20px 24px 30px}.period-agenda>h2{font-family:var(--font-heading);margin-bottom:18px;font-size:30px;font-weight:400}.occurrence-row{text-align:left;background:#fffdf799;border:1px solid #e7decd80;border-radius:14px;align-items:center;gap:10px;width:100%;margin-top:8px;padding:15px 13px;display:flex}.occurrence-row:hover{background:#fffdfb}.row-symbol{color:#76805e;background:#e6e7d880;border-radius:10px;flex-shrink:0;place-items:center;width:32px;height:36px;display:grid}.row-symbol svg{width:20px}.occurrence-row-copy{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.occurrence-row-copy strong{overflow-wrap:anywhere;font-size:13px;font-weight:500}.occurrence-row-copy>span{color:#958774;font-size:10px}.occurrence-row>svg{color:#a29580;width:13px;height:13px}.row-state{color:#6e775d;max-width:100px;font-size:9px;line-height:1.4}.row-state-overdue{color:#93734e}.overdue-section,.pending-section{background:#eee7db65;border:1px solid #e6ddcf90;border-radius:18px;margin:16px 24px 24px;padding:17px 16px}.overdue-section summary{cursor:pointer;justify-content:space-between;align-items:center;min-height:28px;list-style:none;display:flex}.overdue-section summary::-webkit-details-marker{display:none}.overdue-section summary>span{align-items:center;gap:9px;font-size:13px;display:inline-flex}.overdue-section summary svg{color:#897d68;width:18px;height:18px}.overdue-count{color:#988c79}.overdue-count svg{width:14px;transition:transform .2s}.overdue-section[open] .overdue-count svg{transform:rotate(180deg)}.section-description{color:var(--color-muted);margin:10px 0 12px;font-size:11px;line-height:1.6}.overdue-empty{color:var(--color-muted);padding-bottom:8px;font-size:12px}.pending-section h2{font-size:15px;font-weight:500}.pending-section .section-heading>svg{color:#829068;width:21px}.prototype-footnote{text-align:center;color:#a3947e;padding:3px 22px 0;font-size:10px}.bottom-nav{padding:9px 15px calc(9px + env(safe-area-inset-bottom));background:#fffdf8ed;border-top:1px solid #fffdf5;border-radius:25px 25px 0 0;box-shadow:0 -8px 32px #72634c08}.bottom-nav-inner{grid-template-columns:repeat(4,1fr);gap:4px;max-width:500px}.nav-link{background:0 0;flex-direction:column;gap:3px;min-height:56px;font-size:10px;font-weight:400;position:relative}.nav-link svg{stroke-width:1.5px;width:24px;height:24px}.nav-link-active{color:#4d5942;background:0 0;font-weight:600}.nav-link-active:after{content:"";background:#59664a;border-radius:2px;width:25px;height:2px;position:absolute;bottom:-3px}.nav-link-active svg{stroke-width:1.9px}.detail-dialog{width:min(100% - 28px,520px);max-height:min(90svh,800px);color:var(--color-text);overscroll-behavior:contain;background:#fbf8f1;border:1px solid #e0d8c8;border-radius:24px;margin:auto;padding:25px;position:fixed;inset:0;box-shadow:0 24px 80px #30291f33}.detail-dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#322d234d}.dialog-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.dialog-heading h2{font-family:var(--font-heading);font-size:30px;font-weight:400;line-height:1.1}.detail-date{color:#928069;margin-top:8px;font-size:12px}.detail-description{color:#736953;margin-top:21px;font-size:14px}.detail-facts{border-block:1px solid #e7dfd0;gap:12px;margin:22px 0;padding:20px 0;font-size:12px;display:grid}.detail-facts>div{justify-content:space-between;gap:16px;display:flex}.detail-facts dt{color:#998970}.detail-facts dd{text-align:right;margin:0}.completion-form{flex-direction:column;gap:11px;display:flex}.completion-form label{font-size:13px}.completion-form label>span{color:#9c8e78}.completion-form textarea{resize:vertical;width:100%;min-height:95px;font:inherit;background:#fffdf7;border:1px solid #dcd4c4;border-radius:12px;padding:13px;font-size:16px}.completion-form textarea:focus{outline-offset:2px;outline:2px solid #7b8962}.completion-form .button{border-radius:23px}.button-text{color:#8b7357;background:0 0;min-height:36px;font-size:12px}.form-note{color:#94856d;font-size:11px;line-height:1.6}.inline-error{color:#8f483a;padding:6px 0;font-size:11px}.detail-history{margin-top:25px}.detail-history h3{font-size:14px;font-weight:500}.attempt-timeline{margin:18px 0 0;padding:0;list-style:none}.attempt-timeline>li{gap:12px;padding:0 0 22px;display:flex}.attempt-marker{background:#bbab8e;border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-top:7px}.attempt-marker-approved{background:#879872}.attempt-marker-rejected{background:#bf9b78}.attempt-timeline strong{font-size:12px;font-weight:600}.attempt-timeline p{color:#92836c;margin-top:4px;font-size:11px}.attempt-timeline .attempt-assignment{font-size:10px}.attempt-timeline blockquote{white-space:pre-wrap;overflow-wrap:anywhere;background:#eee8db;border-radius:9px;margin:10px 0 0;padding:10px 12px;font-size:12px}.history-list{gap:20px;display:grid}.history-card{border:1px solid var(--color-border);background:#fffdf78c;border-radius:20px;padding:22px}.history-card h2{font-family:var(--font-heading);margin-top:9px;font-size:25px;font-weight:400}@media (width>=700px){.task-stack{--task-row-height:65px;--task-card-padding:23px;--task-title-top:48px;--task-row-font:18px}.brand-name{letter-spacing:.28em;font-size:17px}.member-switch{width:43px;height:43px;font-size:21px}.dashboard-greeting{padding:12px 54px 30px}.dashboard-greeting .eyebrow{font-size:12px}.dashboard-greeting h1{margin-top:13px;font-size:clamp(44px,5.5vw,66px)}.dashboard-greeting h1 svg{width:36px;height:50px}.dashboard-motto{font-family:var(--font-heading);color:#ad9376;flex-shrink:0;padding-right:32px;font-size:21px;font-style:italic;line-height:1.4;display:block;position:relative}.dashboard-motto svg{stroke-width:1px;color:#9da085;width:35px;height:60px;position:absolute;top:2px;right:-8px;transform:rotate(-15deg)}.dashboard-controls{max-width:580px}.dashboard-controls .filter-group button{padding-inline:16px;font-size:12px}.day-column-body{padding:22px 18px 6px}.day-title h2{font-size:43px}.day-title p{font-size:16px}.day-title{padding-bottom:22px}.task-card-content{padding:23px}.task-category{font-size:11px}.task-person{gap:10px;min-height:36px;font-size:15px}.avatar-task{width:36px;height:36px;font-size:21px}.task-status{padding:4px 11px;font-size:12px}.task-detail-body{gap:10px}.complete-button{border-radius:26px;min-height:49px;font-size:17px}.occurrence-collapsed .task-select{min-height:65px;padding-inline:20px;font-size:17px}.period-agenda,.overdue-section,.pending-section{max-width:760px;margin-left:auto;margin-right:auto}.row-state{max-width:170px;font-size:11px}.occurrence-row{padding:16px 20px}.occurrence-row-copy strong{font-size:15px}.occurrence-row-copy>span{font-size:12px}.bottom-nav{border-radius:24px;width:calc(100% - 40px);max-width:600px;bottom:16px;left:50%;right:auto;transform:translate(-50%)}.nav-link{flex-direction:column;font-size:11px}}@media (width<=359px){.task-stack{--task-card-padding:12px;--task-title-top:32px;--task-title-size:27px}.dashboard-greeting{padding-inline:18px}.dashboard-greeting h1{gap:5px;font-size:29px}.dashboard-greeting h1 svg{width:23px}.dashboard-controls{gap:5px;padding-inline:14px}.dashboard-controls .filter-group button{padding-inline:8px;font-size:10px}.day-column-body{padding-inline:10px}.task-card-content{padding:12px}.occurrence-expanded .task-select{font-size:27px}.task-category{font-size:8px}.task-status{font-size:9px}.task-person{min-height:24px;font-size:11px}.avatar-task{width:24px;height:24px;font-size:15px}.complete-button{min-height:37px;font-size:12px}.task-detail-body{gap:5px}.member-switch{width:34px;height:34px;font-size:17px}.brand-name{font-size:11px}.row-state{display:none}}@media (prefers-reduced-motion:reduce){.day-column,.complete-button,.member-switch{transition:none}}#root,.detail-dialog{opacity:var(--app-hold-opacity,1);transition:opacity .24s ease-out}html[data-hold-phase=holding] #root,html[data-hold-phase=holding] .detail-dialog{transition:none}html[data-hold-phase] .detail-dialog::backdrop{opacity:var(--app-hold-opacity,1)}.occurrence-card[data-hold-phase],.completion-form[data-hold-phase]{transform-origin:50%;transition:transform .24s ease-out,box-shadow .24s ease-out}.occurrence-card[data-hold-phase=holding],.completion-form[data-hold-phase=holding]{transform:scale(calc(1 - var(--hold-progress,0) * .1));transition:none}.occurrence-card[data-hold-phase=submitting],.completion-form[data-hold-phase=submitting]{transform:scale(.9)}.occurrence-card[data-hold-phase=success]:after,.occurrence-card[data-completion-status=awaiting_review]:after,.occurrence-card[data-completion-status=completed]:after{content:"";z-index:2;border-radius:inherit;pointer-events:none;border:2px solid #6f855d;position:absolute;inset:0}.hold-control{position:relative}.complete-button.hold-button,.complete-button.hold-button:hover:not(:disabled),.complete-button.hold-button:active:not(:disabled){isolation:isolate;color:#34462c;box-shadow:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:manipulation;background:#faf9ed70;border:1.5px solid #536749;position:relative;overflow:hidden;transform:none}.hold-button:disabled{opacity:1}.hold-fill{z-index:-1;visibility:hidden;transform:translateX(calc((var(--hold-progress,0) - 1) * 100%));background:#a9bb8b;transition:transform .18s ease-out;position:absolute;inset:0}.hold-control:not([data-hold-phase=idle]) .hold-fill{visibility:visible}[data-hold-phase=holding]>.hold-button .hold-fill{transition:none}.hold-fill:after{content:"";background:#a9bb8b;border-radius:45%;width:16px;height:150%;position:absolute;top:-25%;right:-8px}[data-hold-phase=holding]>.hold-button .hold-fill:after{animation:.65s ease-in-out infinite alternate hold-wave}[data-hold-phase=success]>.hold-button .hold-fill{background:#96b079}.hold-label{justify-content:center;align-items:center;gap:8px;display:inline-flex}.hold-hint{color:#4b5840;text-align:center;margin-top:3px;font-size:10px;line-height:1.25;display:block}.sound-preference{cursor:pointer;align-items:center;gap:12px;display:flex}.sound-preference input{accent-color:#536749;width:22px;height:22px}.sound-preference small{color:#696e61;margin-top:5px;display:block}@keyframes hold-wave{0%{transform:translateY(-8%)rotate(-8deg)}to{transform:translateY(8%)rotate(8deg)}}@media (prefers-reduced-motion:reduce){#root,.detail-dialog{opacity:1;transition:none}html[data-hold-phase] .detail-dialog::backdrop{opacity:1}.occurrence-card[data-hold-phase],.completion-form[data-hold-phase]{transition:none;transform:none}.hold-fill{transition:none}[data-hold-phase=holding]>.hold-button .hold-fill:after{animation:none}}.activity-form{background:#fffdf7;border-radius:22px;max-width:620px;margin:0 auto;padding:22px}.activity-form fieldset{border:0;min-width:0;margin:0;padding:0}.activity-form label,.occurrence-assignment label{margin:18px 0 7px;font-weight:500;display:block}.activity-form input,.activity-form select,.activity-form textarea,.occurrence-assignment select{box-sizing:border-box;color:#303b2a;width:100%;min-width:0;min-height:46px;font:inherit;background:#fffef9;border:1px solid #b9bcab;border-radius:10px;padding:10px;font-size:16px;display:block}.activity-form textarea{resize:vertical}.activity-form [aria-invalid=true]{border-color:#995337}.form-actions{flex-wrap:wrap;gap:12px;margin-top:22px;display:flex}.activity-add{margin:12px 0 22px}.activity-item-actions{flex-wrap:wrap;gap:20px;margin-top:12px;font-size:14px;display:flex}.activity-item-actions button{color:inherit;background:0 0;border:0;min-height:32px;padding:0;text-decoration:underline}.activity-item-actions a{align-items:center;min-height:32px;display:inline-flex}.occurrence-assignment{margin:20px 0}.occurrence-assignment button{margin-top:10px}
