/**
 * BR Distribuidora - Base Styles (Dark Theme)
 * body, headings, links, header, nav, buttons, footer, forms, alerts
 */

/* Oculta bloco de meta padrão do WC (usamos template próprio) */
.product_meta { display: none !important; }

/* ── Body (Dark) ── */
html { overflow-x: clip; }
body {
    font-family: var(--brd-font-family);
    font-size: var(--brd-font-size-base);
    background-color: var(--brd-preto);
    color: var(--brd-off-white);
    line-height: 1.6;
    overflow-x: clip;
}

/* ── Headings ── */
h1, h2, h3, h4, h5, h6 {
    font-family: var(--brd-font-family);
    font-weight: 700;
    color: var(--brd-off-white);
    margin-bottom: var(--brd-spacing-md);
}
h1 { font-size: var(--brd-font-size-3xl); }
h2 { font-size: var(--brd-font-size-2xl); }
h3 { font-size: var(--brd-font-size-xl); }

/* ── Links ── */
a { color: var(--brd-azul-claro); text-decoration: none; transition: color var(--brd-transition); }
a:hover { color: var(--brd-off-white); }

/* ── Container global ── */
.brd-container { max-width: 1400px; margin: 0 auto; padding: 0 24px; }

/* ── Focus (remove outline em cliques de mouse; mantém para teclado) ── */
*:focus:not(:focus-visible) { outline: none !important; box-shadow: none !important; }

/* ── Header ── */
.site-header, .ast-primary-header {
    background-color: var(--brd-azul-escuro) !important;
    border-bottom: 1px solid var(--brd-cinza);
}
.site-header .site-title,
.site-header .site-title a { color: var(--brd-off-white) !important; font-weight: 700; }
.custom-logo { max-height: 60px; width: auto; }
.main-navigation a, .ast-nav-menu a, .main-header-menu a {
    color: var(--brd-off-white) !important;
    font-weight: 500; font-size: var(--brd-font-size-sm);
    text-transform: uppercase; letter-spacing: 0.5px;
    padding: var(--brd-spacing-sm) var(--brd-spacing-md);
    transition: color var(--brd-transition);
}
.main-navigation a:hover, .ast-nav-menu a:hover, .main-header-menu a:hover {
    color: var(--brd-azul-claro) !important;
}
.brd-user-area { display: flex; align-items: center; gap: var(--brd-spacing-md); }

/* ── Buttons ── */
.button, .btn, button, input[type="submit"], input[type="button"],
.wp-block-button__link, .woocommerce a.button,
.woocommerce button.button, .woocommerce input.button {
    font-family: var(--brd-font-family); font-weight: 600;
    font-size: var(--brd-font-size-sm); text-transform: uppercase;
    letter-spacing: 0.5px; padding: var(--brd-spacing-sm) var(--brd-spacing-lg);
    border-radius: var(--brd-border-radius); transition: all var(--brd-transition);
    cursor: pointer; border: none;
}
.button, .btn-primary,
.woocommerce a.button.alt, .woocommerce button.button.alt:not(.brd-btn-atc), .woocommerce input.button.alt {
    background-color: var(--brd-azul-claro) !important;
    color: var(--brd-off-white) !important;
}
.button:hover, .btn-primary:hover,
.woocommerce a.button.alt:hover, .woocommerce button.button.alt:not(.brd-btn-atc):hover,
.woocommerce input.button.alt:hover {
    background-color: var(--brd-azul-escuro) !important;
    color: var(--brd-off-white) !important;
}
.btn-secondary, .woocommerce a.button:not(.alt), .woocommerce button.button:not(.alt) {
    background-color: transparent !important;
    color: var(--brd-azul-claro) !important;
    border: 2px solid var(--brd-azul-claro) !important;
}
.btn-secondary:hover,
.woocommerce a.button:not(.alt):hover, .woocommerce button.button:not(.alt):hover {
    background-color: var(--brd-azul-claro) !important;
    color: var(--brd-off-white) !important;
}

/* ── Footer ── */
.site-footer, .ast-footer {
    background-color: var(--brd-azul-escuro) !important;
    color: var(--brd-off-white);
    padding: 0;
    border-top: none;
    position: relative;
}

.site-footer::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(to right, transparent 0%, var(--brd-azul-claro) 30%, #4aa3e8 50%, var(--brd-azul-claro) 70%, transparent 100%);
    box-shadow: 0 0 6px rgba(32, 107, 179, 0.5);
    z-index: 1;
}
.site-footer a { color: var(--brd-off-white); }
.site-footer a:hover { color: var(--brd-azul-claro); }
.brd-footer-contact { display: flex; flex-wrap: wrap; gap: var(--brd-spacing-lg); margin-bottom: var(--brd-spacing-lg); }
.brd-footer-contact-item { display: flex; align-items: center; gap: var(--brd-spacing-sm); }
.brd-copyright {
    text-align: center; padding-top: var(--brd-spacing-lg);
    border-top: 1px solid var(--brd-cinza);
    font-size: var(--brd-font-size-sm); opacity: 0.8;
}

/* ── Forms (Dark) ── */
input[type="text"], input[type="email"], input[type="password"],
input[type="tel"], input[type="number"], input[type="url"],
textarea, select {
    font-family: var(--brd-font-family);
    background-color: var(--brd-cinza);
    color: var(--brd-off-white);
    border: 1px solid var(--brd-cinza-claro);
    border-radius: var(--brd-border-radius);
    padding: var(--brd-spacing-sm) var(--brd-spacing-md);
    transition: border-color var(--brd-transition);
}
input[type="text"]:focus, input[type="email"]:focus, input[type="password"]:focus,
input[type="tel"]:focus, input[type="number"]:focus, input[type="url"]:focus,
textarea:focus, select:focus {
    border-color: var(--brd-azul-claro); outline: none;
}
label { color: var(--brd-off-white); font-weight: 500; margin-bottom: var(--brd-spacing-xs); display: block; }

/* ── Alerts ── */
.woocommerce-message {
    background-color: var(--brd-sucesso) !important; color: white !important;
    border: none !important; border-radius: var(--brd-border-radius);
}
.woocommerce-error {
    background-color: var(--brd-erro) !important; color: white !important;
    border: none !important; border-radius: var(--brd-border-radius);
}
.woocommerce-info {
    background-color: var(--brd-azul-escuro) !important; color: var(--brd-off-white) !important;
    border: none !important; border-radius: var(--brd-border-radius);
}

/* ── Responsive ── */
@media (max-width: 768px) {
    .brd-footer-contact { flex-direction: column; }
}
