/* Ивентология: мини-ивенты (каталог), отчётность. Подключается после общих стилей панели. */

/* ───────── Сводка и действия ───────── */
.mev-top {
    display: flex;
    align-items: stretch;
    gap: 14px;
    flex-wrap: wrap;
    margin-bottom: 14px;
}
.mev-tiles {
    flex: 1 1 560px;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}
.mev-tile {
    --tone: var(--accent);
    position: relative;
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 14px 16px 18px;
    border: 1px solid var(--line-2);
    border-radius: 14px;
    background:
        radial-gradient(120% 140% at 0% 0%, color-mix(in srgb, var(--tone) 10%, transparent), transparent 60%),
        rgba(255, 255, 255, 0.015);
    overflow: hidden;
}
.mev-tile.good { --tone: var(--success); }
.mev-tile.warn { --tone: var(--warn); }
.mev-tile-ico {
    flex: none;
    width: 40px;
    height: 40px;
    display: grid;
    place-items: center;
    border-radius: 11px;
    color: var(--tone);
    background: color-mix(in srgb, var(--tone) 14%, transparent);
    border: 1px solid color-mix(in srgb, var(--tone) 28%, transparent);
}
.mev-tile-ico svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; }
.mev-tile-main { min-width: 0; display: flex; flex-direction: column; gap: 3px; }
.mev-tile-main b { font: 700 26px/1 var(--font-mono); color: var(--text-hi); }
.mev-tile-main span { font-size: 13px; line-height: 1.3; color: var(--text-dim); }
.mev-tile-bar {
    position: absolute;
    left: 16px;
    right: 16px;
    bottom: 8px;
    height: 3px;
    border-radius: 99px;
    background: rgba(255, 255, 255, 0.05);
}
.mev-tile-bar i { display: block; height: 100%; border-radius: inherit; background: var(--tone); }
.mev-actions {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 8px;
    flex: 0 0 auto;
    min-width: 200px;
}
.mev-actions > button { width: 100%; }

