@charset "UTF-8";

@media print {
    body {
        padding-top: 0;
    }
}

body[data-block-scroll=true] {
    overflow: hidden;
}

:root {
    --page-padding-rl: 20px;
    --lg-component-bg-color: #E3EFF8;
    --lg-component-hover-bg-color: #CFE3F2;
    --component-bg-color: #F2F3F8;
    --component-bg-hover-color: #ECEDF4;
    --component-padding-rl: 16px;
    --component-padding-t: 16px;
    --component-padding-b: 16px;
    --component-radius: 22px;
    --element-radius: 12px;
    --element-radius-s: 4px;
    --deep-blue-color: #73B0DE;
    --deep-orange-color: #F7941E;
    --text-color: #333333;
    --header-height: 72px;
    --running-line-height: 20px;
    --tab-height: 40px;
    --component-width: 240px;
    --component-column-gap: 16px;
    --component-double-width: calc(var(--component-width) * 2 + var(--component-column-gap));
    --modal-content-padding: 24px;
}

@media (min-width: 768px) {
    :root {
        --page-padding-rl: 40px;
        --header-height: 84px;
        --modal-content-padding: 32px;
    }
}

.lg-virtualization__content, .lg-balancing__content, .lg-monitoring__content, .lg-log-file__content, .lg-user-dir__content, .lg-data-warehouse__content, .lg-business__content, .lg-web-services__content, .lg-msg-brokers__content, .lg-connectors__content, .lg-files__content, .lg-subd__content, .lg-loginom-integrator__content, .lg-loginom-web-server__content, .lg-api__items, .lg-warkspace__items {
    border-radius: var(--component-radius);
    background-color: var(--component-bg-color);
    padding-right: var(--component-padding-rl);
    padding-left: var(--component-padding-rl);
    padding-top: var(--component-padding-t);
    padding-bottom: var(--component-padding-b);
    width: var(--component-width);
}

.lg-virtualization__content:hover, .lg-balancing__content:hover, .lg-monitoring__content:hover, .lg-log-file__content:hover, .lg-user-dir__content:hover, .lg-data-warehouse__content:hover, .lg-business__content:hover, .lg-web-services__content:hover, .lg-msg-brokers__content:hover, .lg-connectors__content:hover, .lg-files__content:hover, .lg-subd__content:hover, .lg-loginom-integrator__content:hover, .lg-loginom-web-server__content:hover, .lg-api__items:hover, .lg-warkspace__items:hover {
    background-color: var(--component-bg-hover-color);
}

.lg-arch-page {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding-right: var(--page-padding-rl);
    padding-left: var(--page-padding-rl);
}

.lg-arch-page [data-open-modal]:hover {
    cursor: pointer;
}

.lg-arch-page__title {
    text-align: center;
}

@media print {
    .lg-arch-page {
        display: none;
    }
}

.lg-arch-content {
    width: 100%;
    max-width: 1176px;
    margin-bottom: 48px;
}

@media (min-width: 768px) {
    .lg-arch-content {
        margin-bottom: 62.4px;
    }
}

@media (min-width: 1024px) {
    .lg-arch-content {
        margin-bottom: 81.12px;
    }
}

@media (min-width: 1256px) {
    .lg-arch-content {
        margin-bottom: 105.456px;
    }
}

.lg-arch-group {
    display: grid;
    grid-template-columns: 42px auto;
    grid-gap: var(--component-column-gap);
    margin-top: 80px;
}

