:root {
    --km-dark: #1f2937;
    --km-accent: #f59e0b;
    --km-soft: #f8fafc;
}

body {
    background: var(--km-soft);
}

.hero {
    background: linear-gradient(135deg, #111827, #374151);
    color: white;
}

.listing-card {
    border: 0;
    transition: transform .15s ease, box-shadow .15s ease;
}

.listing-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 .75rem 1.5rem rgba(15, 23, 42, .12) !important;
}

.listing-image-wrap {
    overflow: hidden;
    border-top-left-radius: var(--bs-card-border-radius);
    border-top-right-radius: var(--bs-card-border-radius);
}

.listing-image,
.detail-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.detail-image {
    max-height: 520px;
    object-fit: contain;
    background: #f1f5f9;
}

.placeholder-image {
    min-height: 180px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #64748b;
    background: #e2e8f0;
}

.offline-page {
    min-height: 100vh;
    display: grid;
    place-items: center;
    background: #111827;
    color: #111827;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.offline-card {
    max-width: 520px;
    margin: 1rem;
    padding: 2rem;
    border-radius: 1.5rem;
    background: white;
    box-shadow: 0 20px 60px rgba(0,0,0,.25);
}

.offline-card a {
    display: inline-block;
    margin-top: 1rem;
    color: #111827;
    font-weight: 700;
}

/* Többképes feltöltés előnézet */
.km-upload-preview {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(92px, 1fr));
    gap: .75rem;
}

.km-upload-preview-item {
    border: 1px solid #e2e8f0;
    border-radius: .75rem;
    overflow: hidden;
    background: white;
    box-shadow: 0 .25rem .75rem rgba(15, 23, 42, .06);
}

.km-upload-preview-item img {
    width: 100%;
    height: 92px;
    object-fit: cover;
    display: block;
}

.km-upload-preview-item span {
    display: block;
    padding: .35rem .45rem;
    font-size: .75rem;
    color: #64748b;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Hirdetés részletező képnéző + egérkövető nagyító */
.km-gallery {
    width: 100%;
}

.km-zoom-viewer {
    position: relative;
    overflow: hidden;
    min-height: 280px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: crosshair;
    background: #f1f5f9;
}

.km-main-image {
    width: 100%;
    max-height: 560px;
    object-fit: contain;
    display: block;
    user-select: none;
}

.km-zoom-lens {
    position: absolute;
    width: 190px;
    height: 190px;
    border: 3px solid rgba(255, 255, 255, .95);
    border-radius: 50%;
    box-shadow: 0 .75rem 2rem rgba(15, 23, 42, .32);
    pointer-events: none;
    display: none;
    background-repeat: no-repeat;
    background-color: white;
    z-index: 5;
}

.km-zoom-viewer.is-zooming .km-zoom-lens {
    display: block;
}

.km-thumbs {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(82px, 1fr));
    gap: .65rem;
}

.km-thumb {
    border: 2px solid transparent;
    border-radius: .75rem;
    padding: 0;
    overflow: hidden;
    background: #e2e8f0;
    aspect-ratio: 1 / 1;
    cursor: pointer;
}

.km-thumb:hover,
.km-thumb.active {
    border-color: var(--km-accent);
}

.km-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

@media (max-width: 768px) {
    .km-zoom-lens {
        width: 160px;
        height: 160px;
    }

    .km-zoom-viewer {
        min-height: 220px;
    }
}


/* Zoom hotfix: biztos egérkövetés és látható nagyító */
.km-zoom-viewer {
    isolation: isolate;
}

.km-main-image {
    pointer-events: none;
}

.km-zoom-lens {
    opacity: 0;
    transition: opacity .08s linear;
}

.km-zoom-viewer.is-zooming .km-zoom-lens {
    display: block;
    opacity: 1;
}

/* Saját hirdetések + szerkesztés */
.km-my-listing-card {
    border: 0;
}

.km-my-listing-image {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    min-height: 170px;
    background: #f1f5f9;
    color: #64748b;
    text-decoration: none;
    overflow: hidden;
    border-radius: .375rem 0 0 .375rem;
}

.km-my-listing-image img {
    width: 100%;
    height: 100%;
    min-height: 170px;
    object-fit: cover;
    display: block;
}

.km-edit-image-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(132px, 1fr));
    gap: .75rem;
}

