/* ===== YouTube embed (Quill video blot) ===== */
.ql-video,
.post-content-block iframe {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 9;
    border: none;
}

/* ===== Breadcrumb ===== */
.breadcrumb {
    display: flex;
    align-items: center;
    gap: 4px;
    margin-bottom: 14px;
}

.breadcrumb__item {
    font-size: 14px;
    color: #64748b;
    text-decoration: none;
    transition: color 0.15s;
    overflow-wrap: break-word;
}
.breadcrumb__item:hover { color: #374151; }

.breadcrumb__item--last {
    color: #64748b;
}
.breadcrumb__item--last:hover { color: #1f2933; }

.breadcrumb__sep {
    font-size: 14px;
    color: #94a3b8;
    line-height: 1;
}

/* ===== POST DETAIL ===== */
.post-meta-card,
.boat-info-card.post-meta-card {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 0;
    padding: 14px 20px 14px 0;
}
.post-meta-card .boat-owner-link {
    min-width: 0;
}
.post-meta-card__divider {
    width: 32px;
    flex-shrink: 0;
}
.post-meta-card__boat-link {
    display: flex;
    align-items: center;
    gap: 10px;
    text-decoration: none;
    color: #1f2933;
    flex-shrink: 0;
}
.post-meta-card__boat-link:hover .post-meta-card__boat-name { text-decoration: underline; }
.post-meta-card__boat-img {
    width: 56px;
    height: 42px;
    object-fit: cover;
    border-radius: 6px;
    flex-shrink: 0;
}

.fb-apply .plus {
    margin-right: 6px;
    font-weight: bold;
}

.post-meta-card__boat-name {
    font-size: 14px;
    font-weight: 500;
    color: #1f2933;
    line-height: 1.4;
    max-width: 400px;
    overflow-wrap: break-word;
    min-width: 0;
}
.post-content-header {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
}
.post-content-header__title {
    margin: 0;
    flex: 1;
    min-width: 0;
}
.post-content-header__actions {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;
    margin-bottom: 0;
}
.boat-detail__actions a.sub-model-unsub {
    display: inline-flex;
    align-items: center;
    line-height: 1;
    box-sizing: border-box;
    background: #fff;
    border: 1px solid #d1d5db;
    color: #374151;
}
.boat-detail__actions a.sub-model-unsub:hover {
    background: #f9fafb;
}
.boat-detail__actions .fb-apply {
    display: inline-flex;
    align-items: center;
    border: 1px solid transparent;
    padding: 7px 18px;
    line-height: 1;
    font-weight: 500;
}

.boat-detail__actions .boat-detail__delete-btn {
    -webkit-appearance: none;
    appearance: none;
    box-sizing: border-box;
    background: #fff;
    border: 1px solid #fca5a5;
    color: #dc2626;
    line-height: 1;
    padding: 7px 18px;
}
.boat-detail__actions .boat-detail__delete-btn:hover {
    background: #fff5f5;
}
.post-content-header__actions a.sub-model-unsub {
    display: inline-flex;
    align-items: center;
    line-height: 1;
    box-sizing: border-box;
    background: #fff;
    border: 1px solid #d1d5db;
    color: #374151;
}
.post-content-header__actions a.sub-model-unsub:hover {
    background: #f9fafb;
}
.post-content-header__actions .boat-detail__delete-btn {
    background: #fff;
    border: 1px solid #fca5a5;
    color: #dc2626;
}
.post-content-header__actions .boat-detail__delete-btn:hover {
    background: #fff5f5;
}
.boat-info-desc.post-content-block {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    padding: 20px;
    margin-bottom: 16px;
    display: flex;
    flex-direction: column;
    gap: 16px;
}
.post-img {
    display: block;
    max-width: 100%;
    max-height: 560px;
    width: auto;
    height: auto;
    margin: 0;
    border-radius: 8px;
    object-fit: contain;
    align-self: flex-start;
}
.post-gallery-inline {
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.post-content-block img:not(.post-img) {
    max-width: 100%;
    max-height: 560px;
    height: auto;
    border-radius: 6px;
}
.post-draft-notice {
    display: flex;
    flex-direction: column;
    gap: 4px;
    background: #fff7ed;
    border: 1px solid #fed7aa;
    border-radius: 12px;
    padding: 12px 16px;
    margin-bottom: 16px;
}
.post-draft-notice__title {
    font-size: 14px;
    font-weight: 600;
    color: #c2410c;
}
.post-draft-notice__hint {
    font-size: 13px;
    color: #9a3412;
}
.post-report-row {
    display: flex;
    justify-content: flex-end;
}
.post-inline-price {
    font-size: 15px;
    color: #374151;
    margin: 0;
}
.post-content-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-top: 1px solid #f0f2f4;
    padding-top: 12px;
    gap: 12px;
}
.post-content-footer__left {
    display: flex;
    align-items: center;
    gap: 8px;
}
.post-content-footer__right {
    display: flex;
    align-items: center;
    gap: 12px;
}
.post-content-footer .feed-card__time {
    font-size: 12px;
    color: #9ca3af;
}
.post-content-footer .feed-card__category {
    font-size: 12px;
    color: #6b7280;
    background: #f3f4f6;
    border-radius: 6px;
    padding: 2px 8px;
}

/* ===== ОСНОВНОЙ КОНТЕЙНЕР СТРАНИЦЫ ===== */
.boat-detail__title,
.boat-detail__actions,
.boat-info-card,
.boat-description,
.boat-gallery,
.post-content-block,
.post-main-image,
.post-gallery,
.post-price,
.post-mention,
.comments-section, .comment-form, #posts, .linked-projects-card, .link-requests,
.post-draft-notice {
    max-width: 800px;
}

/* ===== Упоминание компании ===== */
.post-mention {
    margin-top: 20px;
    padding: 16px 20px;
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
}
.post-mention__title {
    font-size: 18px;
    font-weight: 600;
    color: #1f2933;
    margin: 0;
}
.post-mention__company-link {
    color: #1f2933;
    text-decoration: underline;
    text-decoration-color: #9ca3af;
    text-underline-offset: 3px;
    transition: color 0.15s, text-decoration-color 0.15s;
}
.post-mention__company-link:hover {
    color: #0B1F33;
    text-decoration-color: #0B1F33;
}
.post-mention__review {
    margin: 10px 0 0;
    font-size: 14px;
    color: #374151;
    line-height: 1.6;
}

/* ===== БЛОК ПРИВЯЗКИ К ПРОЕКТАМ ===== */
.linked-projects-card {
    padding: 16px 20px;
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    margin-bottom: 16px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.linked-projects-card__header {
    font-size: 14px;
    font-weight: 500;
    color: #374151;
    margin: 0;
}

.linked-projects-card__row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.linked-projects-card__text {
    font-size: 14px;
    color: #374151;
}

.linked-projects-card__text a {
    color: #0B1F33;
    font-weight: 600;
    text-decoration: none;
}
.linked-projects-card__text a:hover { text-decoration: underline; }

/* ===== ЗАГОЛОВОК ===== */
.boat-detail__title {
    font-size: 26px;
    font-weight: 700;
    color: #1f2933;
    margin: 0 0 14px 0;
    line-height: 1.2;
}
.boat-detail__ex {
    color: #9ca3af;
    font-weight: 400;
}

/* ===== КНОПКИ ДЕЙСТВИЙ ===== */
.boat-detail__actions {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 20px;
}

.fb-apply {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 7px 18px;
    background: #f97316;
    color: #fff;
    border: none;
    border-radius: 10px;
    font-size: 13px;
    font-weight: 600;
    line-height: 1;
    cursor: pointer;
    transition: background 0.15s;
    font-family: inherit;
    white-space: nowrap;
    min-width: 140px;
    text-align: center;
    box-sizing: border-box;
}
.fb-apply:hover { background: #ea6c0b; }

.sub-model-unsub {
    display: inline-flex;
    align-items: center;
    line-height: 1;
    padding: 7px 18px;
    background: #dde2e8;
    color: #1f2937;
    border: none;
    border-radius: 10px;
    font-size: 13px;
    font-weight: 500;
    cursor: pointer;
    transition: background 0.15s;
    font-family: inherit;
    white-space: nowrap;
}
.sub-model-unsub:hover { background: #cfd4db; }


/* ===== ГАЛЕРЕЯ ===== */
.boat-gallery {
    margin-bottom: 16px;
}
.boat-gallery__main {
    position: relative;
    border-radius: 12px;
    overflow: hidden;
    aspect-ratio: 16/9;
    background: #000;
}
.boat-gallery__main-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: opacity 0.18s ease;
    display: block;
}
.boat-gallery__arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(0,0,0,0.38);
    border: none;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: #fff;
    transition: background 0.15s;
}
.boat-gallery__arrow:hover { background: rgba(0,0,0,0.62); }
.boat-gallery__arrow--prev { left: 12px; }
.boat-gallery__arrow--next { right: 12px; }
.boat-gallery__thumbs {
    display: flex;
    gap: 8px;
    margin-top: 8px;
    overflow-x: auto;
    scrollbar-width: none;
    padding-bottom: 2px;
}
.boat-gallery__thumbs::-webkit-scrollbar { display: none; }
.boat-gallery__thumb {
    flex-shrink: 0;
    width: 110px;
    aspect-ratio: 16/9;
    object-fit: cover;
    border-radius: 6px;
    cursor: pointer;
    border: 1.5px solid transparent;
    box-sizing: border-box;
}
.boat-gallery__thumb--active {
    border-color: #6b8fae;
}

/* ===== СТАРОЕ ГЛАВНОЕ ФОТО (оставляем для совместимости) ===== */
.boat-detail__main-img {
    width: 100%;
    aspect-ratio: 16/9;
    object-fit: cover;
    border-radius: 12px;
    margin-bottom: 16px;
    display: block;
}

/* ===== ОБЪЕДИНЁННЫЙ БЛОК ВЛАДЕЛЬЦА ===== */
.boat-info-card {
    display: flex;
    flex-direction: column;
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    padding: 16px 20px;
    margin-bottom: 16px;
    gap: 14px;
}

.boat-info-desc {
    font-size: 15px;
    line-height: 1.7;
    color: #374151;
}
.boat-info-desc p { margin: 0 0 12px; }
.boat-info-desc p:last-child { margin-bottom: 0; }
.boat-info-desc ul,
.boat-info-desc ol { padding-left: 20px; margin: 0 0 12px; }
.boat-info-desc ul:last-child,
.boat-info-desc ol:last-child { margin-bottom: 0; }

.post-body-text {
    font-size: 15px;
    line-height: 1.7;
    color: #374151;
}
.post-body-text p { margin: 0 0 12px; }
.post-body-text p:last-child { margin-bottom: 0; }
.post-body-text ul,
.post-body-text ol { padding-left: 20px; margin: 0 0 12px; }
.post-body-text ul:last-child,
.post-body-text ol:last-child { margin-bottom: 0; }
.post-body-text h2 { font-size: 20px; font-weight: 700; margin: 0 0 10px; }
.post-body-text h3 { font-size: 17px; font-weight: 700; margin: 0 0 8px; }
.post-body-text img { max-width: 100%; max-height: 480px; height: auto; border-radius: 8px; display: block; margin: 0 0 4px; }
.post-body-text iframe { max-width: 100%; border-radius: 8px; }
.boat-story-title {
    font-size: 17px;
    font-weight: 700;
    line-height: 1.25;
    color: #1f2933;
    margin: 0 0 12px;
}

.boat-info-footer {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 16px;
    padding-top: 14px;
    border-top: 1px solid #f0f2f4;
}

.boat-specs__left {
    display: flex;
    flex-wrap: wrap;
    gap: 12px 28px;
}

.boat-specs__right {
    display: flex;
    align-items: center;
    gap: 14px;
    flex-shrink: 0;
}

.boat-info-report {
    display: flex;
    justify-content: flex-end;
}

.boat-stat-item {
    display: flex;
    align-items: center;
    gap: 6px;
}

.boat-stat-icon {
    color: #9ca3af;
    flex-shrink: 0;
}

.boat-stat-num {
    font-size: 14px;
    font-weight: 400;
    color: #1f2933;
}

.boat-stat-item--btn {
    background: none;
    border: none;
    cursor: pointer;
    padding: 0;
    font-family: inherit;
    transition: opacity 0.15s;
}
.boat-stat-item--btn:hover { opacity: 0.7; }
.boat-stat-item--btn .boat-stat-icon { color: #f87171; }

.boat-spec {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.boat-spec__label {
    font-size: 11px;
    color: #9ca3af;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.boat-spec__value {
    font-size: 15px;
    font-weight: 400;
    color: #1f2933;
}


.boat-owner-info {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 2px;
    min-width: 0;
}

.boat-owner-fullname {
    font-size: 13px;
    color: #6b7280;
}

.boat-owner-sails {
    font-size: 13px;
    color: #6b7280;
    overflow-wrap: break-word;
    word-break: break-word;
}

.boat-owner-sails__link {
    color: #4b5563;
    text-decoration: none !important;
    font-weight: 500;
}
.boat-owner-sails__link:hover { color: #0B1F33; }

.boat-owner-city {
    font-size: 12px;
    color: #9ca3af;
}

/* ===== ОПИСАНИЕ ===== */
.boat-description {
    padding: 20px 24px;
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 16px;
    font-size: 15px;
    line-height: 1.7;
    color: #374151;
}
.boat-description p { margin: 0 0 12px; }
.boat-description p:last-child { margin-bottom: 0; }

/* ===== СТАРАЯ СЕТКА ГАЛЕРЕИ (удалена) ===== */
.gallery-row-4 img {
    width: 100%;
    aspect-ratio: 16/9;
    object-fit: cover;
    border-radius: 8px;
}

/* ===== БЛОК ВЛАДЕЛЕЦ + СТАТИСТИКА ===== */
.boat-info-block {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    background: #fff;
    border-radius: 12px;
    padding: 14px 16px;
    margin-top: 16px;
    flex-wrap: wrap;
}

.boat-info-block__owner {}

.boat-owner-link {
    display: flex;
    align-items: center;
    gap: 10px;
}

.boat-owner-link > a {
    display: inline-flex;
    flex-shrink: 0;
    line-height: 0;
}

.boat-owner-avatar {
    width: 44px;
    height: 44px;
    border-radius: 10px;
    object-fit: cover;
    flex-shrink: 0;
    border: 1px solid #e5e7eb;
}
.boat-owner-avatar--placeholder {
    width: 44px;
    height: 44px;
    border-radius: 10px;
    background: #0B1F33;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    font-weight: 700;
    flex-shrink: 0;
}

.boat-owner-name {
    display: inline;
    font-size: 15px;
    font-weight: 600;
    color: #4b5563;
    text-decoration: none !important;
    transition: color 0.15s;
}
.boat-owner-name:hover { color: #0B1F33; }

.boat-info-block__stats {
    display: flex;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
}

.boat-stat {
    font-size: 13px;
    color: #4b5563;
    white-space: nowrap;
}
.boat-stat strong {
    color: #1f2933;
}

/* ===== КНОПКИ ===== */
.btn {
    padding: 8px 20px;
    font-weight: 600;
    border-radius: 12px;
    border: none;
    cursor: pointer;
    text-align: center;
    font-size: 14px;
    transition: background-color 0.2s ease, transform 0.2s ease;
}

.edit-btn {
    background-color: #6b7280;
    color: white;
    text-decoration: none;
    display: inline-block;
}
.edit-btn:hover {
    background-color: #4b5563;
    transform: translateY(-1px);
}

.sub-btn {
    background-color: #0B1F33;
    color: white;
    white-space: nowrap;
}
.sub-btn:hover {
    background-color: #13477a;
    transform: translateY(-1px);
}
.btn-subscribed {
    background-color: #e5e7eb !important;
    color: #374151 !important;
}

/* ===== ОПИСАНИЕ ЛОДКИ ===== */
.post-content {
    font-size: 16px;
    line-height: 1.7;
    color: #1f2933;
    margin-top: 24px;
    margin-bottom: 32px;
}

/* ===== КАРТОЧКИ ПОСТОВ В ЖУРНАЛЕ (компактнее на 30%) ===== */
#posts .feed-card {
    height: 155px;
    margin-bottom: 16px;
}
#posts .feed-card__title {
    font-size: 17px;
}
#posts .feed-card__images {
    padding: 8px 8px 8px 0;
}
#posts .feed-card__img {
    width: 185px;
}
#posts .feed-card__body {
    padding: 12px 16px 10px;
}
#posts .feed-card__excerpt {
    margin-top: 6px;
}
#posts .feed-card__footer,
#bd-posts-list .feed-card__footer {
    justify-content: flex-start;
    align-items: center;
    padding-top: 16px;
}
#posts .feed-card__post-author {
    display: flex;
    align-items: center;
    gap: 6px;
    min-width: 0;
    flex-shrink: 1;
    overflow: hidden;
}
#posts .feed-card__post-avatar {
    width: 20px;
    height: 20px;
    border-radius: 5px;
    object-fit: cover;
    flex-shrink: 0;
    font-size: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #c8d9ea;
    color: #0b1f33;
    font-weight: 600;
}
#posts .feed-card__post-avatar--placeholder {
    display: inline-flex;
}
#posts .feed-card__post-author-name {
    font-size: 12px;
    color: #6b7280;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    text-decoration: none;
}
#posts a.feed-card__post-author-name:hover {
    color: #0b1f33;
}

