/* Avaliação Blue R81 — revisão completa de usabilidade e responsividade. */
body.r360-blue-ux #root { --blue-ux-gap: 10px; }

body.r360-blue-ux :is(.blue-context-strip,.blue-role-banner,.blue-tab-guide,.blue-base-panel,.blue-list-panel,.blue-settings-card,.blue-documents,.blue-theme-admin,.blue-question-panel) {
  min-width: 0;
  max-width: 100%;
}

body.r360-blue-ux .blue-context-strip,
body.r360-blue-ux .blue-role-banner {
  flex-wrap: wrap;
  gap: 12px;
}

body.r360-blue-ux .blue-tab-groups {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

body.r360-blue-ux .blue-tab-groups > div,
body.r360-blue-ux .blue-tabs {
  min-width: 0;
}

body.r360-blue-ux .blue-tabs {
  display: flex;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scrollbar-width: thin;
  scroll-snap-type: x proximity;
}

body.r360-blue-ux .blue-tabs > button {
  min-height: 42px;
  flex: 0 0 auto;
  scroll-snap-align: start;
}

body.r360-blue-ux .blue-section-header {
  display: grid;
  grid-template-columns: minmax(260px, 1fr) auto;
  align-items: start;
  gap: 14px;
}

body.r360-blue-ux .blue-section-header > div:first-child { min-width: 0; }
body.r360-blue-ux .blue-section-header > div:first-child p {
  max-width: 760px;
  overflow-wrap: anywhere;
}

body.r360-blue-ux .blue-section-header > div:last-child,
body.r360-blue-ux .blue-ux-header-actions {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  min-width: 0;
}

body.r360-blue-ux .blue-filter-row {
  width: 100%;
  max-width: 100%;
  display: grid;
  grid-template-columns: minmax(260px, 1.5fr) repeat(auto-fit, minmax(170px, .72fr));
  align-items: center;
  gap: 8px;
}

body.r360-blue-ux .blue-filter-row > * {
  min-width: 0 !important;
  width: 100%;
  max-width: 100%;
}

body.r360-blue-ux .blue-filter-row > button { min-height: 38px; }

body.r360-blue-ux .blue-base-stats,
body.r360-blue-ux .blue-kpi-grid,
body.r360-blue-ux .blue-monitoring-summary,
body.r360-blue-ux .blue-link-request-kpis {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(132px, 1fr));
  gap: 8px;
}

body.r360-blue-ux .blue-base-stats > span {
  min-width: 0;
  min-height: 48px;
  display: flex;
  align-items: center;
  gap: 6px;
  white-space: normal;
  overflow-wrap: anywhere;
}

body.r360-blue-ux .blue-evaluation-cards {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 360px), 1fr));
  gap: 12px;
}

body.r360-blue-ux .blue-evaluation-card {
  min-width: 0;
  height: 100%;
  align-items: center;
}

body.r360-blue-ux .blue-person-main,
body.r360-blue-ux .blue-card-side { min-width: 0; }
body.r360-blue-ux .blue-person-main > :is(strong,span,small) { overflow-wrap: anywhere; }

body.r360-blue-ux .blue-responsive-table-wrap,
body.r360-blue-ux .table-wrap:has(> table.blue-table) {
  width: 100%;
  max-width: 100%;
  border: 1px solid var(--border);
  border-radius: 12px;
  background: var(--surface, #fff);
}

body.r360-blue-ux table.blue-ux-table { width: 100%; }
body.r360-blue-ux table.blue-ux-table td { overflow-wrap: anywhere; }
body.r360-blue-ux table.blue-ux-table tbody tr:nth-child(even) { background: color-mix(in srgb, var(--surface-2, #f8fafc) 52%, transparent); }

body.r360-blue-ux .blue-role-column-hidden { display: none !important; }
body.r360-blue-ux .blue-role-inline {
  display: block;
  margin-top: 3px;
  color: var(--primary);
  font-size: 10px;
  font-weight: 800;
}

body.r360-blue-ux :is(.blue-matricula-head,.blue-matricula-cell) {
  width: 92px;
  min-width: 92px;
  max-width: 110px;
  white-space: nowrap !important;
  text-align: center;
  font-variant-numeric: tabular-nums;
}

body.r360-blue-ux .blue-matricula-cell {
  font-family: ui-monospace, "SFMono-Regular", Consolas, monospace;
  font-weight: 750;
  letter-spacing: .01em;
}

body.r360-blue-ux .blue-manager-access-table td[data-r360-label="E-mail"],
body.r360-blue-ux .blue-manager-access-table td[data-label="E-mail"] {
  min-width: 170px;
  max-width: 230px;
  overflow-wrap: anywhere;
}

body.r360-blue-ux .blue-manager-access-table td:last-child { min-width: 286px; }
body.r360-blue-ux .blue-manager-actions-stack {
  width: 100%;
  min-width: 270px;
  display: grid !important;
  grid-template-columns: minmax(112px, .9fr) minmax(138px, 1.1fr);
  grid-auto-rows: minmax(32px, auto);
  align-items: stretch !important;
  gap: 6px 8px !important;
}

body.r360-blue-ux .blue-manager-actions-stack > button {
  width: 100%;
  min-width: 0;
  min-height: 32px;
  margin: 0 !important;
  justify-content: center;
  white-space: normal !important;
  text-align: center;
}

body.r360-blue-ux .blue-manager-actions-stack > .blue-action-secondary { grid-column: 1; }
body.r360-blue-ux .blue-manager-actions-stack > .blue-action-view {
  grid-column: 2;
  grid-row: 1 / span 3;
  align-self: stretch;
}

body.r360-blue-ux .blue-management-groups {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 340px), 1fr));
}

body.r360-blue-ux .blue-admin-questions { display: grid; gap: 8px; }
body.r360-blue-ux .blue-admin-questions > article {
  min-width: 0;
  display: grid;
  grid-template-columns: 34px minmax(220px, 1fr) auto auto auto;
  align-items: center;
  gap: 8px;
  padding: 11px;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: var(--surface-2, #f8fafc);
}

body.r360-blue-ux .blue-admin-questions > article > div { min-width: 0; }
body.r360-blue-ux .blue-admin-questions > article strong,
body.r360-blue-ux .blue-admin-questions > article small { overflow-wrap: anywhere; }

body.r360-blue-ux .blue-theme-admin > header,
body.r360-blue-ux .blue-media-config-title,
body.r360-blue-ux .blue-final-toolbar {
  flex-wrap: wrap;
  gap: 10px;
}

body.r360-blue-ux .blue-appearance-grid,
body.r360-blue-ux .blue-settings-grid,
body.r360-blue-ux .blue-final-grid,
body.r360-blue-ux .blue-insight-grid,
body.r360-blue-ux .blue-feedback-grid {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr));
}

