/* Presentation for the platform's own views: knowledge base, administration, account pages and staging proposal
   previews. Public pages, forms and the header/footer are styled by style.css and platform.css, which are imported from
   the website repository. Classes here are not used by any website page. */
.kb-search { display: flex; gap: 12px; max-width: 640px; margin-bottom: 16px; }
.kb-search input, .actions-cell input { width: 100%; font: inherit; padding: 10px 12px; border: 1px solid var(--line); border-radius: 10px; background: #fff; color: var(--text); }
.kb-search input:focus-visible, .actions-cell input:focus-visible { outline: 3px solid var(--mint-ink); outline-offset: 1px; }
.kb-cats a[aria-current="page"] { font-weight: 700; }
.kb-item { padding: 16px 0; border-bottom: 1px solid var(--line); }
.kb-title { font-size: 20px; margin: 0 0 4px; }
.kb-body h2, .kb-body h3 { margin-top: 28px; }
.preview-banner { margin: 0; padding: 12px 16px; background: rgba(122, 82, 0, .1); border-left: 3px solid var(--amber-ink); }
.proposal-banner { margin: 0; padding: 12px 16px; background: rgba(122, 82, 0, .12); border-left: 3px solid var(--amber-ink); font-weight: 600; }
.table-scroll { overflow-x: auto; }
.admin-table { width: 100%; border-collapse: collapse; }
.admin-table th, .admin-table td { text-align: left; padding: 8px; border-bottom: 1px solid var(--line); vertical-align: top; }
.actions-cell form { display: inline-flex; gap: 6px; margin: 4px 0; flex-wrap: wrap; }
.inline-form { grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); align-items: end; max-width: 720px; }
