/* Canelons Barcelona: child theme de Hummingbird. FITXER GENERAT per scripts/build-canelonsbarcelona-theme.py
 * (no editar a mà: es torna a generar). Substitueix el blau primari (#0b69f6) per una paleta de
 * vermells derivada de #E41013. Conté només les regles de theme.css que duen colors de la família blava,
 * dins dels mateixos @layer/@media que l'original.
 *
 * Paleta principal  base #E41013 | hover #a6292b | active #932526 | enllaç #e41013 | enllaç hover #9c2729
 *                   subtil #f4d4d5 | vora subtil #eaa9aa | focus #e59596
 */
:root,[data-bs-theme=light]{--bs-blue:#e41013;--bs-primary:#e41013;--bs-primary-rgb:228,16,19;--bs-primary-text-emphasis:#e41013;--bs-primary-bg-subtle:#f4d4d5;--bs-primary-border-subtle:#eaa9aa;--bs-link-color:#e41013;--bs-link-color-rgb:228,16,19;--bs-link-hover-color:#9c2729;--bs-link-hover-color-rgb:156,39,41;--bs-focus-ring-color:rgba(228,16,19,.25)}[data-bs-theme=dark]{--bs-primary-text-emphasis:#df8081;--bs-primary-bg-subtle:#270a0a;--bs-primary-border-subtle:#761d1f;--bs-link-color:#df8081;--bs-link-hover-color:#e6999a;--bs-link-color-rgb:223,128,129;--bs-link-hover-color-rgb:230,153,154}@layer bs-components{.accordion{--bs-accordion-btn-focus-box-shadow:0 0 0 0.25rem rgba(228,16,19,.25)}[data-bs-theme=dark] .accordion-button:after{--bs-accordion-btn-icon:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23df7e80' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708'/%3E%3C/svg%3E");--bs-accordion-btn-active-icon:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23df7e80' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708'/%3E%3C/svg%3E")}.btn-primary{--bs-btn-bg:#e41013;--bs-btn-border-color:#e41013;--bs-btn-hover-bg:#a6292b;--bs-btn-hover-border-color:#9c2729;--bs-btn-focus-shadow-rgb:210,74,76;--bs-btn-active-bg:#9c2729;--bs-btn-active-border-color:#932526;--bs-btn-disabled-bg:#e41013;--bs-btn-disabled-border-color:#e41013}.btn-outline-primary{--bs-btn-color:#e41013;--bs-btn-border-color:#e41013;--bs-btn-hover-bg:#e41013;--bs-btn-hover-border-color:#e41013;--bs-btn-focus-shadow-rgb:228,16,19;--bs-btn-active-bg:#e41013;--bs-btn-active-border-color:#e41013;--bs-btn-disabled-color:#e41013;--bs-btn-disabled-border-color:#e41013}.btn-link{--bs-btn-focus-shadow-rgb:210,74,76}.btn-close{--bs-btn-close-focus-shadow:0 0 0 0.25rem rgba(228,16,19,.25)}.dropdown-menu{--bs-dropdown-link-active-bg:#e41013}.dropdown-menu-dark{--bs-dropdown-link-active-bg:#e41013}.form-control:focus{border-color:#e59596;box-shadow:0 0 0 .25rem rgba(228,16,19,.25)}.form-select:focus{border-color:#e59596;box-shadow:0 0 0 .25rem rgba(228,16,19,.25)}.form-check-input:focus{border-color:#e59596;box-shadow:0 0 0 .25rem rgba(228,16,19,.25)}.form-check-input:checked{background-color:#e41013;border-color:#e41013}.form-check-input[type=checkbox]:indeterminate{background-color:#e41013;border-color:#e41013}.form-switch .form-check-input:focus{--bs-form-switch-bg:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='%23e49495'/%3E%3C/svg%3E")}.form-range:focus::-webkit-slider-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .25rem rgba(228,16,19,.25)}.form-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .25rem rgba(228,16,19,.25)}.form-range::-webkit-slider-thumb{background-color:#e41013}.form-range::-webkit-slider-thumb:active{background-color:#efbfc0}.form-range::-moz-range-thumb{background-color:#e41013}.form-range::-moz-range-thumb:active{background-color:#efbfc0}.list-group{--bs-list-group-active-bg:#e41013;--bs-list-group-active-border-color:#e41013}.nav-link:focus-visible{box-shadow:0 0 0 .25rem rgba(228,16,19,.25)}.nav-pills{--bs-nav-pills-link-active-bg:#e41013}.pagination{--bs-pagination-focus-box-shadow:0 0 0 0.25rem rgba(228,16,19,.25)}.progress,.progress-stacked{--bs-progress-bar-bg:#e41013}.table-primary{--bs-table-bg:#f4d4d5;--bs-table-border-color:#c7a2a2;--bs-table-striped-bg:#efc2c3;--bs-table-active-bg:#e1b8b8;--bs-table-hover-bg:#e7bdbe}}@layer ps-modules{.search-filters__form-check--color .color:focus-visible{box-shadow:0 0 0 .25rem rgba(228,16,19,.25)}.stars-selector:has(.stars-selector__input:focus-visible){box-shadow:0 0 0 .25rem rgba(228,16,19,.25)}}

/* ==========================================================================
   Estats d'enllaç (Bootstrap no estila :visited ni :active en enllaços de text)
   Només enllaços "de text" (sense classe): no toca botons, menús ni components.
   ========================================================================== */
a:not([class]):visited { color: #9c2740; }
a:not([class]):hover   { color: #9c2729; }
a:not([class]):active  { color: #842122; }
a:not([class]):focus-visible { outline-color: #e41013; }

/* ==========================================================================
   Avís de botiga: "Estàs a la botiga online de Barcelona" + enllaç "Anar a Vic i Granollers" + creueta (_partials/shop-notice.tpl).
   - Escriptori: dins del top bar (hook displayNav1 -> modules/ps_contactinfo/nav.tpl). El pare posa aquest bloc en una
     columna d'1/3 (col-md-4); aquí l'esquerra s'estén i la dreta (compte/cistella) ocupa només el que necessita.
   - Mòbil: franja a dalt de tot (_partials/header.tpl), a sobre de la fila del botó del menú i el logo.
   ========================================================================== */
.header-top .header-top__left { flex: 1 1 0; min-width: 0; width: auto; max-width: none; flex-wrap: nowrap; gap: 1.5rem; }
.header-top .header-top__right { flex: 0 0 auto; width: auto; margin-left: auto; }
#_desktop_ps_contactinfo { flex: 0 0 auto; }
#_desktop_ps_contactinfo .ps-contactinfo__phone,
#_desktop_ps_contactinfo .ps-contactinfo__email { white-space: nowrap; }
.ps-contactinfo__notice { display: flex; align-items: center; gap: .75rem; flex: 1 1 auto; min-width: 0; }
.ps-contactinfo__notice-main { display: flex; flex-wrap: wrap; align-items: baseline; column-gap: .75rem; row-gap: .125rem; flex: 1 1 auto; min-width: 0; }
.ps-contactinfo__notice-text { font-weight: 600; min-width: 0; }
.ps-contactinfo__notice a.ps-contactinfo__notice-link { font-weight: 600; white-space: nowrap; text-decoration: underline; color: var(--bs-link-color); }
.ps-contactinfo__notice a.ps-contactinfo__notice-link:hover { color: var(--bs-link-hover-color); }
.ps-contactinfo__notice-close { flex: 0 0 auto; --bs-btn-close-focus-shadow: 0 0 0 .2rem rgba(var(--bs-primary-rgb), .25); padding: .5rem; margin: 0; }
@media (max-width: 991.98px) {
  /* tauleta: avís a la primera fila i compte/cistella a la segona, alineats a la dreta */
  .header-top .header-top__left,
  .header-top .header-top__right { flex: 0 0 100%; }
  .header-top .header-top__right { justify-content: flex-end; }
}
/* Checkout, mètode d'enviament: Hummingbird retalla el contingut extra del carrier (overflow:hidden amb l'alçada animada).
   El desplegable de punts de recollida de fspickupatstore (react-select) queda tallat si no hi ha un mapa que faci alta la caixa.
   Un cop obert (data-active) deixem que la llista sobresurti; l'overflow canvia DESPRÉS de l'animació d'alçada (0,2 s). */
.delivery-option__extra[data-active] {
  overflow: visible;
  transition-property: height, overflow;
  transition-delay: 0s, .2s;
  transition-behavior: allow-discrete;
}
.delivery-option__extra[data-active] [class*="-menu"] { z-index: 20; }
/* franja de mòbil */
.header-shop-notice { background: var(--bs-primary-bg-subtle); padding: .5rem 0; font-size: .875rem; line-height: 1.25; }
.header-shop-notice .ps-contactinfo__notice { gap: .625rem; }
