.ib2-bar{
    --ib2-bar-bg:#000;
    --ib2-bar-text:#fff;
    --ib2-bar-height:42px;
    --ib2-gap:12px;
    --ib2-padding-x:12px;
    --ib2-bar-radius:0px;
    --ib2-global-font-size:14px;
    --ib2-active-global-font-size:var(--ib2-global-font-size);
    --ib2-justify:center;

    display:flex;
    align-items:center;
    justify-content:var(--ib2-justify);
    width:100%;
    min-width:0;
    min-height:var(--ib2-bar-height);
    gap:var(--ib2-active-gap,var(--ib2-gap));
    padding:0 var(--ib2-padding-x);
    box-sizing:border-box;
    overflow:hidden;
    border-radius:var(--ib2-bar-radius);
    background:var(--infobar-bg,var(--ib2-effective-bar-bg,var(--ib2-bar-bg)));
    color:var(--infobar-text,var(--ib2-effective-bar-text,var(--ib2-bar-text)));
    font-family:inherit;
}

.ib2-module{
    --ib2-item-text:#fff;
    --ib2-item-bg:transparent;
    --ib2-icon:#fff;
    --ib2-size:14px;
    --ib2-weight:600;
    --ib2-py:0px;
    --ib2-px:0px;
    --ib2-radius:0px;

    display:inline-flex;
    align-items:center;
    flex:0 0 auto;
    gap:var(--ib2-icon-gap,6px);
    white-space:nowrap;
    color:var(--infobar-module-text,var(--ib2-item-text));
    background:var(--infobar-module-bg,var(--ib2-item-bg));
    font-size:var(--ib2-size,var(--ib2-active-global-font-size,var(--ib2-global-font-size)));
    font-weight:var(--ib2-weight);
    padding:var(--ib2-py) var(--ib2-px);
    border-radius:var(--ib2-radius);
    line-height:1;
}

.ib2-module.ib2-hidden{
    display:none !important;
}

.ib2-uppercase{
    text-transform:uppercase;
}

.ib2-icon{
    width:16px;
    height:16px;
    flex:0 0 16px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    color:var(--infobar-icon,var(--ib2-icon));
}

.ib2-icon svg{
    width:100%;
    height:100%;
    display:block;
    fill:currentColor;
}

