#sheetCatalog,#cleanMaterialCatalog,#materialDbList{
  contain:none!important;
  height:min(62vh,640px)!important;
  max-height:min(62vh,640px)!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
}
@media(max-width:720px){
  #price #sheetCatalog,
  #price #cleanMaterialCatalog,
  #materials-db #materialDbList,
  #sheetCatalog,#cleanMaterialCatalog,#materialDbList{
    height:min(42dvh,360px)!important;
    min-height:180px!important;
    max-height:min(42dvh,360px)!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch!important;
  }
  #materials-db .material-db-filters,
  .material-db-filters{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    min-width:0!important;
    max-width:100%!important;
  }
  #materials-db .material-db-filters input,
  #materials-db .material-db-filters select,
  #materialDbCategory,#materialDbSearch{
    min-width:0!important;
    width:100%!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }
}
.vh-mat-pager{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:4px;
  margin:8px 0 0;
}
.vh-mat-pager:empty{display:none}
#price #sheetCatalogPager.vh-mat-pager{
  flex:0 0 auto!important;
  flex-shrink:0!important;
  min-height:32px!important;
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
  margin:6px 0 0!important;
  padding:2px 0 4px!important;
}
#price .vh-mat-pager button,
#materials-db .vh-mat-pager button,
.vh-mat-pager .vh-mat-page{
  box-sizing:border-box!important;
  flex:0 0 auto;
  min-width:26px!important;
  width:auto!important;
  height:26px!important;
  padding:0 7px!important;
  border:1px solid rgba(72,137,171,.28)!important;
  border-radius:8px!important;
  background:transparent!important;
  color:#c9d8e4!important;
  font-size:11px!important;
  font-weight:650!important;
  line-height:24px!important;
  box-shadow:none!important;
  cursor:pointer;
}
#price .vh-mat-pager button.is-active,
#materials-db .vh-mat-pager button.is-active,
.vh-mat-pager .vh-mat-page.is-active{
  background:rgba(255,189,54,.14)!important;
  border-color:#ffbd36!important;
  color:#ffbd36!important;
  font-weight:800!important;
}
#price .vh-mat-pager button:disabled,
#materials-db .vh-mat-pager button:disabled,
.vh-mat-pager .vh-mat-page:disabled{
  opacity:.32!important;
  cursor:default!important;
}
.vh-mat-pager .vh-mat-page-gap{
  min-width:12px;
  padding:0 2px;
  color:#8fa8b8;
  font-size:11px;
  line-height:26px;
}
html:not([data-theme="dark"]) #price .vh-mat-pager button,
html:not([data-theme="dark"]) #materials-db .vh-mat-pager button{
  border-color:var(--vh-line)!important;
  color:var(--vh-text)!important;
  background:transparent!important;
}
@media(max-width:720px){
  .vh-mat-pager{
    overflow-x:auto;
    flex-wrap:nowrap;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:thin;
  }
}
.vh-mat-source-banner{
  margin:8px 0 10px;
  padding:8px 10px;
  border-radius:8px;
  font-size:13px;
  line-height:1.35;
}
.vh-mat-source-banner.is-base{background:rgba(46,160,90,.12)}
.vh-mat-source-banner.is-shop{background:rgba(47,110,212,.12)}
.vh-mat-line-src{
  display:block;
  font-size:11px;
  opacity:.8;
  margin-top:2px;
}