body.r360-blue-ux .blue-media-config-row {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
}

body.r360-blue-ux .blue-wizard,
body.r360-blue-ux .blue-theme-layout,
body.r360-blue-ux .blue-question-panel,
body.r360-blue-ux .blue-question-list { min-width: 0; max-width: 100%; }

body.r360-blue-ux .blue-wizard-footer {
  width: 100%;
  max-width: 100%;
  gap: 8px;
}

body.r360-blue-ux .modal,
body.r360-blue-ux .modal-body,
body.r360-blue-ux .form-grid { min-width: 0; max-width: 100%; }
body.r360-blue-ux .form-grid > * { min-width: 0; }

@media (min-width: 901px) {
  body.r360-blue-ux table.blue-ux-table thead th {
    position: sticky;
    top: 0;
    z-index: 2;
    background: color-mix(in srgb, var(--surface, #fff) 94%, var(--primary-soft, #eef2ff));
  }
}

@media (max-width: 1180px) {
  body.r360-blue-ux .blue-tab-groups { grid-template-columns: 1fr; }
  body.r360-blue-ux .blue-section-header { grid-template-columns: 1fr; }
  body.r360-blue-ux .blue-section-header > div:last-child,
  body.r360-blue-ux .blue-ux-header-actions {
    width: 100%;
    justify-content: stretch;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
  }
  body.r360-blue-ux .blue-section-header > div:last-child > button,
  body.r360-blue-ux .blue-ux-header-actions > button { width: 100%; }
  body.r360-blue-ux .blue-filter-row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.r360-blue-ux .blue-filter-row > .blue-search { grid-column: 1 / -1; }
}

@media (max-width: 900px) {
  body.r360-blue-ux .blue-context-strip > div { min-width: min(100%, 220px); }
  body.r360-blue-ux .blue-role-banner > button { width: 100%; }
  body.r360-blue-ux :is(.blue-matricula-head,.blue-matricula-cell) {
    width: 100%;
    min-width: 0;
    max-width: none;
    text-align: right;
  }
  body.r360-blue-ux .blue-manager-access-table td:last-child { min-width: 0; }
  body.r360-blue-ux .blue-manager-actions-stack { min-width: 0; }
  body.r360-blue-ux .blue-admin-questions > article {
    grid-template-columns: 34px minmax(0, 1fr) auto;
  }
  body.r360-blue-ux .blue-admin-questions > article > :is(em,button) { grid-column: 2 / -1; width: 100%; }
  body.r360-blue-ux .blue-theme-admin > header { align-items: flex-start; }
}

@media (max-width: 620px) {
  body.r360-blue-ux .blue-filter-row { grid-template-columns: 1fr !important; }
  body.r360-blue-ux .blue-filter-row > * { grid-column: auto !important; }
  body.r360-blue-ux .blue-section-header > div:last-child,
  body.r360-blue-ux .blue-ux-header-actions { grid-template-columns: 1fr; }
  body.r360-blue-ux .blue-base-stats { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  body.r360-blue-ux .blue-base-stats > span { min-height: 60px; }
  body.r360-blue-ux .blue-evaluation-card[role="button"] { grid-template-columns: 42px minmax(0, 1fr) !important; }
  body.r360-blue-ux .blue-manager-actions-stack { grid-template-columns: 1fr; }
  body.r360-blue-ux .blue-manager-actions-stack > .blue-action-secondary,
  body.r360-blue-ux .blue-manager-actions-stack > .blue-action-view {
    grid-column: 1;
    grid-row: auto;
  }
  body.r360-blue-ux .blue-admin-questions > article { grid-template-columns: 28px minmax(0, 1fr); }
  body.r360-blue-ux .blue-admin-questions > article > :is(em,button) { grid-column: 1 / -1; }
  body.r360-blue-ux .blue-media-config-row { grid-template-columns: 1fr; }
  body.r360-blue-ux .form-grid-2 { grid-template-columns: 1fr; }
  body.r360-blue-ux .form-grid-2 > .span-2 { grid-column: 1; }
}

@media (max-width: 400px) {
  body.r360-blue-ux .blue-base-stats { grid-template-columns: 1fr !important; }
}
