/* ============ LGPD & COOKIE CONSENT (APPLE GLASSMORPHISM) ============ */
  .lgpd-banner{
    position:fixed; bottom:24px; left:24px; z-index:9990;
    max-width:480px; width:calc(100% - 48px);
    background:rgba(255, 255, 255, 0.88);
    border:1px solid rgba(0, 0, 0, 0.1);
    border-radius:22px; padding:22px 24px 20px;
    box-shadow:inset 0 1px 1.5px rgba(255,255,255,0.9), 0 20px 50px -10px rgba(0,0,0,0.18);
    backdrop-filter:blur(24px) saturate(190%);
    -webkit-backdrop-filter:blur(24px) saturate(190%);
    transform:translateY(130%); opacity:0; visibility:hidden;
    transition:transform .45s cubic-bezier(0.16,1,0.3,1), opacity .4s ease, visibility .4s ease;
  }
  html.dark-mode .lgpd-banner{
    background:rgba(21, 28, 38, 0.88);
    border-color:rgba(255, 255, 255, 0.12);
    box-shadow:inset 0 1px 1px rgba(255,255,255,0.15), 0 24px 60px -15px rgba(0,0,0,0.65);
  }
  .lgpd-banner.active{transform:translateY(0); opacity:1; visibility:visible;}
  .lgpd-header{display:flex; align-items:center; gap:9px; margin-bottom:10px;}
  .lgpd-badge{
    display:inline-flex; align-items:center; gap:5px;
    font-family:var(--font-mono); font-size:11px; font-weight:600; text-transform:uppercase;
    color:var(--green-soft); letter-spacing:.04em;
  }
  .lgpd-badge svg{width:13px; height:13px; color:var(--green-soft);}
  .lgpd-title{font-size:15px; font-weight:700; color:var(--text); margin:0 0 6px;}
  .lgpd-text{font-size:13px; line-height:1.55; color:var(--text-muted); margin:0 0 16px;}
  .lgpd-actions{display:flex; align-items:center; gap:8px; flex-wrap:wrap;}
  .lgpd-actions .btn{padding:9px 16px; font-size:13px;}
  .lgpd-link-btn{
    background:none; border:none; color:var(--text-faint); font-size:12px; text-decoration:underline;
    cursor:pointer; padding:6px 8px; margin-left:auto; font-family:var(--font-body);
    transition:color .2s ease;
  }
  .lgpd-link-btn:hover{color:var(--green-soft);}

  /* LGPD Policy & Preferences Modal */
  .lgpd-modal-backdrop{
    position:fixed; inset:0; z-index:9999;
    background:rgba(10, 15, 22, 0.65);
    backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px);
    display:flex; align-items:center; justify-content:center; padding:20px;
    opacity:0; visibility:hidden; transition:opacity .3s ease, visibility .3s ease;
  }
  .lgpd-modal-backdrop.open{opacity:1; visibility:visible;}
  .lgpd-modal{
    background:var(--surface); border:1px solid var(--border); border-radius:24px;
    max-width:680px; width:100%; max-height:88vh; display:flex; flex-direction:column;
    box-shadow:0 30px 80px -20px rgba(0,0,0,0.45);
    transform:scale(0.94) translateY(12px); transition:transform .35s cubic-bezier(0.16,1,0.3,1);
    overflow:hidden;
  }
  .lgpd-modal-backdrop.open .lgpd-modal{transform:scale(1) translateY(0);}
  .lgpd-modal-head{
    padding:22px 26px 18px; border-bottom:1px solid var(--border-soft);
    display:flex; justify-content:space-between; align-items:center;
  }
  .lgpd-modal-head h3{font-size:18px; font-weight:700; margin:0; display:flex; align-items:center; gap:8px;}
  .lgpd-modal-close{
    width:32px; height:32px; border-radius:50%; background:var(--surface-2); border:1px solid var(--border);
    color:var(--text-muted); cursor:pointer; display:flex; align-items:center; justify-content:center;
    font-size:16px; transition:all .2s ease;
  }
  .lgpd-modal-close:hover{color:var(--text); border-color:var(--green-soft);}
  .lgpd-modal-body{padding:22px 26px; overflow-y:auto; font-size:13.5px; line-height:1.65; color:var(--text-muted);}
  .lgpd-modal-body h4{color:var(--text); font-size:15px; margin:18px 0 8px; font-weight:600;}
  .lgpd-modal-body h4:first-child{margin-top:0;}
  .lgpd-modal-body p{margin-bottom:14px;}
  .lgpd-category-card{
    background:var(--surface-2); border:1px solid var(--border-soft); border-radius:14px;
    padding:14px 16px; margin-bottom:12px;
  }
  .lgpd-cat-head{display:flex; justify-content:space-between; align-items:center; margin-bottom:6px;}
  .lgpd-cat-head strong{color:var(--text); font-size:14px;}
  .lgpd-cat-tag{font-family:var(--font-mono); font-size:10.5px; color:var(--green-soft); font-weight:600; text-transform:uppercase;}
  .lgpd-switch{position:relative; width:40px; height:22px;}
  .lgpd-switch input{opacity:0; width:0; height:0;}
  .lgpd-slider{
    position:absolute; inset:0; background:#94a3b8; border-radius:22px; cursor:pointer;
    transition:all .3s ease;
  }
  .lgpd-slider::before{
    content:''; position:absolute; height:16px; width:16px; left:3px; bottom:3px;
    background:#fff; border-radius:50%; transition:all .3s ease;
  }
  .lgpd-switch input:checked + .lgpd-slider{background:var(--green);}
  .lgpd-switch input:checked + .lgpd-slider::before{transform:translateX(18px);}
  .lgpd-switch input:disabled + .lgpd-slider{cursor:not-allowed; opacity:0.75;}
  .lgpd-modal-foot{
    padding:16px 26px; border-top:1px solid var(--border-soft);
    display:flex; justify-content:flex-end; gap:10px; background:var(--surface-2);
  }
  @media (max-width:600px){
    .lgpd-banner{left:16px; right:16px; bottom:16px; width:auto; padding:18px;}
    .lgpd-actions{flex-direction:column; align-items:stretch;}
    .lgpd-actions .btn{width:100%;}
    .lgpd-link-btn{margin:4px auto 0; text-align:center;}
  }
