/* Monstro — палитра и компоненты поверх Tabler. Тема-безопасно: цвета через var(--tblr-*). */
:root {
  --tblr-primary: #0c8599;
  --tblr-primary-rgb: 12, 133, 153;
  --mn-teal: #0c8599;
  --mn-teal-dark: #0b6b7c;
}

a { color: var(--mn-teal); }
.mn-navlink { color: var(--tblr-secondary); }
.mn-navlink:hover { color: var(--mn-teal); }
.btn-primary { --tblr-btn-bg: var(--mn-teal); --tblr-btn-border-color: var(--mn-teal); --tblr-btn-hover-bg: var(--mn-teal-dark); --tblr-btn-hover-border-color: var(--mn-teal-dark); }
.btn-teal { background: var(--mn-teal); color:#fff; border:0; }
.btn-teal:hover { background: var(--mn-teal-dark); color:#fff; }

.page-title-xl { font-size: 1.9rem; font-weight: 700; letter-spacing:-.02em; }

/* Верхняя панель — поверхность Tabler (адаптируется к теме) */
.mn-topbar { background: var(--tblr-bg-surface); border-bottom: 1px solid var(--tblr-border-color); }
.mn-brand { font-weight:800; letter-spacing:-.03em; color:var(--mn-teal); font-size:1.25rem; }

/* Табы проекта */
.mn-tabs { border-bottom:2px solid var(--tblr-border-color); }
.mn-tabs .nav-link { color:var(--tblr-secondary); font-weight:600; border:0; padding:.65rem 0; margin-right:1.6rem; position:relative; }
.mn-tabs .nav-link.active { color:var(--mn-teal); }
.mn-tabs .nav-link.active::after { content:""; position:absolute; left:0; right:0; bottom:-2px; height:3px; background:var(--mn-teal); border-radius:3px 3px 0 0; }

/* Тоггл статуса */
.mn-status-on  { color:#fff; background:var(--mn-teal); border-color:var(--mn-teal); }
.mn-badge-on   { background: rgba(var(--tblr-green-rgb), .15); color: var(--tblr-green); font-weight:700; }
.mn-badge-off  { background: rgba(var(--tblr-secondary-rgb,134,142,150), .15); color: var(--tblr-secondary); font-weight:700; }

/* Таблицы */
.table thead th { color:var(--tblr-secondary); font-weight:700; white-space:nowrap; }
.table-rows td { vertical-align:middle; }
.mn-row-total td { background: var(--tblr-bg-surface-secondary); font-weight:700; }
.mn-warn { color: var(--tblr-red); }
.mn-domain { color:#e8590c; }
.kw-clicks-input { width:62px; }

/* Heatmap — семантические тинты на основе rgb-переменных (читаемы в обеих темах) */
.mn-heat td, .mn-heat th { box-shadow:none !important; --tblr-table-bg:transparent; --tblr-table-accent-bg:transparent; }
.mn-heat td { text-align:center; padding:.45rem .3rem; font-weight:600; border:1px solid var(--tblr-border-color); min-width:60px; }
.mn-heat .kw { text-align:left; font-weight:500; }
.heat-t13  { background: rgba(var(--tblr-cyan-rgb), .85);   color:#06303a; }
.heat-t46  { background: rgba(var(--tblr-green-rgb), .85);  color:#fff; }
.heat-t710 { background: rgba(var(--tblr-green-rgb), .35);  color: var(--tblr-body-color); }
.heat-tbad { background: rgba(var(--tblr-red-rgb), .25);    color: var(--tblr-red); }
.heat-empty{ background: var(--tblr-bg-surface); }
.clk-done  { background: rgba(var(--tblr-green-rgb), .85);  color:#fff; }
.clk-part  { background: rgba(var(--tblr-green-rgb), .35);  color: var(--tblr-body-color); }
.clk-zero  { background: rgba(var(--tblr-red-rgb), .25);    color: var(--tblr-red); }
.clk-cost  { font-size:.7rem; opacity:.8; font-weight:500; }

/* Легенда графика */
.mn-legend span { display:inline-flex; align-items:center; gap:.35rem; margin-right:1rem; font-size:.8rem; color:var(--tblr-secondary); }
.mn-legend i { width:12px; height:12px; border-radius:3px; display:inline-block; }

/* Bulk bar */
.mn-bulkbar { position:sticky; bottom:0; background:var(--tblr-bg-surface); border-top:1px solid var(--tblr-border-color); padding:.6rem 0; }
.mn-icon-btn { color:var(--mn-teal); cursor:pointer; }
.mn-icon-btn:hover { color:var(--mn-teal-dark); }

/* Числа — табличные цифры */
.table td, .table th, .mn-heat td { font-variant-numeric: tabular-nums; }
