:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.resume-suggestions{background:#fff;border-radius:12px;padding:20px;height:100%;overflow-y:auto;box-shadow:0 2px 8px #00000014}.upload-box{text-align:center;padding:30px 20px}.upload-box h3{font-size:1.2rem;color:#0f172a;margin-bottom:8px}.upload-box p{color:#64748b;margin-bottom:20px}.career-name{color:#667eea;font-weight:600}.file-input-wrapper{margin:25px 0}.file-input{display:none}.file-label{display:inline-block;padding:15px 30px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:8px;cursor:pointer;font-weight:600;transition:all .3s ease}.file-label:hover{transform:translateY(-2px);box-shadow:0 8px 20px #667eea66}.file-name{color:#10b981;font-size:.9rem;margin-top:10px;font-weight:500}.btn-analyze{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:12px 30px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;margin-top:15px}.btn-analyze:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px #667eea66}.btn-analyze:disabled{opacity:.7;cursor:not-allowed}.error-msg{color:#ef4444;font-size:.9rem;margin-top:10px}.results-box{animation:slideUp .3s ease}.btn-upload-new{background:#f1f5f9;border:1px solid #e2e8f0;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:.9rem;color:#475569;transition:all .3s ease;margin-bottom:20px}.btn-upload-new:hover{background:#e2e8f0;color:#0f172a}.ats-section{background:linear-gradient(135deg,#f0f9ff,#f5f3ff);padding:20px;border-radius:10px;margin-bottom:20px;border:1px solid #dbeafe}.ats-score{display:flex;align-items:center;gap:20px}.score-circle{width:100px;height:100px;border-radius:50%;border:4px solid;display:flex;flex-direction:column;align-items:center;justify-content:center;flex-shrink:0}.score-number{font-size:2rem;font-weight:700;color:#0f172a}.score-circle small{font-size:.85rem;color:#64748b}.score-info h4{margin:0 0 5px;color:#0f172a;font-size:1rem}.score-level{margin:0;font-weight:600;font-size:1.1rem}.improvements-section{margin-bottom:20px}.improvements-section h4{color:#0f172a;font-size:1.1rem;margin-bottom:8px}.subtitle{color:#64748b;font-size:.9rem;margin-bottom:15px}.suggestions-list{display:flex;flex-direction:column;gap:15px}.suggestion-item{background:#f8f9fa;border-left:4px solid #667eea;padding:15px;border-radius:8px;transition:all .3s ease}.suggestion-item:hover{background:#f1f5f9;border-left-color:#764ba2;transform:translate(4px)}.suggestion-header{display:flex;align-items:center;gap:10px;margin-bottom:10px}.suggestion-icon{font-size:1.3rem}.suggestion-header h5{margin:0;color:#0f172a;font-size:.95rem;font-weight:600}.suggestion-description{color:#475569;font-size:.9rem;margin:8px 0;line-height:1.5}.suggestion-example{background:#fff;padding:10px;border-radius:6px;margin:10px 0;border:1px solid #e2e8f0}.example-label{color:#64748b;font-size:.8rem;font-weight:600;margin:0 0 5px;text-transform:uppercase}.example-text{color:#0f172a;font-size:.85rem;font-style:italic;margin:0;padding:8px;background:#f8f9fa;border-radius:4px;font-family:Monaco,Menlo,monospace}.suggestion-benefit{display:flex;align-items:center;gap:8px;color:#059669;font-size:.85rem;margin-top:10px}.benefit-icon{font-size:1rem}.suggestion-benefit p{margin:0}.skills-gap-section{background:#f0fdf4;padding:15px;border-radius:8px;margin-bottom:20px;border:1px solid #dcfce7}.skills-gap-section h4{color:#15803d;margin-bottom:12px;font-size:1rem}.skills-list{display:flex;flex-wrap:wrap;gap:8px}.skill-badge{background:#22c55e;color:#fff;padding:6px 12px;border-radius:20px;font-size:.85rem;font-weight:500}.quick-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:20px;padding-top:20px;border-top:1px solid #e2e8f0}.stat{text-align:center;padding:12px;background:#f8f9fa;border-radius:8px}.stat-value{font-size:1.5rem;font-weight:700;color:#667eea;margin:0}.stat-label{color:#64748b;font-size:.8rem;margin:5px 0 0;font-weight:500}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media(max-width:768px){.ats-score{flex-direction:column;text-align:center}.quick-stats{grid-template-columns:1fr}.resume-suggestions{padding:15px}}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{height:100%;width:100%}body{background:#f8f9fa;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:#1a202c}.app{width:100%;height:100vh;display:flex;flex-direction:column;overflow:hidden}.header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:32px 40px;box-shadow:0 4px 12px #667eea26;flex-shrink:0}.header-content{display:flex;justify-content:space-between;align-items:center;max-width:100%}.header-text h1{font-size:2.2rem;margin-bottom:6px;font-weight:700;letter-spacing:-.5px}.header-text p{font-size:1rem;opacity:.95;font-weight:300}.header-logo{display:flex;align-items:center;justify-content:center;width:60px;height:60px;background:#ffffff1a;border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s ease}.header-logo:hover{background:#fff3;transform:scale(1.05)}.main-content{flex:1;display:grid;gap:0;overflow:hidden;transition:grid-template-columns .3s ease}.main-content.single{grid-template-columns:1fr}.main-content.split{grid-template-columns:1fr 1fr}.left-section{display:flex;flex-direction:column;gap:20px;padding:32px 40px;overflow-y:auto;overflow-x:hidden}.right-section{display:flex;flex-direction:column;gap:20px;padding:32px 40px;overflow-y:auto;overflow-x:hidden;border-left:1px solid #e2e8f0;background:#f8f9fa}.left-section::-webkit-scrollbar,.right-section::-webkit-scrollbar{width:8px}.left-section::-webkit-scrollbar-track,.right-section::-webkit-scrollbar-track{background:transparent}.left-section::-webkit-scrollbar-thumb,.right-section::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.left-section::-webkit-scrollbar-thumb:hover,.right-section::-webkit-scrollbar-thumb:hover{background:#94a3b8}.card{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 8px #00000014;border:1px solid #e2e8f0;flex-shrink:0}.card h2{font-size:1.4rem;color:#0f172a;margin-bottom:16px;font-weight:600}.card h3{font-size:1rem;color:#0f172a;margin-bottom:8px}.card h4{font-size:.9rem;color:#475569;margin-bottom:6px}.input-card{animation:slideIn .3s ease;flex-shrink:0}.input-textarea{width:100%;padding:14px;border:2px solid #e2e8f0;border-radius:8px;font-size:.95rem;font-family:inherit;resize:none;margin-bottom:16px;min-height:120px;transition:all .3s ease;line-height:1.5}.input-textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 4px #667eea1a}.input-textarea:disabled{background:#f8f9fa;cursor:not-allowed}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:11px 22px;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #667eea4d;width:100%}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.btn-primary:disabled{opacity:.7;cursor:not-allowed}.btn-apply{display:inline-block;background:#667eea;color:#fff;padding:8px 14px;border-radius:6px;text-decoration:none;font-size:.85rem;font-weight:600;margin-top:10px;transition:all .3s ease}.btn-apply:hover{background:#5568d3;transform:translate(3px)}.error-card{background:#fee;border:1px solid #fca5a5;animation:slideIn .3s ease}.error-text{color:#991b1b;margin:0;font-weight:500}.loading-card{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 40px;text-align:center;animation:slideIn .3s ease}.spinner{width:40px;height:40px;border:4px solid #e2e8f0;border-top-color:#667eea;border-radius:50%;margin-bottom:16px;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.analysis-card{animation:slideIn .3s ease}.analysis-content{line-height:1.7;color:#475569;font-size:.95rem}.analysis-content p{margin-bottom:12px}.analysis-content li{margin-left:20px;margin-bottom:8px}.section-title{font-size:1.2rem;color:#667eea;margin:18px 0 10px;border-bottom:2px solid #667eea;padding-bottom:8px}.subsection-title{font-size:1rem;color:#764ba2;margin:14px 0 8px}.spacer{height:6px}.careers-card{animation:slideIn .3s ease}.careers-list{display:flex;flex-direction:column;gap:10px}.career-item{display:flex;align-items:center;gap:12px;padding:12px;background:#f8f9fa;border-radius:8px;border-left:4px solid #667eea;transition:all .3s ease}.career-item:hover{background:#f1f5f9;transform:translate(4px)}.career-rank{background:#667eea;color:#fff;width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.85rem;flex-shrink:0}.career-info h4{margin:0;font-size:.95rem}.career-score{font-size:.8rem;color:#667eea;font-weight:600}.jobs-card{animation:slideIn .4s ease}.jobs-count{background:#dbeafe;color:#1e40af;padding:6px 10px;border-radius:6px;font-size:.8rem;font-weight:600;margin-bottom:14px;display:inline-block}.jobs-list{display:flex;flex-direction:column;gap:12px}.job-item{padding:14px;background:#f8f9fa;border-radius:8px;border:1px solid #e2e8f0;transition:all .3s ease}.job-item:hover{border-color:#667eea;box-shadow:0 4px 12px #667eea1a;transform:translateY(-2px)}.job-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px;gap:8px}.job-title{margin:0;font-size:.95rem;color:#0f172a;flex:1;font-weight:600}.job-rank{background:#dbeafe;color:#1e40af;padding:3px 8px;border-radius:4px;font-size:.7rem;font-weight:600;white-space:nowrap}.job-company{font-weight:600;color:#1e293b;margin:6px 0 3px;font-size:.9rem}.job-location{color:#64748b;font-size:.85rem;margin:3px 0}.job-salary{color:#059669;font-weight:600;margin:3px 0;font-size:.9rem}.job-posted{color:#94a3b8;font-size:.8rem;margin:3px 0}.no-jobs{text-align:center;padding:40px 20px;color:#64748b}@media(max-width:1024px){.main-content.split{grid-template-columns:1fr}.right-section{border-left:none;border-top:1px solid #e2e8f0}}@media(max-width:768px){.header{padding:20px 16px}.header-content{flex-direction:column;gap:12px}.header-text h1{font-size:1.6rem}.header-text p{font-size:.9rem}.left-section,.right-section{padding:16px;gap:16px}.input-textarea{min-height:100px}}.followup-section{margin-top:24px;padding-top:24px;border-top:2px solid #e2e8f0}.followup-section h3{font-size:1rem;color:#0f172a;margin-bottom:14px;font-weight:600}.followup-buttons{display:flex;flex-direction:column;gap:10px}.btn-followup{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:10px 16px;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .3s ease;text-align:left;box-shadow:0 2px 8px #667eea33}.btn-followup:hover:not(:disabled){transform:translate(4px);box-shadow:0 4px 12px #667eea4d;background:linear-gradient(135deg,#5568d3,#6b3d8f)}.btn-followup:disabled{opacity:.7;cursor:not-allowed}.btn-followup:active:not(:disabled){transform:translate(2px)}.main-content{display:grid;grid-template-columns:1fr;gap:20px;padding:20px 40px}.main-content.split{grid-template-columns:1.2fr 1fr}.left-section{display:flex;flex-direction:column;gap:20px}.right-section{display:flex;flex-direction:column;gap:20px;position:sticky;top:20px;height:fit-content;max-height:calc(100vh - 120px)}@media(max-width:1200px){.main-content.split{grid-template-columns:1fr}.right-section{position:static;height:auto;max-height:none}}@media(max-width:768px){.main-content{padding:15px 20px}}
