:root{--green:#22a447;--green-dark:#177934;--green-soft:#22a44724;--red:#ef4b5f;--orange:#f97316;--orange-dark:#ea580c;--ink:#1f2937;--muted:#4b5563;--line:#ffffffa3;--surface:#ffffff80;--page:#e0f2fe;--ease-smooth:cubic-bezier(.22, 1, .36, 1)}*{box-sizing:border-box}body{color:var(--ink);overscroll-behavior-y:contain;background:var(--page);-webkit-font-smoothing:antialiased;min-height:100vh;margin:0;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,Roboto,sans-serif}body:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(80% 60% at 10% 10%,#93c5fd8c,#0000 55%),radial-gradient(70% 50% at 90% 15%,#4ade8052,#0000 50%),radial-gradient(60% 55% at 50% 95%,#fbbf2461,#0000 55%),linear-gradient(160deg,#dbeafe 0%,#e8f9ef 42%,#ffedd5 76%,#e0f2fe 100%);position:fixed;inset:0}html{-webkit-text-size-adjust:100%}button,input,textarea{font:inherit}button{cursor:pointer;-webkit-tap-highlight-color:transparent}button:disabled{cursor:not-allowed;opacity:.62}.shell{width:min(100%,512px);margin:0 auto;padding:0 0 112px}.singleFlow{max-width:720px}.topbar{z-index:20;-webkit-backdrop-filter:blur(18px)saturate(170%);background:#ffffffeb;border-bottom:1px solid #e5e7ebf2;justify-content:space-between;align-items:center;gap:12px;min-height:64px;padding:10px 16px;display:flex;position:sticky;top:0;box-shadow:0 1px 3px #0f172a0f}.compactTopbar{min-height:64px}.brand{align-items:center;gap:10px;min-width:0;display:flex}.brandMark{border:2px solid var(--red);background:#fff;border-radius:13px 13px 18px;flex:0 0 38px;place-items:center;width:38px;height:38px;display:grid;position:relative;transform:rotate(45deg)}.brandMark span{background:var(--green);border-radius:6px;width:18px;height:18px}.brandMark+div{min-width:0}.brand p,.sectionHead p{color:var(--orange-dark);text-transform:uppercase;margin:0 0 4px;font-size:11px;font-weight:700}.brand h1,.sectionHead h2{letter-spacing:0;margin:0}.brand h1{font-size:16px;line-height:1.18}.commentField{color:var(--muted);gap:7px;font-size:13px;font-weight:700;display:grid}input,textarea,select{width:100%;color:var(--ink);-webkit-backdrop-filter:blur(12px);background:#ffffff85;border:1px solid #ffffffa3;border-radius:18px;outline:none;padding:12px 14px;font-size:16px}input:focus,textarea:focus,select:focus{border-color:var(--green);box-shadow:0 0 0 3px #22a44729}.notice{margin-bottom:14px;margin-inline:16px;-webkit-backdrop-filter:blur(20px)saturate(170%);background:#ffffff80;border:1px solid #ffffffad;border-radius:20px;align-items:center;gap:10px;margin-top:14px;padding:12px 14px;font-weight:700;display:flex}.notice.success{color:var(--green-dark);border-color:#bde8c7}.notice.error{color:#b6273a;border-color:#ffd1d8}.notice.info{color:var(--green-dark);border-color:#cdebd5}.catalog,.orderPanel{-webkit-backdrop-filter:blur(20px)saturate(170%);background:#ffffff80;border:1px solid #ffffffb3;border-radius:24px;margin:16px;box-shadow:0 4px 24px #1f26870f,inset 0 1px #fffc}.catalog{min-height:420px;overflow:hidden}.orderPanel{gap:16px;padding:18px;display:grid}.cartPagePanel{position:static}.sectionHead{justify-content:space-between;align-items:center;gap:14px;padding:16px;display:flex}.sectionHead h2{font-size:20px}.iconButton,.submitButton,.squareButton,.addButton,.ghostButton{transition:transform .18s var(--ease-smooth), opacity .18s var(--ease-smooth), box-shadow .18s var(--ease-smooth);border:0;border-radius:18px;justify-content:center;align-items:center;gap:8px;display:inline-flex}.iconButton:active,.submitButton:active,.squareButton:active,.addButton:active,.ghostButton:active,.contractButton:active,.bottomNavLink:active{transform:scale(.97)}.contractButton.selected{background:#eff6ffad;border-color:#1976d2;box-shadow:0 8px 24px #1976d21f,inset 0 0 0 1px #1976d26b}.categoryBlock{gap:8px;display:grid}.categoryChevron{transition:transform .22s var(--ease-smooth)}.contractButton.selected .categoryChevron{transform:rotate(90deg)}.categoryExpandIcon{color:var(--muted);display:inline-flex}.categoryProducts{background:#ffffff52;border:1px solid #ffffff94;border-radius:20px;overflow:hidden;box-shadow:inset 0 1px 2px #ffffff6b}.categoryProducts .table{border-top:0}.categoryProducts .tableRow{padding-inline:12px}.contentFade{animation:contentFade .18s var(--ease-smooth)}.compactEmpty{min-height:132px}.iconButton{min-height:42px;color:var(--ink);-webkit-backdrop-filter:blur(12px);background:#ffffff5c;border:1px solid #ffffff94;padding:0 14px;font-weight:800;text-decoration:none;box-shadow:inset 0 1px 2px #ffffff8c}.topActions{align-items:center;gap:8px;display:flex}.cartLink{color:#fff;background:linear-gradient(135deg,#f97316eb,#ea580ce6);border-radius:18px;justify-content:center;align-items:center;gap:7px;min-width:54px;min-height:42px;font-weight:900;text-decoration:none;display:inline-flex;box-shadow:0 8px 24px #f9731640}.listPanel{-webkit-backdrop-filter:blur(20px)saturate(170%);background:#ffffff80;border:1px solid #ffffffb3;border-radius:24px;gap:10px;margin:16px;padding:10px;display:grid;box-shadow:0 4px 24px #1f26870f,inset 0 1px #fffc}.contractButton{width:100%;min-height:78px;color:var(--ink);text-align:left;-webkit-backdrop-filter:blur(12px);background:#ffffff5c;border:1px solid #ffffff8a;border-radius:20px;grid-template-columns:24px 44px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;display:grid;box-shadow:inset 0 1px 2px #ffffff80}.contractButton strong,.contractButton small{overflow-wrap:anywhere;display:block}.contractButton small{color:var(--muted);margin-top:3px}.contractIcon{width:44px;height:44px;color:var(--orange-dark);background:#ffffff5c;border:1px solid #ffffff7a;border-radius:16px;place-items:center;display:grid}.countPill{min-height:32px;color:var(--green-dark);white-space:nowrap;background:#22a44724;border-radius:999px;justify-content:center;align-items:center;padding:0 10px;font-size:12px;font-weight:900;display:inline-flex}.wideAction{width:100%;margin-top:12px}.table{border-top:1px solid #ffffff8f}.tableRow{border-bottom:1px solid #ffffff8f;grid-template-columns:minmax(180px,1fr) 112px 96px 126px 132px;align-items:center;gap:12px;min-height:64px;padding:10px 18px;display:grid}.tableHeader{min-height:44px;color:var(--muted);background:#ffffff42;font-size:13px;font-weight:800}.tableRow strong,.cartRow strong{overflow-wrap:anywhere;display:block}.tableRow small,.cartRow small,.muted{color:var(--muted)}.filterSelect,.groupBadge{max-width:260px;min-height:42px;color:var(--ink);padding-block:9px;font-size:14px;font-weight:800}.groupBadge{color:var(--green-dark);overflow-wrap:anywhere;background:#ffffff61;border:1px solid #ffffff94;border-radius:18px;align-items:center;gap:7px;padding:9px 12px;display:inline-flex}.inlineSectionHead{padding:0}.productCell strong{color:var(--ink);font-size:13px;font-weight:750;line-height:1.28}.productCell small{color:var(--muted);margin-top:6px;font-size:11px;font-weight:800;display:inline-flex}.quantityCell{background:#ffffff80;border-radius:18px;grid-template-columns:34px minmax(42px,1fr) 34px;align-items:center;min-height:42px;padding:4px;display:grid}.quantityCell strong{text-align:center;font-size:16px}.stepperButton{width:34px;height:34px;color:var(--ink);background:#ffffff9e;border:0;border-radius:14px;place-items:center;display:grid}.cartCounter{min-width:34px;height:34px;color:var(--green-dark);background:#22a44724;border-radius:999px;place-items:center;font-size:14px;display:grid}.addButton,.squareButton{color:#fff;background:linear-gradient(135deg,#f97316eb,#ea580ce6);width:42px;height:42px;box-shadow:0 8px 24px #f9731640}.addButton span{display:inline}.manualForm{grid-template-columns:minmax(0,1fr) 86px 42px;gap:8px;display:grid}.cartList{gap:10px;min-height:86px;display:grid}.cartRow{background:#ffffff5c;border:1px solid #ffffff8c;border-radius:20px;grid-template-columns:minmax(0,1fr) 78px 38px;align-items:center;gap:8px;padding:10px;display:grid;box-shadow:inset 0 1px 2px #ffffff73}.cartRow input{padding-inline:8px}.ghostButton{width:38px;height:38px;color:var(--red);background:#fff1f3b8}.summary{border-top:1px solid var(--line);justify-content:space-between;align-items:center;padding-top:16px;font-size:18px;display:flex}.submitButton{color:#fff;background:linear-gradient(135deg,#f97316f0,#ea580ce6);min-height:48px;font-weight:900;box-shadow:0 8px 24px #f9731647,inset 0 1px #ffffff59}.emptyState{min-height:300px;color:var(--muted);text-align:center;align-content:center;place-items:center;gap:10px;padding:24px;display:grid}.emptyState p{margin:0}.emptyAction{min-width:160px;padding-inline:18px;text-decoration:none}.bottomNav{pointer-events:none;inset-inline:0;z-index:40;padding:8px 16px calc(16px + env(safe-area-inset-bottom));position:fixed;bottom:0}.bottomNavInner{isolation:isolate;pointer-events:auto;border:1px solid #ffffffb3;border-radius:28px;gap:4px;width:min(100%,512px);margin:0 auto;padding:6px;display:flex;position:relative;overflow:hidden;box-shadow:0 12px 40px #1f268724}.bottomNavBlur{pointer-events:none;z-index:0;-webkit-backdrop-filter:blur(16px)saturate(180%);background:#ffffff75;position:absolute;inset:0}.bottomNavLink{z-index:1;min-height:56px;color:var(--muted);transition:color .22s var(--ease-smooth), background-color .22s var(--ease-smooth), transform .18s var(--ease-smooth), box-shadow .22s var(--ease-smooth);border:1px solid #0000;border-radius:22px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:4px;font-size:12px;font-weight:750;text-decoration:none;display:flex;position:relative}.bottomNavLink.active{color:#fff;-webkit-backdrop-filter:blur(12px);background:linear-gradient(135deg,#f97316eb,#ea580ce6);border-color:#ffffff59;box-shadow:0 8px 24px #f9731647,inset 0 1px #ffffff59}.bottomNavLink:not(.active):hover{background:#ffffff4d}.bottomNavIcon{display:inline-flex;position:relative}.bottomNavBadge{min-width:17px;height:17px;color:var(--orange-dark);background:#fff;border-radius:999px;justify-content:center;align-items:center;padding:0 5px;font-size:10px;font-weight:900;line-height:1;display:flex;position:absolute;top:-8px;right:-10px;box-shadow:0 2px 8px #0f172a1f}.spin{animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@keyframes contentFade{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@media (max-width:860px){.shell{width:100%;padding:0 0 148px}.topbar{grid-template-columns:1fr;display:grid}.catalog{min-height:0}.orderPanel{position:static}.listPanel{gap:8px;margin:12px;padding:8px}.categoryBlock{gap:6px}.categoryProducts{background:#ffffff3d;border-radius:18px}.contractButton{border-radius:20px;grid-template-columns:24px 28px minmax(0,1fr) auto;gap:10px;min-height:62px;padding:10px 12px}.contractIcon{background:0 0;border:0;width:28px;height:28px}.contractButton strong{font-size:14px;line-height:1.25}.contractButton small{font-size:12px}.countPill{grid-column:4/5;justify-self:end;min-height:30px;font-size:12px}.table{background:0 0;border-top:0;gap:8px;padding:8px;display:grid}.tableHeader{display:none}.tableRow{-webkit-backdrop-filter:blur(14px)saturate(160%);background:#ffffff9e;border:1px solid #fff9;border-radius:18px;grid-template-columns:minmax(0,1fr) 132px;grid-template-areas:"name name""price stock""qty add";gap:14px 12px;min-height:0;padding:14px;box-shadow:0 3px 14px #1f26870a,inset 0 1px #ffffffbf}.productCell{grid-area:name}.productCell strong{font-size:15px;font-weight:800;line-height:1.36}.productCell small{color:var(--muted);background:0 0;border-radius:0;margin-top:8px;padding:0;font-size:13px;font-weight:800;display:block}.priceCell,.stockCell{color:var(--ink);gap:3px;font-weight:800;display:grid}.priceCell{grid-area:price}.stockCell{text-align:right;grid-area:stock;justify-self:end}.priceCell:before,.stockCell:before{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:800}.priceCell:before{content:"Цена"}.stockCell:before{content:"Доступно"}.quantityCell{grid-area:qty;justify-self:start;width:148px}.addButton{border-radius:18px;grid-area:add;justify-self:end;width:132px;max-width:100%;height:48px;font-size:13px;font-weight:900;box-shadow:0 6px 18px #f9731638}.addButton span{display:inline}}@media (max-width:560px){.brand{align-items:flex-start}.brandMark{border-radius:13px 13px 18px;flex-basis:38px;width:38px;height:38px}.brand p,.sectionHead p{font-size:11px}.brand h1{font-size:16px}.topbar{gap:14px;min-height:64px}.notice{align-items:flex-start;padding:11px 12px;font-size:14px;line-height:1.35}.catalog,.orderPanel{border-radius:24px}.sectionHead{flex-direction:column;align-items:stretch;gap:10px}.sectionHead h2{font-size:19px}.iconButton{min-width:44px;min-height:44px;padding:0}.topActions{align-self:start}.cartLink{min-width:50px;min-height:44px}.tableRow{grid-template-columns:minmax(0,1fr) 128px;grid-template-areas:"name name""price stock""qty add";padding:12px}.quantityCell{width:140px}.addButton{width:128px}.iconButton span{display:none}.orderPanel,.sectionHead{padding:14px}.orderPanel{gap:14px}.manualForm{grid-template-columns:minmax(0,1fr) 76px 44px}.squareButton{width:44px;height:44px}.cartRow{grid-template-columns:minmax(0,1fr) 72px 40px;padding:9px}.commentField textarea{min-height:96px}.summary{font-size:16px}.submitButton{z-index:5;min-height:54px;position:sticky;bottom:10px;box-shadow:0 12px 30px #f9731647}}
