:root,[data-tema=claro]{--bg:#f1f5f3;--panel:#fff;--text:#173e31;--muted:#53655c;--primary:#236447;--on-primary:#fff;--border:#ccd9d1;--soft:#e5f0e9}
[data-tema=nocturno]{--bg:#151b25;--panel:#222d3c;--text:#edf2fa;--muted:#c1cad6;--primary:#a9d9c1;--on-primary:#14271c;--border:#778798;--soft:#354650}
[data-tema=azul]{--bg:#eef4fc;--panel:#fff;--text:#193659;--muted:#485e7b;--primary:#24588d;--on-primary:#fff;--border:#a9c0db;--soft:#e1ecf9}
[data-tema=verde]{--bg:#eaf3e7;--panel:#fafff7;--text:#214226;--muted:#49634d;--primary:#356d3d;--on-primary:#fff;--border:#a8c3a6;--soft:#dbebd6}
body{background:var(--bg);color:var(--text)}header{background:var(--primary);color:var(--on-primary)}a{color:var(--primary)}button,.button{background:var(--primary);color:var(--on-primary)}section,.card{background:var(--panel);border-color:var(--border)}label,input,select,textarea{color:var(--text)}input,select,textarea{background:var(--panel);border-color:var(--border)}.muted,small{color:var(--muted)}.notice,.tag{background:var(--soft);color:var(--text);border-color:var(--border)}.sticky{background:var(--panel);border-color:var(--border)}.secondary{background:var(--soft);color:var(--text)}.tema-selector{max-width:310px;margin:12px 0}.promociones-rail{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth}.promocion{min-width:min(90%,640px);scroll-snap-align:start;flex:0 0 min(90%,640px)}.promocion img,.promocion video{max-width:100%;max-height:400px;object-fit:contain}.promociones-controles{display:flex;justify-content:space-between;gap:16px}.promocion h3{font-size:24px}.promocion-texto{white-space:pre-line;overflow-wrap:anywhere}@media(prefers-reduced-motion:reduce){.promociones-rail{scroll-behavior:auto}}

header a{color:var(--on-primary)}
.foto-pedido{margin:12px 0}.foto-pedido img{display:block;width:100%;max-width:220px;height:180px;object-fit:contain;border-radius:12px;background:var(--panel)}.foto-pedido .placeholder{width:100%;max-width:220px;height:120px}

/* Clear catalog pagination on desktop and touch screens. */
.catalogo-paginacion{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:16px;max-width:720px;margin:28px auto;padding:16px;border:1px solid var(--border);border-radius:16px;background:var(--panel);box-sizing:border-box}
.catalogo-paginacion .button{display:flex;align-items:center;justify-content:center;min-height:52px;padding:12px 24px;font-size:18px;font-weight:700;line-height:1.3;text-align:center;text-decoration:none;box-sizing:border-box}
.catalogo-paginacion [rel=prev]{grid-column:1}.catalogo-paginacion [rel=next]{grid-column:3}.catalogo-pagina-actual{grid-column:2;grid-row:1;font-size:17px;font-weight:700;text-align:center}
.catalogo-paginacion a:focus-visible{outline:3px solid var(--text);outline-offset:4px}
.recordado-espera{display:flex;align-items:center;gap:12px}.recordado-spinner{flex:none;display:inline-block;width:24px;height:24px;box-sizing:border-box;border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:recordado-giro .8s linear infinite}
@keyframes recordado-giro{to{transform:rotate(360deg)}}
@media(max-width:540px){.catalogo-paginacion{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:12px}.catalogo-pagina-actual{grid-column:1/-1;grid-row:1}.catalogo-paginacion [rel=prev]{grid-column:1;grid-row:2}.catalogo-paginacion [rel=next]{grid-column:2;grid-row:2}.catalogo-paginacion .button{min-height:48px;padding:10px 8px;font-size:16px}}
@media(prefers-reduced-motion:reduce){.recordado-spinner{animation:none}}

.pagina-catalogo .search>label{min-width:0;max-width:100%}.pagina-catalogo .search select{max-width:100%;box-sizing:border-box}
