/* Cookie Banner */
.cookie-banner {
    position: fixed; left: 0; right: 0; bottom: 0; z-index: 99999;
    background: #fff; box-shadow: 0 -2px 12px rgba(0,0,0,.12);
    padding: 16px 24px; font-family: "Roboto", sans-serif; font-size: 14px;
    color: #333;
}
.cookie-banner__inner {
    max-width: 1200px; margin: 0 auto;
    display: flex; gap: 24px; align-items: center; flex-wrap: wrap;
}
.cookie-banner__text { flex: 1 1 480px; }
.cookie-banner__text strong { font-size: 15px; }
.cookie-banner__text p { margin: 6px 0 0; line-height: 1.5; }
.cookie-banner__text a { color: #4ca0b8; text-decoration: underline; }
.cookie-banner__actions { display: flex; gap: 8px; flex-wrap: wrap; }

/* Buttons */
.cookie-btn {
    padding: 9px 18px; border-radius: 4px; border: 1px solid transparent;
    cursor: pointer; font-size: 14px; font-family: inherit; transition: .2s;
}
.cookie-btn--primary { background: #4ca0b8; color: #fff; border-color: #4ca0b8; }
.cookie-btn--primary:hover { background: #3a849a; border-color: #3a849a; }
.cookie-btn--secondary { background: #fff; color: #333; border-color: #ccc; }
.cookie-btn--secondary:hover { background: #f2f2f2; }
.cookie-btn--link { background: transparent; color: #4ca0b8; text-decoration: underline; border: 0; padding-left: 0; }
.cookie-btn--link:hover { color: #3a849a; }

/* Modal */
.cookie-modal { position: fixed; inset: 0; z-index: 100000; font-family: "Roboto", sans-serif; }
.cookie-modal__backdrop { position: absolute; inset: 0; background: rgba(0,0,0,.55); }
.cookie-modal__dialog {
    position: relative; max-width: 720px; margin: 40px auto;
    background: #fff; border-radius: 8px; max-height: calc(100vh - 80px);
    display: flex; flex-direction: column; overflow: hidden;
    box-shadow: 0 10px 40px rgba(0,0,0,.25);
}
.cookie-modal__header {
    display: flex; justify-content: space-between; align-items: center;
    padding: 16px 24px; border-bottom: 1px solid #eee;
}
.cookie-modal__header h2 { margin: 0; font-size: 18px; font-weight: 500; color: #222; }
.cookie-modal__close {
    border: 0; background: transparent; font-size: 28px; line-height: 1;
    cursor: pointer; color: #999; padding: 0 4px;
}
.cookie-modal__close:hover { color: #333; }
.cookie-modal__body { padding: 16px 24px; overflow-y: auto; }
.cookie-modal__intro { color: #555; font-size: 13px; line-height: 1.5; margin: 0 0 12px; }
.cookie-modal__footer {
    padding: 16px 24px; border-top: 1px solid #eee;
    display: flex; justify-content: space-between; align-items: center;
    gap: 12px; flex-wrap: wrap; background: #fafafa;
}
.cookie-modal__footer > div { display: flex; gap: 8px; }

.cookie-option { padding: 14px 0; border-bottom: 1px solid #f0f0f0; }
.cookie-option:last-child { border-bottom: 0; }
.cookie-option__head { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.cookie-option__label { display: flex; align-items: center; gap: 8px; cursor: pointer; }
.cookie-option__label input { width: 16px; height: 16px; }
.cookie-option__badge {
    font-size: 12px; color: #666; background: #f2f2f2;
    padding: 2px 10px; border-radius: 10px; white-space: nowrap;
}
.cookie-option__desc { margin: 8px 0 0; font-size: 13px; color: #666; line-height: 1.5; }

/* Mobile */
@media (max-width: 640px) {
    .cookie-banner { padding: 12px 16px; }
    .cookie-banner__actions { width: 100%; }
    .cookie-banner__actions .cookie-btn { flex: 1; }
    .cookie-modal__dialog { margin: 16px; max-height: calc(100vh - 32px); }
    .cookie-modal__footer { flex-direction: column-reverse; align-items: stretch; }
    .cookie-modal__footer > div { width: 100%; }
    .cookie-modal__footer .cookie-btn { flex: 1; }
}
.cookie-policy { max-width: 900px; margin: 0 auto; line-height: 1.6; color: #222; }
.cookie-policy h1 { font-size: 26px; margin: 20px 0; }
.cookie-policy h2 { font-size: 20px; margin: 24px 0 12px; }
.cookie-policy h3 { font-size: 16px; margin: 18px 0 8px; }
.cookie-policy p { margin: 10px 0; }
.cookie-policy ul { padding-left: 24px; margin: 10px 0; }
.cookie-policy ul li { margin: 4px 0; }
.cookie-policy a { color: #4ca0b8; text-decoration: underline; }