*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,DM Sans,Segoe UI,sans-serif;background:#fff;color:#111;min-height:100vh;transition:background .2s,color .2s}.nav{display:flex;align-items:center;justify-content:space-between;padding:0 2rem;height:64px;border-bottom:1px solid #e8e8e8;position:sticky;top:0;background:#fffe;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:100}.nav-logo{display:flex;align-items:center;gap:10px;text-decoration:none}.nav-logo img{width:36px;height:36px;border-radius:8px;object-fit:cover}.nav-logo-name{font-size:1rem;font-weight:600;color:#111;letter-spacing:-.3px}.nav-auth{display:flex;align-items:center;gap:10px}.btn-ghost{padding:8px 16px;background:transparent;color:#555;border:1px solid #ddd;border-radius:8px;font-size:.875rem;cursor:pointer;transition:all .15s}.btn-ghost:hover{color:#111;border-color:#aaa}.btn-primary{padding:8px 18px;background:#0052ff;color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:background .15s}.btn-primary:hover{background:#0041cc}.hero{max-width:760px;margin:0 auto;padding:2.5rem 1.5rem 1.5rem;text-align:center}.hero-logo{width:72px;height:72px;border-radius:16px;object-fit:cover;margin-bottom:1.5rem}.hero h1{font-size:2.5rem;font-weight:700;letter-spacing:-1px;line-height:1.2;margin-bottom:.75rem;color:#111}.hero-sub{font-size:1rem;color:#666;line-height:1.7;max-width:540px;margin:0 auto 1.25rem}.search-bar{display:flex;align-items:center;gap:10px;max-width:600px;margin:0 auto;background:#f4f4f4;border:1.5px solid #e0e0e0;border-radius:12px;padding:12px 18px;cursor:text;transition:border-color .15s,box-shadow .15s}.search-bar:focus-within,.search-bar:hover{border-color:#0052ff;box-shadow:0 0 0 3px #0052ff14}.search-bar input{flex:1;border:none;background:transparent;font-size:.9rem;color:#111;outline:none}.search-bar input::placeholder{color:#aaa}.search-bar svg{color:#aaa;flex-shrink:0}body.dark .search-bar{background:#1a1a1a;border-color:#2a2a2a}body.dark .search-bar input{color:#fff}body.dark .search-bar:hover,body.dark .search-bar:focus-within{border-color:#0052ff}@media (max-width: 480px){.hero h1{font-size:1.6rem;letter-spacing:-.5px}.hero-sub{font-size:.9rem}.search-bar{padding:10px 14px;border-radius:10px}.search-bar input{font-size:.85rem}}.main{max-width:860px;margin:0 auto;padding:1.25rem 1.5rem 4rem}.filters{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:1.5rem}.filter-btn{padding:5px 14px;border-radius:999px;border:1px solid #ddd;background:#fff;font-size:.78rem;cursor:pointer;transition:all .15s;color:#666;white-space:nowrap}.filter-btn:hover{border-color:#aaa;color:#111}.filter-btn.active{background:#0052ff;color:#fff;border-color:#0052ff}body.dark .filter-btn{background:transparent;border-color:#2a2a2a;color:#888}@media (max-width: 480px){.filters{gap:5px;margin-bottom:1rem}.filter-btn{padding:4px 11px;font-size:.72rem}}.job-list{display:flex;flex-direction:column;gap:12px}.job-card{background:#fff;border-radius:12px;border:1px solid #e8e8e8;padding:1.5rem;transition:border-color .2s,transform .15s,box-shadow .2s}.job-card:hover{border-color:#ccc;transform:translateY(-1px);box-shadow:0 4px 16px #0000000f}.job-card-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.75rem;gap:1rem}.job-title{font-size:1rem;font-weight:600;color:#111;margin-bottom:3px}.job-company{font-size:.85rem;color:#999}.job-type{font-size:.72rem;font-weight:600;padding:4px 12px;border-radius:999px;white-space:nowrap}.type-agency{background:#e8f5e9;color:#2e7d32;border:1px solid #c8e6c9}.type-company{background:#e3f2fd;color:#1565c0;border:1px solid #bbdefb}.type-direct{background:#fffde7;color:#f57f17;border:1px solid #fff9c4}.type-outsource{background:#f3e5f5;color:#6a1b9a;border:1px solid #e1bee7}.job-description{font-size:.875rem;color:#777;line-height:1.6;margin-bottom:1.25rem;height:3.2em;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.job-card-footer{display:flex;justify-content:space-between;align-items:center;gap:.75rem;flex-wrap:nowrap}.job-meta{display:flex;flex-wrap:wrap;gap:10px;font-size:.8rem;color:#aaa;align-items:center;flex:1;min-width:0}.job-category{background:#f5f5f5;border:1px solid #eee;padding:3px 10px;border-radius:999px;font-size:.72rem;color:#888}.apply-btn{padding:8px 20px;background:#0052ff;color:#fff;border-radius:8px;border:none;text-decoration:none;font-size:.875rem;font-weight:500;cursor:pointer;transition:background .15s;display:inline-block;flex-shrink:0}.apply-btn:hover{background:#0041cc}.apply-btn.locked{background:#f5f5f5;color:#bbb;border:1px solid #e0e0e0;cursor:pointer}.apply-btn.locked:hover{background:#eee;color:#999}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:200;padding:1rem}.modal{background:#fff;border:1px solid #e8e8e8;border-radius:16px;padding:2rem;width:100%;max-width:420px;box-shadow:0 8px 32px #0000001a}.modal h2{font-size:1.25rem;font-weight:600;margin-bottom:.5rem;color:#111}.modal-sub{font-size:.875rem;color:#888;margin-bottom:1.5rem}.modal-tabs{display:flex;gap:0;margin-bottom:1.5rem;border:1px solid #e0e0e0;border-radius:8px;overflow:hidden}.modal-tab{flex:1;padding:8px;background:transparent;border:none;color:#999;font-size:.875rem;cursor:pointer;transition:all .15s}.modal-tab.active{background:#0052ff;color:#fff}.modal-field{margin-bottom:1rem}.modal-field label{display:block;font-size:.8rem;color:#777;margin-bottom:6px}.modal-field input{width:100%;padding:10px 14px;background:#f9f9f9;border:1px solid #e0e0e0;border-radius:8px;color:#111;font-size:.875rem;outline:none;transition:border-color .15s}.modal-field input:focus{border-color:#0052ff}.modal-submit{width:100%;padding:11px;background:#0052ff;color:#fff;border:none;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;margin-top:.5rem;transition:background .15s}.modal-submit:hover{background:#0041cc}.modal-close{position:absolute;top:1rem;right:1rem;background:none;border:none;color:#aaa;font-size:1.25rem;cursor:pointer}.modal-error{color:#e53935;font-size:.8rem;margin-top:.75rem;text-align:center}.detail-modal{background:#fff;border:1px solid #e8e8e8;border-radius:16px;padding:2rem;width:100%;max-width:560px;box-shadow:0 8px 32px #0000001a}.detail-modal h2{font-size:1.25rem;font-weight:600;margin-bottom:4px;color:#111}.detail-company{color:#999;font-size:.9rem;margin-bottom:1.25rem}.detail-section{margin-bottom:1.25rem}.detail-label{font-size:.75rem;color:#aaa;text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px}.detail-value{font-size:.9rem;color:#333}.detail-apply{display:block;width:100%;padding:12px;background:#0052ff;color:#fff;border:none;border-radius:10px;font-size:.95rem;font-weight:500;text-align:center;text-decoration:none;cursor:pointer;margin-top:1.5rem;transition:background .15s}.detail-apply:hover{background:#0041cc}.status{text-align:center;color:#bbb;padding:3rem 0;font-size:.95rem}.status.error{color:#e53935}.user-badge{font-size:.8rem;color:#888;padding:6px 12px;border:1px solid #e0e0e0;border-radius:8px}.footer{border-top:1px solid #e8e8e8;padding:2rem 1.5rem;text-align:center;font-size:.85rem;background:#0052ff;color:#fffc}.footer p{margin-bottom:1rem}.footer a{color:#fff;text-decoration:none}.theme-toggle{padding:7px 14px;border:1px solid #ddd;border-radius:8px;background:#f5f5f5;color:#555;font-size:.8rem;cursor:pointer;transition:all .15s}.theme-toggle:hover{background:#eee;color:#111}body.dark{background:#0a0a0a;color:#fff}body.dark .nav{background:#0a0a0aee;border-bottom-color:#1e1e1e}body.dark .nav-logo-name{color:#fff}body.dark .theme-toggle{background:#1a1a1a;border-color:#2a2a2a;color:#888}body.dark .btn-ghost{color:#aaa;border-color:#2a2a2a}body.dark .btn-ghost:hover{color:#fff;border-color:#444}body.dark .hero h1{color:#fff}body.dark .hero-sub{color:#888}body.dark .filter-btn{border-color:#2a2a2a;background:transparent;color:#888}body.dark .filter-btn:hover{border-color:#555;color:#fff}body.dark .job-card{background:#111;border-color:#1e1e1e}body.dark .job-card:hover{border-color:#333;box-shadow:none}body.dark .job-title{color:#fff}body.dark .job-company,body.dark .job-description{color:#666}body.dark .job-meta{color:#555}body.dark .job-category{background:#1a1a1a;border-color:#2a2a2a;color:#888}body.dark .type-agency{background:#0a2a0a;color:#4ade80;border-color:#1a4a1a}body.dark .type-company{background:#002a3a;color:#38bdf8;border-color:#004a5a}body.dark .type-direct{background:#2a2a00;color:#fbbf24;border-color:#4a4a00}body.dark .type-outsource{background:#2a0a2a;color:#c084fc;border-color:#4a1a4a}body.dark .apply-btn.locked{background:#1a1a1a;color:#555;border-color:#2a2a2a}body.dark .apply-btn.locked:hover{background:#222;color:#888}body.dark .modal{background:#111;border-color:#222;box-shadow:none}body.dark .modal h2{color:#fff}body.dark .modal-sub{color:#666}body.dark .modal-tabs{border-color:#222}body.dark .modal-tab{color:#666}body.dark .modal-field label{color:#888}body.dark .modal-field input{background:#0a0a0a;border-color:#2a2a2a;color:#fff}body.dark .detail-modal{background:#111;border-color:#222;box-shadow:none}body.dark .detail-modal h2{color:#fff}body.dark .detail-company{color:#666}body.dark .detail-label{color:#555}body.dark .detail-value{color:#ccc}body.dark .user-badge{color:#888;border-color:#222}body.dark .status{color:#444}.theme-toggle{padding:6px 14px;border:1px solid #2a2a2a;border-radius:8px;background:transparent;color:#aaa;font-size:.8rem;cursor:pointer;transition:all .15s}.theme-toggle:hover{border-color:#555;color:#fff}body:not(.dark){background:#fff;color:#111}body:not(.dark) .nav{background:#fffe;border-bottom:1px solid #e5e5e5}body:not(.dark) .nav-logo-name{color:#111}body:not(.dark) .btn-ghost{color:#555;border-color:#ddd}body:not(.dark) .btn-ghost:hover{color:#111;border-color:#aaa}body:not(.dark) .theme-toggle{border-color:#ddd;color:#555}body:not(.dark) .theme-toggle:hover{border-color:#aaa;color:#111}body:not(.dark) .hero{background:#fff}body:not(.dark) .hero h1{background:linear-gradient(135deg,#111,#555);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}body:not(.dark) .hero-sub{color:#666}body:not(.dark) .filter-btn{border-color:#ddd;color:#555;background:#fff}body:not(.dark) .filter-btn:hover{border-color:#aaa;color:#111}body:not(.dark) .filter-btn.active{background:#0052ff;color:#fff;border-color:#0052ff}body:not(.dark) .job-card{background:#f9f9f9;border-color:#e5e5e5}body:not(.dark) .job-card:hover{border-color:#ccc}body:not(.dark) .job-title{color:#111}body:not(.dark) .job-company{color:#888}body:not(.dark) .job-description{color:#555}body:not(.dark) .job-meta{color:#777}body:not(.dark) .job-category{background:#f0f0f0;border-color:#e0e0e0;color:#555}body:not(.dark) .apply-btn.locked{background:#f0f0f0;color:#aaa;border-color:#ddd}body:not(.dark) .status{color:#aaa}body:not(.dark) .user-badge{border-color:#ddd;color:#666}body:not(.dark) .modal-overlay{background:#0006}body:not(.dark) .modal,body:not(.dark) .detail-modal{background:#fff;border-color:#e5e5e5}body:not(.dark) .modal h2,body:not(.dark) .detail-modal h2{color:#111}body:not(.dark) .modal-sub,body:not(.dark) .detail-company{color:#888}body:not(.dark) .modal-tabs{border-color:#e5e5e5}body:not(.dark) .modal-tab{color:#888}body:not(.dark) .modal-field label{color:#666}body:not(.dark) .modal-field input{background:#f9f9f9;border-color:#ddd;color:#111}body:not(.dark) .detail-label{color:#aaa}body:not(.dark) .detail-value{color:#333}body:not(.dark) .modal-close{color:#aaa}body:not(.dark) .footer{background:#0052ff;color:#fffc}@media (max-width: 480px){.nav{padding:0 1rem;height:auto;flex-wrap:wrap;gap:8px;padding-top:10px;padding-bottom:10px}.nav-logo img{width:28px;height:28px}.nav-logo-name{font-size:.875rem}.nav-auth{gap:6px}.btn-ghost,.btn-primary{padding:6px 10px;font-size:.78rem}.theme-toggle{padding:6px 8px;font-size:.9rem}.user-badge{display:none}}.load-more-btn{padding:10px 28px;border:1.5px solid #0052FF;border-radius:8px;background:transparent;color:#0052ff;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s}.load-more-btn:hover{background:#0052ff;color:#fff}body.dark .load-more-btn{border-color:#0052ff;color:#4d8aff}body.dark .load-more-btn:hover{background:#0052ff;color:#fff}.how-to-apply-box{margin-top:1.5rem;padding:1.25rem;background:#f4f4f4;border:1px solid #e5e5e5;border-radius:10px}body.dark .how-to-apply-box{background:#0a0a0a;border-color:#1e1e1e}@media (max-width: 480px){.search-bar input{font-size:16px;transform:scale(.875);transform-origin:left center;width:calc(100% / .875);margin-right:calc(-100% * .125 / .875)}}@media (max-width: 480px){.search-bar input{font-size:16px;transform:none;width:100%;margin-right:0}}@media (max-width: 480px){.hero{padding-bottom:.75rem}.main{padding-top:.75rem}}
