@charset "UTF-8";:root{--bg-color: #eaf3e0;--text-color: #333;--header-color: #2c3e50;--link-color: #3498db;--link-hover-color: #2980b9;--dialog-bg-color: #f4f4f4;--dialog-text-color: #333;--button-bg-color: rgba(52, 152, 219, .2);--button-hover-bg-color: #2980b9;--btn-back-bg-color: #e74c3c;--btn-back-hover-bg-color: #c0392b;--phrase-bg-color: #e0e0e0;--phrase-text-color: #333;--phrase-inactive-bg-color: #f5f5f5;--phrase-inactive-text-color: #888}.dark-theme{--bg-color: #2c3e50;--text-color: #ecf0f1;--header-color: #ecf0f1;--link-color: #3498db;--link-hover-color: #2980b9;--dialog-bg-color: #34495e;--dialog-text-color: #ecf0f1;--button-bg-color: rgba(52, 152, 219, .2);--button-hover-bg-color: #2980b9;--btn-back-bg-color: #e74c3c;--btn-back-hover-bg-color: #c0392b;--phrase-bg-color: #4a6278;--phrase-text-color: #ecf0f1;--phrase-inactive-bg-color: #3d5266;--phrase-inactive-text-color: #bdc3c7}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;line-height:1.6;color:var(--text-color);max-width:800px;margin:0 auto;padding:20px;background-color:var(--bg-color)}h1{text-align:center;color:var(--header-color)}.dialog-list ul{list-style-type:none;padding:0}.dialog-list li{margin-bottom:10px}.dialog-list a{color:var(--link-color);text-decoration:none}.dialog-list a:hover{text-decoration:underline;color:var(--link-hover-color)}.phrase-item{max-width:95%;margin:8px 0;padding:10px;border-radius:18px;position:relative;font-size:20px;line-height:1.4}.practice-phrase{margin-left:auto!important;margin-right:auto!important;max-width:600px!important;text-align:center}.practice-phrase .phrase-buttons{justify-content:center}.phrase-item.current-user{margin-left:auto;background-color:#dcf8c6;border-bottom-right-radius:4px}.phrase-item.other-user{margin-right:auto;background-color:#fff;border-bottom-left-radius:4px}.phrase-item.continue-sequence{margin-top:2px}.phrase-item.end-sequence{margin-bottom:10px}.author-name{font-size:12px;color:#888;margin-bottom:4px}.phrase-content p{margin:0}.translation{font-style:italic;color:#666;margin-top:4px}.dark-theme .translation{color:#bdc3c7}.phrase-buttons{display:flex;justify-content:flex-end;gap:5px;margin-top:5px;opacity:.7}.phrase-buttons button{background:none;border:none;font-size:18px;cursor:pointer;padding:2px}.phrase-item.active{box-shadow:0 0 0 2px var(--link-color)}.phrase-item.play-from{box-shadow:0 0 0 1px var(--link-color)}.dark-theme .phrase-item.current-user{background-color:#056162}.dark-theme .phrase-item.other-user{background-color:#262d31}.dark-theme .author-name{color:#aaa}.dark-theme .phrase-content .translation{color:#bbb}.phrase-item.inactive{color:var(--phrase-inactive-text-color)}.phrase-item button{padding:7px;border-radius:50%}.modal-close-button{padding:10px 15px}button{background-color:var(--button-bg-color);color:var(--text-color);border:none;margin-right:10px;border-radius:4px;cursor:pointer;transition:background-color .3s ease}button:hover{background-color:var(--button-hover-bg-color)}.btn-back{display:inline-block;background-color:var(--btn-back-bg-color);color:#fff;text-decoration:none;padding:10px 15px;border-radius:4px;margin-top:20px}.btn-back:hover{background-color:var(--btn-back-hover-bg-color)}.dialog-list{background-color:var(--dialog-bg-color);border-radius:8px;padding:20px;box-shadow:0 2px 10px #0000001a;margin-top:20px}.dialog-list-title{color:var(--header-color);font-size:24px;margin-bottom:15px;text-align:center}.dialog-list-ul{list-style-type:none;padding:0}.dialog-list-item{background-color:var(--button-bg-color);color:var(--text-color);padding:15px;margin-bottom:10px;border-radius:6px;cursor:pointer;transition:background-color .3s ease,transform .2s ease;font-size:18px}.dialog-list-item:hover{background-color:var(--button-hover-bg-color);transform:translateY(-2px)}.dialog-list-item:active{transform:translateY(0)}.dialog-player{max-width:1200px;margin:35px auto}.phrase-explanation{max-width:700px!important;margin:0 auto;padding:20px}.theme-toggle-button{position:fixed;top:10px;right:10px;background-color:var(--button-bg-color);color:#fff;border:none;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:20px;transition:background-color .3s ease;z-index:5}.theme-toggle-button:hover{background-color:var(--button-hover-bg-color)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background-color:var(--bg-color);border-radius:8px;max-width:95%;max-height:80%;position:relative;display:flex;flex-direction:column}.modal-scroll-content{padding:40px 20px 20px;overflow-y:auto;max-height:calc(80vh - 40px)}.modal-close{position:absolute;top:10px;right:10px;background:none;border:none;font-size:24px;cursor:pointer;color:var(--text-color);z-index:1001}.modal-scroll-content>:first-child{margin-top:10px}body.modal-open{overflow:hidden}.phrase-explanation{max-width:100%;margin:0;padding:0}.floating-panel{position:fixed;bottom:20px;left:50%;transform:translate(-50%);background-color:var(--bg-color);padding:10px;border-radius:8px;box-shadow:0 2px 10px #0000001a;z-index:1000;display:flex;gap:10px;justify-content:center;flex-wrap:nowrap}.floating-panel-button{background-color:var(--button-bg-color);color:var(--text-color);border:none;padding:10px 15px;border-radius:4px;cursor:pointer;transition:background-color .3s ease;font-size:12px;white-space:nowrap;flex:1}.floating-panel-button:hover{background-color:var(--button-hover-bg-color)}.floating-panel-button:disabled{opacity:.5;cursor:not-allowed}.help-button,.back-button{position:fixed;background-color:var(--button-bg-color);color:var(--text-color);border:none;border-radius:50%;width:50px;height:50px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:25px;transition:background-color .3s ease;z-index:5}.help-button:hover,.back-button:hover{background-color:var(--button-hover-bg-color)}.help-button{right:5px;bottom:10px}.back-button{top:20px;left:20px}.pause-btn,.resume-btn{background-color:var(--button-bg-color);color:var(--text-color);border:none;padding:10px 15px;border-radius:4px;cursor:pointer;transition:background-color .3s ease;font-size:12px;white-space:nowrap;flex:1}.pause-btn:hover,.resume-btn:hover{background-color:var(--button-hover-bg-color)}@media (max-width: 600px){.floating-panel{bottom:10px}.theme-toggle-button{top:10px;right:10px;width:35px;height:35px;font-size:18px}}.category-item{margin-bottom:.5rem}.category-header{display:flex;align-items:center;cursor:pointer;padding:.5rem;border-radius:4px;transition:background-color .2s}.category-header:hover{background-color:#0000000d}.category-toggle{margin-right:.5rem;font-size:.8rem;width:20px;display:inline-flex;align-items:center;justify-content:center}.category-name{margin:0;font-size:1rem;font-weight:500}.category-content{margin-left:1.5rem;padding-left:.5rem;border-left:1px solid rgba(0,0,0,.1)}.dialog-list-ul{list-style:none;padding:0;margin:.5rem 0}.dialog-list-item{padding:.5rem;cursor:pointer;border-radius:4px;transition:background-color .2s}.dialog-list-item:hover{background-color:#0000000d}.dark-theme .category-toggle{color:var(--text-color)}.dark-theme .category-name{color:var(--header-color)}.voice-echo-button{position:fixed;left:5px;bottom:10px;width:40px;height:40px;border-radius:50%;background:var(--button-bg-color);color:var(--text-color);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;z-index:5}.voice-echo-button.active{background:#38c172}.voice-echo-button:hover{background-color:var(--button-hover-bg-color);transform:scale(1.05)}.voice-echo-button svg{width:24px;height:24px;fill:var(--text-color);transition:transform .2s ease}.voice-echo-button.speaking svg{transform:scale(1.1)}.voice-echo-button .wave{position:absolute;width:100%;height:100%;border-radius:50%;background:transparent;border:2px solid rgba(56,193,114,.5)}.voice-echo-button .wave-2{position:absolute;width:100%;height:100%;border-radius:50%;background:transparent;border:2px solid rgba(56,193,114,.3)}.voice-echo-button .wave-3{position:absolute;width:100%;height:100%;border-radius:50%;background:transparent;border:2px solid rgba(56,193,114,.1)}.voice-echo-button.speaking .wave{animation:wave1 1.5s linear infinite}.voice-echo-button.speaking .wave-2{animation:wave2 1.5s linear infinite}.voice-echo-button.speaking .wave-3{animation:wave3 1.5s linear infinite}@keyframes wave1{0%{transform:scale(1);opacity:.8}to{transform:scale(1.3);opacity:0}}@keyframes wave2{0%{transform:scale(1);opacity:.6}to{transform:scale(1.5);opacity:0}}@keyframes wave3{0%{transform:scale(1);opacity:.4}to{transform:scale(1.7);opacity:0}}.book-button{position:fixed;left:20px;bottom:20px;background-color:var(--button-bg-color);color:var(--text-color);border:none;border-radius:50%;width:50px;height:50px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:25px;transition:background-color .3s ease;z-index:5}.book-button:hover{background-color:var(--button-hover-bg-color)}.progress-bar{margin-bottom:20px;max-width:600px;margin-left:auto;margin-right:auto}.progress-info{display:flex;justify-content:space-between;color:var(--text-color);margin-bottom:8px;font-size:14px}.progress-track{height:8px;background-color:#e2e8f0;border-radius:9999px;overflow:hidden}.progress-fill{height:100%;background-color:#3498dbcc;transition:width .3s ease}.speak-prompt{background-color:var(--bg-color);padding:16px;border-radius:8px;text-align:center;max-width:300px!important;margin:20px auto!important;border:2px dashed var(--button-bg-color);box-shadow:0 2px 8px #0000000d}.speak-prompt p{color:var(--text-color);font-weight:500;margin:0;font-size:.95rem;opacity:.9}.speak-prompt.current-user{background-color:var(--bg-color)}.dark-theme .speak-prompt{border-color:var(--button-bg-color);background-color:var(--bg-color)}.answer-timer{width:100%;background-color:#eee;height:4px;margin-top:8px;border-radius:2px;overflow:hidden}.answer-timer-fill{border-radius:2px;transform-origin:left}.floating-panel-button.active{background-color:#4caf50;color:#fff}.auto-mode-button{background-color:var(--button-bg-color);color:var(--text-color);border:none;padding:8px 12px 50px;border-radius:4px;cursor:pointer;transition:background-color .3s ease;font-size:12px;white-space:nowrap;margin:10px auto}.auto-mode-button.active{background-color:#4caf50;color:#fff}.dialog-player .content-container{position:relative;padding-bottom:100px}.dialog-player .auto-mode-button{position:absolute;left:50%;transform:translate(-50%);padding:10px 20px;border:none;border-radius:5px;color:#fff;font-size:16px;cursor:pointer;transition:background-color .3s ease}.dialog-player .auto-mode-button:hover{background-color:#367c39}.dialog-player .auto-mode-button.active{background-color:#ff9800}.dialog-player .auto-mode-button.active:hover{background-color:#e68a00}.final-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center}.final-screen h2{font-size:2em;margin-bottom:1em}.final-screen p{font-size:1.2em;margin-bottom:2em}.final-screen .final-buttons{display:flex;gap:1em}.final-screen .final-buttons .final-button{padding:.8em 1.5em;font-size:1.1em;border:none;border-radius:5px;background-color:#4caf50;color:#fff;cursor:pointer}.final-screen .final-buttons .final-button:hover{background-color:#367c39}
