/* ============================================ */
/* PREMIUM ÖZELLİKLER KARTI - MODERN TASARIM */
/* ============================================ */

/* Gradient Header */
.bg-gradient-primary {
    background: linear-gradient(113deg, #5a99f6 0%, #050b20 100%);
    box-shadow: 0 4px 15px rgba(102, 126, 234, 0.3);
}

/* Premium Card */
.premium-features-card {
    overflow: hidden;
    border-radius: 20px !important;
    transition: all 0.3s ease;
}

.premium-features-card:hover {
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.12) !important;
}

/* ============================================ */
/* FEATURE SECTION */
/* ============================================ */
.feature-section {
    padding: 20px 0;
    border-bottom: 1px solid #f1f5f9;
}

.feature-section:last-child {
    border-bottom: none;
    padding-bottom: 0;
}

.feature-section-title {
    font-size: 16px;
    font-weight: 700;
    color: #1e293b;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    position: relative;
    padding-left: 16px;
}

.feature-section-title::before {
    content: "";
    position: absolute;
    left: 0;
    width: 4px;
    height: 24px;
    background: linear-gradient(113deg, #5a99f6 0%, #050b20 100%);
    border-radius: 4px;
}

/* ============================================ */
/* FEATURES GRID - TEMEL ÖZELLİKLER */
/* ============================================ */
.features-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
    gap: 16px;
}

.feature-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 24px 16px;
    background: linear-gradient(135deg, #f8fafc 0%, #ffffff 100%);
    border: 2px solid #e2e8f0;
    border-radius: 16px;
    text-align: center;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    cursor: default;
    position: relative;
    overflow: hidden;
}

.feature-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, #5a99f6, #050b20);
    transform: scaleX(0);
    transition: transform 0.3s ease;
}

.feature-card:hover {
    border-color: #5a99f6;
    transform: translateY(-6px);
    box-shadow: 0 12px 24px rgba(102, 126, 234, 0.2);
    background: #ffffff;
}

.feature-card:hover::before {
    transform: scaleX(1);
}

.feature-card i {
    font-size: 36px;
    color: #5a99f6;
    transition: all 0.3s ease;
}

.feature-card:hover i {
    color: #050b20;
    transform: scale(1.1);
}

.feature-label {
    font-size: 13px;
    font-weight: 500;
    color: #64748b;
    margin: 0;
    line-height: 1.3;
}

.feature-value {
    font-size: 16px;
    font-weight: 700;
    color: #1e293b;
    margin: 0;
}

/* ============================================ */
/* POPÜLER İMKANLAR GRID */
/* ============================================ */
.popular-amenities-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
    gap: 14px;
}

.popular-amenity-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    padding: 22px 16px;
    background: linear-gradient(135deg, #f5f5ff 0%, #ffffff 100%);
    border: 2px solid #d5dbff;
    border-radius: 16px;
    text-align: center;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    cursor: default;
    position: relative;
    overflow: hidden;
}

.popular-amenity-card::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 0;
    height: 0;
    border-radius: 50%;
    background: rgba(102, 126, 234, 0.1);
    transform: translate(-50%, -50%);
    transition:
        width 0.4s ease,
        height 0.4s ease;
}

.popular-amenity-card:hover {
    border-color: #050b20;
    transform: translateY(-6px) scale(1.02);
    box-shadow: 0 12px 28px rgba(118, 75, 162, 0.25);
}

.popular-amenity-card:hover::after {
    width: 200%;
    height: 200%;
}

.popular-amenity-card i {
    font-size: 38px;
    color: #050b20;
    transition: all 0.3s ease;
    position: relative;
    z-index: 1;
}

.popular-amenity-card:hover i {
    color: #5a99f6;
    transform: scale(1.15) rotate(5deg);
}

.popular-amenity-card span {
    font-size: 14px;
    font-weight: 600;
    color: #334155;
    position: relative;
    z-index: 1;
}

/* ============================================ */
/* TÜM İMKANLAR - COLLAPSE SECTION */
/* ============================================ */
.all-amenities-wrapper {
    display: grid;
    gap: 20px;
    margin-top: 16px;
    padding: 16px;
    background: linear-gradient(135deg, #f8fafc 0%, #ffffff 100%);
    border-radius: 16px;
}

.amenity-category {
    padding: 20px;
    background: #ffffff;
    border-radius: 12px;
    border-left: 4px solid #5a99f6;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
    transition: all 0.3s ease;
}

.amenity-category:hover {
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08);
    transform: translateX(4px);
}

