/* «Аналитика → Вопросы из чата / Отчёты / Инструктажи» и колокольчик уведомлений. Префикс cr-.
 * Только токены shell.css (--brand --ink --muted --stroke --card --panel --ok --ai --r --r-sm --shadow-lg). */
.cr-root{--cr-warn:var(--c-warning,#b7791f);--cr-warn-dim:rgba(183,121,31,.12);--cr-bad:var(--warn);display:block}
.cr-sub{display:flex;gap:4px;margin:0 0 16px;border-bottom:1px solid var(--stroke);overflow-x:auto}
.cr-sub button{border:0;background:none;padding:11px 14px;font:inherit;font-weight:600;font-size:14px;color:var(--muted);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;white-space:nowrap;min-height:44px}
.cr-sub button.is-on{color:var(--brand);border-bottom-color:var(--brand)}
.cr-sub button:hover{color:var(--ink)}
.cr-root button:focus-visible,.cr-root a:focus-visible,.cr-root input:focus-visible,.cr-root select:focus-visible,.cr-root textarea:focus-visible,.cr-bell-pop button:focus-visible{outline:2px solid var(--ai);outline-offset:2px}
.cr-muted{color:var(--muted);font-size:13px}
.cr-h{font-size:16px;font-weight:700;margin:22px 0 10px;color:var(--ink)}
.cr-h:first-child{margin-top:0}
.cr-btn{border:1px solid var(--stroke);background:var(--card);color:var(--ink);border-radius:var(--r-sm);padding:0 14px;min-height:40px;font:inherit;font-size:13px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:6px}
.cr-btn:hover{border-color:var(--brand);color:var(--brand)}
.cr-btn.is-primary{background:var(--brand);border-color:var(--brand);color:#fff}
.cr-btn.is-primary:hover{background:var(--brand-strong);color:#fff}
.cr-btn:disabled{opacity:.45;cursor:not-allowed}
.cr-btn.is-sm{min-height:32px;padding:0 10px;font-size:12px}
.cr-input{border:1px solid var(--stroke);border-radius:var(--r-sm);padding:0 11px;min-height:40px;font:inherit;font-size:13px;background:var(--field);color:var(--ink);min-width:0}
textarea.cr-input{padding:9px 11px;min-height:70px;width:100%;resize:vertical;line-height:1.45}
.cr-filters{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:12px}
.cr-filters .cr-input{flex:0 1 160px}
.cr-filters .cr-search{flex:1 1 260px;min-width:200px}
#crRoot label.cr-check,#crRoot .cr-ti label.cr-check{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:500;color:var(--ink);cursor:pointer;min-height:40px}
#crRoot .cr-check input{width:18px;height:18px;accent-color:var(--brand);flex:none}
.cr-note{padding:10px 14px;border-radius:var(--r-sm);font-size:13px;margin:0 0 12px;border:1px solid var(--stroke);background:var(--panel);color:var(--muted)}
.cr-note.is-warn{background:var(--cr-warn-dim);border-color:var(--cr-warn);color:var(--ink)}
.cr-note.is-bad{background:var(--warn-dim);border-color:var(--cr-bad);color:var(--ink)}
.cr-note.is-ok{background:var(--ok-dim);border-color:var(--ok)}

/* Шапка отчёта: одна главная метрика + поддерживающие показатели строкой */
.cr-head{display:flex;flex-wrap:wrap;gap:12px 24px;align-items:flex-start;justify-content:space-between;margin-bottom:6px}
.cr-title{font-size:20px;font-weight:700;letter-spacing:-.01em}
.cr-period{font-size:13px;color:var(--muted);margin-top:2px}
.cr-actions{display:flex;flex-wrap:wrap;gap:8px}
.cr-metrics{display:flex;flex-wrap:wrap;align-items:flex-end;gap:14px 28px;margin:14px 0 6px;padding:16px 0;border-top:1px solid var(--stroke);border-bottom:1px solid var(--stroke)}
.cr-hero b{display:block;font-size:44px;line-height:46px;font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:-.03em}
.cr-hero span{font-size:12px;color:var(--muted);font-weight:600}
.cr-stat{min-width:110px}
.cr-stat b{display:block;font-size:22px;line-height:26px;font-weight:700;font-variant-numeric:tabular-nums}
.cr-stat span{font-size:12px;color:var(--muted)}
.cr-stat.is-bad b{color:var(--cr-bad)}.cr-stat.is-warn b{color:var(--cr-warn)}.cr-stat.is-ok b{color:var(--ok)}

.cr-chip{display:inline-flex;align-items:center;font-size:11px;font-weight:700;padding:2px 9px;border-radius:999px;background:var(--panel);color:var(--muted);border:1px solid var(--stroke);white-space:nowrap}
.cr-chip.is-ok{background:var(--ok-dim);color:var(--ok);border-color:transparent}
.cr-chip.is-warn{background:var(--cr-warn-dim);color:var(--cr-warn);border-color:transparent}
.cr-chip.is-bad{background:var(--warn-dim);color:var(--cr-bad);border-color:transparent}
.cr-chip.is-brand{background:var(--brand-dim);color:var(--brand-strong);border-color:transparent}
.cr-chip.is-ai{background:var(--ai-dim);color:var(--ai);border-color:transparent}

/* Таблицы и раскрываемые темы */
.cr-table{width:100%;border-collapse:collapse;font-size:13px}
.cr-table th,.cr-table td{padding:10px 12px;text-align:left;border-bottom:1px solid var(--stroke);vertical-align:top}
.cr-table th{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:700;white-space:nowrap}
.cr-table td.r,.cr-table th.r{text-align:right;font-variant-numeric:tabular-nums}
.cr-table tr.cr-row{cursor:pointer}
.cr-table tr.cr-row:hover td{background:var(--panel)}
.cr-scroll{overflow-x:auto}
.cr-table td b{display:block;min-width:150px;overflow-wrap:anywhere}
.cr-topic{border-bottom:1px solid var(--stroke)}
.cr-topic>summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:auto 1fr auto;gap:10px 14px;align-items:start;padding:14px 4px;min-height:44px}
.cr-topic>summary::-webkit-details-marker{display:none}
.cr-topic>summary:hover{background:var(--panel)}
.cr-topic-t{font-weight:700;font-size:15px;color:var(--ink)}
.cr-topic-meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px;align-items:center}
.cr-count{font-size:22px;font-weight:800;font-variant-numeric:tabular-nums;line-height:26px;text-align:right}
.cr-count small{display:block;font-size:11px;font-weight:600;color:var(--muted)}
.cr-sel{width:20px;height:20px;margin-top:3px;accent-color:var(--brand);cursor:pointer}
.cr-body{padding:4px 4px 18px 38px}
.cr-q{padding:10px 0;border-top:1px dashed var(--stroke)}
.cr-q:first-child{border-top:0}
.cr-q-head{display:flex;flex-wrap:wrap;gap:4px 10px;font-size:12px;color:var(--muted);align-items:center}
.cr-q-text{margin:4px 0;font-size:14px;white-space:pre-wrap;overflow-wrap:anywhere}
.cr-ans{margin:6px 0 0 14px;padding:6px 10px;border-left:3px solid var(--stroke);font-size:13px;color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere}
.cr-ans b{font-size:12px;color:var(--muted);font-weight:600;display:block}
.cr-link{color:var(--ai);text-decoration:none;font-size:12px;font-weight:600}
.cr-link:hover{text-decoration:underline}
/* AI-пересказ отличается от подтверждённого правила */
.cr-ai{background:var(--ai-dim);border-radius:var(--r-sm);padding:10px 12px;font-size:13px;margin:8px 0}
.cr-ai em{font-style:normal;font-size:11px;font-weight:700;color:var(--ai);display:block;margin-bottom:2px}
.cr-rule{background:var(--ok-dim);border-radius:var(--r-sm);padding:10px 12px;font-size:13px;margin:8px 0}
.cr-rule em{font-style:normal;font-size:11px;font-weight:700;color:var(--ok);display:block;margin-bottom:2px}
.cr-empty{padding:36px 12px;text-align:center;color:var(--muted);font-size:14px}
.cr-empty b{display:block;color:var(--ink);margin-bottom:4px;font-size:15px}
.cr-selbar{position:sticky;bottom:0;z-index:20;display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;background:var(--ink);color:#fff;padding:12px 16px;border-radius:var(--r-sm);margin-top:12px;box-shadow:var(--shadow-lg)}
.cr-selbar .cr-btn{border-color:transparent}

/* Инструктажи */
.cr-train{display:grid;grid-template-columns:minmax(220px,300px) 1fr;gap:20px;align-items:start}
.cr-tlist{display:flex;flex-direction:column;border:1px solid var(--stroke);border-radius:var(--r-sm);overflow:hidden;background:var(--card)}
.cr-tli{border:0;border-bottom:1px solid var(--stroke);background:none;text-align:left;padding:12px 14px;font:inherit;cursor:pointer;min-height:44px}
.cr-tli:last-child{border-bottom:0}
.cr-tli:hover{background:var(--panel)}
.cr-tli.is-on{background:var(--brand-dim);box-shadow:inset 3px 0 0 var(--brand)}
.cr-tli b{display:block;font-size:14px}
.cr-tli span{font-size:12px;color:var(--muted)}
.cr-tp{border:1px solid var(--stroke);border-radius:var(--r-sm);background:var(--card);padding:18px}
.cr-tp-top{display:grid;grid-template-columns:1fr 170px;gap:10px;margin-bottom:14px}
.cr-ti{border-top:1px solid var(--stroke);padding:14px 0;display:grid;gap:8px}
.cr-ti-h{display:flex;gap:8px;align-items:center}
.cr-ti-h .cr-input{flex:1;font-weight:700}
#crRoot .cr-ti label{font-size:12px;color:var(--muted);font-weight:600;display:grid;gap:4px}
#crRoot .cr-ti label .cr-input{margin-top:0}
.cr-ti-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.cr-hist{margin-top:14px;font-size:13px}
.cr-hist li{padding:6px 0;border-top:1px solid var(--stroke);list-style:none}
.cr-hist ul{padding:0}

/* Колокольчик */
.cr-bell{position:relative}
.cr-bell-badge{position:absolute;top:-5px;right:-5px;min-width:17px;height:17px;border-radius:999px;background:var(--brand);color:#fff;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;padding:0 4px;pointer-events:none}
.cr-bell-pop{position:absolute;top:calc(100% + 8px);right:0;width:min(360px,calc(100vw - 24px));max-height:70vh;overflow:auto;background:var(--card);border:1px solid var(--stroke);border-radius:var(--r-sm);box-shadow:var(--shadow-lg);z-index:300;text-align:left}
.cr-bell-pop[hidden]{display:none}
.cr-bell-top{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;border-bottom:1px solid var(--stroke);font-weight:700;font-size:14px}
.cr-bell-top button{border:0;background:none;color:var(--ai);font:inherit;font-size:12px;font-weight:600;cursor:pointer}
.cr-bell-item{display:block;width:100%;text-align:left;border:0;border-bottom:1px solid var(--stroke);background:none;padding:12px 14px;font:inherit;cursor:pointer;min-height:44px}
.cr-bell-item:hover{background:var(--panel)}
.cr-bell-item.is-new{box-shadow:inset 3px 0 0 var(--brand)}
.cr-bell-item b{display:flex;gap:8px;justify-content:space-between;font-size:13px}
.cr-bell-item span{display:block;font-size:12px;color:var(--muted);margin-top:3px;line-height:1.4}
.cr-bell-empty{padding:22px 14px;text-align:center;color:var(--muted);font-size:13px}

@media(max-width:700px){
  .cr-train{grid-template-columns:1fr}
  .cr-body{padding-left:4px}
  .cr-ti-row,.cr-tp-top{grid-template-columns:1fr}
  .cr-hero b{font-size:36px;line-height:38px}
  .cr-btn,.cr-input{min-height:44px}
  .cr-filters .cr-input{flex:1 1 140px}
}
@media(prefers-reduced-motion:reduce){.cr-root *{transition:none!important;animation:none!important}}
