﻿/*
Theme Name: SetLab Child
Template: astra
*/

/* ==========================================================================
   SETLAB — Unified UI System
   RTL / Dark / Cyan
   ========================================================================== */


/* ==========================================================================
   DESIGN TOKENS
   ========================================================================== */

:root {
    --sl-bg: #0b131b;
    --sl-panel: #111827;
    --sl-panel-soft: #0e1822;
    --sl-panel-deep: #091119;

    --sl-text: #edf3f6;
    --sl-text-soft: #c4d0d8;
    --sl-muted: #9eafb9;
    --sl-dim: #718391;

    --sl-accent: #26d0ce;
    --sl-accent-hover: #63e8e4;
    --sl-accent-soft: rgba(38, 208, 206, .07);
    --sl-accent-border: rgba(38, 208, 206, .28);

    --sl-border: rgba(185, 211, 226, .13);
    --sl-border-soft: rgba(185, 211, 226, .075);

    --sl-success: #10b981;
    --sl-danger: #ef4444;

    --sl-radius-sm: 10px;
    --sl-radius-md: 12px;
    --sl-radius-lg: 16px;
    --sl-radius-xl: 20px;
    --sl-radius-pill: 999px;

    --sl-max: 1160px;

    --sl-font:
        "Vazirmatn",
        "Yekan Bakh",
        YekanBakh,
        IRANSans,
        Tahoma,
        sans-serif;

    --sl-shadow-soft: 0 12px 35px rgba(0, 0, 0, .18);
    --sl-shadow-card: 0 24px 65px rgba(0, 0, 0, .26);
    --sl-shadow-popup:
        0 24px 60px rgba(0, 0, 0, .48),
        0 0 35px rgba(38, 208, 206, .055);

    --sl-transition: .22s ease;
}


/* ==========================================================================
   RESET / FOUNDATION
   ========================================================================== */

*,
*::before,
*::after {
    box-sizing: border-box;
}

html {
    background: var(--sl-bg) !important;
    scroll-behavior: smooth;
}

body,
.site,
#page,
#main,
#content,
.site-content,
.wp-site-blocks,
.ast-separate-container .ast-article-single {
    background: var(--sl-bg) !important;
    color: var(--sl-text) !important;
}

body {
    margin: 0;
    font-family: var(--sl-font);
    font-size: 16px;
    line-height: 1.9;
    text-align: right;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

::selection {
    background: var(--sl-accent);
    color: #071719;
}

:where(h1, h2, h3, h4, h5, h6, p, figure, ul, ol) {
    margin: 0;
}

:where(h1, h2, h3, h4, h5, h6) {
    color: var(--sl-text) !important;
    font-family: inherit !important;
    font-weight: 700;
    letter-spacing: normal;
    text-wrap: balance;
}

h1 {
    font-size: clamp(32px, 3.7vw, 50px);
    line-height: 1.55;
}

h2 {
    font-size: clamp(25px, 2.7vw, 35px);
    line-height: 1.65;
}

h3 {
    font-size: 18px;
    line-height: 1.75;
}

p {
    text-wrap: pretty;
}

a {
    color: inherit;
    text-decoration: none;
    transition:
        color var(--sl-transition),
        opacity var(--sl-transition);
}

a:hover {
    color: var(--sl-accent-hover);
}

.ast-container,
.ast-plain-container {
    border: 0 !important;
    box-shadow: none !important;
}

[id] {
    scroll-margin-top: 100px;
}


/* ==========================================================================
   ASTRA HEADER
   ========================================================================== */

#masthead {
    position: sticky;
    top: 0;
    z-index: 9999;
}

.main-header-bar,
.ast-primary-header-bar {
    background: rgba(11, 19, 27, .86) !important;
    border-bottom: 1px solid var(--sl-border-soft) !important;
    box-shadow: none !important;
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}


/* ==========================================================================
   GENERIC SETLAB LAYOUT
   ========================================================================== */

.sl-wrap {
    width: min(var(--sl-max), calc(100% - 48px));
    margin-inline: auto;
}

.sl-section {
    padding-block: 80px;
}

.sl-divider {
    border-top: 1px solid var(--sl-border);
}

.sl-kicker {
    display: block;
    margin-bottom: 12px;
    color: var(--sl-accent);
    font-size: 12px;
    font-weight: 700;
}

.sl-body {
    color: var(--sl-muted);
    font-size: 15px;
    line-height: 2.1;
}

.sl-heading {
    max-width: 650px;
}

.sl-heading > p {
    margin-top: 14px;
}

.sl-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}


/* ==========================================================================
   BUTTON SYSTEM
   ========================================================================== */

:where(
    .sl-button,
    .wp-block-button__link,
    .woocommerce a.button,
    .woocommerce button.button,
    .woocommerce input.button,
    .woocommerce #respond input#submit,
    .wc-block-components-button,
    .wc-block-cart__submit-button,
    .wc-block-components-checkout-place-order-button,
    .woocommerce-checkout form.checkout .button,
    .widget_shopping_cart p.buttons .button
) {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px;

    min-height: 46px !important;
    padding: 11px 20px !important;

    border: 1px solid var(--sl-accent) !important;
    border-radius: var(--sl-radius-sm) !important;

    background: var(--sl-accent) !important;
    color: #071719 !important;

    font-family: var(--sl-font) !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 1.6 !important;
    text-align: center;
    text-decoration: none !important;

    cursor: pointer;

    transition:
        background var(--sl-transition),
        border-color var(--sl-transition),
        color var(--sl-transition),
        transform var(--sl-transition),
        box-shadow var(--sl-transition);
}

:where(
    .sl-button,
    .wp-block-button__link,
    .woocommerce a.button,
    .woocommerce button.button,
    .woocommerce input.button,
    .woocommerce #respond input#submit,
    .wc-block-components-button,
    .wc-block-cart__submit-button,
    .wc-block-components-checkout-place-order-button,
    .woocommerce-checkout form.checkout .button,
    .widget_shopping_cart p.buttons .button
):hover {
    background: var(--sl-accent-hover) !important;
    border-color: var(--sl-accent-hover) !important;
    color: #071719 !important;
    transform: translateY(-1px);
    box-shadow: 0 8px 24px rgba(38, 208, 206, .12);
}

.sl-button-secondary {
    background: rgba(255, 255, 255, .025) !important;
    border-color: var(--sl-border) !important;
    color: var(--sl-text) !important;
}

.sl-button-secondary:hover {
    background: rgba(255, 255, 255, .055) !important;
    border-color: rgba(185, 211, 226, .28) !important;
    color: var(--sl-text) !important;
    box-shadow: none;
}


/* ==========================================================================
   FORM SYSTEM
   ========================================================================== */

:where(
    input[type="text"],
    input[type="email"],
    input[type="tel"],
    input[type="password"],
    input[type="number"],
    input[type="search"],
    input[type="url"],
    input[type="date"],
    input[type="time"],
    textarea,
    select
) {
    width: 100%;
    min-height: 48px;
    padding: 12px 14px !important;

    background: var(--sl-panel-deep) !important;
    border: 1px solid var(--sl-border) !important;
    border-radius: var(--sl-radius-sm) !important;

    color: var(--sl-text) !important;
    font-family: var(--sl-font) !important;
    font-size: 14px !important;
    line-height: 1.6 !important;

    box-shadow: none !important;

    transition:
        border-color var(--sl-transition),
        background var(--sl-transition),
        box-shadow var(--sl-transition);
}

textarea {
    min-height: 120px;
    resize: vertical;
}

:where(input, textarea, select)::placeholder {
    color: var(--sl-dim) !important;
    opacity: 1;
}

:where(input, textarea, select):focus {
    background: var(--sl-panel) !important;
    border-color: var(--sl-accent) !important;
    box-shadow: 0 0 0 3px rgba(38, 208, 206, .07) !important;
    outline: none !important;
}

