/*
 * Luly 보정 스타일 — buly 스킨(common/response/buly_plus.css)에 없는 SSR 전용 상태·요소만 둔다.
 * 원본 스킨 파일은 손대지 않는다(폰트 @font-face 제외). 여기 규칙은 전부 스킨 뒤에 로드된다.
 */

/* --- PHP include/modal.php 의 인라인 <style> (약관/신고 모달) --- */
.modal_contain { width: 100%; height: 100%; position: fixed; top: -100%; left: 0; z-index: 100; }
.modal_contain.on { top: 0; }
.modal_contain.on .modal_bg { display: block !important; opacity: 0.5 !important; }
.modal_contain.on .modal_wrap { top: 50%; }
.modal_contain .modal_bg { width: 100%; height: 100%; opacity: 0.5; background: black; position: absolute; top: 0; left: 0; display: none; }
.modal_wrap { position: absolute; top: -100%; left: 50%; transform: translate(-50%, -50%); border-radius: 10px; background: white; padding: 40px; transition: 0.5s; z-index: 10; max-width: 850px; width: calc(100% - 20px); }
.modal_wrap .ex { position: absolute; top: 25px; right: 40px; cursor: pointer; }
.modal_wrap h3 { color: #333; font-size: 28px; padding-bottom: 20px; }
.modal_content { border: 1px solid #ccc; padding: 20px; overflow-y: scroll; height: 400px; line-height: 1.7; }
.modal05 .bt_box > div { cursor: pointer; }
@media (max-width: 991px) {
    .modal_wrap { padding: 20px; }
    .modal_content { height: 350px; }
    .modal_wrap h3 { font-size: 24px; padding-bottom: 15px; }
    .modal_wrap .ex { width: 18px; z-index: 5; }
    .modal_wrap .ex img { width: 100%; }
}

/* --- 서버 메시지 / 폼 에러 --- */
.field-error { color: #e23d3d; font-size: 13px; margin: 6px 0 0 4px; }
.form-error { color: #e23d3d; margin: 10px 0; }
.board-msg { color: #059669; margin: 10px 0; }

/* --- 본문 텍스트: DB 줄바꿈 유지 (PHP 는 nl2br) --- */
.real_con, .bv_content, .bv_a_txt { white-space: pre-wrap; word-break: break-word; }

/* --- 메인 내 링크 표 (PHP index.html 인라인 <style>) --- */
.pencil_icon_link { display: inline-flex; align-items: center; margin-left: 5px; color: #999; }
.pencil_icon_link svg { width: 16px; height: 16px; vertical-align: middle; }
.delete_url_form { display: inline; margin: 0; }
.free_start_btn { display: inline-block; margin-top: 16px; background: #FCFE56; color: #3d3d3d; padding: 10px 20px; border-radius: 12px; border: none; font-size: 16px; font-weight: 600; cursor: pointer; }
.membership_btn { cursor: pointer; }

/* --- 쿠팡 배너 (PHP 는 tailwind 유틸 클래스였음) --- */
.coupang_banner { width: 95%; max-width: 728px; margin: 15px auto 0; display: flex; justify-content: center; align-items: center; }
.coupang_banner a { width: 100%; }
.coupang_banner img { width: 100%; height: auto; object-fit: cover; }
@media (min-width: 768px) { .coupang_banner { margin-top: 25px; } }

/* --- 로그인: 우측 링크 / 소셜 버튼(구글·카카오는 PHP 에 없던 것 — 네이버 버튼 스타일을 색만 바꿔 재사용) --- */
.log .search_btn a { color: #666; }
.easylog .board_btn + .board_btn, .easylog .signup_btn_naver + .signup_btn_naver { margin-top: 8px; }
.social_btn_kakao a, .social_btn_google a { display: inline-flex !important; align-items: center; justify-content: center; min-width: 170px; text-align: center; box-sizing: border-box; }
.social_btn_kakao a { background: #FEE500 !important; color: #191919 !important; border-color: #FEE500 !important; }
.social_btn_google a { background: #fff !important; color: #333 !important; border: 1px solid #ccc !important; }

/* --- Buly Plus 가격 박스 안의 구독 상태 --- */
.plus_state { margin-top: 12px; color: #ddd; font-size: 14px; line-height: 1.6; }
.plus_state strong { color: #FCFE56; }
.plus_state .buly_plus_signup_btn { margin-top: 10px; }
.buly_plus_signup_btn_header, .buly_plus_close_btn { display: inline-flex; align-items: center; justify-content: center; text-decoration: none; }
.buly_plus_price_amount .form-error { color: #ff8a8a; font-size: 13px; }

/* --- API 안내(/api-guide) — nav.php API KEY 패널의 표 스타일을 게시판 토글 안에서 재사용 --- */
.api_guide { white-space: normal; }
.api_guide p { margin: 10px 0; line-height: 1.7; }
.api_guide h4 { margin: 18px 0 8px; font-size: 16px; color: #333; }
.api_guide code { background: #f3f3f3; padding: 2px 6px; border-radius: 4px; font-size: 13px; }
.api_guide pre { background: #2d2d2d; color: #f3f3f3; padding: 16px; border-radius: 8px; overflow-x: auto; font-size: 13px; line-height: 1.6; white-space: pre; }
.api_guide .api_tab_tt { margin: 12px 0; }
.api_guide .api_tab_tt .btn { display: inline-block; padding: 4px 12px; border-radius: 4px; background: #49cc90; color: #fff; font-weight: 700; text-transform: uppercase; font-size: 12px; margin-right: 8px; }
.api_guide .api_tab_tt .btn.get { background: #61affe; }
.api_guide table { width: 100%; border-collapse: collapse; font-size: 14px; }
.api_guide th, .api_guide td { padding: 10px 8px; border-bottom: 1px solid #e5e5e5; text-align: left; vertical-align: top; }
.api_guide th { background: #fafafa; color: #666; font-weight: 500; }
.api_guide .need { color: #e23d3d; font-weight: 700; }
.api_guide .string, .api_guide .bool { color: #6b6bff; }

/* --- 영수증 표 --- */
.receipt_table { width: 100%; border-collapse: collapse; font-size: 15px; }
.receipt_table th, .receipt_table td { padding: 12px 10px; border-bottom: 1px solid #e5e5e5; text-align: left; }
.receipt_table th { width: 120px; color: #666; font-weight: 500; background: #fafafa; }
.receipt_table strong { color: #e23d3d; font-size: 18px; }

/* --- 결제 결과(팝업) 독립 페이지 --- */
.pay_result { max-width: 480px; margin: 60px auto; padding: 0 20px; text-align: center; }
.pay_result img { width: 120px; margin-bottom: 24px; }
.pay_result a { color: #e23d3d; text-decoration: underline; }
