/* 每日日报页（2026-09-20 改版：要点 → 话题分布 → 会话 → 出单/待跟进 → 经验萃取 → 运行数据折叠） */
body { background:var(--canvas); }
.rpt-app { max-width: 1180px; margin: 0 auto; padding: 26px 18px 60px; }
.rpt-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 14px; }
.rpt-head h1 { margin: 0 0 4px; font-size: 22px; }
.rpt-head p { margin: 0; color: var(--muted); font-size: 13px; max-width: 680px; }
.rpt-head nav { display: flex; gap: 8px; flex-shrink: 0; }
.rpt-head nav a { color: var(--ink-2); font-size: 12px; text-decoration: none; background:#fff; border: 1px solid var(--line); border-radius: 7px; padding: 5px 11px; }
[data-embedded="1"] .rpt-head nav a:not([href="/sales"]) { display: none; }

.rpt-controls { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; margin: 16px 0 12px; }
.rpt-controls input[type="date"] { border: 1px solid var(--line); border-radius: 9px; padding: 7px 10px; background:#fff; }
.rpt-generated { color: var(--muted); font-size: 12px; }
.rpt-spacer { flex: 1; }
.rpt-tabs { display: inline-flex; background:#fff; border: 1px solid var(--line); border-radius: 9px; padding: 2px; margin-right: 6px; }
.rpt-tabs button { border: 0; background: transparent; padding: 6px 13px; border-radius: 7px; font-size: 13px; color: var(--ink-2); cursor: pointer; }
.rpt-tabs button.active { background: var(--green); color: var(--text-on-accent); }

/* 2026-10-01 日期条 + 标签合成一块吸顶（shell.js #rpt-sticky）：长页面滚下去也看得到是哪天、能换页；经验页的「筛选：… ↑」出在标签行右头。
   表头 .rpt-table th 的 top 由 shell.js 按这块的实际高度写 */
.rpt-sticky { position: sticky; top: 0; z-index: 8; background: var(--canvas); margin: 10px 0 16px; padding-top: 6px; }
.rpt-sticky .rpt-controls { margin: 0 0 6px; }
.rpt-sticky .rpt-nav { margin: 0; }
.rpt-fltslot { margin-left: auto; align-self: center; display: inline-flex; min-width: 0; }
.rpt-fltslot:empty { display: none; }
/* 手机上这块折成五六行，吸顶会吃掉小半屏：只在宽一点的屏上吸顶（同平台投入产出的工具条） */
@media (max-width: 640px) { .rpt-sticky { position: static; } }

.rpt-live-note { margin: 8px 0; font-size: 12px; border:1px solid var(--warning-border); background:var(--warning-bg); color:var(--warning-fg); border-radius: 9px; padding: 8px 12px; }

/* 标签栏兼数字盘。2026-09-22 改版：一屏只干一件事（要管的事），其余各自一个标签页。
   数字直接长在入口上，省掉了以前那排「看到了但点不动」的统计卡。 */
.rpt-nav { display: flex; flex-wrap: wrap; gap: 4px; border-bottom: 1px solid var(--line); margin: 0 0 16px; }
/* 2026-10-01 标签早改成 <a> 了，这几条却只写了 button：哪页亮着一直看不出来。a 一起写上 */
.rpt-nav button, .rpt-nav a { appearance: none; background: none; border: 0; border-bottom: 2px solid transparent;
  padding: 9px 14px; font-size: 14px; color: var(--ink-2); cursor: pointer; border-radius: 6px 6px 0 0; }
.rpt-nav button:hover, .rpt-nav a:hover { background: var(--surface-hover); color: var(--ink); }
.rpt-nav button.active, .rpt-nav a.active { color: var(--green); border-bottom-color: var(--green); }
.rpt-nav em { font-style: normal; margin-left: 6px; font-size: 13px; color: var(--muted); }
.rpt-nav button.active em, .rpt-nav a.active em { color: var(--green); }
.rpt-pane[hidden] { display: none; }
/* 标签是真链接（能中键新开、能收藏），样式仍按按钮来 */
.rpt-nav a { text-decoration: none; }

/* 待跟进的分页与两堆切换（2026-09-22 起服务端分页，一页 20 条） */
.rpt-scope { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 0 0 12px; }
.rpt-pager { display: flex; align-items: center; gap: 10px; margin: 14px 0 0; }

/* 要管的事：整宽多列。以前是 1.4fr/1fr 两格并排，左边「要点」只有 5 行短字、
   右边 6 张卡，grid 两格等高 —— 左边那块大白就是这么来的（老板 2026-09-22 反馈）。 */
.rpt-attention { display: grid; grid-template-columns: repeat(auto-fit, minmax(380px, 1fr)); gap: 10px; align-items: start; }
.rpt-attn { border-left: 3px solid var(--warning-border); background: var(--warning-bg); border-radius: 6px; padding: 11px 14px; font-size: 14px; line-height: 1.6; }
.rpt-attn.urgent { border-left-color: var(--danger-fg); background: var(--danger-bg); }
.rpt-attn small { display: block; color: var(--muted); font-size: 11px; margin-top: 2px; }
@media (max-width: 860px) { .rpt-attention { grid-template-columns: 1fr; } }

.rpt-stats { display: grid; grid-template-columns: repeat(5, 1fr); gap: 12px; margin: 18px 0 0; }
.rpt-stats article { background:#fff; border: 1px solid var(--line); border-radius: 12px; padding: 12px 16px; }
.rpt-stats span { font-size: 12px; color: var(--ink-2); }
.rpt-stats strong { display: block; font-size: 24px; color: var(--green); margin: 2px 0; }
.rpt-stats small { color: var(--muted); font-size: 11px; }
.rpt-stats article.warn strong { color:var(--warning-fg); }
.rpt-stats article.danger strong { color:var(--danger-fg); }
.rpt-stats--ops { grid-template-columns: repeat(4, 1fr); margin-top: 12px; }
@media (max-width: 860px) { .rpt-stats, .rpt-stats--ops { grid-template-columns: repeat(2, 1fr); } }

.rpt-section { margin-bottom: 18px; }
.rpt-section h2 { font-size: 14px; margin: 0 0 8px; }
.rpt-section-head { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; flex-wrap: wrap; margin-bottom: 8px; }
.rpt-section-head h2 { margin: 0; }
.rpt-link { font-size: 12px; color: var(--green); text-decoration: none; }
.rpt-filter { font-size: 12px; color: var(--muted); }
.rpt-filter select { border: 1px solid var(--line); border-radius: 7px; padding: 3px 6px; background: #fff; }

.rpt-types { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; }
.rpt-type { text-align: left; background:#fff; border: 1px solid var(--line); border-radius: 12px; padding: 11px 14px; cursor: pointer; font: inherit; color: inherit; }
.rpt-type:hover { border-color: var(--line-strong); }
.rpt-type.active { border-color: var(--green); box-shadow: 0 0 0 1px var(--green); }
.rpt-type.empty { opacity: .55; }
.rpt-type b { font-size: 13px; }
.rpt-type strong { display: block; font-size: 22px; color: var(--green); margin: 2px 0; }
.rpt-type small { color: var(--muted); font-size: 11px; }
.rpt-type small em { font-style: normal; color: var(--warning-fg); }
@media (max-width: 860px) { .rpt-types { grid-template-columns: repeat(2, 1fr); } }
.rpt-type-detail { margin-top: 10px; background:#fff; border: 1px solid var(--line); border-radius: 12px; padding: 12px 16px; }
.rpt-type-detail > header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 6px; font-size: 13px; }

.rpt-columns { display: grid; grid-template-columns: 1.5fr 1fr; gap: 16px; align-items: start; }
@media (max-width: 860px) { .rpt-columns { grid-template-columns: 1fr; } }

.rpt-chat-list { display: grid; gap: 8px; }
.rpt-chat { background:#fff; border: 1px solid var(--line); border-radius: 12px; }
.rpt-chat > summary { list-style: none; cursor: pointer; padding: 11px 15px; }
.rpt-chat > summary::-webkit-details-marker { display: none; }
.rpt-chat-top { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
.rpt-chat-top b { font-size: 14px; }
.rpt-chat-top .count { margin-left: auto; color: var(--muted); font-size: 12px; }
.rpt-chat-sum { margin-top: 4px; font-size: 13px; color: var(--ink-2); line-height: 1.55; }
.rpt-chat-body { padding: 0 15px 12px; border-top: 1px dashed var(--line); }

.tag { display: inline-block; border-radius: 6px; padding: 1px 7px; font-size: 11px; background:var(--canvas); color: var(--ink-2); white-space: nowrap; }
.tag.ok { background:var(--accent-soft-bg); color: var(--green); }
.tag.warn { background:var(--warning-bg); color:var(--warning-fg); }
.tag.bad { background:var(--danger-bg); color:var(--danger-fg); }
.tag.info { background:var(--info-bg); color:var(--info-fg); }

.rpt-topic { padding: 9px 0; border-bottom: 1px solid var(--line); }
.rpt-topic:last-child { border-bottom: 0; }
.rpt-topic header { display: flex; gap: 6px; align-items: center; flex-wrap: wrap; font-size: 12px; color: var(--muted); }
.rpt-topic header b { color: var(--ink); font-size: 13px; }
.rpt-topic p { margin: 3px 0 0; font-size: 13px; color: var(--ink-2); line-height: 1.55; }
.rpt-topic q { display: block; margin-top: 3px; font-size: 12px; color: var(--muted); }
.rpt-topic q::before { content: "“"; } .rpt-topic q::after { content: "”"; }
.rpt-group-name { font-size: 12px; font-weight: 600; color: var(--ink-2); margin: 10px 0 0; }

.rpt-panel { background:#fff; border: 1px solid var(--line); border-radius: 12px; padding: 10px 14px; }
.rpt-kv { display: grid; grid-template-columns: repeat(3, 1fr); gap: 6px; margin-bottom: 8px; }
.rpt-kv div { background: var(--canvas); border-radius: 8px; padding: 6px 9px; }
.rpt-kv span { display: block; font-size: 11px; color: var(--muted); }
.rpt-kv b { font-size: 16px; }
.rpt-kv i { font-style: normal; font-size: 11px; margin-left: 4px; }
.up { color: var(--green); } .down { color: var(--danger-fg); }
.rpt-prod { display: flex; gap: 10px; align-items: center; padding: 6px 0; border-top: 1px solid var(--line); font-size: 12px; }
.rpt-prod img, .rpt-prod .noimg { width: 40px; height: 40px; border-radius: 6px; object-fit: cover; background: var(--canvas); flex-shrink: 0; }
.rpt-prod div { min-width: 0; flex: 1; }
.rpt-prod b { display: block; font-size: 13px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.rpt-prod span { color: var(--muted); }
.rpt-prod strong { font-size: 13px; flex-shrink: 0; }

.rpt-chips { display: flex; gap: 6px; flex-wrap: wrap; }
.rpt-chips button { border: 1px solid var(--line); background: #fff; border-radius: 999px; padding: 3px 10px; font-size: 12px; cursor: pointer; color: var(--ink-2); }
.rpt-chips button.active { background: var(--green); color: var(--text-on-accent); border-color: var(--green); }
.rpt-lessons { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px; margin-bottom: 10px; }
@media (max-width: 860px) { .rpt-lessons { grid-template-columns: 1fr; } }
.rpt-lesson { background:#fff; border: 1px solid var(--line); border-radius: 12px; padding: 11px 15px; }
.rpt-lesson.featured { border-color: var(--accent-soft-border); background: var(--accent-soft-bg); }
.rpt-lesson header { display: flex; gap: 6px; align-items: center; font-size: 12px; color: var(--muted); margin-bottom: 4px; }
.rpt-lesson header b { color: var(--ink); font-size: 13px; }
.rpt-lesson p { margin: 0; font-size: 13px; line-height: 1.6; color: var(--ink-2); }

.rpt-lesson .rpt-case { color: var(--ink); margin-bottom: 3px; }
.rpt-lesson p i { font-style: normal; font-size: 11px; color: var(--muted); border: 1px solid var(--line); border-radius: 4px; padding: 0 4px; margin-right: 6px; }
.rpt-lesson footer { display: flex; gap: 8px; align-items: center; justify-content: space-between; flex-wrap: wrap; margin-top: 7px; padding-top: 6px; border-top: 1px dashed var(--line); font-size: 12px; color: var(--muted); }
.rpt-lesson header { flex-wrap: wrap; }
.rpt-verdicts { margin-bottom: 8px; }
.rpt-people { display: grid; gap: 6px; margin-bottom: 10px; }
.rpt-people:empty { display: none; }
.rpt-people-row { display: flex; gap: 6px; align-items: center; flex-wrap: wrap; }
.rpt-people-row small { color: var(--muted); font-size: 12px; width: 76px; flex-shrink: 0; }
.rpt-people-row button { display: inline-flex; gap: 5px; align-items: center; border: 1px solid var(--line); background: #fff; border-radius: 8px; padding: 3px 8px; font-size: 12px; cursor: pointer; color: var(--ink-2); }
.rpt-people-row button b { font-weight: 600; color: var(--ink); max-width: 200px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.rpt-people-row button.active { border-color: var(--green); box-shadow: 0 0 0 1px var(--green); }
.rpt-sources { margin-top: 8px; padding-top: 6px; border-top: 1px dashed var(--accent-soft-border); display: grid; gap: 6px; }
.rpt-sources > small { font-size: 11px; color: var(--muted); }
.rpt-source { background: #fff; border: 1px solid var(--line); border-radius: 8px; padding: 6px 9px; }
.rpt-source-head { display: flex; gap: 6px; align-items: center; flex-wrap: wrap; font-size: 12px; color: var(--muted); }
.rpt-source-head .rpt-ev-btn { margin-left: auto; }
.rpt-source p { font-size: 12px; margin-top: 3px; }
.rpt-ev-btn { border: 0; background: transparent; color: var(--green); font-size: 12px; cursor: pointer; padding: 0; white-space: nowrap; }
.rpt-ev-btn::after { content: " ▾"; }
.rpt-ev-btn.open::after { content: " ▴"; }
.rpt-topic header .rpt-ev-btn { margin-left: auto; }
.rpt-ev { margin-top: 7px; background: var(--canvas); border: 1px solid var(--line); border-radius: 8px; padding: 6px 9px; max-height: 320px; overflow: auto; }
.rpt-ev-line { display: grid; grid-template-columns: 38px max-content 1fr; gap: 7px; font-size: 12px; line-height: 1.6; padding: 2px 4px; border-radius: 5px; color: var(--ink-2); }
.rpt-ev-line time { color: var(--muted); }
.rpt-ev-line b { font-weight: 500; color: var(--muted); max-width: 150px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.rpt-ev-line b.ours { color: var(--green); }
.rpt-ev-line span { white-space: pre-wrap; word-break: break-word; }
.rpt-ev-line.ref { background: var(--warning-bg); color: var(--ink); }
.rpt-ev-gap { text-align: center; color: var(--muted); font-size: 12px; line-height: 1; }

.rpt-actions { margin-left: auto; display: inline-flex; gap: 8px; align-items: center; }
.rpt-topic header .rpt-ev-btn { margin-left: 0; }
.rpt-mini { border: 1px solid var(--line); background: #fff; border-radius: 7px; padding: 2px 9px; font-size: 12px; color: var(--ink-2); cursor: pointer; }
.rpt-mini:hover { border-color: var(--line-strong); }
.rpt-mini.primary { border-color: var(--green); color: var(--green); }
.rpt-mini:disabled { opacity: .5; cursor: default; }
.rpt-attn.done { opacity: .55; }
.rpt-attn-src { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; margin-top: 5px; padding-top: 5px; border-top: 1px dashed var(--line); font-size: 12px; color: var(--ink-2); }
.rpt-attn-src .rpt-ev { flex-basis: 100%; }
.rpt-attn-foot { display: flex; gap: 8px; align-items: center; margin-top: 6px; }
.rpt-attn-foot .rpt-note { margin: 0; }
.rpt-kv4 { grid-template-columns: repeat(4, 1fr); }
@media (max-width: 860px) { .rpt-kv4 { grid-template-columns: repeat(2, 1fr); } }
/* 标签怎么来的（2026-09-26 老板：光悬停不够）。「AI 判」小字标在模型判的标签前，规则原文在页顶可展开 */
.rpt-ai { font-size: 10px; color: var(--muted); border: 1px dashed var(--line); border-radius: 4px; padding: 0 4px; margin: 0 2px 0 6px; white-space: nowrap; vertical-align: 1px; }
.rpt-rules { margin: 8px 0 0; font-size: 12px; color: var(--ink-2); }
.rpt-rules summary { cursor: pointer; color: var(--blue); width: max-content; }
.rpt-rules dl { margin: 6px 0 0; padding: 8px 12px; background: var(--surface); border: 1px solid var(--line); border-radius: 8px;
  display: grid; grid-template-columns: max-content 1fr; gap: 4px 12px; line-height: 1.6; }
.rpt-rules dt { font-weight: 600; color: var(--ink); white-space: nowrap; }
.rpt-rules dd { margin: 0; }
/* 表头往下滚也一直在（2026-09-26 老板看工厂待办时提的，全站同一条）：「人员岗位」一张就 60 多行，
   滚下去就不知道哪列是真名、哪列是岗位。separate 是为了 sticky 的 th 不丢底边。 */
.rpt-table { width: 100%; border-collapse: separate; border-spacing: 0; font-size: 13px; margin: 4px 0 8px; }
.rpt-table th { text-align: left; font-weight: 500; color: var(--muted); font-size: 12px; padding: 4px 8px; border-bottom: 1px solid var(--line);
  position: sticky; top: 0; z-index: 2; background: var(--surface); }   /* top 由 shell.js 按吸顶块高度覆盖（2026-10-01） */
.rpt-table td { padding: 5px 8px; border-bottom: 1px solid var(--line); }
.rpt-table td.down { font-weight: 600; }
.rpt-wait { padding: 7px 0; border-top: 1px solid var(--line); }
.rpt-wait-head { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; font-size: 12px; color: var(--muted); }
.rpt-wait-head b { color: var(--ink); font-size: 13px; }
.rpt-wait p { margin: 3px 0 0; font-size: 13px; color: var(--ink-2); }
.rpt-fold > summary { cursor: pointer; font-size: 12px; color: var(--ink-2); padding: 6px 0; }
.rpt-lesson.rejected { opacity: .6; }
.rpt-lesson header a.tag { text-decoration: none; }
.rpt-verdict-bar { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; margin-top: 7px; }
.rpt-verdict-bar:empty { display: none; }
.rpt-decided { font-size: 12px; }
.rpt-decided.ok { color: var(--green); } .rpt-decided.bad { color: var(--danger-fg); }
.rpt-decided a { color: inherit; }
.rpt-adopt { flex-basis: 100%; display: grid; gap: 8px; background: var(--canvas); border: 1px solid var(--line); border-radius: 10px; padding: 10px 12px; font-size: 13px; }
.rpt-adopt fieldset { border: 0; padding: 0; margin: 0; display: grid; gap: 4px; }
.rpt-adopt legend { font-size: 12px; color: var(--muted); padding: 0; margin-bottom: 2px; }
.rpt-adopt-new { display: grid; gap: 8px; }
.rpt-adopt-new[hidden], .rpt-adopt-kb[hidden] { display: none; }
.rpt-adopt-kb { display: grid; gap: 8px; }
.rpt-adopt label { display: grid; gap: 3px; font-size: 12px; color: var(--ink-2); }
.rpt-adopt fieldset label, .rpt-adopt label.inline { display: flex; gap: 6px; align-items: center; font-size: 13px; }
.rpt-adopt input:not([type=radio]):not([type=checkbox]), .rpt-adopt textarea, .rpt-adopt select, .rpt-staff input, .rpt-staff select {
  border: 1px solid var(--line); border-radius: 7px; padding: 5px 8px; font: inherit; font-size: 13px; background: #fff; }
.rpt-adopt-foot { display: flex; gap: 8px; align-items: center; }
.rpt-person { grid-column: 1 / -1; display: flex; gap: 6px 14px; align-items: center; flex-wrap: wrap; background: #fff; border: 1px solid var(--green); border-radius: 12px; padding: 10px 15px; font-size: 13px; color: var(--ink-2); }
.rpt-person b { font-size: 15px; color: var(--ink); }
.rpt-fold-wide { grid-column: 1 / -1; }
.rpt-fold-wide > .rpt-lessons { margin-top: 8px; }
.rpt-reject { flex-basis: 100%; display: flex; gap: 8px; align-items: center; }
.rpt-reject input { flex: 1; border: 1px solid var(--line); border-radius: 7px; padding: 5px 8px; font: inherit; font-size: 13px; background: #fff; }
.rpt-staff tr.todo td:first-child { border-left: 3px solid var(--warning-border); }
.rpt-staff input { width: 100%; box-sizing: border-box; }
.rpt-people-row button i { font-style: normal; font-size: 11px; color: var(--muted); }

.rpt-more { background:#fff; border: 1px solid var(--line); border-radius: 12px; padding: 10px 16px; margin-top: 8px; }
.rpt-more > summary { cursor: pointer; font-size: 13px; color: var(--ink-2); }
.rpt-cards { display: grid; gap: 10px; }
.list-hint { text-align: center; color: var(--muted); padding: 18px 0; font-size: 13px; }

.rpt-task { background:var(--canvas); border: 1px solid var(--line); border-radius: 12px; padding: 12px 15px; }
.rpt-task header { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; font-size: 12px; color: var(--muted); margin-bottom: 5px; }
.rpt-task .rpt-q { font-weight: 600; margin-bottom: 3px; }
.rpt-task .rpt-a { color: var(--ink-2); font-size: 13px; white-space: pre-wrap; max-height: 9em; overflow: auto; }

.rpt-list { display: grid; gap: 6px; background:var(--canvas); border: 1px solid var(--line); border-radius: 12px; padding: 10px 14px; }
.rpt-row { display: flex; justify-content: space-between; gap: 10px; font-size: 13px; padding: 3px 0; }
.rpt-row b { font-weight: 500; color: var(--ink-2); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.rpt-row span { color: var(--muted); flex-shrink: 0; }
.rpt-row button { font-size: 11px; padding: 3px 9px; }
.rpt-note { font-size: 12px; color: var(--muted); margin: 4px 0 8px; line-height: 1.6; }
#rpt-send-test { margin-top: 8px; }

/* 2026-10-04 老板：可视化——日报各页接 shared/viz.css 的零件（数字卡、状态牌、占比条、排行条、带图标小标题）。
   report.css 经验库（playbook）也在用：下面只写日报页才有的 id / 类（rpt-nav / rpt-pane / rpt-attn / rpt-scope / rpt-type / dq-），碰不到经验库 */
.rpt-nav .sqv-ico { margin-right: 5px; vertical-align: -2px; opacity: .8; }
.rpt-pane h2.sqv-h, .rpt-section h2.sqv-h { font-size: var(--fs-md); line-height: var(--lh-md); }
.rpt-pane .rpt-section-head h2.sqv-h { font-size: var(--fs-lg); line-height: var(--lh-lg); }
#rpt-stats .sqv-kpis { margin: 0 0 var(--sp-3); }
#rpt-ops-stats .sqv-kpis, #dq-stats .sqv-kpis { margin: var(--sp-3) 0 var(--sp-1); }
.rpt-attn > .sqv-pill { margin-right: 4px; vertical-align: 1px; }
.rpt-attn-src > span:first-child { min-width: 0; overflow-wrap: anywhere; }
.rpt-topic header .sqv-pill, .rpt-chat-top .sqv-pill, .rpt-wait-head .sqv-pill, .rpt-task header .sqv-pill { flex: none; }
.rpt-scope .sqv-kpis { flex: 1 1 100%; margin: 0; }
.rpt-scope .sqv-kpi { max-width: 240px; }
.rpt-type-share { margin: 0 0 10px; }
.rpt-type-share:empty { display: none; }
.rpt-type-sw { display: inline-block; width: 10px; height: 10px; margin-right: 6px; border-radius: 3px; vertical-align: 0; }
.rpt-staff td .sqv-meter, .rpt-table td .sqv-meter { min-width: 90px; max-width: 160px; }
@media (max-width: 640px) {
  .rpt-nav .sqv-ico { display: none; }
  .rpt-scope .sqv-kpi { max-width: none; }
}
.rpt-person-mix { flex: 1 1 100%; max-width: 420px; }
.rpt-lesson header .sqv-pill, .rpt-source-head .sqv-pill { flex: none; }
