/*
Theme Name: Analog 47 — Blocksy Child
Theme URI: https://analog47.cl
Description: Child theme de Blocksy con el sistema de diseño atelier de Analog 47 Dream Maker Garage (Barlow Condensed + Barlow, paleta dorado/negro, seams, sin bordes redondeados). Tienda de merchandising con WooCommerce + Mercado Pago.
Author: LaTazaBC
Author URI: https://latazabc.com
Template: blocksy
Version: 1.0.0
Requires Plugins: woocommerce
Text Domain: analog47-blocksy
*/

/* =====================================================================
   ANALOG 47 — Atelier design tokens
   ===================================================================== */
:root {
  --a47-gold:   #CBB587;
  --a47-gold-2: #B6A074;
  --a47-gold-f: rgba(203,181,135,0.08);
  --a47-red:    #C41217;
  --a47-bg:     #080808;
  --a47-bg-s:   #0F0F0F;
  --a47-bg-r:   #171717;
  --a47-bg-r2:  #202020;
  --a47-text:   #EAE4D9;
  --a47-text-m: #8A8480;
  --a47-text-d: #3E3A36;
  --a47-border: rgba(203,181,135,0.14);
  --a47-border-m: rgba(203,181,135,0.28);
  --a47-fd: "Barlow Condensed", "Arial Narrow", sans-serif;
  --a47-fb: "Barlow", system-ui, sans-serif;

  /* ---- Mapeo a las variables globales de Blocksy ----
     Blocksy pinta la mayoría de sus componentes con estas variables,
     así que al redefinirlas aquí, el chrome adopta la marca de forma nativa.
     (El Customizer sigue siendo la fuente autoritativa — ver README.) */
  --theme-palette-color-1: #CBB587; /* Accent / links */
  --theme-palette-color-2: #B6A074; /* Accent hover */
  --theme-palette-color-3: #EAE4D9; /* Headings / texto fuerte */
  --theme-palette-color-4: #8A8480; /* Texto secundario */
  --theme-palette-color-5: rgba(203,181,135,0.14); /* Bordes sutiles */
  --theme-palette-color-6: #171717; /* Superficie */
  --theme-palette-color-7: #0F0F0F; /* Superficie oscura */
  --theme-palette-color-8: #080808; /* Fondo base */

  --theme-text-color: #EAE4D9;
  --theme-headings-color: #EAE4D9;
  --theme-link-initial-color: #CBB587;
  --theme-link-hover-color: #EAE4D9;
  --theme-background-color: #080808;
  --theme-content-background-color: #080808;

  --theme-button-background-initial-color: #CBB587;
  --theme-button-background-hover-color: transparent;
  --theme-button-text-initial-color: #0b0b0b;
  --theme-button-text-hover-color: #CBB587;

  --theme-border-radius: 0px;
  --theme-form-element-border-radius: 0px;
}

/* =====================================================================
   Base
   ===================================================================== */
body,
#main-container,
.ct-container,
.site {
  background-color: var(--a47-bg) !important;
  color: var(--a47-text);
}
body {
  font-family: var(--a47-fb) !important;
  font-weight: 300;
  font-size: 16px;
  line-height: 1.6;
}
a { color: var(--a47-gold); transition: color .25s ease; }
a:hover, a:focus { color: var(--a47-text); }
::selection { background: var(--a47-gold); color: #0b0b0b; }

/* Square + flat (atelier) */
*, img, input, textarea, select, button, .button,
.woocommerce ul.products li.product, .woocommerce div.product,
.woocommerce .button, .woocommerce-message, .woocommerce-info, .woocommerce-error {
  border-radius: 0 !important;
  box-shadow: none !important;
}

h1, h2, h3, h4, h5, h6,
.entry-title, .page-title, .product_title,
.ct-module-heading, .widget-title {
  font-family: var(--a47-fd) !important;
  font-weight: 700;
  letter-spacing: .01em;
  text-transform: uppercase;
  color: var(--a47-text);
  line-height: 1.05;
}

/* =====================================================================
   Blocksy chrome — header / navigation / footer
   ===================================================================== */
header#header,
.ct-header,
[data-device="desktop"] .ct-header {
  background-color: var(--a47-bg-s) !important;
  border-bottom: 1px solid var(--a47-border);
}
.ct-header a,
#header .menu-item a,
.ct-main-navigation a,
header#header .ct-header-cart .ct-cart-item,
header#header a {
  color: var(--a47-text) !important;
  font-family: var(--a47-fd);
  letter-spacing: .14em;
  text-transform: uppercase;
}
.ct-header a:hover,
#header .menu-item a:hover,
.ct-main-navigation a:hover { color: var(--a47-gold) !important; }
#header .menu-item.current-menu-item > a { color: var(--a47-gold) !important; }

