:root{--bg:#f5f9fc;--surface:#fff;--surface-2:#e9f1f8;--text:#0b0e14;--muted:#5a6573;--border:#d8e4ee;--accent:#38bdf8;--accent-hover:#0ea5e9;--accent-soft:#38bdf824;--accent-contrast:#06141f;--link:#0369a1;--danger:#e5484d;--danger-soft:#e5484d1a;--shadow-sm:0 1px 2px #0b0e140f;--shadow-md:0 6px 20px #0b0e141a;--radius:12px;--sans:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;font-family:var(--sans);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%}:root[data-theme=dark]{--bg:#0a0c10;--surface:#121620;--surface-2:#1a1f2b;--text:#eef3f8;--muted:#98a2b3;--border:#262d3a;--accent:#38bdf8;--accent-hover:#56c8fb;--accent-soft:#38bdf82e;--accent-contrast:#06141f;--link:#7dd3fc;--danger:#f1666b;--danger-soft:#f1666b29;--shadow-md:0 8px 24px #00000080}*{box-sizing:border-box}body{background:var(--bg);min-height:100vh;margin:0}#root{min-height:100vh}h1,h2,h3{color:var(--text);letter-spacing:-.01em;margin:0}p{margin:0}a{color:var(--link)}.muted{color:var(--muted);font-size:14px;line-height:1.55}.hint{color:var(--muted);font-size:12.5px;line-height:1.5}.tagline{color:var(--muted);text-align:center;font-size:14.5px;line-height:1.5}.logo{align-items:center;gap:10px;display:inline-flex}.logo-bg{fill:var(--accent)}.logo-ring{fill:none;stroke:var(--accent-contrast);stroke-width:2.4px}.logo-dot{fill:var(--accent-contrast)}.logo-word{letter-spacing:-.02em;color:var(--text);font-size:18px;font-weight:800}.logo-lg .logo-word{font-size:24px}.auth-brand{justify-content:center;display:flex}.btn{font:inherit;cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:10px 16px;font-size:14px;font-weight:600;transition:background .15s,border-color .15s,opacity .15s,transform 50ms;display:inline-flex}.btn:active{transform:translateY(.5px)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--accent);color:var(--accent-contrast)}.btn-primary:not(:disabled):hover{background:var(--accent-hover)}.btn-secondary{background:var(--accent-soft);color:var(--link)}.btn-secondary:not(:disabled):hover{background:var(--accent);color:var(--accent-contrast)}.btn-ghost{color:var(--text);border-color:var(--border);background:0 0}.btn-ghost:not(:disabled):hover{background:var(--surface-2)}.btn-danger{background:var(--danger-soft);color:var(--danger)}.btn-danger:not(:disabled):hover{background:var(--danger);color:#fff}.btn.full{width:100%}.btn.icon-only{width:42px;padding:0}.ti{width:18px;height:18px;stroke:var(--text);fill:none;stroke-width:1.8px}.link-btn{color:var(--link);font:inherit;cursor:pointer;background:0 0;border:none;align-self:center;padding:6px;font-size:14px;font-weight:600}.link-btn:hover{text-decoration:underline}.label{color:var(--muted);font-size:13px;font-weight:600}.input,.textarea,.status-select{font:inherit;border:1px solid var(--border);background:var(--surface);width:100%;color:var(--text);border-radius:10px;padding:10px 12px;font-size:16px;transition:border-color .15s,box-shadow .15s}.textarea{resize:vertical;line-height:1.5}.input:focus,.textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.stack{flex-direction:column;gap:12px;display:flex}.grid-2{grid-template-columns:1fr 1fr;gap:12px;display:grid}.divider{background:var(--border);height:1px;margin:4px 0}.key-row{gap:8px;display:flex}.disclosure{width:100%;font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border);cursor:pointer;border-radius:10px;justify-content:space-between;align-items:center;padding:11px 14px;font-size:14px;font-weight:600;transition:background .15s;display:flex}.disclosure:hover{background:var(--surface-2)}.chevron{width:18px;height:18px;stroke:var(--muted);transition:transform .18s}.chevron-open{transform:rotate(180deg)}.details-panel{padding-top:2px;animation:.16s fade-in}@keyframes fade-in{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:none}}.alert{border-radius:10px;padding:10px 12px;font-size:13.5px;line-height:1.45}.alert-error{background:var(--danger-soft);color:var(--danger)}.alert-info{background:var(--accent-soft);color:var(--link)}.splash,.board-loading{min-height:100vh;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:14px;display:flex}.board-loading{min-height:40vh}.spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:28px;height:28px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.centered-screen{justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.card{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-md);border-radius:18px;padding:28px}.auth-card{flex-direction:column;gap:16px;width:100%;max-width:400px;display:flex}.tabs{background:var(--surface-2);border-radius:12px;gap:4px;padding:4px;display:flex}.tab{font:inherit;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:9px;flex:1;padding:9px;font-size:14px;font-weight:600;transition:background .15s,color .15s}.tab-active{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.navbar{background:color-mix(in srgb, var(--surface) 88%, transparent);-webkit-backdrop-filter:saturate(1.4)blur(8px);backdrop-filter:saturate(1.4)blur(8px);border-bottom:1px solid var(--border);z-index:10;padding-top:env(safe-area-inset-top);position:sticky;top:0}.nav-inner{justify-content:space-between;align-items:center;gap:10px;max-width:1160px;margin:0 auto;padding:12px 20px;display:flex}.nav-right{align-items:center;gap:8px;display:flex}.nav-email{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;max-width:180px;font-size:13px;overflow:hidden}.dot{border-radius:50%;width:8px;height:8px;display:inline-block}.dot-on{background:#22c55e}.dot-off{background:#cbd0d8}.board-wrap{max-width:1160px;padding:22px 20px 64px;padding-bottom:calc(64px + env(safe-area-inset-bottom));margin:0 auto}.hero{color:#fff;background:linear-gradient(135deg,#0a0e16 0%,#0e1622 55%,#0b2233 100%);border:1px solid #38bdf829;border-radius:18px;padding:24px 26px;box-shadow:0 14px 30px #080c1438}.hero-greeting{letter-spacing:.01em;color:#7dd3fc;font-size:13.5px;font-weight:600}.hero-message{color:#fff;max-width:30ch;margin-top:5px;font-size:22px;font-weight:750;line-height:1.28}.hero-stats{gap:10px;margin-top:18px;display:flex}.stat{text-align:center;background:#38bdf81f;border:1px solid #38bdf838;border-radius:14px;flex:1;padding:12px 14px}.stat-value{color:#fff;font-size:24px;font-weight:800;line-height:1.1;display:block}.stat-label{color:#bfe6fb;font-size:12px}.hero-momentum{color:#d7eefc;margin-top:16px;font-size:14px;font-weight:600}.board-actions{justify-content:space-between;align-items:center;gap:12px;margin:24px 0 10px;display:flex}.section-heading{font-size:17px;font-weight:700}.board-note{color:var(--muted);margin:4px 0 8px;font-size:12.5px}.board{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}.column{background:var(--surface-2);border-radius:var(--radius);min-height:120px;padding:8px}.column-head{border:none;border-top:3px solid var(--border);cursor:pointer;width:100%;font:inherit;color:inherit;text-align:left;background:0 0;border-radius:3px;justify-content:space-between;align-items:center;margin-bottom:6px;padding:8px 8px 10px;display:flex}.column-head:hover .column-title{color:var(--accent)}.column-head-left{align-items:center;gap:6px;min-width:0;display:flex}.col-chevron{width:16px;height:16px;stroke:var(--muted);fill:none;stroke-width:2px;flex:none;transition:transform .18s}.col-chevron-collapsed{transform:rotate(-90deg)}.column-title{font-size:13.5px;font-weight:700}.column-count{color:var(--muted);background:var(--surface);border-radius:20px;padding:1px 8px;font-size:12px;font-weight:700}.column-body{flex-direction:column;gap:8px;display:flex}.column-empty{text-align:center;color:var(--muted);padding:14px 6px;font-size:12.5px;line-height:1.4}.empty-board{background:var(--surface);border:1px dashed var(--border);border-radius:var(--radius);text-align:center;flex-direction:column;align-items:center;gap:12px;padding:52px 24px;display:flex}.empty-icon{width:46px;height:46px;stroke:var(--accent);fill:none;stroke-width:1.6px;opacity:.95}.empty-board h3{font-size:18px}.empty-board .muted{max-width:380px}.empty-board .btn{margin-top:6px}.job-card{background:var(--surface);border:1px solid var(--border);cursor:pointer;box-shadow:var(--shadow-sm);border-radius:12px;flex-direction:column;gap:6px;padding:12px;transition:transform .1s,box-shadow .1s,border-color .1s;display:flex}.job-card:hover{box-shadow:var(--shadow-md);border-color:color-mix(in srgb, var(--accent) 45%, var(--border));transform:translateY(-1px)}.job-card-top{align-items:flex-start;gap:8px;display:flex}.job-company{overflow-wrap:anywhere;font-size:13.5px;font-weight:700}.job-salary{color:var(--muted);font-size:12px}.job-title{color:var(--text);font-size:13px}.job-meta{color:var(--muted);font-size:12px}.job-card-footer{justify-content:space-between;align-items:center;gap:8px;margin-top:4px;display:flex}.job-added{color:var(--muted);font-size:11.5px}.status-select{cursor:pointer;background:var(--surface);width:auto;min-height:0;padding:7px 9px;font-size:13px;font-weight:600}.spinner-sm{border-width:2px;width:16px;height:16px}.job-card-busy{cursor:default;border-style:dashed}.pending-row{align-items:center;gap:8px;display:flex}.truncate{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.job-card-failed{cursor:default;border-color:color-mix(in srgb, var(--danger) 45%, var(--border))}.pending-actions{gap:8px;margin-top:6px;display:flex}.mini-btn{font:inherit;border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;border-radius:7px;padding:4px 10px;font-size:12px;font-weight:600}.mini-btn:hover{background:var(--surface-2)}.mini-ghost{color:var(--muted)}.job-card[draggable=true]{cursor:grab}.job-card[draggable=true]:active{cursor:grabbing}.job-card-dragging{opacity:.4}.column-over{outline:2px dashed var(--accent);outline-offset:-3px;background:var(--accent-soft)}.board-actions-right{gap:8px;display:flex}.card-left{align-items:center;gap:8px;min-width:0;display:flex}.job-card-selectable{cursor:pointer}.job-card-selected{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.status-badge{border:1px solid var(--border);border-radius:10px;padding:7px 9px;font-size:13px;font-weight:600;display:inline-block}.select-check{border:1.5px solid var(--border);background:var(--surface);border-radius:6px;flex:none;justify-content:center;align-items:center;width:18px;height:18px;display:inline-flex}.select-check-on{background:var(--accent);border-color:var(--accent)}.check-svg{width:12px;height:12px;stroke:var(--accent-contrast);fill:none;stroke-width:3px}.bulk-bar{left:50%;bottom:calc(16px + env(safe-area-inset-bottom));z-index:40;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-md);border-radius:14px;flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;max-width:calc(100% - 24px);padding:10px 14px;display:flex;position:fixed;transform:translate(-50%)}.bulk-count{font-size:13.5px;font-weight:700}.bulk-move{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.bulk-label{color:var(--muted);font-size:12.5px}.bulk-bar-right{align-items:center;gap:8px;display:flex}.has-bulk-bar{padding-bottom:120px}code{background:var(--surface-2);border-radius:5px;padding:1px 5px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.88em}.modal-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:50;background:#080b128c;justify-content:center;align-items:flex-start;padding:40px 16px;display:flex;position:fixed;inset:0;overflow-y:auto}.modal{background:var(--surface);box-shadow:var(--shadow-md);border:1px solid var(--border);border-radius:18px;width:100%;max-width:560px}.modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.modal-header h2{font-size:17px;font-weight:700}.modal-body{padding:20px}.icon-btn{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:26px;line-height:1}.icon-btn:hover{color:var(--text)}.modal-actions{flex-wrap:wrap;justify-content:space-between;gap:10px;margin-top:6px;display:flex}.detail-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.detail-company{font-size:16px;font-weight:700}.section-title{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:6px;font-size:12.5px;font-weight:700}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{background:var(--surface-2);color:var(--text);border-radius:20px;padding:4px 10px;font-size:12px;text-decoration:none}.chip-link{color:var(--link);font-weight:600}.req-list{color:var(--text);margin:0;padding-left:18px;font-size:14px;line-height:1.6}.tips-box{background:var(--surface-2);border-radius:14px;flex-direction:column;gap:10px;padding:14px;display:flex}.tips-text{white-space:pre-wrap;color:var(--text);font-size:14px;line-height:1.6}.confirm-row{color:var(--muted);flex-wrap:wrap;align-items:center;gap:10px;font-size:14px;display:flex}@media (width<=768px){.board{flex-direction:column;grid-template-columns:none;gap:14px;max-width:600px;margin-inline:auto;display:flex;overflow:visible}.column{background:0 0;border-radius:0;min-height:0;padding:0}.column-head{border-radius:0;margin-bottom:8px;padding:10px 2px 8px}.column-empty{display:none}}@media (width<=600px){.nav-email{display:none}.nav-inner{padding:10px 16px}.board-wrap{padding:16px 16px 56px}.hero{padding:20px}.hero-message{font-size:19px}.board-actions{flex-direction:column;align-items:stretch}.board-actions-right{flex-direction:column}.board-actions .btn{width:100%}.modal-overlay{align-items:flex-end;padding:12px}.modal{max-width:100%}.grid-2{grid-template-columns:1fr}.bulk-bar{max-width:none;left:12px;right:12px;transform:none}.bulk-move{justify-content:center;width:100%}.has-bulk-bar{padding-bottom:200px}}
