/* 사이트 공용 확인 창·토스트 모양 — /vendor/sweetalert2/sweetalert2.min.css 다음에 불러온다(js/site-ui.js와 짝).
   기준은 첫 화면 확인 창(dialog.editor.site-confirm): 흰 카드 · --line 테두리 · 모서리 20px · 몽토리 17px · 어두운 막 #21133166 + 흐림 3px ·
   버튼은 .form-actions(취소 흰 바탕 · 확인 .save 보라). 휴대폰(≤640)은 아래에서 올라오는 시트.
   토스트는 .board-note 결(바탕 #f1ebfa · 글 #65429a · 테두리 #8b8298) — PC·태블릿 오른쪽 아래, 휴대폰 아래 가운데.
   색은 사이트에 이미 있는 값만. 크기는 첫 화면처럼 px(4K는 html zoom이 키움). */

.site-ui.swal2-container{--swal2-backdrop:#21133166;--swal2-backdrop-transition:none;padding:16px;color:var(--ink);font-family:"NostalgicMongtori","Malgun Gothic",sans-serif}
.site-ui-confirm.swal2-backdrop-show,.site-ui-confirm.swal2-noanimation{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}

/* 확인 창 */
.site-ui.swal2-container .site-ui-popup{width:min(440px,calc(100vw - 32px));max-width:100%;max-height:90dvh;overflow:auto;padding:28px;border:1px solid var(--line);border-radius:20px;background:#fff;color:var(--ink);box-shadow:none;font:16px/1.6 "NostalgicMongtori","Malgun Gothic",sans-serif;animation:none}
.site-ui.swal2-container .site-ui-text{margin:0;padding:0;overflow:visible;color:inherit;font-size:17px;font-weight:400;line-height:1.7;text-align:left;white-space:pre-wrap;word-break:keep-all;overflow-wrap:anywhere}
.site-ui.swal2-container .form-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:10px;width:auto;margin:22px 0 0;padding:0;background:none}
.site-ui.swal2-container .form-actions button{min-height:44px;margin:0;padding:9px 16px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);font:16px/1.6 "NostalgicMongtori","Malgun Gothic",sans-serif;cursor:pointer;-webkit-tap-highlight-color:transparent}
.site-ui.swal2-container .form-actions button:hover{background:var(--soft)}
.site-ui.swal2-container .form-actions .save{background:var(--purple);color:#fff}
.site-ui.swal2-container .form-actions .save:hover{background:#603ba4}
.site-ui.swal2-container button:focus-visible{outline:3px solid var(--purple);outline-offset:4px}
.site-ui.swal2-container .site-ui-popup:focus{outline:none}

/* 토스트 — SweetAlert2가 토스트 폭을 담는 칸의 100%로 두므로, PC는 칸을 글 길이에 맞춤(최대 440px) */
body.swal2-toast-shown .site-ui-toast.swal2-container{width:auto;max-width:min(440px,100%);padding:24px}
.site-ui-toast.swal2-container .site-ui-note{width:auto;max-width:100%;padding:15px 18px;border:1px solid #8b8298;border-radius:13px;background:#f1ebfa;color:#65429a;box-shadow:none;font:15px/1.6 "NostalgicMongtori","Malgun Gothic",sans-serif;animation:none}
.site-ui-toast.swal2-container .site-ui-note.is-error{border-color:#a33f60;background:#fbf0f4;color:#a33f60}
.site-ui-toast.swal2-container .site-ui-text{font-size:15px;line-height:1.6}
.site-ui-toast.swal2-container .site-ui-note.site-ui-in{animation:site-ui-rise .2s ease-out}
@keyframes site-ui-rise{from{opacity:0;transform:translateY(8px)}}

/* 휴대폰: 확인 창은 아래에서 올라오는 시트, 토스트는 아래 가운데 */
@media(max-width:640px){
  .site-ui-confirm.swal2-container{padding:0}
  .site-ui-confirm.swal2-container .site-ui-popup{grid-column:1/4;grid-row:3;place-self:end stretch;width:100%;border-width:1px 0 0;border-radius:20px 20px 0 0;padding:24px 16px calc(20px + env(safe-area-inset-bottom))}
  .site-ui-confirm.swal2-container .site-ui-popup.site-ui-in{animation:site-ui-sheet-up .22s ease-out}
  body.swal2-toast-shown .site-ui-toast.swal2-bottom-end{inset:auto 0 0 0;width:100%;max-width:none;padding:0 16px calc(16px + env(safe-area-inset-bottom))}
}
@keyframes site-ui-sheet-up{from{transform:translateY(40px);opacity:.5}}

/* 4K: html zoom이 화면 높이 단위도 키우므로 첫 화면 dialog.editor와 같게 줄임 */
@media(min-width:2400px){.site-ui.swal2-container .site-ui-popup{max-height:60dvh}}
@media(min-width:3200px){.site-ui.swal2-container .site-ui-popup{max-height:45dvh}}

@media(prefers-reduced-motion:reduce){.site-ui.swal2-container,.site-ui.swal2-container *{animation:none!important;transition:none!important}}
