@font-face {
    font-family: "Gilroy-Black";
    font-style: normal;
    font-weight: normal;
    src: url("../fonts/Gilroy-Black.woff") format("woff");
}

@font-face {
    font-family: "Gilroy-ExtraBold";
    font-style: normal;
    font-weight: normal;
    src: url("../fonts/Gilroy-ExtraBold.woff") format("woff");
}

@font-face {
    font-family: "Gilroy-Bold";
    font-style: normal;
    font-weight: normal;
    src: url("../fonts/Gilroy-Bold.woff") format("woff");
}

@font-face {
    font-family: "Gilroy-SemiBold";
    font-style: normal;
    font-weight: normal;
    src: url("../fonts/Gilroy-SemiBold.woff") format("woff");
}

@font-face {
    font-family: "Roboto Condensed_regular";
    font-style: normal;
    font-weight: normal;
    src: url("../fonts/Roboto Condensed_regular.woff") format("woff");
}

@font-face {
    font-family: "Roboto Condensed_Bold";
    font-style: normal;
    font-weight: normal;
    src: url("../fonts/Roboto Condensed_Bold.woff") format("woff");
}

:root {
    --blue: #3d98e8;
    --blue-dark: #1f5f9f;
    --ink: #28323d;
    --muted: #6f7b86;
    --line: #d9e1e8;
    --soft: #f4f7fa;
    --white: #fff;
}

* {
    box-sizing: border-box;
}

body {
    margin: 0;
    background: var(--soft);
    color: var(--ink);
    font-family: "Roboto Condensed_regular", Arial, Helvetica, sans-serif;
    font-size: 16px;
}

a {
    color: var(--blue-dark);
    text-decoration: none;
    transition: color .18s ease;
}

a:hover {
    color: var(--blue);
    text-decoration: none;
}

.primary:hover,
.profile-follow-button:hover,
.profile-card-follow:hover,
.journal-follow:hover {
    color: var(--white);
    text-decoration: none;
}

.secondary:hover,
.secondary-button:hover {
    color: var(--blue);
    text-decoration: none;
}

button,
.primary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    border: 0;
    border-radius: 6px;
    padding: 0 18px;
    background: var(--blue);
    color: var(--white);
    font-family: "Gilroy-ExtraBold", Arial, Helvetica, sans-serif;
    font-weight: 400;
    text-transform: uppercase;
    cursor: pointer;
}

button[data-share-button] {
    text-transform: none;
}

.secondary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    border: 1px solid var(--line);
    border-radius: 6px;
    padding: 0 18px;
    background: var(--white);
    color: var(--blue-dark);
    font-family: "Gilroy-ExtraBold", Arial, Helvetica, sans-serif;
    font-weight: 400;
}

.compact {
    min-height: 34px;
    padding: 0 12px;
}

input,
select,
textarea {
    width: 100%;
    border: 1px solid var(--line);
    border-radius: 6px;
    padding: 12px;
    color: var(--ink);
    font: inherit;
    background: var(--white);
}

input[type="file"] {
    padding: 10px;
}

textarea {
    resize: vertical;
}

.searchable-select-native {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

.searchable-select {
    position: relative;
    width: 100%;
}

.searchable-select-input {
    width: 100%;
}

.searchable-select-list {
    position: absolute;
    z-index: 30;
    top: calc(100% + 4px);
    right: 0;
    left: 0;
    max-height: 230px;
    overflow-y: auto;
    border: 1px solid var(--line);
    border-radius: 6px;
    background: var(--white);
    box-shadow: 0 10px 24px rgba(24, 42, 60, .14);
}

.searchable-select-option,
.searchable-select-empty {
    display: block;
    width: 100%;
    min-height: 0;
    padding: 10px 12px;
    border: 0;
    border-radius: 0;
    background: var(--white);
    color: var(--ink);
    font-family: "Roboto Condensed_regular", Arial, Helvetica, sans-serif;
    font-size: 16px;
    text-align: left;
    text-transform: none;
}

.searchable-select-option:hover,
.searchable-select-option:focus {
    background: var(--soft);
    color: var(--blue-dark);
}

.searchable-select-empty {
    color: var(--muted);
}

.top {
    position: sticky;
    top: 0;
    z-index: 5;
    display: flex;
    align-items: center;
    gap: 28px;
    min-height: 72px;
    padding: 0 48px;
    border-bottom: 1px solid var(--line);
    background: var(--white);
}

.top-guest {
    position: relative;
    min-height: 70px;
    gap: 0;
    padding: 0 max(15px, calc((100% - 1200px) / 2));
    border-bottom: 0;
}

.brand {
    color: var(--blue);
    font-family: "Gilroy-Black", Arial, Helvetica, sans-serif;
    font-size: 37px;
    font-weight: 400;
    text-transform: uppercase;
}

.top-guest .brand {
    font-size: 37.3px;
    line-height: 70px;
}

.nav {
    display: flex;
    gap: 18px;
    flex: 1;
}

.nav-guest-home {
    display: none;
}

.top-fill {
    flex: 1;
}

.nav a,
.account a,
.account span,
.link-button {
    font-family: "Roboto Condensed_Bold", Arial, Helvetica, sans-serif;
    text-transform: uppercase;
}

.account {
    display: flex;
    align-items: center;
    gap: 12px;
}

.account-auth {
    gap: 18px;
}

.top-guest .account {
    position: relative;
    justify-content: flex-end;
    gap: 58px;
    min-width: 300px;
    margin-left: auto;
}

.top-guest .account a {
    color: #636363;
    font-size: 14px;
}

.top-guest .account .primary {
    min-height: 0;
    padding: 0;
    border-radius: 0;
    background: none;
    color: #469ded;
    font-family: "Roboto Condensed_Bold", Arial, Helvetica, sans-serif;
}

.account form {
    margin: 0;
}

.header-search-form {
    position: relative;
    flex: 0 0 auto;
    width: 38px;
    height: 38px;
    border: 1px solid var(--line);
    border-radius: 6px;
    background: transparent;
    transition: width .22s ease, border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

.header-search-form:hover,
.header-search-form:focus-within,
.header-search-form.has-query {
    width: min(240px, 28vw);
}

.header-search-input {
    width: 100%;
    height: 100%;
    padding: 0 12px 0 36px;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: transparent;
    font-size: 14px;
    outline: none;
    cursor: pointer;
    transition: color .18s ease;
}

.header-search-input::placeholder {
    color: transparent;
}

.header-search-form:hover .header-search-input,
.header-search-form:focus-within .header-search-input,
.header-search-form.has-query .header-search-input {
    color: var(--ink);
    cursor: text;
}

.header-search-form:hover,
.header-search-form.has-query {
    border-color: #c8d8e6;
    background: var(--white);
}

.header-search-form:hover .header-search-input::placeholder,
.header-search-form:focus-within .header-search-input::placeholder,
.header-search-form.has-query .header-search-input::placeholder {
    color: var(--muted);
}

.header-search-form:focus-within .header-search-input {
    color: var(--ink);
}

.header-search-form:focus-within {
    border-color: var(--blue);
    background: var(--white);
    box-shadow: 0 0 0 3px rgba(61, 152, 232, .12);
}

.header-search-button {
    position: absolute;
    top: 0;
    left: 0;
    width: 36px;
    min-height: 36px;
    height: 36px;
    padding: 0;
    border: 0;
    border-radius: 6px;
    background: transparent;
    pointer-events: none;
}

.header-search-button::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 10px;
    height: 10px;
    border: 3px solid #627281;
    border-radius: 50%;
    transform: translate(-60%, -60%);
}

.header-search-button::after {
    content: "";
    position: absolute;
    top: calc(50% + 5px);
    left: calc(50% + 4px);
    width: 7px;
    height: 3px;
    border-radius: 2px;
    background: #627281;
    transform: rotate(45deg);
    transform-origin: left center;
}

.header-search-button:hover::before {
    border-color: var(--blue);
}

.header-search-button:hover::after {
    background: var(--blue);
}

.header-avatar {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: var(--ink);
}

.header-avatar img {
    width: 36px;
    height: 36px;
    border-radius: 6px;
    object-fit: cover;
}

.header-avatar span {
    max-width: 150px;
    overflow: hidden;
    color: var(--ink);
    text-overflow: ellipsis;
    white-space: nowrap;
}

.header-icon,
.settings-menu summary {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border: 1px solid var(--line);
    border-radius: 6px;
    background: var(--white);
    cursor: pointer;
}

.notifications-menu {
    position: relative;
}

.notifications-menu summary {
    list-style: none;
}

.notifications-menu summary::-webkit-details-marker {
    display: none;
}

.header-icon img,
.settings-menu summary img {
    max-width: 20px;
    max-height: 20px;
}

.header-notifications > span {
    position: absolute;
    top: -6px;
    right: -6px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 20px;
    height: 20px;
    border-radius: 999px;
    padding: 0 5px;
    background: var(--blue);
    color: var(--white);
    font-size: 12px;
    line-height: 1;
}

.settings-menu {
    position: relative;
}

.settings-menu summary {
    list-style: none;
}

.settings-menu summary::-webkit-details-marker {
    display: none;
}

.settings-dropdown {
    position: absolute;
    top: 48px;
    right: 0;
    z-index: 8;
    display: grid;
    min-width: 230px;
    border: 1px solid var(--line);
    border-radius: 6px;
    padding: 8px;
    background: var(--white);
    box-shadow: 0 14px 34px rgba(32, 45, 58, .14);
}

.notifications-popover {
    position: absolute;
    top: 48px;
    right: 0;
    z-index: 9;
    width: min(330px, calc(100vw - 32px));
    border: 1px solid var(--line);
    border-radius: 6px;
    padding: 14px;
    background: var(--white);
    box-shadow: 0 14px 34px rgba(32, 45, 58, .14);
}

.settings-dropdown a,
.settings-dropdown .link-button {
    justify-content: flex-start;
    min-height: 34px;
    border-radius: 4px;
    padding: 0 8px;
    color: var(--ink);
    text-align: left;
    text-transform: none;
}

.settings-dropdown a:hover,
.settings-dropdown .link-button:hover {
    background: var(--soft);
}

.link-button {
    min-height: 0;
    padding: 0;
    background: none;
    color: var(--blue-dark);
}

.shell {
    max-width: 1220px;
    margin: 0 auto;
    padding: 28px 24px 60px;
}

.guest-shell {
    max-width: none;
    padding: 0 0 60px;
}

.guest-shell > .layout {
    max-width: 1220px;
    margin: 28px auto 0;
    padding: 0 24px;
}

.auth-shell {
    max-width: none;
    padding: 0;
}

.legal-shell {
    padding-top: 28px;
}

.hero,
.auth-card,
.panel,
.card,
.form-card,
.post-card,
.profile-page,
.vessel-page,
.vessel-detail-card,
.vessel-mini,
.post-detail,
.legal-page,
.comments,
.empty {
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--white);
}

.hero {
    display: grid;
    grid-template-columns: 1.2fr .8fr;
    gap: 32px;
    padding: 34px;
    margin-bottom: 22px;
    background:
        linear-gradient(90deg, rgba(255,255,255,.96), rgba(255,255,255,.78)),
        url("../img/top_ad.png") center/cover;
}

.hero-guest {
    display: block;
    min-height: 540px;
    margin: 0;
    border: 0;
    border-radius: 0;
    color: var(--white);
    background-color: var(--white);
    background-image: url("../img/s1_bg.png");
    background-position: center top;
    background-size: cover;
    overflow: hidden;
}

.hero-guest-inner {
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
    gap: 0;
    max-width: 1200px;
    margin: 0 auto;
    padding: 100px 15px 20px;
}

.hero-guest-copy h1 {
    max-width: 700px;
    margin: 0 0 16px;
    color: var(--white);
    font-family: "Gilroy-Black", Arial, Helvetica, sans-serif;
    font-size: 56px;
    font-weight: 400;
    line-height: normal;
    text-transform: uppercase;
}

.hero-categories,
.hero-example {
    max-width: 780px;
    margin: 0;
    color: var(--white);
    font-size: 16px;
}

.hero-categories a,
.hero-example a,
.hero-login {
    color: var(--white);
    text-decoration: underline;
}

.hero-categories a:hover,
.hero-example a:hover,
.hero-login:hover {
    color: #d8ecff;
    text-decoration: none;
}

.hero-search {
    display: grid;
    grid-template-columns: 470px 150px;
    gap: 16px;
    margin: 40px 0 18px;
}

.hero-search input {
    width: 470px;
    height: 56px;
    border: 2px solid transparent;
    border-radius: 0;
    padding: 0 20px;
    color: #464646;
    font-size: 18px;
}

.hero-search button {
    width: 150px;
    min-height: 56px;
    border-radius: 0;
    font-size: 16px;
}

.hero-guest-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 18px;
    align-items: center;
    margin-top: 30px;
}

.hero-guest-actions .primary {
    min-height: 50px;
    border-radius: 0;
    padding: 0 24px;
}

.hero-guest-stats {
    margin: 0;
    padding: 0 50px 0 0;
    list-style: none;
    text-align: right;
    background-image: url("../img/s1_img1.png");
    background-repeat: no-repeat;
    background-position: right 10px;
}

.hero-guest-stats li {
    margin-bottom: 40px;
    color: var(--white);
    font-family: "Gilroy-Bold", Arial, Helvetica, sans-serif;
}

.hero-guest-stats b {
    display: block;
    font-size: 37.25px;
    font-weight: 400;
    line-height: 1;
}

.hero-guest-stats span {
    display: block;
    font-size: 14.48px;
    text-transform: uppercase;
}

.hero h1 {
    max-width: 680px;
    margin: 4px 0 12px;
    font-size: 38px;
    line-height: 1.1;
}

.hero.hero-guest .hero-guest-copy h1 {
    max-width: 700px;
    margin: 0 0 16px;
    font-size: 56px;
    line-height: normal;
}

.hero p {
    max-width: 620px;
    color: var(--muted);
    font-size: 17px;
}

.hero-guest .hero-categories,
.hero-guest .hero-example {
    max-width: 780px;
    color: var(--white);
    font-size: 16px;
}

.home-brands-section {
    clear: both;
    background: var(--white);
    padding: 34px 15px 38px;
}

.catalog-brands-section {
    border: 1px solid var(--line);
    border-radius: 8px;
    padding: 28px;
}

.home-brands-inner {
    max-width: 1200px;
    margin: 0 auto;
}

.home-brands-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 22px;
}

.home-brands-head h2 {
    margin: 0;
    color: #464646;
    font-family: "Gilroy-ExtraBold", Arial, Helvetica, sans-serif;
    font-size: 30px;
    line-height: 1.15;
}

.home-brands-tabs {
    display: inline-flex;
    gap: 4px;
    border: 1px solid #d5e1eb;
    border-radius: 6px;
    padding: 4px;
    background: #f3f8fc;
}

.home-brands-tabs button {
    min-height: 34px;
    border: 0;
    border-radius: 4px;
    padding: 0 14px;
    background: transparent;
    color: #5a6a78;
    font-size: 14px;
    font-weight: 800;
}

.home-brands-tabs button.is-active {
    background: var(--white);
    color: var(--blue-dark);
    box-shadow: 0 1px 4px rgba(19, 49, 75, .12);
}

.home-brand-panel[hidden] {
    display: none;
}

.home-brand-grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 12px 18px;
}

.home-brand-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    min-height: 42px;
    border-bottom: 1px solid #e1e8ee;
    color: #464646;
    font-size: 16px;
    font-weight: 400;
    text-decoration: none;
    transition: color .18s ease, border-color .18s ease;
}

.home-brand-link:hover,
.home-brand-link:focus-visible {
    border-color: #9bc6e8;
    color: var(--blue-dark);
}

.home-brand-link span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.home-brand-link b {
    display: none;
    align-items: center;
    justify-content: center;
    min-width: 28px;
    height: 24px;
    border-radius: 999px;
    padding: 0 8px;
    background: #edf5fb;
    color: #5d7182;
    font-size: 12px;
    font-weight: 900;
}

.manufacturer-request-status {
    margin-top: 24px;
    border: 1px solid #b8dcc2;
    border-radius: 6px;
    padding: 14px 18px;
    background: #f2fbf4;
    color: #27633a;
    font-weight: 700;
}

.manufacturer-request-strip {
    margin-top: 28px;
    border: 1px solid #d5e1eb;
    border-radius: 6px;
    padding: 18px 22px;
    background: #f3f8fc;
}

.manufacturer-request-strip p {
    margin: 0;
    color: #464646;
    font-size: 18px;
    line-height: 1.45;
}

.manufacturer-request-strip button {
    display: inline;
    min-height: 0;
    border: 0;
    border-radius: 0;
    padding: 0;
    background: transparent;
    color: var(--blue-dark);
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
    text-transform: none;
}

.manufacturer-request-strip button:hover,
.manufacturer-request-strip button:focus-visible {
    color: var(--blue);
}

.home-sale-section {
    width: min(1180px, calc(100% - 32px));
    margin: 26px auto 0;
    padding: 0;
    background: var(--white);
}

.home-sale-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 30px;
}

.home-sale-head h2 {
    margin: 0;
    color: #459ced;
    font-family: "Gilroy-ExtraBold", Arial, Helvetica, sans-serif;
    font-size: 30px;
    line-height: 1.2;
}

.home-sale-head a {
    flex: 0 0 auto;
    color: #6d6e71;
    font-family: "Gilroy-SemiBold", Arial, Helvetica, sans-serif;
    font-size: 18px;
    text-decoration: underline;
}

