@import"https://fonts.googleapis.com/css2?family=Vazirmatn:wght@100..900&display=swap";:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html,body{margin:0;padding:0;width:100%;min-height:100vh;overflow-x:hidden}#root{width:100%;min-height:100vh}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}h1{font-size:3.2em;line-height:1.1}:root{--primary-color: var(--tg-theme-button-color, #2481cc);--bg-color: var(--tg-theme-bg-color, #ffffff);--secondary-bg: var(--tg-theme-secondary-bg-color, #f0f0f0);--text-color: var(--tg-theme-text-color, #000000);--hint-color: var(--tg-theme-hint-color, #888888);--button-text: var(--tg-theme-button-text-color, #ffffff);--error-color: #f44336;--success-color: #4caf50;--info-color: #2196f3;--warning-color: #ff9800;--roleplay-color: #9c27b0;--tier-free-color: #78909c;--tier-pro-color: #2196f3;--border-radius: 12px;--transition: all .2s ease;--container-padding: clamp(12px, 4vw, 20px)}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background-color:var(--bg-color);color:var(--text-color);margin:0;padding:0;-webkit-font-smoothing:antialiased;width:100%}[lang=fa] body,[lang=fa] input,[lang=fa] textarea,[lang=fa] select,[lang=fa] button,[lang=fa] .lang-name,[lang=fa] .welcome-text,[lang=fa] .feature-item span{font-family:Vazirmatn,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.6}[lang=fa] h2{font-family:Vazirmatn,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-weight:700}.container{width:100%;max-width:500px;margin:0 auto;padding:var(--container-padding);box-sizing:border-box;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}h2{font-size:clamp(20px,5vw,24px);font-weight:700;margin-bottom:8px;color:var(--text-color);text-align:center}p{line-height:1.5;margin-top:0}.stats-section{background-color:var(--secondary-bg);padding:16px;border-radius:var(--border-radius);margin-bottom:24px;display:grid;grid-template-columns:repeat(3,1fr);gap:12px;border:1px solid rgba(0,0,0,.05)}.stat-item{text-align:center}.stat-item small{color:var(--hint-color);font-size:11px;text-transform:uppercase;letter-spacing:.5px;display:block;margin-bottom:4px}.stat-value{font-weight:600;font-size:16px}.stat-value.premium{color:var(--warning-color, #ff9800)}.form-group{margin-bottom:clamp(16px,4vw,20px);width:100%}label{display:block;margin-bottom:8px;font-size:clamp(13px,3.5vw,14px);font-weight:600;color:var(--primary-color)}input,textarea,select{width:100%;padding:clamp(10px,3vw,12px) clamp(12px,3.5vw,16px);border:2px solid transparent;border-radius:var(--border-radius);background-color:var(--secondary-bg);color:var(--text-color);box-sizing:border-box;font-size:16px;transition:var(--transition);outline:none;text-align:start}input:focus,textarea:focus,select:focus{border-color:var(--primary-color);background-color:var(--bg-color);box-shadow:0 0 0 4px #2481cc1a}button{width:100%;padding:clamp(10px,3.5vw,14px);background-color:var(--primary-color);color:var(--button-text);border:none;border-radius:var(--border-radius);font-size:clamp(14px,4vw,16px);font-weight:600;cursor:pointer;transition:var(--transition);display:flex;align-items:center;justify-content:center;gap:clamp(6px,2vw,8px)}button:active{transform:scale(.98);opacity:.9}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,a:focus-visible{outline:2px solid var(--primary-color);outline-offset:2px}button:disabled{opacity:.5;cursor:not-allowed;transform:none}button.secondary{background-color:var(--secondary-bg);color:var(--primary-color)}button.small{padding:clamp(6px,2vw,8px) clamp(12px,4vw,16px);font-size:clamp(12px,3.5vw,14px);width:auto}.onboarding-container{display:flex;flex-direction:column;flex-grow:1}.progress-bar{width:100%;height:clamp(4px,1.5vw,6px);background-color:var(--tg-theme-secondary-bg-color, #f0f0f0);border-radius:3px;margin-bottom:clamp(20px,6vw,28px);overflow:hidden}.progress-fill{height:100%;background-color:var(--tg-theme-button-color, #2481cc);transition:width .4s cubic-bezier(.4,0,.2,1)}.step-content{flex-grow:1;animation:fadeInSlide .3s ease-out}@keyframes fadeInSlide{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.step-description{color:var(--tg-theme-hint-color, #888);font-size:clamp(13px,4vw,15px);margin-bottom:clamp(16px,5vw,20px);line-height:1.5}.step-navigation{display:flex;justify-content:space-between;margin-top:auto;padding:clamp(16px,5vw,20px) 0;gap:clamp(8px,3vw,12px)}.review-section{background-color:var(--tg-theme-secondary-bg-color, #f0f0f0);padding:4px;border-radius:clamp(12px,4vw,16px);border:1px solid rgba(0,0,0,.05)}.review-item{padding:clamp(10px,3vw,12px) clamp(12px,4vw,16px);border-bottom:1px solid rgba(0,0,0,.08);display:flex;flex-direction:column;gap:clamp(2px,1vw,4px)}.review-item:last-child{border-bottom:none}.review-label{font-size:clamp(10px,3vw,11px);color:var(--tg-theme-hint-color, #888);text-transform:uppercase;letter-spacing:.5px}.review-value{font-weight:500;font-size:clamp(14px,4vw,16px);color:var(--tg-theme-text-color, #000);display:flex;align-items:center;gap:8px;direction:ltr}[lang=fa] .review-value{justify-content:flex-end}[lang=fa] .review-item{align-items:flex-end;text-align:right}.status{margin-top:clamp(12px,4vw,16px);text-align:center;font-size:clamp(12px,3.5vw,14px);padding:clamp(10px,3vw,12px);border-radius:clamp(10px,3vw,12px);font-weight:500}.status.success{background-color:#4caf501a;color:var(--success-color, #4caf50)}.status.error{background-color:#f443361a;color:var(--error-color, #f44336)}.error{color:var(--error-color, #f44336);text-align:center}.error-container{display:flex;align-items:center;justify-content:center}.error-content{text-align:center;padding:clamp(24px,10vw,40px) clamp(12px,5vw,20px)}.error-content .error-icon{font-size:clamp(36px,12vw,48px);margin-bottom:clamp(12px,4vw,16px)}.error-content h3{margin-bottom:8px;color:var(--tg-theme-text-color, #000)}.error-content p{color:var(--tg-theme-hint-color, #888);margin-bottom:clamp(16px,6vw,24px)}.button-container{display:flex;flex-direction:column;gap:clamp(8px,3vw,10px);margin-top:clamp(12px,5vw,20px)}.button-row{display:flex;gap:clamp(8px,3vw,10px)}.button-row button{flex:1}.spinner{width:16px;height:16px;border:2px solid transparent;border-top-color:currentColor;border-radius:50%;animation:spin .8s linear infinite}.error-boundary{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:clamp(12px,5vw,20px)}.error-boundary-content{text-align:center;max-width:400px}.error-boundary-content .error-icon{font-size:clamp(48px,15vw,64px);margin-bottom:clamp(12px,5vw,20px)}.error-boundary-content h2{margin-bottom:clamp(8px,3vw,12px)}.error-boundary-content .error-message{color:var(--tg-theme-hint-color, #888);margin-bottom:clamp(16px,6vw,24px)}.error-boundary-content .error-details{background-color:var(--tg-theme-secondary-bg-color, #f0f0f0);padding:clamp(8px,3vw,12px);border-radius:8px;font-size:clamp(10px,3vw,12px);text-align:left;overflow-x:auto;margin-bottom:clamp(16px,6vw,24px)}.error-boundary-content .error-actions{display:flex;flex-direction:column;gap:clamp(8px,3vw,10px)}.profile-container{animation:fadeIn .3s ease-out;width:100%;display:flex;flex-direction:column;align-items:center}.profile-container>*{width:100%}@media(max-width:480px){.container{padding:12px}.button-row{flex-direction:column}.button-row button{width:100%}}@media(min-width:481px){.container{padding:20px}}.step-indicators{display:flex;justify-content:center;gap:clamp(6px,2vw,8px);margin-bottom:clamp(6px,2vw,8px)}.step-dot{width:clamp(8px,2.5vw,10px);height:clamp(8px,2.5vw,10px);border-radius:50%;background-color:var(--tg-theme-secondary-bg-color, #f0f0f0);transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center}.step-dot.active{width:clamp(20px,6vw,24px);border-radius:12px;background-color:var(--tg-theme-button-color, #2481cc)}.step-dot.completed{background-color:var(--tg-theme-button-color, #2481cc)}.step-dot.completed svg{width:clamp(6px,2vw,8px);height:clamp(6px,2vw,8px);stroke:var(--tg-theme-button-text-color, #fff)}.step-counter{text-align:center;font-size:clamp(11px,3vw,12px);color:var(--tg-theme-hint-color, #888);margin-bottom:clamp(16px,5vw,20px)}.welcome-step{text-align:center;padding:clamp(12px,4vw,16px) 0}.welcome-step .welcome-icon{display:flex;justify-content:center;align-items:center;margin-bottom:clamp(12px,4vw,16px);color:var(--tg-theme-button-color, #2481cc);animation:wave 1.5s ease-in-out infinite}.welcome-step .welcome-icon svg{width:clamp(56px,18vw,64px);height:clamp(56px,18vw,64px)}@keyframes wave{0%,to{transform:rotate(0)}25%{transform:rotate(20deg)}75%{transform:rotate(-20deg)}}.welcome-text{font-size:clamp(14px,4vw,16px);color:var(--tg-theme-text-color, #000);margin-bottom:clamp(20px,6vw,24px);line-height:1.6}.welcome-features{display:flex;flex-direction:column;gap:clamp(8px,2.5vw,12px);margin-bottom:clamp(20px,6vw,24px)}.feature-item{display:flex;align-items:center;gap:clamp(10px,3vw,12px);padding:clamp(12px,4vw,14px) clamp(14px,4vw,16px);background-color:var(--tg-theme-secondary-bg-color, #f0f0f0);border-radius:clamp(10px,3vw,12px);text-align:start;border:1px solid rgba(0,0,0,.05);font-size:clamp(13px,4vw,15px);color:var(--tg-theme-text-color, #000)}.feature-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--tg-theme-button-color, #2481cc)}.feature-icon svg{width:clamp(22px,6vw,24px);height:clamp(22px,6vw,24px)}.welcome-time{display:flex;align-items:center;justify-content:center;gap:clamp(6px,2vw,8px);font-size:clamp(13px,4vw,14px);color:var(--tg-theme-hint-color, #888)}.welcome-time svg{color:var(--tg-theme-hint-color, #888)}.language-grid-container{margin-bottom:clamp(8px,2.5vw,12px)}.language-grid{display:flex;justify-content:center;gap:clamp(10px,3vw,12px);flex-wrap:wrap;padding:clamp(4px,1.5vw,6px) 0;direction:ltr}.language-scroll-container{position:relative;margin:0 calc(-1 * var(--container-padding, 16px));padding:0 calc(var(--container-padding, 16px) + 32px)}.scroll-arrow{position:absolute;top:50%;transform:translateY(-50%);width:32px;height:32px;border-radius:50%;background-color:var(--tg-theme-bg-color, #fff);border:1px solid var(--tg-theme-hint-color, #ccc);color:var(--tg-theme-text-color, #000);display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:2;transition:all .2s ease;box-shadow:0 2px 8px #0000001a}.scroll-arrow:hover{background-color:var(--tg-theme-button-color, #2481cc);color:var(--tg-theme-button-text-color, #fff);border-color:var(--tg-theme-button-color, #2481cc)}.scroll-arrow:active{transform:translateY(-50%) scale(.95)}.scroll-arrow-left{left:4px}.scroll-arrow-right{right:4px}@media(hover:none)and (pointer:coarse){.scroll-arrow{display:none}.language-scroll-container{padding:0 var(--container-padding, 16px)}}.language-scroll{display:flex;gap:clamp(10px,3vw,12px);overflow-x:auto;overflow-y:hidden;padding:clamp(4px,1.5vw,6px) 0 clamp(12px,4vw,16px) 0;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin-bottom:clamp(8px,2.5vw,12px);direction:ltr}.language-scroll::-webkit-scrollbar{display:none}.language-card{flex:0 0 auto;width:clamp(100px,28vw,120px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(6px,2vw,8px);padding:clamp(16px,5vw,20px) clamp(12px,4vw,16px);background-color:var(--tg-theme-secondary-bg-color, #f0f0f0);border:2px solid transparent;border-radius:clamp(14px,4vw,18px);cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);scroll-snap-align:start;position:relative;text-align:center}.language-card:first-child{margin-inline-start:0}.language-card:active{transform:scale(.96)}.language-card.selected{background:linear-gradient(135deg,#2481cc26,#9c27b01a);border-color:var(--tg-theme-button-color, #2481cc);box-shadow:0 4px 12px #2481cc33}.language-card .lang-badge{display:inline-flex;align-items:center;justify-content:center;min-width:clamp(48px,13vw,58px);height:clamp(32px,9vw,38px);padding:0 8px;border-radius:8px;font-size:clamp(15px,4.2vw,17px);font-weight:700;color:#fff;letter-spacing:.5px;line-height:1}.language-card .lang-name{font-size:clamp(12px,3.5vw,14px);font-weight:600;color:var(--tg-theme-text-color, #000);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.language-card .lang-check{position:absolute;top:clamp(6px,2vw,8px);right:clamp(6px,2vw,8px);width:clamp(20px,6vw,24px);height:clamp(20px,6vw,24px);background-color:var(--tg-theme-button-color, #2481cc);border-radius:50%;display:flex;align-items:center;justify-content:center;animation:checkPop .3s cubic-bezier(.4,0,.2,1)}.language-card .lang-check svg{width:clamp(10px,3vw,12px);height:clamp(10px,3vw,12px);stroke:var(--tg-theme-button-text-color, #fff);stroke-width:3}@keyframes checkPop{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}.other-language-input{margin-top:clamp(10px,3vw,12px)}.validation-hint{display:block;color:var(--error-color);font-size:clamp(12px,3.5vw,13px);margin-top:clamp(6px,2vw,8px);animation:shake .4s ease}.input-error{border-color:var(--error-color)}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.optional-badge{display:inline-block;margin-inline-start:clamp(6px,2vw,8px);padding:clamp(2px,1vw,3px) clamp(6px,2vw,8px);font-size:clamp(10px,3vw,11px);font-weight:600;text-transform:uppercase;background-color:var(--tg-theme-secondary-bg-color, #f0f0f0);color:var(--tg-theme-hint-color, #888);border-radius:4px;vertical-align:middle}.nav-buttons-group{display:flex;gap:clamp(6px,2vw,8px);flex:2}.nav-buttons-group button{flex:1}.review-flag{margin-inline-end:clamp(6px,2vw,8px)}.review-flag.lang-badge{display:inline-flex;align-items:center;justify-content:center;min-width:clamp(30px,8vw,36px);height:clamp(20px,5vw,24px);padding:0 5px;border-radius:5px;font-size:clamp(10px,2.8vw,12px);font-weight:700;color:#fff;letter-spacing:.5px;line-height:1;vertical-align:middle}.bio-value{display:block;white-space:pre-wrap;word-break:break-word}.review-next-hint{margin-top:clamp(12px,4vw,16px);padding:clamp(10px,3vw,12px);background:linear-gradient(135deg,#2196f31a,#9c27b01a);border:1px solid rgba(33,150,243,.2);border-radius:clamp(10px,3vw,12px);font-size:clamp(13px,4vw,14px);color:var(--tg-theme-button-color, #2481cc);text-align:center;line-height:1.5}.fetch-bio-btn{margin-top:clamp(10px,3vw,12px)}.step-navigation>button{flex:1}.nav-placeholder{flex:0;width:0}.assessment-step{text-align:center;padding:clamp(8px,3vw,12px) 0}.consent-step{display:flex;flex-direction:column;gap:clamp(16px,5vw,20px);padding:clamp(8px,3vw,12px) 0}.consent-links{display:flex;flex-direction:column;gap:clamp(8px,2.5vw,10px)}.consent-link{display:flex;align-items:center;justify-content:center;padding:clamp(12px,4vw,14px) clamp(14px,4vw,16px);background-color:var(--tg-theme-secondary-bg-color, #f0f0f0);border-radius:clamp(10px,3vw,12px);border:1px solid rgba(0,0,0,.05);color:var(--tg-theme-link-color, #2481cc);font-size:clamp(14px,4vw,15px);font-weight:600;text-decoration:none;transition:all .2s ease}.consent-link:active{transform:scale(.98);opacity:.8}.consent-checkbox-label{display:flex;align-items:flex-start;gap:clamp(10px,3vw,12px);padding:clamp(14px,4vw,16px);background:linear-gradient(135deg,#2196f314,#9c27b00f);border:2px solid rgba(33,150,243,.15);border-radius:clamp(10px,3vw,12px);cursor:pointer;transition:all .2s ease}.consent-checkbox-label:has(.consent-checkbox:checked){border-color:var(--tg-theme-button-color, #2481cc);background:linear-gradient(135deg,#2196f326,#9c27b01a)}.consent-checkbox{flex-shrink:0;width:clamp(20px,6vw,22px);height:clamp(20px,6vw,22px);margin-top:1px;accent-color:var(--tg-theme-button-color, #2481cc);cursor:pointer}.consent-checkbox-text{font-size:clamp(13px,4vw,14px);color:var(--tg-theme-text-color, #000);line-height:1.5}.consent-hint{font-size:clamp(12px,3.5vw,13px);color:var(--tg-theme-hint-color, #888);line-height:1.5;text-align:center}.assessment-step .assessment-icon{display:flex;justify-content:center;align-items:center;margin-bottom:clamp(12px,4vw,16px);color:var(--tg-theme-button-color, #2481cc)}.assessment-step .assessment-icon svg{width:clamp(48px,14vw,56px);height:clamp(48px,14vw,56px)}.assessment-intro{font-size:clamp(14px,4vw,16px);color:var(--tg-theme-text-color, #000);margin-bottom:clamp(16px,5vw,20px);line-height:1.6}.assessment-features{display:flex;flex-direction:column;gap:clamp(8px,2.5vw,12px);margin-bottom:clamp(16px,5vw,24px)}.assessment-feature-item{display:flex;align-items:center;gap:clamp(10px,3vw,12px);padding:clamp(12px,4vw,14px) clamp(14px,4vw,16px);background-color:var(--tg-theme-secondary-bg-color, #f0f0f0);border-radius:clamp(10px,3vw,12px);text-align:start;border:1px solid rgba(0,0,0,.05)}.assessment-feature-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--tg-theme-button-color, #2481cc)}.assessment-feature-icon svg{width:clamp(22px,6vw,24px);height:clamp(22px,6vw,24px)}.assessment-feature-text{display:flex;flex-direction:column;gap:clamp(2px,.5vw,3px)}.assessment-feature-title{font-size:clamp(13px,4vw,15px);font-weight:600;color:var(--tg-theme-text-color, #000)}.assessment-feature-desc{font-size:clamp(12px,3.5vw,13px);color:var(--tg-theme-hint-color, #888);line-height:1.4}.assessment-skip-hint{font-size:clamp(12px,3.5vw,13px);color:var(--tg-theme-hint-color, #888);margin-bottom:clamp(12px,4vw,16px);line-height:1.5}.assessment-buttons{display:flex;gap:clamp(6px,2vw,8px)}@media(max-width:360px){.language-card{width:clamp(90px,26vw,100px)}}.level-card{background-color:var(--tg-theme-secondary-bg-color, #f0f0f0);border-radius:clamp(14px,4vw,18px);overflow:hidden;margin-bottom:clamp(16px,5vw,24px);border:1px solid rgba(0,0,0,.05);box-shadow:0 4px 12px #00000014}.level-main{padding:clamp(18px,5vw,24px);display:flex;align-items:center;gap:clamp(14px,4vw,18px);position:relative;overflow:hidden}.level-main:before{content:"";position:absolute;top:-50%;right:-20%;width:60%;height:200%;background:#ffffff1a;transform:rotate(15deg);pointer-events:none}.level-icon{font-size:clamp(36px,10vw,48px);line-height:1;flex-shrink:0;filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}.level-info{flex:1;display:flex;flex-direction:column;gap:clamp(2px,.5vw,4px);min-width:0}.level-label{font-size:clamp(10px,3vw,12px);text-transform:uppercase;letter-spacing:.5px;color:#fffc;font-weight:500}.level-value{font-size:clamp(32px,9vw,42px);font-weight:800;color:#fff;line-height:1;text-shadow:0 2px 4px rgba(0,0,0,.2)}.level-name{font-size:clamp(12px,3.5vw,14px);color:#ffffffe6;font-weight:500}.level-language{display:flex;flex-direction:column;align-items:center;gap:4px;padding:clamp(8px,2.5vw,12px);background:#fff3;border-radius:clamp(10px,3vw,14px);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.learning-flag{font-size:clamp(18px,5vw,24px)}.learning-lang{font-size:clamp(10px,3vw,12px);color:#fff;font-weight:600;text-transform:uppercase}.level-progress-section{padding:clamp(14px,4vw,18px);background-color:var(--tg-theme-bg-color, #fff)}.level-progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:clamp(12px,4vw,16px)}.progress-title{font-size:clamp(11px,3vw,13px);text-transform:uppercase;letter-spacing:.5px;color:var(--tg-theme-hint-color, #888);font-weight:600}.progress-value{font-size:clamp(12px,3.5vw,14px);color:var(--tg-theme-text-color, #000);font-weight:700}.level-steps{display:flex;align-items:flex-start;justify-content:space-between;position:relative;margin-bottom:clamp(12px,4vw,16px)}.level-step-wrapper{display:flex;flex-direction:column;align-items:center;position:relative;flex:1}.level-step{width:clamp(28px,8vw,36px);height:clamp(28px,8vw,36px);border-radius:50%;background-color:var(--tg-theme-secondary-bg-color, #f0f0f0);border:3px solid var(--tg-theme-secondary-bg-color, #f0f0f0);display:flex;align-items:center;justify-content:center;transition:all .3s ease;position:relative;z-index:2}.level-step.completed{color:#fff}.level-step.current{border-width:3px;background-color:#fff;box-shadow:0 0 0 4px #0000000d;animation:pulse 2s infinite}@keyframes pulse{0%,to{box-shadow:0 0 0 4px #0000000d}50%{box-shadow:0 0 0 8px #00000005}}.step-check{font-size:clamp(12px,3.5vw,16px);font-weight:700}.step-current{width:clamp(10px,3vw,14px);height:clamp(10px,3vw,14px);border-radius:50%;background:currentColor}.step-label{font-size:clamp(9px,2.5vw,11px);color:var(--tg-theme-hint-color, #888);font-weight:500;margin-top:clamp(4px,1.5vw,6px);transition:all .2s ease}.step-label.active{font-weight:700;color:var(--tg-theme-text-color, #000)}.step-connector{position:absolute;top:clamp(14px,4vw,18px);left:calc(50% + clamp(14px,4vw,18px));right:calc(-50% + clamp(14px,4vw,18px));height:3px;background-color:var(--tg-theme-secondary-bg-color, #f0f0f0);z-index:1;transition:background-color .3s ease}.level-description{font-size:clamp(12px,3.5vw,14px);color:var(--tg-theme-hint-color, #888);line-height:1.5;margin:0;text-align:center;font-style:italic}@media(max-width:320px){.level-steps{gap:2px}.level-step{width:26px;height:26px}.step-connector{left:calc(50% + 13px);right:calc(-50% + 13px);top:13px}}.dashboard{margin-bottom:clamp(16px,5vw,24px);width:100%}.dashboard-title{font-size:clamp(12px,3.5vw,14px);text-transform:uppercase;letter-spacing:.5px;color:var(--tg-theme-hint-color, #888);font-weight:600;margin-bottom:12px;margin-top:0;text-align:center}.dashboard-welcome{background:linear-gradient(135deg,#2196f31a,#9c27b01a);border:1px solid rgba(33,150,243,.2);border-radius:clamp(10px,3vw,12px);padding:clamp(12px,4vw,16px);margin-bottom:clamp(12px,4vw,16px);text-align:center}.welcome-message{font-size:clamp(13px,4vw,15px);color:var(--tg-theme-text-color, #000);margin:0;line-height:1.5}.dashboard-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(8px,3vw,12px);width:100%;box-sizing:border-box}.dashboard-card{background-color:var(--tg-theme-secondary-bg-color, #f0f0f0);border-radius:clamp(10px,3vw,12px);padding:clamp(12px,4vw,16px);display:flex;flex-direction:column;gap:clamp(6px,2vw,8px);border:1px solid rgba(0,0,0,.05);transition:transform .2s ease,box-shadow .2s ease;min-width:0}.dashboard-card:active{transform:scale(.98)}.card-icon{width:clamp(28px,8vw,32px);height:clamp(28px,8vw,32px);display:flex;align-items:center;justify-content:center}.card-icon svg{width:100%;height:100%}.card-content{display:flex;flex-direction:column;gap:2px;min-width:0}.card-value{font-size:clamp(22px,7vw,28px);font-weight:700;color:var(--tg-theme-text-color, #000);line-height:1}.card-label{font-size:clamp(10px,3vw,12px);color:var(--tg-theme-hint-color, #888);text-transform:uppercase;letter-spacing:.3px}.card-footer{margin-top:auto}.streak-message{font-size:11px;color:var(--tg-theme-hint-color, #888);font-style:italic}.streak-card{background:linear-gradient(135deg,#ff98001a,#ff57221a);border-color:#ff980033;transition:transform .3s ease,box-shadow .3s ease,background .3s ease}.streak-card .card-value{color:var(--warning-color)}.streak-card.celebrating{animation:streakCelebrate 2s ease-out;box-shadow:0 0 20px #ff980066}@keyframes streakCelebrate{0%{transform:scale(1);box-shadow:0 0 #ff980000}10%{transform:scale(1.05);box-shadow:0 0 20px #ff980080}20%{transform:scale(1)}30%{transform:scale(1.03)}40%{transform:scale(1)}to{transform:scale(1);box-shadow:0 0 #ff980000}}.sessions-card{background:linear-gradient(135deg,#2196f31a,#3f51b51a);border-color:#2196f333}.sessions-card .card-value{color:var(--info-color)}.record-card{background:linear-gradient(135deg,#9c27b01a,#e91e631a);border-color:#9c27b033}.record-card .card-value{color:var(--roleplay-color)}.goal-card{background:linear-gradient(135deg,#4caf501a,#8bc34a1a);border-color:#4caf5033}.goal-card .card-value{color:var(--success-color)}.card-progress{margin-top:8px}.card-progress .progress-track{height:4px;background-color:#0000001a;border-radius:2px;overflow:hidden}.card-progress .progress-fill{height:100%;border-radius:2px;transition:width .5s ease-out}.progress-text{font-size:clamp(9px,2.5vw,10px);color:var(--tg-theme-hint-color, #888);margin-top:4px;display:block;text-align:center}.goal-progress{background:linear-gradient(90deg,#4caf50,#8bc34a)}.goal-card.goal-reached{background:linear-gradient(135deg,#4caf5040,#8bc34a40);border-color:#4caf5066}.goal-card.goal-reached .card-value{color:var(--success-color, #4caf50)}.xp-card{grid-column:1 / -1;background:linear-gradient(135deg,#ffc1071a,#ff98001a);border-color:#ffc10733}.xp-card-header{display:flex;align-items:center;gap:clamp(8px,3vw,12px)}.xp-card-header .card-content{flex:1}.xp-card .card-value{color:#f57c00}.xp-badge-count{display:flex;flex-direction:column;align-items:center;padding:4px 10px;border-radius:8px;background:#ffc10726}.badge-count-value{font-size:clamp(18px,5vw,22px);font-weight:700;color:#f57c00;line-height:1}.badge-count-label{font-size:clamp(9px,2.5vw,10px);color:var(--tg-theme-hint-color, #888);text-transform:uppercase;letter-spacing:.3px}.xp-progress{background:linear-gradient(90deg,#ffc107,#ff9800)}.leaderboard-link{display:block;text-align:center;font-size:clamp(11px,3vw,12px);color:var(--tg-theme-link-color, #2481cc);font-weight:600;margin-top:4px}.goal-card.celebrating{animation:goalCelebrate 3s ease-out;box-shadow:0 0 30px #4caf5099;position:relative;overflow:visible}.goal-celebration-overlay{position:absolute;top:-20px;right:-10px;animation:floatEmoji 3s ease-out forwards;pointer-events:none;z-index:10}.celebration-emoji{font-size:32px;display:block}@keyframes goalCelebrate{0%{transform:scale(1);box-shadow:0 0 #4caf5000}10%{transform:scale(1.08);box-shadow:0 0 30px #4caf50b3}20%{transform:scale(1)}30%{transform:scale(1.05)}40%{transform:scale(1)}to{transform:scale(1);box-shadow:0 0 #4caf5000}}@keyframes floatEmoji{0%{opacity:0;transform:translateY(10px) scale(.5)}20%{opacity:1;transform:translateY(0) scale(1.2)}40%{transform:translateY(-10px) scale(1)}to{opacity:0;transform:translateY(-30px) scale(.8)}}@keyframes celebrate{0%{transform:scale(1)}50%{transform:scale(1.02)}to{transform:scale(1)}}.motivation-banner{margin-top:clamp(12px,4vw,16px);padding:clamp(10px,3vw,12px) clamp(12px,4vw,16px);background:linear-gradient(135deg,var(--tg-theme-button-color, #2481cc),#1976d2);border-radius:clamp(10px,3vw,12px);text-align:center}.motivation-text{color:#fff;font-size:clamp(12px,3.5vw,14px);font-weight:500}@media(max-width:320px){.dashboard-grid{grid-template-columns:1fr;gap:8px}}@media(min-width:321px)and (max-width:380px){.dashboard-grid{gap:8px}}.challenges-card{margin-bottom:clamp(16px,5vw,24px);width:100%}.challenges-title{font-size:clamp(12px,3.5vw,14px);text-transform:uppercase;letter-spacing:.5px;color:var(--tg-theme-hint-color, #888);font-weight:600;margin-bottom:12px;margin-top:0;text-align:center;display:flex;align-items:center;justify-content:center;gap:6px}.challenges-title svg{color:#f57c00}.challenges-list{display:flex;flex-direction:column;gap:clamp(8px,3vw,12px)}.challenge-item{background-color:var(--tg-theme-secondary-bg-color, #f0f0f0);border-radius:clamp(10px,3vw,12px);padding:clamp(12px,4vw,16px);border:1px solid rgba(0,0,0,.05);transition:transform .2s ease}.challenge-item.completed{background:linear-gradient(135deg,#4caf501a,#8bc34a1a);border-color:#4caf5040}.challenge-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.challenge-name{font-size:clamp(13px,4vw,15px);font-weight:600;color:var(--tg-theme-text-color, #000)}.challenge-check{color:var(--success-color, #4caf50);display:flex;align-items:center}.challenge-desc{font-size:clamp(11px,3vw,12px);color:var(--tg-theme-hint-color, #888);margin:0 0 8px;line-height:1.4}.challenge-progress{margin-bottom:8px}.challenge-progress-track{height:6px;background-color:#0000001a;border-radius:3px;overflow:hidden}.challenge-progress-fill{height:100%;border-radius:3px;background:linear-gradient(90deg,#ff9800,#f57c00);transition:width .5s ease-out}.challenge-progress-text{font-size:clamp(9px,2.5vw,10px);color:var(--tg-theme-hint-color, #888);margin-top:4px;display:block;text-align:right}.challenge-reward{display:flex;gap:6px;flex-wrap:wrap}.reward-tag{font-size:clamp(10px,2.5vw,11px);padding:2px 8px;border-radius:10px;font-weight:600}.xp-reward{background:#ffc10726;color:#f57c00}.credit-reward{background:#2196f326;color:#1976d2}.daily-reward-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease;padding:20px}.daily-reward-popup{background:var(--tg-theme-bg-color, #fff);border-radius:20px;padding:clamp(20px,6vw,32px);max-width:340px;width:100%;text-align:center;animation:slideUp .3s ease;box-shadow:0 8px 32px #0003}.reward-emoji{font-size:48px;margin-bottom:8px}.daily-reward-popup h3{font-size:clamp(18px,5vw,22px);font-weight:700;color:var(--tg-theme-text-color, #000);margin:0 0 4px}.reward-subtitle{font-size:clamp(12px,3.5vw,14px);color:var(--tg-theme-hint-color, #888);margin:0 0 16px}.reward-days{display:flex;justify-content:center;gap:6px;margin-bottom:16px}.reward-day{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;position:relative}.reward-day.past{background:#4caf5026;color:var(--success-color, #4caf50)}.reward-day.today{background:linear-gradient(135deg,#ff9800,#f57c00);color:#fff;box-shadow:0 2px 8px #ff980066}.reward-day.future{background:var(--tg-theme-secondary-bg-color, #f0f0f0);color:var(--tg-theme-hint-color, #888)}.day-number{font-size:11px}.day-check,.day-star{position:absolute;font-size:10px;bottom:-2px;right:-2px}.reward-preview{display:flex;justify-content:center;gap:12px;margin-bottom:20px;flex-wrap:wrap}.reward-preview span{font-size:clamp(12px,3.5vw,14px);font-weight:600;color:#f57c00;background:#ff98001a;padding:4px 12px;border-radius:12px}.claim-button{width:100%;padding:14px;border:none;border-radius:14px;background:linear-gradient(135deg,#ff9800,#f57c00);color:#fff;font-size:clamp(14px,4vw,16px);font-weight:700;cursor:pointer;transition:transform .15s ease,opacity .15s ease}.claim-button:active{transform:scale(.97)}.reward-claimed{padding:12px 0}.reward-claimed h3{color:var(--success-color, #4caf50);margin-bottom:12px}.reward-amounts{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}.reward-amount{font-size:clamp(14px,4vw,16px);font-weight:700;color:var(--success-color, #4caf50);animation:popIn .3s ease}.reward-amount.xp{color:#f57c00}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes popIn{0%{transform:scale(.5);opacity:0}70%{transform:scale(1.1)}to{transform:scale(1);opacity:1}}.badge-earned-banner{position:fixed;top:0;left:0;right:0;z-index:1000;padding:12px 16px;background:linear-gradient(135deg,#1a237e,#3f51b5);box-shadow:0 4px 20px #0000004d;overflow:hidden}.badge-earned-banner.entering{animation:bannerSlideIn .4s ease-out forwards}.badge-earned-banner.exiting{animation:bannerSlideOut .3s ease-in forwards}@keyframes bannerSlideIn{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes bannerSlideOut{0%{transform:translateY(0);opacity:1}to{transform:translateY(-100%);opacity:0}}.badge-earned-content{display:flex;align-items:center;gap:12px;cursor:pointer;padding:4px 0}.badge-earned-emoji{font-size:32px;animation:badgeBounce .6s ease-out}@keyframes badgeBounce{0%{transform:scale(0)}50%{transform:scale(1.3)}70%{transform:scale(.9)}to{transform:scale(1)}}.badge-earned-text{display:flex;flex-direction:column;flex:1;min-width:0}.badge-earned-title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#ffffffb3}.badge-earned-name{font-size:16px;font-weight:700;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.badge-earned-counter{font-size:12px;color:#fff9;white-space:nowrap}.badge-earned-dismiss{position:absolute;top:8px;right:8px;background:none;border:none;color:#ffffff80;font-size:20px;cursor:pointer;padding:4px 8px;line-height:1}.badge-earned-dismiss:hover{color:#fff}.badge-earned-confetti{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden}.confetti-piece{position:absolute;width:8px;height:8px;border-radius:2px;animation:confettiFall 2s ease-out forwards;opacity:0}.confetti-0{background:gold;left:10%;animation-delay:.1s}.confetti-1{background:#ff6b6b;left:25%;animation-delay:.2s}.confetti-2{background:#4ecdc4;left:40%;animation-delay:.15s}.confetti-3{background:#a78bfa;left:55%;animation-delay:.25s}.confetti-4{background:#f97316;left:70%;animation-delay:.1s}.confetti-5{background:#34d399;left:85%;animation-delay:.3s}.confetti-piece:nth-child(n+7){left:auto}.confetti-piece:nth-child(7){left:15%;animation-delay:.35s}.confetti-piece:nth-child(8){left:30%;animation-delay:.4s}.confetti-piece:nth-child(9){left:48%;animation-delay:.2s}.confetti-piece:nth-child(10){left:62%;animation-delay:.45s}.confetti-piece:nth-child(11){left:78%;animation-delay:.15s}.confetti-piece:nth-child(12){left:92%;animation-delay:.3s}@keyframes confettiFall{0%{transform:translateY(-20px) rotate(0);opacity:1}to{transform:translateY(80px) rotate(360deg);opacity:0}}.home-page{animation:fadeIn .3s ease-out;padding-bottom:calc(80px + env(safe-area-inset-bottom))}.home-header{text-align:center;margin-bottom:clamp(16px,5vw,24px)}.home-greeting{font-size:clamp(22px,6vw,28px);font-weight:700;color:var(--tg-theme-text-color, #000);margin:0 0 clamp(4px,1.5vw,8px) 0}.home-subtitle{font-size:clamp(13px,4vw,15px);color:var(--tg-theme-hint-color, #888);margin:0}.home-actions{margin-top:clamp(16px,5vw,24px)}.actions-title{font-size:clamp(12px,3.5vw,14px);text-transform:uppercase;letter-spacing:.5px;color:var(--tg-theme-hint-color, #888);font-weight:600;margin-bottom:clamp(10px,3vw,12px);margin-top:0}.action-card{width:100%;display:flex;align-items:center;gap:clamp(12px,4vw,16px);padding:clamp(14px,4vw,18px);background-color:var(--tg-theme-secondary-bg-color, #f0f0f0);border:1px solid rgba(0,0,0,.05);border-radius:clamp(12px,4vw,16px);cursor:pointer;transition:all .2s ease;margin-bottom:clamp(10px,3vw,12px);text-align:start}.action-card:active{transform:scale(.98)}.action-card:focus-visible{outline:2px solid var(--primary-color);outline-offset:4px}.action-card:disabled{opacity:.6;cursor:not-allowed;transform:none}.action-card.disabled-quota{opacity:.6;background:var(--secondary-bg);border-color:#0000001a}.action-card.disabled-quota .action-icon{color:var(--hint-color)}.action-card.disabled-quota .action-description{color:var(--error-color);font-weight:500}.action-icon{font-size:clamp(28px,8vw,36px);line-height:1;flex-shrink:0}.action-content{flex:1;display:flex;flex-direction:column;gap:clamp(2px,1vw,4px);min-width:0}.action-title{font-size:clamp(15px,4.5vw,17px);font-weight:600;color:var(--tg-theme-text-color, #000)}.action-description{font-size:clamp(12px,3.5vw,14px);color:var(--tg-theme-hint-color, #888);line-height:1.3}.action-spinner{flex-shrink:0}.roleplay-action{background:linear-gradient(135deg,#9c27b014,#e91e6314);border-color:#9c27b026}.roleplay-action .action-icon{color:var(--roleplay-color)}.roleplay-action:hover:not(:disabled){background:linear-gradient(135deg,#9c27b01f,#e91e631f)}.study-action{background:linear-gradient(135deg,#4caf5014,#00968814);border-color:#4caf5026}.study-action .action-icon{color:var(--success-color)}.study-action:hover:not(:disabled){background:linear-gradient(135deg,#4caf501f,#0096881f)}.assessment-action{background:linear-gradient(135deg,#2196f314,#3f51b514);border-color:#2196f326}.assessment-action .action-icon{color:var(--info-color)}.assessment-action:hover:not(:disabled){background:linear-gradient(135deg,#2196f31f,#3f51b51f)}.energy-gauge{display:flex;flex-direction:column;align-items:center;gap:8px;width:100%}.gauge-container{position:relative;width:clamp(80px,25vw,100px);height:clamp(80px,25vw,100px)}.gauge-svg{width:100%;height:100%;transform:rotate(-90deg)}.gauge-base{fill:none;stroke:#80808026;stroke-width:8}.gauge-fill{fill:none;stroke-width:8;stroke-linecap:round}.gauge-bonus{fill:none;stroke:gold;stroke-width:4;stroke-linecap:round;transition:stroke-dashoffset 1s ease-out}.gauge-content{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;width:100%}.gauge-icon{font-size:14px;margin-bottom:2px;opacity:.7}.gauge-value{display:flex;flex-direction:column;align-items:center;line-height:1}.gauge-value .current{font-size:clamp(16px,5vw,20px);font-weight:800;color:var(--tg-theme-text-color, #000)}.gauge-value .separator{font-size:10px;color:var(--tg-theme-hint-color, #888);margin:1px 0}.gauge-value .total{font-size:11px;color:var(--tg-theme-hint-color, #888);font-weight:600}.gauge-label{font-size:12px;font-weight:700;color:var(--tg-theme-text-color, #000);text-align:center}.gauge-sublabel{font-size:10px;color:#ffa000;font-weight:700;text-transform:uppercase}@keyframes pulseGlow{0%{filter:drop-shadow(0 0 2px rgba(244,67,54,.5))}50%{filter:drop-shadow(0 0 8px rgba(244,67,54,.8))}to{filter:drop-shadow(0 0 2px rgba(244,67,54,.5))}}.pulse{animation:pulseGlow 1.5s infinite ease-in-out}.energy-gauge.pro .infinite-base{stroke:#2196f31a}.infinite-shimmer{stroke:#2196f3;stroke-width:8;filter:drop-shadow(0 0 4px rgba(33,150,243,.5));animation:infinityRotate 3s infinite linear;stroke-dasharray:40 180;transform-origin:center;transform-box:fill-box}.pro-infinity{font-size:32px;color:var(--info-color, #2196f3);font-weight:400;margin-top:-4px}@keyframes infinityRotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}[dir=rtl] .gauge-svg{transform:rotate(-90deg) scaleY(-1)}.usage-card-v2{background-color:var(--tg-theme-secondary-bg-color, #f0f0f0);border-radius:clamp(12px,4vw,16px);padding:clamp(14px,5vw,20px);border:1px solid rgba(0,0,0,.05);box-shadow:0 4px 12px #00000008;overflow:hidden;position:relative;display:flex;flex-direction:column;gap:20px}.usage-header{display:flex;justify-content:space-between;align-items:flex-start}.usage-active-info{display:flex;flex-direction:column;gap:2px}.usage-title{font-size:16px;font-weight:800;color:var(--tg-theme-text-color, #000)}.refill-timer{font-size:11px;font-weight:600;color:var(--tg-theme-hint-color, #888);background:#80808014;padding:2px 8px;border-radius:12px;align-self:flex-start}.tier-shield{display:flex;align-items:center;gap:6px;padding:4px 10px;border-radius:8px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.5px}.usage-gauges{display:flex;justify-content:space-around;gap:16px}.reward-prompt{background:linear-gradient(135deg,#fffde7,#fff8e1);border:1px solid #FFE082;border-radius:12px;padding:10px 14px;display:flex;justify-content:space-between;align-items:center;cursor:pointer;transition:transform .2s,box-shadow .2s;-webkit-user-select:none;user-select:none;animation:lootShimmer 3s infinite ease-in-out}.reward-prompt:active{transform:scale(.97)}.reward-content{display:flex;align-items:center;gap:10px}.reward-emoji{font-size:24px}.reward-text{display:flex;flex-direction:column}.reward-title{font-size:13px;font-weight:800;color:#5d4037}.reward-subtitle{font-size:11px;font-weight:600;color:#8d6e63}.reward-action{background-color:#ffa000;color:#fff;font-size:11px;font-weight:800;text-transform:uppercase;padding:6px 12px;border-radius:8px;box-shadow:0 2px 4px #ffa0004d}.all-claimed{text-align:center;font-size:11px;font-weight:600;color:var(--tg-theme-hint-color, #888);font-style:italic;opacity:.7}.pro-membership-banner{position:relative;padding:12px;border-radius:10px;text-align:center;overflow:hidden;background:linear-gradient(90deg,#2196f3,#1565c0);box-shadow:0 0 15px #2196f34d}.banner-text{position:relative;z-index:2;color:#fff;font-size:12px;font-weight:700}.banner-bg{position:absolute;top:0;left:-150%;width:300%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:sweep 3s infinite ease-in-out}@keyframes sweep{0%{transform:translate(0)}to{transform:translate(100%)}}@keyframes lootShimmer{0%{box-shadow:0 0 5px #ffd70033}50%{box-shadow:0 0 15px #ffd70066}to{box-shadow:0 0 5px #ffd70033}}.claim-spinner{width:16px;height:16px;border:2px solid rgba(255,160,0,.3);border-top-color:#ffa000;border-radius:50%;animation:spin .8s linear infinite}.lang-row{display:flex;align-items:center;gap:clamp(10px,3vw,12px);padding:clamp(10px,3vw,12px) clamp(12px,3.5vw,14px);background-color:var(--tg-theme-bg-color, #fff);border-radius:clamp(10px,3vw,12px);border:1px solid rgba(0,0,0,.06);cursor:pointer;transition:all .15s ease}.lang-row:active{transform:scale(.99);background-color:#00000005}.lang-row.active{border-color:var(--tg-theme-button-color, #2481cc);background-color:#2481cc0a;cursor:default}.lang-row.active:active{transform:none}.lang-row .lang-badge{display:inline-flex;align-items:center;justify-content:center;min-width:clamp(34px,9vw,40px);height:clamp(22px,6vw,26px);padding:0 6px;border-radius:6px;font-size:clamp(11px,3vw,12px);font-weight:700;color:#fff;letter-spacing:.5px;line-height:1;flex-shrink:0}.lang-row-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.lang-row-name{font-size:clamp(14px,3.8vw,15px);font-weight:600;color:var(--tg-theme-text-color, #000);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lang-row-stats{font-size:clamp(11px,3vw,12px);color:var(--tg-theme-hint-color, #888);font-weight:500}.lang-row-right{display:flex;align-items:center;gap:8px;flex-shrink:0}.lang-row-level{padding:3px 8px;border-radius:8px;font-size:clamp(10px,2.8vw,11px);font-weight:700;color:#fff;text-transform:uppercase}.lang-row-active{display:flex;align-items:center;justify-content:center}.active-dot{width:8px;height:8px;border-radius:50%;background-color:var(--tg-theme-button-color, #2481cc);box-shadow:0 0 6px var(--tg-theme-button-color, #2481cc)}.lang-row.loading,.lang-row.disabled{opacity:.6;pointer-events:none}.lang-row.loading{cursor:wait}.spinner-small{width:16px;height:16px;border:2px solid rgba(36,129,204,.25);border-top-color:var(--tg-theme-button-color, #2481cc);border-radius:50%;animation:spin .8s linear infinite;flex-shrink:0}@keyframes spin{to{transform:rotate(360deg)}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:20px}.modal-content{background:var(--tg-theme-bg-color, #ffffff);width:100%;max-width:400px;border-radius:20px;display:flex;flex-direction:column;overflow:hidden;animation:modalSlideUp .3s ease-out}@keyframes modalSlideUp{0%{transform:translateY(50px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header{padding:20px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(0,0,0,.05)}.modal-header h2{margin:0;font-size:1.25rem;font-weight:700}.close-btn{background:none;border:none;font-size:1.5rem;color:var(--tg-theme-hint-color, #888);cursor:pointer}.modal-body{padding:20px;display:flex;flex-direction:column;gap:16px}.modal-body p{margin:0;color:var(--tg-theme-hint-color, #888);font-size:.9rem;line-height:1.4}.modal-footer{padding:16px 20px;display:flex;gap:12px;border-top:1px solid rgba(0,0,0,.05)}.modal-footer button{flex:1;padding:12px;border-radius:12px;font-weight:600;font-size:1rem;cursor:pointer}.btn-secondary{background:var(--tg-theme-secondary-bg-color, #f0f0f0);border:none;color:var(--tg-theme-text-color, #000);transition:all .2s ease}.btn-secondary:active{transform:scale(.98);opacity:.8}.btn-primary{background:var(--tg-theme-button-color, #2481cc);border:none;color:var(--tg-theme-button-text-color, #ffffff);transition:all .2s ease}.btn-primary:disabled{opacity:.6}.languages-card{background-color:var(--tg-theme-secondary-bg-color, #f0f0f0);border-radius:clamp(10px,3vw,12px);padding:clamp(12px,4vw,16px);border:1px solid rgba(0,0,0,.05);box-shadow:inset 0 1px 3px #00000005}.languages-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:clamp(12px,3.5vw,16px);padding-bottom:clamp(8px,2.5vw,10px);border-bottom:1px solid rgba(0,0,0,.08)}.languages-title{font-size:clamp(14px,3.8vw,15px);font-weight:800;color:var(--tg-theme-text-color, #000)}.languages-count{font-size:clamp(10px,2.8vw,11px);color:var(--tg-theme-hint-color, #888);font-weight:700;background:#0000000d;padding:3px 8px;border-radius:8px}.languages-list{display:flex;flex-direction:column;gap:clamp(6px,2vw,8px)}.add-lang-btn{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;margin-top:clamp(10px,3vw,12px);background:var(--tg-theme-bg-color, #fff);border:1px dashed rgba(0,0,0,.12);color:var(--tg-theme-button-color, #2481cc);padding:clamp(10px,3vw,12px);border-radius:clamp(10px,3vw,12px);font-size:clamp(12px,3.2vw,13px);font-weight:600;cursor:pointer;transition:all .15s ease}.add-lang-btn:active{transform:scale(.99);background:#2481cc0a}.plus-icon{font-size:1.1rem;line-height:1;font-weight:500}.limit-reached-msg{margin:clamp(10px,3vw,12px) 0 0 0;text-align:center;font-size:clamp(11px,3vw,12px);color:var(--tg-theme-hint-color, #888);font-weight:500;font-style:italic}.loading-placeholder{padding:clamp(16px,4vw,20px);text-align:center;color:var(--tg-theme-hint-color, #888);font-size:clamp(12px,3.2vw,13px)}.error-message{margin-top:clamp(8px,2.5vw,10px);padding:8px 12px;background-color:#f4433614;border:1px solid rgba(244,67,54,.2);border-radius:8px;color:var(--error-color, #f44336);font-size:clamp(11px,3vw,12px);font-weight:500;text-align:center}.profile-form{display:flex;flex-direction:column}.other-language-input{margin-top:clamp(6px,2vw,8px)}.save-button{margin-top:clamp(8px,2.5vw,12px)}.profile-badges-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:clamp(8px,2vw,10px)}.profile-badges-header .section-title{margin:0}.profile-badges-view-all{background:none;border:none;color:var(--tg-theme-link-color, #2481cc);font-size:clamp(12px,3vw,13px);font-weight:500;cursor:pointer;padding:4px 0}.profile-badges-grid{display:flex;flex-wrap:wrap;gap:8px}.profile-badge-chip{display:flex;align-items:center;gap:6px;padding:6px 12px;border-radius:20px;background:var(--tg-theme-secondary-bg-color, #f0f0f0);border:1px solid rgba(0,0,0,.05)}.profile-badge-emoji{font-size:16px}.profile-badge-name{font-size:clamp(12px,3vw,13px);font-weight:500;color:var(--tg-theme-text-color, #000)}.profile-badges-more{display:block;margin-top:8px;font-size:clamp(11px,2.8vw,12px);color:var(--tg-theme-hint-color, #888)}.wallet-section{margin-bottom:clamp(8px,2.5vw,12px)}.wallet-card{background-color:var(--tg-theme-secondary-bg-color, #f0f0f0);border-radius:clamp(12px,4vw,16px);padding:clamp(14px,4vw,18px);border:1px solid rgba(0,0,0,.05)}.wallet-header{display:flex;align-items:flex-start;gap:clamp(10px,3vw,14px);margin-bottom:clamp(10px,3vw,14px)}.wallet-icon{display:flex;align-items:center;justify-content:center;width:clamp(32px,9vw,40px);height:clamp(32px,9vw,40px);background-color:var(--tg-theme-bg-color, #fff);border-radius:10px;flex-shrink:0}.wallet-info{flex:1;display:flex;flex-direction:column;gap:clamp(2px,1vw,4px);min-width:0}.wallet-title{font-size:clamp(14px,4vw,16px);font-weight:600;color:var(--tg-theme-text-color, #000)}.wallet-description{font-size:clamp(12px,3.5vw,14px);color:var(--tg-theme-hint-color, #888);line-height:1.4}.wallet-status{display:flex;align-items:center;gap:6px;font-size:clamp(12px,3.5vw,14px);font-weight:500}.wallet-status.connected{color:var(--success-color, #4caf50)}.wallet-status.not-connected{color:var(--tg-theme-hint-color, #888)}.wallet-status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.wallet-status.connected .wallet-status-dot{background-color:var(--success-color, #4caf50)}.wallet-status.not-connected .wallet-status-dot{background-color:var(--tg-theme-hint-color, #888)}.wallet-address-row{display:flex;align-items:center;justify-content:space-between;padding:clamp(10px,3vw,12px);background-color:var(--tg-theme-bg-color, #fff);border-radius:clamp(8px,2.5vw,10px);margin-bottom:clamp(10px,3vw,12px)}.wallet-address{font-size:clamp(13px,3.5vw,14px);font-family:SF Mono,Menlo,Monaco,Courier New,monospace;color:var(--tg-theme-text-color, #000);font-weight:500}.wallet-actions{display:flex;gap:clamp(8px,2.5vw,10px)}.wallet-connect-btn{width:100%;padding:clamp(10px,3vw,14px);background-color:var(--tg-theme-button-color, #2481cc);color:var(--tg-theme-button-text-color, #fff);border:none;border-radius:clamp(10px,3vw,12px);font-size:clamp(14px,4vw,16px);font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:8px}.wallet-connect-btn:active{transform:scale(.98)}.wallet-connect-btn:disabled{opacity:.6;cursor:not-allowed}.wallet-disconnect-btn{width:100%;padding:clamp(10px,3vw,12px);background-color:transparent;color:var(--error-color, #f44336);border:1px solid rgba(255,59,48,.3);border-radius:clamp(10px,3vw,12px);font-size:clamp(13px,3.5vw,14px);font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:6px}.wallet-disconnect-btn:active{transform:scale(.98);background-color:#ff3b300d}.wallet-disconnect-btn:disabled{opacity:.6;cursor:not-allowed}.profile-wallet-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;background-color:var(--tg-theme-secondary-bg-color, #f0f0f0);border-radius:8px;font-size:clamp(12px,3.5vw,13px)}.profile-wallet-address{font-family:SF Mono,Menlo,Monaco,Courier New,monospace;color:var(--tg-theme-text-color, #000);font-weight:500}.wallet-consent{padding:clamp(10px,3vw,14px) 0}.wallet-consent-message{font-size:clamp(13px,3.5vw,14px);color:var(--tg-theme-hint-color, #888);line-height:1.5;margin-bottom:clamp(10px,3vw,14px)}.wallet-consent-actions{display:flex;gap:clamp(8px,2.5vw,10px);margin-top:clamp(10px,3vw,14px)}.wallet-consent-actions .wallet-connect-btn{flex:1}.wallet-cancel-btn{flex:1;padding:clamp(10px,3vw,14px);background-color:transparent;color:var(--tg-theme-hint-color, #888);border:1px solid rgba(0,0,0,.1);border-radius:clamp(10px,3vw,12px);font-size:clamp(14px,4vw,16px);font-weight:600;cursor:pointer;transition:all .2s ease}.settings-page{padding:clamp(12px,4vw,16px);padding-bottom:calc(clamp(160px,42vw,200px) + env(safe-area-inset-bottom));min-height:100vh;box-sizing:border-box;animation:pageEnter .3s ease-out}.settings-page .page-title{font-size:clamp(20px,5.5vw,24px);font-weight:700;margin-bottom:clamp(16px,4vw,20px);color:var(--tg-theme-text-color, #000)}.settings-section{margin-bottom:clamp(20px,5vw,24px)}.settings-section .section-title,.section-title{font-size:clamp(12px,3.2vw,13px);text-transform:uppercase;letter-spacing:.5px;color:var(--tg-theme-hint-color, #888);font-weight:600;margin:0 0 clamp(10px,3vw,12px) 0}.settings-card{background-color:var(--tg-theme-secondary-bg-color, #f0f0f0);border-radius:clamp(12px,4vw,16px);padding:clamp(14px,4vw,18px);margin-bottom:clamp(8px,2.5vw,12px);border:1px solid rgba(0,0,0,.05)}.card-header{display:flex;align-items:flex-start;gap:clamp(10px,3vw,14px);margin-bottom:clamp(10px,3vw,14px)}.toggle-card{display:flex;align-items:center;gap:clamp(10px,3vw,14px);padding:clamp(14px,4vw,18px)}.toggle-card.clickable{cursor:pointer;transition:background-color .2s ease,transform .1s ease}.toggle-card.clickable:active{background-color:#0000000d;transform:scale(.995)}.action-card.clickable{cursor:pointer;transition:background-color .2s ease,transform .1s ease}.action-card.clickable:active{background-color:#0000000d;transform:scale(.995)}.toggle-card .card-header{flex:1;margin-bottom:0}.toggle-card .toggle-switch{margin-top:2px}.card-icon{font-size:clamp(22px,6vw,28px);line-height:1;flex-shrink:0;display:flex;align-items:center;justify-content:center;width:clamp(32px,9vw,40px);height:clamp(32px,9vw,40px);background-color:var(--tg-theme-bg-color, #fff);border-radius:10px}.card-info{flex:1;display:flex;flex-direction:column;gap:clamp(2px,1vw,4px);min-width:0}.card-title{font-size:clamp(14px,4vw,16px);font-weight:600;color:var(--tg-theme-text-color, #000);display:flex;align-items:center;gap:8px}.pro-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:6px;background-color:#ff980026;color:var(--warning-color, #ff9800);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.premium-icon{width:12px;height:12px}.voice-limit-badge{display:inline;font-size:clamp(11px,3vw,12px);font-weight:600;padding:2px 6px;border-radius:4px;margin-left:4px}.voice-limit-badge.free{color:var(--tg-theme-hint-color, #888);background:#0000000d}.voice-limit-badge.pro{color:var(--warning-color, #ff9800);background:#ff98001f}.locked-card{opacity:.8}.toggle-switch.disabled{cursor:not-allowed;opacity:.6}.toggle-switch.disabled .toggle-slider{cursor:not-allowed}.card-description{font-size:clamp(12px,3.5vw,14px);color:var(--tg-theme-hint-color, #888);line-height:1.4}.daily-goal-card .card-header{margin-bottom:clamp(10px,3vw,14px)}.goal-badge{display:flex;align-items:center;justify-content:center;min-width:clamp(32px,9vw,38px);height:clamp(32px,9vw,38px);border-radius:10px;background:var(--tg-theme-button-color, #2481cc);color:var(--tg-theme-button-text-color, #fff);font-size:clamp(14px,4vw,16px);font-weight:700;flex-shrink:0}.goal-slider-row{display:flex;align-items:center;gap:clamp(10px,3vw,12px)}.slider-label{font-size:clamp(11px,3vw,12px);color:var(--tg-theme-hint-color, #888);font-weight:500;min-width:14px;text-align:center}.goal-slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:1;height:clamp(4px,1.2vw,6px);border-radius:3px;background:linear-gradient(to right,var(--tg-theme-button-color, #2481cc) 0%,var(--tg-theme-button-color, #2481cc) var(--slider-progress, 50%),rgba(0,0,0,.1) var(--slider-progress, 50%),rgba(0,0,0,.1) 100%);outline:none;cursor:pointer;margin:0;padding:0;border:none}.goal-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:clamp(18px,5vw,22px);height:clamp(18px,5vw,22px);border-radius:50%;background:var(--tg-theme-button-color, #2481cc);cursor:pointer;border:2px solid white;box-shadow:0 1px 4px #0003;transition:transform .15s ease}.goal-slider::-webkit-slider-thumb:active{transform:scale(1.15)}.goal-slider::-moz-range-thumb{width:clamp(18px,5vw,22px);height:clamp(18px,5vw,22px);border-radius:50%;background:var(--tg-theme-button-color, #2481cc);cursor:pointer;border:2px solid white;box-shadow:0 1px 4px #0003}.goal-slider::-moz-range-track{background:transparent}[dir=rtl] .goal-slider{background:linear-gradient(to left,var(--tg-theme-button-color, #2481cc) 0%,var(--tg-theme-button-color, #2481cc) var(--slider-progress, 50%),rgba(0,0,0,.1) var(--slider-progress, 50%),rgba(0,0,0,.1) 100%)}.language-selector-container{margin-top:clamp(8px,2.5vw,12px);width:100%}.settings-select{width:100%;padding:clamp(10px,3vw,12px) clamp(12px,4vw,16px);border-radius:clamp(10px,3vw,12px);background-color:var(--tg-theme-bg-color, #fff);border:1px solid rgba(0,0,0,.1);color:var(--tg-theme-text-color, #000);font-size:clamp(14px,4vw,16px);font-weight:500;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%23888' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 6l4 4 4-4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right clamp(12px,4vw,16px) center;padding-right:clamp(36px,10vw,42px)}.settings-select:focus{outline:none;border-color:var(--tg-theme-button-color, #2481cc)}.toggle-switch{--toggle-width: 52px;--toggle-track-height: 16px;--toggle-knob-size: 24px;--toggle-knob-checked-size: 28px;--toggle-container-height: 32px;--toggle-track-off: rgba(0, 0, 0, .38);--toggle-track-on: var(--tg-theme-button-color, #2481cc);--toggle-knob-off: #fafafa;--toggle-knob-on: #fff;position:relative;display:inline-block;width:var(--toggle-width);height:var(--toggle-container-height);min-width:var(--toggle-width);flex-shrink:0;cursor:pointer;margin:0;padding:0;font-size:inherit;font-weight:400;color:inherit;vertical-align:middle}.toggle-switch input{display:none!important}.toggle-switch .toggle-slider{position:absolute!important;top:50%!important;left:0!important;right:0!important;width:auto!important;height:var(--toggle-track-height)!important;transform:translateY(-50%)!important;background-color:var(--toggle-track-off)!important;border-radius:calc(var(--toggle-track-height) / 2)!important;transition:background-color .2s ease!important;z-index:1}.toggle-switch .toggle-slider:before{position:absolute!important;content:""!important;width:var(--toggle-knob-size)!important;height:var(--toggle-knob-size)!important;top:50%!important;left:0!important;transform:translateY(-50%)!important;background-color:var(--toggle-knob-off)!important;border-radius:50%!important;box-shadow:0 2px 4px #0000004d,0 0 2px #0000001a!important;transition:left .2s cubic-bezier(.4,0,.2,1),width .15s ease,height .15s ease,background-color .2s ease,box-shadow .2s ease!important;z-index:2}[dir=rtl] .toggle-switch .toggle-slider:before{left:auto!important;right:0!important}.toggle-switch input:checked+.toggle-slider{background-color:var(--toggle-track-on)!important}.toggle-switch input:checked+.toggle-slider:before{left:calc(var(--toggle-width) - var(--toggle-knob-checked-size))!important;width:var(--toggle-knob-checked-size)!important;height:var(--toggle-knob-checked-size)!important;background-color:var(--toggle-knob-on)!important;box-shadow:0 3px 6px #00000040,0 1px 3px #00000026!important}[dir=rtl] .toggle-switch input:checked+.toggle-slider:before{left:auto!important;right:calc(var(--toggle-width) - var(--toggle-knob-checked-size))!important}.toggle-card.clickable:active .toggle-switch .toggle-slider:before{width:calc(var(--toggle-knob-size) + 4px)!important}.toggle-card.clickable:active .toggle-switch input:checked+.toggle-slider:before{width:calc(var(--toggle-knob-checked-size) + 2px)!important;left:calc(var(--toggle-width) - var(--toggle-knob-checked-size) - 2px)!important}[dir=rtl] .toggle-card.clickable:active .toggle-switch input:checked+.toggle-slider:before{left:auto!important;right:calc(var(--toggle-width) - var(--toggle-knob-checked-size) - 2px)!important}.info-card{padding:0;overflow:hidden}.info-row{display:flex;justify-content:space-between;align-items:center;padding:clamp(12px,3.5vw,16px);border-bottom:1px solid rgba(0,0,0,.05)}.delete-btn{background:var(--error-color, #f44336)!important;color:#fff!important;border:none}.delete-btn:active{background:#d72c21!important;transform:scale(.95)}.delete-card{margin-top:12px}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:2000;padding:20px;animation:fadeIn .2s ease-out}.modal-content{background:var(--tg-theme-bg-color, #ffffff);border-radius:16px;padding:24px;max-width:400px;width:100%;box-shadow:0 10px 25px #0003;animation:slideUp .3s cubic-bezier(.175,.885,.32,1.275)}.delete-modal h3{color:var(--error-color, #f44336);margin-top:0;margin-bottom:12px;font-size:1.25rem}.delete-modal p{color:var(--tg-theme-text-color, #000);line-height:1.5;margin-bottom:24px;opacity:.9}.modal-actions{display:flex;flex-direction:column;gap:12px}.modal-btn{border:none;border-radius:12px;padding:14px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:8px}.modal-btn.danger{background:var(--error-color, #f44336);color:#fff}.modal-btn.danger:active{background:#d72c21;transform:scale(.98)}.modal-btn.secondary{background:var(--tg-theme-secondary-bg-color, #f0f0f0);color:var(--tg-theme-text-color, #000)}.modal-btn.secondary:active{background:var(--tg-theme-hint-color, #e1e1e1);transform:scale(.98)}.info-label{font-size:clamp(13px,4vw,15px);color:var(--tg-theme-text-color, #000)}.info-value{font-size:clamp(13px,4vw,15px);color:var(--tg-theme-hint-color, #888);font-weight:500}.info-value.pro{color:var(--warning-color, #ff9800)}.action-card{display:flex;align-items:center;gap:clamp(10px,3vw,14px)}.action-card .card-header{flex:1;margin-bottom:0}.action-btn{display:flex;align-items:center;justify-content:center;width:clamp(40px,11vw,48px);height:clamp(40px,11vw,48px);border-radius:clamp(10px,3vw,12px);background-color:var(--tg-theme-button-color, #2481cc);color:var(--tg-theme-button-text-color, #fff);border:none;cursor:pointer;transition:all .2s ease;flex-shrink:0}.action-btn:active{transform:scale(.95)}.action-btn:disabled{opacity:.6;cursor:not-allowed}.action-btn svg{width:clamp(18px,5vw,22px);height:clamp(18px,5vw,22px)}.spinner.small{width:clamp(16px,4.5vw,20px);height:clamp(16px,4.5vw,20px);border-width:2px}.info-banner{display:flex;align-items:center;gap:clamp(10px,3vw,12px);background-color:rgba(var(--tg-theme-button-color-rgb, 36, 129, 204),.1);border:1px solid rgba(var(--tg-theme-button-color-rgb, 36, 129, 204),.2)}.info-banner-icon{font-size:clamp(16px,4.5vw,20px);flex-shrink:0}.info-banner-text{font-size:clamp(12px,3.5vw,14px);color:var(--tg-theme-text-color, #000);line-height:1.4}.legal-links{padding:0}.link-row{display:flex;justify-content:space-between;align-items:center;text-decoration:none;color:inherit;cursor:pointer;transition:background-color .2s ease;background:none;border:none;width:100%;font:inherit;text-align:left;padding:clamp(10px,3vw,14px) clamp(12px,4vw,16px)}[dir=rtl] .link-row{text-align:right}.link-row:hover,.link-row:active{background-color:#00000008}.info-row-content{display:flex;align-items:center;gap:clamp(10px,3vw,12px)}.info-row-content svg{color:var(--tg-theme-hint-color, #888);flex-shrink:0}.link-arrow{color:var(--tg-theme-hint-color, #888);font-size:clamp(14px,4vw,18px)}[dir=rtl] .link-arrow{transform:scaleX(-1)}.settings-save-btn{width:100%;max-width:calc(500px - 2 * var(--container-padding, 16px));margin:0 auto;padding:clamp(12px,3.5vw,16px);background-color:var(--tg-theme-button-color, #2481cc);color:var(--tg-theme-button-text-color, #fff);border:none;border-radius:clamp(10px,3vw,12px);font-size:clamp(14px,4vw,16px);font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:clamp(6px,2vw,8px);transition:all .2s ease;position:fixed;bottom:calc(clamp(80px,22vw,110px) + max(env(safe-area-inset-bottom),10px));left:50%;transform:translate(-50%);z-index:110;box-shadow:0 4px 12px #00000026}.settings-save-btn:active{transform:translate(-50%) scale(.98)}.settings-save-btn:disabled{opacity:.6;cursor:not-allowed}.feedback-analytics{margin-bottom:clamp(20px,6vw,28px);padding:clamp(14px,4vw,18px);background-color:var(--tg-theme-secondary-bg-color, #f0f0f0);border-radius:clamp(12px,4vw,16px);border:1px solid rgba(0,0,0,.05)}.feedback-analytics.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:clamp(40px,12vw,64px) clamp(20px,6vw,32px);text-align:center}.feedback-analytics.empty-state .empty-title{font-size:clamp(16px,4.5vw,18px);font-weight:600;color:var(--tg-theme-text-color, #000);margin:0 0 8px}.feedback-analytics.empty-state .empty-hint{font-size:clamp(13px,3.5vw,14px);color:var(--tg-theme-hint-color, #888);margin:0;line-height:1.5;max-width:280px}.analytics-title{font-size:clamp(16px,4.5vw,18px);font-weight:600;color:var(--tg-theme-text-color, #000);margin:0 0 clamp(14px,4vw,18px) 0;text-align:center}.analytics-summary{display:flex;gap:clamp(8px,2.5vw,12px);margin-bottom:clamp(16px,5vw,22px)}.summary-card{flex:1;display:flex;flex-direction:column;align-items:center;padding:clamp(10px,3vw,14px);background-color:var(--tg-theme-bg-color, #fff);border-radius:clamp(8px,2.5vw,10px)}.summary-value{font-size:clamp(20px,6vw,26px);font-weight:700;color:var(--tg-theme-text-color, #000)}.summary-value.positive{color:var(--success-color, #4caf50)}.summary-value.negative{color:var(--error-color, #f44336)}.summary-label{font-size:clamp(10px,3vw,12px);color:var(--tg-theme-hint-color, #888);text-align:center;margin-top:2px}.analytics-section{margin-bottom:clamp(16px,5vw,20px)}.analytics-section:last-child{margin-bottom:0}.analytics-section h4{font-size:clamp(12px,3.5vw,14px);text-transform:uppercase;letter-spacing:.5px;color:var(--tg-theme-hint-color, #888);font-weight:600;margin:0 0 clamp(10px,3vw,14px) 0}.category-chart{display:flex;flex-direction:column;gap:clamp(8px,2.5vw,10px)}.category-row{display:flex;align-items:center;gap:clamp(8px,2.5vw,12px)}.category-label{display:flex;align-items:center;gap:clamp(6px,2vw,8px);min-width:90px}.category-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.category-name{font-size:clamp(12px,3.5vw,14px);color:var(--tg-theme-text-color, #000);text-transform:capitalize}.category-bar-container{flex:1;height:clamp(14px,4vw,18px);background-color:var(--tg-theme-bg-color, #fff);border-radius:4px;overflow:hidden}.category-bar{height:100%;border-radius:4px;transition:width .3s ease;min-width:4px}.category-count{font-size:clamp(12px,3.5vw,14px);font-weight:600;color:var(--tg-theme-hint-color, #888);min-width:24px;text-align:right}.trend-chart{display:flex;justify-content:space-around;align-items:flex-end;height:clamp(100px,30vw,140px);padding:clamp(10px,3vw,14px);background-color:var(--tg-theme-bg-color, #fff);border-radius:clamp(8px,2.5vw,10px)}.trend-bar-group{display:flex;flex-direction:column;align-items:center;flex:1;max-width:60px}.trend-bar-container{height:clamp(60px,18vw,80px);width:clamp(28px,9vw,40px);display:flex;flex-direction:column;justify-content:flex-end;align-items:center}.trend-bar{width:100%;background:linear-gradient(180deg,var(--tg-theme-button-color, #2481cc) 0%,rgba(36,129,204,.6) 100%);border-radius:4px 4px 0 0;min-height:4px;display:flex;align-items:flex-start;justify-content:center;transition:height .3s ease}.trend-value{font-size:clamp(10px,3vw,12px);font-weight:600;color:var(--tg-theme-button-text-color, #fff);padding-top:4px}.trend-label{font-size:clamp(10px,3vw,11px);color:var(--tg-theme-hint-color, #888);margin-top:clamp(6px,2vw,8px);text-align:center}.recurring-list{display:flex;flex-direction:column;gap:clamp(8px,2.5vw,10px)}.recurring-item{display:flex;align-items:flex-start;gap:clamp(10px,3vw,12px);padding:clamp(10px,3vw,12px);background-color:var(--tg-theme-bg-color, #fff);border-radius:clamp(8px,2.5vw,10px)}.recurring-badge{background:linear-gradient(135deg,#f44336,#d32f2f);color:#fff;font-size:clamp(10px,3vw,12px);font-weight:600;padding:clamp(4px,1.5vw,6px) clamp(8px,2.5vw,10px);border-radius:12px;white-space:nowrap}.recurring-content{flex:1;display:flex;flex-direction:column;gap:4px}.recurring-mistake{display:flex;align-items:center;gap:clamp(6px,2vw,8px);flex-wrap:wrap}.mistake-wrong{color:#d32f2f;font-size:clamp(13px,3.5vw,14px);text-decoration:line-through;text-decoration-color:#d32f2f80}.mistake-arrow{color:var(--tg-theme-hint-color, #888);font-size:clamp(12px,3.5vw,14px)}.mistake-correct{color:#2e7d32;font-size:clamp(13px,3.5vw,14px);font-weight:500}.recurring-category{font-size:clamp(11px,3vw,12px);text-transform:capitalize;font-weight:500}@media(max-width:320px){.analytics-summary{flex-wrap:wrap}.summary-card{min-width:calc(50% - 8px)}.category-label{min-width:70px}}.session-type-chart{display:flex;flex-direction:column;gap:clamp(6px,2vw,8px)}.session-type-row{display:flex;align-items:center;gap:clamp(8px,2.5vw,10px)}.session-type-name{font-size:clamp(12px,3.5vw,13px);color:var(--tg-theme-text-color, #000);min-width:90px;text-transform:capitalize}.session-type-bar-container{flex:1;height:8px;background-color:#0000000f;border-radius:4px;overflow:hidden}.session-type-bar{height:100%;border-radius:4px;transition:width .5s ease;min-width:4px}.session-type-count{font-size:clamp(12px,3.5vw,13px);font-weight:600;color:var(--tg-theme-hint-color, #888);min-width:24px;text-align:right}.feedback-analytics.loading{display:flex;justify-content:center;padding:clamp(16px,5vw,24px)}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.feedback-analytics{animation:slideUp .3s ease-out}.chart-wrapper{background-color:var(--tg-theme-bg-color, #fff);border-radius:clamp(8px,2.5vw,10px);padding:clamp(8px,2.5vw,12px) clamp(4px,1.5vw,8px);overflow:hidden}.chart-wrapper.radar{padding:clamp(4px,1.5vw,8px) 0}.heatmap-container{background-color:var(--tg-theme-bg-color, #fff);border-radius:clamp(8px,2.5vw,10px);padding:clamp(12px,3.5vw,16px)}.heatmap-grid{display:flex;gap:3px;justify-content:center}.heatmap-col{display:flex;flex-direction:column;gap:3px}.heatmap-cell{width:clamp(10px,2.8vw,14px);height:clamp(10px,2.8vw,14px);border-radius:2px;transition:background-color .2s ease}.heatmap-cell.legend{width:12px;height:12px}.heatmap-legend{display:flex;align-items:center;justify-content:center;gap:4px;margin-top:clamp(8px,2.5vw,12px)}.heatmap-legend-label{font-size:10px;color:var(--tg-theme-hint-color, #888)}.view-history-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:clamp(12px,3.5vw,14px);margin-top:clamp(12px,3.5vw,16px);background:var(--tg-theme-button-color, #2481cc);color:var(--tg-theme-button-text-color, #fff);border:none;border-radius:clamp(10px,3vw,12px);font-size:clamp(14px,4vw,16px);font-weight:600;cursor:pointer;transition:opacity .2s ease,transform .1s ease}.view-history-btn:active{transform:scale(.98);opacity:.9}.recharts-tooltip-wrapper{outline:none}.recharts-default-tooltip{background:var(--tg-theme-bg-color, #fff)!important;border-color:#0000001a!important}.recharts-tooltip-label,.recharts-tooltip-item{color:var(--tg-theme-text-color, #000)!important}.bottom-sheet-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:1000;display:flex;align-items:flex-end;animation:fadeIn .2s ease-out}.bottom-sheet{width:100%;max-height:90vh;background:var(--tg-theme-bg-color, #fff);border-radius:16px 16px 0 0;display:flex;flex-direction:column;animation:slideUp .3s ease-out}.bottom-sheet-handle{width:36px;height:4px;background:var(--tg-theme-hint-color, #888);border-radius:2px;margin:10px auto 0;opacity:.5}.bottom-sheet-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px 8px;border-bottom:1px solid rgba(0,0,0,.06)}.bottom-sheet-title{font-size:clamp(16px,4.5vw,18px);font-weight:600;color:var(--tg-theme-text-color, #000);margin:0}.bottom-sheet-close{background:none;border:none;font-size:18px;color:var(--tg-theme-hint-color, #888);cursor:pointer;padding:4px 8px;border-radius:8px}.bottom-sheet-close:active{background:#0000000d}.bottom-sheet-content{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:0 16px 16px}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.results-page{animation:fadeIn .3s ease-out;padding-bottom:calc(80px + env(safe-area-inset-bottom))}.sheet-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:clamp(32px,10vw,48px) 0;gap:12px;color:var(--tg-theme-hint-color, #888)}.session-history-sheet{padding-top:8px}.pull-indicator{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;overflow:hidden;transition:height .2s ease,opacity .2s ease;color:var(--tg-theme-hint-color, #888)}.pull-indicator svg{transition:transform .1s ease}.pull-indicator.refreshing svg{animation:spin 1s linear infinite}.pull-hint{font-size:12px;color:var(--tg-theme-hint-color, #888)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.page-title{font-size:clamp(22px,6vw,26px);font-weight:700;color:var(--tg-theme-text-color, #000);margin:0;text-align:center}.page-subtitle{font-size:clamp(13px,4vw,15px);color:var(--tg-theme-hint-color, #888);text-align:center;margin:clamp(4px,1.5vw,8px) 0 clamp(16px,5vw,24px) 0}.filter-tabs{display:flex;gap:clamp(6px,2vw,8px);overflow-x:auto;padding-bottom:clamp(8px,2.5vw,12px);margin-bottom:clamp(12px,4vw,16px);-webkit-overflow-scrolling:touch;scrollbar-width:none;position:relative;mask-image:linear-gradient(to right,transparent,black 12px,black calc(100% - 12px),transparent);-webkit-mask-image:linear-gradient(to right,transparent,black 12px,black calc(100% - 12px),transparent)}.filter-tabs::-webkit-scrollbar{display:none}.filter-tab{padding:clamp(6px,2vw,8px) clamp(12px,4vw,16px);background-color:var(--tg-theme-secondary-bg-color, #f0f0f0);border:none;border-radius:20px;font-size:clamp(12px,3.5vw,14px);font-weight:500;color:var(--tg-theme-hint-color, #888);cursor:pointer;transition:all .2s ease;white-space:nowrap;flex-shrink:0;width:auto}.filter-tab:active{transform:scale(.95)}.filter-tab.active{background-color:var(--tg-theme-button-color, #2481cc);color:var(--tg-theme-button-text-color, #fff)}.results-list{display:flex;flex-direction:column;gap:clamp(10px,3vw,14px)}.results-card{background-color:var(--tg-theme-secondary-bg-color, #f0f0f0);border-radius:clamp(12px,4vw,16px);padding:clamp(12px,4vw,16px);border:1px solid rgba(0,0,0,.05);cursor:pointer;transition:all .2s ease}.results-card:active{transform:scale(.99)}.results-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:clamp(8px,2.5vw,12px)}.results-meta{display:flex;flex-direction:column;gap:2px}.results-scenario{font-size:clamp(14px,4vw,16px);font-weight:600;color:var(--tg-theme-text-color, #000)}.results-date{font-size:clamp(11px,3vw,13px);color:var(--tg-theme-hint-color, #888)}.expand-icon{font-size:clamp(18px,5vw,22px);color:var(--tg-theme-hint-color, #888);transition:transform .3s ease;transform:rotate(0)}.expand-icon.open{transform:rotate(90deg)}.results-badges{display:flex;flex-wrap:wrap;gap:clamp(4px,1.5vw,6px)}.badge{padding:clamp(3px,1vw,4px) clamp(8px,2.5vw,10px);border-radius:12px;font-size:clamp(10px,3vw,12px);font-weight:500}.badge.grammar{background-color:#9c27b026;color:var(--roleplay-color, #9c27b0)}.badge.vocabulary{background-color:#4caf5026;color:var(--success-color, #4caf50)}.badge.pronunciation{background-color:#2196f326;color:var(--info-color, #2196f3)}.badge.mistakes{background-color:#f4433626;color:var(--error-color, #f44336)}.results-details{margin-top:clamp(12px,4vw,16px);padding-top:clamp(12px,4vw,16px);border-top:1px solid rgba(0,0,0,.08);animation:slideDown .2s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.detail-section{margin-bottom:clamp(14px,4vw,18px)}.detail-section:last-child{margin-bottom:0}.detail-section h4{font-size:clamp(12px,3.5vw,14px);font-weight:600;color:var(--tg-theme-text-color, #000);margin:0 0 clamp(6px,2vw,10px) 0}.results-text{font-size:clamp(13px,4vw,15px);color:var(--tg-theme-text-color, #000);line-height:1.5;margin:0}.mistakes-list{display:flex;flex-direction:column;gap:clamp(10px,3vw,14px)}.mistake-item{background-color:var(--tg-theme-bg-color, #fff);border-radius:clamp(8px,2.5vw,10px);padding:clamp(10px,3vw,14px)}.mistake-original{font-size:clamp(13px,4vw,15px);color:#d32f2f;margin-bottom:clamp(4px,1.5vw,6px);display:flex;align-items:flex-start;gap:clamp(6px,2vw,8px)}.mistake-correction{font-size:clamp(13px,4vw,15px);color:#2e7d32;margin-bottom:clamp(4px,1.5vw,6px);display:flex;align-items:flex-start;gap:clamp(6px,2vw,8px)}.cross,.check{flex-shrink:0;font-weight:700}.mistake-explanation{font-size:clamp(12px,3.5vw,14px);color:var(--tg-theme-hint-color, #888);font-style:italic;padding-left:clamp(18px,5vw,24px)}.point-list{margin:0;padding-left:clamp(16px,5vw,20px)}.point-list li{font-size:clamp(13px,4vw,15px);color:var(--tg-theme-text-color, #000);margin-bottom:clamp(4px,1.5vw,6px);line-height:1.4}.vocab-tags{display:flex;flex-wrap:wrap;gap:clamp(6px,2vw,8px)}.vocab-tag{padding:clamp(4px,1.5vw,6px) clamp(10px,3vw,14px);background-color:var(--tg-theme-bg-color, #fff);border-radius:16px;font-size:clamp(12px,3.5vw,14px);color:var(--tg-theme-text-color, #000);font-weight:500}.results-empty{text-align:center;padding:clamp(32px,10vw,48px) clamp(16px,5vw,24px)}.results-empty p{font-size:clamp(15px,4.5vw,17px);font-weight:600;color:var(--tg-theme-text-color, #000);margin:0 0 clamp(4px,1.5vw,8px) 0}.empty-hint{font-size:clamp(13px,4vw,15px);color:var(--tg-theme-hint-color, #888)}.results-loading{text-align:center;padding:clamp(32px,10vw,48px)}.results-loading .spinner.large{width:32px;height:32px;border-width:3px;margin:0 auto clamp(12px,4vw,16px)}.results-loading p{color:var(--tg-theme-hint-color, #888);margin:0}.results-error{text-align:center;padding:clamp(32px,10vw,48px)}.results-error .error-icon{font-size:clamp(40px,12vw,48px);display:block;margin-bottom:clamp(12px,4vw,16px)}.results-error p{color:var(--tg-theme-text-color, #000);margin:0 0 clamp(16px,5vw,24px) 0}.results-error button{width:auto;padding:clamp(10px,3vw,12px) clamp(20px,6vw,28px)}.pronunciation-audio-list{margin-bottom:clamp(12px,4vw,16px)}.audio-section-label{font-size:clamp(12px,3.5vw,13px);color:var(--tg-theme-hint-color, #888);margin:0 0 clamp(8px,2.5vw,12px) 0}.pronunciation-audio-item{display:flex;align-items:center;gap:clamp(10px,3vw,14px);padding:clamp(8px,2.5vw,12px);background-color:var(--tg-theme-bg-color, #fff);border-radius:clamp(8px,2.5vw,10px);margin-bottom:clamp(6px,2vw,8px)}.pronunciation-audio-item:last-child{margin-bottom:0}.audio-play-btn{display:flex;align-items:center;justify-content:center;width:clamp(36px,10vw,44px);height:clamp(36px,10vw,44px);border-radius:50%;border:none;background-color:#2196f326;color:var(--info-color, #2196f3);font-size:clamp(16px,4.5vw,20px);cursor:pointer;transition:all .2s ease;flex-shrink:0}.audio-play-btn:hover{background-color:#2196f340;transform:scale(1.05)}.audio-play-btn:active{transform:scale(.95)}.audio-play-btn.playing{background-color:#2196f34d;animation:pulse 1s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}.audio-word{font-size:clamp(14px,4vw,16px);font-weight:600;color:var(--tg-theme-text-color, #000)}.pronunciation-audio-item audio{display:none}.session-type-tabs{display:flex;gap:clamp(6px,2vw,8px);overflow-x:auto;padding-bottom:clamp(6px,2vw,8px);margin-bottom:clamp(8px,2.5vw,10px);-webkit-overflow-scrolling:touch;scrollbar-width:none}.session-type-tabs::-webkit-scrollbar{display:none}.session-type-tab{display:flex;align-items:center;gap:4px;padding:clamp(6px,2vw,8px) clamp(12px,4vw,16px);background-color:var(--tg-theme-secondary-bg-color, #f0f0f0);border:none;border-radius:20px;font-size:clamp(12px,3.5vw,14px);font-weight:500;color:var(--tg-theme-hint-color, #888);cursor:pointer;transition:all .2s ease;white-space:nowrap;flex-shrink:0}.session-type-tab:active{transform:scale(.95)}.session-type-tab.active{background-color:var(--tg-theme-button-color, #2481cc);color:var(--tg-theme-button-text-color, #fff)}.tab-icon{font-size:clamp(12px,3.5vw,14px)}.results-card.session-roleplay{border-left:3px solid #e91e63}.results-card.session-study{border-left:3px solid #4caf50}.results-card.session-assessment{border-left:3px solid #2196f3}.results-meta-top{display:flex;align-items:center;gap:clamp(6px,2vw,8px);margin-bottom:4px;flex-wrap:wrap}.session-type-label{font-size:clamp(10px,3vw,12px);font-weight:600;color:var(--tg-theme-hint-color, #888);text-transform:capitalize}.language-badge{font-size:clamp(10px,3vw,12px);padding:2px 8px;background-color:#2196f31a;border-radius:10px;color:var(--tg-theme-text-color, #000);text-transform:capitalize}.cefr-badge{font-size:clamp(10px,3vw,11px);padding:2px 6px;background-color:#ff980026;border-radius:8px;color:#f57c00;font-weight:700;letter-spacing:.5px}.badge.score{background-color:#4caf5026;color:#2e7d32}.badge.score.needs-work{background-color:#ff980026;color:#f57c00}.badge.turns{background-color:#e91e631f;color:#c2185b}.pill-tags{display:flex;flex-wrap:wrap;gap:clamp(4px,1.5vw,6px)}.pill-tag{padding:clamp(4px,1.5vw,6px) clamp(10px,3vw,14px);border-radius:16px;font-size:clamp(12px,3.5vw,13px);font-weight:500}.pill-tag.strength{background-color:#4caf5026;color:#2e7d32}.pill-tag.improve{background-color:#ff980026;color:#f57c00}.score-display{display:flex;flex-direction:column;gap:6px}.score-bar-container{width:100%;height:8px;background-color:#00000014;border-radius:4px;overflow:hidden}.score-bar{height:100%;background-color:var(--success-color, #4caf50);border-radius:4px;transition:width .5s ease}.score-text{font-size:clamp(12px,3.5vw,14px);color:var(--tg-theme-hint-color, #888);font-weight:500}.share-section{display:flex;justify-content:flex-end;margin-top:clamp(8px,2.5vw,12px);padding-top:clamp(8px,2.5vw,12px);border-top:1px solid rgba(0,0,0,.05)}.share-btn{display:flex;align-items:center;gap:6px;padding:clamp(6px,2vw,8px) clamp(12px,4vw,16px);background-color:var(--tg-theme-button-color, #2481cc);color:var(--tg-theme-button-text-color, #fff);border:none;border-radius:20px;font-size:clamp(12px,3.5vw,13px);font-weight:600;cursor:pointer;transition:all .2s ease}.share-btn:active{transform:scale(.95)}.share-btn:disabled{opacity:.5;cursor:not-allowed}.share-btn.sharing{animation:pulse 1s ease-in-out infinite}.load-more-container{display:flex;justify-content:center;padding:clamp(12px,4vw,16px) 0}.load-more-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:clamp(10px,3vw,12px) clamp(24px,8vw,36px);background-color:var(--tg-theme-secondary-bg-color, #f0f0f0);color:var(--tg-theme-text-color, #000);border:1px solid rgba(0,0,0,.08);border-radius:24px;font-size:clamp(13px,4vw,15px);font-weight:500;cursor:pointer;transition:all .2s ease;min-width:140px}.load-more-btn:active{transform:scale(.97)}.load-more-btn:disabled{opacity:.6;cursor:not-allowed}.load-more-btn .spinner.small{width:16px;height:16px;border-width:2px}.page-container{padding:clamp(12px,4vw,16px);padding-bottom:calc(80px + env(safe-area-inset-bottom));min-height:100vh;box-sizing:border-box;animation:pageEnter .3s ease-out}.page-title{font-size:clamp(20px,5.5vw,24px);font-weight:700;margin:0 0 clamp(16px,4vw,20px) 0;color:var(--tg-theme-text-color, #000)}.page-section{margin-bottom:clamp(20px,5vw,24px)}.section-title{font-size:clamp(12px,3.2vw,13px);font-weight:600;color:var(--tg-theme-hint-color, #888);text-transform:uppercase;letter-spacing:.5px;margin:0 0 clamp(10px,3vw,12px) 0}.card{background-color:var(--tg-theme-secondary-bg-color, #f0f0f0);border-radius:clamp(12px,3vw,16px);padding:clamp(14px,4vw,18px);border:1px solid rgba(0,0,0,.05)}.card-header{display:flex;align-items:flex-start;gap:clamp(10px,3vw,14px)}.card-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:10px;flex-shrink:0}.card-content{flex:1;min-width:0}.card-title{font-size:clamp(14px,3.8vw,16px);font-weight:600;color:var(--tg-theme-text-color, #000);margin:0}.card-description{font-size:clamp(12px,3.2vw,13px);color:var(--tg-theme-hint-color, #888);line-height:1.4;margin:4px 0 0}.form-group{margin-bottom:clamp(14px,4vw,18px)}.form-label{display:block;margin-bottom:clamp(6px,2vw,8px);font-size:clamp(12px,3.2vw,13px);font-weight:600;color:var(--tg-theme-hint-color, #888);text-transform:uppercase;letter-spacing:.3px}.form-input,.form-textarea,.form-select{width:100%;padding:clamp(12px,3.5vw,14px) clamp(14px,4vw,16px);border:2px solid transparent;border-radius:clamp(10px,3vw,12px);background-color:var(--tg-theme-secondary-bg-color, #f0f0f0);color:var(--tg-theme-text-color, #000);box-sizing:border-box;font-family:inherit;font-size:clamp(14px,4vw,16px);transition:all .2s ease;outline:none}.form-input:focus,.form-textarea:focus,.form-select:focus{border-color:var(--tg-theme-button-color, #2481cc);background-color:var(--tg-theme-bg-color, #fff);box-shadow:0 0 0 4px #2481cc1a}.form-textarea{resize:vertical;min-height:clamp(80px,25vw,100px)}.btn-primary{width:100%;padding:clamp(12px,3.5vw,16px);background-color:var(--tg-theme-button-color, #2481cc);color:var(--tg-theme-button-text-color, #fff);border:none;border-radius:clamp(10px,3vw,12px);font-family:inherit;font-size:clamp(14px,4vw,16px);font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:clamp(6px,2vw,8px);transition:all .2s ease}.btn-primary:active{transform:scale(.98)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}@keyframes pageEnter{0%{opacity:0}to{opacity:1}}.market-page{padding:clamp(12px,4vw,16px);padding-bottom:calc(80px + env(safe-area-inset-bottom));min-height:100vh;box-sizing:border-box;animation:pageEnter .3s ease-out}.market-page .page-title{font-size:clamp(20px,5.5vw,24px);font-weight:700;margin-bottom:clamp(16px,4vw,20px);color:var(--tg-theme-text-color, #000)}.market-section{margin-bottom:clamp(20px,5vw,24px);position:relative}.market-section:has(.plan-popular){margin-top:20px}.market-section .section-title{font-size:clamp(12px,3.2vw,13px);font-weight:600;color:var(--tg-theme-hint-color, #888);text-transform:uppercase;letter-spacing:.5px;margin-bottom:clamp(10px,3vw,12px)}.subscription-section{margin-top:10px}.plan-tabs{position:relative;display:flex;background-color:var(--tg-theme-secondary-bg-color, #f0f0f0);padding:4px;border-radius:12px;margin-bottom:20px;border:1px solid rgba(0,0,0,.05)}.plan-tab{flex:1;z-index:2;border:none;background:none;padding:10px;font-size:14px;font-weight:700;color:var(--tg-theme-hint-color, #888);cursor:pointer;transition:color .3s ease;display:flex;align-items:center;justify-content:center;gap:6px;width:100%}.plan-tab.active{color:var(--tg-theme-button-text-color, #fff)}.tab-slider{position:absolute;top:4px;left:4px;width:calc(50% - 4px);height:calc(100% - 8px);background-color:var(--tg-theme-button-color, #2481cc);border-radius:9px;z-index:1;transition:transform .4s cubic-bezier(.34,1.56,.64,1);box-shadow:0 2px 8px #2196f340}.tab-slider.pro{transform:translate(100%)}.tab-content-pro{display:flex;align-items:center;justify-content:center;gap:6px}.indicator-badge{font-size:8px;background-color:#fff3;padding:1px 5px;border-radius:4px;text-transform:uppercase;font-weight:800}.plan-card-container{width:100%;min-height:400px;perspective:1000px}.slide-in-right{animation:slideInRight .4s cubic-bezier(.16,1,.3,1)}.slide-in-left{animation:slideInLeft .4s cubic-bezier(.16,1,.3,1)}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.plan-card{position:relative;background-color:var(--tg-theme-bg-color, #fff);border-radius:20px;padding:clamp(20px,6vw,24px);border:1px solid rgba(var(--tg-theme-text-color-rgb, 0, 0, 0),.08);display:flex;flex-direction:column;box-shadow:0 8px 24px #0000000f;box-sizing:border-box;transition:all .3s cubic-bezier(.4,0,.2,1)}.plan-card.free-card{background-color:var(--tg-theme-secondary-bg-color, #f0f0f0);border-color:#0000000a}.plan-card.pro-card{border-color:#2196f333;background:linear-gradient(180deg,rgba(33,150,243,.04) 0%,var(--tg-theme-bg-color) 100%);box-shadow:0 12px 32px #2196f31f}.plan-card.current{border-color:var(--tg-theme-button-color, #2481cc);border-width:2px}.plan-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px}.plan-title-group{display:flex;flex-direction:column;gap:2px}.plan-name-large{font-size:24px;font-weight:800;display:flex;align-items:center;gap:8px}.plan-subtitle{margin:0;font-size:13px;color:var(--tg-theme-hint-color, #888);font-weight:500}.tier-free-text{color:var(--tier-free-color, #78909c)}.tier-pro-text{color:var(--tier-pro-color, #2196F3)}.current-badge{font-size:10px;padding:3px 8px;border-radius:8px;background-color:var(--tg-theme-button-color, #2481cc);color:var(--tg-theme-button-text-color, #fff);font-weight:700;text-transform:uppercase}.plan-price{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px;margin-bottom:20px;min-height:54px;transition:all .2s ease}.price-exit{opacity:0;transform:translateY(-8px)}.price-enter{opacity:1;transform:translateY(0)}.price-amount{font-size:42px;font-weight:800;color:var(--tg-theme-text-color, #000);line-height:1}.price-meta{display:flex;flex-direction:column;justify-content:center}.price-unit{font-size:14px;color:var(--tg-theme-hint-color, #888);font-weight:600}.price-billed-yearly{font-size:11px;color:var(--success-color, #4caf50);font-weight:700}.original-price{font-size:20px;text-decoration:line-through;color:var(--tg-theme-hint-color, #888);opacity:.6;margin-right:-4px}.plan-features-compact{list-style:none;padding:0;margin:0 0 20px;display:flex;flex-direction:column;gap:12px;flex-grow:1}.plan-features-compact .feature-limit{display:flex;justify-content:space-between;align-items:center;padding:8px 0}.plan-features-compact .feature-info{display:flex;align-items:center;gap:10px;color:var(--tg-theme-button-color, #2481cc)}.free-card .feature-info{color:var(--tg-theme-hint-color, #888)}.plan-features-compact .feature-value{font-size:14px;font-weight:700;color:var(--tg-theme-text-color, #000)}.plan-features-compact .feature-label{font-size:14px;color:var(--tg-theme-text-color, #000);font-weight:500}.more-features{margin-bottom:20px;background-color:#2196f314;padding:10px 14px;border-radius:10px}.more-features-text{font-size:12px;color:var(--tg-theme-button-color, #2481cc);font-weight:600;display:flex;align-items:center;gap:4px}.billing-toggle-compact{display:flex;background-color:var(--tg-theme-secondary-bg-color, #f0f0f0);border-radius:14px;padding:4px;margin-bottom:20px;border:1px solid rgba(0,0,0,.04)}.billing-toggle-compact .toggle-btn{flex:1;padding:12px;border:none;background:none;font-size:14px;font-weight:700;color:var(--tg-theme-hint-color, #888);cursor:pointer;border-radius:10px;transition:all .2s cubic-bezier(.4,0,.2,1);width:100%}.billing-toggle-compact .toggle-btn.active{background-color:var(--tg-theme-bg-color, #fff);color:var(--tg-theme-button-color, #2481cc);box-shadow:0 4px 12px #00000014}.toggle-btn-content{display:flex;align-items:center;justify-content:center;gap:6px}.promo-pill{font-size:9px;background-color:var(--success-color, #4caf50);color:var(--button-text, #fff);padding:2px 6px;border-radius:6px;text-transform:uppercase}.promo-section{margin-bottom:16px;padding-top:12px;border-top:1px solid rgba(128,128,128,.15);width:100%;box-sizing:border-box}.promo-toggle{display:flex;align-items:center;gap:6px;background:none;border:none;padding:6px 0;font-size:13px;font-weight:600;color:var(--tg-theme-link-color, var(--tg-theme-button-color, #2481cc));cursor:pointer;transition:opacity .2s ease;width:100%}.promo-toggle:active{opacity:.7}.promo-input-area{display:flex;flex-direction:column;gap:8px;animation:promoSlideIn .25s ease-out;width:100%}@keyframes promoSlideIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.promo-input-row{display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;flex-direction:row;-webkit-flex-wrap:nowrap;flex-wrap:nowrap;gap:8px;width:100%;-webkit-box-align:stretch;-webkit-align-items:stretch;align-items:stretch;box-sizing:border-box}.promo-input-row>input.promo-input{width:auto}.promo-input-row>button.promo-apply-btn{width:auto}.promo-input{-webkit-box-flex:1;-webkit-flex:1 1 auto;flex:1 1 auto;min-width:0;padding:10px 14px;border:1.5px solid rgba(128,128,128,.3);border-radius:12px;background-color:var(--tg-theme-secondary-bg-color, #f0f0f0);color:var(--tg-theme-text-color, #000);font-size:14px;font-weight:600;letter-spacing:1px;outline:none;transition:border-color .2s ease;text-transform:uppercase;box-sizing:border-box;-webkit-appearance:none;-moz-appearance:none;appearance:none;display:block;height:44px}.promo-input::placeholder{text-transform:none;letter-spacing:normal;font-weight:400;color:var(--tg-theme-hint-color, #888)}.promo-input:focus{border-color:var(--tg-theme-button-color, #2481cc)}.promo-apply-btn{padding:10px 18px;border:none;border-radius:12px;background:var(--tg-theme-button-color, #2481cc);color:var(--tg-theme-button-text-color, #fff);font-size:13px;font-weight:700;cursor:pointer;transition:all .2s ease;white-space:nowrap;min-width:70px;display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-align:center;-webkit-align-items:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;justify-content:center;-webkit-flex-shrink:0;flex-shrink:0;-webkit-box-flex:0;-webkit-flex:0 0 auto;flex:0 0 auto;height:44px;box-sizing:border-box}.promo-apply-btn:disabled{opacity:.5;cursor:not-allowed}.promo-apply-btn:not(:disabled):active{transform:scale(.95)}.promo-error{font-size:12px;color:var(--error-color, #f44336);font-weight:500;padding-left:2px}.promo-applied{display:flex;align-items:center;justify-content:space-between;gap:8px;animation:promoSlideIn .25s ease-out}.promo-applied-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background-color:#4caf501f;color:var(--success-color, #4caf50);border-radius:10px;font-size:13px;font-weight:700}.promo-clear{background:none;border:none;padding:6px 10px;font-size:12px;font-weight:600;color:var(--tg-theme-hint-color, #888);cursor:pointer;transition:color .2s ease;text-decoration:underline;text-underline-offset:2px}.promo-clear:active{color:var(--error-color, #f44336)}.plan-button{width:100%;padding:16px;border:none;border-radius:16px;background:var(--tg-theme-button-color, #2481cc);color:var(--tg-theme-button-text-color, #fff);font-size:15px;font-weight:700;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center;margin-top:auto;position:relative;overflow:hidden;box-shadow:0 4px 12px #2196f333}.plan-button.accent{background:linear-gradient(135deg,var(--tg-theme-button-color, #2481cc),#1976D2);box-shadow:0 6px 16px #2196f34d}.plan-button:not(:disabled):active{transform:scale(.96);box-shadow:0 2px 8px #2196f333}.plan-button:disabled{background:var(--tg-theme-secondary-bg-color, #f0f0f0);color:var(--tg-theme-hint-color, #888);box-shadow:none;cursor:not-allowed}@keyframes shimmer-sweep{0%{transform:translate(-150%) skew(-20deg)}to{transform:translate(150%) skew(-20deg)}}.plan-button:not(:disabled):after{content:"";position:absolute;top:0;left:0;width:60%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);animation:shimmer-sweep 3s infinite ease-in-out}.boosters-grid{display:flex;flex-direction:column;gap:clamp(8px,2vw,10px)}.booster-card{display:flex;align-items:center;gap:12px;background-color:var(--tg-theme-secondary-bg-color, #f0f0f0);border-radius:clamp(10px,3vw,12px);padding:clamp(12px,3vw,14px);border:1px solid rgba(0,0,0,.05);transition:all .2s ease;cursor:default}.booster-card:hover{background-color:var(--tg-theme-bg-color, #fff);border-color:#0000001a;transform:translate(4px)}.booster-icon{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:10px;flex-shrink:0}.booster-icon.ticket{background:linear-gradient(135deg,#2196f326,#2196f30d);color:#1976d2}.booster-icon.message{background:linear-gradient(135deg,#4caf5026,#4caf500d);color:#388e3c}.booster-icon.mic{background:linear-gradient(135deg,#9c27b026,#9c27b00d);color:#7b1fa2}.booster-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;overflow:hidden}.booster-name{font-size:clamp(13px,3.5vw,14px);font-weight:600;color:var(--tg-theme-text-color, #000);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.booster-details{font-size:clamp(10px,2.8vw,11px);color:var(--tg-theme-hint-color, #888);line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.booster-button{display:flex;align-items:center;justify-content:center;gap:4px;padding:clamp(8px,2vw,10px) clamp(10px,2.5vw,12px);border:none;border-radius:clamp(8px,2vw,10px);background:linear-gradient(135deg,var(--tg-theme-button-color, #2481cc),#1976D2);color:var(--tg-theme-button-text-color, white);font-size:clamp(12px,3vw,13px);font-weight:700;cursor:pointer;transition:all .2s ease;white-space:nowrap;min-width:85px;width:auto;flex-shrink:0;box-shadow:0 2px 6px #2196f333}.booster-button:focus-visible{outline:2px solid var(--tg-theme-button-color, #2481cc);outline-offset:2px}.booster-button svg{margin-bottom:2px}.booster-button:active{transform:scale(.96)}.original-price-small{font-size:10px;text-decoration:line-through;opacity:.7;margin-right:4px;font-weight:500}.plan-button .btn-content{display:flex;justify-content:center;align-items:center;gap:6px;width:100%}.plan-button .btn-label{text-transform:uppercase;letter-spacing:.5px;font-size:11px;white-space:nowrap}.plan-button .price-tag{display:flex;align-items:center;gap:2px;background-color:#fff3;padding:2px 6px;border-radius:6px;font-weight:800;font-size:11px}.plan-button .price-tag svg{margin-bottom:2px}.market-info{display:flex;align-items:flex-start;gap:12px;padding:clamp(14px,4vw,16px);background-color:var(--tg-theme-secondary-bg-color, #f0f0f0);border-radius:clamp(10px,3vw,12px);margin-top:8px;border:1px solid rgba(0,0,0,.05)}.market-info .info-icon{display:flex;align-items:center;justify-content:center;color:var(--tg-theme-hint-color, #888);flex-shrink:0;margin-top:2px}.market-info .info-text{font-size:clamp(11px,3vw,12px);color:var(--tg-theme-text-color, #000);line-height:1.4}.referral-section{margin-top:clamp(20px,5vw,24px)}.referral-banner{display:flex;align-items:center;gap:12px;background:linear-gradient(135deg,#4caf5014,#8bc34a14);border:1px dashed rgba(76,175,80,.25);border-radius:clamp(10px,3vw,12px);padding:clamp(12px,3.5vw,14px)}.referral-icon{display:flex;align-items:center;justify-content:center;width:44px;height:44px;background-color:var(--success-color, #4caf50);color:#fff;border-radius:12px;flex-shrink:0}.referral-content{flex:1}.referral-content h4{margin:0 0 4px;font-size:clamp(14px,4vw,16px);font-weight:700;color:var(--tg-theme-text-color, #000)}.referral-content p{margin:0;font-size:clamp(11px,3vw,12px);color:var(--tg-theme-hint-color, #888);line-height:1.4}.referral-share-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background-color:var(--tg-theme-button-color, #2481cc);color:var(--tg-theme-button-text-color, white);border:none;border-radius:10px;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 6px #2196f333}.referral-share-btn:focus-visible{outline:2px solid var(--tg-theme-button-color, #2481cc);outline-offset:2px}.referral-share-btn:active{transform:scale(.92)}.referral-stats-badges{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.stat-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;background-color:#0000000d;border-radius:6px;font-size:10px;color:var(--tg-theme-text-color, #000);font-weight:500}.stat-badge strong{font-weight:700}.stat-badge.earned{background-color:#4caf5026;color:var(--success-color, #4caf50)}.free-credits-section{margin-top:20px}.ads-banner{display:flex;align-items:center;gap:16px;background:linear-gradient(135deg,#2196f314,#1976d214);border:1px solid rgba(33,150,243,.15);border-radius:clamp(10px,3vw,12px);padding:clamp(12px,3.5vw,14px)}.ads-icon{display:flex;align-items:center;justify-content:center;width:44px;height:44px;background-color:var(--tg-theme-button-color, #2481cc);color:#fff;border-radius:12px;flex-shrink:0}.ads-content{flex:1}.ads-content h4{margin:0 0 4px;font-size:clamp(14px,4vw,16px);font-weight:700;color:var(--tg-theme-text-color, #000)}.ads-content p{margin:0;font-size:clamp(11px,3vw,12px);color:var(--tg-theme-hint-color, #888);line-height:1.4}.ads-stats{margin-top:8px}.stat-badge.limit-reached{background-color:#f443361a;color:var(--error-color, #f44336)}.ads-watch-btn{display:flex;align-items:center;justify-content:center;width:44px;height:44px;background-color:var(--tg-theme-button-color, #2481cc);color:var(--tg-theme-button-text-color, white);border:none;border-radius:12px;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 6px #2196f333}.ads-watch-btn:focus-visible{outline:2px solid var(--tg-theme-button-color, #2481cc);outline-offset:2px}.ads-watch-btn:disabled{opacity:.5;background-color:var(--tg-theme-hint-color, #888);cursor:not-allowed;box-shadow:none}.ads-watch-btn:not(:disabled):active{transform:scale(.92)}@media(max-width:360px){.plan-card{padding:16px}.booster-card{padding:10px;gap:10px}.booster-icon{width:36px;height:36px;flex-shrink:0}.booster-icon svg{width:18px;height:18px}.booster-button{min-width:60px;width:60px;font-size:11px;padding:6px 8px}.booster-name{font-size:12px}.booster-details{font-size:10px}}.plans-skeleton,.boosters-skeleton{display:flex;flex-direction:column;gap:16px}.skeleton-plans-row{display:grid;grid-template-columns:1fr 1fr;gap:clamp(8px,2.5vw,12px)}@media(max-width:480px){.skeleton-plans-row{grid-template-columns:1fr;gap:16px}}.skeleton-toggle{height:38px;width:240px;margin:0 auto 8px;border-radius:12px;background:linear-gradient(90deg,var(--tg-theme-secondary-bg-color, #f0f0f0) 25%,var(--tg-theme-bg-color, #e8e8e8) 50%,var(--tg-theme-secondary-bg-color, #f0f0f0) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}.skeleton-plan-card{background-color:var(--tg-theme-secondary-bg-color, #f0f0f0);border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:8px}.skeleton-line{height:12px;border-radius:6px;background:linear-gradient(90deg,#0000000d 25%,#0000001a,#0000000d 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}.skeleton-line.short{width:40%;height:16px}.skeleton-line.medium{width:60%;height:24px}.skeleton-features{display:flex;flex-direction:column;gap:4px;margin:6px 0}.skeleton-button{height:38px;border-radius:10px;background:linear-gradient(90deg,#00000014 25%,#0000001f,#00000014 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}.skeleton-booster-card{display:flex;align-items:center;gap:10px;background-color:var(--tg-theme-secondary-bg-color, #f0f0f0);border-radius:10px;padding:12px}.skeleton-icon{width:44px;height:44px;border-radius:10px;flex-shrink:0;background:linear-gradient(90deg,#0000000d 25%,#0000001a,#0000000d 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}.skeleton-info{flex:1;display:flex;flex-direction:column;gap:6px}.skeleton-info .skeleton-line{height:14px}.skeleton-info .skeleton-line.short{width:50%;height:14px}.skeleton-btn{width:70px;height:36px;border-radius:10px;flex-shrink:0;background:linear-gradient(90deg,#00000014 25%,#0000001f,#00000014 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}.bottom-nav{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:space-around;align-items:center;background-color:var(--tg-theme-bg-color, #fff);border-top:1px solid rgba(0,0,0,.08);padding:clamp(6px,2vw,10px) clamp(8px,3vw,16px);padding-bottom:max(env(safe-area-inset-bottom),clamp(6px,2vw,10px));z-index:100;box-shadow:0 -2px 10px #0000000d}.nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(2px,1vw,4px);padding:clamp(6px,2vw,8px) clamp(12px,4vw,16px);background:transparent;border:none;border-radius:clamp(8px,2.5vw,10px);cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);color:var(--tg-theme-hint-color, #888);min-width:clamp(56px,18vw,72px);width:auto;position:relative}.nav-item:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%) scaleX(0);width:24px;height:3px;background:var(--tg-theme-button-color, #2481cc);border-radius:0 0 3px 3px;transition:transform .25s cubic-bezier(.4,0,.2,1)}.nav-item:active{transform:scale(.95)}.nav-item.active{color:var(--tg-theme-button-color, #2481cc);background-color:#2481cc1a}.nav-item.active:before{transform:translate(-50%) scaleX(1)}.nav-icon{display:flex;align-items:center;justify-content:center;width:clamp(24px,7vw,28px);height:clamp(24px,7vw,28px);transition:transform .25s cubic-bezier(.4,0,.2,1)}.nav-icon svg{width:100%;height:100%;stroke-width:2.5px}.nav-item.active .nav-icon{transform:translateY(-2px) scale(1.1)}.nav-label{font-size:clamp(10px,3vw,12px);font-weight:500;white-space:nowrap;transition:font-weight .25s ease}.nav-item.active .nav-label{font-weight:600}[dir=rtl] .nav-label{font-family:"Vazirmatn",inherit}.leaderboard-page{padding-bottom:calc(80px + env(safe-area-inset-bottom));width:100%;animation:fadeIn .3s ease-out}.leaderboard-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.back-button{background:none;border:none;color:var(--tg-theme-link-color, #2481cc);padding:8px;cursor:pointer;display:flex;align-items:center}.leaderboard-title{font-size:clamp(16px,5vw,20px);font-weight:700;color:var(--tg-theme-text-color, #000);margin:0;display:flex;align-items:center;gap:6px}.leaderboard-title svg{color:#ffc107}.header-spacer{width:36px}.leaderboard-subtitle{font-size:clamp(11px,3vw,13px);color:var(--tg-theme-hint-color, #888);text-align:center;margin:0 0 16px}.leaderboard-loading{display:flex;justify-content:center;padding:40px 0}.leaderboard-empty{text-align:center;padding:40px 16px;color:var(--tg-theme-hint-color, #888);font-size:clamp(13px,4vw,15px)}.leaderboard-list{display:flex;flex-direction:column;gap:6px}.leaderboard-row{display:flex;align-items:center;padding:clamp(10px,3vw,14px) clamp(12px,4vw,16px);background:var(--tg-theme-secondary-bg-color, #f0f0f0);border-radius:12px;border:1px solid rgba(0,0,0,.05);gap:12px}.leaderboard-row.current-user{background:linear-gradient(135deg,#2196f31a,#3f51b51a);border-color:#2196f34d}.leaderboard-row.top-1{background:linear-gradient(135deg,#ffd7001f,#ffc10714);border-color:#ffc1074d}.leaderboard-row.top-2{background:linear-gradient(135deg,#c0c0c01f,#9e9e9e14);border-color:#9e9e9e4d}.leaderboard-row.top-3{background:linear-gradient(135deg,#cd7f321f,#b8733314);border-color:#b873334d}.row-rank{width:32px;text-align:center;flex-shrink:0}.rank-medal{font-size:20px}.rank-number{font-size:clamp(13px,4vw,15px);font-weight:700;color:var(--tg-theme-hint-color, #888)}.row-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.row-name{font-size:clamp(13px,4vw,15px);font-weight:600;color:var(--tg-theme-text-color, #000);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row-level{font-size:clamp(10px,2.5vw,11px);color:var(--tg-theme-hint-color, #888)}.row-xp{display:flex;flex-direction:column;align-items:flex-end;flex-shrink:0}.xp-value{font-size:clamp(14px,4vw,16px);font-weight:700;color:#f57c00}.xp-label{font-size:clamp(9px,2.5vw,10px);color:var(--tg-theme-hint-color, #888);text-transform:uppercase;letter-spacing:.3px}.current-user-section{margin-top:8px}.separator-dots{text-align:center;color:var(--tg-theme-hint-color, #888);font-size:14px;letter-spacing:4px;margin-bottom:8px}.rewards-banner{background:linear-gradient(135deg,#ffd70014,#ff98000f);border:1px solid rgba(255,193,7,.25);border-radius:14px;padding:clamp(12px,3vw,16px);margin-bottom:16px}.rewards-banner-title{font-size:clamp(13px,3.5vw,15px);font-weight:700;color:var(--tg-theme-text-color, #000);display:flex;align-items:center;gap:6px;margin-bottom:10px}.rewards-banner-title svg{color:#ffc107}.reward-card{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:var(--tg-theme-bg-color, #fff);border-radius:10px;margin-bottom:6px}.reward-card:last-child{margin-bottom:0}.reward-info{display:flex;align-items:center;gap:8px}.reward-rank{font-size:clamp(14px,4vw,16px);font-weight:700}.reward-week{font-size:clamp(11px,3vw,13px);color:var(--tg-theme-hint-color, #888)}.reward-xp{font-size:clamp(11px,3vw,13px);font-weight:600;color:#f57c00}.claim-button{background:linear-gradient(135deg,#ffc107,#ff9800);color:#fff;border:none;border-radius:8px;padding:6px 14px;font-size:clamp(11px,3vw,13px);font-weight:600;cursor:pointer;white-space:nowrap}.claim-button:disabled{opacity:.6;cursor:not-allowed}.claim-hint{font-size:clamp(10px,2.5vw,11px);color:var(--tg-theme-hint-color, #888);white-space:nowrap}.badges-page{padding:clamp(12px,4vw,16px);padding-bottom:calc(80px + env(safe-area-inset-bottom));animation:pageEnter .3s ease-out}.badges-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.badges-title{font-size:clamp(20px,5vw,24px);font-weight:700;color:var(--tg-theme-text-color, #000);margin:0}.badges-summary{display:flex;align-items:baseline;gap:2px}.badges-earned-count{font-size:clamp(22px,6vw,28px);font-weight:800;color:#ffc107}.badges-total-count{font-size:clamp(14px,3.5vw,16px);color:var(--tg-theme-hint-color, #888);font-weight:500}.badges-progress{margin-bottom:16px}.badges-progress-track{height:6px;border-radius:3px;background:var(--tg-theme-secondary-bg-color, #f0f0f0);overflow:hidden}.badges-progress-fill{height:100%;border-radius:3px;background:linear-gradient(90deg,#ffc107,#ff9800);transition:width .6s ease}.badges-progress-label{display:block;text-align:center;font-size:clamp(11px,2.8vw,12px);color:var(--tg-theme-hint-color, #888);margin-top:6px}.badges-filter{display:flex;gap:8px;overflow-x:auto;padding-bottom:12px;margin-bottom:8px;-webkit-overflow-scrolling:touch;scrollbar-width:none}.badges-filter::-webkit-scrollbar{display:none}.filter-chip{flex-shrink:0;padding:6px 14px;border-radius:20px;border:1px solid var(--tg-theme-secondary-bg-color, rgba(0, 0, 0, .08));background:transparent;color:var(--tg-theme-hint-color, #888);font-size:clamp(12px,3vw,13px);font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.filter-chip.active{background:var(--tg-theme-button-color, #2481cc);color:var(--tg-theme-button-text-color, #fff);border-color:var(--tg-theme-button-color, #2481cc)}.badges-category{margin-bottom:20px}.category-title{display:flex;align-items:center;gap:8px;font-size:clamp(15px,4vw,17px);font-weight:600;color:var(--tg-theme-text-color, #000);margin:0 0 12px}.category-icon{font-size:18px}.category-count{margin-inline-start:auto;font-size:clamp(11px,2.8vw,12px);font-weight:500;color:var(--tg-theme-hint-color, #888);background:var(--tg-theme-secondary-bg-color, #f0f0f0);padding:2px 8px;border-radius:10px}.badges-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.badge-card{display:flex;flex-direction:column;align-items:center;padding:14px 10px 10px;border-radius:14px;background:var(--tg-theme-secondary-bg-color, #f0f0f0);border:1px solid rgba(0,0,0,.05);transition:transform .2s ease,box-shadow .2s ease;position:relative;text-align:center}.badge-card.earned{border-color:#ffc10733}.badge-card.locked{opacity:.55}.badge-card.earned:active{transform:scale(.97)}.badge-card.earned.tier-bronze{box-shadow:0 2px 12px #cd7f3226}.badge-card.earned.tier-silver{box-shadow:0 2px 12px #c0c0c026}.badge-card.earned.tier-gold{box-shadow:0 2px 12px #ffd70033}.badge-card.earned.tier-platinum{box-shadow:0 2px 12px #6dd5ed33}.badge-card.earned.tier-legendary{box-shadow:0 2px 14px #9c27b040;border-color:#9c27b04d}.badge-icon-wrapper{width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:8px;background:var(--tg-theme-secondary-bg-color, #f0f0f0)}.badge-icon-emoji{font-size:24px;filter:drop-shadow(0 1px 2px rgba(0,0,0,.3))}.badge-lock-icon{color:var(--tg-theme-hint-color, #888);opacity:.5}.badge-info{display:flex;flex-direction:column;gap:2px;margin-bottom:6px;min-height:36px}.badge-name{font-size:clamp(12px,3vw,13px);font-weight:600;color:var(--tg-theme-text-color, #000);line-height:1.2}.badge-description{font-size:clamp(10px,2.5vw,11px);color:var(--tg-theme-hint-color, #888);line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.badge-meta{display:flex;align-items:center;gap:6px}.badge-tier{font-size:clamp(9px,2.3vw,10px);font-weight:700;text-transform:uppercase;letter-spacing:.5px}.badge-nft-tag{display:inline-flex;align-items:center;gap:3px;font-size:9px;font-weight:600;padding:1px 5px;border-radius:4px;background:#9c27b026;color:#ce93d8;letter-spacing:.3px}.badge-earned-date{font-size:clamp(9px,2.3vw,10px);color:var(--tg-theme-hint-color, #888);margin-top:4px}.badges-loading{padding-top:60px}.badges-skeleton-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.badge-skeleton{height:160px;border-radius:14px;background:var(--tg-theme-secondary-bg-color, #f0f0f0);animation:badgePulse 1.5s ease-in-out infinite}@keyframes badgePulse{0%,to{opacity:.4}50%{opacity:.7}}.badges-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;text-align:center}.badges-empty-icon{font-size:48px;margin-bottom:12px}.badges-empty p{color:var(--tg-theme-hint-color, #888);font-size:clamp(13px,3.5vw,15px);margin:0}.certificates-section{margin-bottom:20px}.certificates-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.certificate-card{display:flex;flex-direction:column;align-items:center;padding:16px 12px 12px;border-radius:14px;background:linear-gradient(135deg,#ffd70014,#ff98000f);border:1px solid rgba(255,215,0,.2);text-align:center}.certificate-header{display:flex;flex-direction:column;align-items:center;gap:2px;margin-bottom:6px}.certificate-level{font-size:clamp(20px,5vw,24px);font-weight:800;color:#ffc107}.certificate-language{font-size:clamp(12px,3vw,13px);font-weight:600;color:var(--tg-theme-text-color, #000);text-transform:capitalize}.certificate-label{font-size:clamp(10px,2.5vw,11px);color:var(--tg-theme-hint-color, #888);margin-bottom:10px}.certificate-actions{display:flex;gap:6px;width:100%}.cert-action-btn{flex:1;padding:6px 8px;border-radius:8px;border:1px solid rgba(0,0,0,.05);background:var(--tg-theme-secondary-bg-color, #f0f0f0);color:var(--tg-theme-text-color, #000);font-size:clamp(10px,2.5vw,11px);font-weight:500;cursor:pointer;transition:all .2s ease}.cert-action-btn:active{transform:scale(.96)}.cert-action-btn:disabled{opacity:.5;cursor:not-allowed}.badge-mint-area{margin-top:6px;width:100%}.badge-mint-btn{width:100%;padding:6px 10px;border:none;border-radius:8px;background:linear-gradient(135deg,#6c5ce7,#a29bfe);color:#fff;font-size:11px;font-weight:600;cursor:pointer;transition:all .2s ease}.badge-mint-btn:active{transform:scale(.96)}.badge-mint-btn:disabled{opacity:.5;cursor:not-allowed}.badge-minted-link{display:block;text-align:center;font-size:11px;color:#27ae60;font-weight:600;text-decoration:none}.badge-mint-hint{display:block;text-align:center;font-size:10px;color:var(--tg-theme-hint-color, #888);font-style:italic}.badge-nft-coming-soon{display:flex;align-items:center;justify-content:center;gap:5px;width:100%;padding:6px 10px;border-radius:8px;background:linear-gradient(135deg,#9c27b01a,#6c5ce71a);border:1px dashed rgba(156,39,176,.3);color:#ce93d8;font-size:10px;font-weight:600;letter-spacing:.3px}.assessment-locked{text-align:center;padding:40px 20px;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;box-sizing:border-box;animation:fadeIn .3s ease-out}.assessment-locked-icon{font-size:48px;margin-bottom:20px}.assessment-locked-title{color:var(--tg-theme-text-color, #000);margin-bottom:12px}.assessment-locked-message{color:var(--tg-theme-hint-color, #888);margin-bottom:24px;line-height:1.5}.assessment-locked-button{width:100%}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.skeleton-container{padding:20px;max-width:500px;margin:0 auto}.skeleton{background:linear-gradient(90deg,var(--tg-theme-secondary-bg-color, #f0f0f0) 25%,var(--tg-theme-bg-color, #e8e8e8) 50%,var(--tg-theme-secondary-bg-color, #f0f0f0) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:8px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-header{margin-bottom:24px}.skeleton-title{height:32px;width:60%;border-radius:8px}.skeleton-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:16px;background-color:var(--tg-theme-secondary-bg-color, #f0f0f0);border-radius:12px;margin-bottom:24px}.skeleton-stat{text-align:center}.skeleton-stat-label{height:12px;width:60%;margin:0 auto 8px}.skeleton-stat-value{height:20px;width:40%;margin:0 auto}.skeleton-form{display:flex;flex-direction:column;gap:20px;margin-bottom:24px}.skeleton-field{display:flex;flex-direction:column;gap:8px}.skeleton-label{height:14px;width:30%}.skeleton-input{height:48px;width:100%}.skeleton-textarea{height:80px;width:100%}.skeleton-buttons{display:flex;flex-direction:column;gap:10px}.skeleton-button{height:48px;width:100%}.skeleton-button-row{display:flex;gap:10px}.skeleton-button-small{height:48px;flex:1}.toast-container{position:fixed;bottom:calc(clamp(70px,18vw,90px) + env(safe-area-inset-bottom,0px) + 10px);left:50%;transform:translate(-50%);z-index:1000;display:flex;flex-direction:column;gap:8px;width:calc(100% - 40px);max-width:400px;pointer-events:none}.toast{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:12px;background-color:var(--tg-theme-bg-color, #fff);box-shadow:0 4px 20px #00000026;animation:slideUp .3s ease-out;cursor:pointer;pointer-events:auto;transition:transform .2s ease,opacity .2s ease}.toast:active{transform:scale(.98)}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.toast-icon{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0}.toast-success .toast-icon{background-color:#4caf5026;color:var(--success-color, #4caf50)}.toast-error .toast-icon{background-color:#f4433626;color:var(--error-color, #f44336)}.toast-warning .toast-icon{background-color:#ff980026;color:var(--warning-color, #ff9800)}.toast-info .toast-icon{background-color:#2196f326;color:var(--info-color, #2196f3)}.toast-message{font-size:14px;font-weight:500;color:var(--tg-theme-text-color, #000);flex-grow:1}.toast-success{border-left:3px solid var(--success-color, #4caf50)}.toast-error{border-left:3px solid var(--error-color, #f44336)}.toast-warning{border-left:3px solid var(--warning-color, #ff9800)}.toast-info{border-left:3px solid var(--info-color, #2196f3)}[dir=rtl] .toast-success,[dir=rtl] .toast-error,[dir=rtl] .toast-warning,[dir=rtl] .toast-info{border-left:none;border-right:3px solid currentColor}
