/* Family scrapbook: a warm shared palette and an editorial home layout. */
:root{--primary:#603b39;--accent:#a34442;--bg:#fcf7ee;--card-bg:#fffdf8;--card:#fffdf8;--text:#483a32;--ink:#483a32;--muted:#786452;--line:#e6d8c5;--soft-orange:#ebc078;--accent-soft:#fae8de;--sage:#626e43;--sage-soft:#edf0df;--font-display:Georgia,"Times New Roman",serif;}
body{background-color:var(--bg);background-image:radial-gradient(#ab815610 .65px,transparent .65px);background-size:6px 6px;color:var(--text);}
.hub-chrome{background:#fffaf2;border-color:#e6d8c5;box-shadow:none;}
.hub-chrome-brand{color:#733f38;font-size:1.7rem;}
.hub-nine{color:#af423f;}
.hub-chrome-nav a{color:#735d4c;}
.hub-chrome-nav a[aria-current="page"]{background:#f3dfc8;color:#733f38;}
.hub-chrome-nav a:hover,.hub-more a:hover{background:#f8ead6;}
.hub-more summary{border-color:#dcc9b1;background:#fffaf2;}
.hub-more nav{background:#fffdf8;border-color:var(--line);}
.hub-chrome-account{color:#786452;}
body.has-hub-chrome .site-header{background:#f7eddd;color:var(--text);border-color:#e6d8c5;}
.site-header h1{color:#653d35;}
.site-header .tagline{color:#786452;}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline-color:#9b4b35!important;}
input:not([type=checkbox]):not([type=radio]),select,textarea{border-color:#d5bfa5;background:#fffdf8;}
.widget-card,.form-container,.tab-content,.folder-section,.shopping-panel,.panel,.card{background:#fffdf8;border-color:var(--line);box-shadow:0 4px 16px #68452606;}
.widget-card h3,.dash-widget h3{color:#87563d;}
.sync-disclosure{background:#fffaf1;border-color:#e6d8c5;}
.sync-disclosure .offline-sync-panel{background:#faf0df;}
.lock-box{background:#fffaf2;}#lock-screen{background:#694741;}.lock-box button{background:#98433f;}
.hub-home-banner,.hub-home-banner:has(#live-carousel:not(.hidden)){display:grid;grid-template-columns:1fr 1.12fr;gap:52px;align-items:center;background:transparent;padding:24px 0 40px;border:0;box-shadow:none;color:var(--text);border-radius:0;overflow:visible;margin:0;}
.hub-home-banner::before{display:none;}
.hub-home-banner .hub-home-kicker{font-size:.8rem;letter-spacing:.18em;color:#965845;margin:0 0 14px;}
.family-hello{font-size:1rem;color:#786452;margin:0 0 8px;}
.hub-home-banner h1{font-family:Georgia,serif;font-size:clamp(3.2rem,5.6vw,5.25rem);line-height:.98;font-weight:400;letter-spacing:-.055em;color:#633e35;margin:0 0 22px;}
.hub-home-banner h1 em{font-weight:400;color:#a54542;}
.hub-home-banner .hub-home-lede{font-size:1rem;line-height:1.8;color:#786452;}
.family-welcome-link{display:inline-flex;align-items:center;gap:22px;padding:13px 20px;background:#98443e;color:#fff9ee;text-decoration:none;border-radius:9px;font-weight:650;margin:20px 0 0;box-shadow:0 4px 0 #70382d18;}
.family-welcome-link:hover{background:#7f3834;}
.hub-home-banner .hub-welcome-activity{color:#8a715c;font-size:.875rem;border:0;padding:0;margin-top:16px;}
.family-picture-wrap{position:relative;min-width:0;}
.family-table-art{margin:0;background:#fffdf9;border:1px solid #e6d8c5;padding:12px 12px 0;transform:rotate(2deg);box-shadow:0 14px 28px #785b2420;border-radius:3px;}
.family-table-art:before{content:"";position:absolute;width:110px;height:28px;background:#ebce98bb;top:-13px;left:calc(50% - 55px);transform:rotate(-6deg);}
.family-table-art img{display:block;width:100%;height:330px;object-fit:cover;border-radius:2px;}
.family-table-art figcaption{text-align:center;padding:16px 8px 20px;font-family:Georgia,serif;font-style:italic;font-size:1.15rem;color:#7a5344;}
.family-keepsake{position:absolute;right:-12px;bottom:-10px;display:grid;align-content:center;width:112px;height:112px;background:#efd39b;border:1px dashed #b99c65;outline:6px solid #efd39b;border-radius:50%;text-align:center;transform:rotate(-10deg);font-family:Georgia,serif;font-style:italic;font-size:.95rem;color:#705238;line-height:1.45;}
.family-picture-wrap:has(#live-carousel:not(.hidden)) .family-table-art{display:none;}
.family-picture-wrap #live-carousel{height:370px;border:12px solid #fffdf9;border-bottom-width:32px;border-radius:3px;transform:rotate(2deg);box-shadow:0 14px 28px #785b2420;}
.family-section-heading{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin:8px 0 20px;}
.family-section-heading h2{font-family:Georgia,serif;font-weight:400;letter-spacing:-.035em;color:#633e35;font-size:1.9rem;margin:0;}
.family-section-heading>span{font-size:.9rem;color:#8a715c;}
.family-feature-grid{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:20px;}
.family-feature.hub-app-tile{position:relative;min-height:220px;padding:26px;border-radius:14px;border:1px solid #e1cdb2;box-shadow:0 6px 0 #68452607;gap:8px;}
.family-feature .hub-app-tile-icon{font-size:2rem;background:#fff8e6a6;width:56px;height:56px;display:grid;place-items:center;border-radius:50%;}
.family-feature .hub-app-tile-title{font-family:Georgia,serif;font-size:1.75rem;font-weight:400;letter-spacing:-.03em;color:inherit;}
.family-feature .hub-app-tile-sub{font-size:.95rem;color:inherit;opacity:.9;line-height:1.5;}
.family-feature-cta{display:flex;justify-content:space-between;width:100%;font-size:.9rem;font-weight:650;margin-top:auto;padding-top:16px;color:inherit;}
.family-feature-recipes.hub-app-tile{background:#934641;color:#fff6e9;border-color:#934641;}
.family-feature-recipes:after{content:"";position:absolute;top:-1px;right:20px;width:30px;height:36px;background:#e7ba72;clip-path:polygon(0 0,100% 0,100% 100%,50% 78%,0 100%);}
.family-feature-photos.hub-app-tile{background:#efe3c4;color:#6b5038;transform:rotate(-1deg);}
.family-feature-notes.hub-app-tile{background:#e8ecdc;color:#4d6145;transform:rotate(1deg);}
.family-highlights{margin-bottom:36px;}
.family-organizer{border-top:1px solid #ddcbb3;padding-top:26px;}
.family-organizer .hub-app-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;}
.family-organizer .hub-app-tile{min-height:105px;display:grid;grid-template-columns:36px 1fr;gap:2px 10px;padding:16px;border-radius:10px;background:#fffaf1;border-color:#e6d8c5;box-shadow:none;}
.family-organizer .hub-app-tile-icon{grid-row:span 2;background:transparent;font-size:1.5rem;width:auto;height:auto;}
.family-organizer .hub-app-tile-title{font-size:.95rem;align-self:end;}
.family-organizer .hub-app-tile-sub{font-size:.85rem;}
.hub-app-section[aria-label="Family Fun"]{background:#f4e5cd;border:1px solid #e4ceb0;border-radius:18px;padding:26px;margin-top:32px;}
.hub-app-section[aria-label="Family Fun"] .hub-app-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;}
.hub-app-section[aria-label="Family Fun"] .hub-app-tile{background:#fff9ed;min-height:148px;padding:18px;border-radius:12px;border-color:#e2caaa;box-shadow:none;}
.family-dino-portrait{width:65px;height:45px;object-fit:contain;}
.hub-app-tile:hover{border-color:#b38a63;box-shadow:0 8px 18px #785b2412;}
.hub-compact-dash{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;}
.family-home .dash-widget{padding:18px;margin-bottom:0;}
.family-home .dash-widget h3{font-size:.8rem;letter-spacing:.035em;}
.filter-panel{background:#fffdf8;border-color:#e6d8c5;box-shadow:0 4px 18px #68452605;}
.filter-search input{background:#faf2e5;border-color:#ddc6a7;}
.chip{border-color:#ddc6a7;background:#fffdf8;}.chip.active{background:#98443e;border-color:#98443e;}
.view-tab.active{background:#98443e;border-color:#98443e;}.view-tab{border-color:#ddc6a7;}
.recipe-box{border-color:#e1d0b7;background:#fffdf8;border-radius:8px;box-shadow:0 5px 0 #69472e09;}
.recipe-box-photo{background:#f1e2c4;}
.recipe-paper-art{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:repeating-linear-gradient(0deg,transparent 0 24px,#9573430b 24px 25px);color:#926340;}
.recipe-paper-art>span{font-size:.75rem;text-transform:uppercase;letter-spacing:.13em;margin-top:6px;}
.recipe-paper-art svg{width:130px;height:90px;stroke:currentColor;stroke-width:2;stroke-linecap:round;}
.recipe-paper-art>strong{font-family:Georgia,serif;font-size:1.15rem;font-style:italic;font-weight:400;}
.recipe-box:nth-child(4n+2) .recipe-box-photo{background:#e8e9d3;}.recipe-box:nth-child(4n+2) .recipe-paper-art{color:#677443;}
.recipe-box:nth-child(4n+3) .recipe-box-photo{background:#f1dcd1;}.recipe-box:nth-child(4n+3) .recipe-paper-art{color:#a06552;}
.recipe-box:nth-child(4n+4) .recipe-box-photo{background:#e7dbda;}.recipe-box:nth-child(4n+4) .recipe-paper-art{color:#8a5a67;}
.recipe-box-title{color:#693d32;}.recipe-box-shop{background:#f8ecdb;color:#805b3f;border-color:#e4caaa;}
.cook-toolbar{background:#f4e7cf;}.cook-toolbar button{color:#805b3f;border-color:#d4bc96;}
#detailModal{background:#483229aa;}.recipe-section h4{color:#87533b;}.ingredient-check{border-color:#e6d8c5;}.recipe-section ol li::marker{color:#a34442;}
@media(max-width:1000px){.hub-home-banner{gap:30px;}.family-table-art img{height:300px;}.family-organizer .hub-app-grid{grid-template-columns:repeat(3,minmax(0,1fr));}.hub-app-section[aria-label="Family Fun"] .hub-app-grid{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media(max-width:700px){.hub-home-banner,.hub-home-banner:has(#live-carousel:not(.hidden)){grid-template-columns:1fr!important;padding:12px 0 28px;gap:24px;}.hub-home-banner h1{font-size:3.5rem;}.hub-home-banner .hub-home-lede{font-size:.95rem;}.desktop-break{display:none;}.family-table-art{transform:rotate(1deg);margin:0 8px;}.family-table-art img{height:220px;}.family-keepsake{width:90px;height:90px;right:8px;font-size:.8rem;}.family-section-heading{display:block;}.family-section-heading h2{font-size:1.65rem;margin-bottom:5px;}.family-section-heading>span{font-size:.875rem;}.family-feature-grid{grid-template-columns:1fr;gap:14px;}.family-feature.hub-app-tile{min-height:170px;padding:22px;display:grid;grid-template-columns:56px 1fr;gap:4px 16px;transform:none;}.family-feature .hub-app-tile-icon{grid-row:span 3;}.family-feature .hub-app-tile-title{font-size:1.55rem;}.family-feature-cta{padding-top:10px;}.family-organizer .hub-app-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.family-organizer .hub-app-tile{display:flex;padding:14px;gap:4px;}.hub-app-section[aria-label="Family Fun"]{padding:20px 14px;}.hub-app-section[aria-label="Family Fun"] .hub-app-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.family-home .hub-compact-dash{grid-template-columns:1fr 1fr;}.recipe-paper-art>span{font-size:.65rem;letter-spacing:.03em;}.recipe-paper-art svg{width:100px;height:70px;}.recipe-paper-art>strong{font-size:.95rem;}}
@media(max-width:360px){.family-organizer .hub-app-grid,.family-home .hub-compact-dash{grid-template-columns:1fr;}}
@media print{body{background:white;}.recipe-paper-art{display:none;}}

.chip-fav.active{background:#875824;border-color:#875824;color:#fffaf1;}
