.cookie-banner{position:fixed;bottom:0;left:0;right:0;background:var(--bg-surface);box-shadow:0 -4px 20px rgba(0,0,0,.12),0 -8px 30px rgba(0,0,0,8%);z-index:9999;transform:translateY(100%);transition:transform .4s cubic-bezier(.4,0,.2,1);border-top:1px solid var(--border-subtle);pointer-events:none;max-height:calc(100dvh - 12px);overflow-y:auto;overscroll-behavior:contain}.cookie-banner.show{transform:translateY(0);pointer-events:auto}.cookie-banner-content{max-width:1200px;margin:0 auto;padding:20px 24px 18px;display:grid;gap:18px}.cookie-banner-header{display:grid;grid-template-columns:minmax(0,1fr)auto;gap:16px;align-items:start;padding-bottom:18px;border-bottom:1px solid var(--border-subtle)}.cookie-banner-intro{display:grid;grid-template-columns:minmax(180px,280px)minmax(0,1fr);gap:16px;align-items:center}.cookie-icon{width:100%;min-height:68px;border-radius:18px;background:linear-gradient(135deg,var(--accent) 0%,var(--primary-light) 100%);display:flex;align-items:center;justify-content:center;color:var(--primary);flex-shrink:0}.cookie-banner-copy{min-width:0}.cookie-banner-copy h3{font-size:1.15rem;font-weight:600;color:var(--text-primary);margin:0 0 6px;letter-spacing:-.01em}.cookie-banner-copy p{font-size:.9rem;color:var(--text-secondary);margin:0;line-height:1.45;max-width:52ch}.cookie-close{width:32px;height:32px;border-radius:8px;background:var(--bg-secondary);border:1px solid var(--border-subtle);color:var(--text-light);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;padding:0;flex-shrink:0}.cookie-close:hover{background:var(--border-subtle);color:var(--text-primary)}.cookie-types{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.cookie-type{display:grid;gap:10px;padding:16px 18px;background:var(--bg-secondary);border-radius:var(--radius-md);border:1px solid var(--border-subtle);transition:all .2s ease}.cookie-type:hover{border-color:var(--primary-light);background:var(--accent)}.cookie-type-top{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.cookie-type-header{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.cookie-type-name{font-size:.98rem;font-weight:600;color:var(--text-primary);line-height:1.3}.cookie-badge{font-size:.7rem;font-weight:600;padding:4px 10px;border-radius:99px;text-transform:uppercase;letter-spacing:.05em}.cookie-badge.obrigatorio{background:rgba(94,234,212,.18);color:var(--primary-dark);border:1px solid rgba(15,118,110,.22)}.cookie-badge.opcional{background:var(--bg-surface);color:var(--text-secondary);border:1px solid var(--border-subtle)}.cookie-type-desc{font-size:.84rem;color:var(--text-secondary);margin:0;line-height:1.45}.cookie-banner-footer{display:grid;grid-template-columns:minmax(0,1fr)auto;align-items:center;gap:14px 20px;padding-top:2px}.cookie-footer{min-width:0}.cookie-policy-link{font-size:.875rem;color:var(--primary);font-weight:500;text-decoration:none;transition:color .2s ease}.cookie-actions{display:flex;gap:12px;justify-content:flex-end;flex-wrap:wrap}.cookie-actions .btn{flex:initial;min-width:190px;padding:11px 22px;font-size:.95rem;line-height:1.2}.cookie-policy-link:hover{color:var(--primary-hover);text-decoration:none}.switch{position:relative;display:inline-block;width:52px;height:28px;flex-shrink:0}.switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--border-subtle);transition:.3s cubic-bezier(.4,0,.2,1);border-radius:28px}.slider:before{position:absolute;content:"";height:22px;width:22px;left:3px;bottom:3px;background-color:#fff;transition:.3s cubic-bezier(.4,0,.2,1);border-radius:50%;box-shadow:0 2px 4px rgba(0,0,0,.1)}input:checked+.slider{background-color:var(--primary)}input:checked+.slider:before{transform:translateX(24px);box-shadow:0 2px 6px rgba(0,0,0,.15)}input:disabled+.slider{opacity:.5;cursor:not-allowed}input:focus-visible+.slider{box-shadow:0 0 0 3px rgba(13,148,136,.2)}.cookie-settings-btn{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,8%);color:rgba(255,255,255,.7);border:1px solid rgba(255,255,255,.15);padding:10px 18px;border-radius:100px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.footer-disclaimer{position:relative}.cookie-icon-fixed-footer{position:absolute;left:24px;top:24px;background:0 0;border:none;appearance:none;-webkit-appearance:none;-moz-appearance:none;cursor:pointer;transition:all .3s cubic-bezier(.175,.885,.32,1.275);padding:8px;display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.6);opacity:.8;line-height:1;-webkit-tap-highlight-color:transparent}.cookie-icon-fixed-footer:hover{transform:scale(1.2);color:rgba(255,255,255,.9);filter:drop-shadow(0 4px 8px rgba(0,0,0,.2))}@media(max-width:768px){.cookie-icon-fixed-footer{position:static;margin:0 auto 8px;background:0 0;border:none;box-shadow:none;appearance:none;-webkit-appearance:none}}.cookie-settings-btn:hover{background:rgba(255,255,255,.15);color:var(--white);border-color:rgba(255,255,255,.3);transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.2)}.cookie-toggle-floating{position:fixed;bottom:24px;left:24px;z-index:9998;opacity:.8}.cookie-toggle-floating:hover{opacity:1}.cookie-toggle-floating .cookie-settings-btn{width:48px;height:48px;padding:0;justify-content:center;border-radius:50%;background:var(--dark-bg);border-color:rgba(255,255,255,.1);box-shadow:0 8px 24px rgba(0,0,0,.2)}.cookie-toggle-floating .btn-text{display:none}.cookie-settings-link-minimal{display:inline-flex;align-items:center;gap:6px;color:rgba(255,255,255,.45);font-size:.8rem;cursor:pointer;transition:all .2s ease;background:0 0;border:none;padding:4px 8px;border-radius:4px}.cookie-settings-link-minimal:hover{color:var(--primary-light);background:rgba(255,255,255,5%)}.cookie-settings-link-minimal svg{width:14px;height:14px;opacity:.7}@media(max-width:768px){.cookie-banner-content{padding:18px 16px 14px;gap:14px}.cookie-banner-header{grid-template-columns:minmax(0,1fr)auto;gap:12px;padding-bottom:14px}.cookie-banner-intro{grid-template-columns:minmax(0,1fr);gap:12px}.cookie-icon{min-height:52px;border-radius:16px}.cookie-close{width:30px;height:30px}.cookie-banner-copy h3{font-size:1.05rem}.cookie-banner-copy p{font-size:.85rem}.cookie-types{grid-template-columns:minmax(0,1fr);gap:10px}.cookie-type{padding:14px;gap:8px}.cookie-type-top{gap:12px}.cookie-type-header{gap:8px}.cookie-type-name{font-size:.95rem}.cookie-banner-footer{grid-template-columns:minmax(0,1fr);gap:12px;padding-top:0}.cookie-footer{text-align:center;order:2}.cookie-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.cookie-actions .btn{width:100%;min-width:0;padding:10px 14px;min-height:48px;font-size:.9rem}}