.amenity-category-title {
    font-size: 15px;
    font-weight: 700;
    color: #1e293b;
    margin-bottom: 14px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.amenity-category-title::before {
    content: "●";
    color: #5a99f6;
    font-size: 12px;
}

.amenity-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.amenity-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 14px;
    background: linear-gradient(135deg, #f1f5f9 0%, #ffffff 100%);
    border: 1px solid #e2e8f0;
    border-radius: 10px;
    font-size: 13px;
    font-weight: 500;
    color: #475569;
    transition: all 0.2s ease;
}

.amenity-badge:hover {
    background: linear-gradient(135deg, #eff6ff 0%, #dbeafe 100%);
    border-color: #5a99f6;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(102, 126, 234, 0.15);
}

.amenity-badge i {
    font-size: 14px;
    color: #10b981;
}

/* ============================================ */
/* COLLAPSE BUTTON */
/* ============================================ */
[data-bs-toggle="collapse"] {
    position: relative;
    font-weight: 600;
    letter-spacing: 0.3px;
    transition: all 0.3s ease;
}

[data-bs-toggle="collapse"]:hover {
    background: #5a99f6 !important;
    border-color: #5a99f6 !important;
    color: white !important;
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(102, 126, 234, 0.3);
}

[data-bs-toggle="collapse"] i.bi-chevron-down {
    transition: transform 0.3s ease;
    position: absolute;
    right: 16px;
}

[data-bs-toggle="collapse"][aria-expanded="true"] i.bi-chevron-down {
    transform: rotate(180deg);
}

/* ============================================ */
/* EMPTY STATE */
/* ============================================ */
.empty-state {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
    padding: 60px 20px;
    color: #64748b;
    text-align: center;
    background: linear-gradient(135deg, #f8fafc 0%, #ffffff 100%);
    border-radius: 16px;
}

.empty-state i {
    font-size: 56px;
    opacity: 0.4;
    color: #5a99f6;
}

.empty-state p {
    font-size: 15px;
    margin: 0;
}

/* ============================================ */
/* RESPONSIVE DESIGN */
/* ============================================ */
@media (max-width: 992px) {
    .features-grid {
        grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
    }

    .popular-amenities-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {
    .features-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 12px;
    }

    .feature-card {
        padding: 18px 12px;
    }

    .feature-card i {
        font-size: 30px;
    }

    .popular-amenities-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 12px;
    }

    .popular-amenity-card {
        padding: 18px 12px;
    }

    .popular-amenity-card i {
        font-size: 32px;
    }

    .feature-section-title {
        font-size: 15px;
    }

    .amenity-category {
        padding: 16px;
    }
}

@media (max-width: 576px) {
    .features-grid {
        grid-template-columns: 1fr;
    }

    .feature-card {
        flex-direction: row;
        justify-content: flex-start;
        text-align: left;
        padding: 16px;
    }

    .feature-card i {
        font-size: 28px;
    }

    .premium-features-card {
        border-radius: 16px !important;
    }
}

/* ============================================ */
/* ANIMASYONLAR */
/* ============================================ */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.feature-section {
    animation: fadeInUp 0.5s ease-out;
}

.feature-section:nth-child(2) {
    animation-delay: 0.1s;
}

.feature-section:nth-child(3) {
    animation-delay: 0.2s;
}

.feature-section:nth-child(4) {
    animation-delay: 0.3s;
}

.feature-section:nth-child(5) {
    animation-delay: 0.4s;
}

/* ============================================ */
/* SCROLL ANIMASYONU İÇİN */
/* ============================================ */
@keyframes shimmer {
    0% {
        background-position: -1000px 0;
    }
    100% {
        background-position: 1000px 0;
    }
}

.feature-card:hover {
    animation: shimmer 3s infinite linear;
    background: linear-gradient(90deg, #ffffff 0%, #f8fafc 50%, #ffffff 100%);
    background-size: 2000px 100%;
}

/* ============================================ */
/* MODERN HIZLI ÖZELLİKLER KARTI - MİNİMAL */
/* ============================================ */

/* Quick Features Card */
.quick-features-card {
    border-radius: 24px !important;
    transition: all 0.4s ease;
    overflow: hidden;
    position: relative;
    background: #ffffff;
}

.quick-features-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, #5a99f6 0%, #050b20 100%);
}

.quick-features-card:hover {
    box-shadow: 0 12px 40px rgba(5, 11, 32, 0.15) !important;
    transform: translateY(-4px);
}

/* Quick Features Grid */
.quick-features-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}

/* Quick Feature Item */
.quick-feature-item {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 24px 20px;
    background: #ffffff;
    border: 2px solid #f1f5f9;
    border-radius: 20px;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    cursor: default;
    position: relative;
    overflow: hidden;
}

.quick-feature-item::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    width: 4px;
    background: linear-gradient(180deg, #5a99f6 0%, #050b20 100%);
    transform: scaleY(0);
    transform-origin: bottom;
    transition: transform 0.4s ease;
}

.quick-feature-item:hover {
    border-color: #5a99f6;
    background: linear-gradient(135deg, #f8fbff 0%, #ffffff 100%);
    transform: translateX(6px);
    box-shadow: 0 8px 24px rgba(90, 153, 246, 0.15);
}

.quick-feature-item:hover::before {
    transform: scaleY(1);
}

/* Icon Wrapper */
.quick-feature-icon-wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 64px;
    height: 64px;
    background: linear-gradient(135deg, #5a99f6 0%, #050b20 100%);
    border-radius: 18px;
    flex-shrink: 0;
    transition: all 0.4s ease;
    position: relative;
    box-shadow: 0 4px 16px rgba(90, 153, 246, 0.25);
}

.quick-feature-icon-wrapper::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
        135deg,
        rgba(255, 255, 255, 0.2) 0%,
        transparent 100%
    );
    border-radius: 18px;
    opacity: 0;
    transition: opacity 0.4s ease;
}

.quick-feature-item:hover .quick-feature-icon-wrapper {
    transform: scale(1.1) rotate(-5deg);
    box-shadow: 0 8px 24px rgba(90, 153, 246, 0.4);
}

.quick-feature-item:hover .quick-feature-icon-wrapper::after {
    opacity: 1;
}

.quick-feature-icon-wrapper i {
    font-size: 32px;
    color: #ffffff;
    transition: all 0.4s ease;
    position: relative;
    z-index: 1;
}

.quick-feature-item:hover .quick-feature-icon-wrapper i {
    transform: scale(1.1);
}

/* Content */
.quick-feature-content {
    display: flex;
    flex-direction: column;
    gap: 6px;
    flex: 1;
}

.quick-feature-value {
    font-size: 24px;
    font-weight: 800;
    color: #050b20;
    line-height: 1.2;
    transition: color 0.3s ease;
    letter-spacing: -0.5px;
}

.quick-feature-item:hover .quick-feature-value {
    color: #5a99f6;
}

.quick-feature-label {
    font-size: 13px;
    font-weight: 600;
    color: #64748b;
    line-height: 1.2;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

/* ============================================ */
/* RESPONSIVE DESIGN */
/* ============================================ */

@media (max-width: 1200px) {
    .quick-features-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 16px;
    }
}

@media (max-width: 768px) {
    .quick-features-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 14px;
    }

    .quick-feature-item {
        padding: 20px 16px;
        gap: 14px;
    }

    .quick-feature-icon-wrapper {
        width: 56px;
        height: 56px;
    }

    .quick-feature-icon-wrapper i {
        font-size: 28px;
    }

    .quick-feature-value {
        font-size: 20px;
    }

    .quick-feature-label {
        font-size: 11px;
    }
}

