.landing-page{min-height:100vh;background:linear-gradient(135deg,#1e3a8a,#3b82f6);padding:20px}.container{max-width:800px;margin:0 auto}.header{text-align:center;color:#fff;margin-bottom:40px;padding-top:40px}.header h1{font-size:3rem;font-weight:300;margin-bottom:10px;letter-spacing:2px}.tagline{font-size:1.2rem;font-weight:300;opacity:.9}.intro{background:#fff;padding:30px;border-radius:8px;margin-bottom:30px;box-shadow:0 4px 6px #0000001a}.intro h2{color:#1e3a8a;margin-bottom:15px;font-size:1.8rem}.intro p{line-height:1.6;color:#555}.form-card{background:#fff;padding:40px;border-radius:8px;box-shadow:0 4px 6px #0000001a;margin-bottom:30px}.form-card h3{color:#1e3a8a;margin-bottom:25px;font-size:1.5rem}.form-group{margin-bottom:20px}.form-group label{display:block;font-weight:600;color:#333;margin-bottom:8px}.form-group input,.form-group textarea{width:100%;padding:12px;border:1px solid #ddd;border-radius:4px;font-size:1rem;font-family:inherit;transition:border-color .3s}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#3b82f6}.form-group small{display:block;margin-top:5px;color:#666;font-size:.875rem}.submit-button{width:100%;padding:15px;background:#1e3a8a;color:#fff;border:none;border-radius:4px;font-size:1.1rem;font-weight:600;transition:background .3s}.success-message{background:#fff;padding:40px;border-radius:8px;text-align:center;box-shadow:0 4px 6px #0000001a}.success-icon{width:80px;height:80px;background:#10b981;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:3rem;margin:0 auto 20px}.success-message h2{color:#1e3a8a;margin-bottom:15px}.success-message p{line-height:1.6;color:#555;margin-bottom:10px}.success-message .note{background:#f0f9ff;padding:15px;border-radius:4px;margin-top:20px}footer{text-align:center;color:#fff;padding:20px 0;opacity:.9}footer a{color:#fff;text-decoration:underline}.demographics-form .form-card{background:#fff;padding:40px;border-radius:8px;box-shadow:0 4px 6px #0000001a}.demographics-form h3{color:#1e3a8a;margin-bottom:15px;font-size:1.8rem}.demographics-form .form-intro{line-height:1.6;color:#555;margin-bottom:10px}.demographics-form .form-note{background:#f0f9ff;padding:12px;border-radius:4px;margin-bottom:25px;color:#1e3a8a;font-size:.95rem}.demographics-form .form-group{margin-bottom:20px}.demographics-form .form-group label{display:block;font-weight:600;color:#333;margin-bottom:8px}.demographics-form .form-group input,.demographics-form .form-group select{width:100%;padding:12px;border:1px solid #ddd;border-radius:4px;font-size:1rem;font-family:inherit;transition:border-color .3s}.demographics-form .form-group input:focus,.demographics-form .form-group select:focus{outline:none;border-color:#3b82f6}.demographics-form .submit-button{width:100%;padding:15px;background:#1e3a8a;color:#fff;border:none;border-radius:4px;font-size:1.1rem;font-weight:600;transition:background .3s;margin-top:10px}.demographics-form .submit-button:hover{background:#1e40af}.question-form .form-card{background:#fff;padding:40px;border-radius:8px;box-shadow:0 4px 6px #0000001a}.progress-bar{width:100%;height:8px;background:#e5e7eb;border-radius:4px;margin-bottom:10px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#1e3a8a,#3b82f6);transition:width .3s ease}.progress-text{text-align:center;color:#666;font-size:.9rem;margin-bottom:25px}.question-text{color:#1e3a8a;font-size:1.5rem;line-height:1.5;margin-bottom:25px;font-weight:600}.answer-input-container{position:relative;margin-bottom:20px}.answer-textarea{width:100%;padding:15px;border:2px solid #ddd;border-radius:8px;font-size:1rem;font-family:inherit;line-height:1.6;resize:vertical;transition:border-color .3s}.answer-textarea:focus{outline:none;border-color:#3b82f6}.speech-controls{display:flex;align-items:center;gap:15px;margin-top:15px}.mic-button{width:60px;height:60px;border-radius:50%;border:2px solid #1e3a8a;background:#fff;color:#1e3a8a;font-size:1.8rem;display:flex;align-items:center;justify-content:center;transition:all .3s}.mic-button:hover{background:#f0f9ff}.mic-button.listening{background:#dc2626;border-color:#dc2626;color:#fff;animation:pulse 1.5s infinite}@keyframes pulse{0%,to{transform:scale(1);box-shadow:0 0 #dc2626b3}50%{transform:scale(1.05);box-shadow:0 0 0 10px #dc262600}}.listening-indicator{color:#dc2626;font-weight:600;animation:blink 1s infinite}@keyframes blink{0%,to{opacity:1}50%{opacity:.5}}.form-actions{display:flex;justify-content:flex-end}.submit-button{padding:15px 40px;background:#1e3a8a;color:#fff;border:none;border-radius:4px;font-size:1.1rem;font-weight:600;transition:background .3s}.submit-button:hover:not(:disabled){background:#1e40af}.submit-button:disabled{background:#9ca3af}.survey-page{min-height:100vh;background:linear-gradient(135deg,#1e3a8a,#3b82f6);padding:20px}.survey-page .container{max-width:900px;margin:0 auto}.survey-page .header{text-align:center;color:#fff;margin-bottom:30px;padding-top:20px}.survey-page .header h1{font-size:2.5rem;font-weight:300;margin-bottom:5px;letter-spacing:2px}.survey-page .tagline{font-size:1rem;font-weight:300;opacity:.9}.survey-info{background:#fff;padding:20px 30px;border-radius:8px;margin-bottom:20px;text-align:center;box-shadow:0 2px 4px #0000001a}.survey-info h2{color:#1e3a8a;font-size:1.5rem;margin-bottom:5px}.survey-info p{color:#666}.loading{text-align:center;color:#fff;font-size:1.2rem;padding:60px 20px}.completion-card{background:#fff;padding:40px;border-radius:8px;text-align:center;box-shadow:0 4px 6px #0000001a}.completion-card .success-icon{width:80px;height:80px;background:#10b981;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:3rem;margin:0 auto 20px}.completion-card h2{color:#1e3a8a;margin-bottom:15px}.completion-card p{line-height:1.6;color:#555;margin-bottom:10px}.completion-card .note{background:#f0f9ff;padding:15px;border-radius:4px;margin-top:20px;font-style:italic}.report-page{min-height:100vh;background:#f5f5f5;padding:20px}.report-page .container{max-width:1200px;margin:0 auto}.report-page .header{text-align:center;color:#1e3a8a;margin-bottom:30px;padding-top:20px}.report-page .header h1{font-size:2.5rem;font-weight:300;margin-bottom:5px;letter-spacing:2px}.report-page .tagline{font-size:1rem;font-weight:300}.report-header{background:#fff;padding:30px;border-radius:8px;margin-bottom:30px;box-shadow:0 2px 4px #0000001a;text-align:center}.report-header h2{color:#1e3a8a;font-size:2rem;margin-bottom:10px}.company-name{color:#666;font-size:1.2rem;margin-bottom:15px}.status-badge{margin-bottom:15px}.badge{display:inline-block;padding:6px 16px;border-radius:20px;font-size:.875rem;font-weight:600;text-transform:capitalize}.badge.collecting{background:#fef3c7;color:#92400e}.badge.analyzing{background:#dbeafe;color:#1e40af}.badge.complete{background:#d1fae5;color:#065f46}.response-stats{color:#555;font-size:1rem}.ai-summary-section{background:#fff;padding:40px;border-radius:8px;margin-bottom:30px;box-shadow:0 2px 4px #0000001a}.ai-summary-section h3{color:#1e3a8a;font-size:1.8rem;margin-bottom:20px;padding-bottom:15px;border-bottom:2px solid #e5e7eb}.summary-content{line-height:1.8;color:#333;white-space:pre-wrap}.summary-content p{margin-bottom:15px}.generated-date{margin-top:30px;padding-top:20px;border-top:1px solid #e5e7eb;color:#666;font-size:.9rem;font-style:italic}.pending-report-notice{background:#fef3c7;border:1px solid #fbbf24;padding:30px;border-radius:8px;margin-bottom:30px}.pending-report-notice h3{color:#92400e;margin-bottom:10px}.pending-report-notice p{color:#78350f}.responses-section{background:#fff;padding:40px;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:30px}.responses-section h3{color:#1e3a8a;font-size:1.8rem;margin-bottom:15px}.privacy-note{background:#f0f9ff;padding:12px;border-radius:4px;margin-bottom:25px;color:#1e3a8a;font-size:.95rem}.question-selector{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:30px}.question-button{padding:12px 24px;border:2px solid #1e3a8a;background:#fff;color:#1e3a8a;border-radius:6px;font-weight:600;transition:all .3s}.question-button:hover{background:#f0f9ff}.question-button.active{background:#1e3a8a;color:#fff}.question-detail{margin-top:20px}.question-text{color:#1e3a8a;font-size:1.3rem;line-height:1.5;margin-bottom:25px;padding:20px;background:#f0f9ff;border-radius:6px}.responses-list{display:flex;flex-direction:column;gap:20px}.response-card{border:1px solid #e5e7eb;border-radius:6px;padding:20px;background:#fafafa;transition:box-shadow .3s}.response-card:hover{box-shadow:0 2px 8px #0000001a}.response-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid #e5e7eb}.respondent-label{font-weight:600;color:#1e3a8a}.input-method{font-size:.875rem;color:#666;background:#fff;padding:4px 10px;border-radius:12px;text-transform:capitalize}.response-text{line-height:1.7;color:#333}.no-responses{text-align:center;color:#999;padding:40px;font-style:italic}.loading{text-align:center;color:#1e3a8a;font-size:1.2rem;padding:60px 20px}.error-card{background:#fff;padding:40px;border-radius:8px;text-align:center;box-shadow:0 4px 6px #0000001a}.error-card h2{color:#dc2626;margin-bottom:15px}.error-card p{color:#666}footer{text-align:center;color:#666;padding:30px 0}footer a{color:#1e3a8a;text-decoration:underline}.admin-page{min-height:100vh;background:#f5f5f5;padding:20px}.admin-page .container{max-width:1400px;margin:0 auto}.admin-page .header{text-align:center;color:#1e3a8a;margin-bottom:30px;padding-top:20px;position:relative}.admin-page .header h1{font-size:2.5rem;font-weight:300;margin-bottom:5px;letter-spacing:2px}.admin-page .tagline{font-size:1rem;font-weight:300}.logout-button{position:absolute;top:20px;right:20px;padding:8px 20px;background:#dc2626;color:#fff;border:none;border-radius:4px;font-weight:600}.logout-button:hover{background:#b91c1c}.login-card{max-width:500px;margin:0 auto;background:#fff;padding:40px;border-radius:8px;box-shadow:0 4px 6px #0000001a}.login-card h3{color:#1e3a8a;margin-bottom:25px;font-size:1.5rem}.login-card .form-group{margin-bottom:20px}.login-card label{display:block;font-weight:600;color:#333;margin-bottom:8px}.login-card input{width:100%;padding:12px;border:1px solid #ddd;border-radius:4px;font-size:1rem}.login-card input:focus{outline:none;border-color:#3b82f6}.login-card .submit-button{width:100%;padding:15px;background:#1e3a8a;color:#fff;border:none;border-radius:4px;font-size:1.1rem;font-weight:600}.login-card .submit-button:hover:not(:disabled){background:#1e40af}.error-message{background:#fee;border:1px solid #fcc;color:#c00;padding:12px;border-radius:4px;margin-bottom:20px}.engagements-list h2{color:#1e3a8a;font-size:2rem;margin-bottom:25px;text-align:center}.no-data{text-align:center;color:#999;padding:60px 20px;font-size:1.2rem}.engagement-cards{display:flex;flex-direction:column;gap:25px}.engagement-card{background:#fff;padding:30px;border-radius:8px;box-shadow:0 2px 4px #0000001a}.engagement-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;border-bottom:2px solid #e5e7eb}.engagement-header h3{color:#1e3a8a;font-size:1.5rem;margin:0}.status-badge{display:inline-block;padding:6px 16px;border-radius:20px;font-size:.875rem;font-weight:600;text-transform:capitalize}.status-badge.collecting,.status-badge.invited,.status-badge.in_progress{background:#fef3c7;color:#92400e}.status-badge.analyzing{background:#dbeafe;color:#1e40af}.status-badge.complete{background:#d1fae5;color:#065f46}.engagement-info{margin-bottom:20px}.engagement-info p{margin-bottom:8px;color:#555}.engagement-actions{display:flex;gap:15px}.view-details-button,.generate-report-button{padding:10px 20px;border:none;border-radius:4px;font-weight:600;transition:all .3s}.view-details-button{background:#e5e7eb;color:#333}.view-details-button:hover{background:#d1d5db}.generate-report-button{background:#10b981;color:#fff}.generate-report-button:hover:not(:disabled){background:#059669}.engagement-details{margin-top:25px;padding-top:25px;border-top:2px solid #e5e7eb}.engagement-details h4{color:#1e3a8a;margin-bottom:20px;font-size:1.3rem}.respondent-card{background:#fafafa;border:1px solid #e5e7eb;padding:20px;border-radius:6px;margin-bottom:15px}.respondent-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;padding-bottom:10px;border-bottom:1px solid #e5e7eb}.respondent-info p{margin-bottom:8px;color:#555}.demographics{margin-top:10px;padding:15px;background:#fff;border-radius:4px}.demographics ul{list-style:none;margin-top:8px;padding-left:0}.demographics li{padding:4px 0;color:#666}.responses{margin-top:15px;padding:15px;background:#fff;border-radius:4px}.response-item{margin-bottom:10px;padding:10px;background:#f9fafb;border-radius:4px;color:#555;line-height:1.5}.report-section{margin-top:25px;padding:20px;background:#f0f9ff;border-radius:6px}.report-section h4{color:#1e3a8a;margin-bottom:15px}.report-summary{white-space:pre-wrap;line-height:1.6;color:#333;margin-bottom:15px}.report-date{color:#666;font-size:.875rem;font-style:italic}*{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-color:#f5f5f5;color:#333}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}a{color:#1e3a8a;text-decoration:none}a:hover{text-decoration:underline}button{cursor:pointer;font-family:inherit}button:disabled{cursor:not-allowed;opacity:.6}
