@charset "utf-8"; /* ========================================================================== 0. 공통 유틸리티 ========================================================================== */ .sound_only { display: inline-block !important; position: absolute; top: 0; left: 0; margin: 0 !important; padding: 0 !important; font-size: 0; line-height: 0; border: 0 !important; overflow: hidden !important; width: 0 !important; height: 0 !important; } .btn { display: inline-flex; align-items: center; justify-content: center; padding: 0 12px; height: 32px; border-radius: 4px; font-size: 13px; font-weight: 500; text-decoration: none; transition: all 0.2s; border: 1px solid transparent; cursor: pointer; vertical-align: middle; } /* 버튼 색상 테마 */ .btn_b01 { background: #fff; border-color: #ddd; color: #555; } .btn_b01:hover { background: #f8f9fa; border-color: #ccc; color: #333; } .btn_b02 { background: #4a90e2; border-color: #4a90e2; color: #fff; } .btn_b02:hover { background: #357abd; border-color: #357abd; color: #fff; } .btn_admin { background: #fff; border-color: #ff6b6b; color: #ff6b6b; } .btn_admin:hover { background: #ff6b6b; color: #fff; } /* 버튼 스타일 (공통 - 덮어쓰기) */ #bo_gall .btn_b01, #bo_gall .btn_b02, #bo_gall .btn_admin, #bo_v .btn_b01, #bo_v .btn_b02, #bo_v .btn_admin { padding: 8px 16px; border-radius: 20px; font-size: 0.92em; transition: all 0.2s; text-decoration: none; display: inline-flex; align-items: center; justify-content: center; font-weight: 600; white-space: nowrap; gap: 5px; } #bo_gall .btn_admin, #bo_v .btn_admin { border: 1px solid #ff6b6b; background: #fff; color: #ff6b6b; } #bo_gall .btn_admin:hover, #bo_v .btn_admin:hover { background: #ff6b6b; color: #fff; } /* ========================================================================== 1. 게시판 목록 (list.skin.php) ========================================================================== */ #bo_gall { position: relative; margin-bottom: 40px; font-size: 14px; } /* --- 카테고리 --- */ #bo_cate { margin: 0 0 20px; } #bo_cate ul { display: flex; flex-wrap: wrap; gap: 5px; padding: 0; margin: 0; list-style: none; } #bo_cate li { display: inline-block; } #bo_cate a { display: block; padding: 6px 15px; border: 1px solid #ddd; border-radius: 20px; color: #666; background: #fff; text-decoration: none; transition: all 0.2s; font-size: 13px; } #bo_cate a:hover, #bo_cate #bo_cate_on { background: #4a90e2; color: #fff; border-color: #4a90e2; font-weight: bold; } /* --- 상단 툴바 (.bo_fx) --- */ .bo_fx { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 10px; margin-bottom: 15px; padding: 10px 0; border-bottom: 1px solid #eee; } .bo_fx_left { display: flex; align-items: center; gap: 15px; } .bo_fx_right { display: flex; align-items: center; gap: 10px; } #bo_list_total { font-size: 13px; color: #666; } #bo_list_total span { font-weight: bold; color: #333; } /* 페이지당 목록 수 선택기 */ .bo_page_rows_selector select { height: 32px; padding: 0 10px; border: 1px solid #ddd; border-radius: 4px; color: #555; outline: none; } /* 뷰 모드 전환 버튼 */ .view-mode-switcher { display: flex; border: 1px solid #ddd; border-radius: 4px; overflow: hidden; } .view-mode-switcher .btn_view_mode { width: 36px; height: 32px; background: #fff; border: none; border-right: 1px solid #ddd; color: #999; cursor: pointer; transition: all 0.2s; display: flex; align-items: center; justify-content: center; } .view-mode-switcher .btn_view_mode:last-child { border-right: none; } .view-mode-switcher .btn_view_mode:hover { background: #f8f9fa; color: #555; } .view-mode-switcher .btn_view_mode.active { background: #e7f1ff; color: #4a90e2; } /* 사용자 버튼 그룹 */ .btn_bo_user { display: flex; gap: 5px; margin: 0; padding: 0; list-style: none; } .btn_bo_user li { float: left; width: auto; text-align: center; margin-left: 5px; background: #fff; } /* width: auto로 수정됨 */ /* ========================================================================== 2. 카드형 목록 스타일 (#gall_ul) - Flexbox Grid 적용 ========================================================================== */ #gall_ul { display: flex; flex-wrap: wrap; margin: 0 -10px; padding: 0; list-style: none; } .gall_li { padding: 0 10px; margin-bottom: 20px; box-sizing: border-box; } /* 그리드 컬럼 설정 (기본 4열) */ .col-gn-1 { width: 100%; } .col-gn-2 { width: 50%; } .col-gn-3 { width: 33.3333%; } .col-gn-4 { width: 25%; } .col-gn-5 { width: 20%; } /* 카드 박스 디자인 */ .gall_box { border: 1px solid #eee; border-radius: 8px; overflow: hidden; transition: all 0.3s; background: #fff; height: 100%; display: flex; flex-direction: column; position: relative; } .gall_box:hover { transform: translateY(-5px); box-shadow: 0 10px 20px rgba(0,0,0,0.08); border-color: #d0d0d0; } .gall_chk { position: absolute; top: 10px; left: 10px; z-index: 10; } .gall_img { position: relative; padding-top: 65%; /* 16:9 비율 등 조절 가능 */ overflow: hidden; background: #f8f9fa; border-bottom: 1px solid #f1f1f1; } .gall_img a { position: absolute; top: 0; left: 0; width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; } .gall_img img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.3s; } .gall_box:hover .gall_img img { transform: scale(1.05); } .gall_img .no_image, .gall_img .is_notice { color: #ccc; font-size: 12px; } .gall_img .is_notice { color: #4a90e2; font-weight: bold; } .gall_con { flex-grow: 1; display: flex; flex-direction: column; } .gall_text_href { padding: 15px; flex-grow: 1; } .gall_text_href .bo_cate_link { display: inline-block; font-size: 11px; color: #4a90e2; background: #e7f1ff; padding: 2px 6px; border-radius: 3px; margin-bottom: 6px; text-decoration: none; } .gall_text_href .bo_tit_link { display: block; font-size: 16px; font-weight: 600; color: #333; text-decoration: none; line-height: 1.4; margin-bottom: 5px; word-break: break-all; } .gall_text_href .bo_tit_link:hover { color: #4a90e2; } .gall_text_href .cnt_cmt { font-size: 11px; color: #ff6b6b; background: #fff0f0; padding: 1px 5px; border-radius: 10px; margin-left: 5px; vertical-align: middle; } .gall_name { padding: 0 15px 10px; font-size: 13px; color: #888; display: flex; align-items: center; } .gall_name .profile_img img { width: 20px; height: 20px; border-radius: 50%; margin-right: 5px; vertical-align: middle; } .gall_info { padding: 10px 15px; background: #fcfcfc; border-top: 1px solid #f5f5f5; font-size: 12px; color: #999; display: flex; justify-content: space-between; align-items: center; } .gall_info i { margin-right: 3px; } /* 노출 스위치 (카드형) */ .status-toggle-wrap { display: flex; align-items: center; gap: 5px; } .status-label { font-size: 11px; } .status-toggle-switch { width: 34px; height: 18px; background: #ccc; border-radius: 9px; position: relative; cursor: pointer; transition: background 0.2s; } .status-toggle-switch .switch-handle { width: 14px; height: 14px; background: #fff; border-radius: 50%; position: absolute; top: 2px; left: 2px; transition: transform 0.2s; } .status-toggle-switch.on { background: #28a745; } .status-toggle-switch.on .switch-handle { transform: translateX(16px); } .status-toggle-switch.off { background: #dc3545; } /* ========================================================================== 3. 리스트형 목록 스타일 (.fz-list) ========================================================================== */ .fz-list { border-top: 2px solid #333; margin: 0; padding: 0; list-style: none; } .fz-list li { display: flex; align-items: center; border-bottom: 1px solid #eee; padding: 12px 0; transition: background 0.2s; } .fz-list li:hover { background: #fbfbfb; } .fz-list .fz-list-th { background: #f8f9fa; border-bottom: 1px solid #ddd; font-weight: bold; color: #333; padding: 15px 0; } .fz-list .fz-list-th:hover { background: #f8f9fa; } .fz-list > li > div { padding: 0 10px; text-align: center; box-sizing: border-box; word-break: break-all; } /* 컬럼 너비 설정 */ .fz-checkbox { width: 40px; } .fz-num { width: 60px; color: #888; } .fz-subject { flex: 1; text-align: left !important; font-weight: 500; } .fz-writer { width: 120px; color: #666; } .fz-date { width: 100px; color: #888; font-size: 13px; } .fz-hit { width: 70px; color: #888; font-size: 13px; } .fz-1 { width: 80px; } /* 상태/노출 컬럼 */ .fz-subject a { color: #333; text-decoration: none; font-size: 15px; display: block; } .fz-subject a:hover { color: #4a90e2; text-decoration: underline; } .fz-subject .bo_cate_link { display: inline-block; font-size: 11px; color: #4a90e2; background: #e7f1ff; padding: 2px 6px; border-radius: 3px; margin-right: 5px; vertical-align: middle; } .fz-subject .cnt_cmt { font-size: 11px; color: #ff6b6b; background: #fff0f0; padding: 1px 5px; border-radius: 10px; margin-left: 5px; vertical-align: middle; } /* 리스트형 아이콘 */ .icon-notice { display: inline-block; padding: 2px 6px; background: #333; color: #fff; font-size: 11px; border-radius: 3px; font-weight: normal; } .bo-current { color: #e8180c; font-weight: bold; } /* 빈 목록 */ .fz-empty-list { width: 100%; padding: 100px 0 !important; text-align: center !important; color: #999; display: block !important; } .expert-consultation-header { position: relative; margin-bottom: 20px; } /* ========================================================================== 4. 하단 영역 (페이지네이션, 검색) ========================================================================== */ .pagination_wrap { margin-top: 30px; text-align: center; position: relative; } /* 페이지네이션 */ .pg_wrap { display: inline-block; } .pg { display: flex; justify-content: center; gap: 5px; } .pg_page, .pg_current { display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 32px; border: 1px solid #ddd; border-radius: 4px; color: #666; text-decoration: none; font-size: 13px; background: #fff; } .pg_page:hover { background: #f8f9fa; color: #333; border-color: #ccc; } .pg_current { background: #4a90e2; color: #fff; border-color: #4a90e2; font-weight: bold; } /* 더보기 버튼 (카드형일 때 사용 가능) */ .card-more-btn { margin-top: 20px; text-align: center; } .card-more-btn button { width: 100%; max-width: 300px; height: 45px; border-radius: 25px; font-size: 14px; } /* 검색창 */ #bo_sch { text-align: center; margin: 40px 0 20px; } #bo_sch form { display: inline-flex; border: 1px solid #ddd; border-radius: 25px; overflow: hidden; padding: 2px; } #bo_sch select { border: none; height: 40px; padding: 0 10px 0 15px; outline: none; color: #555; background: #fff; cursor: pointer; } #bo_sch input { border: none; border-left: 1px solid #eee; height: 40px; padding: 0 15px; width: 200px; outline: none; } #bo_sch button { background: #4a90e2; color: #fff; border: none; width: 50px; height: 40px; border-radius: 0 20px 20px 0; cursor: pointer; transition: background 0.2s; } #bo_sch button:hover { background: #357abd; } .reservation-btn:hover { transform: translateY(-2px); box-shadow: 0 6px 20px rgba(40, 167, 69, 0.4); } /* ========================================================================== 5. 반응형 처리 ========================================================================== */ @media (max-width: 992px) { .col-gn-4 { width: 33.3333%; } /* 태블릿 3열 */ } /* 반응형 버튼 레이아웃 */ @media (max-width: 768px) { .col-gn-3, .col-gn-4 { width: 50%; } /* 작은 태블릿 2열 */ .bo_fx { flex-direction: column; align-items: flex-start; } .bo_fx_right { width: 100%; justify-content: space-between; margin-top: 10px; } /* 리스트형 모바일 최적화 */ .fz-list .fz-list-th { display: none; } .fz-list li { flex-wrap: wrap; position: relative; padding: 15px 10px; } .fz-checkbox { position: absolute; top: 15px; left: 0; } .fz-num { display: none; } .fz-subject { width: 100%; padding: 0 0 0 30px; margin-bottom: 8px; } .fz-writer, .fz-date, .fz-hit { width: auto; font-size: 12px; color: #999; padding: 0; margin-right: 10px; } .fz-writer { padding-left: 30px; } .fz-1 { position: absolute; right: 10px; top: 15px; width: auto; } } @media (max-width: 480px) { .col-gn-2, .col-gn-3, .col-gn-4 { width: 100%; } /* 모바일 1열 */ #bo_sch input { width: 120px; } .view-mode-switcher { display: none; } /* 모바일에서 뷰 모드 전환 숨김 (선택사항) */ } /* 반응형 디자인 */ @media (max-width: 768px) { .modal-content { width: 95%; margin: 10% auto; } .expert-consultation-btn { padding: 10px 20px; font-size: 13px; } } /* ========================================================================== 6. 기타 (order.php 관련 등) ========================================================================== */ /* 공지 박스 */ .notice-box { border: 1px solid #cce5ff; background: #e7f1ff; padding: 15px; margin: 0 0 20px; border-radius: 8px; color: #004085; font-size: 14px; line-height: 1.6; } /* 상태 버튼 스타일 (order_eclem 고유) */ .estimate-btn { display: inline-block; padding: 4px 10px; border-radius: 15px; font-size: 12px; font-weight: bold; color: #fff; text-decoration: none; border: none; cursor: pointer; transition: opacity 0.2s; } .estimate-btn:hover { opacity: 0.9; } .btn-request { background: #6c757d; } /* 견적신청중 */ .btn-offer { background: #17a2b8; } /* 견적제안/작성완료 */ .btn-select { background: #28a745; } /* 견적채택 */ .btn-deposit-ready { background: #ffc107; color: #333; } .btn-deposit-done { background: #fd7e14; } .btn-excel { background: #007bff; } .btn-cancel { background: #dc3545; } .btn-modify { background: #343a40; } /* 타이머 */ .estimate-timer { display: inline-block; font-size: 12px; color: #dc3545; font-weight: bold; background: #fff5f5; padding: 2px 6px; border-radius: 4px; border: 1px solid #ffc9c9; margin-left: 5px; } .estimate-completed { display: inline-block; font-size: 12px; color: #28a745; font-weight: bold; background: #e8f5e9; padding: 2px 6px; border-radius: 4px; margin-left: 5px; } /* 전문가 신청 버튼 */ .expert-request-btn { background: #6610f2; color: #fff; border: none; padding: 3px 8px; border-radius: 10px; font-size: 11px; cursor: pointer; margin-left: 5px; vertical-align: middle; } .expert-request-btn:hover { background: #520dc2; } /* 2뎁스 답변글 스타일 */ .reply-post { background: #fcfcfc !important; } .reply-post .fz-subject { padding-left: 40px; } .reply-post .list-icon { margin-right: 5px; color: #999; } .brand-sum { font-size: 13px; color: #4a90e2; font-weight: bold; } .brand-name { color: #333; font-weight: 600; } .brand-amount { color: #ff6b6b; } .brand-amount-hidden { color: #aaa; font-style: italic; } /* 💡 [수정] 옵션 그룹 정렬을 위한 스타일 확장 */ .options { display: flex; align-items: center; padding-top: 5px; flex-wrap: wrap; gap: 5px 20px; } .options label { margin: 0; cursor: pointer; } .options-left { justify-content: flex-start; } .options-center { justify-content: center; } .options-right { justify-content: flex-end; } .form-group>label, .options.input-inline { display: flex; align-items: center; } .tooltip-wrapper { margin-left: 5px; } /* 💡 [추가] 창 비율 이미지 선택기 스타일 */ .ratio-image-selector { display: flex; gap: 10px; flex-wrap: wrap; } .ratio-option { cursor: pointer; border: 2px solid transparent; padding: 5px; border-radius: 5px; text-align: center; transition: all 0.2s ease-in-out; } .ratio-option img { display: block; width: 60px; height: 60px; margin-bottom: 5px; } /* 전문가 상담 및 예약 버튼 스타일 */ .expert-consultation-header { position: relative; margin-bottom: 20px; } /* 💡 [수정] 버튼 컨테이너 스타일 (한 줄 배치 강제) */ .expert-consultation-header > div { text-align: right; display: flex !important; gap: 10px; justify-content: flex-end; flex-wrap: nowrap !important; /* 줄바꿈 방지 */ align-items: center; } .expert-consultation-btn { background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); color: white; border: none; padding: 12px 24px; border-radius: 25px; font-size: 14px; font-weight: bold; cursor: pointer; transition: all 0.3s ease; box-shadow: 0 4px 15px rgba(102, 126, 234, 0.3); white-space: nowrap; /* 텍스트 줄바꿈 방지 */ } .expert-consultation-btn:hover { transform: translateY(-2px); box-shadow: 0 6px 20px rgba(102, 126, 234, 0.4); } .expert-consultation-btn i { margin-right: 8px; } .reservation-btn { background: linear-gradient(135deg, #28a745 0%, #20c997 100%); color: white; border: none; padding: 12px 24px; border-radius: 25px; font-size: 14px; font-weight: bold; cursor: pointer; transition: all 0.3s ease; box-shadow: 0 4px 15px rgba(40, 167, 69, 0.3); white-space: nowrap; /* 텍스트 줄바꿈 방지 */ } .reservation-btn:hover { transform: translateY(-2px); box-shadow: 0 6px 20px rgba(40, 167, 69, 0.4); } .reservation-btn i { margin-right: 8px; } /* 반응형 버튼 레이아웃 */ @media (max-width: 768px) { .expert-consultation-header > div { justify-content: center !important; /* flex-direction: column; <-- 모바일에서도 한 줄 유지를 위해 주석 처리 */ align-items: center; gap: 8px; /* 간격 조금 줄임 */ } .expert-consultation-btn, .reservation-btn { padding: 10px 15px; /* 패딩 줄임 */ font-size: 13px; /* 폰트 크기 줄임 */ min-height: 40px; width: auto; /* 너비 자동 */ max-width: none; /* 최대 너비 제한 해제 */ flex: 1; /* 남은 공간 균등 분배 */ } } @media (max-width: 480px) { .expert-consultation-header { margin-bottom: 15px; } .expert-consultation-btn, .reservation-btn { padding: 10px 12px; font-size: 12px; border-radius: 8px; } } /* 모달 스타일 */ .modal { position: fixed; z-index: 1000; left: 0; top: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.5); animation: fadeIn 0.3s ease; } @keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } } .modal-content { background-color: #fefefe; margin: 5% auto; padding: 0; border: none; width: 90%; max-width: 500px; border-radius: 15px; box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3); animation: slideIn 0.3s ease; } @keyframes slideIn { from { transform: translateY(-50px); opacity: 0; } to { transform: translateY(0); opacity: 1; } } .modal-header { padding: 20px 25px; background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); color: white; border-radius: 15px 15px 0 0; position: relative; } .modal-header h3 { margin: 0; font-size: 18px; font-weight: bold; } .close { position: absolute; right: 20px; top: 50%; transform: translateY(-50%); font-size: 24px; font-weight: bold; cursor: pointer; color: white; opacity: 0.8; transition: opacity 0.3s ease; } .close:hover { opacity: 1; } .modal-body { padding: 25px; } .form-group { margin-bottom: 20px; } .form-group label { display: block; margin-bottom: 8px; font-weight: bold; color: #333; } .form-group input, .form-group textarea { width: 100%; padding: 12px; border: 2px solid #e1e5e9; border-radius: 8px; font-size: 14px; transition: border-color 0.3s ease; box-sizing: border-box; } .form-group input:focus, .form-group textarea:focus { outline: none; border-color: #667eea; box-shadow: 0 0 0 3px rgba(102, 126, 234, 0.1); } .consultation-fee-info { background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%); padding: 15px; border-radius: 10px; margin-top: 15px; border-left: 4px solid #667eea; } .consultation-fee-info p { margin: 5px 0; color: #495057; } .consultation-fee-info strong { color: #667eea; } .modal-footer { padding: 20px 25px; background-color: #f8f9fa; border-radius: 0 0 15px 15px; text-align: right; border-top: 1px solid #e9ecef; } .btn-cancel, .btn-submit { padding: 10px 20px; border: none; border-radius: 8px; font-size: 14px; font-weight: bold; cursor: pointer; margin-left: 10px; transition: all 0.3s ease; } .btn-cancel { background-color: #6c757d; color: white; } .btn-cancel:hover { background-color: #5a6268; } .btn-submit { background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); color: white; } .btn-submit:hover { transform: translateY(-1px); box-shadow: 0 4px 15px rgba(102, 126, 234, 0.3); } /* 반응형 디자인 */ @media (max-width: 768px) { .modal-content { width: 95%; margin: 10% auto; } .expert-consultation-btn { padding: 10px 20px; font-size: 13px; } .modal-header, .modal-body, .modal-footer { padding: 15px 20px; } } .ratio-option span { font-size: 12px; color: #555; } .ratio-option input[type="radio"]:checked+img+span { font-weight: bold; color: #1976d2; } .ratio-option input[type="radio"]:checked+img { outline: 2px solid #1976d2; box-shadow: 0 0 10px rgba(25, 118, 210, 0.5); } /* 💡 [추가] 폼 그룹 내부 요소를 좌측 정렬하기 위한 클래스 */ .dynamic-box .form-group-align-left { display: flex; flex-direction: column; align-items: flex-start; } /* 게시판 목록 */ #bo_list {position: relative;margin-bottom: 20px} #bo_list:after {display: block;visibility: hidden;clear: both;content: ""} #bo_list .td_board {width: 120px;text-align: center} #bo_list .td_chk {width: 30px;text-align: center;border-top: 1px solid #ecf0f1;border-bottom: 1px solid #ecf0f1} #bo_list .td_date {width: 60px;text-align: center} #bo_list .td_datetime {width: 60px;text-align: center} #bo_list .td_group {width: 100px;text-align: center} #bo_list .td_mb_id {width: 100px;text-align: center} #bo_list .td_mng {width: 80px;text-align: center} #bo_list .td_name {width: 90px;text-align: left;padding: 10px 0} #bo_list .td_nick {width: 100px;text-align: center} #bo_list .td_num {width: 50px;text-align: center} #bo_list .td_num2 {width: 50px;text-align: center} #bo_list .td_numbig {width: 80px;text-align: center} #bo_list .txt_active {color: #5d910b} #bo_list .txt_expired {color: #ccc} #bo_list tbody tr {border-left: 2px solid transparent} #bo_list tbody tr:hover {border-left: 2px solid #253dbe} #bo_list tbody .even td {background: #fbfbfb} #bo-cate {margin: 0 0 25px;padding-left: 1px;padding-top: 1px;} #bo-cate h2 {position: absolute;font-size: 0;line-height: 0;overflow: hidden} #bo-cate ul {zoom: 1;display: flex;flex-wrap: wrap; } #bo-cate ul:after {display: block;visibility: hidden;clear: both;content: ""} #bo-cate li {margin-left: -1px;margin-top: -1px;} #bo-cate a {display: block;line-height: 28px;padding: 5px 15px;border: 1px solid #ddd;color: #999;position: relative;transition: all 0.3s ease-out;} #bo-cate a:focus, #bo-cate a:hover, #bo-cate a:active {text-decoration: none;background: #666;color: #fff;border: 1px solid #666;} #bo-cate #bo_cate_on {z-index: 2;background: #212121;color: #fff;font-weight: bold;border: 1px solid #212121;} /* 게시판 목록 공통 */ .selec_chk {position: absolute;top: 0;left: 0;width: 0;height: 0;opacity: 0;outline: 0;z-index: -1;overflow: hidden} .chk_box {position: relative} .chk_box input[type="checkbox"] + label {position: relative;color: #676e70} .chk_box input[type="checkbox"] + label:hover {color: #2172f8} .chk_box input[type="checkbox"] + label span {float: left;width: 15px;height: 15px;display: block;background: #fff;border: 1px solid #d0d4df;border-radius: 3px} .write_div .chk_box input[type="checkbox"] + label, .bo_vc_w .chk_box input[type="checkbox"] + label {padding-left: 20px} .write_div .chk_box input[type="checkbox"] + label span, .bo_vc_w .chk_box input[type="checkbox"] + label span {position: absolute;top: 2px;left: 0;width: 15px;height: 15px;display: block;margin: 0;background: #fff;border: 1px solid #d0d4df;border-radius: 3px} .chk_box input[type="checkbox"]:checked + label {color: #000} .chk_box input[type="checkbox"]:checked + label span {background: url(./img/chk.png) no-repeat 50% 50% #3a8afd;border-color: #1471f6;border-radius: 3px} .btn_bo_adm {float: left} .btn_bo_adm li {float: left;margin-right: 5px} .btn_bo_adm input {padding: 0 8px;border: 0;background: #d4d4d4;color: #666;text-decoration: none;vertical-align: middle} .bo_notice td {background: #fff6fa !important;border-bottom: 1px solid #f8e6ee} .bo_notice td a {font-weight: bold} .bo_notice .notice_icon {display: inline-block;line-height: 25px;border-radius: 5px;font-weight: bold;color: #f9267f} .td_num strong {color: #000} .bo_cate_link {float: left;display: inline-block;margin-right: 10px;background: #e2eaf6;color: #3a8afd;font-weight: normal !important;height: 20px;line-height: 10px;padding: 5px 8px;border-radius: 5px;font-size: 0.95em} /* 글제목줄 분류스타일 */ .bo_cate_link:hover {text-decoration: none} .bo_tit {display: block;color: #000;font-weight: bold} .bo_current {color: #e8180c} #bo_list .profile_img img {border-radius: 50%} #bo_list .cnt_cmt {background: #e9eff5;color: #3a8afd;font-size: 11px;height: 16px;line-height: 16px;padding: 0 5px;border-radius: 3px;vertical-align: middle} #bo_list .bo_tit .title_icon {margin-right: 2px} #bo_list .bo_tit .fa-heart {color: #ff0000} #bo_list .bo_tit .fa-lock {display: inline-block;line-height: 14px;width: 16px;font-size: 0.833em;color: #4f818c;background: #cbe3e8;text-align: center;border-radius: 2px;font-size: 12px;border: 1px solid #cbe3e8;vertical-align: middle} #bo_list .bo_tit .new_icon {display: inline-block;width: 16px;line-height: 16px;font-size: 0.833em;color: #23db79;background: #b9ffda;text-align: center;border-radius: 2px;margin-left: 2px;font-weight: bold;vertical-align: middle} #bo_list .bo_tit .hot_icon {display: inline-block;width: 16px;line-height: 16px;font-size: 0.833em;color: #ff0000;background: #ffb9b9;text-align: center;border-radius: 2px;vertical-align: middle} #bo_list .bo_tit .fa-caret-right {color: #bbb} #bo_list .bo_tit .fa-download {display: inline-block;width: 16px;line-height: 16px;font-size: 0.833em;color: #daae37;background: #ffefb9;text-align: center;border-radius: 2px;margin-left: 5px;vertical-align: middle} #bo_list .bo_tit .fa-link {display: inline-block;width: 16px;line-height: 16px;font-size: 0.833em;color: #b451fd;background: #edd3fd;text-align: center;border-radius: 2px;margin-left: 5px;vertical-align: middle} .bo-sch-wrap {display: none;width: 100%;height: 100%;position: fixed;top: 0;left: 0;z-index: 999;} .bo-sch-content {width: 100%;height: 100%;align-items: center; justify-content: center; flex-wrap: wrap; align-content: center;display: flex;} .bo-sch {position: relative;z-index: 2;text-align: left;} .bo-sch h3 {font-size: 50px;color: #fff;text-align: center;font-weight: 600;margin-bottom: 30px;opacity: 0;transform: translateY(-30px);text-shadow: 5px 5px 10px rgba(0, 0, 0, .8);} .bo-sch legend {} .bo-sch-box {background: rgba(74, 74, 74, .9);border-radius: 10px;padding: 20px;box-shadow: 10px 10px 20px 0 rgba(0, 0, 0, .4);width: 380px;opacity: 0;transform: translateY(-30px);} .bo-sch-inner {background: #e3e3e3;border-radius: 10px;padding: 20px;} .bo-sch select {width: 100%;height: 43px;padding-left: 15px;border: 1px solid transparent;-webkit-appearance: none;-moz-appearance: none;appearance: none;position: relative;background: url('./img/arrow.png') right 5px center no-repeat;background-size: 18px auto;border: 1px solid #453732;font-size: 14px;} .bo-sch select::-ms-expand {display: none;} .bo-sch-input {display: block;} .bo-sch input[type=text] {width: 100%;height: 43px;background: none;padding: 0;padding: 0 10px;border: 1px solid #453732;margin-top: 15px;font-size: 14px;color: #000} .bo-sch-btn {margin-top: 15px;padding-top: 15px;position: relative;text-align: center;} .bo-sch-btn:after {background: #fff;content: "";position: absolute;left: 0;top: 0;width: 100%;height: 2px;border-top: 1px solid #9c9c9c;} .bo-sch .sch-btn {height: 38px;color: #fff;border: none;font-size: 15px;padding: 0 20px;background: #383838;} .bo-sch-cls {position: absolute;right: 50px;top: 50px;width: 29px;height: 29px;background: url(./img/search_close.png) 0 0 no-repeat;z-index: 5;text-indent: -9999px;border: none;opacity: 0;transform: translateX(30px);} .bo-sch-bg {background: #000;background: rgba(0, 0, 0, 0.8);width: 100%;height: 100%;position: absolute;left: 0;top: 0;cursor: pointer;} .bo-sch input[type=text]:focus, .bo-sch select:focus {-webkit-box-shadow: none;-moz-box-shadow: none;box-shadow: none;border: none;} .bo-sch-wrap.active {display: block;} .bo-sch-wrap.active .bo-sch-cls {opacity: 1;transform: translateX(0px);transition: all 0.4s ease-out;} .bo-sch-wrap.active h3 {opacity: 1;transform: translateY(0px);transition: all 0.4s ease-out;} .bo-sch-wrap.active .bo-sch-box {opacity: 1;transform: translateY(0px);transition: all 0.4s ease-out 0.15s;} .bo-top-wrap {display: flex;justify-content: space-between;align-items: flex-end;margin-bottom: 20px;} .list-total {font-size: 16px;font-weight: 500;background: url(./img/google-docs.png) 0 center no-repeat;padding-left: 30px;min-height: 24px;line-height: 24px;} .list-total strong {color: #258ccf;font-weight: 600;} .board-btn a {vertical-align: top;display: inline-block;border: 1px solid #d1d1d1;font-size: 14px;font-weight: 700;padding: 6px 10px;position: relative;transition: all .3s ease-out;height: 32px;} .board-btn a:before {position: absolute;left: 0;bottom: 0;height: 50%;content: "";background: #f1f1f1;width: 100%;z-index: -2;} .board-btn a:after {position: absolute;left: 0;bottom: 0;height: 100%;content: "";background: #f1f5f9;width: 0;z-index: -1;transition: width 0.3s ease-out;} .board-btn a:hover:after {width: 100%;} .board-btn a:hover {border-color: #f1f5f9;box-shadow: 3px 3px 8px rgba(0, 0, 0, .2);} .bo-bottom-wrap {display: flex;justify-content: space-between;align-items: flex-end;margin-bottom: 20px;} .bo-admin-select-wrap {display: inline-block;position: relative;} .more-opt {display: none;position: absolute;top: 31px;right: 0;background: #fff;z-index: 999;width: 100%;box-shadow: 3px 3px 8px rgba(0, 0, 0, .2);} .more-opt li {border-bottom: 1px dotted #dfdfdf;} .more-opt li:last-child {border-bottom: 0} .more-opt li button {width: 100%;border: 0;background: #fff;color: #333;text-align: left;padding: 8px;transition: all 0.3s ease-out;} .more-opt li:hover button {color: #000;background: #f1f5f9;} .btn-bo-rss {background: url(./img/rss.png) 8px center no-repeat;padding-left: 32px !important;} .btn-bo-search {background: url(./img/search.png) 8px center no-repeat;padding-left: 32px !important;} .btn-bo-write {background: url(./img/pencil.png) 8px center no-repeat;padding-left: 32px !important;} .btn-bo-admin {background: url(./img/gear.png) 8px center no-repeat;padding-left: 32px !important;} .btn-bo-admin-select {background: url(./img/bolt.png) 8px center no-repeat;padding-left: 28px !important;} .btn-bo-modify {background: url(./img/refresh.png) 8px center no-repeat;padding-left: 32px !important;} .btn-bo-delete {background: url(./img/close.png) 8px center no-repeat;padding-left: 32px !important;background-size: 14px auto;} .btn-bo-copy {background: url(./img/copy.png) 8px center no-repeat;padding-left: 32px !important;} .btn-bo-move {background: url(./img/move.png) 8px center no-repeat;padding-left: 32px !important;} .btn-bo-list {background: url(./img/list.png) 8px center no-repeat;padding-left: 32px !important;} .btn-bo-reply {background: url(./img/reply.png) 8px center no-repeat;padding-left: 32px !important;} .bo-v-btn-wrap {display: flex;justify-content: space-between;margin-bottom: 15px;} .bo-v-btn-left {} .bo-admin-select-wrap.active .btn-bo-admin-select {border-color: #f1f5f9;box-shadow: 3px 3px 8px rgba(0, 0, 0, .2);} .bo-admin-select-wrap.active .btn-bo-admin-select:after {width: 100%;} .fz-list {margin-bottom: 20px;border-top: 2px solid #222;font-size: 14px;color: #000} .fz-list i {display: none;} .fz-list li {display: flex;border-bottom: 1px solid #d8d8d8;position: relative;} .fz-list li:last-child {border-bottom: 1px solid #222;} .fz-list li > div {padding: 8px 0;display: flex;align-items: center;justify-content: center;min-height: 50px;} .fz-list .fz-list-th {border-bottom: 1px solid #666;} .fz-list .fz-list-th > div {height: 55px;font-weight: 600;font-size: 14px;color: #000 !important} .fz-list .fz-list-th .fz-subject {justify-content: center !important;} .fz-list .fz-checkbox {flex: 0 0 30px;} .fz-list .fz-num {flex: 0 0 50px;} .fz-list .fz-subject {text-align: left !important;flex-grow: 1;justify-content: flex-start !important;padding: 8px 10px;line-height: 1.6em;} .fz-list .fz-writer {flex: 0 0 120px;} .fz-list .fz-date {flex: 0 0 70px;} .fz-list .fz-hit {flex: 0 0 45px;} .fz-list .fz-good {flex: 0 0 45px;} .fz-list .fz-nogood {flex: 0 0 45px;} .fz-list .fz-num, .fz-list .fz-hit, .fz-list .fz-good, .fz-list .fz-nogood, .fz-list .fz-date {color: #999;} .fz-list li:after {content: "";height: 100%;width: 0;background: #fafafa;position: absolute;left: 0;top: 0;z-index: -1;transition: width .3s ease-in-out;} .fz-list li:hover:after {width: 100%;} .fz-list li > div, .fz-list li > div * {transition: color .2s ease-in-out;} .fz-list li:hover > div, .fz-list li:hover > .fz-subject > a, .fz-list li:hover .sv_wrap > a, .fz-list li:hover .sv_member {color: #4158d1 !important} .fz-list li.fz-list-th:hover > div {color: #000 !important} .fz-list li.fz-list-th:after {display: none;} .fz-empty-list {height: 100px;display: flex;align-items: center; justify-content: center; flex-wrap: wrap; align-content: center;flex-grow: 1;} .bo-cate-link {display: inline-block;position: relative;padding-right: 10px;margin-right: 10px;line-height: 20px;vertical-align: top;} .bo-cate-link:after {height: 20px;width: 1px;content: "";display: block;position: absolute;right: 0;top: 3px;background: linear-gradient(to bottom, #999, transparent);} .list-icon {width: 20px;height: 20px;display: inline-block;overflow: hidden;vertical-align: top;text-indent: -9999px;} .icon-reply {background: url(./img/reply-all.png) center center no-repeat;margin-right: 5px; background-size: 12px auto;} .icon-secret {background: url(./img/secret.png) center center no-repeat;margin-right: 5px;} .icon-file {background: url(./img/download.png) center center no-repeat;} .icon-link {background: url(./img/link.png) center center no-repeat;} .icon-new {background: url(./img/new.png) center center no-repeat;} .icon-pack-wrap {margin-left: 8px;} .icon-notice {text-indent: -9999px;display: inline-block;width: 20px;height: 20px;background: url(./img/mic.png) center center no-repeat;} .bo-current {color: #FF4800;font-weight: 600;} #bo_list .fz-subject .cnt_cmt {color: #FF4800;padding-left: 5px;font-size: 9px;font-family: tahoma;background: none;font-weight: 700;vertical-align: top;line-height: 20px;} .fz-list .sv_wrap > a {display: inline-block;display: flex;align-items: center;line-height: 1em;} .fz-list .sv_wrap a .profile_img {display: inline-block;vertical-align: middle;margin-right: 3px;} .fz-list .sv_wrap .sv a {font-size: 12px;} #bo_list .pg_wrap {clear: both;text-align: center;margin-top: 30px;display: block;float: none;} #bo_list .pg_wrap:after {display: block;visibility: hidden;clear: both;content: ""} #bo_list .pg {text-align: center;} #bo_list .pg_page, .pg_current {display: inline-block;vertical-align: middle;border: 1px solid #ddd;background: none;border-radius: 0;transition: all 0.3s ease-out;} #bo_list .pg a:focus, .pg a:hover {text-decoration: none} #bo_list .pg_page {color: #959595;font-size: 14px;height: 35px;line-height: 33px;padding: 0 13px;min-width: 30px;text-decoration: none;position: relative;} #bo_list .pg_page:hover {background-color: #fafafa;box-shadow: 0px 0px 5px rgba(0, 0, 0, .2);border-color: #b8b8b8;color: #212121;font-weight: bold;} #bo_list .pg_start {text-indent: -999px;overflow: hidden;padding: 0;width: 35px;border: 1px solid #ddd;background: none;} #bo_list .pg_prev {text-indent: -999px;overflow: hidden;padding: 0;width: 35px;border: 1px solid #ddd;background: none;} #bo_list .pg_end {text-indent: -999px;overflow: hidden;padding: 0;width: 35px;border: 1px solid #ddd;background: none;} #bo_list .pg_next {text-indent: -999px;overflow: hidden;padding: 0;width: 35px;border: 1px solid #ddd;background: none;} #bo_list .pg_prev:after {font-family: FontAwesome;width: 100%;position: absolute;left: 0;top: 0;height: 100%;content: "\f104";z-index: 1;text-indent: 0;text-align: center;font-size: 18px;} #bo_list .pg_start:after {font-family: FontAwesome;width: 100%;position: absolute;left: 0;top: 0;height: 100%;content: "\f100";z-index: 1;text-indent: 0;text-align: center;font-size: 18px;} #bo_list .pg_next:after {font-family: FontAwesome;width: 100%;position: absolute;left: 0;top: 0;height: 100%;content: "\f105";z-index: 1;text-indent: 0;text-align: center;font-size: 18px;} #bo_list .pg_end:after {font-family: FontAwesome;width: 100%;position: absolute;left: 0;top: 0;height: 100%;content: " \f101";z-index: 1;text-indent: 0;text-align: center;font-size: 18px;} #bo_list .pg_start:hover, #bo_list .pg_prev:hover, #bo_list .pg_end:hover, #bo_list .pg_next:hover {background-color: #fafafa} #bo_list .pg_current {display: inline-block;background: #212121;border: 1px solid #212121;color: #fff;font-weight: bold;height: 35px;line-height: 33px;padding: 0 13px;min-width: 30px;position: relative;color: #fff;} /* 게시판 쓰기 */ #char_count_desc {display: block;margin: 0 0 5px;padding: 0} #char_count_wrap {margin: 5px 0 0;text-align: right} #char_count {font-weight: bold} #autosave_wrapper {position: relative} #autosave_pop {display: none;z-index: 10;position: absolute !important;top: 34px;right: 0;width: 350px;height: auto !important;height: 180px;max-height: 180px;border: 1px solid #565656;background: #fff; -webkit-box-shadow: 2px 2px 3px 0px rgba(0, 0, 0, 0.2); -moz-box-shadow: 2px 2px 3px 0px rgba(0, 0, 0, 0.2); box-shadow: 2px 2px 3px 0px rgba(0, 0, 0, 0.2)} #autosave_pop:before {content: "";position: absolute;top: -8px;right: 45px;width: 0;height: 0;border-style: solid;border-width: 0 6px 8px 6px;border-color: transparent transparent #000 transparent} #autosave_pop:after {content: "";position: absolute;top: -7px;right: 45px;width: 0;height: 0;border-style: solid;border-width: 0 6px 8px 6px;border-color: transparent transparent #fff transparent} html.no-overflowscrolling #autosave_pop {height: auto;max-height: 10000px !important} /* overflow 미지원 기기 대응 */ #autosave_pop strong {position: absolute;font-size: 0;line-height: 0;overflow: hidden} #autosave_pop div {text-align: center;margin: 0 !important} #autosave_pop button {margin: 0;padding: 0;border: 0} #autosave_pop ul {padding: 15px;border-top: 1px solid #e9e9e9;list-style: none;overflow-y: scroll;height: 130px;border-bottom: 1px solid #e8e8e8} #autosave_pop li {padding: 8px 5px;border-bottom: 1px solid #fff;background: #eee;zoom: 1} #autosave_pop li:after {display: block;visibility: hidden;clear: both;content: ""} #autosave_pop a {display: block;float: left} #autosave_pop span {display: block;float: right;font-size: 0.92em;font-style: italic;color: #999} .autosave_close {cursor: pointer;width: 100%;height: 30px;background: none;color: #888;font-weight: bold;font-size: 0.92em} .autosave_close:hover {background: #f3f3f3;color: #3597d9} .autosave_content {display: none} .autosave_del {background: url(./img/close_btn.png) no-repeat 50% 50%;text-indent: -999px;overflow: hidden;height: 20px;width: 20px} /* 게시판 읽기 */ #bo_v {margin-bottom: 20px;box-sizing: border-box} #bo_v_table {position: absolute;top: 0;right: 16px;margin: 0;padding: 0 5px;height: 25px;background: #ff3061;color: #fff;font-weight: bold;line-height: 2.2em} #bo-v-title {border-top: 2px solid #000;} .bo-v-tit {display: block;font-size: 22px;word-break: break-all;border-bottom: 1px solid #ddd;padding: 20px 0;} #bo-v-info {margin: 0;border-bottom: 1px solid #ddd;color: #666;display: flex;justify-content: space-between;flex-wrap: wrap;} #bo-v-info h2 {position: absolute;font-size: 0;line-height: 0;overflow: hidden} #bo-v-info .profile-info {display: flex;align-items: center;} #bo-v-info .profile-info .pf-img {margin-right: 10px;display: inline-block;} #bo-v-info .profile-info .pf-img img {border-radius: 50%;width: 35px;height: 35px} #bo-v-info .profile-info strong {display: inline-block;font-weight: normal;padding-left: 22px;background: url(./img/user.png) 0 center no-repeat;} #bo-v-info .profile-info .pf-img ~ strong {background: none;padding-left: 0;} #bo-v-info .sv_member, #bo-v-info .sv_guest, #bo-v-info .member, #bo-v-info .guest {font-weight: bold;font-size: 14px;} #bo-v-info .profile_img {display: none} #bo-v-info .sv_member {color: #000} .article-info {padding: 15px 0;min-height: 50px} .article-comment {display: inline-block;padding-left: 22px;background: url(./img/comment.png) 0 center no-repeat;color: #777;font-weight: normal;} .article-hit {display: inline-block;padding-left: 22px;background: url(./img/eye-black.png) 0 center no-repeat;margin-left: 10px;color: #777;font-weight: normal;} .article-date {display: inline-block;padding-left: 22px;background: url(./img/schedule.png) 0 center no-repeat;margin-left: 10px;color: #777;font-weight: normal;} .article-ip {display: inline-block;color: #999;font-size: 12px;} #bo_v_file, #bo_v_link {font-size: 14px;} #bo_v_file h2 {position: absolute;font-size: 0;line-height: 0;overflow: hidden} #bo_v_file ul {margin: 0;list-style: none} #bo_v_file li {padding: 15px;position: relative;margin: 10px 0;border: 1px solid #dfdfdf;padding-left: 50px;background: url(./img/folder.png) 10px 14px no-repeat;transition: box-shadow .3s ease-out;} #bo_v_file li i {color: #b2b2b2;font-size: 24px;margin-right: 20px;position: absolute;left: 10px;top: 14px;} #bo_v_file img {position: absolute;left: 15px;top: 16px;} #bo_v_file a {display: block;text-decoration: none;word-wrap: break-word;color: #000} #bo_v_file a:focus, #bo_v_file li:hover a, #bo_v_file a:active {text-decoration: underline;color: #3a8afd} #bo_v_file .bo_v_file_cnt {color: #b2b2b2;font-size: 0.92em} #bo_v_file li:hover {border-color: #bed4f4;color: #bed4f4;box-shadow: 0px 0px 10px 0 rgba(0, 0, 0, .2);} #bo_v_file li:hover i {color: #3a8afd} #bo_v_file li:hover .bo_v_file_cnt {color: #99c2fc} #bo_v_link h2 {position: absolute;font-size: 0;line-height: 0;overflow: hidden} #bo_v_file ul {margin: 0;list-style: none} #bo_v_link li {padding: 15px;position: relative;margin: 10px 0;border: 1px solid #dfdfdf;padding-left: 50px;background: url(./img/link_large.png) 10px 14px no-repeat;transition: box-shadow .3s ease-out;} #bo_v_link li i {color: #b2b2b2;font-size: 24px;margin-right: 20px;position: absolute;left: 10px;top: 14px;} #bo_v_link a {display: block;text-decoration: none;word-wrap: break-word;color: #000} #bo_v_link a:focus, #bo_v_link li:hover a, #bo_v_link a:active {text-decoration: underline;color: #3a8afd} #bo_v_link .bo_v_link_cnt {color: #b2b2b2;font-size: 0.92em} #bo_v_link li:hover {border-color: #bed4f4;color: #bed4f4;box-shadow: 0px 0px 10px 0 rgba(0, 0, 0, .2);} #bo_v_link li:hover i {color: #3a8afd} #bo_v_link li:hover .bo_v_link_cnt {color: #99c2fc} .bo_v_com {margin: 20px 0;float: right} .bo_v_com > li {position: relative;float: left;margin-left: 5px} .bo_v_nb {position: relative;margin: 20px 0;clear: both;text-align: left} .bo_v_nb:after {display: block;visibility: hidden;clear: both;content: ""} .bo_v_nb li {border-top: 1px solid #f1f1f1;padding: 13px} .bo_v_nb li:last-child {border-bottom: 1px solid #f1f1f1} .bo_v_nb li:hover {background: #f6f6f6} .bo_v_nb li i {font-size: 13px;color: #b3b3b3} .bo_v_nb li .nb_tit {display: inline-block;padding-right: 20px;color: #b3b3b3} .bo_v_nb li .nb_date {float: right;color: #b3b3b3} #bo_v_atc {min-height: 200px;height: auto !important;height: 200px} #bo_v_atc_title {position: absolute;font-size: 0;line-height: 0;overflow: hidden} #bo_v_img {width: 100%;overflow: hidden;zoom: 1} #bo_v_img:after {display: block;visibility: hidden;clear: both;content: ""} #bo_v_img a.view_image {display: block} #bo_v_img img {margin-bottom: 20px;max-width: 100%;height: auto} #bo_v_con {margin: 10px 0 30px;width: 100%;line-height: 1.7em;min-height: 200px;word-break: break-all;overflow: hidden;font-size: 14px;} #bo_v_con a {color: #000;text-decoration: underline} #bo_v_con img {max-width: 100%;height: auto} #bo_v_act {margin-bottom: 30px;text-align: center} #bo_v_act .bo_v_act_gng {position: relative;display: inline-block;} #bo_v_act .bo_v_act_gng ~ .bo_v_act_gng {margin-left: 10px;} #bo_v_act a, #bo_v_act > span {vertical-align: middle;color: #4a5158;transition: all .3s ease-out;padding-top: 40px;} #bo_v_act a:hover {background-color: #fff;color: #ff484f;border-color: #fff;box-shadow: 0px 0px 8px rgba(0, 0, 0, .2);} #bo_v_act i {font-size: 1.4em;margin-right: 5px} #bo_v_act_good, #bo_v_act_nogood {display: none;position: absolute;top: 30px;left: 0;z-index: 9999;padding: 10px 0;width: 165px;background: #ff3061;color: #fff;text-align: center;} #bo_v_act .bo_v_good {display: inline-block;border: 1px solid #dedede;width: 70px;height: 70px;border-radius: 50%;background: url(./img/like.png) center 12px no-repeat;} #bo_v_act .bo_v_nogood {display: inline-block;border: 1px solid #dedede;width: 70px;height: 70px;border-radius: 50%;background: url(./img/dislike.png) center 12px no-repeat;} #bo_v_sns {padding: 0;list-style: none;right: 0;top: 60px;display: flex;padding: 8px 5px;border-radius: 10px;background: #f5f5f5;box-shadow: 5px 5px 10px 0 rgba(0, 0, 0, .3);opacity: 0;position: absolute;width: 0;height: 0;overflow: hidden;} #bo_v_sns.active {opacity: 1;width: auto;height: auto;transition: all 0.3s ease-out;} #bo_v_sns li {padding: 0 3px;} #bo_v_sns li a {height: 35px;line-height: 35px;text-align: center;border-radius: 5px;color: #fff;font-size: 0.95em;width: 35px;border-radius: 50%;transition: all .2s ease-out;} #bo_v_sns li a:hover {box-shadow: 2px 2px 5px 0 rgba(0, 0, 0, .4);} #bo_v_sns li a span {display: none;} #bo_v_sns li img {vertical-align: middle;} #bo_v_sns li .sns_f {display: block;background: #3b5997} #bo_v_sns li .sns_t {display: block;background: #09aeee} #bo_v_sns li .sns_g {display: block;background: #ea4026} #bo_v_sns li .sns_k {display: block;background: #fbe300} #bo_v_share {position: relative;padding: 20px 0;display: flex;justify-content: flex-end} #bo_v_share:after {display: block;visibility: hidden;clear: both;content: ""} #bo_v_share .btn {padding: 0 10px;color: #555;font-weight: normal;font-size: 1em;width: 80px;line-height: 35px;height: 35px;border-color: #d5d5d5;border-radius: 5px} #bo_v_share .btn:hover {background: #fff} #bo_v_share .btn i {margin-right: 5px;color: #4b5259;vertical-align: middle} .scrap-btn {background: url(./img/bookmark.png) 8px center no-repeat;padding-left: 32px !important;} .share-btn {background: url(./img/share-link.png) 8px center no-repeat;padding-left: 32px !important;} .share-btn.active:after {width: 100%;} .share-btn.active {border-color: #f1f5f9;box-shadow: 3px 3px 8px rgba(0, 0, 0, .2);} /* 게시판 댓글 */ .cmt_btn {width: 100%;text-align: left;border: 0;border-bottom: 1px solid #f0f0f0;background: #fff;font-weight: bold;margin: 30px 0 0px;padding: 0 0 15px} .cmt_btn span.total {position: relative;display: inline-block;margin-right: 5px;font-size: 1em;color: #3a8afd} .cmt_btn span.cmt_more {float: right;display: inline-block;width: 15px;height: 10px;background: url(./img/btn_cmt.png) no-repeat right 2px;margin-top: 5px} .cmt_btn_op span.cmt_more {background-position: right -8px} .cmt_btn b {font-size: 1.2em;color: #000} .cmt_btn span.total:after {position: absolute;bottom: -17px;left: 0;display: inline-block;background: #3a8afd;content: "";width: 100%;height: 2px} #bo_vc {} #bo_vc h2 {position: absolute;font-size: 0;line-height: 0;overflow: hidden} #bo_vc article {margin: 20px 0;position: relative;border-bottom: 1px solid #f0f0f0;display: flex;} #bo_vc article.bo-vc-reply:before {content: "";display: block;width: 12px;height: 12px;background: url(./img/reply-all.png) 0 0 no-repeat;background-size: 100% auto;position: absolute;left: -20px;top: 5px;} #bo_vc article:last-child {border-bottom: none;} #bo_vc article .profile_img img {border-radius: 50%} #bo_vc article .pf_img {display: inline-block;vertical-align: middle;margin-right: 5px;} #bo_vc article .pf_img img {border-radius: 50%;width: 35px;height: 35px} #bo_vc article .cm_wrap {flex-grow: 1;} #bo_vc header {position: relative;display: flex;justify-content: space-between;} #bo_vc header .profile_img {display: none} #bo_vc header .icon_reply {position: absolute;top: 15px;left: -20px} .cm-parent-info {color: #999;text-decoration: none !important;margin-right: 5px;} .cm-header-content {vertical-align: middle;} .cm-ip {color: #999;} .cm-reply-btn {background: url(./img/reply.png) 0 center no-repeat;width: 16px;text-indent: -9999px;display: inline-block;} .cm-modify-btn {background: url(./img/refresh.png) 0 center no-repeat;width: 16px;text-indent: -9999px;display: inline-block;margin-left: 5px;} .cm-delete-btn {background: url(./img/close.png) 0 center no-repeat;width: 16px;text-indent: -9999px;display: inline-block;background-size: 14px auto;margin-left: 5px;} .bo-vc-datetime {background: url(./img/schedule.png) 0 center no-repeat;padding-left: 22px;margin: 0 5px;} #bo_vc .member, #bo_vc .guest, #bo_vc .sv_member, #bo_vc .sv_guest {font-weight: bold} .bo_vc_hdinfo {color: #777} #bo_vc h1 {position: absolute;font-size: 0;line-height: 0;overflow: hidden} #bo_vc .cmt_contents {line-height: 1.8em;padding: 10px 0} #bo_vc p a {text-decoration: underline} #bo_vc p a.s_cmt {text-decoration: underline;color: #ed6479} #bo_vc_empty {margin: 0;padding: 80px 0 !important;color: #777;text-align: center} #bo_vc #bo_vc_winfo {float: left} #bo_vc .bo_vl_opt {position: absolute;top: 0;right: 0} .bo-vc-guest-area {display: flex;justify-content: space-between;align-items: flex-end;flex-wrap: wrap;} .bo-vc-guest-input {margin-bottom: 10px;} .bo-vc-guest-notice {background: url(./img/mic.png) 0 center no-repeat;padding-left: 22px;color: #000;font-size: 14px;margin-bottom: 8px;} .bo-vc-captcha #captcha {vertical-align: top;margin-bottom: 10px;} .bo_vc_w {position: relative;margin: 20px 0;display: block} .bo_vc_w:after {display: block;visibility: hidden;clear: both;content: ""} .bo_vc_w h2 {position: absolute;font-size: 0;line-height: 0;overflow: hidden} .bo_vc_w #char_cnt {display: inline-block;margin-right: 10px;} .bo_vc_w textarea {border: 1px solid #ccc;background: #fff !important;color: #000;vertical-align: middle;padding: 8px;width: 100%;height: 120px;} #wr_secret {} .bo_vc_w_info {display: flex;justify-content: space-between;} .bo_vc_w_info .frm_input {margin-right: 5px;margin-bottom: 10px;} .bo_vc_w_info #captcha {display: block;clear: both} .bo_vc_w .btn_confirm {} .bo_vc_w .btn_confirm label {display: inline-block;margin-right: 10px;border-radius: 3px;text-align: center} .bo_vc_w .btn_confirm .secret_cm label {font-size: 1em !important} .bo_vc_w_wr {padding-top: 10px;} .secret_cm {display: inline-block;} .comment-write-box {border: 1px solid #e1e1e1;border-top: 2px solid #333;background: #f8f8f8;padding: 15px;} .comment-write-box .required {background-image: none !important;} .comment-write-box .frm_input {border-radius: 0;vertical-align: top;} .bo-vc-bottom {display: flex;justify-content: space-between;margin-top: 10px;} .bo-vc-submit {padding: 6px 15px;height: 32px;border-radius: 0px;font-weight: 700;font-size: 14px;background: #144a94;color: #fff;transition: all .2s ease-out;} .bo-vc-submit:hover {box-shadow: 3px 3px 8px rgba(0, 0, 0, .2);background: #fff;color: #333;} #bo_vc_send_sns {display: inline-flex;} #bo_vc_sns {display: flex;margin: 0;padding: 0;list-style: none;zoom: 1} #bo_vc_sns li {margin: 0 5px 0 0;display: flex;align-items: center;} #bo_vc_sns .sns_li_f {border-radius: 3px;background: #3a589b;height: 40px;padding: 0 0 0 10px} #bo_vc_sns .sns_li_t {border-radius: 3px;background: #00aced;height: 40px;padding: 0 0 0 10px} #bo_vc_sns .sns_li_off {background: #bbb} #bo_vc_sns a {display: inline-block;padding: 0 15px 0 5px;} #bo_vc_sns input {margin: 0 5px 0 0} /*글쓰기*/ #bo_w .bo_v_option li {display: inline-block;float: left;text-align: left;margin: 0 5px 0 0} #bo_w .bo_v_option li label {vertical-align: baseline} #bo_w .bo_v_option .chk_box input[type="checkbox"] + label span {margin-left: 0;margin-right: 5px} #bo_w .write_div {margin: 10px 0;position: relative} #bo_w .write_div:after {display: block;visibility: hidden;clear: both;content: ""} #bo_w .bo_w_info:after {display: block;visibility: hidden;clear: both;content: ""} #bo_w .bo_w_info .frm_input {float: left;margin-bottom: 1%} #bo_w #wr_password, #bo_w #wr_homepage {} #bo_w .wr_content.smarteditor2 iframe {background: #fff} #bo_w .bo_w_tit {position: relative} #bo_w .bo_w_tit .frm_input {padding-right: 120px} #bo_w .bo_w_tit #btn_autosave {position: absolute;top: 5px;right: 5px;line-height: 30px;height: 30px} #bo_w .bo_w_link label {position: absolute;top: 1px;left: 1px;border-radius: 3px 0 0 3px;height: 38px;line-height: 38px;width: 40px;font-size: 1.2em;text-align: center;color: #b2b2b2} #bo_w .bo_w_link .frm_input {padding-left: 50px} #bo_w .bo_w_flie .lb_icon {position: absolute;top: 0px;left: 0px;border-radius: 3px 0 0 3px;height: 38px;line-height: 38px;width: 40px;font-size: 1.2em;text-align: center;color: #b2b2b2} #bo_w .bo_w_flie .frm_file {padding-left: 50px;margin-top: 3px} #bo_w .bo_w_flie .file_wr {position: relative;border: 1px solid #ccc;background: #fff;color: #000;vertical-align: middle;border-radius: 3px;padding: 5px;height: 40px;margin: 0} #bo_w .bo_w_flie .frm_input {margin: 10px 0 0} #bo_w .bo_w_flie .file_del {position: absolute;top: 10px;right: 10px;font-size: 0.92em;color: #7d7d7d} #bo_w .bo_w_select select {border: 1px solid #d0d3db;width: 100%;height: 40px;border-radius: 3px} #bo_w .btn_submit {padding: 0 20px;font-size: 1.167em} #bo_w .btn_cancel {border-radius: 3px;font-size: 1.167em} #bo_w .required {background: none !important;} #bo_w .btn-confirm {text-align: center;margin: 40px 0;} #captcha #captcha_key {border-radius: 0;background: #fff !important;} .content-input-form {padding: 15px; border-top: 2px solid #333;} .input-wrap {margin-top: 10px;} .input-box {border: 1px solid #dadada;display: flex;flex-wrap: nowrap;justify-content: space-between;margin-top: -1px;} .input-title {flex: 0 0 110px;display: flex;align-items: center;justify-content: flex-start;padding-left: 20px;font-size: 14px;font-weight: bold;position: relative;background: #fff;} .input-box.required .input-title:after {content: "*";color: #3366cc;} .input-content {flex-grow: 1;display: flex;align-items: center;min-height: 43px;position: relative;background: #fff;} .input-content input[type=text], .input-content input[type=password] {width: 100%;height: 43px;padding-left: 15px;border: 1px solid transparent;} .input-content select {width: 100%;height: 43px;padding-left: 15px;border: 1px solid transparent;-webkit-appearance: none;-moz-appearance: none;appearance: none;position: relative;background: url('./img/arrow.png') right 5px center no-repeat;background-size: 18px auto;} .input-content select::-ms-expand {display: none;} .input-content select:focus {} .input-content .check-box {margin-left: 15px;} .input-content #btn_autosave {height: 30px;margin-right: 5px;width: 130px;} .input-wrap .cke_sc {display: none;} /********* 파일선택 버튼 크기 ********** width: 110px */ .input-content .hidden-file {height: 43px;overflow: hidden;padding: 10px;} /********* 파일첨부 박스 크기 ********* background: #999;width: 285px; */ .input-content .file-label {height: 100%;display: flex;align-items: center;justify-content: center;color: #fff;} .check-box {position: relative;display: inline-block;} .check-box input {display: none;} .check-box span {display: inline-block;width: 17px;height: 17px;border: 1px solid #c8ccd4;background: #fff;border-radius: 3px;transition: background 0.2s ease;position: absolute;left: 0;top: 50%;transform: translateY(-50%);} .check-box span::after {content: "";position: absolute;top: 1px;left: 5px;width: 5px;height: 11px;border-right: 2px solid #fff;border-bottom: 2px solid #fff;transform: rotate(45deg) scale(0);transition: all 0.3s ease 0.15s;opacity: 0;} .check-box label {cursor: pointer;padding-left: 23px;position: relative;z-index: 1;} .check-box label.sound_only {width: 17px;height: 17px;} .check-box input:checked ~ span {border-color: transparent;background: #3a8afd;animation: checkbox-jelly 0.6s ease;} .check-box input:checked ~ span:after {opacity: 1;transform: rotate(45deg) scale(1);} @keyframes checkbox-jelly { 0% {transform: scale(1, 1) translateY(-50%);} 30% {transform: scale(1.25, 0.75) translateY(-50%);} 40% {transform: scale(0.75, 1.25) translateY(-50%);} 50% {transform: scale(1.15, 0.85) translateY(-50%);} 65% {transform: scale(0.95, 1.05) translateY(-50%);} 75% {transform: scale(1.05, 0.95) translateY(-50%);} to {transform: scale(1, 1) translateY(-50%);} } .button {border: 0;box-shadow: inset 0 0 0 1px #f45e61;position: relative;} .button::before, .button::after {content: "";position: absolute;width: 100%;height: 100%;} .draw {transition: color 0.25s;} .draw::before, .draw::after {border: 1px solid transparent;width: 0;height: 0;} .draw::before {top: 0;left: 0;} .draw::after {bottom: 0;right: 0;} .draw:hover {color: #60daaa;} .draw:hover::before, .draw:hover::after {width: 100%;height: 100%;} .draw:hover::before {border-top-color: #60daaa;border-right-color: #60daaa;transition: width 0.25s ease-out, height 0.25s ease-out 0.25s;} .draw:hover::after {border-bottom-color: #60daaa;border-left-color: #60daaa;transition: border-color 0s ease-out 0.5s, width 0.25s ease-out 0.5s, height 0.25s ease-out 0.75s;} .meet:hover {color: #fbca67;} .meet::after {top: 0;left: 0;} .meet:hover::before {border-top-color: #000;border-right-color: #000;} .meet:hover::after {border-bottom-color: #000;border-left-color: #000;transition: height 0.25s ease-out, width 0.25s ease-out 0.25s;} #bo_w .btn-confirm .btn-submit {background: #1c54a7;box-shadow: none;border: none;color: #fff;width: 140px;height: 50px;font-size: 16px;vertical-align: top;margin-right: 10px;font-weight: bold;transition: all .4s ease-out;} #bo_w .btn-confirm .btn-submit:hover {background: none;color: #000} #bo_w .btn-confirm .btn-cancel {box-shadow: inset 0 0 0 1px #dadada;text-align: center;display: inline-block;width: 140px;height: 50px;line-height: 30px;color: #333;font-size: 20px;vertical-align: top;font-weight: bold;} @media screen and (max-width: 760px) { #bo-cate {margin: 0;padding-bottom: 15px;} .bo-top-wrap {align-items: center;flex-wrap: wrap;margin-bottom: 10px;} .bo-top-wrap .list-total {margin-top: 10px;font-size: 14px;background-size: 20px auto;padding-left: 25px;} .bo-top-wrap .board-btn {margin-left: auto;margin-top: 10px;} .board-btn a {font-size: 13px;padding: 4px 6px;height: auto;} .fz-list {margin-bottom: 10px;} .fz-list .fz-list-th {display: none;} .fz-list li {flex-wrap: wrap;padding: 10px;} .fz-list li > div {order: 2;min-height: auto;padding: 0;margin-right: 15px;} .fz-list li .fz-subject {order: 1;width: 100%;padding: 0;margin-bottom: 10px;margin-right: 0;} .fz-list li .fz-subject a {width: 100%;display: block; /* 제목이 길때 여러줄로 다 나오게 할려면 이 뒷부분 삭제*/ text-overflow: ellipsis; white-space: nowrap; word-wrap: normal; overflow: hidden;} .fz-list li .fz-num {display: none;} .fz-list li .fz-checkbox {flex: 0;} .fz-list li .fz-writer {flex: 0 120px;} .fz-list li .fz-writer.sv-empty-writer {background: url(./img/user.png) 0 center no-repeat;padding-left: 20px;} .fz-list li .fz-date {display: inline-block;white-space: nowrap;overflow: hidden;text-overflow: ellipsis;background: url(./img/schedule.png) 0 center no-repeat;padding-left: 20px;min-width: 70px;max-width: 120px;font-size: 13px;vertical-align: middle;} .fz-list li .fz-hit {flex: 0;background: url(./img/eye-black.png) 0 center no-repeat;padding-left: 20px;} .fz-list li .fz-good {flex: 0;background: url(./img/like_s.png) 0 center no-repeat;padding-left: 20px;} .fz-list li .fz-nogood {flex: 0;background: url(./img/dislike_s.png) 0 center no-repeat;padding-left: 20px;} #bo_list .profile_img img {max-width: 22px;} .bo-v-tit {font-size: 18px;padding: 14px 0;} #bo-v-info {font-size: 12px;padding: 10px 0;} #bo-v-info .profile-info {padding: 0;} #bo-v-info .article-info {padding: 0;margin-left: auto;min-height: 0;margin-top: 3px;} #bo-v-info .profile-info .pf-img {margin-right: 5px;} #bo-v-info .profile-info .pf-img img {width: 22px;height: 22px;vertical-align: top;} #bo-v-share {padding: 10px 0;} .bo-vc-act {display: flex;align-items: center;} #bo-vc article .pf_img img {vertical-align: top;} .cm-header-content {font-size: 13px;} .bo-vc-submit {font-size: 14px;font-weight: 300;padding: 3px 12px;height: auto;} .bo-v-btn-wrap {flex-wrap: wrap;padding-bottom: 5px;margin-bottom: 0;} .bo-v-btn-left {margin-bottom: 5px;} .bo-v-btn-right {margin-left: auto;margin-bottom: 5px;} .bo-vc-guest-area {flex-wrap: wrap;} .bo-vc-guest-input input[type=text], .bo-vc-guest-input input[type=password] {width: 100%;} .bo-vc-guest-input input[type=password] {margin-top: -1px;} .content-input-form {padding: 10px;} .input-title {flex: 0 0 90px;padding-left: 10px;} .input-content input[type=text], .input-content input[type=password] {padding-left: 8px;} .input-content select {padding-left: 8px;} .input-content .check-box {margin-left: 8px;} #bo_w .btn-confirm {margin: 25px 0;} #bo_w .btn-confirm .btn-submit {width: 100px;height: 40px;font-weight: 500;font-size: 14px;} #bo_w .btn-confirm .btn-cancel {width: 100px;height: 40px;font-weight: 500;line-height: 40px;font-size: 14px;} } /* =================================================================== */ /* =================== order.php 전용 스타일 시작 =================== */ /* =================================================================== */ /* ------------------ 반응형 그리드 시스템 (PC 2열, 모바일 1열) ------------------ */ .row { display: flex; flex-wrap: wrap; margin-left: -15px; margin-right: -15px; } .col-lg-6 { position: relative; width: 100%; padding-left: 15px; padding-right: 15px; } /* PC 화면 (가로 992px 이상)에서만 2열로 보이게 설정 */ @media (min-width: 992px) { .col-lg-6 { flex: 0 0 50%; max-width: 50%; } } /* ------------------ 기본 폼 스타일 ------------------ */ .form-group { margin-bottom: 5px; padding-bottom: 20px; border-bottom: 0 solid #eee; } .form-group > label { /* order.php의 label에만 적용되도록 범위 한정 */ font-weight: bold; display: block; margin-bottom: 8px; } .form-group input[type="text"], .form-group textarea { width: 100%; padding: 8px; border: 1px solid #ccc; border-radius: 4px; } .options, .input-inline { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; flex-direction: row; font-size: 0.8em; margin-top: 5px; } .options label { display: flex; align-items: center; background: #f9f9f9; border: 1px solid #ccc; border-radius: 15px; padding: 3px 6px; cursor: pointer; margin-bottom: 0; font-size: 0.8em; } .options input[type="radio"] { margin-right: 3px; } /* 라디오 버튼 강제 표시 (안 보이는 문제 해결) */ .options input[type="radio"] { display: inline-block !important; opacity: 1 !important; visibility: visible !important; -webkit-appearance: radio !important; appearance: radio !important; width: 13px !important; height: 13px !important; margin: 0 5px 0 0 !important; position: static !important; z-index: auto !important; } .tip-mark { color: #3366cc; font-weight: bold; font-size: 0.8em; text-align: left !important; cursor: pointer; margin-right: 10px; display: inline-block; } .tip-desc-box { display: block; vertical-align: top; margin: 10px auto; min-width: 250px; max-width: 900px; width: 100%; background: #f7f7fa; color: #222; font-size: 0.8em; padding: 14px 16px; border-radius: 7px; box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08); white-space: pre-line; text-align: left; border: 1px solid #ddd; } .tip-img { display: block; margin-top: 10px; max-width: 850px; border-radius: 8px; box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08); width: 100%; margin: 10px auto; } .options input[type="text"].window-size { width: 80px; max-width: 40vw; min-width: 60px; padding: 4px 6px; font-size: 1em; border-radius: 4px; box-sizing: border-box; margin-right: 3px; margin-left: 3px; } .options span.x-mark { margin: 0 1px; font-weight: bold; font-size: 1.1em; color: #888; } .pretty-select { appearance: none; -webkit-appearance: none; -moz-appearance: none; background: #f9fafc url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5 8L10 13L15 8' stroke='%233d6cb9' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 1.2em center/1.2em 1.2em; border: 1.5px solid #e2e6ea; border-radius: 8px; padding: 4px 38px 4px 14px; font-size: 0.8em; color: #232526; transition: border 0.18s, box-shadow 0.18s; outline: none; box-shadow: 0 2px 8px rgba(61, 108, 185, 0.05); cursor: pointer; min-width: 140px; } .pretty-select:focus { border: 1.5px solid #3d6cb9; box-shadow: 0 0 0 2px #e7f0fa; } .well2 { position: relative; padding: 45px 15px 15px; background-color: #f5f5f5; border: 1px solid #e3e3e3; border-radius: 4px; box-shadow: inset 0 1px 1px rgba(0, 0, 0, .05); } .remove-window-btn { position: absolute; top: 10px; right: 10px; width: 26px; height: 26px; background-color: #e74c3c; color: white; border: none; border-radius: 50%; font-size: 18px; line-height: 26px; text-align: center; cursor: pointer; font-weight: bold; z-index: 10; transition: background-color 0.2s; } .remove-window-btn:hover { background-color: #c0392b; } .dynamic-box { margin-bottom: 30px; /* 각 창 아이템 사이의 수직 간격 */ } /* ------------------ 팝업 스타일 ------------------ */ .popup-btn { background-color: #f0f5ff; border: 1px solid #3d6cb9; color: #3d6cb9; padding: 8px 15px; border-radius: 20px; cursor: pointer; font-weight: bold; transition: all 0.2s; margin-right: 10px; } .popup-btn:hover { background-color: #3d6cb9; color: #fff; } .modal-overlay { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.65); display: none; justify-content: center; align-items: center; z-index: 1000; padding: 20px; box-sizing: border-box; } .modal-content { background-color: #fff; padding: 25px; border-radius: 10px; box-shadow: 0 5px 15px rgba(0, 0, 0, 0.3); position: relative; max-width: 900px; width: 100%; min-height: 200px; max-height: 90vh; overflow-y: auto; } .modal-close-btn { position: absolute; top: 10px; right: 15px; font-size: 28px; font-weight: bold; color: #888; background: none; border: none; cursor: pointer; line-height: 1; } .modal-close-btn:hover { color: #000; } .modal-overlay.active { display: flex; } /* ------------------ 액션 툴바 스타일 ------------------ */ #action-toolbar { position: -webkit-sticky; position: sticky; top: 0; background-color: rgba(255, 255, 255, 0.95); /* 스크롤 시 약간 투명하게 */ backdrop-filter: blur(5px); /* 배경 블러 효과 (지원 브라우저) */ padding: 10px 15px; border-bottom: 1px solid #e9e9e9; z-index: 990; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; /* 그룹을 양쪽으로 분리 */ gap: 20px; margin-bottom: 20px; } .toolbar-group { display: flex; align-items: center; gap: 10px; } .toolbar-group > label { margin-bottom: 0; font-size: 1em; /* 라벨 폰트 약간 키움 */ color: #333; font-weight: bold; } /* ★★★ 핵심 기능: 창 추가 버튼 ★★★ */ .popup-btn.add-btn { background-color: #3d6cb9; color: #fff; font-weight: bold; padding: 10px 20px; /* 버튼을 더 크고 중요하게 */ font-size: 1em; border-color: #3d6cb9; } .popup-btn.add-btn:hover { background-color: #2c5282; border-color: #2c5282; } /* ★★★ 부가 기능: 도움말 버튼 ★★★ */ .popup-btn.help-btn { background-color: #f0f0f0; /* 덜 눈에 띄는 회색 배경 */ color: #555; border-color: #ddd; padding: 6px 12px; /* 버튼을 더 작게 */ font-weight: normal; /* 굵기 제거 */ font-size: 0.85em; } .popup-btn.help-btn:hover { background-color: #e0e0e0; border-color: #ccc; color: #000; } .well-actions { position: absolute; top: 10px; right: 10px; display: flex; gap: 5px; align-items: center; margin-bottom: 10px; } .well-actions .help-btn { padding: 2px 8px; font-size: 0.8em; margin: 0; } /* 삭제 버튼은 well-actions 안으로 이동했으므로, 기존 스타일에서 position 제거 */ .remove-window-btn2 { /* position: absolute; ... 이 줄 삭제 또는 주석처리 */ background-color: #e74c3c; color: white; border: none; border-radius: 50%; width: 24px; height: 24px; font-size: 16px; line-height: 24px; text-align: center; cursor: pointer; font-weight: bold; z-index: 10; transition: background-color 0.2s; } /* 특정 너비를 가진 폼 요소를 위한 클래스 */ .input-short { width: 100px; } .select-medium { width: 200px; } /* 모바일 화면 (가로 767px 이하) 대응 */ @media (max-width: 767px) { /* '평형'과 '브랜드' 필드가 화면 너비에 맞게 유연하게 조절되도록 함 */ .input-short, .select-medium { /* flex-grow: 1; 를 사용해 남는 공간을 채우게 할 수도 있습니다. */ /* 이 예제에서는 최대 너비를 유지하며 화면이 작아지면 함께 작아지도록 설정합니다. */ max-width: 100%; } } /* style.css 파일 하단에 이 코드를 추가하세요 */ /* Flexbox를 사용하는 폼 그룹을 위한 스타일 */ .form-group-flex { display: flex; align-items: center; gap: 10px; margin-top: 20px; } /* flex 그룹 내의 라벨은 기본 마진을 제거하여 정렬이 깨지지 않도록 합니다. */ .form-group-flex > label { margin: 0; flex-shrink: 0; /* 화면이 좁아져도 라벨이 줄어들지 않도록 함 */ } /* style.css 파일 하단에 이 코드를 추가하세요 */ .address-zip-group, .address-main-group { display: flex; gap: 10px; /* 요소 사이의 간격 */ margin-bottom: 8px; /* 그룹 아래 여백 */ } /* 우편번호 입력 필드 */ .address-zip-group .zip-input { width: 120px; flex-grow: 0; /* 늘어나지 않음 */ } /* 우편번호 찾기 버튼 */ .address-zip-group .postcode-btn { margin: 0; /* 기본 마진 제거 */ flex-shrink: 0; /* 줄어들지 않음 */ } /* 기본/상세 주소 입력 필드 */ /* 기본/상세 주소 입력 필드 */ .address-main-group .addr-input { /* flex: 1; <-- 이 줄은 아래의 ID 선택자로 대체되므로 제거합니다. */ min-width: 0; /* flex item이 부모보다 작아질 수 있도록 함 */ } /* 기본주소(#mb_addr1) 필드를 약 70% 비율로 설정 */ .address-main-group #mb_addr1 { flex-grow: 7; } /* 상세주소(#mb_addr2) 필드를 약 30% 비율로 설정 */ .address-main-group #mb_addr2 { flex-grow: 3; } /* =================================================================== */ /* ===================== 툴팁 스타일 (추가) ===================== */ /* =================================================================== */ /* 툴팁을 감싸는 컨테이너. 아이콘과 텍스트를 함께 묶어줍니다. */ .tooltip-wrapper { position: relative; /* 툴팁 위치의 기준점이 됩니다. */ display: inline-flex; /* 아이콘과 텍스트를 나란히 정렬합니다. */ align-items: center; margin-left: 8px; /* 다른 요소와의 간격을 만듭니다. */ } /* 💡 [수정] 툴팁 아이콘 스타일 (더 작고 세련되게) */ .tooltip-icon { font-size: 19px; /* 아이콘 크기를 적절하게 조정 */ color: #5c7cfa; /* 부드럽고 세련된 파란색으로 변경 */ vertical-align: middle; cursor: pointer; transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1); /* 부드러운 애니메이션 효과 */ opacity: 0.75; } /* 💡 [수정] 아이콘에 마우스를 올렸을 때의 인터랙티브 효과 */ .tooltip-icon:hover { color: #3d5afe; /* 더 선명한 파란색으로 변경 */ transform: translateY(-1px) scale(1.1); /* 살짝 위로 떠오르며 확대되는 효과 */ opacity: 1; text-shadow: 0 2px 4px rgba(61, 90, 254, 0.2); /* 은은한 그림자 효과 추가 */ } /* 툴팁 텍스트 박스 (기본적으로는 보이지 않음) */ .tooltip-text { visibility: hidden; /* 기본적으로 숨김 처리 */ opacity: 0; width: 240px; /* 툴팁의 가로 너비 */ background-color: #2c3e50; /* 배경색 */ color: #fff; /* 글자색 */ text-align: left; border-radius: 6px; padding: 10px 14px; position: absolute; /* 아이콘을 기준으로 위치를 잡습니다. */ z-index: 10; bottom: 150%; /* 아이콘보다 위쪽에 위치시킵니다. */ left: 50%; margin-left: -120px; /* 너비의 절반만큼 왼쪽으로 이동하여 중앙에 오도록 합니다. */ transition: opacity 0.3s, visibility 0.3s; font-size: 0.9em; line-height: 1.5; box-shadow: 0 4px 12px rgba(0,0,0,0.15); } /* 툴팁의 꼬리표(화살표 모양)를 만듭니다. */ .tooltip-text::after { content: ""; position: absolute; top: 100%; /* 툴팁 박스 바로 아래에 붙입니다. */ left: 50%; margin-left: -5px; border-width: 5px; border-style: solid; border-color: #2c3e50 transparent transparent transparent; /* 위쪽을 향한 삼각형 모양 */ } /* 💡 핵심: 아이콘(wrapper)에 마우스를 올렸을 때, 숨겨뒀던 툴팁 텍스트를 보여줍니다. */ .tooltip-wrapper:hover .tooltip-text { visibility: visible; opacity: 1; } /* 모바일 반응형 스타일 (767px 이하) */ @media (max-width: 767px) { .address-main-group { flex-direction: column; /* 세로로 쌓이도록 변경 */ gap: 8px; /* 세로 간격 조정 */ } } /* =================== order_eclem.php 전용 스타일 끝 =================== */ /* =================================================================== */ /* =================== view.skin.php 전용 스타일 =================== */ /* =================================================================== */ #bo_v_top { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; padding-bottom: 15px; margin-bottom: 20px; border-bottom: 1px solid #eee; } /* 2단 레이아웃 컨테이너 */ .order-view-container { display: flex; flex-wrap: wrap; gap: 20px; margin-top: 20px; } /* 견적 공통 사양 (좌측) */ .order-common-specs { flex: 1 1 400px; /* 최소 너비 400px, 늘어남, 줄어듦 */ border: 1px solid #ddd; border-radius: 8px; padding: 20px; background: #fdfdfd; } /* 개별 창 상세 사양 (우측) */ .order-individual-specs { flex: 2 1 600px; /* 좌측보다 2배 넓게 차지하려 함, 최소 600px */ border: 1px solid #ddd; border-radius: 8px; padding: 20px; background: #fff; } /* 제목 스타일 조정 */ .order-common-specs h3, .order-individual-specs h3 { margin-top: 0 !important; margin-bottom: 15px; padding-bottom: 10px; border-bottom: 2px solid #333; font-size: 1.2em; font-weight: bold; color: #333; } /* 공통 사양 테이블 스타일 */ .house-info { width: 100%; border-collapse: collapse; } .house-info th { background-color: #f9f9f9; padding: 10px; border-bottom: 1px solid #eee; text-align: left; color: #555; font-weight: 600; width: 30%; } .house-info td { padding: 10px; border-bottom: 1px solid #eee; color: #333; } /* 개별 창 리스트형 테이블 스타일 */ .view-table { width: 100%; border-collapse: collapse; font-size: 13px; } .view-table th { background-color: #f1f3f5; padding: 12px 8px; border-bottom: 1px solid #d1d1d1; font-weight: bold; color: #333; text-align: center; white-space: nowrap; } .view-table td { padding: 10px 8px; border-bottom: 1px solid #eee; text-align: center; color: #555; } .view-table tr:last-child td { border-bottom: none; } .view-table tr:hover td { background-color: #f8faff; } /* 테이블 스크롤 처리 (내용이 많을 경우) */ .table-scroll { overflow-x: auto; -webkit-overflow-scrolling: touch; } /* 반응형 처리 */ @media (max-width: 1024px) { .order-view-container { flex-direction: column; /* 세로로 쌓음 */ } .order-common-specs, .order-individual-specs { width: 100%; flex: 1 1 auto; box-sizing: border-box; /* 패딩 포함 너비 계산 */ } } /* =================================================================== */ /* =================== 관리자 상태 변경 모달 스타일 =================== */ /* =================================================================== */ .admin-status-modal { display: none; /* 기본적으로 숨김 */ position: fixed; z-index: 9999; left: 0; top: 0; width: 100%; height: 100%; overflow: auto; background-color: rgba(0,0,0,0.5); /* 반투명 배경 */ align-items: center; /* 수직 중앙 정렬 */ justify-content: center; /* 수평 중앙 정렬 */ } .admin-status-modal-content { background-color: #fefefe; padding: 25px; border: 1px solid #ddd; width: 90%; max-width: 450px; border-radius: 8px; box-shadow: 0 5px 15px rgba(0,0,0,0.2); text-align: left; } .admin-status-modal-content h4 { margin-top: 0; margin-bottom: 20px; font-size: 1.3em; color: #333; border-bottom: 1px solid #eee; padding-bottom: 10px; } .admin-status-modal-content p { margin-bottom: 15px; font-size: 14px; } .admin-status-modal-content p strong { color: #555; display: inline-block; width: 90px; } .admin-status-modal-content label { font-weight: bold; color: #444; display: block; margin-bottom: 5px; } .admin-status-modal-content select, .admin-status-modal-content textarea { width: 100%; padding: 8px; border: 1px solid #ccc; border-radius: 4px; box-sizing: border-box; font-size: 14px; } .admin-status-modal-content textarea { height: 70px; resize: vertical; } .admin-status-modal-actions { text-align: right; margin-top: 25px; padding-top: 15px; border-top: 1px solid #eee; } .admin-status-modal-actions .btn_submit, .admin-status-modal-actions .btn_cancel { padding: 8px 15px; font-size: 14px; border-radius: 5px; }