/*
Theme Name:   Astra Child — Average Joes Candids
Theme URI:    https://new.averagejoecc.com
Description:  Dark-mode child theme matching the Billgang brand: pure black, coral typography, pill buttons, bold uppercase.
Author:       Average Joes Candids
Template:     astra
Version:      1.1.0
Text Domain:  astra-child
*/

/* ─── Brand tokens ─── */
:root {
    --ajc-bg:          #0a0a0a;
    --ajc-surface:     #141414;
    --ajc-surface-2:   #1c1c1c;
    --ajc-border:      #2a2a2a;
    --ajc-text:        #ffffff;
    --ajc-text-muted:  #9a9a9a;
    --ajc-accent:      #ff7b72;
    --ajc-accent-hi:   #ff9d96;
    --ajc-accent-lo:   #cf5048;
}

/* ─── Base ─── */
html, body, body.woocommerce, body.woocommerce-page {
    background-color: var(--ajc-bg) !important;
    color: var(--ajc-accent);
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

/* Body text uses coral by default (matches Billgang style) */
p, li, dd, td, span:not(.price), label, .entry-content {
    color: var(--ajc-accent);
}

/* Muted text for meta */
.entry-meta, .ast-post-meta, .posted-on, .byline,
.ast-comment-meta, .footer-adv {
    color: var(--ajc-text-muted) !important;
}

/* Headings: bold uppercase coral */
h1, h2, h3, h4, h5, h6,
.entry-title, .ast-post-title, .woocommerce-loop-product__title {
    color: var(--ajc-accent) !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.02em;
}
h1 { font-size: clamp(2rem, 4vw, 3rem); }
h2 { font-size: clamp(1.5rem, 3vw, 2.25rem); }

/* Links */
a, a:visited { color: var(--ajc-accent); text-decoration: none; transition: color .15s; }
a:hover, a:focus { color: var(--ajc-accent-hi); }

/* ─── Header ─── */
.site-header, .ast-primary-header-bar, .main-header-bar,
.ast-above-header, .ast-below-header, .ast-primary-header {
    background-color: var(--ajc-bg) !important;
    border-bottom: 1px solid var(--ajc-border);
}

.site-title a { color: var(--ajc-accent) !important; font-weight: 800; text-transform: uppercase; }
.site-description { color: var(--ajc-text-muted) !important; }

/* Nav menu: uppercase coral */
.main-header-menu .menu-item > a,
.main-navigation a, #ast-mobile-header .menu-item > a {
    color: var(--ajc-accent) !important;
    text-transform: uppercase !important;
    font-weight: 700 !important;
    letter-spacing: 0.05em;
    font-size: 0.95rem;
}
.main-header-menu .menu-item > a:hover { color: var(--ajc-accent-hi) !important; }

/* ─── Pill buttons (the signature look) ─── */
button, .button, input[type="submit"], .wp-block-button__link,
.woocommerce a.button, .woocommerce button.button,
.woocommerce input.button, .woocommerce #respond input#submit,
.woocommerce a.button.alt, .woocommerce button.button.alt,
.woocommerce input.button.alt, .woocommerce #respond input#submit.alt,
.woocommerce a.button.checkout-button, .ast-custom-button {
    background-color: var(--ajc-accent) !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 999px !important;
    padding: 0.7em 1.6em !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    font-size: 0.9rem !important;
    transition: all .15s ease;
    box-shadow: 0 2px 8px rgba(255, 123, 114, 0.2);
}
button:hover, .button:hover, input[type="submit"]:hover,
.woocommerce a.button:hover, .woocommerce button.button:hover {
    background-color: var(--ajc-accent-hi) !important;
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(255, 123, 114, 0.35);
}
button:active, .button:active { transform: translateY(0); }