:where(input, textarea, select):disabled {
    opacity: .55;
    cursor: not-allowed;
}


/* ==========================================================================
   ACCESSIBILITY
   ========================================================================== */

:where(a, button, input, textarea, select, summary):focus-visible {
    outline: 2px solid var(--sl-accent) !important;
    outline-offset: 4px !important;
}


/* ==========================================================================
   WOOCOMMERCE TITLES
   ========================================================================== */

body.woocommerce-cart h1,
body.woocommerce-checkout h1,
.wc-block-cart__title,
.wc-block-checkout__title {
    color: var(--sl-text) !important;
    font-size: clamp(27px, 3vw, 32px) !important;
    font-weight: 700 !important;
    line-height: 1.5 !important;
    margin-bottom: 28px !important;
}


/* ==========================================================================
   WOOCOMMERCE NOTICES
   ========================================================================== */

.woocommerce-message,
.woocommerce-info,
.woocommerce-error,
.wc-block-components-notice-banner {
    margin-block: 18px !important;
    padding: 14px 17px !important;

    background: var(--sl-panel) !important;
    border: 1px solid var(--sl-border) !important;
    border-top: 2px solid var(--sl-accent) !important;
    border-radius: var(--sl-radius-md) !important;

    color: var(--sl-text) !important;
    line-height: 1.9 !important;
    box-shadow: var(--sl-shadow-soft) !important;
}

.woocommerce-error {
    border-top-color: var(--sl-danger) !important;
}

/* Only ordinary links inside notices are cyan.
   Buttons keep the SetLab button system. */
.woocommerce-message a:not(.button),
.woocommerce-info a:not(.button),
.woocommerce-error a:not(.button) {
    color: var(--sl-accent) !important;
    font-weight: 700 !important;
}


/* ==========================================================================
   CHECKOUT NOTICE — ICON CLEANUP ONLY
   ========================================================================== */

/* Current checkout error markup is UL > LI. */
body.woocommerce-checkout
.woocommerce-notices-wrapper
ul.woocommerce-error,
body.woocommerce-checkout
.woocommerce-notices-wrapper
ul.woocommerce-error > li {
    list-style: none !important;
    list-style-type: none !important;
    list-style-image: none !important;
}

/* Remove only WooCommerce/Astra leading notice icons.
   Do NOT touch ::after; it remains available for WooCommerce clearfix. */
body.woocommerce-checkout
.woocommerce-notices-wrapper
ul.woocommerce-error::before,
body.woocommerce-checkout
.woocommerce-notices-wrapper
ul.woocommerce-error > li::before,
body.woocommerce-checkout
.woocommerce-form-coupon-toggle
.woocommerce-info::before,
body.woocommerce-checkout
.woocommerce-message::before {
    content: none !important;
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;

    width: 0 !important;
    height: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    border: 0 !important;
    outline: 0 !important;

    background: none !important;
    background-color: transparent !important;
    background-image: none !important;

    box-shadow: none !important;

    position: static !important;

    color: transparent !important;
    font-size: 0 !important;
}


/* Cart button inside the checkout error notice. */
body.woocommerce-checkout
.woocommerce-notices-wrapper
ul.woocommerce-error
> li
> a.button.wc-forward,
body.woocommerce-checkout
.woocommerce-notices-wrapper
ul.woocommerce-error
> li
> a.button.wc-forward:visited,
body.woocommerce-checkout
.woocommerce-notices-wrapper
ul.woocommerce-error
> li
> a.button.wc-forward:focus,
body.woocommerce-checkout
.woocommerce-notices-wrapper
ul.woocommerce-error
> li
> a.button.wc-forward:active,
body.woocommerce-checkout
.woocommerce-notices-wrapper
ul.woocommerce-error
> li
> a.button.wc-forward:hover {
    color: #071719 !important;
    -webkit-text-fill-color: #071719 !important;
    text-shadow: none !important;
}

/* No pseudo content on this specific cart button. */
body.woocommerce-checkout
.woocommerce-notices-wrapper
ul.woocommerce-error
> li
> a.button.wc-forward::before {
    content: none !important;
    display: none !important;
}


/* Coupon link remains a plain text link. */
body.woocommerce-checkout
.woocommerce-form-coupon-toggle
.woocommerce-info
a.showcoupon,
body.woocommerce-checkout
.woocommerce-form-coupon-toggle
.woocommerce-info
a.showcoupon:visited,
body.woocommerce-checkout
.woocommerce-form-coupon-toggle
.woocommerce-info
a.showcoupon:focus,
body.woocommerce-checkout
.woocommerce-form-coupon-toggle
.woocommerce-info
a.showcoupon:active,
body.woocommerce-checkout
.woocommerce-form-coupon-toggle
.woocommerce-info
a.showcoupon:hover {
    color: var(--sl-accent) !important;
    -webkit-text-fill-color: var(--sl-accent) !important;

    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;

    border: 0 !important;
    box-shadow: none !important;
    text-decoration: none !important;
}

/* Safety: no icon on the coupon link itself. */
body.woocommerce-checkout
.woocommerce-form-coupon-toggle
.woocommerce-info
a.showcoupon::before {
    content: none !important;
    display: none !important;
}


/* ==========================================================================
   WOOCOMMERCE FORM ROWS
   ========================================================================== */

.woocommerce form .form-row {
    margin-bottom: 18px !important;
}

.woocommerce form .form-row label {
    display: block;
    margin-bottom: 8px !important;
    color: var(--sl-text-soft) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
}


/* ==========================================================================
   SELECT2
   ========================================================================== */

.select2-container .select2-selection--single {
    min-height: 48px !important;
    background: var(--sl-panel-deep) !important;
    border: 1px solid var(--sl-border) !important;
    border-radius: var(--sl-radius-sm) !important;
}

.select2-container--default
.select2-selection--single
.select2-selection__rendered {
    padding-inline: 14px !important;
    color: var(--sl-text) !important;
    line-height: 46px !important;
}

.select2-container--default
.select2-selection--single
.select2-selection__arrow {
    height: 46px !important;
}

.select2-container--default .select2-dropdown {
    overflow: hidden;
    background: var(--sl-panel) !important;
    border: 1px solid var(--sl-border) !important;
    border-radius: var(--sl-radius-sm) !important;
    box-shadow: var(--sl-shadow-popup) !important;
}

.select2-container--default .select2-results__option {
    padding: 9px 12px !important;
    background: var(--sl-panel) !important;
    color: var(--sl-muted) !important;
}

.select2-container--default
.select2-results__option--highlighted,
.select2-container--default
.select2-results__option[aria-selected="true"] {
    background: var(--sl-panel-soft) !important;
    color: var(--sl-accent) !important;
}


/* ==========================================================================
   WOOCOMMERCE TABLES
   ========================================================================== */

.woocommerce table.shop_table {
    width: 100% !important;
    background: var(--sl-panel) !important;

    border: 1px solid var(--sl-border) !important;
    border-radius: var(--sl-radius-lg) !important;

    border-collapse: separate !important;
    border-spacing: 0 !important;
    overflow: hidden !important;

    color: var(--sl-text-soft) !important;
}

.woocommerce table.shop_table thead,
.woocommerce table.shop_table thead tr,
.woocommerce table.shop_table th {
    background: var(--sl-panel-soft) !important;
}

.woocommerce table.shop_table th {
    padding: 14px 15px !important;
    border: 0 !important;
    border-bottom: 1px solid var(--sl-border) !important;
    color: var(--sl-text-soft) !important;
    font-weight: 700 !important;
}

.woocommerce table.shop_table td {
    padding: 15px !important;
    background: transparent !important;
    border: 0 !important;
    border-bottom: 1px solid var(--sl-border-soft) !important;
    color: var(--sl-muted) !important;
    vertical-align: middle !important;
}

.woocommerce table.shop_table tr:last-child td {
    border-bottom: 0 !important;
}

