body{margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f5f5f5;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.App{display:flex;flex-direction:column;min-height:100vh}.btn-primary{background:#4285f4;font-size:16px;padding:12px 32px;transition:background .3s ease}.btn-primary:hover:not(:disabled){background:#357ae8}.btn-primary:disabled{background:#ccc;cursor:not-allowed}.btn-large{font-size:18px;padding:16px 48px}.container{margin:0 auto;max-width:800px;padding:20px}.loading{font-size:20px}.error-message{background:#ffebee;border-left:4px solid #c62828;color:#c62828;margin:16px 0;padding:12px 16px}@media (max-width:768px){.container{padding:12px}.btn-primary{font-size:14px;padding:10px 24px}.btn-large{font-size:16px;padding:14px 32px}}.consent-container{align-items:center;background:#f5f5f5;display:flex;justify-content:center;min-height:100vh;padding:20px}.consent-content{background:#fff;border-radius:16px;box-shadow:0 10px 40px #0003;max-height:90vh;max-width:700px;overflow-y:auto;padding:40px;width:100%}.consent-content h1{color:#333;font-size:28px;margin-bottom:24px;text-align:center}.consent-text{color:#555;line-height:1.6;margin-bottom:32px}.consent-text h2{color:#667eea;font-size:18px;margin-bottom:12px;margin-top:24px}.consent-text ul{margin-bottom:16px;margin-left:20px}.consent-text li{margin-bottom:8px}.consent-checkbox{background:#f5f5f5;border-radius:8px;margin-bottom:24px;padding:20px}.consent-checkbox label{align-items:flex-start;cursor:pointer;display:flex}.consent-checkbox input[type=checkbox]{cursor:pointer;height:20px;margin-right:12px;margin-top:4px;width:20px}.consent-checkbox span{color:#333;flex:1 1;font-size:16px;font-weight:600}.consent-content button{width:100%}@media (max-width:768px){.consent-content{padding:24px}.consent-content h1{font-size:24px}.consent-text h2{font-size:16px}}.demographic-container{-webkit-overflow-scrolling:touch;align-items:center;background-color:#f5f5f5;display:flex;justify-content:center;min-height:100vh;overflow-y:auto;padding:2rem 1rem}.demographic-content{background:#fff;border-radius:12px;box-shadow:0 4px 20px #0000001a;margin:2rem auto;max-width:600px;padding:3rem;width:100%}.demographic-content h1{color:#333;font-size:2rem;margin-bottom:.5rem}.subtitle{color:#666;font-size:1rem;line-height:1.5}.form-group,.subtitle{margin-bottom:2rem}.form-group label{color:#333;display:block;font-size:1.1rem;font-weight:600;margin-bottom:.75rem}.form-group input[type=number],.form-group input[type=tel],.form-group input[type=text],.form-group select{border:2px solid #ddd;border-radius:8px;box-sizing:border-box;font-size:1rem;padding:1rem;transition:all .3s ease;width:100%}.form-group input:focus,.form-group select:focus{border-color:#4caf50;box-shadow:0 0 0 3px #4caf501a;outline:none}.form-group small{color:#999;display:block;font-size:.9rem;margin-top:.5rem}.phone-input-wrapper{align-items:center;background:#fff;border:2px solid #ddd;border-radius:8px;display:flex;padding:.5rem 1rem;transition:all .3s ease}.phone-input-wrapper:focus-within{border-color:#4caf50;box-shadow:0 0 0 3px #4caf501a}.phone-prefix{color:#333;font-size:1rem;font-weight:600;margin-right:.5rem;min-width:50px;white-space:nowrap}.phone-input{background:#0000;border:none;flex:1 1;font-size:1rem;font-weight:500;outline:none;padding:.5rem}.phone-preview{background:linear-gradient(135deg,#f0f8ff,#e8f5e9);border-left:4px solid #4caf50;border-radius:6px;color:#333;font-size:.95rem;margin-top:.75rem;padding:.75rem}.phone-preview strong{color:#4caf50;font-size:1.1rem}.radio-group{display:flex;gap:2rem}.radio-group label{align-items:center;cursor:pointer;display:flex;font-weight:500;gap:.5rem}.radio-group input[type=radio]{cursor:pointer;height:20px;width:20px}.checkbox-label{align-items:flex-start;cursor:pointer;display:flex;font-weight:500;gap:.75rem;line-height:1.5}.checkbox-label input[type=checkbox]{cursor:pointer;flex-shrink:0;height:20px;margin-top:.2rem;width:20px}.error-message{background-color:#fee;border-left:4px solid #c33;border-radius:8px;color:#c33;font-weight:500;margin-bottom:1rem;padding:1rem}.btn-primary{background-color:#4caf50;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1.2rem;font-weight:600;margin-top:1rem;padding:1.2rem;transition:all .3s ease;width:100%}.btn-primary:hover{background-color:#45a049;box-shadow:0 4px 12px #4caf504d;transform:translateY(-2px)}.btn-primary:active{transform:translateY(0)}@media (max-width:768px){.demographic-container{padding:1rem}.demographic-content{margin:1rem auto;padding:2rem 1.5rem}.demographic-content h1{font-size:1.5rem}.radio-group{flex-direction:column;gap:1rem}.form-group label{font-size:1rem}.btn-primary{font-size:1.1rem;padding:1rem}}@media (max-width:480px){.demographic-content{padding:1.5rem 1rem}.demographic-content h1{font-size:1.3rem}.phone-prefix,.subtitle{font-size:.9rem}.phone-prefix{min-width:45px}.phone-input{font-size:.9rem}}@supports (padding:max(0px)){.demographic-container{padding-bottom:max(2rem,env(safe-area-inset-bottom))}}.checkbox-required{background-color:#fff3cd;border:2px solid #ffc107;border-radius:8px;margin-bottom:1.5rem!important;padding:1rem}.checkbox-required .checkbox-label{font-size:1rem;margin:0}.checkbox-required input[type=checkbox]{cursor:pointer;height:20px;margin-right:.8rem;width:20px}.checkbox-required strong{color:#333;font-weight:600}.checkbox-required:hover{background-color:#fff8e1;border-color:#ff9800}.instructions-container{align-items:center;background:#f5f5f5;display:flex;justify-content:center;min-height:100vh;padding:20px}.instructions-content{background:#fff;border-radius:16px;box-shadow:0 4px 20px #0000001a;max-width:800px;padding:48px;width:100%}.instructions-content h1{color:#333;font-size:32px;margin-bottom:40px;text-align:center}.instruction-section{margin-bottom:32px}.instruction-section h2{align-items:center;color:#4285f4;display:flex;font-size:20px;margin-bottom:16px}.instruction-section ol,.instruction-section ul{line-height:1.8;margin-left:24px}.instruction-section li{color:#555;margin-bottom:12px}.instruction-section strong{color:#333;font-weight:600}.instruction-example{background:#f9f9f9;border-left:4px solid #4285f4;border-radius:12px;margin-bottom:32px;padding:24px}.instruction-example h2{margin-bottom:16px;margin-top:0}.example-box{background:#fff;border-radius:8px;padding:16px;text-align:center}.example-target{font-size:18px;margin-bottom:8px}.example-task{color:#666;font-size:14px}.ready-section{border-top:2px solid #e0e0e0;margin-top:40px;padding-top:32px;text-align:center}.ready-section p{color:#333;font-size:20px;margin-bottom:8px}.ready-subtitle{color:#666;font-size:14px;margin-bottom:24px}@media (max-width:768px){.instructions-content{padding:24px}.instructions-content h1{font-size:24px}.instruction-section h2,.ready-section p{font-size:18px}}.symbol-grid-container{background:#f8f9fa;display:flex;flex-direction:column;height:100vh;height:-webkit-fill-available;margin:0;overflow:hidden;padding:0}.symbol-grid{grid-gap:.8rem;background:#fff;display:grid;flex:1 1;gap:.8rem;grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(4,1fr);margin:0 auto;max-width:600px;overflow:hidden;padding:.8rem}.symbol-cell,.symbol-item{align-items:center;background:#fff;border:3px solid #ddd;border-radius:12px;box-shadow:0 2px 4px #0000001a;cursor:pointer;display:flex;height:100%;justify-content:center;overflow:hidden;padding:.5rem;position:relative;transition:all .15s ease-out;width:100%}.symbol-cell:hover,.symbol-item:hover{border-color:#4caf50;box-shadow:0 4px 12px #4caf504d;transform:scale(1.02)}.symbol-cell:active,.symbol-item:active{transform:scale(.98)}.symbol-cell.selected,.symbol-item.selected{background-color:#f1f8f4!important;border-color:#4caf50!important; /* !important 추가 */box-shadow:0 0 0 4px #4caf504d!important;transform:scale(1.05)!important}.symbol-cell.disabled,.symbol-item.disabled{opacity:.6;pointer-events:none}.symbol-cell img,.symbol-item img{height:100%;object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none;width:100%}.symbol-placeholder{align-items:center;color:#666;display:flex;font-size:.9rem;height:100%;justify-content:center;padding:.5rem;text-align:center;width:100%}.error-feedback{background:#f44;border-radius:24px;bottom:20px;box-shadow:0 4px 12px #0000004d;color:#fff;font-size:1rem;font-weight:700;left:50%;padding:.8rem 1.5rem;position:fixed;transform:translateX(-50%);z-index:1000}@media (max-width:768px){.symbol-grid{gap:.6rem;padding:.6rem}}@media (max-width:480px){.symbol-grid{gap:.5rem;padding:.5rem}.symbol-cell,.symbol-item{border-width:2px;padding:.4rem}}@media (max-width:375px){.symbol-grid{gap:.4rem;padding:.4rem}.symbol-cell,.symbol-item{padding:.3rem}}@supports (padding:max(0px)){.symbol-grid-container{padding-bottom:env(safe-area-inset-bottom);padding-top:env(safe-area-inset-top)}}@media (hover:none) and (pointer:coarse){.symbol-cell,.symbol-item{min-height:44px;min-width:44px}.symbol-cell:active,.symbol-item:active{background-color:#f5f5f5}}.practice-container{background:#f8f9fa;bottom:0;display:flex;flex-direction:column;height:100vh;height:-webkit-fill-available;left:0;overflow:hidden;position:fixed;right:0;top:0;width:100vw}.practice-header{background:#fff;box-shadow:0 2px 4px #0000001a;flex-shrink:0;padding:1rem;text-align:center}.practice-header h2{color:#333;font-size:1.3rem;font-weight:700;margin:0 0 .5rem}.target-instruction{color:#555;margin:.5rem 0}.progress{color:#666;font-size:.9rem;font-weight:500;margin-top:.5rem}.rotate-message{display:none}@media (max-width:480px){.practice-header h2{font-size:1.1rem}.target-instruction{font-size:.9rem}.target-word{font-size:1.1rem}.practice-header{padding:.8rem}}@media (orientation:portrait){.practice-header{padding:1rem .5rem}}.intro-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:2rem}.intro-content{background:#fff;border-radius:16px;box-shadow:0 10px 40px #0003;max-width:700px;padding:3rem;text-align:center;width:100%}.intro-icon{animation:bounce 2s infinite;font-size:4rem;margin-bottom:1rem}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.intro-content h1{color:#333;font-size:2rem;font-weight:700;margin-bottom:2rem}.intro-message{background:#f0f7ff;border-left:4px solid #4a90e2;border-radius:12px;margin-bottom:2rem;padding:1.5rem}.intro-message p{color:#555;font-size:1.1rem;line-height:1.6;margin:.5rem 0}.intro-instructions{background:#fff9f0;border-left:4px solid #ff9800;border-radius:12px;margin-bottom:2rem;padding:1.5rem;text-align:left}.intro-instructions h3{color:#ff9800;font-size:1.2rem;margin-bottom:1rem;margin-top:0}.intro-instructions ul{margin:0;padding-left:1.5rem}.intro-instructions li{color:#666;font-size:1rem;line-height:1.5;margin:.8rem 0}.intro-instructions strong{color:#333;font-weight:600}.intro-ready{background:#f0fff4;border-left:4px solid #4caf50;border-radius:12px;margin-bottom:2rem;padding:1.5rem}.ready-text{color:#2e7d32;font-size:1.5rem;font-weight:600;margin:0 0 .5rem}.ready-subtext{color:#666;font-size:.95rem;margin:0}.btn-start{background:linear-gradient(135deg,#4caf50,#45a049);border:none;border-radius:12px;box-shadow:0 4px 15px #4caf504d;color:#fff;cursor:pointer;font-size:1.2rem;font-weight:600;max-width:400px;padding:1.25rem 2rem;transition:all .3s ease;width:100%}.btn-start:hover{background:linear-gradient(135deg,#45a049,#3d8b40);box-shadow:0 6px 20px #4caf5066;transform:translateY(-2px)}.btn-start:active{box-shadow:0 2px 10px #4caf504d;transform:translateY(0)}@media (max-width:768px){.intro-container{padding:1rem}.intro-content{padding:2rem 1.5rem}.intro-content h1{font-size:1.5rem}.intro-icon{font-size:3rem}.intro-message p{font-size:1rem}.intro-instructions{padding:1rem}.intro-instructions li{font-size:.9rem}.ready-text{font-size:1.2rem}.btn-start{font-size:1.1rem;padding:1rem 1.5rem}}.experiment-container{background:#f8f9fa;bottom:0;display:flex;flex-direction:column;height:100vh;height:-webkit-fill-available;left:0;overflow:hidden;position:fixed;right:0;top:0;width:100vw}.experiment-header{background:#fff;border-bottom:2px solid #e0e0e0;box-shadow:0 2px 4px #0000000d;flex-shrink:0;padding:1rem;text-align:center}.progress-bar{background:#e0e0e0;border-radius:3px}.progress-fill{background:linear-gradient(90deg,#4caf50,#45a049)}.progress-text{margin:.3rem 0 .5rem}.target-instruction{color:#333;font-size:1rem;font-weight:500;line-height:1.4;margin:.5rem 0 0}.target-word{color:#4caf50;font-size:1.2rem;font-weight:700}.loading{align-items:center;background:#f8f9fa;color:#666;display:flex;font-size:1.2rem;justify-content:center;min-height:100vh}@media (max-width:768px){.experiment-header{padding:.8rem}.target-instruction{font-size:.9rem}.target-word{font-size:1.1rem}}@media (max-width:480px){.experiment-header{padding:.6rem}.progress-text{font-size:.8rem}.target-instruction{font-size:.85rem}.target-word{font-size:1rem}}@supports (padding:max(0px)){.experiment-header{padding-top:max(1rem,env(safe-area-inset-top))}}.comparison-container{background:#fff;display:flex;flex-direction:column;margin:0 auto;max-width:1200px;min-height:100vh;padding:1rem}.comparison-header{margin-bottom:1rem;text-align:center}.progress-bar{background-color:#e0e0e0;border-radius:10px;height:6px;margin-bottom:.5rem;overflow:hidden;width:100%}.progress-fill{background:#4caf50;height:100%;transition:width .3s ease}.progress-text{color:#666;font-size:.85rem;font-weight:500;margin-bottom:.5rem;text-align:center}.question-box{margin-bottom:1.5rem;padding:0;text-align:center}.question-box h2{color:#333;font-size:1.1rem;font-weight:600;line-height:1.3;margin-bottom:.3rem}.instruction{color:#666;font-size:.85rem;margin:0}.options-container{align-items:stretch;display:flex;flex:1 1;gap:1rem;justify-content:center;margin-bottom:1rem}.image-option,.similar-option{cursor:pointer;flex:1 1;max-width:300px;position:relative;transition:all .2s ease}.image-option.disabled,.similar-option.disabled{opacity:.7;pointer-events:none}.image-wrapper{align-items:center;aspect-ratio:1;background:#fff;border:2px solid #ddd;border-radius:12px;display:flex;justify-content:center;padding:1rem;position:relative;transition:all .2s ease;width:100%}.image-option:active .image-wrapper,.similar-option:active .similar-content{transform:scale(.95)}.image-option.selected .image-wrapper{background:#f1f8f4;border-color:#4caf50;border-width:3px}.image-wrapper img{max-height:100%;max-width:100%;object-fit:contain}.image-placeholder{background:#f5f5f5;border-radius:10px;color:#999;display:none;font-size:.9rem;height:100%;text-align:center;width:100%}.image-placeholder,.selection-check{align-items:center;justify-content:center}.selection-check{animation:checkPop .3s ease;background:#4caf50;border-radius:50%;box-shadow:0 2px 8px #4caf504d;color:#fff;display:flex;font-size:1.3rem;font-weight:700;height:35px;position:absolute;right:-12px;top:-12px;width:35px;z-index:10}@keyframes checkPop{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}.similar-content{align-items:center;aspect-ratio:1;background:#fff;border:2px solid #ddd;border-radius:12px;color:#333;display:flex;flex-direction:column;font-size:1.1rem;font-weight:600;gap:.5rem;justify-content:center;transition:all .2s ease;width:100%}.similar-option.selected .similar-content{background:#4caf50;border-color:#4caf50;border-width:3px;color:#fff}.similar-content .check-icon{animation:checkPop .3s ease;font-size:1.8rem}.note{color:#666;font-size:.85rem;margin-top:.5rem;text-align:center}@media (max-width:768px){.comparison-container{padding:.8rem}.comparison-header{margin-bottom:.8rem}.question-box{margin-bottom:1rem}.question-box h2{font-size:1rem}.instruction{font-size:.8rem}.options-container{gap:.6rem}.image-option,.similar-option{max-width:none}.image-wrapper{border-radius:10px;padding:.6rem}.similar-content{border-radius:10px;font-size:.95rem;gap:.3rem}.selection-check{font-size:1.1rem;height:30px;right:-10px;top:-10px;width:30px}.similar-content .check-icon{font-size:1.5rem}.note{font-size:.75rem}}@media (max-width:500px){.options-container{gap:.5rem}.image-option,.similar-option{max-width:none}}@media (max-width:375px){.comparison-container{padding:.6rem}.question-box h2{font-size:.95rem}.options-container{gap:.5rem}.image-wrapper{padding:.5rem}.similar-content{font-size:.9rem}}@supports (padding:max(0px)){.comparison-container{padding-top:max(1rem,calc(env(safe-area-inset-top) + 1rem))}}.completion-container{align-items:center;background:#f5f5f5;display:flex;justify-content:center;min-height:100vh;padding:20px}.completion-content{background:#fff;border-radius:16px;box-shadow:0 10px 40px #0003;max-width:700px;padding:48px;text-align:center;width:100%}.completion-icon{animation:checkmark .6s ease-in-out;color:#4285f4;font-size:80px;margin-bottom:24px}@keyframes checkmark{0%{opacity:0;transform:scale(0)}50%{transform:scale(1.2)}to{opacity:1;transform:scale(1)}}.completion-content h1{color:#333;font-size:32px;margin-bottom:24px}.thank-you-message{background:#f1f8e9;border-radius:12px;margin-bottom:32px;padding:24px}.thank-you-message p{color:#555;line-height:1.8;margin-bottom:12px}.thank-you-message p:last-child{margin-bottom:0}.next-steps{margin-bottom:32px;text-align:left}.next-steps h2{color:#4285f4;font-size:20px;margin-bottom:16px;text-align:center}.next-steps ul{line-height:1.8;margin-left:24px}.next-steps li{color:#555;margin-bottom:12px}.contact-info{background:#f5f5f5;border-radius:8px;margin-bottom:32px;padding:20px}.contact-info h3{color:#333;font-size:16px;margin-bottom:12px}.contact-info p{color:#666;margin-bottom:4px}.closing-message{border-top:2px solid #e0e0e0;padding-top:24px}.highlight{color:#4285f4;font-size:18px;font-weight:600;margin-bottom:8px}.small-text{color:#999;font-size:14px}@media (max-width:768px){.completion-content{padding:32px 24px}.completion-icon{font-size:60px}.completion-content h1{font-size:24px}.next-steps h2{font-size:18px}.highlight{font-size:16px}}.loading-time{color:#666;font-size:1rem;font-weight:500;margin:.5rem 0}.loading-subtitle{color:#999;font-size:.9rem;margin-top:.5rem}.spinner{animation:spin 2s linear infinite;font-size:3rem;margin-bottom:1rem}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}
/*# sourceMappingURL=main.7bf31df0.css.map*/