/* Genel Reset ve Temel Stiller */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

:root {
    --siyah: #000000;
    --kirmizi: #DC143C;
    --sari: #FFD700;
    --kirmizi-koyu: #B71C1C;
    --gri-koyu: #1a1a1a;
    --gri: #333333;
    --gri-acik: #f5f5f5;
    --beyaz: #ffffff;
}

body {
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    background-color: var(--beyaz);
    color: var(--siyah);
    line-height: 1.6;
}

/* Header */
header {
    background-color: var(--siyah);
    color: var(--beyaz);
    padding: 1rem 0;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);
    position: sticky;
    top: 0;
    z-index: 1000;
}

.header-container {
    max-width: 1400px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 2rem;
    gap: 2rem;
}

.logo {
    font-size: 1.8rem;
    font-weight: bold;
    color: var(--kirmizi);
    text-decoration: none;
    flex-shrink: 0;
}

.logo span {
    color: var(--sari);
}

/* Header Arama Çubuğu */
.header-search {
    flex: 1;
    max-width: 350px;
    margin: 0 auto;
}

.header-search-form {
    display: flex;
    gap: 0;
    background-color: var(--beyaz);
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}

.header-search-input {
    flex: 1;
    padding: 0.5rem 1rem;
    border: none;
    outline: none;
    font-size: 0.85rem;
    color: var(--siyah);
    background-color: transparent;
}

.header-search-input::placeholder {
    color: #999;
}

.header-search-btn {
    padding: 0.5rem 1rem;
    background-color: transparent;
    color: var(--siyah);
    border: none;
    cursor: pointer;
    font-size: 1rem;
    transition: all 0.3s;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    width: 40px;
    min-width: 40px;
}

.header-search-btn:hover {
    background-color: var(--gri-acik);
}

.header-search-btn::after {
    content: '';
    width: 16px;
    height: 16px;
    border: 2px solid var(--siyah);
    border-radius: 50%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.header-search-btn::before {
    content: '';
    width: 6px;
    height: 2px;
    background-color: var(--siyah);
    position: absolute;
    bottom: 10px;
    right: 8px;
    transform: rotate(45deg);
    border-radius: 1px;
}

/* Header Sağ Taraf */
.header-right {
    display: flex;
    align-items: center;
    gap: 1rem;
    flex-shrink: 0;
}

/* Ana İçerik Wrapper */
.main-content-wrapper {
    display: flex;
    min-height: calc(100vh - 73px);
    max-width: 1400px;
    margin: 0 auto;
    gap: 1rem;
    padding: 1rem;
}

/* Sol Menü Sidebar */
.sidebar-menu {
    width: 280px;
    background-color: var(--beyaz);
    border-radius: 10px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
    margin: 1rem;
    position: sticky;
    top: 90px;
    height: calc(100vh - 110px);
    overflow-y: auto;
    z-index: 998;
    flex-shrink: 0;
    border: 2px solid var(--kirmizi);
}

.sidebar-nav {
    padding: 1rem;
}

.sidebar-nav-menu {
    list-style: none;
    margin: 0;
    padding: 0;
}

.sidebar-nav-menu > li {
    position: relative;
}

.sidebar-nav-menu > li > a {
    display: block;
    padding: 1rem 1.5rem;
    color: var(--siyah);
    text-decoration: none;
    transition: all 0.3s;
    font-weight: 500;
    border-left: 3px solid transparent;
    border-radius: 5px;
    margin-bottom: 0.3rem;
    background-color: var(--gri-acik);
}

.sidebar-nav-menu > li > a:hover,
.sidebar-nav-menu > li > a.active {
    background-color: var(--kirmizi);
    color: var(--beyaz);
    border-left-color: var(--sari);
    transform: translateX(5px);
}

.sidebar-nav-menu > li > a span {
    float: right;
    font-size: 0.7rem;
    margin-left: 0.5rem;
    transition: transform 0.3s;
}

.sidebar-nav-menu > li.has-submenu.active > a span {
    transform: rotate(90deg);
}

/* Alt Menü Bar (diğer sayfalar için) */
.sub-nav {
    background-color: var(--gri-koyu);
    border-bottom: 2px solid var(--kirmizi);
    position: sticky;
    top: 73px;
    z-index: 999;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
}

.sub-nav-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 2rem;
}

.sub-nav-menu {
    display: flex;
    list-style: none;
    gap: 0;
    margin: 0;
    padding: 0;
}

.sub-nav-menu > li {
    position: relative;
}

.sub-nav-menu > li > a {
    display: block;
    padding: 1rem 1.5rem;
    color: var(--beyaz);
    text-decoration: none;
    transition: all 0.3s;
    font-weight: 500;
    border-bottom: 3px solid transparent;
}

.sub-nav-menu > li > a:hover {
    background-color: var(--siyah);
    color: var(--kirmizi);
    border-bottom-color: var(--kirmizi);
}

/* Dropdown Menü */
.has-dropdown {
    position: relative;
}

.has-dropdown > a span {
    font-size: 0.7rem;
    margin-left: 0.3rem;
}

/* Sidebar için dropdown */
.sidebar-menu .dropdown-menu {
    position: static;
    background-color: var(--siyah);
    min-width: 100%;
    box-shadow: none;
    list-style: none;
    padding: 0;
    margin: 0;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
}

.sidebar-menu .has-dropdown:hover .dropdown-menu,
.sidebar-menu .has-dropdown.active .dropdown-menu {
    max-height: 1000px;
}

.sidebar-menu .dropdown-menu > li {
    position: relative;
}

.sidebar-menu .dropdown-menu > li > a {
    display: block;
    padding: 0.8rem 1.5rem 0.8rem 2.5rem;
    color: #ccc;
    font-size: 0.95rem;
    text-decoration: none;
    transition: all 0.3s;
}

.sidebar-menu .dropdown-menu > li > a:hover {
    background-color: var(--gri-koyu);
    color: var(--kirmizi);
    padding-left: 3rem;
}

/* Normal dropdown (diğer sayfalar için) */
.dropdown-menu {
    position: absolute;
    top: 100%;
    left: 0;
    background-color: var(--beyaz);
    min-width: 250px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3);
    list-style: none;
    padding: 0.5rem 0;
    margin: 0;
    opacity: 0;
    visibility: hidden;
    transform: translateY(-10px);
    transition: all 0.3s;
    z-index: 1000;
}

.sub-nav .has-dropdown:hover .dropdown-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.dropdown-menu > li {
    position: relative;
}

.dropdown-menu > li > a {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.8rem 1.5rem;
    color: var(--siyah);
    text-decoration: none;
    transition: all 0.3s;
    font-weight: 500;
}

.dropdown-menu > li > a:hover {
    background-color: var(--gri-acik);
    color: var(--kirmizi);
    padding-left: 2rem;
}

.dropdown-menu > li > a span {
    color: var(--gri);
    font-size: 0.8rem;
}

/* Submenu (Alt Kategoriler) */
.has-submenu {
    position: relative;
}

/* Sidebar için submenu */
.sidebar-menu .submenu {
    position: static;
    background-color: transparent;
    min-width: 100%;
    box-shadow: none;
    list-style: none;
    padding: 0;
    margin: 0.5rem 0 0 0;
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    visibility: hidden;
    transition: max-height 0.3s ease, padding 0.3s ease, opacity 0.3s ease, visibility 0.3s ease;
}

.sidebar-menu .has-submenu.active .submenu {
    max-height: 1000px;
    padding: 0.5rem 0;
    opacity: 1;
    visibility: visible;
}

.sidebar-menu .submenu > li {
    margin-bottom: 0.2rem;
}

.sidebar-menu .submenu > li > a {
    display: block;
    padding: 0.7rem 1.5rem 0.7rem 2.5rem;
    color: var(--gri);
    font-size: 0.9rem;
    text-decoration: none;
    transition: all 0.3s;
    border-radius: 5px;
    background-color: var(--gri-acik);
}

.sidebar-menu .submenu > li > a:hover {
    background-color: var(--kirmizi);
    color: var(--beyaz);
    transform: translateX(5px);
}

/* Normal submenu (diğer sayfalar için) */
.submenu {
    position: absolute;
    top: 0;
    left: 100%;
    background-color: var(--beyaz);
    min-width: 200px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3);
    list-style: none;
    padding: 0.5rem 0;
    margin: 0;
    opacity: 0;
    visibility: hidden;
    transform: translateX(-10px);
    transition: all 0.3s;
    z-index: 1001;
}

.sub-nav .has-submenu:hover .submenu {
    opacity: 1;
    visibility: visible;
    transform: translateX(0);
}

.submenu > li > a {
    display: block;
    padding: 0.7rem 1.5rem;
    color: var(--siyah);
    text-decoration: none;
    transition: all 0.3s;
    font-weight: 400;
    font-size: 0.95rem;
}

.submenu > li > a:hover {
    background-color: var(--gri-acik);
    color: var(--kirmizi);
    padding-left: 2rem;
}

.header-buttons {
    display: flex;
    gap: 1rem;
    align-items: center;
}

/* Profil İkonu */
.profile-icon-container {
    position: relative;
    display: flex;
    align-items: center;
}

.profile-icon-link {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 54px;
    height: 54px;
    background-color: transparent;
    border-radius: 50%;
    text-decoration: none;
    transition: all 0.3s;
    border: 2px solid transparent;
}

.profile-icon-link:hover {
    background-color: var(--gri-acik);
    transform: scale(1.05);
}

.profile-icon {
    width: 28px;
    height: 28px;
    display: block;
    position: relative;
    border: 2px solid var(--beyaz);
    border-radius: 50%;
    background-color: transparent;
    transition: all 0.3s;
}

.profile-icon::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -30%);
    width: 9px;
    height: 9px;
    background-color: var(--beyaz);
    border-radius: 50%;
    transition: all 0.3s;
}

.profile-icon::after {
    content: '';
    position: absolute;
    bottom: 2px;
    left: 50%;
    transform: translateX(-50%);
    width: 14px;
    height: 9px;
    border: 2px solid var(--beyaz);
    border-top: none;
    border-radius: 0 0 14px 14px;
    transition: all 0.3s;
}

.profile-icon-link:hover .profile-icon {
    border-color: var(--siyah);
}

.profile-icon-link:hover .profile-icon::before {
    background-color: var(--siyah);
}

.profile-icon-link:hover .profile-icon::after {
    border-color: var(--siyah);
}

/* Header: kullanıcı avatarı (dairesel) */
.profile-icon-avatar-wrap {
    position: relative;
    width: 46px;
    height: 46px;
    border-radius: 50%;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.header-profile-avatar {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 50%;
    display: none;
    border: 2px solid var(--beyaz);
    box-sizing: border-box;
}

.header-profile-avatar.header-profile-avatar--visible {
    display: block;
}

.profile-icon-link--avatar {
    border: 2px solid transparent;
}

.profile-icon-link--avatar:hover {
    background-color: transparent;
    transform: scale(1.05);
}

.profile-icon-link--avatar:hover .header-profile-avatar {
    border-color: var(--kirmizi);
    box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.35);
}

.profile-icon-link--avatar:hover .profile-icon {
    border-color: var(--beyaz);
}

/* Profil Dropdown Menü */
.profile-dropdown {
    position: absolute;
    top: calc(100% + 10px);
    right: 0;
    background-color: var(--beyaz);
    border-radius: 10px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3);
    min-width: 200px;
    opacity: 0;
    visibility: hidden;
    transform: translateY(-10px);
    transition: all 0.3s ease;
    z-index: 1001;
    overflow: hidden;
}

.profile-icon-container:hover .profile-dropdown {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.profile-dropdown-item {
    display: block;
    padding: 1rem 1.5rem;
    color: var(--siyah);
    text-decoration: none;
    transition: all 0.3s;
    border-bottom: 1px solid #eee;
    font-weight: 500;
}

.profile-dropdown-item:last-child {
    border-bottom: none;
}

.profile-dropdown-item:hover {
    background-color: var(--gri-acik);
    color: var(--kirmizi);
    padding-left: 2rem;
}

.profile-dropdown-item.logout-item {
    color: var(--kirmizi);
    border-top: 2px solid #eee;
    font-weight: 600;
}

.profile-dropdown-item.logout-item:hover {
    background-color: var(--kirmizi);
    color: var(--beyaz);
}

/* Yönetim paneli sarmalayıcı: ek border-top yok (üstteki öğenin border-bottom’u tek çizgi). */
.profile-dropdown-admin-slot {
    margin: 0;
    padding: 0;
}

/* Header bildirimleri (siyah / kırmızı / sarı paleti) */
.header-notifications {
    position: relative;
    display: flex;
    align-items: center;
    margin-right: 0.6rem;
}

.header-notif-btn-wrap {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}

.header-notif-btn {
    width: 40px;
    height: 40px;
    border: none;
    background: transparent;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: opacity 0.2s ease;
    padding: 0;
}

.header-notif-btn:hover {
    opacity: 0.9;
}

.header-notif-btn:focus-visible {
    outline: 2px solid var(--beyaz);
    outline-offset: 2px;
}

.header-notif-btn__icon {
    width: 26px;
    height: 26px;
    display: block;
    fill: none;
    stroke: var(--beyaz);
    stroke-width: 1.65;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.header-notif-badge {
    position: absolute;
    top: -3px;
    right: -3px;
    box-sizing: border-box;
    min-width: 20px;
    height: 20px;
    padding: 0 5px;
    border-radius: 999px;
    background: linear-gradient(135deg, var(--kirmizi) 0%, var(--kirmizi-koyu) 100%);
    color: var(--beyaz);
    font-size: 0.75rem;
    font-weight: 700;
    line-height: 1;
    font-variant-numeric: tabular-nums;
    align-items: center;
    justify-content: center;
    text-align: center;
    border: 2px solid var(--siyah);
    box-shadow: 0 2px 6px rgba(220, 20, 60, 0.45);
}

.header-notif-panel {
    position: absolute;
    right: 0;
    top: calc(100% + 10px);
    width: min(340px, calc(100vw - 24px));
    max-height: 420px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    z-index: 10020;
    border-radius: 10px;
    border: 1px solid rgba(0, 0, 0, 0.1);
    background: var(--beyaz);
    box-shadow: 0 16px 48px rgba(0, 0, 0, 0.22);
}

.header-notif-panel__head {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 0.5rem;
    padding: 0.75rem 1rem;
    background: var(--siyah);
    color: var(--beyaz);
    border-bottom: 2px solid var(--kirmizi);
}

.header-notif-panel__title {
    font-weight: 600;
    font-size: 0.9375rem;
    letter-spacing: 0.01em;
}

.header-notif-panel__body {
    padding: 0;
    overflow-x: hidden;
    overflow-y: auto;
    max-height: 340px;
    background: var(--beyaz);
    -webkit-overflow-scrolling: touch;
}

.header-notif-panel__body::-webkit-scrollbar {
    width: 6px;
}

.header-notif-panel__body::-webkit-scrollbar-track {
    background: var(--gri-acik);
}

.header-notif-panel__body::-webkit-scrollbar-thumb {
    background: rgba(0, 0, 0, 0.2);
    border-radius: 999px;
}

.header-notif-empty {
    padding: 1.75rem 1.25rem;
    text-align: center;
}

.header-notif-empty__svg {
    width: 40px;
    height: 40px;
    margin: 0 auto 0.75rem;
    display: block;
    color: rgba(0, 0, 0, 0.22);
}

.header-notif-empty__text {
    margin: 0;
    font-size: 0.875rem;
    color: var(--gri);
    font-weight: 500;
}

.header-notif-item {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    text-decoration: none;
    color: inherit;
    padding: 0.85rem 1rem;
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
    transition: background-color 0.18s ease;
    position: relative;
    min-width: 0;
}

.header-notif-item:last-child {
    border-bottom: none;
}

.header-notif-item:hover {
    background-color: var(--gri-acik);
}

.header-notif-item__icon-wrap {
    flex-shrink: 0;
    width: 40px;
    height: 40px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(0, 0, 0, 0.05);
    color: var(--kirmizi);
}

.header-notif-item--price .header-notif-item__icon-wrap {
    color: var(--kirmizi-koyu);
    background: rgba(220, 20, 60, 0.08);
}

.header-notif-item--message .header-notif-item__icon-wrap {
    background: rgba(220, 20, 60, 0.08);
}

.header-notif-item__glyph {
    width: 20px;
    height: 20px;
    display: block;
}

.header-notif-item__content {
    flex: 1;
    min-width: 0;
    padding: 0;
}

.header-notif-item__title {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--siyah);
    line-height: 1.4;
    word-wrap: break-word;
}

.header-notif-item__subtitle {
    font-size: 0.8125rem;
    color: var(--gri);
    margin-top: 0.25rem;
    line-height: 1.45;
    word-wrap: break-word;
}

/* Mesaj balonu: gönderen tikleri (WhatsApp benzeri) */
.msg-ticks {
    display: inline-block;
    font-size: 0.72rem;
    font-weight: 600;
    letter-spacing: -0.12em;
    line-height: 1;
    vertical-align: middle;
}

.msg-ticks--sent,
.msg-ticks--delivered {
    color: #8696a0;
}

.msg-ticks--read {
    color: #53bdeb;
}

/* Profil — Mesajlar (modern sohbet düzeni) */
.profile-messages-card {
    background: var(--beyaz);
    border-radius: 14px;
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.08);
    border: 1px solid rgba(0, 0, 0, 0.06);
    padding: 1.35rem 1.35rem 1.5rem;
    overflow: hidden;
}

.profile-messages-card__title {
    margin: 0 0 1.1rem;
    font-size: 1.35rem;
    font-weight: 700;
    color: var(--siyah);
    letter-spacing: -0.02em;
}

.profile-messages-layout {
    display: grid;
    grid-template-columns: minmax(260px, 300px) 1fr;
    grid-template-rows: minmax(0, 1fr);
    gap: 0;
    min-height: 0;
    height: max(320px, min(640px, 58vh, calc(100vh - 14rem)));
    border-radius: 12px;
    overflow: hidden;
    border: 1px solid rgba(0, 0, 0, 0.08);
    background: var(--beyaz);
}

.profile-messages-layout > .profile-msgs-sidebar,
.profile-messages-layout > .profile-msgs-chat {
    min-height: 0;
    align-self: stretch;
}

.profile-msgs-sidebar {
    display: flex;
    flex-direction: column;
    background: linear-gradient(180deg, #fafafa 0%, #f5f5f5 100%);
    border-right: 1px solid rgba(0, 0, 0, 0.08);
    overflow-x: hidden;
    overflow-y: auto;
    min-height: 0;
}

.profile-msgs-chat {
    display: flex;
    flex-direction: column;
    min-height: 0;
    min-width: 0;
    overflow: hidden;
    background: var(--beyaz);
}

.profile-msgs-chat__header {
    flex-shrink: 0;
    padding: 1rem 1.15rem;
    font-weight: 600;
    font-size: 0.95rem;
    color: var(--beyaz);
    background: linear-gradient(135deg, var(--siyah) 0%, var(--gri-koyu) 100%);
    border-bottom: 3px solid var(--kirmizi);
    line-height: 1.35;
}

.profile-msgs-contact {
    flex-shrink: 0;
    padding: 0.85rem 1.15rem;
    background: linear-gradient(90deg, rgba(220, 20, 60, 0.06) 0%, rgba(250, 250, 250, 0.9) 100%);
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
}

.profile-msgs-contact__label {
    font-size: 0.68rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--kirmizi);
}

.profile-msgs-contact__name {
    font-weight: 600;
    color: var(--siyah);
    margin-top: 0.25rem;
    font-size: 0.95rem;
}

.profile-msgs-contact__line {
    font-size: 0.84rem;
    color: var(--gri);
    margin-top: 0.2rem;
}

.profile-msgs-body {
    flex: 1;
    min-height: 0;
    overflow-x: hidden;
    overflow-y: auto;
    padding: 1rem 1.1rem;
    background-color: #eceff1;
    background-image: radial-gradient(circle at 1px 1px, rgba(0, 0, 0, 0.04) 1px, transparent 0);
    background-size: 20px 20px;
}

.profile-msgs-body::-webkit-scrollbar {
    width: 8px;
}

.profile-msgs-body::-webkit-scrollbar-thumb {
    background: rgba(0, 0, 0, 0.15);
    border-radius: 999px;
}

.profile-msgs-compose {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    gap: 0.65rem;
    padding: 0.85rem 1rem;
    background: var(--beyaz);
    border-top: 1px solid rgba(0, 0, 0, 0.08);
    box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.04);
}

