.cookie-panel, .cookie-reopen { font-family: Outfit, sans-serif; color: #f5f5f5; background: #161616; border: 1px solid #777; box-shadow: 0 8px 32px #0008; z-index: 1000; }
.cookie-panel { position: fixed; bottom: 12px; left: 12px; width: min(480px, calc(100% - 24px)); max-height: calc(100dvh - 24px); overflow-y: auto; overscroll-behavior: contain; border-radius: 12px; padding: 14px; text-align: left; }
.cookie-panel h2 { font-size: 18px; line-height: 1.3; margin: 0 0 6px; letter-spacing: normal; }
.cookie-panel p { font-size: 13px; line-height: 1.45; margin: 0 0 10px; color: #dedede; }
.cookie-panel a { color: #d5ec56; text-decoration: underline; text-underline-offset: 3px; }
.cookie-actions { display: flex; flex-wrap: wrap; gap: 6px; }
.cookie-actions button, .cookie-reopen { min-height: 44px; padding: 8px 6px; border-radius: 8px; cursor: pointer; font: inherit; font-size: 13px; }
.cookie-actions button { flex: 1 1 0; background: #242424; border: 1px solid #aaa; color: #fff; }
.cookie-actions button[data-cookie="save"], .cookie-actions button[data-cookie="close"] { flex-basis: calc(50% - 6px); }
.cookie-actions button:hover, .cookie-reopen:hover { background: #383838; }
.cookie-panel label { display: flex; gap: 12px; align-items: center; min-height: 44px; font-size: 16px; margin-bottom: 12px; cursor: pointer; }
.cookie-panel input { width: 22px; height: 22px; flex-shrink: 0; accent-color: #bdd52b; }
.cookie-panel :focus-visible, .cookie-reopen:focus-visible { outline: 3px solid #d5ec56; outline-offset: 3px; }
.cookie-reopen { position: fixed; left: 16px; bottom: 12px; }
.cookie-panel [hidden], .cookie-panel[hidden], .cookie-reopen[hidden] { display: none !important; }
.cookie-panel .cookie-storage { margin: 16px 0 0; }
@media (max-width: 400px) { .cookie-panel { bottom: 8px; left: 8px; width: calc(100% - 16px); padding: 12px; } }
