/* Раскладка кабинета Безопасника — перенесена из макета docs/bezopasnik/report-mockup.html (v9) без изменений.
   Только раскладка: цвета, шрифты, радиусы — токены --cx-* и классы corix-ui. Подключается после cx.css. */
.bz-page { max-width: 1280px; margin: 0 auto; width: 100%; box-sizing: border-box; }
.bz-nav { position: sticky; top: calc(var(--cx-h-header) + var(--cx-gap)); z-index: 5; background: var(--cx-surface); border-radius: var(--cx-r-pill); padding: 0 var(--cx-space-5); }
.bz-nav .cx-tabs { gap: var(--cx-space-5); overflow-x: auto; scrollbar-width: none; }
.bz-page [id] { scroll-margin-top: calc(var(--cx-h-header) + 72px); }

/* hero */
.bz-hero { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: var(--cx-space-6) var(--cx-space-12); }
.bz-hero__main { display: flex; flex-direction: column; gap: var(--cx-space-2); min-width: 0; }
.bz-hero__domain { font-size: 34px; line-height: 1.1; font-weight: 700; letter-spacing: -.02em; overflow-wrap: anywhere; }
.bz-grade { display: flex; gap: var(--cx-space-4); align-items: center; margin-top: var(--cx-space-4); }
.bz-grade__letter { flex: none; width: 72px; height: 72px; border-radius: var(--cx-r-lg); display: grid; place-items: center; font-size: 40px; font-weight: 700; background: var(--cx-critical-bg); color: var(--cx-critical-text); }
.bz-grade b { display: block; font-size: 17px; line-height: 1.3; }
.bz-grade .cx-hero__text { margin-top: var(--cx-space-1); }
.bz-figs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--cx-space-5); align-content: start; }
.bz-fig { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.bz-fig__value { font-size: 28px; line-height: 1.15; font-weight: 700; font-variant-numeric: tabular-nums; display: flex; align-items: baseline; gap: var(--cx-space-2); flex-wrap: wrap; }
.bz-fig__value small { font-size: 13px; font-weight: 600; }
.bz-fig .cx-hero__text { margin: 0; font-size: 12px; line-height: 1.45; }
.bz-hero__bottom { grid-column: 1 / -1; display: flex; flex-direction: column; gap: var(--cx-space-3); padding-top: var(--cx-space-5); border-top: 1px solid var(--cx-surface-inverse-3); }
.bz-stack { display: flex; height: 10px; border-radius: var(--cx-r-pill); overflow: hidden; gap: 3px; }
.bz-stack i { flex: var(--n) 1 0; min-width: 8px; background: var(--_c); }
.bz-legend { display: flex; flex-wrap: wrap; gap: var(--cx-space-2) var(--cx-space-5); font-size: 12.5px; }
.bz-legend span { display: inline-flex; align-items: center; gap: var(--cx-space-2); }
.bz-legend i { width: 8px; height: 8px; border-radius: var(--cx-r-pill); background: var(--_c); }
.bz-legend b { font-variant-numeric: tabular-nums; }
.bz-c-critical { --_c: var(--cx-critical); } .bz-c-high { --_c: var(--cx-warn); } .bz-c-medium { --_c: var(--cx-info); } .bz-c-low { --_c: var(--cx-text-3); } .bz-c-info { --_c: var(--cx-text-4); }
.bz-hero__acts { display: flex; gap: var(--cx-space-2); flex-wrap: wrap; align-items: center; }

/* карточки и плитки */
.bz-sec { display: flex; align-items: center; gap: var(--cx-space-3); flex-wrap: wrap; }
.bz-sec .cx-card__title { font-size: 17px; }
.bz-sec__end { margin-left: auto; display: flex; gap: var(--cx-space-2); align-items: center; flex-wrap: wrap; }
.bz-tiles { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: var(--cx-space-3); margin-top: var(--cx-space-4); }
.bz-tiles--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.bz-tile { display: flex; flex-direction: column; gap: var(--cx-space-3); min-height: 150px; padding: var(--cx-space-5) var(--cx-space-5) var(--cx-space-4); color: inherit; text-decoration: none; min-width: 0; }
.bz-tile__top { display: flex; align-items: center; gap: var(--cx-space-2); flex-wrap: wrap; }
.bz-tile__title { font-size: 15.5px; line-height: 1.35; font-weight: 600; }
.bz-tile__text { font-size: 12.5px; line-height: 1.55; color: var(--cx-text-2); }
.bz-tile__foot { margin-top: auto; display: flex; align-items: center; justify-content: space-between; gap: var(--cx-space-2); flex-wrap: wrap; }
.bz-metric { display: block; margin: var(--cx-space-1) 0 2px; overflow-wrap: anywhere; }
.bz-tile__num { font-size: 22px; font-weight: 700; font-variant-numeric: tabular-nums; }
.bz-ver { display: flex; align-items: baseline; gap: var(--cx-space-2); font-variant-numeric: tabular-nums; }
.bz-ver b { font-size: 22px; font-weight: 700; }
.bz-ver span { color: var(--cx-text-meta); font-size: 12.5px; }

/* находки */
.bz-findings { margin-top: var(--cx-space-3); }
.bz-findings .cx-row__title b { font-weight: 600; }
.bz-findings .cx-row__end { gap: var(--cx-space-2); }
.bz-id { font-weight: 700; font-size: 12px; color: var(--cx-text-meta); font-variant-numeric: tabular-nums; margin-right: var(--cx-space-1); }

/* карточка находки */
.bz-f__head { display: flex; gap: var(--cx-space-4); align-items: flex-start; }
.bz-f__head .cx-row__tile { flex: none; width: 48px; height: 48px; }
.bz-f__title { font-size: 22px; line-height: 1.25; font-weight: 600; letter-spacing: -.01em; }
.bz-f__chips { display: flex; gap: var(--cx-space-2); flex-wrap: wrap; margin-top: var(--cx-space-2); }
.bz-f__body { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); gap: var(--cx-space-5); margin-top: var(--cx-space-5); }
.bz-f__col { display: flex; flex-direction: column; gap: var(--cx-space-3); min-width: 0; }
.bz-p { font-size: 13.5px; line-height: 1.6; color: var(--cx-text-2); margin: 0; }
.bz-p b { color: var(--cx-text); font-weight: 600; }
.bz-ev { margin: 0; white-space: pre-wrap; overflow-wrap: anywhere; font: 12.5px/1.6 var(--cx-font-ui); font-variant-numeric: tabular-nums; }
.bz-ev mark { background: var(--cx-warn-bg); color: var(--cx-warn-text); border-radius: var(--cx-r-xs); padding: 0 2px; }
.bz-ev i { font-style: normal; color: var(--cx-text-meta); }
.bz-ev__cap { display: flex; justify-content: space-between; gap: var(--cx-space-2); margin-bottom: var(--cx-space-2); }
.bz-fix { display: flex; flex-direction: column; gap: var(--cx-space-2); margin: 0; padding: 0; list-style: none; counter-reset: s; }
.bz-fix li { counter-increment: s; display: grid; grid-template-columns: 28px minmax(0, 1fr); gap: var(--cx-space-3); align-items: start; font-size: 13px; line-height: 1.55; }
.bz-fix li::before { content: counter(s); width: 28px; height: 28px; border-radius: var(--cx-r-pill); background: var(--cx-fill-strong); color: var(--cx-on-strong); display: grid; place-items: center; font-weight: 700; font-size: 12.5px; }
.bz-fix small { display: block; color: var(--cx-text-meta); font-size: 12px; }
.bz-ai { display: flex; gap: var(--cx-space-2); align-items: flex-start; color: var(--cx-text-meta); font-size: 12px; line-height: 1.5; }
.bz-ai svg { flex: none; width: 14px; height: 14px; margin-top: 2px; }