.woocommerce table.shop_table .amount {
    color: var(--sl-accent) !important;
    font-weight: 700 !important;
}

.woocommerce-Price-currencySymbol {
    margin-inline-start: 3px !important;
    opacity: .55 !important;
    font-size: .72em !important;
}


/* ==========================================================================
   CART PRODUCT
   ========================================================================== */

.woocommerce-cart table.cart td.product-thumbnail img {
    max-width: 64px !important;
    height: auto;
    border-radius: var(--sl-radius-sm) !important;
}

.woocommerce-cart table.cart td.product-name a {
    color: var(--sl-text) !important;
    font-weight: 600 !important;
}

.woocommerce-cart table.cart td.product-name a:hover {
    color: var(--sl-accent) !important;
}


/* ==========================================================================
   CART REMOVE
   ========================================================================== */

.woocommerce table.shop_table a.remove {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 28px !important;
    height: 28px !important;

    background: rgba(239, 68, 68, .055) !important;
    border: 1px solid rgba(239, 68, 68, .26) !important;
    border-radius: 50% !important;

    color: var(--sl-danger) !important;
    font-size: 16px !important;
}

.woocommerce table.shop_table a.remove:hover {
    background: var(--sl-danger) !important;
    border-color: var(--sl-danger) !important;
    color: #fff !important;
}


/* ==========================================================================
   CART QUANTITY
   ========================================================================== */

.woocommerce .quantity input.qty {
    width: 60px !important;
    height: 40px !important;
    padding: 0 !important;

    background: var(--sl-panel-deep) !important;
    border: 1px solid var(--sl-border) !important;
    border-radius: var(--sl-radius-sm) !important;

    color: var(--sl-text) !important;
    text-align: center !important;
}


/* ==========================================================================
   CART COUPON
   ========================================================================== */

.woocommerce-cart .coupon {
    display: flex !important;
    gap: 10px !important;
    width: 100% !important;
    margin-bottom: 18px !important;
}

.woocommerce-cart .coupon input.input-text {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    height: 48px !important;
    margin: 0 !important;
}

.woocommerce-cart .coupon .button {
    flex: 0 0 135px !important;
    height: 48px !important;
    margin: 0 !important;
}


/* ==========================================================================
   CART TOTALS
   ========================================================================== */

.cart_totals {
    padding: 24px !important;
    background: var(--sl-panel) !important;
    border: 1px solid var(--sl-border) !important;
    border-radius: var(--sl-radius-lg) !important;
    box-shadow: var(--sl-shadow-soft) !important;
}

.cart_totals h2 {
    margin-bottom: 12px !important;
    padding-bottom: 14px !important;
    background: transparent !important;
    border-bottom: 1px solid var(--sl-border) !important;
    color: var(--sl-text) !important;
    font-size: 20px !important;
}

.cart_totals table.shop_table {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

.cart_totals .wc-proceed-to-checkout {
    padding-bottom: 0 !important;
}

.cart_totals .wc-proceed-to-checkout a.checkout-button {
    width: 100% !important;
    min-height: 50px !important;
    margin-top: 18px !important;
    padding: 13px 18px !important;
    border-radius: var(--sl-radius-sm) !important;
    font-size: 15px !important;
    font-weight: 800 !important;
}


/* ==========================================================================
   CHECKOUT
   ========================================================================== */

.woocommerce-checkout #customer_details,
.woocommerce-checkout #order_review,
.woocommerce-checkout #order_review_heading {
    border: 0 !important;
    box-shadow: none !important;
}

.woocommerce-checkout .woocommerce-checkout-review-order,
.woocommerce-checkout #order_review {
    padding: 22px !important;
    background: var(--sl-panel) !important;
    border: 1px solid var(--sl-border) !important;
    border-radius: var(--sl-radius-lg) !important;
}

.woocommerce-checkout #payment {
    background: transparent !important;
}

.woocommerce-checkout .woocommerce-billing-fields h3,
.woocommerce-checkout #order_review_heading {
    margin-bottom: 24px !important;
    color: var(--sl-text) !important;
    font-size: 19px !important;
    font-weight: 700 !important;
}


/* ==========================================================================
   CHECKOUT PAYMENT BOX
   ========================================================================== */

.woocommerce-checkout #payment div.payment_box {
    background: var(--sl-panel-soft) !important;
    border: 1px solid var(--sl-border) !important;
    border-radius: var(--sl-radius-sm) !important;
    color: var(--sl-muted) !important;
    box-shadow: none !important;
}

.woocommerce-checkout #payment div.payment_box::before {
    display: none !important;
}


/* ==========================================================================
   CHECKOUT LOCKED FIELDS
   ========================================================================== */

.sl-locked-row {
    display: flex !important;
    gap: 14px !important;
    width: 100% !important;
}

.sl-locked-col {
    flex: 1 1 0 !important;
    min-width: 0 !important;
}

.sl-locked-container {
    width: 100% !important;
    margin-bottom: 18px !important;
}

.sl-locked-container > label {
    display: block !important;
    margin-bottom: 8px !important;
    color: var(--sl-text-soft) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
}

.sl-locked-box {
    display: flex !important;
    align-items: center !important;
    width: 100%;
    min-height: 50px !important;
    padding: 12px 15px !important;

    background: rgba(255, 255, 255, .025) !important;
    border: 1px solid var(--sl-border) !important;
    border-radius: var(--sl-radius-sm) !important;

    cursor: not-allowed !important;
    overflow: hidden !important;
}

.sl-locked-box .locked-text {
    color: #99a8b3 !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    overflow-wrap: anywhere !important;
}

.sl-verified-phone-box {
    justify-content: space-between !important;
    gap: 12px !important;
    background: rgba(16, 185, 129, .035) !important;
    border-color: rgba(16, 185, 129, .20) !important;
}

.sl-verified-phone-box .phone-number {
    direction: ltr !important;
    text-align: right !important;
    color: #99a8b3 !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    white-space: nowrap !important;
}

.sl-verified-phone-box .verified-badge {
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    flex: 0 0 auto !important;

    padding: 4px 9px !important;

    background: rgba(16, 185, 129, .09) !important;
    border: 1px solid rgba(16, 185, 129, .20) !important;
    border-radius: var(--sl-radius-pill) !important;

    color: var(--sl-success) !important;
    font-size: 11px !important;
    font-weight: 700 !important;
}

.sl-verified-phone-box .verified-badge svg {
    width: 13px !important;
    height: 13px !important;
}


/* ==========================================================================
   CHECKOUT LOGIN
   ========================================================================== */

.woocommerce-checkout .setlab-checkout-auth-message {
    display: block !important;
    width: 100% !important;
    color: var(--sl-muted) !important;
}

.woocommerce-checkout .setlab-checkout-auth-message .setlab-auth-link {
    color: var(--sl-accent) !important;
    font-weight: 700 !important;
}

.woocommerce-checkout .setlab-checkout-auth-message .setlab-auth-link:hover {
    color: var(--sl-accent-hover) !important;
}


/* ==========================================================================
   CHECKOUT TERMS
   ========================================================================== */

.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper {
    width: 100% !important;
    margin: 20px 0 !important;
}

.woocommerce-checkout
.woocommerce-terms-and-conditions-wrapper
.woocommerce-terms-and-conditions {
    width: 100% !important;
    max-height: 200px !important;
    padding: 15px !important;

    background: var(--sl-panel-deep) !important;
    border: 1px solid var(--sl-border) !important;
    border-radius: var(--sl-radius-sm) !important;

    color: var(--sl-muted) !important;
}

.woocommerce-checkout
.woocommerce-terms-and-conditions-wrapper
label.woocommerce-form__label {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;

    color: var(--sl-text-soft) !important;
    font-size: 13px !important;
}


