/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.block{display:block}.hidden{display:none}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{--terracotta:#c28b6a;--terracotta-deep:#a8674d;--linen:#e7d9c8;--linen-light:#f6efe5;--sand:#dcc8b2;--olive-mist:#b6b49c;--sage:#98a084;--olive:#667055;--olive-deep:#414936;--ink:#38342e;--paper:#fbf7f0;--white:#fffdf8;--line:#524d402e;--shadow:0 20px 55px #483a281f}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);margin:0;font-family:Avenir Next,Avenir,Helvetica Neue,Arial,sans-serif}button,input,textarea,select{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline-offset:3px;outline:3px solid #c28b6a80}.site-frame{background-image:radial-gradient(#66705512 .6px,#0000 .6px);background-size:9px 9px;min-height:100vh;overflow:hidden}.site-header{border-bottom:1px solid var(--line);z-index:30;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fbf7f0f2;grid-template-columns:230px 1fr auto;align-items:center;height:92px;padding:0 clamp(24px,4.8vw,76px);display:grid;position:sticky;top:0}.brand{cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:13px;padding:0;display:flex}.mark{border:1px solid var(--terracotta);width:43px;height:43px;color:var(--terracotta-deep);border-radius:50% 50% 46% 54%;place-items:center;font:italic 700 29px/1 Georgia,serif;display:inline-grid;position:relative}.mark:after{content:"";border-top:1px solid var(--olive);width:17px;height:7px;position:absolute;top:8px;right:-5px;transform:rotate(-38deg)}.brand b{letter-spacing:.01em;font:italic 600 19px/1.1 Georgia,serif;display:block}.brand small{letter-spacing:.34em;color:var(--olive);margin-top:4px;font-size:9px;display:block}.main-nav{justify-content:center;gap:clamp(14px,2vw,34px);display:flex}.main-nav button{color:#6e685f;cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:35px 0 31px;font-size:13px;font-weight:600;position:relative}.main-nav button:after{content:"";background:var(--terracotta);height:2px;transition:all .2s;position:absolute;bottom:22px;left:50%;right:50%}.main-nav button:hover:after,.main-nav button.active:after{left:0;right:0}.main-nav button.active{color:var(--olive-deep)}.nav-unread-badge{background:var(--terracotta-deep);color:#fff;vertical-align:top;border-radius:999px;justify-content:center;align-items:center;min-width:17px;height:17px;margin-left:5px;padding:0 5px;font-size:7px;line-height:1;display:inline-flex}.header-actions{justify-self:end;align-items:center;gap:12px;display:flex}.member-pill{cursor:pointer;text-align:left;background:0 0;border:0;justify-self:end;align-items:center;gap:10px;display:flex}.member-pill b,.member-pill small{display:block}.member-pill b{font-size:12px}.member-pill small{color:#847c70;margin-top:2px;font-size:10px}.avatar{background:var(--terracotta);width:38px;height:38px;color:var(--white);border-radius:50%;flex:none;place-items:center;font-size:11px;font-style:normal;font-weight:700;display:inline-grid;overflow:hidden}.avatar img,.profile-avatar-image{border-radius:inherit;object-fit:cover;object-position:center;width:100%;height:100%;display:block}.avatar.small{width:28px;height:28px;font-size:9px}.avatar.sage{background:var(--sage)}.mobile-menu,.mobile-profile-button{display:none}.notification-center{position:relative}.notification-button{border:1px solid var(--line);width:42px;height:42px;color:var(--olive-deep);cursor:pointer;background:#fffdf8c2;border-radius:50%;place-items:center;display:grid;position:relative}.notification-button>svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.notification-badge{border:2px solid var(--paper);background:var(--terracotta-deep);color:#fff;border-radius:999px;place-items:center;min-width:19px;height:19px;padding:0 5px;font-size:7px;display:grid;position:absolute;top:-5px;right:-6px}.notification-popover{z-index:80;border:1px solid var(--line);background:var(--white);width:min(390px,100vw - 30px);max-height:min(580px,100vh - 120px);position:absolute;top:calc(100% + 13px);right:0;overflow:hidden;box-shadow:0 24px 70px #342d2233}.notification-popover>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:18px 19px;display:flex}.notification-popover>header small{color:var(--terracotta-deep);letter-spacing:.17em;font-size:7px;font-weight:800}.notification-popover>header h2{color:var(--olive-deep);margin:3px 0 0;font:500 20px Georgia,serif}.notification-popover>header button{border:0;border-bottom:1px solid var(--sage);color:var(--olive);cursor:pointer;white-space:nowrap;background:0 0;padding:5px 0;font-size:8px;font-weight:800}.notification-list{max-height:430px;overflow:auto}.notification-item{border:0;border-bottom:1px solid var(--line);background:var(--white);text-align:left;cursor:pointer;grid-template-columns:auto 1fr auto;align-items:start;gap:11px;width:100%;min-height:78px;padding:13px 15px;display:grid}.notification-item.unread{background:#e7d9c847}.notification-item>span:nth-child(2){min-width:0}.notification-item b,.notification-item small,.notification-item i{display:block}.notification-item b{color:var(--olive-deep);font-size:10px}.notification-item small{color:#877f73;margin-top:2px;font-size:8px}.notification-item i{color:#696258;white-space:nowrap;text-overflow:ellipsis;margin-top:7px;font:400 10px/1.45 Georgia,serif;overflow:hidden}.notification-item em{background:var(--terracotta-deep);border-radius:50%;width:7px;height:7px;margin-top:7px}.notification-empty{color:#81796f;text-align:center;margin:0;padding:36px 20px;font:italic 12px/1.6 Georgia,serif}.hero{background:linear-gradient(100deg,#e7d9c894,#fbf7f099 57%,#b6b49c3d);grid-template-columns:.88fr 1.12fr;align-items:center;gap:clamp(44px,7vw,112px);min-height:650px;padding:clamp(58px,7vw,105px) clamp(24px,7vw,112px) 78px;display:grid;position:relative}.hero:before{content:"";background:var(--terracotta);opacity:.55;width:38%;height:7px;position:absolute;inset:auto auto 0 0}.eyebrow{color:var(--terracotta-deep);letter-spacing:.26em;text-transform:uppercase;margin:0 0 14px;font-weight:700;font-size:10px!important}.hero h1,.page-heading h1{letter-spacing:-.045em;color:var(--olive-deep);margin:0;font:500 clamp(50px,5.2vw,79px)/.98 Georgia,Times New Roman,serif}.hero h1 em,.page-heading h1 em{color:var(--terracotta-deep);font-weight:400}.hero-intro{color:#696258;max-width:550px;margin:31px 0 0;font:400 17px/1.8 Georgia,serif}.button-row{align-items:center;gap:27px;margin-top:34px;display:flex}.primary-button,.secondary-button,.outline-button{cursor:pointer;letter-spacing:.035em;border-radius:2px;min-height:48px;padding:0 22px;font-size:12px;font-weight:700;transition:all .2s}.primary-button{border:1px solid var(--terracotta-deep);color:var(--white);background:var(--terracotta-deep);box-shadow:0 8px 22px #a8674d29}.primary-button:hover{background:#955940;transform:translateY(-2px)}.primary-button span{margin-left:17px}.secondary-button{border:1px solid var(--olive-deep);color:var(--olive-deep);background:0 0}.secondary-button:hover,.outline-button:hover{background:#66705514}.danger-button{color:#fff;cursor:pointer;letter-spacing:.035em;background:#984d43;border:1px solid #984d43;border-radius:2px;min-height:48px;padding:0 22px;font-size:12px;font-weight:700}.danger-button:hover{background:#843d35}.outline-button{border:1px solid var(--line);background:var(--white);color:#5e594f}.text-button{color:var(--olive-deep);border:0;border-bottom:1px solid var(--sage);cursor:pointer;background:0 0;padding:8px 0;font:italic 600 15px Georgia,serif}.text-button span{margin-left:12px;font-family:sans-serif;font-style:normal}.family-count{align-items:center;gap:17px;margin-top:45px;display:flex}.family-count p{color:#777064;margin:0;font-size:11px;line-height:1.6}.family-count p b{color:var(--olive-deep)}.mini-avatars{display:flex}.mini-avatars span,.mini-avatars i{border:2px solid var(--paper);background:var(--sage);width:29px;height:29px;color:var(--white);border-radius:50%;place-items:center;margin-left:-7px;font-size:8px;font-style:normal;font-weight:700;display:grid}.mini-avatars span:first-child,.mini-avatars i:first-child{margin-left:0}.mini-avatars span:nth-child(2),.mini-avatars i:nth-child(2){background:var(--terracotta)}.mini-avatars span:nth-child(3),.mini-avatars i:nth-child(3){background:var(--olive)}.mini-avatars span:last-child{background:var(--linen);color:var(--ink)}.hero-image-wrap{height:min(520px,48vw);min-height:410px;padding:18px 18px 32px 32px;position:relative}.hero-image-wrap:before{content:"";background:var(--sand);position:absolute;inset:0 34px 39px 0}.hero-image-wrap img{object-fit:cover;z-index:1;filter:saturate(.78)sepia(.08);width:100%;height:100%;box-shadow:var(--shadow);position:relative}.photo-note{z-index:2;background:var(--linen-light);width:235px;padding:18px 20px;position:absolute;bottom:0;left:0;box-shadow:0 12px 35px #3630261f}.photo-note span{font:italic 15px Georgia,serif;display:block}.photo-note small{color:var(--terracotta-deep);letter-spacing:.18em;margin-top:10px;font-size:8px;display:block}.section-shell{max-width:1380px;margin:0 auto;padding-left:clamp(24px,5vw,76px);padding-right:clamp(24px,5vw,76px)}.home-grid{grid-template-columns:.88fr 1.24fr .98fr;gap:22px;padding-top:74px;padding-bottom:84px;display:grid}.feature-card{border:1px solid var(--line);text-align:left;cursor:pointer;background:#fffdf8de;min-height:324px;padding:27px;transition:transform .22s,box-shadow .22s;box-shadow:0 10px 35px #5545310f}.feature-card:hover{box-shadow:var(--shadow);transform:translateY(-4px)}.card-top{align-items:center;gap:10px;display:flex}.card-top .arrow{color:var(--olive);margin-left:auto;font-size:17px}.app-icon{background:var(--linen);width:29px;height:29px;color:var(--olive);border-radius:50%;place-items:center;display:grid}.tag{letter-spacing:.2em;color:#746b5e;font-size:8px;font-weight:800}.event-date{align-items:center;gap:10px;margin:28px 0 20px;display:flex}.event-date strong{color:var(--terracotta-deep);font:500 53px/1 Georgia,serif}.event-date span{letter-spacing:.16em;color:#8d8375;font-size:9px;line-height:1.45}.feature-card h3{color:var(--olive-deep);margin:0;font:500 24px/1.25 Georgia,serif}.feature-card p{color:#756e63;font-size:12px;line-height:1.65}.attending{border-top:1px solid var(--line);align-items:center;gap:12px;margin-top:30px;padding-top:18px;display:flex}.attending b{color:#716a60;font-size:10px}.recipe-feature{padding:0;overflow:hidden}.feature-photo{background:var(--sand);height:178px;position:relative}.feature-photo img{object-fit:cover;filter:saturate(.75);width:100%;height:100%}.tag.overlay{background:#fbf7f0e8;padding:8px 11px;position:absolute;top:18px;left:18px}.feature-card-copy{justify-content:space-between;align-items:end;padding:21px 24px;display:flex}.feature-card-copy .eyebrow{margin-bottom:5px;font-size:8px!important}.feature-card-copy h3{font-size:25px}.feature-card-copy p{margin:7px 0 0;font-family:Georgia,serif;font-style:italic}.round-arrow{border:1px solid var(--line);width:36px;height:36px;color:var(--terracotta-deep);border-radius:50%;flex:none;place-items:center;display:grid}.archive-feature{background:var(--olive);color:var(--white)}.archive-feature .app-icon{color:var(--linen);background:#ffffff24}.archive-feature .tag,.archive-feature .arrow,.archive-feature p{color:#ffffffb3}.archive-feature h3{color:var(--white)}.archive-year{color:var(--linen)!important;margin:23px 0 9px!important;font:italic 500 42px/1 Georgia,serif!important}.story-link{color:var(--linen);margin-top:12px;font-size:10px;font-weight:700;display:inline-block}.contribute-banner{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:1.2fr .9fr auto;align-items:center;gap:40px;margin-bottom:90px;padding-top:44px;padding-bottom:44px;display:grid}.contribute-banner h2{color:var(--olive-deep);margin:0;font:500 31px/1.25 Georgia,serif}.contribute-banner>p{color:#756e62;font:italic 14px/1.8 Georgia,serif}.interior{min-height:calc(100vh - 92px);padding-top:74px;padding-bottom:100px}.page-heading{margin-bottom:55px}.page-heading h1{font-size:clamp(44px,4.4vw,67px)}.page-heading>div>p:last-child,.page-heading>p:last-child,.recipe-heading>div>p:last-child,.archive-heading>div>p:last-child{color:#746d62;max-width:620px;margin:23px 0 0;font:400 16px/1.8 Georgia,serif}.split-heading,.recipe-heading,.archive-heading{justify-content:space-between;align-items:end;gap:40px;display:flex}.split-heading.compact{align-items:center;margin-bottom:35px}.heading-actions{gap:10px;padding-bottom:5px;display:flex}.calendar-layout{grid-template-columns:minmax(0,1fr) 350px;gap:25px;display:grid}.calendar-panel,.upcoming-panel{border:1px solid var(--line);background:#fffdf8e6;box-shadow:0 10px 35px #5545310d}.calendar-toolbar{border-bottom:1px solid var(--line);justify-content:center;align-items:center;gap:23px;height:75px;display:flex}.calendar-toolbar h2{color:var(--olive-deep);margin:0;font:500 28px Georgia,serif}.calendar-toolbar h2 em{color:var(--terracotta-deep);font-weight:400}.calendar-toolbar button{cursor:pointer;color:var(--sage);background:0 0;border:0;font-size:19px}.weekday-row,.month-grid{grid-template-columns:repeat(7,1fr);display:grid}.weekday-row span{text-align:center;letter-spacing:.14em;text-transform:uppercase;color:#8b8377;border-right:1px solid var(--line);padding:14px 8px;font-size:9px;font-weight:800}.day-cell{border-right:1px solid var(--line);border-top:1px solid var(--line);min-height:107px;padding:10px;position:relative}.day-cell.blank{background:#dcc8b229}.day-number{color:#6a645b;font:500 13px Georgia,serif}.day-cell.today .day-number{background:var(--terracotta-deep);color:#fff;border-radius:50%;place-items:center;width:25px;height:25px;margin:-4px 0 4px -4px;display:grid}.event-chip{color:#815640;text-align:left;cursor:pointer;background:#c28b6a1f;border:0;border-left:3px solid;width:100%;margin-top:6px;padding:5px 6px;font-size:8px;font-weight:700;line-height:1.25;display:block}.event-chip:hover{filter:brightness(.96);transform:translateY(-1px)}.event-chip.birthday{border-color:var(--terracotta)}.event-chip.holiday{border-color:var(--sage);color:var(--olive);background:#98a0841f}.event-chip.gathering{border-color:var(--olive);color:var(--olive-deep);background:#6670551c}.upcoming-panel{padding:26px}.aside-heading{border-bottom:1px solid var(--line);justify-content:space-between;padding-bottom:20px;display:flex}.aside-heading h2{color:var(--olive-deep);margin:0;font:500 24px Georgia,serif}.month-badge{background:var(--linen);height:28px;color:var(--terracotta-deep);letter-spacing:.18em;padding:8px 10px;font-size:8px;font-weight:800}.upcoming-event{border:0;border-bottom:1px solid var(--line);text-align:left;cursor:pointer;background:0 0;grid-template-columns:55px 1fr;gap:15px;width:100%;padding:19px 0;display:grid}.upcoming-event:hover h3{color:var(--terracotta-deep)}.date-tile{background:var(--linen);align-content:center;place-items:center;width:51px;height:58px;display:grid}.date-tile.birthday{background:#c28b6a33}.date-tile.gathering{background:#98a0843d}.date-tile b{font:500 24px/1 Georgia,serif}.date-tile small{letter-spacing:.14em;margin-top:4px;font-size:7px}.event-type{letter-spacing:.15em;text-transform:uppercase;color:var(--terracotta-deep);font-size:7px;font-weight:800}.upcoming-event h3{margin:5px 0;font:500 16px Georgia,serif}.upcoming-event p{color:#81796f;margin:0;font-size:9px}.calendar-source{border:1px dashed var(--sage);width:100%;color:var(--olive);cursor:pointer;background:#b6b49c1f;margin-top:22px;padding:15px;font:italic 12px/1.4 Georgia,serif}.empty-month{color:#8b8377;padding:22px 8px;font:italic 12px/1.6 Georgia,serif}.event-detail{gap:20px;display:grid}.event-detail-date{border-left:4px solid var(--olive);background:#98a08421;align-items:center;gap:16px;padding:18px;display:flex}.event-detail-date.birthday{border-left-color:var(--terracotta);background:#c28b6a21}.event-detail-date.holiday{border-left-color:var(--sage);background:#b6b49c29}.event-detail-date>span{background:var(--white);border-radius:50%;place-items:center;width:42px;height:42px;font-size:20px;display:grid}.event-detail-date small,.event-detail-grid small,.event-detail-notes small{color:var(--terracotta-deep);letter-spacing:.15em;margin-bottom:5px;font-size:7px;font-weight:800;display:block}.event-detail-date b{color:var(--olive-deep);font:500 20px Georgia,serif}.event-detail-grid{border-block:1px solid var(--line);grid-template-columns:1fr 1fr;display:grid}.event-detail-grid>div{padding:16px}.event-detail-grid>div+div{border-left:1px solid var(--line)}.event-detail-grid b{color:var(--ink);font:500 14px Georgia,serif}.event-detail-notes{background:var(--linen-light);padding:18px}.event-detail-notes p{color:#6f675c;white-space:pre-wrap;margin:0;font:400 13px/1.7 Georgia,serif}.calendar-origin-note{border:1px solid var(--line);background:#b6b49c1a;padding:17px}.calendar-origin-note b{color:var(--olive-deep);font:500 14px Georgia,serif}.calendar-origin-note p{color:#756e63;font-size:10px;line-height:1.6}.calendar-origin-note .secondary-button{min-height:40px}.event-delete-button{justify-self:end}.tree-tools{border:1px solid var(--line);background:var(--white);gap:0;display:flex}.tree-heading-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;display:flex}.tree-add-control{justify-items:end;gap:5px;display:grid}.tree-add-control small{color:#8b8377;font-size:8px}.tree-tools button,.tree-tools span{border:0;border-right:1px solid var(--line);background:0 0;place-items:center;min-width:43px;min-height:42px;font-size:11px;display:grid}.tree-tools button{cursor:pointer}.tree-tools button:last-child{color:var(--olive);border-right:0;padding:0 17px;font-weight:700}.tree-viewport{border:1px solid var(--line);background:linear-gradient(#e7d9c847,#fbf7f0db);min-height:820px;padding:76px 36px 110px;position:relative;overflow:auto}.tree-key{color:#777064;gap:16px;font-size:8px;display:flex;position:absolute;top:18px;right:22px}.tree-key span{align-items:center;gap:5px;display:flex}.key-line{background:var(--terracotta-deep);width:18px;height:2px}.key-line.descendant{background:var(--sage);width:2px;height:14px}.key-card{border:1px solid var(--line);background:var(--white);width:13px;height:10px}.tree-canvas{transform-origin:top;transition:transform .2s}.generation-label{color:#8c8479;letter-spacing:.23em;width:max-content;margin:0 auto 18px;font-size:8px;font-weight:800}.tree-row{justify-content:center;gap:42px;display:grid;position:relative}.tree-row.two{grid-template-columns:repeat(2,270px)}.tree-row.one{grid-template-columns:320px}.tree-row.three{grid-template-columns:repeat(3,245px)}.tree-row.contributed-row{grid-template-columns:repeat(auto-fit,minmax(220px,245px));max-width:830px;margin:0 auto}.person-card{text-align:left;border:1px solid var(--line);background:var(--white);cursor:pointer;align-items:center;gap:14px;width:100%;min-height:94px;padding:15px;display:flex;box-shadow:0 8px 24px #493c2b14}.person-card:hover{border-color:var(--terracotta);transform:translateY(-2px)}.person-card.accent{background:var(--olive);color:var(--white)}.person-avatar{background:var(--linen);width:53px;height:53px;color:var(--olive);border-radius:50%;flex:none;place-items:center;font:500 15px Georgia,serif;display:grid}.person-card.accent .person-avatar{color:var(--linen);background:#ffffff29}.person-card small,.person-card b,.person-card i{display:block}.person-card small{color:var(--terracotta-deep);text-transform:uppercase;letter-spacing:.12em;font-size:7px;font-weight:800}.person-card.accent small,.person-card.accent i{color:#ffffffa6}.person-card b{margin-top:6px;font:500 16px Georgia,serif}.person-card i{color:#857e72;margin-top:5px;font-size:8px;font-style:normal}.tree-connector{background:var(--sage);width:1px;height:58px;margin:0 auto 13px;position:relative}.tree-connector.wide:before{content:"";border-top:1px solid var(--sage);width:313px;position:absolute;top:0;left:-156px}.tree-connector.split:before{content:"";border-top:1px solid var(--sage);width:577px;position:absolute;bottom:0;left:-288px}.tree-connector.additions{height:46px;margin-top:12px}.leaf-row{grid-template-columns:230px;margin-top:55px}.add-person{border:1px dashed var(--sage);cursor:pointer;background:#fffdf899;align-content:center;place-items:center;min-height:95px;display:grid}.add-person span{color:var(--terracotta-deep);font-size:20px}.add-person b{margin:4px 0;font:500 14px Georgia,serif}.add-person small{color:#857e72;font-size:8px}.traditional-tree{width:2300px;min-width:2300px;margin:0 auto}.ancestry-sides{grid-template-columns:1fr 1fr;gap:80px;width:1220px;margin:0 auto;display:grid}.ancestor-side{border:1px solid var(--line);background:#fffdf8b8;padding:24px;position:relative}.ancestor-title{text-align:center;color:var(--olive);letter-spacing:.2em;margin:0 0 22px;font:700 9px sans-serif}.ancestor-tier{justify-items:center;gap:9px;display:grid}.ancestor-tier>small,.sibling-tier>small{color:#91887b;letter-spacing:.16em;font-size:7px;font-weight:800}.ancestor-tier>div,.sibling-tier>div{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.ancestor-line{background:var(--sage);width:2px;height:30px;margin:7px auto;display:block}.sibling-tier{border-top:1px solid var(--line);justify-items:center;gap:10px;margin-top:22px;padding-top:18px;display:grid}.add-relative-chip{border:1px dashed var(--terracotta);background:var(--linen-light);min-height:36px;color:var(--olive);cursor:pointer;padding:0 14px;font-size:8px;font-weight:800}.ancestry-descent{background:var(--sage);width:2px;height:58px;margin:0 auto 15px}.founder-couple{grid-template-columns:240px 76px 240px;align-items:center;width:max-content;margin:0 auto;display:grid}.marriage-connection{background:var(--terracotta-deep);height:2px;position:relative}.marriage-connection:after{content:"";background:var(--terracotta-deep);width:8px;height:8px;position:absolute;top:-4px;left:50%;transform:translate(-50%)rotate(45deg)}.marriage-connection i{color:var(--terracotta-deep);font:italic 10px Georgia,serif;position:absolute;top:-26px;left:50%;transform:translate(-50%)}.founder-descent{background:var(--sage);width:2px;height:64px;margin:0 auto 17px}.children-label{z-index:2;background:#f7efe5;padding:6px 13px;position:relative}.children-generation{grid-template-columns:repeat(7,290px);justify-content:center;gap:32px;padding-top:48px;display:grid;position:relative}.children-generation:before{content:"";border-top:2px solid var(--sage);position:absolute;top:0;left:145px;right:145px}.descendant-branch{flex-direction:column;align-items:center;min-height:400px;padding-top:16px;display:flex;position:relative}.descendant-branch:before{content:"";border-left:2px solid var(--sage);height:64px;position:absolute;top:-48px;left:50%}.branch-number{background:var(--olive);color:var(--white);letter-spacing:.16em;z-index:1;margin-bottom:11px;padding:5px 9px;font-size:7px;font-weight:800;position:relative}.branch-couple{grid-template-columns:132px 26px 132px;align-items:center;width:290px;display:grid}.empty-family-position{width:100%;min-height:1px;display:block}.branch-marriage{border-top:2px solid var(--terracotta-deep)}.branch-descent{background:var(--sage);width:2px;height:43px}.grandchildren-level{border-top:2px solid var(--sage);justify-items:center;gap:11px;width:100%;padding-top:12px;display:grid;position:relative}.grandchildren-level:before{content:"";border-left:2px solid var(--sage);height:13px;position:absolute;top:-13px;left:50%}.genealogy-person{border:1px solid var(--line);background:var(--white);text-align:center;cursor:pointer;width:132px;min-height:108px;color:var(--ink);align-content:center;justify-items:center;gap:7px;padding:13px 10px;transition:transform .2s,border-color .2s,box-shadow .2s;display:grid;position:relative;box-shadow:0 8px 22px #493c2b14}.genealogy-person:hover{border-color:var(--terracotta);transform:translateY(-2px)}.genealogy-person.founder{text-align:left;background:var(--olive);width:240px;min-height:118px;color:var(--white);grid-template-columns:54px 1fr;justify-items:start;padding:18px}.genealogy-avatar{background:var(--linen);width:42px;height:42px;color:var(--olive-deep);border-radius:50%;place-items:center;font:500 13px Georgia,serif;display:grid;overflow:hidden}.genealogy-avatar img{border-radius:inherit;object-fit:cover;object-position:center;width:100%;height:100%;display:block}.genealogy-person.founder .genealogy-avatar{width:54px;height:54px;color:var(--linen);background:#ffffff26}.genealogy-person.founder .genealogy-avatar img{border:2px solid #ffffff4d}.genealogy-copy small,.genealogy-copy b,.genealogy-copy i{display:block}.genealogy-copy small{color:var(--terracotta-deep);letter-spacing:.12em;text-transform:uppercase;font-size:6px;font-weight:800}.genealogy-copy b{margin-top:5px;font:500 13px/1.15 Georgia,serif}.genealogy-copy i{color:#817a70;margin-top:5px;font-size:7px;font-style:normal;line-height:1.35}.genealogy-person.founder small,.genealogy-person.founder i{color:#ffffffa6}.genealogy-person.founder b{font-size:16px}.genealogy-person.placeholder{border-style:dashed;border-color:var(--sage);box-shadow:none;background:#fffdf8a6}.genealogy-person.placeholder .genealogy-avatar{border:1px solid var(--terracotta);width:34px;height:34px;color:var(--terracotta-deep);background:0 0;font:400 17px sans-serif}.genealogy-person.placeholder b{color:var(--olive)}.genealogy-edit{background:var(--linen);color:var(--terracotta-deep);letter-spacing:.08em;text-transform:uppercase;border-radius:10px;padding:3px 5px;font-size:6px;font-weight:800;position:absolute;top:6px;right:7px}.genealogy-view{color:var(--olive-deep);letter-spacing:.09em;text-transform:uppercase;background:#f6efe5f0;border:1px solid #66705529;border-radius:999px;padding:4px 7px;font-size:6px;font-weight:800;line-height:1;position:absolute;top:6px;right:7px;box-shadow:0 3px 8px #493c2b14}.genealogy-view.current{background:var(--terracotta-deep);color:var(--white);border-color:#a8674d3d}.genealogy-person.founder .genealogy-view{color:var(--white);box-shadow:none;background:#ffffff24;border-color:#ffffff38}.genealogy-person.founder .genealogy-view.current{background:var(--terracotta-deep)}.grandchildren-level .genealogy-person{width:174px;min-height:92px}.grandchild-family{width:278px}.grandchild-couple{grid-template-columns:126px 26px 126px;align-items:center;display:grid}.grandchild-couple .genealogy-person{width:126px;min-height:96px}.mini-marriage{border-top:2px solid var(--terracotta-deep)}.add-descendant{border:1px dashed var(--sage);cursor:pointer;width:174px;min-height:82px;color:var(--olive);background:#fffdf8a3;align-content:center;place-items:center;display:grid}.add-descendant span{color:var(--terracotta-deep);font-size:17px}.add-descendant b{margin:2px 0;font:500 12px Georgia,serif}.add-descendant small{color:#8b8378;font-size:7px}.unplaced-relatives{border-top:1px solid var(--line);margin-top:78px;padding-top:38px}.unplaced-grid{flex-wrap:wrap;justify-content:center;gap:16px;display:flex}.unplaced-grid .genealogy-person{width:180px}.tree-add-footer{border:1px dashed var(--terracotta);cursor:pointer;background:#c28b6a14;justify-content:center;align-items:center;gap:12px;width:260px;min-height:78px;margin:60px auto 0;display:flex}.tree-add-footer>span{background:var(--terracotta-deep);color:#fff;border-radius:50%;place-items:center;width:31px;height:31px;display:grid}.tree-add-footer b,.tree-add-footer small{text-align:left;display:block}.tree-add-footer b{font:500 14px Georgia,serif}.tree-add-footer small{color:#81796e;margin-top:4px;font-size:7px}.tree-profile-detail{color:#625b51;gap:22px;display:grid}.tree-profile-hero{background:linear-gradient(138deg, var(--olive-deep), var(--olive) 70%, #788064);color:var(--white);border:1px solid #41493633;grid-template-columns:1fr;align-items:stretch;gap:24px;padding:clamp(22px,4vw,34px);display:grid;position:relative;overflow:hidden}.tree-profile-hero:after{content:"";pointer-events:none;border:1px solid #ffffff21;border-radius:50%;width:190px;height:190px;position:absolute;bottom:-108px;right:-82px;box-shadow:0 0 0 24px #ffffff06,0 0 0 49px #ffffff05}.tree-profile-primary{z-index:1;align-items:center;gap:20px;min-width:0;display:flex;position:relative}.tree-profile-monogram{width:94px;height:94px;color:var(--linen-light);object-fit:cover;object-position:center;background:#ffffff21;border:1px solid #ffffff4d;border-radius:50%;flex:0 0 94px;place-items:center;font:500 29px/1 Georgia,serif;display:grid;overflow:hidden;box-shadow:inset 0 0 0 6px #ffffff09}.tree-profile-monogram img{object-fit:cover;object-position:center;width:100%;height:100%;display:block}.tree-profile-identity{min-width:0}.tree-profile-identity small{color:var(--linen);letter-spacing:.18em;text-transform:uppercase;margin-bottom:8px;font-size:7px;font-weight:800;display:block}.tree-profile-identity h3{color:var(--white);letter-spacing:-.025em;overflow-wrap:normal;word-break:normal;-webkit-hyphens:none;hyphens:none;margin:0;font:500 clamp(24px,4vw,34px)/1.08 Georgia,serif}.tree-profile-identity p{color:#ffffffab;margin:9px 0 0;font:italic 11px/1.55 Georgia,serif}.tree-profile-linked-badge{width:max-content;color:var(--linen-light);letter-spacing:.08em;text-transform:uppercase;background:#ffffff1a;border:1px solid #ffffff38;border-radius:999px;margin-top:11px;padding:5px 8px;font-size:7px;font-weight:800;display:block}.tree-profile-meta{z-index:1;background:#ffffff24;border:1px solid #ffffff29;grid-template-columns:repeat(3,minmax(0,1fr));align-content:stretch;gap:1px;display:grid;position:relative}.tree-profile-meta>div{background:#30382870;min-width:0;padding:13px 14px}.tree-profile-meta small,.tree-profile-meta b{display:block}.tree-profile-meta small{color:#ffffff8a;letter-spacing:.14em;text-transform:uppercase;font-size:6px;font-weight:800}.tree-profile-meta b{color:var(--white);overflow-wrap:anywhere;margin-top:5px;font:500 11px/1.4 Georgia,serif}.tree-profile-bio{border-left:3px solid var(--terracotta);color:#625b51;white-space:pre-wrap;background:linear-gradient(90deg,#e7d9c87a,#f6efe594);margin:0;padding:21px 23px;font:400 13px/1.8 Georgia,serif}.tree-profile-bio small{color:var(--terracotta-deep);letter-spacing:.16em;text-transform:uppercase;margin-bottom:8px;font:800 7px/1.2 Avenir Next,Avenir,sans-serif;display:block}.tree-profile-bio p{margin:0}.tree-profile-gallery-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:9px;display:flex}.tree-profile-gallery-heading small{color:var(--terracotta-deep);letter-spacing:.15em;font-size:7px;font-weight:800}.tree-profile-gallery-heading span{color:#8b8377;font-size:8px}.tree-profile-gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.tree-profile-photo{aspect-ratio:4/3;border:1px solid var(--line);background:var(--linen);object-fit:cover;object-position:center;width:100%;margin:0;display:block;position:relative;overflow:hidden;box-shadow:0 7px 20px #493c2b14}.tree-profile-photo img{object-fit:cover;object-position:center;filter:saturate(.88);width:100%;height:100%;display:block}.tree-profile-photo button{color:#fff;text-transform:uppercase;cursor:pointer;background:#48342dd6;border:1px solid #ffffff8f;min-height:28px;padding:0 10px;font-size:7px;font-weight:800;position:absolute;top:8px;right:8px}.tree-profile-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:9px;padding-top:2px;display:flex}.tree-profile-actions>p{color:#827a6f;flex:250px;margin:0;font-size:9px;line-height:1.55}.tree-profile-empty{border:1px dashed var(--sage);color:#7b7469;text-align:center;background:#b6b49c17;align-content:center;place-items:center;gap:5px;min-height:116px;padding:22px;display:grid}.tree-profile-empty b{color:var(--olive-deep);font:500 15px Georgia,serif}.tree-profile-empty small{max-width:330px;font-size:8px;line-height:1.55}.tree-photo-manager{border:1px solid var(--line);background:#f6efe5a3;gap:13px;margin-top:4px;padding:18px;display:grid}.tree-photo-manager>div:first-child{justify-content:space-between;align-items:baseline;gap:14px;display:flex}.tree-photo-manager h3{color:var(--olive-deep);margin:0;font:500 17px Georgia,serif}.tree-photo-manager>div:first-child small{color:#8b8377;font-size:8px}.tree-photo-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.tree-photo-item{aspect-ratio:4/3;border:1px solid var(--line);background:var(--linen);min-width:0;margin:0;position:relative;overflow:hidden}.tree-photo-item img{object-fit:cover;object-position:center;filter:saturate(.88);width:100%;height:100%;display:block}.tree-photo-item figcaption{color:var(--olive-deep);text-transform:uppercase;background:#fbf7f0e6;padding:4px 7px;font-size:7px;font-weight:800;position:absolute;bottom:7px;left:7px}.tree-photo-delete{color:#fff;cursor:pointer;background:#48342dd6;border:1px solid #ffffffa3;border-radius:50%;place-items:center;width:29px;height:29px;font-size:13px;line-height:1;display:grid;position:absolute;top:7px;right:7px;box-shadow:0 4px 12px #251c1838}.tree-photo-delete:hover{background:#843d35}.tree-photo-delete:disabled{opacity:.5;cursor:wait}.tree-photo-upload{border:1px dashed var(--terracotta);min-height:112px;color:var(--olive-deep);text-align:center;cursor:pointer;background:linear-gradient(145deg,#e7d9c842,#fffdf8e0);align-content:center;place-items:center;gap:6px;padding:16px;transition:border-color .2s,background .2s;display:grid}.tree-photo-upload:hover{border-color:var(--terracotta-deep);background:#c28b6a14}.tree-photo-upload:focus-within{outline-offset:3px;outline:3px solid #c28b6a80}.tree-photo-upload input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute;overflow:hidden}.tree-photo-upload b,.tree-photo-upload small{display:block}.tree-photo-upload b{font:500 14px Georgia,serif}.tree-photo-upload small{color:#81796f;font-size:8px;line-height:1.5}.tree-form-note,.tree-edit-lock-note{color:#746d62;margin:0;padding:12px 14px;font-size:9px;line-height:1.65}.tree-form-note{border-left:3px solid var(--sage);background:#b6b49c1c}.tree-edit-lock-note{color:#74594c;background:#c28b6a14;border:1px solid #a8674d33}.tree-edit-lock-note b{color:var(--terracotta-deep)}.recipe-heading{padding-bottom:25px}.recipe-heading-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.book-progress{border:1px solid var(--line);background:var(--olive);color:var(--white);justify-content:space-between;align-items:center;gap:40px;padding:28px 32px;display:flex}.book-progress>div:first-child{align-items:center;gap:22px;display:flex}.book-icon{border:1px solid #fff6;place-items:center;width:54px;height:68px;font-size:22px;display:grid}.book-progress .eyebrow{color:var(--linen);margin-bottom:7px}.book-progress h2{margin:0;font:500 23px Georgia,serif}.book-progress p:last-child{color:#ffffffa6;margin:7px 0 0;font-size:10px}.progress-details{min-width:225px}.progress-details>b{font:500 27px Georgia,serif}.progress-details>b small{color:#fff9;font:400 11px sans-serif}.progress-bar{background:#ffffff2e;height:4px;margin:10px 0 7px}.progress-bar span{background:var(--terracotta);height:100%;display:block}.progress-details>small{color:#fff9;font-size:8px}.filter-row,.archive-controls{align-items:center;gap:8px;margin:35px 0 25px;display:flex}.filter-row>button,.archive-controls>div button{color:#7b7368;cursor:pointer;background:0 0;border:0;padding:10px 14px;font-size:10px}.filter-row>button.active,.archive-controls>div button.active{background:var(--linen);color:var(--olive-deep);font-weight:800}.tag-filter-row{flex-wrap:wrap;align-items:center;gap:7px;margin:-12px 0 26px;display:flex}.tag-filter-row>span{color:#92897d;letter-spacing:.16em;margin-right:5px;font-size:7px;font-weight:800}.tag-filter-row button{border:1px solid var(--line);background:var(--white);color:#766f65;cursor:pointer;border-radius:20px;padding:7px 11px;font-size:8px}.tag-filter-row button.active{border-color:var(--terracotta);color:var(--terracotta-deep);background:#c28b6a1f;font-weight:800}.recipe-search,.chat-search{border-bottom:1px solid var(--line);min-width:250px;color:var(--sage);margin-left:auto;padding:9px 13px}.recipe-search input,.chat-search input{width:calc(100% - 25px);color:var(--ink);background:0 0;border:0;outline:0;margin-left:7px;font-size:10px}.recipe-grid{grid-template-columns:repeat(3,1fr);gap:23px;display:grid}.recipe-card{border:1px solid var(--line);background:var(--white);box-shadow:0 10px 35px #5545310d}.recipe-image{background:var(--linen);height:220px;position:relative;overflow:hidden}.recipe-image-2{background:linear-gradient(135deg, var(--sand), var(--terracotta))}.recipe-image-3{background:linear-gradient(135deg, var(--olive-mist), var(--olive))}.recipe-image:before{content:"";border:1px solid #ffffff61;border-radius:50%;position:absolute;inset:28% 18%}.recipe-image img{object-fit:cover;z-index:1;filter:saturate(.78);width:100%;height:100%;position:relative}.recipe-image>span{z-index:2;color:var(--olive);letter-spacing:.14em;text-transform:uppercase;background:#fbf7f0e6;padding:7px 10px;font-size:7px;font-weight:800;position:absolute;top:15px;left:15px}.recipe-edit-chip{z-index:3;min-height:28px;color:var(--olive-deep);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;background:#fbf7f0eb;border:1px solid #41493647;padding:0 10px;font-size:8px;font-weight:800;position:absolute;top:15px;right:15px}.recipe-body{padding:24px}.recipe-meta{color:var(--terracotta-deep);justify-content:space-between;align-items:start;gap:12px;font-size:8px;font-weight:700;display:flex}.recipe-meta>span:first-child{color:var(--olive-deep);gap:3px;font:500 12px Georgia,serif;display:grid}.recipe-meta>span:first-child small{color:var(--terracotta-deep);letter-spacing:.13em;font:800 7px sans-serif}.recipe-body h2{color:var(--olive-deep);margin:12px 0 10px;font:500 24px Georgia,serif}.recipe-body p{color:#766f65;min-height:70px;font:italic 12px/1.7 Georgia,serif}.recipe-body button{border:0;border-top:1px solid var(--line);width:100%;color:var(--olive);cursor:pointer;background:0 0;justify-content:space-between;padding:15px 0 0;font-size:10px;font-weight:800;display:flex}.recipe-card-actions{border-top:1px solid var(--line);grid-template-columns:1fr auto;gap:18px;display:grid}.recipe-body .recipe-card-actions button{border-top:0;gap:12px;width:auto;padding-top:15px}.recipe-body .recipe-card-actions button:last-child{color:var(--terracotta-deep)}.recipe-book-meta{gap:8px;margin-top:12px;display:flex}.recipe-book-meta span{background:var(--linen-light);color:var(--olive);text-transform:uppercase;letter-spacing:.08em;padding:5px 8px;font-size:7px;font-weight:800}.recipe-tags{flex-wrap:wrap;gap:5px;margin:10px 0 0;display:flex}.recipe-tags span{color:var(--olive-deep);background:#b6b49c2e;border-radius:20px;padding:5px 8px;font-size:7px;font-weight:700}.detail-tags{margin:-7px 0 17px}.empty-recipes{border:1px dashed var(--sage);text-align:center;background:#fffdf8b3;grid-column:1/-1;padding:50px}.empty-recipes b{color:var(--olive-deep);font:500 20px Georgia,serif}.empty-recipes p{color:#797267;font-size:10px}.recipe-time-fields{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.recipe-tag-picker{border:1px solid var(--line);margin:0;padding:14px}.recipe-tag-picker legend{color:#6e675d;letter-spacing:.08em;text-transform:uppercase;padding:0 7px;font-size:9px;font-weight:800}.recipe-tag-picker legend small{color:#989084;letter-spacing:0;text-transform:none;margin-left:6px;font-size:7px;font-weight:500}.recipe-tag-picker>div{flex-wrap:wrap;gap:8px;display:flex}.recipe-tag-picker label{cursor:pointer;display:block}.recipe-tag-picker input{opacity:0;pointer-events:none;position:absolute}.recipe-tag-picker span{border:1px solid var(--line);background:var(--white);color:#756e64;letter-spacing:0;text-transform:none;border-radius:20px;padding:8px 11px;font-size:8px;font-weight:700;display:block}.recipe-tag-picker input:checked+span{border-color:var(--terracotta);color:var(--terracotta-deep);background:#c28b6a21}.recipe-lines{line-height:1.7;min-height:145px!important}.recipe-detail{color:#665f55}.recipe-detail-photo{object-fit:cover;filter:saturate(.86);width:100%;height:250px;margin:-4px 0 25px}.recipe-detail-heading{justify-content:space-between;align-items:center;gap:15px;margin:-13px 0 18px;display:flex}.recipe-detail-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.recipe-byline{color:var(--terracotta-deep);letter-spacing:.1em;text-transform:uppercase;margin:-13px 0 18px;font-size:9px;font-weight:800}.recipe-byline small{color:#91887b;letter-spacing:.14em;margin-bottom:5px;font-size:7px;display:block}.recipe-detail-heading .recipe-byline{margin:0}.contribution-credit{color:var(--olive);letter-spacing:.08em;text-transform:uppercase;margin-top:9px;font-size:8px;font-weight:800;display:block}.detail-credit{margin:16px 0}.compact-button{min-height:36px;padding:0 14px;font-size:9px}.delete-confirmation{gap:24px;display:grid}.delete-confirmation>p{color:#6e5a54;background:#984d4314;border-left:3px solid #984d43;margin:0;padding:18px;font:400 13px/1.7 Georgia,serif}.delete-confirmation>div{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.delete-recipe-link{color:#984d43;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #984d4373;margin-top:18px;padding:10px 0;font-size:10px;font-weight:800}.recipe-story{border-left:3px solid var(--terracotta);background:var(--linen-light);padding:18px 20px;font:italic 13px/1.7 Georgia,serif}.recipe-detail-meta{border-block:1px solid var(--line);grid-template-columns:repeat(3,1fr);margin:22px 0;display:grid}.recipe-detail-meta span{text-align:center;padding:15px;font:500 14px Georgia,serif}.recipe-detail-meta span+span{border-left:1px solid var(--line)}.recipe-detail-meta small{color:var(--terracotta-deep);letter-spacing:.14em;margin-bottom:5px;font:800 7px sans-serif;display:block}.recipe-columns{grid-template-columns:.85fr 1.15fr;gap:28px;display:grid}.recipe-columns h3{border-bottom:1px solid var(--line);color:var(--olive-deep);padding-bottom:9px;font:500 21px Georgia,serif}.recipe-columns ul,.recipe-columns ol{margin:0;padding-left:20px}.recipe-columns li{margin:0 0 10px;font:400 11px/1.55 Georgia,serif}.cook-note{border:1px solid var(--line);background:#b6b49c21;margin-top:22px;padding:17px}.cook-note b{color:var(--olive);font:500 14px Georgia,serif}.cook-note p{white-space:pre-line;margin:6px 0 0;font-size:10px;line-height:1.6}.archive-hero{background:var(--olive);min-height:330px;color:var(--white);grid-template-columns:1.05fr .95fr;margin-bottom:40px;display:grid}.archive-hero img{object-fit:cover;filter:saturate(.6)sepia(.12);width:100%;height:100%;max-height:365px}.archive-hero>div{align-self:center;padding:45px}.archive-hero h2{margin:0;font:500 33px/1.2 Georgia,serif}.archive-hero p:not(.eyebrow){color:#ffffffb3;font:400 13px/1.7 Georgia,serif}.archive-hero .secondary-button{color:#fff;border-color:#ffffff73;margin-top:10px}.archive-controls{justify-content:space-between}.archive-controls>div{gap:6px;display:flex}.archive-contribute{border:1px solid var(--line);background:#fffdf8b8;margin:38px 0;padding:31px}.archive-contribute-heading{justify-content:space-between;align-items:end;gap:25px;margin-bottom:22px;display:flex}.archive-contribute-heading .eyebrow{margin:0}.archive-contribute-heading h2,.section-mini-heading h2{color:var(--olive-deep);margin:0;font:500 25px Georgia,serif}.archive-action-grid{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.archive-action-grid>button{border:1px solid var(--line);background:var(--white);text-align:left;cursor:pointer;grid-template-columns:31px 1fr 20px;align-items:center;gap:10px;min-height:94px;padding:16px;transition:all .2s;display:grid}.archive-action-grid>button:hover{border-color:var(--terracotta);transform:translateY(-2px);box-shadow:0 10px 24px #493c2b14}.archive-action-grid>button>span{background:var(--linen);width:30px;height:30px;color:var(--terracotta-deep);border-radius:50%;place-items:center;display:grid}.archive-action-grid b,.archive-action-grid small{display:block}.archive-action-grid b{color:var(--olive-deep);font:500 13px Georgia,serif}.archive-action-grid small{color:#80786d;margin-top:5px;font-size:8px;line-height:1.45}.archive-action-grid i{color:var(--terracotta-deep);font-style:normal}.family-contributions{margin:44px 0}.section-mini-heading{justify-content:space-between;align-items:end;margin-bottom:20px;display:flex}.contribution-grid{grid-template-columns:repeat(3,1fr);gap:15px;display:grid}.contribution-card{border:1px solid var(--line);background:var(--white);text-align:left;cursor:pointer;min-height:210px;padding:20px;position:relative;overflow:hidden}.contribution-card:hover{border-color:var(--terracotta);box-shadow:0 12px 30px #493c2b14}.contribution-card .contribution-icon{background:var(--linen);width:31px;height:31px;color:var(--terracotta-deep);border-radius:50%;place-items:center;display:grid}.contribution-card>small{color:var(--terracotta-deep);letter-spacing:.14em;text-transform:uppercase;margin-top:18px;font-size:7px;font-weight:800;display:block}.contribution-card>b{color:var(--olive-deep);margin-top:8px;font:500 19px Georgia,serif;display:block}.contribution-card>time{color:var(--terracotta-deep);letter-spacing:.08em;text-transform:uppercase;margin-top:7px;font-size:8px;font-weight:800;display:block}.contribution-card>p{color:#756f64;font-size:10px;line-height:1.6}.contribution-card>i{color:var(--olive);margin-top:16px;font-size:8px;font-style:normal;font-weight:800;display:block}.contribution-card>img{object-fit:cover;width:100%;height:120px;margin-top:13px}.contribution-card>audio{width:100%;height:38px;margin-top:13px}.timeline{border-top:1px solid var(--line)}.uploaded-timeline-section{border:1px solid var(--line);background:#fffdf8b8;margin:52px 0;padding:32px}.uploaded-timeline{background:var(--white);padding:0 24px}.archive-chapters-heading{margin-top:58px}.timeline-item{border-bottom:1px solid var(--line);grid-template-columns:35px 115px 1fr;gap:20px;padding:35px 0;display:grid}.timeline-marker{position:relative}.timeline-marker:before{content:"";background:var(--sand);width:1px;position:absolute;top:-35px;bottom:-35px;left:11px}.timeline-marker span{border:3px solid var(--paper);background:var(--terracotta);width:11px;height:11px;box-shadow:0 0 0 1px var(--terracotta);border-radius:50%;position:absolute;top:8px;left:6px}.timeline-marker.history span{background:var(--sage);box-shadow:0 0 0 1px var(--sage)}.timeline-marker.journey span,.timeline-marker.today span{background:var(--olive);box-shadow:0 0 0 1px var(--olive)}.timeline-year{color:var(--terracotta-deep);font:italic 500 29px Georgia,serif}.timeline-copy h2{color:var(--olive-deep);margin:3px 0 10px;font:500 23px Georgia,serif}.timeline-copy>p:not(.eyebrow){color:#766f65;max-width:750px;margin:0;font:400 13px/1.7 Georgia,serif}.timeline-copy button{color:var(--terracotta-deep);cursor:pointer;background:0 0;border:0;padding:12px 0 0;font-size:9px;font-weight:800}.messages-page{max-width:1240px}.messages-page .page-heading{margin-bottom:30px}.messages-page .page-heading h1{font-size:46px}.chat-shell{border:1px solid var(--line);background:var(--white);height:min(700px,100vh - 245px);min-height:610px;box-shadow:var(--shadow);grid-template-columns:260px 1fr;display:grid}.chat-sidebar{border-right:1px solid var(--line);background:#f6efe559;padding:25px 17px}.channel-label{letter-spacing:.17em;color:#92897d;margin:22px 9px 9px;font-size:7px;font-weight:800}.channel{cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:10px;width:100%;height:42px;padding:0 10px;font-size:10px;display:flex}.channel.active{background:var(--linen);color:var(--olive-deep)}.channel>span:first-child{text-align:center;width:25px;color:var(--terracotta-deep)}.channel b{font-weight:600}.channel i{background:var(--terracotta);color:#fff;border-radius:50%;place-items:center;min-width:17px;height:17px;margin-left:auto;font-size:7px;font-style:normal;display:grid}.family-room-note{border-left:3px solid var(--sage);background:#b6b49c1f;margin:24px 7px 0;padding:17px 14px}.family-room-note b{color:var(--olive-deep);font:500 13px/1.3 Georgia,serif}.family-room-note p{color:#7b7368;margin:7px 0 0;font-size:9px;line-height:1.65}.family-room-members{border-top:1px solid var(--line);margin:25px 8px 0;padding-top:18px}.family-room-members .mini-avatars{min-height:30px}.family-room-members .avatar{border:2px solid var(--linen-light);margin-left:-6px}.family-room-members .avatar:first-child{margin-left:0}.family-room-members p{color:#81796f;margin:10px 0 0;font-size:8px;line-height:1.5}.family-room-members p b{color:var(--olive-deep)}.conversation{grid-template-rows:76px minmax(0,1fr) auto;min-width:0;min-height:0;display:grid}.conversation-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:0 27px;display:flex}.conversation-header>div{align-items:center;gap:12px;display:flex}.channel-icon{background:var(--linen);width:37px;height:37px;color:var(--olive);border-radius:50%;place-items:center;display:grid}.conversation-header h2{margin:0;font:500 17px Georgia,serif}.conversation-header p{color:#8b8377;margin:3px 0 0;font-size:8px}.conversation-live{color:var(--olive);letter-spacing:.08em;text-transform:uppercase;font-size:8px;font-weight:800}.conversation-live i{background:#7d9d69;border-radius:50%;width:7px;height:7px;margin-right:5px;display:inline-block}.message-date{color:#92897d;align-items:center;gap:8px;font-size:8px;display:flex}.message-date:before,.message-date:after{content:"";background:var(--line);flex:1;height:1px}.message-date time{padding:0 4px}.message-list{scroll-behavior:smooth;min-height:0;padding:12px 28px 18px;overflow:auto}.message-group+.message-group .message-date{margin-top:12px}.message{border:1px solid #0000;gap:11px;max-width:min(74%,690px);margin:17px 0;padding:5px;transition:background .25s,border-color .25s;display:flex}.message.mine{flex-direction:row-reverse;margin-left:auto}.message>div>p{margin:0 0 5px}.message>div>p b{font-size:9px}.message>div>p time{color:#9a9286;margin-left:8px;font-size:7px}.message-body{background:var(--linen-light);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:0 10px 10px;padding:11px 14px;font:400 12px/1.6 Georgia,serif;display:block}.message.mine .message-body{background:#98a08440;border-radius:10px 0 10px 10px}.message.highlighted{background:#c28b6a1a;border-color:#a8674d80}.message-reply-quote{border:0;border-left:3px solid var(--sage);color:#6f685d;text-align:left;cursor:pointer;background:#b6b49c1c;width:100%;max-width:410px;margin:0 0 4px;padding:8px 11px;display:block}.message-reply-quote small,.message-reply-quote span{display:block}.message-reply-quote small{color:var(--olive);letter-spacing:.06em;text-transform:uppercase;font-size:7px;font-weight:800}.message-reply-quote span{white-space:nowrap;text-overflow:ellipsis;margin-top:3px;font-size:9px;overflow:hidden}.message-reply-action{color:var(--olive);cursor:pointer;opacity:.72;background:0 0;border:0;padding:5px 2px 0;font-size:8px;font-weight:800}.message-reply-action:hover{opacity:1;text-underline-offset:3px;text-decoration:underline}.chat-state{color:#7b7368;text-align:center;align-content:center;place-items:center;gap:8px;min-height:100%;padding:38px;display:grid}.chat-state>span:not(.chat-loader){color:var(--terracotta-deep);font:500 25px Georgia,serif}.chat-state b{color:var(--olive-deep);font:500 18px Georgia,serif}.chat-state p{max-width:430px;margin:0;font-size:10px;line-height:1.65}.chat-state button{margin-top:8px}.chat-loader{border:2px solid var(--linen);border-top-color:var(--terracotta-deep);border-radius:50%;width:22px;height:22px;animation:.8s linear infinite import-spin}.message-composer{border:1px solid var(--line);background:var(--white);margin:0 24px 14px;position:relative}.composer-row{grid-template-columns:44px minmax(0,1fr) auto;align-items:end;display:grid}.message-composer textarea{resize:vertical;background:0 0;border:0;outline:0;min-height:51px;max-height:130px;padding:16px 8px 10px;font-size:11px;line-height:1.5}.mention-button{width:44px;min-height:48px;color:var(--terracotta-deep);cursor:pointer;background:0 0;border:0;font-size:18px;font-weight:800}.send-button{background:var(--terracotta-deep);color:#fff;cursor:pointer;border:0;min-height:38px;margin:7px;padding:10px 15px;font-size:9px}.send-button:disabled{opacity:.45;cursor:not-allowed}.composer-reply{border-bottom:1px solid var(--line);border-left:3px solid var(--sage);background:#b6b49c1a;justify-content:space-between;align-items:center;gap:13px;min-width:0;padding:9px 10px 9px 14px;display:flex}.composer-reply>span{min-width:0}.composer-reply small,.composer-reply b{display:block}.composer-reply small{color:var(--olive);letter-spacing:.08em;font-size:7px}.composer-reply b{color:#6e675d;white-space:nowrap;text-overflow:ellipsis;margin-top:3px;font:400 9px/1.4 Georgia,serif;overflow:hidden}.composer-reply button{color:#746d62;cursor:pointer;background:0 0;border:0;flex:none;width:31px;height:31px}.composer-mentions{flex-wrap:wrap;gap:5px;padding:7px 10px 0;display:flex}.composer-mentions>span{color:var(--olive-deep);background:#98a0842e;border-radius:999px;padding:5px 7px;font-size:8px}.composer-mentions button{cursor:pointer;background:0 0;border:0;margin-left:4px;padding:0}.composer-help{color:#9a9286;justify-content:space-between;gap:10px;padding:0 10px 7px 44px;font-size:7px;display:flex}.chat-send-error{color:#934b43;background:#934b430f;border-top:1px solid #934b4333;margin:0;padding:8px 11px;font-size:8px}.mention-listbox{z-index:10;border:1px solid var(--line);background:var(--white);width:min(360px,100% - 16px);max-height:270px;padding:6px;position:absolute;bottom:calc(100% + 7px);left:8px;overflow:auto;box-shadow:0 17px 45px #3b31242e}.mention-listbox>p{color:#81796f;margin:0;padding:14px;font-size:9px}.mention-listbox>button{text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:9px;width:100%;min-height:48px;padding:7px 9px;display:flex}.mention-listbox>button.active,.mention-listbox>button:hover{background:var(--linen-light)}.mention-listbox b,.mention-listbox small{display:block}.mention-listbox b{color:var(--olive-deep);font-size:9px}.mention-listbox small{color:#8b8377;margin-top:2px;font-size:7px}footer{background:var(--olive-deep);min-height:180px;color:var(--white);grid-template-columns:1fr auto 1fr;align-items:center;gap:30px;padding:44px clamp(24px,5vw,76px);display:grid}.footer-brand{align-items:center;gap:14px;display:flex}.footer-brand .mark{color:var(--linen);border-color:var(--linen)}.footer-brand b{font:italic 500 17px Georgia,serif}.footer-brand p,footer>p{color:#ffffff8c;font-size:9px}footer nav{gap:24px;display:flex}footer nav button{color:#ffffffb8;cursor:pointer;background:0 0;border:0;font-size:9px}footer>p{text-align:right}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#32302a94;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.modal{background:var(--paper);width:min(600px,100%);max-height:90vh;padding:42px;position:relative;overflow:auto;box-shadow:0 30px 90px #25201947}.modal-close{cursor:pointer;color:#847c70;background:0 0;border:0;width:33px;height:33px;font-size:24px;position:absolute;top:14px;right:17px}.modal h2{color:var(--olive-deep);margin:0 0 24px;font:500 34px/1.15 Georgia,serif}.modal-lead{color:#746d62;font:italic 13px/1.7 Georgia,serif}.modal-form{gap:17px;display:grid}.modal-form label{color:#6e675d;letter-spacing:.08em;text-transform:uppercase;gap:7px;font-size:9px;font-weight:800;display:grid}.modal-form label>small,.modal-form .field-help{color:#92897d;letter-spacing:0;text-transform:none;font-size:8px;font-weight:500;line-height:1.45}.modal-form input,.modal-form textarea,.modal-form select{border:1px solid var(--line);background:var(--white);width:100%;color:var(--ink);letter-spacing:0;text-transform:none;padding:12px 13px;font-size:12px}.modal-form button:disabled{opacity:.45;cursor:not-allowed;transform:none}.modal-form textarea{resize:vertical;min-height:95px}.form-row{grid-template-columns:1fr 1fr;gap:14px;display:grid}.check-label{border:1px solid var(--line);background:var(--white);cursor:pointer;flex-direction:row;align-items:center;min-height:44px;padding:12px 13px;grid-template-columns:none!important;gap:9px!important;display:flex!important}.check-label input{width:auto;margin:0}.upload-box{border:1px dashed var(--sage);text-align:center;cursor:pointer;background:#b6b49c1a;place-items:center;min-height:72px;color:var(--olive)!important;display:grid!important}.upload-box input{display:none}.recipe-photo-upload{padding-top:3px}.recipe-photo-upload>span:first-child{justify-content:space-between;align-items:baseline;gap:15px;display:flex}.recipe-photo-upload>span:first-child small{color:#92897d;letter-spacing:0;text-transform:none;font-size:8px;font-weight:500}.recipe-photo-upload>img{object-fit:cover;border:1px solid var(--line);filter:saturate(.86);width:100%;height:210px}.recipe-photo-upload .upload-box{min-height:52px}.recipe-save-error{background:#934b4312;border-left:3px solid #934b43;padding:11px 13px}.pdf-importer{gap:17px;display:grid}.pdf-upload-box{border:1px dashed var(--terracotta);text-align:center;cursor:pointer;background:linear-gradient(145deg,#e7d9c84d,#fffdf8eb);align-content:center;place-items:center;gap:9px;min-height:205px;padding:28px;display:grid}.pdf-upload-box:hover{background:#e7d9c85c}.pdf-upload-box.reading{cursor:wait}.pdf-upload-box input{display:none}.pdf-upload-box b{color:var(--olive-deep);font:500 18px Georgia,serif}.pdf-upload-box small{color:#81796f;font-size:9px}.pdf-upload-icon{border:1px solid var(--terracotta-deep);background:var(--paper);width:58px;height:67px;color:var(--terracotta-deep);letter-spacing:.12em;place-items:center;font-size:10px;font-weight:900;display:grid;position:relative}.pdf-upload-icon:after{content:"";border-left:1px solid var(--terracotta-deep);border-bottom:1px solid var(--terracotta-deep);background:var(--linen);width:15px;height:15px;position:absolute;top:-1px;right:-1px}.import-progress{color:var(--olive);letter-spacing:.07em;text-transform:uppercase;align-items:center;gap:10px;font-size:9px;font-weight:800;display:flex}.import-progress span{border:2px solid var(--linen);border-top-color:var(--terracotta-deep);border-radius:50%;width:13px;height:13px;animation:.8s linear infinite import-spin}.import-privacy{border-left:3px solid var(--sage);background:#b6b49c1a;padding:15px 17px}.import-privacy b{color:var(--olive-deep);font:500 13px Georgia,serif}.import-privacy p{color:#797267;margin:5px 0 0;font-size:9px;line-height:1.6}@keyframes import-spin{to{transform:rotate(360deg)}}.contribution-types{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.contribution-types button{border:1px solid var(--line);background:var(--white);cursor:pointer;min-height:70px;color:var(--sage);align-content:center;place-items:center;gap:5px;display:grid}.contribution-types button b{color:var(--ink);font-size:8px}.contribution-types button.selected{border-color:var(--terracotta);color:var(--terracotta-deep);background:#c28b6a1a}.voice-recorder{border:1px solid var(--line);background:#e7d9c838;gap:12px;padding:17px;display:grid}.recording-status{color:var(--olive);text-transform:uppercase;letter-spacing:.1em;align-items:center;gap:8px;font-size:9px;font-weight:800;display:flex}.recording-status span{background:var(--sage);border-radius:50%;width:9px;height:9px}.recording-status.recording span{background:#b9554f;animation:1.3s infinite record-pulse;box-shadow:0 0 0 5px #b9554f21}.recording-status.ready span{background:var(--olive)}.stop-recording{color:#fff;cursor:pointer;background:#a24f48;border:1px solid #a24f48;min-height:44px}.voice-recorder audio{width:100%}.form-error{color:#934b43;margin:0;font-size:9px;line-height:1.5}.archive-detail{background:var(--linen-light);padding:24px}.archive-detail-mark{background:var(--olive);color:#fff;border-radius:50%;place-items:center;width:42px;height:42px;display:grid}.archive-detail p{color:#6e675d;margin:20px 0;font:400 14px/1.8 Georgia,serif}@keyframes record-pulse{0%,to{box-shadow:0 0 0 3px #b9554f1f}50%{box-shadow:0 0 0 8px #b9554f0d}}.access-summary{background:var(--linen-light);justify-content:space-between;align-items:center;margin-bottom:20px;padding:16px;display:flex}.access-summary>div{align-items:center;gap:11px;display:flex}.access-summary p,.access-summary b,.access-summary small{margin:0;display:block}.access-summary b{font:500 14px Georgia,serif}.access-summary small{color:#7e766b;margin-top:3px;font-size:8px}.secure-label{color:var(--olive);letter-spacing:.14em;font-size:8px;font-weight:800}.access-note{border-left:3px solid var(--sage);background:#b6b49c1a;margin-top:22px;padding:15px}.access-note b{color:var(--olive-deep);font:500 13px Georgia,serif}.access-note p{color:#797267;margin:5px 0 0;font-size:9px;line-height:1.6}.access-manager{gap:20px;display:grid}.access-manager .access-summary,.access-manager .access-note,.access-manager .modal-lead{margin:0}.access-form{border-bottom:1px solid var(--line);padding-bottom:20px}.password-row{align-items:end}.password-generator{border:0;border-bottom:1px solid var(--olive);width:max-content;color:var(--olive);cursor:pointer;background:0 0;padding:3px 0;font-size:9px;font-weight:800}.self-password-panel{border:1px solid var(--line);background:var(--linen-light);padding:18px}.self-password-panel .modal-lead{margin-bottom:13px}.password-form{grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:end}.password-form.owner-password-form{grid-template-columns:repeat(2,minmax(0,1fr)) auto}.password-form label{min-width:0}.password-form button{white-space:nowrap;min-height:43px}.owner-password-note{color:#746d62;margin-top:9px;font-size:9px;line-height:1.6;display:block}.credentials-ready{background:#b6b49c1f;border:1px solid #66705547;padding:18px}.credentials-ready>b{color:var(--olive-deep);font:500 15px Georgia,serif}.credentials-ready>p{color:#746d62;margin:7px 0 15px;font-size:10px;line-height:1.6}.credentials-ready dl{background:var(--line);gap:1px;margin:0 0 15px;display:grid}.credentials-ready dl>div{background:var(--white);min-width:0;padding:10px 12px}.credentials-ready dt{color:#81796f;letter-spacing:.1em;text-transform:uppercase;font-size:8px;font-weight:800}.credentials-ready dd{color:var(--ink);overflow-wrap:anywhere;margin:4px 0 0;font:500 12px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace}.credentials-ready>div{flex-wrap:wrap;gap:9px;display:flex}.credentials-ready>div button{min-height:38px}.access-signout,.access-gate-action{justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.remove-access-confirm{background:#984d430f;border:1px solid #984d4359;padding:18px}.remove-access-confirm>b{color:#843d35;overflow-wrap:anywhere;font:500 15px Georgia,serif}.remove-access-confirm p{color:#746d62;margin:7px 0 15px;font-size:10px;line-height:1.6}.remove-access-confirm>div{flex-wrap:wrap;gap:9px;display:flex}.approved-family{gap:8px;display:grid}.access-list-heading{justify-content:space-between;align-items:baseline;padding-bottom:7px;display:flex}.access-list-heading b{color:var(--olive-deep);font:500 15px Georgia,serif}.access-list-heading small{color:#81796f;font-size:9px}.access-entry{border-top:1px solid var(--line);grid-template-columns:auto 1fr auto;align-items:center;gap:11px;min-width:0;padding:11px 0;display:grid}.access-entry>div{min-width:0}.access-entry b,.access-entry small{overflow-wrap:anywhere;display:block}.access-entry b{font-size:10px}.access-entry small{color:#81796f;margin-top:3px;font-size:8px}.access-entry button{color:#934b43;cursor:pointer;text-underline-offset:3px;background:0 0;border:0;padding:7px;font-size:9px;text-decoration:underline}.owner-label{color:var(--olive);letter-spacing:.12em;font-size:8px;font-weight:800}.access-empty{background:var(--linen-light);color:#7a7368;margin:0;padding:15px;font-size:10px}.access-signout{width:max-content}.access-gate{background:radial-gradient(#66705512 .6px, transparent .6px), linear-gradient(135deg, var(--linen-light), var(--paper) 58%, #b6b49c3d);background-size:9px 9px,auto;place-items:center;min-height:100vh;padding:28px;display:grid}.access-gate-card{border:1px solid var(--line);width:min(560px,100%);box-shadow:var(--shadow);text-align:center;background:#fffdf8f0;padding:clamp(38px,7vw,72px)}.access-gate-mark{border:1px solid var(--terracotta);width:66px;height:66px;color:var(--terracotta-deep);border-radius:50%;place-items:center;margin:0 auto 27px;font:italic 700 37px Georgia,serif;display:grid}.access-gate-card h1{color:var(--olive-deep);letter-spacing:-.03em;margin:0;font:500 clamp(30px,6vw,45px)/1.08 Georgia,serif}.access-gate-card>p:not(.eyebrow){color:#6f685d;margin:24px 0;font:400 15px/1.75 Georgia,serif}.access-gate-card strong{overflow-wrap:anywhere}.access-gate-action{margin-bottom:22px}.access-gate-card>small{color:#81796f;font-size:9px;line-height:1.6;display:block}.login-card{width:min(610px,100%)}.family-login-form{text-align:left;gap:10px;margin:0 auto 18px;display:grid}.family-login-form label{color:#6e675d;letter-spacing:.1em;text-transform:uppercase;font-size:9px;font-weight:800}.family-login-form input{border:1px solid var(--line);background:var(--white);width:100%;min-height:48px;color:var(--ink);padding:12px 14px;font-size:14px}.family-login-form button{min-height:48px}.login-error{text-align:left;background:#934b430f;margin:0 0 18px;padding:10px 12px}.access-entry{align-items:start}.access-entry-identity{padding-top:4px}.access-status{width:max-content;color:var(--olive);letter-spacing:.08em;text-transform:uppercase;background:#6670551a;border-radius:999px;padding:4px 7px;font-weight:800;margin-top:7px!important;font-size:7px!important;display:inline-flex!important}.access-status.invited{color:var(--terracotta-deep);background:#c28b6a1f}.access-status.suspended{color:#843d35;background:#934b431a}.access-entry-controls{grid-template-columns:1fr 1fr;gap:7px;width:min(290px,42vw);display:grid}.access-entry-controls select{border:1px solid var(--line);background:var(--white);min-width:0;color:var(--ink);padding:8px;font-size:8px}.access-entry-controls>div{flex-wrap:wrap;grid-column:1/-1;justify-content:flex-end;gap:4px;display:flex}.access-entry-controls .profile-name-control{grid-template-columns:1fr auto;gap:6px;display:grid}.profile-name-control input{border:1px solid var(--line);background:var(--white);min-width:0;color:var(--ink);padding:8px;font-size:9px}.access-entry-controls .profile-name-control button{border:1px solid var(--line);background:var(--linen-light);white-space:nowrap;padding:7px 9px}.access-entry-controls .owner-label{grid-column:1/-1;justify-self:end;padding:5px 0}.access-entry-controls button{color:var(--olive);padding:5px 7px;text-decoration:none}.access-entry-controls button:hover{text-underline-offset:3px;text-decoration:underline}.access-entry-controls button.remove-link{color:#934b43}.access-entry-controls button:disabled,.access-entry-controls select:disabled{opacity:.45;cursor:wait}.access-entry-controls .inline-password-form{border:1px solid var(--line);background:var(--linen-light);grid-column:1/-1;grid-template-columns:1fr 1fr;gap:7px;padding:10px;display:grid}.inline-password-form label{color:#6e675d;letter-spacing:.06em;text-transform:uppercase;font-size:8px;font-weight:800}.inline-password-form input{border:1px solid var(--line);background:var(--white);width:100%;color:var(--ink);margin-top:4px;padding:8px;font-size:9px}.inline-password-form button{border:1px solid var(--line);background:var(--white);text-decoration:none}.profile-preview{background:var(--linen-light);align-items:center;gap:18px;margin-bottom:23px;padding:22px;display:flex}.profile-monogram{background:var(--sage);color:#fff;border-radius:50%;place-items:center;width:75px;height:75px;font:500 24px Georgia,serif;display:grid}.profile-preview h3{margin:0;font:500 18px Georgia,serif}.profile-preview p{color:#746d62;font-size:10px;line-height:1.6}.my-tree-profile{background:linear-gradient(135deg,#b6b49c21,#f6efe5bd);border:1px solid #66705538;gap:16px;margin-bottom:22px;padding:20px;display:grid}.my-tree-profile-summary{align-items:center;gap:16px;min-width:0;display:flex}.my-tree-profile-summary>div{flex:1;min-width:0}.my-tree-profile-summary small,.my-tree-profile-summary b,.my-tree-profile-summary p{display:block}.my-tree-profile-summary small{color:var(--terracotta-deep);letter-spacing:.15em;text-transform:uppercase;margin-bottom:5px;font-size:7px;font-weight:800}.my-tree-profile-summary b{color:var(--olive-deep);overflow-wrap:anywhere;font:500 17px/1.25 Georgia,serif}.my-tree-profile-summary p{color:#7b7368;margin:5px 0 0;font-size:9px;line-height:1.55}.my-tree-profile-photo{background:var(--sage);width:68px;height:68px;color:var(--white);object-fit:cover;object-position:center;border:1px solid #66705540;border-radius:50%;flex:0 0 68px;place-items:center;font:500 21px Georgia,serif;display:grid;overflow:hidden;box-shadow:0 5px 15px #493c2b1c}.my-tree-profile-photo img{object-fit:cover;object-position:center;width:100%;height:100%;display:block}.my-tree-profile>.secondary-button,.my-tree-profile>.primary-button{width:max-content;min-height:40px}.full{width:100%}.toast{z-index:120;background:var(--olive-deep);color:#fff;box-shadow:var(--shadow);padding:15px 19px;font-size:11px;position:fixed;bottom:25px;right:25px}@media print{body *{visibility:hidden!important}.modal-backdrop,.modal-backdrop *{visibility:visible!important}.modal-backdrop{-webkit-backdrop-filter:none;backdrop-filter:none;background:#fff;padding:0;display:block;position:absolute;inset:0}.modal{width:100%;max-height:none;box-shadow:none;background:#fff;padding:24px;overflow:visible}.modal-close,.recipe-detail-actions{display:none!important}.recipe-detail-photo{height:220px}}@media (width<=1100px){.site-header{grid-template-columns:200px 1fr auto}.member-pill>span:not(.avatar){display:none}.main-nav{gap:15px}.hero{grid-template-columns:1fr 1fr;gap:45px}.home-grid{grid-template-columns:1fr 1fr}.archive-feature{grid-column:1/-1}.recipe-grid,.archive-action-grid,.contribution-grid{grid-template-columns:1fr 1fr}}@media (width<=820px){.site-header{grid-template-columns:1fr auto auto;gap:8px;height:74px}.member-pill{display:none}.header-actions{gap:0}.notification-button{width:40px;height:40px}.notification-popover{max-height:calc(100dvh - 82px);position:fixed;top:67px;right:12px}.mobile-menu{border:1px solid var(--line);color:var(--olive);background:0 0;padding:9px 12px;font-size:10px;display:block}.main-nav{background:var(--paper);border-bottom:1px solid var(--line);box-shadow:var(--shadow);flex-direction:column;align-items:stretch;gap:0;padding:12px 24px 22px;display:none;position:absolute;top:74px;left:0;right:0}.main-nav.open{display:flex}.main-nav button{text-align:left;padding:12px 0}.main-nav button:after{display:none}.main-nav .mobile-profile-button{border:1px solid var(--line);background:var(--linen-light);color:var(--olive-deep);align-items:center;gap:11px;margin-top:10px;padding:13px 14px;display:flex}.mobile-profile-button>span:last-child{min-width:0}.mobile-profile-button b,.mobile-profile-button small{display:block}.mobile-profile-button b{font-size:10px}.mobile-profile-button small{color:#81796f;overflow-wrap:anywhere;margin-top:3px;font-size:8px}.hero{grid-template-columns:1fr;padding-top:58px}.hero-image-wrap{height:500px;min-height:0}.home-grid{grid-template-columns:1fr}.archive-feature{grid-column:auto}.contribute-banner{grid-template-columns:1fr}.split-heading,.recipe-heading,.archive-heading{align-items:start;display:grid}.recipe-heading-actions{justify-content:flex-start}.heading-actions{justify-content:start}.calendar-layout{grid-template-columns:1fr}.calendar-panel{overflow-x:auto}.weekday-row,.month-grid{min-width:690px}.book-progress{align-items:start}.recipe-grid,.archive-hero{grid-template-columns:1fr}.archive-hero img{max-height:280px}.archive-contribute-heading{flex-direction:column;align-items:start}.chat-shell{grid-template-columns:1fr}.chat-sidebar{display:none}.conversation{min-height:610px}.tree-profile-hero{grid-template-columns:1fr}.tree-profile-meta{grid-template-columns:repeat(3,minmax(0,1fr))}.tree-profile-gallery,.tree-photo-list{grid-template-columns:repeat(2,minmax(0,1fr))}.tree-profile-gallery>:only-child,.tree-photo-list>:only-child{max-width:360px}.access-summary{align-items:flex-start;gap:12px}.access-summary>div,.access-summary p{min-width:0}.access-summary small{overflow-wrap:anywhere}.password-form{grid-template-columns:1fr 1fr}footer{grid-template-columns:1fr}footer nav{flex-wrap:wrap}footer>p{text-align:left}}@media (width<=560px){.hero{padding-left:22px;padding-right:22px}.hero h1{font-size:52px}.hero-image-wrap{height:370px;padding:10px 10px 25px 18px}.photo-note{width:195px}.button-row{flex-direction:column;align-items:flex-start;gap:14px}.home-grid,.interior{padding-top:45px}.page-heading h1{font-size:43px}.heading-actions{flex-wrap:wrap}.tree-tools{width:max-content}.tree-heading-actions{justify-content:flex-start;align-items:flex-start}.tree-add-control{justify-items:start}.tree-key{display:none}.tree-viewport{padding-left:10px;padding-right:10px}.tree-profile-detail{gap:16px}.tree-profile-hero{gap:18px;padding:22px 18px}.tree-profile-primary{align-items:flex-start;gap:14px}.tree-profile-monogram{flex-basis:72px;width:72px;height:72px;font-size:23px}.tree-profile-identity h3{font-size:24px}.tree-profile-meta{grid-template-columns:1fr 1fr}.tree-profile-bio{padding:18px}.tree-profile-gallery{grid-template-columns:1fr}.tree-profile-gallery>:only-child{max-width:none}.tree-profile-actions{flex-direction:column;align-items:stretch}.tree-profile-actions>p{flex-basis:auto}.tree-profile-actions button{width:100%}.tree-photo-manager{padding:14px}.tree-photo-manager>div:first-child{flex-direction:column;align-items:flex-start;gap:4px}.tree-photo-list{grid-template-columns:1fr 1fr;gap:8px}.tree-photo-delete{width:34px;height:34px;top:5px;right:5px}.tree-photo-upload{grid-column:1/-1;min-height:96px}.my-tree-profile{padding:16px}.my-tree-profile-summary{align-items:flex-start}.my-tree-profile-photo{flex-basis:58px;width:58px;height:58px}.my-tree-profile>.secondary-button,.my-tree-profile>.primary-button{width:100%}.book-progress{padding:23px;display:grid}.book-icon{display:none}.filter-row{align-items:stretch;overflow-x:auto}.filter-row>button{white-space:nowrap}.tag-filter-row{flex-wrap:nowrap;padding-bottom:5px;overflow-x:auto}.tag-filter-row button,.tag-filter-row>span{white-space:nowrap}.recipe-search{display:none}.recipe-time-fields,.recipe-columns{grid-template-columns:1fr}.recipe-detail-heading{flex-direction:column;align-items:flex-start}.recipe-detail-actions{justify-content:flex-start}.archive-controls{flex-direction:column;align-items:stretch}.archive-controls>div{overflow-x:auto}.archive-action-grid,.contribution-grid{grid-template-columns:1fr}.timeline-item{grid-template-columns:25px 78px 1fr;gap:8px}.timeline-year{font-size:21px}.messages-page .page-heading h1{font-size:39px}.chat-shell{height:calc(100dvh - 190px);min-height:540px}.message{max-width:92%}.message-list{padding:10px}.conversation-header{padding:0 15px}.conversation-header p{white-space:nowrap;text-overflow:ellipsis;max-width:240px;overflow:hidden}.conversation-live{display:none}.message-composer{margin:0 8px max(8px, env(safe-area-inset-bottom))}.composer-row{grid-template-columns:44px minmax(0,1fr) auto}.send-button{min-height:42px;padding-left:12px;padding-right:12px}.composer-help{padding-left:10px}.modal{padding:34px 22px 25px}.form-row{grid-template-columns:1fr}.password-form,.inline-password-form{grid-template-columns:1fr!important}.password-form button{width:100%}.access-entry{grid-template-columns:auto 1fr}.access-entry .owner-label,.access-entry-controls{grid-column:1/-1;width:100%}.access-entry-controls{padding-left:0}.recipe-heading-actions{width:100%;display:grid}.recipe-heading-actions button{width:100%}.contribution-types{grid-template-columns:1fr 1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
