/* Painel inferior, antes do rodapé: não cobre o site nem a barra móvel. */
.consent-panel {
    padding: clamp(8px, 2vw, 20px) clamp(5px, 3vw, 22px);
    border-top: 1px solid var(--linha, #d5e2ec);
    background: var(--azul-100, #d8ecfa);
    color: var(--azul-950, #061a2b);
    overflow-wrap: anywhere;
    scroll-margin-top: calc(var(--topo-h, 58px) + 8px);
}
.consent-panel[hidden] { display: none; }
.consent-inner {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px 24px;
    max-width: 1116px;
    margin-inline: auto;
}
.consent-copy { flex: 1 1 34rem; min-width: 0; }
.consent-copy h2 {
    margin: 0 0 .35em;
    font-size: 1rem;
    line-height: 1.3;
    color: inherit;
}
.consent-copy p { margin: 0; font-size: .875rem; line-height: 1.5; }
.consent-copy a { color: var(--azul-800, #0f3d63); font-weight: 600; }
.consent-actions {
    display: flex;
    flex: 1 1 12rem;
    flex-wrap: wrap;
    gap: 8px;
    min-width: 0;
}
.consent-actions button {
    flex: 1 1 5rem;
    min-width: 0;
    max-width: 100%;
    min-height: 44px;
    padding: .65em .6em;
    border: 1px solid var(--azul-700, #135a8f);
    border-radius: 999px;
    background: var(--branco, #ffffff);
    color: var(--azul-950, #061a2b);
    font: 700 .875rem/1.25 var(--fonte, system-ui, sans-serif);
    white-space: nowrap;
    overflow-wrap: normal;
    hyphens: none;
    cursor: pointer;
}
.consent-actions button:hover { background: var(--frio-200, #c7f1ff); }
.consent-actions button:focus-visible {
    outline: 3px solid var(--azul-700, #135a8f);
    outline-offset: 2px;
}
[data-consent-settings] {
    max-width: 100%;
    min-width: 0;
    border: 0;
    padding: .2em 0;
    background: none;
    color: inherit;
    font: inherit;
    text-decoration: underline;
    text-underline-offset: 2px;
    white-space: nowrap;
    overflow-wrap: normal;
    hyphens: none;
    cursor: pointer;
}
@media (max-width: 159px) {
    .consent-actions button { padding-inline: 2px; font-size: 10px; }
    [data-consent-settings] { font-size: 10px; }
}
@media print { .consent-panel, [data-consent-settings] { display: none; } }
