/* Ready-to-serve styles. Figma 2010:13465 / 2010:15596 and their mobile variants. */
/* Keep the design's regular/bold faces scoped to this block, independent of the legacy font subset. */
@font-face {
    font-family: "Nordw Calculation Roboto";
    font-style: normal;
    font-weight: 100 900;
    font-display: swap;
    src: url("../fonts/calculation-roboto-cyrillic.woff2") format("woff2");
    unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
    font-family: "Nordw Calculation Roboto";
    font-style: normal;
    font-weight: 100 900;
    font-display: swap;
    src: url("../fonts/calculation-roboto-latin.woff2") format("woff2");
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
a.calculation-alternative,
#app-avia a.calculation-alternative {
    box-sizing: border-box;
    position: relative;
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
    margin: 0 0 20px;
    padding: 16px 20px;
    background: #fff;
    box-shadow: inset 0 0 0 4px #ec8b22;
    color: #2b373d;
    font-family: "Nordw Calculation Roboto", Roboto, sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 20px;
    text-align: left;
    text-decoration: none;
}
a.calculation-alternative:hover, #app-avia a.calculation-alternative:hover { color: #2b373d; text-decoration: none; }
#app-avia a.calculation-alternative { margin: 20px 0 0; }
a.calculation-alternative:focus-visible { outline: 2px solid #2b373d; outline-offset: 3px; }
a.calculation-alternative[role="button"] { cursor: pointer; }
.calculation-alternative__icon { display: block; flex: 0 0 40px; width: 40px; height: 40px; margin: 0; }
.calculation-alternative__content { display: flex; flex-direction: column; gap: 5px; min-width: 0; }
.calculation-alternative__title { display: block; font-size: 18px; font-weight: 700; line-height: 22px; }
.calculation-alternative__description, .calculation-alternative__price, .calculation-alternative__days { display: block; }
.calculation-alternative__days { min-height: 20px; }
.calculation-alternative__icon, .calculation-alternative__content { transition: opacity .3s; }
a.calculation-alternative[hidden], #app-avia a.calculation-alternative[hidden] { display: none; }
.calculation-alternative--pending { cursor: wait; }
/* Keep the confirmed card and its values visible; dim only its contents during
   the shared loading cycle (manager clarification, 28 September). */
.calculation-alternative--pending .calculation-alternative__icon,
.calculation-alternative--pending .calculation-alternative__content { opacity: .35; }
.calculation-alternative::before { content: ""; position: absolute; inset: 4px; z-index: 1; background: #fff3; opacity: 0; pointer-events: none; transition: opacity .3s; }
.calculation-alternative--pending::before { opacity: 1; }
.calculation-alternative[aria-busy="true"]::after { content: ""; position: absolute; z-index: 2; top: calc(50% - 16px); left: calc(50% - 16px); width: 32px; height: 32px; background: url("/local/assets/images/ajax-loader.gif") center no-repeat; }
/* Both local indicators start and finish within the same loading cycle. */
.page-calculation .results.calculation-result,
#app-avia .calculation-result { position: relative; }
.page-calculation .results.calculation-result::before,
#app-avia .calculation-result::before { content: ""; position: absolute; inset: 0; z-index: 100; display: block; width: auto; height: auto; background: #fffc; opacity: 0; pointer-events: none; transition: opacity .3s; }
.page-calculation .results.calculation-result--pending::before,
#app-avia .calculation-result--pending::before { opacity: 1; }
.page-calculation .results.calculation-result::after,
#app-avia .calculation-result::after { display: none; }
.page-calculation .results.calculation-result--pending::after,
#app-avia .calculation-result--pending::after { content: ""; display: block; position: absolute; z-index: 101; top: calc(50% - 16px); left: calc(50% - 16px); width: 32px; height: 32px; transform: none; background: url("/local/assets/images/ajax-loader.gif") center no-repeat; background-size: auto; }
#app-avia .calculation-result .loading::before,
#app-avia .calculation-result .loading::after { display: none; }
.calculation-alternative--empty .calculation-alternative__icon, .calculation-alternative--empty .calculation-alternative__content { opacity: 0; }
@media (prefers-reduced-motion: reduce) {
    .calculation-alternative__icon, .calculation-alternative__content, .calculation-alternative::before,
    .page-calculation .results.calculation-result::before, #app-avia .calculation-result::before { transition: none; }
}
.calculation-alternative__link { display: block; color: #ec8b22; font-weight: 700; line-height: 24px; text-decoration: underline dotted; text-underline-offset: 4px; }
.calculation-alternative:hover .calculation-alternative__link { text-decoration-style: solid; }
@media (min-width: 1200px) {
    a.calculation-alternative, #app-avia a.calculation-alternative { gap: 20px; padding: 20px 24px; }
    .calculation-alternative__icon { flex-basis: 48px; width: 48px; height: 48px; }
}
