body.arapix-reservation-ui-page {
    --arx-bg:#f7f4ef;--arx-card:#fffdf9;--arx-soft:#fcfaf6;--arx-border:#e8dece;--arx-border-soft:#f1eadf;
    --arx-text:#1c1915;--arx-muted:#756d62;--arx-accent:#c8a05a;--arx-accent-hover:#b58b45;
    --arx-radius:14px;--arx-shadow:0 8px 26px rgba(33,26,17,.035);
    background:var(--arx-bg);color:var(--arx-text)
}
body.arapix-reservation-ui-page header .main-menu>li>a{color:#4c4439!important;opacity:1!important;text-shadow:none!important}
body.arapix-reservation-ui-page header .main-menu>li:hover>a,
body.arapix-reservation-ui-page header .main-menu>li.current-menu-item>a,
body.arapix-reservation-ui-page header .main-menu>li.current_page_item>a{color:var(--arx-accent)!important}
body.arapix-reservation-ui-page header .main-menu .sub-menu{z-index:9999;min-width:190px;padding:8px;border:1px solid var(--arx-border);border-radius:12px;background:#fff!important;box-shadow:0 14px 34px rgba(25,20,14,.10)}
body.arapix-reservation-ui-page header .main-menu .sub-menu a{color:#4c4439!important;border-radius:8px;font-size:12.5px!important}
body.arapix-reservation-ui-page header .main-menu .sub-menu a:hover{color:var(--arx-accent)!important;background:#fbf7f0}
body.arapix-reservation-ui-page .woocommerce{width:min(1080px,calc(100% - 28px));margin:18px auto 44px;direction:rtl;color:var(--arx-text);font-size:12.5px;line-height:1.75}
body.arapix-reservation-ui-page .site-main,
body.arapix-reservation-ui-page .entry-content,
body.arapix-reservation-ui-page .page-content {
    position: relative;
    z-index: 1;
}

body.arapix-reservation-ui-page .page-header,body.arapix-reservation-ui-page .entry-header,body.arapix-reservation-ui-page .woocommerce-products-header{display:none!important}
body.arapix-reservation-ui-page .woocommerce h1{margin:0 0 14px;font-size:21px;line-height:1.45;font-weight:800}
body.arapix-reservation-ui-page .woocommerce h2,body.arapix-reservation-ui-page .woocommerce #order_review_heading{margin:0 0 12px;font-size:18px;line-height:1.5;font-weight:800}
body.arapix-reservation-ui-page .woocommerce h3{margin:0 0 10px;font-size:16px;line-height:1.5;font-weight:750}
body.arapix-reservation-ui-page .woocommerce-error,body.arapix-reservation-ui-page .woocommerce-info,body.arapix-reservation-ui-page .woocommerce-message{margin:0 0 14px!important;padding:11px 14px!important;border:1px solid var(--arx-border)!important;border-radius:12px;background:#fffaf2!important;color:var(--arx-text)!important;font-size:12px;line-height:1.9}
body.arapix-reservation-ui-page .woocommerce-form-coupon-toggle,body.arapix-reservation-ui-page form.checkout_coupon,body.arapix-reservation-ui-page .woocommerce-cart-form .coupon{display:none!important}
body.arapix-reservation-ui-page .woocommerce-checkout .col2-set{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:0;margin:0 0 18px!important;overflow:hidden;border:1px solid var(--arx-border);border-radius:var(--arx-radius);background:var(--arx-card);box-shadow:var(--arx-shadow)}
body.arapix-reservation-ui-page .woocommerce-checkout .col2-set .col-1,body.arapix-reservation-ui-page .woocommerce-checkout .col2-set .col-2{float:none!important;width:100%!important;max-width:none!important;margin:0!important;padding:18px}
body.arapix-reservation-ui-page .woocommerce-checkout .col2-set .col-2{border-right:1px solid var(--arx-border-soft);background:var(--arx-soft)}
body.arapix-reservation-ui-page .woocommerce-checkout .woocommerce-billing-fields>h3,body.arapix-reservation-ui-page .woocommerce-checkout .woocommerce-additional-fields>h3{margin:0 0 13px;font-size:0}
body.arapix-reservation-ui-page .woocommerce-checkout .woocommerce-billing-fields>h3::after{content:"اطلاعات رزرو";font-size:17px;font-weight:800}
body.arapix-reservation-ui-page .woocommerce-checkout .woocommerce-additional-fields>h3::after{content:"توضیحات";font-size:17px;font-weight:800}
body.arapix-reservation-ui-page .woocommerce-checkout .woocommerce-billing-fields__field-wrapper{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
body.arapix-reservation-ui-page .woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row,body.arapix-reservation-ui-page .woocommerce-checkout .woocommerce-additional-fields__field-wrapper .form-row{float:none!important;width:100%!important;margin:0!important}
body.arapix-reservation-ui-page .woocommerce-checkout .woocommerce-account-fields,body.arapix-reservation-ui-page .woocommerce-checkout .create-account,body.arapix-reservation-ui-page .woocommerce-checkout .woocommerce-shipping-fields,body.arapix-reservation-ui-page .woocommerce-checkout #ship-to-different-address,body.arapix-reservation-ui-page .woocommerce-checkout .optional{display:none!important}
body.arapix-reservation-ui-page .woocommerce form .form-row label{display:block;margin:0 0 5px;color:var(--arx-text);font-size:12px;font-weight:700}
body.arapix-reservation-ui-page .woocommerce form .form-row input.input-text,body.arapix-reservation-ui-page .woocommerce form .form-row textarea,body.arapix-reservation-ui-page .woocommerce form .form-row select,body.arapix-reservation-ui-page .select2-container--default .select2-selection--single{width:100%;min-height:42px;padding:9px 11px!important;border:1px solid var(--arx-border)!important;border-radius:10px!important;background:#fff!important;color:var(--arx-text)!important;box-shadow:none!important;font-size:12.5px!important}
body.arapix-reservation-ui-page .woocommerce form .form-row textarea{min-height:92px;max-height:150px;resize:vertical}
body.arapix-reservation-ui-page .woocommerce form .form-row input.input-text:focus,body.arapix-reservation-ui-page .woocommerce form .form-row textarea:focus,body.arapix-reservation-ui-page .woocommerce form .form-row select:focus{border-color:var(--arx-accent)!important;outline:0;box-shadow:0 0 0 3px rgba(200,160,90,.10)!important}
body.arapix-reservation-ui-page .woocommerce table.shop_table{width:100%;margin:0 0 18px;overflow:hidden;border:1px solid var(--arx-border)!important;border-radius:var(--arx-radius);border-collapse:separate;border-spacing:0;background:var(--arx-card);box-shadow:var(--arx-shadow)}
body.arapix-reservation-ui-page .woocommerce table.shop_table th,body.arapix-reservation-ui-page .woocommerce table.shop_table td{padding:11px 13px!important;border-color:var(--arx-border-soft)!important;text-align:right;vertical-align:middle;font-size:12px}
body.arapix-reservation-ui-page .woocommerce table.shop_table th{background:#fbf8f3;font-weight:700}
body.arapix-reservation-ui-page .woocommerce .product-name,body.arapix-reservation-ui-page .woocommerce td.product-name{font-weight:700}
body.arapix-reservation-ui-page .woocommerce .product-name .wc-item-meta,body.arapix-reservation-ui-page .woocommerce .product-name dl.variation,body.arapix-reservation-ui-page .woocommerce .product-name .variation{margin:7px 0 0!important;padding:9px 11px!important;border:1px solid var(--arx-border-soft);border-radius:10px;background:var(--arx-soft);font-size:11.5px;line-height:1.75}
body.arapix-reservation-ui-page.woocommerce-cart table.cart .product-thumbnail,body.arapix-reservation-ui-page.woocommerce-cart table.cart .product-price,body.arapix-reservation-ui-page.woocommerce-cart table.cart .product-quantity{display:none!important}
body.arapix-reservation-ui-page.woocommerce-cart table.cart td.actions{display:none!important}
body.arapix-reservation-ui-page .woocommerce .cart-collaterals{width:100%;display:flex;justify-content:flex-start}
body.arapix-reservation-ui-page .woocommerce .cart-collaterals .cart_totals{width:min(100%,460px);padding:16px;border:1px solid var(--arx-border);border-radius:var(--arx-radius);background:var(--arx-card);box-shadow:var(--arx-shadow)}
body.arapix-reservation-ui-page .woocommerce .cart-collaterals .cart_totals>h2{margin:0 0 10px;font-size:18px!important;line-height:1.5}
body.arapix-reservation-ui-page .woocommerce-checkout #order_review{padding:16px;border:1px solid var(--arx-border);border-radius:var(--arx-radius);background:var(--arx-card);box-shadow:var(--arx-shadow)}
body.arapix-reservation-ui-page .woocommerce-checkout #order_review_heading{margin-top:2px;font-size:18px!important}
body.arapix-reservation-ui-page #payment{margin-top:12px;padding:13px;border:1px solid var(--arx-border)!important;border-radius:12px;background:var(--arx-card)!important}
body.arapix-reservation-ui-page #payment ul.payment_methods{margin-bottom:10px!important;padding-bottom:8px!important;border-bottom:1px solid var(--arx-border-soft)!important}
body.arapix-reservation-ui-page #payment ul.payment_methods li{margin-bottom:7px;font-size:12px}
body.arapix-reservation-ui-page #payment div.payment_box{padding:10px 12px!important;border:1px solid var(--arx-border-soft)!important;border-radius:10px;background:var(--arx-soft)!important;color:var(--arx-muted);font-size:11.5px}
body.arapix-reservation-ui-page .woocommerce a.button,body.arapix-reservation-ui-page .woocommerce button.button,body.arapix-reservation-ui-page .woocommerce input.button,body.arapix-reservation-ui-page .woocommerce a.button.alt,body.arapix-reservation-ui-page .woocommerce button.button.alt,body.arapix-reservation-ui-page .woocommerce input.button.alt,body.arapix-reservation-ui-page .woocommerce #payment #place_order{min-height:40px;padding:0 16px!important;border:0!important;border-radius:10px!important;background:var(--arx-accent)!important;color:#fff!important;box-shadow:none!important;font-size:12px!important;font-weight:700;line-height:40px}
body.arapix-reservation-ui-page .woocommerce a.button:hover,body.arapix-reservation-ui-page .woocommerce button.button:hover,body.arapix-reservation-ui-page .woocommerce input.button:hover,body.arapix-reservation-ui-page .woocommerce #payment #place_order:hover{background:var(--arx-accent-hover)!important;color:#fff!important}
body.arapix-reservation-ui-page .woocommerce-cart .wc-proceed-to-checkout{padding-bottom:0}
body.arapix-reservation-ui-page .woocommerce-cart .wc-proceed-to-checkout a.checkout-button{width:100%;margin:0;text-align:center}
@media(max-width:767px){body.arapix-reservation-ui-page .woocommerce{width:min(100% - 20px,1080px);margin-top:12px}body.arapix-reservation-ui-page .woocommerce-checkout .col2-set{grid-template-columns:1fr}body.arapix-reservation-ui-page .woocommerce-checkout .col2-set .col-1,body.arapix-reservation-ui-page .woocommerce-checkout .col2-set .col-2{padding:14px}body.arapix-reservation-ui-page .woocommerce-checkout .col2-set .col-2{border-top:1px solid var(--arx-border-soft);border-right:0}body.arapix-reservation-ui-page .woocommerce-checkout .woocommerce-billing-fields__field-wrapper{grid-template-columns:1fr}body.arapix-reservation-ui-page .woocommerce table.shop_table th,body.arapix-reservation-ui-page .woocommerce table.shop_table td{padding:9px 8px!important;font-size:11.5px}body.arapix-reservation-ui-page .woocommerce .cart-collaterals .cart_totals{width:100%}body.arapix-reservation-ui-page .woocommerce #payment #place_order{width:100%;text-align:center}}


/* ===== Arapix Reservation UI 1.4.2: Header flow + customer details alignment ===== */

/*
 * قالب Karauos روی header.position-header مقدار position:absolute دارد.
 * فقط در دو صفحه رزرو آن را به جریان عادی صفحه برمی‌گردانیم.
 */
body.arapix-reservation-ui-page header.position-header {
    position: relative !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    width: 100% !important;
    z-index: 999 !important;
}

/* بعد از قرار گرفتن هدر در جریان عادی، محتوا با فاصله طبیعی شروع شود. */
body.arapix-reservation-ui-page .woocommerce {
    margin-top: 28px !important;
}

/* کانتینر اصلی اطلاعات مشتری: دو نیمه هم‌ارتفاع */
body.arapix-reservation-ui-page .woocommerce-checkout #customer_details {
    display: flex !important;
    flex-direction: row !important;
    align-items: stretch !important;
    gap: 0 !important;
    margin: 0 0 18px !important;
    overflow: hidden;
    border: 1px solid var(--arx-border);
    border-radius: var(--arx-radius);
    background: var(--arx-card);
    box-shadow: var(--arx-shadow);
}

body.arapix-reservation-ui-page .woocommerce-checkout #customer_details > .col-1,
body.arapix-reservation-ui-page .woocommerce-checkout #customer_details > .col-2 {
    float: none !important;
    display: flex !important;
    flex: 1 1 50% !important;
    flex-direction: column !important;
    width: 50% !important;
    max-width: 50% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 20px !important;
}

body.arapix-reservation-ui-page .woocommerce-checkout #customer_details > .col-2 {
    border-right: 1px solid var(--arx-border-soft) !important;
    background: var(--arx-soft) !important;
}

body.arapix-reservation-ui-page .woocommerce-checkout #customer_details .woocommerce-billing-fields,
body.arapix-reservation-ui-page .woocommerce-checkout #customer_details .woocommerce-additional-fields {
    display: flex !important;
    flex: 1 1 auto !important;
    flex-direction: column !important;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
}

body.arapix-reservation-ui-page .woocommerce-checkout #customer_details .woocommerce-billing-fields > h3,
body.arapix-reservation-ui-page .woocommerce-checkout #customer_details .woocommerce-additional-fields > h3 {
    margin: 0 0 14px !important;
}

/* نام و نام خانوادگی حتماً زیر هم */
body.arapix-reservation-ui-page .woocommerce-checkout #customer_details .woocommerce-billing-fields__field-wrapper {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    width: 100% !important;
}

body.arapix-reservation-ui-page .woocommerce-checkout #customer_details .woocommerce-billing-fields__field-wrapper .form-row,
body.arapix-reservation-ui-page .woocommerce-checkout #customer_details .woocommerce-additional-fields__field-wrapper .form-row {
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
}

/* ستون توضیحات هم‌ارتفاع با ستون نام‌ها */
body.arapix-reservation-ui-page .woocommerce-checkout #customer_details .woocommerce-additional-fields__field-wrapper,
body.arapix-reservation-ui-page .woocommerce-checkout #customer_details .woocommerce-additional-fields__field-wrapper .form-row {
    display: flex !important;
    flex: 1 1 auto !important;
    flex-direction: column !important;
    width: 100% !important;
}

body.arapix-reservation-ui-page .woocommerce-checkout #customer_details textarea#order_comments {
    flex: 1 1 auto !important;
    width: 100% !important;
    min-height: 134px !important;
    height: 100% !important;
    max-height: none !important;
    resize: vertical !important;
}

