/* Page-level theme overrides for Default / Light / Dark body skins.
   Default = neither mod-skin-light nor mod-skin-dark (existing page CSS stays as-is).
   Light/Dark = body classes from Layout Settings (skin-master.css). */

/* ---------- Consultation list ---------- */
body.mod-skin-dark .consult-stat-card,
body.mod-skin-dark .consult-card,
body.mod-skin-dark .inbox-panel {
    background: #2a2c2e !important;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.35) !important;
    color: #e8eaed;
}

body.mod-skin-dark .inbox-panel {
    border-color: #3f4246 !important;
}

body.mod-skin-dark .inbox-panel .inbox-title,
body.mod-skin-dark .consult-card,
body.mod-skin-dark .consult-stat-card {
    color: #e8eaed !important;
}

body.mod-skin-dark .consult-card .text-muted,
body.mod-skin-dark .consult-stat-card .text-muted,
body.mod-skin-dark .inbox-panel .text-muted {
    color: #a8b0b8 !important;
}

body.mod-skin-light .consult-stat-card,
body.mod-skin-light .consult-card,
body.mod-skin-light .inbox-panel {
    background: #fff !important;
}

/* ---------- Consultation booking / user booking ---------- */
body.mod-skin-dark .booking-datepicker-wrap,
body.mod-skin-dark .booking-summary-card,
body.mod-skin-dark .ue-booking-card,
body.mod-skin-dark .ue-slot-card,
body.mod-skin-dark .ue-mentor-card,
body.mod-skin-dark .product-settings-card,
body.mod-skin-dark .settings-block,
body.mod-skin-dark .mentor-card,
body.mod-skin-dark .schedule-panel {
    background: #2a2c2e !important;
    color: #e8eaed !important;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.35) !important;
    border-color: #3f4246 !important;
}

body.mod-skin-dark .summary-course-card-name,
body.mod-skin-dark .ue-booking-title,
body.mod-skin-dark .ue-section-title,
body.mod-skin-dark h1, body.mod-skin-dark h2, body.mod-skin-dark h3, body.mod-skin-dark h4, body.mod-skin-dark h5 {
    color: #e8eaed;
}

body.mod-skin-dark .summary-course-card-name {
    background: #32353a !important;
    color: #9ec5fe !important;
}

body.mod-skin-dark [style*="background: #fff"],
body.mod-skin-dark [style*="background:#fff"],
body.mod-skin-dark [style*="background: #ffffff"],
body.mod-skin-dark [style*="background:#ffffff"] {
    /* cannot override inline styles; handled via class overrides above */
}

body.mod-skin-dark .ue-slot-available,
body.mod-skin-dark .time-slot,
body.mod-skin-dark .slot-btn {
    background: #32353a !important;
    color: #e8eaed !important;
    border-color: #4a4e54 !important;
}

body.mod-skin-dark .bg-light-soft,
body.mod-skin-dark .ue-info-banner,
body.mod-skin-dark .note-banner {
    background: #32353a !important;
    color: #e8eaed !important;
}

/* Booking page specific light greys */
body.mod-skin-dark .ConsultationBooking,
body.mod-skin-dark .booking-page,
body.mod-skin-dark .page-content .card {
    /* cards already remapped by skin-master; reinforce page wrappers */
}

/* ---------- Consultation modals ---------- */
body.mod-skin-dark #consultationDetailsModal .modal-content,
body.mod-skin-dark #mentorInvitationDetailsModal .modal-content,
body.mod-skin-dark .consultation-details-modal,
body.mod-skin-dark .mentor-invitation-modal {
    background: #2a2c2e;
    color: #e8eaed;
}

body.mod-skin-dark .modal-body .detail-label,
body.mod-skin-dark .modal-body .text-dark {
    color: #e8eaed !important;
}

body.mod-skin-dark .modal-body .detail-value,
body.mod-skin-dark .modal-body p {
    color: #cfd3d8;
}

body.mod-skin-dark .note-box,
body.mod-skin-dark .info-note,
body.mod-skin-dark .reschedule-note {
    background: #32353a !important;
    color: #e8eaed !important;
    border-color: #4a4e54 !important;
}

/* ---------- Schedule ---------- */
body.mod-skin-dark .fc,
body.mod-skin-dark .schedule-card,
body.mod-skin-dark .availability-panel {
    color: #e8eaed;
}

body.mod-skin-dark .modal-header.bg-primary .modal-title,
body.mod-skin-dark .modal-header .modal-title.text-white {
    color: #fff !important;
}

/* ---------- Product settings ---------- */
body.mod-skin-dark .product-settings-page .card,
body.mod-skin-dark .product-settings-page .panel,
body.mod-skin-dark .product-settings-form .form-control {
    background-color: #2a2c2e;
    color: #e8eaed;
    border-color: #3f4246;
}

body.mod-skin-dark .product-settings-page label,
body.mod-skin-dark .product-settings-page .form-group label {
    color: #cfd3d8;
}