/* Dropdowns / offcanvas */
.ct-dropdown-menu,
#offcanvas .ct-panel-inner,
.menu-item .sub-menu {
  background-color: var(--a47-bg-r) !important;
  border: 1px solid var(--a47-border);
}

.ct-footer,
#footer {
  background-color: var(--a47-bg-s) !important;
  color: var(--a47-text-m) !important;
  border-top: 1px solid var(--a47-border);
}
.ct-footer a, #footer a { color: var(--a47-gold) !important; }
.ct-footer a:hover, #footer a:hover { color: var(--a47-text) !important; }

/* =====================================================================
   Buttons (Blocksy + WooCommerce)
   ===================================================================== */
button, input[type="button"], input[type="reset"], input[type="submit"],
.button, .ct-button, .wp-block-button__link, .added_to_cart,
.woocommerce #respond input#submit,
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button,
.woocommerce a.button.alt, .woocommerce button.button.alt,
.woocommerce #respond input#submit.alt, .woocommerce input.button.alt {
  background-color: var(--a47-gold) !important;
  color: #0b0b0b !important;
  font-family: var(--a47-fd) !important;
  font-weight: 600;
  letter-spacing: .18em;
  text-transform: uppercase;
  font-size: 13px;
  padding: 14px 26px;
  border: 1px solid var(--a47-gold) !important;
  transition: background-color .25s ease, color .25s ease;
}
button:hover, .button:hover, .ct-button:hover, .wp-block-button__link:hover, .added_to_cart:hover,
.woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce input.button:hover,
.woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover,
.woocommerce #respond input#submit:hover {
  background-color: transparent !important;
  color: var(--a47-gold) !important;
}
/* Secondary / back buttons */
.woocommerce a.button.wc-backward,
.woocommerce .widget_shopping_cart a.button,
.added_to_cart.wc-forward {
  background-color: transparent !important;
  color: var(--a47-gold) !important;
  border: 1px solid var(--a47-border-m) !important;
}

/* =====================================================================
   WooCommerce — shop loop (seams, not rounded cards)
   ===================================================================== */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
  background-color: var(--a47-bg-s) !important;
  border: 1px solid var(--a47-border);
  padding: 18px 18px 26px;
}
.woocommerce ul.products li.product a img { margin-bottom: 18px; }
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product h2,
.woocommerce ul.products li.product h3 {
  font-family: var(--a47-fd) !important;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .02em;
  color: var(--a47-text) !important;
  font-size: 18px !important;
  padding: 0 !important;
}
.woocommerce ul.products li.product .price { color: var(--a47-gold) !important; font-family: var(--a47-fd) !important; font-weight: 600; }
.woocommerce ul.products li.product .star-rating { color: var(--a47-gold); }

/* Sale badge */
.woocommerce span.onsale {
  background-color: var(--a47-red) !important;
  color: #fff !important;
  font-family: var(--a47-fd);
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  font-size: 11px;
  min-height: auto; min-width: auto; line-height: 1;
  padding: 7px 12px; border: 0;
}