/* строки проверок */
.bz-checks .cx-row__meta b { color: var(--cx-text); font-weight: 600; }
.bz-owasp { display: flex; flex-direction: column; gap: var(--cx-space-3); margin-top: var(--cx-space-4); }
.bz-owasp > div { display: grid; grid-template-columns: minmax(0, 1fr) 120px 28px; gap: var(--cx-space-3); align-items: center; font-size: 13px; }
.bz-owasp b { font-variant-numeric: tabular-nums; text-align: right; }
.bz-owasp small { display: block; color: var(--cx-text-meta); font-size: 12px; }

@media (max-width: 1100px) { .bz-tiles--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 900px) {
  .bz-hero, .bz-f__body { grid-template-columns: minmax(0, 1fr); }
  .bz-hero__domain { font-size: 26px; }
  .bz-nav { top: calc(var(--cx-h-header) + 4px); padding: 0 var(--cx-space-3); }
}
@media (max-width: 600px) {
  .bz-tiles--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  #todoTiles, #steps { grid-template-columns: minmax(0, 1fr); }
  .bz-nav { position: static; }
  .bz-sec__end { margin-left: 0; max-width: 100%; overflow-x: auto; scrollbar-width: none; }
  .bz-f__title { font-size: 19px; }
  .bz-fig__value { font-size: 24px; }
  .bz-findings .cx-row { flex-wrap: wrap; }
  .bz-findings .cx-row__end { flex-basis: 100%; justify-content: flex-start; padding-left: 52px; }
  .bz-owasp > div { grid-template-columns: minmax(0, 1fr) 64px 24px; }
}
@media print {
  @page { size: A4; margin: 10mm; }
  .cx-shell, .cx-page__head, .bz-nav, .bz-demo, .bz-hero__acts, .cx-row__end .cx-btn, .bz-sec__end .cx-btn { display: none !important; }
  .cx-page { padding: 0; min-height: 0; }
  .cx-card, .cx-hero, .bz-tile, .cx-row { break-inside: avoid; }
  .bz-pagebreak { break-before: page; }
  * { -webkit-print-color-adjust: exact; print-color-adjust: exact; }
}