.km-edit-image-card {
    border: 1px solid #e2e8f0;
    border-radius: .85rem;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 .35rem .9rem rgba(15, 23, 42, .06);
}

.km-edit-image-card img {
    width: 100%;
    height: 118px;
    object-fit: cover;
    display: block;
    background: #f1f5f9;
}

.border-warning-subtle {
    border-color: #fde68a !important;
}

.border-danger-subtle {
    border-color: #fecaca !important;
}

@media (max-width: 576px) {
    .km-my-listing-image,
    .km-my-listing-image img {
        min-height: 135px;
    }
}

/* Üzenetek / beszélgetések */
.conversation-card {
    transition: transform .12s ease, border-color .12s ease, box-shadow .12s ease;
}

.conversation-card:hover {
    transform: translateY(-1px);
    border-color: rgba(0,0,0,.25);
}

.conversation-unread {
    border-left: 5px solid #ffc107;
}

.conversation-preview {
    color: #374151;
}

.message-thread {
    background: #f8fafc;
    max-height: 62vh;
    overflow-y: auto;
}

.message-row {
    display: flex;
    margin-bottom: .9rem;
}

.message-row-mine {
    justify-content: flex-end;
}

.message-row-theirs {
    justify-content: flex-start;
}

.message-bubble {
    max-width: min(78%, 680px);
    border-radius: 1rem;
    padding: .75rem .95rem;
    box-shadow: 0 .125rem .35rem rgba(15, 23, 42, .08);
    line-height: 1.45;
}

.message-bubble-mine {
    background: #1f2937;
    color: #fff;
    border-bottom-right-radius: .25rem;
}

.message-bubble-theirs {
    background: #fff;
    color: #111827;
    border-bottom-left-radius: .25rem;
}

.message-meta {
    font-size: .78rem;
    opacity: .72;
    margin-bottom: .25rem;
}

@media (max-width: 575.98px) {
    .message-bubble {
        max-width: 92%;
    }
}

/* Profil és értékelések */
.km-profile-card {
    border: 0;
}

.km-avatar {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    object-fit: cover;
    background: #e2e8f0;
    color: #334155;
    font-weight: 800;
    line-height: 1;
    box-shadow: 0 .35rem 1rem rgba(15, 23, 42, .08);
}

.km-avatar-sm {
    width: 38px;
    height: 38px;
    font-size: .9rem;
}

.km-avatar-xl {
    width: 96px;
    height: 96px;
    font-size: 2rem;
}

.km-avatar-profile {
    width: 132px;
    height: 132px;
    font-size: 2.75rem;
}

.km-avatar-placeholder {
    background: linear-gradient(135deg, #f59e0b, #fbbf24);
    color: #111827;
}

.km-profile-bio {
    color: #334155;
}

.km-stat-box {
    border: 1px solid #e2e8f0;
    border-radius: .9rem;
    padding: .85rem;
    background: #f8fafc;
    height: 100%;
}

.km-stars {
    color: #f59e0b;
    letter-spacing: .05em;
}

.km-review-card {
    border: 0;
}

/* Admin moderáció */
.km-admin-stat {
    border: 0;
}

.km-admin-stat .display-6 {
    line-height: 1;
}

.km-admin-table table {
    min-width: 860px;
}

.km-admin-table .form-select-sm {
    min-width: 120px;
}

/* Kedvencek oldal */
.km-favorite-card {
    border: 0;
    transition: transform .15s ease, box-shadow .15s ease;
}

.km-favorite-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 .75rem 1.5rem rgba(15, 23, 42, .12) !important;
}

.reservation-thumb {
    width: 84px;
    height: 84px;
    border-radius: 0.75rem;
    overflow: hidden;
    background: #f3f4f6;
    display: flex;
    align-items: center;
    justify-content: center;
}

.reservation-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.reservation-card {
    transition: transform .15s ease, box-shadow .15s ease;
}

.reservation-card:hover {
    transform: translateY(-1px);
    box-shadow: 0 .5rem 1rem rgba(15, 23, 42, .08);
}

