/* Portal and administration share the public site's theme preference. */
@media screen {
  :root{color-scheme:dark;--ink:#f5f4ef;--muted:#b9b9b4;--lime:#f3cd48;--green:#f3cd48;--line:#45464a;--paper:#202124;--white:#292b2f;--dark:#f3cd48;--red:#ff9898;--surface:#292b2f;--soft:#323439;--accent:#f3cd48;--accent-soft:#44402c;--on-accent:#242216}
  html[data-theme="light"]{color-scheme:light;--ink:#282824;--muted:#62635d;--line:#d9d7ce;--paper:#f8f6ef;--white:#fffefa;--surface:#fffefa;--soft:#efede4;--accent:#876407;--accent-soft:#f7edc4;--green:#876407;--red:#a33535}
  body,.login-view,.login-side,.login{background:var(--paper);color:var(--ink)}
  .portal-theme-control{position:absolute;top:16px;right:22px;z-index:20}
  .theme-toggle{min-height:44px;padding:10px 16px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);font:inherit;font-size:12px;cursor:pointer}
  :focus-visible{outline:2px solid var(--accent);outline-offset:4px}
  .topbar,.shell>header{padding-right:145px}
  .intro{background:var(--soft);color:var(--ink)}.intro-copy h1{color:var(--ink)}.intro-copy h1 em{color:var(--accent)}.intro-copy p,.intro-footer,.intro .eyebrow{color:var(--muted)}
  .intro:after{border-color:var(--line);opacity:.3}
  .sidebar,.topbar,.panel,.login-card,.card,dialog,.ranking-card,.report-section,.chart-shell,.chart-panel,.context-panel{background:var(--surface);color:var(--ink);border-color:var(--line)}
  input,select,textarea,.ask-panel textarea{background:var(--paper);color:var(--ink);border-color:var(--line)}input::placeholder,textarea::placeholder{color:var(--muted)}
  input:focus,select:focus,textarea:focus,.ask-panel textarea:focus{outline:2px solid var(--accent);outline-offset:2px;border-color:var(--accent)}
  .primary,.dark-button,.primary:hover,.dark-button:hover{background:var(--lime);color:var(--on-accent)}
  .ghost,.suggestions button,.ranking-actions button,.chart-actions button,.report-print{background:var(--surface);color:var(--ink);border-color:var(--line)}
  .nav,.nav span,.sidebar-bottom,.sidebar-bottom p,.sidebar-caption,.nav-label,.company-box small,.login-box>p,.login-note p,.muted,.small,.page-heading p:last-child,.main-footer,.breadcrumb,dt,dd{color:var(--muted)}
  .nav.active,.nav:hover,.company-box,.tag,.badge,.pending,.demo-pill,.section-icon,.avatar,.metric,.analysis-note,.ranking-position{background:var(--accent-soft);color:var(--accent);border-color:var(--line)}
  .company-box strong,.metric strong,.context-panel h2,.ranking-card h3,.report-section h2{color:var(--ink)}
  .eyebrow,.section-number,.ranking-value{color:var(--accent)}
  .heading-stamp,.login-note,.report-actions,.suggestions,.source-rule,.ranking-card header,.answer-list li,.section-table td,td,th{border-color:var(--line)}
  table{color:var(--ink)}th,.section-table th{background:var(--soft);color:var(--ink)}tr:nth-child(even),.section-table tr:nth-child(even){background:var(--paper)}
  .ranking-heading span,.ranking-footnote,.ranking-card header span,.section-period,.metric span,.source-rule p,.connection-grid p{color:var(--muted)}
  .ranking-person meter::-webkit-meter-bar{background:var(--soft)}.ranking-person meter::-webkit-meter-optimum-value{background:var(--lime)}
  .admin-identity,.empty-result,.empty-result p,.context-tip p{color:var(--muted)}
  .analysis-controls{display:flex;flex-wrap:wrap;gap:10px;background:var(--soft);color:var(--ink);border:1px solid var(--line);border-radius:10px;padding:16px;margin-bottom:18px}
  .analysis-controls>strong,.analysis-controls>p,.analysis-controls>ol{flex-basis:100%;color:var(--ink);margin:0}
  .analysis-controls button,.chart-controls button,.chart-controls select,dialog button{min-height:44px;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:8px;padding:10px 14px;font:inherit;font-size:13px;line-height:1.5}
  .analysis-controls button:hover,.chart-controls button:hover,dialog button:hover{border-color:var(--accent);background:var(--accent-soft)}
  .themed-portal button:disabled,.themed-portal input:disabled,.themed-portal select:disabled,.themed-portal textarea:disabled{opacity:1;color:var(--muted);-webkit-text-fill-color:var(--muted);background:var(--soft);border-color:var(--line);cursor:not-allowed}
  .analysis-controls button:disabled{background:var(--surface);color:var(--ink);-webkit-text-fill-color:var(--ink);border-style:dashed;cursor:wait}
  .response-downloads{margin:16px 0;padding:18px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink)}
  .response-downloads>p{color:var(--muted);font-size:13px;line-height:1.6}
  .response-download-links{display:flex;gap:12px;flex-wrap:wrap}
  .response-downloads a{display:inline-flex;align-items:center;min-height:44px;padding:10px 14px;border:1px solid var(--line);border-radius:8px;background:var(--soft);color:var(--ink);font-size:14px;font-weight:600;line-height:1.5}
  .response-downloads a:hover{border-color:var(--accent);background:var(--accent-soft);color:var(--ink)}
  .subtle-badge,.composer-footer>span,.chart-status,.chart-print-page figcaption{color:var(--muted)}
  .chart-choices input{accent-color:var(--accent)}
  @media(max-width:680px){.portal-theme-control{top:12px;right:16px}.intro{padding-top:75px}.topbar{padding-right:120px}.sidebar{padding-top:72px}.sidebar-bottom{top:68px}.login{padding-top:76px}.topbar-right .avatar{display:none}}
}
@media print{.portal-theme-control{display:none}}
