/* Custom Scrollbar */
::-webkit-scrollbar {
    width: 8px;
}

::-webkit-scrollbar-track {
    background: #f1f1f1;
}

::-webkit-scrollbar-thumb {
    background: #005694;
    border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
    background: #004475;
}

html,
body {
    overflow-x: hidden;
    width: 100%;
    position: relative;
    scroll-behavior: smooth;
}

/* Mobile Table Card View */
@media (max-width: 768px) {
    .mobile-card-table thead {
        display: none;
    }

    .mobile-card-table tr {
        display: block;
        margin-bottom: 1rem;
        border: 1px solid #e2e8f0;
        border-radius: 0.5rem;
        background: #fff;
        box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
    }

    .dark .mobile-card-table tr {
        background: #1e293b;
        border-color: #334155;
    }

    .mobile-card-table td {
        display: flex;
        justify-content: space-between;
        align-items: center;
        text-align: right;
        padding: 0.75rem 1rem;
        border-bottom: 1px solid #f1f5f9;
        font-size: 0.875rem;
    }

    .dark .mobile-card-table td {
        border-color: #334155;
    }

    .mobile-card-table td:last-child {
        border-bottom: none;
    }

    .mobile-card-table td::before {
        content: attr(data-label);
        font-weight: 600;
        text-transform: uppercase;
        font-size: 0.75rem;
        color: #64748b;
        text-align: left;
        margin-right: 1rem;
        flex-shrink: 0;
    }

    .dark .mobile-card-table td::before {
        color: #94a3b8;
    }

    /* Special styling for the first cell (Room Type) to look like a header */
    .mobile-card-table td:first-child {
        background-color: #f8fafc;
        border-bottom: 2px solid #e2e8f0;
        justify-content: center;
        text-align: center;
        font-weight: bold;
        color: #0f172a;
        font-family: 'Montserrat', sans-serif;
        font-size: 1rem;
    }

    .dark .mobile-card-table td:first-child {
        background-color: #0f172a;
        border-color: #334155;
        color: #f8fafc;
    }

    .mobile-card-table td:first-child::before {
        display: none;
    }
}

/* New Price Section Styles */
.bg-maritime-pattern {
    background-color: transparent;
    background-image: radial-gradient(#005494 0.5px, transparent 0.5px), radial-gradient(#005494 0.5px, transparent 0.5px);
    background-size: 20px 20px;
    background-position: 0 0, 10px 10px;
}

.custom-scrollbar::-webkit-scrollbar {
    height: 8px;
}

.custom-scrollbar::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 4px;
}

.custom-scrollbar::-webkit-scrollbar-thumb {
    background: #888;
    border-radius: 4px;
}

.custom-scrollbar::-webkit-scrollbar-thumb:hover {
    background: #555;
}

.pattern-overlay {
    background-image: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M30 5c3 0 5 4 5 7s-2 5-5 5-5-2-5-5 2-7 5-7zm0 14c-4 0-7 3-7 7s3 7 7 7 7-3 7-7-3-7-7-7zm-15 5c2 0 4 2 4 5s-2 5-4 5-4-2-4-5 2-5 4-5zm30 0c2 0 4 2 4 5s-2 5-4 5-4-2-4-5 2-5 4-5z' fill='%23ffffff' fill-opacity='1' fill-rule='evenodd'/%3E%3C/svg%3E");
}