/* CLIENT-CABINET-r42 — post-onboarding client cabinet visual/tablet polish.
   Scope: client cabinet only. No onboarding/API/DB logic changes. */

:root{
  --client-r42-max:1280px;
  --client-r42-line:rgba(15,23,42,.08);
  --client-r42-card:#fff;
  --client-r42-bg:#f6f7f8;
  --client-r42-orange:#ff6a00;
  --client-r42-shadow:0 18px 44px rgba(15,23,42,.08);
  --client-r42-soft-shadow:0 10px 26px rgba(15,23,42,.055);
}

body[data-role="client"] .cab-hero,
body[data-role="client"] .cab-pane{
  background:var(--client-r42-bg);
}

body[data-role="client"] .cab-hero .container,
body[data-role="client"] .cab-pane>.container{
  width:min(100% - 28px,var(--client-r42-max));
  max-width:var(--client-r42-max);
  margin-left:auto;
  margin-right:auto;
  box-sizing:border-box;
}

body[data-role="client"] .cab-profile-row{
  position:relative;
  overflow:hidden;
  border:1px solid var(--client-r42-line);
  background:
    radial-gradient(circle at 12% 10%, rgba(255,106,0,.18), transparent 34%),
    linear-gradient(135deg,#fff 0%,#fff7f1 48%,#fff 100%);
  border-radius:26px;
  box-shadow:var(--client-r42-shadow);
  min-width:0;
}

body[data-role="client"] .cab-profile-row::after{
  content:'';
  position:absolute;
  right:-74px;
  bottom:-96px;
  width:260px;
  height:260px;
  border-radius:999px;
  background:rgba(255,106,0,.08);
  pointer-events:none;
}

body[data-role="client"] .cab-profile-row>*{
  position:relative;
  z-index:1;
}

body[data-role="client"] .cab-profile-info,
body[data-role="client"] .cab-profile-meta,
body[data-role="client"] .cab-profile-actions,
body[data-role="client"] .cab-mini-stats,
body[data-role="client"] .cst-grid,
body[data-role="client"] .cst-orders,
body[data-role="client"] .profile-form,
body[data-role="client"] .hist-list,
body[data-role="client"] .notif-list{
  min-width:0;
}

body[data-role="client"] .cab-name{
  overflow-wrap:anywhere;
  hyphens:auto;
  color:#0f1720;
}

body[data-role="client"] .cab-profile-meta{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
}

body[data-role="client"] .cab-phone-chip,
body[data-role="client"] .cab-car-chip,
body[data-role="client"] .rbadge{
  max-width:100%;
  min-width:0;
  overflow-wrap:anywhere;
  white-space:normal;
}

body[data-role="client"] .cab-profile-actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:10px;
}

body[data-role="client"] .cab-profile-actions .btn,
body[data-role="client"] .cab-profile-actions .logout-btn,
body[data-role="client"] .cab-role-btn{
  min-height:42px;
  border-radius:14px;
  white-space:normal;
  overflow-wrap:anywhere;
}

body[data-role="client"] .cab-mini-stats{
  display:grid;
  gap:12px;
}

body[data-role="client"] .cab-ms-item,
body[data-role="client"] .cst-card,
body[data-role="client"] .profile-form-card,
body[data-role="client"] .hist-item,
body[data-role="client"] .notif-item,
body[data-role="client"] .loy-hero,
body[data-role="client"] .card{
  min-width:0;
}

body[data-role="client"] .cab-ms-item,
body[data-role="client"] .cst-card{
  border-radius:22px;
  border:1px solid var(--client-r42-line)!important;
  background:var(--client-r42-card)!important;
  box-shadow:var(--client-r42-soft-shadow)!important;
}

body[data-role="client"] .cst-card-val,
body[data-role="client"] .cab-ms-num,
body[data-role="client"] .loy-hero-pts{
  overflow-wrap:anywhere;
}

body[data-role="client"] .cst-order-row,
body[data-role="client"] .hist-item,
body[data-role="client"] .notif-item{
  min-width:0;
  gap:12px;
  align-items:flex-start;
}

body[data-role="client"] .cst-order-body,
body[data-role="client"] .notif-content{
  min-width:0;
}

body[data-role="client"] .cst-order-name,
body[data-role="client"] .cst-order-meta,
body[data-role="client"] .cst-order-price,
body[data-role="client"] .hist-title,
body[data-role="client"] .hist-meta,
body[data-role="client"] .hist-price,
body[data-role="client"] .notif-title,
body[data-role="client"] .notif-text,
body[data-role="client"] .notif-time{
  max-width:100%;
  overflow-wrap:anywhere;
  word-break:normal;
}

body[data-role="client"] .profile-form-card{
  border-radius:24px;
  border:1px solid var(--client-r42-line)!important;
  box-shadow:var(--client-r42-shadow)!important;
  overflow:hidden;
}

body[data-role="client"] .profile-form{
  display:grid;
  gap:14px;
}

body[data-role="client"] .pf-group,
body[data-role="client"] .pf-input,
body[data-role="client"] .push-banner{
  min-width:0;
  box-sizing:border-box;
}

body[data-role="client"] .pf-input{
  width:100%;
  min-height:48px;
  border-radius:16px!important;
  overflow-wrap:anywhere;
}

body[data-role="client"] .pf-label,
body[data-role="client"] .pfc-title,
body[data-role="client"] .push-banner-t,
body[data-role="client"] .push-banner-s{
  overflow-wrap:anywhere;
}

