/* ============================================================
   EVENTIPO — Pesquisas + Relatórios styles
   ============================================================ */
.rp-evbar { display: flex; align-items: center; justify-content: space-between; gap: 14px; flex-wrap: wrap; }
.rp-evselect { background: var(--bg-surface); border: 1px solid var(--line); border-radius: var(--r-sm); color: var(--ink); font-family: var(--serif); font-size: 17px; padding: 10px 38px 10px 14px; outline: 0; cursor: pointer; appearance: none; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23c8a86a' fill='none' stroke-width='1.3'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 14px center; min-width: 280px; }
.rp-evselect:focus { border-color: var(--gold-line); }
.rp-empty { display: flex; flex-direction: column; align-items: center; gap: 8px; padding: 56px; text-align: center; color: var(--ink-3); }
.rp-empty h3 { font-size: 18px; color: var(--ink); }

/* ---- Surveys ---- */
.sv-stars { display: inline-flex; gap: 2px; }
.sv-top { display: grid; grid-template-columns: 1fr 1.4fr; gap: 16px; }
.sv-score { background: var(--bg-surface); border: 1px solid var(--line); border-radius: var(--r-lg); padding: 22px 24px; display: flex; align-items: center; gap: 18px; }
.sv-score-n { font-size: 48px; font-weight: 500; line-height: 1; letter-spacing: -0.02em; }
.sv-score-l { font-size: 11.5px; color: var(--ink-3); }
.sv-nps { background: var(--bg-surface); border: 1px solid var(--line); border-radius: var(--r-lg); padding: 20px 24px; display: flex; flex-direction: column; justify-content: center; }
.sv-nps-n { font-size: 26px; font-weight: 500; }
.sv-nps-bar { display: flex; height: 12px; border-radius: 99px; overflow: hidden; margin-top: 12px; gap: 2px; }
.sv-seg { display: block; }
.sv-seg.det { background: var(--neg); } .sv-seg.pas { background: var(--ink-4); } .sv-seg.pro { background: var(--pos); }
.sv-nps-legend { display: flex; gap: 16px; margin-top: 12px; font-size: 11px; color: var(--ink-3); }
.sv-nps-legend span { display: inline-flex; align-items: center; gap: 6px; }
.sv-nps-legend .dot { width: 8px; height: 8px; border-radius: 99px; }
.sv-nps-legend .dot.det { background: var(--neg); } .sv-nps-legend .dot.pas { background: var(--ink-4); } .sv-nps-legend .dot.pro { background: var(--pos); }

.sv-qrow { display: grid; grid-template-columns: 220px 1fr 40px; align-items: center; gap: 14px; }
.sv-qlabel { font-size: 13px; color: var(--ink-2); }
.sv-qbar { height: 8px; background: var(--bg-inset); border-radius: 99px; overflow: hidden; }
.sv-qbar span { display: block; height: 100%; background: linear-gradient(90deg, var(--gold), var(--gold-bright)); border-radius: 99px; }
.sv-qval { font-size: 13px; color: var(--ink); text-align: right; }

.sv-comments { columns: 2; column-gap: 16px; }
.sv-comment { break-inside: avoid; margin-bottom: 16px; background: var(--bg-surface); border: 1px solid var(--line); border-radius: var(--r-lg); padding: 16px 18px; }
.sv-comment-head { display: flex; align-items: center; gap: 11px; margin-bottom: 12px; }
.sv-comment-name { font-size: 13px; color: var(--ink); }
.sv-comment-co { font-size: 10.5px; color: var(--ink-3); }
.sv-comment-nps { margin-left: auto; font-size: 13px; padding: 4px 10px; border-radius: 8px; }
.sv-comment-nps[data-tone="pro"] { color: var(--pos); background: oklch(0.74 0.07 155 / 0.12); }
.sv-comment-nps[data-tone="pas"] { color: var(--ink-3); background: var(--bg-inset); }
.sv-comment-nps[data-tone="det"] { color: var(--neg); background: oklch(0.58 0.18 28 / 0.12); }
.sv-q { font-size: 12.5px; line-height: 1.5; color: var(--ink-2); margin-top: 8px; }
.sv-q-tag { display: block; font-family: var(--mono); font-size: 9px; letter-spacing: 0.1em; text-transform: uppercase; margin-bottom: 3px; }
.sv-q.liked .sv-q-tag { color: var(--pos); } .sv-q.improve .sv-q-tag { color: var(--gold); }

/* respond modal */
.sv-rate { display: flex; align-items: center; justify-content: space-between; gap: 14px; }
.sv-rate-lab { font-size: 13px; color: var(--ink-2); }
.sv-rate-stars { display: flex; gap: 4px; }
.sv-rate-star { background: none; border: 0; cursor: pointer; color: var(--line-strong); padding: 2px; transition: color .12s; }
.sv-rate-star[data-on="true"] { color: var(--gold); }
.sv-nps-pick { display: flex; gap: 4px; flex-wrap: wrap; }
.sv-nps-btn { width: 30px; height: 30px; border-radius: 7px; border: 1px solid var(--line); background: var(--bg-inset); color: var(--ink-3); font-family: var(--mono); font-size: 12px; cursor: pointer; transition: all .12s; }
.sv-nps-btn:hover { border-color: var(--line-strong); }
.sv-nps-btn[data-on="true"][data-tone="pro"] { background: var(--pos); color: #06140c; border-color: var(--pos); }
.sv-nps-btn[data-on="true"][data-tone="pas"] { background: var(--ink-3); color: #111; border-color: var(--ink-3); }
.sv-nps-btn[data-on="true"][data-tone="det"] { background: var(--neg); color: #fff; border-color: var(--neg); }

/* ---- Reports ---- */
.rp-report { background: var(--bg-surface); border: 1px solid var(--line); border-radius: var(--r-lg); padding: 36px 40px; }
.rp-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; padding-bottom: 24px; border-bottom: 2px solid var(--gold); }
.rp-logo { margin-bottom: 10px; }
.rp-title { font-size: 30px; color: var(--ink); font-weight: 500; letter-spacing: -0.01em; }
.rp-meta { font-size: 12px; color: var(--ink-3); margin-top: 4px; }
.rp-stamp { font-size: 10px; color: var(--ink-4); text-align: right; line-height: 1.5; }

.rp-section { padding: 22px 0; border-bottom: 1px solid var(--line-soft); }
.rp-section:last-child { border-bottom: 0; }
.rp-section-h { margin-bottom: 14px; }
.rp-summary { font-size: 17px; line-height: 1.6; color: var(--ink); text-wrap: pretty; }

.rp-kpis { display: grid; grid-template-columns: repeat(5, 1fr); gap: 12px; padding: 22px 0; border-bottom: 1px solid var(--line-soft); }
.rp-kpi { display: flex; flex-direction: column; gap: 6px; }
.rp-kpi-n { font-size: 24px; font-weight: 500; color: var(--ink); letter-spacing: -0.02em; }
.rp-kpi-l { font-size: 10.5px; color: var(--ink-3); }

.rp-grid2 { display: grid; grid-template-columns: 1fr 1fr; gap: 36px; }
.rp-funnel { display: flex; flex-direction: column; gap: 10px; }
.rp-funnel-row { display: grid; grid-template-columns: 110px 1fr; align-items: center; gap: 12px; }
.rp-funnel-lab { font-size: 12px; color: var(--ink-3); }
.rp-funnel-bar { background: var(--bg-inset); border-radius: 6px; overflow: hidden; height: 28px; }
.rp-funnel-bar span { display: flex; align-items: center; justify-content: flex-end; height: 100%; background: linear-gradient(90deg, oklch(0.5 0.09 64), var(--gold)); color: #1a1505; font-family: var(--mono); font-size: 12px; font-weight: 600; padding-right: 10px; border-radius: 6px; min-width: 28px; }
.rp-funnel-foot { font-size: 11px; color: var(--ink-4); margin-top: 4px; }
.rp-fin { display: flex; flex-direction: column; }
.rp-fin-row { display: flex; justify-content: space-between; padding: 10px 0; border-bottom: 1px solid var(--line-soft); font-size: 13.5px; color: var(--ink-2); }
.rp-fin-row.total { border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.rp-fin-row span:first-child { color: var(--ink-3); }

.rp-sat { display: grid; grid-template-columns: 1fr 1.4fr; gap: 20px; align-items: center; }
.rp-sat-score { display: flex; flex-direction: column; gap: 8px; }
.rp-sat-n { font-size: 40px; font-weight: 500; color: var(--ink); line-height: 1; }
.rp-sat-l { font-size: 11px; color: var(--ink-3); }
.rp-nodata { font-size: 12.5px; color: var(--ink-4); }

.rp-suppliers { display: flex; flex-direction: column; gap: 1px; }
.rp-sup { display: grid; grid-template-columns: 1.6fr 1fr auto; align-items: center; gap: 14px; padding: 10px 0; border-bottom: 1px solid var(--line-soft); }
.rp-sup-name { font-size: 13.5px; color: var(--ink); }
.rp-sup-cat { font-size: 11px; color: var(--ink-3); }
.rp-sup-rating { font-size: 12px; color: var(--gold); display: inline-flex; align-items: center; gap: 4px; }
.rp-lesson { display: flex; gap: 11px; align-items: flex-start; font-size: 13px; color: var(--ink-2); line-height: 1.5; }
.rp-lesson .pill { flex-shrink: 0; }

@media (max-width: 1100px) {
  .sv-top, .rp-sat { grid-template-columns: 1fr; }
  .rp-kpis { grid-template-columns: repeat(3, 1fr); }
  .rp-grid2 { grid-template-columns: 1fr; gap: 24px; }
  .sv-comments { columns: 1; }
  .sv-qrow { grid-template-columns: 140px 1fr 36px; }
}

/* ---- print ---- */
@media print {
  .sidebar, .topbar, .no-print { display: none !important; }
  .main, .scroll, .page { overflow: visible !important; height: auto !important; }
  .app { display: block !important; }
  body, .app, .main, .scroll { background: #fff !important; }
  .rp-report { border: 0; padding: 0; background: #fff !important; }
  .rp-report, .rp-report * { color: #111 !important; }
  .rp-title, .rp-summary { color: #000 !important; }
  .rp-kpi-n, .rp-sup-rating, .gold-text, .gold-sheen { color: #9a7b3a !important; -webkit-text-fill-color: #9a7b3a !important; }
  .rp-section { border-color: #ddd !important; break-inside: avoid; }
  .rp-funnel-bar span { background: #c8a86a !important; color: #1a1505 !important; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
  .sv-seg, .pill, .rp-funnel-bar span { -webkit-print-color-adjust: exact; print-color-adjust: exact; }
}
