/*
 * Portal — tokens e cores do shell logado (legado),
 * sem regras globais que brigam com o layout público.
 */

:root,
[data-theme="dark"] {
  --color-layout-shell: #22253b;
  --color-sidebar-text: #e0e0e0;
  --color-sidebar-muted: #b6c2d6;
  --color-sidebar-icon: #6fb7ff;
  --color-sidebar-section: #a8cfff;
  --color-nav-muted: #c0c0c0;
  --color-input-text: #ffffff;
  --color-placeholder: rgba(255, 255, 255, 0.5);
  --color-menu-hover-bg: #3a4a8f;
  --color-tooltip-bg: rgba(0, 0, 0, 0.9);
  --color-tooltip-text: #ffffff;
}

[data-theme="light"] {
  --color-layout-shell: #e4e7ec;
  --color-sidebar-text: #1a1a2e;
  --color-sidebar-muted: #4b5563;
  --color-sidebar-icon: #0077cc;
  --color-sidebar-section: #005fa3;
  --color-nav-muted: #4b5563;
  --color-input-text: #1a1a2e;
  --color-placeholder: #9ca3af;
  --color-menu-hover-bg: rgba(0, 119, 204, 0.12);
  --color-tooltip-bg: #1a1a2e;
  --color-tooltip-text: #ffffff;
}

/* Só o shell logado — não mexe na home pública */
body.portal-public:has(.portal-app-layout--sidebar) .base-app-layout.portal-app-layout--sidebar {
  background-color: var(--color-layout-shell) !important;
}

/* Com foto de fundo do sistema: shell translúcido como no legado */
body.portal-public.app-photo-bg:has(.portal-app-layout--sidebar) .base-app-layout.portal-app-layout--sidebar {
  background-color: color-mix(in srgb, var(--color-layout-shell) 72%, transparent) !important;
}

body.portal-public.app-photo-bg:has(.portal-app-layout--sidebar) .base-app-sidebar {
  background-color: color-mix(in srgb, var(--color-sidebar-bg) 88%, transparent) !important;
}

body.portal-public.app-photo-bg:has(.portal-app-layout--sidebar) .portal-app-main,
body.portal-public.app-photo-bg:has(.portal-app-layout--sidebar) .base-app-main-content {
  background-color: transparent !important;
}

body.portal-public:has(.portal-app-layout--sidebar) .base-app-sidebar {
  background-color: var(--color-sidebar-bg) !important;
  border-right-color: var(--color-border) !important;
}

body.portal-public:has(.portal-app-layout--sidebar) .base-sidebar-search-wrapper {
  background: var(--color-hover-bg) !important;
  border-color: var(--color-border) !important;
}

body.portal-public:has(.portal-app-layout--sidebar) .base-sidebar-search-wrapper i {
  color: var(--color-sidebar-icon) !important;
}

body.portal-public:has(.portal-app-layout--sidebar) .base-sidebar-search-wrapper input {
  color: var(--color-input-text) !important;
}

body.portal-public:has(.portal-app-layout--sidebar) .base-sidebar-search-wrapper input::placeholder {
  color: var(--color-placeholder) !important;
}

body.portal-public:has(.portal-app-layout--sidebar) .base-menu-button {
  background: var(--color-hover-bg) !important;
  border-color: var(--color-border) !important;
  color: var(--color-sidebar-text) !important;
}

body.portal-public:has(.portal-app-layout--sidebar) .base-menu-button .base-icon {
  color: var(--color-sidebar-icon) !important;
}

body.portal-public:has(.portal-app-layout--sidebar) .base-menu-button h3 {
  color: var(--color-sidebar-text) !important;
}

body.portal-public:has(.portal-app-layout--sidebar) .base-menu-button p {
  color: var(--color-sidebar-muted) !important;
}

body.portal-public:has(.portal-app-layout--sidebar) .base-menu-button:hover,
body.portal-public:has(.portal-app-layout--sidebar) .base-menu-button:focus {
  background-color: var(--color-menu-hover-bg) !important;
  color: var(--color-sidebar-text) !important;
}

body.portal-public:has(.portal-app-layout--sidebar) .base-app-sidebar.collapsed .base-menu-button::after {
  background: var(--color-tooltip-bg) !important;
  color: var(--color-tooltip-text) !important;
}

body.portal-public:has(.portal-app-layout--sidebar) .base-user-info span,
body.portal-public:has(.portal-app-layout--sidebar) .base-user-unidade {
  color: var(--color-text) !important;
}

body.portal-public:has(.portal-app-layout--sidebar) .base-main-nav > a {
  color: var(--color-nav-muted) !important;
}

body.portal-public:has(.portal-app-layout--sidebar) .base-main-nav > a:hover {
  color: var(--color-text) !important;
}
