.mstep-jobfit-container{max-width:800px;margin:0 auto;padding:20px;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;line-height:1.6;color:#333;background:#fff;border-radius:8px;box-shadow:0 2px 10px rgba(0,0,0,0.1);}.mstep-jobfit-container *{box-sizing:border-box;}.jobfit-screen{display:none;animation:fadeIn 0.3s ease-in-out;}.jobfit-screen.active{display:block;}@keyframes fadeIn{from{opacity:0;transform:translateY(10px);}to{opacity:1;transform:translateY(0);}}.progress-container{margin:20px 0 30px;padding:20px;background:#f8f9fa;border-radius:8px;border:1px solid #e9ecef;}.progress-info{display:flex;justify-content:center;align-items:center;margin-bottom:10px;font-size:14px;font-weight:500;color:#495057;}.step-indicators{display:flex;gap:20px;align-items:center;justify-content:center;flex-wrap:wrap;}.step-indicator{padding:8px 16px;border-radius:20px;font-size:14px;font-weight:500;color:#6c757d;background:#f8f9fa;border:2px solid transparent;transition:all 0.3s ease;cursor:default;white-space:nowrap;}.step-indicator[data-step="1"].active{color:#fff;background:linear-gradient(135deg,#ff9800 0%,#ff6f00 100%);border-color:#ff9800;font-weight:600;box-shadow:0 2px 8px rgba(255,152,0,0.4);transform:scale(1.05);}.step-indicator[data-step="2"].active{color:#fff;background:linear-gradient(135deg,#9c27b0 0%,#7b1fa2 100%);border-color:#9c27b0;font-weight:600;box-shadow:0 2px 8px rgba(156,39,176,0.4);transform:scale(1.05);}.step-indicator[data-step="3"].active{color:#fff;background:linear-gradient(135deg,#2196f3 0%,#1976d2 100%);border-color:#2196f3;font-weight:600;box-shadow:0 2px 8px rgba(33,150,243,0.4);transform:scale(1.05);}.progress-step-counter{display:flex;gap:4px;}.progress-step{font-size:16px;font-weight:600;color:#007cba;}.progress-percentage{font-size:14px;color:#6c757d;}.progress-bar{width:100%;height:12px;background:#e9ecef;border-radius:6px;overflow:hidden;position:relative;box-shadow:inset 0 1px 3px rgba(0,0,0,0.1);}.progress-fill{height:100%;background:linear-gradient(90deg,#007cba 0%,#0099d4 100%);border-radius:6px;transition:width 0.4s ease-out,background 0.3s ease;position:relative;}.progress-fill.step-1{background:linear-gradient(90deg,#ff9800 0%,#ff6f00 100%);}.progress-fill.step-2{background:linear-gradient(90deg,#9c27b0 0%,#7b1fa2 100%);}.progress-fill.step-3{background:linear-gradient(90deg,#2196f3 0%,#1976d2 100%);}.progress-fill::after{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,0.3) 50%,transparent 100%);animation:shimmer 2s infinite;}@keyframes shimmer{0%{transform:translateX(-100%);}100%{transform:translateX(100%);}}.question-container{margin:30px 0;padding:25px;background:#fff;border:1px solid #e9ecef;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,0.05);}.question-number{font-size:14px;font-weight:600;color:#007cba;margin-bottom:8px;text-transform:uppercase;letter-spacing:0.5px;}.question-text{font-size:18px;font-weight:500;color:#212529;margin-bottom:20px;line-height:1.5;}.likert-scale{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;margin:20px 0;padding:15px;background:#f8f9fa;border-radius:8px;border:1px solid #e9ecef;}.likert-labels{display:flex;justify-content:space-between;width:100%;margin-bottom:15px;font-size:14px;color:#495057;}.likert-label-start{font-weight:500;color:#dc3545;}.likert-label-end{font-weight:500;color:#28a745;}.likert-options{display:flex;justify-content:space-between;align-items:center;width:100%;max-width:400px;margin:0 auto;}.likert-option{display:flex;flex-direction:column;align-items:center;position:relative;}.likert-option input[type="radio"]{appearance:none;-webkit-appearance:none;-moz-appearance:none;width:24px;height:24px;border:2px solid #6c757d;border-radius:50%;background:#fff;cursor:pointer;transition:all 0.2s ease;position:relative;}.likert-option input[type="radio"]:hover{border-color:#007cba;transform:scale(1.1);}.likert-option input[type="radio"]:checked{border-color:#007cba;background:#007cba;box-shadow:0 0 0 3px rgba(0,124,186,0.2);}.likert-option input[type="radio"]:checked::after{content:'';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:8px;height:8px;background:#fff;border-radius:50%;}.likert-option input[type="radio"]:focus{outline:none;box-shadow:0 0 0 3px rgba(0,124,186,0.3);}.likert-option label{margin-top:8px;font-size:12px;font-weight:500;color:#6c757d;cursor:pointer;text-align:center;min-width:30px;}.likert-option input[type="radio"]:checked + label{color:#007cba;font-weight:600;}.btn{display:inline-block;padding:12px 24px;border:none;border-radius:6px;cursor:pointer;text-decoration:none;font-size:16px;font-weight:500;text-align:center;transition:all 0.2s ease;position:relative;overflow:hidden;min-width:120px;}.btn:focus{outline:none;box-shadow:0 0 0 3px rgba(0,124,186,0.3);}.btn:disabled{opacity:0.6;cursor:not-allowed;transform:none !important;}.btn:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 4px 8px rgba(0,0,0,0.15);}.btn:not(:disabled):active{transform:translateY(0);box-shadow:0 2px 4px rgba(0,0,0,0.15);}.btn-primary{background:linear-gradient(135deg,#007cba 0%,#0099d4 100%);color:#fff;border:1px solid #007cba;}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#005a87 0%,#007cba 100%);}.btn-secondary{background:#6c757d;color:#fff;border:1px solid #6c757d;}.btn-secondary:hover:not(:disabled){background:#5a6268;border-color:#5a6268;}.btn-success{background:linear-gradient(135deg,#28a745 0%,#34ce57 100%);color:#fff;border:1px solid #28a745;}.btn-success:hover:not(:disabled){background:linear-gradient(135deg,#218838 0%,#28a745 100%);}.btn-outline{background:transparent;color:#007cba;border:2px solid #007cba;}.btn-outline:hover:not(:disabled){background:#007cba;color:#fff;}.btn-large{padding:16px 32px;font-size:18px;min-width:160px;}.btn-small{padding:8px 16px;font-size:14px;min-width:80px;}.btn-group{display:flex;gap:12px;justify-content:center;margin:30px 0;flex-wrap:wrap;}.question-navigation{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:30px 0;flex-wrap:nowrap;}.question-navigation .btn{flex:0 1 auto;min-width:120px;}#next-question-btn,#next-step-btn,#submit-test-btn{margin-left:auto;}.form-group{margin-bottom:20px;}.form-label{display:block;margin-bottom:8px;font-weight:500;color:#495057;font-size:14px;}.form-control{width:100%;padding:12px 16px;border:2px solid #e9ecef;border-radius:6px;font-size:16px;transition:border-color 0.2s ease,box-shadow 0.2s ease;background:#fff;}.form-control:focus{outline:none;border-color:#007cba;box-shadow:0 0 0 3px rgba(0,124,186,0.1);}.form-control:invalid{border-color:#dc3545;}.form-control:invalid:focus{box-shadow:0 0 0 3px rgba(220,53,69,0.1);}.form-text{font-size:12px;color:#6c757d;margin-top:4px;}.form-error{color:#dc3545;font-size:14px;margin-top:8px;display:flex;align-items:center;gap:4px;}.form-error::before{content:'⚠';font-size:16px;}.loading-screen{text-align:center;padding:60px 20px;}.spinner{border:4px solid #f3f3f3;border-top:4px solid #007cba;border-radius:50%;width:50px;height:50px;animation:spin 1s linear infinite;margin:0 auto 20px;}@keyframes spin{0%{transform:rotate(0deg);}100%{transform:rotate(360deg);}}.loading-text{font-size:16px;color:#6c757d;margin-top:15px;}.error-screen{text-align:center;padding:60px 20px;color:#dc3545;}.error-icon{font-size:48px;margin-bottom:20px;color:#dc3545;}.error-message{font-size:18px;font-weight:500;margin-bottom:15px;}.error-details{font-size:14px;color:#6c757d;margin-bottom:30px;}.results-container{padding:20px 0;}.results-header{text-align:center;margin-bottom:40px;padding:30px;background:linear-gradient(135deg,#007cba 0%,#0099d4 100%);color:#fff;border-radius:8px;}.results-title{font-size:28px;font-weight:600;margin-bottom:10px;color:#fff !important;}.results-subtitle{font-size:16px;opacity:0.9;}.job-card{background:#fff;border:1px solid #e9ecef;border-radius:8px;padding:25px;margin-bottom:20px;box-shadow:0 2px 4px rgba(0,0,0,0.05);transition:transform 0.2s ease,box-shadow 0.2s ease;}.job-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,0.1);}.job-match-score{font-size:24px;font-weight:700;color:#28a745;text-align:right;margin-bottom:10px;}.job-title{font-size:20px;font-weight:600;color:#212529;margin-bottom:10px;}.job-description{color:#6c757d;margin-bottom:15px;line-height:1.5;}.jobfit-attribution{margin-top:50px;padding:25px;background:#f8f9fa;border-radius:8px;border:1px solid #e9ecef;font-size:14px;color:#495057;}.jobfit-attribution details summary{cursor:pointer;font-weight:600;color:#007cba;padding:5px 0;outline:none;}.jobfit-attribution details summary:focus{text-decoration:underline;}.jobfit-attribution ul{margin:15px 0 5px;padding-left:20px;}.jobfit-attribution li{margin-bottom:5px;}.jobfit-attribution a{color:#007cba;text-decoration:none;}.jobfit-attribution a:hover{text-decoration:underline;}.question-item{background:#fff;border:1px solid #e9ecef;border-radius:8px;padding:25px;margin-bottom:20px;transition:border-color 0.2s ease;}.question-item.missing-answer{border-color:#dc3545;background:#fff5f5;animation:shake 0.5s ease-in-out;}@keyframes shake{0%,100%{transform:translateX(0);}25%{transform:translateX(-5px);}75%{transform:translateX(5px);}}.question-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;padding-bottom:10px;border-bottom:1px solid #e9ecef;}.question-number{font-size:14px;font-weight:600;color:#007cba;background:#e7f3ff;padding:4px 8px;border-radius:4px;}.question-type{font-size:12px;font-weight:500;color:#6c757d;text-transform:uppercase;letter-spacing:0.5px;}.question-text-content{font-size:18px;font-weight:500;color:#212529;margin:0 0 20px 0;line-height:1.5;}.scale-labels{display:flex;justify-content:space-between;align-items:center;width:100%;margin-bottom:12px;font-size:14px;font-weight:500;}.scale-label-left{color:#dc3545;}.scale-label-right{color:#28a745;}.scale-options{display:flex;justify-content:space-between;align-items:center;max-width:400px;margin:0 auto;gap:10px;}.scale-option{display:flex;flex-direction:column;align-items:center;cursor:pointer;position:relative;flex:1;}.scale-option .scale-input{appearance:none;-webkit-appearance:none;-moz-appearance:none;width:24px;height:24px;border:2px solid #6c757d;border-radius:50%;background:#fff;cursor:pointer;transition:all 0.2s ease;position:relative;margin:0;}.scale-option .scale-input:hover{border-color:#007cba;transform:scale(1.1);}.scale-option .scale-input:checked{border-color:#007cba;background:#007cba;box-shadow:0 0 0 3px rgba(0,124,186,0.2);}.scale-option .scale-input:checked::after{content:'';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:8px;height:8px;background:#fff;border-radius:50%;}.scale-option .scale-input:focus{outline:none;box-shadow:0 0 0 3px rgba(0,124,186,0.3);}.scale-value{margin-top:8px;font-size:12px;font-weight:600;color:#6c757d;text-align:center;min-width:20px;}.scale-option .scale-input:checked + .scale-value{color:#007cba;}.error-container{margin-bottom:20px;position:relative;z-index:10;}.error-message{display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:6px;font-size:14px;font-weight:500;margin-bottom:10px;position:relative;}.error-message.error-validation{background:#fff5f5;border:1px solid #f5c6cb;color:#721c24;}.error-message.error-network{background:#fff3cd;border:1px solid #ffeaa7;color:#856404;}.error-message.error-general{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24;}.error-icon{font-size:16px;flex-shrink:0;}.error-text{flex:1;line-height:1.4;}.error-close{background:none;border:none;font-size:18px;cursor:pointer;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color 0.2s ease;}.error-close:hover{background:rgba(0,0,0,0.1);}.error-close:focus{outline:2px solid currentColor;outline-offset:2px;}.question-item .error-message{margin-top:15px;margin-bottom:0;font-size:13px;padding:8px 12px;background:#fff5f5;border:1px solid #f5c6cb;color:#721c24;border-radius:4px;}.progress-fill[aria-valuenow]{position:relative;}.progress-fill[aria-valuenow]::before{content:attr(aria-valuenow)'%';position:absolute;right:8px;top:50%;transform:translateY(-50%);color:#fff;font-size:10px;font-weight:600;text-shadow:0 1px 2px rgba(0,0,0,0.3);}.progress-step{display:flex;align-items:center;gap:8px;}.progress-step::before{content:'📋';font-size:16px;}@media (prefers-contrast: high){.mstep-jobfit-container{border:2px solid #000;}.btn-primary{background:#000;border-color:#000;}.likert-option input[type="radio"]:checked{background:#000;border-color:#000;}.step-indicator[data-step="1"].active,.step-indicator[data-step="2"].active,.step-indicator[data-step="3"].active{background:#000;border-color:#000;color:#fff;}.progress-fill.step-1,.progress-fill.step-2,.progress-fill.step-3{background:#000;}}@media (prefers-reduced-motion: reduce){*{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;}.step-indicator{transition:none;}.step-indicator[data-step="1"].active,.step-indicator[data-step="2"].active,.step-indicator[data-step="3"].active{transform:none;}.progress-fill{transition:width 0.4s ease-out;}}.mstep-jobfit-container *:focus{outline:2px solid #007cba;outline-offset:2px;}.skip-link{position:absolute;top:-40px;left:6px;background:#007cba;color:#fff;padding:8px;text-decoration:none;border-radius:4px;z-index:1000;}.skip-link:focus{top:6px;}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}@media (max-width: 768px){.mstep-jobfit-container{margin:10px;padding:15px;border-radius:6px;}.question-text{font-size:16px;}.likert-scale{padding:12px;}.likert-options{max-width:100%;}.likert-option input[type="radio"]{width:20px;height:20px;}.likert-option label{font-size:11px;min-width:25px;}.btn{padding:14px 20px;font-size:16px;min-width:100px;}.btn-large{padding:18px 28px;font-size:18px;min-width:140px;}.btn-group{flex-direction:column;align-items:center;}.btn-group .btn{width:100%;max-width:300px;}.question-navigation{justify-content:space-between;flex-wrap:nowrap;}.question-navigation .btn{flex:0 1 auto;width:auto;max-width:none;min-width:100px;font-size:14px;padding:10px 16px;}.progress-info{margin-bottom:8px;}.step-indicators{gap:12px;}.step-indicator{padding:6px 12px;font-size:13px;}.results-title{font-size:24px;}.job-card{padding:20px;}}@media (max-width: 480px){.mstep-jobfit-container{margin:5px;padding:12px;}.progress-container{padding:15px;margin:15px 0 20px;}.step-indicators{gap:8px;}.step-indicator{padding:6px 10px;font-size:12px;}.question-container{padding:20px;margin:20px 0;}.question-text{font-size:15px;line-height:1.4;}.likert-scale{flex-direction:column;align-items:stretch;gap:12px;}.scale-options{order:2;width:100%;}.likert-labels{order:1;margin-bottom:0px;font-size:13px;}.likert-options{justify-content:space-around;gap:8px;}.likert-option input[type="radio"]{width:18px;height:18px;}.likert-option label{font-size:10px;min-width:20px;}.btn{padding:16px 24px;font-size:16px;width:100%;max-width:none;}.btn-large{padding:20px 32px;font-size:18px;}.question-navigation{justify-content:space-between;flex-wrap:nowrap;gap:8px;}.question-navigation .btn{flex:0 1 auto;width:auto;max-width:none;min-width:90px;font-size:13px;padding:12px 14px;}.results-header{padding:20px;}.results-title{font-size:20px;}.results-subtitle{font-size:14px;}.job-card{padding:15px;}.job-match-score{font-size:20px;text-align:center;margin-bottom:15px;}.job-title{font-size:18px;text-align:center;}}@media (min-width: 1200px){.mstep-jobfit-container{max-width:900px;padding:30px;}.question-container{padding:30px;}.question-text{font-size:20px;}.likert-options{max-width:500px;}.likert-option input[type="radio"]{width:28px;height:28px;}.likert-option label{font-size:14px;min-width:35px;}}@media print{.mstep-jobfit-container{box-shadow:none;border:1px solid #000;}.btn,.progress-container{display:none;}.jobfit-screen{display:block !important;}.job-card{break-inside:avoid;border:1px solid #000;margin-bottom:20px;}}.results-container{padding:20px 0;}.results-header{text-align:center;margin-bottom:30px;}.results-header h2{color:#2c5aa0;margin-bottom:10px;}.profile-summary{margin-bottom:30px;}.profile-summary h3{color:#333;border-bottom:2px solid #2c5aa0;padding-bottom:10px;margin-bottom:20px;}.score-section{margin-bottom:25px;padding:20px;background:#f8f9fa;border-radius:8px;border-left:4px solid #2c5aa0;}.score-section h4{color:#2c5aa0;margin-bottom:15px;font-size:1.1em;}.score-grid{display:grid;gap:12px;}.score-item{display:grid;grid-template-columns:1fr 2fr auto;align-items:center;gap:15px;padding:8px 0;}.score-label{font-weight:500;color:#555;min-width:120px;}.score-bar{height:20px;background:#e9ecef;border-radius:10px;overflow:hidden;position:relative;}.score-fill{height:100%;background:linear-gradient(90deg,#28a745 0%,#20c997 50%,#17a2b8 100%);border-radius:10px;transition:width 0.8s ease-in-out;position:relative;}.score-fill::after{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,0.3) 50%,transparent 100%);animation:shimmer 2s infinite;}@keyframes shimmer{0%{transform:translateX(-100%);}100%{transform:translateX(100%);}}.score-value{font-weight:bold;color:#2c5aa0;min-width:40px;text-align:right;}.results-note{background:#fff3cd;border:1px solid #ffeaa7;border-radius:6px;padding:15px;margin:20px 0;}.results-note p{margin:5px 0;color:#856404;}.results-actions{text-align:center;margin-top:30px;}.email-results-section{background:#f8f9fa;border-radius:8px;padding:25px;margin-bottom:30px;border:1px solid #dee2e6;}.email-results-section h3{margin:0 0 10px 0;color:#2c5aa0;font-size:20px;font-weight:600;}.email-results-section > p{margin:0 0 20px 0;color:#666;font-size:14px;}.email-form{max-width:500px;margin:0 auto;}.form-group{margin-bottom:15px;text-align:left;}.form-group label{display:block;margin-bottom:5px;color:#495057;font-weight:500;font-size:14px;}.form-control{width:100%;padding:12px 15px;border:2px solid #ced4da;border-radius:5px;font-size:16px;transition:all 0.3s ease;background:#fff;}.form-control:focus{outline:none;border-color:#2c5aa0;box-shadow:0 0 0 3px rgba(44,90,160,0.1);}.form-control::placeholder{color:#adb5bd;}.form-text{display:block;margin-top:5px;color:#6c757d;font-size:13px;}.status-message{margin:15px 0;padding:12px 15px;border-radius:5px;font-size:14px;display:none;}.status-message.success{background:#d4edda;color:#155724;border:1px solid #c3e6cb;}.status-message.error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb;}.status-message.info{background:#d1ecf1;color:#0c5460;border:1px solid #bee5eb;}.btn-block{width:100%;display:block;}.btn-loading{display:none;}.btn-loading .spinner{display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,0.3);border-top-color:#fff;border-radius:50%;animation:spin 0.6s linear infinite;}@keyframes spin{to{transform:rotate(360deg);}}@media (max-width: 768px){.score-item{grid-template-columns:1fr;gap:8px;text-align:left;}.score-label{min-width:auto;}.score-value{text-align:left;}.score-section{padding:15px;}.email-results-section{padding:20px 15px;}}@media (max-width: 480px){.mstep-jobfit-container{padding:15px;margin:10px;}.score-section{padding:12px;}.score-bar{height:16px;}.email-results-section{padding:15px;}.email-results-section h3{font-size:18px;}.form-control{font-size:14px;padding:10px 12px;}}.recommended-jobs-section{margin:30px 0;}.recommended-jobs-section h3{color:#2c5aa0;border-bottom:2px solid #2c5aa0;padding-bottom:10px;margin-bottom:25px;font-size:1.3em;}.job-summary-list{background:#f8f9fa;border-radius:12px;padding:20px;margin-bottom:30px;border:1px solid #e9ecef;}.job-summary-items{list-style:none;padding:0;margin:0;display:grid;gap:10px;}.job-summary-item{list-style:none;}.summary-job-link{display:flex;align-items:center;gap:15px;padding:12px 15px;background:#fff;border-radius:8px;border:1px solid #e9ecef;transition:all 0.2s ease;text-decoration:none;color:inherit;}.summary-job-link:hover{background:#f0f7ff;border-color:#2c5aa0;transform:translateX(5px);}.summary-job-link:hover .summary-job-title{color:#2c5aa0;}.summary-rank{background:linear-gradient(135deg,#2c5aa0 0%,#007cba 100%);color:#fff;width:35px;height:35px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:bold;font-size:14px;flex-shrink:0;box-shadow:0 2px 6px rgba(44,90,160,0.3);}.summary-job-title{font-weight:600;font-size:1em;color:#333;transition:color 0.2s ease;flex:1;}.summary-match-score{font-weight:600;color:#28a745;font-size:0.95em;white-space:nowrap;margin-left:auto;}.job-details-section{margin-top:30px;}.job-details-section h4{color:#2c5aa0;border-bottom:2px solid #e9ecef;padding-bottom:10px;margin-bottom:25px;font-size:1.2em;}.job-matches{display:grid;gap:20px;}.job-card{background:#fff;border:1px solid #e9ecef;border-radius:12px;padding:25px;box-shadow:0 2px 8px rgba(0,0,0,0.08);transition:all 0.3s ease;position:relative;overflow:hidden;}.job-card:hover{transform:translateY(-3px);box-shadow:0 8px 25px rgba(0,0,0,0.15);border-color:#2c5aa0;}.job-card-header{display:flex;align-items:flex-start;gap:15px;margin-bottom:20px;padding-bottom:15px;border-bottom:1px solid #f0f0f0;}.job-rank{background:linear-gradient(135deg,#2c5aa0 0%,#007cba 100%);color:#fff;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:bold;font-size:18px;flex-shrink:0;box-shadow:0 2px 8px rgba(44,90,160,0.3);}.job-title{flex:1;}.job-title h4{margin:0 0 8px 0;color:#2c5aa0;font-size:1.4em;font-weight:600;line-height:1.3;}.match-score{text-align:right;flex-shrink:0;}.score-value{font-size:2em;font-weight:bold;color:#28a745;line-height:1;display:block;}.score-label{font-size:0.85em;color:#6c757d;font-weight:500;margin-top:2px;}.job-card-body{display:grid;gap:20px;}.job-description{color:#555;line-height:1.6;font-size:0.95em;}.match-breakdown{background:#f8f9fa;padding:15px;border-radius:8px;border-left:4px solid #28a745;}.match-breakdown h5{margin:0 0 15px 0;color:#2c5aa0;font-size:1em;font-weight:600;}.similarity-scores{display:grid;gap:15px;}.similarity-item{display:flex;flex-direction:column;gap:8px;}.similarity-info{display:flex;justify-content:space-between;align-items:center;}.similarity-label{font-size:0.9em;color:#6c757d;font-weight:500;}.similarity-value{font-weight:bold;color:#2c5aa0;font-size:1.1em;}.similarity-bar{height:8px;background:#e9ecef;border-radius:4px;overflow:hidden;position:relative;}.similarity-fill{height:100%;border-radius:4px;transition:width 0.8s ease-in-out;position:relative;}.similarity-fill.interest{background:linear-gradient(90deg,#ffc107 0%,#fd7e14 100%);}.similarity-fill.values{background:linear-gradient(90deg,#6f42c1 0%,#e83e8c 100%);}.similarity-fill::after{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,0.3) 50%,transparent 100%);animation:shimmer 2s infinite;}.reason-tags{margin:15px 0;}.reason-tags h5{margin:0 0 15px 0;color:#2c5aa0;font-size:1em;font-weight:600;}.reason-tags-list{display:flex;flex-direction:column;gap:12px;}.reason-tag-item{background:#fff;border:1px solid #e9ecef;border-radius:8px;padding:12px;transition:all 0.2s ease;}.reason-tag-item:hover{transform:translateY(-1px);box-shadow:0 2px 8px rgba(0,0,0,0.1);}.reason-tag-content{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;}.reason-tag-text{font-size:0.9em;font-weight:500;color:#333;}.reason-tag-percentage{font-size:0.85em;font-weight:600;color:#666;}.reason-tag-bar{height:6px;background:#f8f9fa;border-radius:3px;overflow:hidden;}.reason-tag-fill{height:100%;border-radius:3px;transition:width 0.3s ease;}.reason-tag-item.interest .reason-tag-text{color:#e65100;}.reason-tag-item.interest .reason-tag-fill{background:linear-gradient(90deg,#ff9800 0%,#f57c00 100%);}.reason-tag-item.values .reason-tag-text{color:#4a148c;}.reason-tag-item.values .reason-tag-fill{background:linear-gradient(90deg,#9c27b0 0%,#7b1fa2 100%);}.reason-tag-item.personality .reason-tag-text{color:#1976d2;}.reason-tag-item.personality .reason-tag-fill{background:linear-gradient(90deg,#2196f3 0%,#1976d2 100%);}.reason-tag-item.general .reason-tag-text{color:#424242;}.reason-tag-item.general .reason-tag-fill{background:linear-gradient(90deg,#757575 0%,#424242 100%);}.tags{display:flex;flex-wrap:wrap;gap:8px;}.reason-tag{background:linear-gradient(135deg,#e3f2fd 0%,#bbdefb 100%);color:#1565c0;padding:6px 12px;border-radius:20px;font-size:0.85em;font-weight:500;border:1px solid #90caf9;transition:all 0.2s ease;}.reason-tag.interest{background:linear-gradient(135deg,#fff3e0 0%,#ffcc02 100%);color:#e65100;border-color:#ffb74d;}.reason-tag.values{background:linear-gradient(135deg,#f3e5f5 0%,#ce93d8 100%);color:#4a148c;border-color:#ba68c8;}.reason-tag:hover{transform:translateY(-1px);box-shadow:0 2px 8px rgba(0,0,0,0.15);}.key-skills,.main-tasks,.skills-to-learn,.interview-questions,.self-pr-template{background:#fff;border:1px solid #e9ecef;border-radius:8px;padding:15px;}.key-skills h5,.main-tasks h5,.skills-to-learn h5,.interview-questions h5,.self-pr-template h5{margin:0 0 12px 0;color:#2c5aa0;font-size:1em;font-weight:600;display:flex;align-items:center;gap:8px;}.key-skills h5::before{content:'🛠️';font-size:1.2em;}.main-tasks h5::before{content:'📋';font-size:1.2em;}.skills-to-learn h5::before{content:'📚';font-size:1.2em;}.interview-questions h5::before{content:'💬';font-size:1.2em;}.self-pr-template h5::before{content:'✨';font-size:1.2em;}.key-skills ul,.main-tasks ul,.skills-to-learn ul,.interview-questions ul{margin:0;padding-left:20px;list-style-type:none;}.key-skills li,.main-tasks li,.skills-to-learn li,.interview-questions li{position:relative;margin-bottom:8px;color:#555;line-height:1.4;padding-left:15px;}.key-skills li::before,.main-tasks li::before,.skills-to-learn li::before,.interview-questions li::before{content:'•';color:#2c5aa0;font-weight:bold;position:absolute;left:0;}.pr-template{background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;padding:15px;font-style:italic;color:#555;line-height:1.6;margin:10px 0 0 0;}@media (max-width: 768px){.job-summary-list{padding:15px;}.summary-job-link{padding:10px 12px;}.summary-rank{width:30px;height:30px;font-size:13px;}.summary-job-title{font-size:0.95em;}.summary-match-score{font-size:0.9em;}.job-card{padding:20px;}.job-card-header{flex-direction:column;align-items:center;text-align:center;gap:12px;}.job-rank{width:35px;height:35px;font-size:16px;}.job-title h4{font-size:1.2em;}.score-value{font-size:1.8em;}.similarity-scores{gap:12px;}.similarity-bar{height:6px;}.tags{justify-content:center;}.reason-tag{font-size:0.8em;padding:5px 10px;}.reason-tags-list{gap:10px;}.reason-tag-item{padding:10px;}.reason-tag-content{margin-bottom:6px;}.reason-tag-text{font-size:0.85em;}.reason-tag-percentage{font-size:0.8em;}}@media (max-width: 480px){.job-summary-list{padding:12px;}.summary-job-link{flex-wrap:wrap;padding:10px;gap:10px;}.summary-rank{width:28px;height:28px;font-size:12px;}.summary-job-title{font-size:0.9em;flex-basis:100%;order:2;}.summary-match-score{font-size:0.85em;order:3;margin-left:0;}.job-card{padding:15px;margin-bottom:15px;}.job-rank{width:30px;height:30px;font-size:14px;}.job-title h4{font-size:1.1em;}.score-value{font-size:1.6em;}.match-breakdown{padding:12px;}.key-skills,.main-tasks,.skills-to-learn,.interview-questions,.self-pr-template{padding:12px;}.pr-template{padding:12px;font-size:0.9em;}}@keyframes slideInUp{from{opacity:0;transform:translateY(30px);}to{opacity:1;transform:translateY(0);}}.job-card{animation:slideInUp 0.6s ease-out;}.job-card:nth-child(1){animation-delay:0.1s;}.job-card:nth-child(2){animation-delay:0.2s;}.job-card:nth-child(3){animation-delay:0.3s;}.job-card:nth-child(4){animation-delay:0.4s;}.job-card:nth-child(5){animation-delay:0.5s;}@media (prefers-reduced-motion: reduce){.job-card{animation:none;}}@media (prefers-contrast: high){.job-card{border:2px solid #000;}.job-rank{background:#000;color:#fff;}.reason-tag{border:2px solid #000;background:#fff;color:#000;}.reason-tag-item{border:2px solid #000;background:#fff;}.reason-tag-text{color:#000;}.reason-tag-fill{background:#000 !important;}.score-fill{background:#000;}}.error-message.error-calculation{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24;}.error-content{flex:1;display:flex;flex-direction:column;gap:8px;}.error-retry{align-self:flex-start;background-color:rgba(0,0,0,0.1);border:1px solid rgba(0,0,0,0.2);color:inherit;padding:4px 12px;border-radius:4px;font-size:12px;cursor:pointer;transition:background-color 0.2s;}.error-retry:hover{background-color:rgba(0,0,0,0.15);}.error-retry:focus{outline:2px solid currentColor;outline-offset:2px;}.missing-answer{border:2px solid #dc3545 !important;background-color:#fff5f5 !important;animation:shake 0.5s ease-in-out;position:relative;}.missing-answer .question-text{color:#dc3545 !important;font-weight:600;}.missing-answer .likert-scale{border:1px solid #dc3545;border-radius:6px;background-color:rgba(220,53,69,0.05);}.missing-answer .error-message{margin-top:8px;padding:8px 12px;font-size:12px;background-color:#f8d7da;border-color:#f5c6cb;color:#721c24;border-radius:4px;animation:none;}@keyframes shake{0%,100%{transform:translateX(0);}25%{transform:translateX(-5px);}75%{transform:translateX(5px);}}@keyframes slideDown{from{opacity:0;transform:translateY(-10px);}to{opacity:1;transform:translateY(0);}}.error-container .error-message{animation:slideDown 0.3s ease-out;}.loading-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background-color:rgba(255,255,255,0.9);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:999;border-radius:inherit;}.loading-spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #007cba;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:15px;}.loading-text{color:#666;font-size:14px;font-weight:500;}@keyframes spin{0%{transform:rotate(0deg);}100%{transform:rotate(360deg);}}.validation-summary{background:#fff3cd;border:1px solid #ffeaa7;border-radius:6px;padding:15px;margin:15px 0;}.validation-summary h4{color:#856404;margin:0 0 10px 0;font-size:1em;}.validation-summary ul{margin:0;padding-left:20px;color:#856404;}.validation-summary li{margin-bottom:5px;}.error-message.error-network{background:#d1ecf1;border:1px solid #bee5eb;color:#0c5460;}.error-message.error-network .error-icon{color:#17a2b8;}.error-message.error-calculation .error-icon{color:#dc3545;}.error-message.error-general .error-icon{color:#dc3545;}.error-message.error-validation .error-icon{color:#856404;}.error-message:focus-within{outline:2px solid currentColor;outline-offset:2px;}@media (prefers-contrast: high){.missing-answer{border:3px solid #000 !important;background-color:#fff !important;}.missing-answer .question-text{color:#000 !important;}.error-message{border:2px solid #000;background:#fff;color:#000;}.error-retry{border:2px solid #000;background:#fff;color:#000;}}@media (prefers-reduced-motion: reduce){.missing-answer{animation:none;}.error-container .error-message{animation:none;}.loading-spinner{animation:none;border-top-color:transparent;}}@media (max-width: 768px){.error-message{padding:12px 16px;font-size:13px;}.error-icon{font-size:16px;}.error-retry{padding:6px 12px;font-size:11px;}.validation-summary{padding:12px;font-size:13px;}.loading-overlay{padding:20px;}.loading-spinner{width:35px;height:35px;border-width:3px;}}@media (max-width: 480px){.error-message{padding:10px 14px;font-size:12px;flex-direction:column;align-items:flex-start;gap:8px;}.error-close{align-self:flex-end;margin-left:0;margin-top:-5px;}.missing-answer .error-message{padding:8px 10px;}}.jobfit-loading-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.75);display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn 0.3s ease-in-out;}.jobfit-loading-content{background:#fff;border-radius:12px;padding:40px 60px;display:flex;flex-direction:column;align-items:center;gap:20px;box-shadow:0 10px 40px rgba(0,0,0,0.3);}.jobfit-loading-spinner{width:50px;height:50px;border:5px solid #f3f3f3;border-top:5px solid #007cba;border-radius:50%;animation:spin 1s linear infinite;}.jobfit-loading-text{font-size:18px;font-weight:600;color:#007cba;text-align:center;}@keyframes fadeIn{from{opacity:0;}to{opacity:1;}}@media (max-width: 480px){.jobfit-loading-content{padding:30px 40px;}.jobfit-loading-spinner{width:40px;height:40px;border-width:4px;}.jobfit-loading-text{font-size:16px;}}.pdf-loading{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.75);display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn 0.3s ease-in-out;}.pdf-loading-content{background:#fff;border-radius:12px;padding:40px 60px;display:flex;flex-direction:column;align-items:center;gap:20px;box-shadow:0 10px 40px rgba(0,0,0,0.3);}.pdf-loading-spinner{width:50px;height:50px;border:5px solid #f3f3f3;border-top:5px solid #007cba;border-radius:50%;animation:spin 1s linear infinite;}.pdf-loading-text{font-size:18px;font-weight:600;color:#007cba;text-align:center;}@media (max-width: 480px){.pdf-loading-content{padding:30px 40px;}.pdf-loading-spinner{width:40px;height:40px;border-width:4px;}.pdf-loading-text{font-size:16px;}}.related-recruits{margin-top:20px;padding-top:20px;border-top:1px solid #e0e0e0;}.related-recruits h5{font-size:16px;font-weight:600;color:#2c3e50;margin-bottom:12px;}.recruits-list{margin-top:10px;}.recruits-loading{color:#7f8c8d;font-size:14px;font-style:italic;padding:10px 0;}.recruits-items{list-style:none;padding:0;margin:0;}.recruit-item{padding:8px 0;border-bottom:1px solid #f0f0f0;}.recruit-item:last-child{border-bottom:none;}.recruit-item a{color:#3498db;text-decoration:none;font-size:14px;display:inline-flex;align-items:center;transition:color 0.2s ease;}.recruit-item a:hover{color:#2980b9;text-decoration:underline;}.recruit-item a::after{content:'↗';margin-left:5px;font-size:12px;opacity:0.6;}.no-recruits,.recruits-error{color:#95a5a6;font-size:14px;font-style:italic;padding:10px 0;margin:0;}.recruits-error{color:#e74c3c;}@media (max-width: 768px){.related-recruits{margin-top:15px;padding-top:15px;}.related-recruits h5{font-size:15px;}.recruit-item a{font-size:13px;}}@media print{@page{size:A4;margin:12mm;}body{font-family:"Hiragino Kaku Gothic ProN","ヒラギノ角ゴ ProN W3",Meiryo,メイリオ,sans-serif;color:#000;background:#fff;font-size:10pt;line-height:1.4;}.mstep-jobfit-container{max-width:100%;margin:0;padding:0;box-shadow:none;border-radius:0;}.results-actions,.btn,button,.jobfit-attribution,.error-container,.progress-container,#start-screen,#question-screen,#error-screen{display:none !important;}#results-screen{display:block !important;}.results-header{padding:12px 15px;margin-bottom:15px;page-break-after:avoid;break-after:avoid;}.results-title{font-size:18pt;margin-bottom:5px;}.results-subtitle{font-size:10pt;margin-bottom:0;}.profile-summary{page-break-after:avoid;break-after:avoid;page-break-inside:avoid;break-inside:avoid;margin-bottom:8px;}.profile-summary h3{font-size:11pt;margin-bottom:5px;padding-bottom:2px;}.score-section{margin-bottom:5px;padding:4px 6px;page-break-inside:avoid;break-inside:avoid;}.score-section h4{font-size:12pt;margin-bottom:3px;}.score-grid{gap:2px;}.score-item{display:grid !important;grid-template-columns:1fr 2fr auto !important;align-items:center !important;padding:1px 0;gap:4px;}.score-label{font-size:10pt;min-width:70px;}.score-bar{height:8px;}.score-value{font-size:10pt;min-width:22px;}.results-note{padding:4px 6px;margin:4px 0;font-size:6pt;page-break-inside:avoid;break-inside:avoid;}.results-note p{margin:1px 0;line-height:1.2;}.recommended-jobs-section{page-break-before:always;break-before:always;margin:0;}.recommended-jobs-section > h3{font-size:14pt;margin-bottom:12px;padding-bottom:5px;}.job-summary-list{padding:12px;margin-bottom:0;page-break-inside:avoid;break-inside:avoid;}.job-summary-items{gap:6px;}.summary-job-link{display:flex !important;align-items:center !important;padding:8px 10px;gap:10px;font-size:9pt;}.summary-rank{width:28px;height:28px;font-size:11pt;}.summary-job-title{font-size:10pt;}.summary-match-score{font-size:9pt;}.job-details-section{page-break-before:always;break-before:always;}.job-details-section > h4{display:none;}.job-card{page-break-before:always;break-before:always;page-break-inside:avoid;break-inside:avoid;padding:15px;margin-bottom:0;border:1px solid #ddd;font-size:9pt;}.job-card:first-child{page-break-before:auto;break-before:auto;}.job-card-header{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px;padding-bottom:6px;}.job-rank{width:28px;height:28px;font-size:12pt;flex-shrink:0;}.job-title{flex:1;}.job-title h4{font-size:12pt;margin:0;line-height:1.2;}.match-score{text-align:right;flex-shrink:0;display:flex;align-items:baseline;gap:3px;}.match-score .score-value{font-size:14pt;line-height:1;}.match-score .score-label{font-size:8pt;line-height:1;}.job-card-body{gap:10px;}.job-description{font-size:9pt;line-height:1.4;}.match-breakdown{padding:10px;}.match-breakdown h5{font-size:10pt;margin:0 0 8px 0;}.similarity-scores{gap:8px;}.similarity-item{gap:5px;}.similarity-info{display:flex !important;justify-content:space-between !important;align-items:center !important;}.similarity-label{font-size:8pt;}.similarity-value{font-size:10pt;}.similarity-bar{height:6px;}.reason-tags{margin:8px 0;}.reason-tags h5{font-size:10pt;margin:0 0 8px 0;}.reason-tags-list{gap:6px;}.reason-tag-item{padding:6px 8px;}.reason-tag-content{display:flex !important;justify-content:space-between !important;align-items:center !important;margin-bottom:4px;}.reason-tag-text{font-size:8pt;}.reason-tag-percentage{font-size:8pt;}.reason-tag-bar{height:4px;}.key-skills,.main-tasks,.interview-questions,.self-pr-template{padding:8px 10px;}.key-skills h5,.main-tasks h5,.interview-questions h5,.self-pr-template h5{font-size:10pt;margin:0 0 6px 0;}.key-skills h5::before,.main-tasks h5::before,.interview-questions h5::before,.self-pr-template h5::before{font-size:10pt;}.key-skills ul,.main-tasks ul,.interview-questions ul{padding-left:15px;margin:0;}.key-skills li,.main-tasks li,.interview-questions li{font-size:8pt;margin-bottom:4px;padding-left:10px;line-height:1.3;}.pr-template{padding:8px 10px;font-size:8pt;line-height:1.4;margin:6px 0 0 0;}.related-recruits{display:block !important;margin:10px 0;padding:8px 10px;background-color:#f8f9fa !important;border:1px solid #dee2e6;border-radius:4px;page-break-inside:avoid;break-inside:avoid;}.related-recruits h5{font-size:10pt;color:#2c5aa0;margin:0 0 8px 0;}.recruits-list{display:block !important;margin:0;padding:0;}.recruits-items{list-style:none;margin:0;padding:0;}.recruit-item{margin:4px 0;padding:6px 8px;background-color:#fff !important;border:1px solid #e9ecef;border-radius:3px;font-size:8pt;line-height:1.3;}.recruit-item a{color:#2c5aa0;text-decoration:none;}.no-recruits{font-size:8pt;color:#6c757d;margin:0;}.recruits-loading{display:none !important;}h1,h2,h3,h4,h5,h6{page-break-after:avoid;break-after:avoid;}*{-webkit-print-color-adjust:exact !important;print-color-adjust:exact !important;}a{color:#000;text-decoration:none;}a[href]::after{content:"";}.summary-job-link::before,.summary-job-link::after{display:none;}.score-bar,.similarity-bar,.reason-tag-bar{border:1px solid #ddd;}}