
    .policy-overlay {
      position: fixed;
      inset: 0;
      z-index: 80;
      display: grid;
      place-items: center;
      padding: 1.25rem;
      background: rgba(15, 23, 42, 0.55);
      backdrop-filter: blur(10px);
    }
    .policy-overlay.hidden {
      display: none;
    }
    .policy-overlay-card {
      width: min(720px, 100%);
      max-height: min(90vh, 880px);
      overflow: auto;
      border-radius: 1.4rem;
      background: #ffffff;
      border: 1px solid rgba(148, 163, 184, 0.2);
      box-shadow: 0 30px 80px rgba(15, 23, 42, 0.24);
      padding: 1.35rem;
      display: grid;
      gap: 1rem;
    }
    .policy-overlay-head {
      display: grid;
      gap: 0.35rem;
    }
    .policy-overlay-head h3 {
      margin: 0;
    }
    .policy-overlay-head p {
      margin: 0;
      color: var(--text-muted);
    }
    .policy-update-list {
      display: grid;
      gap: 0.85rem;
    }
    .policy-update-item {
      padding: 1rem;
      border-radius: 1rem;
      border: 1px solid rgba(14, 165, 233, 0.18);
      background: linear-gradient(135deg, rgba(240, 249, 255, 0.95), rgba(248, 250, 252, 0.98));
      display: grid;
      gap: 0.45rem;
    }
    .policy-update-item strong {
      display: block;
      margin-bottom: 0.15rem;
    }
    .policy-update-meta {
      display: flex;
      flex-wrap: wrap;
      gap: 0.5rem;
      color: #475569;
      font-size: 0.92rem;
    }
    .policy-update-chip {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      padding: 0.2rem 0.55rem;
      border-radius: 999px;
      background: rgba(14, 165, 233, 0.12);
      color: #0369a1;
      font-weight: 600;
      font-size: 0.78rem;
    }
    .policy-overlay-actions {
      display: flex;
      flex-wrap: wrap;
      gap: 0.75rem;
    }
    @media (max-width: 640px) {
      .policy-overlay-card {
        padding: 1rem;
      }
      .policy-overlay-actions {
        flex-direction: column;
      }
    }
  