/* Base Checkout Styles */
html, body {
    background-color: #0a0a0a !important;
    color: #fff !important;
    min-height: 100vh;
}

.woocommerce-checkout {
    background-color: #0a0a0a !important;
    color: #fff !important;
    font-family: 'Chakra Petch', sans-serif !important;
    padding: 20px 0;
}

.retro-checkout-container {
    background: rgba(255, 255, 255, 0.05) !important;
    border: 2px solid #ff00ff !important;
    border-radius: 8px !important;
    padding: 30px !important;
    margin: 20px auto !important;
    position: relative !important;
    overflow: hidden !important;
    max-width: 1200px !important;
}

.retro-pixel-border {
    position: relative !important;
    padding: 20px !important;
    background: rgba(0, 0, 0, 0.5) !important;
    border-radius: 6px !important;
}

.retro-pixel-border::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    border: 1px solid #00ff00 !important;
    margin: 4px !important;
    pointer-events: none !important;
    border-radius: 4px !important;
}

.retro-checkout-title {
    color: #00ff00 !important;
    font-family: 'Press Start 2P', cursive !important;
    font-size: 24px !important;
    text-align: center !important;
    margin-bottom: 30px !important;
    text-transform: uppercase !important;
    text-shadow: 0 0 10px rgba(0, 255, 0, 0.5) !important;
}

.retro-section {
    background: rgba(255, 255, 255, 0.03) !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    border-radius: 4px !important;
    padding: 20px !important;
    margin-bottom: 20px !important;
    position: relative !important;
}

.retro-section h3 {
    color: #00ff00 !important;
    font-family: 'Press Start 2P', cursive !important;
    font-size: 1.2em !important;
    margin-bottom: 20px !important;
    text-transform: uppercase !important;
    text-shadow: 0 0 10px rgba(0, 255, 0, 0.3) !important;
}

/* Form Fields */
.woocommerce form .form-row {
    margin-bottom: 15px !important;
}

.woocommerce form .form-row label {
    color: #00ff00 !important;
    font-family: 'Press Start 2P', cursive !important;
    font-size: 0.8em !important;
    margin-bottom: 8px !important;
    display: block !important;
}

.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select {
    background: rgba(255, 255, 255, 0.05) !important;
    border: 1px solid #ff00ff !important;
    color: #fff !important;
    padding: 10px !important;
    border-radius: 4px !important;
    width: 100% !important;
    font-family: 'Chakra Petch', sans-serif !important;
}

.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus {
    border-color: #00ff00 !important;
    outline: none !important;
    box-shadow: 0 0 10px rgba(0, 255, 0, 0.2) !important;
}

/* Order Review */
#order_review {
    background: rgba(255, 255, 255, 0.05) !important;
    padding: 20px !important;
    border-radius: 4px !important;
    margin-top: 30px !important;
}

.woocommerce-checkout-review-order-table {
    width: 100% !important;
    border-collapse: separate !important;
    border-spacing: 0 5px !important;
    margin-bottom: 20px !important;
}

.woocommerce-checkout-review-order-table th {
    color: #00ff00 !important;
    font-family: 'Press Start 2P', cursive !important;
    font-size: 0.8em !important;
    padding: 10px !important;
    text-transform: uppercase !important;
    background: rgba(0, 255, 0, 0.1) !important;
}

.woocommerce-checkout-review-order-table td {
    color: #fff !important;
    padding: 10px !important;
    background: rgba(255, 255, 255, 0.05) !important;
}

/* Payment Section */
#payment {
    background: rgba(255, 255, 255, 0.05) !important;
    border-radius: 4px !important;
    padding: 20px !important;
    margin-top: 30px !important;
}

#payment ul.payment_methods {
    padding: 0 !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
}

#payment ul.payment_methods li {
    list-style: none !important;
    padding: 10px 0 !important;
    margin: 0 !important;
}

#payment ul.payment_methods label {
    color: #fff !important;
    font-family: 'Press Start 2P', cursive !important;
    font-size: 0.8em !important;
    cursor: pointer !important;
}

#payment .payment_box {
    background: rgba(0, 255, 0, 0.1) !important;
    color: #fff !important;
    padding: 15px !important;
    margin: 10px 0 !important;
    border-radius: 4px !important;
    font-family: 'Chakra Petch', sans-serif !important;
}

