:root {
  color-scheme: dark;
  --ink: #e4e4e4;
  --muted: #9e9f9e;
  --line: #3c3d3c;
  --paper: #252625;
  --white: #2c2c2c;
  --green: #c8c9c6;
  --mint: #333433;
  --lime: #c9cac7;
  --nav: #202020;
  --red: #bfb9b8;
  --amber: #c1beba;
  --shadow: none;
  background: var(--paper);
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  font-size: 14px;
}
body { background: var(--paper); color: var(--ink); }
button, .button { background: #313130; border-color: var(--line); color: var(--ink); border-radius: 7px; box-shadow: none; }
button:hover, .button:hover { background: #3a3a3a; color: #f2f2f2; border-color: #585958; }
button.primary { background: #d2d3d1; color: #252524; border-color: #d2d3d1; }
button.primary:hover { background: #e4e5e4; color: #222221; }
button.subtle { background: transparent; border-color: transparent; }
button.subtle:hover { background: #373737; }
button.danger { color: #c1bbba; }
input, select, textarea { color: var(--ink); background: #272726; border-color: #484948; box-shadow: none; }
input::placeholder, textarea::placeholder { color: #848483; }
input:focus, select:focus, textarea:focus { border-color: #a2a4a0; outline: 2px solid #84868255; }
input[type=checkbox] { accent-color: #afb0ad; }
label, legend { color: #d8d8d7; }
fieldset { border-color: var(--line); }
.shell { grid-template-columns: 226px minmax(0,1fr); }
.sidebar { width: 226px; background: #202020; padding: 25px 13px 12px; border-right: 1px solid #373736; }
.sidebar .brand { color: #ededed; padding: 0 12px 22px; letter-spacing: -.8px; font-size: 24px; }
.sidebar .brand-mark { color: #c4c5c3; }
.sub-brand { color: #929392; font-size: 10px; letter-spacing: .25px; font-weight: 400; margin-top: 5px; }
.nav-label { color: #7f807e; padding: 20px 12px 7px; font-size: 10px; letter-spacing: 1.05px; }
.nav-item { color: #afb0ae; font-size: 12px; padding: 9px 12px; margin: 2px 0; border-radius: 5px; gap: 10px; }
.nav-item:hover { background: #2e2f2e; color: #eeeeed; }
.nav-item.active { background: #363635; color: #eeefee; box-shadow: inset 2px 0 #babcb8; }
.nav-item .ui-icon { width: 17px; height: 17px; stroke-width: 1.5; }
.sidebar nav { scrollbar-width: thin; scrollbar-color: #464746 transparent; }
.nav-bottom { border-color: #373837; margin-top: 14px; padding-top: 7px; }
.avatar { background: #3a3b3a; color: #d2d3d0; }
.workspace-user { color: #9fa09e; }
.workspace-user strong { color: #dbdcda; }
.topbar { height: 67px; background: #252625; border-color: #3a3a39; padding: 0 34px; }
.project-icon { background: #333433; border-color: #494948; color: #c9cac7; }
.project-select select { color: #dcdcdc; background: transparent; }
.top-actions { gap: 16px; }
.top-actions select { color: #c3c4c2; background: #323332; border-color: #4b4c4a; border-radius: 5px; }
.service-status { color: #90918e; }
.service-status i, .dot { background: #9b9d98; }
main { padding: 31px 34px 40px; max-width: 1550px; }
.page-head { margin-bottom: 25px; }
.page-head h1 { color: #ececec; font-size: 27px; font-weight: 570; letter-spacing: -.8px; }
.breadcrumbs { color: #818280; }
.breadcrumbs b { color: #acadac; }
.subtitle { color: #969695; line-height: 1.6; }
.card { background: #2c2d2c; border-color: #3f403e; border-radius: 8px; box-shadow: none; }
.card-head { padding: 21px 22px 17px; }
.card-head p, .list-card p, .list-bottom small, .metric-note { color: #9e9f9d; }
.metric-label { color: #afb0ae; }
.metric.highlight { background: #343433; border-color: #4b4c49; }
.metric-value { color: #e4e4e3; font-size: 32px; }
.metric-value small { color: #adaeac; }
.filters select, .filters input { color: #cacbc9; background: #2b2c2b; border-color: #454644; }
th { background: #2f302f; color: #a7a9a6; border-color: #464645; }
td { color: #babbb9; border-color: #3c3d3b; }
td strong { color: #e0e1df; }
tbody tr.clickable:hover { background: #343433; }
.table-wrap { scrollbar-width: thin; scrollbar-color: #555653 transparent; }
.pill { background: #383837; color: #bebfbc; }
.pill.neutral { background: #3a3b3a; color: #b5b6b4; }
.pill.good { background: #3a3c3a; color: #babcb9; }
.pill.bad { background: #434140; color: #c0bbb9; }
.pill.blue { background: #3d3e3e; color: #bec0c0; }
.pill.amber { background: #42413f; color: #c3c2bd; }
.notice, .mode-banner { background: #323332; border-color: #464745; color: #b1b3af; }
.notice.warn { background: #3b3a38; border-color: #4d4c4a; color: #c3c1bd; }
.mode-banner strong { color: #c2c3c0; }
.mode-banner { font-size: 11px; border-radius: 5px; padding: 10px 14px; }
.live-banner { background: #313332; border-color: #484a49; color: #b5b8b6; }
.live-banner strong { color: #c8cac8; }
.bar-track { background: #3d3e3c; }
.bar-fill { background: #838581; }
.bar-row:first-child .bar-fill { background: #b9bbb6; }
.legend { color: #a3a5a2; }
.chart text { fill: #a4a5a3; }
.tabs { border-color: #484947; }
.tabs button { color: #999a98; }
.tabs button.active { color: #cecfcc; border-color: #c4c6c2; background: transparent; }
.answer-body, pre, .prose code, .markdown code { background: #262726; color: #d0d1cf; border-color: #444543; }
.source-link { background: #313130; border-color: #484947; }
.empty strong { color: #dcdddb; }
.empty, .empty p, .empty .empty-icon { color: #a1a3a0; }
.source-empty { color: #a9aaa8; }
.pagination, .page-footer { color: #8c8e8b; border-color: #3e3f3d; }
.section-title { color: #959693; }
.check-row { border-color: #424341; }
.check-icon { background: #434542; color: #c7c9c5; }
.check-icon.fail { background: #474543; color: #bdbab4; }
.tag-list { color: #b3b5b1; }
.auth-card, .welcome-form { background: #2c2c2b; color: #dcdddb; }
dialog { background: #2b2b2a; color: #e2e3e1; border: 1px solid #51524f; border-radius: 12px; box-shadow: 0 30px 100px #090a09aa; }
dialog::backdrop { background: #0e0f0ecb; backdrop-filter: blur(3px); }
.modal-head, .form-footer { border-color: #494a48; }
.form-hint, .modal-subtitle { color: #a0a19e; }
.form-error { color: #c2bdbb; }
#toast { background: #d6d7d5; color: #222321; border: 1px solid #e3e4e2; box-shadow: 0 5px 30px #0004; }
.error-box { background: #383735; border-color: #504f4c; color: #cdccc8; }
.spinner { border-color: #484a47; border-top-color: #b6b9b4; }
.loading { color: #a9aba8; }
.button { display: inline-flex; align-items: center; justify-content: center; gap: 7px; padding: 9px 13px; font-size: 12px; }
.button:hover { text-decoration: none; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.pulse-home { max-width: 860px; margin: 46px auto 0; }
.pulse-greeting { text-align: center; margin-bottom: 30px; }
.pulse-greeting .eyebrow { color: #9e9f9d; font-size: 9px; letter-spacing: 2px; margin-bottom: 17px; }
.pulse-greeting h2 { font-size: clamp(25px,3vw,35px); font-weight: 450; color: #e5e6e4; letter-spacing: -1.2px; }
.pulse-greeting p { color: #9e9f9c; font-size: 12px; margin: 13px 0 0; }
.composer { background: #30312f; border: 1px solid #51524f; border-radius: 12px; padding: 16px 18px 12px; box-shadow: 0 7px 20px #12131222; }
.composer textarea { width: 100%; min-height: 99px; max-height: 260px; border: 0; resize: vertical; background: transparent; box-shadow: none; outline: none; line-height: 1.7; font-size: 14px; padding: 0 2px; color: #e5e6e4; }
.composer textarea:focus { outline: none; }
.composer-bottom { display: flex; gap: 13px; align-items: center; }
.research-toggle { display: flex; gap: 6px; align-items: center; font-size: 11px; color: #a6a8a5; margin: 0; }
.composer-bottom .send-button { margin-left: auto; padding: 8px; border-radius: 7px; }
.send-button .ui-icon { width: 17px; height: 17px; }
.starter-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px; margin: 13px 0 39px; }
.starter-card { padding: 14px 13px; background: transparent; justify-content: start; color: #b9bab7; font-size: 11px; font-weight: 400; border-color: #444543; }
.starter-card>.ui-icon:last-child { margin-left: auto; width: 13px; }
.starter-card>.ui-icon:first-child { width: 16px; }
.home-section-heading { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin: 27px 0 13px; }
.home-section-heading h3 { font-size: 12px; color: #c1c2c0; font-weight: 500; margin: 0; }
.home-section-heading a { font-size: 10px; color: #a1a39f; display: flex; align-items: center; gap: 6px; }
.home-section-heading .ui-icon { width: 12px; }
.home-next-steps { border: 1px solid #464744; border-radius: 8px; overflow: hidden; }
.next-step { width: 100%; display: flex; padding: 17px; text-align: left; border: 0; border-bottom: 1px solid #3f403e; border-radius: 0; background: #2d2e2d; gap: 15px; font-weight: 400; }
.next-step:last-child { border-bottom: 0; }
.next-step>span { display: grid; place-items: center; width: 32px; height: 32px; background: #3a3c39; border-radius: 7px; color: #b8bab6; }
.next-step>div { flex: 1; }
.next-step strong { display: block; color: #d0d2cf; font-size: 12px; font-weight: 500; }
.next-step small { display: block; color: #999b97; font-size: 10px; margin-top: 6px; }
.next-step>.ui-icon { color: #a8aaa6; width: 16px; }
.conversation-row { display: flex; width: 100%; border: 0; border-bottom: 1px solid #414340; border-radius: 0; padding: 16px 4px; background: transparent; font-weight: 400; gap: 13px; text-align: left; }
.conversation-row span { flex: 1; font-size: 12px; color: #c9cac7; }
.conversation-row small { color: #929490; font-size: 10px; }
.conversation-row>.ui-icon { width: 16px; color: #a1a39e; }
.quiet-empty { font-size: 12px; color: #91928f; padding: 8px 0 14px; }
.workspace-status { color: #8c8e8a; display: flex; align-items: center; justify-content: center; gap: 11px; font-size: 10px; margin: 34px 0; flex-wrap: wrap; }
.section-toolbar { display: flex; align-items: center; justify-content: space-between; margin-bottom: 20px; gap: 14px; font-size: 12px; }
.record-search { max-width: 180px; min-width: 90px; padding: 8px 11px; border: 1px solid var(--line); border-radius: 6px; font-size: 12px; }
.conversation-index { display: flex; align-items: center; padding: 13px 18px; gap: 16px; }
.conversation-main { flex: 1; background: transparent; border: 0; justify-content: start; text-align: left; gap: 15px; padding: 10px 0; }
.conversation-main strong { display: block; font-weight: 500; font-size: 13px; }
.conversation-main small { display: block; color: var(--muted); font-size: 10px; margin-top: 5px; }
.chat-layout { max-width: 900px; margin: 0 auto; }
.chat-heading { display: flex; gap: 16px; align-items: center; border-bottom: 1px solid var(--line); padding-bottom: 17px; }
.chat-heading h2 { font-size: 14px; flex: 1; font-weight: 500; }
.chat-heading button { font-size: 11px; }
.chat-messages { min-height: 250px; padding: 10px 0 20px; }
.chat-message { margin: 24px 0; padding: 20px 24px; border: 1px solid #474845; border-radius: 10px; background: #2e2f2d; }
.chat-message.user { background: #363735; margin-left: 9%; border-color: #50524f; }
.message-label { display: flex; gap: 12px; font-size: 10px; text-transform: uppercase; letter-spacing: .8px; color: #babcb8; margin-bottom: 12px; }
.message-label span { color: #848682; text-transform: none; letter-spacing: 0; }
.markdown { line-height: 1.85; font-size: 13px; overflow-wrap: anywhere; color: #d2d3d1; }
.markdown p { margin: 9px 0; }
.markdown h2 { font-size: 19px; margin: 20px 0 9px; }
.markdown h3 { font-size: 16px; margin: 19px 0 8px; }
.message-sources { display: flex; flex-wrap: wrap; gap: 8px; margin: 18px 0; }
.message-sources a { font-size: 10px; border: 1px solid #525450; border-radius: 5px; padding: 7px; max-width: 260px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.message-actions { display: flex; justify-content: end; margin-top: 14px; }
.chat-empty { color: #91948f; text-align: center; margin: 60px 0; }
.thinking { display: flex; gap: 5px; align-items: center; }
.thinking>span { width: 5px; height: 5px; background: #afb1ac; border-radius: 50%; animation: breathe 1.2s infinite alternate; }
.thinking>span:nth-child(2) { animation-delay: .2s; }
.thinking>span:nth-child(3) { animation-delay: .4s; }
.thinking small { margin-left: 10px; color: #9ea19c; }
@keyframes breathe { from { opacity: .25; } to { opacity: 1; } }
.chat-layout .composer { position: sticky; bottom: 18px; z-index: 2; }
.contact-picker { max-height: 290px; overflow: auto; border: 1px solid var(--line); border-radius: 7px; padding: 14px; display: grid; gap: 12px; }
.contact-picker .check { display: flex; align-items: start; gap: 8px; font-size: 12px; }
.contact-picker .check span { margin-left: auto; font-size: 10px; }
.workflow-card { padding: 25px; }
.workflow-steps { display: flex; align-items: center; gap: 16px; margin: 23px 0; }
.workflow-steps>span { display: flex; align-items: center; justify-content: center; gap: 11px; padding: 18px; border: 1px solid #545652; border-radius: 7px; color: #bec1bc; flex: 1; font-size: 12px; }
.workflow-steps i { color: #858882; font-style: normal; }
.context-grid { grid-template-columns: 1fr 1fr; }
.connection-card { display: flex; align-items: start; padding: 24px; gap: 18px; }
.connection-symbol { width: 43px; height: 43px; background: #3a3c39; display: grid; place-items: center; border-radius: 9px; flex-shrink: 0; color: #b6b8b3; }
.connection-card p { font-size: 12px; color: #9b9d99; margin: 9px 0 16px; }
.connection-note { display: flex; gap: 12px; align-items: center; margin-bottom: 25px; }
.connection-note .ui-icon { flex-shrink: 0; }
.reply-preview { padding: 15px; border-left: 2px solid #898c86; color: #bfc1bd; background: #2c2d2b; font-size: 12px; line-height: 1.7; margin-bottom: 18px; white-space: pre-wrap; }
.report-scope, .prompt-bulk-bar, .prompt-table .selected-row, .note-finding blockquote, .brand-finding blockquote { background: #323332; border-color: #4a4b48; color: #c7c9c4; }
.report-scope p, .comparison-change, .prompt-stage-label, .schema-tag, .source-link small { color: #aaaDA7; }
.report-scope .section-title { color: #a1a49d; }
.answer-body strong, .metric.highlight .metric-value { color: #e2e4de; }
.answer-body pre, .answer-body code, .prompt-diff pre, .prompt-change-value [disabled] { background: #252625; color: #cdd0c8; }
.report-tile .report-icon, .dashboard-cover, .provider-dot, .schema-tag { background: #3a3c38; color: #bec2b8; }
.draft-stagebar span { background: #2c2e2a; color: #9da397; border-color: #464a42; }
.draft-stagebar .current { background: #3b4036; color: #d0d7c7; border-color: #666e5f; }
.prompt-favorite { color: #a2a79c; }
.prompt-favorite[aria-pressed=true] { color: #e0e5d8; }
.prompt-diff summary, .draft-history-settings summary { color: #c2c8ba; }
.sidebar .mobile-toggle { color: #c5c9c0; }
.sidebar .mobile-toggle:hover { background: #3b3e37; }
.progress { background: #40433c; }
.progress span { background: #a4ad99; }
mark { background: #565c4e; color: #ecf0e6; }
[hidden] { display: none !important; }
@media (prefers-reduced-motion: reduce) { *,*::before,*::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; } }
@media(max-width:1100px) { .section-toolbar { flex-wrap: wrap; } .metrics { grid-template-columns: repeat(2,minmax(0,1fr)); } .record-search { max-width: 140px; } }
@media(max-width:800px) {
  .shell { grid-template-columns: minmax(0,1fr); }
  .sidebar { transform: translateX(-100%); width: 226px; visibility: hidden; }
  .shell.menu-open .sidebar { transform: translateX(0); visibility: visible; }
  .content { grid-column: 1; }
  .topbar { padding: 0 17px; gap: 8px; }
  main { padding: 24px 18px; }
  .service-status, .top-actions .action-label { display: none; }
  .top-actions { gap: 6px; }
  .project-select select { max-width: 135px; font-size: 12px; }
  .mobile-toggle { display: inline-flex; }
  .starter-grid { grid-template-columns: 1fr; }
  .context-grid, .half, .split { grid-template-columns: 1fr; }
  .page-head { align-items: start; flex-direction: column; }
  .page-actions { flex-wrap: wrap; max-width: 100%; }
  .pulse-home { margin-top: 20px; }
  .pulse-greeting p { font-size: 11px; }
  .composer-bottom .muted { display: none; }
  .conversation-row small { display: none; }
  .conversation-index { flex-wrap: wrap; }
  .chat-heading { flex-wrap: wrap; gap: 7px; }
  .chat-message { padding: 17px; }
  .workflow-steps { gap: 6px; flex-direction: column; align-items: stretch; }
  .workflow-steps>span { padding: 12px; }
  .workflow-steps i { text-align: center; transform: rotate(90deg); }
  .section-toolbar .inline-actions { flex-wrap: wrap; }
  .record-search { max-width: 100%; }
}