/* ===== БОРТОВОЙ ЖУРНАЛ ===== */
.bd-filter-bar {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 16px;
    margin-bottom: 16px;
    flex-wrap: wrap;
}

.bd-seg {
    display: flex;
    border: 1px solid #d1d5db;
    border-radius: 8px;
    overflow: hidden;
}

.bd-seg__btn {
    padding: 6px 12px;
    background: #fff;
    border: none;
    border-left: 1px solid #d1d5db;
    font-size: 13px;
    font-weight: 500;
    color: #6b7280;
    cursor: pointer;
    transition: background 0.15s, color 0.15s;
    white-space: nowrap;
    font-family: inherit;
}
.bd-seg__btn:first-child { border-left: none; }
.bd-seg__btn--active { background: #c8d9ea; color: #0b1f33; font-weight: 600; }

/* Категории — высота и шрифт как у сегментных кнопок */
#posts .fb-btn {
    padding: 6px 12px;
    border-radius: 8px;
    border: 1px solid #d1d5db;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.2;
    color: #6b7280;
}
#posts .fb-btn.fb-btn--active {
    border-color: #f97316;
}

#bd-cat-fb, #pf-cat-fb { margin-left: 2px; }
#bd-sort-fb, #pf-sort-fb { margin-left: -3px; }