/* Place Order Button */
#place_order {
    background: #ff00ff !important;
    color: #fff !important;
    font-family: 'Press Start 2P', cursive !important;
    font-size: 1em !important;
    padding: 15px 30px !important;
    border: none !important;
    border-radius: 4px !important;
    width: 100% !important;
    margin-top: 20px !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    text-transform: uppercase !important;
}

#place_order:hover {
    background: #00ff00 !important;
    transform: scale(1.02) !important;
}

/* Coupon Form */
.retro-coupon-form {
    margin-bottom: 30px !important;
}

.woocommerce-form-coupon-toggle .woocommerce-info {
    background: rgba(255, 255, 255, 0.05) !important;
    border: 1px solid #ff00ff !important;
    color: #fff !important;
    padding: 15px !important;
    border-radius: 4px !important;
    font-family: 'Chakra Petch', sans-serif !important;
}

.woocommerce-form-coupon-toggle .showcoupon {
    color: #00ff00 !important;
    text-decoration: none !important;
    font-family: 'Press Start 2P', cursive !important;
    font-size: 0.8em !important;
}

.checkout_coupon.woocommerce-form-coupon {
    background: rgba(255, 255, 255, 0.05) !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    padding: 20px !important;
    border-radius: 4px !important;
    margin-top: 20px !important;
}

/* Responsive Design */
@media (max-width: 768px) {
    .retro-checkout-title {
        font-size: 18px !important;
    }
    
    .woocommerce form .form-row-first,
    .woocommerce form .form-row-last {
        width: 100% !important;
        float: none !important;
    }
    
    #order_review {
        padding: 15px !important;
    }
    
    .woocommerce-checkout-review-order-table th,
    .woocommerce-checkout-review-order-table td {
        padding: 8px !important;
        font-size: 0.9em !important;
    }
    
    #place_order {
        font-size: 0.8em !important;
        padding: 12px 20px !important;
    }
}

/* Checkout Page Styles */
.retro-checkout-container {
    max-width: 1200px;
    margin: 2rem auto;
    padding: 0 1rem;
}

.retro-pixel-border {
    background: #ffffff;
    border: 1px solid #ddd;
    padding: 2rem;
    border-radius: 4px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.retro-checkout-title {
    font-size: 2rem;
    margin-bottom: 2rem;
    color: #333;
    text-align: center;
}

.retro-section {
    margin-bottom: 2rem;
    padding: 1.5rem;
    background: #f9f9f9;
    border-radius: 4px;
}

.retro-section h3 {
    margin-bottom: 1.5rem;
    padding-bottom: 0.5rem;
    border-bottom: 2px solid #eee;
    color: #333;
}

#customer_details {
    display: flex;
    flex-wrap: wrap;
    gap: 2rem;
    margin-bottom: 2rem;
}

#customer_details .col-1,
#customer_details .col-2 {
    flex: 1;
    min-width: 300px;
}

.woocommerce-checkout .form-row {
    margin-bottom: 1rem;
}

.woocommerce-checkout .form-row label {
    display: block;
    margin-bottom: 0.5rem;
    font-weight: 500;
}

.woocommerce-checkout .form-row input,
.woocommerce-checkout .form-row select,
.woocommerce-checkout .form-row textarea {
    width: 100%;
    padding: 0.75rem;
    border: 1px solid #ddd;
    border-radius: 4px;
}

.order-review {
    background: #f5f5f5;
}

/* Review Order Table */
.woocommerce-checkout-review-order-table {
    width: 100%;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 8px;
    margin-bottom: 2rem;
}

