@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.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{--ink:#1e2320;--ink-2:#3a403b;--muted:#6b6e66;--subtle:#9a9b91;--cream:#f4f2ec;--paper:#fffdf9;--card:#fff;--sunken:#f3f0e8;--sunken-2:#ebe7dd;--field:#fff;--line:#e8e4d9;--line-strong:#d6d1c3;--green:#2f5c48;--green-hover:#264c3b;--green-2:#3f7560;--green-soft:#e3ece5;--green-tint:#f3f7f3;--gold:#d49a3e;--gold-soft:#f8edda;--gold-ink:#86591a;--red:#b4493c;--red-soft:#f9e6e2;--ring:#2f5c4829;--text-xs:11px;--text-sm:12.5px;--text-md:13.5px;--text-base:14px;--text-lg:16px;--text-xl:18px;--radius-sm:8px;--radius-md:12px;--radius-lg:18px;--radius-xl:22px;--shadow-sm:0 1px 2px #1e23200a, 0 6px 20px #1e23200a;--shadow-md:0 2px 6px #1e23200d, 0 14px 36px #1e232014;--shadow-xl:0 4px 12px #141a1614, 0 32px 80px #141a1638;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in:cubic-bezier(.55, 0, .75, .1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--ease-spring:cubic-bezier(.34, 1.4, .64, 1);--t-fast:.12s;--t:.2s;--t-slow:.32s;font-family:Inter Variable,Inter,ui-sans-serif,system-ui,sans-serif;font-size:var(--text-base);color:var(--ink);background:var(--cream);font-synthesis:none;font-feature-settings:"cv11", "ss01";text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;scrollbar-gutter:stable;line-height:1.5}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}html.scroll-locked{overflow:hidden}body{background:var(--cream);min-height:100vh}button,input,select,textarea{font:inherit;color:inherit}button{-webkit-tap-highlight-color:transparent}input[type=checkbox]{accent-color:var(--green)}h1,h2,h3,p{margin-top:0}:focus-visible{outline:2px solid var(--green-2);outline-offset:2px}::selection{background:#d49a3e47}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.app-shell{grid-template-columns:252px minmax(0,1fr);min-width:1024px;min-height:100vh;display:grid}.sidebar{color:#eef2ec;background:#1b2520;flex-direction:column;height:100vh;padding:26px 16px 18px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:11px;padding:0 10px;display:flex}.brand img{width:36px;height:36px}.brand div{flex-direction:column;line-height:1;display:flex}.brand strong{letter-spacing:-.04em;font-size:21px}.brand span{color:#a3b3a9;letter-spacing:.18em;text-transform:uppercase;margin-top:5px;font-size:10px;font-weight:700}.sidebar nav{gap:2px;margin-top:36px;display:grid}.sidebar nav a{color:#a9b6ad;min-height:42px;font-size:var(--text-md);transition:color var(--t-fast), background-color var(--t-fast);border-radius:11px;grid-template-columns:22px 1fr auto;align-items:center;gap:12px;padding:0 12px;font-weight:600;text-decoration:none;display:grid;position:relative}.sidebar nav a:before{background:var(--gold);content:"";width:3px;transition:transform var(--t) var(--ease-out);border-radius:0 3px 3px 0;position:absolute;top:11px;bottom:11px;left:-16px;transform:scaleY(0)}.sidebar nav a:hover{color:#fff;background:#ffffff0d}.sidebar nav a.active{color:#fff;background:#ffffff14}.sidebar nav a.active:before{transform:scaleY(1)}.sidebar nav a small{color:#dce6df;min-width:22px;font-size:var(--text-xs);font-variant-numeric:tabular-nums;text-align:center;background:#ffffff17;border-radius:20px;padding:2px 7px;font-weight:650}.sidebar nav a.active small{color:#1b2520;background:#f0d7a4}.sidebar-spacer{flex:1}.sidebar-actions{gap:8px;display:grid}.quick-add{color:#dfe7e2;width:100%;min-height:40px;font-size:var(--text-md);cursor:pointer;transition:background-color var(--t-fast), border-color var(--t-fast), transform var(--t-fast);background:#ffffff09;border:1px solid #ffffff17;border-radius:11px;align-items:center;gap:10px;padding:0 12px;font-weight:600;display:flex}.quick-add span{text-align:left;flex:1}.quick-add:hover{background:#ffffff12;border-color:#ffffff29}.quick-add:active{transform:scale(.98)}.quick-add--accent{color:#f6e3bd;background:linear-gradient(135deg,#d49a3e38,#d49a3e0f);border-color:#d49a3e59}.quick-add--accent:hover{background:linear-gradient(135deg,#d49a3e4d,#d49a3e1a);border-color:#d49a3e8c}.sidebar .kbd{color:#d9cfb8;background:#ffffff0f;border-color:#ffffff24}.profile-block{border-top:1px solid #ffffff14;grid-template-columns:34px 1fr auto;align-items:center;gap:10px;margin-top:16px;padding:16px 8px 0;display:grid}.profile-block>div{flex-direction:column;min-width:0;display:flex}.profile-block strong,.profile-block span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.profile-block strong{font-size:var(--text-sm);font-weight:650}.profile-block div>span{color:#8e9e95;font-size:var(--text-xs);margin-top:2px}.sync-dot{width:8px;height:8px;transition:background-color var(--t);background:#6bc596;border-radius:50%;box-shadow:0 0 0 4px #6bc5961a}.sync-dot--busy{background:var(--gold);animation:pulse 1s var(--ease-in-out) infinite;box-shadow:0 0 0 4px #d49a3e24}.main-content{min-width:0;padding:40px clamp(28px,4vw,64px) 80px}.page{max-width:1360px;animation:page-in .28s var(--ease-out);margin:0 auto}.page-fallback{max-width:1360px;animation:fade-in .2s var(--ease-out) .15s backwards;gap:12px;margin:0 auto;display:grid}.page-fallback>:last-child{margin-top:18px}.page-heading{justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:28px;display:flex}.page-heading--hero{align-items:center}.page-heading h1{color:var(--ink);letter-spacing:-.035em;text-wrap:balance;margin:2px 0 8px;font-size:clamp(30px,2.9vw,40px);font-weight:700;line-height:1.08}.page-heading p:last-child{max-width:620px;color:var(--muted);margin:0;font-size:14.5px}.page-heading p a{color:var(--green);text-underline-offset:3px;font-weight:650}.eyebrow{color:var(--green-2);font-size:var(--text-xs);letter-spacing:.12em;text-transform:uppercase;margin-bottom:6px;font-weight:700}.heading-actions,.form-actions,.settings-actions{align-items:center;gap:8px;display:flex}.kbd{border:1px solid var(--line-strong);min-width:20px;height:20px;color:var(--muted);background:var(--card);border-bottom-width:2px;border-radius:6px;place-items:center;padding:0 5px;font-size:10.5px;font-weight:600;line-height:1;display:inline-grid}.kbd+.kbd{margin-left:3px}.button{min-height:38px;font-size:var(--text-md);white-space:nowrap;cursor:pointer;transition:background-color var(--t-fast), border-color var(--t-fast), color var(--t-fast), box-shadow var(--t-fast), opacity var(--t), transform var(--t-fast) var(--ease-out);border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:7px;padding:0 15px;font-weight:650;line-height:1;text-decoration:none;display:inline-flex}.button:active:not(:disabled){transform:scale(.97)}.button:disabled{cursor:not-allowed;opacity:.5}.button--sm{min-height:30px;font-size:var(--text-sm);border-radius:8px;padding:0 11px}.button--primary{color:#fff;background:var(--green);box-shadow:inset 0 1px #ffffff1f,0 4px 14px #2f5c4833}.button--primary:hover:not(:disabled){background:var(--green-hover)}.button--secondary{border-color:var(--line-strong);color:var(--ink);background:var(--card);box-shadow:0 1px 2px #1e23200a}.button--secondary:hover:not(:disabled){background:var(--paper);border-color:#bfb9a8}.button--ghost{color:var(--ink-2);background:0 0}.button--ghost:hover:not(:disabled){background:var(--sunken)}.button--danger{color:var(--red);background:var(--red-soft)}.button--danger:hover:not(:disabled){background:#f4d6d0}.button--quiet-danger{color:var(--red)}.button--quiet-danger:hover:not(:disabled){background:var(--red-soft)}.icon-button{width:34px;height:34px;color:var(--muted);cursor:pointer;transition:background-color var(--t-fast), color var(--t-fast), border-color var(--t-fast), transform var(--t-fast);background:0 0;border:1px solid #0000;border-radius:9px;flex:none;place-items:center;padding:0;display:inline-grid}.icon-button:hover:not(:disabled){color:var(--ink);background:var(--sunken)}.icon-button:active:not(:disabled){transform:scale(.92)}.icon-button:disabled{cursor:not-allowed;opacity:.45}.text-button{color:var(--green);font-size:var(--text-sm);cursor:pointer;transition:color var(--t-fast), opacity var(--t);background:0 0;border:0;align-items:center;gap:5px;padding:2px 0;font-weight:650;text-decoration:none;display:inline-flex}.text-button:hover:not(:disabled){color:var(--green-hover);text-underline-offset:3px;text-decoration:underline}.text-button:disabled{cursor:not-allowed;opacity:.5}.text-button--muted{color:var(--muted)}.text-button--muted:hover:not(:disabled){color:var(--ink)}.panel,.table-panel,.calendar-card,.settings-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--paper);box-shadow:var(--shadow-sm)}.panel{padding:22px 24px}.panel-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.panel-header h2,.settings-card h2{letter-spacing:-.02em;margin:0;font-size:17px;font-weight:650}.panel-header .eyebrow{margin-bottom:3px}.panel-title-with-icon{align-items:center;gap:12px;display:flex}.panel-icon{width:34px;height:34px;color:var(--green);background:var(--green-soft);border-radius:10px;flex:none;place-items:center;display:grid}.panel-icon--gold{color:var(--gold-ink);background:var(--gold-soft)}.panel-icon--red{color:var(--red);background:var(--red-soft)}.stagger>*{animation:rise-in var(--t-slow) var(--ease-out) backwards}.stagger>:nth-child(2){animation-delay:30ms}.stagger>:nth-child(3){animation-delay:60ms}.stagger>:nth-child(4){animation-delay:90ms}.stagger>:nth-child(5){animation-delay:.12s}.stagger>:nth-child(6){animation-delay:.15s}.stagger>:nth-child(7){animation-delay:.18s}.stagger>:nth-child(n+8){animation-delay:.21s}.skeleton{background:linear-gradient(90deg, var(--sunken) 0%, var(--sunken-2) 45%, var(--sunken) 90%);background-size:220% 100%;border-radius:6px;flex:none;animation:1.4s linear infinite shimmer;display:block}.kind-pill{color:var(--green);background:var(--green-soft);letter-spacing:.04em;text-transform:uppercase;border-radius:6px;align-items:center;padding:2px 7px;font-size:10.5px;font-weight:700;display:inline-flex}.kind-pill--reminder,.kind-pill--chore{color:var(--gold-ink);background:var(--gold-soft)}.overdue{color:var(--red)!important}.member-dots{flex:none;padding-left:6px;display:flex}.mini-avatar{border:2px solid var(--paper);color:#1d2621;border-radius:50%;flex:none;place-items:center;width:26px;height:26px;margin-left:-6px;font-size:10.5px;font-weight:750;display:grid}.mini-avatar--more{color:var(--muted);background:var(--sunken-2)}.mini-avatar--lg{border:0;width:30px;height:30px;margin:0;font-size:12px}.unassigned{color:var(--subtle);font-size:var(--text-sm);white-space:nowrap}.complete-toggle{border:1.5px solid var(--line-strong);color:#0000;background:var(--card);cursor:pointer;width:22px;height:22px;transition:border-color var(--t-fast), background-color var(--t) var(--ease-out), color var(--t-fast), transform var(--t-fast) var(--ease-out);border-radius:50%;flex:none;place-items:center;padding:0;display:grid;position:relative}.complete-toggle svg{opacity:0;transition:transform var(--t) var(--ease-spring), opacity var(--t-fast);transform:scale(.5)}.complete-toggle:hover{border-color:var(--green-2);color:var(--green-2)}.complete-toggle:hover svg{opacity:.5;transform:scale(.85)}.complete-toggle:active{transform:scale(.88)}.complete-toggle:disabled{cursor:default}.complete-toggle.is-done{border-color:var(--green);color:#fff;background:var(--green)}.complete-toggle.is-done svg{opacity:1;transform:scale(1)}.complete-toggle:after{content:"";pointer-events:none;border-radius:50%;position:absolute;inset:-2px}.complete-toggle.is-done[data-busy]:after{animation:burst .52s var(--ease-out)}.complete-toggle.is-done[data-busy] svg{animation:check-pop .36s var(--ease-spring)}.checkbox{border:1.5px solid var(--line-strong);color:#0000;background:var(--card);width:17px;height:17px;transition:background-color var(--t-fast), border-color var(--t-fast), color var(--t-fast);border-radius:5px;flex:none;place-items:center;display:inline-grid}.checkbox svg{transition:transform var(--t) var(--ease-spring);transform:scale(.4)}.is-done>*>.checkbox,.is-done>.checkbox,input:checked+.checkbox{border-color:var(--green);color:#fff;background:var(--green)}.is-done>*>.checkbox svg,.is-done>.checkbox svg,input:checked+.checkbox svg{transform:scale(1)}input:focus-visible+.checkbox{outline:2px solid var(--green-2);outline-offset:2px}.progress-bar{background:var(--sunken-2);border-radius:4px;width:34px;height:4px;display:block;position:relative;overflow:hidden}.progress-bar span{border-radius:inherit;background:var(--green-2);transform-origin:0;transition:transform .42s var(--ease-out);position:absolute;inset:0}.toolbar{justify-content:space-between;align-items:center;gap:20px;margin-bottom:14px;display:flex}.segmented{background:var(--sunken-2);border-radius:11px;grid-auto-columns:1fr;grid-auto-flow:column;padding:3px;display:grid}.segmented button{min-height:32px;color:var(--muted);font-size:var(--text-md);white-space:nowrap;cursor:pointer;transition:color var(--t-fast), background-color var(--t-fast), box-shadow var(--t-fast);background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:0 14px;font-weight:600;display:inline-flex}.segmented button:hover{color:var(--ink)}.segmented button.active{color:var(--ink);background:var(--card);box-shadow:0 1px 2px #1e232014,0 2px 8px #1e23200f}.segmented--toolbar button span{min-width:20px;height:20px;font-size:var(--text-xs);font-variant-numeric:tabular-nums;background:#2f5c4817;border-radius:10px;place-items:center;padding:0 5px;display:inline-grid}.search-field{border:1px solid var(--line-strong);width:260px;height:38px;color:var(--muted);background:var(--field);transition:border-color var(--t-fast), box-shadow var(--t-fast);border-radius:10px;align-items:center;gap:8px;padding:0 12px;display:flex}.search-field:focus-within{border-color:var(--green-2);box-shadow:0 0 0 3px var(--ring)}.search-field input{width:100%;font-size:var(--text-md);background:0 0;border:0;outline:0}.toolbar-note{color:var(--muted);font-size:var(--text-md);margin:0;font-weight:600}.week-strip{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--paper);box-shadow:var(--shadow-sm);align-items:center;gap:6px;margin-bottom:22px;padding:6px;display:flex}.week-strip__days{flex:1;grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.week-day{color:var(--ink);cursor:pointer;transition:background-color var(--t-fast), color var(--t-fast), box-shadow var(--t) var(--ease-out), transform var(--t-fast);background:0 0;border:0;border-radius:12px;justify-items:center;gap:1px;padding:7px 0 8px;display:grid}.week-day>span:first-child{color:var(--muted);font-size:var(--text-xs);letter-spacing:.04em;text-transform:uppercase;font-weight:650}.week-day strong{font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:18px;font-weight:650}.week-day:hover{background:var(--sunken)}.week-day:active{transform:scale(.96)}.week-day.is-past strong{color:var(--muted)}.week-day.is-today strong{color:var(--green)}.week-day.is-selected{color:#fff;background:var(--green);box-shadow:0 6px 16px #2f5c483d}.week-day.is-selected>span:first-child,.week-day.is-selected strong{color:#fff}.week-day__dots{justify-content:center;gap:3px;height:4px;margin-top:3px;display:flex}.week-day__dots i{background:var(--gold);border-radius:50%;width:4px;height:4px}.week-day.is-selected .week-day__dots i{background:#f3ddac}.today-layout{grid-template-columns:minmax(0,1fr) minmax(320px,360px);align-items:start;gap:20px;display:grid}.today-layout:has(>.today-side:empty){grid-template-columns:minmax(0,1fr)}.today-side{gap:18px;display:grid;position:sticky;top:24px}.today-side:empty{display:none}.schedule-panel{padding-bottom:12px}.timeline{margin:0 -12px;padding:0;list-style:none}.timeline-row{transition:background-color var(--t-fast);border-radius:14px;grid-template-columns:76px 24px minmax(0,1fr) auto;align-items:start;gap:14px;padding:13px 12px;display:grid;position:relative}.timeline-row:hover{background:var(--sunken)}.timeline-row__time{text-align:right;flex-direction:column;align-items:flex-end;padding-top:1px;display:flex}.timeline-row__time strong{color:var(--ink-2);font-size:var(--text-md);font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:650}.timeline-row__time span{color:var(--subtle);font-size:var(--text-xs)}.timeline-row__marker{justify-content:center;align-self:stretch;display:flex;position:relative}.timeline-row__marker:before{background:var(--line);content:"";width:1.5px;position:absolute;top:-13px;bottom:-13px;left:50%;transform:translate(-50%)}.timeline>.timeline-row:first-child .timeline-row__marker:before{top:11px}.timeline>.timeline-row:last-child .timeline-row__marker:before{bottom:calc(100% - 11px)}.timeline-row__marker>*{z-index:1;position:relative}.event-dot{background:var(--entry-color,var(--green));width:12px;height:12px;box-shadow:0 0 0 4px var(--paper);transition:box-shadow var(--t-fast);border-radius:50%;flex:none;margin-top:5px}.timeline-row:hover .event-dot{box-shadow:0 0 0 4px var(--sunken)}.timeline-row__body{min-width:0}.timeline-row__heading{align-items:center;gap:8px;min-width:0;display:flex}.timeline-row h3{letter-spacing:-.01em;text-overflow:ellipsis;white-space:nowrap;transition:color var(--t-fast);margin:0;font-size:15px;font-weight:620;overflow:hidden}.timeline-row__title{text-align:left;cursor:pointer;background:0 0;border:0;min-width:0;padding:0}.timeline-row__title:hover h3{color:var(--green)}.timeline-row__meta{color:var(--muted);font-size:var(--text-sm);flex-wrap:wrap;align-items:center;gap:4px 12px;margin:4px 0 0;display:flex}.timeline-row__meta>span:not(.kind-pill){align-items:center;gap:4px;display:inline-flex}.timeline-row .member-dots,.timeline-row .unassigned{margin-top:1px}.timeline-row.is-past .timeline-row__time strong,.timeline-row.is-past h3{color:var(--muted)}.timeline-row.is-done h3{color:var(--muted);text-decoration:line-through;-webkit-text-decoration-color:var(--line-strong);text-decoration-color:var(--line-strong)}.timeline-row.is-current{background:linear-gradient(90deg,#d49a3e24,#d49a3e0a)}.timeline-row.is-current .event-dot{animation:pulse-ring 2.4s var(--ease-in-out) infinite;box-shadow:0 0 0 4px #d49a3e38}.now-badge{color:#fff;background:var(--gold);letter-spacing:.05em;text-transform:uppercase;border-radius:6px;flex:none;padding:2px 7px;font-size:10.5px;font-weight:750}.now-marker{grid-template-columns:76px 24px minmax(0,1fr);align-items:center;gap:14px;height:20px;padding:0 12px;display:grid}.now-marker span{color:#fff;background:var(--red);font-size:var(--text-xs);font-variant-numeric:tabular-nums;border-radius:6px;justify-self:end;padding:1px 6px;font-weight:700}.now-marker:before{background:var(--red);content:"";border-radius:50%;justify-self:center;width:9px;height:9px;box-shadow:0 0 0 3px #b4493c2e}.now-marker:after{background:linear-gradient(90deg, var(--red), #b4493c00);content:"";border-radius:2px;height:1.5px}.overdue-list{gap:2px;margin:0 -8px;padding:0;list-style:none;display:grid}.overdue-row{transition:background-color var(--t-fast);border-radius:10px;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:12px;padding:9px 8px;display:grid}.overdue-row:hover{background:var(--sunken)}.overdue-row__body{text-align:left;cursor:pointer;background:0 0;border:0;flex-direction:column;min-width:0;padding:0;display:flex}.overdue-row__body strong{font-size:var(--text-md);text-overflow:ellipsis;white-space:nowrap;font-weight:620;overflow:hidden}.overdue-row__body span{color:var(--red);font-size:var(--text-sm)}.checklist-add-trigger,.checklist-chip{font-size:var(--text-sm);cursor:pointer;transition:opacity var(--t-fast), background-color var(--t-fast), border-color var(--t-fast), color var(--t-fast);border-radius:8px;align-items:center;gap:6px;margin-top:8px;font-weight:600;display:inline-flex}.checklist-add-trigger{border:1px dashed var(--line-strong);height:24px;color:var(--muted);background:0 0;padding:0 8px 0 6px}.checklist-add-trigger:hover{border-color:var(--green-2);color:var(--green)}:is(.timeline-row,.reminder-row):not(:hover,:focus-within) .checklist-add-trigger{opacity:0}.checklist-chip{border:1px solid var(--line);height:26px;color:var(--ink-2);background:var(--card);font-variant-numeric:tabular-nums;padding:0 9px}.checklist-chip:hover{border-color:var(--line-strong)}.checklist-chip--complete{color:var(--green)}.checklist{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--card);animation:rise-in var(--t) var(--ease-out);margin-top:10px;padding:10px 12px}.checklist__header{color:var(--muted);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;justify-content:space-between;align-items:center;margin-bottom:4px;font-weight:700;display:flex}.checklist ul{margin:0;padding:0;list-style:none;display:grid}.checklist-item{transition:background-color var(--t-fast);border-radius:8px;align-items:center;gap:6px;margin:0 -6px;display:flex}.checklist-item:hover{background:var(--sunken)}.checklist-item__toggle{text-align:left;cursor:pointer;background:0 0;border:0;flex:1;align-items:center;gap:10px;min-width:0;min-height:34px;padding:0 6px;display:flex}.checklist-item__title{font-size:var(--text-md);text-overflow:ellipsis;white-space:nowrap;transition:color var(--t-fast);overflow:hidden}.checklist-item.is-done .checklist-item__title{color:var(--muted);text-decoration:line-through;-webkit-text-decoration-color:var(--line-strong);text-decoration-color:var(--line-strong)}.checklist-item__remove{width:26px;height:26px;color:var(--muted);cursor:pointer;opacity:0;transition:opacity var(--t-fast), background-color var(--t-fast), color var(--t-fast);background:0 0;border:0;border-radius:7px;place-items:center;margin-right:4px;padding:0;display:grid}.checklist-item:hover .checklist-item__remove,.checklist-item__remove:focus-visible{opacity:1}.checklist-item__remove:hover{color:var(--red);background:var(--red-soft)}.checklist__add{min-height:34px;color:var(--subtle);align-items:center;gap:10px;margin-top:2px;display:flex}.checklist__add svg{flex:none;margin-left:1px}.checklist__add input{min-width:0;height:30px;font-size:var(--text-md);background:0 0;border:0;outline:0;flex:1}.checklist__add input::placeholder{color:var(--subtle)}.briefing-panel{padding-bottom:18px}.briefing-list{gap:10px;display:grid}.briefing-card{border:1px solid var(--line);background:var(--card);animation:rise-in var(--t-slow) var(--ease-out) backwards;border-radius:14px;gap:6px;padding:14px 16px;display:grid}.briefing-card h3{font-size:var(--text-base);letter-spacing:-.01em;margin:0;font-weight:620}.briefing-card p{color:var(--muted);font-size:var(--text-md);margin:0}.briefing-actions{flex-wrap:wrap;align-items:center;gap:6px 10px;margin-top:6px;display:flex}.briefing-actions__spacer,.drawer-actions__spacer{flex:1}.receipt-card{border-radius:var(--radius-md);color:var(--green);background:var(--green-soft);animation:rise-in var(--t-slow) var(--ease-out);align-items:flex-start;gap:10px;margin-top:12px;padding:12px 14px;display:flex}.receipt-card svg{flex:none;margin-top:1px}.receipt-card ul{color:var(--ink);font-size:var(--text-md);margin:0;padding:0;font-weight:600;list-style:none}.receipt-card .briefing-actions{margin-top:4px}.capture-box{transition:border-color var(--t-fast), box-shadow var(--t) var(--ease-out);margin-bottom:22px;padding:0}.capture-box:focus-within{box-shadow:0 0 0 4px var(--ring), var(--shadow-md);border-color:#b8cdbf}.capture-box.is-listening{box-shadow:0 0 0 4px #b4493c1a, var(--shadow-md);border-color:#b4493c73}.capture-box textarea{resize:none;field-sizing:content;background:0 0;border:0;outline:0;width:100%;min-height:96px;max-height:320px;padding:20px 22px 6px;font-size:15.5px;line-height:1.6;display:block}.capture-box textarea::placeholder{color:var(--subtle)}.capture-box__footer{justify-content:space-between;align-items:center;gap:16px;padding:10px 14px 14px 22px;display:flex}.capture-box__hint{color:var(--muted);font-size:var(--text-sm);align-items:center;gap:6px;margin:0;display:flex}.live-dot{background:var(--red);border-radius:50%;width:8px;height:8px;display:inline-block;position:relative}.live-dot:after{background:var(--red);content:"";animation:ping 1.3s var(--ease-out) infinite;border-radius:50%;position:absolute;inset:0}.inbox-list,.inbox-card{gap:14px;display:grid}.inbox-card__byline{color:var(--muted);font-size:var(--text-md);flex-wrap:wrap;align-items:center;gap:10px;display:flex}.inbox-card__byline strong{color:var(--ink);font-weight:650}.source-chip,.status-chip{height:22px;color:var(--muted);background:var(--sunken);font-size:var(--text-xs);border-radius:999px;align-items:center;gap:5px;padding:0 8px;font-weight:650;display:inline-flex}.status-chip--working{color:var(--gold-ink);background:var(--gold-soft);margin-left:auto}.inbox-card__transcript{border-left:3px solid var(--line-strong);color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere;margin:0;padding:2px 0 2px 16px;font-size:16px;line-height:1.6}.inbox-card.is-working .inbox-card__transcript{border-left-color:var(--gold)}.inline-alert{color:var(--red);background:var(--red-soft);font-size:var(--text-md);border-radius:10px;align-items:center;gap:10px;padding:10px 12px;font-weight:550;display:flex}.inline-alert span{flex:1}.inbox-suggestions{gap:6px;display:grid}.inbox-suggestions__label{color:var(--muted);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;margin:0 0 2px;font-weight:700}.suggestion-row{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--card);transition:border-color var(--t-fast), background-color var(--t-fast), opacity var(--t);grid-template-columns:20px 32px minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 10px 10px 14px;display:grid}.suggestion-row:hover{border-color:var(--line-strong)}.suggestion-row.is-selected{background:var(--green-tint);border-color:#bcd2c3}.suggestion-row.is-committed{opacity:.72}.suggestion-row.is-dismissed{opacity:.55}.suggestion-row.is-dismissed strong{text-decoration:line-through}.suggestion-row--ghost{background:0 0;border-style:dashed;grid-template-columns:20px 1fr}.suggestion-row--editing{box-shadow:0 0 0 4px var(--ring);animation:rise-in var(--t) var(--ease-out);border-color:#bcd2c3;padding:16px;display:block}.suggestion-row__check{cursor:pointer;place-items:center;display:grid;position:relative}.suggestion-row__check input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.suggestion-row__check input:disabled{cursor:not-allowed}.suggestion-row__icon{border-radius:9px;place-items:center;width:32px;height:32px;display:grid}.suggestion-row__icon--event{color:var(--green);background:var(--green-soft)}.suggestion-row__icon--task{color:var(--gold-ink);background:var(--gold-soft)}.suggestion-row__body{flex-direction:column;min-width:0;display:flex}.suggestion-row__body strong{font-size:var(--text-base);text-overflow:ellipsis;white-space:nowrap;font-weight:620;overflow:hidden}.suggestion-row__body>span{color:var(--muted);font-size:var(--text-sm)}.needs-info{color:var(--gold-ink);font-size:var(--text-sm);align-items:center;gap:4px;margin-top:3px;font-weight:600;display:inline-flex}.inbox-card__actions{border-top:1px solid var(--line);justify-content:flex-end;align-items:center;gap:8px;padding-top:14px;display:flex}.load-more{justify-content:center;margin-top:20px;display:flex}.table-panel{min-height:380px;overflow:hidden}.reminder-table{display:grid}.reminder-row{border-top:1px solid var(--line);min-height:68px;transition:background-color var(--t-fast), opacity var(--t);grid-template-columns:28px minmax(200px,1.8fr) minmax(150px,1fr) 96px 76px;align-items:start;gap:10px;padding:16px 18px;display:grid}.reminder-row:hover{background:var(--green-tint)}.reminder-row:first-child{border-top:0}.reminder-row .complete-toggle{margin-top:1px}.reminder-row--done .reminder-title h3{color:var(--muted);text-decoration:line-through;-webkit-text-decoration-color:var(--line-strong);text-decoration-color:var(--line-strong)}.reminder-row--done .due-text{color:var(--subtle)}.reminder-title{min-width:0}.reminder-title h3{font-size:var(--text-base);text-overflow:ellipsis;white-space:nowrap;margin:0;font-weight:620;overflow:hidden}.reminder-title p{color:var(--muted);font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap;margin:3px 0 0;overflow:hidden}.due-text,.repeat-text{color:var(--muted);font-size:var(--text-sm);font-variant-numeric:tabular-nums;padding-top:2px}.row-actions{justify-content:flex-end;gap:2px;display:flex}.reminder-row .row-actions{opacity:0;transition:opacity var(--t-fast)}.reminder-row:hover .row-actions,.reminder-row:focus-within .row-actions{opacity:1}.routine-layout{grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);align-items:start;gap:18px;display:grid}.routine-row{border-top:1px solid var(--line);min-height:68px;transition:background-color var(--t-fast);grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:10px;padding:0 18px;display:grid}.routine-row:first-child{border-top:0}.routine-row:hover{background:var(--sunken)}.routine-row--selected,.routine-row--selected:hover{background:var(--green-tint);box-shadow:inset 3px 0 var(--green-2)}.routine-row.reminder-row--done h3{color:var(--muted);text-decoration:line-through}.routine-row__main{text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:minmax(0,1.4fr) minmax(120px,.8fr);align-items:center;gap:10px;width:100%;min-width:0;padding:12px 0;display:grid}.routine-detail{animation:rise-in var(--t-slow) var(--ease-out);position:sticky;top:24px}.routine-detail__meta,.routine-detail__notes,.routine-detail__empty{color:var(--muted);font-size:var(--text-md)}.routine-detail>.button{margin:6px 0 4px}.routine-detail__notes{margin-top:0}.routine-detail__history-title{color:var(--muted);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;margin:22px 0 4px;font-weight:700}.occurrence-list{display:grid}.occurrence{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;min-height:56px;display:flex}.occurrence:first-child{border-top:0}.occurrence strong{font-size:var(--text-md);font-weight:620;display:block}.occurrence p{color:var(--muted);font-size:var(--text-sm);margin:2px 0 0}.calendar-layout{grid-template-columns:minmax(640px,1fr) 300px;align-items:start;gap:18px;display:grid}.calendar-card{overflow:hidden}.calendar-controls{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:66px;padding:0 16px 0 22px;display:flex}.calendar-controls h2{letter-spacing:-.02em;margin:0;font-size:18px;font-weight:650}.calendar-controls>div{align-items:center;gap:4px;display:flex}.calendar-weekdays{border-bottom:1px solid var(--line);grid-template-columns:repeat(7,1fr);display:grid}.calendar-weekdays span{color:var(--muted);font-size:var(--text-xs);letter-spacing:.08em;text-align:center;text-transform:uppercase;padding:10px;font-weight:700}.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.calendar-day{border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:112px;transition:background-color var(--t-fast);padding:8px}.calendar-day:hover{background:var(--green-tint)}.calendar-day:nth-child(7n){border-right:0}.calendar-day:nth-last-child(-n+7){border-bottom:0}.calendar-day>span{width:26px;height:26px;color:var(--ink-2);font-size:var(--text-sm);font-variant-numeric:tabular-nums;border-radius:50%;place-items:center;margin-left:auto;font-weight:600;display:grid}.calendar-day--outside{background:#f8f6f0}.calendar-day--outside>span{color:var(--subtle)}.calendar-day--today>span{color:#fff;background:var(--green)}.calendar-day>div{gap:3px;margin-top:4px;display:grid}.calendar-event{background:var(--sunken);font-size:var(--text-xs);text-align:left;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;transition:background-color var(--t-fast);border:0;border-radius:6px;align-items:center;gap:5px;padding:3px 6px;display:flex;overflow:hidden}.calendar-event:hover{background:var(--sunken-2)}.calendar-event i{border-radius:50%;flex:none;width:6px;height:6px;display:inline-block}.calendar-event b{color:var(--muted);flex:none;font-weight:600}.calendar-day small{color:var(--muted);font-size:var(--text-xs);padding-left:6px;font-weight:600}.calendar-agenda{position:sticky;top:24px}.upcoming-stack{gap:6px;display:grid}.upcoming-card{background:var(--sunken);text-align:left;cursor:pointer;transition:background-color var(--t-fast), border-color var(--t-fast);border:1px solid #0000;border-radius:12px;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:12px;padding:10px;display:grid}.upcoming-card:hover{border-color:var(--line);background:var(--sunken-2)}.upcoming-card time{color:var(--green);flex-direction:column;align-items:center;display:flex}.upcoming-card time b{font-size:18px;line-height:1.1}.upcoming-card time span{text-transform:uppercase;font-size:10.5px;font-weight:700}.upcoming-card div{flex-direction:column;min-width:0;display:flex}.upcoming-card strong,.upcoming-card span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.upcoming-card strong{font-size:var(--text-md);font-weight:620}.upcoming-card div span{color:var(--muted);font-size:var(--text-sm);margin-top:2px}.subscription-panel{margin-top:18px}.subscription-list{display:grid}.subscription-row{border-top:1px solid var(--line);grid-template-columns:1fr auto;align-items:center;gap:12px;padding:14px 0;display:grid}.subscription-row:first-child{border-top:0}.subscription-row h3{font-size:var(--text-base);margin:0;font-weight:620}.subscription-row p{color:var(--muted);font-size:var(--text-sm);margin:3px 0 0}.family-switcher-panel{border:1px solid var(--line);background:var(--paper);border-radius:14px;justify-content:space-between;align-items:center;margin-bottom:18px;padding:16px 20px;display:flex}.family-switcher-panel>div:first-child{flex-direction:column;gap:2px;display:flex}.family-switcher-panel span{color:var(--muted);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;font-weight:700}.family-switcher-panel strong{font-size:var(--text-lg)}.family-switcher-panel>div:last-child{gap:6px;display:flex}.family-switcher-panel button{border:1px solid var(--line-strong);background:var(--card);font-size:var(--text-sm);cursor:pointer;transition:background-color var(--t-fast), border-color var(--t-fast);border-radius:9px;padding:7px 12px;font-weight:600}.family-switcher-panel button:hover:not(:disabled){border-color:var(--green-2)}.family-switcher-panel button.active{border-color:var(--green);color:#fff;background:var(--green);cursor:default}.member-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;display:grid}.member-card,.add-member-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--paper);min-height:220px;box-shadow:var(--shadow-sm);transition:box-shadow var(--t) var(--ease-out), border-color var(--t-fast);padding:22px}.member-card:hover{box-shadow:var(--shadow-md)}.member-card__top{justify-content:space-between;align-items:flex-start;display:flex}.member-avatar{color:#1d2621;border-radius:16px;place-items:center;width:54px;height:54px;font-size:20px;font-weight:750;display:grid}.member-card h2{letter-spacing:-.02em;margin:16px 0 2px;font-size:17px;font-weight:650}.member-card>p{min-height:18px;color:var(--muted);font-size:var(--text-md);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.member-card__meta{gap:6px;margin-top:16px;display:flex}.member-card .form-actions{margin-top:12px}.role-pill,.invite-pill{color:var(--gold-ink);background:var(--gold-soft);font-size:var(--text-xs);text-transform:capitalize;border-radius:7px;align-items:center;gap:4px;padding:3px 8px;font-weight:700;display:inline-flex}.invite-pill{color:var(--green);background:var(--green-soft)}.invite-pill--pending{color:var(--gold-ink);background:var(--gold-soft)}.invite-pill--revoked{color:var(--red);background:var(--red-soft)}.add-member-card{border:1.5px dashed var(--line-strong);color:var(--muted);box-shadow:none;cursor:pointer;background:0 0;flex-direction:column;justify-content:center;align-items:center;display:flex}.add-member-card:hover{border-color:var(--green-2);color:var(--green);background:var(--green-tint)}.add-member-card>span{width:44px;height:44px;color:var(--green);background:var(--green-soft);transition:transform var(--t) var(--ease-spring);border-radius:50%;place-items:center;margin-bottom:12px;display:grid}.add-member-card:hover>span{transform:scale(1.08)rotate(90deg)}.add-member-card strong{font-size:var(--text-base)}.add-member-card small{max-width:190px;font-size:var(--text-sm);text-align:center;margin-top:4px;line-height:1.45}.settings-grid{grid-template-columns:minmax(460px,1.4fr) minmax(320px,.9fr);align-items:start;gap:18px;display:grid}.settings-card{padding:24px}.settings-card>header{grid-template-columns:40px 1fr;gap:14px;margin-bottom:20px;display:grid}.settings-card>header>span{width:40px;height:40px;color:var(--green);background:var(--green-soft);border-radius:12px;place-items:center;display:grid}.settings-card header p{color:var(--muted);font-size:var(--text-md);margin:4px 0 0;line-height:1.5}.settings-card>.form-stack{padding:0}.connection-card dl{margin:0}.connection-card dl div{border-top:1px solid var(--line);padding:12px 0}.connection-card dt{color:var(--muted);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;font-weight:700}.connection-card dd{font-size:var(--text-md);text-overflow:ellipsis;white-space:nowrap;margin:3px 0 0;overflow:hidden}.copy-field{gap:8px;display:flex}.copy-field input{min-width:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:var(--text-sm)!important}.copy-field .button{min-height:40px;margin-top:7px}.field-help,.form-note{color:var(--muted);font-size:var(--text-sm);margin:-6px 0 0;line-height:1.5}.overlay{z-index:100;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:fade-in var(--t) var(--ease-out);background:#141b1766;position:fixed;inset:0}.overlay--center{place-items:center;padding:24px;display:grid}.overlay--side{justify-content:flex-end;display:flex}.overlay.is-leaving{pointer-events:none;animation:fade-out .2s var(--ease-in) forwards}.overlay--side.is-leaving{animation-duration:.24s}.modal-card{overscroll-behavior:contain;border-radius:var(--radius-xl);background:var(--paper);width:min(100%,560px);max-height:calc(100vh - 48px);box-shadow:var(--shadow-xl);animation:modal-in .3s var(--ease-out);outline:none;overflow:auto}.modal-card--wide{width:min(100%,700px)}.is-leaving .modal-card{animation:modal-out .2s var(--ease-in) forwards}.modal-header{z-index:1;border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--paper) 92%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);justify-content:space-between;align-items:center;padding:22px 24px 16px;display:flex;position:sticky;top:0}.modal-header h2{letter-spacing:-.03em;margin:0;font-size:20px;font-weight:680}.modal-header .eyebrow{margin-bottom:2px}.drawer{background:var(--paper);height:100%;box-shadow:var(--shadow-xl);animation:drawer-in .42s var(--ease-out);outline:none;overflow:hidden}.is-leaving .drawer{animation:drawer-out .24s var(--ease-in) forwards}.detail-drawer{flex-direction:column;width:min(440px,100vw);display:flex}.detail-drawer__header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:20px;padding:26px 24px 20px 28px;display:flex}.detail-drawer h2{letter-spacing:-.03em;margin:0;font-size:23px;font-weight:700;line-height:1.2}.detail-drawer__body{flex:1;padding:6px 28px 24px;overflow:auto}.event-date-block{color:var(--green);background:var(--green-soft);border-radius:14px;gap:12px;margin-top:18px;padding:16px;display:flex}.event-date-block div{flex-direction:column;gap:2px;display:flex}.event-date-block strong{font-size:var(--text-base)}.event-date-block span{font-size:var(--text-md)}.detail-line{color:var(--ink-2);font-size:var(--text-md);align-items:center;gap:8px;margin:16px 0 0;display:flex}.detail-copy{color:var(--ink-2);font-size:var(--text-base);white-space:pre-wrap;margin-top:18px;line-height:1.65}.detail-assignees{border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:var(--text-md);justify-content:space-between;align-items:center;margin:20px 0 6px;padding:14px 0;font-weight:650;display:flex}.drawer-actions{border-top:1px solid var(--line);background:var(--paper);align-items:center;gap:8px;padding:16px 24px 18px 28px;display:flex}.form-stack{gap:16px;padding:22px 24px 24px;display:grid}.form-stack--inline{gap:12px;padding:0}.form-stack label,.form-fieldset legend{color:var(--ink-2);font-size:var(--text-sm);font-weight:650}.form-stack input:not([type=checkbox]),.form-stack select,.form-stack textarea{border:1px solid var(--line-strong);width:100%;color:var(--ink);background:var(--field);font-size:var(--text-base);transition:border-color var(--t-fast), box-shadow var(--t-fast);border-radius:10px;outline:none;margin-top:6px;padding:9px 12px;font-weight:450}.form-stack input:not([type=checkbox]),.form-stack select{height:40px}.form-stack input:not([type=checkbox]):hover,.form-stack select:hover,.form-stack textarea:hover{border-color:#c4bead}.form-stack input:not([type=checkbox]):focus,.form-stack select:focus,.form-stack textarea:focus{border-color:var(--green-2);box-shadow:0 0 0 3px var(--ring)}.form-stack input[readonly]{color:var(--muted);background:var(--sunken)}.form-stack textarea{resize:vertical;line-height:1.5}.form-stack input::placeholder,.form-stack textarea::placeholder{color:var(--subtle)}.label-hint{color:var(--subtle);font-size:var(--text-xs);font-weight:500}.form-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.form-fieldset{border:0;margin:0;padding:0}.form-fieldset legend{margin-bottom:8px;padding:0}.choice-row{flex-wrap:wrap;gap:6px;display:flex}.person-choice{border:1px solid var(--line-strong);background:var(--card);min-height:34px;font-size:var(--text-md);cursor:pointer;transition:border-color var(--t-fast), background-color var(--t-fast), transform var(--t-fast);border-radius:999px;align-items:center;gap:7px;padding:3px 12px 3px 4px;font-weight:550;display:inline-flex}.person-choice:hover{border-color:#c4bead}.person-choice:active{transform:scale(.97)}.person-choice span{color:#1d2621;width:26px;height:26px;font-size:var(--text-xs);border-radius:50%;place-items:center;font-weight:750;display:grid}.person-choice--active,.person-choice--active:hover{border-color:var(--green-2);color:var(--green);background:var(--green-soft)}.form-actions{justify-content:flex-end;padding-top:4px}.form-actions--split{justify-content:space-between}.check-line{cursor:pointer;align-items:center;gap:10px;display:flex;font-size:var(--text-md)!important;font-weight:550!important}.check-line input{width:16px;height:16px;margin:0}.color-picker{gap:10px;display:flex}.color-picker button{border:3px solid var(--paper);width:32px;height:32px;box-shadow:0 0 0 1px var(--line-strong);cursor:pointer;transition:transform var(--t-fast) var(--ease-out), box-shadow var(--t-fast);border-radius:50%}.color-picker button:hover{transform:scale(1.08)}.color-picker button.active{box-shadow:0 0 0 2px var(--ink)}.scope-choice{border-top:1px solid var(--line);background:var(--gold-soft);animation:rise-in var(--t) var(--ease-out);padding:16px 24px 20px}.scope-choice p{color:var(--gold-ink);font-size:var(--text-md);margin-bottom:10px;font-weight:600}.empty-state{text-align:center;min-height:240px;animation:rise-in var(--t-slow) var(--ease-out);flex-direction:column;justify-content:center;align-items:center;padding:36px;display:flex}.empty-state__icon,.state-icon{width:52px;height:52px;color:var(--green);background:var(--green-soft);border-radius:16px;place-items:center;margin-bottom:14px;display:grid}.empty-state h3{font-size:var(--text-lg);margin-bottom:4px;font-weight:650}.empty-state p{max-width:340px;color:var(--muted);font-size:var(--text-md);margin-bottom:18px;line-height:1.55}.fullscreen-state{background:var(--cream);text-align:center;min-width:0;min-height:100vh;animation:fade-in var(--t-slow) var(--ease-out);flex-direction:column;justify-content:center;align-items:center;padding:40px;display:flex}.fullscreen-state .brand{color:var(--ink);margin-bottom:40px}.fullscreen-state>p{color:var(--muted);margin-top:16px}.fullscreen-state--error h1{letter-spacing:-.03em;margin-bottom:8px;font-size:28px}.fullscreen-state--error>p{max-width:520px;margin-bottom:20px;line-height:1.6}.fullscreen-state--error small{max-width:540px;color:var(--muted);font-size:var(--text-sm);margin-top:18px;line-height:1.6}.fullscreen-state code{background:var(--sunken-2);border-radius:5px;padding:2px 6px;font-size:.92em}.spinner{border:2.5px solid var(--sunken-2);border-top-color:var(--green);border-radius:50%;flex:none;width:24px;height:24px;animation:.75s linear infinite spin;display:inline-block}.spinner--sm{border-width:2px;border-color:color-mix(in srgb, currentColor 25%, transparent);border-top-color:currentColor;width:13px;height:13px}.auth-screen{grid-template-columns:1.15fr .85fr;min-width:1024px;min-height:100vh;display:grid}.auth-art{color:#f5f5ee;background:#22332b;flex-direction:column;justify-content:space-between;padding:52px 7vw;display:flex;position:relative;overflow:hidden}.auth-art:before,.auth-art:after{content:"";border-radius:50%;position:absolute}.auth-art:before{width:55vw;height:55vw;animation:drift 18s var(--ease-in-out) infinite alternate;border:1px solid #ffffff14;bottom:-25vw;right:-18vw;box-shadow:0 0 0 8vw #ffffff05,0 0 0 16vw #ffffff05}.auth-art:after{filter:blur(4px);width:220px;height:220px;animation:drift 12s var(--ease-in-out) infinite alternate-reverse;background:radial-gradient(circle at 35% 35%,#d49a3e66,#0000 70%);top:17%;right:10%}.brand--large{padding:0}.brand--large img{width:44px;height:44px}.auth-copy{z-index:1;max-width:610px;animation:rise-in .6s var(--ease-out) 80ms backwards;margin:12vh 0;position:relative}.auth-copy .eyebrow{color:#d8bf91}.auth-copy h1{letter-spacing:-.055em;margin-bottom:24px;font-size:clamp(44px,5.2vw,76px);font-weight:680;line-height:.98}.auth-copy>p:last-child{color:#bdc9c0;max-width:540px;font-size:17px;line-height:1.65}.auth-quote{z-index:1;color:#c4cec6;max-width:450px;font-size:var(--text-md);gap:10px;line-height:1.55;display:flex;position:relative}.auth-quote span{color:var(--gold);font-size:36px;line-height:.7}.auth-panel{background:var(--paper);place-items:center;padding:56px;display:grid}.auth-panel>div{text-align:center;width:100%;max-width:360px;animation:rise-in .5s var(--ease-out) .16s backwards;flex-direction:column;align-items:center;display:flex}.auth-icon{width:56px;height:56px;color:var(--green);background:var(--green-soft);border-radius:16px;place-items:center;margin-bottom:24px;font-size:24px;display:grid}.auth-panel h2{letter-spacing:-.035em;margin:2px 0 10px;font-size:28px;font-weight:700}.auth-panel p:not(.eyebrow){color:var(--muted);font-size:var(--text-base);margin-bottom:26px}.auth-panel .button{width:100%;min-height:48px;font-size:var(--text-base)}.auth-panel small{color:var(--subtle);font-size:var(--text-sm);margin-top:16px}.mobile-handoff{color:#eef3ee;text-align:center;background:#22332b;flex-direction:column;justify-content:center;align-items:center;min-width:0;min-height:100svh;padding:42px 28px;display:flex;position:relative;overflow:hidden}.mobile-handoff>*{position:relative}.mobile-handoff img{width:68px;height:68px;margin-bottom:30px}.mobile-handoff .eyebrow{color:#d8bf91}.mobile-handoff h1{letter-spacing:-.05em;max-width:420px;margin:5px 0 16px;font-size:clamp(34px,10vw,52px);line-height:1}.mobile-handoff>p:not(.eyebrow){color:#b8c5bc;max-width:420px;margin-bottom:28px;font-size:16px;line-height:1.6}.mobile-handoff .button{color:#22332b;background:#f3ddac;min-height:50px;padding:0 22px;font-size:15px}.mobile-handoff small{color:#8fa198;max-width:330px;font-size:var(--text-sm);margin-top:28px;line-height:1.5}.mobile-badge{color:#e9e8df;font-size:var(--text-md);background:#ffffff0e;border:1px solid #ffffff1f;border-radius:12px;padding:12px 16px}.mobile-glow{filter:blur(40px);background:#d49a3e24;border-radius:50%;width:80vw;height:80vw;top:-30vw;left:-30vw;position:absolute!important}.assistant-panel{flex-direction:column;width:min(800px,100vw - 48px);display:flex}.assistant-panel__header{border-bottom:1px solid var(--line);grid-template-columns:40px 1fr auto;align-items:center;gap:12px;padding:16px 16px 16px 20px;display:grid}.assistant-panel__header h2{font-size:var(--text-lg);letter-spacing:-.02em;margin:0;font-weight:680}.assistant-panel__header p{color:var(--muted);font-size:var(--text-sm);margin:1px 0 0}.assistant-avatar{color:#f6e3bd;background:linear-gradient(145deg, var(--green-2), #1f3d30);border-radius:12px;place-items:center;width:40px;height:40px;display:grid;box-shadow:0 4px 12px #2f5c4840}.assistant-layout{flex:1;grid-template-columns:212px minmax(0,1fr);min-height:0;display:grid}.assistant-history{border-right:1px solid var(--line);background:#faf8f2;flex-direction:column;padding:14px 10px;display:flex;overflow:auto}.assistant-history__new{border:1px solid var(--line-strong);background:var(--card);width:100%;min-height:36px;font-size:var(--text-md);cursor:pointer;transition:border-color var(--t-fast), color var(--t-fast), transform var(--t-fast);border-radius:10px;align-items:center;gap:8px;padding:0 12px;font-weight:620;display:flex}.assistant-history__new:hover{border-color:var(--green-2);color:var(--green)}.assistant-history__new:active{transform:scale(.98)}.assistant-history__label{color:var(--subtle);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;margin:18px 10px 6px;font-weight:700}.assistant-history__empty{color:var(--muted);font-size:var(--text-sm);margin:0 10px;line-height:1.5}.assistant-history__skeleton{gap:12px;padding:6px 10px;display:grid}.assistant-history ul{gap:1px;margin:0;padding:0;list-style:none;display:grid}.assistant-history li button{width:100%;min-height:34px;color:var(--ink-2);font-size:var(--text-md);text-align:left;cursor:pointer;transition:background-color var(--t-fast), color var(--t-fast);background:0 0;border:0;border-radius:8px;align-items:center;gap:8px;padding:0 10px;display:flex}.assistant-history li button svg{color:var(--subtle);flex:none}.assistant-history li button span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.assistant-history li button:hover{background:var(--sunken-2)}.assistant-history li button.is-active{color:var(--green);background:var(--green-soft);font-weight:620}.assistant-history li button.is-active svg{color:var(--green)}.assistant-thread{flex-direction:column;min-height:0;display:flex}.assistant-log{overscroll-behavior:contain;flex-direction:column;flex:1;gap:14px;padding:24px;display:flex;overflow:auto}.assistant-log__loading{gap:14px;display:grid}.assistant-log__loading>:first-child{justify-self:end}.assistant-line{max-width:82%;font-size:var(--text-base);animation:message-in var(--t-slow) var(--ease-out);padding:10px 14px;line-height:1.55}.assistant-line p{white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.assistant-line--user{color:#fff;background:var(--green);transform-origin:100% 100%;border-radius:18px 18px 5px;align-self:flex-end}.assistant-line--assistant{border:1px solid var(--line);background:var(--card);transform-origin:0 100%;border-radius:18px 18px 18px 5px;align-self:flex-start}.assistant-activities{flex-wrap:wrap;gap:4px;margin-bottom:8px;display:flex}.activity-chip{height:22px;color:var(--gold-ink);background:var(--gold-soft);font-size:var(--text-xs);animation:rise-in var(--t) var(--ease-out);border-radius:999px;align-items:center;gap:4px;padding:0 8px;font-weight:650;display:inline-flex}.typing-dots{gap:4px;padding:6px 2px;display:inline-flex}.typing-dots i{background:var(--subtle);width:6px;height:6px;animation:typing 1.2s var(--ease-in-out) infinite;border-radius:50%}.typing-dots i:nth-child(2){animation-delay:.15s}.typing-dots i:nth-child(3){animation-delay:.3s}.assistant-welcome{text-align:center;animation:rise-in .42s var(--ease-out);flex-direction:column;align-items:center;margin:auto;padding:16px 0;display:flex}.assistant-welcome__icon{width:54px;height:54px;color:var(--gold-ink);background:var(--gold-soft);border-radius:16px;place-items:center;margin-bottom:14px;display:grid}.assistant-welcome h3{letter-spacing:-.02em;margin:0 0 4px;font-size:19px;font-weight:680}.assistant-welcome p{max-width:380px;color:var(--muted);font-size:var(--text-md);margin:0}.prompt-grid{grid-template-columns:1fr 1fr;gap:8px;width:100%;max-width:480px;margin-top:22px;display:grid}.prompt-chip{border:1px solid var(--line);border-radius:var(--radius-md);color:var(--ink-2);background:var(--card);font-size:var(--text-md);text-align:left;cursor:pointer;transition:border-color var(--t-fast), background-color var(--t-fast), transform var(--t-fast) var(--ease-out), box-shadow var(--t) var(--ease-out);align-items:flex-start;gap:8px;padding:11px 12px;line-height:1.4;display:flex}.prompt-chip svg{color:var(--gold);flex:none;margin-top:2px}.prompt-chip:hover:not(:disabled){background:var(--green-tint);box-shadow:var(--shadow-sm);border-color:#bcd2c3;transform:translateY(-1px)}.prompt-chip:active:not(:disabled){transform:scale(.98)}.assistant-composer{border:1px solid var(--line-strong);background:var(--card);box-shadow:var(--shadow-sm);transition:border-color var(--t-fast), box-shadow var(--t) var(--ease-out);border-radius:18px;align-items:flex-end;gap:8px;margin:0 20px;padding:7px 7px 7px 16px;display:flex}.assistant-composer:focus-within{border-color:var(--green-2);box-shadow:0 0 0 4px var(--ring)}.assistant-composer textarea{resize:none;min-height:34px;max-height:160px;font-size:var(--text-base);background:0 0;border:0;outline:0;flex:1;padding:6px 0;line-height:1.55}.assistant-composer textarea::placeholder{color:var(--subtle)}.send-button{color:#fff;background:var(--green);cursor:pointer;width:34px;height:34px;transition:background-color var(--t-fast), transform var(--t-fast) var(--ease-out), opacity var(--t);border:0;border-radius:50%;flex:none;place-items:center;padding:0;display:grid}.send-button:hover:not(:disabled){background:var(--green-hover)}.send-button:active:not(:disabled){transform:scale(.9)}.send-button:disabled{cursor:not-allowed;background:var(--line-strong)}.assistant-composer__hint{color:var(--subtle);font-size:var(--text-xs);align-items:center;gap:4px;margin:0;padding:8px 22px 14px;display:flex}.toast-stack{z-index:300;pointer-events:none;justify-items:end;gap:8px;display:grid;position:fixed;bottom:24px;right:24px}.toast{color:#f3f5f0;min-width:260px;max-width:400px;font-size:var(--text-md);pointer-events:auto;animation:toast-in .36s var(--ease-spring);background:#1f2b25;border:1px solid #ffffff14;border-radius:14px;align-items:center;gap:10px;padding:10px 8px 10px 14px;font-weight:550;display:flex;box-shadow:0 16px 40px #00000038}.toast>svg{color:#7fd1a5;flex:none}.toast--error>svg{color:#f3a193}.toast>span{flex:1}.toast button{color:#ffffff80;cursor:pointer;width:26px;height:26px;transition:color var(--t-fast), background-color var(--t-fast);background:0 0;border:0;border-radius:7px;flex:none;place-items:center;padding:0;display:grid}.toast button:hover{color:#fff;background:#ffffff14}.toast.is-leaving{animation:toast-out .18s var(--ease-in) forwards}.wall{--ink:#f2f5f0;--ink-2:#d8e0da;--muted:#a4b2a8;--subtle:#7f8f85;--paper:#ffffff0b;--card:#ffffff0f;--sunken:#ffffff0f;--sunken-2:#ffffff1a;--field:#ffffff0f;--line:#ffffff17;--line-strong:#ffffff2e;--green-soft:#7fd1a524;--gold-soft:#d49a3e2e;--gold-ink:#f0cf92;--green-2:#86c7a3;--ring:#f0cf9233;min-height:100vh;color:var(--ink);animation:fade-in .5s var(--ease-out);background:radial-gradient(1100px 560px at 88% -12%,#d49a3e1f,#0000 62%),radial-gradient(900px 500px at -10% 110%,#3f756038,#0000 60%),#16201b;padding:32px 40px 44px}.wall .panel{border-color:var(--line);border-radius:var(--radius-xl);box-shadow:none}.wall .panel-header h2{font-size:21px}.wall .eyebrow{color:#d8bf91}.wall .button--secondary{border-color:var(--line-strong);color:var(--ink);background:var(--card);box-shadow:none}.wall .button--primary{color:#16201b;box-shadow:none;background:#f0d7a4}.wall .button--primary:hover:not(:disabled){background:#f6e3bd}.wall .text-button{color:#f0cf92}.wall .complete-toggle{width:30px;height:30px}.wall .complete-toggle.is-done{color:#16201b;background:#86c7a3;border-color:#86c7a3}.wall-top{grid-template-columns:1fr auto auto;align-items:end;gap:32px;display:grid}.wall-clock strong{font-variant-numeric:tabular-nums;letter-spacing:-.05em;font-size:clamp(64px,7vw,96px);font-weight:650;line-height:.92;display:block}.wall-clock span{color:var(--muted);margin-top:12px;font-size:18px;display:block}.wall-weather{color:#f0cf92;align-items:center;gap:14px;display:flex}.wall-weather div{flex-direction:column;line-height:1.1;display:flex}.wall-weather strong{color:var(--ink);letter-spacing:-.03em;font-size:34px;font-weight:650}.wall-weather span{color:var(--muted);font-size:var(--text-base)}.wall-exit{border:1px solid var(--line);height:38px;color:var(--muted);font-size:var(--text-md);transition:color var(--t-fast), border-color var(--t-fast);border-radius:999px;align-items:center;gap:7px;padding:0 14px;font-weight:600;text-decoration:none;display:inline-flex}.wall-exit:hover{border-color:var(--line-strong);color:var(--ink)}.wall-week{align-items:stretch;gap:8px;margin:30px 0 22px;display:flex}.wall-week__nav,.wall-week__today{border:1px solid var(--line);min-width:48px;color:var(--muted);font-size:var(--text-base);cursor:pointer;transition:color var(--t-fast), border-color var(--t-fast), transform var(--t-fast);background:0 0;border-radius:16px;flex:none;place-items:center;font-weight:600;display:grid}.wall-week__today{color:#f0cf92;padding:0 18px}.wall-week__nav:hover,.wall-week__today:hover{border-color:var(--line-strong);color:var(--ink)}.wall-week__nav:active,.wall-week__today:active{transform:scale(.95)}.wall-day{border:1px solid var(--line);min-width:0;color:var(--ink);cursor:pointer;transition:background-color var(--t-fast), border-color var(--t-fast), color var(--t-fast), transform var(--t-fast);background:0 0;border-radius:16px;flex:1;justify-items:center;gap:2px;padding:12px 0 10px;display:grid}.wall-day>span:first-child{color:var(--muted);font-size:var(--text-md);text-transform:uppercase;font-weight:650}.wall-day strong{font-variant-numeric:tabular-nums;font-size:26px;font-weight:650}.wall-day:hover{background:var(--card)}.wall-day:active{transform:scale(.97)}.wall-day.is-today strong{color:#f0cf92}.wall-day.is-selected{color:#16201b;background:#f0d7a4;border-color:#f0d7a4}.wall-day.is-selected>span:first-child,.wall-day.is-selected strong{color:#16201b}.wall-day .week-day__dots i{width:5px;height:5px}.wall-day.is-selected .week-day__dots i{background:#16201b}.wall-grid{grid-template-columns:minmax(0,1.5fr) minmax(320px,1fr);align-items:start;gap:20px;display:grid}.wall-schedule-panel{padding-bottom:14px}.wall-schedule{gap:2px;margin:0 -12px;padding:0;list-style:none;display:grid}.wall-row{min-height:70px;transition:background-color var(--t-fast), opacity var(--t);border-radius:16px;grid-template-columns:112px 32px minmax(0,1fr) auto;align-items:center;gap:16px;padding:12px;display:grid}.wall-row time{color:var(--muted);font-variant-numeric:tabular-nums;text-align:right;font-size:17px;font-weight:600}.wall-row .event-dot{box-shadow:none;justify-self:center;margin:0}.wall-row__body{flex-direction:column;gap:3px;min-width:0;display:flex}.wall-row__body strong{letter-spacing:-.015em;text-overflow:ellipsis;white-space:nowrap;font-size:20px;font-weight:620;overflow:hidden}.wall-row__body small{color:var(--muted);font-size:var(--text-base);align-items:center;gap:6px;display:flex}.wall-row__people{padding-left:8px;display:flex}.wall-row__people span{color:#16201b;border:2px solid #1c2621;border-radius:50%;place-items:center;width:34px;height:34px;margin-left:-8px;font-size:13px;font-weight:750;display:grid}.wall-row.is-current{background:#d49a3e24}.wall-row.is-past{opacity:.5}.wall-row.is-done strong{color:var(--muted);text-decoration:line-through}.wall-side{align-content:start;gap:18px;display:grid}.wall-empty{color:var(--muted);margin:0;padding:18px 0 8px;font-size:16px}.wall-list+.wall-list{margin-top:18px}.wall-list h3{color:var(--muted);font-size:var(--text-md);margin:0 0 10px;font-weight:650}.wall-list__items{flex-wrap:wrap;gap:8px;display:flex}.wall-list__item{border:1px solid var(--line-strong);min-height:46px;color:var(--ink);background:var(--card);cursor:pointer;transition:border-color var(--t-fast), background-color var(--t-fast), transform var(--t-fast);border-radius:14px;align-items:center;gap:10px;padding:0 16px 0 12px;font-size:16px;display:inline-flex}.wall-list__item:hover{border-color:#f0d7a4}.wall-list__item:active{transform:scale(.96)}.forecast{grid-template-columns:repeat(5,1fr);gap:8px;display:grid}.forecast div{background:var(--card);border-radius:14px;justify-items:center;gap:4px;padding:12px 4px;display:grid}.forecast div svg{color:#f0cf92}.forecast span{color:var(--muted);font-size:var(--text-md);font-weight:600}.forecast strong{font-size:18px}.forecast small{color:var(--subtle);font-size:var(--text-md)}.wall-capture{transition:border-color var(--t-fast), box-shadow var(--t)}.wall-capture.is-listening{border-color:#f3a19380;box-shadow:0 0 0 4px #f3a1931f}.wall-capture label{color:var(--ink);font-size:var(--text-lg);align-items:center;gap:8px;font-weight:650;display:flex}.wall-capture textarea{border:1px solid var(--line-strong);resize:none;width:100%;color:var(--ink);background:var(--field);transition:border-color var(--t-fast), box-shadow var(--t-fast);border-radius:14px;outline:0;margin-top:12px;padding:14px 16px;font-size:17px;line-height:1.5}.wall-capture textarea:focus{box-shadow:0 0 0 3px var(--ring);border-color:#f0d7a4}.wall-capture textarea::placeholder{color:var(--subtle)}.wall-capture .form-actions{margin-top:12px}.wall-capture .button{min-height:48px;font-size:var(--text-lg);border-radius:12px;padding:0 20px}.wall .briefing-card{background:var(--card)}.wall .receipt-card{color:#86c7a3}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.45}}@keyframes fade-in{0%{opacity:0}}@keyframes fade-out{to{opacity:0}}@keyframes page-in{0%{opacity:0;transform:translateY(6px)}}@keyframes rise-in{0%{opacity:0;transform:translateY(6px)}}@keyframes message-in{0%{opacity:0;transform:translateY(6px)scale(.97)}}@keyframes modal-in{0%{opacity:0;transform:translateY(10px)scale(.97)}}@keyframes modal-out{to{opacity:0;transform:translateY(6px)scale(.98)}}@keyframes drawer-in{0%{transform:translate(100%)}}@keyframes drawer-out{to{transform:translate(100%)}}@keyframes toast-in{0%{opacity:0;transform:translateY(12px)scale(.95)}}@keyframes toast-out{to{opacity:0;transform:translate(16px)scale(.98)}}@keyframes shimmer{0%{background-position:120% 0}to{background-position:-120% 0}}@keyframes check-pop{0%{transform:scale(.4)}60%{transform:scale(1.2)}to{transform:scale(1)}}@keyframes burst{0%{box-shadow:0 0 #3f756073}to{box-shadow:0 0 0 10px #3f756000}}@keyframes pulse-ring{50%{box-shadow:0 0 0 7px #d49a3e1a}}@keyframes ping{75%,to{opacity:0;transform:scale(2.4)}}@keyframes typing{0%,60%,to{opacity:.35;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}@keyframes drift{to{transform:translate(-3vw,-2vw)scale(1.04)}}@media (width<=1320px){.today-layout{grid-template-columns:minmax(0,1fr)}.today-side{order:-1;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));position:static}}@media (width<=1180px){.main-content{padding-inline:28px}.app-shell{grid-template-columns:224px minmax(0,1fr)}.calendar-layout{grid-template-columns:minmax(0,1fr)}.calendar-agenda{display:none}.settings-grid,.wall-grid,.assistant-layout{grid-template-columns:minmax(0,1fr)}.assistant-history{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0s!important}}
