/* ═══════════════════════════════════════════════════════════════════
   STM Site — v2.8.0 · Sistema de diseño de Small Traders
   Independiente del tema. Negro #09090b · dorado #c9a84c · Bebas Neue + Space Grotesk
   ═══════════════════════════════════════════════════════════════════ */
:root{
  --stm-bg:#09090b; --stm-surface:#0e1411; --stm-card:#101214;
  --stm-gold:#c9a84c; --stm-gold2:#e8c76a; --stm-gold-dim:rgba(201,168,76,.12);
  --stm-text:#fafaf8; --stm-muted:rgba(250,250,248,.62); --stm-faint:rgba(250,250,248,.38);
  --stm-line:rgba(250,250,248,.09); --stm-line-gold:rgba(201,168,76,.22);
  --stm-green:#4ade80; --stm-red:#f87171;
  --stm-fd:'Bebas Neue','Arial Narrow',Impact,sans-serif;
  --stm-fb:'Space Grotesk',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --stm-sx-h:60px; --stm-r:6px;
}
html.stm-sx-lock{overflow:hidden}
body.stm-sx{
  font-family:var(--stm-fb);background:var(--stm-bg)!important;color:var(--stm-text);
  padding-top:calc(var(--stm-sx-h) + env(safe-area-inset-top,0px))!important;
  -webkit-font-smoothing:antialiased;
}
body.stm-sx *,body.stm-sx *::before,body.stm-sx *::after{box-sizing:border-box}
body.stm-sx a{color:inherit}

/* ───────────── Cabecera ───────────── */
.stm-sx-hdr{
  position:fixed;top:0;left:0;right:0;z-index:9000;
  padding-top:env(safe-area-inset-top,0px);
  background:rgba(9,9,11,.9);
  -webkit-backdrop-filter:blur(16px) saturate(160%);backdrop-filter:blur(16px) saturate(160%);
  border-bottom:1px solid var(--stm-line);transition:border-color .25s,background .25s;
  font-family:var(--stm-fb);
}
body.admin-bar .stm-sx-hdr{top:32px}
@media(max-width:782px){body.admin-bar .stm-sx-hdr{top:46px}}
.stm-sx-hdr.stm-sx-scrolled{border-bottom-color:var(--stm-line-gold);background:rgba(9,9,11,.97)}
.stm-sx-hdr-in{
  height:var(--stm-sx-h);max-width:1240px;margin:0 auto;padding:0 24px;
  display:flex;align-items:center;gap:28px;
}
.stm-sx-hdr ul,.stm-sx-ftr ul{list-style:none;margin:0;padding:0}
.stm-sx-logo{display:inline-flex;align-items:center;text-decoration:none;flex-shrink:0;line-height:1}
.stm-sx-logo-img{height:30px;width:auto;max-width:190px;object-fit:contain;filter:brightness(0) invert(1)}
.stm-sx-word{font-family:var(--stm-fd);font-size:26px;letter-spacing:.07em;color:var(--stm-gold);white-space:nowrap}

.stm-sx-nav{flex:1;min-width:0}
.stm-sx-menu{display:flex;align-items:center;gap:2px;flex-wrap:nowrap}
.stm-sx-menu li{margin:0;list-style:none}
.stm-sx-menu a{
  position:relative;display:block;padding:8px 13px;font-size:13.5px;font-weight:500;letter-spacing:.01em;
  color:var(--stm-muted);text-decoration:none;white-space:nowrap;border-radius:var(--stm-r);transition:color .18s,background .18s;
}
.stm-sx-menu a:hover{color:var(--stm-text);background:rgba(250,250,248,.05)}
.stm-sx-menu .current-menu-item>a,.stm-sx-menu .current_page_item>a{color:var(--stm-gold)}
.stm-sx-menu .current-menu-item>a::after,.stm-sx-menu .current_page_item>a::after{
  content:'';position:absolute;left:13px;right:13px;bottom:2px;height:2px;border-radius:2px;background:var(--stm-gold);
}

