@charset "utf-8";
/* =====================================================================
   공고내용보기 - 비로그인 게스트 티저 - 2026-07-31
   ※ .gv_blur 의 blur 는 "가려진 정보가 있다"를 보여주는 연출일 뿐이다.
     실제 차단은 서버(common/view.php 화이트리스트)가 한다. 안에 있는 값은 더미.
   ===================================================================== */

.guest_view { --c-main:#2197d4; --c-main-d:#1b7cb0; --c-line:#e5e8ec; --c-text:#2b3440; --c-muted:#8a94a2;
              padding:4px 0 40px; }

/* ----- 제목 ----- */
.guest_view .gv_head { padding:0 2px 16px; border-bottom:2px solid #33475c; margin-bottom:20px; }
.guest_view .gv_title { margin:0 0 10px; font-size:20px; font-weight:700; color:#1a2733; line-height:1.45; word-break:keep-all; }
.guest_view .gv_meta { display:flex; align-items:center; gap:10px; }
.guest_view .gv_code { font-size:12px; color:var(--c-muted); letter-spacing:0.2px; }
.guest_view .gv_badge { display:inline-block; padding:2px 10px; border-radius:11px; font-size:11px; font-weight:700; }
.guest_view .gv_badge.is_open { background:#e8f4fd; color:#1b7cb0; }
.guest_view .gv_badge.is_closed { background:#f0f1f3; color:#8a94a2; }

/* ----- 공개 정보표 ----- */
.guest_view .gv_info { border-collapse:collapse; border:1px solid var(--c-line); background:#fff; }
.guest_view .gv_info th { background:#f4f7fa; color:#4a5b6d; font-size:12px; font-weight:600; text-align:left;
                          padding:12px 14px; border:1px solid var(--c-line); white-space:nowrap; }
.guest_view .gv_info td { padding:12px 14px; border:1px solid var(--c-line); font-size:13px; color:var(--c-text);
                          line-height:1.5; word-break:keep-all; }
.guest_view .gv_info .c_red { color:#d32f2f; }
.guest_view .gv_info .c_blue { color:#1b7cb0; }

/* ----- 잠긴 영역 ----- */
.guest_view .gv_locked { position:relative; margin-top:18px; }
.guest_view .gv_blur { filter:blur(5px); -webkit-filter:blur(5px); user-select:none; -webkit-user-select:none;
                       pointer-events:none; opacity:0.85; }
.guest_view .gv_fakedoc { margin-top:14px; padding:18px 16px; border:1px solid var(--c-line); background:#fff; }
.guest_view .gv_fakedoc p { margin:0 0 10px; font-size:13px; color:#5a6b7d; line-height:1.9; letter-spacing:1px; }

/* CTA 카드 - 잠긴 영역 위에 겹친다 */
.guest_view .gv_cta { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%);
                      width:min(420px, 92%); box-sizing:border-box; padding:30px 28px; text-align:center;
                      background:#fff; border-radius:12px; box-shadow:0 14px 40px rgba(20,40,60,0.20); }
.guest_view .gv_cta_lead { margin:0 0 20px; font-size:13px; color:#54626f; line-height:1.75; word-break:keep-all; }
.guest_view .gv_cta_lead strong { color:var(--c-main-d); }
.guest_view .gv_btn_login { display:block; height:48px; line-height:48px; border-radius:8px;
                            background:var(--c-main); color:#fff !important; font-size:15px; font-weight:700;
                            text-decoration:none !important; transition:background .15s; }
.guest_view .gv_btn_login:hover { background:var(--c-main-d); }
.guest_view .gv_btn_join { display:inline-block; margin-top:14px; padding-bottom:2px; font-size:13px; font-weight:600;
                           color:#54626f !important; border-bottom:1px solid #b9c3cd; text-decoration:none !important; }
.guest_view .gv_btn_join:hover { color:var(--c-main) !important; border-bottom-color:var(--c-main); }

.guest_view .gv_foot { margin:22px 2px 0; font-size:12px; color:var(--c-muted); }

/* 마스킹된 값(발주처·공고번호) — 잘렸다는 걸 알아보게 흐린 회색 */
.guest_view .gv_mask { color:#8a94a2; letter-spacing:0.5px; }

/* ----- 목록 티저 (page_body_list_guest.html) ----- */
.guest_list .gl_notice { margin:0 0 16px; padding:13px 16px; border:1px solid #cfe6f7; border-radius:8px;
                         background:#f2f9fe; font-size:13px; color:#316b91; line-height:1.7; word-break:keep-all; }
.guest_list .gl_notice strong { color:#1b7cb0; }
.guest_list .gl_table { border-collapse:collapse; border:1px solid var(--c-line); background:#fff; }
.guest_list .gl_table th { background:#f4f7fa; color:#4a5b6d; font-size:12px; font-weight:600; text-align:center;
                           padding:12px 8px; border-bottom:1px solid #dbe2ea; }
.guest_list .gl_table td { padding:13px 10px; border-bottom:1px solid var(--c-line); font-size:13px;
                           color:var(--c-text); vertical-align:middle; line-height:1.5; }
.guest_list .gl_table tbody tr:last-child td { border-bottom:none; }
.guest_list .gl_table tbody tr:hover td { background:#f4faff; }
.guest_list .gl_table td.a_center { text-align:center; }
.guest_list .gl_table td.a_left { text-align:left; }
.guest_list .gl_table td.nowrap { white-space:nowrap; }
.guest_list .gl_table td.gl_mask { color:#98a3ae; letter-spacing:0.5px; }
.guest_list .gl_table td.gl_nodata { text-align:center; padding:40px 0; color:var(--c-muted); }
.guest_list .gl_name { display:block; font-weight:600; color:#1b3a55 !important; text-decoration:none !important;
                       word-break:keep-all; line-height:1.45; }
.guest_list .gl_name:hover { color:var(--c-main) !important; text-decoration:underline !important; }
.guest_list .gl_sub { display:block; margin-top:4px; font-size:11px; color:#a3adb8; }

.guest_list .gl_more { margin-top:24px; padding:28px 24px; text-align:center; background:#fff;
                       border:1px solid var(--c-line); border-radius:12px; }
.guest_list .gl_more_lead { margin:0 0 18px; font-size:13px; color:#54626f; line-height:1.7; word-break:keep-all; }
.guest_list .gl_more_lead strong { color:var(--c-main-d); }
.guest_list .gl_more .gv_btn_login { display:inline-block; width:min(340px,100%); box-sizing:border-box; }

@media screen and (max-width:760px) {
	.guest_list .gl_table { display:block; overflow-x:auto; }
	.guest_list .gl_table table { min-width:680px; }
}

@media screen and (max-width:760px) {
	.guest_view .gv_info colgroup { display:none; }
	.guest_view .gv_info th, .guest_view .gv_info td { display:block; width:auto; border-top:none; }
	.guest_view .gv_cta { padding:24px 18px; }
}