/* ---------- Settings page panels ---------- */
body.mod-skin-dark .settings-page .settings-panel,
body.mod-skin-dark .settings-page .accessibility-panel {
    background: #2a2c2e !important;
    border-color: #3f4246 !important;
    color: #e8eaed;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.35) !important;
}

body.mod-skin-dark .settings-page .panel-title,
body.mod-skin-dark .settings-page .account-name,
body.mod-skin-dark .settings-page .row-label,
body.mod-skin-dark .settings-page .font-weight-600,
body.mod-skin-dark .settings-page .language-label {
    color: #e8eaed !important;
}

body.mod-skin-dark .settings-page .text-muted,
body.mod-skin-dark .settings-page .account-email {
    color: #a8b0b8 !important;
}

body.mod-skin-dark .settings-page .deactivation-panel {
    background: #322a2a !important;
}

body.mod-skin-dark .settings-page .form-control,
body.mod-skin-dark .settings-page .modal-content {
    background-color: #2a2c2e;
    color: #e8eaed;
    border-color: #3f4246;
}

body.mod-skin-dark .settings-page .modal-header,
body.mod-skin-dark .settings-page .modal-footer {
    border-color: #3f4246;
}

body.mod-skin-light .settings-page .settings-panel {
    background: #fff !important;
}

/* ---------- Profile ---------- */
body.mod-skin-dark .timezone-map-display-compact {
    background: #2a2c2e !important;
    border-color: #3f4246 !important;
    box-shadow: 0 1px 6px rgba(0, 0, 0, 0.35) !important;
    color: #e8eaed;
}

body.mod-skin-dark .timezone-map-display-compact .text-muted {
    color: #a8b0b8 !important;
}

/* Theme-blue continents (CSS mask silhouette) */
body.mod-skin-dark .world-map-silhouette {
    background-color: #3b9eff !important;
}

body.mod-skin-light .timezone-map-display-compact {
    background: #fff !important;
}

body.mod-skin-light .world-map-silhouette {
    background-color: #6b7c93 !important;
}

body.mod-skin-dark .form-control,
body.mod-skin-dark .custom-select {
    background-color: #2a2c2e;
    color: #e8eaed;
    border-color: #3f4246;
}

/* Mentors select with white bg */
body.mod-skin-dark select.form-control {
    background-color: #2a2c2e !important;
    color: #e8eaed !important;
}

/* Ensure page content text remains readable in dark mode */
body.mod-skin-dark .page-content,
body.mod-skin-dark .subheader,
body.mod-skin-dark .breadcrumb {
    color: #e8eaed;
}

/* ---------- Booking / product concrete classes ---------- */
body.mod-skin-dark .booking-summary-card,
body.mod-skin-dark .booking-datepicker-wrap,
body.mod-skin-dark .booking-summary-card,
body.mod-skin-dark .product-card,
body.mod-skin-dark .product-search-wrap {
    background: #2a2c2e !important;
    border-color: #3f4246 !important;
    color: #e8eaed !important;
}

body.mod-skin-dark .product-card.selected {
    background: #1e3a5f !important;
    border-color: #3b82f6 !important;
}

body.mod-skin-dark .product-card-title,
body.mod-skin-dark .booking-summary-label,
body.mod-skin-dark .invite-modal-user-name,
body.mod-skin-dark .invite-modal-row .value,
body.mod-skin-dark .consult-modal-user-name,
body.mod-skin-dark .consult-modal-row .value {
    color: #e8eaed !important;
}

body.mod-skin-dark .invite-course-card-name,
body.mod-skin-dark .consult-course-card-name {
    background: #32353a !important;
    color: #e8eaed !important;
}

body.mod-skin-dark .custom-select {
    background-color: #2a2c2e !important;
    color: #e8eaed !important;
    border-color: #3f4246 !important;
}

body.mod-skin-dark .panel,
body.mod-skin-dark .panel-container,
body.mod-skin-dark .panel-content {
    color: #e8eaed;
}

/* Light mode: reinforce white cards when light skin is chosen */
body.mod-skin-light .consult-stat-card,
body.mod-skin-light .consult-card,
body.mod-skin-light .inbox-panel,
body.mod-skin-light .booking-summary-card,
body.mod-skin-light .booking-datepicker-wrap,
body.mod-skin-light .product-card,
body.mod-skin-light .settings-page .settings-panel,
body.mod-skin-light .timezone-map-display-compact {
    background: #fff !important;
}

/* ---------- Readable light-grey text on dark surfaces (fix black-on-black) ---------- */
body.mod-skin-dark .time-slot-btn,
body.mod-skin-dark .btn-outline-secondary.time-slot-btn {
    background-color: #32353a !important;
    border-color: #5a6068 !important;
    color: #d5dae0 !important;
}

body.mod-skin-dark .time-slot-btn:hover,
body.mod-skin-dark .btn-outline-secondary.time-slot-btn:hover {
    background-color: #3a3f45 !important;
    border-color: #6a91c4 !important;
    color: #f0f2f5 !important;
}

