.funpsjp-wrap{
    width:100%;
    max-width:980px;
    margin:20px auto;
    font-family:Arial,Helvetica,sans-serif;
}
.funpsjp-table-scroll{overflow-x:auto;}
.funpsjp-table{
    width:100%;
    border-collapse:separate;
    border-spacing:0;
    background:#fff;
    border:1px solid #dce4ec;
    border-radius:12px;
    overflow:hidden;
    box-shadow:0 8px 25px rgba(20,40,60,.05);
}
.funpsjp-table th{
    background:#10283a;
    color:#fff;
    text-align:left;
    font-size:12px;
    font-weight:700;
    padding:14px 13px;
    white-space:nowrap;
}
.funpsjp-table th:first-child{border-top-left-radius:12px;}
.funpsjp-table th:last-child{text-align:center;border-top-right-radius:12px;}
.funpsjp-table td{
    padding:12px 13px;
    border-bottom:1px solid #e2e8ee;
    color:#1c2d3d;
    font-size:13px;
}
.funpsjp-table tbody tr:last-child td{border-bottom:0;}
.funpsjp-table td:last-child{text-align:center;}
.funpsjp-table tbody tr:hover{background:#f7fafc;}
.funpsjp-table .funpsjp-salary{background:#fff5e5;}
.funpsjp-badge{
    display:inline-block;
    min-width:68px;
    padding:4px 9px;
    border-radius:5px;
    font-size:10px;
    line-height:1.1;
    font-weight:700;
    text-align:center;
}
.funpsjp-badge.done{background:#dfe6ef;color:#1d3d5c;}
.funpsjp-badge.next{background:#d6f7e8;color:#008b62;}
.funpsjp-badge.planned{background:#edf1f5;color:#5b728a;}
@media(max-width:700px){
    .funpsjp-table th,.funpsjp-table td{padding:10px 8px;font-size:11px;}
    .funpsjp-table th{font-size:10px;}
    .funpsjp-badge{min-width:58px;padding:4px 6px;font-size:9px;}
}
