*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Inter,sans-serif;background:linear-gradient(135deg,var(--tg-theme-bg-color, #f8fafc) 0%,var(--tg-theme-secondary-bg-color, #e2e8f0) 100%);color:var(--tg-theme-text-color, #1e293b);margin:0;padding:0;overflow-x:hidden;line-height:1.6;min-height:100vh}.container{max-width:100%;margin:0 auto;padding:16px 16px 80px;animation:fadeIn .6s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.card{background:var(--tg-theme-secondary-bg-color, white);border-radius:20px;padding:20px;margin-bottom:16px;box-shadow:0 8px 32px #0000001f;border:1px solid rgba(255,255,255,.2);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:all .3s cubic-bezier(.4,0,.2,1)}.card:hover{transform:translateY(-4px);box-shadow:0 12px 48px #00000026}.btn{background:linear-gradient(135deg,var(--tg-theme-button-color, #3b82f6) 0%,var(--tg-theme-button-color, #1d4ed8) 100%);color:var(--tg-theme-button-text-color, white);border:none;padding:16px 24px;border-radius:16px;cursor:pointer;font-size:16px;font-weight:600;width:100%;margin:12px 0;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 20px #3b82f64d;position:relative;overflow:hidden}.btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.btn:hover:before{left:100%}.btn:hover{transform:translateY(-2px);box-shadow:0 8px 32px #3b82f666}.btn:active{transform:translateY(-1px);box-shadow:0 4px 16px #3b82f64d}.btn-success{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 4px 20px #10b9814d}.btn-success:hover{box-shadow:0 8px 32px #10b98166}.btn-danger{background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 4px 20px #ef44444d}.btn-danger:hover{box-shadow:0 8px 32px #ef444466}.btn-outline{background:transparent;color:var(--tg-theme-button-color, #3b82f6);border:2px solid var(--tg-theme-button-color, #3b82f6);box-shadow:none}.btn-outline:hover{background:var(--tg-theme-button-color, #3b82f6);color:#fff;box-shadow:0 4px 20px #3b82f64d}.question-card{background:var(--tg-theme-secondary-bg-color, white);border-radius:24px;padding:24px;margin:20px 0;box-shadow:0 8px 32px #0000001f;border:1px solid rgba(255,255,255,.2);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);position:relative;overflow:hidden}.question-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#3b82f6,#8b5cf6,#ec4899)}.option-btn{background:var(--tg-theme-secondary-bg-color, #f8fafc);color:var(--tg-theme-text-color, #334155);border:2px solid var(--tg-theme-hint-color, #e2e8f0);border-radius:16px;padding:18px 20px;margin:10px 0;text-align:left;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);width:100%;font-weight:500;position:relative;overflow:hidden}.option-btn:before{content:"";position:absolute;top:50%;left:12px;width:6px;height:6px;border-radius:50%;background:transparent;transition:all .3s;transform:translateY(-50%)}.option-btn:hover{border-color:var(--tg-theme-button-color, #3b82f6);background:linear-gradient(135deg,var(--tg-theme-button-color, #3b82f6) 0%,var(--tg-theme-button-color, #1d4ed8) 100%);color:var(--tg-theme-button-text-color, white);transform:translateY(-2px);box-shadow:0 8px 24px #3b82f64d}.option-btn:hover:before{background:#fff}.option-btn.selected{border-color:var(--tg-theme-button-color, #3b82f6);background:linear-gradient(135deg,var(--tg-theme-button-color, #3b82f6) 0%,var(--tg-theme-button-color, #1d4ed8) 100%);color:var(--tg-theme-button-text-color, white);transform:translateY(-1px);box-shadow:0 6px 20px #3b82f666}.option-btn.selected:before{background:#fff}.option-btn.correct-answer{animation:correctPulse .6s ease-out}.option-btn.wrong-answer{animation:wrongShake .6s ease-out}@keyframes correctPulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}@keyframes wrongShake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.option-btn:disabled{cursor:not-allowed}.progress-bar{width:100%;height:12px;background:var(--tg-theme-hint-color, #e2e8f0);border-radius:6px;margin:20px 0;overflow:hidden;position:relative;box-shadow:inset 0 2px 4px #0000001a}.progress-fill{height:100%;background:linear-gradient(90deg,#3b82f6,#8b5cf6,#ec4899);transition:width .5s cubic-bezier(.4,0,.2,1);position:relative;border-radius:6px}.progress-fill:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.3) 50%,transparent 100%);animation:shimmer 2s infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.header{padding:24px 20px;text-align:center;background:linear-gradient(135deg,var(--tg-theme-secondary-bg-color, white) 0%,var(--tg-theme-bg-color, #f8fafc) 100%);margin-bottom:20px;border-radius:0 0 24px 24px;border:1px solid rgba(255,255,255,.2);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 8px 32px #0000001a;position:sticky;top:0;z-index:10}.loading{display:flex;justify-content:center;align-items:center;height:200px;flex-direction:column}.loading-spinner{width:48px;height:48px;border:4px solid var(--tg-theme-hint-color, #e2e8f0);border-top:4px solid transparent;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:20px;position:relative}.loading-spinner:before{content:"";position:absolute;top:-4px;left:-4px;right:-4px;bottom:-4px;border:4px solid transparent;border-top:4px solid var(--tg-theme-button-color, #3b82f6);border-radius:50%;animation:spin 1.5s linear infinite reverse}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.result-card{text-align:center;padding:24px}.score-circle{width:120px;height:120px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:20px auto;font-size:24px;font-weight:700;color:#fff}.category-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;margin:20px 0}.category-card{background:var(--tg-theme-secondary-bg-color, white);border-radius:20px;padding:24px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);border:2px solid transparent;box-shadow:0 8px 32px #00000014;position:relative;overflow:hidden}.category-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#3b82f6,#8b5cf6,#ec4899);transform:scaleX(0);transition:transform .3s ease}.category-card:hover:before{transform:scaleX(1)}.category-card:hover{border-color:var(--tg-theme-button-color, #3b82f6);transform:translateY(-6px);box-shadow:0 16px 48px #3b82f633}.test-item{background:var(--tg-theme-secondary-bg-color, white);border-radius:18px;padding:20px;margin:16px 0;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);border:2px solid transparent;box-shadow:0 4px 20px #00000014;position:relative;overflow:hidden}.test-item:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:linear-gradient(180deg,#3b82f6,#8b5cf6);transform:scaleY(0);transition:transform .3s ease}.test-item:hover:before{transform:scaleY(1)}.test-item:hover{border-color:var(--tg-theme-button-color, #3b82f6);transform:translateY(-4px);box-shadow:0 12px 40px #3b82f626}.text-center{text-align:center}.mb-2{margin-bottom:8px}.mb-3{margin-bottom:12px}.mt-2{margin-top:8px}.text-muted{color:var(--tg-theme-hint-color, #666);font-size:14px}.navigation{position:fixed;bottom:0;left:0;right:0;background:var(--tg-theme-secondary-bg-color, white);border-top:1px solid var(--tg-theme-hint-color, #e2e8f0);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:100}.nav-container{display:flex;justify-content:space-around;align-items:center;padding:12px 16px;max-width:500px;margin:0 auto}.nav-btn{background:transparent;border:none;display:flex;flex-direction:column;align-items:center;gap:4px;cursor:pointer;padding:8px;border-radius:12px;transition:all .3s;color:var(--tg-theme-text-color, #666)}.nav-btn:hover{background:var(--tg-theme-button-color, #3b82f6);color:#fff;transform:translateY(-2px)}.nav-icon{fontSize:20px;marginBottom:2px}.nav-btn span{font-size:12px;font-weight:500}.user-info{display:flex;flex-direction:column;align-items:center;gap:4px}.user-avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#3b82f6,#8b5cf6);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:14px}.user-name{font-size:10px;color:var(--tg-theme-text-color, #666);max-width:60px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.achievement{display:flex;align-items:center;gap:8px;background:linear-gradient(135deg,#f8fafc,#e2e8f0);padding:8px 12px;border-radius:12px;font-size:12px;font-weight:500;color:#475569;border:1px solid #e2e8f0}.achievement span:first-child{font-size:16px}.language-selector{background:var(--tg-theme-secondary-bg-color, white);border-radius:16px;padding:20px;margin:16px 0;box-shadow:0 4px 20px #00000014}.language-title{font-size:16px;font-weight:600;margin-bottom:16px;text-align:center;color:var(--tg-theme-text-color, #333)}.language-options{display:flex;flex-direction:column;gap:8px}.language-btn{display:flex;align-items:center;gap:12px;padding:12px 16px;border:2px solid var(--tg-theme-hint-color, #e2e8f0);border-radius:12px;background:transparent;cursor:pointer;transition:all .3s;color:var(--tg-theme-text-color, #333);font-size:14px}.language-btn:hover,.language-btn.active{border-color:var(--tg-theme-button-color, #3b82f6);background:var(--tg-theme-button-color, #3b82f6);color:#fff}.language-flag{font-size:20px}.language-name{flex:1;font-weight:500}.language-check{font-size:16px;font-weight:700}
