/* Markdown editor + reading surfaces — mdeditor.js, rendered preview, the
   Ctrl+P quick switcher, the IDE status bar, [[ autocomplete and Scribe graph. */
/* ═══ MARKDOWN EDITOR (mdeditor.js — Scribe notes, object notes) ═══ */
.scribe-editor{display:flex;flex-direction:column;height:100%;min-height:0}
.mded-head{display:flex;align-items:center;gap:10px;padding:4px 2px 8px;border-bottom:1px solid var(--border);margin-bottom:8px}
.mded-title{font-weight:600;font-size:calc(var(--fs-body) * var(--fsc,1));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mded-save-state{color:var(--t3-aa,var(--t2));font-size:calc(var(--fs-meta) * var(--fsc,1));margin-left:auto}
.mded-body{flex:1;min-height:0;display:flex;flex-direction:column}
.mded-wrap{position:relative;flex:1;min-height:240px}
.mded-backdrop,.mded-text{
  position:absolute;inset:0;padding:12px;font-size:calc(14px * var(--fsc,1));line-height:1.8;
  font-family:inherit;white-space:pre-wrap;word-wrap:break-word;overflow-y:auto;
  border:1px solid var(--border);border-radius:var(--r);box-sizing:border-box;
}
.mded-backdrop{background:var(--surface);color:transparent;pointer-events:none;z-index:var(--z-base)}
.mded-text{background:transparent;color:var(--t1);caret-color:var(--accent);resize:none;outline:none;z-index:calc(var(--z-base) + 1)}
.mded-text:focus{border-color:var(--accent)}
.mded-wikimark{color:transparent;background:color-mix(in srgb, var(--accent) 18%, transparent);border-radius:2px}

/* Rendered markdown preview */
.md-preview{
  flex:1;overflow-y:auto;padding:12px 16px;font-size:calc(14px * var(--fsc,1));line-height:1.8;color:var(--t1);
  border:1px solid var(--border);border-radius:var(--r);background:var(--surface);outline:none;
}
.md-preview h1,.md-preview h2,.md-preview h3,.md-preview h4,.md-preview h5,.md-preview h6{margin:.9em 0 .35em;line-height:1.3;color:var(--t1)}
.md-preview h1{font-size:1.7em}.md-preview h2{font-size:1.45em}.md-preview h3{font-size:1.25em}
.md-preview h4{font-size:1.1em}.md-preview h5{font-size:1em}.md-preview h6{font-size:.9em;color:var(--t2)}
.md-preview p{margin:.4em 0}
.md-preview hr{border:none;border-top:1px solid var(--border);margin:1em 0}
.md-preview blockquote{margin:.6em 0;padding:4px 14px;border-left:3px solid var(--accent);color:var(--t2);background:color-mix(in srgb, var(--accent) 6%, transparent);border-radius:0 var(--rs) var(--rs) 0}
.md-preview code{background:var(--raised);border:1px solid var(--border);border-radius:var(--rs);padding:1px 5px;font-family:ui-monospace,monospace;font-size:.88em}
.md-preview pre{background:var(--raised);border:1px solid var(--border);border-radius:var(--r);padding:10px 12px;overflow-x:auto;margin:.6em 0}
.md-preview pre code{background:none;border:none;padding:0}
.md-preview ul,.md-preview ol{margin:.4em 0;padding-left:1.5em}
.md-preview li.md-task{list-style:none;margin-left:-1.2em}
.md-preview .md-hl{background:color-mix(in srgb, var(--accent) 30%, transparent);color:inherit;border-radius:2px;padding:0 2px}
.md-preview .wikilink{color:var(--accent-text,var(--accent));cursor:pointer;text-decoration:none;border-bottom:1px solid color-mix(in srgb, var(--accent) 45%, transparent)}
.md-preview .wikilink:hover{border-bottom-color:var(--accent)}
.md-preview .wikilink-unresolved{opacity:.6;border-bottom-style:dashed}
.md-preview .md-link{color:var(--accent-text,var(--accent));text-decoration:underline;cursor:default}

/* ═══ QUICK SWITCHER (Ctrl+P) ═══ */
#qs-overlay{
  position:fixed;inset:0;z-index:var(--z-tooltip);background:rgba(0,0,0,.45);
  display:flex;align-items:flex-start;justify-content:center;padding-top:12vh;
}
#qs-box{
  width:min(560px,90vw);background:var(--raised);border:1px solid var(--border);
  border-radius:var(--r);box-shadow:0 16px 48px rgba(0,0,0,.5);overflow:hidden;
  display:flex;flex-direction:column;max-height:60vh;
}
#qs-input{
  border:none;outline:none;background:var(--surface);color:var(--t1);
  padding:13px 16px;font-size:calc(14.5px * var(--fsc,1));border-bottom:1px solid var(--border);
}
#qs-list{overflow-y:auto;padding:4px}
.qs-icon{display:flex;align-items:center;color:var(--accent-text,var(--accent));flex-shrink:0}