.home-sale-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 380px));
    justify-content: space-between;
    gap: 15px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.home-sale-item {
    position: relative;
    height: 280px;
    overflow: hidden;
    border-radius: 10px;
    background: #d9dee3;
}

.home-sale-item-link {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    overflow: hidden;
    color: var(--white);
}

.home-sale-item-link:hover,
.home-sale-item-link:focus-visible {
    color: var(--white);
}

.home-sale-item-link::before,
.home-sale-item-link::after {
    position: absolute;
    right: 0;
    left: 0;
    z-index: 2;
    display: block;
    content: "";
    pointer-events: none;
}

.home-sale-item-link::before {
    top: 0;
    height: 92px;
    background: linear-gradient(to bottom, rgba(0, 0, 0, .8), transparent);
}

.home-sale-item-link::after {
    bottom: 0;
    height: 92px;
    background: linear-gradient(to top, rgba(0, 0, 0, .58), transparent);
}

.home-sale-image-wrap {
    position: absolute;
    inset: 0;
    display: grid;
}

.home-sale-image-wrap img {
    grid-area: 1 / 1;
    display: none;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.home-sale-image-wrap img.is-active,
.home-sale-image-wrap img:first-child:last-child {
    display: block;
}

.home-sale-title,
.home-sale-year,
.home-sale-price {
    position: absolute;
    z-index: 3;
    color: var(--white);
}

.home-sale-title {
    top: 10px;
    left: 10px;
    display: block;
    max-width: 300px;
    font-family: "Gilroy-Bold", Arial, Helvetica, sans-serif;
    font-size: 24px;
    line-height: 1.08;
    text-align: left;
}

.home-sale-title span {
    display: block;
    margin-top: 5px;
    font-family: "Roboto Condensed_regular", Arial, Helvetica, sans-serif;
    font-size: 14px;
    line-height: 1.1;
}

.home-sale-year {
    top: 20px;
    right: 10px;
    font-size: 18px;
}

.home-sale-price {
    right: 10px;
    bottom: 20px;
    font-family: "Roboto Condensed_regular", Arial, Helvetica, sans-serif;
    font-size: 22px;
    line-height: 1;
}

.home-sale-price bdi {
    font-family: "Gilroy-SemiBold", Arial, Helvetica, sans-serif;
}

.home-sale-thumbs {
    position: absolute;
    inset: 0;
    z-index: 4;
    display: flex;
}

.home-sale-thumbs span {
    flex: 1 1 0;
    border-bottom: 5px solid transparent;
    transition: border-color .25s ease;
}

.home-sale-thumbs span.is-active {
    border-color: var(--white);
}

.home-sale-empty {
    grid-column: 1 / -1;
}

.sale-page-head {
    align-items: flex-start;
    justify-content: space-between;
}

.sale-filter-panel {
    display: grid;
    grid-template-columns: minmax(220px, 2fr) repeat(5, minmax(130px, 1fr)) auto;
    gap: 10px;
    margin-bottom: 18px;
    border: 1px solid #d9e4ec;
    border-radius: 8px;
    padding: 14px;
    background: var(--white);
    box-shadow: var(--shadow-soft);
}

.sale-filter-panel label {
    display: grid;
    gap: 5px;
    color: var(--muted);
    font-size: 12px;
    font-weight: 800;
}

.sale-filter-panel input,
.sale-filter-panel select {
    min-height: 40px;
    border: 1px solid #ccd8e2;
    border-radius: 5px;
    padding: 0 10px;
    background: #fbfdff;
    color: var(--ink);
    font-size: 14px;
}

.sale-filter-panel button {
    align-self: end;
    min-height: 40px;
}

.sale-list {
    display: grid;
    gap: 14px;
}

.sale-list-card {
    display: grid;
    grid-template-columns: 210px minmax(0, 1fr) minmax(170px, auto);
    gap: 18px;
    border: 1px solid #dce6ee;
    border-radius: 8px;
    padding: 14px;
    background: var(--white);
    box-shadow: var(--shadow-soft);
}

.sale-list-photo img {
    display: block;
    width: 210px;
    height: 150px;
    border-radius: 6px;
    object-fit: cover;
}

.sale-list-body h3 {
    margin: 0 0 8px;
    font-family: "Gilroy-Bold", Arial, Helvetica, sans-serif;
    font-size: 22px;
    line-height: 1.2;
}

.sale-list-body h3 a {
    color: var(--ink);
}

.sale-list-city {
    margin: 0 0 8px;
    color: var(--muted);
}

.sale-list-body ul {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin: 0 0 10px;
    padding: 0;
    list-style: none;
}

.sale-list-body li {
    border-radius: 999px;
    padding: 5px 9px;
    background: #edf5fb;
    color: #4c6578;
    font-size: 13px;
    font-weight: 800;
}

.sale-list-meta {
    margin: 0 0 8px;
    color: var(--muted);
    font-size: 13px;
}

.sale-list-journal {
    color: var(--blue-dark);
    font-weight: 800;
}

.sale-list-side {
    display: grid;
    align-content: start;
    justify-items: end;
    gap: 7px;
    text-align: right;
}

.sale-list-side strong {
    color: #2e7cc8;
    font-family: "Gilroy-ExtraBold", Arial, Helvetica, sans-serif;
    font-size: 25px;
    white-space: nowrap;
}

.sale-list-side span {
    color: var(--muted);
    font-size: 13px;
}

.manufacturer-request-modal {
    position: fixed;
    inset: 0;
    z-index: 80;
    display: grid;
    place-items: center;
    padding: 20px;
    background: rgba(20, 28, 34, .5);
    backdrop-filter: blur(5px);
    opacity: 0;
    transition: opacity .18s ease;
}

.manufacturer-request-modal[hidden] {
    display: none;
}

.manufacturer-request-modal.is-open {
    opacity: 1;
}

.manufacturer-request-card {
    position: relative;
    width: min(100%, 520px);
    max-height: calc(100vh - 40px);
    overflow: auto;
    border-radius: 8px;
    padding: 28px;
    background: var(--white);
    box-shadow: 0 24px 70px rgba(10, 28, 45, .28);
    transform: translateY(12px) scale(.98);
    transition: transform .18s ease;
}

.manufacturer-request-modal.is-open .manufacturer-request-card {
    transform: translateY(0) scale(1);
}

.manufacturer-request-close {
    position: absolute;
    top: 14px;
    right: 14px;
    width: 34px;
    min-height: 34px;
    border: 1px solid var(--line);
    border-radius: 6px;
    padding: 0;
    background: var(--white);
}

.manufacturer-request-close::before,
.manufacturer-request-close::after {
    content: "";
    position: absolute;
    top: 16px;
    left: 9px;
    width: 16px;
    height: 2px;
    background: #52606b;
}

.manufacturer-request-close::before {
    transform: rotate(45deg);
}

.manufacturer-request-close::after {
    transform: rotate(-45deg);
}

.manufacturer-request-kicker {
    margin: 0 0 8px;
    color: var(--blue-dark);
    font-size: 13px;
    font-weight: 800;
    text-transform: uppercase;
}

.manufacturer-request-card h2 {
    margin: 0 40px 20px 0;
    color: #303030;
    font-family: "Gilroy-ExtraBold", Arial, Helvetica, sans-serif;
    font-size: 28px;
    line-height: 1.15;
}

.manufacturer-request-form {
    display: grid;
    gap: 14px;
}

.manufacturer-request-form label {
    display: grid;
    gap: 7px;
    color: #303030;
    font-weight: 700;
}

.manufacturer-request-captcha {
    color: var(--blue-dark);
    font-family: "Gilroy-ExtraBold", Arial, Helvetica, sans-serif;
    font-size: 18px;
}

.manufacturer-request-actions {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    margin-top: 4px;
}

.eyebrow,
.card-kicker {
    margin: 0 0 8px;
    color: var(--blue-dark);
    font-size: 13px;
    font-weight: 800;
    text-transform: uppercase;
}

.stats {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.stats span {
    padding: 18px;
    border-radius: 8px;
    background: rgba(255, 255, 255, .86);
}

.stats b {
    display: block;
    font-size: 24px;
}

.auth-card {
    display: grid;
    grid-template-columns: 1fr 1.5fr;
    gap: 24px;
    align-items: center;
    padding: 22px;
    margin-bottom: 22px;
}

.auth-card h2,
.auth-card p {
    margin: 0;
}

.auth-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: flex-end;
}

.auth-card p,
.muted {
    color: var(--muted);
    overflow-wrap: anywhere;
}

.legacy-auth {
    position: relative;
    clear: both;
    min-height: calc(100vh - 70px);
    overflow: hidden;
    padding-top: 40px;
    padding-bottom: 20px;
    background-color: var(--white);
    background-image: url("../img/s7_bg.png");
    background-position: center top;
    background-size: cover;
}

.legacy-auth-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 15px;
}

.legacy-auth .s7_h1 {
    margin: 0;
    color: var(--white);
    font-family: "Gilroy-Black", Arial, Helvetica, sans-serif;
    font-size: 56px;
    font-weight: 400;
    line-height: normal;
    text-align: center;
    text-transform: uppercase;
}

.legacy-auth .s7_form {
    margin: 0;
}

.legacy-auth .s7_ul {
    position: relative;
    max-width: 322px;
    margin: 30px auto 0;
    padding: 0;
    list-style: none;
}

.legacy-auth .s7_ul li {
    position: relative;
    margin-bottom: 30px;
}

.legacy-auth .s7_in1,
.legacy-auth .s7_ul li select {
    display: block;
    width: 100%;
    max-width: 322px;
    height: 44px;
    border: 2px solid transparent;
    border-radius: 5px;
    background-color: var(--white);
    color: #464646;
    font-family: "Roboto Condensed_regular", Arial, Helvetica, sans-serif;
    font-size: 16px;
    text-indent: 10px;
    transition: border-color .3s;
}

.legacy-auth .s7_in1 {
    padding: 0;
}

.legacy-auth .s7_in1:focus,
.legacy-auth .s7_ul li select:focus {
    border-color: #459ced;
    outline: none;
}

.legacy-auth .s7_ul li select {
    padding: 0 36px 0 0;
    appearance: none;
    background-image: url("../img/h_img1.png");
    background-repeat: no-repeat;
    background-position: 97% 18px;
}

.legacy-auth .searchable-select {
    max-width: 322px;
}

.legacy-auth .searchable-select-input {
    height: 44px;
    border: 2px solid transparent;
    border-radius: 5px;
    padding: 0 10px;
    color: #464646;
    font-family: "Roboto Condensed_regular", Arial, Helvetica, sans-serif;
    font-size: 16px;
    transition: border-color .3s;
}

.legacy-auth .searchable-select-input:focus {
    border-color: #459ced;
    outline: none;
}

.legacy-auth .s7_ul li p {
    position: relative;
    top: 33px;
    left: -350px;
    margin: -20px 0 0;
    color: var(--white);
    font-size: 18px;
    text-align: right;
}

.legacy-auth .s7_submit {
    display: block;
    width: 155px;
    height: 55px;
    margin: 0 auto;
    border: 0;
    border-radius: 5px;
    background-color: #459ced;
    color: var(--white);
    cursor: pointer;
    font-family: "Gilroy-ExtraBold", Arial, Helvetica, sans-serif;
    font-size: 14px;
    text-transform: uppercase;
}

.legacy-auth .s7_t2,
.legacy-auth .s7_note {
    position: relative;
    max-width: 717px;
    margin: 0 auto;
    color: var(--white);
    font-size: 14px;
    text-align: justify;
}

.legacy-auth .s7_note {
    margin-top: -12px;
    text-align: center;
}

.legacy-auth .s7_t2 a,
.legacy-auth .s7_note a {
    color: var(--white);
    text-decoration: underline;
}

.legacy-auth .s7_t2 a:hover,
.legacy-auth .s7_note a:hover {
    color: #d8ecff;
    text-decoration: none;
}

.legacy-auth .consent-row {
    color: var(--white);
}

.legacy-auth .consent-row a {
    color: var(--white);
    text-decoration: underline;
}

.legacy-auth .consent-row a:hover,
.legacy-auth .consent-row a:focus-visible {
    color: #d8ecff;
    text-decoration: none;
}

.legacy-auth .s7_error {
    display: block;
    margin-top: 6px;
    border-radius: 5px;
    padding: 6px 8px;
    background: rgba(180, 35, 24, .88);
    color: var(--white);
    font-size: 13px;
    font-weight: 700;
}

.legacy-auth .s7_success {
    max-width: 420px;
    margin: 18px auto 0;
    border-radius: 5px;
    padding: 10px 12px;
    background: rgba(34, 115, 58, .92);
    color: var(--white);
    font-size: 14px;
    font-weight: 700;
    text-align: center;
}

.legacy-auth .s7_verify {
    display: grid;
    justify-items: center;
    gap: 16px;
    max-width: 520px;
    margin: 30px auto 0;
    color: var(--white);
    font-size: 17px;
    text-align: center;
}

.legacy-auth .s7_verify form,
.legacy-auth .s7_verify p {
    margin: 0;
}

.legacy-auth .s7_logout {
    color: var(--white);
    text-decoration: underline;
}

.legacy-auth .s7_logout:hover {
    color: #d8ecff;
    text-decoration: none;
}

.legacy-auth .s7_check {
    margin-top: -8px;
    margin-bottom: 18px;
}

.legacy-auth .s7_check label {
    display: flex;
    align-items: center;
    gap: 8px;
    color: var(--white);
    font-size: 14px;
}

.legacy-auth .s7_check input {
    width: auto;
    height: auto;
    margin: 0;
}

.password-field {
    position: relative;
    width: 100%;
    max-width: 322px;
}

.password-field .s7_in1 {
    padding-right: 82px;
}

.password-toggle {
    position: absolute;
    top: 5px;
    right: 5px;
    min-height: 0;
    height: 34px;
    border-radius: 4px;
    padding: 0 8px;
    background: #459ced;
    color: var(--white);
    font-family: "Roboto Condensed_Bold", Arial, Helvetica, sans-serif;
    font-size: 12px;
    text-transform: uppercase;
}

.inline-form {
    display: grid;
    grid-template-columns: 1fr 1fr auto;
    gap: 10px;
}

.layout {
    display: grid;
    grid-template-columns: 250px 1fr;
    gap: 22px;
    align-items: start;
}

.layout-feed {
    grid-template-columns: 1fr;
}

.layout-legal {
    grid-template-columns: 1fr;
}

.sidebar {
    display: grid;
    gap: 14px;
    position: sticky;
    top: 94px;
    max-height: calc(100vh - 110px);
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-width: none;
    -ms-overflow-style: none;
}

.sidebar::-webkit-scrollbar {
    display: none;
}

.panel {
    padding: 18px;
}

.panel h3 {
    margin: 0 0 12px;
}

.profile {
    display: flex;
    gap: 12px;
    align-items: center;
}

.profile img {
    width: 48px;
    height: 48px;
    border-radius: 6px;
    object-fit: cover;
}

.profile span {
    display: block;
    color: var(--muted);
}

.side-link {
    display: block;
    padding: 8px 0;
    border-top: 1px solid var(--line);
    overflow-wrap: anywhere;
}

.side-menu-panel .side-link.active {
    color: var(--blue);
}

.side-link.with-count {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.side-link.with-count span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 24px;
    width: 24px;
    height: 24px;
    border-radius: 5px;
    padding: 0;
    background: var(--blue);
    color: var(--white);
    font-size: 12px;
    line-height: 1;
    font-family: "Roboto Condensed_Bold", Arial, Helvetica, sans-serif;
}

.panel-head-row span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 22px;
    height: 22px;
    border-radius: 999px;
    padding: 0 7px;
    background: var(--blue);
    color: var(--white);
    font-size: 12px;
    font-family: "Roboto Condensed_Bold", Arial, Helvetica, sans-serif;
}

.side-subhead {
    margin-top: 14px;
    border-top: 1px solid var(--line);
    padding-top: 12px;
    color: var(--muted);
    font-family: "Roboto Condensed_Bold", Arial, Helvetica, sans-serif;
    font-size: 13px;
    text-transform: uppercase;
}

.muted-link {
    color: var(--muted);
}

.panel-head-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 8px;
}

.panel-head-row h3 {
    margin: 0;
}

.notifications-clear-form {
    margin: 0;
}

.notifications-clear-button {
    min-height: 28px;
    border: 1px solid #d1dfeb;
    border-radius: 5px;
    padding: 0 10px;
    background: var(--white);
    color: var(--blue-dark);
    font-family: "Roboto Condensed_Bold", Arial, Helvetica, sans-serif;
    font-size: 13px;
    text-transform: none;
}

.notifications-clear-button:hover {
    border-color: var(--blue);
    color: var(--blue);
}

.notification-center-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 8px;
}

.notification-center-actions form {
    margin: 0;
}

.notification-link {
    display: grid;
    gap: 3px;
    border-top: 1px solid var(--line);
    padding: 10px 0;
    color: var(--ink);
}

.notification-link b {
    font-size: 14px;
}

.notification-link span {
    color: var(--muted);
    font-size: 13px;
    line-height: 1.25;
}

.full {
    width: 100%;
    margin-top: 12px;
}

.content {
    min-width: 0;
}

.section-head {
    margin: 0 0 16px;
}

.section-head-row {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 18px;
}

.section-head-spaced {
    margin-top: 26px;
}

.section-head h2 {
    margin: 0 0 6px;
    font-size: 30px;
}

.section-head p {
    margin: 0;
    color: var(--muted);
}

