.banner-wrapper{-o-object-fit:cover;object-fit:cover;filter:brightness(.9);--wave-width:90px;--wave-height:60px;--radius:88px;--mask:linear-gradient(#000 0 0)top/100% calc(100% - var(--wave-height))no-repeat,radial-gradient(var(--radius)at 50% calc(100% - var(--wave-height)*1.5),#000 99%,#0000 101%)calc(50% - var(--wave-width)/2)100%/var(--wave-width)calc(var(--wave-height)*2)repeat-x,radial-gradient(var(--radius)at 50% calc(100% + var(--wave-height)*.5),#0000 99%,#000 101%)50% calc(100% - var(--wave-height))/var(--wave-width)calc(var(--wave-height)*2)repeat-x;width:100%;height:400px;-webkit-mask:var(--mask);-webkit-mask:var(--mask);mask:var(--mask)}.banner-wrapper .about-banner{-o-object-fit:cover;object-fit:cover;filter:brightness(.9);width:100%;height:100%}.banner-wrapper .banner-content{color:#fff;text-align:center;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.banner-wrapper .banner-content h2{letter-spacing:.5rem;font-size:2.5rem;font-weight:300}.banner-wrapper .banner-content .line{background:#fff;width:40px;height:1px;margin:20px auto}.page-wrapper{flex-direction:column;min-height:100vh;display:flex}.page-wrapper .main-container{box-sizing:border-box;width:100%;padding:0 24px}.filter-card{box-sizing:border-box;background:#fff;max-width:1240px;margin:60px auto 40px;padding:30px}.filter-card .search-group{gap:12px;margin-bottom:24px;display:flex}.filter-card .search-group .search-input{border:1px solid #e5e7eb;border-radius:6px;outline:none;flex:1;padding:12px 16px;font-size:15px}.filter-card .search-group .search-input:focus{border-color:#2563eb}.filter-card .search-group .search-btn{color:#fff;cursor:pointer;word-break:keep-all;background:#2563eb;border:none;border-radius:6px;padding:0 32px;font-weight:500}@media (max-width:768px){.filter-card .search-group .search-btn{padding:0 16px}}.filter-card .search-group .search-btn:hover{background:#2563eb}.filter-card .filter-options .filter-row{align-items:flex-start;margin-bottom:16px;font-size:14px;display:flex}.filter-card .filter-options .filter-row:last-child{margin-bottom:0}.filter-card .filter-options .filter-row .filter-label{color:#6b7280;width:80px;padding-top:6px}.filter-card .filter-options .filter-row .filter-list{flex-wrap:wrap;flex:1;gap:8px;display:flex}.filter-card .filter-options .filter-row .filter-list .filter-item{color:#1f2937;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:6px 12px;transition:all .25s}.filter-card .filter-options .filter-row .filter-list .filter-item:hover{color:#2563eb;background:#2563eb0d}.filter-card .filter-options .filter-row .filter-list .filter-item.active{color:#2563eb;background:#2563eb1a;font-weight:700}.empty-state{text-align:center;color:#6b7280;padding:40px 0}.job-list-container{flex-direction:column;gap:16px;max-width:1240px;margin:40px auto;display:flex}.job-list-container .job-item-card{cursor:pointer;background:#fff;border:1px solid #0000;justify-content:space-between;align-items:center;padding:24px;transition:all .25s;display:flex}.job-list-container .job-item-card:hover{border-color:#2563eb33;transform:translateY(-3px);box-shadow:0 8px 20px #00000014}.job-list-container .job-item-card .job-header{align-items:center;gap:12px;margin-bottom:8px;display:flex}.job-list-container .job-item-card .job-header .job-title{color:#1f2937;margin:0;font-size:18px;font-weight:700}.job-list-container .job-item-card .job-header .job-salary{color:#f97316;font-size:17px;font-weight:600}.job-list-container .job-item-card .job-meta{color:#666;align-items:center;margin-bottom:10px;font-size:14px;display:flex}.job-list-container .job-item-card .job-meta:after{content:""}.job-list-container .job-item-card .job-summary{color:#999;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:16px;font-size:14px;line-height:1.6;display:-webkit-box;overflow:hidden}.job-list-container .job-item-card .job-desc-summary{color:#333;margin-bottom:8px;font-size:14px}.job-list-container .job-item-card .job-tags{flex-wrap:wrap;gap:8px;display:flex}.job-list-container .job-item-card .job-tags .tag{color:#1a4999;background:#1a49990d;border:1px solid #1a49991a;border-radius:4px;padding:4px 12px;font-size:12px}.job-list-container .job-item-card .company-name{color:#6b7280;margin-bottom:12px;font-size:14px}.job-list-container .job-item-card .job-tags{gap:12px;display:flex}.job-list-container .job-item-card .job-tags .tag{color:#999;background:#f9fafb;border-radius:4px;padding:4px 10px;font-size:12px}.job-list-container .job-item-card .job-action-side{align-items:center;gap:24px;display:flex}.job-list-container .job-item-card .job-action-side a{text-decoration:none}.job-list-container .job-item-card .job-action-side .post-info{text-align:right}.job-list-container .job-item-card .job-action-side .post-info .time{color:#6b7280;margin:0;font-size:13px}.job-list-container .job-item-card .job-action-side .post-info .status{color:#999;margin:4px 0 0;font-size:12px}.job-list-container .job-item-card .job-action-side .detail-btn{color:#2563eb;cursor:pointer;background:#2563eb14;border:none;border-radius:20px;padding:10px 24px;font-weight:600;transition:all .25s}.job-list-container .job-item-card .job-action-side .detail-btn:hover{color:#fff;background:#2563eb}@media (max-width:768px){.main-container{margin-top:70px!important}.banner-box .about-banner{height:180px}.job-item-card{flex-direction:column;align-items:flex-start}.job-item-card .job-action-side{border-top:1px dashed #e5e7eb;justify-content:space-between;width:100%;margin-top:16px;padding-top:16px}}
