@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@400;500;600&display=swap');
:root{--ink:#30342f;--muted:#777b72;--cream:#faf9f6;--warm:#f2efe9;--olive:#68745d;--line:#e7e5de;--white:#fff;--radius:14px}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font:15px/1.55 'DM Sans',Arial,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.container{width:min(1200px,calc(100% - 40px));margin:auto}.topbar{background:#6c7762;color:white;font-size:12px;text-align:center;padding:8px}.header{position:sticky;top:0;z-index:10;background:#faf9f6ed;backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.nav{height:86px;display:flex;align-items:center;justify-content:space-between;gap:24px}.wordmark{font-family:'Playfair Display',serif;font-weight:500;font-size:30px;letter-spacing:-1.2px}.wordmark small{display:block;font:10px 'DM Sans',sans-serif;letter-spacing:3.3px;text-align:center;margin-top:-3px;color:var(--muted)}.navlinks{display:flex;align-items:center;gap:30px;font-size:13px}.navlinks a:hover{color:var(--olive)}.menu-btn{display:none}.pill,.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--olive);background:var(--olive);color:white;padding:12px 22px;border-radius:5px;font-weight:600;font-size:13px}.button:hover{filter:brightness(.9)}.button.outline{background:transparent;color:var(--olive)}.button.light{background:white;border-color:white;color:var(--ink)}.button.danger{background:#994c45;border-color:#994c45}.hero{display:grid;grid-template-columns:1fr 1.13fr;min-height:520px;align-items:stretch;background:#edece6}.hero-copy{padding:clamp(35px,7vw,105px) clamp(28px,6vw,90px);display:flex;flex-direction:column;justify-content:center}.eyebrow{text-transform:uppercase;letter-spacing:3px;color:#7d886d;font-size:11px;font-weight:700}.hero h1{font:400 clamp(42px,5.1vw,76px)/1.12 'Playfair Display',serif;margin:19px 0}.hero p{font-size:15px;color:#666f63;max-width:400px;margin-bottom:27px}.hero-image{background:linear-gradient(90deg,#edece6 0%,transparent 28%),url('https://images.unsplash.com/photo-1600210492486-724fe5c67fb0?w=1200&q=85') center/cover}.section{padding:72px 0}.section-heading{text-align:center;margin:0 auto 32px;max-width:640px}.section-heading h2{font:400 clamp(30px,3vw,42px) 'Playfair Display',serif;margin:10px 0}.section-heading p{color:var(--muted);font-size:14px}.filters{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin:30px 0}.categories{display:flex;gap:8px;flex-wrap:wrap}.chip{padding:9px 15px;border-radius:50px;background:transparent;border:1px solid var(--line);color:#656962;font-size:13px}.chip.active,.chip:hover{background:var(--olive);color:#fff;border-color:var(--olive)}.search{padding:11px 16px;border:1px solid var(--line);background:white;border-radius:6px;min-width:225px;outline-color:var(--olive)}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.product{background:white;border:1px solid #eeeae3;overflow:hidden}.product-media{aspect-ratio:4/4.5;position:relative;overflow:hidden;background:#edeae4}.product-media img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.product:hover .product-media img{transform:scale(1.05)}.tag{position:absolute;top:13px;left:12px;padding:5px 10px;background:#f9f8f3ed;font-size:10px;letter-spacing:1px;text-transform:uppercase}.product-body{padding:17px}.category-label{font-size:10px;letter-spacing:1.5px;text-transform:uppercase;color:#8a9280}.product h3{font:500 17px/1.4 'Playfair Display',serif;margin:6px 0 8px;min-height:48px}.price{font-size:15px;font-weight:700;color:#586950;margin:5px 0 15px}.product .button{width:100%;font-size:12px;padding:11px}.note{font-size:12px;color:#858881;margin-top:12px}.about{background:#ebeee7;padding:65px 0}.about-inner{max-width:740px;margin:auto;text-align:center}.about h2{font:400 37px 'Playfair Display',serif}.about p{color:#697162}.footer{background:#343c32;color:#f7f7f1;padding:42px 0}.footer-inner{display:flex;justify-content:space-between;gap:20px;align-items:center;flex-wrap:wrap}.footer small{color:#c7ccc2}.footer a{text-decoration:underline;text-underline-offset:4px}.empty{text-align:center;color:var(--muted);padding:60px 15px;grid-column:1/-1}.admin-shell{display:grid;grid-template-columns:250px 1fr;min-height:100vh}.sidebar{background:#343c32;color:#faf9f6;padding:34px 24px}.sidebar .wordmark{font-size:27px}.side-nav{display:grid;gap:10px;margin-top:45px}.side-nav a,.side-nav button{background:transparent;color:#e0e6dd;text-align:left;border:0;padding:11px;border-radius:6px}.side-nav a:hover,.side-nav button:hover{background:#52604b}.admin-main{padding:42px clamp(20px,4vw,64px);max-width:1380px;width:100%;margin:auto}.admin-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px}.admin-head h1{font:400 38px 'Playfair Display',serif;margin:0}.muted{color:var(--muted)}.panel{background:#fff;border:1px solid var(--line);padding:26px;border-radius:9px;margin-top:27px}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;text-align:left;font-size:13px}td,th{padding:13px;border-bottom:1px solid var(--line)}th{color:#7d8278;font-weight:600}td img{width:55px;height:55px;object-fit:cover;border-radius:4px}td button{border:1px solid var(--line);background:#fff;padding:6px 10px;border-radius:4px;margin:2px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:17px}.field{display:grid;gap:6px}.field.full{grid-column:1/-1}.field label{font-size:12px;font-weight:700}.field input,.field select,.field textarea{width:100%;padding:11px 12px;border:1px solid #d9dbd3;border-radius:5px;background:#fff;color:var(--ink)}.field textarea{resize:vertical;min-height:82px}.checkbox-line{display:flex;align-items:center;gap:8px}.checkbox-line input{width:auto}.form-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:23px}.auth-box{width:min(430px,calc(100% - 30px));margin:11vh auto;background:#fff;padding:34px;border:1px solid var(--line);border-radius:10px}.auth-box h1{font:400 33px 'Playfair Display',serif}.auth-box .field{margin:17px 0}.auth-box button{width:100%}.status{padding:13px 15px;margin:17px 0;border:1px solid #dbdfd3;background:#f1f4ed;border-radius:6px;font-size:13px}.status.error{color:#903d38;border-color:#ecd6d2;background:#fcf1ef}.hidden{display:none!important}.image-preview{width:100%;max-width:190px;aspect-ratio:1;object-fit:cover;border:1px solid var(--line)}.tiny{font-size:12px;color:#898d84}#toast{position:fixed;bottom:25px;right:25px;background:#343c32;color:white;padding:13px 20px;border-radius:7px;display:none;z-index:100}.stat{font-size:27px;font-weight:700;color:var(--olive)}@media(max-width:960px){.grid{grid-template-columns:repeat(3,1fr)}.hero{min-height:450px}.admin-shell{grid-template-columns:1fr}.sidebar{padding:15px 24px;display:flex;align-items:center;justify-content:space-between}.side-nav{margin:0;display:flex}.side-nav a{display:none}}@media(max-width:680px){.nav{height:75px}.wordmark{font-size:25px}.navlinks{gap:12px}.navlinks a:not(.pill){display:none}.hero{display:flex;flex-direction:column-reverse}.hero-image{height:300px;background: url('https://images.unsplash.com/photo-1600210492486-724fe5c67fb0?w=800&q=85') center/cover}.hero-copy{padding:35px 25px 48px}.hero h1{font-size:43px}.section{padding:45px 0}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.product-body{padding:12px}.product h3{font-size:15px;min-height:45px}.product .button{padding:9px 6px}.filters{align-items:stretch}.search{width:100%}.form-grid{grid-template-columns:1fr}.admin-main{padding:25px 15px}.admin-head h1{font-size:29px}.panel{padding:17px}.footer-inner{display:block}.footer-inner>*{display:block;margin:12px 0}}@media(max-width:380px){.grid{grid-template-columns:1fr 1fr}.container{width:calc(100% - 24px)}}

/* Gerenciamento de categorias */
.category-form{display:flex;align-items:flex-end;gap:12px;margin:20px 0 24px;flex-wrap:wrap}.category-form .field{flex:1;min-width:220px}.category-form .button{min-height:46px}.category-actions{display:flex;gap:8px;flex-wrap:wrap}.category-actions button{border:1px solid #d6d2c9;border-radius:8px;background:#fff;padding:8px 12px;cursor:pointer;font:inherit}.category-actions button:hover{background:#f4f0e8}.category-actions button:disabled{opacity:.45;cursor:not-allowed}#categories-panel{scroll-margin-top:25px}

/* Cores e identidade visual customizáveis */
.topbar{background:var(--brand-topbar,var(--olive))}
.header{background:var(--cream)}
.hero{background:var(--cream)}
.hero-copy{background:var(--cream)}
.wordmark.has-custom-logo{display:inline-flex;align-items:center;max-width:250px}
.wordmark.has-custom-logo .uploaded-logo{max-height:70px;max-width:235px;width:auto;height:auto;object-fit:contain}
.wordmark.has-custom-logo{font-size:0}
.wordmark.has-custom-logo small{display:none}
.brand-preview{max-width:250px;max-height:130px;object-fit:contain;background:#f1f1ed;padding:12px;border-radius:8px}
#appearance-panel input[type=color]{width:100%;height:48px;padding:4px;cursor:pointer}

/* Cores independentes por seção, definidas no painel administrativo */
.topbar{background:var(--site-topbar,#6c7762);color:#fff}
.header{background:var(--site-header,#faf9f6);color:var(--site-header-text,#30342f)}
.header .wordmark small{color:var(--site-header-text,#30342f)}
.hero,.hero-copy{background:var(--site-hero,#edece6)}
#produtos{background:var(--site-catalog,#faf9f6)}
.about{background:var(--site-about,#ebeee7)}
.footer{background:var(--site-footer,#343c32);color:var(--site-footer-text,#f7f7f1)}
.footer small{color:inherit;opacity:.83}
.footer .wordmark small{color:inherit}

/* Personalização completa da página, preservando o layout original */
[hidden]{display:none!important}
.hero-image{background-image:linear-gradient(90deg,var(--site-hero,#edece6) 0%,transparent 28%),var(--hero-uploaded-image,url('https://images.unsplash.com/photo-1600210492486-724fe5c67fb0?w=1200&q=85'));background-position:center;background-size:cover}
.about-photo{display:block;width:min(620px,100%);max-height:390px;object-fit:cover;margin:28px auto;border-radius:6px}
.contact-section{padding:78px 0;background:var(--site-contact,#f4f1e9);color:var(--site-contact-text,#38463b)}
.contact-inner{text-align:center;max-width:780px}
.contact-inner h2{font:400 clamp(32px,3.5vw,48px)/1.18 'Playfair Display',serif;margin:15px 0}
.contact-inner p{max-width:520px;margin:0 auto 25px;opacity:.85}
.contact-buttons{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}
.contact-buttons .button{min-width:140px}
.footer-links{display:flex;gap:16px;flex-wrap:wrap}
#content-panel{scroll-margin-top:20px}
#content-panel h2{font:400 30px 'Playfair Display',serif;margin:4px 0}
.editor-group{border:1px solid #e0e1d9;border-radius:8px;margin:16px 0;background:#fbfcf9;overflow:hidden}
.editor-group summary{cursor:pointer;list-style-position:inside;padding:17px 20px;font-weight:700;font-size:15px;color:#394635;background:#f2f3ed}
.editor-group[open] summary{border-bottom:1px solid #e0e1d9}
.editor-group>.content-fields{padding:20px}
.upload-editor{border:1px dashed #c5cbbd;padding:16px;border-radius:7px;background:#fff}
.upload-editor .content-image-preview{display:block;max-width:min(500px,100%);max-height:240px;width:auto;height:auto;object-fit:contain;border-radius:7px;border:1px solid #d9ded1;background:#eee}
.sticky-save{position:sticky;bottom:0;z-index:5;background:#fff;border-top:1px solid #e4e7df;padding:16px 0;display:flex;gap:10px;flex-wrap:wrap}
@media(max-width:680px){
  .hero-image{background-image:var(--hero-uploaded-image,url('https://images.unsplash.com/photo-1600210492486-724fe5c67fb0?w=800&q=85'));background-position:center;background-size:cover}
  .contact-section{padding:55px 0}
  .footer-links{margin-top:15px}
  .editor-group>.content-fields{padding:14px}
}
/* Navegação do painel permanece utilizável no celular */
@media (max-width:960px){
 .sidebar{display:block;padding:18px 20px}
 .sidebar .side-nav{margin-top:12px;display:flex;flex-wrap:wrap;gap:6px}
 .sidebar .side-nav a,.sidebar .side-nav button{display:inline-block;padding:9px 10px}
}

/* Estatísticas privadas e consentimento de visitas */
.footer-privacy-button{border:0;padding:0;background:transparent;color:inherit;text-decoration:underline;text-underline-offset:4px;font:inherit;cursor:pointer}
.analytics-consent{position:fixed;z-index:1000;bottom:20px;left:20px;right:20px;max-width:810px;margin:0 auto;background:#fff;border:1px solid #d8d8cf;box-shadow:0 12px 40px #0002;border-radius:10px;padding:18px 22px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.analytics-consent strong{font-size:15px}.analytics-consent p{font-size:12px;line-height:1.5;margin:6px 0 0;color:#656e60}.analytics-consent a{text-decoration:underline}.analytics-consent-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.analytics-consent-actions button{font-size:12px;padding:11px 14px;white-space:nowrap}
#analytics-panel{scroll-margin-top:20px}
#analytics-panel h2{font:400 32px 'Playfair Display',serif;margin:0}#analytics-panel h3{font:400 23px 'Playfair Display',serif;margin:0 0 8px}
.analytics-toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:24px 0}.analytics-toolbar label{font-weight:600;font-size:13px}.analytics-toolbar select{padding:10px;border:1px solid #d9dbd3;border-radius:6px;background:#fff;color:var(--ink)}
.analytics-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.analytics-kpi{padding:20px;background:#f5f5ef;border:1px solid #e2e6da;border-radius:8px;display:grid;gap:7px}.analytics-kpi span{font-size:12px;color:#5f6c58}.analytics-kpi strong{font-size:31px;font-weight:700;line-height:1.1;color:#38463b}.analytics-kpi small{font-size:11px;color:#747d72}
.analytics-overview{font-size:13px;padding:14px;background:#fff;border:1px solid #e0e5dc;margin-top:16px;border-radius:7px}.analytics-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:18px;margin-top:22px}.analytics-grid>section{border:1px solid var(--line);border-radius:8px;padding:18px;min-width:0}.analytics-chart{height:230px;display:flex;align-items:stretch;gap:5px;margin:24px 0 8px;border-bottom:1px solid #d9dcd4}.analytics-bar-item{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:end;font-size:10px;color:#626a5b}.analytics-bar-item strong{font-weight:600;font-size:10px}.analytics-bar-track{width:min(20px,100%);height:167px;display:flex;align-items:end}.analytics-bar{width:100%;background:#68745d;border-radius:4px 4px 0 0;min-height:2px}.analytics-bar-item span{font-size:9px;margin:5px 0;white-space:nowrap}.analytics-chart-legend{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:11px;color:#747d72;margin-bottom:15px}.analytics-disclaimer{font-size:12px;color:#6a7469;background:#f6f7f4;padding:16px 18px;border-radius:7px;line-height:1.65}
@media(max-width:960px){.analytics-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-grid{grid-template-columns:1fr}}
@media(max-width:680px){.analytics-consent{flex-direction:column;align-items:stretch;left:10px;right:10px;bottom:10px;padding:14px}.analytics-consent-actions{flex-wrap:wrap}.analytics-consent-actions button{flex:1}.analytics-chart{height:210px;gap:3px}.analytics-kpi{padding:13px}.analytics-kpi strong{font-size:26px}}

/* Marca independente na página de login: tamanho adequado para celular e boa legibilidade. */
#login .wordmark.has-custom-logo { display: inline-flex; max-width: min(100%, 310px); align-items: center; }
#login .wordmark.has-custom-logo .uploaded-logo { display:block; width:auto; max-width:100%; max-height:92px; height:auto; object-fit:contain; }
#login .wordmark { max-width:100%; }
#login .wordmark .uploaded-logo { background:transparent; }
#appearance-panel .login-brand-divider { padding-top:18px; margin-top:8px; border-top:1px solid var(--line); }
#appearance-panel .login-logo-preview { background:#fff; border:1px solid var(--line); max-height:115px; max-width:310px; object-fit:contain; }