/* Sort dropdown — plain text style, no button border */
.fb-btn--sort,
#posts .fb-btn.fb-btn--sort,
.profile-col-posts .fb-btn.fb-btn--sort,
.profile-boats-filterbar .fb-btn.fb-btn--sort {
    background: none !important;
    border: none !important;
    box-shadow: none !important;
    padding: 6px 0 !important;
    color: #6b7280 !important;
    gap: 2px;
}
.fb-btn--sort:hover,
#posts .fb-btn.fb-btn--sort:hover,
.profile-col-posts .fb-btn.fb-btn--sort:hover {
    background: none !important;
    color: #374151 !important;
}

/* Обёртка переключателя сортировки с иконкой */
.bd-filter-right {
    display: flex;
    align-items: center;
    gap: 10px;
    flex: 1;
    justify-content: space-between;
}
.bd-sort-wrap {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-left: auto;
}

.boat-posts-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 32px;
    margin-bottom: 12px;
}

.boat-posts-title {
    font-size: 20px;
    font-weight: 600;
    margin: 0;
    color: #1f2933;
}

.add-post-btn {
    display: inline-block;
    padding: 8px 20px;
    background-color: #0B1F33;
    color: white;
    border-radius: 12px;
    font-weight: 600;
    text-decoration: none;
    font-size: 14px;
    transition: background-color 0.2s ease, transform 0.2s ease;
}
.add-post-btn:hover {
    background-color: #13477a;
    transform: translateY(-1px);
}

