/* Alibry Web 0.15.0 — волна 15: темы, чек-листы, клавиатура бота, ссылки, папки и метки, профиль организации. */
:root {
  --w15-blue: #1f6feb; --w15-green: #2e9d57; --w15-red: #c62828; --w15-orange: #d97706; --w15-violet: #7c3aed; --w15-teal: #0f8b8d; --w15-gray: #6b7280;
}
@media (prefers-color-scheme: dark) {
  :root { --w15-blue: #6fa8ff; --w15-green: #5cc985; --w15-red: #f07272; --w15-orange: #f5a54a; --w15-violet: #b18cff; --w15-teal: #4fc3c5; --w15-gray: #a3adb9; }
}
.w15-c-blue { --w15-c: var(--w15-blue); } .w15-c-green { --w15-c: var(--w15-green); } .w15-c-red { --w15-c: var(--w15-red); }
.w15-c-orange { --w15-c: var(--w15-orange); } .w15-c-violet { --w15-c: var(--w15-violet); } .w15-c-teal { --w15-c: var(--w15-teal); } .w15-c-gray { --w15-c: var(--w15-gray); }
.chip[class*="w15-c-"] { border-color: color-mix(in srgb, var(--w15-c) 45%, transparent); }
.chip[class*="w15-c-"].on { background: color-mix(in srgb, var(--w15-c) 16%, transparent); color: var(--w15-c); }
.w15-dot { width: 22px; height: 22px; border-radius: 50%; background: var(--w15-c, var(--brand)); border: 2px solid transparent; display: inline-block; flex: none; }
.w15-dot.on { border-color: var(--ink); }
.w15-colors { margin: 4px 0; }

/* темы */
.w15-topics { display: flex; gap: 6px; padding: 6px 12px; overflow-x: auto; border-bottom: 1px solid var(--line); background: var(--bg); scrollbar-width: none; }
.w15-topics .chip.closed { opacity: .7; }
.w15-topics .count { margin-inline-start: 4px; }
.w15-topic-root { display: flex; align-items: center; gap: 10px; padding: 6px 2px; min-width: 220px; border-inline-start: 3px solid var(--w15-c, var(--brand)); padding-inline-start: 10px; }
.w15-topic-ic { font-size: 24px; }

/* чек-лист */
.w15-checklist { min-width: 240px; max-width: 420px; }
.w15-cl-title { display: flex; align-items: center; gap: 6px; margin-bottom: 6px; }
.w15-checklist .end-text { text-align: end; color: var(--ink-3); }
.w15-checklist ul { list-style: none; margin: 0 0 6px; padding: 0; }
.w15-checklist li { padding: 4px 0; border-bottom: 1px solid var(--line); }
.w15-checklist li label { display: flex; gap: 8px; align-items: flex-start; cursor: pointer; }
.w15-checklist li.done span { text-decoration: line-through; color: var(--ink-3); }
.w15-cl-by { display: block; margin-inline-start: 26px; color: var(--ink-3); font-size: 12px; }
.w15-fallback { white-space: pre-wrap; }

/* цитата фрагмента, ответ из другого чата, подпись, тихое */
.quote.w15-frag, .quote.w15-elsewhere { border-inline-start-color: var(--w15-teal); }
.w15-frag-ctx { padding: 4px 16px; font-size: 13px; color: var(--ink-2); background: var(--bg-2); }
.w15-signature { color: var(--ink-3); font-size: 13px; font-style: italic; margin-top: 2px; }
.w15-silent-mark { color: var(--ink-3); margin-inline-end: 4px; }
.w15-company { margin-inline-start: 6px; font-size: 11.5px; padding: 1px 6px; border-radius: 6px; background: var(--bg-3); color: var(--ink-2); font-weight: 500; }
.w15-company.ok { background: color-mix(in srgb, var(--w15-green) 16%, transparent); color: var(--w15-green); }

/* «Видно только вам» */
.w15-local .bubble { border: 1px dashed var(--brand); background: var(--brand-soft); }
.w15-only-you { display: flex; gap: 6px; align-items: center; color: var(--ink-2); }
.w15-only-you .link-btn { margin-inline-start: auto; }

/* клавиатура бота, меню, «/» */
.w15-kb { position: relative; display: flex; flex-direction: column; gap: 6px; padding-block: 8px 8px; padding-inline: 12px 40px; background: var(--bg-2); border-top: 1px solid var(--line); }
.w15-kb.compact .w15-kb-btn { min-height: 34px; }
.w15-kb-row { display: flex; gap: 6px; }
.w15-kb-btn { flex: 1; min-height: 44px; border-radius: 10px; border: 1px solid var(--line); background: var(--bg); color: var(--ink); font-weight: 600; }
.w15-kb-btn[class*="w15-c-"] { background: color-mix(in srgb, var(--w15-c) 14%, var(--bg)); border-color: color-mix(in srgb, var(--w15-c) 40%, transparent); color: var(--w15-c); }
.w15-kb-hide { position: absolute; inset-inline-end: 6px; top: 8px; }
.w15-menu-btn { display: inline-flex; align-items: center; gap: 4px; border-radius: 18px; padding: 0 12px; height: 40px; background: var(--brand); color: var(--brand-ink); border: 0; font-weight: 600; flex: none; }
.w15-cmd-menu button { display: flex; gap: 8px; align-items: baseline; }
.w15-slash small { color: var(--ink-3); margin-inline-start: auto; max-width: 50%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.w12-btn[class*="w15-c-"] { border-color: var(--w15-c); color: var(--w15-c); }

/* организация */
.w15-org-card { margin: 10px auto; max-width: 420px; padding: 12px 14px; border-radius: 12px; background: var(--bg); box-shadow: var(--shadow); display: flex; flex-direction: column; gap: 6px; text-align: center; }
.w15-org-card a { color: var(--brand); }
.w15-start { margin: 6px 0 0; color: var(--ink-2); }
.w15-open { font-weight: 600; font-size: 13px; }
.w15-open.on { color: var(--w15-green); } .w15-open.off { color: var(--w15-red); }
.w15-hours { border-collapse: collapse; margin: 6px 0; font-size: 13.5px; }
.w15-hours td { padding-block: 2px 2px; padding-inline: 0 10px; }
.w15-day input[type=time] { width: 110px; }

/* каналы: комментарии */
.w15-comments { margin: 2px 0 6px; padding-inline-start: 8px; }
.w15-comments-list { display: flex; flex-direction: column; gap: 4px; max-width: 520px; padding: 6px 10px; border-radius: 10px; background: var(--bg-2); }
.w15-comment { font-size: 14px; }

/* окна и страницы */
.w15-modal { display: flex; flex-direction: column; gap: 10px; max-width: 440px; width: calc(100vw - 32px); max-height: calc(100vh - 32px); overflow: auto; }
.w15-modal textarea, .w15-modal input:not([type=checkbox]) { width: 100%; }
.w15-page .info-card { margin-bottom: 10px; }
.w15-qr { background: #fff; padding: 8px; border-radius: 10px; width: max-content; margin: 6px 0; }
.w15-inv.revoked, .w15-inv.expired, .w15-inv.exhausted { opacity: .7; }
.w15-inv-details { margin-top: 8px; display: flex; flex-direction: column; gap: 6px; }
.w15-bulk-row { display: flex; gap: 8px; align-items: center; border-bottom: 1px solid var(--line); padding: 6px 0; }
.w15-mini-qr svg { width: 64px; height: 64px; display: block; }
.badge-soft.ok { color: var(--w15-green); }
.w15-enable { display: flex; flex-direction: column; gap: 8px; }
.w15-right select, .w15-day select { min-width: 140px; }
.w15-list { margin: 0; padding-inline-start: 20px; display: flex; flex-direction: column; gap: 6px; }
.file-btn { cursor: pointer; text-align: center; }
.w15-lbl { font-size: 10.5px; padding: 0 6px; border-radius: 6px; margin-inline-start: 6px; color: var(--w15-c); background: color-mix(in srgb, var(--w15-c) 14%, transparent); font-weight: 600; flex: none; }
.w15-fwd-opts { padding: 4px 2px; }
.w15-role-edit { border-top: 1px solid var(--line); padding-top: 8px; }
@media (max-width: 700px) {
  .w15-menu-btn { padding: 0 10px; }
  .w15-kb-btn { min-height: 40px; }
}
