:root{--brand:#0058fd;--brand-strong:#0047d1;--brand-on:#fff;--n-000:#fff;--n-050:#f7f7f7;--n-200:#e8e8e8;--n-500:#999;--n-700:#555;--n-900:#000;--sem-danger:#e53935;--sem-success:#1a8a5a;--sem-warning:#b7791f;--sem-info:#185fa5;--sem-sale:#d64533;--sem-on:#fff;--r-sm:6px;--r-lg:16px;--font-sans:"Nunito Sans", -apple-system, BlinkMacSystemFont, sans-serif;--ls:.08em;--ls-sm:.04em;--shop-bg:var(--n-000);--shop-surface:var(--n-050);--shop-text:var(--n-900);--shop-text-secondary:var(--n-700);--shop-hint:var(--n-500);--shop-border:var(--n-200);--shop-accent:var(--n-900);--shop-accent-text:var(--n-000);--shop-accent-border:transparent;--shop-detail-bg:transparent;--shop-detail-text:var(--shop-text);--shop-detail-border:var(--shop-border);--shop-photo-ratio:3 / 4;--shop-radius:var(--r-lg);--shop-radius-sm:var(--r-sm);--shop-font:var(--font-sans);--shop-letter-spacing:var(--ls);--shop-letter-spacing-sm:var(--ls-sm);--tab-bar-height:60px;--shop-danger:var(--sem-danger);--shop-success:var(--sem-success);--shop-warning:var(--sem-warning);--shop-info:var(--sem-info);--shop-sale:#d54230;--shop-sale-text:var(--sem-on);--shop-scrim:#ffffff80;--shop-veil:#ffffffeb}@supports (color:color-mix(in srgb, red 50%, white)){:root{--shop-hint:color-mix(in srgb, var(--shop-text) 60%, var(--shop-bg));--shop-text-secondary:color-mix(in srgb, var(--shop-text) 75%, var(--shop-bg));--shop-danger:color-mix(in srgb, var(--sem-danger) 85%, var(--shop-text));--shop-success:color-mix(in srgb, var(--sem-success) 85%, var(--shop-text));--shop-warning:color-mix(in srgb, var(--sem-warning) 85%, var(--shop-text));--shop-info:color-mix(in srgb, var(--sem-info) 80%, var(--shop-text));--shop-scrim:color-mix(in srgb, var(--shop-bg) 50%, transparent);--shop-veil:color-mix(in srgb, var(--shop-bg) 92%, transparent)}}h1,h2,h3,h4{font-size:inherit;font-weight:500}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--shop-font);background:var(--shop-bg);color:var(--shop-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{display:block}.app{background:var(--shop-bg);width:100%;max-width:480px;min-height:100vh;padding-bottom:var(--tab-bar-height);margin:0 auto}.page{padding-bottom:calc(var(--tab-bar-height) + 24px)}.loader{height:100vh;color:var(--shop-hint);justify-content:center;align-items:center;font-size:14px;display:flex}.error-screen{height:100vh;color:var(--shop-danger);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:24px;font-size:14px;display:flex}.shop-header{border-bottom:1px solid var(--shop-border);background:var(--shop-bg);z-index:100;align-items:center;gap:12px;padding:14px 16px;display:flex;position:sticky;top:0}.shop-logo{object-fit:cover;border-radius:50%;flex-shrink:0;width:36px;height:36px}.shop-name{letter-spacing:var(--shop-letter-spacing-sm);text-transform:uppercase;flex:1;font-size:16px;font-weight:700}.banner{width:100%;overflow:hidden}.banner img{object-fit:cover;width:100%;height:min(58vw,280px);display:block}.categories{scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:0;padding:12px 16px 8px;display:flex;overflow-x:auto}.categories::-webkit-scrollbar{display:none}.categories button{color:var(--shop-hint);font-size:11px;font-weight:700;font-family:var(--shop-font);cursor:pointer;text-transform:uppercase;letter-spacing:var(--shop-letter-spacing);white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;flex-shrink:0;padding:6px 12px;transition:color .2s,border-color .2s}.categories button:hover{color:var(--shop-text)}.categories button.active{color:var(--shop-text);border-bottom-color:var(--shop-accent)}.products-grid{grid-template-columns:repeat(2,1fr);gap:10px;padding:10px 10px 0;display:grid}.products-list{flex-direction:column;gap:6px;padding:8px 6px 0;display:flex}.product-card{background:var(--shop-bg);border-radius:var(--shop-radius);border:1px solid var(--shop-border);cursor:pointer;flex-direction:column;transition:opacity .2s;display:flex;overflow:hidden}.product-card:active{opacity:.85}.product-img{aspect-ratio:3/4;object-fit:cover;background:var(--shop-surface);width:100%;display:block}.product-img-placeholder{aspect-ratio:3/4;background:var(--shop-surface);width:100%;color:var(--shop-hint);justify-content:center;align-items:center;font-size:32px;display:flex}.product-info{padding:10px 10px 4px}.product-name{text-transform:none;letter-spacing:var(--shop-letter-spacing);color:var(--shop-text);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:6px;font-size:13px;font-weight:500;line-height:1.35;display:-webkit-box;overflow:hidden}.product-price-row{align-items:baseline;gap:6px;margin-bottom:2px;display:flex}.product-price{letter-spacing:.02em;color:var(--shop-text);font-size:14px;font-weight:400}.product-old-price{color:var(--shop-hint);font-size:11px;text-decoration:line-through}.product-card__buttons{flex-direction:column;gap:6px;margin-top:auto;padding:8px 10px 12px;display:flex}.btn-detail{border:1px solid var(--shop-detail-border);border-radius:var(--shop-radius-sm);background:var(--shop-detail-bg);width:100%;color:var(--shop-detail-text);font-size:11px;font-weight:700;font-family:var(--shop-font);text-transform:uppercase;letter-spacing:var(--shop-letter-spacing);cursor:pointer;padding:9px 0;transition:background .2s;display:block}.btn-detail:active{opacity:.85}.btn-add{border:1px solid var(--shop-accent-border);border-radius:var(--shop-radius-sm);background:var(--shop-accent);width:100%;color:var(--shop-accent-text);font-size:11px;font-weight:700;font-family:var(--shop-font);text-transform:uppercase;letter-spacing:var(--shop-letter-spacing);cursor:pointer;padding:9px 0;transition:opacity .2s;display:block}.btn-add:active{opacity:.85}.btn-add:disabled{opacity:.4;cursor:not-allowed}.product-card__media{width:100%;position:relative}.product-badge{z-index:2;border-radius:var(--shop-radius-sm);pointer-events:none;padding:4px 7px;font-size:10px;font-weight:600;line-height:1;position:absolute}.product-badge--discount{background:var(--shop-sale);color:var(--shop-sale-text);top:7px;left:7px}.product-badge--category{background:var(--shop-veil);color:var(--shop-text);text-transform:none;font-weight:500;bottom:7px;left:7px}.product-oos-overlay{z-index:2;background:var(--shop-scrim);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.product-oos-overlay span{color:var(--shop-text);background:var(--shop-bg);border:1px solid var(--shop-border);border-radius:var(--shop-radius-sm);padding:5px 11px;font-size:11px;font-weight:500}.product-stock{align-items:center;gap:5px;margin-bottom:5px;font-size:10px;font-weight:500;display:flex}.product-stock--in{color:var(--shop-success)}.product-stock--out{color:var(--shop-hint)}.product-stock__dot{background:currentColor;border-radius:50%;width:5px;height:5px}body[data-show-discount-badge=false] .product-badge--discount,body[data-show-category-badge=false] .product-badge--category,body[data-show-stock-status=false] .product-stock{display:none}.product-name{text-align:left}body[data-name-align=center] .product-name{text-align:center}body[data-uppercase-names=true] .product-name{text-transform:uppercase;font-size:12px;font-weight:700}.btn-primary{border:1px solid var(--shop-accent);border-radius:var(--shop-radius-sm);background:var(--shop-accent);width:100%;color:var(--shop-accent-text);font-size:13px;font-weight:700;font-family:var(--shop-font);text-transform:uppercase;letter-spacing:var(--shop-letter-spacing);cursor:pointer;text-align:center;padding:14px 24px;transition:opacity .2s;display:block}.btn-primary:active{opacity:.85}.btn-primary:disabled{opacity:.4;cursor:not-allowed}.btn-secondary{border:1px solid var(--shop-border);border-radius:var(--shop-radius-sm);width:100%;color:var(--shop-text);font-size:13px;font-weight:700;font-family:var(--shop-font);text-transform:uppercase;letter-spacing:var(--shop-letter-spacing);cursor:pointer;text-align:center;background:0 0;padding:12px 24px;transition:all .2s;display:block}.btn-secondary:active{background:var(--shop-text);color:var(--shop-bg)}.btn-back{font-size:13px;font-weight:700;font-family:var(--shop-font);color:var(--shop-text);cursor:pointer;text-transform:uppercase;letter-spacing:var(--shop-letter-spacing);background:0 0;border:none;padding:16px 16px 8px;display:block}.dot{background:var(--shop-border);cursor:pointer;border:none;border-radius:50%;width:6px;height:6px;transition:background .2s}.dot.active{background:var(--shop-accent)}.product-detail{padding:16px 16px 120px}.product-detail h2{text-transform:uppercase;letter-spacing:var(--shop-letter-spacing);margin-bottom:10px;font-size:15px;font-weight:700;line-height:1.4}.price-row{align-items:baseline;gap:10px;margin-bottom:12px;display:flex}.price{letter-spacing:.02em;font-size:22px;font-weight:400}.old-price{color:var(--shop-hint);font-size:14px;text-decoration:line-through}.description{color:var(--shop-text-secondary);white-space:pre-line;border-top:1px solid var(--shop-border);margin-top:16px;padding-top:16px;font-size:13px;line-height:1.7}.out-of-stock{color:var(--shop-danger);margin-top:8px;font-size:13px}.bottom-bar{bottom:var(--tab-bar-height);background:var(--shop-bg);border-top:1px solid var(--shop-border);z-index:100;width:100%;max-width:480px;padding:12px 16px;position:fixed;left:50%;transform:translate(-50%)}.cart-page{padding:16px 0 120px}.cart-head{align-items:center;gap:10px;padding:14px 16px 10px;display:flex}.cart-title{color:var(--shop-text);margin:0;font-size:18px;font-weight:500}.cart-count{color:var(--shop-hint);font-size:13px}.btn-back{color:var(--shop-text);cursor:pointer;font-size:14px;font-family:var(--shop-font);background:0 0;border:none;padding:0}.cart-items{flex-direction:column;gap:10px;padding:0 12px;display:flex}.cart-item{background:var(--shop-bg);border:1px solid var(--shop-border);border-radius:var(--shop-radius);gap:11px;padding:10px;display:flex}.cart-item-media{flex-shrink:0}.cart-item-img{border-radius:var(--shop-radius-sm);object-fit:cover;background:var(--shop-surface);width:72px;height:72px;display:block}.cart-item-img--empty{color:var(--shop-hint);justify-content:center;align-items:center;font-size:24px;display:flex}.cart-item-info{flex-direction:column;flex:1;min-width:0;display:flex}.cart-item-name{color:var(--shop-text);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0 0 3px;font-size:13px;font-weight:500;line-height:1.3;display:-webkit-box;overflow:hidden}.cart-item-price-row{align-items:baseline;gap:6px;display:flex}.cart-item-price{color:var(--shop-text);font-size:15px;font-weight:500}.cart-item-old-price{color:var(--shop-hint);font-size:12px;text-decoration:line-through}.cart-item-controls{justify-content:space-between;align-items:center;margin-top:auto;padding-top:8px;display:flex}.cart-item-qty{border:1px solid var(--shop-border);border-radius:var(--shop-radius-sm);align-items:center;display:flex;overflow:hidden}.cart-item-qty button{background:var(--shop-surface);width:30px;height:30px;color:var(--shop-text);cursor:pointer;font-size:17px;font-family:var(--shop-font);border:none;justify-content:center;align-items:center;display:flex}.cart-item-qty button:active{opacity:.6}.cart-item-qty span{text-align:center;min-width:30px;color:var(--shop-text);font-size:13px;font-weight:500}.cart-item-remove{width:30px;height:30px;color:var(--shop-hint);cursor:pointer;font-size:15px;font-family:var(--shop-font);background:0 0;border:none}.cart-item-remove:active{color:var(--shop-danger)}.cart-summary{background:var(--shop-surface);border:1px solid var(--shop-border);border-radius:var(--shop-radius);margin:14px 12px 0;padding:13px 14px}.cart-summary-row{color:var(--shop-hint);justify-content:space-between;margin-bottom:7px;font-size:13px;display:flex}.cart-summary-row--save{color:var(--shop-success)}.cart-summary-note{color:var(--shop-hint);margin:8px 0 0;font-size:12px;line-height:1.4}.cart-summary-total{border-top:1px solid var(--shop-border);justify-content:space-between;align-items:baseline;margin-top:3px;padding-top:10px;display:flex}.cart-summary-total span:first-child{color:var(--shop-text);font-size:15px;font-weight:500}.cart-summary-total span:last-child{color:var(--shop-text);font-size:20px;font-weight:500}.cart-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:60px 20px;display:flex}.cart-empty__icon{color:var(--shop-hint);opacity:.7;margin-bottom:4px}.cart-empty__text{color:var(--shop-hint);margin:0;font-size:15px}.cart-empty__btn{width:auto;padding-left:28px;padding-right:28px}.order-page{padding:0 12px 140px}.order-page .form,.order-page>*{align-self:stretch;width:100%}.order-page .btn-back{text-align:left;align-self:flex-start}.product-page .btn-back{align-self:flex-start;padding:14px 16px 12px}.product-page{padding-top:0}.order-page h2{text-transform:uppercase;letter-spacing:.04em;text-align:center;color:var(--shop-text);padding:8px 4px 18px;font-size:16px;font-weight:600}.form{text-align:left;flex-direction:column;align-items:stretch;gap:0;display:flex}.form label,.field-label{text-align:left;color:var(--shop-hint);text-transform:none;letter-spacing:normal;margin:0 0 6px;font-size:13px;font-weight:500;display:block}.field-block{margin-bottom:14px}.form input,.form textarea,.form select{box-sizing:border-box;border:1px solid var(--shop-border);background:var(--shop-surface);width:100%;color:var(--shop-text);font-size:14px;font-family:var(--shop-font);-webkit-appearance:none;border-radius:10px;outline:none;margin-bottom:14px;padding:11px 13px;transition:border-color .2s}.form input:focus,.form textarea:focus{border-color:var(--shop-accent)}.form textarea{resize:none;height:64px}.form input::placeholder,.form textarea::placeholder{color:var(--shop-hint)}.choice-grid,.choice-list{flex-direction:column;gap:8px;margin-bottom:14px;display:flex}.choice-card{box-sizing:border-box;border:1px solid var(--shop-border);background:var(--shop-surface);width:100%;color:var(--shop-text);font-family:var(--shop-font);cursor:pointer;text-align:left;border-radius:10px;align-items:center;gap:10px;padding:12px 13px;transition:all .15s;display:flex}.choice-card--active{border-color:var(--shop-accent);background:color-mix(in srgb, var(--shop-accent) 6%, var(--shop-bg));border-width:1.5px;padding:11.5px 12.5px}.choice-card:disabled{opacity:.45;cursor:default}.choice-note{color:var(--shop-hint);margin:-6px 0 4px;font-size:12px;line-height:1.35}.choice-card__icon{color:var(--shop-hint);flex-shrink:0;display:flex}.choice-card--active .choice-card__icon{color:var(--shop-accent)}.choice-card__title{flex:1;font-size:14px;font-weight:500}.choice-card--active .choice-card__title{color:var(--shop-accent)}.choice-card__text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.choice-card__text .choice-card__title{flex:none}.choice-card__sub{color:var(--shop-hint);font-size:12px;line-height:1.3}.choice-card__price{flex-shrink:0;font-size:13px;font-weight:600}.choice-card--active .choice-card__price{color:var(--shop-accent)}.choice-card__check{border:1.5px solid var(--shop-accent);width:20px;height:20px;color:var(--shop-accent);background:0 0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:700;display:flex}.order-page .cart-summary{border-radius:12px;margin:6px 0 0;padding:13px 14px}.form-section{text-transform:uppercase;letter-spacing:var(--shop-letter-spacing);color:var(--shop-text-secondary);border-bottom:1px solid var(--shop-border);margin:24px 0 12px;padding-bottom:8px;font-size:11px;font-weight:700}.order-summary-block{background:var(--shop-surface);border-radius:var(--shop-radius);margin:16px 0;padding:16px}.order-summary-block__title{text-transform:uppercase;letter-spacing:var(--shop-letter-spacing);margin-bottom:12px;font-size:11px;font-weight:700}.order-summary-block__total{border-top:1px solid var(--shop-border);text-transform:uppercase;letter-spacing:var(--shop-letter-spacing-sm);justify-content:space-between;margin-top:12px;padding-top:12px;font-size:14px;font-weight:700;display:flex}.error{color:var(--shop-danger);margin:8px 0;font-size:13px}.profile-page{padding:16px 12px 120px}.profile-card{background:var(--shop-surface);border:1px solid var(--shop-border);border-radius:14px;align-items:center;gap:12px;margin-bottom:20px;padding:14px;display:flex}.profile-avatar{background:color-mix(in srgb, var(--shop-accent) 12%, var(--shop-bg));width:48px;height:48px;color:var(--shop-accent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:17px;font-weight:600;display:flex}.profile-info{min-width:0}.profile-name{color:var(--shop-text);margin:0;font-size:15px;font-weight:500}.profile-username{color:var(--shop-hint);margin:2px 0 0;font-size:13px}.profile-notify{border:1px solid var(--shop-border);border-radius:var(--shop-radius-sm);cursor:pointer;align-items:flex-start;gap:10px;margin-bottom:16px;padding:12px 14px;display:flex}.profile-notify input{width:18px;height:18px;accent-color:var(--shop-accent);flex:none;margin:1px 0 0}.profile-notify__text{color:var(--shop-text);font-size:14px}.profile-notify__hint{color:var(--shop-hint);margin-top:3px;font-size:12px;line-height:1.4;display:block}.profile-orders-head{justify-content:space-between;align-items:center;margin-bottom:12px;padding-top:4px;display:flex}.profile-orders-title{color:var(--shop-text);margin:0;font-size:16px;font-weight:500}.profile-orders-count{color:var(--shop-hint);font-size:13px}.profile-loading{color:var(--shop-hint);font-size:14px}.profile-empty{text-align:center;flex-direction:column;align-items:center;gap:12px;padding:50px 20px;display:flex}.profile-empty__icon{color:var(--shop-hint);opacity:.7}.profile-empty__text{color:var(--shop-hint);margin:0;font-size:15px}.profile-empty__btn{width:auto;padding-left:28px;padding-right:28px}.orders-list{flex-direction:column;gap:10px;display:flex}.order-card{background:var(--shop-surface);border:1px solid var(--shop-border);border-radius:12px;padding:13px 14px}.order-header{justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;display:flex}.order-date{color:var(--shop-hint);font-size:12px}.order-status{white-space:nowrap;border-radius:20px;padding:3px 10px;font-size:12px;font-weight:500}.order-items{flex-direction:column;gap:3px;margin-bottom:10px;display:flex}.order-item-row{color:var(--shop-text);justify-content:space-between;gap:10px;font-size:13px;display:flex}.order-item-row span:last-child{color:var(--shop-hint);flex-shrink:0}.order-total-row{border-top:1px solid var(--shop-border);justify-content:space-between;align-items:baseline;padding-top:9px;display:flex}.order-total-row span:first-child{color:var(--shop-hint);font-size:12px}.order-total{color:var(--shop-text);font-size:15px;font-weight:500}.order-total--cancelled{color:var(--shop-hint);text-decoration:line-through}.status-new{color:#4a5568;background:#eef1f5}.status-paid{color:#185fa5;background:#e6f1fb}.status-processing{color:#b7791f;background:#fff4e0}.status-ready{color:#0b6f68;background:#e0f3f0}.status-delivering{color:#185fa5;background:#e6f1fb}.status-completed{color:#0f6e56;background:#e1f5ee}.status-cancelled{color:#999;background:#f5f0f0}.order-items{color:var(--shop-text-secondary);font-size:13px;line-height:1.6}.order-total{font-size:15px;font-weight:700}.about-page{padding:16px 16px 120px}.about-page h2{text-transform:uppercase;letter-spacing:var(--shop-letter-spacing);margin-bottom:16px;font-size:14px;font-weight:700}.about-section{border:1px solid var(--shop-border);border-radius:var(--shop-radius);margin-bottom:10px;padding:14px 16px}.about-section h3{text-transform:uppercase;letter-spacing:var(--shop-letter-spacing);color:var(--shop-text-secondary);margin-bottom:8px;font-size:11px;font-weight:700}.about-section p{margin-bottom:4px;font-size:14px;line-height:1.6}.about-text{font-size:14px;line-height:1.6}.about-doc{color:var(--shop-text-secondary);white-space:pre-wrap;font-size:12px;line-height:1.6}.about-fold{border:1px solid var(--shop-border);border-radius:var(--shop-radius);margin-bottom:10px;overflow:hidden}.about-fold__head{box-sizing:border-box;cursor:pointer;text-transform:uppercase;min-height:44px;letter-spacing:var(--shop-letter-spacing);color:var(--shop-text-secondary);-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;font-size:11px;font-weight:700;list-style:none;display:flex}.about-fold__head::-webkit-details-marker{display:none}.about-fold__chevron{flex:none;width:12px;height:12px;transition:transform .2s}.about-fold[open] .about-fold__chevron{transform:rotate(180deg)}.about-fold__body{padding:0 16px 14px}.empty-state{color:var(--shop-hint);text-align:center;flex-direction:column;align-items:center;gap:12px;padding:48px 16px;font-size:14px;display:flex}.tab-bar{width:100%;max-width:480px;height:var(--tab-bar-height);background:var(--shop-bg);border-top:1px solid var(--shop-border);z-index:200;padding-bottom:env(safe-area-inset-bottom,0px);display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.tab-bar button{cursor:pointer;color:var(--shop-hint);font-family:var(--shop-font);background:0 0;border:none;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;padding:8px 0 10px;transition:color .2s;display:flex}.tab-bar button.active{color:var(--shop-accent)}.tab-icon{font-size:22px;line-height:1;position:relative}.tab-icon svg{stroke:currentColor;fill:none;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px;display:block}.tab-bar button span:last-child{letter-spacing:.03em;text-transform:uppercase;font-size:10px;font-weight:600}.tab-badge{background:var(--shop-accent);color:var(--shop-accent-text);border-radius:8px;justify-content:center;align-items:center;min-width:15px;height:15px;padding:0 3px;font-size:9px;font-weight:700;display:flex;position:absolute;top:-4px;right:-8px}.spinner{border:2px solid var(--shop-border);border-top-color:var(--shop-text);border-radius:50%;width:24px;height:24px;margin:40px auto;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.tab-bar button:focus,.tab-bar button:focus-visible{outline:none}.shop-header:not(:has(.shop-logo)){justify-content:flex-start}.shop-name{text-align:left}.product-img,.product-img-placeholder{aspect-ratio:var(--shop-photo-ratio,3 / 4)}body[data-show-detail-btn=false] .btn-detail{display:none}.catalog-controls{flex-wrap:wrap;align-items:center;gap:8px;padding:12px 16px 4px;display:flex}.search-box{background:var(--shop-surface);border-radius:var(--shop-radius-sm);border:1px solid #0000;flex:180px;align-items:center;gap:6px;min-width:0;padding:0 12px;transition:border-color .2s;display:flex}.search-box:focus-within{border-color:var(--shop-accent)}@media (width<=460px){.search-box{flex-basis:100%}}.search-icon{color:var(--shop-hint);flex:none;display:flex}.search-icon svg{width:17px;height:17px;display:block}.search-input{min-width:0;font-size:14px;font-family:var(--shop-font);color:var(--shop-text);background:0 0;border:none;outline:none;flex:1;padding:10px 0}.search-input::placeholder{color:var(--shop-hint)}.search-clear{color:var(--shop-hint);cursor:pointer;background:0 0;border:none;padding:4px;font-size:13px;line-height:1}.sort-select{background:var(--shop-surface);border-radius:var(--shop-radius-sm);font-size:12px;font-family:var(--shop-font);color:var(--shop-text);cursor:pointer;border:1px solid #0000;outline:none;flex-shrink:0;max-width:140px;padding:10px 12px}.sort-select:focus{border-color:var(--shop-accent)}.product-card--skeleton{cursor:default;pointer-events:none}.skeleton{background:var(--shop-surface);border-radius:var(--shop-radius-sm);animation:1.4s ease-in-out infinite skeleton-pulse}.skeleton--media{aspect-ratio:3/4;border-radius:0;width:100%}.skeleton--line{height:11px;margin:10px 0 0}.skeleton--short{width:45%}@keyframes skeleton-pulse{0%,to{opacity:1}50%{opacity:.55}}@media (prefers-reduced-motion:reduce){.skeleton{animation:none}}.empty-catalog{text-align:center;color:var(--shop-hint);flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:60px 20px;display:flex}.empty-catalog__icon{opacity:.4;font-size:48px}.empty-catalog p{font-size:14px;font-weight:600}.shop-header{background:var(--shop-bg);justify-content:center;padding:0 16px;position:static}.shop-logo{object-fit:contain;border-radius:0;width:auto;max-width:420px;height:140px}.banner-carousel{width:100%;margin-top:16px;margin-bottom:12px;position:relative;overflow:hidden}.banner-track{transition:transform .35s;display:flex}.banner-slide{border-radius:var(--shop-radius,12px);flex:0 0 100%;width:100%;overflow:hidden}.banner-slide img{object-fit:cover;width:100%;height:100%;display:block}.banner-dots{justify-content:center;gap:6px;margin-top:8px;display:flex}.banner-dots .dot{background:var(--shop-border,#ddd);cursor:pointer;border:none;border-radius:50%;width:7px;height:7px;padding:0;transition:background .2s,width .2s}.banner-dots .dot.active{background:var(--shop-accent,#2563eb);border-radius:4px;width:18px}.product-gallery{width:100%;position:relative;overflow:hidden}.gallery-track{transition:transform .35s;display:flex}.gallery-slide{width:100%;aspect-ratio:var(--shop-photo-ratio,1 / 1);flex:0 0 100%;overflow:hidden}.gallery-slide img.product-img-large{object-fit:cover;width:100%;height:100%;display:block}.product-gallery-placeholder{width:100%;aspect-ratio:var(--shop-photo-ratio,1 / 1);color:var(--shop-border,#ddd);background:var(--shop-surface);justify-content:center;align-items:center;font-size:48px;display:flex}.gallery-dots{justify-content:center;gap:6px;padding:10px 0;display:flex}.gallery-dots .dot{background:var(--shop-border,#ddd);cursor:pointer;border:none;border-radius:50%;width:7px;height:7px;padding:0;transition:background .2s,width .2s}.gallery-dots .dot.active{background:var(--shop-accent,#2563eb);border-radius:4px;width:18px}.filter-toggle{border:1px solid var(--shop-border);border-radius:var(--shop-radius-sm);background:var(--shop-bg);color:var(--shop-text-secondary);font-size:11px;font-weight:700;font-family:var(--shop-font);text-transform:uppercase;letter-spacing:var(--shop-letter-spacing);white-space:nowrap;cursor:pointer;flex-shrink:0;padding:10px 14px}.filter-toggle.active{border-color:var(--shop-accent);color:var(--shop-accent)}.catalog-filters{background:var(--shop-surface);border-radius:var(--shop-radius);flex-direction:column;gap:16px;margin:0 0 12px;padding:14px 16px;display:flex}.filter-block{flex-direction:column;gap:10px;display:flex}.filter-label{color:var(--shop-text-secondary);justify-content:space-between;align-items:baseline;font-size:13px;display:flex}.filter-value{color:var(--shop-text);font-weight:600}.price-range{height:32px;position:relative}.price-range:before{content:"";background:var(--shop-border);border-radius:2px;height:4px;position:absolute;top:14px;left:0;right:0}.price-range input[type=range]{pointer-events:none;appearance:none;background:0 0;width:100%;height:32px;margin:0;position:absolute;top:0;left:0}.price-range input[type=range]::-webkit-slider-thumb{appearance:none;pointer-events:auto;background:var(--shop-accent);border:2px solid var(--shop-bg);cursor:pointer;border-radius:50%;width:22px;height:22px;box-shadow:0 1px 4px #00000040}.price-range input[type=range]::-moz-range-thumb{pointer-events:auto;border:2px solid var(--shop-bg);background:var(--shop-accent);cursor:pointer;border-radius:50%;width:22px;height:22px}.in-stock-toggle{color:var(--shop-text);cursor:pointer;align-items:center;gap:10px;font-size:14px;display:flex}.in-stock-toggle input{width:18px;height:18px;accent-color:var(--shop-accent)}.filter-reset{color:var(--shop-accent);font-family:var(--shop-font);cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:0;font-size:13px}.order-accepted{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:60vh;padding:48px 20px 40px;display:flex}.order-accepted__icon{background:color-mix(in srgb, var(--shop-accent) 10%, var(--shop-bg));border-radius:50%;justify-content:center;align-items:center;width:72px;height:72px;margin-bottom:20px;display:flex}.order-accepted__title{color:var(--shop-text);margin:0 0 8px;font-size:21px;font-weight:500}.order-accepted__text{color:var(--shop-hint);margin:0 0 24px;font-size:14px;line-height:1.5}.order-accepted__text strong{color:var(--shop-text);font-weight:600}.order-accepted__details{background:var(--shop-surface);border:1px solid var(--shop-border);border-radius:12px;width:100%;margin-bottom:24px;padding:14px}.order-accepted__row{color:var(--shop-hint);justify-content:space-between;margin-bottom:8px;font-size:13px;display:flex}.order-accepted__row:last-child{margin-bottom:0}.order-accepted__row span:last-child{color:var(--shop-text);font-weight:500}.order-accepted__btn-primary{width:100%;margin-bottom:10px}.order-accepted__btn-secondary{width:100%}.payment-wait__spinner{border-top-color:var(--shop-accent);width:30px;height:30px;margin:0}.payment-wait__note{text-align:center;margin:-12px 0 16px}.order-accepted__icon--failed{background:color-mix(in srgb, var(--shop-danger) 10%, var(--shop-bg))}.variant-axis{margin:14px 0}.variant-axis__label{text-transform:uppercase;letter-spacing:var(--shop-letter-spacing);color:var(--shop-hint);margin-bottom:8px;font-size:11px;font-weight:700;display:block}.variant-values{flex-wrap:wrap;gap:8px;display:flex}.variant-chip{border:1px solid var(--shop-border);border-radius:var(--shop-radius);color:var(--shop-text);font-size:13px;font-family:var(--shop-font);letter-spacing:var(--shop-letter-spacing);cursor:pointer;background:0 0;flex-shrink:0;padding:8px 14px;transition:border-color .2s,color .2s,background .2s}.variant-chip--active{border-color:var(--shop-accent);color:var(--shop-accent);font-weight:600}.variant-chip--absent{color:var(--shop-hint);border-style:dashed;text-decoration:line-through;text-decoration-thickness:1px}.product-variants-hint{color:var(--shop-hint);letter-spacing:var(--shop-letter-spacing);margin:-2px 0 6px;font-size:11px}.address-suggest{position:relative}.address-suggest__list{border:1px solid var(--shop-border);background:var(--shop-surface);border-radius:10px;margin:-6px 0 12px;padding:4px 0;list-style:none}.address-suggest__item{width:100%;color:var(--shop-text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:10px 13px;font-size:14px;line-height:1.35;display:block}.address-suggest__item:active,.address-suggest__item:focus-visible{background:color-mix(in srgb, var(--shop-accent) 8%, transparent);outline:none}.address-suggest__note{margin:-4px 0 12px}.address-quote{margin:-4px 0 14px;font-size:13px;line-height:1.4}.address-quote--ok{color:var(--shop-text-secondary)}.address-quote--err{color:var(--shop-danger)}.address-quote__actions{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.address-quote__actions button{border:1px solid var(--shop-accent);color:var(--shop-accent);font:inherit;cursor:pointer;background:0 0;border-radius:10px;padding:8px 12px;font-size:13px;font-weight:600}
