/*
Theme Name: PeptidePro Research
Template: storefront
Description: Custom WooCommerce theme for PeptidePro Research peptides store
Version: 1.0
*/

/* ===== ROOT VARIABLES ===== */
:root {
    --pp-navy: #0a0f1e;
    --pp-navy-light: #111827;
    --pp-surface: #151c2e;
    --pp-surface-hover: #1a2340;
    --pp-border: #1e293b;
    --pp-accent: #00d4aa;
    --pp-accent-light: #00f0c0;
    --pp-accent-glow: rgba(0, 212, 170, 0.08);
    --pp-text: #e2e8f0;
    --pp-text-muted: #94a3b8;
    --pp-text-dim: #64748b;
    --pp-white: #f8fafc;
    --pp-red: #ef4444;
    --pp-amber: #f59e0b;
}

/* ===== GLOBAL ===== */
body,
html {
    background: var(--pp-navy) !important;
    color: var(--pp-text) !important;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
}

* {
    border-color: var(--pp-border) !important;
}

a {
    color: var(--pp-accent) !important;
    text-decoration: none !important;
}

a:hover {
    color: var(--pp-accent-light) !important;
}

h1, h2, h3, h4, h5, h6 {
    color: var(--pp-white) !important;
}

p, li, span, div, td, th, label {
    color: var(--pp-text);
}

/* ===== HEADER ===== */
.site-header,
.storefront-primary-navigation {
    background: var(--pp-navy-light) !important;
    border-bottom: 1px solid var(--pp-border) !important;
}

.site-title a,
.site-description {
    color: var(--pp-white) !important;
}

.site-branding .site-title a {
    font-weight: 700 !important;
    letter-spacing: 0.05em !important;
    text-transform: uppercase !important;
    font-size: 1.25rem !important;
}

.site-description {
    color: var(--pp-text-muted) !important;
    font-size: 0.7rem !important;
    letter-spacing: 0.1em !important;
    text-transform: uppercase !important;
}

.storefront-primary-navigation .main-navigation ul li a {
    color: var(--pp-text-muted) !important;
    font-size: 0.8rem !important;
    font-weight: 500 !important;
    letter-spacing: 0.03em !important;
    text-transform: uppercase !important;
    padding: 0.75rem 1rem !important;
    transition: color 0.2s !important;
}

.storefront-primary-navigation .main-navigation ul li a:hover,
.storefront-primary-navigation .main-navigation ul li.current-menu-item > a {
    color: var(--pp-accent) !important;
}

/* Header cart */
.site-header-cart .cart-contents,
.site-header-cart .cart-contents:hover {
    color: var(--pp-text-muted) !important;
}

.site-header-cart .count {
    background: var(--pp-accent) !important;
    color: var(--pp-navy) !important;
    font-weight: 700 !important;
}

/* ===== CONTENT AREA ===== */
.site-content,
#content,
.content-area,
.hentry {
    background: var(--pp-navy) !important;
}

.page .entry-content,
.type-page .entry-content {
    background: var(--pp-surface) !important;
    border: 1px solid var(--pp-border) !important;
    border-radius: 12px !important;
    padding: 2rem !important;
    margin-bottom: 2rem !important;
}

.entry-content h2 {
    color: var(--pp-white) !important;
    font-size: 1.5rem !important;
    margin-bottom: 1rem !important;
}

.entry-content h3 {
    color: var(--pp-accent) !important;
    font-size: 1.1rem !important;
    margin-top: 1.5rem !important;
}

.entry-content ul {
    list-style: none !important;
    padding-left: 0 !important;
}

.entry-content ul li {
    position: relative !important;
    padding-left: 1.25rem !important;
    margin-bottom: 0.5rem !important;
    color: var(--pp-text-muted) !important;
    font-size: 0.9rem !important;
    line-height: 1.6 !important;
}

.entry-content ul li:before {
    content: '→' !important;
    position: absolute !important;
    left: 0 !important;
    color: var(--pp-accent) !important;
    font-weight: bold !important;
}

.entry-content ul li strong {
    color: var(--pp-white) !important;
}

/* ===== WOOCOMMERCE PRODUCTS ===== */
.woocommerce ul.products li.product {
    background: var(--pp-surface) !important;
    border: 1px solid var(--pp-border) !important;
    border-radius: 12px !important;
    padding: 1.25rem !important;
    transition: border-color 0.3s, transform 0.2s !important;
    overflow: hidden !important;
}

.woocommerce ul.products li.product:hover {
    border-color: var(--pp-accent) !important;
    transform: translateY(-2px) !important;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
    color: var(--pp-white) !important;
    font-size: 0.95rem !important;
    font-weight: 600 !important;
    padding: 0.5rem 0 !important;
}

.woocommerce ul.products li.product .price {
    color: var(--pp-accent) !important;
    font-size: 1rem !important;
    font-weight: 700 !important;
}