/* Mobil UX finomítások */
@media (max-width: 991.98px) {
    html {
        scroll-padding-top: 76px;
    }

    body {
        padding-bottom: calc(82px + env(safe-area-inset-bottom));
        -webkit-tap-highlight-color: rgba(245, 158, 11, .18);
    }

    main.container {
        padding-top: 1rem !important;
        padding-left: .85rem;
        padding-right: .85rem;
    }

    .navbar .container {
        padding-left: .85rem;
        padding-right: .85rem;
    }

    .navbar-brand {
        max-width: 68vw;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
        font-size: 1rem;
    }

    .navbar-collapse {
        padding-top: .75rem;
    }

    .navbar-nav .nav-link {
        border-radius: .8rem;
        padding: .65rem .75rem;
    }

    .navbar-nav .nav-link:active,
    .navbar-nav .nav-link:hover {
        background: rgba(255,255,255,.08);
    }

    .navbar .d-flex {
        width: 100%;
        flex-wrap: wrap;
        align-items: stretch;
        margin-top: .5rem;
    }

    .navbar .d-flex .btn,
    .navbar .d-flex form,
    .navbar .d-flex form .btn {
        width: 100%;
    }

    .navbar-text {
        width: 100%;
        margin-bottom: .35rem;
    }

    .hero {
        border-radius: 1.15rem;
        padding: 1.25rem !important;
    }

    .hero h1,
    .display-5,
    .display-6 {
        font-size: clamp(1.55rem, 7vw, 2.15rem);
        line-height: 1.1;
    }

    .lead {
        font-size: 1rem;
    }

    .card,
    .alert,
    .list-group-item {
        border-radius: 1rem;
    }

    .card-body {
        padding: 1rem;
    }

    .listing-card {
        border-radius: 1rem;
        overflow: hidden;
    }

    .listing-card .card-body {
        padding: .95rem;
    }

    .listing-card .badge {
        font-size: .72rem;
    }

    .listing-image-wrap {
        border-top-left-radius: 1rem;
        border-top-right-radius: 1rem;
    }

    .btn,
    .form-control,
    .form-select {
        min-height: 42px;
    }

    input,
    select,
    textarea {
        font-size: 16px !important;
    }

    .btn-sm {
        min-height: 38px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
    }

    .card .d-flex.gap-2,
    .card .d-flex.gap-3 {
        row-gap: .5rem !important;
    }

    .km-thumbs {
        grid-template-columns: repeat(auto-fill, minmax(64px, 1fr));
        gap: .5rem;
    }

    .km-thumb {
        border-radius: .65rem;
    }

    .km-upload-preview {
        grid-template-columns: repeat(auto-fill, minmax(78px, 1fr));
        gap: .55rem;
    }

    .km-upload-preview-item img {
        height: 78px;
    }

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

    .km-edit-image-card img {
        height: 96px;
    }

    .message-thread {
        max-height: 56vh;
        border-radius: 1rem;
    }

    .message-bubble {
        max-width: 94%;
        padding: .7rem .85rem;
    }

    .conversation-card,
    .reservation-card,
    .km-favorite-card,
    .km-profile-card {
        border-radius: 1rem;
    }

    .reservation-thumb {
        width: 72px;
        height: 72px;
    }

    .km-admin-table,
    .table-responsive {
        border-radius: 1rem;
    }

    .table-responsive table {
        margin-bottom: 0;
    }
}

@media (max-width: 575.98px) {
    .row.g-3,
    .row.g-4 {
        --bs-gutter-x: .85rem;
        --bs-gutter-y: .85rem;
    }

    .container,
    .container-fluid {
        --bs-gutter-x: 1.35rem;
    }

    .card-title {
        font-size: 1rem;
    }

    .listing-card .fs-5,
    .listing-card .h5,
    .listing-card h5 {
        font-size: 1.02rem;
    }

    .km-my-listing-image,
    .km-my-listing-image img {
        border-radius: .9rem .9rem 0 0;
    }

    .d-grid-mobile,
    .km-mobile-stack {
        display: grid !important;
        grid-template-columns: 1fr;
        gap: .55rem !important;
    }

    .btn-group,
    .btn-group-sm {
        flex-wrap: wrap;
    }
}

@media (hover: none) and (pointer: coarse) {
    .listing-card:hover,
    .km-favorite-card:hover,
    .reservation-card:hover,
    .conversation-card:hover {
        transform: none;
        box-shadow: none !important;
    }

    .km-zoom-viewer {
        cursor: default;
        touch-action: none;
        -webkit-user-select: none;
        user-select: none;
    }

    .km-zoom-lens {
        width: 168px;
        height: 168px;
        display: none;
    }

    .km-zoom-viewer.is-zooming .km-zoom-lens {
        display: block;
        opacity: 1;
    }
}

