.ferajna-weather-bar,
.ferajna-weather-bar * {
    box-sizing: border-box;
}

.ferajna-weather-bar {
    --fp-bg: transparent;
    --fp-text: inherit;
    --fp-radius: 10px;
    --fp-muted: currentColor;
    width: 100%;
    margin: 0;
    padding: 0;
    color: var(--fp-text);
    background: var(--fp-bg);
    border-radius: var(--fp-radius);
    font-family: inherit;
    line-height: 1.2;
}

.ferajna-weather-bar__content {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px 9px;
    min-height: 38px;
    padding: 6px 10px;
    white-space: nowrap;
}

.ferajna-weather-bar__place {
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .01em;
}

.ferajna-weather-bar__icon {
    display: inline-flex;
    flex: 0 0 27px;
    width: 27px;
    height: 27px;
    opacity: .95;
}

.ferajna-weather-bar svg {
    display: block;
    width: 100%;
    height: 100%;
    overflow: visible;
}

.ferajna-weather-bar .fp-sun { fill: #efbd4e; stroke: #d99d2f; stroke-width: 2; }
.ferajna-weather-bar .fp-rays,
.ferajna-weather-bar .fp-lines,
.ferajna-weather-bar .fp-rain,
.ferajna-weather-bar .fp-snow { fill: none; stroke-linecap: round; stroke-linejoin: round; stroke-width: 3; }
.ferajna-weather-bar .fp-rays { stroke: #d99d2f; }
.ferajna-weather-bar .fp-cloud { fill: #dfe8e4; stroke: #71887d; stroke-width: 2; }
.ferajna-weather-bar .fp-moon { fill: #d9d5b7; stroke: #8f896a; stroke-width: 2; }
.ferajna-weather-bar .fp-lines { stroke: #82998e; }
.ferajna-weather-bar .fp-rain { stroke: #5f91aa; }
.ferajna-weather-bar .fp-snow { stroke: #729db1; stroke-width: 2; }
.ferajna-weather-bar .fp-bolt { fill: #dfad45; stroke: #a9771e; stroke-width: 1.5; }

.ferajna-weather-bar__temp {
    font-size: 17px;
    font-weight: 750;
    letter-spacing: -.02em;
}

.ferajna-weather-bar__description,
.ferajna-weather-bar__item {
    font-size: 12px;
}

.ferajna-weather-bar__description {
    opacity: .82;
}

.ferajna-weather-bar__item {
    display: inline-flex;
    gap: 4px;
    align-items: baseline;
    opacity: .78;
}

.ferajna-weather-bar__item strong {
    color: inherit;
    font-weight: 650;
    opacity: 1;
}

.ferajna-weather-bar__separator {
    width: 1px;
    height: 15px;
    margin: 0 2px;
    background: currentColor;
    opacity: .18;
}

.ferajna-weather-bar__refresh {
    display: inline-grid;
    flex: 0 0 25px;
    width: 25px;
    height: 25px;
    margin-left: 2px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    color: inherit;
    background: transparent;
    opacity: .55;
    place-items: center;
    cursor: pointer;
    transition: opacity .18s ease, background .18s ease;
}

.ferajna-weather-bar__refresh:hover,
.ferajna-weather-bar__refresh:focus-visible {
    background: rgba(127, 127, 127, .12);
    opacity: 1;
    outline: none;
}

.ferajna-weather-bar__refresh span {
    font-size: 16px;
    line-height: 1;
}

.ferajna-weather-bar.is-loading .ferajna-weather-bar__refresh span {
    display: inline-block;
    animation: fp-spin .75s linear infinite;
}

@keyframes fp-spin { to { transform: rotate(360deg); } }

.ferajna-weather-bar__message {
    display: block;
    height: 0;
    overflow: hidden;
    color: #9b3d34;
    font-size: 10px;
    text-align: center;
}

.ferajna-weather-bar__message:not(:empty) {
    height: auto;
    padding: 0 8px 5px;
}

.ferajna-weather-bar.is-stale {
    opacity: .88;
}

.ferajna-weather-bar--minimal .ferajna-weather-bar__item--feels,
.ferajna-weather-bar--minimal .ferajna-weather-bar__item--humidity,
.ferajna-weather-bar--minimal .ferajna-weather-bar__item--wind,
.ferajna-weather-bar--minimal .ferajna-weather-bar__item--pressure,
.ferajna-weather-bar--minimal .ferajna-weather-bar__item--rain {
    display: none;
}


.ferajna-weather-bar__forecast {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 3px;
    min-height: 28px;
    padding: 2px 10px 6px;
    white-space: nowrap;
    box-shadow: inset 0 1px rgba(127, 127, 127, .12);
}

.ferajna-weather-bar__day {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    gap: 3px;
    min-width: 70px;
    padding: 1px 4px;
    border-radius: 6px;
    font-size: 10px;
    opacity: .76;
}

.ferajna-weather-bar__day.is-today {
    background: rgba(127, 127, 127, .09);
    opacity: 1;
}

.ferajna-weather-bar__day-name {
    min-width: 23px;
    font-weight: 650;
    text-align: right;
}

.ferajna-weather-bar__day-icon {
    display: inline-flex;
    flex: 0 0 18px;
    width: 18px;
    height: 18px;
}

.ferajna-weather-bar__day-temp {
    display: inline-flex;
    gap: 2px;
    align-items: baseline;
    letter-spacing: -.02em;
}

.ferajna-weather-bar__day-temp strong { font-size: 10.5px; font-weight: 700; }
.ferajna-weather-bar__day-temp small { font-size: 9px; opacity: .65; }

.ferajna-weather-bar--error {
    display: inline-flex;
    gap: 8px;
    align-items: baseline;
    justify-content: center;
    min-height: 38px;
    padding: 7px 10px;
    background: var(--fp-bg);
    border-radius: var(--fp-radius);
    font-size: 12px;
}

.ferajna-weather-bar--error small { opacity: .7; }

@media (max-width: 980px) {
    .ferajna-weather-bar__item--pressure,
    .ferajna-weather-bar__item--rain {
        display: none;
    }
}

@media (max-width: 760px) {
    .ferajna-weather-bar__content {
        justify-content: flex-start;
        gap: 4px 7px;
        min-height: 34px;
        padding: 5px 8px;
        overflow: hidden;
        white-space: nowrap;
    }

    .ferajna-weather-bar__item--feels,
    .ferajna-weather-bar__item--humidity,
    .ferajna-weather-bar__item--pressure,
    .ferajna-weather-bar__item--rain {
        display: none;
    }

    .ferajna-weather-bar__forecast {
        justify-content: flex-start;
        padding: 3px 8px 5px;
        overflow-x: auto;
        overscroll-behavior-inline: contain;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
    }

    .ferajna-weather-bar__forecast::-webkit-scrollbar { display: none; }
}

@media (max-width: 520px) {
    .ferajna-weather-bar__place { font-size: 12px; }
    .ferajna-weather-bar__icon { flex-basis: 23px; width: 23px; height: 23px; }
    .ferajna-weather-bar__temp { font-size: 16px; }
    .ferajna-weather-bar__description,
    .ferajna-weather-bar__item { font-size: 11px; }
    .ferajna-weather-bar__item--wind { display: none; }
    .ferajna-weather-bar__day { min-width: 66px; }
}

@media (max-width: 410px) {
    .ferajna-weather-bar__separator,
    .ferajna-weather-bar__item--range { display: none; }
}

@media (max-width: 335px) {
    .ferajna-weather-bar__description { display: none; }
}

@media (prefers-reduced-motion: reduce) {
    .ferajna-weather-bar *,
    .ferajna-weather-bar *::before,
    .ferajna-weather-bar *::after {
        transition: none !important;
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
    }
}
