: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}html,body,#root{width:100%;margin:0;padding:0}body{display:block;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}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;background:#f5f5f5}.App{min-height:100vh}.navbar{display:flex;justify-content:space-between;align-items:center;padding:20px 60px;background:#fff;border-bottom:2px solid #e5e7eb}.logo{font-size:24px;font-weight:700;color:#2563eb}.nav-links{display:flex;gap:30px}.nav-links a{color:#6b7280;text-decoration:none;font-weight:500;cursor:pointer}.nav-links a:hover{color:#2563eb}.hero{text-align:center;padding:80px}.hero h1{font-size:48px;color:#1f2937;margin-bottom:20px}.hero p{font-size:20px;color:#6b7280;margin-bottom:40px}.upload-area{border:3px dashed #d1d5db;border-radius:12px;padding:60px;margin:40px 0;background:#fff;transition:all .3s ease}.upload-area.dragging{border-color:#2563eb;background:#eff6ff;transform:scale(1.02)}.upload-icon{width:80px;height:80px;background:#e5e7eb;border-radius:50%;margin:0 auto 20px;display:flex;align-items:center;justify-content:center;font-size:40px}.upload-area h3{margin-bottom:10px}.upload-area p{color:#6b7280;margin:15px 0;font-size:14px}.job-description-area{background:#fff;padding:30px;border-radius:12px;margin:20px 0;box-shadow:0 2px 4px #0000001a}.job-description-area h3{font-size:20px;color:#1f2937;margin-bottom:10px}.job-description-area p{color:#6b7280;font-size:14px;margin-bottom:15px}.job-description-input{width:100%;padding:15px;border:2px solid #d1d5db;border-radius:8px;font-size:14px;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;resize:vertical;transition:border-color .3s ease;background:#fff;color:#1f2937}.job-description-input:focus{outline:none;border-color:#2563eb}.job-description-input:disabled{background-color:#f3f4f6;cursor:not-allowed}.btn-primary{background:#2563eb;color:#fff;padding:15px 40px;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;margin-top:20px;display:inline-block;transition:all .3s ease}.btn-primary:hover{background:#1d4ed8}.btn-primary.disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.btn-secondary{background:#fff;color:#2563eb;padding:12px 30px;border:2px solid #2563eb;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer}.btn-secondary:hover{background:#eff6ff}.btn-upload-large{background:#10b981;color:#fff;padding:18px 50px;border:none;border-radius:8px;font-size:18px;font-weight:600;cursor:pointer;margin:20px auto;display:block;transition:all .3s ease}.btn-upload-large:hover{background:#059669;transform:translateY(-2px);box-shadow:0 4px 12px #10b9814d}.error-message{background:#fee2e2;color:#991b1b;padding:15px 20px;border-radius:8px;margin-top:20px;font-weight:500;border:1px solid #fecaca;display:flex;flex-direction:column;align-items:center;gap:10px}.success-message{background:#d1fae5;color:#065f46;padding:12px 20px;border-radius:8px;margin-top:20px;font-weight:500;border:1px solid #a7f3d0}.btn-retry{background-color:#2563eb;color:#fff;border:none;padding:10px 24px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:600;margin-top:8px;transition:all .3s ease}.btn-retry:hover{background-color:#1d4ed8;transform:translateY(-2px)}.loading-container{margin-top:30px;text-align:center;padding:20px}.spinner{border:4px solid #e5e7eb;border-top:4px solid #2563eb;border-radius:50%;width:50px;height:50px;animation:spin 1s linear infinite;margin:0 auto 20px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-message{color:#2563eb;font-size:16px;margin-top:10px}.loading-message strong{display:block;margin-bottom:8px;font-size:18px}.loading-message p{color:#6b7280;font-size:14px;margin:0}.analysis-results{text-align:center;padding:80px}.analysis-results h1{font-size:48px;color:#1f2937;margin-bottom:20px}.analysis-results>p{font-size:20px;color:#6b7280;margin-bottom:40px}.results-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;text-align:left}.results-header h2{font-size:32px;color:#1f2937}.score-card{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;padding:40px;border-radius:16px;text-align:center;margin-bottom:40px}.score-circle{width:150px;height:150px;border-radius:50%;background:#fff3;margin:0 auto 20px;display:flex;align-items:center;justify-content:center;flex-direction:column}.score-number{font-size:48px;font-weight:700}.score-label{font-size:16px;opacity:.9}.job-match-card{background:linear-gradient(135deg,#10b981,#059669);color:#fff;padding:30px;border-radius:16px;margin-bottom:30px;text-align:center}.job-match-card h3{font-size:24px;margin-bottom:20px}.match-percentage{margin-bottom:25px}.match-circle{width:120px;height:120px;border-radius:50%;background:#fff3;margin:0 auto 15px;display:flex;align-items:center;justify-content:center}.match-number{font-size:40px;font-weight:700}.match-percentage p{font-size:16px;opacity:.9}.keyword-match-section{background:#fff;color:#1f2937;padding:20px;border-radius:8px;margin-bottom:15px;text-align:left}.keyword-match-section h4{font-size:16px;margin-bottom:12px;color:#1f2937}.keyword-tags{display:flex;flex-wrap:wrap;gap:10px}.keyword-tag{padding:8px 16px;border-radius:20px;font-size:14px;font-weight:500;display:inline-block;transition:all .3s ease}.matching-tag{background:#d1fae5;color:#065f46;border:1px solid #10b981}.matching-tag:hover{background:#a7f3d0}.missing-tag{background:#fee2e2;color:#991b1b;border:1px solid #ef4444}.missing-tag:hover{background:#fecaca}.sections-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-bottom:30px}.section-card{background:#fff;padding:25px;border-radius:12px;border-left:4px solid #d1d5db;box-shadow:0 2px 4px #0000001a;text-align:left}.section-card h3{font-size:20px;color:#1f2937;margin-bottom:10px}.section-score{font-weight:700;color:#2563eb;margin-bottom:15px}.section-card p{color:#6b7280;line-height:1.6}.ats-card{background:#f9fafb;padding:30px;border-radius:12px;text-align:center;margin-bottom:30px}.ats-card h3{font-size:24px;color:#1f2937;margin-bottom:15px}.ats-score{font-size:48px;font-weight:700;color:#2563eb}.improvements-card{background:#fef3c7;padding:30px;border-radius:12px;margin-bottom:30px;text-align:left}.improvements-card h3{font-size:24px;color:#92400e;margin-bottom:20px}.improvements-card ul{list-style:none;padding:0}.improvements-card li{background:#fff;padding:15px;border-radius:8px;margin-bottom:10px;color:#1f2937;border-left:3px solid #f59e0b}.features-list{display:flex;justify-content:center;gap:30px;color:#6b7280;font-size:14px;margin-top:20px}.history-view{text-align:center;padding:80px}.history-view h1{font-size:48px;color:#1f2937;margin-bottom:20px}.history-view>p{font-size:20px;color:#6b7280;margin-bottom:40px}.history-header{display:flex;justify-content:center;margin-bottom:30px}.history-list{display:flex;flex-direction:column;gap:15px}.history-item{background:#fff;padding:20px 25px;border-radius:12px;border-left:4px solid #2563eb;box-shadow:0 2px 4px #0000001a;cursor:pointer;transition:all .3s ease}.history-item:hover{transform:translateY(-2px);box-shadow:0 4px 8px #00000026}.history-item-header{display:flex;justify-content:space-between;align-items:center}.history-item-header h3{font-size:18px;color:#1f2937;margin:0}.history-score{font-size:24px;font-weight:700;color:#2563eb}.empty-history{text-align:center;padding:60px 20px;background:#fff;border-radius:12px;margin-top:40px}.empty-history p{font-size:18px;color:#6b7280;margin-bottom:20px}.api-status{background:#fff;padding:20px;margin:40px auto;max-width:600px;border-radius:12px;box-shadow:0 2px 8px #0000001a;text-align:center}.api-status p{margin:0;color:#6b7280}.api-status strong{color:#1f2937}.features-page{text-align:center;padding:80px}.features-page h1{font-size:48px;color:#1f2937;margin-bottom:20px}.features-page>p{font-size:20px;color:#6b7280;margin-bottom:60px}.features-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-bottom:80px}.feature-card{background:#fff;padding:40px 30px;border-radius:12px;box-shadow:0 2px 8px #0000001a;transition:all .3s ease}.feature-card:hover{transform:translateY(-5px);box-shadow:0 8px 16px #00000026}.feature-icon{font-size:48px;margin-bottom:20px}.feature-card h3{font-size:22px;color:#1f2937;margin-bottom:15px}.feature-card p{font-size:16px;color:#6b7280;line-height:1.6}.cta-section{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;padding:60px;border-radius:16px;margin-top:40px}.cta-section h2{font-size:32px;margin-bottom:30px}.cta-section .btn-primary{background:#fff;color:#2563eb;font-size:18px;padding:18px 50px}.cta-section .btn-primary:hover{background:#f3f4f6}.builder-page{padding:40px 60px;max-width:1600px;margin:0 auto}.builder-header{text-align:center;margin-bottom:30px}.builder-header h1{font-size:36px;color:#1f2937;margin-bottom:10px}.builder-header p{font-size:18px;color:#6b7280}.builder-progress{max-width:600px;margin:0 auto 40px}.progress-bar-container{background:#e5e7eb;border-radius:10px;height:12px;overflow:hidden;margin-bottom:10px}.progress-bar-fill{background:linear-gradient(90deg,#2563eb,#10b981);height:100%;border-radius:10px;transition:width .5s ease}.progress-text{font-size:14px;color:#6b7280;text-align:center;display:block}.builder-layout{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start}.builder-form-section{background:#fff;border-radius:16px;box-shadow:0 4px 20px #00000014;overflow:hidden}.builder-tabs{display:flex;background:#f8fafc;border-bottom:2px solid #e5e7eb;overflow-x:auto}.builder-tab{flex:1;padding:16px 12px;background:transparent;border:none;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:6px;transition:all .3s ease;border-bottom:3px solid transparent;margin-bottom:-2px;min-width:100px}.builder-tab:hover{background:#f1f5f9}.builder-tab.active{background:#fff;border-bottom-color:#2563eb}.tab-number{width:24px;height:24px;background:#e5e7eb;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;color:#6b7280}.builder-tab.active .tab-number{background:#2563eb;color:#fff}.tab-icon{font-size:20px}.tab-label{font-size:13px;font-weight:500;color:#6b7280}.builder-tab.active .tab-label{color:#2563eb}.builder-form-content{padding:30px}.form-tab-content{animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.form-tab-header{margin-bottom:30px}.form-tab-header h2{font-size:24px;color:#1f2937;margin-bottom:8px}.form-tab-header p{font-size:14px;color:#6b7280;margin-bottom:15px}.form-group{margin-bottom:20px}.form-group label{display:block;font-size:14px;font-weight:600;color:#374151;margin-bottom:8px}.required{color:#ef4444}.form-group input,.form-group textarea{width:100%;padding:14px 16px;border:2px solid #e5e7eb;border-radius:10px;font-size:15px;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;transition:all .3s ease;background:#fafafa}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#2563eb;background:#fff;box-shadow:0 0 0 4px #2563eb1a}.form-group input::placeholder,.form-group textarea::placeholder{color:#9ca3af}.form-group textarea{resize:vertical;min-height:100px}.char-count{font-size:12px;color:#9ca3af;text-align:right;margin-top:6px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-row.three-col{grid-template-columns:1fr 1fr 1fr}.entry-card{background:#f8fafc;border:2px solid #e5e7eb;border-radius:12px;padding:24px;margin-bottom:20px;transition:all .3s ease}.entry-card:hover{border-color:#cbd5e1}.entry-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;border-bottom:1px solid #e5e7eb}.entry-number{font-size:14px;font-weight:600;color:#2563eb}.btn-add{background:#10b981;color:#fff;padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-add:hover{background:#059669;transform:translateY(-1px)}.btn-remove{background:transparent;color:#ef4444;padding:8px 16px;border:2px solid #ef4444;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-remove:hover{background:#fef2f2}.form-nav{display:flex;justify-content:space-between;align-items:center;margin-top:30px;padding-top:20px;border-top:1px solid #e5e7eb}.btn-back{background:transparent;color:#6b7280;padding:14px 28px;border:2px solid #e5e7eb;border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-back:hover{background:#f3f4f6;border-color:#d1d5db}.btn-next{background:#2563eb;color:#fff;padding:14px 28px;border:none;border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-next:hover{background:#1d4ed8;transform:translateY(-1px)}.btn-download-main{background:linear-gradient(135deg,#10b981,#059669);color:#fff;padding:16px 32px;border:none;border-radius:10px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-download-main:hover{transform:translateY(-2px);box-shadow:0 6px 20px #10b98166}.builder-preview-section{background:#fff;border-radius:16px;box-shadow:0 4px 20px #00000014;overflow:hidden;position:sticky;top:20px;max-height:calc(100vh - 40px);display:flex;flex-direction:column}.preview-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;background:#f8fafc;border-bottom:2px solid #e5e7eb}.preview-header h3{font-size:18px;color:#1f2937;margin:0}.btn-download-small{background:#2563eb;color:#fff;padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-download-small:hover{background:#1d4ed8}.resume-paper{padding:40px;overflow-y:auto;flex:1;background:#fff}.resume-header{text-align:center;padding-bottom:20px;border-bottom:2px solid #1f2937;margin-bottom:24px}.resume-name{font-size:28px;font-weight:700;color:#1f2937;margin-bottom:8px;letter-spacing:1px}.resume-contact{font-size:13px;color:#4b5563;margin-bottom:4px}.resume-links{font-size:12px;color:#6b7280}.resume-section{margin-bottom:24px}.resume-section-title{font-size:14px;font-weight:700;color:#1f2937;text-transform:uppercase;letter-spacing:1.5px;border-bottom:1px solid #e5e7eb;padding-bottom:6px;margin-bottom:12px}.resume-text{font-size:13px;color:#374151;line-height:1.6;margin-bottom:8px}.resume-text strong{color:#1f2937}.resume-entry{margin-bottom:16px}.resume-entry-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:4px}.resume-entry-header strong{font-size:14px;color:#1f2937}.resume-date{font-size:12px;color:#6b7280;font-style:italic}.resume-location{font-size:12px;color:#6b7280;margin-bottom:6px}.resume-description{font-size:13px;color:#4b5563;line-height:1.6;white-space:pre-wrap}.resume-empty{text-align:center;padding:60px 20px;color:#9ca3af}.resume-empty p{font-size:16px;font-style:italic}.keywords-card{background:#fff;padding:30px;border-radius:12px;margin-bottom:30px;box-shadow:0 2px 4px #0000001a}.keyword-section{margin-bottom:25px}.keyword-section:last-child{margin-bottom:0}.keyword-section h4{font-size:18px;color:#1f2937;margin-bottom:15px}.skill-tag{background:#dbeafe;color:#1e40af;border:1px solid #93c5fd}.skill-tag:hover{background:#bfdbfe}.verb-tag{background:#fef3c7;color:#92400e;border:1px solid #fcd34d}.verb-tag:hover{background:#fde68a}.strengths-weaknesses-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:30px}.strengths-card{background:#ecfdf5;padding:25px;border-radius:12px;border-left:4px solid #10b981}.strengths-card h3{font-size:20px;color:#065f46;margin-bottom:15px}.strengths-card ul{list-style:none;padding:0;margin:0}.strengths-card li{padding:10px 15px;background:#fff;border-radius:8px;margin-bottom:10px;color:#1f2937;font-size:14px}.strengths-card li:last-child{margin-bottom:0}.weaknesses-card{background:#fef2f2;padding:25px;border-radius:12px;border-left:4px solid #ef4444}.weaknesses-card h3{font-size:20px;color:#991b1b;margin-bottom:15px}.weaknesses-card ul{list-style:none;padding:0;margin:0}.weaknesses-card li{padding:10px 15px;background:#fff;border-radius:8px;margin-bottom:10px;color:#1f2937;font-size:14px}.weaknesses-card li:last-child{margin-bottom:0}.quick-wins-card{background:#f0fdf4;padding:30px;border-radius:12px;margin-bottom:30px;border-left:4px solid #22c55e}.quick-wins-card h3{font-size:24px;color:#166534;margin-bottom:5px}.card-subtitle{font-size:14px;color:#6b7280;margin-bottom:20px}.quick-wins-card ul{list-style:none;padding:0}.quick-wins-card li{background:#fff;padding:15px;border-radius:8px;margin-bottom:10px;color:#1f2937;border-left:3px solid #22c55e}.ats-tips-card{background:#eff6ff;padding:30px;border-radius:12px;margin-bottom:30px;border-left:4px solid #2563eb}.ats-tips-card h3{font-size:24px;color:#1e40af;margin-bottom:20px}.ats-tips-card ul{list-style:none;padding:0}.ats-tips-card li{background:#fff;padding:15px;border-radius:8px;margin-bottom:10px;color:#1f2937;border-left:3px solid #2563eb}@media(max-width:768px){.strengths-weaknesses-grid{grid-template-columns:1fr}}@media(max-width:1200px){.builder-layout{grid-template-columns:1fr}.builder-preview-section{position:relative;top:0;max-height:none}.form-row.three-col{grid-template-columns:1fr 1fr}}@media(max-width:768px){.builder-page{padding:20px}.form-row,.form-row.three-col{grid-template-columns:1fr}.builder-tabs{flex-wrap:nowrap;overflow-x:auto}.builder-tab{min-width:80px;padding:12px 8px}.tab-label{font-size:11px}}
