.checkout-acknowledgement { margin-block: 1.25rem; padding: 1.1rem; border: 1px solid #c6d5c8; border-left: 4px solid #355541; border-radius: 12px; background: #f3f6ee; }
.checkout-acknowledgement h3 { font: 700 1rem/1.4 var(--gh-font-body, sans-serif); margin: 0 0 .75rem; }
.checkout-acknowledgement .consent { display: flex; gap: .75rem; align-items: flex-start; margin: 0; }
.checkout-acknowledgement input[type="checkbox"] { flex: 0 0 1.2rem; width: 1.2rem; height: 1.2rem; margin: .2rem 0 0; }
.checkout-policy-links { margin: .75rem 0 0; font-size: calc(.9rem * var(--gh-text-scale, 1)); }
.checkout-acknowledged { color: #355541; font-weight: 700; }
.checkout-visitor-count { display: inline-block; font: 500 calc(.95rem * var(--gh-text-scale, 1))/1.4 var(--gh-font-body, sans-serif); letter-spacing: normal; white-space: nowrap; margin-left: .3em; vertical-align: middle; }
.checkout-policy-open { overflow: hidden; }
.checkout-policy-dialog { width: min(780px, calc(100vw - 2rem)); max-width: none; max-height: min(88vh, 920px); padding: 0; border: 1px solid #cbd5c8; border-radius: 18px; color: #2b4234; background: #fffdf9; box-shadow: 0 24px 90px #142c2550; }
.checkout-policy-dialog[open] { display: flex; flex-direction: column; }
.checkout-policy-dialog::backdrop { background: #142c2599; }
.checkout-policy-dialog header, .checkout-policy-dialog footer { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1rem 1.25rem; background: #edf2e7; flex: 0 0 auto; }
.checkout-policy-dialog header { border-bottom: 1px solid #d6ded0; }
.checkout-policy-dialog header h2 { margin: 0; font-size: 1.4rem; }
.checkout-policy-dialog .button { width: auto; min-height: 44px; white-space: nowrap; }
.checkout-policy-body { padding: 1.25rem; overflow: auto; overscroll-behavior: contain; }
.checkout-policy-body section + section { margin-top: 1.5rem; }
.checkout-policy-body h3 { margin: 0 0 .5rem; }
.checkout-policy-body p { margin: .5rem 0 0; }
.checkout-policy-dialog footer { border-top: 1px solid #d6ded0; font-size: .9rem; }
.checkout-policy-dialog :focus-visible { outline: 3px solid #7c4c21; outline-offset: 3px; }
@media(max-width: 480px) { .checkout-policy-dialog header, .checkout-policy-dialog footer { padding: .85rem; gap: .6rem; } .checkout-policy-dialog header h2 { font-size: 1.1rem; } .checkout-policy-body { padding: 1rem; } }