.section-head-link {
    flex: 0 0 auto;
    min-height: 36px;
    border: 1px solid #cddde8;
    border-radius: 6px;
    padding: 8px 14px;
    background: #f6fafc;
    color: var(--blue-dark);
    font-family: "Roboto Condensed_Bold", Arial, Helvetica, sans-serif;
    font-size: 14px;
    line-height: 1.2;
    text-transform: none;
}

.section-head-link:hover {
    border-color: var(--blue);
    color: var(--blue);
}

.guest-feed-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 16px;
}

.guest-feed-head h2 {
    margin: 0 0 6px;
    font-size: 34px;
}

.guest-feed-head p:last-child {
    margin: 0;
    color: var(--muted);
}

.guest-feed-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 18px;
}

.guest-feed-tabs a {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    border: 1px solid #d3e2ed;
    border-radius: 5px;
    padding: 0 14px;
    background: var(--white);
    color: var(--blue-dark);
    font-family: "Roboto Condensed_Bold", Arial, Helvetica, sans-serif;
    transition: border-color .16s ease, background .16s ease, color .16s ease;
}

.guest-feed-tabs a:hover,
.guest-feed-tabs a.is-active {
    border-color: var(--blue);
    background: #eef7ff;
    color: var(--blue);
}

[data-guest-feed-results] {
    transition: opacity .16s ease;
}

[data-guest-feed-root].is-loading [data-guest-feed-results] {
    opacity: .55;
    pointer-events: none;
}

[data-guest-feed-root].is-loading .guest-feed-tabs a {
    cursor: wait;
}

.guest-feed-loader {
    display: flex;
    justify-content: center;
    padding: 18px 0 4px;
    color: var(--muted);
    font-size: 14px;
}

.guest-feed-loader[hidden],
.guest-feed-sentinel[hidden] {
    display: none;
}

.guest-feed-sentinel {
    height: 1px;
}

.legal-page {
    padding: 28px;
}

.legal-section {
    border-top: 1px solid var(--line);
    padding-top: 20px;
    margin-top: 20px;
}

.legal-section h3 {
    margin: 0 0 10px;
    color: var(--ink);
    font-size: 22px;
}

.legal-section p {
    margin: 0;
    color: #3f4a54;
    font-size: 16px;
    line-height: 1.6;
}

.legal-section a {
    color: var(--blue-dark);
    font-weight: 700;
    text-decoration: none;
    transition: color .18s ease;
}

.legal-section a:hover,
.legal-section a:focus-visible {
    color: var(--blue);
}

.legal-requisites {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin: 0;
}

.legal-requisites div {
    min-width: 0;
    border: 1px solid #dce7f0;
    border-radius: 6px;
    padding: 12px 14px;
    background: #f7fbfe;
}

.legal-requisites dt {
    margin: 0 0 4px;
    color: var(--muted);
    font-size: 13px;
}

.legal-requisites dd {
    margin: 0;
    color: var(--ink);
    font-weight: 700;
    overflow-wrap: anywhere;
}

.legal-requisites-compact dd {
    font-weight: 600;
}

.catalog-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.card {
    padding: 20px;
}

.card h3 {
    margin: 0 0 14px;
    font-size: 24px;
    overflow-wrap: anywhere;
}

.chips {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.chips span {
    border-radius: 999px;
    padding: 6px 10px;
    background: #eaf4ff;
    color: var(--blue-dark);
    font-size: 13px;
}

.catalog-model-groups {
    display: grid;
    gap: 14px;
}

.catalog-model-group {
    display: grid;
    gap: 8px;
}

.catalog-model-group b {
    color: var(--muted);
    font-size: 13px;
    text-transform: uppercase;
}

.catalog-brand-page,
.catalog-model-page,
.managed-brand-card {
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--white);
}

.catalog-brand-page {
    padding: 22px;
}

.catalog-brand-hero,
.catalog-model-hero,
.managed-brand-head {
    display: grid;
    grid-template-columns: 160px minmax(0, 1fr);
    gap: 22px;
    align-items: center;
}

.catalog-brand-hero {
    margin-bottom: 28px;
}

.catalog-brand-hero > img,
.managed-brand-head > img {
    width: 160px;
    aspect-ratio: 1;
    border: 1px solid var(--line);
    border-radius: 8px;
    object-fit: contain;
    padding: 18px;
    background: #f8fbfd;
}

.catalog-brand-hero h2,
.catalog-model-summary h1,
.managed-brand-head h3 {
    margin: 0;
    color: var(--ink);
    font-family: "Gilroy-Bold", Arial, Helvetica, sans-serif;
    line-height: 1.1;
    overflow-wrap: anywhere;
}

.catalog-brand-hero h2 {
    font-size: 38px;
}

.catalog-brand-hero p {
    max-width: 720px;
    margin: 12px 0 0;
    color: #3f4a54;
    font-size: 17px;
    line-height: 1.55;
}

.catalog-brand-meta,
.catalog-model-counters {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 16px;
}

.catalog-brand-meta span,
.catalog-model-counters span {
    border-radius: 6px;
    padding: 8px 11px;
    background: #edf5fb;
    color: #52606b;
    font-weight: 700;
}

.catalog-brand-share {
    display: inline-flex;
    margin-top: 16px;
    border: 0;
    padding: 0;
    background: transparent;
    color: var(--blue-dark);
    cursor: pointer;
    font-family: "Roboto Condensed_Bold", Arial, Helvetica, sans-serif;
    font-size: 16px;
}

.catalog-type-section {
    border-top: 1px solid var(--line);
    padding-top: 22px;
    margin-top: 22px;
}

.catalog-type-section h3 {
    margin: 0 0 14px;
    font-size: 24px;
}

.catalog-model-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
    gap: 14px;
}

.catalog-model-card {
    display: grid;
    gap: 10px;
    min-width: 0;
    border: 1px solid #d8e3eb;
    border-radius: 8px;
    padding: 10px;
    background: #f8fbfd;
}

.catalog-model-card:hover,
.catalog-model-card:focus-visible {
    border-color: #9bc6e8;
}

.catalog-model-card img {
    width: 100%;
    aspect-ratio: 4 / 3;
    border-radius: 6px;
    object-fit: cover;
    background: #dfe8ee;
}

.catalog-model-card span {
    color: var(--ink);
    font-family: "Roboto Condensed_Bold", Arial, Helvetica, sans-serif;
    font-size: 18px;
    overflow-wrap: anywhere;
}

.catalog-model-page {
    overflow: hidden;
}

.catalog-model-hero {
    grid-template-columns: minmax(0, 1.2fr) minmax(280px, .8fr);
    gap: 0;
    align-items: stretch;
    min-height: 360px;
}

.catalog-model-hero > img {
    width: 100%;
    height: 100%;
    min-height: 360px;
    object-fit: cover;
    background: #dfe8ee;
}

.catalog-model-summary {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 34px;
    background: #f7fbfe;
}

.catalog-model-summary h1 {
    font-size: clamp(34px, 4vw, 52px);
}

.catalog-model-counters b {
    color: var(--blue-dark);
    font-size: 22px;
}

.catalog-model-info {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(300px, .85fr);
    gap: 28px;
    padding: 26px;
}

.catalog-model-info h2,
.catalog-model-specs h2 {
    margin: 0 0 14px;
    color: var(--ink);
    font-size: 26px;
}

.catalog-model-info p {
    margin: 0;
    color: #3f4a54;
    font-size: 18px;
    line-height: 1.6;
}

.catalog-model-specs ul {
    display: grid;
    gap: 10px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.catalog-model-specs li {
    border: 1px solid #dce7f0;
    border-radius: 6px;
    padding: 12px;
    background: #f8fbfd;
}

.catalog-model-specs li p {
    margin: 0;
    color: var(--ink);
    font-family: "Roboto Condensed_Bold", Arial, Helvetica, sans-serif;
    font-size: 20px;
}

.catalog-model-specs li span {
    display: block;
    margin-top: 3px;
    color: var(--muted);
    font-size: 13px;
}

.catalog-model-reference {
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--white);
    overflow: hidden;
}

.catalog-model-stage {
    position: relative;
}

.catalog-model-media {
    position: relative;
    min-height: 410px;
    background: #dfe8ee;
}

.catalog-model-media img {
    display: block;
    width: 100%;
    min-height: 410px;
    max-height: 480px;
    object-fit: cover;
}

.catalog-model-float-panel {
    position: absolute;
    top: 24px;
    right: 24px;
    width: min(310px, calc(100% - 48px));
    border-radius: 6px;
    padding: 18px;
    background: rgba(255, 255, 255, .96);
    box-shadow: -8px 8px 18px rgba(21, 45, 68, .16);
}

.catalog-model-follow {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    border-radius: 4px;
    background: var(--blue);
    color: var(--white);
    font-family: "Roboto Condensed_Bold", Arial, Helvetica, sans-serif;
    font-size: 18px;
}

.catalog-model-follow:hover,
.catalog-model-follow:focus-visible {
    color: var(--white);
    background: var(--blue-dark);
}

.catalog-model-float-counters {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin-top: 16px;
}

.catalog-model-float-counters div {
    min-width: 0;
    border: 1px solid #dce7f0;
    border-radius: 5px;
    padding: 14px 10px;
    text-align: center;
    background: #f8fbfd;
}

.catalog-model-float-counters b {
    display: block;
    color: var(--ink);
    font-family: "Gilroy-ExtraBold", Arial, Helvetica, sans-serif;
    font-size: 28px;
    line-height: 1;
}

.catalog-model-float-counters span {
    display: block;
    margin-top: 5px;
    color: var(--muted);
    font-size: 15px;
}

.catalog-model-toggle-card {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 360px);
    gap: 28px;
    padding: 28px 28px 22px;
    border-top: 1px solid var(--line);
}

.catalog-model-about {
    min-width: 0;
}

.catalog-model-about h1 {
    margin: 0 0 22px;
    color: var(--ink);
    font-family: "Gilroy-ExtraBold", Arial, Helvetica, sans-serif;
    font-size: clamp(34px, 4vw, 56px);
    line-height: 1.05;
    overflow-wrap: anywhere;
}

.catalog-model-about h2,
.catalog-model-specs h2 {
    margin: 0 0 14px;
    color: var(--ink);
    font-family: "Gilroy-Bold", Arial, Helvetica, sans-serif;
    font-size: 28px;
    line-height: 1.1;
}

.catalog-model-about-text {
    position: relative;
    overflow: hidden;
    transition: max-height .32s ease;
}

.catalog-model-reference:not(.is-expanded) .catalog-model-about-text {
    max-height: 178px;
}

.catalog-model-reference.is-expanded .catalog-model-about-text {
    max-height: 900px;
}

.catalog-model-reference:not(.is-expanded) .catalog-model-about-text::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: 46px;
    background: linear-gradient(rgba(255, 255, 255, 0), var(--white));
    pointer-events: none;
}

.catalog-model-about-text p {
    margin: 0;
    color: #3f4a54;
    font-size: 18px;
    line-height: 1.6;
}

.catalog-model-reference .catalog-model-specs {
    min-width: 0;
}

.catalog-model-reference .catalog-model-specs ul {
    grid-template-columns: 1fr;
}

.catalog-model-share {
    display: inline-flex;
    margin-top: 16px;
    border: 0;
    padding: 0;
    background: transparent;
    color: var(--blue-dark);
    cursor: pointer;
    font-family: "Roboto Condensed_Bold", Arial, Helvetica, sans-serif;
    font-size: 16px;
}

.catalog-model-read-more {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin: 0 0 26px 28px;
    border: 0;
    border-radius: 4px;
    padding: 11px 18px;
    background: #edf5fb;
    color: var(--blue-dark);
    cursor: pointer;
    font-family: "Roboto Condensed_Bold", Arial, Helvetica, sans-serif;
    font-size: 17px;
}

.catalog-model-read-more:hover,
.catalog-model-read-more:focus-visible {
    color: var(--white);
    background: var(--blue);
}

.catalog-model-strip {
    margin-top: 20px;
    border: 1px solid var(--line);
    border-radius: 8px;
    padding: 24px 0 24px 24px;
    background: var(--white);
}

.catalog-model-strip-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding-right: 24px;
}

.catalog-model-strip-head > a {
    flex: 0 0 auto;
    color: var(--blue-dark);
    font-family: "Roboto Condensed_Bold", Arial, Helvetica, sans-serif;
}

.catalog-model-city-filter {
    width: min(260px, 100%);
    border: 1px solid #cfdde8;
    border-radius: 4px;
    padding: 10px 12px;
    color: var(--ink);
    font-family: "Roboto Condensed_regular", Arial, Helvetica, sans-serif;
    font-size: 16px;
}

.catalog-model-strip-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
    margin-top: 20px;
    padding-right: 24px;
}

.catalog-model-strip-grid-wide {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.catalog-model-strip-grid article {
    position: relative;
    min-width: 0;
    overflow: hidden;
    border: 1px solid #cbd6de;
    border-radius: 5px;
    padding-bottom: 12px;
    background: var(--white);
    box-shadow: -6px 5px 6px rgba(0, 0, 0, .07);
}

.catalog-model-strip-grid article > a:first-child {
    display: block;
    overflow: hidden;
}

.catalog-model-strip-grid img {
    display: block;
    width: 100%;
    height: 170px;
    object-fit: cover;
    background: #dfe8ee;
    transition: filter .22s ease, transform .22s ease;
}

.catalog-model-strip-grid article:hover img {
    filter: brightness(75%);
    transform: scale(1.015);
}

.catalog-model-card-name {
    display: block;
    padding: 10px 13px 0;
    color: #363636;
    font-family: "Roboto Condensed_Bold", Arial, Helvetica, sans-serif;
    font-size: 18px;
    line-height: 1.25;
    overflow-wrap: anywhere;
}

.catalog-model-strip-grid span {
    display: block;
    margin: 7px 13px 0;
    color: var(--muted);
    font-size: 15px;
    line-height: 1.25;
}

.catalog-model-strip-grid span a {
    color: inherit;
}

.catalog-model-price {
    margin: 8px 13px 0;
    color: var(--ink);
    font-family: "Roboto Condensed_Bold", Arial, Helvetica, sans-serif;
    font-size: 20px;
}

.catalog-model-card-metrics {
    position: absolute;
    top: 10px;
    right: 10px;
    display: flex;
    gap: 7px;
}

.catalog-model-card-metrics span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 34px;
    height: 28px;
    margin: 0;
    border-radius: 4px;
    background: rgba(255, 255, 255, .92);
    color: var(--ink);
    font-family: "Roboto Condensed_Bold", Arial, Helvetica, sans-serif;
    font-size: 14px;
}

.catalog-model-share:hover,
.catalog-model-strip-head > a:hover,
.catalog-model-card-name:hover,
.catalog-model-strip-grid span a:hover {
    color: var(--blue);
    text-decoration: none;
}

@media (max-width: 1200px) {
    .catalog-model-toggle-card {
        grid-template-columns: 1fr;
    }

    .catalog-model-strip-grid,
    .catalog-model-strip-grid-wide {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 768px) {
    .catalog-model-media,
    .catalog-model-media img {
        min-height: 260px;
    }

    .catalog-model-float-panel {
        position: static;
        width: auto;
        margin: 0;
        border-radius: 0;
        box-shadow: none;
    }

    .catalog-model-toggle-card {
        padding: 20px;
    }

    .catalog-model-about h1 {
        font-size: 34px;
    }

    .catalog-model-strip {
        padding: 20px;
    }

    .catalog-model-strip-head {
        display: grid;
        padding-right: 0;
    }

    .catalog-model-strip-grid,
    .catalog-model-strip-grid-wide {
        grid-template-columns: 1fr;
        padding-right: 0;
    }

    .catalog-model-read-more {
        margin-left: 20px;
    }
}

.form-card {
    display: grid;
    gap: 16px;
    padding: 22px;
}

.form-card label {
    display: grid;
    gap: 7px;
    color: var(--muted);
    font-weight: 700;
}

.form-card .form-description-label,
.form-card .form-description-label textarea {
    font-weight: 400;
}

.post-editor-form label,
.post-editor-form input,
.post-editor-form textarea {
    font-weight: 400;
}

.tag-picker {
    display: grid;
    gap: 10px;
    border: 1px solid #dce7f0;
    border-radius: 8px;
    padding: 14px;
    background: #f8fbfd;
}

.tag-picker legend {
    padding: 0 6px;
    color: var(--muted);
    font-weight: 400;
}

.tag-picker-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.tag-picker-grid label {
    display: inline-flex;
    align-items: center;
    width: auto;
    gap: 0;
    cursor: pointer;
    color: var(--ink);
    font-weight: 400;
}

.tag-picker-grid input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.tag-picker-grid span {
    border: 1px solid #cddfec;
    border-radius: 5px;
    padding: 7px 10px;
    background: var(--white);
    color: var(--ink);
    transition: border-color .2s ease, background .2s ease, color .2s ease;
}

.tag-picker-grid input:checked + span {
    border-color: #2e7cc8;
    background: #eaf4ff;
    color: #1d67ad;
}

.form-status {
    margin-bottom: 14px;
    border: 1px solid #b8dcbf;
    border-radius: 6px;
    padding: 12px 14px;
    background: #eef8f0;
    color: #176b2c;
    font-weight: 700;
}

.post-editor-toolbar {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 8px;
}

.post-editor-toolbar button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    min-height: 32px;
    border: 1px solid #cfdde8;
    border-radius: 5px;
    padding: 0;
    background: var(--white);
    color: var(--ink);
    cursor: pointer;
    font-family: "Roboto Condensed_Bold", Arial, Helvetica, sans-serif;
    font-size: 17px;
}