/* ---------- экраны просмотрщика ---------- */
.bz-screen { display: flex; flex-direction: column; gap: var(--cx-gap); }
.bz-screen[hidden] { display: none; }
.bz-dim { color: var(--cx-text-inverse-2); }
.bz-hero__title { font-size: 26px; line-height: 1.2; font-weight: 700; letter-spacing: -.01em; }
.bz-hero__meta { font-size: 13px; color: var(--cx-text-inverse-2); }

/* оценка буквой и её путь */
.bz-letter { flex: none; display: grid; place-items: center; width: 44px; height: 44px; border-radius: var(--cx-r-md); font-size: 22px; font-weight: 700; font-variant-numeric: tabular-nums; }
.bz-letter--sm { width: 36px; height: 36px; font-size: 16px; }
.bz-letter--e, .bz-letter--d { background: var(--cx-critical-bg); color: var(--cx-critical-text); }
.bz-letter--c { background: var(--cx-warn-bg); color: var(--cx-warn-text); }
.bz-letter--b, .bz-letter--a { background: var(--cx-success-bg); color: var(--cx-success); }
.bz-letter--goal { background: transparent; color: var(--cx-text-inverse-2); box-shadow: inset 0 0 0 1.5px var(--cx-surface-inverse-3); }
.bz-letter--none { background: var(--cx-surface-soft); color: var(--cx-text-3); }
.bz-path { display: flex; align-items: flex-start; gap: var(--cx-space-3); flex-wrap: wrap; margin-top: var(--cx-space-4); }
.bz-path__step { display: flex; flex-direction: column; align-items: center; gap: var(--cx-space-1); font-size: 11.5px; color: var(--cx-text-inverse-2); text-align: center; max-width: 92px; }
.bz-path__arrow { align-self: center; margin-top: -18px; color: var(--cx-text-inverse-2); }

/* шаги в тёмном hero */
.bz-run .cx-steps { flex-wrap: wrap; row-gap: var(--cx-space-3); }
.bz-run .cx-steps__item { color: var(--cx-text-inverse-2); }
.bz-run .cx-steps__item--done, .bz-run .cx-steps__item--current { color: var(--cx-text-inverse); }
.bz-run .cx-steps__item--done .cx-steps__dot { background: var(--cx-surface-inverse-3); color: var(--cx-accent); }
.bz-run .cx-steps__item + .cx-steps__item::before { background: var(--cx-surface-inverse-3); }
.bz-pct { display: flex; align-items: baseline; gap: var(--cx-space-3); margin-top: var(--cx-space-4); }
.bz-pct b { font-size: 40px; line-height: 1; font-weight: 700; font-variant-numeric: tabular-nums; }
.bz-run .cx-progress { background: var(--cx-surface-inverse-3); height: 8px; margin-top: var(--cx-space-3); }
.bz-live { display: flex; gap: var(--cx-space-2); align-items: center; margin-top: var(--cx-space-3); font-size: 13px; color: var(--cx-text-inverse-2); }