.woocommerce-checkout-review-order-table thead th {
    font-family: 'Press Start 2P', cursive;
    font-size: 0.8em;
    padding: 1rem;
    color: #00ff00;
    background: rgba(0, 255, 0, 0.1);
    text-transform: uppercase;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.woocommerce-checkout-review-order-table tbody td {
    padding: 1rem;
    color: #fff;
    font-family: 'Chakra Petch', sans-serif;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.woocommerce-checkout-review-order-table .product-name {
    color: #fff;
}

.woocommerce-checkout-review-order-table .product-quantity {
    color: #ff00ff;
}

.woocommerce-checkout-review-order-table .product-total {
    color: #00ff00;
    text-align: right;
}

.woocommerce-checkout-review-order-table tfoot th {
    font-family: 'Press Start 2P', cursive;
    font-size: 0.8em;
    padding: 1rem;
    color: #00ff00;
    text-transform: uppercase;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.woocommerce-checkout-review-order-table tfoot td {
    padding: 1rem;
    color: #fff;
    text-align: right;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.woocommerce-checkout-review-order-table .order-total th,
.woocommerce-checkout-review-order-table .order-total td {
    font-size: 1.2em;
    color: #00ff00;
    background: rgba(0, 255, 0, 0.1);
}

.woocommerce-checkout-review-order-table .cart-subtotal td,
.woocommerce-checkout-review-order-table .order-total td {
    font-family: 'Press Start 2P', cursive;
}

/* Payment Section */
#payment {
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 8px;
    padding: 1.5rem;
    margin-top: 2rem;
}

#payment .payment_methods {
    list-style: none;
    margin: 0;
    padding: 0;
}

#payment .payment_methods li {
    padding: 1rem 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

#payment .payment_methods li:last-child {
    border-bottom: none;
}

#payment .payment_methods label {
    color: #fff;
    font-family: 'Press Start 2P', cursive;
    font-size: 0.8em;
    cursor: pointer;
}

#payment .payment_box {
    background: rgba(255, 255, 255, 0.1);
    border-radius: 4px;
    padding: 1rem;
    margin: 1rem 0;
    color: #fff;
    font-family: 'Chakra Petch', sans-serif;
}

#payment .payment_box p:last-child {
    margin-bottom: 0;
}

#place_order {
    background: #ff00ff;
    color: #fff;
    font-family: 'Press Start 2P', cursive;
    font-size: 1em;
    padding: 1.5em;
    width: 100%;
    border: none;
    border-radius: 4px;
    text-transform: uppercase;
    cursor: pointer;
    transition: all 0.3s ease;
    margin-top: 1rem;
}

#place_order:hover {
    background: #00ff00;
    transform: scale(1.05);
}

/* Responsive adjustments */
@media (max-width: 768px) {
    #customer_details .col-1,
    #customer_details .col-2 {
        flex: 0 0 100%;
    }
    
    .retro-pixel-border {
        padding: 1rem;
    }
}

/* WooCommerce Custom Styles */

/* Product Grid */
.woocommerce ul.products li.product {
    text-align: center;
    transition: transform 0.3s ease;
    border-radius: 8px;
    padding: 15px;
    background: rgba(255, 255, 255, 0.05);
    backdrop-filter: blur(5px);
}

.woocommerce ul.products li.product:hover {
    transform: translateY(-5px);
}

/* Product Title */
.woocommerce ul.products li.product h2.woocommerce-loop-product__title {
    font-family: 'Press Start 2P', cursive;
    font-size: 1em !important;
    padding: 0.5em 0;
    color: #fff;
}

/* Product Price */
.woocommerce ul.products li.product .price {
    color: #00ff00;
    font-family: 'Chakra Petch', sans-serif;
    font-size: 1.2em;
    margin-top: 10px;
}

/* Add to Cart Button */
.woocommerce ul.products li.product .button {
    margin-top: 1em;
    background: #ff00ff;
    color: #fff;
    border: none;
    padding: 0.5em 1em;
    font-family: 'Press Start 2P', cursive;
    font-size: 0.8em;
    text-transform: uppercase;
    border-radius: 4px;
    transition: all 0.3s ease;
}

.woocommerce ul.products li.product .button:hover {
    background: #00ff00;
    transform: scale(1.05);
}

/* Single Product Page */
.woocommerce div.product div.images img {
    border-radius: 8px;
}

.woocommerce div.product .product_title {
    font-family: 'Press Start 2P', cursive;
    color: #fff;
}

.woocommerce div.product p.price {
    color: #00ff00;
    font-family: 'Chakra Petch', sans-serif;
    font-size: 1.5em;
}

.woocommerce div.product form.cart .button {
    background: #ff00ff;
    color: #fff;
    font-family: 'Press Start 2P', cursive;
    text-transform: uppercase;
    border: none;
    padding: 1em 2em;
    border-radius: 4px;
    transition: all 0.3s ease;
}