.post-editor-toolbar button[data-post-format="bold"] {
    font-family: Arial, Helvetica, sans-serif;
    font-weight: 700;
}

.post-editor-toolbar button[data-post-format="italic"] {
    font-family: Georgia, "Times New Roman", serif;
    font-style: italic;
}

.post-editor-toolbar button:hover,
.post-editor-toolbar button:focus-visible {
    border-color: #8fc0e9;
    color: var(--blue-dark);
}

.post-editor-toolbar span {
    color: var(--muted);
    font-size: 13px;
    font-weight: 400;
}

.vessel-sale-form-block {
    display: grid;
    gap: 12px;
    border: 1px solid #cfe0ef;
    border-radius: 8px;
    padding: 14px;
    background: #f4f9fd;
}

.form-card .vessel-sale-form-block .checkbox-row {
    margin: 0;
    color: var(--ink);
    font-weight: 800;
}

.vessel-sale-fields {
    display: grid;
    gap: 8px;
}

.vessel-sale-fields[hidden] {
    display: none;
}

.vessel-sale-fields p {
    margin: 0;
    color: var(--muted);
    font-size: 13px;
    font-weight: 400;
    line-height: 1.45;
}

.vessel-sale-contact-block {
    display: grid;
    gap: 10px;
}

.vessel-sale-contact-title {
    color: var(--ink) !important;
    font-family: "Roboto Condensed_Bold", Arial, Helvetica, sans-serif;
    font-size: 16px !important;
}

.vessel-sale-contact-list {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 18px;
}

.form-card .vessel-sale-contact-list .checkbox-row {
    margin: 0;
    color: var(--ink);
    font-weight: 400;
}

.vessel-sale-phone-field {
    display: grid;
    gap: 6px;
    border: 1px solid #d7e6f3;
    border-radius: 6px;
    padding: 12px;
    background: #eef7ff;
}

.vessel-sale-phone-field[hidden] {
    display: none;
}

.vessel-sale-phone-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px;
}

.vessel-sale-phone-field small {
    color: #546879;
    font-size: 12px;
    line-height: 1.4;
}

.image-uploader {
    display: grid;
    gap: 14px;
    border: 1px dashed #b9c8d5;
    border-radius: 8px;
    padding: 14px;
    background: #f8fbfd;
}

.image-uploader-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
}

.image-uploader-head div {
    display: grid;
    gap: 4px;
}

.image-uploader-head b {
    color: var(--ink);
    font-family: "Gilroy-Bold", Arial, Helvetica, sans-serif;
    font-size: 18px;
}

.image-uploader-head span,
.image-uploader-label {
    color: var(--muted);
    font-size: 13px;
    font-weight: 400;
    line-height: 1.45;
}

.image-uploader-head .required-hint {
    color: #b42318;
    font-weight: 700;
}

.image-uploader-trigger {
    white-space: nowrap;
}

.image-uploader-input {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
    pointer-events: none;
}

.image-uploader-section {
    display: grid;
    gap: 9px;
}

.image-uploader-label {
    font-weight: 700;
    text-transform: uppercase;
}

.image-uploader-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
    gap: 10px;
}

.image-uploader-tile {
    position: relative;
    overflow: hidden;
    border: 1px solid #d7e1e8;
    border-radius: 6px;
    background: var(--white);
}

.image-uploader-tile img {
    display: block;
    width: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
    background: #dfe8ee;
    transition: filter .18s ease, opacity .18s ease;
}

.image-uploader-caption {
    display: grid;
    gap: 5px;
    padding: 9px;
    color: var(--muted);
    font-size: 13px;
    font-weight: 400;
}

.image-uploader-caption input {
    width: 100%;
    border: 1px solid #cfdde8;
    border-radius: 5px;
    padding: 8px 9px;
    color: var(--ink);
    font-family: "Roboto Condensed_regular", Arial, Helvetica, sans-serif;
    font-size: 14px;
}

.image-uploader-tile.is-cover {
    border-color: #2e7cc8;
    box-shadow: 0 0 0 2px rgba(46, 124, 200, .14);
}

.image-uploader-tile.is-cover::after,
.image-uploader-tile.is-marked-delete::before {
    position: absolute;
    top: 8px;
    left: 8px;
    border-radius: 4px;
    padding: 5px 7px;
    color: var(--white);
    font-size: 12px;
    font-weight: 800;
    line-height: 1;
}

.image-uploader-tile.is-cover::after {
    content: "Обложка";
    background: #2e7cc8;
}

.image-uploader-tile.is-marked-delete img {
    opacity: .42;
    filter: grayscale(1);
}

.image-uploader-tile.is-marked-delete::before {
    z-index: 2;
    content: "Будет удалено";
    background: #b42318;
}

.image-uploader-tile.is-marked-delete::after {
    content: none;
}

.image-uploader-tile-uploading img {
    opacity: .58;
}

.image-uploader-tile-uploading::before {
    position: absolute;
    top: 8px;
    left: 8px;
    border-radius: 4px;
    padding: 5px 7px;
    background: #2e7cc8;
    color: var(--white);
    content: "Загрузка";
    font-size: 12px;
    font-weight: 800;
    line-height: 1;
}

.image-uploader-tile-ready {
    border-color: #71b77a;
}

.image-uploader-tile-error {
    border-color: #d64535;
    background: #fff7f6;
}

.image-uploader-tile-error img {
    opacity: .5;
    filter: grayscale(.75);
}

.image-uploader-tile.is-cropped::before {
    position: absolute;
    top: 8px;
    right: 8px;
    border-radius: 4px;
    padding: 5px 7px;
    background: #1f7a5c;
    color: var(--white);
    content: "Кадр";
    font-size: 12px;
    font-weight: 800;
    line-height: 1;
}

.image-uploader-tile-actions {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    padding: 8px;
}

.form-card .image-uploader-cover {
    display: flex;
    align-items: center;
    gap: 6px;
    margin: 0;
    color: var(--ink);
    font-size: 13px;
    font-weight: 700;
}

.image-uploader-cover input {
    width: auto;
}

.image-uploader-upload-status {
    color: var(--muted);
    font-size: 12px;
    font-weight: 800;
}

.image-uploader-tile-ready .image-uploader-upload-status {
    color: #267234;
}

.image-uploader-tile-error .image-uploader-upload-status {
    color: #b42318;
}

.image-uploader-remove,
.image-uploader-crop {
    min-height: 0;
    border: 0;
    padding: 0;
    background: transparent;
    font-size: 13px;
    font-weight: 800;
}

.image-uploader-remove {
    color: #b42318;
}

.image-uploader-insert,
.image-uploader-crop {
    min-height: 0;
    border: 0;
    padding: 0;
    background: transparent;
    color: #2e7cc8;
    font-size: 13px;
    font-weight: 800;
}

.image-uploader-retry {
    min-height: 0;
    border: 0;
    padding: 0;
    background: transparent;
    color: #2e7cc8;
    font-size: 13px;
    font-weight: 800;
}

.image-uploader-retry:hover,
.image-uploader-retry:focus-visible {
    color: #155a9b;
}

.image-uploader-insert:hover,
.image-uploader-insert:focus-visible,
.image-uploader-crop:hover,
.image-uploader-crop:focus-visible {
    color: #155a9b;
}

.image-uploader-remove:hover,
.image-uploader-remove:focus-visible {
    color: #74130c;
}

.image-uploader-notice {
    margin: 0;
    border-radius: 6px;
    padding: 9px 11px;
    background: #eef6fd;
    color: #155a9b;
    font-size: 13px;
    font-weight: 700;
}

.image-uploader-notice[data-tone="error"] {
    background: #fff1ef;
    color: #b42318;
}

.image-crop-modal {
    position: fixed;
    inset: 0;
    z-index: 120;
    display: grid;
    place-items: center;
    padding: 24px;
    background: rgba(10, 20, 30, .62);
}

.image-crop-modal[hidden] {
    display: none;
}

.image-crop-card {
    display: grid;
    grid-template-columns: minmax(280px, 720px) minmax(220px, 300px);
    gap: 18px;
    width: min(1040px, 100%);
    max-height: calc(100vh - 48px);
    overflow: auto;
    border-radius: 8px;
    padding: 18px;
    background: var(--white);
    box-shadow: 0 24px 80px rgba(0, 0, 0, .28);
}

.image-crop-stage {
    position: relative;
    display: grid;
    overflow: hidden;
    min-height: 320px;
    border-radius: 6px;
    background: #111923;
}

.image-crop-stage img {
    display: block;
    width: 100%;
    max-height: 68vh;
    object-fit: contain;
}

.image-crop-box {
    position: absolute;
    border: 2px solid var(--white);
    box-shadow: 0 0 0 999px rgba(0, 0, 0, .42);
    pointer-events: none;
}

.image-crop-panel {
    display: flex;
    flex-direction: column;
    gap: 13px;
}

.image-crop-panel h3 {
    margin: 0;
    color: var(--ink);
    font-family: "Gilroy-Bold", Arial, Helvetica, sans-serif;
    font-size: 20px;
}

.image-crop-panel p {
    margin: 0;
    color: var(--muted);
    font-size: 14px;
    line-height: 1.4;
}

.image-crop-control {
    display: grid;
    gap: 5px;
    color: var(--ink);
    font-size: 13px;
    font-weight: 800;
}

.image-crop-control input {
    width: 100%;
}

.image-crop-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: auto;
}

.image-crop-actions button {
    flex: 1 1 120px;
}

@media (max-width: 640px) {
    .image-uploader-head {
        align-items: stretch;
        flex-direction: column;
    }

    .image-uploader-trigger {
        width: 100%;
    }

    .image-uploader-grid {
        grid-template-columns: repeat(auto-fill, minmax(128px, 1fr));
    }

    .image-crop-card {
        grid-template-columns: 1fr;
    }

    .image-crop-stage {
        min-height: 220px;
    }
}

.vessel-delete-panel,
.post-delete-panel {
    margin-top: 18px;
    border: 1px solid #efc7c2;
    background: #fff8f7;
}

.vessel-delete-panel h3,
.vessel-delete-panel p,
.post-delete-panel h3,
.post-delete-panel p {
    margin: 0;
}

.vessel-delete-panel h3,
.post-delete-panel h3 {
    color: #8f1d13;
    font-family: "Gilroy-Bold", Arial, Helvetica, sans-serif;
    font-size: 22px;
}

.vessel-delete-panel p,
.post-delete-panel p {
    margin-top: 6px;
    color: #5f352f;
    font-weight: 400;
    line-height: 1.45;
}

.vessel-delete-panel form,
.post-delete-panel form {
    margin: 0;
}

.modal-open {
    overflow: hidden;
}

.confirm-modal {
    position: fixed;
    inset: 0;
    z-index: 1000;
    display: grid;
    place-items: center;
    padding: 20px;
    background: rgba(15, 28, 40, .46);
    opacity: 0;
    pointer-events: none;
    backdrop-filter: blur(5px);
    transition: opacity .18s ease;
}

.confirm-modal[hidden] {
    display: none;
}

.confirm-modal.is-open {
    opacity: 1;
    pointer-events: auto;
}

.confirm-modal-card {
    display: grid;
    grid-template-columns: 54px minmax(0, 1fr);
    gap: 18px;
    width: min(520px, 100%);
    border: 1px solid rgba(180, 35, 24, .18);
    border-radius: 8px;
    padding: 24px;
    background: var(--white);
    box-shadow: 0 24px 70px rgba(14, 26, 38, .28);
    transform: translateY(12px) scale(.98);
    transition: transform .18s ease;
}

.confirm-modal.is-open .confirm-modal-card {
    transform: translateY(0) scale(1);
}

.confirm-modal-mark {
    display: grid;
    place-items: center;
    width: 48px;
    height: 48px;
    border-radius: 8px;
    background: #fff1ef;
    color: #b42318;
    font-family: "Gilroy-ExtraBold", Arial, Helvetica, sans-serif;
    font-size: 28px;
}

.confirm-modal-kicker {
    margin: 0 0 6px;
    color: #b42318;
    font-family: "Roboto Condensed_Bold", Arial, Helvetica, sans-serif;
    font-size: 14px;
    text-transform: uppercase;
}

.confirm-modal h2 {
    margin: 0;
    color: var(--ink);
    font-size: 28px;
    line-height: 1.12;
}

.confirm-modal p {
    margin: 10px 0 0;
    color: var(--muted);
    line-height: 1.5;
}

.confirm-modal-actions {
    grid-column: 1 / -1;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 10px;
    margin-top: 6px;
}

.confirm-modal-actions button {
    min-width: 160px;
}

.report-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    min-height: 0;
    border: 0;
    border-radius: 0;
    padding: 0;
    background: transparent;
    color: var(--blue-dark);
    cursor: pointer;
    font: inherit;
    text-transform: none;
    transition: color .18s ease;
}

.profile-owner-actions .report-button {
    min-height: 34px;
    border: 1px solid #cddde8;
    border-radius: 5px;
    padding: 0 14px;
    background: #f6fafc;
    color: var(--blue-dark);
    font-size: 14px;
}

.vessel-share-row .report-button,
.journal-meta .report-button,
.comment-meta .report-button {
    color: #808080;
}

.vessel-share-row .report-button {
    font-family: "Roboto Condensed_regular", Arial, Helvetica, sans-serif;
    font-size: 18px;
}

.report-button:hover,
.report-button:focus-visible {
    color: var(--blue);
}

.report-modal {
    position: fixed;
    inset: 0;
    z-index: 1000;
    display: grid;
    place-items: center;
    padding: 20px;
    background: rgba(15, 28, 40, .5);
    opacity: 0;
    pointer-events: none;
    backdrop-filter: blur(5px);
    transition: opacity .18s ease;
}

.report-modal[hidden] {
    display: none;
}

.report-modal.is-open {
    opacity: 1;
    pointer-events: auto;
}

.report-modal-card {
    position: relative;
    display: grid;
    grid-template-columns: 54px minmax(0, 1fr);
    gap: 16px 18px;
    width: min(580px, 100%);
    border: 1px solid rgba(214, 91, 41, .2);
    border-radius: 8px;
    padding: 24px;
    background: var(--white);
    box-shadow: 0 24px 70px rgba(14, 26, 38, .28);
    transform: translateY(12px) scale(.98);
    transition: transform .18s ease;
}

.report-modal.is-open .report-modal-card {
    transform: translateY(0) scale(1);
}

.report-modal-close {
    position: absolute;
    top: 14px;
    right: 14px;
    width: 32px;
    height: 32px;
    border: 0;
    border-radius: 6px;
    background: #f3f6f8;
    cursor: pointer;
}

.report-modal-close::before,
.report-modal-close::after {
    content: "";
    position: absolute;
    top: 15px;
    left: 9px;
    width: 14px;
    height: 2px;
    background: #66727d;
}

.report-modal-close::before {
    transform: rotate(45deg);
}

.report-modal-close::after {
    transform: rotate(-45deg);
}

.report-modal-mark {
    display: grid;
    place-items: center;
    width: 48px;
    height: 48px;
    border-radius: 8px;
    background: #fff4e8;
    color: #d65b29;
    font-family: "Gilroy-ExtraBold", Arial, Helvetica, sans-serif;
    font-size: 28px;
}

.report-modal-head {
    padding-right: 32px;
}

.report-modal-head p {
    margin: 0 0 6px;
    color: #d65b29;
    font-family: "Roboto Condensed_Bold", Arial, Helvetica, sans-serif;
    font-size: 14px;
    text-transform: uppercase;
}

.report-modal-head h2 {
    margin: 0;
    color: var(--ink);
    font-size: 28px;
    line-height: 1.12;
}

.report-modal-head span {
    display: block;
    margin-top: 8px;
    color: var(--muted);
    line-height: 1.45;
    overflow-wrap: anywhere;
}

.report-modal-card label {
    grid-column: 1 / -1;
    display: grid;
    gap: 7px;
    color: var(--ink);
    font-family: "Roboto Condensed_Bold", Arial, Helvetica, sans-serif;
    font-size: 16px;
}

.report-modal-card input,
.report-modal-card select,
.report-modal-card textarea {
    width: 100%;
    border: 1px solid #cfdde8;
    border-radius: 4px;
    padding: 10px 12px;
    color: var(--ink);
    font-family: "Roboto Condensed_regular", Arial, Helvetica, sans-serif;
    font-size: 16px;
}

.report-modal-card textarea {
    resize: vertical;
}

.report-modal-actions {
    grid-column: 1 / -1;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 10px;
}

.report-modal-actions button {
    min-width: 150px;
}

.share-toast {
    position: fixed;
    right: 24px;
    bottom: 24px;
    z-index: 1100;
    border-radius: 6px;
    padding: 12px 16px;
    background: #102f45;
    color: var(--white);
    box-shadow: 0 14px 34px rgba(16, 47, 69, .24);
    opacity: 0;
    pointer-events: none;
    transform: translateY(10px);
    transition: opacity .18s ease, transform .18s ease;
}

.share-toast[hidden] {
    display: none;
}

.share-toast.is-visible {
    opacity: 1;
    transform: translateY(0);
}

.scroll-top-button {
    position: fixed;
    right: 24px;
    bottom: 24px;
    z-index: 50;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 44px;
    border: 1px solid rgba(11, 95, 143, .22);
    border-radius: 6px;
    padding: 0 16px;
    background: rgba(255, 255, 255, .94);
    box-shadow: 0 12px 28px rgba(21, 45, 68, .18);
    color: var(--blue-dark);
    cursor: pointer;
    font-family: "Roboto Condensed_Bold", Arial, Helvetica, sans-serif;
    font-size: 16px;
    opacity: 0;
    pointer-events: none;
    transform: translateY(10px);
    transition: opacity .18s ease, transform .18s ease, border-color .18s ease, color .18s ease, background .18s ease;
}

