/*
Theme Name: NoBrandClothes
Theme URI: https://nobrandclothes.com
Author: ajzak
Description: NOBRANDCLOTHES
Version: 1.1.8
Text Domain: nobrandclothes
*/

:root {
    --bg-color: #000000;
    --text-color: #FFFFFF;
    --tech-gray: #111111;
    /* Darker gray for subtle contrast */
    --tech-border: #333333;
    --accent-white: #FFFFFF;
    --font-main: 'Courier New', Courier, monospace;
    --spacing-unit: 2rem;
}

/* RESET & TYPOGRAPHY */
* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

html {
    scroll-behavior: smooth;
}

body {
    background-color: var(--bg-color);
    color: var(--text-color);
    font-family: var(--font-main);
    line-height: 1.6;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    -webkit-font-smoothing: none;
}

a {
    text-decoration: none;
    color: inherit;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: 400;
    letter-spacing: 0.1em;
    margin-bottom: 1rem;
}

/* LAYOUT UTILS */
.container {
    /* max-width: 1440px; */
    margin: 0 auto;
    padding: 0 20px;
    border-left: 1px solid var(--tech-border);
    border-right: 1px solid var(--tech-border);
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}

section .container {
    min-height: auto;
}

/* HEADER */
.site-header {
    padding: 1.5rem 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: var(--bg-color);
    position: sticky;
    top: 0;
    z-index: 100;
    /* border-bottom: 1px solid var(--accent-white); */
    flex-wrap: wrap;
    gap: 1rem;
}

.site-branding h1,
.site-branding .site-title {
    font-size: 1.2rem;
    margin: 0;
    letter-spacing: 0.1em;
}

.main-navigation ul {
    display: flex;
    list-style: none;
    gap: 1.5rem;
    padding: 0;
    margin: 0;
}

.header-meta {
    display: flex;
    gap: 1rem;
    align-items: center;
}

/* Account Link Styling */
.account-link {
    font-size: 0.9rem;
    color: var(--accent-white);
    text-decoration: none;
    font-family: var(--font-main);
    letter-spacing: 0.05em;
    transition: opacity 0.2s;
}

.account-link:hover {
    opacity: 0.7;
}

/* Cart Link Styling */
.cart-link {
    font-size: 0.9rem;
    color: var(--accent-white);
    text-decoration: none;
    font-family: var(--font-main);
    letter-spacing: 0.05em;
    transition: opacity 0.2s;
    cursor: pointer;
}

.cart-link:hover {
    opacity: 0.7;
}

/* MOBILE MENU TOGGLE BUTTON */
.mobile-menu-toggle {
    display: none;
    background: transparent;
    border: none;
    cursor: pointer;
    padding: 0.5rem;
    flex-direction: column;
    gap: 5px;
    z-index: 101;
}

.mobile-menu-toggle .bar {
    width: 25px;
    height: 2px;
    background-color: var(--accent-white);
    transition: all 0.3s ease;
    display: block;
}

.mobile-menu-toggle.active .bar:nth-child(1) {
    transform: rotate(45deg) translate(7px, 7px);
}

.mobile-menu-toggle.active .bar:nth-child(2) {
    opacity: 0;
}

.mobile-menu-toggle.active .bar:nth-child(3) {
    transform: rotate(-45deg) translate(7px, -7px);
}


.main-navigation a {
    position: relative;
    font-size: 0.9rem;
}

.main-navigation a::before {
    content: '[';
    position: absolute;
    left: -15px;
    opacity: 0;
    transition: opacity 0s;
}

.main-navigation a::after {
    content: ']';
    position: absolute;
    right: -15px;
    opacity: 0;
    transition: opacity 0s;
}

.main-navigation a:hover::before,
.main-navigation a:hover::after {
    opacity: 1;
}

/* DROPDOWN MENU STYLES */
.main-navigation .menu-item-has-children {
    position: relative;
}

.main-navigation .sub-menu {
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%) translateY(-10px);
    background: var(--bg-color);
    border: 1px solid var(--tech-border);
    min-width: 200px;
    opacity: 0;
    visibility: hidden;
    transition: all 0.2s ease;
    z-index: 1000;
    list-style: none;
    padding: 0;
    margin: 0;
    display: block;
}

.main-navigation .menu-item-has-children:hover .sub-menu {
    opacity: 1;
    visibility: visible;
    transform: translateX(-50%) translateY(0);
}

.main-navigation .sub-menu li {
    border-bottom: 1px solid var(--tech-border);
}

.main-navigation .sub-menu li:last-child {
    border-bottom: none;
}

.main-navigation .sub-menu a {
    display: block;
    padding: 1rem 1.5rem;
    font-size: 0.85rem;
    color: var(--accent-white);
    text-decoration: none;
    transition: all 0.2s ease;
    text-align: center;
}

.main-navigation .sub-menu a:hover {
    background: var(--accent-white);
    color: var(--bg-color);
}

.main-navigation .sub-menu a::before,
.main-navigation .sub-menu a::after {
    display: none;
}

/* Dropdown indicator - hidden on desktop */
.main-navigation .dropdown-indicator {
    font-size: 0.7rem;
    margin-left: 0.5rem;
    transition: transform 0.2s ease;
    display: none;
}

.main-navigation .dropdown-open .dropdown-indicator {
    transform: rotate(180deg);
}

/* BUTTONS (Neo-Brutalism) */
.btn,
button,
input[type="submit"],
.button,
.woocommerce a.button {
    display: inline-block;
    background: transparent;
    color: var(--accent-white);
    border: 1px solid var(--accent-white);
    padding: 0.8rem 1.5rem;
    font-family: var(--font-main);
    text-transform: uppercase;
    font-size: 0.85rem;
    cursor: pointer;
    border-radius: 0 !important;
    transition: all 0s;
    text-align: center;
    font-weight: normal !important;
    line-height: 1.2;
}

.btn:hover,
button:hover,
input[type="submit"]:hover,
.button:hover,
.woocommerce a.button:hover {
    background: var(--accent-white);
    color: var(--bg-color);
    box-shadow: 4px 4px 0px var(--tech-gray);
    text-decoration: none;
}

/* CARDS */
.product-card,
.feature-card {
    border: 1px solid var(--tech-border);
    padding: 1.5rem;
    position: relative;
    background: var(--bg-color);
    transition: transform 0.1s steps(2), box-shadow 0.1s steps(2);
    height: 100%;
    display: flex;
    flex-direction: column;
}

.product-card a {
    flex-grow: 1;
}

.product-card:hover,
.feature-card:hover {
    transform: translate(-4px, -4px);
    box-shadow: 6px 6px 0px var(--accent-white);
    z-index: 10;
    border-color: var(--accent-white);
}

.card-header {
    border-bottom: 1px solid var(--tech-border);
    margin-bottom: 1rem;
    padding-bottom: 0.5rem;
    font-size: 0.7rem;
    opacity: 0.7;
    letter-spacing: 0.2em;
}

/* IMAGES */
.tech-filter-img {
    filter: none;
    width: 100%;
    height: auto;
    display: block;
    margin-bottom: 1rem;
    transition: filter 0.2s;
}

.product-card:hover .tech-filter-img {
    filter: none;
}

.placeholder-img {
    height: 250px;
    background: #0a0a0a;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1rem;
    border: 1px dashed #333;
    color: #444;
    font-size: 0.8rem;
}

/* GRID SYSTEM */
.grid-system {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 1px;
    background-color: var(--tech-border);
    border: 1px solid var(--tech-border);
}

.grid-system>* {
    background-color: var(--bg-color);
}

.catalog-hero {
    border-top: 1px solid var(--tech-border);
    border-bottom: 1px solid var(--tech-border);
    padding: 3rem 0;
    background: var(--tech-gray);
}

.catalog-container {
    border: none;
}

.catalog-label {
    display: inline-block;
    font-size: 0.75rem;
    letter-spacing: 0.2em;
    margin-bottom: 1rem;
    opacity: 0.7;
}

.catalog-hero h1 {
    font-size: 2.5rem;
    margin-bottom: 1rem;
}

.catalog-description {
    max-width: 720px;
    font-size: 1rem;
    line-height: 1.6;
    text-transform: none;
    letter-spacing: normal;
    color: #dcdcdc;
}

/* Ensure text styling in description is correct */
.catalog-description p {
    margin-bottom: 1rem;
    font-size: 1rem;
    line-height: 1.6;
    color: #dcdcdc;
}

.catalog-listing {
    padding: 3rem 0;
}

.catalog-section-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 1rem;
    margin-bottom: 2rem;
    flex-wrap: wrap;
    border-bottom: 1px solid var(--tech-border);
    padding-bottom: 1rem;
}

.catalog-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 1px;
    background-color: var(--tech-border);
    border: 1px solid var(--tech-border);
}

/* Sklep page - force 4 products per row max */
body.page-id-245 .catalog-grid {
    grid-template-columns: repeat(4, 1fr) !important;
}

@media (max-width: 1200px) {
    body.page-id-245 .catalog-grid {
        grid-template-columns: repeat(3, 1fr) !important;
    }
}

@media (max-width: 900px) {
    body.page-id-245 .catalog-grid {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

@media (max-width: 768px) {
    body.page-id-245 .catalog-grid {
        grid-template-columns: 1fr !important;
    }
}

.catalog-card {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 1.5rem;
}

.catalog-card-media {
    display: block;
    margin-bottom: 1rem;
}

.catalog-card-body {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    flex: 1;
    text-align: center; /* Centered text */
}

.catalog-card-body h3 {
    margin: 0;
    font-size: 1.1rem;
}

.catalog-card-excerpt {
    font-size: 0.85rem;
    text-transform: none;
    letter-spacing: normal;
    color: #bfbfbf;
    flex: 1;
}

.catalog-subsection {
    margin-bottom: 4rem; /* Increased margin */
    padding-bottom: 4rem; /* Increased padding */
    border-bottom: 2px dashed var(--accent-white); /* More visible border */
}

.catalog-subsection:last-of-type {
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0;
}

.catalog-subsection-header {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    flex-wrap: wrap;
    align-items: flex-start;
    margin-bottom: 1.5rem;
}

.catalog-subsection-header h3 {
    margin: 0 0 0.5rem 0;
}

.catalog-subsection-header p {
    margin: 0;
    font-size: 0.9rem;
    opacity: 0.7;
    text-transform: none;
    letter-spacing: normal;
}

.catalog-empty {
    padding: 2rem;
    border: 1px solid var(--tech-border);
    text-align: center;
    margin: 2rem 0;
}

.info-section {
    border-top: 1px solid var(--tech-border);
    padding: 3rem 0;
    background: var(--bg-color);
}

.info-container {
    border: none;
}

.info-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 2rem;
}

.info-item {
    border: 1px solid var(--tech-border);
    padding: 2rem;
    background: var(--tech-gray);
    min-height: 100%;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.info-item h3 {
    font-size: 1.2rem;
    margin: 0 0 0.5rem 0;
}

.info-item p {
    font-size: 0.95rem;
    line-height: 1.6;
    text-transform: none;
    letter-spacing: normal;
    color: #dcdcdc;
}

.info-list {
    margin: 0 0 1rem 1.25rem;
    padding: 0;
    list-style: square;
    text-transform: none;
    letter-spacing: normal;
}

.info-list li {
    margin-bottom: 0.5rem;
    font-size: 0.95rem;
    color: #dcdcdc;
}

button.cmplz-btn.cmplz-manage-consent.manage-consent-1.cmplz-show {
    display: none;
}

/* RESPONSIVE & MOBILE */
@media (max-width: 768px) {
    .container {
        padding: 0 10px;
        border: none;
    }
}

/* Ensure mobile account link is hidden on desktop */
@media (min-width: 501px) {
    .mobile-account-link {
        display: none !important;
    }
}

/* Hide account link from navbar below 500px and show in mobile sidebar */
@media (max-width: 500px) {
    .header-meta .account-link {
        display: none !important;
    }
    
    /* Show mobile account link in sidebar */
    .mobile-account-link {
        display: block !important;
    }
}

@media (max-width: 768px) {

    .site-header {
        flex-direction: row;
        flex-wrap: nowrap;
        gap: 0.75rem;
        padding: 1rem 0;
        align-items: center;
        justify-content: flex-start;
    }

    .site-branding {
        order: 1;
        width: auto;
        flex: 0 0 auto;
        text-align: left;
    }

    .site-branding h1,
    .site-branding .site-title {
        font-size: 1rem;
        margin: 0;
    }

    .header-meta {
        order: 2;
        margin-left: auto;
        display: flex;
        align-items: center;
        justify-content: flex-end;
        gap: 0.5rem;
        width: auto;
        border-top: none;
        padding-top: 0;
    }

    .account-link,
    .cart-link {
        font-size: 0.85rem;
    }

    .mobile-menu-toggle {
        display: flex;
        order: 3;
    }

    /* Hide navigation by default */
    .main-navigation {
        display: none;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100vh;
        background: var(--bg-color);
        z-index: 100;
        padding: 5rem 2rem 2rem;
        overflow-y: auto;
        order: 4;
    }

    /* Show navigation when menu is active */
    .site-header.menu-active .main-navigation {
        display: block;
    }

    .main-navigation ul {
        flex-direction: column;
        gap: 1.5rem;
        align-items: flex-start;
        width: 100%;
    }

    .main-navigation li {
        width: 100%;
        border-bottom: 1px solid var(--tech-border);
        padding-bottom: 1rem;
    }

    .main-navigation a {
        font-size: 1.2rem;
        display: block;
        width: 100%;
    }
    
    /* Disable hover animation and positioning in mobile sidebar */
    .main-navigation a::before,
    .main-navigation a::after {
        display: none !important;
    }
    
    .main-navigation .menu-item-has-children:hover .sub-menu {
        transform: none !important;
        opacity: 1;
        visibility: visible;
    }
    
    /* Mobile dropdown styles */
    .main-navigation .sub-menu {
        position: static;
        opacity: 1;
        visibility: visible;
        transform: none;
        border: none;
        background: transparent;
        padding-left: 0;
        margin-top: 1rem;
        display: none;
    }
    
    .main-navigation .menu-item-has-children.dropdown-open .sub-menu {
        display: block;
    }
    
    .main-navigation .sub-menu li {
        border-bottom: 1px solid var(--tech-border);
        padding-bottom: 0.5rem;
        margin-bottom: 0.5rem;
    }
    
    .main-navigation .sub-menu a {
        font-size: 1rem;
        padding: 0.5rem 0;
        text-align: left;
    }
    
    /* Mobile dropdown indicator styles - show only on mobile */
    .main-navigation .dropdown-indicator {
        display: block;
        float: right;
        margin-left: auto;
    }
    
    /* Mobile account link in sidebar - hidden by default */
    .mobile-account-link {
        width: 100%;
        border-bottom: 1px solid var(--tech-border);
        padding-bottom: 1rem;
        margin-top: 1.5rem;
    }
    
    .account-link-mobile {
        font-size: 1.2rem;
        color: var(--accent-white);
        text-decoration: none;
        font-family: var(--font-main);
        letter-spacing: 0.05em;
        transition: opacity 0.2s;
        display: block;
        width: 100%;
    }
    
    .account-link-mobile:hover {
        opacity: 0.7;
    }

    .hero-section h1 {
        font-size: 2.5rem !important;
    }

    .diagram-container {
        grid-template-columns: 1fr;
    }

    .connector {
        transform: rotate(90deg);
        margin: 1rem 0;
    }

    .grid-system {
        grid-template-columns: 1fr;
    }

    .section-header {
        flex-direction: column;
        align-items: flex-start;
        gap: 1rem;
    }

    .section-header .btn {
        width: 100%;
    }

    .system-architecture {
        grid-template-columns: 1fr !important;
        gap: 1.25rem !important;
    }

    .system-architecture .connector {
        width: 100%;
        display: inline-block;
    }

    .catalog-section-header,
    .catalog-subsection-header {
        flex-direction: column;
        align-items: flex-start;
    }

    .catalog-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 480px) {
    .product-card {
        width: 100%;
        overflow: hidden;
    }

    .product-card img.tech-filter-img {
        max-width: 100% !important;
        height: auto !important;
    }
}

/* WOOCOMMERCE OVERRIDES */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
    width: 100%;
    margin: 0;
    border: 1px solid var(--tech-border);
    padding: 20px;
    background: var(--bg-color);
}

/* SALE BADGE - Technical Style */
.woocommerce span.onsale {
    border-radius: 0;
    background: transparent;
    color: var(--accent-white);
    border: 1px solid var(--accent-white);
    font-weight: 400;
    padding: 0.2rem 0.5rem;
    font-size: 0.7rem;
    top: 10px;
    left: 10px;
    min-height: auto;
    line-height: 1;
    text-transform: uppercase;
    letter-spacing: 0.1em;
}

.woocommerce span.onsale::after {
    content: ' [PROMO]';
}

/* WOOCOMMERCE SINGLE PRODUCT */
.woocommerce div.product {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 4rem;
    margin-top: 2rem;
    margin-bottom: 4rem;
    align-items: start;
}

/* Product Image - Left - STICKY */
.woocommerce div.product div.images {
    margin-bottom: 0;
    position: static;
    top: auto;
    z-index: 1;
    align-self: start;
}

.woocommerce div.product div.images img {
    width: 100%;
    height: auto;
    border: 1px solid var(--tech-border);
    filter: none;
    transition: filter 0.3s;
}

.woocommerce div.product div.images img:hover {
    filter: none;
}

/* Product Summary - Right */
.woocommerce div.product div.summary {
    border: none;
    padding: 0;
    display: flex;
    flex-direction: column;
    min-height: 600px;
}

/* Clean up Summary Elements */
.woocommerce div.product .product_title {
    font-size: 2rem;
    margin-bottom: 0.5rem;
    border-bottom: none;
    padding-bottom: 0;
}

.woocommerce div.product .price {
    font-size: 1.5rem;
    color: var(--accent-white);
    margin-bottom: 2rem;
    display: block;
    font-weight: normal;
    border-bottom: 1px solid var(--tech-border);
    padding-bottom: 1rem;
}

/* Variations - Full width */
.woocommerce div.product form.cart .variations {
    width: 100% !important;
    margin-bottom: 0 !important;
    border: none;
    display: block !important;
}

.woocommerce div.product form.cart .variations tbody {
    display: block !important;
    width: 100% !important;
}

.woocommerce div.product form.cart .variations tr {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    margin-bottom: 1rem !important; /* Increased spacing */
    gap: 0.5rem !important;
    width: 100% !important;
}

.reset_variations {
    display: none !important;
}

.woocommerce div.product form.cart .variations th.label {
    width: 100% !important;
    padding: 0 !important;
    margin: 0;
    line-height: 1;
    display: block !important;
    text-align: left;
}

.woocommerce div.product form.cart .variations td {
    display: block !important;
    padding: 0 !important;
    width: 100%;
}

/* Align label correctly */
.woocommerce div.product form.cart .variations label {
    font-size: 0.8rem;
    opacity: 0.7;
    margin-bottom: 0;
    display: inline-block !important;
    margin-left: 0;
}

/* Meta (Category, Tags) - Hide Category/Tags, Keep SKU */
.woocommerce div.product .product_meta {
    font-size: 0.8rem;
    opacity: 0.8;
    border-top: none;
    padding-top: 0;
    margin-top: 1rem;
}

.woocommerce div.product .product_meta>span {
    display: block;
    margin-bottom: 0.5rem;
}

/* Hide Categories and Tags specifically */
.woocommerce div.product .product_meta .posted_in,
.woocommerce div.product .product_meta .tagged_as {
    display: none;
}

/* HIDE "SKU:" Label but keep value */
.woocommerce div.product .product_meta .sku_wrapper {
    font-size: 0;
}

.woocommerce div.product .product_meta .sku_wrapper .sku {
    font-size: 0.8rem;
    display: inline-block;
}

/* Description in Summary - Spacing */
.nobrand-product-description {
    margin-top: 1rem !important;
    border-top: none !important;
    padding-top: 1rem !important;
}

/* RELATED PRODUCTS - FORCE BELOW EVERYTHING */
.woocommerce .related.products {
    grid-column: 1 / -1;
    margin-top: 4rem;
    border-top: 1px solid var(--tech-border);
    padding-top: 2rem;
    clear: both;
    width: 100%;
}

.woocommerce .related.products h2 {
    font-size: 1.5rem;
    margin-bottom: 2rem;
}

.woocommerce .related.products ul.products {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 1px;
    background-color: var(--tech-border);
    border: 1px solid var(--tech-border);
}

.woocommerce .related.products ul.products li.product {
    width: auto;
}

.wpced .wpced-inner {
    border-radius: 0 !important;
}

@media (max-width: 768px) {
    .woocommerce div.product {
        grid-template-columns: 1fr;
        gap: 2rem;
    }

    .woocommerce div.product div.images {
        position: static;
    }

    .woocommerce div.product div.summary {
        min-height: auto;
    }

    .woocommerce .related.products ul.products {
        grid-template-columns: 1fr;
    }
}

/* ANIMATIONS */
@keyframes glitch-skew {
    0% {
        transform: skew(0deg);
    }

    20% {
        transform: skew(-20deg);
    }

    40% {
        transform: skew(20deg);
    }

    60% {
        transform: skew(-5deg);
    }

    80% {
        transform: skew(5deg);
    }

    100% {
        transform: skew(0deg);
    }
}

.glitch-hover:hover {
    animation: glitch-skew 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) both infinite;
    color: #CCC;
    text-shadow: 2px 2px #FF0000, -2px -2px #0000FF;
}