.woocommerce div.product form.cart .button:hover {
    background: #00ff00;
}

/* Cart Page */
.retro-cart-container {
    max-width: 1200px;
    margin: 2rem auto;
    padding: 0 1rem;
}

.retro-cart-title {
    font-family: 'Press Start 2P', cursive;
    color: #fff;
    text-align: center;
    margin-bottom: 2rem;
    text-transform: uppercase;
    text-shadow: 0 0 10px #ff00ff;
}

.woocommerce-cart table.shop_table {
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 8px;
    margin-bottom: 2rem;
}

.woocommerce-cart table.shop_table th {
    font-family: 'Press Start 2P', cursive;
    font-size: 0.8em;
    padding: 1rem;
    color: #00ff00;
    background: rgba(0, 255, 0, 0.1);
    text-transform: uppercase;
}

.woocommerce-cart table.shop_table td {
    padding: 1rem;
    color: #fff;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.woocommerce-cart table.shop_table .product-remove a.remove {
    color: #ff00ff !important;
    font-size: 1.5em;
}

.woocommerce-cart table.shop_table .product-remove a.remove:hover {
    color: #fff !important;
    background: #ff00ff;
}

.woocommerce-cart table.shop_table .product-thumbnail img {
    width: 80px;
    height: auto;
    border-radius: 4px;
    border: 2px solid #ff00ff;
}

.woocommerce-cart table.shop_table .product-name a {
    color: #fff;
    font-family: 'Chakra Petch', sans-serif;
    text-decoration: none;
    transition: color 0.3s ease;
}

.woocommerce-cart table.shop_table .product-name a:hover {
    color: #00ff00;
}

.woocommerce-cart table.shop_table .product-price,
.woocommerce-cart table.shop_table .product-subtotal {
    color: #00ff00;
    font-family: 'Chakra Petch', sans-serif;
    font-size: 1.1em;
}

/* Quantity Input */
.woocommerce .quantity .qty {
    width: 70px;
    padding: 0.5rem;
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid #ff00ff;
    color: #fff;
    border-radius: 4px;
}

/* Cart Actions */
.woocommerce-cart table.shop_table .actions {
    padding: 1.5rem;
    background: rgba(0, 0, 0, 0.2);
}

.woocommerce-cart table.shop_table .actions .coupon {
    display: flex;
    gap: 1rem;
    align-items: center;
}

.woocommerce-cart table.shop_table .actions .coupon label {
    color: #00ff00;
    font-family: 'Press Start 2P', cursive;
    font-size: 0.8em;
}

.woocommerce-cart table.shop_table .actions .coupon .input-text {
    width: 200px;
    padding: 0.8rem;
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid #ff00ff;
    color: #fff;
    border-radius: 4px;
}

.woocommerce-cart table.shop_table .actions .button {
    background: #ff00ff;
    color: #fff;
    font-family: 'Press Start 2P', cursive;
    font-size: 0.8em;
    padding: 1em 2em;
    border: none;
    border-radius: 4px;
    text-transform: uppercase;
    transition: all 0.3s ease;
}

.woocommerce-cart table.shop_table .actions .button:hover {
    background: #00ff00;
    transform: scale(1.05);
}

/* Cart Totals */
.cart_totals {
    background: rgba(255, 255, 255, 0.05);
    padding: 2rem;
    border-radius: 8px;
    border: 1px solid rgba(255, 255, 255, 0.1);
}

.cart_totals h2 {
    font-family: 'Press Start 2P', cursive;
    color: #fff;
    font-size: 1.2em;
    margin-bottom: 1.5rem;
    text-transform: uppercase;
    text-shadow: 0 0 10px #ff00ff;
}

.cart_totals table {
    width: 100%;
    margin-bottom: 1.5rem;
}

.cart_totals table th {
    font-family: 'Press Start 2P', cursive;
    font-size: 0.8em;
    color: #00ff00;
    padding: 1rem 0;
    text-transform: uppercase;
}

.cart_totals table td {
    color: #fff;
    text-align: right;
    padding: 1rem 0;
}

.cart_totals .wc-proceed-to-checkout .checkout-button {
    background: #ff00ff;
    color: #fff;
    font-family: 'Press Start 2P', cursive;
    font-size: 1em;
    padding: 1.5em;
    border: none;
    border-radius: 4px;
    text-transform: uppercase;
    text-align: center;
    display: block;
    transition: all 0.3s ease;
}