.stm-sx-actions{display:flex;align-items:center;gap:10px;margin-left:auto}
.stm-sx-login{font-size:13px;font-weight:500;color:var(--stm-muted);text-decoration:none;padding:8px 12px;border-radius:var(--stm-r);transition:color .18s}
.stm-sx-login:hover{color:var(--stm-text)}
.stm-sx-cta{
  display:inline-flex;align-items:center;justify-content:center;font-size:12.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;
  padding:10px 18px;background:var(--stm-gold);color:#09090b!important;border-radius:var(--stm-r);text-decoration:none;white-space:nowrap;transition:background .18s,transform .18s;
}
.stm-sx-cta:hover{background:var(--stm-gold2);transform:translateY(-1px)}

/* Usuario */
.stm-sx-user{position:relative}
.stm-sx-user>summary{list-style:none;cursor:pointer}
.stm-sx-user>summary::-webkit-details-marker{display:none}
.stm-sx-chip{
  display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--stm-gold);
  background:var(--stm-gold-dim);border:1px solid var(--stm-line-gold);padding:8px 14px;border-radius:999px;white-space:nowrap;
}
.stm-sx-chip::after{content:'';width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px)}
.stm-sx-user[open] .stm-sx-chip{background:rgba(201,168,76,.2)}
.stm-sx-pop{
  position:absolute;right:0;top:calc(100% + 10px);min-width:200px;padding:8px;background:#0f0f12;border:1px solid var(--stm-line-gold);
  border-radius:10px;box-shadow:0 18px 50px rgba(0,0,0,.6);display:flex;flex-direction:column;
}
.stm-sx-pop a{padding:10px 12px;font-size:13.5px;color:var(--stm-muted);text-decoration:none;border-radius:6px}
.stm-sx-pop a:hover{background:rgba(250,250,248,.06);color:var(--stm-text)}
.stm-sx-pop .stm-sx-out{margin-top:4px;border-top:1px solid var(--stm-line);border-radius:0 0 6px 6px;color:var(--stm-faint)}

/* Botón ☰ */
.stm-sx-burger{
  display:none;margin-left:auto;width:42px;height:42px;padding:0;background:transparent;border:1px solid var(--stm-line);border-radius:var(--stm-r);
  cursor:pointer;flex-direction:column;align-items:center;justify-content:center;gap:5px;
}
.stm-sx-burger span{display:block;width:18px;height:1.5px;background:var(--stm-text);transition:transform .22s,opacity .22s}
.stm-sx-burger.open span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
.stm-sx-burger.open span:nth-child(2){opacity:0}
.stm-sx-burger.open span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}

/* Panel móvil */
.stm-sx-drawer{
  position:fixed;left:0;right:0;top:calc(var(--stm-sx-h) + env(safe-area-inset-top,0px));bottom:0;z-index:8999;overflow-y:auto;
  background:#09090b;padding:12px 24px calc(28px + env(safe-area-inset-bottom,0px));
}
.stm-sx-drawer ul{list-style:none;margin:0;padding:0}
.stm-sx-drawer li{list-style:none;margin:0}
@media(max-width:768px){.stm-sx-drawer{padding-bottom:calc(110px + env(safe-area-inset-bottom,0px))}} /* barra inferior de la PWA */
body.admin-bar .stm-sx-drawer{top:calc(var(--stm-sx-h) + 32px)}
@media(max-width:782px){body.admin-bar .stm-sx-drawer{top:calc(var(--stm-sx-h) + 46px)}}
.stm-sx-drawer[hidden]{display:none}
.stm-sx-menu-m{display:flex;flex-direction:column}
.stm-sx-menu-m a{display:block;padding:17px 4px;font-size:19px;font-weight:600;color:var(--stm-text);text-decoration:none;border-bottom:1px solid var(--stm-line)}
.stm-sx-menu-m .current-menu-item>a{color:var(--stm-gold)}
.stm-sx-drawer-actions{display:flex;flex-direction:column;gap:10px;margin-top:24px}
.stm-sx-drawer-actions .stm-sx-cta{padding:15px 18px;font-size:13px}
.stm-sx-drawer-actions .stm-sx-login{text-align:center;border:1px solid var(--stm-line);padding:14px}

@media(max-width:860px){
  .stm-sx-hdr-in{padding:0 16px;gap:12px}
  .stm-sx-nav,.stm-sx-actions{display:none}
  .stm-sx-burger{display:flex}
}
@media(min-width:861px){.stm-sx-drawer{display:none!important}}

