
:root{--g:#165c2b;--g2:#2f7b43;--bg:#f4f7ef;--ink:#17351f;--muted:#6c786f;--danger:#a32626;--warn:#a15d00}
*{box-sizing:border-box}body{margin:0;font-family:Arial,sans-serif;background:var(--bg);color:var(--ink)}
.topbar{position:sticky;top:0;z-index:5;display:flex;justify-content:space-between;align-items:center;background:#fff;padding:14px 5%;box-shadow:0 2px 10px #0001}.brand{display:flex;align-items:center;gap:10px}.brand h1{margin:0}.brand small{color:var(--muted)}.leaf{font-size:2rem}.topActions{display:flex;gap:8px}
button{cursor:pointer}.primary,.ghost,.danger{border-radius:12px;padding:12px 16px;font-weight:700}.primary{background:var(--g);color:#fff;border:0;text-decoration:none;display:inline-block}.primary:disabled{opacity:.45}.ghost{background:#fff;color:var(--g);border:1px solid #b7c8ba}.danger{background:#fff;color:var(--danger);border:1px solid #dbaaaa}
.hero{display:grid;grid-template-columns:2fr 1fr;gap:22px;padding:38px 6%;background:linear-gradient(135deg,#eaf5e4,#fffdf7)}.hero h2{font-size:clamp(2rem,5vw,3.5rem);margin:.25em 0}.tag{color:var(--g);font-weight:800;letter-spacing:2px}.heroBox{background:#fff;padding:25px;border-radius:22px;display:flex;flex-direction:column;gap:10px;box-shadow:0 12px 30px #0001}
main{padding:24px 5% 90px}.modeBox{background:#fff;padding:18px;border-radius:18px;margin-bottom:18px}.modeBox h3{margin-top:0}.modeButtons{display:grid;grid-template-columns:1fr 1fr;gap:12px}.modeBtn{background:#fff;border:1px solid #cad6cc;border-radius:14px;padding:16px;text-align:left;color:var(--ink)}.modeBtn b,.modeBtn span{display:block}.modeBtn span{color:var(--muted);margin-top:4px}.modeBtn.active{border:2px solid var(--g);background:#eef8ef}.modeInfo{margin-top:12px;padding:12px;border-radius:12px;background:#f4f8f2}
.filters{display:flex;gap:12px}.filters input,.filters select,#authBox input,.adminForm input,.checkoutForm input,.checkoutForm select,.checkoutForm textarea,.weekControls input,.rowBetween select,.accountForm input,.tripForm input,.tripForm select,.tripForm textarea,.providerForm input,.providerForm select,.purchaseItemForm input,.purchaseItemForm select{width:100%;padding:13px;border:1px solid #d5ddd6;border-radius:11px;background:#fff}
.status{margin:14px 0;color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(235px,1fr));gap:18px}.card{background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 8px 24px #00000010}.productMedia{position:relative}.productMedia .mainImg{width:100%;height:220px;object-fit:cover}.thumbs{position:absolute;left:8px;right:8px;bottom:8px;display:flex;justify-content:center;gap:6px}.thumbs button{padding:0;border:2px solid #fff;border-radius:8px;overflow:hidden;background:#fff}.thumbs img{width:42px;height:42px;object-fit:cover;display:block}.cardBody{padding:14px}.card h3{margin:0 0 6px}.price{font-size:1.4rem;color:var(--g);font-weight:800}.meta{display:flex;justify-content:space-between;color:var(--muted);font-size:.85rem;margin:8px 0}.soldOut{color:#9b1c1c;font-weight:800}.productQty{display:grid;grid-template-columns:45px 1fr 45px;gap:5px;align-items:center;margin:12px 0}.productQty button{height:42px;border:1px solid #cfd8d0;background:#fff;border-radius:10px;font-size:1.3rem}.productQty input{text-align:center;height:42px;border:1px solid #cfd8d0;border-radius:10px;font-size:1.05rem}.subtotalLine{display:flex;justify-content:space-between;margin:8px 0;font-weight:700}.buyNudge{min-height:20px;color:var(--warn);font-size:.86rem}.full{width:100%}
.cartFab{position:fixed;right:18px;bottom:18px;z-index:7;background:var(--g);color:#fff;border:0;border-radius:99px;padding:14px 18px;font-weight:800;box-shadow:0 8px 24px #0003}
.overlay{position:fixed;inset:0;background:#0006;z-index:9;display:none}.overlay.show{display:block}.panel{position:fixed;right:-100%;top:0;width:min(440px,100%);height:100%;background:#fff;z-index:10;padding:18px;overflow:auto;transition:.3s}.panel.wide{width:min(760px,100%)}.panel.adminPanel{width:min(1180px,100%)}.panel.open{right:0}.panelHead{display:flex;justify-content:space-between;align-items:center}.x{border:0;background:none;font-size:2rem}.hidden{display:none!important}
.helpContent{font-size:1.15rem}.helpSectionBtn{display:block;width:100%;margin:8px 0;padding:14px;text-align:left;border:1px solid #cbd8cc;border-radius:12px;background:#fff;font-size:1rem;font-weight:700}.helpText{background:#f4f8f2;padding:18px;border-radius:15px;line-height:1.6}.helpText li{margin-bottom:10px}
.cartRow,.adminRow{display:grid;grid-template-columns:58px 1fr auto;gap:10px;align-items:center;padding:12px 0;border-bottom:1px solid #eee}.cartRow img,.adminRow img{width:58px;height:58px;object-fit:cover;border-radius:10px}.qty{display:flex;gap:8px;align-items:center}.qty button{width:28px;height:28px;border-radius:8px;border:1px solid #ccc;background:#fff}.cartSummary{position:sticky;bottom:0;background:#fff;padding-top:14px}.cartSummary>div{display:flex;justify-content:space-between;font-size:1.3rem}
#authBox{display:grid;gap:10px}.checkoutForm{display:grid;grid-template-columns:1fr 1fr;gap:10px}.checkoutForm textarea{min-height:90px;grid-column:1/-1}.subform,.transferBox{display:grid;grid-template-columns:1fr 1fr;gap:10px;grid-column:1/-1;padding:14px;background:#f3f8ef;border-radius:12px}.transferBox h4,.transferBox #transferAccount,.depositBox{grid-column:1/-1}.transferDetails{background:#fff;padding:12px;border-radius:10px;border:1px solid #dbe6d8;line-height:1.55}.depositBox{background:#fff;padding:16px;border-radius:12px;text-align:center}.depositBox strong{display:block;font-size:2rem;color:var(--g);margin:8px}.depositBox small{color:var(--muted)}
.adminTop{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.tabBtn.active{background:var(--g);color:#fff}.adminSection{background:#f8faf6;border:1px solid #e1e8df;border-radius:15px;padding:14px;margin-bottom:16px}.dashGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin-bottom:16px}.dashCard{background:#fff;border-radius:14px;padding:16px;box-shadow:0 4px 15px #0001}.dashCard b{font-size:1.6rem;color:var(--g);display:block}.weekControls{display:grid;grid-template-columns:2fr 1fr 1fr 1.5fr auto;gap:8px}
.orderCard{background:#fff;border-radius:14px;padding:14px;margin:10px 0;border:1px solid #e2e8e1}.orderCard.cancelled{opacity:.7;border-color:#d9a6a6}.orderHead,.rowBetween{display:flex;justify-content:space-between;gap:10px;align-items:center}.toolbar{display:flex;gap:8px;flex-wrap:wrap}.orderItems{font-size:.92rem;margin:10px 0}.statusPill{display:inline-block;padding:5px 9px;border-radius:999px;background:#e9f5eb;color:var(--g);font-size:.8rem;font-weight:700}.statusPill.cancelado{background:#f8e6e6;color:var(--danger)}.orderActions{display:flex;flex-wrap:wrap;gap:7px}.orderActions select{padding:8px;border-radius:9px;border:1px solid #ccd5cd}.labelBox{border:2px dashed #555;padding:14px;margin:10px 0;background:#fff}
.purchaseTable{width:100%;border-collapse:collapse;background:#fff}.purchaseTable th,.purchaseTable td{padding:10px;border-bottom:1px solid #e5e5e5;text-align:left}.purchaseTable input{width:90px;padding:7px}.purchaseTotals{margin-top:14px;padding:14px;background:#fff;border-radius:12px}
.adminForm{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:16px 0}.fileLabel{display:block;background:#eef5ec;border:1px dashed #8aaa8f;border-radius:11px;padding:11px;text-align:center;font-weight:700;margin-top:6px}.fileLabel input{display:none}.imageSlots{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;grid-column:1/-1}.previewGallery{display:flex;gap:8px;grid-column:1/-1;flex-wrap:wrap}.previewGallery img{width:100px;height:100px;object-fit:cover;border-radius:10px}.checkRow{display:flex;align-items:center;gap:8px;padding:10px;background:#fff;border-radius:10px}.checkRow input{width:auto!important}.adminActions{display:flex;gap:6px;flex-wrap:wrap}.adminActions button{padding:7px 9px}.accountForm,.tripForm{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.tripForm textarea{grid-column:1/-1}.accountRow,.tripCard,.providerCard{background:#fff;border-radius:12px;padding:12px;margin:10px 0}.tripCard{border:1px solid #dfe7de}.tripHead{display:flex;justify-content:space-between;gap:12px}.tripStats{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px;margin:10px 0}.tripStats div{background:#f4f8f2;padding:10px;border-radius:9px}.providerForm,.purchaseItemForm{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:12px}.providerForm textarea{grid-column:1/-1}.purchaseItemForm{background:#f4f8f2;padding:12px;border-radius:12px}.purchaseItemForm .wideField{grid-column:span 2}.purchaseItemsTable{width:100%;border-collapse:collapse;margin-top:10px}.purchaseItemsTable th,.purchaseItemsTable td{padding:8px;border-bottom:1px solid #eee;text-align:left;font-size:.9rem}
.printOrder{font-family:Arial,sans-serif;color:#111}.printOrder table{width:100%;border-collapse:collapse}.printOrder th,.printOrder td{border-bottom:1px solid #ccc;padding:8px;text-align:left}.printOrder .totals{margin-top:18px;font-size:18px}
@page label{size:15cm 10cm;margin:4mm}.shippingLabel{width:15cm;height:10cm;padding:6mm;border:2px solid #000;font-family:Arial;color:#000}.shippingLabel h1{font-size:24px;margin:0 0 5px}.shippingLabel .big{font-size:20px;font-weight:700}.shippingLabel .gridLabel{display:grid;grid-template-columns:1fr 1fr;gap:5px}
@media(max-width:800px){.topbar{align-items:flex-start}.topActions{flex-direction:column}.hero{grid-template-columns:1fr}.heroBox{display:none}.modeButtons{grid-template-columns:1fr}.filters{flex-direction:column}.adminForm,.checkoutForm,.subform,.transferBox{grid-template-columns:1fr}.weekControls,.accountForm,.tripForm,.providerForm,.purchaseItemForm{grid-template-columns:1fr}.imageSlots{grid-template-columns:1fr}.cartRow,.adminRow{grid-template-columns:50px 1fr}.cartRow>b,.adminRow>.adminActions{grid-column:2}.orderHead,.rowBetween,.tripHead{align-items:flex-start;flex-direction:column}.purchaseTable{font-size:.82rem;display:block;overflow:auto}}
.accountModes{margin-bottom:14px}.muted{color:#68736b}.center{text-align:center}.accountWelcome,.successBox{background:#f0f8f1;border-radius:20px;padding:22px;margin:12px 0}.successBox{text-align:center}.successIcon{font-size:46px}.buttonLink{display:block;text-align:center;text-decoration:none;box-sizing:border-box}.topActions{flex-wrap:wrap}.danger.small{padding:7px 10px;font-size:13px}.purchaseItemsTable td:last-child{white-space:nowrap}
@media(max-width:600px){.topActions{gap:6px}.topActions .ghost{padding:10px 12px}.accountModes{grid-template-columns:1fr 1fr}}
.heroImage{margin:0;width:min(260px,32vw);height:190px;border-radius:24px;overflow:hidden;box-shadow:0 14px 35px rgba(20,70,35,.18);flex:0 0 auto}
.heroImage img{width:100%;height:100%;object-fit:cover;display:block}
#communesList{display:grid;gap:10px;margin-top:16px}
.communeRow{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:14px;border:1px solid #d7e3d8;border-radius:14px;background:#fff}
@media(max-width:720px){.heroImage{width:100%;height:180px;order:2}.heroBox{order:3}.hero{align-items:stretch;flex-wrap:wrap}.communeRow{align-items:flex-start;flex-direction:column}}


/* Estadísticas V5.3 */
.statsGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:16px}
.statsBox{background:#fff;border:1px solid #dfe8df;border-radius:14px;padding:14px;min-height:150px}
.statsBox h4{margin:0 0 10px}.statLine{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border-bottom:1px solid #eef2ee}.statLine:last-child{border-bottom:0}.barRow{display:grid;grid-template-columns:minmax(90px,1fr) 3fr auto;gap:8px;align-items:center;margin:8px 0}.barTrack{height:9px;background:#edf2ed;border-radius:99px;overflow:hidden}.barFill{height:100%;background:#2f7d4a;border-radius:99px}.muted{color:#66756b;font-size:.9rem}
@media(max-width:720px){.statsGrid{grid-template-columns:1fr}.barRow{grid-template-columns:minmax(80px,1fr) 2fr auto}}

/* Portada administrable V5.4 */
.hero{grid-template-columns:minmax(0,1.5fr) minmax(230px,.9fr) minmax(210px,.7fr);align-items:center}
.heroMedia{min-width:0}.heroVideo,.heroCarousel{width:100%;height:220px;border-radius:24px;overflow:hidden;box-shadow:0 14px 35px rgba(20,70,35,.18);background:#102b18;position:relative}
.heroVideo video,.heroCarousel img{width:100%;height:100%;object-fit:cover;display:block}.heroVideo video{background:#000}
.carouselDots{position:absolute;left:0;right:0;bottom:10px;display:flex;justify-content:center;gap:7px}.carouselDots button{width:11px;height:11px;border:0;border-radius:99px;background:#ffffff99;padding:0}.carouselDots button.active{background:#fff;transform:scale(1.25)}
.heroContactButtons,.contactButtons{display:flex;gap:9px;flex-wrap:wrap;margin-top:16px}.contactBtn{display:inline-block;text-decoration:none;font-weight:800;border-radius:999px;padding:11px 16px;border:1px solid #cbd8cc;background:#fff;color:var(--g)}.contactBtn.whatsapp{background:var(--g);color:#fff;border-color:var(--g)}.contactBtn.facebook{color:#174e91}.contactBtn.email{color:#7d4a16}
.onlineBusiness{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:28px 6%;background:#fff;border-top:1px solid #e1e8df}.onlineBusiness h2{margin:0 0 7px}.onlineBusiness p{margin:0;max-width:750px;color:var(--muted);line-height:1.5}.siteFooter{text-align:center;padding:18px;background:#143c22;color:#fff}
.homepageForm{display:grid;grid-template-columns:1fr 1fr;gap:12px}.homepageForm>label{display:grid;gap:6px;font-weight:700}.homepageForm input,.homepageForm textarea,.homepageForm select{width:100%;padding:13px;border:1px solid #d5ddd6;border-radius:11px;background:#fff}.homepageForm textarea{min-height:100px}.homepageMediaGrid{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.homepageMediaGrid>div{background:#fff;border:1px solid #dfe7de;border-radius:14px;padding:12px}.homePreview{min-height:115px;margin:10px 0;border-radius:12px;overflow:hidden;background:#f1f5ef;display:grid;place-items:center}.homePreview img,.homePreview video{width:100%;height:150px;object-fit:cover;display:block}.homeChecks{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.homepageForm>h4{grid-column:1/-1;margin:8px 0 0}
@media(max-width:900px){.hero{grid-template-columns:1fr 1fr}.heroBox{grid-column:1/-1}.homepageMediaGrid{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.hero{grid-template-columns:1fr}.heroBox{grid-column:auto}.heroVideo,.heroCarousel{height:210px}.onlineBusiness{align-items:flex-start;flex-direction:column}.homepageForm{grid-template-columns:1fr}.homepageMediaGrid,.homeChecks{grid-template-columns:1fr}.homepageMediaGrid,.homeChecks,.homepageForm>h4{grid-column:1}}

/* V5.5 filtros administrables */
.filterAssignmentBox{grid-column:1/-1;padding:14px;border:1px solid #d9e5d6;border-radius:14px;background:#f8fbf7}
.filterChecks{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;margin-top:8px}
#catalogFiltersList{margin-top:18px}
@media(max-width:700px){.filters{grid-template-columns:1fr}.filterChecks{grid-template-columns:1fr}}
