:root {
  --methodology-score-1: #DC2626;
  --methodology-score-1-surface: #FEE2E2;
  --methodology-score-2: #F97316;
  --methodology-score-2-surface: #FFEDD5;
  --methodology-score-3: #CA8A04;
  --methodology-score-3-surface: #FEF3C7;
  --methodology-score-4: #2563EB;
  --methodology-score-4-surface: #DBEAFE;
  --methodology-score-5: #16A34A;
  --methodology-score-5-surface: #DCFCE7;
}

.methodology-query {
  --mq-wine: #7b2035;
  --mq-ink: #27313d;
  --mq-muted: #697586;
  --mq-line: #e3e7eb;
  display: grid;
  gap: 16px;
  color: var(--mq-ink);
}

#tab-metodologia-avaliacoes {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
  overflow: visible;
}

.iin-ref-shell .app-sidebar .tab-btn[data-tab="tab-metodologia-avaliacoes"],
.iin-ref-shell .app-sidebar .sidebar-favorite-link[data-tab="tab-metodologia-avaliacoes"] {
  min-height: 50px;
  gap: 8px;
  padding-right: 7px;
}
.iin-ref-shell .app-sidebar .tab-btn[data-tab="tab-metodologia-avaliacoes"] .tab-label,
.iin-ref-shell .app-sidebar .sidebar-favorite-link[data-tab="tab-metodologia-avaliacoes"] .sidebar-favorite-link__label {
  min-width: 0;
  font-size: .76rem;
  line-height: 1.14;
  white-space: normal;
  overflow: visible;
  text-overflow: clip;
}
.iin-ref-shell .app-sidebar .tab-btn[data-tab="tab-metodologia-avaliacoes"] .tab-favorite-toggle,
.iin-ref-shell .app-sidebar .sidebar-favorite-link[data-tab="tab-metodologia-avaliacoes"] .tab-favorite-toggle {
  flex: 0 0 28px;
  width: 28px;
  min-width: 28px;
  height: 28px;
  margin-left: auto;
}
body[data-sidebar="collapsed"] .iin-ref-shell .app-sidebar .tab-btn[data-tab="tab-metodologia-avaliacoes"],
body[data-sidebar="collapsed"] .iin-ref-shell .app-sidebar .sidebar-favorite-link[data-tab="tab-metodologia-avaliacoes"] {
  min-height: 42px;
  gap: 0;
  padding-right: 0;
}

.methodology-query [hidden] { display: none !important; }

