/* ==========================================================================
   Modal de políticas legales (Privacy / Refund / Terms)
   Contenido cargado dinámicamente desde assets/policies/*.html
   ========================================================================== */

.foot-links{
  display:flex;flex-wrap:wrap;gap:4px 18px;justify-content:center;
  margin-top:14px;
}
.foot-link{
  background:none;border:none;padding:2px 0;cursor:pointer;
  font-family:var(--font-body);font-size:.82rem;color:var(--mint-dim);
  text-decoration:underline;text-underline-offset:3px;
}
.foot-link:hover{color:var(--lime-bright)}

.policy-modal{
  position:fixed;inset:0;z-index:200;display:none;
}
.policy-modal.open{display:block}
.policy-modal-backdrop{
  position:absolute;inset:0;background:rgba(4,14,10,.72);backdrop-filter:blur(3px);
}
.policy-modal-panel{
  position:relative;z-index:1;
  max-width:760px;width:calc(100% - 40px);max-height:calc(100vh - 80px);
  margin:40px auto;background:var(--green-950);border:1px solid var(--border);
  border-radius:20px;box-shadow:0 30px 80px -20px rgba(0,0,0,.6);
  display:flex;flex-direction:column;overflow:hidden;
}
.policy-modal-head{
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding:22px 26px;border-bottom:1px solid var(--border-soft);flex:none;
}
.policy-modal-head h3{
  font-family:var(--font-head);font-weight:700;font-size:1.2rem;color:var(--white);margin:0;
}
.policy-modal-close{
  background:rgba(255,255,255,.06);border:1px solid var(--border-soft);color:var(--white);
  width:34px;height:34px;border-radius:999px;font-size:1.2rem;line-height:1;cursor:pointer;
  display:flex;align-items:center;justify-content:center;flex:none;
}
.policy-modal-close:hover{border-color:var(--lime);color:var(--lime-bright)}
.policy-modal-body{
  padding:24px 26px 32px;overflow-y:auto;color:var(--mint);font-size:.92rem;line-height:1.65;
}
.policy-modal-body .policy-loading{color:var(--mint-dim);font-size:.9rem}
.policy-modal-body h4{
  font-family:var(--font-head);font-weight:700;font-size:1rem;color:var(--lime-bright);
  margin:26px 0 10px;
}
.policy-modal-body h4:first-of-type{margin-top:6px}
.policy-modal-body p{margin:0 0 14px}
.policy-modal-body ul{margin:0 0 14px;padding-left:20px}
.policy-modal-body li{margin-bottom:8px}
.policy-modal-body strong{color:var(--white)}
.policy-modal-body .policy-meta{
  font-size:.82rem;color:var(--mint-dim);border-bottom:1px solid var(--border-soft);
  padding-bottom:18px;margin-bottom:18px;
}
.policy-modal-body .policy-note{
  font-size:.8rem;color:var(--mint-dim);font-style:italic;
  border-left:3px solid var(--border);padding:8px 14px;margin:0 0 20px;
}

@media(max-width:600px){
  .policy-modal-panel{margin:16px auto;max-height:calc(100vh - 32px);width:calc(100% - 24px)}
  .policy-modal-head{padding:18px 20px}
  .policy-modal-body{padding:18px 20px 26px}
}
