.jobs-container{padding-bottom:3rem}.jobs-service-hero{text-align:center;padding:3rem 0 2rem;background:linear-gradient(135deg,#667eea15,#764ba215);border-radius:16px;margin-bottom:2rem}.jobs-service-hero h1{font-size:2rem;font-weight:700;color:var(--color-text);margin-bottom:.75rem}.jobs-service-desc{font-size:1.1rem;color:var(--color-text-secondary);margin-bottom:1.5rem;max-width:600px;margin-left:auto;margin-right:auto}.jobs-service-btns{display:flex;gap:1rem;justify-content:center}.jobs-service-btn-primary,.jobs-service-btn-outline{display:inline-flex;align-items:center;gap:.4rem;padding:.7rem 1.5rem;border-radius:8px;font-weight:600;font-size:.95rem;text-decoration:none;transition:all .2s}.jobs-service-btn-primary{background:var(--color-primary, #18A058);color:#fff}.jobs-service-btn-primary:hover{opacity:.85}.jobs-service-btn-outline{border:2px solid var(--color-primary, #18A058);color:var(--color-primary, #18A058);background:transparent}.jobs-service-btn-outline:hover{background:var(--color-primary, #18A058);color:#fff}.jobs-sub-services{margin-bottom:2.5rem}.jobs-section-title{font-size:1.4rem;font-weight:700;color:var(--color-text);margin-bottom:1.5rem;text-align:center}.jobs-sub-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.25rem}.jobs-sub-card{background:var(--color-bg, #fff);border:1px solid var(--color-border, #e8e8e8);border-radius:12px;padding:1.5rem;text-align:center;transition:transform .2s,box-shadow .2s}.jobs-sub-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #00000014}.jobs-sub-icon{font-size:2.5rem;display:block;margin-bottom:.75rem}.jobs-sub-card h3{font-size:1.1rem;font-weight:600;color:var(--color-text);margin-bottom:.5rem}.jobs-sub-card p{font-size:.9rem;color:var(--color-text-secondary);margin-bottom:1rem;line-height:1.5}.jobs-sub-price{display:inline-block;padding:.3rem .8rem;background:#18a0581a;color:var(--color-primary, #18A058);border-radius:20px;font-size:.85rem;font-weight:600}.jobs-list-section{margin-bottom:2.5rem}.jobs-search-bar{display:flex;gap:.5rem;margin-bottom:1rem}.jobs-search-input{flex:1;padding:.65rem 1rem;border:1px solid var(--color-border, #e0e0e0);border-radius:8px;font-size:.95rem;background:var(--color-bg, #fff);color:var(--color-text);outline:none;transition:border-color .2s}.jobs-search-input:focus{border-color:var(--color-primary, #18A058)}.jobs-search-btn{padding:.65rem 1.2rem;background:var(--color-primary, #18A058);color:#fff;border:none;border-radius:8px;font-weight:600;font-size:.9rem;cursor:pointer;transition:opacity .2s;white-space:nowrap}.jobs-search-btn:hover{opacity:.85}.jobs-filters{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.filter-group{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.filter-label{font-size:.85rem;font-weight:600;color:var(--color-text-secondary);white-space:nowrap}.filter-tabs{display:flex;gap:.4rem;flex-wrap:wrap}.filter-tab,.sort-tab{padding:.35rem .8rem;border:1px solid var(--color-border, #e0e0e0);border-radius:20px;background:transparent;color:var(--color-text-secondary);font-size:.82rem;cursor:pointer;transition:all .2s}.filter-tab:hover,.sort-tab:hover{border-color:var(--color-primary, #18A058);color:var(--color-primary, #18A058)}.filter-tab.active,.sort-tab.active{background:var(--color-primary, #18A058);border-color:var(--color-primary, #18A058);color:#fff}.jobs-sort-bar{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.sort-tabs{display:flex;gap:.4rem}.jobs-total-count{font-size:.82rem;color:var(--color-text-tertiary)}.job-card{border:1px solid var(--color-border, #e8e8e8);border-radius:10px;padding:1.1rem 1.2rem;margin-bottom:.75rem;background:var(--color-bg, #fff);transition:border-color .2s,box-shadow .2s}.job-card:hover{border-color:var(--color-primary, #18A058);box-shadow:0 2px 8px #18a05814}.jc-top{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.4rem}.jc-title{font-size:1rem;font-weight:600;color:var(--color-text);line-height:1.4}.jc-salary{font-size:1rem;font-weight:700;color:#f5892e;white-space:nowrap}.jc-company{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.jc-company-name{font-size:.9rem;color:var(--color-text);font-weight:500}.jc-scale{font-size:.8rem;color:var(--color-text-tertiary)}.jc-tags{display:flex;gap:.4rem;flex-wrap:wrap;margin-bottom:.5rem}.jc-tag{padding:.2rem .55rem;border-radius:4px;font-size:.75rem;font-weight:500}.tag-type{background:#18a05814;color:var(--color-primary, #18A058)}.tag-cat{background:#339fff14;color:#339fff}.tag-city,.tag-edu,.tag-exp{background:var(--color-bg-soft, #f7f8fa);color:var(--color-text-secondary)}[data-theme=dark] .tag-city,[data-theme=dark] .tag-edu,[data-theme=dark] .tag-exp{background:#ffffff14}.jc-benefits{display:flex;gap:.4rem;flex-wrap:wrap;margin-bottom:.5rem}.jc-benefit{padding:.15rem .45rem;border:1px solid rgba(24,160,88,.2);border-radius:4px;font-size:.72rem;color:var(--color-primary, #18A058)}.jc-footer{display:flex;align-items:center;gap:1rem;font-size:.8rem;color:var(--color-text-tertiary)}.jc-detail-btn{margin-left:auto;color:var(--color-primary, #18A058);font-weight:600;font-size:.82rem;text-decoration:none}.jc-detail-btn:hover{text-decoration:underline}.js-skel{height:120px;border-radius:10px;background:linear-gradient(90deg,var(--color-bg-soft, #f0f0f0) 25%,var(--color-bg, #e8e8e8) 50%,var(--color-bg-soft, #f0f0f0) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;margin-bottom:.75rem}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.jobs-pagination{display:flex;justify-content:center;gap:.4rem;margin-top:1.5rem}.page-btn{padding:.4rem .8rem;border:1px solid var(--color-border, #e0e0e0);border-radius:6px;background:var(--color-bg, #fff);color:var(--color-text-secondary);font-size:.85rem;cursor:pointer;transition:all .2s}.page-btn:hover{border-color:var(--color-primary, #18A058);color:var(--color-primary, #18A058)}.page-btn.active{background:var(--color-primary, #18A058);border-color:var(--color-primary, #18A058);color:#fff}.page-dots{padding:.4rem .2rem;color:var(--color-text-tertiary)}.jobs-empty{text-align:center;padding:3rem 1rem}.empty-icon{font-size:3rem;margin-bottom:1rem}.jobs-empty h3{font-size:1.1rem;color:var(--color-text);margin-bottom:.5rem}.jobs-empty p{font-size:.9rem;color:var(--color-text-secondary);margin-bottom:1.5rem}.empty-resume-btn{display:inline-block;padding:.6rem 1.5rem;background:var(--color-primary, #18A058);color:#fff;border-radius:8px;text-decoration:none;font-weight:600}.jobs-error{text-align:center;padding:2rem;color:var(--color-text-secondary)}.jobs-related-tools{margin-bottom:2rem}.jobs-tool-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.jobs-tool-card{background:var(--color-bg, #fff);border:1px solid var(--color-border, #e8e8e8);border-radius:10px;padding:1.2rem;text-decoration:none;transition:all .2s}.jobs-tool-card:hover{border-color:var(--color-primary, #18A058);transform:translateY(-2px);box-shadow:0 4px 12px #00000014}.jobs-tool-card h4{font-size:1rem;font-weight:600;color:var(--color-text);margin-bottom:.4rem}.jobs-tool-card p{font-size:.85rem;color:var(--color-text-secondary);margin:0}@media(max-width:640px){.jobs-service-hero{padding:2rem 1rem}.jobs-service-hero h1{font-size:1.5rem}.jobs-service-desc{font-size:.95rem}.jobs-service-btns{flex-direction:column}.jobs-sub-grid{grid-template-columns:1fr}.jc-top{flex-direction:column;gap:.3rem}.jc-salary{align-self:flex-start}.jobs-tool-grid{grid-template-columns:1fr}}
