:root{--Black-background-color: #1F1F20;--Black-text-color: #f6f8fb;--White-background-color: #cddaeabe;--White-text-color: #1F1F20;--Components-color: #2d5da3;--Components-hover-color: #576EBB;--Components-active-color: #2B4C7E;--Border-color: #2d5da3;--Morado-1: #11062F;--Morado-2: #7149E4;--Azul-claro-1: #D4FFFE;--Azul-claro-2: #2FC8FF;--Azul-oscuro-1: #040425;--Azul-oscuro-2: #78DEFF;--Border-width: min(.2vw, .25vw);--gap: min(.8vw, .8vw);--padding: min(.8vw, .8vw);--margin: min(.4vw, .5vw)}.App{display:flex;height:100vh;width:100vw;overflow:hidden}@media (max-width: 768px){:root{--Border-width: .8vw;--gap: 6vw;--padding: 7vw;--margin: 1vw}}*{box-sizing:border-box}body{background-color:var(--White-background-color)}.HeaderButton{width:100%;margin:0 calc(var(--gap) + var(--margin));border:var(--Border-width) solid var(--Border-color);border-radius:10px;background-color:var(--Black-text-color);padding:5px calc(var(--gap) + var(--margin));text-align:center;display:flex;justify-content:center;align-items:center;color:var(--Components-color);font-weight:700;box-sizing:none}@media screen and (max-width: 768px){.HeaderButton{display:none}.HeaderButton.mobile{display:block;width:100%;margin:0 calc(var(--gap) + var(--margin));border:var(--Border-width) solid var(--Border-color);border-radius:10px;background-color:var(--Components-color);padding:1px calc(var(--gap) + var(--margin));text-align:center;align-items:center;justify-content:center;color:var(--Black-text-color)}.HeaderButton.mobile:last-child{margin-bottom:calc(var(--gap) + var(--margin))}}header{display:flex;justify-content:space-between;align-items:center;position:fixed;top:0;width:100vw;height:8vh;z-index:1000;background-color:var(--Components-color);padding-top:0;border-bottom:var(--Border-width) solid var(--Border-color)}.AppName{min-width:20vw;height:100%;display:flex;justify-content:center;align-items:center;font-size:var(--gap);font-weight:700;color:var(--Black-text-color);padding:0 calc(var(--gap) - var(--margin));border-right:var(--Border-width) solid var(--Border-color)}h1{font-size:2vw}.headerButton-container{width:100%;display:flex;justify-content:space-evenly;align-items:center;text-align:center;background-color:var(--Components-color);padding-top:0;height:100%}@media screen and (max-width: 768px){.AppName{border-right:none;width:auto}.headerButton-container{display:none}h1{font-size:10vw}}.options-button{min-width:2.5vw;min-height:2.5vw;width:2.5vw;height:2.5vw}.options-button-container{height:100%;display:flex;justify-content:center;align-items:center;border-left:var(--Border-width) solid var(--Border-color);padding:0 calc(var(--gap) - var(--margin))}@media screen and (max-width: 768px){.options-button{width:40px;height:40px}.options-button-container{padding:0 calc(var(--gap) - 3*var(--margin))}}.OptionsContainerDesktop{position:absolute;top:8vh;right:0;display:flex;flex-direction:column;justify-content:flex-start;align-items:center;width:15%;height:92vh;background-color:var(--White-background-color);border-left:var(--Border-width) solid var(--Border-color);padding:var(--padding);overflow-y:auto;z-index:1000}.ChildrenContainer{display:flex;flex-direction:column;justify-content:flex-start;align-items:center;overflow:hidden;padding:0;margin:0;width:100%;height:100%;gap:calc(var(--gap)/2)}div.OptionsContainerDesktop>button.HeaderButton{width:100%;margin:var(--margin) 0;display:block;text-align:center;justify-content:center;align-items:center;padding:calc(var(--padding)/2)}@media screen and (max-width: 768px){.OptionsContainerDesktop{justify-content:flex-end;width:40%;padding:0 calc(var(--padding)/4);height:100%}.OptionsContainerDesktop>button.HeaderButton{padding:calc(var(--padding)/3)}.ChildrenContainer{display:flex;flex-direction:column;justify-content:flex-end;align-items:center;overflow:hidden;padding:0;margin:0;width:100%;gap:calc(var(--gap)/2)}}.modal-overlay{position:fixed;inset:0;display:flex;justify-content:center;align-items:center;z-index:50}.modal-container{background-color:var(--White-background-color);border-radius:.5rem;width:25%;max-height:80%;border:var(--Border-width) solid var(--Border-color);display:flex;flex-direction:column}.modal-header{font-size:2rem;padding:2px var(--padding);padding-bottom:2px;border-bottom:var(--Border-width) solid var(--Border-color);text-align:left;font-weight:600;color:var(--White-text-color);flex:0 0 auto}.modal-children{flex:1 1 auto;padding:var(--padding);display:grid;gap:var(--gap);overflow-y:auto}.modal-child-button{display:grid;gap:var(--gap);border:var(--Border-width) solid var(--Border-color);border-radius:.5rem;width:100%;padding:var(--padding)}.modal-buttons{border-top:var(--Border-width) solid var(--Border-color);flex:0 0 auto;padding:0;display:flex;justify-content:center;gap:var(--gap)}.modal-button-sender{display:flex;justify-content:center;align-items:center;border-radius:.5rem;padding:10px calc(var(--padding) - 8px);background-color:transparent;color:var(--Components-color);max-width:150px;flex:0 0 auto}.modal-button-sender button.sender{background-color:var(--Components-color);color:var(--Black-text-color);justify-content:center;align-items:center;padding:10px var(--padding);border-radius:.5rem}.modal-container input,.modal-container input.password{width:100%;padding:.75rem 1rem;border:none;border-radius:.5rem;background-color:transparent;color:var(--White-text-color);font-size:1rem;outline:none;transition:all .2s ease-in-out;box-shadow:none}.modal-container .password-wrapper{position:relative;width:100%;display:flex;align-items:center}.modal-container input.password{width:100%;padding:.75rem 2.5rem .75rem 1rem;border:none;border-radius:.5rem;background-color:transparent;color:var(--White-text-color);font-size:1rem;outline:none;box-shadow:none;transition:all .2s ease-in-out}.modal-container .password-wrapper button.toggle-password{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--White-text-color);cursor:pointer;padding:.25rem;font-size:1rem}@media (max-width: 768px){.modal-container{width:90%;max-height:80%}.modal-child-button{gap:var(--gap);padding:0 var(--padding)}.modal-button-sender button.sender{background-color:var(--Components-color);justify-content:center;align-items:center;padding:10px calc(var(--padding) - 8px);border-radius:.5rem;height:100%}.modal-container input.password{padding-right:2.5rem}}.error{color:red}.History{flex:0 0 20%;margin-top:8vh;height:100vh;border-right:var(--Border-width) solid var(--Border-color);background-color:#b2becdbe;box-sizing:border-box;overflow-y:auto;display:flex;flex-direction:column;align-items:center}.NewButton{margin:calc(var(--margin)*3) 0}.Container{display:flex;flex-direction:column;align-items:stretch;box-sizing:border-box;overflow-y:auto;width:100%;max-width:600px;margin:0 auto}.Content{border-top:var(--Border-width) solid var(--Border-color);padding:calc(var(--margin)*3) 0;width:100%;text-align:center;display:flex;justify-content:center;box-sizing:border-box}@media (max-width: 768px){.History{flex:0 0 30%;height:auto;border-right:none;border-bottom:var(--Border-width) solid var(--Border-color)}.Container{max-width:100%;margin:0}.Content{justify-content:flex-start}}@media (max-width: 480px){.NewButton{margin:calc(var(--margin) * 1.5) 0}.Content{padding:calc(var(--margin) * 1.5) 0}}.CustomButton{width:100%;border:var(--Border-width) solid var(--Border-color);border-radius:10px;background-color:var(--Black-text-color);padding:5px calc(var(--gap) + var(--margin));text-align:center;display:flex;justify-content:center;align-items:center;color:var(--Components-color);font-weight:700;box-sizing:none}@media screen and (max-width: 768px){.CustomButton{display:none}.CustomButton.mobile{display:block;width:100%;margin:0 calc(var(--gap) + var(--margin));border:var(--Border-width) solid var(--Border-color);border-radius:10px;background-color:var(--Components-color);padding:1px calc(var(--gap) + var(--margin));text-align:center;align-items:center;justify-content:center;color:var(--Black-text-color)}}.ButtonHistory{padding:calc(var(--padding) / 2) var(--padding);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border:none;background:transparent;text-align:left;width:100%;box-sizing:border-box;border-bottom:var(--Border-width) solid var(--Border-color)}.ChatMessage{flex:1;margin-top:8vh;height:92vh;display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden}.messages-container{flex:1;width:100%;padding:1rem;overflow-y:auto;display:flex;flex-direction:column;gap:.6rem;padding-inline:calc(var(--padding) * 2.5)}.message{max-width:40%;padding:.6rem .9rem;border-radius:12px;word-wrap:break-word;box-shadow:0 2px 5px #0000001a}.message.text{background-color:var(--Components-color);color:var(--White-background-color);align-self:flex-start}.message.audio{background-color:var(--Components-hover-color);color:var(--White-background-color);align-self:flex-start}.message.user{background-color:var(--Components-active-color);color:var(--White-background-color);align-self:flex-start}.message audio{width:100%;border-radius:8px;color:var(--White-text-color)}.input-container{display:flex;align-items:center;padding:.8rem;padding-bottom:calc(var(--padding) * 2.5);padding-inline:calc(var(--padding) * 20);gap:.5rem;flex-shrink:0;margin-top:2rem;overflow-x:hidden}.input-container input[type=text]{flex:1;padding:.6rem .8rem;border-radius:20px;border:1px solid var(--Border-color);outline:none;font-size:.95rem}.input-container input[type=text]:focus{border-color:var(--Components-color)}.input-container button{padding:.5rem 1rem;border:none;border-radius:20px;background-color:var(--Components-color);color:var(--White-background-color);cursor:pointer;transition:.2s}.input-container button:hover{background-color:var(--Components-hover-color)}.input-container button:active{background-color:var(--Components-active-color)}.message.assistant{background-color:var(--Components-color);color:var(--White-background-color);align-self:flex-start;color:var(--Black-text-color)}@media (max-width: 768px){.messages-container{padding-inline:var(--padding);gap:.4rem}.message{max-width:85%;font-size:.9rem;padding:.5rem .8rem}.input-container{flex-direction:row;padding-inline:calc(var(--padding) / 2);gap:.4rem;margin-top:1rem;margin-bottom:2rem}.input-container input[type=text]{font-size:.85rem;padding:.5rem .7rem}.input-container button{padding:.4rem .8rem;font-size:.85rem}}.SubHeaderContainer{display:flex;justify-content:space-between;align-items:center;background:linear-gradient(to bottom,var(--Components-color),#3575d6);padding-top:var(--padding);padding-bottom:var(--padding);text-align:center;color:var(--Black-text-color)}.SubHeader{display:flex;justify-content:start;align-items:center;border-bottom:var(--border-width) solid var(--border-color)}.SubHeaderMoreButton{display:flex;justify-content:end;align-items:center;padding-inline:calc(var(--padding)/2)}.SubHeaderHistoryButton{display:flex;justify-content:start;align-items:center;padding-inline:calc(var(--padding)/2)}.SubHeaderHistoryButton img.rotated{transform:rotate(180deg)}.ChatMain{display:flex;height:100vh;width:100%;overflow:hidden}.home{min-height:92vh;background:#f9fafb;color:#1f2937;font-family:sans-serif;overflow:auto;overflow-x:hidden;box-sizing:border-box}.hero{height:100vh;width:100vw;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;background:linear-gradient(to right,#4a90e2,#2d5da3,#2d5da3,#4a90e2);color:#fff;padding:2rem}.hero-title{font-size:3rem;font-weight:700;margin-bottom:1rem}.hero-text{font-size:1.25rem;max-width:40rem}.section-title{font-size:2.5rem;font-weight:700;margin-bottom:1.5rem;text-align:center}.about{background:#fff;padding:5rem 1.5rem;text-align:center}.about-text{max-width:48rem;margin:0 auto;font-size:1.125rem;line-height:1.6}.subscriptions{background:#f3f4f6;padding:5rem 1.5rem;text-align:center}.plans{display:grid;grid-template-columns:1fr;gap:2rem;max-width:60rem;margin:0 auto}@media (min-width: 768px){.plans{grid-template-columns:repeat(2,1fr)}}.plan{background:#fff;padding:1.5rem;border-radius:1rem;box-shadow:0 2px 6px #0000001a}.plan h3{font-size:1.5rem;font-weight:600;margin-bottom:.5rem}.plan .price{font-size:1.75rem;font-weight:700;margin:1rem 0}.plan.featured{border:2px solid #6366f1}.btn{padding:.5rem 1rem;background:#4f46e5;color:#fff;border:none;border-radius:.75rem;cursor:pointer;transition:background .2s}.btn:hover{background:#4338ca}.btn.full{width:100%;padding:1rem}.contact{background:#fff;padding:5rem 1.5rem;text-align:center}.contact-text{max-width:36rem;margin:0 auto 2rem}.contact-form{max-width:36rem;margin:0 auto;display:flex;flex-direction:column;gap:1rem}.contact-form input,.contact-form textarea{width:100%;padding:.75rem;border:1px solid #d1d5db;border-radius:.75rem;font-size:1rem}.LessonMain{display:flex;height:100vh;width:100%;overflow:hidden}.LessonContainer{flex:1;margin-top:8vh;height:92vh;display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden}.LessonMessages-container{flex:1;width:100%;padding:1rem;overflow-y:auto;display:flex;flex-direction:column;gap:.6rem;padding-inline:calc(var(--padding) * 2.5)}.VocabularyContainer{display:flex;flex-direction:column;align-items:center;justify-content:center;margin-top:8vh;height:92vh;width:100%}.pay-container{min-height:100vh;width:100vw;display:flex;justify-content:center;align-items:center;background:linear-gradient(90deg,var(--Components-hover-color),var(--Components-color),var(--Components-hover-color));color:#fff;font-family:Inter,sans-serif;padding:2rem;box-sizing:border-box}.pay-card{background:#dddd;color:var(--Black-text-color);border-radius:1.25rem;padding:2.5rem 2rem;box-shadow:0 10px 25px #00000026;max-width:420px;width:100%;text-align:center;transition:transform .3s ease,box-shadow .3s ease}.pay-card:hover{transform:translateY(-5px);box-shadow:0 15px 35px #0003}.pay-card h2{font-size:2rem;font-weight:700;margin-bottom:.75rem;color:var(--Black-text-color)}.pay-card p{color:var(--Black-text-color);font-size:1rem;margin-bottom:2rem}.payment-methods{display:flex;flex-direction:column;gap:1rem}.payment-methods button{padding:.9rem 1rem;font-size:1rem;font-weight:600;border:none;border-radius:.75rem;cursor:pointer;transition:all .2s ease}.payment-methods button:nth-child(2){background:var(--Components-color);color:var(--Black-text-color)}.payment-methods button:nth-child(2):hover{background:var(--Components-hover-color)}.payment-methods button[disabled]{background:var(--Components-color);color:var(--Black-text-color);cursor:not-allowed}@media (max-width: 600px){.pay-card{padding:2rem 1.5rem}.pay-card h2{font-size:1.75rem}.pay-card p{font-size:.95rem}.payment-methods button{font-size:.95rem;padding:.8rem}}