@media (max-width: 767px) {
    body.arapix-reservation-ui-page .woocommerce {
        margin-top: 18px !important;
    }

    body.arapix-reservation-ui-page .woocommerce-checkout #customer_details {
        flex-direction: column !important;
    }

    body.arapix-reservation-ui-page .woocommerce-checkout #customer_details > .col-1,
    body.arapix-reservation-ui-page .woocommerce-checkout #customer_details > .col-2 {
        flex: 1 1 auto !important;
        width: 100% !important;
        max-width: 100% !important;
        padding: 15px !important;
    }

    body.arapix-reservation-ui-page .woocommerce-checkout #customer_details > .col-2 {
        border-top: 1px solid var(--arx-border-soft) !important;
        border-right: 0 !important;
    }

    body.arapix-reservation-ui-page .woocommerce-checkout #customer_details textarea#order_comments {
        min-height: 110px !important;
    }
}


/* ===== Arapix Reservation UI 1.4.3: checkout error + payment result only ===== */

/* خطای Checkout رزرو: آیکون پیش‌فرض قالب/WooCommerce نباید وارد متن شود. */
body.arapix-reservation-ui-page .woocommerce .woocommerce-error,
body.arapix-reservation-ui-page .woocommerce .woocommerce-error li {
    color: #8f3128 !important;
}