/* плитка-кнопка «добавить» */
.bz-ptile { gap: var(--cx-space-4); min-height: 236px; }
.bz-pkpi { display: flex; align-items: flex-end; gap: var(--cx-space-5); }
.bz-pkpi > span:not(.cx-chip) { display: flex; flex-direction: column; gap: 2px; }
.bz-pkpi b { font-size: 28px; line-height: 1; font-weight: 700; font-variant-numeric: tabular-nums; }
.bz-pkpi b.is-crit { color: var(--cx-critical-text); }
.bz-pkpi b.is-zero { color: var(--cx-text-3); }
.bz-pkpi .cx-chip { margin-left: auto; align-self: center; white-space: nowrap; }
.bz-ptile__st { display: flex; min-width: 0; }
.bz-ptile__st .cx-status { min-width: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.bz-ptile .bz-tile__foot { flex-wrap: nowrap; padding-top: var(--cx-space-3); border-top: 1px solid var(--cx-border-soft); }
.bz-add { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; gap: var(--cx-space-2); min-height: 150px; padding: var(--cx-space-5); border: 0; border-radius: var(--cx-r-lg); background: var(--cx-surface); box-shadow: inset 0 0 0 1.5px var(--cx-border); color: var(--cx-text); font: inherit; text-align: left; cursor: pointer; }
.bz-add:hover { background: var(--cx-surface-soft); }

/* история столбиками */
.bz-bars { display: grid; grid-template-columns: repeat(var(--cols, 4), minmax(0, 1fr)); gap: var(--cx-space-5); align-items: end; margin-top: var(--cx-space-4); }
.bz-bar { display: flex; flex-direction: column; align-items: center; gap: var(--cx-space-2); min-width: 0; }
.bz-bar__col { width: 100%; max-width: 64px; height: 150px; display: flex; flex-direction: column-reverse; gap: 2px; border-radius: var(--cx-r-md); overflow: hidden; }
.bz-bar__col i { display: block; height: calc(var(--n) * 3.6px); background: var(--_c); }
.bz-bar__col--empty { justify-content: center; align-items: center; background: var(--cx-surface-soft); }
.bz-bar__n { font-size: 17px; font-weight: 700; font-variant-numeric: tabular-nums; }
.bz-bar__cap { font-size: 12px; color: var(--cx-text-meta); text-align: center; line-height: 1.4; }

/* сравнение двух проверок полосами */
.bz-cmp { display: grid; grid-template-columns: 96px minmax(0, 1fr) 36px; gap: var(--cx-space-3); align-items: center; font-size: 12.5px; }
.bz-cmp .bz-stack { width: var(--w); }
.bz-cmp b { font-variant-numeric: tabular-nums; text-align: right; }

/* исправления */
.bz-fixgrid { display: grid; grid-template-columns: minmax(0, 400px) minmax(0, 1fr); gap: var(--cx-gap); align-items: start; }
.bz-fixgrid > .cx-card:first-child { position: sticky; top: calc(var(--cx-h-header) + var(--cx-gap)); }
.bz-fixlist .cx-row { cursor: pointer; }
.bz-fixlist .cx-row { align-items: flex-start; }
.bz-fixlist .cx-row__title { white-space: normal; }
.bz-fixlist .cx-row__end { padding-top: 2px; }
.bz-steps { display: flex; flex-direction: column; gap: var(--cx-space-3); }
.bz-step { display: flex; flex-direction: column; gap: var(--cx-space-2); padding: var(--cx-space-4); border-radius: var(--cx-r-lg); background: var(--cx-surface-soft); }
.bz-step.is-done .cx-check__body > span:first-child { text-decoration: line-through; color: var(--cx-text-meta); }
.bz-code { display: flex; gap: var(--cx-space-2); align-items: flex-start; padding: var(--cx-space-3) var(--cx-space-3) var(--cx-space-3) var(--cx-space-4); border-radius: var(--cx-r-md); background: var(--cx-surface); margin-left: 30px; }
.bz-code pre { flex: 1; min-width: 0; margin: 0; white-space: pre-wrap; overflow-wrap: anywhere; font: 600 12.5px/1.6 var(--cx-font-ui); font-variant-numeric: tabular-nums; }
.bz-ask { display: flex; gap: var(--cx-space-2); flex-wrap: wrap; margin-top: var(--cx-space-2); }
.bz-answer { margin-top: var(--cx-space-3); }
.bz-guide__foot { display: flex; gap: var(--cx-space-2); align-items: center; flex-wrap: wrap; margin-top: var(--cx-space-5); padding-top: var(--cx-space-4); border-top: 1px solid var(--cx-line); }
.bz-guide__foot .bz-grow { flex: 1; }
.bz-retest { margin-top: var(--cx-space-4); }
.bz-retest .cx-steps__body { display: flex; flex-direction: column; gap: 2px; white-space: normal; }
.bz-retest .cx-steps__body small { font-weight: 400; color: var(--cx-text-meta); }

/* окно */
.bz-form { display: flex; flex-direction: column; gap: var(--cx-space-5); }
.bz-form .cx-choices { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.bz-objs { display: flex; flex-direction: column; gap: var(--cx-space-2); }
.bz-obj { display: flex; gap: var(--cx-space-3); align-items: center; padding: var(--cx-space-3) var(--cx-space-4); border-radius: var(--cx-r-md); background: var(--cx-surface-soft); }
.bz-obj .cx-cell { flex: 1; min-width: 0; }
.bz-addline { display: flex; gap: var(--cx-space-2); }
.bz-addline .cx-input { flex: 1; min-width: 0; }
.bz-acct { display: grid; grid-template-columns: 1fr 1fr; gap: var(--cx-space-2); margin-top: var(--cx-space-2); }
@media (max-width: 600px) { .bz-acct { grid-template-columns: 1fr; } }

@media (max-width: 1100px) { .bz-fixgrid { grid-template-columns: minmax(0, 1fr); } .bz-fixgrid > .cx-card:first-child { position: static; } }
@media (max-width: 600px) {
  .bz-form .cx-choices { grid-template-columns: minmax(0, 1fr); }
  .bz-bars { gap: var(--cx-space-2); }
  .bz-code { margin-left: 0; }
  .bz-cmp { grid-template-columns: 64px minmax(0, 1fr) 28px; }
  .bz-hero__title { font-size: 22px; }
}
@media print { .bz-screen[hidden] { display: none !important; } }

/* Прогресс-«Пакман»: знак corix ест точки (жёлтый на тёмном, тёмный на светлом) */
.bz-pac { --_man: var(--cx-fill-strong); --_dot: var(--cx-text-4); --_trail: var(--cx-accent-deep); --_s: 30px; position: relative; height: var(--_s); margin-top: var(--cx-space-3); padding: 0 calc(var(--_s) / 2); }
.bz-run .bz-pac { --_man: var(--cx-accent); --_dot: var(--cx-text-inverse-2); --_trail: var(--cx-accent); --_s: 38px; }
.bz-pac--sm { --_s: 20px; margin-top: var(--cx-space-2); }
.bz-pac__track { position: relative; height: 100%; }
.bz-pac__dots { position: absolute; inset: 0; background: radial-gradient(circle, var(--_dot) 0 2px, transparent 2.5px) left center / 14px 100% repeat-x; clip-path: inset(0 0 0 calc(var(--value) + var(--_s) * .3)); transition: clip-path 1.2s linear; }
.bz-pac--sm .bz-pac__dots { background-image: radial-gradient(circle, var(--_dot) 0 1.5px, transparent 2px); background-size: 10px 100%; }
.bz-pac__trail { position: absolute; left: 0; top: 50%; width: var(--value); height: 3px; margin-top: -1.5px; border-radius: var(--cx-r-pill); background: var(--_trail); transition: width 1.2s linear; }
.bz-pac__man { position: absolute; top: 0; left: var(--value); width: var(--_s); height: var(--_s); margin-left: calc(var(--_s) / -2); fill: var(--_man); transition: left 1.2s linear, fill var(--cx-dur-hover) var(--cx-ease); }
.bz-pac.is-off { --_man: var(--cx-text-3); --_trail: var(--cx-text-3); }
.bz-runrow .cx-row__body { flex: 1; min-width: 0; }
.bz-runrow .cx-row__end { align-self: flex-start; }
/* Мастер задания и «Добавить» */
.bz-wiz__steps { padding: var(--cx-space-4) 24px 0; }
.bz-wiz__steps .cx-steps { flex-wrap: wrap; row-gap: var(--cx-space-2); }
.bz-modal-body { max-height: min(62vh, 640px); overflow: auto; }
.bz-form .cx-choice__body { min-width: 0; }
.bz-form .cx-choices--list > .cx-choice .cx-chip { margin-left: auto; flex: none; }
.bz-when { display: flex; gap: var(--cx-space-3); align-items: center; flex-wrap: wrap; margin-top: var(--cx-space-3); }
.bz-when .cx-input { width: auto; }
.bz-form .bz-code { margin-left: 0; }
.bz-fieldhead { display: flex; align-items: baseline; gap: var(--cx-space-3); }
.bz-fieldhead .cx-btn { margin-left: auto; }
@media (max-width: 600px) { .bz-modal-body { max-height: none; } .bz-runrow { flex-wrap: wrap; } .bz-runrow .cx-row__end { flex-basis: 100%; padding-left: 52px; } }

/* Пакман: точки-еда видны и на маленькой полосе */
.bz-pac__dots { background: radial-gradient(circle, var(--_dot) 0 calc(var(--_s) * .1 + 1px), transparent calc(var(--_s) * .1 + 1.5px)) left center / calc(var(--_s) * .7) 100% repeat-x; }
.bz-pac--sm .bz-pac__dots { background-image: radial-gradient(circle, var(--_dot) 0 2.5px, transparent 3px); background-size: 13px 100%; }
.bz-pac:not(.bz-run .bz-pac) { --_dot: var(--cx-text-3); }

/* меню «⋯» в строках */
.bz-more > summary { list-style: none; }
.bz-more .cx-pop__panel { min-width: 230px; }

/* оценка по объектам в шапке проекта */
.bz-objg { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: var(--cx-space-2); margin-top: var(--cx-space-5); max-width: 640px; }
.bz-objg__item { display: flex; gap: var(--cx-space-3); align-items: center; padding: var(--cx-space-3); border-radius: var(--cx-r-md); background: var(--cx-surface-inverse-2); color: var(--cx-text-inverse); text-decoration: none; min-width: 0; transition: background var(--cx-dur-hover) var(--cx-ease); }
.bz-objg__item:hover { background: var(--cx-surface-inverse-3); }
.bz-objg__item > span:last-child { display: flex; flex-direction: column; gap: 2px; min-width: 0; font-size: 13px; font-weight: 600; }
.bz-objg__item small { font-size: 11.5px; font-weight: 400; color: var(--cx-text-inverse-2); overflow-wrap: anywhere; }

/* находки: строка раскрывается, «Открыть» — отдельная страница */
.bz-flist { gap: 0; }
.bz-fitem + .bz-fitem { border-top: 1px solid var(--cx-line); }
.bz-flist .cx-row { cursor: pointer; padding-top: 14px; padding-bottom: 14px; }
.bz-flist .cx-row::before { display: none; }
.bz-flist .cx-row__end { gap: var(--cx-space-2); }
.bz-fbody { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--cx-space-3) var(--cx-space-6); padding: var(--cx-space-1) 0 var(--cx-space-5) 52px; }
.bz-fbody .bz-p { margin: var(--cx-space-1) 0 0; }
.bz-fbody__foot { grid-column: 1 / -1; display: flex; gap: var(--cx-space-2); align-items: center; flex-wrap: wrap; }
.bz-back { display: flex; align-items: center; gap: var(--cx-space-3); margin-bottom: var(--cx-space-2); }
.bz-fnav { display: flex; gap: var(--cx-space-2); justify-content: space-between; flex-wrap: wrap; }

/* разрешения и трекеры в отчёте APK */
.bz-checks { margin-top: var(--cx-space-3); }
.bz-checks .cx-row { align-items: center; }

/* Студент в инструкции */
.bz-student { margin-top: var(--cx-space-3); padding: var(--cx-space-4) var(--cx-space-5); border-radius: var(--cx-r-lg); background: var(--cx-surface-accent); }
.bz-student__head { display: flex; gap: var(--cx-space-3); align-items: flex-start; }
.bz-student__head b { display: block; font-size: 15px; margin-bottom: 2px; }
.bz-student .bz-ask { align-items: center; }
.bz-student__form { display: flex; gap: var(--cx-space-2); margin-top: var(--cx-space-3); }
.bz-student__form .cx-input { flex: 1; min-width: 0; }
.bz-thread { display: flex; flex-direction: column; gap: var(--cx-space-2); margin-top: var(--cx-space-3); }
.bz-thread:empty { display: none; }
.bz-msg { max-width: 88%; padding: var(--cx-space-3) var(--cx-space-4); border-radius: var(--cx-r-md); background: var(--cx-surface); font-size: 13.5px; line-height: 1.55; }
.bz-msg--me { align-self: flex-end; background: var(--cx-surface-inverse); color: var(--cx-text-inverse); }
.bz-msg .cx-label { display: block; margin-bottom: 2px; }
.bz-msg__foot { display: flex; gap: var(--cx-space-2); align-items: center; flex-wrap: wrap; margin-top: var(--cx-space-2); }

/* настройки проекта */
.bz-set .cx-card { scroll-margin-top: calc(var(--cx-h-header) + var(--cx-gap) * 2); }
.bz-set .bz-tile { min-height: 168px; }
.bz-set .bz-tile .bz-code { margin: 0; }
.bz-set .bz-tile .bz-code pre { font-size: 13px; }
.bz-set .bz-tile .bz-fp { font-size: 12px; line-height: 1.6; }
.bz-where { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: var(--cx-space-4); align-items: center; margin-top: var(--cx-space-3); }
.bz-where .bz-p { margin: var(--cx-space-1) 0 0; }
.bz-times { justify-content: flex-start; }
.bz-times .cx-input { width: auto; flex: 1; min-width: 0; }
.bz-danger { display: flex; gap: var(--cx-space-4); align-items: center; justify-content: space-between; flex-wrap: wrap; }
.bz-who { display: flex; gap: var(--cx-space-3); align-items: center; }
.bz-fp { display: block; margin-top: var(--cx-space-1); font-weight: 600; font-variant-numeric: tabular-nums; letter-spacing: .02em; color: var(--cx-text-2); overflow-wrap: anywhere; }
.bz-set__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--cx-space-4); margin-top: var(--cx-space-4); }
.bz-set__grid .cx-field { margin: 0; }
@media (max-width: 600px) {
  .bz-fbody { grid-template-columns: minmax(0, 1fr); padding-left: 0; }
  .bz-set__grid { grid-template-columns: minmax(0, 1fr); }
  .bz-where { grid-template-columns: minmax(0, 1fr); }
  .bz-student__form { flex-direction: column; }
  .bz-student__form .cx-input { flex: none; }
  .bz-msg { max-width: 100%; }
}

