:root{--bg-base: #f5f5f5;--bg-surface: #ffffff;--bg-elevated: #ffffff;--bg-card: #ffffff;--bg-hover: #f0f0f0;--bg-modal: #ffffff;--bg-dark: #0d0d0d;--accent: #6AAFE6;--accent-dark: #4A94D4;--accent-bg: rgba(106, 175, 230, .08);--accent-glow: rgba(106, 175, 230, .18);--text-primary: #111111;--text-secondary: #666666;--text-muted: #767676;--text-accent: #6AAFE6;--border: rgba(0, 0, 0, .09);--border-light: rgba(0, 0, 0, .06);--border-focus: #6AAFE6;--shadow: 0 1px 3px rgba(0,0,0,.05), 0 6px 20px rgba(0,0,0,.07);--shadow-lg: 0 4px 12px rgba(0,0,0,.08), 0 20px 48px rgba(0,0,0,.1);--stage-spotted: #3B82F6;--stage-applied: #F59E0B;--stage-screening: #06B6D4;--stage-interview: #8B5CF6;--stage-offer: #10B981;--stage-closed: #9CA3AF;--score-high: #10B981;--score-mid: #F59E0B;--score-low: #EF4444;--font-display: "Montserrat", system-ui, sans-serif;--font-mono: "JetBrains Mono", monospace;--font-body: "Poppins", system-ui, sans-serif;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--gutter: clamp(1.25rem, 3vw, 2rem)}[data-theme=dark]{--bg-base: #0f0f0f;--bg-surface: #1a1a1a;--bg-elevated: #222222;--bg-card: #1c1c1c;--bg-hover: #252525;--bg-modal: #1a1a1a;--border: rgba(255,255,255,.08);--border-light: rgba(255,255,255,.05);--text-primary: #f0f0f0;--text-secondary: #b5b5b5;--text-muted: #a0a0a0;--shadow: 0 1px 3px rgba(0,0,0,.4), 0 6px 20px rgba(0,0,0,.5);--shadow-lg: 0 4px 12px rgba(0,0,0,.5), 0 20px 48px rgba(0,0,0,.6)}[data-theme=dark] .stats-bar{background:#1a1a1aeb}[data-theme=dark] .ai-panel{background:#6aafe60f;border-color:#6aafe62e}[data-theme=dark] ::-webkit-scrollbar-thumb{background:#ffffff1a}[data-theme=dark] ::-webkit-scrollbar-thumb:hover{background:#ffffff2e}[data-theme=dark] input,[data-theme=dark] textarea,[data-theme=dark] select{background:#242424;border-color:#ffffff1a;box-shadow:none}[data-theme=dark] .score-high{background:#10b98126;color:#34d399;border-color:#10b98166}[data-theme=dark] .score-mid{background:#f59e0b26;color:#fcd34d;border-color:#f59e0b66}[data-theme=dark] .score-low{background:#ef444426;color:#f87171;border-color:#ef444466}[data-theme=dark] .kanban-col{background:#161616;border-color:#ffffff12}[data-theme=dark] .job-card{background:#1e1e1e}[data-theme=dark] .job-card-source{background:#2a2a2a;border-color:#ffffff12}[data-theme=dark] .dash-kpi-tile,[data-theme=dark] .dash-chart-card{background:#161616}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{height:100%;background:var(--bg-base);color:var(--text-primary);font-family:var(--font-body);line-height:1.65}#root{height:100vh;display:flex;flex-direction:column}::selection{background:var(--accent);color:#fff}h1,h2,h3,h4{font-family:var(--font-display);font-weight:700;letter-spacing:-.02em;color:var(--text-primary)}h1{font-size:1.5rem;font-weight:800}h2{font-size:1.25rem}h3{font-size:1rem}.eyebrow{font-family:var(--font-mono);font-size:.65rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted)}.mono{font-family:var(--font-mono)}.label{font-family:var(--font-mono);font-size:.65rem;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted)}.label-blue{font-family:var(--font-mono);font-size:.65rem;text-transform:uppercase;letter-spacing:.1em;color:var(--accent)}a{color:var(--accent);text-decoration:none;transition:opacity .2s}a:hover{opacity:.75}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#0000001f;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:#0003}input,textarea,select{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-primary);font-family:var(--font-body);font-size:.9rem;padding:9px 12px;outline:none;width:100%;transition:border-color .15s,box-shadow .15s;box-shadow:0 1px 2px #0000000a}input:focus,textarea:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px #29b6f61f}textarea{resize:vertical;min-height:80px}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23999' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:32px;cursor:pointer}::placeholder{color:var(--text-muted)}.btn{display:inline-flex;align-items:center;gap:6px;padding:8px 18px;border-radius:100px;font-size:.78rem;font-family:var(--font-body);font-weight:600;letter-spacing:.04em;cursor:pointer;border:none;transition:transform .2s ease,box-shadow .2s ease,background .2s ease,opacity .2s;white-space:nowrap;text-transform:uppercase}.btn:disabled{opacity:.45;cursor:not-allowed}.btn:not(:disabled):hover{transform:translateY(-1px)}.btn-primary{background:var(--accent);color:#fff;box-shadow:0 2px 10px #29b6f647}.btn-primary:not(:disabled):hover{background:var(--accent-dark);box-shadow:0 4px 18px #29b6f65c}.btn-ghost{background:transparent;border:1.5px solid var(--border);color:var(--text-secondary)}.btn-ghost:not(:disabled):hover{border-color:var(--accent);color:var(--accent);background:var(--accent-bg)}.btn-danger{background:transparent;border:1.5px solid rgba(239,68,68,.25);color:#ef4444}.btn-danger:not(:disabled):hover{background:#ef44440f;border-color:#ef444473}.btn-sm{padding:5px 12px;font-size:.7rem}.btn-icon{padding:7px;background:transparent;border:none;color:var(--text-muted);cursor:pointer;border-radius:50%;display:inline-flex;align-items:center;transition:color .15s,background .15s}.btn-icon:hover{color:var(--text-primary);background:var(--bg-hover)}.surface{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow)}.card-base{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);transition:box-shadow .25s ease,transform .25s ease}.card-base:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.tag{display:inline-flex;align-items:center;padding:2px 7px;border-radius:100px;font-family:var(--font-mono);font-size:.6rem;font-weight:500;letter-spacing:.05em;background:#29b6f614;color:var(--accent-dark);border:1px solid rgba(41,182,246,.2)}.stage-badge{display:inline-flex;align-items:center;padding:2px 9px;border-radius:100px;font-family:var(--font-mono);font-size:.6rem;font-weight:500;letter-spacing:.06em}.stage-Spotted{background:#3b82f61a;color:#2563eb;border:1px solid rgba(59,130,246,.2)}.stage-Applied{background:#f59e0b1a;color:#b45309;border:1px solid rgba(245,158,11,.2)}.stage-Screening{background:#06b6d41a;color:#0891b2;border:1px solid rgba(6,182,212,.2)}.stage-Interview{background:#8b5cf61a;color:#7c3aed;border:1px solid rgba(139,92,246,.2)}.stage-Offer{background:#10b9811a;color:#059669;border:1px solid rgba(16,185,129,.2)}.stage-Closed{background:#9ca3af1a;color:#6b7280;border:1px solid rgba(156,163,175,.2)}.score-badge{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;font-family:var(--font-mono);font-size:.7rem;font-weight:600;flex-shrink:0}.score-high{background:#10b9811a;color:#059669;border:1.5px solid rgba(16,185,129,.3)}.score-mid{background:#f59e0b1a;color:#b45309;border:1.5px solid rgba(245,158,11,.3)}.score-low{background:#ef44441a;color:#dc2626;border:1.5px solid rgba(239,68,68,.3)}@keyframes pulse-overdue{0%,to{box-shadow:0 0 #ef444459}50%{box-shadow:0 0 0 6px #ef444400}}.overdue{animation:pulse-overdue 2s ease-in-out infinite}.app-layout{display:flex;flex-direction:column;height:100vh;overflow:hidden}.app-body{flex:1;display:flex;flex-direction:row;overflow:hidden;min-height:0}.app-content{flex:1;overflow:hidden;display:flex;flex-direction:column;min-width:0}.app-header{height:48px;display:flex;align-items:center;padding:0 20px;background:#fffffff0;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--border);flex-shrink:0;z-index:100;gap:10px}[data-theme=dark] .app-header{background:#141414f0}.app-header-wordmark{font-family:Montserrat,system-ui,sans-serif;font-size:1rem;font-weight:800;letter-spacing:.04em;color:var(--accent);flex-shrink:0;text-transform:uppercase}.app-header-save-status{font-family:var(--font-mono);font-size:.62rem;text-transform:uppercase;letter-spacing:.08em;display:flex;align-items:center;gap:5px;flex-shrink:0}.app-header-save-status[data-status=saving]{color:var(--text-muted)}.app-header-save-status[data-status=saved]{color:#10b981}.app-header-save-status[data-status=error]{color:#ef4444}.app-header-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.app-header-btn{font-family:var(--font-mono);font-size:.62rem;text-transform:uppercase;letter-spacing:.08em;padding:4px 10px;background:transparent;border:1px solid var(--border);border-radius:100px;color:var(--text-muted);cursor:pointer;transition:border-color .15s,color .15s;line-height:1.4}.app-header-btn:hover{border-color:var(--accent);color:var(--accent)}.theme-toggle{display:flex;align-items:center;gap:5px;font-family:var(--font-mono);font-size:.65rem;font-weight:500;text-transform:uppercase;letter-spacing:.08em;padding:5px 12px;background:var(--accent-bg);border:1px solid var(--accent);border-radius:100px;color:var(--accent);cursor:pointer;transition:background .15s,color .15s;line-height:1.4}.theme-toggle:hover{background:var(--accent);color:#000}.sidebar{width:210px;min-width:210px;flex-shrink:0;background:var(--bg-surface);border-right:1px solid var(--border);display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;padding:10px 0 20px}.sidebar-section-label{font-family:var(--font-mono);font-size:.58rem;text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted);padding:8px 18px 6px;flex-shrink:0}.sidebar-nav{display:flex;flex-direction:column;gap:1px;padding:0 8px}.sidebar-nav-item{display:flex;align-items:center;gap:9px;padding:8px 10px;cursor:pointer;font-family:var(--font-body);font-size:.82rem;font-weight:500;color:var(--text-secondary);background:transparent;border:none;border-radius:var(--radius-md);width:100%;text-align:left;transition:background .12s,color .12s;position:relative}.sidebar-nav-item:hover{background:var(--bg-hover);color:var(--text-primary)}.sidebar-nav-item.active{background:var(--bg-elevated);color:var(--text-primary);font-weight:600}.sidebar-nav-item.active:before{content:"";position:absolute;left:0;top:6px;bottom:6px;width:3px;background:var(--accent);border-radius:0 2px 2px 0}.sidebar-nav-icon{flex-shrink:0;display:flex;align-items:center;opacity:.7}.sidebar-nav-item.active .sidebar-nav-icon{opacity:1}.sidebar-nav-label{flex:1}.sidebar-nav-badge{font-family:var(--font-mono);font-size:.6rem;font-weight:600;padding:1px 6px;border-radius:100px;background:var(--bg-hover);color:var(--text-muted);border:1px solid var(--border);flex-shrink:0}.sidebar-nav-badge.overdue{background:#ef44441a;color:#dc2626;border-color:#ef444440}.dash-wrap{flex:1;overflow-y:auto;padding:24px 28px;display:flex;flex-direction:column;gap:18px;background:var(--bg-base)}.dash-inner{max-width:1280px;margin:0 auto;width:100%;display:flex;flex-direction:column;gap:18px}.dash-kpi-row{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.dash-kpi-tile{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:18px 20px 16px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:4px;transition:box-shadow .2s,transform .2s;position:relative;overflow:hidden}.dash-kpi-tile:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--border);border-radius:var(--radius-lg) var(--radius-lg) 0 0}.dash-kpi-tile:hover{box-shadow:var(--shadow-lg);transform:translateY(-1px)}.dash-kpi-tile.clickable:hover{transform:translateY(-2px);border-color:var(--accent)}.dash-kpi-tile.clickable:active{transform:translateY(0)}.dash-kpi-tile.danger:before{background:#ef4444}.dash-kpi-tile.accent:before{background:var(--accent)}.dash-kpi-tile.success:before{background:#10b981}.dash-kpi-value{font-family:var(--font-mono);font-size:2rem;font-weight:700;letter-spacing:-.04em;line-height:1;color:var(--text-primary);margin-top:4px}.dash-kpi-tile.danger .dash-kpi-value{color:#ef4444}.dash-kpi-tile.accent .dash-kpi-value{color:var(--accent)}.dash-kpi-tile.success .dash-kpi-value{color:#10b981}.dash-kpi-label{font-family:var(--font-body);font-size:.82rem;font-weight:500;color:var(--text-primary);margin-top:4px}.dash-kpi-note{font-family:var(--font-mono);font-size:.6rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em}.dash-row{display:grid;gap:14px}.dash-row-6-4{grid-template-columns:3fr 2fr}.dash-row-5-5{grid-template-columns:1fr 1fr}.dash-chart-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:20px 22px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:14px}.dash-chart-header{display:flex;flex-direction:column;gap:3px}.dash-chart-title{font-family:var(--font-body);font-size:.88rem;font-weight:600;color:var(--text-primary);letter-spacing:-.01em}.dash-chart-subtitle{font-family:var(--font-mono);font-size:.62rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em}.dash-chart-empty{font-family:var(--font-mono);font-size:.72rem;color:var(--text-muted);text-align:center;padding:40px 20px;letter-spacing:.04em}.dash-funnel{display:flex;flex-direction:column;gap:10px;padding:4px 0}.dash-funnel-row{display:grid;grid-template-columns:80px 1fr 60px;align-items:center;gap:12px}.dash-funnel-label{font-family:var(--font-mono);font-size:.68rem;color:var(--text-secondary);text-align:right}.dash-funnel-bar-wrap{height:22px;background:var(--bg-elevated);border-radius:4px;overflow:hidden}.dash-funnel-bar{height:100%;border-radius:4px;transition:width .6s cubic-bezier(.4,0,.2,1);opacity:.9}.dash-funnel-count{font-family:var(--font-mono);font-size:.72rem;color:var(--text-primary);display:flex;align-items:center;gap:5px}.dash-funnel-pct{font-size:.62rem;color:var(--text-muted)}.dash-drilldown{background:var(--bg-surface);border:1px solid var(--accent);border-radius:var(--radius-lg);overflow:hidden;animation:modal-in .15s ease}[data-theme=dark] .dash-drilldown{background:#161616}.dash-drilldown-header{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;border-bottom:1px solid var(--border);background:var(--accent-bg)}.dash-drilldown-title{font-family:var(--font-mono);font-size:.68rem;font-weight:600;color:var(--accent);text-transform:uppercase;letter-spacing:.08em}.dash-drilldown-close{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:18px;line-height:1;padding:0 2px;transition:color .1s}.dash-drilldown-close:hover{color:var(--text-primary)}.dash-drilldown-list{display:flex;flex-direction:column;max-height:320px;overflow-y:auto}.dash-drilldown-row{display:flex;align-items:center;gap:10px;padding:9px 16px;border:none;border-bottom:1px solid var(--border-light);background:transparent;cursor:pointer;text-align:left;width:100%;transition:background .1s}.dash-drilldown-row:last-child{border-bottom:none}.dash-drilldown-row:hover{background:var(--bg-elevated)}.dash-drilldown-job-title{font-size:.84rem;font-weight:500;color:var(--text-primary);flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dash-drilldown-company{font-family:var(--font-mono);font-size:.68rem;color:var(--text-muted);white-space:nowrap}.dash-drilldown-empty{padding:20px 16px;font-family:var(--font-mono);font-size:.7rem;color:var(--text-muted);text-align:center}.dash-recruiter-bar{display:flex;height:8px;border-radius:100px;overflow:hidden;background:var(--bg-elevated);margin-bottom:10px}.dash-recruiter-bar-seg{height:100%;transition:width .4s ease}.dash-recruiter-legend{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:14px}.dash-recruiter-list{display:flex;flex-direction:column;gap:6px}.dash-recruiter-row{display:flex;justify-content:space-between;align-items:center;padding:5px 0;border-bottom:1px solid var(--border-light);font-size:12px}.dash-recruiter-name{color:var(--text-primary);font-weight:500;font-size:.78rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:65%}.dash-recruiter-status{font-family:var(--font-mono);font-size:.62rem}.stats-bar{position:relative;z-index:100;height:56px;display:flex;align-items:center;padding:0 var(--gutter);gap:0;background:#ffffffeb;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--border);flex-shrink:0}.stats-wordmark{font-family:var(--font-body);font-size:.95rem;font-weight:700;letter-spacing:-.02em;color:var(--text-primary);margin-right:28px;flex-shrink:0}.stats-divider{width:1px;height:20px;background:var(--border);margin:0 2px}.tab-nav{display:flex;align-items:center;padding:0 var(--gutter);gap:0;background:var(--bg-surface);border-bottom:1px solid var(--border);flex-shrink:0}.tab-nav-btn{position:relative;padding:12px 14px;background:transparent;border:none;border-bottom:2px solid transparent;font-family:var(--font-body);font-size:.82rem;font-weight:500;color:var(--text-muted);cursor:pointer;margin-bottom:-1px;transition:color .2s;white-space:nowrap;letter-spacing:0;text-transform:none}.tab-nav-btn:after{content:"";position:absolute;bottom:-1px;left:0;width:0;height:2px;background:var(--accent);transition:width .25s ease}.tab-nav-btn.active{color:var(--text-primary);font-weight:600}.tab-nav-btn.active:after{width:100%}.tab-nav-btn:hover{color:var(--text-primary)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:1000;display:flex;align-items:flex-start;justify-content:center;padding:32px 16px;overflow-y:auto}.modal{background:var(--bg-modal);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;max-width:820px;box-shadow:var(--shadow-lg);animation:modal-in .2s ease}@keyframes modal-in{0%{opacity:0;transform:translateY(-12px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{display:flex;align-items:flex-start;gap:12px;padding:22px 28px 18px;border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--bg-modal);z-index:10;border-radius:var(--radius-lg) var(--radius-lg) 0 0}.modal-body{padding:24px 28px;display:flex;flex-direction:column;gap:22px}.modal-footer{padding:18px 28px;border-top:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;gap:12px;background:var(--bg-base);border-radius:0 0 var(--radius-lg) var(--radius-lg)}.field-group{display:flex;flex-direction:column;gap:6px}.field-label{font-family:var(--font-mono);font-size:.65rem;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted)}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field-row-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px}.section-divider{border:none;border-top:1px solid var(--border);margin:0}.section-header{font-family:var(--font-mono);font-size:.65rem;text-transform:uppercase;letter-spacing:.14em;color:var(--text-muted);padding:4px 0 10px;display:flex;align-items:center;gap:10px}.section-header:after{content:"";flex:1;height:1px;background:var(--border)}.ai-panel{background:#f0f8ff;border:1px solid rgba(41,182,246,.2);border-left:3px solid var(--accent);border-radius:var(--radius-md);padding:16px 18px;font-size:.875rem;line-height:1.72;color:var(--text-secondary);box-shadow:0 1px 4px #29b6f60f}.ai-panel strong{color:var(--text-primary);font-weight:600}.md-content{font-size:.875rem;line-height:1.72;color:var(--text-secondary)}.md-content>*+*{margin-top:.6em}.md-content p{margin:0 0 .5em}.md-content p:last-child{margin-bottom:0}.md-content h1,.md-content h2{font-family:var(--font-display);font-size:.95rem;font-weight:600;color:var(--text-primary);margin:1em 0 .35em;padding-bottom:4px;border-bottom:1px solid var(--border)}.md-content h1:first-child,.md-content h2:first-child{margin-top:0}.md-content h3{font-family:var(--font-mono);font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--accent);margin:.9em 0 .3em}.md-content h3:first-child{margin-top:0}.md-content h4{font-weight:600;color:var(--text-primary);margin:.6em 0 .25em}.md-content ul,.md-content ol{padding-left:1.4em;margin:.3em 0 .5em}.md-content li{margin-bottom:.25em}.md-content li>ul,.md-content li>ol{margin:.15em 0}.md-content strong{color:var(--text-primary);font-weight:600}.md-content em{font-style:italic}.md-content code{font-family:var(--font-mono);font-size:.82em;background:#29b6f61a;padding:1px 5px;border-radius:3px}.md-content hr{border:none;border-top:1px solid var(--border);margin:.8em 0}.md-content table{width:100%;border-collapse:collapse;font-size:.82rem;margin:.5em 0}.md-content th{font-family:var(--font-mono);font-size:.65rem;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);text-align:left;padding:5px 10px;border-bottom:1px solid var(--border)}.md-content td{padding:5px 10px;border-bottom:1px solid var(--border);vertical-align:top}.md-content tr:last-child td{border-bottom:none}.ai-panel-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.ai-label{font-family:var(--font-mono);font-size:.62rem;color:var(--accent);letter-spacing:.12em;text-transform:uppercase}@keyframes spin{to{transform:rotate(360deg)}}.spinner{width:14px;height:14px;border:2px solid rgba(41,182,246,.2);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite;display:inline-block}.star-rating{display:flex;gap:2px}.star{cursor:pointer;color:var(--border);font-size:16px;transition:color .1s}.star.active,.star:hover{color:#f59e0b}#progress-bar{position:fixed;top:0;left:0;width:0%;height:2px;background:var(--accent);z-index:300;transition:width .05s linear}.view-container{flex:1;overflow-y:auto;padding:var(--gutter);background:var(--bg-base)}.view-header{margin-bottom:2rem}.view-title{font-size:1.5rem;font-weight:700;letter-spacing:-.025em;margin-bottom:.25rem}.view-subtitle{font-size:.9rem;color:var(--text-secondary)}.board-wrap{flex:1;overflow:hidden;display:flex;flex-direction:column;background:var(--bg-base);position:relative}.board-wrap:after{content:"";position:absolute;top:0;right:0;width:48px;height:100%;background:linear-gradient(to left,var(--bg-base) 0%,transparent 100%);pointer-events:none;z-index:2}.board-inner{display:flex;gap:12px;padding:20px var(--gutter);height:100%;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.kanban-col{display:flex;flex-direction:column;width:262px;min-width:262px;max-width:262px;height:100%;background:var(--bg-surface);border:1px solid var(--border);border-top:3px solid var(--col-color, var(--border));border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:12px 10px 0;transition:width .18s ease,min-width .18s ease,max-width .18s ease}.kanban-col-collapsed{width:150px;min-width:150px;max-width:150px;padding:12px 10px}.kanban-drop-zone-collapsed{min-height:32px;flex:0 0 auto}.kanban-col-header{display:flex;align-items:center;justify-content:space-between;padding:0 2px 10px;flex-shrink:0}.kanban-col-header-left{display:flex;align-items:center;gap:7px}.kanban-col-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.kanban-col-name{font-family:var(--font-body);font-size:.8rem;font-weight:600;color:var(--text-primary);letter-spacing:-.01em}.kanban-col-count{font-family:var(--font-mono);font-size:.68rem;color:var(--text-muted);background:var(--bg-elevated);border:1px solid var(--border-light);border-radius:100px;padding:0 6px;line-height:1.6}.kanban-col-add{background:transparent;border:1.5px solid var(--border);border-radius:50%;color:var(--text-muted);width:22px;height:22px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:15px;line-height:1;transition:all .18s ease;padding:0}.kanban-col-add:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-bg)}.kanban-drop-zone{flex:1;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;gap:8px;padding:2px 2px 16px;border-radius:0 0 var(--radius-lg) var(--radius-lg);transition:background .15s;min-height:80px}.kanban-drop-zone.is-over{background:#29b6f60a}.kanban-empty{text-align:center;padding:36px 12px;font-family:var(--font-mono);font-size:.68rem;color:var(--text-muted);border:1.5px dashed var(--border);border-radius:var(--radius-md);letter-spacing:.04em}.job-card{background:var(--bg-card);border:1px solid var(--border);border-top:2px solid var(--card-color, var(--border));border-radius:var(--radius-md);box-shadow:0 1px 3px #0000000a;padding:12px 14px 10px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:box-shadow .2s ease,transform .2s ease,border-color .15s;position:relative}.job-card:hover{box-shadow:var(--shadow);transform:translateY(-1px);border-top-color:var(--card-color, var(--accent))}.job-card.is-dragging{opacity:.3}.job-card.is-overlay{transform:rotate(1.5deg);box-shadow:var(--shadow-lg)}.job-card-stage-bar{display:none}.job-card-title{font-weight:600;font-size:.875rem;color:var(--text-primary);line-height:1.35;letter-spacing:-.01em;word-break:break-word;margin-bottom:3px}.job-card-title.empty{color:var(--text-muted)}.job-card-company{font-size:.78rem;font-weight:500;color:var(--text-secondary);margin-top:1px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.job-card-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:8px}.job-card-footer{display:flex;justify-content:space-between;align-items:center;margin-top:8px;padding-top:7px;border-top:1px solid var(--border-light);gap:6px}.job-card-source{font-family:var(--font-mono);font-size:.6rem;color:var(--text-muted);letter-spacing:.03em;background:var(--bg-elevated);border:1px solid var(--border-light);border-radius:100px;padding:1px 7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:120px}.job-card-followup{font-family:var(--font-mono);font-size:.6rem;color:var(--text-muted);white-space:nowrap}.job-card-followup.overdue-text{color:#dc2626;font-weight:600}.job-card-salary{font-family:var(--font-mono);font-size:.6rem;color:var(--accent-dark);margin-top:5px}.data-table{width:100%;border-collapse:collapse;font-size:.875rem}.data-table th{font-family:var(--font-mono);font-size:.62rem;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);padding:8px 12px;text-align:left;border-bottom:1px solid var(--border);font-weight:500}.data-table td{padding:12px;border-bottom:1px solid var(--border-light);vertical-align:top;color:var(--text-primary)}.data-table tr:hover td{background:var(--bg-hover)}.timeline{position:relative;padding-left:1.5rem;border-left:1px solid var(--border)}.timeline-item{position:relative;padding-bottom:1.75rem}.timeline-item:last-child{padding-bottom:0}.timeline-dot{position:absolute;left:-1.77rem;top:.35rem;width:9px;height:9px;border-radius:50%;background:var(--bg-surface);border:1.5px solid #ccc}.timeline-dot.active{background:var(--accent);border-color:var(--accent)}.recruiter-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:20px 22px;transition:box-shadow .25s,transform .25s}.recruiter-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-1px)}.company-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:18px 20px;transition:box-shadow .25s,transform .25s}.company-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-1px)}.status-pill{display:inline-flex;align-items:center;padding:3px 10px;border-radius:100px;font-family:var(--font-mono);font-size:.6rem;font-weight:500;letter-spacing:.06em}.status-watching{background:#29b6f61a;color:#0288d1;border:1px solid rgba(41,182,246,.2)}.status-contacted{background:#f59e0b1a;color:#b45309;border:1px solid rgba(245,158,11,.2)}.status-active{background:#10b9811a;color:#059669;border:1px solid rgba(16,185,129,.2)}.status-pass{background:#9ca3af1a;color:#6b7280;border:1px solid rgba(156,163,175,.2)}.stat-tile{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:20px 22px;display:flex;flex-direction:column;gap:4px}.stat-tile-value{font-family:var(--font-mono);font-size:2rem;font-weight:600;letter-spacing:-.04em;color:var(--text-primary);line-height:1}.stat-tile-label{font-family:var(--font-mono);font-size:.62rem;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted)}@media (max-width: 680px){.stats-bar{padding:0 12px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.stats-bar::-webkit-scrollbar{display:none}.stats-actions{display:none}.tab-nav{padding:0 12px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap}.tab-nav::-webkit-scrollbar{display:none}.tab-nav-btn{padding:10px;font-size:.76rem;min-height:44px;white-space:nowrap}.modal-overlay{padding:0;align-items:flex-end}.modal{border-radius:18px 18px 0 0;max-height:92dvh;overflow-y:auto}.modal-header{padding:16px 16px 12px;border-radius:18px 18px 0 0}.modal-body{padding:16px;gap:16px}.modal-footer{padding:12px 16px;flex-wrap:wrap;gap:8px}.field-row,.field-row-3{grid-template-columns:1fr}.board-inner{padding:12px;gap:10px}.kanban-col{width:84vw;min-width:84vw;max-width:84vw}.view-container{padding:14px}.view-title{font-size:1.2rem}.recruiter-card,.company-card{padding:14px 16px}.kanban-col-add{width:32px;height:32px;font-size:18px}@media (hover: none){.job-card:hover,.recruiter-card:hover,.company-card:hover,.card-base:hover{transform:none;box-shadow:var(--shadow)}.btn:not(:disabled):hover{transform:none}}}.dash-section-header{display:flex;align-items:center;gap:12px;margin:6px 0 -4px}.dash-section-label{font-family:var(--font-mono);font-size:.66rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.14em;white-space:nowrap}.dash-section-rule{flex:1;height:1px;background:var(--border)}.dash-kpi-3{grid-template-columns:repeat(3,1fr)}.dash-ai-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.dash-ai-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:14px 16px 13px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:4px;position:relative;overflow:hidden;transition:box-shadow .2s,transform .2s}.dash-ai-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-1px)}.dash-ai-card-label{font-family:var(--font-mono);font-size:.62rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em}.dash-ai-card-value{font-family:var(--font-mono);font-size:1.7rem;font-weight:700;letter-spacing:-.03em;line-height:1.1;margin-top:2px}.dash-ai-card-note{font-family:var(--font-body);font-size:.72rem;color:var(--text-muted);line-height:1.3}.dash-compare{display:flex;flex-direction:column;gap:14px;padding:6px 0 4px}.dash-compare-row{display:grid;grid-template-columns:160px 1fr 90px;align-items:center;gap:12px;transition:transform .15s}.dash-compare-row:hover{transform:translate(2px)}.dash-compare-label{font-family:var(--font-mono);font-size:.7rem;color:var(--text-secondary);line-height:1.25}.dash-compare-bar-wrap{height:26px;background:var(--bg-elevated);border-radius:4px;overflow:hidden}.dash-compare-bar{height:100%;border-radius:4px;transition:width .6s cubic-bezier(.4,0,.2,1)}.dash-compare-stat{display:flex;flex-direction:column;align-items:flex-end;line-height:1.1}.dash-compare-rate{font-family:var(--font-mono);font-size:1rem;font-weight:700;color:var(--text-primary)}.dash-compare-count{font-family:var(--font-mono);font-size:.62rem;color:var(--text-muted);margin-top:2px}.dash-compare-summary{margin-top:4px;padding:10px 12px;background:var(--bg-elevated);border-radius:6px;font-family:var(--font-body);font-size:.78rem;color:var(--text-secondary);text-align:center}.dash-velocity-row{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.dash-velocity-tile{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:12px 16px;display:flex;flex-direction:column;gap:4px;box-shadow:var(--shadow)}.dash-velocity-label{font-family:var(--font-mono);font-size:.62rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em}.dash-velocity-value{font-family:var(--font-mono);font-size:1.4rem;font-weight:700;color:var(--text-primary);letter-spacing:-.02em;line-height:1}.dash-velocity-unit{font-size:.62rem;font-weight:400;color:var(--text-muted);margin-left:4px;letter-spacing:.04em}.dash-dumbbell{display:flex;flex-direction:column;gap:8px;padding:8px 0 4px}.dash-dumbbell-axis{position:relative;height:14px;margin-left:180px;margin-right:48px;border-bottom:1px dashed var(--border)}.dash-dumbbell-axis span{position:absolute;top:0;transform:translate(-50%);font-family:var(--font-mono);font-size:.58rem;color:var(--text-muted)}.dash-dumbbell-row{display:grid;grid-template-columns:180px 1fr 48px;align-items:center;gap:8px}.dash-dumbbell-label{display:flex;flex-direction:column;gap:1px;min-width:0}.dash-dumbbell-title{font-family:var(--font-body);font-size:.78rem;font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dash-dumbbell-company{font-family:var(--font-mono);font-size:.62rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dash-dumbbell-track{position:relative;height:20px}.dash-dumbbell-track:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:var(--border);opacity:.4}.dash-dumbbell-line{position:absolute;top:50%;height:3px;border-radius:2px;transform:translateY(-50%);opacity:.55}.dash-dumbbell-dot{position:absolute;top:50%;width:12px;height:12px;border-radius:50%;transform:translate(-50%,-50%);border:2px solid var(--bg-surface);box-shadow:0 0 0 1px #0000001a}.dash-dumbbell-base{background:var(--text-muted)}.dash-dumbbell-tail{background:#f59e0b}.dash-dumbbell-delta{font-family:var(--font-mono);font-size:.78rem;font-weight:700;text-align:right}.dash-dumbbell-legend{display:flex;justify-content:flex-end;gap:16px;margin-top:6px;padding-right:48px}.list-wrap{display:flex;flex-direction:column;gap:14px;padding:18px 24px 32px;max-width:1400px;margin:0 auto;width:100%;background:var(--bg-base)}.list-toolbar{display:flex;align-items:flex-start;gap:12px;flex-wrap:wrap}.list-filters{display:flex;align-items:center;gap:8px;flex-wrap:wrap;flex:1}.list-search{height:32px;padding:0 10px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-elevated);color:var(--text-primary);font-family:var(--font-body);font-size:.82rem;min-width:200px;max-width:280px;outline:none;transition:border-color .15s}.list-search:focus{border-color:var(--accent)}.list-filter-group{display:flex;gap:4px;flex-wrap:wrap}.list-filter-chip{height:28px;padding:0 10px;border-radius:99px;border:1px solid var(--border);background:transparent;color:var(--text-secondary);font-family:var(--font-mono);font-size:.68rem;cursor:pointer;transition:all .15s;white-space:nowrap}.list-filter-chip:hover{border-color:var(--text-secondary);color:var(--text-primary)}.list-filter-chip.on{background:var(--accent-bg);border-color:var(--accent);color:var(--accent)}.list-count{font-family:var(--font-mono);font-size:.72rem;color:var(--text-secondary)}.list-empty{text-align:center;padding:60px 24px;color:var(--text-secondary);font-family:var(--font-body)}.list-table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow)}.list-table{width:100%;border-collapse:collapse;font-family:var(--font-body);font-size:.84rem}.list-table thead tr{background:var(--bg-elevated);border-bottom:1px solid var(--border)}.list-table th{padding:10px 14px;text-align:left;font-family:var(--font-mono);font-size:.64rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .15s}.list-table th:hover{color:var(--text-primary)}.list-table td{padding:10px 14px;border-bottom:1px solid var(--border);vertical-align:middle;max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.list-row{background:var(--bg-surface);cursor:pointer;transition:background .1s}.list-row:last-child td{border-bottom:none}.list-row:hover{background:var(--bg-elevated)}.list-row:hover td:first-child{color:var(--accent)}@media (max-width: 900px){.dash-ai-metrics{grid-template-columns:repeat(2,1fr)}.dash-velocity-row,.dash-kpi-3,.dash-compare-row{grid-template-columns:1fr}.dash-dumbbell-axis{margin-left:120px;margin-right:36px}.dash-dumbbell-row{grid-template-columns:120px 1fr 36px}}
