@import "https://fonts.googleapis.com/css2?family=Aleo:wght@300;400;500;600;700&family=Onest:wght@400;500;600&display=swap";:root{--font-display:"Aleo", serif;--font-body:"Onest", sans-serif;--text-page-heading:24px;--text-section-heading:18px;--text-body:16px;--text-label:14px;--text-small:12px;--weight-light:300;--weight-regular:400;--weight-medium:500;--weight-emphasis:600;--leading-tight:1.2;--leading-normal:1.5;--color-sun:#f5db6f;--color-lemon:#f9e9af;--color-lemonade:#fdf8e2;--color-clem:#ffbe6f;--color-linen:#fff4e5;--color-sky:#afe0fd;--color-cloud:#cce8fa;--color-air:#e0eef7;--color-purple:#edd3ef;--color-blue-50:#f4f9ff;--color-blue-100:#e2e7f0;--color-blue-500:#0836c8;--color-blue-900:#3d5c9c;--color-orange-50:#fff6f4;--color-orange-100:#ffc0a0;--color-orange-500:#fa510a;--color-orange-900:#d24303;--color-neutral-0:#fff;--color-neutral-50:#fefdfb;--color-neutral-100:#fdf8f0;--color-neutral-200:#f4f1ee;--color-neutral-300:#f3eee8;--color-neutral-500:#f2e8d8;--color-neutral-600:#c8bfb5;--color-neutral-700:#5a534a;--color-neutral-900:#1f1916;--color-primary-100:var(--color-blue-50);--color-primary-300:var(--color-blue-100);--color-primary-500:var(--color-blue-500);--color-primary-cta-hover:var(--color-blue-900);--color-secondary-bg:var(--color-orange-50);--color-secondary-bg-dark:var(--color-orange-100);--color-secondary-cta:var(--color-orange-500);--color-secondary-cta-dark:var(--color-orange-900);--color-accent-sun:var(--color-sun);--color-accent-sun-light:var(--color-lemon);--color-accent-clem:var(--color-clem);--color-accent-sky:var(--color-purple);--color-person-1:var(--color-accent-sky);--color-person-2:var(--color-accent-clem);--color-text-primary:var(--color-neutral-900);--color-text-secondary:var(--color-neutral-700);--color-text-disabled:var(--color-neutral-600);--color-border-default:var(--color-neutral-300);--color-bg-default:var(--color-neutral-100);--color-bg-surface:var(--color-neutral-0);--color-bg-card-surface:var(--color-neutral-50);--color-bg-inset:var(--color-neutral-200);--color-bg-dark:var(--color-neutral-500);--color-bg-disabled:var(--color-neutral-200);--color-avatar-bg:var(--color-accent-sky);--color-brand-primary:#436036;--color-error:#c25b4a;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--radius-xs:4px;--radius-sm:4px;--radius-md:4px;--radius-lg:4px;--radius-full:9999px;--shadow-card:0 2px 8px #2b2e2a0f;--shadow-modal:0 8px 24px #2b2e2a29;--screen-padding:24px;--card-padding:16px;--button-padding:10px 20px;--input-padding:10px 14px}*{box-sizing:border-box}html,body,#root{height:100%}html,body{overflow-x:hidden}body{background-color:var(--color-bg-dark);color:var(--color-text-primary);font-family:var(--font-body);font-size:var(--text-body);font-weight:var(--weight-regular);line-height:var(--leading-normal);margin:0}body:before{content:"";z-index:-1;opacity:.08;pointer-events:none;background-image:url(/assets/cork-board-16PsqvGO.jpg);background-repeat:repeat;background-size:720px;position:fixed;inset:0}.app{max-width:1400px;padding:0 var(--screen-padding) var(--space-8);margin:0 auto}.top-nav{width:calc(100% - var(--screen-padding) * 2);max-width:1400px;height:56px;margin:0 auto var(--space-4);background:var(--color-bg-default);border-radius:var(--radius-sm);padding:0 var(--space-5);justify-content:space-between;align-items:center;display:flex;box-shadow:0 1px 3px #00000014,0 4px 12px #00000014}.top-nav-logo{width:auto;min-width:0;max-width:100%;height:28px;display:block}.top-nav-avatar-wrap{flex-shrink:0;position:relative}.top-nav-avatar{border-radius:var(--radius-xs);background:var(--color-avatar-bg);width:32px;height:32px;font-family:var(--font-body);font-size:var(--text-small);font-weight:var(--weight-medium);color:var(--color-text-primary);cursor:pointer;border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.top-nav-avatar-dropdown{top:calc(100% + var(--space-2));z-index:11;background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-md);min-width:140px;box-shadow:var(--shadow-modal);padding:var(--space-2);position:absolute;right:0}.top-nav-avatar-dropdown-item{align-items:center;gap:var(--space-2);text-align:left;width:100%;font-family:var(--font-body);font-size:var(--text-label);color:var(--color-text-primary);padding:var(--space-2);border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:none;display:flex}@media (hover:hover){.top-nav-avatar-dropdown-item:hover{background:var(--color-bg-inset)}}.app-header{align-items:center;gap:var(--space-5);width:100%;padding:var(--space-5) var(--space-4) 0;background:var(--color-bg-default);margin-bottom:var(--space-5);flex-direction:column;display:flex}.app-header .top-nav{background:var(--color-bg-dark);width:100%;margin:0}.app-header-inner{width:100%;max-width:1400px;padding:var(--space-3);justify-content:space-between;align-items:center;gap:var(--space-4);border-radius:var(--radius-lg);display:flex}.page-heading{font-family:var(--font-display);font-size:var(--text-page-heading);font-weight:var(--weight-light);line-height:var(--leading-tight);color:var(--color-text-primary);margin:0}.section-heading{font-family:var(--font-display);font-size:20px;font-weight:var(--weight-light);line-height:var(--leading-tight);color:var(--color-text-primary);margin:0}.week-nav{align-items:center;gap:var(--space-5);display:flex}.week-nav-heading{font-family:var(--font-display);font-size:var(--text-page-heading);font-weight:var(--weight-light);line-height:var(--leading-tight);color:var(--color-text-primary);white-space:nowrap;margin:0}.week-nav-date-selector{align-items:center;gap:var(--space-4);font-family:var(--font-body);font-size:var(--text-section-heading);font-weight:var(--weight-medium);letter-spacing:.02em;color:var(--color-text-primary);padding:var(--space-2) var(--space-4);border-radius:var(--radius-sm);background:var(--color-bg-surface);border:1px solid var(--color-border-default);cursor:pointer;max-width:100%;display:flex}.week-nav-date-selector-text{white-space:normal;text-align:left;min-width:0}.week-nav-date-selector-chevron{flex-shrink:0}@media (hover:hover){.week-nav-date-selector:hover{background:var(--color-bg-inset)}}.week-nav-jump-wrap{position:relative}.week-nav-step-group{gap:var(--space-1);display:flex}button.week-nav-step-btn{color:#88827e;background:0 0;border:none}@media (hover:hover){button.week-nav-step-btn:hover{color:#5a524a;background:0 0;border:none}}button.week-nav-step-btn:active{color:#5a524a;background:0 0;border:none}.week-jump-backdrop{z-index:10;position:fixed;inset:0}.week-jump-calendar{top:calc(100% + var(--space-1));z-index:11;background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-md);width:280px;box-shadow:var(--shadow-modal);padding:var(--space-3);position:absolute;left:0}.week-jump-calendar-header{margin-bottom:var(--space-3);justify-content:space-between;align-items:center;display:flex}.week-jump-month-label{font-family:var(--font-body);font-size:var(--text-label);font-weight:var(--weight-medium);color:var(--color-text-primary)}.week-jump-month-arrow{border-radius:var(--radius-xs);color:var(--color-text-secondary);cursor:pointer;padding:var(--space-1);background:0 0;border:none;justify-content:center;align-items:center;display:flex}@media (hover:hover){.week-jump-month-arrow:hover{background:var(--color-bg-inset);color:var(--color-text-primary)}}.week-jump-calendar-daylabels{margin-bottom:var(--space-1);grid-template-columns:repeat(7,1fr);display:grid}.week-jump-calendar-daylabels span{text-align:center;font-size:var(--text-small);color:var(--color-text-secondary)}.week-jump-calendar-body{flex-direction:column;gap:2px;display:flex}.week-jump-calendar-row{border-radius:var(--radius-sm);cursor:pointer;grid-template-columns:repeat(7,1fr);display:grid}@media (hover:hover){.week-jump-calendar-row:hover{background:var(--color-bg-inset)}}.week-jump-calendar-row-selected{background:var(--color-primary-500)}@media (hover:hover){.week-jump-calendar-row-selected:hover{background:var(--color-primary-500)}}.week-jump-calendar-day{aspect-ratio:1;font-family:var(--font-body);font-size:var(--text-label);color:var(--color-text-primary);justify-content:center;align-items:center;display:flex}.week-jump-calendar-row-selected .week-jump-calendar-day{color:var(--color-bg-surface);font-weight:var(--weight-medium)}.week-jump-calendar-day-outside{color:var(--color-text-secondary);opacity:.5}.week-jump-calendar-row-selected .week-jump-calendar-day-outside{color:var(--color-bg-surface);opacity:.7}.week-jump-calendar-day-today{text-underline-offset:3px;text-decoration:underline}.week-jump-today-btn{width:100%;margin-top:var(--space-3);border:1px solid var(--color-border-default);border-radius:var(--radius-xs);padding:var(--space-2);font-family:var(--font-body);font-size:var(--text-label);color:var(--color-text-primary);cursor:pointer;background:0 0}@media (hover:hover){.week-jump-today-btn:hover{background:var(--color-bg-inset)}}.people-editor{align-items:center;gap:var(--space-4);height:100%;padding:0 var(--space-4);border-left:1px solid var(--color-border-default);flex-shrink:0;display:flex}.people-editor-caption{font-family:var(--font-body);font-size:var(--text-small);color:var(--color-text-secondary);white-space:nowrap;margin:0}.people-editor-container{align-items:center;gap:var(--space-5);flex-shrink:0;display:flex}.people-editor-item{align-items:center;gap:var(--space-2);font-family:var(--font-body);font-size:var(--text-label);font-weight:var(--weight-medium);color:var(--color-text-secondary);display:flex}.people-editor-item-btn{cursor:pointer;padding:var(--space-1) var(--space-2);border-radius:var(--radius-xs);background:0 0;border:1px solid #0000}@media (hover:hover){.people-editor-item-btn:hover{background:var(--color-bg-inset);color:var(--color-text-primary)}}.people-editor-dot{border-radius:2px;flex-shrink:0;width:18px;height:18px}.people-editor-input{font-family:var(--font-body);font-size:var(--text-label);border:1px solid var(--color-border-default);border-radius:var(--radius-sm);padding:3px var(--space-2);background:var(--color-bg-inset);color:var(--color-text-primary);width:96px}.people-editor-input:focus{outline:2px solid var(--color-primary-300);outline-offset:1px}.calendar-row{gap:var(--space-5);margin-bottom:var(--space-5);grid-template-columns:minmax(0,1fr) 280px;align-items:start;display:grid}.calendar-row .card{height:100%}@media (hover:hover){.calendar-add-btn:hover{color:var(--color-primary-cta-hover);background:var(--color-bg-inset)}}.calendar-grid-wrap{background:var(--color-bg-card-surface);border-radius:var(--radius-sm)}.calendar-grid-header{border-bottom:1px solid var(--color-border-default);grid-template-columns:56px repeat(7,1fr);display:grid}.calendar-hour-col-spacer{border-right:1px solid var(--color-border-default);justify-content:center;align-items:center;display:flex}.calendar-grid-day-header{padding:var(--space-2) var(--space-3);border-right:1px solid var(--color-border-default)}.calendar-grid-day-header:last-child{border-right:none}.calendar-grid-day-header-today{background:var(--color-primary-300)}.calendar-day-label{font-size:var(--text-label);font-weight:var(--weight-medium);color:var(--color-text-secondary)}.calendar-grid-day-header-today .calendar-day-label{color:var(--color-primary-cta-hover)}.calendar-day-date{font-size:var(--text-small);color:var(--color-text-secondary)}.calendar-grid-scroll{overflow:hidden auto}.calendar-grid-body{grid-template-columns:56px repeat(7,1fr);display:grid;position:relative}.calendar-hour-col{border-right:1px solid var(--color-border-default)}.calendar-hour-label{font-size:var(--text-small);color:var(--color-text-secondary);padding:0 var(--space-2);justify-content:flex-end;align-items:flex-start;display:flex}.calendar-grid-day-col{border-right:1px solid var(--color-border-default);position:relative}.calendar-grid-day-col:last-child{border-right:none}.calendar-grid-day-col-today{background:var(--color-primary-100)}.calendar-hour-line{border-bottom:1px solid var(--color-border-default)}.calendar-event-block{left:var(--space-1);right:var(--space-1);background:var(--color-primary-500);color:var(--color-text-secondary);border-radius:var(--radius-sm);padding:1px var(--space-2);white-space:nowrap;box-shadow:var(--shadow-card);cursor:pointer;z-index:1;align-items:center;gap:4px;font-size:11px;line-height:1.3;display:flex;position:absolute}@media (hover:hover){.calendar-event-block:hover{filter:brightness(.93);z-index:30}}.calendar-event-block-icon{flex-shrink:0}.calendar-event-block-time{font-weight:var(--weight-medium);flex-shrink:0}.calendar-event-block-title{text-overflow:ellipsis;overflow:hidden}.calendar-event-tooltip{z-index:20;background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-sm);min-width:160px;max-width:240px;box-shadow:var(--shadow-modal);padding:var(--space-2) var(--space-3);white-space:normal;opacity:0;pointer-events:none;transition:opacity .1s,transform .1s;position:absolute;top:calc(100% + 4px);left:0;transform:translateY(-2px)}@media (hover:hover){.calendar-event-block:hover .calendar-event-tooltip{opacity:1;transform:translateY(0)}}.calendar-event-tooltip-title{font-weight:var(--weight-medium);color:var(--color-text-primary);font-size:var(--text-label);margin:0 0 2px}.calendar-event-tooltip-meta{color:var(--color-text-secondary);font-size:var(--text-small);margin:0}.dashboard-grid{gap:var(--space-5);grid-template-columns:240px minmax(0,1fr) 300px;align-items:start;display:grid}.dashboard-col{gap:var(--space-5);flex-direction:column;display:flex}.card{gap:var(--space-4);background:var(--color-bg-default);border-radius:var(--radius-sm);padding:var(--card-padding);flex-direction:column;display:flex}.card-drop-over{outline:2px dashed var(--color-primary-500);outline-offset:-2px}.card-input{background:var(--color-accent-sun-light);border:1px solid var(--color-accent-sun);border-radius:var(--radius-lg);box-shadow:0 4px 14px #2b2e2a1a}.card-body{min-width:0}.card-header{align-items:center;gap:var(--space-2);display:flex}.card-header-with-cta{justify-content:space-between}.card-header-title-group{align-items:center;gap:var(--space-2);display:flex}.card-header-cta-group{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.calendar-timezone-label{font-size:var(--text-small);color:var(--color-text-secondary);font-weight:var(--weight-regular)}.calendar-agenda{gap:var(--space-4);flex-direction:column;display:flex}.calendar-agenda-day-header{padding-bottom:var(--space-1);border-bottom:1px solid var(--color-border-default);margin-bottom:var(--space-2);justify-content:space-between;align-items:baseline;display:flex}.calendar-agenda-day-label{font-family:var(--font-body);font-size:var(--text-label);font-weight:var(--weight-medium);color:var(--color-text-primary)}.calendar-agenda-day-header-today .calendar-agenda-day-label{color:var(--color-primary-cta-hover)}.calendar-agenda-day-date{font-weight:var(--weight-regular);color:var(--color-text-secondary);margin-left:var(--space-1)}.calendar-agenda-today-badge{font-size:var(--text-small);font-weight:var(--weight-medium);color:var(--color-primary-cta-hover);background:var(--color-primary-300);border-radius:var(--radius-xs);padding:2px var(--space-2);flex-shrink:0}.calendar-agenda-list{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.calendar-agenda-card{align-items:center;gap:var(--space-3);padding:var(--space-3);background:var(--color-bg-card-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-sm);cursor:pointer;display:flex}.calendar-agenda-time{font-size:var(--text-small);color:var(--color-text-secondary);flex-shrink:0;min-width:68px}.calendar-agenda-title{min-width:0;font-size:var(--text-label);color:var(--color-text-primary);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.empty-state{font-size:var(--text-label);color:var(--color-text-secondary);margin:0}.btn{font-family:var(--font-body);font-size:var(--text-label);font-weight:var(--weight-medium);border-radius:var(--radius-xs);padding:var(--button-padding);cursor:pointer;align-items:center;gap:var(--space-1);border:1px solid #0000;transition:background .15s,border-color .15s;display:inline-flex}.btn-primary{background:var(--color-primary-500);color:var(--color-bg-surface)}@media (hover:hover){.btn-primary:hover{background:var(--color-primary-cta-hover)}}.btn-ghost{color:var(--color-text-secondary);border-color:var(--color-border-default);background:0 0}@media (hover:hover){.btn-ghost:hover{background:var(--color-bg-inset)}}.btn-danger{color:var(--color-error)}.btn-add{color:var(--color-secondary-cta);border:1px solid var(--color-secondary-cta);background:0 0;justify-content:center;width:100%}@media (hover:hover){.btn-add:hover{background:color-mix(in srgb, var(--color-secondary-cta) 12%, transparent)}}.btn-sm{font-size:var(--text-small);padding:var(--space-1) var(--space-3)}.icon-btn{color:var(--color-text-disabled);cursor:pointer;padding:var(--space-1);border-radius:var(--radius-xs);background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex}@media (hover:hover){.icon-btn:hover{color:var(--color-error);background:var(--color-bg-inset)}}.input{font-family:var(--font-body);font-size:var(--text-label);padding:var(--input-padding);border:1px solid var(--color-border-default);border-radius:var(--radius-sm);background:var(--color-bg-card-surface);color:var(--color-text-primary)}.input:focus{outline:2px solid var(--color-primary-cta-hover);outline-offset:1px}.input-grow{flex:1;min-width:0}.textarea{resize:vertical;min-height:80px;line-height:var(--leading-normal)}.event-list{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.event-row{align-items:center;gap:var(--space-2);font-size:var(--text-label);display:flex}.event-row-clickable{cursor:pointer;border-radius:var(--radius-sm);margin:0 calc(-1 * var(--space-2));padding:var(--space-1) var(--space-2)}@media (hover:hover){.event-row-clickable:hover{background:var(--color-bg-inset)}}.event-day-badge{background:var(--color-primary-300);color:var(--color-primary-cta-hover);font-weight:var(--weight-medium);font-size:var(--text-small);border-radius:var(--radius-xs);padding:2px var(--space-2);flex-shrink:0}.event-time{color:var(--color-text-secondary);font-size:var(--text-small);flex-shrink:0}.event-title{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.event-person-dot{border-radius:var(--radius-full);flex-shrink:0;width:10px;height:10px}.event-annual-badge{background:var(--color-bg-inset);color:var(--color-text-secondary);font-size:var(--text-small);border-radius:var(--radius-xs);padding:2px var(--space-2);flex-shrink:0}.todo-board{gap:var(--space-5);margin-bottom:var(--space-5);grid-template-columns:1fr 1fr 1fr;align-items:start;display:grid}.todo-column{gap:var(--space-4);background:var(--color-bg-default);border-radius:var(--radius-sm);padding:var(--card-padding);flex-direction:column;min-width:0;display:flex}.todo-column-partner{min-height:220px;transition:background .15s,border-color .15s}.todo-bank-section{border-radius:var(--radius-sm);padding:var(--space-2);margin-bottom:var(--space-3);min-height:64px;transition:background .15s}.todo-bank-section-backlog{background:var(--color-bg-inset)}.todo-bank-section-label{align-items:center;gap:var(--space-1);font-size:var(--text-small);font-weight:var(--weight-medium);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.03em;margin-bottom:var(--space-2);display:flex}.todo-dropzone-over{background:var(--color-primary-300)!important}.todo-card-list{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.todo-card{background:var(--color-bg-card-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-sm);padding:var(--space-2);cursor:grab;justify-content:space-between;align-items:center;display:flex}.todo-card:active{cursor:grabbing}.todo-card-over{box-shadow:0 -2px 0 0 var(--color-primary-500)}.todo-card-done .todo-name{color:var(--color-text-disabled);text-decoration:line-through}.todo-checkbox{align-items:center;gap:var(--space-2);cursor:pointer;min-width:0;display:flex}.todo-checkbox input{accent-color:var(--color-secondary-cta);flex-shrink:0;width:16px;height:16px}.todo-name{font-size:var(--text-body);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.todo-form{gap:var(--space-2);display:flex}.todo-form .btn-add{white-space:nowrap;flex-shrink:0;width:auto}.meal-grid-card{position:relative;overflow:hidden}.meal-stack-card{position:relative}.meal-grid{gap:var(--space-2);grid-template-columns:44px repeat(7,minmax(0,1fr));display:grid}.meal-grid-corner{grid-column:1}.meal-grid-day-label{font-size:var(--text-label);font-weight:var(--weight-medium);color:var(--color-text-secondary);text-align:center;padding-bottom:var(--space-2)}.meal-grid-row{display:contents}.meal-grid-meal-label{font-size:10px;font-weight:var(--weight-medium);color:var(--color-text-secondary);padding-right:var(--space-1);align-items:center;line-height:1.2;display:flex}.meal-stack{gap:var(--space-4);flex-direction:column;display:flex}.meal-stack-list{gap:var(--space-2);flex-direction:column;display:flex}.meal-stack-row{align-items:stretch;gap:var(--space-2);display:flex}.meal-stack-row-label{width:64px;font-size:var(--text-small);font-weight:var(--weight-medium);color:var(--color-text-secondary);flex-shrink:0;align-items:center;display:flex}.meal-stack-row .meal-cell{flex:1;width:auto;min-width:0;min-height:24px}.meal-stack-row .meal-cell-filled,.meal-stack-row .meal-cell-label{background:var(--color-secondary-bg);border-color:var(--color-secondary-bg-dark)}.meal-cell{background:var(--color-bg-inset);border:1px dashed var(--color-border-default);border-radius:var(--radius-sm);width:100%;min-height:56px;color:var(--color-text-disabled);font-family:var(--font-body);text-align:left;padding:var(--space-2);cursor:pointer;justify-content:flex-start;align-items:center;font-size:10px;transition:border-color .15s,background .15s;display:flex;position:relative}@media (hover:hover){.meal-cell:hover{border-color:var(--color-primary-500)}}.meal-cell-placeholder{pointer-events:none}.meal-cell-filled{background:var(--color-primary-300);border:1px solid var(--color-primary-500);color:var(--color-text-primary);font-weight:var(--weight-medium);cursor:grab}.meal-cell-filled:active{cursor:grabbing}.meal-cell-label{background:var(--color-primary-300);border:1px solid var(--color-primary-500);color:var(--color-text-primary);font-weight:var(--weight-regular);cursor:pointer;font-style:italic}.meal-cell-input{background:var(--color-bg-surface);border:1px solid var(--color-primary-500);color:var(--color-text-primary);text-align:center;outline:none}.meal-cell-input::placeholder{color:var(--color-text-disabled);font-style:normal}.meal-cell-name{white-space:normal;word-break:break-word;padding-right:14px}.meal-cell-clear{width:16px;height:16px;color:var(--color-primary-cta-hover);background:var(--color-bg-surface);box-shadow:var(--shadow-card);position:absolute;top:2px;right:2px}@media (hover:hover){.meal-cell-clear:hover{color:var(--color-bg-surface);background:var(--color-error)}}.meal-cell-confirm-overlay{z-index:50;border-radius:inherit;padding:var(--space-4);background:#2b2e2a66;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.meal-cell-confirm{background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-md);width:max-content;max-width:240px;box-shadow:var(--shadow-modal);padding:var(--space-3);cursor:default;white-space:normal}.meal-cell-confirm-text{margin:0 0 var(--space-2);font-size:var(--text-small);color:var(--color-text-primary)}.meal-cell-confirm-actions{gap:var(--space-1);display:flex}.meal-cell-confirm-actions .btn{flex:1;justify-content:center}.recipes-panel{overflow:visible}.recipe-meal-section{margin-bottom:var(--space-3);padding:var(--space-2);margin-left:calc(var(--space-2) * -1);margin-right:calc(var(--space-2) * -1);border-radius:var(--radius-sm);transition:background .15s}.recipe-meal-section-over{background:var(--color-primary-300)}.recipe-meal-section-heading{font-size:var(--text-label);font-weight:var(--weight-medium);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.02em;margin:0 0 var(--space-1)}.recipe-card-list{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.recipe-card{justify-content:space-between;align-items:center;gap:var(--space-2);background:var(--color-bg-card-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-sm);padding:var(--space-2);cursor:grab;display:flex}.recipe-card:active{cursor:grabbing}.recipe-card-name{font-size:var(--text-label);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.recipe-card-actions{flex-shrink:0;gap:2px;display:flex}.grocery-category-section+.grocery-category-section{margin-top:var(--space-3)}.grocery-category-heading{font-size:var(--text-label);font-weight:var(--weight-medium);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.02em;margin:0 0 var(--space-1)}.grocery-list{flex-direction:column;gap:0;margin:0;padding:0;list-style:none;display:flex}.grocery-row{padding:var(--space-1) 0;justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.grocery-row-checked .grocery-name{color:var(--color-text-disabled);text-decoration:line-through}.grocery-name{font-size:var(--text-body)}.grocery-row-actions{align-items:center;gap:var(--space-1);flex-shrink:0;display:flex}.grocery-form{margin-top:var(--space-3)}.modal-backdrop{z-index:20;padding:var(--space-5);background:#2b2e2a66;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.bottom-sheet-backdrop{align-items:flex-end;padding:0}.bottom-sheet{border-radius:var(--radius-lg) var(--radius-lg) 0 0;max-height:80vh}.bottom-sheet-label-form{gap:var(--space-2);display:flex}.bottom-sheet-recipe-list{gap:var(--space-3);flex-direction:column;display:flex;overflow-y:auto}.recipe-card-selectable{cursor:pointer}.recipe-card-active{border-color:var(--color-primary-500);background:var(--color-primary-100)}.modal{background:var(--color-bg-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-modal);width:100%;max-width:480px;max-height:90vh;overflow-y:auto}.modal-header{padding:var(--space-4) var(--card-padding);border-bottom:1px solid var(--color-border-default);justify-content:space-between;align-items:center;display:flex}.modal-body{padding:var(--card-padding);gap:var(--space-3);flex-direction:column;display:flex}.field-label{font-size:var(--text-label);font-weight:var(--weight-medium);color:var(--color-text-secondary);gap:var(--space-1);flex-direction:column;display:flex}.event-time-row{gap:var(--space-2);display:flex}.event-time-field{gap:var(--space-1);flex-direction:column;flex:1;display:flex}.field-error{font-size:var(--text-small);color:var(--color-error);margin:calc(-1 * var(--space-2)) 0 0}.todo-detail-done-check{align-items:center;gap:var(--space-2);font-size:var(--text-label);color:var(--color-text-primary);cursor:pointer;display:flex}.checklist-list{gap:var(--space-1);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.checklist-row{justify-content:space-between;align-items:center;gap:var(--space-2);padding:var(--space-1) 0;display:flex}.checklist-row-checked .checklist-item-text{color:var(--color-text-disabled);text-decoration:line-through}.checklist-item-text{font-size:var(--text-body);font-weight:var(--weight-regular)}.todo-detail-done-check input{accent-color:var(--color-secondary-cta);width:16px;height:16px}.ingredient-rows{gap:var(--space-2);flex-direction:column;display:flex}.ingredient-row{gap:var(--space-2);align-items:center;display:flex}.modal-footer{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--color-border-default);justify-content:space-between;align-items:center;display:flex}.modal-footer-right{gap:var(--space-2);margin-left:auto;display:flex}.person-toggle{gap:var(--space-2);display:flex}.person-toggle-btn{justify-content:center;align-items:center;gap:var(--space-1);font-family:var(--font-body);font-size:var(--text-label);font-weight:var(--weight-regular);color:var(--color-text-primary);background:var(--color-bg-inset);border:1px solid var(--color-border-default);border-radius:var(--radius-xs);padding:var(--space-2);cursor:pointer;flex:1;display:flex}.person-toggle-btn-active{background:var(--color-primary-300);border-color:var(--color-primary-500);font-weight:var(--weight-medium)}.person-toggle-dot{border-radius:var(--radius-full);flex-shrink:0;width:10px;height:10px}.type-segmented{gap:var(--space-2);display:flex}.type-segmented-btn{min-width:0;font-family:var(--font-body);font-size:var(--text-label);font-weight:var(--weight-regular);color:var(--color-text-primary);background:var(--color-bg-inset);border:1px solid var(--color-border-default);border-radius:var(--radius-xs);padding:var(--space-2);cursor:pointer;flex:1}.type-segmented-btn-active{background:var(--color-primary-300);border-color:var(--color-primary-500);font-weight:var(--weight-medium)}.day-checkbox-row{gap:var(--space-1);flex-wrap:wrap;display:flex}.day-checkbox-chip{width:32px;height:32px;font-family:var(--font-body);font-size:var(--text-label);font-weight:var(--weight-medium);color:var(--color-text-secondary);background:var(--color-bg-inset);border:1px solid var(--color-border-default);border-radius:var(--radius-xs);cursor:pointer}.day-checkbox-chip-active{background:var(--color-primary-300);border-color:var(--color-primary-500)}.dashboard-preview-wrap{transition:filter .4s}.onboarding-screen{background:var(--color-bg-default);flex-direction:column;min-height:100vh;display:flex;position:relative}.onboarding-nav{padding:var(--space-3) var(--screen-padding);flex-shrink:0;justify-content:center;align-items:center;display:flex}.onboarding-nav img,.onboarding-logo{width:24px;height:24px}.onboarding-body{padding:var(--space-4) var(--screen-padding) var(--space-8);flex:1;justify-content:center;align-items:flex-start;display:flex}.onboarding-screen-center .onboarding-body{padding-top:var(--space-5);align-items:center}.onboarding-screen-inner{gap:var(--space-6);flex-direction:column;width:100%;max-width:420px;display:flex}.onboarding-header{align-items:center;gap:var(--space-2);text-align:center;flex-direction:column;display:flex}.onboarding-sticky-footer{background:var(--color-bg-default);padding:var(--space-4) var(--screen-padding) var(--space-5);flex-shrink:0;justify-content:center;display:flex;position:sticky;bottom:0;box-shadow:0 -3px 6px #0000000a}.onboarding-sticky-footer-inner{width:100%;max-width:420px}.onboarding-headline{font-family:var(--font-display);font-size:var(--text-page-heading);font-weight:var(--weight-light);line-height:var(--leading-tight);color:var(--color-text-primary);margin:0}.onboarding-subhead{font-size:var(--text-label);color:var(--color-text-secondary);margin:0}.onboarding-option-list,.onboarding-sections{gap:var(--space-2);flex-direction:column;display:flex}.onboarding-option-btn{font-family:var(--font-body);font-size:var(--text-body);font-weight:var(--weight-regular);color:var(--color-text-primary);background:var(--color-bg-card-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-sm);height:48px;padding:0 var(--space-4);text-align:left;cursor:pointer;align-items:center;transition:background .15s,border-color .15s;display:flex}@media (hover:hover){.onboarding-option-btn:hover{background:var(--color-primary-300);border-color:var(--color-primary-cta-hover)}}.onboarding-option-btn-selected,.onboarding-option-btn-selected:hover{background:var(--color-primary-300);border-color:var(--color-primary-cta-hover)}.onboarding-section{gap:var(--space-3);padding:var(--space-5);background:var(--color-bg-card-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-sm);flex-direction:column;display:flex}.onboarding-add-row{align-items:center;gap:var(--space-2);display:flex}.onboarding-select-wrap{flex-shrink:0;align-items:center;display:flex;position:relative}.onboarding-select{appearance:none;padding-right:var(--space-6);cursor:pointer}.onboarding-select-chevron{right:var(--space-3);color:var(--color-text-secondary);pointer-events:none;position:absolute}.onboarding-item-list{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.onboarding-item-list li{justify-content:space-between;align-items:center;gap:var(--space-2);font-size:var(--text-label);color:var(--color-text-primary);display:flex}.onboarding-item-day{min-width:34px;font-size:var(--text-small);font-weight:var(--weight-medium);color:var(--color-text-secondary);display:inline-block}.onboarding-item-remove{color:var(--color-text-disabled);cursor:pointer;padding:var(--space-1);border-radius:var(--radius-xs);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}@media (hover:hover){.onboarding-item-remove:hover{color:var(--color-error);background:var(--color-bg-inset)}}.onboarding-section-label{align-items:center;gap:var(--space-1);font-size:var(--text-small);font-weight:var(--weight-medium);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.02em;margin:0;display:flex}.onboarding-add-btn{flex-shrink:0;width:auto}.onboarding-cta-full{width:100%;font-size:var(--text-body);padding:var(--space-3) var(--space-5);justify-content:center}.onboarding-signup-form{align-items:stretch;gap:var(--space-6)}.onboarding-signup-form .onboarding-logo{align-self:center}.onboarding-fields{gap:var(--space-4);flex-direction:column;width:100%;display:flex}.onboarding-google-btn{width:100%;font-size:var(--text-body);padding:var(--space-3) var(--space-5);justify-content:center}.btn-outline-primary{color:var(--color-primary-500);border:1px solid var(--color-primary-500);background:0 0}@media (hover:hover){.btn-outline-primary:hover{background:var(--color-primary-100)}}.onboarding-divider{align-items:center;gap:var(--space-2);color:var(--color-text-secondary);font-size:var(--text-small);text-align:center;display:flex}.onboarding-divider:before,.onboarding-divider:after{content:"";background:var(--color-text-disabled);flex:1;height:1px}.onboarding-legal{font-size:var(--text-small);color:var(--color-text-disabled);text-align:center;margin:0}.onboarding-legal-link{text-decoration:underline}.trial-timer{font-size:var(--text-small);color:var(--color-text-secondary);margin:0 var(--space-4) 0 auto}.activation-card{background:var(--color-primary-100);border:1px solid var(--color-primary-300);border-radius:var(--radius-lg);padding:var(--card-padding);margin-bottom:var(--space-4);gap:var(--space-2);flex-direction:column;align-items:flex-start;display:flex}.activation-card-headline{font-family:var(--font-display);font-size:var(--text-section-heading);font-weight:var(--weight-light);line-height:var(--leading-tight);color:var(--color-text-primary);margin:0}.activation-card-copy{font-size:var(--text-label);color:var(--color-text-secondary);margin:0 0 var(--space-1)}@media (width<=1100px){.dashboard-grid,.calendar-row,.todo-board{grid-template-columns:1fr}}.mobile-home{gap:var(--space-4);flex-direction:column;width:100%;display:flex}.mobile-home .card{gap:var(--space-4);flex-direction:column;display:flex}.mobile-screen{gap:var(--space-4);flex-direction:column;width:100%;display:flex}.quick-capture-input{background:var(--color-bg-inset);width:100%;height:48px}.quick-capture-cta-row{gap:var(--space-4);width:100%;display:flex}.quick-capture-btn{font-family:var(--font-body);font-size:var(--text-label);font-weight:var(--weight-medium);color:var(--color-primary-500);border:1px solid var(--color-primary-500);border-radius:var(--radius-xs);padding:var(--space-3) var(--space-4);cursor:pointer;white-space:nowrap;background:0 0;flex:1}@media (hover:hover){.quick-capture-btn:hover{background:var(--color-primary-100)}}.quick-capture-confirmation{font-size:var(--text-small);color:var(--color-primary-500);margin:0}.mobile-add-todo-row{gap:var(--space-2);width:100%;display:flex}.mobile-add-todo-row .input{flex:1;min-width:0}.mobile-add-todo-row .btn-add{white-space:nowrap;flex-shrink:0;width:auto}.mobile-list{gap:var(--space-2);flex-direction:column;width:100%;margin:0;padding:0;list-style:none;display:flex}.mobile-list-row{align-items:center;gap:var(--space-3);height:48px;padding:0 var(--space-3);background:var(--color-bg-card-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-sm);cursor:pointer;display:flex}.mobile-list-row .todo-checkbox{flex:1;min-width:0}.mobile-list-row-dragging{opacity:.4}.todo-drag-handle{width:40px;height:40px;margin:0 calc(-1 * var(--space-2));color:var(--color-text-disabled);cursor:grab;touch-action:none;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.todo-drag-handle:active{cursor:grabbing;color:var(--color-text-secondary)}.todo-drop-zone-active{outline:2px dashed var(--color-primary-300);outline-offset:-2px}.todo-drag-ghost{z-index:100;align-items:center;gap:var(--space-2);height:48px;padding:0 var(--space-3);background:var(--color-bg-surface);border:1px solid var(--color-primary-500);border-radius:var(--radius-sm);box-shadow:var(--shadow-modal);font-size:var(--text-label);color:var(--color-text-primary);white-space:nowrap;pointer-events:none;display:flex;position:fixed;transform:translate(-16px,-50%)}.mobile-list-row-title{min-width:0;font-size:var(--text-label);color:var(--color-text-primary);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.mobile-list-row-time{text-align:left;width:64px;font-size:var(--text-small);color:var(--color-text-secondary);flex-shrink:0}.mobile-list-row-delete-hidden{visibility:hidden}.mobile-day-badge{background:var(--color-primary-300);color:var(--color-primary-500);font-size:10px;font-weight:var(--weight-medium);text-transform:uppercase;border-radius:var(--radius-xs);padding:2px var(--space-2);flex-shrink:0}.name-slicer-row{gap:var(--space-2);flex-wrap:wrap;display:flex}.name-slicer{align-items:center;gap:var(--space-2);font-family:var(--font-body);font-size:var(--text-label);font-weight:var(--weight-medium);color:var(--color-text-secondary);border:1px solid var(--color-border-default);border-radius:var(--radius-xs);padding:var(--space-1) var(--space-2);cursor:pointer;background:0 0;display:flex}.name-slicer-active{background:var(--color-primary-100);border-color:var(--color-primary-500);color:var(--color-text-primary)}.todo-assign-owner-prompt{background:var(--color-bg-card-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-sm);padding:var(--space-3);gap:var(--space-2);flex-direction:column;display:flex}.todo-assign-owner-task{font-size:var(--text-body);font-weight:var(--weight-medium);color:var(--color-text-primary);margin:0}.todo-assign-owner-text{font-size:var(--text-small);font-weight:var(--weight-regular);color:var(--color-text-secondary);margin:0}.todo-assign-owner-actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.mobile-bottom-nav{z-index:15;background:var(--color-bg-inset);padding-bottom:env(safe-area-inset-bottom,0px);justify-content:center;align-items:flex-end;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -2px 10px #0000001a}.mobile-nav-item{align-items:center;gap:var(--space-1);min-width:0;color:var(--color-text-secondary);font-family:var(--font-body);font-size:10px;font-weight:var(--weight-medium);padding:var(--space-2) 0;cursor:pointer;background:0 0;border:none;flex-direction:column;flex:1;display:flex}.mobile-nav-item-active{color:var(--color-primary-500)}@media (width<=767px){.app-header{padding:var(--space-4) var(--space-4) var(--space-5);gap:var(--space-4)}.app-header .top-nav{padding:0 var(--space-3)}.app-header-inner{padding:var(--space-3) 0 0}.week-nav{align-items:center;gap:var(--space-2);flex-wrap:wrap;width:100%}.week-nav-heading{flex-basis:100%;font-size:20px}.week-nav-jump-wrap{flex:1;min-width:0}.app{padding:0 var(--space-4) var(--space-8)}.app-mobile{padding-bottom:calc(84px + var(--space-4))}.calendar-strip .calendar-grid-wrap{overflow-x:auto}.calendar-grid-header,.calendar-grid-body{min-width:620px}.meal-grid-card{overflow-x:auto}.meal-grid{min-width:560px}}@media (width<=380px){.quick-capture-cta-row{flex-direction:column}.top-nav-logo{height:22px}.top-nav{padding:0 var(--space-2)}}.connected-calendar-list{margin:0 0 var(--space-4);gap:var(--space-2);flex-direction:column;padding:0;list-style:none;display:flex}.connected-calendar-row{align-items:center;gap:var(--space-2);padding:var(--space-2);border-radius:var(--radius-sm);background:var(--color-bg-inset);display:flex}.connected-calendar-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.connected-calendar-label{font-size:var(--text-label);color:var(--color-text-primary);flex:1}.connected-calendar-toggle input{width:16px;height:16px;accent-color:var(--color-secondary-cta)}.login-screen{background:var(--color-bg-dark);justify-content:center;align-items:center;min-height:100vh;display:flex}.login-card{border-radius:var(--radius-sm);background:var(--color-bg-surface);border:1px solid var(--color-border-default);flex-direction:column;gap:14px;width:320px;padding:32px;display:flex}.login-logo{width:fit-content;height:24px;margin-bottom:4px}.login-card h1{color:var(--color-text-primary);margin:0 0 8px;font-size:1.25rem}.login-card label{color:var(--color-text-secondary);flex-direction:column;gap:6px;font-size:.85rem;display:flex}.login-card input{border:1px solid var(--color-border-default);background:var(--color-bg-inset);color:var(--color-text-primary);border-radius:8px;padding:10px 12px;font-size:.95rem}.login-error{color:var(--color-danger-500,#d64545);margin:0;font-size:.85rem}.login-card .btn{margin-top:4px}.login-back-link{font-size:var(--text-label);color:var(--color-text-secondary);text-align:center;margin:0}.login-back-link a{color:var(--color-primary-500);font-weight:var(--weight-medium)}.signup-heading{font-family:var(--font-display);font-size:var(--text-page-heading);font-weight:var(--weight-light);line-height:var(--leading-tight);color:var(--color-text-primary);text-align:center;margin:0}.signup-subhead{font-size:var(--text-label);color:var(--color-text-secondary);margin:0 0 var(--space-2)}.signup-login-link{font-size:var(--text-label);color:var(--color-text-secondary);text-align:center;margin:0}.signup-login-link a{color:var(--color-primary-500);font-weight:var(--weight-medium)}.invite-link-row{gap:var(--space-2);display:flex}.invite-link-row .input{font-size:var(--text-small);color:var(--color-text-secondary)}.landing{--landing-padding-x:24px;--landing-max-w:1280px;background-color:var(--color-bg-card-surface);padding-bottom:var(--space-8)}.landing-logo-btn{cursor:pointer;background:0 0;border:none;flex-shrink:0;align-items:center;padding:0;display:inline-flex}.landing-nav-wrap{width:100%;padding-top:var(--space-4)}.landing-nav-wrap .top-nav{width:calc(100% - var(--landing-padding-x) * 2);max-width:var(--landing-max-w)}.landing-hero-inner{max-width:var(--landing-max-w);padding:var(--space-8) var(--landing-padding-x) 0;text-align:center;flex-direction:column;align-items:center;margin:0 auto;display:flex}.landing-hero-text{align-items:center;gap:var(--space-4);flex-direction:column;max-width:720px;display:flex}.landing-headline{font-family:var(--font-display);font-size:48px;font-weight:var(--weight-light);line-height:var(--leading-tight);color:var(--color-text-primary);margin:0}.landing-subhead{font-family:var(--font-body);font-size:18px;font-weight:var(--weight-regular);line-height:var(--leading-normal);color:var(--color-text-primary);margin:0}.landing-cta{padding:var(--space-3) var(--space-4);margin-top:var(--space-1);font-size:18px}.landing-nav-actions{align-items:center;gap:var(--space-3);flex-shrink:0;display:flex}.btn.landing-nav-cta{font-size:var(--text-label);font-weight:var(--weight-medium);padding:var(--space-2) var(--space-4);background:var(--color-primary-500);color:var(--color-bg-surface);flex-shrink:0}@media (hover:hover){.btn.landing-nav-cta:hover{background:var(--color-primary-cta-hover)}}.landing-nav-login{border-radius:var(--radius-xs);padding:var(--space-2) var(--space-4);font-family:var(--font-body);font-size:var(--text-label);font-weight:var(--weight-regular);color:var(--color-text-primary);cursor:pointer;background:0 0;border:1px solid #0000;flex-shrink:0;align-items:center;transition:background .15s;display:inline-flex}@media (hover:hover){.landing-nav-login:hover{background:var(--color-bg-inset)}}.landing-nav-menu-btn{border-radius:var(--radius-xs);padding:var(--space-2);color:var(--color-text-primary);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:none}@media (hover:hover){.landing-nav-menu-btn:hover{background:var(--color-bg-inset)}}.landing-nav-mobile-menu{display:none}.landing-features{max-width:var(--landing-max-w);padding:0 var(--landing-padding-x);gap:var(--space-5);grid-template-columns:repeat(3,1fr);margin:64px auto 0;display:grid}.landing-feature-card{background:var(--color-bg-default);border-radius:var(--radius-sm);padding:var(--space-5);gap:var(--space-5);flex-direction:column;display:flex}.landing-feature-text{gap:var(--space-4);flex-direction:column;display:flex}.landing-feature-icon{background:var(--color-primary-500);border-radius:2px;width:10px;height:10px}.landing-feature-text-stack{gap:var(--space-3);flex-direction:column;display:flex}.landing-feature-title{font-family:var(--font-display);font-size:22px;font-weight:var(--weight-light);line-height:var(--leading-tight);color:var(--color-text-primary);margin:0}.landing-feature-desc{font-family:var(--font-body);font-size:var(--text-label);font-weight:var(--weight-regular);line-height:var(--leading-normal);color:var(--color-text-primary);margin:0}.landing-feature-image-wrap{border-radius:var(--radius-sm);height:280px;overflow:hidden}.landing-feature-image{object-fit:cover;width:100%;height:100%;display:block}.landing-cta-section{max-width:var(--landing-max-w);margin:var(--space-8) auto 0;padding:0 var(--landing-padding-x)}.landing-cta-banner{border-radius:var(--radius-sm);padding:var(--space-7) var(--space-6);text-align:center;align-items:center;gap:var(--space-4);background:#3d5c9c;flex-direction:column;display:flex}.landing-cta-headline{font-family:var(--font-display);font-size:40px;font-weight:var(--weight-light);line-height:var(--leading-tight);color:var(--color-bg-surface);max-width:720px;margin:0}.landing-cta-subhead{font-family:var(--font-body);font-size:18px;font-weight:var(--weight-regular);line-height:var(--leading-normal);color:var(--color-bg-surface);max-width:640px;margin:0}.landing-cta-btn{background:var(--color-bg-surface);color:var(--color-secondary-cta);border:1px solid var(--color-secondary-cta);padding:var(--space-3) var(--space-4)}@media (hover:hover){.landing-cta-btn:hover{background:var(--color-secondary-bg)}}.landing-footer{max-width:var(--landing-max-w);padding:var(--space-7) var(--landing-padding-x) 0;margin:0 auto}.landing-footer-inner{justify-content:space-between;align-items:center;gap:var(--space-5);flex-wrap:wrap;display:flex}.landing-footer-brand{text-align:left;align-items:flex-start;gap:var(--space-1);flex-direction:column;display:flex}.landing-footer-logo{width:auto;height:24px;display:block}.landing-footer-copyright{font-family:var(--font-body);font-size:var(--text-label);font-weight:var(--weight-regular);color:var(--color-text-secondary);margin:0}.landing-footer-links{align-items:center;gap:var(--space-5);display:flex}.landing-footer-links span{font-family:var(--font-body);font-size:var(--text-label);color:var(--color-text-secondary)}@media (width<=900px){.landing-features{gap:var(--space-5);grid-template-columns:1fr}.landing-footer-inner{flex-direction:column;justify-content:flex-start;align-items:flex-start}}@media (width<=767px){.landing-headline{font-size:40px}.landing-cta-headline{font-size:32px}.landing-nav-wrap .top-nav{padding:0 var(--space-3);gap:var(--space-2)}.landing-nav-wrap .top-nav-logo{height:22px}.landing-nav-actions{display:none}.landing-nav-menu-btn{display:inline-flex}.landing-nav-mobile-menu{gap:var(--space-1);width:calc(100% - var(--landing-padding-x) * 2);max-width:var(--landing-max-w);margin:var(--space-2) auto 0;padding:var(--space-3);background:var(--color-bg-surface);border-radius:var(--radius-sm);flex-direction:column;display:flex;box-shadow:0 4px 12px #00000014}.landing-nav-mobile-item{width:100%;font-family:var(--font-body);font-size:var(--text-label);font-weight:var(--weight-regular);color:var(--color-text-primary);border-radius:var(--radius-xs);padding:var(--space-3);text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;display:flex}.landing-nav-mobile-cta{margin-top:var(--space-1);justify-content:center}}@media (width<=767px) and (hover:hover){.landing-nav-mobile-item:hover{background:var(--color-bg-inset)}}.about-us{background-color:var(--color-bg-default)}.about-hero{width:100%;padding:var(--space-6) var(--landing-padding-x);flex-direction:column;align-items:center;display:flex}.about-hero-text{max-width:var(--landing-max-w);gap:var(--space-4);flex-direction:column;width:100%;display:flex}@media (width>=901px){.about-hero-text{gap:var(--space-7);grid-template-columns:1fr 1fr;align-items:start;display:grid}}.about-headline{font-family:var(--font-display);font-size:40px;font-weight:var(--weight-light);line-height:var(--leading-tight);color:var(--color-text-primary);margin:0}.about-body{gap:var(--space-4);flex-direction:column;display:flex}.about-body p{font-family:var(--font-body);font-size:18px;font-weight:var(--weight-regular);line-height:var(--leading-normal);color:var(--color-text-primary);margin:0}@media (width<=767px){.about-headline{font-size:32px}}
