/* =========================================================
   PCMOD Booknetic Skin
   Clean Stable CSS - v1.0.13
   Replace the whole CSS file with this.
   ========================================================= */

:root {
    --pcmod-booking-h: 760px;
    --pcmod-sidebar-w: 292px;

    --pcmod-bg: #070707;
    --pcmod-red: #e5383f;
    --pcmod-red-dark: #b72229;
    --pcmod-red-border: rgba(229, 56, 63, 0.68);

    --pcmod-text: #ffffff;
    --pcmod-muted: rgba(255, 255, 255, 0.68);
    --pcmod-border: rgba(255, 255, 255, 0.20);
    --pcmod-border-soft: rgba(255, 255, 255, 0.105);

    --pcmod-radius-xl: 28px;
    --pcmod-radius-lg: 20px;
    --pcmod-radius-md: 14px;

    --pcmod-shadow: 0 30px 95px rgba(0, 0, 0, 0.62);
}

/* =========================================================
   Global / Base
   ========================================================= */

body .booknetic_appointment,
body .booknetic_appointment *,
body .booknetic_appointment *::before,
body .booknetic_appointment *::after {
    box-sizing: border-box !important;
}

body .booknetic_appointment {
    direction: rtl !important;
    width: min(1500px, calc(100vw - 48px)) !important;
    height: var(--pcmod-booking-h) !important;
    min-height: var(--pcmod-booking-h) !important;
    max-height: var(--pcmod-booking-h) !important;
    margin: 38px auto !important;

    display: flex !important;
    flex-direction: row-reverse !important;
    align-items: stretch !important;

    overflow: hidden !important;
    border-radius: var(--pcmod-radius-xl) !important;
    border: 1px solid var(--pcmod-border) !important;

    background:
        radial-gradient(circle at 8% 84%, rgba(229, 56, 63, 0.26), transparent 28%),
        radial-gradient(circle at 94% 0%, rgba(229, 56, 63, 0.20), transparent 26%),
        linear-gradient(135deg, rgba(22, 22, 22, 0.96), rgba(7, 7, 7, 0.98)) !important;

    box-shadow: var(--pcmod-shadow) !important;
    color: var(--pcmod-text) !important;
    font-family: IRANYekanX, IRANYekan, Yekan, "IRANSans", "Poppins", Arial, sans-serif !important;
}

/* =========================================================
   Sidebar
   ========================================================= */

body .booknetic_appointment_steps {
    order: 2 !important;
    width: var(--pcmod-sidebar-w) !important;
    min-width: var(--pcmod-sidebar-w) !important;
    height: 100% !important;
    min-height: 100% !important;
    max-height: 100% !important;

    padding: 22px 18px !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;

    border-right: 0 !important;
    border-left: 1px solid var(--pcmod-border-soft) !important;

    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.018)),
        rgba(8, 8, 8, 0.72) !important;
}

body .booknetic_company_logo {
    height: 74px !important;
    min-height: 74px !important;
    margin: 0 0 16px 0 !important;
    padding: 0 0 16px 0 !important;

    border-bottom: 1px solid var(--pcmod-border-soft) !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

body .booknetic_company_logo:empty::before {
    content: "" !important;
    width: 150px !important;
    height: 48px !important;
    display: block !important;
    background: url("../icons/pcmod-logo.svg") center / contain no-repeat !important;
}

body .booknetic_company_logo img {
    max-width: 160px !important;
    max-height: 52px !important;
    object-fit: contain !important;
}

body .booknetic_appointment_steps_body {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    padding: 0 0 6px 0 !important;
    margin: 0 !important;
    overflow: visible !important;
}

/* Sidebar step row */
body .booknetic_appointment_step_element {
    width: 100% !important;
    height: 48px !important;
    min-height: 48px !important;
    margin: 0 0 11px 0 !important;
    padding: 0 12px !important;

    direction: rtl !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 10px !important;

    border-radius: 12px !important;
    border: 1px solid var(--pcmod-border) !important;

    background: rgba(12, 12, 12, 0.70) !important;
    color: var(--pcmod-text) !important;

    transition:
        border-color 0.22s ease,
        background 0.22s ease,
        box-shadow 0.22s ease !important;
}

body .booknetic_appointment_step_element:hover {
    border-color: var(--pcmod-red-border) !important;
    background: rgba(229, 56, 63, 0.08) !important;
}

body .booknetic_appointment_step_element.booknetic_active_step {
    border-color: var(--pcmod-red-border) !important;
    background: linear-gradient(90deg, rgba(229, 56, 63, 0.17), rgba(12, 12, 12, 0.76)) !important;
    box-shadow: 0 0 0 1px rgba(229, 56, 63, 0.12) inset !important;
}

body .booknetic_appointment_step_element.booknetic_selected_step {
    border-color: rgba(229, 56, 63, 0.45) !important;
}

/* Title on the right */
body .booknetic_appointment_step_element .booknetic_step_title {
    order: 1 !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;

    color: #fff !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    line-height: 1.4 !important;
    text-align: right !important;

    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

body .booknetic_appointment_step_element .booknetic_step_title span {
    color: inherit !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    line-height: inherit !important;
}

/* Icon box on the left */
body .booknetic_appointment_step_element .booknetic_badge {
    order: 2 !important;
    flex: 0 0 31px !important;
    width: 31px !important;
    min-width: 31px !important;
    max-width: 31px !important;
    height: 31px !important;
    min-height: 31px !important;
    max-height: 31px !important;

    margin: 0 !important;
    margin-right: auto !important;
    margin-left: 0 !important;

    border-radius: 9px !important;
    background: linear-gradient(135deg, #ff464d, #c8242b) !important;

    color: transparent !important;
    font-size: 0 !important;
    line-height: 0 !important;

    overflow: hidden !important;
    position: relative !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    transform: none !important;
    transition: none !important;
    animation: none !important;
}

/* Actual icon centered inside red square */
body .booknetic_appointment_step_element .booknetic_badge::after {
    content: "" !important;
    position: static !important;

    flex: 0 0 16px !important;
    width: 16px !important;
    min-width: 16px !important;
    max-width: 16px !important;
    height: 16px !important;
    min-height: 16px !important;
    max-height: 16px !important;

    display: block !important;
    margin: auto !important;

    background-color: transparent !important;
    background-image: var(--pcmod-step-icon, none) !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    background-size: contain !important;

    inset: auto !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    transform: none !important;

    opacity: 1 !important;
    transition: none !important;
    animation: none !important;
}

body .booknetic_appointment_step_element.pcmod-step-service { --pcmod-step-icon: url("../icons/service.svg"); }
body .booknetic_appointment_step_element.pcmod-step-extras { --pcmod-step-icon: url("../icons/extras.svg"); }
body .booknetic_appointment_step_element.pcmod-step-calendar { --pcmod-step-icon: url("../icons/calendar.svg"); }
body .booknetic_appointment_step_element.pcmod-step-info { --pcmod-step-icon: url("../icons/info.svg"); }
body .booknetic_appointment_step_element.pcmod-step-location { --pcmod-step-icon: url("../icons/location.svg"); }
body .booknetic_appointment_step_element.pcmod-step-cart { --pcmod-step-icon: url("../icons/cart.svg"); }
body .booknetic_appointment_step_element.pcmod-step-confirm { --pcmod-step-icon: url("../icons/confirm.svg"); }

/* Hide unwanted steps from sidebar if JS classes exist */
body .booknetic_appointment_step_element.pcmod-step-staff,
body .booknetic_appointment_step_element.pcmod-step-recurring {
    display: none !important;
}

body .booknetic_appointment_steps_footer {
    flex: 0 0 auto !important;
    min-height: 86px !important;
    margin: 12px 0 0 0 !important;
    padding: 17px 0 0 0 !important;

    border-top: 1px solid var(--pcmod-border-soft) !important;
    text-align: center !important;
    color: #fff !important;
}

body .booknetic_appointment_steps_footer_txt1 {
    font-size: 13px !important;
    font-weight: 900 !important;
    margin-bottom: 7px !important;
    color: #fff !important;
}

body .booknetic_appointment_steps_footer_txt2 {
    font-size: 14px !important;
    letter-spacing: 2px !important;
    direction: ltr !important;
    color: #fff !important;
}

/* =========================================================
   Main layout
   ========================================================= */

body .booknetic_appointment_container {
    order: 1 !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;

    height: 100% !important;
    min-height: 100% !important;
    max-height: 100% !important;

    padding: 34px 44px 24px 44px !important;

    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;

    background: transparent !important;
}

body .booknetic_appointment_container_header {
    flex: 0 0 96px !important;
    height: 96px !important;
    min-height: 96px !important;
    max-height: 96px !important;

    padding: 0 0 20px 0 !important;
    margin: 0 0 22px 0 !important;

    border-bottom: 1px solid var(--pcmod-border-soft) !important;
    background: transparent !important;

    display: flex !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
}

/* Hide empty header icons/cart */
body .booknetic_appointment_container_header_cart,
body .booknetic-appointment-container-cart-btn,
body .booknetic_appointment_container_header > div:not(.booknetic_appointment_container_header_text) {
    display: none !important;
}

body .booknetic_appointment_container_header_text {
    width: 100% !important;
    color: #fff !important;
    text-align: right !important;
    font-size: 32px !important;
    font-weight: 950 !important;
    line-height: 1.3 !important;
}

body .booknetic_appointment_container_header_text::after {
    content: "سامانه هوشمند رزرو خدمات پی سی ماد";
    display: block !important;
    margin-top: 14px !important;

    color: var(--pcmod-muted) !important;
    font-size: 15px !important;
    font-weight: 700 !important;
}

body .booknetic_appointment_container_body {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    height: auto !important;
    max-height: none !important;

    padding: 0 0 0 8px !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;

    background: transparent !important;

    scrollbar-width: thin !important;
    scrollbar-color: rgba(229, 56, 63, 0.72) rgba(255, 255, 255, 0.055) !important;
}

body .booknetic_appointment_container_body::-webkit-scrollbar {
    width: 7px !important;
}

body .booknetic_appointment_container_body::-webkit-scrollbar-track {
    background: rgba(255, 255, 255, 0.05) !important;
    border-radius: 20px !important;
}

body .booknetic_appointment_container_body::-webkit-scrollbar-thumb {
    background: rgba(229, 56, 63, 0.75) !important;
    border-radius: 20px !important;
}

body .booknetic_appointment_container_footer {
    flex: 0 0 74px !important;
    height: 74px !important;
    min-height: 74px !important;
    max-height: 74px !important;

    margin: 20px 0 0 0 !important;
    padding: 18px 0 0 0 !important;

    border-top: 1px solid var(--pcmod-border-soft) !important;
    background: transparent !important;

    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 16px !important;
}

/* =========================================================
   Shared form/buttons
   ========================================================= */

body .booknetic_appointment input,
body .booknetic_appointment textarea,
body .booknetic_appointment select,
body .booknetic_appointment .form-control {
    width: 100% !important;
    min-height: 54px !important;

    border-radius: 15px !important;
    border: 1px solid var(--pcmod-border) !important;

    background: rgba(255, 255, 255, 0.06) !important;
    color: #fff !important;

    box-shadow: none !important;
    outline: none !important;

    font-size: 14px !important;
    font-weight: 800 !important;
    direction: rtl !important;
}

body .booknetic_appointment textarea {
    height: auto !important;
    min-height: 118px !important;
    padding: 15px !important;
}

body .booknetic_appointment input:focus,
body .booknetic_appointment textarea:focus,
body .booknetic_appointment select:focus,
body .booknetic_appointment .form-control:focus {
    border-color: var(--pcmod-red-border) !important;
    background: rgba(255, 255, 255, 0.085) !important;
    box-shadow: 0 0 0 3px rgba(229, 56, 63, 0.10) !important;
}

body .booknetic_appointment input::placeholder,
body .booknetic_appointment textarea::placeholder {
    color: rgba(255, 255, 255, 0.45) !important;
}

body .booknetic_appointment label {
    color: #fff !important;
    font-size: 14px !important;
    font-weight: 900 !important;
    margin-bottom: 9px !important;
    text-align: right !important;
}

body .booknetic_btn_primary,
body .booknetic_btn_secondary {
    height: 50px !important;
    min-width: 142px !important;
    padding: 0 24px !important;

    border-radius: 14px !important;
    font-size: 14px !important;
    font-weight: 950 !important;

    transition:
        background 0.22s ease,
        box-shadow 0.22s ease,
        transform 0.22s ease !important;
}

body .booknetic_btn_primary {
    background: linear-gradient(135deg, #ff464d, #c8242b) !important;
    border: 1px solid rgba(229, 56, 63, 0.82) !important;
    color: #fff !important;
    box-shadow: 0 14px 30px rgba(229, 56, 63, 0.18) !important;
}

body .booknetic_btn_primary:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 18px 42px rgba(229, 56, 63, 0.28) !important;
}

body .booknetic_btn_secondary {
    background: rgba(255, 255, 255, 0.055) !important;
    border: 1px solid var(--pcmod-border) !important;
    color: #fff !important;
}

body .booknetic_btn_secondary:hover {
    background: rgba(255, 255, 255, 0.085) !important;
}

body .booknetic_warning_message {
    color: #ffb6ba !important;
    font-size: 13px !important;
    font-weight: 800 !important;
}

/* =========================================================
   Services - aligned horizontal rows
   ========================================================= */

body .bkntc_service_list {
    display: flex !important;
    flex-direction: column !important;
    gap: 20px !important;
    padding-bottom: 10px !important;
}

body .booknetic_service_category {
    width: 100% !important;
    margin: 0 0 4px 0 !important;
    padding: 0 !important;

    background: transparent !important;
    border: 0 !important;

    color: var(--pcmod-text) !important;
    font-size: 18px !important;
    font-weight: 900 !important;
    text-align: right !important;
}

/* Service row - all columns exactly aligned */
body .booknetic_service_card {
    width: 100% !important;
    min-height: 160px !important;
    height: 160px !important;
    max-height: 160px !important;
    margin: 0 !important;
    padding: 0 !important;

    direction: rtl !important;
    display: grid !important;
    grid-template-columns: 220px minmax(0, 1fr) 170px !important;
    grid-template-rows: 74px 86px !important;
    align-items: stretch !important;
    gap: 0 !important;

    border-radius: 22px !important;
    overflow: hidden !important;
    border: 1px solid var(--pcmod-border) !important;

    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.03), rgba(255, 255, 255, 0.01)),
        rgba(13, 13, 13, 0.86) !important;

    box-shadow: 0 18px 44px rgba(0, 0, 0, 0.28) !important;
    cursor: pointer !important;

    transition:
        border-color 0.22s ease,
        background 0.22s ease,
        box-shadow 0.22s ease !important;
}

body .booknetic_service_card:hover,
body .booknetic_service_card.booknetic_service_card_selected {
    transform: none !important;
    border-color: var(--pcmod-red-border) !important;
    box-shadow:
        0 24px 70px rgba(0, 0, 0, 0.35),
        0 0 0 1px rgba(229, 56, 63, 0.14) inset !important;
}

body .booknetic_service_card_header {
    display: contents !important;
}

/* Service image column */
body .booknetic_service_card_image {
    grid-column: 1 !important;
    grid-row: 1 / 3 !important;

    width: 220px !important;
    min-width: 220px !important;
    max-width: 220px !important;

    height: 160px !important;
    min-height: 160px !important;
    max-height: 160px !important;
    margin: 0 !important;

    border-radius: 0 !important;
    border-left: 1px solid rgba(255, 255, 255, 0.12) !important;
    background: transparent !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    overflow: hidden !important;
}

body .booknetic_service_card_image img,
body img.booknetic_card_service_image {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center center !important;
    padding: 8px !important;
    background: transparent !important;
    border-radius: 0 !important;
}

/* Service title column */
body .booknetic_service_card_title {
    grid-column: 2 !important;
    grid-row: 1 !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 74px !important;

    padding: 0 24px 0 24px !important;
    margin: 0 !important;

    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: center !important;

    text-align: right !important;
}

body .booknetic_service_title_span {
    display: block !important;
    margin: 0 !important;

    color: #fff !important;
    font-size: 18px !important;
    font-weight: 950 !important;
    line-height: 1.55 !important;
    text-align: right !important;

    writing-mode: horizontal-tb !important;
    text-orientation: mixed !important;
}

body .booknetic_service_duration_wrapper {
    margin-top: 5px !important;
}

body .booknetic_service_duration_span {
    display: inline-block !important;

    color: #fff !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    line-height: 1.6 !important;

    writing-mode: horizontal-tb !important;
    text-orientation: mixed !important;
}

body .booknetic_service_duration_span::before {
    content: "مدت زمان : ";
}

/* Service description column */
body .booknetic_service_card_description {
    grid-column: 2 !important;
    grid-row: 2 !important;

    min-width: 0 !important;
    height: 86px !important;
    padding: 0 24px 16px 24px !important;
    margin: 0 !important;

    color: rgba(255, 255, 255, 0.84) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1.85 !important;
    text-align: right !important;

    display: flex !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;

    overflow: hidden !important;

    writing-mode: horizontal-tb !important;
    text-orientation: mixed !important;
}

/* Service price column */
body .booknetic_service_card_price {
    grid-column: 3 !important;
    grid-row: 1 / 3 !important;

    width: 170px !important;
    min-width: 170px !important;
    max-width: 170px !important;

    height: 160px !important;
    min-height: 160px !important;
    max-height: 160px !important;

    margin: 0 !important;
    padding: 0 16px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    color: #fff !important;
    font-size: 22px !important;
    font-weight: 950 !important;
    text-align: center !important;
    white-space: nowrap !important;

    border-right: 1px solid rgba(255, 255, 255, 0.08) !important;

    writing-mode: horizontal-tb !important;
    text-orientation: mixed !important;
}

body .booknetic_service_card_price *,
body .booknetic_service_card_title *,
body .booknetic_service_card_description * {
    writing-mode: horizontal-tb !important;
    text-orientation: mixed !important;
}

/* =========================================================
   Extras - FINAL: image right / title middle / price left
   ========================================================= */

body .booknetic_service_extra_container,
body .booknetic_extras_container {
    width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 18px !important;
    padding: 6px 0 12px 0 !important;
}

body .booknetic_service_extra_category,
body .booknetic_category_accordion {
    width: 100% !important;
    margin: 0 0 2px 0 !important;
    padding: 14px 18px !important;

    border-radius: 14px !important;
    border: 1px solid var(--pcmod-border-soft) !important;
    background: rgba(255, 255, 255, 0.045) !important;

    color: #fff !important;
    font-size: 14px !important;
    font-weight: 900 !important;
    line-height: 1.7 !important;
    text-align: right !important;

    writing-mode: horizontal-tb !important;
    text-orientation: mixed !important;
}

/* Row */
body .booknetic_service_extra_card,
body .booknetic_extra_card {
    width: 100% !important;
    height: 126px !important;
    min-height: 126px !important;
    max-height: 126px !important;

    margin: 0 !important;
    padding: 0 !important;

    direction: rtl !important;

    display: grid !important;
    grid-template-columns: 220px minmax(0, 1fr) 220px !important;
    grid-template-rows: 126px !important;
    align-items: stretch !important;
    gap: 0 !important;

    overflow: hidden !important;
    border-radius: 18px !important;
    border: 1px solid var(--pcmod-border) !important;

    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.025), rgba(255, 255, 255, 0.01)),
        rgba(13, 13, 13, 0.78) !important;

    color: #fff !important;
    box-shadow: none !important;

    transform: none !important;
    transition:
        border-color 0.22s ease,
        background 0.22s ease,
        box-shadow 0.22s ease !important;

    writing-mode: horizontal-tb !important;
    text-orientation: mixed !important;
}

