/*
Theme Name: EnchantedSpores Dark Psy
Theme URI: https://enchantedspores.local
Author: Alex + ChatGPT
Description: Black psychedelic WooCommerce theme for Enchanted Spores with poster-style homepage and sane 4‑column product grid.
Version: 1.7
Text Domain: enchantedspores-darkpsy
*/

body{
    background:#020308;
    color:#e0fff8;
    font-family:'Inter',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
    margin:0;
}

h1,h2,h3,h4{
    font-family:'Cinzel','Times New Roman',serif;
    color:#7fffe0;
    text-shadow:0 0 10px #00ffc8;
    margin-top:0;
}

a{color:#5afad8;text-decoration:none;}
a:hover{color:#7fffe0;}

.enchanted-container{
    max-width:1200px;
    margin:0 auto;
    padding:0 20px;
}

/* Header */
.site-header{
    background:#020308;
    border-bottom:1px solid #0a3a32;
    padding:14px 0;
    position:sticky;
    top:0;
    z-index:20;
}
.site-header-inner{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
}
.site-branding a{
    font-family:'Cinzel',serif;
    font-size:1.6rem;
    font-weight:700;
    color:#7fffe0;
    text-shadow:0 0 15px #00ffcc;
}
.site-branding span.logo-accent{color:#00c19a;}
.site-logo img{
    max-height:64px;
    width:auto;
    border-radius:999px;
}
.site-navigation ul{
    list-style:none;
    margin:0;
    padding:0;
    display:flex;
    gap:18px;
    font-size:.98rem;
}
.site-navigation a{color:#c7fff2;}
.site-navigation a:hover{color:#7fffe0;}

/* Footer */
.site-footer{
    background:#000;
    color:#7fffe0;
    padding:40px 0 20px;
    margin-top:60px;
    font-size:.9rem;
}
.site-footer a{color:#9ae9d8;}
.site-footer a:hover{color:#fff;}
.site-footer-top{
    display:flex;
    flex-wrap:wrap;
    gap:30px;
    justify-content:space-between;
    margin-bottom:14px;
}

/* WooCommerce container */
.woocommerce-page #primary,
.woocommerce-page .site-main{
    max-width:1200px;
    margin:0 auto;
    padding:40px 20px;
}

/* Breadcrumb + page title */
.woocommerce .woocommerce-breadcrumb{
    margin:0 0 10px;
    font-size:0.9rem;
}
.woocommerce .page-title{
    margin:0 0 25px;
    padding:0;
    font-size:2rem;
}

/* --- PRODUCT & CATEGORY GRID (flex, 4 columns) --- */

.woocommerce ul.products{
    display:flex;
    flex-wrap:wrap;
    gap:24px;
    margin:0;
    padding:0;
}

/* Base card for products & categories */
.woocommerce ul.products li.product,
.woocommerce ul.products li.product-category{
    list-style:none;
    box-sizing:border-box;
    width:calc(25% - 18px); /* 4 per row with gap */
    background:#050608;
    border-radius:14px;
    border:1px solid #133f35;
    box-shadow:0 0 12px rgba(0,255,200,0.12);
    padding:14px 14px 18px;
    text-align:left;
}

/* Images */
.woocommerce ul.products li.product a img,
.woocommerce ul.products li.product-category a img{
    width:100%;
    height:auto;
    margin:0 0 10px;
    border-radius:10px;
}

/* Product title */
.woocommerce ul.products li.product .woocommerce-loop-product__title{
    font-size:1rem;
    line-height:1.3;
    margin:0 0 6px;
    text-transform:none;
}

/* Category title */
.woocommerce ul.products li.product-category .woocommerce-loop-category__title{
    font-size:1rem;
    line-height:1.3;
    margin:0;
    text-align:center;
}
.woocommerce ul.products li.product-category .count{
    display:inline-block;
    margin-left:4px;
    color:#00ffc8;
    background:rgba(0,255,200,0.15);
    padding:1px 6px;
    border-radius:4px;
}

/* Price */
.woocommerce ul.products li.product .price{
    margin:0 0 10px;
    font-size:0.95rem;
    color:#5afad8!important;
    font-weight:600;
}

/* Add to cart button */
.woocommerce ul.products li.product .button{
    display:block;
    width:100%;
    text-align:center;
    border-radius:999px;
    padding:9px 0;
    margin-top:6px;
}

/* Single product title */
.woocommerce div.product .product_title{
    color:#7fffe0;
    text-shadow:0 0 10px #00ffc8;
}

/* Product meta (categories, SKU, tags) */
.product_meta{
    display:block;
    color:#7fffe0;
    font-size:0.95rem;
    margin-top:15px;
}
.product_meta a{
    color:#5afad8;
    font-weight:600;
}
.product_meta a:hover{color:#7fffe0;}

/* Buttons */
.woocommerce button.button.alt,
.woocommerce button.single_add_to_cart_button,
.woocommerce a.button{
    background:#00c19a;
    color:#020409;
    border-radius:999px;
    border:none;
    padding:10px 22px;
    font-weight:600;
}
.woocommerce button.button.alt:hover,
.woocommerce button.single_add_to_cart_button:hover,
.woocommerce a.button:hover{
    background:#7fffe0;
    color:#020409;
}

input,textarea,select{
    border-radius:6px;
    border:1px solid #133f35;
    padding:8px 10px;
    background:#020307;
    color:#e0fff8;
}
input:focus,textarea:focus,select:focus{
    outline:1px solid #00c19a;
}

/* Homepage poster-style layout */
.es-hero-poster{
    padding:80px 0 60px;
    background:#020308;
}
.es-hero-grid{
    display:grid;
    grid-template-columns:1.1fr 0.9fr;
    gap:40px;
    align-items:flex-start;
}
.es-hero-title{
    font-size:3.2rem;
    line-height:1.05;
    margin-bottom:10px;
}
.es-hero-sub{
    font-size:1.05rem;
    max-width:520px;
    color:#e0fff8;
}
.es-hero-buttons{
    margin-top:22px;
    display:flex;
    flex-wrap:wrap;
    gap:14px;
}
.es-btn-primary{
    display:inline-block;
    background:#00c19a;
    color:#020409;
    padding:11px 26px;
    border-radius:999px;
    font-weight:600;
}
.es-btn-secondary{
    display:inline-block;
    border:1px solid:#7fffe0;
    color:#7fffe0;
    padding:11px 24px;
    border-radius:999px;
    font-weight:500;
}
.es-hero-art{
    border-radius:32px;
    background:radial-gradient(circle at top,#1b293f,#030308 70%);
    padding:18px;
    box-shadow:0 0 45px rgba(0,255,200,.25);
}

/* Homepage panels */
.es-panel{
    border-radius:24px;
    border:1px solid #0f3a33;
    padding:22px;
    margin-bottom:26px;
    background:#05070d;
}
.es-panel-header{
    font-size:1.3rem;
    margin-bottom:8px;
}
.es-panel-sub{
    font-size:.97rem;
    color:#c7fff2;
}
.es-featured-row{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
    gap:20px;
    margin-top:18px;
}
.es-mini-card{
    border-radius:18px;
    border:1px solid #15443a;
    background:#05070f;
    padding:14px;
    box-shadow:0 0 22px rgba(0,255,200,.14);
}
.es-mini-card h3{
    font-size:1rem;
    margin:8px 0 4px;
}
.es-mini-card p{
    font-size:.9rem;
    color:#c7fff2;
}

/* Responsive tweaks */
@media(max-width:1100px){
    .woocommerce ul.products li.product,
    .woocommerce ul.products li.product-category{
        width:calc(33.333% - 16px);
    }
}
@media(max-width:800px){
    .woocommerce ul.products li.product,
    .woocommerce ul.products li.product-category{
        width:calc(50% - 12px);
    }
}
@media(max-width:550px){
    .woocommerce ul.products li.product,
    .woocommerce ul.products li.product-category{
        width:100%;
    }
}
@media(max-width:900px){
    .es-hero-grid{
        grid-template-columns:1fr;
        gap:30px;
    }
    .es-hero-title{font-size:2.5rem;}
}
@media(max-width:768px){
    .site-header-inner{
        flex-direction:column;
        align-items:flex-start;
    }
    .site-navigation ul{
        flex-wrap:wrap;
        gap:12px;
    }
}