.posts-empty {
    color: #9ca3af;
    font-size: 14px;
}

/* ===== ВКЛАДКИ ЖУРНАЛА ===== */
.bd-tabs {
    display: flex;
    border-bottom: 2px solid #e5e7eb;
    margin-bottom: 16px;
}
.bd-tab {
    background: none;
    border: none;
    padding: 10px 18px;
    font-size: 14px;
    font-weight: 500;
    color: #6b7280;
    cursor: pointer;
    border-bottom: 2px solid transparent;
    margin-bottom: -2px;
    white-space: nowrap;
}
.bd-tab:hover { color: #111; }
.bd-tab--active { color: #0b1f33; border-bottom-color: #0b1f33; font-weight: 600; }

/* ===== КАРТОЧКИ ПОСТОВ ===== */
.boat-post-item-f {
    margin-bottom: 20px;
}

.boat-post-item {
    display: flex;
    gap: 16px;
    background-color: #fff;
    border-radius: 16px;
    overflow: hidden;
    padding: 12px;
    align-items: stretch;
    min-height: 120px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.08);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.boat-post-item:hover {
    transform: translateY(-1px);
    box-shadow: 0 6px 20px rgba(0,0,0,0.12);
}

.image-wrapper {
    flex: 0 0 120px;
    height: 120px;
    display: block;
    align-self: center;
}

.main_image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 8px;
    display: block;
}

.post-text {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    flex: 1;
    overflow: hidden;
    padding: 4px 0;
}

.post__title {
    font-size: 16px;
    font-weight: 600;
    margin: 0 0 6px 0;
    line-height: 1.3;
    color: #111827;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.post__title a {
    color: #1f2933;
    text-decoration: none;
    transition: color 0.2s ease;
}
.post__title a:hover { color: #0B1F33; }

.post__excerpt {
    font-size: 14px;
    color: #4b5563;
    line-height: 1.4;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    flex: 1;
}

.post__company {
    font-size: 12px;
    color: #6b7280;
    display: block;
}
.post__company a {
    color: #0B1F33;
    text-decoration: none;
    font-weight: 600;
}
.post__company a:hover { text-decoration: underline; }

.post__footer {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    margin-top: auto;
    gap: 8px;
}
.post__footer-left {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.post__category {
    font-size: 12px;
    color: #6b7280;
    background: #e4ecf4;
    border-radius: 6px;
    padding: 2px 8px;
    white-space: nowrap;
}

.post__stats {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-shrink: 0;
}

.post__stat {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 12px;
    color: #6b7280;
}

.post__time {
    font-size: 12px;
    color: #9ca3af;
}

/* ===== КОММЕНТАРИИ ===== */
.comments-section {
    display: flex;
    flex-direction: column;
    gap: 20px;
    margin-bottom: 32px;
    margin-top: 16px;
    background: #fff;
    border-radius: 12px;
    border: 1px solid #e5e7eb;
    padding: 20px;
}

.comments-title {
    font-size: 18px;
    font-weight: 600;
    margin: 0;
    color: #1f2933;
    display: flex;
    align-items: center;
    gap: 8px;
}

.comments-count-badge {
    font-size: 18px;
    font-weight: 400;
    color: #9ca3af;
    vertical-align: middle;
    line-height: inherit;
}

.comments-list { display: flex; flex-direction: column; gap: 8px; }
.comments-empty { color: #9ca3af; font-size: 14px; }

.comment-deleted { font-size: 13px; color: #9ca3af; font-style: italic; padding: 4px 0; }
.comment-deleted-wrapper { display: flex; align-items: center; justify-content: space-between; }

.comment-item {
    background: #fff; border-radius: 10px;
    padding: 14px 16px;
}
.comment-item--reply {
    margin-left: 96px;
}

.comment-avatar { width: 36px; height: 36px; border-radius: 9px; object-fit: cover; flex-shrink: 0; border: 1px solid #e5e7eb; }
.comment-avatar--placeholder {
    width: 36px; height: 36px; border-radius: 9px;
    background: #0B1F33; color: #fff;
    display: flex; align-items: center; justify-content: center;
    font-size: 14px; font-weight: 700; flex-shrink: 0;
    text-decoration: none;
}
.comment-display_name { font-weight: 600; font-size: 14px; color: #1f2933; text-decoration: none; }
.comment-display_name:hover { text-decoration: underline; }
.comment-author-badge {
    font-size: 11px; font-weight: 600; color: #0B1F33;
    background: #eff6ff; padding: 1px 6px; border-radius: 4px;
}
.comment-time { font-size: 12px; color: #9ca3af; }
.comment-edited { font-size: 11px; color: #9ca3af; font-style: italic; }
.comment-body { font-size: 14px; color: #374151; line-height: 1.6; margin-bottom: 10px; }

.comment-actions { display: flex; align-items: center; gap: 16px; }
.comment-like-btn {
    display: flex; align-items: center; gap: 5px;
    background: none; border: none; cursor: pointer;
    font-size: 13px; color: #6b7280; padding: 0;
    transition: color 0.15s;
}
.comment-like-btn:hover, .comment-like-btn.liked { color: #0B1F33; }
.comment-like-btn svg { flex-shrink: 0; }
.comment-reply-btn {
    background: none; border: none; cursor: pointer;
    font-size: 13px; color: #6b7280; padding: 0;
    transition: color 0.15s;
}
.comment-reply-btn:hover { color: #0B1F33; }

.comment-menu { position: relative; }
.comment-menu-btn {
    background: none; border: none; cursor: pointer;
    color: #9ca3af; padding: 0 4px; font-size: 18px; line-height: 1;
}
.comment-menu-btn:hover { color: #374151; }
.comment-menu-dropdown {
    display: none; position: absolute; right: 0; top: 100%;
    background: #fff; border: 1px solid #e5e7eb;
    border-radius: 8px; box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    min-width: 140px; z-index: 100; overflow: hidden;
}
.comment-menu-dropdown.open { display: block; }
.comment-menu-item {
    display: block; width: 100%; padding: 9px 14px;
    background: none; border: none; text-align: left;
    font-size: 13px; color: #374151; cursor: pointer;
}
.comment-menu-item:hover { background: #f9fafb; }
.comment-menu-item--danger { color: #dc2626; }
.comment-menu-item--danger:hover { background: #fef2f2; }

.comment-edit-form { display: none; margin-top: 8px; }
.comment-edit-form textarea {
    width: 100%; padding: 8px 10px; border-radius: 6px;
    border: 1px solid #d1d5db; font-size: 14px; font-family: inherit;
    resize: vertical; min-height: 60px;
}
.comment-edit-actions { display: flex; gap: 8px; margin-top: 6px; }
.comment-edit-save {
    padding: 5px 14px; background: #0B1F33; color: #fff;
    border: none; border-radius: 6px; font-size: 13px; cursor: pointer;
}
.comment-edit-cancel {
    padding: 5px 14px; background: #f3f4f6; color: #374151;
    border: 1px solid #d1d5db; border-radius: 6px; font-size: 13px; cursor: pointer;
}

.reply-indicator {
    display: flex; align-items: center; gap: 8px;
    background: #eff6ff; padding: 6px 12px; border-radius: 6px;
    font-size: 13px; color: #0B1F33; margin-bottom: 8px;
}
.reply-indicator button {
    background: none; border: none; cursor: pointer;
    color: #6b7280; font-size: 14px; padding: 0; margin-left: auto;
}

.inline-reply-form {
    margin-top: 8px; margin-left: 96px;
    overflow: hidden; max-height: 0; opacity: 0;
    transition: max-height 0.3s ease, opacity 0.2s ease;
}
.inline-reply-form.open { max-height: 2000px; opacity: 1; }
.inline-reply-textarea {
    flex: 1; width: 100%; padding: 10px 12px; border-radius: 8px;
    border: 1px solid #d1d5db; font-size: 14px; font-family: inherit;
    resize: none; overflow: hidden; min-height: 64px; transition: border-color 0.15s;
}
.inline-reply-textarea:focus {
    outline: none; border-color: #0B1F33;
    box-shadow: 0 0 0 3px rgba(23,90,156,0.15);
}
.inline-reply-actions {
    display: flex; gap: 8px; margin-top: 6px; justify-content: flex-end;
}
.inline-reply-cancel {
    padding: 8px 20px; background: #dde2e8; color: #1f2937;
    border: none; border-radius: 12px; font-size: 14px; font-weight: 600;
    cursor: pointer; font-family: inherit; transition: background 0.15s;
}
.inline-reply-cancel:hover { background: #cfd4db; }

/* ===== ФОРМА КОММЕНТАРИЯ ===== */
.comment-form {
    display: flex;
    flex-direction: column;
    gap: 10px;
    width: 100%;
}
.comment-form p { margin: 0; }

.comment-form-row {
    display: flex;
    align-items: flex-start;
    gap: 10px;
}

.comment-form-avatar {
    width: 54px;
    height: 54px;
    border-radius: 12px;
    object-fit: cover;
    flex-shrink: 0;
    margin-top: 2px;
    border: 1px solid #e5e7eb;
}
.comment-form-avatar--placeholder {
    width: 54px;
    height: 54px;
    border-radius: 12px;
    background: #0B1F33;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    font-weight: 700;
    flex-shrink: 0;
    margin-top: 2px;
}

.comment-form-row textarea,
.comment-form textarea {
    flex: 1;
    min-height: 64px;
    padding: 10px 12px;
    border-radius: 8px;
    border: 1px solid #d1d5db;
    resize: none;
    overflow: hidden;
    font-size: 14px;
    font-family: inherit;
    width: 100%;
}
.comment-form-row textarea:focus,
.comment-form textarea:focus {
    outline: none;
    border-color: #0B1F33;
    box-shadow: 0 0 0 3px rgba(23,90,156,0.15);
}

.submit-comment-btn {
    align-self: flex-end;
    display: inline-block;
    padding: 8px 20px;
    background: #f97316;
    color: #fff;
    border-radius: 12px;
    font-weight: 600;
    font-size: 14px;
    border: none;
    cursor: pointer;
    text-decoration: none;
    transition: background 0.2s ease, transform 0.2s ease;
}
.submit-comment-btn:hover {
    background: #ea6c0b;
    transform: translateY(-1px);
}

/* Comment header — new structure */
.comment-header { display: flex; align-items: flex-start; gap: 10px; margin-bottom: 8px; }
.comment-meta__left { display: flex; flex-direction: column; gap: 2px; flex: 1; min-width: 0; }
.comment-meta__name-row { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; }
.comment-boat-label { font-size: 11px; color: #9ca3af; }

/* Time and menu in actions row */
.comment-time--footer { font-size: 12px; color: #9ca3af; }
.comment-menu--footer { position: relative; }

/* ===== Модалка ===== */
.modal {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.45);
    justify-content: center;
    align-items: center;
    z-index: 9999;
}
.modal-content {
    background: #fff;
    padding: 28px 28px 24px;
    border-radius: 12px;
    max-width: 420px;
    width: 90%;
    box-shadow: 0 8px 32px rgba(0,0,0,0.18);
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.modal-content h3 {
    font-size: 17px;
    font-weight: 600;
    margin: 0;
    color: #111;
}
.modal-content p {
    font-size: 14px;
    color: #374151;
    margin: 0;
}
.modal-content .modal-buttons {
    display: flex;
    gap: 10px;
    justify-content: flex-end;
    margin-top: 8px;
}
.modal-content .modal-buttons .danger {
    background: #dc2626;
    color: #fff;
    padding: 8px 18px;
    border-radius: 7px;
    font-weight: 600;
    border: none;
    cursor: pointer;
    font-size: 14px;
    transition: background 0.2s;
}
.modal-content .modal-buttons .danger:hover {
    background: #b91c1c;
}
.modal-content .modal-buttons button.cancel {
    padding: 8px 18px;
    border: 1px solid #d1d5db;
    border-radius: 7px;
    background: #f9fafb;
    font-size: 14px;
    cursor: pointer;
    transition: background 0.2s;
}
.modal-content .modal-buttons button.cancel:hover {
    background: #e5e7eb;
}
