/* UX-THEME-001: superfícies e contraste próprios para claro e escuro. */
:root,
:root[data-theme="light"] {
  color-scheme:light;
  --ink:#182437;
  --muted:#536277;
  --green:#235bca;
  --green2:#17499f;
  --lime:#dce8ff;
  --bg:#eef1f5;
  --line:#cbd3df;
  --paper:#ffffff;
  --mint:#e2e9f5;
  --rh-canvas:#dde3ec;
  --rh-chrome:#e7ecf3;
  --rh-raised:#eaf0fa;
  --rh-hover:#dde7f8;
  --rh-subtle-line:#dce2eb;
  --rh-accent:#245ec9;
  --rh-selected-bg:#dbe7ff;
  --rh-selected-text:#194caa;
  --rh-input:#f7f9fc;
  --rh-positive-bg:#e2edeb;
  --rh-positive-text:#2c6050;
  --rh-warning-bg:#f7edd6;
  --rh-warning-text:#805b16;
  --rh-info-bg:#e1ecfc;
  --rh-info-text:#315e9a;
  --rh-danger-bg:#f8e5e5;
  --rh-danger-text:#963f3f;
  --rh-neutral-bg:#e8ecf2;
  --rh-neutral-text:#4d5d73;
  --rh-primary-bg:#245bc2;
  --rh-primary-hover:#184baf;
  --rh-primary-text:#ffffff;
  --rh-focus:#326bd1;
  --rh-hero-bg:#253c60;
  --rh-hero-text:#f5f8ff;
  --rh-hero-secondary:#d5dfef;
  --rh-news-bg:#dce6f5;
  --rh-news-text:#243c5e;
  --rh-news-secondary:#3c587d;
  --rh-leaf:#6684ae;
  --rh-leaf-light:#9bb1ce;
  --rh-news-shape:#b7cae5;
  --rh-shadow:#15213a12;
  --rh-overlay:#111b2f80;
  --rh-table-hover:#edf3fc;
  --rh-doc-bg:#fcfdff;
  --rh-own-message:#e9f0fc;
}
:root[data-theme="dark"] {
  color-scheme:dark;
  --ink:#e8edf5;
  --muted:#abb7ca;
  --green:#9ebdff;
  --green2:#c5d6ff;
  --lime:#b8ceff;
  --bg:#11151d;
  --line:#3b4658;
  --paper:#1b2230;
  --mint:#293247;
  --rh-canvas:#0c1017;
  --rh-chrome:#151b25;
  --rh-raised:#252f41;
  --rh-hover:#303d53;
  --rh-subtle-line:#303b4d;
  --rh-accent:#a7c5ff;
  --rh-selected-bg:#273c60;
  --rh-selected-text:#d1e0ff;
  --rh-input:#141c29;
  --rh-positive-bg:#243c36;
  --rh-positive-text:#b6ddcd;
  --rh-warning-bg:#433824;
  --rh-warning-text:#f1d18d;
  --rh-info-bg:#263c5e;
  --rh-info-text:#bfd7ff;
  --rh-danger-bg:#482c35;
  --rh-danger-text:#f4bcc6;
  --rh-neutral-bg:#303a49;
  --rh-neutral-text:#c1ccdc;
  --rh-primary-bg:#a4c1ff;
  --rh-primary-hover:#c8dbff;
  --rh-primary-text:#13264b;
  --rh-focus:#a4c1ff;
  --rh-hero-bg:#263952;
  --rh-hero-text:#f1f5ff;
  --rh-hero-secondary:#cedcf2;
  --rh-news-bg:#2c3b53;
  --rh-news-text:#e0eaff;
  --rh-news-secondary:#bdd0f2;
  --rh-leaf:#7d9bc5;
  --rh-leaf-light:#5d7ca5;
  --rh-news-shape:#415a7b;
  --rh-shadow:#0000003d;
  --rh-overlay:#050912c7;
  --rh-table-hover:#253149;
  --rh-doc-bg:#19212e;
  --rh-own-message:#27364d;
}