.scroll-top-button[hidden] {
    display: none;
}

.scroll-top-button.is-visible {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
}

.scroll-top-button span {
    font-size: 20px;
    line-height: 1;
}

.scroll-top-button:hover,
.scroll-top-button:focus-visible {
    border-color: var(--blue);
    background: var(--blue);
    color: var(--white);
}

.modal-open .scroll-top-button {
    opacity: 0;
    pointer-events: none;
}

@media (max-width: 560px) {
    .confirm-modal-card {
        grid-template-columns: 1fr;
        padding: 20px;
    }

    .report-modal-card {
        grid-template-columns: 1fr;
        padding: 20px;
    }

    .confirm-modal-actions {
        justify-content: stretch;
    }

    .report-modal-actions {
        justify-content: stretch;
    }

    .confirm-modal-actions button {
        width: 100%;
    }

    .report-modal-actions button {
        width: 100%;
    }

    .scroll-top-button {
        right: 14px;
        bottom: 14px;
        min-height: 40px;
        padding: 0 12px;
        font-size: 15px;
    }

}

.secondary-button {
    background: #f1f5f9;
    color: var(--ink);
}

.auth-form {
    max-width: 620px;
}

.checkbox-row {
    display: flex !important;
    grid-template-columns: none;
    align-items: center;
    gap: 10px;
}

.checkbox-row input {
    width: auto;
}

.consent-row {
    display: grid !important;
    grid-template-columns: auto 1fr;
    align-items: flex-start;
    gap: 6px 10px;
    color: #536271;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.45;
}

.consent-row input {
    width: auto;
    margin-top: 3px;
}

.consent-row a {
    color: var(--blue-dark);
    font-weight: 700;
    text-decoration: none;
    transition: color .18s ease;
}

.consent-row a:hover,
.consent-row a:focus-visible {
    color: var(--blue);
}

.consent-row .error,
.consent-row .s7_error {
    grid-column: 2;
}

.manufacturer-request-form label.consent-row {
    color: #536271;
    font-weight: 400;
}

.hint {
    color: var(--muted);
    font-size: 13px;
    font-weight: 400;
}

.error {
    color: #b42318;
    font-size: 13px;
    font-weight: 700;
}

.two {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
}

.post-card {
    display: grid;
    grid-template-columns: 220px 1fr;
    gap: 18px;
    padding: 14px;
    margin-bottom: 14px;
}

.post-card img {
    width: 100%;
    height: 150px;
    border-radius: 6px;
    object-fit: cover;
}

.post-card h3 {
    margin: 0 0 8px;
    font-size: 24px;
    overflow-wrap: anywhere;
}

.post-card p {
    margin: 0 0 12px;
}

.meta-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
    margin-bottom: 12px;
    color: var(--muted);
    font-size: 14px;
}

.meta-action {
    min-height: 0;
    border: 0;
    padding: 0;
    background: transparent;
    color: var(--blue-dark);
    cursor: pointer;
    font: inherit;
}

.profile-page {
    display: grid;
    grid-template-columns: 120px 1fr;
    gap: 20px;
    align-items: center;
    padding: 22px;
    margin-bottom: 22px;
}

.profile-page > img {
    width: 120px;
    height: 120px;
    border-radius: 8px;
    object-fit: cover;
}

.profile-page h2 {
    margin: 0 0 8px;
    font-size: 34px;
}

.profile-breadcrumbs {
    margin-bottom: 18px;
    color: var(--muted);
    font-size: 15px;
}

.profile-breadcrumbs span {
    color: var(--ink);
    font-family: "Gilroy-SemiBold", Arial, sans-serif;
}

.profile-owner-header {
    display: grid;
    grid-template-columns: 150px minmax(220px, 1fr) minmax(320px, 1.4fr);
    align-items: center;
    gap: 20px;
    min-height: 154px;
    margin-bottom: 20px;
    border: 1px solid var(--line);
    border-radius: 6px;
    background: var(--white);
    overflow: hidden;
}

.profile-owner-avatar {
    width: 150px;
    height: 154px;
    object-fit: cover;
}

.profile-owner-text {
    padding: 16px 0;
}

.profile-owner-text h2 {
    margin: 0 0 8px;
    color: #464646;
    font-size: 30px;
    line-height: 1.1;
    overflow-wrap: anywhere;
}

.profile-owner-text p {
    margin: 0 0 12px;
    color: #464646;
    font-size: 18px;
    line-height: 1.45;
}

.profile-owner-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
}

.profile-edit-form {
    align-items: start;
}

.profile-edit-preview {
    display: grid;
    grid-template-columns: 96px 1fr;
    align-items: center;
    gap: 16px;
    border: 1px solid var(--line);
    border-radius: 6px;
    padding: 14px;
    background: #f8fbfd;
}

.profile-edit-preview img {
    width: 96px;
    height: 96px;
    border-radius: 6px;
    object-fit: cover;
}

.profile-edit-preview h3 {
    margin: 0 0 6px;
    color: var(--ink);
    font-size: 24px;
    overflow-wrap: anywhere;
}

.profile-edit-preview p {
    margin: 0;
    color: var(--muted);
}

.profile-edit-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
}

.profile-follow-button,
.profile-card-follow,
.profile-share-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    border: 0;
    border-radius: 5px;
    padding: 0 14px;
    background: var(--blue);
    color: var(--white);
    cursor: pointer;
    font-size: 14px;
}

.profile-share-button {
    border: 1px solid #cddde8;
    background: #f6fafc;
    color: var(--blue-dark);
}

.profile-owner-indicators {
    display: grid;
    grid-template-columns: repeat(5, minmax(70px, 1fr));
    gap: 8px;
    padding: 18px 18px 18px 0;
}

.profile-owner-indicator {
    display: grid;
    place-items: center;
    min-height: 64px;
    border: 2px solid #464646;
    border-radius: 10px;
    padding: 6px;
    color: #464646;
    text-align: center;
}

.profile-owner-indicator b {
    font-size: 19px;
    line-height: 1;
}

.profile-owner-indicator span {
    font-size: 13px;
}

.profile-accordion-section {
    margin-bottom: 14px;
}

.profile-accordion-shell {
    position: relative;
}

.profile-accordion {
    justify-content: space-between;
    width: 100%;
    min-height: 73px;
    border: 1px solid var(--line);
    border-radius: 6px;
    padding: 3px 20px 0 25px;
    background: var(--white);
    color: #464646;
    font-family: "Gilroy-ExtraBold", Arial, sans-serif;
    font-size: 27px;
    line-height: 1.1;
    text-align: left;
    text-transform: none;
}

.profile-accordion:hover {
    border-color: transparent;
    box-shadow: 0 0 5px 1px rgba(104, 174, 239, 0.86);
}

.profile-accordion::after {
    content: "+";
    margin-left: 12px;
    color: #777;
    font-family: Arial, sans-serif;
    font-weight: 700;
}

.profile-accordion-section.is-open .profile-accordion::after {
    content: "-";
}

.profile-accordion-action {
    position: absolute;
    top: 50%;
    right: 60px;
    z-index: 2;
    min-height: 38px;
    transform: translateY(-50%);
}

.profile-accordion-panel {
    --profile-accordion-height: 0px;
    --profile-accordion-padding-x: 18px;
    --profile-accordion-padding-y: 18px;
    display: block;
    max-height: var(--profile-accordion-height);
    margin: -4px 0 0;
    padding: 0 var(--profile-accordion-padding-x);
    border-radius: 0 0 6px 6px;
    background: #fbfbfb;
    opacity: 0;
    overflow: hidden;
    transition:
        max-height 180ms ease,
        padding-top 180ms ease,
        padding-bottom 180ms ease,
        margin-bottom 180ms ease,
        opacity 120ms ease;
    will-change: max-height, opacity;
}

.profile-accordion-section.is-opening .profile-accordion-panel {
    transition-duration: 320ms, 320ms, 320ms, 320ms, 220ms;
}

.profile-accordion-section.is-closing .profile-accordion-panel {
    transition-duration: 180ms, 180ms, 180ms, 180ms, 120ms;
}

.profile-accordion-section.is-open .profile-accordion-panel {
    margin-bottom: 10px;
    padding-top: var(--profile-accordion-padding-y);
    padding-bottom: var(--profile-accordion-padding-y);
    opacity: 1;
}

.profile-accordion-panel > p {
    margin: 0;
    line-height: 1.65;
}

.profile-mytech {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(210px, 1fr));
    gap: 20px;
}

.profile-mytech-previous {
    margin-top: 26px;
}

.profile-mytech-previous h3 {
    margin: 0 0 14px;
    color: #464646;
    font-family: "Gilroy-Bold", Arial, Helvetica, sans-serif;
    font-size: 22px;
    line-height: 1.2;
}

.profile-mytech-element {
    position: relative;
    min-width: 0;
    overflow: hidden;
    border: 1px solid #c2c2c2;
    border-radius: 6px;
    background: var(--white);
    box-shadow: -6px 5px 6px 0 rgba(0, 0, 0, 0.07);
}

.profile-mytech-element-muted {
    background: #fafafa;
}

.profile-mytech-image {
    position: relative;
    display: block;
    color: var(--white);
}

.profile-mytech-element img {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 10;
    object-fit: cover;
}

.profile-mytech-element.is-pending-delete img {
    filter: grayscale(.55) brightness(.55);
}

.profile-delete-overlay {
    position: absolute;
    inset: 0;
    display: grid;
    place-items: center;
    padding: 14px;
    background: rgba(20, 28, 34, .35);
    color: var(--white);
    font-family: "Gilroy-Bold", Arial, Helvetica, sans-serif;
    font-size: 20px;
    line-height: 1.2;
    text-align: center;
}

.profile-mytech-title {
    display: block;
    min-height: 48px;
    margin: 10px 12px 6px;
    color: #363636;
    font-family: "Gilroy-SemiBold", Arial, sans-serif;
    font-size: 18px;
    line-height: 1.25;
    overflow-wrap: anywhere;
}

.profile-mytech-element span {
    display: block;
    margin: 0 12px 12px;
    color: var(--muted);
    font-size: 14px;
    line-height: 1.35;
}

.profile-mytech-element span a {
    color: #363636;
}

.profile-card-follow {
    margin: 0 12px 12px;
}

.profile-logbook-panel {
    display: grid;
    gap: 18px;
    --profile-accordion-padding-x: 0;
    background: transparent;
}

.profile-accordion-section.is-open .profile-logbook-panel {
    display: grid;
    gap: 18px;
}

.vessel-list {
    display: grid;
    gap: 14px;
    margin-bottom: 22px;
}

.vessel-mini {
    display: grid;
    grid-template-columns: 170px 1fr;
    gap: 16px;
    padding: 14px;
}

.vessel-mini-muted {
    background: #fbfcfd;
}

.vessel-mini img {
    width: 100%;
    height: 112px;
    border-radius: 6px;
    object-fit: cover;
}

.vessel-mini h3 {
    margin: 0 0 8px;
    font-size: 22px;
    overflow-wrap: anywhere;
}

.vessel-page {
    display: grid;
    grid-template-columns: minmax(260px, 380px) 1fr;
    overflow: hidden;
    margin-bottom: 22px;
}

.cover {
    width: 100%;
    height: 100%;
    min-height: 330px;
    object-fit: cover;
}

.vessel-body {
    padding: 26px;
}

.vessel-body h2,
.post-detail h2 {
    margin: 0 0 8px;
    font-size: 34px;
    overflow-wrap: anywhere;
}

.specs {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 10px;
    margin: 20px 0;
}

.specs div {
    border-radius: 6px;
    padding: 12px;
    background: var(--soft);
}

.specs dt {
    color: var(--muted);
    font-size: 13px;
}

.specs dd {
    margin: 4px 0 0;
    font-weight: 700;
    overflow-wrap: anywhere;
}

.vessel-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.vessel-breadcrumbs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0 0 18px;
    color: var(--muted);
}

.vessel-breadcrumbs b {
    color: var(--ink);
    font-family: "Roboto Condensed_Bold", Arial, Helvetica, sans-serif;
    overflow-wrap: anywhere;
}

.vessel-detail-card {
    position: relative;
    clear: both;
    margin-top: 20px;
    overflow: hidden;
    border-color: #c2c2c2;
    border-radius: 5px;
    box-shadow: -6px 5px 6px 0 rgba(0, 0, 0, .07);
}

.vessel-hero-card {
    margin-top: 0;
}

.vessel-photo-slider {
    position: relative;
    overflow: hidden;
    background: #101c29;
}

.vessel-photo-rail {
    display: flex;
    transform: translateX(calc(var(--vessel-gallery-index, 0) * -100%));
    transition: transform .28s ease;
    will-change: transform;
}

.vessel-photo-rail img {
    flex: 0 0 100%;
    min-width: 100%;
    width: 100%;
    height: clamp(270px, 34vw, 430px);
    object-fit: cover;
}

.vessel-gallery-control {
    position: absolute;
    z-index: 2;
    top: 50%;
    width: 40px;
    height: 40px;
    min-height: 40px;
    border: 0;
    border-radius: 0;
    padding: 0;
    background-color: transparent;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 40px 40px;
    transform: translateY(-50%);
}

.vessel-gallery-control:hover,
.vessel-gallery-control:focus-visible {
    filter: brightness(1.12);
}

.vessel-gallery-control-prev {
    left: 35px;
    background-image: url("../img/owl_prev.png");
}

.vessel-gallery-control-next {
    right: 35px;
    background-image: url("../img/owl_next.png");
}

@media (max-width: 700px) {
    .vessel-gallery-control-prev {
        left: 10px;
    }

    .vessel-gallery-control-next {
        right: 10px;
    }
}

.vessel-hero-panel {
    position: relative;
    min-height: 160px;
    padding: 20px 230px 20px 20px;
    color: var(--white);
    background-color: #1e364f;
    background-image: linear-gradient(90deg, rgba(18, 35, 55, .94), rgba(28, 65, 101, .82)), url("../img/s8_img36.png");
    background-size: cover;
}

.vessel-hero-main h1 {
    max-width: 700px;
    margin: 0;
    color: var(--white);
    font-family: "Gilroy-Bold", Arial, Helvetica, sans-serif;
    font-size: clamp(29px, 4vw, 37px);
    line-height: 1.12;
    overflow-wrap: anywhere;
}

.vessel-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
    margin-top: 20px;
}

.vessel-outline-action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    padding: 8px 25px;
    border: 1px solid var(--white);
    border-radius: 5px;
    color: var(--white);
    font-family: "Roboto Condensed_Bold", Arial, Helvetica, sans-serif;
    font-size: 16px;
}

.vessel-outline-action:hover {
    border-color: var(--blue);
    color: var(--blue);
}

.vessel-stat-boxes {
    position: absolute;
    top: 20px;
    right: 20px;
    display: flex;
    gap: 15px;
}

.vessel-stat-boxes div {
    width: 55px;
    height: 55px;
    padding-top: 5px;
    border: 1px solid var(--white);
    border-radius: 5px;
    text-align: center;
}

.vessel-stat-boxes strong {
    display: block;
    font-size: 18px;
    line-height: 1.2;
}

.vessel-stat-boxes span {
    display: block;
    font-size: 13px;
    line-height: 1.2;
}

.vessel-hero-metrics {
    display: flex;
    flex-wrap: wrap;
    gap: 18px;
    margin-top: 22px;
    color: var(--white);
}

.vessel-hero-metrics span {
    display: inline-flex;
    align-items: center;
    gap: 7px;
}

.vessel-hero-metrics img {
    width: 18px;
    height: 18px;
    object-fit: contain;
}

.vessel-sale-panel {
    display: grid;
    gap: 0;
    padding: 20px;
    color: var(--white);
    background: #459ced;
}

.vessel-sale-summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
}

.vessel-sale-summary p {
    margin: 0 0 6px;
    font-family: "Gilroy-Bold", Arial, Helvetica, sans-serif;
    font-size: 27px;
}

.vessel-sale-panel button {
    border: 0;
    padding: 0;
    background: transparent;
    color: var(--white);
    cursor: pointer;
    font-family: "Roboto Condensed_Bold", Arial, Helvetica, sans-serif;
    font-size: 15px;
}

.vessel-sale-summary strong {
    font-size: clamp(28px, 4vw, 35px);
    white-space: nowrap;
}

.vessel-sale-details {
    display: grid;
    grid-template-columns: minmax(0, 1.4fr) minmax(220px, .8fr);
    gap: 18px;
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    transform: translateY(-6px);
    transition: max-height .34s ease, opacity .24s ease, transform .24s ease, margin-top .24s ease;
}

.vessel-sale-panel.is-open .vessel-sale-details {
    max-height: 520px;
    margin-top: 16px;
    opacity: 1;
    transform: translateY(0);
}

.vessel-sale-details > div {
    min-width: 0;
    border: 1px solid rgba(255, 255, 255, .36);
    border-radius: 6px;
    padding: 14px;
    background: rgba(255, 255, 255, .14);
}

.vessel-sale-details b {
    display: block;
    margin-bottom: 8px;
    color: #eaf6ff;
    font-family: "Roboto Condensed_Bold", Arial, Helvetica, sans-serif;
    font-size: 16px;
}

.vessel-sale-details p {
    margin: 0;
    color: #f7fbff;
    font-size: 15px;
    line-height: 1.5;
}