@media (max-width: 576px) {
    .quick-features-grid {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .quick-feature-item {
        padding: 18px 14px;
    }

    .quick-features-card {
        border-radius: 20px !important;
    }
}

/* ============================================ */
/* ANIMATIONS */
/* ============================================ */

/* Fade In Animation */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.quick-features-card {
    animation: fadeInUp 0.5s ease-out;
}

/* Staggered Animation for Items */
.quick-feature-item:nth-child(1) {
    animation: fadeInUp 0.4s ease-out 0.1s backwards;
}
.quick-feature-item:nth-child(2) {
    animation: fadeInUp 0.4s ease-out 0.2s backwards;
}
.quick-feature-item:nth-child(3) {
    animation: fadeInUp 0.4s ease-out 0.3s backwards;
}
.quick-feature-item:nth-child(4) {
    animation: fadeInUp 0.4s ease-out 0.4s backwards;
}

/* Pulse Effect */
@keyframes pulse {
    0%,
    100% {
        box-shadow: 0 4px 16px rgba(90, 153, 246, 0.25);
    }
    50% {
        box-shadow: 0 4px 24px rgba(90, 153, 246, 0.4);
    }
}

.quick-feature-item:hover .quick-feature-icon-wrapper {
    animation: pulse 2s ease-in-out infinite;
}

/* ============================================ */
/* ACCESSIBILITY */
/* ============================================ */

/* Focus States */
.quick-feature-item:focus-within {
    outline: 2px solid #5a99f6;
    outline-offset: 2px;
}

/* Reduced Motion Support */
@media (prefers-reduced-motion: reduce) {
    .quick-feature-item,
    .quick-feature-icon-wrapper,
    .quick-feature-icon-wrapper i,
    .quick-feature-value,
    .quick-features-card {
        transition: none;
        animation: none;
    }
}

/* ============================================ */
/* PRINT STYLES */
/* ============================================ */

@media print {
    .quick-features-card {
        box-shadow: none !important;
        border: 1px solid #e2e8f0 !important;
    }

    .quick-feature-item {
        break-inside: avoid;
        page-break-inside: avoid;
    }

    .quick-feature-icon-wrapper {
        background: #5a99f6 !important;
    }
}

/* ============================================ */
/* DARK MODE SUPPORT (Optional) */
/* ============================================ */

@media (prefers-color-scheme: dark) {
    .quick-features-card {
        background: #1e293b;
    }

    .quick-feature-item {
        background: #334155;
        border-color: #475569;
    }

    .quick-feature-item:hover {
        background: linear-gradient(135deg, #334155 0%, #475569 100%);
    }

    .quick-feature-value {
        color: #f1f5f9;
    }

    .quick-feature-item:hover .quick-feature-value {
        color: #5a99f6;
    }

    .quick-feature-label {
        color: #cbd5e1;
    }
}

/* ============================================ */
/* MODERN BAŞLIK VE BİLGİ BÖLÜMÜ */
/* ============================================ */

.listing-header-section {
    padding: 0;
}

/* Başlık */
.listing-title {
    font-size: 32px;
    font-weight: 800;
    color: #050b20;
    line-height: 1.3;
    letter-spacing: -0.5px;
    margin: 0;
}

/* Meta Bilgiler */
.listing-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
    align-items: center;
}

.meta-item {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    font-weight: 500;
    color: #64748b;
    transition: all 0.3s ease;
}

.meta-item i {
    font-size: 16px;
    color: #5a99f6;
}

.meta-item:hover {
    color: #050b20;
}

.meta-item:hover i {
    transform: scale(1.1);
}

/* Favori Butonu */
.btn-favorite {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 14px 24px;
    background: #ffffff;
    border: 2px solid #e2e8f0;
    border-radius: 16px;
    font-size: 14px;
    font-weight: 600;
    color: #64748b;
    text-decoration: none;
    transition: all 0.3s ease;
    cursor: pointer;
    position: relative;
    overflow: hidden;
}

.btn-favorite::before {
    content: "";
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(
        90deg,
        transparent,
        rgba(90, 153, 246, 0.1),
        transparent
    );
    transition: left 0.5s ease;
}

.btn-favorite:hover::before {
    left: 100%;
}

.btn-favorite i {
    font-size: 20px;
    transition: all 0.3s ease;
}

.btn-favorite:hover {
    border-color: #5a99f6;
    color: #5a99f6;
    transform: translateY(-2px);
    box-shadow: 0 8px 24px rgba(90, 153, 246, 0.2);
}

.btn-favorite:hover i {
    transform: scale(1.2);
}

.btn-favorite.active {
    background: linear-gradient(135deg, #ff6b6b 0%, #ee5a6f 100%);
    border-color: #ff6b6b;
    color: #ffffff;
}

.btn-favorite.active:hover {
    background: linear-gradient(135deg, #ee5a6f 0%, #dc4d5f 100%);
    border-color: #ee5a6f;
    transform: translateY(-2px) scale(1.02);
}

/* Badge'ler */
.listing-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: center;
}

.listing-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 18px;
    border-radius: 12px;
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: all 0.3s ease;
    border: 2px solid transparent;
}

.listing-badge i {
    font-size: 16px;
}

/* Satılık Badge */
.badge-sale {
    background: linear-gradient(135deg, #ef4444 0%, #dc2626 100%);
    color: #ffffff;
    box-shadow: 0 4px 16px rgba(239, 68, 68, 0.3);
}

.badge-sale:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(239, 68, 68, 0.4);
}

/* Kiralık Badge */
.badge-rent {
    background: linear-gradient(135deg, #5a99f6 0%, #3b82f6 100%);
    color: #ffffff;
    box-shadow: 0 4px 16px rgba(90, 153, 246, 0.3);
}

.badge-rent:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(90, 153, 246, 0.4);
}

/* Günlük Kiralık Badge */
.badge-daily {
    background: linear-gradient(135deg, #10b981 0%, #059669 100%);
    color: #ffffff;
    box-shadow: 0 4px 16px rgba(16, 185, 129, 0.3);
}

.badge-daily:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(16, 185, 129, 0.4);
}

/* VIP Badge */
.badge-vip {
    background: linear-gradient(135deg, #fbbf24 0%, #f59e0b 100%);
    color: #78350f;
    box-shadow: 0 4px 16px rgba(251, 191, 36, 0.3);
    border-color: #fcd34d;
    animation: vipPulse 2s ease-in-out infinite;
}

.badge-vip:hover {
    transform: translateY(-2px) scale(1.05);
    box-shadow: 0 6px 20px rgba(251, 191, 36, 0.5);
}

@keyframes vipPulse {
    0%,
    100% {
        box-shadow: 0 4px 16px rgba(251, 191, 36, 0.3);
    }
    50% {
        box-shadow: 0 6px 24px rgba(251, 191, 36, 0.5);
    }
}

/* ============================================ */
/* RESPONSIVE DESIGN */
/* ============================================ */

@media (max-width: 992px) {
    .listing-title {
        font-size: 28px;
    }

    .listing-meta {
        gap: 16px;
    }

    .btn-favorite {
        width: 100%;
        justify-content: center;
    }
}

@media (max-width: 768px) {
    .listing-title {
        font-size: 24px;
    }

    .meta-item {
        font-size: 13px;
    }

    .meta-item i {
        font-size: 14px;
    }

    .listing-badges {
        gap: 8px;
    }

    .listing-badge {
        padding: 8px 14px;
        font-size: 11px;
    }

    .listing-badge i {
        font-size: 14px;
    }
}

@media (max-width: 576px) {
    .listing-title {
        font-size: 22px;
    }

    .listing-meta {
        gap: 12px;
    }

    .meta-item {
        font-size: 12px;
    }

    .btn-favorite {
        padding: 12px 20px;
        font-size: 13px;
    }

    .btn-favorite span {
        display: none;
    }

    .btn-favorite i {
        font-size: 22px;
    }
}

/* ============================================ */
/* ANIMATIONS */
/* ============================================ */

@keyframes fadeInDown {
    from {
        opacity: 0;
        transform: translateY(-20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.listing-header-section {
    animation: fadeInDown 0.5s ease-out;
}

.listing-badge:nth-child(1) {
    animation: fadeInDown 0.4s ease-out 0.1s backwards;
}

.listing-badge:nth-child(2) {
    animation: fadeInDown 0.4s ease-out 0.2s backwards;
}

/* ============================================ */
/* ACCESSIBILITY */
/* ============================================ */

.btn-favorite:focus-visible {
    outline: 2px solid #5a99f6;
    outline-offset: 2px;
}

@media (prefers-reduced-motion: reduce) {
    .listing-header-section,
    .listing-badge,
    .btn-favorite,
    .meta-item {
        animation: none;
        transition: none;
    }

    .badge-vip {
        animation: none;
    }
}

/* ============================================ */
/* MODERN AÇIKLAMA VE GENEL KART STİLLERİ */
/* ============================================ */

/* Modern Card Base */
.modern-description-card {
    border-radius: 24px !important;
    transition: all 0.4s ease;
    overflow: hidden;
    position: relative;
}

.modern-description-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, #5a99f6 0%, #050b20 100%);
}

.modern-description-card:hover {
    box-shadow: 0 12px 40px rgba(5, 11, 32, 0.15) !important;
    transform: translateY(-2px);
}

/* Description Header */
.description-header {
    display: flex;
    align-items: center;
    gap: 16px;
    padding-bottom: 20px;
    border-bottom: 2px solid #f1f5f9;
}

.description-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    background: linear-gradient(135deg, #5a99f6 0%, #050b20 100%);
    border-radius: 14px;
    flex-shrink: 0;
    box-shadow: 0 4px 16px rgba(90, 153, 246, 0.25);
}

.description-icon i {
    font-size: 24px;
    color: #ffffff;
}

.description-title {
    font-size: 22px;
    font-weight: 800;
    color: #050b20;
    margin: 0;
    letter-spacing: -0.3px;
}

/* Description Content */
.description-content {
    font-size: 15px;
    line-height: 1.8;
    color: #475569;
    font-weight: 400;
}

.description-content p {
    margin-bottom: 16px;
}

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

.description-content strong,
.description-content b {
    color: #050b20;
    font-weight: 700;
}

.description-content a {
    color: #5a99f6;
    text-decoration: none;
    font-weight: 600;
    transition: all 0.3s ease;
}

.description-content a:hover {
    color: #050b20;
    text-decoration: underline;
}

.description-content ul,
.description-content ol {
    padding-left: 24px;
    margin-bottom: 16px;
}

.description-content li {
    margin-bottom: 8px;
}

.description-content h1,
.description-content h2,
.description-content h3,
.description-content h4,
.description-content h5,
.description-content h6 {
    color: #050b20;
    font-weight: 700;
    margin-top: 24px;
    margin-bottom: 12px;
}

/* ============================================ */
/* GENEL MODERN KART STİLLERİ - DİĞER BÖLÜMLER İÇİN */
/* ============================================ */

/* Bu class'ları diğer kartlarda da kullanabilirsin */
.modern-card {
    border-radius: 24px !important;
    transition: all 0.4s ease;
    overflow: hidden;
    position: relative;
}

.modern-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, #5a99f6 0%, #050b20 100%);
}

.modern-card:hover {
    box-shadow: 0 12px 40px rgba(5, 11, 32, 0.15) !important;
    transform: translateY(-2px);
}

/* Modern Section Header - Diğer bölümler için */
.modern-section-header {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 24px;
    padding-bottom: 20px;
    border-bottom: 2px solid #f1f5f9;
}

.modern-section-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    background: linear-gradient(135deg, #5a99f6 0%, #050b20 100%);
    border-radius: 14px;
    flex-shrink: 0;
    box-shadow: 0 4px 16px rgba(90, 153, 246, 0.25);
}

.modern-section-icon i {
    font-size: 24px;
    color: #ffffff;
}

.modern-section-title {
    font-size: 22px;
    font-weight: 800;
    color: #050b20;
    margin: 0;
    letter-spacing: -0.3px;
}

/* Modern Section Content */
.modern-section-content {
    font-size: 15px;
    line-height: 1.8;
    color: #475569;
}

/* ============================================ */
/* ALTERNATİF HEADER STİLİ - İKONSUZ */
/* ============================================ */

.simple-section-header {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 24px;
    padding-bottom: 16px;
    border-bottom: 2px solid #f1f5f9;
    position: relative;
}

.simple-section-header::before {
    content: "";
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 60px;
    height: 2px;
    background: linear-gradient(90deg, #5a99f6 0%, #050b20 100%);
}

.simple-section-header i {
    font-size: 24px;
    color: #5a99f6;
}

.simple-section-header h4 {
    font-size: 22px;
    font-weight: 800;
    color: #050b20;
    margin: 0;
    letter-spacing: -0.3px;
}

/* ============================================ */
/* RESPONSIVE DESIGN */
/* ============================================ */

@media (max-width: 768px) {
    .description-header,
    .modern-section-header {
        gap: 12px;
        padding-bottom: 16px;
    }

    .description-icon,
    .modern-section-icon {
        width: 42px;
        height: 42px;
    }

    .description-icon i,
    .modern-section-icon i {
        font-size: 20px;
    }

    .description-title,
    .modern-section-title {
        font-size: 20px;
    }

    .description-content,
    .modern-section-content {
        font-size: 14px;
        line-height: 1.7;
    }

    .modern-card,
    .modern-description-card {
        border-radius: 20px !important;
    }
}

@media (max-width: 576px) {
    .description-title,
    .modern-section-title {
        font-size: 18px;
    }

    .description-content,
    .modern-section-content {
        font-size: 13px;
    }
}

/* ============================================ */
/* ANIMATIONS */
/* ============================================ */

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

.modern-description-card,
.modern-card {
    animation: fadeIn 0.5s ease-out;
}

/* ============================================ */
/* PRINT STYLES */
/* ============================================ */

@media print {
    .modern-description-card,
    .modern-card {
        box-shadow: none !important;
        border: 1px solid #e2e8f0 !important;
    }

    .modern-description-card::before,
    .modern-card::before {
        display: none;
    }
}

/* ============================================ */
/* ACCESSIBILITY */
/* ============================================ */

@media (prefers-reduced-motion: reduce) {
    .modern-description-card,
    .modern-card,
    .description-content a {
        animation: none;
        transition: none;
    }
}

/* ============================================ */
/* MODERN KONUM BÖLÜMÜ */
/* ============================================ */

.location-address {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 16px 20px;
    background: linear-gradient(135deg, #f8fbff 0%, #ffffff 100%);
    border: 2px solid #e2e8f0;
    border-radius: 16px;
    font-size: 15px;
    font-weight: 600;
    color: #475569;
}

.location-address i {
    font-size: 20px;
    color: #5a99f6;
    flex-shrink: 0;
}

/* Harita */
.map-container {
    position: relative;
    width: 100%;
    padding-bottom: 56.25%; /* 16:9 aspect ratio */
    border-radius: 20px;
    overflow: hidden;
    margin-bottom: 16px;
    box-shadow: 0 4px 16px rgba(5, 11, 32, 0.1);
}

.map-iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none;
}

/* Yol Tarifi Butonu */
.btn-directions {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    width: 100%;
    padding: 16px 24px;
    background: linear-gradient(135deg, #5a99f6 0%, #050b20 100%);
    border: none;
    border-radius: 16px;
    font-size: 15px;
    font-weight: 700;
    color: #ffffff;
    text-decoration: none;
    transition: all 0.3s ease;
    box-shadow: 0 4px 16px rgba(90, 153, 246, 0.3);
}

.btn-directions:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 24px rgba(90, 153, 246, 0.4);
    color: #ffffff;
}

.btn-directions i {
    font-size: 18px;
}

/* ============================================ */
/* MODERN YORUMLAR BÖLÜMÜ */
/* ============================================ */

/* Yorumlar Listesi */
.comments-list {
    display: flex;
    flex-direction: column;
    gap: 24px;
    margin-bottom: 32px;
}

/* Yorum Item */
.comment-item {
    padding: 24px;
    background: linear-gradient(135deg, #f8fbff 0%, #ffffff 100%);
    border: 2px solid #e2e8f0;
    border-radius: 20px;
    transition: all 0.3s ease;
}

.comment-item:hover {
    border-color: #5a99f6;
    box-shadow: 0 4px 16px rgba(90, 153, 246, 0.1);
}

/* Yorum Header */
.comment-header {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 14px;
}

.comment-avatar {
    width: 52px;
    height: 52px;
    border-radius: 50%;
    object-fit: cover;
    border: 3px solid #ffffff;
    box-shadow: 0 2px 8px rgba(5, 11, 32, 0.1);
}

.comment-user-info {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.comment-user-name {
    font-size: 16px;
    font-weight: 700;
    color: #050b20;
    margin: 0;
}

.comment-date {
    font-size: 13px;
    font-weight: 500;
    color: #64748b;
}

/* Yıldız Puanı */
.comment-rating {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 12px;
}

.comment-rating i {
    font-size: 16px;
    color: #fbbf24;
}

.comment-rating i.bi-star {
    color: #e2e8f0;
}

.rating-text {
    font-size: 14px;
    font-weight: 700;
    color: #050b20;
    margin-left: 4px;
}

/* Yorum Başlık */
.comment-title {
    font-size: 16px;
    font-weight: 700;
    color: #050b20;
    margin-bottom: 10px;
}

/* Yorum Metni */
.comment-text {
    font-size: 14px;
    line-height: 1.7;
    color: #475569;
    margin: 0;
}

/* Boş Yorumlar */
.empty-comments {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 60px 20px;
    text-align: center;
}

.empty-comments i {
    font-size: 64px;
    color: #cbd5e1;
    margin-bottom: 16px;
}

.empty-comments p {
    font-size: 16px;
    font-weight: 600;
    color: #64748b;
    margin-bottom: 8px;
}

.empty-comments small {
    font-size: 14px;
    color: #94a3b8;
}

/* ============================================ */
/* YORUM FORMU */
/* ============================================ */

.comment-form-wrapper {
    padding: 28px;
    background: linear-gradient(135deg, #f8fbff 0%, #ffffff 100%);
    border: 2px solid #e2e8f0;
    border-radius: 20px;
    margin-top: 32px;
}

.comment-form-title {
    font-size: 20px;
    font-weight: 800;
    color: #050b20;
    margin-bottom: 24px;
    padding-bottom: 16px;
    border-bottom: 2px solid #e2e8f0;
}

.comment-form {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.form-group {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.form-label {
    font-size: 14px;
    font-weight: 700;
    color: #050b20;
    margin: 0;
}

.form-label .optional {
    font-size: 13px;
    font-weight: 500;
    color: #64748b;
}

.form-label .required {
    color: #ef4444;
}

.form-control {
    padding: 14px 18px;
    border: 2px solid #e2e8f0;
    border-radius: 14px;
    font-size: 14px;
    font-weight: 500;
    color: #050b20;
    transition: all 0.3s ease;
    background: #ffffff;
}

.form-control:focus {
    outline: none;
    border-color: #5a99f6;
    box-shadow: 0 0 0 4px rgba(90, 153, 246, 0.1);
}

.form-control::placeholder {
    color: #94a3b8;
}

/* Yıldız Puanlama */
.rating-stars {
    display: flex;
    gap: 8px;
    cursor: pointer;
}

.rating-stars i {
    font-size: 32px;
    color: #e2e8f0;
    transition: all 0.2s ease;
}

.rating-stars i:hover,
.rating-stars i.active {
    color: #fbbf24;
    transform: scale(1.1);
}

/* Gönder Butonu */
.btn-submit-comment {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 16px 32px;
    background: linear-gradient(135deg, #5a99f6 0%, #050b20 100%);
    border: none;
    border-radius: 14px;
    font-size: 15px;
    font-weight: 700;
    color: #ffffff;
    cursor: pointer;
    transition: all 0.3s ease;
    box-shadow: 0 4px 16px rgba(90, 153, 246, 0.3);
}

.btn-submit-comment:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 24px rgba(90, 153, 246, 0.4);
}

.btn-submit-comment i {
    font-size: 16px;
}

/* Login Prompt */
.login-prompt {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 32px;
    background: linear-gradient(135deg, #f8fbff 0%, #ffffff 100%);
    border: 2px dashed #cbd5e1;
    border-radius: 16px;
    margin-top: 24px;
    text-align: center;
}

.login-prompt i {
    font-size: 24px;
    color: #5a99f6;
}

.login-prompt p {
    font-size: 15px;
    color: #475569;
    margin: 0;
}

.login-prompt a {
    color: #5a99f6;
    font-weight: 700;
    text-decoration: none;
    transition: color 0.3s ease;
}

.login-prompt a:hover {
    color: #050b20;
    text-decoration: underline;
}

/* ============================================ */
/* RESPONSIVE DESIGN */
/* ============================================ */

@media (max-width: 768px) {
    .location-address {
        padding: 14px 16px;
        font-size: 14px;
    }

    .location-address i {
        font-size: 18px;
    }

    .btn-directions {
        padding: 14px 20px;
        font-size: 14px;
    }

    .comment-item {
        padding: 20px;
    }

    .comment-avatar {
        width: 46px;
        height: 46px;
    }

    .comment-user-name {
        font-size: 15px;
    }

    .comment-form-wrapper {
        padding: 24px;
    }

    .comment-form-title {
        font-size: 18px;
    }

    .rating-stars i {
        font-size: 28px;
    }
}

@media (max-width: 576px) {
    .map-container {
        border-radius: 16px;
    }

    .comment-header {
        gap: 12px;
    }

    .comment-avatar {
        width: 42px;
        height: 42px;
    }

    .comment-form-wrapper {
        padding: 20px;
    }

    .btn-submit-comment {
        width: 100%;
    }

    .login-prompt {
        flex-direction: column;
        gap: 16px;
        padding: 28px 20px;
    }
}

/* ============================================ */
/* ANIMATIONS */
/* ============================================ */

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

.comment-item {
    animation: slideInUp 0.4s ease-out;
}

.comment-item:nth-child(1) {
    animation-delay: 0.1s;
}
.comment-item:nth-child(2) {
    animation-delay: 0.2s;
}
.comment-item:nth-child(3) {
    animation-delay: 0.3s;
}

/* ============================================ */
/* ACCESSIBILITY */
/* ============================================ */

@media (prefers-reduced-motion: reduce) {
    .comment-item,
    .btn-directions,
    .btn-submit-comment,
    .comment-item:hover {
        animation: none;
        transition: none;
    }
}

/* ============================================ */
/* MODERN SIDEBAR - DESKTOP */
/* ============================================ */

.sidebar-sticky {
    position: sticky;
    top: 20px;
}

/* ============================================ */
/* PROFİL KARTI */
/* ============================================ */

.profile-card .card-body {
    text-align: center;
}

/* Profil Avatar */
.profile-avatar-wrapper {
    position: relative;
    display: inline-block;
    margin-bottom: 20px;
}

.profile-avatar {
    width: 100px;
    height: 100px;
    border-radius: 50%;
    object-fit: cover;
    border: 4px solid #ffffff;
    box-shadow: 0 4px 16px rgba(5, 11, 32, 0.15);
}

.profile-badge {
    position: absolute;
    bottom: 0;
    right: 0;
    width: 32px;
    height: 32px;
    background: linear-gradient(135deg, #10b981 0%, #059669 100%);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 3px solid #ffffff;
    box-shadow: 0 2px 8px rgba(16, 185, 129, 0.3);
}

.profile-badge i {
    font-size: 14px;
    color: #ffffff;
}

/* Profil Bilgileri */
.profile-info {
    margin-bottom: 20px;
}

.profile-name {
    font-size: 20px;
    font-weight: 800;
    color: #050b20;
    margin-bottom: 6px;
    letter-spacing: -0.3px;
}

.profile-role {
    font-size: 13px;
    font-weight: 600;
    color: #64748b;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin: 0;
}

/* İstatistikler */
.profile-stats {
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding: 20px;
    background: linear-gradient(135deg, #f8fbff 0%, #ffffff 100%);
    border-radius: 16px;
    margin-bottom: 20px;
}

.stat-item {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 14px;
    font-weight: 500;
    color: #475569;
}

.stat-item i {
    font-size: 16px;
    color: #5a99f6;
    flex-shrink: 0;
}

.stat-item.verified {
    color: #10b981;
}

.stat-item.verified i {
    color: #10b981;
}

/* Profili Görüntüle Butonu */
.btn-view-profile {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: 100%;
    padding: 14px 24px;
    background: #ffffff;
    border: 2px solid #5a99f6;
    border-radius: 14px;
    font-size: 14px;
    font-weight: 700;
    color: #5a99f6;
    text-decoration: none;
    transition: all 0.3s ease;
}

.btn-view-profile:hover {
    background: linear-gradient(135deg, #5a99f6 0%, #050b20 100%);
    border-color: #5a99f6;
    color: #ffffff;
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(90, 153, 246, 0.3);
}

.btn-view-profile i {
    font-size: 16px;
}

/* ============================================ */
/* FİYAT KARTI */
/* ============================================ */

.price-card::before {
    background: linear-gradient(90deg, #10b981 0%, #059669 100%);
}

.price-section {
    text-align: center;
    padding-bottom: 24px;
    margin-bottom: 24px;
    border-bottom: 2px solid #f1f5f9;
}

.price-label {
    font-size: 13px;
    font-weight: 600;
    color: #64748b;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 8px;
}

.price-value {
    font-size: 36px;
    font-weight: 900;
    color: #050b20;
    line-height: 1.2;
    letter-spacing: -1px;
}

.price-value .currency {
    font-size: 20px;
    font-weight: 700;
    color: #5a99f6;
    margin-left: 4px;
}

/* Aksiyon Butonları */
.action-buttons {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.btn-action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: 100%;
    padding: 16px 24px;
    border: none;
    border-radius: 14px;
    font-size: 15px;
    font-weight: 700;
    text-decoration: none;
    transition: all 0.3s ease;
    cursor: pointer;
}

.btn-action i {
    font-size: 18px;
}

/* Edit Button */
.btn-edit {
    background: linear-gradient(135deg, #fbbf24 0%, #f59e0b 100%);
    color: #78350f;
    box-shadow: 0 4px 16px rgba(251, 191, 36, 0.3);
}

.btn-edit:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 24px rgba(251, 191, 36, 0.4);
    color: #78350f;
}

/* Offer Button */
.btn-offer {
    background: linear-gradient(135deg, #10b981 0%, #059669 100%);
    color: #ffffff;
    box-shadow: 0 4px 16px rgba(16, 185, 129, 0.3);
}

.btn-offer:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 24px rgba(16, 185, 129, 0.4);
}

/* Message Button */
.btn-message {
    background: linear-gradient(135deg, #5a99f6 0%, #050b20 100%);
    color: #ffffff;
    box-shadow: 0 4px 16px rgba(90, 153, 246, 0.3);
}

.btn-message:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 24px rgba(90, 153, 246, 0.4);
    color: #ffffff;
}

/* Login Button */
.btn-login {
    background: linear-gradient(135deg, #5a99f6 0%, #050b20 100%);
    color: #ffffff;
    box-shadow: 0 4px 16px rgba(90, 153, 246, 0.3);
}

.btn-login:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 24px rgba(90, 153, 246, 0.4);
    color: #ffffff;
}

/* Disabled Button */
.btn-action.disabled {
    background: #e2e8f0;
    color: #94a3b8;
    cursor: not-allowed;
    opacity: 0.6;
}

.btn-action.disabled:hover {
    transform: none;
    box-shadow: none;
}

/* ============================================ */
/* MOBİL FIXED BOTTOM */
/* ============================================ */

.mobile-fixed-bottom {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    background: #ffffff;
    border-top: 2px solid #e2e8f0;
    box-shadow: 0 -4px 20px rgba(5, 11, 32, 0.1);
    z-index: 1030;
    padding: 16px 20px;
}

.mobile-bottom-content {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    max-width: 100%;
}

/* Mobil Fiyat */
.mobile-price-info {
    flex: 1;
}

.mobile-price-label {
    font-size: 11px;
    font-weight: 600;
    color: #64748b;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 4px;
}

.mobile-price-value {
    font-size: 18px;
    font-weight: 900;
    color: #050b20;
    line-height: 1.2;
    letter-spacing: -0.5px;
}

/* Mobil Aksiyonlar */
.mobile-actions {
    display: flex;
    gap: 8px;
    flex-shrink: 0;
}

/* Mobil Butonlar */
.btn-mobile-edit,
.btn-mobile-offer,
.btn-mobile-message,
.btn-mobile-login {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 12px 16px;
    border: none;
    border-radius: 12px;
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
    transition: all 0.3s ease;
    cursor: pointer;
    white-space: nowrap;
}

.btn-mobile-edit i,
.btn-mobile-offer i,
.btn-mobile-message i,
.btn-mobile-login i {
    font-size: 16px;
}

/* Edit */
.btn-mobile-edit {
    background: linear-gradient(135deg, #fbbf24 0%, #f59e0b 100%);
    color: #78350f;
}

/* Offer */
.btn-mobile-offer {
    background: linear-gradient(135deg, #10b981 0%, #059669 100%);
    color: #ffffff;
    padding: 12px;
}

/* Message */
.btn-mobile-message {
    background: linear-gradient(135deg, #5a99f6 0%, #050b20 100%);
    color: #ffffff;
}

/* Login */
.btn-mobile-login {
    background: linear-gradient(135deg, #5a99f6 0%, #050b20 100%);
    color: #ffffff;
}

/* Disabled */
.btn-mobile-message.disabled,
.btn-mobile-login.disabled {
    background: #e2e8f0;
    color: #94a3b8;
    cursor: not-allowed;
    opacity: 0.6;
}

/* ============================================ */
/* RESPONSIVE DESIGN */
/* ============================================ */

@media (max-width: 992px) {
    .sidebar-sticky {
        position: static;
    }

    /* Mobilde body'ye padding bottom ekle */
    body {
        padding-bottom: 80px;
    }
}

@media (max-width: 768px) {
    .profile-avatar {
        width: 80px;
        height: 80px;
    }

    .profile-badge {
        width: 28px;
        height: 28px;
    }

    .profile-badge i {
        font-size: 12px;
    }

    .profile-name {
        font-size: 18px;
    }

    .price-value {
        font-size: 30px;
    }

    .price-value .currency {
        font-size: 18px;
    }
}

@media (max-width: 576px) {
    .mobile-fixed-bottom {
        padding: 12px 16px;
    }

    .mobile-bottom-content {
        gap: 12px;
    }

    .mobile-price-value {
        font-size: 16px;
    }

    .btn-mobile-edit span,
    .btn-mobile-message span,
    .btn-mobile-login span {
        display: none;
    }

    .btn-mobile-edit,
    .btn-mobile-message,
    .btn-mobile-login {
        padding: 12px;
    }

    .mobile-actions {
        gap: 6px;
    }
}

/* ============================================ */
/* ANIMATIONS */
/* ============================================ */

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

.profile-card,
.price-card {
    animation: slideInRight 0.5s ease-out;
}

.price-card {
    animation-delay: 0.1s;
}

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

.mobile-fixed-bottom {
    animation: slideInUp 0.4s ease-out;
}

/* ============================================ */
/* ACCESSIBILITY */
/* ============================================ */

@media (prefers-reduced-motion: reduce) {
    .profile-card,
    .price-card,
    .mobile-fixed-bottom,
    .btn-action,
    .btn-view-profile {
        animation: none;
        transition: none;
    }
}

/* ============================================ */
/* PRINT STYLES */
/* ============================================ */

@media print {
    .mobile-fixed-bottom {
        display: none;
    }

    .sidebar-sticky {
        position: static;
    }

    .btn-action,
    .btn-view-profile {
        display: none;
    }
}
/* ============================================ */
/* MODERN MODALLAR */
/* ============================================ */

/* Modal Overlay */
.modal {
    background-color: rgba(5, 11, 32, 0.7);
    backdrop-filter: blur(4px);
}

/* Modal Content */
.modern-modal {
    border: none;
    border-radius: 24px;
    overflow: hidden;
    box-shadow: 0 20px 60px rgba(5, 11, 32, 0.3);
}

/* ============================================ */
/* MODAL HEADER */
/* ============================================ */

.modern-modal-header {
    padding: 24px 28px;
    border-bottom: 2px solid #f1f5f9;
    background: linear-gradient(135deg, #f8fbff 0%, #ffffff 100%);
}

.modal-title-wrapper {
    display: flex;
    align-items: center;
    gap: 12px;
}

.modal-title-wrapper i {
    font-size: 24px;
    color: #5a99f6;
}

.modal-title {
    font-size: 22px;
    font-weight: 800;
    color: #050b20;
    margin: 0;
    letter-spacing: -0.3px;
}

/* Close Button */
.btn-close-modern {
    width: 40px;
    height: 40px;
    border-radius: 12px;
    border: 2px solid #e2e8f0;
    background: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s ease;
    padding: 0;
}

.btn-close-modern i {
    font-size: 18px;
    color: #64748b;
    transition: all 0.3s ease;
}

.btn-close-modern:hover {
    border-color: #ef4444;
    background: #fef2f2;
    transform: rotate(90deg);
}

.btn-close-modern:hover i {
    color: #ef4444;
}

/* ============================================ */
/* MODAL BODY */
/* ============================================ */

.modern-modal-body {
    padding: 28px;
}

/* Form Group */
.form-group-modern {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

/* Form Label */
.form-label-modern {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 15px;
    font-weight: 700;
    color: #050b20;
    margin: 0;
}

.form-label-modern i {
    font-size: 18px;
    color: #5a99f6;
}

.optional-text {
    font-size: 13px;
    font-weight: 500;
    color: #94a3b8;
}

/* Form Control */
.form-control-modern {
    padding: 14px 18px;
    border: 2px solid #e2e8f0;
    border-radius: 14px;
    font-size: 15px;
    font-weight: 500;
    color: #050b20;
    transition: all 0.3s ease;
    background: #ffffff;
}

.form-control-modern:focus {
    outline: none;
    border-color: #5a99f6;
    box-shadow: 0 0 0 4px rgba(90, 153, 246, 0.1);
}

.form-control-modern::placeholder {
    color: #cbd5e1;
}

/* Input Group */
.input-group-modern {
    display: flex;
    align-items: center;
    gap: 0;
}

.input-group-modern .form-control-modern {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    flex: 1;
}

.input-addon-modern {
    padding: 14px 20px;
    background: linear-gradient(135deg, #5a99f6 0%, #050b20 100%);
    color: #ffffff;
    font-size: 15px;
    font-weight: 700;
    border-top-right-radius: 14px;
    border-bottom-right-radius: 14px;
}

/* Textarea */
textarea.form-control-modern {
    resize: vertical;
    min-height: 100px;
}

/* ============================================ */
/* ALERT MODERN */
/* ============================================ */

.alert-modern {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 14px 18px;
    border-radius: 14px;
    font-size: 14px;
    font-weight: 500;
}

.alert-modern i {
    font-size: 20px;
    flex-shrink: 0;
}

.alert-warning-modern {
    background: linear-gradient(135deg, #fef3c7 0%, #fef9e7 100%);
    border: 2px solid #fbbf24;
    color: #92400e;
}

.alert-warning-modern i {
    color: #fbbf24;
}

/* ============================================ */
/* MİSAFİR BÖLÜMÜ */
/* ============================================ */

.guests-section {
    padding: 20px;
    background: linear-gradient(135deg, #f8fbff 0%, #ffffff 100%);
    border: 2px solid #e2e8f0;
    border-radius: 16px;
}

.guest-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 0;
    border-bottom: 1px solid #f1f5f9;
}

.guest-row:last-child {
    border-bottom: none;
    padding-bottom: 0;
}

.guest-info {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.guest-title {
    font-size: 15px;
    font-weight: 700;
    color: #050b20;
}

.guest-desc {
    font-size: 13px;
    font-weight: 500;
    color: #64748b;
}

.text-success-modern {
    color: #10b981 !important;
    font-weight: 600;
}

.text-danger-modern {
    color: #ef4444 !important;
    font-weight: 600;
}

/* ============================================ */
/* SAYAÇ GRUBU */
/* ============================================ */

.counter-group {
    display: flex;
    align-items: center;
    gap: 16px;
}

.counter-btn {
    width: 40px;
    height: 40px;
    border-radius: 12px;
    border: 2px solid #e2e8f0;
    background: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s ease;
    padding: 0;
}

.counter-btn i {
    font-size: 18px;
    color: #5a99f6;
    transition: all 0.3s ease;
}

.counter-btn:hover:not(:disabled) {
    border-color: #5a99f6;
    background: linear-gradient(135deg, #5a99f6 0%, #050b20 100%);
    transform: scale(1.1);
}

.counter-btn:hover:not(:disabled) i {
    color: #ffffff;
}

.counter-btn:disabled {
    opacity: 0.4;
    cursor: not-allowed;
}

.counter-value {
    font-size: 18px;
    font-weight: 800;
    color: #050b20;
    min-width: 32px;
    text-align: center;
}

/* ============================================ */
/* FİYAT GÖSTER BOX */
/* ============================================ */

.price-display-box {
    margin-top: 20px;
    padding: 20px;
    background: linear-gradient(135deg, #eff6ff 0%, #dbeafe 100%);
    border: 2px solid #5a99f6;
    border-radius: 16px;
    text-align: center;
}

/* ============================================ */
/* MODAL FOOTER */
/* ============================================ */

@media (max-width: 576px) {
    .flatpickr-calendar {
        width: 100% !important;
        max-width: 100% !important;
    }

    .flatpickr-rContainer,
    .flatpickr-days,
    .dayContainer {
        width: 100% !important;
        min-width: 100% !important;
        max-width: 100% !important;
    }
}

.modern-modal-footer {
    padding: 20px 28px;
    border-top: 2px solid #f1f5f9;
    background: linear-gradient(135deg, #f8fbff 0%, #ffffff 100%);
    display: flex;
    gap: 12px;
}

/* Modal Butonlar */
.btn-modal-cancel,
.btn-modal-action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 16px 28px;
    border: none;
    border-radius: 14px;
    font-size: 15px;
    font-weight: 700;
    text-decoration: none;
    transition: all 0.3s ease;
    cursor: pointer;
}

.btn-modal-cancel {
    background: #ffffff;
    border: 2px solid #e2e8f0;
    color: #64748b;
}

.btn-modal-cancel:hover {
    border-color: #cbd5e1;
    background: #f8fafc;
}

.btn-modal-action {
    flex: 1;
    box-shadow: 0 4px 16px rgba(90, 153, 246, 0.3);
}

.btn-modal-action i {
    font-size: 18px;
}

/* Reserve Button */
.btn-reserve {
    background: linear-gradient(135deg, #10b981 0%, #059669 100%);
    color: #ffffff;
}

.btn-reserve:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 24px rgba(16, 185, 129, 0.4);
}

/* Submit Offer Button */
.btn-submit-offer {
    background: linear-gradient(135deg, #5a99f6 0%, #050b20 100%);
    color: #ffffff;
}

.btn-submit-offer:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 24px rgba(90, 153, 246, 0.4);
}

/* Randevu Al Button (Sidebar & Mobile) */
.btn-appointment {
    background: linear-gradient(135deg, #10b981 0%, #059669 100%);
    color: #ffffff;
    box-shadow: 0 4px 16px rgba(16, 185, 129, 0.3);
}

.btn-appointment:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 24px rgba(16, 185, 129, 0.4);
}

.btn-mobile-appointment {
    background: linear-gradient(135deg, #10b981 0%, #059669 100%);
    color: #ffffff;
    padding: 12px;
}

/* ============================================ */
/* RESPONSIVE DESIGN */
/* ============================================ */

@media (max-width: 768px) {
    .modern-modal {
        margin: 10px;
        border-radius: 20px;
    }

    .modern-modal-header {
        padding: 20px;
    }

    .modal-title-wrapper i {
        font-size: 20px;
    }

    .modal-title {
        font-size: 20px;
    }

    .modern-modal-body {
        padding: 20px;
    }

    .modern-modal-footer {
        padding: 16px 20px;
        flex-direction: column;
    }

    .btn-modal-cancel {
        order: 2;
    }

    .btn-modal-action {
        order: 1;
    }

    .guest-row {
        padding: 14px 0;
    }

    .counter-btn {
        width: 36px;
        height: 36px;
    }

    .counter-group {
        gap: 12px;
    }
}

@media (max-width: 576px) {
    .modern-modal-header {
        padding: 18px;
    }

    .modal-title {
        font-size: 18px;
    }

    .modern-modal-body {
        padding: 18px;
    }

    .form-control-modern {
        padding: 12px 16px;
        font-size: 14px;
    }

    .guest-title {
        font-size: 14px;
    }

    .guest-desc {
        font-size: 12px;
    }
}

/* ============================================ */
/* ANIMATIONS */
/* ============================================ */

@keyframes modalFadeIn {
    from {
        opacity: 0;
        transform: scale(0.9);
    }
    to {
        opacity: 1;
        transform: scale(1);
    }
}

.modal.show .modern-modal {
    animation: modalFadeIn 0.3s ease-out;
}

/* ============================================ */
/* LOADING STATE */
/* ============================================ */

.btn-modal-action:disabled {
    opacity: 0.7;
    cursor: not-allowed;
}

.btn-modal-action .spinner-border {
    width: 18px;
    height: 18px;
    border-width: 2px;
}

/* ============================================ */
/* ACCESSIBILITY */
/* ============================================ */

@media (prefers-reduced-motion: reduce) {
    .modern-modal,
    .btn-modal-action,
    .btn-modal-cancel,
    .counter-btn,
    .btn-close-modern {
        animation: none;
        transition: none;
    }
}
.price-breakdown {
    padding: 20px;
    background: linear-gradient(135deg, #eff6ff 0%, #dbeafe 100%);
    border: 2px solid #5a99f6;
    border-radius: 16px;
}

.price-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 8px 0;
    font-size: 14px;
    color: #475569;
}

.price-row.total {
    font-size: 18px;
    color: #050b20;
    padding-top: 12px;
}

.price-breakdown hr {
    margin: 12px 0;
    border: none;
    border-top: 1px solid #cbd5e1;
}

.disabled-date {
    opacity: 0.3;
    cursor: not-allowed !important;
}

.flatpickr-calendar {
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15) !important;
    border-radius: 12px !important;
}

.flatpickr-day.reserved-date {
    background: #fee2e2 !important;
    border-color: #fee2e2 !important;
    color: #dc2626 !important;
    pointer-events: none !important;
}

.flatpickr-day.reserved-date .reserved-x {
    font-size: 14px;
    font-weight: bold;
}

.flatpickr-day.selected,
.flatpickr-day.startRange,
.flatpickr-day.endRange {
    background: #0d6efd !important;
    border-color: #0d6efd !important;
}

.flatpickr-day.inRange {
    background: #e8f4fd !important;
    border-color: #e8f4fd !important;
}

.guests-section {
    background: #f8fafc;
    border-radius: 12px;
    padding: 20px;
    margin-top: 20px;
}

.guest-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 0;
    border-bottom: 1px solid #e2e8f0;
}

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

.price-display-box {
    background: linear-gradient(135deg, #f0f9ff 0%, #e0f2fe 100%);
    border: 1px solid #bae6fd;
    border-radius: 12px;
    padding: 20px;
    margin-top: 20px;
}
/* Devam eden rezervasyon butonu */
.btn-pending {
    background: linear-gradient(135deg, #f59e0b 0%, #f97316 100%);
    color: white;
}

.btn-pending:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(245, 158, 11, 0.3);
}

/* Modal içi detaylar */
.reservation-details {
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    padding: 1rem;
}

.detail-row {
    display: flex;
    justify-content: space-between;
    padding: 0.5rem 0;
    border-bottom: 1px solid #f3f4f6;
}

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

.detail-label {
    color: #6b7280;
    font-size: 0.9rem;
}

.detail-value {
    font-weight: 600;
    color: #111827;
}

.alert-info-modern {
    background: #eff6ff;
    border-left: 4px solid #3b82f6;
    padding: 1rem;
    border-radius: 8px;
}