.woocommerce ul.products li.product .price del {
    color: var(--pp-text-dim) !important;
    opacity: 0.7 !important;
}

.woocommerce ul.products li.product .price ins {
    color: var(--pp-accent) !important;
    text-decoration: none !important;
    font-weight: 700 !important;
}

/* Sale badge */
.woocommerce span.onsale {
    background: var(--pp-accent) !important;
    color: var(--pp-navy) !important;
    font-weight: 700 !important;
    border-radius: 4px !important;
    font-size: 0.7rem !important;
    letter-spacing: 0.05em !important;
    text-transform: uppercase !important;
    padding: 0.25rem 0.75rem !important;
    min-height: auto !important;
    min-width: auto !important;
    line-height: 1.4 !important;
}

/* Stock badge */
.woocommerce .stock {
    color: var(--pp-accent) !important;
}

/* Product placeholder image */
.woocommerce ul.products li.product a img,
.woocommerce div.product div.images img {
    background: var(--pp-navy-light) !important;
    border-radius: 8px !important;
    border: 1px solid var(--pp-border) !important;
}

/* ===== ADD TO CART BUTTONS ===== */
.woocommerce ul.products li.product .button,
.woocommerce a.button,
.button,
button.button {
    background: var(--pp-accent) !important;
    color: var(--pp-navy) !important;
    border: none !important;
    border-radius: 8px !important;
    font-size: 0.75rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.05em !important;
    text-transform: uppercase !important;
    padding: 0.6rem 1.25rem !important;
    transition: all 0.2s !important;
}

.woocommerce ul.products li.product .button:hover,
.woocommerce a.button:hover,
.button:hover,
button.button:hover {
    background: var(--pp-accent-light) !important;
    color: var(--pp-navy) !important;
    transform: translateY(-1px) !important;
}

.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
#respond input#submit.alt,
.woocommerce #respond input#submit {
    background: var(--pp-accent) !important;
    color: var(--pp-navy) !important;
    font-weight: 700 !important;
}

.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover {
    background: var(--pp-accent-light) !important;
}

/* View cart link */
.woocommerce a.added_to_cart {
    color: var(--pp-accent) !important;
    font-size: 0.75rem !important;
}

/* ===== SINGLE PRODUCT ===== */
.woocommerce div.product .product_title {
    color: var(--pp-white) !important;
    font-size: 1.75rem !important;
}

.woocommerce div.product p.price {
    color: var(--pp-accent) !important;
    font-size: 1.5rem !important;
}

.woocommerce div.product .woocommerce-product-details__short-description {
    color: var(--pp-text-muted) !important;
    font-size: 0.85rem !important;
    line-height: 1.6 !important;
    background: var(--pp-accent-glow) !important;
    border-left: 3px solid var(--pp-accent) !important;
    padding: 0.75rem 1rem !important;
    border-radius: 0 8px 8px 0 !important;
    margin: 1rem 0 !important;
}

.woocommerce-product-details__short-description p {
    color: var(--pp-text-muted) !important;
}

