/* Páginas «Análisis técnico de <activo> para operar hoy» (/analisis-tecnico-<sim>). Todo bajo .at, con los tokens de sistema.css. */
.at .cabeza { padding: var(--e-8) 0 var(--e-24); }
.at .eyebrow { font: 500 var(--fs-micro)/1 var(--mono); letter-spacing: .14em; text-transform: uppercase; color: var(--acento); margin: 0 0 var(--e-12); }
.at .cabeza h1 { font: 400 clamp(34px, 4vw, 40px)/1.1 var(--serif); letter-spacing: -.01em; margin: 0 0 var(--e-12); }
.at .firma { font-size: var(--fs-small); color: var(--texto-2); margin: 0; }
.at .firma b { color: var(--tinta); font-weight: 500; }
.at .actualiza { display: inline-flex; align-items: center; gap: var(--e-8); margin: var(--e-16) 0 0; padding: 6px 12px; border: var(--borde-w) solid var(--borde); border-radius: 999px; font: 400 var(--fs-micro)/1.4 var(--mono); color: var(--texto-2); }
.at .actualiza i { width: 7px; height: 7px; border-radius: 50%; background: var(--acento); display: inline-block; }
.at .estado { margin: var(--e-12) 0 0; font-size: var(--fs-small); line-height: 1.5; color: var(--texto-2); }
.at .estado b { color: var(--tinta); font-weight: 500; }
.at .estado.provisional { padding: 8px 12px; border-left: 3px solid var(--acento); background: var(--superficie-2); border-radius: 0 var(--r6) var(--r6) 0; }
.at .estado.provisional b { color: var(--acento); }
.at table.manana td { font-variant-numeric: tabular-nums; }
.at table.manana td.h { font: 500 var(--fs-small)/1.4 var(--mono); white-space: nowrap; }
.at table.manana tr.oficial td { background: var(--superficie-2); font-weight: 500; }
.at table.manana .chip { margin-left: 6px; }

