/* Памятные сражения /memorable/ (engine/pages/memorable/index.php) */
body{margin:0;background:var(--k-bg,#f1f4f8);color:var(--k-text,#222);font:15px/1.5 "KodgLato","Helvetica Neue",Helvetica,Arial,sans-serif}
.mbp{max-width:1200px;margin:0 auto;padding:22px 15px 50px}
.mb-h1.kg-h{display:block;text-align:left}
.mb-h1 .mb-drop{margin-left:6px;vertical-align:-.1em}
.mb-drop{display:inline-flex;vertical-align:middle;cursor:help}
.mb-drop svg{display:block}
.mb-h1 .mb-drop svg{width:22px;height:26px}
.mb-meta{display:flex;flex-wrap:wrap;gap:6px 18px;color:var(--k-text2,#555);font-size:14px;margin:6px 0 10px}
.mb-meta .glyphicon{color:var(--k-muted,#888);margin-right:3px}
.mb-cmt{color:var(--k-text2,#555);font-size:14px;margin:0 0 8px}
.mb-note{background:var(--k-panel,#fff);border-left:3px solid var(--k-accent,#c0392b);padding:8px 12px;margin:8px 0 12px}
.mb-hint{color:var(--k-muted,#888);font-size:13px;margin:0 0 10px}

/* Список */
.mb-list{display:grid;gap:18px}
.mb-card{background:var(--k-panel,#fff);border:1px solid var(--k-border,#dde3ea);border-radius:6px;padding:16px 18px}
.mb-t{font-size:21px;margin:0 0 4px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.mb-t a{color:var(--k-text,#222);text-decoration:none}
.mb-t a:hover{color:var(--k-accent-h,#e74c3c)}
.mb-foot{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:10px}
.mb-foot .mb-cmt{margin:0}
.mb-go{font-weight:700;margin-left:auto}

/* Стороны */
.mb-sides{display:flex;align-items:stretch;gap:10px;flex-wrap:wrap;margin:10px 0}
.mb-side{flex:1 1 260px;background:var(--k-panel3,#eef2f7);border:1px solid var(--k-border,#dde3ea);border-radius:6px;padding:10px 12px}
.mb-side.win{border-color:var(--k-good,#2e7d32);box-shadow:inset 0 3px 0 var(--k-good,#2e7d32)}
.mb-sh{font-size:15px}
.mb-win{display:inline-block;background:var(--k-good,#2e7d32);color:#fff;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;border-radius:3px;padding:1px 6px;vertical-align:middle}
.mb-sn{font-size:26px;font-weight:700;line-height:1.2}
.mb-sn small{font-size:13px;font-weight:400;color:var(--k-muted,#888)}
.mb-scl{display:flex;flex-wrap:wrap;gap:4px;margin:6px 0}
.mb-cl img{display:block}
.mb-more{font-size:12px;color:var(--k-muted,#888);align-self:center}
.mb-sd{font-size:13px;color:var(--k-text2,#555)}
.mb-vs{align-self:center;font-weight:700;color:var(--k-bad,#c9302c);text-transform:uppercase;font-size:12px}
.mb-cnt{display:flex;flex-wrap:wrap;align-items:center;gap:3px 10px;font-size:13px;margin:4px 0}
.mb-cnt-h{color:var(--k-muted,#888);font-size:12px;width:100%}
.mb-al{display:inline-flex;align-items:center;gap:2px;margin-left:6px}
.mb-pan{display:inline-flex;align-items:center;flex-wrap:wrap;border:1px solid var(--k-border,#dde3ea);border-radius:3px;padding:2px 7px;background:var(--k-panel,#fff)}
.mb-pan1{box-shadow:inset 3px 0 0 #d9b44a}
.mb-pan3{box-shadow:inset 3px 0 0 #555}
.mb-pan7{box-shadow:inset 3px 0 0 #3a9a6a}
.mb-cg-war{box-shadow:inset 3px 0 0 #b0413e}
.mb-cg-shoot{box-shadow:inset 3px 0 0 #3e7bb0}
.mb-cg-mage{box-shadow:inset 3px 0 0 #8a4fb5}
.mb-al img{display:block}
.mb-cl2 b,.mb-al b{font-weight:700}
.mb-tb td.mb-cls{text-align:left;color:var(--k-text2,#555)}
.mb-dl{display:grid;grid-template-columns:auto auto;gap:2px 12px;margin:6px 0 0;font-size:13px}
.mb-dl dt{font-weight:400;color:var(--k-text2,#555)}
.mb-dl dd{margin:0;font-weight:700;text-align:right}
.mb-facts{display:flex;flex-wrap:wrap;gap:8px 24px;font-size:14px;margin:8px 0 0}
.mb-facts span:first-child{display:block;font-size:12px;color:var(--k-muted,#888)}

/* Трофеи конца боя */
.mb-troph{display:grid;gap:8px}
.mb-tr{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;background:var(--k-panel,#fff);border:1px solid var(--k-border,#dde3ea);border-radius:4px;padding:8px 12px}
.mb-trw{min-width:170px}
.mb-drv{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(340px,100%),1fr));gap:12px 18px}
.mb-drvs{display:grid;gap:8px;align-content:start}
.mb-drvs[hidden]{display:none}
.mb-drvc{display:grid;gap:4px}
.mb-drvc small{color:var(--k-muted,#6b7785);margin-left:4px}
.mb-rel.hi b{color:#1d7a35}
.mb-rel.lo b{color:#b3261e}
.mb-pl{white-space:nowrap}
.mb-pl small{color:var(--k-muted,#6b7785)}
.mb-when{white-space:nowrap}
.mb-when.k-tip{cursor:help}
.mb-drva{color:var(--k-muted,#6b7785);font-size:12px}
.mb-tri{display:flex;flex-wrap:wrap;gap:6px 14px}
.mb-trx{display:inline-flex;align-items:center;gap:5px;font-size:13px}
.mb-trx img{display:block;width:auto;height:auto;max-height:40px}
.mb-trx b{color:var(--k-accent,#c0392b)}
.mb-trx small{color:var(--k-text2,#555);font-size:12px}

.mb-nav{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0 4px;position:sticky;top:52px;z-index:5;background:var(--k-bg,#f1f4f8);padding:6px 0}
.mb-nav a{border:1px solid var(--k-border,#dde3ea);border-radius:3px;padding:4px 10px;font-size:14px;text-decoration:none;background:var(--k-panel,#fff)}
.mb-nav a:hover{border-color:var(--k-accent,#c0392b)}
.mb-sw{display:inline-flex;margin-left:auto;border:1px solid var(--k-border,#dde3ea);border-radius:3px;overflow:hidden}
.mb-sw[hidden]{display:none}
.mb-sw button{border:0;border-right:1px solid var(--k-border,#dde3ea);background:var(--k-panel,#fff);color:var(--k-text,#222);font-size:14px;padding:4px 12px;cursor:pointer}
.mb-sw button:last-child{border-right:0}
.mb-sw button:hover{color:var(--k-accent-h,#e74c3c)}
.mb-sw button.on{background:var(--k-accent,#c0392b);color:#fff}
.mb-sec{margin:22px 0 0;scroll-margin-top:var(--mb-top,110px)}
.mb-sec[hidden],.mb-nav a[hidden]{display:none}
.mb-sec h2{font-size:22px;margin:0 0 6px}
.mb-h3{font-size:17px;margin:16px 0 6px}
.mb-back{margin:26px 0 0}

/* Таблицы */
/* Таблица прокручивается в своём блоке высотой в экран (под шапкой сайта и строкой разделов):
   так её верхняя строка и левый столбец всегда на виду. Прокрутить страницу дальше — колесо
   мимо таблицы или до конца таблицы. */
.mb-scroll{overflow:auto;max-height:calc(100vh - var(--mb-top,150px));border:1px solid var(--k-border,#dde3ea);border-radius:4px;background:var(--k-tbl,#fff)}
.mb-tall{max-height:calc(100vh - var(--mb-top,150px))}
.mb-tb{border-collapse:separate;border-spacing:0;width:100%;font-size:13px}
.mb-tb th,.mb-tb td{padding:4px 7px;border-right:1px solid var(--k-border,#dde3ea);border-bottom:1px solid var(--k-border,#dde3ea);text-align:right;white-space:nowrap}
.mb-tb thead th{position:sticky;top:0;z-index:2;background:var(--k-head-bg,#dde4ee);color:var(--k-head-text,#222);text-align:center;vertical-align:bottom}
.mb-tb tfoot th{position:sticky;bottom:0;z-index:2;background:var(--k-head-bg,#dde4ee);text-align:right}
.mb-tb tbody tr:nth-child(even) td{background:var(--k-tbl2,#f5f7fa)}
.mb-tb tbody tr:hover td{background:var(--k-tblhover,#e8eef6)}
.mb-tb small{color:var(--k-muted,#888);font-size:11px}
.mb-tb .mb-who{text-align:left;position:sticky;left:0;z-index:1;background:var(--k-tbl,#fff);box-shadow:inset -2px 0 0 var(--k-border3,#c9d2de)}
.mb-tb tbody tr:nth-child(even) .mb-who{background:var(--k-tbl2,#f5f7fa)}
.mb-tb thead .mb-corner,.mb-tb tfoot .mb-who{position:sticky;left:0;z-index:3;background:var(--k-head-bg,#dde4ee);text-align:left}
.mb-tb tr.dead .mb-who b{opacity:.75}
.mb-dead{color:var(--k-bad,#c9302c);font-size:12px}
.mb-sort th[data-sort]{cursor:pointer;user-select:none}
.mb-sort th[data-sort]:hover{color:var(--k-accent-h,#e74c3c)}
.mb-sort th.on::after{content:" ▾";font-size:10px}
.mb-sort th.on.asc::after{content:" ▴"}
.mb-mx td{text-align:center;min-width:34px}
.mb-mx td.z{color:transparent}
.mb-ic{padding:4px 3px!important}
/* картинки игры маленькие и разные (карманы 40×20, свитки 40×25) — в родном размере, без растяжки */
.mb-ic span{display:flex;align-items:center;justify-content:center;height:28px}
.mb-ic img{display:block;width:auto;height:auto;max-width:40px;max-height:28px}
.mb-noimg{display:flex;align-items:center;justify-content:center;width:40px;height:25px;margin:0 auto;border:1px dashed var(--k-border3,#c9d2de);border-radius:3px;font-style:normal;font-size:12px;font-weight:700;color:var(--k-text2,#555)}
/* Цели — персонаж целиком (склонность, клан, ник, уровень, значки), вертикально: иначе 40 колонок
   не влезут. vertical-rl без поворота: текст сверху вниз, а картинки значков остаются стоять прямо */
.mb-vh{padding:6px 2px!important;vertical-align:bottom!important}
.mb-vt{writing-mode:vertical-rl;display:inline-block;font-size:12px;text-align:left;line-height:1.2}
.mb-vt .utag{white-space:nowrap}
.mb-vt .utag img,.mb-vt .utag svg{display:inline-block;margin:1px 0}
.mb-vt .utag-kodg{margin-left:0!important;margin-top:2px}
.mb-dm td{font-size:12px}
.mb-dm td.h1{background:rgba(201,48,44,.10)!important}
.mb-dm td.h2{background:rgba(201,48,44,.22)!important}
.mb-dm td.h3{background:rgba(201,48,44,.38)!important}
.mb-dm td.h4{background:rgba(201,48,44,.55)!important;color:#fff}
.mb-dm td.h5{background:rgba(201,48,44,.78)!important;color:#fff;font-weight:700}
@media (max-width:600px){
  .mb-vs{flex-basis:100%;text-align:center}
  .mb-tb .mb-who{max-width:150px;overflow:hidden}
}
/* Телефон: разделы — сетка 2×2, переключатель сторон — отдельной строкой во всю ширину */
@media (max-width:767px){
  .mb-nav{display:grid;grid-template-columns:1fr 1fr;gap:6px}
  .mb-nav a{text-align:center;padding:6px 4px}
  .mb-sw{grid-column:1 / -1;margin:2px 0 0;display:flex}
  .mb-sw[hidden]{display:none}
  .mb-sw button{flex:1;padding:7px 4px}
  .mb-t{font-size:18px}
  .mb-meta{gap:4px 14px;font-size:13px}
}
/* На телефоне левый столбец не закрепляем — съедает экран (как на /clans/rating/seasons/), шапка остаётся */
@media (max-width:767px){
  .mb-tb .mb-who,.mb-tb thead .mb-corner,.mb-tb tfoot .mb-who{position:static;box-shadow:none}
  .mb-nav{position:static}
  .mb-scroll,.mb-tall{max-height:calc(100vh - 70px)}
}

/* Анализатор логов (/clan/logs/) */
.cl-form{display:flex;gap:8px;margin:14px 0 8px;max-width:820px}
.cl-form .form-control{flex:1;min-width:0}
.cl-msg{padding:8px 12px;border-radius:4px;max-width:820px}
.cl-msg.ok{background:#eaf6ec;color:#1d5e2c}
.cl-msg.err{background:#fbeaea;color:#8c1d18}
.cl-queue{margin:14px 0}
.cl-q{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:baseline;padding:6px 0;border-bottom:1px solid var(--k-border,#e3e7ec)}
.cl-q small{color:var(--k-muted,#6b7785)}
.cl-q.error span{color:#b3261e}
.cl-list{display:grid;gap:8px}
.cl-it{display:flex;align-items:center;justify-content:space-between;gap:8px 18px;flex-wrap:wrap;background:var(--k-panel,#fff);border:1px solid var(--k-border,#dde3ea);border-radius:6px;padding:10px 14px;color:var(--k-text,#222);text-decoration:none}
.cl-it:hover{border-color:var(--k-accent-h,#e74c3c);text-decoration:none;color:var(--k-text,#222)}
.cl-head{min-width:0;flex:1 1 320px}
.cl-t{display:flex;align-items:center;gap:6px;font-size:16px;line-height:1.3}
.cl-m{display:flex;flex-wrap:wrap;gap:2px 14px;color:var(--k-text2,#555);font-size:13px;margin-top:3px}
.cl-by{color:var(--k-muted,#6b7785)}
.cl-sides{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.cl-vs{color:var(--k-muted,#6b7785);font-size:12px;text-transform:uppercase}
.cl-sd{display:inline-flex;align-items:center;gap:5px;padding:4px 9px;border:1px solid var(--k-border,#dde3ea);border-radius:999px;font-size:13px;white-space:nowrap;background:var(--k-bg2,#f6f8fa)}
.cl-sd.win{border-color:#3d9a55;background:#eaf6ec;color:#1d5e2c}
.cl-cn{display:inline-flex;align-items:center;gap:4px}
.cl-cn img{display:block}
.cl-n{min-width:16px;text-align:right}
.cl-n::after{content:" чел.";font-weight:400;color:var(--k-muted,#6b7785)}
.cl-sd.win .cl-n::after{color:#1d5e2c}
.cl-cup{font-size:13px;line-height:1}
@media (max-width:600px){.cl-sides{width:100%}}
.cl-pages{display:flex;flex-wrap:wrap;gap:6px;margin:16px 0}
.cl-pages a,.cl-pages b{min-width:32px;text-align:center;padding:4px 8px;border:1px solid var(--k-border,#dde3ea);border-radius:4px}
.cl-pages b{background:var(--k-accent,#2f6fc0);color:#fff;border-color:transparent}
@media (max-width:600px){.cl-form{flex-direction:column}}