body .booknetic_service_extra_card:hover,
body .booknetic_extra_card:hover,
body .booknetic_service_extra_card.booknetic_selected_card,
body .booknetic_extra_card.booknetic_selected_card {
    transform: none !important;
    border-color: var(--pcmod-red-border) !important;
    background: rgba(229, 56, 63, 0.08) !important;
    box-shadow: 0 0 0 1px rgba(229, 56, 63, 0.10) inset !important;
}

/* Image: right */
body .booknetic_service_extra_card_image,
body .booknetic_extra_card_image {
    grid-column: 1 !important;
    grid-row: 1 !important;

    width: 220px !important;
    min-width: 220px !important;
    max-width: 220px !important;

    height: 126px !important;
    min-height: 126px !important;
    max-height: 126px !important;

    margin: 0 !important;
    padding: 0 !important;

    border-radius: 0 !important;
    border-left: 1px solid rgba(255, 255, 255, 0.10) !important;
    border-right: 0 !important;
    background: transparent !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    overflow: hidden !important;
    writing-mode: horizontal-tb !important;
    text-orientation: mixed !important;
}

body .booknetic_service_extra_card_image img,
body .booknetic_extra_card_image img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center center !important;
    padding: 8px !important;
    margin: 0 !important;
    background: transparent !important;
    border-radius: 0 !important;
}

/* Title/content: middle */
body .booknetic_service_extra_card_title,
body .booknetic_extra_card_title,
body .booknetic_service_extra_card .booknetic_card_title,
body .booknetic_extra_card .booknetic_card_title {
    grid-column: 2 !important;
    grid-row: 1 !important;

    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;

    height: 126px !important;
    min-height: 126px !important;
    max-height: 126px !important;

    margin: 0 !important;
    padding: 12px 24px !important;

    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 5px !important;

    color: #fff !important;
    text-align: center !important;
    direction: rtl !important;

    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: anywhere !important;
    overflow: hidden !important;

    writing-mode: horizontal-tb !important;
    text-orientation: mixed !important;
}

/* Make all extra texts horizontal */
body .booknetic_service_extra_card *,
body .booknetic_extra_card * {
    writing-mode: horizontal-tb !important;
    text-orientation: mixed !important;
    direction: rtl !important;
}

/* Title text */
body .booknetic_service_extra_card_title,
body .booknetic_extra_card_title,
body .booknetic_service_extra_card_title *,
body .booknetic_extra_card_title *,
body .booknetic_service_extra_card .booknetic_card_title *,
body .booknetic_extra_card .booknetic_card_title * {
    color: #fff !important;
    font-size: 15px !important;
    font-weight: 900 !important;
    line-height: 1.55 !important;
    text-align: center !important;

    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: anywhere !important;
}

/* Description, if exists */
body .booknetic_service_extra_card_description,
body .booknetic_extra_card_description,
body .booknetic_service_extra_card .booknetic_card_description,
body .booknetic_extra_card .booknetic_card_description {
    color: rgba(255, 255, 255, 0.72) !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 1.65 !important;

    margin: 0 !important;
    padding: 0 !important;

    text-align: center !important;

    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
}

/* Price: left */
body .booknetic_service_extra_card_price,
body .booknetic_extra_card_price {
    grid-column: 3 !important;
    grid-row: 1 !important;

    width: 220px !important;
    min-width: 220px !important;
    max-width: 220px !important;

    height: 126px !important;
    min-height: 126px !important;
    max-height: 126px !important;

    margin: 0 !important;
    padding: 0 14px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    border-right: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-left: 0 !important;

    color: #fff !important;
    font-size: 16px !important;
    font-weight: 950 !important;
    line-height: 1.5 !important;
    text-align: center !important;
    white-space: nowrap !important;

    overflow: hidden !important;
    text-overflow: ellipsis !important;

    writing-mode: horizontal-tb !important;
    text-orientation: mixed !important;
}

body .booknetic_service_extra_card_price *,
body .booknetic_extra_card_price * {
    color: inherit !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    line-height: inherit !important;
    white-space: nowrap !important;
    text-align: center !important;
}

/* Hide controls so the last visible column is always price */
body .booknetic_service_extra_card_actions,
body .booknetic_extra_card_actions,
body .booknetic_service_extra_card .booknetic_actions,
body .booknetic_extra_card .booknetic_actions {
    display: none !important;
}

/* =========================================================
   Generic cards: location only / other cards
   Extras is handled separately above.
   ========================================================= */

body .booknetic_card_container,
body .booknetic_location_container {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 22px !important;
    padding: 2px 0 8px 0 !important;
}

body .booknetic_card,
body .booknetic_location_card {
    min-height: 250px !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;

    overflow: hidden !important;
    border-radius: 20px !important;
    border: 1px solid var(--pcmod-border) !important;

    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.035), rgba(255, 255, 255, 0.012)),
        rgba(13, 13, 13, 0.78) !important;

    color: #fff !important;
    box-shadow: 0 18px 44px rgba(0, 0, 0, 0.30) !important;
    transition: all 0.22s ease !important;
}

body .booknetic_card:hover,
body .booknetic_location_card:hover,
body .booknetic_card.booknetic_selected_card,
body .booknetic_location_card.booknetic_selected_card {
    transform: translateY(-4px) !important;
    border-color: var(--pcmod-red-border) !important;
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.42), 0 0 0 1px rgba(229, 56, 63, 0.14) !important;
}

body .booknetic_card_image,
body .booknetic_location_card_image {
    width: 100% !important;
    min-width: 100% !important;
    height: 150px !important;
    margin: 0 !important;

    border-radius: 0 !important;
    background: transparent !important;
    overflow: hidden !important;
}

body .booknetic_card_image img,
body .booknetic_location_card_image img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    padding: 8px !important;
    background: transparent !important;
    border-radius: 0 !important;
}

body .booknetic_card_title,
body .booknetic_location_card_title {
    padding: 18px 20px !important;
    color: #fff !important;
    text-align: right !important;
}

body .booknetic_card_title_first,
body .booknetic_card_title_second,
body .booknetic_location_card_title {
    color: #fff !important;
    font-size: 17px !important;
    font-weight: 950 !important;
    line-height: 1.6 !important;
}

body .booknetic_card_description,
body .booknetic_location_card_description {
    color: rgba(255, 255, 255, 0.72) !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    line-height: 2 !important;
}

body .booknetic_location_category {
    grid-column: 1 / -1 !important;

    margin: 0 0 2px 0 !important;
    padding: 15px 18px !important;

    border-radius: 14px !important;
    border: 1px solid var(--pcmod-border-soft) !important;
    background: rgba(255, 255, 255, 0.045) !important;

    color: #fff !important;
    font-size: 15px !important;
    font-weight: 900 !important;
    text-align: right !important;
}

/* Hide staff / recurring content */
body .booknetic_staff_container,
body .booknetic_staff_area,
body .booknetic_staff_card,
body [data-step-id="staff"],
body [data-step-id="employee"],
body .booknetic-step-id-staff,
body .booknetic_recurring_appointments,
body .booknetic_recurring_info,
body .booknetic_recurring_container,
body .booknetic_repeat_container,
body .booknetic_repeat_details,
body .booknetic_recurring_dates,
body [data-step-id="recurring_info"],
body [data-step-id="recurring_details"],
body [data-step-id="recurring"],
body .booknetic-step-id-recurring,
body .booknetic_confirm_recurring,
body .booknetic_recurring_summary,
body .booknetic_recurring_details_box {
    display: none !important;
}

/* =========================================================
   Date and time
   ========================================================= */

body .booknetic_date_time_area,
body .booknetic_date_time_container,
body .booknetic_date_time {
    height: 100% !important;
    min-height: 0 !important;

    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 20px !important;

    background: transparent !important;
}

body .booknetic_calendar_div,
body .booknetic_time_div,
body .booknetic_times_div {
    height: 100% !important;
    min-height: 420px !important;

    border-radius: 20px !important;
    border: 1px solid var(--pcmod-border) !important;

    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.018)),
        rgba(13, 13, 13, 0.72) !important;

    color: #fff !important;
    padding: 24px !important;
    overflow: hidden !important;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,0.015) !important;
}

body .booknetic_calendar_head {
    height: 54px !important;
    margin-bottom: 12px !important;

    color: #fff !important;
    background: transparent !important;

    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
}

body .booknetic_month_name,
body .booknetic_times_head {
    color: #fff !important;
    font-size: 24px !important;
    font-weight: 950 !important;
    background: transparent !important;
}

body .booknetic_prev_month,
body .booknetic_next_month {
    width: 38px !important;
    height: 38px !important;

    border-radius: 11px !important;
    border: 1px solid var(--pcmod-border-soft) !important;

    background: rgba(255, 255, 255, 0.075) !important;
    color: #fff !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

body #booknetic_calendar_area,
body #booknetic_calendar_area table,
body #booknetic_calendar_area tbody,
body #booknetic_calendar_area tr,
body #booknetic_calendar_area td,
body #booknetic_calendar_area th {
    color: #fff !important;
    background: transparent !important;
    border-color: transparent !important;
}

body #booknetic_calendar_area th,
body #booknetic_calendar_area .week_names,
body #booknetic_calendar_area .week_name {
    color: rgba(255,255,255,0.72) !important;
    font-weight: 800 !important;
}

body #booknetic_calendar_area .days,
body #booknetic_calendar_area td > div,
body .booknetic_times_list > div,
body .booknetic_time_element {
    min-width: 42px !important;
    min-height: 42px !important;

    border-radius: 11px !important;
    border: 1px solid rgba(255,255,255,0.04) !important;

    background: rgba(255, 255, 255, 0.105) !important;
    color: #fff !important;

    font-weight: 900 !important;

    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    box-shadow: none !important;
    transition: all 0.2s ease !important;
}

body #booknetic_calendar_area .days:hover,
body #booknetic_calendar_area td > div:hover,
body .booknetic_times_list > div:hover,
body .booknetic_time_element:hover {
    border-color: rgba(229, 56, 63, 0.45) !important;
    background: rgba(229, 56, 63, 0.16) !important;
}

body #booknetic_calendar_area .booknetic_calendar_selected_day,
body #booknetic_calendar_area .selected_day,
body .booknetic_times_list > div.booknetic_selected_time,
body .booknetic_time_element.booknetic_selected_time {
    border-color: rgba(255, 255, 255, 0.18) !important;
    background: var(--pcmod-red) !important;
    color: #fff !important;
}

body .booknetic_times_title {
    color: rgba(255, 255, 255, 0.70) !important;
    font-size: 15px !important;
    font-weight: 800 !important;
    text-align: right !important;
    background: transparent !important;
}

body .booknetic_times_list {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 10px !important;
}

body .booknetic_times_list > div,
body .booknetic_time_element {
    width: 100% !important;
    height: 54px !important;
}

/* =========================================================
   Information forms
   ========================================================= */

body .form-row,
body .booknetic_customer_information,
body .booknetic_information_form {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 18px !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
}

body .form-group {
    margin-bottom: 18px !important;
}

body .form-row > .form-group,
body .form-row > [class*="col-"] {
    padding-right: 0 !important;
    padding-left: 0 !important;
}

body .form-row > .col-md-6,
body .form-row > .form-group.col-md-6 {
    flex: 1 1 calc(50% - 9px) !important;
    max-width: calc(50% - 9px) !important;
}

body .form-row > .col-md-12,
body .form-row > .form-group.col-md-12 {
    flex: 1 1 100% !important;
    max-width: 100% !important;
}

body .bkntc_input_phone-container,
body .iti {
    width: 100% !important;
}

