.app{width:100%;min-height:100vh;display:flex;justify-content:center;align-items:center}.container{background:#fff;border-radius:24px;box-shadow:0 20px 60px #0000004d;width:100%;max-width:700px;overflow:hidden;display:flex;flex-direction:column}.header{background:#2c3e50;color:#fff;padding:40px 30px;text-align:center}.header h1{font-size:32px;margin-bottom:8px;font-weight:700}.header p{font-size:16px;opacity:.9}.main-content{padding:40px 30px;flex:1}.error-banner{background:#fee;color:#c33;padding:12px 16px;border-radius:8px;margin-bottom:20px;display:flex;align-items:center;gap:8px;border-left:4px solid #c33}.step-card{animation:fadeIn .3s ease-in}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.step-card h2{font-size:24px;margin-bottom:8px;color:#333}.step-description{color:#666;margin-bottom:24px;font-size:15px}.file-upload{display:block;cursor:pointer}.file-upload input[type=file]{display:none}.file-upload-content{border:2px dashed #34495e;border-radius:12px;padding:40px 20px;text-align:center;transition:all .3s;background:#f8f9fa}.file-upload-content:hover{border-color:#2c3e50;background:#f1f3f5}.file-icon{font-size:48px;display:block;margin-bottom:12px}.input-group{display:flex;flex-direction:column;gap:12px}.job-link-input{width:100%;padding:14px 16px;border:2px solid #e0e0e0;border-radius:12px;font-size:15px;transition:border-color .3s;outline:none}.experience-textarea{width:100%;padding:14px 16px;border:2px solid #e0e0e0;border-radius:12px;font-size:15px;font-family:inherit;transition:border-color .3s;outline:none;resize:vertical}.experience-textarea:focus{border-color:#34495e}.action-buttons{display:flex;flex-direction:column;gap:12px;margin-top:24px}.job-link-input:focus{border-color:#34495e}.btn{padding:14px 24px;border:none;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s;outline:none;min-height:48px;display:flex;align-items:center;justify-content:center;text-align:center;white-space:nowrap}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:#34495e;color:#fff}.btn-primary:hover:not(:disabled){background:#2c3e50;transform:translateY(-2px);box-shadow:0 4px 12px #2c3e504d}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-large{width:100%;padding:16px 24px;font-size:18px}.btn-success{background:#27ae60;color:#fff}.btn-success:hover{background:#229954;transform:translateY(-2px);box-shadow:0 4px 12px #27ae604d}.btn-success:active{transform:translateY(0)}.btn-secondary{background:#f0f0f0;color:#333;width:100%}.btn-secondary:hover:not(:disabled){background:#e0e0e0;transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.btn-secondary:active:not(:disabled){background:#d0d0d0;transform:translateY(0)}.btn-secondary:disabled{opacity:.6;cursor:not-allowed}.loading{text-align:center;color:#667eea;margin-top:16px;font-weight:500}.loading-spinner{text-align:center;padding:60px 20px}.spinner{border:4px solid #f3f3f3;border-top:4px solid #34495e;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-spinner p{color:#666;font-size:16px}.progress-loader{text-align:center;padding:60px 30px;animation:fadeIn .3s ease-in}.progress-header{margin-bottom:40px}.progress-icon{font-size:64px;margin-bottom:16px;animation:bounce 2s ease-in-out infinite}.progress-header h2{font-size:24px;color:#333;margin:0;font-weight:600}@keyframes bounce{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-10px) scale(1.05)}}.progress-bar-container{margin:30px 0;position:relative}.progress-bar{width:100%;height:12px;background:#e0e0e0;border-radius:10px;overflow:hidden;position:relative;box-shadow:inset 0 2px 4px #0000001a}.progress-fill{height:100%;background:linear-gradient(90deg,#667eea,#764ba2,#667eea);background-size:200% 100%;border-radius:10px;transition:width .3s ease-out;animation:shimmer 2s linear infinite;box-shadow:0 2px 8px #667eea66;position:relative;overflow:hidden}.progress-fill:after{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);animation:slide 1.5s ease-in-out infinite}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes slide{0%{left:-100%}to{left:100%}}.progress-percentage{position:absolute;top:-30px;right:0;font-size:14px;font-weight:600;color:#667eea}.progress-message{color:#666;font-size:16px;margin-top:24px;font-weight:500;min-height:24px;animation:fadeIn .3s ease-in}.email-sending-message{background:#e3f2fd;border-radius:12px;padding:24px;margin:24px 0;border-left:4px solid #2196f3;text-align:center;animation:fadeIn .3s ease-in}.email-sending-icon{font-size:48px;margin-bottom:12px;animation:pulse 2s ease-in-out infinite}.email-sending-text{color:#1976d2;font-size:18px;font-weight:600;margin:0}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.8}}.email-sent-icon{font-size:48px;margin-bottom:12px;animation:checkmark .5s ease-out}.email-sent-detail{color:#666;font-size:14px;margin-top:8px}@keyframes checkmark{0%{transform:scale(0) rotate(45deg)}50%{transform:scale(1.2) rotate(45deg)}to{transform:scale(1) rotate(0)}}.score-display{display:flex;justify-content:center;margin:30px 0}.score-circle{width:150px;height:150px;border-radius:50%;background:#34495e;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;box-shadow:0 4px 12px #2c3e5033}.score-value{font-size:48px;font-weight:700;line-height:1}.score-label{font-size:14px;opacity:.9;margin-top:4px}.feedback-section{background:linear-gradient(135deg,#fff5f5,#fff9f5);border-radius:12px;padding:24px;margin:24px 0;border-left:5px solid #e74c3c;box-shadow:0 4px 12px #e74c3c26}.feedback-section.experience-feedback-section{margin-bottom:32px;margin-top:0}.feedback-section h3{font-size:20px;margin-bottom:16px;color:#2c3e50;font-weight:700;display:flex;align-items:center;gap:8px}.feedback-content{color:#2c3e50;line-height:1.8;white-space:pre-wrap;font-size:15px;font-weight:500}.callback-increase-note{background:linear-gradient(135deg,#e8f5e9,#f1f8e9);border-left:4px solid #4caf50;border-radius:8px;padding:16px 20px;margin:20px 0 24px;color:#2e7d32;font-size:14px;font-weight:500;line-height:1.6;box-shadow:0 2px 8px #4caf501a}.results-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:24px 0}.result-card{background:#34495e;color:#fff;padding:24px;border-radius:12px;text-align:center}.result-card.improvement{background:#27ae60}.result-label{font-size:14px;opacity:.9;margin-bottom:8px}.result-value{font-size:32px;font-weight:700}.ats-results-subtle{display:flex;flex-direction:column;gap:12px;margin:24px 0;padding:16px 20px;background:#f8f9fa;border-radius:8px;border-left:3px solid #e0e0e0}.ats-result-item{display:flex;justify-content:space-between;align-items:center;color:#666;font-size:15px}.ats-result-label{font-weight:500;color:#888}.ats-result-value{font-weight:600;color:#555}.interview-odds-message{background:linear-gradient(135deg,#fff3e0,#ffe0b2);border-left:4px solid #ff9800;border-radius:8px;padding:20px 24px;margin:24px 0;text-align:center}.interview-odds-text{color:#e65100;font-size:16px;font-weight:500;line-height:1.6;margin:0}.interview-odds-text strong{color:#bf360c;font-weight:700;font-size:18px}.download-section{margin:24px 0}.footer{background:#f8f9fa;padding:20px;text-align:center;color:#666;font-size:14px}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000bf;display:flex;justify-content:center;align-items:center;z-index:1000;padding:16px;overflow-y:auto;-webkit-overflow-scrolling:touch}.modal-content{background:#fff;border-radius:16px;padding:24px;max-width:500px;width:100%;max-height:calc(100vh - 32px);overflow-y:auto;box-shadow:0 20px 60px #00000080;position:relative;margin:auto;-webkit-overflow-scrolling:touch}.modal-content h3{font-size:22px;margin-bottom:8px;color:#333;line-height:1.3}.modal-description{color:#666;margin-bottom:24px;font-size:14px;line-height:1.5}.modal-content label{display:block;margin-bottom:6px;font-weight:600;color:#333;font-size:14px}.form-input{width:100%;padding:14px 16px;border:2px solid #e0e0e0;border-radius:8px;font-size:16px;transition:border-color .3s;outline:none;box-sizing:border-box;min-height:48px;-webkit-appearance:none}.form-input:focus{border-color:#34495e}.input-hint{display:block;margin-top:6px;font-size:12px;color:#888;font-style:italic;line-height:1.4}.email-sent-message{background:#e8f5e9;border-radius:12px;padding:20px;margin:24px 0;border-left:4px solid #27ae60}.email-sent-text{color:#2c3e50;font-size:16px;margin-bottom:8px}.email-sent-text strong{color:#27ae60}.email-help-text{color:#666;font-size:14px;margin-top:8px}.email-help-text a{color:#34495e;text-decoration:underline}@media (max-width: 768px){.modal-content{padding:20px;max-width:90%}.modal-content h3{font-size:20px}.btn-large{font-size:16px;padding:14px 20px}}@media (max-width: 600px){.container{border-radius:0;min-height:100vh;max-width:100%}.header{padding:24px 16px}.header h1{font-size:22px}.header p{font-size:14px}.main-content{padding:24px 16px}.results-grid{grid-template-columns:1fr;gap:12px}.result-card{padding:20px}.result-value{font-size:28px}.modal-content{padding:20px 16px;border-radius:12px;max-width:95%}.modal-overlay{padding:16px 8px 8px;align-items:flex-start}.modal-content h3{font-size:18px;margin-bottom:12px}.modal-description{font-size:13px;margin-bottom:20px}.form-input{font-size:16px;padding:12px 14px}.btn{padding:14px 20px;font-size:15px;min-height:44px}.btn-large{padding:14px 20px;font-size:16px}.action-buttons{gap:10px}.step-card h2{font-size:20px}.step-description{font-size:14px}.score-circle{width:120px;height:120px}.score-value{font-size:40px}.email-sent-message{padding:16px;margin:20px 0}.email-sent-text{font-size:14px}.email-help-text{font-size:13px}}@media (max-width: 400px){.header h1{font-size:20px}.modal-content{padding:16px 12px}.modal-content h3{font-size:16px}.btn{padding:12px 16px;font-size:14px}.form-input{padding:12px}}@media (hover: none) and (pointer: coarse){.btn{min-height:44px;min-width:44px}.form-input{min-height:44px}}.modal-close-btn{position:absolute;top:16px;right:16px;background:transparent;border:none;font-size:32px;color:#999;cursor:pointer;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .3s;padding:0;line-height:1;z-index:10}.modal-close-btn:hover{background:#f0f0f0;color:#333;transform:rotate(90deg)}.modal-close-btn:active{transform:rotate(90deg) scale(.9)}.feedback-modal{position:relative;animation:modalSlideIn .3s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.star-rating-container{text-align:center;margin:24px 0}.star-rating{display:flex;justify-content:center;gap:8px;margin-bottom:12px;flex-wrap:wrap}.star-btn{background:none;border:none;cursor:pointer;padding:8px;font-size:48px;line-height:1;transition:all .2s;transform:scale(1);filter:grayscale(100%) opacity(.4)}.star-btn:hover{transform:scale(1.15);filter:grayscale(0%) opacity(1)}.star-btn.star-filled{filter:grayscale(0%) opacity(1);transform:scale(1.1);animation:starPulse .3s ease-out}.star-btn.star-empty{filter:grayscale(100%) opacity(.4)}@keyframes starPulse{0%{transform:scale(1)}50%{transform:scale(1.3)}to{transform:scale(1.1)}}.star-btn:active{transform:scale(.95)}.rating-text{font-size:18px;font-weight:600;color:#34495e;margin-top:12px;animation:fadeIn .3s ease-in}.feedback-textarea{width:100%;padding:14px 16px;border:2px solid #e0e0e0;border-radius:8px;font-size:15px;font-family:inherit;transition:border-color .3s;outline:none;resize:vertical;min-height:100px;box-sizing:border-box}.feedback-textarea:focus{border-color:#34495e}.feedback-thankyou{text-align:center;padding:20px 0;animation:fadeIn .5s ease-in}.thankyou-emoji{font-size:64px;margin-bottom:16px;animation:emojiBounce .6s ease-out}@keyframes emojiBounce{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-10px) scale(1.1)}}.thankyou-message{color:#666;font-size:16px;margin-top:12px;line-height:1.6}.feedback-thankyou h3{margin-bottom:8px;color:#333}@media (max-width: 768px){.star-btn{font-size:40px;padding:6px}.rating-text{font-size:16px}.thankyou-emoji{font-size:56px}}@media (max-width: 600px){.modal-close-btn{top:12px;right:12px;font-size:28px;width:36px;height:36px}.star-rating{gap:6px}.star-btn{font-size:36px;padding:4px}.rating-text{font-size:15px;margin-top:10px}.feedback-textarea{font-size:16px;padding:12px 14px;min-height:90px}.thankyou-emoji{font-size:48px}.thankyou-message{font-size:14px}}@media (max-width: 400px){.star-btn{font-size:32px}.rating-text{font-size:14px}.thankyou-emoji{font-size:40px}}.star-btn:focus{outline:2px solid #34495e;outline-offset:2px;border-radius:4px}.modal-close-btn:focus{outline:2px solid #34495e;outline-offset:2px}.shareable-asset-section{margin:32px 0;padding:24px;background:#f8f9fa;border-radius:12px;text-align:center}.shareable-asset-section h3{margin:0 0 16px;font-size:24px;color:#2c3e50}.shareable-image-container{margin:20px 0;display:flex;justify-content:center;align-items:center}.shareable-image{max-width:100%;height:auto;border-radius:8px;box-shadow:0 4px 12px #0000001a}.share-buttons-group{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:20px}.share-buttons-group .btn{min-width:140px;padding:10px 16px;font-size:14px}@media (max-width: 600px){.share-buttons-group{flex-direction:column}.share-buttons-group .btn{width:100%;min-width:unset}.shareable-asset-section{padding:16px}.shareable-image{width:100%}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#ecf0f1;min-height:100vh;display:flex;justify-content:center;align-items:center;padding:20px}#root{width:100%;max-width:1200px}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}
