/* ─────────────────────────────────────────────────────────────────────────────
   Research Console — scoped to #rc-page
   Matches C3X0Astro dark space theme.
   ─────────────────────────────────────────────────────────────────────────── */

/* ── Hero badge ────────────────────────────────────────────────────────────── */
.rc-admin-badge {
    display: inline-block;
    margin-top: .75rem;
    padding: .25rem .75rem;
    background: rgba(255, 80, 80, 0.18);
    border: 1px solid rgba(255, 80, 80, .5);
    border-radius: 4px;
    color: #ff7070;
    font-size: .75rem;
    letter-spacing: .08em;
    font-family: 'Share Tech Mono', monospace;
}

/* ── Layout ────────────────────────────────────────────────────────────────── */
.rc-layout {
    display: grid;
    grid-template-columns: 380px 1fr;
    gap: 1.5rem;
    margin-top: 1.5rem;
    margin-bottom: 2rem;
    align-items: start;
}
@media (max-width: 900px) {
    .rc-layout { grid-template-columns: 1fr; }
}

/* ── Panels ────────────────────────────────────────────────────────────────── */
.rc-panel {
    background: rgba(255,255,255,.04);
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 8px;
    padding: 1.25rem;
}
.rc-panel-title {
    font-family: 'Orbitron', sans-serif;
    font-size: 1rem;
    color: var(--c3xo-accent, #4af);
    margin: 0 0 1rem;
    letter-spacing: .04em;
}
.rc-panel-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 1rem;
}
.rc-panel-header .rc-panel-title { margin-bottom: 0; }