.profile-msgs-compose__input {
    flex: 1;
    min-width: 0;
    border: 1px solid rgba(0, 0, 0, 0.12);
    border-radius: 999px;
    padding: 0.7rem 1.1rem;
    font-size: 0.92rem;
    font-family: inherit;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.profile-msgs-compose__input:focus {
    outline: none;
    border-color: var(--kirmizi);
    box-shadow: 0 0 0 3px rgba(220, 20, 60, 0.12);
}

.profile-msgs-compose__send {
    flex-shrink: 0;
    border-radius: 999px;
    padding: 0.65rem 1.35rem;
    font-weight: 600;
    font-size: 0.9rem;
}

.profile-msgs-placeholder {
    margin: 0;
    padding: 1.25rem 1rem;
    color: var(--gri);
    font-size: 0.9rem;
    text-align: center;
}

.profile-msgs-placeholder--center {
    text-align: center;
    padding: 2rem 1rem;
}

/* Konuşma listesi satırı */
.msg-conv-item {
    width: 100%;
    text-align: left;
    padding: 0.85rem 1rem;
    border: none;
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
    background: transparent;
    cursor: pointer;
    transition: background 0.18s ease, box-shadow 0.18s ease;
}

.msg-conv-item:hover {
    background: rgba(255, 255, 255, 0.85);
}

.msg-conv-item--active {
    background: var(--beyaz);
    box-shadow: inset 3px 0 0 var(--kirmizi);
}

.msg-conv-item--unread {
    background: rgba(220, 20, 60, 0.06);
}

.msg-conv-item--unread.msg-conv-item--active {
    background: linear-gradient(90deg, rgba(220, 20, 60, 0.1) 0%, var(--beyaz) 55%);
}

.msg-conv-item__top {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 0.5rem;
}

.msg-conv-item__name {
    font-size: 0.92rem;
    font-weight: 600;
    color: var(--siyah);
}

.msg-conv-item__badge {
    flex-shrink: 0;
    background: var(--kirmizi);
    color: var(--beyaz);
    font-size: 0.68rem;
    font-weight: 700;
    padding: 0.15rem 0.5rem;
    border-radius: 999px;
}

.msg-conv-item__listing {
    font-size: 0.78rem;
    color: var(--gri);
    margin-top: 0.25rem;
    line-height: 1.35;
}

.msg-conv-item__preview {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    margin-top: 0.4rem;
}

.msg-conv-item__snippet {
    font-size: 0.8rem;
    color: var(--gri);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    min-width: 0;
}

.msg-conv-item--unread .msg-conv-item__snippet {
    font-weight: 600;
    color: var(--siyah);
}

.msg-conv-item__hint {
    flex-shrink: 0;
    font-size: 0.68rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--kirmizi);
}

/* Mesaj balonları */
.msg-bubble-row {
    display: flex;
    margin: 0.4rem 0;
}

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

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

.msg-bubble {
    max-width: min(78%, 420px);
    padding: 0.65rem 0.85rem 0.55rem;
    border-radius: 14px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.06);
}

.msg-bubble--theirs {
    background: var(--beyaz);
    border: 1px solid rgba(0, 0, 0, 0.07);
    border-bottom-left-radius: 5px;
}

.msg-bubble--mine {
    background: linear-gradient(160deg, #fff5f6 0%, #ffeef0 100%);
    border: 1px solid rgba(220, 20, 60, 0.14);
    border-bottom-right-radius: 5px;
}

.msg-bubble__text {
    font-size: 0.92rem;
    color: var(--siyah);
    line-height: 1.45;
    white-space: pre-wrap;
    word-break: break-word;
}

.msg-bubble__meta {
    margin-top: 0.35rem;
    font-size: 0.72rem;
    color: var(--gri);
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 0.35rem;
    flex-wrap: wrap;
}

.msg-bubble--theirs .msg-bubble__meta {
    justify-content: flex-start;
}

@media (max-width: 900px) {
    .profile-messages-layout {
        grid-template-columns: 1fr;
        grid-template-rows: minmax(0, 200px) minmax(0, 1fr);
        height: max(400px, min(720px, 72vh, calc(100vh - 12rem)));
    }

    .profile-msgs-sidebar {
        border-right: none;
        border-bottom: 1px solid rgba(0, 0, 0, 0.08);
        max-height: none;
    }

    .profile-msgs-chat {
        min-height: 0;
    }
}

.btn {
    padding: 0.6rem 1.5rem;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    font-size: 1rem;
    font-weight: 600;
    text-decoration: none;
    display: inline-block;
    transition: all 0.3s;
}

.btn-primary {
    background-color: var(--kirmizi);
    color: var(--beyaz);
}

.btn-primary:hover {
    background-color: var(--kirmizi-koyu);
    transform: translateY(-2px);
}

.btn-secondary {
    background-color: transparent;
    color: var(--beyaz);
    border: 2px solid var(--beyaz);
}

.btn-secondary:hover {
    background-color: var(--beyaz);
    color: var(--siyah);
}

/* Hero Section */
.hero {
    background: linear-gradient(135deg, var(--siyah) 0%, var(--gri-koyu) 100%);
    color: var(--beyaz);
    padding: 4rem 2rem;
    text-align: center;
}

.hero-container {
    max-width: 1200px;
    margin: 0 auto;
}

.hero h1 {
    font-size: 3rem;
    margin-bottom: 1rem;
}

.hero p {
    font-size: 1.2rem;
    margin-bottom: 2rem;
    color: #ccc;
}

/* Arama Kutusu */
.search-box {
    max-width: 800px;
    margin: 2rem auto;
    display: flex;
    gap: 0.5rem;
    background-color: var(--beyaz);
    padding: 0.5rem;
    border-radius: 10px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
}

.search-box input {
    flex: 1;
    padding: 1rem;
    border: 2px solid #ddd;
    border-radius: 5px;
    font-size: 1rem;
}

.search-box input:focus {
    outline: none;
    border-color: var(--kirmizi);
}

.search-box button {
    padding: 1rem 2rem;
    background-color: var(--kirmizi);
    color: var(--beyaz);
    border: none;
    border-radius: 5px;
    cursor: pointer;
    font-size: 1rem;
    font-weight: 600;
}

.search-box button:hover {
    background-color: var(--kirmizi-koyu);
}

/* Container */
.container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 2rem;
}

/* Kategoriler */
.categories {
    padding: 3rem 0;
    background-color: var(--gri-acik);
}

.categories h2 {
    text-align: center;
    margin-bottom: 2rem;
    font-size: 2rem;
    color: var(--siyah);
}

.category-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 1.5rem;
}

.category-card {
    background-color: var(--beyaz);
    padding: 2rem;
    border-radius: 10px;
    text-align: center;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    transition: transform 0.3s, box-shadow 0.3s;
    cursor: pointer;
    border: 2px solid transparent;
}

.category-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 5px 20px rgba(220, 20, 60, 0.3);
    border-color: var(--kirmizi);
}

.category-card .icon {
    font-size: 3rem;
    margin-bottom: 1rem;
}

.category-card h3 {
    color: var(--siyah);
    margin-bottom: 0.5rem;
}

.category-card p {
    color: var(--gri);
    font-size: 0.9rem;
}

/* Ana İçerik Alanı */
.main-content {
    flex: 1;
    padding: 2rem;
    background-color: var(--gri-acik);
}

.listings-container {
    max-width: 100%;
}

.listings-title {
    font-size: 2rem;
    color: var(--siyah);
    margin-bottom: 2rem;
    padding-bottom: 1rem;
    border-bottom: 2px solid var(--kirmizi);
}

.listings-header-section {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 2rem;
}

/* Filtreleme Paneli */
.filter-panel {
    background-color: var(--beyaz);
    border-radius: 10px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    padding: 1.5rem;
    margin-bottom: 2rem;
    border: 2px solid var(--gri-acik);
}

.filter-panel-header {
    margin-bottom: 1.5rem;
    padding-bottom: 1rem;
    border-bottom: 2px solid var(--kirmizi);
}

.filter-panel-header h3 {
    color: var(--siyah);
    font-size: 1.5rem;
    margin: 0;
}

.filter-panel-body {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 1rem;
    margin-bottom: 1.5rem;
}

.filter-group {
    display: flex;
    flex-direction: column;
}

.filter-group label {
    font-weight: 600;
    color: var(--siyah);
    margin-bottom: 0.5rem;
    font-size: 0.9rem;
}

.filter-input {
    padding: 0.7rem;
    border: 2px solid #ddd;
    border-radius: 5px;
    font-size: 0.9rem;
    transition: border-color 0.3s;
}

.filter-input:focus {
    outline: none;
    border-color: var(--kirmizi);
}

.filter-panel-actions {
    display: flex;
    gap: 1rem;
    justify-content: flex-end;
    padding-top: 1rem;
    border-top: 1px solid #eee;
}

.filter-apply-btn,
.filter-reset-btn {
    padding: 0.7rem 1.5rem;
    border: none;
    border-radius: 5px;
    font-size: 1rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s;
}

.filter-apply-btn {
    background-color: var(--kirmizi);
    color: var(--beyaz);
}

.filter-apply-btn:hover {
    background-color: var(--kirmizi-koyu);
}

.filter-reset-btn {
    background-color: var(--gri);
    color: var(--beyaz);
}

.filter-reset-btn:hover {
    background-color: var(--gri-koyu);
}

/* İlan Grupları */
.listing-group {
    margin-bottom: 3rem;
}

.listing-group:not(:last-child) {
    border-bottom: 2px solid #ddd;
    padding-bottom: 2rem;
}

/* İlanlar */
.listings {
    padding: 3rem 0;
}

.listings-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 2rem;
}

.listings-header h2 {
    font-size: 2rem;
    color: var(--siyah);
}

.filter-btn {
    padding: 0.5rem 1rem;
    background-color: var(--gri);
    color: var(--beyaz);
    border: none;
    border-radius: 5px;
    cursor: pointer;
}

.filter-btn:hover {
    background-color: var(--kirmizi);
}

.listing-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1rem;
}

/* Ana sayfa için özel grid düzeni */
.main-content .listing-grid {
    grid-template-columns: repeat(4, 1fr);
}

.listing-card {
    background-color: var(--beyaz);
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    transition: transform 0.3s, box-shadow 0.3s;
    cursor: pointer;
    border: 1px solid #eee;
}

.listing-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 4px 15px rgba(220, 20, 60, 0.15);
}

.listing-image {
    width: 100%;
    height: 140px;
    background: linear-gradient(135deg, var(--gri-koyu) 0%, var(--gri) 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--beyaz);
    font-size: 2.2rem;
}

.listing-content {
    padding: 1rem;
}

.listing-title {
    font-size: 1rem;
    font-weight: 600;
    margin-bottom: 0.4rem;
    color: var(--siyah);
    line-height: 1.3;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.listing-location {
    color: var(--gri);
    font-size: 0.8rem;
    margin-bottom: 0.6rem;
}

.listing-price {
    font-size: 1.2rem;
    font-weight: bold;
    color: var(--kirmizi);
    margin-bottom: 0.4rem;
}

.listing-date {
    color: var(--gri);
    font-size: 0.75rem;
}

/* Form Stilleri */
.form-container {
    max-width: 800px;
    margin: 2rem auto;
    background-color: var(--beyaz);
    padding: 2rem;
    border-radius: 10px;
    box-shadow: 0 2px 15px rgba(0, 0, 0, 0.1);
}

/* BRSM dokümantasyon şeridi (auth.js) */
a.brsm-doc-banner {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    box-sizing: border-box;
    margin: 0;
    padding: 0.45rem 1rem;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    text-decoration: none;
    color: #f5f7fa;
    background: linear-gradient(90deg, #0f172a 0%, #1e3a5f 50%, #0f172a 100%);
    border-bottom: 1px solid rgba(255, 255, 255, 0.12);
    z-index: 10001;
    position: relative;
    flex-shrink: 0;
}

a.brsm-doc-banner:hover {
    color: #fff;
    background: linear-gradient(90deg, #1e293b 0%, #2563eb 50%, #1e293b 100%);
}

a.brsm-doc-banner:focus-visible {
    outline: 2px solid #fff;
    outline-offset: -2px;
}

/* Giriş — test hesapları paneli */
.login-demo-panel {
    margin: 0 0 1.75rem;
    padding: 1rem 1.15rem;
    border-radius: 8px;
    border: 1px solid rgba(0, 0, 0, 0.08);
    background: linear-gradient(180deg, #f8f9fb 0%, #f0f2f6 100%);
}

.login-demo-panel__title {
    margin: 0 0 0.5rem;
    font-size: 0.95rem;
    font-weight: 700;
    color: var(--siyah);
}

.login-demo-panel__note {
    margin: 0 0 1rem;
    font-size: 0.8rem;
    line-height: 1.45;
    color: var(--gri);
}

.login-demo-panel__note code {
    font-size: 0.72rem;
    background: rgba(0, 0, 0, 0.06);
    padding: 0.1em 0.35em;
    border-radius: 4px;
}

.login-demo-panel__list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 0.65rem;
}

.login-demo-panel__row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem 0.75rem;
    padding: 0.55rem 0.65rem;
    background: var(--beyaz);
    border-radius: 6px;
    border: 1px solid rgba(0, 0, 0, 0.06);
}

.login-demo-panel__meta {
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
    min-width: 0;
    flex: 1;
}

.login-demo-panel__role {
    font-size: 0.78rem;
    font-weight: 600;
    color: var(--siyah);
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.login-demo-panel__email {
    font-size: 0.82rem;
    word-break: break-all;
    color: #333;
}

.login-demo-panel__row .btn.btn-secondary {
    flex-shrink: 0;
    padding: 0.4rem 0.85rem;
    font-size: 0.82rem;
}

/* Wizard Stilleri */
.wizard-steps {
    display: flex;
    justify-content: space-between;
    margin-bottom: 2rem;
    position: relative;
    padding: 0 1rem;
}

.wizard-steps::before {
    content: '';
    position: absolute;
    top: 20px;
    left: 10%;
    right: 10%;
    height: 2px;
    background-color: #ddd;
    z-index: 0;
}

.wizard-step {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
    position: relative;
    z-index: 1;
    flex: 1;
}

.step-number {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background-color: #ddd;
    color: var(--beyaz);
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    transition: all 0.3s ease;
}

.step-label {
    font-size: 0.85rem;
    color: var(--gri);
    text-align: center;
}

.wizard-step.active .step-number {
    background-color: var(--kirmizi);
}

.wizard-step.completed .step-number {
    background-color: #4CAF50;
}

.wizard-step.completed .step-number::after {
    content: '✓';
}

.wizard-form-step {
    display: none;
}

.wizard-form-step.active {
    display: block;
    animation: fadeIn 0.3s ease;
}

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.wizard-navigation {
    display: flex;
    justify-content: space-between;
    margin-top: 2rem;
    padding-top: 2rem;
    border-top: 1px solid #ddd;
}

.wizard-preview {
    background-color: var(--gri-acik);
    padding: 1.5rem;
    border-radius: 10px;
    margin-bottom: 1rem;
}

.wizard-preview-item {
    margin-bottom: 1rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid #ddd;
}

.wizard-preview-item:last-child {
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0;
}

.wizard-preview-label {
    font-weight: 600;
    color: var(--gri);
    font-size: 0.9rem;
    margin-bottom: 0.25rem;
}

.wizard-preview-value {
    color: var(--siyah);
    font-size: 1rem;
}

.form-group {
    margin-bottom: 1.5rem;
}

.form-group label {
    display: block;
    margin-bottom: 0.5rem;
    font-weight: 600;
    color: var(--siyah);
}

.form-group input,
.form-group select,
.form-group textarea {
    width: 100%;
    padding: 0.8rem;
    border: 2px solid #ddd;
    border-radius: 5px;
    font-size: 1rem;
    font-family: inherit;
}

.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus {
    outline: none;
    border-color: var(--kirmizi);
}

.form-group textarea {
    resize: vertical;
    min-height: 120px;
}

.form-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
}

/* İlan Detay */
.detail-container {
    max-width: 1000px;
    margin: 2rem auto;
    padding: 2rem;
}

.detail-header {
    margin-bottom: 2rem;
}

.detail-title {
    font-size: 2rem;
    margin-bottom: 0.5rem;
    color: var(--siyah);
}

.detail-location {
    color: var(--gri);
    font-size: 1.1rem;
    margin-bottom: 1rem;
}

.detail-price {
    font-size: 2.5rem;
    font-weight: bold;
    color: var(--kirmizi);
    margin-bottom: 1rem;
}

.detail-meta {
    line-height: 1.45;
}

.detail-review-note {
    margin: 0 0 0.75rem 0;
    padding: 0.65rem 0.85rem;
    border-radius: 8px;
    background: rgba(255, 193, 7, 0.15);
    border: 1px solid rgba(255, 193, 7, 0.45);
    color: var(--siyah);
    font-size: 0.95rem;
}

.detail-image {
    width: 100%;
    height: 400px;
    background: linear-gradient(135deg, var(--gri-koyu) 0%, var(--gri) 100%);
    border-radius: 10px;
    margin-bottom: 2rem;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--beyaz);
    font-size: 4rem;
}

.detail-content {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 2rem;
}

.detail-info {
    background-color: var(--beyaz);
    padding: 2rem;
    border-radius: 10px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}

.detail-info h3 {
    margin-bottom: 1rem;
    color: var(--siyah);
    border-bottom: 2px solid var(--kirmizi);
    padding-bottom: 0.5rem;
}

.detail-info p {
    margin-bottom: 1rem;
    line-height: 1.8;
}

.detail-attr-section {
    display: flex;
    flex-direction: column;
    gap: 0.65rem;
    margin-top: 0.5rem;
}

.detail-attr-row {
    display: grid;
    grid-template-columns: minmax(8rem, 34%) 1fr;
    gap: 0.75rem 1rem;
    align-items: start;
    padding: 0.55rem 0;
    border-bottom: 1px solid #eef2f6;
    font-size: 0.95rem;
}

.detail-attr-row:last-child {
    border-bottom: none;
}

.detail-attr-label {
    font-weight: 700;
    color: #475569;
}

.detail-attr-value {
    color: #0f172a;
    line-height: 1.5;
    word-break: break-word;
}

.detail-attr-row--empty .detail-attr-value {
    color: #94a3b8;
    font-style: italic;
}

@media (max-width: 560px) {
    .detail-attr-row {
        grid-template-columns: 1fr;
        gap: 0.2rem;
    }
}

.detail-sidebar {
    background-color: var(--beyaz);
    padding: 2rem;
    border-radius: 10px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    height: fit-content;
}

.contact-box {
    text-align: center;
}

.contact-box h3 {
    margin-bottom: 1rem;
    color: var(--siyah);
}

.contact-btn {
    width: 100%;
    padding: 1rem;
    background-color: var(--kirmizi);
    color: var(--beyaz);
    border: none;
    border-radius: 5px;
    font-size: 1.1rem;
    font-weight: 600;
    cursor: pointer;
    margin-bottom: 1rem;
}

.contact-btn:hover {
    background-color: var(--kirmizi-koyu);
}

/* Footer */
footer {
    background-color: var(--siyah);
    color: var(--beyaz);
    padding: 3rem 2rem;
    margin-top: 4rem;
}

.footer-container {
    max-width: 1200px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 2rem;
}

/* Dinamik menü sütunları grid hücrelerine yayılır */
.footer-nav-dynamic {
    display: contents;
}

.footer-section h3 {
    color: var(--kirmizi);
    margin-bottom: 1rem;
}

.footer-section ul {
    list-style: none;
}

.footer-section ul li {
    margin-bottom: 0.5rem;
}

.footer-section a {
    color: #ccc;
    text-decoration: none;
    transition: color 0.2s ease, background 0.2s ease;
    border-radius: 6px;
    margin-left: -0.2rem;
    padding: 0.2rem 0.35rem;
}

.footer-section a:hover {
    color: #fff;
    background: rgba(220, 53, 69, 0.22);
}

.footer-bottom {
    text-align: center;
    margin-top: 2rem;
    padding-top: 2rem;
    border-top: 1px solid var(--gri);
    color: #ccc;
}

/* Badge */
.badge {
    display: inline-block;
    padding: 0.3rem 0.8rem;
    background-color: var(--sari);
    color: var(--siyah);
    border-radius: 20px;
    font-size: 0.85rem;
    font-weight: 600;
    margin-left: 0.5rem;
}

/* Filtre Modal */
.filter-modal {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.7);
    z-index: 2000;
    overflow-y: auto;
}

.filter-modal.active {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    padding: 2rem;
}

.filter-modal-content {
    background-color: var(--beyaz);
    border-radius: 10px;
    width: 100%;
    max-width: 800px;
    margin-top: 2rem;
    margin-bottom: 2rem;
    box-shadow: 0 5px 30px rgba(0, 0, 0, 0.5);
    position: relative;
}

