/* UI-r43 — unified icon/button visual language.
   Scope: visual normalization only. Matches first onboarding screens: orange line icons, white/gray surfaces, single primary CTA. */
:root{
  --kr-ui-accent:#ff6a00;
  --kr-ui-accent-2:#ff8a2a;
  --kr-ui-text:#101821;
  --kr-ui-muted:#5e646d;
  --kr-ui-surface:#ffffff;
  --kr-ui-soft:#f5f5f6;
  --kr-ui-line:rgba(15,23,42,.10);
  --kr-ui-shadow:0 10px 26px rgba(17,24,39,.08);
  --kr-ui-radius:20px;
  --kr-ui-radius-sm:14px;
}

/* Interface icons: neutralize random colored emoji boxes without touching uploaded media. */
:where(
  .catalog-tool-btn__ico,.mo-search-ico,.services-app-card__ico,.services-app-service__ico,
  .services-app-icon,.services-app-option-ico,.services-app-confirm-ico,
  .client-cabinet-ico,.cabinet-ico,.cabinet-stat-ico,.mcab-ico,.sto-dash-ico,
  .ccab-ico,.ccab-stat-ico,.ccab-chip-ico,.onb2-role-ico,
  .bottom-nav .nav-icon,.nav-ico,.drawer-ico,.profile-ico,.order-ico,
  .btn-ico,.button-ico,.icon-btn__ico
){
  color:var(--kr-ui-accent)!important;
  background:linear-gradient(180deg,rgba(255,106,0,.10),rgba(255,106,0,.04))!important;
  border:1px solid rgba(255,106,0,.16)!important;
  box-shadow:none!important;
  text-shadow:none!important;
  filter:none!important;
  border-radius:16px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 auto!important;
}

:where(
  .catalog-tool-btn__ico,.mo-search-ico,.services-app-card__ico,.services-app-service__ico,
  .services-app-icon,.services-app-option-ico,.services-app-confirm-ico,
  .client-cabinet-ico,.cabinet-ico,.cabinet-stat-ico,.mcab-ico,.sto-dash-ico,
  .ccab-ico,.ccab-stat-ico,.ccab-chip-ico,.bottom-nav .nav-icon,.nav-ico,.drawer-ico,
  .profile-ico,.order-ico,.btn-ico,.button-ico,.icon-btn__ico
){
  width:44px!important;
  height:44px!important;
  min-width:44px!important;
  font-size:20px!important;
  line-height:1!important;
}

/* SVG icons inherit the orange line style from onboarding role screen. */
:where(.services-app-card__ico,.services-app-service__ico,.client-cabinet-ico,.cabinet-ico,.mcab-ico,.sto-dash-ico,.nav-ico,.drawer-ico,.btn-ico) svg{
  width:22px!important;
  height:22px!important;
  color:var(--kr-ui-accent)!important;
  stroke:currentColor!important;
  fill:none!important;
}

/* Remove multicolor decorative gradients from action buttons; keep semantic danger visible. */
:where(
  .btn,.flow-btn,.ui-btn,.catalog-tool-btn,.mo-search-submit,.mo-search-clear,
  .services-app-cta,.services-app-btn,.services-app-action,.services-app-sheet button,
  .ccab-btn,.cabinet-btn,.mcab-btn,.sto-btn,.profile-action-btn,.order-action-btn
){
  min-height:44px;
  border-radius:16px!important;
  font-weight:850!important;
  letter-spacing:-.02em;
  box-shadow:none!important;
  text-decoration:none!important;
  text-shadow:none!important;
  transition:transform .16s ease, background .16s ease, border-color .16s ease, color .16s ease!important;
}

