#page-stockfast { background:var(--ground); }
#productSheet.sf-building .form-group:has(#pCategory){display:block!important}
#productSheet.sf-building #sfBuildingQuickFields{display:grid;grid-template-columns:1fr 1fr;gap:8px}
#productSheet.sf-building #sfBuildingQuickFields .form-group{margin:0 0 8px}
#productSheet.sf-building #sfBuildingCatalogPick{margin:0 0 12px;min-height:48px}
@media(max-width:359px){#productSheet.sf-building #sfBuildingQuickFields{grid-template-columns:1fr}}
.sf-tools #sfSelectBtn.sf-bulk-ready{background:var(--brand-primary);color:#fff;border-color:var(--brand-primary)}
.sf-head { position:sticky; top:0; z-index:55; background:#fff; padding:12px 14px 9px; border-bottom:1px solid var(--border); }
.sf-title { display:flex; align-items:center; gap:10px; margin-bottom:10px; }
.sf-title h1 { flex:1; margin:0; font-size:19px; line-height:1.2; }
.sf-icon { width:44px; height:44px; display:grid; place-items:center; border:0; background:transparent; color:var(--brand-primary); border-radius:12px; }
.sf-icon:focus-visible,.sf-chip:focus-visible,.sf-row button:focus-visible { outline:2px solid var(--brand-primary); outline-offset:2px; }
.sf-search { display:block; width:100%; min-height:46px; box-sizing:border-box; border:1px solid var(--border); border-radius:12px; padding:0 14px; font:inherit; }
.sf-filters { display:flex; gap:7px; overflow-x:auto; padding:10px 0 2px; scrollbar-width:none; }
.sf-chip { flex:none; min-height:44px; border:1px solid var(--border); border-radius:99px; padding:0 15px; background:#fff; color:var(--text); font:inherit; font-size:13px; font-weight:650; }
.sf-chip.active { background:var(--brand-primary); border-color:var(--brand-primary); color:#fff; }
.sf-tools { display:flex; align-items:center; justify-content:space-between; gap:8px; padding:9px 14px; font-size:12px; color:var(--text-muted); }
.sf-tools button { min-height:44px; border:0; background:transparent; color:var(--brand-primary); font:inherit; font-weight:700; }
.sf-list { min-width:0; padding:0 12px 110px; display:grid; gap:8px; }
.sf-more { min-height:44px; border:1px solid var(--border); border-radius:10px; background:#fff; color:var(--brand-primary); font:inherit; font-weight:700; }
.sf-row { min-width:0; background:#fff; border:1px solid var(--border); border-radius:13px; padding:10px; min-height:100px; touch-action:pan-y; }
.sf-row.sf-pending { border-color:#B88C24; background:#FFFCF3; }
.sf-row.sf-conflict { border-color:var(--danger); background:#FFF7F7; }
.sf-row.sf-saved { border-color:#48A877; background:#F4FCF7; }
.sf-row.sf-saved .sf-note { color:#177245; font-weight:700; }
.sf-main { display:flex; align-items:center; gap:10px; min-width:0; }
.sf-photo { width:46px; height:46px; flex:none; object-fit:cover; border-radius:9px; background:var(--ground); }
.sf-photo-empty { width:46px; height:46px; flex:none; display:grid; place-items:center; border-radius:9px; background:var(--ground); color:var(--text-muted); }
.sf-name { flex:1; min-width:0; }
.sf-name strong { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:14px; }
.sf-name small { display:block; color:var(--text-muted); font-size:11px; margin-top:3px; }
.sf-status { flex:none; font-size:12px; font-weight:700; }
.sf-controls { display:flex; align-items:center; gap:6px; padding-left:56px; margin-top:6px; }
.sf-controls button,.sf-controls input { min-width:44px; height:44px; box-sizing:border-box; border:1px solid var(--border); border-radius:9px; background:#fff; color:var(--text); font:inherit; text-align:center; }
.sf-controls input { width:55px; }
.sf-controls .sf-zero { margin-left:auto; padding:0 10px; color:var(--danger); font-weight:700; }
.sf-controls .sf-color { flex:1; font-size:12px; padding:0 5px; }
.sf-controls .sf-color.active { background:var(--brand-primary); color:white; }
.sf-controls .sf-color[data-color=red].active { background:var(--danger); }
.sf-note { padding-left:56px; font-size:11px; color:var(--text-muted); margin-top:5px; }
.sf-note button { min-height:44px; border:0; background:transparent; color:var(--brand-primary); font:inherit; font-weight:700; }
.sf-undo { position:fixed; z-index:100; left:12px; right:12px; bottom:calc(var(--nav-height) + 12px); background:#1B2C42; color:#fff; border-radius:12px; min-height:48px; display:flex; align-items:center; justify-content:space-between; padding:0 12px; box-shadow:0 8px 24px #0003; }
.sf-undo button { min-height:44px; color:#fff; border:0; background:none; font:inherit; font-weight:750; }
.sf-dialog { position:fixed; inset:0; z-index:110; background:#0B1B2AB8; display:flex; align-items:flex-end; }
.sf-dialog-box { width:100%; max-height:88vh; overflow:auto; box-sizing:border-box; background:#fff; border-radius:18px 18px 0 0; padding:20px 16px max(20px,env(safe-area-inset-bottom)); }
.sf-dialog-box h2 { margin:0 0 8px; font-size:19px; }
.sf-dialog-box p { color:var(--text-muted); font-size:13px; }
.sf-dialog-box textarea { width:100%; min-height:90px; box-sizing:border-box; border:1px solid var(--border); border-radius:10px; padding:10px; font:inherit; }
.sf-dialog-box button { min-height:44px; }
.sf-home { margin:10px 12px; padding:14px; border:1px solid var(--border); border-radius:13px; background:#fff; }
.sf-home h2 { margin:0 0 7px; font-size:16px; }
.sf-home button { display:block; width:100%; text-align:left; border:0; border-top:1px solid var(--border); background:none; padding:10px 0; min-height:44px; font:inherit; }
.sf-home small { color:var(--text-muted); }
@media(max-width:430px){.sf-controls,.sf-note{padding-left:0}.sf-controls{justify-content:flex-end}}
@media(min-width:768px){.sf-head,.sf-list,.sf-tools,.sf-home{max-width:980px;margin-left:auto;margin-right:auto}.sf-dialog{align-items:center;justify-content:center}.sf-dialog-box{max-width:520px;border-radius:18px}}
@media(prefers-reduced-motion:reduce){.sf-row{animation:none!important;transition:none!important}}
