:root {
	--oro-oro: #a87a12;
	--oro-claro: #fbf3df;
	--oro-texto: #1f2328;
	--oro-suave: #5f6670;
	--oro-borde: #e3e5e8;
	--oro-fondo: #ffffff;
	--oro-fondo-2: #f7f7f8;
	--oro-sube: #1a7f37;
	--oro-baja: #c62828;
}

.oro-inline { color: var(--oro-oro); white-space: nowrap; }
.oro-aviso { padding: 12px 16px; background: var(--oro-fondo-2); border-radius: 8px; color: var(--oro-suave); }
.oro-actualizado { display: inline-block; font-size: .9em; color: var(--oro-suave); }

/* Tarjetas */
.oro-tarjetas { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 12px; margin: 1.2em 0; }
.oro-tarjeta { display: flex; flex-direction: column; gap: 4px; padding: 16px; border: 1px solid var(--oro-borde); border-radius: 12px; background: var(--oro-fondo); color: var(--oro-texto) !important; text-decoration: none !important; transition: border-color .15s, box-shadow .15s; }
.oro-tarjeta:hover { border-color: var(--oro-oro); box-shadow: 0 2px 10px rgba(168, 122, 18, .14); }
.oro-tarjeta-nombre { font-size: .9em; color: var(--oro-suave); }
.oro-tarjeta-precio { font-size: 1.8em; font-weight: 700; line-height: 1.1; color: var(--oro-oro); font-variant-numeric: tabular-nums; }
.oro-tarjeta-precio small { font-size: .5em; font-weight: 500; color: var(--oro-suave); margin-left: 2px; }
.oro-tarjeta-rango { font-size: .85em; color: var(--oro-suave); }

.oro-var { font-size: .85em; font-weight: 600; white-space: nowrap; font-variant-numeric: tabular-nums; }
.oro-sube { color: var(--oro-sube); }
.oro-baja { color: var(--oro-baja); }
.oro-igual { color: var(--oro-suave); }

/* Tablas */
.oro-tabla-wrap { overflow-x: auto; margin: 1em 0 .4em; }
.oro-tabla { width: 100%; border-collapse: collapse; font-size: .95em; margin: 0 !important; }
.oro-tabla th, .oro-tabla td { padding: 10px 12px; border: 0; border-bottom: 1px solid var(--oro-borde); text-align: left; vertical-align: top; }
.oro-tabla thead th { background: var(--oro-fondo-2); font-size: .85em; text-transform: uppercase; letter-spacing: .03em; color: var(--oro-suave); }
.oro-tabla .oro-num { text-align: right; white-space: nowrap; font-variant-numeric: tabular-nums; }
.oro-tabla tbody tr:hover { background: var(--oro-claro); }
.oro-nota { display: block; font-size: .82em; color: var(--oro-suave); margin-top: 2px; }
.oro-pie { font-size: .85em; color: var(--oro-suave); margin: .4em 0 1.2em; }

/* Gráfico */
.oro-grafico { margin: 1.2em 0; padding: 14px; border: 1px solid var(--oro-borde); border-radius: 12px; background: var(--oro-fondo); }
.oro-grafico-titulo { margin: 0 0 8px !important; font-size: 1.05em; }
.oro-rangos { display: flex; gap: 6px; margin-bottom: 8px; }
.oro-rangos button { padding: 4px 10px; border: 1px solid var(--oro-borde); border-radius: 999px; background: transparent; color: var(--oro-texto); font-size: .82em; cursor: pointer; line-height: 1.4; }
.oro-rangos button.activo { background: var(--oro-oro); border-color: var(--oro-oro); color: #fff; }
.oro-lienzo { position: relative; width: 100%; }
.oro-lienzo svg { display: block; width: 100%; height: auto; touch-action: pan-y; }
.oro-linea { fill: none; stroke: var(--oro-oro); stroke-width: 2; stroke-linejoin: round; }
.oro-area { fill: var(--oro-oro); opacity: .08; }
.oro-rejilla { stroke: var(--oro-borde); stroke-width: 1; }
.oro-eje { font-size: 11px; fill: var(--oro-suave); }
.oro-guia { stroke: var(--oro-suave); stroke-dasharray: 3 3; }
.oro-punto { fill: var(--oro-oro); stroke: #fff; stroke-width: 2; }
.oro-tip { display: none; position: absolute; top: 4px; transform: translateX(-50%); padding: 6px 10px; border-radius: 6px; background: var(--oro-texto); color: #fff; font-size: 12px; line-height: 1.35; pointer-events: none; text-align: center; white-space: nowrap; }
.oro-grafico figcaption { font-size: .82em; color: var(--oro-suave); margin-top: 6px; }

/* Calculadora */
.oro-calc { margin: 1.2em 0; padding: 18px; border-radius: 12px; background: var(--oro-claro); }
.oro-calc-campos { display: grid; grid-template-columns: 2fr 1fr; gap: 12px; }
.oro-calc label { display: flex; flex-direction: column; gap: 4px; font-size: .85em; font-weight: 600; color: var(--oro-texto); }
.oro-calc select, .oro-calc input { width: 100%; padding: 10px; border: 1px solid var(--oro-borde); border-radius: 8px; font-size: 1rem; background: #fff; color: var(--oro-texto); }
.oro-calc-resultado { display: block; margin-top: 14px; font-size: 1.1em; line-height: 1.5; }
.oro-calc-resultado strong { color: var(--oro-oro); }

/* Amazon */
.oro-amazon { margin: 1.5em 0; padding: 14px 18px; border: 1px dashed var(--oro-borde); border-radius: 10px; }
.oro-amazon ul { margin: .5em 0; }
.oro-amazon small { color: var(--oro-suave); }

/* Preguntas frecuentes */
.entry-content details, .oro-faq details { border-bottom: 1px solid var(--oro-borde); padding: 12px 0; }
.entry-content details summary { cursor: pointer; font-weight: 600; }
.entry-content details > *:not(summary) { margin-top: 8px; }

/* Pie de la web */
.oro-footer { padding: 24px 16px; border-top: 1px solid var(--oro-borde); text-align: center; font-size: .85em; color: var(--oro-suave); background: var(--oro-fondo-2); }
.oro-footer a { color: inherit; margin: 0 6px; }
.oro-footer p { margin: 4px 0; }

@media (max-width: 600px) {
	.oro-oculto-movil { display: none; }
	.oro-calc-campos { grid-template-columns: 1fr; }
	.oro-tabla th, .oro-tabla td { padding: 9px 8px; }
	.oro-tarjetas { grid-template-columns: 1fr 1fr; }
	.oro-tarjeta-precio { font-size: 1.4em; }
}

.oro-calc-resultado span { display: block; }
.oro-calc-valor { font-size: 2em; font-weight: 700; color: var(--oro-oro); line-height: 1.2; font-variant-numeric: tabular-nums; }
.oro-tabla-alta { max-height: 520px; overflow-y: auto; }
.oro-tabla-alta thead th { position: sticky; top: 0; }
