/* V104: consistent discovery surfaces and space for every action label. */
@layer vl-colors {
 #categorias #exploreCategoryGrid>button{--vl-text:#253241;--vl-muted:#4b6156;--vl-accent:#236043;background:#fff!important}
 #categorias #exploreCategoryGrid>button:hover{background:#eaf0e3!important}
 #promociones{--vl-text:#253241;--vl-muted:#4b6156;--vl-accent:#236043;background:#f7f5ef!important}
 #promociones .vl-promotion-card{--vl-text:#253241;--vl-muted:#4b6156;--vl-accent:#236043;background:#fff!important}
 #promociones .vl-promotion-cta{--vl-text:#fff;--vl-muted:#fff;--vl-accent:#e7eead;background:#173a31!important}
 #agenda .vl-agenda-card-actions a{--vl-text:#fff;--vl-muted:#fff;--vl-accent:#e7eead;background:#173a31!important}
 #agenda .vl-agenda-card-actions button{--vl-text:#173a31;--vl-muted:#173a31;--vl-accent:#173a31;background:#e7eddf!important}
}
@layer vl-layout {
 #categorias #exploreCategoryGrid{gap:16px!important;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr))!important}
 #categorias #exploreCategoryGrid>button{position:relative;grid-template-columns:48px minmax(0,1fr)!important;gap:12px 16px!important;min-height:130px!important;padding:22px 42px 22px 20px!important;border-color:#cbd4c5!important;box-shadow:none!important}
 #categorias #exploreCategoryGrid>button:after{content:'↗';position:absolute;right:16px;top:18px;font-size:18px;color:#236043}
 #categorias #exploreCategoryGrid>button>strong{font-size:16px!important;line-height:1.4!important;margin:0!important}
 #categorias #exploreCategoryGrid>button>span:last-child{font-size:13px!important;line-height:1.5;margin:0!important}
 #categorias #exploreCategoryGrid>button>span:first-child{width:48px!important;height:48px!important;border-radius:14px}
 #promociones #promotionsTitle{font-size:clamp(28px,3.5vw,42px)!important;letter-spacing:-.035em;line-height:1.15}
 #promociones #promotionsDescription{font-size:15px!important;line-height:1.7;max-width:680px;margin-top:12px}
 #promotionsGrid{gap:24px!important;align-items:stretch}
 #promociones .vl-promotion-card{border:1px solid #cbd4c5;border-radius:20px;box-shadow:0 8px 24px #173a3109!important;min-width:0}
 #promociones .vl-promotion-open{display:flex;flex-direction:column;height:100%;min-width:0;padding:0}
 #promociones .vl-promotion-open>img,#promociones .vl-promotion-open>div:first-child:not(.vl-promotion-copy){aspect-ratio:4/3;width:100%;object-fit:cover;flex-shrink:0}
 #promociones .vl-promotion-copy{padding:24px!important;flex:1;display:flex;flex-direction:column;gap:12px;min-width:0;width:100%}
 #promociones .vl-promotion-meta{flex-wrap:wrap;align-items:start;gap:8px 12px}
 #promociones .vl-promotion-meta>span{font-size:11px!important;line-height:1.5;overflow-wrap:anywhere}
 #promociones .vl-promotion-copy h3{font-size:24px;line-height:1.25;letter-spacing:-.025em;margin:0;overflow-wrap:anywhere}
 #promociones .vl-promotion-copy p{font-size:14px;line-height:1.75;margin:0 0 8px;overflow-wrap:anywhere}
 #promociones .vl-promotion-cta{margin-top:auto!important;min-height:48px;display:flex!important;justify-content:space-between;gap:16px;align-items:center;padding:14px 16px;border-radius:12px;font-size:13px!important;font-weight:800;line-height:1.5;width:100%}
 #promociones .vl-promotion-cta>i{flex-shrink:0;margin:0}
 #agenda .vl-agenda-card-actions>div{grid-template-columns:repeat(auto-fit,minmax(min(100%,130px),1fr));gap:10px}
 #agenda .vl-agenda-card-actions :is(button,a){min-width:0;min-height:48px;height:auto;padding:13px 14px;font-size:13px;line-height:1.5;white-space:normal;gap:8px;border-radius:12px;text-align:center}
 #agenda .vl-agenda-card-actions :is(button,a)>i{flex:0 0 auto;margin:0}
 #agenda .vl-agenda-card-actions button{border-color:#a5b59e}
 #agenda .vl-agenda-card-body>span{overflow-wrap:anywhere}
 #agenda .vl-agenda-card-media{min-width:0}
 #promociones button:focus-visible,#categorias #exploreCategoryGrid>button:focus-visible{outline:3px solid #236043;outline-offset:4px}
 @media(max-width:639px){#categorias #exploreCategoryGrid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}#categorias #exploreCategoryGrid>button{display:flex!important;flex-direction:column;align-items:start;gap:10px!important;padding:18px 16px!important;min-height:160px!important}#categorias #exploreCategoryGrid>button>strong{font-size:14px!important}#categorias #exploreCategoryGrid>button>span:last-child{font-size:12px!important}#promociones .vl-promotion-copy{padding:22px!important}#promociones #promotionsDescription{font-size:14px!important}}
 @media(max-width:350px){#categorias #exploreCategoryGrid{grid-template-columns:1fr!important}}
 @media(prefers-reduced-motion:reduce){#promociones .vl-promotion-card,#categorias #exploreCategoryGrid>button{transition:none!important;transform:none!important}}

/* V145: beneficios con información completa */
#promociones .vl-promotion-open>img{object-fit:contain!important;background:#f0f3ed!important;padding:10px!important;min-height:240px!important}
#promociones .vl-promotion-meta{display:flex!important;flex-direction:column!important;gap:8px!important}
#promociones .vl-promotion-meta>span:first-child{font-size:13px!important;line-height:1.5!important}
#promociones .vl-promotion-meta>span:last-child:not(:first-child){padding:7px 10px;border:1px solid #c4d1bf;border-radius:8px;background:#f0f4ed;font-size:12px!important;line-height:1.6!important}
#promociones .vl-promotion-copy h3{font-size:26px!important;line-height:1.3!important}
#promociones .vl-promotion-copy p{font-size:15px!important;line-height:1.75!important;display:block!important;overflow:visible!important;-webkit-line-clamp:unset!important}
#promociones .vl-promotion-card:only-child{grid-column:1/-1}
@media(min-width:800px){#promociones .vl-promotion-card:only-child .vl-promotion-open{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;align-items:stretch!important}#promociones .vl-promotion-card:only-child .vl-promotion-open>img{height:100%!important;min-height:300px!important;max-height:480px!important;aspect-ratio:auto!important}#promociones .vl-promotion-card:only-child .vl-promotion-copy{padding:30px!important}}
}
