body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box}.landing-container{align-items:center;background:linear-gradient(180deg,#1a1a2e,#16213e);display:flex;flex-direction:column;min-height:100vh;padding:20px;text-align:center}.product-title{color:#e2e8f0;font-size:40px;font-weight:700;margin-bottom:8px;margin-top:40px;text-shadow:0 0 15px #4299e180}.tagline{color:#a0aec0;font-size:20px;margin-bottom:40px}.highlight{color:#38b2ac;font-weight:700;text-shadow:0 0 8px #38b2ac4d}.cards-container{grid-gap:24px;display:grid;gap:24px;grid-template-columns:1fr;margin:0 auto;max-width:1200px;width:100%}.card{align-items:center;background:linear-gradient(135deg,#0f3460,#162447);border:1px solid #4299e133;border-radius:12px;box-shadow:0 8px 16px #0000004d;display:flex;flex-direction:column;height:100%;padding:28px;text-align:center;transition:all .3s ease}.card:hover{border-color:#38b2ac;box-shadow:0 15px 30px #0006;transform:translateY(-10px)}.card-icon{align-items:center;display:flex;font-size:46px;height:70px;justify-content:center;margin-bottom:20px}.card-title{color:#e2e8f0;font-size:22px;font-weight:600;margin-bottom:16px}.card-description{color:#a0aec0;flex-grow:1;line-height:1.6;margin-bottom:28px}.try-button{animation:pulse 2s infinite;background:linear-gradient(90deg,#38b2ac,#3182ce);border:none;border-radius:9999px;color:#fff;cursor:pointer;font-weight:700;overflow:hidden;padding:12px 28px;position:relative;transition:transform .3s,filter .3s}.try-button:hover{animation:none;filter:brightness(1.1);transform:scale(1.05)}.try-button:active{transform:scale(.95)}@keyframes pulse{0%{box-shadow:0 0 0 0 #38b2acb3;transform:scale(1)}70%{box-shadow:0 0 15px 10px #38b2ac00;transform:scale(1.05)}to{box-shadow:0 0 0 0 #38b2ac00;transform:scale(1)}}@media (min-width:768px){.product-title{font-size:48px}.tagline{font-size:24px}.cards-container{grid-template-columns:1fr 1fr}}@media (min-width:1024px){.cards-container{grid-template-columns:1fr 1fr 1fr 1fr}}.try-button.premium-required{background-color:#6c757d;border:1px solid #5a6268;box-shadow:none;color:#fff;cursor:not-allowed;opacity:.8}.try-button.premium-required:hover{background-color:#6c757d;box-shadow:none;transform:none}@media (max-width:768px){.try-button.premium-required{font-size:.85rem;padding:.5rem .75rem}}.chat-container{background-color:#191919;color:#fff;font-family:Inter,sans-serif;height:100vh}.chat-container,.chat-header{display:flex;flex-direction:column}.chat-header{align-items:center;background-color:#1e1e1e;border-bottom:1px solid #ffffff1a;padding:1rem}.chat-header h1{color:#fff;font-size:1.5rem;font-weight:600;margin:0}.header-subtitle{font-size:.85rem;margin:.25rem 0 0;opacity:.7}.chat-messages{display:flex;flex:1 1;flex-direction:column;overflow-y:auto;padding:1rem}.message{display:flex;margin-bottom:1rem;max-width:80%}.message.user{align-self:flex-end}.message.assistant{align-self:flex-start}.message-bubble{background-color:#333;border-radius:.75rem;padding:.75rem 1rem;position:relative}.user .message-bubble{background-color:#0084ff}.bot-label,.user-label{display:block;font-size:.7rem;margin-bottom:.25rem;opacity:.8}.message-content{font-size:.9rem;line-height:1.4;white-space:pre-wrap}.chat-input-form{background-color:#1e1e1e;border-top:1px solid #ffffff1a;display:flex;flex-direction:column;padding:1rem}.chat-input{background-color:#333;border:none;border-radius:8px;color:#fff;font-size:.9rem;margin-bottom:.75rem;padding:.75rem 1rem;width:100%}.chat-input::placeholder{color:#ffffff80}.chat-buttons{display:flex;justify-content:flex-end}.clear-button,.send-button{border:none;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:500;padding:.5rem 1.5rem;transition:opacity .2s}.clear-button{background-color:initial;color:#fff;margin-right:.5rem}.clear-button:hover{opacity:.8}.send-button{background-color:#0084ff;color:#fff}.send-button:hover{opacity:.9}.clear-button:disabled,.send-button:disabled{cursor:not-allowed;opacity:.5}.typing-indicator{align-items:center;display:inline-flex}.dot{animation:typing 1.5s ease-in-out infinite;background-color:#ffffffb3;border-radius:50%;height:6px;margin:0 2px;width:6px}.dot:first-child{animation-delay:0s}.dot:nth-child(2){animation-delay:.2s}.dot:nth-child(3){animation-delay:.4s}@keyframes typing{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-6px)}}.chat-messages::-webkit-scrollbar{width:8px}.chat-messages::-webkit-scrollbar-track{background:#1e1e1e}.chat-messages::-webkit-scrollbar-thumb{background-color:#333;border-radius:4px}@media (max-width:768px){.message{max-width:90%}}.graph-container{max-width:800px;width:100%}.graph-wrapper{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;height:400px;margin:10px 0;padding:20px;width:100%}.message.assistant .message-bubble.graph-container{max-width:95%;width:800px}canvas{height:auto!important;max-width:100%}.graph-title{color:#333;font-size:16px;font-weight:600;margin-bottom:10px;text-align:center}.graph-error{background-color:#fee;border:1px solid #faa;border-radius:6px;color:#c33;padding:20px;text-align:center}.assessment-container{color:#e2e8f0;display:flex;flex-direction:column;gap:20px;width:100%}.assessment-overview{background-color:#ffffff14;border-radius:10px;padding:15px;text-align:center}.assessment-overview h3{font-size:1.4rem;font-weight:600;margin:0 0 10px}.score{color:#38b2ac;font-size:1.5rem;font-weight:700}.assessment-summary{font-style:italic;line-height:1.5;margin:0}.assessment-criteria{display:flex;flex-direction:column;gap:20px}.criterion{background-color:#ffffff0d;border-left:3px solid #38b2ac;border-radius:10px;padding:15px}.criterion-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.criterion-header h4{font-size:1.1rem;font-weight:600;margin:0}.criterion-score{background-color:#38b2ac;border-radius:20px;color:#111;font-size:.9rem;font-weight:700;padding:3px 10px}.criterion-feedback{font-size:.95rem;line-height:1.5;margin:0 0 15px}.criterion-details{grid-gap:15px;display:grid;gap:15px;grid-template-columns:1fr}@media (min-width:640px){.criterion-details{grid-template-columns:1fr 1fr}}.improvements,.strengths{background-color:#0003;border-radius:8px;padding:12px}.strengths{border-left:3px solid #4bc0c0}.improvements{border-left:3px solid #ff6384}.improvements h5,.strengths h5{font-size:.9rem;font-weight:600;margin:0 0 10px}.improvements ul,.strengths ul{margin:0;padding-left:20px}.improvements ul li,.strengths ul li{font-size:.85rem;margin-bottom:5px}.specific-improvements{background-color:#ffffff14;border-left:3px solid #96f;border-radius:10px;padding:15px}.specific-improvements h4{font-size:1.1rem;font-weight:600;margin:0 0 10px}.specific-improvements ul{margin:0;padding-left:20px}.specific-improvements ul li{font-size:.9rem;line-height:1.5;margin-bottom:8px}.message-bubble.assessment-bubble{max-width:95%;width:800px}.assessment-text{line-height:1.5;white-space:pre-wrap}@media (max-width:768px){.message-bubble.assessment-bubble{width:100%}.criterion-header{align-items:flex-start;flex-direction:column;gap:5px}.criterion-score{align-self:flex-start}}.task-badge{background-color:#4a6fa5;border-radius:12px;color:#fff;display:inline-block;font-size:.9rem;font-weight:600;margin-top:10px;padding:4px 10px}.task-badge:contains("Task 1"){background-color:#4a6fa5}.task-badge:contains("Task 2"){background-color:#5a8f3b}.assessment-container .assessment-overview h3:after{color:#666;content:attr(data-task-type);font-size:.7em;margin-left:10px}.message.assistant+.message.assistant{margin-top:12px}.assessment-container{transition:opacity .3s ease}.assessment-container.new-assessment{animation:fadeIn .5s ease}.subscription-container{max-width:800px;width:100%}.subscription-content{background-color:#38b2ac26;border-radius:8px;display:flex;flex-direction:column;gap:15px;margin-top:10px;padding:15px}.subscription-message{color:#e2e8f0;font-size:1rem;font-weight:500;margin:0}.subscription-form{gap:10px}.subscription-label{color:#e2e8f0;font-size:.9rem;font-weight:500}.subscription-input-group{display:flex;gap:10px;width:100%}@media (max-width:600px){.subscription-input-group{flex-direction:column}}.subscription-input{background-color:#ffffff1a;border:1px solid #fff3;border-radius:6px;color:#fff;flex-grow:1;font-size:.9rem;padding:10px 15px;transition:border-color .2s,background-color .2s}.subscription-input:focus{background-color:#ffffff26;border-color:#38b2ac;outline:none}.subscription-input::placeholder{color:#ffffff80}.subscription-button{background-color:#38b2ac;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:10px 20px;transition:background-color .2s,opacity .2s;white-space:nowrap}.subscription-button:hover:not(:disabled){background-color:#2c9e9e}.subscription-button:disabled{cursor:not-allowed;opacity:.6}.input-error{border-color:#e53e3e}.email-error-message{color:#fc8181;font-size:.8rem;margin:3px 0 0;padding:0}.subscription-status{animation:fadeIn .3s ease;border-radius:4px;font-size:.85rem;margin-top:10px;padding:8px 12px}.subscription-status.success{background-color:#48bb7833;border-left:3px solid #48bb78;color:#9ae6b4}.subscription-status.error{background-color:#f5656533;border-left:3px solid #f56565;color:#feb2b2}@keyframes fadeIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.subscription-button.loading{color:#0000;position:relative}.subscription-button.loading:after{animation:buttonLoader .8s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;content:"";height:16px;left:50%;margin-left:-8px;margin-top:-8px;position:absolute;top:50%;width:16px}@keyframes buttonLoader{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (max-width:600px){.subscription-status{font-size:.8rem;padding:6px 10px}}.home-button-container{display:flex;justify-content:center;margin-top:15px}.go-home-button{background-color:#6c757d;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:10px 20px;transition:background-color .2s,transform .2s}.go-home-button:hover:not(:disabled){background-color:#5a6268;transform:translateY(-2px)}.go-home-button:active:not(:disabled){transform:translateY(0)}.go-home-button:disabled{cursor:not-allowed;opacity:.6}.subscription-form{display:flex;flex-direction:column;gap:15px}@media (max-width:600px){.go-home-button{font-size:1rem;padding:12px;width:100%}}.correct-answer{background-color:#38b2ac26;border-left:3px solid #38b2ac;border-radius:6px;margin-top:15px;padding:12px}.correct-answer h4{font-size:1rem;font-weight:600;margin:0 0 8px}.correct-answer p{font-size:.95rem;margin:0}.task-badge:contains("Reading"){background-color:#4c51bf}.audio-player{align-items:center;background-color:#4169e11a;border-radius:8px;display:flex;flex-direction:column;margin-top:15px;padding:12px}.audio-button{border:none;border-radius:20px;cursor:pointer;font-size:.95rem;font-weight:500;margin-bottom:8px;min-width:150px;padding:8px 16px;transition:all .2s ease}.play-button{background-color:#4169e1;color:#fff}.play-button:hover{background-color:#3558c8}.stop-button{background-color:#e14169;color:#fff}.stop-button:hover{background-color:#c83558}.audio-note{color:#ccc;font-size:.85rem;font-style:italic;margin:0}.audio-loading{align-items:center;color:#4169e1;display:flex;font-size:.95rem;margin:10px 0}.audio-loading:after{animation:spin 1s linear infinite;border:2px solid #4169e14d;border-radius:50%;border-top-color:#4169e1;content:"";height:16px;margin-left:8px;width:16px}@keyframes spin{to{transform:rotate(1turn)}}.task-badge.listening-badge{background-color:#4169e1}.task-badge.reading-badge{background-color:#4c51bf}.task-badge.writing-badge{background-color:#4a6fa5}.loading-container{align-items:center;background-color:#191919;color:#fff;display:flex;flex-direction:column;font-family:Inter,sans-serif;height:100vh;justify-content:center;padding:20px}.loading-logo{margin-bottom:2rem;text-align:center}.loading-logo h1{-webkit-text-fill-color:#0000;background:linear-gradient(90deg,#38b2ac,#3182ce);-webkit-background-clip:text;background-clip:text;font-size:2.5rem;font-weight:700;margin:0}.loading-indicator{background:linear-gradient(90deg,#38b2ac,#3182ce);border-radius:2px;height:4px;margin-bottom:1.5rem;max-width:400px;width:80%}.loading-message{color:#fffc;font-size:1.1rem;margin:0}.App,.loading-message{text-align:center}.App-logo{height:40vmin;pointer-events:none}@media (prefers-reduced-motion:no-preference){.App-logo{animation:App-logo-spin 20s linear infinite}}.App-header{align-items:center;background-color:#282c34;color:#fff;display:flex;flex-direction:column;font-size:calc(10px + 2vmin);justify-content:center;min-height:100vh}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}
/*# sourceMappingURL=main.6ce8c279.css.map*/