.catalog{min-height:100%;padding-bottom:2rem}.catalog__header{position:sticky;top:0;z-index:10;background:var(--tg-theme-bg-color, #1a1a2e);padding:.75rem 1rem;border-bottom:1px solid rgba(255,255,255,.08)}.catalog__title{margin:0 0 .5rem;font-size:1.25rem}.catalog__search{display:flex;gap:.5rem;margin-bottom:.75rem}.catalog__search input{flex:1;padding:.5rem .75rem;border:1px solid rgba(255,255,255,.2);border-radius:8px;background:#ffffff0f;color:inherit;font-size:1rem}.catalog__tabs{display:flex;gap:.25rem;overflow-x:auto;padding-bottom:.25rem;-webkit-overflow-scrolling:touch}.tab{flex:0 0 auto;padding:.4rem .75rem;border:1px solid rgba(255,255,255,.25);border-radius:20px;background:transparent;color:inherit;font-size:.9rem}.tab--active{background:var(--tg-theme-button-color, #3d7eff);color:var(--tg-theme-button-text-color, #fff);border-color:transparent}.catalog__toolbar{display:flex;gap:.5rem;margin-top:.75rem}.sort-select{padding:.4rem .75rem;border-radius:8px;background:#ffffff14;color:inherit;border:1px solid rgba(255,255,255,.15)}.btn{padding:.5rem 1rem;border-radius:8px;border:none;font-size:.9rem}.btn--primary{background:var(--tg-theme-button-color, #3d7eff);color:var(--tg-theme-button-text-color, #fff)}.btn--secondary{background:#ffffff1f;color:inherit}.btn--ghost{background:transparent;color:inherit}.catalog__error{padding:1rem;margin:0 1rem 1rem;color:#ffb3b3;background:#b4323240;border-radius:8px;text-align:center}.catalog__no-tg{margin:1rem;padding:1.25rem;background:#ffffff14;border:1px solid rgba(255,255,255,.2);border-radius:12px;text-align:center}.catalog__no-tg-title{margin:0 0 .5rem;font-size:1.1rem;font-weight:600;color:var(--tg-theme-text-color, #eee)}.catalog__no-tg-text{margin:0;font-size:.95rem;color:var(--tg-theme-hint-color, #aaa)}.catalog__list{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1rem;padding:1rem}.card{display:flex;flex-direction:column;text-decoration:none;color:inherit;border-radius:12px;overflow:hidden;background:#ffffff0d;border:1px solid rgba(255,255,255,.08)}.card__img-wrap{position:relative;aspect-ratio:1;background:#0003}.card__img{width:100%;height:100%;object-fit:cover}.card__img--placeholder{background:#ffffff0d}.card__badge{position:absolute;bottom:4px;left:4px;padding:2px 6px;font-size:.7rem;background:#000000b3;border-radius:4px}.card__body{padding:.5rem .6rem;display:flex;flex-direction:column;gap:2px}.card__brand{font-size:.7rem;opacity:.8}.card__model{font-size:.85rem;font-weight:500;line-height:1.2}.card__size{font-size:.75rem;opacity:.85}.card__price{font-size:.95rem;font-weight:600;margin-top:4px}.skeleton__box{background:linear-gradient(90deg,#ffffff0f 25%,#ffffff1f,#ffffff0f 75%);background-size:200% 100%;animation:skeleton 1.2s ease-in-out infinite}.skeleton__line{height:12px;border-radius:4px;background:#ffffff14;margin-bottom:6px}.skeleton__line.w80{width:80%}.skeleton__line.w60{width:60%}.skeleton__line.w40{width:40%}@keyframes skeleton{to{background-position:200% 0}}.catalog__load-more{grid-column:1 / -1;text-align:center;padding:1rem}.filters-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:100;display:flex;align-items:flex-end;justify-content:center}.filters-sheet{width:100%;max-width:480px;max-height:80vh;background:var(--tg-theme-bg-color, #1a1a2e);border-radius:16px 16px 0 0;display:flex;flex-direction:column}.filters-sheet__header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid rgba(255,255,255,.08)}.filters-sheet__header h2{margin:0;font-size:1.1rem}.filters-sheet__body{padding:1rem 1.25rem;overflow-y:auto}.filter-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid rgba(255,255,255,.06);gap:.75rem}.filter-row input[type=number],.filter-row select{width:120px;padding:.35rem .5rem;border-radius:6px;background:#ffffff0f;border:1px solid rgba(255,255,255,.15);color:inherit}.filters-sheet__footer{display:flex;gap:.75rem;padding:1rem 1.25rem;border-top:1px solid rgba(255,255,255,.08)}.filters-sheet__footer .btn--primary{flex:1}.product-page{min-height:100%;padding-bottom:2rem}.product-page__back{padding:.5rem 1rem}.product-page__error{padding:2rem 1rem;text-align:center;color:#f88}.product-gallery{padding:0 1rem 1rem}.product-gallery__main{aspect-ratio:1;max-width:400px;margin:0 auto;border-radius:12px;overflow:hidden;background:#0003}.product-gallery__main img{width:100%;height:100%;object-fit:contain}.product-gallery__placeholder{width:100%;height:100%;background:#ffffff0d}.product-gallery__thumbs{display:flex;gap:.5rem;margin-top:.5rem;overflow-x:auto;padding:4px 0}.product-gallery__thumb{flex:0 0 56px;height:56px;border-radius:8px;overflow:hidden;border:2px solid transparent;padding:0;background:#0003}.product-gallery__thumb img{width:100%;height:100%;object-fit:cover}.product-gallery__thumb--active{border-color:var(--tg-theme-button-color, #3d7eff)}.product-detail{padding:0 1rem 1rem}.product-detail__brand{font-size:.8rem;opacity:.85}.product-detail__title{margin:.25rem 0 .5rem;font-size:1.25rem;line-height:1.3}.product-detail__size{margin:0 0 .5rem;font-size:.9rem;opacity:.9}.product-detail__price{margin:0 0 .5rem;font-size:1.35rem;font-weight:600}.product-detail__stock{margin:0 0 1rem;font-size:.9rem;opacity:.9}.product-detail__stock--no{color:#f88}.product-detail__attrs{margin:0 0 1rem;padding:.75rem;background:#ffffff0d;border-radius:8px;font-size:.9rem;display:grid;gap:.25rem}.product-detail__attrs dt{margin:0;opacity:.8}.product-detail__attrs dd{margin:0 0 .25rem}.product-detail__actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.product-order{padding-top:1rem;border-top:1px solid rgba(255,255,255,.08)}.product-order h3{margin:0 0 .75rem;font-size:1rem}.product-order__row{display:flex;flex-direction:column;gap:.25rem;margin-bottom:.75rem}.product-order__row input{padding:.5rem .75rem;border-radius:8px;border:1px solid rgba(255,255,255,.2);background:#ffffff0f;color:inherit;font-size:1rem}.product-order__done{color:#8f8;margin-top:1rem}.product-detail .skeleton__line{height:14px;border-radius:4px;background:#ffffff14;margin-bottom:8px}.product-detail .skeleton__line.w90{width:90%}.product-detail .skeleton__line.w70{width:70%}*{box-sizing:border-box}html,body,#root{height:100%;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;background:var(--tg-theme-bg-color, #1a1a2e);color:var(--tg-theme-text-color, #eee);-webkit-font-smoothing:antialiased}a{color:var(--tg-theme-link-color, #6eb5ff)}button{font:inherit;cursor:pointer}
