:root {
    --jw-ink: #070707;
    --jw-soft: #101010;
    --jw-blue: #0b72e5;
    --jw-blue-dark: #0a58b4;
    --jw-red: #e8151d;
    --jw-yellow: #f4e04d;
    --jw-line: rgba(255, 255, 255, 0.14);
    --jw-muted: rgba(255, 255, 255, 0.55);
}

body.woocommerce-checkout,
body.woocommerce-cart,
body.woocommerce-account,
body.woocommerce-order-received {
    background: var(--jw-ink) !important;
    color: #fff !important;
    font-family: "Inter", system-ui, sans-serif !important;
}

body.woocommerce-checkout header.wp-block-template-part,
body.woocommerce-cart header.wp-block-template-part,
body.woocommerce-account header.wp-block-template-part,
body.woocommerce-order-received header.wp-block-template-part,
body.woocommerce-checkout footer.wp-block-template-part,
body.woocommerce-cart footer.wp-block-template-part,
body.woocommerce-account footer.wp-block-template-part,
body.woocommerce-order-received footer.wp-block-template-part {
    display: none !important;
}

.jw-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1rem 1.5rem;
    background: var(--jw-soft);
    border-bottom: 3px solid var(--jw-yellow);
}

.jw-bar__logo {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    text-decoration: none;
}

.jw-bar__logo img {
    height: 44px;
    width: auto;
}

.jw-bar__logo span {
    font-family: "Montserrat", sans-serif;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    color: #fff;
    font-size: 1rem;
}

.jw-bar__back {
    font-size: 0.8rem;
    color: var(--jw-muted);
    text-decoration: none;
    transition: color 0.2s;
}

.jw-bar__back:hover {
    color: var(--jw-yellow);
}

body.woocommerce-checkout h1,
body.woocommerce-checkout h2,
body.woocommerce-checkout h3,
body.woocommerce-cart h1,
body.woocommerce-order-received h1,
body.woocommerce-order-received h2,
body.woocommerce-account h1 {
    font-family: "Montserrat", sans-serif !important;
    font-weight: 800 !important;
    text-transform: uppercase;
    letter-spacing: -0.01em;
    color: #fff !important;
}

.wc-block-components-form .wc-block-components-text-input input,
.wc-block-components-text-input input,
.wc-block-components-textarea,
.wc-block-components-combobox input,
.wc-block-components-select select,
input[type="text"],
input[type="email"],
input[type="tel"],
textarea,
select {
    background: var(--jw-soft) !important;
    color: #fff !important;
    border: 1px solid rgba(255, 255, 255, 0.35) !important;
    border-radius: 0 !important;
}

.wc-block-components-text-input input:focus,
input[type="text"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus,
textarea:focus,
select:focus {
    border-color: var(--jw-blue) !important;
    box-shadow: none !important;
    outline: none !important;
}

.wc-block-components-text-input label,
.wc-block-components-checkout-step__title,
.wc-block-components-title,
label {
    color: rgba(255, 255, 255, 0.75) !important;
}

.wc-block-components-text-input.is-active label {
    color: var(--jw-muted) !important;
}

.wc-block-components-sidebar,
.wc-block-components-order-summary,
.wc-block-components-panel,
.wc-block-checkout__sidebar .wc-block-components-sidebar {
    background: var(--jw-soft) !important;
    border: 1px solid var(--jw-line) !important;
    border-radius: 0 !important;
    color: #fff !important;
}

.wc-block-components-order-summary-item__description,
.wc-block-components-product-details,
.wc-block-components-totals-item__label,
.wc-block-components-totals-item__value {
    color: rgba(255, 255, 255, 0.75) !important;
}

.wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
    color: var(--jw-yellow) !important;
    font-family: "Montserrat", sans-serif !important;
    font-weight: 800 !important;
}

.wc-block-components-checkout-place-order-button,
.wc-block-cart__submit-button,
button.wc-block-components-button,
.woocommerce-button,
.button {
    background: var(--jw-blue) !important;
    color: #fff !important;
    border: none !important;
    border-radius: 0 !important;
    font-family: "Montserrat", sans-serif !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    transition: background-color 0.25s !important;
}

.wc-block-components-checkout-place-order-button:hover,
.wc-block-cart__submit-button:hover,
button.wc-block-components-button:hover,
.button:hover {
    background: var(--jw-blue-dark) !important;
}

.wc-block-components-notice-banner,
.woocommerce-message,
.woocommerce-info {
    background: var(--jw-soft) !important;
    color: #fff !important;
    border: 1px solid var(--jw-line) !important;
    border-left: 4px solid var(--jw-yellow) !important;
    border-radius: 0 !important;
}

.wc-block-components-notice-banner.is-error,
.woocommerce-error {
    border-left-color: var(--jw-red) !important;
}

body.woocommerce-checkout a,
body.woocommerce-cart a,
body.woocommerce-order-received a,
body.woocommerce-account a {
    color: var(--jw-yellow) !important;
}

.woocommerce-order table,
.woocommerce table.shop_table {
    border: 1px solid var(--jw-line) !important;
    color: #fff !important;
}

.woocommerce table.shop_table th,
.woocommerce table.shop_table td {
    border-color: var(--jw-line) !important;
    color: rgba(255, 255, 255, 0.8) !important;
}

.woocommerce-order .woocommerce-order-details__title,
.woocommerce-order .woocommerce-column__title {
    color: #fff !important;
}

.woocommerce-order address {
    color: rgba(255, 255, 255, 0.7) !important;
    border-color: var(--jw-line) !important;
}

.woocommerce-table--order-downloads td:first-child a,
.woocommerce-table__product-name a {
    pointer-events: none;
    color: rgba(255, 255, 255, 0.8) !important;
    text-decoration: none !important;
}