*{box-sizing:border-box;padding:0;margin:0}body,html{max-width:100vw;overflow-x:hidden;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh;color:#1f2937;line-height:1.6}.container{max-width:1200px;margin:0 auto;padding:0 1rem}.glass-card{background:hsla(0,0%,100%,.95);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:20px;border:1px solid hsla(0,0%,100%,.2);box-shadow:0 20px 40px rgba(0,0,0,.1);overflow:hidden}.hero-section{text-align:center;padding:3rem 2rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;position:relative;overflow:hidden}.hero-section:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="grid" width="10" height="10" patternUnits="userSpaceOnUse"><path d="M 10 0 L 0 0 0 10" fill="none" stroke="rgba(255,255,255,0.1)" stroke-width="0.5"/></pattern></defs><rect width="100" height="100" fill="url(%23grid)"/></svg>');opacity:.3}.primary-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:1rem 2.5rem;border-radius:50px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;min-height:44px;min-width:44px;box-shadow:0 10px 25px rgba(102,126,234,.3);position:relative;overflow:hidden}.primary-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.2),transparent);transition:left .5s}.primary-button:hover:before{left:100%}.primary-button:hover{transform:translateY(-2px);box-shadow:0 15px 35px rgba(102,126,234,.4)}.primary-button:disabled{background:#9ca3af;cursor:not-allowed;transform:none;box-shadow:none}.secondary-button{background:hsla(0,0%,100%,.1);color:#667eea;border:2px solid #667eea;padding:1rem 2.5rem;border-radius:50px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;min-height:44px;min-width:44px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.secondary-button:hover{background:rgba(102,126,234,.1);color:#667eea;transform:translateY(-1px);box-shadow:0 5px 15px rgba(102,126,234,.15)}.input-field{width:100%;padding:.75rem;border:2px solid #e5e7eb;border-radius:.5rem;font-size:1rem;transition:border-color .2s ease;min-height:44px}.input-field:focus{outline:none;border-color:#1d4e89;box-shadow:0 0 0 3px rgba(29,78,137,.1)}.likert-table{width:100%;border-collapse:collapse;margin:2rem 0;box-shadow:0 15px 35px rgba(0,0,0,.1);border-radius:20px;overflow:hidden;background:#fff}.likert-table th{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:1.5rem 1rem;text-align:center;font-weight:600;font-size:.9rem;border-right:1px solid hsla(0,0%,100%,.1);position:relative}.likert-table th:first-child{text-align:left;padding-left:1.5rem;min-width:350px;font-size:1rem}.likert-table th:not(:first-child){width:calc((100% - 350px) / 5);min-width:140px}.likert-table th:last-child{border-right:none}.likert-table td{padding:1.5rem 1rem;border-right:1px solid rgba(230,230,250,.5);border-bottom:1px solid rgba(230,230,250,.3);text-align:center;vertical-align:middle;transition:all .3s ease}.likert-table td:first-child{text-align:left;padding-left:1.5rem;font-weight:500;background:linear-gradient(135deg,rgba(102,126,234,.05),rgba(118,75,162,.05));font-size:.95rem;line-height:1.4}.likert-table td:not(:first-child){width:calc((100% - 350px) / 5);min-width:140px}.likert-table td:last-child{border-right:none}.likert-table tbody tr:last-child td{border-bottom:none}.likert-table tbody tr:hover{background:linear-gradient(135deg,rgba(102,126,234,.02),rgba(118,75,162,.02));transform:scale(1.002)}.likert-table tbody tr:hover td:first-child{background:linear-gradient(135deg,rgba(102,126,234,.1),rgba(118,75,162,.1))}.radio-input{width:24px;height:24px;cursor:pointer;accent-color:#667eea;transition:all .2s ease;transform:scale(1)}.radio-input:hover{transform:scale(1.1)}.radio-input:checked{transform:scale(1.2);filter:drop-shadow(0 0 8px rgba(102,126,234,.5))}.progress-bar{width:100%;height:12px;background:hsla(0,0%,100%,.2);border-radius:20px;overflow:hidden;margin:1.5rem 0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:inset 0 2px 4px rgba(0,0,0,.1)}.progress-fill{height:100%;background:linear-gradient(90deg,#667eea,#764ba2);border-radius:20px;transition:width .8s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 10px rgba(102,126,234,.3);position:relative}.progress-fill:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.3),transparent);animation:shimmer 2s infinite}@keyframes shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.animate-float{animation:float 3s ease-in-out infinite}.animate-fadeInUp{animation:fadeInUp .6s ease-out forwards}.glass-card{animation:fadeInUp .8s ease-out forwards}.likert-table tbody tr{animation:fadeInUp .4s ease-out forwards}.likert-table tbody tr:first-child{animation-delay:.1s}.likert-table tbody tr:nth-child(2){animation-delay:.15s}.likert-table tbody tr:nth-child(3){animation-delay:.2s}.likert-table tbody tr:nth-child(4){animation-delay:.25s}.likert-table tbody tr:nth-child(5){animation-delay:.3s}.likert-table tbody tr:nth-child(6){animation-delay:.35s}.likert-table tbody tr:nth-child(7){animation-delay:.4s}.likert-table tbody tr:nth-child(8){animation-delay:.45s}.likert-table tbody tr:nth-child(9){animation-delay:.5s}.warning-text{background:linear-gradient(135deg,rgba(251,191,36,.1),rgba(245,158,11,.1));border:1px solid rgba(251,191,36,.3);color:#92400e;padding:1.5rem;border-radius:15px;margin:1.5rem 0;font-size:.95rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 10px 25px rgba(251,191,36,.1);position:relative}.warning-text:before{content:"⚠️";font-size:1.2rem;margin-right:.5rem}.error-message{background:linear-gradient(135deg,rgba(239,68,68,.1),rgba(220,38,38,.1));border:1px solid rgba(239,68,68,.3);color:#dc2626;padding:1.5rem;border-radius:15px;margin:1.5rem 0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 10px 25px rgba(239,68,68,.1);position:relative}.error-message:before{content:"❌";font-size:1.2rem;margin-right:.5rem}.success-message{background:linear-gradient(135deg,rgba(34,197,94,.1),rgba(22,163,74,.1));border:1px solid rgba(34,197,94,.3);color:#16a34a;padding:1.5rem;border-radius:15px;margin:1.5rem 0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 10px 25px rgba(34,197,94,.1);position:relative}.success-message:before{content:"✅";font-size:1.2rem;margin-right:.5rem}.navigation-buttons{display:flex;justify-content:space-between;align-items:center;margin:2rem 0;flex-wrap:wrap;gap:1rem}.section-info{background:linear-gradient(135deg,hsla(0,0%,100%,.9),hsla(0,0%,100%,.7));-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid hsla(0,0%,100%,.3);padding:1.5rem;border-radius:15px;margin:1.5rem 0;text-align:center;font-weight:700;font-size:1.1rem;color:#667eea;box-shadow:0 10px 25px rgba(0,0,0,.1);position:relative}.desktop-only{display:block}.mobile-only{display:none}.mobile-questions{display:none;flex-direction:column;gap:1.75rem!important}.mobile-question-card{background:hsla(0,0%,100%,.95);border:1px solid rgba(102,126,234,.2);border-radius:20px;padding:1.5rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 10px 25px rgba(0,0,0,.1);animation:fadeInUp .4s ease-out}.mobile-question-header{text-align:center;margin-bottom:1rem;color:#667eea;font-weight:600;font-size:.9rem}.mobile-question-text{font-size:1.2rem;font-weight:600;color:#1a202c;text-align:center;margin-bottom:1.5rem;line-height:1.5;text-shadow:0 1px 2px rgba(0,0,0,.05)}.mobile-options{display:flex;flex-direction:column;gap:.75rem}.mobile-option-button{background:hsla(0,0%,100%,.8);border:2px solid #e2e8f0;border-radius:12px;padding:.75rem;text-align:center;cursor:pointer;transition:all .3s ease;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.mobile-option-button:hover{border-color:#667eea;background:rgba(102,126,234,.05);transform:translateY(-1px);box-shadow:0 5px 15px rgba(102,126,234,.1)}.mobile-option-button.selected{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#667eea;color:#fff;transform:scale(1.02);box-shadow:0 8px 20px rgba(102,126,234,.3)}.mobile-option-button .option-label{display:block;font-weight:600;font-size:.95rem}@media (max-width:768px){.container{padding:0 .5rem}.hero-section{padding:1.5rem 1rem!important;min-height:45vh!important;display:flex!important;align-items:center!important}.hero-section h1{font-size:2.5rem!important;margin-bottom:1.5rem!important;line-height:1.2}.hero-section p{font-size:1.2rem!important;margin-bottom:1.2rem!important}.glass-card{padding:1.5rem!important;margin:0 .5rem!important}.warning-text>div{flex-direction:column!important;gap:.75rem!important}.restart-button,.resume-button{width:100%!important;flex:none!important;min-width:auto!important}.hero-section .process-container{padding:.5rem!important;margin-bottom:.5rem!important}.hero-section .process-container>div{flex-direction:column!important;align-items:center!important;gap:1rem!important}.hero-section .process-step{font-size:.75rem!important;padding:.4rem .8rem!important;width:auto!important;min-width:200px;text-align:center}.hero-section .process-arrow{transform:rotate(90deg);font-size:1rem!important}.desktop-only{display:none!important}.mobile-only{display:block!important}.mobile-questions{display:flex!important}.likert-table-container{overflow-x:auto;-webkit-overflow-scrolling:touch}.likert-table{min-width:800px}.likert-table td,.likert-table th{padding:.5rem .25rem;font-size:.875rem}.likert-table td:first-child,.likert-table th:first-child{padding-left:.5rem;min-width:250px}.navigation-buttons{flex-direction:column;align-items:stretch}.primary-button,.secondary-button{width:100%;margin:.25rem 0}.navigation-buttons .secondary-button{padding:.75rem 1.5rem;font-size:.9rem}.mobile-questions{gap:1.5rem!important}.mobile-question-card{padding:1.25rem}.mobile-question-text{font-size:1.1rem;font-weight:600}.mobile-option-button{padding:.625rem}.mobile-option-button .option-label{font-size:.875rem}}.complete-card{max-width:600px;margin:0 auto;padding:3rem;text-align:center}.complete-info{background-color:#f8fafc;border:1px solid #e2e8f0;padding:2rem;border-radius:.5rem;margin-bottom:2rem;font-size:1rem;line-height:1.6}.complete-congratulations,.complete-description{margin-bottom:1rem}.complete-instruction{margin-bottom:0}@media (max-width:768px){.complete-card{padding:1.5rem}.complete-info{padding:1.25rem;margin-bottom:1.5rem;font-size:.95rem}.complete-congratulations{margin-bottom:.75rem;font-size:1rem}.complete-description{margin-bottom:.75rem;font-size:.9rem}.complete-instruction{font-size:.9rem}}@media (max-width:480px){.hero-section{padding:1.2rem .5rem!important;min-height:40vh!important}.hero-section h1{font-size:2.2rem!important;margin-bottom:1.2rem!important}.hero-section p{font-size:1.1rem!important;margin-bottom:1rem!important}.glass-card{padding:1rem!important;margin:0 .25rem!important}.warning-text>div{flex-direction:column!important;gap:.5rem!important}.restart-button,.resume-button{width:100%!important;flex:none!important;min-width:auto!important;padding:.75rem 1rem!important}.hero-section .process-container{padding:.4rem!important;margin-bottom:.5rem!important}.hero-section .process-container>div{flex-direction:column!important;align-items:center!important;gap:.75rem!important}.hero-section .process-step{font-size:.7rem!important;padding:.3rem .6rem!important;text-align:center;width:auto!important;min-width:180px;justify-content:center}.hero-section .process-arrow{font-size:.8rem!important;transform:rotate(90deg)}.input-field{font-size:16px;padding:1rem .75rem}.error-message,.success-message,.warning-text{padding:1rem;margin:1rem 0;font-size:.85rem;line-height:1.5}.likert-table td,.likert-table th{font-size:.75rem;padding:.375rem .125rem}.radio-input{width:16px;height:16px}.complete-card{padding:1rem}.complete-info{padding:1rem;margin-bottom:1rem;font-size:.9rem}.complete-congratulations{margin-bottom:.5rem;font-size:.95rem}.complete-description{margin-bottom:.5rem;font-size:.85rem}.complete-instruction{font-size:.85rem}}