/* Knowledgebase layout, shared by the index, categories, search and articles. */
body.dp-theme .dp-native .dp-kb-page {
  display:grid; gap:18px; width:100%; min-width:0; text-align:start;
}
body.dp-theme .dp-native .dp-kb-page>.alert { margin:0; }
body.dp-theme .dp-native .dp-kb-panel {
  min-width:0; margin:0; padding:22px; border:1px solid var(--line);
  border-radius:18px; background:var(--surface); color:var(--ink);
}
body.dp-theme .dp-native :is(.dp-kb-heading,.dp-kb-article-header) h1 {
  margin:0; color:var(--ink); font-size:25px; line-height:1.7;
  font-weight:700; overflow-wrap:anywhere;
}
body.dp-theme .dp-native .dp-kb-heading>p {
  margin:8px 0 0; color:var(--ink-500); font-size:13px; line-height:1.9;
}
body.dp-theme .dp-native .dp-kb-search { margin:20px 0 0; }
body.dp-theme .dp-native .dp-kb-search-row { display:flex; align-items:stretch; gap:10px; min-width:0; }
body.dp-theme .dp-native .dp-kb-search-row .form-control {
  flex:1; width:0; min-width:0; min-height:46px; height:auto; margin:0; padding:11px 14px;
  border:1px solid var(--line); border-radius:10px; background:var(--paper-deep);
  color:var(--ink); font:inherit; font-size:13px; line-height:1.8; text-align:start;
}
body.dp-theme .dp-native .dp-kb-search-row .form-control::placeholder { color:var(--muted); opacity:1; }
body.dp-theme .dp-native .dp-kb-search-row>.btn { flex:none; }
body.dp-theme .dp-native .dp-kb-page :is(.btn,button) {
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  max-width:100%; min-height:44px; margin:0; padding:10px 16px;
  border-radius:10px!important; font-size:13px; line-height:1.8; white-space:normal;
  text-align:center; vertical-align:middle; text-decoration:none; box-shadow:none!important;
}
body.dp-theme .dp-native .dp-kb-page :is(.btn,button)>i { flex:none; margin:0!important; }
body.dp-theme .dp-native .dp-kb-page :is(.btn,button)>span { min-width:0; }
body.dp-theme .dp-native .dp-kb-page .btn-sm { min-height:38px; padding:7px 12px; font-size:12px; }
body.dp-theme .dp-native .dp-kb-page .btn-primary {
  border:1px solid var(--action)!important; background:var(--action)!important; color:#fff!important;
}
body.dp-theme .dp-native .dp-kb-page .btn-default {
  border:1px solid var(--action)!important; background:var(--surface)!important; color:var(--link)!important;
}
body.dp-theme .dp-native .dp-kb-page .btn-default:is(:hover,:focus,:active),
body.dp-theme .dp-native .dp-kb-page .btn-primary:is(:hover,:focus,:active) {
  border-color:var(--action)!important; background:var(--action)!important; color:#fff!important;
  box-shadow:none!important;
}
body.dp-theme .dp-native .dp-kb-page :is(a,button,input,[tabindex]):focus-visible {
  outline:2px solid var(--link)!important; outline-offset:3px; box-shadow:none!important;
}

/* Cards form pairs only when the content column has enough room. */
body.dp-theme .dp-native .dp-kb-category-grid {
  display:flex; flex-wrap:wrap; align-items:flex-start; gap:16px; min-width:0;
}
body.dp-theme .dp-native .dp-kb-panel.dp-kb-category { flex:1 1 calc(50% - 8px); min-width:min(100%,300px); max-width:100%; padding:0; }
body.dp-theme .dp-native .dp-kb-category-link {
  display:flex; align-items:flex-start; gap:14px; min-width:0; padding:20px;
  border-radius:17px; color:var(--ink); text-decoration:none;
}
body.dp-theme .dp-native .dp-kb-category-link:hover { background:var(--paper-deep); }
body.dp-theme .dp-native .dp-kb-category-icon {
  display:grid; place-items:center; flex:0 0 42px; width:42px; height:42px;
  margin:0; border-radius:12px; background:var(--brand-50); color:var(--link); font-size:21px;
}
body.dp-theme .dp-native :is(.dp-kb-category-copy,.dp-kb-lesson-copy) { flex:1; min-width:0; }
body.dp-theme .dp-native .dp-kb-category-title { display:flex; align-items:center; flex-wrap:wrap; gap:8px 12px; }
body.dp-theme .dp-native .dp-kb-category-title h3 { flex:1 1 120px; margin:0; font-size:15px; line-height:1.8; font-weight:700; overflow-wrap:anywhere; }
body.dp-theme .dp-native .dp-kb-count {
  max-width:100%; padding:3px 9px; border:1px solid var(--line); border-radius:20px;
  color:var(--ink-500); background:var(--paper-deep); font-size:11px; line-height:1.8;
}
body.dp-theme .dp-native .dp-kb-category-copy p { margin:8px 0 0; color:var(--ink-500); font-size:12px; line-height:1.9; overflow-wrap:anywhere; }
body.dp-theme .dp-native .dp-kb-chevron { flex:none; align-self:center; margin:0!important; color:var(--muted); font-size:11px; }
body.dp-theme .dp-native .dp-kb-category-actions { display:flex; justify-content:flex-end; padding:12px 20px; border-top:1px solid var(--line-soft); }

