@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/manrope-latin-500-normal-BYYD-dBL.woff2)format("woff2"),url(/assets/manrope-latin-500-normal-DMZssgOp.woff)format("woff")}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/poppins-latin-400-normal-cpxAROuN.woff2)format("woff2"),url(/assets/poppins-latin-400-normal-BOb3E3N0.woff)format("woff")}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/poppins-latin-500-normal-C8OXljZJ.woff2)format("woff2"),url(/assets/poppins-latin-500-normal-DGXqpDMm.woff)format("woff")}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/poppins-latin-600-normal-zEkxB9Mr.woff2)format("woff2"),url(/assets/poppins-latin-600-normal-BJdTmd5m.woff)format("woff")}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/poppins-latin-800-normal-Bd8-pIP1.woff2)format("woff2"),url(/assets/poppins-latin-800-normal-YoItoZZV.woff)format("woff")}:root{color:#292934;font-synthesis:none;text-rendering:optimizelegibility;--bg:#f3f1f3;--card:#fff;--text:#292934;--muted:#777580;--line:#e8e4e9;--accent:#f36f59;--accent-dark:#d95a47;--accent-soft:#fff0ec;--warm:#f0a544;--purple:#5f517f;--purple-soft:#eeeaf5;--shadow:0 10px 26px #362f4314;--radius:22px;background:#f3f1f3;font-family:Poppins,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{background:var(--bg);min-width:320px}body{background:var(--bg);min-width:320px;min-height:100vh;color:var(--text);margin:0}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline-offset:3px;outline:3px solid #1e6ca8}button:disabled{cursor:not-allowed;opacity:.55}.auth-page{background:radial-gradient(circle at 94% 5%, #f36f5933 0 74px, transparent 75px), radial-gradient(circle at 4% 96%, #5f517f29 0 86px, transparent 87px), var(--bg);place-items:center;min-height:100vh;padding:28px 16px;display:grid}.auth-card{background:var(--card);border:1px solid #e8e4e9d9;border-radius:28px;width:min(100%,410px);padding:34px 24px;box-shadow:0 18px 44px #362f431a}.auth-logo{object-fit:cover;width:76px;height:76px;box-shadow:8px 8px 0 var(--purple-soft);border-radius:22px;margin-bottom:16px;display:block}.auth-card h1{letter-spacing:-.035em;margin:5px 0 10px;font-size:clamp(1.75rem,8vw,2.15rem);line-height:1.08}.auth-card>.muted{margin:0 0 28px;line-height:1.55}.household-form{gap:10px;display:grid}.household-form label{color:var(--text);font-size:.9rem;font-weight:800}.household-form input{border:1px solid var(--line);width:100%;min-height:52px;color:var(--text);font:inherit;background:#fff;border-radius:15px;padding:11px 13px;box-shadow:inset 0 1px 2px #362f4308}.household-form input:focus{border-color:var(--accent);outline:2px solid color-mix(in srgb, var(--accent) 24%, transparent);outline-offset:2px}.household-form .primary{margin-top:14px}.field-error{color:#9f352c;margin:0;font-size:.82rem;line-height:1.4}.google-button{border:1px solid var(--line);min-height:52px;color:var(--text);cursor:pointer;background:#fff;border-radius:15px;justify-content:center;align-items:center;gap:11px;padding:10px 14px;font-weight:800;display:flex;box-shadow:0 5px 16px #362f430f}.google-button:hover{background:#faf8fb}.google-mark{border:1px solid var(--line);color:#2855a5;background:#fff;border-radius:50%;place-items:center;width:24px;height:24px;font-size:.9rem;font-weight:900;display:grid}.auth-error{margin-top:10px}.auth-privacy{color:var(--muted);margin-top:18px;line-height:1.45;display:block}.join-page{background:var(--bg);place-items:center;min-height:100vh;padding:28px 16px;display:grid}.join-card{border:1px solid var(--line);background:var(--card);width:min(100%,430px);box-shadow:var(--shadow);border-radius:28px;padding:30px 24px}.join-card h1{letter-spacing:-.03em;margin:5px 0 10px;font-family:Manrope,ui-sans-serif,system-ui,sans-serif;font-size:clamp(1.65rem,7vw,2rem);font-weight:500;line-height:1.14}.join-card>.muted{margin:0;line-height:1.5}.join-review{border-block:1px solid var(--line);margin:22px 0}.join-review>div{border-bottom:1px solid var(--line);grid-template-columns:82px minmax(0,1fr);gap:10px;padding:12px 0;display:grid}.join-review>div:last-child{border-bottom:0}.join-review dt{color:var(--muted);font-size:.76rem}.join-review dd{overflow-wrap:anywhere;min-width:0;margin:0;font-size:.84rem;font-weight:500}.join-note{color:var(--muted);text-align:center;margin:14px 0 0;font-size:.72rem;line-height:1.5}.app-shell{width:min(100%,760px);min-height:100vh;padding-bottom:calc(156px + env(safe-area-inset-bottom));margin:0 auto}.app-shell--plan{width:min(100%,1280px)}.screen{min-height:calc(100vh - 108px)}.page-header{z-index:5;background:linear-gradient(var(--bg) 84%, #f3f1f300);padding:22px 20px 12px;position:sticky;top:0}.page-header h1{letter-spacing:-.035em;margin:0;font-family:Manrope,ui-sans-serif,system-ui,sans-serif;font-size:clamp(1.8rem,7vw,2rem);font-weight:500;line-height:1.08}.page-header p{color:var(--muted);margin:4px 0 0;font-size:.82rem}.page-header--action{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.page-header--action>div:first-child{min-width:0}.page-header--action .secondary{flex:none}.page-header-actions{flex:none;align-items:center;gap:4px;display:flex}.header-icon-button{border:1px solid var(--line);background:var(--card);width:44px;height:44px;color:var(--text);box-shadow:var(--shadow);border-radius:14px;flex:0 0 44px;place-items:center;font-size:1.35rem;line-height:1;text-decoration:none;display:grid}.settings-access-link{color:#8f9698;opacity:.7;text-shadow:0 1px #fffffff2,0 -1px #362f431f;background:0 0;border-radius:50%;flex:0 0 44px;place-items:center;width:44px;height:44px;font-family:ui-sans-serif,system-ui,sans-serif;font-size:1.22rem;line-height:1;text-decoration:none;transition:background .15s,color .15s,opacity .15s;display:grid}.settings-access-link:hover{color:#626b6d;opacity:1;background:#ffffff73}.section{padding:4px 18px 7px}.section>h2,.repertoire>h2{color:var(--muted);letter-spacing:.095em;text-transform:uppercase;margin:10px 4px 7px;font-size:.74rem;line-height:1.3}.today-page-header{z-index:auto;background:0 0;padding-bottom:8px;position:relative}.today-dashboard{grid-template-columns:minmax(0,1fr);gap:12px;padding:4px 18px 0;display:grid}.today-dashboard[data-masonry=true]{display:block;position:relative}.today-dashboard[data-masonry=true] .today-tile{position:absolute;top:0;left:0}.today-tile.card{min-width:0;margin:0;padding:16px}.today-tile__title{margin:0 0 10px;font-family:Manrope,ui-sans-serif,system-ui,sans-serif;font-size:1rem;font-weight:500;line-height:1.25}.today-tile>.section-group{box-shadow:none;border:0;border-radius:0;margin:0}.today-tile>.section-group .group-row{padding-inline:0}.today-tile--menu .meal-stack{gap:10px}.card,.section-group,.week-block,.shopping-list{border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow);border:1px solid #e8e4e9e6;margin-bottom:8px;overflow:hidden}.card{padding:15px}.compact-card{padding:14px}.muted{color:var(--muted)}.full-width{width:100%}.sr-only{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.skip-link{z-index:100;color:var(--text);background:#fff;border-radius:10px;padding:10px 12px;position:fixed;top:8px;left:8px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.section-group{border-radius:var(--radius)}.summary-list{margin:0;padding:0;list-style:none}.group-row{border:0;border-bottom:1px solid var(--line);text-align:left;background:0 0;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:11px;width:100%;min-height:68px;padding:11px 14px;display:grid}.group-row:last-child{border-bottom:0}.summary-row--without-icon{grid-template-columns:minmax(0,1fr)}.group-row__icon{background:var(--accent-soft);text-align:center;border-radius:11px;place-items:center;width:32px;height:32px;font-size:1rem;display:grid}.group-row__body{flex-direction:column;min-width:0;display:flex}.group-row__body strong{font-size:.96rem;font-weight:500}.group-row small,.task-row small,.shopping-row small,.person-card small,.repertoire-card small,.timeline-item small,.usual-row small{color:var(--muted);margin-top:2px;font-size:.79rem;font-weight:400;line-height:1.35;display:block}.chevron{color:#98a0a2;font-size:1.25rem;font-weight:900}.meal-stack{gap:10px;display:grid}.meal-group{border:1px solid var(--line);background:#faf8fb;border-radius:18px;min-width:0;padding:11px 12px 4px;overflow:hidden}.meal-group:only-child{grid-column:1/-1}.meal-group h3{color:var(--muted);letter-spacing:.07em;text-transform:uppercase;margin:0 2px 5px;font-size:.72rem;font-weight:500}.meal-group__list{display:grid}.meal-group__item{border:0;border-top:1px solid var(--line);text-align:left;cursor:pointer;background:0 0;min-width:0;min-height:44px;padding:9px 2px}.meal-group__item:first-child{border-top:0}.meal-group__item:hover{color:var(--accent-dark)}.meal-group__item strong{text-overflow:ellipsis;font-size:.9rem;font-weight:500;line-height:1.3;display:block;overflow:hidden}.eyebrow{color:var(--muted);letter-spacing:.07em;text-transform:uppercase;font-size:.72rem}.avatars{flex-wrap:wrap;gap:5px;margin-top:8px;display:flex}.avatar{background:var(--purple-soft);width:28px;height:28px;color:var(--purple);border:1px solid #ded7e9;border-radius:50%;justify-content:center;align-items:center;font-size:.67rem;font-weight:800;display:inline-flex}.card-heading{justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:2px;display:flex}.card-heading>div{min-width:0}.card-heading strong{font-weight:500}.card-heading small{color:var(--muted);margin-top:2px;font-size:.79rem;display:block}.pill{background:var(--accent-soft);color:#a94435;white-space:nowrap;border:1px solid #f8d7d0;border-radius:999px;flex:none;padding:5px 9px;font-size:.72rem}.task-list{margin-top:5px}.task-row{border-bottom:1px solid var(--line);cursor:pointer;grid-template-columns:24px minmax(0,1fr);align-items:start;gap:8px;min-height:48px;padding:8px 0;display:grid}.task-row:last-child{border-bottom:0}.task-row strong,.shopping-row strong,.usual-row strong,.repertoire-card strong,.timeline-item strong{font-weight:500}.task-row input,.shopping-row input{width:18px;height:18px;accent-color:var(--accent);margin:2px 0 0}.task-row.is-complete strong,.shopping-row.is-complete strong{color:#8d9698;text-decoration:line-through}.fold{border-top:1px solid var(--line);margin-top:8px}.fold summary{cursor:pointer;min-height:44px;padding:12px 2px 8px;font-weight:750}.fold__content{border-top:1px solid var(--line)}.standalone-fold{border:1px solid var(--line);background:var(--card);border-radius:16px;margin-top:9px;overflow:hidden}.standalone-fold summary{padding:12px}.standalone-fold .fold__content{padding:0 12px}.primary,.secondary,.week-controls button{cursor:pointer;border-radius:14px;min-height:46px;padding:10px 13px}.primary{border:1px solid var(--accent);background:var(--accent);color:#fff;font-weight:800}.primary:hover{background:var(--accent-dark)}.secondary,.week-controls button{border:1px solid var(--line);background:var(--card);box-shadow:0 4px 14px #362f430d}.secondary:hover,.week-controls button:hover{background:#faf8fb}.button-row{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.week-controls{text-align:center;grid-template-columns:46px minmax(74px,1fr) 46px 46px;align-items:center;gap:8px;margin:4px 0 12px;display:grid}.week-controls button{padding:0;font-size:1.35rem}.week-day{border-bottom:1px solid var(--line)}.week-day:last-child{border-bottom:0}.week-day__heading{text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:flex-start;gap:8px;width:100%;padding:12px 14px 4px;display:flex}.week-day__heading>span:first-child{flex-direction:column;min-width:0;display:flex}.week-day__heading strong{font-size:.96rem;font-weight:500}.week-day__heading small{color:var(--warm);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:.72rem;font-weight:700;overflow:hidden}.week-meal{grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:8px;min-height:40px;padding:3px 14px 6px;font-size:.8rem;display:grid}.week-meal__label{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:.64rem;font-weight:800}.week-meal .avatars{flex-wrap:nowrap;gap:3px;margin:0}.week-meal .avatar{width:23px;height:23px;font-size:.58rem}.text-action{min-height:36px;color:var(--accent);text-align:left;cursor:pointer;background:0 0;border:0;padding:0;font-weight:800}.weekend-button{width:100%;margin:2px 0 9px}.repertoire{margin-top:18px}.search-input{border:1px solid var(--line);background:var(--card);width:100%;min-height:48px;color:var(--text);border-radius:14px;padding:11px 12px}.repertoire h3{color:#4c5659;margin:12px 2px 6px;font-size:.8rem}.repertoire-row{gap:8px;padding:1px 1px 5px;display:flex;overflow-x:auto}.repertoire-card{border:1px solid var(--line);background:var(--card);text-align:left;border-radius:16px;flex:1;grid-template-rows:1fr auto;min-width:170px;display:grid;overflow:hidden}.repertoire-card.is-dragging{opacity:.52}.repertoire-card__main{min-height:58px;color:inherit;text-align:left;cursor:grab;touch-action:pan-y;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:flex-start;padding:11px 12px 7px;display:flex}.repertoire-card__main:active{cursor:grabbing}.repertoire-card__add{border:0;border-top:1px solid var(--line);min-height:44px;color:var(--accent-dark);text-align:left;cursor:pointer;background:#faf8fb;padding:6px 12px;font-size:.72rem;font-weight:600}.repertoire-card__main:hover,.repertoire-card__add:hover{background:var(--accent-soft)}.timeline{border-left:2px solid #ded7ce;margin:15px 0 0 7px;padding-left:19px;position:relative}.timeline-item{grid-template-columns:44px 1fr;gap:8px;padding:0 0 18px;display:grid;position:relative}.timeline-item:before{border:2px solid var(--accent);background:var(--card);content:"";border-radius:50%;width:10px;height:10px;position:absolute;top:4px;left:-26px}.timeline-item time{color:var(--muted);font-size:.7rem;font-weight:800}.plan-content{padding:4px 12px 10px}.plan-page-header{padding-top:16px;padding-bottom:7px}.plan-page-header .future-action{min-height:40px;padding:6px 10px;font-size:.72rem}.plan-toolbar{gap:8px;margin-bottom:8px;display:grid}.plan-toolbar .week-controls{margin:0}.plan-toolbar .plan-today-button{font-size:.8rem;font-weight:600}.plan-view-selector{border:1px solid var(--line);background:#ffffffb3;border-radius:15px;grid-template-columns:repeat(3,minmax(0,1fr));padding:4px;display:none}.plan-view-selector button{min-height:40px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:11px;padding:6px 9px;font-size:.76rem}.plan-view-selector button.is-active{background:var(--card);color:var(--text);font-weight:600;box-shadow:0 4px 12px #362f4314}.weekend-toggle{min-height:44px;color:var(--accent-dark);cursor:pointer;background:0 0;border:0;margin:0 0 9px;padding:6px 10px;font-size:.76rem;font-weight:600}.plan-calendar{gap:10px;display:grid}.plan-week-row{grid-template-columns:repeat(var(--plan-columns), minmax(0, 1fr));gap:7px;min-width:0;display:grid}.plan-day-card{border:1px solid var(--line);background:var(--card);border-radius:19px;min-width:0;overflow:hidden;box-shadow:0 5px 16px #362f430e}.plan-day-card>header{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-content:center;gap:2px 8px;min-height:52px;padding:10px 12px 7px;display:grid}.plan-day-card>header strong{font-family:Manrope,ui-sans-serif,system-ui,sans-serif;font-size:.9rem;font-weight:500}.plan-day-card>header time{color:var(--muted);font-size:.78rem}.plan-day-card>header small{color:var(--warm);grid-column:1/-1;font-size:.7rem;line-height:1.35}.plan-lane{border-bottom:1px solid var(--line);grid-template-columns:56px minmax(0,1fr);align-items:start;gap:7px;min-height:58px;padding:8px 10px;transition:background .12s,outline-color .12s;display:grid;position:relative}.plan-lane:last-child{border-bottom:0}.plan-lane.is-drop-target{outline:2px solid var(--accent);outline-offset:-3px;background:var(--accent-soft)}.plan-lane__label{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;padding-top:7px;font-size:.66rem;font-weight:600}.plan-lane__meals{gap:5px;min-width:0;display:grid}.plan-meal-chip{text-align:left;cursor:grab;touch-action:pan-y;background:#faf8fb;border:1px solid #ded8e2;border-radius:12px;flex-direction:column;justify-content:center;align-items:flex-start;min-width:0;min-height:44px;padding:7px 10px;display:flex}.plan-meal-chip:active{cursor:grabbing}.plan-meal-chip span{text-overflow:ellipsis;max-width:100%;font-size:.78rem;font-weight:500;line-height:1.25;overflow:hidden}.plan-meal-chip small{color:var(--muted);margin-top:2px;font-size:.65rem}.plan-meal-chip.is-dragging{opacity:.35}.plan-meal-chip.is-drop-target{border-color:var(--accent);background:var(--accent-soft)}.plan-add-meal{min-height:44px;color:var(--accent-dark);text-align:left;cursor:pointer;background:0 0;border:1px dashed #d8d1dc;border-radius:12px;padding:5px 8px;font-size:.75rem}.plan-day-card--compact{border-radius:14px;box-shadow:0 3px 10px #362f430b}.plan-day-card--compact>header{grid-template-columns:minmax(0,1fr) auto;min-height:38px;padding:6px 7px 4px}.plan-day-card--compact>header strong{text-overflow:ellipsis;text-transform:capitalize;font-size:.68rem;overflow:hidden}.plan-day-card--compact>header time{font-size:.66rem}.plan-day-card--compact.is-adjacent{opacity:.48}.plan-lane--compact{min-height:62px;padding:4px;display:block}.plan-lane--compact .plan-lane__label{padding:0 2px 3px;font-size:.56rem;display:block}.plan-lane--compact .plan-lane__meals{gap:3px}.plan-meal-chip--compact{touch-action:pan-y;border-radius:8px;min-height:36px;padding:5px 6px}.plan-meal-chip--compact span{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:clamp(.58rem,1.5vw,.7rem);line-height:1.15;display:-webkit-box;overflow:hidden}.plan-add-meal--compact{text-align:center;border-radius:8px;min-height:32px;padding:2px}.plan-add-meal--corner{z-index:2;width:44px;min-height:44px;color:var(--accent-dark);background:0 0;border:0;border-radius:50%;place-items:center;padding:0;line-height:1;display:grid;position:absolute;bottom:2px;right:2px}.plan-add-meal__glyph{background:#fffffff5;border:1px solid #f36f5947;border-radius:50%;place-items:center;width:25px;height:25px;font-size:.92rem;display:grid;box-shadow:0 3px 9px #362f431f}.plan-add-meal--corner:hover .plan-add-meal__glyph{background:var(--accent-soft)}.plan-lane.has-add-control .plan-meal-chip:last-of-type{padding-right:42px}.plan-grid-slot-heading{min-width:0;min-height:32px;color:var(--muted);place-items:center;font-family:ui-sans-serif,system-ui,sans-serif;font-size:1rem;line-height:1;display:grid}.plan-grid-day-heading{flex-direction:column;justify-content:center;align-items:center;gap:2px;min-width:0;padding:5px;display:flex}.plan-grid-day-heading time{color:var(--text);font-family:Manrope,ui-sans-serif,system-ui,sans-serif;font-size:.72rem;font-weight:500;line-height:1}.plan-grid-day-heading small{color:var(--warm);text-align:center;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.57rem;line-height:1.2;display:-webkit-box;overflow:hidden}.plan-lane--unlabelled{border-bottom:0;min-width:0;min-height:52px;padding:4px;display:block}.plan-lane--unlabelled .plan-lane__meals{gap:3px}.plan-lane--unlabelled .plan-meal-chip,.plan-lane--unlabelled .plan-add-meal{border-radius:8px;min-height:44px;padding:5px 6px}.plan-lane--unlabelled .plan-meal-chip span{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:clamp(.6rem,1.45vw,.7rem);line-height:1.15;display:-webkit-box;overflow:hidden}.plan-portrait-grid,.plan-week-band{border:1px solid var(--line);background:var(--card);border-radius:16px;min-width:0;overflow:hidden;box-shadow:0 4px 14px #362f430d}.plan-portrait-grid__head,.plan-portrait-grid__day{grid-template-columns:62px repeat(2,minmax(0,1fr));display:grid}.plan-portrait-grid__head{background:#faf8fb;min-height:32px}.plan-portrait-grid__head>:not(:first-child),.plan-portrait-grid__day>:not(:first-child){border-left:1px solid var(--line)}.plan-portrait-grid__day{border-top:1px solid var(--line)}.plan-portrait-grid__day .plan-grid-day-heading{align-items:flex-start;min-height:52px;padding-inline:8px}.plan-portrait-grid__day .plan-grid-day-heading small{text-align:left}.plan-week-band__days,.plan-week-band__slot{grid-template-columns:34px repeat(var(--plan-columns), minmax(0, 1fr));display:grid}.plan-week-band__days{background:#faf8fb;min-height:34px}.plan-week-band__days>:not(:first-child),.plan-week-band__slot>:not(:first-child){border-left:1px solid var(--line)}.plan-week-band__slot{border-top:1px solid var(--line)}.plan-week-band__slot .plan-grid-slot-heading{min-height:52px}.plan-drag-preview{border:1px solid var(--accent);background:var(--card);max-width:190px;box-shadow:var(--shadow);border-radius:12px;padding:10px 12px;font-size:.75rem}.future-action{white-space:nowrap;min-height:44px}.repertoire-heading{justify-content:space-between;align-items:end;gap:12px;margin:24px 2px 8px;display:flex}.repertoire-heading h2{margin:0;font-family:Manrope,ui-sans-serif,system-ui,sans-serif;font-size:1.05rem;font-weight:500}.repertoire-heading p,.repertoire-empty{color:var(--muted);margin:3px 0 0;font-size:.72rem}.repertoire-heading .secondary{flex:none}.repertoire-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:9px;display:grid}.repertoire-grid .repertoire-card{min-width:0}.dish-picker,.swap-list{gap:6px;max-height:260px;display:grid;overflow-y:auto}.dish-picker button,.swap-list button{border:1px solid var(--line);background:var(--card);text-align:left;cursor:pointer;border-radius:12px;flex-direction:column;justify-content:center;align-items:flex-start;min-height:48px;padding:8px 10px;display:flex}.dish-picker button.is-selected,.swap-list button.is-selected{border-color:var(--accent);background:var(--accent-soft)}.dish-picker strong,.swap-list strong{font-size:.8rem;font-weight:500}.dish-picker small,.swap-list small{color:var(--muted);font-size:.68rem}.participant-picker,.slot-picker{border:0;flex-wrap:wrap;gap:6px;margin:14px 0;padding:0;display:flex}.participant-picker legend,.slot-picker legend{width:100%;margin-bottom:5px;font-size:.8rem;font-weight:600}.participant-picker label,.slot-picker label{border:1px solid var(--line);background:var(--card);cursor:pointer;border-radius:12px;align-items:center;gap:6px;min-height:44px;padding:6px 9px;font-size:.75rem;display:flex}.meal-action-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.danger-action{color:#9f352c;border-color:#e7beb8}.undo-notice{z-index:81;bottom:calc(154px + env(safe-area-inset-bottom));color:#fff;width:min(100% - 28px,390px);min-height:50px;box-shadow:var(--shadow);background:#24312f;border-radius:16px;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px 8px 14px;font-size:.76rem;display:flex;position:fixed;left:50%;transform:translate(-50%)}.undo-notice button{color:#24312f;cursor:pointer;background:#fff;border:0;border-radius:10px;min-height:44px;padding:6px 10px;font-weight:600}.today-menu-empty{border:1px dashed var(--line);color:var(--muted);border-radius:14px;margin:2px;padding:13px;font-size:.78rem;line-height:1.45}.list-toolbar{justify-content:space-between;align-items:center;gap:10px;min-height:48px;display:flex}.shopping-list{border-radius:var(--radius)}.shopping-list section>h2{border-top:1px solid var(--line);color:var(--muted);letter-spacing:.08em;text-transform:uppercase;background:#faf8fb;margin:0;padding:11px 14px 7px;font-size:.68rem}.shopping-list section:first-child>h2{border-top:0}.shopping-row{border-top:1px solid var(--line);cursor:pointer;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:9px;min-height:60px;padding:10px 14px;display:grid}.shopping-list h2+.shopping-row{border-top:0}.shopping-row>span:nth-child(2){min-width:0}.shopping-empty{border:1px dashed var(--line);text-align:center;border-radius:16px;margin:10px 0;padding:22px 16px}.shopping-empty p{color:var(--muted);margin:5px 0 0;font-size:.82rem}.plan-shopping-action{width:fit-content;margin:8px 0 12px auto;display:block}.prepare-shopping-controls{grid-template-columns:minmax(0,1fr) minmax(180px,1fr);align-items:end;gap:12px;display:grid}.prepare-shopping-controls .field{margin-bottom:0}.prepare-shopping-controls .slot-picker{margin:14px 0 0}.shopping-proposal{margin:16px 0 12px}.shopping-proposal h3{margin:0 0 8px;font-size:.92rem;font-weight:500}.shopping-proposal ul{border:1px solid var(--line);background:var(--card);border-radius:16px;margin:0;padding:0;list-style:none;overflow:hidden}.shopping-proposal li{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;min-height:54px;padding:9px 13px;display:flex}.shopping-proposal li:first-child{border-top:0}.shopping-proposal li span{min-width:0}.shopping-proposal li strong,.shopping-proposal li small{display:block}.shopping-proposal li strong{font-size:.84rem;font-weight:500}.shopping-proposal li small{color:var(--muted);margin-top:2px;font-size:.7rem}.shopping-proposal li b{flex:none;font-size:.78rem;font-weight:500}.shopping-consideration{background:var(--accent-soft);border:1px solid #f36f593d;border-radius:16px;margin:12px 0;padding:13px 14px}.shopping-consideration strong{font-size:.86rem;font-weight:500}.shopping-consideration p{margin:6px 0;font-size:.78rem;line-height:1.45}.shopping-consideration small{color:var(--muted);font-size:.72rem;line-height:1.4}.recipe-base{border-top:1px solid var(--line);margin-top:18px;padding-top:16px}.recipe-base__heading{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.recipe-base__heading h3{margin:0;font-size:.94rem;font-weight:500}.recipe-base__heading small{color:var(--muted);font-size:.7rem}.recipe-portions small{color:var(--muted);font-size:.7rem;font-weight:400;line-height:1.4}.recipe-portions__control{grid-template-columns:minmax(84px,120px) auto;align-items:center;gap:9px;display:grid}.recipe-portions__control input{min-width:0}.recipe-portions__control>span{color:var(--muted);font-size:.78rem;font-weight:400}.ingredient-proposal-preview ul{border:1px solid var(--line);background:var(--card);border-radius:14px;margin:0 0 12px;padding:0;list-style:none;overflow:hidden}.ingredient-proposal-preview li{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;min-height:44px;padding:8px 11px;font-size:.78rem;display:flex}.ingredient-proposal-preview li:first-child{border-top:0}.ingredient-proposal-preview li small{color:var(--muted);flex:none;font-size:.7rem}.recipe-editor-help{color:var(--muted);margin:-6px 2px 12px;font-size:.72rem;line-height:1.45}.ingredient-proposal-preview>strong{margin:0 2px 6px;font-size:.78rem;font-weight:500;display:block}@media (width<=520px){.prepare-shopping-controls,.copy-date-grid{grid-template-columns:1fr;gap:0}}.origin{background:var(--purple-soft);color:var(--purple);border-radius:999px;padding:4px 7px;font-size:.63rem}.usual-row{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;min-height:60px;display:flex}.usual-row:first-child{border-top:0}.usual-row>span{min-width:0}.finish-button{margin-top:9px}.family-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.person-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--card);min-height:166px;box-shadow:var(--shadow);text-align:left;cursor:pointer;flex-direction:column;align-items:flex-start;padding:16px;display:flex}.person-card:hover{border-color:#d8cfdc}.person-card>strong{margin:8px 0 4px;font-size:1.08rem;font-weight:500}.big-avatar{background:var(--purple-soft);width:48px;height:48px;color:var(--purple);border-radius:16px;justify-content:center;align-items:center;font-weight:900;display:inline-flex}.person-section h3{margin:0 0 5px;font-size:.95rem}.person-section p{border-bottom:1px solid var(--line);margin:0;padding:8px 0;font-size:.85rem}.person-section p:last-child{border-bottom:0}.tracking-links{gap:0;display:grid}.tracking-link{border:0;border-bottom:1px solid var(--line);width:100%;min-height:52px;color:var(--text);text-align:left;background:0 0;justify-content:space-between;align-items:center;gap:12px;padding:10px 2px;display:flex}.tracking-link:last-child{border-bottom:0}.tracking-link span{font-weight:500;line-height:1.35}.tracking-link small{color:var(--muted);flex:none;font-size:.72rem;font-weight:400}.tracking-history .tracking-links{box-shadow:none;border:0;margin:0}.tracking-safety-note{background:var(--bg);color:var(--muted);border-radius:14px;margin:12px 0 18px;padding:11px 13px;font-size:.8rem;line-height:1.45}.tracking-timeline{margin-bottom:8px}.tracking-timeline .timeline-item{grid-template-columns:80px minmax(0,1fr)}.tracking-timeline .timeline-item time{line-height:1.35}.tracking-timeline .timeline-item p{overflow-wrap:anywhere;margin:0;font-size:.86rem;line-height:1.5}.tracking-empty{margin:10px 0 18px}.tracking-editor{border-top:1px solid var(--line);padding-top:14px}.tracking-status-action{margin-top:10px}.tracking-title-field{margin:12px 0 8px}.health-review-card>div,.tracking-review-card>div{justify-content:space-between;align-items:center;gap:12px;display:flex}.health-person-picker,.tracking-person-picker{margin:0 0 12px}.health-record{border-bottom:1px solid var(--line);padding:8px 0}.health-record:last-child{border-bottom:0}.health-record p{border:0;padding:0}.health-record>div{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.health-record .text-action{flex:none;min-height:44px}.health-record time{color:var(--muted);margin-top:3px;font-size:.7rem;display:block}.sheet-backdrop{z-index:50;background:#20282a66;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet{width:min(100%,760px);max-height:min(88vh,820px);padding:22px 18px calc(28px + env(safe-area-inset-bottom));background:var(--bg);border-radius:30px 30px 0 0;position:relative;overflow-y:auto;box-shadow:0 -18px 42px #261f3229}.sheet h2{letter-spacing:-.015em;margin:0 42px 4px 0;font-size:1.4rem}.sheet__subtitle{margin:0 42px 8px 0;font-size:.82rem;line-height:1.4}.sheet__close{background:var(--card);cursor:pointer;border:0;border-radius:15px;width:44px;height:44px;padding:0;font-size:1.35rem;position:absolute;top:16px;right:18px;box-shadow:0 4px 14px #362f4312}.detail-card{border:1px solid var(--line);background:var(--card);border-radius:16px;margin:12px 0;padding:13px}.detail-card p{color:var(--muted);margin:5px 0 0;font-size:.84rem;line-height:1.45}.field{flex-direction:column;gap:6px;margin:14px 0;font-size:.82rem;font-weight:750;display:flex}.field input,.field textarea,.universal-textarea{border:1px solid var(--line);background:var(--card);width:100%;color:var(--text);border-radius:14px;padding:12px;font-weight:400}.field input{min-height:48px}.field textarea{resize:vertical;line-height:1.5}.universal-textarea{resize:vertical;min-height:120px;margin:12px 0}.channel-row{margin:0 0 12px}.safety-note{border-left:3px solid var(--warm);color:#5c514a;background:#fff8f1;padding:10px 12px;font-size:.82rem;line-height:1.45}.copy-date-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.copy-date-grid .field{min-width:0}.copy-preview{min-height:82px}.copy-preview strong{font-size:.92rem;font-weight:500}.settings-page-header{grid-template-columns:44px minmax(0,1fr);align-items:start;gap:12px;display:grid}.settings-page-header .header-icon-button{font-size:2rem}.settings-section{padding-top:8px}.settings-card{padding:0}.settings-toggle{cursor:pointer;justify-content:space-between;align-items:center;gap:14px;min-height:76px;padding:14px 16px;display:flex}.settings-control-copy{flex-direction:column;min-width:0;display:flex}.settings-control-copy strong,.settings-position legend{font-size:.92rem;font-weight:500}.settings-control-copy small{color:var(--muted);margin-top:3px;font-size:.76rem;line-height:1.35}.settings-toggle input{appearance:none;cursor:pointer;background:#ddd9df;border:1px solid #c8c3cb;border-radius:999px;flex:none;width:48px;height:28px;margin:0;transition:background .15s,border-color .15s;position:relative}.settings-toggle input:after{content:"";background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .15s;position:absolute;top:3px;left:3px;box-shadow:0 1px 4px #362f433d}.settings-toggle input:checked{border-color:var(--accent);background:var(--accent)}.settings-toggle input:checked:after{transform:translate(20px)}.settings-position{border:0;border-top:1px solid var(--line);margin:0;padding:15px 16px 16px}.settings-position legend{width:100%;padding:15px 0 0}.settings-position-options{grid-template-columns:repeat(auto-fit,minmax(64px,1fr));gap:7px;margin-top:10px;display:grid}.settings-position-options label{cursor:pointer;position:relative}.settings-position-options input{opacity:0;pointer-events:none;position:absolute}.settings-position-options label span{border:1px solid var(--line);min-height:44px;color:var(--muted);border-radius:11px;place-items:center;padding:7px;font-size:.75rem;display:grid}.settings-position-options input:checked+span{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-dark);font-weight:500}.settings-position-options input:focus-visible+span{outline-offset:2px;outline:3px solid #1e6ca8}.settings-position-options input:disabled+span{opacity:.45;cursor:not-allowed}.settings-control-help{color:var(--muted);margin:6px 0 0;font-size:.76rem;font-weight:400;line-height:1.4}.settings-local-note{color:var(--muted);margin:8px 4px 0;font-size:.72rem;line-height:1.4}.settings-account-card,.settings-household-card{padding:0}.settings-info-row{justify-content:space-between;align-items:center;gap:12px;min-height:76px;padding:14px 16px;display:flex}.settings-info-row>span,.settings-household-name,.pending-invitation>span,.adult-account-list li>span{flex-direction:column;min-width:0;display:flex}.settings-info-row strong,.settings-household-name strong,.pending-invitation strong,.adult-account-list strong{overflow-wrap:anywhere;font-size:.9rem;font-weight:500}.settings-info-row small,.settings-household-name small,.pending-invitation small,.adult-account-list small{color:var(--muted);margin-top:3px;font-size:.74rem;line-height:1.4}.settings-info-row .secondary{flex:none}.settings-household-name{border-bottom:1px solid var(--line);padding:15px 16px}.settings-loading{color:var(--muted);margin:0;padding:18px 16px;font-size:.8rem}.settings-inline-message{margin:0;padding:12px 16px}.settings-inline-message p{margin:0 0 9px}.adult-account-list{margin:0;padding:0;list-style:none}.adult-account-list li{border-bottom:1px solid var(--line);min-height:61px;padding:11px 16px}.pending-invitation{border-bottom:1px solid var(--line);background:#faf8fb;padding:14px 16px}.invitation-copy{grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-top:13px;display:grid}.invitation-copy label{color:var(--muted);grid-column:1/-1;font-size:.72rem}.invitation-copy input{border:1px solid var(--line);background:var(--card);min-width:0;min-height:46px;color:var(--text);border-radius:12px;padding:10px 12px;font-size:.74rem}.invitation-copy .secondary{min-height:46px}.settings-copy-status{min-height:1.2em;color:var(--muted);grid-column:1/-1;margin:0;font-size:.7rem;line-height:1.4}.settings-access-actions{margin:0;padding:14px 16px}.settings-access-note{padding:4px 12px 12px}.settings-reset-card{justify-content:space-between;align-items:center;gap:14px;min-height:84px;padding:14px 16px;display:flex}.settings-reset-card>div{flex-direction:column;min-width:0;display:flex}.settings-reset-card strong{font-size:.92rem;font-weight:500}.settings-reset-card small{color:var(--muted);margin-top:3px;font-size:.76rem;line-height:1.35}.settings-reset-card .secondary{flex:none}.reset-confirmation{color:var(--text);cursor:pointer;align-items:flex-start;gap:10px;margin:16px 0;font-size:.84rem;line-height:1.4;display:flex}.reset-confirmation input{width:20px;height:20px;accent-color:var(--accent);margin:0}.bottom-nav{z-index:20;bottom:max(10px, env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffffff5;border:1px solid #e8e4e9e6;border-radius:24px;grid-template-columns:repeat(4,minmax(0,1fr));width:min(100% - 24px,736px);padding:7px;display:grid;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 14px 34px #362f4324}.bottom-nav a,.bottom-nav button{color:#737d80;cursor:pointer;background:0 0;border:0;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:3px;min-width:0;min-height:53px;padding:5px 2px;font-size:.68rem;font-weight:750;text-decoration:none;display:flex}.bottom-nav a>span,.bottom-nav button>span{font-size:1.25rem;line-height:1}.bottom-nav a.active{background:var(--accent-soft);color:var(--accent-dark)}.floating-add-layer{z-index:21;bottom:calc(88px + env(safe-area-inset-bottom));pointer-events:none;width:min(100% - 24px,736px);height:0;position:fixed;left:50%;transform:translate(-50%)}.floating-add-button{border:1px solid var(--accent);background:var(--accent);color:#fff;cursor:pointer;pointer-events:auto;border-radius:50%;place-items:center;width:56px;height:56px;padding:0;font-size:1.7rem;line-height:1;display:grid;position:absolute;bottom:0;box-shadow:0 10px 22px #f36f5957}.floating-add-button:hover{background:var(--accent-dark)}.floating-add-layer[data-position=left] .floating-add-button{left:8px}.floating-add-layer[data-position=center] .floating-add-button{left:50%;transform:translate(-50%)}.floating-add-layer[data-position=right] .floating-add-button{right:8px}.sync-status{z-index:35;bottom:calc(154px + env(safe-area-inset-bottom));max-width:min(100% - 24px,430px);color:var(--text);background:#fffffffa;border:1px solid #e8e4e9f2;align-items:center;display:flex;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 10px 28px #362f4324}.sync-status--compact{border-radius:999px;gap:7px;padding:8px 12px;font-size:.76rem}.sync-status--compact>span{color:var(--accent-dark);font-weight:800}.sync-status--action{border-radius:18px;flex-wrap:wrap;justify-content:space-between;gap:9px;width:calc(100% - 24px);padding:12px 14px;font-size:.75rem;line-height:1.4}.sync-status--action>span{flex:220px;min-width:0}.sync-status--action strong{font-weight:600;display:block}.sync-status--action button{border:1px solid var(--line);background:var(--card);min-height:44px;color:var(--accent-dark);cursor:pointer;border-radius:12px;flex:none;padding:8px 10px;font-size:.75rem;font-weight:600}.toast{z-index:80;bottom:calc(154px + env(safe-area-inset-bottom));color:#fff;opacity:0;pointer-events:none;background:#24312f;border-radius:999px;max-width:calc(100% - 32px);padding:10px 14px;font-size:.8rem;transition:opacity .15s,transform .15s;position:fixed;left:50%;transform:translate(-50%,20px)}.toast--visible{opacity:1;transform:translate(-50%)}.state-page{place-items:center;min-height:calc(100vh - 108px);padding:28px 18px;display:grid}.state-page--contained{min-height:min(60vh,480px);padding-inline:0}.state-card{border:1px solid var(--line);background:var(--card);width:min(100%,430px);box-shadow:var(--shadow);text-align:center;border-radius:28px;padding:34px 24px}.state-card h1{margin:10px 0 5px;font-size:1.3rem}.state-card p{color:var(--muted);margin:0 0 15px;line-height:1.5}.state-icon{color:var(--accent);font-size:2rem;display:block}.state-icon--logo{object-fit:cover;width:76px;height:76px;box-shadow:7px 7px 0 var(--purple-soft);border-radius:22px;margin:0 auto 12px}.spinner{border:3px solid #d8e2dd;border-top-color:var(--accent);border-radius:50%;width:34px;height:34px;margin:auto;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (width>=360px){.today-tile--menu .meal-stack{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=600px){.today-dashboard{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.plan-content{padding-inline:18px}.repertoire-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=700px){.page-header{padding-inline:26px}.section{padding-inline:24px}}@media (width>=900px){.app-shell--plan .page-header{padding-inline:30px}.plan-content{padding-inline:28px}.plan-toolbar{grid-template-columns:minmax(280px,1fr) minmax(330px,.8fr);align-items:center}.plan-view-selector{display:grid}.plan-calendar--month{gap:7px}.plan-day-card--compact>header{min-height:44px}.plan-lane--compact{min-height:72px}.repertoire-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width<=360px){.page-header--with-actions{grid-template-columns:minmax(0,1fr) 44px;align-items:start;gap:8px 4px;display:grid}.page-header--with-actions>div:first-child{grid-area:1/1}.page-header--with-actions>.page-header-actions{display:contents}.page-header--with-actions .settings-access-link{grid-area:1/2}.page-header--with-actions .secondary{grid-area:2/1/auto/-1;justify-self:end}.section{padding-inline:10px}.page-header{padding-inline:12px}.today-dashboard{padding-inline:10px}.family-grid{gap:7px}.person-card{min-height:150px;padding:11px}.bottom-nav a,.bottom-nav button{font-size:.62rem}.origin{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}}.agenda-screen{padding-bottom:180px}.agenda-toolbar{justify-content:flex-end;padding-top:0;display:flex}.agenda-density-picker{border:1px solid var(--line);background:var(--card);border-radius:999px;min-width:0;margin:0;padding:3px;display:inline-flex}.agenda-density-picker legend{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.agenda-density-picker label{cursor:pointer;align-items:center;min-width:0;min-height:44px;display:inline-flex;position:relative}.agenda-density-picker input{opacity:0;width:1px;height:1px;position:absolute}.agenda-density-picker span{min-height:36px;color:var(--muted);border-radius:999px;align-items:center;padding:7px 10px;font-size:.66rem;display:inline-flex}.agenda-density-picker input:checked+span{background:var(--accent-soft);color:var(--accent-dark);font-weight:500}.agenda-density-picker input:focus-visible+span{outline-offset:2px;outline:3px solid #1e6ca8}.agenda-review-notice{border-top:1px solid var(--line);border-bottom:1px solid var(--line);align-items:center;gap:11px;margin-block:4px 12px;padding-block:11px;display:flex}.agenda-review-notice>span{background:var(--accent-soft);width:34px;height:34px;color:var(--accent-dark);border-radius:50%;flex:none;place-items:center;font-size:1.1rem;display:grid}.agenda-review-notice p,.agenda-review-notice strong,.agenda-review-notice small{margin:0;display:block}.agenda-review-notice strong{font-size:.82rem;font-weight:500}.agenda-review-notice small{color:var(--muted);margin-top:2px;font-size:.72rem}.agenda-review-notice p{flex:1;min-width:0}.agenda-review-panel{border-block:1px solid var(--line);background:color-mix(in srgb, var(--card) 78%, transparent);margin-bottom:16px;padding-block:13px}.agenda-review-panel__header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:11px;display:flex}.agenda-review-panel__header h2,.agenda-review-panel__header p{margin:0}.agenda-review-panel__header h2{font-size:1rem;font-weight:500}.agenda-review-panel__header p{color:var(--muted);margin-top:3px;font-size:.72rem}.agenda-review-empty{color:var(--muted);text-align:center;margin:18px 0;font-size:.78rem}.agenda-review-groups{gap:9px;display:grid}.agenda-range-actions{justify-content:space-between;align-items:center;gap:10px;min-height:44px;display:flex}.agenda-list{gap:17px;display:grid}.agenda-day>header{align-items:center;gap:8px;min-height:35px;padding:0 4px;display:flex}.agenda-day>header time{color:var(--muted);text-transform:capitalize;font-size:.76rem;font-weight:500}.agenda-day>header span{background:var(--accent-soft);color:var(--accent-dark);border-radius:999px;padding:3px 7px;font-size:.64rem;font-weight:500}.agenda-day ol{border:1px solid var(--line);border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow);margin:0;padding:0;list-style:none;overflow:hidden}.agenda-event{border-top:1px solid var(--line);grid-template-columns:68px minmax(0,1fr);gap:10px;min-height:64px;padding:12px 14px;display:grid}.agenda-event:first-child{border-top:0}.agenda-event>time{color:var(--accent-dark);font-size:.7rem;font-weight:500;line-height:1.4}.agenda-event__button{width:100%;min-width:0;min-height:44px;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;margin:-4px 0;padding:4px 0;display:block}.agenda-event__button:hover strong{color:var(--accent-dark)}.agenda-event>div,.agenda-event strong,.agenda-event small{min-width:0;display:block}.agenda-event strong{font-size:.85rem;font-weight:500;line-height:1.35}.agenda-event small{color:var(--muted);margin-top:3px;font-size:.7rem;line-height:1.4}.agenda-event--personal{background:color-mix(in srgb, var(--card) 86%, var(--purple-soft));border-left:3px solid color-mix(in srgb, var(--purple) 45%, transparent)}.agenda-private-label{width:fit-content;color:var(--purple);align-items:center;gap:3px;margin-top:5px;font-size:.64rem;font-weight:500;display:inline-flex}.agenda-event-detail p{margin:6px 0}.agenda-event-detail small{color:var(--muted)}.agenda-source-count{background:var(--purple-soft);color:var(--purple);border-radius:999px;margin-top:6px;padding:3px 7px;font-size:.62rem;display:inline-block}.agenda-more{flex-direction:column;align-items:center;gap:7px;margin-top:18px;display:flex}.agenda-more small{color:var(--muted);font-size:.68rem}.today-agenda-moment{border-bottom:1px solid var(--line);grid-template-columns:48px minmax(0,1fr);align-items:start;gap:9px;padding:10px 0;display:grid}.today-agenda-moment>time{color:var(--accent-dark);font-size:.72rem;font-weight:500}.today-agenda-moment strong,.today-agenda-moment small{display:block}.today-agenda-moment strong{font-size:.82rem;font-weight:500}.today-agenda-moment small{color:var(--muted);margin-top:2px;font-size:.68rem}.today-agenda-moment--personal{border-left:3px solid color-mix(in srgb, var(--purple) 45%, transparent);background:color-mix(in srgb, var(--card) 88%, var(--purple-soft));margin-inline:-8px;padding-inline:8px}.agenda-density-compact .agenda-list{gap:9px}.agenda-density-compact .agenda-day>header{min-height:27px}.agenda-density-compact .agenda-event{min-height:52px;padding-block:8px}.agenda-density-compact .agenda-event strong{font-size:.8rem}.agenda-density-compact .agenda-event small{margin-top:1px}.school-access-button{margin-top:12px}.school-page-header .back-link{min-height:28px;color:var(--accent-dark);margin-bottom:3px;font-size:.74rem;text-decoration:none;display:inline-block}.school-sections{gap:11px;display:grid}.school-section{padding:0;overflow:hidden}.school-section h2{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;margin:0;padding:12px 14px 8px;font-size:.72rem;font-weight:500}.school-routine{border:0;border-top:1px solid var(--line);width:100%;min-height:58px;color:var(--text);text-align:left;cursor:pointer;background:0 0;justify-content:space-between;align-items:center;gap:11px;padding:11px 14px;display:flex}.school-routine span,.school-routine strong,.school-routine small{min-width:0;display:block}.school-routine strong{font-size:.84rem;font-weight:500}.school-routine small{color:var(--muted);margin-top:3px;font-size:.7rem}.school-routine em{color:var(--muted);flex:none;font-size:.66rem;font-style:normal}.school-source{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;min-height:56px;padding:10px 14px;display:flex}.school-source span,.school-source strong,.school-source small{display:block}.school-source strong{font-size:.8rem;font-weight:500}.school-source small{color:var(--muted);font-size:.68rem}.school-source a{min-height:44px;color:var(--accent-dark);padding:12px 4px;font-size:.72rem}.school-empty{border:1px dashed var(--line);border-radius:var(--radius);text-align:center;padding:26px 18px}.school-empty strong{font-size:.9rem;font-weight:500}.school-empty p{color:var(--muted);margin:6px 0 0;font-size:.78rem;line-height:1.5}.school-state{justify-content:space-between;align-items:center;gap:10px;padding-block:18px;display:flex}.calendar-settings-card{overflow:hidden}.calendar-connect,.calendar-connection-summary{justify-content:space-between;align-items:center;gap:12px;min-height:78px;padding:14px 16px;display:flex}.calendar-connect>div,.calendar-connection-summary>span,.calendar-connect strong,.calendar-connect small,.calendar-connection-summary strong,.calendar-connection-summary small{min-width:0;display:block}.calendar-connect strong,.calendar-connection-summary strong{font-size:.9rem;font-weight:500}.calendar-connect small,.calendar-connection-summary small{color:var(--muted);margin-top:3px;font-size:.72rem;line-height:1.4}.calendar-connection-actions{flex:none;justify-content:flex-end;align-items:center;gap:4px;display:flex}.calendar-connection-actions .text-action{padding-inline:8px}.calendar-list-heading{border-top:1px solid var(--line);background:#faf8fb;justify-content:space-between;align-items:center;gap:10px;padding:9px 16px;display:flex}.calendar-list-heading strong{font-size:.76rem;font-weight:500}.calendar-list{margin:0;padding:0;list-style:none}.calendar-list li{border-top:1px solid var(--line);gap:8px;min-height:61px;padding:9px 14px;display:grid}.calendar-selection{cursor:pointer;align-items:center;gap:9px;min-width:0;min-height:44px;display:flex}.calendar-selection span,.calendar-list li strong,.calendar-list li small{min-width:0;display:block}.calendar-list li strong{text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;font-weight:500;overflow:hidden}.calendar-list li small{color:var(--muted);font-size:.66rem}.calendar-assignment{border:0;min-width:0;margin:0 0 3px 28px;padding:0}.calendar-assignment legend{color:var(--muted);margin-bottom:5px;font-size:.66rem}.calendar-assignment-help{color:var(--muted);margin:3px 0 0;font-size:.64rem;line-height:1.4}.calendar-sharing-mode{margin-top:-3px}.calendar-member-options{flex-wrap:wrap;gap:5px;display:flex}.calendar-member-options label{cursor:pointer;align-items:center;min-height:44px;display:inline-flex;position:relative}.calendar-member-options input{opacity:0;width:1px;height:1px;position:absolute}.calendar-member-options span{border:1px solid var(--line);min-height:36px;color:var(--muted);border-radius:999px;align-items:center;padding:7px 10px;font-size:.69rem;display:inline-flex}.calendar-member-options input:checked+span{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-dark)}.calendar-member-options input:focus-visible+span{outline-offset:2px;outline:3px solid #1e6ca8}.calendar-review{margin-top:13px}.calendar-review>h3{margin:0 4px 3px;font-size:.9rem;font-weight:500}.calendar-review>p{color:var(--muted);margin:0 4px 10px;font-size:.72rem;line-height:1.45}.calendar-review-item>time,.calendar-review-item>strong,.calendar-review-item>small{display:block}.calendar-review-item>time{color:var(--muted);text-transform:capitalize;font-size:.68rem}.calendar-review-item>strong{margin-top:4px;font-size:.86rem;font-weight:500}.calendar-review-item>small{color:var(--muted);margin-top:3px;font-size:.7rem}.calendar-person-hint{background:var(--accent-soft);width:fit-content;color:var(--accent-dark);border-radius:999px;margin-top:8px;padding:4px 8px;font-size:.66rem;display:inline-flex}.calendar-person-hint.is-ambiguous{color:#76510e;background:#fff3dd}.calendar-duplicate-note{background:var(--accent-soft);color:var(--accent-dark);border-radius:9px;margin:8px 0 0;padding:7px 9px;font-size:.68rem;line-height:1.4}.calendar-occurrences{color:var(--muted);margin-top:8px;font-size:.69rem}.calendar-occurrences summary{min-height:44px;color:var(--accent-dark);cursor:pointer;padding-block:12px}.calendar-occurrences ul{margin:0;padding:0 0 0 19px}.calendar-occurrences li{margin:5px 0}.calendar-review-actions{flex-wrap:wrap;gap:6px;margin-top:11px;display:flex}.calendar-review-actions button{min-height:44px}.calendar-decision-summary strong,.calendar-decision-summary span,.calendar-decision-summary small{display:block}.calendar-decision-summary span{margin-top:5px;font-size:.8rem;line-height:1.45}.calendar-decision-summary small{color:var(--muted);margin-top:8px;font-size:.7rem;line-height:1.45}.calendar-person-picker{border:1px solid var(--line);border-radius:12px;margin:12px 0;padding:12px}.calendar-person-picker legend,.calendar-occurrence-exceptions fieldset legend{padding-inline:4px;font-size:.75rem;font-weight:500}.calendar-occurrence-exceptions{margin:12px 0}.calendar-occurrence-exceptions>summary{min-height:44px;color:var(--accent-dark);cursor:pointer;padding-block:12px}.calendar-occurrence-exceptions>p{color:var(--muted);margin:0 0 8px;font-size:.7rem}.calendar-occurrence-exceptions fieldset{border:1px solid var(--line);border-radius:10px;margin:7px 0;padding:8px}.disconnect-options{gap:8px;display:grid}.option-card{width:100%;color:var(--text);text-align:left;cursor:pointer}.option-card strong,.option-card span{display:block}.pending-proposals-list{gap:8px;margin:16px 0;padding:0;list-style:none;display:grid}.pending-proposals-list .option-card{overflow-wrap:anywhere;min-height:44px;margin:0}#agenda-pending-proposals .section-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}#agenda-pending-proposals .section-heading h2{margin:0}.option-card span{color:var(--muted);margin-top:4px;font-size:.76rem;line-height:1.45}.file-channel{cursor:pointer;justify-content:center;align-items:center;min-height:44px;display:inline-flex}.file-channel input{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.channel-row .is-recording{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-dark)}.voice-control{min-width:136px}.voice-status{border-left:3px solid var(--accent);background:var(--accent-soft);min-height:44px;color:var(--accent-dark);justify-content:space-between;align-items:center;gap:10px;margin:-4px 0 12px;padding:8px 10px 8px 12px;font-size:.8rem;font-weight:700;display:flex}.voice-status .text-action{color:inherit;margin-left:auto}.universal-processing{color:var(--muted);margin:7px 0 12px;font-size:.76rem}.proposal-source{border-left:3px solid var(--purple);background:var(--purple-soft);margin:12px 0;padding:10px 12px}.proposal-source strong{font-size:.76rem;font-weight:500}.proposal-source p{margin:4px 0 0;font-size:.8rem;line-height:1.45}.proposal-kind{color:var(--accent-dark);text-transform:uppercase;margin-bottom:5px;font-size:.66rem;font-weight:500;display:inline-block}.proposal-items .detail-card>strong{font-weight:500;display:block}.proposal-items .detail-card>small{color:var(--muted);margin-top:7px;font-size:.68rem;display:block}@media (width<=360px){.bottom-nav{width:calc(100% - 12px);padding-inline:4px}.bottom-nav a,.bottom-nav button{min-height:50px;font-size:.55rem}.bottom-nav a>span,.bottom-nav button>span{font-size:1.1rem}.agenda-event{grid-template-columns:58px minmax(0,1fr);padding-inline:11px}.calendar-assignment{margin-left:0}.agenda-density-picker span{padding-inline:7px;font-size:.61rem}}@media (width>=760px){.agenda-list{gap:12px;max-width:860px;margin-inline:auto}.agenda-day{grid-template-columns:165px minmax(0,1fr);align-items:start;gap:12px;display:grid}.agenda-day>header{text-align:right;justify-content:flex-end;position:sticky;top:8px}.school-sections{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}}@media (width>=760px),(orientation:landscape) and (height<=520px){.agenda-density-auto .agenda-list{gap:9px}.agenda-density-auto .agenda-day>header{min-height:27px}.agenda-density-auto .agenda-event{min-height:52px;padding-block:8px}.agenda-density-auto .agenda-event strong{font-size:.8rem}.agenda-density-auto .agenda-event small{margin-top:1px}}
