/* Knowledge Hall: spaces, page tree, page view, editor, search, history and admin extras (light workspace) */

/* ---------- Small utilities ---------- */
.narrow { max-width:760px; }
.narrow-panel { max-width:820px; }
.text-danger { color:#b62346 !important; }
.input-lg { padding:14px 18px;font-size:1rem;border-radius:14px; }
.input-color { width:56px;height:42px;padding:3px; }
.workspace-content .eyebrow { margin:0 0 4px;font-size:.72rem;letter-spacing:2px; }
.hidden { display:none !important; }
.badge-draft { background:#fff2d6 !important;color:#7a5200 !important; }
.badge-archived { background:#eceff3 !important;color:#5d6b7c !important; }
.badge-warn { background:#ffe8d6 !important;color:#8a3d00 !important; }
.badge-lock { background:#fdecef !important;color:#9b1f3c !important; }
.review-in_progress { background:#e5effc !important;color:#235a9c !important; }
.review-in_review { background:#efe9ff !important;color:#5a3fb5 !important; }
.review-verified { background:#d5f3e5 !important;color:#16623f !important; }
.review-outdated { background:#ffe3e9 !important;color:#9b1f3c !important; }
.type-badge { display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:20px;background:#eef3fa;color:#2c4a6b;font:600 .74rem/1.6 var(--font); }
.type-icon { display:inline-block;width:1.35em;text-align:center;flex:0 0 auto; }
.space-chip { display:inline-flex;align-items:center;gap:6px;padding:2px 9px 2px 3px;border-radius:20px;background:#f2f6fb;color:#2c4a6b;font-size:.76rem;font-weight:600; }
.space-chip b { display:inline-grid;place-items:center;min-width:22px;height:20px;padding:0 5px;border-radius:12px;background:var(--space,#2368c4);color:#fff;font-size:.62rem;letter-spacing:.3px; }
.space-icon { display:inline-grid;place-items:center;flex:0 0 auto;width:34px;height:34px;border-radius:10px;color:#fff;font:700 1rem var(--font-d);box-shadow:inset 0 -2px 0 #0002; }
.space-icon.lg { width:56px;height:56px;border-radius:16px;font-size:1.6rem; }
.chip-list { list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px; }
.chip-list .label-chip { font-size:.78rem;padding:4px 10px; }
.label-row { display:flex;flex-wrap:wrap;gap:4px;margin:10px 0 0; }
.labels { margin-top:6px; }
.split { display:grid;grid-template-columns:280px minmax(0,1fr);gap:22px;align-items:start; }
.nav-list,.snippet-list { list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px; }
.nav-list a,.snippet-list a { display:flex;flex-direction:column;gap:2px;padding:9px 12px;border-radius:10px;color:#17457b; }
.nav-list a:hover,.snippet-list a:hover { background:#eef5ff; }
.nav-list li.current a,.snippet-list li.current a { background:#e1edfd;box-shadow:inset 3px 0 0 #2368c4; }
.snippet-preview { margin-top:12px;padding:16px;border:1px dashed #cddff4;border-radius:12px;background:#fbfdff; }
.meta-list,.details-dl { display:grid;grid-template-columns:minmax(120px,190px) minmax(0,1fr);gap:8px 18px;margin:0;font-size:.88rem; }
.meta-list dt,.details-dl dt { color:#526c88;font-weight:600; }
.meta-list dd,.details-dl dd { margin:0;overflow-wrap:anywhere; }
.bars { display:flex;flex-direction:column;gap:10px; }
.bar-row { display:grid;grid-template-columns:minmax(110px,190px) minmax(0,1fr) 48px;gap:12px;align-items:center;font-size:.84rem; }
.bar-track { height:10px;border-radius:6px;background:#edf2f9;overflow:hidden; }
.bar-fill { height:100%;border-radius:6px;background:var(--grad); }
.report-list { list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px; }
.report { padding:14px 16px;border:1px solid #f3cfd8;border-left:4px solid #e0475f;border-radius:12px;background:#fff9fa; }
.report-reason { margin:6px 0;padding:8px 12px;border-radius:8px;background:#fff;color:#6b2333;font-size:.86rem; }

/* Dropdown menus (details.menu > .menu-list) */
.menu-list { position:absolute;right:0;top:calc(100% + 6px);z-index:40;display:flex;flex-direction:column;min-width:220px;padding:6px;background:#fff;border:1px solid #cddff4;border-radius:12px;box-shadow:0 18px 40px -18px #0b2852aa; }
.menu-list a,.menu-list button { display:block;width:100%;text-align:left;padding:9px 12px;border:0;border-radius:8px;background:none;color:#17457b;font:500 .85rem var(--font);cursor:pointer;white-space:nowrap; }
.menu-list a:hover,.menu-list button:hover { background:#eef5ff; }

/* Header search suggestions */
.header-search { position:relative; }
.suggest-list { position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:60;display:flex;flex-direction:column;padding:6px;background:#fff;border:1px solid #cddff4;border-radius:12px;box-shadow:0 22px 50px -20px #061a38cc;max-height:70vh;overflow:auto; }
.suggest-item { display:flex;flex-direction:column;gap:1px;padding:8px 12px;border-radius:8px;color:#17457b; }
.suggest-item b { font-weight:600;font-size:.86rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
.suggest-item small { color:#6a83a0;font-size:.74rem; }
.suggest-item.active,.suggest-item:hover { background:#e5effc; }
.suggest-recent b { color:#526c88;font-weight:500; }
.suggest-all { border-top:1px solid #edf2f9;margin-top:4px; }

/* ---------- Page lists ---------- */
.page-list { list-style:none;margin:0;padding:0;display:flex;flex-direction:column; }
.page-list li { display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px;padding:9px 2px;border-bottom:1px solid #edf2f9;font-size:.88rem; }
.page-list li:last-child { border-bottom:0; }
.page-list li > a { font-weight:600;color:#17457b;overflow-wrap:anywhere; }
.page-list li > a:hover { color:#2368c4;text-decoration:underline; }
.page-list li > small { flex-basis:100%;padding-left:1.7em;font-size:.76rem; }
.page-list.ranked { counter-reset:rank; }
.page-list.ranked li::before { counter-increment:rank;content:counter(rank);display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#eaf2fe;color:#235a9c;font:700 .7rem var(--font); }
.page-list.ranked li > small { padding-left:calc(1.7em + 30px); }

/* ---------- Dashboard ---------- */
.hero-search { display:flex;gap:10px;margin:0 0 22px;padding:18px;border-radius:18px;background:linear-gradient(120deg,#0e3a7a,#2368c4 60%,#4aa1f8);box-shadow:0 24px 50px -30px #0b2852; }
.hero-search .input { flex:1;border:0;background:#fff; }
.hero-search .btn { white-space:nowrap; }
.kpi-grid { display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px;margin-bottom:22px; }
.kpi { display:flex;flex-direction:column;gap:2px;padding:16px 18px;border:1px solid #d9e4f2;border-radius:14px;background:#fff;color:#153253;box-shadow:0 10px 26px -22px #143b6b66;transition:transform .15s,box-shadow .15s; }
.kpi:hover { transform:translateY(-2px);box-shadow:0 16px 30px -20px #143b6b88; }
.kpi b { font:700 1.7rem var(--font-d);color:#17457b; }
.kpi span { font-size:.8rem;color:#526c88; }
.kpi-warn { border-left:4px solid #ef6c00; }

/* ---------- Spaces ---------- */
.space-cards { display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;margin-bottom:24px; }
.space-cards.compact { grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px;margin:0; }
.space-card { position:relative;display:flex;gap:14px;align-items:flex-start;padding:18px;border:1px solid #d9e4f2;border-radius:16px;background:#fff;color:#153253;overflow:hidden;box-shadow:0 10px 26px -22px #143b6b66;transition:transform .15s,box-shadow .15s; }
.space-card::before { content:'';position:absolute;inset:0 auto 0 0;width:4px;background:var(--space,#2368c4); }
.space-card:hover { transform:translateY(-2px);box-shadow:0 18px 34px -22px #143b6b99; }
.space-cards.compact .space-card { padding:12px 14px;align-items:center; }
.space-card b { display:block;color:#17457b; }
.space-card small { display:block;color:#6a83a0;font-size:.76rem; }
.space-card-body { display:flex;flex-direction:column;gap:4px;min-width:0; }
.space-desc { color:#526c88;font-size:.84rem;line-height:1.45; }
.space-title { display:flex;gap:16px;align-items:center; }
.space-title h1 { margin:0; }
.space-overview { display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:20px;align-items:start;margin-bottom:20px; }
.space-facts { display:flex;flex-direction:column;gap:14px; }
.type-counts { list-style:none;margin:0;padding:0; }
.type-counts li { display:flex;justify-content:space-between;gap:10px;padding:7px 0;border-bottom:1px solid #edf2f9;font-size:.85rem; }
.type-counts li:last-child { border-bottom:0; }
.home-preview { position:relative; }
.preview-fade { max-height:420px;overflow:hidden;-webkit-mask-image:linear-gradient(#000 70%,transparent);mask-image:linear-gradient(#000 70%,transparent); }
.dash-grid.two { grid-template-columns:repeat(2,minmax(0,1fr)); }

/* ---------- Space layout with page tree ---------- */
.space-layout { display:grid;grid-template-columns:280px minmax(0,1fr);gap:26px;align-items:start; }
.space-main { min-width:0; }
.space-sidebar { position:sticky;top:96px;display:flex;flex-direction:column;gap:10px;max-height:calc(100vh - 116px);overflow:auto;padding:14px;border:1px solid #d9e4f2;border-radius:16px;background:#fff;box-shadow:0 10px 26px -22px #143b6b66; }
.space-head { display:flex;gap:10px;align-items:center;padding:4px 2px 10px;border-bottom:1px solid #edf2f9;color:#153253; }
.space-head b { display:block;font-size:.95rem;line-height:1.25; }
.space-head small { color:#6a83a0;font-size:.74rem; }
.sidebar-create { margin:0; }
.btn-block { display:flex;width:100%;justify-content:center; }
.tree-filter { width:100%; }
.sidebar-links { display:flex;flex-direction:column;gap:2px;padding-top:8px;border-top:1px solid #edf2f9; }
.sidebar-links a { padding:7px 8px;border-radius:8px;font-size:.82rem;color:#2c4a6b; }
.sidebar-links a:hover { background:#eef5ff; }
.page-tree { font-size:.85rem; }
.page-tree.is-busy { opacity:.6;pointer-events:none; }
.tree-list { list-style:none;margin:0;padding:0; }
.tree-list .tree-list { display:none;padding-left:14px;margin-left:9px;border-left:1px dashed #d5e2f2; }
.tree-node.open > .tree-list,.page-tree.filtering .tree-list { display:block; }
.tree-row { display:flex;align-items:center;gap:2px;min-height:30px;padding:1px 4px 1px 0;border-radius:8px;border:1px solid transparent; }
.tree-row:hover { background:#f2f7fe; }
.tree-row.current { background:#e1edfd; }
.tree-row.current a { color:#0e3a7a;font-weight:700; }
.tree-row a { display:flex;align-items:center;gap:4px;flex:1;min-width:0;padding:4px 2px;color:#2c4a6b; }
.tree-title { overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
.tree-toggle,.tree-spacer { flex:0 0 22px;width:22px;height:22px; }
.tree-toggle { display:grid;place-items:center;padding:0;border:0;border-radius:6px;background:none;color:#6a83a0;cursor:pointer;font-size:.8rem;transition:transform .15s; }
.tree-toggle:hover { background:#dbe8f8;color:#17457b; }
.tree-node.open > .tree-row > .tree-toggle { transform:rotate(90deg); }
.tree-flag { padding:0 6px;border-radius:8px;background:#fff2d6;color:#7a5200;font-size:.64rem;font-weight:700;text-transform:uppercase; }
.tree-lock { font-size:.7rem;opacity:.75; }
.tree-row[draggable="true"] { cursor:grab; }
.tree-node.dragging > .tree-row { opacity:.45; }
.tree-row.drop-before { box-shadow:inset 0 3px 0 #2368c4; }
.tree-row.drop-after { box-shadow:inset 0 -3px 0 #2368c4; }
.tree-row.drop-inside { background:#d6e7fc;border-color:#2368c4; }
.tree-node.filter-hide { display:none; }
.tree-node.filter-match > .tree-row .tree-title { background:#fff3b0;border-radius:3px; }
.tree-node.just-moved > .tree-row { animation:khFlash 1.4s ease; }
@keyframes khFlash { 0%,40% { background:#cfe6ff; } 100% { background:transparent; } }

/* ---------- Page view ---------- */
.page-main .crumbs { display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-bottom:14px;font-size:.8rem;color:#526c88; }
.page-header { margin-bottom:22px;padding-bottom:18px;border-bottom:1px solid #e1eaf5; }
.page-badges { display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-bottom:8px; }
.page-title { margin:0 0 8px;font:700 clamp(1.6rem,3vw,2.3rem)/1.2 var(--font-d);color:#0f2f57;overflow-wrap:anywhere; }
.page-description { margin:0 0 10px;font-size:1.02rem;color:#45607d;max-width:820px; }
.page-meta { display:flex;flex-wrap:wrap;gap:4px 18px;font-size:.8rem;color:#526c88; }
.page-meta b { color:#244564; }
.page-meta a { color:#2368c4;font-weight:600; }
.page-actions { display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:14px; }
.page-actions form { margin:0; }
.page-actions .btn[aria-pressed="true"] { background:#e1edfd;border-color:#2368c4;color:#0e3a7a; }
.page-body-wrap { margin-bottom:24px; }
.page-body-wrap.with-toc { display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:28px;align-items:start; }
.page-body { min-width:0;padding:28px clamp(18px,3vw,40px);border:1px solid #e1eaf5;border-radius:18px;background:#fff;box-shadow:0 10px 26px -24px #143b6b66; }
.page-toc { position:sticky;top:96px;padding:14px 16px;border-left:3px solid #d5e2f2;font-size:.8rem; }
.page-toc b { display:block;margin-bottom:8px;color:#526c88;text-transform:uppercase;letter-spacing:1px;font-size:.68rem; }
.page-toc ul { list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:5px; }
.page-toc a { color:#2c4a6b; }
.page-toc a:hover { color:#2368c4; }
.page-toc .toc-l3 { padding-left:12px; }
.child-pages h2,.page-main section.panel > h2 { margin:0 0 12px;font-size:1.05rem; }
.file-icon { font-size:1.05rem; }
.upload-form { display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end;padding-top:12px;border-top:1px solid #edf2f9; }
.upload-form .lbl { flex-basis:100%;margin:0; }
.upload-form .input { flex:1;min-width:200px; }

/* Comments */
.comments .thread { margin-bottom:14px; }
.comments .thread.resolved { opacity:.92; }
.resolved-thread > summary { cursor:pointer;padding:10px 14px;border-radius:12px;background:#f1f8f4;border:1px solid #cfe9db;color:#16623f;font-size:.84rem; }
.resolved-thread[open] > summary { margin-bottom:10px; }
.comment-head { display:flex;align-items:center;gap:10px; }
.comment-head b { display:block;font-size:.88rem; }
.comment-head small a { color:inherit; }
.comment-body { font-size:.9rem; }
.comment.removed { background:#f6f8fb; }
.comment-history { margin-top:8px;font-size:.8rem; }
.comment-history > summary { cursor:pointer;color:#526c88; }
.report-form { padding:10px;border-radius:10px;background:#fff6f7; }
.activity-panel .activity-list { list-style:none;margin:0;padding:0; }
.activity-list li { display:flex;gap:10px;align-items:flex-start;padding:8px 0;border-bottom:1px solid #edf2f9;font-size:.85rem; }
.activity-list li:last-child { border-bottom:0; }

/* ---------- Editor ---------- */
.editor-page .workspace-content { padding-top:18px; }
.page-editor { max-width:1180px;margin:0 auto; }
.editor-topbar { position:sticky;top:76px;z-index:30;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:0 0 14px;padding:10px 14px;border:1px solid #d9e4f2;border-radius:14px;background:#ffffffee;backdrop-filter:blur(8px);box-shadow:0 12px 30px -24px #143b6b; }
.editor-where { display:flex;flex-direction:column;gap:2px;min-width:0; }
.editor-where a { color:#2368c4; }
.editor-buttons { display:flex;flex-wrap:wrap;gap:8px; }
.save-status { font-size:.78rem;color:#16623f;font-weight:600; }
.save-status::before { content:'\2713  '; }
.save-status[data-state="saving"] { color:#235a9c; }
.save-status[data-state="saving"]::before { content:'\21bb  '; }
.save-status[data-state="dirty"] { color:#7a5200; }
.save-status[data-state="dirty"]::before { content:'\25cf  '; }
.save-status[data-state="error"] { color:#b62346; }
.save-status[data-state="error"]::before { content:'\26a0  '; }
.conflict-banner { line-height:1.6; }
.conflict-banner .check { margin-left:6px; }
.editor-meta { margin-bottom:14px; }
.title-input { display:block;width:100%;padding:8px 2px;border:0;border-bottom:2px solid transparent;background:transparent;color:#0f2f57;font:700 clamp(1.6rem,3vw,2.3rem)/1.2 var(--font-d); }
.title-input:focus { outline:none;border-bottom-color:#9cc3f5; }
.title-input::placeholder { color:#aec2da; }
.page-details-box { margin-top:10px;padding:10px 14px;border:1px solid #e1eaf5;border-radius:12px;background:#fbfdff; }
.page-details-box > summary { cursor:pointer;font-size:.84rem;font-weight:600;color:#2c4a6b; }
.page-details-box[open] > summary { margin-bottom:12px; }
.page-editor-area { width:100%;min-height:520px;font-family:Consolas,monospace; }
.page-editor .tox-tinymce { border:1px solid #d9e4f2;border-radius:14px; }
.page-editor .tox .tox-edit-area::before { border-radius:0; }
.publish-box { display:flex;flex-direction:column;gap:8px;margin-top:16px;padding:16px 18px;border:1px solid #d9e4f2;border-radius:14px;background:#fff; }
.publish-box .field { margin:0; }
.publish-box kbd,.workspace-content kbd { padding:1px 6px;border:1px solid #cddff4;border-bottom-width:2px;border-radius:5px;background:#f6f9fe;font:600 .72rem Consolas,monospace; }
.tox .tox-dialog .tox-form__group { margin-bottom:10px; }
#snippetForm .tox-tinymce { border-radius:12px; }

/* New page: content type picker */
.type-picker { display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:8px; }
.type-picker label { cursor:pointer; }
.type-picker input { position:absolute;opacity:0;pointer-events:none; }
.type-picker span { display:flex;align-items:center;gap:8px;padding:10px 12px;border:1px solid #d9e4f2;border-radius:12px;background:#fff;font-size:.84rem;color:#244564;transition:border-color .15s,background .15s; }
.type-picker b { font-size:1.1rem; }
.type-picker input:checked + span { border-color:#2368c4;background:#e9f2fe;box-shadow:0 0 0 3px #398cff33;color:#0e3a7a;font-weight:600; }
.type-picker input:focus-visible + span { outline:2px solid #2368c4;outline-offset:2px; }

/* ---------- Search ---------- */
.search-main { display:flex;flex-direction:column;gap:16px; }
.search-main > form { display:flex;flex-direction:column;gap:12px; }
.advanced { padding:12px 16px;border:1px solid #d9e4f2;border-radius:14px;background:#fff; }
.advanced > summary { cursor:pointer;font-weight:600;color:#17457b; }
.advanced[open] > summary { margin-bottom:12px; }
.filter-grid { display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:4px 14px;align-items:end; }
.filter-grid .field { margin-bottom:10px; }
.filter-actions { display:flex;gap:8px;align-items:center;margin-bottom:10px; }
.results-head { display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;font-size:.86rem;color:#526c88; }
.search-results { list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px; }
.result { padding:14px 18px;border:1px solid #e1eaf5;border-radius:14px;background:#fff;transition:border-color .15s,box-shadow .15s; }
.result:hover { border-color:#b9d3f2;box-shadow:0 12px 26px -22px #143b6b; }
.result-title { display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:1rem;font-weight:700; }
.result-title a { color:#17457b; }
.result-title a:hover { text-decoration:underline; }
.result-meta { display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin:4px 0; }
.result-snippet { margin:6px 0 0;font-size:.86rem;color:#3a5470;line-height:1.55;overflow-wrap:anywhere; }
.result-files { list-style:none;margin:6px 0 0;padding:0; }
mark,.workspace-content mark { padding:0 2px;border-radius:3px;background:#fff0a8;color:inherit; }

/* ---------- History and diff ---------- */
.diff { overflow:auto;border:1px solid #e1eaf5;border-radius:12px;background:#fff;font:.8rem/1.55 Consolas,'Courier New',monospace; }
.diff-line { display:flex;white-space:pre-wrap;overflow-wrap:anywhere; }
.diff-line > span:last-child { flex:1;padding:1px 10px; }
.diff-op { flex:0 0 26px;text-align:center;color:#8a9bb0;user-select:none;border-right:1px solid #edf2f9; }
.diff-line.add { background:#e6f7ee; }
.diff-line.add .diff-op { color:#16623f; }
.diff-line.del { background:#fdecef; }
.diff-line.del .diff-op { color:#9b1f3c; }
.diff-line.del > span:last-child { text-decoration:line-through;text-decoration-color:#e0899b; }
.diff-add-count { color:#16623f;font-weight:700; }
.diff-del-count { color:#9b1f3c;font-weight:700; }

/* ---------- Landing visual (page preview card) ---------- */
.hv-doc { display:flex !important;flex-direction:column;gap:9px;padding:24px 26px !important; }
.hv-doc small { color:#9ec5f0;font-size:.68rem;letter-spacing:1px; }
.hv-doc b { font:700 1.25rem var(--font-d);color:#fff; }
.hv-meta { color:#b5cbe6;font-size:.72rem; }
.hv-doc i { display:block;height:9px;border-radius:5px;background:#ffffff26; }
.hv-doc i.short { width:60%; }
.hv-doc i.hv-panel { height:auto;padding:8px 12px;border-left:4px solid #52a0f4;border-radius:8px;background:#398cff2e;color:#d9ecff;font-style:normal;font-size:.76rem; }
.hv-doc i.hv-code { height:auto;padding:8px 12px;border-radius:8px;background:#04142b;color:#7ff2c6;font:normal .74rem Consolas,monospace; }

/* ---------- Responsive ---------- */
@media(max-width:1200px) {
    .page-body-wrap.with-toc { grid-template-columns:minmax(0,1fr); }
    .page-toc { display:none; }
}
@media(max-width:1000px) {
    .space-layout,.split,.space-overview { grid-template-columns:minmax(0,1fr); }
    .space-sidebar { position:static;max-height:none; }
    .page-tree { max-height:340px;overflow:auto; }
    .dash-grid.two { grid-template-columns:minmax(0,1fr); }
}
@media(max-width:760px) {
    .editor-topbar { top:64px;position:static; }
    .editor-buttons { width:100%; }
    .editor-buttons .btn { flex:1;justify-content:center; }
    .hero-search { flex-direction:column; }
    .page-body { padding:18px 14px;border-radius:14px; }
    .meta-list,.details-dl { grid-template-columns:minmax(0,1fr); }
    .meta-list dt,.details-dl dt { margin-top:6px; }
    .bar-row { grid-template-columns:minmax(0,1fr) 44px; }
    .bar-row > :first-child { grid-column:1 / -1; }
    .menu-list { right:auto;left:0; }
    .space-title { align-items:flex-start; }
}
@media print {
    .space-sidebar,.page-actions,.workspace-header,.topbar,.rail,.app-rail,.site-footer,footer,#comments,.upload-form,.toast-stack { display:none !important; }
    .space-layout { display:block; }
    .page-body { border:0;box-shadow:none;padding:0; }
}