.vessel-sale-contact-methods ul {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.vessel-sale-contact-methods li {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    border-radius: 4px;
    padding: 6px 9px;
    background: rgba(255, 255, 255, .22);
    color: var(--white);
    font-size: 14px;
}

.vessel-sale-contact-methods a,
.vessel-sale-contact-methods button {
    min-height: 0;
    padding: 0;
    color: var(--white);
    font-family: "Roboto Condensed_Bold", Arial, Helvetica, sans-serif;
    font-size: 14px;
    text-transform: none;
}

.vessel-sale-contact-methods a:hover,
.vessel-sale-contact-methods button:hover {
    color: #d9efff;
}

.vessel-owner-strip {
    position: relative;
    display: grid;
    grid-template-columns: 64px minmax(0, 1fr);
    gap: 14px;
    padding: 18px 20px;
    background: var(--white);
}

.vessel-owner-avatar img {
    display: block;
    width: 58px;
    height: 58px;
    border-radius: 50%;
    object-fit: cover;
}

.vessel-owner-name {
    margin: 0;
    font-family: "Roboto Condensed_Bold", Arial, Helvetica, sans-serif;
    font-size: 18px;
}

.vessel-owner-name span {
    display: inline-block;
    margin-left: 8px;
    color: var(--muted);
    font-family: "Roboto Condensed_regular", Arial, Helvetica, sans-serif;
    font-size: 15px;
}

.vessel-owner-follow {
    position: absolute;
    top: 18px;
    right: 20px;
    color: var(--blue-dark);
    font-family: "Roboto Condensed_Bold", Arial, Helvetica, sans-serif;
}

.vessel-owner-city,
.vessel-owner-fleet {
    margin: 4px 0 0;
}

.vessel-owner-city {
    color: var(--muted);
}

.vessel-owner-fleet span a {
    color: var(--ink);
    font-family: "Roboto Condensed_Bold", Arial, Helvetica, sans-serif;
}

.fleet-previous {
    display: block;
    margin-top: 4px;
    color: var(--muted);
}

.vessel-about-card {
    background: var(--white);
}

.vessel-about-collapsible {
    position: relative;
    max-height: 350px;
    overflow: hidden;
    transition: max-height .25s ease;
}

.vessel-about-collapsible::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: 120px;
    pointer-events: none;
    background: linear-gradient(0deg, #fff 5%, rgba(255, 255, 255, .64) 56%, rgba(255, 255, 255, 0));
}

.vessel-about-card.is-expanded .vessel-about-collapsible {
    max-height: 2000px;
}

.vessel-about-card.is-expanded .vessel-about-collapsible::after {
    display: none;
}

.vessel-about-grid {
    display: grid;
    grid-template-columns: 1fr;
}

.vessel-about-text,
.vessel-spec-panel {
    padding: 20px;
}

.vessel-spec-panel {
    position: relative;
    border-top: 1px solid var(--line);
    padding-bottom: 56px;
}

.vessel-section-title-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.vessel-section-title-row h2,
.vessel-spec-panel h2,
.vessel-logbook-title,
.vessel-comments-title,
.vessel-related-title {
    margin: 0;
    font-family: "Gilroy-Bold", Arial, Helvetica, sans-serif;
    font-size: 30px;
    line-height: 1.15;
}

.vessel-section-title-row a {
    color: var(--blue-dark);
    font-family: "Roboto Condensed_Bold", Arial, Helvetica, sans-serif;
}

.vessel-about-text p {
    margin: 20px 0 0;
    font-size: 18px;
    line-height: 1.45;
}

.vessel-spec-panel ul {
    position: relative;
    margin: 12px 0 0;
    padding: 0;
    list-style: none;
}

.vessel-spec-panel li {
    position: relative;
    display: grid;
    grid-template-columns: 150px minmax(0, 1fr);
    gap: 16px;
    margin-bottom: 4px;
    font-size: 18px;
}

.vessel-spec-panel li p {
    margin: 0;
    text-align: right;
    overflow-wrap: anywhere;
}

.vessel-spec-panel li span {
    overflow-wrap: anywhere;
}

.vessel-site-age {
    margin-top: 42px;
    padding-left: 20px;
    color: #808080;
}

.vessel-share-row {
    position: absolute;
    right: 20px;
    bottom: 20px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.vessel-share-link {
    border: 0;
    padding: 0;
    background: transparent;
    color: #808080;
    cursor: pointer;
    font-family: "Roboto Condensed_regular", Arial, Helvetica, sans-serif;
    font-size: 18px;
}

.vessel-read-more,
.vessel-flat-more {
    display: block;
    width: 100%;
    min-height: 40px;
    padding: 8px 10px 10px;
    border: 0;
    border-radius: 0;
    background: #f5f5f5;
    color: #808080;
    font-family: "Roboto Condensed_regular", Arial, Helvetica, sans-serif;
    font-size: 18px;
    line-height: 1.2;
    text-align: center;
    text-transform: none;
}

.vessel-card-inner {
    padding: 20px;
}

.vessel-logbook-title span,
.vessel-comments-title span {
    margin-left: 10px;
    font-family: "Gilroy-Regular", Arial, Helvetica, sans-serif;
}

.vessel-log-entry {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    min-height: 73px;
    margin-top: 14px;
    padding: 6px 16px 6px 127px;
    border: 1px solid #dadada;
    border-radius: 5px;
    color: var(--ink);
    transition: .2s;
}

.vessel-log-entry:hover {
    border-color: transparent;
    box-shadow: 0 0 5px 1px rgba(104, 174, 239, .86);
}

.vessel-log-entry > img {
    position: absolute;
    top: 0;
    left: 0;
    width: 111px;
    height: 100%;
    min-height: 73px;
    object-fit: cover;
}

.vessel-log-name {
    margin: 0;
    color: #4c4c4c;
    font-family: "Roboto Condensed_Bold", Arial, Helvetica, sans-serif;
    font-size: 18px;
    overflow-wrap: anywhere;
}

.vessel-log-category,
.vessel-log-date {
    margin: 1px 0 0;
    color: #464646;
}

.vessel-log-indicators {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
    color: #464646;
}

.vessel-log-indicators span {
    display: inline-flex;
    align-items: center;
    gap: 5px;
}

.vessel-log-indicators img {
    width: 17px;
    height: 17px;
    object-fit: contain;
}

.vessel-comments-title {
    margin-bottom: 18px;
}

.vessel-comment-form {
    display: grid;
    grid-template-columns: 54px minmax(0, 1fr) auto;
    gap: 12px;
    align-items: start;
    margin-bottom: 22px;
}

.vessel-comment-form img {
    width: 51px;
    height: 51px;
    border-radius: 50%;
    object-fit: cover;
}

.vessel-comment-form textarea {
    min-height: 86px;
    resize: none;
    transition: min-height .22s ease, border-color .18s ease, box-shadow .18s ease;
}

.vessel-comment-form:focus-within textarea,
.vessel-comment-form.has-comment-draft textarea {
    min-height: 128px;
    border-color: transparent;
    box-shadow: 0 0 5px 1px rgba(104, 174, 239, .64);
    outline: none;
    resize: vertical;
}

.vessel-comment-form button {
    min-height: 38px;
    margin-top: 0;
}

.vessel-comment-list {
    display: grid;
    gap: 22px;
}

.vessel-comment {
    display: grid;
    grid-template-columns: 54px minmax(0, 1fr);
    gap: 10px;
}

.vessel-comment > img {
    width: 51px;
    height: 51px;
    border-radius: 50%;
    object-fit: cover;
}

.vessel-comment b {
    font-family: "Roboto Condensed_Bold", Arial, Helvetica, sans-serif;
}

.vessel-comment p {
    max-width: 560px;
    margin: 8px 0 0;
    font-size: 18px;
    overflow-wrap: anywhere;
}

.vessel-comment span {
    display: block;
    margin-top: 8px;
    color: var(--muted);
}

.comment-meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin-top: 8px;
    color: var(--muted);
}

.vessel-comment .comment-meta span,
.journal-comment .comment-meta span {
    display: inline;
    margin-top: 0;
}

.comment-meta form {
    margin: 0;
}

.comment-meta button {
    border: 0;
    padding: 0;
    background: transparent;
    color: #b42318;
    font: inherit;
    text-transform: none;
    cursor: pointer;
}

.comment-meta button:hover {
    color: #8f1d13;
    text-decoration: none;
}

.vessel-related-card {
    padding: 20px 0 20px 25px;
}

.vessel-related-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
    margin-top: 20px;
    padding-right: 20px;
}

.vessel-related-grid article {
    min-height: 100px;
    overflow: hidden;
    padding-bottom: 10px;
    border: 1px solid #c2c2c2;
    border-radius: 5px;
    background: var(--white);
    box-shadow: -6px 5px 6px 0 rgba(0, 0, 0, .07);
}

.vessel-related-grid img {
    display: block;
    width: 100%;
    height: 156px;
    object-fit: cover;
    transition: .3s;
}

.vessel-related-grid article:hover img {
    filter: brightness(70%);
}

.vessel-related-name {
    display: block;
    padding: 10px 13px 0;
    color: #363636;
    font-family: "Roboto Condensed_Bold", Arial, Helvetica, sans-serif;
    font-size: 18px;
    overflow-wrap: anywhere;
}

.vessel-related-grid article > p,
.vessel-related-grid article > span {
    display: block;
    margin: 7px 13px 0;
}

.vessel-related-grid article > p {
    font-size: 18px;
}

.vessel-related-grid span a {
    color: #363636;
}

.journal-breadcrumbs {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin-bottom: 18px;
    color: var(--muted);
}

.journal-breadcrumbs a,
.journal-breadcrumbs span {
    min-width: 0;
    color: var(--muted);
    overflow-wrap: anywhere;
}

.journal-breadcrumbs b {
    color: var(--ink);
    font-family: "Roboto Condensed_Bold", Arial, Helvetica, sans-serif;
    overflow-wrap: anywhere;
}

.journal-post,
.journal-related,
.journal-comments {
    position: relative;
    clear: both;
    margin-top: 20px;
    overflow: hidden;
    border: 1px solid #c2c2c2;
    border-radius: 6px;
    background: var(--white);
    box-shadow: -6px 5px 6px 0 rgba(0, 0, 0, .07);
}

.journal-author-card {
    position: relative;
    display: grid;
    grid-template-columns: 133px minmax(0, 1fr) auto;
    gap: 22px;
    align-items: start;
    min-height: 150px;
    padding: 20px;
}

.journal-author-card img {
    display: block;
    width: 133px;
    aspect-ratio: 1;
    object-fit: cover;
}

.journal-author-name {
    margin: -5px 0 0;
    font-size: 14px;
}

.journal-author-name a {
    color: #363636;
    font-family: "Roboto Condensed_Bold", Arial, Helvetica, sans-serif;
    font-size: 18px;
}

.journal-author-name a:hover,
.journal-author-fleet a:hover {
    color: #459ced;
    text-decoration: none;
}

.journal-author-name span {
    margin-left: 10px;
    color: #959595;
}

.journal-author-city {
    margin: 0;
    color: #959595;
    font-size: 14px;
}

.journal-author-fleet {
    max-width: 560px;
    margin: 9px 0 0;
    font-size: 16px;
    line-height: 1.35;
}

.journal-author-fleet a {
    color: #363636;
    font-family: "Roboto Condensed_Bold", Arial, Helvetica, sans-serif;
}

.journal-follow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 155px;
    min-height: 35px;
    border-radius: 3px;
    background: #459ced;
    color: var(--white);
    font-size: 16px;
}

.journal-owner-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
}

.journal-owner-actions form {
    margin: 0;
}

.journal-post h1 {
    margin: 0;
    padding: 0 20px 14px;
    color: #363636;
    font-family: "Gilroy-Bold", Arial, Helvetica, sans-serif;
    font-size: clamp(28px, 4vw, 38px);
    line-height: 1.12;
    overflow-wrap: anywhere;
}

.journal-text {
    margin: -10px 0 0;
    padding: 20px;
    font-size: 18px;
    line-height: 1.48;
    overflow-wrap: anywhere;
}

.journal-text + .journal-text {
    margin-top: 0;
    padding-top: 0;
}

.journal-text strong {
    font-family: "Roboto Condensed_Bold", Arial, Helvetica, sans-serif;
}

.journal-text em {
    font-style: italic;
}

.journal-photo {
    margin: 0;
}

.journal-photo img {
    display: block;
    width: 100%;
    max-height: 620px;
    object-fit: cover;
}

.journal-photo figcaption {
    padding: 10px 20px 0;
    color: #808080;
    font-size: 16px;
}

.journal-meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px 30px;
    margin: 0;
    padding: 20px 20px 14px;
    list-style: none;
}

.journal-meta li {
    display: inline-flex;
    align-items: center;
    min-height: 22px;
    color: #808080;
    font-size: 16px;
    line-height: 1.25;
}

.journal-meta a,
.journal-meta-button {
    display: inline-flex;
    align-items: center;
    min-height: 0;
    border: 0;
    padding: 0;
    background: transparent;
    color: #808080;
    cursor: pointer;
    font: inherit;
}

.journal-reactions {
    display: flex;
    align-items: center;
    gap: 22px;
    padding: 0 20px 20px;
}

.journal-reactions form {
    display: inline-flex;
    align-items: center;
    margin: 0;
}

.journal-reactions a,
.journal-reactions button {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 0;
    border: 0;
    border-radius: 0;
    padding: 0;
    background: transparent;
    color: #4c4c4c;
    font-family: "Roboto Condensed_regular", Arial, Helvetica, sans-serif;
    font-size: 14px;
    line-height: 1;
    cursor: pointer;
}

.journal-reactions span {
    display: inline-flex;
    align-items: center;
    min-height: 18px;
    line-height: 1;
}

.journal-reactions img {
    width: 18px;
    height: 18px;
    object-fit: contain;
}

.like-icon {
    display: inline-block;
    width: 18px;
    height: 18px;
    flex: 0 0 18px;
    background: #8f9aa5;
    mask: url("/img/s8_img9.png") center / contain no-repeat;
    -webkit-mask: url("/img/s8_img9.png") center / contain no-repeat;
    transition: background .18s ease, transform .18s ease;
}

.is-active > .like-icon,
.like-icon.is-active {
    background: var(--blue);
}

button.is-active .like-icon {
    transform: translateY(-1px);
}

.journal-neighbours {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
    min-height: 100px;
    padding: 15px;
    background: #f5f5f5;
}

.journal-neighbours a {
    position: relative;
    display: block;
    color: #4c4c4c;
}

.journal-neighbours a:hover {
    text-decoration: none;
}

.journal-neighbours p {
    margin: 0;
    color: #4c4c4c;
    font-family: "Gilroy-Bold", Arial, Helvetica, sans-serif;
    font-size: 30px;
    line-height: 1.1;
}

.journal-neighbours span {
    display: block;
    margin-top: 5px;
    font-size: 16px;
    line-height: 1.3;
    overflow-wrap: anywhere;
}

.journal-next {
    text-align: right;
}

.journal-section-title {
    margin: 0;
    font-family: "Gilroy-ExtraBold", Arial, Helvetica, sans-serif;
    font-size: 30px;
    line-height: 1.15;
}

.journal-section-title span {
    margin-left: 10px;
    font-family: "Gilroy-Regular", Arial, Helvetica, sans-serif;
}

.journal-related {
    padding: 25px 0 25px 25px;
}

.journal-related-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
    margin-top: 20px;
    padding-right: 25px;
}

.journal-related-grid article {
    min-height: 100px;
    overflow: hidden;
    padding-bottom: 10px;
    border: 1px solid #c2c2c2;
    border-radius: 5px;
    background: var(--white);
    box-shadow: -6px 5px 6px 0 rgba(0, 0, 0, .07);
}

.journal-related-grid article:hover img {
    filter: brightness(70%);
    transition: .3s;
}

.journal-related-grid img {
    display: block;
    width: 100%;
    height: 170px;
    object-fit: cover;
}

.journal-related-name {
    display: block;
    padding: 10px 13px 0;
    color: #363636;
    font-family: "Roboto Condensed_Bold", Arial, Helvetica, sans-serif;
    font-size: 18px;
    line-height: 1.25;
    overflow-wrap: anywhere;
}

.journal-related-grid span {
    display: block;
    margin: 7px 13px 0;
}

.journal-related-grid span a {
    color: #363636;
}

.journal-comments {
    padding: 25px;
}

.journal-comment-form {
    position: relative;
    display: grid;
    grid-template-columns: 97px minmax(0, 1fr);
    gap: 22px;
    margin: 20px 0 70px;
}

.journal-comment-form img {
    width: 97px;
    height: 97px;
    object-fit: cover;
}

.journal-comment-form textarea {
    width: 100%;
    max-width: 780px;
    min-height: 110px;
    resize: none;
    border: 1px solid #c9c9c9;
    border-radius: 5px;
    padding: 8px;
    transition: .3s;
}

.journal-comment-form:focus-within textarea,
.journal-comment-form.has-comment-draft textarea {
    min-height: 170px;
    border-color: transparent;
    box-shadow: 0 0 5px 1px rgba(104, 174, 239, .86);
    outline: none;
    resize: vertical;
}

.journal-comment-form button {
    grid-column: 2;
    justify-self: end;
    width: 130px;
    min-height: 37px;
    margin-top: 0;
    border-radius: 5px;
    font-family: "Roboto Condensed_Bold", Arial, Helvetica, sans-serif;
}

.journal-comment-list {
    display: grid;
    gap: 30px;
}

.journal-comment {
    display: grid;
    grid-template-columns: 51px minmax(0, 1fr);
    gap: 10px;
}