/* ── Inputs ────────────────────────────────────────────────────────────────── */
.rc-input,
.rc-textarea,
.rc-select {
    width: 100%;
    background: rgba(0,0,0,.35);
    border: 1px solid rgba(255,255,255,.18);
    border-radius: 4px;
    color: #e8e8ef;
    padding: .5rem .75rem;
    font-size: .875rem;
    font-family: inherit;
    transition: border-color .15s;
    box-sizing: border-box;
}
.rc-input:focus,
.rc-textarea:focus,
.rc-select:focus {
    outline: none;
    border-color: var(--c3xo-accent, #4af);
}
.rc-textarea {
    resize: vertical;
    min-height: 60px;
}
.rc-internal-input {
    border-color: rgba(255,160,0,.35);
    background: rgba(255,140,0,.07);
}
.rc-internal-input:focus { border-color: #ffa000; }

/* ── Buttons ───────────────────────────────────────────────────────────────── */
.rc-btn {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    padding: .45rem .9rem;
    border: 1px solid rgba(255,255,255,.25);
    border-radius: 4px;
    background: rgba(255,255,255,.08);
    color: #e0e0e8;
    font-size: .825rem;
    font-family: inherit;
    cursor: pointer;
    transition: background .15s, border-color .15s;
    white-space: nowrap;
}
.rc-btn:hover:not(:disabled) { background: rgba(255,255,255,.15); }
.rc-btn:disabled              { opacity: .4; cursor: default; }
.rc-btn-primary  { background: rgba(68,170,255,.2); border-color: rgba(68,170,255,.5); color: #7de; }
.rc-btn-primary:hover:not(:disabled) { background: rgba(68,170,255,.35); }
.rc-btn-publish  { background: rgba(60,200,100,.18); border-color: rgba(60,200,100,.5); color: #7fb; }
.rc-btn-publish:hover:not(:disabled) { background: rgba(60,200,100,.3); }
.rc-btn-warn     { background: rgba(255,180,0,.15); border-color: rgba(255,180,0,.45); color: #fd7; }
.rc-btn-warn:hover:not(:disabled)    { background: rgba(255,180,0,.28); }
.rc-btn-danger   { background: rgba(220,60,60,.18); border-color: rgba(220,60,60,.4);  color: #f99; }
.rc-btn-danger:hover:not(:disabled)  { background: rgba(220,60,60,.32); }
.rc-btn-sm       { padding: .25rem .55rem; font-size: .775rem; }
.rc-btn-row      { display: flex; gap: .5rem; flex-wrap: wrap; margin-top: .75rem; }

/* ── Search ────────────────────────────────────────────────────────────────── */
.rc-search-row {
    display: flex;
    gap: .5rem;
    margin-bottom: .75rem;
}
.rc-search-row .rc-input { flex: 1; }
.rc-type-filters {
    display: flex;
    flex-wrap: wrap;
    gap: .35rem .5rem;
    font-size: .75rem;
    margin-bottom: .75rem;
    align-items: center;
}
.rc-filter-label { color: #888; font-size: .7rem; }
.rc-type-chip {
    display: inline-flex;
    align-items: center;
    gap: .2rem;
    cursor: pointer;
    color: #aaa;
}
.rc-type-chip input { accent-color: var(--c3xo-accent, #4af); }
.rc-status-text  { font-size: .8rem; color: #888; margin-bottom: .5rem; min-height: 1rem; }

/* ── Result cards ──────────────────────────────────────────────────────────── */
.rc-results-list { max-height: 55vh; overflow-y: auto; }
.rc-result-card {
    padding: .6rem .75rem;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 5px;
    margin-bottom: .4rem;
    cursor: pointer;
    transition: background .12s, border-color .12s;
}
.rc-result-card:hover { background: rgba(255,255,255,.06); border-color: rgba(68,170,255,.4); }
.rc-result-card.active { background: rgba(68,170,255,.15); border-color: rgba(68,170,255,.6); }
.rc-result-main { display: flex; align-items: center; gap: .4rem; flex-wrap: wrap; }
.rc-result-name { font-weight: 600; color: #dde; font-size: .9rem; }
.rc-result-meta { font-size: .75rem; color: #888; display: flex; gap: .5rem; margin-top: .2rem; flex-wrap: wrap; }
.rc-result-id   { font-family: 'Share Tech Mono', monospace; opacity: .6; }
.rc-enrich-dot  { font-size: .8rem; flex-shrink: 0; }
.rc-no-enrich   { color: #555; }

/* ── Badges ────────────────────────────────────────────────────────────────── */
.rc-badge {
    display: inline-block;
    padding: .1rem .4rem;
    border-radius: 3px;
    font-size: .7rem;
    font-family: 'Share Tech Mono', monospace;
    letter-spacing: .03em;
}
.rc-type-badge     { background: rgba(68,170,255,.15); color: #8cf; border: 1px solid rgba(68,170,255,.3); }
.rc-status-draft     { background: rgba(180,180,180,.12); color: #aaa; }
.rc-status-needs_review { background: rgba(255,180,50,.14); color: #fc9; }
.rc-status-approved  { background: rgba(100,200,255,.12); color: #8cf; }
.rc-status-published { background: rgba(60,200,100,.15); color: #8f8; }
.rc-status-archived  { background: rgba(200,100,100,.1);  color: #f88; }
.rc-status-active    { background: rgba(60,200,100,.15); color: #8f8; }
.rc-status-none      { background: rgba(255,255,255,.06); color: #666; }
.rc-conf-verified    { color: #8f8; }
.rc-conf-high        { color: #aef; }
.rc-conf-medium      { color: #fc9; }
.rc-conf-low         { color: #f88; }
.rc-conf-unknown     { color: #777; }
.rc-alias-type       { background: rgba(200,160,255,.12); color: #caf; }
.rc-src-type         { background: rgba(255,200,100,.1);  color: #fc8; }
.rc-internal-tag     { background: rgba(255,140,0,.15); color: #ffa; font-size: .65rem; padding: .1rem .3rem; border-radius: 2px; vertical-align: middle; }

/* ── Placeholder ───────────────────────────────────────────────────────────── */
.rc-placeholder {
    text-align: center;
    padding: 3rem 1rem;
    color: #555;
}
.rc-placeholder-icon { font-size: 2.5rem; display: block; margin-bottom: .75rem; }

/* ── Entity header ─────────────────────────────────────────────────────────── */
.rc-entity-title-row { display: flex; align-items: flex-start; justify-content: space-between; }
.rc-entity-name { font-family: 'Orbitron', sans-serif; font-size: 1.1rem; margin: 0 0 .4rem; color: #eef; }
.rc-entity-meta { display: flex; align-items: center; gap: .5rem; flex-wrap: wrap; font-size: .8rem; }
.rc-entity-id   { font-family: 'Share Tech Mono', monospace; color: #666; }
.rc-profile-link { color: var(--c3xo-accent, #4af); font-size: .8rem; }
.rc-source-details { margin-top: .75rem; }
.rc-source-details summary { font-size: .8rem; color: #666; cursor: pointer; }
.rc-source-json { font-size: .72rem; background: rgba(0,0,0,.3); padding: .5rem; border-radius: 4px; overflow-x: auto; max-height: 180px; color: #aaa; }
.rc-updated { font-size: .75rem; color: #666; }

/* ── Tabs ──────────────────────────────────────────────────────────────────── */
.rc-tabs {
    display: flex;
    gap: 0;
    border-bottom: 1px solid rgba(255,255,255,.12);
    margin: 1rem 0 .75rem;
    flex-wrap: wrap;
}
.rc-tab {
    padding: .5rem 1rem;
    border: none;
    border-bottom: 2px solid transparent;
    background: none;
    color: #888;
    font-size: .825rem;
    cursor: pointer;
    transition: color .15s, border-color .15s;
    margin-bottom: -1px;
}
.rc-tab:hover  { color: #ccc; }
.rc-tab.active { color: var(--c3xo-accent, #4af); border-bottom-color: var(--c3xo-accent, #4af); }

/* ── Form elements ─────────────────────────────────────────────────────────── */
.rc-section-title {
    font-family: 'Orbitron', sans-serif;
    font-size: .85rem;
    color: #aaa;
    margin: 1rem 0 .6rem;
    letter-spacing: .03em;
}
.rc-form { display: flex; flex-direction: column; gap: .65rem; }
.rc-label { display: flex; flex-direction: column; gap: .3rem; font-size: .82rem; color: #aaa; }
.rc-form-row { display: grid; grid-template-columns: 1fr 1fr; gap: .75rem; }
@media (max-width: 500px) { .rc-form-row { grid-template-columns: 1fr; } }
.rc-form-msg {
    font-size: .8rem;
    min-height: 1.2rem;
    padding: .2rem 0;
}
.rc-msg-success { color: #7fb; }
.rc-msg-error   { color: #f88; }
.rc-internal-field { border-left: 2px solid rgba(255,140,0,.35); padding-left: .5rem; }
.rc-source-block { margin-bottom: .5rem; }
.rc-source-block-inner {
    background: rgba(255,255,255,.04);
    border-left: 3px solid rgba(255,255,255,.15);
    padding: .5rem .75rem;
    border-radius: 0 4px 4px 0;
    margin-bottom: .5rem;
}
.rc-source-block-title { font-size: .75rem; color: #666; margin: 0 0 .25rem; }
.rc-source-text { font-size: .85rem; color: #aaa; margin: 0; line-height: 1.5; }
.rc-no-desc-msg { font-size: .8rem; color: #666; }
.rc-desc-status-badge { margin-bottom: .5rem; }

/* ── Item lists (aliases, sources, rels, log) ──────────────────────────────── */
.rc-item-list { margin-bottom: 1rem; }
.rc-item {
    background: rgba(255,255,255,.03);
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 5px;
    padding: .6rem .75rem;
    margin-bottom: .4rem;
}
.rc-item-main { display: flex; align-items: center; gap: .4rem; flex-wrap: wrap; }
.rc-item-title { color: #dde; font-size: .9rem; }
.rc-item-notes { font-size: .8rem; color: #888; margin-top: .25rem; font-style: italic; }
.rc-item-meta  { font-size: .78rem; color: #777; margin-top: .2rem; }
.rc-item-url   { font-size: .78rem; margin-top: .2rem; }
.rc-item-url a { color: var(--c3xo-accent, #4af); word-break: break-all; }
.rc-item-actions { display: flex; gap: .4rem; margin-top: .5rem; flex-wrap: wrap; }
.rc-internal-note { color: #ffa07a; }

/* ── Relationships ─────────────────────────────────────────────────────────── */
.rc-rel-item    { }
.rc-rel-dir     { font-family: 'Share Tech Mono', monospace; font-size: .9rem; }
.rc-dir-out     { color: #8cf; }
.rc-dir-in      { color: #c8f; }
.rc-rel-type    { color: #ddf; font-size: .875rem; }
.rc-rel-other   { color: #aaa; font-size: .8rem; }
.rc-rel-target-row { position: relative; display: flex; gap: .5rem; flex-wrap: wrap; }
.rc-rel-type-sel { flex: 0 0 140px; }
.rc-rel-target-row .rc-input { flex: 1; }
.rc-rel-target-results {
    position: absolute;
    top: 100%;
    left: 0; right: 0;
    background: #1a1c28;
    border: 1px solid rgba(68,170,255,.4);
    border-radius: 4px;
    z-index: 100;
    max-height: 220px;
    overflow-y: auto;
}
.rc-rel-target-option {
    padding: .5rem .75rem;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    font-size: .83rem;
}
.rc-rel-target-option:hover { background: rgba(68,170,255,.15); }
.rc-rel-opt-name { color: #dde; }
.rc-rel-opt-meta { color: #777; font-size: .75rem; font-family: 'Share Tech Mono', monospace; flex-shrink: 0; }
.rc-rel-selected-entity { font-size: .8rem; color: #7fb; margin-top: .25rem; }
.rc-rel-from-display { font-size: .82rem; color: #888; background: rgba(255,255,255,.04); padding: .35rem .6rem; border-radius: 4px; margin-bottom: .25rem; }

/* ── Change log / history ──────────────────────────────────────────────────── */
.rc-log-item   { }
.rc-log-table  { font-family: 'Share Tech Mono', monospace; font-size: .78rem; color: #888; }
.rc-log-by     { color: #aaa; font-size: .8rem; }
.rc-log-at     { color: #666; font-size: .78rem; }
.rc-action-create    { background: rgba(60,200,100,.15); color: #8f8; }
.rc-action-update    { background: rgba(100,160,255,.15); color: #8cf; }
.rc-action-delete    { background: rgba(220,60,60,.15);  color: #f88; }
.rc-action-publish   { background: rgba(60,200,100,.15); color: #afc; }
.rc-action-unpublish { background: rgba(255,180,50,.14); color: #fc9; }
.rc-action-archive   { background: rgba(200,100,100,.1); color: #f88; }
.rc-action-restore   { background: rgba(100,200,255,.1); color: #8cf; }
.rc-log-detail-box { margin-top: .5rem; }
.rc-log-diff { display: grid; grid-template-columns: 1fr 1fr; gap: .5rem; }
.rc-diff-pre { font-size: .72rem; background: rgba(0,0,0,.4); padding: .5rem; border-radius: 3px; overflow-x: auto; max-height: 200px; color: #aaa; white-space: pre-wrap; word-break: break-word; }

/* ── Review queue ──────────────────────────────────────────────────────────── */
.rc-queue-summary { font-size: .82rem; color: #888; margin-bottom: .75rem; }
.rc-queue-item { }

/* ── Misc ──────────────────────────────────────────────────────────────────── */
.rc-loading  { text-align: center; padding: 1.5rem; color: #666; }
.rc-empty    { color: #555; font-size: .85rem; text-align: center; padding: .75rem; }
.rc-error    { color: #f88; font-size: .85rem; padding: .5rem; }
.rc-entity-loading { color: #888; padding: 1rem 0; display: flex; align-items: center; gap: .5rem; }

/* ── Public enrichment (satellite profile & other profile pages) ────────────── */
#sp-enrichment-section {
    padding-bottom: 2rem;
}
.rc-pub-enrichment-block {
    background: rgba(68,170,255,.06);
    border: 1px solid rgba(68,170,255,.18);
    border-radius: 6px;
    padding: 1rem 1.25rem;
    margin-bottom: 1rem;
}
.rc-pub-enrichment-title {
    font-family: 'Orbitron', sans-serif;
    font-size: .9rem;
    color: var(--c3xo-accent, #4af);
    margin: 0 0 .6rem;
    letter-spacing: .03em;
}
.rc-pub-sub-title { font-size: .82rem; color: #888; margin: .75rem 0 .4rem; }
.rc-pub-short  { font-size: .9rem; color: #ccc; margin: 0 0 .5rem; line-height: 1.55; }
.rc-pub-long   { font-size: .875rem; color: #bbb; line-height: 1.6; white-space: pre-wrap; }
.rc-pub-notes  { font-size: .85rem; color: #aaa; font-style: italic; }
.rc-pub-aliases,
.rc-pub-rels,
.rc-pub-sources {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: .3rem;
}
.rc-pub-aliases li,
.rc-pub-rels li,
.rc-pub-sources li { font-size: .85rem; color: #bbb; }
.rc-pub-sources li a { color: var(--c3xo-accent, #4af); }
.rc-alias-type-tag { font-size: .7rem; color: #888; font-style: italic; }
.rc-pub-rel-type { color: #aaa; font-size: .8rem; text-transform: capitalize; }
.rc-pub-rel-other { font-family: 'Share Tech Mono', monospace; font-size: .78rem; color: #777; }

/* ─────────────────────────────────────────────────────────────────────────────
   Database Admin — appended to research-console.css
   ─────────────────────────────────────────────────────────────────────────── */

.dba-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    margin-bottom: 1.25rem;
}
.dba-title {
    font-family: 'Orbitron', sans-serif;
    font-size: 1.15rem;
    color: #eef;
    margin: .25rem 0 .3rem;
}
.dba-subtitle { font-size: .82rem; color: #666; margin: 0; }
.dba-god-badge {
    display: inline-block;
    padding: .3rem .8rem;
    background: rgba(255,200,0,.12);
    border: 1px solid rgba(255,200,0,.4);
    border-radius: 4px;
    color: #ffd;
    font-family: 'Share Tech Mono', monospace;
    font-size: .8rem;
    letter-spacing: .1em;
    white-space: nowrap;
    margin-top: .5rem;
}

/* ── Layout ────────────────────────────────────────────────────────────────── */
.dba-layout {
    display: grid;
    grid-template-columns: 220px 1fr;
    gap: 1.25rem;
    align-items: start;
}
@media (max-width: 800px) { .dba-layout { grid-template-columns: 1fr; } }

/* ── Sidebar ───────────────────────────────────────────────────────────────── */
.dba-sidebar {
    background: rgba(255,255,255,.03);
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 6px;
    overflow: hidden;
    position: sticky;
    top: 1rem;
    max-height: 80vh;
    display: flex;
    flex-direction: column;
}
.dba-sidebar-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: .6rem .75rem;
    border-bottom: 1px solid rgba(255,255,255,.08);
    background: rgba(255,255,255,.04);
}
.dba-sidebar-title { font-size: .78rem; color: #888; font-family: 'Share Tech Mono', monospace; }
.dba-tree { overflow-y: auto; flex: 1; padding: .35rem 0; }

.dba-schema-node { }
.dba-schema-label {
    display: flex;
    align-items: center;
    gap: .4rem;
    padding: .35rem .75rem;
    cursor: pointer;
    font-size: .82rem;
    color: #aaa;
    transition: background .1s;
}
.dba-schema-label:hover { background: rgba(255,255,255,.05); }
.dba-schema-arrow { font-size: .65rem; color: #555; width: .8rem; }
.dba-schema-name { font-weight: 600; color: #ccd; }
.dba-table-list { padding-left: 1rem; }
.dba-table-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: .28rem .6rem .28rem .9rem;
    cursor: pointer;
    font-size: .78rem;
    color: #999;
    border-radius: 3px;
    margin: 1px 4px;
    transition: background .1s;
}
.dba-table-row:hover { background: rgba(255,255,255,.06); color: #dde; }
.dba-table-row.active { background: rgba(68,170,255,.15); color: #7de; }
.dba-row-count { font-family: 'Share Tech Mono', monospace; font-size: .7rem; color: #555; }

/* ── Workspace ─────────────────────────────────────────────────────────────── */
.dba-workspace {
    background: rgba(255,255,255,.03);
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 6px;
    padding: 1rem;
    min-height: 400px;
}
.dba-ws-tabs {
    display: flex;
    border-bottom: 1px solid rgba(255,255,255,.1);
    margin-bottom: .75rem;
}

/* ── Toolbar ───────────────────────────────────────────────────────────────── */
.dba-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: .6rem;
    gap: .5rem;
    flex-wrap: wrap;
}
.dba-toolbar-left { display: flex; align-items: center; gap: .75rem; flex-wrap: wrap; }
.dba-toolbar-right { display: flex; gap: .4rem; }
.dba-table-title { font-family: 'Share Tech Mono', monospace; font-size: .9rem; color: #7de; }
.dba-table-info  { font-size: .75rem; color: #666; display: flex; gap: 1rem; }

/* ── Filter bar ────────────────────────────────────────────────────────────── */
.dba-filter-bar {
    display: flex;
    gap: .4rem;
    margin-bottom: .75rem;
    flex-wrap: wrap;
}
.dba-filter-sel   { flex: 0 0 160px; }
.dba-filter-input { flex: 1; min-width: 120px; }

/* ── Data grid ─────────────────────────────────────────────────────────────── */
.dba-data-area { overflow: hidden; margin-bottom: .5rem; }
.dba-grid-wrap { overflow-x: auto; max-height: 55vh; border: 1px solid rgba(255,255,255,.08); border-radius: 4px; }
.dba-grid {
    width: 100%;
    border-collapse: collapse;
    font-size: .78rem;
    font-family: 'Share Tech Mono', monospace;
}
.dba-grid thead { position: sticky; top: 0; z-index: 2; background: #14161f; }
.dba-grid th,
.dba-grid td {
    padding: .35rem .55rem;
    border-bottom: 1px solid rgba(255,255,255,.06);
    white-space: nowrap;
    text-align: left;
}
.dba-th-col {
    color: #aaa;
    cursor: pointer;
    user-select: none;
    background: rgba(255,255,255,.04);
}
.dba-th-col:hover { color: #dde; background: rgba(255,255,255,.08); }
.dba-sort-active { color: var(--c3xo-accent, #4af); }
.dba-th-actions { color: #666; background: rgba(255,255,255,.04); min-width: 90px; }
.dba-td { color: #bbc; max-width: 300px; overflow: hidden; text-overflow: ellipsis; }
.dba-td-actions { white-space: nowrap; }
.dba-grid tbody tr:hover { background: rgba(255,255,255,.04); }
.dba-null { color: #555; font-style: italic; }
.dba-truncated { cursor: help; }
.dba-empty-cell { text-align: center; color: #555; padding: 1.5rem; }
.dba-btn { padding: .2rem .45rem; border-radius: 3px; border: 1px solid rgba(255,255,255,.18); background: rgba(255,255,255,.07); color: #ccc; font-size: .72rem; cursor: pointer; }
.dba-btn:hover { background: rgba(255,255,255,.14); }
.dba-btn-sm { font-size: .7rem; }
.dba-btn-danger { border-color: rgba(220,60,60,.4); color: #f99; background: rgba(220,60,60,.1); }
.dba-btn-danger:hover { background: rgba(220,60,60,.22); }

/* ── Pagination ────────────────────────────────────────────────────────────── */
.dba-pagination {
    display: flex;
    align-items: center;
    gap: .5rem;
    margin-top: .5rem;
    flex-wrap: wrap;
}
.dba-page-info  { font-size: .8rem; color: #777; font-family: 'Share Tech Mono', monospace; flex: 1; text-align: center; }
.dba-limit-sel  { width: 110px; }

/* ── Status ────────────────────────────────────────────────────────────────── */
.dba-status { font-size: .78rem; min-height: 1.2rem; margin: .25rem 0; }
.dba-status-ok   { color: #7fb; }
.dba-status-warn { color: #fc9; }
.dba-status-err  { color: #f88; }

/* ── Row editor ────────────────────────────────────────────────────────────── */
.dba-editor-panel {
    background: rgba(255,255,255,.04);
    border: 1px solid rgba(68,170,255,.25);
    border-radius: 6px;
    padding: 1rem;
    margin-top: .75rem;
}
.dba-editor-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: .75rem;
}
.dba-editor-title { font-family: 'Orbitron', sans-serif; font-size: .85rem; color: #aaa; margin: 0; }
.dba-editor-fields {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: .6rem;
}
.dba-editor-field { display: flex; flex-direction: column; gap: .25rem; }
.dba-editor-label {
    font-size: .75rem;
    color: #888;
    display: flex;
    align-items: center;
    gap: .35rem;
    flex-wrap: wrap;
}
.dba-field-pk .dba-editor-label { color: #ffd; }
.dba-col-type { font-size: .68rem; color: #555; font-style: italic; margin-left: auto; }
.dba-required { color: #f88; font-size: .7rem; }
.dba-editor-input {
    background: rgba(0,0,0,.3);
    border: 1px solid rgba(255,255,255,.15);
    border-radius: 3px;
    color: #dde;
    padding: .35rem .5rem;
    font-size: .8rem;
    font-family: 'Share Tech Mono', monospace;
    width: 100%;
    box-sizing: border-box;
}
.dba-editor-input:focus { outline: none; border-color: var(--c3xo-accent, #4af); }
.dba-editor-ta  { resize: vertical; min-height: 54px; }
.dba-editor-msg { font-size: .8rem; margin-top: .5rem; }
.dba-ok  { color: #7fb; }
.dba-err { color: #f88; }

/* ── SQL runner ────────────────────────────────────────────────────────────── */
.dba-sql-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: .4rem;
    flex-wrap: wrap;
    gap: .5rem;
}
.dba-sql-hint    { font-size: .75rem; color: #555; }
.dba-sql-buttons { display: flex; gap: .4rem; }
.dba-sql-editor {
    width: 100%;
    box-sizing: border-box;
    background: rgba(0,0,0,.4);
    border: 1px solid rgba(255,255,255,.15);
    border-radius: 4px;
    color: #dde;
    font-family: 'Share Tech Mono', monospace;
    font-size: .82rem;
    padding: .6rem .75rem;
    resize: vertical;
    min-height: 100px;
    line-height: 1.55;
}
.dba-sql-editor:focus { outline: none; border-color: var(--c3xo-accent, #4af); }
.dba-sql-results { margin-top: .5rem; max-height: 55vh; overflow-y: auto; }

/* ── Misc ──────────────────────────────────────────────────────────────────── */
.dba-loading { color: #666; font-size: .82rem; padding: 1rem; text-align: center; }
.dba-empty   { color: #555; font-size: .82rem; padding: .5rem; text-align: center; }
.dba-error   { color: #f88; font-size: .82rem; padding: .5rem; }
