/* Identidade Lar à Mesa — camada global de marca. */
:root{
  --ink:#183126;--muted:#65736a;--cream:#f8f5ef;--paper:#fffdf9;
  --green:#1e5b3b;--green-dark:#123f2a;--green-light:#4e8b51;
  --sage:#dce6d4;--orange:#f07a23;--gold:#f0b85d;--red:#e94d3a;
  --border:#dbe2d8;--shadow:0 16px 42px rgba(24,49,38,.09);
  --shadow-soft:0 7px 24px rgba(24,49,38,.07);--radius:18px;
}
html{background:var(--cream)}
body{min-height:100vh;background:radial-gradient(circle at 12% 0,rgba(220,230,212,.7),transparent 28rem),var(--cream);font-family:"Inter",ui-sans-serif,system-ui,sans-serif;color:var(--ink)}
h1,h2{font-family:"DM Serif Display",Georgia,serif;font-weight:400;letter-spacing:-.015em}
h3{color:var(--ink)}
a{color:var(--green)}
:focus-visible{outline:3px solid rgba(240,122,35,.38);outline-offset:3px}

.app-header{width:min(1480px,calc(100% - 32px));height:92px;margin:14px auto 0;padding:0 18px 0 20px;border:0;border-radius:22px;background:linear-gradient(112deg,#16482f,#1e5b3b 62%,#276c47);box-shadow:0 16px 35px rgba(18,63,42,.18);color:#fff;gap:22px}
.brand{gap:11px;min-width:250px;color:#fff}
.brand:hover{color:#fff}.brand img{width:54px;height:54px;border-radius:15px;box-shadow:0 5px 18px rgba(0,0,0,.14)}
.brand-copy{display:grid;line-height:1.05}.brand-copy strong{font:400 1.62rem "DM Serif Display",Georgia,serif;letter-spacing:.01em}.brand-copy em{color:var(--orange);font-style:normal}.brand-copy small{margin-top:6px;font-size:.61rem;font-weight:500;opacity:.78;letter-spacing:.01em}
.primary-nav{display:flex;align-items:stretch;justify-content:center;gap:4px;flex:1;height:100%}
.primary-nav>a,.nav-more>summary{min-width:76px;height:100%;padding:13px 12px 10px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;border-radius:17px;color:rgba(255,255,255,.83);text-decoration:none;font-size:.76rem;font-weight:600;cursor:pointer;transition:.18s ease;list-style:none}
.primary-nav>a i,.nav-more>summary i{font-size:1.18rem}.primary-nav>a:hover,.nav-more>summary:hover{background:rgba(255,255,255,.1);color:#fff}.primary-nav>a.active,.nav-more>summary.active{height:68px;margin:auto 0;background:var(--cream);color:var(--green-dark);box-shadow:0 7px 18px rgba(0,0,0,.12)}
.nav-more{position:relative;height:100%}.nav-more>summary::-webkit-details-marker,.profile-menu>summary::-webkit-details-marker{display:none}.nav-more[open]>summary{color:#fff}.secondary-nav{position:absolute;top:82px;right:0;z-index:40;width:230px;padding:9px;background:rgba(255,253,249,.98);border:1px solid var(--border);border-radius:15px;box-shadow:0 20px 55px rgba(16,44,30,.22);display:grid;gap:3px}.secondary-nav a{display:flex;align-items:center;gap:10px;padding:10px 11px;border-radius:10px;color:var(--ink);text-decoration:none;font-size:.84rem;font-weight:650}.secondary-nav a i{width:18px;color:var(--green)}.secondary-nav a:hover{background:var(--sage)}
.account-actions{flex:none}.profile-menu{position:relative}.profile-menu>summary{display:flex;align-items:center;gap:9px;color:#fff;cursor:pointer;list-style:none}.profile-avatar{width:42px;height:42px;display:grid;place-items:center;border:3px solid rgba(255,255,255,.9);border-radius:50%;background:linear-gradient(145deg,var(--orange),#d85b14);color:#fff;font-weight:800}.profile-avatar.large{width:48px;height:48px}.profile-copy{display:grid;max-width:125px}.profile-copy strong,.profile-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-copy strong{font-size:.8rem}.profile-copy small{font-size:.68rem;opacity:.75}.profile-menu>summary>i{font-size:.7rem;transition:transform .2s}.profile-menu[open]>summary>i{transform:rotate(180deg)}
.profile-popover{position:absolute;right:0;top:58px;z-index:50;width:290px;padding:12px;background:rgba(255,253,249,.99);border:1px solid var(--border);border-radius:17px;box-shadow:0 22px 60px rgba(16,44,30,.25);color:var(--ink)}.profile-heading{display:flex;align-items:center;gap:11px;padding:5px 5px 13px;border-bottom:1px solid var(--border)}.profile-heading div{display:grid;min-width:0}.profile-heading small{color:var(--muted);overflow:hidden;text-overflow:ellipsis}.house-switch{margin:8px 0}.house-switch button,.profile-link{width:100%;border:0;background:transparent;display:flex;align-items:center;gap:11px;padding:10px;border-radius:11px;color:var(--ink);text-decoration:none;text-align:left;font-size:.84rem}.house-switch button:hover,.profile-link:hover{background:var(--sage)}.house-switch button>span{display:grid;flex:1}.house-switch button small{color:var(--muted)}.house-switch button i,.profile-link i{width:18px;color:var(--green)}.profile-link.danger{color:#a73c33}.profile-link.danger i{color:var(--red)}.profile-popover .install-btn{font-size:.84rem}.logout-form{margin:0}

.container{max-width:1300px;padding:46px 26px 90px}.hero,.page-heading{margin-bottom:30px}.hero h1,.page-heading h1{font-size:clamp(2.25rem,4.2vw,3.55rem);color:var(--green-dark)}.eyebrow{color:var(--green);letter-spacing:.18em}.hero.compact p:last-child,.page-heading p:last-child{max-width:700px}
.btn{border-radius:12px;padding:11px 17px;gap:7px;transition:transform .16s ease,box-shadow .16s ease,background .16s ease}.btn:hover{transform:translateY(-1px)}.btn.primary{background:linear-gradient(135deg,var(--green-light),var(--green));box-shadow:0 8px 19px rgba(30,91,59,.23)}.btn.primary:hover{background:var(--green-dark);box-shadow:0 10px 22px rgba(30,91,59,.28)}.btn.ghost{background:rgba(255,253,249,.72);border-color:var(--border)}.btn.danger{border-color:rgba(233,77,58,.28)}
input,textarea,select{border-color:#ccd8ce;border-radius:12px;background:#fffefa;padding:11px 13px}input:focus,textarea:focus,select:focus{border-color:var(--green-light);box-shadow:0 0 0 4px rgba(78,139,81,.13)}
.data-card,.editor,.table-wrap,.shopping-category,.filter-bar,.settings-section,.recipe-card,.pricing-card{border-color:var(--border);border-radius:var(--radius);box-shadow:var(--shadow-soft)}
.data-card,.editor,.settings-section,.pricing-card{background:rgba(255,253,249,.94)}.editor>summary{color:var(--green-dark)}
.alert{border-radius:14px;border:1px solid transparent;box-shadow:var(--shadow-soft)}.alert.success{background:#e1eedf;border-color:#c4dcc2;color:#285b35}.alert.error{background:#fbe5e1;border-color:#f2c9c2;color:#993c31}
.chips span,.role{background:var(--sage)}.category-head{background:linear-gradient(135deg,var(--sage),#edf2e9)}

.carousel{margin-inline:-10px}.carousel-track{gap:24px;padding-top:20px}.day-card{border-color:var(--border);border-radius:24px;box-shadow:0 18px 46px rgba(24,49,38,.11);background:rgba(255,253,249,.97)}.day-card.today{border-color:#9fb99f;box-shadow:0 22px 54px rgba(30,91,59,.16)}.date-block{background:linear-gradient(180deg,#e8efe3,var(--sage));color:var(--green-dark)}.date-block strong{font-family:"DM Serif Display",Georgia,serif}.today-tag{background:var(--green)}.meal-icon{width:31px;height:31px;display:grid;place-items:center;border-radius:9px;background:var(--sage);color:var(--green)}.meal-row{grid-template-columns:39px 1fr}.meal-row h3{font-family:"DM Serif Display",Georgia,serif;font-size:1.16rem}.note{background:#fff1dc;border-color:var(--orange)}.carousel-arrow{color:var(--green-dark)}.carousel-dots button.active{background:var(--orange)}
.home-benefits{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:34px}.home-benefits article{display:flex;align-items:center;gap:14px;min-height:112px;padding:18px;background:rgba(255,253,249,.86);border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow-soft)}.home-benefits article>span{flex:none;width:52px;height:52px;display:grid;place-items:center;border-radius:50%;background:var(--green);color:#fff;font-size:1.25rem}.home-benefits article>span.orange{background:var(--orange)}.home-benefits article>span.leaf{background:var(--green-light)}.home-benefits strong{display:block;margin-bottom:3px;font-family:"DM Serif Display",Georgia,serif;font-size:1.1rem}.home-benefits p{margin:0;color:var(--muted);font-size:.78rem;line-height:1.45}

.login-shell{background:radial-gradient(circle at 10% 10%,rgba(78,139,81,.26),transparent 30rem),var(--cream)}.login-card{max-width:930px;border:1px solid rgba(30,91,59,.1);border-radius:28px}.login-art{position:relative;padding:38px;background:linear-gradient(155deg,#fff,#f4f7f1);color:var(--green-dark);border-right:1px solid var(--border)}.login-art::after{content:"";position:absolute;right:-50px;bottom:-70px;width:230px;height:230px;border:2px solid rgba(30,91,59,.08);border-radius:50%}.auth-official-logo{position:relative;z-index:1;width:min(100%,350px);height:auto;margin:auto;object-fit:contain;mix-blend-mode:multiply}.login-art h1{position:relative;z-index:1;margin-top:18px;font-size:2.35rem;color:var(--green-dark)}.login-art>p:last-child{position:relative;z-index:1;color:var(--muted)}.login-form{padding:52px}.auth-signup a,.forgot-link{color:var(--green);font-weight:750}
.install-dialog{border-radius:22px}.install-brand-icon{width:64px;height:64px;border-radius:16px}

.profile-popover .install-btn{width:100%;margin:0;order:initial}
@media(max-width:1160px){.app-header{gap:12px}.brand{min-width:auto}.brand-copy small,.profile-copy{display:none}.primary-nav>a,.nav-more>summary{min-width:65px;padding-inline:9px}.primary-nav>a span,.nav-more>summary span{font-size:.68rem}}
@media(max-width:900px){
  .app-header{flex-wrap:nowrap}
  .primary-nav{display:flex!important;order:initial!important;flex-basis:auto!important;flex-direction:row!important}
  body{padding-bottom:78px}.app-header{width:100%;height:68px;margin:0;padding:0 14px;border-radius:0;gap:10px}.brand img{width:43px;height:43px;border-radius:12px}.brand-copy strong{font-size:1.35rem}.account-actions{margin-left:auto}.profile-avatar{width:39px;height:39px}.profile-menu>summary>i{display:none}.profile-popover{position:fixed;top:62px;right:10px;width:min(310px,calc(100vw - 20px))}
  .primary-nav{position:fixed;z-index:60;left:0;right:0;bottom:0;height:72px;padding:5px 6px max(5px,env(safe-area-inset-bottom));background:linear-gradient(105deg,var(--green-dark),var(--green));box-shadow:0 -8px 28px rgba(18,63,42,.2);justify-content:space-around}.primary-nav>a,.nav-more>summary{height:60px!important;min-width:0;flex:1;margin:0!important;padding:7px 5px;border-radius:13px;gap:4px}.primary-nav>a.active,.nav-more>summary.active{background:var(--cream)}.primary-nav>a i,.nav-more>summary i{font-size:1.05rem}.primary-nav>a span,.nav-more>summary span{font-size:.62rem}.nav-more{flex:1;height:60px}.secondary-nav{position:fixed;top:auto;right:8px;bottom:76px;width:min(260px,calc(100vw - 16px));max-height:65vh;overflow:auto}.container{padding:30px 16px 58px}.hero,.page-heading{gap:15px}.hero h1,.page-heading h1{font-size:2.45rem}.home-benefits{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){.brand-copy small{display:none}.brand-copy strong{font-size:1.18rem}.container{padding-inline:13px}.carousel{margin-inline:-13px}.carousel-track{padding-inline:30px}.home-benefits{grid-template-columns:1fr}.home-benefits article{min-height:94px}.login-card{border-radius:22px}.login-art{min-height:230px;padding:24px}.auth-official-logo{width:min(100%,270px)}.login-art h1{font-size:2.15rem}.login-form{padding:30px 24px}.profile-menu>summary{gap:0}}
@media(max-width:410px){.brand-copy{display:none}.primary-nav>a span,.nav-more>summary span{font-size:.57rem}.day-card{border-radius:18px}}

/* Cadastros compactos e coleções navegáveis */
.nav-more>summary{width:100%;box-sizing:border-box}.nav-more>summary i{margin-right:0!important}.nav-more[open]>summary.active{color:var(--green-dark)}
body.create-modal-open{overflow:hidden}
.editor{width:max-content;max-width:100%;margin:0 0 26px;padding:0;border:0;background:transparent;box-shadow:none}
.editor>summary{display:inline-flex;align-items:center;gap:8px;padding:11px 17px;border:0;border-radius:12px;background:linear-gradient(135deg,var(--green-light),var(--green));color:#fff;box-shadow:0 8px 19px rgba(30,91,59,.23);list-style:none}
.editor>summary::-webkit-details-marker{display:none}.editor>summary i{margin:0!important}.editor>summary:hover{background:var(--green-dark)}
.editor[open]{position:fixed;inset:0;z-index:110;width:100%;max-width:none;height:100dvh;margin:0;padding:20px max(14px,calc((100vw - 1050px)/2)) 50px;overflow-y:auto;background:rgba(12,27,18,.48);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px)}
.editor[open]>summary{position:relative;width:100%;margin:0 auto;padding:20px 24px;border-radius:19px 19px 0 0;background:rgba(255,253,249,.98);color:var(--green-dark);box-shadow:0 16px 45px rgba(10,30,18,.22);font-family:"DM Serif Display",Georgia,serif;font-size:1.55rem}
.editor[open]>summary::after{content:"\00d7";margin-left:auto;width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:var(--sage);font:400 1.8rem/1 Inter,sans-serif}
.editor[open]>form{width:100%;margin:0 auto;padding:24px;border:0;border-radius:0 0 19px 19px;background:rgba(255,253,249,.98);box-shadow:0 20px 45px rgba(10,30,18,.22)}
.collection-carousel{position:relative;margin:0 -10px 34px}.collection-carousel>[data-card-carousel]{display:flex!important;grid-template-columns:none!important;columns:auto!important;align-items:stretch;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding:12px 48px 24px;scrollbar-width:none}.collection-carousel:not(.is-overflowing)>[data-card-carousel]{justify-content:center}.collection-carousel>[data-card-carousel]::-webkit-scrollbar{display:none}
.collection-carousel>[data-card-carousel]>*{flex:0 0 calc((100% - 48px)/4);min-width:240px;max-width:300px;width:auto;margin:0!important;scroll-snap-align:start}.collection-carousel .recipe-card,.collection-carousel .data-card,.collection-carousel .shopping-category{height:auto;min-height:100%}
.collection-arrow{position:absolute;z-index:4;top:50%;width:40px;height:40px;display:grid;place-items:center;padding:0;border:1px solid var(--border);border-radius:50%;background:var(--paper);color:var(--green-dark);box-shadow:var(--shadow-soft);transform:translateY(-50%)}.collection-arrow[hidden]{display:none!important}.collection-arrow.previous{left:0}.collection-arrow.next{right:0}.collection-arrow i{margin:0}
.data-card,.recipe-card{position:relative}.data-card.vertical,.residents-grid .data-card,.house-dish-grid .recipe-card{padding-bottom:66px}.house-dish-grid .recipe-card-body{padding-bottom:58px}.entity-card-actions{display:contents}.entity-card-actions form{margin:0}.entity-card-actions .icon-btn{font-size:.95rem}.edit-entity{position:absolute;z-index:2;top:12px;right:12px;border:1px solid var(--border);background:#fff;color:var(--green)}.delete-entity{position:absolute;z-index:2;bottom:12px;left:12px;border:1px solid #efcbc5;background:#fff;color:var(--red)}
.data-card>.open-resident-modal{position:absolute;z-index:2;top:12px;right:12px;width:36px;height:36px;padding:0;font-size:0;border-radius:50%}.data-card>.open-resident-modal i{margin:0;font-size:.95rem}.data-card>.delete-form{position:absolute;z-index:2;bottom:12px;left:12px;margin:0}.data-card>.delete-form .link{width:36px;height:36px;padding:0;border:1px solid #efcbc5;border-radius:50%;background:#fff;font-size:0}.data-card>.delete-form .link i{margin:0;font-size:.95rem}
.schedule-card{position:relative;padding-bottom:66px}.schedule-card-actions{display:block}.schedule-card-actions .schedule-edit-button{display:grid;position:absolute;z-index:3;top:12px;right:12px;margin:0}.schedule-card-actions .schedule-delete-form{position:absolute;z-index:3;bottom:12px;left:12px;margin:0}.schedule-card-actions .schedule-delete-button{display:grid;position:static;margin:0}
.shopping-category li[data-shopping-row]{position:relative;cursor:pointer;border-radius:0;transition:background-color .15s ease}.shopping-category li[data-shopping-row]:hover{background:rgba(220,230,212,.48)}.shopping-category li[data-shopping-row]:focus-visible{outline:3px solid rgba(240,122,35,.38);outline-offset:2px}.shopping-category li[data-shopping-row] .icon-btn{position:static;flex:none}.shopping-category li[data-shopping-row] form{position:static;margin:0}
.collection-carousel>[data-card-carousel].shopping-layout>*{flex-basis:calc((100% - 16px)/2);min-width:440px;max-width:600px}.shopping-card-group{display:flex;flex-direction:column;align-self:flex-start;gap:12px}.shopping-card-group .shopping-category{width:100%;height:auto;min-height:0;margin:0}.shopping-card-group{font-size:.8rem}.shopping-card-group .category-head{padding:14px}.shopping-card-group .category-head h2{font-size:1rem}.shopping-card-group .shopping-category ul{padding:6px 14px}.shopping-category li[data-shopping-row]{flex-wrap:nowrap;gap:8px;padding:8px 0}.shopping-category li[data-shopping-row] .item-name{min-width:0}.shopping-category li[data-shopping-row]>strong{flex:none;white-space:nowrap;margin-left:auto}.shopping-category li[data-shopping-row] .round-check{width:19px;height:19px;flex:none;font-size:.64rem}.shopping-category li[data-shopping-row] .icon-btn{width:29px;height:29px;flex:none;font-size:.76rem}.adjusted-ingredient-list li{grid-template-columns:minmax(0,1fr) max-content;align-items:center}.adjusted-ingredient-list strong{text-align:right;white-space:nowrap}.adjusted-ingredient-list span{grid-column:1}
@media(max-width:900px) and (min-width:621px){.collection-carousel>[data-card-carousel]>*{flex-basis:calc((100% - 16px)/2);min-width:260px;max-width:360px}.collection-carousel>[data-card-carousel].shopping-layout>*{flex-basis:calc(100% - 16px);min-width:440px;max-width:600px}}
@media(max-width:620px){.editor{margin-bottom:20px}.editor>summary{width:100%;justify-content:center}.editor[open]{padding:0}.editor[open]>summary{position:sticky;top:0;z-index:2;border-radius:0;padding:16px;font-size:1.3rem}.editor[open]>form{min-height:calc(100dvh - 70px);border-radius:0;padding:18px 14px 40px}.collection-carousel{margin-inline:-13px}.collection-carousel>[data-card-carousel]{padding-inline:30px}.collection-arrow{display:none}.collection-carousel>[data-card-carousel]>*{flex-basis:calc(100vw - 60px);min-width:0;max-width:calc(100vw - 60px)}.collection-carousel>[data-card-carousel].shopping-layout{display:block!important;overflow:visible;scroll-snap-type:none;padding:0 13px 24px}.collection-carousel>[data-card-carousel].shopping-layout>*{width:100%;min-width:0;max-width:none;margin:0 0 12px!important;scroll-snap-align:none}}

@media(max-width:900px){.primary-nav>a,.primary-nav>.nav-more{flex:1 1 0!important;width:0!important;min-width:0!important}.primary-nav>.nav-more{display:flex;align-items:center;justify-content:center}.primary-nav>.nav-more>summary{width:100%;margin:0!important;transform:none!important}}

/* Publicidade interna — somente plano Básico */
.house-ad{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 24px;width:100%;margin:26px 0 34px;padding:22px 24px;border:1px solid #cddbc9;border-radius:18px;background:linear-gradient(120deg,#edf3e8,#fff8ed);box-shadow:var(--shadow-soft);overflow:hidden}
.house-ad::after{content:"";position:absolute;right:-35px;top:-55px;width:150px;height:150px;border-radius:50%;background:rgba(240,122,35,.08);pointer-events:none}.house-ad-label{grid-column:1/-1;color:var(--muted);font-size:.64rem;font-weight:750;letter-spacing:.14em;text-transform:uppercase}.house-ad-copy{position:relative;z-index:1}.house-ad-copy strong{display:block;color:var(--green-dark);font:400 1.35rem "DM Serif Display",Georgia,serif}.house-ad-copy p{margin:4px 0 0;color:var(--muted);font-size:.84rem;line-height:1.5}.house-ad-cta{position:relative;z-index:1;white-space:nowrap}.house-ad-wrap{justify-content:center}.house-ad-wrap .house-ad{grid-template-columns:1fr;margin:0;min-height:260px;align-content:center}.house-ad-wrap .house-ad-label{grid-column:auto}.house-ad-wrap .house-ad-cta{width:max-content}
.house-ad-external{display:block;min-height:120px;background:var(--surface);text-align:center}.house-ad-external::after{display:none}.house-ad-external .house-ad-label{display:block;margin-bottom:8px;text-align:left}.house-ad-external .adsbygoogle{width:100%;min-height:90px}.adsense-admin-card{margin-bottom:20px}.adsense-admin-card>header{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:20px}.adsense-admin-card>header p:last-child{max-width:760px;color:var(--muted)}.ad-fallback-note{margin:-8px 0 18px;color:var(--muted);font-size:.78rem}
.ad-admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.ad-admin-card{margin:0}.ad-admin-card>header{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:18px}.ad-admin-card h2{margin:4px 0 0}.ad-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:20px}.ad-metrics span{padding:12px;border-radius:12px;background:var(--sage);color:var(--muted);font-size:.74rem}.ad-metrics strong{display:block;color:var(--green-dark);font-size:1.15rem}
@media(max-width:800px){.ad-admin-grid{grid-template-columns:1fr}}
@media(max-width:620px){.house-ad{grid-template-columns:1fr;padding:19px;margin:20px 0 26px}.house-ad-cta{width:max-content}.house-ad-wrap .house-ad{min-height:0}.shopping-layout .house-ad-wrap{margin-bottom:12px!important}}