body.arapix-reservation-ui-page .woocommerce .woocommerce-error::before,
body.arapix-reservation-ui-page .woocommerce .woocommerce-error::after,
body.arapix-reservation-ui-page .woocommerce .woocommerce-error li::before,
body.arapix-reservation-ui-page .woocommerce .woocommerce-error li::after {
    display: none !important;
    content: none !important;
}

body.arapix-reservation-ui-page .woocommerce .woocommerce-error {
    position: relative !important;
    padding: 11px 14px !important;
    border-color: #edd4cd !important;
    border-right: 3px solid #b34a3d !important;
    background: #fff8f5 !important;
}

body.arapix-reservation-ui-page .woocommerce .woocommerce-error li {
    position: static !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    line-height: 1.9 !important;
}

body.arapix-reservation-ui-page .woocommerce .woocommerce-error li strong {
    color: #8f3128 !important;
    font-weight: 800 !important;
}

/* صفحه نتیجه پرداخت رزرو */
body.arapix-reservation-result-page {
    background: var(--arx-bg) !important;
}

body.arapix-reservation-result-page .arapix-reservation-result {
    width: min(620px, calc(100% - 28px));
    min-height: 62vh;
    margin: 44px auto 60px;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    color: var(--arx-text);
}

body.arapix-reservation-result-page .arapix-reservation-result__card {
    width: 100%;
    padding: 34px;
    border: 1px solid var(--arx-border);
    border-radius: 18px;
    background: var(--arx-card);
    box-shadow: 0 14px 42px rgba(31, 25, 18, .055);
    text-align: center;
}