.cart_totals .wc-proceed-to-checkout .checkout-button:hover {
    background: #00ff00;
    transform: scale(1.05);
}

/* Messages */
.woocommerce-message {
    border-top-color: #00ff00;
}

.woocommerce-message::before {
    color: #00ff00;
}

.woocommerce-error {
    border-top-color: #ff0000;
}

.woocommerce-error::before {
    color: #ff0000;
}

/* Responsive Design */
@media (max-width: 768px) {
    .woocommerce ul.products[class*="columns-"] li.product {
        width: 100%;
        margin: 0 0 2.992em;
    }
    
    .woocommerce ul.products li.product h2.woocommerce-loop-product__title {
        font-size: 0.8em !important;
    }
    
    .woocommerce div.product form.cart .button {
        padding: 0.8em 1.5em;
        font-size: 0.8em;
    }
}

/* Coupon Form */
.retro-coupon-form {
    margin-bottom: 2rem;
}

.woocommerce-form-coupon-toggle .woocommerce-info {
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid #ff00ff;
    border-radius: 4px;
    padding: 1rem;
    color: #fff;
    font-family: 'Chakra Petch', sans-serif;
}

.woocommerce-form-coupon-toggle .woocommerce-info::before {
    color: #ff00ff;
}

.woocommerce-form-coupon-toggle .showcoupon {
    color: #00ff00;
    text-decoration: none;
    font-family: 'Press Start 2P', cursive;
    font-size: 0.8em;
    margin-left: 0.5rem;
}

.woocommerce-form-coupon-toggle .showcoupon:hover {
    color: #ff00ff;
    text-decoration: none;
}

.checkout_coupon.woocommerce-form-coupon {
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 4px;
    padding: 1.5rem;
    margin-top: 1rem;
}

.checkout_coupon.woocommerce-form-coupon p {
    color: #fff;
    font-family: 'Chakra Petch', sans-serif;
    margin-bottom: 1rem;
}

.checkout_coupon .form-row {
    display: flex;
    gap: 1rem;
    margin: 0;
}

.checkout_coupon .input-text {
    flex: 1;
    padding: 0.8rem;
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid #ff00ff;
    color: #fff;
    border-radius: 4px;
    font-family: 'Chakra Petch', sans-serif;
}

.checkout_coupon .button {
    background: #ff00ff;
    color: #fff;
    font-family: 'Press Start 2P', cursive;
    font-size: 0.8em;
    padding: 1em 2em;
    border: none;
    border-radius: 4px;
    text-transform: uppercase;
    transition: all 0.3s ease;
    cursor: pointer;
}

.checkout_coupon .button:hover {
    background: #00ff00;
    transform: scale(1.05);
}

/* Form Fields */
.woocommerce form .form-row {
    margin-bottom: 1rem;
}

.woocommerce form .form-row label {
    color: #00ff00;
    font-family: 'Press Start 2P', cursive;
    font-size: 0.8em;
    margin-bottom: 0.5rem;
    display: block;
}

.woocommerce form .form-row .required {
    color: #ff00ff;
}

.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea {
    padding: 0.8rem;
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid #ff00ff;
    color: #fff;
    border-radius: 4px;
    font-family: 'Chakra Petch', sans-serif;
    width: 100%;
}

.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus {
    border-color: #00ff00;
    outline: none;
    box-shadow: 0 0 10px rgba(0, 255, 0, 0.3);
}

.woocommerce form .form-row select {
    padding: 0.8rem;
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid #ff00ff;
    color: #fff;
    border-radius: 4px;
    font-family: 'Chakra Petch', sans-serif;
    width: 100%;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ff00ff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right 0.7rem top 50%;
    background-size: 1rem auto;
    padding-right: 2.5rem;
}

.woocommerce form .form-row select:focus {
    border-color: #00ff00;
    outline: none;
    box-shadow: 0 0 10px rgba(0, 255, 0, 0.3);
}

/* Checkbox and Radio Inputs */
.woocommerce form .form-row .input-checkbox {
    display: none;
}

.woocommerce form .form-row label.checkbox,
.woocommerce form .form-row label.radio {
    display: flex;
    align-items: center;
    cursor: pointer;
    user-select: none;
    color: #fff;
    font-family: 'Chakra Petch', sans-serif;
}

