@media (prefers-color-scheme: dark) {
    :root {
        color-scheme: dark;
    }

    body {
        background: #12151c !important;
        color: #eef2fa !important;
    }

    a {
        color: #ff8a80;
    }

    a:hover {
        color: #ffab91;
    }

    .card,
    .stat-card,
    .card-header,
    .card-header-custom,
    .card-content,
    .card-body,
    .card-footer,
    .modal-card,
    .profile-dropdown,
    .header-search-results,
    .navbar-mobile-menu,
    .navbar-user-menu,
    .login-card,
    .feature-card,
    .room-card,
    .gallery-card,
    .booking-card,
    .testimonial-card,
    .about-card,
    .faq-item,
    .contact-card,
    .amenity-card {
        background: #1b212b !important;
        border-color: #2f3745 !important;
        color: #eef2fa !important;
        box-shadow: 0 10px 28px rgba(0, 0, 0, 0.45) !important;
    }

    .card-header,
    .card-header-custom,
    .card-footer,
    .card .table thead th {
        border-color: #374152 !important;
    }

    .card,
    .stat-card {
        border: 1px solid #2f3745 !important;
    }

    .sidebar,
    .header,
    .sidebar-brand,
    .sidebar-footer,
    .admin-main,
    .admin-content {
        background: #151a22 !important;
        border-color: #2b3240 !important;
    }

    .nav-link,
    .header-title,
    .sidebar-brand-text,
    .page-title,
    .card-header-title,
    .card-header-custom,
    .stat-value,
    .table tbody td,
    .modal-title,
    .modal-value,
    .search-title,
    .header-profile-name,
    .profile-dropdown a,
    .section-title,
    .feature-title,
    .room-name,
    .hero-title,
    .navbar-logo,
    .card-title,
    .card h1,
    .card h2,
    .card h3,
    .card h4,
    .card h5,
    .card h6,
    .stat-card h1,
    .stat-card h2,
    .stat-card h3,
    .stat-card h4,
    .stat-card h5,
    .stat-card h6 {
        color: #f2f5fc !important;
    }

    .nav-section-title,
    .stat-label,
    .stat-change,
    .page-breadcrumb,
    .search-sub,
    .sidebar-user-role,
    .sidebar-user-name,
    .table thead th,
    .hero-subtitle,
    .section-desc,
    .feature-desc,
    .room-info,
    .form-header p,
    .field-group label,
    .card p,
    .card li,
    .card small,
    .stat-card p,
    .stat-card li,
    .stat-card small {
        color: #b7c1d4 !important;
    }

    .card span:not(.badge):not(.action-icon),
    .stat-card span:not(.badge):not(.action-icon) {
        color: #b7c1d4 !important;
    }

    .nav-link:hover,
    .nav-link.is-active,
    .profile-dropdown a:hover,
    .search-item:hover,
    .table tbody tr:hover,
    .navbar-links li a:hover,
    .navbar-user-link:hover,
    .user-menu-item:hover,
    .mobile-cta,
    .btn-outline:hover {
        background: #242d3a !important;
        color: #f5f7fd !important;
    }

    .header .sidebar-toggle:hover,
    .header .header-action:hover,
    .header .header-profile:hover {
        background: #2b3a52 !important;
        border-color: #7ea2d8 !important;
        color: #f5f9ff !important;
    }

    .header .profile-dropdown a:hover {
        background: #31435f !important;
        color: #ffffff !important;
    }

    .header .search-item:hover {
        background: #2a3a53 !important;
        color: #ffffff !important;
    }

    .input,
    .textarea,
    .select select,
    input,
    textarea,
    select,
    .header-search .search-input,
    .input-wrapper .input {
        background: #1e2632 !important;
        border-color: #374152 !important;
        color: #f0f4fb !important;
    }

    .input::placeholder,
    .textarea::placeholder,
    .header-search .search-input::placeholder,
    .input-wrapper .input::placeholder {
        color: #94a1ba !important;
    }

    .input:focus,
    .textarea:focus,
    .select select:focus,
    .header-search .search-input:focus,
    .input-wrapper .input:focus {
        border-color: #ff8a80 !important;
        box-shadow: 0 0 0 3px rgba(255, 138, 128, 0.2) !important;
    }

    .btn-primary,
    .navbar-cta,
    .login-btn,
    .btn-hero-primary {
        background: #ef5350 !important;
        border-color: #ef5350 !important;
        color: #ffffff !important;
    }

    .btn-primary:hover,
    .navbar-cta:hover,
    .login-btn:hover,
    .btn-hero-primary:hover {
        background: #ff6f60 !important;
        border-color: #ff6f60 !important;
        color: #ffffff !important;
    }

    .btn-outline,
    .btn-hero-outline,
    .back-home-btn,
    .page-link {
        background: #1b212b !important;
        border-color: #374152 !important;
        color: #d5ddee !important;
    }

    .action-btn.btn-outline,
    .btn.btn-outline.btn-sm.action-btn {
        background: #202836 !important;
        border-color: #4a586f !important;
        color: #e8eefb !important;
    }

    .action-btn.btn-outline:hover,
    .btn.btn-outline.btn-sm.action-btn:hover {
        background: #2a3445 !important;
        border-color: #6b7c97 !important;
        color: #ffffff !important;
    }

    .action-icon,
    .action-icon svg {
        color: #ffffff !important;
    }

    .action-icon-view {
        background: #3b82f6 !important;
    }

    .action-icon-accept {
        background: #22c55e !important;
    }

    .action-icon-edit {
        background: #f59e0b !important;
    }

    .action-icon-delete {
        background: #ef4444 !important;
    }

    .badge {
        border: 1px solid rgba(255, 255, 255, 0.14) !important;
        font-weight: 700 !important;
    }

    .badge.green {
        background: #163829 !important;
        color: #9ff2bf !important;
    }

    .badge.blue {
        background: #162d4d !important;
        color: #9cc9ff !important;
    }

    .badge.yellow {
        background: #3d3218 !important;
        color: #ffd98a !important;
    }

    .badge.pink {
        background: #4a1f2f !important;
        color: #ffb3cf !important;
    }

    .badge.orange {
        background: #4a2e1c !important;
        color: #ffbb93 !important;
    }

    .badge.purple {
        background: #342046 !important;
        color: #d7b4ff !important;
    }

    .badge,
    .action-icon,
    .checkmark,
    .hero-badge,
    .room-tag,
    .section-tag {
        filter: saturate(1.15) brightness(1.05);
    }

    .table thead th {
        background: #1d2430 !important;
        border-bottom-color: #374152 !important;
    }

    .table tbody td {
        border-bottom-color: #2e3646 !important;
    }

    .table tbody tr {
        background: transparent !important;
    }

    .prewrap {
        background: #111827 !important;
        border: 1px solid #2f3a4e !important;
        border-radius: 8px;
        color: #dbe6ff !important;
        padding: 0.55rem 0.7rem;
        max-width: 380px;
        white-space: pre-wrap;
        word-break: break-word;
        box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.02);
    }

    .message,
    .notification,
    .box {
        background: #1b212b !important;
        color: #e8edf8 !important;
        border-color: #313a4a !important;
    }

    .message.is-info,
    .notification.is-info {
        background: #1d2f45 !important;
        color: #d6e7ff !important;
    }

    .message.is-success,
    .notification.is-success {
        background: #20372d !important;
        color: #d7f6e3 !important;
    }

    .message.is-danger,
    .notification.is-danger {
        background: #3a2628 !important;
        color: #ffd9de !important;
    }

    .message.is-warning,
    .notification.is-warning {
        background: #3b3423 !important;
        color: #ffeec8 !important;
    }

    .navbar-landing.is-scrolled {
        background: rgba(20, 25, 33, 0.94) !important;
        border-bottom-color: #2f3745 !important;
    }

    .navbar-links li a,
    .navbar-user-link {
        color: #dbe3f3 !important;
    }

    .navbar-links li a:hover,
    .navbar-user-link:hover {
        background: rgba(255, 255, 255, 0.08) !important;
    }

    .section-landing,
    .section-alt,
    .section {
        background: #12151c !important;
        color: #e9eef8 !important;
    }

    .room-card,
    .room-body {
        background: #1b2432 !important;
    }

    .room-footer {
        border-top-color: #3a4558 !important;
    }

    .room-price,
    .room-price-value,
    .room-price strong {
        color: #f7fbff !important;
    }

    .room-price-label,
    .room-price span {
        color: #c4d0e3 !important;
    }

    .room-amenity {
        background: #2a3446 !important;
        color: #d9e3f3 !important;
        border: 1px solid #3a465c;
    }

    .room-amenity svg {
        color: #ffb4ac !important;
    }

    .room-rates-table {
        border-color: #3a4558 !important;
        background: #1a2331 !important;
    }

    .room-rates-label {
        background: #242f42 !important;
        color: #ffb4ac !important;
        border-bottom-color: #3a4558 !important;
    }

    .room-rate-row {
        border-bottom-color: #3a4558 !important;
    }

    .room-rate-row:hover {
        background: #2b3750 !important;
    }

    .rate-duration {
        color: #e8eefb !important;
    }

    .rate-note {
        color: #b8c5da !important;
    }

    .rate-price {
        color: #ffb4ac !important;
    }

    .testimonial-card {
        background: #1b2432 !important;
        border-color: #334056 !important;
    }

    .testimonial-text {
        color: #d9e3f3 !important;
    }

    .testimonial-name {
        color: #f4f8ff !important;
    }

    .testimonial-role {
        color: #b8c5da !important;
    }

    .testimonial-avatar {
        background: #2a3446 !important;
        color: #ffb4ac !important;
    }

    .testimonial-feedback {
        background: #1f2a3b !important;
        border-color: #3b4960 !important;
        color: #e6eefb !important;
    }

    .testimonial-feedback-success {
        background: #1f352c !important;
        border-color: #5d8a73 !important;
        color: #b7e7c8 !important;
    }

    .testimonial-feedback-error {
        background: #3b2426 !important;
        border-color: #f28b82 !important;
        color: #ffd1cc !important;
    }

    .bm-overlay {
        background: rgba(5, 10, 18, 0.82) !important;
    }

    .bm-card {
        background: #192231 !important;
        border: 1px solid #334056 !important;
        box-shadow: 0 28px 70px rgba(0, 0, 0, 0.6) !important;
    }

    .bm-close {
        background: rgba(0, 0, 0, 0.55) !important;
        color: #ffffff !important;
    }

    .bm-close:hover {
        background: rgba(0, 0, 0, 0.75) !important;
    }

    .bm-hero-overlay {
        background: linear-gradient(to bottom, rgba(5, 10, 18, 0.35) 0%, rgba(5, 10, 18, 0.78) 100%) !important;
    }

    .bm-tag {
        color: #ffb4ac !important;
        text-shadow: 0 1px 6px rgba(0, 0, 0, 0.45) !important;
    }

    .bm-room-name {
        color: #f4f8ff !important;
        text-shadow: 0 2px 10px rgba(0, 0, 0, 0.55) !important;
    }

    .bm-body,
    .bm-panel-title,
    .bm-field label,
    .bm-summary-item span,
    .bm-summary-item strong,
    .bm-success-title,
    .bm-success-desc,
    .bm-price-row span,
    .bm-price-row strong,
    .bm-price-note {
        color: #e8eefb !important;
    }

    .bm-step span {
        background: #2b364a !important;
        color: #c8d3e8 !important;
    }

    .bm-step small {
        color: #aebbd1 !important;
    }

    .bm-step.active span {
        background: #ef5350 !important;
        color: #ffffff !important;
        box-shadow: 0 0 0 4px rgba(239, 83, 80, 0.22) !important;
    }

    .bm-step.active small {
        color: #ffb4ac !important;
    }

    .bm-step-line {
        background: #3a4558 !important;
    }

    .bm-field input,
    .bm-field select,
    .bm-field textarea {
        background: #1f2a3b !important;
        border-color: #3b4960 !important;
        color: #eef3fc !important;
    }

    .bm-field input::placeholder,
    .bm-field textarea::placeholder {
        color: #9eb0cb !important;
    }

    .bm-field input:focus,
    .bm-field select:focus,
    .bm-field textarea:focus {
        border-color: #ff8a80 !important;
        box-shadow: 0 0 0 3px rgba(255, 138, 128, 0.2) !important;
    }

    .bm-rate-card,
    .bm-price-summary,
    .bm-summary-box,
    .bm-gcash-box,
    .bm-upload-label {
        background: #202c40 !important;
        border-color: #3b4960 !important;
        color: #e9effb !important;
    }

    .bm-rate-card:hover,
    .bm-rate-card.selected,
    .bm-upload-label:hover,
    .bm-upload-label.drag-over,
    .bm-upload-label.has-file {
        background: #2a3952 !important;
        border-color: #6e86ac !important;
    }

    .bm-rate-duration,
    .bm-upload-label span,
    .bm-upload-label small,
    .bm-gcash-details small,
    .bm-gcash-details strong,
    .bm-summary-item {
        color: #d8e3f5 !important;
    }

    .bm-gcash-icon {
        background: #ffffff !important;
        border-color: #3b4960 !important;
    }

    .bm-rate-price,
    .bm-summary-price {
        color: #ffb4ac !important;
    }

    .bm-error-toast {
        background: #4a1f2f !important;
        color: #ffd3e3 !important;
        border: 1px solid #87425b !important;
    }

    .bm-success {
        color: #e8eefb !important;
    }

    .hero-overlay {
        background: linear-gradient(to bottom, rgba(5, 8, 14, 0.46), rgba(5, 8, 14, 0.8)) !important;
    }

    .divider span {
        background: #1b212b !important;
        color: #aab6cb !important;
    }

    .progress-bar-container {
        background: #2a3242 !important;
    }

    .progress-bar {
        background: #ef5350 !important;
    }

    .footer,
    .footer-landing,
    .footer-bottom,
    .footer-content {
        background: #0f1319 !important;
        color: #c4cede !important;
        border-color: #2a3242 !important;
    }

    .cta-section {
        background: #121923 !important;
    }

    .cta-section .section-tag {
        color: #ffb4ac !important;
    }

    .cta-section .section-title {
        color: #f3f7ff !important;
    }

    .cta-section .section-desc {
        color: #b8c5da !important;
    }

    .booking-form {
        background: #1b2432 !important;
        border-color: #334056 !important;
    }

    .booking-field label {
        color: #aebbd1 !important;
    }

    .booking-field input,
    .booking-field select {
        background: #202c40 !important;
        border-color: #3b4960 !important;
        color: #eef3fc !important;
    }

    .booking-field input::placeholder {
        color: #9eb0cb !important;
    }

    .booking-field input:focus,
    .booking-field select:focus {
        border-color: #ff8a80 !important;
        box-shadow: 0 0 0 3px rgba(255, 138, 128, 0.2) !important;
        background: #2a3952 !important;
    }

    .booking-field select option {
        background: #1b2432 !important;
        color: #eef3fc !important;
    }

    .avail-result,
    .avail-result-inner {
        background: #1b2432 !important;
        border-color: #334056 !important;
        color: #e8eefb !important;
    }

    .avail-header,
    #availDatesLabel,
    .avail-room-name,
    .avail-room-count {
        color: #d8e3f5 !important;
    }

    #availError {
        color: #ffb4ac !important;
    }

    .avail-error {
        background: #3b2426 !important;
        border-color: #87425b !important;
        color: #ffd1cc !important;
    }

    .avail-room-card.is-available {
        background: #1f352c !important;
        border-color: #5d8a73 !important;
    }

    .avail-room-card.is-occupied {
        background: #3b2426 !important;
        border-color: #f28b82 !important;
    }

    .avail-badge.badge-available {
        background: #1f352c !important;
        border-color: #5d8a73 !important;
        color: #b7e7c8 !important;
    }

    .avail-badge.badge-occupied {
        background: #3b2426 !important;
        border-color: #f28b82 !important;
        color: #ffd1cc !important;
    }

    .footer-brand-text,
    .footer-heading,
    .footer-bottom {
        color: #f3f7ff !important;
    }

    .footer-brand-text .accent {
        color: #ff8a80 !important;
    }

    .footer-brand-desc,
    .footer-list li a {
        color: #c4cede !important;
    }

    .footer-list li a:hover {
        color: #ffb4ac !important;
    }

    .footer-social {
        background: #232d3d !important;
    }

    .footer-social svg {
        color: #dbe6ff !important;
    }

    .footer-social:hover {
        background: #ef5350 !important;
    }

    .footer-social:hover svg {
        color: #ffffff !important;
    }
}