/* FIXES FOR PRODUCT PAGE */

/* 1. Quantity Section Layout */
.woocommerce div.product form.cart .quantity {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0;
    float: none;
    margin: 0;
}

/* 2. Label "ILOŚĆ" using pseudo-element */
.woocommerce div.product form.cart .quantity::before {
    content: 'ILOŚĆ';
    display: block;
    width: 100%;
    margin-bottom: 0.5rem;
    font-size: 0.8rem;
    opacity: 0.7;
    color: var(--text-color);
    text-transform: uppercase;
    letter-spacing: 0.1em;
}

/* 3. Hide default screen reader label (contains product name) */
.woocommerce div.product form.cart .quantity label {
    display: none !important;
}

/* 4. Style Quantity Input */
.woocommerce div.product form.cart .quantity input.qty {
    background: transparent;
    color: var(--accent-white);
    border: 1px solid var(--accent-white);
    border-left: none;
    border-right: none;
    padding: 0;
    font-family: var(--font-main);
    font-size: 0.9rem;
    border-radius: 0;
    height: 40px;
    width: 50px;
    text-align: center;
    line-height: 40px;
    font-weight: normal;
    -moz-appearance: textfield;
    appearance: textfield;
}

.woocommerce div.product form.cart .quantity input.qty::-webkit-outer-spin-button,
.woocommerce div.product form.cart .quantity input.qty::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* 5. Style +/- Buttons */
.qty-btn {
    background: transparent;
    color: var(--accent-white);
    border: 1px solid var(--accent-white);
    width: 40px;
    height: 40px;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: var(--font-main);
    font-size: 1.2rem;
    cursor: pointer;
    transition: all 0.2s;
    line-height: 1;
}

.qty-btn:hover {
    background: var(--accent-white);
    color: var(--bg-color);
}

/* 6. Layout & Separation for Cart Form */
.woocommerce div.product form.cart {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    margin-top: 3rem;
}

.woocommerce div.product form.cart .woocommerce-variation-add-to-cart {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    align-items: flex-start;
    width: 100%;
}

.cart-sidebar-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: var(--bg-color);
}

.cart-sidebar-header h3 {
    margin: 0;
    font-size: 1.2rem;
    font-weight: 400;
    letter-spacing: 0.1em;
}

.cart-close {
    background: transparent;
    border: 1px solid var(--accent-white);
    color: var(--accent-white);
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    cursor: pointer;
    padding: 0;
    line-height: 1;
    transition: all 0.2s;
}

.cart-close:hover {
    background: var(--accent-white);
    color: var(--bg-color);
}

.cart-sidebar-body {
    flex: 1;
    overflow-y: auto;
    padding: 2rem;
}

/* Mini Cart Styling */
.woocommerce-mini-cart {
    list-style: none;
    padding: 0;
    margin: 0 0 2rem 0;
}

.woocommerce-mini-cart-item {
    display: flex;
    gap: 1rem;
    padding: 1rem 0;
    border-bottom: 1px solid var(--tech-border);
}

.woocommerce-mini-cart-item img {
    width: 80px;
    height: 80px;
    object-fit: cover;
    border: 1px solid var(--tech-border);
    filter: none;
}

.woocommerce-mini-cart-item a:not(.remove) {
    flex: 1;
    font-size: 0.9rem;
}

.woocommerce-mini-cart-item .quantity {
    font-size: 0.8rem;
    opacity: 0.7;
    margin-top: 0.5rem;
}

.woocommerce-mini-cart-item .remove {
    color: var(--accent-white);
    text-decoration: none;
    font-size: 1.2rem;
    line-height: 1;
    opacity: 0.7;
    transition: opacity 0.2s;
}

.woocommerce-mini-cart-item .remove:hover {
    opacity: 1;
}

.woocommerce-mini-cart__total {
    display: flex;
    justify-content: space-between;
    padding: 1rem 0;
    border-top: 1px solid var(--accent-white);
    border-bottom: 1px solid var(--accent-white);
    margin: 1rem 0;
    font-size: 1.1rem;
}

.woocommerce-mini-cart__buttons {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.woocommerce-mini-cart__buttons a {
    width: 100%;
    text-align: center;
}

.woocommerce-mini-cart__empty-message {
    text-align: center;
    padding: 2rem 0;
    opacity: 0.7;
    font-size: 0.9rem;
}

@media (max-width: 768px) {
    .cart-sidebar-content {
        max-width: 100%;
    }
}

/* Task 2: Size chart link spacing */
.wpcsc-size-charts-list {
    margin-top: 2rem !important;
    display: block;
}

/* Task 3: Product Gallery Thumbnails - ROBUST STYLES */
.woocommerce-product-gallery {
    position: relative;
    display: flex;
    flex-direction: column;
}

.woocommerce-product-gallery .woocommerce-product-gallery__trigger {
    display: none !important; /* hide zoom trigger */
}

.woocommerce-product-gallery .woocommerce-product-gallery__trigger::before {
    display: none;
}

/* FIXED: Force main image container to be stable */
.woocommerce-product-gallery .flex-viewport {
    border: 1px solid var(--tech-border);
    margin-bottom: 1rem;
    width: 100% !important;
    order: 1; 
    overflow: hidden !important;
    min-height: 400px;
    background: var(--bg-color) !important;
    position: relative;
    height: auto !important;
    max-height: 80vh !important;
}

/* Ensure viewport adapts to image height */
.woocommerce-product-gallery .flex-viewport .woocommerce-product-gallery__wrapper {
    height: 100% !important;
}

.woocommerce-product-gallery__wrapper {
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    transition: transform 0.3s ease !important;
    will-change: transform !important;
    width: 100% !important;
}

/* Ensure the image fits inside perfectly - each slide takes full viewport width */
.woocommerce-product-gallery__image {
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
    flex-shrink: 0 !important;
    flex-grow: 0 !important;
    background: var(--bg-color) !important;
    overflow: hidden;
    position: relative;
    margin: 0 !important;
    padding: 0 !important;
    float: left !important; /* FlexSlider requires float */
    box-sizing: border-box !important;
}

.woocommerce-product-gallery__image a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 100% !important;
}

.woocommerce-product-gallery__image img {
    max-width: 100% !important;
    max-height: 80vh !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain !important; /* Prevents cropping */
    border: none !important;
    display: block !important;
    margin: 0 auto !important;
    opacity: 1 !important;
    visibility: visible !important;
}

/* Ensure images load properly */
.woocommerce-product-gallery__image a img {
    min-height: 200px !important;
}

/* Hide zoom image that appears on hover */
.woocommerce-product-gallery__image .zoomImg {
    display: none !important;
}

/* Fix for empty slides - ensure they have proper dimensions */
.woocommerce-product-gallery__image:empty {
    min-height: 400px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.woocommerce-product-gallery .flex-control-thumbs {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 0;
    padding: 0;
    list-style: none;
    order: 2; /* Ensure thumbnails are second */
    width: 100%;
}

.woocommerce-product-gallery .flex-control-thumbs li {
    width: calc(25% - 7.5px); /* 4 items per row with 10px gap */
    cursor: pointer;
    list-style: none;
    margin: 0;
    padding: 0;
}

.woocommerce-product-gallery .flex-control-thumbs li img {
    width: 100%;
    height: 100px; /* Fixed thumb height */
    object-fit: cover;
    display: block;
    border: 1px solid var(--tech-border);
    opacity: 0.5;
    transition: all 0.2s;
}

.woocommerce-product-gallery .flex-control-thumbs li img.flex-active,
.woocommerce-product-gallery .flex-control-thumbs li img:hover {
    opacity: 1;
    border-color: var(--accent-white);
}

/* Related / custom nadruki section spacing */
.single-product .related.products {
    clear: both;
    width: 100%;
    margin-top: 3rem;
    padding-top: 2rem;
    border-top: 1px solid var(--tech-border);
    position: relative;
    z-index: 1;
}

.single-product .related.products ul.products {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 1rem;
    width: 100%;
}

/* Task 4: Fix Mobile Menu Toggle Hover State */
.mobile-menu-toggle:hover,
.mobile-menu-toggle:focus,
.mobile-menu-toggle:active {
    background: transparent !important;
    color: var(--accent-white) !important;
    box-shadow: none !important;
    outline: none !important;
}

/* Task 5: Size Chart Table Styling */
.wpcsc-size-chart-content {
    color: #000000 !important;
}

.wpcsc-size-chart-content table,
.wpcsc-size-chart-content th,
.wpcsc-size-chart-content td {
    color: #000000 !important;
    border-color: #000000 !important;
}

.wpcsc-size-chart-content .wpcsc-size-chart-above-text,
.wpcsc-size-chart-content .wpcsc-size-chart-under-text {
    color: #000000 !important;
}

/* Task 1: Related Products Styling (Matching Front Page Cards) */
.woocommerce .related.products ul.products {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 1px;
    background-color: var(--tech-border);
    border: 1px solid var(--tech-border);
}

.woocommerce .related.products ul.products li.product {
    width: auto;
    background: var(--bg-color);
    padding: 1.5rem;
    border: 1px solid var(--tech-border);
    display: flex;
    flex-direction: column;
    transition: transform 0.1s steps(2), box-shadow 0.1s steps(2);
}

.woocommerce .related.products ul.products li.product:hover {
    transform: translate(-4px, -4px);
    box-shadow: 6px 6px 0px var(--accent-white);
    z-index: 10;
    border-color: var(--accent-white);
}

/* Image styling in related products */
.woocommerce .related.products ul.products li.product img {
    filter: none;
    transition: filter 0.2s;
    width: 100%;
    height: auto;
    margin-bottom: 1rem;
}

.woocommerce .related.products ul.products li.product:hover img {
    filter: none;
}

/* Title styling */
.woocommerce .related.products ul.products li.product h2.woocommerce-loop-product__title {
    font-size: 1.1rem;
    padding: 0;
    margin-bottom: 0.5rem;
    letter-spacing: 0.1em;
    text-align: center; /* Centered title */
}

/* Price styling */
.woocommerce .related.products ul.products li.product .price {
    font-size: 1rem;
    color: var(--accent-white);
    margin-bottom: 1rem;
    display: block;
    font-weight: normal;
    border-bottom: 1px solid var(--tech-border);
    padding-bottom: 0.5rem;
    text-align: center; /* Centered price */
}

/* Add to Cart Button Styling in Loop */
.woocommerce .related.products ul.products li.product .button {
    margin-top: auto;
    width: 100%;
    text-align: center;
}

/* Task 2: Improved Size Chart Table Styling */
.wpcsc-size-chart-content {
    background: #ffffff; /* White background for contrast */
    padding: 1.5rem;
    border: 1px solid var(--tech-border);
    margin-top: 1rem;
}

.wpcsc-size-chart-content table {
    border-collapse: collapse;
    width: 100%;
    margin: 1rem 0;
    color: #000000 !important;
    border: 2px solid #000000 !important;
}

.wpcsc-size-chart-content th,
.wpcsc-size-chart-content td {
    border: 1px solid #000000 !important;
    padding: 1rem !important; /* Increased spacing */
    text-align: center;
    font-size: 0.9rem;
    color: #000000 !important;
}

.wpcsc-size-chart-content th {
    font-weight: bold;
    text-transform: uppercase;
    background: #f0f0f0;
}

.wpcsc-size-chart-content .wpcsc-size-chart-above-text,
.wpcsc-size-chart-content .wpcsc-size-chart-under-text {
    color: #000000 !important;
    margin: 1rem 0;
    font-weight: bold;
}

/* Task 3: Category/Archive Page Styling */
.tax-product_cat .page-header,
.post-type-archive-product .page-header {
    margin-bottom: 3rem;
    border-bottom: 1px solid var(--tech-border);
    padding-bottom: 2rem;
}

.tax-product_cat .page-title,
.post-type-archive-product .page-title {
    font-size: 2.5rem;
    margin-bottom: 1rem;
}

.tax-product_cat .term-description,
.post-type-archive-product .term-description {
    max-width: 800px;
    font-size: 1rem;
    line-height: 1.6;
    color: #dcdcdc;
    text-transform: none;
    letter-spacing: normal;
}

/* CATALOG SORTING & FILTERS STYLING */
.catalog-section-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 2rem;
    border-bottom: 1px solid var(--tech-border);
    padding-bottom: 1rem;
    flex-wrap: wrap;
    gap: 1rem;
}

/* 1. Result Count Styling */
.woocommerce-result-count {
    font-size: 0.85rem;
    opacity: 0.7;
    letter-spacing: 0.1em;
    margin: 0;
}

/* 2. Ordering Select Styling */
.woocommerce-ordering {
    margin: 0;
}