/* ==========================================================================
   SETLAB — ASTRA HEADER CART
   Astra Customizer controls spacing / alignment.
   SetLab CSS controls popup + unwanted outline/rectangle.
   ========================================================================== */

@media (min-width: 922px) {

    html body .ast-header-woo-cart {
        position: relative !important;
        background: transparent !important;
        border: 0 !important;
        outline: 0 !important;
        box-shadow: none !important;
    }

    html body .ast-header-woo-cart .ast-site-header-cart {
        position: relative !important;
        background: transparent !important;
        border: 0 !important;
        border-radius: 0 !important;
        outline: 0 !important;
        box-shadow: none !important;
    }

    html body .ast-header-woo-cart .ast-site-header-cart-li {
        position: relative !important;
        background: transparent !important;
        border: 0 !important;
        outline: 0 !important;
        box-shadow: none !important;
    }

    html body .ast-header-woo-cart .ast-site-header-cart,
    html body .ast-header-woo-cart .ast-site-header-cart-li {
        overflow: visible !important;
    }

    html body .ast-header-woo-cart a.cart-container {
        background: transparent !important;
        border: 0 !important;
        border-radius: 0 !important;
        outline: 0 !important;
        box-shadow: none !important;
    }

    html body .ast-header-woo-cart .ast-addon-cart-wrap {
        background: transparent !important;
        border: 0 !important;
        border-radius: 0 !important;
        outline: 0 !important;
        box-shadow: none !important;
    }

    html body
    .ast-header-woo-cart
    .ast-site-header-cart.ast-menu-cart-outline,
    html body
    .ast-header-woo-cart
    .ast-site-header-cart.ast-menu-cart-with-border {
        background: transparent !important;
        border: 0 !important;
        border-width: 0 !important;
        border-style: none !important;
        border-color: transparent !important;
        outline: 0 !important;
        box-shadow: none !important;
    }

    html body .ast-header-woo-cart .astra-icon,
    html body .ast-header-woo-cart .ast-icon-shopping-cart,
    html body .ast-header-woo-cart .ast-icon-shopping-cart .icon-cart,
    html body .ast-header-woo-cart .ast-icon-shopping-cart svg {
        background: transparent !important;
        border: 0 !important;
        outline: 0 !important;
        box-shadow: none !important;
    }

    html body .ast-header-woo-cart i.astra-icon::after {
        border-radius: var(--sl-radius-pill) !important;
    }

    html body .ast-header-woo-cart::before,
    html body .ast-header-woo-cart::after,
    html body .ast-header-woo-cart .ast-site-header-cart::before,
    html body .ast-header-woo-cart .ast-site-header-cart::after,
    html body .ast-header-woo-cart .ast-site-header-cart-li::before,
    html body .ast-header-woo-cart .ast-site-header-cart-li::after,
    html body .ast-header-woo-cart .ast-addon-cart-wrap::before,
    html body .ast-header-woo-cart .ast-addon-cart-wrap::after,
    html body .ast-header-woo-cart .cart-container::before,
    html body .ast-header-woo-cart .cart-container::after {
        content: none !important;
        display: none !important;
        width: 0 !important;
        height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
    }

    html body .ast-header-woo-cart .ast-addon-cart-wrap:hover,
    html body .ast-header-woo-cart .ast-addon-cart-wrap:active,
    html body .ast-header-woo-cart .ast-addon-cart-wrap:focus,
    html body .ast-header-woo-cart .ast-addon-cart-wrap:focus-visible,
    html body .ast-header-woo-cart a.cart-container:hover,
    html body .ast-header-woo-cart a.cart-container:active,
    html body .ast-header-woo-cart a.cart-container:focus,
    html body .ast-header-woo-cart a.cart-container:focus-visible {
        background: transparent !important;
        border: 0 !important;
        outline: 0 !important;
        box-shadow: none !important;
    }

    html body .ast-header-woo-cart .ast-site-header-cart-data {
        position: absolute !important;
        top: calc(100% - 1px) !important;
        right: 0 !important;
        left: auto !important;

        width: 340px !important;
        max-width: calc(100vw - 30px) !important;

        height: auto !important;
        min-height: 0 !important;

        margin: 0 !important;
        padding: 0 !important;

        background: #0f172a !important;
        background-color: #0f172a !important;

        border: 1px solid rgba(185, 211, 226, .095) !important;
        border-radius: 16px !important;

        outline: 0 !important;
        box-shadow: var(--sl-shadow-popup) !important;

        overflow: hidden !important;
        box-sizing: border-box !important;

        z-index: 2147483647 !important;

        visibility: hidden !important;
        opacity: 0 !important;
        pointer-events: none !important;

        transform: translateY(0) !important;

        transition:
            opacity .16s ease,
            visibility 0s linear .16s !important;
    }

    html body
    .ast-header-woo-cart
    .ast-site-header-cart:hover
    .ast-site-header-cart-data,
    html body
    .ast-header-woo-cart
    .ast-site-header-cart:focus-within
    .ast-site-header-cart-data {
        visibility: visible !important;
        opacity: 1 !important;
        pointer-events: auto !important;
        transform: translateY(0) !important;
        transition:
            opacity .16s ease,
            transform .16s ease,
            visibility 0s linear 0s !important;
    }

    html body
    .ast-header-woo-cart
    .ast-site-header-cart-data
    .widget_shopping_cart {
        position: relative !important;
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        min-height: 0 !important;

        margin: 0 !important;
        padding: 20px !important;

        background: #0f172a !important;
        background-color: #0f172a !important;

        border: 0 !important;
        border-radius: 15px !important;
        box-shadow: none !important;
        box-sizing: border-box !important;
    }

    html body
    .ast-header-woo-cart
    .ast-site-header-cart-data
    .widget_shopping_cart_content {
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        background: #0f172a !important;
        background-color: #0f172a !important;
        border: 0 !important;
        box-shadow: none !important;
        box-sizing: border-box !important;
    }

    html body
    .ast-header-woo-cart
    .ast-site-header-cart-data::before {
        border-bottom-color: #0f172a !important;
    }

    html body
    .ast-header-woo-cart
    .ast-site-header-cart-data::after {
        border-bottom-color: rgba(185, 211, 226, .095) !important;
    }

    html body
    .ast-header-woo-cart
    .widget_shopping_cart
    ul.cart_list {
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        list-style: none !important;
        background: #0f172a !important;
    }

    html body
    .ast-header-woo-cart
    .woocommerce-mini-cart-item {
        position: relative !important;
        display: block !important;
        width: 100% !important;
        min-height: 50px !important;

        margin: 0 0 14px !important;
        padding: 0 58px 14px 38px !important;

        background: #0f172a !important;

        border-bottom: 1px solid var(--sl-border-soft) !important;
        text-align: right !important;
    }

    html body
    .ast-header-woo-cart
    .woocommerce-mini-cart-item:last-child {
        margin-bottom: 0 !important;
        padding-bottom: 0 !important;
        border-bottom: 0 !important;
    }

    html body
    .ast-header-woo-cart
    .woocommerce-mini-cart-item img {
        position: absolute !important;
        top: 50% !important;
        right: 0 !important;

        width: 44px !important;
        height: 44px !important;

        margin: 0 !important;
        transform: translateY(-50%) !important;

        object-fit: cover !important;
        border-radius: var(--sl-radius-sm) !important;
    }

    html body
    .ast-header-woo-cart
    .woocommerce-mini-cart-item
    a:not(.remove) {
        display: block !important;
        color: var(--sl-text-soft) !important;
        font-size: 13px !important;
        font-weight: 600 !important;
        line-height: 1.6 !important;
    }

    html body
    .ast-header-woo-cart
    .woocommerce-mini-cart-item
    a:not(.remove):hover {
        color: var(--sl-accent) !important;
    }

    html body
    .ast-header-woo-cart
    .woocommerce-mini-cart-item
    .quantity {
        display: block !important;
        margin-top: 5px !important;
        color: var(--sl-dim) !important;
        font-size: 12px !important;
    }

    html body
    .ast-header-woo-cart
    .woocommerce-mini-cart-item
    .quantity
    .amount {
        color: var(--sl-accent) !important;
        font-weight: 700 !important;
    }

    html body
    .ast-header-woo-cart
    .woocommerce-mini-cart-item
    a.remove {
        position: absolute !important;
        top: 50% !important;
        left: 0 !important;
        right: auto !important;

        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;

        width: 26px !important;
        height: 26px !important;

        margin: 0 !important;
        padding: 0 !important;

        transform: translateY(-50%) !important;

        background: transparent !important;
        border: 1px solid rgba(239, 68, 68, .28) !important;
        border-radius: 50% !important;

        color: var(--sl-danger) !important;
        font-size: 16px !important;
        z-index: 5 !important;
    }

    html body
    .ast-header-woo-cart
    .woocommerce-mini-cart-item
    a.remove:hover {
        background: var(--sl-danger) !important;
        border-color: var(--sl-danger) !important;
        color: #fff !important;
    }

    html body
    .ast-header-woo-cart
    .woocommerce-mini-cart__total.total {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;

        width: 100% !important;
        height: auto !important;

        margin: 16px 0 !important;
        padding: 14px 0 !important;

        background: #0f172a !important;

        border-top: 1px solid rgba(185, 211, 226, .16) !important;
        border-bottom: 1px solid rgba(185, 211, 226, .16) !important;

        color: #e7eef2 !important;
    }

    html body
    .ast-header-woo-cart
    .woocommerce-mini-cart__total.total
    strong {
        color: #e7eef2 !important;
        font-size: 13px !important;
        font-weight: 700 !important;
    }

    html body
    .ast-header-woo-cart
    .woocommerce-mini-cart__total.total
    .woocommerce-Price-amount,
    html body
    .ast-header-woo-cart
    .woocommerce-mini-cart__total.total
    .amount,
    html body
    .ast-header-woo-cart
    .woocommerce-mini-cart__total.total
    .woocommerce-Price-currencySymbol {
        color: var(--sl-accent) !important;
        font-size: 15px !important;
        font-weight: 800 !important;
    }

    html body
    .ast-header-woo-cart
    .widget_shopping_cart
    p.buttons {
        display: flex !important;
        flex-direction: column !important;
        gap: 9px !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    html body
    .ast-header-woo-cart
    .widget_shopping_cart
    p.buttons
    .button {
        display: inline-flex !important;
        width: 100% !important;
        min-height: 44px !important;
        margin: 0 !important;

        background: transparent !important;
        border-color: var(--sl-accent-border) !important;
        color: var(--sl-accent) !important;
    }

    html body
    .ast-header-woo-cart
    .widget_shopping_cart
    p.buttons
    .button:hover {
        background: var(--sl-accent) !important;
        border-color: var(--sl-accent) !important;
        color: #071719 !important;
    }

    html body
    .ast-header-woo-cart
    .widget_shopping_cart
    p.buttons
    .button.checkout {
        background: var(--sl-accent) !important;
        border-color: var(--sl-accent) !important;
        color: #071719 !important;
    }

    html body
    .ast-header-woo-cart
    .widget_shopping_cart
    p.buttons
    .button.checkout:hover {
        background: var(--sl-accent-hover) !important;
        border-color: var(--sl-accent-hover) !important;
    }
}


/* ==========================================================================
   EMPTY CART CLEANUP
   ========================================================================== */

@media (max-width: 921px) {
    html body .astra-cart-drawer-title::after,
    html body .astra-cart-drawer-header h3::after {
        content: "سبد خرید" !important;
        display: inline-block !important;
        color: var(--sl-text) !important;
        font-size: 18px !important;
        font-weight: 700 !important;
    }
}

html body
.ast-site-header-cart-data
.woocommerce-mini-cart__empty-message
~ .woocommerce-mini-cart__empty-message {
    display: none !important;
}

html body
.astra-cart-drawer
.woocommerce-mini-cart__empty-message
~ .woocommerce-mini-cart__empty-message {
    display: none !important;
}


/* ==========================================================================
   MOBILE CART DRAWER
   ========================================================================== */

@media (max-width: 921px) {

    html body #astra-mobile-cart-drawer,
    html body .astra-cart-drawer,
    html body .astra-cart-drawer-header,
    html body .astra-cart-drawer-content,
    html body #astra-mobile-cart-drawer .widget_shopping_cart,
    html body #astra-mobile-cart-drawer .widget_shopping_cart_content {
        background: #0f172a !important;
        opacity: 1 !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
    }

    html body .astra-cart-drawer-header {
        min-height: 58px !important;
        border-bottom: 1px solid var(--sl-border) !important;
    }

    html body .astra-cart-drawer-header,
    html body .astra-cart-drawer-header * {
        color: var(--sl-text) !important;
    }

    html body .astra-cart-drawer-title,
    html body .astra-cart-drawer-header h3 {
        font-size: 18px !important;
        line-height: 1.5 !important;
        color: var(--sl-text) !important;
    }

    html body .astra-cart-drawer-title::after,
    html body .astra-cart-drawer-header h3::after {
        content: none !important;
        display: none !important;
    }

    html body .astra-cart-drawer-close svg,
    html body .astra-cart-drawer-header .ast-close-svg {
        width: 20px !important;
        height: 20px !important;
        color: var(--sl-danger) !important;
        fill: currentColor !important;
    }

    html body .astra-cart-drawer-content {
        padding: 22px 18px !important;
    }
}


