
:root {
    --gold: #D9A441;
    --paprika: #C95B2B;
    --cream: #F5E8D3;
    --charcoal: #2E241F;
    --green: #5C7A35;
    --white: #FFFDF8;
    --muted: #75675f;
    --radius: 26px;
    --shadow: 0 20px 60px rgba(46, 36, 31, .12);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
    margin: 0;
    color: var(--charcoal);
    background: var(--white);
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    line-height: 1.6;
    overflow-x: hidden;
}
img { max-width: 100%; display: block; }
a { color: inherit; }
button, input { font: inherit; }
button { cursor: pointer; }

.skip-link {
    position: fixed;
    top: -80px;
    left: 16px;
    z-index: 1000;
    padding: 10px 14px;
    background: var(--charcoal);
    color: #fff;
    border-radius: 10px;
}
.skip-link:focus { top: 16px; }

.container {
    width: min(1180px, calc(100% - 36px));
    margin-inline: auto;
}
.section { padding: 90px 0; }
.eyebrow {
    display: inline-block;
    margin-bottom: 12px;
    color: var(--paprika);
    font-size: .82rem;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
}
h1, h2, h3 {
    margin: 0 0 18px;
    line-height: 1.02;
    letter-spacing: -.035em;
}
h1 { font-size: clamp(3rem, 8vw, 6.8rem); }
h2 { font-size: clamp(2.2rem, 5vw, 4.2rem); }
h3 { font-size: 1.45rem; }
p { margin: 0 0 22px; }
.section-heading { max-width: 760px; margin-bottom: 44px; }
.section-heading p { max-width: 650px; color: var(--muted); font-size: 1.08rem; }

.site-header {
    position: sticky;
    top: 0;
    z-index: 100;
    background: rgba(245, 232, 211, .9);
    backdrop-filter: blur(16px);
    border-bottom: 1px solid rgba(46, 36, 31, .08);
}
.header-inner {
    min-height: 82px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
}
.brand img { width: 112px; height: 58px; object-fit: cover; border-radius: 12px; }
.main-nav { display: flex; align-items: center; gap: 26px; }
.main-nav a { text-decoration: none; font-weight: 700; font-size: .94rem; }
.main-nav a.active { color: var(--paprika); }
.menu-toggle {
    display: none;
    width: 46px;
    height: 46px;
    border: 0;
    background: var(--charcoal);
    border-radius: 14px;
    padding: 12px;
}
.menu-toggle span { display: block; height: 2px; margin: 5px 0; background: white; border-radius: 4px; }

.button {
    display: inline-flex;
    min-height: 52px;
    align-items: center;
    justify-content: center;
    padding: 12px 22px;
    border: 2px solid var(--paprika);
    border-radius: 999px;
    background: var(--paprika);
    color: #fff;
    font-weight: 800;
    text-decoration: none;
    transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}
.button:hover { transform: translateY(-2px); box-shadow: 0 12px 25px rgba(201, 91, 43, .25); }
.button-small { min-height: 42px; padding: 8px 17px; }
.button-outline { background: transparent; color: var(--charcoal); border-color: var(--charcoal); }
.button-outline-dark { background: transparent; color: var(--charcoal); border-color: rgba(46,36,31,.25); }
.button-light { background: var(--cream); color: var(--charcoal); border-color: var(--cream); }

.hero {
    position: relative;
    min-height: calc(100svh - 82px);
    display: grid;
    align-items: center;
    background:
        radial-gradient(circle at 10% 20%, rgba(217,164,65,.25), transparent 28%),
        radial-gradient(circle at 90% 30%, rgba(201,91,43,.15), transparent 30%),
        var(--cream);
    overflow: hidden;
}
.hero-grid {
    display: grid;
    grid-template-columns: 1.03fr .97fr;
    align-items: center;
    gap: 50px;
    padding: 60px 0 90px;
}
.hero-copy p { max-width: 620px; font-size: clamp(1.1rem, 2vw, 1.35rem); }
.hero-actions { display: flex; gap: 14px; flex-wrap: wrap; margin: 30px 0 28px; }
.hero-highlights { display: flex; flex-wrap: wrap; gap: 18px; color: var(--green); font-weight: 800; }

