@import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap");:root,[data-theme=hh]{--color-bg:#ffffff;--color-surface:#ffffff;--color-surface-2:#e9ecf4;--color-surface-3:#dae0f0;--color-border:#ccd3e6;--color-border-subtle:#e6ebf5;--color-text:#222222;--color-text-muted:#5a6380;--color-text-subtle:#6c7693;--color-primary:#4a6af0;--color-primary-hover:#3a56e0;--color-primary-dim:rgba(74,106,240,0.1);--color-primary-glow:rgba(74,106,240,0.2);--color-success:#00cc7a;--color-success-dim:rgba(0,204,122,0.08);--color-warning:#ff9e00;--color-warning-dim:rgba(255,158,0,0.08);--color-danger:#ff0000;--color-info:#0070f0;--color-info-dim:rgba(0,112,240,0.08);--color-score-high:#00cc7a;--color-score-mid:#ff9e00;--color-score-low:#ff0000;--color-score-ko:#9099b5;--shadow-sm:0 1px 3px rgba(0,0,0,0.05);--shadow-md:0 4px 16px rgba(0,0,0,0.08);--shadow-lg:0 8px 32px rgba(0,0,0,0.1);--shadow-glow:0 0 24px var(--color-primary-glow);--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:24px;--radius-full:9999px;--transition:0.18s ease;--nav-height:60px;--sidebar-w:0px}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-text-size-adjust:100%;scroll-behavior:smooth}body,html{min-width:400px}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background-color:var(--color-bg);color:var(--color-text);line-height:1.6;min-height:100dvh;transition:background-color var(--transition),color var(--transition)}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition)}a:hover{color:var(--color-primary-hover)}img,svg{display:block;max-width:100%}button{font-family:inherit;cursor:pointer;border:none;background:none}input,select,textarea{font-family:inherit;font-size:1rem}.page-shell{display:flex;flex-direction:column;min-height:100dvh;min-width:400px}.page-content{flex:1 1;padding:24px 16px 60px;max-width:960px;width:100%;margin:0 auto}@media (min-width:768px){.page-content{padding:24px 24px 64px}}.navbar{height:var(--nav-height);background:var(--color-surface-2);border-bottom:1px solid var(--color-border);display:flex;align-items:center;padding:0 16px;position:sticky;top:0;z-index:100;box-shadow:var(--shadow-sm);gap:12px}.navbar-logo{font-size:1.125rem;font-weight:800;color:var(--color-primary);letter-spacing:-.5px;white-space:nowrap;flex-shrink:0}.navbar-title{flex:1 1;text-align:center;font-size:.9375rem;font-weight:600;color:var(--color-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media (max-width:640px){.navbar-title{display:none}}.navbar-actions{display:flex;align-items:center;gap:8px;flex-shrink:0;margin-left:auto}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:9px 18px;border-radius:var(--radius-md);font-size:.875rem;font-weight:600;cursor:pointer;transition:all var(--transition);border:1px solid transparent;white-space:nowrap;line-height:1}.btn:active{transform:scale(.98)}.btn-primary{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.btn-primary:hover{background:var(--color-primary-hover);border-color:var(--color-primary-hover);box-shadow:var(--shadow-glow);transform:translateY(-1px)}.btn-secondary{background:var(--color-surface);color:var(--color-text);border-color:var(--color-border)}.btn-secondary:hover{background:var(--color-surface-3);border-color:var(--color-primary);color:var(--color-primary)}.btn-ghost{background:transparent}.btn-ghost:hover{background:var(--color-surface-2);color:var(--color-text)}.btn-danger{background:var(--color-danger-dim);color:var(--color-danger)}.btn-danger:hover{background:var(--color-danger);color:#fff}.btn-sm{padding:6px 12px;font-size:.8125rem}.btn-lg{padding:12px 28px;font-size:1rem}.btn-icon{padding:8px;border-radius:var(--radius-md)}.btn-full{width:100%}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none!important;box-shadow:none!important}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:20px;transition:border-color var(--transition),box-shadow var(--transition)}.card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md)}.card-flat{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:20px}.form-label{font-size:.8125rem;font-weight:600;letter-spacing:.04em}.form-input,.form-select,.form-textarea{width:100%;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);padding:9px 14px;font-size:.9375rem;transition:border-color var(--transition),box-shadow var(--transition);outline:none}.form-input::placeholder,.form-textarea::placeholder{color:var(--color-text-subtle)}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-dim)}.form-textarea{line-height:1.5}.form-select{appearance:none;cursor:pointer}.form-error{font-size:.8125rem;color:var(--color-danger);display:flex;align-items:center;gap:4px}.checkbox-group{gap:10px;color:var(--color-text)}.checkbox-group input[type=checkbox]{width:18px;height:18px}.toggle-wrapper{font-size:.9375rem;color:var(--color-text)}.toggle{width:44px;height:24px;flex-shrink:0}.toggle input{display:none}.toggle-track{position:absolute;inset:0;cursor:pointer;transition:background var(--transition)}.toggle-thumb{width:16px;height:16px;background:var(--color-text-subtle);transition:transform var(--transition),background var(--transition)}.toggle input:checked~.toggle-thumb{transform:translateX(20px);background:#fff}.badge{padding:3px 10px;letter-spacing:.02em}.badge-muted{background:var(--color-surface-3)}.score-badge{min-width:52px;font-size:.8125rem;font-weight:700}.score-badge.high{background:var(--color-success-dim);color:var(--color-score-high)}.score-badge.mid{background:var(--color-warning-dim);color:var(--color-score-mid)}.score-badge.low{background:var(--color-danger-dim);color:var(--color-score-low)}.score-badge.ko{background:var(--color-surface-3);color:var(--color-score-ko)}.tabs{gap:4px;padding:3px 4px;width:fit-content;border:1px solid var(--color-border)}.tab.active,.tab[aria-selected=true]{background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-sm)}.notif-btn{position:relative;display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:var(--radius-md);color:var(--color-text-muted);cursor:pointer;transition:all var(--transition);background:transparent;border:none}.notif-btn:hover{background:var(--color-surface-2);color:var(--color-text)}.notif-badge{position:absolute;top:4px;right:4px;min-width:16px;height:16px;background:var(--color-danger);color:#fff;border-radius:var(--radius-full);font-size:.625rem;font-weight:700;display:flex;align-items:center;justify-content:center;padding:0 4px;animation:pulse 2s infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}.user-menu-wrapper{position:relative}.user-menu-btn{display:flex;align-items:center;gap:8px;padding:6px 12px;border-radius:var(--radius-md);background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text);font-size:.875rem;font-weight:500;cursor:pointer;transition:all var(--transition);white-space:nowrap}.user-name-text{display:inline-block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:120px}@media (max-width:500px){.user-name-text{max-width:65px}.user-menu-btn{padding:6px 8px;gap:4px!important}}@media (max-width:380px){.user-name-text{max-width:50px}}.user-menu-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.user-menu-dropdown{position:absolute;top:calc(100% + 6px);right:0;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);min-width:200px;overflow:hidden;z-index:200;animation:dropIn .15s ease}@keyframes dropIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.user-menu-item{display:flex;align-items:center;gap:10px;padding:11px 16px;font-size:.875rem;color:var(--color-text);cursor:pointer;transition:background var(--transition);border:none;background:none;width:100%;text-align:left}.user-menu-item:hover{background:var(--color-surface-2)}.user-menu-item.danger{color:var(--color-danger)}.user-menu-divider{height:1px;background:var(--color-border);margin:4px 0}.navbar,[data-theme=hh] .navbar{background:#171717;border-bottom:1px solid #2d2d2d}.navbar-logo,[data-theme=hh] .navbar-logo{color:#ff0000}.navbar-title,[data-theme=hh] .navbar-title{color:#8c8c8c}.user-menu-btn,[data-theme=hh] .user-menu-btn{background:#2d2d2d;border-color:#3d3d3d;color:#e8ecf4}.user-menu-btn:hover,[data-theme=hh] .user-menu-btn:hover{background:#3d3d3d;border-color:#3d3d3d;color:#ffffff}.notif-btn,[data-theme=hh] .notif-btn{color:#8c8c8c}.notif-btn:hover,[data-theme=hh] .notif-btn:hover{background:#2d2d2d;color:#ffffff}.control-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:20px}.search-wrapper{position:relative;flex:1 1;min-width:160px}.search-wrapper input{padding-left:36px;padding-right:32px}.search-icon{left:10px;pointer-events:none}.search-clear,.search-icon{position:absolute;top:50%;transform:translateY(-50%);color:var(--color-text-subtle)}.search-clear{right:8px;cursor:pointer;background:none;border:none;display:flex;align-items:center;padding:2px;border-radius:4px;transition:color var(--transition)}.search-clear:hover{color:var(--color-text)}.empty-state h3{font-weight:600}.modal-overlay{padding:16px}.modal{padding:28px;max-width:480px}.modal-title{font-weight:700;margin-bottom:8px}.modal-actions,.trial-banner{flex-wrap:wrap}.trial-banner{position:fixed;bottom:0;left:0;right:0;z-index:200;background-color:var(--color-surface);background-image:linear-gradient(90deg,var(--color-primary-dim),transparent);border-top:1px solid var(--color-primary);padding:10px 20px;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:.875rem;color:var(--color-text);box-shadow:0 -4px 16px rgba(0,0,0,.15)}.paywall-overlay{background:rgba(0,0,0,.8);padding:16px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.dropzone{border:2px dashed var(--color-border);border-radius:var(--radius-lg);padding:40px 24px;text-align:center;cursor:pointer;transition:all var(--transition);background:var(--color-surface-2);color:var(--color-text-muted);display:flex;flex-direction:column;align-items:center;gap:10px}.dropzone.drag-over,.dropzone:hover{border-color:var(--color-primary);background:var(--color-primary-dim);color:var(--color-primary)}.dropzone input[type=file]{display:none}.dropzone-icon{color:var(--color-primary)}.divider{height:1px;background:var(--color-border)}.section-title{font-size:.8125rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted);margin-bottom:12px}.callout{padding:12px 16px;border-radius:var(--radius-md);font-size:.875rem;display:flex;align-items:flex-start;gap:10px;line-height:1.5}.callout-warning{background:var(--color-warning-dim);border-left:4px solid var(--color-warning);color:var(--color-text)}.callout-info{background:var(--color-info-dim);border-left:4px solid var(--color-info);color:var(--color-text)}.spinner{width:20px;height:20px;border:2px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin .6s linear infinite;display:inline-block}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.gap-6{gap:24px}.mt-2{margin-top:8px}.mt-4{margin-top:16px}.mt-6{margin-top:24px}.mb-3{margin-bottom:12px}.mb-4{margin-bottom:16px}.mb-5{margin-bottom:20px}.mb-6{margin-bottom:24px}.text-muted{color:var(--color-text-muted)}.text-sm{font-size:.875rem}.text-xs{font-size:.75rem}.font-semibold{font-weight:600}.font-bold{font-weight:700}.truncate{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.w-full{width:100%}.tabs{display:flex;gap:2px;background:var(--color-surface-2);border-radius:var(--radius-md);padding:4px}.tab{padding:7px 16px;border-radius:var(--radius-sm);font-size:.875rem;font-weight:600;color:var(--color-text-muted);cursor:pointer;transition:all var(--transition);border:none;background:none;white-space:nowrap}.tab.active{background:var(--color-surface);box-shadow:var(--shadow-sm)}.tab.active,.tab:hover:not(.active){color:var(--color-text)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:64px 24px;gap:12px;color:var(--color-text-muted)}.empty-state h3{font-size:1.125rem;font-weight:700;color:var(--color-text)}.empty-state p{font-size:.9375rem;max-width:360px}.empty-state-icon{color:var(--color-text-subtle);margin-bottom:8px}.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.6);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:300;padding:20px;animation:fadeIn .15s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:28px 24px;width:100%;max-width:460px;box-shadow:var(--shadow-lg);animation:slideUp .2s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.modal-title{font-size:1.125rem;font-weight:800;margin-bottom:10px}.modal-body{font-size:.9375rem;color:var(--color-text-muted);margin-bottom:24px;line-height:1.6}.modal-actions{display:flex;justify-content:flex-end;gap:10px}.toggle{position:relative;display:inline-flex;align-items:center;cursor:pointer;gap:0}.toggle input{position:absolute;opacity:0;width:0;height:0}.toggle-track{width:42px;height:24px;background:var(--color-surface-3);border-radius:var(--radius-full);border:1px solid var(--color-border);transition:all var(--transition);position:relative}.toggle input:checked~.toggle-track{background:var(--color-primary);border-color:var(--color-primary)}.toggle-thumb{position:absolute;top:3px;left:3px;width:18px;height:18px;background:white;border-radius:50%;transition:transform var(--transition);box-shadow:0 1px 3px rgba(0,0,0,.3);pointer-events:none}.toggle input:checked~.toggle-thumb{transform:translateX(18px)}.toggle input:checked+.toggle-track{background:var(--color-primary);border-color:var(--color-primary)}.toggle-wrapper{display:flex;align-items:center;gap:10px}.checkbox-group{display:flex;align-items:center;gap:8px;font-size:.9375rem;cursor:pointer}.checkbox-group input[type=checkbox]{width:16px;height:16px;accent-color:var(--color-primary);cursor:pointer;flex-shrink:0}.badge{display:inline-flex;align-items:center;gap:4px;padding:2px 9px;border-radius:var(--radius-full);font-size:.75rem;font-weight:700;white-space:nowrap}.badge-primary{background:var(--color-primary-dim);color:var(--color-primary);border:1px solid var(--color-primary)}.badge-success{background:var(--color-success-dim);color:var(--color-success)}.badge-warning{background:var(--color-warning-dim);color:var(--color-warning)}.badge-muted{background:var(--color-surface-2);color:var(--color-text-muted);border:1px solid var(--color-border)}.badge-danger{background:var(--color-danger-dim);color:var(--color-danger)}.btn-danger{background:var(--color-danger);color:white;border-color:var(--color-danger)}.btn-danger:hover:not(:disabled){filter:brightness(1.1)}.form-textarea{width:100%;min-height:150px;resize:vertical;font-family:inherit;font-size:.9375rem;background:var(--color-surface);border:1.5px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);padding:10px 14px;transition:border-color var(--transition),box-shadow var(--transition);line-height:1.6}.form-textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-dim)}.form-textarea::placeholder{color:var(--color-text-subtle)}.paywall-overlay{position:fixed;inset:0;background:rgba(0,0,0,.75);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:400;padding:24px}:root,[data-theme=hh]{--color-warning:#d97706;--color-warning-dim:rgba(217,119,6,0.1);--color-info:#2563eb;--color-info-dim:rgba(37,99,235,0.1);--color-success:#16a34a;--color-success-dim:rgba(22,163,74,0.1);--color-danger:#e1011c;--color-danger-dim:rgba(225,1,28,0.08);--color-border-subtle:rgba(0,0,0,0.05);--color-text-subtle:rgba(0,0,0,0.3)}.vacancy-card{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:16px 20px;transition:border-color var(--transition),box-shadow var(--transition)}.vacancy-card:hover{border-color:var(--color-border-hover,rgba(255,255,255,.15));box-shadow:var(--shadow-sm)}.vacancy-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.vacancy-company{font-size:.8125rem;color:var(--color-text-muted);margin-bottom:2px}.vacancy-role{font-size:1.0625rem;font-weight:700;color:var(--color-text)}.vacancy-meta{gap:16px;font-size:.8125rem;color:var(--color-text-muted);margin-bottom:12px}.vacancy-actions,.vacancy-meta{display:flex;align-items:center;flex-wrap:wrap}.vacancy-actions{gap:8px}.vacancy-action-btn{display:inline-flex;align-items:center;gap:5px;padding:6px 12px;border-radius:var(--radius-md);font-size:.8125rem;font-weight:500;color:var(--color-text-muted);background:none;border:1px solid var(--color-border);cursor:pointer;transition:all var(--transition);white-space:nowrap}.vacancy-action-btn:hover:not(.disabled):not(:disabled){background:var(--color-surface-2);color:var(--color-text);border-color:var(--color-border-hover,rgba(255,255,255,.2))}.vacancy-action-btn.disabled{opacity:.45;cursor:not-allowed}.edit-vacancy-btn{background:transparent;border:none;padding:5px 7px;cursor:pointer;color:var(--color-text-muted);margin-left:auto;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:all var(--transition)}.edit-vacancy-btn:hover{background:var(--color-primary-dim);color:var(--color-primary);transform:scale(1.15)}.vacancy-form{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:24px;display:flex;flex-direction:column;gap:18px}.form-row-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media (max-width:700px){.form-row-2{grid-template-columns:1fr}}.form-group{display:flex;flex-direction:column;gap:6px}.form-label{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted)}.ko-question-item{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:16px;display:flex;flex-direction:column;gap:10px}.ko-options-list{display:flex;flex-direction:column;gap:8px;padding-left:4px}.ko-option-row{display:flex;align-items:center;gap:8px}.ko-option-input{flex:1 1;min-width:0}.spin{animation:spin .6s linear infinite}.btn-ghost{background:none;border-color:transparent;color:var(--color-text-muted)}.btn-ghost:hover:not(:disabled){background:var(--color-surface-2);color:var(--color-text);border-color:var(--color-border)}.job-page-shell{min-height:100vh;background:var(--color-surface-2);display:flex;flex-direction:column;align-items:center}.job-header{width:100%;max-width:680px;padding:32px 20px 0;margin-bottom:0}.job-brand{font-size:.9375rem;font-weight:800;color:var(--color-primary);letter-spacing:.04em;margin-bottom:20px}.job-company{font-size:.9375rem;color:var(--color-text-muted);margin-bottom:4px}.job-role{font-size:1.75rem;font-weight:800;color:var(--color-text);line-height:1.2}.job-content{width:100%;max-width:680px;padding:20px 20px 40px;flex:1 1;gap:0}.job-card,.job-content{display:flex;flex-direction:column}.job-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:24px;gap:18px}.job-card.mb-6{margin-bottom:16px}.job-section-title{font-size:1rem;font-weight:800;color:var(--color-text);padding-bottom:12px;border-bottom:1px solid var(--color-border)}.job-responsibilities{font-size:.9375rem;color:var(--color-text-muted);line-height:1.7;white-space:pre-wrap}.job-form-group{display:flex;flex-direction:column;gap:7px}.job-label{display:flex;align-items:center;gap:6px;font-size:.875rem;font-weight:600;color:var(--color-text)}.job-label-hint{font-weight:400;color:var(--color-text-subtle);font-size:.8125rem}.job-input{width:100%;background:var(--color-surface);border:1.5px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);padding:11px 14px;font-size:.9375rem;font-family:inherit;transition:border-color var(--transition),box-shadow var(--transition)}.job-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-dim)}.job-input::placeholder{color:var(--color-text-subtle)}.job-dropzone{border:2px dashed var(--color-border);border-radius:var(--radius-lg);padding:36px 24px;display:flex;flex-direction:column;align-items:center;gap:8px;cursor:pointer;transition:all var(--transition);text-align:center;background:var(--color-surface-2)}.job-dropzone.drag-over,.job-dropzone:hover{border-color:var(--color-primary);background:var(--color-primary-dim)}.job-dropzone-icon{color:var(--color-primary)}.job-dropzone-text{font-size:.9375rem;color:var(--color-text)}.job-dropzone-link{color:var(--color-primary);font-weight:600;text-decoration:underline}.job-dropzone-hint{font-size:.8125rem;color:var(--color-text-muted)}.job-file-preview{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.job-file-extracting{display:flex;align-items:center;gap:10px;color:var(--color-text-muted);font-size:.9375rem}.job-file-info{display:flex;align-items:center;gap:12px;min-width:0}.job-file-name{font-size:.9375rem;font-weight:600;color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.job-file-meta{font-size:.8125rem;color:var(--color-success);margin-top:2px}.job-file-remove{background:none;border:none;cursor:pointer;color:var(--color-text-muted);padding:4px;border-radius:var(--radius-sm);flex-shrink:0;transition:color var(--transition),background var(--transition)}.job-file-remove:hover{color:var(--color-danger);background:var(--color-danger-dim)}.job-field-error{gap:6px;font-size:.8125rem;margin-top:4px}.job-error-banner,.job-field-error{display:flex;align-items:center;color:var(--color-danger)}.job-error-banner{gap:10px;padding:12px 16px;background:var(--color-danger-dim);border:1px solid var(--color-danger);border-radius:var(--radius-md);font-size:.9375rem}.job-form-section{padding-top:4px}.job-subsection-title{font-size:1rem;font-weight:700;color:var(--color-text);margin-bottom:4px}.job-subsection-hint{font-size:.875rem;color:var(--color-text-muted)}.job-ko-question{padding:16px;background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.job-ko-question-text{font-size:.9375rem;font-weight:600;color:var(--color-text);margin-bottom:12px;line-height:1.5}.job-ko-options{display:flex;flex-direction:column;gap:8px}.job-ko-option{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--color-surface);border:1.5px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;font-size:.9375rem;color:var(--color-text);transition:all var(--transition)}.job-ko-option.selected,.job-ko-option:hover{border-color:var(--color-primary);background:var(--color-primary-dim)}.job-ko-option.selected{color:var(--color-primary);font-weight:600}.job-ko-option input[type=radio]{accent-color:var(--color-primary);width:16px;height:16px;flex-shrink:0}.job-submit-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:15px 24px;background:var(--color-primary);color:white;border:none;border-radius:var(--radius-lg);font-size:1rem;font-weight:700;cursor:pointer;transition:all var(--transition);margin-top:4px;font-family:inherit}.job-submit-btn:hover:not(:disabled){filter:brightness(1.1);transform:translateY(-1px);box-shadow:0 4px 16px var(--color-primary-dim)}.job-submit-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.job-loading{flex-direction:column;min-height:50vh;color:var(--color-text-muted);font-size:.9375rem}.job-loading,.job-status-page{display:flex;align-items:center;justify-content:center;gap:16px}.job-status-page{flex:1 1;flex-direction:column;text-align:center;padding:60px 24px}.job-status-icon{font-size:3rem;line-height:1}.job-status-title{font-size:1.75rem;font-weight:800;color:var(--color-text)}.job-status-title.highlight{color:var(--color-success)}.job-status-body{font-size:1rem;color:var(--color-text-muted);max-width:400px;line-height:1.6}.job-footer{width:100%;text-align:center;padding:20px;font-size:.8125rem;color:var(--color-text-subtle);border-top:1px solid var(--color-border)}@media (max-width:520px){.job-role{font-size:1.375rem}.job-card{padding:18px 16px}.job-header{padding:24px 16px 0}.job-content{padding:16px 16px 32px}}.candidates-page{display:flex;flex-direction:column;margin:-24px -16px;min-height:calc(100vh - var(--nav-height));background:var(--color-bg)}@media (min-width:768px){.candidates-page{margin:-32px -24px}}.candidates-header{background:transparent;border-bottom:none;padding:0;display:flex;flex-direction:column;gap:14px;max-width:960px;margin:0 auto;width:100%}.candidates-header-top{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.back-btn{display:flex;align-items:center;gap:6px;font-size:.875rem;color:var(--color-text-muted);text-decoration:none;padding:6px 10px;border-radius:var(--radius-md);transition:all var(--transition);white-space:nowrap}.back-btn:hover{background:var(--color-surface-2);color:var(--color-text)}.candidates-title-block{flex:1 1;min-width:0}.candidates-company{font-size:.8125rem;color:var(--color-text-muted);display:block}.candidates-role{font-size:1.375rem;font-weight:800;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.candidates-controls{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.cand-tabs{background:var(--color-surface-2);border:1.5px solid var(--color-border);border-radius:var(--radius-md);padding:3px;gap:2px;height:38px;box-sizing:border-box}.cand-tab,.cand-tabs{display:flex;align-items:center}.cand-tab{justify-content:center;gap:6px;padding:0 14px;height:100%;border-radius:var(--radius-sm);border:none;background:none;font-size:.875rem;font-weight:500;color:var(--color-text-muted);cursor:pointer;transition:all var(--transition);font-family:inherit}.cand-tab.active{background:var(--color-surface);color:var(--color-text);font-weight:700;box-shadow:var(--shadow-sm)}.cand-tab-badge{background:var(--color-primary);color:#fff;font-size:.6875rem;font-weight:700;border-radius:var(--radius-full);padding:1px 6px;line-height:1.4}.cand-search{position:relative;flex:1 1;min-width:160px;height:38px}.cand-search-icon{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--color-text-muted);pointer-events:none}.cand-search-input{width:100%;height:100%;background:var(--color-surface);border:1.5px solid var(--color-border);border-radius:var(--radius-md);padding:0 12px 0 32px;font-size:.875rem;color:var(--color-text);font-family:inherit;transition:border-color var(--transition);box-sizing:border-box}.cand-search-input:focus{outline:none;border-color:var(--color-primary)}.cand-search-input::placeholder{color:var(--color-text-subtle)}.cand-sort{display:flex;align-items:center;gap:6px;background:var(--color-surface);border:1.5px solid var(--color-border);border-radius:var(--radius-md);padding:0 14px;height:38px;box-sizing:border-box;color:var(--color-text);font-size:.875rem;font-weight:500;font-family:inherit;transition:all var(--transition);cursor:pointer;-webkit-user-select:none;user-select:none}.cand-sort:hover{background:var(--color-surface-3);border-color:var(--color-primary);color:var(--color-primary)}.threshold-row{display:flex;align-items:center;gap:10px;color:var(--color-text-muted);flex-wrap:wrap}.threshold-label{font-size:.8125rem;white-space:nowrap}.threshold-label strong{color:var(--color-primary)}.threshold-slider{flex:1 1;min-width:120px;max-width:280px;accent-color:var(--color-primary);cursor:pointer;height:4px}.candidates-content{flex:1 1;padding:15px 0;max-width:900px;width:100%;margin:0 auto}.candidates-loading{display:flex;align-items:center;justify-content:center;gap:12px;font-size:.9375rem}.candidates-empty,.candidates-loading{padding:80px 20px;color:var(--color-text-muted)}.candidates-empty{text-align:center}.candidates-empty-icon{font-size:3rem;margin-bottom:16px}.candidates-empty h3{font-size:1.125rem;color:var(--color-text);margin-bottom:8px}.candidates-empty p{font-size:.9375rem;line-height:1.6}.candidates-list{display:flex;flex-direction:column;gap:10px}.candidate-card{background:var(--color-surface);border:1.5px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;transition:border-color var(--transition),box-shadow var(--transition);scroll-margin-top:calc(var(--nav-height) + 16px)}.candidate-card:hover{border-color:var(--color-primary)}.candidate-card.unseen{border-left:4px solid var(--color-primary)}.candidate-card.expanded{box-shadow:var(--shadow-md);border-color:var(--color-primary)}.candidate-card-header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;cursor:pointer;gap:12px;-webkit-user-select:none;user-select:none}.candidate-card-left{display:flex;align-items:center;gap:12px;min-width:0;flex:1 1}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.4}}.candidate-avatar{width:38px;height:38px;border-radius:50%;background:var(--color-primary-dim);color:var(--color-primary);font-weight:800;font-size:1rem;display:flex;align-items:center;justify-content:center;flex-shrink:0}.candidate-info{min-width:0}.candidate-name{font-size:.9375rem;font-weight:700;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.candidate-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:3px}.candidate-meta span{display:flex;align-items:center;gap:4px;font-size:.8rem;color:var(--color-text-muted);white-space:nowrap}.candidate-card-right{display:flex;align-items:center;gap:10px;flex-shrink:0}.expand-chevron{color:var(--color-text-muted);transition:transform var(--transition)}.expand-chevron.open{transform:rotate(90deg)}.score-badge{display:inline-flex;align-items:center;justify-content:center;min-width:44px;padding:4px 10px;border-radius:var(--radius-full);font-size:.875rem;font-weight:800}.score-high{background:var(--color-success-dim);color:var(--color-success)}.score-mid{background:var(--color-warning-dim);color:var(--color-warning)}.score-low{background:var(--color-danger-dim);color:var(--color-danger)}.score-pending{background:var(--color-surface-2);color:var(--color-text-subtle)}.candidate-detail{border-top:1px solid var(--color-border);padding:18px;display:flex;flex-direction:column;gap:18px;animation:slide-down .18s ease}@keyframes slide-down{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.candidate-summary{background:var(--color-surface-2);border-radius:var(--radius-md);padding:12px 16px;font-size:.9rem;color:var(--color-text-muted);line-height:1.65;font-style:italic}.candidate-breakdown{display:flex;flex-direction:column;gap:10px}.detail-section-title{font-size:.8125rem;font-weight:700;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px;display:flex;align-items:center;gap:6px}.detail-section-title.pros{color:var(--color-success)}.detail-section-title.cons{color:var(--color-danger)}.score-bar-row{display:flex;align-items:center;gap:10px}.score-bar-label{font-size:.8125rem;color:var(--color-text-muted);min-width:130px}.score-bar-track{flex:1 1;height:6px;background:var(--color-surface-3);border-radius:var(--radius-full);overflow:hidden}.score-bar-fill{height:100%;border-radius:var(--radius-full);transition:width .6s cubic-bezier(.34,1.56,.64,1)}.bar-high{background:var(--color-success)}.bar-mid{background:var(--color-warning)}.bar-low{background:var(--color-danger)}.score-bar-value{font-size:.8125rem;font-weight:700;color:var(--color-text);min-width:28px;text-align:right}.candidate-proscons{display:grid;grid-template-columns:1fr 1fr;gap:16px}.proscons-col{gap:0}.proscons-col,.proscons-list{display:flex;flex-direction:column}.proscons-list{list-style:none;gap:6px}.proscons-list li{font-size:.875rem;color:var(--color-text-muted);padding-left:16px;position:relative;line-height:1.5}.proscons-list.pros li:before{content:"✓";position:absolute;left:0;color:var(--color-success);font-weight:700}.proscons-list.cons li:before{content:"–";position:absolute;left:0;color:var(--color-danger);font-weight:700}.candidate-actions{display:flex;gap:8px;flex-wrap:wrap}.cand-action-btn{display:flex;align-items:center;gap:6px;padding:8px 14px;border-radius:var(--radius-md);border:1.5px solid var(--color-border);background:var(--color-surface-2);color:var(--color-text-muted);font-size:.8125rem;font-weight:600;cursor:pointer;transition:all var(--transition);font-family:inherit}.cand-action-btn.active-blue,.cand-action-btn:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-dim)}.cand-action-btn.active-blue:hover:not(:disabled){filter:brightness(.95)}.cand-action-btn.primary{background:var(--color-primary);color:white;border-color:var(--color-primary)}.cand-action-btn.primary:hover:not(:disabled){filter:brightness(1.1);color:white}.cand-action-btn.danger:hover:not(:disabled){border-color:var(--color-danger);color:var(--color-danger);background:var(--color-danger-dim)}.cand-action-btn:disabled{opacity:.5;cursor:not-allowed}@media (max-width:768px){.candidates-header{padding:0}.candidates-content{padding:14px 0}.candidates-role{font-size:1rem}.candidate-proscons{grid-template-columns:1fr}.score-bar-label{min-width:100px;font-size:.75rem}.candidates-controls{gap:8px}.cand-tabs{flex-shrink:0}.cand-search{min-width:0;flex:1 1 140px}.threshold-row{gap:8px}.threshold-slider{max-width:100%}.back-btn span{display:none}}@media (max-width:480px){.candidate-card-header{flex-wrap:wrap;gap:8px}.candidate-card-left{min-width:0}.candidate-meta{gap:6px}.candidate-meta span{font-size:.75rem}.candidate-actions{gap:6px}.cand-action-btn{padding:7px 10px;font-size:.75rem}.candidates-header-top{gap:8px}.vacancy-card{padding:14px}.vacancy-card-actions{gap:6px}}@keyframes spin{to{transform:rotate(1turn)}}.spin{animation:spin .7s linear infinite;display:inline-block}@keyframes skeleton-pulse{0%,to{opacity:.65}50%{opacity:.3}}.skeleton{background-color:var(--color-border);animation:skeleton-pulse 1.5s ease-in-out infinite;display:inline-block}