/* Single shared row layout: departure-domain and platform catalogues. */
body #app .shell .main .tev-order-composer :is(.tev-order-composer-product,.tev-platform-row){
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 94px 98px!important;
  grid-template-rows:32px!important;
  align-items:center!important;
  gap:8px!important;
  min-height:36px!important;
  padding:2px 0!important;
  border-top:0!important;
  border-bottom:1px solid var(--tev-border,#ddd6cb)!important;
  font-size:12px!important;
  line-height:1.2!important;
}
body #app .shell .main .tev-order-composer :is(.tev-order-composer-product,.tev-platform-row)>div:first-child{
  display:flex!important;
  align-items:center!important;
  flex-wrap:nowrap!important;
  gap:10px!important;
  min-width:0!important;
}
body #app .shell .main .tev-order-composer :is(.tev-order-cuvee-name,.tev-platform-cuvee-name){
  display:inline-flex!important;
  align-items:center!important;
  flex:0 1 auto!important;
  gap:6px!important;
  min-width:0!important;
  white-space:nowrap!important;
  font:400 12px/1.2 Inter,Arial,sans-serif!important;
  letter-spacing:0!important;
}
body #app .shell .main .tev-order-composer :is(.tev-order-cuvee-name>span:not(.tev-wine-color-dot):not(.tev-stock-marker),.tev-platform-cuvee-label){
  flex:0 1 auto;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