/* ───────── Фильтры ───────── */
.mev-filters {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    margin: 0 0 22px;
    padding: 10px;
    border: 1px solid var(--line-2);
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.015);
}
.mev-search { position: relative; flex: 1 1 260px; }
.mev-search svg {
    position: absolute;
    left: 13px;
    top: 50%;
    width: 17px;
    height: 17px;
    transform: translateY(-50%);
    fill: none;
    stroke: var(--text-mute);
    stroke-width: 2;
    pointer-events: none;
}
.mev-search input { width: 100%; margin: 0; padding-left: 40px; border-radius: 10px; }
.mev-chips { display: flex; gap: 6px; flex-wrap: wrap; }
.mev-chip {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    height: 38px;
    padding: 0 13px;
    border: 1px solid var(--line-2);
    border-radius: 10px;
    background: transparent;
    color: var(--text-dim);
    font: 600 13.5px var(--font-body);
    cursor: pointer;
    transition: color var(--transition-fast), border-color var(--transition-fast), background var(--transition-fast);
}
.mev-chip svg { width: 15px; height: 15px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linejoin: round; }
.mev-chip i {
    min-width: 20px;
    padding: 0 6px;
    border-radius: 6px;
    font: 600 11.5px/19px var(--font-mono);
    font-style: normal;
    text-align: center;
    color: var(--text-dim);
    background: rgba(255, 255, 255, 0.06);
}
.mev-chip:hover { color: var(--text-hi); border-color: var(--line-3); }
.mev-chip.active { color: var(--text-hi); border-color: var(--accent); background: color-mix(in srgb, var(--accent) 12%, transparent); }
.mev-chip.active i { color: var(--accent-ink); background: var(--accent); }
.mev-chip.warn.active { border-color: var(--warn); background: color-mix(in srgb, var(--warn) 12%, transparent); }
.mev-chip.warn.active i { color: #1c1405; background: var(--warn); }
.mev-chip.warn svg { stroke: var(--warn); }
.mev-filters select { width: auto; min-width: 170px; margin: 0; border-radius: 10px; }

/* ───────── Класс объектов ───────── */
.mev-class { margin-bottom: 26px; }
.mev-class-head {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 0 0 10px;
    padding: 0 4px;
}
.mev-class-head h3 { margin: 0; font-size: 16px; font-weight: 800; letter-spacing: 0; text-transform: none; color: var(--text-hi); }
.mev-class-idle {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 12.5px;
    font-weight: 700;
    color: var(--warn);
}
.mev-class-idle svg { width: 14px; height: 14px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linejoin: round; }
.mev-class-count {
    margin-left: auto;
    padding: 1px 10px;
    border-radius: 999px;
    font: 600 12px/22px var(--font-mono);
    color: var(--cls, var(--text-dim));
    background: color-mix(in srgb, var(--cls, #fff) 10%, transparent);
}
.mev-items {
    position: relative;
    border: 1px solid var(--line-2);
    border-radius: 14px;
    overflow: hidden;
    background:
        linear-gradient(90deg, color-mix(in srgb, var(--cls, var(--accent)) 7%, transparent), transparent 220px),
        rgba(255, 255, 255, 0.012);
}
.mev-items::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 3px;
    background: linear-gradient(var(--cls, var(--accent)), color-mix(in srgb, var(--cls, var(--accent)) 30%, transparent));
}

/* ───────── Строка мини-ивента ───────── */
.mev-card + .mev-card { border-top: 1px solid var(--line); }
.mev-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 136px 200px 64px 18px;
    align-items: center;
    gap: 16px;
    width: 100%;
    min-height: 64px;
    padding: 12px 18px 12px 20px;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: inherit;
    font: inherit;
    text-align: left;
    cursor: pointer;
    transition: background var(--transition-fast);
}
.mev-row:hover { background: rgba(255, 255, 255, 0.028); }
.mev-row:focus-visible { outline: 2px solid var(--accent); outline-offset: -2px; }
.mev-card.open > .mev-row { background: color-mix(in srgb, var(--cls, var(--accent)) 8%, transparent); }
.mev-title { min-width: 0; display: flex; flex-direction: column; gap: 3px; }
.mev-name { font-size: 15.5px; font-weight: 800; color: var(--text-hi); overflow-wrap: anywhere; }
.mev-preview {
    font-size: 13px;
    color: var(--text-mute);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.mev-card.open .mev-preview { display: none; }

.mev-lvl { display: inline-flex; align-items: center; gap: 8px; font-size: 12.5px; color: var(--text-dim); white-space: nowrap; }
.mev-lvl b { font: 600 12px var(--font-mono); color: var(--text); }
.mev-lvl.any { color: var(--text-mute); font-style: italic; }
.mev-pips { display: inline-flex; gap: 3px; }
.mev-pips i { width: 6px; height: 14px; border-radius: 2px; background: rgba(255, 255, 255, 0.09); }
.mev-pips i.on { background: var(--cls, var(--accent)); box-shadow: 0 0 6px color-mix(in srgb, var(--cls, var(--accent)) 45%, transparent); }

.mev-held { display: inline-flex; align-items: center; gap: 8px; min-width: 0; font-size: 13px; color: var(--text-dim); white-space: nowrap; }
.mev-held em { font-style: normal; color: var(--text-mute); overflow: hidden; text-overflow: ellipsis; }
.mev-held em::before { content: '· '; }
.mev-dot { flex: none; width: 8px; height: 8px; border-radius: 50%; background: var(--text-mute); }
.mev-held.fresh { color: var(--success); }
.mev-held.fresh .mev-dot { background: var(--success); box-shadow: 0 0 0 3px color-mix(in srgb, var(--success) 20%, transparent); }
.mev-held.old { color: var(--warn); }
.mev-held.old .mev-dot { background: var(--warn); box-shadow: 0 0 0 3px color-mix(in srgb, var(--warn) 20%, transparent); }
.mev-held.none { color: var(--text-mute); font-style: italic; }
.mev-held.none .mev-dot { background: transparent; border: 1.5px dashed var(--text-mute); }

.mev-idle {
    justify-self: start;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 4px 10px 4px 8px;
    border-radius: 999px;
    font: 800 13px var(--font-mono);
    color: #1c1405;
    background: linear-gradient(135deg, #ffd27a, var(--warn));
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--warn) 16%, transparent), 0 4px 14px color-mix(in srgb, var(--warn) 25%, transparent);
}
.mev-idle svg { width: 13px; height: 13px; fill: currentColor; stroke: none; }
.mev-chev { width: 18px; height: 18px; fill: none; stroke: var(--text-mute); stroke-width: 2; transition: transform var(--transition-mid), stroke var(--transition-fast); }
.mev-card.open .mev-chev { transform: rotate(90deg); stroke: var(--text-hi); }

/* ───────── Раскрытый мини-ивент ───────── */
.mev-body {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 280px;
    gap: 22px;
    padding: 6px 20px 20px 20px;
    animation: mevIn 0.22s ease;
}
.mev-body[hidden] { display: none; }
@keyframes mevIn { from { opacity: 0; transform: translateY(-4px); } to { opacity: 1; transform: none; } }
.mev-section-cap {
    margin: 10px 0 8px;
    font-size: 11.5px;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--cls, var(--text-mute));
}
.mev-body .ev-summary,
.mev-body .ev-text { font-size: 15px; line-height: 1.7; color: var(--text); }
.mev-extras { display: grid; gap: 10px; margin-top: 14px; }
.mev-body .ev-extra {
    margin: 0;
    padding: 12px 14px;
    border: 1px solid var(--line);
    border-radius: 11px;
    background: rgba(255, 255, 255, 0.018);
}
.mev-body .ev-extra-title {
    margin-bottom: 4px;
    font-size: 11.5px;
    font-weight: 800;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--text-dim);
}
.mev-facts {
    align-self: start;
    display: grid;
    gap: 2px;
    margin-top: 10px;
    padding: 8px;
    border: 1px solid var(--line-2);
    border-radius: 13px;
    background: rgba(0, 0, 0, 0.18);
}
.mev-fact {
    display: grid;
    grid-template-columns: 18px 1fr;
    grid-template-rows: auto auto;
    column-gap: 10px;
    padding: 8px;
}
.mev-fact + .mev-fact { border-top: 1px solid var(--line); }
.mev-fact svg { grid-row: 1 / 3; align-self: center; width: 17px; height: 17px; fill: none; stroke: var(--text-mute); stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; }
.mev-fact span { font-size: 11.5px; color: var(--text-mute); }
.mev-fact b { font-size: 14px; font-weight: 700; color: var(--text-hi); }
.mev-fact.warn b { color: var(--warn); }
.mev-fact.warn svg { stroke: var(--warn); }
.mev-bonus-card {
    display: flex;
    gap: 10px;
    margin-bottom: 6px;
    padding: 11px 12px;
    border-radius: 10px;
    color: var(--text);
    background: linear-gradient(135deg, color-mix(in srgb, var(--warn) 22%, transparent), color-mix(in srgb, var(--warn) 6%, transparent));
    border: 1px solid color-mix(in srgb, var(--warn) 40%, transparent);
}
.mev-bonus-card svg { flex: none; width: 20px; height: 20px; fill: var(--warn); stroke: none; }
.mev-bonus-card b { display: block; color: var(--warn); font-size: 14px; }
.mev-bonus-card span { font-size: 12.5px; line-height: 1.4; color: var(--text-dim); }

