/* Match the CAGENT website's near-black, olive and acid-lime visual language. */
:root {
  --bg: #080a08;
  --side: #0b0e0a;
  --panel: #101510;
  --line: #30392b;
  --text: #f3f4ee;
  --muted: #929b8b;
  --mint: #c7ff00;
  --red: #ff927d;
}

body { background: var(--bg); color: var(--text); }
button, input, select { font-family: 'DM Sans', Arial, sans-serif; }
button:focus-visible, input:focus-visible, select:focus-visible { outline-color: var(--mint); }

.sidebar { background: #0b0e0a; border-right-color: #252922; }
.brand { font-family: 'DM Sans', Arial, sans-serif; letter-spacing: -.7px; }
.brand strong { color: #f3f4ee; }
.brand .mint, .mint { color: var(--mint); }
.logo { background: transparent; color: var(--mint); border: 2px solid var(--mint); border-radius: 50%; }
.side-label, .side-foot { color: #818b76; }
.side-label span { color: var(--mint); }
.nav-item { color: #a7aea0; border-radius: 5px; }
.nav-item:hover, .nav-item.active { background: #192012; color: #f3f4ee; }
.nav-item.active { border-color: #455b28; }
.nav-item > span, .nav-item.active > span, .nav-item i { color: var(--mint); }
.system-status { border-bottom-color: #2c3526; }
.system-status small, .side-foot span { color: #899780; }
.pulse { background: var(--mint); box-shadow: 0 0 0 5px #c7ff0014, 0 0 14px #c7ff0070; }
.topbar, footer { border-color: #252922; color: #9ca694; }
.topbar strong { color: #f3f4ee; }
.topbar span:not(.demo-pill) { color: #75806d; }
.demo-pill, .eyebrow { color: var(--mint); }
.demo-pill i { background: var(--mint); }

.page-header h1, .section-intro h2, .section-heading h2, .hero-copy h2,
.call-copy h2, .radar-copy h2, .agent-profile h2, .escalation h3,
.settings-card h3, .portfolio-summary strong, .position-card h3,
.modal h2, .stat-content strong { font-family: 'DM Sans', Arial, sans-serif; font-weight: 500; }
.page-header h1 em, .section-intro h2 em { color: var(--mint); }
.page-header p, .page-date span, .section-intro p, .footnote { color: #a3ad9b; }
.page-date small, .eyebrow, .micro, .panel-label, .position-top small,
.portfolio-summary span, th, .status-chip, .side-label, .side-foot,
.radar-chip, .telegram-row, .disabled-state { font-family: ui-monospace, 'SFMono-Regular', Consolas, monospace; }
.page-date small { color: #839476; }
.page-date strong { color: #f3f4ee; }

.wallet-button, .primary-button, .answer-button, .chat-form button {
  background: var(--mint); color: #111609; border: 1px solid #111609; border-radius: 4px;
}
.wallet-button:hover, .primary-button:hover, .answer-button:hover, .chat-form button:hover { background: #e0ff71; }
.ghost-button, .section-heading button, .stat-foot button, .radar-copy button { color: var(--mint); }
.outline-button { border-color: #596c3e; color: var(--mint); border-radius: 4px; }
.outline-button:hover { background: #1b2613; }
.round-button { background: var(--mint); color: #111609; }

.panel, .position-card, .portfolio-summary > div, .settings-card, .escalation,
.rule-explain, .table-wrap, .rule-card, .agent-profile, .conversation, .notice {
  background-color: #101510; border-color: #30392b; border-radius: 10px;
}
.panel-label { color: #e6eddb; }
.square { background: var(--mint); }
.hero-panel { background: #10180d; }
.hero-wash { background: linear-gradient(180deg,#080a0810,transparent 26%,#080b08 75%),linear-gradient(90deg,#080a0844,transparent); }
.hero-copy h2 em, .hero-copy .micro { color: var(--mint); }
.hero-copy p, .call-copy p { color: #c0cbb5; }
.call-panel { background: #121710; }
.phone-art { filter: saturate(.58) brightness(.7); }
.phone-wash { background: linear-gradient(0deg,#090c08e8,#090c0820 82%); }
.stat-panel { background: radial-gradient(circle at 100% 0%,#2b3b18,#101510 65%); }
.stat-content > span, .stat-content .positive small, .stat-foot { color: #a4b197; }
.stat-content strong span { color: #b2bea8; }
.positive, .stat-content .positive { color: var(--mint); }
.radar-panel { background: #172110; }
.radar-art { filter: hue-rotate(-105deg) saturate(.6) brightness(.65); }
.radar-wash { background: linear-gradient(0deg,#0a1108ed,transparent 76%); }
.radar-chip { color: var(--mint); }
.radar-chip i { background: var(--mint); }
.radar-copy button { border-bottom-color: var(--mint); }
.signals-panel { background: #101510; }
.signals-panel .panel-label > span:last-child { color: #9aaa8d; }
.signal-row { border-bottom-color: #30392b; }
.signal-icon { background: #29391b; color: var(--mint); }
.signal-row small, .signal-row time { color: #94a18a; }
.panel-link { color: var(--mint); }

.position-card, .table-wrap { background: #11170f; }
.coin-icon { background: #30431b; color: var(--mint); }
.position-top small, .position-card p, td small { color: #9ba991; }
.status-chip { color: var(--mint); }
.notice { background: #192312; color: #bbcab0; }
.notice strong { color: var(--mint); }
.portfolio-summary span, th { color: #99aa8b; }
td, th { border-bottom-color: #30392b; }
.table-wrap tr:last-child td { border-bottom: 0; }

.rule-symbol { background: #30431b; color: var(--mint); }
.rule-main small, .rule-explain p, .escalation small, .settings-card p { color: #a3b099; }
.rule-card button { color: #aabc98; }
.escalation > div, .route { border-top-color: #30392b; }
.escalation b, .telegram-row strong, .route b { color: var(--mint); }
.agent-profile::before { background-image: linear-gradient(180deg,#10151005 35%,#101510 100%),url('assets/zero-face.png'); }
.escalation::before { background-image: linear-gradient(180deg,#10151000 25%,#101510 100%),url('assets/cyber-portrait.png'); }
.escalation .eyebrow { background: #0b100ad6; }
.agent-avatar, .caller-avatar { background: var(--mint); color: #111609; border-radius: 9px; }
.conversation-head { border-bottom-color: #30392b; }
.conversation-head small, .telegram-row { color: #9cab92; }
.conversation-head > span { color: var(--mint); }
.bubble { background: #26351d; color: #edf4e5; }
.bubble.user { background: var(--mint); color: #111609; }
.chat-form input, .modal input, .modal select, .quiet-times input { background: #0b100a; border-color: #455637; color: #f3f4ee; border-radius: 4px; }
.route { color: #e1e9d9; }
.quiet-times label { color: #a2b099; }
.disabled-state { color: #ff9c87; }
.disabled-state .pulse { background: #ff9c87; box-shadow: 0 0 10px #ff9c8770; }

.modal { background: #11170e; border-color: #4a5b36; color: #f3f4ee; border-radius: 10px; }
.modal::backdrop { background: #020402d9; }
.modal p, .modal-note { color: #aab9a1; }
.modal label { color: #e6edde; }
.close-button { color: var(--mint); }
.call-transcript, .wallet-detail { background: #0b100a; border-color: #405132; color: #c4d1bb; }
.call-transcript strong { color: var(--mint); }
.decline-button { border-radius: 4px; }
.proposal-row { border-top-color: #3b4d2d; color: #aab9a1; }
.proposal-row strong { color: #f3f4ee; }
.toast { background: var(--mint); color: #111609; border-radius: 4px; }

@media (max-width: 780px) {
  .menu-button { color: var(--mint); }
  .sidebar { box-shadow: 18px 0 70px #000c; }
}


/* Supplied CAGENT mark replaces the earlier A0 monogram. */
.brand-mark { display: block; width: 170px; height: 36px; flex: none; object-fit: contain; object-position: left center; }
.agent-avatar, .caller-avatar { display: grid; place-items: center; background: #0b100a; border: 1px solid #455637; overflow: hidden; }
.agent-avatar img, .caller-avatar img { display: block; width: 86%; height: 86%; object-fit: contain; }
