:root{--primary: #6366f1;--primary-hover: #4f46e5;--primary-light: rgba(99, 102, 241, .1);--bg: #0f172a;--bg-secondary: #1e293b;--bg-card: #1e293b;--text: #f1f5f9;--text-secondary: #94a3b8;--text-muted: #64748b;--border: #334155;--success: #22c55e;--warning: #f59e0b;--radius: 12px;--radius-sm: 8px}*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text);line-height:1.6;min-height:100vh}#root{min-height:100vh}.header{background:var(--bg-secondary);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:100}.header-inner{max-width:1400px;margin:0 auto;padding:0 2rem;height:64px;display:flex;align-items:center;justify-content:space-between}.logo{display:flex;align-items:center;gap:.5rem}.logo-icon{font-size:1.5rem}.logo-text{font-size:1.25rem;font-weight:700;color:var(--primary)}.nav{display:flex;gap:2rem}.nav-link{color:var(--text-secondary);text-decoration:none;font-size:.9rem;transition:color .2s}.nav-link:hover,.nav-link.active{color:var(--text)}.btn-signin{background:var(--primary);color:#fff;border:none;padding:.5rem 1.25rem;border-radius:var(--radius-sm);font-size:.9rem;cursor:pointer;transition:background .2s}.btn-signin:hover{background:var(--primary-hover)}.hero{text-align:center;padding:4rem 2rem 3rem;background:linear-gradient(180deg,var(--bg-secondary) 0%,var(--bg) 100%)}.hero-title{font-size:2.75rem;font-weight:800;margin-bottom:1rem;letter-spacing:-.02em}.hero-highlight{background:linear-gradient(135deg,var(--primary),#a855f7);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-subtitle{font-size:1.125rem;color:var(--text-secondary);max-width:600px;margin:0 auto 2rem}.search-bar{max-width:700px;margin:0 auto 2.5rem;display:flex;gap:.75rem;background:var(--bg-card);padding:.5rem;border-radius:var(--radius);border:1px solid var(--border)}.search-input-wrapper{flex:1;display:flex;align-items:center;gap:.75rem;padding:0 1rem}.search-icon{font-size:1.125rem}.search-input{flex:1;background:none;border:none;color:var(--text);font-size:1rem;outline:none}.search-input::placeholder{color:var(--text-muted)}.btn-search{background:var(--primary);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:var(--radius-sm);font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s;white-space:nowrap}.btn-search:hover{background:var(--primary-hover)}.stats{display:flex;justify-content:center;gap:3rem}.stat{display:flex;flex-direction:column}.stat-number{font-size:1.75rem;font-weight:700;color:var(--primary)}.stat-label{font-size:.875rem;color:var(--text-muted)}.main-content{max-width:1400px;margin:0 auto;padding:2rem;display:grid;grid-template-columns:240px 1fr 360px;gap:1.5rem;align-items:start}.filters{background:var(--bg-card);border-radius:var(--radius);padding:1.5rem;border:1px solid var(--border);position:sticky;top:80px}.filter-group{margin-bottom:1.5rem}.filter-title{font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);margin-bottom:.75rem}.filter-option{display:flex;align-items:center;gap:.5rem;padding:.4rem 0;cursor:pointer;font-size:.9rem;color:var(--text-secondary);transition:color .2s}.filter-option:hover{color:var(--text)}.filter-option input[type=radio]{accent-color:var(--primary)}.btn-clear-filters{width:100%;background:transparent;border:1px solid var(--border);color:var(--text-secondary);padding:.5rem;border-radius:var(--radius-sm);cursor:pointer;font-size:.85rem;transition:all .2s}.btn-clear-filters:hover{border-color:var(--primary);color:var(--primary)}.listings-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.listings-header h2{font-size:1.25rem;font-weight:600}.sort-select{background:var(--bg-card);color:var(--text);border:1px solid var(--border);padding:.5rem 1rem;border-radius:var(--radius-sm);font-size:.85rem;cursor:pointer}.job-list{display:flex;flex-direction:column;gap:1rem}.job-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem;cursor:pointer;transition:all .2s}.job-card:hover{border-color:var(--primary);transform:translateY(-2px);box-shadow:0 4px 12px #0003}.job-card.selected{border-color:var(--primary);background:var(--primary-light)}.job-card-header{display:flex;align-items:flex-start;gap:1rem;margin-bottom:.75rem}.company-logo{width:48px;height:48px;background:linear-gradient(135deg,var(--primary),#a855f7);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.875rem;flex-shrink:0}.company-logo.large{width:56px;height:56px;font-size:1rem}.job-info{flex:1}.job-title{font-size:1.1rem;font-weight:600;margin-bottom:.25rem}.company-name{color:var(--text-secondary);font-size:.9rem}.bookmark-btn{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-muted);transition:color .2s;padding:0;line-height:1}.bookmark-btn:hover,.bookmark-btn.bookmarked{color:var(--warning)}.job-meta{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:.75rem}.meta-item{font-size:.8rem;color:var(--text-secondary);display:flex;align-items:center;gap:.25rem}.job-desc-preview{font-size:.875rem;color:var(--text-muted);margin-bottom:.75rem;line-height:1.5}.job-card-footer{display:flex;justify-content:space-between;align-items:center}.posted-time{font-size:.8rem;color:var(--text-muted)}.btn-apply-small{background:var(--primary);color:#fff;border:none;padding:.4rem 1rem;border-radius:var(--radius-sm);font-size:.8rem;font-weight:600;cursor:pointer;transition:background .2s}.btn-apply-small:hover{background:var(--primary-hover)}.no-results{text-align:center;padding:4rem 2rem;color:var(--text-muted)}.no-results-icon{font-size:3rem;display:block;margin-bottom:1rem}.no-results h3{font-size:1.25rem;margin-bottom:.5rem;color:var(--text)}.job-detail{background:var(--bg-card);border-radius:var(--radius);border:1px solid var(--border);padding:1.5rem;position:sticky;top:80px;max-height:calc(100vh - 96px);overflow-y:auto}.detail-header{display:flex;align-items:flex-start;gap:1rem;margin-bottom:1.5rem;position:relative}.detail-title{font-size:1.25rem;font-weight:700;margin-bottom:.25rem}.detail-company{color:var(--text-secondary)}.close-detail{position:absolute;right:0;top:0;background:none;border:none;color:var(--text-muted);font-size:1.25rem;cursor:pointer;padding:.25rem}.close-detail:hover{color:var(--text)}.detail-meta{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.5rem;padding:1rem;background:var(--bg);border-radius:var(--radius-sm)}.detail-meta-item{display:flex;flex-direction:column;gap:.25rem}.meta-label{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.meta-value{font-size:.9rem;font-weight:500}.detail-section{margin-bottom:1.5rem}.detail-section h3{font-size:1rem;font-weight:600;margin-bottom:.75rem}.detail-section p{font-size:.9rem;color:var(--text-secondary);line-height:1.6}.requirements-list{list-style:none;padding:0}.requirements-list li{position:relative;padding-left:1.5rem;margin-bottom:.5rem;font-size:.9rem;color:var(--text-secondary)}.requirements-list li:before{content:"✓";position:absolute;left:0;color:var(--success);font-weight:600}.detail-actions{display:flex;gap:.75rem;margin-top:1.5rem}.btn-apply{flex:1;background:var(--primary);color:#fff;border:none;padding:.75rem;border-radius:var(--radius-sm);font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s}.btn-apply:hover{background:var(--primary-hover)}.btn-bookmark{background:transparent;border:1px solid var(--border);color:var(--text-secondary);padding:.75rem 1.25rem;border-radius:var(--radius-sm);font-size:.9rem;cursor:pointer;transition:all .2s}.btn-bookmark:hover{border-color:var(--warning);color:var(--warning)}.btn-bookmark.bookmarked{border-color:var(--warning);color:var(--warning);background:#f59e0b1a}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal{background:var(--bg-secondary);border-radius:var(--radius);padding:2rem;max-width:500px;width:100%;max-height:90vh;overflow-y:auto;position:relative;border:1px solid var(--border)}.modal-close{position:absolute;right:1.5rem;top:1.5rem;background:none;border:none;color:var(--text-muted);font-size:1.25rem;cursor:pointer}.modal-close:hover{color:var(--text)}.modal-title{font-size:1.5rem;font-weight:700;margin-bottom:.25rem}.modal-company{color:var(--text-secondary);margin-bottom:1.5rem}.apply-form{display:flex;flex-direction:column;gap:1.25rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-size:.875rem;font-weight:500;color:var(--text-secondary)}.form-group input,.form-group textarea{background:var(--bg);border:1px solid var(--border);color:var(--text);padding:.75rem 1rem;border-radius:var(--radius-sm);font-size:.9rem;outline:none;transition:border-color .2s}.form-group input:focus,.form-group textarea:focus{border-color:var(--primary)}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--text-muted)}.file-upload{background:var(--bg);border:2px dashed var(--border);border-radius:var(--radius-sm);padding:1.5rem;text-align:center;cursor:pointer;position:relative;transition:border-color .2s}.file-upload:hover{border-color:var(--primary)}.file-upload input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.file-upload span{font-size:.9rem;color:var(--text-secondary)}.btn-submit{background:var(--primary);color:#fff;border:none;padding:.875rem;border-radius:var(--radius-sm);font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s}.btn-submit:hover{background:var(--primary-hover)}.footer{background:var(--bg-secondary);border-top:1px solid var(--border);margin-top:4rem}.footer-content{max-width:1400px;margin:0 auto;padding:3rem 2rem;display:grid;grid-template-columns:repeat(4,1fr);gap:2rem}.footer-section h4{font-size:1rem;font-weight:600;margin-bottom:1rem;color:var(--text)}.footer-section p{font-size:.875rem;color:var(--text-secondary);line-height:1.6}.footer-section a{display:block;font-size:.875rem;color:var(--text-secondary);text-decoration:none;margin-bottom:.5rem;transition:color .2s}.footer-section a:hover{color:var(--primary)}.footer-bottom{text-align:center;padding:1.5rem 2rem;border-top:1px solid var(--border)}.footer-bottom p{font-size:.8rem;color:var(--text-muted)}@media(max-width:1200px){.main-content{grid-template-columns:240px 1fr}.job-detail{display:none}}@media(max-width:768px){.header-inner{padding:0 1rem}.nav{display:none}.hero{padding:3rem 1rem 2rem}.hero-title{font-size:2rem}.search-bar{flex-direction:column}.stats{gap:1.5rem}.stat-number{font-size:1.25rem}.main-content{grid-template-columns:1fr;padding:1rem}.filters{position:static}.footer-content{grid-template-columns:1fr 1fr}}@media(max-width:480px){.hero-title{font-size:1.75rem}.stats{flex-direction:column;gap:.75rem}.job-meta{flex-direction:column;gap:.5rem}.footer-content{grid-template-columns:1fr}}
