body {
    min-height: 100vh;
}

.navbar .nav-link {
    color: var(--bs-body-color);
}

.navbar .nav-link.active {
    color: var(--bs-nav-pills-link-active-color);
}

.calc-navbar {
    --bs-navbar-padding-y: .35rem;
}

.calc-navbar .container-fluid {
    min-width: 0;
}

.calc-navbar-brand {
    margin-right: 0;
    font-size: .95rem;
    white-space: nowrap;
}

.calc-navbar-nav {
    min-width: 0;
    overflow: visible;
}

.calc-navbar-nav .dropdown {
    position: relative;
}

.calc-navbar-nav .nav-link {
    padding: .28rem .46rem;
    font-size: .86rem;
    line-height: 1.15;
    white-space: nowrap;
}

.calc-navbar-nav .dropdown-menu {
    position: absolute;
    top: 100%;
    right: 0;
    left: auto;
    margin-top: .2rem;
    font-size: .9rem;
    z-index: 1035;
}

.calc-catalog-nav {
    display: inline-flex;
    align-items: center;
}

.calc-catalog-link {
    padding-right: .16rem !important;
}

.calc-catalog-toggle {
    width: .86rem;
    min-width: .86rem;
    padding-right: .3rem !important;
    padding-left: 0 !important;
    border: 0;
    background: transparent;
    color: inherit;
}

.calc-catalog-toggle::after {
    margin-left: 0;
    vertical-align: .1em;
}

@media (max-width: 430px) {
    .calc-navbar-brand {
        display: none;
    }
}

@media (max-width: 380px) {
    .calc-navbar-nav .nav-link {
        padding-right: .34rem;
        padding-left: .34rem;
        font-size: .78rem;
    }
}

.form-floating-sm > .form-control,
.form-floating-sm > .form-select {
    min-height: 3rem;
    padding-top: 1.25rem;
    padding-bottom: .35rem;
}

.form-floating-sm > label {
    padding-top: .55rem;
}

.form-floating07 > label {
    left: .7rem;
}

.sticker-calc-form .input-group > .form-floating {
    min-width: 0;
}

.sticker-calc-form .form-floating > .form-control,
.sticker-calc-form .form-floating > .form-select {
    min-height: 3.15rem;
    height: 3.15rem;
    padding-top: 1.3rem;
    padding-bottom: .25rem;
}

.sticker-calc-form .form-floating > label {
    padding-top: .5rem;
}

.sticker-reset-btn {
    display: flex;
    align-items: center;
    --bs-btn-padding-x: .55rem;
}

.sticker-saved .btn-group-sm > .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 2.1rem;
}

.saved-calc-actions {
    display: inline-flex;
    flex-direction: row;
    flex-wrap: nowrap;
    white-space: nowrap;
}

.sticker-save-action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.35rem;
}

.sticker-save-action .bi,
.saved-calc-actions .bi {
    font-size: 1rem;
    line-height: 1;
}

.saved-calc-actions .bi-play-circle-fill {
    font-size: 1.1rem;
}

.saved-calc-row {
    flex-wrap: nowrap;
}

.saved-calc-row .min-w-0 {
    min-width: 0;
}

.saved-calc-item {
    transform-origin: 85% 50%;
    overflow: visible;
}

.calc-data-value {
    display: inline-block;
    white-space: nowrap;
    transform-origin: center;
    animation: calc-data-flip var(--calc-data-duration, 360ms) var(--calc-data-easing, ease-out) backwards;
}

@keyframes calc-data-flip {
    0% {
        opacity: var(--calc-data-start-opacity, .3);
        font-weight: var(--calc-data-bold-weight, 700);
        transform: scaleY(var(--calc-data-start-scale-y, .45));
    }
    48% {
        opacity: 1;
        font-weight: var(--calc-data-bold-weight, 700);
        transform: scaleY(var(--calc-data-peak-scale-y, 1.12));
    }
    100% {
        opacity: 1;
        font-weight: var(--calc-data-bold-weight, 700);
        transform: scaleY(1);
    }
}

