/* Estilos desta área. */

form label {
  display: block;
  font-weight: 700;
  font-size:calc(13px * var(--text-scale,1));
  margin: 18px 0 8px;
}

form label span {
  color: var(--primary-dark);
}

form input,
form textarea,
form select {
  width: 100%;
  border: 1px solid #dbe0e6;
  border-radius: 8px;
  padding: 12px 14px;
  background: #fff;
  color: var(--ink);
  resize: vertical;
}

form .button {
  margin-top: 22px;
}

.form-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}

.content-note {
  font-size:calc(12px * var(--text-scale,1));
  color: #826335;
  background: #fbf4e8;
  padding: 11px 14px;
  border-radius: 8px;
  line-height: 1.6;
}

.form-result {
  font-size:calc(13px * var(--text-scale,1));
  background: #edf7f0;
  color: #28583a;
  padding: 12px 15px;
  border-radius: 8px;
  margin-top: 18px;
}

.dialog {
  background: var(--card-bg, #fff);
  border: 1px solid var(--border);
  padding: 36px;
  border-radius: 18px;
  width: min(530px, calc(100% - 32px));
  color: var(--ink);
  max-height: calc(100dvh - 48px);
  overflow: auto;
  box-shadow: 0 25px 100px #0003;
}

.dialog::backdrop {
  background: #16212d88;
  backdrop-filter: blur(4px);
}

.dialog h2 {
  font-size:calc(30px * var(--text-scale,1));
  margin: 12px 0;
}

.dialog > p:not(.content-note) {
  font-size:calc(14px * var(--text-scale,1));
  color: var(--muted);
  margin-bottom: 17px;
}

.dialog .eyebrow {
  padding-right: 30px;
  font-size:calc(10px * var(--text-scale,1));
}

.dialog-close {
  position: absolute;
  top: 15px;
  right: 15px;
}

.dialog form label {
  margin-top: 14px;
}

@media (max-width: 760px) {
  .form-row {
    grid-template-columns: 1fr;
    gap: 0;
  }
  .dialog {
    padding: 28px;
  }
  .dialog h2 {
    font-size:calc(27px * var(--text-scale,1));
  }
}

.field-error { color:#b22438; font-size:calc(12px * var(--text-scale,1)); line-height:1.5; margin:7px 0 0; }
form [aria-invalid="true"] { border-color:#b22438; }
.form-result.is-error { color:#8b2434; background:#ffedf0; }
.captcha-box { border:1px solid var(--border); border-radius:12px; margin:24px 0 0; padding:16px; background:var(--surface,#f8f9fa); min-width:0; }
.captcha-box legend { padding:0 7px; font-size:calc(12px * var(--text-scale,1)); font-weight:800; }
.captcha-box [data-captcha-prompt] { font-size:calc(19px * var(--text-scale,1)); font-weight:800; color:var(--ink); margin:0; }
.captcha-row { display:flex; align-items:flex-end; gap:12px; }
.captcha-row>div { flex:1; min-width:0; }
.captcha-row .button { padding:12px; margin:0; flex-shrink:0; font-size:calc(11px * var(--text-scale,1)); }
.captcha-box small { display:block; margin-top:12px; line-height:1.6; color:var(--muted); font-size:calc(11px * var(--text-scale,1)); }
.form-trap { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
form button:disabled { opacity:.65; cursor:wait; }
.navigation-error { padding:18px; border:1px solid var(--border); border-radius:12px; background:var(--surface); margin-bottom:20px; font-size:calc(13px * var(--text-scale,1)); }
.navigation-error .button { margin:10px; font-size:calc(12px * var(--text-scale,1)); }
:root[data-theme="dark"] .field-error { color:#ff9ba9; }
:root[data-theme="dark"] .form-result.is-error { color:#ffb0bb; background:#39212a; }
@media(max-width:380px) { .captcha-row { align-items:stretch; flex-direction:column; } .captcha-row .button { align-self:flex-start; } }

/* Pedido e contato: antispam compacto em todos os temas, com controles de toque. */
:is(#request-dialog, #contact-form) .captcha-box { padding:11px 12px; margin-top:17px; border-radius:8px; }
:is(#request-dialog, #contact-form) .captcha-box legend { font-size:calc(10px * var(--text-scale,1)); font-weight:700; padding:0 5px; }
:is(#request-dialog, #contact-form) .captcha-box [data-captcha-prompt] { font-size:calc(14px * var(--text-scale,1)); line-height:1.45; font-weight:700; }
:is(#request-dialog, #contact-form) .captcha-box label { font-size:calc(11px * var(--text-scale,1)); margin:7px 0 5px; }
:is(#request-dialog, #contact-form) .captcha-row { gap:9px; }
:is(#request-dialog, #contact-form) .captcha-box input { padding:8px 10px; min-height:44px; }
:is(#request-dialog, #contact-form) .captcha-row .button { font-size:calc(10px * var(--text-scale,1)); padding:8px 10px; min-height:44px; }
:is(#request-dialog, #contact-form) .captcha-box small { font-size:calc(10px * var(--text-scale,1)); margin-top:7px; line-height:1.5; }

.request-fields{border:0;margin:0;padding:0;min-width:0}.request-availability{border-left:3px solid var(--primary);background:var(--surface);padding:12px 14px;border-radius:6px;overflow-wrap:anywhere}.request-check{border:0;background:none;padding:0;margin:0 0 12px;cursor:pointer;color:var(--primary-dark)}#request-form[hidden]{display:none!important}.request-fields:disabled{opacity:.65}.request-check:focus-visible{outline:2px solid var(--primary);outline-offset:4px}

/* Pedidos: aviso editorial e recado com ferramentas discretas. */
.request-onair-note{display:flex;gap:14px;align-items:flex-start;margin:20px 0 24px;padding:18px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.request-onair-symbol{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--surface);color:var(--muted);flex-shrink:0}.request-onair-note[data-open=true] .request-onair-symbol{background:#e0f1e7;color:#22714b}.request-onair-note strong{font-size:calc(14px * var(--text-scale,1));display:block;line-height:1.5}.request-onair-note p{margin:5px 0 8px;color:var(--muted);font-size:calc(12px * var(--text-scale,1));line-height:1.6}.request-check{font:inherit;font-size:calc(11px * var(--text-scale,1));color:var(--ink);text-decoration:underline;text-underline-offset:3px;border:0;background:none;padding:6px 0;margin:0;cursor:pointer}.request-check:hover{color:var(--primary-dark)}.request-feedback{margin:0 0 18px;border-radius:5px;line-height:1.6}.request-feedback[hidden],.request-message-composer[hidden],.message-emojis[hidden],#request-message[hidden]{display:none!important}.request-message-composer{border:1px solid var(--border);border-radius:8px;overflow:hidden;background:var(--card-bg)}.message-toolbar{display:flex;gap:2px;align-items:center;background:var(--surface);border-bottom:1px solid var(--border);padding:5px 8px}.message-toolbar button,.message-emojis button{width:36px;min-height:36px;padding:4px;border:0;background:transparent;color:var(--ink);border-radius:4px;cursor:pointer}.message-toolbar button:hover,.message-toolbar button[aria-pressed=true],.message-emojis button:hover{background:var(--card-bg)}.message-toolbar button:focus-visible,.message-emojis button:focus-visible,.message-editable:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.message-toolbar>span{margin-left:auto;color:var(--muted);font-size:10px}.message-toolbar .is-over-limit{color:#b22438}.message-editable{min-height:105px;max-height:240px;overflow:auto;padding:12px 14px;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.6;font-size:calc(14px * var(--text-scale,1))}.message-editable:empty::before{content:attr(data-placeholder);color:var(--muted);pointer-events:none}.message-editable[aria-invalid=true]{outline:2px solid #b22438;outline-offset:-2px}.request-message-composer>small{display:block;padding:0 14px 10px;color:var(--muted);font-size:calc(10px * var(--text-scale,1));line-height:1.5}.message-emojis{display:flex;flex-wrap:wrap;padding:7px;border-bottom:1px solid var(--border)}.message-emojis button{font-size:20px}:root[data-theme=dark] .request-onair-note[data-open=true] .request-onair-symbol{background:#204034;color:#b4e8cc}:root[data-theme=dark] .message-toolbar .is-over-limit{color:#ffb0bb}

#request-dialog .request-feedback.feedback-visible{animation:none;opacity:1;border:1px solid #b6d9c4;border-radius:6px;padding:14px 16px 17px;background:#edf7f0;color:#28583a;box-shadow:none;font-weight:600}#request-dialog .request-feedback.feedback-visible::before{content:'✓';margin-right:8px;font-weight:800}#request-dialog .request-feedback.feedback-visible::after{height:2px}:root[data-theme=dark] #request-dialog .request-feedback.feedback-visible{background:#1d352b;color:#d0eadb;border-color:#3d6550}
