/* Página pública do formulário do SAC (U14.2). Fica dentro do iframe do
   site do cliente: CSS próprio, pequeno, sem Bootstrap. A grade de 12 colunas
   é a do form-col-* do sistema anterior (fields_helper.php:465-485). */
*, *::before, *::after { box-sizing: border-box; }
html, body { margin: 0; padding: 0; }
/* 28/10/2026: medidas da página do sistema anterior (Inter 14px, rótulo 600 cinza, "*"
   vermelho antes do rótulo, "?" contornado, campo cinza-claro de canto 6px, botão de
   canto 8px), para o iframe que já está nos sites não mudar de cara na troca. */
body.uwtl {
    font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    font-size: 14px;
    line-height: 1.42857;
    color: #333;
    background: transparent;
}
.uwtl-wrap { width: 100%; padding: 15px; margin: 0 auto; }
.uwtl-styled .uwtl-wrap { max-width: 50%; }
@media (max-width: 767px) { .uwtl-styled .uwtl-wrap, .uwtl-wrap { max-width: 100% !important; } }
.uwtl-logo { text-align: center; margin-bottom: 16px; }
.uwtl-logo img { max-height: 70px; max-width: 100%; }
.uwtl-row { display: flex; flex-wrap: wrap; margin: 0 -8px; }
.uwtl-col { padding: 0 8px; width: 100%; }
@media (min-width: 576px) {
    .uwtl-col-6 { width: 50%; }
    .uwtl-col-4 { width: 33.3333%; }
    .uwtl-col-3 { width: 25%; }
}
.uwtl-heading { margin: 0 0 10px; line-height: 1.1; font-weight: 500; color: #333; }
h1.uwtl-heading { font-size: 22px; }
h2.uwtl-heading { font-size: 19px; }
h3.uwtl-heading { font-size: 17px; }
h4.uwtl-heading { font-size: 15px; }
.uwtl-paragraph { margin: 0 0 20px; line-height: 1.7; }
.uwtl-group { margin-bottom: 15px; }
.uwtl-label { display: block; margin-bottom: 6px; font-weight: 600; color: #4b5563; }
.uwtl-req { color: #ef4444; font-weight: 600; }
.uwtl-help {
    display: inline-flex; align-items: center; justify-content: center;
    width: 13px; height: 13px; margin-left: 3px; border-radius: 50%;
    border: 1.3px solid currentColor; background: transparent;
    font-size: 9px; font-weight: 700; line-height: 1; color: #4b5563;
    cursor: help; vertical-align: -1px; position: relative;
}
.uwtl-help:hover::after, .uwtl-help:focus::after {
    content: attr(data-help);
    position: absolute; left: 50%; bottom: 140%; transform: translateX(-50%);
    width: max-content; max-width: 240px; padding: 6px 8px; border-radius: 4px;
    background: #333; color: #fff; font-weight: 400; font-size: 12px; line-height: 1.35;
    white-space: normal; z-index: 10;
}
.uwtl-control {
    display: block; width: 100%; min-height: 34px; padding: 6px 12px;
    font: inherit; color: #555; background: rgba(249, 250, 251, .7);
    border: 1.25px solid #d1d5db; border-radius: 6px;
}
.uwtl-control::placeholder { color: #9ca3af; opacity: 1; }
textarea.uwtl-control { resize: vertical; }
.uwtl-control:focus { outline: none; background: #fff; border-color: #2563eb; box-shadow: 0 0 0 2px rgba(37, 99, 235, .15); }
.uwtl-has-error .uwtl-control, .uwtl-has-error .uwtl-checks { border-color: #fc2d42; }
.uwtl-error { color: #fc2d42; font-size: 13px; margin-top: 4px; min-height: 0; }
.uwtl-error:empty { display: none; }
.uwtl-checks { padding: 2px 0; border: 1px solid transparent; border-radius: 4px; }
.uwtl-check { display: flex; align-items: flex-start; gap: 8px; margin: 4px 0; font-weight: 400; cursor: pointer; }
.uwtl-check input { margin-top: 3px; }
.uwtl-privacy { margin-bottom: 6px; color: #4b5563; }
.uwtl-privacy a { color: #2563eb; text-decoration: none; }
.uwtl-privacy a:hover { text-decoration: underline; }
.uwtl-submit-wrap { margin-top: 4px; text-align: left; }
.uwtl-submit {
    display: inline-flex; align-items: center; gap: 6px;
    padding: 6px 9px; font: inherit; font-size: 13.5px; font-weight: 500;
    border: 1.25px solid transparent; border-radius: 8px; cursor: pointer;
}
.uwtl-submit:hover { filter: brightness(.88); }
.uwtl-submit[disabled] { opacity: .7; cursor: wait; }
.uwtl-spinner {
    display: none; width: 14px; height: 14px; border-radius: 50%;
    border: 2px solid currentColor; border-right-color: transparent;
    animation: uwtl-spin .8s linear infinite;
}
.uwtl-sending .uwtl-spinner { display: inline-block; }
@keyframes uwtl-spin { to { transform: rotate(360deg); } }
.uwtl-alert { padding: 12px 15px; margin-bottom: 15px; border: 1px solid transparent; border-radius: 4px; }
.uwtl-alert-success { color: #166534; background: #dcfce7; border-color: #bbf7d0; }
.uwtl-alert-danger { color: #991b1b; background: #fee2e2; border-color: #fecaca; }
.uwtl-alert-warning { color: #854d0e; background: #fef9c3; border-color: #fde68a; }
.uwtl-alert p:first-child { margin-top: 0; }
.uwtl-alert p:last-child { margin-bottom: 0; }
/* Campo-isca: fora da tela, sem display:none (robô ignora o escondido demais). */
.uwtl-hp { position: absolute; left: -10000px; top: auto; width: 1px; height: 1px; overflow: hidden; }