/* Смета и база материалов: одна строка фильтров */
#price .vh-mat-source-banner,
#price #sheetSourceBanner,
#price #sheetCalcSourceNote{
  display:none!important;
}
#materials-db .material-db-kind-tabs,
#materials-db [data-material-db-kind]{
  display:none!important;
}
#price .vh-mat-toolbar,
#materials-db .vh-mat-toolbar{
  display:flex!important;
  flex-wrap:nowrap!important;
  align-items:flex-end!important;
  gap:8px!important;
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
  margin:0 0 10px!important;
  padding:8px 10px!important;
  border:1px solid rgba(68,126,158,.24)!important;
  border-radius:14px!important;
  background:#0c1d2a!important;
  overflow:visible!important;
  position:relative;
  z-index:8;
}
#price .calc-layout>.card:first-child>.card-head,
#price .calc-layout>.card:first-child>.vh-mat-toolbar{
  flex:0 0 auto!important;
}
#price #sheetPaneRough.active,
#price #sheetPaneClean.active{
  display:flex!important;
  flex-direction:column!important;
  flex:1 1 auto!important;
  min-height:0!important;
  overflow:hidden!important;
  position:relative;
  z-index:1;
}
#price #sheetCatalog,
#price #cleanMaterialCatalog{
  flex:1 1 auto!important;
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
}
.vh-mat-field{
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  gap:5px;
  min-width:0;
}
.vh-mat-field>span,
.vh-mat-field-spacer{
  display:block;
  height:12px!important;
  min-height:12px!important;
  line-height:12px!important;
  color:#9fb4c3!important;
  font-size:10px!important;
  font-weight:800!important;
  text-transform:uppercase!important;
  letter-spacing:.04em!important;
  white-space:nowrap!important;
  overflow:hidden;
  margin:0;
}
.vh-mat-field-spacer{visibility:hidden}
.vh-mat-field-supplier{
  flex:0 0 250px!important;
  min-width:240px!important;
  max-width:260px!important;
}
.vh-mat-field-category{
  flex:0 0 180px!important;
  min-width:160px!important;
  max-width:190px!important;
}
.vh-mat-field-search{
  flex:1 1 320px!important;
  min-width:260px!important;
  max-width:none!important;
}
.vh-mat-field-status{
  flex:0 0 150px!important;
  min-width:140px!important;
  max-width:170px!important;
}
.vh-mat-field-btn{
  flex:0 0 auto!important;
}
#price .vh-mat-toolbar select,
#price .vh-mat-toolbar input,
#materials-db .vh-mat-toolbar select,
#materials-db .vh-mat-toolbar input,
#price .vh-mat-toolbar .vh-mat-tool-btn,
#materials-db .vh-mat-toolbar .vh-mat-tool-btn,
#materials-db .vh-mat-db-count{
  height:38px!important;
  min-height:38px!important;
  max-height:38px!important;
  box-sizing:border-box!important;
  border:1px solid rgba(72,137,171,.35)!important;
  border-radius:10px!important;
  font-size:12px!important;
}
#price .vh-mat-toolbar select,
#price .vh-mat-toolbar input,
#materials-db .vh-mat-toolbar select,
#materials-db .vh-mat-toolbar input{
  background:#102838!important;
  color:#eef7fb!important;
  padding:0 11px!important;
  min-width:0!important;
  width:100%!important;
}
#price .vh-mat-field-supplier select,
#materials-db .vh-mat-field-supplier select{
  overflow:hidden;
  text-overflow:clip;
}
#price .vh-mat-toolbar .vh-mat-tool-btn,
#materials-db .vh-mat-toolbar .vh-mat-tool-btn{
  width:auto!important;
  flex:0 0 auto!important;
  white-space:nowrap!important;
  padding:0 12px!important;
  cursor:pointer;
  background:var(--vh-surface,#0c1426)!important;
  color:var(--vh-text,#fff)!important;
}
#materials-db #materialDbAddBaseBtn{
  background:#c98524!important;
  border-color:#d89a3d!important;
  color:#fff8ea!important;
}
#materials-db #materialDbAddBaseBtn[hidden]{
  display:none!important;
}
.vh-mat-field-btn:has(#materialDbAddBaseBtn[hidden]){
  display:none!important;
}
#price #materialFavoritesBtn.is-active{
  background:#ffbd36!important;
  color:#102538!important;
  border-color:#ffbd36!important;
  font-weight:800!important;
}
.vh-mat-db-count{
  min-height:38px!important;
  height:38px!important;
  max-height:38px!important;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:0;
  padding:0 10px!important;
  border-radius:10px;
  border:1px solid rgba(72,137,171,.28);
  background:#102431;
  color:#c9d8e4;
  line-height:1.15;
  overflow:hidden;
}
.vh-mat-db-count.is-base{background:rgba(46,160,90,.12);border-color:rgba(46,160,90,.28);color:#d7f5e3}
.vh-mat-db-count.is-shop{background:rgba(47,110,212,.12);border-color:rgba(47,110,212,.28);color:#d7e8ff}
.vh-mat-db-count-name,
.vh-mat-db-count-num{
  display:block;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  font-size:11px;
  font-weight:700;
}
.vh-mat-db-count-num{opacity:.9;font-size:10px}

.vh-template-dropdown{
  position:relative;
  flex:0 0 auto;
  overflow:visible!important;
}
.vh-template-dropdown-list{
  position:absolute;
  top:calc(100% + 6px);
  right:0;
  left:auto;
  min-width:280px;
  max-height:min(280px,42vh);
  overflow:auto;
  z-index:90;
  padding:8px;
  border:1px solid rgba(68,126,158,.28);
  border-radius:12px;
  background:#0c1d2a;
  box-shadow:0 14px 32px rgba(0,0,0,.42);
}
.vh-template-empty{
  padding:12px 10px;
  color:#9fb4c3;
  font-size:12px;
  text-align:center;
}
.vh-template-item{
  display:flex;
  align-items:center;
  gap:6px;
  margin-bottom:6px;
}
.vh-template-item:last-child{margin-bottom:0}
.vh-template-pick{
  flex:1 1 auto;
  min-width:0;
  height:36px;
  border:1px solid rgba(72,137,171,.32);
  border-radius:10px;
  background:#102838;
  color:#eef7fb;
  padding:0 11px;
  font-size:12px;
  text-align:left;
  cursor:pointer;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.vh-template-pick:hover{border-color:#36a9d6;background:#123249}
.vh-template-item .small-btn{
  flex:0 0 36px;
  width:36px;
  min-width:36px;
  height:36px;
  padding:0!important;
}

#price .supplier-material-card-title,
#materials-db .supplier-material-card-title{
  display:flex!important;
  align-items:flex-start!important;
  gap:8px!important;
}
#price .supplier-material-card-title .favorite-star{
  flex:0 0 auto;
  margin:0;
  padding:0;
  border:0;
  background:transparent;
  box-shadow:none;
  line-height:1;
  font-size:17px;
  cursor:pointer;
  min-width:0;
  height:auto;
  color:#ffbd36;
  opacity:.4;
}
#price .supplier-material-card-title .favorite-star.active{
  opacity:1;
  color:#ffbd36;
}

html:not([data-theme="dark"]) #price .vh-mat-toolbar,
html:not([data-theme="dark"]) #materials-db .vh-mat-toolbar,
html:not([data-theme="dark"]) .vh-template-dropdown-list{
  background:var(--vh-surface-2,#f3f6fa)!important;
  border-color:var(--vh-line)!important;
}
html:not([data-theme="dark"]) #price .vh-mat-toolbar select,
html:not([data-theme="dark"]) #price .vh-mat-toolbar input,
html:not([data-theme="dark"]) #materials-db .vh-mat-toolbar select,
html:not([data-theme="dark"]) #materials-db .vh-mat-toolbar input,
html:not([data-theme="dark"]) .vh-template-pick,
html:not([data-theme="dark"]) .vh-mat-db-count{
  background:var(--vh-input,#fff)!important;
  color:var(--vh-text)!important;
  border-color:var(--vh-line)!important;
}
html:not([data-theme="dark"]) .vh-mat-field>span{
  color:var(--vh-muted)!important;
}

@media(max-width:1180px){
  #price .vh-mat-toolbar,
  #materials-db .vh-mat-toolbar{
    flex-wrap:wrap!important;
    overflow:visible!important;
  }
  .vh-mat-field-supplier,
  .vh-mat-field-category,
  .vh-mat-field-status{
    flex:1 1 180px!important;
    min-width:160px!important;
    max-width:100%!important;
  }
  .vh-mat-field-search{
    flex:1 1 280px!important;
    min-width:220px!important;
    max-width:100%!important;
  }
}
@media(max-width:720px){
  .vh-mat-field,
  .vh-mat-field-supplier,
  .vh-mat-field-category,
  .vh-mat-field-search,
  .vh-mat-field-status,
  #price .vh-mat-tool-btn,
  #materials-db #materialDbAddBaseBtn,
  .vh-template-dropdown{
    flex:1 1 100%!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
  }
  .vh-template-dropdown-list{
    left:0;
    right:0;
    min-width:0;
  }
}
