.comment-consent-overlay { position: fixed; inset: 0; z-index: 10000; font-family: inherit; }
.comment-consent-overlay .comment-consent-backdrop { position: absolute; inset: 0; background: rgba(20, 28, 38, .32); }
.comment-consent-overlay .comment-consent-sheet { box-sizing: border-box; position: absolute; left: 50%; bottom: 0; width: min(100%, 430px); max-height: 90dvh; overflow-y: auto; transform: translateX(-50%); background: #fff; color: #17202a; border-radius: 18px 18px 0 0; padding: 12px 22px calc(22px + env(safe-area-inset-bottom)); box-shadow: 0 -8px 32px rgba(0,0,0,.12); }
.comment-consent-overlay .comment-consent-sheet:focus { outline: none; }
.comment-consent-overlay .comment-consent-grip { width: 36px; height: 4px; border-radius: 2px; background: #d8dde3; margin: 0 auto 12px; }
.comment-consent-overlay .comment-consent-close { float: right; border: 0; background: transparent; font-size: 26px; line-height: 1; color: #526074; cursor: pointer; padding: 4px; min-width: 36px; min-height: 36px; }
.comment-consent-overlay .comment-consent-sheet h2 { margin: 18px 0 20px; font-size: 19px; line-height: 1.5; letter-spacing: -.025em; }
.comment-consent-overlay .comment-consent-agreement { display: flex; align-items: flex-start; gap: 10px; clear: both; padding: 10px 0; font-size: 14px; line-height: 1.7; color: #475569; cursor: pointer; }
.comment-consent-overlay .comment-consent-checkbox { appearance: auto; flex: 0 0 20px; width: 20px; height: 20px; margin: 2px 0 0; accent-color: #263b4e; cursor: pointer; }
.comment-consent-overlay .comment-consent-agreement a { color: #263b4e; text-decoration: underline; text-underline-offset: 3px; }
.comment-consent-overlay .comment-consent-error { color: #b91c1c; margin: 10px 0; font-size: 13px; line-height: 1.5; }
.comment-consent-overlay .comment-consent-confirm { display: block; width: 100%; min-height: 48px; margin-top: 20px; border: 0; border-radius: 9px; background: #263b4e; color: #fff; font: inherit; font-size: 15px; font-weight: 600; cursor: pointer; }
.comment-consent-overlay .comment-consent-confirm:disabled { background: #e8edf1; color: #687787; cursor: default; }
.comment-consent-overlay .comment-consent-sheet[aria-busy="true"] .comment-consent-confirm { cursor: wait; }
.comment-consent-overlay .comment-consent-sheet :is(button, input, a):focus-visible { outline: 2px solid #075985; outline-offset: 3px; }
@media (min-width: 700px) { .comment-consent-overlay .comment-consent-sheet { bottom: 50%; transform: translate(-50%, 50%); border-radius: 16px; } }