body.arapix-reservation-result-page .arapix-reservation-result__icon {
    width: 64px;
    height: 64px;
    margin: 0 auto 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px solid currentColor;
    border-radius: 50%;
    font-size: 31px;
    line-height: 1;
    font-weight: 700;
}

body.arapix-reservation-result-page .is-success .arapix-reservation-result__icon {
    color: #2c9b6f;
    background: #f2fbf7;
}

body.arapix-reservation-result-page .is-failed .arapix-reservation-result__icon {
    color: #b34a3d;
    background: #fff6f3;
}

body.arapix-reservation-result-page .arapix-reservation-result__card h1 {
    margin: 0 0 8px !important;
    color: var(--arx-text) !important;
    font-size: 21px !important;
    line-height: 1.55 !important;
    font-weight: 800 !important;
}

body.arapix-reservation-result-page .arapix-reservation-result__lead {
    margin: 0 auto 24px;
    max-width: 470px;
    color: var(--arx-muted);
    font-size: 12.5px;
    line-height: 1.9;
}

body.arapix-reservation-result-page .arapix-reservation-result__summary {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin: 0 0 16px;
    overflow: hidden;
    border: 1px solid var(--arx-border-soft);
    border-radius: 12px;
    background: var(--arx-soft);
    text-align: right;
}