.filter-modal-header {
    background-color: var(--siyah);
    color: var(--beyaz);
    padding: 1.5rem;
    border-radius: 10px 10px 0 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.filter-modal-header h2 {
    margin: 0;
    color: var(--beyaz);
}

.filter-close {
    background: none;
    border: none;
    color: var(--beyaz);
    font-size: 2rem;
    cursor: pointer;
    padding: 0;
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 5px;
    transition: background-color 0.3s;
}

.filter-close:hover {
    background-color: var(--gri);
}

.filter-modal-body {
    padding: 2rem;
}

.filter-section {
    margin-bottom: 2rem;
    padding-bottom: 2rem;
    border-bottom: 1px solid #eee;
}

.filter-section:last-child {
    border-bottom: none;
}

.filter-section h3 {
    color: var(--siyah);
    margin-bottom: 1rem;
    font-size: 1.2rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.filter-section h3::before {
    content: '';
    width: 4px;
    height: 20px;
    background-color: var(--kirmizi);
    display: inline-block;
}

/* Kademeli Kategori Seçimi */
.category-steps {
    display: flex;
    gap: 1rem;
    margin-bottom: 1.5rem;
    flex-wrap: wrap;
}

.category-step {
    flex: 1;
    min-width: 200px;
}

.category-step-label {
    font-weight: 600;
    margin-bottom: 0.5rem;
    color: var(--gri);
    font-size: 0.9rem;
}

.category-options {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
    gap: 0.5rem;
    margin-top: 1rem;
}

.category-option {
    padding: 0.8rem 1rem;
    background-color: var(--gri-acik);
    border: 2px solid transparent;
    border-radius: 5px;
    cursor: pointer;
    text-align: center;
    transition: all 0.3s;
    font-size: 0.9rem;
}

.category-option:hover {
    background-color: #e0e0e0;
    border-color: var(--kirmizi);
}

.category-option.selected {
    background-color: var(--kirmizi);
    color: var(--beyaz);
    border-color: var(--kirmizi);
    font-weight: 600;
}

.subcategory-options {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
    gap: 0.5rem;
    margin-top: 1rem;
}

.subcategory-option {
    padding: 0.6rem 0.8rem;
    background-color: var(--gri-acik);
    border: 2px solid transparent;
    border-radius: 5px;
    cursor: pointer;
    text-align: center;
    transition: all 0.3s;
    font-size: 0.85rem;
}

.subcategory-option:hover {
    background-color: #e0e0e0;
    border-color: var(--kirmizi);
}

.subcategory-option.selected {
    background-color: var(--kirmizi);
    color: var(--beyaz);
    border-color: var(--kirmizi);
    font-weight: 600;
}

/* Fiyat Aralığı */
.price-range {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
}

.price-input {
    padding: 0.8rem;
    border: 2px solid #ddd;
    border-radius: 5px;
    font-size: 1rem;
    width: 100%;
}

.price-input:focus {
    outline: none;
    border-color: var(--kirmizi);
}

/* Aktif Filtreler */
.active-filters {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-bottom: 1rem;
    padding: 1rem;
    background-color: var(--gri-acik);
    border-radius: 5px;
}

.active-filter {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.4rem 0.8rem;
    background-color: var(--kirmizi);
    color: var(--beyaz);
    border-radius: 20px;
    font-size: 0.85rem;
}

.active-filter-remove {
    background: none;
    border: none;
    color: var(--beyaz);
    cursor: pointer;
    font-size: 1.2rem;
    padding: 0;
    width: 18px;
    height: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    transition: background-color 0.3s;
}

.active-filter-remove:hover {
    background-color: rgba(255, 255, 255, 0.2);
}

/* Filtre Butonları */
.filter-actions {
    display: flex;
    gap: 1rem;
    justify-content: flex-end;
    padding: 1.5rem;
    background-color: var(--gri-acik);
    border-radius: 0 0 10px 10px;
}

.filter-actions button {
    padding: 0.8rem 2rem;
    border: none;
    border-radius: 5px;
    font-size: 1rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s;
}

.filter-apply {
    background-color: var(--kirmizi);
    color: var(--beyaz);
}

.filter-apply:hover {
    background-color: var(--kirmizi-koyu);
}

.filter-reset {
    background-color: var(--gri);
    color: var(--beyaz);
}

.filter-reset:hover {
    background-color: var(--gri-koyu);
}

/* Arama Geliştirmeleri */
.search-advanced {
    display: flex;
    gap: 0.5rem;
    margin-top: 1rem;
}

.search-advanced select {
    padding: 0.6rem;
    border: 2px solid #ddd;
    border-radius: 5px;
    font-size: 0.9rem;
}

.search-advanced select:focus {
    outline: none;
    border-color: var(--kirmizi);
}

/* Profil Sekmeleri */
.profile-tabs-bar {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    gap: 0.35rem 0.5rem;
    margin-bottom: 2rem;
    padding-bottom: 0;
    border-bottom: 2px solid #eee;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
}

.profile-tabs-bar::-webkit-scrollbar {
    height: 6px;
}

.profile-tabs-bar::-webkit-scrollbar-thumb {
    background: rgba(0, 0, 0, 0.15);
    border-radius: 999px;
}

.profile-tab {
    padding: 0.85rem 1.15rem;
    background: none;
    border: none;
    border-bottom: 3px solid transparent;
    cursor: pointer;
    font-size: 0.95rem;
    font-weight: 600;
    color: var(--gri);
    transition: color 0.2s ease, border-color 0.2s ease;
    flex: 0 0 auto;
    white-space: nowrap;
}

.profile-tab:hover {
    color: var(--kirmizi);
}

.profile-tab.active {
    color: var(--kirmizi);
    border-bottom-color: var(--kirmizi);
}

.profile-tab-content {
    display: none;
}

.profile-tab-content.active {
    display: block;
}

/* Kullanıcı Dropdown */
#userDropdown a {
    transition: background-color 0.3s;
}

#userDropdown a:hover {
    background-color: var(--gri-acik);
}

/* Arama Butonu İyileştirmeleri */
.search-box button {
    transition: all 0.3s;
    font-weight: 600;
}

.search-box button:hover {
    transform: scale(1.05);
    box-shadow: 0 2px 10px rgba(220, 20, 60, 0.3);
}

.search-box button:active {
    transform: scale(0.98);
}

/* Responsive */
@media (max-width: 1400px) {
    .main-content .listing-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 1200px) {
    .main-content .listing-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 1200px) {
    .header-search {
        max-width: 300px;
    }
}

@media (max-width: 768px) {
    .header-container {
        flex-wrap: wrap;
        gap: 1rem;
        padding: 1rem;
    }
    
    .header-search {
        order: 3;
        width: 100%;
        max-width: 100%;
        margin: 0;
    }
    
    .header-right {
        order: 2;
    }
    
    .logo {
        order: 1;
    }
    
    .profile-dropdown {
        right: auto;
        left: 0;
    }
    
    .main-content-wrapper {
        flex-direction: column;
        padding: 0.5rem;
        gap: 0.5rem;
    }

    .sidebar-menu {
        width: calc(100% - 1rem);
        height: auto;
        position: relative;
        top: 0;
        margin: 0.5rem;
        border-right: 2px solid var(--kirmizi);
        border-bottom: 2px solid var(--kirmizi);
    }

    .main-content {
        padding: 1rem;
    }

    .main-content .listing-grid {
        grid-template-columns: 1fr;
    }

    .header-container {
        flex-direction: column;
        gap: 1rem;
    }

    nav ul {
        flex-direction: column;
        gap: 1rem;
        text-align: center;
    }

    .hero h1 {
        font-size: 2rem;
    }

    .search-box {
        flex-direction: column;
    }

    .category-grid {
        grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    }

    .listing-grid {
        grid-template-columns: 1fr;
    }

    .form-row {
        grid-template-columns: 1fr;
    }

    .detail-content {
        grid-template-columns: 1fr;
    }

    .listings-header {
        flex-direction: column;
        align-items: flex-start;
        gap: 1rem;
    }

    .sub-nav {
        top: 60px;
    }

    .sub-nav-menu {
        flex-wrap: wrap;
    }

    .sub-nav-menu > li > a {
        padding: 0.8rem 1rem;
        font-size: 0.9rem;
    }

    .dropdown-menu {
        min-width: 200px;
    }

    .submenu {
        min-width: 180px;
    }

    .filter-modal.active {
        padding: 0;
        align-items: stretch;
    }

    .filter-modal-content {
        margin: 0;
        border-radius: 0;
        max-width: 100%;
        height: 100vh;
        overflow-y: auto;
    }

    .category-steps {
        flex-direction: column;
    }

    .category-step {
        min-width: 100%;
    }

    .price-range {
        grid-template-columns: 1fr;
    }

    .filter-actions {
        flex-direction: column;
    }

    .filter-actions button {
        width: 100%;
    }
}

/* Araç Kaporta Şeması Stilleri */
.vehicle-body-scheme {
    display: none;
    margin: 2rem 0;
    padding: 2rem;
    background-color: var(--gri-acik);
    border-radius: 10px;
    border: 2px solid var(--gri);
}

.vehicle-body-scheme.active {
    display: block;
}

.vehicle-scheme-title {
    font-size: 1.3rem;
    font-weight: bold;
    margin-bottom: 1.5rem;
    color: var(--siyah);
    text-align: center;
}

.vehicle-scheme-container {
    position: relative;
    width: 100%;
    max-width: 600px;
    margin: 0 auto;
    background-color: var(--beyaz);
    padding: 2rem;
    border-radius: 10px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}

.vehicle-svg {
    width: 100%;
    height: auto;
    display: block;
}

.vehicle-part {
    cursor: pointer;
    transition: all 0.3s ease;
    stroke: #333;
    stroke-width: 2;
}

.vehicle-part:hover {
    opacity: 0.7;
    stroke-width: 3;
}

.vehicle-part.original {
    fill: #808080;
    stroke: #666666;
}

.vehicle-part.local-paint {
    fill: #FF9800;
    stroke: #F57C00;
}

.vehicle-part.painted {
    fill: #2196F3;
    stroke: #1976D2;
}

.vehicle-part.changed-paint {
    fill: #F44336;
    stroke: #C62828;
}

.vehicle-part.selected {
    stroke: #000;
    stroke-width: 3;
    filter: drop-shadow(0 0 5px rgba(0, 0, 0, 0.5));
}

.part-status-controls {
    margin-top: 2rem;
    padding: 1.5rem;
    background-color: var(--beyaz);
    border-radius: 8px;
    border: 1px solid var(--gri);
}

.part-status-controls h4 {
    margin-bottom: 1rem;
    color: var(--siyah);
    font-size: 1.1rem;
}

.part-status-buttons {
    display: flex;
    gap: 1rem;
    flex-wrap: wrap;
}

.status-btn {
    padding: 0.8rem 1.5rem;
    border: 2px solid var(--gri);
    background-color: var(--beyaz);
    color: var(--siyah);
    border-radius: 5px;
    cursor: pointer;
    font-size: 0.95rem;
    transition: all 0.3s ease;
    font-weight: 500;
}

.status-btn:hover {
    background-color: var(--gri-acik);
    transform: translateY(-2px);
}

.status-btn.active.original {
    background-color: #808080;
    color: var(--beyaz);
    border-color: #666666;
}

.status-btn.active.local-paint {
    background-color: #FF9800;
    color: var(--beyaz);
    border-color: #F57C00;
}

.status-btn.active.painted {
    background-color: #2196F3;
    color: var(--beyaz);
    border-color: #1976D2;
}

.status-btn.active.changed-paint {
    background-color: #F44336;
    color: var(--beyaz);
    border-color: #C62828;
}

.status-legend {
    display: flex;
    gap: 2rem;
    margin-top: 1.5rem;
    padding-top: 1.5rem;
    border-top: 1px solid var(--gri);
    flex-wrap: wrap;
    justify-content: center;
}

.legend-item {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.9rem;
}

.legend-color {
    width: 20px;
    height: 20px;
    border-radius: 3px;
    border: 1px solid var(--gri);
}

.legend-color.original {
    background-color: #808080;
}

.legend-color.local-paint {
    background-color: #FF9800;
}

.legend-color.painted {
    background-color: #2196F3;
}

.legend-color.changed-paint {
    background-color: #F44336;
}

/* Donanım Özellikleri Bölümü */
.vehicle-equipment {
    display: none;
    margin: 2rem 0;
    padding: 2rem;
    background-color: var(--gri-acik);
    border-radius: 10px;
    border: 2px solid var(--gri);
}

.vehicle-equipment.active {
    display: block;
}

.equipment-title {
    font-size: 1.3rem;
    font-weight: bold;
    margin-bottom: 1.5rem;
    color: var(--siyah);
}

.equipment-packages {
    margin-bottom: 2rem;
}

.equipment-packages h4 {
    margin-bottom: 1rem;
    color: var(--siyah);
    font-size: 1.1rem;
}

.package-select {
    width: 100%;
    padding: 0.8rem;
    border: 2px solid var(--gri);
    border-radius: 5px;
    font-size: 1rem;
    background-color: var(--beyaz);
    color: var(--siyah);
    cursor: pointer;
}

.package-select:focus {
    outline: none;
    border-color: var(--kirmizi);
}

.equipment-features {
    margin-top: 2rem;
}

.equipment-features h4 {
    margin-bottom: 1rem;
    color: var(--siyah);
    font-size: 1.1rem;
}

.features-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap: 1rem;
}

.feature-checkbox {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem;
    background-color: var(--beyaz);
    border-radius: 5px;
    cursor: pointer;
    transition: all 0.3s ease;
}

.feature-checkbox:hover {
    background-color: var(--gri-acik);
}

.feature-checkbox input[type="checkbox"] {
    width: 18px;
    height: 18px;
    cursor: pointer;
    accent-color: var(--kirmizi);
}

.feature-checkbox label {
    cursor: pointer;
    font-size: 0.95rem;
    color: var(--siyah);
    margin: 0;
}

@media (max-width: 768px) {
    .vehicle-scheme-container {
        padding: 1rem;
    }
    
    .part-status-buttons {
        flex-direction: column;
    }
    
    .status-btn {
        width: 100%;
    }
    
    .features-grid {
        grid-template-columns: 1fr;
    }
    
    .status-legend {
        flex-direction: column;
        gap: 0.5rem;
    }
}

/* Fotoğraf Yükleme Stilleri */
.photo-upload-container {
    margin-top: 0.5rem;
}

.photo-upload-area {
    border: 2px dashed #ddd;
    border-radius: 10px;
    padding: 3rem 2rem;
    text-align: center;
    background-color: var(--gri-acik);
    cursor: pointer;
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
}

.photo-upload-area:hover {
    border-color: var(--kirmizi);
    background-color: #fafafa;
}

.photo-upload-area.drag-over {
    border-color: var(--kirmizi);
    background-color: #fff5f5;
}

.upload-placeholder {
    pointer-events: none;
}

.upload-icon {
    font-size: 3rem;
    display: block;
    margin-bottom: 1rem;
}

.upload-placeholder p {
    margin: 0.5rem 0;
    color: var(--gri);
    font-size: 0.95rem;
}

.upload-hint {
    font-size: 0.85rem !important;
    color: #999 !important;
}

.photo-preview-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
    gap: 1rem;
    margin-top: 1.5rem;
}

.photo-preview-item {
    position: relative;
    aspect-ratio: 1;
    border-radius: 8px;
    overflow: hidden;
    border: 2px solid #ddd;
    background-color: var(--gri-acik);
}

.photo-preview-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.photo-preview-item .photo-remove {
    position: absolute;
    top: 5px;
    right: 5px;
    background-color: rgba(220, 20, 60, 0.9);
    color: var(--beyaz);
    border: none;
    border-radius: 50%;
    width: 28px;
    height: 28px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.2rem;
    transition: all 0.3s ease;
    z-index: 10;
}

.photo-preview-item .photo-remove:hover {
    background-color: var(--kirmizi);
    transform: scale(1.1);
}

.photo-preview-item .photo-main {
    position: absolute;
    bottom: 5px;
    left: 5px;
    background-color: rgba(0, 0, 0, 0.7);
    color: var(--beyaz);
    padding: 0.3rem 0.6rem;
    border-radius: 5px;
    font-size: 0.75rem;
    font-weight: bold;
}

/* Görsel Galeri — genel */
.image-gallery {
    margin: 2rem 0;
    position: relative;
}

/* İlan detay galerisi — kırpma yok, oran korunur */
.image-gallery--listing {
    margin: 1.5rem 0 2.25rem;
    border-radius: 16px;
    overflow: hidden;
    border: 1px solid #e8ecf1;
    box-shadow:
        0 1px 3px rgba(15, 23, 42, 0.04),
        0 12px 40px rgba(15, 23, 42, 0.08);
    background: #fff;
}

.image-gallery--listing .gallery-stage {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    /* Dikey foto: yükseklik verilir; genel .gallery-main-image aspect-ratio:16/9 burada devreye girmesin */
    min-height: min(72vh, 720px);
    max-height: min(78vh, 820px);
    padding: 1rem 1.25rem;
    background: linear-gradient(165deg, #f8fafc 0%, #eef2f7 48%, #f1f5f9 100%);
}

.image-gallery--listing .gallery-main-image {
    display: block;
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: min(70vh, 760px);
    aspect-ratio: unset;
    object-fit: contain;
    object-position: center;
    border-radius: 12px;
    cursor: zoom-in;
    box-shadow: 0 6px 28px rgba(15, 23, 42, 0.12);
    transition: box-shadow 0.2s ease, transform 0.2s ease;
    background: #fff;
}

.image-gallery--listing .gallery-main-image:hover {
    box-shadow: 0 10px 36px rgba(15, 23, 42, 0.16);
}

.image-gallery--listing .gallery-counter {
    position: absolute;
    top: 12px;
    right: 12px;
    z-index: 2;
    background: rgba(15, 23, 42, 0.72);
    color: #fff;
    padding: 0.35rem 0.75rem;
    border-radius: 999px;
    font-size: 0.8rem;
    font-weight: 600;
    letter-spacing: 0.02em;
    backdrop-filter: blur(6px);
}

.gallery-thumbnails--listing {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    gap: 0.55rem;
    padding: 0.85rem 1rem 1rem;
    margin: 0;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x proximity;
    scrollbar-width: thin;
    scrollbar-color: #cbd5e1 transparent;
    background: #fff;
    border-top: 1px solid #eef2f6;
}

.gallery-thumbnails--listing::-webkit-scrollbar {
    height: 6px;
}

.gallery-thumbnails--listing::-webkit-scrollbar-thumb {
    background: #cbd5e1;
    border-radius: 999px;
}

.gallery-thumbnail {
    flex: 0 0 auto;
    width: 84px;
    height: 84px;
    object-fit: cover;
    border-radius: 10px;
    cursor: pointer;
    border: 2px solid transparent;
    transition:
        border-color 0.2s ease,
        opacity 0.2s ease,
        transform 0.15s ease;
    opacity: 0.72;
    scroll-snap-align: start;
    background: #f1f5f9;
}

/* İlan detay küçük resimler: genel .gallery-thumbnail (cover+kare) burada dikey fotoğrafı kesmesin */
.image-gallery--listing .gallery-thumbnails--listing .gallery-thumbnail {
    width: 72px;
    height: 96px;
    aspect-ratio: unset;
    object-fit: contain;
    object-position: center;
    padding: 3px;
    box-sizing: border-box;
    background: #eef2f6;
}

.gallery-thumbnail:hover {
    opacity: 1;
    border-color: rgba(220, 38, 38, 0.35);
}

.gallery-thumbnail.active {
    opacity: 1;
    border-color: var(--kirmizi);
    box-shadow: 0 0 0 1px rgba(220, 38, 38, 0.25);
    transform: translateY(-1px);
}

.gallery-main-image {
    width: 100%;
    aspect-ratio: 16/9;
    object-fit: cover;
    border-radius: 10px;
    cursor: pointer;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}

.gallery-thumbnails:not(.gallery-thumbnails--listing) {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(100px, 1fr));
    gap: 0.5rem;
    margin-top: 1rem;
}

.gallery-counter {
    position: absolute;
    top: 10px;
    right: 10px;
    background-color: rgba(0, 0, 0, 0.7);
    color: var(--beyaz);
    padding: 0.5rem 1rem;
    border-radius: 20px;
    font-size: 0.9rem;
}

/* Lightbox Modal */
.lightbox-modal {
    display: none;
    position: fixed;
    inset: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(8, 10, 16, 0.92);
    z-index: 10000;
    align-items: center;
    justify-content: center;
    padding: 4.5rem 1rem 1.5rem;
    box-sizing: border-box;
}

.lightbox-modal.active {
    display: flex;
}

.lightbox-content {
    position: relative;
    z-index: 1;
    max-width: min(96vw, 1200px);
    max-height: calc(100vh - 5rem);
    display: flex;
    align-items: center;
    justify-content: center;
}

