/* Guardats: fotografia superior adaptada a l'amplària panoràmica.
   El programa, les fitxes i els detalls de reserves conserven la plantilla comuna. */
body:has(.shared-program) #main .interior-page.interior-saved:has([data-shared-program]) .interior-hero{
 box-sizing:border-box!important;
 width:100%!important;
 height:clamp(220px,22vw,355px)!important;
 min-height:220px!important;
 max-height:355px!important;
 background-color:#1b3437!important;
 background-image:url('/home-assets/organitzador_de_rutes_al_capvespre.webp')!important;
 background-position:right center!important;
 background-size:cover!important;
 background-repeat:no-repeat!important;
}
body:has(.shared-program) #main .interior-page.interior-saved .interior-hero::before{
 display:none!important;content:none!important;
}
body:has(.shared-program) #main .interior-page.interior-saved .interior-hero .page-head{
 max-width:none!important;padding:24px 0 65px!important;
}
@media(max-width:650px){
 body:has(.shared-program) #main .interior-page.interior-saved:has([data-shared-program]) .interior-hero{
  height:170px!important;min-height:170px!important;max-height:170px!important;
  background-position:right center!important;
 }
 body:has(.shared-program) #main .interior-page.interior-saved .interior-hero .page-head{
  padding:16px 0 29px!important;
 }
}

/* Reserves per activitat: la vista reutilitza shared-program de Programa.
   Només adaptem l'acció específica del personal d'accés. */
#main .staff-programme-master .shared-card-reservation-footer{
 display:flex!important;flex-wrap:wrap!important;align-items:center!important;
 gap:7px 10px!important;
}
#main .staff-programme-master .staff-programme-open{
 display:inline-flex!important;align-items:center!important;justify-content:center!important;
 min-height:34px!important;padding:7px 10px!important;border:0!important;
 border-radius:8px!important;background:#294b65!important;color:#fff!important;
 font-size:12px!important;font-weight:750!important;cursor:pointer!important;
}
#main .staff-programme-master .staff-programme-open:focus-visible{
 outline:3px solid #477ba8!important;outline-offset:2px!important;
}
@media(max-width:650px){
 #main .staff-programme-master .staff-programme-open{
  min-height:32px!important;font-size:11px!important;padding:5px 8px!important;
 }
}

/* Etiquetes compartides: Agenda Home = Programa = Guardats = Reserves.
   Este fitxer es carrega al final per evitar que regles antigues neutralitzen els colors. */
body #main .shared-program .shared-card-photo .shared-card-kind{
 display:inline-flex!important;align-items:center!important;
 background:color-mix(in srgb,var(--agenda-color,#52628b) 13%,white)!important;
 color:color-mix(in srgb,var(--agenda-color,#52628b) 82%,black)!important;
 border:1px solid color-mix(in srgb,var(--agenda-color,#52628b) 17%,white)!important;
 border-radius:999px!important;
 box-shadow:none!important;
}
body #main .shared-program .shared-card-info .shared-card-place{
 display:inline-flex!important;align-items:center!important;
 background:color-mix(in srgb,var(--venue-accent,#52628b) 11%,white)!important;
 color:color-mix(in srgb,var(--venue-accent,#52628b) 86%,black)!important;
 border:1px solid color-mix(in srgb,var(--venue-accent,#52628b) 19%,white)!important;
 border-radius:999px!important;
 box-shadow:none!important;
}
body #main .shared-program .shared-card-info .shared-card-place svg{
 color:inherit!important;
}

/* Icona de tipus igual que a l'agenda del Home, integrada en l'únic tag fill. */
body #main .shared-program .shared-card-photo .shared-card-kind{
 gap:6px!important;align-items:center!important;
}
body #main .shared-program .shared-card-photo .shared-card-kind svg,
body #main .shared-program .shared-card-photo .shared-card-kind img{
 display:block!important;flex:0 0 15px!important;width:15px!important;height:15px!important;
 min-width:15px!important;min-height:15px!important;max-width:15px!important;max-height:15px!important;
 color:inherit!important;object-fit:contain!important;
}

/* Fitxa comuna: les etiquetes romanen dins la fotografia sense tallar noms. */
@media(max-width:650px){
 body #main .shared-program .shared-program-card{grid-template-columns:minmax(0,43%) minmax(0,1fr)!important;}
 body #main .shared-program .shared-program-card .shared-card-photo{min-width:0!important;overflow:hidden!important;}
 body #main .shared-program .shared-program-card .shared-card-photo .shared-card-kind{
  box-sizing:border-box!important;top:6px!important;left:5px!important;right:auto!important;
  display:inline-flex!important;align-items:center!important;justify-content:flex-start!important;
  width:max-content!important;max-width:calc(100% - 10px)!important;min-width:0!important;
  padding:4px 5px!important;gap:3px!important;font-size:clamp(8px,2.2vw,9px)!important;
  line-height:1.15!important;letter-spacing:-.2px!important;font-weight:750!important;
  white-space:normal!important;overflow-wrap:normal!important;word-break:normal!important;
  overflow:visible!important;text-overflow:clip!important;border-radius:999px!important;
 }
 body #main .shared-program .shared-card-photo .shared-card-kind svg,
 body #main .shared-program .shared-card-photo .shared-card-kind img{
  display:block!important;flex:0 0 12px!important;width:12px!important;height:12px!important;
  min-width:12px!important;min-height:12px!important;max-width:12px!important;max-height:12px!important;
 }
}
