:root{font-family:Avenir Next,PingFang SC,Hiragino Sans GB,sans-serif;color:#292b28;background:#f7f2ea;font-synthesis:none;text-rendering:optimizeLegibility;--ink: #292b28;--muted: #777872;--soft-muted: #a3a198;--paper: #f7f2ea;--white: #fffdf9;--line: rgba(49, 48, 42, .12);--line-strong: rgba(49, 48, 42, .2);--coral: #eb806f;--coral-deep: #b94f4b;--sage: #aebe9e;--sun: #f4c970;--sky: #a9c9d1;--plum: #b89caf;--shadow: 0 18px 48px rgba(82, 69, 52, .08);--display: "Songti SC", "STSong", "Iowan Old Style", serif;--mono: "SFMono-Regular", "Menlo", monospace}*{box-sizing:border-box}html{min-width:320px;background:var(--paper)}body{margin:0;min-width:320px;min-height:100vh;background:var(--paper)}button,input,textarea{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid rgba(235,128,111,.36);outline-offset:2px}button:disabled{cursor:not-allowed;opacity:.56}em{color:var(--coral-deep);font-style:normal}h1,h2,h3,p{margin:0}.eyebrow{color:var(--coral-deep);font-family:var(--mono);font-size:10px;font-weight:500;letter-spacing:.11em;line-height:1.5;text-transform:uppercase}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.mobile-only{display:none!important}.loading-screen{display:grid;place-items:center;align-content:center;gap:14px;min-height:100vh;color:var(--muted);font-size:13px}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes appear{0%{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}@keyframes breathe{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}.brand-mark{position:relative;display:grid;place-items:center;width:37px;height:37px;flex:0 0 auto;border-radius:50%;background:#292b28;color:#fffdf9;box-shadow:0 4px #d9a169}.brand-mark-ring{position:absolute;inset:5px;border:1px solid rgba(255,253,249,.54);border-radius:50%}.brand-mark-face{position:relative;margin-top:-1px;font-family:var(--display);font-size:17px;font-weight:700}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:43px;padding:0 17px;border:1px solid transparent;border-radius:13px;cursor:pointer;font-size:13px;font-weight:600;transition:transform .2s ease,background .2s ease,box-shadow .2s ease,border-color .2s ease}.button:hover:not(:disabled){transform:translateY(-2px)}.button-primary{background:var(--ink);color:var(--white);box-shadow:0 6px #292b281c}.button-primary:hover:not(:disabled){background:#454740;box-shadow:0 9px 16px #292b2826}.button-secondary{border-color:var(--line-strong);background:var(--white);color:var(--ink)}.button-secondary:hover:not(:disabled){border-color:var(--coral);background:#fff8f3}.button-small{min-height:36px;padding:0 12px;border-radius:10px;font-size:12px}.button-wide{width:100%}.text-button{display:inline-flex;align-items:center;gap:7px;padding:0;border:0;background:transparent;color:var(--ink);cursor:pointer;font-size:13px;font-weight:700}.text-button:hover{color:var(--coral-deep)}.text-button.centered{justify-content:center;width:100%;margin-top:14px;color:var(--muted);font-size:12px}.icon-button{display:inline-grid;place-items:center;width:37px;height:37px;padding:0;border:1px solid var(--line);border-radius:12px;background:var(--white);cursor:pointer;transition:background .2s,border .2s}.icon-button:hover{border-color:var(--line-strong);background:#fff8f3}.icon-button.quiet{border-color:transparent;background:transparent;color:var(--soft-muted)}.app-shell{display:flex;min-height:100vh;background:radial-gradient(circle at 86% 4%,rgba(244,201,112,.16),transparent 25rem),var(--paper)}.desktop-sidebar{position:sticky;top:0;display:flex;flex:0 0 245px;flex-direction:column;height:100vh;padding:29px 18px 20px;border-right:1px solid var(--line);background:#f7f2eac2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.sidebar-brand{display:flex;align-items:center;gap:11px;padding:0 11px}.sidebar-brand strong{display:block;font-family:var(--display);font-size:16px;letter-spacing:.03em}.sidebar-brand span{display:block;margin-top:2px;color:var(--soft-muted);font-size:10px;letter-spacing:.04em}.sidebar-family-card{display:flex;align-items:center;gap:11px;margin:41px 4px 30px;padding:12px;border:1px solid rgba(200,177,148,.4);border-radius:15px;background:#f1e6d7}.sidebar-family-illustration{display:grid;place-items:center;width:39px;height:39px;border-radius:12px;background:#f8d99a;color:#8d6544}.sidebar-family-card strong{display:block;font-family:var(--display);font-size:15px}.sidebar-family-card span{display:block;max-width:118px;margin-top:3px;overflow:hidden;color:#9b8066;font-size:10px;line-height:1.4;text-overflow:ellipsis;white-space:nowrap}.primary-nav{display:grid;gap:7px}.primary-nav button{display:flex;align-items:center;gap:12px;width:100%;min-height:48px;padding:0 13px;border:0;border-radius:13px;background:transparent;color:var(--muted);cursor:pointer;text-align:left;transition:color .2s,background .2s}.primary-nav button span{flex:1;font-size:13px;font-weight:600}.primary-nav button:hover{background:#fffdf9b3;color:var(--ink)}.primary-nav button.active{background:var(--white);color:var(--ink);box-shadow:0 5px 18px #4c3f310f}.primary-nav button.active svg:last-child{color:var(--coral)}.sidebar-bottom{display:grid;gap:16px;margin-top:auto}.sidebar-lock{display:flex;align-items:flex-start;gap:9px;padding:14px 12px;border-top:1px solid var(--line);color:#78816f}.sidebar-lock strong,.sidebar-lock span{display:block}.sidebar-lock strong{font-size:11px;font-weight:700}.sidebar-lock span{margin-top:3px;font-size:10px}.sidebar-account{display:flex;align-items:center;gap:9px;padding:5px 7px;border:0;border-radius:10px;background:transparent;cursor:pointer;text-align:left}.sidebar-account:hover{background:#fffdf9bf}.sidebar-account span{flex:1;overflow:hidden;font-size:12px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.sidebar-account svg{color:var(--soft-muted)}.main-column{min-width:0;flex:1}.topbar{display:flex;align-items:center;justify-content:space-between;max-width:1110px;height:82px;margin:0 auto;padding:0 46px}.mobile-brand{display:none;align-items:center;gap:9px;font-family:var(--display);font-size:15px;font-weight:700}.topbar-actions{display:flex;align-items:center;gap:11px;margin-left:auto}.privacy-badge{display:inline-flex;align-items:center;gap:6px;padding:7px 11px;border:1px solid rgba(135,150,123,.26);border-radius:99px;background:#e8efe1b8;color:#71836c;font-size:11px}.mobile-account{display:none;padding:0;border:0;background:transparent}.page-content{max-width:1110px;margin:0 auto;padding:43px 46px 86px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:29px;animation:appear .45s ease both}.section-heading h1{margin-top:9px;color:var(--ink);font-family:var(--display);font-size:clamp(31px,3.4vw,46px);font-weight:600;letter-spacing:-.07em;line-height:1.2}.section-heading h1 em{display:inline-block}.section-description{max-width:440px;margin-top:12px;color:var(--muted);font-size:13px;line-height:1.7}.welcome-banner{position:relative;display:grid;grid-template-columns:1fr .8fr;min-height:245px;overflow:hidden;margin-bottom:31px;border:1px solid #dfc9ae;border-radius:20px;background:#f1ddc4;box-shadow:var(--shadow);animation:appear .5s .08s ease both}.welcome-banner-copy{position:relative;z-index:1;padding:31px 33px}.welcome-kicker{display:inline-flex;align-items:center;gap:6px;color:#9b6b4f;font-family:var(--mono);font-size:9px;font-weight:500;letter-spacing:.1em}.welcome-banner h2,.timeline-intro h2,.members-hero h2{margin-top:15px;color:#463b32;font-family:var(--display);font-size:27px;font-weight:600;letter-spacing:-.06em;line-height:1.35}.welcome-banner h2 em,.timeline-intro h2 em,.members-hero h2 em{color:#ae5a4f}.welcome-banner-copy p{max-width:340px;margin-top:12px;color:#8e7763;font-size:12px;line-height:1.7}.welcome-banner-copy .text-button{margin-top:25px;color:#634d3f}.welcome-banner-art{position:relative;min-height:245px;overflow:hidden}.art-paper{position:absolute;z-index:2;top:35px;right:75px;display:flex;flex-direction:column;justify-content:space-between;width:145px;height:175px;padding:16px 16px 13px;transform:rotate(8deg);border:1px solid rgba(90,68,45,.14);background:#fff9ee;box-shadow:9px 11px #c38f5f40}.art-paper span{color:#d17f67;font-family:var(--display);font-size:14px;font-weight:700}.art-paper strong{color:#46514b;font-family:var(--display);font-size:23px;font-weight:600;line-height:1.18}.art-paper i{align-self:flex-end;color:#e8b65c;font-size:22px;font-style:normal}.art-circle{position:absolute;border-radius:50%}.art-circle-one{top:-82px;right:4px;width:250px;height:250px;border:35px solid rgba(248,203,118,.75)}.art-circle-two{right:19px;bottom:-87px;width:180px;height:180px;background:#aac1a7b3}.art-line{position:absolute;right:25px;bottom:29px;transform:rotate(-13deg);color:#6f523b85;font-family:var(--display);font-size:12px;font-style:italic}.home-layout{display:grid;grid-template-columns:minmax(0,1fr) 254px;align-items:start;gap:31px}.media-library{min-width:0}.media-library-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:21px}.media-library-note{display:inline-flex;align-items:center;gap:6px;color:var(--soft-muted);font-size:10px}.media-library-groups{display:grid;gap:31px}.media-library-group{display:grid;gap:13px}.media-library-date{display:flex;align-items:center;gap:8px}.media-library-date svg{color:#b58d70}.media-library-date h2{color:var(--ink);font-family:var(--display);font-size:18px;font-weight:600;letter-spacing:-.04em}.media-library-date span{color:var(--soft-muted);font-family:var(--mono);font-size:9px}.media-library-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.library-media-card{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:14px;background:#fffdf9d6;box-shadow:0 7px 25px #4a3d2e0b;animation:appear .45s ease both}.library-media-visual{position:relative;aspect-ratio:1 / .84;overflow:hidden;background:#e6e2d8}.library-media-content{display:block;width:100%;height:100%;border:0;background:#e6e2d8;object-fit:cover}.library-media-type{position:absolute;top:9px;left:9px;display:inline-flex;align-items:center;gap:5px;padding:5px 7px;border:1px solid rgba(255,255,255,.55);border-radius:7px;background:#292b28ad;color:#fff;font-size:9px}.library-media-unavailable{display:grid;place-items:center;align-content:center;gap:7px;height:100%;color:#a5a197;font-size:10px}.library-media-unavailable strong{color:#777871;font-family:var(--display);font-size:14px;font-weight:600}.library-media-info{padding:12px 13px 13px}.library-media-author{display:flex;align-items:center;gap:7px;min-width:0}.library-media-author>div{min-width:0}.library-media-author strong,.library-media-author span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.library-media-author strong{color:#555650;font-size:11px}.library-media-author span{margin-top:2px;color:var(--soft-muted);font-size:9px}.library-media-copy{display:-webkit-box;min-height:34px;margin-top:10px;overflow:hidden;color:#555650;font-family:var(--display);font-size:12px;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:2}.library-media-copy.muted{color:var(--soft-muted)}.library-media-download{display:inline-flex;align-items:center;gap:5px;min-height:40px;margin-top:11px;padding:0 9px;border:1px solid #e0d5c6;border-radius:8px;background:#fffaf2;color:#9b6d57;font-size:10px;text-decoration:none}.library-media-download:hover{border-color:#d5a995;background:#fff2e9}.media-library-more{display:flex;width:min(100%,240px);margin:25px auto 0}.media-library-end{margin-top:24px;color:var(--soft-muted);font-family:var(--mono);font-size:9px;text-align:center}.media-library-inline-error{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:20px;padding:11px 13px;border:1px solid #f0c7bd;border-radius:9px;background:#fff0eb;color:#ad594c;font-size:11px}.media-library-inline-error .text-button{color:#ad594c;font-size:11px}.media-library-state{display:grid;place-items:center;align-content:center;min-height:270px;padding:30px;border:1px dashed #d4c9b8;border-radius:17px;background:#fffdf980;color:#ad9e8b;text-align:center}.media-library-state svg{margin-bottom:12px;color:#d4ab70}.media-library-state h2{color:var(--ink);font-family:var(--display);font-size:22px;letter-spacing:-.05em}.media-library-state p{max-width:300px;margin-top:9px;color:var(--muted);font-size:12px;line-height:1.7}.media-library-state .button{margin-top:19px}.media-library-error svg{color:#c17b6a}.media-library-skeleton{min-height:230px}.media-library-skeleton>div{min-height:230px;border-radius:14px;background:linear-gradient(90deg,#eeeae2,#f7f4ee,#eeeae2);background-size:200% 100%;animation:shimmer 1.5s infinite}.feed-column{min-width:0}.feed-toolbar,.timeline-section-head,.members-section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}.toolbar-title{font-family:var(--display);font-size:20px;font-weight:600;letter-spacing:-.04em}.toolbar-count{margin-left:11px;color:var(--soft-muted);font-family:var(--mono);font-size:10px}.post-card{position:relative;margin-bottom:18px;padding:23px 24px 17px;border:1px solid var(--line);border-radius:17px;background:#fffdf9d6;box-shadow:0 7px 25px #4a3d2e0b;animation:appear .45s ease both}.post-card:nth-of-type(2){animation-delay:.06s}.post-card:nth-of-type(3){animation-delay:.12s}.post-header{display:flex;align-items:center;justify-content:space-between}.post-menu{position:relative}.post-menu-popover{position:absolute;z-index:5;top:40px;right:0;min-width:145px;padding:5px;border:1px solid var(--line);border-radius:11px;background:var(--white);box-shadow:0 12px 30px #352c2226}.post-menu-popover>button{display:flex;align-items:center;gap:7px;width:100%;padding:9px 10px;border:0;border-radius:7px;background:transparent;color:#a65d52;cursor:pointer;font-size:11px;text-align:left}.post-menu-popover>button:hover{background:#fff0eb}.post-delete-confirm{min-width:205px;padding:10px}.post-delete-confirm>span{display:block;padding:3px 5px 8px;color:var(--muted);font-size:10px}.post-delete-confirm>div{display:flex;justify-content:flex-end;gap:6px}.post-delete-confirm>div button{padding:6px 8px;border:0;border-radius:7px;background:#f3f0eb;color:var(--muted);cursor:pointer;font-size:10px}.post-delete-confirm>div .danger-button,.danger-button{background:#fff0eb;color:#ad594c}.post-author{display:flex;align-items:center;gap:10px}.post-author strong{display:block;font-size:13px;font-weight:700}.post-author span{display:block;margin-top:3px;color:var(--soft-muted);font-size:10px}.avatar{display:inline-grid;place-items:center;flex:0 0 auto;border-radius:50%;font-family:var(--display);font-weight:700}.avatar-small{width:26px;height:26px;font-size:10px}.avatar-medium{width:38px;height:38px;font-size:13px}.avatar-large{width:55px;height:55px;font-size:18px}.avatar-coral{background:#f4c4b8;color:#a0524a}.avatar-sage{background:#c9d5bd;color:#5e765c}.avatar-sky{background:#c0dce1;color:#4c7780}.avatar-sun{background:#f6d99b;color:#96703c}.avatar-plum{background:#d8bdcf;color:#7b5d75}.avatar-ocean{background:#b9ced0;color:#416c70}.post-meta{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin-top:19px}.post-meta>span{display:inline-flex;align-items:center;gap:4px;padding:5px 8px;border-radius:6px;font-size:10px}.post-date{background:#f0eee8;color:#777871}.post-age{background:#edf0e7;color:#718069}.post-mood{background:#fff1e7;color:#ad745b}.post-copy{margin:17px 1px 2px;color:#4a4b45;font-family:var(--display);font-size:15px;line-height:1.9;white-space:pre-wrap;overflow-wrap:anywhere}.memory-art{position:relative;min-height:178px;overflow:hidden;margin-top:16px;border-radius:12px}.memory-art.mood-cozy{background:#dce3d4}.memory-art.mood-sunny{background:#f5d899}.memory-art.mood-fun{background:#c6dfe1}.memory-art.mood-milestone{background:#ead0c8}.memory-art.mood-welcome{background:#e9dccb}.memory-art-sun{position:absolute;top:-43px;right:15%;width:140px;height:140px;border-radius:50%;background:#fff4cab3}.memory-art-copy{position:absolute;left:24px;bottom:20px;color:#303f34ba}.memory-art-copy span{display:block;font-family:var(--mono);font-size:9px;letter-spacing:.08em}.memory-art-copy strong{display:block;margin-top:5px;font-family:var(--display);font-size:25px;font-weight:600;line-height:1.08}.memory-art-sparkle{position:absolute;top:39px;left:29%;color:#ffffffbf;font-size:31px}.memory-art-curve{position:absolute;right:-22px;bottom:-64px;width:180px;height:180px;border:23px solid rgba(255,255,255,.34);border-radius:50%}.media-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;overflow:hidden;margin-top:16px;border-radius:12px;background:#ece9e0}.media-grid.media-count-1{grid-template-columns:minmax(0,1fr)}.media-grid.media-count-3 .media-frame:first-child{grid-row:span 2}.media-grid.media-count-4{grid-template-columns:repeat(2,minmax(0,1fr))}.post-media{display:block;width:100%;min-height:178px;max-height:390px;border:0;background:#e6e2d8;object-fit:cover}.media-frame{position:relative;min-width:0;overflow:hidden;background:#e6e2d8}.media-no-preview{display:grid;place-items:center;align-content:center;gap:7px;min-height:178px;padding:24px;color:#9c9b91;text-align:center}.media-no-preview svg{color:#b4a58f}.media-no-preview strong{color:#777871;font-family:var(--display);font-size:14px;font-weight:600}.media-no-preview span{font-size:10px}.media-download{position:absolute;right:8px;bottom:8px;display:inline-flex;align-items:center;gap:4px;padding:6px 8px;border:1px solid rgba(255,255,255,.55);border-radius:7px;background:#292b28b3;color:#fff;font-size:9px;text-decoration:none;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.media-download:hover{background:#292b28e6}.media-count-1 .post-media{max-height:460px}.post-actions{display:flex;align-items:center;gap:12px;margin-top:13px;padding-bottom:13px}.post-action{display:inline-flex;align-items:center;gap:6px;padding:4px 0;border:0;background:transparent;color:var(--muted);cursor:pointer;font-size:11px}.post-action:hover,.post-action.liked{color:var(--coral-deep)}.post-action span{color:var(--soft-muted)}.post-action.passive{cursor:default}.action-divider{width:1px;height:14px;background:var(--line)}.comments-list{display:grid;gap:10px;padding:12px 0 10px;border-top:1px solid var(--line)}.comment-row{display:flex;align-items:flex-start;gap:8px}.comment-row p{min-width:0;flex:1;font-size:11px;line-height:1.55}.comment-row p strong{margin-right:6px;color:#65665f;font-weight:700}.comment-row p span{color:#555650;overflow-wrap:anywhere}.comment-row time{flex:0 0 auto;color:var(--soft-muted);font-size:9px}.comment-form{display:flex;align-items:center;gap:8px;padding-top:11px;border-top:1px solid var(--line)}.comment-form input{min-width:0;flex:1;border:0;outline:0;background:transparent;color:var(--ink);font-size:11px}.comment-form input::placeholder{color:#afa99f}.comment-form button{display:grid;place-items:center;width:29px;height:29px;padding:0;border:0;border-radius:9px;background:#f1e5d9;color:#a86c56;cursor:pointer}.comment-form button:hover:not(:disabled){background:#f5d5c9}.home-rail{display:grid;gap:14px}.rail-card{border:1px solid var(--line);border-radius:16px;background:#fffdf9ad}.profile-rail-card{padding:19px;background:#edf1e8;border-color:#87967b33}.rail-card-heading{display:flex;align-items:center;justify-content:space-between;color:#75836e;font-size:11px}.rail-card-heading svg{color:#93a68b}.rail-age{margin-top:22px;color:#5f745c;font-family:var(--display);font-size:24px;font-weight:600;letter-spacing:-.06em}.profile-rail-card p{margin-top:4px;color:#9aa396;font-size:10px}.rail-divider{height:1px;margin:20px 0 14px;background:#76896b2e}.rail-stat-row{display:flex;gap:25px}.rail-stat-row strong,.rail-stat-row span{display:block}.rail-stat-row strong{color:#5d715a;font-family:var(--display);font-size:20px}.rail-stat-row span{margin-top:2px;color:#93a08c;font-size:10px}.note-rail-card{position:relative;padding:21px 19px 20px;background:#f4e6cf;border-color:#e4cba8}.note-pin{position:absolute;top:-7px;right:20px;color:#d69c64;font-size:20px}.note-rail-card p:not(.eyebrow){margin-top:13px;color:#755e4e;font-family:var(--display);font-size:14px;line-height:1.75}.note-rail-card span{display:block;margin-top:12px;color:#ae9279;font-family:var(--mono);font-size:9px}.privacy-rail-card{display:flex;align-items:flex-start;gap:9px;padding:15px 17px;color:#7f8c77}.privacy-rail-card strong{display:block;font-size:11px}.privacy-rail-card p{margin-top:4px;color:#a3a79e;font-size:10px;line-height:1.5}.feed-skeleton{padding:24px;border:1px solid var(--line);border-radius:17px;background:var(--white)}.skeleton-line,.skeleton-art{border-radius:7px;background:linear-gradient(90deg,#eeeae2,#f7f4ee,#eeeae2);background-size:200% 100%;animation:shimmer 1.5s infinite}.skeleton-line{height:12px;margin-bottom:10px}.skeleton-short{width:38%}.skeleton-art{height:180px;margin-top:25px}.feed-load-more{display:flex;width:min(100%,240px);margin:25px auto 0}.feed-end{margin-top:24px;color:var(--soft-muted);font-family:var(--mono);font-size:9px;text-align:center}.feed-inline-error{display:flex;align-items:center;justify-content:center;gap:12px;margin:20px 0 0;padding:11px 13px;border:1px solid #f0c7bd;border-radius:9px;background:#fff0eb;color:#ad594c;font-size:11px}.feed-inline-error .text-button{color:#ad594c;font-size:11px}.feed-load-error{display:grid;place-items:center;align-content:center;min-height:270px;padding:30px;border:1px dashed #d4c9b8;border-radius:17px;background:#fffdf980;color:#ad9e8b;text-align:center}.feed-load-error svg{margin-bottom:12px;color:#c17b6a}.feed-load-error h2{color:var(--ink);font-family:var(--display);font-size:22px;letter-spacing:-.05em}.feed-load-error p{max-width:300px;margin-top:9px;color:var(--muted);font-size:12px;line-height:1.7}.feed-load-error .button{margin-top:19px}@keyframes shimmer{to{background-position:-200% 0}}.empty-feed{display:grid;place-items:center;padding:60px 25px;border:1px dashed #d4c9b8;border-radius:17px;background:#fffdf980;text-align:center}.empty-sun{display:grid;place-items:center;width:58px;height:58px;margin-bottom:18px;border-radius:50%;background:#f5dda5;color:#b7864f;animation:breathe 3s ease-in-out infinite}.empty-feed h2{font-family:var(--display);font-size:22px;letter-spacing:-.05em}.empty-feed p{max-width:290px;margin:10px 0 21px;color:var(--muted);font-size:12px;line-height:1.7}.timeline-intro{display:grid;grid-template-columns:1fr 1fr;min-height:235px;margin-bottom:35px;overflow:hidden;border:1px solid #d2daca;border-radius:19px;background:#e7ede0;animation:appear .5s .08s ease both}.timeline-intro-copy{padding:32px 34px}.timeline-intro h2{color:#40503f}.timeline-intro h2 em{color:#718d6c}.timeline-intro-copy p{max-width:380px;margin-top:13px;color:#84917e;font-size:12px;line-height:1.75}.timeline-stats{display:grid;grid-template-columns:repeat(3,1fr);align-content:end;gap:1px;padding:27px 27px 25px;background:linear-gradient(145deg,#f4c97033,#fffdf914)}.timeline-stats div{padding:16px 11px;border-top:1px solid rgba(94,118,92,.21)}.timeline-stats strong,.timeline-stats span{display:block}.timeline-stats strong{color:#587054;font-family:var(--display);font-size:27px;font-weight:600}.timeline-stats span{margin-top:4px;color:#8b9a85;font-size:10px}.timeline-section,.members-section,.invite-history{padding-top:2px}.timeline-section-head,.members-section-head{align-items:flex-end;margin-bottom:24px}.timeline-section-head h2,.members-section-head h2,.invite-history h2{margin-top:7px;font-family:var(--display);font-size:23px;letter-spacing:-.05em}.timeline-list{position:relative;display:grid;gap:24px;padding-bottom:10px}.timeline-list:before{position:absolute;top:17px;bottom:13px;left:15px;width:1px;background:#d4cfc4;content:""}.timeline-item{position:relative;display:grid;grid-template-columns:32px 145px 1fr;align-items:start;gap:16px;min-height:93px}.timeline-marker{position:relative;z-index:1;display:grid;place-items:center;width:32px;height:32px;border:5px solid var(--paper);border-radius:50%;background:#d9dfd1;color:#6f8468}.timeline-item-first .timeline-marker{background:#f2c27f;color:#a2644d;box-shadow:0 0 0 5px #f2eadc}.timeline-date{padding-top:9px;color:var(--soft-muted);font-family:var(--mono);font-size:10px;line-height:1.5}.timeline-card{padding:15px 17px;border:1px solid var(--line);border-radius:13px;background:#fffdf9b3}.timeline-card-title{display:flex;align-items:center;gap:8px}.timeline-card h3{font-family:var(--display);font-size:15px;font-weight:600}.timeline-card-title span{padding:3px 6px;border-radius:5px;background:#f9e0c3;color:#aa7154;font-family:var(--mono);font-size:8px}.timeline-card p{margin-top:8px;color:var(--muted);font-size:12px;line-height:1.65}.timeline-card small{display:block;margin-top:12px;color:#aaa69b;font-size:10px}.timeline-empty{display:grid;place-items:center;min-height:170px;border:1px dashed #d4cfc4;border-radius:15px;color:#ad9e8b;font-size:12px}.timeline-empty svg{margin-bottom:9px;color:#d4ab70}.members-hero{display:flex;align-items:center;justify-content:space-between;min-height:235px;margin-bottom:35px;padding:32px 37px;overflow:hidden;border:1px solid #d8c8d0;border-radius:19px;background:#eee2e9;animation:appear .5s .08s ease both}.members-hero-copy p{max-width:390px;margin-top:13px;color:#91808d;font-size:12px;line-height:1.7}.stacked-avatars{display:flex;margin-bottom:12px;padding-left:10px}.stacked-avatar{margin-left:-10px;padding:3px;border-radius:50%;background:#eee2e9}.stack-0{transform:rotate(-7deg)}.stack-1{transform:translateY(5px) rotate(5deg)}.stack-2{transform:translateY(-2px) rotate(-4deg)}.stack-3{transform:translateY(4px) rotate(7deg)}.members-hero-symbol{display:grid;place-items:center;width:128px;height:128px;transform:rotate(8deg);border:1px solid rgba(130,95,118,.23);border-radius:50%;background:#f7edf0;color:#a37894}.members-hero-symbol span{margin-top:5px;font-family:var(--mono);font-size:9px;line-height:1.4;text-align:center}.member-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.member-card,.member-add-card{position:relative;display:flex;align-items:center;gap:14px;min-height:88px;padding:15px 17px;border:1px solid var(--line);border-radius:14px;background:#fffdf9b8}.member-card strong,.member-card span:not(.member-me){display:block}.member-info{min-width:0;flex:1}.member-card strong{font-family:var(--display);font-size:16px;font-weight:600}.member-card div span{margin-top:4px;color:var(--soft-muted);font-size:10px}.member-me{position:absolute;top:12px;right:13px;padding:4px 6px;border-radius:5px;background:#edf0e7;color:#74826e;font-family:var(--mono);font-size:8px}.member-remove{display:inline-flex;align-items:center;gap:5px;margin-left:auto;padding:7px 8px;border:0;border-radius:7px;background:#fff0eb;color:#ae6658;cursor:pointer;font-size:9px}.member-remove:hover{background:#f9dbd3}.member-danger-actions{display:flex;align-items:center;gap:5px;margin-left:auto}.member-danger-actions>span{color:#a65d52;font-size:9px}.member-danger-actions button{padding:6px 7px;border:0;border-radius:7px;background:#f3f0eb;color:var(--muted);cursor:pointer;font-size:9px}.member-add-card{justify-content:center;border-style:dashed;background:transparent;color:#9b9a91;cursor:pointer;transition:border-color .2s,color .2s,background .2s}.member-add-card:hover{border-color:var(--coral);background:#fff8f3;color:var(--coral-deep)}.member-add-card span{font-size:12px}.invite-history{margin-top:42px}.invite-history h2{margin-bottom:17px}.invite-history-row{display:flex;align-items:center;justify-content:space-between;padding:12px 2px;border-bottom:1px solid var(--line);color:var(--muted);font-size:11px}.invite-history-row span:first-child{display:inline-flex;align-items:center;gap:7px}.invite-open,.invite-used{font-family:var(--mono);font-size:9px}.invite-open{color:#79926c}.invite-used{color:#aaa69d}.mobile-nav{display:none}.modal-backdrop{position:fixed;z-index:20;inset:0;display:grid;place-items:end center;padding:24px;background:#24241f54;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);animation:fade-in .2s ease both}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.modal-sheet{width:min(650px,100%);max-height:min(760px,calc(100vh - 48px));overflow:auto;padding:27px 29px 24px;border:1px solid rgba(255,255,255,.58);border-radius:21px 21px 15px 15px;background:#fffdf9;box-shadow:0 -16px 70px #231e1833;animation:sheet-up .3s cubic-bezier(.2,.8,.2,1) both}@keyframes sheet-up{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}.modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:24px}.modal-head h2{margin-top:7px;font-family:var(--display);font-size:23px;font-weight:600;letter-spacing:-.06em}.composer-editor{position:relative}.composer-editor textarea,.small-modal textarea{display:block;width:100%;min-height:140px;padding:16px;resize:vertical;border:1px solid var(--line);border-radius:13px;outline:0;background:#faf7f1;color:var(--ink);font-family:var(--display);font-size:15px;line-height:1.8}.composer-editor textarea:focus,.small-modal textarea:focus,.small-modal input:focus{border-color:var(--coral);box-shadow:0 0 0 3px #eb806f1a}.composer-editor textarea::placeholder,.small-modal textarea::placeholder{color:#b4aea4}.composer-counter{position:absolute;right:13px;bottom:11px;color:#b4aea4;font-family:var(--mono);font-size:9px}.composer-attachments{display:flex;flex-wrap:wrap;gap:8px;margin-top:13px}.composer-media-note{display:flex;align-items:flex-start;gap:6px;margin-top:9px;color:#999c92;font-size:10px;line-height:1.55}.composer-media-note svg{flex:0 0 auto;margin-top:1px;color:#9eaf93}.attachment-preview{position:relative;width:83px;height:83px;overflow:hidden;border-radius:10px;background:#eae6df}.attachment-preview img,.attachment-preview video{display:block;width:100%;height:100%;object-fit:cover}.attachment-preview button{position:absolute;z-index:1;top:5px;right:5px;display:grid;place-items:center;width:22px;height:22px;padding:0;border:0;border-radius:50%;background:#292b28c2;color:#fff;cursor:pointer}.attachment-add{display:grid;place-items:center;align-content:center;width:83px;height:83px;padding:6px;border:1px dashed #cfc2b2;border-radius:10px;background:#faf7f1;color:#a98368;cursor:pointer}.attachment-add:hover{border-color:var(--coral);background:#fff5ee}.attachment-add span{margin-top:6px;font-size:9px;text-align:center}.attachment-add small{margin-top:3px;color:#b1a99d;font-size:8px}.composer-options{display:grid;gap:16px;margin-top:22px;padding:16px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.composer-options>label{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:11px}.composer-options input[type=date],.small-modal input[type=date]{margin-left:auto;padding:7px 8px;border:1px solid var(--line);border-radius:8px;outline:0;background:var(--white);color:var(--muted);font-size:11px}.mood-picker{display:flex;align-items:center;flex-wrap:wrap;gap:7px;color:var(--muted);font-size:11px}.mood-picker>span{margin-right:3px}.mood-picker button{padding:6px 8px;border:1px solid transparent;border-radius:7px;background:#f5f2ed;cursor:pointer;color:var(--muted);font-size:11px}.mood-picker button.selected{border-color:#edc3b6;background:#fff0e9;color:#a46052}.upload-progress-panel{margin-top:15px;padding:11px 12px;border:1px solid #dae3d2;border-radius:9px;background:#f1f5ed;color:#71816b;font-size:10px}.upload-progress-panel>div:first-child{display:flex;align-items:center;justify-content:space-between}.upload-progress-panel>div:first-child span{display:inline-flex;align-items:center;gap:5px}.upload-progress-panel strong{font-family:var(--mono);font-size:10px;font-weight:500}.upload-progress-track{height:5px;overflow:hidden;margin-top:8px;border-radius:99px;background:#dce6d6}.upload-progress-track span{display:block;width:0;height:100%;border-radius:inherit;background:#8ca781;transition:width .2s ease}.modal-actions{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:19px}.private-note{display:inline-flex;align-items:center;gap:6px;color:#98a091;font-size:10px}.small-modal{max-width:530px}.small-modal form,.small-modal form>label{display:grid;gap:8px}.small-modal form{gap:18px}.small-modal label{color:var(--muted);font-size:11px}.small-modal input:not([type=date]),.small-modal textarea{width:100%;padding:11px 12px;border:1px solid var(--line);border-radius:10px;outline:0;background:#faf7f1;color:var(--ink);font-size:12px}.small-modal textarea{min-height:100px;font-family:var(--display)}.form-two-col{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-two-col>label{display:grid;gap:8px}.optional{color:#b2aca1;font-size:9px}.milestone-icon-picker{display:grid;gap:8px;color:var(--muted);font-size:11px}.milestone-icon-picker>div{display:flex;gap:7px}.milestone-icon-picker button{display:grid;place-items:center;width:37px;height:37px;padding:0;border:1px solid var(--line);border-radius:9px;background:#faf7f1;color:#b18b72;cursor:pointer;font-size:18px}.milestone-icon-picker button.selected{border-color:#edc3b6;background:#fff0e9;color:#a46052}.invite-modal{max-width:450px}.invite-create{text-align:center}.invite-illustration{position:relative;display:flex;align-items:center;justify-content:center;gap:18px;width:100px;height:100px;margin:8px auto 20px;transform:rotate(-5deg);border-radius:50%;background:#f4e6cf;color:#b47e61}.invite-illustration div{position:absolute;right:5px;bottom:9px;width:20px;height:20px;border:3px solid #f2bc76;border-radius:50%}.invite-create h3{font-family:var(--display);font-size:20px;letter-spacing:-.05em}.invite-create p{margin:11px auto 23px;color:var(--muted);font-size:12px;line-height:1.75}.invite-result{text-align:center}.invite-result-icon{display:grid;place-items:center;width:52px;height:52px;margin:8px auto 17px;border-radius:50%;background:#e5eddc;color:#6c8563}.invite-code{margin:12px 0;padding:17px 13px;border:1px dashed #dcbb8e;border-radius:11px;background:#fff7e9;color:#9f6c4e;font-family:var(--mono);font-size:20px;font-weight:500;letter-spacing:.08em}.invite-link-row{display:flex;align-items:center;gap:6px;margin-top:12px}.invite-link-row input{min-width:0;flex:1;padding:10px;border:1px solid #e5d8c7;border-radius:9px;outline:0;background:#fffaf2;color:#8d735d;font-family:var(--mono);font-size:10px}.invite-link-row button{display:grid;place-items:center;width:38px;height:38px;padding:0;border:1px solid #e5d8c7;border-radius:9px;background:#fff7e9;color:#9f6c4e;cursor:pointer}.invite-link-row button:hover{background:#f8e8d0}.invite-code-label{margin-bottom:18px;color:#afa092;font-size:10px}.invite-code-label code{color:#a8795e;font-family:var(--mono)}.invite-result>p:not(.eyebrow){margin:12px auto 20px;color:var(--muted);font-size:12px;line-height:1.7}.form-error{margin-top:12px;padding:10px 12px;border:1px solid #f0c7bd;border-radius:9px;background:#fff0eb;color:#ad594c;font-size:11px;line-height:1.5}.toast{position:fixed;z-index:40;right:24px;bottom:24px;max-width:min(320px,calc(100vw - 48px));padding:12px 16px;border:1px solid rgba(255,255,255,.4);border-radius:11px;background:#292b28;color:var(--white);box-shadow:0 10px 30px #292b2833;font-size:12px;animation:toast-in .25s ease both}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.auth-page{display:grid;grid-template-columns:1.05fr .95fr;min-height:100vh;background:#f7f2ea}.auth-atmosphere{position:relative;overflow:hidden;min-height:100vh;background:#dce8da}.auth-atmosphere:before{position:absolute;inset:0;background:radial-gradient(circle at 31% 45%,rgba(255,248,205,.8),transparent 27%),linear-gradient(139deg,rgba(255,255,255,.35),transparent 60%);content:""}.auth-sun{position:absolute;top:17%;left:23%;width:280px;height:280px;border-radius:50%;background:#f7d98e;box-shadow:0 0 0 28px #f7d98e33,0 0 0 55px #f7d98e1c}.auth-atmosphere:after{position:absolute;right:13%;bottom:-13%;width:460px;height:460px;border:47px solid rgba(175,198,171,.68);border-radius:50%;content:""}.auth-sticker{position:absolute;z-index:2;padding:12px 13px;color:#698064;font-family:var(--display);font-size:18px;line-height:1.25}.sticker-one{top:28%;left:18%;transform:rotate(-12deg);border:1px solid rgba(100,128,94,.28);background:#f7f2ea99}.sticker-two{right:18%;bottom:25%;transform:rotate(8deg);color:#987b60;font-family:var(--mono);font-size:13px;line-height:1.1}.auth-doodle{position:absolute;z-index:3;color:#758e70b3;font-size:34px}.doodle-top{top:17%;right:21%}.doodle-bottom{bottom:16%;left:18%;font-size:70px;font-weight:200}.auth-panel{display:flex;flex-direction:column;justify-content:center;width:min(100%,500px);padding:44px clamp(30px,6vw,87px)}.auth-brandline{display:flex;align-items:center;gap:11px;margin-bottom:66px;font-family:var(--display);font-size:16px;font-weight:700}.auth-copy .eyebrow{color:#9b8065}.auth-copy h1{margin-top:14px;color:var(--ink);font-family:var(--display);font-size:clamp(35px,4vw,53px);font-weight:600;letter-spacing:-.09em;line-height:1.22}.auth-copy h1 em{color:var(--coral-deep)}.auth-copy>p:last-child{max-width:310px;margin-top:15px;color:var(--muted);font-size:12px;line-height:1.75}.auth-form{display:grid;gap:14px;margin-top:31px}.auth-form label{display:grid;gap:7px;color:#74756e;font-size:11px;font-weight:500}.auth-form input{width:100%;min-height:43px;padding:0 12px;border:1px solid var(--line);border-radius:10px;outline:0;background:#fffdf9b3;color:var(--ink);font-size:12px}.auth-form input:focus{border-color:var(--coral);box-shadow:0 0 0 3px #eb806f1a}.input-with-icon{position:relative}.input-with-icon svg{position:absolute;top:13px;left:12px;color:#a8876b}.input-with-icon input{padding-left:38px;font-family:var(--mono);letter-spacing:.05em}.auth-form .button-wide{margin-top:6px}.auth-footnote{display:inline-flex;align-items:center;gap:6px;margin-top:18px;color:#7e8e77;font-size:10px}.auth-footnote.muted{display:block;margin-top:9px;color:#aaa69d;line-height:1.6}.auth-switch{margin-top:33px;color:#a5a198;font-size:11px}.auth-switch button{padding:0;border:0;background:transparent;color:var(--coral-deep);cursor:pointer;font-size:11px;font-weight:700}@media(max-width:1050px){.desktop-sidebar{flex-basis:220px}.topbar,.page-content{padding-left:32px;padding-right:32px}.home-layout{grid-template-columns:minmax(0,1fr) 225px;gap:22px}.art-paper{right:48px}}@media(max-width:800px){.desktop-sidebar{display:none}.topbar{height:56px;padding:0 14px}.mobile-brand{display:flex}.mobile-brand .brand-mark{width:28px;height:28px;box-shadow:0 3px #d9a169}.mobile-brand .brand-mark-face{font-size:13px}.privacy-badge{padding:4px 8px;font-size:9px}.mobile-account{display:block}.page-content{padding:16px 14px 96px}.section-heading{align-items:flex-start;gap:12px;margin-bottom:14px}.section-heading h1{margin-top:4px;font-size:26px;letter-spacing:-.05em}.section-description{max-width:100%;margin-top:5px;font-size:11px;line-height:1.45}.desktop-compose{display:none}.mobile-only{display:inline-flex!important}.welcome-banner{grid-template-columns:1fr .5fr;min-height:0;margin-bottom:14px;border-radius:14px}.welcome-banner-copy{padding:14px}.welcome-kicker{font-size:8px}.welcome-banner h2{margin-top:8px;font-size:18px}.welcome-banner-copy p{margin-top:6px;font-size:11px;line-height:1.45}.welcome-banner-copy .text-button{margin-top:10px;font-size:12px}.welcome-banner-art{min-height:140px}.art-paper{top:28px;right:12px;width:88px;height:112px;padding:9px}.art-paper span{font-size:10px}.art-paper strong{font-size:15px}.art-circle-one{top:-38px;right:-38px;width:120px;height:120px;border-width:18px}.art-circle-two{right:-21px;bottom:-48px;width:90px;height:90px}.art-line{right:-3px;bottom:16px;font-size:8px}.home-layout{display:block}.feed-toolbar,.timeline-section-head,.members-section-head{margin-bottom:10px}.toolbar-title{font-size:16px}.toolbar-count{margin-left:8px;font-size:9px}.post-card{margin-bottom:11px;padding:13px 12px 10px;border-radius:13px}.post-copy{font-size:13px;line-height:1.55}.post-media{min-height:120px;border-radius:11px}.memory-art{min-height:120px}.memory-art-copy{left:12px;bottom:12px}.memory-art-copy strong{font-size:18px}.home-rail{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}.privacy-rail-card{grid-column:1 / -1;padding:11px 12px}.profile-rail-card{padding:12px}.rail-age{font-size:18px}.note-rail-card{padding:12px}.note-rail-card p:not(.eyebrow){margin-top:8px;font-size:12px;line-height:1.5}.media-library-toolbar{margin-bottom:12px;gap:10px}.media-library-note{display:none}.media-library-groups{gap:16px}.media-library-group{gap:8px}.media-library-date h2{font-size:15px}.media-library-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.library-media-card{border-radius:11px}.library-media-info{padding:8px 9px 9px}.library-media-copy{min-height:0;margin-top:6px;font-size:11px}.library-media-download{min-height:32px;margin-top:7px;font-size:9px}.media-library-more,.feed-load-more,.media-library-end,.feed-end{margin-top:14px}.timeline-intro{grid-template-columns:1fr;min-height:0;margin-bottom:16px;border-radius:14px}.timeline-intro-copy{padding:14px 14px 6px}.timeline-intro h2,.members-hero h2{margin-top:6px;font-size:18px}.timeline-intro-copy p,.members-hero-copy p{margin-top:6px;font-size:11px;line-height:1.45}.timeline-stats{padding:8px 12px 12px}.timeline-stats div{padding:10px 8px}.timeline-stats strong{font-size:18px}.timeline-section-head h2,.members-section-head h2,.invite-history h2{font-size:17px;margin-top:4px}.timeline-list{gap:12px}.timeline-item{grid-template-columns:28px 1fr;gap:6px 10px;min-height:0}.timeline-marker{width:28px;height:28px;border-width:4px}.timeline-date{grid-column:2;grid-row:1;padding-top:2px;font-size:9px}.timeline-card{grid-column:2;grid-row:2;padding:10px 11px;border-radius:11px}.timeline-card h3{font-size:14px}.timeline-card p{margin-top:5px;font-size:11px;line-height:1.5}.timeline-card small{margin-top:7px}.timeline-list:before{left:13px;bottom:20px}.members-hero{align-items:flex-start;min-height:0;margin-bottom:16px;padding:14px;border-radius:14px}.members-hero-symbol{display:none}.member-grid{grid-template-columns:1fr;gap:8px}.member-card,.member-add-card{min-height:64px;padding:10px 11px;gap:10px;border-radius:11px}.member-card strong{font-size:14px}.admin-page{gap:12px}.admin-grid{gap:10px}.admin-card{gap:10px;padding:12px;border-radius:12px}.admin-card-head{gap:8px}.admin-card-head h2{font-size:16px}.admin-card-copy{font-size:11px;line-height:1.45}.admin-stat-row{gap:6px}.admin-stat-row div{padding:8px;border-radius:9px}.admin-stat-row strong{font-size:15px}.admin-stat-row span{margin-top:2px;font-size:9px}.admin-session-list,.admin-event-list{gap:6px}.admin-session-row,.admin-event-row{padding:8px 9px;gap:8px;border-radius:10px}.admin-session-info strong,.admin-event-row strong{font-size:12px}.admin-session-info span,.admin-event-row span{margin-top:2px;font-size:10px}.loading-panel{min-height:160px;gap:8px;font-size:12px}.mobile-nav{position:fixed;z-index:15;right:0;bottom:0;left:0;display:grid;grid-template-columns:repeat(5,1fr);align-items:end;height:75px;padding:9px 8px max(9px,env(safe-area-inset-bottom));border-top:1px solid rgba(71,67,57,.1);background:#fffdf9eb;box-shadow:0 -8px 28px #4b3e2f12;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px)}.mobile-nav button{display:grid;place-items:center;align-content:center;gap:3px;min-height:52px;border:0;border-radius:12px;background:transparent;color:#a5a198;cursor:pointer;font-size:9px}.mobile-nav button.active{color:var(--coral-deep)}.mobile-nav .mobile-compose{align-self:center;justify-self:center;width:48px;height:48px;min-height:48px;margin-top:-23px;border:5px solid var(--paper);border-radius:16px;background:var(--ink);color:var(--white);box-shadow:0 7px 15px #292b282e}.modal-backdrop{padding:0}.modal-sheet{max-height:calc(100vh - 25px);padding:23px 18px max(20px,env(safe-area-inset-bottom));border-radius:20px 20px 0 0}.composer-options{gap:13px}.mood-picker{align-items:flex-start}.mood-picker>span{width:100%;margin-bottom:1px}.modal-actions{align-items:flex-end}.private-note{max-width:135px;line-height:1.45}.toast{right:18px;bottom:91px}}@media(max-width:520px){.privacy-badge{display:none}.section-heading h1{font-size:24px}.welcome-banner{grid-template-columns:1fr;min-height:0}.welcome-banner-art{min-height:96px;margin-top:0}.art-paper{top:8px;right:18%;width:84px;height:104px}.art-circle-one{top:-50px;right:-20px}.art-circle-two{right:10%;bottom:-60px}.home-rail{grid-template-columns:1fr}.privacy-rail-card{grid-column:auto}.form-two-col{grid-template-columns:1fr}.modal-actions{flex-direction:column;align-items:stretch}.private-note{max-width:none}.auth-page{display:block}.auth-atmosphere{min-height:180px}.auth-sun{top:-72px;left:17%;width:190px;height:190px}.auth-atmosphere:after{right:-30px;bottom:-155px;width:280px;height:280px;border-width:28px}.auth-sticker{font-size:13px}.sticker-one{top:44px;left:17%}.sticker-two{right:14%;bottom:33px}.doodle-top{top:24px;right:21%}.doodle-bottom{bottom:6px;left:13%;font-size:40px}.auth-panel{width:100%;padding:30px 24px 37px}.auth-brandline{margin-bottom:39px}.auth-copy h1{font-size:37px}.media-library-grid{gap:9px}.library-media-info{padding:10px}.library-media-download{width:100%;justify-content:center}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.recipe-hard-banner{display:flex;gap:10px;align-items:flex-start;margin:0 0 16px;padding:14px 16px;border:1px solid rgba(235,128,111,.28);border-radius:14px;background:#fff3ee;color:#8a5a4a}.recipe-hard-banner strong{display:block;font-size:13px}.recipe-hard-banner p{margin-top:4px;color:#a0786e;font-size:11px;line-height:1.5}.recipe-hard-avoid{display:flex;align-items:center;gap:7px;margin-top:16px;color:#9a7b6d;font-size:11px}.recipe-hard-avoid.compact{margin:12px 0 0}.recipe-toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:end;margin-bottom:16px}.recipe-search{display:flex;flex:1 1 220px;align-items:center;gap:8px;min-height:42px;padding:0 12px;border:1px solid var(--line);border-radius:12px;background:#fffdf9}.recipe-search input{flex:1;border:0;outline:0;background:transparent;color:var(--ink);font-size:13px}.recipe-age-filter{display:grid;gap:4px;color:var(--muted);font-size:11px}.recipe-age-filter input{width:88px;padding:9px 10px;border:1px solid var(--line);border-radius:10px;background:#fffdf9}.recipe-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}.recipe-card{display:grid;gap:8px;padding:16px;border:1px solid var(--line);border-radius:16px;background:#fffdf9e6;color:inherit;text-align:left;cursor:pointer}.recipe-card:hover{border-color:#eb806f59;box-shadow:0 10px 24px #4b3e2f0f}.recipe-card-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.recipe-card-top strong{font-family:var(--display);font-size:16px;letter-spacing:-.04em}.recipe-card p{color:var(--muted);font-size:12px;line-height:1.55;min-height:38px}.recipe-card-meta,.recipe-detail-meta,.recipe-allergen-tags{display:flex;flex-wrap:wrap;gap:6px;align-items:center;color:#8d9288;font-size:11px}.recipe-tag{display:inline-flex;align-items:center;padding:3px 8px;border-radius:999px;background:#edf1e8;color:#6f7d68;font-size:10px}.recipe-tag.tip{background:#f7ebe0;color:#8a6550}.recipe-detail.card-panel{padding:20px;border:1px solid var(--line);border-radius:18px;background:#fffdf9eb}.recipe-detail section{margin-top:18px}.recipe-detail h3{margin-bottom:10px;font-size:13px;color:#7d8478}.recipe-ingredient-list{display:grid;gap:8px;margin:0;padding:0;list-style:none}.recipe-ingredient-list li{display:flex;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:12px;background:#f7f3eb}.recipe-step-list{display:grid;gap:10px;margin:0;padding:0;list-style:none}.recipe-step-list li{display:flex;gap:12px;align-items:flex-start;padding:12px;border-radius:14px;background:#faf7f1}.recipe-step-index{display:grid;place-items:center;width:24px;height:24px;border-radius:999px;background:var(--ink);color:var(--white);font-size:11px;flex:0 0 auto}.recipe-tips p{color:#755e4e;line-height:1.7}.recipe-detail-actions{margin-top:18px}.recipe-modal label{display:grid;gap:6px;margin-bottom:12px;color:var(--muted);font-size:12px}.recipe-modal input,.recipe-modal textarea{width:100%;padding:11px 12px;border:1px solid var(--line);border-radius:11px;outline:0;background:#faf7f1;color:var(--ink);font:inherit}.recipe-modal textarea{min-height:84px;resize:vertical}.recipe-parse-panel{margin:0 0 14px;padding:12px 12px 10px;border:1px dashed rgba(176,137,104,.45);border-radius:14px;background:#faf6ef}.recipe-parse-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:8px}.recipe-parse-url{flex:1 1 180px;display:flex;align-items:center;gap:8px;padding:0 10px;border:1px solid var(--line);border-radius:11px;background:#fff;color:var(--muted)}.recipe-parse-url input{border:0;background:transparent;padding:10px 0;box-shadow:none}.recipe-parse-hint{color:var(--muted);font-size:11px}.recipe-parse-note{margin:8px 0 0;color:#6f8f6a;font-size:11px;line-height:1.45}.recipe-parse-note.blocked{color:#a14d3a}.recipe-parse-block{margin-top:8px;padding:9px 11px;border-radius:10px;background:#fff0eb;border:1px solid #f0c7bd;color:#ad594c;font-size:11px;line-height:1.5}.recipe-form-block{margin:14px 0;padding-top:8px;border-top:1px solid var(--line)}.recipe-form-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px;color:var(--muted);font-size:12px}.recipe-ingredient-row{display:grid;grid-template-columns:1.3fr 1fr;gap:8px;margin-bottom:8px}.recipe-allergen-picker{display:flex;flex-wrap:wrap;gap:8px}.recipe-ack{display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:10px;background:#fff7e8;color:#74541f;font-size:13px}.recipe-allergen-picker button{padding:7px 12px;border:1px solid var(--line);border-radius:999px;background:#fffdf9;color:var(--muted);cursor:pointer;font-size:12px}.recipe-allergen-picker button.selected{border-color:#eb806f73;background:#fff1eb;color:var(--coral-deep)}@media(max-width:900px){.mobile-nav{grid-template-columns:repeat(6,minmax(0,1fr))}.mobile-nav button{font-size:8px;gap:2px}.mobile-nav .mobile-compose{width:44px;height:44px;min-height:44px;margin-top:-18px}}.recipe-hard-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.recipe-hard-chip{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;background:#ffe4da;color:#a14d3a;font-size:11px;font-weight:600;letter-spacing:.02em}.recipe-tag.safe{background:#eef5ea;color:#5f7a5a}.recipe-subnav{display:inline-flex;gap:6px;margin:0 0 14px;padding:4px;border-radius:999px;background:#f3eee6}.recipe-subnav button{border:0;background:transparent;color:#8a8074;padding:8px 14px;border-radius:999px;cursor:pointer;font-size:13px}.recipe-subnav button.active{background:#fffdf9;color:var(--ink);box-shadow:0 4px 12px #4b3e2f14;font-weight:600}.recipe-subnav-prominent{display:flex;width:100%;max-width:420px;padding:5px;gap:6px;margin:0 0 16px;background:#efe6da;box-shadow:inset 0 0 0 1px #8a655014}.recipe-subnav-prominent button{flex:1;padding:12px 16px;font-size:15px;font-weight:600;letter-spacing:-.01em}.recipe-subnav-prominent button.active{background:linear-gradient(180deg,#fffdf9,#fff7f0);color:#8a4f3a;box-shadow:0 6px 16px #8a65501f}.recipe-detail-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.week-menu-toolbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between;margin-bottom:8px}.week-menu-nav{display:flex;align-items:center;gap:8px}.week-menu-nav strong{font-family:var(--display);font-size:15px;letter-spacing:-.03em}.week-menu-hint{margin:0 0 10px;color:var(--muted);font-size:12px;line-height:1.45}.week-menu-scroll{width:100%}.week-menu-grid{display:grid;gap:6px;grid-template-columns:56px repeat(7,minmax(64px,1fr))}.week-menu-corner{min-height:24px}.week-menu-dayhead{text-align:center;color:#7d8478;font-size:12px;font-weight:600;padding:2px 0}.week-menu-dayhead-short{display:none}.week-menu-row{display:contents}.week-menu-mealhead{display:grid;place-items:center;color:#8a6550;font-size:12px;font-weight:600;background:#fff3ee;border-radius:10px;padding:4px 2px}.week-menu-mealhead-short{display:none}.week-menu-cell{position:relative;display:grid;min-height:68px;border:1px solid var(--line);border-radius:12px;background:#fffdf9f2;overflow:hidden}.week-menu-dish,.week-menu-empty{display:grid;gap:3px;align-content:center;width:100%;height:100%;padding:8px 6px 20px;border:0;background:transparent;text-align:left;cursor:pointer;color:inherit}.week-menu-dish strong{font-size:12px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.week-menu-dish span,.week-menu-empty span{color:#9a7b6d;font-size:10px}.week-menu-empty{color:#b0a69a;font-size:11px;justify-items:center;text-align:center}.week-menu-empty-short{display:none}.week-menu-edit{position:absolute;right:3px;bottom:3px;border:0;border-radius:999px;background:#f3eee6;color:#8a8074;font-size:10px;line-height:1;padding:2px 6px;cursor:pointer}.week-menu-cell:hover{border-color:#eb806f59}.recipe-pick-modal{max-width:440px}.week-pick-note{margin:0 0 12px;color:var(--muted);font-size:12px}.recipe-pick-list{display:grid;gap:8px;max-height:360px;overflow:auto;margin-bottom:12px}.recipe-pick-item{display:grid;gap:4px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:#fffdf9;text-align:left;cursor:pointer;color:inherit}.recipe-pick-item:hover{border-color:#eb806f66}.recipe-pick-item span{color:var(--muted);font-size:11px}.meal-log-panel{margin-top:10px;padding:10px 10px 8px;border:1px solid var(--line);border-radius:14px;background:linear-gradient(180deg,#fffdf9,#fff8f2)}.meal-log-panel.is-collapsed{padding-bottom:8px}.meal-log-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.meal-log-head .eyebrow{margin:0}.meal-log-head h3{margin:0;font-family:var(--display);font-size:16px;letter-spacing:-.03em}.meal-log-toggle{display:flex;align-items:center;gap:8px;width:100%;margin:0;padding:0;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.meal-log-toggle-copy{flex:1;min-width:0}.meal-log-toggle-copy .eyebrow{margin:0}.meal-log-toggle-copy h3{margin:0;font-family:var(--display);font-size:15px;letter-spacing:-.03em}.meal-log-toggle-summary{display:block;margin-top:2px;color:#9a7b6d;font-size:11px;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.meal-log-chevron{flex:0 0 auto;color:#b0a69a;transition:transform .18s ease}.meal-log-chevron.open{transform:rotate(180deg)}.meal-log-date{color:#8a6550;font-size:11px;font-weight:600;padding:3px 8px;border-radius:999px;background:#fff3ee;white-space:nowrap}.meal-log-day-chips{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;margin-bottom:8px}.meal-log-day-chip{display:grid;gap:0;padding:5px 2px;border:1px solid var(--line);border-radius:10px;background:#fffdf9;cursor:pointer;color:inherit;text-align:center}.meal-log-day-chip strong{font-size:11px}.meal-log-day-chip span{color:#b0a69a;font-size:9px}.meal-log-day-chip.filled span{color:#6f8f6a}.meal-log-day-chip.active{border-color:#eb806f73;background:#fff7f0;box-shadow:0 3px 10px #8a655014}.meal-log-form{display:grid;gap:8px}.meal-log-form-compact{gap:8px}.meal-log-form label{display:grid;gap:4px;color:#7d6b5c;font-size:11px;font-weight:600}.meal-log-form input,.meal-log-form textarea{width:100%;padding:7px 10px;border:1px solid var(--line);border-radius:10px;background:#fffdf9;color:var(--ink);font:inherit;font-weight:400}.meal-log-form input:focus,.meal-log-form textarea:focus{outline:2px solid rgba(235,128,111,.35);outline-offset:1px}.meal-log-meals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.meal-log-meals label{min-width:0}.meal-log-milk{display:grid;gap:6px;padding:8px 10px;border-radius:12px;background:#ffffffa6;border:1px solid rgba(138,101,80,.08)}.meal-log-milk-head{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#7d6b5c;font-size:11px;font-weight:600}.meal-log-milk-head span{display:inline-flex;align-items:center;gap:4px}.meal-log-milk-head strong{color:var(--ink);font-size:12px}.meal-log-milk-empty{margin:0;color:#b0a69a;font-size:11px;font-weight:400}.meal-log-milk-rows{display:grid;gap:4px}.meal-log-milk-row{display:grid;grid-template-columns:48px minmax(0,1fr) 22px 28px;align-items:center;gap:6px}.meal-log-milk-index-full{display:inline}.meal-log-milk-index-short{display:none}.meal-log-milk-row span{font-size:11px;color:#9a7b6d}.meal-log-milk-row input{padding:6px 8px;text-align:right}.meal-log-milk-unit{justify-self:start}.meal-log-milk-remove{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:0;border-radius:8px;background:transparent;color:#b0a69a;cursor:pointer}.meal-log-milk-remove:hover{background:#fff1ea;color:#c45d4a}.meal-log-milk-add{justify-self:start}.meal-log-note textarea{resize:vertical;min-height:36px}.meal-log-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;margin-top:2px}.recipe-tag.tip.tried{background:#e7f2e4;color:#4f7a4a;box-shadow:inset 0 0 0 1px #4f7a4a2e}.recipe-last-eaten{color:#6f8f6a;font-weight:600}.recipe-texture-tip{display:flex;align-items:flex-start;gap:6px;margin:0 0 12px;padding:8px 10px;border-radius:12px;background:#f4f7f1;color:#5f6f58;font-size:12px;line-height:1.5}.recipe-texture-tip.banner{margin-top:-4px}.recipe-texture-tip.banner.compact{margin:0 0 8px;padding:6px 8px;font-size:11px;line-height:1.4;border-radius:10px}.recipe-detail .recipe-texture-tip{margin-top:10px;margin-bottom:0}.week-menu-cell.off-plan-cell{border-color:#c45d4a59;background:#fff6f2}.week-menu-cell.matched-cell{border-color:#6f8f6a59}.week-menu-last-eaten{display:block;color:#6f8f6a!important;font-size:9px!important}.week-menu-actual{display:block;color:#8a8074!important;font-size:9px!important;line-height:1.3}.week-menu-actual.differs{color:#c45d4a!important}.meal-log-fill-banner{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:8px 10px;border-radius:12px;background:linear-gradient(90deg,#fff1eb,#fff8f2);border:1px solid rgba(235,128,111,.28)}.meal-log-fill-banner span{flex:1;min-width:140px;color:#8a6550;font-size:11px;font-weight:500;line-height:1.4}.meal-log-fill-plan{display:inline-flex;align-items:center;gap:4px;box-shadow:0 4px 12px #eb806f38}.meal-log-off-plan{display:flex!important;grid-template-columns:none;flex-direction:row;align-items:center;gap:8px;font-weight:500!important}.meal-log-off-plan input{width:auto;margin:0}.meal-log-day-chip.off-plan span{color:#c45d4a}.food-trial-panel{margin-top:8px;padding:10px 10px 8px;border:1px solid var(--line);border-radius:14px;background:linear-gradient(180deg,#fbfdf9,#f4f7f1)}.food-trial-panel.is-collapsed{padding-bottom:8px}.food-trial-hint{margin:8px 0;color:var(--muted);font-size:11px;line-height:1.45}.food-trial-tried-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.food-trial-form{display:grid;gap:8px}.food-trial-form label{display:grid;gap:4px;color:#5f6f58;font-size:11px;font-weight:600}.food-trial-form input{width:100%;padding:7px 10px;border:1px solid var(--line);border-radius:10px;background:#fffdf9;color:var(--ink);font:inherit;font-weight:400}.food-trial-reactions{display:flex;flex-wrap:wrap;gap:6px}.food-trial-reactions button{padding:6px 12px;border:1px solid var(--line);border-radius:999px;background:#fffdf9;color:var(--muted);cursor:pointer;font-size:12px}.food-trial-reactions button.selected{border-color:#6f8f6a73;background:#e7f2e4;color:#4f7a4a;font-weight:600}.food-trial-tag-row{display:grid;gap:6px;color:#5f6f58;font-size:11px;font-weight:600}.recipe-allergen-picker.compact button{padding:5px 10px;font-size:11px}.food-trial-list{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:8px}.food-trial-list li{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;padding:10px 12px;border-radius:12px;background:#fffdf9e6;border:1px solid var(--line)}.food-trial-list strong{margin-right:6px}.food-trial-list p{margin:4px 0 0;color:var(--muted);font-size:12px}.food-trial-reaction{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;font-size:10px;font-weight:600;margin-right:4px}.food-trial-reaction.tolerated{background:#e7f2e4;color:#4f7a4a}.food-trial-reaction.reaction{background:#ffe4da;color:#a14d3a}.food-trial-reaction.watching{background:#f7ebe0;color:#8a6550}@media(max-width:860px){.recipe-subnav-prominent{max-width:none;margin-bottom:10px;padding:3px;gap:4px}.recipe-subnav-prominent button{padding:8px 10px;font-size:13px}.recipe-hard-avoid.compact{margin:0 0 6px;font-size:10px}.recipe-age-filter input{width:72px;padding:6px 8px}.recipe-toolbar{gap:8px;margin-bottom:10px;align-items:center}.button-small{min-height:32px;padding:0 10px;font-size:11px}.week-menu-toolbar{gap:6px;margin-bottom:6px}.week-menu-nav{gap:6px}.week-menu-nav strong{font-size:13px}.week-menu-hint{margin:0 0 6px;font-size:11px;line-height:1.35}.week-menu-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 -2px;padding-bottom:2px}.week-menu-grid{display:grid;grid-template-columns:22px repeat(7,minmax(0,1fr));gap:3px;min-width:0}.week-menu-corner{min-height:18px}.week-menu-dayhead{font-size:11px;padding:0}.week-menu-dayhead-full{display:none}.week-menu-dayhead-short{display:inline}.week-menu-row{display:contents}.week-menu-mealhead{font-size:11px;border-radius:8px;padding:2px 0;min-height:0}.week-menu-mealhead-full{display:none}.week-menu-mealhead-short{display:inline}.week-menu-cell{min-height:44px;border-radius:8px}.week-menu-dish,.week-menu-empty{gap:0;padding:4px 3px 16px;align-content:start}.week-menu-dish strong{font-size:10px;line-height:1.25;-webkit-line-clamp:2}.week-menu-cell-meta{display:none!important}.week-menu-empty{font-size:12px}.week-menu-empty-full{display:none}.week-menu-empty-short{display:inline;color:#c4b8ac;font-size:14px;font-weight:600}.week-menu-edit{right:1px;bottom:1px;font-size:9px;padding:1px 4px}.meal-log-day-chips{grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;margin-bottom:4px}.meal-log-day-chip{padding:3px 1px;border-radius:7px}.meal-log-day-chip strong{font-size:10px}.meal-log-day-chip span{font-size:8px}.meal-log-meals{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}.meal-log-meals label,.meal-log-form label{gap:2px;font-size:10px}.meal-log-form input,.meal-log-form textarea{padding:5px 6px;font-size:12px;border-radius:8px}.meal-log-fill-banner{gap:4px;padding:5px 6px;border-radius:9px}.meal-log-fill-banner span{display:none}.meal-log-panel,.food-trial-panel{margin-top:6px;padding:6px 7px 5px;border-radius:11px}.meal-log-toggle{gap:6px}.meal-log-toggle-copy .eyebrow{display:none}.meal-log-toggle-copy h3{font-size:13px}.meal-log-toggle-summary{font-size:10px;margin-top:1px}.meal-log-date{font-size:10px;padding:2px 6px}.meal-log-milk{display:grid;grid-template-columns:1fr auto;gap:4px;padding:5px 6px;border-radius:9px;align-items:center}.meal-log-milk-head{font-size:10px;gap:6px;grid-column:1}.meal-log-milk-head strong{font-size:11px}.meal-log-milk-add{grid-column:2;grid-row:1;justify-self:end;min-height:28px;padding:0 8px;font-size:10px}.meal-log-milk-empty,.meal-log-milk-rows{grid-column:1 / -1}.meal-log-milk-empty{font-size:10px}.meal-log-milk-rows{display:grid;grid-template-columns:repeat(auto-fit,minmax(72px,1fr));gap:4px}.meal-log-milk-row{grid-template-columns:minmax(0,1fr) 16px 22px;grid-template-areas:"idx idx idx" "inp unit rm";gap:2px 3px;padding:4px 5px;border:1px solid rgba(138,101,80,.1);border-radius:8px;background:#fffdf9}.meal-log-milk-row>span:first-child{grid-area:idx;font-size:9px;line-height:1.2}.meal-log-milk-index-full{display:none}.meal-log-milk-index-short{display:inline}.meal-log-milk-row input{grid-area:inp;padding:4px 5px;font-size:12px}.meal-log-milk-unit{grid-area:unit;font-size:9px;justify-self:center}.meal-log-milk-remove{grid-area:rm;width:22px;height:22px;border-radius:6px}.meal-log-note textarea{min-height:28px}.meal-log-form-compact{display:grid;grid-template-columns:1fr auto;gap:5px;align-items:center}.meal-log-fill-banner,.meal-log-meals,.meal-log-milk,.meal-log-note{grid-column:1 / -1}.meal-log-off-plan{grid-column:1;gap:6px;font-size:10px!important;align-self:center}.meal-log-actions{grid-column:2;gap:6px;margin-top:0;justify-content:flex-end}.meal-log-actions .button-small{min-height:30px;padding:0 10px;font-size:11px}.food-trial-hint{margin:4px 0;font-size:10px;line-height:1.35}.food-trial-tried-tags{gap:4px;margin-bottom:6px}.food-trial-form{gap:5px}.food-trial-form label{gap:2px;font-size:10px}.food-trial-form input{padding:5px 6px;font-size:12px;border-radius:8px}.food-trial-reactions{gap:4px}.food-trial-reactions button{padding:4px 8px;font-size:10px}.food-trial-list{gap:5px;margin-top:6px}.food-trial-list li{padding:7px 8px;border-radius:9px;gap:6px}.food-trial-list p{margin-top:2px;font-size:11px}}@media(max-width:520px){.week-menu-grid{grid-template-columns:20px repeat(7,minmax(0,1fr));gap:2px}.week-menu-cell{min-height:40px}.week-menu-dish strong{font-size:9px}}.header-actions-row{display:inline-flex;flex-wrap:wrap;gap:8px;align-items:center}.members-mobile-actions{display:inline-flex;gap:8px;align-items:center}.admin-page{display:grid;gap:18px;animation:appear .35s ease}.admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.admin-card{display:grid;gap:14px;padding:18px 17px;border:1px solid var(--line);border-radius:16px;background:#fffdf9d1;box-shadow:var(--shadow)}.admin-card-wide{grid-column:1 / -1}.admin-card-head{display:flex;align-items:center;gap:10px}.admin-card-head svg{color:var(--coral-deep);flex:0 0 auto}.admin-card-head h2{margin-top:2px;font-family:var(--display);font-size:20px;font-weight:600}.admin-card-copy{color:var(--muted);font-size:12px;line-height:1.6}.admin-stat-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.admin-stat-row div{padding:10px 11px;border-radius:12px;background:#f3eee4}.admin-stat-row strong{display:block;font-family:var(--display);font-size:18px;font-weight:600}.admin-stat-row span{display:block;margin-top:4px;color:var(--soft-muted);font-size:10px;line-height:1.4}.admin-session-list,.admin-event-list{display:grid;gap:8px}.admin-session-row,.admin-event-row{display:flex;align-items:center;gap:12px;padding:11px 12px;border:1px solid var(--line);border-radius:12px;background:#fffdf9b3}.admin-session-info,.admin-event-row{min-width:0}.admin-session-info{flex:1}.admin-session-info strong,.admin-event-row strong{display:block;font-size:13px}.admin-session-info span,.admin-event-row span{display:block;margin-top:3px;color:var(--soft-muted);font-size:11px;line-height:1.45;overflow-wrap:anywhere}.admin-session-agent{font-size:10px;opacity:.85}.admin-event-row{display:grid;gap:2px}.danger-outline{color:#a14848;border-color:#b94f4b59}.danger-outline:hover:not(:disabled){background:#fff1ef;border-color:var(--coral)}.loading-panel{display:grid;place-items:center;gap:10px;min-height:240px;color:var(--muted);font-size:13px}@media(max-width:860px){.admin-grid{grid-template-columns:1fr}.admin-stat-row{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-session-row{flex-wrap:wrap}.admin-page{gap:12px}.admin-card{gap:10px;padding:12px}.admin-card-head h2{font-size:16px}}@media(max-width:520px){.recipe-hard-banner{gap:7px;margin-bottom:8px;padding:9px 10px;border-radius:11px}.recipe-hard-banner p{margin-top:2px;font-size:11px;line-height:1.4}.recipe-hard-avoid.compact{line-height:1.35}.recipe-toolbar{gap:6px;margin-bottom:7px}.recipe-search{min-height:38px;padding:0 9px;border-radius:10px}.recipe-grid{gap:7px}.recipe-card{gap:5px;padding:10px 11px;border-radius:12px}.recipe-card-top strong{font-size:16px}.recipe-card p{min-height:0;font-size:13px;line-height:1.4}.recipe-card-meta,.recipe-allergen-tags{gap:4px}.recipe-detail.card-panel{padding:12px;border-radius:13px}.recipe-detail section{margin-top:10px}.recipe-detail h3{margin-bottom:6px;font-size:14px}.recipe-ingredient-list,.recipe-step-list{gap:5px}.recipe-ingredient-list li{gap:8px;padding:7px 9px;border-radius:9px;font-size:14px}.recipe-ingredient-list li strong,.recipe-step-list li p{font-size:14px;line-height:1.5}.recipe-step-list li{gap:8px;padding:8px;border-radius:10px}.recipe-step-index{width:24px;height:24px}.recipe-detail-actions{gap:6px;margin-top:10px}.recipe-modal label{gap:3px;margin-bottom:8px}.recipe-modal input,.recipe-modal textarea,.recipe-modal select{min-height:38px;padding:7px 9px;border-radius:9px}.recipe-modal textarea{min-height:64px}.recipe-form-block{margin:9px 0;padding-top:6px}.recipe-form-heading{margin-bottom:5px}.recipe-ingredient-row{gap:5px;margin-bottom:5px}.recipe-parse-panel{margin-bottom:8px;padding:8px;border-radius:11px}.recipe-parse-row{gap:5px;margin-top:5px}.recipe-parse-url{padding:0 8px}.recipe-parse-url input{min-height:36px;padding:6px 0}.week-menu-hint{margin-bottom:5px}.week-menu-toolbar{gap:4px}.meal-log-panel,.food-trial-panel{margin-top:5px}.meal-log-form input,.meal-log-form textarea,.food-trial-form input{min-height:36px}.week-menu-cell{min-height:38px}.week-menu-dish,.week-menu-empty{padding:3px 2px 14px}.week-menu-dish strong{font-size:10px}.button-small,.meal-log-actions .button-small{min-height:36px}}