body .iti__country-list {
    background: #111 !important;
    border: 1px solid var(--pcmod-border) !important;
    color: #fff !important;
}

/* =========================================================
   Cart / Confirm
   ========================================================= */

body .booknetic-cart-holder,
body .booknetic-cart,
body .booknetic_confirm_container,
body .booknetic_confirm_step_body,
body .booknetic_confirm_details {
    color: #fff !important;
}

body .booknetic-cart {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 20px !important;
}

body .booknetic-cart-col {
    width: 100% !important;
}

body .booknetic-cart-item,
body .booknetic_portlet,
body .booknetic_confirm_date_time,
body .booknetic_confirm_sum_body,
body .booknetic_confirm_deposit_body,
body .booknetic_confirm_details > div,
body .booknetic_payment_method {
    border-radius: 20px !important;
    border: 1px solid var(--pcmod-border) !important;

    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.012)),
        rgba(13, 13, 13, 0.74) !important;

    color: #fff !important;
    box-shadow: none !important;
    overflow: hidden !important;
}

body .booknetic-cart-item.active,
body .booknetic_payment_method.booknetic_payment_method_selected {
    border-color: var(--pcmod-red-border) !important;
    background: rgba(229, 56, 63, 0.14) !important;
}

body .booknetic-cart-item-header {
    background: rgba(255, 255, 255, 0.045) !important;
    border-bottom: 1px solid var(--pcmod-border-soft) !important;
    color: #fff !important;
}

body .booknetic-cart-item-body,
body .booknetic_portlet_content,
body .booknetic_prices_box,
body .booknetic_payment_methods_footer,
body .booknetic_panel_footer {
    color: #fff !important;
    background: transparent !important;
}

body .booknetic-cart-item-body-row {
    border-bottom: 1px solid rgba(255, 255, 255, 0.07) !important;
}

body .booknetic-cart-item-body-cell {
    color: rgba(255, 255, 255, 0.82) !important;
}

body .booknetic-cart-item-body-cell.amount,
body .booknetic_sum_price,
body .booknetic_confirm_sum_price,
body .booknetic_deposit_amount_txt {
    color: #fff !important;
    font-weight: 950 !important;
}

body .booknetic_text_primary {
    color: #ff565d !important;
}

/* =========================================================
   Empty / finished / fallback
   ========================================================= */

body .booknetic_empty_box {
    min-height: 260px !important;
    border-radius: 22px !important;
    border: 1px solid var(--pcmod-border) !important;

    background:
        radial-gradient(circle at 20% 20%, rgba(229, 56, 63, 0.10), transparent 34%),
        rgba(13, 13, 13, 0.72) !important;

    color: #fff !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;

    padding: 34px !important;
}

body .booknetic_empty_box span {
    color: rgba(255, 255, 255, 0.78) !important;
    font-size: 15px !important;
    font-weight: 800 !important;
    line-height: 2 !important;
}

body .booknetic_appointment_finished {
    background:
        radial-gradient(circle at 50% 0%, rgba(229, 56, 63, 0.22), transparent 30%),
        rgba(10, 10, 10, 0.94) !important;

    color: #fff !important;
}

body .booknetic_appointment_container_body table,
body .booknetic_appointment_container_body tbody,
body .booknetic_appointment_container_body tr,
body .booknetic_appointment_container_body td,
body .booknetic_appointment_container_body th {
    color: #fff !important;
    background: transparent !important;
}

body .booknetic_appointment_container_body a {
    color: #ff565d !important;
}

/* =========================================================
   Responsive
   ========================================================= */

@media (max-width: 1200px) {
    :root {
        --pcmod-booking-h: 760px;
        --pcmod-sidebar-w: 270px;
    }

    body .booknetic_appointment {
        width: calc(100vw - 32px) !important;
    }

    body .booknetic_service_card {
        grid-template-columns: 200px minmax(0, 1fr) 150px !important;
    }

    body .booknetic_service_card_image {
        width: 200px !important;
        min-width: 200px !important;
        max-width: 200px !important;
    }

    body .booknetic_service_card_price {
        width: 150px !important;
        min-width: 150px !important;
        max-width: 150px !important;
    }

    body .booknetic_service_extra_card,
    body .booknetic_extra_card {
        grid-template-columns: 200px minmax(0, 1fr) 200px !important;
    }

    body .booknetic_service_extra_card_image,
    body .booknetic_extra_card_image,
    body .booknetic_service_extra_card_price,
    body .booknetic_extra_card_price {
        width: 200px !important;
        min-width: 200px !important;
        max-width: 200px !important;
    }

    body .booknetic_card_container,
    body .booknetic_location_container {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 900px) {
    :root {
        --pcmod-booking-h: auto;
        --pcmod-sidebar-w: 100%;
    }

    body .booknetic_appointment {
        width: calc(100vw - 22px) !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        margin: 20px auto !important;

        flex-direction: column !important;
        overflow: visible !important;
    }

    body .booknetic_appointment_steps {
        width: 100% !important;
        min-width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;

        border-left: 0 !important;
        border-bottom: 1px solid var(--pcmod-border-soft) !important;
    }

    body .booknetic_appointment_steps_body {
        display: flex !important;
        gap: 10px !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        padding-bottom: 8px !important;
    }

    body .booknetic_appointment_step_element {
        min-width: 168px !important;
        margin: 0 !important;
    }

    body .booknetic_appointment_step_element .booknetic_badge {
        margin-right: auto !important;
    }

    body .booknetic_appointment_steps_footer {
        display: none !important;
    }

    body .booknetic_appointment_container {
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        overflow: visible !important;
        padding: 24px 18px !important;
    }

    body .booknetic_appointment_container_header {
        height: auto !important;
        min-height: 84px !important;
        max-height: none !important;
        flex-basis: auto !important;
    }

    body .booknetic_appointment_container_header_text {
        font-size: 24px !important;
    }

    body .booknetic_appointment_container_body {
        overflow: visible !important;
        padding-left: 0 !important;
    }

    body .booknetic_service_card {
        height: auto !important;
        max-height: none !important;
        grid-template-columns: 1fr !important;
        grid-template-rows: auto !important;
    }

    body .booknetic_service_card_image {
        grid-column: auto !important;
        grid-row: auto !important;
        width: 100% !important;
        min-width: 100% !important;
        max-width: 100% !important;
        height: 180px !important;
        min-height: 180px !important;
        max-height: 180px !important;
        border-left: 0 !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.10) !important;
    }

    body .booknetic_service_card_title,
    body .booknetic_service_card_description,
    body .booknetic_service_card_price {
        grid-column: auto !important;
        grid-row: auto !important;
        height: auto !important;
        max-height: none !important;
    }

    body .booknetic_service_card_price {
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        justify-content: flex-start !important;
        text-align: right !important;
        border-right: 0 !important;
        border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
        padding: 16px 24px !important;
    }

    body .booknetic_service_extra_card,
    body .booknetic_extra_card {
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;

        display: grid !important;
        grid-template-columns: 1fr !important;
        grid-template-rows: auto auto auto !important;
    }

    body .booknetic_service_extra_card_image,
    body .booknetic_extra_card_image {
        grid-column: 1 !important;
        grid-row: 1 !important;

        width: 100% !important;
        min-width: 100% !important;
        max-width: 100% !important;

        height: 150px !important;
        min-height: 150px !important;
        max-height: 150px !important;

        border-left: 0 !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.10) !important;
    }

    body .booknetic_service_extra_card_title,
    body .booknetic_extra_card_title,
    body .booknetic_service_extra_card .booknetic_card_title,
    body .booknetic_extra_card .booknetic_card_title {
        grid-column: 1 !important;
        grid-row: 2 !important;

        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        padding: 16px !important;
    }

    body .booknetic_service_extra_card_price,
    body .booknetic_extra_card_price {
        grid-column: 1 !important;
        grid-row: 3 !important;

        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;

        height: 54px !important;
        min-height: 54px !important;
        max-height: 54px !important;

        justify-content: center !important;
        text-align: center !important;

        border-right: 0 !important;
        border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
    }

    body .booknetic_card_container,
    body .booknetic_location_container,
    body .booknetic-cart,
    body .booknetic_date_time_area,
    body .booknetic_date_time_container,
    body .booknetic_date_time {
        grid-template-columns: 1fr !important;
    }

    body .form-row > .col-md-6,
    body .form-row > .form-group.col-md-6 {
        flex: 1 1 100% !important;
        max-width: 100% !important;
    }

    body .booknetic_times_list {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

/* =========================================================
   PCMOD EXTRAS 25-50-25 FINAL
   25% image right / 50% title center / 25% price left
   ========================================================= */

body .booknetic_appointment .booknetic_service_extra_container,
body .booknetic_appointment .booknetic_extras_container {
    width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 18px !important;
    padding: 6px 0 14px 0 !important;
}

/* خود هر ردیف */
body .booknetic_appointment .booknetic_service_extra_card,
body .booknetic_appointment .booknetic_extra_card {
    width: 100% !important;
    height: 126px !important;
    min-height: 126px !important;
    max-height: 126px !important;

    margin: 0 !important;
    padding: 0 !important;

    direction: rtl !important;

    display: grid !important;
    grid-template-columns: 25% 50% 25% !important;
    grid-template-rows: 126px !important;

    align-items: stretch !important;
    gap: 0 !important;

    overflow: hidden !important;

    border-radius: 18px !important;
    border: 1px solid var(--pcmod-border) !important;

    background:
        linear-gradient(180deg, rgba(255,255,255,0.025), rgba(255,255,255,0.01)),
        rgba(13,13,13,0.78) !important;

    color: #fff !important;
    box-shadow: none !important;
    transform: none !important;
}

/* اگر داخل کارت header/wrapper دارد، از چیدمان حذف شود تا بچه‌ها مستقیم وارد grid شوند */
body .booknetic_appointment .booknetic_service_extra_card_header,
body .booknetic_appointment .booknetic_extra_card_header,
body .booknetic_appointment .booknetic_service_extra_card_content,
body .booknetic_appointment .booknetic_extra_card_content {
    display: contents !important;
}

/* =========================
   ستون ۱: عکس سمت راست - 25%
   ========================= */

body .booknetic_appointment .booknetic_service_extra_card_image,
body .booknetic_appointment .booknetic_extra_card_image {
    grid-column: 1 !important;
    grid-row: 1 !important;

    width: 100% !important;
    height: 126px !important;
    min-height: 126px !important;
    max-height: 126px !important;

    margin: 0 !important;
    padding: 0 !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    background: transparent !important;
    border-left: 1px solid rgba(255,255,255,0.10) !important;

    overflow: hidden !important;
}

body .booknetic_appointment .booknetic_service_extra_card_image img,
body .booknetic_appointment .booknetic_extra_card_image img {
    width: 100% !important;
    height: 100% !important;

    object-fit: contain !important;
    object-position: center center !important;

    padding: 8px !important;
    margin: 0 !important;

    background: transparent !important;
    border-radius: 0 !important;
}

/* =========================
   ستون ۲: عنوان وسط - 50%
   ========================= */

body .booknetic_appointment .booknetic_service_extra_card_title,
body .booknetic_appointment .booknetic_extra_card_title,
body .booknetic_appointment .booknetic_service_extra_card .booknetic_card_title,
body .booknetic_appointment .booknetic_extra_card .booknetic_card_title {
    grid-column: 2 !important;
    grid-row: 1 !important;

    width: 100% !important;
    height: 126px !important;
    min-height: 126px !important;
    max-height: 126px !important;

    margin: 0 !important;
    padding: 12px 22px !important;

    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;

    text-align: center !important;
    direction: rtl !important;

    overflow: hidden !important;

    color: #fff !important;

    writing-mode: horizontal-tb !important;
    text-orientation: mixed !important;
}

body .booknetic_appointment .booknetic_service_extra_card_title *,
body .booknetic_appointment .booknetic_extra_card_title *,
body .booknetic_appointment .booknetic_service_extra_card .booknetic_card_title *,
body .booknetic_appointment .booknetic_extra_card .booknetic_card_title * {
    color: #fff !important;

    font-size: 15px !important;
    font-weight: 900 !important;
    line-height: 1.55 !important;

    text-align: center !important;

    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: anywhere !important;

    writing-mode: horizontal-tb !important;
    text-orientation: mixed !important;
}

/* توضیح زیر عنوان اگر وجود داشت */
body .booknetic_appointment .booknetic_service_extra_card_description,
body .booknetic_appointment .booknetic_extra_card_description,
body .booknetic_appointment .booknetic_service_extra_card .booknetic_card_description,
body .booknetic_appointment .booknetic_extra_card .booknetic_card_description {
    margin: 0 !important;
    padding: 0 !important;

    color: rgba(255,255,255,0.72) !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 1.65 !important;

    text-align: center !important;

    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;

    overflow: hidden !important;
}

/* =========================
   ستون ۳: قیمت سمت چپ - 25%
   ========================= */

body .booknetic_appointment .booknetic_service_extra_card_price,
body .booknetic_appointment .booknetic_extra_card_price {
    grid-column: 3 !important;
    grid-row: 1 !important;

    width: 100% !important;
    height: 126px !important;
    min-height: 126px !important;
    max-height: 126px !important;

    margin: 0 !important;
    padding: 0 14px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    border-right: 1px solid rgba(255,255,255,0.08) !important;

    color: #fff !important;
    font-size: 16px !important;
    font-weight: 950 !important;
    line-height: 1.5 !important;

    text-align: center !important;
    white-space: nowrap !important;

    overflow: hidden !important;
    text-overflow: ellipsis !important;

    writing-mode: horizontal-tb !important;
    text-orientation: mixed !important;
}

body .booknetic_appointment .booknetic_service_extra_card_price *,
body .booknetic_appointment .booknetic_extra_card_price * {
    color: inherit !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    line-height: inherit !important;

    text-align: center !important;
    white-space: nowrap !important;

    writing-mode: horizontal-tb !important;
    text-orientation: mixed !important;
}

/* اکشن/تعداد مخفی بماند */
body .booknetic_appointment .booknetic_service_extra_card_actions,
body .booknetic_appointment .booknetic_extra_card_actions,
body .booknetic_appointment .booknetic_service_extra_card .booknetic_actions,
body .booknetic_appointment .booknetic_extra_card .booknetic_actions {
    display: none !important;
}

/* موبایل */
@media (max-width: 900px) {
    body .booknetic_appointment .booknetic_service_extra_card,
    body .booknetic_appointment .booknetic_extra_card {
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;

        grid-template-columns: 1fr !important;
        grid-template-rows: auto auto auto !important;
    }

    body .booknetic_appointment .booknetic_service_extra_card_image,
    body .booknetic_appointment .booknetic_extra_card_image {
        grid-column: 1 !important;
        grid-row: 1 !important;

        height: 150px !important;
        min-height: 150px !important;
        max-height: 150px !important;

        border-left: 0 !important;
        border-bottom: 1px solid rgba(255,255,255,0.10) !important;
    }

    body .booknetic_appointment .booknetic_service_extra_card_title,
    body .booknetic_appointment .booknetic_extra_card_title,
    body .booknetic_appointment .booknetic_service_extra_card .booknetic_card_title,
    body .booknetic_appointment .booknetic_extra_card .booknetic_card_title {
        grid-column: 1 !important;
        grid-row: 2 !important;

        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;

        padding: 16px !important;
    }

    body .booknetic_appointment .booknetic_service_extra_card_price,
    body .booknetic_appointment .booknetic_extra_card_price {
        grid-column: 1 !important;
        grid-row: 3 !important;

        height: 54px !important;
        min-height: 54px !important;
        max-height: 54px !important;

        border-right: 0 !important;
        border-top: 1px solid rgba(255,255,255,0.08) !important;
    }
}

/* =========================================================
   PCMOD DATE & TIME GLASS FIX
   Calendar + Time slots glass UI
   Put this at the VERY END of CSS file
   ========================================================= */

/* کانتینر کلی تاریخ و زمان */
body .booknetic_appointment .booknetic_date_time_area,
body .booknetic_appointment .booknetic_date_time_container,
body .booknetic_appointment .booknetic_date_time {
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;

    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    gap: 22px !important;

    background: transparent !important;
    color: #fff !important;
}

/* دو باکس اصلی: تقویم و زمان */
body .booknetic_appointment .booknetic_calendar_div,
body .booknetic_appointment .booknetic_time_div,
body .booknetic_appointment .booknetic_times_div {
    width: 100% !important;
    height: 100% !important;
    min-height: 430px !important;

    padding: 24px !important;

    border-radius: 22px !important;
    border: 1px solid rgba(255,255,255,0.18) !important;

    background:
        linear-gradient(180deg, rgba(255,255,255,0.060), rgba(255,255,255,0.018)),
        rgba(13,13,13,0.72) !important;

    color: #fff !important;

    box-shadow:
        inset 0 0 0 1px rgba(255,255,255,0.018),
        0 18px 44px rgba(0,0,0,0.22) !important;

    overflow: hidden !important;
    backdrop-filter: blur(18px) !important;
    -webkit-backdrop-filter: blur(18px) !important;
}

/* هدر تقویم */
body .booknetic_appointment .booknetic_calendar_head {
    height: 58px !important;
    min-height: 58px !important;

    margin: 0 0 16px 0 !important;
    padding: 0 !important;

    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;

    background: transparent !important;
    color: #fff !important;
}

/* اسم ماه */
body .booknetic_appointment .booknetic_month_name,
body .booknetic_appointment .booknetic_times_head {
    color: #fff !important;
    font-size: 24px !important;
    font-weight: 950 !important;
    line-height: 1.4 !important;

    background: transparent !important;
    text-align: center !important;
}

/* دکمه‌های قبلی/بعدی ماه */
body .booknetic_appointment .booknetic_prev_month,
body .booknetic_appointment .booknetic_next_month {
    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;
    min-height: 40px !important;

    border-radius: 12px !important;
    border: 1px solid rgba(255,255,255,0.12) !important;

    background: rgba(255,255,255,0.075) !important;
    color: #fff !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    box-shadow: none !important;
    transition: all 0.2s ease !important;
}

body .booknetic_appointment .booknetic_prev_month:hover,
body .booknetic_appointment .booknetic_next_month:hover {
    background: rgba(229,56,63,0.16) !important;
    border-color: rgba(229,56,63,0.45) !important;
}

/* جدول تقویم کاملاً شیشه‌ای */
body .booknetic_appointment #booknetic_calendar_area,
body .booknetic_appointment #booknetic_calendar_area table,
body .booknetic_appointment #booknetic_calendar_area thead,
body .booknetic_appointment #booknetic_calendar_area tbody,
body .booknetic_appointment #booknetic_calendar_area tr,
body .booknetic_appointment #booknetic_calendar_area th,
body .booknetic_appointment #booknetic_calendar_area td {
    background: transparent !important;
    border: 0 !important;
    color: #fff !important;
    box-shadow: none !important;
}