/* ───────────── Contenido ───────────── */
.stm-sx-main{display:block;min-height:60vh}
.stm-sx-prose{max-width:880px;margin:0 auto;padding:56px 24px 88px;font-size:16.5px;line-height:1.8;color:var(--stm-muted)}
.stm-sx-prose.stm-sx-wide{max-width:1160px}
.stm-sx-title{font-family:var(--stm-fd);font-weight:400;font-size:clamp(42px,8vw,72px);line-height:.98;letter-spacing:.02em;color:#fff;margin:0 0 30px}
.stm-sx-meta{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--stm-gold);margin:-14px 0 26px}
.stm-sx-prose h1,.stm-sx-prose h2,.stm-sx-prose h3,.stm-sx-prose h4{font-family:var(--stm-fb);color:#fff;line-height:1.2;font-weight:700;margin:2em 0 .6em}
.stm-sx-prose h1{font-family:var(--stm-fd);font-weight:400;font-size:clamp(36px,6vw,56px);letter-spacing:.02em}
.stm-sx-prose h2{font-size:26px}.stm-sx-prose h3{font-size:20px}.stm-sx-prose h4{font-size:17px}
.stm-sx-prose p{margin:0 0 1.15em}
.stm-sx-prose strong,.stm-sx-prose b{color:var(--stm-text)}
.stm-sx-prose a{color:var(--stm-gold);text-decoration:underline;text-decoration-color:rgba(201,168,76,.4);text-underline-offset:3px}
.stm-sx-prose a:hover{color:var(--stm-gold2)}
.stm-sx-prose ul,.stm-sx-prose ol{margin:0 0 1.2em 1.3em;padding:0}
.stm-sx-prose li{margin:.35em 0}
.stm-sx-prose ul li::marker{color:var(--stm-gold)}
.stm-sx-prose blockquote{margin:1.6em 0;padding:4px 0 4px 20px;border-left:3px solid var(--stm-gold);color:var(--stm-text);font-style:italic}
.stm-sx-prose hr{border:0;border-top:1px solid var(--stm-line);margin:2.4em 0}
.stm-sx-prose img{max-width:100%;height:auto;border-radius:8px}
.stm-sx-prose table{width:100%;border-collapse:collapse;margin:1.4em 0;font-size:14.5px}
.stm-sx-prose th{text-align:left;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--stm-faint);padding:10px 12px;border-bottom:1px solid var(--stm-line-gold)}
.stm-sx-prose td{padding:12px;border-bottom:1px solid var(--stm-line);vertical-align:top}
.stm-sx-prose code,.stm-sx-prose pre{background:#121316;border:1px solid var(--stm-line);border-radius:6px;font-size:.9em;color:var(--stm-gold2)}
.stm-sx-prose code{padding:2px 6px}.stm-sx-prose pre{padding:16px;overflow:auto}

/* Formularios y botones (genéricos + WooCommerce) */
.stm-sx-prose input[type=text],.stm-sx-prose input[type=email],.stm-sx-prose input[type=password],.stm-sx-prose input[type=tel],
.stm-sx-prose input[type=number],.stm-sx-prose input[type=url],.stm-sx-prose input[type=search],.stm-sx-prose select,.stm-sx-prose textarea,
.stm-sx-prose .select2-selection,.wc-block-components-text-input input,.wc-block-components-form .wc-block-components-text-input input{
  width:100%;background:#0c0d10!important;color:var(--stm-text)!important;border:1px solid rgba(250,250,248,.16)!important;border-radius:var(--stm-r);
  padding:12px 14px;font:inherit;font-size:15px;line-height:1.4;
}
.stm-sx-prose input:focus,.stm-sx-prose select:focus,.stm-sx-prose textarea:focus{outline:0;border-color:var(--stm-gold)!important;box-shadow:0 0 0 3px rgba(201,168,76,.16)}
.stm-sx-prose label{color:var(--stm-text);font-size:13.5px;font-weight:500}
.stm-sx-prose button,.stm-sx-prose input[type=submit],.stm-sx-prose .button,.stm-sx-prose a.button,.stm-sx-prose .wp-element-button,
.stm-sx-prose .wc-block-components-button:not(.is-link),.stm-sx-prose .woocommerce-Button{
  display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font:inherit;font-size:13px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;
  background:var(--stm-gold);color:#09090b!important;border:0;border-radius:var(--stm-r);padding:13px 24px;text-decoration:none;transition:background .18s,transform .18s;
}
.stm-sx-prose button:hover,.stm-sx-prose input[type=submit]:hover,.stm-sx-prose .button:hover,.stm-sx-prose .wp-element-button:hover{background:var(--stm-gold2);transform:translateY(-1px)}
.stm-sx-prose button.alt.disabled,.stm-sx-prose .button:disabled{opacity:.5;cursor:not-allowed}

/* WooCommerce */
.stm-sx-prose .woocommerce{color:var(--stm-muted)}
.stm-sx-prose .woocommerce-message,.stm-sx-prose .woocommerce-info,.stm-sx-prose .woocommerce-error,.stm-sx-prose .wc-block-components-notice-banner{
  list-style:none;margin:0 0 22px;padding:15px 18px;background:var(--stm-surface);border:1px solid var(--stm-line-gold);border-left:3px solid var(--stm-gold);border-radius:var(--stm-r);color:var(--stm-text)}
.stm-sx-prose .woocommerce-error{border-left-color:var(--stm-red)}
.stm-sx-prose .woocommerce-message::before,.stm-sx-prose .woocommerce-info::before,.stm-sx-prose .woocommerce-error::before{display:none}
.stm-sx-prose .woocommerce-message .button,.stm-sx-prose .woocommerce-info .button{float:right;padding:8px 14px}
.stm-sx-prose table.shop_table{border:1px solid var(--stm-line);border-radius:8px;border-collapse:separate;border-spacing:0;overflow:hidden}
.stm-sx-prose table.shop_table th,.stm-sx-prose table.shop_table td{padding:14px 16px;border-bottom:1px solid var(--stm-line);color:var(--stm-text)}
.stm-sx-prose table.shop_table tr:last-child td,.stm-sx-prose table.shop_table tr:last-child th{border-bottom:0}
.stm-sx-prose .cart_totals,.stm-sx-prose #order_review,.stm-sx-prose .woocommerce-checkout-payment,.stm-sx-prose #payment{background:var(--stm-surface);border:1px solid var(--stm-line);border-radius:10px;padding:20px}
.stm-sx-prose #payment ul.payment_methods{border:0;padding:0;margin:0 0 16px}
.stm-sx-prose #payment div.payment_box{background:#0b0d0c;color:var(--stm-muted);border-radius:6px}
.stm-sx-prose #payment div.payment_box::before{display:none}
.stm-sx-prose .woocommerce-checkout h3,.stm-sx-prose .cart_totals h2{margin-top:0}
.stm-sx-prose .product .price,.stm-sx-prose .woocommerce-Price-amount{color:var(--stm-gold2);font-weight:700}
.stm-sx-prose ul.products{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:20px;margin:0;padding:0;list-style:none}
.stm-sx-prose ul.products li.product{background:var(--stm-card);border:1px solid var(--stm-line);border-radius:10px;padding:14px;margin:0!important;width:auto!important;float:none!important}
.stm-sx-prose ul.products li.product a{text-decoration:none}
.stm-sx-prose .woocommerce-loop-product__title{font-size:15px;color:#fff;font-weight:600}
}
.stm-sx-prose .woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;border:1px solid var(--stm-line);border-radius:10px;overflow:hidden}
.stm-sx-prose .woocommerce-MyAccount-navigation a{display:block;padding:13px 16px;color:var(--stm-muted);text-decoration:none;border-bottom:1px solid var(--stm-line);font-size:14px}
.stm-sx-prose .woocommerce-MyAccount-navigation li:last-child a{border-bottom:0}
.stm-sx-prose .woocommerce-MyAccount-navigation .is-active a{color:var(--stm-gold);background:var(--stm-gold-dim)}
.stm-sx-prose .woocommerce form.login,.stm-sx-prose .woocommerce form.register{background:var(--stm-surface);border:1px solid var(--stm-line);border-radius:10px;padding:24px}
.wc-block-components-main,.wc-block-components-sidebar,.wp-block-woocommerce-cart,.wp-block-woocommerce-checkout{color:var(--stm-text)}
.wc-block-components-totals-wrapper{border-color:var(--stm-line)!important}

