*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}body{font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,SF Pro Text,Roboto,Helvetica,Arial,sans-serif;font-size:15px;line-height:1.5;background-color:var(--color-background, var(--tg-theme-bg-color, #F0F4F8));color:var(--color-text-primary, var(--tg-theme-text-color, #1C2D41));min-height:100vh;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh;display:flex;flex-direction:column}:root{--tg-theme-bg-color: #ffffff;--tg-theme-text-color: #000000;--tg-theme-hint-color: #999999;--tg-theme-link-color: #3390ec;--tg-theme-button-color: #3390ec;--tg-theme-button-text-color: #ffffff;--tg-theme-secondary-bg-color: #f0f0f0;--tg-theme-header-bg-color: #ffffff;--tg-theme-accent-text-color: #3390ec;--tg-theme-section-bg-color: #ffffff;--tg-theme-section-header-text-color: #999999;--tg-theme-subtitle-text-color: #999999;--tg-theme-destructive-text-color: #ff3b30;--app-max-width: 500px;--app-padding: 16px;--app-border-radius: 20px;--app-border-radius-sm: 12px;--app-shadow: 0 8px 32px rgba(26, 58, 92, .08);--app-transition: .2s ease;--nav-height: 56px;--header-height: 48px;--status-bar-height: 48px;--safe-area-top: env(safe-area-inset-top, 0px);--safe-area-bottom: env(safe-area-inset-bottom, 0px);--glass-bg: rgba(255, 255, 255, .75);--glass-border: rgba(255, 255, 255, .4);--glass-blur: 20px;--frost-overlay: rgba(255, 255, 255, .6);--color-background: #F0F4F8;--color-surface: rgba(255, 255, 255, .75);--color-primary: #1A3A5C;--color-primary-gradient: linear-gradient(135deg, #1A3A5C, #4A6CF7);--color-secondary: #4A9FE5;--color-success: #34C759;--color-warning: #FF9500;--color-danger: #FF3B30;--color-xp: #FFD60A;--color-tucoin: #AF52DE;--color-text-primary: #1C2D41;--color-text-secondary: #6B7B8D;--color-text-tertiary: #A0AEC0;--character-primary: #ff6b6b;--character-secondary: #4ecdc4;--character-accent: #ffe66d;--success-color: var(--color-success);--warning-color: var(--color-warning);--error-color: var(--color-danger);--info-color: var(--color-secondary);--xp-color: var(--color-xp);--tucoin-color: var(--color-tucoin);--streak-color: var(--color-warning)}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.2;color:var(--tg-theme-text-color)}h1{font-size:28px}h2{font-size:24px}h3{font-size:20px}h4{font-size:18px}h5{font-size:16px}h6{font-size:14px}p{color:var(--tg-theme-text-color)}a{color:var(--tg-theme-link-color);text-decoration:none}button{font-family:inherit;font-size:inherit;cursor:pointer;border:none;outline:none;background:none;-webkit-appearance:none}input,textarea,select{font-family:inherit;font-size:16px;border:none;outline:none;background:var(--tg-theme-secondary-bg-color);color:var(--tg-theme-text-color);border-radius:var(--app-border-radius-sm);padding:12px 16px;width:100%}input::placeholder,textarea::placeholder{color:var(--tg-theme-hint-color)}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--tg-theme-hint-color);border-radius:2px}.container{max-width:var(--app-max-width);margin:0 auto;padding:0 var(--app-padding)}.card{background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border);border-radius:var(--app-border-radius);padding:var(--app-padding);box-shadow:var(--app-shadow)}.glass-card-accent{background:var(--color-primary-gradient);border-radius:var(--app-border-radius);padding:var(--app-padding);color:#fff}.frost-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--frost-overlay);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));z-index:200;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:16px;padding:32px;text-align:center}.frost-overlay h2{color:var(--color-primary);font-size:20px}.frost-overlay p{color:var(--color-text-secondary);font-size:15px}.frost-cta-primary{background:var(--color-primary-gradient);color:#fff;border:none;border-radius:16px;height:52px;padding:0 32px;font-size:16px;font-weight:700;cursor:pointer;width:100%;max-width:280px}.frost-cta-secondary{background:#4a9fe51f;color:var(--color-secondary);border:none;border-radius:12px;height:44px;padding:0 24px;font-size:15px;font-weight:600;cursor:pointer;width:100%;max-width:280px}.frost-cta-ghost{background:transparent;color:var(--color-secondary);border:none;border-radius:12px;height:44px;padding:0 24px;font-size:15px;cursor:pointer}@keyframes frost-shake{0%,to{transform:translate(0)}20%{transform:translate(-8px)}40%{transform:translate(8px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}.frost-overlay-shake{animation:frost-shake .3s ease-out}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:4px}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.text-center{text-align:center}.text-hint{color:var(--tg-theme-hint-color)}.text-sm{font-size:14px}.text-xs{font-size:12px}.font-bold{font-weight:600}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.animate-fade-in{animation:fadeIn .3s ease}.animate-slide-up{animation:slideUp .3s ease}.animate-pulse{animation:pulse 2s infinite}.animate-bounce{animation:bounce 1s infinite}.skeleton{background:linear-gradient(90deg,var(--tg-theme-secondary-bg-color) 25%,var(--tg-theme-bg-color) 50%,var(--tg-theme-secondary-bg-color) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--app-border-radius-sm)}.pull-to-refresh{padding-top:50px;margin-top:-50px}.no-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.no-scrollbar::-webkit-scrollbar{display:none}