/* ─── Form inputs ─── */
input[type="text"], input[type="email"], input[type="password"],
input[type="number"], input[type="search"], input[type="tel"], input[type="url"],
textarea, select,
.woocommerce form .form-row input, .woocommerce form .form-row textarea {
    background-color: var(--ajc-surface) !important;
    color: var(--ajc-text) !important;
    border: 1px solid var(--ajc-border) !important;
    border-radius: 999px !important;
    padding: 0.7em 1.2em !important;
}
textarea { border-radius: 12px !important; }
input:focus, textarea:focus, select:focus {
    border-color: var(--ajc-accent) !important;
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(255, 123, 114, 0.25) !important;
}

/* ─── Cards / surfaces ─── */
article, .ast-article-post, .ast-article-single,
.widget, .wp-block-group, .wp-block-column,
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product,
.woocommerce-cart .cart-collaterals,
.woocommerce-cart table.cart,
.woocommerce-checkout #order_review,
.woocommerce form.checkout {
    background-color: var(--ajc-surface) !important;
    border: 1px solid var(--ajc-border) !important;
    border-radius: 12px !important;
    padding: 1.25rem;
}

/* ─── WooCommerce specifics ─── */
.woocommerce ul.products li.product .price,
.woocommerce div.product p.price,
.woocommerce div.product span.price,
.woocommerce-Price-amount {
    color: var(--ajc-accent) !important;
    font-weight: 800 !important;
    font-size: 1.15em;
}

.woocommerce table.shop_table,
.woocommerce table.shop_table th,
.woocommerce table.shop_table td {
    background-color: var(--ajc-surface) !important;
    color: var(--ajc-text) !important;
    border-color: var(--ajc-border) !important;
}

.woocommerce-info, .woocommerce-message, .woocommerce-error {
    background-color: var(--ajc-surface-2) !important;
    color: var(--ajc-text) !important;
    border-top-color: var(--ajc-accent) !important;
    border-radius: 8px !important;
}
.woocommerce-info::before, .woocommerce-message::before,
.woocommerce-error::before { color: var(--ajc-accent) !important; }

/* Pagination */
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
    background: var(--ajc-surface) !important;
    color: var(--ajc-accent) !important;
    border: 1px solid var(--ajc-border) !important;
    border-radius: 999px !important;
    padding: 0.4em 0.9em !important;
}
.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li span.current {
    background: var(--ajc-accent) !important;
    color: #fff !important;
    border-color: var(--ajc-accent) !important;
}

/* Product card hover lift */
.woocommerce ul.products li.product {
    transition: transform .15s ease, border-color .15s ease, box-shadow .15s ease;
}
.woocommerce ul.products li.product:hover {
    transform: translateY(-3px);
    border-color: var(--ajc-accent) !important;
    box-shadow: 0 8px 24px rgba(255, 123, 114, 0.15);
}

/* ─── Footer ─── */
footer, .site-footer, .ast-small-footer, .footer-adv,
.footer-sml-section-1, .footer-sml-section-2,
.footer-sml-layout-1, .footer-sml-layout-2,
.ast-footer-overlay, .site-info, .footer-widget-area {
    background-color: var(--ajc-surface) !important;
    color: var(--ajc-text-muted) !important;
    border-top: 1px solid var(--ajc-border) !important;
}
.site-footer a, .ast-small-footer a, .site-info a { color: var(--ajc-accent) !important; }

/* ─── Page wrappers (kill any white bleed-through) ─── */
#page, .site, .hfeed.site, main, .site-content,
.ast-page-content, .ast-page-builder-template, .entry-content {
    background-color: var(--ajc-bg) !important;
}

/* WooCommerce store notice / coming-soon banner */
.woocommerce-store-notice, .demo_store, .wc-block-store-notice,
[class*="store-notice"], [class*="coming-soon"] {
    background-color: var(--ajc-surface) !important;
    color: var(--ajc-text) !important;
    border-top: 1px solid var(--ajc-border) !important;
}

/* ─── Accessibility ─── */
:focus-visible { outline: 2px solid var(--ajc-accent); outline-offset: 2px; }

/* ─── Scrollbar ─── */
::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-track { background: var(--ajc-bg); }
::-webkit-scrollbar-thumb { background: var(--ajc-surface-2); border-radius: 5px; }
::-webkit-scrollbar-thumb:hover { background: var(--ajc-accent-lo); }