/* =====================================================================
   WooCommerce — single product
   ===================================================================== */
.woocommerce div.product .product_title { font-size: clamp(28px, 4vw, 48px); }
.woocommerce div.product p.price,
.woocommerce div.product span.price {
  color: var(--a47-gold) !important;
  font-family: var(--a47-fd) !important;
  font-weight: 700;
  font-size: 30px;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li { background: var(--a47-bg-r) !important; border-color: var(--a47-border) !important; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active { background: var(--a47-bg-s) !important; border-bottom-color: var(--a47-bg-s) !important; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a { color: var(--a47-text) !important; }
.woocommerce div.product .woocommerce-tabs ul.tabs::before { border-color: var(--a47-border); }
.woocommerce div.product form.cart div.quantity .qty { background: var(--a47-bg-r) !important; color: var(--a47-text) !important; border: 1px solid var(--a47-border) !important; }
.stock.in-stock { color: var(--a47-gold) !important; }

/* =====================================================================
   Forms / inputs
   ===================================================================== */
input[type="text"], input[type="email"], input[type="password"],
input[type="tel"], input[type="number"], input[type="search"],
input[type="url"], textarea, select,
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.select2-container--default .select2-selection--single {
  background-color: var(--a47-bg-r) !important;
  color: var(--a47-text) !important;
  border: 1px solid var(--a47-border) !important;
}
input:focus, textarea:focus, select:focus { border-color: var(--a47-gold) !important; }
.select2-container--default .select2-selection--single .select2-selection__rendered { color: var(--a47-text); }
label, .woocommerce-input-wrapper { color: var(--a47-text); }

/* =====================================================================
   Cart / checkout
   ===================================================================== */
.woocommerce table.shop_table,
.woocommerce-cart table.cart,
.woocommerce table.shop_table th,
.woocommerce table.shop_table td {
  background-color: var(--a47-bg-s) !important;
  color: var(--a47-text) !important;
  border-color: var(--a47-border) !important;
}
.woocommerce table.shop_table thead th { color: var(--a47-text-m) !important; text-transform: uppercase; font-family: var(--a47-fd); letter-spacing: .14em; }
.woocommerce-cart .cart-collaterals .cart_totals,
.woocommerce .cart_totals, .woocommerce-checkout #order_review,
.woocommerce-checkout #order_review_heading {
  background-color: var(--a47-bg-s) !important;
  border: 1px solid var(--a47-border);
  color: var(--a47-text);
}
.woocommerce-checkout #payment,
.woocommerce .woocommerce-checkout-review-order-table { background-color: var(--a47-bg-r) !important; }
.woocommerce-info, .woocommerce-message, .woocommerce-error,
.woocommerce-noreviews, p.no-comments {
  background-color: var(--a47-bg-r) !important;
  color: var(--a47-text) !important;
  border-top: 3px solid var(--a47-gold) !important;
}
.woocommerce-error { border-top-color: var(--a47-red) !important; }
.woocommerce-info::before, .woocommerce-message::before { color: var(--a47-gold) !important; }
.woocommerce-error::before { color: var(--a47-red) !important; }

/* =====================================================================
   Misc polish
   ===================================================================== */
.price del { color: var(--a47-text-d) !important; opacity: 1; }
.price ins { text-decoration: none; color: var(--a47-gold) !important; }
.woocommerce-breadcrumb { color: var(--a47-text-m); font-family: var(--a47-fd); letter-spacing: .1em; text-transform: uppercase; font-size: 13px; }
.woocommerce nav.woocommerce-pagination ul,
.woocommerce nav.woocommerce-pagination ul li { border-color: var(--a47-border) !important; }
.woocommerce nav.woocommerce-pagination ul li a:focus,
.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li span.current { background: var(--a47-gold) !important; color: #0b0b0b !important; }
hr { border-color: var(--a47-border) !important; }
