.job-card[data-v-b8676fc8]{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;padding:20px;transition:all .3s;cursor:pointer}.job-card[data-v-b8676fc8]:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.job-header[data-v-b8676fc8]{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:15px}.job-title[data-v-b8676fc8]{font-size:16px;font-weight:700;color:#333;margin:0;flex:1}.salary[data-v-b8676fc8]{background:#ff6b35;color:#fff;padding:4px 8px;border-radius:4px;font-size:14px;font-weight:700;margin-left:10px}.job-info[data-v-b8676fc8]{display:flex;flex-wrap:wrap;gap:10px;font-size:12px;color:#666;margin-bottom:15px}.job-info span[data-v-b8676fc8]{background:#e9ecef;padding:2px 8px;border-radius:12px}.job-tags[data-v-b8676fc8]{display:flex;flex-wrap:wrap;gap:5px}.job-tags .tag[data-v-b8676fc8]{font-size:11px;padding:2px 6px}.home[data-v-5b54a827]{padding:20px 0}.content-wrapper[data-v-5b54a827]{display:flex;gap:30px}.sidebar[data-v-5b54a827]{width:250px;background:white;border-radius:8px;padding:20px;height:fit-content;box-shadow:0 2px 8px #0000001a}.sidebar-section[data-v-5b54a827]{margin-bottom:30px}.sidebar-section h3[data-v-5b54a827]{font-size:16px;font-weight:700;margin-bottom:15px;color:#333}.category-list[data-v-5b54a827]{list-style:none}.category-list li[data-v-5b54a827]{margin-bottom:8px;cursor:pointer;padding:8px 12px;border-radius:4px;transition:all .3s;color:#666}.category-list li[data-v-5b54a827]:hover,.category-list li.active[data-v-5b54a827]{background:#e3f2fd;color:#007bff}.tag-list[data-v-5b54a827]{display:flex;flex-wrap:wrap;gap:8px}.job-listings[data-v-5b54a827]{flex:1;background:white;border-radius:8px;padding:20px;box-shadow:0 2px 8px #0000001a}.sort-options[data-v-5b54a827]{display:flex;gap:20px;margin-bottom:20px;padding-bottom:15px;border-bottom:1px solid #e9ecef}.sort-options a[data-v-5b54a827]{color:#666;text-decoration:none;font-size:14px;transition:color .3s}.sort-options a[data-v-5b54a827]:hover,.sort-options a.active[data-v-5b54a827]{color:#007bff;text-decoration:underline}.job-grid[data-v-5b54a827]{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;margin-bottom:30px}.pagination[data-v-5b54a827]{display:flex;justify-content:center;gap:10px;margin-top:30px}.page-btn[data-v-5b54a827]{display:inline-block;padding:8px 12px;background:white;border:1px solid #ddd;color:#666;text-decoration:none;border-radius:4px;transition:all .3s;cursor:pointer}.page-btn[data-v-5b54a827]:hover:not(:disabled),.page-btn.active[data-v-5b54a827]{background:#007bff;color:#fff;border-color:#007bff}.page-btn[data-v-5b54a827]:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 768px){.content-wrapper[data-v-5b54a827]{flex-direction:column}.sidebar[data-v-5b54a827]{width:100%;order:2}.job-listings[data-v-5b54a827]{order:1}.job-grid[data-v-5b54a827]{grid-template-columns:1fr}}.job-detail[data-v-3dff8716]{padding:20px 0}.content-wrapper[data-v-3dff8716]{display:flex;gap:30px}.job-details[data-v-3dff8716]{flex:1;background:white;border-radius:8px;padding:30px;box-shadow:0 2px 8px #0000001a;margin-right:30px}.loading[data-v-3dff8716],.error[data-v-3dff8716]{text-align:center;padding:40px;color:#666}.error[data-v-3dff8716]{color:#dc3545}.job-status[data-v-3dff8716]{font-size:12px;color:#666;margin-bottom:20px}.job-header[data-v-3dff8716]{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:30px;padding-bottom:20px;border-bottom:1px solid #e9ecef}.job-title[data-v-3dff8716]{font-size:28px;font-weight:700;color:#333;margin:0;flex:1}.salary[data-v-3dff8716]{background:#ff6b35;color:#fff;padding:8px 16px;border-radius:6px;font-size:18px;font-weight:700;margin-left:20px}.job-info-list[data-v-3dff8716]{margin-bottom:30px}.info-item[data-v-3dff8716]{display:flex;margin-bottom:15px;align-items:flex-start}.info-item .label[data-v-3dff8716]{font-weight:700;color:#333;min-width:100px;margin-right:15px}.info-item .value[data-v-3dff8716]{color:#666;flex:1;line-height:1.6}.salary-range[data-v-3dff8716]{color:#ff6b35;font-weight:700}.job-section[data-v-3dff8716]{margin-bottom:30px;padding-bottom:20px;border-bottom:1px solid #e9ecef}.job-section[data-v-3dff8716]:last-child{border-bottom:none}.job-section h3[data-v-3dff8716]{font-size:18px;font-weight:700;color:#333;margin-bottom:15px}.section-content[data-v-3dff8716]{color:#666;line-height:1.8}.requirements-list[data-v-3dff8716]{list-style:none;padding:0;margin:0}.requirements-list li[data-v-3dff8716]{position:relative;padding-left:20px;margin-bottom:10px;color:#666}.requirements-list li[data-v-3dff8716]:before{content:"•";color:#007bff;font-weight:700;position:absolute;left:0}.benefits-grid[data-v-3dff8716]{display:flex;flex-wrap:wrap;gap:10px}.benefit-tag[data-v-3dff8716]{background:#e3f2fd;color:#007bff;padding:6px 12px;border-radius:15px;font-size:14px;border:1px solid #bbdefb}.job-tags[data-v-3dff8716]{display:flex;flex-wrap:wrap;gap:8px}.job-tags .tag[data-v-3dff8716]{background:#f8f9fa;color:#666;padding:4px 12px;border-radius:15px;font-size:12px;border:1px solid #e9ecef}.apply-btn[data-v-3dff8716]{background:#007bff;color:#fff;border:none;padding:12px 24px;border-radius:6px;font-size:16px;font-weight:700;cursor:pointer;display:flex;align-items:center;gap:8px;transition:background .3s;margin-bottom:40px}.apply-btn[data-v-3dff8716]:hover:not(:disabled){background:#0056b3}.apply-btn[data-v-3dff8716]:disabled{opacity:.6;cursor:not-allowed}.reviews-section[data-v-3dff8716]{border-top:1px solid #e9ecef;padding-top:30px}.reviews-section h3[data-v-3dff8716]{font-size:20px;font-weight:700;color:#333;margin-bottom:20px}.new-comment[data-v-3dff8716]{background:#f8f9fa;border-radius:8px;padding:20px;margin-bottom:20px}.comment-header[data-v-3dff8716]{font-size:14px;color:#666;margin-bottom:15px}.comment-form[data-v-3dff8716]{display:flex;align-items:center;gap:10px}.user-avatar[data-v-3dff8716]{width:40px;height:40px;background:#e9ecef;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#666}.comment-input[data-v-3dff8716]{flex:1;border:1px solid #ddd;border-radius:20px;padding:10px 15px;outline:none;font-size:14px}.comment-input[data-v-3dff8716]:focus{border-color:#007bff}.send-btn[data-v-3dff8716]{background:#007bff;color:#fff;border:none;padding:10px 20px;border-radius:20px;cursor:pointer;font-size:14px;transition:background .3s}.send-btn[data-v-3dff8716]:hover:not(:disabled){background:#0056b3}.send-btn[data-v-3dff8716]:disabled{opacity:.6;cursor:not-allowed}.comment-stats[data-v-3dff8716]{font-size:14px;color:#666;margin-bottom:15px}.comment-tabs[data-v-3dff8716]{display:flex;gap:20px;margin-bottom:20px;border-bottom:1px solid #e9ecef}.comment-tabs a[data-v-3dff8716]{color:#666;text-decoration:none;padding:10px 0;font-size:14px;transition:color .3s}.comment-tabs a[data-v-3dff8716]:hover,.comment-tabs a.active[data-v-3dff8716]{color:#007bff;text-decoration:underline}.comments-list[data-v-3dff8716]{max-height:400px;overflow-y:auto}.comment-item[data-v-3dff8716]{display:flex;gap:15px;padding:15px 0;border-bottom:1px solid #f0f0f0}.comment-item[data-v-3dff8716]:last-child{border-bottom:none}.comment-avatar[data-v-3dff8716]{width:40px;height:40px;background:#e9ecef;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#666;flex-shrink:0}.comment-content[data-v-3dff8716]{flex:1}.comment-content .comment-header[data-v-3dff8716]{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.username[data-v-3dff8716]{font-weight:700;color:#333;font-size:14px}.comment-time[data-v-3dff8716]{font-size:12px;color:#999}.comment-text[data-v-3dff8716]{color:#666;line-height:1.5}.sidebar[data-v-3dff8716]{width:300px;background:white;border-radius:8px;padding:20px;height:fit-content;box-shadow:0 2px 8px #0000001a}.action-buttons[data-v-3dff8716]{display:flex;flex-direction:column;gap:10px;margin-bottom:30px}.action-btn[data-v-3dff8716]{display:flex;align-items:center;gap:10px;background:#f8f9fa;border:1px solid #e9ecef;padding:12px 15px;border-radius:6px;cursor:pointer;transition:all .3s;font-size:14px;color:#666}.action-btn[data-v-3dff8716]:hover{background:#e3f2fd;border-color:#007bff;color:#007bff}.action-btn i[data-v-3dff8716]{width:16px;text-align:center}.count[data-v-3dff8716]{margin-left:auto;background:#ff6b35;color:#fff;padding:2px 6px;border-radius:10px;font-size:12px}.share-indicator[data-v-3dff8716]{margin-left:auto;color:#ff6b35;font-size:12px}.recommended-jobs[data-v-3dff8716]{display:flex;flex-direction:column;gap:15px}.recommended-job[data-v-3dff8716]{padding:15px;background:#f8f9fa;border-radius:6px;border:1px solid #e9ecef;cursor:pointer;transition:all .3s}.recommended-job[data-v-3dff8716]:hover{background:#e3f2fd;border-color:#007bff}.recommended-job .job-title[data-v-3dff8716]{font-size:14px;font-weight:700;color:#333;margin-bottom:5px}.job-meta[data-v-3dff8716]{font-size:12px;color:#666;margin-bottom:5px}.recommend-count[data-v-3dff8716]{font-size:12px;color:#ff6b35}@media (max-width: 768px){.content-wrapper[data-v-3dff8716]{flex-direction:column}.job-details[data-v-3dff8716]{margin-right:0;margin-bottom:20px}.sidebar[data-v-3dff8716]{width:100%}.job-header[data-v-3dff8716]{flex-direction:column;align-items:flex-start}.salary[data-v-3dff8716]{margin-left:0;margin-top:10px}.comment-form[data-v-3dff8716]{flex-direction:column;align-items:stretch}.comment-input[data-v-3dff8716]{margin:10px 0}}.header[data-v-ae2dab03]{background:white;box-shadow:0 2px 8px #0000001a;position:sticky;top:0;z-index:1000}.header-content[data-v-ae2dab03]{display:flex;align-items:center;justify-content:space-between;height:60px;gap:20px}.logo[data-v-ae2dab03]{display:flex;align-items:center;gap:10px;cursor:pointer}.logo-icon[data-v-ae2dab03]{width:40px;height:40px;background:linear-gradient(135deg,#007bff,#ff6b35);color:#fff;border-radius:8px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:18px}.logo-text[data-v-ae2dab03]{font-size:20px;font-weight:700;color:#333}.search-bar[data-v-ae2dab03]{display:flex;align-items:center;background:#f8f9fa;border-radius:25px;padding:8px 15px;min-width:300px;flex:1;max-width:500px}.search-input[data-v-ae2dab03]{border:none;background:transparent;outline:none;flex:1;padding:5px 10px;font-size:14px}.search-btn[data-v-ae2dab03]{background:none;border:none;color:#666;cursor:pointer;padding:5px}.header-actions[data-v-ae2dab03]{display:flex;align-items:center;gap:15px}.notification-btn[data-v-ae2dab03]{background:none;border:none;color:#666;cursor:pointer;padding:8px;border-radius:50%;transition:background .3s}.notification-btn[data-v-ae2dab03]:hover{background:#f8f9fa}@media (max-width: 768px){.header-content[data-v-ae2dab03]{flex-direction:column;height:auto;padding:15px 0;gap:15px}.search-bar[data-v-ae2dab03]{min-width:100%;order:2}.header-actions[data-v-ae2dab03]{order:3}}.footer[data-v-ca4aff72]{background:#333;color:#fff;padding:40px 0 20px;margin-top:50px}.footer-content[data-v-ca4aff72]{max-width:1200px;margin:0 auto}.footer-links[data-v-ca4aff72]{text-align:center;margin-bottom:30px;padding-bottom:20px;border-bottom:1px solid #444}.footer-links a[data-v-ca4aff72]{color:#fff;text-decoration:none;margin:0 20px;transition:color .3s;font-size:14px}.footer-links a[data-v-ca4aff72]:hover{color:#007bff}.footer-main[data-v-ca4aff72]{display:flex;justify-content:space-between;align-items:flex-start;gap:40px}.footer-left[data-v-ca4aff72]{flex:1}.footer-right[data-v-ca4aff72]{flex:1;display:flex;gap:40px}.company-info[data-v-ca4aff72]{line-height:1.8}.copyright[data-v-ca4aff72]{margin:10px 0;font-size:14px;color:#ccc}.icp[data-v-ca4aff72]{margin:10px 0}.icp a[data-v-ca4aff72]{color:#ccc;text-decoration:none;font-size:12px;transition:color .3s}.icp a[data-v-ca4aff72]:hover{color:#007bff}.age-notice[data-v-ca4aff72]{margin:10px 0;color:#fff;font-size:14px}.parent-link[data-v-ca4aff72]{color:#ff6b35;text-decoration:none;transition:color .3s}.parent-link[data-v-ca4aff72]:hover{color:#ff8c42}.contact-section[data-v-ca4aff72]{flex:1}.section-title[data-v-ca4aff72]{font-size:16px;font-weight:700;margin-bottom:15px;color:#fff}.address[data-v-ca4aff72]{color:#ccc;font-size:14px;line-height:1.6;margin:0}.contact-list[data-v-ca4aff72]{list-style:none;padding:0;margin:0}.contact-list li[data-v-ca4aff72]{margin-bottom:8px}.contact-link[data-v-ca4aff72]{color:#ccc;text-decoration:none;font-size:14px;transition:color .3s}.contact-link[data-v-ca4aff72]:hover{color:#007bff}@media (max-width: 768px){.footer-main[data-v-ca4aff72]{flex-direction:column;gap:30px}.footer-right[data-v-ca4aff72]{flex-direction:column;gap:20px}.footer-links a[data-v-ca4aff72]{display:block;margin:10px 0}.footer-links[data-v-ca4aff72]{text-align:left}}@media (max-width: 480px){.footer[data-v-ca4aff72]{padding:30px 0 15px}.footer-main[data-v-ca4aff72]{gap:20px}.company-info[data-v-ca4aff72]{font-size:13px}.section-title[data-v-ca4aff72]{font-size:15px}.address[data-v-ca4aff72],.contact-link[data-v-ca4aff72]{font-size:13px}}#app{min-height:100vh;display:flex;flex-direction:column}main{flex:1}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.6;color:#333;background-color:#f8f9fa}.container{max-width:1200px;margin:0 auto;padding:0 20px}.btn{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;text-decoration:none;transition:all .3s ease}.btn-primary{background:#007bff;color:#fff}.btn-primary:hover{background:#0056b3}.btn-secondary{background:#6c757d;color:#fff}.btn-secondary:hover{background:#545b62}.btn-outline{background:transparent;border:1px solid #ddd;color:#666}.btn-outline:hover{background:#f8f9fa}.card{background:white;border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.input{width:100%;padding:10px 15px;border:1px solid #ddd;border-radius:6px;font-size:14px;transition:border-color .3s}.input:focus{outline:none;border-color:#007bff}.tag{display:inline-block;padding:4px 12px;background:#f8f9fa;color:#666;border-radius:15px;font-size:12px;border:1px solid #e9ecef;cursor:pointer;transition:all .3s}.tag:hover{background:#e3f2fd;color:#007bff;border-color:#007bff}@media (max-width: 768px){.container{padding:0 15px}.btn{padding:6px 12px;font-size:13px}}