.lightbox-image {
    max-width: 100%;
    max-height: calc(100vh - 5.5rem);
    width: auto;
    height: auto;
    object-fit: contain;
    border-radius: 8px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.45);
}

.lightbox-close {
    position: fixed;
    top: 1rem;
    right: 1rem;
    z-index: 10003;
    width: 48px;
    height: 48px;
    padding: 0;
    margin: 0;
    border: none;
    border-radius: 50%;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.14);
    border: 1px solid rgba(255, 255, 255, 0.35);
    color: #fff;
    transition:
        background 0.2s ease,
        transform 0.15s ease;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.25);
}

.lightbox-close:hover {
    background: rgba(220, 38, 38, 0.85);
    border-color: rgba(255, 255, 255, 0.5);
    transform: scale(1.05);
}

.lightbox-close:focus-visible {
    outline: 2px solid #fff;
    outline-offset: 3px;
}

/* CSS “X” — her fontta net görünür */
.lightbox-close__icon {
    position: relative;
    width: 22px;
    height: 22px;
    display: block;
}

.lightbox-close__icon::before,
.lightbox-close__icon::after {
    content: '';
    position: absolute;
    left: 50%;
    top: 50%;
    width: 22px;
    height: 2px;
    background: currentColor;
    border-radius: 1px;
}

.lightbox-close__icon::before {
    transform: translate(-50%, -50%) rotate(45deg);
}

.lightbox-close__icon::after {
    transform: translate(-50%, -50%) rotate(-45deg);
}

.lightbox-nav {
    position: fixed;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10002;
    background-color: rgba(255, 255, 255, 0.12);
    color: var(--beyaz);
    border: 1px solid rgba(255, 255, 255, 0.22);
    width: 48px;
    height: 48px;
    border-radius: 50%;
    cursor: pointer;
    font-size: 1.65rem;
    line-height: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.2s ease;
}

.lightbox-nav:hover {
    background-color: rgba(255, 255, 255, 0.24);
}

.lightbox-prev {
    left: max(12px, env(safe-area-inset-left, 12px));
}

.lightbox-next {
    right: max(12px, env(safe-area-inset-right, 12px));
}

@media (max-width: 640px) {
    .image-gallery--listing .gallery-stage {
        min-height: min(58vh, 520px);
        max-height: min(72vh, 640px);
        padding: 0.65rem;
    }

    .image-gallery--listing .gallery-main-image {
        max-height: min(64vh, 580px);
    }

    .image-gallery--listing .gallery-thumbnails--listing .gallery-thumbnail {
        width: 64px;
        height: 88px;
    }

    .gallery-thumbnail {
        width: 72px;
        height: 72px;
    }

    .lightbox-prev {
        left: 6px;
    }

    .lightbox-next {
        right: 6px;
    }
}

/* Favoriler Butonu */
.favorite-btn {
    background-color: transparent;
    border: 2px solid var(--gri);
    color: var(--gri);
    padding: 0.5rem 1rem;
    border-radius: 5px;
    cursor: pointer;
    font-size: 1rem;
    transition: all 0.3s ease;
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
}

.favorite-btn:hover {
    border-color: var(--kirmizi);
    color: var(--kirmizi);
}

.favorite-btn.active {
    background-color: var(--kirmizi);
    border-color: var(--kirmizi);
    color: var(--beyaz);
}

.favorite-btn.active::before {
    content: '❤️';
}

.favorite-btn:not(.active)::before {
    content: '🤍';
}

/* Paylaşma Butonları */
.share-buttons {
    display: flex;
    gap: 0.5rem;
    margin-top: 1rem;
    flex-wrap: wrap;
}

.share-btn {
    padding: 0.5rem 1rem;
    border: 1px solid var(--gri);
    background-color: var(--beyaz);
    color: var(--siyah);
    border-radius: 5px;
    cursor: pointer;
    font-size: 0.9rem;
    transition: all 0.3s ease;
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
}

.share-btn:hover {
    background-color: var(--gri-acik);
    transform: translateY(-2px);
}

.share-btn.facebook {
    border-color: #1877F2;
    color: #1877F2;
}

.share-btn.twitter {
    border-color: #1DA1F2;
    color: #1DA1F2;
}

.share-btn.whatsapp {
    border-color: #25D366;
    color: #25D366;
}

.share-btn.copy {
    border-color: var(--gri);
    color: var(--gri);
}

/* Breadcrumb Navigasyon */
.breadcrumb {
    padding: 1rem 0;
    margin-bottom: 1rem;
    font-size: 0.9rem;
}

.breadcrumb a {
    color: var(--gri);
    text-decoration: none;
    transition: color 0.3s ease;
}

.breadcrumb a:hover {
    color: var(--kirmizi);
}

.breadcrumb span {
    color: #999;
    margin: 0 0.5rem;
}

.breadcrumb .current {
    color: var(--siyah);
    font-weight: 600;
}

/* Gelişmiş Arama */
.advanced-search {
    background-color: var(--gri-acik);
    padding: 2rem;
    border-radius: 10px;
    margin-bottom: 2rem;
}

.search-filters {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 1rem;
    margin-bottom: 1rem;
}

.filter-group {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.filter-group label {
    font-size: 0.9rem;
    font-weight: 600;
    color: var(--siyah);
}

.filter-group input,
.filter-group select {
    padding: 0.6rem;
    border: 1px solid #ddd;
    border-radius: 5px;
    font-size: 0.9rem;
}

.price-range {
    display: flex;
    gap: 0.5rem;
    align-items: center;
}

.price-range input {
    flex: 1;
}

/* Sıralama */
.sort-options {
    display: flex;
    gap: 1rem;
    align-items: center;
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px solid #ddd;
}

.sort-options label {
    font-weight: 600;
    font-size: 0.9rem;
}

.sort-options select {
    padding: 0.5rem;
    border: 1px solid #ddd;
    border-radius: 5px;
}

/* Toast Bildirimleri */
.toast-container {
    position: fixed;
    top: 20px;
    right: 20px;
    z-index: 10000;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.toast {
    background-color: var(--beyaz);
    border-left: 4px solid var(--kirmizi);
    padding: 1rem 1.5rem;
    border-radius: 5px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    min-width: 300px;
    display: flex;
    align-items: center;
    gap: 1rem;
    animation: slideIn 0.3s ease;
}

.toast.success {
    border-left-color: #4CAF50;
}

.toast.error {
    border-left-color: var(--kirmizi);
}

.toast.info {
    border-left-color: #2196F3;
}

@keyframes slideIn {
    from {
        transform: translateX(400px);
        opacity: 0;
    }
    to {
        transform: translateX(0);
        opacity: 1;
    }
}

.toast-icon {
    font-size: 1.5rem;
}

.toast-content {
    flex: 1;
}

.toast-title {
    font-weight: 600;
    margin-bottom: 0.25rem;
}

.toast-message {
    font-size: 0.9rem;
    color: var(--gri);
}

.toast-close {
    background: none;
    border: none;
    font-size: 1.2rem;
    cursor: pointer;
    color: var(--gri);
    padding: 0;
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Yorum Sistemi */
.comments-section {
    margin-top: 3rem;
    padding-top: 2rem;
    border-top: 2px solid var(--gri-acik);
}

.comment-form {
    background-color: var(--gri-acik);
    padding: 1.5rem;
    border-radius: 10px;
    margin-bottom: 2rem;
}

.comment-form textarea {
    width: 100%;
    padding: 1rem;
    border: 1px solid #ddd;
    border-radius: 5px;
    resize: vertical;
    min-height: 100px;
    font-family: inherit;
    margin-bottom: 1rem;
}

.comment-list {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.comment-item {
    background-color: var(--gri-acik);
    padding: 1.5rem;
    border-radius: 10px;
    border-left: 3px solid var(--kirmizi);
}

.comment-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0.5rem;
}

.comment-author {
    font-weight: 600;
    color: var(--siyah);
}

.comment-date {
    font-size: 0.85rem;
    color: var(--gri);
}

.comment-text {
    color: var(--siyah);
    line-height: 1.6;
}

/* Benzer İlanlar */
.similar-listings {
    margin-top: 3rem;
    padding-top: 2rem;
    border-top: 2px solid var(--gri-acik);
}

.similar-listings h3 {
    margin-bottom: 1.5rem;
    color: var(--siyah);
}

.similar-listings-stack {
    display: flex;
    flex-direction: column;
    gap: 0.85rem;
    max-width: 100%;
}

.similar-listings .similar-listing-row {
    display: flex;
    flex-direction: row;
    align-items: stretch;
    gap: 0.75rem;
    text-align: left;
    margin: 0;
    max-width: 100%;
    border-radius: 10px;
    overflow: hidden;
}

/* Benzer ilanlar: küçük önizleme kutusu (ilan detay galerisi değil) */
.similar-listings .similar-listing-row .similar-listing-row__media {
    width: 132px;
    min-width: 132px;
    min-height: 96px;
    height: auto;
    align-self: stretch;
    flex-shrink: 0;
    border-radius: 8px 0 0 8px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: center;
}

/* Görsel yoksa emoji/placeholder ortada kalsın */
.similar-listings .similar-listing-row .similar-listing-row__media:not(:has(img)) {
    align-items: center;
    justify-content: center;
}

.similar-listings .similar-listing-row .similar-listing-row__media img {
    width: 100%;
    flex: 1 1 auto;
    min-height: 0;
    height: auto;
    object-fit: cover;
    display: block;
    border-radius: 0;
}

.similar-listings .similar-listing-row .similar-listing-row__body {
    flex: 1;
    min-width: 0;
    padding: 0.75rem 1rem 0.85rem 0.35rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 0.35rem;
}

.similar-listings .similar-listing-row .listing-title {
    margin: 0;
    -webkit-line-clamp: 3;
    line-clamp: 3;
    word-break: break-word;
}

.similar-listings .similar-listing-row .listing-price {
    margin: 0;
    font-size: 1.1rem;
    line-height: 1.25;
    white-space: nowrap;
    word-break: normal;
    overflow-wrap: normal;
    overflow: hidden;
    text-overflow: ellipsis;
}

@media (max-width: 480px) {
    .similar-listings .similar-listing-row .similar-listing-row__media {
        width: 100px;
        min-width: 100px;
        min-height: 80px;
    }

    .similar-listings .similar-listing-row .similar-listing-row__body {
        padding: 0.55rem 0.65rem 0.55rem 0.25rem;
    }
}

/* İstatistikler */
.stats-section {
    background-color: var(--gri-acik);
    padding: 2rem;
    border-radius: 10px;
    margin: 2rem 0;
}

.stats-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 2rem;
}

.stat-item {
    text-align: center;
}

.stat-number {
    font-size: 2.5rem;
    font-weight: bold;
    color: var(--kirmizi);
    display: block;
    margin-bottom: 0.5rem;
}

.stat-label {
    font-size: 1rem;
    color: var(--gri);
}

/* Hero Banner */
.hero-banner {
    background: linear-gradient(135deg, var(--kirmizi) 0%, var(--kirmizi-koyu) 100%);
    color: var(--beyaz);
    padding: 4rem 2rem;
    border-radius: 15px;
    margin-bottom: 3rem;
    text-align: center;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2);
}

.hero-content h1 {
    font-size: 2.5rem;
    margin-bottom: 1rem;
    font-weight: bold;
}

.hero-content p {
    font-size: 1.2rem;
    margin-bottom: 2rem;
    opacity: 0.9;
}

.hero-buttons {
    display: flex;
    gap: 1rem;
    justify-content: center;
    flex-wrap: wrap;
}

.btn-secondary {
    background-color: var(--beyaz);
    color: var(--kirmizi);
    border: 2px solid var(--beyaz);
}

.btn-secondary:hover {
    background-color: transparent;
    color: var(--beyaz);
}

/* Popüler Kategoriler */
.popular-categories {
    margin-bottom: 3rem;
}

.category-cards {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 1.5rem;
    margin-top: 1.5rem;
}

.category-card {
    background-color: var(--beyaz);
    border: 2px solid var(--gri-acik);
    border-radius: 10px;
    padding: 2rem;
    text-align: center;
    cursor: pointer;
    transition: all 0.3s ease;
}

.category-card:hover {
    border-color: var(--kirmizi);
    transform: translateY(-5px);
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
}

.category-icon {
    font-size: 3rem;
    margin-bottom: 1rem;
}

.category-card h3 {
    color: var(--siyah);
    margin-bottom: 0.5rem;
    font-size: 1.2rem;
}

.category-card p {
    color: var(--gri);
    font-size: 0.9rem;
}

/* Modal */
.modal {
    display: none;
    position: fixed;
    z-index: 10000;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    align-items: center;
    justify-content: center;
}

.modal.active {
    display: flex;
}

.modal-content {
    background-color: var(--beyaz);
    padding: 2rem;
    border-radius: 10px;
    max-width: 500px;
    width: 90%;
    max-height: 90vh;
    overflow-y: auto;
    position: relative;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
}

.modal-close {
    position: absolute;
    top: 1rem;
    right: 1rem;
    font-size: 2rem;
    font-weight: bold;
    color: var(--gri);
    cursor: pointer;
    line-height: 1;
    transition: color 0.3s ease;
}

.modal-close:hover {
    color: var(--kirmizi);
}

.modal-content h3 {
    margin-bottom: 1.5rem;
    color: var(--siyah);
}

/* Kayıtlı Aramalar */
.saved-searches {
    background-color: var(--gri-acik);
    padding: 1.5rem;
    border-radius: 10px;
    margin-bottom: 2rem;
}

.saved-searches h3 {
    margin-bottom: 1rem;
    color: var(--siyah);
}

.saved-search-item {
    background-color: var(--beyaz);
    padding: 1rem;
    border-radius: 5px;
    margin-bottom: 0.5rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border: 1px solid #ddd;
}

.saved-search-item:hover {
    border-color: var(--kirmizi);
}

.saved-search-info {
    flex: 1;
}

.saved-search-actions {
    display: flex;
    gap: 0.5rem;
}

.saved-search-btn {
    padding: 0.4rem 0.8rem;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    font-size: 0.85rem;
    transition: all 0.3s ease;
}

.saved-search-btn.use {
    background-color: var(--kirmizi);
    color: var(--beyaz);
}

.saved-search-btn.delete {
    background-color: var(--gri);
    color: var(--beyaz);
}

.saved-search-btn:hover {
    opacity: 0.8;
}

/* Arama Geçmişi */
.search-history {
    background-color: var(--gri-acik);
    padding: 1rem;
    border-radius: 10px;
    margin-bottom: 1rem;
}

.search-history h4 {
    margin-bottom: 0.5rem;
    color: var(--siyah);
    font-size: 0.9rem;
}

.search-history-item {
    display: inline-block;
    background-color: var(--beyaz);
    padding: 0.4rem 0.8rem;
    border-radius: 20px;
    margin: 0.25rem;
    font-size: 0.85rem;
    color: var(--gri);
    cursor: pointer;
    transition: all 0.3s ease;
    border: 1px solid #ddd;
}

.search-history-item:hover {
    border-color: var(--kirmizi);
    color: var(--kirmizi);
}

/* Range Slider */
.range-slider-container {
    margin: 1rem 0;
}

.range-slider {
    width: 100%;
    height: 6px;
    border-radius: 3px;
    background: #ddd;
    outline: none;
    -webkit-appearance: none;
    appearance: none;
}

.range-slider::-webkit-slider-thumb {
    -webkit-appearance: none;
    appearance: none;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: var(--kirmizi);
    cursor: pointer;
    box-shadow: 0 2px 4px rgba(0,0,0,0.2);
}

.range-slider::-moz-range-thumb {
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: var(--kirmizi);
    cursor: pointer;
    border: none;
    box-shadow: 0 2px 4px rgba(0,0,0,0.2);
}

.range-values {
    display: flex;
    justify-content: space-between;
    margin-top: 0.5rem;
    font-size: 0.9rem;
    color: var(--gri);
}

/* Checkbox Filtreler */
.filter-checkbox-group {
    max-height: 200px;
    overflow-y: auto;
    margin-top: 0.5rem;
}

.filter-checkbox-item {
    display: flex;
    align-items: center;
    padding: 0.5rem 0;
    cursor: pointer;
}

.filter-checkbox-item input[type="checkbox"] {
    width: 18px;
    height: 18px;
    margin-right: 0.5rem;
    cursor: pointer;
    accent-color: var(--kirmizi);
}

.filter-checkbox-item label {
    cursor: pointer;
    flex: 1;
    font-size: 0.9rem;
    color: var(--siyah);
}

.filter-checkbox-item .filter-count {
    color: var(--gri);
    font-size: 0.85rem;
    margin-left: auto;
}

.filter-show-more {
    margin-top: 0.5rem;
    color: var(--kirmizi);
    cursor: pointer;
    font-size: 0.9rem;
    text-decoration: underline;
}

.filter-show-more:hover {
    color: var(--kirmizi-koyu);
}

/* İl/İlçe/Mahalle Seçimi */
.location-filter {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.location-level {
    display: flex;
    flex-direction: column;
}

.location-level label {
    margin-bottom: 0.5rem;
    font-weight: 600;
    color: var(--siyah);
}

.location-level select {
    padding: 0.8rem;
    border: 2px solid #ddd;
    border-radius: 5px;
    font-size: 0.9rem;
}

/* Preset Fiyat Aralıkları */
.price-presets {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0.5rem;
    margin-top: 0.5rem;
}

.price-preset-btn {
    padding: 0.6rem;
    border: 2px solid #ddd;
    border-radius: 5px;
    background: var(--beyaz);
    cursor: pointer;
    font-size: 0.85rem;
    transition: all 0.3s ease;
}

.price-preset-btn:hover {
    border-color: var(--kirmizi);
    background: var(--gri-acik);
}

.price-preset-btn.active {
    border-color: var(--kirmizi);
    background: var(--kirmizi);
    color: var(--beyaz);
}

/* Filtre Sayısı */
.filter-count-badge {
    display: inline-block;
    background: var(--kirmizi);
    color: var(--beyaz);
    padding: 0.2rem 0.6rem;
    border-radius: 12px;
    font-size: 0.8rem;
    margin-left: 0.5rem;
    font-weight: bold;
}

/* Popüler Filtreler */
.popular-filters {
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px solid #eee;
}

.popular-filters h4 {
    font-size: 0.9rem;
    color: var(--gri);
    margin-bottom: 0.5rem;
}

.popular-filter-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.popular-filter-tag {
    padding: 0.4rem 0.8rem;
    background: var(--gri-acik);
    border: 1px solid #ddd;
    border-radius: 20px;
    font-size: 0.85rem;
    cursor: pointer;
    transition: all 0.3s ease;
}

.popular-filter-tag:hover {
    background: var(--kirmizi);
    color: var(--beyaz);
    border-color: var(--kirmizi);
}

/* Görünüm Seçenekleri */
.view-options {
    display: flex;
    gap: 0.5rem;
    align-items: center;
}

.view-btn {
    padding: 0.5rem;
    border: 2px solid #ddd;
    background: var(--beyaz);
    border-radius: 5px;
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
}

.view-btn:hover {
    border-color: var(--kirmizi);
}

.view-btn.active {
    border-color: var(--kirmizi);
    background: var(--kirmizi);
    color: var(--beyaz);
}

/* Liste Görünümü */
.listing-list-view {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.listing-list-item {
    display: flex;
    gap: 1rem;
    padding: 1rem;
    border: 1px solid #ddd;
    border-radius: 10px;
    background: var(--beyaz);
    cursor: pointer;
    transition: all 0.3s ease;
}

.listing-list-item:hover {
    box-shadow: 0 2px 10px rgba(0,0,0,0.1);
    border-color: var(--kirmizi);
}

.listing-list-item .listing-image {
    width: 150px;
    height: 150px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 3rem;
    background: var(--gri-acik);
    border-radius: 10px;
}

.listing-list-item .listing-content {
    flex: 1;
}

/* Sayfalama */
.pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0.5rem;
    margin-top: 2rem;
    flex-wrap: wrap;
}

.pagination-btn {
    padding: 0.6rem 1rem;
    border: 2px solid #ddd;
    background: var(--beyaz);
    border-radius: 5px;
    cursor: pointer;
    transition: all 0.3s ease;
    font-size: 0.9rem;
}

.pagination-btn:hover:not(.disabled):not(.active) {
    border-color: var(--kirmizi);
    color: var(--kirmizi);
}

.pagination-btn.active {
    background: var(--kirmizi);
    color: var(--beyaz);
    border-color: var(--kirmizi);
}

.pagination-btn.disabled {
    opacity: 0.5;
    cursor: not-allowed;
}

.pagination-info {
    color: var(--gri);
    font-size: 0.9rem;
}

/* Sonuç Sayısı */
.results-count {
    color: var(--gri);
    font-size: 0.9rem;
    margin-bottom: 1rem;
}

.results-count strong {
    color: var(--siyah);
}

/* Kategoriye Özel Filtreler */
.category-specific-filters {
    margin-top: 1rem;
}

.category-filter-group {
    margin-bottom: 1.5rem;
}

.category-filter-group h4 {
    font-size: 1rem;
    color: var(--siyah);
    margin-bottom: 0.5rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.category-filter-group .filter-toggle {
    font-size: 0.8rem;
    color: var(--kirmizi);
    cursor: pointer;
}

.filter-group-content {
    margin-top: 0.5rem;
}

.filter-group-content.collapsed {
    display: none;
}

/* Fiyat Belirtilmemiş */
.price-not-specified {
    margin-top: 0.5rem;
}

.price-not-specified input[type="checkbox"] {
    width: 18px;
    height: 18px;
    margin-right: 0.5rem;
    accent-color: var(--kirmizi);
}

.price-not-specified label {
    cursor: pointer;
    font-size: 0.9rem;
}

@media (max-width: 768px) {
    .photo-preview-grid {
        grid-template-columns: repeat(auto-fill, minmax(100px, 1fr));
    }
    
    .gallery-thumbnails {
        grid-template-columns: repeat(auto-fill, minmax(80px, 1fr));
    }
    
    .search-filters {
        grid-template-columns: 1fr;
    }
    
    .toast {
        min-width: 250px;
    }
    
    .stats-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .hero-content h1 {
        font-size: 1.8rem;
    }
    
    .hero-content p {
        font-size: 1rem;
    }
    
    .category-cards {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .price-presets {
        grid-template-columns: 1fr;
    }
    
    .listing-list-item {
        flex-direction: column;
    }
    
    .listing-list-item .listing-image {
        width: 100%;
        height: 200px;
    }
}

/* —— Yönetim paneli (premium shell) —— */
/*
 * Kısa sayfa: main flex:1 ile viewport’u doldurur; imza margin-top:auto → dock ekranın altında.
 * Uzun sayfa: main içerik kadar uzar; flex’te boşluk kalmaz, imza içeriğin hemen altında (sayfa sonu).
 * sticky/fixed yok.
 */
body.admin-panel-body {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    background:
        radial-gradient(1200px 500px at 10% -10%, rgba(13, 148, 136, 0.09), transparent 55%),
        radial-gradient(900px 400px at 95% 0%, rgba(220, 53, 69, 0.06), transparent 50%),
        linear-gradient(180deg, #f5f7fb 0%, #eef1f8 45%, #e8ecf4 100%);
}

body.admin-panel-body > script {
    display: none !important;
}

body.admin-panel-body > header {
    flex-shrink: 0;
    width: 100%;
    max-width: 100%;
}

body.admin-panel-body > main.admin-wrap {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    min-width: 0;
    width: 100%;
    max-width: 1040px;
    margin-left: auto;
    margin-right: auto;
    box-sizing: border-box;
}

body.admin-panel-body > main.admin-wrap.admin-wrap--premium {
    max-width: 1080px;
}

main.admin-wrap > .admin-panel-signature {
    clear: both;
    width: 100%;
    max-width: 100%;
    margin-top: auto;
    margin-bottom: 0;
    margin-left: 0;
    margin-right: 0;
    flex-shrink: 0;
    padding-top: 1.65rem;
    padding-bottom: max(1.65rem, calc(0.85rem + env(safe-area-inset-bottom, 0px)));
    display: flex;
    justify-content: center;
    align-items: center;
    box-sizing: border-box;
    position: static;
    background: transparent;
}

.admin-panel-signature__dock {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 0.4rem 0.65rem;
    padding: 0.38rem 0.85rem 0.42rem 0.9rem;
    border-radius: 16px;
    background: linear-gradient(
        180deg,
        rgba(255, 255, 255, 0.82) 0%,
        rgba(248, 250, 252, 0.72) 100%
    );
    backdrop-filter: saturate(180%) blur(18px);
    -webkit-backdrop-filter: saturate(180%) blur(18px);
    border: 1px solid rgba(255, 255, 255, 0.55);
    box-shadow:
        0 10px 28px rgba(15, 23, 42, 0.11),
        0 3px 9px rgba(15, 23, 42, 0.05),
        inset 0 1px 0 rgba(255, 255, 255, 0.85),
        inset 0 -1px 0 rgba(15, 23, 42, 0.05);
}

.admin-panel-signature__label {
    font-size: 0.58rem;
    font-weight: 600;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: rgba(51, 65, 85, 0.55);
    white-space: nowrap;
    line-height: 1;
}

.admin-panel-signature__logo {
    height: 26px;
    width: auto;
    max-width: 118px;
    object-fit: contain;
    object-position: left center;
    display: block;
    flex-shrink: 0;
    filter: drop-shadow(0 1px 2px rgba(15, 23, 42, 0.1));
}

.admin-wrap {
    max-width: 1040px;
    margin: 0 auto;
    padding: 1.75rem 1.15rem 2rem;
}

.admin-wrap--premium {
    max-width: 1080px;
}

.admin-wrap h1 {
    font-size: 1.75rem;
    margin-bottom: 0.5rem;
    color: var(--siyah);
}

.admin-sub {
    color: var(--gri);
    margin-bottom: 2rem;
}

/* Eski sınıf adları (ap-card ile birlikte kullanılabilir) */
.admin-card {
    background: var(--beyaz);
    border: 1px solid rgba(15, 23, 42, 0.07);
    border-radius: 16px;
    padding: 1.35rem 1.5rem;
    margin-bottom: 1.35rem;
    box-shadow: 0 10px 40px rgba(15, 23, 42, 0.06);
}

.admin-card h2 {
    font-size: 1.15rem;
    margin-bottom: 1rem;
    color: var(--siyah);
}

.admin-links {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
}

.admin-links a {
    display: inline-block;
    padding: 0.65rem 1.25rem;
    background: var(--kirmizi);
    color: var(--beyaz);
    text-decoration: none;
    border-radius: 5px;
    font-weight: 600;
}

.admin-links a:hover {
    background: var(--kirmizi-koyu);
}

.admin-table-wrap {
    overflow-x: auto;
    border-radius: 12px;
    border: 1px solid rgba(15, 23, 42, 0.06);
}

.admin-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.92rem;
    background: var(--beyaz);
}

.admin-table th,
.admin-table td {
    border-bottom: 1px solid rgba(15, 23, 42, 0.06);
    padding: 0.65rem 0.85rem;
    text-align: left;
}

.admin-table th {
    background: rgba(248, 250, 252, 0.95);
    font-weight: 600;
    font-size: 0.78rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: #64748b;
}

.admin-table tr:last-child td {
    border-bottom: none;
}

.admin-table tr.deleted td {
    opacity: 0.55;
}

/* Kategori yönetimi — araç çubuğu + düzenleme modalı */
.cat-admin__toolbar {
    margin-bottom: 1.25rem;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.75rem;
}

.cat-editor-modal {
    position: fixed;
    inset: 0;
    z-index: 10040;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: clamp(0.75rem, 3vw, 1.5rem);
    box-sizing: border-box;
}

.cat-editor-modal[hidden] {
    display: none !important;
}

.cat-editor-modal__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(15, 23, 42, 0.55);
    backdrop-filter: blur(5px);
}

.cat-editor-modal__shell {
    position: relative;
    z-index: 1;
    width: 100%;
    max-width: 32rem;
    max-height: min(90vh, 640px);
    overflow: auto;
    background: #fff;
    border-radius: 18px;
    border: 1px solid rgba(15, 23, 42, 0.08);
    box-shadow:
        0 4px 24px rgba(15, 23, 42, 0.12),
        0 0 0 1px rgba(255, 255, 255, 0.9) inset;
    padding: 1.35rem 1.5rem 1.5rem;
}

.cat-editor-modal__head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1.1rem;
    padding-bottom: 0.85rem;
    border-bottom: 1px solid rgba(15, 23, 42, 0.07);
}

.cat-editor-modal__intro {
    flex: 1;
    min-width: 0;
}

.cat-editor-modal__title {
    margin: 0;
    font-size: 1.2rem;
    line-height: 1.35;
}

.cat-editor-modal__lead {
    margin: 0.4rem 0 0;
    font-size: 0.84rem;
    line-height: 1.45;
    color: #64748b;
}

.cat-editor-modal__close {
    flex-shrink: 0;
    width: 2.25rem;
    height: 2.25rem;
    border: none;
    border-radius: 10px;
    background: rgba(15, 23, 42, 0.06);
    color: #334155;
    font-size: 1.5rem;
    line-height: 1;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.15s ease, color 0.15s ease;
}

.cat-editor-modal__close:hover {
    background: rgba(220, 38, 38, 0.12);
    color: #b91c1c;
}

.cat-editor-modal__close:focus-visible {
    outline: none;
    box-shadow: 0 0 0 3px rgba(13, 148, 136, 0.35);
}

body.cat-modal-open {
    overflow: hidden;
}

/* Kategori — özellik alanları (ikinci modal) */
.cat-attr-modal__shell {
    max-width: 42rem;
}

.cat-attr-hint {
    font-size: 0.82rem;
    color: #64748b;
    line-height: 1.5;
    margin: 0 0 1rem;
}

.cat-attr-section-title {
    font-size: 0.95rem;
    font-weight: 700;
    color: #0f172a;
    margin: 1.15rem 0 0.45rem;
}

.cat-attr-toolbar {
    margin: 0 0 0.65rem;
}

.cat-attr-toolbar__btn {
    border-radius: 10px;
    font-weight: 600;
    padding: 0.5rem 1rem;
}

.cat-attr-own-hint {
    font-size: 0.78rem;
    color: #64748b;
    line-height: 1.45;
    margin: -0.25rem 0 0.55rem;
}

.cat-attr-inherited-wrap {
    font-size: 0.8rem;
    color: #475569;
    background: rgba(241, 245, 249, 0.9);
    border: 1px solid rgba(15, 23, 42, 0.07);
    border-radius: 12px;
    padding: 0.65rem 0.85rem;
    margin-bottom: 0.75rem;
    max-height: 10rem;
    overflow-y: auto;
}

.cat-attr-inherited-wrap:empty {
    display: none;
}

.cat-attr-own-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 0.45rem;
}

.cat-attr-own-list .cat-attr-own-item {
    display: flex;
    flex-wrap: nowrap;
    align-items: flex-start;
    gap: 0.45rem;
    padding: 0.5rem 0.55rem 0.5rem 0.4rem;
    border-radius: 10px;
    border: 1px solid rgba(15, 23, 42, 0.08);
    background: #fafbfc;
}

.cat-attr-drag-handle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 2rem;
    min-width: 2rem;
    height: 2.25rem;
    margin-top: 0.1rem;
    border-radius: 8px;
    color: #64748b;
    cursor: grab;
    user-select: none;
    border: 1px solid transparent;
    transition:
        background 0.12s ease,
        color 0.12s ease,
        border-color 0.12s ease,
        box-shadow 0.12s ease;
}