/* r9: шапка, выгрузка, окна */
.bz-shpop > summary { list-style: none; }
.bz-shpop > summary::-webkit-details-marker { display: none; }
.bz-bellhead { display: flex; align-items: center; justify-content: space-between; gap: var(--cx-space-3); }
#bellList .cx-menu__item.is-new .cx-menu__body::after { content: ""; position: absolute; top: 14px; right: 12px; width: 7px; height: 7px; border-radius: 50%; background: var(--cx-accent); }
#bellList .cx-menu__item { position: relative; padding-right: 28px; }
.bz-form .cx-choices.bz-ch2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.bz-exfile { display: flex; align-items: center; gap: var(--cx-space-3); }
.bz-exfile .cx-cell { min-width: 0; }
.bz-exfile b { overflow-wrap: anywhere; }
.bz-run { display: grid; gap: var(--cx-space-2); }
.bz-run[hidden] { display: none; }
.bz-run .cx-progress { --value: 0%; }
.bz-retest-res { margin-top: var(--cx-space-3); }
.bz-pd { display: grid; gap: var(--cx-space-4); }
.bz-pd .bz-tiles { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.bz-dd-who { --w: 220px; }
.bz-guide__foot .cx-dd { flex: none; }
@media (max-width: 600px) {
  .bz-form .cx-choices.bz-ch2, .bz-pd .bz-tiles { grid-template-columns: minmax(0, 1fr); }
  .cx-shell__end, #bell { position: static; }
  #bell > .cx-pop__panel { left: 0; right: 0; width: auto; max-width: none; }
  .bz-dd-who { --w: 100%; }
}

/* кабинет С5: на телефоне заголовки находок переносятся, а не режутся */
@media (max-width: 600px) { .bz-flist .cx-row__title, .bz-flist .cx-row__meta { white-space: normal; overflow-wrap: anywhere; } }
/* кабинет С5: на телефоне «⋯» прижат вправо, чтобы меню открывалось внутри экрана */
@media (max-width: 600px) { .bz-findings .cx-row__end > .bz-more { margin-left: auto; } }