.woocommerce-ordering select {
    background-color: var(--bg-color);
    color: var(--accent-white);
    border: 1px solid var(--tech-border);
    padding: 0.5rem 1rem;
    font-family: var(--font-main);
    font-size: 0.85rem;
    text-transform: uppercase;
    cursor: pointer;
    outline: none;
    border-radius: 0;
    appearance: none; /* Remove default arrow */
    -webkit-appearance: none;
    -moz-appearance: none;
    background-image: url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23FFFFFF%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E");
    background-repeat: no-repeat;
    background-position: right 0.7rem top 50%;
    background-size: 0.65rem auto;
    padding-right: 2rem;
}

.woocommerce-ordering select:hover,
.woocommerce-ordering select:focus {
    border-color: var(--accent-white);
}

/* Override default WooCommerce grid for categories */
.tax-product_cat ul.products,
.post-type-archive-product ul.products {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)) !important;
    gap: 1px !important;
    background-color: var(--tech-border) !important;
    border: 1px solid var(--tech-border) !important;
    margin-bottom: 3rem !important;
}

.tax-product_cat ul.products li.product,
.post-type-archive-product ul.products li.product {
    width: auto !important;
    margin: 0 !important;
    background: var(--bg-color);
    padding: 1.5rem;
    border: 1px solid var(--tech-border);
    display: flex;
    flex-direction: column;
    transition: transform 0.1s steps(2), box-shadow 0.1s steps(2);
    float: none !important; /* Fix float issues */
}

.tax-product_cat ul.products li.product:hover,
.post-type-archive-product ul.products li.product:hover {
    transform: translate(-4px, -4px);
    box-shadow: 6px 6px 0px var(--accent-white);
    z-index: 10;
    border-color: var(--accent-white);
}

/* Ensure buttons and price look right in grid */
.tax-product_cat ul.products li.product .price,
.post-type-archive-product ul.products li.product .price {
    font-size: 1rem;
    color: var(--accent-white);
    margin-bottom: 1rem;
    display: block;
    font-weight: normal;
    border-bottom: 1px solid var(--tech-border);
    padding-bottom: 0.5rem;
}

.tax-product_cat ul.products li.product .button,
.post-type-archive-product ul.products li.product .button {
    margin-top: auto;
    width: 100%;
    text-align: center;
}

/* Image filters for category pages */
.tax-product_cat ul.products li.product img,
.post-type-archive-product ul.products li.product img {
    filter: none;
    transition: filter 0.2s;
    width: 100%;
    height: auto;
    margin-bottom: 1rem;
    display: block;
}

.tax-product_cat ul.products li.product:hover img,
.post-type-archive-product ul.products li.product:hover img {
    filter: none;
}

/* HERO SECTION V2 STYLES */
.hero-section {
    position: relative;
    min-height: 85vh;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border-bottom: 1px solid var(--tech-border);
    background-color: #050505;
}

.hero-bg-grid {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: 
        linear-gradient(var(--tech-border) 1px, transparent 1px),
        linear-gradient(90deg, var(--tech-border) 1px, transparent 1px);
    background-size: 50px 50px;
    opacity: 0.15;
    pointer-events: none;
    z-index: 1;
}

.hero-container {
    position: relative;
    z-index: 2;
    width: 100%;
    border: none;
    justify-content: center;
}

.hero-content {
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2rem;
}

.hero-meta {
    font-family: var(--font-main);
    font-size: 0.9rem;
    letter-spacing: 0.2em;
    color: var(--accent-white);
    opacity: 0.8;
    display: flex;
    gap: 2rem;
    margin-bottom: 1rem;
}

.blink-text {
    animation: blink 2s infinite;
}

@keyframes blink {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.3; }
}

.hero-title {
    font-size: clamp(4rem, 15vw, 10rem); /* Massive responsive font */
    line-height: 0.8;
    margin: 0;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: -0.05em;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.hero-title span {
    display: block;
}

/* Staggered animation/effect for title lines */
.line-1 { transform: translateX(-5%); }
.line-2 { color: transparent; -webkit-text-stroke: 2px var(--accent-white); transform: translateX(5%); }
.line-3 { transform: translateX(-2%); }

.hero-sub-info {
    font-size: 1.1rem;
    letter-spacing: 0.3em;
    opacity: 0.7;
    border-top: 1px solid var(--tech-border);
    border-bottom: 1px solid var(--tech-border);
    padding: 1rem 2rem;
}

.hero-actions {
    display: flex;
    gap: 2rem;
    margin-top: 2rem;
}

.hero-btn {
    font-size: 1.1rem;
    padding: 1.2rem 3rem;
    background: var(--accent-white);
    color: var(--bg-color);
    font-weight: bold;
}

.hero-btn-outline {
    font-size: 1.1rem;
    padding: 1.2rem 3rem;
    border: 1px solid var(--accent-white);
    color: var(--accent-white);
}

.hero-btn-outline:hover {
    background: var(--accent-white);
    color: var(--bg-color);
}

@media (max-width: 768px) {
    .hero-title {
        font-size: 4rem;
    }
    .hero-actions {
        flex-direction: column;
        gap: 1rem;
        width: 100%;
    }
    .hero-btn, .hero-btn-outline {
        width: 100%;
    }
    .line-1, .line-2, .line-3 { transform: none; }
}

/* NOTICES / ALERTS STYLING */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
    background-color: var(--bg-color) !important;
    color: var(--text-color) !important;
    border: 1px solid var(--accent-white) !important;
    border-radius: 0 !important;
    padding: 1.5rem !important;
    margin-bottom: 2rem !important;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 1rem;
    width: 100% !important;
    box-sizing: border-box !important;
    position: relative !important;
    left: 0 !important;
    right: 0 !important;
}

.woocommerce-message::before,
.woocommerce-info::before,
.woocommerce-error::before {
    display: none !important; /* Remove default icons */
}

/* Style the "View Cart" button inside messages */
.woocommerce-message .button,
.woocommerce-info .button,
.woocommerce-error .button {
    float: none !important;
    margin: 0 !important;
    background: transparent !important;
    border: 1px solid var(--accent-white) !important;
    color: var(--accent-white) !important;
    padding: 0.5rem 1.5rem !important;
    font-size: 0.85rem !important;
    border-radius: 0 !important;
    transition: all 0.2s !important;
}

.woocommerce-message .button:hover,
.woocommerce-info .button:hover,
.woocommerce-error .button:hover {
    background: var(--accent-white) !important;
    color: var(--bg-color) !important;
}

/* BLOCK CHECKOUT STYLES REFINED */

/* Main Container */
.wc-block-checkout {
    background-color: var(--bg-color) !important;
    color: var(--text-color) !important;
}

/* Checkout Sections (Contact, Shipping, etc.) */
.wc-block-components-checkout-step {
    border: 1px solid var(--tech-border) !important;
    padding: 2rem !important;
    margin-bottom: 2rem !important;
    background: var(--bg-color) !important;
    display: block !important; /* Ensure they are blocks */
}

/* Address forms specific spacing */
.wc-block-components-address-form {
    margin-top: 1.5rem;
}

/* Input Fields */
.wc-block-components-text-input input[type="text"],
.wc-block-components-text-input input[type="email"],
.wc-block-components-text-input input[type="tel"],
.wc-block-components-text-input input[type="url"],
.wc-block-components-text-input input[type="password"],
.wc-block-components-text-input input[type="search"] {
    background-color: transparent !important;
    color: var(--accent-white) !important;
    border: 1px solid var(--tech-border) !important;
    border-radius: 0 !important;
    padding: 0 1rem !important; /* Equal horizontal padding */
    font-family: var(--font-main) !important;
    box-shadow: none !important;
    height: 3.5rem !important; /* Fixed height for consistent centering */
    min-height: 3.5rem !important;
    line-height: 3.5rem !important; /* Center text vertically using line-height */
    display: block !important;
    box-sizing: border-box !important;
}

.wc-block-components-text-input input:focus {
    border-color: var(--accent-white) !important;
    outline: none !important;
}

/* Labels - Floating Effect Adjustment */
.wc-block-components-text-input {
    position: relative;
    display: block !important;
    height: 3.5rem !important; /* Match input height for proper centering */
}

.wc-block-components-text-input label {
    color: #888 !important;
    font-size: 0.9rem !important;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    position: absolute;
    top: 50% !important;
    left: 1rem !important;
    transform: translateY(-50%) !important;
    opacity: 0.8;
    z-index: 10;
    transition: all 0.2s ease-out;
    pointer-events: none;
    background: transparent;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1 !important; /* Reset line-height for label */
    display: flex !important;
    align-items: center !important; /* Additional centering */
}

/* Active/Focused Label State */
.wc-block-components-text-input.is-active label,
.wc-block-components-text-input:focus-within label {
    top: 0 !important;
    transform: translateY(-50%) !important;
    font-size: 0.7rem !important;
    background: var(--bg-color);
    padding: 0 0.5rem !important; /* Equal padding to prevent text shift */
    color: var(--accent-white) !important;
    opacity: 1;
    left: 0.5rem !important; /* Adjust left position to account for padding */
}

/* Select Inputs (Country/State) */
.wc-block-components-select select,
.wc-block-components-country-input select,
.wc-block-components-state-input select {
    background-color: var(--bg-color) !important;
    color: var(--accent-white) !important;
    border: 1px solid var(--tech-border) !important;
    border-radius: 0 !important;
    padding: 1rem !important;
    font-family: var(--font-main) !important;
    cursor: pointer;
    height: 3.5rem;
}

/* Select dropdown options styling (browser dependent but helpful) */
.wc-block-components-select select option {
    background-color: #000000 !important;
    color: #FFFFFF !important;
}

/* Headings */
.wc-block-components-title,
.wc-block-checkout__step-title {
    font-family: var(--font-main) !important;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    border-bottom: 1px solid var(--tech-border);
    padding-bottom: 0.5rem;
    margin-bottom: 1.5rem !important;
    font-size: 1.5rem !important;
}

/* Shipping Options */
.wc-block-components-radio-control__option {
    border: 1px solid var(--tech-border);
    margin-bottom: 0.75rem;
    padding: 1rem !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important; /* Center vertically */
    justify-content: flex-start !important;
    width: 100% !important;
    background: transparent;
    flex-wrap: nowrap !important;
}

.wc-block-components-radio-control__option:hover {
    border-color: #666;
}

.wc-block-components-radio-control__option[aria-checked="true"] {
    border: 3px solid var(--accent-white) !important; /* Mocne obramowanie dla wybranej opcji */
    background: var(--tech-gray) !important; /* Dark background */
}

/* Border radius dla highlighted checked options */
.wc-block-components-radio-control--highlight-checked .wc-block-components-radio-control-accordion-option--checked-option-highlighted,
.wc-block-components-radio-control--highlight-checked label.wc-block-components-radio-control__option--checked-option-highlighted {
    border-radius: 0px !important;
}

/* Ukryj radio buttony w opcjach wysyłki */
.wc-block-checkout__shipping-option .wc-block-components-radio-control__input[type="radio"] {
    display: none !important;
    visibility: hidden !important;
    position: absolute !important;
    width: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    opacity: 0 !important;
}

/* Wyjątek: radio buttony w opcjach wysyłki są ukryte, więc usuń margin i dostosuj padding */
.wc-block-checkout__shipping-option .wc-block-components-radio-control__option {
    padding-left: 1rem !important; /* Zastąp margin-right radio buttona paddingiem */
}

/* Shipping Text Container */
.wc-block-components-radio-control__option-layout {
    flex: 1;
    width: auto !important;
    display: block !important;
}

.wc-block-components-radio-control__label-group {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
}

.wc-block-components-radio-control__label {
    white-space: normal !important; /* Allow wrapping */
    display: inline-block;
    margin-bottom: 0.2rem;
}

/* InPost Logo Visibility Fix - REMOVED */
.inpost_icon {
    display: none !important;
}

/* Checkboxes & Radio Buttons */
.wc-block-components-checkbox__input[type="checkbox"],
.wc-block-components-radio-control__input[type="radio"] {
    background: transparent !important;
    border: 1px solid var(--accent-white) !important;
    border-radius: 0 !important;
    width: 1.2rem !important;
    height: 1.2rem !important;
    min-width: 1.2rem !important; /* Prevent shrinking */
    min-height: 1.2rem !important;
    appearance: none;
    -webkit-appearance: none;
    margin-right: 1.5rem !important;
    margin-bottom: 0 !important;
    margin-top: 0 !important;
    flex-shrink: 0 !important;
    position: static !important; /* Stop any absolute positioning */
    aspect-ratio: 1 / 1 !important; /* Ensure square */
}


.wc-block-components-checkbox__input[type="checkbox"]:checked,
.wc-block-components-radio-control__input[type="radio"]:checked {
    background: var(--accent-white) !important;
    position: relative;
}

.wc-block-components-checkbox__input[type="checkbox"]:checked::after {
    content: 'X';
    color: var(--bg-color);
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 0.8rem;
    font-weight: bold;
}

/* Radio button checked state - filled circle instead of ugly default */
.wc-block-components-radio-control__input[type="radio"]:checked::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 0.5rem;
    height: 0.5rem;
    background: var(--bg-color);
    border-radius: 50%;
}