.cat-attr-drag-handle:hover {
    background: rgba(248, 250, 252, 0.95);
    border-color: rgba(15, 23, 42, 0.08);
    color: #0d9488;
    box-shadow: 0 1px 3px rgba(15, 23, 42, 0.06);
}

.cat-attr-drag-handle:active {
    cursor: grabbing;
}

.cat-attr-grip {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 3px;
    width: 14px;
    pointer-events: none;
}

.cat-attr-grip__line {
    display: block;
    width: 100%;
    height: 2px;
    border-radius: 2px;
    background: currentColor;
    opacity: 0.88;
}

.cat-attr-own-item--dragging {
    opacity: 0.45;
}

.cat-attr-own-item--drag-over {
    background: rgba(13, 148, 136, 0.09);
    border-color: rgba(13, 148, 136, 0.22);
}

.cat-attr-own-list__meta {
    flex: 1;
    min-width: 0;
}

.cat-attr-own-list__label {
    font-size: 0.92rem;
    font-weight: 700;
    color: #0f172a;
    line-height: 1.3;
}

.cat-attr-own-list__desc {
    font-size: 0.78rem;
    color: #64748b;
    margin-top: 0.15rem;
}

.cat-attr-own-list__type {
    font-size: 0.72rem;
    color: #94a3b8;
    margin-top: 0.2rem;
}

.cat-attr-add-panel {
    margin: 0 0 0.85rem;
    padding: 1.15rem 1.2rem 1.25rem;
    border-radius: 14px;
    background: linear-gradient(145deg, rgba(255, 255, 255, 0.95) 0%, rgba(248, 250, 252, 0.98) 100%);
    border: 1px solid rgba(15, 23, 42, 0.08);
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04), 0 8px 24px rgba(15, 23, 42, 0.06);
}

.cat-attr-add-panel[hidden] {
    display: none !important;
}

.cat-attr-add-panel__title {
    margin: 0 0 0.85rem;
    font-size: 0.88rem;
    font-weight: 700;
    color: #0f172a;
    letter-spacing: -0.01em;
}

.cat-attr-add-form {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.cat-attr-field {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
    min-width: 0;
}

.cat-attr-field__label {
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #64748b;
}

.cat-attr-req {
    text-decoration: none;
    color: #0d9488;
    font-weight: 800;
}

.cat-attr-field__optional {
    font-size: 0.72rem;
    color: #94a3b8;
    margin-top: -0.15rem;
}

.cat-attr-field__control {
    width: 100%;
    padding: 0.65rem 0.85rem;
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 10px;
    background: #fff;
    font-size: 0.9rem;
    color: #0f172a;
    font-family: inherit;
    line-height: 1.35;
    transition:
        border-color 0.15s ease,
        box-shadow 0.15s ease,
        background 0.15s ease;
}

.cat-attr-field__control:hover {
    border-color: rgba(15, 23, 42, 0.14);
}

.cat-attr-field__control:focus {
    outline: none;
    border-color: rgba(13, 148, 136, 0.5);
    box-shadow: 0 0 0 3px rgba(13, 148, 136, 0.14);
    background: #fff;
}

.cat-attr-field__control--textarea {
    resize: vertical;
    min-height: 4.5rem;
}

select.cat-attr-field__control {
    cursor: pointer;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2364748b' d='M3 4.5L6 7.5 9 4.5'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 0.75rem center;
    padding-right: 2.25rem;
}

.cat-attr-add-form__footer {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem 1rem;
    padding-top: 0.35rem;
    margin-top: 0.15rem;
    border-top: 1px solid rgba(15, 23, 42, 0.06);
}

.cat-attr-add-form__footer-start {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.65rem 1rem;
}

.cat-attr-cancel-btn {
    border-radius: 10px;
    font-weight: 600;
}

.cat-attr-check--modern {
    display: inline-flex;
    align-items: center;
    gap: 0.55rem;
    cursor: pointer;
    font-weight: 500;
    margin: 0;
}

.cat-attr-check--modern input[type='checkbox'] {
    width: 1.05rem;
    height: 1.05rem;
    accent-color: #0d9488;
    cursor: pointer;
}

.cat-attr-check__text {
    font-size: 0.88rem;
    color: #334155;
}

.cat-attr-submit-btn {
    min-width: 8.5rem;
    border-radius: 10px;
    padding: 0.55rem 1.1rem;
    font-weight: 600;
    box-shadow: 0 1px 2px rgba(13, 148, 136, 0.2);
}

/* [hidden] ile uyum: display:flex tek başına hidden'ı ezer; yalnızca görünürken flex uygula */
.cat-attr-options-block:not([hidden]) {
    display: flex;
    flex-direction: column;
    gap: 0.45rem;
}

.cat-attr-options-block__title {
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #64748b;
}

.cat-attr-options-list {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}

.cat-attr-option-row {
    display: flex;
    align-items: center;
    gap: 0.4rem;
}

.cat-attr-option-row .cat-attr-field__control {
    flex: 1;
    min-width: 0;
}

.cat-attr-option-remove {
    flex-shrink: 0;
    min-width: 2rem;
    padding-left: 0.35rem;
    padding-right: 0.35rem;
}

.cat-attr-add-opt-btn {
    align-self: flex-start;
    border-radius: 999px;
    border: 1px dashed rgba(13, 148, 136, 0.45);
    color: #0f766e;
    background: rgba(13, 148, 136, 0.06);
    font-weight: 600;
}

.cat-attr-add-opt-btn:hover {
    background: rgba(13, 148, 136, 0.11);
    border-style: solid;
}

.cat-attr-check {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

/* Kategori listesi — ağaç çizgileri + seviye rozetleri */
.admin-table--categories tr.cat-row {
    transition: background 0.12s ease;
}

.admin-table--categories tr.cat-row:hover {
    background: rgba(13, 148, 136, 0.04);
}

.admin-table--categories tr.cat-row--lvl-1 td.cat-expand-col {
    box-shadow: inset 3px 0 0 #0d9488;
}

.admin-table--categories tr.cat-row--lvl-2 td.cat-expand-col {
    box-shadow: inset 3px 0 0 #6366f1;
}

.admin-table--categories tr.cat-row--lvl-3 td.cat-expand-col {
    box-shadow: inset 3px 0 0 #d97706;
}

.admin-table--categories .cat-th-drag,
.admin-table--categories .cat-th-expand {
    width: 2.85rem;
    min-width: 2.85rem;
    max-width: 2.85rem;
    padding: 0.65rem 0.35rem;
    text-align: center;
    vertical-align: middle;
}

.admin-table--categories .cat-drag-cell,
.admin-table--categories .cat-expand-col {
    width: 2.85rem;
    min-width: 2.85rem;
    max-width: 2.85rem;
    padding: 0.5rem 0.35rem;
    vertical-align: middle;
    text-align: center;
}

.admin-table--categories .cat-drag-handle,
.admin-table--categories .cat-drag-placeholder,
.admin-table--categories .cat-tree-toggle,
.admin-table--categories .cat-tree-toggle-spacer {
    width: 2rem;
    height: 2rem;
    min-width: 2rem;
    min-height: 2rem;
    box-sizing: border-box;
    vertical-align: middle;
}

.admin-table--categories .cat-drag-handle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    color: #64748b;
    cursor: grab;
    user-select: none;
    transition:
        background 0.12s ease,
        color 0.12s ease,
        box-shadow 0.12s ease,
        border-color 0.12s ease;
    border: 1px solid transparent;
}

.admin-table--categories .cat-drag-placeholder {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    border: 1px solid transparent;
    visibility: hidden;
    pointer-events: none;
}

.admin-table--categories .cat-drag-handle:hover {
    background: rgba(248, 250, 252, 0.95);
    border-color: rgba(15, 23, 42, 0.08);
    color: #0d9488;
    box-shadow: 0 1px 3px rgba(15, 23, 42, 0.06);
}

.admin-table--categories .cat-drag-handle:active {
    cursor: grabbing;
}

.admin-table--categories .cat-grip {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 3px;
    width: 14px;
    height: 100%;
    pointer-events: none;
}

.admin-table--categories .cat-grip__line {
    display: block;
    width: 100%;
    height: 2px;
    border-radius: 2px;
    background: currentColor;
    opacity: 0.88;
    flex-shrink: 0;
}

.admin-table--categories tr.cat-row--dragging {
    opacity: 0.45;
}

.admin-table--categories tr.cat-row--drag-over {
    background: rgba(13, 148, 136, 0.09);
}

.admin-table--categories .cat-col-name {
    vertical-align: middle;
    min-width: 200px;
}

.admin-table--categories .cat-name-line {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: nowrap;
    min-height: 2rem;
    line-height: 1.35;
}

.admin-table--categories .cat-tree-toggle {
    flex-shrink: 0;
    padding: 0;
    border: 1px solid rgba(15, 23, 42, 0.12);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.95);
    color: #475569;
    font-size: 0.72rem;
    line-height: 1;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition:
        border-color 0.15s ease,
        color 0.15s ease,
        background 0.15s ease,
        box-shadow 0.15s ease;
}

.admin-table--categories .cat-tree-toggle:hover {
    border-color: rgba(13, 148, 136, 0.45);
    color: #0d9488;
    background: #fff;
    box-shadow: 0 1px 4px rgba(13, 148, 136, 0.12);
}

.admin-table--categories .cat-tree-toggle.is-expanded {
    background: rgba(13, 148, 136, 0.1);
    border-color: rgba(13, 148, 136, 0.35);
    color: #0f766e;
}

.admin-table--categories .cat-tree-toggle:focus-visible {
    outline: none;
    box-shadow: 0 0 0 3px rgba(13, 148, 136, 0.22);
}

.admin-table--categories .cat-tree-toggle-spacer {
    display: inline-block;
    flex-shrink: 0;
    border: 1px solid transparent;
    border-radius: 8px;
    box-sizing: border-box;
}