.woocommerce form .form-row label.checkbox:before,
.woocommerce form .form-row label.radio:before {
    content: '';
    display: inline-block;
    width: 20px;
    height: 20px;
    margin-right: 10px;
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid #ff00ff;
    border-radius: 4px;
}

.woocommerce form .form-row input[type="checkbox"]:checked + label.checkbox:before {
    background: #ff00ff;
    background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='20 6 9 17 4 12'%3e%3c/polyline%3e%3c/svg%3e");
    background-size: 14px;
    background-position: center;
    background-repeat: no-repeat;
}

/* Validation */
.woocommerce form .form-row.woocommerce-invalid label {
    color: #ff0000;
}

.woocommerce form .form-row.woocommerce-invalid input.input-text,
.woocommerce form .form-row.woocommerce-invalid select {
    border-color: #ff0000;
}

.woocommerce form .form-row.woocommerce-validated input.input-text,
.woocommerce form .form-row.woocommerce-validated select {
    border-color: #00ff00;
}

/* Error Messages */
.woocommerce-error {
    background: rgba(255, 0, 0, 0.1);
    border: 1px solid #ff0000;
    color: #fff;
    padding: 15px;
    border-radius: 4px;
    margin-bottom: 20px;
    list-style: none;
}

.woocommerce-error::before {
    color: #ff0000;
}

.woocommerce-message,
.woocommerce-info {
    background: rgba(0, 255, 0, 0.1);
    border: 1px solid #00ff00;
    color: #fff;
    padding: 15px;
    border-radius: 4px;
    margin-bottom: 20px;
}

.woocommerce-message::before,
.woocommerce-info::before {
    color: #00ff00;
}

/* Payment Methods */
.wc_payment_methods {
    margin-bottom: 2rem !important;
}

.wc_payment_method {
    position: relative;
    padding: 1rem !important;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 4px;
    margin-bottom: 1rem !important;
    transition: all 0.3s ease;
}

.wc_payment_method:hover {
    background: rgba(255, 255, 255, 0.1);
    transform: translateX(5px);
}

.wc_payment_method input[type="radio"] {
    display: none;
}

.wc_payment_method label {
    display: block;
    padding-left: 2rem;
    color: #fff !important;
    font-family: 'Press Start 2P', cursive;
    font-size: 0.8em;
    cursor: pointer;
    position: relative;
}

.wc_payment_method label:before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 16px;
    height: 16px;
    border: 2px solid #ff00ff;
    border-radius: 50%;
    background: transparent;
    transition: all 0.3s ease;
}

.wc_payment_method input[type="radio"]:checked + label:before {
    background: #ff00ff;
    box-shadow: 0 0 10px rgba(255, 0, 255, 0.5);
}

.wc_payment_method .payment_box {
    margin-top: 1rem;
    padding: 1rem;
    background: rgba(255, 255, 255, 0.05) !important;
    border-radius: 4px;
    color: #fff;
    font-family: 'Chakra Petch', sans-serif;
}

.wc_payment_method .payment_box:before {
    display: none;
}

.wc_payment_method .payment_box p {
    margin: 0;
    color: rgba(255, 255, 255, 0.8);
}

/* Payment Icons */
.wc_payment_method label img {
    max-height: 24px;
    margin-left: 0.5rem;
    vertical-align: middle;
    filter: brightness(0) invert(1);
    transition: all 0.3s ease;
}

.wc_payment_method:hover label img {
    filter: brightness(0) invert(1) drop-shadow(0 0 5px rgba(255, 0, 255, 0.5));
}

/* Terms and Conditions */
.woocommerce-terms-and-conditions-wrapper {
    margin-bottom: 2rem;
}

.woocommerce-privacy-policy-text {
    color: rgba(255, 255, 255, 0.8);
    font-family: 'Chakra Petch', sans-serif;
    font-size: 0.9em;
    margin-bottom: 1rem;
}

.woocommerce-terms-and-conditions-checkbox-text {
    color: #fff;
    font-family: 'Chakra Petch', sans-serif;
}

.woocommerce-terms-and-conditions-checkbox-text a {
    color: #00ff00;
    text-decoration: none;
    transition: color 0.3s ease;
}

