body { padding-bottom: var(--cookie-space, 0px); }
.cookie-banner { position: fixed; z-index: 1100; bottom: max(12px, env(safe-area-inset-bottom)); left: 16px; right: 16px; max-width: 1150px; margin: auto; padding: 18px 22px; border: 1px solid #344556; border-radius: 8px; background: #0f1318; box-shadow: 0 8px 40px #0008; display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 16px 24px; color: var(--text); font-size: .875rem; line-height: 1.5; max-height: 75dvh; overflow-y: auto; overscroll-behavior: contain; }
.cookie-banner[hidden], .cookie-details[hidden] { display: none; }
.cookie-banner strong { font-size: .95rem; }
.cookie-banner p { margin: 5px 0 0; color: #b9c2cc; font-size: inherit; line-height: inherit; }
.cookie-banner a, .cookie-footer a { color: var(--blue-2); text-decoration: underline; text-underline-offset: 3px; }
.cookie-actions { display: flex; gap: 8px; flex-wrap: wrap; }
.cookie-actions button { appearance: none; background: #151e29; color: #b7ddff; border: 1px solid #659fce; border-radius: 4px; min-height: 44px; padding: 9px 12px; font: inherit; font-weight: 650; cursor: pointer; }
.cookie-actions button:hover { background: #223448; }
.cookie-banner :focus-visible, .cookie-footer :focus-visible { outline: 2px solid var(--blue-2); outline-offset: 3px; }
.cookie-details { grid-column: 1 / -1; border-top: 1px solid var(--line); padding-top: 14px; }
.cookie-option { display: flex; gap: 12px; align-items: flex-start; margin: 16px 0; color: #b9c2cc; cursor: pointer; }
.cookie-option input { width: 22px; height: 22px; flex-shrink: 0; accent-color: var(--blue); margin: 0; }
.cookie-banner .cookie-note { margin: 12px 0; font-size: .8rem; }
.cookie-footer { display: flex; flex-wrap: wrap; gap: 8px 20px; margin-top: 20px; font-size: .8rem; }
.cookie-footer a { display: inline-flex; align-items: center; min-height: 44px; }
.cookie-policy { max-width: 850px; padding-block: 64px; }
.cookie-policy h1 { font-size: clamp(2rem, 6vw, 3.25rem); }
.cookie-policy h2 { margin-top: 36px; font-size: 1.4rem; }
.cookie-policy p, .cookie-policy li { color: var(--muted); }
.cookie-policy a { color: var(--blue-2); }
.cookie-table { width: 100%; border-collapse: collapse; font-size: .875rem; }
.cookie-table th, .cookie-table td { border-bottom: 1px solid var(--line); padding: 12px 10px; text-align: left; vertical-align: top; overflow-wrap: anywhere; }
.cookie-table td { color: var(--muted); }
@media (max-width: 1000px) { .cookie-banner { grid-template-columns: 1fr; gap: 12px; } }
@media (max-width: 600px) {
  .cookie-banner { left: 8px; right: 8px; padding: 14px; font-size: .8125rem; }
  .cookie-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
  .cookie-actions [data-cookie-settings] { grid-column: 1 / -1; }
  .cookie-table th, .cookie-table td { padding: 10px 5px; font-size: .75rem; }
}
