﻿.tbl_head01 th, .tbl_head01 td {
    text-align: center;
    vertical-align: middle;
    padding: 8px 6px;
    font-size: 14px;
}
.tbl_head01 .td_subject {
    text-align: left;
}
.tbl_head01 .td_region, .tbl_head01 .td_job, .tbl_head01 .td_gender {
    font-weight: 500;
    color: #333;
}
.tbl_head01 .notice_icon {
    color: red;
    font-weight: bold;
}
.tbl_head01 .bo_current {
    color: #007bff;
    font-weight: bold;
}
.tbl_head01 tbody tr.even {
    background-color: #fafafa;
}


.filter_wrap { margin-bottom:20px; }
.filter_btn {
    display:inline-block;
    margin:4px 6px 4px 0;
    padding:8px 16px;
    border:1px solid #ddd;
    border-radius:25px;
    background:#fff;
    text-decoration:none;
    color:#333;
    font-weight:500;
    transition: all 0.2s ease;
}
.filter_btn.active {
    background:#333;
    color:#fff;
    border-color:#333;
}
.card_list { display:flex; flex-wrap:wrap; gap:20px; }
.card_item {
	position:relative;
    width: 100% !important; /* 전체 폭 */
    border:1px solid #ddd;
    border-radius:10px;
    padding:15px;
    background:#fff;
    box-shadow:0 4px 14px rgba(0,0,0,0.08);
	box-sizing: border-box; /* 패딩 포함해서 width 계산 */
}
.card_item h3 { font-size:1.2rem; margin-bottom:8px; }
.card_item p { font-size:1.1rem; margin:2px 0; color:#555; }
.card_btn { display:inline-block; margin-top:8px; padding:6px 12px; background:#007bff; color:#fff; border-radius:4px; text-decoration:none; font-size:0.85rem; }
@media (max-width:768px) { .card_item { width:100%; } }
.badge_wait_top {
    position:absolute;
    top:12px;
    right:12px;
    padding:4px 10px;
    font-size:12px;
    font-weight:600;
    color:#fff;
    background:#e74c3c;
    border-radius:20px;
}

.approval_notice {
    margin-top:6px;
    padding:8px 12px;
    font-size:13px;
    background:#fff3cd;
    color:#856404;
    border:1px solid #ffeeba;
    border-radius:6px;
}


/* 구직이력서 하단 업체 면접제의 css */
.invite_list {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: 24px;
    margin-top: 20px;
}

.invite_card {
    background: #ffffff;
    border-radius: 18px;
    padding: 24px;
    text-align: center;
    box-shadow: 0 8px 25px rgba(0,0,0,0.06);
    transition: all 0.25s ease;
    position: relative;
}

.invite_card:hover {
    transform: translateY(-6px);
    box-shadow: 0 14px 35px rgba(0,0,0,0.12);
}

.invite_card strong {
    display: block;
    font-size: 1.2rem;
    font-weight: 600;
    margin-bottom: 8px;
    color: #222;
}

.invite_card a {
    display: inline-block;
    margin-top: 12px;
    font-size: 0.9rem;
    color: #4f46e5;
    text-decoration: none;
    font-weight: 500;
}

.invite_card a:hover {
    text-decoration: underline;
}

/* 버튼 공통 */
.invite_card button {
    width: 100%;
    padding: 12px 0;
    border: none;
    border-radius: 12px;
    font-size: 0.95rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
}

/* 면접제안 버튼 */
.invite_empty button,
.invite_card form button[type="submit"][value="invite"] {
    background: linear-gradient(135deg, #6366f1, #4f46e5);
    color: #fff;
}

.invite_empty button:hover {
    background: linear-gradient(135deg, #4f46e5, #4338ca);
    transform: scale(1.03);
}

/* 취소 버튼 */
.invite_filled button {
    background: #f3f4f6;
    color: #ef4444;
    border: 1px solid #e5e7eb;
}

.invite_filled button:hover {
    background: #fee2e2;
}

/* 비활성 */
.invite_card button:disabled {
    background: #e5e7eb;
    color: #9ca3af;
    cursor: not-allowed;
}

/* 반응형 */
@media (max-width: 768px) {
    .invite_list {
        grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
    }
}
