/* L2OKO documents (11.11): document pages, the cookie banner (every page), admin bits for Telegram, documents and system. */

/* ---------- document pages ---------- */
.doc-body h2 { font-size: 19px; }
.doc-body p, .doc-body li { overflow-wrap: anywhere; }
.doc-miss { white-space: nowrap; padding: 0 4px; font-size: .92em; color: var(--fire); background: rgba(255, 157, 69, .08); border: 1px dashed rgba(255, 157, 69, .5); border-radius: 3px; }
.doc-list { list-style: none; display: grid; padding: 6px 8px 10px; }
.doc-list a { display: flex; align-items: flex-start; gap: 8px; padding: 8px 8px; font-size: 14.5px; line-height: 1.35; color: var(--muted); border-bottom: 1px solid var(--row); }
.doc-list li:last-child a { border-bottom: 0; }
.doc-list a:hover { color: var(--text); background: var(--row-hover); }
.doc-list .i { flex: none; width: 12px; height: 12px; margin-top: 4px; color: var(--fire-1); }
.doc-list-big a { align-items: center; gap: 14px; padding: 14px 14px; }
.doc-list-big a > .i:first-child { width: 22px; height: 22px; margin: 0; }
.doc-list-big span { display: grid; gap: 3px; flex: 1; min-width: 0; }
.doc-list-big b { font: 500 17px/1.25 var(--f-ui); text-transform: uppercase; letter-spacing: .03em; color: var(--text); }
.doc-list-big small { font-size: 13px; color: var(--dim); }
.doc-list-big .doc-go { width: 14px; height: 14px; margin: 0; color: var(--dim); }
.doc-list-big a:hover b { color: var(--fire-1); }
.consent span { min-width: 0; }

/* ---------- cookie banner ---------- */
.ck {
  position: fixed; z-index: 60; left: 50%; bottom: 14px; transform: translateX(-50%);
  width: min(920px, calc(100% - 24px));
  background: rgba(13, 26, 46, .94);
  border: 1px solid var(--edge); border-top-color: var(--edge-hi); border-radius: var(--r-3);
  box-shadow: var(--inner-hi), var(--shadow-pop);
  -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px);
}
.ck-in { display: flex; align-items: center; gap: 12px 18px; padding: 12px 16px; }
.ck-t { display: flex; align-items: flex-start; gap: 10px; flex: 1; min-width: 0; font-size: 14px; line-height: 1.45; color: var(--text); }
.ck-ico { flex: none; width: 18px; height: 18px; margin-top: 1px; color: var(--fire-1); }
.ck-btns { display: flex; flex-wrap: wrap; gap: 8px; flex: none; }

/* ---------- admin: Telegram, documents, system ---------- */
.tgx-form, .docx-form, .sysx-form { display: grid; gap: var(--gap); }
.tgx-checks { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 16px; }
.tgx-checks .help { margin-top: 4px; padding-left: 30px; }
.tgx-right { justify-content: flex-end; }
.tgx-text { display: grid; gap: 4px; min-width: 0; max-width: 460px; }
.tgx-text p { white-space: pre-wrap; overflow-wrap: anywhere; font-size: 13px; line-height: 1.4; max-height: 9.8em; overflow: hidden; }
.tgx-text .amc-sub { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.docx-act { display: flex; flex-wrap: wrap; gap: 6px; justify-content: flex-end; }
.sysx-dl { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px 16px; }
.sysx-kv { min-width: 0; }
.sysx-kv dt { font: 500 11.5px/1.2 var(--f-ui); text-transform: uppercase; letter-spacing: .06em; color: var(--dim); }
.sysx-kv dd { margin: 3px 0 0; font-size: 14px; overflow-wrap: anywhere; }
.sysx-mail { display: flex; align-items: flex-end; gap: 12px; flex-wrap: wrap; }
.sysx-mail .field { flex: 1 1 260px; min-width: 0; max-width: 420px; }

@media (max-width: 900px) {
  .sysx-dl { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  .ck { bottom: 8px; width: calc(100% - 16px); }
  .ck-in { flex-direction: column; align-items: stretch; padding: 12px 12px; }
  .ck-t { font-size: 13.5px; }
  .ck-btns { display: grid; grid-template-columns: 1fr 1fr; }
  .ck-btns .btn { padding-left: 8px; padding-right: 8px; }
  .tgx-checks { grid-template-columns: 1fr; }
  .docx-act { justify-content: flex-start; }
  .sysx-mail .btn { width: 100%; }
}
