:root{--bg: #ffffff;--surface: #ffffff;--primary: #7c191f;--primary-pressed: #5a1016;--accent: #e9aaa2;--muted: #6b6b6b;--text: #2c2c2c;--text-2: #6b6b6b;--border: #e4e4e4;--error: #b3261e;--success: #2e7d4f;--radius: 6px;--safe-bottom: env(safe-area-inset-bottom, 0px)}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%;background:var(--bg);color:var(--text);font-family:Segoe UI,system-ui,sans-serif}button,input,textarea,select{font:inherit}a{color:var(--primary);text-decoration:none}.app{max-width:480px;margin:0 auto;min-height:100vh;background:var(--bg);padding-top:calc(12px + env(safe-area-inset-top,0px) + var(--tg-safe-top, 0px));padding-bottom:calc(72px + var(--safe-bottom))}.page{padding:16px}.brand-line{font-size:20px;font-weight:700;color:var(--primary);margin:0 0 10px;line-height:1.3}.contact-row{display:flex;gap:8px;margin-bottom:12px}.contact-btn{min-width:44px;height:44px;border:0;border-radius:var(--radius);background:#f7f7f7;color:var(--primary);font-weight:800;font-size:11px}.ig-banner{margin:0 0 12px;padding:16px;border-radius:var(--radius);background:#7c191f;color:#fff;font-size:17px;line-height:1.35;font-weight:700}.ig-banner small{display:block;margin-top:6px;font-size:13px;font-weight:500;opacity:.9}h1{font-size:24px;font-weight:700;margin:0 0 12px}h2{font-size:16px;font-weight:700;margin:16px 0 6px}.muted{color:var(--text-2);font-size:13px}.btn{display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:44px;border:0;border-radius:var(--radius);background:var(--primary);color:#fff;font-weight:600}.btn:disabled{opacity:.5}.btn.ghost{background:transparent;color:var(--primary);border:2px solid var(--primary)}.card{background:var(--surface);border-radius:var(--radius);padding:8px;border:1px solid var(--border)}.grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-items:stretch}.product-card{display:flex;flex-direction:column;overflow:hidden;padding:0}.product-card-body{display:flex;flex-direction:column;color:inherit}.product-card h2{font-size:14px;line-height:1.3;min-height:2.6em;margin:8px 8px 4px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.product-photo{width:100%;aspect-ratio:3 / 4;object-fit:cover;border-radius:5px 5px 0 0;background:var(--border)}.price{color:var(--primary);font-weight:700}.price-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 8px 4px}.bonus-tag{color:var(--success);font-size:12px;font-weight:600}.card-btns{display:flex;gap:6px;align-items:stretch;padding:0 8px 8px}.card-btns .btn{flex:1;height:36px;min-height:36px;font-size:13px}.heart,.fav-wide{border:1.5px solid var(--primary);background:#fff;color:var(--primary);border-radius:var(--radius);font-weight:700}.heart{width:36px;min-height:36px}.heart.on,.fav-wide.on{background:#f3d6d3}.fav-wide{min-height:44px;padding:0 12px;white-space:nowrap}.drop,.drop-item{width:100%;display:flex;justify-content:space-between;align-items:center;background:#fff;border:1.5px solid var(--primary);border-radius:var(--radius);padding:10px 12px;margin:8px 0 6px;color:var(--text);font-weight:600}.drop-item{border-color:var(--border);margin:0 0 4px}.drop-item.active{background:var(--primary);color:#fff;border-color:var(--primary)}.drop-hint{color:var(--primary)}.photo-wrap{position:relative;margin-bottom:8px}.size-badge{position:absolute;right:10px;bottom:12px;background:#2a1c2894;color:#fff;border-radius:var(--radius);padding:8px 10px;font-size:13px;font-weight:700}.thumbs{display:flex;gap:8px;overflow-x:auto;padding-bottom:10px}.thumb{width:56px;height:56px;padding:0;border:0;border-radius:5px;overflow:hidden;background:var(--border)}.thumb.on{outline:2px solid var(--primary)}.thumb img{width:100%;height:100%;object-fit:cover}.also-row{display:flex;gap:10px;overflow-x:auto;padding-bottom:8px}.also-card{width:148px;flex:0 0 148px;background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:8px;color:inherit}.also-card img,.also-photo{width:100%;aspect-ratio:3 / 4;object-fit:cover;border-radius:5px;background:var(--border)}.also-card strong{display:block;margin-top:6px;min-height:36px;font-size:13px}.review{margin-bottom:8px;padding:12px}.stars{color:#c9a227;font-weight:700}.cart-row{display:flex;gap:10px;align-items:center;margin-bottom:10px;padding:10px}.cart-photo{width:72px;height:96px;object-fit:cover;border-radius:5px;background:var(--border)}.usp{display:grid;gap:4px;margin:0 0 12px;padding:0}.usp li{list-style:none}.input,select,textarea{width:100%;padding:12px;border:1px solid var(--border);border-radius:var(--radius);background:#fff;color:var(--text)}.input:focus,select:focus,textarea:focus{outline:none;border-color:var(--primary)}.row{display:flex;gap:8px;align-items:center}.chips{display:flex;gap:8px;overflow-x:auto;padding-bottom:8px}.chip{border:1px solid var(--border);background:#fff;border-radius:var(--radius);padding:8px 12px;white-space:nowrap;color:var(--text);font-weight:600;font-size:13px}.chip.active{background:var(--primary);color:#fff;border-color:var(--primary)}.tabs{position:fixed;left:50%;transform:translate(-50%);bottom:0;width:min(480px,100%);display:grid;grid-template-columns:repeat(5,1fr);background:#fff;border-top:1px solid var(--border);padding:8px 4px calc(8px + var(--safe-bottom))}.tab{background:none;border:0;color:var(--muted);font-size:11px;display:flex;flex-direction:column;gap:2px;align-items:center}.tab.active{color:var(--primary);font-weight:600}.badge{background:var(--primary);color:#fff;border-radius:999px;min-width:16px;height:16px;font-size:10px;display:inline-flex;align-items:center;justify-content:center;padding:0 4px}.error{color:var(--error);font-size:14px}.success{color:var(--success);font-weight:700}.banner{background:#f3d6d3;border-radius:var(--radius);padding:12px 14px;margin-bottom:12px;font-size:14px;line-height:1.4}.bubble{background:#f7f7f7;border-radius:var(--radius);padding:10px 12px;margin-bottom:8px}.bubble.me{background:#f3d6d3;margin-left:24px}.qty{display:inline-flex;align-items:center;gap:10px;margin-top:8px}.qty button{width:32px;height:32px;border:1px solid var(--border);border-radius:var(--radius);background:#fff}
