body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f5f5f5;background:var(--tg-theme-bg-color,#f5f5f5);color:#000;color:var(--tg-theme-text-color,#000);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0;padding-bottom:env(safe-area-inset-bottom)}.App{display:flex;flex-direction:column;min-height:100vh}.app-header{background:#fff;background:var(--tg-theme-bg-color,#fff);border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--tg-theme-hint-color,#e0e0e0);box-shadow:0 2px 4px #0000001a;padding:16px;position:-webkit-sticky;position:sticky;top:0;z-index:100}.app-header h1{color:#000;color:var(--tg-theme-text-color,#000);font-size:24px;font-weight:600;margin:0 0 12px}.app-main{flex:1 1;max-width:100%;overflow-x:hidden;padding:16px}.loading{align-items:center;display:flex;flex-direction:column;gap:16px;height:100vh;justify-content:center}.spinner{animation:spin 1s linear infinite;border:3px solid #ddd;border-top:3px solid #007bff;border:3px solid var(--tg-theme-hint-color,#ddd);border-radius:50%;border-top-color:var(--tg-theme-button-color,#007bff);height:40px;width:40px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.user-profile{align-items:center;background:#f8f9fa;background:var(--tg-theme-secondary-bg-color,#f8f9fa);border-radius:12px;display:flex;justify-content:space-between;margin-top:8px;padding:12px 16px}.user-info h3{color:#000;color:var(--tg-theme-text-color,#000);font-size:16px;margin:0}.user-balance{color:#007bff;color:var(--tg-theme-button-color,#007bff);font-size:18px;font-weight:600;margin:4px 0 0}.topup-btn{background:#007bff;background:var(--tg-theme-button-color,#007bff);border:none;border-radius:8px;color:#fff;color:var(--tg-theme-button-text-color,#fff);cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:all .2s}.topup-btn:active{opacity:.8;transform:scale(.95)}.product-catalog{margin-bottom:20px}.catalog-header{margin-bottom:16px}.catalog-header h2{color:#000;color:var(--tg-theme-text-color,#000);font-size:20px;margin:0}.products-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.product-card{background:#fff;background:var(--tg-theme-bg-color,#fff);border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:12px;transition:transform .2s}.product-card:active{transform:scale(.98)}.product-image{background:#f0f0f0;border-radius:8px;height:120px;object-fit:cover;width:100%}.product-info{margin-top:8px}.product-name{color:#000;color:var(--tg-theme-text-color,#000);font-size:14px;font-weight:600;line-height:1.3;margin:0}.product-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#666;color:var(--tg-theme-hint-color,#666);display:-webkit-box;font-size:12px;line-height:1.4;margin:4px 0;overflow:hidden}.product-price{color:#007bff;color:var(--tg-theme-button-color,#007bff);font-size:16px;font-weight:600;margin:6px 0}.product-stock{color:#666;color:var(--tg-theme-hint-color,#666);font-size:11px;margin-bottom:8px}.add-to-cart-btn{background:#007bff;background:var(--tg-theme-button-color,#007bff);border:none;border-radius:8px;color:#fff;color:var(--tg-theme-button-text-color,#fff);cursor:pointer;font-size:13px;font-weight:500;padding:8px;transition:all .2s;width:100%}.add-to-cart-btn:disabled{background:#ccc;background:var(--tg-theme-hint-color,#ccc);cursor:not-allowed}.add-to-cart-btn:active:not(:disabled){transform:scale(.95)}.cart{background:#fff;background:var(--tg-theme-bg-color,#fff);border-radius:16px;box-shadow:0 4px 12px #00000026;margin-top:20px;padding:16px}.cart-header{align-items:center;border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--tg-theme-hint-color,#e0e0e0);display:flex;justify-content:space-between;margin-bottom:16px;padding-bottom:12px}.cart-header h3{color:#000;color:var(--tg-theme-text-color,#000);font-size:18px;margin:0}.cart-items{margin-bottom:16px;max-height:200px;overflow-y:auto}.cart-item{align-items:center;border-bottom:1px solid #f0f0f0;border-bottom:1px solid var(--tg-theme-section-separator-color,#f0f0f0);display:flex;gap:12px;padding:12px 0}.cart-item:last-child{border-bottom:none}.cart-item-image{border-radius:6px;flex-shrink:0;height:50px;object-fit:cover;width:50px}.cart-item-info{flex:1 1;min-width:0}.cart-item-name{color:#000;color:var(--tg-theme-text-color,#000);font-size:14px;font-weight:500;margin:0 0 4px}.cart-item-price{color:#007bff;color:var(--tg-theme-button-color,#007bff);font-size:13px;margin:0}.cart-item-controls{align-items:center;display:flex;gap:8px}.quantity-btn{align-items:center;background:#fff;background:var(--tg-theme-bg-color,#fff);border:1px solid #ddd;border:1px solid var(--tg-theme-hint-color,#ddd);border-radius:15px;color:#000;color:var(--tg-theme-text-color,#000);cursor:pointer;display:flex;font-size:16px;height:30px;justify-content:center;transition:all .2s;width:30px}.quantity-btn:active{transform:scale(.9)}.quantity-display{color:#000;color:var(--tg-theme-text-color,#000);font-size:14px;font-weight:500;min-width:20px;text-align:center}.remove-btn{background:none;border:none;border-radius:4px;color:#ff4757;cursor:pointer;padding:4px;transition:all .2s}.remove-btn:active{transform:scale(.9)}.cart-total{align-items:center;border-top:2px solid #f0f0f0;border-top:2px solid var(--tg-theme-section-separator-color,#f0f0f0);display:flex;justify-content:space-between;margin-bottom:16px;padding:16px 0}.cart-total h4{color:#000;color:var(--tg-theme-text-color,#000);font-size:18px;margin:0}.total-amount{color:#007bff;color:var(--tg-theme-button-color,#007bff);font-size:20px;font-weight:600}.purchase-btn{background:#007bff;background:var(--tg-theme-button-color,#007bff);border:none;border-radius:12px;color:#fff;color:var(--tg-theme-button-text-color,#fff);cursor:pointer;font-size:16px;font-weight:600;padding:14px;transition:all .2s;width:100%}.purchase-btn:disabled{background:#ccc;background:var(--tg-theme-hint-color,#ccc);cursor:not-allowed}.purchase-btn:active:not(:disabled){transform:scale(.98)}.insufficient-balance{background:#ff4757}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:16px;position:fixed;right:0;top:0;z-index:1000}.modal{background:#fff;background:var(--tg-theme-bg-color,#fff);border-radius:16px;max-height:80vh;max-width:400px;overflow-y:auto;padding:24px;width:100%}.modal-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.modal-title{color:#000;color:var(--tg-theme-text-color,#000);font-size:20px;margin:0}.close-btn{align-items:center;background:none;border:none;border-radius:15px;color:#666;color:var(--tg-theme-hint-color,#666);cursor:pointer;display:flex;font-size:24px;height:30px;justify-content:center;padding:0;transition:all .2s;width:30px}.close-btn:active{background:#f0f0f0;background:var(--tg-theme-section-separator-color,#f0f0f0);transform:scale(.9)}.current-balance{background:#f8f9fa;background:var(--tg-theme-secondary-bg-color,#f8f9fa);border-radius:12px;margin-bottom:20px;padding:16px;text-align:center}.topup-form{gap:16px}.form-group,.topup-form{display:flex;flex-direction:column}.form-group{gap:8px}.form-label{font-size:14px;font-weight:500}.amount-input,.form-label{color:#000;color:var(--tg-theme-text-color,#000)}.amount-input{background:#fff;background:var(--tg-theme-bg-color,#fff);border:1px solid #ddd;border:1px solid var(--tg-theme-hint-color,#ddd);border-radius:8px;font-size:16px;padding:12px}.payment-methods{display:flex;flex-direction:column;gap:8px}.payment-method{align-items:center;display:flex;gap:8px}.payment-method input[type=radio]{margin:0}.topup-submit-btn{background:#007bff;background:var(--tg-theme-button-color,#007bff);border:none;border-radius:12px;color:#fff;color:var(--tg-theme-button-text-color,#fff);cursor:pointer;font-size:16px;font-weight:600;margin-top:8px;padding:14px;transition:all .2s}.topup-submit-btn:disabled{background:#ccc;background:var(--tg-theme-hint-color,#ccc);cursor:not-allowed}.topup-submit-btn:active:not(:disabled){transform:scale(.98)}@media (max-width:480px){.app-main{padding:12px}.products-grid{gap:8px;grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.product-card{padding:8px}.product-image{height:100px}}
/*# sourceMappingURL=main.8598c857.css.map*/