/* Тема «Протокол» (матчи 1950–1978): низ страницы матча - архивная папка.
   Перенос утверждённого макета r2-protokol. Всё под .mx; подменю сайта не трогаем.
   Токены ретро-доски «Бенто»: бумага #f6efe1, рамки #d8cdb0, текст #1c1c1c, красный #d1323c, синий #1a4fa0.
   Шрифты: Manrope (сайт), Unbounded и Oswald (match-lineups.css), JetBrains Mono (OFL 1.1) - машинописный набор. */

@font-face{font-family:"JB Mono";font-style:normal;font-weight:400 800;font-display:swap;src:url(/fonts/jetbrains-mono/JetBrainsMono-cyrillic.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"JB Mono";font-style:normal;font-weight:400 800;font-display:swap;src:url(/fonts/jetbrains-mono/JetBrainsMono-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

.mx{
  --paper:#f6efe1; --sheet:#fffcf3; --line:#d8cdb0; --line-2:#c9bc9a;
  --ink:#1c1c1c; --muted:#5f584b; --red:#d1323c; --red-ink:#b3272f; --red-lite:#ff6a72;
  --blue:#1a4fa0; --film:#1c1c1c; --rule:rgba(26,79,160,.16);
  --mono:"JB Mono","JetBrains Mono",ui-monospace,Consolas,monospace;
  --display:"Unbounded",Manrope,sans-serif;
  --text:Manrope,system-ui,sans-serif;
  --news:"Oswald",Manrope,sans-serif;
  --ease:cubic-bezier(.22,1,.36,1);
  font-family:var(--text);color:var(--ink);font-variant-numeric:tabular-nums;
  padding:4px 0 64px;
}
.mx *,.mx *::before,.mx *::after{box-sizing:border-box}
.mx :where(h2,h3,h4,p,figure,ul,ol,dl,dd,table){margin:0}
.mx :where(ul,ol){padding:0;list-style:none}
/* у сайта body.page :where(h1..h6) задаёт шрифт и цвет - перебиваем явно */
.mx :is(h2,h3,h4){color:var(--ink);letter-spacing:0}
.mx a{color:inherit}
.mx p{text-wrap:pretty}
.mx img{display:block;max-width:100%}
.mx :where(a,button,[tabindex]):focus-visible{outline:2px solid var(--blue);outline-offset:3px;border-radius:4px}
/* текст для экранных дикторов: обёртка обрезает, сам текст во внутреннем span */
.mx-sr{position:absolute!important;width:1px;height:1px;margin:0;padding:0;border:0;overflow:hidden;clip-path:inset(50%);white-space:normal}

.mx__in{max-width:1640px;margin:0 auto;padding:0 40px}
.mx-sec{padding-top:48px;scroll-margin-top:130px;min-width:0}
.mx-head{display:flex;align-items:baseline;gap:6px 18px;flex-wrap:wrap;margin-bottom:16px}
.mx .mx-head h2{font:800 26px/1.15 var(--text);color:var(--ink)}
.mx-head__note{font:500 12.5px/1.45 var(--mono);color:var(--muted)}
.mx-head__note a{color:var(--blue);text-decoration:none;border-bottom:1px solid currentColor}
.mx-tile{background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:22px 24px;position:relative;min-width:0}
.mx .mx-label{font:600 12px/1.3 var(--display);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.mx-label--gap{margin-top:22px}
.mx-foot{font:500 12px/1.5 var(--mono);color:var(--muted);margin-top:12px}

/* штамп: резиновая печать */
.mx-stamp{position:absolute;z-index:2;display:inline-block;font:800 15px/1 var(--mono);letter-spacing:.2em;text-transform:uppercase;
  padding:8px 12px 7px 14px;border:2.5px solid currentColor;border-radius:6px;box-shadow:inset 0 0 0 2px var(--sheet),inset 0 0 0 3.5px currentColor;
  transform:rotate(var(--rot,-8deg));opacity:.86;pointer-events:none;white-space:nowrap}
.mx-stamp--sm{font-size:10.5px;letter-spacing:.18em;padding:5px 8px 4px 10px;border-width:2px;box-shadow:none}
/* штампы протокола - отдельной строкой внизу листа, чтобы не закрывать текст */
.mx-pr__stamps{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:18px;padding:4px 6px 0;min-height:44px}
.mx-pr__stamps .mx-stamp{position:relative}
.mx-stamp--blue{color:var(--blue);--rot:-6deg}
.mx-stamp--red{color:var(--red);--rot:5deg}

/* ---------- кнопка ---------- */
.mx-btn{display:inline-flex;align-items:center;gap:10px;height:40px;padding:0 18px;border-radius:999px;border:1px solid var(--ink);
  background:var(--ink);color:var(--paper);font:700 12px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;
  transition:background .2s,color .2s,transform .12s}
.mx-btn:hover{background:#33312c}
.mx-btn:active{transform:scale(.98)}
.mx-btn__ic{width:14px;height:14px;border:2px solid currentColor;border-radius:50%;border-top-color:transparent}
.mx-btn.is-busy{background:linear-gradient(90deg,var(--blue) var(--p,0%),#c8d4ea var(--p,0%));border-color:var(--blue);color:#fff;cursor:default}
.mx-btn.is-busy .mx-btn__ic{animation:mxSpin .8s linear infinite}
@keyframes mxSpin{to{transform:rotate(360deg)}}

/* ---------- 1. Ход матча ---------- */
.mx-hod{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:16px;align-items:stretch}
.mx-hod--solo{grid-template-columns:minmax(0,640px);justify-content:center}
.mx-sheet{display:flex;flex-direction:column;align-items:center;padding:20px 24px 22px}
.mx-platen{position:relative;z-index:3;width:100%;max-width:560px;height:36px;border-radius:12px;
  background:linear-gradient(#34322d,#1c1c1c);box-shadow:0 1px 0 rgba(255,255,255,.12) inset,0 10px 22px -12px rgba(28,28,28,.6)}
.mx-platen__slit{position:absolute;left:34px;right:34px;bottom:9px;height:5px;border-radius:4px;background:#0c0c0c;box-shadow:0 1px 0 rgba(246,239,225,.25)}
.mx-platen__knob{position:absolute;top:8px;width:20px;height:20px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#6b665c,#2a2824 70%)}
.mx-platen__knob:nth-child(2){left:-6px}.mx-platen__knob:nth-child(3){right:-6px}
.mx-paper{position:relative;z-index:1;width:calc(100% - 32px);max-width:520px;margin-top:-8px;padding:26px 26px 24px;
  background:var(--sheet);font:500 13px/1.65 var(--mono);color:var(--ink);
  box-shadow:0 14px 22px -14px rgba(60,45,20,.35),0 1px 2px rgba(60,45,20,.14);
  background-image:radial-gradient(120% 50% at 50% 0,rgba(60,45,20,.05),transparent 60%),repeating-linear-gradient(0deg,rgba(60,45,20,.018) 0 1px,transparent 1px 3px)}
.mx-paper a{text-decoration:none;border-bottom:1px solid rgba(26,79,160,.45);color:var(--blue)}
.mx-paper a:hover{border-bottom-color:var(--blue)}
.mx-pr__title{text-align:center;font-weight:800;font-size:15px;letter-spacing:.28em;text-transform:uppercase}
.mx-pr__sub{text-align:center;color:var(--muted);font-size:12px;letter-spacing:.06em}
.mx-pr__rule{height:0;border-top:1px dashed #b9ad90;margin:10px 0}
.mx-pr__rule--dot{border-top-style:dotted;border-top-width:2px;margin:12px 0 10px}
.mx-pr__rule--dbl{border-top:3px double #8f846c;margin:12px 0 8px}
.mx-kv{display:flex;align-items:baseline;gap:0}
.mx-kv__k{color:var(--muted);text-transform:uppercase;font-size:11.5px;letter-spacing:.06em;flex:none}
.mx-kv i{flex:1;min-width:14px;border-bottom:2px dotted #cbbf9f;margin:0 8px;transform:translateY(-4px)}
.mx-kv__v{text-align:right;font-weight:700;min-width:0;overflow-wrap:anywhere}
.mx-gl{display:grid;grid-template-columns:52px minmax(0,1fr) auto;gap:10px;align-items:baseline;padding:2px 0}
.mx-gl--head{font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.mx-gl--head span:last-child{text-align:right}
.mx-gl__m{color:var(--red-ink);font-weight:800;white-space:nowrap}
.mx-gl__w{font-weight:700;min-width:0;overflow-wrap:anywhere}
.mx-gl__w small{font-weight:500;font-size:11px;color:var(--muted);margin-left:4px}
.mx-gl__s{font-weight:500;font-size:15px;letter-spacing:.06em;text-align:right;white-space:nowrap}
.mx-gl__s b{font-weight:800;color:var(--ink)}
.mx-pr__none{color:var(--muted)}
/* цифры матча (если есть) - машинописные строки «хозяева | показатель | гости» */
.mx-st{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr) minmax(0,1fr);gap:8px;align-items:baseline;padding:1px 0}
.mx-st>span:first-child{text-align:left}
.mx-st>span:nth-child(2){text-align:center;color:var(--muted);font-size:11.5px;text-transform:uppercase;letter-spacing:.04em}
.mx-st>span:last-child{text-align:right}
.mx-st__v{font-weight:800}
.mx-st--head{font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);overflow-wrap:anywhere}
.mx-st--head>span:nth-child(2){font-size:10.5px;color:var(--ink);font-weight:700}
.mx-st--head>span:not(:nth-child(2)){display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.mx-pr__total{display:flex;justify-content:space-between;gap:12px;font-weight:800;font-size:15px;letter-spacing:.06em;text-transform:uppercase}
.mx-pr__total span:last-child{text-align:right;min-width:0;overflow-wrap:anywhere}
.mx-pr__res{text-align:right;font-size:12px;color:var(--red-ink);font-weight:700;letter-spacing:.04em}
.mx-pr__note{margin-top:10px;font-size:11.5px;line-height:1.55;color:var(--muted);max-width:40ch}
.mx-sheet__ctl{margin-top:18px}

/* печать построчно: строки появляются как машинописный набор (только при включённой анимации) */
.mx-sheet.is-armed .mx-ln{visibility:hidden}
.mx-sheet.is-armed .mx-ln.is-on{visibility:visible;animation:mxType .2s steps(14,end) both}
@keyframes mxType{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 -2px 0 0)}}
.mx-sheet.is-armed .mx-stamp{opacity:0}
.mx-sheet.is-stamped .mx-stamp{animation:mxStamp .24s cubic-bezier(.2,1.5,.4,1) both}
.mx-sheet.is-stamped .mx-stamp--red{animation-delay:.18s}
@keyframes mxStamp{from{opacity:0;transform:rotate(var(--rot)) scale(1.7)}to{opacity:.86;transform:rotate(var(--rot)) scale(1)}}

/* график счёта */
.mx-chart{display:flex;flex-direction:column;gap:10px;padding:22px 26px 20px}
.mx-chart__big{display:flex;align-items:baseline;flex-wrap:wrap;gap:14px;font:900 44px/1 var(--display);margin-top:6px}
.mx-chart__big i{font:400 26px/1 var(--text);color:var(--muted);font-style:normal}
.mx-chart__big span:last-child{color:var(--blue)}
.mx-chart__txt{font-size:15px;line-height:1.55;max-width:58ch}
.mx-plot{position:relative;height:250px;margin:30px 40px 0;--rv:100%}
.mx-plot__svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.mx-plot__svg--data{clip-path:inset(-10px calc(100% - var(--rv)) -10px -10px);transition:clip-path .25s var(--ease)}
.mx-plot__grid path{stroke:var(--rule);stroke-width:1;vector-effect:non-scaling-stroke;stroke-dasharray:3 4;fill:none}
.mx-plot__axis{stroke:var(--ink);stroke-width:1.5;vector-effect:non-scaling-stroke;fill:none;opacity:.55}
.mx-plot__line{stroke:var(--ink);stroke-width:2.5;vector-effect:non-scaling-stroke;fill:none;stroke-linejoin:round}
.mx-plot__fill--up{fill:rgba(26,79,160,.16)}
.mx-plot__fill--dn{fill:rgba(209,50,60,.13)}
.mx-plot__zone{position:absolute;left:0;max-width:44%;font:600 11px/1.15 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);overflow-wrap:anywhere}
.mx-plot__zone--up{bottom:calc(100% + 6px);color:var(--blue)}
.mx-plot__zone--dn{top:calc(100% + 6px);color:var(--red-ink)}
.mx-plot__half{position:absolute;top:-6px;bottom:-6px;left:calc(var(--x,50) * 1%);border-left:1.5px dashed var(--line-2)}
.mx-plot__half em{position:absolute;bottom:calc(100% + 2px);left:6px;font:500 11px/1 var(--mono);color:var(--muted);font-style:normal;white-space:nowrap}
.mx-plot__half--et{border-left-style:dotted}
.mx-mk{position:absolute;left:calc(var(--x) * 1%);top:calc(var(--y) * 1%);width:0;height:0;transition:opacity .2s}
.mx-mk>i{position:absolute;left:-6px;top:-6px;width:12px;height:12px;border-radius:50%;background:var(--red);box-shadow:0 0 0 2.5px var(--paper)}
.mx-mk__t{position:absolute;white-space:nowrap;font:500 12px/1 var(--mono);color:var(--ink);background:var(--paper);padding:2px 3px}
.mx-mk__t b{color:var(--red-ink);font-weight:800}
/* положение подписи: над / под точкой, по центру или сдвинуто влево-вправо, второй ряд; выбирает app.js без наложений */
.mx-mk[data-pos^="t"] .mx-mk__t{bottom:11px}
.mx-mk[data-pos^="b"] .mx-mk__t{top:11px}
.mx-mk[data-pos="t2"] .mx-mk__t{bottom:31px}
.mx-mk[data-pos="b2"] .mx-mk__t{top:31px}
.mx-mk[data-pos="t"] .mx-mk__t,.mx-mk[data-pos="b"] .mx-mk__t,.mx-mk[data-pos="t2"] .mx-mk__t,.mx-mk[data-pos="b2"] .mx-mk__t{left:0;transform:translateX(-50%)}
.mx-mk[data-pos$="r"] .mx-mk__t{left:3px}
.mx-mk[data-pos$="l"] .mx-mk__t{right:3px}
.mx-plot.is-armed .mx-mk:not(.is-on){opacity:0}
.mx-plot__x{position:relative;height:16px;margin:26px 40px 0;font:500 11px/1 var(--mono);color:var(--muted)}
.mx-plot__x span{position:absolute;left:calc(var(--x) * 1%);transform:translateX(-50%)}
.mx-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:auto;padding-top:14px;border-top:1px solid var(--line)}
.mx-facts div{min-width:0;padding-right:10px}
.mx-facts dt{font:500 11.5px/1.3 var(--mono);color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.mx-facts dd{font:800 24px/1.2 var(--display);margin-top:4px}

/* ---------- слайдеры ---------- */
.mx-ctl{display:flex;gap:8px;flex:none}
.mx-ctl__b{width:44px;height:44px;border-radius:50%;border:1px solid var(--line-2);background:var(--sheet);color:var(--ink);
  font:700 18px/1 var(--text);cursor:pointer;display:grid;place-items:center;transition:background .15s,border-color .15s,opacity .15s}
.mx-ctl__b:hover:not(:disabled){border-color:var(--ink)}
.mx-ctl__b:disabled{opacity:.35;cursor:default}
.mx-ctl--dark .mx-ctl__b{background:transparent;border-color:rgba(246,239,225,.4);color:var(--paper)}
.mx-ctl--dark .mx-ctl__b:hover:not(:disabled){border-color:var(--paper);background:rgba(246,239,225,.08)}
.mx-ctl--dark .mx-ctl__b:focus-visible{outline-color:var(--paper)}
.mx-track{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;
  padding:6px 4px 16px;margin:0 -4px;scrollbar-width:thin;scrollbar-color:var(--line-2) transparent;scroll-padding-inline:4px}
.mx-track>*{flex:none;scroll-snap-align:start}
.mx-track:focus-visible{outline:2px solid var(--blue);outline-offset:2px;border-radius:8px}

/* ---------- 2. Кинохроника ---------- */
.mx-reel{background:var(--film);border-color:var(--film);color:var(--paper)}
.mx-reel__top,.mx-album__top{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px}
.mx-reel__note,.mx-album__note{font-size:14px;line-height:1.55;max-width:70ch}
.mx-reel__note{color:rgba(246,239,225,.82)}
.mx-reel .mx-track{scrollbar-color:#4a4740 transparent}
.mx-reel .mx-track:focus-visible{outline-color:var(--paper)}
.mx-film{width:250px;position:relative;background:#0e0e0d;border-radius:10px;padding:18px 0 14px;transition:box-shadow .18s}
.mx-film::before,.mx-film::after{content:"";position:absolute;left:6px;right:6px;height:12px;pointer-events:none;
  background:radial-gradient(closest-side,rgba(246,239,225,.5) 70%,transparent 76%) 0 50%/16px 9px repeat-x}
.mx-film::before{top:3px}.mx-film::after{top:calc(18px + (250px - 20px) * .75 + 2px)}
.mx-film:hover,.mx-film:focus-within{box-shadow:0 0 0 2px rgba(246,239,225,.55)}
.mx-film__play{display:block;color:inherit;text-decoration:none;cursor:pointer}
.mx-reel .mx-film__play:focus-visible{outline:2px solid var(--paper);outline-offset:2px}
.mx-film__frame{position:relative;margin:0 10px;aspect-ratio:4/3;border-radius:5px;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;
  background:radial-gradient(circle at 50% 50%,#45423b 0,#292723 55%,#171614 100%)}
.mx-film__frame::before{content:"";position:absolute;left:50%;top:50%;width:66%;aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;
  border:2px solid rgba(246,239,225,.42);outline:1.5px solid rgba(246,239,225,.2);outline-offset:9px;transition:transform .25s var(--ease)}
.mx-film__frame::after{content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(rgba(246,239,225,.22),rgba(246,239,225,.22)) center/100% 1.5px no-repeat,linear-gradient(rgba(246,239,225,.22),rgba(246,239,225,.22)) center/1.5px 100% no-repeat,
    radial-gradient(120% 90% at 50% 50%,transparent 60%,rgba(0,0,0,.45))}
.mx-film:hover .mx-film__frame::before{transform:translate(-50%,-50%) scale(1.06)}
.mx-film__frame img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:sepia(.25) contrast(1.02);transition:transform .3s var(--ease),filter .3s}
.mx-film:hover .mx-film__frame img{transform:scale(1.04);filter:none}
.mx-film.has-thumb .mx-film__frame::before{display:none}
.mx-film.has-thumb .mx-film__frame::after{background:radial-gradient(120% 90% at 50% 50%,transparent 45%,rgba(0,0,0,.55))}
.mx-film__num{position:relative;z-index:1;font:900 46px/1 var(--display);color:var(--paper);letter-spacing:-.01em;text-transform:uppercase}
.mx-film__num--w{font-size:24px;letter-spacing:.06em}
.mx-film__sc{position:relative;z-index:1;font:700 12.5px/1 var(--mono);letter-spacing:.14em;color:rgba(246,239,225,.85)}
/* на превью ролика крупный номер не нужен: метка в углу кадра, сам кадр открыт */
.mx-film.has-thumb .mx-film__sc{display:none}
.mx-film.has-thumb .mx-film__num{position:absolute;top:8px;left:8px;font:800 11px/1 var(--mono);letter-spacing:.1em;padding:5px 7px;border-radius:4px;background:rgba(14,14,13,.82);color:var(--paper)}
.mx-film__go{position:absolute;z-index:2;left:50%;bottom:10px;transform:translateX(-50%);display:inline-flex;align-items:center;gap:7px;white-space:nowrap;
  padding:5px 11px 5px 9px;border-radius:999px;background:var(--paper);color:var(--ink);font:700 11px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;
  box-shadow:0 4px 10px rgba(0,0,0,.35);transition:background .15s,color .15s}
.mx-film__go i{width:9px;height:10px;background:var(--red);clip-path:polygon(0 0,100% 50%,0 100%)}
.mx-film:hover .mx-film__go,.mx-film__play:focus-visible .mx-film__go{background:var(--red);color:#fff}
.mx-film:hover .mx-film__go i,.mx-film__play:focus-visible .mx-film__go i{background:#fff}
.mx-film__lbl{margin:16px 10px 0;background:var(--paper);color:var(--ink);border-radius:4px;padding:9px 11px 10px;display:grid;gap:2px;font:500 12px/1.45 var(--mono)}
.mx-film__lbl b{font-weight:800;font-size:12.5px;text-transform:uppercase;letter-spacing:.04em;overflow-wrap:anywhere}
.mx-film__lbl span{color:var(--muted);overflow-wrap:anywhere}

/* ---------- 3. Фотоархив ---------- */
.mx-album{background-color:#efe6d2}
.mx-album__note{color:var(--ink)}
.mx-track--ph{gap:30px;padding:16px 14px 20px;margin:0 -14px;align-items:flex-start;scroll-padding-inline:14px}
.mx-ph{--h:250px;width:min(calc(var(--h) * var(--ar) + 20px),82vw);display:flex;flex-direction:column;gap:14px}
.mx-ph__open{position:relative;display:block;width:100%;padding:0;border:0;background:none;cursor:zoom-in;transform:rotate(var(--r));transition:transform .22s var(--ease)}
.mx-ph__open:hover,.mx-ph__open:focus-visible{transform:rotate(0deg)}
.mx-ph__mount{display:block;padding:10px;background:#fffaf0;box-shadow:0 10px 18px -10px rgba(60,45,20,.45),0 1px 2px rgba(60,45,20,.18);overflow:hidden}
.mx-ph__mount img{width:100%;height:var(--h);object-fit:cover;filter:sepia(.18) contrast(1.02);transition:transform .3s var(--ease),filter .3s}
.mx-ph__open:hover img{transform:scale(1.04);filter:none}
.mx-ph__c{position:absolute;width:24px;height:24px;background:#2b2722;z-index:1}
.mx-ph__c--tl{left:-3px;top:-3px;clip-path:polygon(0 0,100% 0,0 100%)}
.mx-ph__c--tr{right:-3px;top:-3px;clip-path:polygon(0 0,100% 0,100% 100%)}
.mx-ph__c--bl{left:-3px;bottom:-3px;clip-path:polygon(0 0,100% 100%,0 100%)}
.mx-ph__c--br{right:-3px;bottom:-3px;clip-path:polygon(100% 0,100% 100%,0 100%)}
.mx-ph figcaption{display:grid;gap:4px;padding:0 4px}
.mx-ph__cap{font-weight:700;font-size:13.5px;line-height:1.4;overflow-wrap:anywhere}
.mx-ph__meta{font:500 11.5px/1.45 var(--mono);color:var(--muted);overflow-wrap:anywhere}
.mx-ph__src{font:600 12px/1.4 var(--mono);color:var(--blue);text-decoration:none;justify-self:start;border-bottom:1px solid rgba(26,79,160,.45)}
.mx-ph__src:hover{border-bottom-color:var(--blue)}

/* окно «кадр крупно» и окно плеера */
.mx-lb{border:0;padding:0;background:transparent;width:min(1120px,94vw);max-width:94vw;max-height:94vh;overflow:visible;color:var(--ink)}
.mx-lb::backdrop{background:rgba(22,20,16,.84)}
.mx-lb__in{position:relative;background:var(--paper);border-radius:14px;padding:16px;display:grid;gap:12px;max-height:94vh}
.mx-lb__img{background:#2a2824;border-radius:8px;display:grid;place-items:center;min-height:200px}
.mx-lb__img img{max-width:100%;max-height:68vh;width:auto;height:auto;object-fit:contain}
.mx-lb__cap{display:grid;gap:4px;padding:0 4px;font-size:14px}
.mx-lb__cap b{font-size:15px}
.mx-lb__cap span{font:500 12px/1.5 var(--mono);color:var(--muted)}
.mx-lb__cap a{font:600 12.5px/1.4 var(--mono);color:var(--blue);justify-self:start}
.mx-lb__x{position:absolute;top:-14px;right:-14px;width:44px;height:44px;border-radius:50%;border:0;background:var(--ink);color:var(--paper);font:400 26px/1 var(--text);cursor:pointer;z-index:2}
.mx-lb__nav{display:flex;align-items:center;justify-content:center;gap:16px}
.mx-lb__n{font:600 12.5px/1 var(--mono);color:var(--muted);min-width:5ch;text-align:center}
.mx-pl .mx-lb__in{background:var(--film);color:var(--paper)}
.mx-pl .mx-lb__x{background:var(--paper);color:var(--ink)}
.mx-pl__screen{aspect-ratio:16/9;width:100%;max-height:78vh;background:#000;border-radius:8px;overflow:hidden}
.mx-pl__screen iframe{display:block;width:100%;height:100%;border:0}
.mx-pl__cap{font:700 13px/1.4 var(--mono);letter-spacing:.04em;text-transform:uppercase;padding:0 4px}

/* ---------- 4. Путь к матчу: сетка с отводами, число колонок по данным (--n) ---------- */
.mx-grid-paper .mx-foot{margin-top:30px}
.mx-grid-paper{background-color:#fbf6ea;background-image:linear-gradient(var(--rule) 1px,transparent 1px),linear-gradient(90deg,var(--rule) 1px,transparent 1px);background-size:24px 24px;background-position:-1px -1px}
.mx-br{--bh:92px;--gap:28px;display:grid;grid-template-columns:repeat(var(--n,3),minmax(0,1fr)) minmax(0,1.25fr) repeat(var(--n,3),minmax(0,1fr));column-gap:var(--gap);align-items:stretch}
.mx-br__lane{display:contents}
.mx-br__team{display:none}
.mx-br__col{display:flex;flex-direction:column;min-width:0}
.mx-br__col--pad{visibility:hidden}
.mx-br__rh{min-height:calc(2.6em + 10px);display:flex;align-items:flex-end;justify-content:center;font:600 11px/1.3 var(--display);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);text-align:center;padding-bottom:10px;margin-bottom:12px;border-bottom:1.5px solid var(--ink);overflow-wrap:anywhere}
.mx-br__body{flex:1;display:flex;align-items:center}
.mx-br__stack{position:relative;width:100%;display:flex;flex-direction:column;gap:14px}
.mx-m{position:relative;height:var(--bh);display:grid;grid-template-rows:auto 1fr auto;padding:8px 10px;background:var(--sheet);border:1.5px solid var(--ink);border-radius:4px;
  text-decoration:none;color:var(--ink);transition:box-shadow .15s,background .15s}
.mx-m:hover{box-shadow:3px 3px 0 var(--ink)}
.mx-m__top{display:flex;align-items:center;gap:6px;font:500 11px/1 var(--mono);color:var(--muted)}
.mx-m__note{position:absolute;top:-8px;left:8px;padding:0 5px;background:#fbf6ea;font-size:9.5px;line-height:14px;letter-spacing:.06em;text-transform:uppercase;color:var(--red-ink);font-weight:700}
.mx-res{margin-left:auto;width:18px;height:18px;display:grid;place-items:center;border:1.5px solid currentColor;border-radius:3px;font:800 10.5px/1 var(--mono)}
.mx-res--w{color:var(--blue)}.mx-res--l{color:var(--red-ink)}.mx-res--d{color:var(--muted)}
.mx-m__sc{font:800 21px/1 var(--display);align-self:center;white-space:nowrap}
.mx-m__sc small{font:600 10px/1 var(--mono);color:var(--muted);margin-left:5px;letter-spacing:.04em}
.mx-m__op{display:flex;align-items:center;gap:6px;font-weight:700;font-size:12.5px;line-height:1.2;min-width:0}
.mx-m__op img{width:18px;height:12px;object-fit:cover;flex:none;box-shadow:0 0 0 1px rgba(0,0,0,.15)}
.mx-m__op span{min-width:0;overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
/* отводы: от каждого матча к центру, хребет у колонки из нескольких матчей, вход от предыдущей колонки */
.mx-m::after,.mx-br__stack.has-in::before,.mx-fin::before,.mx-fin::after{content:"";position:absolute;top:50%;border-top:1.5px solid var(--ink)}
.mx-m::after{width:calc(var(--gap) / 2 + 1.5px)}
.mx-br__lane--home .mx-m::after{left:100%}
.mx-br__lane--away .mx-m::after{right:100%}
.mx-br__stack.has-in::before{width:calc(var(--gap) / 2)}
.mx-br__lane--home .mx-br__stack.has-in::before{right:100%}
.mx-br__lane--away .mx-br__stack.has-in::before{left:100%}
.mx-br__stack.is-multi::after{content:"";position:absolute;top:calc(var(--bh) / 2);bottom:calc(var(--bh) / 2);border-left:1.5px solid var(--ink)}
.mx-br__lane--home .mx-br__stack.is-multi::after{right:calc(var(--gap) / -2)}
.mx-br__lane--away .mx-br__stack.is-multi::after{left:calc(var(--gap) / -2)}
.mx-fin::before,.mx-fin::after{width:calc(var(--gap) / 2 + 1.5px)}
.mx-fin::before{right:100%}.mx-fin::after{left:100%}
.mx-fin{position:relative;display:grid;justify-items:center;gap:6px;text-align:center;padding:18px 12px 24px;background:var(--sheet);border:2.5px solid var(--ink);border-radius:6px;box-shadow:5px 5px 0 var(--ink)}
.mx-fin__d{font:600 11.5px/1 var(--mono);color:var(--muted);letter-spacing:.06em}
.mx-fin__t{display:flex;align-items:center;gap:8px;font-weight:800;font-size:15px;max-width:100%;min-width:0}
.mx-fin__t span{min-width:0;overflow-wrap:anywhere}
.mx-fin__t img{width:24px;height:16px;object-fit:cover;flex:none;box-shadow:0 0 0 1px rgba(0,0,0,.15)}
.mx-fin__s{font:900 40px/1 var(--display)}
.mx-fin__v{font:500 11.5px/1.3 var(--mono);color:var(--muted);overflow-wrap:anywhere}
.mx-br__col--fin .mx-fin{margin:22px 0}
.mx-stamp--chmp{position:absolute;color:var(--red);top:calc(100% + 2px);left:50%;--rot:-4deg;transform:translate(-50%,-50%) rotate(var(--rot));background:var(--sheet);font-size:10.5px;letter-spacing:.14em;line-height:1.25;padding:5px 8px 4px 10px;box-shadow:none;border-width:2px;
  white-space:normal;width:max-content;max-width:calc(100% + 10px);text-align:center;overflow-wrap:anywhere}

/* ---------- 5-6. Группа и форма ---------- */
.mx-pair{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:16px;align-items:stretch}
.mx-pair--solo{grid-template-columns:minmax(0,1fr)}
.mx-pair>.mx-sec{display:flex;flex-direction:column}
.mx-pair>.mx-sec>.mx-tile{flex:1}
.mx-tbl{width:100%;border-collapse:collapse;font-size:14px}
.mx-label+.mx-tbl{margin-top:14px}
/* несколько групп - сеткой: каждая группа со своей таблицей и матчами */
.mx-grps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 40px}
.mx-grp{min-width:0}
@media (max-width:1100px){.mx-grps{grid-template-columns:minmax(0,1fr)}}
.mx-tbl th,.mx-tbl td{padding:10px 6px;text-align:center;border-bottom:1px solid var(--line)}
.mx-tbl thead th{font:600 11px/1.2 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);border-bottom:1.5px solid var(--ink);padding-top:0}
.mx-tbl tbody tr:last-child>*{border-bottom:1.5px solid var(--ink)}
.mx-tbl__n{width:28px;color:var(--muted);font:500 12.5px var(--mono)}
.mx-tbl .mx-tbl__team{text-align:left;font-weight:600;overflow-wrap:anywhere}
.mx-tbl__team img{display:inline-block;vertical-align:-2px;width:20px;height:14px;object-fit:cover;margin-right:10px;box-shadow:0 0 0 1px rgba(0,0,0,.15)}
.mx-tbl__team a{text-decoration:none}
.mx-tbl__team a:hover span{border-bottom:1px solid currentColor}
.mx-tbl td{font:500 14px var(--mono)}
.mx-tbl__g{white-space:nowrap}
.mx-tbl td.mx-tbl__p{font:800 15px var(--display)}
.mx-tbl sup{color:var(--red-ink);font-weight:800}
.mx-tbl__r.is-ours .mx-tbl__team span{font-weight:800;background:linear-gradient(transparent 52%,rgba(26,79,160,.2) 52%,rgba(26,79,160,.2) 92%,transparent 92%);padding:0 2px}
.mx-gms{display:grid;gap:2px;margin-top:10px}
.mx-gm a{display:grid;grid-template-columns:52px minmax(0,1fr) auto minmax(0,1fr);gap:12px;align-items:baseline;padding:7px 8px;border-radius:6px;text-decoration:none;font:500 13.5px/1.35 var(--mono);transition:background .15s}
.mx-gm a:hover{background:rgba(28,28,28,.06)}
.mx-gm__d{color:var(--muted);font-size:12px}
.mx-gm__h{text-align:right}
.mx-gm__h,.mx-gm__a{min-width:0;overflow-wrap:anywhere}
.mx-gm b{font:800 14px var(--display);min-width:3.2ch;text-align:center}
.mx-gm.is-both a{background:rgba(209,50,60,.08)}
.mx-gm.is-both b{color:var(--red-ink)}
.mx-gm:not(.is-one):not(.is-both) a{color:var(--muted)}

.mx-form{display:flex;flex-direction:column;gap:18px}
.mx-form__name{display:flex;align-items:center;gap:10px;font-weight:800;font-size:15px;margin-bottom:10px;min-width:0}
.mx-form__name img{width:24px;height:16px;object-fit:cover;flex:none;box-shadow:0 0 0 1px rgba(0,0,0,.15)}
.mx-form__name a,.mx-form__name span{text-decoration:none;min-width:0;overflow-wrap:anywhere}
.mx-form__none{font:500 13px/1.5 var(--mono);color:var(--muted);padding:10px 12px;border:1px dashed var(--line-2);border-radius:8px}
.mx-form__row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.mx-fs{display:grid;justify-items:center;gap:3px;text-decoration:none;padding:4px 2px 6px;border-radius:6px;transition:background .15s}
.mx-fs:hover{background:rgba(28,28,28,.06)}
.mx-fs__l{width:44px;height:44px;display:grid;place-items:center;font:900 19px/1 var(--display);border:2.5px solid currentColor;border-radius:6px;transform:rotate(-3deg);
  box-shadow:inset 0 0 0 2px var(--paper),inset 0 0 0 3.5px currentColor}
.mx-fs--w .mx-fs__l{color:var(--blue)}
.mx-fs--l .mx-fs__l{color:var(--red-ink);transform:rotate(4deg)}
.mx-fs--d .mx-fs__l{color:var(--muted)}
.mx-fs__s{font:800 13px/1.2 var(--mono);margin-top:4px;white-space:nowrap}
.mx-fs__o{font-size:11px;font-weight:600;line-height:1.2;text-align:center;hyphens:auto;overflow-wrap:anywhere;max-width:100%}
.mx-fs__y{font:500 10.5px/1.2 var(--mono);color:var(--muted)}
.mx-h2h{position:relative;margin-top:6px;padding:18px 18px 16px;background:var(--sheet);border:1px solid var(--line);border-radius:10px;
  background-image:linear-gradient(var(--sheet) 46px,transparent 46px),repeating-linear-gradient(transparent 0 27px,var(--rule) 27px 28px);background-position:0 0,0 6px}
.mx-h2h::before{content:"";position:absolute;left:0;right:0;top:44px;border-top:1.5px solid rgba(209,50,60,.55)}
.mx-h2h__tot{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:22px 0 12px}
.mx-h2h__tot div{display:grid;gap:2px;min-width:0}
.mx-h2h__tot b{font:900 28px/1 var(--display)}
.mx-h2h__tot div:last-child b{color:var(--blue)}
.mx-h2h__tot span{font:500 11.5px/1.3 var(--mono);color:var(--muted);overflow-wrap:anywhere}
.mx-h2h__ms{display:grid;gap:8px}
.mx-h2h__m{display:grid;gap:2px;text-decoration:none;padding:8px 10px;border:1.5px solid var(--ink);border-radius:4px;background:var(--sheet);transition:box-shadow .15s}
.mx-h2h__m:hover{box-shadow:3px 3px 0 var(--ink)}
.mx-h2h__d{font:500 11.5px/1.3 var(--mono);color:var(--muted)}
.mx-h2h__s{font-weight:700;font-size:15px;overflow-wrap:anywhere}
.mx-h2h__s b{font:900 16px var(--display);margin:0 4px}
.mx-h2h__txt{margin-top:10px;font-size:14px;line-height:1.5}
.mx-h2h__txt--none{margin-top:24px;font:500 13.5px/1.55 var(--mono)}
.mx-stamp--h2h{color:var(--red);top:-13px;right:14px;--rot:4deg;background:var(--sheet)}

/* ---------- 7. Турнир ---------- */
.mx-tour{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:36px}
.mx-tour__ss{padding-left:36px;border-left:1px dashed var(--line-2)}
.mx-tour--solo{grid-template-columns:minmax(0,1fr)}
.mx-tour--solo .mx-tour__ss{padding-left:0;border-left:0}
.mx-scs{display:grid;gap:4px;margin-top:12px}
.mx-sc{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:14px;align-items:center;padding:8px 0;border-bottom:1px dotted var(--line-2)}
.mx-sc:last-child{border-bottom:0}
.mx-sc__ava{width:44px;height:44px;border-radius:50%;overflow:hidden;display:grid;place-items:center;background:#fffcf3;box-shadow:0 0 0 1.5px var(--blue);color:var(--blue);font:800 13px var(--display)}
.mx-sc__ava img{width:100%;height:100%;object-fit:cover;filter:grayscale(1) sepia(.25)}
.mx-sc__n{display:grid;gap:6px;min-width:0}
.mx-sc__n a,.mx-sc__nm{font-weight:700;font-size:15px;text-decoration:none;overflow-wrap:anywhere}
.mx-sc__n a:hover{text-decoration:underline}
.mx-sc__g{font:900 24px/1 var(--display)}
.mx-sc--top{grid-template-columns:64px minmax(0,1fr) auto;padding:6px 0 14px}
.mx-sc--top .mx-sc__ava{width:64px;height:64px}
.mx-sc--top .mx-sc__n a,.mx-sc--top .mx-sc__nm{font-size:17px}
.mx-sc--top .mx-sc__g{font-size:40px;color:var(--blue)}
.mx-tally{display:flex;flex-wrap:wrap;gap:8px;align-items:center;min-height:14px}
.mx-tally__g,.mx-tally__r{position:relative;display:inline-flex;gap:3px}
.mx-tally i{width:2px;height:14px;background:var(--ink);border-radius:1px;opacity:.8}
.mx-tally__g::after{content:"";position:absolute;left:-3px;right:-3px;top:50%;border-top:2px solid var(--red);transform:rotate(-24deg)}
.mx-tabs{display:grid;grid-template-columns:repeat(auto-fill,minmax(66px,1fr));gap:8px 6px;margin-top:14px}
.mx-tab{display:block;text-align:center;padding:9px 4px 8px;font:700 13px/1 var(--mono);text-decoration:none;color:var(--ink);background:var(--sheet);
  border:1px solid var(--line-2);border-bottom-width:3px;border-radius:8px 8px 3px 3px;transition:border-color .15s,background .15s}
a.mx-tab:hover{border-color:var(--ink)}
.mx-tab.is-cur{background:var(--blue);border-color:#123a78;color:#fff}

/* ---------- 8. Статьи (газетные вырезки) ---------- */
.mx-clips{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:28px;padding:10px 6px 6px;align-items:start}
.mx-clip{position:relative;padding:30px 26px 34px;background:#f3eddf;color:var(--ink);transform:rotate(var(--r));min-width:0;
  background-image:repeating-linear-gradient(90deg,rgba(60,45,20,.025) 0 1px,transparent 1px 4px);
  filter:drop-shadow(0 8px 12px rgba(60,45,20,.18)) drop-shadow(0 1px 1px rgba(60,45,20,.15));
  -webkit-mask:conic-gradient(from 135deg at top,#0000,#000 1deg 89deg,#0000 90deg) top/12px 51% repeat-x,conic-gradient(from -45deg at bottom,#0000,#000 1deg 89deg,#0000 90deg) bottom/12px 51% repeat-x;
          mask:conic-gradient(from 135deg at top,#0000,#000 1deg 89deg,#0000 90deg) top/12px 51% repeat-x,conic-gradient(from -45deg at bottom,#0000,#000 1deg 89deg,#0000 90deg) bottom/12px 51% repeat-x;
  transition:transform .22s var(--ease)}
.mx-clip:hover,.mx-clip:focus-within{transform:rotate(0deg)}
.mx-clip__img{width:100%;aspect-ratio:16/9;object-fit:cover;margin-bottom:16px;filter:grayscale(1) sepia(.3) contrast(1.05)}
.mx-clip__k{font:600 11px/1.3 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);padding-bottom:10px;border-bottom:3px double var(--ink)}
.mx .mx-clip__h{font:600 27px/1.12 var(--news);text-transform:uppercase;letter-spacing:.005em;margin-top:14px;color:var(--ink);overflow-wrap:anywhere}
.mx-clip__h a{text-decoration:none}
.mx-clip__h a:hover{text-decoration:underline;text-decoration-thickness:2px}
.mx-clip__l{font-size:15px;line-height:1.55;margin-top:12px}
.mx-clip__f{font:600 12px/1.4 var(--mono);margin-top:16px;padding-top:10px;border-top:1px solid var(--line-2)}
.mx-clip__f a{color:var(--blue);text-decoration:none}

/* ---------- 9. Теги (каталожные карточки) ---------- */
.mx-cards{display:flex;flex-wrap:wrap;gap:16px}
.mx-card{flex:1 1 210px;min-width:0;position:relative;border:1px solid var(--line);border-radius:6px;padding:16px 18px 40px;
  background:linear-gradient(#fffdf7,#fffdf7) 0 0/100% 46px no-repeat,repeating-linear-gradient(transparent 0 31px,var(--rule) 31px 32px) 0 46px/100% 32px #fffdf7;box-shadow:0 1px 0 var(--line)}
.mx-card::after{content:"";position:absolute;left:50%;bottom:12px;width:14px;height:14px;margin-left:-7px;border-radius:50%;background:#f4f4f4;box-shadow:inset 0 1px 2px rgba(0,0,0,.25)}
.mx .mx-card__h{font:600 11.5px/1.3 var(--display);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding-bottom:10px;border-bottom:2px solid rgba(209,50,60,.6)}
.mx-card__l{margin-top:2px}
.mx-card__l li{min-height:32px;display:flex;align-items:center}
.mx-card__l a,.mx-card__l span{font-weight:700;font-size:14.5px;line-height:1.2;text-decoration:none;min-width:0;overflow-wrap:anywhere}
.mx-card__l a::before{content:"→ ";color:var(--blue);font-family:var(--mono)}
.mx-card__l a:hover{text-decoration:underline}

/* ---------- заглушки (данных нет): штамп «скоро», ничего не нажимается и не реагирует на наведение ---------- */
.mx-film .mx-stamp{top:10px;left:10px;color:var(--red-lite);--rot:-7deg;opacity:.95}
.mx-film--stub{cursor:default}
.mx-film--stub:hover{box-shadow:none}
.mx-film--stub:hover .mx-film__frame::before{transform:translate(-50%,-50%)}
.mx-ph--stub{--h:210px}
.mx-ph--stub .mx-ph__open,.mx-ph--stub .mx-ph__open:hover{cursor:default;transform:rotate(var(--r))}
.mx-ph__blank{position:relative;display:grid;place-items:center;width:100%;height:var(--h);
  background:#efe7d4 repeating-linear-gradient(45deg,rgba(60,45,20,.06) 0 2px,transparent 2px 12px)}
.mx-ph__blank i{position:relative;width:58px;height:40px;border:2px solid rgba(95,88,75,.42);border-radius:7px}
.mx-ph__blank i::before{content:"";position:absolute;left:50%;top:50%;width:18px;height:18px;margin:-9px 0 0 -9px;border:2px solid rgba(95,88,75,.42);border-radius:50%}
.mx-ph__blank i::after{content:"";position:absolute;left:9px;top:-8px;width:16px;height:6px;border:2px solid rgba(95,88,75,.42);border-bottom:0;border-radius:3px 3px 0 0}
.mx-stamp--ph{top:20px;right:18px;color:var(--red);--rot:6deg;background:#efe7d4}
.mx-ph--stub .mx-ph__cap{font:600 12px/1.4 var(--mono);color:var(--muted);text-transform:uppercase;letter-spacing:.1em}
.mx-stamp--clip{color:var(--red);top:22px;right:18px;--rot:9deg;box-shadow:none}
.mx-clips--stub{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}
.mx-clip--stub:hover{transform:rotate(var(--r))}
.mx-clip--stub .mx-clip__f{color:var(--muted);font-weight:500}

/* ---------- адаптив ---------- */
@media (min-width:1101px){
  /* форма без таблицы группы - во всю ширину: две команды и личные встречи в ряд */
  .mx-pair--solo .mx-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr)) minmax(0,1.1fr);column-gap:28px;row-gap:0;align-items:start}
  .mx-pair--solo .mx-form__foot{grid-column:1/3;grid-row:2}
  .mx-pair--solo .mx-h2h{grid-column:3;grid-row:1/3;margin-top:0}
}
@media (max-width:1100px){
  .mx-hod{grid-template-columns:minmax(0,1fr) minmax(0,1.25fr)}
  .mx-hod--solo{grid-template-columns:minmax(0,640px)}
  .mx-paper{width:calc(100% - 16px);padding:22px 18px 20px;font-size:12.5px}
  .mx-chart{padding:20px}
  .mx-plot{margin:30px 24px 0}.mx-plot__x{margin:26px 24px 0}
  .mx-pair{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr)}
  .mx-pair--solo{grid-template-columns:minmax(0,1fr)}
  .mx-tbl th,.mx-tbl td{padding:9px 4px}
  .mx-gm a{grid-template-columns:44px minmax(0,1fr) auto minmax(0,1fr);gap:8px;font-size:12.5px}
  .mx-tour{gap:24px}.mx-tour__ss{padding-left:24px}
  .mx-tour--solo .mx-tour__ss{padding-left:0}
  .mx-br{--gap:20px;--bh:96px}
  .mx-m{padding:7px 8px}
  .mx-m__op{font-size:11.5px}
  .mx-m__op img{display:none}
  .mx-fin__s{font-size:32px}
  .mx-fin__t{font-size:13px}
}
@media (max-width:900px){
  .mx-hod,.mx-pair{grid-template-columns:minmax(0,1fr)}
  .mx-tour{grid-template-columns:minmax(0,1fr);gap:22px}
  .mx-tour__ss{padding-left:0;border-left:0;padding-top:20px;border-top:1px dashed var(--line-2)}
  .mx-tour--solo .mx-tour__ss{padding-top:0;border-top:0}
  .mx-paper{max-width:520px;font-size:13px}
}
/* сетка пути на узком экране (и широкая сетка из 4+ колонок уже на 1280) - две колонки команд, финал под ними */
@media (max-width:1280px){
  .mx-br--wide{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:14px;row-gap:0}
  .mx-br--wide .mx-br__lane{display:flex;flex-direction:column;gap:14px;min-width:0;position:relative;padding-bottom:22px}
  .mx-br--wide .mx-br__lane--home{order:1}.mx-br--wide .mx-br__lane--away{order:2}
  .mx-br--wide .mx-br__lane .mx-br__col{order:0!important}
  .mx-br--wide .mx-br__col--pad{display:none}
  .mx-br--wide .mx-br__team{display:flex;align-items:center;gap:8px;font-weight:800;font-size:15px;min-width:0}
  .mx-br--wide .mx-br__team img{width:24px;height:16px;object-fit:cover;flex:none;box-shadow:0 0 0 1px rgba(0,0,0,.15)}
  .mx-br--wide .mx-br__team a,.mx-br--wide .mx-br__team span{text-decoration:none;min-width:0;overflow-wrap:anywhere}
  .mx-br--wide .mx-br__rh{min-height:0;justify-content:flex-start;text-align:left;margin-bottom:8px;padding-bottom:6px;border-bottom-width:1px}
  .mx-br--wide .mx-br__col--fin{order:3!important;grid-column:1/-1;margin-top:8px}
  .mx-br--wide .mx-br__col--fin .mx-br__rh{display:none}
  .mx-br--wide .mx-br__stack{gap:10px}
  .mx-br--wide .mx-m::after,.mx-br--wide .mx-br__stack::before,.mx-br--wide .mx-br__stack::after,.mx-br--wide .mx-fin::before,.mx-br--wide .mx-fin::after{display:none}
  .mx-br--wide .mx-br__lane::after{content:"↓";position:absolute;left:50%;bottom:-4px;transform:translateX(-50%);font:700 18px/1 var(--text);color:var(--ink)}
  .mx-br--wide .mx-m__op img{display:block}
  .mx-br--wide .mx-fin{max-width:420px;width:100%;margin:0 auto 18px}
}
@media (max-width:860px){
  .mx-br{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:14px;row-gap:0}
  .mx-br__lane{display:flex;flex-direction:column;gap:14px;min-width:0;position:relative;padding-bottom:22px}
  .mx-br__lane--home{order:1}.mx-br__lane--away{order:2}
  .mx-br__lane .mx-br__col{order:0!important}
  .mx-br__col--pad{display:none}
  .mx-br__team{display:flex;align-items:center;gap:8px;font-weight:800;font-size:15px;min-width:0}
  .mx-br__team img{width:24px;height:16px;object-fit:cover;flex:none;box-shadow:0 0 0 1px rgba(0,0,0,.15)}
  .mx-br__team a,.mx-br__team span{text-decoration:none;min-width:0;overflow-wrap:anywhere}
  .mx-br__rh{min-height:0;justify-content:flex-start;text-align:left;margin-bottom:8px;padding-bottom:6px;border-bottom-width:1px}
  .mx-br__col--fin{order:3!important;grid-column:1/-1;margin-top:8px}
  .mx-br__col--fin .mx-br__rh{display:none}
  .mx-br__stack{gap:10px}
  .mx-m::after,.mx-br__stack::before,.mx-br__stack::after,.mx-fin::before,.mx-fin::after{display:none}
  .mx-br__lane::after{content:"↓";position:absolute;left:50%;bottom:-4px;transform:translateX(-50%);font:700 18px/1 var(--text);color:var(--ink)}
  .mx-m__op img{display:block}
  .mx-fin{max-width:420px;width:100%;margin:0 auto 18px}
  .mx-clips{grid-template-columns:minmax(0,1fr);gap:20px;max-width:560px}
}
@media (max-width:720px){
  .mx-sec{scroll-margin-top:64px;padding-top:36px}
}
@media (max-width:600px){
  .mx__in{padding:0 16px}
  .mx .mx-head h2{font-size:22px}
  .mx-tile{padding:16px 14px;border-radius:14px}
  .mx-sheet{padding:16px 10px 18px}
  .mx-paper{width:calc(100% - 16px);padding:20px 14px 18px;font-size:12px}
  .mx-pr__title{font-size:13px;letter-spacing:.2em}
  .mx-gl{grid-template-columns:44px minmax(0,1fr) auto;gap:8px}
  .mx-gl__w small{display:block;margin-left:0}
  .mx-stamp{font-size:12px;padding:6px 9px 5px 11px}
  .mx-stamp--sm{font-size:10px}

  .mx-chart{padding:16px 14px}
  .mx-chart__big{font-size:34px}
  .mx-chart__txt{font-size:14px}
  .mx-plot{height:200px;margin:30px 22px 0}
  .mx-plot__x{margin:22px 22px 0}
  .mx-plot__x span:nth-child(even){display:none}
  .mx-mk__t{font-size:10.5px}
  .mx-facts dd{font-size:20px}
  .mx-reel__top,.mx-album__top{flex-direction:column;gap:12px}
  .mx-reel__note,.mx-album__note{font-size:13.5px}
  .mx-film{width:220px}
  .mx-film::after{top:calc(18px + (220px - 20px) * .75 + 2px)}
  .mx-film__num:not(.mx-film__num--w){font-size:40px}
  .mx-film__num--w{font-size:21px}
  .mx-ph{--h:190px}
  .mx-track--ph{gap:22px}
  .mx-br{column-gap:10px;--bh:90px}
  .mx-m__sc{font-size:18px}
  .mx-tbl{font-size:13px}
  .mx-tbl th,.mx-tbl td{padding:9px 3px}
  .mx-tbl td{font-size:13px}
  .mx-tbl__team img{margin-right:6px}
  .mx-tbl__n{width:18px}
  .mx-gm a{grid-template-columns:42px minmax(0,1fr) auto minmax(0,1fr);gap:8px;font-size:12.5px;padding:7px 4px}
  .mx-form__row{gap:4px}
  .mx-fs__l{width:40px;height:40px;font-size:17px}
  .mx-fs__o{font-size:10.5px;letter-spacing:-.01em}
  .mx-h2h{padding:16px 14px 14px}
  .mx-h2h__tot b{font-size:24px}
  .mx-sc--top .mx-sc__g{font-size:32px}
  .mx-tabs{grid-template-columns:repeat(auto-fill,minmax(58px,1fr))}
  .mx-clip{padding:26px 18px 30px}
  .mx .mx-clip__h{font-size:23px}
  .mx-cards{gap:10px}
  .mx-card{flex-basis:140px;padding:14px 12px 36px}
  .mx-card__l a,.mx-card__l span{font-size:13.5px}
}

@media (prefers-reduced-motion:reduce){
  .mx *,.mx *::before,.mx *::after{animation:none!important;transition:none!important}
  .mx-sheet.is-armed .mx-ln{visibility:visible}
  .mx-sheet .mx-stamp{opacity:.86}
  .mx-plot.is-armed .mx-mk{opacity:1}
}

/* ==========================================================================================================
   ПЕРВЫЙ ЭКРАН И РАССТАНОВКА (matches.partials.lower.protokol-hero и protokol-board, с 12.10.2026).
   Перенос утверждённого макета output/match-page/r2-protokol (screen.css, вариант А «Красно-синий карандаш»).
   Первый экран - «папка с делом матча» на тёмном столе; расстановка - схема на миллиметровке, снимки с уголками.
   Всё под .mx--protokol и классами mxh-* (первый экран) и mxb-* (расстановка). Токены (--paper, --sheet, --line, --ink,
   --red, --blue, --mono, --display, --news ...) берутся у .mx из начала этого файла; Unbounded и Oswald - из match-lineups.css.
   Подменю сайта подстраивается через body:has(.mx--protokol.mx-hero): только на страницах с этим первым экраном.
   ========================================================================================================== */
/* ========================================================================
   ПЕРВЫЙ ЭКРАН: «папка с делом матча» на тёмном столе
   ======================================================================== */
.mx--protokol.mx-hero{--kraft:#dccb9d; --kraft-d:#c8b583; --kraft-l:#eadfbc;
  position:relative;padding:20px 0 54px;overflow:hidden;color:var(--paper);
  background:
    radial-gradient(80% 60% at 50% -10%,rgba(246,239,225,.12),transparent 70%),
    repeating-linear-gradient(90deg,rgba(255,255,255,.014) 0 2px,transparent 2px 6px),
    linear-gradient(#2d2a25,#1f1d1a);}
.mxh-in{max-width:var(--rd-container,1640px);margin:0 auto;padding:0 40px}
/* крошки */
.mxh-crumbs ol{display:flex;flex-wrap:wrap;gap:3px 0;font:500 12.5px/1.45 var(--mono);color:rgba(246,239,225,.78)}
.mxh-crumbs li{display:flex;align-items:center}
.mxh-crumbs li+li::before{content:"/";margin:0 10px;color:rgba(246,239,225,.38)}
.mxh-crumbs a{color:inherit;text-decoration:none;border-bottom:1px solid rgba(246,239,225,.28);transition:color .15s,border-color .15s}
.mxh-crumbs a:hover{color:#fff;border-bottom-color:#fff}
/* папка: ушко с названием розыгрыша, крафтовый корпус, под листом виден край ещё двух листов */
.mxh-folder{position:relative;margin-top:16px}
.mx-hero .mxh-tab{position:relative;z-index:2;display:inline-block;margin-left:22px;padding:11px 32px 10px;font:700 12.5px/1.25 var(--mono);letter-spacing:.1em;text-transform:uppercase;
  color:#2b2722;text-decoration:none;background:linear-gradient(var(--kraft-l),var(--kraft));
  clip-path:polygon(0 100%,12px 0,calc(100% - 12px) 0,100% 100%);transition:color .15s}
.mx-hero a.mxh-tab:hover{color:var(--blue)}
.mx-hero .mxh-tab:focus-visible{outline:2px solid #2b2722;outline-offset:-5px;clip-path:none;border-radius:6px 6px 0 0}
.mxh-body{position:relative;z-index:1;margin-top:-1px;padding:20px 20px 24px;border-radius:0 16px 16px 16px;
  background:
    repeating-linear-gradient(100deg,rgba(90,70,30,.05) 0 1px,transparent 1px 7px),
    linear-gradient(var(--kraft),var(--kraft-d));
  box-shadow:0 34px 56px -26px rgba(0,0,0,.75),inset 0 1px 0 rgba(255,255,255,.35),inset 0 -2px 0 rgba(90,70,30,.25)}
.mxh-stack{position:relative}
.mxh-stack::before, .mxh-stack::after{content:"";position:absolute;inset:0;border-radius:3px;background:#f1e9d3;box-shadow:0 1px 2px rgba(60,45,20,.25)}
.mxh-stack::before{transform:translate(9px,-6px) rotate(.5deg)}
.mxh-stack::after{transform:translate(-7px,-3px) rotate(-.4deg);background:#e8dec2}
.mxh-leaf{position:relative;z-index:1;padding:26px 32px 30px;color:var(--ink);background-color:var(--sheet);border-radius:3px;
  background-image:radial-gradient(120% 50% at 50% 0,rgba(60,45,20,.05),transparent 60%),repeating-linear-gradient(0deg,rgba(60,45,20,.018) 0 1px,transparent 1px 3px);
  box-shadow:0 14px 22px -14px rgba(60,45,20,.45),0 1px 2px rgba(60,45,20,.2)}
.mxh-top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 24px;padding-bottom:14px;border-bottom:3px double #8f846c}
.mx .mxh-h1{margin:0;flex:1 1 auto;min-width:0;font:800 clamp(18px,2.4vw,32px)/1.18 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink);overflow-wrap:anywhere}
.mxh-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:26px;margin-top:22px;align-items:stretch}
/* табло: две строки, у каждой команды своя подвешенная плашка с цифрой */
.mxh-board{position:relative;padding:4px 26px;border-radius:12px;color:var(--paper);min-width:0;
  background:radial-gradient(120% 80% at 50% 0,#2b2925,#1c1c1c 70%);
  box-shadow:inset 0 0 0 1px rgba(246,239,225,.08),0 22px 32px -22px rgba(0,0,0,.75)}
.mxh-board::before{content:"";position:absolute;inset:8px;border:1.5px solid rgba(246,239,225,.16);border-radius:7px;pointer-events:none}
.mxh-row{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:22px;align-items:center;padding:20px 8px}
.mxh-row+.mxh-row{border-top:1.5px dashed rgba(246,239,225,.2)}
.mxh-flag{--fh:clamp(38px,4.2vw,56px);display:grid;place-items:center;width:calc(var(--fh) * 2 + 10px);padding:5px;background:#fffaf0;box-shadow:0 7px 12px -6px rgba(0,0,0,.8);transform:rotate(-2.2deg)}
.mxh-row--away .mxh-flag{transform:rotate(1.8deg)}
.mxh-flag img{display:block;height:var(--fh);width:auto;max-width:100%}
.mxh-team{min-width:0}
.mxh-team__name{display:inline-block;font:800 clamp(16px,1.9vw,26px)/1.12 var(--display);text-transform:uppercase;letter-spacing:.01em;color:var(--paper);text-decoration:none;overflow-wrap:anywhere;transition:color .15s}
a.mxh-team__name:hover{color:#fff;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px}
.mxh-goals{display:flex;flex-wrap:wrap;gap:4px 22px;margin-top:11px;font:500 14px/1.35 var(--mono)}
.mxh-goals li{display:flex;align-items:baseline;gap:8px;min-width:0}
.mxh-goals b{font-weight:800;color:var(--red-lite);white-space:nowrap}
.mxh-goals a{color:var(--paper);text-decoration:none;border-bottom:1px dotted rgba(246,239,225,.55);transition:border-color .15s}
.mxh-goals a:hover{border-bottom-color:var(--paper)}
.mxh-goals small{font-size:11.5px;color:rgba(246,239,225,.66)}
.mxh-nogoal{margin:0;padding:13px 8px 15px;border-top:1.5px dashed rgba(246,239,225,.2);text-align:center;font:500 13.5px/1.4 var(--mono);letter-spacing:.04em;color:rgba(246,239,225,.78)}
/* плашка с цифрой: белая эмаль, отверстия под крючки */
.mxh-plate{position:relative;flex:none;display:grid;place-items:center;width:clamp(66px,7vw,96px);height:clamp(80px,8.6vw,118px);border-radius:9px;color:#1c1c1c;
  background:linear-gradient(#fffcf3,#ebe2cb);transform-origin:50% 0;
  box-shadow:0 6px 0 -1px #050505,0 14px 18px -8px rgba(0,0,0,.75),inset 0 0 0 2px rgba(28,28,28,.14)}
.mxh-plate--wide{width:clamp(96px,10.5vw,142px)}
.mxh-row--home .mxh-plate{--tilt:-1.1deg}
.mxh-row--away .mxh-plate{--tilt:.9deg}
.mxh-plate::before, .mxh-plate::after{content:"";position:absolute;top:9px;width:7px;height:7px;border-radius:50%;background:#26231f;box-shadow:inset 0 1px 1px rgba(0,0,0,.7),0 1px 0 rgba(255,255,255,.7)}
.mxh-plate::before{left:12px}
.mxh-plate::after{right:12px}
.mxh-plate i{margin-top:9px;font:900 clamp(44px,5.2vw,70px)/1 var(--display);font-style:normal;letter-spacing:-.02em}
.mxh-plate{transform:rotate(var(--tilt,0deg))}
/* карточка матча: каталожная карточка с линовкой и штампами */
.mxh-grid--solo{grid-template-columns:minmax(0,1fr)}
.mxh-card{position:relative;align-self:start;min-width:0;padding:18px 22px 38px;background-color:#fffdf7;border:1px solid var(--line);border-radius:6px;box-shadow:0 1px 0 var(--line),0 12px 20px -16px rgba(60,45,20,.55)}
.mxh-card::after{content:"";position:absolute;left:50%;bottom:12px;width:14px;height:14px;margin-left:-7px;border-radius:50%;background:#d9cdb2;box-shadow:inset 0 1px 2px rgba(0,0,0,.3)}
.mx .mxh-card__h{margin:0;padding-bottom:10px;font:600 11.5px/1.3 var(--display);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);border-bottom:2px solid rgba(209,50,60,.6)}
.mxh-flds{margin:0}
.mxh-fld{display:flex;align-items:baseline;min-height:38px;padding:9px 0 8px;border-bottom:1px solid var(--rule)}
.mxh-fld dt{flex:none;font:500 11.5px/1.3 var(--mono);text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.mxh-fld i{flex:1;min-width:14px;margin:0 9px;border-bottom:2px dotted #cbbf9f;transform:translateY(-4px)}
.mxh-fld dd{margin:0;min-width:0;text-align:right;font:700 14px/1.35 var(--mono);overflow-wrap:anywhere}
.mxh-fld a{color:var(--blue);text-decoration:none;border-bottom:1px solid rgba(26,79,160,.45);transition:border-color .15s}
.mxh-fld a:hover{border-bottom-color:var(--blue)}
.mxh-stamps{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:10px 16px;margin:0}
.mxh-stamp{display:inline-block;font:800 17px/1 var(--mono);letter-spacing:.18em;text-transform:uppercase;white-space:nowrap;padding:9px 13px 8px 15px;
  border:2.5px solid currentColor;border-radius:6px;box-shadow:inset 0 0 0 2px #fffdf7,inset 0 0 0 3.5px currentColor;transform:rotate(var(--rot,-5deg));opacity:.9}
.mxh-stamp--red{color:var(--red);--rot:-5deg}
.mxh-stamp--blue{color:var(--blue);--rot:3deg}
.mxh-stamp--sm{font-size:11px;letter-spacing:.14em;padding:6px 9px 5px 11px;border-width:2px;box-shadow:none}
/* появление: плашки вешаются на крючки, штамп ставится, голы допечатываются (только при включённой анимации) */
@media (prefers-reduced-motion:no-preference){
  .mxh-plate{animation:mxhHang .46s cubic-bezier(.22,1,.36,1) both}
  .mxh-row--away .mxh-plate{animation-delay:.1s}
  @keyframes mxhHang{0%{opacity:0;transform:translateY(-18px) rotate(-5deg)}55%{opacity:1;transform:translateY(2px) rotate(1.6deg)}100%{opacity:1;transform:rotate(var(--tilt,0deg))}}
  .mxh-stamp{animation:mxhStamp .26s cubic-bezier(.2,1.5,.4,1) .5s both}
  .mxh-stamp+.mxh-stamp{animation-delay:.66s}
  @keyframes mxhStamp{from{opacity:0;transform:rotate(var(--rot,-5deg)) scale(1.7)}to{opacity:.9;transform:rotate(var(--rot,-5deg)) scale(1)}}
  .mxh-goals li{animation:mxhType .24s steps(12,end) both;animation-delay:calc(.34s + var(--n,0) * 70ms)}
  .mxh-goals li:nth-child(2){--n:1}
  .mxh-goals li:nth-child(3){--n:2}
  .mxh-goals li:nth-child(4){--n:3}
  .mxh-goals li:nth-child(5){--n:4}
  .mxh-goals li:nth-child(n+6){--n:5}
  @keyframes mxhType{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 -3px 0 0)}}
}
/* подменю сайта под тему: вкладки-разделители папки, машинопись. Только когда на странице есть этот первый экран */
body:has(.mx--protokol.mx-hero) .rd-subnav-wrap{background:#efe6d2;border-bottom:1.5px solid #1c1c1c;box-shadow:none}
body:has(.mx--protokol.mx-hero) .rd-subnav{gap:3px;align-items:flex-end;padding-top:10px}
body:has(.mx--protokol.mx-hero) .rd-subnav a{padding:11px 16px 10px;border:1.5px solid transparent;border-bottom:0;border-radius:8px 8px 0 0;margin-bottom:-1.5px;
  font:700 12px/1 "JB Mono","JetBrains Mono",ui-monospace,Consolas,monospace;letter-spacing:.09em;color:#5f584b;transition:color .15s,background .15s}
body:has(.mx--protokol.mx-hero) .rd-subnav a:hover{color:#1c1c1c;background:rgba(255,252,243,.6)}
body:has(.mx--protokol.mx-hero) .rd-subnav a.is-active{color:#1a4fa0;background:#fffcf3;border-color:#1c1c1c}
/* ========================================================================
   РАССТАНОВКА: общие части обоих вариантов
   ======================================================================== */
.mx--protokol.mx-boardsec{padding:40px 0 8px;scroll-margin-top:130px}
/* значки событий */
.mxb-mk{display:inline-block;flex:none;width:12px;height:12px;vertical-align:-2px}
.mxb-mk--ball{border-radius:50%;border:1.6px solid #1c1c1c;background:radial-gradient(circle,#1c1c1c 0 27%,#fffcf3 30%)}
.mxb-mk--own{border-radius:50%;border:1.6px solid var(--red-ink);background:radial-gradient(circle,var(--red-ink) 0 27%,#fffcf3 30%)}
.mxb-mk--yc{width:9px;height:12px;border-radius:1.5px;background:#f2c230;border:1px solid #9a7a10}
.mxb-mk--rc{width:9px;height:12px;border-radius:1.5px;background:var(--red);border:1px solid #8a1a22}
.mxb-marks{position:absolute;z-index:4;left:calc(100% + 2px);top:15px;display:flex;flex-direction:column;gap:3px;align-items:center}
.mxb-marks .mxb-mk{box-shadow:0 0 0 1.5px var(--sheet)}
.mxb-marks--s{position:static;display:inline-flex;flex-direction:row;gap:3px;padding:0;margin-left:6px;vertical-align:baseline;background:none;box-shadow:none}
/* ключ к значкам: только то, что есть в матче */
.mxb-key{display:flex;flex-wrap:wrap;gap:6px 20px;margin-top:14px;font:500 12px/1.4 var(--mono);color:var(--muted)}
.mxb-key span{display:inline-flex;align-items:center;gap:6px}
.mxb-key .k{display:inline-grid;place-items:center;width:18px;height:18px;border-radius:50%;background:var(--red);color:#fff;font:800 10px/1 var(--mono);transform:rotate(-6deg)}
.mxb-key .o{font:800 11.5px/1 var(--mono);color:var(--red-ink)}
.mxb-key .o--in{color:var(--blue)}
/* фишка: точка на поле, лицо по центру точки, подпись под ним */
.mxb-chip{position:absolute;z-index:2;width:0;height:0;color:var(--ink);text-decoration:none;outline:none}
.mxb-chip--home{--tc:var(--blue);--tl:var(--blue)}
.mxb-chip--away{--tc:var(--red-ink);--tl:var(--red)}
.mxb-chip:hover, .mxb-chip:focus-visible, .mxb-chip.is-hot{z-index:6}
.mxb-chip__in{position:absolute;left:0;top:0;width:0;height:0}
.mxb-chip__face{position:absolute;left:calc(var(--w) / -2);top:calc(var(--h) / -2);width:var(--w);height:var(--h)}
.mxb-chip__plate{position:absolute;left:0;top:calc(var(--h) / 2 + 5px);transform:translateX(calc(-50% + var(--shift,0px)));display:block;white-space:nowrap;
  padding:3px 6px 3px;font:700 var(--pfs,var(--fit-pf,var(--pf,11.5px)))/1.1 var(--mono);color:var(--ink);background:var(--sheet);border:1px solid var(--line-2);border-bottom:2px solid var(--tl);
  transition:background .15s,color .15s}
.mxb-chip.no-ini .pi{display:none}
/* подпись над лицом: в тесном ряду соседние фамилии встают «лесенкой» (ставит подгонка в match-lower-protokol.js);
   отступ 7 px — над номером и «К», которые выступают за верх снимка */
.mxb-chip.is-up .mxb-chip__plate{top:auto;bottom:calc(var(--h) / 2 + 7px)}
.mxb-chip.off-wrap .mxb-chip__off, .mx-board--a .mxb-chip__off{display:block;margin:2px 0 0;text-align:center}
.mxb-chip.is-tight .mxb-chip__plate{padding:2px 3px}
.mxb-chip__off{margin-left:5px;font-weight:800;color:var(--red-ink)}
.mx-board--a .mxb-chip__plate{font-family:var(--news);font-weight:600;letter-spacing:.01em;line-height:1.14;text-align:center}
.mx-board--a .mxb-chip__off{margin-left:0;font-weight:600}
.mxb-chip:hover .mxb-chip__plate, .mxb-chip:focus-visible .mxb-chip__plate, .mxb-chip.is-hot .mxb-chip__plate{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.mxb-chip:hover .mxb-chip__off, .mxb-chip:focus-visible .mxb-chip__off, .mxb-chip.is-hot .mxb-chip__off{color:var(--red-lite)}
.mxb-chip__num{position:absolute;z-index:3;pointer-events:none}
.mxb-chip__cap{position:absolute;z-index:4;right:-7px;top:-7px;width:19px;height:19px;border-radius:50%;background:var(--red);color:#fff;font:800 11px/19px var(--mono);text-align:center;box-shadow:0 0 0 2px var(--paper);transform:rotate(-8deg);pointer-events:none}
.mxb-chip:focus-visible .mxb-chip__face{outline:2px solid var(--blue);outline-offset:4px;border-radius:4px}
/* скамейка: строки машинописи */
.mx .mxb-sub{display:flex;justify-content:space-between;align-items:baseline;margin:18px 0 4px;padding-bottom:7px;font:600 11px/1.3 var(--display);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);border-bottom:1.5px solid var(--ink)}
.mxb-sub span{font:600 11.5px/1 var(--mono);letter-spacing:0}
.mxb-coach{display:flex;align-items:baseline;margin-top:2px;padding:9px 0 3px;font:500 13.5px/1.35 var(--mono)}
.mxb-coach .k{flex:none;font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.mxb-coach i{flex:1;min-width:14px;margin:0 9px;border-bottom:2px dotted #cbbf9f;transform:translateY(-4px)}
.mxb-coach .v{min-width:0;text-align:right;font-weight:700;overflow-wrap:anywhere}
.mxb-coach a, .mxb-rows a{color:inherit;text-decoration:none;border-bottom:1px solid rgba(26,79,160,.28);transition:border-color .15s,color .15s}
.mxb-coach a:hover, .mxb-rows a:hover{color:var(--blue);border-bottom-color:var(--blue)}
.mxb-none{margin-top:10px;font:500 13px/1.5 var(--mono);color:var(--muted)}
.mxb-coach .mxb-none{margin:0}
.mxb-rows{margin:0}
.mxb-row{display:grid;grid-template-columns:30px minmax(0,1fr) auto auto;gap:4px 10px;align-items:baseline;padding:6px 6px;border-bottom:1px dotted var(--line-2);font:500 13.5px/1.35 var(--mono);transition:background .15s}
.mxb-row .n{font:800 12px/1.2 var(--display);color:var(--muted);text-align:right}
.mxb-row .nm{display:block;min-width:0;font-weight:700;overflow-wrap:anywhere}
.mxb-row .nm small{display:block;margin-top:1px;font:500 12px/1.35 var(--mono);color:var(--muted)}
.mxb-row .ps abbr{font-size:11px;color:var(--muted);text-decoration:none;cursor:default}
.mxb-row .mn{font-weight:800;color:var(--blue);white-space:nowrap}
.mxb-row.is-hot{background:rgba(26,79,160,.08)}
.mxb-rows--rest, .mxb-rows--unused{--c:1}
.mxb-empty{padding:26px 24px;border:1px dashed var(--line-2);border-radius:12px;background:var(--paper);font:500 14px/1.55 var(--mono)}
.mxb-empty__t{margin:0 0 6px;font:800 15px/1.3 var(--mono);text-transform:uppercase;letter-spacing:.06em}
/* ========================================================================
   ВАРИАНТ А: «Красно-синий карандаш» - одна схема на миллиметровке, снимки с уголками
   ======================================================================== */
.mx-board--a .mxb-a{position:relative;padding:20px 22px 26px;background:var(--paper);border:1px solid var(--line);border-radius:16px}
.mxb-a__top{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:18px;align-items:center}
.mxb-tag{display:flex;align-items:center;gap:12px;min-width:0;padding-bottom:9px;border-bottom:3px solid var(--tl)}
.mxb-tag--home{--tl:var(--blue);--tc:var(--blue)}
.mxb-tag--away{--tl:var(--red);--tc:var(--red-ink);justify-content:flex-end;text-align:right;flex-direction:row-reverse}
.mxb-tag .fl, .mxb-note__h .fl{flex:none;display:block;padding:3px;background:#fffaf0;box-shadow:0 5px 9px -5px rgba(60,45,20,.55);transform:rotate(-2deg)}
.mxb-tag--away .fl{transform:rotate(2deg)}
.mxb-tag .fl img, .mxb-note__h .fl img{display:block;height:26px;width:auto;max-width:48px}
.mxb-tag .nm{min-width:0;font:800 clamp(15px,1.6vw,21px)/1.15 var(--display);text-transform:uppercase;color:var(--ink);text-decoration:none;overflow-wrap:anywhere}
a.nm:hover{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px}
.mxb-tag .fm{flex:none;padding:4px 8px;font:800 12.5px/1 var(--mono);letter-spacing:.06em;color:var(--tc);border:2px solid var(--tl);border-radius:5px;transform:rotate(-3deg)}
/* двухцветный карандаш: левая половина синяя, правая красная, заточен с обоих концов */
.mxb-pencil{position:relative;display:block;width:clamp(120px,16vw,230px);height:14px;margin:0 20px;transform:rotate(-2.5deg)}
.mxb-pencil i{position:absolute;inset:0;border-radius:1px;background:linear-gradient(90deg,var(--blue) 0 50%,var(--red) 50% 100%);box-shadow:inset 0 2px 0 rgba(255,255,255,.3),inset 0 -2px 0 rgba(0,0,0,.2)}
.mxb-pencil::before, .mxb-pencil::after{content:"";position:absolute;top:0;width:19px;height:14px}
.mxb-pencil::before{right:100%;clip-path:polygon(100% 0,100% 100%,0 50%);background:linear-gradient(90deg,var(--blue) 0 32%,#ebcf9d 32%)}
.mxb-pencil::after{left:100%;clip-path:polygon(0 0,0 100%,100% 50%);background:linear-gradient(90deg,#ebcf9d 0 68%,var(--red) 68%)}
/* поле: лист миллиметровки, на нём синим вычерчено поле */
.mxb-field{margin-top:16px;padding:20px;border-radius:10px;border:1px solid var(--line);
  background-color:#fbf6ea;background-image:linear-gradient(var(--rule) 1px,transparent 1px),linear-gradient(90deg,var(--rule) 1px,transparent 1px);background-size:24px 24px;background-position:-1px -1px}
.mx-board--a .mxb-pitch{--pf:12.5px;--bw:66px;--w:var(--fit-w,var(--bw));--h:calc(var(--w) * 1.2);position:relative;aspect-ratio:1.8/1;background:rgba(255,252,243,.7)}
.mxb-lines{position:absolute;inset:0;width:100%;height:100%;overflow:visible;fill:none;stroke:var(--blue);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;opacity:.82}
.mxb-lines path{vector-effect:non-scaling-stroke}
.mxb-lines .dot{fill:var(--blue);stroke:none}
.mxb-lines--m, .mxb-lines--v{display:none}
.mx-board--a .mxb-chip{--x:var(--xh);--y:var(--yh);left:var(--x);top:var(--y)}
.mxb-print{position:relative;display:block;width:100%;height:100%;padding:4px;background:#fffaf0;transform:rotate(var(--rot));
  box-shadow:0 8px 12px -8px rgba(60,45,20,.6),0 1px 2px rgba(60,45,20,.28);transition:transform .2s var(--ease),box-shadow .2s var(--ease)}
.mxb-print img{display:block;width:100%;height:100%;object-fit:cover;filter:grayscale(1) sepia(.28) contrast(1.04)}
.mxb-print::before, .mxb-print::after{content:"";position:absolute;z-index:2;width:12px;height:12px;background:#2b2722}
.mxb-print::before{left:-2px;top:-2px;clip-path:polygon(0 0,100% 0,0 100%)}
.mxb-print::after{right:-2px;bottom:-2px;clip-path:polygon(100% 0,100% 100%,0 100%)}
.mxb-print__ini{display:grid;place-items:center;width:100%;height:100%;font:800 calc(var(--w) * .3)/1 var(--display);color:var(--tc);
  background:#efe6d2 repeating-linear-gradient(45deg,rgba(60,45,20,.08) 0 2px,transparent 2px 7px)}
.mx-board--a .mxb-chip__num{left:-7px;bottom:-6px;min-width:21px;height:18px;padding:0 4px;border-radius:2px;background:var(--tc);color:#fff;font:800 10.5px/18px var(--display);text-align:center;transform:rotate(-4deg);box-shadow:0 2px 3px rgba(0,0,0,.25)}
.mxb-chip:hover .mxb-print, .mxb-chip:focus-visible .mxb-print, .mxb-chip.is-hot .mxb-print{transform:rotate(0deg) scale(1.07);box-shadow:0 14px 18px -10px rgba(60,45,20,.6),0 1px 2px rgba(60,45,20,.3)}
.mxb-chip:hover .mxb-print img, .mxb-chip.is-hot .mxb-print img{filter:none}
/* заявочные листки под схемой */
.mxb-notes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:22px}
.mxb-note{min-width:0;padding:16px 20px 22px;background:var(--sheet);border:1px solid var(--line);border-top:4px solid var(--tl);border-radius:4px;box-shadow:0 10px 18px -14px rgba(60,45,20,.5);
  background-image:repeating-linear-gradient(0deg,rgba(60,45,20,.016) 0 1px,transparent 1px 3px)}
.mxb-note--home{--tl:var(--blue);--tc:var(--blue)}
.mxb-note--away{--tl:var(--red);--tc:var(--red-ink)}
.mxb-note__h{display:flex;align-items:center;gap:12px;min-width:0}
.mx .mxb-note__h h3{margin:0;min-width:0;flex:1;font:800 clamp(15px,1.5vw,19px)/1.15 var(--display);text-transform:uppercase;color:var(--ink);overflow-wrap:anywhere}
.mxb-note__h h3 a{text-decoration:none}
.mxb-note__h h3 a:hover{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px}
.mxb-note__h .fm{flex:none;padding:4px 8px;font:800 12.5px/1 var(--mono);letter-spacing:.06em;color:var(--tc);border:2px solid var(--tl);border-radius:5px;transform:rotate(-3deg)}
.mxb-note .mxb-rows--rest, .mxb-note .mxb-rows--unused{display:block}
/* ========================================================================
   ВАРИАНТ Б: «Заявочные листы» - по листу на команду, полполя, штампы-значки
   ======================================================================== */
/* появление при прокрутке: схема вычерчивается, снимки ложатся, штампы ставятся */
@media (prefers-reduced-motion:no-preference){
  @keyframes mxbDrop{from{opacity:0;transform:translateY(-12px) scale(1.06)}to{opacity:1;transform:none}}
}
/* ========================================================================
   АДАПТИВ
   ======================================================================== */
@media (min-width:1700px){
  .mx-board--a .mxb-pitch{--bw:78px}
  .mx-board--a .mxb-pitch{--pf:13.5px}
}
@media (max-width:1100px){
  .mxh-grid{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:18px}
  .mxh-leaf{padding:24px 24px 28px}
  .mxh-board{padding:4px 18px}
  .mxh-row{gap:16px}
  .mxh-card{padding:16px 16px 36px}
  .mx-board--a .mxb-pitch{--bw:50px;aspect-ratio:1.35/1}
  .mxb-lines--h{display:none}
  .mxb-lines--m{display:block}
  .mxb-field{padding:16px}
  .mxb-notes{gap:14px}
}
@media (max-width:900px){
  .mxh-grid{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:760px){
  .mx--protokol.mx-hero{padding:14px 0 36px}
  .mxh-body{padding:12px 10px 16px;border-radius:0 12px 12px 12px}
  .mx-hero .mxh-tab{margin-left:12px;padding:9px 24px 8px;font-size:10.5px;letter-spacing:.05em}
  .mxh-leaf{padding:16px 12px 20px}
  .mxh-stack::before{transform:translate(5px,-5px) rotate(.5deg)}
  .mxh-stack::after{transform:translate(-4px,-3px) rotate(-.4deg)}
  .mxh-grid{gap:16px;margin-top:16px}
  .mxh-board{padding:2px 10px}
  .mxh-board::before{inset:5px}
  .mxh-row{gap:11px;padding:14px 2px}
  .mxh-flag{--fh:28px;padding:3px}
  .mxh-team__name{font-size:14px}
  .mxh-goals{gap:3px 14px;margin-top:7px;font-size:12.5px}
  .mxh-nogoal{padding:11px 4px 13px;font-size:12.5px}
  .mxh-plate{width:58px;height:72px}
  .mxh-plate--wide{width:86px}
  .mxh-plate i{font-size:38px}
  .mxh-plate::before, .mxh-plate::after{top:7px;width:6px;height:6px}
  .mxh-plate::before{left:9px}
  .mxh-plate::after{right:9px}
  .mxh-card{padding:14px 14px 34px}
  .mxh-fld{min-height:34px;padding:7px 0}
  .mxh-fld dd{font-size:13px}
  .mxh-stamp{font-size:13px;padding:7px 10px 6px 12px}
  .mxh-stamp--sm{font-size:10.5px}
  .mxh-top{gap:12px 16px;padding-bottom:12px}
  .mxh-stamps{gap:8px 12px;justify-content:flex-start}
  .mx-board--a .mxb-a{padding:14px 10px 18px;border-radius:14px}
  .mxb-a__top{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}
  .mxb-pencil{display:none}
  .mxb-tag{flex-wrap:wrap;gap:6px 8px;align-content:flex-start}
  .mxb-tag--away{flex-direction:row-reverse;justify-content:flex-start}
  .mxb-tag .nm{flex:1 1 100%;order:3;font-size:13px}
  .mxb-tag--away .nm{text-align:right}
  .mxb-tag--away .fl{margin-left:auto}
  .mxb-tag--away{flex-direction:row-reverse}
  .mxb-tag .fm{padding:3px 6px;font-size:11px}
  .mxb-field{margin-top:12px;padding:10px 8px}
  .mx-board--a .mxb-pitch{--bw:46px;aspect-ratio:1000/2400;max-width:480px;margin:0 auto}
  .mxb-lines--m{display:none}
  .mxb-lines--v{display:block}
  .mx-board--a .mxb-chip{--x:var(--xv);--y:var(--yv);left:calc(50% + (var(--x) - 50%) * 1.12)}
  /* поле узкое: поперечный разброс игроков шире на 12 %, чтобы фамилии держали 11 px */
  .mxb-chip__plate{padding:2px 4px}
  .mx-board--a .mxb-pitch{--pf:11.5px}
  .mxb-marks{left:calc(100% + 1px);top:13px;gap:2px}
  .mx-board--a .mxb-chip__plate{top:calc(var(--h) / 2 - 5px)}
  .mxb-chip__cap{right:-6px;top:-6px;width:16px;height:16px;font-size:9.5px;line-height:16px}
  .mx-board--a .mxb-chip__num{min-width:17px;height:15px;font-size:9px;line-height:15px;left:-6px;top:-6px;bottom:auto}
  .mxb-print{padding:3px}
  .mxb-print::before, .mxb-print::after{width:9px;height:9px}
  .mxb-notes{grid-template-columns:minmax(0,1fr);gap:16px;margin-top:18px}
  .mxb-note{padding:14px 14px 18px}
  .mxb-row{grid-template-columns:26px minmax(0,1fr) auto auto;gap:3px 8px;padding:6px 2px;font-size:13px}
}
@media (max-width:600px){
  .mxh-in{padding:0 16px}
}
@media (max-width:380px){
  .mx-board--a .mxb-a{padding:12px 8px 16px}
  .mxb-field{padding:8px 6px}
}
@media (max-width:420px){
  .mx-board--a .mxb-pitch{--bw:42px}
}
@media (prefers-reduced-motion:reduce){
  .mxh-plate, .mxh-stamp, .mxh-goals li, .mxb-lines, .mxb-chip__in{animation:none!important;transition:none!important}
  .mxh-stamp{opacity:.9}
}

/* планшет вертикально (761-900px): поле вертикальное, как на телефоне - в ряду меньше игроков, снимки крупнее */
@media (max-width:900px) and (min-width:761px){
  .mx-board--a .mxb-a{padding:14px 10px 18px;border-radius:14px}
  .mxb-a__top{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}
  .mxb-pencil{display:none}
  .mxb-tag{flex-wrap:wrap;gap:6px 8px;align-content:flex-start}
  .mxb-tag--away{flex-direction:row-reverse;justify-content:flex-start}
  .mxb-tag .nm{flex:1 1 100%;order:3;font-size:13px}
  .mxb-tag--away .nm{text-align:right}
  .mxb-tag--away .fl{margin-left:auto}
  .mxb-tag--away{flex-direction:row-reverse}
  .mxb-tag .fm{padding:3px 6px;font-size:11px}
  .mxb-field{margin-top:12px;padding:10px 8px}
  .mx-board--a .mxb-pitch{--bw:56px;aspect-ratio:1000/2400;max-width:520px;margin:0 auto}
  .mxb-lines--m{display:none}
  .mxb-lines--v{display:block}
  .mx-board--a .mxb-chip{--x:var(--xv);--y:var(--yv);left:calc(50% + (var(--x) - 50%) * 1.12)}
  /* поле узкое: поперечный разброс игроков шире на 12 %, чтобы фамилии держали 11 px */
  .mxb-chip__plate{padding:2px 4px}
  .mx-board--a .mxb-pitch{--pf:11.5px}
  .mxb-marks{left:calc(100% + 1px);top:13px;gap:2px}
  .mx-board--a .mxb-chip__plate{top:calc(var(--h) / 2 - 5px)}
  .mxb-chip__cap{right:-6px;top:-6px;width:16px;height:16px;font-size:9.5px;line-height:16px}
  .mx-board--a .mxb-chip__num{min-width:17px;height:15px;font-size:9px;line-height:15px;left:-6px;top:-6px;bottom:auto}
  .mxb-print{padding:3px}
  .mxb-print::before, .mxb-print::after{width:9px;height:9px}
}
