:root{--gradient-primary: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--gradient-secondary: linear-gradient(135deg, #f093fb 0%, #f5576c 100%);--gradient-success: linear-gradient(135deg, #11998e 0%, #38ef7d 100%);--gradient-gold: linear-gradient(135deg, #f5af19 0%, #f12711 100%);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .08);--shadow-md: 0 4px 16px rgba(0, 0, 0, .12);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .16);--shadow-glow: 0 4px 20px rgba(102, 126, 234, .4);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px;--transition-fast: .15s ease;--transition-normal: .25s ease;--transition-slow: .35s cubic-bezier(.4, 0, .2, 1)}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}@keyframes bounce{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.header{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;background:var(--tg-theme-bg-color, #ffffff);position:sticky;top:0;z-index:100;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:rgba(var(--tg-theme-bg-color-rgb, 255, 255, 255),.85);border-bottom:.5px solid rgba(var(--tg-theme-hint-color-rgb, 153, 153, 153),.2)}.header-logo{font-size:20px;font-weight:700;color:var(--tg-theme-text-color, #000000);text-decoration:none;letter-spacing:-.5px;display:flex;align-items:center;gap:8px}.header-logo:before{content:"";width:28px;height:28px;background:var(--gradient-primary);border-radius:8px;flex-shrink:0}.header-cart{position:relative;color:var(--tg-theme-text-color, #000000);padding:10px;border-radius:var(--radius-md);transition:background var(--transition-fast);display:flex;align-items:center;justify-content:center}.header-cart:active{background:var(--tg-theme-secondary-bg-color, #f4f4f5)}.header-cart svg{transition:transform var(--transition-fast)}.header-cart:active svg{transform:scale(.9)}.cart-badge{position:absolute;top:2px;right:2px;background:var(--gradient-secondary);color:#fff;font-size:11px;font-weight:700;min-width:18px;height:18px;border-radius:9px;display:flex;align-items:center;justify-content:center;padding:0 5px;box-shadow:0 2px 8px #f5576c66;animation:scaleIn .2s ease-out}.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;gap:20px;min-height:200px;animation:fadeIn .3s ease-out}.loading-spinner{width:40px;height:40px;border:3px solid var(--tg-theme-secondary-bg-color, #f4f4f5);border-top-color:transparent;border-radius:50%;animation:spin .8s linear infinite;position:relative}.loading-spinner:before{content:"";position:absolute;inset:-3px;border:3px solid transparent;border-top-color:var(--tg-theme-button-color, #3390ec);border-radius:50%;animation:spin 1.2s linear infinite reverse}@keyframes spin{to{transform:rotate(360deg)}}.loading-text{font-size:15px;color:var(--tg-theme-hint-color, #999999);margin:0;font-weight:500;animation:pulse 1.5s ease-in-out infinite}.skeleton{background:linear-gradient(90deg,var(--tg-theme-secondary-bg-color, #f4f4f5) 25%,var(--tg-theme-bg-color, #e8e8e8) 50%,var(--tg-theme-secondary-bg-color, #f4f4f5) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius-md)}.category-card{display:flex;align-items:center;gap:14px;padding:14px;background:var(--tg-theme-secondary-bg-color, #f4f4f5);border-radius:var(--radius-lg);text-decoration:none;color:inherit;transition:transform var(--transition-fast),box-shadow var(--transition-normal);animation:slideUp .3s ease-out backwards;position:relative;overflow:hidden}.category-card:before{content:"";position:absolute;inset:0;background:var(--gradient-primary);opacity:0;transition:opacity var(--transition-normal)}.category-card:active{transform:scale(.98)}.category-card:active:before{opacity:.05}.category-card:nth-child(1){animation-delay:.05s}.category-card:nth-child(2){animation-delay:.1s}.category-card:nth-child(3){animation-delay:.15s}.category-card:nth-child(4){animation-delay:.2s}.category-card:nth-child(5){animation-delay:.25s}.category-card:nth-child(6){animation-delay:.3s}.category-image{width:60px;height:60px;border-radius:var(--radius-md);overflow:hidden;flex-shrink:0;background:var(--tg-theme-bg-color, #ffffff);box-shadow:var(--shadow-sm);position:relative;z-index:1}.category-image img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-normal)}.category-card:active .category-image img{transform:scale(1.05)}.category-no-image{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--tg-theme-hint-color, #999999);background:linear-gradient(135deg,var(--tg-theme-secondary-bg-color, #f4f4f5) 0%,var(--tg-theme-bg-color, #e8e8e8) 100%)}.category-content{flex:1;min-width:0;position:relative;z-index:1}.category-name{font-size:16px;font-weight:600;color:var(--tg-theme-text-color, #000000);letter-spacing:-.2px}.category-arrow{color:var(--tg-theme-hint-color, #999999);flex-shrink:0;transition:transform var(--transition-fast),color var(--transition-fast);position:relative;z-index:1}.category-card:active .category-arrow{transform:translate(3px);color:var(--tg-theme-button-color, #3390ec)}.catalog{padding:20px 16px;animation:fadeIn .4s ease-out}.catalog-title{font-size:28px;font-weight:800;color:var(--tg-theme-text-color, #000000);margin:0 0 20px;letter-spacing:-.5px;display:flex;align-items:center;gap:12px}.catalog-title:before{content:"";width:6px;height:28px;background:var(--gradient-primary);border-radius:3px}.categories-list{display:flex;flex-direction:column;gap:10px}.product-card{background:var(--tg-theme-secondary-bg-color, #f4f4f5);border-radius:var(--radius-lg);overflow:hidden;text-decoration:none;color:inherit;display:flex;flex-direction:column;transition:transform var(--transition-fast),box-shadow var(--transition-normal);animation:scaleIn .3s ease-out backwards;position:relative}.product-card:active{transform:scale(.97)}.products-grid .product-card:nth-child(1){animation-delay:.05s}.products-grid .product-card:nth-child(2){animation-delay:.1s}.products-grid .product-card:nth-child(3){animation-delay:.15s}.products-grid .product-card:nth-child(4){animation-delay:.2s}.products-grid .product-card:nth-child(5){animation-delay:.25s}.products-grid .product-card:nth-child(6){animation-delay:.3s}.product-image{position:relative;aspect-ratio:1;background:var(--tg-theme-bg-color, #ffffff);overflow:hidden}.product-image img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-slow)}.product-card:active .product-image img{transform:scale(1.05)}.product-no-image{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--tg-theme-hint-color, #999999);background:linear-gradient(135deg,var(--tg-theme-secondary-bg-color, #f4f4f5) 0%,var(--tg-theme-bg-color, #e8e8e8) 100%)}.product-out-of-stock{position:absolute;inset:0;background:#000000a6;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);color:#fff;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;letter-spacing:.3px;text-transform:uppercase}.product-info{padding:12px;display:flex;flex-direction:column;gap:10px;flex:1}.product-name{font-size:14px;font-weight:600;color:var(--tg-theme-text-color, #000000);margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.35;letter-spacing:-.2px}.product-footer{display:flex;justify-content:space-between;align-items:center;margin-top:auto}.product-price{font-size:16px;font-weight:700;color:var(--tg-theme-text-color, #000000);letter-spacing:-.3px}.product-add-btn{width:38px;height:38px;border-radius:50%;border:none;background:var(--gradient-primary);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform var(--transition-fast),box-shadow var(--transition-fast);box-shadow:var(--shadow-glow)}.product-add-btn:active{transform:scale(.9)}.product-add-btn.in-cart{background:var(--gradient-success);box-shadow:0 4px 20px #11998e66;animation:bounce .3s ease-out}.product-add-btn.disabled{background:var(--tg-theme-hint-color, #999999);box-shadow:none;opacity:.5;cursor:not-allowed}.product-add-btn.disabled:active{transform:none}.in-cart-badge{font-size:14px;font-weight:700}.category-page{padding:20px 16px;animation:fadeIn .4s ease-out}.category-title{font-size:26px;font-weight:800;color:var(--tg-theme-text-color, #000000);margin:0 0 8px;letter-spacing:-.5px;display:flex;align-items:center;gap:12px}.category-title:before{content:"";width:5px;height:26px;background:var(--gradient-primary);border-radius:3px}.category-description{font-size:15px;color:var(--tg-theme-hint-color, #999999);margin:0 0 24px;line-height:1.5;padding-left:17px}.subcategories-section,.products-section{margin-bottom:28px}.section-title{font-size:18px;font-weight:700;color:var(--tg-theme-text-color, #000000);margin:0 0 14px;letter-spacing:-.3px;display:flex;align-items:center;gap:8px}.section-title:before{content:"";width:4px;height:18px;background:var(--gradient-secondary);border-radius:2px}.subcategories-list{display:flex;flex-direction:column;gap:10px}.products-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.empty-state p{margin:0;font-size:16px;font-weight:500;line-height:1.5}.product-page{padding-bottom:120px;animation:fadeIn .4s ease-out}.product-gallery{background:var(--tg-theme-secondary-bg-color, #f4f4f5);position:relative}.product-main-image{width:100%;aspect-ratio:1;object-fit:contain;background:var(--tg-theme-bg-color, #ffffff);animation:scaleIn .3s ease-out}.product-thumbnails{display:flex;gap:10px;padding:14px 16px;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.product-thumbnails::-webkit-scrollbar{display:none}.thumbnail{width:64px;height:64px;border-radius:var(--radius-md);overflow:hidden;border:2.5px solid transparent;padding:0;background:var(--tg-theme-bg-color, #ffffff);cursor:pointer;flex-shrink:0;transition:border-color var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast)}.thumbnail:active{transform:scale(.95)}.thumbnail.active{border-color:var(--tg-theme-button-color, #3390ec);box-shadow:0 2px 12px #3390ec4d}.thumbnail img{width:100%;height:100%;object-fit:cover}.product-no-image{width:100%;aspect-ratio:1;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--tg-theme-secondary-bg-color, #f4f4f5) 0%,var(--tg-theme-bg-color, #e8e8e8) 100%);color:var(--tg-theme-hint-color, #999999)}.product-details{padding:20px 16px}.product-name{font-size:24px;font-weight:800;color:var(--tg-theme-text-color, #000000);margin:0 0 10px;line-height:1.25;letter-spacing:-.5px}.product-price{font-size:28px;font-weight:800;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:14px;display:inline-block}.product-stock{margin-bottom:20px}.in-stock{font-size:14px;color:#38ef7d;font-weight:600;display:flex;align-items:center;gap:6px}.in-stock:before{content:"";width:8px;height:8px;background:#38ef7d;border-radius:50%}.out-of-stock{font-size:14px;color:var(--tg-theme-destructive-text-color, #ff3b30);font-weight:600;display:flex;align-items:center;gap:6px}.out-of-stock:before{content:"";width:8px;height:8px;background:var(--tg-theme-destructive-text-color, #ff3b30);border-radius:50%}.product-quantity-control{display:inline-flex;align-items:center;gap:16px;background:var(--tg-theme-secondary-bg-color, #f4f4f5);border-radius:var(--radius-lg);padding:10px 12px;margin-bottom:24px}.qty-btn{width:44px;height:44px;border:none;border-radius:var(--radius-md);background:var(--tg-theme-bg-color, #ffffff);color:var(--tg-theme-button-color, #3390ec);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast);box-shadow:var(--shadow-sm)}.qty-btn:disabled{opacity:.3;cursor:not-allowed;box-shadow:none}.qty-btn:active:not(:disabled){background:var(--gradient-primary);color:#fff;transform:scale(.95)}.qty-value{font-size:20px;font-weight:700;min-width:40px;text-align:center;color:var(--tg-theme-text-color, #000000)}.product-description{margin-top:24px;padding-top:24px;border-top:1px solid rgba(var(--tg-theme-hint-color-rgb, 153, 153, 153),.2)}.product-description h2{font-size:18px;font-weight:700;color:var(--tg-theme-text-color, #000000);margin:0 0 14px;letter-spacing:-.3px}.product-description p{font-size:15px;color:var(--tg-theme-text-color, #000000);line-height:1.6;margin:0;white-space:pre-wrap;opacity:.85}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 24px;text-align:center;color:var(--tg-theme-hint-color, #999999)}.cart-item{display:flex;gap:14px;padding:14px;background:var(--tg-theme-secondary-bg-color, #f4f4f5);border-radius:var(--radius-lg);animation:slideUp .3s ease-out backwards}.cart-item:nth-child(1){animation-delay:.05s}.cart-item:nth-child(2){animation-delay:.1s}.cart-item:nth-child(3){animation-delay:.15s}.cart-item:nth-child(4){animation-delay:.2s}.cart-item:nth-child(5){animation-delay:.25s}.cart-item-image{width:88px;height:88px;border-radius:var(--radius-md);overflow:hidden;flex-shrink:0;background:var(--tg-theme-bg-color, #ffffff);box-shadow:var(--shadow-sm)}.cart-item-image img{width:100%;height:100%;object-fit:cover}.cart-item-no-image{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--tg-theme-hint-color, #999999);background:linear-gradient(135deg,var(--tg-theme-secondary-bg-color, #f4f4f5) 0%,var(--tg-theme-bg-color, #e8e8e8) 100%)}.cart-item-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.cart-item-name{font-size:15px;font-weight:600;color:var(--tg-theme-text-color, #000000);margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;letter-spacing:-.2px;line-height:1.3}.cart-item-price{font-size:14px;color:var(--tg-theme-hint-color, #999999);font-weight:500}.cart-item-controls{display:flex;align-items:center;gap:14px;margin-top:auto}.quantity-control{display:flex;align-items:center;gap:10px;background:var(--tg-theme-bg-color, #ffffff);border-radius:var(--radius-md);padding:5px;box-shadow:var(--shadow-sm)}.quantity-btn{width:32px;height:32px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--tg-theme-button-color, #3390ec);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast)}.quantity-btn:disabled{opacity:.3;cursor:not-allowed}.quantity-btn:active:not(:disabled){background:var(--gradient-primary);color:#fff;transform:scale(.9)}.quantity-value{font-size:16px;font-weight:700;min-width:28px;text-align:center;color:var(--tg-theme-text-color, #000000)}.remove-btn{width:36px;height:36px;border:none;border-radius:var(--radius-sm);background:#ff3b301a;color:var(--tg-theme-destructive-text-color, #ff3b30);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast)}.remove-btn:active{background:#ff3b3033;transform:scale(.9)}.cart-item-subtotal{font-size:17px;font-weight:700;color:var(--tg-theme-text-color, #000000);align-self:flex-start;flex-shrink:0;letter-spacing:-.3px}.cart-page{padding:20px 16px 140px;animation:fadeIn .4s ease-out}.cart-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.cart-title{font-size:28px;font-weight:800;color:var(--tg-theme-text-color, #000000);margin:0;letter-spacing:-.5px;display:flex;align-items:center;gap:12px}.cart-title:before{content:"";width:6px;height:28px;background:var(--gradient-primary);border-radius:3px}.clear-btn{font-size:14px;color:var(--tg-theme-destructive-text-color, #ff3b30);background:#ff3b301a;border:none;cursor:pointer;padding:8px 14px;border-radius:var(--radius-md);font-weight:600;transition:all var(--transition-fast)}.clear-btn:active{background:#ff3b3033;transform:scale(.95)}.cart-items{display:flex;flex-direction:column;gap:14px;margin-bottom:24px}.cart-summary{background:var(--tg-theme-secondary-bg-color, #f4f4f5);border-radius:var(--radius-lg);padding:18px;animation:slideUp .4s ease-out .2s backwards}.summary-row{display:flex;justify-content:space-between;font-size:14px;color:var(--tg-theme-hint-color, #999999);margin-bottom:10px}.summary-row.total{font-size:20px;font-weight:800;color:var(--tg-theme-text-color, #000000);margin-bottom:0;padding-top:12px;border-top:1px solid rgba(var(--tg-theme-hint-color-rgb, 153, 153, 153),.2)}.summary-row.total span:last-child{background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.checkout-page{padding:20px 16px 140px;animation:fadeIn .4s ease-out}.checkout-title{font-size:28px;font-weight:800;color:var(--tg-theme-text-color, #000000);margin:0 0 24px;letter-spacing:-.5px;display:flex;align-items:center;gap:12px}.checkout-title:before{content:"";width:6px;height:28px;background:var(--gradient-primary);border-radius:3px}.order-summary{background:var(--tg-theme-secondary-bg-color, #f4f4f5);border-radius:var(--radius-lg);padding:18px;margin-bottom:24px;animation:slideUp .4s ease-out backwards}.order-summary h2{font-size:17px;font-weight:700;color:var(--tg-theme-text-color, #000000);margin:0 0 14px;letter-spacing:-.3px}.order-items{display:flex;flex-direction:column;gap:10px;margin-bottom:14px;padding-bottom:14px;border-bottom:1px solid rgba(var(--tg-theme-hint-color-rgb, 153, 153, 153),.2)}.order-item{display:flex;justify-content:space-between;align-items:flex-start;gap:14px}.item-name{font-size:15px;color:var(--tg-theme-text-color, #000000);flex:1;line-height:1.4}.item-qty{color:var(--tg-theme-hint-color, #999999);font-weight:500}.item-price{font-size:15px;font-weight:600;color:var(--tg-theme-text-color, #000000);flex-shrink:0}.order-total{display:flex;justify-content:space-between;font-size:20px;font-weight:800;color:var(--tg-theme-text-color, #000000)}.order-total span:last-child{background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.note-section{margin-bottom:24px;animation:slideUp .4s ease-out .1s backwards}.note-section label{display:block;font-size:15px;font-weight:600;color:var(--tg-theme-text-color, #000000);margin-bottom:10px}.note-section textarea{width:100%;padding:14px 16px;font-size:15px;border:2px solid transparent;border-radius:var(--radius-lg);background:var(--tg-theme-secondary-bg-color, #f4f4f5);color:var(--tg-theme-text-color, #000000);resize:none;font-family:inherit;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.note-section textarea::placeholder{color:var(--tg-theme-hint-color, #999999)}.note-section textarea:focus{outline:none;border-color:var(--tg-theme-button-color, #3390ec);box-shadow:0 0 0 4px #3390ec26}.checkout-hint{font-size:14px;color:var(--tg-theme-hint-color, #999999);line-height:1.5;text-align:center;margin:0;padding:0 16px;animation:fadeIn .4s ease-out .2s backwards}.orders-page{padding:20px 16px;animation:fadeIn .4s ease-out}.orders-title{font-size:28px;font-weight:800;color:var(--tg-theme-text-color, #000000);margin:0 0 20px;letter-spacing:-.5px;display:flex;align-items:center;gap:12px}.orders-title:before{content:"";width:6px;height:28px;background:var(--gradient-primary);border-radius:3px}.orders-list{display:flex;flex-direction:column;gap:14px}.order-card{background:var(--tg-theme-secondary-bg-color, #f4f4f5);border-radius:var(--radius-lg);padding:18px;animation:slideUp .3s ease-out backwards;transition:transform var(--transition-fast)}.order-card:active{transform:scale(.98)}.order-card:nth-child(1){animation-delay:.05s}.order-card:nth-child(2){animation-delay:.1s}.order-card:nth-child(3){animation-delay:.15s}.order-card:nth-child(4){animation-delay:.2s}.order-card:nth-child(5){animation-delay:.25s}.order-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.order-number{font-size:17px;font-weight:700;color:var(--tg-theme-text-color, #000000);letter-spacing:-.3px}.order-status{font-size:12px;font-weight:700;padding:5px 10px;border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.3px}.order-status.warning{background:linear-gradient(135deg,#ffaf1933,#f1271126);color:#f5af19}.order-status.success{background:linear-gradient(135deg,#11998e33,#38ef7d26);color:#38ef7d}.order-status.info{background:linear-gradient(135deg,#667eea33,#764ba226);color:#667eea}.order-status.error{background:#ff3b3026;color:#ff3b30}.order-info{display:flex;justify-content:space-between;align-items:center}.order-date{font-size:14px;color:var(--tg-theme-hint-color, #999999);font-weight:500}.order-amount{font-size:17px;font-weight:700;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 24px;text-align:center;color:var(--tg-theme-hint-color, #999999);animation:fadeIn .5s ease-out}.empty-state svg{margin-bottom:20px;opacity:.4;color:var(--tg-theme-button-color, #3390ec)}.empty-state p{margin:0 0 24px;font-size:16px;font-weight:500;line-height:1.5}.go-shopping-btn{padding:14px 32px;background:var(--gradient-primary);color:#fff;border:none;border-radius:var(--radius-lg);font-size:16px;font-weight:700;cursor:pointer;box-shadow:var(--shadow-glow);transition:all var(--transition-fast)}.go-shopping-btn:active{transform:scale(.95);box-shadow:var(--shadow-md)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html{scroll-behavior:smooth}body{margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--tg-theme-bg-color, #ffffff);color:var(--tg-theme-text-color, #000000);line-height:1.5;overflow-x:hidden}#root{min-height:100vh;min-height:100dvh}.main-content{padding-bottom:calc(env(safe-area-inset-bottom) + 20px);animation:fadeIn .3s ease-out}.auth-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;min-height:100dvh;padding:24px;text-align:center;animation:scaleIn .4s ease-out}.auth-error:before{content:"";width:80px;height:80px;background:var(--gradient-primary);border-radius:50%;margin-bottom:24px;opacity:.15}.auth-error h2{font-size:22px;font-weight:700;margin:0 0 12px;color:var(--tg-theme-text-color, #000000);letter-spacing:-.3px}.auth-error p{font-size:15px;color:var(--tg-theme-hint-color, #999999);margin:0;max-width:280px;line-height:1.5}a{color:var(--tg-theme-link-color, #3390ec);text-decoration:none;transition:opacity var(--transition-fast)}a:active{opacity:.7}button{font-family:inherit;cursor:pointer;border:none;background:none;padding:0;transition:transform var(--transition-fast),opacity var(--transition-fast)}button:active{transform:scale(.96)}button:disabled{opacity:.5;cursor:not-allowed}button:disabled:active{transform:none}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--tg-theme-hint-color, #cccccc);border-radius:4px}.page-enter{opacity:0;transform:translate(20px)}.page-enter-active{opacity:1;transform:translate(0);transition:all var(--transition-slow)}::selection{background:var(--tg-theme-button-color, #3390ec);color:#fff}