.lg-arch-group__title-shift {
    padding-top: 32px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

@media (min-width: 768px) {
    .lg-arch-group__title-shift {
        padding-top: 52px;
    }
}

.lg-arch-group__title-wrap {
    position: relative;
    background-color: var(--component-bg-color);
    border-radius: var(--component-radius);
    font-size: 12px;
    height: 100%;
}

@media (min-width: 768px) {
    .lg-arch-group__title-wrap {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }
}

.lg-arch-group__title-text {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-writing-mode: sideways-lr;
    -ms-writing-mode: sideways-lr;
    writing-mode: sideways-lr;
    text-orientation: mixed;
    position: sticky;
    padding: 24px 0;
    top: calc(var(--header-height) + var(--running-line-height) + var(--tab-height));
}

@media (min-width: 768px) {
    .lg-arch-group__title-text {
        position: inherit;
        top: inherit;
    }
}

.lg-arch-group__items {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-column-gap: var(--component-column-gap);
    -moz-column-gap: var(--component-column-gap);
    column-gap: var(--component-column-gap);
    row-gap: calc(var(--component-column-gap) * 2);
}

.lg-horizontal-groups {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-column-gap: 48px;
    -moz-column-gap: 48px;
    column-gap: 48px;
    row-gap: 0;
}

.lg-arch-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 12px;
    -webkit-column-break-inside: avoid;
    -moz-column-break-inside: avoid;
    break-inside: avoid;
}

.lg-arch-item__title {
    min-height: 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
}

@media (min-width: 768px) {
    .lg-arch-item__title {
        min-height: 38px;
    }
}

.lg-arch-item__content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    gap: 12px;
    width: 100%;
    height: 100%;
}

.lg-warkspace__items {
    display: grid;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    grid-gap: 16px;
    grid-template-columns: repeat(2, 1fr);
    width: calc(208px + var(--component-padding-rl) * 2);
}

@media (min-width: 451px) {
    .lg-warkspace__items {
        grid-template-columns: repeat(3, 1fr);
        width: calc(320px + var(--component-padding-rl) * 2);
    }
}

@media screen and (min-width: 563px) {
    .lg-warkspace__items {
        grid-template-columns: repeat(4, 1fr);
        width: calc(432px + var(--component-padding-rl) * 2);
    }
}

@media screen and (min-width: 675px) {
    .lg-warkspace__items {
        grid-template-columns: repeat(5, 1fr);
        width: calc(544px + var(--component-padding-rl) * 2);
    }
}

@media screen and (min-width: 787px) {
    .lg-warkspace__items {
        grid-template-columns: repeat(6, 1fr);
        width: calc(656px + var(--component-padding-rl) * 2);
    }
}

.lg-warkspace .lg-warkspace-item {
    width: 96px;
    height: 96px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background-color: white;
    border-radius: var(--element-radius);
}

.lg-warkspace .lg-warkspace-item img {
    width: 74px;
    height: 74px;
    -o-object-fit: contain;
    object-fit: contain;
}

.lg-api__items {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 20px;
    height: 100%;
    min-height: calc(var(--component-padding-t) + var(--component-padding-b) + 96px);
    width: 100%;
    max-width: var(--component-width);
}

@media (min-width: 768px) {
    .lg-api__items {
        max-width: 314px;
        padding-right: calc(var(--component-padding-rl) + 16px);
        padding-left: calc(var(--component-padding-rl) + 16px);
    }
}

.lg-api .lg-api-item img {
    max-width: 90px;
}

@media (min-width: 768px) {
    .lg-api .lg-api-item img {
        max-width: 115px;
    }
}

.lg-loginom-server__content {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-areas: "std" "fs" "shdlr";
    row-gap: 20px;
    -webkit-column-gap: 32px;
    -moz-column-gap: 32px;
    column-gap: 32px;
    max-width: var(--component-width);
}

@media screen and (min-width: 594px) {
    .lg-loginom-server__content {
        max-width: var(--component-double-width);
        grid-template-columns: auto auto 1fr;
        grid-template-areas: "std std std" "fs shdlr .";
    }
}

.lg-loginom-server__standart-components {
    grid-area: std;
    padding: 16px;
    border: 2px dashed var(--deep-orange-color);
    border-radius: var(--element-radius);
}