/* Derinlik kılavuzları: L2 = bir └, L3 = │ + └ */
.admin-table--categories .cat-tree {
    display: inline-flex;
    align-items: stretch;
    flex-shrink: 0;
    height: 2rem;
    align-self: center;
}

.admin-table--categories .cat-tree-slot {
    width: 1rem;
    flex-shrink: 0;
    position: relative;
    margin-right: 2px;
}

/* Ara seviyeler: tam dikey hat */
.admin-table--categories .cat-tree-slot:not(.cat-tree-slot--last)::before {
    content: '';
    position: absolute;
    left: 50%;
    top: 0;
    bottom: 0;
    width: 2px;
    margin-left: -1px;
    background: #cbd5e1;
    border-radius: 1px;
}

/* Son segment: üst yarı dikey + yatay dal */
.admin-table--categories .cat-tree-slot--last::before {
    content: '';
    position: absolute;
    left: 50%;
    top: 0;
    width: 2px;
    height: 50%;
    margin-left: -1px;
    background: #94a3b8;
    border-radius: 1px;
}

.admin-table--categories .cat-tree-slot--last::after {
    content: '';
    position: absolute;
    left: 50%;
    top: 50%;
    right: 0;
    height: 2px;
    margin-top: -1px;
    background: #94a3b8;
    border-radius: 1px;
}

.admin-table--categories .cat-lvl {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 1.65rem;
    padding: 0.15rem 0.4rem;
    border-radius: 6px;
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.03em;
    flex-shrink: 0;
}

.admin-table--categories .cat-lvl--1 {
    background: rgba(13, 148, 136, 0.15);
    color: #0f766e;
}

.admin-table--categories .cat-lvl--2 {
    background: rgba(99, 102, 241, 0.14);
    color: #4338ca;
}

.admin-table--categories .cat-lvl--3 {
    background: rgba(217, 119, 6, 0.16);
    color: #b45309;
}

.admin-table--categories .cat-name-txt {
    font-weight: 600;
    color: #0f172a;
    letter-spacing: -0.01em;
}

.admin-table--categories .cat-slug-code {
    font-size: 0.8rem;
    padding: 0.2rem 0.45rem;
    background: rgba(15, 23, 42, 0.05);
    border-radius: 6px;
    color: #475569;
}

.admin-form-grid {
    display: grid;
    gap: 1rem;
    max-width: 560px;
}

.admin-form-grid label {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
    font-weight: 600;
    font-size: 0.88rem;
    color: #334155;
}

.admin-form-grid input,
.admin-form-grid select {
    padding: 0.6rem 0.75rem;
    border: 1px solid rgba(15, 23, 42, 0.12);
    border-radius: 10px;
    background: #fafbfc;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.admin-form-grid input:focus,
.admin-form-grid select:focus {
    outline: none;
    border-color: rgba(13, 148, 136, 0.45);
    box-shadow: 0 0 0 3px rgba(13, 148, 136, 0.12);
    background: var(--beyaz);
}

.admin-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.6rem;
    align-items: center;
}

.ap-form-actions {
    margin-top: 0.5rem;
}

/* —— Admin premium bileşenleri —— */
/* Yönetim alt sayfaları: geri + breadcrumb */
.ap-admin-navrow {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem 1.25rem;
    margin-bottom: 1.25rem;
}

.ap-back {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    padding: 0.5rem 1rem 0.5rem 0.85rem;
    border-radius: 999px;
    border: 1px solid rgba(15, 23, 42, 0.1);
    background: rgba(255, 255, 255, 0.88);
    color: #334155;
    font-size: 0.875rem;
    font-weight: 600;
    text-decoration: none;
    font-family: inherit;
    line-height: 1.2;
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
    transition:
        border-color 0.15s ease,
        color 0.15s ease,
        background 0.15s ease,
        box-shadow 0.15s ease;
}

.ap-back:hover {
    border-color: rgba(13, 148, 136, 0.4);
    color: #0f766e;
    background: #fff;
    box-shadow: 0 2px 10px rgba(13, 148, 136, 0.12);
}

.ap-back:focus-visible {
    outline: none;
    box-shadow: 0 0 0 3px rgba(13, 148, 136, 0.25);
}

.ap-back__arrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.65rem;
    height: 1.65rem;
    border-radius: 50%;
    background: rgba(13, 148, 136, 0.12);
    color: #0d9488;
    font-size: 1rem;
    line-height: 1;
    flex-shrink: 0;
}

.ap-back:hover .ap-back__arrow {
    background: rgba(13, 148, 136, 0.2);
    color: #0f766e;
}

.ap-breadcrumb {
    font-size: 0.82rem;
    color: #64748b;
    margin-bottom: 1.25rem;
}

.ap-breadcrumb--nav {
    margin-bottom: 0;
}

.ap-breadcrumb a {
    color: #0d9488;
    text-decoration: none;
    font-weight: 500;
}

.ap-breadcrumb a:hover {
    text-decoration: underline;
}

.ap-breadcrumb__sep {
    margin: 0 0.35rem;
    opacity: 0.5;
}

@media (max-width: 560px) {
    .ap-admin-navrow {
        flex-direction: column;
        align-items: stretch;
    }

    .ap-back {
        justify-content: center;
    }

    .ap-breadcrumb--nav {
        text-align: center;
    }
}

/* Sayfa içi bölüm başlığı — üstteki site <header> ile aynı etiket olduğu için
   global header{} (siyah şerit) buraya da uygulanıyordu; sıfırlanmalı. */
.ap-page-head {
    background: transparent;
    background-color: transparent;
    color: inherit;
    padding: 0;
    box-shadow: none;
    position: static;
    z-index: auto;
    top: auto;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1.25rem;
    margin-bottom: 2rem;
    padding-bottom: 1.5rem;
    border-bottom: 1px solid rgba(15, 23, 42, 0.07);
}

.ap-page-head--solo {
    border-bottom: none;
    padding-bottom: 0;
    margin-bottom: 1.75rem;
}

.ap-page-head__title {
    font-size: clamp(1.55rem, 2.5vw, 2rem);
    font-weight: 700;
    letter-spacing: -0.02em;
    color: #0f172a;
    margin: 0 0 0.4rem;
}

.ap-page-head__lead {
    margin: 0;
    max-width: 46ch;
    color: #64748b;
    line-height: 1.55;
    font-size: 0.95rem;
}

.ap-card {
    background: rgba(255, 255, 255, 0.92);
    backdrop-filter: blur(8px);
    border: 1px solid rgba(255, 255, 255, 0.65);
    border-radius: 20px;
    padding: 1.5rem 1.65rem 1.65rem;
    margin-bottom: 1.5rem;
    box-shadow:
        0 1px 2px rgba(15, 23, 42, 0.04),
        0 18px 48px rgba(15, 23, 42, 0.07);
}

.ap-card--accent {
    border-color: rgba(13, 148, 136, 0.18);
    box-shadow:
        0 1px 2px rgba(15, 23, 42, 0.04),
        0 18px 48px rgba(13, 148, 136, 0.08);
}

.ap-card__head {
    margin-bottom: 1.35rem;
}

.ap-card__title {
    font-size: 1.12rem;
    font-weight: 700;
    color: #0f172a;
    margin: 0 0 0.25rem;
    letter-spacing: -0.01em;
}

.ap-card__desc {
    margin: 0;
    font-size: 0.88rem;
    color: #64748b;
    line-height: 1.45;
}

.ap-fields-grid {
    display: grid;
    gap: 1.15rem;
}

.ap-field {
    margin: 0;
}

.ap-field__label {
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
    font-weight: 600;
    font-size: 0.82rem;
    color: #334155;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.ap-field__hint {
    display: block;
    font-weight: 400;
    text-transform: none;
    letter-spacing: 0;
    color: #94a3b8;
    font-size: 0.8rem;
}

.ap-input {
    width: 100%;
    max-width: 640px;
    padding: 0.65rem 0.85rem;
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 12px;
    font-size: 0.95rem;
    background: #fafbfc;
    transition: border-color 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;
    font-family: inherit;
}

.ap-input--sm {
    padding: 0.45rem 0.65rem;
    font-size: 0.88rem;
    border-radius: 10px;
}

.ap-input:focus {
    outline: none;
    border-color: rgba(13, 148, 136, 0.5);
    box-shadow: 0 0 0 3px rgba(13, 148, 136, 0.12);
    background: var(--beyaz);
}

textarea.ap-input {
    min-height: 5rem;
    resize: vertical;
}

.ap-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.35rem;
    padding: 0.5rem 1rem;
    font-size: 0.88rem;
    font-weight: 600;
    font-family: inherit;
    border-radius: 11px;
    border: 1px solid transparent;
    cursor: pointer;
    transition: transform 0.12s ease, box-shadow 0.12s ease, background 0.12s ease;
}

.ap-btn:active {
    transform: scale(0.98);
}

.ap-btn--sm {
    padding: 0.35rem 0.65rem;
    font-size: 0.8rem;
    border-radius: 9px;
}

.ap-btn--lg {
    padding: 0.7rem 1.35rem;
    font-size: 0.95rem;
    border-radius: 12px;
}

.ap-btn--primary {
    background: linear-gradient(135deg, #0f766e 0%, #0d9488 48%, #14b8a6 100%);
    color: #fff;
    box-shadow: 0 1px 3px rgba(15, 23, 42, 0.08), 0 2px 10px rgba(13, 148, 136, 0.2);
}

.ap-btn--primary:hover {
    box-shadow: 0 2px 6px rgba(15, 23, 42, 0.1), 0 4px 14px rgba(13, 148, 136, 0.26);
}

.ap-btn--secondary {
    background: var(--beyaz);
    border-color: rgba(15, 23, 42, 0.12);
    color: #334155;
}

.ap-btn--secondary:hover {
    background: #f8fafc;
}

.ap-btn--ghost {
    background: transparent;
    border-color: rgba(15, 23, 42, 0.1);
    color: #475569;
}

.ap-btn--ghost:hover {
    background: rgba(15, 23, 42, 0.04);
}

.ap-btn--danger {
    color: #b91c1c;
    border-color: rgba(185, 28, 28, 0.25);
}

.ap-btn--danger:hover {
    background: rgba(254, 226, 226, 0.5);
}

.ap-dash-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 1rem;
}

.ap-dash-grid--settings-hub {
    margin-top: 0.35rem;
}

.ap-dash-tile {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
    padding: 1.35rem 1.25rem;
    border-radius: 18px;
    text-decoration: none;
    color: inherit;
    background: rgba(255, 255, 255, 0.95);
    border: 1px solid rgba(15, 23, 42, 0.06);
    box-shadow: 0 10px 36px rgba(15, 23, 42, 0.06);
    transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease;
}

.ap-dash-tile:hover {
    transform: translateY(-3px);
    box-shadow: 0 16px 44px rgba(15, 23, 42, 0.1);
    border-color: rgba(13, 148, 136, 0.25);
}

.ap-dash-tile--muted {
    background: rgba(248, 250, 252, 0.9);
}

.ap-dash-tile__icon {
    font-size: 1.35rem;
    opacity: 0.85;
    color: #0d9488;
}

.ap-dash-tile__t {
    font-weight: 700;
    font-size: 1.05rem;
    color: #0f172a;
}

.ap-dash-tile__d {
    font-size: 0.82rem;
    color: #64748b;
    line-height: 1.4;
}

.ap-footer-editor {
    margin-top: 0.5rem;
}

.ap-popular-home-editor {
    margin-top: 0.5rem;
}

.ap-ph-row {
    display: grid;
    grid-template-columns: minmax(160px, 1.5fr) minmax(72px, 0.45fr) 1.4fr auto;
    gap: 0.65rem;
    align-items: end;
    margin-bottom: 0.85rem;
    padding: 0.75rem 0.85rem;
    background: #f8fafc;
    border: 1px solid rgba(15, 23, 42, 0.06);
    border-radius: 12px;
}

.ap-ph-field {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    font-size: 0.72rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: #64748b;
    min-width: 0;
}

.ap-ph-field--narrow {
    max-width: 130px;
}

.ap-ph-field--icon {
    min-width: 0;
    max-width: 220px;
}

.ap-ph-field--icon select.ap-input {
    font-size: 0.95rem;
}

.ap-ph-field--grow {
    min-width: 0;
}

.ap-ph-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
}

@media (max-width: 900px) {
    .ap-ph-row {
        grid-template-columns: 1fr;
    }

    .ap-ph-field--narrow {
        max-width: none;
    }
}

.ap-fn-toolbar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1.25rem;
}

.ap-fn-toolbar__note {
    margin: 0;
    font-size: 0.8rem;
    color: #94a3b8;
    flex: 1;
    min-width: 200px;
}

.ap-fn-column {
    background: linear-gradient(180deg, #f8fafc 0%, #f1f5f9 100%);
    border: 1px solid rgba(15, 23, 42, 0.07);
    border-radius: 16px;
    padding: 1.15rem 1.2rem 1.25rem;
    margin-bottom: 1rem;
}

.ap-fn-column__head {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    justify-content: space-between;
    gap: 0.75rem;
    margin-bottom: 1rem;
}

.ap-fn-column__title-wrap {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
    flex: 1;
    min-width: 160px;
}

.ap-fn-column__title-wrap span {
    font-size: 0.72rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #64748b;
}

.ap-fn-column__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
}

.ap-fn-links {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    margin-bottom: 0.75rem;
}

.ap-fn-link-row {
    display: grid;
    grid-template-columns: 1fr 1.35fr auto;
    gap: 0.5rem;
    align-items: end;
}

@media (max-width: 720px) {
    .ap-fn-link-row {
        grid-template-columns: 1fr;
    }
}

.ap-fn-link-field {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    font-size: 0.72rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: #64748b;
}

.ap-fn-link-remove {
    min-width: 2.25rem;
    padding-left: 0.5rem;
    padding-right: 0.5rem;
    font-size: 1.1rem;
    line-height: 1;
}

.ap-muted {
    color: #94a3b8;
}

.ap-error {
    color: #b91c1c;
}

.ap-footnote {
    font-size: 0.82rem;
    color: #94a3b8;
    margin-top: 0.5rem;
}

.ap-footnote code {
    font-size: 0.78em;
    background: rgba(15, 23, 42, 0.05);
    padding: 0.1rem 0.35rem;
    border-radius: 6px;
}

.ap-toast {
    position: fixed;
    bottom: 1.5rem;
    right: 1.5rem;
    padding: 0.65rem 1.15rem;
    background: #0f172a;
    color: #fff;
    border-radius: 12px;
    font-size: 0.88rem;
    font-weight: 600;
    box-shadow: 0 12px 40px rgba(15, 23, 42, 0.25);
    opacity: 0;
    pointer-events: none;
    transform: translateY(12px);
    transition: opacity 0.25s ease, transform 0.25s ease;
    z-index: 9999;
}

.ap-toast--show {
    opacity: 1;
    transform: translateY(0);
}

.ap-table-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
}

/* —— İlan moderasyon paneli (premium) —— */
body.admin-page--moderation .header-search-form {
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.35);
}

body.admin-page--moderation .header-search-input {
    color: #0f172a;
    font-weight: 500;
}

body.admin-page--moderation .header-search-input::placeholder {
    color: #64748b;
}

.ap-mod-page {
    max-width: 1180px;
    padding-bottom: 2.5rem;
}

.ap-mod-page .ap-admin-navrow {
    margin-bottom: 1.5rem;
}

/* <header> etiketi: global header{} sticky + siyah şerit buraya da uygulanır — sıfırla */
.ap-mod-hero {
    position: static;
    z-index: auto;
    top: auto;
    box-shadow: none;
    margin-bottom: 1.5rem;
    padding: 1.5rem 1.65rem 1.6rem;
    border-radius: 20px;
    background:
        linear-gradient(135deg, rgba(13, 148, 136, 0.11) 0%, rgba(255, 255, 255, 0.65) 45%, rgba(15, 23, 42, 0.03) 100%),
        rgba(255, 255, 255, 0.88);
    border: 1px solid rgba(255, 255, 255, 0.75);
    box-shadow:
        0 1px 2px rgba(15, 23, 42, 0.04),
        0 20px 50px rgba(13, 148, 136, 0.08);
}

.ap-mod-hero__title {
    font-size: clamp(1.45rem, 3vw, 1.85rem);
    font-weight: 700;
    letter-spacing: -0.03em;
    color: #0f172a;
    margin: 0 0 0.5rem;
}

.ap-mod-hero__lead {
    margin: 0;
    max-width: 52ch;
    color: #64748b;
    font-size: 0.95rem;
    line-height: 1.6;
}

/* Tek kart: sekmeler + iki sütun — hizalı kenarlar, net ayrım */
.ap-mod-board {
    border-radius: 22px;
    background: rgba(255, 255, 255, 0.97);
    border: 1px solid rgba(15, 23, 42, 0.07);
    box-shadow:
        0 1px 2px rgba(15, 23, 42, 0.04),
        0 20px 50px rgba(15, 23, 42, 0.08),
        0 0 0 1px rgba(255, 255, 255, 0.8) inset;
    overflow: hidden;
    margin-bottom: 0.5rem;
}

.ap-mod-toolbar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 0;
    padding: 1rem 1.35rem 1.05rem;
    border-bottom: 1px solid rgba(15, 23, 42, 0.08);
    background: linear-gradient(180deg, #f8fafc 0%, #ffffff 55%);
}

.ap-mod-toolbar__tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
    padding: 0.35rem;
    border-radius: 16px;
    background: rgba(241, 245, 249, 0.9);
    border: 1px solid rgba(15, 23, 42, 0.08);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.95);
}

.ap-mod-tab {
    display: flex;
    align-items: flex-start;
    gap: 0.65rem;
    padding: 0.65rem 1rem 0.65rem 0.75rem;
    border: none;
    border-radius: 12px;
    background: transparent;
    cursor: pointer;
    font-family: inherit;
    text-align: left;
    color: #64748b;
    transition:
        background 0.18s ease,
        color 0.18s ease,
        box-shadow 0.18s ease;
    min-width: 0;
}

.ap-mod-tab:hover {
    background: rgba(15, 23, 42, 0.04);
    color: #334155;
}

