.cookie-dialog { width: min(560px, calc(100vw - 32px)); max-height: calc(100dvh - 32px); box-sizing: border-box; margin: auto; padding: clamp(22px, 4vw, 34px); color: #f4f7f9; background: #101a22; border: 1px solid #445563; border-radius: 20px; box-shadow: 0 32px 100px #0009; overflow: auto; overscroll-behavior: contain; }
.cookie-dialog::backdrop { background: #03090db3; backdrop-filter: blur(5px); }
.cookie-dialog[open] { animation: consent-enter .22s ease-out both; }
.cookie-brand { display: flex; align-items: center; gap: 12px; margin-bottom: 20px; color: #b6c9d8; font-size: 12px; font-weight: 650; letter-spacing: .12em; text-transform: uppercase; }
.cookie-brand img { width: 36px; height: 36px; border-radius: 8px; }
.cookie-dialog h2 { margin: 0 0 14px; font-size: clamp(27px, 5vw, 36px); line-height: 1.08; letter-spacing: -.035em; color: #8bbfff; }
.cookie-dialog p { margin: 0 0 14px; font-size: 15px; line-height: 1.6; color: #d3dce3; }
.cookie-dialog details { border-block: 1px solid #364653; margin: 20px 0; padding: 14px 0; }
.cookie-dialog summary { cursor: pointer; font-size: 15px; font-weight: 650; min-height: 24px; }
.cookie-dialog details p { margin: 14px 0 0; font-size: 14px; }
.cookie-dialog .cookie-status { font-size: 13px; color: #a8bbc9; }
.cookie-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.cookie-choice { appearance: none; min-height: 48px; padding: 12px 14px; border: 1px solid #6687a4; border-radius: 12px; background: #19334b; color: #f4f7f9; font: inherit; font-size: 15px; font-weight: 650; line-height: 1.3; cursor: pointer; transition: background .16s ease, border-color .16s ease, transform .16s ease; }
@media (hover: hover) { .cookie-choice:hover { background: #244b6b; border-color: #8bbfff; transform: translateY(-1px); } }
.cookie-choice:active { transform: scale(.98); }
.cookie-dialog :focus-visible, .cookie-settings:focus-visible { outline: 3px solid #8bbfff; outline-offset: 4px; }
.cookie-links { display: flex; flex-wrap: wrap; gap: 8px 20px; margin-top: 20px; font-size: 13px; }
.cookie-links a { color: #d3dce3; text-decoration: underline; text-underline-offset: 3px; }
.cookie-settings { appearance: none; padding: 0; border: 0; background: transparent; color: inherit; font: inherit; cursor: pointer; text-align: left; min-height: 44px; }
.cookie-dialog [hidden], .cookie-settings[hidden] { display: none !important; }
.cookie-dialog .cookie-error { color: #ffb6b6; margin-top: 16px; }
@keyframes consent-enter { from { opacity: 0; transform: translateY(12px) scale(.985); } to { opacity: 1; transform: none; } }
@media (max-width: 440px) { .cookie-actions { grid-template-columns: 1fr; } .cookie-dialog { padding: 22px; } }
@media (prefers-reduced-motion: reduce) { .cookie-dialog[open] { animation: none; } .cookie-choice { transition: none; transform: none !important; } .cookie-dialog::backdrop { backdrop-filter: none; } }
@media print { .cookie-dialog, .cookie-settings { display: none !important; } }
