.footer-row { justify-content: center; text-align: center; }
.footer a { color: #71c8ff; }
.cookie-preferences-button,.inline-cookie-link { padding: 0; border: 0; background: none; color: #71c8ff; text-decoration: underline; cursor: pointer; }
.cookie-preferences-button { font-size: 13px; }
.footer-row > div { width: 100%; }
.footer-legal { display: flex; align-items: center; justify-content: center; gap: 8px; margin-top: 12px; }
.footer-legal a { color: #71c8ff; text-decoration: underline; text-underline-offset: 2px; }
.external-media-paused { min-height: inherit; display: grid; place-content: center; padding: 32px; text-align: center; background: #071722; color: #c5d0d8; }
.settings-video .external-media-paused,.scenery-map .external-media-paused { height: 100%; min-height: inherit; }
.external-media-paused h3 { margin: 0 0 8px; color: #fff; font-size: 1.15rem; }
.external-media-paused p { margin: 0; }
.cookie-dialog { width: min(760px,calc(100% - 28px)); max-height: min(820px,calc(100dvh - 28px)); padding: 0; border: 0; border-radius: 12px; background: #fff; color: #171717; box-shadow: 0 30px 90px rgba(0,0,0,.5); }
.cookie-dialog::backdrop { background: rgba(0,0,0,.72); backdrop-filter: blur(3px); }
.cookie-dialog-panel { position: relative; padding: clamp(26px,5vw,48px); }
.cookie-dialog h2 { margin: 0 44px 28px 0; font-size: clamp(28px,4vw,38px); }
.cookie-close { position: absolute; top: 20px; right: 24px; width: 42px; height: 42px; border: 0; background: transparent; color: #111; font-size: 36px; line-height: 1; cursor: pointer; }
.cookie-option { display: grid; grid-template-columns: 1fr auto; gap: 28px; align-items: start; padding: 24px 0; border-top: 1px solid #c6c6c6; }
.cookie-option:first-of-type { border-top: 0; padding-top: 0; }
.cookie-option h3 { margin: 0 0 8px; font-size: 20px; }
.cookie-option p { margin: 0; max-width: 570px; color: #3d3d3d; }
.cookie-option strong { white-space: nowrap; font-size: 14px; }
.cookie-switch { display: flex; align-items: center; gap: 10px; cursor: pointer; }
.cookie-switch input { position: absolute; opacity: 0; pointer-events: none; }
.cookie-switch i { position: relative; width: 46px; height: 26px; border-radius: 99px; background: #777; transition: background .2s; }
.cookie-switch i::after { content: ''; position: absolute; width: 20px; height: 20px; top: 3px; left: 3px; border-radius: 50%; background: #fff; transition: transform .2s; }
.cookie-switch input:checked + i { background: #168dec; }
.cookie-switch input:checked + i::after { transform: translateX(20px); }
.cookie-switch input:focus-visible + i { outline: 3px solid #111; outline-offset: 3px; }
.cookie-dialog-actions,.cookie-banner-actions { display: flex; justify-content: flex-end; gap: 10px; flex-wrap: wrap; }
.cookie-dialog-actions { padding-top: 28px; border-top: 1px solid #c6c6c6; }
.cookie-primary,.cookie-secondary,.cookie-banner button { min-height: 44px; padding: 10px 18px; border-radius: 7px; font-weight: 800; cursor: pointer; }
.cookie-primary { border: 1px solid #168dec; background: #168dec; color: #fff; }
.cookie-secondary,.cookie-banner button:not(.cookie-primary) { border: 1px solid #536a7a; background: transparent; color: inherit; }
.cookie-banner { position: fixed; z-index: 50; left: 18px; right: 18px; bottom: 18px; display: flex; align-items: center; justify-content: space-between; gap: 24px; max-width: 1120px; margin: auto; padding: 20px 22px; border: 1px solid #496273; border-radius: 10px; background: #071722; color: #f4f8fb; box-shadow: 0 20px 60px rgba(0,0,0,.45); }
.cookie-banner[hidden] { display: none; }
.cookie-banner strong { font-size: 17px; }
.cookie-banner p { margin: 4px 0 0; color: #c5d0d8; font-size: 14px; }
.inline-cookie-link { font: inherit; }
@media(max-width:720px){.cookie-banner{align-items:flex-start;flex-direction:column}.cookie-banner-actions{width:100%;justify-content:stretch}.cookie-banner-actions button{flex:1}.cookie-option{grid-template-columns:1fr}.cookie-switch{justify-self:start}.cookie-dialog-actions{justify-content:stretch}.cookie-dialog-actions button{flex:1}.footer-row{align-items:center}}