body #app .shell .main .tev-order-composer :is(.product-meta,.tev-platform-row-name>small){
  display:inline-flex!important;
  flex:0 0 auto!important;
  align-items:center!important;
  flex-wrap:nowrap!important;
  gap:6px!important;
  max-width:40%;
  min-width:0;
  margin:0 0 0 auto!important;
  padding:0!important;
  overflow:hidden;
  white-space:nowrap!important;
  font:400 10px/1.2 Inter,Arial,sans-serif!important;
  color:var(--tev-text-muted,#77736f)!important;
}
body #app .shell .main .tev-order-composer .product-meta>span{flex:none}
body #app .shell .main .tev-order-composer :is(.tev-wine-color-dot,.tev-platform-wine-dot){
  flex:0 0 8px!important;
  width:8px!important;
  height:8px!important;
  min-width:8px!important;
  border-radius:50%;
}
body #app .shell .main .tev-order-composer :is(.tev-stock-marker,.tev-platform-stock-marker){
  flex:0 0 11px!important;
  width:11px!important;
  height:9px!important;
  min-width:11px!important;
  margin:0!important;
}
body #app .shell .main .tev-order-composer :is(.tev-order-composer-product>.price,.tev-platform-row-price){
  display:flex!important;
  grid-column:2!important;
  grid-row:1!important;
  align-items:baseline!important;
  justify-content:flex-end!important;
  gap:3px!important;
  min-width:0;
  white-space:nowrap;
  font:400 12px/1.2 Inter,Arial,sans-serif!important;
}
body #app .shell .main .tev-order-composer :is(.tev-order-composer-product>.price,.tev-platform-row-price)>b{font:500 12px/1.2 Inter,Arial,sans-serif!important}
body #app .shell .main .tev-order-composer :is(.tev-order-composer-product>.price,.tev-platform-row-price)>small{
  display:inline!important;
  margin:0!important;
  font:400 9px/1.2 Inter,Arial,sans-serif!important;
  color:var(--tev-text-muted,#77736f);
}
body #app .shell .main .tev-order-composer :is(.tev-order-composer-product,.tev-platform-row)>.qty{
  display:flex!important;
  grid-column:3!important;
  grid-row:1!important;
  justify-content:flex-end!important;
  align-items:center!important;
  gap:5px!important;
  min-width:0;
}
body #app .shell .main .tev-order-composer :is(.tev-order-composer-product,.tev-platform-row)>.qty>button{
  display:grid!important;
  place-items:center;
  flex:0 0 27px;
  width:27px!important;
  height:27px!important;
  min-width:27px!important;
  min-height:27px!important;
  padding:0!important;
  border:1px solid var(--tev-border,#ddd6cb);
  border-radius:50%;
  background:#fff;
  font:400 12px/1 Inter,Arial,sans-serif!important;
}
body #app .shell .main .tev-order-composer :is(.tev-order-composer-product,.tev-platform-row)>.qty>b{
  min-width:22px;
  text-align:center;
  font:500 11px/1.2 Inter,Arial,sans-serif!important;
  font-variant-numeric:tabular-nums;
}
body #app .shell .main .tev-order-composer :is(.tev-order-composer-product,.tev-platform-row)>.qty>button:disabled{opacity:.35;cursor:not-allowed}
/* Shared domain cards and headers: one presentation for both delivery modes. */
body #app .shell .main .tev-order-composer>div:first-child{min-width:0}
body #app .shell .main .tev-order-composer :is(.tev-order-composer-domain,.tev-platform-domain){
  box-sizing:border-box!important;
  width:100%!important;
  min-width:0!important;
  margin:0 0 1px!important;
  padding:10px 12px!important;
  border:1px solid var(--tev-border,#ddd6cb)!important;
  border-radius:var(--tev-radius-card,14px)!important;
  background:var(--tev-surface,#fff)!important;
  box-shadow:none!important;
  overflow:hidden!important;
}
body #app .shell .main .tev-order-composer :is(.tev-order-domain-toggle,.tev-platform-domain-head){
  box-sizing:border-box!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  min-height:28px!important;
  margin:0!important;
  padding:0!important;
  cursor:pointer;
}
body #app .shell .main .tev-order-composer :is(.tev-order-domain-toggle,.tev-platform-domain-head)>div:first-child{
  display:flex!important;
  align-items:baseline!important;
  flex:1 1 auto!important;
  gap:9px!important;
  min-width:0!important;
}
body #app .shell .main .tev-order-composer :is(.tev-order-domain-toggle,.tev-platform-domain-head) h2{
  flex:0 1 auto;
  min-width:0;
  margin:0!important;
  padding:0!important;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font:700 17px/1.2 Inter,Arial,sans-serif!important;
  letter-spacing:0!important;
  text-transform:none!important;
  color:var(--tev-text,#171616)!important;
}
body #app .shell .main .tev-order-composer :is(.tev-order-domain-toggle,.tev-platform-domain-head)>div:first-child>:is(.muted,small){
  display:block!important;
  flex:0 1 auto;
  min-width:0;
  margin:0!important;
  padding:0!important;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font:400 11.5px/1.2 Inter,Arial,sans-serif!important;
  color:var(--tev-text-muted,#77736f)!important;
}
body #app .shell .main .tev-order-composer .tev-order-domain-head-right{
  display:flex!important;
  flex:0 0 auto!important;
  align-items:center!important;
  gap:7px!important;
}
body #app .shell .main .tev-order-composer :is(.tev-order-domain-chevron,.tev-platform-domain-head>.chev){
  display:block!important;
  flex:0 0 12px!important;
  width:12px!important;
  height:14px!important;
  text-align:center!important;
  font:400 14px/1 Inter,Arial,sans-serif!important;
  color:var(--tev-primary,#493494)!important;
  transition:transform .14s ease;
}
body #app .shell .main .tev-order-composer :is(.tev-order-composer-domain,.tev-platform-domain).is-collapsed :is(.tev-order-domain-chevron,.chev){transform:rotate(0deg)!important}
body #app .shell .main .tev-order-composer :is(.tev-order-composer-domain,.tev-platform-domain).is-open :is(.tev-order-domain-chevron,.chev){transform:rotate(180deg)!important}
@media(max-width:700px){
  body #app .shell .main .tev-order-composer :is(.tev-order-composer-product,.tev-platform-row){
    grid-template-columns:minmax(0,1fr) 78px 86px!important;
    gap:5px!important;
  }
  body #app .shell .main .tev-order-composer :is(.tev-order-composer-product,.tev-platform-row)>div:first-child{gap:5px!important}
  body #app .shell .main .tev-order-composer :is(.product-meta,.tev-platform-row-name>small){display:none!important}
  body #app .shell .main .tev-order-composer :is(.tev-order-composer-product,.tev-platform-row)>.qty{gap:3px!important}
}