.methodology-query__hero {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  min-height: 104px;
  padding: 18px 22px;
  border-radius: 18px;
  color: #fff;
  background: linear-gradient(135deg, #4f1322, #842740 68%, #9c4358);
  box-shadow: 0 16px 34px rgba(73, 20, 33, .16);
}
.methodology-query__eyebrow { display: block; margin-bottom: 7px; font-size: .68rem; font-weight: 850; letter-spacing: .14em; text-transform: uppercase; opacity: .78; }
.methodology-query__hero h1 { margin: 0; color: inherit; font-family: Georgia, "Times New Roman", serif; font-size: clamp(1.45rem, 2.4vw, 2.1rem); }
.methodology-query__hero p { margin: 7px 0 0; color: rgba(255, 255, 255, .82); font-size: .88rem; }

.methodology-query__filters {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin-top: 12px;
  padding: 12px 14px;
  border: 1px solid var(--mq-line);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 6px 20px rgba(34, 43, 54, .045);
}
.methodology-query__filters label { display: grid; gap: 6px; color: var(--mq-muted); font-size: .68rem; font-weight: 800; letter-spacing: .035em; text-transform: uppercase; }
.methodology-query__filters input,
.methodology-query__filters select { width: 100%; min-width: 0; height: 40px; padding: 0 11px; border: 1px solid #ccd3da; border-radius: 9px; color: var(--mq-ink); background: #fff; font: inherit; font-size: .8rem; text-transform: none; }
.methodology-query__filters input:focus,
.methodology-query__filters select:focus { border-color: var(--mq-wine); outline: 3px solid rgba(123, 32, 53, .1); }
.methodology-query__filters select:disabled { color: #8a94a1; background: #f4f6f8; cursor: wait; }

.methodology-query__metrics { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin-top: 11px; }
.methodology-query__metrics article { display: grid; gap: 3px; min-height: 82px; padding: 11px 14px; border: 1px solid var(--mq-line); border-radius: 12px; background: #fff; box-shadow: 0 5px 16px rgba(34, 43, 54, .04); }
.methodology-query__metrics span { color: var(--mq-muted); font-size: .7rem; font-weight: 800; text-transform: uppercase; }
.methodology-query__metrics strong { color: var(--mq-wine); font-family: Georgia, "Times New Roman", serif; font-size: 1.82rem; line-height: 1; }
.methodology-query__metrics small { align-self: end; color: var(--mq-muted); font-size: .68rem; }
.methodology-query__status-row { display: flex; align-items: center; justify-content: space-between; gap: 10px; min-height: 30px; margin-top: 3px; }
.methodology-query__status { min-height: 18px; margin: 0 2px; color: var(--mq-muted); font-size: .76rem; }
.methodology-query__status[data-type="error"] { color: #9a2943; }
.methodology-query__status[data-type="loading"]::before { content: ""; display: inline-block; width: 10px; height: 10px; margin-right: 7px; border: 2px solid #d5b4bc; border-top-color: var(--mq-wine); border-radius: 50%; animation: methodology-query-spin .7s linear infinite; }
@keyframes methodology-query-spin { to { transform: rotate(360deg); } }
.methodology-query__retry { min-height: 32px; padding: 0 11px; border: 1px solid #d7bbc2; border-radius: 8px; color: var(--mq-wine); background: #fff; font: inherit; font-size: .7rem; font-weight: 800; cursor: pointer; }

.methodology-query__list-panel,
.methodology-query-detail { border: 1px solid var(--mq-line); border-radius: 15px; background: #fff; box-shadow: 0 7px 22px rgba(34, 43, 54, .045); }
.methodology-query__list-panel { overflow: hidden; }
.methodology-query__section-head { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 16px 18px; border-bottom: 1px solid var(--mq-line); }
.methodology-query__section-head span { color: var(--mq-muted); font-size: .65rem; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; }
.methodology-query__section-head h2 { margin: 3px 0 0; font-family: Georgia, "Times New Roman", serif; font-size: 1.05rem; }
.methodology-query__section-head > strong { display: grid; place-items: center; min-width: 32px; height: 32px; border-radius: 999px; color: var(--mq-wine); background: #f6e9ed; font-size: .78rem; }
.methodology-query__table-wrap { width: 100%; overflow: hidden; }
.methodology-query__table { width: 100%; border-collapse: collapse; table-layout: fixed; }
.methodology-query__table th { padding: 10px 12px; color: var(--mq-muted); background: #f7f8fa; font-size: .65rem; letter-spacing: .06em; text-align: left; text-transform: uppercase; }
.methodology-query__table td { padding: 12px; border-top: 1px solid #edf0f2; color: #3c4652; font-size: .75rem; overflow-wrap: anywhere; vertical-align: middle; }
.methodology-query__table th:nth-child(1) { width: 12%; }
.methodology-query__table th:nth-child(2) { width: 14%; }
.methodology-query__table th:nth-child(3) { width: 13%; }
.methodology-query__table th:nth-child(4) { width: 22%; }
.methodology-query__table th:nth-child(5) { width: 22%; }
.methodology-query__table th:nth-child(6) { width: 17%; }
.methodology-query__table td strong { color: var(--mq-ink); }
.methodology-query__card-lead > span { display: none; }
.methodology-query__person { display: block; font-weight: 750; }
.methodology-query__monitor { display: block; margin-top: 3px; color: var(--mq-muted); font-size: .66rem; }
.methodology-query__link { min-height: 34px; padding: 0 10px; border: 1px solid #d7bbc2; border-radius: 8px; color: var(--mq-wine); background: #fff; font: inherit; font-size: .7rem; font-weight: 850; cursor: pointer; }
.methodology-query__link:hover { border-color: var(--mq-wine); background: #fbf5f7; }
.methodology-query__empty { padding: 21px 18px; color: var(--mq-muted); font-size: .78rem; text-align: center; }

.methodology-query-detail { padding: 20px; }
.methodology-query-detail__toolbar { display: flex; justify-content: space-between; gap: 10px; margin-bottom: 18px; }
.methodology-query__button { min-height: 40px; padding: 0 15px; border: 1px solid var(--mq-wine); border-radius: 9px; font: inherit; font-size: .76rem; font-weight: 850; cursor: pointer; }
.methodology-query__button--ghost { color: var(--mq-wine); background: #fff; }
.methodology-query__button--primary { color: #fff; background: var(--mq-wine); }
.methodology-query-detail__header { display: flex; align-items: center; gap: 13px; padding-bottom: 15px; border-bottom: 1px solid var(--mq-line); }
.methodology-query-detail__header img { width: 46px; height: 46px; object-fit: contain; }
.methodology-query-detail__header span { color: var(--mq-muted); font-size: .68rem; font-weight: 800; text-transform: uppercase; }
.methodology-query-detail__header h2 { margin: 2px 0 0; font-family: Georgia, "Times New Roman", serif; font-size: 1.35rem; }
.methodology-query-detail__meta { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; padding: 16px 0; }
.methodology-query-detail__meta div { display: grid; gap: 3px; min-width: 0; }
.methodology-query-detail__meta span { color: var(--mq-muted); font-size: .64rem; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; }
.methodology-query-detail__meta strong { font-size: .78rem; overflow-wrap: anywhere; }
.methodology-query-detail__averages { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 9px; padding: 12px; border-radius: 11px; background: #f6f7f9; }
.methodology-query-detail__averages > div { display: grid; gap: 3px; }
.methodology-query-detail__averages span { color: var(--mq-muted); font-size: .66rem; }
.methodology-query-detail__averages strong { color: var(--mq-wine); font-size: 1.08rem; }
.methodology-query-detail__averages > small { grid-column: 1 / -1; color: var(--mq-muted); font-size: .64rem; }
.methodology-query-detail__group { margin-top: 18px; }
.methodology-query-detail__group h3,
.methodology-query-detail__observations h3 { margin: 0 0 8px; color: var(--mq-wine); font-size: .72rem; letter-spacing: .1em; text-transform: uppercase; }
.methodology-query-detail__criterion { display: grid; grid-template-columns: 48px minmax(0, 1fr) 140px; align-items: center; gap: 10px; min-height: 42px; padding: 7px 10px; border-top: 1px solid #ebedef; border-left: 3px solid transparent; break-inside: avoid; }
.methodology-query-detail__criterion > span { color: var(--mq-wine); font-size: .7rem; font-weight: 900; }
.methodology-query-detail__criterion > strong { font-size: .76rem; }
.methodology-query-detail__criterion > em { justify-self: end; padding: 5px 8px; border-radius: 999px; font-size: .68rem; font-style: normal; font-weight: 850; }
.methodology-query-detail__criterion[data-score="1"] { border-left-color: var(--methodology-score-1); }
.methodology-query-detail__criterion[data-score="1"] > em { color: var(--methodology-score-1); background: var(--methodology-score-1-surface); }
.methodology-query-detail__criterion[data-score="2"] { border-left-color: var(--methodology-score-2); }
.methodology-query-detail__criterion[data-score="2"] > em { color: var(--methodology-score-2); background: var(--methodology-score-2-surface); }
.methodology-query-detail__criterion[data-score="3"] { border-left-color: var(--methodology-score-3); }
.methodology-query-detail__criterion[data-score="3"] > em { color: var(--methodology-score-3); background: var(--methodology-score-3-surface); }
.methodology-query-detail__criterion[data-score="4"] { border-left-color: var(--methodology-score-4); }
.methodology-query-detail__criterion[data-score="4"] > em { color: var(--methodology-score-4); background: var(--methodology-score-4-surface); }
.methodology-query-detail__criterion[data-score="5"] { border-left-color: var(--methodology-score-5); }
.methodology-query-detail__criterion[data-score="5"] > em { color: var(--methodology-score-5); background: var(--methodology-score-5-surface); }

@media (min-width: 1025px) {
  #tab-metodologia-avaliacoes {
    width: calc(100% + 32px);
    margin-inline: -16px;
  }
}
.methodology-query-detail__observations { margin-top: 18px; padding: 14px; border: 1px solid var(--mq-line); border-radius: 10px; background: #fafbfc; break-inside: avoid; }
.methodology-query-detail__observations p { margin: 0; color: #46515d; font-size: .78rem; line-height: 1.55; white-space: pre-wrap; }

@media (max-width: 1024px) {
  .methodology-query__filters { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .methodology-query-detail__meta { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 900px) {
  .methodology-query__table thead { display: none; }
  .methodology-query__table,
  .methodology-query__table tbody,
  .methodology-query__table tr,
  .methodology-query__table td { display: block; width: 100%; }
  .methodology-query__table tbody { display: grid; gap: 9px; padding: 10px; }
  .methodology-query__table tr { display: grid; gap: 10px; padding: 13px; border: 1px solid var(--mq-line); border-radius: 12px; background: #fff; }
  .methodology-query__table td { display: grid; grid-template-columns: minmax(92px, .7fr) minmax(0, 1.3fr); gap: 10px; padding: 0; border: 0; }
  .methodology-query__table td::before { content: attr(data-label); color: var(--mq-muted); font-size: .65rem; font-weight: 800; text-transform: uppercase; }
  .methodology-query__table .methodology-query__desktop-context { display: none; }
  .methodology-query__table .methodology-query__card-lead { display: block; padding-bottom: 10px; border-bottom: 1px solid #edf0f2; }
  .methodology-query__table .methodology-query__card-lead::before { display: none; }
  .methodology-query__card-lead > strong { display: block; color: var(--mq-wine); font-size: 1rem; }
  .methodology-query__card-lead > span { display: block; margin-top: 3px; color: var(--mq-muted); font-size: .76rem; }
  .methodology-query__card-lead > span b { color: #b5bdc7; font-weight: 400; }
  .methodology-query__table td:last-child { display: block; margin-top: 2px; }
  .methodology-query__table td:last-child::before { display: none; }
  .methodology-query__link { width: 100%; min-height: 42px; }
}

@media (max-width: 600px) {
  .methodology-query { gap: 12px; }
  .methodology-query__hero { min-height: 94px; padding: 16px; border-radius: 14px; }
  .methodology-query__hero p { max-width: 32ch; }
  .methodology-query__filters,
  .methodology-query__metrics,
  .methodology-query-detail__meta,
  .methodology-query-detail__averages { grid-template-columns: 1fr; }
  .methodology-query__filters { gap: 9px; padding: 11px; }
  .methodology-query__metrics article { min-height: 76px; }
  .methodology-query__status-row { align-items: flex-start; flex-direction: column; }
  .methodology-query__retry { width: 100%; min-height: 40px; }
  .methodology-query-detail { padding: 13px; }
  .methodology-query-detail__toolbar { align-items: stretch; flex-direction: column; }
  .methodology-query__button { width: 100%; min-height: 44px; }
  .methodology-query-detail__averages > small { grid-column: auto; }
  .methodology-query-detail__criterion { grid-template-columns: 40px minmax(0, 1fr); gap: 7px; padding: 9px 5px; }
  .methodology-query-detail__criterion > em { grid-column: 2; justify-self: start; }
}

@media (max-width: 767px) {
  .iin-ref-shell .app-sidebar .tab-btn[data-tab="tab-metodologia-avaliacoes"],
  .iin-ref-shell .app-sidebar .sidebar-favorite-link[data-tab="tab-metodologia-avaliacoes"] {
    min-height: 48px;
  }
}

@page { size: A4 portrait; margin: 12mm; }

@media print {
  html,
  body.methodology-query-printing {
    width: auto !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    background: #fff !important;
  }

  body.methodology-query-printing,
  body.methodology-query-printing * {
    visibility: visible !important;
  }

  body.methodology-query-printing > *:not(#appShell),
  body.methodology-query-printing #appShell > *:not(.shell-main),
  body.methodology-query-printing #appShell > .shell-main > *:not(.app-content),
  body.methodology-query-printing .app-content > .tab-page:not(#tab-metodologia-avaliacoes),
  body.methodology-query-printing .methodology-query__hero,
  body.methodology-query-printing #metodologiaConsultaListView,
  body.methodology-query-printing .methodology-query-no-print {
    display: none !important;
  }

  body.methodology-query-printing #appShell,
  body.methodology-query-printing #appShell > .shell-main,
  body.methodology-query-printing #appShell > .shell-main > .app-content,
  body.methodology-query-printing #tab-metodologia-avaliacoes,
  body.methodology-query-printing #metodologiaConsultaApp {
    display: block !important;
    position: static !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    transform: none !important;
    contain: none !important;
    background: #fff !important;
  }

  body.methodology-query-printing #metodologiaConsultaDetail {
    display: block !important;
    visibility: visible !important;
    position: static !important;
    inset: auto !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    transform: none !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    color: #1f2933 !important;
    background: #fff !important;
    print-color-adjust: exact;
    -webkit-print-color-adjust: exact;
  }
  body.methodology-query-printing .methodology-query-detail__header { padding-bottom: 8mm; }
  body.methodology-query-printing .methodology-query-detail__meta {
    grid-template-columns: repeat(4, 1fr);
    gap: 4mm;
    padding: 6mm 0;
    break-inside: avoid;
    page-break-inside: avoid;
  }
  body.methodology-query-printing .methodology-query-detail__averages {
    grid-template-columns: repeat(3, 1fr);
    padding: 4mm;
    break-inside: avoid;
    page-break-inside: avoid;
    print-color-adjust: exact;
    -webkit-print-color-adjust: exact;
  }
  body.methodology-query-printing .methodology-query-detail__group { margin-top: 5mm; break-inside: auto; }
  body.methodology-query-printing .methodology-query-detail__group + .methodology-query-detail__group {
    break-before: page;
    page-break-before: always;
  }
  body.methodology-query-printing .methodology-query-detail__criterion { min-height: 0; padding: 2.2mm 2mm; break-inside: avoid; page-break-inside: avoid; }
  body.methodology-query-printing .methodology-query-detail__criterion > em { print-color-adjust: exact; -webkit-print-color-adjust: exact; }
  body.methodology-query-printing .methodology-query-detail__observations { break-inside: avoid; page-break-inside: avoid; }
}
