/*
 * MeteoSensor Local — sistema visual mestre v0.12.057
 * Estudi actualitzat: Ara fixa la lectura i els estats; Configuració fixa
 * controls i proximitat; Gràfiques fixa targetes, valors, eixos i fonts.
 * Previsió aplica ara el conjunt complet sense alterar la semàntica de dades.
 */

:root{
  --ui-space-1:4px;
  --ui-space-2:8px;
  --ui-space-3:12px;
  --ui-space-4:16px;
  --ui-space-5:24px;
  --ui-gap-same-element:4px;
  --ui-gap-label:6px;
  --ui-gap-related-controls:8px;
  --ui-gap-content-groups:12px;
  --ui-radius-field:16px;
  --ui-radius-panel:20px;
  --ui-control-height:50px;
  --ui-section-title-size:clamp(20px,5.1vw,23px);
  --ui-item-title-size:18px;
  --ui-field-size:16px;
  --ui-readout-size:var(--ui-field-size);
  --ui-readout-weight:850;
  --ui-unit-optical-lift:-0.25px;
  --ui-control-size:clamp(15px,3.9vw,16px);
  --ui-body-size:14px;
}

:root[data-theme="dark"]{
  --ui-control-bg:var(--ms-dark-control,#1e5b49);
  --ui-control-border:var(--ms-dark-control-border,#568a76);
  --ui-readout-bg:var(--ui-control-bg);
  --ui-readout-text:var(--text);
  --ui-primary-bg:#7bd19a;
  --ui-primary-border:#66b784;
  --ui-primary-text:#07140e;
  --ui-selected-bg:#d7e5de;
  --ui-selected-border:#8fae9f;
  --ui-selected-text:#07140e;
  --ui-context-bg:var(--ms-dark-context,#174537);
  --ui-helper:#b9c9c1;
  --ui-pending:#ff8f99;
  --ui-pending-bg:rgba(255,143,153,.10);
  --ui-pending-border:rgba(255,143,153,.48);
}

:root[data-theme="light"]{
  --ui-control-bg:var(--ms-light-control,#bdd1c8);
  --ui-control-border:var(--ms-light-control-border,#7f9f90);
  --ui-readout-bg:#fff;
  --ui-readout-text:var(--text);
  --ui-primary-bg:#75c98f;
  --ui-primary-border:var(--ms-light-active-border,#5eae7a);
  --ui-primary-text:#07140e;
  --ui-selected-bg:#e3ece7;
  --ui-selected-border:#8fae9f;
  --ui-selected-text:#07140e;
  --ui-context-bg:var(--ms-light-context,#b9cec4);
  --ui-helper:#566a61;
  --ui-pending:#a93440;
  --ui-pending-bg:rgba(169,52,64,.07);
  --ui-pending-border:rgba(169,52,64,.38);
}

/* El dibuix de les ones ocupa la meitat baixa del seu viewBox. */
.now-page>.v19-screen-heading .signal-icon{
  transform:translateY(-3px)!important;
}

/*
 * Regla de proximitat de Configuració:
 * 4 px dins del mateix element; 6 px entre etiqueta, camp i aclariment;
 * 8 px entre controls relacionats; 12 px entre grups i entre targetes.
 * Tot el contingut funcional o explicatiu viu dins d'una targeta negra.
 * El peu legal és l'única excepció deliberada fora de les targetes.
 */
:root[data-theme] .config-page.ui-system-master>.v19-screen-heading{
  margin-bottom:var(--ui-space-4)!important;
}
:root[data-theme] .config-page.ui-system-master>.config-section{
  margin:0 0 var(--ui-space-3)!important;
  padding:var(--ui-space-3)!important;
  border-radius:var(--ui-radius-panel)!important;
}

/* Jerarquia tipogràfica. */
:root[data-theme] .config-page.ui-system-master .config-section h2{
  margin:0 0 var(--ui-space-3)!important;
  color:var(--green)!important;
  font-size:var(--ui-section-title-size)!important;
  font-weight:900!important;
  line-height:1.05!important;
}
:root[data-theme] .config-page.ui-system-master .saved-copy strong,
:root[data-theme] .config-page.ui-system-master .install-preview strong,
:root[data-theme] .config-page.ui-system-master .widget-name{
  font-size:var(--ui-item-title-size)!important;
  font-weight:850!important;
  line-height:1.15!important;
}
:root[data-theme] .config-page.ui-system-master .field label,
:root[data-theme] .config-page.ui-system-master .version-row span{
  margin:0 0 6px!important;
  color:var(--ui-helper)!important;
  font-size:var(--ui-body-size)!important;
  font-weight:750!important;
  line-height:1.25!important;
}
:root[data-theme] .config-page.ui-system-master .field-help,
:root[data-theme] .config-page.ui-system-master .saved-copy span,
:root[data-theme] .config-page.ui-system-master .install-preview span,
:root[data-theme] .config-page.ui-system-master .release-notes,
:root[data-theme] .config-page.ui-system-master .config-footer{
  color:var(--ui-helper)!important;
  font-size:var(--ui-body-size)!important;
  font-weight:500!important;
  line-height:1.35!important;
}

/* Capçalera de secció amb acció, sense marges negatius. */
:root[data-theme] .config-page.ui-system-master .current-station-section .config-section-title-row{
  min-height:var(--ui-control-height)!important;
  margin:0!important;
  align-items:center!important;
  gap:var(--ui-space-3)!important;
}
:root[data-theme] .config-page.ui-system-master .current-station-section .config-section-title-row h2{
  margin:0!important;
  padding:0!important;
}
:root[data-theme] .config-page.ui-system-master .current-station-section .save-station-top{
  width:calc(50% - 6px)!important;
  max-width:calc(50% - 6px)!important;
  flex:0 0 calc(50% - 6px)!important;
  margin:0 0 0 auto!important;
  transform:none!important;
}
:root[data-theme] .config-page.ui-system-master .current-station-section .config-grid>.field:first-child{
  margin-top:0!important;
}

/* Camps i agrupacions. */
:root[data-theme] .config-page.ui-system-master .config-grid{
  gap:var(--ui-space-3)!important;
}
:root[data-theme] .config-page.ui-system-master .field input,
:root[data-theme] .config-page.ui-system-master .field select{
  height:var(--ui-control-height)!important;
  min-height:var(--ui-control-height)!important;
  box-sizing:border-box!important;
  padding:0 14px!important;
  border-radius:var(--ui-radius-field)!important;
  font-size:var(--ui-field-size)!important;
  font-weight:850!important;
  line-height:1.10!important;
}
:root[data-theme] .config-page.ui-system-master .field-help{
  margin:var(--ui-gap-label) 0 0!important;
}
:root[data-theme] .config-page.ui-system-master .input-action{
  gap:10px!important;
}
:root[data-theme] .config-page.ui-system-master .map-button,
:root[data-theme] .config-page.ui-system-master .config-secondary{
  margin-top:0!important;
}
:root[data-theme] .config-page.ui-system-master .map-button{
  gap:var(--ui-gap-related-controls)!important;
}
:root[data-theme] .config-page.ui-system-master .map-target-icon{
  display:inline-grid!important;
  place-items:center!important;
  width:24px!important;
  height:24px!important;
  flex:0 0 24px!important;
  font-size:24px!important;
  font-weight:900!important;
  line-height:1!important;
}
:root[data-theme] .config-page.ui-system-master details.advanced-sensors{
  width:100%!important;
  height:auto!important;
  min-height:var(--ui-control-height)!important;
  margin:0!important;
  padding:0!important;
  border-radius:var(--ui-radius-field)!important;
}
:root[data-theme] .config-page.ui-system-master details.advanced-sensors summary{
  height:var(--ui-control-height)!important;
  min-height:var(--ui-control-height)!important;
}
:root[data-theme] .config-page.ui-system-master details.advanced-sensors .inner{
  gap:var(--ui-space-3)!important;
  margin:0!important;
  padding:var(--ui-space-3)!important;
}
:root[data-theme] .config-page.ui-system-master details.advanced-sensors .inner .field:first-child{
  margin-top:0!important;
}

/* Família única de controls. */
:root[data-theme] .config-page.ui-system-master .save-station-top,
:root[data-theme] .config-page.ui-system-master .share-main,
:root[data-theme] .config-page.ui-system-master .mini-button,
:root[data-theme] .config-page.ui-system-master .config-secondary,
:root[data-theme] .config-page.ui-system-master .input-action button,
:root[data-theme] .config-page.ui-system-master .saved-actions button,
:root[data-theme] .config-page.ui-system-master .language-buttons button,
:root[data-theme] .config-page.ui-system-master .advanced-sensors summary{
  height:var(--ui-control-height)!important;
  min-height:var(--ui-control-height)!important;
  box-sizing:border-box!important;
  padding:0 14px!important;
  border:1px solid var(--ui-control-border)!important;
  border-radius:var(--ui-radius-field)!important;
  background:var(--ui-control-bg)!important;
  background-image:none!important;
  color:var(--text)!important;
  font-size:var(--ui-control-size)!important;
  font-weight:850!important;
  line-height:1.10!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
:root[data-theme] .config-page.ui-system-master .save-station-top,
:root[data-theme] .config-page.ui-system-master .share-main{
  background:var(--ui-primary-bg)!important;
  border-color:var(--ui-primary-border)!important;
  color:var(--ui-primary-text)!important;
}
:root[data-theme] .config-page.ui-system-master .input-action button{
  background:var(--ui-context-bg)!important;
}
:root[data-theme] .config-page.ui-system-master .language-buttons button.active,
:root[data-theme] .config-page.ui-system-master .theme-buttons button.active{
  background:var(--ui-selected-bg)!important;
  border-color:var(--ui-selected-border)!important;
  color:var(--ui-selected-text)!important;
}
:root[data-theme] .config-page.ui-system-master .saved-actions .danger{
  background:var(--ui-control-bg)!important;
  border-color:var(--ui-control-border)!important;
  color:#ff7f8a!important;
}
:root[data-theme="light"] .config-page.ui-system-master .saved-actions .danger{
  color:#b3262e!important;
}

/* Targetes interiors i relacions de proximitat. */
:root[data-theme] .config-page.ui-system-master .saved-list{
  gap:var(--ui-space-3)!important;
}
:root[data-theme] .config-page.ui-system-master .saved-row{
  padding:var(--ui-space-3)!important;
  border-radius:var(--ui-radius-field)!important;
}
:root[data-theme] .config-page.ui-system-master .saved-copy{
  gap:var(--ui-gap-same-element)!important;
}
:root[data-theme] .config-page.ui-system-master .saved-actions{
  gap:10px!important;
  margin-top:var(--ui-space-3)!important;
}
:root[data-theme] .config-page.ui-system-master .version-row{
  padding:var(--ui-gap-related-controls) 0!important;
}
:root[data-theme] .config-page.ui-system-master h2+.version-row{
  padding-top:0!important;
}
:root[data-theme] .config-page.ui-system-master .version-row span{
  margin:0!important;
}
:root[data-theme] .config-page.ui-system-master [data-action="checkupdate"]{
  margin-top:var(--ui-space-3)!important;
}
:root[data-theme] .config-page.ui-system-master .release-notes{
  margin-top:var(--ui-space-3)!important;
}
:root[data-theme] .config-page.ui-system-master .release-notes-title{
  margin:0 0 var(--ui-gap-label)!important;
  color:var(--ui-helper)!important;
  font-size:var(--ui-body-size)!important;
  font-weight:750!important;
  line-height:1.25!important;
  text-decoration:none!important;
}
:root[data-theme] .config-page.ui-system-master .release-notes ul{
  margin:0!important;
  padding-left:20px!important;
}
:root[data-theme] .config-page.ui-system-master .release-notes li{
  margin:var(--ui-gap-same-element) 0!important;
}

/* Compartir, selectors, widgets i Ajuda. */
:root[data-theme] .config-page.ui-system-master .install-preview-text{
  margin:0 0 var(--ui-space-3)!important;
}
:root[data-theme] .config-page.ui-system-master .install-preview-text>div{
  gap:var(--ui-gap-same-element)!important;
}
:root[data-theme] .config-page.ui-system-master .share-main,
:root[data-theme] .config-page.ui-system-master .share-secondary{
  height:var(--ui-control-height)!important;
  min-height:var(--ui-control-height)!important;
  border-radius:var(--ui-radius-field)!important;
  font-size:var(--ui-control-size)!important;
  font-weight:850!important;
}
:root[data-theme] .config-page.ui-system-master .share-secondary{
  margin-top:var(--ui-gap-related-controls)!important;
}
:root[data-theme] .config-page.ui-system-master .install-button-with-icon{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:12px!important;
  padding:0 14px!important;
}
:root[data-theme] .config-page.ui-system-master .install-button-with-icon img{
  position:static!important;
  inset:auto!important;
  width:38px!important;
  height:38px!important;
  flex:0 0 38px!important;
  margin:0!important;
  border-radius:9px!important;
}
:root[data-theme] .config-page.ui-system-master .install-button-with-icon span{
  min-width:0!important;
  text-align:left!important;
  white-space:nowrap!important;
}
:root[data-theme] .config-page.ui-system-master .language-buttons{
  gap:var(--ui-gap-related-controls)!important;
}
:root[data-theme] .config-page.ui-system-master .language-buttons+.field-help{
  margin-top:var(--ui-gap-related-controls)!important;
}
:root[data-theme] .config-page.ui-system-master .widget-roadmap>.section-row{
  margin-bottom:var(--ui-space-3)!important;
}
:root[data-theme] .config-page.ui-system-master .widget-roadmap>.section-row h2{
  margin:0!important;
}
:root[data-theme] .config-page.ui-system-master .widget-preview.widget-stack{
  gap:var(--ui-space-4)!important;
}
:root[data-theme] .config-page.ui-system-master .widget-block{
  gap:var(--ui-space-2)!important;
}
:root[data-theme] .config-page.ui-system-master .widget-block-head{
  align-items:flex-start!important;
  gap:var(--ui-space-2)!important;
  margin:0!important;
}
:root[data-theme] .config-page.ui-system-master .widget-future{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  max-width:58%!important;
  min-height:36px!important;
  height:36px!important;
  margin:0!important;
  padding:0 14px!important;
  box-sizing:border-box!important;
  border:1px solid var(--ui-pending-border)!important;
  border-radius:999px!important;
  background:var(--ui-pending-bg)!important;
  background-image:none!important;
  color:var(--ui-pending)!important;
  font-size:14px!important;
  font-weight:800!important;
  line-height:1.10!important;
  text-align:center!important;
  box-shadow:none!important;
  cursor:default!important;
}

/* El peu segueix l'eix del text interior de les targetes. */
:root[data-theme] .config-page.ui-system-master>.config-footer{
  margin:var(--ui-space-2) var(--ui-space-3) var(--ui-space-4)!important;
  gap:var(--ui-space-1)!important;
}
:root[data-theme] .config-page.ui-system-master>.config-footer strong{
  font-size:var(--ui-body-size)!important;
  font-weight:850!important;
}

/*
 * Gràfiques aplica la mateixa jerarquia i el mateix ritme que Configuració.
 * Els accents de cada magnitud i la mida dels eixos es conserven perquè són
 * informació, no decoració.
 */
:root[data-theme] .charts-v012005.ui-system-master>.v19-screen-heading{
  margin-bottom:var(--ui-space-4)!important;
}

/* Selector de període: targeta, controls i aclariments. */
:root[data-theme] .charts-v012005.ui-system-master>.v3-period-panel{
  margin:0 0 var(--ui-gap-content-groups)!important;
  padding:var(--ui-gap-content-groups)!important;
  border:1px solid var(--border)!important;
  border-radius:var(--ui-radius-panel)!important;
}
:root[data-theme] .charts-v012005.ui-system-master .v3-period-panel .periods{
  gap:var(--ui-gap-related-controls)!important;
}
:root[data-theme] .charts-v012005.ui-system-master .v3-period-panel .period{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  height:var(--ui-control-height)!important;
  min-height:var(--ui-control-height)!important;
  margin:0!important;
  padding:0 8px!important;
  border:1px solid var(--ui-control-border)!important;
  border-radius:var(--ui-radius-field)!important;
  background:var(--ui-control-bg)!important;
  background-image:none!important;
  color:var(--text)!important;
  font-size:var(--ui-control-size)!important;
  font-weight:850!important;
  line-height:1.10!important;
  box-shadow:none!important;
}
:root[data-theme] .charts-v012005.ui-system-master .v3-period-panel .v54-period-value{
  display:inline-flex!important;
  align-items:flex-end!important;
  justify-content:center!important;
  gap:3px!important;
  font:inherit!important;
  font-size:calc(var(--ui-control-size) + 1px)!important;
  line-height:1!important;
}
:root[data-theme] .charts-v012005.ui-system-master .v3-period-panel .v54-period-value>b{
  font:inherit!important;
  font-size:1em!important;
  line-height:1!important;
}
:root[data-theme] .charts-v012005.ui-system-master .v3-period-panel .v54-period-value>small{
  align-self:flex-end!important;
  font:inherit!important;
  font-size:.70em!important;
  line-height:1!important;
  /* v0.12.056: correcció addicional exacta de 0,25 px cap amunt. */
  transform:translateY(calc(var(--ui-unit-optical-lift) - .25px))!important;
}
:root[data-theme] .charts-v012005.ui-system-master .v3-period-panel .period.active{
  background:var(--ui-selected-bg)!important;
  border-color:var(--ui-selected-border)!important;
  color:var(--ui-selected-text)!important;
}
:root[data-theme] .charts-v012005.ui-system-master .v5-period-notes{
  gap:var(--ui-gap-same-element)!important;
  margin:var(--ui-gap-content-groups) 0 0!important;
  color:var(--ui-helper)!important;
  font-size:var(--ui-body-size)!important;
  font-weight:500!important;
  line-height:1.35!important;
}
:root[data-theme] .charts-v012005.ui-system-master .v5-period-notes p{
  margin:0!important;
}
:root[data-theme] .charts-v012005.ui-system-master .v3-datebox{
  gap:var(--ui-gap-related-controls)!important;
  margin-top:var(--ui-gap-content-groups)!important;
}
:root[data-theme] .charts-v012005.ui-system-master .v3-datebox label{
  gap:var(--ui-gap-label)!important;
  color:var(--ui-helper)!important;
  font-size:var(--ui-body-size)!important;
  font-weight:750!important;
}
:root[data-theme] .charts-v012005.ui-system-master .v3-datebox input,
:root[data-theme] .charts-v012005.ui-system-master .v3-datebox .btn{
  height:var(--ui-control-height)!important;
  min-height:var(--ui-control-height)!important;
  border-radius:var(--ui-radius-field)!important;
  font-size:var(--ui-field-size)!important;
  font-weight:850!important;
}
:root[data-theme] .charts-v012005.ui-system-master .v3-datebox .btn{
  background:var(--ui-primary-bg)!important;
  background-image:none!important;
  border:1px solid var(--ui-primary-border)!important;
  color:var(--ui-primary-text)!important;
}

/* Estat de càrrega: el mateix component visual de Dades actualitzades. */
:root[data-theme] .charts-v012005.ui-system-master>.history-status-card{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:3px!important;
  min-height:0!important;
  margin:0 0 var(--ui-gap-content-groups)!important;
  padding:11px 14px!important;
  box-sizing:border-box!important;
  border:1px solid var(--border)!important;
  border-radius:18px!important;
  background:var(--panel-gradient)!important;
  color:var(--text)!important;
}
:root[data-theme] .charts-v012005.ui-system-master>.history-status-card.loading::before{
  display:none!important;
}
:root[data-theme] .charts-v012005.ui-system-master>.history-status-card .connection-state{
  position:static!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:7px!important;
  padding:0!important;
  font-size:clamp(13px,3.4vw,16px)!important;
  font-weight:950!important;
  line-height:1.15!important;
}
:root[data-theme] .charts-v012005.ui-system-master>.history-status-card .connection-stamp{
  display:flex!important;
  align-items:baseline!important;
  gap:5px!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
  white-space:normal!important;
}
:root[data-theme] .charts-v012005.ui-system-master>.history-status-card .connection-label,
:root[data-theme] .charts-v012005.ui-system-master>.history-status-card .connection-stamp strong{
  font-size:clamp(12px,3.1vw,14px)!important;
  line-height:1.2!important;
}
:root[data-theme] .charts-v012005.ui-system-master>.history-status-card .connection-label{
  color:var(--ui-helper)!important;
  font-weight:750!important;
}
:root[data-theme] .charts-v012005.ui-system-master>.history-status-card .connection-stamp strong{
  color:var(--text)!important;
  font-weight:850!important;
}
:root[data-theme] .charts-v012005.ui-system-master>.history-status-card .state-dot{
  width:9px!important;
  height:9px!important;
  flex:0 0 9px!important;
}
:root[data-theme] .charts-v012005.ui-system-master>.history-status-card.ok{
  border-color:var(--state-green,var(--green))!important;
}
:root[data-theme] .charts-v012005.ui-system-master>.history-status-card.ok .connection-state{
  color:var(--state-green,var(--green))!important;
}
:root[data-theme] .charts-v012005.ui-system-master>.history-status-card.ok .state-dot{
  background:var(--state-green,var(--green))!important;
}
:root[data-theme] .charts-v012005.ui-system-master>.history-status-card.warn{
  border-color:var(--state-orange,var(--status-warn,#f2a43b))!important;
}
:root[data-theme] .charts-v012005.ui-system-master>.history-status-card.warn .connection-state{
  color:var(--state-orange,var(--status-warn,#f2a43b))!important;
}
:root[data-theme] .charts-v012005.ui-system-master>.history-status-card.warn .state-dot{
  background:var(--state-orange,var(--status-warn,#f2a43b))!important;
}
:root[data-theme] .charts-v012005.ui-system-master>.history-status-card.error{
  border-color:var(--state-red,var(--riseX,#d94b4b))!important;
}
:root[data-theme] .charts-v012005.ui-system-master>.history-status-card.error .connection-state{
  color:var(--state-red,var(--riseX,#d94b4b))!important;
}
:root[data-theme] .charts-v012005.ui-system-master>.history-status-card.error .state-dot{
  background:var(--state-red,var(--riseX,#d94b4b))!important;
}
:root[data-theme] .charts-v012005.ui-system-master>.history-status-card.loading .connection-state{
  color:var(--ui-helper)!important;
}

/* Cada gràfica equival a una secció de Configuració. */
:root[data-theme] .charts-v012005.ui-system-master>.v4-chart-card,
:root[data-theme] .charts-v012005.ui-system-master>.v3-noise-empty{
  margin:0 0 var(--ui-gap-content-groups)!important;
  padding:var(--ui-gap-content-groups) var(--ui-gap-content-groups) 0!important;
  border:1px solid var(--border)!important;
  border-radius:var(--ui-radius-panel)!important;
  overflow:hidden!important;
}
:root[data-theme="dark"] .charts-v012005.ui-system-master>.v3-period-panel,
:root[data-theme="dark"] .charts-v012005.ui-system-master>.chart-load-status,
:root[data-theme="dark"] .charts-v012005.ui-system-master>.v4-chart-card,
:root[data-theme="dark"] .charts-v012005.ui-system-master>.v3-noise-empty{
  background:linear-gradient(145deg,var(--ms-dark-panel),var(--ms-dark-panel-deep))!important;
  border-color:#6E897F!important;
  box-shadow:0 8px 20px rgba(0,0,0,.31),inset 0 1px 0 rgba(255,255,255,.06)!important;
}
:root[data-theme="light"] .charts-v012005.ui-system-master>.v3-period-panel,
:root[data-theme="light"] .charts-v012005.ui-system-master>.chart-load-status,
:root[data-theme="light"] .charts-v012005.ui-system-master>.v4-chart-card,
:root[data-theme="light"] .charts-v012005.ui-system-master>.v3-noise-empty{
  background:linear-gradient(145deg,var(--ms-light-panel),var(--ms-light-panel-soft))!important;
  border-color:#8FAE9F!important;
  box-shadow:0 8px 20px rgba(23,56,43,.11),inset 0 1px 0 rgba(255,255,255,.98)!important;
}
:root[data-theme] .charts-v012005.ui-system-master .v4-chart-title,
:root[data-theme] .charts-v012005.ui-system-master .v3-chart-title{
  align-items:center!important;
  gap:var(--ui-gap-content-groups)!important;
  padding:0!important;
}
:root[data-theme] .charts-v012005.ui-system-master .v4-chart-title .title-icon,
:root[data-theme] .charts-v012005.ui-system-master .v3-chart-title .title-icon{
  width:40px!important;
  height:40px!important;
  flex:0 0 40px!important;
  overflow:visible!important;
}
:root[data-theme] .charts-v012005.ui-system-master .v4-chart-title h2,
:root[data-theme] .charts-v012005.ui-system-master .v3-chart-title h2{
  margin:0!important;
  color:var(--accent)!important;
  font-size:var(--ui-section-title-size)!important;
  font-weight:900!important;
  line-height:1.05!important;
  letter-spacing:0!important;
}
:root[data-theme] .charts-v012005.ui-system-master .v4-stats{
  gap:var(--ui-gap-related-controls)!important;
  margin:var(--ui-gap-content-groups) 0 var(--ui-gap-related-controls)!important;
  border:0!important;
  border-radius:0!important;
  overflow:visible!important;
}
:root[data-theme] .charts-v012005.ui-system-master .v4-stats>div{
  display:flex!important;
  flex-direction:column!important;
  gap:var(--ui-gap-label)!important;
  min-height:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  text-align:left!important;
}
:root[data-theme] .charts-v012005.ui-system-master .v4-stats>div>span:first-child{
  color:var(--ui-helper)!important;
  font-size:var(--ui-body-size)!important;
  font-weight:750!important;
  line-height:1.15!important;
  text-transform:none!important;
}
:root[data-theme] .charts-v012005.ui-system-master .v4-stats .v4-measure{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  height:var(--ui-control-height)!important;
  min-height:var(--ui-control-height)!important;
  box-sizing:border-box!important;
  padding:0 6px!important;
  border:1px solid var(--ui-control-border)!important;
  border-radius:var(--ui-radius-field)!important;
  background:var(--ui-readout-bg)!important;
  color:var(--ui-readout-text)!important;
  font-size:calc(var(--ui-readout-size) + 1px)!important;
  font-weight:var(--ui-readout-weight)!important;
  line-height:1.1!important;
  white-space:nowrap!important;
  margin-top:auto!important;
}
:root[data-theme] .charts-v012005.ui-system-master .v4-stats .v4-measure small{
  color:inherit!important;
  font-size:.7em!important;
  font-weight:850!important;
  line-height:1!important;
}
:root[data-theme] .charts-v012005.ui-system-master .v4-stats .v4-measure-line,
:root[data-theme] .charts-v012005.ui-system-master .v4-stats .v4-measure-line>b,
:root[data-theme] .charts-v012005.ui-system-master .v4-stats .v4-measure-line>small{
  color:var(--text)!important;
}
:root[data-theme] .charts-v012005.ui-system-master .v4-stats .v4-measure-line{
  align-items:flex-end!important;
}
:root[data-theme] .charts-v012005.ui-system-master .v4-stats .v4-measure-line>small{
  position:static!important;
  top:auto!important;
  transform:translateY(-0.25px)!important;
  align-self:flex-end!important;
}
:root[data-theme] .charts-v012005.ui-system-master .chart-pressure-gauge{
  color:var(--accent)!important;
}
:root[data-theme] .charts-v012005.ui-system-master .chart-pressure-art{
  display:block!important;
  background-repeat:no-repeat!important;
  background-color:transparent!important;
  border-radius:0!important;
  filter:drop-shadow(0 1px 2px color-mix(in srgb,var(--press) 72%,transparent))!important;
}
:root[data-theme="dark"] .charts-v012005.ui-system-master .chart-pressure-art{
  background-image:url("assets/pressure_dark_v10904.png")!important;
  background-size:92px auto!important;
  background-position:-52px -84px!important;
}
:root[data-theme="light"] .charts-v012005.ui-system-master .chart-pressure-art{
  background-image:url("assets/pressure_light_v11037.png")!important;
  background-size:94px auto!important;
  background-position:-54px -92px!important;
}
:root[data-theme] .charts-v012005.ui-system-master .v4-chart-svg .v4-yunit,
:root[data-theme] .charts-v012005.ui-system-master .v4-chart-svg .v4-xunit{
  fill:var(--text)!important;
  font-family:inherit!important;
  font-size:14px!important;
  font-weight:900!important;
}
:root[data-theme] .charts-v012005.ui-system-master .v4-chart-svg .v4-point{
  fill:var(--accent)!important;
}
:root[data-theme] .charts-v012005.ui-system-master .v4-chart-svg .v4-ytext,
:root[data-theme] .charts-v012005.ui-system-master .v4-chart-svg .v4-xtext{
  font-size:13px!important;
  font-weight:800!important;
}
:root[data-theme] .charts-v012005.ui-system-master .v4-chart-svg .v4-axis-tick{
  stroke:color-mix(in srgb,var(--text) 62%,transparent)!important;
  stroke-width:1.15!important;
  vector-effect:non-scaling-stroke!important;
}
:root[data-theme] .charts-v012005.ui-system-master .v4-chart-svg .v4-axis-tick-minor{
  stroke-width:.75!important;
  opacity:.72!important;
}

/* Ara i Gràfiques comparteixen exactament la intensitat cromàtica dels estats. */
:root[data-theme] .now-page .connection-card.ok{
  border-color:var(--state-green,var(--green))!important;
}
:root[data-theme] .now-page .connection-card.warn{
  border-color:var(--state-orange,var(--status-warn,#f2a43b))!important;
}
:root[data-theme] .now-page .connection-card.error{
  border-color:var(--state-red,var(--riseX,#d94b4b))!important;
}
:root[data-theme] .charts-v012005.ui-system-master .v4-chart-meta,
:root[data-theme] .charts-v012005.ui-system-master .v4-multi-legend{
  margin-top:var(--ui-gap-same-element)!important;
  padding:0!important;
  color:var(--ui-helper)!important;
  font-size:var(--ui-body-size)!important;
  font-weight:500!important;
  line-height:1.35!important;
}
:root[data-theme] .charts-v012005.ui-system-master .v4-chart-card>footer{
  margin:var(--ui-gap-label) 0 0!important;
  padding:0 0 var(--ui-gap-content-groups)!important;
  border:0!important;
  background:transparent!important;
  color:var(--ui-helper)!important;
  font-size:var(--ui-body-size)!important;
  font-weight:500!important;
  line-height:1.35!important;
}
:root[data-theme] .charts-v012005.ui-system-master .v31-model-point{
  margin-top:var(--ui-gap-same-element)!important;
}
:root[data-theme] .charts-v012005.ui-system-master .v3-noise-empty>footer{
  margin:var(--ui-gap-related-controls) 0 0!important;
  padding:var(--ui-gap-related-controls) 0 var(--ui-gap-content-groups)!important;
  border:0!important;
  background:transparent!important;
  color:var(--ui-helper)!important;
  font-size:var(--ui-body-size)!important;
  font-weight:500!important;
  line-height:1.35!important;
}
:root[data-theme] .charts-v012005.ui-system-master .v4-stat-empty,
:root[data-theme] .charts-v012005.ui-system-master .v3-noise-empty>p{
  margin:var(--ui-gap-content-groups) 0!important;
  color:var(--ui-helper)!important;
  font-size:var(--ui-body-size)!important;
  font-weight:500!important;
  line-height:1.35!important;
}

/* Canvi de família de dades: títol de secció + descriptor. */
:root[data-theme] .charts-v012005.ui-system-master>.v4-group-title{
  gap:var(--ui-gap-same-element)!important;
  margin:var(--ui-space-4) 4px var(--ui-gap-content-groups)!important;
}
:root[data-theme] .charts-v012005.ui-system-master>.v4-group-title strong{
  color:var(--green)!important;
  font-size:var(--ui-section-title-size)!important;
  font-weight:900!important;
  line-height:1.05!important;
}
:root[data-theme] .charts-v012005.ui-system-master>.v4-group-title span{
  color:var(--ui-helper)!important;
  font-size:var(--ui-body-size)!important;
  font-weight:750!important;
  line-height:1.25!important;
}
:root[data-theme] .charts-v012005.ui-system-master>.ui-source-group strong{
  color:var(--text)!important;
  font-size:clamp(24px,5.8vw,26px)!important;
  font-weight:900!important;
  line-height:1.05!important;
}
:root[data-theme] .charts-v012005.ui-system-master>.ui-source-group span{
  color:var(--green)!important;
  font-size:clamp(17px,4.6vw,19px)!important;
  font-weight:950!important;
  line-height:1.05!important;
}

/* El darrer quadre conserva el mateix interval visual que hi ha entre quadres. */
.app:has(>.charts-v012005.ui-system-master){
  padding-bottom:var(--app-bar-height)!important;
}
:root[data-theme] .content.charts-v012005.ui-system-master{
  padding-bottom:0!important;
}

/* Regla comuna valor/unitat: unitat al 70% i alineada per la base inferior. */
:root[data-theme] .now-page .metric-value,
:root[data-theme] .now-page .data-value.reading-ink,
:root[data-theme] .now-page .trend-value,
:root[data-theme] .noise-live-main>strong,
:root[data-theme] .widget-live-value,
:root[data-theme] .widget-number{
  align-items:flex-end!important;
}
:root[data-theme] .now-page .metric-value,
:root[data-theme] .now-page .data-value.reading-ink,
:root[data-theme] .now-page .trend-value{
  display:flex!important;
}
:root[data-theme] .v4-measure{
  align-items:center!important;
}
:root[data-theme] .v4-measure-line{
  display:inline-flex!important;
  align-items:flex-end!important;
  justify-content:center!important;
  gap:3px!important;
  font:inherit!important;
  font-size:inherit!important;
  line-height:1!important;
}
:root[data-theme] .v4-measure-line>b{
  font:inherit!important;
  font-size:inherit!important;
  line-height:1!important;
}
:root[data-theme] .now-page .metric-value .unit,
:root[data-theme] .now-page .data-value .data-unit,
:root[data-theme] .v4-measure-line>small,
:root[data-theme] .noise-live-main small,
:root[data-theme] .widget-live-value .widget-unit,
:root[data-theme] .detail-current .detail-unit,
:root[data-theme] .history-val .detail-unit{
  font-size:.70em!important;
  line-height:1!important;
  align-self:flex-end!important;
  vertical-align:bottom!important;
}

/* Previsió: correcció òptica mínima comuna a totes les unitats que
   acompanyen un valor principal. No altera la mida 70/100 ni el valor. */
:root[data-theme] .forecast-v012005.ui-system-master .v4-measure-line>small,
:root[data-theme] .forecast-v012005.ui-system-master .v4-time-line>.v4-unit{
  transform:translateY(calc(var(--ui-unit-optical-lift) - .25px))!important;
}
:root[data-theme] .noise-live-main>strong,
:root[data-theme] .widget-number{
  display:inline-flex!important;
}

@media(max-width:390px){
  :root[data-theme] .config-page.ui-system-master .current-station-section .config-section-title-row{
    gap:var(--ui-space-2)!important;
  }
  :root[data-theme] .config-page.ui-system-master .widget-future{
    padding-inline:10px!important;
    font-size:13px!important;
  }
}

/* Searchable Help added by the stable-reference audit. */
.help-search{margin:0 0 14px;padding:14px 16px;border:1px solid var(--border);border-radius:18px;background:var(--surface-2)}
.help-search label{display:block;margin-bottom:7px;font-weight:900;color:var(--text)}
.help-search input{width:100%;min-height:46px;padding:11px 13px;border:1px solid var(--border);border-radius:14px;background:var(--surface-3);color:var(--text);font:inherit}
.help-search input:focus-visible{outline:3px solid color-mix(in srgb,var(--green) 55%,transparent);outline-offset:2px}
.help-search p{margin:7px 2px 0;color:var(--muted);font-size:14px;font-weight:750}
.help-no-results{padding:18px;text-align:center;color:var(--muted);font-weight:800}
.help-section[hidden]{display:none!important}

/* v0.12.042 — Sol meteorològic i trajectòria lunar diürna/nocturna separats. */
.forecast-v012005 .v4-celestial-moon>h3{
  left:auto!important;
  transform:none!important;
  margin-left:0!important;
  text-align:left!important;
}
.forecast-v012005 .v42-moon-plot{
  margin-top:10px!important;
}
.forecast-v012005 .v42-moon-paths .v42-moon-night{
  stroke:#6f60c7!important;
  stroke-width:2.25!important;
  opacity:.95;
}
.forecast-v012005 .v42-moon-paths .v42-moon-day{
  stroke:#8f84cf!important;
  stroke-width:1.5!important;
  stroke-dasharray:3 5;
  opacity:.28;
}
.forecast-v012005 .v4-celestial-marker.moon{
  transition:opacity .2s ease,filter .2s ease;
}
.forecast-v012005 .v4-celestial-marker.moon.daylight{
  width:auto;
  height:auto;
  font-size:24px;
  opacity:.24;
  filter:saturate(.55);
}
.forecast-v012005 .v4-celestial-marker.moon.nighttime{
  width:auto;
  height:auto;
  font-size:32px;
  opacity:1;
  filter:none;
}
.forecast-v012005 .v42-moon-times>span:first-child{
  justify-self:start;
}
.forecast-v012005 .v42-moon-times>span:last-child{
  justify-self:end;
}
:root[data-theme="dark"] .forecast-v012005 .v42-moon-paths .v42-moon-night{
  stroke:#b7adff!important;
}
:root[data-theme="dark"] .forecast-v012005 .v42-moon-paths .v42-moon-day{
  stroke:#c7c0ff!important;
  opacity:.24;
}
@media(max-width:390px){
  .forecast-v012005 .v4-celestial-marker.moon.daylight{font-size:21px}
  .forecast-v012005 .v4-celestial-marker.moon.nighttime{font-size:29px}
}

/* v0.12.043 — marge geomètric mínim i comú perquè cap astre envaeixi el títol.
   Punt més alt: 32/360 de l'amplada. Símbol: 30 px en mòbil, 32 px en ample.
   Transformació: 2 px. Separació visual garantida: 3 px. */
.forecast-v012005 .v4-celestial-plot,
.forecast-v012005 .v42-moon-plot{
  margin-top:max(3px,calc(35px - 8.8889%))!important;
}
@media(min-width:391px){
  .forecast-v012005 .v4-celestial-plot,
  .forecast-v012005 .v42-moon-plot{
    margin-top:max(3px,calc(37px - 8.8889%))!important;
  }
}

/* L'arc informa del recorregut; el símbol solar conserva el protagonisme. */
.forecast-v012005 .v4-celestial-sun .v4-celestial-paths path{
  opacity:.58;
}

/*
 * v0.12.045 — estudi visual complet i aplicació a Previsió.
 *
 * Patró únic verificat a la resta de l'app:
 * - Ara: jerarquia de lectura, unitats i estats de dades.
 * - Configuració: ritme 4/6/8/12, camps de 50 px i radis 16/20.
 * - Gràfiques: targeta de dades, resum, metadades i traçabilitat de font.
 *
 * Previsió conserva els formats específics que comuniquen informació
 * (carrusel horari, taula diària i geometria astronòmica), però adopta
 * exactament la mateixa gramàtica de superfícies, proximitat i tipografia.
 */
:root[data-theme] .forecast-v012005.ui-system-master>.v19-screen-heading{
  margin-bottom:var(--ui-space-4)!important;
}
:root[data-theme] .forecast-v012005.ui-system-master>.v4-location{
  gap:var(--ui-gap-same-element)!important;
  margin:0 4px var(--ui-gap-content-groups)!important;
  color:var(--text)!important;
  font-size:var(--ui-body-size)!important;
  font-weight:500!important;
  line-height:1.25!important;
}
:root[data-theme] .forecast-v012005.ui-system-master>.v4-location strong{
  font-size:var(--ui-item-title-size)!important;
  font-weight:900!important;
}
:root[data-theme] .forecast-v012005.ui-system-master>.v4-location small{
  color:var(--ui-helper)!important;
  font-size:var(--ui-body-size)!important;
  font-weight:750!important;
  line-height:1.25!important;
}

/* Estat del model: mateix component que Ara i l'estat de càrrega de Gràfiques. */
:root[data-theme] .forecast-v012005.ui-system-master>.v5-forecast-status{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:3px!important;
  min-height:0!important;
  margin:0 0 var(--ui-gap-content-groups)!important;
  padding:11px 14px!important;
  box-sizing:border-box!important;
  border:1px solid var(--border)!important;
  border-radius:18px!important;
  background:var(--panel-gradient)!important;
  color:var(--text)!important;
}
:root[data-theme] .forecast-v012005.ui-system-master>.v5-forecast-status .connection-state{
  position:static!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:7px!important;
  padding:0!important;
  font-size:clamp(13px,3.4vw,16px)!important;
  font-weight:950!important;
  line-height:1.15!important;
}
:root[data-theme] .forecast-v012005.ui-system-master>.v5-forecast-status .connection-stamp{
  display:flex!important;
  align-items:baseline!important;
  gap:5px!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
  white-space:normal!important;
}
:root[data-theme] .forecast-v012005.ui-system-master>.v5-forecast-status .connection-label,
:root[data-theme] .forecast-v012005.ui-system-master>.v5-forecast-status .connection-stamp strong,
:root[data-theme] .forecast-v012005.ui-system-master>.v5-forecast-status .connection-hint-line{
  font-size:clamp(12px,3.1vw,14px)!important;
  line-height:1.2!important;
}
:root[data-theme] .forecast-v012005.ui-system-master>.v5-forecast-status .connection-label,
:root[data-theme] .forecast-v012005.ui-system-master>.v5-forecast-status .connection-hint-line{
  color:var(--ui-helper)!important;
  font-weight:750!important;
}
:root[data-theme] .forecast-v012005.ui-system-master>.v5-forecast-status .connection-stamp strong{
  color:var(--text)!important;
  font-weight:850!important;
}
:root[data-theme] .forecast-v012005.ui-system-master>.v5-forecast-status .state-dot{
  width:9px!important;
  height:9px!important;
  flex:0 0 9px!important;
}
:root[data-theme] .forecast-v012005.ui-system-master>.v5-forecast-status.ok{
  border-color:var(--state-green,var(--green))!important;
}
:root[data-theme] .forecast-v012005.ui-system-master>.v5-forecast-status.ok .connection-state{
  color:var(--state-green,var(--green))!important;
}
:root[data-theme] .forecast-v012005.ui-system-master>.v5-forecast-status.ok .state-dot{
  background:var(--state-green,var(--green))!important;
}
:root[data-theme] .forecast-v012005.ui-system-master>.v5-forecast-status.warn{
  border-color:var(--state-orange,var(--status-warn,#f2a43b))!important;
}
:root[data-theme] .forecast-v012005.ui-system-master>.v5-forecast-status.warn .connection-state{
  color:var(--state-orange,var(--status-warn,#f2a43b))!important;
}
:root[data-theme] .forecast-v012005.ui-system-master>.v5-forecast-status.warn .state-dot{
  background:var(--state-orange,var(--status-warn,#f2a43b))!important;
}
:root[data-theme] .forecast-v012005.ui-system-master>.v5-forecast-status.error{
  border-color:var(--state-red,var(--riseX,#d94b4b))!important;
}
:root[data-theme] .forecast-v012005.ui-system-master>.v5-forecast-status.error .connection-state{
  color:var(--state-red,var(--riseX,#d94b4b))!important;
}
:root[data-theme] .forecast-v012005.ui-system-master>.v5-forecast-status.error .state-dot{
  background:var(--state-red,var(--riseX,#d94b4b))!important;
}

/* Superfície única per a tots els blocs funcionals de Previsió. */
:root[data-theme] .forecast-v012005.ui-system-master>.v4-forecast-hero,
:root[data-theme] .forecast-v012005.ui-system-master>.v4-hourly,
:root[data-theme] .forecast-v012005.ui-system-master>.v4-daily-list,
:root[data-theme] .forecast-v012005.ui-system-master>.v4-details,
:root[data-theme] .forecast-v012005.ui-system-master>.v4-air,
:root[data-theme] .forecast-v012005.ui-system-master>.v4-compare,
:root[data-theme] .forecast-v012005.ui-system-master .v4-astro>.v4-celestial,
:root[data-theme] .forecast-v012005.ui-system-master .v4-astro>.v4-phase{
  margin-bottom:var(--ui-gap-content-groups)!important;
  border:1px solid var(--border)!important;
  border-radius:var(--ui-radius-panel)!important;
  overflow:hidden!important;
}
:root[data-theme="dark"] .forecast-v012005.ui-system-master>.v4-forecast-hero,
:root[data-theme="dark"] .forecast-v012005.ui-system-master>.v4-hourly,
:root[data-theme="dark"] .forecast-v012005.ui-system-master>.v4-daily-list,
:root[data-theme="dark"] .forecast-v012005.ui-system-master>.v4-details,
:root[data-theme="dark"] .forecast-v012005.ui-system-master>.v4-air,
:root[data-theme="dark"] .forecast-v012005.ui-system-master>.v4-compare,
:root[data-theme="dark"] .forecast-v012005.ui-system-master .v4-astro>.v4-celestial,
:root[data-theme="dark"] .forecast-v012005.ui-system-master .v4-astro>.v4-phase{
  background:linear-gradient(145deg,var(--ms-dark-panel),var(--ms-dark-panel-deep))!important;
  border-color:#6E897F!important;
  box-shadow:0 8px 20px rgba(0,0,0,.31),inset 0 1px 0 rgba(255,255,255,.06)!important;
}
:root[data-theme="light"] .forecast-v012005.ui-system-master>.v4-forecast-hero,
:root[data-theme="light"] .forecast-v012005.ui-system-master>.v4-hourly,
:root[data-theme="light"] .forecast-v012005.ui-system-master>.v4-daily-list,
:root[data-theme="light"] .forecast-v012005.ui-system-master>.v4-details,
:root[data-theme="light"] .forecast-v012005.ui-system-master>.v4-air,
:root[data-theme="light"] .forecast-v012005.ui-system-master>.v4-compare,
:root[data-theme="light"] .forecast-v012005.ui-system-master .v4-astro>.v4-celestial,
:root[data-theme="light"] .forecast-v012005.ui-system-master .v4-astro>.v4-phase{
  background:linear-gradient(145deg,var(--ms-light-panel),var(--ms-light-panel-soft))!important;
  border-color:#8FAE9F!important;
  box-shadow:0 8px 20px rgba(23,56,43,.11),inset 0 1px 0 rgba(255,255,255,.98)!important;
}

/* Resum immediat: lectura d'Ara + caixes de dades de Gràfiques. */
:root[data-theme] .forecast-v012005.ui-system-master>.v4-forecast-hero{
  margin-top:0!important;
  padding:var(--ui-gap-content-groups) var(--ui-gap-content-groups) 0!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-hero-grid{
  grid-template-columns:72px minmax(0,1fr)!important;
  gap:var(--ui-gap-content-groups)!important;
  align-items:center!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-hero-grid>.weather-symbol{
  min-height:64px!important;
  font-size:58px!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-hero-content h2{
  margin:0!important;
  color:var(--text)!important;
  font-size:var(--ui-section-title-size)!important;
  font-weight:900!important;
  line-height:1.05!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-temp-row{
  gap:var(--ui-space-4)!important;
  margin-top:var(--ui-space-2)!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-temp-row>.v4-measure{
  font-size:clamp(38px,10.5vw,48px)!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-temp-row>span{
  gap:var(--ui-gap-same-element)!important;
  color:var(--ui-helper)!important;
  font-size:var(--ui-body-size)!important;
  font-weight:750!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-temp-row>span .v4-measure{
  color:var(--text)!important;
  font-size:var(--ui-item-title-size)!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-hero-summary{
  gap:var(--ui-gap-related-controls)!important;
  margin-top:var(--ui-gap-content-groups)!important;
}

/* Regla comuna etiqueta/camp/unitat. */
:root[data-theme] .forecast-v012005.ui-system-master .v4-field{
  gap:var(--ui-gap-label)!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-field>label,
:root[data-theme] .forecast-v012005.ui-system-master .v4-pollen label{
  color:var(--ui-helper)!important;
  font-size:var(--ui-body-size)!important;
  font-weight:750!important;
  line-height:1.15!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-value-box{
  display:grid!important;
  align-content:center!important;
  justify-items:center!important;
  min-height:var(--ui-control-height)!important;
  box-sizing:border-box!important;
  padding:8px 10px!important;
  border:1px solid var(--ui-control-border)!important;
  border-radius:var(--ui-radius-field)!important;
  background:var(--ui-readout-bg)!important;
  background-image:none!important;
  color:var(--ui-readout-text)!important;
  text-align:center!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-value-box>.v4-measure,
:root[data-theme] .forecast-v012005.ui-system-master .v5-range .v4-value-box .v4-measure{
  justify-content:center!important;
  color:var(--ui-readout-text)!important;
  font-size:calc(var(--ui-readout-size) + 1px)!important;
  font-weight:var(--ui-readout-weight)!important;
  text-align:center!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v5-range .v4-value-box>span{
  gap:var(--ui-gap-label)!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-value-box>small{
  color:var(--ui-helper)!important;
  font-size:12px!important;
  font-weight:500!important;
  line-height:1.25!important;
}

/* Títols de grup: la mateixa jerarquia verda de Configuració i Gràfiques. */
:root[data-theme] .forecast-v012005.ui-system-master>.v4-section-title,
:root[data-theme] .forecast-v012005.ui-system-master .v4-astro>.v4-section-title{
  margin:var(--ui-space-4) 4px var(--ui-gap-content-groups)!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-section-title h2{
  margin:0!important;
  color:var(--green)!important;
  font-size:var(--ui-section-title-size)!important;
  font-weight:900!important;
  line-height:1.05!important;
}

/* Properes 48 hores: conserva el desplaçament horitzontal i normalitza densitat. */
:root[data-theme] .forecast-v012005.ui-system-master>.v4-hourly{
  padding:var(--ui-gap-content-groups) 0 var(--ui-space-1)!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-hour-scroll{
  padding:0 0 var(--ui-space-2)!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-hour-grid article{
  grid-template-rows:26px 52px 32px 60px 28px 28px!important;
  padding-inline:var(--ui-space-2)!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-hour-grid time{
  color:var(--ui-helper)!important;
  font-size:var(--ui-body-size)!important;
  font-weight:750!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-hour-symbol{
  font-size:40px!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-hour-grid article>.v4-measure{
  font-size:20px!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-temp-curve{
  top:110px!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-hour-rain,
:root[data-theme] .forecast-v012005.ui-system-master .v4-hour-hum{
  gap:var(--ui-gap-same-element)!important;
  color:var(--ui-helper)!important;
  font-size:16px!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-hour-rain .v4-measure,
:root[data-theme] .forecast-v012005.ui-system-master .v4-hour-hum .v4-measure{
  font-size:16px!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v5-weather-glyph{
  font-size:18px!important;
}

/* Properes 15 jornades: capçalera, files i acció segons el patró de controls. */
:root[data-theme] .forecast-v012005.ui-system-master .v4-daily-list>header,
:root[data-theme] .forecast-v012005.ui-system-master .v4-day-row{
  grid-template-columns:minmax(94px,1fr) 50px 96px 82px!important;
  column-gap:var(--ui-gap-related-controls)!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-daily-list>header{
  padding:10px var(--ui-gap-content-groups)!important;
  background:var(--ui-context-bg)!important;
  color:var(--ui-helper)!important;
  font-size:var(--ui-body-size)!important;
  font-weight:750!important;
  line-height:1.15!important;
  text-transform:none!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-day-row{
  min-height:72px!important;
  padding:var(--ui-space-2) var(--ui-gap-content-groups)!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-day-name{
  gap:var(--ui-gap-same-element)!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-day-name strong{
  font-size:var(--ui-field-size)!important;
  font-weight:900!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-day-name small,
:root[data-theme] .forecast-v012005.ui-system-master .v4-day-temps>span>small{
  color:var(--ui-helper)!important;
  font-size:12px!important;
  font-weight:750!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-day-symbol{
  font-size:38px!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-day-temps,
:root[data-theme] .forecast-v012005.ui-system-master .v4-day-rain{
  gap:var(--ui-gap-label)!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-day-temps .v4-measure,
:root[data-theme] .forecast-v012005.ui-system-master .v4-day-rain .v4-measure{
  font-size:var(--ui-field-size)!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-day-rain>span{
  gap:var(--ui-gap-same-element)!important;
  color:var(--ui-helper)!important;
  font-size:16px!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-day-rain>span>b{
  font-size:17px!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-daily-list>.v3-expand,
:root[data-theme] .forecast-v012005.ui-system-master .v4-compare>.v3-expand{
  height:var(--ui-control-height)!important;
  min-height:var(--ui-control-height)!important;
  margin:0!important;
  border:0!important;
  border-top:1px solid var(--ui-control-border)!important;
  border-radius:0!important;
  background:var(--ui-control-bg)!important;
  background-image:none!important;
  color:var(--text)!important;
  font-size:var(--ui-control-size)!important;
  font-weight:850!important;
  box-shadow:none!important;
}

/* Sol i Lluna: només s'unifica el contenidor i la jerarquia textual.
   Els arcs i els marges geomètrics calculats a v0.12.043 resten intactes. */
:root[data-theme] .forecast-v012005.ui-system-master .v4-astro{
  margin-top:var(--ui-space-4)!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-astro>.v4-celestial{
  margin-bottom:var(--ui-gap-content-groups)!important;
  padding:var(--ui-gap-content-groups)!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-celestial h3{
  margin:0!important;
  color:var(--text)!important;
  font-size:var(--ui-section-title-size)!important;
  font-weight:900!important;
  line-height:1.05!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-celestial-times{
  margin-top:var(--ui-gap-same-element)!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-celestial-times>span{
  gap:var(--ui-gap-same-element)!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-celestial-times b{
  color:var(--ui-helper)!important;
  font-size:var(--ui-body-size)!important;
  font-weight:750!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-celestial-times strong{
  color:var(--text)!important;
  font-size:clamp(20px,5.4vw,23px)!important;
  font-weight:900!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-phase{
  grid-template-columns:64px minmax(0,1fr)!important;
  gap:var(--ui-gap-content-groups)!important;
  padding:var(--ui-gap-content-groups)!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-phase-icon{
  font-size:50px!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-phase-copy{
  gap:var(--ui-gap-same-element)!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-phase-copy>span,
:root[data-theme] .forecast-v012005.ui-system-master .v4-phase small{
  color:var(--ui-helper)!important;
  font-size:var(--ui-body-size)!important;
  font-weight:500!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-phase strong{
  font-size:var(--ui-item-title-size)!important;
  font-weight:900!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-astro-source{
  margin:0 4px var(--ui-space-4)!important;
  color:var(--ui-helper)!important;
  font-size:var(--ui-body-size)!important;
  font-weight:500!important;
  line-height:1.35!important;
}

/* Detalls, aire, pol·len i comparació. */
:root[data-theme] .forecast-v012005.ui-system-master>.v4-details,
:root[data-theme] .forecast-v012005.ui-system-master>.v4-air{
  margin-top:0!important;
  padding:var(--ui-gap-content-groups) var(--ui-gap-content-groups) 0!important;
}
:root[data-theme] .forecast-v012005.ui-system-master>.v4-details>.v4-section-title,
:root[data-theme] .forecast-v012005.ui-system-master>.v4-air>.v4-section-title{
  margin:0 0 var(--ui-gap-content-groups)!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-fields{
  gap:var(--ui-gap-content-groups) var(--ui-gap-related-controls)!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-cape{
  margin:var(--ui-gap-content-groups) 0 0!important;
  border:1px solid var(--ui-control-border)!important;
  border-radius:var(--ui-radius-field)!important;
  overflow:hidden!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-cape summary{
  display:flex!important;
  align-items:center!important;
  min-height:var(--ui-control-height)!important;
  box-sizing:border-box!important;
  padding:0 14px!important;
  background:var(--ui-control-bg)!important;
  color:var(--text)!important;
  font-size:var(--ui-control-size)!important;
  font-weight:850!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-cape>div{
  padding:var(--ui-gap-content-groups)!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-cape p,
:root[data-theme] .forecast-v012005.ui-system-master .v4-compare>p{
  color:var(--ui-helper)!important;
  font-size:var(--ui-body-size)!important;
  font-weight:500!important;
  line-height:1.35!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-cape p{
  margin:var(--ui-space-2) 0 0!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-aqi{
  gap:var(--ui-gap-related-controls)!important;
  margin-bottom:var(--ui-gap-content-groups)!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-aqi>div:first-child>strong{
  font-size:var(--ui-section-title-size)!important;
  font-weight:900!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-aqi>div:first-child .v4-measure{
  color:var(--ui-helper)!important;
  font-size:var(--ui-field-size)!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-air>h3{
  margin:var(--ui-space-4) 0 var(--ui-gap-content-groups)!important;
  color:var(--text)!important;
  font-size:var(--ui-item-title-size)!important;
  font-weight:900!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-pollen{
  gap:var(--ui-gap-content-groups) var(--ui-gap-related-controls)!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-pollen article{
  gap:var(--ui-gap-label)!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-pollen article>div{
  min-height:72px!important;
  padding:var(--ui-space-2)!important;
  border:1px solid var(--ui-control-border)!important;
  border-radius:var(--ui-radius-field)!important;
  background:var(--ui-readout-bg)!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-pollen .v4-measure{
  justify-content:center!important;
  color:var(--ui-readout-text)!important;
  font-size:calc(var(--ui-readout-size) + 1px)!important;
  font-weight:var(--ui-readout-weight)!important;
  text-align:center!important;
}
:root[data-theme] .forecast-v012005.ui-system-master>.v4-details>footer,
:root[data-theme] .forecast-v012005.ui-system-master>.v4-air>footer,
:root[data-theme] .forecast-v012005.ui-system-master>.v4-forecast-hero>footer,
:root[data-theme] .forecast-v012005.ui-system-master>.v4-compare>footer,
:root[data-theme] .forecast-v012005.ui-system-master>.v4-hourly>footer,
:root[data-theme] .forecast-v012005.ui-system-master>.v4-daily-list>footer,
:root[data-theme] .forecast-v012005.ui-system-master .v4-celestial>footer,
:root[data-theme] .forecast-v012005.ui-system-master .v4-phase>footer{
  margin:var(--ui-gap-related-controls) 0 0!important;
  padding:0 0 var(--ui-gap-content-groups)!important;
  border:0!important;
  background:transparent!important;
  color:var(--ui-helper)!important;
  font-size:var(--ui-body-size)!important;
  font-weight:500!important;
  line-height:1.35!important;
}
:root[data-theme] .forecast-v012005.ui-system-master>.v4-hourly>footer,
:root[data-theme] .forecast-v012005.ui-system-master>.v4-daily-list>footer{
  padding-inline:var(--ui-gap-content-groups)!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-celestial>footer{
  margin-top:var(--ui-gap-content-groups)!important;
  padding-bottom:0!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-phase>footer{
  grid-column:1/-1!important;
  margin-top:0!important;
  padding-bottom:0!important;
}
:root[data-theme] .forecast-v012005.ui-system-master>.v4-compare{
  margin-top:0!important;
}
:root[data-theme] .forecast-v012005.ui-system-master>.v4-compare>p{
  margin:var(--ui-gap-content-groups)!important;
}
:root[data-theme] .forecast-v012005.ui-system-master>.v4-compare article{
  padding:var(--ui-gap-content-groups)!important;
}
:root[data-theme] .forecast-v012005.ui-system-master>.v4-compare article h3{
  margin:0 0 var(--ui-gap-related-controls)!important;
  font-size:var(--ui-item-title-size)!important;
  font-weight:900!important;
}
:root[data-theme] .forecast-v012005.ui-system-master>.v4-compare article>div{
  gap:var(--ui-gap-related-controls)!important;
}
:root[data-theme] .forecast-v012005.ui-system-master>.v4-compare article>div>span{
  align-content:center!important;
  justify-items:center!important;
  gap:var(--ui-gap-label)!important;
  min-height:58px!important;
  padding:var(--ui-space-2) 10px!important;
  box-sizing:border-box!important;
  border:1px solid var(--ui-control-border)!important;
  border-radius:var(--ui-radius-field)!important;
  background:var(--ui-readout-bg)!important;
  color:var(--ui-readout-text)!important;
  text-align:center!important;
}
:root[data-theme] .forecast-v012005.ui-system-master>.v4-compare article small{
  color:var(--ui-helper)!important;
  font-size:12px!important;
  font-weight:750!important;
}
:root[data-theme] .forecast-v012005.ui-system-master>.v4-compare article .v4-measure{
  justify-content:center!important;
  color:var(--ui-readout-text)!important;
  font-size:calc(var(--ui-readout-size) + 1px)!important;
  font-weight:var(--ui-readout-weight)!important;
  text-align:center!important;
}
:root[data-theme] .forecast-v012005.ui-system-master>.v4-attribution{
  margin:var(--ui-space-2) 4px var(--ui-space-4)!important;
  color:var(--ui-helper)!important;
  font-size:var(--ui-body-size)!important;
  font-weight:500!important;
  line-height:1.45!important;
}
:root[data-theme] .forecast-v012005.ui-system-master>.v4-attribution a{
  color:var(--green)!important;
  font-weight:750!important;
}

/* Focus coherent per a totes les accions de Previsió. */
:root[data-theme] .forecast-v012005.ui-system-master button:focus-visible,
:root[data-theme] .forecast-v012005.ui-system-master summary:focus-visible,
:root[data-theme] .forecast-v012005.ui-system-master a:focus-visible{
  outline:3px solid color-mix(in srgb,var(--green) 55%,transparent)!important;
  outline-offset:2px!important;
}

.app:has(>.forecast-v012005.ui-system-master){
  padding-bottom:var(--app-bar-height)!important;
}
:root[data-theme] .content.forecast-v012005.ui-system-master{
  padding-bottom:0!important;
}

@media(max-width:520px){
  :root[data-theme] .forecast-v012005.ui-system-master .v4-hero-summary{
    grid-template-columns:1fr!important;
  }
  :root[data-theme] .forecast-v012005.ui-system-master .v4-hero-summary .v4-field{
    grid-template-columns:minmax(0,1fr) minmax(145px,.9fr)!important;
    align-items:center!important;
  }
  :root[data-theme] .forecast-v012005.ui-system-master .v4-daily-list>header,
  :root[data-theme] .forecast-v012005.ui-system-master .v4-day-row{
    grid-template-columns:minmax(86px,1fr) 44px 86px 72px!important;
    column-gap:var(--ui-space-1)!important;
  }
  :root[data-theme] .forecast-v012005.ui-system-master .v4-daily-list>header,
  :root[data-theme] .forecast-v012005.ui-system-master .v4-day-row{
    padding-inline:var(--ui-space-2)!important;
  }
  :root[data-theme] .forecast-v012005.ui-system-master .v4-daily-list>header{
    font-size:12px!important;
  }
  :root[data-theme] .forecast-v012005.ui-system-master .v4-day-name strong,
  :root[data-theme] .forecast-v012005.ui-system-master .v4-day-temps .v4-measure,
  :root[data-theme] .forecast-v012005.ui-system-master .v4-day-rain .v4-measure{
    font-size:14px!important;
  }
  :root[data-theme] .forecast-v012005.ui-system-master .v4-day-symbol{
    font-size:34px!important;
  }
  :root[data-theme] .forecast-v012005.ui-system-master .v4-day-rain>span{
    font-size:14px!important;
  }
}

@media(max-width:390px){
  :root[data-theme] .forecast-v012005.ui-system-master .v4-hero-grid{
    grid-template-columns:60px minmax(0,1fr)!important;
    gap:var(--ui-space-2)!important;
  }
  :root[data-theme] .forecast-v012005.ui-system-master .v4-hero-grid>.weather-symbol{
    min-height:56px!important;
    font-size:50px!important;
  }
  :root[data-theme] .forecast-v012005.ui-system-master .v4-temp-row{
    gap:var(--ui-space-2)!important;
  }
  :root[data-theme] .forecast-v012005.ui-system-master .v4-temp-row>.v4-measure{
    font-size:36px!important;
  }
  :root[data-theme] .forecast-v012005.ui-system-master .v4-hero-summary .v4-field{
    grid-template-columns:minmax(0,1fr) minmax(132px,.9fr)!important;
  }
  :root[data-theme] .forecast-v012005.ui-system-master .v4-daily-list>header,
  :root[data-theme] .forecast-v012005.ui-system-master .v4-day-row{
    grid-template-columns:minmax(78px,1fr) 39px 78px 66px!important;
  }
  :root[data-theme] .forecast-v012005.ui-system-master .v4-daily-list>header{
    font-size:11px!important;
  }
  :root[data-theme] .forecast-v012005.ui-system-master .v4-day-name strong,
  :root[data-theme] .forecast-v012005.ui-system-master .v4-day-temps .v4-measure,
  :root[data-theme] .forecast-v012005.ui-system-master .v4-day-rain .v4-measure{
    font-size:13px!important;
  }
  :root[data-theme] .forecast-v012005.ui-system-master .v4-day-symbol{
    font-size:31px!important;
  }
  :root[data-theme] .forecast-v012005.ui-system-master .v4-day-rain>span,
  :root[data-theme] .forecast-v012005.ui-system-master .v4-day-rain>span>b{
    font-size:13px!important;
  }
  :root[data-theme] .forecast-v012005.ui-system-master .v4-celestial-times b{
    font-size:12px!important;
  }
  :root[data-theme] .forecast-v012005.ui-system-master .v4-celestial-times strong{
    font-size:19px!important;
  }
  :root[data-theme] .forecast-v012005.ui-system-master .v4-phase{
    grid-template-columns:54px minmax(0,1fr)!important;
  }
  :root[data-theme] .forecast-v012005.ui-system-master .v4-phase-icon{
    font-size:44px!important;
  }
  :root[data-theme] .forecast-v012005.ui-system-master .v4-phase-line{
    gap:var(--ui-space-2)!important;
  }
  :root[data-theme] .forecast-v012005.ui-system-master .v4-phase strong{
    font-size:16px!important;
  }
  :root[data-theme] .forecast-v012005.ui-system-master .v4-phase small{
    font-size:12px!important;
  }
}

/* v0.12.046 — jerarquia definitiva de Previsió.
   Els títols de concepte viuen dins de la seva targeta; només Sol i Lluna
   conserva el títol exterior perquè governa més d'un requadre. */
:root[data-theme] .forecast-v012005.ui-system-master .v46-card-title{
  margin:0 0 var(--ui-gap-content-groups)!important;
  padding:0!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v46-card-title h2,
:root[data-theme] .forecast-v012005.ui-system-master .v46-phase-title,
:root[data-theme] .forecast-v012005.ui-system-master .v4-celestial>h3{
  margin:0!important;
  color:var(--green)!important;
  font-size:var(--ui-section-title-size)!important;
  font-weight:900!important;
  line-height:1.05!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-hero-content>h3{
  margin:0!important;
  color:var(--text)!important;
  font-size:var(--ui-section-title-size)!important;
  font-weight:900!important;
  line-height:1.05!important;
}

/* Resum: les tres etiquetes queden damunt de tres caixes equivalents,
   igual que els resums Mínim / Màxim / Mitjana de Gràfiques. */
:root[data-theme] .forecast-v012005.ui-system-master .v4-hero-summary{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  align-items:end!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-hero-summary .v4-field{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  align-items:stretch!important;
  min-width:0!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-hero-summary .v4-field>label{
  display:flex!important;
  align-items:flex-end!important;
  min-height:2.3em!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-hero-summary .v4-value-box{
  width:100%!important;
  min-width:0!important;
  justify-content:center!important;
  text-align:center!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-hero-summary .v4-value-box>.v4-measure,
:root[data-theme] .forecast-v012005.ui-system-master .v4-hero-summary .v5-range .v4-value-box .v4-measure,
:root[data-theme] .forecast-v012005.ui-system-master .v4-hero-summary .v5-range .v4-value-box>span{
  justify-content:center!important;
  text-align:center!important;
}

/* Títols integrats i accions amb el patró de botó/camp ja establert. */
:root[data-theme] .forecast-v012005.ui-system-master>.v4-hourly>.v46-card-title{
  padding-inline:var(--ui-gap-content-groups)!important;
}
:root[data-theme] .forecast-v012005.ui-system-master>.v4-daily-list>.v46-card-title,
:root[data-theme] .forecast-v012005.ui-system-master>.v4-compare>.v46-card-title{
  margin:var(--ui-gap-content-groups)!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-daily-list>header{
  border-top:1px solid var(--ui-control-border)!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-daily-list>.v3-expand,
:root[data-theme] .forecast-v012005.ui-system-master .v4-compare>.v3-expand{
  width:calc(100% - 24px)!important;
  height:var(--ui-control-height)!important;
  min-height:var(--ui-control-height)!important;
  margin:var(--ui-gap-content-groups)!important;
  padding:0 14px!important;
  border:1px solid var(--ui-control-border)!important;
  border-radius:var(--ui-radius-field)!important;
  background:var(--ui-control-bg)!important;
  background-image:none!important;
  color:var(--text)!important;
  font-size:var(--ui-control-size)!important;
  font-weight:850!important;
  box-shadow:none!important;
}

/* Sol, Lluna i fase: etiqueta damunt del valor i dada dins d'una caixa. */
:root[data-theme] .forecast-v012005.ui-system-master .v4-celestial-times{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:var(--ui-gap-related-controls)!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-celestial-times>span{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:var(--ui-gap-label)!important;
  min-width:0!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-celestial-times strong{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-width:0!important;
  min-height:var(--ui-control-height)!important;
  box-sizing:border-box!important;
  height:var(--ui-control-height)!important;
  padding:0 10px!important;
  border:1px solid var(--ui-control-border)!important;
  border-radius:var(--ui-radius-field)!important;
  background:var(--ui-readout-bg)!important;
  color:var(--ui-readout-text)!important;
  font-size:calc(var(--ui-readout-size) + 1px)!important;
  font-weight:var(--ui-readout-weight)!important;
  text-align:center!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-phase-copy{
  gap:var(--ui-gap-label)!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-phase-line{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:var(--ui-space-2)!important;
  min-height:var(--ui-control-height)!important;
  box-sizing:border-box!important;
  padding:8px 10px!important;
  border:1px solid var(--ui-control-border)!important;
  border-radius:var(--ui-radius-field)!important;
  background:var(--ui-readout-bg)!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-phase-line small{
  color:var(--ui-helper)!important;
  font-size:12px!important;
  font-weight:500!important;
  line-height:1.2!important;
  text-align:right!important;
}

/* Font i ubicació formen un únic peu, en aquest ordre, dins de cada targeta. */
:root[data-theme] .forecast-v012005.ui-system-master footer .v31-model-point{
  margin-top:4px!important;
  color:var(--ui-helper)!important;
  font-size:inherit!important;
  font-weight:500!important;
  line-height:1.35!important;
}
:root[data-theme] .forecast-v012005.ui-system-master footer .v31-model-point strong{
  color:var(--text)!important;
  font-weight:900!important;
}
:root[data-theme] .forecast-v012005.ui-system-master>.v4-compare>footer{
  margin:0 var(--ui-gap-content-groups) var(--ui-gap-content-groups)!important;
  padding:0!important;
}

:root[data-theme] .forecast-v012005.ui-system-master>.v46-loading-card{
  margin-top:0!important;
  padding:var(--ui-gap-content-groups)!important;
}
:root[data-theme] .forecast-v012005.ui-system-master>.v46-loading-card>p{
  margin:0!important;
}

/* v0.12.049 — resum vigent de «Previsió actual».
   Una sola graella governa el temps actual i els quatre camps informatius.
   Reutilitza les mides, els radis i les distàncies del sistema mestre. */
:root[data-theme] .forecast-v012005.ui-system-master>.v4-forecast-hero{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  column-gap:var(--ui-gap-related-controls)!important;
  row-gap:var(--ui-gap-related-controls)!important;
}

/* v0.12.052 — horaris de Sol i Lluna.
   Les quatre caixes comparteixen amplada i alçada, els títols hi queden
   perfectament centrats i els extrems coincideixen amb els de l'escala.
   El valor i la unitat conserven la regla tipogràfica 100/70 i la mateixa base. */
:root[data-theme] .forecast-v012005.ui-system-master .v4-celestial-times{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:0!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-celestial-times>span,
:root[data-theme] .forecast-v012005.ui-system-master .v42-moon-times>span:first-child,
:root[data-theme] .forecast-v012005.ui-system-master .v42-moon-times>span:last-child{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  justify-self:auto!important;
  align-items:start!important;
  flex:0 0 32%!important;
  width:32%!important;
  max-width:32%!important;
  min-width:0!important;
  box-sizing:border-box!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-celestial-times b{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-width:0!important;
  text-align:center!important;
  white-space:nowrap!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-celestial-times strong{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:0!important;
  width:100%!important;
  min-width:0!important;
  min-height:var(--ui-control-height)!important;
  height:var(--ui-control-height)!important;
  box-sizing:border-box!important;
  line-height:1!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-celestial-times .v4-time-line{
  display:inline-flex!important;
  align-items:flex-end!important;
  justify-content:center!important;
  gap:3px!important;
  color:var(--ui-readout-text)!important;
  font-size:calc(var(--ui-readout-size) + 1px)!important;
  font-weight:var(--ui-readout-weight)!important;
  line-height:1!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-celestial-times .v4-time-value{
  display:block!important;
  font:inherit!important;
  font-size:1em!important;
  line-height:1!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v4-celestial-times .v4-unit{
  display:block!important;
  flex:0 0 auto!important;
  align-self:flex-end!important;
  margin:0!important;
  font-size:.70em!important;
  font-weight:var(--ui-readout-weight)!important;
  line-height:1!important;
}
:root[data-theme] .forecast-v012005.ui-system-master>.v4-forecast-hero>.v46-card-title{
  grid-column:1/-1!important;
  margin:0 0 var(--ui-space-1)!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v47-hero-main,
:root[data-theme] .forecast-v012005.ui-system-master .v47-temperature-extremes,
:root[data-theme] .forecast-v012005.ui-system-master .v47-hero-summary{
  display:contents!important;
}
/* v0.12.056 — geometria centrada del bloc esquerre de «Previsió actual».
   El rectangle imaginari coincideix en amplada amb la casella de pluja i,
   en alçada, va del límit superior de «Temperatura màxima» al límit inferior
   de la seva casella mínima. No té vora ni fons propi. */
:root[data-theme] .forecast-v012005.ui-system-master .v47-hero-main>.v4-hero-grid{
  grid-column:1!important;
  grid-row:2/span 2!important;
  align-self:stretch!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  grid-template-rows:auto auto auto!important;
  row-gap:var(--ui-gap-label)!important;
  align-content:center!important;
  justify-items:center!important;
  min-width:0!important;
  width:calc(100% + var(--ui-gap-content-groups) + var(--ui-gap-related-controls))!important;
  box-sizing:border-box!important;
  margin-left:calc(0px - var(--ui-gap-content-groups))!important;
  padding:0!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v47-hero-main>.v4-hero-grid>h3{
  align-self:end!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  color:var(--text)!important;
  font-size:var(--ui-section-title-size)!important;
  font-weight:900!important;
  line-height:1.05!important;
  text-align:center!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v55-current-row{
  align-self:center!important;
  justify-self:center!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:var(--ui-gap-content-groups)!important;
  width:max-content!important;
  max-width:100%!important;
  min-width:0!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v55-current-row>.weather-symbol{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 auto!important;
  width:auto!important;
  height:50px!important;
  min-height:50px!important;
  font-size:46px!important;
  line-height:1!important;
  text-align:center!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v55-current-row>.v4-measure{
  align-self:center!important;
  flex:0 0 auto!important;
  justify-content:flex-start!important;
  color:var(--text)!important;
  font-size:clamp(28px,7.2vw,38px)!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v55-feels-row{
  align-self:start!important;
  justify-self:center!important;
  display:flex!important;
  align-items:flex-end!important;
  justify-content:center!important;
  flex-wrap:nowrap!important;
  gap:var(--ui-gap-same-element)!important;
  min-width:0!important;
  color:var(--ui-helper)!important;
  font-size:var(--ui-body-size)!important;
  font-weight:750!important;
  line-height:1!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v55-feels-row>.v4-measure{
  flex:0 0 auto!important;
  justify-content:flex-start!important;
  color:var(--text)!important;
  font-size:var(--ui-item-title-size)!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v47-temperature-extremes .v4-field:first-child{
  grid-column:2!important;
  grid-row:2!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v47-temperature-extremes .v4-field:last-child{
  grid-column:2!important;
  grid-row:3!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v47-hero-summary .v4-field:first-child{
  grid-column:1!important;
  grid-row:4!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v47-hero-summary .v4-field:last-child{
  grid-column:2!important;
  grid-row:4!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v47-temperature-extremes .v4-field,
:root[data-theme] .forecast-v012005.ui-system-master .v47-hero-summary .v4-field{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:var(--ui-gap-label)!important;
  align-items:stretch!important;
  min-width:0!important;
  margin:0!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v47-temperature-extremes .v4-field>label,
:root[data-theme] .forecast-v012005.ui-system-master .v47-hero-summary .v4-field>label{
  display:block!important;
  min-height:0!important;
  margin:0!important;
  color:var(--ui-helper)!important;
  font-size:var(--ui-body-size)!important;
  font-weight:750!important;
  line-height:1.15!important;
  text-align:left!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v47-temperature-extremes .v4-value-box,
:root[data-theme] .forecast-v012005.ui-system-master .v47-hero-summary .v4-value-box{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  height:var(--ui-control-height)!important;
  min-height:var(--ui-control-height)!important;
  box-sizing:border-box!important;
  padding:0 14px!important;
  gap:var(--ui-gap-same-element)!important;
  border:1px solid var(--ui-control-border)!important;
  border-radius:var(--ui-radius-field)!important;
  background:var(--ui-control-bg)!important;
  background-image:none!important;
  color:var(--text)!important;
  text-align:center!important;
  box-shadow:none!important;
}
:root[data-theme="light"] .forecast-v012005.ui-system-master .v47-temperature-extremes .v4-value-box,
:root[data-theme="light"] .forecast-v012005.ui-system-master .v47-hero-summary .v4-value-box{
  background:#fff!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v47-temperature-extremes .v4-measure,
:root[data-theme] .forecast-v012005.ui-system-master .v47-hero-summary .v4-measure{
  justify-content:center!important;
  color:var(--text)!important;
  font-size:calc(var(--ui-readout-size) + 1px)!important;
  font-weight:var(--ui-readout-weight)!important;
  text-align:center!important;
}
:root[data-theme] .forecast-v012005.ui-system-master .v47-rain-icon{
  color:#278ccb!important;
  font-family:"Noto Color Emoji","Segoe UI Symbol","Apple Symbols",sans-serif!important;
  font-size:18px!important;
  font-weight:900!important;
  line-height:1!important;
}
:root[data-theme] .forecast-v012005.ui-system-master>.v4-forecast-hero>footer{
  grid-column:1/-1!important;
  grid-row:5!important;
  margin:var(--ui-space-1) 0 0!important;
}

@media(max-width:390px){
  :root[data-theme] .forecast-v012005.ui-system-master .v47-temperature-extremes .v4-field>label,
  :root[data-theme] .forecast-v012005.ui-system-master .v47-hero-summary .v4-field>label{
    font-size:clamp(12px,3.55vw,var(--ui-body-size))!important;
  }
}
