:root{--bg-color: var(--tg-theme-bg-color, #ffffff);--text-color: var(--tg-theme-text-color, #000000);--hint-color: var(--tg-theme-hint-color, #999999);--link-color: var(--tg-theme-link-color, #2481cc);--button-color: var(--tg-theme-button-color, #2481cc);--button-text-color: var(--tg-theme-button-text-color, #ffffff);--secondary-bg-color: var(--tg-theme-secondary-bg-color, #f0f0f0)}body{margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background-color:var(--bg-color);color:var(--text-color);-webkit-font-smoothing:antialiased}#app{max-width:600px;margin:0 auto;padding:16px}.catalog-header{margin-bottom:20px;text-align:center}.catalog-header h2{margin-top:0;font-size:28px;font-weight:700;background:linear-gradient(135deg,var(--button-color),var(--link-color));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.product-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.product-item{display:flex;flex-direction:column;background-color:var(--secondary-bg-color);padding:16px;border-radius:16px;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 8px #0000000d}.product-item:hover{transform:translateY(-4px);box-shadow:0 8px 16px #0000001a}.product-item:active{transform:translateY(-2px)}.product-thumb{width:100%;height:140px;object-fit:contain;border-radius:12px;margin-bottom:12px;background:#fff;padding:20px;box-sizing:border-box}.product-info{flex:1;display:flex;flex-direction:column;gap:8px}.product-info h3{margin:0;font-size:18px;font-weight:600;color:var(--text-color)}.price{margin:0;color:var(--button-color);font-weight:700;font-size:20px}.product-details{display:flex;flex-direction:column;gap:20px;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.detail-thumb{width:100%;max-height:320px;object-fit:contain;border-radius:16px;background:#fff;padding:24px;box-shadow:0 4px 12px #00000014}.product-details h2{font-size:26px;font-weight:700;margin:0;text-align:center}.detail-description{color:var(--text-color);line-height:1.7;font-size:15px;text-align:left;background:var(--secondary-bg-color);padding:16px;border-radius:12px;border-left:4px solid var(--button-color)}.detail-price{font-size:24px;font-weight:700;color:var(--button-color);text-align:center;padding:16px;background:var(--secondary-bg-color);border-radius:12px}.view-purchases-btn{margin-top:20px;width:100%;padding:14px;background-color:var(--button-color);color:var(--button-text-color);border:none;border-radius:12px;font-weight:600;font-size:16px;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px #0000001a}.view-purchases-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.view-purchases-btn:active{transform:translateY(0)}.download-btn{margin-top:8px;padding:10px 16px;background-color:var(--button-color);color:var(--button-text-color);border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.download-btn:hover{opacity:.9;transform:scale(1.02)}.web-back-btn{position:fixed;top:20px;left:20px;padding:12px 24px;background:var(--tg-theme-button-color, #2481cc);color:var(--tg-theme-button-text-color, white);border:none;border-radius:12px;cursor:pointer;font-size:16px;font-weight:600;z-index:1000;box-shadow:0 4px 12px #00000026;transition:all .2s ease}.web-back-btn:hover{background:var(--tg-theme-button-color, #1a6bb3);transform:translateY(-2px);box-shadow:0 6px 16px #0003}.web-back-btn:active{transform:translateY(0);box-shadow:0 2px 8px #00000026}.web-action-btn{position:fixed;bottom:20px;left:50%;transform:translate(-50%);padding:16px 40px;background:var(--tg-theme-button-color, #2481cc);color:var(--tg-theme-button-text-color, white);border:none;border-radius:12px;cursor:pointer;font-size:18px;font-weight:700;z-index:1000;box-shadow:0 4px 12px #00000026;transition:all .2s ease;min-width:250px;text-align:center}.web-action-btn:hover{background:var(--tg-theme-button-color, #1a6bb3);transform:translate(-50%) translateY(-2px);box-shadow:0 6px 16px #0003}.web-action-btn:active{transform:translate(-50%) translateY(0);box-shadow:0 2px 8px #00000026}.web-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:2000;animation:fadeIn .2s ease}.web-modal-content{background:#fff;padding:24px;border-radius:16px;max-width:400px;width:90%;box-shadow:0 8px 32px #0000004d;animation:slideUp .3s ease}.web-modal-content p{margin:0 0 24px;font-size:18px;color:#333;text-align:center}.web-modal-buttons{display:flex;gap:12px}.web-modal-btn{flex:1;padding:12px 24px;border:none;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease}.web-modal-btn.cancel{background:#e5e7eb;color:#374151}.web-modal-btn.cancel:hover{background:#d1d5db}.web-modal-btn.confirm{background:var(--tg-theme-button-color, #2481cc);color:#fff}.web-modal-btn.confirm:hover{background:var(--tg-theme-button-color, #1a6bb3)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
