.j8-cookie-banner{position:fixed;bottom:20px;left:20px;right:20px;max-width:480px;background:#fff;border-radius:16px;box-shadow:0 10px 40px rgba(102,126,234,0.25);z-index:9999;transform:translateY(150%);transition:transform 0.4s cubic-bezier(0.34,1.56,0.64,1);font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif}
.j8-cookie-banner.active{transform:translateY(0)}
.j8-cookie-main{padding:1.25rem 1.5rem}
.j8-cookie-header{display:flex;align-items:center;gap:0.75rem;margin-bottom:0.75rem}
.j8-cookie-icon{width:36px;height:36px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.25rem}
.j8-cookie-title{font-size:1rem;font-weight:700;color:#1e293b}
.j8-cookie-text{font-size:0.85rem;color:#64748b;line-height:1.5;margin-bottom:1rem}
.j8-cookie-text a{color:#667eea;text-decoration:none}
.j8-cookie-text a:hover{text-decoration:underline}
.j8-cookie-btns{display:flex;gap:0.5rem;flex-wrap:wrap}
.j8-btn{padding:0.6rem 1.2rem;border-radius:50px;font-weight:600;font-size:0.85rem;cursor:pointer;transition:all 0.3s;border:none;text-decoration:none}
.j8-btn-accept{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;box-shadow:0 4px 12px rgba(102,126,234,0.35)}
.j8-btn-accept:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(102,126,234,0.45)}
.j8-btn-settings{background:#f1f5f9;color:#64748b}
.j8-btn-settings:hover{background:#e2e8f0;color:#1e293b}
.j8-btn-reject{background:transparent;color:#94a3b8;padding:0.6rem 0.8rem}
.j8-btn-reject:hover{color:#ef4444}

/* Expanded Settings */
.j8-cookie-details{display:none;border-top:1px solid #e2e8f0;padding:1rem 1.5rem;background:#f8fafc;border-radius:0 0 16px 16px}
.j8-cookie-details.active{display:block;animation:j8FadeIn 0.3s}
@keyframes j8FadeIn{from{opacity:0}to{opacity:1}}
.j8-cat{display:flex;justify-content:space-between;align-items:center;padding:0.6rem 0;border-bottom:1px solid #e2e8f0}
.j8-cat:last-child{border-bottom:none}
.j8-cat-info{flex:1}
.j8-cat-name{font-size:0.85rem;font-weight:600;color:#1e293b;display:flex;align-items:center;gap:0.4rem}
.j8-cat-req{font-size:0.65rem;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;padding:0.1rem 0.4rem;border-radius:10px}
.j8-cat-desc{font-size:0.75rem;color:#94a3b8;margin-top:0.15rem}
.j8-toggle{position:relative;width:40px;height:22px}
.j8-toggle input{opacity:0;width:0;height:0}
.j8-toggle-slider{position:absolute;cursor:pointer;inset:0;background:#cbd5e1;border-radius:22px;transition:0.3s}
.j8-toggle-slider:before{content:"";position:absolute;height:16px;width:16px;left:3px;bottom:3px;background:#fff;border-radius:50%;transition:0.3s;box-shadow:0 1px 3px rgba(0,0,0,0.2)}
.j8-toggle input:checked+.j8-toggle-slider{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)}
.j8-toggle input:checked+.j8-toggle-slider:before{transform:translateX(18px)}
.j8-toggle input:disabled+.j8-toggle-slider{opacity:0.6;cursor:not-allowed}
.j8-save-row{display:flex;justify-content:flex-end;margin-top:0.75rem;padding-top:0.75rem;border-top:1px solid #e2e8f0}

/* Settings Button */
.j8-settings-btn{position:fixed;bottom:20px;left:20px;width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;border:none;cursor:pointer;box-shadow:0 4px 15px rgba(102,126,234,0.4);z-index:998;display:none;align-items:center;justify-content:center;font-size:1.2rem;transition:all 0.3s}
.j8-settings-btn:hover{transform:scale(1.1)}
.j8-settings-btn.active{display:flex}

/* Notification */
.j8-notify{position:fixed;bottom:80px;left:50%;transform:translateX(-50%);background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;padding:0.75rem 1.5rem;border-radius:50px;font-size:0.85rem;font-weight:600;z-index:10000;box-shadow:0 4px 15px rgba(102,126,234,0.4);animation:j8SlideUp 0.3s}
@keyframes j8SlideUp{from{opacity:0;transform:translateX(-50%) translateY(20px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}

/* Mobile */
@media(max-width:540px){
.j8-cookie-banner{left:10px;right:10px;bottom:10px}
.j8-cookie-main{padding:1rem}
.j8-cookie-btns{flex-direction:column}
.j8-btn{width:100%;text-align:center}
.j8-cookie-details{padding:0.75rem 1rem}
}