/* جدول عرض کامل و مرتب */
body .booknetic_appointment #booknetic_calendar_area table {
    width: 100% !important;
    border-collapse: separate !important;
    border-spacing: 8px !important;
    table-layout: fixed !important;
}

/* نام روزهای هفته */
body .booknetic_appointment #booknetic_calendar_area th,
body .booknetic_appointment #booknetic_calendar_area .week_names,
body .booknetic_appointment #booknetic_calendar_area .week_name {
    height: 34px !important;

    color: rgba(255,255,255,0.66) !important;
    font-size: 12px !important;
    font-weight: 900 !important;
    text-align: center !important;

    background: transparent !important;
}

/* خانه‌های تاریخ */
body .booknetic_appointment #booknetic_calendar_area .days,
body .booknetic_appointment #booknetic_calendar_area td > div {
    width: 100% !important;
    height: 44px !important;
    min-height: 44px !important;

    margin: 0 !important;

    border-radius: 13px !important;
    border: 1px solid rgba(255,255,255,0.055) !important;

    background: rgba(255,255,255,0.090) !important;
    color: #fff !important;

    font-size: 14px !important;
    font-weight: 900 !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    box-shadow: none !important;
    transition: all 0.2s ease !important;
}

/* روزهای غیر فعال/خالی */
body .booknetic_appointment #booknetic_calendar_area .disabled_day,
body .booknetic_appointment #booknetic_calendar_area .booknetic_calendar_empty_day,
body .booknetic_appointment #booknetic_calendar_area .booknetic_calendar_day_disabled {
    opacity: 0.28 !important;
    background: rgba(255,255,255,0.035) !important;
    color: rgba(255,255,255,0.38) !important;
}

/* هاور روز */
body .booknetic_appointment #booknetic_calendar_area .days:hover,
body .booknetic_appointment #booknetic_calendar_area td > div:hover {
    background: rgba(229,56,63,0.18) !important;
    border-color: rgba(229,56,63,0.50) !important;
    color: #fff !important;
}

/* روز انتخاب‌شده */
body .booknetic_appointment #booknetic_calendar_area .booknetic_calendar_selected_day,
body .booknetic_appointment #booknetic_calendar_area .selected_day,
body .booknetic_appointment #booknetic_calendar_area td > div.booknetic_calendar_selected_day {
    background: linear-gradient(135deg, #ff464d, #c8242b) !important;
    border-color: rgba(255,255,255,0.18) !important;
    color: #fff !important;

    box-shadow:
        0 10px 22px rgba(229,56,63,0.22),
        inset 0 0 0 1px rgba(255,255,255,0.10) !important;
}

/* بخش زمان */
body .booknetic_appointment .booknetic_times_head {
    height: 58px !important;
    min-height: 58px !important;

    margin: 0 0 8px 0 !important;

    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;

    text-align: right !important;
}

/* متن راهنمای زمان */
body .booknetic_appointment .booknetic_times_title {
    margin: 0 0 16px 0 !important;

    color: rgba(255,255,255,0.68) !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    line-height: 1.8 !important;

    background: transparent !important;
    text-align: right !important;
}

/* لیست ساعت‌ها */
body .booknetic_appointment .booknetic_times_list {
    width: 100% !important;

    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 12px !important;

    padding: 0 !important;
    margin: 0 !important;

    background: transparent !important;
}

/* باکس هر ساعت */
body .booknetic_appointment .booknetic_times_list > div,
body .booknetic_appointment .booknetic_time_element {
    width: 100% !important;
    height: 54px !important;
    min-height: 54px !important;

    margin: 0 !important;
    padding: 0 10px !important;

    border-radius: 14px !important;
    border: 1px solid rgba(255,255,255,0.070) !important;

    background: rgba(255,255,255,0.090) !important;
    color: #fff !important;

    font-size: 14px !important;
    font-weight: 950 !important;
    line-height: 1 !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    box-shadow: none !important;
    cursor: pointer !important;

    transition: all 0.2s ease !important;
}

/* هاور ساعت */
body .booknetic_appointment .booknetic_times_list > div:hover,
body .booknetic_appointment .booknetic_time_element:hover {
    background: rgba(229,56,63,0.18) !important;
    border-color: rgba(229,56,63,0.50) !important;
    color: #fff !important;
}

