.tienda{max-width:1140px;margin:28px auto 48px;padding:0 20px;color:#103e59;font:15px/1.5 Arial,sans-serif}.tienda *{box-sizing:border-box}.tienda [hidden]{display:none!important}.tienda-hero{background:#103e59;border-radius:12px;padding:24px 28px;color:white}.tienda-hero span{font-size:11px;letter-spacing:2px;color:#ffad3b}.tienda-hero h1{color:#ffad3b;margin:6px 0;font-size:30px}.tienda-hero p{margin:0}.tienda-nav{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}.tienda button,.tienda-nav a,.tienda .tienda-link{display:inline-flex;align-items:center;justify-content:center;border:1px solid #103e59;border-radius:7px;padding:9px 15px;background:#fff;color:#103e59;font:600 14px Arial;min-height:40px;cursor:pointer;text-decoration:none;gap:6px}.tienda button.primary{background:#ffad3b}.tienda button:disabled{opacity:.55;cursor:default}.tienda button.danger{color:#a12626;border-color:#a12626}.tienda button:focus-visible,.tienda a:focus-visible{outline:3px solid #ffad3b;outline-offset:2px}.tienda-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.tienda-card{border:1px solid #d0dfe8;background:white;border-radius:12px;overflow:hidden;padding:20px}.tienda-card h2,.tienda-card h3{margin:0 0 10px;font-size:19px}.tienda-card p{margin:8px 0}.tienda-producto{display:flex;flex-direction:column;gap:10px}.tienda-producto img{width:100%;height:185px;object-fit:contain;background:#f4f7f9}.tienda-producto .precio{font-size:22px;font-weight:bold}.tienda-producto button{margin-top:auto}.tienda-descripcion{white-space:pre-wrap}.tienda-tag{font-size:12px;color:#526a7c}.tienda-lista{display:grid;gap:16px}.tienda-fila{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid #e3eaf0;flex-wrap:wrap}.tienda-form{display:grid;grid-template-columns:1fr 1fr;gap:16px}.tienda label{display:grid;gap:6px}.tienda input,.tienda select,.tienda textarea{width:100%;padding:10px;border:1px solid #a4b8c9;border-radius:6px;font:inherit;color:#103e59;background:white;min-width:0}.tienda textarea{min-height:90px}.tienda label.check{display:flex;align-items:center}.tienda label.check input{width:auto}.tienda .full{grid-column:1/-1}.tienda-totales{background:#edf3f7;padding:16px;border-radius:8px}.tienda-totales strong{font-size:20px}.tienda-mensaje-error{color:#a12626}.tienda small{display:block}.tienda-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.tienda-empty{padding:32px;background:#f0f5f8;border:1px solid #d0dfe8;border-radius:10px}.tienda-banner-acceso{max-width:1140px;margin:16px auto;padding:0 20px}.tienda-banner-acceso a{display:block;background:#103e59;color:#ffad3b;border-radius:8px;padding:14px 20px;text-decoration:none;font-weight:bold}.tienda h2{font-size:22px}.tienda nav button[aria-current=page]{background:#103e59;color:#fff}@media(max-width:760px){.tienda-grid{grid-template-columns:1fr 1fr}.tienda-form{grid-template-columns:1fr}.tienda{padding:0 12px;margin-top:16px}.tienda-hero{padding:20px}}@media(max-width:480px){.tienda-grid{grid-template-columns:1fr}.tienda-nav{gap:6px}.tienda-nav button{flex:1 1 40%}}

/* Tienda con sesión: controles de compras integrados en la cabecera. */
body.sesion-iniciada main.tienda .tienda-hero,body.tienda-con-cuenta main.tienda .tienda-hero{display:none}
#cabecera-compartida .header-actions .header-tienda-control{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:40px;padding:0 14px;border:1px solid #9eacb6;border-radius:8px;background:transparent;color:#fff;font:700 13px/1.2 Arial,sans-serif;cursor:pointer}
#cabecera-compartida .header-actions .header-tienda-control[hidden]{display:none!important}
#cabecera-compartida .header-actions .header-tienda-control[aria-current="page"]{background:#103e59;border-color:#fff}
body.tienda-con-cuenta #cabecera-compartida .header-actions{flex-wrap:wrap;gap:10px}
/* Identidad del sitio y catálogo compacto. */
.tienda{color:#171717}.tienda-hero{background:#111;color:#fff}.tienda-hero h1,.tienda-hero span{color:#fff}.tienda button,.tienda-nav a,.tienda .tienda-link{border-color:#d71920;color:#b5121b;background:#fff}.tienda button.primary,.tienda nav button[aria-current=page]{background:#d71920;color:#fff;border-color:#d71920}.tienda button:hover:not(:disabled),.tienda-nav a:hover,.tienda .tienda-link:hover{background:#111;color:#fff;border-color:#111}.tienda button:focus-visible,.tienda a:focus-visible{outline-color:#d71920}.tienda input,.tienda select,.tienda textarea{color:#171717;accent-color:#d71920}.tienda-banner-acceso a{background:#111;color:#fff}.tienda-totales,.tienda-empty{background:#fff}
#cabecera-compartida .header-actions .header-tienda-control{background:#fff;color:#171717;border-color:#d71920}#cabecera-compartida .header-actions .header-tienda-control[aria-current="page"]{background:#d71920;color:#fff;border-color:#d71920}#cabecera-compartida .header-actions .header-tienda-control:hover{background:#111;color:#fff}
.tienda-grid{align-items:start}.tienda-producto{padding:16px;gap:7px;background:#fff}.tienda-producto img{background:#fff;height:160px}.tienda-producto h2{font-size:18px;margin:0;line-height:1.3}.tienda-producto p{margin:0}.tienda-producto>.tienda-descripcion{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;white-space:normal;font-size:14px;line-height:1.4}.tienda-producto .precio{font-size:20px}.tienda-producto button{margin-top:0;padding:7px 12px;min-height:36px}
.tienda-detalle{width:min(760px,calc(100% - 32px));max-height:90vh;overflow:auto;padding:24px;border:1px solid #ddd;border-radius:12px;background:#fff;color:#171717}.tienda-detalle::backdrop{background:#0009}.tienda-detalle-cerrar{float:right;margin:0 0 12px 16px}.tienda-detalle h2{margin-top:0}.tienda-detalle>img{display:block;width:100%;max-height:300px;object-fit:contain;background:#fff}.tienda-detalle .tienda-descripcion{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.6}.tienda-detalle .precio{font-weight:700;font-size:22px}

/* Tarjetas proporcionadas con filas y acciones alineadas. */
.tienda-grid{align-items:stretch;grid-auto-rows:1fr;gap:20px}
.tienda-producto{display:grid;grid-template-rows:160px 16px 48px 40px 68px 38px 40px;gap:10px;padding:18px;height:100%;min-width:0;border-color:#e1e4e7;box-shadow:0 3px 12px #00000006}
.tienda-producto>img{grid-row:1;height:160px;margin:0}.tienda-producto>.tienda-tag{grid-row:2;font-size:10px;line-height:16px;letter-spacing:.8px;color:#647078;font-weight:600}
.tienda-producto>h2{grid-row:3;font-size:18px;font-weight:700;line-height:24px;color:#171717;letter-spacing:-.2px;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.tienda-producto>.tienda-descripcion{grid-row:4;font-size:13px;line-height:20px;color:#58616a;margin:0}
.tienda-producto>.precio{grid-row:5;display:flex;align-items:baseline;align-content:center;flex-wrap:wrap;gap:0 7px;border-top:1px solid #eceeef;padding-top:8px;line-height:1.2;color:#171717}
.tienda-producto .precio-etiqueta{flex-basis:100%;font-size:11px;font-weight:400;color:#647078;margin-bottom:4px}.tienda-producto .precio-monto{font-size:27px;font-weight:700;letter-spacing:-.6px;font-variant-numeric:tabular-nums}.tienda-producto .precio-moneda{font-size:11px;font-weight:600;color:#647078}
.tienda-producto>button{grid-row:6;width:100%;margin:0;padding:8px 12px;font-size:13px;min-height:38px}.tienda-producto>button.primary{grid-row:7;min-height:40px}

.tienda .tienda-hero{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px}
.tienda .tienda-hero h1{margin-right:auto}
.tienda .tienda-hero>p{flex-basis:100%}
.tienda .tienda-utilidades{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-left:auto}
.tienda .tienda-utilidades button{display:inline-flex;align-items:center;gap:9px;min-height:44px;padding:10px 15px;background:#fff;color:#222;border:1px solid #d4d4d4;border-radius:8px;font:600 14px/1.3 Arial,sans-serif;box-shadow:none}
.tienda .tienda-utilidades button svg{width:21px;height:21px;flex:none}
.tienda .tienda-utilidades button[data-vista=carrito]{background:#111;border-color:#111;color:#fff}
.tienda .tienda-utilidades button:hover,.tienda .tienda-utilidades button[aria-current=page]{background:#d71920;color:#fff;border-color:#d71920}
@media(max-width:650px){.tienda .tienda-utilidades{margin:0;width:100%;gap:8px}.tienda .tienda-utilidades button{flex:1 1 auto;padding:10px;font-size:13px}}

body.sesion-iniciada main.tienda .tienda-hero,body.tienda-con-cuenta main.tienda .tienda-hero{display:flex;background:#fff;color:#111;border:1px solid #ddd;border-radius:10px;padding:18px 20px;margin-bottom:20px}
body.sesion-iniciada main.tienda .tienda-hero h1,body.tienda-con-cuenta main.tienda .tienda-hero h1{color:#111;font-size:24px}
body.sesion-iniciada main.tienda .tienda-hero>p,body.tienda-con-cuenta main.tienda .tienda-hero>p{display:none}


/* Navegación general independiente y columna de compras. */
.tienda{max-width:1320px}
.tienda-layout{display:grid;grid-template-columns:270px minmax(0,1fr);gap:24px;align-items:start;margin-top:20px}
.tienda-lateral{min-width:0;background:#f5f8fa;border:1px solid #d9e2e8;border-radius:12px;padding:20px}
.tienda-lateral h2{font-size:18px;margin:0 0 14px;color:#103e59}
.tienda-lateral .tienda-nav{display:flex;flex-direction:column;gap:8px;margin:0}
.tienda-lateral .tienda-nav button{width:100%;justify-content:flex-start;background:white;color:#103e59;border-color:#d9e2e8;min-height:44px}
.tienda-lateral .tienda-nav button[aria-current=page],.tienda-lateral .tienda-nav button:hover{background:#103e59;border-color:#103e59;color:white}
.tienda-resumen{border-top:1px solid #d9e2e8;margin-top:22px;padding-top:20px}
.tienda-resumen p,.tienda-resumen small{font-size:13px;line-height:1.5;color:#52616b}
.tienda-resumen-lista{list-style:none;padding:0;margin:0}
.tienda-resumen-lista li{display:grid;gap:5px;padding:12px 0;border-bottom:1px solid #d9e2e8;overflow-wrap:anywhere}
.tienda-resumen-lista strong{font-size:14px}.tienda-resumen-lista span{font-size:12px;color:#52616b}.tienda-resumen-lista b{font-size:14px}
.tienda-resumen .tienda-resumen-total{font-size:16px;font-weight:700;color:#103e59}
.tienda-resumen button{width:100%;margin-top:14px}
.tienda-principal{min-width:0}.tienda-principal>#tienda-mensaje:empty{display:none}.tienda-principal>#tienda-mensaje{margin:0 0 16px}
@media(min-width:761px) and (max-width:1100px){.tienda-layout .tienda-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.tienda-layout{grid-template-columns:1fr;gap:20px}.tienda-lateral{padding:16px}.tienda-lateral .tienda-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.tienda-lateral .tienda-nav button{font-size:13px;padding:10px}}