.km-mobile-nav {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1045;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(48px, 1fr));
    gap: .25rem;
    padding: .45rem .55rem calc(.45rem + env(safe-area-inset-bottom));
    background: rgba(17, 24, 39, .97);
    border-top: 1px solid rgba(255,255,255,.12);
    box-shadow: 0 -1rem 2rem rgba(15, 23, 42, .20);
    backdrop-filter: blur(14px);
}

.km-mobile-nav-item {
    position: relative;
    min-width: 0;
    color: rgba(255,255,255,.76);
    text-decoration: none;
    border-radius: .95rem;
    padding: .35rem .15rem .28rem;
    text-align: center;
    font-size: .72rem;
    line-height: 1.08;
    font-weight: 700;
}

.km-mobile-nav-item:focus,
.km-mobile-nav-item:hover,
.km-mobile-nav-item.active {
    color: #fff;
    background: rgba(245, 158, 11, .18);
}

.km-mobile-nav-icon {
    display: block;
    font-size: 1.28rem;
    line-height: 1.1;
    margin-bottom: .1rem;
}

.km-mobile-badge {
    position: absolute;
    top: .1rem;
    right: .35rem;
    min-width: 1.15rem;
    height: 1.15rem;
    padding: 0 .28rem;
    border-radius: 999px;
    background: #dc3545;
    color: #fff;
    font-size: .68rem;
    line-height: 1.15rem;
    box-shadow: 0 .15rem .45rem rgba(0,0,0,.3);
}

.km-mobile-badge-warning {
    background: #f59e0b;
    color: #111827;
}

@media (min-width: 992px) {
    .km-mobile-nav {
        display: none !important;
    }
}


/* Mobil tap-to-zoom: a lencse koppintásra a megérintett ponton nyílik meg */
.km-zoom-viewer.is-touch-locked {
    cursor: default;
}

.km-zoom-viewer.is-touch-locked .km-zoom-lens {
    border-width: 2px;
    will-change: left, top, background-position;
    box-shadow: 0 .8rem 2.25rem rgba(15, 23, 42, .38), 0 0 0 1px rgba(15, 23, 42, .08);
}

@media (hover: none) and (pointer: coarse) {
    .km-zoom-viewer {
        -webkit-tap-highlight-color: transparent;
    }

    .km-zoom-lens {
        width: 168px;
        height: 168px;
    }
}


/* Mobil zoom stabilizálás: nagyobb, könnyebben célozható lencse */
@media (hover: none) and (pointer: coarse) {
    .km-zoom-viewer.is-touch-locked .km-zoom-lens {
        border-width: 2px;
        box-shadow: 0 .7rem 1.8rem rgba(15, 23, 42, .36), 0 0 0 1px rgba(255,255,255,.85) inset;
    }
}


/* Belső értesítések */
.notification-card {
    border: 0;
    border-left: .35rem solid transparent;
    transition: transform .12s ease, box-shadow .12s ease, border-color .12s ease;
}

.notification-card:hover {
    transform: translateY(-1px);
    box-shadow: 0 .75rem 1.5rem rgba(15, 23, 42, .10) !important;
}

.notification-card.unread {
    border-left-color: var(--km-accent);
    background: #fffaf0;
}

.notification-card .notification-body {
    color: #475569;
}

.notification-dot {
    width: .65rem;
    height: .65rem;
    border-radius: 999px;
    display: inline-block;
    background: var(--km-accent);
    box-shadow: 0 0 0 .2rem rgba(245, 158, 11, .18);
}

@media (max-width: 768px) {
    .notification-card .card-body {
        padding: .95rem;
    }
}

/* Transaction-bound reviews */
.km-transaction-review-box {
    background: rgba(255, 255, 255, 0.74);
}

.km-review-card .badge.text-bg-light {
    border: 1px solid rgba(0, 0, 0, 0.08);
}

/* Featured listings / Pro Seller highlight */
.km-featured-ribbon,
.badge.text-bg-warning {
    letter-spacing: .01em;
}

.km-admin-feature-form {
    min-width: 160px;
}

@media (max-width: 991.98px) {
    .km-admin-feature-form {
        min-width: 100%;
    }
}

