/*
Theme Name: Sky Child
Theme URI: https://averagejoesky.com
Description: Average Joe Sky — Astra child with dark theme + muted-blue accents.
Author: Average Joe Sky
Version: 1.0.0
Template: astra
*/

:root {
    --sky-bg: #0a0a0a;
    --sky-surface: #141414;
    --sky-border: #2a2a2a;
    --sky-accent: #60a5fa;
    --sky-accent-hover: #3b82f6;
    --sky-text: #e5e5e5;
    --sky-text-muted: #9a9a9a;
}

/* ===== BASE DARK ===== */
html body,
html body .ast-container,
html body .site,
html body #page,
html body .ast-page-builder-template .entry-content,
html body .site-content {
    background: var(--sky-bg) !important;
    color: var(--sky-text);
}
body, body p, body li, body td { color: var(--sky-text); }
h1, h2, h3, h4, h5, h6 { color: var(--sky-text); }

a { color: var(--sky-accent); text-decoration: none; transition: color .15s ease; }
a:hover, a:focus { color: var(--sky-accent-hover); }

/* ===== HEADER + WORDMARK ===== */
html body .site-header,
html body .main-header-bar,
html body .ast-header-break-point .main-header-bar {
    background: var(--sky-bg) !important;
    border-bottom: 1px solid var(--sky-border);
}
html body .site-title,
html body .site-title a {
    font-family: 'Lobster', cursive !important;
    font-weight: 400 !important;
    font-size: 2.4rem !important;
    color: var(--sky-accent) !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    line-height: 1.1 !important;
}
html body .site-description {
    color: var(--sky-text-muted);
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}
html body .main-navigation a,
html body .main-header-menu a {
    color: var(--sky-text) !important;
    font-weight: 600;
    text-transform: uppercase;
    font-size: 0.85rem;
    letter-spacing: 0.06em;
}
html body .main-navigation a:hover,
html body .main-header-menu a:hover { color: var(--sky-accent) !important; }

/* ===== BUTTONS (pill) ===== */
html body .button,
html body button,
html body input[type="submit"],
html body input[type="button"],
html body .wp-block-button__link,
html body .woocommerce a.button,
html body .woocommerce button.button,
html body .woocommerce #respond input#submit,
html body .woocommerce .single_add_to_cart_button {
    background: var(--sky-accent) !important;
    color: #0a0a0a !important;
    border: none !important;
    border-radius: 999px !important;
    padding: 0.75rem 1.6rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    transition: background .15s ease, transform .15s ease, box-shadow .15s ease;
}
html body .button:hover,
html body button:hover,
html body input[type="submit"]:hover,
html body .woocommerce a.button:hover,
html body .woocommerce button.button:hover,
html body .woocommerce .single_add_to_cart_button:hover {
    background: var(--sky-accent-hover) !important;
    transform: translateY(-1px);
    box-shadow: 0 6px 18px rgba(96, 165, 250, 0.32);
}

/* ===== PRODUCT GRID ===== */
html body .woocommerce ul.products li.product {
    background: var(--sky-surface);
    border: 1px solid var(--sky-border);
    border-radius: 12px;
    padding: 1rem;
    transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
html body .woocommerce ul.products li.product:hover {
    transform: translateY(-3px);
    border-color: var(--sky-accent);
    box-shadow: 0 10px 30px rgba(96, 165, 250, 0.18);
}
html body .woocommerce ul.products li.product img {
    border-radius: 8px;
}
html body .woocommerce ul.products li.product .woocommerce-loop-product__title {
    color: var(--sky-text) !important;
    font-size: 1rem !important;
    font-weight: 700 !important;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    padding-top: 0.6rem !important;
}
html body .woocommerce ul.products li.product .price {
    color: var(--sky-accent) !important;
    font-weight: 700;
    font-size: 1.1rem;
}

/* ===== SINGLE PRODUCT ===== */
html body .woocommerce div.product .product_title {
    color: var(--sky-text);
    text-transform: uppercase;
    letter-spacing: 0.02em;
    font-weight: 800;
}
html body .woocommerce div.product p.price,
html body .woocommerce div.product span.price {
    color: var(--sky-accent) !important;
    font-weight: 700;
    font-size: 1.6rem;
}

/* ===== FORMS ===== */
html body input[type="text"],
html body input[type="email"],
html body input[type="password"],
html body input[type="tel"],
html body input[type="number"],
html body textarea,
html body select {
    background: var(--sky-surface);
    border: 1px solid var(--sky-border);
    color: var(--sky-text);
    border-radius: 8px;
    padding: 0.6rem 0.9rem;
    font-size: 1rem;
}
html body input[type="text"]:focus,
html body input[type="email"]:focus,
html body input[type="password"]:focus,
html body textarea:focus,
html body select:focus {
    border-color: var(--sky-accent);
    outline: none;
    box-shadow: 0 0 0 3px rgba(96, 165, 250, 0.18);
}

/* ===== CART / CHECKOUT ===== */
html body .woocommerce table.shop_table,
html body .woocommerce-cart .cart_totals,
html body .woocommerce-checkout #order_review {
    background: var(--sky-surface);
    border: 1px solid var(--sky-border);
    border-radius: 12px;
}
html body .woocommerce table.shop_table th,
html body .woocommerce table.shop_table td {
    color: var(--sky-text);
    border-color: var(--sky-border) !important;
}

/* ===== FOOTER ===== */
html body .site-footer,
html body .ast-footer-overlay,
html body .ast-builder-grid-row-container,
html body footer .ast-container {
    background: var(--sky-bg) !important;
    border-top: 1px solid var(--sky-border);
    color: var(--sky-text-muted);
}
html body .site-footer a { color: var(--sky-accent); }

/* ===== NOTICES ===== */
html body .woocommerce-message,
html body .woocommerce-info,
html body .woocommerce-error {
    background: var(--sky-surface) !important;
    border-top-color: var(--sky-accent) !important;
    color: var(--sky-text) !important;
}
html body .woocommerce-message::before,
html body .woocommerce-info::before { color: var(--sky-accent) !important; }
