@import"https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;1,9..40,400&family=JetBrains+Mono:wght@400;500&display=swap";:root{--color-bg: #FAFAF8;--color-bg-elevated: #FFFFFF;--color-bg-hover: #F5F4F0;--color-bg-active: #EEEDEA;--color-border: #E5E4E0;--color-border-strong: #D4D3CF;--color-text-primary: #1A1917;--color-text-secondary: #6B6A66;--color-text-tertiary: #9C9B97;--color-text-inverse: #FFFFFF;--color-accent: #D97706;--color-accent-light: #FEF3C7;--color-accent-hover: #B45309;--color-saved: #6B7280;--color-applied: #2563EB;--color-interview: #7C3AED;--color-offer: #D97706;--color-accepted: #059669;--color-rejected: #DC2626;--color-success: #059669;--color-warning: #D97706;--color-error: #DC2626;--color-info: #2563EB;--font-sans: "DM Sans", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono: "JetBrains Mono", "SF Mono", monospace;--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--space-2xl: 48px;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(0,0,0,.04);--shadow-md: 0 2px 8px rgba(0,0,0,.06);--shadow-lg: 0 4px 16px rgba(0,0,0,.08);--transition-fast: .12s ease;--transition-normal: .2s ease}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:15px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-sans);color:var(--color-text-primary);background:var(--color-bg);line-height:1.5;min-height:100vh}a{color:var(--color-accent);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-accent-hover)}.app-layout{display:flex;min-height:100vh}.sidebar{width:240px;background:var(--color-bg-elevated);border-right:1px solid var(--color-border);padding:var(--space-lg) 0;display:flex;flex-direction:column;position:fixed;top:0;left:0;bottom:0;z-index:100}.sidebar-logo{padding:0 var(--space-lg);margin-bottom:var(--space-xl);display:flex;align-items:center;gap:var(--space-sm)}.sidebar-logo h1{font-size:1.15rem;font-weight:700;letter-spacing:-.02em}.sidebar-logo .logo-dot{width:8px;height:8px;border-radius:50%;background:var(--color-accent);display:inline-block}.sidebar-nav{flex:1;display:flex;flex-direction:column;gap:2px;padding:0 var(--space-sm)}.sidebar-link{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);color:var(--color-text-secondary);font-size:.9rem;font-weight:500;transition:all var(--transition-fast);text-decoration:none}.sidebar-link:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.sidebar-link.active{background:var(--color-bg-active);color:var(--color-text-primary);font-weight:600}.sidebar-link svg{width:18px;height:18px;flex-shrink:0}.sidebar-link .badge{margin-left:auto;background:var(--color-accent);color:#fff;font-size:.7rem;font-weight:600;padding:1px 7px;border-radius:var(--radius-full);font-family:var(--font-mono)}.sidebar-footer{padding:var(--space-md) var(--space-lg);border-top:1px solid var(--color-border);margin-top:auto}.main-content{flex:1;margin-left:240px;padding:var(--space-xl) var(--space-2xl);max-width:1200px}.page-header{margin-bottom:var(--space-xl)}.page-header h2{font-size:1.5rem;font-weight:700;letter-spacing:-.03em;color:var(--color-text-primary)}.page-header p{color:var(--color-text-secondary);margin-top:var(--space-xs);font-size:.9rem}.page-header-actions{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md)}.card{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-lg);box-shadow:var(--shadow-sm)}.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-md)}.card-title{font-size:.85rem;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em}.card-value{font-size:2rem;font-weight:700;font-family:var(--font-mono);letter-spacing:-.02em;line-height:1}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-md);margin-bottom:var(--space-xl)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);font-family:var(--font-sans);font-size:.85rem;font-weight:500;border:1px solid transparent;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--color-text-primary);color:var(--color-text-inverse);border-color:var(--color-text-primary)}.btn-primary:hover:not(:disabled){background:#333}.btn-secondary{background:var(--color-bg-elevated);color:var(--color-text-primary);border-color:var(--color-border)}.btn-secondary:hover:not(:disabled){background:var(--color-bg-hover);border-color:var(--color-border-strong)}.btn-accent{background:var(--color-accent);color:#fff}.btn-accent:hover:not(:disabled){background:var(--color-accent-hover)}.btn-ghost{background:transparent;color:var(--color-text-secondary)}.btn-ghost:hover:not(:disabled){background:var(--color-bg-hover);color:var(--color-text-primary)}.btn-danger{background:transparent;color:var(--color-error);border-color:var(--color-error)}.btn-danger:hover:not(:disabled){background:var(--color-error);color:#fff}.btn-sm{padding:4px var(--space-sm);font-size:.8rem}.btn-icon{width:32px;height:32px;padding:0;border-radius:var(--radius-md)}.input,.select,.textarea{width:100%;padding:var(--space-sm) var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-md);font-family:var(--font-sans);font-size:.9rem;color:var(--color-text-primary);background:var(--color-bg-elevated);transition:border-color var(--transition-fast);outline:none}.input:focus,.select:focus,.textarea:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-light)}.input::placeholder{color:var(--color-text-tertiary)}.textarea{min-height:100px;resize:vertical}.select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%236B6A66' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:36px}.form-group{margin-bottom:var(--space-md)}.form-label{display:block;font-size:.8rem;font-weight:600;color:var(--color-text-secondary);margin-bottom:var(--space-xs);text-transform:uppercase;letter-spacing:.03em}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-md)}.filters-bar{display:flex;gap:var(--space-sm);align-items:center;flex-wrap:wrap;margin-bottom:var(--space-lg)}.filters-bar .input,.filters-bar .select{width:auto;min-width:160px}.search-input{position:relative;flex:1;min-width:220px}.search-input input{padding-left:36px}.search-input svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--color-text-tertiary);width:16px;height:16px;pointer-events:none}.job-list{display:flex;flex-direction:column;gap:var(--space-sm)}.job-card{display:flex;align-items:flex-start;gap:var(--space-md);padding:var(--space-md) var(--space-lg);background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-lg);transition:all var(--transition-fast);cursor:pointer}.job-card:hover{border-color:var(--color-border-strong);box-shadow:var(--shadow-md)}.job-card.is-new{border-left:3px solid var(--color-accent)}.job-card-body{flex:1;min-width:0}.job-card-title{font-weight:600;font-size:.95rem;margin-bottom:2px;line-height:1.3}.job-card-company{color:var(--color-text-secondary);font-size:.85rem}.job-card-meta{display:flex;align-items:center;gap:var(--space-md);margin-top:var(--space-sm);font-size:.8rem;color:var(--color-text-tertiary)}.job-card-meta span{display:inline-flex;align-items:center;gap:4px}.job-card-actions{display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-xs);flex-shrink:0}.job-salary{font-family:var(--font-mono);font-size:.8rem;font-weight:500;color:var(--color-success);background:#ecfdf5;padding:2px 8px;border-radius:var(--radius-sm)}.source-badge{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;padding:2px 8px;border-radius:var(--radius-sm);background:var(--color-bg-hover);color:var(--color-text-tertiary)}.remote-badge{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;padding:2px 8px;border-radius:var(--radius-sm);background:#ede9fe;color:#7c3aed}.pipeline-board{display:flex;gap:var(--space-md);overflow-x:auto;padding-bottom:var(--space-md);min-height:500px}.pipeline-column{flex:1;min-width:240px;max-width:300px}.pipeline-column-header{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);margin-bottom:var(--space-sm);font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary)}.pipeline-column-header .count{font-family:var(--font-mono);font-size:.75rem;background:var(--color-bg-hover);padding:1px 7px;border-radius:var(--radius-full)}.pipeline-column-header .dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.pipeline-cards{display:flex;flex-direction:column;gap:var(--space-sm);min-height:200px;padding:var(--space-sm);background:var(--color-bg);border-radius:var(--radius-lg);border:1px dashed var(--color-border)}.pipeline-card{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-md);cursor:pointer;transition:all var(--transition-fast)}.pipeline-card:hover{box-shadow:var(--shadow-md);border-color:var(--color-border-strong)}.pipeline-card-title{font-weight:600;font-size:.85rem;margin-bottom:2px;line-height:1.3}.pipeline-card-company{font-size:.8rem;color:var(--color-text-secondary)}.pipeline-card-date{font-size:.75rem;color:var(--color-text-tertiary);margin-top:var(--space-sm);font-family:var(--font-mono)}.pipeline-card-actions{display:flex;gap:var(--space-xs);margin-top:var(--space-sm)}.status-badge{display:inline-flex;align-items:center;gap:4px;font-size:.75rem;font-weight:600;text-transform:capitalize;padding:2px 10px;border-radius:var(--radius-full)}.status-badge--saved{background:#f3f4f6;color:var(--color-saved)}.status-badge--applied{background:#dbeafe;color:var(--color-applied)}.status-badge--interview{background:#ede9fe;color:var(--color-interview)}.status-badge--offer{background:#fef3c7;color:var(--color-offer)}.status-badge--accepted{background:#d1fae5;color:var(--color-accepted)}.status-badge--rejected{background:#fee2e2;color:var(--color-rejected)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000004d;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:200;animation:fadeIn .15s ease}.modal{background:var(--color-bg-elevated);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:100%;max-width:560px;max-height:85vh;overflow-y:auto;padding:var(--space-xl);animation:slideUp .2s ease}.modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-lg)}.modal-header h3{font-size:1.1rem;font-weight:700}.modal-footer{display:flex;justify-content:flex-end;gap:var(--space-sm);margin-top:var(--space-lg);padding-top:var(--space-md);border-top:1px solid var(--color-border)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(12px);opacity:0}to{transform:translateY(0);opacity:1}}.table-wrapper{overflow-x:auto}table{width:100%;border-collapse:collapse}th{text-align:left;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-tertiary);padding:var(--space-sm) var(--space-md);border-bottom:1px solid var(--color-border)}td{padding:var(--space-sm) var(--space-md);border-bottom:1px solid var(--color-border);font-size:.88rem}tr:hover td{background:var(--color-bg-hover)}.charts-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-lg);margin-bottom:var(--space-xl)}.chart-card{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-lg)}.chart-card h4{font-size:.85rem;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.03em;margin-bottom:var(--space-md)}.ai-analysis{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-lg);margin-top:var(--space-md)}.ai-analysis h4{font-size:.85rem;font-weight:600;color:var(--color-accent);margin-bottom:var(--space-sm)}.ai-analysis-content{font-size:.9rem;line-height:1.7;white-space:pre-wrap}.ai-analysis-content strong{color:var(--color-text-primary)}.loading{display:flex;align-items:center;justify-content:center;padding:var(--space-2xl);color:var(--color-text-tertiary)}.spinner{width:20px;height:20px;border:2px solid var(--color-border);border-top-color:var(--color-accent);border-radius:50%;animation:spin .6s linear infinite;margin-right:var(--space-sm)}@keyframes spin{to{transform:rotate(360deg)}}.empty-state{text-align:center;padding:var(--space-2xl);color:var(--color-text-tertiary)}.empty-state h3{font-size:1rem;font-weight:600;color:var(--color-text-secondary);margin-bottom:var(--space-sm)}.toast-container{position:fixed;bottom:var(--space-lg);right:var(--space-lg);z-index:300;display:flex;flex-direction:column;gap:var(--space-sm)}.toast{background:var(--color-text-primary);color:var(--color-text-inverse);padding:var(--space-sm) var(--space-lg);border-radius:var(--radius-md);font-size:.85rem;font-weight:500;box-shadow:var(--shadow-lg);animation:slideUp .2s ease}.toast--success{background:var(--color-success)}.toast--error{background:var(--color-error)}@media(max-width:768px){.sidebar{display:none}.main-content{margin-left:0;padding:var(--space-md)}.charts-grid,.form-row{grid-template-columns:1fr}.pipeline-board{flex-direction:column}.pipeline-column{max-width:100%}}.pagination{display:flex;align-items:center;justify-content:center;gap:var(--space-sm);margin-top:var(--space-lg)}.pagination-info{font-size:.8rem;color:var(--color-text-tertiary);font-family:var(--font-mono)}.tag{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:var(--radius-sm);font-size:.75rem;font-weight:500;background:var(--color-bg-hover);color:var(--color-text-secondary)}.tag-remove{cursor:pointer;opacity:.6}.tag-remove:hover{opacity:1}.file-upload{border:2px dashed var(--color-border);border-radius:var(--radius-lg);padding:var(--space-xl);text-align:center;cursor:pointer;transition:all var(--transition-fast);color:var(--color-text-tertiary)}.file-upload:hover{border-color:var(--color-accent);background:var(--color-accent-light);color:var(--color-accent)}.tabs{display:flex;gap:0;border-bottom:1px solid var(--color-border);margin-bottom:var(--space-lg)}.tab{padding:var(--space-sm) var(--space-md);font-size:.85rem;font-weight:500;color:var(--color-text-tertiary);border-bottom:2px solid transparent;cursor:pointer;transition:all var(--transition-fast);background:none;border-top:none;border-left:none;border-right:none;font-family:var(--font-sans)}.tab:hover{color:var(--color-text-primary)}.tab.active{color:var(--color-text-primary);border-bottom-color:var(--color-accent);font-weight:600}
