:root{--ink:#172026;--muted:#65727d;--line:#dde5e8;--paper:#fff;--wash:#f5f8f7;--teal:#0f766e;--coral:#db5b38;--navy:#23364a;--shadow:0 18px 50px #1720261a}*{box-sizing:border-box}html,body{width:100%;min-height:100%;margin:0}body{background:var(--wash);color:var(--ink);-webkit-text-size-adjust:100%;flex-direction:column;min-height:100vh;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px;line-height:1.5;display:flex;overflow-x:hidden}body:has(.modalOverlay){overflow:hidden}button,input,select,textarea{font:inherit}button{appearance:none}button:disabled{cursor:not-allowed;opacity:.45}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:2px;outline:3px solid #0f766e3d}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:inherit;font-weight:850}.appShell{max-width:1280px;padding:max(14px, env(safe-area-inset-top)) 20px max(22px, env(safe-area-inset-bottom));flex:1 0 auto;width:100%;margin:0 auto}.appFooter{color:var(--muted);max-width:1280px;padding:0 20px max(18px, env(safe-area-inset-bottom));flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 12px;width:100%;margin:0 auto;font-size:.95rem;font-weight:800;display:flex}.authForm,.authModalBody{gap:14px;display:grid}.authModalBody h1{margin-bottom:8px;font-size:2rem;line-height:1}.googleButton{border:1px solid var(--line);color:var(--navy);cursor:pointer;background:#fff;border-radius:8px;justify-content:center;align-items:center;gap:10px;width:100%;min-height:46px;padding:0 16px;font-weight:850;display:inline-flex}.googleButton:hover:not(:disabled){background:#f7faf9}.googleMark{border:1px solid var(--line);color:#4285f4;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;font-weight:900;line-height:1;display:inline-flex}.authDivider{color:var(--muted);text-transform:uppercase;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;font-size:.82rem;font-weight:850;display:grid}.authDivider:before,.authDivider:after{background:var(--line);content:"";height:1px}.appMessage,.emptyState{color:#6b4d00;background:#fff8df;border:1px solid #efd47a;border-radius:8px;margin-bottom:14px;padding:12px 14px}.modalMessage{margin-bottom:0}.emptyState{color:var(--muted);background:#fff}.emptyState strong{color:var(--ink);margin-bottom:4px;display:block}.emptyState p{margin-bottom:0}.hubShell{place-content:center stretch;gap:18px;display:grid}.hubSections{grid-template-columns:1fr;gap:12px;display:grid}.hubSection{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;min-height:124px;padding:22px;text-decoration:none;display:grid}.hubSectionContent{min-width:0}.hubSection>svg{color:var(--navy);justify-self:end}.hubSection strong,.hubSectionContent>span{display:block}.hubSectionContent>span{color:var(--muted);margin-top:5px;font-size:.95rem;line-height:1.35}.hubSectionDetails{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.hubSectionDetails span{border:1px solid var(--line);color:var(--navy);background:#f7faf9;border-radius:999px;min-height:28px;margin-top:0;padding:7px 10px;font-size:.78rem;font-weight:850;line-height:1;display:inline-flex}.hubSection:hover{border-color:#bfd8d5;transform:translateY(-1px);box-shadow:0 14px 34px #17202614}.hubSectionIcon{color:var(--teal);background:#eef8f6;border:1px solid #cde8e4;border-radius:8px;justify-content:center;align-items:center;width:48px;height:48px;display:inline-flex}.hubSectionImage{aspect-ratio:1;border:1px solid var(--line);border-radius:12px;width:84px;display:block;position:relative;overflow:hidden;box-shadow:0 10px 24px #17202614}.hubSectionImage img{object-fit:cover}.recipeIcon{color:var(--coral);background:#fff3ed;border-color:#f4d1c4}.topBar{grid-template-columns:1fr;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:18px;display:grid}.topBar>div:first-child{min-width:0;max-width:860px}.eyebrow{color:var(--coral);letter-spacing:0;text-transform:uppercase;margin:0 0 6px;font-size:.78rem;font-weight:850}h1{max-width:720px;margin-bottom:10px;font-size:clamp(1.85rem,3.55vw,3rem);line-height:1}.subtitle{color:var(--muted);max-width:760px;margin-bottom:0;font-size:.96rem;line-height:1.38}.headerControls{justify-content:space-between;align-items:center;gap:10px;min-width:0;padding-top:0;display:flex}.actionCluster{border:1px solid var(--line);background:#ffffffb8;border-radius:8px;align-items:center;gap:6px;padding:6px;display:flex;box-shadow:0 10px 30px #17202612}.accountButton,.compactButton{cursor:pointer;border-radius:999px;align-items:center;gap:8px;display:inline-flex}.backLink{color:var(--navy);align-items:center;gap:8px;margin-bottom:12px;font-weight:850;text-decoration:none;display:inline-flex}.backLink:hover{color:var(--teal)}.accountButton{color:#0c5f58;white-space:nowrap;background:#eef8f6;border:1px solid #cde8e4;min-height:44px;padding:0 14px 0 8px;font-size:.9rem;font-weight:850}.accountButton:hover{background:#e2f3ef}.accountAvatar{background:#fff;border:1px solid #cde8e4;border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex}.compactButton{color:var(--navy);white-space:nowrap;background:0 0;border:1px solid #0000;min-height:40px;padding:0 12px;font-weight:850;text-decoration:none}.compactButton:hover{background:#eef3f2}.primaryCompact{background:var(--navy);color:#fff}.primaryCompact:hover{background:#1c2c3d}.groupSwitcher{border:1px solid var(--line);background:#fff;border-radius:8px;justify-content:space-between;align-items:center;gap:14px;margin-bottom:14px;padding:12px;display:flex}.groupSelect{align-items:center;gap:10px;min-width:0;display:flex}.groupSelect span{color:var(--muted);text-transform:uppercase;font-size:.82rem;font-weight:850}.groupSelect select{border:1px solid var(--line);color:var(--ink);background:#f7faf9;border-radius:8px;min-width:min(360px,58vw);min-height:40px;padding:0 34px 0 12px;font-weight:850}.groupMeta{color:var(--muted);flex-wrap:wrap;justify-content:flex-end;gap:8px 12px;font-size:.86rem;font-weight:800;display:flex}.groupActions{align-items:center;gap:6px;display:inline-flex}.sharedWithMeBadge{color:#6b4d00;background:#fff8df;border:1px solid #efd47a;border-radius:999px;min-height:26px;padding:4px 8px;font-size:.76rem;font-weight:900;display:inline-flex}.groupLeaveButton{min-height:34px;padding:0 10px}.modalActions,.babyActions,.recordTopLine,.summaryHeader,.toolbarLabel,.recordDate{align-items:center;display:flex}.modalActions{gap:10px}.primaryButton,.secondaryButton,.textButton,.iconButton{cursor:pointer;border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.primaryButton,.secondaryButton{gap:9px;min-height:44px;padding:0 16px}.primaryButton{background:var(--navy);border:1px solid var(--navy);color:#fff}.primaryButton:hover:not(:disabled){background:#1c2c3d}.dangerButton{color:#fff;background:#b42318;border-color:#b42318}.dangerButton:hover:not(:disabled){background:#981b12;border-color:#981b12}.secondaryButton{border:1px solid var(--line);color:var(--navy);background:#fff}.secondaryButton:hover:not(:disabled),.textButton:hover:not(:disabled),.iconButton:hover:not(:disabled),.categoryTabs button:hover:not(:disabled){background:#eef3f2}.textButton{border:1px solid var(--line);color:var(--navy);background:#f7faf9;gap:6px;min-height:44px;padding:0 12px}.iconButton{border:1px solid var(--line);color:var(--navy);background:#f7faf9;width:44px;height:44px}.iconButton.danger{color:#b42318}.iconButton.danger:hover:not(:disabled){background:#fff1ef;border-color:#efc0bb}.heroGrid{grid-template-columns:minmax(0,1.18fr) minmax(300px,.82fr);gap:12px;margin-bottom:12px;display:grid}.babyDetailHeader,.categoryHeader{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:8px;justify-content:space-between;align-items:center;gap:18px;margin-bottom:14px;padding:18px;display:flex}.categoryHeader>div:first-child{flex:auto;min-width:0}.categoryProgress{border:1px solid var(--line);color:var(--navy);background:#fbfdfc;border-radius:8px;justify-items:start;gap:4px;min-width:170px;padding:14px;display:grid}.itemHeroGlyph{color:var(--teal);background:#eef8f6;border:1px solid #cde8e4;border-radius:8px;flex:0 0 92px;justify-content:center;align-items:center;width:92px;height:92px;display:inline-flex}.categoryProgress strong{font-size:1.32rem;line-height:1}.categoryProgress span{color:var(--muted);font-size:.85rem;font-weight:800}.babyDetailIdentity{align-items:center;gap:14px;min-width:0;display:flex}.babyDetailIdentity h1{margin-bottom:6px}.babyDetailProgress{border:1px solid var(--line);text-align:right;background:#fbfdfc;border-radius:8px;min-width:170px;padding:14px}.babyDetailProgress strong{color:var(--baby-color);margin-bottom:4px;font-size:1.4rem;line-height:1;display:block}.babyDetailProgress>span{color:var(--muted);margin-bottom:10px;font-size:.85rem;font-weight:800;display:block}.visualPanel,.summaryPanel,.babyCard,.babyItemList,.toolbar,.comparison{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:8px}.visualPanel{aspect-ratio:1823/863;height:auto;position:relative;overflow:hidden}.visualPanel img{object-fit:cover;object-position:center center}.summaryPanel{flex-direction:column;justify-content:center;min-height:0;padding:18px;display:flex}.summaryHeader{color:var(--teal);gap:8px;margin-bottom:12px;font-weight:850}.summaryPanel strong{margin-bottom:8px;font-size:1.12rem;line-height:1.2}.summaryMetricLink{color:inherit;text-decoration:none;display:inline-flex}.summaryMetricLink:hover{color:var(--teal)}.summaryPanel p{margin-bottom:0;line-height:1.38}.summaryPanel p,.babyCard p,.taskTitle p,.recordDate,.recordNote{color:var(--muted)}.miniList{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.miniList a{color:#0c5f58;background:#eef8f6;border:1px solid #d5ece8;border-radius:999px;padding:7px 10px;font-size:.85rem;font-weight:750;text-decoration:none}.miniList a:hover{background:#dff2ee;border-color:#b9ddd7}.feedbackTopBar{align-items:center;margin-bottom:10px}.feedbackTopBar h1{margin-bottom:0}.feedbackHeaderControls{padding-top:0}.feedbackComposer,.feedbackDetail,.feedbackReplies{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:8px;margin-bottom:14px;padding:18px}.feedbackForm{gap:14px;display:grid}.feedbackForm label{gap:7px;display:grid}.feedbackForm label span,.formFooter span{color:var(--muted);font-size:.86rem;font-weight:850}.feedbackForm input,.feedbackForm textarea{border:1px solid var(--line);color:var(--ink);background:#fbfdfc;border-radius:8px;width:100%;padding:12px 13px}.feedbackForm textarea{resize:vertical;min-height:130px}.compactFeedbackComposer{margin-bottom:10px;padding:14px;box-shadow:0 10px 28px #17202612}.compactFeedbackComposer .feedbackForm{gap:10px}.compactFeedbackComposer .feedbackForm textarea{min-height:92px}.feedbackPrivacyNote{border:1px solid var(--line);color:var(--muted);background:#f7faf9;border-radius:8px;align-items:center;gap:8px;margin-bottom:0;padding:10px 12px;font-size:.9rem;font-weight:800;display:flex}.feedbackPrivacyNote svg{color:var(--teal);flex:none}.formFooter{justify-content:space-between;align-items:center;gap:12px;display:flex}.formFooter span{overflow-wrap:anywhere;min-width:0}.feedbackSignIn{align-items:start;gap:10px;margin-bottom:0;display:grid}.feedbackList{gap:8px;display:grid}.feedbackFeedHeader{color:var(--muted);text-transform:uppercase;justify-content:space-between;align-items:center;margin:4px 2px 8px;font-size:.82rem;font-weight:900;display:flex}.feedbackCard{border:1px solid var(--line);border-left:5px solid var(--teal);color:inherit;background:#fff;border-radius:8px;gap:7px;padding:14px 14px 14px 16px;text-decoration:none;display:grid}.feedbackCard:hover{border-color:#bdd8d4;box-shadow:0 14px 34px #1720261a}.feedbackCardHeader,.feedbackDetailHeader,.replyHeader{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.feedbackCardHeader strong{overflow-wrap:anywhere;margin-bottom:4px;font-size:1.08rem;line-height:1.25;display:block}.feedbackTypeBadge,.replyTypeBadge{letter-spacing:0;text-transform:uppercase;border-radius:999px;min-height:22px;margin-bottom:7px;padding:5px 8px;font-size:.72rem;font-weight:900;line-height:1;display:inline-flex}.feedbackTypeBadge{color:#0c5f58;background:#eef8f6;border:1px solid #cde8e4}.replyTypeBadge{color:#6b4d00;background:#fff8df;border:1px solid #efd47a;margin-bottom:0}.feedbackMeta,.authorLine,.feedbackPreview,.replyHeader{color:var(--muted)}.feedbackMeta{align-items:center;gap:6px;margin:0;font-size:.88rem;font-weight:750;display:inline-flex}.authorLine{overflow-wrap:anywhere;margin:0;font-size:.88rem;font-weight:800}.feedbackPreview{-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;line-height:1.45;display:-webkit-box;overflow:hidden}.replyPill{color:#0c5f58;background:#eef8f6;border:1px solid #cde8e4;border-radius:999px;flex:none;align-items:center;gap:6px;min-height:32px;padding:0 10px;font-size:.86rem;font-weight:850;display:inline-flex}.feedbackDetailHeader{margin-bottom:14px}.feedbackPostDetail{border-left:5px solid var(--teal)}.feedbackDetailHeader h1{overflow-wrap:anywhere;max-width:820px;margin-bottom:8px}.feedbackBody{white-space:pre-wrap;margin-bottom:0;font-size:1rem}.feedbackReplies{gap:12px;display:grid;position:relative}.replySectionHeader{color:var(--muted);justify-content:space-between;align-items:center;font-size:.86rem;font-weight:850;display:flex}.replyCard{background:#fffdfa;border:1px solid #eadfbd;border-left:4px solid #d2a715;border-radius:8px;gap:8px;margin-left:18px;padding:14px;display:grid;position:relative}.replyCard:before{content:"";background:#d2a715;border-radius:50%;width:9px;height:9px;position:absolute;top:20px;left:-25px}.replyHeader{font-size:.86rem;font-weight:850}.replyHeader span{align-items:center;gap:6px;min-width:0;display:inline-flex}.replyCard p{white-space:pre-wrap;margin-bottom:0}.profileShell{max-width:860px}.profilePanel{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:8px;gap:18px;padding:20px;display:grid}.profileHeader{align-items:center;gap:14px;min-width:0;display:flex}.profileHeader h1{overflow-wrap:anywhere;margin-bottom:6px}.profileAvatar{color:var(--teal);background:#eef8f6;border:1px solid #cde8e4;border-radius:50%;flex:none;justify-content:center;align-items:center;width:54px;height:54px;display:inline-flex}.profileFacts{border:1px solid var(--line);border-radius:8px;margin:0;display:grid;overflow:hidden}.profileFacts>div{border-top:1px solid var(--line);grid-template-columns:140px minmax(0,1fr);gap:8px;padding:14px;display:grid}.profileFacts>div:first-child{border-top:0}.profileFacts dt{color:var(--muted);text-transform:uppercase;font-size:.82rem;font-weight:900}.profileFacts dd{overflow-wrap:anywhere;min-width:0;margin:0;font-weight:800}.rolePills{flex-wrap:wrap;gap:8px;display:flex}.rolePills .roleBadge{align-items:center;gap:5px;display:inline-flex}.mutedValue{color:var(--muted)}.profileAction{justify-self:start}.recipeShell{gap:14px;display:grid}.recipeHero,.recipeCard{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:8px}.recipeHero{padding:clamp(20px,4vw,42px)}.recipeHeroText{gap:10px;max-width:760px;display:grid}.recipeList{gap:14px;display:grid}.recipeCard{grid-template-columns:minmax(220px,280px) minmax(0,1fr);gap:18px;display:grid;overflow:hidden}.recipeMedia{aspect-ratio:1;background:#f7faf9;align-self:start;position:relative;overflow:hidden}.recipeMedia img{object-fit:contain}.recipeMediaFallback{color:var(--teal);justify-content:center;align-items:center;min-height:220px;display:flex}.recipeContent{gap:18px;padding:20px;display:grid}.recipeHeader{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:14px;display:grid}.recipeHeader h2{margin-bottom:6px;font-size:1.6rem;line-height:1.05}.recipeHeader p{color:var(--muted);margin-bottom:0}.recipeStats{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.recipeStats span{border:1px solid var(--line);color:var(--navy);background:#f7faf9;border-radius:999px;align-items:center;gap:7px;min-height:34px;padding:0 11px;font-size:.88rem;font-weight:850;display:inline-flex}.recipeStats svg{color:var(--teal);flex:none}.recipeDetails{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.recipeDetails h3{letter-spacing:.04em;text-transform:uppercase;margin-bottom:10px;font-size:.82rem}.recipeIngredientList,.recipeSteps{margin:0;padding-left:22px}.recipeIngredientList li,.recipeSteps li{margin-top:8px}.recipeNotes{border-top:1px solid var(--line);gap:8px;padding-top:14px;display:grid}.recipeNotes p{color:var(--muted);margin-bottom:0;font-weight:750}.recipeSteps{counter-reset:recipe-step;gap:10px;padding-left:0;list-style:none;display:grid}.recipeSteps li{border:1px solid var(--line);counter-increment:recipe-step;background:#fbfdfc;border-radius:8px;min-height:48px;margin-top:0;padding:12px 14px 12px 48px;position:relative}.recipeSteps li:before{color:var(--teal);content:counter(recipe-step);background:#eef8f6;border:1px solid #cde8e4;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;font-size:.82rem;font-weight:900;display:inline-flex;position:absolute;top:11px;left:12px}.babyStats{grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:10px;margin-bottom:12px;display:grid}.babyCard{grid-template-columns:minmax(170px,1fr) minmax(84px,.28fr) auto;align-items:center;gap:14px;padding:14px;display:grid}.babyProfileLink{color:inherit;border-radius:8px;grid-template-columns:52px minmax(0,1fr);align-items:center;gap:14px;min-width:0;padding:6px;text-decoration:none;display:grid}.babyProfileLink:hover{background:#f7faf9}.babyProfileText{gap:2px;min-width:0;display:grid}.avatar{background:var(--baby-accent);border:2px solid color-mix(in srgb, var(--baby-color) 26%, white);color:var(--baby-color);border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;display:flex}.babyName{color:var(--ink);overflow-wrap:anywhere;margin:0;font-size:1.12rem;font-weight:850;line-height:1.2;display:block}.babyBirthDate{color:var(--muted);margin:0;line-height:1.35;display:block}.babyAge{color:var(--baby-color);margin-top:2px;font-size:.88rem;font-weight:850;display:block}.progressBlock{text-align:right;min-width:0}.progressBlock strong{margin-bottom:6px;display:block}.progressTrack{background:#edf1f2;border-radius:999px;height:10px;overflow:hidden}.progressTrack span{background:var(--baby-color);height:100%;margin:0;display:block}.babyActions{justify-content:flex-end;gap:7px}.toolbar{justify-content:space-between;align-items:center;gap:18px;margin-bottom:14px;padding:14px;display:flex}.toolbarLabel{color:var(--navy);gap:8px;font-weight:850}.categoryTabs{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.categoryTabs button{border:1px solid var(--line);color:var(--muted);cursor:pointer;background:#f7faf9;border-radius:999px;min-height:36px;padding:0 14px}.categoryTabs button.active{background:var(--navy);border-color:var(--navy);color:#fff}.comparison{overflow-x:auto}.tableHeader,.taskRow{grid-template-columns:minmax(230px, .9fr) repeat(var(--baby-columns), minmax(230px, 1fr));min-width:max(100%, calc(230px + var(--baby-columns) * 244px));gap:14px;display:grid}.tableHeader{color:#53616b;text-transform:uppercase;background:#eef3f2;padding:14px 18px;font-size:.78rem;font-weight:900}.taskRow{border-top:1px solid var(--line);align-items:stretch;padding:16px 18px}.taskTitle{align-items:flex-start;gap:12px;min-width:0;padding-top:4px;display:flex}.babyItemList{display:grid}.categoryComparison{gap:12px;display:grid}.categoryItem{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:8px;overflow:hidden}.categoryItemTitle{background:#eef3f2;align-items:center;gap:12px;padding:14px 16px;display:flex}.categoryItemTitle h2{margin-bottom:4px;font-size:1rem;line-height:1.25}.categoryItemTitle p{color:var(--muted);margin-bottom:0}.categoryRecordGrid{grid-template-columns:repeat(var(--baby-columns), minmax(220px, 1fr));gap:12px;padding:14px;display:grid}.babyItemRow{border-top:1px solid var(--line);grid-template-columns:64px minmax(0,1fr) minmax(170px,auto) auto;align-items:center;gap:14px;padding:14px 16px;display:grid}.babyItemRow:has(.babyRecordLink){grid-template-columns:minmax(180px,1fr) minmax(160px,auto) minmax(0,1fr) auto}.babyItemRow:first-child{border-top:0}.babyItemMain{min-width:0}.babyItemMain h2{margin-bottom:4px;font-size:1rem;line-height:1.25}.babyItemMain p{color:var(--muted);margin-bottom:6px}.babyItemMain .recordNote{margin-bottom:0}.babyItemMeta{place-items:flex-end end;gap:8px;display:grid}.babyRecordLink{color:var(--navy);border-radius:8px;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:10px;min-width:0;padding:4px;font-weight:850;text-decoration:none;display:inline-grid}.babyRecordLink .avatar{width:44px;height:44px}.babyRecordLink:hover{color:var(--teal);background:#f7faf9}.taskTitleText{min-width:0}.itemTitleLink{color:inherit;text-decoration:none;display:inline-flex}.itemTitleLink:hover{color:var(--teal)}.taskRowActions{flex:none;gap:7px;margin-left:auto;display:inline-flex}.taskVisual{color:var(--teal);background:#eef8f6;border:1px solid #cde8e4;border-radius:8px;flex:0 0 64px;justify-content:center;align-items:center;width:64px;height:48px;display:inline-flex}.customIconGlyph{text-transform:uppercase;justify-content:center;align-items:center;min-width:1.3em;font-size:.78rem;font-weight:900;line-height:1;display:inline-flex}.taskVisual .customIconGlyph{font-size:.9rem}.itemHeroGlyph .customIconGlyph{font-size:1.55rem}.taskTitle h3{margin-bottom:5px;font-size:1rem;line-height:1.25}.taskTitle p{margin-bottom:0;line-height:1.35}.recordCell{border:1px solid var(--line);background:#fbfdfc;border-radius:8px;gap:10px;min-width:0;padding:12px;display:grid}.recordBabyName{color:var(--navy);text-transform:uppercase;font-size:.78rem;font-weight:900;display:none}.recordTopLine{justify-content:space-between;gap:10px}.statusBadge{border:1px solid var(--line);white-space:nowrap;border-radius:999px;align-items:center;gap:5px;min-height:28px;padding:0 10px;font-size:.82rem;font-weight:800;line-height:1;display:inline-flex}.statusBadge.done{color:#166534;background:#eaf8f1;border-color:#b7e4cc}.statusBadge.in-progress{color:#7a5800;background:#fff8df;border-color:#efd47a}.statusBadge.not-started{color:#9a3412;background:#fff3ed;border-color:#f0c2ae}.statusBadge.not-applicable{color:#5b6470;background:#f0f3f5}.recordDate{align-items:center;gap:7px;margin-bottom:0;font-size:.88rem;display:flex}.recordDate svg{flex:none}.recordNote{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:0;font-size:.9rem;line-height:1.4;display:-webkit-box;overflow:hidden}.modalOverlay{z-index:50;background:#1720266b;justify-content:center;align-items:center;padding:18px;display:flex;position:fixed;inset:0}.modalPanel{border:1px solid var(--line);background:#fff;border-radius:8px;width:100%;max-width:520px;max-height:min(720px,100vh - 36px);overflow:auto;box-shadow:0 30px 80px #1720263d}.modalHeader{border-bottom:1px solid var(--line);z-index:1;background:#fff;justify-content:space-between;align-items:center;padding:16px 18px;display:flex;position:sticky;top:0}.modalHeader h2{margin-bottom:0;font-size:1.15rem}.modalBody{gap:14px;padding:18px;display:grid}.confirmBlock{background:#fff8f6;border:1px solid #f3d1cc;border-radius:8px;align-items:flex-start;gap:12px;padding:14px;display:flex}.shareIntro{border:1px solid var(--line);background:#f7faf9;border-radius:8px;padding:12px}.shareIntro strong{color:var(--ink);margin-bottom:4px;display:block}.shareIntro p{color:var(--muted);margin-bottom:0}.shareInvite{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;display:grid}.memberList{border:1px solid var(--line);border-radius:8px;display:grid;overflow:hidden}.memberRow{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto auto auto;align-items:center;gap:10px;padding:12px;display:grid}.memberRow:first-child{border-top:0}.memberRow strong,.memberRow span{display:block}.memberRow span{color:var(--muted);overflow-wrap:anywhere}.roleBadge{border:1px solid var(--line);color:var(--muted);text-transform:capitalize;border-radius:999px;padding:5px 9px;font-size:.78rem;font-weight:850}.roleBadge.owner{color:#0c5f58;background:#eef8f6;border-color:#cde8e4}.memberLastUsed{color:var(--muted);white-space:nowrap;align-items:center;gap:6px;font-size:.84rem;font-weight:800;display:inline-flex}.emptyMembers{color:var(--muted);margin:0;padding:12px}.confirmIcon{color:#b42318;background:#fee4df;border-radius:50%;flex:none;justify-content:center;align-items:center;width:42px;height:42px;display:inline-flex}.confirmText{color:var(--ink);margin-bottom:0;font-size:1.02rem;line-height:1.35}.confirmText strong{color:var(--ink)}.confirmDetail{color:var(--muted);margin:6px 0 0;line-height:1.45}.formField{gap:6px;display:grid}.formField>span{color:#53616b;text-transform:uppercase;font-size:.78rem;font-weight:900}.formField input,.formField select,.formField textarea{border:1px solid var(--line);color:var(--ink);background:#fbfdfc;border-radius:8px;outline:none;width:100%;min-height:42px;padding:9px 10px}.formField textarea{resize:vertical;min-height:120px;line-height:1.4}.formField input:focus,.formField select:focus,.formField textarea:focus{border-color:var(--teal);box-shadow:0 0 0 3px #0f766e1f}.iconPickerGlyph{border:1px solid var(--line);color:currentColor;background:#fff;border-radius:8px;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex}.iconControl{grid-template-columns:44px minmax(0,1fr) minmax(0,1fr);align-items:end;gap:10px;display:grid}.iconPreview{width:44px;height:44px}.iconChoiceField{gap:6px;display:grid}.iconChoiceField>span{color:#53616b;text-transform:uppercase;font-size:.78rem;font-weight:900}.colorPicker{flex-wrap:wrap;gap:10px;display:flex}.colorPicker button{background:var(--swatch-accent);cursor:pointer;border:2px solid #0000;border-radius:50%;width:36px;height:36px;position:relative}.colorPicker button:after{background:var(--swatch-color);content:"";border-radius:50%;width:16px;height:16px;position:absolute;inset:8px}.colorPicker button.selected{border-color:var(--navy)}.modalActions{border-top:1px solid var(--line);padding:24px 36px max(24px, env(safe-area-inset-bottom));background:#fff;justify-content:flex-end;margin:4px -18px -18px;position:sticky;bottom:0}.toast{bottom:max(18px, env(safe-area-inset-bottom));color:#fff;z-index:70;background:#172026;border:1px solid #ffffff1f;border-radius:8px;align-items:center;gap:10px;width:max-content;max-width:min(520px,100vw - 28px);padding:12px 12px 12px 14px;display:flex;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 18px 50px #17202638}.toast>span:not(.toastIcon){font-weight:750}.toastIcon{color:#166534;background:#dcfce7;border-radius:50%;flex:none;justify-content:center;align-items:center;width:26px;height:26px;display:inline-flex}.toastDismiss{color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #ffffff1f;border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.toastDismiss:hover{background:#ffffff24}@media (max-width:980px){.appShell{padding:16px}.topBar,.toolbar{flex-direction:column;align-items:flex-start}.headerControls{flex-direction:column;align-items:stretch;width:100%;padding-top:0}.actionCluster{justify-content:space-between;width:100%}.heroGrid,.recipeCard,.recipeDetails,.recipeHeader,.hubSections{grid-template-columns:1fr}.recipeMedia{aspect-ratio:16/9;min-height:0}.recipeStats{justify-content:flex-start}.groupSwitcher,.groupSelect{flex-direction:column;align-items:stretch}.groupSelect select{width:100%;min-width:0}.groupMeta{justify-content:flex-start}.babyDetailHeader,.categoryHeader{flex-direction:column;align-items:stretch}.babyDetailProgress{text-align:left}.categoryRecordGrid{grid-template-columns:1fr 1fr}.babyItemRow{grid-template-columns:64px minmax(0,1fr) auto}.babyItemRow:has(.babyRecordLink){grid-template-columns:minmax(0,1fr) auto}.babyItemMeta{grid-column:2/-1;place-items:flex-start start}.visualPanel{aspect-ratio:1823/863;height:auto}.comparison{overflow:visible}.tableHeader{display:none}.taskRow{grid-template-columns:1fr 1fr;min-width:0;padding:18px;display:grid}.taskTitle{grid-column:1/-1}.recordBabyName{display:block}}@media (max-width:620px){.appShell{padding:max(14px, env(safe-area-inset-top)) 12px max(18px, env(safe-area-inset-bottom))}h1{font-size:2rem;line-height:1}.subtitle{font-size:.96rem;line-height:1.42}.hubSections{grid-template-columns:1fr}.hubSection{gap:12px;min-height:88px;padding:16px}.recipeContent{padding:16px}.primaryButton,.secondaryButton,.accountButton{width:100%}.compactButton{flex:1;justify-content:center}.heroGrid{gap:12px}.visualPanel{aspect-ratio:1823/863;height:auto}.summaryPanel{min-height:0;padding:16px}.babyCard{grid-template-columns:minmax(0,1fr);gap:12px;padding:14px}.profileFacts>div{grid-template-columns:1fr}.babyProfileLink{grid-template-columns:48px minmax(0,1fr);padding:4px}.babyDetailIdentity{align-items:flex-start}.babyItemRow{grid-template-columns:56px minmax(0,1fr);padding:14px}.babyItemRow:has(.babyRecordLink){grid-template-columns:1fr}.categoryRecordGrid{grid-template-columns:1fr}.babyItemRow>.textButton{grid-column:1/-1;justify-content:center}.babyItemMeta{grid-column:1/-1}.avatar{width:48px;height:48px}.taskVisual{flex-basis:56px;width:56px;height:44px}.progressBlock{text-align:left}.babyActions{justify-content:flex-end}.categoryTabs{scrollbar-width:none;flex-wrap:nowrap;justify-content:flex-start;width:calc(100% + 28px);margin:0 -14px;padding:0 14px 2px;overflow-x:auto}.categoryTabs::-webkit-scrollbar{display:none}.categoryTabs button{flex:none;min-height:44px}.taskRow{grid-template-columns:repeat(var(--baby-columns), minmax(0, 1fr));gap:12px;padding:16px}.taskTitle{grid-column:1/-1}.recordCell{gap:8px;padding:10px}.recordTopLine{flex-wrap:wrap;align-items:center;gap:8px}.recordTopLine .textButton{min-height:32px;padding:0 8px}.statusBadge{min-height:26px;padding:0 8px}.recordDate,.recordNote{font-size:.82rem}.replyCard{margin-left:10px}.replyCard:before{left:-17px}.modalOverlay{align-items:flex-end;padding:0}.modalPanel{border-radius:8px 8px 0 0;max-height:92dvh}.modalBody{padding:16px}.modalActions{padding:16px 16px max(24px, env(safe-area-inset-bottom));flex-direction:column-reverse;margin:4px -16px -16px}.confirmBlock{padding:12px}.shareInvite,.memberRow{grid-template-columns:1fr}.memberLastUsed{white-space:normal}.toast{bottom:max(12px, env(safe-area-inset-bottom));grid-template-columns:auto minmax(0,1fr) auto;align-items:center;width:calc(100vw - 24px);display:grid}.formField input,.formField select,.formField textarea{min-height:46px;font-size:16px}.iconControl{grid-template-columns:44px minmax(0,1fr)}.iconChoiceField:last-child{grid-column:2/-1}}
