/* 모든 페이지 공통 팝업 톤 — 각 팝업이 인라인으로 준 스타일을 덮어 한 가지 모양으로 통일
   휴대폰: 아래에서 올라오는 시트 / 넓은 화면: 가운데 카드. 계산 중 화면(#solveOverlay)은 제외 */
.modal-ov:not(#solveOverlay){background:rgba(20,30,45,.5)!important;backdrop-filter:none!important;align-items:flex-end!important;justify-content:center!important;padding:0!important;}
.modal-ov:not(#solveOverlay)>.modal-box{width:100%!important;max-width:480px!important;border-radius:22px 22px 0 0!important;box-shadow:none!important;padding:26px 24px calc(24px + env(safe-area-inset-bottom,0px))!important;max-height:88vh;overflow-y:auto;gap:10px;}
.modal-ov:not(#solveOverlay)>.modal-box *{font-family:inherit;}
.modal-box .btn-primary,.modal-box .btn-ghost,.modal-box .btn-export,.modal-box .btn-import{min-height:52px;border-radius:14px!important;font-size:15.5px!important;font-weight:700!important;padding:12px 16px!important;}
.modal-box .btn-primary{background:#0E8A78!important;border:none!important;color:#fff!important;}
.modal-box .btn-ghost{background:#F5F7F8!important;border:none!important;color:#15202B!important;}
.modal-box input,.modal-box textarea,.modal-box select{border:0!important;background:#F5F7F8!important;border-radius:14px!important;padding:14px 16px!important;font-size:16px!important;}
.ui-msg{font-size:17px!important;font-weight:700!important;line-height:1.55!important;color:#15202B!important;margin:4px 0 20px!important;}
.ui-btns{display:flex!important;gap:8px!important;}
.ui-btns>button{flex:1;}
@media (min-width:700px){
  .modal-ov:not(#solveOverlay){align-items:center!important;padding:20px!important;}
  .modal-ov:not(#solveOverlay)>.modal-box{border-radius:20px!important;padding:26px 26px 24px!important;}
}
