/* 나음과이음 소식 알림. 색과 굵기는 홈페이지와 의뢰서 폼의 디자인 규칙(차콜 #2D2D2D, 크림 #F9F8F4, 선 #D8D4CC, Pretendard 300·700)을 따른다. */
.naum-push-box { border: 1px solid #D8D4CC; background: #fff; border-radius: 12px; padding: 22px 24px; margin: 40px 0 8px; display: grid; gap: 10px; color: #222; font-family: Pretendard, -apple-system, BlinkMacSystemFont, 'Apple SD Gothic Neo', sans-serif; letter-spacing: -0.02em; word-break: keep-all; }
.naum-push-box:empty { display: none; }
/* 테마의 문단 아래 여백(padding-bottom)이 상자와 창 안에서 간격을 두 배로 만들어 지운다. */
.naum-push-box p, .naum-push-layer p, .naum-push-landing span { padding: 0 !important; }
.naum-push-box-top { margin: 0 0 32px; }
.naum-push-box-title { margin: 0 !important; font-weight: 700 !important; font-size: 17px; line-height: 1.45; color: #222; }
.naum-push-box-text { margin: 0 !important; font-weight: 300; font-size: 15px; line-height: 1.65; color: #222; }
body .naum-push-box button.naum-push-btn-line, body .naum-push-layer .naum-push-btn-line { justify-self: start; display: inline-flex; align-items: center; gap: 14px; border: 1px solid #2D2D2D !important; background: transparent !important; color: #222 !important; border-radius: 100px; padding: 10px 22px !important; font: inherit; font-weight: 300 !important; font-size: 15px !important; line-height: 1.4; cursor: pointer; }
body .naum-push-box button.naum-push-btn-line:hover { background: #F0EDE6 !important; }
.naum-push-arrow { position: relative; width: 34px; height: 1px; background: #2D2D2D; display: inline-block; }
.naum-push-arrow::after { content: ""; position: absolute; right: 0; top: -3px; width: 7px; height: 7px; border-top: 1px solid #2D2D2D; border-right: 1px solid #2D2D2D; transform: rotate(45deg); }
html.naum-push-open, html.naum-push-open body { overflow: hidden; }
/* 사이트의 떠 있는 버튼이 z-index 최댓값을 쓰므로 같은 값을 주고 문서 끝에 붙여 창이 열려 있는 동안만 그 위에 오게 한다. */
.naum-push-layer { position: fixed; inset: 0; z-index: 2147483647; display: flex; align-items: flex-end; justify-content: center; font-family: Pretendard, -apple-system, BlinkMacSystemFont, 'Apple SD Gothic Neo', sans-serif; letter-spacing: -0.02em; word-break: keep-all; color: #222; }
.naum-push-dim { position: absolute; inset: 0; background: rgba(28, 27, 25, 0.45); }
.naum-push-sheet { position: relative; width: 100%; max-width: 520px; max-height: 92vh; overflow-y: auto; background: #fff; border-radius: 18px 18px 0 0; padding: 26px 22px calc(24px + env(safe-area-inset-bottom, 0px)); display: flex; flex-direction: column; gap: 14px; }
@media (min-width: 700px) { .naum-push-layer { align-items: center; } .naum-push-sheet { border-radius: 18px; padding-bottom: 26px; } }
.naum-push-close { position: absolute; top: 10px; right: 12px; border: 0 !important; background: none !important; font-size: 24px !important; line-height: 1; color: #222 !important; padding: 6px 8px !important; cursor: pointer; }
.naum-push-title { margin: 0 !important; padding-right: 28px; font-weight: 700 !important; font-size: 19px; line-height: 1.45; color: #222; }
.naum-push-lead, .naum-push-note, .naum-push-error { margin: 0 !important; font-weight: 300; font-size: 15px; line-height: 1.65; color: #222; }
.naum-push-note { font-size: 13px; color: #6F6A62; }
.naum-push-note a { color: #222; text-decoration: underline; text-underline-offset: 3px; }
.naum-push-error { color: #C0392B; font-size: 14px; }
.naum-push-terms { border: 1px solid #D8D4CC; border-radius: 10px; padding: 14px 16px; }
.naum-push-terms-title { margin: 0 0 8px !important; font-weight: 700 !important; font-size: 15px; color: #222; }
.naum-push-terms dl, .naum-push-result { display: grid; grid-template-columns: 6.2em minmax(0, 1fr); gap: 7px 12px; margin: 0; font-size: 14px; line-height: 1.6; }
.naum-push-terms dt, .naum-push-result dt { color: #6F6A62; font-weight: 300; }
.naum-push-terms dd, .naum-push-result dd { margin: 0; min-width: 0; font-weight: 300; }
.naum-push-check { display: grid; grid-template-columns: 20px minmax(0, 1fr); gap: 10px; align-items: start; font-size: 15px; font-weight: 300; line-height: 1.55; cursor: pointer; }
.naum-push-check input { width: 18px; height: 18px; margin: 2px 0 0; accent-color: #2D2D2D; }
.naum-push-terms .naum-push-check { margin-top: 12px; padding-top: 12px; border-top: 1px solid #D8D4CC; }
body .naum-push-layer .naum-push-btn { display: block; width: 100%; text-align: center; border: 1px solid #2D2D2D !important; background: #2D2D2D !important; color: #F9F8F4 !important; border-radius: 100px; padding: 13px 18px !important; font: inherit; font-weight: 300 !important; font-size: 15px !important; line-height: 1.4; cursor: pointer; text-decoration: none; }
body .naum-push-layer .naum-push-btn:disabled { opacity: 0.3; cursor: default; }
.naum-push-wide { justify-content: center; width: 100%; }
.naum-push-steps { list-style: none; margin: 0 !important; padding: 0 !important; display: grid; gap: 10px; font-size: 15px; font-weight: 300; line-height: 1.6; }
.naum-push-steps li { display: grid; grid-template-columns: 2.4em minmax(0, 1fr); gap: 8px; margin: 0 !important; }
.naum-push-steps b { font-weight: 700; }
.naum-push-landing { position: relative; background: #2D2D2D; border-radius: 10px; margin: 0 0 24px; color: #F9F8F4; font-family: Pretendard, -apple-system, BlinkMacSystemFont, 'Apple SD Gothic Neo', sans-serif; font-weight: 300; font-size: 14px; letter-spacing: -0.02em; padding: 10px max(16px, env(safe-area-inset-left, 0px)); display: flex; flex-wrap: wrap; gap: 8px 14px; align-items: center; justify-content: center; }
body .naum-push-landing .naum-push-inline { border: 1px solid #F9F8F4 !important; background: transparent !important; color: #F9F8F4 !important; border-radius: 100px; padding: 4px 14px !important; font: inherit; font-size: 13px !important; cursor: pointer; }
@media (prefers-reduced-motion: no-preference) { .naum-push-sheet { animation: naumPushRise 0.28s ease-out; } @keyframes naumPushRise { from { transform: translateY(24px); opacity: 0.6; } to { transform: none; opacity: 1; } } }

/* 떠 있는 알림 버튼의 말풍선 */
.naum-push-tip { position: fixed; z-index: 2147483646; transform: translateY(-50%); background: #2D2D2D; color: #F9F8F4; font-family: Pretendard, -apple-system, BlinkMacSystemFont, 'Apple SD Gothic Neo', sans-serif; font-weight: 300; font-size: 13px; letter-spacing: -0.02em; line-height: 1; padding: 9px 12px; border-radius: 8px; white-space: nowrap; pointer-events: none; }
.naum-push-tip::after { content: ""; position: absolute; right: -5px; top: 50%; width: 10px; height: 10px; background: #2D2D2D; transform: translateY(-50%) rotate(45deg); }
/* 화면 아래쪽 안내. 휴대폰에서는 오른쪽의 떠 있는 버튼 줄(오른쪽 20px, 너비 58px)과 14px 넘게 떨어뜨린다. */
.naum-push-toast { position: fixed; z-index: 2147483000; left: 24px; bottom: calc(24px + env(safe-area-inset-bottom, 0px)); width: 430px; max-width: calc(100vw - 120px); display: flex; align-items: center; gap: 10px; background: #fff; border: 1px solid #D8D4CC; border-radius: 14px; box-shadow: 0 6px 18px rgba(34, 34, 34, 0.12); padding: 12px 12px 12px 16px; color: #222; font-family: Pretendard, -apple-system, BlinkMacSystemFont, 'Apple SD Gothic Neo', sans-serif; letter-spacing: -0.02em; word-break: keep-all; }
.naum-push-toast-top { bottom: auto; top: calc(96px + env(safe-area-inset-top, 0px)); }
.naum-push-toast p { margin: 0 !important; padding: 0 !important; flex: 1; min-width: 0; font-weight: 300; font-size: 13px; line-height: 1.5; }
.naum-push-toast p b { display: block; font-weight: 700; font-size: 14px; }
body .naum-push-toast .naum-push-toast-go { flex: none; border: 1px solid #2D2D2D !important; background: #2D2D2D !important; color: #F9F8F4 !important; border-radius: 100px; padding: 7px 16px !important; font: inherit; font-weight: 300 !important; font-size: 13px !important; line-height: 1.3; cursor: pointer; }
body .naum-push-toast .naum-push-toast-x { flex: none; border: 0 !important; background: none !important; color: #8E8A82 !important; font-size: 20px !important; line-height: 1; padding: 4px 2px !important; cursor: pointer; }
@media (max-width: 768px) { .naum-push-toast { left: 12px; right: 92px; width: auto; max-width: none; bottom: calc(18px + env(safe-area-inset-bottom, 0px)); padding: 10px 10px 10px 13px; } .naum-push-toast-top { top: calc(72px + env(safe-area-inset-top, 0px)); right: 12px; bottom: auto; } }
@media (prefers-reduced-motion: no-preference) { .naum-push-toast { animation: naumPushRise 0.28s ease-out; } }