.km-featured-listing-card {
    border-color: rgba(255, 193, 7, .75);
    box-shadow: 0 .5rem 1.25rem rgba(255, 193, 7, .15) !important;
}

/* Admin dashboard tabs / wide moderation workspace */
.km-admin-tabs-card {
    overflow: visible;
}

.km-admin-tabs {
    gap: .25rem;
    flex-wrap: wrap;
}

.km-admin-tabs .nav-link {
    border-top-left-radius: .85rem;
    border-top-right-radius: .85rem;
    font-weight: 600;
    color: #475569;
}

.km-admin-tabs .nav-link.active {
    color: #111827;
    background: #fff;
}

.km-admin-table-wide {
    width: 100%;
}

.km-admin-table-wide table {
    min-width: 1080px;
}

.km-admin-listing-cell {
    min-width: 260px;
}

.km-admin-actions {
    display: grid;
    grid-template-columns: minmax(230px, 1fr) minmax(260px, 1.2fr) auto;
    align-items: start;
    gap: .65rem;
    min-width: 560px;
}

.km-admin-status-form {
    display: flex;
    gap: .5rem;
}

.km-admin-status-form .form-select {
    min-width: 145px;
}

.km-admin-feature-form-wide {
    display: grid;
    grid-template-columns: auto minmax(170px, 1fr) auto;
    align-items: center;
    gap: .5rem;
    min-width: 0;
}

.km-admin-delete-form {
    white-space: nowrap;
}

.km-admin-report-card,
.km-admin-log-card {
    box-shadow: 0 .35rem 1rem rgba(15, 23, 42, .04);
}

@media (max-width: 1199.98px) {
    .km-admin-actions {
        grid-template-columns: 1fr;
        min-width: 320px;
    }

    .km-admin-feature-form-wide {
        grid-template-columns: 1fr;
    }

    .km-admin-status-form {
        flex-wrap: wrap;
    }
}

@media (max-width: 767.98px) {
    .km-admin-tabs .nav-link {
        padding: .55rem .75rem;
        font-size: .92rem;
    }

    .km-admin-table-wide table {
        min-width: 920px;
    }
}


/* Admin széles munkaterület + kezelhetőbb műveleti oszlop */
.km-main-wide {
    max-width: 100%;
}

@media (min-width: 1200px) {
    .km-main-wide {
        padding-left: 2rem !important;
        padding-right: 2rem !important;
    }
}

@media (min-width: 1600px) {
    .km-main-wide {
        padding-left: 3rem !important;
        padding-right: 3rem !important;
    }
}

.km-main-wide .km-admin-tabs-card,
.km-main-wide > .card,
.km-main-wide .card.shadow-sm {
    max-width: none;
}

.km-admin-table-wide table {
    width: 100%;
    min-width: 980px;
}

.km-admin-table-wide th:nth-child(1) { width: 24%; }
.km-admin-table-wide th:nth-child(2) { width: 18%; }
.km-admin-table-wide th:nth-child(3) { width: 13%; }
.km-admin-table-wide th:nth-child(4) { width: 11%; }
.km-admin-table-wide th:nth-child(5) { width: 34%; }

.km-admin-actions {
    min-width: 0;
    width: 100%;
    justify-content: end;
}

.km-admin-status-form .form-select {
    min-width: 120px;
}

.km-admin-feature-form-wide input[type="datetime-local"] {
    min-width: 0;
    max-width: 165px;
}

@media (max-width: 1399.98px) {
    .km-admin-actions {
        grid-template-columns: 1fr;
        gap: .45rem;
        min-width: 245px;
    }

    .km-admin-status-form {
        justify-content: flex-start;
    }

    .km-admin-feature-form-wide {
        grid-template-columns: auto minmax(150px, 1fr) auto;
    }

    .km-admin-feature-form-wide input[type="datetime-local"] {
        max-width: none;
    }

    .km-admin-delete-form {
        text-align: left;
    }
}

@media (max-width: 1199.98px) {
    .km-admin-table-wide table {
        min-width: 900px;
    }

    .km-admin-listing-cell {
        min-width: 210px;
    }
}

