.ip-overlay{position:fixed;inset:0;z-index:10050;background:rgba(0,0,0,.6);display:flex;align-items:center;justify-content:center;padding:20px;overflow:auto}
.ip-overlay[v-cloak]{display:none}
.ip-modal,.ip-summary{font-family:'Nunito Sans',Arial,sans-serif}.ip-modal *,.ip-summary *{font-family:inherit}
.ip-modal{background:#fff;color:#252525;border-radius:22px;padding:30px;max-width:650px;width:100%;max-height:calc(100dvh - 40px);overflow:auto;box-sizing:border-box;position:relative}
.ip-modal h2{font-size:25px;line-height:1.25;margin:0 32px 20px 0}.ip-modal p{line-height:1.5;margin:14px 0}
.ip-close{position:absolute;right:16px;top:12px;background:none;border:0;font-size:28px;cursor:pointer}
.ip-choice{display:flex;gap:12px;align-items:flex-start;border:1px solid #a6caa5;border-radius:12px;padding:16px;margin:12px 0;cursor:pointer}
.ip-choice:has(input:checked){background:#edf5eb;border-color:#308d2f}.ip-choice input,.ip-consent input{appearance:auto;width:18px;height:18px;flex-shrink:0;margin-top:3px}
.ip-choice strong{font-weight:700}.ip-choice span{line-height:1.5}
.ip-choice-body{flex:1;min-width:0}.ip-choice-title{display:block;margin-bottom:6px}.ip-choice-first,.ip-choice-detail{display:block}
.ip-choice-full-line{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 .3em}.ip-choice-full-line .ip-choice-title{display:inline;margin:0}
.ip-choice-old-price,.ip-choice-discount,.ip-choice-final-price{white-space:nowrap}.ip-choice-old-price{text-decoration-line:line-through;text-decoration-color:#d93025;text-decoration-thickness:2px}
.ip-consent{display:flex;gap:10px;line-height:1.5;margin:20px 0}.ip-consent a,.ip-modal a{color:#308d2f;text-decoration:underline}
.ip-button{border:0;background:#308d2f;color:#fff;border-radius:28px;padding:14px 24px;font:inherit;font-weight:700;cursor:pointer}
.ip-button:disabled{opacity:.55;cursor:wait}.ip-modal>.ip-button{width:100%}.ip-error{color:#b62e28}.ip-back{display:block;margin:16px auto 0;background:none;border:0;color:#308d2f;text-decoration:underline;cursor:pointer;font:inherit}
.ip-summary{margin:16px 0;padding:18px;border:1px solid #a6caa5;border-radius:12px;display:flex;flex-wrap:wrap;align-items:center;gap:12px 22px;line-height:1.5}
.ip-summary p{margin:0}.ip-summary .ip-deadline--expired{color:#b62e28}.ip-refund{background:none;border:0;text-decoration:underline;color:#308d2f;cursor:pointer;font:inherit}
@media(max-width:600px){.ip-overlay{padding:10px}.ip-modal{padding:24px 18px;max-height:calc(100dvh - 20px)}.ip-modal h2{font-size:21px}.ip-choice{padding:12px}.ip-summary{gap:12px}.ip-summary>*{width:100%}}
