.cookie-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.5);z-index:9998;opacity:0;visibility:hidden;transition:opacity 0.3s ease,visibility 0.3s ease;}.cookie-overlay.active{opacity:1;visibility:visible;}.cookie-banner{position:fixed;bottom:0;left:0;right:0;background:#fff;box-shadow:0 -4px 20px rgba(0,0,0,0.15);z-index:9999;transform:translateY(100%);transition:transform 0.4s ease;max-height:90vh;overflow-y:auto;}.cookie-banner.active{transform:translateY(0);}.cookie-banner-content{max-width:1200px;margin:0 auto;padding:24px 30px;}.cookie-banner-header{display:flex;align-items:center;gap:12px;margin-bottom:16px;}.cookie-banner-header svg{flex-shrink:0;color:#1e3a5f;}.cookie-banner-header h3{font-size:1.25rem;font-weight:700;color:#1e3a5f;margin:0;}.cookie-banner-text{color:#555;font-size:0.95rem;line-height:1.6;margin-bottom:20px;}.cookie-banner-text a{color:#2563eb;text-decoration:underline;}.cookie-banner-text a:hover{color:#1d4ed8;}.cookie-categories{display:none;margin-bottom:24px;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden;}.cookie-categories.active{display:block;}.cookie-category{border-bottom:1px solid #e5e7eb;padding:16px 20px;}.cookie-category:last-child{border-bottom:none;}.cookie-category-header{display:flex;justify-content:space-between;align-items:center;cursor:pointer;}.cookie-category-info h4{font-size:1rem;font-weight:600;color:#1e3a5f;margin:0 0 4px 0;}.cookie-category-info p{font-size:0.85rem;color:#666;margin:0;}.cookie-category-toggle{position:relative;}.toggle-switch{position:relative;width:50px;height:26px;}.toggle-switch input{opacity:0;width:0;height:0;}.toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#ccc;transition:0.3s;border-radius:26px;}.toggle-slider:before{position:absolute;content:"";height:20px;width:20px;left:3px;bottom:3px;background-color:white;transition:0.3s;border-radius:50%;}.toggle-switch input:checked + .toggle-slider{background-color:#22c55e;}.toggle-switch input:checked + .toggle-slider:before{transform:translateX(24px);}.toggle-switch input:disabled + .toggle-slider{background-color:#22c55e;opacity:0.7;cursor:not-allowed;}.cookie-banner-buttons{display:flex;flex-wrap:wrap;gap:12px;align-items:center;}.cookie-btn{padding:12px 24px;border-radius:6px;font-size:0.95rem;font-weight:600;cursor:pointer;transition:all 0.2s ease;border:none;font-family:inherit;}.cookie-btn-accept{background:linear-gradient(135deg,#22c55e,#16a34a);color:white;}.cookie-btn-accept:hover{background:linear-gradient(135deg,#16a34a,#15803d);transform:translateY(-1px);}.cookie-btn-reject{background:#f3f4f6;color:#374151;border:1px solid #d1d5db;}.cookie-btn-reject:hover{background:#e5e7eb;}.cookie-btn-settings{background:transparent;color:#2563eb;padding:12px 16px;}.cookie-btn-settings:hover{background:#eff6ff;}.cookie-btn-save{background:linear-gradient(135deg,#1e3a5f,#2d4a6f);color:white;}.cookie-btn-save:hover{background:linear-gradient(135deg,#15293f,#1e3a5f);transform:translateY(-1px);}.cookie-privacy-notice{font-size:0.8rem;color:#888;margin-top:16px;padding-top:16px;border-top:1px solid #e5e7eb;}.cookie-privacy-notice svg{vertical-align:middle;margin-right:4px;}.cookie-settings-btn{position:fixed;bottom:20px;left:20px;width:50px;height:50px;border-radius:50%;background:linear-gradient(135deg,#1e3a5f,#2d4a6f);color:white;border:none;cursor:pointer;box-shadow:0 4px 12px rgba(0,0,0,0.2);z-index:9990;display:none;align-items:center;justify-content:center;transition:transform 0.2s ease,box-shadow 0.2s ease;}.cookie-settings-btn:hover{transform:scale(1.1);box-shadow:0 6px 16px rgba(0,0,0,0.25);}.cookie-settings-btn.active{display:flex;}@media (max-width:768px){.cookie-banner-content{padding:20px;} .cookie-banner-header h3{font-size:1.1rem;} .cookie-banner-text{font-size:0.9rem;} .cookie-banner-buttons{flex-direction:column;width:100%;} .cookie-btn{width:100%;text-align:center;} .cookie-category-header{flex-direction:column;align-items:flex-start;gap:12px;} .cookie-settings-btn{bottom:15px;left:15px;width:45px;height:45px;}}@keyframes slideUp{from{transform:translateY(100%);opacity:0;} to{transform:translateY(0);opacity:1;}}