:root{
  --bg:#0b0d12;--panel:#12151d;--panel2:#171b24;--line:#262c38;--text:#f5f7fb;--muted:#929bad;--accent:#7c5cff;--accent2:#a895ff;--good:#30c48d;--warn:#f2b84b;--bad:#ef6d76;--blue:#5aa7ff;
  --radius:16px;--shadow:0 18px 50px rgba(0,0,0,.22);
}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}
body{background:radial-gradient(circle at 85% 0%,rgba(124,92,255,.11),transparent 28%),var(--bg)}
#app{display:grid;grid-template-columns:240px 1fr;min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;padding:20px 14px;border-right:1px solid var(--line);background:rgba(12,14,20,.86);backdrop-filter:blur(18px);display:flex;flex-direction:column}.brand{display:flex;gap:12px;align-items:center;padding:8px 10px 24px}.brand-mark{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;font-weight:800;background:linear-gradient(145deg,var(--accent),#4e35d9);box-shadow:0 10px 30px rgba(124,92,255,.28)}.brand div:last-child{display:flex;flex-direction:column}.brand span{font-size:11px;color:var(--muted);margin-top:2px}.nav{display:grid;gap:6px}.nav-item{display:flex;align-items:center;gap:12px;width:100%;border:0;background:transparent;color:var(--muted);padding:11px 12px;border-radius:12px;text-align:left}.nav-item:hover{background:var(--panel2);color:var(--text)}.nav-item.active{background:rgba(124,92,255,.13);color:#d9d1ff;border:1px solid rgba(124,92,255,.22)}.sidebar-footer{margin-top:auto;color:var(--muted);font-size:12px;padding:12px}.sidebar-footer span{font-size:11px}.main{min-width:0}.mobile-header{display:none}.page-wrap{max-width:1500px;margin:0 auto;padding:34px 38px 60px}.eyebrow{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}h1{font-size:32px;letter-spacing:-.03em;margin:6px 0 6px}h2{font-size:18px;margin:0}p{color:var(--muted)}.page-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:28px}.page-head-actions{display:flex;gap:10px;flex-wrap:wrap}.btn{border:1px solid var(--line);background:var(--panel2);color:var(--text);padding:9px 13px;border-radius:11px}.btn:hover{border-color:#3c4454}.btn-primary{background:var(--accent);border-color:var(--accent);color:white}.btn-good{background:rgba(48,196,141,.12);border-color:rgba(48,196,141,.35);color:#8be5c2}.btn-danger{background:rgba(239,109,118,.10);border-color:rgba(239,109,118,.28);color:#ff9aa1}.btn-ghost{background:transparent}.btn:disabled{opacity:.45;cursor:not-allowed}.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:28px}.kpi{padding:18px;border:1px solid var(--line);background:linear-gradient(180deg,rgba(255,255,255,.02),transparent),var(--panel);border-radius:var(--radius)}.kpi strong{display:block;font-size:28px;letter-spacing:-.03em}.kpi span{font-size:13px;color:var(--muted)}.section{margin-top:24px}.section-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.section-title span{font-size:13px;color:var(--muted)}.job-list{display:grid;gap:10px}.job-card{border:1px solid var(--line);background:var(--panel);border-radius:15px;padding:15px;transition:.16s ease}.job-card:hover{transform:translateY(-1px);border-color:#374052}.job-top{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:start}.score-pill{min-width:58px;border-radius:12px;padding:9px 8px;text-align:center;background:var(--panel2);border:1px solid var(--line)}.score-pill strong{display:block;font-size:18px}.score-pill span{font-size:9px;color:var(--muted);text-transform:uppercase}.score-excellent{color:#79e3bc}.score-strong{color:#9fc4ff}.score-good{color:#d4d98a}.score-possible{color:#f5c76f}.score-weak{color:#f38a91}.job-title{font-weight:700;font-size:16px;margin-bottom:3px}.job-meta{display:flex;gap:8px;flex-wrap:wrap;color:var(--muted);font-size:12px}.dot::before{content:"•";margin-right:8px}.job-summary{margin:10px 0 8px;color:#c4cad6;font-size:13px;line-height:1.5}.tags{display:flex;gap:7px;flex-wrap:wrap}.tag{border:1px solid var(--line);background:#10131a;color:#aeb7c7;padding:5px 8px;border-radius:999px;font-size:11px}.tag.good{color:#8be5c2;border-color:rgba(48,196,141,.25);background:rgba(48,196,141,.07)}.tag.warn{color:#f6cb7b;border-color:rgba(242,184,75,.25);background:rgba(242,184,75,.07)}.job-actions{display:flex;gap:7px;align-items:center}.action-icon{width:36px;height:36px;border-radius:10px;border:1px solid var(--line);background:var(--panel2);color:var(--muted)}.action-icon.active-save{color:#ffd76a;border-color:#756535;background:#2a2516}.action-icon.active-approve{color:#90e8c7;border-color:#276c55;background:#113328}.action-icon.active-skip{color:#ff9aa1;border-color:#733940;background:#321a1d}.filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.input,.select,.textarea{background:#0f1218;border:1px solid var(--line);color:var(--text);border-radius:10px;padding:10px 11px;outline:none}.input:focus,.select:focus,.textarea:focus{border-color:#6550d0}.input{min-width:220px}.filters .input{flex:1}.review-progress{border:1px solid var(--line);background:var(--panel);padding:14px 16px;border-radius:14px;margin-bottom:14px}.progress-bar{height:7px;background:#202530;border-radius:999px;overflow:hidden;margin-top:9px}.progress-bar>div{height:100%;background:linear-gradient(90deg,var(--accent),#9b82ff)}.review-row{display:grid;grid-template-columns:42px 66px minmax(230px,1fr) 1fr auto;gap:12px;align-items:center;border:1px solid var(--line);background:var(--panel);border-radius:14px;padding:11px 12px}.review-row.approved{border-color:rgba(48,196,141,.32);background:rgba(48,196,141,.04)}.review-row.skipped{opacity:.58}.review-row.saved{box-shadow:inset 3px 0 #e2ba58}.check-btn{width:30px;height:30px;border-radius:9px;border:1px solid var(--line);background:var(--panel2);color:var(--muted)}.check-btn.checked{background:#13372d;border-color:#2c7e60;color:#91e9c8}.review-info strong{display:block}.review-info span{font-size:12px;color:var(--muted)}.review-summary{font-size:12px;color:#b9c1cf}.compact-actions{display:flex;gap:6px}.table{width:100%;border-collapse:separate;border-spacing:0 8px}.table th{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);text-align:left;padding:0 10px}.table td{background:var(--panel);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:12px 10px;font-size:13px}.table td:first-child{border-left:1px solid var(--line);border-radius:12px 0 0 12px}.table td:last-child{border-right:1px solid var(--line);border-radius:0 12px 12px 0}.status{padding:5px 8px;border-radius:999px;font-size:11px;border:1px solid var(--line);display:inline-block}.status.approved{color:#8be5c2;background:rgba(48,196,141,.06)}.status.preparing{color:#b8a8ff}.status.applied{color:#9fc4ff}.status.interview{color:#f4c16a}.status.rejected{color:#f08b92}.status.offer{color:#8be5c2}.empty{padding:34px;text-align:center;border:1px dashed #333a48;border-radius:14px;color:var(--muted)}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.settings-card{border:1px solid var(--line);background:var(--panel);padding:18px;border-radius:15px}.settings-card.full{grid-column:1/-1}.settings-card h3{margin:0 0 12px;font-size:15px}.field{display:grid;gap:6px;margin:10px 0}.field label{font-size:11px;color:var(--muted)}.field input,.field textarea,.field select{width:100%}.tag-editor{display:flex;gap:7px;flex-wrap:wrap}.edit-tag{display:flex;align-items:center;gap:5px;background:#10131a;border:1px solid var(--line);border-radius:999px;padding:5px 8px;font-size:12px}.edit-tag button{border:0;background:transparent;color:var(--muted);padding:0}.inline-form{display:flex;gap:7px;margin-top:9px}.inline-form .input{min-width:0;flex:1}.warning-box{border:1px solid rgba(242,184,75,.28);background:rgba(242,184,75,.06);padding:12px;border-radius:12px;color:#f1c979;font-size:12px;line-height:1.5}.confidence-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.confidence{border:1px solid var(--line);border-radius:12px;padding:12px}.confidence strong{display:block;margin-bottom:3px}.confidence p{font-size:12px;margin:0}.drawer-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.48);z-index:20}.drawer{position:fixed;right:0;top:0;width:min(560px,94vw);height:100vh;background:#0f1218;border-left:1px solid var(--line);z-index:21;padding:24px;overflow:auto;box-shadow:var(--shadow)}.drawer.hidden,.drawer-backdrop.hidden,.toast.hidden{display:none}.drawer-head{display:flex;justify-content:space-between;gap:14px}.drawer-close{border:0;background:transparent;color:var(--muted);font-size:22px}.score-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}.score-line{display:flex;justify-content:space-between;border:1px solid var(--line);background:var(--panel);padding:10px 11px;border-radius:10px;font-size:12px}.drawer-section{margin-top:22px}.drawer-section h3{font-size:13px;margin-bottom:8px}.drawer-section ul{padding-left:18px;color:#c2c9d5;line-height:1.6;font-size:13px}.drawer-actions{display:flex;gap:8px;position:sticky;bottom:-24px;background:linear-gradient(transparent,#0f1218 25%);padding:30px 0 4px}.toast{position:fixed;bottom:22px;right:22px;background:#1b202a;border:1px solid #343b49;padding:11px 14px;border-radius:11px;z-index:40;box-shadow:var(--shadow);font-size:13px}.source-link{color:#bcaeff;text-decoration:none}.source-link:hover{text-decoration:underline}.muted{color:var(--muted)}.small{font-size:12px}.subtabs{display:flex;gap:7px;margin-bottom:14px;overflow:auto;padding-bottom:2px}.subtab{white-space:nowrap;border:1px solid var(--line);background:var(--panel);color:var(--muted);padding:8px 11px;border-radius:10px}.subtab.active{background:rgba(124,92,255,.12);color:#d9d1ff;border-color:rgba(124,92,255,.3)}
@media(max-width:1050px){#app{grid-template-columns:80px 1fr}.sidebar{padding:18px 10px}.brand div:last-child,.nav-item span,.sidebar-footer{display:none}.brand{justify-content:center;padding:8px 0 22px}.nav-item{justify-content:center;font-size:18px}.kpis{grid-template-columns:repeat(2,1fr)}.review-row{grid-template-columns:40px 62px 1fr auto}.review-summary{grid-column:3/5}.settings-grid{grid-template-columns:1fr}}
@media(max-width:720px){#app{display:block}.sidebar{position:fixed;left:0;top:0;z-index:30;transform:translateX(-105%);transition:.2s;width:230px}.sidebar.open{transform:none}.brand div:last-child,.nav-item span,.sidebar-footer{display:flex}.brand{justify-content:flex-start}.nav-item{justify-content:flex-start;font-size:14px}.mobile-header{display:flex;position:sticky;top:0;z-index:15;height:56px;align-items:center;gap:12px;padding:0 14px;background:rgba(11,13,18,.88);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.mobile-header span{margin-left:auto;font-size:11px;color:var(--muted)}.icon-btn{border:0;background:transparent;color:var(--text);font-size:20px}.page-wrap{padding:22px 14px 50px}.page-head{display:block}.page-head-actions{margin-top:14px}.kpis{grid-template-columns:repeat(2,1fr);gap:9px}.kpi{padding:14px}.kpi strong{font-size:22px}.job-top{grid-template-columns:auto 1fr}.job-actions{grid-column:1/-1;justify-content:flex-end}.review-row{grid-template-columns:36px 58px 1fr}.review-summary{grid-column:3}.compact-actions{grid-column:1/-1;justify-content:flex-end}.table-wrap{overflow:auto}.settings-grid{display:block}.settings-card{margin-bottom:12px}.confidence-grid{grid-template-columns:1fr}.score-grid{grid-template-columns:1fr}.filters{display:grid;grid-template-columns:1fr 1fr}.filters .input{grid-column:1/-1;min-width:0}.drawer{padding:18px}.inline-form{flex-direction:column}}
.live-panel{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;border:1px solid rgba(48,196,141,.26);background:rgba(48,196,141,.055);padding:13px 14px;border-radius:14px;margin:-8px 0 18px}.live-panel.has-error{border-color:rgba(239,109,118,.3);background:rgba(239,109,118,.05)}.live-panel strong{display:block;font-size:12px;letter-spacing:.06em}.live-panel span{display:block;font-size:12px;color:var(--muted);margin-top:2px}.live-dot{width:10px;height:10px;border-radius:50%;background:#666;box-shadow:0 0 0 4px rgba(255,255,255,.03)}.live-dot.on{background:var(--good);box-shadow:0 0 0 4px rgba(48,196,141,.11)}.source-badge{color:#c5baff}.source-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.source-card{display:grid;grid-template-columns:auto 1fr;gap:3px 8px;border:1px solid var(--line);padding:11px;border-radius:11px}.source-card>span:last-child{grid-column:2;color:var(--muted);font-size:11px}.source-state{width:8px;height:8px;border-radius:50%;margin-top:5px;background:var(--muted)}.source-state.ok{background:var(--good)}.source-state.bad{background:var(--bad)}.toggle-line{display:flex;gap:9px;align-items:center;margin-top:14px;color:#c4cad6;font-size:12px}.drawer-description{line-height:1.7;color:#c4cad6;white-space:pre-wrap;max-height:440px;overflow:auto;padding-right:5px}.source-link-button{text-decoration:none;display:inline-block}.sync-note{font-size:11px;color:var(--muted)}
@media(max-width:900px){.source-grid{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.live-panel{grid-template-columns:auto 1fr}.live-panel .btn{grid-column:1/-1}.source-grid{grid-template-columns:1fr}}
.card-copy{margin:4px 0 12px;font-size:12px;line-height:1.55;color:var(--muted)}
.career-board-list{display:grid;gap:8px;margin:10px 0 12px}.career-board-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:10px;align-items:center;border:1px solid var(--line);background:#0f1218;border-radius:12px;padding:10px 11px}.career-board-main{min-width:0;display:flex;flex-direction:column}.career-board-main strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13px}.career-board-main span{font-size:11px;color:var(--muted);text-transform:capitalize}.board-add{display:flex;gap:8px;margin-top:10px}.board-add .input{flex:1}.supported-line{font-size:10px;color:var(--muted);margin-top:8px;line-height:1.5}.board-toggle{display:flex;align-items:center}.board-toggle input{width:16px;height:16px;accent-color:var(--accent)}.compact-empty{padding:18px}.coverage-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.coverage-card{border:1px solid var(--line);border-radius:12px;padding:13px;background:#10131a}.coverage-card strong{display:block;font-size:12px;margin-bottom:5px}.coverage-card span{font-size:11px;color:var(--muted);line-height:1.5}.coverage-card.auto{border-color:rgba(48,196,141,.2)}.coverage-card.manual{border-color:rgba(242,184,75,.2)}
@media(max-width:900px){.coverage-grid{grid-template-columns:1fr}.board-add{flex-direction:column}.career-board-row{grid-template-columns:auto 1fr auto}.career-board-row .source-link{display:none}}
/* v0.4 decision-focused extensions */
.affinity-grid,.asset-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.asset-card{display:flex;flex-direction:column;gap:12px;padding:16px;border:1px solid var(--border,#303744);border-radius:12px;min-width:0}.asset-card span,.asset-card label{font-size:13px}.asset-card input[type=file]{display:block;max-width:100%;margin-top:8px}.asset-card textarea{width:100%;margin-top:6px}.match-counts{font-size:12px;margin-top:9px;color:#abcbb8}.asset-recommendation,.main-gap{font-size:12px;margin-top:6px;color:#aab5c6}.main-gap{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;max-width:600px}.job-summary{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.job-actions .action-icon{width:auto;padding:8px 10px;font-size:12px}.legacy-breakdown,.legacy-breakdown+ .drawer-section,.legacy-breakdown+ .drawer-section+ .drawer-section{display:none}.requirements td{white-space:normal;min-width:95px;vertical-align:top}.requirements td:first-child{min-width:180px}.drawer{width:min(840px,100vw)}.settings-card details summary{cursor:pointer;font-weight:600;padding:8px 0}.settings-card textarea{resize:vertical}.settings-card{min-width:0}.section-title{gap:12px;flex-wrap:wrap}.inline-form span{flex:1}.drawer-description{white-space:pre-wrap}.job-card{cursor:pointer}.table-wrap{max-width:100%;overflow:auto}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #8ab4ff;outline-offset:3px}
@media(max-width:700px){.affinity-grid,.asset-grid{grid-template-columns:1fr}.job-top{flex-wrap:wrap}.job-actions{width:100%;justify-content:flex-end}.job-top>div:nth-child(2){min-width:0;flex:1}.match-counts{line-height:1.8}.main-gap{max-width:240px}.drawer{padding:20px}.inline-form{flex-wrap:wrap}.section-title .btn{width:100%}}
