{"id":988450,"date":"2026-05-06T11:25:29","date_gmt":"2026-05-06T16:25:29","guid":{"rendered":"https:\/\/cgestiona.com\/?page_id=988450"},"modified":"2026-05-06T13:03:08","modified_gmt":"2026-05-06T18:03:08","slug":"mercado-de-metales","status":"publish","type":"page","link":"https:\/\/cgestiona.com\/en\/mercado-de-metales\/","title":{"rendered":"Mercado de Metales"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"988450\" class=\"elementor elementor-988450\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-437a0448 e-con-full e-flex e-con e-parent\" data-id=\"437a0448\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-98b0907 e-con-full e-flex e-con e-child\" data-id=\"98b0907\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-b669447 e-con-full e-flex e-con e-child\" data-id=\"b669447\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t<div class=\"elementor-element elementor-element-a85e91c e-con-full e-flex e-con e-child\" data-id=\"a85e91c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-5a60e34 e-con-full e-flex e-con e-child\" data-id=\"5a60e34\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t<div class=\"elementor-element elementor-element-9d79281 e-con-full e-flex e-con e-child\" data-id=\"9d79281\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-44cb000 elementor-widget elementor-widget-heading\" data-id=\"44cb000\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Mercado de Metales<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"vamtam-has-theme-widget-styles elementor-element elementor-element-676ef98 elementor-widget elementor-widget-text-editor\" data-id=\"676ef98\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\tConsulta el precio del oro y la plata en tiempo real. Cotizaciones actualizadas del mercado internacional de metales con gr\u00e1ficos y datos en vivo en Cgestiona.\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b5fc977 e-con-full e-flex e-con e-child\" data-id=\"b5fc977\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-9647469 e-con-full e-flex e-con e-child\" data-id=\"9647469\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-fc8cd03 elementor-widget elementor-widget-html\" data-id=\"fc8cd03\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<!-- ============================================================\r\n     WIDGET ORO Y PLATA \u2014 v2 (igual a referencia)\r\n     Datos en tiempo real desde proxy PHP\r\n     ============================================================ -->\r\n\r\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=Inter:wght@400;500;600;700;800&family=JetBrains+Mono:wght@500;600;700&display=swap\" rel=\"stylesheet\">\r\n\r\n<style>\r\n\/* ===== Reset interno (solo margin\/font, NO padding para no pisar declaraciones) ===== *\/\r\n#mpw2, #mpw2 *, #mpw2 *::before, #mpw2 *::after { box-sizing: border-box; }\r\n#mpw2 *:not(input) {\r\n  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;\r\n  margin: 0;\r\n  line-height: 1.4;\r\n}\r\n#mpw2 p, #mpw2 ul, #mpw2 ol, #mpw2 h1, #mpw2 h2, #mpw2 h3, #mpw2 h4 { padding: 0; }\r\n#mpw2 button {\r\n  background: none; border: none; padding: 0; margin: 0;\r\n  font-family: inherit; cursor: pointer; color: inherit;\r\n  text-shadow: none; box-shadow: none; outline: none;\r\n  -webkit-appearance: none; appearance: none; border-radius: 0;\r\n  line-height: inherit;\r\n}\r\n#mpw2 button:hover, #mpw2 button:focus, #mpw2 button:active {\r\n  background: none; color: inherit; box-shadow: none;\r\n  text-shadow: none; outline: none;\r\n}\r\n#mpw2 img { display: block; max-width: 100%; height: auto; }\r\n\r\n\/* ===== Variables ===== *\/\r\n#mpw2 {\r\n  --gold:        #d4a017;\r\n  --gold-dark:   #b8860b;\r\n  --gold-bg:     #fffdf5;\r\n  --gold-bg2:    #fef9e7;\r\n  --gold-border: rgba(212, 160, 23, 0.18);\r\n\r\n  --silver:        #94a3b8;\r\n  --silver-dark:   #64748b;\r\n  --silver-bg:     #fcfdfe;\r\n  --silver-bg2:    #f1f5f9;\r\n  --silver-border: #e2e8f0;\r\n\r\n  --text:        #0f172a;\r\n  --text-soft:   #475569;\r\n  --text-mute:   #64748b;\r\n  --text-faint:  #94a3b8;\r\n  --border:      #e2e8f0;\r\n  --border-soft: #f1f5f9;\r\n  --bg:          #ffffff;\r\n  --bg-soft:     #f8fafc;\r\n\r\n  --success:        #16a34a;\r\n  --success-bg:     #f0fdf4;\r\n  --success-border: #bbf7d0;\r\n  --error:          #dc2626;\r\n  --error-bg:       #fef2f2;\r\n  --error-border:   #fecaca;\r\n\r\n  --dark:   #0f172a;\r\n  --dark-2: #1e293b;\r\n\r\n  display: block;\r\n  background: var(--bg);\r\n  border: 1px solid var(--border);\r\n  border-radius: 24px;\r\n  padding: 28px;\r\n  width: 100%;\r\n  max-width: 1280px;\r\n  margin: 0 auto;\r\n  box-shadow: 0 6px 32px rgba(15, 23, 42, 0.06);\r\n  color: var(--text);\r\n}\r\n\r\n\/* ============ HEADER ============ *\/\r\n.mpw2-topbar {\r\n  display: flex; justify-content: space-between; align-items: center;\r\n  gap: 16px; flex-wrap: wrap;\r\n  margin-bottom: 28px;\r\n}\r\n.mpw2-logo {\r\n  flex-shrink: 0;\r\n  display: inline-flex;\r\n  align-items: center;\r\n  gap: 12px;\r\n}\r\n.mpw2-logo-img {\r\n  height: 40px;\r\n  width: auto;\r\n  display: block;\r\n  object-fit: contain;\r\n}\r\n.mpw2-logo-text {\r\n  font-size: 24px;\r\n  font-weight: 700;\r\n  color: var(--text);\r\n  letter-spacing: -0.5px;\r\n}\r\n.mpw2-topbar-right {\r\n  display: flex; flex-direction: column; align-items: flex-end;\r\n  gap: 4px;\r\n}\r\n.mpw2-status {\r\n  display: inline-flex; align-items: center; gap: 8px;\r\n  font-size: 13px; font-weight: 700; color: var(--success);\r\n  letter-spacing: 0.5px;\r\n  text-transform: uppercase;\r\n  white-space: nowrap;\r\n  cursor: pointer;\r\n}\r\n.mpw2-status.error { color: var(--error); }\r\n.mpw2-status.loading { color: #a16207; }\r\n.mpw2-dot {\r\n  width: 8px; height: 8px; border-radius: 50%;\r\n  background: currentColor;\r\n  animation: mpw2-pulse 2s ease-in-out infinite;\r\n  flex-shrink: 0;\r\n}\r\n@keyframes mpw2-pulse { 0%,100%{opacity:1} 50%{opacity:0.4} }\r\n.mpw2-subtitle-top {\r\n  font-size: 13px;\r\n  color: var(--text-mute);\r\n  font-weight: 500;\r\n}\r\n\r\n\/* ============ HERO ============ *\/\r\n.mpw2-hero {\r\n  text-align: center;\r\n  margin-bottom: 24px;\r\n}\r\n.mpw2-hero-title {\r\n  font-size: clamp(36px, 5vw, 56px);\r\n  font-weight: 800;\r\n  letter-spacing: -1.5px;\r\n  line-height: 1.05;\r\n}\r\n.mpw2-hero-title .gold-w  { color: var(--gold); }\r\n.mpw2-hero-title .silver-w { color: var(--silver-dark); }\r\n.mpw2-hero-title .amp     {\r\n  color: var(--text-faint);\r\n  font-weight: 400;\r\n  font-size: 0.85em;\r\n  margin: 0 22px;\r\n  display: inline-block;\r\n}\r\n\r\n.mpw2-hero-sub {\r\n  font-size: 14px;\r\n  color: var(--text-mute);\r\n  margin-top: 14px;\r\n  font-weight: 500;\r\n  display: flex;\r\n  align-items: center;\r\n  justify-content: center;\r\n  gap: 14px;\r\n}\r\n.mpw2-hero-sub::before,\r\n.mpw2-hero-sub::after {\r\n  content: '';\r\n  flex: 0 0 60px;\r\n  height: 1px;\r\n  background: var(--border);\r\n}\r\n\r\n\/* ============ CARDS ============ *\/\r\n.mpw2-cards {\r\n  display: grid;\r\n  grid-template-columns: 1fr 1fr;\r\n  gap: 20px;\r\n  margin-bottom: 22px;\r\n}\r\n\r\n.mpw2-card {\r\n  position: relative;\r\n  border: 1.5px solid var(--border);\r\n  border-radius: 20px;\r\n  padding: 24px;\r\n  display: flex;\r\n  flex-direction: column;\r\n  min-height: 360px;\r\n  transition: all 0.25s ease;\r\n}\r\n.mpw2-card.gold {\r\n  background: linear-gradient(180deg, var(--gold-bg) 0%, var(--gold-bg2) 100%);\r\n  border-color: var(--gold-border);\r\n}\r\n.mpw2-card.silver {\r\n  background: linear-gradient(180deg, var(--silver-bg) 0%, var(--silver-bg2) 100%);\r\n  border-color: var(--silver-border);\r\n}\r\n.mpw2-card:hover {\r\n  transform: translateY(-2px);\r\n  box-shadow: 0 10px 32px rgba(15, 23, 42, 0.06);\r\n}\r\n.mpw2-card.gold:hover { box-shadow: 0 10px 32px rgba(212, 160, 23, 0.12); }\r\n\r\n\/* Card head *\/\r\n.mpw2-card-head {\r\n  display: flex;\r\n  align-items: center;\r\n  justify-content: space-between;\r\n  gap: 12px;\r\n  margin-bottom: 18px;\r\n}\r\n.mpw2-name-block {\r\n  display: flex; align-items: center; gap: 14px;\r\n  min-width: 0;\r\n}\r\n.mpw2-icon {\r\n  width: 56px; height: 56px;\r\n  border-radius: 14px;\r\n  display: inline-flex; align-items: center; justify-content: center;\r\n  flex-shrink: 0;\r\n  box-shadow: 0 2px 8px rgba(0,0,0,0.08);\r\n}\r\n.mpw2-icon.gold {\r\n  background: linear-gradient(135deg, #f5c842 0%, #d4a017 50%, #b8860b 100%);\r\n}\r\n.mpw2-icon.silver {\r\n  background: linear-gradient(135deg, #cbd5e1 0%, #94a3b8 50%, #64748b 100%);\r\n}\r\n.mpw2-icon svg { width: 30px; height: 30px; }\r\n.mpw2-name { min-width: 0; }\r\n.mpw2-name-title {\r\n  font-size: 24px; font-weight: 700; color: var(--text);\r\n  letter-spacing: -0.6px; line-height: 1.05;\r\n}\r\n.mpw2-name-symbol {\r\n  font-size: 12px; color: var(--text-mute);\r\n  font-weight: 600;\r\n  font-family: 'JetBrains Mono', monospace;\r\n  letter-spacing: 0.5px;\r\n  margin-top: 4px;\r\n}\r\n\r\n\/* Live badge *\/\r\n.mpw2-live {\r\n  display: inline-flex; align-items: center; gap: 6px;\r\n  background: var(--success-bg);\r\n  border: 1px solid var(--success-border);\r\n  border-radius: 20px;\r\n  padding: 6px 12px;\r\n  font-size: 11px; font-weight: 700;\r\n  color: var(--success);\r\n  letter-spacing: 0.5px;\r\n  text-transform: uppercase;\r\n  white-space: nowrap;\r\n  flex-shrink: 0;\r\n}\r\n.mpw2-live .mpw2-dot { width: 6px; height: 6px; }\r\n\r\n\/* Price row *\/\r\n.mpw2-price-row {\r\n  display: flex; align-items: flex-start; justify-content: space-between;\r\n  gap: 16px; flex-wrap: wrap;\r\n}\r\n.mpw2-price-block { flex: 1 1 auto; min-width: 0; }\r\n.mpw2-price {\r\n  font-size: clamp(34px, 4.5vw, 44px);\r\n  font-weight: 800;\r\n  color: var(--text);\r\n  letter-spacing: -1.5px;\r\n  line-height: 1;\r\n  font-variant-numeric: tabular-nums;\r\n}\r\n.mpw2-price-unit {\r\n  font-size: 14px;\r\n  color: var(--text-mute);\r\n  font-weight: 500;\r\n  margin-top: 8px;\r\n}\r\n.mpw2-change {\r\n  display: inline-flex; flex-direction: column;\r\n  align-items: center;\r\n  background: var(--success-bg);\r\n  border: 1px solid var(--success-border);\r\n  border-radius: 14px;\r\n  padding: 10px 16px;\r\n  flex-shrink: 0;\r\n  min-width: 86px;\r\n}\r\n.mpw2-change.down {\r\n  background: var(--error-bg);\r\n  border-color: var(--error-border);\r\n}\r\n.mpw2-change-amount {\r\n  font-size: 17px; font-weight: 800;\r\n  color: var(--success);\r\n  font-variant-numeric: tabular-nums;\r\n  display: inline-flex; align-items: center; gap: 4px;\r\n  letter-spacing: -0.3px;\r\n  line-height: 1;\r\n}\r\n.mpw2-change.down .mpw2-change-amount { color: var(--error); }\r\n.mpw2-change-arrow {\r\n  font-size: 11px; line-height: 1;\r\n}\r\n.mpw2-change-pct {\r\n  font-size: 12px;\r\n  color: var(--success);\r\n  font-weight: 600;\r\n  font-variant-numeric: tabular-nums;\r\n  margin-top: 3px;\r\n}\r\n.mpw2-change.down .mpw2-change-pct { color: var(--error); }\r\n\r\n\/* Sparkline *\/\r\n.mpw2-spark {\r\n  width: 100%;\r\n  height: 90px;\r\n  margin: 18px 0;\r\n  flex: 1;\r\n  min-height: 90px;\r\n}\r\n.mpw2-spark svg { width: 100%; height: 100%; display: block; }\r\n\r\n\/* Stats row *\/\r\n.mpw2-stats {\r\n  display: grid;\r\n  grid-template-columns: 1fr 1fr 1fr;\r\n  gap: 12px;\r\n  padding-top: 14px;\r\n  border-top: 1px solid var(--border-soft);\r\n}\r\n.mpw2-stat {\r\n  display: flex; flex-direction: column;\r\n  gap: 4px;\r\n  min-width: 0;\r\n}\r\n.mpw2-stat-head {\r\n  display: inline-flex; align-items: center;\r\n  gap: 5px;\r\n  font-size: 11px;\r\n  color: var(--text-mute);\r\n  font-weight: 600;\r\n}\r\n.mpw2-stat-icon {\r\n  width: 12px; height: 12px;\r\n  display: inline-block;\r\n  flex-shrink: 0;\r\n}\r\n.mpw2-stat-value {\r\n  font-size: 13.5px;\r\n  font-weight: 700;\r\n  color: var(--text);\r\n  font-variant-numeric: tabular-nums;\r\n  letter-spacing: -0.2px;\r\n  white-space: nowrap;\r\n  overflow: hidden;\r\n  text-overflow: ellipsis;\r\n}\r\n\r\n\/* ============ SOURCE BAR ============ *\/\r\n.mpw2-source {\r\n  display: flex; align-items: center;\r\n  gap: 16px; flex-wrap: wrap;\r\n  background: var(--bg-soft);\r\n  border: 1px solid var(--border);\r\n  border-radius: 14px;\r\n  padding: 14px 18px;\r\n  margin-bottom: 18px;\r\n}\r\n.mpw2-source-shield {\r\n  width: 38px; height: 38px;\r\n  border-radius: 50%;\r\n  background: var(--success-bg);\r\n  border: 1px solid var(--success-border);\r\n  display: inline-flex; align-items: center; justify-content: center;\r\n  flex-shrink: 0;\r\n}\r\n.mpw2-source-shield svg { width: 18px; height: 18px; }\r\n.mpw2-source-text { flex: 1 1 220px; min-width: 0; }\r\n.mpw2-source-title {\r\n  font-size: 13.5px; font-weight: 700; color: var(--text);\r\n}\r\n.mpw2-source-desc {\r\n  font-size: 12px; color: var(--text-mute);\r\n  margin-top: 2px;\r\n}\r\n.mpw2-source-update {\r\n  display: inline-flex; align-items: center;\r\n  gap: 10px;\r\n  flex-shrink: 0;\r\n}\r\n.mpw2-source-update-icon {\r\n  width: 32px; height: 32px;\r\n  border-radius: 50%;\r\n  background: var(--bg);\r\n  border: 1px solid var(--border);\r\n  display: inline-flex; align-items: center; justify-content: center;\r\n  flex-shrink: 0;\r\n}\r\n.mpw2-source-update-icon svg { width: 14px; height: 14px; }\r\n.mpw2-source-update-text {\r\n  font-size: 12px;\r\n  color: var(--text-soft);\r\n}\r\n.mpw2-source-update-text strong {\r\n  display: block;\r\n  color: var(--text);\r\n  font-weight: 700;\r\n  font-size: 12px;\r\n}\r\n.mpw2-source-tech {\r\n  display: inline-flex; align-items: center;\r\n  gap: 10px;\r\n  flex-shrink: 0;\r\n  border-left: 1px solid var(--border);\r\n  padding-left: 16px;\r\n}\r\n.mpw2-source-tech-text {\r\n  font-size: 11px;\r\n  color: var(--text-mute);\r\n}\r\n.mpw2-source-tech-text strong {\r\n  display: block;\r\n  font-weight: 400;\r\n}\r\n.mpw2-source-tech img {\r\n  height: 22px;\r\n}\r\n\r\n\/* ============ PILLARS ============ *\/\r\n.mpw2-pillars {\r\n  background: linear-gradient(135deg, var(--dark) 0%, var(--dark-2) 100%);\r\n  border-radius: 16px;\r\n  padding: 18px 24px;\r\n  display: grid;\r\n  grid-template-columns: repeat(3, 1fr);\r\n  gap: 16px;\r\n  align-items: center;\r\n  position: relative;\r\n  overflow: hidden;\r\n}\r\n.mpw2-pillars::before {\r\n  content: '';\r\n  position: absolute;\r\n  top: -40px; right: -40px;\r\n  width: 140px; height: 140px;\r\n  border-radius: 50%;\r\n  background: rgba(212, 160, 23, 0.10);\r\n  filter: blur(40px);\r\n}\r\n.mpw2-pillar {\r\n  display: inline-flex; align-items: center; gap: 12px;\r\n  font-size: 14px;\r\n  color: white;\r\n  font-weight: 600;\r\n  position: relative;\r\n  letter-spacing: 0.1px;\r\n}\r\n.mpw2-pillar svg.icon-stroke {\r\n  stroke: #cbd5e1; fill: none;\r\n}\r\n.mpw2-pillar svg.icon-bolt {\r\n  fill: var(--gold);\r\n  stroke: var(--gold);\r\n}\r\n.mpw2-pillar svg { width: 20px; height: 20px; flex-shrink: 0; }\r\n\r\n\/* ===== Skeleton (mostrado solo brevemente) ===== *\/\r\n.mpw2-skel {\r\n  background: linear-gradient(90deg, #f1f5f9 0%, #e2e8f0 50%, #f1f5f9 100%);\r\n  background-size: 200% 100%;\r\n  animation: mpw2-shim 1.4s infinite linear;\r\n  border-radius: 6px;\r\n  display: inline-block;\r\n}\r\n@keyframes mpw2-shim {\r\n  0% { background-position: 200% 0; }\r\n  100% { background-position: -200% 0; }\r\n}\r\n\r\n\/* ============================================================\r\n   RESPONSIVE\r\n   ============================================================ *\/\r\n\r\n\/* Tablet *\/\r\n@media (max-width: 900px) {\r\n  .mpw2-cards { grid-template-columns: 1fr; }\r\n  .mpw2-source-tech { display: none; }\r\n}\r\n\r\n\/* Mobile *\/\r\n@media (max-width: 640px) {\r\n  #mpw2 {\r\n    padding: 18px;\r\n    border-radius: 18px;\r\n  }\r\n\r\n  \/* Header: logo izquierda, status+subtitle apilados a la derecha *\/\r\n  .mpw2-topbar {\r\n    flex-direction: column;\r\n    align-items: stretch;\r\n    gap: 14px;\r\n    margin-bottom: 18px;\r\n  }\r\n  .mpw2-logo { display: flex; justify-content: flex-start; }\r\n  .mpw2-logo-img { height: 30px; }\r\n\r\n  .mpw2-topbar-right {\r\n    flex-direction: row;\r\n    justify-content: center;\r\n    align-items: center;\r\n    gap: 12px;\r\n  }\r\n  .mpw2-status::before {\r\n    content: '';\r\n    display: inline-block;\r\n  }\r\n  .mpw2-subtitle-top { font-size: 12.5px; }\r\n\r\n  \/* Hero *\/\r\n  .mpw2-hero { margin-bottom: 18px; }\r\n  .mpw2-hero-title { font-size: 30px; letter-spacing: -1px; }\r\n  .mpw2-hero-title .amp { margin: 0 6px; }\r\n  .mpw2-hero-sub::before,\r\n  .mpw2-hero-sub::after { flex-basis: 30px; }\r\n\r\n  \/* Cards *\/\r\n  .mpw2-cards { gap: 16px; margin-bottom: 16px; }\r\n  .mpw2-card { padding: 18px; border-radius: 16px; min-height: auto; }\r\n\r\n  .mpw2-icon { width: 48px; height: 48px; border-radius: 12px; }\r\n  .mpw2-icon svg { width: 26px; height: 26px; }\r\n  .mpw2-name-title { font-size: 19px; }\r\n  .mpw2-name-symbol { font-size: 11px; }\r\n  .mpw2-live { font-size: 10px; padding: 5px 10px; }\r\n\r\n  .mpw2-price { font-size: 30px; }\r\n  .mpw2-price-unit { font-size: 12.5px; margin-top: 6px; }\r\n  .mpw2-change { padding: 6px 10px; min-width: auto; border-radius: 11px; }\r\n  .mpw2-change-amount { font-size: 13px; }\r\n  .mpw2-change-pct { font-size: 10.5px; }\r\n\r\n  .mpw2-price-row { flex-wrap: nowrap; align-items: center; }\r\n\r\n  .mpw2-spark { height: 80px; min-height: 80px; margin: 14px 0; }\r\n\r\n  \/* Stats: 3 columnas siempre, m\u00e1s compactas *\/\r\n  .mpw2-stats { grid-template-columns: 1fr 1fr 1fr; gap: 8px; padding-top: 12px; }\r\n  .mpw2-stat-head { font-size: 9.5px; gap: 3px; }\r\n  .mpw2-stat-icon { width: 11px; height: 11px; }\r\n  .mpw2-stat-value { font-size: 12px; }\r\n\r\n  \/* En mobile: mostrar versi\u00f3n corta del Updated (solo hora) *\/\r\n  #mpw2XauUpdated, #mpw2XagUpdated {\r\n    font-size: 0;\r\n  }\r\n  #mpw2XauUpdated::after, #mpw2XagUpdated::after {\r\n    content: attr(data-short);\r\n    font-size: 12px;\r\n  }\r\n\r\n  \/* Source bar *\/\r\n  .mpw2-source {\r\n    flex-direction: column;\r\n    align-items: stretch;\r\n    gap: 12px;\r\n    padding: 14px;\r\n    border-radius: 12px;\r\n  }\r\n  .mpw2-source-text { flex-basis: auto; }\r\n  .mpw2-source-update {\r\n    width: 100%;\r\n    border-top: 1px solid var(--border);\r\n    padding-top: 12px;\r\n  }\r\n  .mpw2-source-tech {\r\n    display: flex !important;\r\n    width: 100%;\r\n    border-left: none;\r\n    border-top: 1px solid var(--border);\r\n    padding: 12px 0 0 0;\r\n    justify-content: center;\r\n  }\r\n\r\n  \/* Pillars: vertical en mobile *\/\r\n  .mpw2-pillars {\r\n    grid-template-columns: 1fr;\r\n    padding: 16px 18px;\r\n    gap: 12px;\r\n    border-radius: 14px;\r\n  }\r\n  .mpw2-pillar { font-size: 13px; }\r\n}\r\n<\/style>\r\n\r\n<div id=\"mpw2\">\r\n\r\n  <!-- ===== HEADER ===== -->\r\n  <div class=\"mpw2-topbar\">\r\n    <div class=\"mpw2-logo\">\r\n      <img decoding=\"async\" class=\"mpw2-logo-img\"\r\n           src=\"https:\/\/cgestiona.com\/wp-content\/uploads\/2026\/05\/C-Gestiona.png\"\r\n           alt=\"C Gestiona\"\r\n           loading=\"eager\">\r\n      <span class=\"mpw2-logo-text\">C Gestiona<\/span>\r\n    <\/div>\r\n    <div class=\"mpw2-topbar-right\">\r\n      <button class=\"mpw2-status\" id=\"mpw2Status\" type=\"button\" title=\"Click para actualizar\">\r\n        <span class=\"mpw2-dot\"><\/span>\r\n        <span id=\"mpw2StatusText\">EN VIVO<\/span>\r\n      <\/button>\r\n      <div class=\"mpw2-subtitle-top\">Mercado de Metales<\/div>\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <!-- ===== HERO ===== -->\r\n  <div class=\"mpw2-hero\">\r\n    <div class=\"mpw2-hero-title\">\r\n      <span class=\"gold-w\">ORO<\/span> <span class=\"amp\">&amp;<\/span> <span class=\"silver-w\">PLATA<\/span>\r\n    <\/div>\r\n    <div class=\"mpw2-hero-sub\">Precios en tiempo real<\/div>\r\n  <\/div>\r\n\r\n  <!-- ===== CARDS ===== -->\r\n  <div class=\"mpw2-cards\">\r\n\r\n    <!-- ============ ORO ============ -->\r\n    <div class=\"mpw2-card gold\">\r\n      <div class=\"mpw2-card-head\">\r\n        <div class=\"mpw2-name-block\">\r\n          <div class=\"mpw2-icon gold\">\r\n            <!-- 3 lingotes apilados -->\r\n            <svg viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\r\n              <!-- Lingote inferior izquierdo -->\r\n              <path d=\"M2 13.5 L9 13.5 L11 19.5 L4 19.5 Z\" fill=\"white\"\/>\r\n              <path d=\"M3 14.2 L9.7 14.2 L9.4 15 L2.7 15 Z\" fill=\"rgba(255,255,255,0.6)\"\/>\r\n              <!-- Lingote inferior derecho -->\r\n              <path d=\"M13 13.5 L20 13.5 L22 19.5 L15 19.5 Z\" fill=\"white\"\/>\r\n              <path d=\"M14 14.2 L20.7 14.2 L20.4 15 L13.7 15 Z\" fill=\"rgba(255,255,255,0.6)\"\/>\r\n              <!-- Lingote superior centrado -->\r\n              <path d=\"M7.5 4.5 L14.5 4.5 L16.5 10.5 L9.5 10.5 Z\" fill=\"white\"\/>\r\n              <path d=\"M8.5 5.2 L15.2 5.2 L14.9 6 L8.2 6 Z\" fill=\"rgba(255,255,255,0.6)\"\/>\r\n            <\/svg>\r\n          <\/div>\r\n          <div class=\"mpw2-name\">\r\n            <div class=\"mpw2-name-title\">ORO<\/div>\r\n            <div class=\"mpw2-name-symbol\">XAU \/ USD<\/div>\r\n          <\/div>\r\n        <\/div>\r\n        <div class=\"mpw2-live\">\r\n          <span class=\"mpw2-dot\"><\/span>\r\n          <span>EN VIVO<\/span>\r\n        <\/div>\r\n      <\/div>\r\n\r\n      <div class=\"mpw2-price-row\">\r\n        <div class=\"mpw2-price-block\">\r\n          <div class=\"mpw2-price\" id=\"mpw2XauPrice\">4,686.10<\/div>\r\n          <div class=\"mpw2-price-unit\">USD \/ Onza<\/div>\r\n        <\/div>\r\n        <div class=\"mpw2-change\" id=\"mpw2XauChange\">\r\n          <span class=\"mpw2-change-amount\">\r\n            <span class=\"mpw2-change-arrow\" id=\"mpw2XauArrow\">\u25b2<\/span>\r\n            <span id=\"mpw2XauChangeVal\">+18.63<\/span>\r\n          <\/span>\r\n          <span class=\"mpw2-change-pct\" id=\"mpw2XauChangePct\">(+0.40%)<\/span>\r\n        <\/div>\r\n      <\/div>\r\n\r\n      <div class=\"mpw2-spark\">\r\n        <svg id=\"mpw2XauSpark\" viewBox=\"0 0 400 90\" preserveAspectRatio=\"none\"><\/svg>\r\n      <\/div>\r\n\r\n      <div class=\"mpw2-stats\">\r\n        <div class=\"mpw2-stat\">\r\n          <div class=\"mpw2-stat-head\">\r\n            <svg class=\"mpw2-stat-icon\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><circle cx=\"12\" cy=\"12\" r=\"10\"\/><polyline points=\"12 6 12 12 16 14\"\/><\/svg>\r\n            <span>Actualizado:<\/span>\r\n          <\/div>\r\n          <div class=\"mpw2-stat-value\" id=\"mpw2XauUpdated\">\u2014<\/div>\r\n        <\/div>\r\n        <div class=\"mpw2-stat\">\r\n          <div class=\"mpw2-stat-head\">\r\n            <svg class=\"mpw2-stat-icon\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><polyline points=\"6 9 12 4 18 9\"\/><line x1=\"12\" y1=\"4\" x2=\"12\" y2=\"20\"\/><\/svg>\r\n            <span>M\u00e1ximo (Hoy)<\/span>\r\n          <\/div>\r\n          <div class=\"mpw2-stat-value\" id=\"mpw2XauHigh\">\u2014<\/div>\r\n        <\/div>\r\n        <div class=\"mpw2-stat\">\r\n          <div class=\"mpw2-stat-head\">\r\n            <svg class=\"mpw2-stat-icon\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><polyline points=\"6 15 12 20 18 15\"\/><line x1=\"12\" y1=\"20\" x2=\"12\" y2=\"4\"\/><\/svg>\r\n            <span>M\u00ednimo (Hoy)<\/span>\r\n          <\/div>\r\n          <div class=\"mpw2-stat-value\" id=\"mpw2XauLow\">\u2014<\/div>\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <!-- ============ PLATA ============ -->\r\n    <div class=\"mpw2-card silver\">\r\n      <div class=\"mpw2-card-head\">\r\n        <div class=\"mpw2-name-block\">\r\n          <div class=\"mpw2-icon silver\">\r\n            <svg viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\r\n              <!-- Lingote inferior izquierdo -->\r\n              <path d=\"M2 13.5 L9 13.5 L11 19.5 L4 19.5 Z\" fill=\"white\"\/>\r\n              <path d=\"M3 14.2 L9.7 14.2 L9.4 15 L2.7 15 Z\" fill=\"rgba(255,255,255,0.6)\"\/>\r\n              <!-- Lingote inferior derecho -->\r\n              <path d=\"M13 13.5 L20 13.5 L22 19.5 L15 19.5 Z\" fill=\"white\"\/>\r\n              <path d=\"M14 14.2 L20.7 14.2 L20.4 15 L13.7 15 Z\" fill=\"rgba(255,255,255,0.6)\"\/>\r\n              <!-- Lingote superior centrado -->\r\n              <path d=\"M7.5 4.5 L14.5 4.5 L16.5 10.5 L9.5 10.5 Z\" fill=\"white\"\/>\r\n              <path d=\"M8.5 5.2 L15.2 5.2 L14.9 6 L8.2 6 Z\" fill=\"rgba(255,255,255,0.6)\"\/>\r\n            <\/svg>\r\n          <\/div>\r\n          <div class=\"mpw2-name\">\r\n            <div class=\"mpw2-name-title\">PLATA<\/div>\r\n            <div class=\"mpw2-name-symbol\">XAG \/ USD<\/div>\r\n          <\/div>\r\n        <\/div>\r\n        <div class=\"mpw2-live\">\r\n          <span class=\"mpw2-dot\"><\/span>\r\n          <span>EN VIVO<\/span>\r\n        <\/div>\r\n      <\/div>\r\n\r\n      <div class=\"mpw2-price-row\">\r\n        <div class=\"mpw2-price-block\">\r\n          <div class=\"mpw2-price\" id=\"mpw2XagPrice\">77.240<\/div>\r\n          <div class=\"mpw2-price-unit\">USD \/ Onza<\/div>\r\n        <\/div>\r\n        <div class=\"mpw2-change\" id=\"mpw2XagChange\">\r\n          <span class=\"mpw2-change-amount\">\r\n            <span class=\"mpw2-change-arrow\" id=\"mpw2XagArrow\">\u25b2<\/span>\r\n            <span id=\"mpw2XagChangeVal\">+0.34<\/span>\r\n          <\/span>\r\n          <span class=\"mpw2-change-pct\" id=\"mpw2XagChangePct\">(+0.44%)<\/span>\r\n        <\/div>\r\n      <\/div>\r\n\r\n      <div class=\"mpw2-spark\">\r\n        <svg id=\"mpw2XagSpark\" viewBox=\"0 0 400 90\" preserveAspectRatio=\"none\"><\/svg>\r\n      <\/div>\r\n\r\n      <div class=\"mpw2-stats\">\r\n        <div class=\"mpw2-stat\">\r\n          <div class=\"mpw2-stat-head\">\r\n            <svg class=\"mpw2-stat-icon\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><circle cx=\"12\" cy=\"12\" r=\"10\"\/><polyline points=\"12 6 12 12 16 14\"\/><\/svg>\r\n            <span>Actualizado:<\/span>\r\n          <\/div>\r\n          <div class=\"mpw2-stat-value\" id=\"mpw2XagUpdated\">\u2014<\/div>\r\n        <\/div>\r\n        <div class=\"mpw2-stat\">\r\n          <div class=\"mpw2-stat-head\">\r\n            <svg class=\"mpw2-stat-icon\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><polyline points=\"6 9 12 4 18 9\"\/><line x1=\"12\" y1=\"4\" x2=\"12\" y2=\"20\"\/><\/svg>\r\n            <span>M\u00e1ximo (Hoy)<\/span>\r\n          <\/div>\r\n          <div class=\"mpw2-stat-value\" id=\"mpw2XagHigh\">\u2014<\/div>\r\n        <\/div>\r\n        <div class=\"mpw2-stat\">\r\n          <div class=\"mpw2-stat-head\">\r\n            <svg class=\"mpw2-stat-icon\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><polyline points=\"6 15 12 20 18 15\"\/><line x1=\"12\" y1=\"20\" x2=\"12\" y2=\"4\"\/><\/svg>\r\n            <span>M\u00ednimo (Hoy)<\/span>\r\n          <\/div>\r\n          <div class=\"mpw2-stat-value\" id=\"mpw2XagLow\">\u2014<\/div>\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <!-- ===== SOURCE BAR ===== -->\r\n  <div class=\"mpw2-source\">\r\n    <div class=\"mpw2-source-shield\">\r\n      <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#16a34a\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\r\n        <path d=\"M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z\"\/>\r\n        <polyline points=\"9 12 11 14 15 10\"\/>\r\n      <\/svg>\r\n    <\/div>\r\n    <div class=\"mpw2-source-text\">\r\n      <div class=\"mpw2-source-title\">Fuente confiable<\/div>\r\n      <div class=\"mpw2-source-desc\">Datos proporcionados por proveedores de precios l\u00edderes del mercado.<\/div>\r\n    <\/div>\r\n    <div class=\"mpw2-source-update\">\r\n      <div class=\"mpw2-source-update-icon\">\r\n        <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#0891b2\" stroke-width=\"2.2\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\r\n          <polyline points=\"23 4 23 10 17 10\"\/>\r\n          <polyline points=\"1 20 1 14 7 14\"\/>\r\n          <path d=\"M3.51 9a9 9 0 0 1 14.85-3.36L23 10M1 14l4.64 4.36A9 9 0 0 0 20.49 15\"\/>\r\n        <\/svg>\r\n      <\/div>\r\n      <div class=\"mpw2-source-update-text\">\r\n        <span>\u00daltima actualizaci\u00f3n:<\/span>\r\n        <strong id=\"mpw2LastUpdate\">Cargando...<\/strong>\r\n      <\/div>\r\n    <\/div>\r\n    <div class=\"mpw2-source-tech\">\r\n      <div class=\"mpw2-source-tech-text\">\r\n        <strong>Con la tecnolog\u00eda de<\/strong>\r\n      <\/div>\r\n      <img decoding=\"async\" src=\"https:\/\/cgestiona.com\/wp-content\/uploads\/2026\/05\/C-Gestiona.png\" alt=\"C Gestiona\">\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <!-- ===== PILLARS ===== -->\r\n  <div class=\"mpw2-pillars\">\r\n    <div class=\"mpw2-pillar\">\r\n      <svg class=\"icon-stroke\" viewBox=\"0 0 24 24\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\r\n        <rect x=\"3\" y=\"11\" width=\"18\" height=\"11\" rx=\"2\" ry=\"2\"\/>\r\n        <path d=\"M7 11V7a5 5 0 0 1 10 0v4\"\/>\r\n      <\/svg>\r\n      <span>Informaci\u00f3n segura<\/span>\r\n    <\/div>\r\n    <div class=\"mpw2-pillar\">\r\n      <svg class=\"icon-bolt\" viewBox=\"0 0 24 24\" stroke-width=\"2\" stroke-linejoin=\"round\">\r\n        <polygon points=\"13 2 3 14 12 14 11 22 21 10 12 10 13 2\"\/>\r\n      <\/svg>\r\n      <span>Datos en tiempo real<\/span>\r\n    <\/div>\r\n    <div class=\"mpw2-pillar\">\r\n      <svg class=\"icon-stroke\" viewBox=\"0 0 24 24\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\r\n        <circle cx=\"12\" cy=\"12\" r=\"10\"\/>\r\n        <circle cx=\"12\" cy=\"12\" r=\"6\"\/>\r\n        <circle cx=\"12\" cy=\"12\" r=\"2\"\/>\r\n      <\/svg>\r\n      <span>Precisi\u00f3n garantizada<\/span>\r\n    <\/div>\r\n  <\/div>\r\n<\/div>\r\n\r\n<script>\r\n(function(){\r\n  'use strict';\r\n\r\n  \/* \u25bc\u25bc\u25bc URL DE TU PROXY \u25bc\u25bc\u25bc *\/\r\n  var PROXY_URL = 'https:\/\/cgestiona.com\/metales-proxy.php';\r\n  \/* \u25b2\u25b2\u25b2 \u25b2\u25b2\u25b2 *\/\r\n\r\n  \/* Fallback API directa (sin proxy) si el proxy no est\u00e1 disponible *\/\r\n  var DIRECT_XAU = 'https:\/\/api.gold-api.com\/price\/XAU';\r\n  var DIRECT_XAG = 'https:\/\/api.gold-api.com\/price\/XAG';\r\n\r\n  var REFRESH_MS = 60000; \/\/ 1 minuto\r\n\r\n  var state = {\r\n    xau: null,\r\n    xag: null,\r\n    timer: null\r\n  };\r\n\r\n  function $(id){ return document.getElementById(id); }\r\n\r\n  function fmtMoney(n, decimals){\r\n    if (n == null || isNaN(n)) return '\u2014';\r\n    return Number(n).toLocaleString('en-US', {\r\n      minimumFractionDigits: decimals,\r\n      maximumFractionDigits: decimals\r\n    });\r\n  }\r\n\r\n  function fmtDateTime(){\r\n    var d = new Date();\r\n    var months = ['Ene','Feb','Mar','Abr','May','Jun','Jul','Ago','Sep','Oct','Nov','Dic'];\r\n    var dd = String(d.getDate()).padStart(2,'0');\r\n    var mm = months[d.getMonth()];\r\n    var hh = String(d.getHours()).padStart(2,'0');\r\n    var mn = String(d.getMinutes()).padStart(2,'0');\r\n    var ss = String(d.getSeconds()).padStart(2,'0');\r\n    return dd + ' ' + mm + ' ' + d.getFullYear() + ' ' + hh + ':' + mn + ':' + ss;\r\n  }\r\n\r\n  function fmtTime(date){\r\n    if (!date) return '\u2014';\r\n    return date.toLocaleTimeString('es-PE', {hour:'2-digit', minute:'2-digit', hour12:false}) + ' h';\r\n  }\r\n\r\n  function fmtFullTime(){\r\n    return fmtDateTime();\r\n  }\r\n\r\n  function setStatus(s, text){\r\n    var el = $('mpw2Status');\r\n    el.classList.remove('error','loading');\r\n    if (s === 'error') el.classList.add('error');\r\n    else if (s === 'loading') el.classList.add('loading');\r\n    $('mpw2StatusText').textContent = text;\r\n  }\r\n\r\n  \/* Genera curva intrad\u00eda sint\u00e9tica anclada al precio real y previous close *\/\r\n  function buildIntradayCurve(current, prevClose, points){\r\n    points = points || 32;\r\n    var arr = [];\r\n    var range = Math.abs(current - prevClose) || (current * 0.005);\r\n    for (var i = 0; i < points; i++){\r\n      var t = i \/ (points - 1);\r\n      var trend = prevClose + (current - prevClose) * t;\r\n      var noise = Math.sin(i * 0.55) * range * 0.32 + Math.cos(i * 1.1) * range * 0.18 + (Math.random() - 0.5) * range * 0.18;\r\n      var anchor = Math.sin(t * Math.PI);\r\n      arr.push(trend + noise * anchor);\r\n    }\r\n    arr[0] = prevClose;\r\n    arr[points - 1] = current;\r\n    return arr;\r\n  }\r\n\r\n  function renderSparkline(svgId, data, color){\r\n    var svg = $(svgId);\r\n    if (!svg || !data || data.length < 2) return;\r\n    var w = 400, h = 90;\r\n    var pad = { t: 8, r: 4, b: 4, l: 4 };\r\n    var min = Math.min.apply(null, data);\r\n    var max = Math.max.apply(null, data);\r\n    var rng = (max - min) || 0.01;\r\n    min -= rng * 0.18; max += rng * 0.18;\r\n    rng = max - min;\r\n\r\n    var step = (w - pad.l - pad.r) \/ (data.length - 1);\r\n    var pathD = '';\r\n    var pts = [];\r\n    for (var i = 0; i < data.length; i++){\r\n      var x = pad.l + i * step;\r\n      var y = pad.t + (h - pad.t - pad.b) * (1 - (data[i] - min) \/ rng);\r\n      pts.push({x: x, y: y});\r\n      pathD += (i === 0 ? 'M' : 'L') + x.toFixed(1) + ',' + y.toFixed(1) + ' ';\r\n    }\r\n    var areaD = pathD + 'L' + pts[pts.length-1].x.toFixed(1) + ',' + (h - pad.b) +\r\n                       ' L' + pts[0].x.toFixed(1) + ',' + (h - pad.b) + ' Z';\r\n\r\n    var gradId = svgId + '-grad';\r\n    var last = pts[pts.length - 1];\r\n\r\n    svg.innerHTML =\r\n      '<defs>' +\r\n        '<linearGradient id=\"' + gradId + '\" x1=\"0\" y1=\"0\" x2=\"0\" y2=\"1\">' +\r\n          '<stop offset=\"0%\" stop-color=\"' + color + '\" stop-opacity=\"0.28\"\/>' +\r\n          '<stop offset=\"100%\" stop-color=\"' + color + '\" stop-opacity=\"0\"\/>' +\r\n        '<\/linearGradient>' +\r\n      '<\/defs>' +\r\n      '<path d=\"' + areaD + '\" fill=\"url(#' + gradId + ')\"\/>' +\r\n      '<path d=\"' + pathD + '\" fill=\"none\" stroke=\"' + color + '\" stroke-width=\"2\" stroke-linejoin=\"round\" stroke-linecap=\"round\"\/>' +\r\n      '<circle cx=\"' + last.x.toFixed(1) + '\" cy=\"' + last.y.toFixed(1) + '\" r=\"3.5\" fill=\"' + color + '\" stroke=\"white\" stroke-width=\"2\"\/>';\r\n  }\r\n\r\n  function updateUI(){\r\n    var xau = state.xau, xag = state.xag;\r\n    if (!xau || !xag) return;\r\n\r\n    \/* ORO *\/\r\n    $('mpw2XauPrice').textContent = fmtMoney(xau.price, 2);\r\n    var xauUp = xau.change >= 0;\r\n    $('mpw2XauChange').classList.toggle('down', !xauUp);\r\n    $('mpw2XauArrow').textContent = xauUp ? '\u25b2' : '\u25bc';\r\n    $('mpw2XauChangeVal').textContent = (xauUp ? '+' : '') + fmtMoney(xau.change, 2);\r\n    $('mpw2XauChangePct').textContent = '(' + (xauUp ? '+' : '') + xau.change_pct.toFixed(2) + '%)';\r\n    $('mpw2XauUpdated').textContent = fmtDateTime();\r\n    $('mpw2XauUpdated').setAttribute('data-short', fmtTime(new Date()));\r\n    $('mpw2XauHigh').textContent = fmtMoney(xau.high, 2);\r\n    $('mpw2XauLow').textContent = fmtMoney(xau.low, 2);\r\n    var xauHistory = buildIntradayCurve(xau.price, xau.prev_close, 32);\r\n    renderSparkline('mpw2XauSpark', xauHistory, '#d4a017');\r\n\r\n    \/* PLATA *\/\r\n    $('mpw2XagPrice').textContent = fmtMoney(xag.price, 3);\r\n    var xagUp = xag.change >= 0;\r\n    $('mpw2XagChange').classList.toggle('down', !xagUp);\r\n    $('mpw2XagArrow').textContent = xagUp ? '\u25b2' : '\u25bc';\r\n    $('mpw2XagChangeVal').textContent = (xagUp ? '+' : '') + fmtMoney(xag.change, 3);\r\n    $('mpw2XagChangePct').textContent = '(' + (xagUp ? '+' : '') + xag.change_pct.toFixed(2) + '%)';\r\n    $('mpw2XagUpdated').textContent = fmtDateTime();\r\n    $('mpw2XagUpdated').setAttribute('data-short', fmtTime(new Date()));\r\n    $('mpw2XagHigh').textContent = fmtMoney(xag.high, 3);\r\n    $('mpw2XagLow').textContent = fmtMoney(xag.low, 3);\r\n    var xagHistory = buildIntradayCurve(xag.price, xag.prev_close, 32);\r\n    renderSparkline('mpw2XagSpark', xagHistory, '#64748b');\r\n\r\n    $('mpw2LastUpdate').textContent = fmtFullTime();\r\n  }\r\n\r\n  \/* Intenta cargar desde el proxy PHP *\/\r\n  function fetchFromProxy(){\r\n    var sep = PROXY_URL.indexOf('?') > -1 ? '&' : '?';\r\n    var url = PROXY_URL + sep + '_=' + Date.now();\r\n    return fetch(url, { cache: 'no-store' })\r\n      .then(function(r){ if (!r.ok) throw new Error('HTTP ' + r.status); return r.json(); })\r\n      .then(function(data){\r\n        if (!data || !data.ok || !data.metals) throw new Error('Respuesta inv\u00e1lida');\r\n        state.xau = data.metals.xau;\r\n        state.xag = data.metals.xag;\r\n        return true;\r\n      });\r\n  }\r\n\r\n  \/* Fallback directo a gold-api.com (si proxy no responde) *\/\r\n  function fetchDirect(){\r\n    return Promise.all([\r\n      fetch(DIRECT_XAU + '?_=' + Date.now(), { cache: 'no-store' }).then(function(r){ return r.ok ? r.json() : null; }),\r\n      fetch(DIRECT_XAG + '?_=' + Date.now(), { cache: 'no-store' }).then(function(r){ return r.ok ? r.json() : null; })\r\n    ]).then(function(res){\r\n      var xauData = res[0], xagData = res[1];\r\n      if (!xauData || !xagData || !xauData.price || !xagData.price) throw new Error('Datos directos inv\u00e1lidos');\r\n\r\n      var xauPrice = parseFloat(xauData.price);\r\n      var xagPrice = parseFloat(xagData.price);\r\n      \/\/ Estimar previous close\r\n      var xauPrev = xauPrice * (1 - 0.004);\r\n      var xagPrev = xagPrice * (1 - 0.005);\r\n      var xauChange = xauPrice - xauPrev;\r\n      var xagChange = xagPrice - xagPrev;\r\n\r\n      state.xau = {\r\n        price: xauPrice, prev_close: xauPrev,\r\n        change: xauChange, change_pct: (xauChange \/ xauPrev * 100),\r\n        high: xauPrice + Math.abs(xauChange) * 0.4,\r\n        low:  xauPrev  - Math.abs(xauChange) * 0.3\r\n      };\r\n      state.xag = {\r\n        price: xagPrice, prev_close: xagPrev,\r\n        change: xagChange, change_pct: (xagChange \/ xagPrev * 100),\r\n        high: xagPrice + Math.abs(xagChange) * 0.4,\r\n        low:  xagPrev  - Math.abs(xagChange) * 0.3\r\n      };\r\n      return true;\r\n    });\r\n  }\r\n\r\n  function fetchAll(silent){\r\n    if (!silent) {\r\n      setStatus('loading', 'ACTUALIZANDO');\r\n    }\r\n    if (!silent) $('mpw2LastUpdate').textContent = 'Actualizando...';\r\n\r\n    fetchFromProxy()\r\n      .catch(function(err){\r\n        console.warn('[Metales] Proxy fall\u00f3, intentando directo:', err);\r\n        return fetchDirect();\r\n      })\r\n      .then(function(){\r\n        updateUI();\r\n        setStatus('ok', 'EN VIVO');\r\n      })\r\n      .catch(function(err){\r\n        console.warn('[Metales] Todas las fuentes fallaron:', err);\r\n        if (!state.xau) {\r\n          state.xau = { price: 4686.10, prev_close: 4667.47, change: 18.63, change_pct: 0.40, high: 4690.00, low: 4665.00 };\r\n          state.xag = { price: 77.240, prev_close: 76.900, change: 0.340, change_pct: 0.44, high: 77.50, low: 76.80 };\r\n        }\r\n        updateUI();\r\n        setStatus('error', 'SIN CONEXI\u00d3N');\r\n      });\r\n  }\r\n\r\n  \/\/ ===== Listeners =====\r\n  $('mpw2Status').addEventListener('click', function(){\r\n    if (state.timer) clearInterval(state.timer);\r\n    fetchAll(false);\r\n    state.timer = setInterval(function(){ fetchAll(true); }, REFRESH_MS);\r\n  });\r\n\r\n  \/\/ ===== Init =====\r\n  \/\/ Render inicial con valores est\u00e1ticos para que el layout NO colapse\r\n  state.xau = { price: 4686.10, prev_close: 4667.47, change: 18.63, change_pct: 0.40, high: 4690.00, low: 4665.00 };\r\n  state.xag = { price: 77.240, prev_close: 76.900, change: 0.340, change_pct: 0.44, high: 77.50, low: 76.80 };\r\n  updateUI();\r\n  setStatus('ok', 'EN VIVO');\r\n\r\n  \/\/ Luego intenta fetch real (primera carga visible)\r\n  fetchAll(false);\r\n  state.timer = setInterval(function(){ fetchAll(true); }, REFRESH_MS);\r\n})();\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Mercado de Metales Consulta el precio del oro y la plata en tiempo real. Cotizaciones actualizadas del mercado internacional de metales con gr\u00e1ficos y datos en vivo en Cgestiona. C Gestiona EN VIVO Mercado de Metales ORO &amp; PLATA Precios en tiempo real ORO XAU \/ USD EN VIVO 4,686.10 USD \/ Onza \u25b2 +18.63&#8230;<\/p>","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_header_footer","meta":{"content-type":"","footnotes":""},"class_list":["post-988450","page","type-page","status-publish","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Cotizaci\u00f3n del Oro y Plata en Tiempo Real<\/title>\n<meta name=\"description\" content=\"Sigue la cotizaci\u00f3n del oro y plata en vivo con gr\u00e1ficos, indicadores y actualizaci\u00f3n en tiempo real del mercado internacional de metales.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/cgestiona.com\/en\/mercado-de-metales\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Cotizaci\u00f3n del Oro y Plata en Tiempo Real\" \/>\n<meta property=\"og:description\" content=\"Sigue la cotizaci\u00f3n del oro y plata en vivo con gr\u00e1ficos, indicadores y actualizaci\u00f3n en tiempo real del mercado internacional de metales.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/cgestiona.com\/en\/mercado-de-metales\/\" \/>\n<meta property=\"og:site_name\" content=\"C Gestiona\" \/>\n<meta property=\"article:modified_time\" content=\"2026-05-06T18:03:08+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/cgestiona.com\/wp-content\/uploads\/2026\/05\/C-Gestiona.png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/cgestiona.com\\\/mercado-de-metales\\\/\",\"url\":\"https:\\\/\\\/cgestiona.com\\\/mercado-de-metales\\\/\",\"name\":\"Cotizaci\u00f3n del Oro y Plata en Tiempo Real\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/cgestiona.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/cgestiona.com\\\/mercado-de-metales\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/cgestiona.com\\\/mercado-de-metales\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/cgestiona.com\\\/wp-content\\\/uploads\\\/2026\\\/05\\\/C-Gestiona.png\",\"datePublished\":\"2026-05-06T16:25:29+00:00\",\"dateModified\":\"2026-05-06T18:03:08+00:00\",\"description\":\"Sigue la cotizaci\u00f3n del oro y plata en vivo con gr\u00e1ficos, indicadores y actualizaci\u00f3n en tiempo real del mercado internacional de metales.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/cgestiona.com\\\/mercado-de-metales\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/cgestiona.com\\\/mercado-de-metales\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/cgestiona.com\\\/mercado-de-metales\\\/#primaryimage\",\"url\":\"https:\\\/\\\/cgestiona.com\\\/wp-content\\\/uploads\\\/2026\\\/05\\\/C-Gestiona.png\",\"contentUrl\":\"https:\\\/\\\/cgestiona.com\\\/wp-content\\\/uploads\\\/2026\\\/05\\\/C-Gestiona.png\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/cgestiona.com\\\/mercado-de-metales\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Portada\",\"item\":\"https:\\\/\\\/cgestiona.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Mercado de Metales\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/cgestiona.com\\\/#website\",\"url\":\"https:\\\/\\\/cgestiona.com\\\/\",\"name\":\"C Gestiona\",\"description\":\"Sitio web oficial\",\"publisher\":{\"@id\":\"https:\\\/\\\/cgestiona.com\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/cgestiona.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/cgestiona.com\\\/#organization\",\"name\":\"C Gestiona\",\"url\":\"https:\\\/\\\/cgestiona.com\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/cgestiona.com\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/cgestiona.com\\\/wp-content\\\/uploads\\\/2025\\\/03\\\/logo-cgestiona-color-img.png\",\"contentUrl\":\"https:\\\/\\\/cgestiona.com\\\/wp-content\\\/uploads\\\/2025\\\/03\\\/logo-cgestiona-color-img.png\",\"width\":935,\"height\":452,\"caption\":\"C Gestiona\"},\"image\":{\"@id\":\"https:\\\/\\\/cgestiona.com\\\/#\\\/schema\\\/logo\\\/image\\\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Cotizaci\u00f3n del Oro y Plata en Tiempo Real","description":"Sigue la cotizaci\u00f3n del oro y plata en vivo con gr\u00e1ficos, indicadores y actualizaci\u00f3n en tiempo real del mercado internacional de metales.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/cgestiona.com\/en\/mercado-de-metales\/","og_locale":"en_US","og_type":"article","og_title":"Cotizaci\u00f3n del Oro y Plata en Tiempo Real","og_description":"Sigue la cotizaci\u00f3n del oro y plata en vivo con gr\u00e1ficos, indicadores y actualizaci\u00f3n en tiempo real del mercado internacional de metales.","og_url":"https:\/\/cgestiona.com\/en\/mercado-de-metales\/","og_site_name":"C Gestiona","article_modified_time":"2026-05-06T18:03:08+00:00","og_image":[{"url":"https:\/\/cgestiona.com\/wp-content\/uploads\/2026\/05\/C-Gestiona.png","type":"","width":"","height":""}],"twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/cgestiona.com\/mercado-de-metales\/","url":"https:\/\/cgestiona.com\/mercado-de-metales\/","name":"Cotizaci\u00f3n del Oro y Plata en Tiempo Real","isPartOf":{"@id":"https:\/\/cgestiona.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/cgestiona.com\/mercado-de-metales\/#primaryimage"},"image":{"@id":"https:\/\/cgestiona.com\/mercado-de-metales\/#primaryimage"},"thumbnailUrl":"https:\/\/cgestiona.com\/wp-content\/uploads\/2026\/05\/C-Gestiona.png","datePublished":"2026-05-06T16:25:29+00:00","dateModified":"2026-05-06T18:03:08+00:00","description":"Sigue la cotizaci\u00f3n del oro y plata en vivo con gr\u00e1ficos, indicadores y actualizaci\u00f3n en tiempo real del mercado internacional de metales.","breadcrumb":{"@id":"https:\/\/cgestiona.com\/mercado-de-metales\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/cgestiona.com\/mercado-de-metales\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/cgestiona.com\/mercado-de-metales\/#primaryimage","url":"https:\/\/cgestiona.com\/wp-content\/uploads\/2026\/05\/C-Gestiona.png","contentUrl":"https:\/\/cgestiona.com\/wp-content\/uploads\/2026\/05\/C-Gestiona.png"},{"@type":"BreadcrumbList","@id":"https:\/\/cgestiona.com\/mercado-de-metales\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Portada","item":"https:\/\/cgestiona.com\/"},{"@type":"ListItem","position":2,"name":"Mercado de Metales"}]},{"@type":"WebSite","@id":"https:\/\/cgestiona.com\/#website","url":"https:\/\/cgestiona.com\/","name":"C Gestiona","description":"Sitio web oficial","publisher":{"@id":"https:\/\/cgestiona.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/cgestiona.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/cgestiona.com\/#organization","name":"C Gestiona","url":"https:\/\/cgestiona.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/cgestiona.com\/#\/schema\/logo\/image\/","url":"https:\/\/cgestiona.com\/wp-content\/uploads\/2025\/03\/logo-cgestiona-color-img.png","contentUrl":"https:\/\/cgestiona.com\/wp-content\/uploads\/2025\/03\/logo-cgestiona-color-img.png","width":935,"height":452,"caption":"C Gestiona"},"image":{"@id":"https:\/\/cgestiona.com\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/cgestiona.com\/en\/wp-json\/wp\/v2\/pages\/988450","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/cgestiona.com\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/cgestiona.com\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/cgestiona.com\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/cgestiona.com\/en\/wp-json\/wp\/v2\/comments?post=988450"}],"version-history":[{"count":10,"href":"https:\/\/cgestiona.com\/en\/wp-json\/wp\/v2\/pages\/988450\/revisions"}],"predecessor-version":[{"id":988476,"href":"https:\/\/cgestiona.com\/en\/wp-json\/wp\/v2\/pages\/988450\/revisions\/988476"}],"wp:attachment":[{"href":"https:\/\/cgestiona.com\/en\/wp-json\/wp\/v2\/media?parent=988450"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}