/* Payment Methods (Credit Card) Style Match */
.wcpay-payment-element,
.StripeElement {
    background-color: transparent !important;
    border: 1px solid var(--tech-border) !important;
    padding: 1.5rem !important;
    margin-bottom: 1rem !important;
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

/* Stripe iframe container - make it wider */
.wcpay-payment-element .__PrivateStripeElement,
.StripeElement .__PrivateStripeElement {
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
}

/* Stripe iframe itself */
.wcpay-payment-element iframe,
.StripeElement iframe {
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
}

/* Order Summary Sidebar */
.wc-block-components-sidebar {
    background: var(--bg-color) !important;
    border: 1px solid var(--tech-border) !important;
    padding: 2rem !important;
}

/* Sticky Sidebar Top Offset */
.wc-block-components-sidebar.is-sticky {
    top: 120px !important; /* Push down to avoid overlap with header */
}

.wc-block-components-order-summary-item {
    border-bottom: 1px dashed var(--tech-border) !important;
    padding-bottom: 1rem !important;
    margin-bottom: 1rem !important;
}

.wc-block-components-product-name {
    font-family: var(--font-main) !important;
    text-transform: uppercase;
    font-size: 1rem !important;
    color: var(--accent-white) !important;
}

.wc-block-components-product-price {
    font-family: var(--font-main) !important;
    color: var(--accent-white) !important;
}

/* Totals Section Spacing */
.wc-block-components-totals-item {
    border-bottom: 1px solid var(--tech-border);
    padding: 1.5rem 0 !important; /* Increased spacing */
    display: flex;
    justify-content: space-between;
}

.wc-block-components-totals-item:last-child {
    border-bottom: none;
    border-top: 2px solid var(--accent-white);
    margin-top: 1rem;
    padding-top: 1.5rem !important;
    font-size: 1.2rem;
    font-weight: bold;
}

.wc-block-checkout__order-notes .wc-block-components-checkout-step__content {
    padding-top: 0 !important;
}

/* Checkout Consents Container */
.nobrand-checkout-consents {
    margin: 2rem 0 1rem 0 !important;
    padding: 1.5rem !important;
    border: 1px solid var(--tech-border) !important;
    background: var(--tech-gray) !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

.nobrand-checkout-consents .wc-block-components-checkbox {
    display: flex !important;
    align-items: center !important;
    margin-bottom: 1rem !important;
    cursor: pointer !important;
}

.nobrand-checkout-consents .wc-block-components-checkbox:last-child {
    margin-bottom: 0 !important;
}

.nobrand-checkout-consents .wc-block-components-checkbox__input {
    margin-right: 0.75rem !important;
    flex-shrink: 0 !important;
}

.nobrand-checkout-consents .wc-block-components-checkbox span {
    font-size: 0.9rem !important;
    text-transform: none !important;
    letter-spacing: normal !important;
    line-height: 1.4 !important;
    color: var(--accent-white) !important;
}

.nobrand-checkout-consents .wc-block-components-checkbox a {
    color: var(--accent-white) !important;
    text-decoration: underline !important;
    transition: opacity 0.2s !important;
}

.nobrand-checkout-consents .wc-block-components-checkbox a:hover {
    opacity: 0.8 !important;
}

.nobrand-checkout-consents .checkout-consent-error {
    background: rgba(255, 68, 68, 0.1) !important;
    border: 1px solid #ff4444 !important;
    border-radius: 0 !important;
    padding: 0.75rem 1rem !important;
    margin-bottom: 1rem !important;
    color: #ff4444 !important;
    font-size: 0.9rem !important;
    font-family: var(--font-main, sans-serif) !important;
    line-height: 1.4 !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

.nobrand-checkout-consents .checkout-consent-error strong {
    font-weight: bold;
    color: #ff4444;
}

/* Place Order Button */
.wc-block-components-checkout-place-order-button {
    background: transparent !important;
    color: var(--accent-white) !important;
    border: 1px solid var(--accent-white) !important;
    padding: 1.5rem !important;
    font-family: var(--font-main) !important;
    text-transform: uppercase;
    font-size: 1.2rem !important;
    cursor: pointer;
    border-radius: 0 !important;
    transition: all 0.2s !important;
    width: 100% !important;
    margin-top: 2rem !important;
}

.wc-block-components-checkout-place-order-button:hover {
    background: var(--accent-white) !important;
    color: var(--bg-color) !important;
    box-shadow: 6px 6px 0px var(--tech-border) !important;
}

/* Payment Accordion Content */
.wc-block-components-radio-control-accordion-content {
    background: transparent !important;
    border: 1px solid var(--tech-border) !important;
    border-top: none !important;
    padding: 2rem !important;
    color: #ccc !important;
    margin-top: -1px; /* Connect to option border */
    width: 100% !important;
    box-sizing: border-box !important;
}

/* Make payment method content wider */
.wc-block-checkout__payment-method .wc-block-components-checkout-step__content {
    width: 100% !important;
    max-width: 100% !important;
}

/* Stripe payment element container - wider */
.wc-block-components-radio-control-accordion-content .wcpay-payment-element,
.wc-block-components-radio-control-accordion-content .StripeElement {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 100% !important;
    padding: 2rem !important;
    margin: 1rem 0 !important;
}

/* Stripe input styling via CSS variables (works inside iframe) */
.wcpay-payment-element {
    --p-inputPadding: 1rem 1.5rem !important;
    --p-inputFontSize: 1rem !important;
    --p-inputLineHeight: 1.5 !important;
    --p-inputTextAlign: center !important;
    --p-labelFontSize: 0.85rem !important;
    --p-labelTop: 0.5rem !important;
    --p-labelLeft: 1.5rem !important;
    /* Disable floating label - same padding for all states to prevent movement */
    --c-inputPaddingTop: 1.25rem !important;
    --c-inputPaddingBottom: 1.25rem !important;
    --c-inputPaddingLeft: 1.5rem !important;
    --c-inputPaddingRight: 1.5rem !important;
    /* CRITICAL: Set floating padding equal to normal padding to prevent text movement */
    --c-inputFloatingPaddingTop: 1.25rem !important;
    --c-inputHeight: 3.5rem !important;
    --c-inputBorderTopWidth: 1px !important;
    --c-inputBorderBottomWidth: 1px !important;
    --c-inputTextAlign: center !important;
    /* Set line-height to match height minus borders to prevent movement */
    --c-inputLineHeight: calc(3.5rem - 1px - 1px) !important;
    /* Ensure text doesn't move */
    --c-inputVerticalAlign: middle !important;
}

/* Additional styling for Stripe container */
.wcpay-payment-element > div,
.StripeElement > div {
    width: 100% !important;
    min-width: 100% !important;
}

/* Ukryj radio buttony w opcjach płatności */
.wc-block-checkout__payment-method .wc-block-components-radio-control__input[type="radio"] {
    display: none !important;
    visibility: hidden !important;
    position: absolute !important;
    width: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    opacity: 0 !important;
}

/* Mocne obramowanie dla wybranej opcji płatności */
.wc-block-checkout__payment-method .wc-block-components-radio-control__option[aria-checked="true"],
.wc-block-checkout__payment-method .wc-block-components-radio-control__option-checked,
.wc-block-checkout__payment-method .wc-block-components-radio-control-accordion-option--checked-option-highlighted {
    border: 1px solid var(--accent-white) !important;
    background: var(--tech-gray) !important;
}

/* Wyjątek: radio buttony w opcjach płatności są ukryte, więc dostosuj padding */
.wc-block-checkout__payment-method .wc-block-components-radio-control__option {
    padding-left: 1rem !important;
}

/* Pickup Button Styling */
#easypack_block_type_geowidget {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    text-align: center !important;
    width: 100% !important;
    margin-top: 1rem !important;
}

/* Easypack Geowidget Button */
.easypack_show_geowidget {
    border: 0 !important;
    font-size: 19px !important;
    box-shadow: 0 15px 30px -18px rgba(0, 0, 0, 90%) !important;
    color: #fff !important;
    display: block !important;
    margin: auto !important;
    text-align: center !important;
    background-color: #FCC905 !important;
    line-height: 1em !important;
    padding: 12px 10px !important; /* Equal top/bottom padding for proper alignment */
    max-width: 200px !important;
}

/* Stripe Elements Labels (Attempt to style known Stripe classes if not in Shadow DOM/iframe) */
.p-FieldLabel {
    color: #888 !important;
    font-family: 'Courier New', Courier, monospace !important;
    text-transform: uppercase !important;
    letter-spacing: 0.1em !important;
}

.p-Input, .p-CardNumberInput {
    border: none !important;
    background: transparent !important;
}

/* If Stripe is using variables */
.wcpay-payment-element {
    --p-colorText: #FFFFFF;
    --p-colorPrimary: #FFFFFF;
    --p-colorBackground: transparent;
    --p-borderRadius: 0;
    --p-colorDanger: #ff0000;
    --p-fontSize: 1rem;
    --p-lineHeight: 1.5;
    --p-spacing: 1.5rem;
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    --p-fontFamily: 'Courier New', Courier, monospace;
    /* CRITICAL: Set floating padding equal to normal padding to prevent text movement */
    --c-inputPaddingTop: 1.25rem !important;
    --c-inputPaddingBottom: 1.25rem !important;
    --c-inputFloatingPaddingTop: 1.25rem !important;
    --c-inputHeight: 3.5rem !important;
    --c-inputBorderTopWidth: 1px !important;
    --c-inputBorderBottomWidth: 1px !important;
    --c-inputTextAlign: center !important;
    /* Line height should match: height - top border - bottom border */
    --c-inputLineHeight: calc(3.5rem - 1px - 1px) !important;
}

/* Textarea styling - ciemne tło, jasny font */
.wc-block-components-textarea {
    background-color: var(--bg-color) !important;
    color: var(--accent-white) !important;
    border: 1px solid var(--tech-border) !important;
    border-radius: 0 !important;
    padding: 1rem !important;
    font-family: var(--font-main) !important;
    box-shadow: none !important;
    width: 100% !important;
    min-height: 100px !important;
    resize: vertical !important;
    font-size: 1rem !important;
    line-height: 1.5 !important;
}

.wc-block-components-textarea:focus {
    border-color: var(--accent-white) !important;
    outline: none !important;
}

.wc-block-components-textarea::placeholder {
    color: #888 !important;
    opacity: 0.8 !important;
}

/* Address Card styling - dodaj obramówkę */
.wc-block-components-address-card {
    border: 1px solid var(--tech-border) !important;
    padding: 1.5rem !important;
    margin-bottom: 1rem !important;
    background: var(--bg-color) !important;
    position: relative;
}

.wc-block-components-address-card address {
    color: var(--accent-white) !important;
    font-style: normal !important;
    margin: 0 !important;
    padding: 0 !important;
}

.wc-block-components-address-card__address-section {
    display: block !important;
    margin-bottom: 0.5rem !important;
    color: var(--accent-white) !important;
}

.wc-block-components-address-card__edit {
    color: var(--accent-white) !important;
    border: 1px solid var(--tech-border) !important;
    padding: 0.5rem 1rem !important;
    display: inline-block !important;
    margin-top: 1rem !important;
    cursor: pointer !important;
    transition: all 0.2s !important;
    text-transform: uppercase !important;
    font-size: 0.85rem !important;
    letter-spacing: 0.1em !important;
}

.wc-block-components-address-card__edit:hover {
    background: var(--accent-white) !important;
    color: var(--bg-color) !important;
    border-color: var(--accent-white) !important;
}

a.skip-link.screen-reader-text {
    display: none;
}

/* ============================================
   CART PAGE STYLING
   ============================================ */

/* Cart Page Container */
/* .woocommerce-cart {
    padding: 2rem 0;
} */


.editor-styles-wrapper table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__wrap>*, .editor-styles-wrapper table.wc-block-cart-items .wc-block-cart-items__row .wc-block-components-quantity-selector, table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__wrap>*, table.wc-block-cart-items .wc-block-cart-items__row .wc-block-components-quantity-selector {
    margin-bottom: 0 !important;
}

.wc-block-components-quantity-selector {
    margin: 0 !important;
}


/* ============================================
   CHECKOUT VALIDATION ERRORS STYLING
   ============================================ */

/* Error State for Input Fields */
.wc-block-components-text-input.has-error {
    margin-bottom: 4.5rem !important; /* Much more space for error message */
}

.wc-block-components-text-input.has-error input {
    border-color: #ff4444 !important; /* Red border for error state */
    background-color: rgba(255, 68, 68, 0.05) !important; /* Subtle red background */
}

/* Validation Error Messages */
.wc-block-components-validation-error {
    background: rgba(255, 68, 68, 0.1) !important;
    border: 1px solid #ff4444 !important;
    border-radius: 0 !important;
    padding: 0.75rem 1rem !important;
    margin-top: 0.75rem !important;
    margin-bottom: 2.5rem !important; /* Much larger bottom margin */
    display: flex !important;
    align-items: center !important;
    gap: 0.5rem !important;
    font-family: var(--font-main) !important;
    font-size: 0.8rem !important;
    line-height: 1.4 !important;
    color: #ff4444 !important;
    position: absolute !important; /* Changed to absolute positioning */
    left: 0 !important;
    right: 0 !important;
    z-index: 1000 !important; /* Very high z-index */
    width: 100% !important;
    box-sizing: border-box !important;
}

.wc-block-components-validation-error svg {
    flex-shrink: 0 !important;
    width: 16px !important;
    height: 16px !important;
    margin-top: 0 !important; /* Removed margin-top for better alignment */
    fill: #ff4444 !important;
    align-self: flex-start !important; /* Align to top of text */
}

.wc-block-components-validation-error p {
    margin: 0 !important;
    padding: 0 !important;
    color: #ff4444 !important;
    font-size: 0.8rem !important;
    line-height: 1.4 !important;
    display: flex !important;
    align-items: center !important;
    gap: 0.5rem !important;
}

.wc-block-components-validation-error span {
    color: #ff4444 !important;
    font-size: 0.8rem !important;
    line-height: 1.4 !important;
}

/* Specific Error IDs for consistent spacing */
p#validate-error-billing_email,
p#validate-error-billing_postcode,
p#validate-error-billing_city,
p#validate-error-billing_first_name,
p#validate-error-billing_last_name,
p#validate-error-billing_address_1,
p#validate-error-billing_phone {
    margin: 0 !important;
    padding: 0 !important;
    color: #ff4444 !important;
    font-size: 0.8rem !important;
    line-height: 1.4 !important;
}

/* Form Field Spacing Adjustments */
.wc-block-components-address-form .wc-block-components-text-input {
    margin-bottom: 2rem !important; /* Increased base margin */
    position: relative !important; /* For absolute positioned errors */
}

.wc-block-components-address-form .wc-block-components-text-input.has-error {
    margin-bottom: 5rem !important; /* Much larger margin for error fields */
}

/* Special spacing for email field to prevent overlap with guest notice */
.wc-block-components-address-form__email.has-error {
    margin-bottom: 5.5rem !important; /* Even more space for email field */
}

/* Guest checkout notice spacing */
.wc-block-checkout__guest-checkout-notice {
    margin-top: 2rem !important; /* Increased top margin */
    margin-bottom: 2rem !important; /* Increased bottom margin */
    clear: both !important;
    position: relative !important;
    z-index: 1 !important;
}

/* Address form wrapper spacing */
.wc-block-components-address-form-wrapper {
    margin-top: 2rem !important;
}

/* Specific field spacing adjustments */
.wc-block-components-address-form__postcode.has-error {
    margin-bottom: 5.5rem !important; /* Extra space for postcode field */
}

.wc-block-components-address-form__phone.has-error {
    margin-bottom: 5rem !important; /* Extra space for phone field */
}

/* Country/State Select Error Styling */
.wc-block-components-country-input.has-error,
.wc-block-components-state-input.has-error {
    margin-bottom: 5rem !important; /* Increased margin */
    position: relative !important;
}

.wc-block-components-country-input.has-error select,
.wc-block-components-state-input.has-error select {
    border-color: #ff4444 !important;
    background-color: rgba(255, 68, 68, 0.05) !important;
}

/* Ensure proper spacing between form sections */
.wc-block-components-checkout-step__content {
    padding-top: 1rem !important;
}

.wc-block-components-address-form {
    margin-top: 2rem !important; /* Increased margin */
}

/* Fix overlapping issues */
.wc-block-components-text-input {
    position: relative !important;
    z-index: 1 !important;
}

.wc-block-components-validation-error {
    position: absolute !important; /* Absolute positioning */
    top: calc(100% + 0.5rem) !important; /* Position below the input */
    left: 0 !important;
    right: 0 !important;
    z-index: 1000 !important;
    clear: both !important;
}

/* Create Account Checkbox spacing */
.wc-block-checkout__create-account {
    margin-top: 2rem !important; /* Increased margin */
    clear: both !important;
    position: relative !important;
    z-index: 1 !important;
}

/* Additional spacing for checkout steps */
.wc-block-components-checkout-step {
    margin-bottom: 3rem !important; /* More space between sections */
}

/* Address card spacing */
.wc-block-components-address-card-wrapper {
    margin-bottom: 2rem !important;
}

/* Form field containers need more space */
.wc-block-components-address-form > * {
    margin-bottom: 2rem !important;
}

.wc-block-components-address-form > *.has-error {
    margin-bottom: 5rem !important;
}

/* Cart Table Styling */
.woocommerce-cart-form table.shop_table {
    width: 100%;
    border-collapse: collapse;
    border: 1px solid var(--tech-border);
    background: var(--bg-color);
    margin-bottom: 2rem;
}

.woocommerce-cart-form table.shop_table thead {
    background: var(--tech-gray);
    border-bottom: 2px solid var(--accent-white);
}

.woocommerce-cart-form table.shop_table th {
    padding: 1.5rem 1rem;
    text-align: left;
    font-family: var(--font-main);
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-size: 0.9rem;
    color: var(--accent-white);
    border: none;
    font-weight: normal;
}

.woocommerce-cart-form table.shop_table td {
    padding: 1.5rem 1rem;
    border-top: 1px solid var(--tech-border);
    border-bottom: 1px solid var(--tech-border);
    color: var(--accent-white);
    font-family: var(--font-main);
    vertical-align: middle;
}

.woocommerce-cart-form table.shop_table tbody tr {
    border-bottom: 1px solid var(--tech-border);
    transition: background 0.2s;
}

.woocommerce-cart-form table.shop_table tbody tr:hover {
    background: rgba(255, 255, 255, 0.02);
}

/* Product Thumbnail */
.woocommerce-cart-form .product-thumbnail {
    width: 100px;
}

.woocommerce-cart-form .product-thumbnail img {
    width: 80px;
    height: 80px;
    object-fit: cover;
    border: 1px solid var(--tech-border);
    display: block;
}

.woocommerce-cart-form .product-thumbnail a {
    display: block;
}

/* Product Name */
.woocommerce-cart-form .product-name {
    font-family: var(--font-main);
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.woocommerce-cart-form .product-name a {
    color: var(--accent-white);
    text-decoration: none;
    transition: opacity 0.2s;
}

.woocommerce-cart-form .product-name a:hover {
    opacity: 0.7;
}

.woocommerce-cart-form .product-name .variation {
    display: block;
    margin-top: 0.5rem;
    font-size: 0.85rem;
    opacity: 0.7;
    text-transform: none;
}

.woocommerce-cart-form .product-name .variation dt,
.woocommerce-cart-form .product-name .variation dd {
    display: inline;
    margin: 0;
}

.woocommerce-cart-form .product-name .variation dt::after {
    content: ': ';
}

.woocommerce-cart-form .product-name .variation dd::after {
    content: ', ';
}

.woocommerce-cart-form .product-name .variation dd:last-child::after {
    content: '';
}

/* Product Price */
.woocommerce-cart-form .product-price {
    font-family: var(--font-main);
    color: var(--accent-white);
    font-size: 1rem;
}

/* Product Quantity */
.woocommerce-cart-form .product-quantity {
    width: 150px;
}

.woocommerce-cart-form .product-quantity .quantity {
    display: flex;
    align-items: center;
    gap: 0;
    float: none;
    margin: 0;
}

.woocommerce-cart-form .product-quantity .quantity input.qty {
    background: transparent;
    color: var(--accent-white);
    border: 1px solid var(--tech-border);
    border-left: none;
    border-right: none;
    padding: 0.5rem;
    font-family: var(--font-main);
    font-size: 0.9rem;
    border-radius: 0;
    height: 40px;
    width: 60px;
    text-align: center;
    -moz-appearance: textfield;
    appearance: textfield;
}

.woocommerce-cart-form .product-quantity .quantity input.qty::-webkit-outer-spin-button,
.woocommerce-cart-form .product-quantity .quantity input.qty::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.woocommerce-cart-form .product-quantity .quantity .qty-btn {
    background: transparent;
    color: var(--accent-white);
    border: 1px solid var(--tech-border);
    width: 40px;
    height: 40px;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: var(--font-main);
    font-size: 1.2rem;
    cursor: pointer;
    transition: all 0.2s;
    line-height: 1;
}

.woocommerce-cart-form .product-quantity .quantity .qty-btn:hover {
    background: var(--accent-white);
    color: var(--bg-color);
}

/* Product Subtotal */
.woocommerce-cart-form .product-subtotal {
    font-family: var(--font-main);
    color: var(--accent-white);
    font-size: 1rem;
    font-weight: normal;
}

/* Remove Product Button */
.woocommerce-cart-form .product-remove {
    width: 50px;
    text-align: center;
}

.woocommerce-cart-form .product-remove .remove {
    display: inline-block;
    width: 30px;
    height: 30px;
    line-height: 28px;
    text-align: center;
    border: 1px solid var(--tech-border);
    color: var(--accent-white);
    text-decoration: none;
    font-size: 1.5rem;
    transition: all 0.2s;
    background: transparent;
}

.woocommerce-cart-form .product-remove .remove:hover {
    background: var(--accent-white);
    color: var(--bg-color);
    border-color: var(--accent-white);
}

/* Cart Actions */
.woocommerce-cart-form .actions {
    padding: 2rem 1rem !important;
    background: var(--tech-gray);
}

.woocommerce-cart-form .actions .coupon {
    display: flex;
    gap: 1rem;
    align-items: center;
    margin-bottom: 1rem;
    flex-wrap: wrap;
}

.woocommerce-cart-form .actions .coupon label {
    display: none;
}

.woocommerce-cart-form .actions .coupon input.input-text {
    background: transparent;
    color: var(--accent-white);
    border: 1px solid var(--tech-border);
    padding: 0.75rem 1rem;
    font-family: var(--font-main);
    font-size: 0.9rem;
    border-radius: 0;
    flex: 1;
    min-width: 200px;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.woocommerce-cart-form .actions .coupon input.input-text:focus {
    border-color: var(--accent-white);
    outline: none;
}

.woocommerce-cart-form .actions .coupon input.input-text::placeholder {
    color: #888;
    opacity: 0.7;
}

.woocommerce-cart-form .actions .button {
    background: transparent;
    color: var(--accent-white);
    border: 1px solid var(--accent-white);
    padding: 0.75rem 1.5rem;
    font-family: var(--font-main);
    text-transform: uppercase;
    font-size: 0.85rem;
    cursor: pointer;
    border-radius: 0;
    transition: all 0.2s;
    letter-spacing: 0.1em;
}

.woocommerce-cart-form .actions .button:hover {
    background: var(--accent-white);
    color: var(--bg-color);
    box-shadow: 4px 4px 0px var(--tech-border);
}

.woocommerce-cart-form .actions .button[name="update_cart"] {
    margin-left: auto;
}

/* Cart Collaterals */
.cart-collaterals {
    display: grid;
    grid-template-columns: 1fr;
    gap: 2rem;
    margin-top: 3rem;
}

@media (min-width: 768px) {
    .cart-collaterals {
        grid-template-columns: 1fr 1fr;
    }
}

/* Cart Totals */
.cart_totals {
    border: 1px solid var(--tech-border);
    padding: 2rem;
    background: var(--bg-color);
}

.cart_totals h2 {
    font-family: var(--font-main);
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-size: 1.5rem;
    margin-bottom: 1.5rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--tech-border);
    color: var(--accent-white);
    font-weight: normal;
}

.cart_totals table.shop_table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 2rem;
}

.cart_totals table.shop_table th {
    padding: 1rem 0;
    text-align: left;
    font-family: var(--font-main);
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-size: 0.9rem;
    color: var(--accent-white);
    border: none;
    border-bottom: 1px solid var(--tech-border);
    font-weight: normal;
    width: 50%;
}

.cart_totals table.shop_table td {
    padding: 1rem 0;
    text-align: right;
    font-family: var(--font-main);
    color: var(--accent-white);
    border: none;
    border-bottom: 1px solid var(--tech-border);
}

.cart_totals table.shop_table tr.order-total th,
.cart_totals table.shop_table tr.order-total td {
    border-top: 2px solid var(--accent-white);
    border-bottom: none;
    padding-top: 1.5rem;
    font-size: 1.2rem;
    font-weight: normal;
}

/* Proceed to Checkout Button */
.wc-proceed-to-checkout {
    margin-top: 2rem;
}

.wc-proceed-to-checkout .checkout-button {
    background: transparent;
    color: var(--accent-white);
    border: 1px solid var(--accent-white);
    padding: 1.5rem 2rem;
    font-family: var(--font-main);
    text-transform: uppercase;
    font-size: 1rem;
    cursor: pointer;
    border-radius: 0;
    transition: all 0.2s;
    letter-spacing: 0.1em;
    width: 100%;
    display: block;
    text-align: center;
    text-decoration: none;
}

.wc-proceed-to-checkout .checkout-button:hover {
    background: var(--accent-white);
    color: var(--bg-color);
    box-shadow: 6px 6px 0px var(--tech-border);
}

/* Cross-sells */
.cross-sells {
    margin-top: 3rem;
}

.cross-sells h2 {
    font-family: var(--font-main);
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-size: 1.5rem;
    margin-bottom: 2rem;
    color: var(--accent-white);
    font-weight: normal;
}

/* Empty Cart */
.woocommerce-cart .cart-empty {
    text-align: center;
    padding: 4rem 2rem;
    border: 1px solid var(--tech-border);
    background: var(--bg-color);
}

.woocommerce-cart .cart-empty .return-to-shop {
    display: inline-block;
    margin-top: 2rem;
    background: transparent;
    color: var(--accent-white);
    border: 1px solid var(--accent-white);
    padding: 1rem 2rem;
    font-family: var(--font-main);
    text-transform: uppercase;
    font-size: 0.9rem;
    text-decoration: none;
    transition: all 0.2s;
    letter-spacing: 0.1em;
}

.woocommerce-cart .cart-empty .return-to-shop:hover {
    background: var(--accent-white);
    color: var(--bg-color);
    box-shadow: 4px 4px 0px var(--tech-border);
}

/* Responsive Cart Table */
@media (max-width: 768px) {
    .woocommerce-cart-form table.shop_table {
        display: block;
    }

    .woocommerce-cart-form table.shop_table thead {
        display: none;
    }

    .woocommerce-cart-form table.shop_table tbody,
    .woocommerce-cart-form table.shop_table tr,
    .woocommerce-cart-form table.shop_table td {
        display: block;
        width: 100%;
    }

    .woocommerce-cart-form table.shop_table tr {
        border: 1px solid var(--tech-border);
        margin-bottom: 1rem;
        padding: 1rem;
        background: var(--tech-gray);
    }

    .woocommerce-cart-form table.shop_table td {
        border: none;
        padding: 0.5rem 0;
        text-align: left;
    }

    .woocommerce-cart-form table.shop_table td::before {
        content: attr(data-title) ': ';
        font-weight: normal;
        opacity: 0.7;
        margin-right: 0.5rem;
    }

    .woocommerce-cart-form .product-thumbnail {
        width: 100%;
        margin-bottom: 1rem;
    }

    .woocommerce-cart-form .product-remove {
        position: absolute;
        top: 1rem;
        right: 1rem;
    }

    .woocommerce-cart-form .actions {
        flex-direction: column;
    }

    .woocommerce-cart-form .actions .button[name="update_cart"] {
        margin-left: 0;
        width: 100%;
    }
}

/* ============================================
   MY ACCOUNT PAGE STYLING
   ============================================ */

/* My Account Page Container */
.woocommerce-account {
    background: var(--bg-color);
    color: var(--text-color);
}

/* Login Page Specific Centering */
.page .woocommerce {
    max-width: 1400px;
    margin: 0 auto;
    width: 100%;
}

/* Force centering for login page specifically */
.page .entry-content .woocommerce .u-columns.col2-set {
    margin: 2rem auto 0 auto !important;
    max-width: 1400px !important;
    width: 100% !important;
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 3rem !important;
    justify-self: center !important;
}

/* Fix for empty notices wrapper causing layout shift */
.woocommerce-notices-wrapper {
    margin: 0 !important;
    padding: 0 !important;
    min-height: 0;
    line-height: 0;
    width: 100% !important;
    box-sizing: border-box !important;
    position: relative !important;
    left: 0 !important;
    right: 0 !important;
}

.woocommerce-notices-wrapper:empty {
    display: none;
}

/* Alternative: if the above doesn't work, force zero dimensions */
.woocommerce-notices-wrapper:not(:has(*)) {
    display: none;
}

/* Fallback for browsers that don't support :has() */
.woocommerce-notices-wrapper {
    height: 0;
    overflow: hidden;
}

.woocommerce-notices-wrapper:not(:empty) {
    height: auto;
    overflow: visible;
    margin-bottom: 1rem;
}

/* Ensure error messages in registration form don't shift layout */
.u-columns.col2-set .woocommerce-notices-wrapper {
    grid-column: 1 / -1;
    width: 100%;
    max-width: 100%;
}

.u-columns.col2-set .woocommerce-error {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

/* Ensure error messages in login/register forms don't shift layout */
.u-column1 .woocommerce-error,
.u-column2 .woocommerce-error {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    position: relative !important;
    left: 0 !important;
    right: 0 !important;
}

/* Fix for error list items */
.woocommerce-error li {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.woocommerce-error li span {
    display: block;
    width: 100%;
    box-sizing: border-box;
}

/* Fix for error messages at top level (before columns) */
.page .entry-content .woocommerce > .woocommerce-notices-wrapper {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    margin-bottom: 1rem !important;
    padding: 0 !important;
    position: relative !important;
    left: 0 !important;
    right: 0 !important;
    box-sizing: border-box !important;
    display: block !important;
    flex: 0 0 100% !important;
    order: -1 !important;
    align-self: stretch !important;
}

.page .entry-content .woocommerce > .woocommerce-notices-wrapper .woocommerce-error {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    margin-bottom: 1rem !important;
    position: relative !important;
    left: 0 !important;
    right: 0 !important;
    box-sizing: border-box !important;
    display: block !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    padding: 1.5rem !important;
}

/* Ensure error list doesn't break layout */
.page .entry-content .woocommerce > .woocommerce-notices-wrapper .woocommerce-error ul {
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    box-sizing: border-box !important;
    list-style: none !important;
}

/* Ensure error list items don't break layout */
.page .entry-content .woocommerce > .woocommerce-notices-wrapper .woocommerce-error li {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    display: block !important;
}

.page .entry-content .woocommerce > .woocommerce-notices-wrapper .woocommerce-error li span {
    display: block !important;
    width: 100% !important;
    box-sizing: border-box !important;
    word-wrap: break-word !important;
    overflow-wrap: break-word !important;
}

/* Two Column Layout for Login/Register */
.u-columns.col2-set {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 3rem;
    margin: 2rem auto 0 auto;
    max-width: 1400px;
    width: 100%;
    justify-self: center;
    align-self: center;
}

/* Ensure parent container centers the login blocks - for pages with login form */
.page .entry-content .woocommerce:has(.u-columns.col2-set) {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    width: 100% !important;
    gap: 0 !important;
}

/* Ensure notices wrapper is full width and above columns */
.page .entry-content .woocommerce:has(.u-columns.col2-set) > .woocommerce-notices-wrapper {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 auto !important;
    order: -1 !important;
    align-self: stretch !important;
}

/* Ensure columns are below notices */
.page .entry-content .woocommerce:has(.u-columns.col2-set) > .u-columns.col2-set {
    width: 100% !important;
    max-width: 1400px !important;
    flex: 0 0 auto !important;
    order: 1 !important;
    align-self: center !important;
}

/* Default flexbox for login pages */
.page .entry-content .woocommerce {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
}

/* Override for ANY page that contains account navigation - removed empty rules */

/* Direct targeting of woocommerce container with navigation child */
.page .entry-content .woocommerce:has(.woocommerce-MyAccount-navigation),
.woocommerce-account .page .entry-content .woocommerce,
.page .entry-content .woocommerce-account .woocommerce,
body.woocommerce-account .page .entry-content .woocommerce,
.page .entry-content div.woocommerce nav.woocommerce-MyAccount-navigation:first-child {
    flex-direction: unset !important;
    align-items: unset !important;
}

/* More specific: when woocommerce div contains MyAccount-navigation as first child */
.page .entry-content div.woocommerce:first-child nav.woocommerce-MyAccount-navigation {
    display: block !important;
}

.page .entry-content div.woocommerce nav.woocommerce-MyAccount-navigation {
    display: block !important;
}

.u-column1, .u-column2 {
    border: 1px solid var(--tech-border);
    padding: 2rem;
    background: var(--bg-color);
    min-width: 0;
    width: 100%;
    box-sizing: border-box;
}

/* Form Headings */
.u-column1 h2, .u-column2 h2 {
    font-family: var(--font-main);
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-size: 1.5rem;
    margin-bottom: 2rem;
    padding-bottom: 1rem;
    color: var(--accent-white);
    font-weight: normal;
}

/* Form Rows */
.woocommerce-form-row {
    margin-bottom: 1.5rem;
    display: block;
}

/* Labels */
.woocommerce-form label {
    display: block;
    margin-bottom: 0.5rem;
    font-family: var(--font-main);
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-size: 0.85rem;
    color: var(--accent-white);
    opacity: 0.8;
}

/* Required asterisk */
.required {
    color: var(--accent-white);
    opacity: 1;
}

/* Input Fields */
.woocommerce-Input,
.woocommerce-form input[type="text"],
.woocommerce-form input[type="email"],
.woocommerce-form input[type="password"] {
    width: 100%;
    background: transparent;
    color: var(--accent-white);
    border: 1px solid var(--tech-border);
    border-radius: 0;
    padding: 1rem;
    font-family: var(--font-main);
    font-size: 0.9rem;
    box-shadow: none;
    transition: border-color 0.2s;
    box-sizing: border-box;
}

.woocommerce-Input:focus,
.woocommerce-form input[type="text"]:focus,
.woocommerce-form input[type="email"]:focus,
.woocommerce-form input[type="password"]:focus {
    border-color: var(--accent-white);
    outline: none;
    background: transparent;
}

/* Password Input Container */
.password-input {
    position: relative;
    display: block;
    width: 100%;
}

.password-input input {
    padding-right: 3rem;
}

.show-password-input {
    position: absolute;
    right: 1rem;
    top: 50%;
    transform: translateY(-50%);
    background: transparent;
    border: none;
    color: var(--accent-white);
    cursor: pointer;
    font-size: 0.9rem;
    opacity: 0.7;
    transition: opacity 0.2s;
}

.show-password-input:hover {
    opacity: 1;
}

/* Checkbox Styling */
.woocommerce-form__input-checkbox {
    background: transparent !important;
    border: 1px solid var(--accent-white) !important;
    border-radius: 0 !important;
    width: 1.2rem !important;
    height: 1.2rem !important;
    appearance: none;
    -webkit-appearance: none;
    margin-right: 0.75rem !important;
    position: relative;
    cursor: pointer;
    vertical-align: middle;
}

.woocommerce-form__input-checkbox:checked {
    background: var(--accent-white) !important;
}

.woocommerce-form__input-checkbox:checked::after {
    content: 'X';
    color: var(--bg-color);
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 0.8rem;
    font-weight: bold;
    font-family: var(--font-main);
}

/* Checkbox Label */
.woocommerce-form__label-for-checkbox {
    display: flex !important;
    align-items: center;
    margin-bottom: 1rem;
    cursor: pointer;
}

.woocommerce-form__label-for-checkbox span {
    font-size: 0.9rem;
    text-transform: none;
    letter-spacing: normal;
}

/* Buttons */
.woocommerce-button,
.woocommerce-Button,
.woocommerce-form-login__submit,
.woocommerce-form-register__submit {
    background: transparent !important;
    color: var(--accent-white) !important;
    border: 1px solid var(--accent-white) !important;
    padding: 1rem 2rem !important;
    font-family: var(--font-main) !important;
    text-transform: uppercase !important;
    font-size: 0.9rem !important;
    cursor: pointer !important;
    border-radius: 0 !important;
    transition: all 0.2s !important;
    letter-spacing: 0.1em !important;
    width: 100% !important;
    margin-top: 1rem !important;
    font-weight: normal !important;
}

.woocommerce-button:hover,
.woocommerce-Button:hover,
.woocommerce-form-login__submit:hover,
.woocommerce-form-register__submit:hover {
    background: var(--accent-white) !important;
    color: var(--bg-color) !important;
    box-shadow: 4px 4px 0px var(--tech-border) !important;
}

/* Lost Password Link */
.woocommerce-LostPassword {
    margin-top: 1.5rem;
    text-align: center;
}

.woocommerce-LostPassword a {
    color: var(--accent-white);
    text-decoration: none;
    font-size: 0.85rem;
    opacity: 0.8;
    transition: opacity 0.2s;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.woocommerce-LostPassword a:hover {
    opacity: 1;
}

/* Privacy Policy Text */
.woocommerce-privacy-policy-text {
    margin: 1.5rem 0;
    padding: 1rem;
    border: 1px solid var(--tech-border);
    background: var(--tech-gray);
    font-size: 0.8rem;
    line-height: 1.4;
    text-transform: none;
    letter-spacing: normal;
}

.woocommerce-privacy-policy-text p {
    margin: 0;
    color: #dcdcdc;
}

.woocommerce-privacy-policy-link {
    color: var(--accent-white);
    text-decoration: none;
    transition: opacity 0.2s;
}

.woocommerce-privacy-policy-link:hover {
    opacity: 0.8;
}

/* Registration Form Client-Side Error Message */
.registration-error-message {
    background: rgba(255, 68, 68, 0.1) !important;
    border: 1px solid #ff4444 !important;
    border-radius: 0 !important;
    padding: 0.75rem 1rem !important;
    margin-bottom: 1rem !important;
    color: #ff4444 !important;
    font-size: 0.9rem !important;
    font-family: var(--font-main, sans-serif) !important;
    line-height: 1.4 !important;
    width: 100% !important;
    box-sizing: border-box !important;
    position: relative !important;
    left: 0 !important;
    right: 0 !important;
}

.registration-error-message strong {
    font-weight: bold;
    color: #ff4444;
}

/* Login Form Client-Side Error Message */
.login-error-message {
    background: rgba(255, 68, 68, 0.1) !important;
    border: 1px solid #ff4444 !important;
    border-radius: 0 !important;
    padding: 0.75rem 1rem !important;
    margin-bottom: 1rem !important;
    color: #ff4444 !important;
    font-size: 0.9rem !important;
    font-family: var(--font-main, sans-serif) !important;
    line-height: 1.4 !important;
    width: 100% !important;
    box-sizing: border-box !important;
    position: relative !important;
    left: 0 !important;
    right: 0 !important;
}

.login-error-message strong {
    font-weight: bold;
    color: #ff4444;
}

/* Registration Info Text */
.u-column2 p:not(.woocommerce-form-row):not(.form-row) {
    font-size: 0.85rem;
    opacity: 0.7;
    margin: 1rem 0;
    text-transform: none;
    letter-spacing: normal;
    line-height: 1.4;
}

/* Hidden Fields Container */
wc-order-attribution-inputs {
    display: none;
}

/* Responsive Design */
@media (max-width: 768px) {
    .u-columns.col2-set {
        grid-template-columns: 1fr;
        gap: 2rem;
        margin: 2rem auto 0 auto;
        max-width: calc(100% - 1rem);
        width: calc(100% - 1rem);
    }
    
    .u-column1, .u-column2 {
        padding: 2rem;
        width: 100%;
        box-sizing: border-box;
    }
    
    .u-column1 h2, .u-column2 h2 {
        font-size: 1.2rem;
    }
    
    .page .woocommerce {
        margin: 0;
        padding: 0 0.5rem;
        max-width: none;
        width: 100%;
    }
    
    .page .entry-content .woocommerce {
        padding: 0;
    }
}

/* Extra wide on larger screens */
@media (min-width: 1200px) {
    .u-columns.col2-set {
        max-width: 1600px;
    }
    
    .page .woocommerce {
        max-width: 1600px;
    }
    
    .u-column1, .u-column2 {
        padding: 3rem;
    }
}

/* ============================================
   LOGGED-IN MY ACCOUNT DASHBOARD STYLING
   ============================================ */

/* Account Page Layout - Force grid when navigation exists */
/* Desktop Account Layout - Override any flex styles */
.woocommerce-account .woocommerce
.page .entry-content .woocommerce-account .woocommerce,
.page .entry-content .woocommerce:has(.woocommerce-MyAccount-navigation),
.page .entry-content .woocommerce.has-account-navigation {
    display: grid !important;
    grid-template-columns: 300px 1fr !important;
    gap: 3rem !important;
    align-items: start !important;
    margin-top: 2rem !important;
    width: 100% !important;
    max-width: none !important;
    flex-direction: initial !important;
}


/* Account Navigation */
.woocommerce-MyAccount-navigation {
    background: var(--bg-color);
    border: 1px solid var(--tech-border);
    padding: 0;
}

.woocommerce-MyAccount-navigation ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.woocommerce-MyAccount-navigation-link {
    border-bottom: 1px solid var(--tech-border);
}

.woocommerce-MyAccount-navigation-link:last-child {
    border-bottom: none;
}

.woocommerce-MyAccount-navigation-link a {
    display: block;
    padding: 1.5rem 2rem;
    color: var(--accent-white);
    text-decoration: none;
    font-family: var(--font-main);
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-size: 0.85rem;
    transition: all 0.2s;
    background: transparent;
}

.woocommerce-MyAccount-navigation-link a:hover,
.woocommerce-MyAccount-navigation-link.is-active a {
    background: var(--accent-white);
    color: var(--bg-color);
}

/* Account Content Area */
.woocommerce-MyAccount-content {
    background: var(--bg-color);
    border: 1px solid var(--tech-border);
    padding: 2rem;
    min-height: 400px;
}

/* Dashboard Welcome Text */
.woocommerce-MyAccount-content p {
    font-family: var(--font-main);
    color: var(--accent-white);
    line-height: 1.6;
    margin-bottom: 1.5rem;
    text-transform: none;
    letter-spacing: normal;
}

.woocommerce-MyAccount-content p strong {
    color: var(--accent-white);
    font-weight: normal;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.woocommerce-MyAccount-content p a {
    color: var(--accent-white);
    text-decoration: none;
    border-bottom: 1px solid var(--accent-white);
    transition: opacity 0.2s;
}

.woocommerce-MyAccount-content p a:hover {
    opacity: 0.7;
}

/* Orders Table Styling */
.woocommerce-orders-table {
    width: 100%;
    border-collapse: collapse;
    border: 1px solid var(--tech-border);
    background: var(--bg-color);
    margin-top: 2rem;
}

.woocommerce-orders-table thead {
    background: var(--tech-gray);
    border-bottom: 2px solid var(--accent-white);
}

.woocommerce-orders-table__header {
    padding: 1.5rem 1rem;
    text-align: left;
    font-family: var(--font-main);
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-size: 0.85rem;
    color: var(--accent-white);
    border: none;
    font-weight: normal;
}

.woocommerce-orders-table__row {
    border-bottom: 1px solid var(--tech-border);
    transition: background 0.2s;
}

.woocommerce-orders-table__row:hover {
    background: rgba(255, 255, 255, 0.02);
}

.woocommerce-orders-table__cell {
    padding: 1.5rem 1rem;
    color: var(--accent-white);
    font-family: var(--font-main);
    font-size: 0.9rem;
    vertical-align: middle;
    border: none;
}

/* Order Number Links */
.woocommerce-orders-table__cell-order-number a {
    color: var(--accent-white);
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    transition: opacity 0.2s;
}

.woocommerce-orders-table__cell-order-number a:hover {
    opacity: 0.7;
}

/* Order Status */
.woocommerce-orders-table__cell-order-status {
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-size: 0.8rem;
}

/* Order Total */
.woocommerce-Price-amount {
    font-family: var(--font-main);
    color: var(--accent-white);
}

/* Coupon Gift Styling */
.woocommerce-thank-you-page-orders-coupon {
    display: inline-block;
    padding: 0.3rem 0.8rem;
    border: 1px solid var(--accent-white);
    background: transparent;
    color: var(--accent-white);
    font-family: var(--font-main);
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    margin-bottom: 0.5rem;
}

.woocommerce-orders-table__cell-wtypc_coupon p {
    margin: 0;
    font-size: 0.7rem;
    opacity: 0.7;
    text-transform: none;
    letter-spacing: normal;
}

/* Used coupon styling */
.woocommerce-thank-you-page-orders-coupon[style*="color:red"] {
    border-color: #ff4444;
    color: #ff4444 !important;
    opacity: 0.6;
}

/* Action Buttons */
.woocommerce-orders-table__cell-order-actions .button {
    background: transparent;
    color: var(--accent-white);
    border: 1px solid var(--accent-white);
    padding: 0.5rem 1.5rem;
    font-family: var(--font-main);
    text-transform: uppercase;
    font-size: 0.8rem;
    cursor: pointer;
    border-radius: 0;
    transition: all 0.2s;
    letter-spacing: 0.1em;
    text-decoration: none;
    display: inline-block;
}

.woocommerce-orders-table__cell-order-actions .button:hover {
    background: var(--accent-white);
    color: var(--bg-color);
    box-shadow: 3px 3px 0px var(--tech-border);
}

div#ppcp-recaptcha-v2-container {
    margin: 0 !important;
}

/* Mobile Checkout Layout - Full Width Containers */
@media screen and (max-width: 768px) {
    /* Main checkout container adjustments */
    .wc-block-checkout {
        padding: 0 !important;
        margin: 0 !important;
    }
    
    /* Checkout step containers - almost full width on mobile */
    .wc-block-components-checkout-step {
        padding: 1rem !important; /* Reduced padding for mobile */
        box-sizing: border-box !important;
    }
    
    /* Entry content container adjustments */
    .entry-content .wc-block-checkout {
        padding: 0 !important;
        margin: 0 !important;
    }
    
    /* Sidebar layout adjustments for mobile */
    .wc-block-components-sidebar-layout {
        padding: 0 !important;
        margin: 0 !important;
    }
    
    /* Main checkout form area */
    .wc-block-components-main.wc-block-checkout__main {
        padding: 0 !important;
        margin: 0 !important;
        width: 100% !important;
    }
    
    /* Form container */
    .wc-block-components-form.wc-block-checkout__form {
        padding: 0 !important;
        margin: 0 !important;
        width: 100% !important;
    }
    
    /* Address form wrapper adjustments */
    .wc-block-components-address-form-wrapper,
    .wc-block-components-address-form {
        width: 100% !important;
        padding: 0 !important;
        margin: 0 !important;
    }
    
    /* Input fields mobile adjustments */
    .wc-block-components-text-input {
        width: 100% !important;
        margin-bottom: 1rem !important;
    }
    
    /* Country/region select mobile adjustments */
    .wc-block-components-address-form__country {
        width: 100% !important;
        margin-bottom: 1rem !important;
    }
    
    /* Radio control options mobile adjustments */
    .wc-block-components-radio-control__option {
        margin: 0 0 0.75rem 0 !important;
        padding: 0.75rem !important;
        width: 100% !important;
    }
    
    /* Payment method container */
    .wc-block-checkout__payment-method {
        margin: 0 0.5rem 1rem 0.5rem !important;
        width: calc(100% - 1rem) !important;
    }
    
    /* Order notes container */
    .wc-block-checkout__order-notes {
        margin: 0 0.5rem 1rem 0.5rem !important;
        width: calc(100% - 1rem) !important;
    }
    
    /* Terms container */
    .wc-block-checkout__terms {
        margin: 0 0.5rem 1rem 0.5rem !important;
        width: calc(100% - 1rem) !important;
        padding: 1rem !important;
    }
    
    /* Actions container (place order button) */
    .wc-block-checkout__actions {
        margin: 0 0.5rem 1rem 0.5rem !important;
        width: calc(100% - 1rem) !important;
        padding: 1rem !important;
    }
    
    /* Sidebar (order summary) mobile adjustments */
    .wc-block-components-sidebar.wc-block-checkout__sidebar {
        width: calc(100%) !important;
        padding: 1rem !important;
    }
}

/* Mobile Account Layout - Force Override */
@media screen and (max-width: 768px) {
    .woocommerce-account .woocommerce,
    .page .entry-content .woocommerce-account .woocommerce,
    .page .entry-content .woocommerce:has(.woocommerce-MyAccount-navigation),
    .page .entry-content .woocommerce.has-account-navigation,
    .page .entry-content .woocommerce[style*="grid-template-columns"] {
        flex-direction: column !important;
        gap: 1.5rem !important;
        margin: 1rem 0 !important;
        padding: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        overflow-x: hidden !important;
        grid-template-columns: none !important;
        align-items: stretch !important;
    }
    
    .woocommerce-MyAccount-navigation {
        order: 1 !important;
        margin-bottom: 1rem !important;
        width: 100% !important;
        overflow-x: auto !important;
        flex: none !important;
    }
    
    .woocommerce-MyAccount-content {
        order: 2 !important;
        width: 100% !important;
        overflow-x: hidden !important;
        padding: 0 !important;
        flex: 1 !important;
    }
    
    /* Force override any inline grid styles */
    .page .entry-content .woocommerce.has-account-navigation[style] {
        display: flex !important;
        flex-direction: column !important;
        grid-template-columns: none !important;
    }

    .page .entry-content .woocommerce .u-columns.col2-set {
        display: flex !important;
        flex-direction: column !important;
    }
    
    /* Fix table overflow on mobile */
    .woocommerce-orders-table {
        width: 100% !important;
        max-width: 100% !important;
        overflow-x: auto !important;
        display: block !important;
        white-space: nowrap !important;
        border: 1px solid var(--tech-border) !important;
    }
    
    .woocommerce-orders-table thead {
        display: none !important;
    }
    
    .woocommerce-orders-table tbody {
        display: block !important;
        width: 100% !important;
    }
    
    .woocommerce-orders-table__row {
        display: block !important;
        border: 1px solid var(--tech-border) !important;
        margin-bottom: 1rem !important;
        padding: 1rem !important;
        background: var(--tech-gray) !important;
        white-space: normal !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }
    
    .woocommerce-orders-table__cell {
        display: block !important;
        width: 100% !important;
        padding: 0.5rem 0 !important;
        text-align: left !important;
        border: none !important;
        white-space: normal !important;
    }
    
    .woocommerce-orders-table__cell::before {
        content: attr(data-title) ': ' !important;
        font-weight: normal !important;
        opacity: 0.7 !important;
        margin-right: 0.5rem !important;
        text-transform: uppercase !important;
        font-size: 0.8rem !important;
        display: inline-block !important;
        min-width: 80px !important;
    }
    
    /* Navigation mobile styles */
    .woocommerce-MyAccount-navigation ul {
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 0.5rem !important;
        padding: 0 !important;
        margin: 0 !important;
    }
    
    .woocommerce-MyAccount-navigation-link {
        flex: 1 1 auto !important;
        min-width: calc(50% - 0.25rem) !important;
        border-bottom: none !important;
    }
    
    .woocommerce-MyAccount-navigation-link a {
        padding: 0.75rem 1rem !important;
        font-size: 0.8rem !important;
        text-align: center !important;
        display: block !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }
    
    /* Address section mobile styles */
    .woocommerce-Address {
        width: 100% !important;
        margin-bottom: 2rem !important;
        border: 1px solid var(--tech-border) !important;
        padding: 1.5rem !important;
        background: var(--tech-gray) !important;
        box-sizing: border-box !important;
    }
    
    .woocommerce-Address-title {
        margin-bottom: 1rem !important;
        padding-bottom: 1rem !important;
        border-bottom: 1px solid var(--tech-border) !important;
    }
    
    .woocommerce-Address-title h2 {
        font-size: 1.2rem !important;
        margin-bottom: 0.5rem !important;
        color: var(--accent-white) !important;
        text-transform: uppercase !important;
        letter-spacing: 0.1em !important;
    }
    
    .woocommerce-Address-title .edit {
        font-size: 0.8rem !important;
        padding: 0.5rem 1rem !important;
        margin-top: 0.5rem !important;
        display: inline-block !important;
    }
    
    .woocommerce-Address address {
        font-style: normal !important;
        line-height: 1.6 !important;
        color: var(--accent-white) !important;
        font-size: 0.9rem !important;
    }
    
    .woocommerce-MyAccount-content {
        order: 1;
        padding: 1.5rem;
    }
    
    .woocommerce-orders-table {
        display: block;
        overflow-x: auto;
        white-space: nowrap;
    }
    
    .woocommerce-orders-table thead {
        display: none;
    }
    
    .woocommerce-orders-table__row {
        display: block;
        border: 1px solid var(--tech-border);
        margin-bottom: 1rem;
        padding: 1rem;
        background: var(--tech-gray);
        white-space: normal;
    }
    
    .woocommerce-orders-table__cell {
        display: block;
        padding: 0.5rem 0;
        text-align: left;
        border: none;
    }
    
    .woocommerce-orders-table__cell::before {
        content: attr(data-title) ': ';
        font-weight: normal;
        opacity: 0.7;
        margin-right: 0.5rem;
        text-transform: uppercase;
        font-size: 0.8rem;
    }
    
    .woocommerce-orders-table__cell-order-number::before {
        content: 'ZAMÓWIENIE: ';
    }
    
    .woocommerce-orders-table__cell-order-date::before {
        content: 'DATA: ';
    }
    
    .woocommerce-orders-table__cell-order-status::before {
        content: 'STATUS: ';
    }
    
    .woocommerce-orders-table__cell-order-total::before {
        content: 'ŁĄCZNIE: ';
    }
    
    .woocommerce-orders-table__cell-wtypc_coupon::before {
        content: 'KUPON: ';
    }
    
    .woocommerce-orders-table__cell-order-actions::before {
        content: 'DZIAŁANIA: ';
    }
}

/* ============================================
   ORDER DETAILS & ACCOUNT SECTIONS STYLING
   ============================================ */

/* Order Status Marks */
.order-number,
.order-date,
.order-status {
    background: var(--accent-white) !important;
    color: var(--bg-color) !important;
    padding: 0.3rem 0.8rem !important;
    font-family: var(--font-main) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.1em !important;
    font-size: 0.85rem !important;
    border: none !important;
    font-weight: normal !important;
}

/* Order Details Section */
.woocommerce-order-details {
    margin: 2rem 0;
    border: 1px solid var(--tech-border);
    padding: 2rem;
    background: var(--bg-color);
}

.woocommerce-order-details__title {
    font-family: var(--font-main) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.1em !important;
    font-size: 1.3rem !important;
    margin-bottom: 2rem !important;
    padding-bottom: 1rem !important;
    border-bottom: 1px solid var(--tech-border) !important;
    color: var(--accent-white) !important;
    font-weight: normal !important;
}

/* Order Details Table */
.woocommerce-table--order-details {
    width: 100%;
    border-collapse: collapse;
    border: 1px solid var(--tech-border);
    background: var(--bg-color);
    margin-bottom: 2rem;
}

.woocommerce-table--order-details thead {
    background: var(--tech-gray);
    border-bottom: 2px solid var(--accent-white);
}

.woocommerce-table--order-details th {
    padding: 1.5rem 1rem;
    text-align: left;
    font-family: var(--font-main);
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-size: 0.9rem;
    color: var(--accent-white);
    border: none;
    font-weight: normal;
}

.woocommerce-table--order-details td {
    padding: 1.5rem 1rem;
    border-bottom: 1px solid var(--tech-border);
    color: var(--accent-white);
    font-family: var(--font-main);
    vertical-align: middle;
}

.woocommerce-table--order-details tbody tr:hover {
    background: rgba(255, 255, 255, 0.02);
}

/* Product Links in Order Details */
.woocommerce-table__product-name a {
    color: var(--accent-white);
    text-decoration: none;
    transition: opacity 0.2s;
}

.woocommerce-table__product-name a:hover {
    opacity: 0.7;
}

.product-quantity {
    color: var(--accent-white) !important;
    font-weight: normal !important;
}

/* Order Totals Footer */
.woocommerce-table--order-details tfoot th {
    background: var(--tech-gray);
    text-align: right;
    padding: 1rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-size: 0.85rem;
}

.woocommerce-table--order-details tfoot td {
    background: var(--tech-gray);
    text-align: right;
    padding: 1rem;
    font-weight: normal;
}

.woocommerce-table--order-details tfoot tr:last-child th,
.woocommerce-table--order-details tfoot tr:last-child td {
    border-top: 2px solid var(--accent-white);
    font-size: 1.1rem;
    padding: 1.5rem 1rem;
}

/* Order Again Button */
.order-again {
    margin-top: 2rem;
    text-align: center;
}

.order-again .button {
    background: transparent !important;
    color: var(--accent-white) !important;
    border: 1px solid var(--accent-white) !important;
    padding: 1rem 2rem !important;
    font-family: var(--font-main) !important;
    text-transform: uppercase !important;
    font-size: 0.9rem !important;
    cursor: pointer !important;
    border-radius: 0 !important;
    transition: all 0.2s !important;
    letter-spacing: 0.1em !important;
    text-decoration: none !important;
    display: inline-block !important;
}

.order-again .button:hover {
    background: var(--accent-white) !important;
    color: var(--bg-color) !important;
    box-shadow: 4px 4px 0px var(--tech-border) !important;
}

/* Customer Details Section */
.woocommerce-customer-details {
    margin: 2rem 0;
    border: 1px solid var(--tech-border);
    padding: 2rem;
    background: var(--bg-color);
}

.woocommerce-column__title {
    font-family: var(--font-main) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.1em !important;
    font-size: 1.3rem !important;
    margin-bottom: 1.5rem !important;
    padding-bottom: 1rem !important;
    border-bottom: 1px solid var(--tech-border) !important;
    color: var(--accent-white) !important;
    font-weight: normal !important;
}

.woocommerce-customer-details address {
    font-family: var(--font-main);
    color: var(--accent-white);
    font-style: normal;
    line-height: 1.6;
    font-size: 0.95rem;
    text-transform: none;
    letter-spacing: normal;
}

.woocommerce-customer-details--phone,
.woocommerce-customer-details--email {
    margin: 0.5rem 0 !important;
    color: var(--accent-white) !important;
    font-family: var(--font-main) !important;
}

/* Payment Methods Table */
.woocommerce-MyAccount-paymentMethods {
    width: 100%;
    border-collapse: collapse;
    border: 1px solid var(--tech-border);
    background: var(--bg-color);
    margin-bottom: 2rem;
}

.woocommerce-MyAccount-paymentMethods thead {
    background: var(--tech-gray);
    border-bottom: 2px solid var(--accent-white);
}

.woocommerce-PaymentMethod {
    padding: 1.5rem 1rem;
    text-align: left;
    font-family: var(--font-main);
    color: var(--accent-white);
    border-bottom: 1px solid var(--tech-border);
}

.woocommerce-MyAccount-paymentMethods th {
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-size: 0.9rem;
    font-weight: normal;
}

.woocommerce-MyAccount-paymentMethods tbody tr {
    transition: background 0.2s;
}

.woocommerce-MyAccount-paymentMethods tbody tr:hover {
    background: rgba(255, 255, 255, 0.02);
}

.default-payment-method {
    background: var(--tech-gray);
}

/* Payment Method Actions */
.payment-method-actions .button {
    background: transparent !important;
    color: var(--accent-white) !important;
    border: 1px solid var(--accent-white) !important;
    padding: 0.5rem 1rem !important;
    font-family: var(--font-main) !important;
    text-transform: uppercase !important;
    font-size: 0.8rem !important;
    cursor: pointer !important;
    border-radius: 0 !important;
    transition: all 0.2s !important;
    letter-spacing: 0.1em !important;
    text-decoration: none !important;
    display: inline-block !important;
}

.payment-method-actions .button:hover {
    background: var(--accent-white) !important;
    color: var(--bg-color) !important;
    box-shadow: 3px 3px 0px var(--tech-border) !important;
}

.payment-method-actions .button.delete:hover {
    background: #ff4444 !important;
    border-color: #ff4444 !important;
    color: var(--accent-white) !important;
}

/* Add Payment Method Button */
.woocommerce-MyAccount-content > .button {
    background: transparent !important;
    color: var(--accent-white) !important;
    border: 1px solid var(--accent-white) !important;
    padding: 1rem 2rem !important;
    font-family: var(--font-main) !important;
    text-transform: uppercase !important;
    font-size: 0.9rem !important;
    cursor: pointer !important;
    border-radius: 0 !important;
    transition: all 0.2s !important;
    letter-spacing: 0.1em !important;
    text-decoration: none !important;
    display: inline-block !important;
    margin-top: 1rem !important;
}

.woocommerce-MyAccount-content > .button:hover {
    background: var(--accent-white) !important;
    color: var(--bg-color) !important;
    box-shadow: 4px 4px 0px var(--tech-border) !important;
}

/* Responsive Design for Account Details */
@media (max-width: 768px) {
    .woocommerce-order-details,
    .woocommerce-customer-details {
        padding: 1.5rem;
    }
    
    .woocommerce-table--order-details,
    .woocommerce-MyAccount-paymentMethods {
        display: block;
        overflow-x: auto;
    }
    
    .woocommerce-table--order-details thead,
    .woocommerce-MyAccount-paymentMethods thead {
        display: none;
    }
    
    .woocommerce-table--order-details tbody tr,
    .woocommerce-MyAccount-paymentMethods tbody tr {
        display: block;
        border: 1px solid var(--tech-border);
        margin-bottom: 1rem;
        padding: 1rem;
        background: var(--tech-gray);
    }
    
    .woocommerce-table--order-details td,
    .woocommerce-PaymentMethod {
        display: block;
        padding: 0.5rem 0;
        text-align: left;
        border: none;
    }
    
    .woocommerce-table--order-details td::before,
    .woocommerce-PaymentMethod::before {
        content: attr(data-title) ': ';
        font-weight: normal;
        opacity: 0.7;
        margin-right: 0.5rem;
        text-transform: uppercase;
        font-size: 0.8rem;
    }
    
    .woocommerce-table--order-details tfoot {
        display: block;
        margin-top: 1rem;
    }
    
    .woocommerce-table--order-details tfoot tr {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 0.5rem 0;
        border: none;
        background: transparent;
    }
    
    .woocommerce-table--order-details tfoot th,
    .woocommerce-table--order-details tfoot td {
        display: block;
        padding: 0;
        background: transparent;
        text-align: left;
    }
}

/* ============================================
   ACCOUNT FORMS & ADDRESS EDITING STYLING
   ============================================ */

/* Address Fields Wrapper */
.woocommerce-address-fields__field-wrapper {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1.5rem;
    margin-bottom: 2rem;
}

.woocommerce-address-fields__field-wrapper .form-row-wide {
    grid-column: 1 / -1;
}

/* Form Row Styling */
.woocommerce-MyAccount-content .form-row {
    margin-bottom: 1.5rem;
}

.woocommerce-MyAccount-content .form-row label {
    display: block;
    margin-bottom: 0.5rem;
    font-family: var(--font-main);
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-size: 0.85rem;
    color: var(--accent-white);
    opacity: 0.8;
}

/* Input Fields in Account Forms */
.woocommerce-MyAccount-content .input-text,
.woocommerce-MyAccount-content .woocommerce-Input {
    width: 100%;
    background: transparent;
    color: var(--accent-white);
    border: 1px solid var(--tech-border);
    border-radius: 0;
    padding: 1rem;
    font-family: var(--font-main);
    font-size: 0.9rem;
    box-shadow: none;
    transition: border-color 0.2s;
    box-sizing: border-box;
}

.woocommerce-MyAccount-content .input-text:focus,
.woocommerce-MyAccount-content .woocommerce-Input:focus {
    border-color: var(--accent-white);
    outline: none;
    background: transparent;
}

/* Select2 Dropdown Styling */
.select2-container--default .select2-selection--single {
    background: transparent !important;
    border: 1px solid var(--tech-border) !important;
    border-radius: 0 !important;
    height: 3.5rem !important;
    line-height: 3.5rem !important;
    color: var(--accent-white) !important;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
    color: var(--accent-white) !important;
    font-family: var(--font-main) !important;
    font-size: 0.9rem !important;
    line-height: 3.5rem !important;
    padding-left: 1rem !important;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 3.5rem !important;
    right: 1rem !important;
}

.select2-container--default .select2-selection--single .select2-selection__arrow b {
    border-color: var(--accent-white) transparent transparent transparent !important;
    border-width: 6px 6px 0 6px !important;
    margin-top: -3px !important;
}

.select2-dropdown {
    background: var(--bg-color) !important;
    border: 1px solid var(--accent-white) !important;
    border-radius: 0 !important;
}

.select2-results__option {
    background: var(--bg-color) !important;
    color: var(--accent-white) !important;
    font-family: var(--font-main) !important;
    padding: 0.75rem 1rem !important;
}

.select2-results__option--highlighted {
    background: var(--accent-white) !important;
    color: var(--bg-color) !important;
}

/* Address Display Section */
.woocommerce-Address {
    border: 1px solid var(--tech-border);
    padding: 2rem;
    background: var(--bg-color);
    margin-bottom: 2rem;
}

.woocommerce-Address-title {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1.5rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--tech-border);
}

.woocommerce-Address-title h2 {
    font-family: var(--font-main);
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-size: 1.2rem;
    margin: 0;
    color: var(--accent-white);
    font-weight: normal;
}

/* Edit Address Button - Make More Visible */
.woocommerce-Address-title .edit {
    background: transparent !important;
    color: var(--accent-white) !important;
    border: 1px solid var(--accent-white) !important;
    padding: 0.5rem 1.5rem !important;
    font-family: var(--font-main) !important;
    text-transform: uppercase !important;
    font-size: 0.8rem !important;
    cursor: pointer !important;
    border-radius: 0 !important;
    transition: all 0.2s !important;
    letter-spacing: 0.1em !important;
    text-decoration: none !important;
    display: inline-block !important;
}

.woocommerce-Address-title .edit:hover {
    background: var(--accent-white) !important;
    color: var(--bg-color) !important;
    box-shadow: 3px 3px 0px var(--tech-border) !important;
}

.woocommerce-Address address {
    font-family: var(--font-main);
    color: var(--accent-white);
    font-style: normal;
    line-height: 1.6;
    font-size: 0.95rem;
    text-transform: none;
    letter-spacing: normal;
}

/* Account Details Form */
.woocommerce-EditAccountForm {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1.5rem;
    align-items: start;
}

.woocommerce-EditAccountForm .form-row-wide {
    grid-column: 1 / -1;
}

.woocommerce-EditAccountForm .clear {
    grid-column: 1 / -1;
    height: 0;
    margin: 0;
}

/* Password Change Fieldset */
.woocommerce-EditAccountForm fieldset {
    grid-column: 1 / -1;
    border: 1px solid var(--tech-border);
    padding: 2rem;
    margin: 2rem 0;
    background: var(--tech-gray);
}

.woocommerce-EditAccountForm fieldset legend {
    font-family: var(--font-main);
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-size: 1.1rem;
    color: var(--accent-white);
    padding: 0 1rem;
    background: var(--bg-color);
    border: 1px solid var(--tech-border);
    margin-left: -1rem;
}

/* Password Input Containers */
.woocommerce-EditAccountForm .password-input {
    position: relative;
    display: block;
    width: 100%;
}

.woocommerce-EditAccountForm .password-input input {
    padding-right: 3rem;
}

.woocommerce-EditAccountForm .show-password-input {
    position: absolute;
    right: 1rem;
    top: 50%;
    transform: translateY(-50%);
    background: transparent;
    border: none;
    color: var(--accent-white);
    cursor: pointer;
    font-size: 0.9rem;
    opacity: 0.7;
    transition: opacity 0.2s;
}

.woocommerce-EditAccountForm .show-password-input:hover {
    opacity: 1;
}

/* Display Name Description */
#account_display_name_description {
    display: block;
    margin-top: 0.5rem;
    font-size: 0.8rem;
    opacity: 0.7;
    font-style: italic;
    text-transform: none;
    letter-spacing: normal;
    line-height: 1.4;
}

/* Currency Select Styling */
.woocommerce-EditAccountForm select {
    width: 100%;
    background: transparent;
    color: var(--accent-white);
    border: 1px solid var(--tech-border);
    border-radius: 0;
    padding: 1rem;
    font-family: var(--font-main);
    font-size: 0.9rem;
    cursor: pointer;
    outline: none;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    background-image: url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23FFFFFF%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E");
    background-repeat: no-repeat;
    background-position: right 1rem top 50%;
    background-size: 0.65rem auto;
    padding-right: 3rem;
}

.woocommerce-EditAccountForm select:hover,
.woocommerce-EditAccountForm select:focus {
    border-color: var(--accent-white);
}

.woocommerce-EditAccountForm select option {
    background-color: var(--bg-color);
    color: var(--accent-white);
}

/* Currency Description */
.woocommerce-EditAccountForm span em {
    display: block;
    margin-top: 0.5rem;
    font-size: 0.8rem;
    opacity: 0.7;
    font-style: italic;
    text-transform: none;
    letter-spacing: normal;
    line-height: 1.4;
}

/* Form Submit Buttons */
.woocommerce-MyAccount-content .button[type="submit"],
.woocommerce-MyAccount-content button[type="submit"] {
    grid-column: 1 / -1;
    background: transparent !important;
    color: var(--accent-white) !important;
    border: 1px solid var(--accent-white) !important;
    padding: 1rem 2rem !important;
    font-family: var(--font-main) !important;
    text-transform: uppercase !important;
    font-size: 0.9rem !important;
    cursor: pointer !important;
    border-radius: 0 !important;
    transition: all 0.2s !important;
    letter-spacing: 0.1em !important;
    width: 100% !important;
    margin-top: 2rem !important;
    font-weight: normal !important;
}

.woocommerce-MyAccount-content .button[type="submit"]:hover,
.woocommerce-MyAccount-content button[type="submit"]:hover {
    background: var(--accent-white) !important;
    color: var(--bg-color) !important;
    box-shadow: 4px 4px 0px var(--tech-border) !important;
}

/* Responsive Design for Account Forms */
@media (max-width: 768px) {
    .woocommerce-address-fields__field-wrapper {
        grid-template-columns: 1fr;
        gap: 1rem;
    }
    
    .woocommerce-EditAccountForm {
        grid-template-columns: 1fr;
        gap: 1rem;
    }
    
    .woocommerce-EditAccountForm fieldset {
        padding: 1.5rem;
        margin: 1.5rem 0;
    }
    
    .woocommerce-Address {
        padding: 1.5rem;
    }
    
    .woocommerce-Address-title {
        flex-direction: column;
        align-items: flex-start;
        gap: 1rem;
    }
    
    .woocommerce-Address-title .edit {
        width: 100%;
        text-align: center;
    }
}

/* ============================================
   WOOCOMMERCE BLOCKS CART PAGE STYLING
   ============================================ */

/* Cart Block Container */
.wp-block-woocommerce-cart {
    background: var(--bg-color);
    color: var(--accent-white);
}

.wc-block-cart {
    background: var(--bg-color);
}

/* Cart Items Table */
.wc-block-cart-items {
    width: 100%;
    border-collapse: collapse;
    border: 1px solid var(--tech-border);
    background: var(--bg-color);
    margin-bottom: 2rem;
}

.wc-block-cart-items thead {
    background: var(--tech-gray);
    border-bottom: 2px solid var(--accent-white);
}

.wc-block-cart-items__header th {
    padding: 1.5rem 1rem;
    text-align: left;
    font-family: var(--font-main);
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-size: 0.9rem;
    color: var(--accent-white);
    border: none;
    font-weight: normal;
}

.wc-block-cart-items__row {
    border-bottom: 1px solid var(--tech-border);
    transition: background 0.2s;
}

.wc-block-cart-items__row:hover {
    background: rgba(255, 255, 255, 0.02);
}

.wc-block-cart-item__image {
    padding: 1rem;
    width: 120px;
}

.wc-block-cart-item__image img {
    width: 100px;
    height: 100px;
    object-fit: cover;
    border: 1px solid var(--tech-border);
    display: block;
}

.wc-block-cart-item__image a {
    display: block;
}

/* Cart Item Product Details */
.wc-block-cart-item__product {
    padding: 1.5rem 1rem;
    vertical-align: top;
    position: relative;
}

.wc-block-cart-item__wrap {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    position: relative;
}

.wc-block-cart-item__wrap .wc-block-components-product-name {
    font-family: var(--font-main) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    font-size: 1rem !important;
    color: var(--accent-white) !important;
    text-decoration: none !important;
    transition: opacity 0.2s;
}

.wc-block-cart-item__wrap .wc-block-components-product-name:hover {
    opacity: 0.7;
}

.wc-block-cart-item__prices {
    margin: 0.5rem 0;
}

.wc-block-cart-item__prices .wc-block-components-product-price {
    font-family: var(--font-main) !important;
    color: var(--accent-white) !important;
    font-size: 1rem !important;
}

/* Quantity and Remove under price */
.wc-block-cart-item__prices + .wc-block-components-product-metadata + .wc-block-cart-item__quantity {
    margin-top: 1rem;
    margin-left: 0;
    justify-content: flex-start;
}

/* Product Metadata (variations) */
.wc-block-components-product-metadata {
    margin-top: 0.5rem;
}

.wc-block-components-product-details {
    font-size: 0.85rem;
    opacity: 0.7;
    font-family: var(--font-main);
}

.wc-block-components-product-details__name {
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.wc-block-components-product-details__value {
    text-transform: none;
}

/* Quantity Selector */
.wc-block-cart-item__quantity {
    margin-top: 1rem;
    display: flex;
    align-items: center;
    gap: 1rem;
    justify-content: flex-start;
}

.wc-block-components-quantity-selector {
    display: flex;
    align-items: center;
    gap: 0;
    margin-bottom: 0;
}

.wc-block-components-quantity-selector__input {
    background: transparent !important;
    color: var(--accent-white) !important;
    border: 1px solid var(--tech-border) !important;
    border-left: none !important;
    border-right: none !important;
    padding: 0.5rem !important;
    font-family: var(--font-main) !important;
    font-size: 0.9rem !important;
    border-radius: 0 !important;
    height: 40px !important;
    width: 60px !important;
    text-align: center !important;
    -moz-appearance: textfield !important;
    appearance: textfield !important;
}

.wc-block-components-quantity-selector__input::-webkit-outer-spin-button,
.wc-block-components-quantity-selector__input::-webkit-inner-spin-button {
    -webkit-appearance: none !important;
    margin: 0 !important;
}

.wc-block-components-quantity-selector__button {
    background: transparent !important;
    color: var(--accent-white) !important;
    border: 1px solid var(--tech-border) !important;
    width: 40px !important;
    height: 40px !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-family: var(--font-main) !important;
    font-size: 1.2rem !important;
    cursor: pointer !important;
    transition: all 0.2s !important;
    line-height: 1 !important;
    border-radius: 0 !important;
}

.wc-block-components-quantity-selector__button:hover {
    background: var(--accent-white) !important;
    color: var(--bg-color) !important;
}

/* Remove Link */
.wc-block-cart-item__remove-link {
    background: transparent !important;
    color: var(--accent-white) !important;
    border: 1px solid var(--tech-border) !important;
    padding: 0.5rem 1rem !important;
    font-family: var(--font-main) !important;
    text-transform: uppercase !important;
    font-size: 0.85rem !important;
    text-decoration: none !important;
    display: inline-block !important;
    transition: all 0.2s !important;
    letter-spacing: 0.1em !important;
    border-radius: 0 !important;
    margin: 0 !important;
    flex-shrink: 0;
}

.wc-block-cart-item__remove-link:hover {
    background: var(--accent-white) !important;
    color: var(--bg-color) !important;
    border-color: var(--accent-white) !important;
}

/* Cart Item Total */
.wc-block-cart-item__total {
    padding: 1.5rem 1rem;
    text-align: right;
    vertical-align: top;
}

.wc-block-cart-item__total-price-and-sale-badge-wrapper {
    font-family: var(--font-main);
    color: var(--accent-white);
    font-size: 1rem;
}

/* Cart Sidebar */
.wc-block-cart__sidebar {
    background: var(--bg-color) !important;
    border: 1px solid var(--tech-border) !important;
    padding: 2rem !important;
}

/* Cart Totals Title */
.wc-block-cart__totals-title {
    font-family: var(--font-main) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.1em !important;
    font-size: 1.5rem !important;
    margin-bottom: 1.5rem !important;
    padding-bottom: 1rem !important;
    border-bottom: 1px solid var(--tech-border) !important;
    color: var(--accent-white) !important;
    font-weight: normal !important;
}

/* Coupon Panel */
.wc-block-components-totals-coupon {
    margin-bottom: 1.0rem;
}

.wc-block-components-totals-coupon .wc-block-components-panel__button,
.wc-block-components-totals-coupon .wc-block-components-panel__button:active,
.wc-block-components-totals-coupon .wc-block-components-panel__button:focus,
.wc-block-components-totals-coupon .wc-block-components-panel__button:hover {
    background: transparent !important;
    color: var(--accent-white) !important;
    border: 1px solid var(--tech-border) !important;
    padding: 0.75rem 1rem 0.5rem 1rem !important;
    font-family: var(--font-main) !important;
    text-transform: uppercase !important;
    font-size: 0.85rem !important;
    letter-spacing: 0.1em !important;
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    cursor: pointer !important;
    transition: all 0.2s !important;
    border-radius: 0 !important;
}

.wc-block-components-panel__button:hover {
    background: var(--tech-gray) !important;
    border-color: var(--accent-white) !important;
}

.wc-block-components-panel__button-icon {
    width: 20px;
    height: 20px;
    fill: var(--accent-white);
}

/* Cart Totals Items */
.wc-block-components-totals-item {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    font-family: var(--font-main) !important;
    color: var(--accent-white) !important;
}

.wc-block-components-totals-wrapper {
    padding: 0;
}

/* Checkout Order Summary Totals - better vertical centering */
.wp-block-woocommerce-checkout-order-summary-subtotal-block .wc-block-components-totals-item,
.wp-block-woocommerce-checkout-order-summary-shipping-block .wc-block-components-totals-item {
    padding: 1.5rem 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    min-height: 60px !important;
}

/* Ensure totals wrapper doesn't add extra spacing - disable padding */
.wp-block-woocommerce-checkout-order-summary-subtotal-block .wc-block-components-totals-wrapper,
.wp-block-woocommerce-checkout-order-summary-shipping-block .wc-block-components-totals-wrapper,
.wp-block-woocommerce-checkout-order-summary-totals-block .wc-block-components-totals-wrapper {
    padding: 0 !important;
    padding-top: 0 !important;
    padding-right: 0 !important;
    padding-bottom: 0 !important;
    padding-left: 0 !important;
    margin: 0 !important;
    border-top: none !important;
}

/* Ensure shipping totals item has same alignment */
.wc-block-components-totals-shipping .wc-block-components-totals-item {
    padding: 1.5rem 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    min-height: 60px !important;
}

/* Add padding to shipping wrapper to center it properly */
.wp-block-woocommerce-checkout-order-summary-shipping-block .wc-block-components-totals-wrapper {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.wp-block-woocommerce-checkout-order-summary-shipping-block .wc-block-components-totals-shipping {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.wc-block-components-totals-item__label {
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    font-size: 0.9rem !important;
}

.wc-block-components-totals-item__value {
    font-size: 0.9rem !important;
    color: var(--accent-white) !important;
}

.wc-block-components-totals-footer-item {
    border-top: 2px solid var(--accent-white) !important;
    border-bottom: none !important;
    padding-top: 1.5rem !important;
    margin-top: 1rem !important;
}

.wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
    font-size: 1.2rem !important;
    font-weight: normal !important;
}

/* Proceed to Checkout Button */
.wc-block-cart__submit {
    margin-top: 2rem;
}

.wc-block-cart__submit-button {
    background: transparent !important;
    color: var(--accent-white) !important;
    border: 1px solid var(--accent-white) !important;
    padding: 1.5rem 2rem !important;
    font-family: var(--font-main) !important;
    text-transform: uppercase !important;
    font-size: 1rem !important;
    cursor: pointer !important;
    border-radius: 0 !important;
    transition: all 0.2s !important;
    letter-spacing: 0.1em !important;
    width: 100% !important;
    display: block !important;
    text-align: center !important;
    text-decoration: none !important;
}

.wc-block-cart__submit-button:hover {
    background: var(--accent-white) !important;
    color: var(--bg-color) !important;
    box-shadow: 6px 6px 0px var(--tech-border) !important;
}

.wc-block-components-button__text {
    font-family: var(--font-main) !important;
}

/* Responsive Cart Blocks */
@media (max-width: 768px) {
    /* Fix cart container overflow on mobile */
    .wc-block-components-main,
    .wc-block-cart__main {
        width: 100% !important;
        max-width: 100% !important;
        overflow-x: hidden !important;
        box-sizing: border-box !important;
        padding-left: 1rem !important;
        padding-right: 1rem !important;
    }

    .wc-block-cart-items {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
        overflow-x: hidden !important;
        table-layout: fixed !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    .wc-block-cart-items thead {
        display: none;
    }

    .wc-block-cart-items__row {
        display: block !important;
        border: 1px solid var(--tech-border);
        margin-bottom: 1rem;
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding: 1rem;
        background: var(--tech-gray);
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }

    .wc-block-cart-item__image,
    .wc-block-cart-item__product,
    .wc-block-cart-item__total {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        padding: 0.5rem 0;
        box-sizing: border-box !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    .wc-block-cart-item__image img {
        max-width: 100%;
        height: auto;
    }

    .wc-block-cart-item__total {
        text-align: left;
        border-top: 1px solid var(--tech-border);
        padding-top: 1rem;
        margin-top: 1rem;
    }

    /* Fix quantity selector and buttons overflow */
    .wc-block-cart-item__quantity {
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
    }

    .wc-block-components-quantity-selector {
        max-width: 100%;
        box-sizing: border-box;
    }

    .wc-block-components-quantity-selector__input {
        max-width: 100%;
        box-sizing: border-box;
    }

    /* Mobile checkout button slide-up animation */
    /* If button is already fixed by WooCommerce, add animation */
    .wc-block-cart__submit[style*="position: fixed"],
    .wc-block-cart__submit {
        animation: slideUpCartButton 0.4s ease-out;
    }

    /* Make button fixed at bottom on mobile if not already */
    .wc-block-cart__submit:not([style*="position"]) {
        position: fixed !important;
        bottom: 0 !important;
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        padding: 1rem !important;
        background: var(--bg-color) !important;
        border-top: 1px solid var(--tech-border) !important;
        z-index: 1000 !important;
        box-shadow: 0 -4px 10px rgba(0, 0, 0, 0.3) !important;
        margin-top: 0 !important;
    }

    @keyframes slideUpCartButton {
        from {
            transform: translateY(100%);
            opacity: 0;
        }
        to {
            transform: translateY(0);
            opacity: 1;
        }
    }

    .wc-block-cart__submit-button {
        margin: 0 !important;
        width: 100% !important;
    }

    /* Add padding to bottom of cart to prevent content from being hidden behind fixed button */
    .wc-block-cart__main {
        padding-bottom: 100px !important;
    }

    /* Ensure cart wrapper doesn't overflow */
    .wp-block-woocommerce-cart {
        overflow-x: hidden;
        width: 100%;
        max-width: 100%;
    }
}

/* ============================================
   EMPTY CART STYLING
   ============================================ */

/* Empty Cart Block Container */
.wp-block-woocommerce-empty-cart-block {
    background: var(--bg-color);
    color: var(--accent-white);
    padding: 3rem 2rem;
    text-align: center;
    min-height: 60vh;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

/* Empty Cart Title */
.wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title {
    font-family: var(--font-main) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.1em !important;
    font-size: 2rem !important;
    color: var(--accent-white) !important;
    margin: 0 0 2rem 0 !important;
    font-weight: normal !important;
    line-height: 1.2;
}

/* Empty Cart Icon Styling */
.with-empty-cart-icon::before {
    content: "🛒";
    display: block;
    font-size: 4rem;
    margin-bottom: 1rem;
    opacity: 0.5;
}

/* Separator in Empty Cart */
.wp-block-woocommerce-empty-cart-block .wp-block-separator {
    background: var(--tech-border) !important;
    border: none !important;
    height: 1px !important;
    width: 100% !important;
    max-width: 300px !important;
    margin: 2rem auto !important;
    opacity: 0.3 !important;
}

.wp-block-woocommerce-empty-cart-block .wp-block-separator.is-style-dots {
    background: transparent !important;
    text-align: center !important;
    height: auto !important;
}

.wp-block-woocommerce-empty-cart-block .wp-block-separator.is-style-dots::before {
    content: "• • •";
    color: var(--tech-border);
    font-size: 1.5rem;
    letter-spacing: 0.5rem;
    opacity: 0.5;
}

/* "Nowe w sklepie" Heading */
.wp-block-woocommerce-empty-cart-block .wp-block-heading:not(.wc-block-cart__empty-cart__title) {
    font-family: var(--font-main) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.1em !important;
    font-size: 1.5rem !important;
    color: var(--accent-white) !important;
    margin: 2rem 0 2rem 0 !important;
    font-weight: normal !important;
}

/* Product Grid in Empty Cart */
.wp-block-woocommerce-empty-cart-block .wc-block-grid {
    margin-top: 2rem;
    width: 100%;
    max-width: 1200px;
}

.wp-block-woocommerce-empty-cart-block .wc-block-grid__products {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 2rem;
    list-style: none;
    padding: 0;
    margin: 0;
}

/* Individual Product Cards */
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product {
    background: var(--tech-gray);
    border: 1px solid var(--tech-border);
    border-radius: 0;
    padding: 1.5rem;
    transition: all 0.3s ease;
    display: flex;
    flex-direction: column;
    height: 100%;
}

.wp-block-woocommerce-empty-cart-block .wc-block-grid__product:hover {
    border-color: var(--accent-white);
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
}

/* Product Link */
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-link {
    text-decoration: none;
    color: inherit;
    display: flex;
    flex-direction: column;
    flex: 1;
}

/* Product Image */
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-image {
    margin-bottom: 1rem;
    overflow: hidden;
    aspect-ratio: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bg-color);
    border: 1px solid var(--tech-border);
}

.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.wp-block-woocommerce-empty-cart-block .wc-block-grid__product:hover .wc-block-grid__product-image img {
    transform: scale(1.05);
}

.theme-twentytwenty .wc-block-grid.has-4-columns .wc-block-grid__product, .wc-block-grid.has-4-columns .wc-block-grid__product {
    max-width: 100% !important;
}

/* Product Title */
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-title {
    font-family: var(--font-main) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    font-size: 0.9rem !important;
    color: var(--accent-white) !important;
    margin: 0 0 1rem 0 !important;
    line-height: 1.3;
    text-align: center;
    flex: 1;
}

/* Product Price */
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-price {
    font-family: var(--font-main) !important;
    color: var(--accent-white) !important;
    font-size: 1.1rem !important;
    font-weight: bold !important;
    text-align: center;
    margin: 0 0 1rem 0 !important;
}

.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-price .woocommerce-Price-amount {
    color: var(--accent-white) !important;
}

.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-price .woocommerce-Price-currencySymbol {
    color: var(--accent-white) !important;
}

/* Add to Cart Button */
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart {
    margin-top: auto;
}

.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart .wp-block-button__link {
    background: var(--bg-color) !important;
    color: var(--accent-white) !important;
    border: 1px solid var(--tech-border) !important;
    padding: 0.75rem 1rem !important;
    font-family: var(--font-main) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    font-size: 0.8rem !important;
    text-decoration: none !important;
    transition: all 0.3s ease !important;
    display: block !important;
    text-align: center !important;
    border-radius: 0 !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart .wp-block-button__link:hover {
    background: var(--accent-white) !important;
    color: var(--bg-color) !important;
    border-color: var(--accent-white) !important;
}

/* Responsive Design for Empty Cart */
@media (max-width: 1200px) {
    .wp-block-woocommerce-empty-cart-block .wc-block-grid__products {
        grid-template-columns: repeat(3, 1fr);
        gap: 1.5rem;
    }
}

@media (max-width: 900px) {
    .wp-block-woocommerce-empty-cart-block .wc-block-grid__products {
        grid-template-columns: repeat(2, 1fr);
        gap: 1.5rem;
    }
    
    .wp-block-woocommerce-empty-cart-block {
        padding: 2rem 1rem;
    }
    
    .wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title {
        font-size: 1.5rem !important;
    }
}

@media (max-width: 768px) {
    .wp-block-woocommerce-empty-cart-block .wc-block-grid__products {
        grid-template-columns: 1fr;
        gap: 1rem;
    }
    
    .wp-block-woocommerce-empty-cart-block .wc-block-grid__product {
        padding: 1rem;
    }
    
    .wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title {
        font-size: 1.2rem !important;
    }
    
    .with-empty-cart-icon::before {
        font-size: 3rem;
    }
}