.saved-calc-arriving {
    height: 0;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    border-width: 0 !important;
    overflow: visible;
    animation: saved-calc-arrive-expand 460ms cubic-bezier(.22, .75, .25, 1) forwards;
}

.saved-calc-arriving .saved-calc-row {
    animation: saved-calc-arrive-fly 460ms cubic-bezier(.22, .75, .25, 1) both;
    transform-origin: center top;
}

@keyframes saved-calc-arrive-expand {
    from {
        height: 0;
        padding-top: 0;
        padding-bottom: 0;
        border-width: 0;
    }
    to {
        height: var(--saved-arrival-height);
        padding-top: var(--saved-arrival-padding-top);
        padding-bottom: var(--saved-arrival-padding-bottom);
        border-width: var(--saved-arrival-border-width);
    }
}

@keyframes saved-calc-arrive-fly {
    from {
        opacity: .25;
        transform: translateY(var(--saved-arrival-y)) scaleY(.92);
    }
    to {
        opacity: 1;
        transform: translateY(0) scaleY(1);
    }
}

.saved-calc-removing {
    pointer-events: none;
    z-index: 1;
}

.saved-calc-snapping {
    position: relative;
    overflow: hidden;
    transition:
        height var(--saved-collapse-duration, 450ms) cubic-bezier(.4, 0, .2, 1),
        padding var(--saved-collapse-duration, 450ms) ease,
        margin var(--saved-collapse-duration, 450ms) ease,
        border-width var(--saved-collapse-duration, 450ms) ease;
}

.saved-calc-source-hidden .saved-calc-row {
    visibility: hidden;
}

.saved-calc-collapse {
    height: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    border-width: 0 !important;
}

.saved-disintegration-layer {
    position: fixed;
    inset: 0;
    z-index: 2050;
    overflow: visible;
    pointer-events: none;
}

.saved-scatter-outline {
    position: absolute;
    display: block;
}

.saved-scatter-text {
    position: absolute;
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
    overflow: visible;
    white-space: nowrap;
}

.saved-scatter-glyph {
    display: inline-block;
    flex: 0 0 auto;
    transform-origin: center;
    animation-name: saved-scatter-fly;
    animation-timing-function: cubic-bezier(.14, .72, .22, 1);
    animation-fill-mode: forwards;
}

.saved-scatter-border-piece,
.saved-scatter-control-frame,
.saved-scatter-control-icon {
    position: absolute;
    transform-origin: center;
    animation-name: saved-scatter-fly;
    animation-timing-function: cubic-bezier(.14, .72, .22, 1);
    animation-fill-mode: forwards;
}

.saved-scatter-border-piece {
    background: #dee2e6;
}

.saved-scatter-control-frame {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    margin: 0 !important;
}

.saved-scatter-control-icon {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    line-height: 1;
}

@keyframes saved-scatter-fly {
    0%, 10% {
        opacity: 1;
        transform: translate(0, 0) rotate(0deg) scale(1);
    }
    24% {
        opacity: 1;
        transform: translate(0, 0) rotate(0deg) scale(1.1);
    }
    68% {
        opacity: .9;
    }
    100% {
        opacity: 0;
        transform: translate(var(--scatter-x), var(--scatter-y)) rotate(var(--scatter-rotate)) scale(.28);
    }
}

@media (prefers-reduced-motion: reduce) {
    .saved-calc-snapping,
    .saved-calc-collapse,
    .saved-calc-arriving,
    .saved-calc-arriving .saved-calc-row,
    .calc-data-value,
    .saved-scatter-border-piece,
    .saved-scatter-glyph,
    .saved-scatter-control-frame,
    .saved-scatter-control-icon {
        animation: none !important;
        transition: none !important;
    }
}

#resultRows .border-bottom:last-child {
    border-bottom: 0 !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}