.woocommerce-terms-and-conditions-checkbox-text a:hover {
    color: #ff00ff;
}

/* Checkout Container */
.checkout-wrapper {
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 8px;
    padding: 30px;
    box-shadow: 0 0 20px rgba(255, 0, 255, 0.1);
    backdrop-filter: blur(10px);
}

.checkout-section {
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 8px;
    padding: 20px;
    margin-bottom: 20px;
}

.checkout-section h3 {
    color: #00ff00;
    font-family: 'Press Start 2P', cursive;
    font-size: 1.2em;
    margin-bottom: 20px;
    text-transform: uppercase;
    text-shadow: 0 0 10px rgba(0, 255, 0, 0.5);
}

/* Billing/Shipping Fields */
.woocommerce-billing-fields,
.woocommerce-shipping-fields,
.woocommerce-additional-fields {
    margin-bottom: 30px;
}

.woocommerce-billing-fields__field-wrapper,
.woocommerce-shipping-fields__field-wrapper,
.woocommerce-additional-fields__field-wrapper {
    margin-top: 20px;
}

/* Form Row Spacing */
.form-row {
    margin-bottom: 15px !important;
}

.form-row-first {
    float: left;
    width: 48%;
    clear: both;
}

.form-row-last {
    float: right;
    width: 48%;
}

.form-row-wide {
    clear: both;
    width: 100%;
}

/* Create Account Checkbox */
.create-account {
    margin-top: 20px;
    padding: 15px;
    background: rgba(255, 255, 255, 0.05);
    border-radius: 4px;
}

.create-account label {
    color: #fff !important;
    font-family: 'Chakra Petch', sans-serif !important;
    font-size: 0.9em !important;
}

/* Ship to Different Address */
.woocommerce-shipping-fields #ship-to-different-address {
    margin-bottom: 20px;
}

.woocommerce-shipping-fields #ship-to-different-address label {
    color: #00ff00;
    font-family: 'Press Start 2P', cursive;
    font-size: 1em;
    display: inline-block;
    margin-left: 10px;
}

.woocommerce-shipping-fields #ship-to-different-address input[type="checkbox"] {
    display: none;
}

.woocommerce-shipping-fields #ship-to-different-address span:before {
    content: '';
    display: inline-block;
    width: 20px;
    height: 20px;
    margin-right: 10px;
    background: rgba(255, 255, 255, 0.1);
    border: 2px solid #ff00ff;
    border-radius: 4px;
    vertical-align: middle;
    cursor: pointer;
}

.woocommerce-shipping-fields #ship-to-different-address input[type="checkbox"]:checked + span:before {
    background: #ff00ff;
    box-shadow: 0 0 10px rgba(255, 0, 255, 0.5);
}

/* Additional Notes */
.woocommerce-additional-fields textarea {
    min-height: 100px;
    resize: vertical;
}

/* Payment Methods Styling */
.retro-payment-method {
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid #ff00ff;
    border-radius: 4px;
    padding: 15px;
    margin-bottom: 15px;
    transition: all 0.3s ease;
    position: relative;
}

.retro-payment-method:hover {
    background: rgba(255, 255, 255, 0.08);
    border-color: #00ff00;
    transform: translateX(5px);
}

.retro-payment-label {
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: #fff;
    font-family: 'Press Start 2P', cursive;
    font-size: 0.8em;
    cursor: pointer;
}

.retro-payment-label .payment-title {
    flex: 1;
    padding-right: 15px;
}

.retro-payment-label .payment-icon {
    opacity: 0.7;
    transition: opacity 0.3s ease;
}

.retro-payment-label:hover .payment-icon {
    opacity: 1;
}

.retro-payment-box {
    margin-top: 15px;
    padding: 15px;
    background: rgba(0, 255, 0, 0.05);
    border: 1px solid rgba(0, 255, 0, 0.2);
    border-radius: 4px;
    color: #fff;
    font-family: 'Chakra Petch', sans-serif;
}

.retro-payment-box::before {
    content: '';
    position: absolute;
    top: -2px;
    left: -2px;
    right: -2px;
    bottom: -2px;
    background: linear-gradient(45deg, #ff00ff, #00ff00);
    z-index: -1;
    border-radius: 6px;
    opacity: 0.2;
} 