:root{--bg: #f7f2e9;--blob-a: #cfe6bd;--blob-b: #f3d9a4;--blob-c: #bfe1d9;--text: #1c2116;--text-secondary: #6b6f61;--accent: #2f7d4f;--accent-strong: #235f3c;--accent-text: #ffffff;--gold: #c98a2e;--gold-strong: #a8701e;--danger: #e5484d;--glass-bg: rgba(255, 255, 255, .55);--glass-bg-strong: rgba(255, 255, 255, .78);--glass-border: rgba(28, 33, 22, .16);--glass-shadow: 0 10px 34px rgba(20, 40, 25, .14), inset 0 1px 0 rgba(255, 255, 255, .65);--glass-shadow-sm: 0 4px 16px rgba(20, 40, 25, .1), inset 0 1px 0 rgba(255, 255, 255, .5);--radius-lg: 26px;--radius-md: 18px;--radius-sm: 12px;--radius-pill: 999px}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg: #12160f;--blob-a: #1f3a26;--blob-b: #3a2d14;--blob-c: #163430;--text: #f2efe6;--text-secondary: #a3a996;--accent: #4fd383;--accent-strong: #38b06a;--accent-text: #06170c;--gold: #e0a94a;--gold-strong: #c98a2e;--glass-bg: rgba(28, 40, 32, .55);--glass-bg-strong: rgba(32, 46, 37, .78);--glass-border: rgba(255, 255, 255, .12);--glass-shadow: 0 10px 34px rgba(0, 0, 0, .5), inset 0 1px 0 rgba(255, 255, 255, .06);--glass-shadow-sm: 0 4px 16px rgba(0, 0, 0, .4), inset 0 1px 0 rgba(255, 255, 255, .05)}}:root[data-theme=dark]{--bg: #12160f;--blob-a: #1f3a26;--blob-b: #3a2d14;--blob-c: #163430;--text: #f2efe6;--text-secondary: #a3a996;--accent: #4fd383;--accent-strong: #38b06a;--accent-text: #06170c;--gold: #e0a94a;--gold-strong: #c98a2e;--glass-bg: rgba(28, 40, 32, .55);--glass-bg-strong: rgba(32, 46, 37, .78);--glass-border: rgba(255, 255, 255, .12);--glass-shadow: 0 10px 34px rgba(0, 0, 0, .5), inset 0 1px 0 rgba(255, 255, 255, .06);--glass-shadow-sm: 0 4px 16px rgba(0, 0, 0, .4), inset 0 1px 0 rgba(255, 255, 255, .05)}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,Roboto,sans-serif;overflow-x:hidden;-webkit-tap-highlight-color:transparent}.bg-blobs{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none}.bg-blobs span{position:absolute;border-radius:50%;filter:blur(60px);opacity:.55;animation:drift 22s ease-in-out infinite alternate}.bg-blobs span:nth-child(1){width:60vmax;height:60vmax;top:-20vmax;left:-15vmax;background:var(--blob-a)}.bg-blobs span:nth-child(2){width:50vmax;height:50vmax;bottom:-20vmax;right:-15vmax;background:var(--blob-b);animation-delay:-8s}.bg-blobs span:nth-child(3){width:40vmax;height:40vmax;top:30vh;right:10vw;background:var(--blob-c);animation-delay:-14s}@keyframes drift{0%{transform:translate(0) scale(1)}to{transform:translate(4vmax,3vmax) scale(1.08)}}@media(prefers-reduced-motion:reduce){.bg-blobs span{animation:none}}.glass{background:var(--glass-bg);backdrop-filter:blur(22px) saturate(160%);-webkit-backdrop-filter:blur(22px) saturate(160%);border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:var(--glass-shadow)}.glass-strong{background:var(--glass-bg-strong);backdrop-filter:blur(28px) saturate(180%);-webkit-backdrop-filter:blur(28px) saturate(180%);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow)}.app{max-width:560px;margin:0 auto;min-height:100%;padding:calc(14px + var(--tg-safe-top, 0px)) 14px calc(100px + var(--tg-safe-bottom, 0px));position:relative}.shop-header{padding:14px 16px;margin-bottom:12px}.shop-header__title{display:flex;align-items:center;gap:10px;margin-bottom:12px}.shop-header__logo{width:40px;height:40px;border-radius:var(--radius-sm);background:linear-gradient(135deg,var(--accent),var(--accent-strong));color:var(--accent-text);display:flex;align-items:center;justify-content:center;flex-shrink:0}.shop-header__name{font-size:17px;font-weight:700}.shop-header__sub{font-size:13px;color:var(--text-secondary)}.search-box{display:flex;align-items:center;gap:8px;border-radius:var(--radius-pill);padding:0 14px}.search-box__icon{color:var(--text-secondary);flex-shrink:0}.search-input{width:100%;border:none;outline:none;background:transparent;color:var(--text);font-size:15px;padding:12px 0}.search-input::placeholder{color:var(--text-secondary)}.notice-banner{margin:10px 0;padding:12px 14px;border-radius:var(--radius-md);font-size:13.5px;line-height:1.4;background:linear-gradient(135deg,color-mix(in srgb,var(--gold) 24%,transparent),color-mix(in srgb,var(--gold) 8%,transparent));border:1px solid color-mix(in srgb,var(--gold) 38%,transparent);color:var(--text)}.tabs{display:flex;gap:8px;overflow-x:auto;padding:4px 2px 14px;scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}.tab{flex-shrink:0;padding:9px 16px;border-radius:var(--radius-pill);font-size:14px;font-weight:600;color:var(--text);background:var(--glass-bg);border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);transition:transform .15s ease,background .2s ease,color .2s ease}.tab:active{transform:scale(.95)}.tab.active{background:var(--accent);color:var(--accent-text);border-color:transparent}.section-title{display:flex;align-items:baseline;gap:8px;font-size:17px;font-weight:700;margin:4px 4px 12px}.section-title__count{font-size:14px;font-weight:500;color:var(--text-secondary)}.product-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.product-card{padding:10px;display:flex;flex-direction:column;gap:8px}.product-card__photo{aspect-ratio:1;border-radius:var(--radius-md);background:var(--glass-bg-strong);color:var(--text-secondary);overflow:hidden;display:flex;align-items:center;justify-content:center}.product-card__photo img{width:100%;height:100%;object-fit:cover}.product-card__name{font-size:13.5px;font-weight:600;line-height:1.25;min-height:2.5em}.product-card__unit{font-size:11.5px;color:var(--text-secondary)}.product-card__row{display:flex;align-items:center;justify-content:space-between;margin-top:auto}.product-card__price{font-size:14.5px;font-weight:700}.qty-btn{width:30px;height:30px;border-radius:50%;border:none;background:var(--accent);color:var(--accent-text);font-size:18px;line-height:1;display:flex;align-items:center;justify-content:center;transition:transform .12s ease}.qty-btn:active{transform:scale(.88)}.qty-stepper{display:flex;align-items:center;gap:6px;background:var(--glass-bg-strong);border-radius:var(--radius-pill);padding:2px}.qty-stepper .qty-btn{width:26px;height:26px;font-size:15px}.qty-stepper__count{min-width:16px;text-align:center;font-weight:700;font-size:13.5px}.cart-fab{position:fixed;left:50%;bottom:calc(18px + var(--tg-safe-bottom, 0px));transform:translate(-50%);width:calc(100% - 28px);max-width:532px;z-index:20}.cart-fab__button{width:100%;border:none;padding:15px 20px;border-radius:var(--radius-pill);background:linear-gradient(135deg,var(--accent),var(--accent-strong));color:var(--accent-text);font-size:16px;font-weight:700;display:flex;align-items:center;justify-content:space-between;box-shadow:0 12px 30px color-mix(in srgb,var(--accent) 45%,transparent),inset 0 1px #ffffff4d;transition:transform .15s ease}.cart-fab__button:active{transform:scale(.97)}.sheet-backdrop{position:fixed;inset:0;background:#0a140c59;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:30;animation:fade-in .2s ease}@keyframes fade-in{0%{opacity:0}}.sheet{position:fixed;left:0;right:0;bottom:0;z-index:31;max-width:560px;margin:0 auto;max-height:85vh;overflow-y:auto;border-radius:26px 26px 0 0;padding:10px 16px calc(20px + env(safe-area-inset-bottom));animation:slide-up .25s cubic-bezier(.32,.72,0,1)}@keyframes slide-up{0%{transform:translateY(100%)}}.sheet__handle{width:36px;height:4px;border-radius:2px;background:var(--glass-border);margin:4px auto 14px}.sheet__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.sheet__title{font-size:18px;font-weight:700}.link-btn{background:none;border:none;color:var(--accent);font-size:14px;font-weight:600}.cart-line{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--glass-border)}.cart-line__thumb{width:48px;height:48px;border-radius:var(--radius-sm);background:var(--glass-bg-strong);color:var(--text-secondary);flex-shrink:0;overflow:hidden;display:flex;align-items:center;justify-content:center}.cart-line__thumb img{width:100%;height:100%;object-fit:cover}.cart-line__info{flex:1;min-width:0}.cart-line__name{font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cart-line__price{font-size:13px;color:var(--text-secondary)}.cart-total-row{display:flex;align-items:center;justify-content:space-between;padding:14px 0 6px;font-size:15px}.cart-total-row strong{font-size:19px}.primary-btn{width:100%;border:none;padding:15px;border-radius:var(--radius-pill);background:linear-gradient(135deg,var(--accent),var(--accent-strong));color:var(--accent-text);font-size:16px;font-weight:700;margin-top:8px;transition:transform .15s ease,opacity .15s ease}.primary-btn:active{transform:scale(.97)}.primary-btn:disabled{opacity:.5}.checkout-screen{animation:fade-in .2s ease}.checkout-header{display:flex;align-items:center;gap:10px;padding:8px 4px 16px}.back-btn{width:36px;height:36px;border-radius:50%;border:none;display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0}.checkout-title{font-size:19px;font-weight:700}.card-section{padding:16px;margin-bottom:14px}.card-section__title{display:flex;align-items:center;gap:8px;font-size:14.5px;font-weight:700;margin-bottom:12px}.option-list{display:flex;flex-direction:column;gap:6px}.option-row{display:flex;align-items:flex-start;gap:12px;padding:12px 10px;border-radius:var(--radius-md);cursor:pointer;transition:background .15s ease}.option-row.selected{background:color-mix(in srgb,var(--accent) 14%,transparent)}.radio-dot{width:20px;height:20px;border-radius:50%;border:2.5px solid color-mix(in srgb,var(--text) 38%,transparent);flex-shrink:0;margin-top:1px;display:flex;align-items:center;justify-content:center;transition:border-color .15s ease}.option-row.selected .radio-dot{border-color:var(--accent)}.radio-dot__fill{width:10px;height:10px;border-radius:50%;background:var(--accent);transform:scale(0);transition:transform .15s ease}.option-row.selected .radio-dot__fill{transform:scale(1)}.option-row__label{font-size:14.5px;font-weight:600}.option-row__hint{font-size:12.5px;color:var(--text-secondary);margin-top:2px}.discount-chip{font-size:11.5px;font-weight:700;color:var(--gold-strong);background:color-mix(in srgb,var(--gold) 20%,transparent);padding:2px 8px;border-radius:var(--radius-pill);margin-left:auto}.form-field{margin-bottom:12px}.form-field label{display:block;font-size:12.5px;color:var(--text-secondary);margin-bottom:6px}.form-field input,.form-field textarea{width:100%;border:1px solid var(--glass-border);background:var(--glass-bg-strong);border-radius:var(--radius-sm);padding:11px 13px;font-size:14.5px;color:var(--text);font-family:inherit;outline:none;transition:border-color .15s ease}.form-field input:focus,.form-field textarea:focus{border-color:var(--accent)}.form-field textarea{resize:vertical;min-height:64px}.requisite-box{margin-top:10px;padding:10px 12px;border-radius:var(--radius-sm);background:var(--glass-bg-strong);font-size:13px;font-family:ui-monospace,monospace;word-break:break-all}.center-state{min-height:60vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:var(--text-secondary);text-align:center;padding:20px}.spinner{width:28px;height:28px;border-radius:50%;border:3px solid var(--glass-border);border-top-color:var(--accent);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.success-icon{width:64px;height:64px;border-radius:50%;background:color-mix(in srgb,var(--accent) 20%,transparent);color:var(--accent-strong);display:flex;align-items:center;justify-content:center;font-size:32px;margin-bottom:6px}