:where(
  .btn-primary,.flow-btn--primary,.ui-btn--primary,.services-app-cta,.services-app-btn--primary,
  .ccab-btn--primary,.cabinet-btn--primary,.mcab-btn--primary,.sto-btn--primary,
  .profile-action-btn--primary,.order-action-btn--primary,.mo-search-submit
){
  background:linear-gradient(180deg,var(--kr-ui-accent-2),var(--kr-ui-accent))!important;
  color:#fff!important;
  border:1px solid rgba(255,106,0,.42)!important;
  box-shadow:0 10px 20px rgba(255,106,0,.16)!important;
}

:where(
  .btn-outline,.btn-secondary,.flow-btn--secondary,.ui-btn--secondary,.services-app-btn--secondary,
  .ccab-btn--secondary,.cabinet-btn--secondary,.mcab-btn--secondary,.sto-btn--secondary,
  .profile-action-btn,.order-action-btn,.catalog-tool-btn,.services-app-action
):not(.btn-primary):not(.flow-btn--primary){
  background:rgba(255,255,255,.88)!important;
  color:var(--kr-ui-text)!important;
  border:1px solid var(--kr-ui-line)!important;
}

:where(.btn-danger,.ui-btn--danger,.order-action-btn--danger){
  background:#fff!important;
  color:#b42318!important;
  border:1px solid rgba(180,35,24,.24)!important;
}

:where(.btn,.flow-btn,.ui-btn,.catalog-tool-btn,.mo-search-submit,.services-app-cta,.services-app-btn,.ccab-btn,.cabinet-btn,.mcab-btn,.sto-btn,.profile-action-btn,.order-action-btn):active{
  transform:translateY(1px) scale(.995)!important;
}

/* Cards and panels: first-screen style — white surfaces, soft border, no random neon. */
:where(
  .services-app-card,.services-app-service,.services-app-option,.services-app-sheet,
  .ccab-card,.ccab-panel,.cabinet-card,.cabinet-panel,.mcab-card,.mcab-panel,
  .sto-card,.sto-panel,.profile-card,.order-card
){
  background:rgba(255,255,255,.88)!important;
  border:1px solid var(--kr-ui-line)!important;
  box-shadow:var(--kr-ui-shadow)!important;
  border-radius:var(--kr-ui-radius)!important;
}

/* Text guards for tablet: no icon/text collision. */
:where(
  .services-app-card,.services-app-service,.services-app-option,
  .ccab-card,.cabinet-card,.mcab-card,.sto-card,.profile-card,.order-card,
  .catalog-tool-btn,.services-app-action,.ccab-btn,.cabinet-btn,.mcab-btn,.sto-btn
) :where(b,strong,span,p,small,h1,h2,h3,h4){
  min-width:0;
  overflow-wrap:anywhere;
  word-break:normal;
}

@media (min-width:768px){
  :where(.catalog-tool-btn__ico,.mo-search-ico,.services-app-card__ico,.services-app-service__ico,.client-cabinet-ico,.cabinet-ico,.mcab-ico,.sto-dash-ico,.nav-ico,.drawer-ico){
    width:48px!important;
    height:48px!important;
    min-width:48px!important;
    font-size:21px!important;
  }
  :where(.btn,.flow-btn,.ui-btn,.catalog-tool-btn,.services-app-cta,.services-app-btn,.ccab-btn,.cabinet-btn,.mcab-btn,.sto-btn){
    min-height:48px;
    padding-inline:18px;
  }
}

@media (max-width:430px){
  :where(.catalog-tool-btn__ico,.mo-search-ico,.services-app-card__ico,.services-app-service__ico,.client-cabinet-ico,.cabinet-ico,.mcab-ico,.sto-dash-ico,.nav-ico,.drawer-ico){
    width:40px!important;
    height:40px!important;
    min-width:40px!important;
    border-radius:14px!important;
    font-size:18px!important;
  }
  :where(.btn,.flow-btn,.ui-btn,.catalog-tool-btn,.services-app-cta,.services-app-btn,.ccab-btn,.cabinet-btn,.mcab-btn,.sto-btn){
    min-height:44px;
    border-radius:14px!important;
  }
}
