:root{color-scheme:dark;--bg: #0f1117;--surface: #1a1d29;--surface-2: #232735;--surface-3: #2b3040;--border: #333846;--text: #e4e6eb;--text-muted: #9ca3af;--text-dim: #6b7280;--primary: #3b82f6;--primary-hover: #2563eb;--green: #22c55e;--green-hover: #16a34a;--red: #ef4444}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text)}nav{background:var(--surface);border-bottom:1px solid var(--border);padding:1rem 2rem;display:flex;gap:2rem;align-items:center}nav a{color:var(--text-muted);text-decoration:none;font-weight:500;transition:color .2s}nav a:hover{color:var(--text)}.container{max-width:1000px;margin:2rem auto;padding:0 1rem}.filters{margin-bottom:1.5rem}.filters input[type=text]{width:100%;padding:.75rem 1rem;border:1px solid var(--border);border-radius:8px;font-size:1rem;margin-bottom:.75rem}.filter-row{display:flex;gap:.75rem;flex-wrap:wrap;align-items:center}.filter-row select{padding:.5rem;border:1px solid var(--border);border-radius:6px;font-size:.85rem}.score-filter{display:flex;align-items:center;gap:.5rem;margin-left:auto}.score-filter label{font-size:.85rem;white-space:nowrap}.score-filter input[type=range]{width:120px;accent-color:var(--primary)}.job-list{display:flex;flex-direction:column;gap:.75rem}.job-card-link{text-decoration:none;color:inherit}.job-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:1.25rem;box-shadow:0 1px 3px #0000004d;transition:box-shadow .2s,transform .1s,border-color .2s}.job-card:hover{box-shadow:0 4px 12px #0006;transform:translateY(-1px);border-color:var(--primary)}.job-card-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.job-card-header h3{font-size:1.05rem;color:var(--text)}.company-name{color:var(--text-muted);font-size:.9rem}.company-logo{width:40px;height:40px;border-radius:6px;object-fit:cover}.job-card-meta{display:flex;flex-wrap:wrap;gap:.75rem;font-size:.8rem;color:var(--text-muted)}.score{font-weight:700;color:var(--green);margin-top:.5rem;font-size:.9rem}.back-link{display:inline-block;margin-bottom:1rem;color:var(--primary);text-decoration:none;font-size:.9rem}.back-link:hover{text-decoration:underline}.job-detail-header{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem}.company-logo-lg{width:60px;height:60px;border-radius:8px;object-fit:cover}.company-name-lg{color:var(--text-muted);font-size:1.1rem}.job-detail-meta{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:1.25rem;margin-bottom:1rem;box-shadow:0 1px 3px #0000004d}.meta-grid{display:grid;grid-template-columns:1fr 1fr;gap:.5rem 2rem;font-size:.9rem}.job-detail-actions{display:flex;gap:.75rem;margin-bottom:1.5rem;flex-wrap:wrap}.card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:1.5rem;margin-bottom:1rem;box-shadow:0 1px 3px #0000004d}.card h2{margin-bottom:1rem;font-size:1.1rem}.btn{display:inline-block;padding:.6rem 1.2rem;background:var(--primary);color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.9rem;text-decoration:none;transition:background .2s}.btn:hover{background:var(--primary-hover)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-green{background:var(--green)}.btn-green:hover{background:var(--green-hover)}.btn-outline{background:transparent;border:1px solid var(--border);color:var(--text)}.btn-outline:hover{background:var(--surface-2)}input,textarea,select{width:100%;padding:.5rem;border:1px solid var(--border);border-radius:6px;margin-bottom:.75rem;font-size:.9rem;font-family:inherit;background:var(--surface-2);color:var(--text)}input::placeholder,textarea::placeholder{color:var(--text-dim)}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--primary)}label{display:block;font-weight:500;margin-bottom:.25rem;font-size:.9rem}.empty{text-align:center;color:var(--text-dim);padding:3rem 0}.placeholder-text{color:var(--text-dim);font-style:italic;margin-bottom:.75rem}h1{margin-bottom:1rem}.chat-log{display:flex;flex-direction:column;gap:.75rem;max-height:420px;overflow-y:auto;padding:.5rem;border:1px solid var(--border);border-radius:8px;background:var(--bg)}.chat-msg{padding:.5rem .75rem;border-radius:8px;max-width:85%}.chat-msg-user{align-self:flex-end;background:var(--surface-3)}.chat-msg-assistant{align-self:flex-start;background:var(--surface);border:1px solid var(--border)}.chat-role{font-size:.75rem;font-weight:600;color:var(--text-muted)}