/* Full-width article rows keep titles, excerpts and actions distinct. */
body.dp-theme .dp-native .dp-kb-panel.dp-kb-list-panel { padding:0; }
body.dp-theme .dp-native .dp-kb-section-title {
  display:flex; align-items:center; gap:10px; margin:0; padding:18px 22px;
  border-bottom:1px solid var(--line-soft); color:var(--ink); font-size:17px; line-height:1.8; font-weight:700;
}
body.dp-theme .dp-native .dp-kb-section-title>i { flex:none; margin:0; color:var(--link); }
body.dp-theme .dp-native .dp-kb-section-title>span { min-width:0; overflow-wrap:anywhere; }
body.dp-theme .dp-native .dp-kb-article-list { margin:0; padding:0 22px; list-style:none; }
body.dp-theme .dp-native .dp-kb-article-row { display:flex; align-items:center; gap:14px; margin:0; padding:0; border-bottom:1px solid var(--line-soft); }
body.dp-theme .dp-native .dp-kb-article-row:last-child { border-bottom:0; }
body.dp-theme .dp-native .dp-kb-article-link {
  display:flex; align-items:flex-start; gap:12px; flex:1; min-width:0; padding:18px 0;
  color:var(--ink); text-decoration:none;
}
body.dp-theme .dp-native .dp-kb-article-link:is(:hover,:focus) { color:var(--ink); }
body.dp-theme .dp-native .dp-kb-article-link:hover .dp-kb-lesson-title { color:var(--link); }
body.dp-theme .dp-native .dp-kb-lesson-icon { flex:none; margin:5px 0 0!important; color:var(--link); font-size:18px; }
body.dp-theme .dp-native .dp-kb-lesson-title { display:block; color:var(--ink); font-size:14px; line-height:1.9; font-weight:700; overflow-wrap:anywhere; }
body.dp-theme .dp-native .dp-kb-page .dp-kb-excerpt {
  display:block; margin:6px 0 0; padding:0; color:var(--ink-500)!important;
  font-size:12px; line-height:1.9; font-weight:400; opacity:1; overflow-wrap:anywhere;
}
body.dp-theme .dp-native .dp-kb-edit { flex:none; }
body.dp-theme .dp-native .dp-kb-empty { display:flex; align-items:center; gap:14px; padding:24px; color:var(--ink-500); }
body.dp-theme .dp-native .dp-kb-empty>i { flex:none; color:var(--link); font-size:22px; }
body.dp-theme .dp-native .dp-kb-empty p { margin:0; font-size:13px; line-height:1.9; }
body.dp-theme .dp-native .dp-kb-page-actions { display:flex; flex-wrap:wrap; align-items:center; gap:10px; }
body.dp-theme .dp-native .dp-kb-page-actions>.btn-default { margin-inline-start:auto; }

