@import url(https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Poppins:wght@600;700;800&display=swap);.app{background:radial-gradient(circle at 15% 18%,#22d3ee29,#0000 38%),radial-gradient(circle at 84% 22%,#2563eb24,#0000 36%),linear-gradient(140deg,#f4fbff,#eaf7fa 45%,#f4f6fb);min-height:100vh}.landing-page{min-height:100vh;overflow:hidden;padding:clamp(16px,2.8vw,30px);position:relative}.landing-gradient{border-radius:999px;filter:blur(60px);pointer-events:none;position:absolute;z-index:0}.landing-gradient-left{background:radial-gradient(circle,#0ea5e933,#0ea5e900);height:min(44vw,520px);left:-12%;top:18%;width:min(44vw,520px)}.landing-gradient-right{background:radial-gradient(circle,#14b8a633,#14b8a600);height:min(40vw,500px);right:-11%;top:36%;width:min(40vw,500px)}.landing-layout{margin:0 auto;max-width:1240px;position:relative;z-index:1}.landing-navbar{grid-gap:14px;align-items:center;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffffa8;border:1px solid #ffffffbf;border-radius:999px;box-shadow:0 10px 30px #2a436b1f;display:grid;gap:14px;grid-template-columns:auto 1fr auto;padding:14px 18px}.brand-wrap{align-items:center;display:flex;gap:12px}.brand-mark{background:linear-gradient(135deg,#0ea5b7,#4f46e5);border-radius:50%;color:#fff;display:grid;font-weight:800;height:40px;place-items:center;width:40px}.brand-wrap h2{color:#101828;font-family:Poppins,Inter,sans-serif;font-size:2rem;line-height:1;margin:0}.brand-wrap h2 span{color:#0f9fb0}.landing-nav-links{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.landing-nav-links button{background:#0000;border:none;border-radius:12px;color:#4b5563;cursor:pointer;font-size:1.04rem;font-weight:500;padding:10px 14px;transition:color .22s ease,background .22s ease}.landing-nav-links button:hover{background:#0f172a0f;color:#111827}.landing-nav-links .recruiter-btn{background:#0000;border:1px solid #6366f199;border-radius:999px;color:#4f46e5;cursor:pointer;font-size:14px;margin-left:10px;padding:6px 14px;transition:all .2s ease}.landing-nav-links .recruiter-btn:hover{background:#6366f11a;border-color:#6366f1b3;color:#4338ca}.btn-gradient{align-items:center;background:linear-gradient(115deg,#0ea5b7,#4f46e5);border:none;border-radius:16px;box-shadow:0 10px 22px #3b82f647;color:#fff;cursor:pointer;display:inline-flex;font-weight:600;gap:10px;justify-content:center;transition:transform .22s ease,box-shadow .22s ease}.btn-gradient:hover{box-shadow:0 14px 28px #3b82f657;transform:translateY(-2px)}.nav-signup-btn{border-radius:999px;padding:11px 24px}.hero-section{grid-gap:clamp(24px,4vw,42px);align-items:center;display:grid;gap:clamp(24px,4vw,42px);grid-template-columns:1.02fr 1fr;margin-top:clamp(24px,4vw,52px)}.hero-content{max-width:620px}.hero-pill{align-items:center;background:#14b8a61f;border:1px solid #14b8a633;border-radius:999px;color:#0f9fb0;display:inline-flex;font-size:1rem;font-weight:600;padding:10px 18px}.hero-brand{animation:heroTitleFlow 8s ease-in-out infinite,heroBreathingGlow 3.6s ease-in-out infinite;background:linear-gradient(112deg,#169fb2,#2e78da 54%,#4f46e5);-webkit-background-clip:text;background-clip:text;background-size:240% 240%;color:#0000;filter:drop-shadow(0 8px 18px rgba(49,133,225,.18));font-size:clamp(3.6rem,9vw,6.6rem);font-weight:900;letter-spacing:-.04em;line-height:.96;margin:22px 0 18px}.hero-title{font-size:clamp(53px,7vw,100px);font-weight:800;letter-spacing:-1px}.iq-highlight{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#8b5cf6,#22c55e);-webkit-background-clip:text;background-clip:text;display:inline-block;filter:drop-shadow(0 0 8px rgba(139,92,246,.4))}.hero-description{color:#4b5563;font-size:clamp(1.04rem,1.7vw,1.26rem);line-height:1.55;margin:0;max-width:530px}.hero-cta-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.hero-cta-row .btn-gradient{font-size:1.04rem;padding:15px 24px}.btn-glass{align-items:center;background:#ffffffb8;border:1px solid #94a3b859;border-radius:16px;box-shadow:0 6px 18px #1e293b1a;color:#1f2937;cursor:pointer;display:inline-flex;font-size:1.04rem;gap:9px;padding:15px 22px;transition:transform .2s ease,box-shadow .2s ease}.btn-glass:hover{box-shadow:0 12px 24px #1e293b24;transform:translateY(-2px)}.hero-stats{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:38px}.stat-item h3{color:#0f172a;font-size:clamp(2rem,3vw,3rem);line-height:1;margin:0}.stat-item p{color:#556273;font-size:1rem;margin:6px 0 0}.hero-visual{min-height:clamp(380px,49vw,560px);position:relative}.metric-card{background:#f8fafc;border:1px solid #ffffffbf;border-radius:20px;box-shadow:0 10px 22px #1e293b24;position:absolute;transition:transform .28s ease,box-shadow .28s ease}.metric-card:before{background:#3b82f6;border-radius:50%;box-shadow:0 0 0 2px #eaf4ff;content:"";height:6px;left:50%;position:absolute;top:0;transform:translate(-50%,-50%);width:6px}.metric-card:hover{box-shadow:0 18px 36px #1e293b2e;transform:translateY(-6px)}.score-card{align-items:center;display:flex;gap:14px;left:-10%;min-width:242px;padding:17px 18px;top:6%;width:min(43%,262px);z-index:3}.score-ring{border:4px solid #3b82f6;border-radius:50%;border-top-color:#10b981;color:#1f2937;display:grid;font-weight:700;height:70px;place-items:center;width:70px}.metric-label{color:#64748b;font-size:.92rem;margin:0}.metric-value{color:#111827;font-size:1.95rem;font-weight:700;margin:2px 0 0;white-space:nowrap}.skills-card{box-shadow:0 12px 24px #1e293b29;left:40%;padding:11px 13px;right:auto;top:5%;width:min(28%,170px);z-index:4}.fit-card{box-shadow:0 10px 22px #1e293b24;left:72%;min-width:128px;padding:16px;right:auto;top:6%;width:min(22%,140px);z-index:3}.metric-title{color:#1f2937;font-size:1.28rem;margin:0 0 10px}.skills-card .metric-title{font-size:1.02rem;margin-bottom:8px}.tag-row{display:flex;flex-wrap:wrap;gap:8px}.tag-row span{background:#14b8a624;border-radius:999px;color:#0f9fb0;font-size:.85rem;padding:4px 10px}.skills-card .tag-row{gap:6px}.skills-card .tag-row span{font-size:.76rem;padding:3px 8px}.fit-row{align-items:center;color:#475569;display:flex;font-size:.92rem;gap:12px;justify-content:space-between;margin-top:6px}.fit-row strong{color:#2563eb}.connector-svg{height:100%;left:0;overflow:visible;position:absolute;top:0;width:100%;z-index:2}.connector-path{fill:none;stroke:url(#heroConnectorGradient);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:300;stroke-dashoffset:300;animation:drawConnector 1.2s ease forwards;transition:all .3s ease}.connector-node{fill:#2b8df0;stroke:#eaf4ff;stroke-width:1.8}.resume-panel{animation:resumeFloat 5s ease-in-out infinite;background:linear-gradient(155deg,#0ea5b7,#14b8a6);border-radius:28px;bottom:2%;box-shadow:0 22px 44px #0e749057;left:23%;padding:14px 14px 66px;position:absolute;width:min(62%,390px);z-index:1}.resume-sheet{background:#f8fafc;border-radius:18px;box-shadow:0 10px 26px #0f172a2e;display:flex;flex-direction:column;gap:13px;padding:20px;position:relative;z-index:3}.resume-header-row{grid-gap:12px;align-items:center;display:grid;gap:12px;grid-template-columns:auto 1fr}.resume-icon{background:linear-gradient(130deg,#0ea5b7,#4f46e5);border-radius:16px;color:#fff;display:grid;height:52px;place-items:center;width:52px}.resume-head-text h4{color:#111827;font-size:1.08rem;line-height:1.1;margin:0}.resume-head-text p{color:#64748b;font-size:.84rem;margin:4px 0 0}.resume-section{grid-gap:8px;display:grid;gap:8px}.resume-section-title{align-items:center;color:#64748b;display:inline-flex;font-size:.74rem;font-weight:700;gap:6px;letter-spacing:.03em;text-transform:uppercase}.resume-lines{grid-gap:8px;display:grid;gap:8px}.resume-lines span{background:#cbd5e1;border-radius:999px;height:6px;width:100%}.resume-lines span:nth-child(2){width:86%}.resume-lines span:nth-child(3){width:72%}.resume-skills-row{display:flex;flex-wrap:wrap;gap:8px}.resume-skills-row span{background:#0ea5b81f;border:1px solid #0ea5b84d;border-radius:999px;color:#0f9fb0;font-size:.75rem;font-weight:600;padding:3px 8px}.resume-edu-lines{grid-gap:7px;display:grid;gap:7px}.resume-edu-lines span{background:#cbd5e1;border-radius:999px;display:block;height:5px;width:68%}.resume-edu-lines span:nth-child(2){width:54%}.resume-panel-bottom{background:linear-gradient(180deg,#11a5afe0,#10a5ac);border-radius:0 0 28px 28px;bottom:0;height:60px;left:0;position:absolute;right:0}.recent-jobs-section{margin-top:clamp(54px,9vw,92px)}.recent-jobs-header{max-width:760px}.recent-jobs-header h2{color:#0f172a;font-size:clamp(2rem,4.4vw,3rem);line-height:1.06;margin:0}.recent-jobs-header p{color:#556273;font-size:clamp(1rem,1.6vw,1.15rem);margin:10px 0 0}.recent-jobs-alert{align-items:center;background:#fee2e2bf;border:1px solid #f8717159;border-radius:14px;color:#7f1d1d;display:flex;gap:12px;justify-content:space-between;margin-top:18px;padding:12px 14px}.recent-jobs-retry{background:#7f1d1d1a;border:none;border-radius:999px;color:#7f1d1d;cursor:pointer;font-weight:600;padding:6px 12px}.recent-jobs-empty{color:#64748b;margin-top:18px}.recent-jobs-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:24px}.recent-job-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff9;border:1px solid #ffffffbf;border-radius:16px;box-shadow:0 10px 25px #0000001a;padding:20px;transition:transform .24s ease,box-shadow .24s ease}.recent-job-card:hover{box-shadow:0 16px 30px #0f172a24;transform:translateY(-4px)}.recent-job-card h3{color:#0f172a;font-size:1.22rem;margin:0}.recent-job-company{color:#475569;font-size:.95rem;margin:6px 0 0}.recent-job-skills{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}.recent-job-skills span{background:#0000000d;border-radius:999px;color:#334155;font-size:12px;padding:6px 10px}.recent-job-footer{align-items:center;display:flex;gap:10px;justify-content:space-between;margin-top:16px}.recent-job-footer p{color:#475569;font-weight:500;margin:0}.apply-btn{background:linear-gradient(135deg,#06b6d4,#6366f1);border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:8px 14px;transition:transform .2s ease,box-shadow .2s ease}.apply-btn:hover:not(:disabled){box-shadow:0 8px 18px #6366f152;transform:translateY(-1px)}.apply-btn:disabled{cursor:not-allowed;opacity:.66}.match-result{animation:matchReveal .26s ease;background:#00ff9614;border:1px solid #22c55e33;border-radius:10px;font-size:14px;margin-top:10px;padding:10px}.match-result p{color:#334155;margin:4px 0}.match-skills{color:#475569}.match-skills-good{color:#15803d;font-weight:600}.match-skills-missing{color:#b91c1c;font-weight:600}.features-section{margin-top:clamp(64px,10vw,120px);padding-bottom:18px}.features-heading{margin:0 auto;max-width:760px;text-align:center}.feature-pill{background:#4f46e51c;border:1px solid #4f46e538;border-radius:999px;color:#4f46e5;display:inline-block;font-size:1rem;font-weight:600;padding:10px 20px}.features-heading h2{color:#0f172a;font-size:clamp(2.1rem,5vw,3.7rem);line-height:1.05;margin:22px 0 10px}.features-heading p{color:#556273;font-size:clamp(1rem,1.6vw,1.24rem);margin:0}.features-grid{grid-gap:18px;display:grid;gap:18px;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:44px}.feature-card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffbd;border:1px solid #fffc;border-radius:22px;box-shadow:0 12px 30px #0f172a1f;padding:24px;transition:transform .25s ease,box-shadow .25s ease}.feature-card:hover{box-shadow:0 20px 36px #0f172a2e;transform:translateY(-7px)}.feature-icon{background:linear-gradient(130deg,#0ea5b7,#4f46e5);border-radius:18px;color:#fff;display:grid;height:62px;margin-bottom:16px;place-items:center;width:62px}.feature-card h3{color:#111827;font-size:1.9rem;margin:0}.feature-card p{color:#586777;font-size:1.04rem;line-height:1.55;margin:11px 0 0}.landing-footer-actions{color:#64748b;margin:42px auto 24px;max-width:530px;text-align:center}.landing-footer-actions div{display:flex;gap:10px;justify-content:center;margin-top:10px}.landing-footer-actions button{background:#ffffffc7;border:1px solid #64748b42;border-radius:999px;color:#334155;cursor:pointer;padding:8px 15px}.auth-page-shell{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:100vh;overflow:hidden;padding:clamp(18px,4vw,34px);position:relative}.auth-bg-blob{border-radius:50%;filter:blur(60px);pointer-events:none;position:absolute}.auth-blob-left{background:radial-gradient(circle,#0ea5e92e,#0000 66%);height:min(42vw,480px);left:-14%;top:24%;width:min(42vw,480px)}.auth-blob-right{background:radial-gradient(circle,#14b8a633,#0000 66%);height:min(38vw,430px);right:-13%;top:36%;width:min(38vw,430px)}.auth-card-surface{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffffc2;border:1px solid #fffc;border-radius:32px;box-shadow:0 24px 50px #0f172a24;padding:clamp(24px,4vw,34px);position:relative;width:min(100%,500px);z-index:1}.auth-brand-row{align-items:center;color:#111827;display:flex;font-size:2rem;font-weight:700;gap:10px;justify-content:center;margin-bottom:8px}.auth-brand-row .brand-mark{font-size:1.1rem;height:42px;width:42px}.eye-animation-wrap{display:flex;gap:16px;justify-content:center;margin:8px 0 20px}.eye-socket{background:#fff;border:3px solid #14b8a659;border-radius:999px;box-shadow:inset 0 -5px 10px #0f172a14,0 6px 14px #0f172a14;height:58px;overflow:hidden;position:relative;width:58px}.eye-pupil{background:radial-gradient(circle at 32% 28%,#4b5563,#111827 68%);height:21px;left:calc(50% - 10.5px);top:calc(50% - 10.5px);transition:none;width:21px;will-change:transform}.eye-pupil,.eye-pupil:after{border-radius:50%;position:absolute}.eye-pupil:after{background:#ffffffd9;content:"";height:6px;left:4px;top:3px;width:6px}.eye-lid{background:linear-gradient(180deg,#d6f5f7fa,#e8f5f7fa);inset:0;position:absolute;transform:scaleY(0);transform-origin:top center;transition:transform .3s ease}.eye-socket.is-closed .eye-lid{transform:scaleY(1)}.auth-card-surface h1{color:#0f172a;font-size:clamp(2rem,5vw,2.8rem);margin:0;text-align:center}.auth-subtitle{color:#64748b;margin:8px 0 22px;text-align:center}.auth-form{grid-gap:8px;display:grid;gap:8px}.auth-form label{color:#1f2937;font-weight:600;margin-top:8px}.input-wrap{align-items:center;background:#f8fafccc;border:1px solid #94a3b85c;border-radius:14px;display:flex;gap:10px;padding:12px 14px}.input-wrap svg{color:#64748b;flex-shrink:0}.input-wrap input{background:#0000;border:none;box-shadow:none;color:#0f172a;outline:none;padding:0;width:100%}.password-toggle{background:#0000;border:none;color:#64748b;cursor:pointer;display:grid;place-items:center}.forgot-link{background:#0000;border:none;color:#0f9fb0;cursor:pointer;justify-self:end;margin:4px 0 6px}.full-width{font-size:1.08rem;margin-top:8px;padding:14px 22px;width:100%}.auth-switch-text{margin-top:16px;text-align:center}.switch-link{color:#0f9fb0;font-weight:600}.back-home-link,.switch-link{background:#0000;border:none;cursor:pointer;font-size:1rem}.back-home-link{align-items:center;color:#4b5563;display:inline-flex;gap:8px;margin-top:18px;position:relative;z-index:1}.floating-soft{animation:floatingSoft 4.8s ease-in-out infinite}.floating-mid{animation:floatingSoft 5.6s ease-in-out infinite reverse}.floating-fast{animation:floatingSoft 4.2s ease-in-out infinite}@keyframes heroBreathingGlow{0%,to{text-shadow:0 0 10px #3b82f624,0 0 26px #14b8a614}50%{text-shadow:0 0 18px #3b82f633,0 0 38px #14b8a624}}@keyframes heroTitleFlow{0%,to{background-position:0 50%}50%{background-position:100% 50%}}@keyframes floatingSoft{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes drawConnector{to{stroke-dashoffset:0}}@keyframes matchReveal{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@keyframes resumeFloat{0%,to{transform:translate3d(0,8px,0)}50%{transform:translate3d(0,-2px,0)}}@media (max-width:1080px){.landing-navbar{border-radius:28px;gap:12px}.hero-section,.landing-navbar{grid-template-columns:1fr}.hero-visual{min-height:400px}.features-grid,.recent-jobs-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:700px){.landing-page{padding:12px}.brand-wrap h2{font-size:1.7rem}.landing-nav-links .recruiter-btn{font-size:12px;margin-left:0;padding:6px 11px}.nav-signup-btn{width:100%}.hero-cta-row,.hero-stats{grid-template-columns:1fr}.hero-stats{grid-gap:10px;display:grid;gap:10px}.fit-card,.score-card,.skills-card{margin-bottom:10px;position:static;transform:none;width:100%}.connector-svg{display:none}.resume-panel{margin-top:10px;position:static;width:100%}.features-grid,.recent-jobs-grid{grid-template-columns:1fr}.feature-card h3{font-size:1.6rem}.auth-card-surface{border-radius:24px}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation:none!important;scroll-behavior:auto!important;transition:none!important}}.candidate-portal{background:var(--app-bg);min-height:100vh;padding:var(--space-xl) var(--space-md)}.portal-header{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--surface-glass);border:1px solid #ffffff1f;border-radius:16px;box-shadow:var(--shadow-soft);color:var(--text);display:flex;justify-content:space-between;margin-bottom:var(--space-2xl);padding:var(--space-md) var(--space-lg)}.candidate-header-actions{display:flex;flex-wrap:wrap;gap:var(--space-sm);justify-content:flex-end}.portal-header h1{color:var(--dark);font-size:1.8rem;margin:0}.back-btn{background-color:var(--surface-soft);border:1px solid #fff3;border-radius:12px;color:var(--text);cursor:pointer;font-weight:600;padding:var(--space-sm) var(--space-md);transition:var(--transition)}.back-btn:hover{background-color:#ffffff1a;transform:translateY(-1px)}.portal-content{align-items:flex-start;display:flex;justify-content:center;margin:0 auto;max-width:900px}.candidate-dashboard-layout{flex-direction:column;gap:var(--space-lg);max-width:1100px}.dashboard-section{width:100%}.dashboard-container{align-items:flex-start;display:flex;gap:24px;width:100%}.left-section{flex:2 1}.left-section,.right-section{grid-gap:var(--space-lg);display:grid;gap:var(--space-lg)}.right-section{flex:1 1}.profile-summary-card{background:linear-gradient(145deg,#ffffffeb,#f1f5f9e0)}.profile-summary-grid p{margin:0}.summary-subsection{margin-top:var(--space-md)}.summary-subsection h3{font-size:1.05rem;margin:0 0 var(--space-sm)}.summary-lines{grid-gap:6px;display:grid;gap:6px}.summary-lines p{font-size:.95rem}.inline-muted,.summary-lines p{color:var(--text-light);margin:0}.inline-muted{font-size:.94rem}.job-list{margin-top:var(--space-sm)}.match-score-box{background:#00ff9614;border:1px solid #10b98138;border-radius:12px;margin-top:16px;padding:12px}.match-score-box p{margin:6px 0}.section-header-row{align-items:center;display:flex;gap:var(--space-sm);justify-content:space-between;margin-bottom:var(--space-md)}.profile-grid{grid-gap:var(--space-sm);display:grid;gap:var(--space-sm);grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.resume-info-box{border:1px solid #ffffff1f;border-radius:10px}.result-card,.resume-info-box{background:var(--surface-soft);padding:var(--space-md)}.result-header{justify-content:space-between;margin-bottom:var(--space-sm)}.score-display{gap:var(--space-sm)}.overall-score{text-align:right}.score-value{font-size:1.2rem}.score-label{display:block}.portal-card{animation:slideInUp .5s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:var(--surface);border:1px solid #ffffff1f;border-radius:20px;box-shadow:var(--shadow-lg);padding:var(--space-2xl);transition:var(--transition);width:100%}.portal-card:hover{box-shadow:0 14px 34px #00000094;transform:translateY(-2px)}.portal-card h2{color:var(--dark);font-size:2rem;margin-bottom:var(--space-sm)}.step-description{color:var(--text-light);font-size:1.05rem;margin-bottom:var(--space-lg)}.profile-form,.upload-form{display:flex;flex-direction:column;gap:var(--space-lg)}.form-section{border-bottom:1px solid var(--border);padding-bottom:var(--space-lg)}.form-section:last-child{border-bottom:none}.form-section h3{border-bottom:2px solid var(--primary);color:var(--dark);display:inline-block;font-size:1.3rem;margin-bottom:var(--space-md);padding-bottom:var(--space-sm)}.form-group{display:flex;flex-direction:column}.form-group label{color:var(--dark);font-weight:600;margin-bottom:var(--space-sm)}.form-group input,.form-group select,.form-group textarea{border-radius:12px;font-size:1rem;padding:var(--space-md)}.form-row{grid-gap:var(--space-md);display:grid;gap:var(--space-md);grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.auth-switch-row{display:flex;gap:var(--space-sm)}.auth-switch-row,.sub-form{margin-bottom:var(--space-md)}.sub-form{background:#ffffff0a;border:1px solid #ffffff1a;border-radius:12px;padding:var(--space-md)}.file-upload-area{background:var(--surface-soft);border:2px dashed #fff3;border-radius:14px;cursor:pointer;padding:var(--space-2xl);text-align:center;transition:var(--transition)}.file-upload-area.drag-active{border-color:var(--primary);box-shadow:0 0 0 3px #14b8a629}.hidden-file-input{height:1px;opacity:0;pointer-events:none;position:absolute;width:1px}.choose-file-btn{margin-top:var(--space-md)}.file-upload input:focus+.file-upload-area{background:var(--surface-soft);border-color:var(--primary);box-shadow:0 0 0 3px #5b21b61a}.file-upload-area:hover{background:#ffffff14;border-color:var(--primary)}.upload-icon{display:block;font-size:2.5rem;margin-bottom:var(--space-md)}.upload-text{color:var(--text-light);display:block;font-weight:500}.skills-input{display:flex;gap:var(--space-sm);margin-bottom:var(--space-md)}.skills-input input{flex:1 1}.skills-list{display:flex;flex-wrap:wrap;gap:var(--space-sm);margin:var(--space-md) 0}.skill-tag{align-items:center;animation:popIn .3s ease;background:linear-gradient(135deg,var(--primary-light),var(--primary));border-radius:999px;color:#fff;display:inline-flex;font-size:.95rem;font-weight:500;gap:var(--space-sm);padding:var(--space-sm) var(--space-md)}.skill-tag button{background:none;border:none;color:#fff;cursor:pointer;font-size:1.2rem;line-height:1;padding:0;transition:var(--transition)}.skill-tag button:hover{transform:scale(1.2)}@keyframes popIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.form-actions{display:flex;gap:var(--space-md);margin-top:var(--space-lg)}.form-actions button{flex:1 1;font-size:1.05rem;padding:var(--space-md)}.auth-shell{max-width:560px}.auth-card{border:1px solid #ffffff24}@media (max-width:1024px){.dashboard-container{flex-direction:column}.left-section,.right-section{width:100%}}@media (max-width:768px){.dashboard-container{flex-direction:column;gap:var(--space-md)}}.success-screen{align-items:center;display:flex;justify-content:center;min-height:60vh;padding:var(--space-lg)}.success-card{animation:slideInUp .5s ease;background:var(--surface);border-radius:16px;box-shadow:0 20px 60px #0000001a;max-width:600px;padding:var(--space-2xl);text-align:center}.success-icon{animation:bounce .6s ease infinite;font-size:4rem;margin-bottom:var(--space-lg)}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.success-card h2{color:var(--success);margin-bottom:var(--space-md)}.candidate-info{background:var(--surface-soft);border-radius:8px;margin:var(--space-lg) 0;padding:var(--space-lg);text-align:left}.candidate-info p{font-weight:500;margin:var(--space-md) 0}.candidate-info code{background:var(--surface);border:1px solid var(--border);display:inline-block;padding:var(--space-sm) var(--space-md)}.file-preview-name{color:var(--text-light);margin-top:-8px}.extracted-preview{background:var(--surface-soft);border:1px solid var(--border);border-radius:12px;margin-bottom:var(--space-lg);padding:var(--space-md)}.extracted-grid{grid-gap:var(--space-sm);display:grid;gap:var(--space-sm);grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.field-help{color:var(--text-light);margin-bottom:var(--space-sm)}.input-error{color:var(--danger);margin-top:4px}.upload-links-section{margin-top:var(--space-sm)}.success-message{color:var(--text-light);font-size:1.05rem;margin:var(--space-lg) 0}.success-card .btn{margin-top:var(--space-lg);width:100%}@media (max-width:768px){.portal-header{flex-direction:column;gap:var(--space-md)}.portal-header h1{font-size:1.5rem}.form-row{grid-template-columns:1fr}.form-actions{flex-direction:column}.portal-card{padding:var(--space-lg)}.result-header,.section-header-row{align-items:flex-start;flex-direction:column}}body.light .auth-card,body.light .portal-card,body.light .portal-header,body.light .result-card,body.light .resume-info-box,body.light .sub-form{-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:var(--shadow-soft)}body.light .auth-card,body.light .file-upload-area,body.light .portal-card,body.light .portal-header,body.light .result-card,body.light .resume-info-box,body.light .sub-form{border-color:#e2e8f0}body.light .file-upload-area{background:#f8fafc}body.light .file-upload-area:hover{background:#f1f5f9}.recruiter-portal{background:var(--app-bg);min-height:100vh;padding:var(--space-xl) var(--space-md)}.recruiter-portal .portal-header{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--surface-glass);border:1px solid #ffffff1f;border-radius:16px;box-shadow:var(--shadow-soft);color:var(--text);display:flex;justify-content:space-between;margin-bottom:var(--space-2xl);padding:var(--space-md) var(--space-lg)}.recruiter-portal .portal-header h1{color:var(--dark);font-size:1.8rem;margin:0}.recruiter-portal .back-btn{background-color:var(--surface-soft);border:1px solid #fff3;border-radius:12px;color:var(--text);cursor:pointer;font-weight:600;padding:var(--space-sm) var(--space-md);transition:var(--transition)}.recruiter-portal .back-btn:hover{background-color:#ffffff1a;transform:translateY(-1px)}.recruiter-portal .portal-content{margin:0 auto;max-width:900px}.recruiter-portal .portal-content.full-width{max-width:1200px}.recruiter-portal .portal-card{animation:slideInUp .5s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:var(--surface);border:1px solid #ffffff1f;border-radius:20px;box-shadow:var(--shadow-lg);padding:var(--space-2xl);width:100%}.recruiter-portal .portal-card h2{color:var(--dark);font-size:2rem;margin-bottom:var(--space-sm)}.recruiter-portal .step-description{color:var(--text-light);font-size:1.05rem;margin-bottom:var(--space-lg)}.job-form{gap:var(--space-lg)}.job-form,.job-form .form-group{display:flex;flex-direction:column}.job-form .form-group label{color:var(--dark);font-weight:600;margin-bottom:var(--space-sm)}.job-form textarea{min-height:200px;padding:var(--space-md);resize:vertical}.job-form .form-row{grid-gap:var(--space-md);display:grid;gap:var(--space-md);grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.candidates-selection{padding:var(--space-lg) 0}.no-candidates{background:var(--light);border-radius:8px;color:var(--text-light);padding:var(--space-2xl);text-align:center}.selection-header{align-items:center;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;margin-bottom:var(--space-lg);padding-bottom:var(--space-md)}.selection-header p{color:var(--dark);font-weight:600;margin:0}.candidates-list{background:var(--surface-soft);border:1px solid var(--border);flex-direction:column;max-height:500px;overflow-y:auto}.candidate-item,.candidates-list{border-radius:12px;display:flex;gap:var(--space-md);padding:var(--space-md)}.candidate-item{align-items:flex-start;background:var(--surface);border:1px solid #ffffff1f;cursor:pointer;transition:var(--transition)}.candidate-item:hover{border-color:var(--primary);box-shadow:0 8px 20px #6d28d924}.candidate-item input[type=checkbox]{cursor:pointer;margin-top:3px;width:auto}.candidate-info-compact{flex:1 1}.candidate-info-compact h4{color:var(--dark);margin:0 0 var(--space-sm) 0}.candidate-info-compact p{color:var(--text-light);font-size:.95rem;margin:0 0 var(--space-sm) 0}.skills-preview{display:flex;flex-wrap:wrap;gap:var(--space-xs)}.skill-badge{background:linear-gradient(135deg,var(--primary-light),var(--primary));border-radius:12px;color:#fff;display:inline-block;font-size:.85rem;font-weight:500;padding:2px 10px}.results-container{margin:0 auto;max-width:1100px}.results-header{margin-bottom:var(--space-xl)}.results-header h2{color:var(--dark);margin-bottom:var(--space-sm)}.results-count{color:var(--text-light);font-size:1.05rem}.no-results{background:#fff;border-radius:8px;color:var(--text-light);padding:var(--space-2xl);text-align:center}.results-list{display:flex;flex-direction:column;gap:var(--space-md);margin-bottom:var(--space-2xl)}.result-card{background:var(--surface);border:1px solid #ffffff1f;border-radius:12px;box-shadow:var(--shadow-soft);cursor:pointer;overflow:hidden;transition:var(--transition)}.result-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.result-card.rank-1{border-left:5px solid #10b981}.result-card.rank-2{border-left:5px solid #3b82f6}.result-card.rank-3{border-left:5px solid #f59e0b}.result-card.rank-3,.result-card:nth-child(n+4){border-left:5px solid #d1d5db}.result-header{background:linear-gradient(135deg,var(--surface-soft),var(--surface));gap:var(--space-md);padding:var(--space-lg)}.rank-badge,.result-header{align-items:center;display:flex}.rank-badge{shrink:0;background:linear-gradient(135deg,var(--primary-light),var(--primary));border-radius:50%;color:#fff;font-size:1.3rem;font-weight:700;height:50px;justify-content:center;width:50px}.candidate-header-info{flex:1 1}.candidate-header-info h3{margin:0 0 var(--space-xs) 0}.candidate-email{color:var(--text-light);font-size:.95rem;margin:0}.score-display{gap:var(--space-lg)}.overall-score,.score-display{align-items:center;display:flex}.overall-score{flex-direction:column;text-align:center}.score-value{color:var(--primary);font-size:2rem;font-weight:700}.score-label{color:var(--text-light);font-size:.85rem;font-weight:500}.expand-icon{shrink:0;color:var(--text-light);font-size:1.5rem;transition:var(--transition)}.result-card:hover .expand-icon{color:var(--primary)}.result-details{grid-gap:var(--space-lg);background:var(--surface-soft);border-top:1px solid var(--border);display:grid;gap:var(--space-lg);padding:var(--space-lg)}.detail-section{background:#ffffff0a;border:1px solid #ffffff1f;border-radius:12px;padding:var(--space-lg)}.detail-section h4{border-bottom:2px solid var(--primary);color:var(--dark);font-size:1.1rem;margin-bottom:var(--space-md);padding-bottom:var(--space-sm)}.score-breakdown{flex-direction:column}.score-breakdown,.score-item{display:flex;gap:var(--space-md)}.score-item{align-items:center}.score-item .score-label{font-weight:600;min-width:150px;text-align:right}.progress-bar{background:var(--border);border-radius:10px;flex:1 1;height:8px;min-width:150px;overflow:hidden}.progress-fill{animation:growWidth .6s ease;border-radius:10px;height:100%}.progress-fill.skill-bar{background:linear-gradient(90deg,#10b981,#059669)}.progress-fill.content-bar{background:linear-gradient(90deg,#3b82f6,#1d4ed8)}.progress-fill.experience-bar{background:linear-gradient(90deg,#f59e0b,#d97706)}.progress-fill.profile-bar{background:linear-gradient(90deg,#14b8a6,#0f766e)}@keyframes growWidth{0%{width:0!important}}.score-item .score-value{color:var(--dark);font-weight:700;min-width:50px;text-align:right}.skills-analysis{grid-gap:var(--space-md);display:grid;gap:var(--space-md);grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.skill-group{background:var(--surface-soft);border-radius:8px;padding:var(--space-md)}.skill-group.matched{border-left:4px solid var(--success)}.skill-group.missing{border-left:4px solid var(--danger)}.skill-group h5{color:var(--dark);margin-bottom:var(--space-md)}.skill-list{display:flex;flex-wrap:wrap;gap:var(--space-sm)}.skill-badge.matched{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.skill-badge.missing{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.no-skills{color:var(--text-light);font-size:.95rem;margin:0}.candidate-details{display:flex;flex-direction:column;gap:var(--space-md)}.candidate-details p{color:var(--text);margin:0}.candidate-details strong{color:var(--dark)}.coding-profiles{margin-top:var(--space-md)}.coding-links{display:flex;flex-wrap:wrap;gap:var(--space-sm);margin-top:var(--space-sm)}.coding-links a{background:var(--surface-soft);border:1px solid var(--secondary);border-radius:6px;color:var(--secondary);display:inline-block;padding:6px 12px;transition:var(--transition)}.coding-links a:hover{background:var(--secondary);color:#fff}.education-list{display:flex;flex-direction:column;gap:var(--space-sm)}.education-list p{margin:0}.candidate-status-line{color:var(--text-light);font-size:.86rem}.status-badge{align-items:center;border-radius:999px;display:inline-flex;font-size:.85rem;font-weight:700;padding:4px 10px;text-transform:capitalize}.status-badge.pending{background:#fef3c7;color:#8a6200}.status-badge.selected{background:#d1fae5;color:#065f46}.status-badge.rejected{background:#fee2e2;color:#991b1b}.candidate-action-row{display:flex;flex-wrap:wrap;gap:var(--space-sm);margin-top:var(--space-md)}.candidate-record-card{background:#ffffff08;border:1px solid #ffffff1f;border-radius:12px}.candidate-record-head{grid-gap:8px;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:10px;display:grid;gap:8px;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:10px;padding:8px 10px}.candidate-record-head p{font-size:.88rem;margin:0}.results-actions{display:flex;gap:var(--space-lg);justify-content:center}.results-actions .btn{font-size:1.05rem;min-width:200px;padding:var(--space-md) var(--space-lg)}@keyframes slideInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.result-header{flex-direction:column;gap:var(--space-sm);text-align:center}.candidate-header-info{margin-bottom:var(--space-md)}.score-display{gap:var(--space-md);justify-content:center;width:100%}.expand-icon{display:none}.result-details{display:flex;flex-direction:column}.candidate-record-head,.skills-analysis{grid-template-columns:1fr}.result-card.rank-1,.result-card.rank-2,.result-card.rank-3{border-left:none;border-top:3px solid}.result-card.rank-1{border-top-color:#10b981}.result-card.rank-2{border-top-color:#3b82f6}.result-card.rank-3{border-top-color:#f59e0b}}body.light .candidate-item,body.light .candidate-record-card,body.light .candidate-record-head,body.light .detail-section,body.light .recruiter-portal .portal-card,body.light .recruiter-portal .portal-header,body.light .result-card{-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:var(--shadow-soft)}body.light .candidate-item,body.light .candidate-record-card,body.light .candidate-record-head,body.light .candidates-list,body.light .detail-section,body.light .recruiter-portal .portal-card,body.light .recruiter-portal .portal-header,body.light .result-card{border-color:#e2e8f0}body.light .status-badge.pending{background:#fef9c3;color:#854d0e}:root,body.light{--primary:#7c3aed;--primary-dark:#6d28d9;--primary-light:#a855f7;--secondary:#38bdf8;--secondary-dark:#0ea5e9;--accent:#facc15;--success:#16a34a;--danger:#dc2626;--warning:#eab308;--dark:#0f172a;--light:#fff;--surface:#fff;--border:#e2e8f0;--text:#0f172a;--text-light:#64748b;--app-bg:radial-gradient(circle at 10% 12%,#a855f717,#0000 36%),radial-gradient(circle at 82% 18%,#38bdf814,#0000 38%),linear-gradient(145deg,#f8fafc,#fff);--surface-soft:#f8fafc;--surface-glass:#ffffffe0;--shadow-soft:0 8px 22px #0f172a14;--shadow-lg:0 14px 32px #0f172a24;--input-bg:#fff;--outline-btn:#cbd5e1;--outline-btn-hover-bg:#f1f5f9}body.dark{--primary:#7c3aed;--primary-dark:#6d28d9;--primary-light:#a855f7;--secondary:#38bdf8;--secondary-dark:#0ea5e9;--accent:#facc15;--success:#4ade80;--danger:#f87171;--warning:#facc15;--dark:#fff;--light:#0f172a;--surface:#ffffff0d;--border:#ffffff1a;--text:#fff;--text-light:#94a3b8;--app-bg:radial-gradient(circle at 12% 14%,#a855f733,#0000 38%),radial-gradient(circle at 86% 18%,#38bdf82e,#0000 42%),linear-gradient(135deg,#0f172a,#1e293b,#020617);--surface-soft:#ffffff14;--surface-glass:#ffffff0d;--shadow-soft:0 10px 30px #00000080;--shadow-lg:0 16px 42px #0009;--input-bg:#ffffff0a;--outline-btn:#ffffff42;--outline-btn-hover-bg:#ffffff14}:root{--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--font-main:"Inter",sans-serif;--font-display:"Poppins",sans-serif;--font-mono:"Consolas","Courier New",monospace;--transition:all 0.24s cubic-bezier(0.22,1,0.36,1)}*{box-sizing:border-box;margin:0;padding:0}body,html{background:radial-gradient(circle at 10% 12%,#a855f717,#0000 36%),radial-gradient(circle at 82% 18%,#38bdf814,#0000 38%),linear-gradient(145deg,#f8fafc,#fff);background:var(--app-bg);color:#0f172a;color:var(--text);font-family:Inter,sans-serif;font-family:var(--font-main);line-height:1.6}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background .35s ease,color .25s ease}h1,h2,h3,h4,h5,h6{color:#0f172a;color:var(--dark);font-family:Poppins,sans-serif;font-family:var(--font-display);font-weight:700;line-height:1.2}h1{font-size:2.5rem;margin-bottom:32px;margin-bottom:var(--space-xl)}h2{font-size:2rem;margin-bottom:24px;margin-bottom:var(--space-lg)}h3{font-size:1.5rem;margin-bottom:16px;margin-bottom:var(--space-md)}h4{font-size:1.25rem}h4,h5{margin-bottom:8px;margin-bottom:var(--space-sm)}h5{font-size:1.1rem}p{color:#0f172a;color:var(--text);margin-bottom:16px;margin-bottom:var(--space-md)}a{color:#38bdf8;color:var(--secondary);text-decoration:none;transition:all .24s cubic-bezier(.22,1,.36,1);transition:var(--transition)}a:hover{color:#0ea5e9;color:var(--secondary-dark);text-decoration:underline}code{background-color:#fff;background-color:var(--light);border-radius:4px;color:#0f172a;color:var(--dark);font-family:Consolas,Courier New,monospace;font-family:var(--font-mono);font-size:.9rem;padding:4px 8px;padding:var(--space-xs) var(--space-sm)}input,select,textarea{background:#fff;background:var(--input-bg);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:12px;color:#0f172a;color:var(--text);font-family:inherit;font-size:1rem;padding:11px 14px;transition:all .24s cubic-bezier(.22,1,.36,1);transition:var(--transition);width:100%}input:focus,select:focus,textarea:focus{border-color:#7c3aed;border-color:var(--primary);box-shadow:0 0 0 4px #a855f733;outline:none}textarea{font-family:inherit;resize:vertical}.btn{border:none;border-radius:14px;cursor:pointer;display:inline-block;font-size:1rem;font-weight:600;padding:8px 16px;padding:var(--space-sm) var(--space-md);text-align:center;text-decoration:none;transition:all .24s cubic-bezier(.22,1,.36,1);transition:var(--transition);white-space:nowrap}.btn:disabled{cursor:not-allowed;opacity:.5}.btn-primary{background:linear-gradient(135deg,#7c3aed,#a855f7);background:linear-gradient(135deg,var(--primary) 0,var(--primary-light) 100%);border:1px solid #fff3;color:#fff}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#6d28d9,#7c3aed);background:linear-gradient(135deg,var(--primary-dark) 0,var(--primary) 100%);box-shadow:0 0 0 1px #a855f759,0 12px 24px #6d28d973;transform:translateY(-2px)}.btn-secondary{background-color:initial;border:1px solid #cbd5e1;border:1px solid var(--outline-btn);color:#0f172a;color:var(--text)}.btn-secondary:hover:not(:disabled){background-color:#f1f5f9;background-color:var(--outline-btn-hover-bg);transform:translateY(-2px)}.btn-small{font-size:.9rem;padding:4px 8px;padding:var(--space-xs) var(--space-sm)}.message{animation:slideIn .3s ease;border-radius:10px;font-weight:500;margin:16px 0;margin:var(--space-md) 0;padding:16px;padding:var(--space-md)}.message.success{background-color:#16a34a2e;border:1px solid #86efac73;color:#86efac}.message.error{align-items:flex-start;background:#ff4d4f1f;border:1px solid #ff4d4f66;box-shadow:0 2px 10px #b91c1c14;color:#b91c1c;display:flex;gap:8px;opacity:1}.message.error:before{content:"⚠";font-size:.95rem;line-height:1.2;margin-top:1px}.glass-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffe0;background:var(--surface-glass);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:16px;box-shadow:0 8px 22px #0f172a14;box-shadow:var(--shadow-soft)}.glass-card-hover{transition:all .24s cubic-bezier(.22,1,.36,1);transition:var(--transition)}.glass-card-hover:hover{box-shadow:0 18px 38px #000000a6;transform:scale(1.03)}.custom-cursor-enabled{cursor:none}.custom-cursor-enabled *{cursor:none!important}.custom-cursor{background:#a855f73d;border:1px solid #ffffffbf;border-radius:2px;box-shadow:0 0 10px #a855f799;height:14px;left:-8px;pointer-events:none;position:fixed;top:-8px;transition:border-radius .24s ease,width .24s ease,height .24s ease;width:14px;z-index:9999}.custom-cursor.cursor-default{transform:translateZ(0) rotate(45deg) scale(1);transform:translate3d(var(--cursor-x,0),var(--cursor-y,0),0) rotate(45deg) scale(1)}.custom-cursor.cursor-hover{border-radius:4px;box-shadow:0 0 16px #a855f7cc;transform:translateZ(0) rotate(0deg) scale(1.2);transform:translate3d(var(--cursor-x,0),var(--cursor-y,0),0) rotate(0deg) scale(1.2)}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.container{margin:0 auto;max-width:1200px;padding:0 16px;padding:0 var(--space-md)}.text-center{text-align:center}.text-muted{color:#64748b;color:var(--text-light)}.mt-sm{margin-top:8px;margin-top:var(--space-sm)}.mt-md{margin-top:16px;margin-top:var(--space-md)}.mt-lg{margin-top:24px;margin-top:var(--space-lg)}.mb-sm{margin-bottom:8px;margin-bottom:var(--space-sm)}.mb-md{margin-bottom:16px;margin-bottom:var(--space-md)}.mb-lg{margin-bottom:24px;margin-bottom:var(--space-lg)}section{margin-bottom:48px;margin-bottom:var(--space-2xl)}
/*# sourceMappingURL=main.83b016ef.css.map*/