*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{font-size:16px;-webkit-text-size-adjust:100%}
body{font-family:var(--font);background:var(--color-bg);color:#222;min-height:100vh}
button{cursor:pointer;font-family:inherit}
input,button{font-size:inherit}
#app{max-width:480px;margin:0 auto;min-height:100vh;background:var(--color-bg-card);position:relative;overflow-x:hidden;padding-bottom:calc(72px + env(safe-area-inset-bottom))}

/* Scroll container — header sticky top, nav fixed bottom */
#app{scroll-behavior:smooth}
/* Feed slot — populated by n8n */
#comp-feed{min-height:0}
/* Touch target enforcement */
button,a,[role=button]{touch-action:manipulation}
@media(min-width:769px){
html,body{background:#edecea}
#app{max-width:1140px;display:grid;grid-template-columns:260px 1fr;padding-bottom:60px;box-shadow:0 4px 32px rgba(0,0,0,.09);overflow-x:visible}
#comp-header{grid-column:1/-1}
#comp-search{grid-column:1/-1}
#comp-filtros{grid-column:1;grid-row:3/99;position:sticky;top:0;align-self:start}
#comp-relampago,#comp-categories,#comp-deals-40,#comp-business,#comp-trends,#comp-feed{grid-column:2}
.nav-wrap{max-width:1140px;left:50%;transform:translateX(-50%)}
.logo-wrap{padding:16px 28px}
.fil-wrap{min-height:calc(100vh - 130px);padding:16px 14px 24px;border-right:1px solid rgba(255,255,255,.15)}
}