/* ═══ IDE SHELL: status bar ═══ */
#status-bar{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  height:24px;padding:0 12px;flex-shrink:0;
  background:var(--surface);border-top:1px solid var(--border);
  font-size:calc(var(--fs-meta) * var(--fsc,1));color:var(--t3-aa,var(--t2));user-select:none;
}
#status-bar .sb-left,#status-bar .sb-right{display:flex;align-items:center;gap:14px;min-width:0}
#status-bar .sb-item{display:flex;align-items:center;gap:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#status-bar .sb-nexus{cursor:pointer;color:var(--t2)}
#status-bar .sb-nexus:hover{color:var(--accent-text,var(--accent))}
#status-bar .nexus-vault-dot{width:7px;height:7px}
#status-bar .sb-credit{opacity:.7;letter-spacing:.2px}

/* Editor columns + backlinks panel */
.mded-cols{flex:1;min-height:0;display:flex;gap:10px}
.mded-cols .mded-body{flex:1;min-width:0}
.mded-linkspanel{width:230px;flex-shrink:0;overflow-y:auto;border:1px solid var(--border);border-radius:var(--r);background:var(--surface);padding:8px}
.mded-links-h{font-size:calc(var(--fs-meta) * var(--fsc,1));font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--t3-aa,var(--t2));padding:6px 4px 4px;display:flex;justify-content:space-between}
.mded-links-h span{color:var(--accent-text,var(--accent))}
.mded-linkrow{display:flex;align-items:center;gap:7px;font-size:calc(var(--fs-body) * var(--fsc,1));padding:6px 8px}
.mded-linkrow .name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mded-linktype{font-size:calc(var(--fs-meta) * var(--fsc,1));color:var(--t3-aa,var(--t2));flex-shrink:0}
.mded-link-unresolved{opacity:.55}
.mded-links-empty{font-size:calc(12px * var(--fsc,1));color:var(--t3-aa,var(--t2));padding:4px 8px 10px}
.mded-links-toggle.active{color:var(--accent-text,var(--accent));border-color:var(--accent)}

/* [[ autocomplete float */
.mded-ac{position:absolute;z-index:calc(var(--z-sticky) + 40);min-width:200px;max-width:280px;background:var(--raised);border:1px solid var(--border);border-radius:var(--r);box-shadow:0 8px 24px rgba(0,0,0,.35);overflow:hidden}
.mded-ac-item{display:flex;align-items:center;gap:7px;padding:6px 10px;font-size:calc(var(--fs-body) * var(--fsc,1));cursor:pointer;color:var(--t1)}
.mded-ac-item .name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mded-ac-item.active,.mded-ac-item:hover{background:var(--hover)}
.mded-ac-item .dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}

/* Object-note markdown editor block (Director detail) */
.detail-note-md{display:flex;flex-direction:column;min-height:200px;margin-top:4px}
.detail-note-md .mded-wrap{min-height:170px}
.wchap-wikimark{border-bottom:1.5px dashed var(--accent);background:color-mix(in srgb, var(--accent) 14%, transparent)}

/* Scribe graph view */
#main-inner:has(#scribe-graph-wrap){display:flex;flex-direction:column}
.scribe-graph-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:4px 2px 10px;flex-wrap:wrap}
.scribe-graph-head h3{color:var(--t1);font-size:calc(15px * var(--fsc,1))}
.scribe-graph-filters{display:flex;gap:12px;flex-wrap:wrap}
.scribe-graph-filter{display:flex;align-items:center;gap:5px;font-size:calc(12px * var(--fsc,1));color:var(--t2);cursor:pointer;user-select:none}
.scribe-graph-filter .dot{width:8px;height:8px;border-radius:50%}

/* Scribe sidebar */
.scribe-folder-body{margin-left:14px;border-left:1px solid var(--border);padding-left:4px}
.scribe-note{display:flex;align-items:center;gap:8px}
.scribe-note .name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.scribe-folder-head .name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.scribe-row-edit{opacity:0;border:none;background:none;color:var(--t3-aa,var(--t2));cursor:pointer;padding:2px;border-radius:var(--rs);display:flex;align-items:center}
.scribe-note:hover .scribe-row-edit{opacity:1}
.scribe-row-edit:hover{color:var(--t1);background:var(--hover)}
.scribe-row-edit .icon{width:13px;height:13px}

.wiki-field-ac{position:fixed;z-index:var(--z-modal)}
/* Procress 16 part 7: Quick Access pin on a command row */
.qs-qa{cursor:pointer;color:var(--t2);padding:0 6px;font-size:calc(var(--fs-body) * var(--fsc,1))}
.qs-qa:hover,.qs-qa.on{color:var(--warn)}
.qs-qa .icon{width:14px;height:14px}
.qs-qa.on .icon{fill:currentColor}
