/* r247 — interface finish pass: one visual language without heavy mobile tables */
:root{
  --ui-font-main: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --ui-text-strong: #0f172a;
  --ui-text-body: #1f2937;
  --ui-text-muted: #64748b;
  --ui-surface-clean: #ffffff;
  --ui-surface-soft: #f8fafc;
  --ui-surface-warm: #fffaf5;
  --ui-border-soft: rgba(15, 23, 42, .09);
  --ui-border-strong: rgba(15, 23, 42, .14);
  --ui-shadow-soft: 0 14px 34px rgba(15,23,42,.08);
  --ui-shadow-card: 0 10px 24px rgba(15,23,42,.07);
  --ui-shadow-active: 0 16px 38px rgba(255,107,0,.16);
  --ui-radius-card: var(--radius-card, 22px);
  --ui-radius-control: var(--radius-control, 16px);
  --ui-page-gap: clamp(14px, 1.6vw, 28px);
  --ui-card-pad: clamp(14px, 1.35vw, 22px);
  --ui-readable-max: 1480px;
  --ui-wide-max: 1720px;
}
:root[data-theme="dark"], body.dark, body.theme-dark{
  --ui-text-strong:#f8fafc;
  --ui-text-body:#e2e8f0;
  --ui-text-muted:#a8b3c7;
  --ui-surface-clean:#101827;
  --ui-surface-soft:#0f172a;
  --ui-surface-warm:#17120e;
  --ui-border-soft:rgba(226,232,240,.12);
  --ui-border-strong:rgba(226,232,240,.18);
  --ui-shadow-soft:0 16px 40px rgba(0,0,0,.34);
  --ui-shadow-card:0 12px 30px rgba(0,0,0,.30);
}
html{font-family:var(--ui-font-main);}
body{color:var(--ui-text-body);background:linear-gradient(180deg,#fff 0%,#f8fafc 100%);} 
body.dark, body.theme-dark{background:linear-gradient(180deg,#08111f 0%,#0f172a 100%);}

/* Common page rhythm for old and new page containers. */
.page-shell,
.masters-content,
.msng-full-page,
.parts-page,
.myorders-page,
.admin-page,
.cabinet-page,
.legal-page{
  color:var(--ui-text-body);
}
.container,
.page-container{
  width:min(100% - 32px, 1890px);
}
.page-content,
.masters-grid,
.parts-grid-v2,
.home-catalog__grid,
.msng-page-sections,
#mo-list,
.cab-tabs,
.mprof-tabs{
  gap:var(--ui-page-gap);
}

/* Hero blocks should feel related, not like separate sites. */
.page-hero,
.spa-hero-body,
.msng-hero,
.home-hero,
.legal-hero,
.cab-hero,
.parts-hero,
.admin-hero{
  color:var(--ui-text-body)!important;
  background:
    radial-gradient(circle at top left, rgba(255,107,0,.16), transparent 34%),
    linear-gradient(135deg, var(--ui-surface-clean), var(--ui-surface-soft))!important;
  border:1px solid var(--ui-border-soft)!important;
  border-radius:var(--ui-radius-card)!important;
  box-shadow:var(--ui-shadow-soft)!important;
}
.page-hero h1,.page-hero h2,
.spa-hero-body h1,.spa-hero-body h2,
.msng-hero h1,.home-hero h1,.legal-hero h1,
.cab-hero h1,.parts-hero h1,.admin-hero h1{
  color:var(--ui-text-strong)!important;
  letter-spacing:-.03em;
  line-height:1.05;
}
.page-hero p,.spa-hero-body p,.msng-hero p,.home-hero p,.legal-hero p,
.cab-hero p,.parts-hero p,.admin-hero p{
  color:var(--ui-text-muted)!important;
  line-height:1.55;
}
.spa-hero-ico,.page-hero__icon,.nav-link-ico{
  background:linear-gradient(135deg, rgba(255,107,0,.16), rgba(255,176,94,.22));
  color:#9a3f00;
  border:1px solid rgba(255,107,0,.20);
}
body.dark .spa-hero-ico, body.theme-dark .spa-hero-ico,
body.dark .page-hero__icon, body.theme-dark .page-hero__icon,
body.dark .nav-link-ico, body.theme-dark .nav-link-ico{color:#ffd7ad;background:rgba(255,107,0,.18);}

/* Shared surface cards: readable, crisp, consistent. */
.surface-card,
.card,
.mo-card.card,
.msng-item.msng-item--v2,
.master-card,
.master-contact-row.reveal.in,
.parts-category-card,
.hcat-card,
.legal-info-card,
.legal-rich-stat,
.cab-tab,
.mprof-tab,
.ui-data-card,
.notifs-item,
.garage-history-item,
.spec-svc-item{
  color:var(--ui-text-body)!important;
  background:linear-gradient(180deg, var(--ui-surface-clean), var(--ui-surface-soft))!important;
  border:1px solid var(--ui-border-soft)!important;
  border-radius:var(--ui-radius-card)!important;
  box-shadow:var(--ui-shadow-card)!important;
}
.surface-card:hover,
.mo-card.card:hover,
.msng-item.msng-item--v2:hover,
.master-card:hover,
.parts-category-card:hover,
.hcat-card:hover,
.legal-info-card:hover,
.legal-rich-stat:hover,
.cab-tab:hover,
.mprof-tab:hover,
.spec-svc-item:hover{
  border-color:rgba(255,107,0,.24)!important;
  box-shadow:var(--ui-shadow-active)!important;
}
.card h1,.card h2,.card h3,.card h4,
.mo-card h3,.msng-item h3,.master-card h3,.parts-category-card h3,
.hcat-card h3,.legal-info-card h3,.legal-rich-stat h3,.cab-tab-title,.mprof-tab-title{
  color:var(--ui-text-strong)!important;
}
.card p,.card small,.card .meta,.card .muted,
.mo-card .meta,.msng-item .meta,.master-card .meta,.parts-category-card .meta,
.hcat-card p,.legal-info-card p,.legal-rich-stat p,.cab-tab-desc,.mprof-tab-desc{
  color:var(--ui-text-muted)!important;
}

/* Sticky toolbars: identical behavior, device-specific scale. */
.page-sticky-tools,
.masters-sticky-tools,
.msng-sticky-tools,
.myorders-sticky-tools,
.parts-sticky-tools{
  color:var(--ui-text-body)!important;
  background:rgba(255,255,255,.88)!important;
  border:1px solid var(--ui-border-soft)!important;
  border-radius:var(--ui-radius-card)!important;
  box-shadow:0 12px 28px rgba(15,23,42,.08)!important;
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
}
body.dark .page-sticky-tools, body.dark .masters-sticky-tools,
body.dark .msng-sticky-tools, body.dark .myorders-sticky-tools, body.dark .parts-sticky-tools,
body.theme-dark .page-sticky-tools, body.theme-dark .masters-sticky-tools,
body.theme-dark .msng-sticky-tools, body.theme-dark .myorders-sticky-tools, body.theme-dark .parts-sticky-tools{
  background:rgba(15,23,42,.88)!important;
}
.mo-filter-tab,
.mo-search-action,
.msng-filter-action{
  min-height:38px;
  color:var(--ui-text-body)!important;
  border:1px solid var(--ui-border-soft)!important;
  background:var(--ui-surface-clean)!important;
  border-radius:var(--ui-radius-control)!important;
  font-weight:750;
}
.mo-filter-tab.active,
.mo-filter-tab.is-active,
.mo-search-action.active,
.mo-search-action[aria-expanded="true"]{
  color:#fff!important;
  background:linear-gradient(135deg, var(--orange, #ff6b00), #ff9f43)!important;
  border-color:rgba(255,107,0,.42)!important;
  box-shadow:0 10px 22px rgba(255,107,0,.22)!important;
}
.mo-filter-cnt{background:rgba(15,23,42,.08);color:var(--ui-text-strong);}
.mo-filter-tab.active .mo-filter-cnt{background:rgba(255,255,255,.22);color:#fff;}

/* Buttons and forms. */
.btn,.ui-btn,button,input[type="button"],input[type="submit"]{
  border-radius:var(--ui-radius-control);
}
.btn-primary,.ui-btn--primary,.svc-urgent-cta:not([disabled]){
  color:#fff!important;
  background:linear-gradient(135deg, var(--orange, #ff6b00), #ff9f43)!important;
  border-color:rgba(255,107,0,.48)!important;
  box-shadow:0 12px 24px rgba(255,107,0,.22)!important;
}
.btn-outline,.ui-btn--secondary{
  color:var(--ui-text-strong)!important;
  background:var(--ui-surface-clean)!important;
  border:1px solid var(--ui-border-soft)!important;
}
input,textarea,select,.pf-input,.ui-input,.ui-textarea,.ui-select{
  color:var(--ui-text-strong)!important;
  background:var(--ui-surface-clean)!important;
  border:1px solid var(--ui-border-soft)!important;
  border-radius:var(--ui-radius-control)!important;
}
input::placeholder, textarea::placeholder{color:var(--ui-text-muted)!important;opacity:.85;}

/* Tables: only ergonomic on desktop; cards remain default for touch devices. */
.ui-table,.admin-table,.data-table{
  width:100%;
  border-collapse:separate;
  border-spacing:0 8px;
  color:var(--ui-text-body);
}
.ui-table th,.admin-table th,.data-table th{
  color:var(--ui-text-muted);
  font-size:13px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.04em;
  padding:0 14px 4px;
}
.ui-table td,.admin-table td,.data-table td{
  background:var(--ui-surface-clean);
  border-top:1px solid var(--ui-border-soft);
  border-bottom:1px solid var(--ui-border-soft);
  padding:14px;
}
.ui-table td:first-child,.admin-table td:first-child,.data-table td:first-child{border-left:1px solid var(--ui-border-soft);border-radius:var(--ui-radius-md,10px) 0 0 var(--ui-radius-md,10px);}
.ui-table td:last-child,.admin-table td:last-child,.data-table td:last-child{border-right:1px solid var(--ui-border-soft);border-radius:0 var(--ui-radius-md,10px) var(--ui-radius-md,10px) 0;}

/* Modal unification. */
.ui-modal-overlay,.cmodal-overlay,.cab-pane-modal-overlay,.spec-svc-overlay,.legal-detail-modal-overlay{
  background:rgba(15,23,42,.58)!important;
  backdrop-filter:blur(8px);
}
.ui-modal-card,.cmodal-card,.cmodal-box,.cab-pane-modal-card,.mprof-pane-modal-card,.legal-detail-modal-card,.spec-svc-panel{
  color:var(--ui-text-body)!important;
  background:var(--ui-surface-clean)!important;
  border:1px solid var(--ui-border-soft)!important;
  border-radius:var(--ui-radius-card)!important;
  box-shadow:0 28px 80px rgba(15,23,42,.24)!important;
}
.cmodal-head,.ui-modal-head,.cab-pane-modal-head,.mprof-pane-modal-head{
  border-bottom:1px solid var(--ui-border-soft);
}
.cmodal-body,.ui-modal-body,.cab-pane-modal-body,.mprof-pane-modal-body{color:var(--ui-text-body);}

/* Empty states and loaders. */
.empty-state,.msng-empty-cta,.msng-empty-preview,.msng-chat-empty,.notifs-empty{
  color:var(--ui-text-body)!important;
  background:linear-gradient(180deg, var(--ui-surface-clean), var(--ui-surface-soft))!important;
  border:1px dashed var(--ui-border-strong)!important;
  border-radius:var(--ui-radius-card)!important;
}
.empty-state h3,.msng-empty-cta h3,.msng-chat-empty h3{color:var(--ui-text-strong)!important;}
.empty-state p,.msng-empty-cta p,.msng-chat-empty p{color:var(--ui-text-muted)!important;}

/* Message media and bubbles should not break the layout. */
.msng-messages{color:var(--ui-text-body);}
.msng-bubble{max-width:min(680px, 86%);}
.msng-bubble.file-bubble img,.msng-bubble.file-bubble video{
  max-width:min(100%, 520px)!important;
  height:auto!important;
  border-radius:var(--ui-radius-control)!important;
  display:block;
}

/* Device versions. */
@media (max-width: 767px){
  :root{--ui-card-pad:14px;--ui-page-gap:12px;}
  .container,.page-container{width:min(100% - 20px, 100%);}
  .page-hero,.spa-hero-body,.home-hero,.legal-hero,.cab-hero,.parts-hero,.admin-hero{
    padding:16px!important;
    border-radius:var(--ui-radius-lg,18px)!important;
  }
  .page-hero h1,.spa-hero-body h1,.home-hero h1,.legal-hero h1{font-size:clamp(20px, 6vw, 24px)!important;}
  .page-hero p,.spa-hero-body p,.home-hero p,.legal-hero p{font-size:14px!important;}
  .masters-sticky-tools,.msng-sticky-tools,.myorders-sticky-tools,.parts-sticky-tools{
    padding:8px!important;
    gap:8px!important;
    border-radius:var(--ui-radius-lg,18px)!important;
  }
  .mo-filter-tab,.mo-search-action{font-size:12px!important;padding:7px 8px!important;min-height:34px;}
  .surface-card,.card,.mo-card.card,.msng-item.msng-item--v2,.master-card,.parts-category-card,.hcat-card,.cab-tab,.mprof-tab,.spec-svc-item{
    padding:14px!important;
    border-radius:var(--ui-radius-lg,18px)!important;
  }
  .ui-table,.admin-table,.data-table{display:none!important;}
  .ui-data-card{display:block!important;}
}
@media (min-width: 768px) and (max-width: 1023px){
  .container,.page-container{width:min(100% - 28px, 100%);}
  .masters-grid,.parts-grid-v2,.home-catalog__grid,#mo-list,.msng-page-sections,.cab-tabs,.mprof-tabs{
    display:grid;
    grid-template-columns:repeat(2, minmax(0,1fr))!important;
  }
  .ui-table,.admin-table,.data-table{display:none!important;}
  .ui-data-card{display:block!important;}
}
@media (min-width:1024px) and (max-width:1439px){
  .masters-grid,.parts-grid-v2,.home-catalog__grid{max-width:1320px;margin-inline:auto;}
  .msng-page-sections,#mo-list{max-width:1180px;margin-inline:auto;}
  .page-sticky-tools,.masters-sticky-tools,.msng-sticky-tools,.myorders-sticky-tools,.parts-sticky-tools{max-width:1180px;margin-inline:auto;}
}
@media (min-width:1440px){
  .masters-grid,.parts-grid-v2,.home-catalog__grid{max-width:1540px;margin-inline:auto;}
  .msng-page-sections,#mo-list{max-width:1480px;margin-inline:auto;}
  .page-sticky-tools,.masters-sticky-tools,.msng-sticky-tools,.myorders-sticky-tools,.parts-sticky-tools{max-width:1480px;margin-inline:auto;}
  .admin-wide-layout,.page-wide-layout{display:grid;grid-template-columns:minmax(420px, .9fr) minmax(0,1.4fr);gap:24px;align-items:start;}
}

/* r248 — stable card heights + services mobile 2-up + adaptive myorders search */
:root{
  --k-card-min-service-mobile: 86px;
  --k-card-min-service-tablet: 128px;
  --k-card-min-standard: 148px;
  --k-card-min-compact: 104px;
}

/* Equalize cards inside grids without stretching single-column mobile lists into awkward blocks. */
.home-catalog__grid,
.masters-grid,
.parts-grid-v2,
.cab-tabs,
.mprof-tabs,
.legal-rich-grid,
.legal-info-grid{
  align-items:stretch!important;
  grid-auto-rows:1fr!important;
}

.home-catalog__grid > *,
.masters-grid > *,
.parts-grid-v2 > *,
.cab-tabs > *,
.mprof-tabs > *,
.legal-rich-grid > *,
.legal-info-grid > *{
  height:100%!important;
  box-sizing:border-box!important;
}

.hcat-card.hcat-card--standard,
.master-card,
.parts-category-card,
.cab-tab,
.mprof-tab,
.legal-rich-stat,
.legal-info-card{
  min-height:var(--k-card-min-standard)!important;
}

.msng-item.msng-item--v2,
.mo-card.card,
.master-contact-row.reveal.in{
  min-height:var(--k-card-min-compact)!important;
  box-sizing:border-box!important;
}

/* Services page uses renderHome(), but body is kareta-page-services. Keep service cards 2-up on phones. */
@media (max-width:767px){
  body.kareta-page-services .home-catalog__grid,
  body.kareta-page-home .home-catalog__grid{
    display:grid!important;
    grid-template-columns:repeat(2, minmax(0, 1fr))!important;
    gap:10px!important;
    align-items:stretch!important;
    grid-auto-rows:1fr!important;
    padding-inline:0!important;
  }

  body.kareta-page-services .hcat-card.hcat-card--standard,
  body.kareta-page-home .hcat-card.hcat-card--standard{
    min-height:var(--k-card-min-service-mobile)!important;
    height:100%!important;
    padding:11px 10px!important;
    border-radius:var(--ui-radius-card)!important;
    display:grid!important;
    grid-template-columns:auto minmax(0,1fr)!important;
    grid-template-areas:"ico body"!important;
    align-items:center!important;
    gap:9px!important;
    text-align:left!important;
  }

  body.kareta-page-services .hcat-card.hcat-card--standard .hcat-card__top,
  body.kareta-page-home .hcat-card.hcat-card--standard .hcat-card__top{
    grid-area:ico!important;
    width:auto!important;
    margin:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
  }

  body.kareta-page-services .hcat-card.hcat-card--standard .hcat-icon,
  body.kareta-page-home .hcat-card.hcat-card--standard .hcat-icon{
    width:34px!important;
    height:34px!important;
    min-width:34px!important;
    border-radius:var(--ui-radius-md,10px)!important;
    font-size:16px!important;
    margin:0!important;
  }

  body.kareta-page-services .hcat-card.hcat-card--standard .hcat-body,
  body.kareta-page-home .hcat-card.hcat-card--standard .hcat-body{
    grid-area:body!important;
    width:100%!important;
    min-width:0!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    align-items:flex-start!important;
    gap:3px!important;
  }

  body.kareta-page-services .hcat-card.hcat-card--standard .hcat-label,
  body.kareta-page-home .hcat-card.hcat-card--standard .hcat-label{
    width:100%!important;
    margin:0!important;
    font-size:13px!important;
    line-height:1.16!important;
    font-weight:900!important;
    text-align:left!important;
    color:var(--ui-text-strong)!important;
    display:-webkit-box!important;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden!important;
  }

  body.kareta-page-services .hcat-card.hcat-card--standard .hcat-count,
  body.kareta-page-services .hcat-card.hcat-card--standard .hcat-sub,
  body.kareta-page-services .hcat-card.hcat-card--standard .hcat-price,
  body.kareta-page-services .hcat-card.hcat-card--standard .hcat-badges,
  body.kareta-page-services .hcat-card.hcat-card--standard .hcat-examples,
  body.kareta-page-services .hcat-card.hcat-card--standard .hcat-arrow,
  body.kareta-page-home .hcat-card.hcat-card--standard .hcat-count,
  body.kareta-page-home .hcat-card.hcat-card--standard .hcat-sub,
  body.kareta-page-home .hcat-card.hcat-card--standard .hcat-price,
  body.kareta-page-home .hcat-card.hcat-card--standard .hcat-badges,
  body.kareta-page-home .hcat-card.hcat-card--standard .hcat-examples,
  body.kareta-page-home .hcat-card.hcat-card--standard .hcat-arrow{
    display:none!important;
  }

  /* On phones the applications search must be already expanded, not hidden behind the button. */
  .mo-search-action[data-search-scope="myorders"]{
    width:100%!important;
    gap:6px!important;
  }
  .mo-search-action[data-search-scope="myorders"] .mo-search-toggle{
    display:none!important;
  }
  .mo-search-action[data-search-scope="myorders"] .mo-search-panel,
  .mo-search-action[data-search-scope="myorders"] .mo-search-panel[hidden]{
    display:flex!important;
    width:100%!important;
    padding:7px!important;
    border-radius:var(--ui-radius-md,10px)!important;
  }
  .mo-search-action[data-search-scope="myorders"] .mo-search-input{
    height:38px!important;
    font-size:14px!important;
  }

  /* Keep non-grid list cards readable instead of artificially tall. */
  .msng-item.msng-item--v2,
  .mo-card.card,
  .master-contact-row.reveal.in{
    min-height:auto!important;
  }
}

@media (min-width:768px) and (max-width:1023px){
  .hcat-card.hcat-card--standard,
  .master-card,
  .parts-category-card,
  .cab-tab,
  .mprof-tab{
    min-height:var(--k-card-min-service-tablet)!important;
  }
  .mo-search-action[data-search-scope="myorders"] .mo-search-toggle{display:flex!important;}
  .mo-search-action[data-search-scope="myorders"] .mo-search-panel[hidden]{display:none!important;}
}

@media (min-width:1024px){
  .hcat-card.hcat-card--standard,
  .master-card,
  .parts-category-card,
  .cab-tab,
  .mprof-tab{
    min-height:156px!important;
  }
  .mo-search-action[data-search-scope="myorders"] .mo-search-toggle{display:flex!important;}
  .mo-search-action[data-search-scope="myorders"] .mo-search-panel[hidden]{display:none!important;}
}

/* r249 — final card rhythm and responsive grid stabilization
   Goal: cards must not visually float by height; phone remains light, tablet/desktop get predictable blocks. */
:root{
  --k-card-h-phone: 104px;
  --k-card-h-phone-compact: 82px;
  --k-card-h-tablet: 142px;
  --k-card-h-desktop: 158px;
  --k-card-h-wide: 168px;
  --k-list-card-min: 118px;
}

/* Stable rows for real grid/card menus. List screens keep natural height unless explicitly grouped. */
.home-catalog__grid,
.masters-grid,
.parts-grid-v2,
.cab-tabs,
.mprof-tabs,
.car-grid,
.admin-master-grid,
.legal-rich-stats,
.legal-info-grid{
  align-items:stretch!important;
  grid-auto-rows:1fr!important;
}

.home-catalog__grid > *,
.masters-grid > *,
.parts-grid-v2 > *,
.cab-tabs > *,
.mprof-tabs > *,
.car-grid > *,
.admin-master-grid > *,
.legal-rich-stats > *,
.legal-info-grid > *{
  height:100%!important;
  min-height:0;
}

.hcat-card.hcat-card--standard,
.master-card,
.parts-category-card,
.cab-tab,
.cab-tab-card,
.mprof-tab,
.legal-rich-stat,
.legal-info-card,
.admin-master-card{
  box-sizing:border-box!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:space-between!important;
  overflow:hidden!important;
}

.hcat-card .hcat-label,
.parts-category-card__title,
.master-card__name,
.master-card__title,
.cab-tab-title,
.mprof-tab-label,
.legal-info-card h3,
.legal-rich-stat strong,
.mo-card-title,
.msng-item-title{
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
}

.hcat-card .hcat-label,
.parts-category-card__title,
.cab-tab-title,
.mprof-tab-label{
  -webkit-line-clamp:2!important;
}

.master-card__name,
.master-card__title,
.legal-info-card h3,
.legal-rich-stat strong,
.mo-card-title,
.msng-item-title{
  -webkit-line-clamp:1!important;
}

.parts-category-card__desc,
.master-card__desc,
.master-card__sub,
.cab-tab-desc,
.mprof-tab-desc,
.legal-info-card p,
.mo-card-car,
.msng-item-sub{
  overflow:hidden!important;
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
}

@media (max-width:767px){
  /* Services/home categories: exactly 2 compact cards per row on phones. */
  body.kareta-page-services .home-catalog__grid,
  body.kareta-page-home .home-catalog__grid{
    display:grid!important;
    grid-template-columns:repeat(2, minmax(0,1fr))!important;
    gap:9px!important;
    grid-auto-rows:minmax(var(--k-card-h-phone-compact), auto)!important;
  }

  body.kareta-page-services .hcat-card.hcat-card--standard,
  body.kareta-page-home .hcat-card.hcat-card--standard{
    min-height:var(--k-card-h-phone-compact)!important;
    height:100%!important;
    padding:10px!important;
  }

  /* Functional card menus: phone stays compact, not tall desktop cards. */
  .cab-tabs,
  .mprof-tabs{
    display:grid!important;
    grid-template-columns:repeat(2, minmax(0,1fr))!important;
    gap:10px!important;
  }
  .cab-tab,
  .cab-tab-card,
  .mprof-tab{
    min-height:var(--k-card-h-phone)!important;
    padding:12px!important;
  }

  .parts-grid-v2,
  .masters-grid,
  .car-grid,
  .admin-master-grid,
  .legal-info-grid{
    grid-auto-rows:auto!important;
  }
  .master-card,
  .parts-category-card,
  .legal-info-card,
  .admin-master-card{
    min-height:auto!important;
  }

  /* Orders search is a field on phone, not another tap. */
  body.kareta-page-myorders .mo-search-action[data-search-scope="myorders"],
  body[data-kareta-active-page="myorders"] .mo-search-action[data-search-scope="myorders"]{
    width:100%!important;
  }
  body.kareta-page-myorders .mo-search-action[data-search-scope="myorders"] .mo-search-toggle,
  body[data-kareta-active-page="myorders"] .mo-search-action[data-search-scope="myorders"] .mo-search-toggle{
    display:none!important;
  }
  body.kareta-page-myorders .mo-search-action[data-search-scope="myorders"] .mo-search-panel,
  body.kareta-page-myorders .mo-search-action[data-search-scope="myorders"] .mo-search-panel[hidden],
  body[data-kareta-active-page="myorders"] .mo-search-action[data-search-scope="myorders"] .mo-search-panel,
  body[data-kareta-active-page="myorders"] .mo-search-action[data-search-scope="myorders"] .mo-search-panel[hidden]{
    display:flex!important;
    width:100%!important;
    min-width:0!important;
  }
}

@media (min-width:768px) and (max-width:1023px){
  .home-catalog__grid,
  .parts-grid-v2,
  .masters-grid{
    grid-auto-rows:minmax(var(--k-card-h-tablet), auto)!important;
  }
  .hcat-card.hcat-card--standard,
  .master-card,
  .parts-category-card,
  .cab-tab,
  .cab-tab-card,
  .mprof-tab{
    min-height:var(--k-card-h-tablet)!important;
  }
  body.kareta-page-myorders .mo-search-action[data-search-scope="myorders"] .mo-search-toggle{display:flex!important;}
  body.kareta-page-myorders .mo-search-action[data-search-scope="myorders"] .mo-search-panel[hidden]{display:none!important;}
}

@media (min-width:1024px) and (max-width:1439px){
  .home-catalog__grid,
  .parts-grid-v2,
  .masters-grid,
  .cab-tabs,
  .mprof-tabs{
    grid-auto-rows:minmax(var(--k-card-h-desktop), auto)!important;
  }
  .hcat-card.hcat-card--standard,
  .master-card,
  .parts-category-card,
  .cab-tab,
  .cab-tab-card,
  .mprof-tab{
    min-height:var(--k-card-h-desktop)!important;
  }
}

@media (min-width:1440px){
  .home-catalog__grid,
  .parts-grid-v2,
  .masters-grid,
  .cab-tabs,
  .mprof-tabs{
    grid-auto-rows:minmax(var(--k-card-h-wide), auto)!important;
  }
  .hcat-card.hcat-card--standard,
  .master-card,
  .parts-category-card,
  .cab-tab,
  .cab-tab-card,
  .mprof-tab{
    min-height:var(--k-card-h-wide)!important;
  }
}

/* Lists: uniform rhythm without forcing every order/chat to the same large height. */
#mo-list,
.msng-page-sections{
  align-items:stretch!important;
}
.mo-card.card,
.msng-item.msng-item--v2,
.master-contact-row.reveal.in{
  box-sizing:border-box!important;
  width:100%!important;
}
@media (min-width:1024px){
  .mo-card.card,
  .msng-item.msng-item--v2,
  .master-contact-row.reveal.in{
    min-height:var(--k-list-card-min)!important;
  }
}

/* r263: expanded client primary navigation */
@media (max-width: 900px){
  #bottom-nav[data-role="client"] .bnav-inner[data-count="7"]{
    overflow-x:auto;
    overflow-y:hidden;
    justify-content:flex-start;
    gap:4px;
    padding:0 8px;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
    scroll-snap-type:x proximity;
  }
  #bottom-nav[data-role="client"] .bnav-inner[data-count="7"]::-webkit-scrollbar{display:none;}
  #bottom-nav[data-role="client"] .bnav-inner[data-count="7"] .bnav-item{
    flex:0 0 clamp(54px, 14.25vw, 72px);
    min-width:54px;
    max-width:72px;
    margin:4px 0;
    padding:5px 3px;
    scroll-snap-align:center;
  }
  #bottom-nav[data-role="client"] .bnav-inner[data-count="7"] .bnav-icon-wrap{width:34px;height:26px;}
  #bottom-nav[data-role="client"] .bnav-inner[data-count="7"] .bnav-icon{font-size:17px;}
  #bottom-nav[data-role="client"] .bnav-inner[data-count="7"] .bnav-label{
    max-width:100%;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    font-size:9px;
    line-height:1.05;
  }
}
@media (min-width: 901px){
  .nav-links .nav-link--primary{
    min-width:0;
  }
  .nav-links .nav-link--primary .nav-link-label{
    white-space:nowrap;
  }
}