.lg-loginom-server__standart-components:hover {
    border-color: var(--deep-blue-color);
    background-color: var(--lg-component-hover-bg-color);
    border-radius: var(--element-radius);
}

.lg-loginom-server__standart-components-title {
    font-size: 1rem;
    line-height: 1rem;
}

.lg-loginom-server__standart-components-items {
    list-style: none;
    padding: 0;
    margin: 24px 0 0;
    display: grid;
    grid-gap: 20px;
}

@media (min-width: 594px) {
    .lg-loginom-server__standart-components-items {
        grid-template-columns: repeat(2, auto);
    }
}

@media (min-width: 768px) {
    .lg-loginom-server__standart-components-items {
        grid-template-columns: repeat(3, auto);
    }
}

@media (min-width: 768px) {
    .lg-loginom-server .lg-icon-text-programming {
        grid-area: 4/2/span 1/span 2;
    }
}

.lg-loginom-server__fs {
    grid-area: fs;
}

.lg-loginom-server__scheduler {
    grid-area: shdlr;
}

.lg-loginom-server .lg-icon-text-btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 10px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 8px 16px 8px 8px;
    position: relative;
    font-weight: 500;
    font-size: 1rem;
    line-height: 1rem;
}

.lg-loginom-server .lg-icon-text-btn:hover {
    background-color: var(--lg-component-hover-bg-color);
    border-radius: var(--element-radius);
}

.lg-loginom-server .lg-icon-text {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 10px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-weight: 500;
    font-size: 0.8125rem;
    line-height: 0.8125rem;
}

.lg-loginom-server .lg-icon-text img {
    width: 26px;
    height: 26px;
    background-color: var(--deep-blue-color);
    border-radius: 4px;
}

.lg-loginom-web-server__content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 100%;
    min-height: var(--component-width);
}

@media (min-width: 768px) {
    .lg-loginom-web-server__content {
        width: 295px;
    }
}

.lg-loginom-web-server__content {
    background-color: var(--lg-component-bg-color);
    max-height: 336px;
}

.lg-loginom-web-server__content:hover {
    background-color: var(--lg-component-hover-bg-color);
}

.lg-loginom-integrator__content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 100%;
    min-height: var(--component-width);
    background-color: var(--lg-component-bg-color);
}

@media (min-width: 768px) {
    .lg-loginom-integrator__content {
        width: 295px;
    }
}

.lg-loginom-group .lg-arch-group__title-text {
    font-size: 1rem;
    line-height: 1rem;
}

.lg-loginom-group .lg-loginom-server__content {
    padding: 16px;
    width: var(--component-double-width);
    border-radius: var(--component-radius);
    background-color: var(--lg-component-bg-color);
}

.lg-loginom-group .lg-arch-group__title-wrap {
    background-color: var(--lg-component-bg-color);
}

.lg-subd__content {
    display: grid;
    grid-gap: 16px;
    grid-template-columns: repeat(2, 1fr);
    width: var(--component-width);
}

@media (min-width: 451px) {
    .lg-subd__content {
        grid-template-columns: repeat(3, 1fr);
        width: 352px;
    }
}

.lg-subd .lg-subd-icon {
    width: 96px;
    height: 96px;
    background-color: white;
    border-radius: var(--element-radius);
}

.lg-subd .lg-subd-icon img {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
}

.lg-subd .lg-subd-btn {
    width: 96px;
    height: 96px;
    color: var(--text-color);
    background-color: white;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 4px;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-radius: var(--element-radius);
}

.lg-subd .lg-subd-btn img {
    -webkit-transition: -webkit-transform 0.1s ease-in-out;
    transition: -webkit-transform 0.1s ease-in-out;
    transition: transform 0.1s ease-in-out;
    transition: transform 0.1s ease-in-out, -webkit-transform 0.1s ease-in-out;
    -webkit-transform: translate(0, 2px);
    transform: translate(0, 2px);
}

