/* ── NAV TABS ────────────────────────────────────────────── */
.nav-tabs-db {
    display:flex; gap:0; border-bottom:1px solid var(--border);
    margin-bottom:1.5rem; width:100%; position:sticky; top:0; z-index:50;
    background:var(--bg-base);
    margin-left:-1rem; margin-right:-1rem; padding-left:1rem; padding-right:1rem;
    width:calc(100% + 2rem);
}
.nav-tab {
    display:flex; flex-direction:column; align-items:center; gap:3px;
    flex:1; text-align:center;
    font-size:.68rem; text-transform:uppercase; letter-spacing:.07em;
    padding:.45rem .5rem; cursor:pointer; color:var(--text-muted);
    border-bottom:2px solid transparent; margin-bottom:-1px;
    background:none; border-top:none; border-left:none; border-right:none;
    font-family:inherit; transition:color .15s, border-color .15s;
}
.nav-tab i          { font-size:1.1rem; line-height:1; }
.nav-tab:hover      { color:var(--text-main); }
.nav-tab.active     { color:var(--accent); border-bottom-color:var(--accent); }
.nav-pane           { display:none; }
.nav-pane.active    { display:block; }

/* ── ACCESS DENIED ───────────────────────────────────────── */
.access-denied-wrap {
    min-height:100vh; display:flex; align-items:center;
    justify-content:center; background:var(--bg-base);
    font-family:'JetBrains Mono',monospace; padding:2rem;
}
.access-denied-box {
    border:1px solid var(--border); border-left:3px solid var(--neg);
    padding:2rem; max-width:420px; width:100%;
}
.access-denied-title  { font-size:1.4rem; font-weight:700; color:var(--neg); margin-bottom:1rem; }
.access-denied-body   { font-size:.88rem; color:var(--text-muted); margin-bottom:1.5rem; line-height:1.6; }
.access-denied-footer { font-size:.75rem; color:var(--text-muted); border-top:1px solid var(--border); padding-top:1rem; }

/* ── FOOTER ──────────────────────────────────────────────── */
.footer-db { border-top:1px solid var(--border); background:var(--bg-surface); padding:.75rem 0; margin-top:2rem; }
.footer-logo-row { padding-bottom:.8rem; border-bottom:1px solid var(--border); }
.footer-inner {display:flex; padding: 1rem; background-color: var(--bg-base); font-size:.72rem; gap: 1rem;align-items: center;justify-content: center;}
.footer-title  { font-weight:700; color:var(--text-muted); letter-spacing:.06em; }
.footer-sep    { margin:0 .4rem; color:var(--border); }
.footer-link   { color:var(--text-muted); text-decoration:none; letter-spacing:.04em; text-transform:uppercase; transition:opacity .15s; }
.footer-link:hover { opacity:.7; color:var(--accent); }

/* ── BUDGET INPUT ────────────────────────────────────────── */
.budget-input {
    background:var(--bg-surface); border:1px solid var(--border); color:var(--text-main);
    font-family:inherit; font-size:.92rem; padding:.15rem .4rem;
    width:55px; text-align:right;
}
.budget-input:focus { outline:1px solid var(--accent); border-color:var(--accent); }

/* ── INSIGHTS CONFIG PANEL ───────────────────────────────── */
.insights-config-panel  { background:var(--bg-surface); border:1px solid var(--border); margin-bottom:1rem; }
.insights-config-row    { display:grid; grid-template-columns:auto 1fr; padding:.55rem .85rem; gap:1rem; align-items:center; }
.insights-config-sep    { height:1px; background:var(--border); }
.insights-config-label  { flex:1; }
.insights-config-control { display:flex; align-items:center; gap:.5rem; flex-shrink:0; }

/* toggle switch */
.insights-toggle-wrap  { display:flex; align-items:center; justify-content:end; cursor:pointer; user-select:none; }
.insights-toggle-cb    { display:none; }
.insights-toggle-track {
    position:relative; width:34px; height:18px;
    background:var(--border); border:1px solid var(--border);
    transition:background .2s, border-color .2s; flex-shrink:0;
}
.insights-toggle-cb:checked + .insights-toggle-track { background:rgba(227,179,65,.25); border-color:var(--warn); }
.insights-toggle-thumb {
    position:absolute; top:2px; left:2px;
    width:12px; height:12px; background:var(--text-muted);
    transition:transform .2s, background .2s;
}
.insights-toggle-cb:checked + .insights-toggle-track .insights-toggle-thumb { transform:translateX(16px); background:var(--warn); }
.insights-toggle-label { font-size:.75rem; color:var(--text-muted); text-transform:uppercase; min-width:2.5rem; }
.insights-toggle-cb:checked ~ .insights-toggle-label { color:var(--warn); }

/* ── PRICE TOGGLE ────────────────────────────────────────── */
.price-toggle {
    background:var(--bg-surface); border:1px solid var(--border);
    color:var(--text-muted); font-family:inherit; font-size:.72rem;
    padding:.15rem .5rem; cursor:pointer; text-transform:uppercase;
    letter-spacing:.05em; transition:color .15s, border-color .15s;
}
.price-toggle:hover          { border-color:var(--accent); color:var(--accent); }
.price-toggle--active        { border-color:var(--warn); color:var(--warn); }
.price-toggle--active:hover  { border-color:var(--warn); color:var(--warn); }

/* ── ADMIN PICKER ────────────────────────────────────────── */
.admin-picker-wrap {
    position:fixed; inset:0; z-index:9999;
    display:flex; align-items:center; justify-content:center;
    background:var(--bg-base);
    font-family:'JetBrains Mono',monospace;
    padding:2rem;
}
.admin-picker-box {
    border:1px solid var(--border); border-left:3px solid var(--accent);
    padding:2rem; width:100%; max-width:420px;
    display:flex; flex-direction:column; gap:.25rem;
}
.admin-picker-logo {
    display:flex; align-items:center; gap:.6rem;
    margin-bottom:.25rem;
}
.admin-picker-title {
    font-size:1.1rem; font-weight:700;
    color:var(--text-main); margin-bottom:.75rem; margin-top:.1rem;
}
.admin-picker-list {
    display:flex; flex-direction:column; gap:2px;
    margin-bottom:1.25rem;
}
.admin-champ-opt {
    display:flex; align-items:baseline; gap:.6rem;
    padding:.5rem .7rem; cursor:pointer;
    border:1px solid var(--border);
    background:var(--bg-surface);
    transition:border-color .15s, background .15s;
}
.admin-champ-opt:hover   { background:var(--bg-hover); border-color:var(--accent); }
.admin-champ-opt.active  { border-color:var(--accent); background:rgba(88,166,255,.08); }
.admin-champ-key  { font-size:.82rem; font-weight:700; color:var(--accent); flex-shrink:0; }
.admin-champ-name { font-size:.75rem; color:var(--text-muted); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.admin-picker-btn {
    width:100%; padding:.6rem; cursor:pointer;
    background:var(--accent); border:none; color:#000;
    font-family:inherit; font-size:.82rem; font-weight:700;
    text-transform:uppercase; letter-spacing:.07em;
    transition:opacity .15s;
}
.admin-picker-btn:hover    { opacity:.85; }
.admin-picker-btn:disabled { opacity:.4; cursor:not-allowed; }
.admin-picker-footer {
    font-size:.72rem; color:var(--text-muted);
    text-align:center; margin-top:.75rem;
    border-top:1px solid var(--border); padding-top:.75rem;
}