/* ساعت انتخاب شده */
body .booknetic_appointment .booknetic_times_list > div.booknetic_selected_time,
body .booknetic_appointment .booknetic_time_element.booknetic_selected_time {
    background: linear-gradient(135deg, #ff464d, #c8242b) !important;
    border-color: rgba(255,255,255,0.18) !important;
    color: #fff !important;

    box-shadow:
        0 10px 22px rgba(229,56,63,0.22),
        inset 0 0 0 1px rgba(255,255,255,0.10) !important;
}

/* اگر پیام خالی بودن ساعت‌ها وجود داشت */
body .booknetic_appointment .booknetic_times_list:empty::before,
body .booknetic_appointment .booknetic_time_div .booknetic_empty_box {
    min-height: 220px !important;

    border-radius: 18px !important;
    border: 1px solid rgba(255,255,255,0.12) !important;

    background: rgba(255,255,255,0.050) !important;
    color: rgba(255,255,255,0.72) !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    text-align: center !important;
}

/* موبایل */
@media (max-width: 900px) {
    body .booknetic_appointment .booknetic_date_time_area,
    body .booknetic_appointment .booknetic_date_time_container,
    body .booknetic_appointment .booknetic_date_time {
        grid-template-columns: 1fr !important;
        gap: 18px !important;
    }

    body .booknetic_appointment .booknetic_calendar_div,
    body .booknetic_appointment .booknetic_time_div,
    body .booknetic_appointment .booknetic_times_div {
        min-height: auto !important;
        padding: 18px !important;
    }

    body .booknetic_appointment .booknetic_times_list {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

public_html/wp-content/plugins/pcmod-booknetic-skin/assets/css/pcmod-booknetic-skin.css



/* =========================================================
   PCMOD FINAL POLISH
   Fix white time box + unify Date/Time + Info + Footer buttons
   Put this at the VERY END of CSS file
   ========================================================= */


/* =========================================================
   1) DATE & TIME - remove white box / popup / dropdown
   ========================================================= */

/* باکس‌های اصلی */
body .booknetic_appointment .booknetic_calendar_div,
body .booknetic_appointment .booknetic_time_div,
body .booknetic_appointment .booknetic_times_div {
    background:
        linear-gradient(180deg, rgba(255,255,255,0.055), rgba(255,255,255,0.018)),
        rgba(13,13,13,0.72) !important;
    border: 1px solid rgba(255,255,255,0.18) !important;
    color: #fff !important;
    border-radius: 22px !important;
}

/* هر رپر داخلی بخش زمان */
body .booknetic_appointment .booknetic_time_div > div,
body .booknetic_appointment .booknetic_times_div > div,
body .booknetic_appointment .booknetic_time_div > section,
body .booknetic_appointment .booknetic_times_div > section,
body .booknetic_appointment .booknetic_time_div > ul,
body .booknetic_appointment .booknetic_times_div > ul,
body .booknetic_appointment .booknetic_time_div > .form-group,
body .booknetic_appointment .booknetic_times_div > .form-group {
    background: transparent !important;
    color: #fff !important;
}

/* خود لیست‌های زمان */
body .booknetic_appointment .booknetic_times_list,
body .booknetic_appointment .booknetic_times_list * {
    background: transparent !important;
    color: #fff !important;
}

/* اگر Booknetic یا پلاگین جانبی dropdown/list ساخته باشد */
body .booknetic_appointment .booknetic_time_div .dropdown-menu,
body .booknetic_appointment .booknetic_times_div .dropdown-menu,
body .booknetic_appointment .booknetic_time_div .nice-select .list,
body .booknetic_appointment .booknetic_times_div .nice-select .list,
body .booknetic_appointment .booknetic_time_div .select2-dropdown,
body .booknetic_appointment .booknetic_times_div .select2-dropdown,
body .booknetic_appointment .booknetic_time_div .ui-menu,
body .booknetic_appointment .booknetic_times_div .ui-menu,
body .booknetic_appointment .booknetic_time_div .ui-timepicker-wrapper,
body .booknetic_appointment .booknetic_times_div .ui-timepicker-wrapper,
body .booknetic_appointment .booknetic_time_div .bootstrap-select .dropdown-menu,
body .booknetic_appointment .booknetic_times_div .bootstrap-select .dropdown-menu,
body .booknetic_appointment .booknetic_time_div .simplebar-content-wrapper,
body .booknetic_appointment .booknetic_times_div .simplebar-content-wrapper,
body .booknetic_appointment .booknetic_time_div .simplebar-content,
body .booknetic_appointment .booknetic_times_div .simplebar-content,
body .booknetic_appointment .booknetic_time_div [role="listbox"],
body .booknetic_appointment .booknetic_times_div [role="listbox"] {
    background:
        linear-gradient(180deg, rgba(255,255,255,0.055), rgba(255,255,255,0.018)),
        rgba(18,18,18,0.96) !important;
    color: #fff !important;
    border: 1px solid rgba(255,255,255,0.16) !important;
    border-radius: 16px !important;
    box-shadow: 0 18px 44px rgba(0,0,0,0.28) !important;
}

/* آیتم‌های داخل dropdown / list */
body .booknetic_appointment .booknetic_time_div .dropdown-menu *,
body .booknetic_appointment .booknetic_times_div .dropdown-menu *,
body .booknetic_appointment .booknetic_time_div .nice-select .list *,
body .booknetic_appointment .booknetic_times_div .nice-select .list *,
body .booknetic_appointment .booknetic_time_div .select2-dropdown *,
body .booknetic_appointment .booknetic_times_div .select2-dropdown *,
body .booknetic_appointment .booknetic_time_div .ui-menu *,
body .booknetic_appointment .booknetic_times_div .ui-menu *,
body .booknetic_appointment .booknetic_time_div .ui-timepicker-wrapper *,
body .booknetic_appointment .booknetic_times_div .ui-timepicker-wrapper *,
body .booknetic_appointment .booknetic_time_div [role="listbox"] *,
body .booknetic_appointment .booknetic_times_div [role="listbox"] * {
    color: #fff !important;
    background: transparent !important;
}

/* اسکرول‌بارها */
body .booknetic_appointment .booknetic_time_div *::-webkit-scrollbar,
body .booknetic_appointment .booknetic_times_div *::-webkit-scrollbar {
    width: 8px !important;
    height: 8px !important;
}

body .booknetic_appointment .booknetic_time_div *::-webkit-scrollbar-track,
body .booknetic_appointment .booknetic_times_div *::-webkit-scrollbar-track {
    background: rgba(255,255,255,0.06) !important;
    border-radius: 20px !important;
}

body .booknetic_appointment .booknetic_time_div *::-webkit-scrollbar-thumb,
body .booknetic_appointment .booknetic_times_div *::-webkit-scrollbar-thumb {
    background: linear-gradient(180deg, #ff464d, #c8242b) !important;
    border-radius: 20px !important;
}

/* اگر native select/listbox آنجاست */
body .booknetic_appointment .booknetic_time_div select,
body .booknetic_appointment .booknetic_times_div select,
body .booknetic_appointment .booknetic_time_div option,
body .booknetic_appointment .booknetic_times_div option {
    background: #141414 !important;
    color: #fff !important;
}

/* متن‌های بخش تاریخ/زمان */
body .booknetic_appointment .booknetic_calendar_div,
body .booknetic_appointment .booknetic_calendar_div *,
body .booknetic_appointment .booknetic_time_div,
body .booknetic_appointment .booknetic_time_div *,
body .booknetic_appointment .booknetic_times_div,
body .booknetic_appointment .booknetic_times_div * {
    color: #fff !important;
}

/* متن‌های فرعی */
body .booknetic_appointment .booknetic_times_title,
body .booknetic_appointment #booknetic_calendar_area th,
body .booknetic_appointment #booknetic_calendar_area .week_names,
body .booknetic_appointment #booknetic_calendar_area .week_name {
    color: rgba(255,255,255,0.66) !important;
}

/* روزهای تقویم */
body .booknetic_appointment #booknetic_calendar_area .days,
body .booknetic_appointment #booknetic_calendar_area td > div {
    background: rgba(255,255,255,0.090) !important;
    color: #fff !important;
    border: 1px solid rgba(255,255,255,0.05) !important;
    border-radius: 13px !important;
}

/* روز انتخاب شده */
body .booknetic_appointment #booknetic_calendar_area .booknetic_calendar_selected_day,
body .booknetic_appointment #booknetic_calendar_area .selected_day {
    background: linear-gradient(135deg, #ff464d, #c8242b) !important;
    color: #fff !important;
    border-color: rgba(255,255,255,0.18) !important;
}

/* ساعت‌ها */
body .booknetic_appointment .booknetic_times_list > div,
body .booknetic_appointment .booknetic_time_element {
    background: rgba(255,255,255,0.090) !important;
    color: #fff !important;
    border: 1px solid rgba(255,255,255,0.07) !important;
    border-radius: 14px !important;
}

body .booknetic_appointment .booknetic_times_list > div.booknetic_selected_time,
body .booknetic_appointment .booknetic_time_element.booknetic_selected_time {
    background: linear-gradient(135deg, #ff464d, #c8242b) !important;
    color: #fff !important;
    border-color: rgba(255,255,255,0.18) !important;
}


/* =========================================================
   2) INFORMATION STEP - fix selects / field sizes / glass style
   ========================================================= */

body .booknetic_appointment .booknetic_information_form,
body .booknetic_appointment .booknetic_customer_information,
body .booknetic_appointment .form-row,
body .booknetic_appointment .form-group {
    background: transparent !important;
    color: #fff !important;
}

body .booknetic_appointment .form-row {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 18px !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
}

body .booknetic_appointment .form-row > .form-group,
body .booknetic_appointment .form-row > [class*="col-"] {
    padding-right: 0 !important;
    padding-left: 0 !important;
}

body .booknetic_appointment .form-row > .col-md-6,
body .booknetic_appointment .form-row > .form-group.col-md-6,
body .booknetic_appointment .form-row > .col-sm-6,
body .booknetic_appointment .form-row > .form-group.col-sm-6 {
    flex: 1 1 calc(50% - 9px) !important;
    max-width: calc(50% - 9px) !important;
}

body .booknetic_appointment .form-row > .col-md-12,
body .booknetic_appointment .form-row > .form-group.col-md-12,
body .booknetic_appointment .form-row > .col-sm-12,
body .booknetic_appointment .form-row > .form-group.col-sm-12 {
    flex: 1 1 100% !important;
    max-width: 100% !important;
}

/* لیبل‌ها */
body .booknetic_appointment label {
    color: #fff !important;
    font-size: 14px !important;
    font-weight: 900 !important;
    line-height: 1.8 !important;
    margin-bottom: 9px !important;
}

/* همه فیلدها */
body .booknetic_appointment input,
body .booknetic_appointment textarea,
body .booknetic_appointment select,
body .booknetic_appointment .form-control,
body .booknetic_appointment .booknetic_input,
body .booknetic_appointment .booknetic_select {
    width: 100% !important;
    height: 54px !important;
    min-height: 54px !important;
    padding: 0 16px !important;

    border-radius: 15px !important;
    border: 1px solid rgba(255,255,255,0.18) !important;
    background: rgba(255,255,255,0.060) !important;
    color: #fff !important;

    font-size: 14px !important;
    font-weight: 800 !important;
    line-height: 1.6 !important;

    box-shadow: none !important;
    outline: none !important;
    direction: rtl !important;
}

body .booknetic_appointment textarea {
    height: auto !important;
    min-height: 118px !important;
    padding: 14px 16px !important;
}

body .booknetic_appointment input::placeholder,
body .booknetic_appointment textarea::placeholder,
body .booknetic_appointment .form-control::placeholder {
    color: rgba(255,255,255,0.42) !important;
}

body .booknetic_appointment input:focus,
body .booknetic_appointment textarea:focus,
body .booknetic_appointment select:focus,
body .booknetic_appointment .form-control:focus {
    border-color: rgba(229,56,63,0.62) !important;
    background: rgba(255,255,255,0.085) !important;
    box-shadow: 0 0 0 3px rgba(229,56,63,0.12) !important;
}

/* select2 / nice-select / custom selects */
body .booknetic_appointment .select2-container,
body .booknetic_appointment .select2-container .selection,
body .booknetic_appointment .select2-container--default .select2-selection--single,
body .booknetic_appointment .select2-container--default .select2-selection--multiple,
body .booknetic_appointment .nice-select,
body .booknetic_appointment .bootstrap-select > .dropdown-toggle {
    width: 100% !important;
    min-height: 54px !important;
    height: 54px !important;

    border-radius: 15px !important;
    border: 1px solid rgba(255,255,255,0.18) !important;
    background: rgba(255,255,255,0.060) !important;
    color: #fff !important;
    box-shadow: none !important;
}

body .booknetic_appointment .select2-container--default .select2-selection--single .select2-selection__rendered,
body .booknetic_appointment .nice-select,
body .booknetic_appointment .bootstrap-select > .dropdown-toggle {
    line-height: 52px !important;
    color: #fff !important;
    font-weight: 800 !important;
    padding-right: 16px !important;
    padding-left: 34px !important;
}

body .booknetic_appointment .select2-dropdown,
body .booknetic_appointment .nice-select .list,
body .booknetic_appointment .bootstrap-select .dropdown-menu {
    background: rgba(18,18,18,0.96) !important;
    border: 1px solid rgba(255,255,255,0.16) !important;
    border-radius: 14px !important;
    color: #fff !important;
    overflow: hidden !important;
}

body .booknetic_appointment .select2-results__option,
body .booknetic_appointment .nice-select .option,
body .booknetic_appointment .bootstrap-select .dropdown-item {
    color: #fff !important;
    background: transparent !important;
}

body .booknetic_appointment .select2-results__option--highlighted,
body .booknetic_appointment .nice-select .option:hover,
body .booknetic_appointment .nice-select .option.focus,
body .booknetic_appointment .bootstrap-select .dropdown-item:hover {
    background: rgba(229,56,63,0.18) !important;
    color: #fff !important;
}


/* =========================================================
   3) FOOTER BUTTONS - remove purple, make all glass/red
   ========================================================= */

body .booknetic_appointment .booknetic_appointment_container_footer {
    background: transparent !important;
    border-top: 1px solid rgba(255,255,255,0.105) !important;
}

/* همه دکمه‌ها */
body .booknetic_appointment .booknetic_appointment_container_footer button,
body .booknetic_appointment .booknetic_btn_primary,
body .booknetic_appointment .booknetic_btn_secondary,
body .booknetic_appointment .booknetic_next_step,
body .booknetic_appointment .booknetic_prev_step,
body .booknetic_appointment .booknetic_confirm_booking_btn {
    height: 50px !important;
    min-width: 142px !important;
    padding: 0 24px !important;

    border-radius: 14px !important;
    font-size: 14px !important;
    font-weight: 950 !important;

    color: #fff !important;
    box-shadow: none !important;
    outline: none !important;

    transition: all 0.22s ease !important;
}

/* اصلی */
body .booknetic_appointment .booknetic_btn_primary,
body .booknetic_appointment .booknetic_next_step,
body .booknetic_appointment .booknetic_confirm_booking_btn,
body .booknetic_appointment button[type="submit"],
body .booknetic_appointment .booknetic_appointment_container_footer .btn-primary,
body .booknetic_appointment .booknetic_appointment_container_footer .btn-success,
body .booknetic_appointment .booknetic_appointment_container_footer .btn-info {
    background: linear-gradient(135deg, #ff464d, #c8242b) !important;
    border: 1px solid rgba(229,56,63,0.82) !important;
    color: #fff !important;
    box-shadow: 0 14px 30px rgba(229,56,63,0.18) !important;
}

/* ثانویه */
body .booknetic_appointment .booknetic_btn_secondary,
body .booknetic_appointment .booknetic_prev_step {
    background: rgba(255,255,255,0.060) !important;
    border: 1px solid rgba(255,255,255,0.18) !important;
    color: #fff !important;
}

/* هاور */
body .booknetic_appointment .booknetic_btn_primary:hover,
body .booknetic_appointment .booknetic_next_step:hover,
body .booknetic_appointment .booknetic_confirm_booking_btn:hover,
body .booknetic_appointment button[type="submit"]:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 18px 42px rgba(229,56,63,0.28) !important;
}

body .booknetic_appointment .booknetic_btn_secondary:hover,
body .booknetic_appointment .booknetic_prev_step:hover {
    background: rgba(255,255,255,0.090) !important;
    border-color: rgba(255,255,255,0.26) !important;
}

/* disabled */
body .booknetic_appointment button:disabled,
body .booknetic_appointment .booknetic_btn_primary:disabled,
body .booknetic_appointment .booknetic_btn_secondary:disabled {
    opacity: 0.45 !important;
    cursor: not-allowed !important;
    transform: none !important;
    box-shadow: none !important;
}


/* =========================================================
   4) MOBILE
   ========================================================= */

@media (max-width: 900px) {
    body .booknetic_appointment .form-row > .col-md-6,
    body .booknetic_appointment .form-row > .form-group.col-md-6,
    body .booknetic_appointment .form-row > .col-sm-6,
    body .booknetic_appointment .form-row > .form-group.col-sm-6 {
        flex: 1 1 100% !important;
        max-width: 100% !important;
    }

    body .booknetic_appointment .booknetic_appointment_container_footer {
        flex-wrap: wrap !important;
        gap: 12px !important;
    }

    body .booknetic_appointment .booknetic_appointment_container_footer button,
    body .booknetic_appointment .booknetic_btn_primary,
    body .booknetic_appointment .booknetic_btn_secondary {
        flex: 1 1 140px !important;
    }
}

/* =========================================================
   PCMOD INFORMATION CHECKBOX/RADIO FIX
   Fix ugly checkbox fields in Information step
   Put this at the VERY END of CSS file
   ========================================================= */

/* ردیف/گروه گزینه‌های چک‌باکس و رادیو */
body .booknetic_appointment .form-group:has(input[type="checkbox"]),
body .booknetic_appointment .form-group:has(input[type="radio"]),
body .booknetic_appointment .booknetic_information_form .form-group:has(input[type="checkbox"]),
body .booknetic_appointment .booknetic_information_form .form-group:has(input[type="radio"]),
body .booknetic_appointment .booknetic_customer_information .form-group:has(input[type="checkbox"]),
body .booknetic_appointment .booknetic_customer_information .form-group:has(input[type="radio"]) {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;

    padding: 16px 18px !important;
    margin: 0 0 16px 0 !important;

    border-radius: 18px !important;
    border: 1px solid rgba(255,255,255,0.14) !important;

    background:
        linear-gradient(180deg, rgba(255,255,255,0.045), rgba(255,255,255,0.014)),
        rgba(13,13,13,0.62) !important;

    color: #fff !important;
}

/* عنوان/لیبل اصلی گروه */
body .booknetic_appointment .form-group:has(input[type="checkbox"]) > label:first-child,
body .booknetic_appointment .form-group:has(input[type="radio"]) > label:first-child {
    width: 100% !important;

    margin: 0 0 4px 0 !important;
    padding: 0 !important;

    color: #fff !important;
    font-size: 15px !important;
    font-weight: 950 !important;
    line-height: 1.8 !important;

    text-align: right !important;
}

/* لیبل هر گزینه */
body .booknetic_appointment label:has(input[type="checkbox"]),
body .booknetic_appointment label:has(input[type="radio"]),
body .booknetic_appointment .form-check,
body .booknetic_appointment .checkbox,
body .booknetic_appointment .radio {
    min-height: 44px !important;

    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 12px !important;

    width: 100% !important;

    margin: 0 !important;
    padding: 10px 12px !important;

    border-radius: 14px !important;
    border: 1px solid rgba(255,255,255,0.10) !important;

    background: rgba(255,255,255,0.045) !important;

    color: rgba(255,255,255,0.90) !important;
    font-size: 14px !important;
    font-weight: 850 !important;
    line-height: 1.7 !important;

    cursor: pointer !important;
    transition: all 0.2s ease !important;
}

/* هاور گزینه‌ها */
body .booknetic_appointment label:has(input[type="checkbox"]):hover,
body .booknetic_appointment label:has(input[type="radio"]):hover,
body .booknetic_appointment .form-check:hover,
body .booknetic_appointment .checkbox:hover,
body .booknetic_appointment .radio:hover {
    border-color: rgba(229,56,63,0.45) !important;
    background: rgba(229,56,63,0.10) !important;
}

/* خود checkbox و radio از قوانین input عمومی جدا شود */
body .booknetic_appointment input[type="checkbox"],
body .booknetic_appointment input[type="radio"] {
    appearance: none !important;
    -webkit-appearance: none !important;

    flex: 0 0 22px !important;

    width: 22px !important;
    min-width: 22px !important;
    max-width: 22px !important;

    height: 22px !important;
    min-height: 22px !important;
    max-height: 22px !important;

    margin: 0 !important;
    padding: 0 !important;

    border-radius: 7px !important;
    border: 1px solid rgba(255,255,255,0.28) !important;

    background: rgba(255,255,255,0.065) !important;

    box-shadow: none !important;
    outline: none !important;

    cursor: pointer !important;
    position: relative !important;

    transition: all 0.18s ease !important;
}

/* radio گرد باشد */
body .booknetic_appointment input[type="radio"] {
    border-radius: 50% !important;
}

/* حالت انتخاب‌شده */
body .booknetic_appointment input[type="checkbox"]:checked,
body .booknetic_appointment input[type="radio"]:checked {
    background: linear-gradient(135deg, #ff464d, #c8242b) !important;
    border-color: rgba(255,255,255,0.22) !important;
    box-shadow: 0 8px 18px rgba(229,56,63,0.22) !important;
}

/* تیک داخل checkbox */
body .booknetic_appointment input[type="checkbox"]::after {
    content: "" !important;

    position: absolute !important;
    left: 50% !important;
    top: 45% !important;

    width: 6px !important;
    height: 11px !important;

    border: solid #fff !important;
    border-width: 0 2px 2px 0 !important;

    transform: translate(-50%, -50%) rotate(45deg) scale(0) !important;
    opacity: 0 !important;

    transition: all 0.16s ease !important;
}

/* نمایش تیک */
body .booknetic_appointment input[type="checkbox"]:checked::after {
    transform: translate(-50%, -50%) rotate(45deg) scale(1) !important;
    opacity: 1 !important;
}

/* نقطه داخل radio */
body .booknetic_appointment input[type="radio"]::after {
    content: "" !important;

    position: absolute !important;
    left: 50% !important;
    top: 50% !important;

    width: 8px !important;
    height: 8px !important;

    border-radius: 50% !important;
    background: #fff !important;

    transform: translate(-50%, -50%) scale(0) !important;
    opacity: 0 !important;

    transition: all 0.16s ease !important;
}

/* نمایش نقطه radio */
body .booknetic_appointment input[type="radio"]:checked::after {
    transform: translate(-50%, -50%) scale(1) !important;
    opacity: 1 !important;
}

/* متن کنار چک‌باکس */
body .booknetic_appointment label:has(input[type="checkbox"]) span,
body .booknetic_appointment label:has(input[type="radio"]) span,
body .booknetic_appointment .form-check label,
body .booknetic_appointment .checkbox label,
body .booknetic_appointment .radio label {
    color: rgba(255,255,255,0.90) !important;
    font-size: 14px !important;
    font-weight: 850 !important;
    line-height: 1.7 !important;
}

/* اگر Booknetic گزینه‌ها را بدون label مستقیم چیده باشد */
body .booknetic_appointment .form-group input[type="checkbox"] + label,
body .booknetic_appointment .form-group input[type="radio"] + label {
    margin: 0 !important;
    color: rgba(255,255,255,0.90) !important;
    font-size: 14px !important;
    font-weight: 850 !important;
}

/* حالت فوکوس */
body .booknetic_appointment input[type="checkbox"]:focus,
body .booknetic_appointment input[type="radio"]:focus {
    border-color: rgba(229,56,63,0.62) !important;
    box-shadow: 0 0 0 3px rgba(229,56,63,0.12) !important;
}

/* موبایل */
@media (max-width: 900px) {
    body .booknetic_appointment label:has(input[type="checkbox"]),
    body .booknetic_appointment label:has(input[type="radio"]),
    body .booknetic_appointment .form-check,
    body .booknetic_appointment .checkbox,
    body .booknetic_appointment .radio {
        min-height: 42px !important;
        padding: 9px 10px !important;
    }
}

/* =========================================================
   PCMOD CART FINAL CLEAN FIX
   clean glass cart / no extra red glow / fixed icons
   ========================================================= */


/* =========================
   checkbox tick center
   ========================= */
body .booknetic_appointment input[type="checkbox"] {
    position: relative !important;
}

body .booknetic_appointment input[type="checkbox"]::after {
    content: "" !important;
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;

    width: 6px !important;
    height: 10px !important;

    border: solid #fff !important;
    border-width: 0 2px 2px 0 !important;

    transform: translate(-50%, -56%) rotate(45deg) scale(0) !important;
    transform-origin: center center !important;
    opacity: 0 !important;
    transition: all 0.16s ease !important;
}

body .booknetic_appointment input[type="checkbox"]:checked::after {
    transform: translate(-50%, -56%) rotate(45deg) scale(1) !important;
    opacity: 1 !important;
}


/* =========================
   cart wrappers
   ========================= */
body .booknetic_appointment .booknetic-cart-holder,
body .booknetic_appointment .booknetic-cart,
body .booknetic_appointment .booknetic-cart-col {
    background: transparent !important;
    box-shadow: none !important;
    color: #fff !important;
}

body .booknetic_appointment .booknetic-cart {
    display: flex !important;
    flex-direction: column !important;
    gap: 18px !important;
    padding: 0 !important;
    margin: 0 !important;
}

body .booknetic_appointment .booknetic-cart-col {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
}


/* =========================
   main cart card
   ========================= */
body .booknetic_appointment .booknetic-cart-item {
    width: 100% !important;
    margin: 0 0 18px 0 !important;
    padding: 0 !important;
    min-height: 0 !important;

    border-radius: 22px !important;
    border: 1px solid rgba(255,255,255,0.18) !important;
    overflow: hidden !important;

    background:
        linear-gradient(180deg, rgba(255,255,255,0.055), rgba(255,255,255,0.018)),
        rgba(13,13,13,0.76) !important;

    box-shadow:
        inset 0 0 0 1px rgba(255,255,255,0.018),
        0 18px 44px rgba(0,0,0,0.22) !important;

    color: #fff !important;
}

/* active item: فقط شیشه‌ای بماند، بدون رنگ قرمز زیرش */
body .booknetic_appointment .booknetic-cart-item.active {
    border-color: rgba(255,255,255,0.22) !important;
    background:
        linear-gradient(180deg, rgba(255,255,255,0.060), rgba(255,255,255,0.020)),
        rgba(13,13,13,0.80) !important;

    box-shadow:
        inset 0 0 0 1px rgba(255,255,255,0.025),
        0 18px 44px rgba(0,0,0,0.22) !important;
}

/* هر افکت اضافه / رنگ پس‌زمینه داخلی حذف شود */
body .booknetic_appointment .booknetic-cart-item::before,
body .booknetic_appointment .booknetic-cart-item::after,
body .booknetic_appointment .booknetic-cart-item *::before,
body .booknetic_appointment .booknetic-cart-item *::after {
    box-shadow: none !important;
}

/* اگر جایی بک‌گراند اینلاین خورده */
body .booknetic_appointment .booknetic-cart-item [style*="background"],
body .booknetic_appointment .booknetic-cart-item [style*="background-color"] {
    background: transparent !important;
}


/* =========================
   header
   ========================= */
body .booknetic_appointment .booknetic-cart-item-header {
    min-height: 58px !important;
    padding: 16px 20px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 14px !important;

    background: rgba(255,255,255,0.040) !important;
    border-bottom: 1px solid rgba(255,255,255,0.10) !important;

    color: #fff !important;
}

body .booknetic_appointment .booknetic-cart-item-header,
body .booknetic_appointment .booknetic-cart-item-header * {
    color: #fff !important;
    font-size: 15px !important;
    font-weight: 950 !important;
    line-height: 1.7 !important;
}


/* =========================
   body
   ========================= */
body .booknetic_appointment .booknetic-cart-item-body {
    padding: 18px 20px !important;
    background: transparent !important;
    color: #fff !important;
}

body .booknetic_appointment .booknetic-cart-item-body-row {
    min-height: 38px !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 16px !important;

    padding: 10px 0 !important;
    margin: 0 !important;

    border-bottom: 1px solid rgba(255,255,255,0.065) !important;
    background: transparent !important;
}

body .booknetic_appointment .booknetic-cart-item-body-row:last-child {
    border-bottom: 0 !important;
}

body .booknetic_appointment .booknetic-cart-item-body-cell {
    background: transparent !important;
    color: rgba(255,255,255,0.84) !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    line-height: 1.8 !important;
    text-align: right !important;
}

body .booknetic_appointment .booknetic-cart-item-body-cell.amount {
    color: #35e071 !important;
    font-size: 15px !important;
    font-weight: 950 !important;
    text-align: left !important;
    white-space: nowrap !important;
}


/* =========================
   remove weird bottom color band
   ========================= */
body .booknetic_appointment .booknetic-cart-item,
body .booknetic_appointment .booknetic-cart-item-body,
body .booknetic_appointment .booknetic-cart-item-body-row,
body .booknetic_appointment .booknetic-cart-item-body-cell {
    background-clip: padding-box !important;
}

body .booknetic_appointment .booknetic-cart-holder .card,
body .booknetic_appointment .booknetic-cart-holder .panel,
body .booknetic_appointment .booknetic-cart-holder .bg-white,
body .booknetic_appointment .booknetic-cart .card,
body .booknetic_appointment .booknetic-cart .panel,
body .booknetic_appointment .booknetic-cart .bg-white {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    color: #fff !important;
}


/* =========================
   icons
   ========================= */

/* همه آیکن‌های داخل کارت */
body .booknetic_appointment .booknetic-cart-item i,
body .booknetic_appointment .booknetic-cart-item svg {
    color: rgba(255,255,255,0.78) !important;
    fill: currentColor !important;
    stroke: currentColor !important;
}

/* سه نقطه / منوی بالای کارت */
body .booknetic_appointment .booknetic-cart-item-header .booknetic-cart-item-remove,
body .booknetic_appointment .booknetic-cart-item-header [class*="remove"],
body .booknetic_appointment .booknetic-cart-item-header [class*="more"],
body .booknetic_appointment .booknetic-cart-item-header [class*="menu"] {
    width: 34px !important;
    height: 34px !important;
    min-width: 34px !important;
    min-height: 34px !important;

    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    border-radius: 10px !important;
    border: 1px solid rgba(255,255,255,0.14) !important;
    background: rgba(255,255,255,0.055) !important;

    color: #fff !important;
    box-shadow: none !important;
}

body .booknetic_appointment .booknetic-cart-item-header .booknetic-cart-item-remove:hover,
body .booknetic_appointment .booknetic-cart-item-header [class*="remove"]:hover,
body .booknetic_appointment .booknetic-cart-item-header [class*="more"]:hover,
body .booknetic_appointment .booknetic-cart-item-header [class*="menu"]:hover {
    background: rgba(229,56,63,0.12) !important;
    border-color: rgba(229,56,63,0.38) !important;
}

/* آیکن info پایین */
body .booknetic_appointment .booknetic-cart-item-body [class*="info"],
body .booknetic_appointment .booknetic-cart-item-body .booknetic_text_primary {
    color: #35e071 !important;
}

body .booknetic_appointment .booknetic-cart-item-body [class*="info"] i,
body .booknetic_appointment .booknetic-cart-item-body [class*="info"] svg {
    color: #35e071 !important;
    fill: currentColor !important;
}

/* اگر آیکن info داخل باکس جداگانه است */
body .booknetic_appointment .booknetic-cart-item-body [class*="info-box"],
body .booknetic_appointment .booknetic-cart-item-body [class*="info_btn"],
body .booknetic_appointment .booknetic-cart-item-body [class*="info-button"] {
    width: 34px !important;
    height: 34px !important;

    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    border-radius: 10px !important;
    border: 1px solid rgba(53,224,113,0.32) !important;
    background: rgba(53,224,113,0.08) !important;
}


/* =========================
   add new booking button
   ========================= */
body .booknetic_appointment .booknetic-cart-holder button,
body .booknetic_appointment .booknetic-cart button {
    min-height: 46px !important;
    border-radius: 14px !important;
    border: 1px solid rgba(229,56,63,0.55) !important;

    background: rgba(229,56,63,0.10) !important;
    color: #fff !important;

    font-size: 14px !important;
    font-weight: 900 !important;

    box-shadow: none !important;
    outline: none !important;
}

body .booknetic_appointment .booknetic-cart-holder button:hover,
body .booknetic_appointment .booknetic-cart button:hover {
    background: linear-gradient(135deg, #ff464d, #c8242b) !important;
    border-color: rgba(229,56,63,0.82) !important;
}


/* =========================
   mobile
   ========================= */
@media (max-width: 900px) {
    body .booknetic_appointment .booknetic-cart-item-body-row {
        grid-template-columns: 1fr !important;
        gap: 4px !important;
    }

    body .booknetic_appointment .booknetic-cart-item-body-cell.amount {
        text-align: right !important;
    }
}

/* =========================================================
   PCMOD HIDE SERVICE DURATION
   Hide service duration from service selection cards only
   ========================================================= */

/* حذف نمایش مدت زمان در کارت انتخاب سرویس */
body .booknetic_appointment .booknetic_service_duration_wrapper,
body .booknetic_appointment .booknetic_service_duration_span {
    display: none !important;
}

/* اگر Booknetic مدت زمان را با کلاس‌های دیگر نمایش داد */
body .booknetic_appointment .booknetic_service_card [class*="duration"],
body .booknetic_appointment .booknetic_service_card [class*="Duration"] {
    display: none !important;
}

/* بعد از حذف مدت زمان، عنوان سرویس داخل کارت مرتب‌تر وسط‌چین عمودی بماند */
body .booknetic_appointment .booknetic_service_card_title {
    justify-content: center !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

/* =========================================================
   PCMOD EXTRAS DESCRIPTION SHOW FIX
   Show extra service description under title
   Keeps 25% image / 50% title+desc / 25% price layout
   ========================================================= */

/* ستون وسط خدمات جانبی: عنوان + توضیحات */
body .booknetic_appointment .booknetic_service_extra_card_title,
body .booknetic_appointment .booknetic_extra_card_title,
body .booknetic_appointment .booknetic_service_extra_card .booknetic_card_title,
body .booknetic_appointment .booknetic_extra_card .booknetic_card_title {
    grid-column: 2 !important;
    grid-row: 1 !important;

    height: 126px !important;
    min-height: 126px !important;
    max-height: 126px !important;

    padding: 12px 22px !important;

    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;

    text-align: center !important;
    overflow: hidden !important;
}

/* عنوان خدمات جانبی */
body .booknetic_appointment .booknetic_service_extra_card_title,
body .booknetic_appointment .booknetic_extra_card_title,
body .booknetic_appointment .booknetic_service_extra_card_title *,
body .booknetic_appointment .booknetic_extra_card_title *,
body .booknetic_appointment .booknetic_service_extra_card .booknetic_card_title *,
body .booknetic_appointment .booknetic_extra_card .booknetic_card_title * {
    color: #fff !important;
    font-size: 15px !important;
    font-weight: 900 !important;
    line-height: 1.45 !important;
    text-align: center !important;
}

/* توضیحات زیر عنوان */
body .booknetic_appointment .booknetic_service_extra_card_description,
body .booknetic_appointment .booknetic_extra_card_description,
body .booknetic_appointment .booknetic_service_extra_card .booknetic_card_description,
body .booknetic_appointment .booknetic_extra_card .booknetic_card_description {
    display: -webkit-box !important;

    margin: 0 !important;
    padding: 0 !important;

    color: rgba(255,255,255,0.68) !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 1.65 !important;

    text-align: center !important;

    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;

    overflow: hidden !important;
    text-overflow: ellipsis !important;

    max-width: 100% !important;

    writing-mode: horizontal-tb !important;
    text-orientation: mixed !important;
}

/* اگر توضیحات به‌صورت مستقیم کنار title آمده باشد، در ستون وسط بماند */
body .booknetic_appointment .booknetic_service_extra_card > .booknetic_service_extra_card_description,
body .booknetic_appointment .booknetic_extra_card > .booknetic_extra_card_description,
body .booknetic_appointment .booknetic_service_extra_card > .booknetic_card_description,
body .booknetic_appointment .booknetic_extra_card > .booknetic_card_description {
    grid-column: 2 !important;
    grid-row: 1 !important;

    align-self: end !important;
    justify-self: center !important;

    width: 100% !important;
    max-width: 100% !important;

    padding: 0 22px 16px 22px !important;
}

/* اگر توضیحات مستقیم جدا بود، عنوان کمی بالاتر برود که روی هم نیفتند */
body .booknetic_appointment .booknetic_service_extra_card:has(> .booknetic_service_extra_card_description) > .booknetic_service_extra_card_title,
body .booknetic_appointment .booknetic_extra_card:has(> .booknetic_extra_card_description) > .booknetic_extra_card_title,
body .booknetic_appointment .booknetic_service_extra_card:has(> .booknetic_card_description) > .booknetic_card_title,
body .booknetic_appointment .booknetic_extra_card:has(> .booknetic_card_description) > .booknetic_card_title {
    justify-content: center !important;
    padding-bottom: 34px !important;
}

/* موبایل */
@media (max-width: 900px) {
    body .booknetic_appointment .booknetic_service_extra_card_title,
    body .booknetic_appointment .booknetic_extra_card_title,
    body .booknetic_appointment .booknetic_service_extra_card .booknetic_card_title,
    body .booknetic_appointment .booknetic_extra_card .booknetic_card_title {
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        padding: 16px !important;
    }

    body .booknetic_appointment .booknetic_service_extra_card > .booknetic_service_extra_card_description,
    body .booknetic_appointment .booknetic_extra_card > .booknetic_extra_card_description,
    body .booknetic_appointment .booknetic_service_extra_card > .booknetic_card_description,
    body .booknetic_appointment .booknetic_extra_card > .booknetic_card_description {
        grid-column: 1 !important;
        grid-row: 2 !important;
        position: static !important;
        padding: 0 16px 16px 16px !important;
    }
}

/* =========================================================
   PCMOD CONFIRM SINGLE CLEAN SOURCE - v1.0.17 SAFE
   Only one final Confirm override. Do not add old Confirm/Zibal patches below.
   ========================================================= */

body .booknetic_appointment .booknetic_confirm_container,
body .booknetic_appointment .booknetic_confirm_step_body,
body .booknetic_appointment .booknetic_confirm_details {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    color: #fff !important;
    position: relative !important;
    overflow: visible !important;
}

body .booknetic_appointment .booknetic_confirm_step_body,
body .booknetic_appointment .booknetic_confirm_details {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 320px !important;
    gap: 24px !important;
    align-items: stretch !important;
}

body .booknetic_appointment .booknetic_confirm_step_body > *,
body .booknetic_appointment .booknetic_confirm_details > * {
    position: relative !important;
    inset: auto !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    transform: none !important;
    float: none !important;
    box-sizing: border-box !important;
    max-width: 100% !important;
}

/* Summary card */
body .booknetic_appointment .booknetic_confirm_sum_body,
body .booknetic_appointment .booknetic_confirm_sum,
body .booknetic_appointment .booknetic_confirm_details_box {
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: 430px !important;
    min-height: 430px !important;
    max-height: 430px !important;
    margin: 0 !important;
    padding: 22px 24px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
    border-radius: 22px !important;
    border: 1px solid rgba(255,255,255,0.18) !important;
    background:
        linear-gradient(180deg, rgba(255,255,255,0.055), rgba(255,255,255,0.018)),
        rgba(13,13,13,0.78) !important;
    box-shadow: 0 18px 44px rgba(0,0,0,0.22) !important;
    color: #fff !important;
    overflow: hidden !important;
}

/* Price list only; not a card */
body .booknetic_appointment .booknetic_prices_box {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    flex: 1 1 auto !important;
    min-height: 0 !important;
    height: auto !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 0 12px 0 !important;
    display: flex !important;
    flex-direction: column !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    scrollbar-width: thin !important;
    scrollbar-color: rgba(229,56,63,0.78) rgba(255,255,255,0.055) !important;
}

body .booknetic_appointment .booknetic_prices_box::-webkit-scrollbar { width: 7px !important; }
body .booknetic_appointment .booknetic_prices_box::-webkit-scrollbar-track { background: rgba(255,255,255,0.055) !important; border-radius: 20px !important; }
body .booknetic_appointment .booknetic_prices_box::-webkit-scrollbar-thumb { background: linear-gradient(180deg, #ff464d, #c8242b) !important; border-radius: 20px !important; }

body .booknetic_appointment .booknetic_confirm_sum_body *,
body .booknetic_appointment .booknetic_confirm_sum *,
body .booknetic_appointment .booknetic_confirm_details_box *,
body .booknetic_appointment .booknetic_prices_box * {
    box-sizing: border-box !important;
    max-width: 100% !important;
    background: transparent !important;
    box-shadow: none !important;
    position: relative !important;
    inset: auto !important;
    transform: none !important;
    float: none !important;
}

/* Cost rows */
body .booknetic_appointment .booknetic_prices_box > div:not(.booknetic_coupon):not(.booknetic_coupon_area):not(.booknetic_coupon_div):not(.booknetic_confirm_deposit_body):not(.booknetic_total_price):not(.booknetic_total_amount) {
    width: 100% !important;
    flex: 0 0 auto !important;
    min-height: 54px !important;
    height: auto !important;
    margin: 0 !important;
    padding: 10px 0 !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 150px !important;
    align-items: center !important;
    gap: 18px !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(255,255,255,0.075) !important;
    color: #fff !important;
    overflow: visible !important;
}

body .booknetic_appointment .booknetic_prices_box > div:not(.booknetic_confirm_deposit_body):not(.booknetic_total_price):not(.booknetic_total_amount) > *:first-child {
    grid-column: 1 !important;
    color: #fff !important;
    font-size: 14px !important;
    font-weight: 900 !important;
    line-height: 1.8 !important;
    text-align: right !important;
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: unset !important;
}

body .booknetic_appointment .booknetic_prices_box > div:not(.booknetic_confirm_deposit_body):not(.booknetic_total_price):not(.booknetic_total_amount) > *:last-child,
body .booknetic_appointment .booknetic_prices_box .booknetic_sum_price,
body .booknetic_appointment .booknetic_prices_box .booknetic_confirm_sum_price,
body .booknetic_appointment .booknetic_prices_box .amount {
    grid-column: 2 !important;
    color: #35e071 !important;
    font-size: 15px !important;
    font-weight: 950 !important;
    line-height: 1.6 !important;
    text-align: left !important;
    justify-self: end !important;
    white-space: nowrap !important;
}

/* Coupon fixed below list */
body .booknetic_appointment .booknetic_coupon,
body .booknetic_appointment .booknetic_coupon_area,
body .booknetic_appointment .booknetic_coupon_div {
    width: 100% !important;
    flex: 0 0 auto !important;
    margin: 14px 0 0 0 !important;
    padding: 0 !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 10px !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
}

body .booknetic_appointment .booknetic_coupon input,
body .booknetic_appointment .booknetic_coupon_area input,
body .booknetic_appointment .booknetic_coupon_div input,
body .booknetic_appointment input[name*="coupon"],
body .booknetic_appointment input[id*="coupon"] {
    flex: 1 1 auto !important;
    width: auto !important;
    height: 50px !important;
    min-height: 50px !important;
    padding: 0 16px !important;
    border-radius: 14px !important;
    border: 1px solid rgba(255,255,255,0.18) !important;
    background: rgba(255,255,255,0.06) !important;
    color: #fff !important;
    font-size: 14px !important;
    font-weight: 850 !important;
}

body .booknetic_appointment .booknetic_coupon button,
body .booknetic_appointment .booknetic_coupon_area button,
body .booknetic_appointment .booknetic_coupon_div button,
body .booknetic_appointment button[name*="coupon"],
body .booknetic_appointment button[id*="coupon"] {
    flex: 0 0 86px !important;
    width: 86px !important;
    height: 50px !important;
    min-height: 50px !important;
    border-radius: 14px !important;
    border: 1px solid rgba(229,56,63,0.58) !important;
    background: rgba(229,56,63,0.12) !important;
    color: #fff !important;
    font-size: 14px !important;
    font-weight: 950 !important;
}

/* Total fixed at card bottom */
body .booknetic_appointment .booknetic_confirm_deposit_body,
body .booknetic_appointment .booknetic_total_price,
body .booknetic_appointment .booknetic_total_amount {
    width: 100% !important;
    flex: 0 0 64px !important;
    min-height: 64px !important;
    height: 64px !important;
    max-height: 64px !important;
    margin: 16px 0 0 0 !important;
    padding: 16px 20px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 16px !important;
    border-radius: 16px !important;
    border: 1px solid rgba(255,255,255,0.10) !important;
    background:
        linear-gradient(180deg, rgba(255,255,255,0.055), rgba(255,255,255,0.018)),
        rgba(16,16,16,0.86) !important;
    color: #fff !important;
    box-shadow: none !important;
    overflow: visible !important;
}

body .booknetic_appointment .booknetic_confirm_deposit_body *,
body .booknetic_appointment .booknetic_total_price *,
body .booknetic_appointment .booknetic_total_amount * {
    background: transparent !important;
    box-shadow: none !important;
}

body .booknetic_appointment .booknetic_confirm_deposit_body .booknetic_sum_price,
body .booknetic_appointment .booknetic_confirm_deposit_body .booknetic_confirm_sum_price,
body .booknetic_appointment .booknetic_total_price,
body .booknetic_appointment .booknetic_total_amount {
    color: #35e071 !important;
    font-size: 18px !important;
    font-weight: 950 !important;
    white-space: nowrap !important;
}

/* Payment card */
body .booknetic_appointment .booknetic_payment_methods,
body .booknetic_appointment .booknetic_payment_methods_container,
body .booknetic_appointment .booknetic_payment_method_container {
    grid-column: 2 !important;
    grid-row: 1 !important;
    width: 320px !important;
    min-width: 320px !important;
    max-width: 320px !important;
    height: 430px !important;
    min-height: 430px !important;
    max-height: 430px !important;
    margin: 0 !important;
    padding: 22px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    border-radius: 22px !important;
    border: 1px solid rgba(255,255,255,0.18) !important;
    background:
        linear-gradient(180deg, rgba(255,255,255,0.055), rgba(255,255,255,0.018)),
        rgba(13,13,13,0.78) !important;
    box-shadow: 0 18px 44px rgba(0,0,0,0.22) !important;
    overflow: hidden !important;
}

body .booknetic_appointment .booknetic_payment_methods > *,
body .booknetic_appointment .booknetic_payment_methods_container > *,
body .booknetic_appointment .booknetic_payment_method_container > * {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

body .booknetic_appointment .booknetic_payment_method {
    width: 100% !important;
    min-height: 110px !important;
    margin: 0 !important;
    padding: 18px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    border-radius: 18px !important;
    border: 1px solid rgba(229,56,63,0.38) !important;
    background: rgba(229,56,63,0.07) !important;
    color: #fff !important;
    box-shadow: none !important;
    text-align: center !important;
}

body .booknetic_appointment .booknetic_payment_method img,
body .booknetic_appointment .booknetic_payment_method svg {
    display: block !important;
    max-width: 170px !important;
    max-height: 70px !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain !important;
    margin: 0 auto !important;
}

@media (max-width: 900px) {
    body .booknetic_appointment .booknetic_confirm_step_body,
    body .booknetic_appointment .booknetic_confirm_details {
        grid-template-columns: 1fr !important;
    }

    body .booknetic_appointment .booknetic_payment_methods,
    body .booknetic_appointment .booknetic_payment_methods_container,
    body .booknetic_appointment .booknetic_payment_method_container,
    body .booknetic_appointment .booknetic_confirm_sum_body,
    body .booknetic_appointment .booknetic_confirm_sum,
    body .booknetic_appointment .booknetic_confirm_details_box {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
    }

    body .booknetic_appointment .booknetic_prices_box {
        overflow: visible !important;
    }

    body .booknetic_appointment .booknetic_coupon,
    body .booknetic_appointment .booknetic_coupon_area,
    body .booknetic_appointment .booknetic_coupon_div {
        flex-direction: column !important;
        align-items: stretch !important;
    }

    body .booknetic_appointment .booknetic_coupon button,
    body .booknetic_appointment .booknetic_coupon_area button,
    body .booknetic_appointment .booknetic_coupon_div button {
        width: 100% !important;
        flex: 1 1 auto !important;
    }
}

/* =========================================================
   PCMOD FINAL FIX - CALENDAR BLACK NUMBERS + CONFIRM CLEAN ROWS
   Put this at the VERY END of CSS file
   ========================================================= */


/* =========================================================
   1) CALENDAR NUMBERS - FORCE BLACK READABLE NUMBERS
   ========================================================= */

/* فقط عددهای داخل خانه‌های تقویم */
body .booknetic_appointment #booknetic_calendar_area td > div,
body .booknetic_appointment #booknetic_calendar_area td > div *,
body .booknetic_appointment #booknetic_calendar_area .days,
body .booknetic_appointment #booknetic_calendar_area .days *,
body .booknetic_appointment #booknetic_calendar_area [data-date],
body .booknetic_appointment #booknetic_calendar_area [data-date] * {
    color: #111111 !important;
    -webkit-text-fill-color: #111111 !important;
    text-shadow: none !important;
    opacity: 1 !important;
}

/* اگر عدد با before/after ساخته شده باشد */
body .booknetic_appointment #booknetic_calendar_area td > div::before,
body .booknetic_appointment #booknetic_calendar_area td > div::after,
body .booknetic_appointment #booknetic_calendar_area .days::before,
body .booknetic_appointment #booknetic_calendar_area .days::after {
    color: #111111 !important;
    -webkit-text-fill-color: #111111 !important;
    text-shadow: none !important;
    opacity: 1 !important;
}

/* روزهای غیرفعال کمی کم‌رنگ ولی مشکی */
body .booknetic_appointment #booknetic_calendar_area .disabled_day,
body .booknetic_appointment #booknetic_calendar_area .booknetic_calendar_empty_day,
body .booknetic_appointment #booknetic_calendar_area .booknetic_calendar_day_disabled,
body .booknetic_appointment #booknetic_calendar_area .disabled_day *,
body .booknetic_appointment #booknetic_calendar_area .booknetic_calendar_empty_day *,
body .booknetic_appointment #booknetic_calendar_area .booknetic_calendar_day_disabled * {
    color: rgba(0,0,0,0.48) !important;
    -webkit-text-fill-color: rgba(0,0,0,0.48) !important;
    text-shadow: none !important;
    opacity: 1 !important;
}

/* روز انتخاب‌شده چون قرمز است سفید بماند */
body .booknetic_appointment #booknetic_calendar_area .booknetic_calendar_selected_day,
body .booknetic_appointment #booknetic_calendar_area .selected_day,
body .booknetic_appointment #booknetic_calendar_area td > div.booknetic_calendar_selected_day,
body .booknetic_appointment #booknetic_calendar_area td > div.selected_day,
body .booknetic_appointment #booknetic_calendar_area .booknetic_calendar_selected_day *,
body .booknetic_appointment #booknetic_calendar_area .selected_day * {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    text-shadow: none !important;
    opacity: 1 !important;
}

/* نام روزهای هفته سفید/خاکستری بماند */
body .booknetic_appointment #booknetic_calendar_area th,
body .booknetic_appointment #booknetic_calendar_area .week_names,
body .booknetic_appointment #booknetic_calendar_area .week_name {
    color: rgba(255,255,255,0.72) !important;
    -webkit-text-fill-color: rgba(255,255,255,0.72) !important;
}


/* =========================================================
   2) CONFIRM STEP - REMOVE DOTTED LINES / CAPSULES / OVERLAPS
   ========================================================= */

/* خود کارت خلاصه سفارش فقط یک کانتینر تمیز باشد */
body .booknetic_appointment .booknetic_confirm_sum_body,
body .booknetic_appointment .booknetic_confirm_sum,
body .booknetic_appointment .booknetic_confirm_details_box {
    border-radius: 22px !important;
    border: 1px solid rgba(255,255,255,0.18) !important;

    background:
        linear-gradient(180deg, rgba(255,255,255,0.055), rgba(255,255,255,0.018)),
        rgba(13,13,13,0.78) !important;

    box-shadow: 0 18px 44px rgba(0,0,0,0.22) !important;

    overflow: hidden !important;
}

/* prices_box فقط لیست باشد، نه کارت جدا */
body .booknetic_appointment .booknetic_prices_box {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;

    flex: 1 1 auto !important;
    min-height: 0 !important;

    margin: 0 !important;
    padding: 0 0 12px 0 !important;

    display: flex !important;
    flex-direction: column !important;

    border: 0 !important;
    border-radius: 0 !important;

    background: transparent !important;
    background-image: none !important;
    box-shadow: none !important;

    overflow-y: auto !important;
    overflow-x: hidden !important;
}

/* حذف کامل خط‌چین‌ها و pseudoهای مزاحم داخل لیست تایید */
body .booknetic_appointment .booknetic_prices_box *,
body .booknetic_appointment .booknetic_prices_box *::before,
body .booknetic_appointment .booknetic_prices_box *::after,
body .booknetic_appointment .booknetic_confirm_sum_body *::before,
body .booknetic_appointment .booknetic_confirm_sum_body *::after,
body .booknetic_appointment .booknetic_confirm_sum *::before,
body .booknetic_appointment .booknetic_confirm_sum *::after,
body .booknetic_appointment .booknetic_confirm_details_box *::before,
body .booknetic_appointment .booknetic_confirm_details_box *::after {
    border-style: solid !important;
    border-image: none !important;
    outline: 0 !important;
    text-decoration: none !important;
    box-shadow: none !important;
}

/* pseudoهای خط‌چین Booknetic را کلاً خاموش کن */
body .booknetic_appointment .booknetic_prices_box *::before,
body .booknetic_appointment .booknetic_prices_box *::after,
body .booknetic_appointment .booknetic_confirm_sum_body *::before,
body .booknetic_appointment .booknetic_confirm_sum_body *::after,
body .booknetic_appointment .booknetic_confirm_sum *::before,
body .booknetic_appointment .booknetic_confirm_sum *::after,
body .booknetic_appointment .booknetic_confirm_details_box *::before,
body .booknetic_appointment .booknetic_confirm_details_box *::after {
    content: none !important;
    display: none !important;
}

/* ردیف‌های اصلی خدمات انتخابی */
body .booknetic_appointment .booknetic_prices_box > div:not(.booknetic_coupon):not(.booknetic_coupon_area):not(.booknetic_coupon_div):not(.booknetic_confirm_deposit_body):not(.booknetic_total_price):not(.booknetic_total_amount) {
    width: 100% !important;
    max-width: 100% !important;

    min-height: 54px !important;
    height: auto !important;

    margin: 0 !important;
    padding: 10px 0 !important;

    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 150px !important;
    align-items: center !important;
    gap: 18px !important;

    border: 0 !important;
    border-bottom: 1px solid rgba(255,255,255,0.075) !important;
    border-radius: 0 !important;

    background: transparent !important;
    background-image: none !important;
    box-shadow: none !important;

    overflow: visible !important;
}

/* حذف کپسول/باکس داخلی عنوان و قیمت */
body .booknetic_appointment .booknetic_prices_box > div:not(.booknetic_coupon):not(.booknetic_coupon_area):not(.booknetic_coupon_div):not(.booknetic_confirm_deposit_body):not(.booknetic_total_price):not(.booknetic_total_amount) > * {
    margin: 0 !important;
    padding: 0 !important;

    border: 0 !important;
    border-radius: 0 !important;

    background: transparent !important;
    background-image: none !important;
    box-shadow: none !important;

    min-width: 0 !important;
    max-width: 100% !important;
}

/* متن خدمات سمت راست */
body .booknetic_appointment .booknetic_prices_box > div:not(.booknetic_coupon):not(.booknetic_coupon_area):not(.booknetic_coupon_div):not(.booknetic_confirm_deposit_body):not(.booknetic_total_price):not(.booknetic_total_amount) > *:first-child {
    grid-column: 1 !important;

    color: #ffffff !important;
    font-size: 14px !important;
    font-weight: 900 !important;
    line-height: 1.8 !important;

    text-align: right !important;
    justify-self: stretch !important;

    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

/* قیمت سمت چپ */
body .booknetic_appointment .booknetic_prices_box > div:not(.booknetic_coupon):not(.booknetic_coupon_area):not(.booknetic_coupon_div):not(.booknetic_confirm_deposit_body):not(.booknetic_total_price):not(.booknetic_total_amount) > *:last-child,
body .booknetic_appointment .booknetic_prices_box .booknetic_sum_price,
body .booknetic_appointment .booknetic_prices_box .booknetic_confirm_sum_price,
body .booknetic_appointment .booknetic_prices_box .amount {
    grid-column: 2 !important;

    color: #35e071 !important;
    font-size: 15px !important;
    font-weight: 950 !important;
    line-height: 1.6 !important;

    text-align: left !important;
    justify-self: end !important;
    white-space: nowrap !important;

    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

/* کوپن زیر لیست و بدون کادر اضافه عجیب */
body .booknetic_appointment .booknetic_coupon,
body .booknetic_appointment .booknetic_coupon_area,
body .booknetic_appointment .booknetic_coupon_div {
    width: 100% !important;
    max-width: 100% !important;

    flex: 0 0 auto !important;

    margin: 14px 0 0 0 !important;
    padding: 0 !important;

    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 10px !important;

    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;

    overflow: visible !important;
}

/* جمع کل پایین کارت، بدون وارد شدن وسط لیست */
body .booknetic_appointment .booknetic_confirm_deposit_body,
body .booknetic_appointment .booknetic_total_price,
body .booknetic_appointment .booknetic_total_amount {
    width: 100% !important;
    max-width: 100% !important;

    flex: 0 0 64px !important;

    min-height: 64px !important;
    height: 64px !important;
    max-height: 64px !important;

    margin: 16px 0 0 0 !important;
    padding: 16px 20px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 16px !important;

    border-radius: 16px !important;
    border: 1px solid rgba(255,255,255,0.10) !important;

    background:
        linear-gradient(180deg, rgba(255,255,255,0.055), rgba(255,255,255,0.018)),
        rgba(16,16,16,0.86) !important;

    color: #fff !important;
    box-shadow: none !important;

    overflow: visible !important;
}

/* قیمت جمع کل */
body .booknetic_appointment .booknetic_confirm_deposit_body .booknetic_sum_price,
body .booknetic_appointment .booknetic_confirm_deposit_body .booknetic_confirm_sum_price,
body .booknetic_appointment .booknetic_total_price,
body .booknetic_appointment .booknetic_total_amount {
    color: #35e071 !important;
    font-size: 18px !important;
    font-weight: 950 !important;
    white-space: nowrap !important;
}

/* اسکرول لیست تایید */
body .booknetic_appointment .booknetic_prices_box::-webkit-scrollbar {
    width: 7px !important;
}

body .booknetic_appointment .booknetic_prices_box::-webkit-scrollbar-track {
    background: rgba(255,255,255,0.055) !important;
    border-radius: 20px !important;
}

body .booknetic_appointment .booknetic_prices_box::-webkit-scrollbar-thumb {
    background: linear-gradient(180deg, #ff464d, #c8242b) !important;
    border-radius: 20px !important;
}

/* =========================================================
   PCMOD ZIBAL LOGO ONLY FINAL
   Remove inner payment container/card/text, keep only Zibal logo centered
   MUST be the LAST block
   ========================================================= */

:root {
    --pcmod-zibal-logo: url("../icons/ziballogo.png");
}

/* کارت بیرونی پرداخت همان بخش اصلی بماند، فقط محتوا وسط شود */
body .booknetic_appointment .booknetic_payment_methods {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    padding: 0 !important;
    overflow: hidden !important;
}

/* تمام کانتینرهای داخلی بدون کادر، بدون بک‌گراند، بدون اندازه اضافه */
body .booknetic_appointment .booknetic_payment_methods_container,
body .booknetic_appointment .booknetic_payment_method_container,
body .booknetic_appointment .booknetic_payment_method,
body .booknetic_appointment .booknetic_payment_method.booknetic_payment_method_selected,
body .booknetic_appointment .booknetic_payment_method.active {
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: none !important;

    margin: 0 !important;
    padding: 0 !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    border: 0 !important;
    border-radius: 0 !important;
    outline: 0 !important;

    background: transparent !important;
    background-image: none !important;

    box-shadow: none !important;

    overflow: visible !important;
    position: relative !important;
}

/* هر چیزی که Booknetic داخل پرداخت گذاشته مخفی شود */
body .booknetic_appointment .booknetic_payment_method > *,
body .booknetic_appointment .booknetic_payment_method img,
body .booknetic_appointment .booknetic_payment_method svg,
body .booknetic_appointment .booknetic_payment_method span,
body .booknetic_appointment .booknetic_payment_method label,
body .booknetic_appointment .booknetic_payment_method div {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
}

/* فقط لوگوی زیبال وسط کانتینر */
body .booknetic_appointment .booknetic_payment_method::before {
    content: "" !important;

    width: 230px !important;
    height: 110px !important;

    display: block !important;

    margin: auto !important;

    background-image: var(--pcmod-zibal-logo) !important;
    background-repeat: no-repeat !important;
    background-position: center center !important;
    background-size: contain !important;

    border: 0 !important;
    box-shadow: none !important;
    outline: 0 !important;

    position: static !important;
    inset: auto !important;
    transform: none !important;
}

/* متن تکراری زیر لوگو حذف شود */
body .booknetic_appointment .booknetic_payment_method::after {
    content: none !important;
    display: none !important;
}

/* حذف هر pseudo اضافی از wrapperها */
body .booknetic_appointment .booknetic_payment_methods::before,
body .booknetic_appointment .booknetic_payment_methods::after,
body .booknetic_appointment .booknetic_payment_methods_container::before,
body .booknetic_appointment .booknetic_payment_methods_container::after,
body .booknetic_appointment .booknetic_payment_method_container::before,
body .booknetic_appointment .booknetic_payment_method_container::after {
    content: none !important;
    display: none !important;
}


/* =========================================================
   PCMOD EXTRAS TITLE + DESCRIPTION FINAL v2
   Current CSS compatible: 25% image / 50% title+desc / 25% price
   MUST be the LAST Extras block in CSS file
   ========================================================= */

/* ردیف خدمات جانبی: دو ردیف برای عنوان و توضیحات */
body .booknetic_appointment .booknetic_service_extra_card,
body .booknetic_appointment .booknetic_extra_card {
    display: grid !important;
    grid-template-columns: 25% 50% 25% !important;
    grid-template-rows: 63px 63px !important;

    height: 126px !important;
    min-height: 126px !important;
    max-height: 126px !important;

    overflow: hidden !important;
}

/* اگر wrapper داخلی دارد، وارد grid شود */
body .booknetic_appointment .booknetic_service_extra_card_header,
body .booknetic_appointment .booknetic_extra_card_header,
body .booknetic_appointment .booknetic_service_extra_card_content,
body .booknetic_appointment .booknetic_extra_card_content {
    display: contents !important;
}

/* عکس سمت راست، تمام ارتفاع ردیف */
body .booknetic_appointment .booknetic_service_extra_card_image,
body .booknetic_appointment .booknetic_extra_card_image {
    grid-column: 1 !important;
    grid-row: 1 / 3 !important;

    width: 100% !important;
    height: 126px !important;
    min-height: 126px !important;
    max-height: 126px !important;

    margin: 0 !important;
    padding: 0 !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    overflow: hidden !important;
}

/* قیمت سمت چپ، تمام ارتفاع ردیف */
body .booknetic_appointment .booknetic_service_extra_card_price,
body .booknetic_appointment .booknetic_extra_card_price {
    grid-column: 3 !important;
    grid-row: 1 / 3 !important;

    width: 100% !important;
    height: 126px !important;
    min-height: 126px !important;
    max-height: 126px !important;

    margin: 0 !important;
    padding: 0 14px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    text-align: center !important;
    white-space: nowrap !important;

    overflow: hidden !important;
}

/* عنوان خدمات جانبی: نیمه بالایی ستون وسط */
body .booknetic_appointment .booknetic_service_extra_card > .booknetic_service_extra_card_title,
body .booknetic_appointment .booknetic_extra_card > .booknetic_extra_card_title,
body .booknetic_appointment .booknetic_service_extra_card > .booknetic_card_title,
body .booknetic_appointment .booknetic_extra_card > .booknetic_card_title,
body .booknetic_appointment .booknetic_service_extra_card .booknetic_service_extra_card_title,
body .booknetic_appointment .booknetic_extra_card .booknetic_extra_card_title,
body .booknetic_appointment .booknetic_service_extra_card .booknetic_card_title,
body .booknetic_appointment .booknetic_extra_card .booknetic_card_title {
    grid-column: 2 !important;
    grid-row: 1 !important;

    width: 100% !important;
    height: 63px !important;
    min-height: 63px !important;
    max-height: 63px !important;

    margin: 0 !important;
    padding: 14px 24px 2px 24px !important;

    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 0 !important;

    text-align: center !important;
    direction: rtl !important;

    overflow: hidden !important;

    color: #fff !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;

    opacity: 1 !important;
    visibility: visible !important;

    z-index: 5 !important;

    writing-mode: horizontal-tb !important;
    text-orientation: mixed !important;
}

/* متن خود عنوان */
body .booknetic_appointment .booknetic_service_extra_card_title,
body .booknetic_appointment .booknetic_extra_card_title,
body .booknetic_appointment .booknetic_card_title,
body .booknetic_appointment .booknetic_service_extra_card_title *,
body .booknetic_appointment .booknetic_extra_card_title *,
body .booknetic_appointment .booknetic_card_title *,
body .booknetic_appointment .booknetic_service_extra_card .booknetic_card_title_first,
body .booknetic_appointment .booknetic_extra_card .booknetic_card_title_first {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;

    color: #fff !important;

    font-size: 15px !important;
    font-weight: 950 !important;
    line-height: 1.45 !important;

    text-align: center !important;

    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: anywhere !important;

    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;

    writing-mode: horizontal-tb !important;
    text-orientation: mixed !important;
}

/* توضیحات: نیمه پایینی ستون وسط */
body .booknetic_appointment .booknetic_service_extra_card > .booknetic_service_extra_card_description,
body .booknetic_appointment .booknetic_extra_card > .booknetic_extra_card_description,
body .booknetic_appointment .booknetic_service_extra_card > .booknetic_service_extra_description,
body .booknetic_appointment .booknetic_extra_card > .booknetic_extra_description,
body .booknetic_appointment .booknetic_service_extra_card > .booknetic_card_description,
body .booknetic_appointment .booknetic_extra_card > .booknetic_card_description,
body .booknetic_appointment .booknetic_service_extra_card .booknetic_service_extra_card_description,
body .booknetic_appointment .booknetic_extra_card .booknetic_extra_card_description,
body .booknetic_appointment .booknetic_service_extra_card .booknetic_service_extra_description,
body .booknetic_appointment .booknetic_extra_card .booknetic_extra_description,
body .booknetic_appointment .booknetic_service_extra_card .booknetic_card_description,
body .booknetic_appointment .booknetic_extra_card .booknetic_card_description {
    grid-column: 2 !important;
    grid-row: 2 !important;

    width: 100% !important;
    height: 63px !important;
    min-height: 63px !important;
    max-height: 63px !important;

    margin: 0 !important;
    padding: 2px 24px 14px 24px !important;

    display: -webkit-box !important;
    opacity: 1 !important;
    visibility: visible !important;

    color: rgba(255,255,255,0.70) !important;

    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 1.55 !important;

    text-align: center !important;
    direction: rtl !important;

    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;

    overflow: hidden !important;
    text-overflow: ellipsis !important;

    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: anywhere !important;

    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;

    z-index: 4 !important;

    writing-mode: horizontal-tb !important;
    text-orientation: mixed !important;
}

/* حالت خاص: اگر توضیح به شکل span مستقیم داخل کارت آمده باشد */
body .booknetic_appointment .booknetic_service_extra_card > span:not(.booknetic_service_extra_card_price):not(.booknetic_extra_card_price),
body .booknetic_appointment .booknetic_extra_card > span:not(.booknetic_service_extra_card_price):not(.booknetic_extra_card_price) {
    grid-column: 2 !important;
    grid-row: 2 !important;

    width: 100% !important;
    height: 63px !important;
    min-height: 63px !important;
    max-height: 63px !important;

    margin: 0 !important;
    padding: 2px 24px 14px 24px !important;

    display: -webkit-box !important;
    visibility: visible !important;
    opacity: 1 !important;

    color: rgba(255,255,255,0.70) !important;

    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 1.55 !important;

    text-align: center !important;
    direction: rtl !important;

    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;

    overflow: hidden !important;
    text-overflow: ellipsis !important;

    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;

    z-index: 4 !important;

    writing-mode: horizontal-tb !important;
    text-orientation: mixed !important;
}

/* اگر Booknetic عنوان را با second ساخته باشد، اما این second همان توضیح باشد */
body .booknetic_appointment .booknetic_service_extra_card .booknetic_card_title_second,
body .booknetic_appointment .booknetic_extra_card .booknetic_card_title_second,
body .booknetic_appointment .booknetic_service_extra_card_title_second,
body .booknetic_appointment .booknetic_extra_card_title_second {
    grid-column: 2 !important;
    grid-row: 2 !important;

    width: 100% !important;
    height: 63px !important;
    max-height: 63px !important;

    padding: 2px 24px 14px 24px !important;

    display: -webkit-box !important;
    visibility: visible !important;
    opacity: 1 !important;

    color: rgba(255,255,255,0.70) !important;

    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 1.55 !important;

    text-align: center !important;

    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;

    overflow: hidden !important;
}