.lg-subd .lg-subd-btn:hover img {
    -webkit-transform: translate(2px, 2px);
    transform: translate(2px, 2px);
}

.lg-files__content {
    display: grid;
    grid-gap: 16px;
    grid-template-columns: repeat(2, 1fr);
    width: 240px;
}

.lg-files .lg-file-icon {
    width: 96px;
    height: 96px;
    background-color: white;
    border-radius: var(--element-radius);
}

.lg-files .lg-file-icon img {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
}

.lg-files .lg-file-btn {
    width: 96px;
    height: 96px;
    color: var(--text-color);
    background-color: white;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 4px;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-radius: var(--element-radius);
}

.lg-files .lg-file-btn img {
    -webkit-transition: -webkit-transform 0.1s ease-in-out;
    transition: -webkit-transform 0.1s ease-in-out;
    transition: transform 0.1s ease-in-out;
    transition: transform 0.1s ease-in-out, -webkit-transform 0.1s ease-in-out;
    -webkit-transform: translate(0, 2px);
    transform: translate(0, 2px);
}

.lg-files .lg-file-btn:hover img {
    -webkit-transform: translate(2px, 2px);
    transform: translate(2px, 2px);
}

.lg-connectors__content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: var(--component-width);
    padding: 48px 48px 32px;
    min-height: var(--component-width);
    gap: 32px;
}

@media (min-width: 768px) {
    .lg-connectors__content {
        width: var(--component-double-width);
    }
}

.lg-connectors__logos {
    width: 100%;
    height: auto;
    -o-object-fit: contain;
    object-fit: contain;
}

@media (max-width: 767px) {
    .lg-connectors__logos-tablet {
        display: none;
    }
}

@media (min-width: 768px) {
    .lg-connectors__logos-mobile {
        display: none;
    }
}