.woocommerce div.product .woocommerce-tabs {
    background: var(--pp-surface) !important;
    border: 1px solid var(--pp-border) !important;
    border-radius: 12px !important;
    padding: 1.5rem !important;
    margin-top: 2rem !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs {
    background: transparent !important;
    border-bottom: 1px solid var(--pp-border) !important;
    padding: 0 !important;
    margin: 0 0 1rem !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li {
    background: transparent !important;
    border: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a {
    color: var(--pp-text-muted) !important;
    font-size: 0.8rem !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    padding: 0.75rem 1.25rem !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
    color: var(--pp-accent) !important;
    border-bottom: 2px solid var(--pp-accent) !important;
}

.woocommerce div.product .woocommerce-tabs .panel {
    color: var(--pp-text-muted) !important;
    font-size: 0.9rem !important;
    line-height: 1.7 !important;
}

/* SKU and meta */
.woocommerce div.product .product_meta {
    color: var(--pp-text-dim) !important;
    font-size: 0.75rem !important;
    border-top: 1px solid var(--pp-border) !important;
    padding-top: 1rem !important;
    margin-top: 1rem !important;
}

.woocommerce div.product .product_meta span {
    color: var(--pp-text-dim) !important;
}

/* Quantity input */
.woocommerce .quantity .qty {
    background: var(--pp-navy-light) !important;
    color: var(--pp-white) !important;
    border: 1px solid var(--pp-border) !important;
    border-radius: 6px !important;
}

/* ===== CART ===== */
.woocommerce-cart table.cart,
.woocommerce-cart .cart-collaterals {
    background: var(--pp-surface) !important;
    border: 1px solid var(--pp-border) !important;
    border-radius: 12px !important;
}

.woocommerce table.shop_table {
    background: var(--pp-surface) !important;
    border: 1px solid var(--pp-border) !important;
    border-radius: 12px !important;
}

.woocommerce table.shop_table th {
    color: var(--pp-text-dim) !important;
    font-size: 0.7rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.1em !important;
    font-weight: 600 !important;
    background: var(--pp-navy-light) !important;
}

.woocommerce table.shop_table td {
    color: var(--pp-text) !important;
    background: var(--pp-surface) !important;
}

/* ===== SIDEBAR / WIDGETS ===== */
.widget-area,
.widget {
    background: transparent !important;
}

.widget .widget-title,
.widget .widgettitle {
    color: var(--pp-white) !important;
    font-size: 0.75rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.1em !important;
    font-weight: 700 !important;
    margin-bottom: 0.75rem !important;
    padding-bottom: 0.5rem !important;
    border-bottom: 1px solid var(--pp-border) !important;
}

.widget ul li a {
    color: var(--pp-text-muted) !important;
    font-size: 0.85rem !important;
}

.widget ul li a:hover {
    color: var(--pp-accent) !important;
}

/* ===== CATEGORY FILTER ===== */
.woocommerce .woocommerce-widget-layered-nav ul li a,
.woocommerce ul.product-categories li a {
    color: var(--pp-text-muted) !important;
}

.woocommerce ul.product-categories li a:hover {
    color: var(--pp-accent) !important;
}

/* ===== BREADCRUMBS ===== */
.woocommerce .woocommerce-breadcrumb {
    color: var(--pp-text-dim) !important;
    font-size: 0.75rem !important;
}

.woocommerce .woocommerce-breadcrumb a {
    color: var(--pp-text-dim) !important;
}

.woocommerce .woocommerce-breadcrumb a:hover {
    color: var(--pp-accent) !important;
}

/* ===== FOOTER ===== */
.site-footer {
    background: var(--pp-navy-light) !important;
    border-top: 1px solid var(--pp-border) !important;
}

.site-info {
    color: var(--pp-text-dim) !important;
    font-size: 0.75rem !important;
}

/* ===== FORMS & INPUTS ===== */
input[type="text"],
input[type="email"],
input[type="password"],
input[type="number"],
input[type="search"],
input[type="tel"],
input[type="url"],
textarea,
select {
    background: var(--pp-navy-light) !important;
    color: var(--pp-white) !important;
    border: 1px solid var(--pp-border) !important;
    border-radius: 8px !important;
    padding: 0.5rem 0.75rem !important;
}

input:focus,
textarea:focus,
select:focus {
    border-color: var(--pp-accent) !important;
    outline: none !important;
    box-shadow: 0 0 0 2px var(--pp-accent-glow) !important;
}

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

.woocommerce-error {
    background: var(--pp-surface) !important;
    border-top-color: var(--pp-red) !important;
}

/* ===== RATING STARS ===== */
.woocommerce .star-rating {
    color: var(--pp-amber) !important;
}

/* ===== ORDERING & RESULTS ===== */
.woocommerce .woocommerce-ordering select,
.woocommerce .woocommerce-result-count {
    color: var(--pp-text-muted) !important;
    font-size: 0.8rem !important;
}

/* ===== PAGE TITLE ===== */
.woocommerce-products-header__title,
.page-title,
.entry-title {
    color: var(--pp-white) !important;
}

/* ===== RESEARCH DISCLAIMER BANNER ===== */
.pp-disclaimer {
    background: linear-gradient(135deg, rgba(0, 212, 170, 0.05), rgba(0, 212, 170, 0.02)) !important;
    border: 1px solid rgba(0, 212, 170, 0.15) !important;
    border-radius: 8px !important;
    padding: 0.75rem 1.25rem !important;
    margin-bottom: 1.5rem !important;
    font-size: 0.75rem !important;
    color: var(--pp-text-muted) !important;
    text-align: center !important;
    letter-spacing: 0.02em !important;
}

.pp-disclaimer strong {
    color: var(--pp-accent) !important;
}

/* ===== RELATED PRODUCTS ===== */
.woocommerce div.product .related h2,
.woocommerce div.product .upsells h2 {
    font-size: 1.1rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
}

/* ===== PAGINATION ===== */
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span.current {
    background: var(--pp-surface) !important;
    color: var(--pp-text-muted) !important;
}

.woocommerce nav.woocommerce-pagination ul li span.current {
    background: var(--pp-accent) !important;
    color: var(--pp-navy) !important;
}

/* ===== RESPONSIVE ===== */
@media (max-width: 768px) {
    .woocommerce ul.products li.product {
        margin-bottom: 1rem !important;
    }

    .site-branding .site-title a {
        font-size: 1rem !important;
    }
}

/* ===== CUSTOM SCROLLBAR ===== */
::-webkit-scrollbar {
    width: 6px;
}

::-webkit-scrollbar-track {
    background: var(--pp-navy);
}

::-webkit-scrollbar-thumb {
    background: var(--pp-border);
    border-radius: 3px;
}

::-webkit-scrollbar-thumb:hover {
    background: var(--pp-text-dim);
}
