:root{--ctp-base: #1e1e2e;--ctp-mantle: #181825;--ctp-crust: #11111b;--ctp-surface0: #313244;--ctp-surface1: #45475a;--ctp-surface2: #585b70;--ctp-overlay0: #6c7086;--ctp-overlay1: #7f849c;--ctp-overlay2: #9399b2;--ctp-subtext0: #a6adc8;--ctp-subtext1: #bac2de;--ctp-text: #cdd6f4;--ctp-lavender: #b4befe;--ctp-blue: #89b4fa;--ctp-sapphire: #74c7ec;--ctp-sky: #89dceb;--ctp-teal: #94e2d5;--ctp-green: #a6e3a1;--ctp-yellow: #f9e2af;--ctp-peach: #fab387;--ctp-maroon: #eba0ac;--ctp-red: #f38ba8;--ctp-mauve: #cba6f7;--ctp-pink: #f5c2e7;--ctp-flamingo: #f2cdcd;--ctp-rosewater: #f5e0dc}*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--ctp-base);color:var(--ctp-text);line-height:1.5;min-height:100vh}#root{max-width:960px;margin:0 auto;padding:1.5rem}.login-container{max-width:360px;margin:4rem auto;background:var(--ctp-surface0);padding:2rem;border-radius:12px}.login-container h1{font-size:1.2rem;margin-bottom:.5rem;color:var(--ctp-text)}.login-container p{color:var(--ctp-subtext0);font-size:.85rem;margin-bottom:1.25rem}.form-group{margin-bottom:1rem}.form-group label{display:block;margin-bottom:.3rem;color:var(--ctp-subtext0);font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.03em}input[type=text],input[type=password],input[type=number]{width:100%;padding:.6rem .75rem;border:1px solid var(--ctp-surface1);border-radius:8px;font-size:.9rem;background:var(--ctp-base);color:var(--ctp-text);transition:border-color .15s}input:focus{outline:none;border-color:var(--ctp-blue)}button{padding:.6rem 1.25rem;background:var(--ctp-blue);color:var(--ctp-base);border:none;border-radius:8px;cursor:pointer;font-size:.85rem;font-weight:600;transition:background .15s}button:hover{background:var(--ctp-sapphire)}button:disabled{background:var(--ctp-surface1);color:var(--ctp-overlay0);cursor:not-allowed}.error-message{margin-top:1rem;padding:.6rem .75rem;background:#f38ba826;color:var(--ctp-red);border-radius:6px;font-size:.85rem}.header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem}.header h1{font-size:1.4rem;font-weight:700}.logout-btn{background:var(--ctp-surface0);color:var(--ctp-subtext0);padding:.4rem .75rem;font-size:.75rem}.logout-btn:hover{background:var(--ctp-surface1);color:var(--ctp-text)}.search-box{background:var(--ctp-surface0);padding:1rem 1.25rem;border-radius:12px;margin-bottom:1rem}.search-input{display:flex;gap:.5rem}.search-input input{flex:1;background:var(--ctp-base)}.filter-bar{margin-top:.75rem;display:flex;flex-wrap:wrap;align-items:flex-start;gap:.4rem}.filter-chips{display:flex;flex-wrap:wrap;gap:.4rem}.filter-chip{display:flex;align-items:center;gap:.35rem;background:var(--ctp-base);border:1px solid var(--ctp-surface1);border-radius:20px;padding:.3rem .5rem .3rem .7rem;font-size:.75rem}.filter-chip:focus-within{border-color:var(--ctp-blue)}.filter-chip-label{color:var(--ctp-blue);font-weight:600;white-space:nowrap}.filter-chip input,.filter-chip select{border:none;background:transparent;padding:.15rem .3rem;font-size:.75rem;color:var(--ctp-text);outline:none;width:auto}.filter-chip input[type=number]{width:65px}.filter-chip input[type=text]{width:80px}.filter-chip select{cursor:pointer}.filter-chip-range{display:flex;align-items:center;gap:.2rem}.filter-chip-range span{color:var(--ctp-overlay0);font-size:.7rem}.filter-chip-remove{background:none;border:none;color:var(--ctp-overlay0);cursor:pointer;padding:.1rem .25rem;font-size:.9rem;line-height:1;border-radius:50%}.filter-chip-remove:hover{background:#f38ba833;color:var(--ctp-red)}.add-filter-wrapper{position:relative}.add-filter-btn{background:transparent;color:var(--ctp-blue);border:1px dashed var(--ctp-surface2);padding:.3rem .65rem;font-size:.75rem;border-radius:20px}.add-filter-btn:hover{background:var(--ctp-surface0);border-color:var(--ctp-blue)}.filter-menu{position:absolute;top:calc(100% + 4px);left:0;background:var(--ctp-surface0);border:1px solid var(--ctp-surface1);border-radius:10px;box-shadow:0 4px 16px #0000004d;z-index:100;min-width:170px;overflow:hidden}.filter-menu-item{padding:.5rem .85rem;cursor:pointer;font-size:.8rem;color:var(--ctp-subtext1);transition:background .1s}.filter-menu-item:hover{background:var(--ctp-surface1);color:var(--ctp-blue)}.results{background:var(--ctp-surface0);border-radius:12px;overflow:hidden}.result-count{padding:.75rem 1.25rem;background:var(--ctp-mantle);border-bottom:1px solid var(--ctp-surface1);color:var(--ctp-subtext0);font-size:.8rem;font-weight:500}.empty-state{padding:3rem;text-align:center;color:var(--ctp-overlay0);font-size:.9rem}.candidate{padding:1.25rem;border-bottom:1px solid var(--ctp-surface1);transition:background .1s}.candidate:hover{background:var(--ctp-mantle)}.candidate:last-child{border-bottom:none}.candidate-name{font-size:1rem;font-weight:600;color:var(--ctp-text);margin-bottom:.2rem}.candidate-position{font-size:.8rem;color:var(--ctp-subtext0);margin-bottom:.5rem}.candidate-badges{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:.6rem}.badge{display:inline-block;padding:.15rem .45rem;border-radius:4px;font-size:.7rem;font-weight:600}.badge-arrangement{background:var(--ctp-green);color:var(--ctp-base)}.badge-notice{background:var(--ctp-peach);color:var(--ctp-base)}.badge-cloud{background:var(--ctp-blue);color:var(--ctp-base)}.candidate-meta{display:flex;flex-wrap:wrap;gap:.75rem;font-size:.8rem;color:var(--ctp-subtext0);margin-bottom:.5rem}.candidate-meta a{color:var(--ctp-blue);text-decoration:none}.candidate-meta a:hover{text-decoration:underline}.candidate-salary{font-size:.8rem;color:var(--ctp-subtext0);margin-bottom:.6rem}.salary-current{color:var(--ctp-overlay1)}.salary-arrow{color:var(--ctp-surface2);margin:0 .25rem}.salary-expected{color:var(--ctp-green);font-weight:600}.candidate-skills{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:.6rem}.skill-tag{background:var(--ctp-surface1);color:var(--ctp-blue);padding:.2rem .45rem;border-radius:4px;font-size:.7rem;font-weight:500}.skill-tag-tool{background:var(--ctp-surface1);color:var(--ctp-peach);padding:.2rem .45rem;border-radius:4px;font-size:.7rem;font-weight:500}.candidate-links{display:flex;gap:.75rem}.candidate-links a{color:var(--ctp-blue);text-decoration:none;font-size:.8rem;font-weight:500}.candidate-links a:hover{text-decoration:underline}.load-more-container{padding:1.25rem;text-align:center;border-top:1px solid var(--ctp-surface1)}.load-more-button{padding:.6rem 1.5rem;background:var(--ctp-base);color:var(--ctp-blue);border:1px solid var(--ctp-surface1)}.load-more-button:hover{background:var(--ctp-surface0);border-color:var(--ctp-blue)}.skeleton{animation:skeleton-pulse 1.5s ease-in-out infinite;background:linear-gradient(90deg,var(--ctp-surface1) 25%,var(--ctp-surface0) 50%,var(--ctp-surface1) 75%);background-size:200% 100%;border-radius:6px}@keyframes skeleton-pulse{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-line{height:.9em;margin-bottom:.5rem}.skeleton-skills{display:flex;gap:.4rem;margin-bottom:.6rem}.skeleton-skill{width:50px;height:20px;border-radius:4px}@media(max-width:600px){#root{padding:1rem}.candidate-meta{flex-direction:column;gap:.3rem}.filter-chip input[type=number]{width:55px}.filter-chip input[type=text]{width:65px}}
