/* PAYX: silver/white instrument panels, with the dark reactor theme on login only. */
body.hud-theme {
  --hud-bg: #f1f5f9;
  --hud-panel: #ffffff;
  --hud-line: #cad7e2;
  --hud-cyan: #247eaa;
  --hud-text: #172f45;
  --hud-muted: #52697c;
  color: var(--hud-text);
  background: var(--hud-bg);
  -webkit-font-smoothing: antialiased;
}
.hud-theme :is(button, input, select, textarea) { border-radius: 5px; }
.hud-theme :is(button, summary, a):focus-visible { outline: 2px solid #247eaa; outline-offset: 3px; }
.hud-theme .muted { color: var(--hud-muted); }
.hud-theme .eyebrow { color: #406d87; font-size: 10px; letter-spacing: .18em; }
.hud-theme .card {
  background: var(--hud-panel);
  color: var(--hud-text);
  border: 1px solid var(--hud-line);
  border-radius: 9px;
  box-shadow: 0 3px 12px #17354f08;
}
.hud-theme .card h2 { letter-spacing: .025em; }
.hud-theme .card label { color: #355369; }
.hud-theme :is(.compact-field, .acc-date) { color: #355369; }
.hud-theme .card > summary { color: var(--hud-text); }
.hud-theme .card input:focus, .hud-theme .card textarea:focus, .hud-theme .card select:focus { border-color: #247eaa; box-shadow: 0 0 0 2px #247eaa20; }
.hud-theme button.primary { background: #175573; border: 1px solid #175573; color: #ffffff; }
.hud-theme button.primary:hover { background: #206d90; border-color: #206d90; }
.hud-theme button.secondary { background: #eef4f8; border: 1px solid #b9cddc; color: #244c67; }
.hud-theme button.secondary:hover { background: #deedf5; border-color: #85aec7; }
.hud-theme .topbar { background: linear-gradient(100deg, #fff 70%, #edf5fa); color: #17374e; border-top: 3px solid #247eaa; border-bottom: 1px solid #c9d8e4; padding-top: 15px; padding-bottom: 15px; }
.hud-theme .brand { color: #163b55; letter-spacing: .18em; font-size: 25px; }
.hud-theme .brand::before { content: ""; display: inline-block; width: 6px; height: 21px; margin-right: 11px; background: #247eaa; vertical-align: -1px; }
.hud-theme .brand-subtitle { padding-left: 17px; color: #4b6a7e; font-size: 11px; }
.hud-theme #current-user { font-size: 12px; color: #36546a; }
.hud-theme .topbar button.ghost { color: #244c67; }
.hud-theme .topbar button.ghost:hover { background: #e6f0f7; }
.hud-theme .topbar .install-app-button { border-color: #adc5d7; }
.hud-theme .main-nav { background: #fff; border-color: #c9d8e4; padding-top: 7px; padding-bottom: 7px; gap: 8px; box-shadow: 0 2px 5px #143a5105; }
.hud-theme .nav-button { color: #476175; border-radius: 4px; font-size: 13px; background: transparent; border-bottom: 2px solid transparent; }
.hud-theme .nav-button:hover { color: #1e5373; background: #f0f6fa; }
.hud-theme .nav-button.active { background: #eaf3f9; color: #145679; border-bottom-color: #247eaa; }
.hud-theme .page-shell { padding-top: 26px; }
.hud-theme .section-heading h1 { font-size: 25px; font-weight: 750; letter-spacing: .03em; }
.hud-theme .section-heading .muted { font-size: 12px; max-width: 1000px; line-height: 1.6; }
.hud-theme .acc-toolbar { background: #fff; border-color: #cad7e2; border-radius: 8px; }
.hud-theme .acc-group-tab, .hud-theme .roster-group-tabs button { background: #f3f7fa; color: #3b596d; border: 1px solid #c4d4e0; border-radius: 4px; }
.hud-theme .acc-group-tab.active, .hud-theme .roster-group-tabs button.active { background: #175573; color: #fff; border-color: #175573; }
.hud-theme .record-count { background: #eaf3f9; color: #305b74; border-radius: 4px; border: 1px solid #c7dbe8; }
.hud-theme .entry-panel summary, .hud-theme .settlement-history-summary, .hud-theme .settlement-history-summary h2 { color: #26465c; }
.hud-theme .entry-panel[open] > summary { border-bottom-color: #cad7e2; }
.hud-theme .form-message { color: #246a49; }
.hud-theme .error { color: #b42318; }
.hud-theme .table-wrap { color: #172e40; border-radius: 5px; }
.hud-theme .table-wrap .muted { color: #5a7182; }
.hud-theme table { color: #1b3346; }
.hud-theme table td { background-color: #fff; }
.hud-theme table th { background: #eaf1f7; color: #244455; border-color: #c0d1df; }
.hud-theme .acc-table th { background: #e4edf3; color: #244455; border-color: #bacbd8; }
.hud-theme .acc-table td { background: #fff; }
.hud-theme .acc-table tbody tr:nth-child(even) td { background: #f5f8fb; }
.hud-theme .acc-summary-list { color: #355269; }
.hud-theme .acc-summary-list > div { border-color: #d6e1ea; background: #fff; }
.hud-theme .acc-summary-list strong { color: #173b54; }
.hud-theme .acc-summary-list span { color: #3c596e; }
.hud-theme .acc-summary-list .summary-emphasis { background: #edf4fa; }
.hud-theme .acc-summary-list .summary-total { background: #e4f2ec; }
.hud-theme .acc-summary-list .summary-total :is(span, strong) { color: #205b48; }
.hud-theme .acc-summary-list .balance-check-row.is-correct { background: #e4f2ec; }
.hud-theme .acc-summary-list .balance-check-row.is-correct strong { color: #205b48; }
.hud-theme .acc-summary-list .balance-check-row.is-error { background: #fff0ed; }
.hud-theme .acc-summary-list .balance-check-row.is-error strong { color: #a02e24; }
.hud-theme .adjustment-item { background: #fff8ef; border-color: #ead5b8; color: #31485a; }
.hud-theme .adjustment-category { color: #80521e; }
.hud-theme .adjustment-delete { color: #a02e24; }
.hud-theme .daily-bank-accounts { background: #f1f6fa; border-color: #c6d7e4; }
.hud-theme .roster-group-tabs { background: #fff; border-color: #cad7e2; }
.hud-theme .roster-group-tabs > span { color: #355369; }
.hud-theme :is(.security-modal-card, .install-guide-card) { background: #fff; color: #172f45; border: 1px solid #cad7e2; border-radius: 9px; }
.hud-theme .security-section { border-color: #cad7e2; }
.hud-theme .security-section h3, .hud-theme .security-details summary { color: #264f69; }
.hud-theme .security-account-row { background: #edf4f9; border-color: #cad7e2; }
.hud-theme .security-account-row span:first-child { color: #4c687c; }
.hud-theme .security-modal-card label { color: #355369; }
.hud-theme :is(.roster-attendance-context, .totp-enrollment, .payx-ai-panel) { color: #20394b; }
.hud-theme .install-guide-steps, .hud-theme .install-guide-steps strong { color: #355369; }
.hud-theme .totp-enrollment .muted { color: #506a7d; }
.hud-theme .account-section-heading { border-radius: 3px; }
.hud-theme .excel-workbook { border-radius: 7px; overflow: hidden; border-color: #bccfdd; }
.hud-theme .excel-ribbon { background: #dce8ef; }
.hud-theme .excel-fields th { background: #e5eff7; color: #244e69; }
.hud-theme .excel-letters th { color: #3c5465; background: #e5edf2; }
.hud-theme .excel-command.primary { background: #14566b; color: white; }
.hud-theme .sheet-tabs { background: #dbe6ed; }
.hud-theme .sheet-tab.active { border-color: #348fa2; color: #164e61; }
.hud-theme .roster-current-status, .hud-theme .roster-today-grid, .hud-theme .roster-shift-info { color: #24485c; }
.hud-theme .roster-clock-account { color: #173b54; }
.hud-theme .toast { background: #123e51; border: 1px solid #4fa4b6; box-shadow: 0 8px 24px #0005; }
.hud-theme .asset-category-row td { background: var(--asset-row-bg); }
.hud-theme .asset-category-row .asset-category-cell { background: var(--asset-category-bg); }
.hud-theme .form-card .table-wrap :is(input, select, textarea) { color: #172b3a; }
.hud-theme .support-total-row td, .hud-theme .support-total-row th { background: #d8efe7; color: #1c5b48; }
.hud-theme .settlement-total-row td, .hud-theme .settlement-total-row th { background: #d4eaf0; color: #1b5364; }
.hud-theme .form-card :is(.security-hint, .demo-note) { background: #edf4f9; color: #3b5c73; }

/* Login: geometric reactor motif is decorative, not a control or status indicator. */
.hud-login {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  display: grid;
  grid-template-columns: minmax(0, 530px) minmax(340px, 430px);
  gap: clamp(40px, 7vw, 130px);
  justify-content: center;
  align-content: center;
  min-height: 100svh;
  padding: 48px;
  color: #e9f3f7;
  background: linear-gradient(#81c7df06 1px, transparent 1px), linear-gradient(90deg, #81c7df06 1px, transparent 1px), radial-gradient(ellipse at 30% 45%, #12375c 0, transparent 58%), #071422;
  background-size: 55px 55px, 55px 55px, auto, auto;
}
.login-datafield { position: absolute; inset: 0; pointer-events: none; z-index: -1; opacity: .65; overflow: hidden; }
.login-datafield svg { width: 100%; height: 100%; }
.circuit-traces { fill: none; stroke: #367ec0; stroke-width: 1; opacity: .36; }
.circuit-flow { fill: none; stroke: #55bfff; stroke-width: 2; stroke-dasharray: 18 340; animation: circuit-current 12s linear infinite; filter: drop-shadow(0 0 6px #2c98ef); }
.circuit-nodes { fill: #78cfff; opacity: .5; animation: reactor-core-glow 6s ease-in-out infinite; }
@keyframes circuit-current { to { stroke-dashoffset: -716; } }
.hud-theme .hud-login .eyebrow { color: #8baabc; }
.login-identity { position: relative; width: 100%; max-width: 530px; display: grid; place-items: center; padding: 8px 0; }
.login-wordmark { font-weight: 850; font-size: 24px; letter-spacing: .19em; color: #d7f5ff; }
.login-wordmark span { display: inline-block; font-size: 9px; color: #8ba6b7; font-weight: 600; letter-spacing: .18em; margin-left: 20px; }
.login-reactor { width: min(460px, 100%); margin: 0; filter: drop-shadow(0 0 20px #45d3e238); }
.login-reactor svg { display: block; width: 100%; fill: none; }
#login-reactor-3d { display: none; width: 100%; aspect-ratio: 1; }
.login-reactor.has-3d #login-reactor-3d { display: block; }
.login-reactor.has-3d .reactor-fallback { display: none; }
.reactor-rotor, .reactor-counter-rotor { transform-origin: 210px 210px; animation: reactor-spin 24s linear infinite; }
.reactor-counter-rotor { animation-direction: reverse; animation-duration: 36s; }
.reactor-scan { stroke: #94e4ee; stroke-width: 2; }
.reactor-electric { stroke: #b1f6ff; stroke-width: 1.7; stroke-linejoin: round; opacity: .5; filter: drop-shadow(0 0 5px #5cdaed); animation: reactor-electric-glow 3.6s ease-in-out infinite; }
.reactor-electric-secondary { animation-delay: -1.8s; animation-duration: 4.8s; }
.reactor-hub { animation: reactor-core-glow 4s ease-in-out infinite; }
@keyframes reactor-spin { to { transform: rotate(360deg); } }
@keyframes reactor-electric-glow { 0%, 100% { opacity: .15; } 45%, 60% { opacity: .85; } }
@keyframes reactor-core-glow { 0%, 100% { opacity: .55; } 50% { opacity: 1; } }
.reactor-orbit { stroke: #2b5265; stroke-width: 1; }
.reactor-segment { stroke: #6fcad8; stroke-width: 3; stroke-dasharray: 54 15 3 15; }
.reactor-track { stroke: #25495b; stroke-width: 7; stroke-dasharray: 1 9; }
.reactor-lines { stroke: #3c6d80; stroke-width: 1; }
.reactor-inner { stroke: #457c8d; stroke-width: 1; }
.reactor-core { stroke: #81e0e8; stroke-width: 3; stroke-linejoin: bevel; }
.reactor-center { fill: #205b7040; stroke: #39798e; stroke-width: 1; }
.reactor-hub { fill: #97eff5; filter: drop-shadow(0 0 13px #57e1ed); }
.login-identity h2 { font-size: clamp(29px, 3vw, 42px); line-height: 1.45; font-weight: 650; letter-spacing: .03em; }
.login-identity h2 span { color: #7bd4e5; }
.login-description { font-size: 13px; color: #9cb5c4; line-height: 1.85; margin: 16px 0 22px; }
.login-capabilities { display: flex; gap: 23px; color: #9ebac9; font-size: 11px; }
.login-capabilities span::before { content: "+"; color: #72ccd8; margin-right: 7px; }
.hud-theme .login-card { position: relative; width: 100%; padding: 36px; color: #e9f3f7; border: 1px solid #365f80; border-radius: 10px; border-top: 2px solid #64bdcd; background: linear-gradient(140deg, #142838, #0c1926); box-shadow: 0 28px 80px #0004, 0 0 36px #247eaa10; }
.login-access-label { color: #89bacb; font-size: 9px; font-weight: 700; letter-spacing: .18em; margin-bottom: 36px; }
.hud-status-dot { display: inline-block; width: 5px; height: 5px; background: #83d8e5; margin-right: 6px; vertical-align: 1px; }
.hud-theme .login-card .brand-mark { color: #d2f3ff; font-size: 26px; letter-spacing: .18em; margin-bottom: 18px; }
.hud-theme .login-card h1 { font-size: 25px; font-weight: 700; letter-spacing: .03em; }
.hud-theme .login-card > .muted { color: #a3b8c5; font-size: 12px; line-height: 1.7; }
.hud-theme .login-card .stack { margin-top: 30px; gap: 19px; }
.hud-theme .login-card label { font-size: 12px; font-weight: 500; gap: 9px; color: #afc8d6; }
.hud-theme .login-card input { background: #0a1722; color: #e3f5fc; border: 1px solid #304c60; min-height: 46px; padding: 12px; }
.hud-theme .login-card input::placeholder { color: #809eaf; }
.hud-theme .login-card input:-webkit-autofill { -webkit-text-fill-color: #e3f5fc; -webkit-box-shadow: 0 0 0 1000px #0a1722 inset; caret-color: white; }
.hud-theme .login-card .primary { min-height: 46px; background: #75d6e5; color: #0a2836; border: 1px solid #a6edf5; font-weight: 800; letter-spacing: .08em; }
.hud-theme .login-card .primary:hover { background: #a0e6ee; }
.hud-theme .login-card :is(.demo-note, .security-hint) { color: #a4bfce; background: #162b3c; font-size: 11px; line-height: 1.7; }
.hud-theme .login-card .error { color: #ffc1bc; font-size: 12px; }

/* All metrics are visible together, with both comparison bases beside the trend. */
.settlement-dashboard-layout { grid-template-columns: minmax(0, 1fr); }
.settlement-dashboard-layout > .daily-dashboard { width: 100%; }
.settlement-dashboard-layout > #asset-entry-panel { margin-bottom: 16px; }
.hud-theme .daily-dashboard { background: #fff; padding: 22px; border-top: 3px solid #247eaa; }
.dashboard-state-line { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; color: #4b6478; font-size: 12px; margin: 6px 0 18px; }
.dashboard-data-state { padding: 5px 8px; background: #edf6f2; color: #245e4a; border: 1px solid #badbcd; border-radius: 3px; }
.dashboard-data-state.is-live { background: #fff7e9; border-color: #e6cf9d; color: #795714; }
.hud-theme .dashboard-metrics { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; margin: 0; }
.hud-theme .dashboard-stat { background: #fff; border: 1px solid #cad9e5; border-top: 3px solid #4089aa; border-radius: 7px; padding: 18px; gap: 7px; box-shadow: 0 2px 8px #173b5410; }
.hud-theme .dashboard-stat-category_a { border-top-color: #73a6d4; }
.hud-theme .dashboard-stat-category_b { border-top-color: #c6ab79; }
.hud-theme .dashboard-stat-category_c { border-top-color: #9c8ab9; }
.hud-theme .dashboard-stat-income { border-top-color: #78bfae; }
.hud-theme .dashboard-stat-expense { border-top-color: #c5957d; }
.hud-theme .dashboard-stat .dashboard-stat-label { font-size: 13px; color: #35536a; font-weight: 700; }
.hud-theme .dashboard-stat .dashboard-current { color: #143750; font-size: clamp(24px, 2.2vw, 34px); line-height: 1.2; margin: 2px 0 4px; letter-spacing: -.02em; font-weight: 750; overflow-wrap: anywhere; }
.dashboard-daily-change { display: flex; align-items: baseline; flex-wrap: wrap; gap: 9px; }
.dashboard-daily-change > span { font-size: 12px; color: #4b6478; }
.dashboard-daily-change > b { font-size: 17px; font-weight: 650; }
.hud-theme .dashboard-change { font-size: 12px; min-height: 15px; }
.hud-theme .dashboard-stat :is(.is-up) { color: #1a6688; }
.hud-theme .dashboard-stat :is(.is-down) { color: #98451f; }
.hud-theme .dashboard-stat :is(.is-same, .is-none) { color: #526778; }
.dashboard-comparison { display: grid; gap: 8px; margin: 8px 0 0; padding-top: 12px; border-top: 1px solid #dae4ec; font-size: 12px; }
.dashboard-comparison > div { display: flex; gap: 10px; justify-content: space-between; align-items: baseline; }
.dashboard-comparison dt { color: #486176; }
.dashboard-comparison dt small { font-size: 11px; color: #536c80; }
.dashboard-comparison dd { margin: 0; text-align: right; color: #1c3d54; font-weight: 650; font-variant-numeric: tabular-nums; }
.dashboard-comparison dd > small { display: block; margin-top: 2px; font-size: 11px; }
.dashboard-sparkline { margin-top: auto; padding-top: 9px; }
.dashboard-sparkline > span { font-size: 11px; color: #526a7e; }
.hud-theme .dashboard-trend text { fill: #526a7e; font-size: 14px; }
.hud-theme .dashboard-chart-line { stroke: #247eaa; }
.hud-theme .dashboard-chart-point { fill: #247eaa; }
.hud-theme .dashboard-chart-point.is-live { fill: #986212; }
.hud-theme .dashboard-chart-grid { stroke: #d6e2eb; }
.hud-theme .dashboard-chart-data, .hud-theme .dashboard-method { font-size: 12px; color: #35566d; margin: 16px 0 4px; }
.hud-theme .dashboard-chart-data summary, .hud-theme .dashboard-method summary { cursor: pointer; font-weight: 500; }
.hud-theme .dashboard-chart-data .table-wrap { margin-top: 10px; max-height: 360px; }
.hud-theme .dashboard-chart-data table { min-width: 930px; }
.hud-theme .dashboard-empty { color: #526a7e; }
.dashboard-profit { display: grid; grid-template-columns: minmax(240px, 1fr) minmax(0, 2fr); gap: 14px; margin-bottom: 18px; }
.hud-theme .dashboard-stat-net_income { border-top-color: #7ecfb3; }
.profit-analysis { min-width: 0; padding: 20px; border: 1px solid #cad9e5; border-radius: 7px; background: #fff; }
.profit-analysis h3 { font-size: 16px; margin: 0 0 8px; color: #173b54; }
.profit-definition, .profit-footnote, .profit-source-note { font-size: 12px; line-height: 1.65; color: #4b6478; }
.profit-impact-summary { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin: 16px 0; }
.profit-impact-summary > div { display: grid; gap: 7px; padding: 10px; background: #eff5fa; border: 1px solid #d7e3ed; border-radius: 4px; }
.profit-impact-summary span { font-size: 12px; color: #486176; }
.profit-impact-summary strong { font-size: 20px; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.profit-negative { color: #a03d27; }
.profit-positive { color: #1d684f; }
.hud-theme .profit-cause-table { width: 100%; min-width: 0; font-size: 12px; }
.profit-table-hint { font-size: 11px; color: #4b6478; margin: 10px 0 6px; }
.profit-cause-wrap { max-height: 320px; overflow: auto; scrollbar-color: #9bb3c7 #edf3f8; }
.hud-theme .profit-cause-table th { position: sticky; top: 0; z-index: 1; font-size: 11px; padding: 9px; }
.hud-theme .profit-cause-table td { background: #fff; color: #24445c; border-color: #d0deea; padding: 9px; white-space: normal; }
.hud-theme .profit-cause-table tr:nth-child(even) td { background: #f5f8fb; }
.profit-cause-table :is(th, td):not(:first-child) { text-align: right; font-variant-numeric: tabular-nums; }
.profit-cause-table td:first-child { width: 43%; overflow-wrap: anywhere; }
.profit-cause-table td small { display: block; color: #526a7e; font-size: 11px; margin-top: 4px; }
.hud-theme .profit-cause-table td.profit-negative { color: #a03d27; font-weight: 700; }
.hud-theme .profit-cause-table td.profit-positive { color: #1d684f; font-weight: 700; }
.profit-source-note { color: #765719; }

/* Cyberpunk accents frame white, readable work surfaces. */
.hud-theme .card:not(.login-card) {
  background-image: linear-gradient(#3096bd,#3096bd),linear-gradient(#3096bd,#3096bd);
  background-size: 24px 2px,2px 24px;
  background-position: right 8px top 0,right 0 top 8px;
  background-repeat: no-repeat;
  box-shadow: 0 3px 0 #dce6ef,0 8px 18px #15354f09;
}
.hud-theme .topbar { border-top-color: #43bbd9; box-shadow: inset 0 -1px #ffffff; }
.hud-theme .brand { text-shadow: 1px 1px #c3e8f4; }
.hud-theme .main-nav { border-bottom-color: #a9c5db; }
.hud-theme .nav-button.active { box-shadow: inset 0 1px #b3dfe9; border-bottom-color: #586cc4; }
.hud-theme button.primary { background: linear-gradient(120deg,#173f61,#225b79); border-color: #397f9d; box-shadow: inset 0 1px #79a9bf66,0 2px 0 #102c44; }
.hud-theme button.secondary { box-shadow: inset 0 1px #fff,0 1px 0 #bcd0df; }
.hud-theme .login-card .primary { background: #75d6e5; border-color: #a6edf5; box-shadow: 0 0 18px #51c8e41a; }
.jarvis-assistant .payx-ai-launcher { width: 84px; height: 102px; flex-direction: column; filter: drop-shadow(0 5px 7px #0f3b6240); }
.jarvis-assistant .payx-ai-launcher img { width: 84px; height: 84px; }
.jarvis-launcher-label { color: #143e60; font: 750 10px ui-monospace,SFMono-Regular,monospace; letter-spacing: .17em; padding: 4px 9px; background: #f6fbff; border: 1px solid #88bdd4; box-shadow: 0 2px 5px #0f3b6220; }
.jarvis-assistant .payx-ai-launcher.is-listening, .jarvis-assistant .payx-ai-launcher.is-speaking { animation: jarvis-active 2s ease-in-out infinite; }
@keyframes jarvis-active { 50% { filter: drop-shadow(0 0 10px #31b5df99); } }
.jarvis-assistant .payx-ai-panel { width: min(570px,calc(100vw - 24px)); max-height: min(780px,calc(100dvh - 115px)); border: 1px solid #6295b7; border-radius: 9px; box-shadow: 0 16px 50px #061c3652,0 0 0 3px #d3ecf350; }
.jarvis-assistant .payx-ai-header { background: linear-gradient(110deg,#102945,#204e6b 70%,#373458); border-bottom: 2px solid #66c9e2; }
.jarvis-assistant .payx-ai-header h2 { font-size: 17px; letter-spacing: .05em; }
.jarvis-assistant .payx-ai-messages { background: #f4f8fc; min-height: 170px; padding: 12px; }
.jarvis-assistant .payx-ai-bubble { color: #29455b; border-radius: 7px; }
.jarvis-assistant .payx-ai-message.is-data > img { display: none; }
.jarvis-assistant .payx-ai-message.is-data .payx-ai-bubble { max-width: 100%; width: 100%; }
.jarvis-assistant .payx-ai-shortcuts { padding: 9px 10px; gap: 6px; }
.jarvis-assistant .payx-ai-shortcuts button { font-size: 11px; background: #edf4fb; color: #254e71; border-color: #b7cee1; border-radius: 4px; }
.jarvis-voice-tools { display: flex; align-items: center; flex-wrap: wrap; gap: 9px; padding: 7px 10px; background: #fff; border-top: 1px solid #d5e2ee; }
.jarvis-voice-tools button { min-height: 30px; font-size: 11px; padding: 5px 8px; color: #244b6b; background: #ecf4fc; border: 1px solid #b8cee1; }
.jarvis-voice-tools button[aria-pressed="true"] { background: #165875; color: #fff; }
.jarvis-voice-tools label { display: flex; align-items: center; gap: 5px; color: #345770; font-size: 11px; }
.jarvis-voice-tools input { width: 15px; height: 15px; min-height: 15px; padding: 0; accent-color: #247eaa; }
#payx-ai-voice-status { font-size: 11px; color: #245b7a; }
.jarvis-assistant .payx-ai-privacy { color: #4c6477; font-size: 10px; padding-top: 4px; }
.jarvis-assistant .payx-ai-fact span { font-size: 11px; color: #52697c; }
.jarvis-assistant .payx-ai-fact strong { font-size: 12px; color: #24455d; }
.jarvis-groups { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 7px; margin-top: 10px; }
.jarvis-group { border: 1px solid #c2d7e7; border-top: 2px solid #35a4bf; border-radius: 4px; background: #fff; padding: 9px; min-width: 0; }
.jarvis-group:nth-child(2) { border-top-color: #7776b5; }
.jarvis-group:nth-child(3) { border-top-color: #be9564; }
.jarvis-group header { display: grid; gap: 5px; padding-bottom: 8px; border-bottom: 1px solid #dce7f0; }
.jarvis-group header strong { color: #163b55; font-size: 16px; }
.jarvis-check { display: inline-block; font-size: 10px; color: #52697c; overflow-wrap: anywhere; }
.jarvis-check.is-balanced { color: #236747; font-weight: 750; }
.jarvis-check.is-different { color: #a13225; font-weight: 750; }
.jarvis-group dl { display: grid; gap: 7px; margin: 9px 0 0; }
.jarvis-group dt { color: #52697c; font-size: 10px; }
.jarvis-group dd { color: #153b55; font-size: 13px; margin: 1px 0 0; font-weight: 750; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.jarvis-data-section { margin-top: 14px; }
.jarvis-data-section h3 { color: #234b68; font-size: 13px; margin: 0 0 7px; }
.jarvis-data-section h3 small { color: #52697c; font-size: 11px; font-weight: 500; }
.jarvis-table-wrap { overflow: auto; max-height: 300px; border: 1px solid #c6d7e5; width: 100%; }
.jarvis-table-wrap table { min-width: 100%; width: max-content; font-size: 11px; }
.jarvis-table-wrap :is(td,th) { padding: 7px 8px; max-width: 220px; white-space: nowrap; }
.jarvis-table-wrap th { position: sticky; top: 0; z-index: 1; }
.jarvis-table-wrap tr:nth-child(even) td { background: #f2f6fa; }
.jarvis-timestamp { font-size: 10px; color: #52697c; margin: 5px 0; }
.jarvis-downloads, .jarvis-catalogue { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 10px; }
.jarvis-downloads button, .jarvis-catalogue button { font-size: 11px; min-height: 31px; padding: 5px 8px; background: #eaf2fb; border: 1px solid #b9d0e2; color: #235779; }
@media (max-width:620px) {
  .jarvis-assistant .payx-ai-panel { max-height: calc(100dvh - 100px); }
  .jarvis-assistant .payx-ai-header { grid-template-columns: 38px minmax(0,1fr) auto; padding: 10px; gap: 7px; }
  .jarvis-assistant .payx-ai-header > img { width: 38px; height: 38px; }
  .jarvis-assistant .payx-ai-header h2 { font-size: 14px; }
  .jarvis-assistant .payx-ai-messages { padding: 7px; }
  .jarvis-assistant .payx-ai-bubble { padding: 8px; }
  .jarvis-group { padding: 6px; }
  .jarvis-group dd { font-size: 12px; }
  .jarvis-groups { gap: 5px; }
}

/* Export images stay bright and readable, independent of the screen theme. */
.hud-theme #accounts-view.account-capture-mode { color: #172b3a; background: #fff; }
.hud-theme #accounts-view.account-capture-mode :is(.card, .acc-summary-list, .acc-summary-list strong) { background: #fff; color: #172b3a; }
.hud-theme #accounts-view.account-capture-mode .acc-summary-list > div { background: #f1f6f9; }
.hud-theme #accounts-view.account-capture-mode .acc-summary-list span { color: #264b60; }
.hud-theme #accounts-view.account-capture-mode .adjustment-item { background: #fff8ef; color: #172b3a; }
.hud-theme #accounts-view.account-capture-mode .adjustment-category { color: #875124; }
.hud-theme #accounts-view.account-capture-mode .muted { color: #5c7281; }
.hud-theme .settlement-summary-capture, .hud-theme .settlement-summary-capture .card { background: #fff; color: #172b3a; }
.hud-theme .settlement-summary-capture .muted { color: #5c7281; }
@media (max-width: 1050px) {
  .hud-login { gap: 40px; padding: 36px; grid-template-columns: minmax(0, 1fr) minmax(320px, 400px); }
  .hud-theme .dashboard-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 720px) {
  .hud-login { display: flex; flex-direction: column; justify-content: center; gap: 22px; padding: 28px 20px; }
  .login-identity { width: min(160px, 45vw); padding: 0; }
  .login-wordmark { font-size: 21px; }
  .login-reactor { display: block; width: 100%; }
  .hud-theme .login-card { max-width: 430px; padding: 26px; }
  .login-access-label { margin-bottom: 24px; }
  .hud-theme .topbar { padding: 13px 14px; }
  .hud-theme .main-nav { padding-left: 12px; padding-right: 12px; }
  .hud-theme .nav-button { min-width: 88px; font-size: 12px; }
  .hud-theme .page-shell { padding: 20px 12px 60px; }
  .hud-theme .daily-dashboard { padding: 15px; }
  .hud-theme .daily-dashboard .card-title-row { align-items: flex-start; }
  .hud-theme .dashboard-metrics { grid-template-columns: minmax(0, 1fr); }
  .dashboard-profit { grid-template-columns: minmax(0, 1fr); }
  .profit-analysis { padding: 14px; }
  .profit-impact-summary { gap: 5px; }
  .profit-impact-summary > div { padding: 8px 6px; }
  .profit-impact-summary strong { font-size: 16px; }
  .hud-theme .profit-cause-table :is(th, td) { padding: 7px 4px; font-size: 11px; }
  .hud-theme .dashboard-stat { padding: 17px; }
  .hud-theme .dashboard-stat .dashboard-current { font-size: 30px; }
}
@media (prefers-reduced-motion: reduce) {
  .hud-theme * { scroll-behavior: auto !important; transition-duration: 0s !important; animation: none !important; }
}
@media print {
  body.hud-theme, .hud-theme .card { background: white; color: #172b3a; box-shadow: none; }
  .hud-theme .muted { color: #5c7281; }
}
