:root{--primary-color:#007bff;--primary-hover-color:#0069d9;--secondary-color:#58cc02;--secondary-hover-color:#4caf50;--background-color:#f7f7f7;--surface-color:#fff;--text-color:#333;--text-secondary-color:#757575;--border-color:#e0e0e0;--correct-color:#4caf50;--incorrect-color:#f44336}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f7f7f7;background-color:var(--background-color);color:#333;color:var(--text-color);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.container{margin:0 auto;max-width:900px;padding:1rem}.error,.loading{align-items:center;color:var(--text-secondary-color);display:flex;flex-direction:column;font-size:1.2rem;height:80vh;justify-content:center}.category-title{border-left:5px solid var(--primary-color);color:#2d3748;font-size:1.6rem;font-weight:700;margin:2rem 0 1.5rem;padding-left:1rem}.content-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.content-item{background-color:var(--surface-color);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 4px 6px #0000000d;cursor:pointer;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.content-item:hover{box-shadow:0 8px 16px #0000001a;transform:translateY(-5px)}.content-item img{display:block;height:180px;object-fit:cover;width:100%}.content-item h3{font-size:1rem;font-weight:600;overflow:hidden;padding:1rem;text-align:left;text-overflow:ellipsis;white-space:nowrap}.back-btn{background-color:var(--surface-color);border:1px solid var(--border-color);border-radius:20px;color:var(--text-color);cursor:pointer;font-size:.9rem;font-weight:500;margin-bottom:1.5rem;padding:.5rem 1rem;transition:background-color .2s}.back-btn:hover{background-color:#f0f0f0}.video-container{background-color:var(--surface-color);border-radius:12px;box-shadow:0 4px 6px #0000000d;margin-bottom:2rem;padding:1rem;width:100%}.video-container video{border-radius:8px;width:100%}.video-title{font-size:1.8rem;margin-top:1rem}.video-category{color:var(--text-secondary-color);margin-top:.25rem}.script-container h3{font-size:1.4rem;margin-bottom:1rem}.script-list{list-style:none;padding:0}.script-item{align-items:center;background-color:var(--surface-color);border:1px solid var(--border-color);border-radius:8px;display:flex;justify-content:space-between;margin-bottom:.75rem;padding:1rem 1.5rem}.script-text{font-size:1.1rem;line-height:1.5}.practice-btn{background-color:var(--primary-color);border:none;border-radius:20px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:.6rem 1.2rem;transition:background-color .2s}.practice-btn:hover{background-color:var(--primary-hover-color)}.practice-section{background-color:var(--surface-color);border-radius:12px;border-top:4px solid var(--primary-color);box-shadow:0 4px 6px #0000000d;margin-top:3rem;padding:1.5rem}.practice-text{background-color:#e7f3ff;border-radius:8px;color:#00529b;font-size:1.3rem;font-weight:500;margin:.5rem 0 1.5rem;padding:1rem;text-align:center}.record-btn{border:none;border-radius:8px;cursor:pointer;font-size:1.2rem;font-weight:700;padding:1rem;transition:background-color .2s;width:100%}.record-btn.idle{background-color:var(--secondary-color);color:#fff}.record-btn.recording{animation:pulse 1.5s infinite;background-color:#dc3545;color:#fff}.record-btn:disabled{background-color:#ccc;cursor:not-allowed}.status-text{color:var(--text-secondary-color);margin-top:1rem;text-align:center}.evaluation-result{border-top:1px solid var(--border-color);margin-top:2rem;padding-top:1.5rem}.result-summary p{font-size:1.1rem;margin-bottom:.5rem}.result-buttons{display:flex;gap:1rem;margin-top:1.5rem}.details-section{background-color:var(--background-color);border-radius:8px;margin-top:1.5rem;padding:1rem}.details-table{border-collapse:collapse;text-align:left;width:100%}.details-table td,.details-table th{border-bottom:1px solid var(--border-color);padding:.75rem}@keyframes pulse{0%{box-shadow:0 0 0 0 #dc3545b3}70%{box-shadow:0 0 0 10px #dc354500}to{box-shadow:0 0 0 0 #dc354500}}@media (max-width:768px){.script-item{align-items:flex-start;flex-direction:column;gap:1rem}.practice-btn{align-self:flex-end}}
/*# sourceMappingURL=main.d4d56a61.css.map*/