:root{
  --accent:#d9a441;
  --accent-d:#b9862f;
  --bg:#0b0b0e;
  --chip:#1c1c21;
  --danger:#e5484d;
  --dim:#a39e93;
  --font-body:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --font-display:'Space Grotesk','Inter',system-ui,sans-serif;
  --font-mono:'IBM Plex Mono',ui-monospace,monospace;
  --ink:#ece7db;
  --line:rgba(236,231,219,.12);
  --panel:#141417;
  --panel2:#1c1c21;
  --font-body:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --font-display:'Space Grotesk','Inter',system-ui,sans-serif;
  --font-mono:'IBM Plex Mono',ui-monospace,monospace;
}
*{box-sizing:border-box;}
body{margin:0;font-family:var(--font-body);background:var(--bg);color:var(--ink);}
.topbar{display:flex;justify-content:space-between;align-items:center;padding:12px 20px;background:var(--panel);border-bottom:1px solid var(--line);flex-wrap:wrap;gap:12px;}
.brand{display:flex;gap:12px;align-items:center;}
.logo{font-size:34px;}
.brand h1{margin:0;font-size:20px;}
.mode-badge{margin:2px 0 0;font-size:12px;font-weight:700;color:color-mix(in srgb, #111 55%, #ece7db);background:color-mix(in srgb, #ffc93c 16%, transparent);border-radius:3px;padding:3px 8px;display:inline-block;}
.dash{display:flex;gap:10px;}
.stat{background:var(--panel2);border:1px solid var(--line);border-radius:3px;padding:8px 14px;text-align:center;min-width:86px;}
.stat-num{display:block;font-size:22px;font-weight:800;}
.stat-label{display:block;font-size:11px;color:var(--dim);}
.layout{display:grid;grid-template-columns:320px 1fr 460px;gap:14px;padding:14px;align-items:start;}
.panel{background:var(--panel);border:1px solid var(--line);border-radius:3px;padding:14px;}
.panel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;}
.panel-head h2{margin:0;font-size:16px;}
.chip{background:var(--chip);border-radius:3px;padding:3px 10px;font-size:12px;color:var(--dim);}
.chip.mono{font-family:var(--font-body);color:#ffc93c;border:1px solid var(--line);}
.add-form{display:grid;gap:8px;margin-bottom:10px;}
input,textarea,select{background:var(--panel);border:1px solid var(--line);color:var(--ink);border-radius:3px;padding:9px 10px;font-size:14px;width:100%;}
input:focus,textarea:focus{outline:1px solid var(--accent);}
.btn{border:none;border-radius:3px;padding:9px 12px;font-size:14px;cursor:pointer;background:var(--chip);color:var(--ink);}
.btn.primary{background:var(--accent-d);color:var(--ink);font-weight:700;}
.btn.danger{background:var(--danger);color:var(--ink);font-weight:700;}
.btn.ghost{background:transparent;border:1px solid var(--line);color:var(--dim);}
.btn.big{font-size:17px;padding:14px 20px;font-weight:800;}
.btn.small{font-size:12px;padding:6px 10px;}
.btn:disabled{opacity:.4;cursor:not-allowed;}
.queue-list{list-style:none;margin:0;padding:0;display:grid;gap:8px;max-height:46vh;overflow:auto;}
.q-item{background:var(--panel2);border:1px solid var(--line);border-radius:3px;padding:10px;display:flex;justify-content:space-between;align-items:center;gap:8px;}
.q-item .q-name{font-weight:700;}
.q-item .q-meta{font-size:12px;color:var(--dim);}
.q-item.active{border-color:var(--accent);}
.q-del{background:transparent;border:none;color:var(--dim);font-size:16px;cursor:pointer;}
.queue-hint{margin-top:10px;font-size:12px;color:var(--dim);}
kbd{background:var(--panel);border:1px solid var(--line);border-radius:4px;padding:1px 6px;font-size:11px;}
.dialer-panel{text-align:center;}
.active-contact{margin:6px 0 4px;}
.contact-name{font-size:24px;font-weight:800;}
.contact-meta{color:var(--dim);font-size:14px;margin-top:4px;}
.call-timer{font-size:52px;font-weight:800;font-family:var(--font-body);margin:10px 0;}
.callerid-label{display:block;text-align:left;font-size:12px;color:var(--dim);margin:6px 0 12px;}
.dial-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-bottom:12px;}
.wrapup{background:var(--panel2);border:1px solid var(--line);border-radius:3px;padding:12px;text-align:left;}
.hidden{display:none!important;}
.wrapup-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;}
.wrapup-top h3{margin:0;font-size:15px;}
.wrapup-timer{color:#ffc93c;font-weight:800;}
.wrap-len{font-size:12px;color:var(--dim);}
.wrap-len select{width:auto;display:inline-block;margin-left:6px;padding:4px;}
.dispo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:8px;}
.dispo{border:1px solid var(--line);background:var(--panel);color:var(--ink);border-radius:3px;padding:9px 6px;font-size:13px;cursor:pointer;}
.dispo.picked{border-color:var(--accent);background:#123c26;}
#notes{margin-bottom:8px;min-height:56px;resize:vertical;}
.wrapup-actions{display:flex;gap:8px;justify-content:flex-end;}
.honesty{font-size:12px;color:var(--dim);background:var(--panel);border:1px dashed var(--line);border-radius:3px;padding:8px 10px;margin-top:12px;text-align:left;}
.history-scroll{max-height:56vh;overflow:auto;}
table.history{width:100%;border-collapse:collapse;font-size:12px;}
table.history th,table.history td{border-bottom:1px solid var(--line);padding:7px 6px;text-align:left;vertical-align:top;}
table.history th{position:sticky;top:0;background:var(--panel);color:var(--dim);}
table.history td.notes{max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
tr.empty td{text-align:center;color:var(--dim);padding:18px;}
.settings-row{display:flex;gap:8px;margin-top:10px;justify-content:flex-end;}
.foot{padding:10px 20px;color:var(--dim);font-size:12px;text-align:center;}
@media(max-width:1180px){.layout{grid-template-columns:1fr;}}

/* ===== vq reskin normalization (auto-generated) ===== */
body{font-family:var(--font-body);background:var(--bg);color:var(--ink);}
h1,h2,h3,h4,.brand,.logo{font-family:var(--font-body);}
button{font-family:var(--font-body);}