body.arapix-reservation-result-page .arapix-reservation-result__summary > div {
    min-width: 0;
    padding: 12px 14px;
    border-bottom: 1px solid var(--arx-border-soft);
}

body.arapix-reservation-result-page .arapix-reservation-result__summary > div:nth-child(odd) {
    border-left: 1px solid var(--arx-border-soft);
}

body.arapix-reservation-result-page .arapix-reservation-result__summary span,
body.arapix-reservation-result-page .arapix-reservation-result__summary strong {
    display: block;
}

body.arapix-reservation-result-page .arapix-reservation-result__summary span {
    margin-bottom: 3px;
    color: var(--arx-muted);
    font-size: 10.5px;
}

body.arapix-reservation-result-page .arapix-reservation-result__summary strong {
    color: var(--arx-text);
    font-size: 12.5px;
    font-weight: 750;
    overflow-wrap: anywhere;
}

body.arapix-reservation-result-page .arapix-reservation-result__details {
    margin: 0 0 20px;
    padding: 14px 15px;
    border: 1px solid var(--arx-border-soft);
    border-radius: 12px;
    background: #fff;
    text-align: right;
}

body.arapix-reservation-result-page .arapix-reservation-result__section-title {
    margin: 0 0 10px;
    font-size: 12px;
    font-weight: 800;
}