.logo-stage {
    position: relative;
    aspect-ratio: 1;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: var(--gold);
    box-shadow: var(--shadow);
    transform: rotate(2deg);
}
.logo-stage:before, .logo-stage:after {
    content: "";
    position: absolute;
    inset: 7%;
    border: 3px dashed rgba(46,36,31,.25);
    border-radius: 50%;
}
.logo-stage:after { inset: 13%; border-style: solid; border-color: rgba(255,255,255,.4); }
.logo-stage img {
    position: relative;
    z-index: 2;
    width: 78%;
    aspect-ratio: 1;
    object-fit: cover;
    border-radius: 28px;
    box-shadow: 0 15px 40px rgba(46,36,31,.18);
}
.stamp {
    position: absolute;
    z-index: 3;
    bottom: 8%;
    right: -4%;
    padding: 12px 18px;
    color: white;
    background: var(--charcoal);
    border-radius: 8px;
    font-weight: 900;
    transform: rotate(-5deg);
}
.grain {
    position: absolute;
    z-index: 4;
    width: 12px; height: 12px;
    border-radius: 50% 45% 50% 40%;
    background: #eeb54e;
    box-shadow: 0 0 0 3px rgba(255,255,255,.35);
    animation: float 4s ease-in-out infinite;
}
.grain-1 { top: 5%; left: 18%; }
.grain-2 { top: 15%; right: 8%; animation-delay: .7s; }
.grain-3 { bottom: 12%; left: 3%; animation-delay: 1.3s; }
@keyframes float { 50% { transform: translateY(-14px) rotate(15deg); } }
.scroll-hint {
    position: absolute;
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%);
    color: var(--muted);
    font-weight: 700;
    text-decoration: none;
    font-size: .86rem;
}

