*{box-sizing:border-box;padding:0}*,body{margin:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#5cc1c6;color:#333;font-family:Noto Sans JP,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}#root,body{min-height:100vh}#root{display:flex;flex-direction:column}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.app{background:#f5f7fa;display:flex;flex-direction:column;font-family:Noto Sans JP,sans-serif;min-height:100vh}.app-header{align-items:center;background-color:#5cc1c6;box-shadow:0 2px 4px #0000001a;color:#fff;display:flex;height:56px;justify-content:center;padding:0 16px;position:relative}.app-header h1{font-size:20px;font-weight:700;margin:0;text-align:center}.app-main{flex:1 1;overflow-y:auto}.app-main,.conversation-area{display:flex;flex-direction:column;width:100%}.conversation-area{gap:.5rem;margin:.5rem auto;max-width:800px;min-height:200px;padding:0 1rem}.complete-message,.intro-container{background:#fff;border-radius:20px;box-shadow:0 10px 30px #0000001a;padding:2rem;text-align:center}.intro-container h2{color:#5cc1c6;font-size:2rem;margin-bottom:1rem}.intro-container p{color:#333;font-size:1.2rem;margin:.5rem 0}.complete-message h2{color:#5cc1c6;margin-bottom:1rem}.complete-english{color:#333;font-size:1.5rem;font-weight:600;margin:.5rem 0 .25rem}.complete-japanese{color:#666;font-size:1.1rem;margin:0 0 1rem}.complete-score{color:#5cc1c6;font-size:1.3rem;font-weight:600;margin:.5rem 0 1rem}.complete-checkmark{display:flex;justify-content:center;margin:1rem 0}.complete-checkmark svg{animation:checkmark-scale .6s ease-out}@keyframes checkmark-scale{0%{transform:scale(0)}50%{transform:scale(1.1)}to{transform:scale(1)}}.start-button{background:#5cc1c6;border:none;border-radius:50px;box-shadow:0 5px 15px #5cc1c64d;color:#fff;cursor:pointer;font-size:1.2rem;font-weight:600;margin-top:2rem;padding:1rem 3rem;transition:all .3s ease}.start-button:hover{box-shadow:0 8px 20px #5cc1c666;transform:translateY(-2px)}.next-button-container{display:flex;justify-content:center;margin-top:2rem}.complete-container{align-items:center;display:flex;flex-direction:column;gap:2rem}.back-button{background:#5cc1c6;border:none;border-radius:50px;box-shadow:0 5px 15px #5cc1c64d;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;padding:1rem 2rem;transition:all .3s ease}.back-button:hover{box-shadow:0 8px 20px #5cc1c666;transform:translateY(-2px)}.scene-intro-container{align-items:center;display:flex;justify-content:center;min-height:400px;padding:2rem}.scene-intro-card{background:#fff;border-radius:20px;box-shadow:0 10px 30px #0000001a;max-width:600px;padding:3rem;text-align:center;width:100%}.scene-intro-card h2{color:#5cc1c6;font-size:2rem;margin-bottom:2rem}.scene-context{background:#5cc1c61a;border-radius:15px;margin-bottom:2rem;padding:2rem}.scene-icon{font-size:3rem;margin:0 0 1rem}.scene-text{color:#333;font-size:1.3rem;font-weight:500;margin:0}.phrase-preview{margin-bottom:2rem}.preview-label{color:#666;font-size:.9rem;margin:0 0 1rem}.preview-english{color:#333;font-size:1.8rem;font-weight:700;margin:0 0 .5rem}.preview-japanese{color:#666;font-size:1.3rem;margin:0}.start-practice-button{background:#e74c3c;border:none;border-radius:50px;box-shadow:0 5px 15px #e74c3c4d;color:#fff;cursor:pointer;font-size:1.3rem;font-weight:700;padding:1rem 3rem;transition:all .3s ease}.start-practice-button:hover{box-shadow:0 8px 20px #e74c3c66;transform:translateY(-2px)}.conversation-bubble{background:#fff;border-radius:20px;box-shadow:0 10px 30px #0000001a;margin:1rem 0;padding:1.5rem}.conversation-bubble .english{color:#333;font-size:1.3rem;margin-bottom:.5rem}.conversation-bubble .japanese{color:#666;font-size:1rem}.practice-area{align-items:center;display:flex;flex-direction:column;gap:1rem;width:100%}.target-phrase{background:#fff;border-radius:20px;box-shadow:0 10px 30px #0000001a;padding:1rem;text-align:center;width:100%}.target-phrase h2{color:#5cc1c6;margin-bottom:1rem}.target-phrase .context{color:#666;font-size:.9rem;margin-bottom:1rem}.target-phrase .english-phrase{color:#333;font-size:1.8rem;font-weight:600;margin-bottom:.5rem}.target-phrase .japanese-phrase{color:#666;font-size:1.2rem}.user-turn-indicator{animation:pulse-glow 2s ease-in-out infinite;background:#fff;border-radius:25px;box-shadow:0 4px 12px #5cc1c633;color:#5cc1c6;font-size:1rem;font-weight:700;padding:.5rem 1.2rem}@keyframes pulse-glow{0%,to{box-shadow:0 4px 12px #5cc1c633}50%{box-shadow:0 4px 20px #5cc1c666}}.mic-status{align-items:center;display:flex;justify-content:center;min-height:80px}.listening-indicator{align-items:center;display:flex;flex-direction:column;gap:1rem}.listening-indicator p{color:#e74c3c;font-size:1.1rem;font-weight:600}.pulse-animation{animation:pulse 1.5s ease-in-out infinite;background:#e74c3c;border-radius:50%;height:60px;position:relative;width:60px}.pulse-animation:after,.pulse-animation:before{animation:pulse-ring 1.5s ease-in-out infinite;background:#e74c3c;border-radius:50%;content:"";height:100%;left:0;position:absolute;top:0;width:100%}.pulse-animation:after{animation-delay:.5s}@keyframes pulse{0%{transform:scale(.9)}50%{transform:scale(1)}to{transform:scale(.9)}}@keyframes pulse-ring{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.5)}}.not-supported{color:#e74c3c;text-align:center}.not-supported,.transcript{background:#ffffffe6;border-radius:10px;padding:1rem}.transcript{max-width:400px;width:100%}.transcript p{color:#333;margin:0}.feedback{border-radius:10px;font-weight:600;padding:1rem 2rem;text-align:center}.feedback.success{background:#2ecc71;color:#fff}.feedback.retry{background:#f39c12;color:#fff}.progress{margin-top:auto;max-width:400px;width:100%}.progress-bar{background:#ffffff4d;border-radius:5px;height:10px;margin-bottom:.5rem;overflow:hidden}.progress-fill{background:#fff;height:100%;transition:width .3s ease}.progress-text{color:#fff;font-weight:600;text-align:center}@media (max-width:768px){.app-header h1{font-size:1.5rem}.app-main{padding:1rem}.target-phrase .english-phrase{font-size:1.5rem}}
/*# sourceMappingURL=main.2e0b196d.css.map*/