/* btc-cycle.css — «Цикл биткоина» (раздел «Статистика», 17.10.2026). База — stats-sub.css («тепловизор»), здесь только своё. */

/* шапка: мини-шкала фазы */
.cy-hz b { font-size: 24px !important; }
.cy-mini { position: relative; display: flex; width: 170px; height: 8px; margin-top: 7px; border-radius: 4px; overflow: visible; }
.cy-mini i { height: 100%; opacity: .85; } .cy-mini i:first-child { border-radius: 4px 0 0 4px; } .cy-mini i:last-of-type { border-radius: 0 4px 4px 0; }
.cy-mini em { position: absolute; top: -4px; width: 3px; height: 16px; margin-left: -1.5px; border-radius: 2px; background: var(--text-color); box-shadow: 0 0 0 2px var(--bg-color, #0b0b0f); }

/* 01 шкала NUPL */
.cy-scale { position: relative; display: flex; height: 54px; margin: 46px 0 40px; border-radius: 12px; }
.cy-scale > div { position: relative; display: grid; place-items: center; background: color-mix(in srgb, var(--zc) 22%, transparent); border-top: 3px solid var(--zc); transition: background .3s; }
.cy-scale > div:first-child { border-radius: 12px 0 0 12px; } .cy-scale > div:nth-child(5) { border-radius: 0 12px 12px 0; }
.cy-scale > div b { font: 700 14px var(--sx-f); color: var(--text-color); opacity: .75; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 96%; }
.cy-scale > div.on { background: color-mix(in srgb, var(--zc) 42%, transparent); }
.cy-scale > div.on b { opacity: 1; }
.cy-now { position: absolute; top: -10px; bottom: -10px; width: 4px; margin-left: -2px; border-radius: 2px; background: var(--text-color); box-shadow: 0 0 0 3px var(--bg-color, #0b0b0f); z-index: 2; }
.cy-now em { position: absolute; left: 50%; bottom: calc(100% + 6px); transform: translateX(-50%); white-space: nowrap; padding: 3px 9px; border-radius: 7px; background: var(--text-color); color: var(--bg-color, #0b0b0f); font: 800 13px var(--sx-f); font-style: normal; }
.cy-mk { position: absolute; transform: translateX(-50%); font: 700 11px var(--sx-f); letter-spacing: .04em; color: var(--text-secondary); white-space: nowrap; }
.cy-mk::before { content: ''; position: absolute; left: 50%; width: 1px; height: 8px; background: currentColor; }
.cy-mk.top { top: -26px; color: #f87171; } .cy-mk.top::before { top: 14px; }
.cy-mk.low { bottom: -26px; color: #4ade80; } .cy-mk.low::before { bottom: 14px; }
.cy-mk.top.r2 { top: -40px; } .cy-mk.top.r2::before { height: 22px; }
.cy-mk.low.r2 { bottom: -40px; } .cy-mk.low.r2::before { height: 22px; }
.cy-scale-l { display: flex; justify-content: space-between; font: 500 11.5px var(--sx-f); letter-spacing: .08em; text-transform: uppercase; color: var(--text-secondary); }
.cy-verdict { display: flex; align-items: baseline; gap: 14px; flex-wrap: wrap; margin-top: 18px; }
.cy-verdict > b { font: 800 30px var(--sx-f); }
.cy-verdict span { font-size: 16px; line-height: 1.5; color: var(--text-color); }
.cy-lvls { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin: 16px 0 12px; }
.cy-lvls > div { padding: 12px 14px; border-radius: 12px; border: 1px solid var(--mx-line); background: var(--mx-surface); }
.cy-lvls small { display: block; font: 600 12px var(--sx-f); letter-spacing: .1em; text-transform: uppercase; color: var(--text-secondary); }
.cy-lvls b { display: block; margin: 4px 0 2px; font: 700 24px var(--sx-f); }
.cy-lvls span { font-size: 13px; color: var(--text-secondary); }

/* 02 сигналы */
.cy-sig { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 2px 12px; padding: 11px 0; border-bottom: 1px solid var(--mx-line); }
.cy-sig b { font: 700 15px var(--sx-f); } .cy-sig small { display: block; font-size: 12.5px; color: var(--text-secondary); line-height: 1.35; }
.cy-sig-v { display: flex; align-items: center; gap: 8px; } .cy-sig-v b { font-size: 20px; }
.cy-sig-v em { font: 800 11px var(--sx-f); font-style: normal; letter-spacing: .06em; text-transform: uppercase; padding: 3px 8px; border-radius: 99px; background: rgba(150, 150, 150, .16); color: var(--text-secondary); }
.cy-sig-v em.up { background: rgba(74, 222, 128, .15); color: #4ade80; } .cy-sig-v em.hot { background: rgba(251, 146, 60, .16); color: #fb923c; } .cy-sig-v em.down { background: rgba(248, 113, 113, .16); color: #f87171; }
.cy-sig-h { grid-column: 1 / -1; font-family: var(--sx-f) !important; letter-spacing: .02em; }
.cy-sum { margin-top: 12px; font-size: 14.5px; line-height: 1.5; }
.cy-sum b.up { color: #4ade80; } .cy-sum b.down { color: #f87171; }

/* 03 подписи графика */
.cy-key { display: flex; flex-wrap: wrap; gap: 6px 18px; margin-top: 8px; font-size: 13px; color: var(--text-secondary); }
.cy-key i { display: inline-block; width: 12px; height: 3px; margin-right: 6px; vertical-align: middle; border-radius: 2px; }
.cy-key i.d { height: 0; border-top: 2px dashed; background: none !important; }

/* 05 дни после халвинга */
.cy-days { margin: 26px 0 14px; }
.cy-dbar { position: relative; height: 12px; border-radius: 6px; background: var(--mx-surface); border: 1px solid var(--mx-line); }
.cy-win { position: absolute; top: 0; bottom: 0; background: repeating-linear-gradient(-45deg, rgba(248, 113, 113, .35) 0 5px, transparent 5px 10px); border-radius: 4px; }
.cy-dm { position: absolute; top: -20px; transform: translateX(-50%); font: 700 11px var(--sx-f); color: #f87171; }
.cy-dnow { position: absolute; top: -5px; bottom: -5px; width: 4px; margin-left: -2px; border-radius: 2px; background: var(--text-color); }
.cy-dnow b { position: absolute; top: calc(100% + 4px); left: 50%; transform: translateX(-50%); white-space: nowrap; font: 700 12px var(--sx-f); }
.cy-days .cy-scale-l { margin-top: 24px; }
.cy-tbl > div { display: grid; grid-template-columns: 54px 1fr 1fr; gap: 10px; align-items: start; padding: 10px 0; border-bottom: 1px solid var(--mx-line); font-size: 13px; color: var(--text-secondary); }
.cy-tbl > div > b { font: 800 16px var(--sx-f); color: var(--text-color); }
.cy-tbl span b { display: block; font: 700 16px var(--sx-f); color: var(--text-color); }
.cy-tbl small { display: block; font-size: 12px; }
.cy-tbl > div.cur { background: linear-gradient(90deg, var(--sx-a-wash, rgba(251, 191, 36, .08)), transparent); border-radius: 8px; padding-left: 8px; }

/* 08 биржи */
.cy-two { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 8px; }
.cy-ex { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.cy-ex > div { padding: 12px 14px; border-radius: 12px; border: 1px solid var(--mx-line); background: var(--mx-surface); }
.cy-ex small { display: block; font: 600 12px var(--sx-f); letter-spacing: .1em; text-transform: uppercase; color: var(--text-secondary); }
.cy-ex b { display: block; margin: 4px 0; font: 700 24px var(--sx-f); }
.cy-ex span { font-size: 13px; color: var(--text-secondary); }

@media (max-width: 900px) {
    .cy-lvls, .cy-two, .cy-ex { grid-template-columns: 1fr; }
    .cy-scale > div b { font-size: 11px; }
    .cy-mini { width: 130px; }
}

/* выделение внутри подписи к главной цифре — обычный жирный, не размер главной цифры */
.cy-hl { font-style: normal; font-weight: 700; color: var(--text-color); }
.cy-hl.up { color: #4ade80; } .cy-hl.down { color: #f87171; }
.cy-dm.r2 { top: -34px; }
.cy-days { margin-top: 40px; }