.ib2-label{
    color:var(--ib2-label-color,#fff);
    font-size:var(--ib2-label-size,var(--ib2-active-global-font-size,var(--ib2-global-font-size)));
    font-weight:var(--ib2-label-weight,600);
    text-transform:var(--ib2-label-transform,none);
    letter-spacing:var(--ib2-label-spacing,0px);
    line-height:var(--ib2-label-line,1);
    font-style:var(--ib2-label-style,normal);
    text-decoration:var(--ib2-label-decoration,none);
}

.ib2-value{
    color:var(--ib2-value-color,#fff);
    font-size:var(--ib2-value-size,var(--ib2-active-global-font-size,var(--ib2-global-font-size)));
    font-weight:var(--ib2-value-weight,600);
    text-transform:var(--ib2-value-transform,none);
    letter-spacing:var(--ib2-value-spacing,0px);
    line-height:var(--ib2-value-line,1);
    font-style:var(--ib2-value-style,normal);
    text-decoration:var(--ib2-value-decoration,none);
}

@media(max-width:600px){
    .ib2-bar{
        --ib2-gap:8px;
        --ib2-padding-x:8px;
    }
}

/* 2.7.0 — tipografia responsiva por largura real da InfoBar */
.ib2-bar.ib2-device-desktop{
    --ib2-active-global-font-size:var(--ib2-global-font-size);
}
.ib2-bar.ib2-device-tablet{
    --ib2-active-global-font-size:var(--ib2-global-font-size-tablet);
}
.ib2-bar.ib2-device-mobile{
    --ib2-active-global-font-size:var(--ib2-global-font-size-mobile);
}
.ib2-bar .ib2-module{
    font-size:var(--ib2-size,var(--ib2-active-global-font-size,var(--ib2-global-font-size)));
}
.ib2-bar .ib2-label{
    font-size:var(--ib2-label-size,var(--ib2-active-global-font-size,var(--ib2-global-font-size)));
}
.ib2-bar .ib2-value{
    font-size:var(--ib2-value-size,var(--ib2-active-global-font-size,var(--ib2-global-font-size)));
}



/* 3.0.4 — espaçamento responsivo entre módulos */
.ib2-bar.ib2-device-desktop{
    --ib2-active-gap:var(--ib2-gap);
}
.ib2-bar.ib2-device-tablet{
    --ib2-active-gap:var(--ib2-gap-tablet,var(--ib2-gap));
}
.ib2-bar.ib2-device-mobile{
    --ib2-active-gap:var(--ib2-gap-mobile,var(--ib2-gap));
}


/* 3.0.5 — correção do espaçamento responsivo entre módulos */
.ib2-bar.ib2-device-desktop{
    --ib2-active-gap:var(--ib2-gap);
}

.ib2-bar.ib2-device-tablet{
    --ib2-active-gap:var(--ib2-gap-tablet,var(--ib2-gap));
}

.ib2-bar.ib2-device-mobile{
    --ib2-active-gap:var(--ib2-gap-mobile,var(--ib2-gap));
}

/* 3.0.6 — termômetro compacto e alinhado */
.ib2-temperature .ib2-icon{
    width:14px;
    height:16px;
    flex:0 0 14px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    overflow:visible;
    margin:0;
}
.ib2-temperature .ib2-icon svg{
    width:14px;
    height:16px;
    display:block;
    overflow:visible;
}


/* 3.2.0 — sistema de tema e variáveis CSS */
.ib2-bar{
    --ib2-theme-bg:var(--ib2-dark-bg,#000);
    --ib2-theme-text:var(--ib2-dark-text,#fff);
    --ib2-theme-accent:var(--ib2-dark-accent,#ff2b63);
    --ib2-theme-accent-text:var(--ib2-dark-accent-text,#fff);
    --ib2-effective-bar-bg:var(--ib2-bar-bg);
    --ib2-effective-bar-text:var(--ib2-bar-text);
}

.ib2-bar.ib2-use-theme-colors{
    --ib2-effective-bar-bg:var(--ib2-theme-bg);
    --ib2-effective-bar-text:var(--ib2-theme-text);
}

.ib2-bar.ib2-theme-dark,
.ib2-bar.ib2-theme-external.ib2-external-dark{
    --ib2-theme-bg:var(--ib2-dark-bg,#000);
    --ib2-theme-text:var(--ib2-dark-text,#fff);
    --ib2-theme-accent:var(--ib2-dark-accent,#ff2b63);
    --ib2-theme-accent-text:var(--ib2-dark-accent-text,#fff);
}

.ib2-bar.ib2-theme-light,
.ib2-bar.ib2-theme-external.ib2-external-light{
    --ib2-theme-bg:var(--ib2-light-bg,#fff);
    --ib2-theme-text:var(--ib2-light-text,#111);
    --ib2-theme-accent:var(--ib2-light-accent,#ff2b63);
    --ib2-theme-accent-text:var(--ib2-light-accent-text,#fff);
}

@media (prefers-color-scheme: light){
    .ib2-bar.ib2-theme-auto{
        --ib2-theme-bg:var(--ib2-light-bg,#fff);
        --ib2-theme-text:var(--ib2-light-text,#111);
        --ib2-theme-accent:var(--ib2-light-accent,#ff2b63);
        --ib2-theme-accent-text:var(--ib2-light-accent-text,#fff);
    }
}

@media (prefers-color-scheme: dark){
    .ib2-bar.ib2-theme-auto{
        --ib2-theme-bg:var(--ib2-dark-bg,#000);
        --ib2-theme-text:var(--ib2-dark-text,#fff);
        --ib2-theme-accent:var(--ib2-dark-accent,#ff2b63);
        --ib2-theme-accent-text:var(--ib2-dark-accent-text,#fff);
    }
}

/*
 Variáveis externas suportadas:
 --infobar-bg
 --infobar-text
 --infobar-accent
 --infobar-accent-text
 --infobar-module-bg
 --infobar-module-text
 --infobar-icon
*/
.ib2-bar{
    --ib2-theme-bg:var(--infobar-bg,var(--ib2-theme-bg));
    --ib2-theme-text:var(--infobar-text,var(--ib2-theme-text));
    --ib2-theme-accent:var(--infobar-accent,var(--ib2-theme-accent));
    --ib2-theme-accent-text:var(--infobar-accent-text,var(--ib2-theme-accent-text));
}

/* 3.2.3 — direção do vento */
.ib2-wind-value{
    display:inline-flex;
    align-items:center;
    gap:4px;
    white-space:nowrap;
}
.ib2-wind-arrow{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    line-height:1;
    transform-origin:50% 50%;
}
