#th-cookie-controls { font-family: Inter, system-ui, sans-serif; color: #18231f; font-size: 14px; line-height: 1.55; }
#th-cookie-controls [hidden] { display: none !important; }
#th-cookie-controls *, #th-cookie-controls *::before, #th-cookie-controls *::after { box-sizing: border-box; }
#th-cookie-banner { position: fixed; left: 18px; bottom: 62px; width: min(400px, calc(100vw - 36px)); max-height: calc(100dvh - 100px); overflow-y: auto; padding: 14px; background: #fff; border: 1px solid #b9c8be; border-radius: 15px; box-shadow: 0 10px 45px #13251c30; z-index: 10040; }
#th-cookie-controls h2 { color: #18231f; font: 700 16px/1.3 Inter, system-ui, sans-serif; margin: 0 0 6px; letter-spacing: -.02em; }
#th-cookie-controls h3 { color: #18231f; font: 700 15px/1.5 Inter, system-ui, sans-serif; margin: 20px 0 6px; }
#th-cookie-controls h3 span { display: inline-block; color: #3f594b; font-size: 12px; font-weight: 500; margin-left: 10px; }
#th-cookie-controls p { font-size: 13px; line-height: 1.45; margin: 0 0 10px; color: #405149; }
#th-cookie-controls button { appearance: none; font: 600 13px/1.4 Inter, system-ui, sans-serif; color: #183b2a; background: #f3f7f3; border: 1px solid #8fa799; border-radius: 8px; padding: 11px 14px; min-height: 44px; cursor: pointer; text-transform: none; letter-spacing: normal; box-shadow: none; }
#th-cookie-controls button:hover { background: #e6eee7; }
#th-cookie-controls button:focus-visible, #th-cookie-controls a:focus-visible { outline: 3px solid #207047; outline-offset: 3px; }
#th-cookie-controls a { color: #245c3d; text-decoration: underline; text-underline-offset: 3px; font-size: 13px; }
#th-cookie-controls .th-cookie-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 10px 0 4px; }
#th-cookie-controls .th-cookie-actions button { width: 100%; }
#th-cookie-controls .th-cookie-toggle { display: flex; align-items: center; gap: 10px; min-height: 44px; font-size: 14px; cursor: pointer; }
#th-cookie-controls .th-cookie-toggle input { appearance: auto; width: 20px; height: 20px; flex: 0 0 20px; accent-color: #245c3d; }
#th-cookie-controls input:focus-visible { outline: 3px solid #207047; outline-offset: 3px; }
#th-cookie-controls [data-th-cookie-all], #th-cookie-controls [data-th-cookie-save] { width: 100%; margin-top: 8px; }
#th-cookie-controls .th-cookie-links { display: flex; gap: 16px; align-items: center; justify-content: space-between; flex-wrap: wrap; }
#th-cookie-controls .th-cookie-links button { border: 0; background: transparent; padding: 10px 0; font-size: 12px; text-decoration: underline; }
#th-cookie-controls #th-cookie-settings { position: fixed; left: 18px; bottom: 12px; z-index: 10030; min-height: 38px; padding: 8px 12px; color: var(--text, #183b2a); background: var(--card, #fff); border-color: var(--border-2, #8fa799); box-shadow: 0 2px 10px #13251c15; }
footer > .th-cookie-footer-link { font-size: 11px; }
.th-cookie-footer-link { cursor: pointer; }
#th-cookie-dialog { width: min(500px, calc(100vw - 28px)); max-height: calc(100dvh - 40px); overflow-y: auto; padding: 18px; color: #18231f; background: #fff; border: 1px solid #b9c8be; border-radius: 16px; box-shadow: 0 18px 70px #13251c35; }
#th-cookie-dialog::backdrop { background: #101d1666; }
#th-cookie-controls .th-cookie-heading { display: flex; align-items: start; justify-content: space-between; gap: 14px; }
#th-cookie-controls #th-cookie-close { min-height: 36px; padding: 6px 10px; }
#th-cookie-feedback { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
@media (max-width: 600px) {
  #th-cookie-banner { left: 10px; bottom: calc(64px + env(safe-area-inset-bottom, 0px)); width: calc(100vw - 20px); padding: 12px; max-height: calc(100dvh - 90px); }
  #th-cookie-controls #th-cookie-settings { left: 10px; bottom: calc(12px + env(safe-area-inset-bottom, 0px)); }
  #th-cookie-controls .th-cookie-actions { gap: 8px; }
  #th-cookie-controls .th-cookie-actions button { padding: 10px 8px; }
  #th-cookie-dialog { padding: 20px; }
}