/* Reading surface and the native rich-text article. */
body.dp-theme .dp-native .dp-kb-panel.dp-kb-article { padding:26px; }
body.dp-theme .dp-native .dp-kb-article-header { padding-bottom:20px; border-bottom:1px solid var(--line-soft); }
body.dp-theme .dp-native .dp-kb-meta { display:flex; flex-wrap:wrap; align-items:center; gap:10px 18px; margin:12px 0 0; padding:0; list-style:none; }
body.dp-theme .dp-native .dp-kb-meta>li { display:flex; align-items:center; gap:8px; min-width:0; color:var(--ink-500); font-size:12px; line-height:1.8; }
body.dp-theme .dp-native .dp-kb-meta>li>i { flex:none; margin:0; }
body.dp-theme .dp-native .dp-kb-meta>li>span { min-width:0; overflow-wrap:anywhere; }
body.dp-theme .dp-native .dp-kb-tags { padding:5px 10px; border-radius:10px; background:var(--paper-deep); }
body.dp-theme .dp-native .dp-kb-tags a { color:var(--link); }
body.dp-theme .dp-native .dp-kb-article-content { display:flow-root; min-width:0; padding:24px 0; color:var(--ink); font-size:14px; line-height:2; overflow-wrap:anywhere; }
body.dp-theme .dp-native .dp-kb-article-content>:first-child { margin-top:0; }
body.dp-theme .dp-native .dp-kb-article-content>:last-child { margin-bottom:0; }
body.dp-theme .dp-native .dp-kb-article-content p { margin:0 0 16px; line-height:2; }
body.dp-theme .dp-native .dp-kb-article-content :is(h1,h2,h3,h4,h5,h6) { margin:26px 0 12px; color:var(--ink); line-height:1.8; font-weight:700; break-after:avoid; }
body.dp-theme .dp-native .dp-kb-article-content :is(h1,h2) { font-size:21px; }
body.dp-theme .dp-native .dp-kb-article-content h3 { font-size:18px; }
body.dp-theme .dp-native .dp-kb-article-content :is(h4,h5,h6) { font-size:16px; }
body.dp-theme .dp-native .dp-kb-article-content :is(ul,ol) { margin:12px 0 20px; padding-inline-start:26px; }
body.dp-theme .dp-native .dp-kb-article-content li { padding-inline-start:4px; margin-bottom:8px; }
body.dp-theme .dp-native .dp-kb-article-content li::marker { color:var(--link); }
body.dp-theme .dp-native .dp-kb-article-content li :is(ul,ol) { margin-block:8px; }
body.dp-theme .dp-native .dp-kb-article-content a:not(.btn) { color:var(--link); text-decoration:underline; text-underline-offset:3px; }
body.dp-theme .dp-native .dp-kb-article-content a:not(.btn)>i { margin-inline-end:6px; }
body.dp-theme .dp-native .dp-kb-article-content :is(.btn,button) { margin-block:4px; margin-inline:0 8px; }
body.dp-theme .dp-native .dp-kb-article-content .btn-group { display:inline-flex; flex-wrap:wrap; gap:10px; }
body.dp-theme .dp-native .dp-kb-article-content .btn-group>.btn { margin:0; }
body.dp-theme .dp-native .dp-kb-article-content :is(img,video) { max-width:100%!important; height:auto!important; border-radius:8px; }
body.dp-theme .dp-native .dp-kb-article-content iframe { max-width:100%!important; border:0; }
body.dp-theme .dp-native .dp-kb-article-content figure { max-width:100%; margin:20px 0; }
body.dp-theme .dp-native .dp-kb-article-content figcaption { margin-top:8px; color:var(--ink-500); font-size:12px; }
body.dp-theme .dp-native .dp-kb-article-content hr { margin:24px 0; border:0; border-top:1px solid var(--line-soft); }
body.dp-theme .dp-native .dp-kb-article-content blockquote { margin:20px 0; padding:16px 20px; border:0; border-inline-start:3px solid var(--action); border-radius:8px; background:var(--paper-deep); color:var(--ink-500); }
body.dp-theme .dp-native .dp-kb-article-content blockquote>:last-child { margin-bottom:0; }
body.dp-theme .dp-native .dp-kb-article-content code { color:var(--ink); background:var(--paper-deep); padding:2px 5px; border-radius:4px; font-family:Consolas,monospace; direction:ltr; unicode-bidi:isolate; }
body.dp-theme .dp-native .dp-kb-article-content pre { max-width:100%; margin:20px 0; padding:16px; overflow-x:auto; border:1px solid var(--line); border-radius:10px; background:var(--paper-deep); color:var(--ink); font:13px/1.8 Consolas,monospace; direction:ltr; text-align:left; white-space:pre; overflow-wrap:normal; }
body.dp-theme .dp-native .dp-kb-article-content pre code { padding:0; background:transparent; font:inherit; }
body.dp-theme .dp-native .dp-kb-table-scroll { max-width:100%; margin:20px 0; overflow-x:auto; border:1px solid var(--line); border-radius:10px; overscroll-behavior-inline:contain; }
body.dp-theme .dp-native .dp-kb-article-content table { width:100%!important; max-width:100%; margin:0; border-collapse:collapse; font-size:13px; line-height:1.9; }
body.dp-theme .dp-native .dp-kb-article-content :is(th,td) { padding:12px 14px; border:1px solid var(--line); vertical-align:top; text-align:start; }
body.dp-theme .dp-native .dp-kb-article-content th { background:var(--paper-deep); color:var(--ink); font-weight:700; }