.journal-comment > img {
    width: 51px;
    height: 51px;
    object-fit: cover;
}

.journal-comment b {
    font-family: "Roboto Condensed_Bold", Arial, Helvetica, sans-serif;
}

.journal-comment p {
    max-width: 620px;
    margin: 10px 0 0;
    font-size: 18px;
    line-height: 1.4;
    overflow-wrap: anywhere;
}

.journal-comment span {
    display: block;
    margin-top: 10px;
    color: var(--muted);
}

.post-detail,
.comments,
.empty {
    padding: 24px;
}

.post-detail img {
    width: 100%;
    max-height: 480px;
    border-radius: 8px;
    margin: 16px 0;
    object-fit: cover;
}

.breadcrumbs {
    color: var(--muted);
    overflow-wrap: anywhere;
}

.comments {
    margin-top: 16px;
}

.comment {
    border-top: 1px solid var(--line);
    padding: 14px 0;
}

.comment span {
    margin-left: 8px;
    color: var(--muted);
    font-size: 13px;
}

.comment p {
    margin: 8px 0 0;
}

.comment-form {
    display: grid;
    gap: 10px;
    margin-top: 12px;
}

.footer {
    position: relative;
    clear: both;
    min-height: 525px;
    overflow: hidden;
    padding-top: 50px;
    padding-bottom: 20px;
    background-color: var(--white);
    background-image: url("../img/f_bg.png");
    background-position: center top;
    background-size: cover;
}

.footer-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 15px;
}

.footer-grid {
    display: grid;
    grid-template-columns: 3fr 3fr 4fr 2fr;
    gap: 0;
}

.f_t1 {
    margin: 0;
    color: var(--white);
    font-family: "Gilroy-Bold", Arial, Helvetica, sans-serif;
    font-size: 37.3px;
    text-transform: uppercase;
}

.f_t2 {
    margin: 20px 0 0;
    color: #a6a6a6;
    font-size: 14px;
}

.f_t3,
.f_t4 {
    margin: 3px 0 0;
    font-size: 14px;
}

.f_t3 a,
.f_t4 a {
    color: #a6a6a6;
    text-decoration: underline;
    transition: color .3s;
}

.f_t3 a:hover,
.f_t4 a:hover {
    color: var(--white);
    text-decoration: none;
}

.f_t5 {
    margin: 0 0 0 80px;
    color: var(--white);
    font-family: "Gilroy-Bold", Arial, Helvetica, sans-serif;
    font-size: 18px;
}

.f_ul,
.f_ul2 {
    position: relative;
    margin: 10px 0 0 80px;
    padding: 0;
    list-style: none;
}

.f_ul2 {
    padding-left: 25px;
}

.f_ul li,
.f_ul2 li {
    position: relative;
    margin-bottom: 10px;
    color: var(--white);
    font-size: 16px;
}

.f_ul li a,
.f_ul2 li a {
    color: var(--white);
    font-size: 16px;
    transition: color .3s;
}

.f_ul li a:hover,
.f_ul2 li a:hover {
    color: #a6a6a6;
    text-decoration: none;
}

.f_ul2 li {
    max-width: 220px;
}

.f_ul2 li img {
    position: absolute;
    top: 4px;
    left: -25px;
    display: block;
}

.f_ul2.x3 {
    padding-left: 35px;
}

.f_ul2.x3 li img {
    left: -35px;
}

.admin-summary {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
    gap: 10px;
    margin-bottom: 14px;
}

.admin-summary span,
.admin-notice,
.admin-table-wrap,
.admin-user-card {
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--white);
}

.admin-summary span {
    padding: 14px;
    color: var(--muted);
}

.admin-summary b {
    display: block;
    color: var(--ink);
    font-size: 24px;
}

.admin-dashboard-updated {
    align-self: center;
    border: 1px solid #d3e0ea;
    border-radius: 999px;
    padding: 8px 12px;
    background: #f7fbfd;
    color: var(--muted);
    font-size: 13px;
}

.admin-dashboard-hero {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 280px;
    gap: 16px;
    margin-bottom: 16px;
}

.admin-dashboard-storage-main,
.admin-dashboard-storage-side,
.admin-dashboard-card,
.admin-dashboard-panel {
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--white);
    box-shadow: var(--shadow-soft);
}

.admin-dashboard-storage-main {
    padding: 24px;
}

.admin-dashboard-storage-main h3 {
    margin: 4px 0 8px;
    color: var(--ink);
    font-size: 42px;
    line-height: 1;
}

.admin-dashboard-storage-main p,
.admin-dashboard-storage-side p {
    margin: 0;
    color: var(--muted);
    line-height: 1.45;
}

.admin-dashboard-storage-side {
    display: grid;
    justify-items: center;
    gap: 12px;
    padding: 18px;
    text-align: center;
}

.admin-storage-ring {
    display: grid;
    place-items: center;
    width: 148px;
    height: 148px;
    border-radius: 50%;
    background:
        radial-gradient(circle at center, var(--white) 58%, transparent 59%),
        conic-gradient(var(--blue) var(--admin-storage-used), #e5eef5 0);
}

.admin-storage-ring b {
    color: var(--ink);
    font-size: 28px;
    line-height: 1;
}

.admin-storage-ring span {
    margin-top: 42px;
    color: var(--muted);
    font-size: 12px;
}

.admin-dashboard-metrics {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin-bottom: 16px;
}

.admin-dashboard-card {
    display: grid;
    gap: 6px;
    padding: 16px;
    color: var(--ink);
}

.admin-dashboard-card:hover {
    color: var(--ink);
}

.admin-dashboard-card span,
.admin-dashboard-card em {
    color: var(--muted);
    font-style: normal;
    font-size: 13px;
}

.admin-dashboard-card b {
    font-size: 30px;
    line-height: 1;
}

.admin-dashboard-card.danger b {
    color: #b42318;
}

.admin-dashboard-card.admin b {
    color: var(--blue-dark);
}

.admin-dashboard-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}

.admin-dashboard-panel {
    display: grid;
    gap: 14px;
    padding: 18px;
}

.admin-dashboard-panel-wide {
    grid-column: span 2;
}

.admin-dashboard-panel-head {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 12px;
}

.admin-dashboard-panel-head h3 {
    margin: 0;
    color: var(--ink);
    font-size: 20px;
}

.admin-dashboard-panel-head span {
    color: var(--muted);
    font-size: 13px;
}

.admin-storage-breakdown,
.admin-health-list,
.admin-chart-list {
    display: grid;
    gap: 12px;
}

.admin-storage-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px 12px;
}

.admin-storage-row b,
.admin-chart-row b {
    color: var(--ink);
}

.admin-storage-row span,
.admin-chart-row span {
    display: block;
    margin-top: 3px;
    color: var(--muted);
    font-size: 13px;
}

.admin-storage-row strong {
    color: var(--blue-dark);
}

.admin-storage-bar,
.admin-chart-row i {
    grid-column: 1 / -1;
    overflow: hidden;
    height: 8px;
    border-radius: 999px;
    background: #e9f0f5;
}

.admin-storage-bar i,
.admin-chart-row i span {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, #0b8dc4, #42b883);
}

.admin-health-item {
    border: 1px solid #dce7ef;
    border-radius: 8px;
    padding: 14px;
    background: #f8fbfd;
}

.admin-health-item b {
    color: var(--ink);
    font-size: 24px;
}

.admin-health-item span,
.admin-health-item em {
    display: block;
    color: var(--muted);
    font-style: normal;
}

.admin-health-item.ok {
    border-color: #b8dcbf;
    background: #f2faf4;
}

.admin-health-item.danger {
    border-color: #f0b8b8;
    background: #fff7f7;
}

.admin-chart-row {
    display: grid;
    gap: 8px;
}

.admin-chart-row div {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 12px;
}

.admin-notice {
    margin-bottom: 14px;
    padding: 12px 14px;
    color: var(--blue-dark);
    font-family: "Roboto Condensed_Bold", Arial, Helvetica, sans-serif;
}

.admin-notice-danger {
    color: #b42318;
}

.admin-filter-panel {
    display: flex;
    align-items: end;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 16px;
    border: 1px solid #d9e4ec;
    border-radius: 8px;
    padding: 12px;
    background: var(--white);
    box-shadow: var(--shadow-soft);
}

.admin-filter-panel label {
    display: grid;
    gap: 5px;
    min-width: 220px;
    color: var(--muted);
    font-size: 12px;
    font-weight: 800;
}

.admin-filter-panel input,
.admin-filter-panel select {
    min-height: 36px;
    border: 1px solid #ccd8e2;
    border-radius: 5px;
    padding: 0 10px;
    background: #fbfdff;
    color: var(--ink);
}

.admin-catalog-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 14px;
}

.admin-catalog-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin-bottom: 22px;
}

.admin-catalog-grid .form-card h3 {
    margin: 0;
}

.admin-catalog-wide {
    grid-column: 1 / -1;
}

.managed-brand-card {
    display: grid;
    gap: 18px;
    padding: 22px;
    margin-bottom: 22px;
}

.managed-brand-head {
    align-items: center;
}

.managed-brand-head span,
.managed-model-edit-head p {
    display: block;
    margin: 7px 0 0;
    color: var(--muted);
}

.managed-model-list {
    display: grid;
    gap: 14px;
}

.managed-model-list-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.managed-model-list-head h3,
.managed-model-type-group h4 {
    margin: 0;
}

.managed-model-list-head span {
    color: var(--muted);
    font-size: 14px;
}

.managed-model-type-group {
    display: grid;
    gap: 10px;
    border: 1px solid #dce7f0;
    border-radius: 8px;
    padding: 14px;
    background: #f8fbfd;
}

.managed-model-type-group h4 {
    color: var(--ink);
    font-family: "Roboto Condensed_Bold", Arial, Helvetica, sans-serif;
    font-size: 20px;
}

.managed-model-rows {
    display: grid;
    gap: 8px;
}

.managed-model-row {
    display: grid;
    grid-template-columns: 64px minmax(0, 1fr) auto;
    gap: 12px;
    align-items: center;
    border: 1px solid #dbe6ef;
    border-radius: 6px;
    padding: 8px;
    background: var(--white);
}

.managed-model-row img {
    width: 64px;
    aspect-ratio: 4 / 3;
    border-radius: 5px;
    object-fit: cover;
    background: #dfe8ee;
}

.managed-model-row b {
    display: block;
    color: var(--ink);
    font-family: "Roboto Condensed_Bold", Arial, Helvetica, sans-serif;
    font-size: 18px;
    overflow-wrap: anywhere;
}

.managed-model-row span {
    display: inline-block;
    margin: 3px 10px 0 0;
    color: var(--muted);
    font-size: 13px;
}

.managed-model-edit {
    background: #fbfdff;
}

.managed-model-edit[hidden] {
    display: none;
}

.managed-model-edit-head {
    display: grid;
    grid-template-columns: 90px minmax(0, 1fr);
    gap: 14px;
    align-items: center;
}

.managed-model-edit-head img {
    width: 90px;
    aspect-ratio: 4 / 3;
    border-radius: 6px;
    object-fit: cover;
    background: #dfe8ee;
}

.managed-model-edit-head h3 {
    margin: 0;
    overflow-wrap: anywhere;
}

.managed-model-edit-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.checkbox-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px 12px;
}

.checkbox-list label {
    display: flex;
    align-items: center;
    gap: 8px;
    color: var(--ink);
    font-weight: 400;
}

.checkbox-list input {
    width: auto;
}

.admin-brand-access-card {
    margin-bottom: 22px;
}

.admin-brand-access-list {
    max-height: 330px;
    overflow: auto;
    border: 1px solid #dce7f0;
    border-radius: 8px;
    padding: 12px;
    background: #f8fbfd;
}

.admin-brand-access-list label {
    align-items: flex-start;
    border-bottom: 1px solid #e3ebf2;
    padding: 6px 0;
}

.admin-brand-access-list label:nth-last-child(-n + 2) {
    border-bottom: 0;
}

.admin-brand-access-list span {
    display: grid;
    gap: 2px;
    line-height: 1.2;
}

.admin-brand-access-list small {
    color: var(--muted);
    font-size: 12px;
}

.admin-tags-create {
    margin-bottom: 22px;
}

.admin-tags-bulk-form {
    display: grid;
    gap: 12px;
}

.admin-tags-bulk-actions {
    display: flex;
    justify-content: flex-end;
    margin-bottom: 18px;
}

.admin-tags-create-grid {
    display: grid;
    grid-template-columns: minmax(180px, 1.4fr) minmax(160px, 1fr) 120px auto;
    align-items: end;
    gap: 12px;
}

.admin-tags-table input[type="text"],
.admin-tags-table input[type="number"],
.admin-tags-table input:not([type]) {
    width: 100%;
    min-width: 110px;
    border: 1px solid #d8e5ef;
    border-radius: 5px;
    padding: 8px 10px;
    background: #fff;
}

.admin-tags-table td:nth-child(3) input {
    min-width: 76px;
}

.admin-tags-active {
    white-space: nowrap;
}

