html.policy-modal-open,body.policy-modal-open{overflow:hidden}
.elea-policy-modal{
  position:fixed;
  inset:0;
  z-index:10000;
  display:grid;
  place-items:center;
  padding:28px;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .22s ease,visibility .22s ease;
}
.elea-policy-modal.is-open{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}
.elea-policy-backdrop{
  position:absolute;
  inset:0;
  background:rgba(2,12,20,.72);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.elea-policy-dialog{
  position:relative;
  z-index:1;
  width:min(1040px,calc(100vw - 56px));
  max-height:min(88vh,920px);
  display:flex;
  flex-direction:column;
  overflow:hidden;
  border:1px solid rgba(143,232,233,.18);
  border-radius:24px;
  background:#fff;
  box-shadow:0 36px 100px rgba(0,0,0,.38);
  transform:translateY(18px) scale(.985);
  transition:transform .26s cubic-bezier(.2,.72,.2,1);
}
.elea-policy-modal.is-open .elea-policy-dialog{transform:none}
.elea-policy-header{
  flex:0 0 auto;
  min-height:122px;
  padding:26px 34px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  color:#fff;
  background:
    radial-gradient(circle at 88% 20%,rgba(48,202,203,.18),transparent 32%),
    linear-gradient(135deg,#071925,#0B2736);
  border-bottom:1px solid rgba(255,255,255,.09);
}
.elea-policy-kicker{
  margin:0 0 7px;
  color:#6BE0E2;
  font-size:12px;
  font-weight:700;
  letter-spacing:.14em;
}
.elea-policy-header h2{
  margin:0;
  color:#fff;
  font-size:28px;
  line-height:1.3;
  font-weight:750;
  letter-spacing:-.02em;
}
.elea-policy-close{
  width:44px;
  height:44px;
  flex:0 0 44px;
  padding:0;
  border:1px solid rgba(255,255,255,.18);
  border-radius:50%;
  background:rgba(255,255,255,.05);
  color:#fff;
  font:inherit;
  font-size:28px;
  line-height:1;
  cursor:pointer;
  transition:background .2s ease,transform .2s ease,border-color .2s ease;
}
.elea-policy-close:hover{background:rgba(48,202,203,.16);border-color:rgba(107,224,226,.5);transform:rotate(4deg)}
.elea-policy-body{
  min-height:0;
  overflow:auto;
  overscroll-behavior:contain;
  padding:38px 44px 50px;
  color:#505861;
  background:#fff;
  scrollbar-width:thin;
  scrollbar-color:#8FE8E9 #EEF3F4;
}
.elea-policy-body::-webkit-scrollbar{width:8px}
.elea-policy-body::-webkit-scrollbar-track{background:#EEF3F4}
.elea-policy-body::-webkit-scrollbar-thumb{background:#8FE8E9;border-radius:10px}
.elea-policy-document{max-width:900px;margin:0 auto;font-family:Pretendard,"Noto Sans KR",Arial,sans-serif;font-size:15px;line-height:1.82;word-break:keep-all}
.elea-policy-document .policy-lead{
  margin:0 0 30px;
  padding:22px 24px;
  border-left:3px solid #30CACB;
  border-radius:0 12px 12px 0;
  color:#30404C;
  background:#F2FAFA;
  font-size:16px;
  line-height:1.75;
}
.elea-policy-document section{
  padding:28px 0;
  border-top:1px solid #E6EBEE;
}
.elea-policy-document section:first-of-type{border-top:0;padding-top:0}
.elea-policy-document h3{
  margin:0 0 15px;
  color:#10212D;
  font-size:20px;
  line-height:1.5;
  font-weight:750;
  letter-spacing:-.02em;
}
.elea-policy-document h4{
  margin:19px 0 8px;
  color:#263B49;
  font-size:16px;
  line-height:1.55;
  font-weight:700;
}
.elea-policy-document p{margin:8px 0;color:#5B6670}
.elea-policy-document ul{margin:10px 0 0;padding:0 0 0 20px}
.elea-policy-document li{margin:5px 0;color:#5B6670}
.elea-policy-document li::marker{color:#30CACB}
.elea-policy-document .policy-note{
  margin-top:14px;
  padding:14px 16px;
  border-radius:10px;
  background:#F5F8F9;
  color:#68737D;
  font-size:13px;
}
.elea-policy-document .policy-addendum{
  margin-top:10px;
  padding:22px 24px;
  border:0;
  border-radius:14px;
  background:#071925;
}
.elea-policy-document .policy-addendum h3,
.elea-policy-document .policy-addendum p{color:#fff}

@media(max-width:700px){
  .elea-policy-modal{padding:12px}
  .elea-policy-dialog{width:100%;max-height:92vh;border-radius:18px}
  .elea-policy-header{min-height:100px;padding:20px 20px}
  .elea-policy-header h2{font-size:23px}
  .elea-policy-close{width:40px;height:40px;flex-basis:40px}
  .elea-policy-body{padding:28px 20px 40px}
  .elea-policy-document{font-size:14px;line-height:1.75;word-break:normal}
  .elea-policy-document .policy-lead{font-size:14px;padding:18px}
  .elea-policy-document h3{font-size:18px}
}