body.arapix-reservation-result-page .arx-result-reservation + .arx-result-reservation {
    margin-top: 10px;
    padding-top: 10px;
    border-top: 1px solid var(--arx-border-soft);
}

body.arapix-reservation-result-page .arx-result-reservation__title {
    margin: 0 0 5px;
    font-size: 12.5px;
    font-weight: 750;
}

body.arapix-reservation-result-page .arx-result-reservation__meta,
body.arapix-reservation-result-page .arx-result-reservation__meta ul,
body.arapix-reservation-result-page .arx-result-reservation__meta p {
    margin: 0 !important;
    padding: 0 !important;
    color: var(--arx-muted);
    font-size: 11.5px;
    line-height: 1.85;
    list-style: none;
}

body.arapix-reservation-result-page .arapix-reservation-result__actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}

body.arapix-reservation-result-page .arx-result-btn {
    min-height: 42px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 16px;
    border-radius: 10px;
    text-decoration: none !important;
    font-size: 12px;
    font-weight: 750;
    transition: background .18s ease, border-color .18s ease, color .18s ease;
}

body.arapix-reservation-result-page .arx-result-btn--primary {
    border: 1px solid var(--arx-accent);
    background: var(--arx-accent);
    color: #fff !important;
}

body.arapix-reservation-result-page .arx-result-btn--primary:hover {
    border-color: var(--arx-accent-hover);
    background: var(--arx-accent-hover);
}

body.arapix-reservation-result-page .arx-result-btn--ghost {
    border: 1px solid var(--arx-border);
    background: #fff;
    color: var(--arx-text) !important;
}

body.arapix-reservation-result-page .arx-result-btn--ghost:hover {
    border-color: var(--arx-accent);
    color: var(--arx-accent-hover) !important;
}

@media (max-width: 640px) {
    body.arapix-reservation-result-page .arapix-reservation-result {
        margin-top: 24px;
    }

    body.arapix-reservation-result-page .arapix-reservation-result__card {
        padding: 24px 16px;
        border-radius: 14px;
    }

    body.arapix-reservation-result-page .arapix-reservation-result__summary,
    body.arapix-reservation-result-page .arapix-reservation-result__actions {
        grid-template-columns: 1fr;
    }

    body.arapix-reservation-result-page .arapix-reservation-result__summary > div:nth-child(odd) {
        border-left: 0;
    }

    body.arapix-reservation-result-page .arapix-reservation-result__card h1 {
        font-size: 18px !important;
    }
}
