.cookie-banner{position:fixed;bottom:24px;right:24px;max-width:480px;width:calc(100% - 48px);z-index:99998;background:rgba(15,23,42,0.94);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,0.12);border-radius:20px;box-shadow:0 25px 50px -12px rgba(0,0,0,0.6),0 0 0 1px rgba(255,255,255,0.05);padding:24px;color:var(--text-primary,#f8fafc);animation:cookieSlideUp 0.4s cubic-bezier(0.16,1,0.3,1) forwards;transition:opacity 0.3s ease,transform 0.3s ease}[data-theme="light"] .cookie-banner{background:rgba(255,255,255,0.96);border-color:rgba(0,0,0,0.08);box-shadow:0 20px 40px -10px rgba(0,0,0,0.15),0 0 0 1px rgba(0,0,0,0.05);color:#0f172a}@keyframes cookieSlideUp{from{opacity:0;transform:translateY(30px) scale(0.96)}to{opacity:1;transform:translateY(0) scale(1)}}.cookie-banner.closing{opacity:0;transform:translateY(20px) scale(0.96);pointer-events:none}.cookie-banner-inner{display:flex;flex-direction:column;gap:14px}.cookie-banner-header{display:flex;align-items:center;gap:14px}.cookie-icon-wrapper{width:46px;height:46px;border-radius:14px;background:linear-gradient(135deg,rgba(99,102,241,0.2),rgba(168,85,247,0.2));border:1px solid rgba(99,102,241,0.3);display:flex;align-items:center;justify-content:center;flex-shrink:0}.cookie-icon{font-size:24px;animation:cookiePulse 3s ease-in-out infinite}@keyframes cookiePulse{0%,100%{transform:scale(1) rotate(0deg)}50%{transform:scale(1.08) rotate(5deg)}}.cookie-banner-title-box{display:flex;flex-direction:column;gap:3px}.cookie-banner-title{margin:0;font-size:16px;font-weight:700;line-height:1.3;color:inherit}.cookie-compliance-pill{display:inline-block;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:0.05em;color:#10b981}.cookie-banner-text{margin:0;font-size:13.5px;line-height:1.55;color:var(--text-secondary,#94a3b8)}[data-theme="light"] .cookie-banner-text{color:#475569}.cookie-privacy-link{color:#818cf8;text-decoration:underline;font-weight:500;margin-left:4px;transition:color 0.2s}.cookie-privacy-link:hover{color:#6366f1}.cookie-banner-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:4px}.btn-cookie-primary{background:linear-gradient(135deg,#6366f1 0%,#8b5cf6 100%);color:#ffffff !important;border:none;font-size:13.5px;font-weight:600;padding:10px 18px;border-radius:10px;cursor:pointer;display:inline-flex;align-items:center;gap:7px;transition:all 0.2s ease;box-shadow:0 4px 14px rgba(99,102,241,0.35)}.btn-cookie-primary:hover{transform:translateY(-1px);box-shadow:0 6px 20px rgba(99,102,241,0.45);background:linear-gradient(135deg,#4f46e5 0%,#7c3aed 100%)}.btn-cookie-secondary{background:rgba(255,255,255,0.08);color:var(--text-primary,#f1f5f9) !important;border:1px solid rgba(255,255,255,0.12);font-size:13.5px;font-weight:500;padding:10px 16px;border-radius:10px;cursor:pointer;transition:all 0.2s ease}[data-theme="light"] .btn-cookie-secondary{background:rgba(0,0,0,0.05);color:#0f172a !important;border-color:rgba(0,0,0,0.1)}.btn-cookie-secondary:hover{background:rgba(255,255,255,0.14);border-color:rgba(255,255,255,0.2)}[data-theme="light"] .btn-cookie-secondary:hover{background:rgba(0,0,0,0.08)}.btn-cookie-text{background:transparent;color:var(--text-muted,#94a3b8) !important;border:none;font-size:13px;font-weight:500;padding:8px 12px;cursor:pointer;display:inline-flex;align-items:center;gap:6px;border-radius:8px;transition:color 0.2s,background 0.2s;margin-left:auto}.btn-cookie-text:hover{color:#818cf8 !important;background:rgba(99,102,241,0.08)}.cookie-modal-overlay{position:fixed;inset:0;z-index:100000;background:rgba(0,0,0,0.7);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:20px;animation:cookieFadeIn 0.25s ease forwards}@keyframes cookieFadeIn{from{opacity:0}to{opacity:1}}.cookie-modal{background:#0f172a;border:1px solid rgba(255,255,255,0.12);border-radius:24px;max-width:580px;width:100%;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 30px 60px -15px rgba(0,0,0,0.7);animation:cookieModalZoom 0.3s cubic-bezier(0.16,1,0.3,1) forwards;overflow:hidden}[data-theme="light"] .cookie-modal{background:#ffffff;border-color:rgba(0,0,0,0.08);box-shadow:0 25px 50px -12px rgba(0,0,0,0.2)}@keyframes cookieModalZoom{from{opacity:0;transform:scale(0.92)}to{opacity:1;transform:scale(1)}}.cookie-modal-header{padding:24px 28px 18px;border-bottom:1px solid rgba(255,255,255,0.08);display:flex;align-items:flex-start;justify-content:space-between;gap:16px}[data-theme="light"] .cookie-modal-header{border-bottom-color:rgba(0,0,0,0.06)}.cookie-modal-title{margin:0 0 4px;font-size:18px;font-weight:700;color:var(--text-primary,#f8fafc)}[data-theme="light"] .cookie-modal-title{color:#0f172a}.cookie-modal-subtitle{margin:0;font-size:13px;line-height:1.5;color:var(--text-secondary,#94a3b8)}[data-theme="light"] .cookie-modal-subtitle{color:#64748b}.cookie-modal-close{background:rgba(255,255,255,0.06);border:none;color:var(--text-muted,#94a3b8);width:34px;height:34px;border-radius:10px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all 0.2s ease;flex-shrink:0}.cookie-modal-close:hover{background:rgba(255,255,255,0.12);color:#fff}[data-theme="light"] .cookie-modal-close{background:rgba(0,0,0,0.05)}[data-theme="light"] .cookie-modal-close:hover{background:rgba(0,0,0,0.1);color:#000}.cookie-modal-body{padding:20px 28px;overflow-y:auto;display:flex;flex-direction:column;gap:16px}.cookie-category-card{background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.08);border-radius:16px;padding:18px;transition:border-color 0.2s}[data-theme="light"] .cookie-category-card{background:#f8fafc;border-color:rgba(0,0,0,0.06)}.cookie-category-card:hover{border-color:rgba(99,102,241,0.3)}.cookie-category-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:8px}.cookie-category-info{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.cookie-category-title{margin:0;font-size:15px;font-weight:600;color:var(--text-primary,#f1f5f9)}[data-theme="light"] .cookie-category-title{color:#0f172a}.cookie-badge-always-active{background:rgba(16,185,129,0.15);color:#10b981;border:1px solid rgba(16,185,129,0.3);font-size:11px;font-weight:700;padding:3px 8px;border-radius:100px;letter-spacing:0.02em}.cookie-category-desc{margin:0;font-size:13px;line-height:1.5;color:var(--text-secondary,#94a3b8)}[data-theme="light"] .cookie-category-desc{color:#64748b}.cookie-switch-label{position:relative;display:inline-block;width:48px;height:26px;cursor:pointer;flex-shrink:0}.cookie-switch-label.disabled{cursor:not-allowed;opacity:0.85}.cookie-switch-label input{opacity:0;width:0;height:0}.cookie-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#334155;transition:0.3s;border-radius:34px}[data-theme="light"] .cookie-slider{background-color:#cbd5e1}.cookie-slider:before{position:absolute;content:"";height:20px;width:20px;left:3px;bottom:3px;background-color:white;transition:0.3s;border-radius:50%;box-shadow:0 2px 4px rgba(0,0,0,0.2)}.cookie-switch-label input:checked+.cookie-slider{background:linear-gradient(135deg,#6366f1 0%,#8b5cf6 100%)}.cookie-switch-label.disabled input:checked+.cookie-slider{background:#10b981}.cookie-switch-label input:checked+.cookie-slider:before{transform:translateX(22px)}.cookie-modal-footer{padding:18px 28px 24px;border-top:1px solid rgba(255,255,255,0.08);display:flex;justify-content:flex-end;gap:12px}[data-theme="light"] .cookie-modal-footer{border-top-color:rgba(0,0,0,0.06)}.cookie-fab{position:fixed;bottom:22px;left:22px;z-index:9998;background:rgba(15,23,42,0.85);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,0.12);border-radius:50px;padding:8px 14px 8px 10px;display:inline-flex;align-items:center;gap:8px;color:var(--text-primary,#e2e8f0);box-shadow:0 10px 25px -5px rgba(0,0,0,0.4);cursor:pointer;font-size:12px;font-weight:600;transition:all 0.25s cubic-bezier(0.16,1,0.3,1)}[data-theme="light"] .cookie-fab{background:rgba(255,255,255,0.9);border-color:rgba(0,0,0,0.1);color:#1e293b;box-shadow:0 10px 20px -5px rgba(0,0,0,0.12)}.cookie-fab:hover{transform:translateY(-2px) scale(1.03);border-color:rgba(99,102,241,0.4);box-shadow:0 14px 28px -5px rgba(99,102,241,0.3)}.cookie-fab-icon{font-size:16px}@media (max-width:640px){.cookie-banner{bottom:12px;left:12px;right:12px;width:calc(100% - 24px);padding:18px 16px;border-radius:16px}.cookie-banner-actions{flex-direction:column;width:100%}.cookie-banner-actions button{width:100%;justify-content:center}.btn-cookie-text{margin-left:0}.cookie-modal{max-height:92vh;border-radius:18px}.cookie-modal-header,.cookie-modal-body,.cookie-modal-footer{padding-left:18px;padding-right:18px}.cookie-fab-label{display:none}.cookie-fab{padding:10px;border-radius:50%}}