/* Feedback and actions are part of the article footer, below the topic. */
body.dp-theme .dp-native .dp-kb-feedback { display:flex; flex-wrap:wrap; align-items:center; gap:14px 20px; padding:20px 0; border-top:1px solid var(--line-soft); }
body.dp-theme .dp-native .dp-kb-feedback h2 { flex:1 1 220px; margin:0; font-size:14px; line-height:1.9; font-weight:700; }
body.dp-theme .dp-native .dp-kb-feedback form { display:flex; flex-wrap:wrap; gap:10px; margin:0; margin-inline-start:auto; }
body.dp-theme .dp-native .dp-kb-article-actions { display:flex; flex-wrap:wrap; align-items:center; gap:12px; padding-top:20px; border-top:1px solid var(--line-soft); }
body.dp-theme .dp-native .dp-kb-action-group { display:flex; flex-wrap:wrap; gap:10px; margin-inline-start:auto; }
@media(max-width:600px) {
  body.dp-theme .dp-native .dp-kb-panel:not(.dp-kb-list-panel):not(.dp-kb-category) { padding:18px 16px; }
  body.dp-theme .dp-native :is(.dp-kb-heading,.dp-kb-article-header) h1 { font-size:22px; }
  body.dp-theme .dp-native .dp-kb-category-grid { gap:12px; }
  body.dp-theme .dp-native .dp-kb-panel.dp-kb-category { flex-basis:100%; }
  body.dp-theme .dp-native .dp-kb-category-link { gap:12px; padding:18px 16px; }
  body.dp-theme .dp-native .dp-kb-category-icon { flex-basis:36px; width:36px; height:36px; font-size:19px; }
  body.dp-theme .dp-native .dp-kb-section-title { padding:16px; font-size:15px; }
  body.dp-theme .dp-native .dp-kb-article-list { padding-inline:16px; }
  body.dp-theme .dp-native .dp-kb-article-row { flex-wrap:wrap; gap:0; }
  body.dp-theme .dp-native .dp-kb-article-link { flex-basis:100%; padding:16px 0; }
  body.dp-theme .dp-native .dp-kb-edit { margin:0 0 14px; margin-inline-start:auto; }
  body.dp-theme .dp-native .dp-kb-article-content { font-size:13px; padding-block:20px; }
  body.dp-theme .dp-native .dp-kb-search-row .btn { padding-inline:12px; }
  body.dp-theme .dp-native .dp-kb-search-row .form-control { padding-inline:10px; }
}

/* Print just the current lesson, without navigation or action controls. */
@media print {
  body.dp-kb-print-page { background:#fff!important; color:#000!important; padding:0!important; margin:0!important; min-height:0!important; }
  body.dp-kb-print-page>:not(#main-body),
  body.dp-kb-print-page .dp-rail,
  body.dp-kb-print-page .dp-main-content>:not(.dp-kb-page),
  body.dp-kb-print-page .dp-kb-page>:not(.dp-kb-article),
  body.dp-kb-print-page .dp-kb-meta,
  body.dp-kb-print-page .dp-kb-feedback,
  body.dp-kb-print-page .dp-kb-article-actions { display:none!important; }
  body.dp-kb-print-page :is(#main-body,#front-content,.dp-native,.dp-workspace,.dp-main-content,.dp-kb-page,.dp-kb-article) {
    display:block!important; position:static!important; float:none!important; inset:auto!important;
    width:100%!important; max-width:none!important; min-width:0!important; height:auto!important; min-height:0!important;
    margin:0!important; padding:0!important; overflow:visible!important; transform:none!important;
    border:0!important; border-radius:0!important; background:#fff!important; box-shadow:none!important;
  }
  body.dp-kb-print-page :is(#main-body,#front-content,.dp-native,.dp-workspace)::before,
  body.dp-kb-print-page :is(#main-body,#front-content,.dp-native,.dp-workspace)::after { display:none!important; }
  body.dp-kb-print-page .dp-kb-article-header { padding-bottom:12px!important; }
  body.dp-kb-print-page .dp-native .dp-kb-article-header h1 { color:#000!important; font-size:22pt!important; }
  body.dp-kb-print-page .dp-native .dp-kb-article-content { color:#000!important; font-size:11pt!important; }
  body.dp-kb-print-page .dp-kb-article-content * { color:#000!important; background:transparent!important; box-shadow:none!important; text-shadow:none!important; }
  body.dp-kb-print-page .dp-native .dp-kb-table-scroll { overflow:visible!important; border:0!important; }
  body.dp-kb-print-page .dp-native .dp-kb-article-content pre { white-space:pre-wrap!important; overflow-wrap:anywhere!important; overflow:visible!important; }
  body.dp-kb-print-page .dp-kb-article-content :is(img,figure,tr) { break-inside:avoid; }
  body.dp-kb-print-page .dp-kb-article-content :is(p,li) { orphans:3; widows:3; }
}