.at .precios { display: grid; grid-template-columns: 1fr 1fr; gap: var(--e-16); margin: var(--e-24) 0 0; }
.at .precio { border-radius: var(--r6); overflow: hidden; border: var(--borde-w) solid var(--borde); background: var(--superficie-1); box-shadow: var(--sombra); }
.at .precio .banda { display: flex; align-items: center; justify-content: space-between; gap: var(--e-12); padding: 10px var(--e-24); font: 500 var(--fs-micro)/1 var(--mono); letter-spacing: .12em; text-transform: uppercase; }
.at .precio.vivo .banda { background: var(--acento); color: #fff; }
.at .precio.ayer .banda { background: var(--superficie-2); color: var(--tinta); }
.at .precio .banda .punto { width: 8px; height: 8px; border-radius: 50%; background: #7FD69A; display: inline-block; animation: latido 2s infinite; margin-right: 6px; vertical-align: 1px; }
.at .precio .banda .hora { opacity: .85; letter-spacing: .06em; }
.at .precio .cuerpo { padding: var(--e-24) var(--e-24) var(--e-16); display: flex; align-items: flex-end; justify-content: space-between; gap: var(--e-16); }
.at .precio .grande { font: 500 46px/1 var(--mono); font-variant-numeric: tabular-nums; letter-spacing: -.01em; margin: 0; }
.at .precio .grande small { font-size: 18px; color: var(--texto-2); font-weight: 400; margin-left: 6px; }
.at .precio .var { display: inline-flex; flex-direction: column; align-items: flex-end; gap: 4px; margin: 0; }
.at .precio .var b { font: 500 20px/1 var(--mono); padding: 6px 10px; border-radius: var(--r4); }
.at .precio .var b.sube { background: #E6F3EC; color: var(--dato-sube); }
.at .precio .var b.baja { background: #F8E7E5; color: var(--dato-baja); }
.at .precio .var span { font: 400 var(--fs-micro)/1.3 var(--sans); color: var(--texto-2); text-align: right; }
.at .precio dl { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--e-8); margin: 0; padding: var(--e-12) var(--e-24) var(--e-16); border-top: var(--borde-w) solid var(--borde); background: var(--fondo); }
.at .precio dt { font: 500 var(--fs-micro)/1 var(--mono); letter-spacing: .1em; text-transform: uppercase; color: var(--texto-2); margin: 0 0 4px; }
.at .precio dd { margin: 0; font: 500 15px/1.2 var(--mono); font-variant-numeric: tabular-nums; }
.at .realizado { font: 400 15px/1.5 var(--sans); color: var(--texto-2); margin: var(--e-16) 0 0; }
.at .realizado a { font-weight: 500; }

.at .intro { font: 400 18px/1.6 var(--serif); color: var(--tinta); max-width: 66ch; margin: var(--e-32) 0 0; }
.at .intro + .intro { margin-top: var(--e-12); }

.at section { margin-top: var(--e-48); }
.at h2 { font: 400 clamp(26px, 3vw, 30px)/1.15 var(--serif); letter-spacing: -.01em; margin: 0 0 var(--e-8); }
.at .sub { font-size: 15px; color: var(--texto-2); margin: 0 0 var(--e-24); max-width: 72ch; line-height: 1.55; }
.at .sub b { color: var(--tinta); font-weight: 500; }

.at .tiles { display: grid; grid-template-columns: repeat(4, 1fr); gap: var(--e-12); margin: 0 0 var(--e-16); }
.at .tile { background: var(--superficie-2); border-radius: var(--r6); padding: var(--e-16); border-top: 3px solid var(--borde); }
.at .tile.acc { border-top-color: var(--acento); }
.at .tile .micro { margin: 0 0 var(--e-8); }
.at .tile .v { font: 500 22px/1 var(--mono); font-variant-numeric: tabular-nums; margin: 0; }
.at .tile .v small { font: 400 var(--fs-small)/1 var(--sans); color: var(--texto-2); margin-left: 6px; }

.at .escalera { border: var(--borde-w) solid var(--borde); border-radius: var(--r6); background: var(--superficie-1); padding: var(--e-8) var(--e-24); box-shadow: var(--sombra); }
.at .fila { display: grid; grid-template-columns: 172px 1fr 86px 96px; align-items: center; gap: var(--e-16); padding: 11px 0; border-bottom: var(--borde-w) solid var(--borde); }
.at .fila:last-child { border-bottom: 0; }
.at .fila .nom { font: 500 var(--fs-small)/1.3 var(--sans); }
.at .fila .nom small { display: block; font: 400 var(--fs-micro)/1.3 var(--mono); color: var(--texto-2); }
.at .fila .pista { position: relative; height: 10px; background: var(--superficie-2); border-radius: 999px; overflow: hidden; }
.at .fila .pista i { position: absolute; left: 0; top: 0; bottom: 0; background: var(--acento); border-radius: 999px; }
.at .fila .pista i.abajo { background: #6B8CB0; }
.at .fila .p { font: 500 var(--fs-small)/1 var(--mono); text-align: right; font-variant-numeric: tabular-nums; }
.at .fila .p small { display: block; font-weight: 400; color: var(--texto-2); font-size: var(--fs-micro); margin-top: 3px; }
.at .fila .precio-n { font: 500 15px/1 var(--mono); text-align: right; font-variant-numeric: tabular-nums; }
.at .fila .precio-n .chip { display: inline-block; margin-top: 6px; font: 500 var(--fs-micro)/1 var(--mono); color: var(--dato-sube); background: #E6F3EC; padding: 3px 7px; border-radius: 999px; }
.at .fila .precio-n .chip.no { color: var(--texto-2); background: var(--superficie-2); font-weight: 400; }
.at .fila.bp { background: var(--superficie-2); margin: 0 calc(-1 * var(--e-24)); padding-left: var(--e-24); padding-right: var(--e-24); border-bottom: 0; }
.at .fila.bp .nom { font-weight: 600; }
.at .fila.ahora { grid-template-columns: 1fr; padding: 4px 0; border-bottom: 0; }
.at .fila.ahora span { display: flex; align-items: center; gap: var(--e-12); font: 500 var(--fs-micro)/1 var(--mono); color: var(--acento); letter-spacing: .06em; text-transform: uppercase; }
.at .fila.ahora span::before, .at .fila.ahora span::after { content: ""; flex: 1; border-top: 1.5px dashed var(--acento); }
.at .leyenda { font: 400 var(--fs-micro)/1.5 var(--mono); color: var(--texto-2); margin: var(--e-8) 0 0; letter-spacing: .02em; }

.at .caminos { display: grid; grid-template-columns: 1fr 1fr; gap: var(--e-16); margin: 0 0 var(--e-16); }
.at .camino { border: var(--borde-w) solid var(--borde); border-radius: var(--r6); background: var(--superficie-1); padding: 0 0 var(--e-16); box-shadow: var(--sombra); overflow: hidden; }
.at .camino .cab-c { display: flex; align-items: center; justify-content: space-between; gap: var(--e-12); padding: var(--e-12) var(--e-24); background: var(--superficie-2); border-bottom: var(--borde-w) solid var(--borde); }
.at .camino.principal .cab-c { background: var(--acento); color: #fff; }
.at .camino .cab-c .etq { font: 500 var(--fs-micro)/1.3 var(--mono); letter-spacing: .12em; text-transform: uppercase; }
.at .camino .cab-c .p { font: 500 26px/1 var(--mono); font-variant-numeric: tabular-nums; white-space: nowrap; }
.at ol.pasos { list-style: none; margin: var(--e-16) 0 0; padding: 0 var(--e-24); position: relative; }
.at ol.pasos::before { content: ""; position: absolute; left: calc(var(--e-24) + 13px); top: 14px; bottom: 14px; border-left: 2px solid var(--borde); }
.at ol.pasos li { display: grid; grid-template-columns: 28px 1fr; gap: var(--e-12); align-items: start; padding: 0 0 var(--e-16); position: relative; }
.at ol.pasos li:last-child { padding-bottom: 0; }
.at ol.pasos .n { width: 28px; height: 28px; border-radius: 50%; background: var(--acento); color: #fff; display: inline-flex; align-items: center; justify-content: center; font: 500 13px/1 var(--mono); position: relative; z-index: 1; }
.at ol.pasos li.suave .n { background: var(--superficie-1); color: var(--texto-2); border: 2px solid var(--borde); }
.at ol.pasos b { font: 500 15px/1.4 var(--sans); }
.at ol.pasos .px { font: 500 15px/1.4 var(--mono); color: var(--acento); margin-left: 6px; }
.at ol.pasos small { display: block; font: 400 var(--fs-small)/1.45 var(--sans); color: var(--texto-2); margin-top: 2px; }
.at .camino .alt, .at .bloque .alt { margin: var(--e-16) var(--e-24) 0; padding-top: var(--e-12); border-top: var(--borde-w) dashed var(--borde); font: 400 var(--fs-small)/1.5 var(--sans); color: var(--texto-2); }
.at .bloque .alt { margin-bottom: var(--e-16); }
.at .notas { display: grid; grid-template-columns: 1fr 1fr; gap: var(--e-16); }
.at .nota-l { padding: var(--e-12) var(--e-16); border-left: 3px solid var(--acento); background: var(--superficie-2); border-radius: 0 var(--r4) var(--r4) 0; font-size: var(--fs-small); line-height: 1.5; color: var(--texto-2); }
.at .nota-l b { color: var(--tinta); font-weight: 500; }

.at .dia { list-style: none; margin: 0 0 var(--e-16); padding: 0; }
.at .dia li { display: grid; grid-template-columns: 64px 1fr; gap: var(--e-16); padding: 10px 0; border-bottom: var(--borde-w) solid var(--borde); font-size: 15px; line-height: 1.5; }
.at .dia li:last-child { border-bottom: 0; }
.at .dia .h { font: 500 var(--fs-small)/1.6 var(--mono); color: var(--acento); }

.at details { border: var(--borde-w) solid var(--borde); border-radius: var(--r6); background: var(--superficie-1); margin: 0 0 var(--e-12); box-shadow: var(--sombra); overflow: hidden; }
.at summary { cursor: pointer; list-style: none; display: grid; grid-template-columns: 6px 1fr auto 36px; align-items: center; gap: var(--e-16); padding: 0 var(--e-24) 0 0; }
.at summary::-webkit-details-marker { display: none; }
.at summary .raya { align-self: stretch; background: var(--acento); }
.at summary .tit { padding: var(--e-16) 0; }
.at summary .tit b { display: block; font: 400 var(--fs-h3)/1.25 var(--serif); }
.at summary .tit small { display: block; font: 400 var(--fs-small)/1.4 var(--sans); color: var(--texto-2); margin-top: 2px; }
.at summary .pills { display: flex; gap: var(--e-8); flex-wrap: wrap; justify-content: flex-end; }
.at .pill { display: inline-block; border: var(--borde-w) solid var(--borde); border-radius: 999px; padding: 5px 10px; font: 500 var(--fs-micro)/1 var(--mono); color: var(--texto-2); white-space: nowrap; background: var(--superficie-1); }
.at .pill.ok { color: var(--dato-sube); border-color: #BFE3CD; background: #E6F3EC; }
.at .pill.ko { color: var(--dato-baja); border-color: #EFC2BD; background: #F8E7E5; }
.at summary .mas { width: 32px; height: 32px; border-radius: 50%; background: var(--superficie-2); display: inline-flex; align-items: center; justify-content: center; font: 400 20px/1 var(--mono); color: var(--tinta); }
.at details[open] summary .mas::before { content: "–"; }
.at details:not([open]) summary .mas::before { content: "+"; }
.at .dentro { padding: 0 var(--e-24) var(--e-24); border-top: var(--borde-w) solid var(--borde); }
.at .dentro h3 { font: 500 var(--fs-h3)/1.25 var(--serif); margin: var(--e-24) 0 var(--e-12); }
.at .prev { display: grid; grid-template-columns: 1fr 1fr; gap: var(--e-16); }
.at .bloque { border: var(--borde-w) solid var(--borde); border-radius: var(--r6); overflow: hidden; background: var(--superficie-1); }
.at .bloque .cab-b { padding: 10px var(--e-24); font: 500 var(--fs-micro)/1.3 var(--mono); letter-spacing: .12em; text-transform: uppercase; background: var(--superficie-2); border-bottom: var(--borde-w) solid var(--borde); }
.at .bloque.esperado .cab-b { background: var(--acento); color: #fff; }
.at .bloque .datos { display: grid; grid-template-columns: repeat(4, 1fr); gap: var(--e-8); padding: var(--e-12) var(--e-24); border-bottom: var(--borde-w) solid var(--borde); }
.at .bloque .datos div { font: 500 14px/1.2 var(--mono); white-space: nowrap; }
.at .bloque .datos div small { display: block; font: 500 10px/1 var(--mono); letter-spacing: .1em; text-transform: uppercase; color: var(--texto-2); margin: 0 0 4px; }
.at .bloque ol.pasos { margin: var(--e-16) 0 var(--e-16); }
.at ul.linea { list-style: none; margin: 0; padding: var(--e-8) var(--e-24) var(--e-16); }
.at ul.linea li { display: grid; grid-template-columns: 56px 1fr; gap: var(--e-12); padding: 8px 0; border-bottom: var(--borde-w) solid var(--borde); font-size: var(--fs-small); line-height: 1.5; }
.at ul.linea li:last-child { border-bottom: 0; }
.at ul.linea .h { font: 500 var(--fs-micro)/1.9 var(--mono); color: var(--acento); background: var(--superficie-2); border-radius: var(--r4); text-align: center; height: 22px; }
.at table.contraste { width: 100%; border-collapse: separate; border-spacing: 0; margin: var(--e-16) 0 0; border: var(--borde-w) solid var(--borde); border-radius: var(--r6); overflow: hidden; }
.at table.contraste th { text-align: left; font: 500 var(--fs-micro)/1 var(--mono); letter-spacing: .12em; text-transform: uppercase; color: var(--texto-2); padding: 10px 14px; background: var(--superficie-2); border-bottom: var(--borde-w) solid var(--borde); }
.at table.contraste td { padding: 12px 14px; border-bottom: var(--borde-w) solid var(--borde); font-size: var(--fs-small); line-height: 1.5; vertical-align: top; }
.at table.contraste tr:last-child td { border-bottom: 0; }
.at table.contraste td.res { white-space: nowrap; }
.at .ok-b, .at .ko-b { display: inline-flex; align-items: center; gap: 6px; padding: 5px 10px; border-radius: 999px; font: 500 var(--fs-micro)/1 var(--mono); }
.at .ok-b { background: #E6F3EC; color: var(--dato-sube); }
.at .ko-b { background: #F8E7E5; color: var(--dato-baja); }
.at .grafico { margin: var(--e-16) 0 0; border: var(--borde-w) solid var(--borde); border-radius: var(--r6); padding: var(--e-12) var(--e-8) var(--e-4); background: var(--superficie-1); }
.at .aviso { font-size: var(--fs-small); color: var(--texto-2); border-top: var(--borde-w) solid var(--borde); padding-top: var(--e-16); margin-top: var(--e-48); max-width: 72ch; line-height: 1.55; }
@media (max-width: 680px) {
  .at .precios, .at .caminos, .at .notas, .at .prev { grid-template-columns: 1fr; }
  .at .tiles, .at .bloque .datos { grid-template-columns: 1fr 1fr; }
  .at .fila { grid-template-columns: 1fr 70px 96px; }
  .at .fila .pista { display: none; }
  .at summary { grid-template-columns: 6px 1fr 36px; }
  .at summary .pills { display: none; }
}