.flavors { background: var(--white); }
.flavor-scroller {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 22px;
}
.flavor-card {
    position: relative;
    overflow: hidden;
    padding: 30px;
    border-radius: var(--radius);
    min-height: 520px;
    display: flex;
    flex-direction: column;
    border: 1px solid rgba(46,36,31,.08);
}
.flavor-card:before {
    content:"";
    position:absolute;
    inset:0;
    opacity:.15;
    background: repeating-linear-gradient(90deg, transparent 0 18px, rgba(46,36,31,.16) 18px 20px);
}
.flavor-card > * { position: relative; }
.flavor-gold { background: #f6dfae; }
.flavor-red { background: #f2c9b9; }
.flavor-green { background: #dce5ca; }
.flavor-number { font-weight: 900; opacity: .45; }
.flavor-card .package { margin: 20px auto 28px; }
.flavor-card p { color: rgba(46,36,31,.72); }
.flavor-card a { margin-top: auto; font-weight: 900; text-decoration: none; }

.package {
    width: 210px;
    height: 280px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    padding: 25px 16px;
    color: var(--charcoal);
    background: var(--cream);
    border: 4px solid rgba(255,255,255,.65);
    border-radius: 18px 18px 28px 28px;
    box-shadow: 0 25px 35px rgba(46,36,31,.18);
    transform: rotate(-2deg);
}
.package span { font-size: 2.5rem; font-weight: 950; line-height: .82; letter-spacing: -.08em; }
.package small { display: block; margin-top: 26px; padding: 10px 8px; color: white; border-radius: 6px; font-weight: 900; }
.package-gold small { background: var(--gold); color: var(--charcoal); }
.package-red small { background: var(--paprika); }
.package-green small { background: var(--green); }

.quiz-section { background: var(--charcoal); color: white; }
.quiz-layout { display: grid; grid-template-columns: .8fr 1.2fr; gap: 70px; align-items: center; }
.quiz-intro p { color: rgba(255,255,255,.72); font-size: 1.08rem; }
.quiz-deco { font-size: 7rem; transform: rotate(-15deg); filter: drop-shadow(0 20px 20px rgba(0,0,0,.25)); }
.quiz-card {
    background: var(--cream);
    color: var(--charcoal);
    border-radius: var(--radius);
    padding: 34px;
    min-height: 430px;
}
.quiz-progress { height: 8px; background: rgba(46,36,31,.1); border-radius: 99px; margin-bottom: 34px; overflow: hidden; }
.quiz-progress span { display:block; width: 50%; height:100%; background: var(--paprika); border-radius:inherit; transition: width .3s ease; }
.quiz-kicker { color: var(--paprika); font-weight: 900; font-size: .78rem; text-transform: uppercase; letter-spacing: .08em; }
.quiz-step { display: none; }
.quiz-step.active { display: block; animation: fadeIn .3s ease; }
@keyframes fadeIn { from { opacity:0; transform: translateY(8px); } }
.choice-grid { display:grid; grid-template-columns: repeat(2, 1fr); gap: 14px; margin-top: 28px; }
.choice-grid button {
    min-height: 74px;
    padding: 14px;
    border: 2px solid rgba(46,36,31,.14);
    border-radius: 18px;
    background: var(--white);
    color: var(--charcoal);
    font-weight: 850;
}
.choice-grid button:hover, .choice-grid button:focus-visible { border-color: var(--paprika); transform: translateY(-2px); }
.text-button { margin-top: 20px; border:0; background:transparent; color:var(--charcoal); font-weight:800; }
.result-icon { font-size: 4rem; margin: 24px 0 8px; }
.result-actions { display:flex; gap:12px; flex-wrap:wrap; }

.story { background: var(--cream); }
.story-grid { display:grid; grid-template-columns: 1fr 1fr; gap:70px; align-items:center; }
.story-copy p { font-size:1.1rem; color:var(--muted); }
.text-link { color: var(--paprika); font-weight:900; text-decoration:none; }
.story-visual { min-height: 430px; display:grid; place-items:center; }
.bowl {
    position:relative;
    width:330px; height:170px;
    border-radius: 20px 20px 150px 150px;
    background: linear-gradient(#8a4e22, #542a15);
    border: 12px solid #a9622b;
    box-shadow: inset 0 -18px 0 rgba(0,0,0,.15), 0 30px 50px rgba(46,36,31,.2);
}
.bowl:before {
    content:"";
    position:absolute;
    top:-38px; left:18px; right:18px;
    height:80px;
    border-radius:50%;
    background: radial-gradient(circle at 30% 30%, #f7c75d 0 6px, transparent 7px),
                radial-gradient(circle at 60% 60%, #d99a39 0 7px, transparent 8px),
                #eab348;
    box-shadow: inset 0 -14px 0 rgba(136,73,26,.28);
}
.spoon {
    position:absolute;
    width:210px; height:24px;
    right:-95px; top:-75px;
    background:#78441f;
    border-radius:20px;
    transform:rotate(-48deg);
}
.spoon:after {
    content:"";
    position:absolute;
    width:58px; height:36px;
    left:-20px; top:-6px;
    border-radius:50%;
    background:#965728;
}
.crumb { position:absolute; width:14px; height:14px; background:var(--gold); border-radius:50%; top:-80px; animation:float 3s infinite; }
.c1 { left:30px; } .c2 { left:160px; animation-delay:.7s; } .c3 { right:40px; animation-delay:1.4s; }

.recipe-grid { display:grid; grid-template-columns:repeat(3, 1fr); gap:22px; }
.recipe-card { overflow:hidden; background:var(--cream); border-radius:var(--radius); }
.recipe-card > div:last-child { padding:24px; }
.recipe-card span { color:var(--paprika); font-weight:800; font-size:.82rem; }
.recipe-card a { color:var(--paprika); font-weight:900; text-decoration:none; }
.recipe-image {
    height:260px;
    background-color:#d9b780;
    background-size:cover;
    background-position:center;
}
.recipe-1 { background-image: radial-gradient(circle at 35% 45%, #5c2d18 0 18%, transparent 19%), radial-gradient(circle at 65% 50%, #e1a533 0 20%, transparent 21%), linear-gradient(135deg,#7a9a45,#f0d1a2); }
.recipe-2 { background-image: radial-gradient(circle at 50% 38%, #f3e9c5 0 13%, #e8aa31 14% 18%, transparent 19%), radial-gradient(circle at 35% 60%, #6e351e 0 18%, transparent 19%), linear-gradient(135deg,#b8d26f,#e4c38e); }
.recipe-3 { background-image: radial-gradient(ellipse at 42% 50%, #a95021 0 24%, transparent 25%), radial-gradient(circle at 70% 55%, #e2ac42 0 18%, transparent 19%), linear-gradient(135deg,#88a956,#e8cc9e); }

.location { background: var(--white); }
.location-box {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:50px;
    padding:54px;
    background:var(--cream);
    border-radius:var(--radius);
}
.location-form label { display:block; margin-bottom:8px; font-weight:850; }
.input-group { display:flex; gap:10px; }
.input-group input {
    width:100%;
    min-width:0;
    padding:15px 18px;
    border:2px solid rgba(46,36,31,.16);
    border-radius:999px;
    background:white;
}
.form-feedback { margin-top:12px; color:var(--green); font-weight:800; }

.reseller { background: var(--green); color:white; }
.reseller-grid { display:grid; grid-template-columns:1fr auto; gap:40px; align-items:center; }
.reseller p { max-width:760px; color:rgba(255,255,255,.78); }

.site-footer { padding:64px 0 20px; background:var(--charcoal); color:white; }
.footer-grid { display:grid; grid-template-columns:2fr 1fr 1fr; gap:50px; }
.footer-grid > div { display:flex; flex-direction:column; gap:10px; }
.footer-grid a { color:rgba(255,255,255,.72); text-decoration:none; }
.footer-logo { width:150px; height:92px; object-fit:cover; border-radius:14px; }
.footer-bottom { display:flex; justify-content:space-between; gap:20px; padding-top:34px; margin-top:34px; border-top:1px solid rgba(255,255,255,.14); color:rgba(255,255,255,.6); font-size:.86rem; }

.page-hero { padding:100px 0 70px; background:var(--cream); }
.page-hero p { max-width:650px; font-size:1.2rem; color:var(--muted); }
.product-list { display:grid; gap:30px; }
.product-row {
    display:grid;
    grid-template-columns:320px 1fr;
    gap:60px;
    align-items:center;
    padding:50px;
    border-radius:var(--radius);
}
.product-row .package { margin:auto; }

.reveal { opacity:0; transform:translateY(22px); transition:opacity .7s ease, transform .7s ease; }
.reveal.visible { opacity:1; transform:none; }

@media (max-width: 860px) {
    .section { padding: 70px 0; }
    .menu-toggle { display:block; }
    .main-nav {
        position:absolute;
        top:82px;
        left:18px; right:18px;
        display:none;
        flex-direction:column;
        align-items:stretch;
        padding:22px;
        background:var(--cream);
        border:1px solid rgba(46,36,31,.1);
        border-radius:22px;
        box-shadow:var(--shadow);
    }
    .main-nav.open { display:flex; }
    .main-nav .button { text-align:center; }
    .hero { min-height:auto; }
    .hero-grid { grid-template-columns:1fr; padding-top:50px; }
    .hero-visual { order:-1; }
    .logo-stage { width:min(88vw, 470px); margin:auto; }
    .flavor-scroller {
        display:flex;
        overflow-x:auto;
        scroll-snap-type:x mandatory;
        padding-bottom:12px;
        margin-right:-18px;
    }
    .flavor-card { flex:0 0 82vw; max-width:390px; scroll-snap-align:start; }
    .quiz-layout, .story-grid, .location-box { grid-template-columns:1fr; gap:38px; }
    .quiz-deco { display:none; }
    .recipe-grid { grid-template-columns:1fr; }
    .reseller-grid { grid-template-columns:1fr; }
    .footer-grid { grid-template-columns:1fr 1fr; }
    .footer-grid > div:first-child { grid-column:1/-1; }
    .product-row { grid-template-columns:1fr; padding:30px; gap:30px; }
}

@media (max-width: 560px) {
    .container { width:min(100% - 28px, 1180px); }
    h1 { font-size:clamp(3rem, 15vw, 4.7rem); }
    h2 { font-size:clamp(2.15rem, 11vw, 3.3rem); }
    .header-inner { min-height:72px; }
    .main-nav { top:72px; }
    .brand img { width:96px; height:50px; }
    .hero-grid { padding-bottom:76px; }
    .hero-actions { flex-direction:column; }
    .hero-actions .button { width:100%; }
    .hero-highlights { gap:10px 14px; font-size:.9rem; }
    .logo-stage { width:92vw; }
    .stamp { right:0; bottom:3%; font-size:.8rem; }
    .flavor-card { flex-basis:88vw; min-height:500px; }
    .quiz-card { padding:24px 18px; }
    .choice-grid { grid-template-columns:1fr; }
    .choice-grid button { min-height:62px; }
    .result-actions { flex-direction:column; }
    .result-actions .button { width:100%; }
    .story-visual { min-height:300px; overflow:hidden; }
    .bowl { transform:scale(.78); }
    .location-box { padding:30px 20px; }
    .input-group { flex-direction:column; }
    .input-group .button { width:100%; }
    .footer-grid { grid-template-columns:1fr; }
    .footer-grid > div:first-child { grid-column:auto; }
    .footer-bottom { flex-direction:column; }
}

@media (prefers-reduced-motion: reduce) {
    *, *:before, *:after { animation-duration:.01ms !important; animation-iteration-count:1 !important; scroll-behavior:auto !important; transition-duration:.01ms !important; }
    .reveal { opacity:1; transform:none; }
}


/* V2: formulários e painel */
.admin-form{display:grid;gap:17px}.admin-form label{display:grid;gap:7px;font-weight:800}.admin-form input,.admin-form textarea,.admin-form select,.admin-table select{width:100%;padding:13px 14px;border:2px solid rgba(46,36,31,.14);border-radius:13px;background:#fff;color:var(--charcoal)}.form-columns{display:grid;grid-template-columns:1fr 1fr;gap:14px}.check-line{display:flex!important;align-items:center}.check-line input{width:auto}.hp-field{position:absolute!important;left:-9999px!important}.form-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px;align-items:start}.public-form{padding:32px;background:var(--cream);border-radius:var(--radius)}.admin-alert{padding:14px 16px;border-radius:12px;font-weight:800}.admin-success{background:#dce5ca;color:#33471e}.admin-error{background:#f2c9b9;color:#7a2814}.admin-body{background:#f6f3ec}.admin-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 28px;background:var(--charcoal);color:#fff}.admin-header a{text-decoration:none}.admin-header nav{display:flex;gap:18px;flex-wrap:wrap}.admin-main{width:min(1280px,calc(100% - 36px));margin:40px auto 80px}.admin-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,.8fr);gap:24px;align-items:start}.admin-panel{padding:28px;background:#fff;border:1px solid rgba(46,36,31,.08);border-radius:20px}.admin-metrics{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin:24px 0}.admin-metrics>div{padding:24px;background:#fff;border-radius:18px;border:1px solid rgba(46,36,31,.08)}.admin-metrics span{display:block;color:var(--muted)}.admin-metrics strong{font-size:2.5rem}.admin-list>div{display:flex;justify-content:space-between;gap:15px;padding:15px 0;border-bottom:1px solid rgba(46,36,31,.1)}.admin-list small{display:block;color:var(--muted)}.link-danger{border:0;background:none;color:#a43d24;font-weight:800}.admin-table-wrap{overflow:auto}.admin-table{width:100%;border-collapse:collapse;min-width:900px}.admin-table th,.admin-table td{padding:13px;border-bottom:1px solid rgba(46,36,31,.1);text-align:left;vertical-align:top}@media(max-width:860px){.form-layout,.admin-grid{grid-template-columns:1fr}.admin-header{align-items:flex-start;flex-direction:column}.admin-metrics{grid-template-columns:1fr}}@media(max-width:560px){.form-columns{grid-template-columns:1fr}.public-form{padding:22px 16px}}


/* V3 — imagens, receitas completas e pontos de venda */
.admin-image-preview { display:flex; gap:16px; align-items:center; flex-wrap:wrap; padding:14px; border:1px solid rgba(46,36,31,.12); border-radius:14px; }
.admin-image-preview img { width:110px; height:110px; object-fit:cover; border-radius:12px; background:#eee; }
.admin-image-wide img { width:220px; height:130px; }
.admin-list-product { display:flex; align-items:center; gap:12px; }
.admin-list-product > img { width:54px; height:54px; object-fit:cover; border-radius:10px; }
.admin-search { display:flex; gap:10px; margin-bottom:24px; }
.admin-search input { flex:1; min-width:0; padding:12px 14px; border:2px solid rgba(46,36,31,.14); border-radius:999px; }

.public-product-image { width:min(100%,320px); max-height:480px; object-fit:contain; margin:auto; filter:drop-shadow(0 25px 28px rgba(46,36,31,.18)); }
.product-actions { display:flex; gap:12px; flex-wrap:wrap; }
.product-row details { margin:18px 0; padding:14px 16px; border:1px solid rgba(46,36,31,.13); border-radius:14px; }
.product-row summary { cursor:pointer; font-weight:900; }

.recipe-real-image { width:100%; height:280px; object-fit:cover; }
.recipe-card h2 a { text-decoration:none; }
.category-chips { display:flex; gap:10px; overflow-x:auto; margin-bottom:34px; padding-bottom:8px; }
.category-chips a { flex:0 0 auto; padding:9px 15px; border:1px solid rgba(46,36,31,.15); border-radius:999px; text-decoration:none; font-weight:800; }
.category-chips a.active { background:var(--charcoal); color:white; }

.recipe-detail-hero { padding:70px 0; background:var(--cream); }
.recipe-detail-grid { display:grid; grid-template-columns:1fr .9fr; gap:55px; align-items:center; }
.recipe-detail-grid img { width:100%; max-height:570px; object-fit:cover; border-radius:var(--radius); }
.recipe-detail-grid p { font-size:1.15rem; color:var(--muted); }
.recipe-metrics { display:flex; flex-wrap:wrap; gap:12px; }
.recipe-metrics span { padding:12px 15px; background:white; border-radius:14px; }
.recipe-metrics strong { display:block; }
.recipe-content-grid { display:grid; grid-template-columns:.75fr 1.25fr; gap:55px; padding-top:75px; padding-bottom:90px; }
.recipe-list, .recipe-steps { padding-left:24px; }
.recipe-list li, .recipe-steps li { margin-bottom:13px; padding-left:7px; }
.recipe-steps li::marker { color:var(--paprika); font-weight:900; }
.recipe-tip, .recipe-product-callout { grid-column:1/-1; padding:30px; border-radius:var(--radius); background:var(--cream); }
.recipe-product-callout { display:flex; justify-content:space-between; align-items:center; gap:30px; background:var(--green); color:white; }

.store-search { display:grid; grid-template-columns:1fr 180px auto; gap:12px; align-items:end; margin-bottom:26px; }
.store-search label { display:grid; gap:7px; font-weight:850; }
.store-search input, .store-search select { width:100%; padding:14px 15px; border:2px solid rgba(46,36,31,.14); border-radius:14px; background:white; }
.store-count { color:var(--muted); }
.store-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.store-card { position:relative; padding:27px; border:1px solid rgba(46,36,31,.1); border-radius:var(--radius); background:var(--cream); }
.store-card h2 { font-size:1.55rem; }
.store-badge { position:absolute; top:16px; right:16px; padding:5px 9px; border-radius:999px; background:var(--gold); font-size:.74rem; font-weight:900; }
.store-actions { display:flex; gap:8px; flex-wrap:wrap; }
.empty-state { margin-top:30px; padding:45px; text-align:center; background:var(--cream); border-radius:var(--radius); }

@media(max-width:860px){
 .recipe-detail-grid,.recipe-content-grid{grid-template-columns:1fr}
 .store-grid{grid-template-columns:1fr 1fr}
 .store-search{grid-template-columns:1fr 130px}
 .store-search .button{grid-column:1/-1}
}
@media(max-width:560px){
 .admin-search{flex-direction:column}
 .product-actions{flex-direction:column}
 .product-actions .button{width:100%}
 .recipe-product-callout{align-items:flex-start;flex-direction:column}
 .store-grid{grid-template-columns:1fr}
 .store-search{grid-template-columns:1fr}
 .store-search .button{grid-column:auto}
}


/* V4 Sprint 2 — segurança e operação do painel */
.admin-header nav { align-items:center; }
.admin-logout-form { display:inline; margin:0; }
.admin-logout-form button { border:0; padding:0; background:none; color:inherit; font:inherit; font-weight:800; cursor:pointer; }
.admin-filter-form { display:grid; grid-template-columns:minmax(180px,1fr) repeat(2,minmax(130px,.5fr)) auto auto; gap:10px; align-items:center; margin-bottom:20px; }
.admin-filter-form input,.admin-filter-form select { width:100%; min-width:0; padding:12px 14px; border:2px solid rgba(46,36,31,.14); border-radius:13px; background:#fff; color:var(--charcoal); }
.admin-filter-form>a { font-weight:800; text-decoration:none; text-align:center; }
.admin-pagination { display:flex; gap:8px; align-items:center; flex-wrap:wrap; margin-top:24px; }
.admin-pagination a { min-width:38px; padding:8px 11px; border:1px solid rgba(46,36,31,.16); border-radius:10px; text-align:center; text-decoration:none; font-weight:800; }
.admin-pagination a.active { background:var(--charcoal); color:#fff; }
.admin-result-count { color:var(--muted); font-weight:800; }
.admin-panel-spaced { margin-top:24px; }
.admin-title-row { display:flex; align-items:center; justify-content:space-between; gap:18px; flex-wrap:wrap; }
.admin-check-list { display:grid; gap:10px; margin-bottom:22px; }
.admin-check-list>div { display:flex; justify-content:space-between; gap:16px; padding:11px 0; border-bottom:1px solid rgba(46,36,31,.1); }
.status-ok { color:#42611f; }
.status-warning { color:#a43d24; }
.admin-table code { white-space:nowrap; }
@media(max-width:980px){.admin-filter-form{grid-template-columns:1fr 1fr}.admin-filter-form input{grid-column:1/-1}}
@media(max-width:560px){.admin-filter-form{grid-template-columns:1fr}.admin-filter-form input{grid-column:auto}.admin-filter-form .button{width:100%}}

/* V4 Sprint 3 — diagnóstico e operação de imagens */
.admin-upload-metrics { display:grid; grid-template-columns:repeat(5,minmax(120px,1fr)); gap:14px; margin:22px 0; }
.admin-upload-metrics>div { padding:18px; border:1px solid rgba(46,36,31,.1); border-radius:14px; background:var(--cream); }
.admin-upload-metrics span { display:block; color:var(--muted); font-size:.88rem; font-weight:800; }
.admin-upload-metrics strong { display:block; margin-top:5px; font-size:1.55rem; }
.admin-code-list { padding-left:22px; }
.admin-code-list code { word-break:break-all; }
.admin-table-uploads { min-width:700px; }
.admin-table-uploads code { white-space:normal; word-break:break-all; }
@media(max-width:980px){.admin-upload-metrics{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.admin-upload-metrics{grid-template-columns:1fr}}

/* V4 Sprint 4 — conteúdo dinâmico e SEO */
.home-product-image {
    width: min(100%, 260px);
    height: 270px;
    object-fit: contain;
    margin: 18px auto 26px;
    filter: drop-shadow(0 22px 24px rgba(46,36,31,.16));
}
.product-title-link {
    color: inherit;
    text-decoration: none;
}
.product-title-link:hover,
.product-title-link:focus-visible {
    color: var(--paprika);
}
.store-notes {
    padding-top: 12px;
    border-top: 1px solid rgba(46,36,31,.1);
    color: rgba(46,36,31,.74);
}
.recipe-card > a {
    display: block;
}
@media (max-width: 640px) {
    .home-product-image { height: 230px; }
}
