/* Self-hosted; deliberately scoped. No fonts, URLs, imports or external assets. */
#ck9-consent { --ck9-bg: #151719; --ck9-text: #f6f3ed; --ck9-muted: #c6c8cc; --ck9-orange: #ff8a3d; color: var(--ck9-text); font-family: inherit; font-size: 1rem; line-height: 1.5; }
#ck9-consent *, #ck9-consent *::before, #ck9-consent *::after { box-sizing: border-box; }
#ck9-consent [hidden] { display: none !important; }
#ck9-consent-dialog:not([open]) { display: none !important; }
#ck9-consent .ck9-consent-banner { position: fixed; z-index: 10050; inset: auto 1rem 1rem; max-width: 78rem; margin: 0 auto; padding: 1.4rem; background: var(--ck9-bg); border: 1px solid #5d4b3f; border-top: 3px solid var(--ck9-orange); border-radius: 1rem; box-shadow: 0 1rem 4rem #0008; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 1.3rem; align-items: center; max-height: 70dvh; overflow: auto; }
#ck9-consent .ck9-consent-kicker { color: var(--ck9-orange); font-size: .75rem; font-weight: 800; letter-spacing: .14em; margin: 0 0 .4rem; }
#ck9-consent h2 { color: var(--ck9-text); font-size: 1.35rem; line-height: 1.25; text-transform: none; margin: 0 0 .75rem; }
#ck9-consent p { color: var(--ck9-muted); margin: 0 0 .7rem; }
#ck9-consent .ck9-consent-actions { display: flex; gap: .65rem; flex-wrap: wrap; }
#ck9-consent .ck9-consent-button { appearance: none; flex: 1 1 9rem; min-height: 48px; padding: .8rem 1rem; border: 2px solid var(--ck9-orange); border-radius: .5rem; background: var(--ck9-orange); color: #17120e; font: inherit; font-weight: 800; text-align: center; cursor: pointer; white-space: normal; box-shadow: none; text-transform: none; }
#ck9-consent .ck9-consent-button:hover { background: #ffad74; border-color: #ffad74; }
#ck9-consent :is(button, a, input):focus-visible { outline: 3px solid #fff; outline-offset: 4px; }
#ck9-consent .ck9-consent-link, #ck9-consent a { color: var(--ck9-text); text-decoration: underline; text-underline-offset: .2em; }
#ck9-consent .ck9-consent-link { appearance: none; background: transparent; border: 0; font: inherit; cursor: pointer; min-height: 44px; padding: .5rem 0; }
#ck9-consent .ck9-consent-dialog { width: min(42rem, calc(100% - 2rem)); max-height: calc(100dvh - 2rem); overflow: auto; color: var(--ck9-text); background: var(--ck9-bg); border: 1px solid #5d4b3f; border-top: 3px solid var(--ck9-orange); border-radius: 1rem; padding: 1.5rem; margin: auto; box-shadow: 0 1rem 4rem #0009; }
#ck9-consent-dialog::backdrop { background: #08090bc4; }
#ck9-consent .ck9-consent-dialog-top { display: flex; justify-content: space-between; align-items: start; gap: 1rem; }
#ck9-consent .ck9-consent-close { appearance: none; font: inherit; background: transparent; border: 1px solid #81858a; color: var(--ck9-text); border-radius: .4rem; cursor: pointer; min-height: 44px; padding: .5rem .7rem; }
#ck9-consent .ck9-consent-category { display: flex; justify-content: space-between; gap: 1rem; padding: 1rem 0; border-top: 1px solid #474b50; }
#ck9-consent .ck9-consent-category strong { display: block; color: var(--ck9-text); }
#ck9-consent .ck9-consent-category p { font-size: .9rem; margin: .35rem 0 0; }
#ck9-consent .ck9-consent-check { display: flex; align-items: center; gap: .45rem; flex-shrink: 0; color: var(--ck9-muted); }
#ck9-consent input[type='checkbox'] { width: 1.3rem; height: 1.3rem; accent-color: var(--ck9-orange); }
#ck9-consent .ck9-consent-error { color: #fff; background: #64320e; border: 1px solid var(--ck9-orange); padding: .75rem; border-radius: .4rem; }
#ck9-consent .ck9-consent-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
@media (max-width: 1100px) { #ck9-consent .ck9-consent-banner { grid-template-columns: 1fr; } }
@media (max-width: 540px) { #ck9-consent .ck9-consent-banner { inset: auto .5rem .5rem; padding: 1rem; gap: .8rem; } #ck9-consent .ck9-consent-actions { flex-direction: column; } #ck9-consent .ck9-consent-button { flex-basis: auto; width: 100%; } #ck9-consent .ck9-consent-dialog { padding: 1rem; } #ck9-consent .ck9-consent-category { flex-wrap: wrap; } }
@media (prefers-reduced-motion: reduce) { #ck9-consent * { transition: none !important; animation: none !important; scroll-behavior: auto !important; } }
@media print { #ck9-consent { display: none !important; } }