.ap-mod-tab--active {
    background: linear-gradient(145deg, #fff 0%, rgba(240, 253, 250, 0.95) 100%);
    color: #0f766e;
    box-shadow:
        0 2px 8px rgba(13, 148, 136, 0.12),
        0 0 0 1px rgba(13, 148, 136, 0.18);
}

.ap-mod-tab__icon {
    font-size: 1rem;
    line-height: 1.2;
    opacity: 0.85;
    margin-top: 0.15rem;
}

.ap-mod-tab__text {
    display: flex;
    flex-direction: column;
    gap: 0.1rem;
    min-width: 0;
}

.ap-mod-tab__label {
    font-size: 0.88rem;
    font-weight: 700;
    letter-spacing: -0.01em;
}

.ap-mod-tab__hint {
    font-size: 0.72rem;
    font-weight: 500;
    color: #94a3b8;
    line-height: 1.3;
}

.ap-mod-tab--active .ap-mod-tab__hint {
    color: rgba(15, 118, 110, 0.75);
}

.ap-mod-toolbar__refresh {
    flex-shrink: 0;
}

.ap-mod-layout {
    display: grid;
    grid-template-columns: minmax(300px, 380px) minmax(0, 1fr);
    gap: 0;
    align-items: stretch;
    min-height: min(72vh, 700px);
}

.ap-mod-board .ap-mod-layout {
    min-height: min(72vh, 700px);
}

@media (max-width: 960px) {
    .ap-mod-layout {
        grid-template-columns: 1fr;
        min-height: 0;
    }

    .ap-mod-board .ap-mod-layout {
        min-height: 0;
    }
}

.ap-mod-sidebar {
    min-height: 0;
    display: flex;
    flex-direction: column;
    align-self: stretch;
    background: linear-gradient(165deg, #f1f5f9 0%, #f8fafc 42%, #ffffff 100%);
    border-right: 1px solid rgba(15, 23, 42, 0.08);
}

@media (max-width: 960px) {
    .ap-mod-sidebar {
        border-right: none;
        border-bottom: 1px solid rgba(15, 23, 42, 0.08);
    }
}

.ap-mod-sidecard {
    position: sticky;
    top: 5.75rem;
    display: flex;
    flex-direction: column;
    flex: 1;
    min-height: 0;
    height: auto;
    max-height: calc(100vh - 7.25rem);
    padding: 1.35rem 1.2rem 1.15rem 1.35rem;
    border-radius: 0;
    background: transparent;
    border: none;
    box-shadow: none;
}

.ap-mod-board .ap-mod-sidecard {
    max-height: calc(100vh - 7.25rem);
}

@media (max-width: 960px) {
    .ap-mod-sidecard {
        position: relative;
        top: auto;
        max-height: none;
        min-height: 240px;
        padding: 1.15rem 1.25rem 1rem;
    }
}

.ap-mod-sidecard__head {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 0.75rem;
    margin-bottom: 0.85rem;
}

.ap-mod-sidecard__title {
    font-size: 1.02rem;
    font-weight: 700;
    color: #0f172a;
    margin: 0 0 0.2rem;
    letter-spacing: -0.02em;
}

.ap-mod-sidecard__desc {
    margin: 0;
    font-size: 0.8rem;
    color: #94a3b8;
    line-height: 1.45;
    max-width: 16rem;
}

.ap-mod-count {
    flex-shrink: 0;
    min-width: 2.25rem;
    height: 2.25rem;
    padding: 0 0.5rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    font-size: 0.9rem;
    font-weight: 800;
    color: #0f766e;
    background: linear-gradient(145deg, rgba(13, 148, 136, 0.14), rgba(20, 184, 166, 0.08));
    border: 1px solid rgba(13, 148, 136, 0.22);
}

.ap-mod-search {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 0.85rem;
    padding: 0.5rem 0.85rem;
    border-radius: 12px;
    background: #fff;
    border: 1px solid rgba(15, 23, 42, 0.1);
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}

.ap-mod-search__icon {
    font-size: 1rem;
    color: #94a3b8;
    opacity: 0.9;
}

.ap-mod-search__input {
    flex: 1;
    border: none;
    background: transparent;
    font-size: 0.86rem;
    font-family: inherit;
    color: #0f172a;
    outline: none;
    min-width: 0;
}

.ap-mod-search__input::placeholder {
    color: #94a3b8;
}

.ap-mod-list-host {
    flex: 1;
    min-height: 5rem;
    overflow-y: auto;
    margin: 0 -0.25rem;
    padding: 0 0.25rem 0.25rem;
    scrollbar-width: thin;
    scrollbar-color: rgba(13, 148, 136, 0.35) transparent;
}

.ap-mod-queue {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.ap-mod-queue__item {
    border-radius: 14px;
    transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.ap-mod-queue__item.is-selected {
    transform: scale(1.01);
}

.ap-mod-queue__btn {
    display: flex;
    align-items: stretch;
    width: 100%;
    text-align: left;
    padding: 0;
    border: 1px solid rgba(15, 23, 42, 0.06);
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.95);
    cursor: pointer;
    font-family: inherit;
    overflow: hidden;
    box-shadow: 0 1px 3px rgba(15, 23, 42, 0.04);
    transition:
        border-color 0.18s ease,
        box-shadow 0.18s ease,
        background 0.18s ease;
}

.ap-mod-queue__btn:hover {
    border-color: rgba(13, 148, 136, 0.25);
    box-shadow: 0 6px 20px rgba(13, 148, 136, 0.1);
}

.ap-mod-queue__item.is-selected .ap-mod-queue__btn {
    border-color: rgba(13, 148, 136, 0.45);
    background: linear-gradient(120deg, rgba(240, 253, 250, 0.95) 0%, #fff 55%);
    box-shadow:
        0 0 0 2px rgba(13, 148, 136, 0.15),
        0 8px 28px rgba(13, 148, 136, 0.12);
}

.ap-mod-queue__rail {
    width: 4px;
    flex-shrink: 0;
    background: linear-gradient(180deg, #5eead4 0%, #0d9488 100%);
    opacity: 0.35;
    transition: opacity 0.18s ease;
}

.ap-mod-queue__item.is-selected .ap-mod-queue__rail {
    opacity: 1;
}

.ap-mod-queue__body {
    flex: 1;
    padding: 0.75rem 0.85rem 0.7rem 0.65rem;
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    min-width: 0;
}

.ap-mod-queue__top {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 0.5rem;
}

.ap-mod-queue__id {
    font-size: 0.7rem;
    font-weight: 800;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: #0d9488;
}

.ap-mod-queue__chev {
    font-size: 1.15rem;
    font-weight: 300;
    color: #cbd5e1;
    line-height: 1;
}

.ap-mod-queue__item.is-selected .ap-mod-queue__chev {
    color: #0d9488;
}

.ap-mod-queue__title {
    font-weight: 600;
    font-size: 0.88rem;
    color: #0f172a;
    line-height: 1.35;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.ap-mod-queue__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
    margin-top: 0.15rem;
}

.ap-mod-queue__chip {
    font-size: 0.7rem;
    font-weight: 600;
    padding: 0.2rem 0.45rem;
    border-radius: 6px;
    background: rgba(15, 23, 42, 0.05);
    color: #475569;
}

.ap-mod-queue__chip--muted {
    color: #64748b;
    font-weight: 500;
}

.ap-mod-queue__time {
    font-size: 0.68rem;
    color: #94a3b8;
    margin-top: 0.15rem;
}

.ap-mod-main {
    border-radius: 0;
    background: #ffffff;
    border: none;
    box-shadow: none;
    display: flex;
    flex-direction: column;
    align-self: stretch;
    min-height: min(70vh, 700px);
}

.ap-mod-board .ap-mod-main {
    min-height: min(72vh, 700px);
}

@media (max-width: 960px) {
    .ap-mod-main,
    .ap-mod-board .ap-mod-main {
        min-height: 420px;
    }
}

.ap-mod-main__inner {
    display: flex;
    flex-direction: column;
    flex: 1;
    min-height: 0;
}

.ap-mod-main__head {
    position: static;
    z-index: auto;
    top: auto;
    box-shadow: none;
    padding: 1.35rem 1.5rem 1.1rem;
    border-bottom: 1px solid rgba(15, 23, 42, 0.08);
    background: linear-gradient(180deg, #fafbfc 0%, rgba(255, 255, 255, 0.4) 100%);
}

.ap-mod-main__title {
    font-size: 1.05rem;
    font-weight: 700;
    color: #0f172a;
    margin: 0 0 0.35rem;
    letter-spacing: -0.02em;
}

.ap-mod-main__subtitle {
    margin: 0;
    font-size: 0.82rem;
    color: #64748b;
    line-height: 1.45;
}

.ap-mod-detail-host {
    flex: 1;
    display: flex;
    flex-direction: column;
    min-height: 0;
    font-size: 0.9rem;
    line-height: 1.55;
}

.ap-mod-detail-scroll {
    flex: 1;
    overflow-y: auto;
    padding: 1.1rem 1.35rem 1.25rem;
    scrollbar-width: thin;
}

.ap-mod-statusbar {
    margin-bottom: 1rem;
}

.ap-mod-pill {
    display: inline-flex;
    align-items: center;
    padding: 0.35rem 0.85rem;
    border-radius: 999px;
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.03em;
    text-transform: uppercase;
}

.ap-mod-pill--pending_new {
    background: rgba(59, 130, 246, 0.12);
    color: #1d4ed8;
    border: 1px solid rgba(59, 130, 246, 0.25);
}

.ap-mod-pill--pending_edit {
    background: rgba(245, 158, 11, 0.12);
    color: #b45309;
    border: 1px solid rgba(245, 158, 11, 0.28);
}

.ap-mod-pill--rejected {
    background: rgba(239, 68, 68, 0.1);
    color: #b91c1c;
    border: 1px solid rgba(239, 68, 68, 0.22);
}

.ap-mod-pill--approved {
    background: rgba(13, 148, 136, 0.12);
    color: #0f766e;
    border: 1px solid rgba(13, 148, 136, 0.25);
}

.ap-mod-section {
    margin-bottom: 1.35rem;
}

.ap-mod-section--accent {
    padding: 1rem 1.05rem 1.1rem;
    border-radius: 16px;
    background: linear-gradient(145deg, rgba(255, 251, 235, 0.65) 0%, rgba(255, 255, 255, 0.9) 100%);
    border: 1px solid rgba(245, 158, 11, 0.15);
}

.ap-mod-section__title {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.82rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #475569;
    margin: 0 0 0.85rem;
}

.ap-mod-section__dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #94a3b8;
    box-shadow: 0 0 0 3px rgba(148, 163, 184, 0.25);
}

.ap-mod-section__dot--teal {
    background: #0d9488;
    box-shadow: 0 0 0 3px rgba(13, 148, 136, 0.22);
}

.ap-mod-section__dot--amber {
    background: #d97706;
    box-shadow: 0 0 0 3px rgba(217, 119, 6, 0.2);
}

.ap-mod-owner {
    display: flex;
    gap: 1rem;
    align-items: flex-start;
    padding: 1rem 1.1rem;
    border-radius: 16px;
    background: linear-gradient(135deg, rgba(241, 245, 249, 0.9) 0%, rgba(255, 255, 255, 0.95) 100%);
    border: 1px solid rgba(15, 23, 42, 0.06);
}

.ap-mod-owner__avatar {
    width: 3rem;
    height: 3rem;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
    font-weight: 800;
    color: #0f766e;
    background: linear-gradient(145deg, rgba(13, 148, 136, 0.18), rgba(20, 184, 166, 0.08));
    border: 1px solid rgba(13, 148, 136, 0.2);
    flex-shrink: 0;
}

.ap-mod-owner__body {
    flex: 1;
    min-width: 0;
}

.ap-mod-owner__name {
    margin: 0 0 0.5rem;
    font-size: 1rem;
    font-weight: 700;
    color: #0f172a;
}

.ap-mod-owner__row {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem 0.75rem;
    margin: 0.2rem 0;
    font-size: 0.82rem;
    color: #64748b;
}

.ap-mod-owner__row span {
    min-width: 4.5rem;
    color: #94a3b8;
    font-weight: 600;
    font-size: 0.72rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.ap-mod-owner__row strong {
    font-weight: 600;
    color: #334155;
}

.ap-mod-dl {
    margin: 0;
    display: grid;
    gap: 0.65rem 1.25rem;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
}

.ap-mod-dl dt {
    font-size: 0.68rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #94a3b8;
    margin: 0 0 0.15rem;
}

.ap-mod-dl dd {
    margin: 0;
    font-weight: 600;
    color: #0f172a;
    font-size: 0.9rem;
}

.ap-mod-label {
    margin: 1rem 0 0.4rem;
    font-size: 0.68rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #94a3b8;
}

.ap-mod-desc {
    white-space: pre-wrap;
    padding: 0.85rem 1rem;
    background: rgba(248, 250, 252, 0.9);
    border: 1px solid rgba(15, 23, 42, 0.06);
    border-radius: 14px;
    max-height: 220px;
    overflow-y: auto;
    font-size: 0.88rem;
    color: #334155;
    line-height: 1.55;
}

.ap-mod-images__grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
    gap: 0.65rem;
}

.ap-mod-images__card {
    position: relative;
    display: block;
    width: 100%;
    aspect-ratio: 4 / 3;
    border-radius: 14px;
    overflow: hidden;
    border: 1px solid rgba(15, 23, 42, 0.07);
    background: #f1f5f9;
    box-shadow: 0 4px 14px rgba(15, 23, 42, 0.06);
    padding: 0;
    margin: 0;
    cursor: pointer;
    font: inherit;
    color: inherit;
    appearance: none;
    -webkit-appearance: none;
    text-align: left;
    transition:
        transform 0.2s ease,
        box-shadow 0.2s ease;
}

.ap-mod-images__card:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 28px rgba(13, 148, 136, 0.15);
}

.ap-mod-images__card:focus {
    outline: none;
}

.ap-mod-images__card:focus-visible {
    box-shadow:
        0 0 0 3px rgba(13, 148, 136, 0.35),
        0 10px 28px rgba(13, 148, 136, 0.12);
}

.ap-mod-images__card img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    pointer-events: none;
}

/* Büyütme ikonu: yalnız hover / klavye odağında (dokunmatikte hafif ipucu) */
.ap-mod-images__zoom {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(15, 23, 42, 0.42);
    color: #fff;
    opacity: 0;
    transition: opacity 0.2s ease;
    pointer-events: none;
}

.ap-mod-images__zoom-icon {
    display: block;
    filter: drop-shadow(0 1px 3px rgba(0, 0, 0, 0.35));
}

@media (hover: hover) {
    .ap-mod-images__card:hover .ap-mod-images__zoom,
    .ap-mod-images__card:focus-visible .ap-mod-images__zoom {
        opacity: 1;
    }
}

@media (hover: none) {
    .ap-mod-images__zoom {
        opacity: 0.55;
        background: linear-gradient(180deg, transparent 55%, rgba(15, 23, 42, 0.5) 100%);
    }

    .ap-mod-images__zoom-icon {
        position: absolute;
        bottom: 0.5rem;
        right: 0.5rem;
        width: 22px;
        height: 22px;
    }
}

/* Görsel lightbox (moderasyon) */
body.ap-mod-lightbox-open {
    overflow: hidden;
}

.ap-mod-lightbox {
    position: fixed;
    inset: 0;
    z-index: 10050;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: clamp(1rem, 4vw, 2.5rem);
    box-sizing: border-box;
}

.ap-mod-lightbox[hidden] {
    display: none !important;
}

.ap-mod-lightbox__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(2, 6, 23, 0.82);
    backdrop-filter: blur(6px);
}

.ap-mod-lightbox__img {
    position: relative;
    z-index: 1;
    max-width: min(96vw, 1200px);
    max-height: min(88vh, 900px);
    width: auto;
    height: auto;
    object-fit: contain;
    border-radius: 12px;
    box-shadow:
        0 4px 24px rgba(0, 0, 0, 0.35),
        0 0 0 1px rgba(255, 255, 255, 0.08);
}

.ap-mod-lightbox__close {
    position: absolute;
    top: 1rem;
    right: 1rem;
    z-index: 2;
    width: 2.75rem;
    height: 2.75rem;
    border: none;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.12);
    color: #fff;
    font-size: 1.75rem;
    line-height: 1;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.15s ease;
}

.ap-mod-lightbox__close:hover {
    background: rgba(255, 255, 255, 0.22);
}

.ap-mod-lightbox__close:focus-visible {
    outline: none;
    box-shadow: 0 0 0 3px rgba(13, 148, 136, 0.55);
}

.ap-mod-diff__hint {
    font-size: 0.82rem;
    color: #64748b;
    margin: 0 0 0.85rem;
    line-height: 1.45;
}

/* Yayın vs taslak — okunaklı tablo (JSON yerine) */
.ap-mod-diff__human {
    margin-top: 0.25rem;
}

.ap-mod-diff__tablescroll {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    border-radius: 14px;
    border: 1px solid rgba(15, 23, 42, 0.08);
    background: #fff;
    box-shadow: 0 4px 22px rgba(15, 23, 42, 0.06);
}

.ap-mod-diff__humantable {
    width: 100%;
    min-width: 520px;
    border-collapse: collapse;
    font-size: 0.86rem;
    color: #334155;
}

.ap-mod-diff__humantable thead th {
    text-align: left;
    vertical-align: bottom;
    padding: 0.8rem 1rem;
    font-size: 0.68rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.055em;
    color: #475569;
    background: linear-gradient(180deg, #f8fafc 0%, #eef2f7 100%);
    border-bottom: 1px solid rgba(15, 23, 42, 0.09);
}

.ap-mod-diff__thsub {
    display: block;
    font-weight: 600;
    text-transform: none;
    letter-spacing: 0;
    color: #94a3b8;
    margin-top: 0.2rem;
    font-size: 0.65rem;
    line-height: 1.35;
}

.ap-mod-diff__th--pub {
    box-shadow: inset 3px 0 0 rgba(59, 130, 246, 0.45);
}

.ap-mod-diff__th--draft {
    box-shadow: inset 3px 0 0 rgba(245, 158, 11, 0.65);
}

.ap-mod-diff__th--row {
    width: 8.5rem;
    min-width: 7rem;
    font-size: 0.78rem;
    font-weight: 700;
    color: #0f172a;
    text-align: left;
    vertical-align: top;
    padding: 0.75rem 0.85rem 0.75rem 1rem;
    background: rgba(248, 250, 252, 0.9);
    border-bottom: 1px solid rgba(15, 23, 42, 0.06);
    border-right: 1px solid rgba(15, 23, 42, 0.05);
}

.ap-mod-diff__tr:nth-child(even) .ap-mod-diff__td--pub {
    background: rgba(239, 246, 255, 0.28);
}

.ap-mod-diff__tr:nth-child(even) .ap-mod-diff__td--draft {
    background: rgba(255, 251, 235, 0.4);
}

.ap-mod-diff__td {
    padding: 0.75rem 1rem;
    vertical-align: top;
    border-bottom: 1px solid rgba(15, 23, 42, 0.06);
    max-width: min(34vw, 320px);
}

.ap-mod-diff__td--pub {
    background: rgba(239, 246, 255, 0.2);
}

.ap-mod-diff__td--draft {
    background: rgba(255, 251, 235, 0.32);
}

.ap-mod-diff__empty {
    margin: 0;
    color: #94a3b8;
    font-size: 0.84rem;
}

.ap-mod-diff__val {
    white-space: pre-wrap;
    word-break: break-word;
    max-height: 14rem;
    overflow-y: auto;
    line-height: 1.5;
    font-size: 0.84rem;
}

.ap-mod-diff__val--strong {
    font-weight: 700;
    color: #0f172a;
    font-size: 0.92rem;
}

.ap-mod-diff__val--mono {
    font-variant-numeric: tabular-nums;
    font-size: 0.8rem;
    color: #1e293b;
}

.ap-mod-diff__id {
    color: #64748b;
    font-weight: 600;
    font-size: 0.8rem;
}

.ap-mod-diff__attr {
    margin: 0;
}

.ap-mod-diff__attrrow {
    margin-bottom: 0.45rem;
}

.ap-mod-diff__attrrow:last-child {
    margin-bottom: 0;
}

.ap-mod-diff__attr dt {
    font-size: 0.7rem;
    font-weight: 700;
    color: #64748b;
    text-transform: none;
    letter-spacing: 0;
    margin: 0 0 0.08rem;
}

.ap-mod-diff__attr dd {
    margin: 0;
    font-size: 0.84rem;
    color: #0f172a;
    line-height: 1.4;
}

.ap-mod-diff__cols {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.85rem;
}

@media (max-width: 720px) {
    .ap-mod-diff__cols {
        grid-template-columns: 1fr;
    }
}

.ap-mod-diff__panel {
    border-radius: 12px;
    overflow: hidden;
    border: 1px solid rgba(15, 23, 42, 0.08);
    background: #0f172a;
}

.ap-mod-diff__badge {
    display: block;
    padding: 0.4rem 0.65rem;
    font-size: 0.65rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.ap-mod-diff__badge--pub {
    background: rgba(59, 130, 246, 0.25);
    color: #bfdbfe;
}

.ap-mod-diff__badge--draft {
    background: rgba(245, 158, 11, 0.25);
    color: #fde68a;
}

.ap-mod-pre {
    font-size: 0.68rem;
    line-height: 1.45;
    max-height: 200px;
    overflow: auto;
    margin: 0;
    padding: 0.65rem 0.75rem;
    color: #e2e8f0;
    white-space: pre-wrap;
    word-break: break-word;
    font-family: ui-monospace, 'Cascadia Code', 'Consolas', monospace;
}

.ap-mod-timeline {
    list-style: none;
    margin: 0;
    padding: 0 0 0 0.35rem;
    border-left: 2px solid rgba(13, 148, 136, 0.2);
}

.ap-mod-timeline__item {
    position: relative;
    padding: 0 0 1.1rem 1.15rem;
}

.ap-mod-timeline__item:last-child {
    padding-bottom: 0;
}

.ap-mod-timeline__dot {
    position: absolute;
    left: -0.4rem;
    top: 0.35rem;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #fff;
    border: 2px solid #0d9488;
    box-shadow: 0 0 0 3px rgba(13, 148, 136, 0.12);
}

.ap-mod-timeline__card {
    padding: 0.65rem 0.85rem;
    border-radius: 12px;
    background: rgba(248, 250, 252, 0.95);
    border: 1px solid rgba(15, 23, 42, 0.06);
}

.ap-mod-timeline__time {
    font-size: 0.68rem;
    font-weight: 700;
    color: #94a3b8;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.ap-mod-timeline__action {
    margin: 0.25rem 0 0.1rem;
    font-size: 0.88rem;
    font-weight: 700;
    color: #0f172a;
}

.ap-mod-timeline__actor {
    margin: 0;
    font-size: 0.78rem;
    color: #64748b;
}

.ap-mod-timeline__trans {
    margin: 0.35rem 0 0;
    font-size: 0.72rem;
    font-weight: 600;
    color: #0d9488;
}

.ap-mod-timeline__note {
    margin: 0.45rem 0 0;
    font-size: 0.8rem;
    color: #475569;
    line-height: 1.4;
    padding-top: 0.45rem;
    border-top: 1px dashed rgba(15, 23, 42, 0.08);
}

.ap-mod-actionbar {
    flex-shrink: 0;
    padding: 0;
    border-top: 1px solid rgba(15, 23, 42, 0.07);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.5) 0%, rgba(248, 250, 252, 0.98) 100%);
    backdrop-filter: blur(10px);
}

.ap-mod-actionbar__inner {
    padding: 1rem 1.35rem 1.2rem;
}

.ap-mod-actionbar__note {
    margin-bottom: 0.75rem;
}

.ap-mod-actionbar__label {
    display: block;
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #64748b;
    margin-bottom: 0.4rem;
}

.ap-mod-actionbar__textarea {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    border-radius: 12px;
    font-size: 0.88rem;
}

.ap-mod-actionbar__btns {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 0.5rem;
}

.ap-mod-actionbar__approve {
    min-width: 10rem;
    padding-left: 1.35rem;
    padding-right: 1.35rem;
    box-shadow: 0 4px 14px rgba(13, 148, 136, 0.28);
}

.ap-mod-actionbar__reject {
    min-width: 6rem;
}

.ap-mod-actionbar--readonly .ap-mod-actionbar__inner {
    padding-top: 1.1rem;
}

.ap-mod-reject-msg {
    margin: 0 0 0.35rem;
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #b91c1c;
}

.ap-mod-reject-msg__text {
    margin: 0 0 0.65rem;
    font-size: 0.9rem;
    color: #334155;
    line-height: 1.5;
}

.ap-mod-lock-hint {
    margin: 0.75rem 0 0;
    font-size: 0.72rem;
    color: #94a3b8;
    line-height: 1.45;
}

.ap-mod-lock-hint code {
    font-size: 0.68rem;
    background: rgba(15, 23, 42, 0.05);
    padding: 0.1rem 0.35rem;
    border-radius: 6px;
}

.ap-mod-empty {
    text-align: center;
    padding: 2.5rem 1.5rem 2rem;
}

.ap-mod-empty--inline {
    padding: 1.25rem 0.75rem;
    text-align: left;
}

.ap-mod-empty__art {
    width: 4rem;
    height: 4rem;
    margin: 0 auto 1rem;
    border-radius: 18px;
    background: linear-gradient(145deg, rgba(13, 148, 136, 0.12), rgba(148, 163, 184, 0.12));
    border: 1px solid rgba(15, 23, 42, 0.06);
}

.ap-mod-empty__title {
    font-size: 1.05rem;
    font-weight: 700;
    color: #0f172a;
    margin: 0 0 0.4rem;
}

.ap-mod-empty__text {
    margin: 0 auto;
    max-width: 28ch;
    font-size: 0.88rem;
    color: #64748b;
    line-height: 1.55;
}

.ap-mod-empty--inline .ap-mod-empty__text {
    margin: 0;
    max-width: none;
}

.ap-mod-empty--success .ap-mod-empty__check {
    width: 3.5rem;
    height: 3.5rem;
    margin: 0 auto 1rem;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    font-weight: 700;
    color: #fff;
    background: linear-gradient(145deg, #0d9488, #14b8a6);
    box-shadow: 0 8px 24px rgba(13, 148, 136, 0.35);
}

.ap-mod-loading {
    text-align: center;
    padding: 3rem 1.5rem;
    color: #64748b;
}

.ap-mod-loading__spinner {
    display: block;
    width: 2.25rem;
    height: 2.25rem;
    margin: 0 auto 0.85rem;
    border-radius: 50%;
    border: 3px solid rgba(13, 148, 136, 0.2);
    border-top-color: #0d9488;
    animation: ap-mod-spin 0.75s linear infinite;
}

@keyframes ap-mod-spin {
    to {
        transform: rotate(360deg);
    }
}

.ap-mod-skeleton {
    display: flex;
    flex-direction: column;
    gap: 0.65rem;
    padding: 0.25rem 0;
}

.ap-mod-skeleton__line {
    height: 3.25rem;
    border-radius: 12px;
    background: linear-gradient(90deg, #f1f5f9 0%, #e2e8f0 50%, #f1f5f9 100%);
    background-size: 200% 100%;
    animation: ap-mod-shimmer 1.2s ease-in-out infinite;
}

@keyframes ap-mod-shimmer {
    0% {
        background-position: 100% 0;
    }
    100% {
        background-position: -100% 0;
    }
}

.ap-mod-error {
    padding: 1rem;
    border-radius: 12px;
    background: rgba(254, 226, 226, 0.4);
}

/* —— Üye: İlanlarım / ilan detay (moderasyon) —— */
.mine-list-page {
    max-width: 920px;
    margin: 0 auto;
    padding-bottom: 3rem;
}

.mine-breadcrumb {
    margin: 1rem 0 1.25rem;
}

.mine-list-head h1 {
    margin: 0 0 0.35rem;
    font-size: 1.65rem;
    color: var(--siyah);
}

.mine-list-lead {
    margin: 0 0 1rem;
    color: var(--gri);
    font-size: 0.92rem;
    line-height: 1.5;
}

.mine-list-toolbar {
    display: flex;
    align-items: center;
    gap: 0.65rem;
    margin-bottom: 1.25rem;
    flex-wrap: wrap;
}

.mine-filter-label {
    font-weight: 600;
    font-size: 0.88rem;
    color: var(--gri-koyu);
}

.mine-filter-select {
    padding: 0.45rem 0.75rem;
    border: 2px solid #e5e7eb;
    border-radius: 8px;
    font-size: 0.9rem;
    min-width: 12rem;
}

.mine-list-root {
    display: flex;
    flex-direction: column;
    gap: 0.65rem;
}

.mine-page__loading,
.mine-page__empty {
    text-align: center;
    padding: 2rem 1rem;
    color: var(--gri);
}

.mine-page__empty a {
    color: var(--kirmizi);
    font-weight: 600;
}

.mine-card {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.75rem 1rem;
    padding: 1rem 1.1rem;
    background: var(--beyaz);
    border-radius: 12px;
    border: 1px solid rgba(15, 23, 42, 0.08);
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.04);
}

.mine-card__thumb {
    width: 132px;
    height: 92px;
    border-radius: 10px;
    overflow: hidden;
    border: 1px solid rgba(15, 23, 42, 0.08);
    background: #f6f7f8;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    flex-shrink: 0;
}

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

.mine-card__thumb-fallback {
    font-size: 1.4rem;
    opacity: 0.55;
}

.mine-card__main {
    flex: 1;
    min-width: 0;
}

.mine-card__title {
    margin: 0 0 0.35rem;
    font-size: 1.05rem;
}

.mine-card__title a {
    color: var(--siyah);
    text-decoration: none;
}

.mine-card__title a:hover {
    color: var(--kirmizi);
}

.mine-card__meta {
    margin: 0;
    font-size: 0.85rem;
    color: var(--gri);
}

.mine-card__price {
    margin: 0.35rem 0 0;
    font-weight: 700;
    color: var(--kirmizi);
}

.mine-card__reject-sum {
    margin: 0.45rem 0 0;
    font-size: 0.8rem;
    color: #b91c1c;
    line-height: 1.4;
}

.mine-card__side {
    flex-shrink: 0;
}

@media (max-width: 700px) {
    .mine-card__thumb {
        width: 100%;
        height: 165px;
    }
}

.mine-badge {
    display: inline-block;
    padding: 0.28rem 0.65rem;
    border-radius: 999px;
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.mine-badge--pending {
    background: rgba(245, 158, 11, 0.18);
    color: #b45309;
}

.mine-badge--live {
    background: rgba(13, 148, 136, 0.15);
    color: #0f766e;
}

.mine-badge--rejected {
    background: rgba(239, 68, 68, 0.15);
    color: #b91c1c;
}

.mine-badge--draft {
    background: rgba(100, 116, 139, 0.15);
    color: #475569;
}

.mine-badge--muted {
    background: rgba(148, 163, 184, 0.2);
    color: #64748b;
}

.owner-listing-root {
    max-width: 800px;
    margin: 0 auto;
}

.owner-banner {
    padding: 1rem 1.15rem;
    border-radius: 12px;
    margin-bottom: 1rem;
    border: 1px solid transparent;
}

.owner-banner__title {
    display: block;
    margin-bottom: 0.35rem;
    font-size: 1rem;
}

.owner-banner__msg {
    margin: 0;
    font-size: 0.9rem;
    line-height: 1.5;
}

.owner-banner--info {
    background: rgba(59, 130, 246, 0.1);
    border-color: rgba(59, 130, 246, 0.25);
    color: #1e3a5f;
}

.owner-banner--success {
    background: rgba(13, 148, 136, 0.12);
    border-color: rgba(13, 148, 136, 0.28);
    color: #134e4a;
}

.owner-banner--danger {
    background: rgba(239, 68, 68, 0.1);
    border-color: rgba(239, 68, 68, 0.28);
    color: #7f1d1d;
}

.owner-banner--neutral {
    background: rgba(148, 163, 184, 0.15);
    border-color: rgba(148, 163, 184, 0.3);
    color: #334155;
}

.owner-live-note {
    font-size: 0.88rem;
    color: #475569;
    padding: 0.65rem 0.85rem;
    background: #f8fafc;
    border-radius: 10px;
    margin-bottom: 1rem;
    border-left: 4px solid #0d9488;
}

.owner-reject-box {
    padding: 1rem 1.1rem;
    border-radius: 12px;
    background: rgba(254, 226, 226, 0.45);
    border: 1px solid rgba(239, 68, 68, 0.25);
    margin-bottom: 1.25rem;
}

.owner-reject-box h2 {
    margin: 0 0 0.5rem;
    font-size: 0.95rem;
    color: #991b1b;
}

.owner-reject-box p {
    margin: 0;
    white-space: pre-wrap;
    line-height: 1.5;
    color: #450a0a;
}

.owner-detail-head h1 {
    margin: 0 0 0.35rem;
    font-size: 1.5rem;
    color: var(--siyah);
}

.owner-detail-loc {
    margin: 0;
    color: var(--gri);
    font-size: 0.95rem;
}

.owner-detail-price {
    margin: 0.5rem 0 1rem;
    font-size: 1.35rem;
    font-weight: 700;
    color: var(--kirmizi);
}

.owner-gallery {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 0.65rem;
    margin-bottom: 1.5rem;
}

.owner-gallery__item {
    margin: 0;
    border-radius: 10px;
    overflow: hidden;
    border: 1px solid #e5e7eb;
}

.owner-gallery__item img {
    width: 100%;
    height: 140px;
    object-fit: cover;
    display: block;
}

.owner-detail-body h2 {
    font-size: 1.05rem;
    margin: 0 0 0.5rem;
}

.owner-detail-desc {
    line-height: 1.65;
    color: #334155;
}

.owner-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.65rem;
    margin-top: 2rem;
    padding-top: 1.25rem;
    border-top: 1px solid #e5e7eb;
}

/* Üye ilan detayı — güncel kart düzeni */
.owner-detail-shell {
    max-width: 720px;
    margin: 0 auto;
}

.owner-saved-strip {
    display: flex;
    align-items: flex-start;
    gap: 0.85rem;
    padding: 1rem 1.15rem;
    margin-bottom: 1.25rem;
    border-radius: 14px;
    background: linear-gradient(135deg, rgba(13, 148, 136, 0.12) 0%, rgba(59, 130, 246, 0.1) 100%);
    border: 1px solid rgba(13, 148, 136, 0.28);
    color: #0f766e;
}

.owner-saved-strip__icon {
    flex-shrink: 0;
    width: 1.75rem;
    height: 1.75rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: rgba(13, 148, 136, 0.2);
    font-size: 0.95rem;
    font-weight: 700;
    line-height: 1;
}

.owner-saved-strip__text {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    font-size: 0.9rem;
    line-height: 1.5;
    color: #134e4a;
}

.owner-saved-strip__text strong {
    font-size: 0.95rem;
    color: #0f172a;
}

.owner-status-card {
    border-radius: 16px;
    margin-bottom: 1.5rem;
    overflow: hidden;
    box-shadow: 0 4px 24px rgba(15, 23, 42, 0.06);
}

.owner-status-card--rejected {
    background: #fff;
    border: 1px solid #fecaca;
    box-shadow: 0 8px 32px rgba(185, 28, 28, 0.08);
}

.owner-status-card__inner {
    padding: 1.35rem 1.5rem 1.5rem;
    border-left: 4px solid #dc2626;
    background: linear-gradient(180deg, #fffefb 0%, #fff 40%);
}

.owner-status-card__title {
    margin: 0 0 0.4rem;
    font-size: 1.15rem;
    font-weight: 700;
    color: #991b1b;
    letter-spacing: -0.02em;
}

.owner-status-card__lead {
    margin: 0 0 1rem;
    font-size: 0.92rem;
    line-height: 1.55;
    color: #57534e;
}

.owner-status-card__reason {
    margin: 0;
    padding: 1rem 1.1rem;
    border-radius: 12px;
    background: #fef2f2;
    border: 1px solid #fecaca;
}

.owner-status-card__reason-label {
    display: block;
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #b91c1c;
    margin-bottom: 0.45rem;
}

.owner-status-card__reason-text {
    margin: 0;
    font-size: 0.95rem;
    line-height: 1.6;
    color: #450a0a;
    white-space: pre-wrap;
}

.owner-detail-card {
    background: #fff;
    border-radius: 18px;
    border: 1px solid #e8ecf1;
    box-shadow: 0 12px 40px rgba(15, 23, 42, 0.07);
    overflow: hidden;
}

/* Kart içi <header>/<footer>: global header{} / footer{} (siyah şerit) buraya da uygulanıyordu */
article.owner-detail-card > header.owner-detail-card__head {
    background: none;
    background-color: #fff;
    color: #0f172a;
    box-shadow: none;
    position: static;
    z-index: auto;
    top: auto;
    margin: 0;
}

article.owner-detail-card > footer.owner-detail-card__footer {
    background: none;
    background-color: #fff;
    color: #334155;
    margin: 0;
    margin-top: 0;
}

.owner-detail-card__head {
    padding: 1.5rem 1.5rem 1rem;
    border-bottom: 1px solid #f1f5f9;
}

.owner-detail-card__title-block {
    margin-bottom: 0.35rem;
}

.owner-detail-card__status-line {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.5rem 0.65rem;
    margin-bottom: 0.65rem;
}

.owner-detail-card__status-label {
    font-size: 0.68rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: #94a3b8;
}

.owner-detail-card__status {
    display: inline-flex;
    align-items: center;
    padding: 0.28rem 0.65rem;
    border-radius: 999px;
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.02em;
}

.owner-detail-card__status--pending_new {
    background: rgba(59, 130, 246, 0.14);
    color: #1d4ed8;
    border: 1px solid rgba(59, 130, 246, 0.28);
}

.owner-detail-card__status--pending_edit {
    background: rgba(59, 130, 246, 0.12);
    color: #1e40af;
    border: 1px solid rgba(59, 130, 246, 0.25);
}

.owner-detail-card__status--approved {
    background: rgba(13, 148, 136, 0.14);
    color: #0f766e;
    border: 1px solid rgba(13, 148, 136, 0.3);
}

.owner-detail-card__status--rejected {
    background: rgba(239, 68, 68, 0.1);
    color: #991b1b;
    border: 1px solid rgba(239, 68, 68, 0.28);
}

.owner-detail-card__status--draft {
    background: rgba(100, 116, 139, 0.12);
    color: #475569;
    border: 1px solid rgba(100, 116, 139, 0.22);
}

.owner-detail-card__status--withdrawn {
    background: rgba(71, 85, 105, 0.1);
    color: #334155;
    border: 1px solid rgba(71, 85, 105, 0.2);
}

.owner-detail-card__status--other {
    background: #f1f5f9;
    color: #475569;
    border: 1px solid #e2e8f0;
}

.owner-detail-card__title {
    margin: 0 0 0.45rem;
    font-size: 1.55rem;
    font-weight: 700;
    color: #0f172a;
    letter-spacing: -0.03em;
    line-height: 1.25;
}

.owner-detail-card__title-hint {
    margin: 0;
    font-size: 0.8rem;
    line-height: 1.45;
    color: #94a3b8;
    max-width: 42rem;
}

.owner-detail-card__meta {
    margin: 0 0 0.65rem;
    font-size: 0.9rem;
    color: #64748b;
}

.owner-detail-card__loc-label {
    display: inline-block;
    font-size: 0.7rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #94a3b8;
    margin-right: 0.25rem;
}

.owner-detail-card__price {
    margin: 0;
    font-size: 1.5rem;
    font-weight: 800;
    color: var(--kirmizi);
    letter-spacing: -0.02em;
}

.owner-detail-card__no-images {
    margin: 0;
}

.owner-detail-card__media-empty {
    margin: 0;
    padding: 1.75rem 1.5rem;
    text-align: center;
    background: linear-gradient(180deg, #f8fafc 0%, #f1f5f9 100%);
    border-bottom: 1px solid #e8ecf1;
    border-top: 1px dashed #cbd5e1;
}

.owner-detail-card__media-empty-icon {
    width: 3rem;
    height: 3rem;
    margin: 0 auto 0.65rem;
    border-radius: 14px;
    background: #fff;
    border: 1px solid #e2e8f0;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.05);
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0.9;
}

.owner-detail-card__media-empty-glyph {
    width: 22px;
    height: 17px;
    border: 2px solid #64748b;
    border-radius: 4px;
    position: relative;
    box-sizing: border-box;
}

.owner-detail-card__media-empty-glyph::after {
    content: '';
    position: absolute;
    left: 2px;
    right: 2px;
    bottom: 2px;
    top: 5px;
    border-radius: 2px;
    background: linear-gradient(135deg, #e2e8f0 45%, #cbd5e1 45%);
}

.owner-detail-card__media-empty-title {
    margin: 0 0 0.35rem;
    font-size: 0.95rem;
    font-weight: 700;
    color: #475569;
}

.owner-detail-card__media-empty-hint {
    margin: 0;
    font-size: 0.85rem;
    line-height: 1.5;
    color: #64748b;
    max-width: 28rem;
    margin-left: auto;
    margin-right: auto;
}

.owner-gallery--modern {
    padding: 1rem 1.5rem 0;
    margin-bottom: 0;
    grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
    gap: 0.75rem;
}

.owner-gallery--modern .owner-gallery__item {
    border-radius: 12px;
    border: 1px solid #e8ecf1;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.04);
}

.owner-gallery--modern .owner-gallery__item img {
    height: 120px;
}

.owner-detail-card__body {
    padding: 1.35rem 1.5rem 1.5rem;
}

.owner-detail-card__section-title {
    margin: 0 0 0.65rem;
    font-size: 0.78rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.07em;
    color: #94a3b8;
}

.owner-detail-card__body .owner-detail-desc {
    margin: 0;
    font-size: 0.98rem;
    line-height: 1.7;
    color: #334155;
}

.owner-detail-card__footer {
    padding: 0 1.5rem 1.5rem;
}

.owner-actions--modern {
    margin-top: 0;
    padding-top: 1.25rem;
    border-top: 1px solid #f1f5f9;
    align-items: center;
}

.owner-actions--modern .btn-primary {
    border-radius: 10px;
    padding: 0.65rem 1.35rem;
    box-shadow: 0 4px 14px rgba(220, 38, 38, 0.25);
}

.owner-actions--modern .btn-secondary {
    background: #fff;
    color: #b91c1c;
    border: 2px solid rgba(220, 38, 38, 0.35);
    border-radius: 10px;
    padding: 0.6rem 1.2rem;
}

.owner-actions--modern .btn-secondary:hover {
    background: #fef2f2;
    color: #991b1b;
    transform: translateY(-1px);
}

.owner-actions--modern .owner-btn-resubmit {
    font-weight: 700;
}

.owner-actions--modern .btn-text-link {
    background: transparent;
    border: none;
    color: #64748b;
    font-weight: 600;
    padding: 0.6rem 0.5rem;
    margin-left: auto;
}

.owner-actions--modern .btn-text-link:hover {
    color: #0f172a;
    background: transparent;
    transform: none;
}

@media (max-width: 540px) {
    .owner-actions--modern {
        flex-direction: column;
        align-items: stretch;
    }

    .owner-actions--modern .btn-text-link {
        margin-left: 0;
        text-align: center;
    }
}

/* İlan ver: basamaklı kategori seçimi */
.listing-category-legend {
    display: block;
    font-weight: 600;
    margin-bottom: 0.5rem;
    color: var(--siyah);
}

.listing-category-cascade__row {
    margin-top: 0.65rem;
}

.listing-category-cascade__row:first-of-type {
    margin-top: 0;
}

.listing-category-cascade__select {
    width: 100%;
    max-width: 100%;
}

.listing-category-cascade--readonly {
    margin: 0;
    padding: 0.65rem 0.85rem;
    background: var(--gri-acik, #f4f4f4);
    border-radius: 8px;
    font-size: 0.95rem;
    color: var(--siyah);
    line-height: 1.4;
}