/* Saját hirdetés törlése indoklással */
.km-delete-listing-inline {
  display: flex;
  flex-wrap: wrap;
  gap: .4rem;
  align-items: center;
  margin: 0;
}
.km-delete-listing-inline .km-delete-reason-input {
  min-width: 180px;
  max-width: 260px;
}
@media (max-width: 575.98px) {
  .km-delete-listing-inline {
    width: 100%;
  }
  .km-delete-listing-inline .km-delete-reason-input,
  .km-delete-listing-inline .btn {
    width: 100%;
    max-width: none;
  }
}

/* Kiemelt hirdetések erősebb vizuális jelzése */
.listing-card.km-featured-listing-card {
  position: relative;
  border: 2px solid #f59e0b;
  background: linear-gradient(180deg, rgba(255, 248, 220, .96), #ffffff 58%);
  box-shadow: 0 1rem 2.5rem rgba(245, 158, 11, .24), 0 .25rem 1rem rgba(15, 23, 42, .08) !important;
  overflow: hidden;
}

.listing-card.km-featured-listing-card::before {
  content: "Kiemelt";
  position: absolute;
  z-index: 2;
  top: .65rem;
  left: .65rem;
  padding: .25rem .55rem;
  border-radius: 999px;
  background: #f59e0b;
  color: #111827;
  font-size: .75rem;
  font-weight: 700;
  box-shadow: 0 .35rem .9rem rgba(0, 0, 0, .2);
}

.listing-card.km-featured-listing-card .listing-image-wrap {
  border-bottom: 1px solid rgba(245, 158, 11, .35);
}

.km-required {
  color: #dc3545;
  font-weight: 700;
}

/* Cookie tájékoztató */
.km-cookie-banner {
  position: fixed;
  left: 1rem;
  right: 1rem;
  bottom: 1rem;
  z-index: 1080;
  display: flex;
  justify-content: center;
  pointer-events: none;
}

.km-cookie-banner-inner {
  width: min(980px, 100%);
  display: flex;
  gap: 1rem;
  align-items: center;
  justify-content: space-between;
  padding: 1rem;
  border-radius: 1rem;
  background: rgba(17, 24, 39, .96);
  color: #f8fafc;
  box-shadow: 0 1rem 3rem rgba(0, 0, 0, .35);
  pointer-events: auto;
}

@media (max-width: 575.98px) {
  .km-cookie-banner {
    left: .75rem;
    right: .75rem;
    bottom: calc(.75rem + 68px);
  }
  .km-cookie-banner-inner {
    flex-direction: column;
    align-items: stretch;
  }
}

.km-terms-content h2 {
  margin-top: 2rem;
}
.km-terms-content p,
.km-terms-content li {
  color: #475569;
}

/* Admin hirdetéslista: műveleti oszlop stabil, egymás alatti kezelőkkel */
.km-admin-table-wide table {
  min-width: 1180px;
}

.km-admin-table-wide th:nth-child(1) { width: 26%; }
.km-admin-table-wide th:nth-child(2) { width: 8%; }
.km-admin-table-wide th:nth-child(3) { width: 15%; }
.km-admin-table-wide th:nth-child(4) { width: 14%; }
.km-admin-table-wide th:nth-child(5) { width: 10%; }
.km-admin-table-wide th:nth-child(6) { width: 27%; }

.km-admin-actions-heading,
.km-admin-actions-cell {
  min-width: 330px;
}

.km-admin-actions-stacked {
  display: grid;
  gap: .5rem;
  min-width: 320px;
  max-width: 460px;
  margin-left: auto;
}

.km-admin-action-row {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr) auto;
  align-items: center;
  gap: .45rem;
  padding: .45rem;
  border: 1px solid rgba(148, 163, 184, .28);
  border-radius: .75rem;
  background: rgba(248, 250, 252, .72);
}

.km-admin-action-label,
.km-feature-check {
  font-size: .82rem;
  color: #475569;
  font-weight: 600;
  white-space: nowrap;
}

.km-admin-feature-form-wide input[type="datetime-local"] {
  max-width: none;
  min-width: 0;
}

.km-admin-delete-form-block {
  width: 100%;
}

@media (max-width: 1399.98px) {
  .km-admin-table-wide table {
    min-width: 1100px;
  }

  .km-admin-actions-stacked {
    min-width: 290px;
  }

  .km-admin-action-row {
    grid-template-columns: 1fr;
    align-items: stretch;
  }
}

/* Hirdetés megtekintésszámláló */
.km-view-count-badge {
  border: 1px solid rgba(15, 23, 42, .08);
}