body.mod-skin-dark .time-slot-btn.active,
body.mod-skin-dark .btn-outline-secondary.time-slot-btn.active {
    background-color: #007bff !important;
    border-color: #007bff !important;
    color: #fff !important;
}

body.mod-skin-dark .hours-empty,
body.mod-skin-dark .booking-summary-label,
body.mod-skin-dark .booking-token-hint,
body.mod-skin-dark .booking-price-original,
body.mod-skin-dark .summary-course-label,
body.mod-skin-dark .summary-note-label,
body.mod-skin-dark .summary-note-text,
body.mod-skin-dark .booking-summary-card .summary-row,
body.mod-skin-dark .consult-card .consult-meta,
body.mod-skin-dark .consult-stat-card .stat-label,
body.mod-skin-dark .inbox-meta,
body.mod-skin-dark .inbox-course-title,
body.mod-skin-dark .inbox-empty {
    color: #c5cbd3 !important;
}

/* Mentor invitation cards: keep readable contrast in dark mode */
body.mod-skin-dark .inbox-item-invite {
    background: #1e3a2f !important;
    border-color: #2f6b4f !important;
    color: #e8eaed !important;
}

body.mod-skin-dark .inbox-item-invite strong,
body.mod-skin-dark .inbox-item-invite .inbox-course-title,
body.mod-skin-dark .inbox-item-invite .inbox-user-row,
body.mod-skin-dark .inbox-item-invite .inbox-user-row div {
    color: #e8eaed !important;
}

body.mod-skin-dark .inbox-item {
    background: #32353a !important;
    border-color: #3f4246 !important;
    color: #e8eaed !important;
}

body.mod-skin-dark .inbox-item strong,
body.mod-skin-dark .inbox-item .inbox-user-row,
body.mod-skin-dark .inbox-item .inbox-user-row div {
    color: #e8eaed !important;
}

/* Hardcoded dark greys from consultation pages */
body.mod-skin-dark .page-content,
body.mod-skin-dark .panel-content,
body.mod-skin-dark .panel-container {
    color: #d5dae0;
}

body.mod-skin-dark .page-content p,
body.mod-skin-dark .panel-content p,
body.mod-skin-dark .product-card-title,
body.mod-skin-dark .product-card-body,
body.mod-skin-dark .time-group label,
body.mod-skin-dark .time-container,
body.mod-skin-dark .availability-day-label {
    color: #d5dae0 !important;
}

/* Catch common utility / bootstrap remnants that stay near-black */
body.mod-skin-dark .text-dark,
body.mod-skin-dark .text-body,
body.mod-skin-dark .btn-outline-secondary:not(.active):not(:hover):not(.time-slot-btn) {
    color: #d5dae0 !important;
}

body.mod-skin-dark .btn-outline-secondary:not(.active):not(.time-slot-btn) {
    border-color: #5a6068 !important;
    background-color: transparent !important;
}

body.mod-skin-dark .btn-outline-secondary:not(.active):hover:not(.time-slot-btn) {
    background-color: #3a3f45 !important;
    color: #f0f2f5 !important;
}

/* Datepicker cells in dark mode */
body.mod-skin-dark .datepicker table tr td,
body.mod-skin-dark .datepicker table tr th {
    color: #d5dae0;
}

body.mod-skin-dark .datepicker table tr td.day:hover,
body.mod-skin-dark .datepicker table tr td.focused {
    background: #3a3f45;
    color: #f0f2f5;
}

body.mod-skin-dark .form-control::placeholder,
body.mod-skin-dark .form-control::-webkit-input-placeholder {
    color: #9aa3ad !important;
    opacity: 1;
}

/* Mentor availability labels */
body.mod-skin-dark .day-label,
body.mod-skin-dark .separator,
body.mod-skin-dark .day-header,
body.mod-skin-dark [class*="time-label"] {
    color: #d5dae0 !important;
}

/* List / product / mentor / details titles that hardcode near-black */
body.mod-skin-dark .inbox-panel .inbox-title,
body.mod-skin-dark .product-card-title,
body.mod-skin-dark .mentor-name,
body.mod-skin-dark .panel-content .value,
body.mod-skin-dark .booking-col-title,
body.mod-skin-dark .ue-col-title {
    color: #d5dae0 !important;
}

body.mod-skin-dark .product-search-wrap {
    background: #2a2c2e !important;
    border-color: #3f4246 !important;
}

body.mod-skin-dark .product-search-wrap .input-group-text {
    background: #32353a !important;
    color: #a8b0b8 !important;
    border-color: #3f4246 !important;
}

body.mod-skin-dark .mentor-email {
    color: #a8b0b8 !important;
}

/* Modal row labels stay slightly muted; values readable */
body.mod-skin-dark .invite-modal-row .label,
body.mod-skin-dark .consult-modal-row .label {
    color: #a8b0b8 !important;
}