.managed-brand-static {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.managed-brand-static div {
    border: 1px solid #d7e4ee;
    border-radius: 6px;
    padding: 12px;
    background: #f6fafc;
}

.managed-brand-static span {
    display: block;
    color: var(--muted);
    font-size: 12px;
    text-transform: uppercase;
}

.managed-brand-static b {
    display: block;
    margin-top: 4px;
    color: var(--ink);
    font-family: "Roboto Condensed_Bold", Arial, Helvetica, sans-serif;
    font-size: 18px;
    overflow-wrap: anywhere;
}

.admin-table-wrap {
    overflow-x: auto;
    margin-bottom: 18px;
}

.admin-table {
    width: 100%;
    min-width: 760px;
    border-collapse: collapse;
    font-size: 14px;
}

.admin-table th,
.admin-table td {
    border-bottom: 1px solid var(--line);
    padding: 10px 12px;
    text-align: left;
    vertical-align: top;
    overflow-wrap: anywhere;
}

.admin-table th {
    color: var(--muted);
    font-family: "Roboto Condensed_Bold", Arial, Helvetica, sans-serif;
    text-transform: uppercase;
}

.admin-table td span {
    display: block;
    color: var(--muted);
    font-size: 13px;
}

.admin-sale-table td:first-child span,
.admin-sale-table td:nth-child(3) span,
.admin-sale-table td:nth-child(5) span {
    margin-top: 4px;
    font-size: 12px;
}

.admin-sale-table td:nth-child(2) {
    color: #2e7cc8;
    font-family: "Gilroy-Bold", Arial, Helvetica, sans-serif;
    white-space: nowrap;
}

.admin-support-table td:nth-child(3) {
    min-width: 320px;
    max-width: 560px;
}

.support-ticket-message {
    display: grid;
    gap: 8px;
}

.support-ticket-preview {
    margin: 0;
    color: var(--ink);
    line-height: 1.45;
}

.status-pill {
    display: inline-block !important;
    margin: 0 4px 4px 0;
    border-radius: 4px;
    padding: 3px 7px;
    background: #eef4fb;
    color: var(--muted) !important;
    font-size: 12px !important;
    font-family: "Roboto Condensed_Bold", Arial, Helvetica, sans-serif;
    text-transform: uppercase;
}

.status-pill.ok {
    background: #eaf8ef;
    color: #22733a !important;
}

.status-pill.danger {
    background: #fdecec;
    color: #b42318 !important;
}

.status-pill.admin {
    background: #eaf4ff;
    color: var(--blue-dark) !important;
}

.status-pill.muted-pill {
    background: #f3f5f7;
}

.admin-pagination {
    margin-top: 12px;
}

.admin-user-card {
    display: grid;
    grid-template-columns: minmax(0, 1.5fr) minmax(240px, .7fr);
    gap: 24px;
    padding: 22px;
    margin-bottom: 22px;
}

.admin-user-card h3 {
    margin: 0 0 14px;
    font-size: 28px;
}

.admin-dl {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin: 0;
}

.admin-dl div {
    border-radius: 6px;
    padding: 10px;
    background: var(--soft);
}

.admin-dl dt {
    color: var(--muted);
    font-size: 12px;
    text-transform: uppercase;
}

.admin-dl dd {
    margin: 3px 0 0;
    overflow-wrap: anywhere;
    font-family: "Roboto Condensed_Bold", Arial, Helvetica, sans-serif;
}

.admin-actions-panel {
    border-left: 1px solid var(--line);
    padding-left: 24px;
}

.admin-actions {
    display: grid;
    gap: 10px;
}

.admin-actions form,
.admin-table form {
    margin: 0;
}

.admin-reports-table td:nth-child(4) {
    max-width: 280px;
}

.admin-report-preview {
    margin: 0;
    color: var(--ink);
    line-height: 1.45;
}

.admin-report-actions {
    display: grid;
    gap: 8px;
    min-width: 118px;
}

.admin-report-page {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 330px;
    gap: 18px;
}

.admin-report-main {
    display: grid;
    gap: 18px;
}

.admin-report-side {
    min-width: 0;
}

.admin-report-block {
    border: 1px solid var(--line);
    border-radius: 8px;
    padding: 18px;
    background: var(--white);
}

.admin-report-block h3 {
    margin: 0 0 12px;
    font-size: 22px;
}

.admin-report-block p {
    margin: 0;
    color: var(--ink);
    line-height: 1.6;
    overflow-wrap: anywhere;
}

.admin-dl-wide {
    grid-template-columns: 1fr;
}

.admin-dl-wide dd {
    overflow-wrap: anywhere;
}

.admin-dl-wide dd span {
    display: block;
    margin-top: 4px;
    color: var(--muted);
    font-size: 13px;
}

.admin-report-actions-page {
    margin-top: 14px;
}

.danger-button {
    background: #b42318;
    text-transform: none;
}

.settings-dropdown a:hover,
.header-avatar:hover,
.top-guest .account a:hover,
.side-link:hover,
.meta-action:hover,
.catalog-brand-share:hover,
.profile-share-button:hover,
.profile-mytech-title:hover,
.profile-mytech-element span a:hover,
.vessel-owner-name a:hover,
.vessel-owner-follow:hover,
.vessel-owner-fleet span a:hover,
.vessel-section-title-row a:hover,
.vessel-share-link:hover,
.vessel-related-name:hover,
.vessel-related-grid span a:hover,
.home-sale-head a:hover,
.sale-list-body h3 a:hover,
.sale-list-journal:hover,
.journal-breadcrumbs a:hover,
.journal-author-name a:hover,
.journal-author-fleet a:hover,
.journal-meta a:hover,
.journal-meta-button:hover,
.journal-related-name:hover,
.journal-related-grid span a:hover,
.vessel-comment b a:hover,
.journal-comment b a:hover,
.admin-table a:hover {
    color: var(--blue);
    text-decoration: none;
}

.header-avatar:hover span,
.journal-neighbours a:hover p,
.journal-neighbours a:hover span {
    color: var(--blue);
}

.vessel-sale-panel button:hover,
.vessel-sale-panel button:focus-visible {
    color: #d8ecff;
    text-decoration: none;
}

@media (max-width: 560px) {
    .vessel-sale-phone-row,
    .vessel-sale-details {
        grid-template-columns: 1fr;
    }

    .vessel-sale-summary {
        display: grid;
    }

    .vessel-sale-summary strong {
        white-space: normal;
    }
}

@media (max-width: 1200px) {
    .home-brand-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .home-sale-grid {
        grid-template-columns: repeat(2, minmax(0, 380px));
        justify-content: center;
    }

    .sale-filter-panel {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .hero-guest-inner {
        grid-template-columns: 1fr;
    }

    .hero.hero-guest .hero-guest-copy h1,
    .hero-guest-copy h1,
    .hero-guest .hero-categories,
    .hero-guest .hero-example {
        max-width: 100%;
        text-align: center;
    }

    .hero-search {
        display: grid;
        grid-template-columns: 1fr;
        gap: 10px;
        justify-items: center;
    }

    .hero-search input,
    .hero-search button {
        width: 280px;
    }

    .hero-guest-stats {
        margin-top: 40px;
        padding: 0;
        text-align: center;
        background-image: none;
    }

    .hero-guest-stats li {
        margin-bottom: 20px;
    }
}

@media (max-width: 900px) {
    .top {
        flex-wrap: wrap;
        padding: 16px 20px;
    }

    .account-auth {
        flex-wrap: wrap;
        justify-content: flex-end;
    }

    .header-search-form:hover,
    .header-search-form:focus-within,
    .header-search-form.has-query {
        width: min(260px, calc(100vw - 40px));
    }

    .top-guest {
        display: block;
        min-height: 0;
        padding: 10px 20px 20px;
        text-align: center;
    }

    .top-guest .brand {
        display: block;
        line-height: normal;
    }

    .top-guest .account {
        justify-content: center;
        min-width: 0;
        margin: 12px 0 0;
        padding-right: 0;
    }

    .nav {
        flex-basis: 100%;
    }

    .hero,
    .auth-card,
    .layout,
    .profile-page,
    .profile-owner-header,
    .vessel-page,
    .vessel-mini,
    .post-card {
        grid-template-columns: 1fr;
    }

    .guest-shell > .layout {
        margin-top: 22px;
    }

    .sidebar {
        position: static;
        max-height: none;
        overflow: visible;
    }

    .hero-guest-inner {
        grid-template-columns: 1fr;
        gap: 28px;
    }

    .home-brands-head {
        align-items: flex-start;
        flex-direction: column;
    }

    .guest-feed-head {
        align-items: flex-start;
        flex-direction: column;
    }

    .section-head-row {
        align-items: flex-start;
        flex-direction: column;
    }

    .home-brand-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .home-sale-head,
    .sale-page-head {
        display: grid;
    }

    .home-sale-grid,
    .sale-filter-panel,
    .sale-list-card {
        grid-template-columns: 1fr;
    }

    .home-sale-item {
        width: min(380px, 100%);
        justify-self: center;
    }

    .sale-list-photo img {
        width: 100%;
        height: auto;
        max-height: 260px;
    }

    .sale-list-side {
        justify-items: start;
        text-align: left;
    }

    .hero-search {
        grid-template-columns: 1fr;
        margin-top: 28px;
    }

    .hero-guest-stats {
        display: block;
        padding: 0;
        text-align: center;
        background-image: none;
    }

    .hero-guest-stats li {
        margin: 0;
    }

    .legacy-auth .s7_h1 {
        font-size: 35px;
    }

    .inline-form,
    .stats,
    .catalog-grid,
    .catalog-brand-hero,
    .catalog-model-hero,
    .catalog-model-info,
    .managed-brand-head,
    .two,
    .specs,
    .footer-grid,
    .admin-dashboard-hero,
    .admin-dashboard-metrics,
    .admin-dashboard-grid,
    .admin-summary,
    .admin-catalog-grid,
    .bookmark-list-item,
    .admin-report-page,
    .checkbox-list,
    .admin-user-card,
    .admin-dl {
        grid-template-columns: 1fr;
    }

    .bookmark-list-thumb {
        width: 100%;
        max-height: 220px;
    }

    .bookmark-remove-form {
        width: 100%;
    }

    .bookmark-remove-form button {
        width: 100%;
    }

    .admin-catalog-head {
        display: grid;
    }

    .admin-catalog-wide {
        grid-column: auto;
    }

    .admin-dashboard-panel-wide {
        grid-column: auto;
    }

    .managed-model-row {
        grid-template-columns: 58px minmax(0, 1fr);
    }

    .managed-model-row button {
        grid-column: 1 / -1;
        justify-self: start;
    }

    .managed-brand-static {
        grid-template-columns: 1fr;
    }

    .catalog-brand-hero > img,
    .managed-brand-head > img {
        width: 120px;
    }

    .catalog-model-hero > img {
        min-height: 240px;
    }

    .catalog-model-summary {
        padding: 22px;
    }

    .vessel-hero-panel {
        padding-right: 20px;
    }

    .vessel-stat-boxes {
        position: static;
        margin-top: 18px;
    }

    .vessel-owner-follow {
        position: static;
        display: inline-block;
        margin-top: 6px;
    }

    .vessel-about-grid,
    .vessel-related-grid,
    .journal-author-card,
    .journal-related-grid,
    .journal-neighbours {
        grid-template-columns: 1fr;
    }

    .vessel-related-card {
        padding-right: 20px;
    }

    .vessel-comment-form {
        grid-template-columns: 54px minmax(0, 1fr);
    }

    .vessel-comment-form button {
        grid-column: 2;
        justify-self: start;
    }

    .journal-follow {
        width: fit-content;
    }

    .journal-next {
        text-align: left;
    }

    .journal-related {
        padding-right: 20px;
    }

    .journal-related-grid {
        padding-right: 0;
    }

    .journal-comment-form {
        grid-template-columns: 64px minmax(0, 1fr);
        gap: 14px;
    }

    .journal-comment-form img {
        width: 64px;
        height: 64px;
    }

    .journal-comment-form button {
        grid-column: 2;
        justify-self: start;
    }

    .profile-owner-header {
        gap: 0;
        overflow: visible;
    }

    .profile-owner-avatar {
        width: 100%;
        height: auto;
        max-height: 280px;
        aspect-ratio: 16 / 9;
        border-radius: 6px 6px 0 0;
    }

    .profile-owner-text {
        padding: 18px;
    }

    .profile-owner-indicators {
        grid-template-columns: repeat(auto-fit, minmax(92px, 1fr));
        padding: 0 18px 18px;
    }

    .profile-accordion {
        min-height: 58px;
        font-size: 22px;
    }

    .vessel-log-entry {
        display: grid;
        padding-right: 12px;
    }

    .footer {
        padding-top: 20px;
    }

    .f_t1 {
        font-size: 30px;
    }

    .f_t5 {
        margin-left: 0;
        margin-top: 30px;
    }

    .f_ul,
    .f_ul2 {
        margin-left: 0;
    }

    .admin-actions-panel {
        border-left: 0;
        border-top: 1px solid var(--line);
        padding-top: 18px;
        padding-left: 0;
    }
}

@media (max-width: 768px) {
    .hero-guest-inner {
        padding-top: 30px;
    }

    .home-brand-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .home-sale-grid {
        gap: 12px;
    }

    .home-sale-item {
        height: 238px;
    }

    .home-sale-title {
        max-width: calc(100% - 92px);
        font-size: 21px;
    }

    .home-sale-price {
        font-size: 20px;
    }

    .manufacturer-request-strip {
        padding: 16px;
    }

    .manufacturer-request-strip p {
        font-size: 16px;
    }

    .manufacturer-request-card {
        padding: 24px;
    }

    .manufacturer-request-actions {
        flex-direction: column-reverse;
    }

    .manufacturer-request-actions button {
        width: 100%;
    }

    .legal-page {
        padding: 20px;
    }

    .legal-requisites {
        grid-template-columns: 1fr;
    }

    .profile-owner-text h2 {
        font-size: 26px;
    }

    .profile-owner-indicators {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .profile-accordion {
        padding-left: 16px;
        padding-right: 16px;
        font-size: 20px;
    }

    .profile-accordion-shell .profile-accordion {
        padding-right: 152px;
    }

    .profile-accordion-action {
        right: 44px;
        min-height: 34px;
        padding: 0 12px;
        font-size: 12px;
    }

    .profile-accordion-panel {
        --profile-accordion-padding-x: 0;
        --profile-accordion-padding-y: 14px;
    }

    .profile-mytech {
        grid-template-columns: 1fr;
    }

    .hero.hero-guest .hero-guest-copy h1 {
        font-size: 24px;
    }

    .hero-guest .hero-categories {
        font-size: 14px;
    }

    .legacy-auth .s7_h1 {
        font-size: 25px;
    }

    .legacy-auth .s7_ul {
        max-width: 250px;
    }

    .legacy-auth .s7_ul li {
        margin-bottom: 10px;
    }

    .legacy-auth .s7_ul li p {
        top: 0;
        left: 0;
        margin-top: 0;
        text-align: left;
    }

    .legacy-auth .s7_t2 {
        max-width: 250px;
        text-align: left;
    }
}

@media (max-width: 520px) {
    .profile-edit-preview {
        grid-template-columns: 1fr;
    }

    .profile-edit-preview img {
        width: 100%;
        height: auto;
        max-height: 220px;
        aspect-ratio: 1 / 1;
    }

    .home-brands-tabs,
    .home-brands-tabs button {
        width: 100%;
    }

    .home-brand-grid {
        grid-template-columns: 1fr;
    }
}

.release-section {
    margin-top: 28px;
}

.release-section h3 {
    margin: 0 0 14px;
    color: #163d55;
    font-size: 24px;
    font-weight: 500;
}

.search-page-form {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 14px;
    align-items: end;
    margin-bottom: 22px;
}

.release-card-grid,
.release-user-grid,
.release-link-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
    gap: 14px;
}

.release-card {
    overflow: hidden;
    border: 1px solid #dce8ef;
    border-radius: 8px;
    background: #fff;
}

.release-card img {
    width: 100%;
    aspect-ratio: 16 / 10;
    object-fit: cover;
}

.release-card h4,
.release-card p,
.release-card span {
    margin: 0;
    padding: 0 14px;
}

.release-card h4 {
    padding-top: 14px;
    color: #173d55;
    font-size: 18px;
    font-weight: 500;
}

.release-card p {
    padding-top: 8px;
    color: #667985;
    line-height: 1.45;
}

.release-card span {
    display: block;
    padding-top: 10px;
    padding-bottom: 14px;
    color: #0d78a8;
    font-size: 13px;
}

.release-text-card {
    padding: 18px 0 4px;
}

.release-user-card,
.release-link-grid a,
.release-list-item {
    display: block;
    border: 1px solid #dce8ef;
    border-radius: 8px;
    background: #fff;
    text-decoration: none;
    transition: color .16s ease, border-color .16s ease, box-shadow .16s ease;
}

.release-user-card {
    padding: 16px;
}

.release-user-card img {
    width: 58px;
    height: 58px;
    border-radius: 50%;
    object-fit: cover;
    margin-bottom: 10px;
}

.release-user-card span,
.release-link-grid a {
    color: #173d55;
    font-weight: 500;
}

.release-user-card small,
.release-link-grid span,
.release-list-item small,
.release-list-item span {
    display: block;
    margin-top: 6px;
    color: #71838d;
    font-weight: 400;
}

.release-link-grid a {
    padding: 14px 16px;
}

.release-list {
    display: grid;
    gap: 10px;
}

.release-list-item {
    padding: 16px 18px;
}

.release-list-item b {
    color: #173d55;
    font-weight: 500;
}

.release-list-item.is-unread {
    border-color: #0f8dc0;
    box-shadow: 0 8px 22px rgba(14, 116, 158, .12);
}

.bookmark-list-item {
    display: grid;
    grid-template-columns: 104px minmax(0, 1fr) auto;
    align-items: center;
    gap: 14px;
    border: 1px solid #dce8ef;
    border-radius: 8px;
    padding: 10px 12px;
    background: #fff;
}

.bookmark-list-thumb {
    display: block;
    width: 104px;
    aspect-ratio: 4 / 3;
    overflow: hidden;
    border-radius: 6px;
    background: #eef4f8;
}

.bookmark-list-thumb img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}

.bookmark-list-body {
    min-width: 0;
    color: inherit;
    text-decoration: none;
}

.bookmark-list-body b {
    display: block;
    color: #173d55;
    font-weight: 500;
    overflow-wrap: anywhere;
}

.bookmark-list-body span,
.bookmark-list-body small {
    display: block;
    margin-top: 6px;
    color: #71838d;
    font-weight: 400;
}

.bookmark-remove-form {
    align-self: center;
}

.bookmark-remove-form button {
    min-height: 36px;
    border: 1px solid #d1dfeb;
    border-radius: 5px;
    padding: 0 14px;
    background: #fff;
    color: #2e7cc8;
    cursor: pointer;
    font-weight: 500;
    transition: border-color .16s ease, background .16s ease, color .16s ease;
}

.bookmark-remove-form button:hover {
    border-color: #2e7cc8;
    background: #eef7ff;
    color: #185f9d;
}

.release-actions-row {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
}

.inline-action-form,
.meta-row form,
.vessel-hero-actions form,
.journal-owner-actions form,
.profile-owner-actions form {
    display: inline-flex;
    margin: 0;
}

.profile-follow-button,
.profile-card-follow,
.journal-follow,
.vessel-owner-follow,
.catalog-brand-share,
.catalog-model-follow,
.vessel-outline-action,
.meta-action {
    cursor: pointer;
}

button.profile-follow-button,
button.profile-card-follow,
button.journal-follow,
button.vessel-owner-follow,
button.catalog-brand-share,
button.catalog-model-follow,
button.vessel-outline-action,
button.meta-action {
    border: 0;
    font: inherit;
}

.profile-follow-button,
.profile-card-follow,
.profile-share-button,
.profile-owner-actions .report-button,
.journal-follow,
.vessel-owner-follow,
.catalog-brand-share,
.catalog-model-follow,
.vessel-outline-action,
.meta-action {
    letter-spacing: 0;
    text-transform: none;
}

.profile-owner-actions .profile-follow-button,
.profile-owner-actions .profile-share-button,
.profile-owner-actions .report-button {
    width: auto;
    min-width: 0;
    min-height: 34px;
    box-sizing: border-box;
    border-radius: 5px;
    padding: 0 14px;
    font-family: "Roboto Condensed_regular", Arial, Helvetica, sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 1;
}

.profile-owner-actions .profile-follow-button:not(.profile-message-button) {
    border: 1px solid var(--blue);
    background: var(--blue);
    color: var(--white);
}

.profile-owner-actions .profile-message-button,
.profile-owner-actions .profile-share-button,
.profile-owner-actions .report-button {
    border: 1px solid #cddde8;
    background: #f6fafc;
    color: var(--blue-dark);
}

[data-ajax-social].is-loading button,
[data-ajax-like].is-loading button,
[data-ajax-comment-form].is-loading button,
[data-ajax-comment-delete].is-loading button {
    opacity: .72;
    pointer-events: none;
}

.profile-message-button {
    background: #eef7fb;
    color: #0d78a8;
}

.conversation-box {
    display: grid;
    gap: 12px;
    margin-bottom: 18px;
}

.conversation-message {
    max-width: 76%;
    padding: 14px 16px;
    border: 1px solid #dce8ef;
    border-radius: 8px;
    background: #fff;
}

.conversation-message.is-own {
    justify-self: end;
    background: #e9f6fb;
    border-color: #bfe1ee;
}

.conversation-message b {
    color: #173d55;
    font-weight: 500;
}

.conversation-message p {
    margin: 6px 0;
    color: #314b5b;
    line-height: 1.45;
}

.conversation-message small {
    color: #71838d;
}

.premium-grid {
    margin-bottom: 20px;
}

@media (max-width: 720px) {
    .search-page-form {
        grid-template-columns: 1fr;
    }

    .conversation-message {
        max-width: 100%;
    }
}
