/* =========================================================
   Tekino - سبد خرید، پرداخت و کادر جستجوی دسکتاپ  (v2)
   فایل مستقل قالب: wp-content/themes/tekino/tk-cart-checkout.css
========================================================= */

/* ---------- کادر جستجو (موبایل و دسکتاپ): حاشیه نئونی ---------- */
:is(header, .site-header, .tk-header, #masthead) form:has(input[type="search"]),
:is(header, .site-header, .tk-header, #masthead) form:has(input[name="s"]),
:is(header, .site-header, .tk-header, #masthead) form[role="search"],
:is(header, .site-header, .tk-header, #masthead) .search-form,
:is(header, .site-header, .tk-header, #masthead) .dgwt-wcas-search-form,
:is(header, .site-header, .tk-header, #masthead) form.woocommerce-product-search {
    border: 2px solid #a855f7 !important;
    border-radius: 18px !important;
    box-shadow: 0 0 14px rgba(168, 85, 247, .45), inset 0 0 8px rgba(0, 234, 255, .12) !important;
    transition: box-shadow .2s, border-color .2s;
}
:is(header, .site-header, .tk-header, #masthead) form:has(input[type="search"]):focus-within,
:is(header, .site-header, .tk-header, #masthead) form:has(input[name="s"]):focus-within,
:is(header, .site-header, .tk-header, #masthead) form[role="search"]:focus-within {
    border-color: #00eaff !important;
    box-shadow: 0 0 18px rgba(0, 234, 255, .6) !important;
}
/* موبایل: فقط یک حاشیه (حاشیه داخلی خود فیلد حذف شود) */
@media (max-width: 768px) {
    :is(header, .site-header, .tk-header, #masthead) form:has(input[type="search"]) input[type="search"],
    :is(header, .site-header, .tk-header, #masthead) form:has(input[name="s"]) input[name="s"] {
        border: 0 !important;
        box-shadow: none !important;
        background: transparent !important;
    }
}

/* ---------- متغیرهای رنگ ---------- */
.wc-block-cart,
.wc-block-checkout {
    --tk-indigo: #818cf8;
    --tk-cyan: #00eaff;
    --tk-pink: #ff00c8;
    --tk-green: #39ff88;
    --tk-yellow: #ffb703;
    --tk-purple: #a855f7;
    --tk-dark: #1e293b;
    --tk-grad: linear-gradient(135deg, #4f46e5, #7c3aed);
}

/* =========================================================
   پرداخت: هر کادر یک رنگ نئونی
========================================================= */
.wc-block-checkout__main .wp-block-woocommerce-checkout-contact-information-block { --tk-c: #ff00c8; --tk-f: #ff00c8; }
.wc-block-checkout__main .wp-block-woocommerce-checkout-shipping-address-block,
.wc-block-checkout__main .wp-block-woocommerce-checkout-billing-address-block      { --tk-c: #00eaff; --tk-f: #a855f7; }
.wc-block-checkout__main .wp-block-woocommerce-checkout-shipping-method-block,
.wc-block-checkout__main .wp-block-woocommerce-checkout-shipping-methods-block    { --tk-c: #39ff88; --tk-f: #39ff88; }
.wc-block-checkout__main .wp-block-woocommerce-checkout-payment-block              { --tk-c: #ffb703; --tk-f: #ffb703; }
.wc-block-checkout__main .wp-block-woocommerce-checkout-order-note-block           { --tk-c: #a855f7; --tk-f: #a855f7; }

.wc-block-checkout__main :is(
    .wp-block-woocommerce-checkout-contact-information-block,
    .wp-block-woocommerce-checkout-shipping-address-block,
    .wp-block-woocommerce-checkout-billing-address-block,
    .wp-block-woocommerce-checkout-shipping-method-block,
    .wp-block-woocommerce-checkout-shipping-methods-block,
    .wp-block-woocommerce-checkout-payment-block,
    .wp-block-woocommerce-checkout-order-note-block
) {
    background: #fff;
    border: 2px solid var(--tk-c);
    border-radius: 20px;
    padding: 18px 18px 20px;
    margin: 0 0 18px;
    box-sizing: border-box;
    box-shadow: 0 0 16px rgba(99, 102, 241, .3);
    box-shadow: 0 0 16px color-mix(in srgb, var(--tk-c) 45%, transparent);
}
.wc-block-checkout__main .wc-block-components-checkout-step::before,
.wc-block-checkout__main .wc-block-components-checkout-step::after { display: none !important; }

/* ---------- کادر خلاصه سفارش (کنار صفحه + پایین صفحه موبایل) ---------- */
.wc-block-checkout .wp-block-woocommerce-checkout-order-summary-block,
.wc-block-cart__sidebar .wp-block-woocommerce-cart-order-summary-block {
    background: #fff;
    border: 2px solid #818cf8;
    border-radius: 20px;
    padding: 16px;
    box-sizing: border-box;
    box-shadow: 0 0 16px rgba(129, 140, 248, .4);
}
.wc-block-cart__sidebar .wp-block-woocommerce-cart-order-summary-block {
    border-color: #00eaff;
    box-shadow: 0 0 16px rgba(0, 234, 255, .35);
}

/* موبایل: خلاصه سفارش همیشه باز، بدون دکمه بستن */
.wc-block-components-checkout-order-summary__content,
.wc-block-components-checkout-order-summary__content[hidden] { display: block !important; }
.wc-block-components-checkout-order-summary__title { pointer-events: none; cursor: default; }
.wc-block-components-checkout-order-summary__title-icon { display: none !important; }

/* ---------- عنوان‌ها ---------- */
.wc-block-components-checkout-step__title,
.wc-block-cart__totals-title,
.wc-block-components-order-summary__button-text {
    font-weight: 900 !important;
    color: var(--tk-dark);
}
.wc-block-components-checkout-step__title { font-size: 17px; }

/* ---------- فیلدهای فرم: حاشیه نئونی هم‌رنگ هر کادر ---------- */
.wc-block-checkout .wc-block-components-text-input input,
.wc-block-checkout .wc-block-components-textarea,
.wc-block-checkout .wc-block-components-combobox .components-combobox-control__input,
.wc-block-checkout .wc-blocks-components-select .wc-blocks-components-select__select,
.wc-block-checkout .wc-block-components-form .wc-block-components-text-input input[type=text],
.wc-block-checkout .wc-block-components-form .wc-block-components-text-input input[type=email],
.wc-block-checkout .wc-block-components-form .wc-block-components-text-input input[type=tel] {
    border: 2px solid var(--tk-f, #818cf8) !important;
    border-radius: 12px !important;
    background: #fff !important;
    font-weight: 700;
    color: var(--tk-dark);
    box-shadow: 0 0 8px rgba(129, 140, 248, .35) !important;
    box-shadow: 0 0 8px color-mix(in srgb, var(--tk-f, #818cf8) 40%, transparent) !important;
    transition: box-shadow .2s;
}
.wc-block-checkout .wc-block-components-text-input input:focus,
.wc-block-checkout .wc-block-components-textarea:focus,
.wc-block-checkout .components-combobox-control__input:focus,
.wc-block-checkout .wc-blocks-components-select__select:focus {
    box-shadow: 0 0 14px var(--tk-f, #818cf8) !important;
    outline: none !important;
}
.wc-block-components-text-input label,
.wc-blocks-components-select__label { font-weight: 700; color: #64748b; }

/* ---------- گزینه‌های حمل و پرداخت ---------- */
.wc-block-components-radio-control__option,
.wc-block-components-radio-control-accordion-option {
    border: 2px solid #e2e8f0 !important;
    border-radius: 14px !important;
    margin-bottom: 10px;
    background: #fff;
}
.wc-block-components-radio-control__option-checked,
.wc-block-components-radio-control-accordion-option:has(input:checked) {
    border-color: var(--tk-c, #818cf8) !important;
    box-shadow: 0 0 10px rgba(129, 140, 248, .35);
    box-shadow: 0 0 10px color-mix(in srgb, var(--tk-c, #818cf8) 45%, transparent);
}
.wc-block-components-radio-control__label { font-weight: 800; color: var(--tk-dark); }
.wc-block-components-radio-control__secondary-label { font-weight: 900; color: #0d9488; }

/* ---------- محصول در خلاصه سفارش: بزرگ‌تر + کنترل تعداد ---------- */
.wc-block-components-order-summary {
    border: 2px solid #a855f7 !important;
    border-radius: 16px;
    background: #faf5ff;
    padding: 6px 14px !important;
    box-shadow: 0 0 12px rgba(168, 85, 247, .3);
}
.wc-block-components-order-summary-item { padding: 16px 0 !important; align-items: flex-start; }
.wc-block-components-order-summary-item__image { flex: 0 0 76px; width: 76px; }
.wc-block-components-order-summary-item__image img {
    width: 76px; height: 76px; border-radius: 12px; border: 2px solid #e2e8f0; background: #fff; object-fit: contain; padding: 3px;
}
.wc-block-components-order-summary-item__quantity {
    background: var(--tk-grad); color: #fff; border: 0; box-shadow: 0 0 8px rgba(124, 58, 237, .5); font-weight: 900;
}
.wc-block-components-order-summary-item .wc-block-components-product-name { font-size: 14px; }

.tk-os-qty {
    direction: ltr; display: inline-flex; align-items: stretch; height: 38px; width: 112px; margin-top: 10px;
    background: #fff; border: 2px solid #818cf8; border-radius: 12px; overflow: hidden; box-shadow: 0 0 8px rgba(129, 140, 248, .35);
}
.tk-os-qty .tk-os-num { flex: 1; display: flex; align-items: center; justify-content: center; font-weight: 900; font-size: 15px; color: #1e293b; }
.tk-os-qty .tk-os-btn {
    flex: none; width: 36px; background: #6366f1; color: #fff; border: 0; font-size: 18px; font-weight: 900; cursor: pointer; padding: 0; line-height: 1;
}
.tk-os-qty .tk-os-btn:hover:not(:disabled) { background: #4f46e5; }
.tk-os-qty .tk-os-btn:disabled { background: #c7d2fe; cursor: not-allowed; }
.tk-os-qty.tk-busy { opacity: .55; pointer-events: none; }

/* ---------- سبد خرید ---------- */
.wc-block-cart__main {
    background: #fff; border: 2px solid #818cf8; border-radius: 20px; padding: 18px;
    box-shadow: 0 0 16px rgba(99, 102, 241, .25); box-sizing: border-box;
}
table.wc-block-cart-items { border: 0; }
.wc-block-cart-items th { font-size: 12px; font-weight: 800; color: #64748b; border-bottom: 2px solid #f1f5f9; }
.wc-block-cart-items__row td { border-top: 1px dashed #e2e8f0; padding-top: 16px; padding-bottom: 16px; }
.wc-block-cart-item__image img { border-radius: 14px; border: 2px solid #e2e8f0; background: #f8fafc; padding: 4px; object-fit: contain; }
.wc-block-components-product-name { font-weight: 800; color: var(--tk-dark); text-decoration: none; font-size: 14px; line-height: 1.8; }
.wc-block-components-product-metadata,
.wc-block-components-product-metadata__description { font-size: 12px; font-weight: 700; color: #64748b; }
.wc-block-components-product-price { font-weight: 900; color: #0d9488; }
.wc-block-components-sale-badge,
.wc-block-components-product-badge { background: linear-gradient(135deg, #ef4444, #f97316); color: #fff; border: 0; border-radius: 999px; font-weight: 800; padding: 2px 10px; }

.wc-block-components-quantity-selector {
    direction: ltr; display: inline-flex; align-items: stretch; height: 40px; width: 120px; background: #fff;
    border: 2px solid #818cf8; border-radius: 12px; overflow: hidden; box-shadow: 0 0 8px rgba(129, 140, 248, .3);
}
.wc-block-components-quantity-selector::after { display: none !important; }
.wc-block-components-quantity-selector__input {
    flex: 1; min-width: 0; width: auto !important; border: 0 !important; background: transparent !important; text-align: center;
    font-weight: 900; font-size: 15px; color: var(--tk-dark); padding: 0 !important; margin: 0 !important; box-shadow: none !important;
}
.wc-block-components-quantity-selector__button { flex: none; width: 38px; background: #6366f1 !important; color: #fff !important; opacity: 1 !important; font-size: 18px; font-weight: 900; border: 0; cursor: pointer; }
.wc-block-components-quantity-selector__button:hover:not(:disabled) { background: #4f46e5 !important; }
.wc-block-components-quantity-selector__button:disabled { background: #c7d2fe !important; cursor: not-allowed; }
.wc-block-cart-item__remove-link { color: #ef4444 !important; font-size: 12px; font-weight: 800; text-decoration: none; }

/* ---------- جمع‌ها ---------- */
.wc-block-components-totals-wrapper { border-color: #e2e8f0; }
.wc-block-components-totals-item__label { font-weight: 800; color: #475569; font-size: 13.5px; }
.wc-block-components-totals-item__value { font-weight: 900; color: var(--tk-dark); }
.wc-block-components-totals-footer-item .wc-block-components-totals-item__label { font-size: 15px; color: var(--tk-dark); }
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value { font-size: 20px; color: #0d9488; }
.wc-block-components-totals-coupon .wc-block-components-panel__button { font-weight: 800; color: #4f46e5; }

/* ---------- اعلان‌ها ---------- */
.wc-block-components-notice-banner { border-radius: 14px; font-weight: 700; border-width: 2px; }
.wc-block-components-notice-banner.is-error { background: #fef2f2; border-color: #ef4444; color: #991b1b; }
.wc-block-components-notice-banner.is-success { background: #f0fdf4; border-color: #22c55e; }

/* ---------- دکمه‌ها ---------- */
.wc-block-cart__submit-button,
.wc-block-components-checkout-place-order-button,
.wc-block-components-totals-coupon__button {
    background: var(--tk-grad) !important; color: #fff !important; border: 2px solid #39ff88 !important; border-radius: 16px !important;
    min-height: 52px; font-size: 16px !important; font-weight: 900 !important; box-shadow: 0 0 18px rgba(57, 255, 136, .5); text-decoration: none;
    transition: transform .2s, box-shadow .2s;
}
.wc-block-cart__submit-button:hover,
.wc-block-components-checkout-place-order-button:hover { transform: translateY(-1px); box-shadow: 0 0 24px rgba(57, 255, 136, .7); }
.wc-block-components-checkout-place-order-button:disabled { opacity: .6; box-shadow: none; }
.wc-block-components-checkout-return-to-cart-button { color: #4f46e5; font-weight: 800; }

.wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox]:checked { background: #6366f1; border-color: #6366f1; }
.wc-block-components-checkbox__label { font-weight: 700; color: #475569; }
.wc-block-checkout__terms { font-size: 12.5px; font-weight: 700; color: #64748b; line-height: 2; }
.wc-block-checkout__terms a { color: #4f46e5; font-weight: 800; }

/* ---------- موبایل ---------- */
@media (max-width: 768px) {
    .wc-block-cart__main { padding: 12px; }
    .wc-block-checkout__main :is(
        .wp-block-woocommerce-checkout-contact-information-block,
        .wp-block-woocommerce-checkout-shipping-address-block,
        .wp-block-woocommerce-checkout-billing-address-block,
        .wp-block-woocommerce-checkout-shipping-method-block,
        .wp-block-woocommerce-checkout-shipping-methods-block,
        .wp-block-woocommerce-checkout-payment-block,
        .wp-block-woocommerce-checkout-order-note-block
    ) { padding: 14px 14px 16px; border-radius: 16px; }
    .wc-block-components-checkout-step__title { font-size: 15px; }
}


/* =========================================================
   اصلاحات v3: فاصله‌ها، بیرون‌زدگی متن، کادر خالی، دایره‌های اضافی
========================================================= */

/* پدینگ کادرها (روی استایل پیش‌فرض ووکامرس غلبه می‌کند) */
.wc-block-checkout__main :is(
    .wp-block-woocommerce-checkout-contact-information-block,
    .wp-block-woocommerce-checkout-shipping-address-block,
    .wp-block-woocommerce-checkout-billing-address-block,
    .wp-block-woocommerce-checkout-shipping-method-block,
    .wp-block-woocommerce-checkout-shipping-methods-block,
    .wp-block-woocommerce-checkout-payment-block,
    .wp-block-woocommerce-checkout-order-note-block
) {
    padding: 22px 20px 22px !important;
    margin: 0 0 18px !important;
    overflow: visible;
}
.wc-block-checkout__main .wc-block-components-checkout-step__heading { margin: 0 0 14px !important; padding: 0 !important; }
.wc-block-checkout__main .wc-block-components-checkout-step__title { margin: 0 !important; line-height: 1.6; }
.wc-block-checkout__main .wc-block-components-checkout-step__container,
.wc-block-checkout__main .wc-block-components-checkout-step__content { padding: 0 !important; margin: 0 !important; }

/* کادر خالی بین اطلاعات تماس و آدرس */
.wc-block-checkout__main .wp-block-woocommerce-checkout-shipping-method-block:not(:has(input)),
.wc-block-checkout__main :is(
    .wp-block-woocommerce-checkout-shipping-method-block,
    .wp-block-woocommerce-checkout-shipping-methods-block
):empty { display: none !important; }

/* دایره‌های اضافی کنار عکس محصول در خلاصه سفارش */
.wc-block-components-order-summary-item__quantity { display: none !important; }

/* قیمت داخل کادر خلاصه سفارش بیرون نزند */
.wc-block-components-order-summary { overflow: hidden; padding: 4px 16px !important; }
.wc-block-components-order-summary-item { gap: 10px; flex-wrap: nowrap; }
.wc-block-components-order-summary-item__image { flex: 0 0 68px; width: 68px; }
.wc-block-components-order-summary-item__image img { width: 68px; height: 68px; }
.wc-block-components-order-summary-item__description { flex: 1 1 auto; min-width: 0; padding: 0 !important; }
.wc-block-components-order-summary-item__total-price,
.wc-block-components-order-summary-item__individual-prices .wc-block-components-product-price {
    font-size: 12.5px !important; white-space: nowrap; margin: 0 !important; padding: 0 !important;
}
.wc-block-components-order-summary-item__total-price { flex: none; }
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value { font-size: 17px; white-space: nowrap; }
.wc-block-components-totals-item__value { white-space: nowrap; }

/* عنوان صفحه و فاصله بالای صفحه */
body:is(.woocommerce-checkout, .woocommerce-cart) main :has(> h1) { margin-top: 0 !important; margin-bottom: 8px !important; padding-top: 8px !important; padding-bottom: 8px !important; }
body:is(.woocommerce-checkout, .woocommerce-cart) main h1 { margin: 0 !important; padding: 0 !important; line-height: 1.5; }
.wp-block-woocommerce-checkout, .wp-block-woocommerce-cart { margin-top: 0 !important; padding-top: 0 !important; }
.wc-block-checkout { margin-top: 0; }

/* ---------- موبایل: جمع‌وجورتر ---------- */
@media (max-width: 768px) {
    .wc-block-checkout__main :is(
        .wp-block-woocommerce-checkout-contact-information-block,
        .wp-block-woocommerce-checkout-shipping-address-block,
        .wp-block-woocommerce-checkout-billing-address-block,
        .wp-block-woocommerce-checkout-shipping-method-block,
        .wp-block-woocommerce-checkout-shipping-methods-block,
        .wp-block-woocommerce-checkout-payment-block,
        .wp-block-woocommerce-checkout-order-note-block
    ) { padding: 20px 14px 16px !important; margin: 0 0 10px !important; }

    .wc-block-checkout .wp-block-woocommerce-checkout-order-summary-block { padding: 12px !important; margin-bottom: 10px; }
    .wc-block-checkout__sidebar { margin-bottom: 10px !important; padding: 0 !important; }
    .wc-block-components-sidebar-layout,
    .wc-block-components-main { padding-top: 0 !important; margin-top: 0 !important; }
    .wc-block-components-checkout-step__heading { margin-bottom: 10px !important; }
}
