/* Плашка согласия: не больше 1/3 ширины и 1/6 высоты экрана на десктопе, полоса до 1/6 высоты на телефоне */
.consent-notice[hidden] { display: none; }
.consent-notice {
    position: fixed;
    right: 20px;
    bottom: 20px;
    z-index: 2000;
    box-sizing: border-box;
    width: 440px;
    max-width: calc(100% - 40px);
    max-height: 16.6vh;
    overflow: auto;
    padding: 14px 16px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    background: #fff;
    color: #000;
    border: 1px solid #000;
    box-shadow: 0 4px 18px rgba(0, 0, 0, .18);
    font: 13px/1.4 "Helvetica Neue", Helvetica, Arial, sans-serif;
}
.consent-notice p { margin: 0; }
.consent-notice a { color: #000; text-decoration: underline; }
.consent-acts { display: flex; gap: 8px; justify-content: flex-end; }
.consent-acts button {
    font: inherit;
    font-weight: 700;
    padding: 9px 16px;
    background: #ffdd2d;
    color: #000;
    border: 1px solid #000;
    border-radius: 0;
    cursor: pointer;
    white-space: nowrap;
}
.consent-acts button:focus { outline: 2px solid #000; outline-offset: 2px; }
@media (max-width: 600px) {
    .consent-notice { left: 0; right: 0; bottom: 0; width: auto; max-width: none; padding: 12px 16px 16px; }
    .consent-acts button { flex: 1; }
}
.legal-links { display: block; margin-top: 6px; font-size: 13px; line-height: 1.3; }
.legal-links a { color: #000; }
.legal-page { padding-left: 72px; padding-right: 20px; max-width: 900px; }
.legal-page h2 { margin-top: 28px; }
.legal-page table { border-collapse: collapse; margin: 10px 0 18px; font-size: 14px; }
.legal-page th, .legal-page td { border: 1px solid #d2d2d2; padding: 6px 10px; text-align: left; vertical-align: top; }
.consent-field { margin: 18px 0 6px; font-size: 14px; line-height: 1.4; }
.consent-field label { font-weight: normal; display: flex; gap: 8px; align-items: flex-start; }
.consent-field input { margin-top: 3px; }
.consent-info { margin: 14px 0 0; font-size: 13px; color: #555; }
.consent-error { color: #b00020; font-size: 20px; margin-top: 40px; padding-left: 72px; }
@media (max-width: 767px) { .legal-page, .consent-error { padding-left: 15px; } }