/* ==========================================================================
   GLOBAL MINI CART CONTENT
   ========================================================================== */

html body .widget_shopping_cart_content {
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding-bottom: 0 !important;

    background: #0f172a !important;
    opacity: 1 !important;

    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

html body .widget_shopping_cart ul.cart_list {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}


/* ==========================================================================
   ACCOUNT LAYOUT
   ========================================================================== */

body.woocommerce-account
.woocommerce:has(.woocommerce-MyAccount-navigation):has(.woocommerce-MyAccount-content) {
    display: flex !important;
    align-items: flex-start !important;
    gap: 24px !important;

    width: 100% !important;

    padding-top: 28px !important;
    padding-bottom: 55px !important;

    direction: rtl !important;
    box-sizing: border-box !important;
}


/* ==========================================================================
   ACCOUNT BACKGROUND
   ========================================================================== */

body.woocommerce-account,
body.woocommerce-account #page,
body.woocommerce-account #content,
body.woocommerce-account #main,
body.woocommerce-account .site-content {
    background: var(--sl-bg) !important;
    color: var(--sl-text) !important;
}


/* ==========================================================================
   ACCOUNT NAVIGATION
   ========================================================================== */

body.woocommerce-account .woocommerce-MyAccount-navigation {
    float: none !important;
    width: 225px !important;
    flex: 0 0 225px !important;
    margin: 0 !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation ul {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation ul li {
    margin: 0 0 8px !important;
    padding: 0 !important;
    border: 0 !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation ul li a {
    display: flex !important;
    align-items: center !important;

    min-height: 46px !important;
    padding: 11px 15px !important;

    box-sizing: border-box !important;

    background: transparent !important;
    border: 1px solid var(--sl-border) !important;
    border-radius: var(--sl-radius-md) !important;

    color: var(--sl-muted) !important;
    font-size: 13px !important;
    font-weight: 700 !important;

    text-decoration: none !important;

    transition:
        background var(--sl-transition),
        border-color var(--sl-transition),
        color var(--sl-transition),
        box-shadow var(--sl-transition) !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation ul li a:hover {
    background: var(--sl-panel) !important;
    border-color: rgba(185, 211, 226, .20) !important;
    color: var(--sl-text) !important;
}

body.woocommerce-account
.woocommerce-MyAccount-navigation
ul li.is-active a {
    background: var(--sl-accent-soft) !important;
    border-left: none !important;
    border-right: 3px solid var(--sl-accent) !important;
    border-top-color: var(--sl-accent-border) !important;
    border-bottom-color: var(--sl-accent-border) !important;
    color: var(--sl-accent) !important;
    box-shadow:
        inset -6px 0 18px rgba(38, 208, 206, .035),
        0 0 20px rgba(38, 208, 206, .035) !important;
}


/* ==========================================================================
   ACCOUNT LOGOUT
   ========================================================================== */

body.woocommerce-account
.woocommerce-MyAccount-navigation
ul li.woocommerce-MyAccount-navigation-link--customer-logout {
    margin-top: 14px !important;
    margin-bottom: 0 !important;
}

body.woocommerce-account
.woocommerce-MyAccount-navigation
ul li.woocommerce-MyAccount-navigation-link--customer-logout a {
    color: var(--sl-danger) !important;
}

body.woocommerce-account
.woocommerce-MyAccount-navigation
ul li.woocommerce-MyAccount-navigation-link--customer-logout a:hover {
    background: rgba(239, 68, 68, .045) !important;
    border-color: rgba(239, 68, 68, .20) !important;
    color: #ff7b89 !important;
}


/* ==========================================================================
   ACCOUNT MAIN CONTENT
   ========================================================================== */

body.woocommerce-account .woocommerce-MyAccount-content {
    float: none !important;
    width: auto !important;
    min-width: 0 !important;
    flex: 1 1 auto !important;

    margin: 0 !important;
    padding: 30px !important;

    background:
        linear-gradient(
            155deg,
            rgba(255, 255, 255, .018),
            rgba(255, 255, 255, .006)
        ) !important;

    border: 1px solid var(--sl-border) !important;
    border-radius: var(--sl-radius-xl) !important;
    box-shadow: var(--sl-shadow-card) !important;

    box-sizing: border-box !important;
}


/* ==========================================================================
   DASHBOARD CLEANUP
   ========================================================================== */

body.setlab-account-dashboard
.woocommerce-MyAccount-content > p {
    display: none !important;
}


/* ==========================================================================
   ACCOUNT HEADINGS
   ========================================================================== */

body.woocommerce-account .woocommerce-MyAccount-content h2 {
    margin: 0 0 20px !important;
    padding: 0 0 13px !important;

    background: transparent !important;
    border: 0 !important;
    border-bottom: 1px solid var(--sl-border) !important;

    color: var(--sl-text) !important;
    font-size: 21px !important;
    font-weight: 700 !important;
}

body.woocommerce-account .woocommerce-MyAccount-content h3 {
    color: var(--sl-text) !important;
}

body.woocommerce-account
.woocommerce-MyAccount-content
a:not(.button) {
    color: var(--sl-accent) !important;
    text-decoration: none !important;
}


/* ==========================================================================
   ACCOUNT TABLES
   ========================================================================== */

body.woocommerce-account .woocommerce-MyAccount-content table {
    width: 100% !important;

    background: var(--sl-panel) !important;
    border: 1px solid var(--sl-border) !important;
    border-radius: var(--sl-radius-lg) !important;

    border-collapse: separate !important;
    border-spacing: 0 !important;
    overflow: hidden !important;
}

body.woocommerce-account
.woocommerce-MyAccount-content
table thead th {
    padding: 15px 14px !important;

    background: var(--sl-panel-soft) !important;
    border: 0 !important;
    border-bottom: 1px solid var(--sl-border) !important;

    color: var(--sl-text-soft) !important;
}

body.woocommerce-account
.woocommerce-MyAccount-content
table tbody td {
    padding: 14px !important;

    background: transparent !important;
    border: 0 !important;
    border-bottom: 1px solid var(--sl-border-soft) !important;

    color: var(--sl-muted) !important;

    overflow-wrap: anywhere !important;
    vertical-align: middle !important;
}

body.woocommerce-account
.woocommerce-MyAccount-content
table tbody tr:last-child td {
    border-bottom: 0 !important;
}


/* ==========================================================================
   LICENSE TABLE
   ========================================================================== */

body.woocommerce-account
.woocommerce-MyAccount-content
table.setlab-license-table {
    background: var(--sl-panel) !important;
}

body.woocommerce-account
.woocommerce-MyAccount-content
table.setlab-license-table
.setlab-license-action-cell,
body.woocommerce-account
.woocommerce-MyAccount-content
table.setlab-license-table
.setlab-action-button {
    display: none !important;
}

body.woocommerce-account
.woocommerce-MyAccount-content
table.setlab-license-table
.sl-license-key-cell {
    direction: ltr !important;
    text-align: left !important;
    white-space: normal !important;

    font-family:
        ui-monospace,
        "Cascadia Code",
        Consolas,
        monospace !important;

    color: var(--sl-text-soft) !important;
    font-size: 13px !important;
    letter-spacing: .15px !important;
}

body.woocommerce-account
.woocommerce-MyAccount-content
table.setlab-license-table
.sl-license-key-cell > a {
    color: var(--sl-text-soft) !important;
    font-family:
        ui-monospace,
        "Cascadia Code",
        Consolas,
        monospace !important;
}


/* ==========================================================================
   LICENSE EMPTY MESSAGE
   ========================================================================== */

body.woocommerce-account
.woocommerce-MyAccount-content
.woocommerce-Message.woocommerce-info {
    position: relative !important;
    display: block !important;

    width: 100% !important;
    min-height: auto !important;

    margin: 0 0 22px !important;
    padding: 16px 18px !important;

    background: var(--sl-panel) !important;

    border: 1px solid var(--sl-border) !important;
    border-top: 2px solid var(--sl-accent) !important;
    border-radius: var(--sl-radius-md) !important;

    color: var(--sl-text-soft) !important;
    line-height: 1.9 !important;

    box-shadow: none !important;
}

body.woocommerce-account
.woocommerce-MyAccount-content
.woocommerce-Message.woocommerce-info::before,
body.woocommerce-account
.woocommerce-MyAccount-content
.woocommerce-Message.woocommerce-info::after {
    content: none !important;
    display: none !important;
}


/* ==========================================================================
   LICENSE ACTIVATION HELP
   ========================================================================== */

body.woocommerce-account
.woocommerce-MyAccount-content
.sl-license-help {
    width: 100% !important;
    margin: 24px 0 0 !important;
    padding: 20px !important;

    background: rgba(38, 208, 206, .025) !important;
    border: 1px solid rgba(38, 208, 206, .14) !important;
    border-radius: var(--sl-radius-lg) !important;
    box-sizing: border-box !important;
}

.sl-license-help-content {
    width: 100% !important;
}

.sl-license-help-title {
    margin: 0 0 10px !important;
    color: var(--sl-text) !important;
    font-size: 15px !important;
    font-weight: 800 !important;
}

.sl-license-help-text {
    margin: 0 !important;
    color: var(--sl-muted) !important;
    font-size: 13px !important;
    line-height: 2.05 !important;
}

.sl-license-help-text strong {
    color: var(--sl-text-soft) !important;
}

.sl-license-help-note {
    margin: 8px 0 0 !important;
    color: var(--sl-text-soft) !important;
    font-size: 12.5px !important;
    line-height: 2 !important;
}

.sl-license-help-note strong {
    color: var(--sl-text) !important;
}


/* ==========================================================================
   LICENSE VIDEO PLACEHOLDER
   ========================================================================== */

.sl-license-video-placeholder {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;

    width: 100% !important;
    min-height: 210px !important;

    margin: 22px 0 0 !important;
    padding: 28px 20px !important;

    background: #0a141e !important;
    border: 1px dashed rgba(185, 211, 226, .18) !important;
    border-radius: var(--sl-radius-md) !important;

    color: var(--sl-muted) !important;
    text-align: center !important;
}

.sl-license-video-icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: 58px !important;
    height: 58px !important;

    margin: 0 0 12px !important;

    background: rgba(38, 208, 206, .07) !important;
    border: 1px solid rgba(38, 208, 206, .18) !important;
    border-radius: 50% !important;

    color: var(--sl-accent) !important;
}

.sl-license-video-title {
    margin: 0 0 4px !important;
    color: var(--sl-text-soft) !important;
    font-size: 14px !important;
    font-weight: 700 !important;
}

.sl-license-video-caption {
    color: var(--sl-dim) !important;
    font-size: 11.5px !important;
    line-height: 1.8 !important;
}


/* ==========================================================================
   LICENSE COPY BUTTON
   ========================================================================== */

body.woocommerce-account
.woocommerce-MyAccount-content
.sl-copy-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: 31px !important;
    height: 31px !important;
    min-width: 31px !important;
    min-height: 31px !important;

    flex: 0 0 auto !important;

    margin-inline-end: 8px !important;
    padding: 0 !important;

    background: rgba(38, 208, 206, .07) !important;
    border: 1px solid rgba(38, 208, 206, .28) !important;
    border-radius: 7px !important;

    color: var(--sl-accent) !important;

    cursor: pointer !important;
    box-shadow: none !important;

    transition:
        background var(--sl-transition),
        border-color var(--sl-transition),
        color var(--sl-transition),
        transform var(--sl-transition),
        box-shadow var(--sl-transition) !important;
}

body.woocommerce-account
.woocommerce-MyAccount-content
.sl-copy-btn:hover {
    background: var(--sl-accent) !important;
    border-color: var(--sl-accent) !important;
    color: #071719 !important;
    transform: translateY(-1px);
}

body.woocommerce-account
.woocommerce-MyAccount-content
.sl-copy-btn.is-copied {
    background: rgba(16, 185, 129, .14) !important;
    border-color: rgba(16, 185, 129, .34) !important;
    color: var(--sl-success) !important;
    box-shadow: 0 0 16px rgba(16, 185, 129, .08) !important;
}


/* ==========================================================================
   LICENSE STATUS
   ========================================================================== */

body.woocommerce-account
.woocommerce-MyAccount-content
.sl-license-status-cell {
    text-align: center !important;
    white-space: nowrap !important;
}

body.woocommerce-account
.woocommerce-MyAccount-content
.sl-license-badge {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    min-height: 28px !important;
    padding: 4px 10px !important;

    border-radius: 6px !important;

    font-size: 12px !important;
    line-height: 1.5 !important;
    font-weight: 700 !important;

    white-space: nowrap !important;
}

body.woocommerce-account
.woocommerce-MyAccount-content
.sl-license-badge.is-active {
    background: rgba(16, 185, 129, .15) !important;
    border: 1px solid rgba(16, 185, 129, .30) !important;
    color: #10b981 !important;
}

body.woocommerce-account
.woocommerce-MyAccount-content
.sl-license-badge.is-expired {
    background: rgba(239, 68, 68, .15) !important;
    border: 1px solid rgba(239, 68, 68, .30) !important;
    color: #ef4444 !important;
}


/* ==========================================================================
   ACCOUNT FORMS
   ========================================================================== */

body.woocommerce-account
.woocommerce-MyAccount-content
form .form-row label {
    margin-bottom: 8px !important;
    color: var(--sl-text-soft) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
}

body.woocommerce-account
.woocommerce-MyAccount-content
form input.input-text,
body.woocommerce-account
.woocommerce-MyAccount-content
form input[type="email"],
body.woocommerce-account
.woocommerce-MyAccount-content
form input[type="text"],
body.woocommerce-account
.woocommerce-MyAccount-content
form input[type="password"],
body.woocommerce-account
.woocommerce-MyAccount-content
form input[type="tel"],
body.woocommerce-account
.woocommerce-MyAccount-content
form textarea {
    width: 100% !important;
    box-sizing: border-box !important;
    padding: 13px 14px !important;

    background: var(--sl-panel-deep) !important;
    border: 1px solid var(--sl-border) !important;
    border-radius: var(--sl-radius-sm) !important;

    color: var(--sl-text) !important;
}


/* ==========================================================================
   VERIFIED PHONE
   ========================================================================== */

.sl-phone-container {
    width: 100% !important;
    margin: 0 0 24px !important;
}

.sl-phone-container > label {
    display: block !important;
    margin-bottom: 8px !important;
    color: var(--sl-text-soft) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
}

.sl-verified-phone-box {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;

    min-height: 50px !important;
    padding: 11px 14px !important;

    background: rgba(16, 185, 129, .035) !important;
    border: 1px solid rgba(16, 185, 129, .20) !important;
    border-radius: var(--sl-radius-sm) !important;

    box-sizing: border-box !important;
}

.sl-verified-phone-box .phone-number {
    direction: ltr !important;
    text-align: right !important;

    color: var(--sl-text) !important;
    font-size: 14px !important;
    font-weight: 700 !important;
}

.sl-verified-phone-box .verified-badge {
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;

    padding: 4px 9px !important;

    background: rgba(16, 185, 129, .09) !important;
    border: 1px solid rgba(16, 185, 129, .20) !important;
    border-radius: var(--sl-radius-pill) !important;

    color: var(--sl-success) !important;
    font-size: 11px !important;
    font-weight: 700 !important;
}


/* ==========================================================================
   DASHBOARD
   ========================================================================== */

.setlab-custom-dashboard {
    display: flex !important;
    align-items: center !important;
    gap: 28px !important;
}

.setlab-dash-image {
    flex: 0 0 180px !important;
    text-align: center !important;
}

.setlab-dash-image img {
    display: block !important;
    width: 100% !important;
    max-width: 180px !important;
    height: auto !important;
    margin: 0 auto !important;
}

.setlab-dash-text {
    flex: 1 1 auto !important;
    min-width: 0 !important;
}

.setlab-dash-text h3 {
    margin: 0 0 10px !important;
    color: var(--sl-text) !important;
    font-size: 22px !important;
    font-weight: 800 !important;
}

.setlab-dash-text p {
    margin: 0 !important;
    color: var(--sl-muted) !important;
    font-size: 14px !important;
    line-height: 2 !important;
}


/* ==========================================================================
   HARDWARE RESET
   ========================================================================== */

.sl-reset-panel {
    max-width: 760px !important;
    margin: 0 auto !important;
}

.sl-reset-panel h2 {
    color: var(--sl-text) !important;
}

.sl-reset-intro {
    margin: 0 0 22px !important;
    color: var(--sl-muted) !important;
    font-size: 14px !important;
    line-height: 2 !important;
}

.sl-usage-stats {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 12px !important;

    margin: 20px 0 24px !important;
}

.sl-usage-stat {
    padding: 15px 17px !important;
    background: var(--sl-panel-soft) !important;
    border: 1px solid var(--sl-border) !important;
    border-radius: var(--sl-radius-md) !important;
}

.sl-usage-stat-label {
    display: block !important;
    margin-bottom: 5px !important;
    color: var(--sl-dim) !important;
    font-size: 11px !important;
}

.sl-usage-stat-value {
    color: var(--sl-accent) !important;
    font-size: 20px !important;
    font-weight: 800 !important;
}

.sl-reset-form {
    padding: 20px !important;
    background: rgba(255, 255, 255, .012) !important;
    border: 1px solid var(--sl-border) !important;
    border-radius: var(--sl-radius-lg) !important;
}

.sl-reset-label {
    display: block !important;
    margin-bottom: 8px !important;
    color: var(--sl-text-soft) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
}

.sl-reset-input {
    width: 100% !important;
    box-sizing: border-box !important;
    padding: 13px 14px !important;

    background: var(--sl-panel-deep) !important;
    border: 1px solid var(--sl-border) !important;
    border-radius: var(--sl-radius-sm) !important;

    color: var(--sl-text) !important;

    direction: ltr !important;
    text-align: left !important;

    font-family:
        ui-monospace,
        Consolas,
        monospace !important;
}

.sl-reset-submit {
    margin-top: 16px !important;
    min-height: 45px !important;
    padding: 11px 20px !important;

    background: var(--sl-accent) !important;
    border: 1px solid var(--sl-accent) !important;
    border-radius: 10px !important;

    color: #071719 !important;
    font-size: 13px !important;
    font-weight: 800 !important;

    cursor: pointer !important;
}

.sl-reset-submit:hover {
    background: var(--sl-accent-hover) !important;
    border-color: var(--sl-accent-hover) !important;
}

.sl-reset-submit:disabled {
    opacity: .4;
    cursor: not-allowed !important;
}

.sl-activation-help {
    margin-top: 20px !important;
    padding: 18px 20px !important;

    background: rgba(38, 208, 206, .035) !important;
    border: 1px solid rgba(38, 208, 206, .14) !important;
    border-radius: var(--sl-radius-md) !important;
}

.sl-activation-help-title {
    margin: 0 0 7px !important;
    color: var(--sl-text) !important;
    font-size: 14px !important;
    font-weight: 800 !important;
}

.sl-activation-help-text {
    margin: 0 !important;
    color: var(--sl-muted) !important;
    font-size: 12.5px !important;
    line-height: 2 !important;
}

.sl-activation-help-text strong {
    color: var(--sl-text-soft) !important;
}


/* ==========================================================================
   ACCOUNT FORM CLEANUP
   ========================================================================== */

.woocommerce-EditAccountForm
.form-row:has(input[name*="phone"]),
.woocommerce-EditAccountForm
.form-row:has(input[name*="mobile"]),
.woocommerce-EditAccountForm
.form-row:has(input[name*="cell"]),
.woocommerce-EditAccountForm
.form-row:has(input[name*="digits"]),
.woocommerce-EditAccountForm
.form-row:has(input[type="email"]) {
    display: none !important;
}


/* ==========================================================================
   CUSTOMER DETAILS
   ========================================================================== */

.woocommerce-customer-details address {
    padding: 18px !important;
    background: var(--sl-panel-soft) !important;
    border: 1px solid var(--sl-border) !important;
    border-radius: var(--sl-radius-md) !important;
    color: var(--sl-muted) !important;
    line-height: 2 !important;
}

.woocommerce-customer-details--email {
    display: none !important;
}


/* ==========================================================================
   SCROLL TOP
   ========================================================================== */

#scroll-up,
.ast-scroll-top,
#ast-scroll-top {
    width: 42px !important;
    height: 42px !important;

    background: var(--sl-panel) !important;
    border: 1px solid var(--sl-accent-border) !important;
    border-radius: var(--sl-radius-sm) !important;

    color: var(--sl-accent) !important;

    box-shadow: var(--sl-shadow-soft) !important;

    transition:
        background var(--sl-transition),
        color var(--sl-transition),
        border-color var(--sl-transition);
}

#scroll-up:hover,
.ast-scroll-top:hover,
#ast-scroll-top:hover {
    background: var(--sl-accent) !important;
    border-color: var(--sl-accent) !important;
    color: #071719 !important;
}


/* ==========================================================================
   TABLET / MOBILE
   ========================================================================== */

@media (max-width: 900px) {

    body.woocommerce-account
    .woocommerce:has(.woocommerce-MyAccount-navigation):has(.woocommerce-MyAccount-content) {
        flex-direction: column !important;
        gap: 18px !important;
    }

    body.woocommerce-account .woocommerce-MyAccount-navigation {
        width: 100% !important;
        flex: 0 0 auto !important;
    }

    body.woocommerce-account .woocommerce-MyAccount-navigation ul {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 8px !important;
    }

    body.woocommerce-account .woocommerce-MyAccount-navigation ul li {
        margin: 0 !important;
    }

    body.woocommerce-account
    .woocommerce-MyAccount-navigation
    ul li a {
        min-height: 44px !important;
        justify-content: center !important;
        text-align: center !important;
    }

    body.woocommerce-account .woocommerce-MyAccount-content {
        width: 100% !important;
        padding: 22px 18px !important;
        border-radius: var(--sl-radius-lg) !important;
    }

    .setlab-custom-dashboard {
        flex-direction: column !important;
        text-align: center !important;
    }

    .setlab-dash-image {
        flex: none !important;
        max-width: 135px !important;
    }

    .sl-usage-stats {
        grid-template-columns: 1fr !important;
    }

    .sl-license-help {
        padding: 17px !important;
    }

    .sl-license-video-placeholder {
        min-height: 180px !important;
    }
}


/* ==========================================================================
   MOBILE
   ========================================================================== */

@media (max-width: 768px) {

    h1,
    h1.entry-title,
    h1.page-title,
    h1.wp-block-heading {
        font-size: 30px !important;
        line-height: 1.5 !important;
    }

    h2 {
        font-size: 25px !important;
    }

    h3 {
        font-size: 19px !important;
    }

    .sl-wrap {
        width: calc(100% - 32px);
    }

    .sl-actions {
        flex-direction: column;
    }

    .sl-actions .sl-button {
        width: 100%;
    }

    .sl-locked-row {
        flex-direction: column !important;
        gap: 0 !important;
    }

    .sl-locked-col {
        width: 100% !important;
    }

    .woocommerce-cart .coupon {
        flex-direction: column !important;
    }

    .woocommerce-cart .coupon input.input-text,
    .woocommerce-cart .coupon .button {
        width: 100% !important;
        flex: 1 1 auto !important;
    }

    .woocommerce table.shop_table {
        border-radius: var(--sl-radius-md) !important;
    }

    .cart_totals {
        padding: 18px !important;
    }

    .woocommerce-checkout .woocommerce-checkout-review-order,
    .woocommerce-checkout #order_review {
        padding: 18px !important;
        border-radius: var(--sl-radius-md) !important;
    }

    body.woocommerce-account
    .woocommerce-MyAccount-content
    table.setlab-license-table
    .sl-license-key-cell {
        min-width: 180px !important;
        font-size: 12px !important;
    }

    body.woocommerce-account
    .woocommerce-MyAccount-content
    .sl-license-badge {
        min-height: 26px !important;
        padding: 3px 8px !important;
        font-size: 11px !important;
    }

    body.woocommerce-account
    .woocommerce-MyAccount-content
    .sl-copy-btn {
        width: 29px !important;
        height: 29px !important;
        min-width: 29px !important;
        min-height: 29px !important;
        margin-inline-end: 6px !important;
    }

    .sl-license-help-title {
        font-size: 14px !important;
    }

    .sl-license-help-text {
        font-size: 12.5px !important;
    }
}


/* ==========================================================================
   SMALL MOBILE
   ========================================================================== */

@media (max-width: 520px) {

    .sl-verified-phone-box {
        flex-direction: column !important;
        justify-content: center !important;
        text-align: center !important;
    }

    body.woocommerce-account .woocommerce-MyAccount-content {
        padding: 18px 14px !important;
    }

    body.woocommerce-account .woocommerce-MyAccount-navigation ul {
        grid-template-columns: 1fr !important;
    }

    body.woocommerce-account
    .woocommerce-MyAccount-navigation
    ul li a {
        justify-content: flex-start !important;
        text-align: right !important;
    }

    .sl-license-video-placeholder {
        min-height: 165px !important;
        padding: 22px 14px !important;
    }

    .sl-license-video-title {
        font-size: 13px !important;
    }

    .sl-license-video-caption {
        font-size: 11px !important;
    }
}


/* ==========================================================================
   REDUCED MOTION
   ========================================================================== */

@media (prefers-reduced-motion: reduce) {

    html {
        scroll-behavior: auto;
    }

    *,
    *::before,
    *::after {
        scroll-behavior: auto !important;
        transition-duration: .01ms !important;
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
    }
}
