.kmeta-points-modal[hidden]{display:none!important}
.kmeta-points-modal{position:fixed;inset:0;z-index:2147483647;display:flex;align-items:center;justify-content:center;padding:24px;background:rgba(12,22,49,.55);backdrop-filter:blur(9px);font-family:"KMETA Points Myeongjo","Noto Serif KR","Nanum Myeongjo","Batang",serif;line-height:1.5;color:#17233e;box-sizing:border-box}
.kmeta-points-modal *{box-sizing:border-box}
.kmeta-points-modal h2,.kmeta-points-modal button,.kmeta-points-modal a{font-family:inherit}
.kmeta-points-dialog{width:440px;max-width:100%;max-height:calc(100dvh - 48px);overflow:auto;background:#fff;border:1px solid rgba(255,255,255,.8);border-radius:26px;box-shadow:0 30px 100px rgba(8,21,58,.32);animation:kmeta-points-enter .18s ease-out}
.kmeta-points-header{display:flex;align-items:center;justify-content:space-between;padding:22px 28px 0}
.kmeta-points-brand{font-size:13px;font-weight:800;letter-spacing:.14em;color:#142d66}
.kmeta-points-brand b{font-weight:500;color:#8794af;font-size:10px;margin-left:6px}
.kmeta-points-modal .kmeta-points-close{border:0;background:#f2f5fa;color:#65758d;border-radius:50%;width:32px;height:32px;display:grid;place-items:center;padding:0;font-size:24px;line-height:1;cursor:pointer}
.kmeta-points-content{padding:16px 32px 28px;text-align:center}
.kmeta-points-symbol{width:76px;height:76px;margin:0 auto 18px;display:grid;place-items:center;border:1px solid #d9e3ff;border-radius:24px;background:linear-gradient(145deg,#eff4ff,#f9fbff);box-shadow:0 8px 22px #e9effb}
.kmeta-points-symbol svg{width:50px;height:50px;stroke:#244ce2;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.kmeta-points-modal .kmeta-points-eyebrow{margin:0 0 8px;color:#3155d6;font-size:11px;font-weight:700;letter-spacing:.12em}
.kmeta-points-modal h2{margin:0;color:#17233e;font-size:25px;font-weight:750;letter-spacing:-.04em;line-height:1.35}
.kmeta-points-modal #kmeta-points-desc{margin:12px auto 25px;color:#78849b;font-size:13px;line-height:1.7;max-width:310px}
.kmeta-points-modal .kmeta-points-summary{margin:0 0 23px;padding:14px 20px;background:#f6f8fd;border:1px solid #ebeff8;border-radius:16px;text-align:left}
.kmeta-points-summary>div{display:flex;justify-content:space-between;gap:12px;padding:7px 0}
.kmeta-points-summary dt{color:#7b879c;font-size:12px;font-weight:500}
.kmeta-points-summary dd{margin:0;color:#263552;font-size:14px;font-weight:650;font-variant-numeric:tabular-nums}
.kmeta-points-summary .kmeta-points-shortfall{border-top:1px solid #e1e7f2;margin-top:7px;padding-top:15px}
.kmeta-points-shortfall dt,.kmeta-points-shortfall dd{color:#244ce2;font-weight:700}
.kmeta-points-modal .kmeta-points-primary{display:flex;align-items:center;justify-content:center;width:100%;min-height:50px;padding:12px;border:1px solid #244ce2;border-radius:13px;background:#244ce2;box-shadow:0 8px 18px rgba(36,76,226,.18);color:white;font-size:14px;font-weight:700;text-decoration:none;cursor:pointer;transition:background .15s}
.kmeta-points-modal .kmeta-points-primary:hover{background:#173bc5;color:white}
.kmeta-points-modal .kmeta-points-later{border:0;background:transparent;color:#8793a8;padding:15px 18px 0;font-size:12px;cursor:pointer}
.kmeta-points-modal :focus-visible{outline:3px solid #91a8ff;outline-offset:4px}
@keyframes kmeta-points-enter{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:480px){.kmeta-points-modal{padding:16px}.kmeta-points-dialog{border-radius:22px;max-height:calc(100dvh - 32px)}.kmeta-points-header{padding:20px 22px 0}.kmeta-points-content{padding:16px 24px 24px}.kmeta-points-modal h2{font-size:23px}}
@media(prefers-reduced-motion:reduce){.kmeta-points-dialog{animation:none}}
