/* Personalidade visual com a mesma densidade e os controles da Central. */
.validation-viewbar { display: flex; flex: none; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 8px 16px; padding: 9px 24px; background: #f7f9ff; border-bottom: 1px solid #dce5f4; }
.validation-viewbar.testing { background: #f2f0fb; border-bottom-color: #dcd6ee; }
.validation-view-label { display: flex; align-items: center; gap: 8px; font-size: 12px; font-weight: 500; color: #516b96; }
.validation-view-label>.ui-icon { width: 18px; height: 18px; }
.validation-view-label small { display: inline-block; margin-left: 8px; font-size: 10px; font-weight: 400; color: #8291aa; }
.validation-view-controls { display: flex; align-items: center; gap: 8px; }
.validation-view-controls label { font-size: 11px; color: #71829d; }
.validation-view-controls select { width: 174px; height: 32px; min-height: 32px; padding: 5px 9px; font-size: 11px; }
.validation-view-controls button { min-height: 30px; padding: 4px 10px; font-size: 11px; }
@media (max-width:760px) {
  .validation-viewbar { padding: 8px 12px; gap: 6px; }
  .validation-view-label { font-size: 11px; }
  .validation-view-label small { margin-left: 5px; }
  .validation-view-controls { flex: 1; justify-content: flex-end; }
  .validation-view-controls label { display: none; }
  .validation-view-controls select { width: 155px; }
}
:root { --shadow-soft: 0 2px 4px rgb(31 52 89 / .025),0 8px 24px -18px rgb(31 52 89 / .16); }
body { background: #f2f5fa; }
.panel { border-color: #dce4ef; box-shadow: var(--shadow-soft); }
.panel-title { background: linear-gradient(105deg,#fff,#f7f9fd); }
.team-workspace>.page-head h1 { display: flex; align-items: center; gap: 10px; }
.team-workspace>.page-head h1:before { content: ''; width: 5px; height: 23px; border-radius: 4px; background: #3656ae; box-shadow: 3px 0 0 #dfe8fc; }
.compact-stats .stat { position: relative; border-color: #dce4ef; box-shadow: 0 2px 5px rgb(26 49 82 / .03); }
.compact-stats .stat.selected { border-color: #8da6df; box-shadow: 0 0 0 1px #3656ae0a,0 3px 10px #3656ae0a; background: linear-gradient(105deg,#f5f8ff,white); }
.compact-stats .stat-label { flex-direction: row-reverse; justify-content: flex-end; gap: 9px; }
.compact-stats .stat-label .ui-icon { display: block; width: 27px; height: 27px; padding: 6px; color: #3656ae; background: #edf2fe; border-radius: 8px; }
.compact-stats .stat:nth-child(2) .ui-icon { background: #eaf5f0; color: #2f8163; }
.compact-stats .stat:nth-child(3) .ui-icon { background: #fff4e3; color: #a57428; }
.compact-stats .stat strong { color: #294985; }
.team-toolbar { background: linear-gradient(110deg,#fff,#fafcff); }
.team-matrix th { background: #f4f7fc; color: #596d89; }
.team-person { display: flex; align-items: center; gap: 10px; min-width: 0; }
.team-person .person-cell { flex: 1; min-width: 0; }
.team-avatar,.profile-mark { display: inline-grid; place-items: center; flex: none; width: 30px; height: 30px; border: 1px solid #dce5f5; border-radius: 9px; background: #eff4fd; color: #45679f; font-size: 10px; font-weight: 600; }
.team-matrix tbody tr:nth-child(3n+2) .team-avatar { background: #edf5f4; border-color: #dcebe8; color: #4e8278; }
.team-matrix tbody tr:nth-child(3n) .team-avatar { background: #f3f0f9; border-color: #e6e0f1; color: #7f6a9d; }
.team-matrix .person-name { color: #315393; font-weight: 600; }
.team-matrix .person-name:hover { text-decoration: underline; text-underline-offset: 3px; }
.team-matrix .score.empty { border-color: transparent; color: #a4b0c1; background: #f6f8fb; }
.team-row-actions { display: flex; justify-content: flex-end; align-items: center; gap: 6px; }
.team-history-button { display: grid; place-items: center; padding: 0; width: 28px; min-height: 28px; border-color: transparent; background: transparent; box-shadow: none; color: #8493ac; }
.team-history-button .ui-icon { width: 15px; height: 15px; }
.team-history-button:hover { background: #edf2fb; border-color: #dce5f4; color: #3656ae; }
.team-matrix .action-column { width: 118px; }
.team-pagination { background: #fcfdff; }
.profile-mark { width: 38px; height: 38px; border-radius: 12px; font-size: 12px; background: linear-gradient(145deg,#e3ecfc,#f6f9ff); }
.scoring-profile-head { gap: 10px; }
.criteria-table tbody tr:hover .criterion-name { color: #3159a4; }
.criteria-table .table-rating input:checked+span { box-shadow: 0 2px 6px #3159a426; }
.section-heading { display: flex; align-items: center; gap: 8px; }
.section-heading>.ui-icon { color: #477d65; background: #eaf5f0; border-radius: 6px; padding: 3px; width: 23px; height: 23px; }
.review-workspace { grid-template-columns: minmax(0,1.05fr) minmax(0,.95fr); gap: 18px; }
.review-summary>.panel-body { padding: 18px; }
.summary-groups { display: grid; gap: 12px; }
.summary-group { border: 1px solid #e1e7f0; border-radius: 9px; overflow: hidden; }
.summary-group-heading { display: flex; align-items: center; gap: 8px; padding: 10px 12px; background: #f4f7fc; color: #436591; }
.summary-group-heading h3 { margin: 0; font-size: 12px; font-weight: 600; flex: 1; }
.summary-group-heading>.ui-icon { height: 16px; width: 16px; }
.summary-group-heading>span { display: grid; place-items: center; font-size: 11px; min-width: 22px; height: 22px; border-radius: 6px; background: #ffffffa6; }
.summary-group.strength { border-color: #d7e9e1; }
.summary-group.strength .summary-group-heading { background: #eef7f2; color: #39795d; }
.summary-group.development { border-color: #eee2d0; }
.summary-group.development .summary-group-heading { background: #fdf6e9; color: #96703a; }
.summary-group-items { display: flex; flex-wrap: wrap; gap: 8px; padding: 11px 12px; }
.summary-group-items>span { display: flex; align-items: center; gap: 8px; padding: 4px 5px 4px 9px; border: 1px solid #e6eaf1; border-radius: 7px; font-size: 11px; background: white; }
.summary-group-items .score { width: 22px; height: 22px; font-size: 10px; }
.summary-group-items p { font-size: 11px; color: #8290a5; margin: 0; }
.summary-evidence { margin-top: 18px; }
.summary-evidence h3 { display: flex; gap: 7px; align-items: center; font-size: 12px; color: #506889; }
.summary-evidence h3 .ui-icon { width: 15px; height: 15px; }
.summary-evidence>div { padding: 9px 12px; border-left: 2px solid #bfd0ec; background: #f8faff; margin-top: 8px; border-radius: 0 6px 6px 0; }
.summary-evidence strong { font-size: 11px; }
.summary-evidence p { margin: 4px 0 0; font-size: 12px; white-space: pre-wrap; overflow-wrap: anywhere; }
.summary-text { border-top: 1px solid #e5eaf2; margin-top: 16px; padding-top: 10px; }
.summary-text>summary { cursor: pointer; color: #6980a3; font-size: 11px; }
.summary-text .summary { font-size: 12px; margin-top: 12px; }
.review-complement { background: #f8faff; border: 1px solid #e2e9f4; padding: 12px; border-radius: 8px; margin-bottom: 0 !important; }
.review-complement textarea { background: white; min-height: 105px; }
.review-workspace .radar { max-height: 420px; }
.evaluation-card { display: block; padding: 12px; border: 1px solid #dfe6f1; border-radius: 9px; background: white; }
.evaluation-card-main { display: flex; align-items: center; gap: 10px; }
.evaluation-card-main>div { flex: 1; min-width: 0; }
.evaluation-card-main strong { display: block; font-size: 12px; }
.evaluation-card-main small { display: block; font-size: 10px; color: #8290a5; margin-top: 4px; }
.evaluation-card-symbol { display: grid; place-items: center; flex: none; width: 32px; height: 32px; border-radius: 9px; background: #f0f4fc; color: #5a79aa; }
.evaluation-card-symbol .ui-icon { height: 16px; width: 16px; }
.evaluation-card-actions { display: flex; align-items: center; gap: 8px; justify-content: flex-end; margin-top: 10px; }
.evaluation-card-actions button { display: flex; align-items: center; gap: 6px; font-size: 11px; min-height: 29px; padding: 4px 9px; }
.evaluation-card-actions .ui-icon { height: 12px; width: 12px; transform: rotate(180deg); }
.history-empty { text-align: center; color: #8797ad; padding: 24px 12px; }
.history-empty>.ui-icon { width: 28px; height: 28px; color: #99aecb; margin-bottom: 10px; }
.history-empty strong { display: block; color: #536c90; font-size: 12px; }
.history-empty p { font-size: 11px; margin: 6px 0 0; }
.record-heading { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin-bottom: 18px; }
.record-title { display: flex; align-items: center; gap: 12px; }
.record-symbol { display: grid; place-items: center; width: 43px; height: 43px; background: #e8eefc; border: 1px solid #d8e2f6; color: #4567a2; border-radius: 13px; }
.record-symbol .ui-icon { height: 21px; width: 21px; }
.record-title p { color: #7d8da5; font-size: 11px; margin: 0 0 3px; }
.record-title h1 { font-size: 22px; margin: 0; outline: none; }
.record-metadata { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; border: 1px solid #dce5f1; border-radius: 9px; background: linear-gradient(115deg,#fff,#f8faff); padding: 15px 18px; margin-bottom: 18px; }
.record-metadata>div { display: grid; gap: 4px; }
.record-metadata span { color: #8a98ad; font-size: 10px; }
.record-metadata strong { font-size: 13px; font-weight: 600; color: #38567e; }
.record-metadata small { font-size: 11px; }
.record-grid { display: grid; grid-template-columns: minmax(0,1.15fr) minmax(0,.85fr); gap: 18px; align-items: start; }
.record-table { table-layout: fixed; }
.record-table th:first-child { width: 38%; }
.record-table th:nth-child(2) { width: 58px; }
.record-table tbody th { background: white; font-weight: 400; padding-top: 12px; padding-bottom: 12px; }
.record-table tbody strong { display: block; color: #3e587d; font-size: 12px; font-weight: 600; }
.record-table tbody small { display: block; font-size: 10px; font-weight: 400; line-height: 15px; margin-top: 4px; }
.record-evidence,.record-notes .panel-body p { white-space: pre-wrap; overflow-wrap: anywhere; font-size: 12px; line-height: 1.65; }
.record-empty { color: #99a5b7; font-size: 11px; }
.record-radar .radar { max-height: 440px; }
.review-shell { height: 100dvh; min-height: 0; overflow: hidden; }
.review-shell .app-content { display: flex; flex-direction: column; min-height: 0; overflow: hidden; }
main.review-main { display: flex; flex: 1; flex-direction: column; min-height: 0; max-width: none; gap: 12px; padding: 20px 24px; overflow: hidden; }
.review-main .scoring-profile-head { flex: none; margin: 0; }
.review-main .review-workspace { flex: 1; min-height: 0; align-items: stretch; margin: 0; grid-template-columns: minmax(0,1.05fr) minmax(0,.95fr); }
.review-main .review-summary { display: flex; flex-direction: column; min-height: 0; margin: 0; }
.review-summary>.panel-title { flex: none; }
.review-summary>.panel-body { flex: 1; min-height: 0; overflow: auto; overscroll-behavior: contain; padding: 14px; }
.review-intro { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 6px 10px; margin-bottom: 10px; }
.review-summary .review-note { margin: 0; font-size: 11px; }
.review-intro button { display: inline-flex; align-items: center; gap: 6px; min-height: 30px; padding: 4px 8px; font-size: 11px; }
.review-intro button .ui-icon { width: 14px; height: 14px; }
.review-examples-body { max-height: 65dvh; overflow: auto; }
.review-examples-body .summary-evidence,.review-examples-body .summary-evidence>div:first-child { margin-top: 0; }
.review-summary .summary-groups { gap: 8px; }
.review-summary .summary-group-heading { padding: 7px 10px; }
.review-summary .summary-group-items { padding: 8px 10px; gap: 6px; }
.review-summary .summary-group-items>span { font-size: 10px; padding: 3px 4px 3px 7px; }
.review-summary .summary-group-items .score { width: 20px; height: 20px; }
.review-summary .summary-text { margin-top: 12px; padding-top: 8px; }
.review-summary .review-complement { margin: 0 0 12px !important; gap: 6px; padding: 10px; }
.review-summary .review-complement textarea { min-height: 64px; height: 72px; font-size: 12px; resize: none; }
.review-complement-label { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.review-visual-column { display: flex; flex-direction: column; gap: 12px; min-height: 0; }
.review-visual-column>.panel { margin: 0; }
.review-radar-panel { display: flex; flex: 1; flex-direction: column; min-height: 0; }
.review-radar-panel .panel-title { flex: none; }
.review-radar-panel #draft-radar { display: flex; flex: 1; flex-direction: column; min-height: 0; overflow: hidden; }
.review-radar-panel .radar-wrap { display: grid; place-items: center; flex: 1; min-height: 0; padding: 4px 12px; }
.review-radar-panel .radar { width: 100%; height: 100%; min-height: 0; max-height: 420px; }
.review-radar-panel .radar-key { flex: none; font-size: 10px; padding: 4px 12px 10px; gap: 6px 12px; }
.review-radar-panel .first-evaluation-note { font-size: 10px; padding-bottom: 8px; }
.review-notes-panel { flex: none; }
.review-notes-panel .panel-title { padding: 9px 12px; min-height: 36px; }
.review-notes-panel h2 { font-size: 12px; }
.review-score-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 6px; padding: 10px 12px; }
.review-score-grid>div { display: flex; align-items: center; justify-content: space-between; gap: 5px; padding: 6px 7px; background: #f8faff; border: 1px solid #e5ebf5; border-radius: 6px; font-size: 10px; line-height: 13px; }
.review-score-grid .score { width: 23px; height: 23px; flex: none; font-size: 10px; }
.review-main .sticky-save { position: static; flex: none; margin: 0; min-height: 56px; padding: 9px 14px; }
.review-main .sticky-save button { min-height: 34px; padding: 6px 10px; font-size: 12px; }
.save-status-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 8px 16px; }
button.discard-draft { display: inline-flex; align-items: center; justify-content: center; gap: 6px; color: #ab5960; border-color: transparent; background: transparent; box-shadow: none; font-size: 11px; padding: 4px 6px; min-height: 28px; }
button.discard-draft .ui-icon { width: 14px; height: 14px; }
button.discard-draft:hover { color: #a33e47; background: #fff1f1; border-color: #f3dadd; }
.sticky-save .save-status-actions .discard-draft { font-size: 10px; min-height: 26px; padding: 3px 5px; }
@media (max-height:800px) and (min-width:761px) {
  main.review-main { gap: 8px; padding-top: 12px; padding-bottom: 12px; }
  .review-summary>.panel-body { padding: 10px; }
  .review-intro { margin-bottom: 6px; }
  .review-summary .review-complement { padding: 7px; margin-bottom: 8px !important; gap: 4px; }
  .review-summary .review-complement textarea { height: 56px; min-height: 56px; }
  .review-summary .summary-groups { gap: 6px; }
  .review-summary .summary-group-heading { padding: 4px 8px; }
  .review-summary .summary-group-items { padding: 5px 8px; gap: 4px; }
  .review-summary .summary-group-items>span { padding: 2px 3px 2px 5px; }
  .review-notes-panel .panel-title { min-height: 32px; padding-top: 6px; padding-bottom: 6px; }
  .review-score-grid { gap: 4px; padding: 6px 10px; }
  .review-score-grid>div { padding: 4px 6px; }
}
@media (max-width:900px) { main.review-main { padding: 10px 14px 14px; } .review-score-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width:760px) {
  .review-main .review-workspace { display: flex; flex-direction: column; overflow: auto; overscroll-behavior: contain; gap: 12px; }
  .review-main .review-summary,.review-main .review-visual-column { flex: none; min-height: auto; }
  .review-summary>.panel-body { overflow: visible; }
  .review-radar-panel #draft-radar { flex: none; }
  .review-radar-panel .radar { height: auto; max-height: 300px; }
  .review-score-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .review-main .sticky-save { flex-direction: column; gap: 8px; padding: 8px 10px; }
  .review-main .sticky-save .actions { flex-wrap: nowrap; width: 100%; gap: 5px; }
  .review-main .sticky-save button { font-size: 10px; padding: 6px; }
}
@media (max-width:1150px) { .review-workspace,.record-grid { grid-template-columns: 1fr; } }
@media (max-width:650px) {
  .team-avatar,.team-history-button { display: none; }
  .team-matrix .action-column { width: 64px; }
  .compact-stats .stat-label .ui-icon { display: none; }
  .profile-mark { width: 31px; height: 31px; border-radius: 9px; font-size: 10px; }
  .record-heading { align-items: flex-start; flex-direction: column; }
  .record-metadata { grid-template-columns: 1fr; padding: 12px 14px; }
  .record-table { min-width: 500px; }
  .summary-group-items { gap: 6px; }
  .review-summary>.panel-body { padding: 14px; }
}
@media print {
  .review-shell,main.review-main { height: auto; overflow: visible; display: block; }
  .review-main .review-workspace,.review-summary>.panel-body { display: block; overflow: visible; }
  .record-heading .actions,.evaluation-card-actions,.team-history-button { display: none; }
  .record-grid { display: block; }
  .record-evidence,.summary-group { break-inside: avoid; }
  .record-metadata { background: white; }
}