/* ───────── Отчёт: подсказка о бонусе в окне ───────── */
.rep-idle-note {
    margin-top: 8px;
    padding: 9px 12px;
    border-radius: 9px;
    font-size: 13.5px;
    line-height: 1.45;
    color: var(--text);
    background: color-mix(in srgb, var(--warn) 10%, transparent);
    border: 1px solid color-mix(in srgb, var(--warn) 28%, transparent);
}
.rep-idle-note b { color: var(--warn); }
.rep-idle-note.calm { background: rgba(255, 255, 255, 0.03); border-color: var(--line-2); color: var(--text-dim); }
.report-points.idle { color: #1c1405; background: var(--warn); }

@media (max-width: 1100px) {
    .mev-body { grid-template-columns: minmax(0, 1fr); }
    .mev-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .mev-fact + .mev-fact { border-top: 0; }
    .mev-bonus-card { grid-column: 1 / -1; }
}
@media (max-width: 900px) {
    .mev-tiles { grid-template-columns: 1fr; }
    .mev-actions { flex-direction: row; flex-wrap: wrap; min-width: 0; width: 100%; }
    .mev-actions > button { width: auto; flex: 1; }
    .mev-row {
        grid-template-columns: minmax(0, 1fr) auto 18px;
        grid-template-areas: 'title idle chev' 'lvl lvl chev' 'held held chev';
        row-gap: 8px;
    }
    .mev-title { grid-area: title; }
    .mev-lvl { grid-area: lvl; }
    .mev-held { grid-area: held; white-space: normal; }
    .mev-idle, .mev-idle-slot { grid-area: idle; }
    .mev-chev { grid-area: chev; }
    .mev-facts { grid-template-columns: 1fr; }
}

/* Текст дополнений без второй рамки внутри карточки дополнения */
.mev-body .ev-extra .rich-block { padding: 0; border: 0; background: none; box-shadow: none; }

/* ───────── Кнопки-плитки и кликабельные строки ───────── */
button.mev-tile { font: inherit; color: inherit; text-align: left; cursor: pointer; transition: border-color var(--transition-fast), transform var(--transition-fast); }
button.mev-tile:hover { border-color: color-mix(in srgb, var(--tone) 50%, var(--line-2)); transform: translateY(-1px); }
button.mev-tile.active { border-color: var(--tone); box-shadow: 0 0 0 1px var(--tone) inset; }
.cms-row.is-btn { cursor: pointer; transition: background var(--transition-fast), border-color var(--transition-fast); }
.cms-row.is-btn:focus-visible, .evs-card:focus-visible, .evo-card:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
.cms-chev { width: 18px; height: 18px; fill: none; stroke: var(--text-mute); stroke-width: 2; transition: transform var(--transition-mid); }
.cms-row.open .cms-chev { transform: rotate(90deg); stroke: var(--text-hi); }
.cms-row.open { border-color: var(--line-3); background: rgba(255, 255, 255, 0.03); }

/* ───────── Сотрудники ───────── */
.evs-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(330px, 1fr)); gap: 10px; }
.evs-card {
    display: grid;
    grid-template-columns: 46px minmax(0, 1fr) auto;
    align-items: center;
    gap: 14px;
    padding: 12px 16px;
    border: 1px solid var(--line-2);
    border-left: 3px solid color-mix(in srgb, #b388ff 70%, transparent);
    border-radius: 13px;
    background: rgba(255, 255, 255, 0.015);
    cursor: pointer;
    transition: border-color var(--transition-fast), background var(--transition-fast), transform var(--transition-fast);
}
.evs-card.master { border-left-color: #ff9ecf; }
.evs-card.archived { opacity: 0.7; border-left-color: var(--line-3); }
.evs-card:hover { background: rgba(255, 255, 255, 0.035); border-color: var(--line-3); transform: translateY(-1px); }
.evs-ava { width: 46px; height: 46px; border-radius: 12px; object-fit: cover; background: rgba(255, 255, 255, 0.06); }
.evs-ava.ph { display: grid; place-items: center; font-weight: 800; font-size: 18px; color: #d7a6ff; }
.evs-main { min-width: 0; display: grid; gap: 6px; }
.evs-name { display: flex; align-items: baseline; gap: 8px; min-width: 0; }
.evs-name b { font-size: 15.5px; color: var(--text-hi); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.evs-name em { font-style: normal; font-size: 11.5px; font-weight: 800; color: var(--warn); text-transform: uppercase; letter-spacing: 0.06em; }
.evs-meta { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.evs-pos { padding: 1px 8px; border-radius: 6px; font-size: 12px; font-weight: 700; color: #d7a6ff; background: color-mix(in srgb, #b388ff 14%, transparent); }
.evs-card.master .evs-pos { color: #ffb8da; background: color-mix(in srgb, #ff9ecf 14%, transparent); }
.evs-pips { display: inline-flex; gap: 2px; }
.evs-pips i { width: 10px; height: 4px; border-radius: 2px; background: rgba(255, 255, 255, 0.1); }
.evs-pips i.on { background: #b388ff; }
.evs-date { display: grid; justify-items: end; gap: 1px; text-align: right; }
.evs-date span { font-size: 11px; color: var(--text-mute); }
.evs-date b { font: 600 12.5px var(--font-mono); color: var(--text-dim); }
.evs-date small { max-width: 140px; font-size: 11.5px; color: var(--text-mute); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

/* ───────── Отчётность: активность и баллы ───────── */
.evo-block { margin-bottom: 18px; }
.evo-title { display: flex; align-items: baseline; gap: 8px; margin: 0 0 10px; font-size: 16px; font-weight: 800; letter-spacing: 0; text-transform: none; color: var(--text-hi); }
.evo-title span { font-size: 12.5px; font-weight: 600; color: var(--text-mute); }
.evo-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 8px; }
.evo-card {
    display: grid;
    grid-template-columns: 26px 34px minmax(0, 1fr) auto auto;
    align-items: center;
    gap: 10px;
    padding: 9px 12px;
    border: 1px solid var(--line-2);
    border-radius: 11px;
    background: rgba(255, 255, 255, 0.015);
    cursor: pointer;
    transition: background var(--transition-fast), border-color var(--transition-fast);
}
.evo-card:hover { background: rgba(255, 255, 255, 0.035); border-color: var(--line-3); }
.evo-rank { width: 24px; height: 24px; display: grid; place-items: center; border-radius: 7px; font: 700 12px var(--font-mono); color: var(--text-dim); background: rgba(255, 255, 255, 0.05); }
.evo-rank.top { color: #1c1405; background: var(--warn); }
.evo-ava { width: 34px; height: 34px; border-radius: 9px; object-fit: cover; background: rgba(255, 255, 255, 0.06); }
.evo-ava.ph { display: grid; place-items: center; font-weight: 800; color: var(--accent-light); }
.evo-name { min-width: 0; font-size: 14px; color: var(--text-hi); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.evo-num { display: grid; justify-items: end; font-size: 10.5px; line-height: 1.1; color: var(--text-mute); }
.evo-num b { font: 700 15px var(--font-mono); color: var(--text-hi); }
.evo-num.pts b { color: var(--success); }

/* ═══ Похвальный лист и нежеланные: карточки вместо голой таблицы ═══ */
.evl-bar { display: flex; align-items: center; gap: 14px; margin-bottom: 16px; }
.evl-bar h3 { margin: 0 auto 0 0; font-size: 19px; font-weight: 800; color: var(--text-hi); white-space: nowrap; }
.evl-bar h3 small { margin-left: 6px; font: 600 14px var(--font-mono); color: var(--text-mute); }
.evl-search { flex: 0 1 320px; }
.evl-bar > .btn-primary { flex: none; }
.evl-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(330px, 1fr)); gap: 12px; }
.evl-card {
    --tone: var(--success);
    position: relative; display: flex; flex-direction: column; gap: 14px; padding: 16px 18px;
    border: 1px solid var(--line-2); border-radius: 14px; cursor: pointer;
    background: radial-gradient(120% 100% at 0% 0%, color-mix(in srgb, var(--tone) 8%, transparent), transparent 55%), rgba(255, 255, 255, 0.015);
    transition: border-color var(--transition-fast), background-color var(--transition-fast);
}
.evl-card.bad { --tone: var(--danger, #e5534b); }
.evl-card::before { content: ''; position: absolute; left: 0; top: 14px; bottom: 14px; width: 3px; border-radius: 0 3px 3px 0; background: var(--tone); }
.evl-card:hover { border-color: color-mix(in srgb, var(--tone) 45%, var(--line-2)); background-color: rgba(255, 255, 255, 0.03); }
.evl-card:focus-visible { outline: 2px solid var(--tone); outline-offset: 2px; }
.evl-card[hidden] { display: none; }
.evl-head { display: flex; align-items: center; gap: 12px; min-width: 0; }
.evl-ava { flex: none; display: grid; place-items: center; width: 40px; height: 40px; border-radius: 11px; font-weight: 800; font-size: 17px;
    color: var(--tone, var(--success)); background: color-mix(in srgb, var(--tone, var(--success)) 14%, transparent); border: 1px solid color-mix(in srgb, var(--tone, var(--success)) 35%, transparent); }
.evl-ava.big { width: 52px; height: 52px; font-size: 22px; border-radius: 14px; }
.evl-ava.bad { --tone: var(--danger, #e5534b); }
.evl-who { flex: 1; min-width: 0; display: grid; gap: 3px; }
.evl-who b { font-size: 16px; color: var(--text-hi); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.evl-who span { font: 500 12.5px var(--font-mono); color: var(--text-mute); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.evl-chev { flex: none; width: 18px; height: 18px; fill: none; stroke: var(--text-mute); stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; transition: transform var(--transition-fast); }
.evl-card:hover .evl-chev { transform: translateX(3px); stroke: var(--tone); }
.evl-rates { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 4px; padding: 4px; border-radius: 11px; background: rgba(0, 0, 0, 0.22); border: 1px solid var(--line); }
.evl-rates > div { display: grid; gap: 3px; padding: 6px 8px; min-width: 0; }
.evl-rates > div + div { border-left: 1px solid var(--line); }
.evl-rates span { font-size: 11.5px; line-height: 1.3; color: var(--text-mute); overflow-wrap: anywhere; }
.evl-rates > div { align-content: space-between; }
.evl-rates b { font-size: 14px; color: var(--text-hi); overflow-wrap: anywhere; }
.evl-rates.wide { margin: 16px 0 4px; }
.evl-rates.wide > div { padding: 10px 12px; }
.evl-foot { display: flex; align-items: center; gap: 7px; font-size: 13px; color: var(--text-dim); }
.evl-foot svg { width: 15px; height: 15px; fill: none; stroke: var(--warn); stroke-width: 1.9; stroke-linejoin: round; }
.evl-reason { margin: 0; color: var(--text-dim); font-size: 14px; line-height: 1.55; overflow: hidden; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow-wrap: anywhere; white-space: pre-line; }
.evl-modal-head { display: flex; align-items: center; gap: 14px; }
.evl-modal-head h2 { margin: 0 0 3px; }
.evl-sub { margin: 18px 0 8px; font-size: 12.5px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: var(--text-mute); }
.evl-counts { display: grid; gap: 4px; }
.evl-counts > div { display: flex; justify-content: space-between; gap: 12px; padding: 8px 12px; border-radius: 9px; background: rgba(255, 255, 255, 0.03); font-size: 14px; }
.evl-counts b { font-family: var(--font-mono); color: var(--text-hi); }
.evl-text { padding: 12px 14px; border-radius: 11px; background: rgba(255, 255, 255, 0.03); border: 1px solid var(--line); font-size: 14px; line-height: 1.6; white-space: pre-wrap; overflow-wrap: anywhere; color: var(--text); }
@media (max-width: 700px) {
    .evl-bar { flex-wrap: wrap; }
    .evl-search { order: 3; flex-basis: 100%; margin-left: 0; }
    .evl-bar > .btn-primary { margin-left: auto; }
    .evl-grid { grid-template-columns: 1fr; }
}

/* Thaumiel — запрещённые мини-ивенты: проводить нельзя */
.mev-class-ban { display: inline-flex; align-items: center; gap: 5px; font-size: 12.5px; font-weight: 700; color: #ff7a7a; }
.mev-class-ban svg, .mev-ban svg, .mev-ban-card svg { fill: none; stroke: currentColor; stroke-width: 2.2; stroke-linecap: round; }
.mev-class-ban svg { width: 14px; height: 14px; }
.mev-ban { justify-self: start; display: inline-flex; align-items: center; gap: 5px; padding: 4px 10px 4px 8px; border: 1px solid rgba(255, 90, 90, .45); border-radius: 999px; background: rgba(255, 90, 90, .12); color: #ff8a8a; font: 800 12.5px var(--font-body); white-space: nowrap; }
.mev-ban svg { width: 13px; height: 13px; }
.mev-card.is-forbidden { border-color: rgba(255, 90, 90, .28); }
.mev-card.is-forbidden .mev-name { text-decoration: line-through; text-decoration-color: rgba(255, 90, 90, .6); text-decoration-thickness: 2px; }
.mev-ban-card { display: flex; gap: 10px; align-items: flex-start; padding: 10px 12px; border: 1px solid rgba(255, 90, 90, .4); border-radius: 12px; background: rgba(255, 90, 90, .08); }
.mev-ban-card svg { flex: none; width: 20px; height: 20px; color: #ff7a7a; }
.mev-ban-card b { display: block; color: #ff8a8a; font-size: 14px; }
.mev-ban-card span { display: block; margin-top: 2px; color: var(--text-dim); font-size: 12.5px; line-height: 1.4; }
.mev-card.is-forbidden .mev-row { grid-template-columns: minmax(0, 1fr) 136px 200px max-content 18px; }
.mev-ban-card { margin-bottom: 6px; }
@media (max-width: 1100px) { .mev-ban-card { grid-column: 1 / -1; } }
@media (max-width: 900px) { .mev-card.is-forbidden .mev-row { grid-template-columns: minmax(0, 1fr) auto 18px; } .mev-ban { grid-area: idle; } }