.lg-connectors .lg-connectors-more-btn-wrap {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

@media (min-width: 768px) {
    .lg-connectors .lg-connectors-more-btn-wrap {
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end;
    }
}

.lg-connectors .lg-connectors-more-btn {
    color: var(--text-color);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 4px;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.lg-connectors .lg-connectors-more-btn__icon {
    -webkit-transition: -webkit-transform 0.1s ease-in-out;
    transition: -webkit-transform 0.1s ease-in-out;
    transition: transform 0.1s ease-in-out;
    transition: transform 0.1s ease-in-out, -webkit-transform 0.1s ease-in-out;
    -webkit-transform: translate(0, 2px);
    transform: translate(0, 2px);
}

.lg-connectors .lg-connectors-more-btn:hover > .lg-connectors-more-btn__icon {
    -webkit-transform: translate(2px, 2px);
    transform: translate(2px, 2px);
}

.lg-msg-brokers__content {
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    max-width: 239px;
    min-height: var(--component-width);
}

.lg-web-services {
    width: 100%;
    max-width: 239px;
}

.lg-web-services__content {
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    min-height: var(--component-width);
}

.lg-web-services__items {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 20px;
}

.lg-business__content {
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    max-width: var(--component-width);
    min-height: var(--component-width);
}

.lg-data-warehouse__content {
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    max-width: var(--component-width);
    min-height: var(--component-width);
}

.lg-user-dir__content {
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 16px;
    padding: 16px 16px 32px;
}

.lg-user-dir__label {
    width: 100%;
    height: 56px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    line-height: 120%;
    padding: 0 16px;
    background-color: #e4e4ed;
    border-radius: var(--element-radius);
    text-align: center;
    font-size: 0.875rem;
}

@media (min-width: 768px) {
    .lg-user-dir__label {
        height: 48px;
    }
}

.lg-log-file__content {
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    min-height: var(--component-width);
}

.lg-monitoring__content {
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    min-height: var(--component-width);
}

.lg-balancing__content {
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    min-height: var(--component-width);
}

.lg-virtualization-scheme {
    list-style: none;
    display: grid;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 0;
    margin: 0;
    gap: 8px;
    width: 100%;
    height: 100%;
    grid-template-columns: repeat(2, 1fr);
    grid-template-areas: "docker podman" "kubern kubern";
}

.lg-virtualization-scheme .lg-virtualization-element {
    --logo-scale-ratio: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 0 12px;
    height: 100%;
    background-color: white;
    border-radius: var(--element-radius);
    position: relative;
}

@media (min-width: 768px) {
    .lg-virtualization-scheme .lg-virtualization-element {
        padding: 0 24px;
    }
}

.lg-virtualization-scheme .lg-virtualization-element__img {
    width: calc(80px * var(--logo-scale-ratio));
}

@media (min-width: 768px) {
    .lg-virtualization-scheme .lg-virtualization-element__img {
        width: calc(170px * var(--logo-scale-ratio));
    }
}

.lg-virtualization-scheme .lg-virtualization-element.lg-docker {
    grid-area: docker;
}

.lg-virtualization-scheme .lg-virtualization-element.lg-podman {
    grid-area: podman;
}

.lg-virtualization-scheme .lg-virtualization-element.lg-kubernetes {
    grid-area: kubern;
}

.lg-virtualization-scheme .lg-virtualization-element.lg-add-plug-element::before {
    content: "";
    display: block;
    width: 32px;
    height: 32px;
    background: no-repeat left center/cover url(../img/2025-architecture/plug.svg);
    position: absolute;
    bottom: -32px;
    left: calc(50% - 16px);
    z-index: 1;
}

.lg-virtualization__content {
    min-width: var(--component-width);
    height: var(--component-width);
}

@media (min-width: 768px) {
    .lg-virtualization__content {
        min-width: var(--component-double-width);
    }
}

.lg-virtualization__content:hover .lg-add-plug-element::before {
    background-position: right center;
}

.lg-data-group .lg-arch-group__title-text,
.lg-infrastructure-group .lg-arch-group__title-text {
    font-size: 1rem;
    line-height: 1rem;
}

.lg-arch-page-tabs-wrap {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    background-color: white;
    position: sticky;
    top: 72px;
    z-index: 10;
}

@media (min-width: 768px) {
    .lg-arch-page-tabs-wrap {
        top: 84px;
    }
}

.lg-arch-page-tabs {
    --tab-border-color: #F2F3F8;
    --active-tab-border-color: #E1312F;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    padding: 0;
    margin: 0;
    list-style: none;
    height: var(--tab-height);
}

.lg-arch-page-tab {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    border: none;
    border-bottom: 2px solid var(--tab-border-color);
    outline: none;
    width: 140px;
    padding: 8px 0;
    background-color: transparent;
    cursor: pointer;
    color: var(--text-color);
    font-size: 1.25rem;
    line-height: 1.25rem;
}

.lg-arch-page-tab:focus {
    border: none;
    outline: none;
    border-bottom: 2px solid var(--tab-border-color);
}

.lg-arch-page-tab[aria-selected=true] {
    border-bottom: 2px solid var(--active-tab-border-color);
}

.lg-modal {
    position: fixed;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 100;
    padding: 20px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.lg-modal[data-modal-open=false] {
    display: none;
}

.lg-modal__close-btn {
    background-color: transparent;
    padding: 16px;
    margin: 0;
    border: none;
    opacity: 0.75;
    cursor: pointer;
    -webkit-transition: opacity 0.1s ease-in-out;
    transition: opacity 0.1s ease-in-out;
    position: absolute;
    top: 0;
    right: 0;
}

.lg-modal__close-btn:hover {
    opacity: 1;
}

.lg-modal__content-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    max-width: 768px;
    margin: 0;
    padding: 0;
    position: relative;
    max-height: 100%;
}

.lg-modal .lg-modal-content__title {
    font-weight: 600;
    font-size: 1.75rem;
    line-height: 2.125rem;
}

.lg-modal .lg-modal-content__text {
    margin-top: 16px;
}

.lg-modal-content {
    width: 100%;
    max-height: 100%;
    overflow: auto;
    margin: 0;
    background-color: white;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: var(--modal-content-padding);
    padding-right: calc(var(--modal-content-padding) + 32px);
    border-radius: var(--element-radius);
}

.lg-modal-content p:first-child {
    margin-top: 0;
}

.lg-modal-content p:last-child {
    margin-bottom: 0;
}

@media print {
    .lg-header {
        display: none;
    }
}

@media print {
    .lg-footer {
        display: none;
    }
}

.lg-contact-us {
    width: 100%;
    margin-top: 32px;
}

@media (min-width: 768px) {
    .lg-contact-us {
        margin-top: 41.6px;
    }
}

@media (min-width: 1024px) {
    .lg-contact-us {
        margin-top: 54.08px;
    }
}

@media (min-width: 1256px) {
    .lg-contact-us {
        margin-top: 70.304px;
    }
}

@media (min-width: 768px) {
    .lg-contact-us .btn {
        min-width: 220px;
    }
}

.lg-arch-print-page {
    display: none;
    padding-top: 32px;
    padding-bottom: 48px;
}

@media (min-width: 768px) {
    .lg-arch-print-page {
        padding-top: 41.6px;
        padding-bottom: 62.4px;
    }
}

@media (min-width: 1024px) {
    .lg-arch-print-page {
        padding-top: 54.08px;
        padding-bottom: 81.12px;
    }
}

@media (min-width: 1256px) {
    .lg-arch-print-page {
        padding-top: 70.304px;
        padding-bottom: 105.456px;
    }
}

@media print {
    .lg-arch-print-page {
        display: block;
    }
}

.lg-arch-print-page__title {
    font-weight: 600;
    font-size: 3rem;
    line-height: 3rem;
}

.lg-arch-print-page__content {
    max-width: 776px;
    margin: 0 auto;
}

.lg-arch-print-page__group {
    margin-top: 32px;
}

.lg-arch-print-page__group .lg-arch-print-card:not(:first-child) {
    margin-top: 16px;
}

.lg-arch-print-page__group-title {
    margin-top: 64px;
    font-weight: 500;
    font-size: 1.75rem;
    line-height: 2.125rem;
}

.lg-arch-print-page__first-elements {
    -webkit-column-break-inside: avoid;
    -moz-column-break-inside: avoid;
    break-inside: avoid;
}

.lg-arch-print-card {
    padding: 20px 20px 24px;
    background-color: var(--component-bg-color);
    border: 2px solid var(--component-bg-color);
    border-radius: var(--component-radius);
    -webkit-column-break-inside: avoid;
    -moz-column-break-inside: avoid;
    break-inside: avoid;
}

.lg-arch-print-card__title,
.lg-arch-print-card .lg-modal-content__title {
    font-weight: 600;
    font-size: 1.25rem;
    line-height: 1.375rem;
}

.lg-arch-print-card .lg-modal-content__text {
    margin-top: 16px;
    font-size: 0.875rem;
    line-height: 1.125rem;
}

.lg-arch-print-card__logos {
    margin-top: 24px;
}

.lg-arch-print-card__logos img {
    max-width: 100%;
    height: auto;
    -o-object-fit: contain;
    object-fit: contain;
    -o-object-position: left center;
    object-position: left center;
}

.lg-arch-print-card a {
    display: none;
}

.lg-components {
    -webkit-column-break-inside: avoid;
    -moz-column-break-inside: avoid;
    break-inside: avoid;
}

.lg-components__title {
    margin-top: 64px;
    font-weight: 500;
    font-size: 1.75rem;
    line-height: 2.125rem;
}

.lg-server-components-card {
    padding: 20px 20px;
    background-color: var(--component-bg-color);
    border: 2px solid var(--component-bg-color);
    border-bottom: none;
    border-radius: var(--component-radius) var(--component-radius) 0 0;
    -webkit-column-break-inside: avoid;
    -moz-column-break-inside: avoid;
    break-inside: avoid;
    margin-top: 16px;
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.lg-server-components-card__title {
    font-weight: 600;
    font-size: 1.25rem;
    line-height: 1.375rem;
}

.lg-server-components-card .lg-modal-content__title {
    font-weight: 600;
    margin-top: 24px;
    font-size: 1rem;
    line-height: 1.125rem;
}

.lg-server-components-card .lg-modal-content__text {
    margin-top: 16px;
    font-size: 0.875rem;
    line-height: 1.125rem;
}

.lg-server-components-card a {
    display: none;
}

.lg-server-components-card__components {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    grid-gap: 20px;
    grid-template-columns: repeat(2, auto);
}

@media (min-width: 594px) {
    .lg-server-components-card__components {
        grid-template-columns: repeat(3, auto);
    }
}

@media (min-width: 768px) {
    .lg-server-components-card__components {
        grid-template-columns: repeat(4, auto);
    }
}

.lg-server-components-card p:last-child {
    margin-bottom: 0;
}

.lg-server-components-items {
    padding: 12px 20px 32px;
    background-color: var(--component-bg-color);
    border: 2px solid var(--component-bg-color);
    border-top-color: transparent;
    border-bottom-color: transparent;
    -webkit-column-break-inside: avoid;
    -moz-column-break-inside: avoid;
    break-inside: avoid;
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.lg-server-components-items::after {
    content: "";
    display: block;
    width: calc(100% - 40px);
    position: absolute;
    bottom: 0;
    left: 20px;
    border: 1px dashed rgba(0, 0, 0, 0.1);
}

.lg-server-components-items .lg-icon-text {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 10px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-weight: 500;
    font-size: 0.8125rem;
    line-height: 0.8125rem;
}

.lg-server-components-items .lg-icon-text img {
    width: 26px;
    height: 26px;
    background-color: var(--deep-blue-color);
    border-radius: 4px;
}

@media (min-width: 768px) {
    .lg-server-components-items .lg-icon-text-programming {
        grid-area: 3/3/span 1/span 2;
    }
}

.lg-file-storage-card,
.lg-scheduler-card {
    padding: 12px 20px;
    background-color: var(--component-bg-color);
    border: 2px solid var(--component-bg-color);
    border-top-color: transparent;
    border-bottom-color: transparent;
    -webkit-column-break-inside: avoid;
    -moz-column-break-inside: avoid;
    break-inside: avoid;
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.lg-file-storage-card .lg-modal-content__title,
.lg-scheduler-card .lg-modal-content__title {
    font-weight: 600;
    font-size: 1rem;
    line-height: 1.125rem;
}

.lg-file-storage-card .lg-modal-content__text,
.lg-scheduler-card .lg-modal-content__text {
    margin-top: 16px;
    font-size: 0.875rem;
    line-height: 1.125rem;
}

.lg-file-storage-card a,
.lg-scheduler-card a {
    display: none;
}

.lg-file-storage-card p:last-child,
.lg-scheduler-card p:last-child {
    margin-bottom: 0;
}

.lg-file-storage-card {
    padding: 12px 20px 32px;
}

.lg-file-storage-card::after {
    content: "";
    display: block;
    width: calc(100% - 40px);
    position: absolute;
    bottom: -2px;
    left: 20px;
    border: 1px dashed rgba(0, 0, 0, 0.1);
}

.lg-scheduler-card {
    padding-bottom: 32px;
    border-bottom: 2px solid var(--component-bg-color);
    border-radius: 0 0 var(--component-radius) var(--component-radius);
}

.lg-arch-print-card__loginom-components {
    padding: 0;
    -webkit-column-break-inside: auto;
    -moz-column-break-inside: auto;
    break-inside: auto;
    background: none;
}

.lg-arch-print-card__loginom-components .lg-arch-print-page__first-elements {
    border-radius: var(--component-radius) var(--component-radius) 0 0;
    background-color: var(--component-bg-color);
}

.lg-arch-print-card__loginom-components .lg-arch-print-page__first-elements > .lg-arch-print-card__title {
    padding: 24px 20px 0;
}

.lg-arch-print-card__loginom-components .lg-arch-print-card {
    padding: 24px 20px 24px;
    border-radius: 0;
    -webkit-column-break-inside: avoid;
    -moz-column-break-inside: avoid;
    break-inside: avoid;
    border: none;
}

.lg-arch-print-card__loginom-components .lg-arch-print-card:last-child {
    border-radius: 0 0 var(--component-radius) var(--component-radius);
}

.lg-arch-print-card__loginom-components .lg-arch-print-card:not(:first-child) {
    margin-top: 0;
}

.lg-arch-print-card__loginom-components .lg-arch-print-card .lg-modal-content__title {
    font-weight: 600;
    font-size: 1rem;
    line-height: 1.125rem;
}

.lg-arch-print-card__loginom-components .loginom-components {
    -webkit-column-break-inside: auto;
    -moz-column-break-inside: auto;
    break-inside: auto;
}

.lg-arch-print-card__loginom-components .lg-arch-print-card:not(:last-child),
.lg-arch-print-card__loginom-components .lg-arch-print-page__first-elements {
    position: relative;
}

.lg-arch-print-card__loginom-components .lg-arch-print-card:not(:last-child)::before,
.lg-arch-print-card__loginom-components .lg-arch-print-page__first-elements::before {
    content: "";
    display: block;
    width: calc(100% - 40px);
    height: 0;
    position: absolute;
    bottom: 0;
    left: 20px;
    border-bottom: 1px dashed rgba(37, 50, 69, 0.3);
}

.lg-virtualization-print-scheme {
    list-style: none;
    display: grid;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 0;
    margin: 0;
    gap: 8px;
    width: 100%;
    height: 100%;
    -webkit-column-break-inside: avoid;
    -moz-column-break-inside: avoid;
    break-inside: avoid;
    grid-template-columns: 2fr 3fr;
    grid-template-areas: "docker kubern" "podman kubern";
}

.lg-virtualization-print-scheme .lg-virtualization-print-element {
    --logo-scale-ratio: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 0 12px;
    min-height: 60px;
    height: 100%;
    background-color: white;
    border-radius: var(--element-radius);
    border: 2px solid var(--component-bg-color);
    position: relative;
}

@media (min-width: 768px) {
    .lg-virtualization-print-scheme .lg-virtualization-print-element {
        min-height: 90px;
        padding: 0 24px;
    }
}

.lg-virtualization-print-scheme .lg-virtualization-print-element__img {
    width: calc(120px * var(--logo-scale-ratio));
}

@media (min-width: 768px) {
    .lg-virtualization-print-scheme .lg-virtualization-print-element__img {
        width: calc(140px * var(--logo-scale-ratio));
    }
}

.lg-virtualization-print-scheme .lg-virtualization-print-element.lg-docker {
    grid-area: docker;
}

.lg-virtualization-print-scheme .lg-virtualization-print-element.lg-podman {
    grid-area: podman;
}

.lg-virtualization-print-scheme .lg-virtualization-print-element.lg-kubernetes {
    grid-area: kubern;
}

.lg-virtualization-print-scheme .lg-virtualization-print-element.lg-add-plug-element::before {
    content: "";
    display: block;
    width: 26px;
    height: 32px;
    background: no-repeat left center/cover url(../img/2025-architecture/print-pages/plug.svg);
    position: absolute;
    right: -26px;
    top: calc(50% - 16px);
    z-index: 1;
}