body { background:var(--rh-canvas); color:var(--ink); }
::selection { background:var(--rh-selected-bg); color:var(--rh-selected-text); }
[data-theme] :is(.sidebar,.topbar,.app-bottom-nav) { background:var(--rh-chrome); }
[data-theme] .workspace { background:var(--bg); }
[data-theme] :is(.tenant-chip,.quick-action,.news-card,.compact-news,.aside-card,.panel,.metric,.document-card,.ticket-row,.person-card,.module-card,.company-card,.empty-state) {
  background:var(--paper);
  border-color:var(--line);
}
[data-theme] :is(.news-card,.aside-card,.panel,.metric,.document-card,.ticket-row,.module-card,.company-card) {
  box-shadow:0 3px 13px var(--rh-shadow);
}
[data-theme] :is(.brand,.breadcrumbs strong,.empty-state h2) { color:var(--ink); }
[data-theme] .brand-mark { background:var(--rh-primary-bg); color:var(--rh-primary-text); }
[data-theme] :is(.org-monogram,.support-box,.aside-note,.profile-heading,.schedule-date,.mini-avatar,.tiny-count,.quick-icon,.doc-icon,.ticket-icon,.process-number) {
  background:var(--rh-raised);
  color:var(--rh-accent);
  border-color:var(--line);
}
[data-theme] .quick-action:nth-child(2) .quick-icon,
[data-theme] .compact-news .notice-icon,
[data-theme] .document-grid .document-card:nth-child(2n) .doc-icon {
  background:var(--rh-warning-bg);
  color:var(--rh-warning-text);
}
[data-theme] .quick-action:nth-child(3) .quick-icon { background:var(--rh-info-bg); color:var(--rh-info-text); }
[data-theme] .quick-action:nth-child(4) .quick-icon { background:var(--rh-raised); color:var(--rh-accent); }
[data-theme] .schedule-date strong { color:var(--ink); }
[data-theme] :is(.nav-item,.nav-label,.brand-word small,.tenant-chip small,.sidebar-version,.breadcrumbs,.top-search,.top-search kbd,.top-person small,.tenant-select,.greeting-line,.date-chip,.quick-action small,.chip,.news-meta,.news-content p,.compact-news p,.task-row p,.schedule-date,.schedule-row p,.people-celebrate p,.aside-note p,.aside-note .eyebrow,.metric-label,.metric-foot,.person-cell small,.table-sub,.filter-select,.document-card p,.document-card-foot,.ticket-row p,.ticket-id,.person-card p,.profile-heading p,.detail-item label,.channel-row p,.process-row p,.module-card p,.company-metrics small,.page-footer,.modal-top p,.field small,.check-row,.doc-watermark,.timeline-item p,.review-list,.batch-item small,.badge-outline) {
  color:var(--muted);
}
[data-theme] :is(.text-link,.task-symbol,.task-arrow,.all-done,.channel-badge,.metric-foot.positive) { color:var(--rh-accent); }
[data-theme] .nav-item:hover,
[data-theme] .icon-btn:hover,
[data-theme] .chip:hover { background:var(--rh-hover); color:var(--ink); }
[data-theme] .nav-item.active,
[data-theme] .chip.active { background:var(--rh-selected-bg); color:var(--rh-selected-text); border-color:var(--line); }
[data-theme] .nav-item .nav-count { background:var(--rh-positive-bg); color:var(--rh-positive-text); }
[data-theme] .quick-action:hover,
[data-theme] .ticket-row:hover { border-color:var(--rh-accent); }
[data-theme] .date-chip,
[data-theme] .channel-badge,
[data-theme] .badge-outline { border-color:var(--line); }
[data-theme] .btn { background:var(--rh-raised); color:var(--ink); border-color:var(--line); }
[data-theme] .btn:hover { background:var(--rh-hover); }
[data-theme] .btn.primary { background:var(--rh-primary-bg); color:var(--rh-primary-text); border-color:var(--rh-primary-bg); }
[data-theme] .btn.primary:hover { background:var(--rh-primary-hover); border-color:var(--rh-primary-hover); }
[data-theme] .btn.lime { background:var(--lime); color:#203817; border-color:var(--lime); }
[data-theme] .btn.quiet { background:transparent; color:var(--rh-accent); border-color:transparent; }
[data-theme] .btn.danger { background:var(--rh-danger-bg); color:var(--rh-danger-text); border-color:var(--line); }
[data-theme] button:disabled { opacity:.62; }
[data-theme] :is(button,a):focus-visible { outline:3px solid var(--rh-focus); outline-offset:3px; }
[data-theme] :is(input,textarea,select):focus-visible { outline:2px solid var(--rh-focus); outline-offset:2px; }
[data-theme] :is(.field input,.field textarea,.field select,.filter-select,.batch-item select,.search-field) {
  background:var(--rh-input);
  border-color:var(--line);
  color:var(--ink);
}
[data-theme] .search-field input { color:var(--ink); }
[data-theme] .search-field input::placeholder { color:var(--muted); opacity:1; }
[data-theme] .search-field input:focus-visible { outline:2px solid var(--rh-focus)!important; }
[data-theme] [data-import-index] { background:var(--rh-input); color:var(--ink); border-color:var(--line)!important; }
[data-theme] .bell:after { border-color:var(--rh-chrome); }
[data-theme] th { color:var(--muted); }
[data-theme] :is(td,.news-footer,.task-row,.schedule-row,.channel-row,.process-row,.module-footer,.company-footer,.timeline-item,.doc-line,.batch-item) { border-color:var(--rh-subtle-line); }
[data-theme] tbody tr:hover { background:var(--rh-table-hover); }
[data-theme] .progress-track { background:var(--rh-subtle-line); }
[data-theme] .progress-fill { background:var(--rh-accent); }
[data-theme] .status { background:var(--rh-neutral-bg); color:var(--rh-neutral-text); }
[data-theme] .status.green { background:var(--rh-positive-bg); color:var(--rh-positive-text); }
[data-theme] .status.amber { background:var(--rh-warning-bg); color:var(--rh-warning-text); }
[data-theme] .status.blue { background:var(--rh-info-bg); color:var(--rh-info-text); }
[data-theme] .status.red { background:var(--rh-danger-bg); color:var(--rh-danger-text); }
[data-theme] .status.neutral { background:var(--rh-neutral-bg); color:var(--rh-neutral-text); }
[data-theme] .info-strip { background:var(--rh-raised); border-color:var(--line); color:var(--muted); }
[data-theme] .info-strip.warning { background:var(--rh-warning-bg); color:var(--rh-warning-text); border-color:var(--line); }
[data-theme] .form-error { color:var(--rh-danger-text); }
[data-theme] .toggle { background:var(--rh-subtle-line); }
[data-theme] .toggle:after { background:var(--ink); }
[data-theme] .toggle.on { background:var(--rh-primary-bg); }
[data-theme] .toggle.on:after { background:var(--rh-primary-text); }
[data-theme] dialog { background:var(--paper); border-color:var(--line); color:var(--ink); box-shadow:0 30px 120px var(--rh-shadow); }
[data-theme] dialog::backdrop { background:var(--rh-overlay); }
[data-theme] :is(.modal-top,.modal-actions) { background:var(--rh-chrome); }
[data-theme] .modal-doc { background:var(--rh-doc-bg); }
[data-theme] .doc-total { background:var(--rh-raised); }
[data-theme] .message { background:var(--rh-input); border-color:var(--line); }
[data-theme] .message.mine { background:var(--rh-own-message); }
[data-theme] .message.internal { background:var(--rh-warning-bg); }
[data-theme] .message .internal-tag { color:var(--rh-warning-text); }
[data-theme] .review-choice button { background:var(--rh-input); border-color:var(--line); }
[data-theme] .review-choice button.selected { background:var(--rh-selected-bg); color:var(--rh-selected-text); border-color:var(--rh-accent); }
[data-theme] .welcome-banner { background:var(--rh-hero-bg); color:var(--rh-hero-text); }
[data-theme] .welcome-copy :is(.eyebrow,p) { color:var(--rh-hero-secondary); }
[data-theme] .news-visual { background:var(--rh-news-bg); }
[data-theme] .news-visual:after { background:var(--rh-news-shape); }
[data-theme] .news-visual .visual-heading { color:var(--rh-news-text); }
[data-theme] .news-visual .visual-heading em,
[data-theme] .visual-wordmark { color:var(--rh-news-secondary); }
[data-theme] .leaf { background:var(--rh-leaf); }
[data-theme] .leaf:after { background:var(--rh-news-bg); }
[data-theme] .leaf.l2 { background:var(--rh-leaf-light); }
[data-theme] .mobile-mode { border-color:var(--line); box-shadow:0 25px 70px var(--rh-shadow); }
[data-theme] .mobile-mode .app-bottom-nav button { color:var(--muted); }
[data-theme] .mobile-mode .app-bottom-nav button.active { color:var(--rh-selected-text); }
[data-theme] .mobile-mode .app-bottom-nav button.active svg { background:var(--rh-selected-bg); box-shadow:0 0 0 4px var(--rh-selected-bg); }

[data-theme="dark"] :is(.avatar,.avatar.olive) { background:#304364; color:#d2e0ff; }
[data-theme="dark"] .avatar.mint { background:#2c4a3c; color:#b7ddc9; }
[data-theme="dark"] .avatar.lilac { background:#40374c; color:#d8c8e8; }
[data-theme="dark"] .avatar.blue { background:#2d414e; color:#c1dbe8; }
[data-theme] [style*="color:#"] { color:var(--muted)!important; }
[data-theme="dark"] #toast { background:#c2d5ff; color:#172848; border-color:#a4c1ff; }

.theme-toggle {
  width:auto;
  gap:7px;
  padding:7px 10px;
  border:1px solid var(--line);
  background:var(--rh-raised);
  color:var(--ink);
  font-size:11px;
}
.theme-toggle span { white-space:nowrap; }
@media (max-width:1250px) {
  .topbar-right { gap:12px; }
  .top-search { display:none; }
}
@media (max-width:720px) {
  .topbar-right { gap:5px; min-width:0; }
  .topbar > .mobile-only { flex-shrink:0; white-space:nowrap; gap:7px; }
  .tenant-select { flex:1; min-width:0; max-width:130px; padding:4px; font-size:10px; }
  .theme-toggle { width:35px; padding:7px; }
  .theme-toggle span { display:none; }
}
.mobile-mode .topbar { padding:0 14px; gap:8px; }
.mobile-mode .topbar > .mobile-only { flex-shrink:0; gap:7px; white-space:nowrap; }
.mobile-mode .topbar-right { gap:5px; min-width:0; }
.mobile-mode .tenant-select { flex:1; min-width:0; max-width:128px; padding:4px; font-size:10px; }
.mobile-mode .theme-toggle { width:35px; padding:7px; }
.mobile-mode .theme-toggle span { display:none; }