body[data-role="client"] .pf-save{
  min-height:48px;
  border-radius:16px;
}

body[data-role="client"] .loy-hero{
  overflow:hidden;
  border-radius:28px;
  border:1px solid var(--client-r42-line)!important;
  box-shadow:var(--client-r42-shadow)!important;
}

body[data-role="client"] .loy-hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}

body[data-role="client"] .loy-hero-actions .btn{
  flex:1 1 180px;
  min-height:46px;
  white-space:normal;
}

@media (max-width:767px){
  body[data-role="client"] .cab-hero .container,
  body[data-role="client"] .cab-pane>.container{
    width:100%;
    max-width:100%;
    padding-left:12px;
    padding-right:12px;
  }

  body[data-role="client"] .cab-profile-row{
    display:grid;
    grid-template-columns:64px minmax(0,1fr);
    gap:12px;
    padding:16px;
    border-radius:22px;
  }

  body[data-role="client"] .cab-profile-actions{
    grid-column:1 / -1;
    justify-content:stretch;
  }

  body[data-role="client"] .cab-profile-actions .btn,
  body[data-role="client"] .cab-profile-actions .logout-btn,
  body[data-role="client"] .cab-role-btn{
    flex:1 1 140px;
  }

  body[data-role="client"] .cab-mini-stats,
  body[data-role="client"] .cst-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  body[data-role="client"] .cab-mini-stats--max3 .cab-ms-item:first-child{
    grid-column:1 / -1;
  }

  body[data-role="client"] .cst-order-row{
    grid-template-columns:36px minmax(0,1fr);
  }

  body[data-role="client"] .cst-order-price{
    grid-column:2;
    justify-self:start;
  }
}

@media (min-width:768px){
  body[data-role="client"] .cab-hero .container,
  body[data-role="client"] .cab-pane>.container{
    width:min(100% - 48px,var(--client-r42-max));
  }

  body[data-role="client"] .cab-profile-row{
    display:grid;
    grid-template-columns:92px minmax(0,1fr) minmax(220px,auto);
    align-items:center;
    gap:22px;
    padding:24px;
  }

  body[data-role="client"] .cab-avatar,
  body[data-role="client"] .cab-avatar--photo{
    width:84px!important;
    height:84px!important;
    flex-basis:84px!important;
  }

  body[data-role="client"] .cab-name{
    font-size:clamp(28px,3.2vw,42px)!important;
    line-height:1.05!important;
  }

  body[data-role="client"] .cab-mini-stats,
  body[data-role="client"] .cst-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }

  body[data-role="client"] .cst-grid{
    gap:16px;
  }

  body[data-role="client"] .cab-pane-layout{
    display:grid;
    grid-template-columns:minmax(0,1fr);
    gap:18px;
  }

  body[data-role="client"] .profile-form{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  body[data-role="client"] .profile-form > div:last-child,
  body[data-role="client"] .push-banner{
    grid-column:1 / -1;
  }

  body[data-role="client"] .pf-input{
    min-height:54px;
    font-size:16px;
  }

  body[data-role="client"] .hist-item{
    display:grid;
    grid-template-columns:10px minmax(0,1fr) auto;
  }
}

@media (min-width:1024px){
  body[data-role="client"] .cab-hero .container,
  body[data-role="client"] .cab-pane>.container{
    width:min(100% - 72px,var(--client-r42-max));
  }

  body[data-role="client"] .cab-profile-row{
    grid-template-columns:104px minmax(0,1fr) minmax(260px,auto);
    gap:28px;
    padding:30px;
    border-radius:32px;
  }

  body[data-role="client"] .cab-avatar,
  body[data-role="client"] .cab-avatar--photo{
    width:96px!important;
    height:96px!important;
    flex-basis:96px!important;
  }

  body[data-role="client"] .cab-mini-stats,
  body[data-role="client"] .cst-grid{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }

  body[data-role="client"] .cab-mini-stats--max3{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }

  body[data-role="client"] .profile-form-card{
    padding:28px!important;
  }

  body[data-role="client"] .profile-form{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:16px;
  }

  body[data-role="client"] .profile-form > div:last-child,
  body[data-role="client"] .push-banner{
    grid-column:1 / -1;
  }

  body[data-role="client"] .cst-orders,
  body[data-role="client"] .hist-list,
  body[data-role="client"] .notif-list{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
  }

  body[data-role="client"] .cst-empty,
  body[data-role="client"] .empty-state{
    grid-column:1 / -1;
  }
}

@media (min-width:1200px){
  body[data-role="client"] .cab-hero .container,
  body[data-role="client"] .cab-pane>.container{
    width:min(100% - 96px,var(--client-r42-max));
  }

  body[data-role="client"] .profile-form-card{
    border-radius:30px;
  }
}

@media (min-width:768px) and (orientation:landscape) and (max-height:760px){
  body[data-role="client"] .cab-profile-row{
    padding-top:16px!important;
    padding-bottom:16px!important;
  }

  body[data-role="client"] .cab-avatar,
  body[data-role="client"] .cab-avatar--photo{
    width:68px!important;
    height:68px!important;
    flex-basis:68px!important;
  }

  body[data-role="client"] .cab-name{
    font-size:clamp(23px,2.8vw,32px)!important;
  }

  body[data-role="client"] .cab-mini-stats,
  body[data-role="client"] .cst-grid{
    gap:10px;
  }

  body[data-role="client"] .cab-ms-item,
  body[data-role="client"] .cst-card{
    padding-top:12px!important;
    padding-bottom:12px!important;
  }
}