/* Listados (blog / archivos / búsqueda) */
.stm-sx-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:20px;margin:0 0 40px}
.stm-sx-card{background:var(--stm-card);border:1px solid var(--stm-line);border-radius:12px;padding:24px;transition:border-color .2s,transform .2s}
.stm-sx-card:hover{border-color:var(--stm-line-gold);transform:translateY(-2px)}
.stm-sx-card h2{font-size:21px;margin:0 0 10px;line-height:1.25}
.stm-sx-card h2 a{color:#fff;text-decoration:none}
.stm-sx-card p{font-size:14.5px;line-height:1.7;margin:0}
.stm-sx-card .stm-sx-meta{margin:0 0 10px}
.stm-sx-pager{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}
.stm-sx-pager a,.stm-sx-pager span{padding:9px 15px;border:1px solid var(--stm-line);border-radius:var(--stm-r);color:var(--stm-muted);text-decoration:none;font-size:14px}
.stm-sx-pager .current{background:var(--stm-gold);border-color:var(--stm-gold);color:#09090b}

/* 404 */
.stm-sx-404{text-align:center;padding:96px 24px 120px;max-width:620px;margin:0 auto}
.stm-sx-404 .stm-sx-big{font-family:var(--stm-fd);font-size:clamp(90px,24vw,190px);line-height:.9;color:var(--stm-gold);margin:0}
.stm-sx-404 p{color:var(--stm-muted);font-size:16px;line-height:1.7;margin:12px 0 28px}
.stm-sx-404 .stm-sx-cta{padding:14px 26px}

/* ───────────── Footer ───────────── */
.stm-sx-ftr{background:linear-gradient(180deg,#09090b 0,#0b0f0d 100%);border-top:1px solid var(--stm-line-gold);padding:56px 24px 28px;font-family:var(--stm-fb);color:var(--stm-muted)}
.stm-sx-ftr-in{max-width:1240px;margin:0 auto;display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:40px}
.stm-sx-ftr-brand p{margin:14px 0 0;font-size:14px;line-height:1.7;max-width:340px;color:var(--stm-faint)}
.stm-sx-ftr h4{margin:0 0 16px;font-family:var(--stm-fb);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--stm-gold);font-weight:700}
.stm-sx-fmenu li{margin:0 0 10px}
.stm-sx-fmenu a{font-size:14px;color:var(--stm-muted);text-decoration:none;transition:color .18s}
.stm-sx-fmenu a:hover{color:var(--stm-text)}
.stm-sx-risk{max-width:1240px;margin:36px auto 0;padding-top:22px;border-top:1px solid var(--stm-line);font-size:12px;line-height:1.7;color:var(--stm-faint)}
.stm-sx-ftr-bot{max-width:1240px;margin:14px auto 0;font-size:12px;color:rgba(250,250,248,.28)}
@media(max-width:860px){
  .stm-sx-ftr{padding:44px 20px 24px}
  .stm-sx-ftr-in{grid-template-columns:1fr 1fr;gap:32px}
  .stm-sx-ftr-brand{grid-column:1/-1}
}
@media(max-width:768px){.stm-sx-ftr{padding-bottom:calc(96px + env(safe-area-inset-bottom,0px))}} /* deja libre la barra inferior de la PWA */
@media(max-width:480px){.stm-sx-ftr-in{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.stm-sx-hdr,.stm-sx-cta,.stm-sx-card,.stm-sx-burger span{transition:none}}

/* ───────────── Contenedor de componentes (Mi plan, checkout…) — v2.8.3 ───────────── */
.stm-sx-shell{max-width:980px;margin:0 auto;padding:44px 20px 88px}
/* Base de bajo peso (especificidad 0): solo afecta a lo que el plugin NO estiló */
:where(.stm-sx-shell) :where(button){font:inherit;font-size:13.5px;font-weight:600;color:var(--stm-text);background:#15151a;border:1px solid rgba(250,250,248,.16);border-radius:var(--stm-r);padding:10px 16px;cursor:pointer}
:where(.stm-sx-shell) :where(button):hover{border-color:var(--stm-gold);color:var(--stm-gold)}
:where(.stm-sx-shell) :where(input:not([type=checkbox]):not([type=radio]),select,textarea){font:inherit;color:var(--stm-text);background:#0e0e11;border:1px solid rgba(250,250,248,.16);border-radius:var(--stm-r);padding:11px 13px}
:where(.stm-sx-shell) :where(a){color:var(--stm-gold)}
:where(.stm-sx-shell) :where(p,li){color:var(--stm-muted)}
