/* Бортум 0.13.0 — landing controls, report tables, navigation and mobile UX */
:root{
  --bt-font:Manrope,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --bt-hero-title-size:72px;
  --bt-hero-title-mobile:46px;
  --bt-hero-title-weight:800;
  --bt-hero-title-line:.94;
  --bt-hero-title-tracking:-.04em;
  --bt-landing-pad-x:5vw;
  --bt-landing-pad-top:22px;
  --bt-hero-gap:36px;
  --bt-car-scale:1;
  --bt-feature-gap:20px;
}
html,body,button,input,textarea,select{font-family:var(--bt-font)!important}
.bt-root [hidden],.bt-app[hidden],.bt-welcome[hidden]{display:none!important}

/* Guest landing: one viewport, visually grouped rather than pushed to the bottom. */
.bt-welcome:not([hidden]){height:100dvh;overflow:hidden;grid-template-columns:110px minmax(0,1fr)}
.bt-welcome .bt-landing{
  height:100dvh!important;
  padding:var(--bt-landing-pad-top) var(--bt-landing-pad-x) 26px!important;
  display:grid!important;
  grid-template-rows:44px auto auto!important;
  align-content:center!important;
  gap:clamp(22px,3vh,34px)!important;
  overflow:hidden!important;
}
.bt-landing-login{position:absolute;right:var(--bt-landing-pad-x);top:20px}
.bt-landing-stage{
  width:min(1360px,100%);
  height:auto!important;
  min-height:0;
  grid-template-columns:minmax(420px,.9fr) minmax(500px,1.1fr)!important;
  gap:var(--bt-hero-gap)!important;
  align-items:center!important;
  overflow:visible!important;
}
.bt-landing-stage h1{
  max-width:720px!important;
  font-family:var(--bt-font)!important;
  font-size:min(var(--bt-hero-title-size),max(42px,5vw))!important;
  font-weight:var(--bt-hero-title-weight)!important;
  line-height:var(--bt-hero-title-line)!important;
  letter-spacing:var(--bt-hero-title-tracking)!important;
  text-wrap:balance;
}
.bt-landing-stage p{max-width:590px;margin:22px 0 28px!important}
.bt-approved-car{
  width:100%;
  height:clamp(340px,43vh,520px)!important;
  min-height:0!important;
  overflow:visible!important;
  display:flex;
  align-items:center;
  justify-content:center;
  isolation:isolate;
}
.bt-approved-car::before{display:none!important}
.bt-approved-car img{
  width:min(100%,760px)!important;
  height:100%!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center!important;
  transform:scale(var(--bt-car-scale));
  transform-origin:center;
  mix-blend-mode:multiply;
  clip-path:none!important;
  border-radius:0!important;
}
.bt-welcome .bt-feature-row{width:min(1240px,100%);gap:var(--bt-feature-gap)!important;margin:0 auto!important}
.bt-welcome .bt-feature-row article{min-height:108px!important}
.bt-guest-fab{
  position:fixed;right:30px;bottom:26px;z-index:30;width:58px;height:58px;border:0;border-radius:50%;
  display:grid;place-items:center;background:var(--bt-step-lime);color:#10140d;font-size:24px;cursor:pointer;
  box-shadow:0 16px 42px rgba(183,255,0,.34);transition:transform .18s ease,box-shadow .18s ease;
}
.bt-guest-fab:hover{transform:translateY(-2px) scale(1.03);box-shadow:0 20px 48px rgba(183,255,0,.42)}

/* Sidebar brand in compact and expanded states. */
.bt-wordmark--app{position:relative;min-height:44px;display:flex!important;justify-content:center!important;align-items:center!important}
.bt-wordmark--app i{position:absolute;top:2px;left:50%;width:16px!important;transform:translateX(-50%);background:var(--bt-step-lime)}
.bt-wordmark--app b{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:rgba(255,255,255,.045);color:#fff;font-size:22px;line-height:1}
.bt-wordmark--app span{display:none!important}
.bt-app.is-sidebar-expanded .bt-wordmark--app{justify-content:flex-start!important;gap:9px;padding-left:6px}
.bt-app.is-sidebar-expanded .bt-wordmark--app i{left:7px;transform:none}
.bt-app.is-sidebar-expanded .bt-wordmark--app b{display:none}
.bt-app.is-sidebar-expanded .bt-wordmark--app span{display:inline!important}

/* Topbar controls. */
.bt-topbar__actions{display:flex;align-items:center;gap:10px}
.bt-topbar__actions .bt-icon-button{position:relative}
.bt-icon-button.is-loading svg{animation:bt-control-spin .8s linear infinite}
@keyframes bt-control-spin{to{transform:rotate(360deg)}}

/* Tooltips for controls. */
[data-tooltip]{position:relative}
[data-tooltip]::after{
  content:attr(data-tooltip);position:absolute;z-index:300;left:50%;bottom:calc(100% + 10px);transform:translate(-50%,6px);
  width:max-content;max-width:240px;padding:8px 10px;border-radius:10px;background:#101720;color:#fff;font-size:12px;line-height:1.25;
  box-shadow:0 10px 28px rgba(0,0,0,.18);opacity:0;visibility:hidden;pointer-events:none;transition:.16s ease;white-space:normal;text-align:center;
}
[data-tooltip]::before{content:"";position:absolute;z-index:301;left:50%;bottom:calc(100% + 4px);border:6px solid transparent;border-top-color:#101720;transform:translateX(-50%);opacity:0;visibility:hidden;transition:.16s ease}
[data-tooltip]:hover::after,[data-tooltip]:focus-visible::after,[data-tooltip]:hover::before,[data-tooltip]:focus-visible::before{opacity:1;visibility:visible;transform:translate(-50%,0)}
[data-tooltip]:hover::before,[data-tooltip]:focus-visible::before{transform:translateX(-50%)}

/* Garage: eliminate empty flash and keep long names inside cards. */
.bt-empty[hidden],#bt-garage-dashboard[hidden]{display:none!important}
.bt-garage-hero{grid-template-columns:minmax(320px,.78fr) minmax(500px,1.22fr);min-height:280px;overflow:visible}
.bt-garage-identity{min-width:0;overflow:hidden}
.bt-garage-identity h2{font-size:clamp(24px,2.2vw,34px)!important;line-height:1.08!important;overflow-wrap:anywhere;text-wrap:balance}
.bt-garage-identity .bt-title-edit{min-width:0}.bt-title-edit h2{min-width:0}
.bt-garage-car-stage{min-width:0;overflow:visible!important;background:transparent!important}
.bt-garage-car-stage::before{display:none!important}
.bt-garage-car-stage .bt-vehicle-image{
  width:min(100%,720px)!important;height:290px!important;max-height:none!important;object-fit:contain!important;object-position:center!important;
  mix-blend-mode:multiply;clip-path:none!important;border-radius:0!important;transform:none!important;
}
.bt-vehicle-image-status{display:none!important}
.bt-garage-stats article{min-width:0}.bt-garage-stats article>div{min-width:0}
.bt-garage-stats strong{font-size:15px!important;line-height:1.25!important;white-space:normal!important;overflow-wrap:anywhere}
.bt-dashboard-grid .bt-panel h3{font-size:17px!important;line-height:1.25;overflow-wrap:anywhere}

/* Chat stays below the sidebar, while selecting navigation closes it in JS. */
.bt-drawer{left:86px!important;z-index:70!important}
body.bt-sidebar-expanded .bt-drawer{left:220px!important}
.bt-sidebar{z-index:90!important}
.bt-composer{min-height:66px;align-items:end}
.bt-composer textarea{min-height:46px;max-height:120px}
.bt-composer button{align-self:end}

/* Urgency cards in the confirmation modal. */
.bt-draft-section{display:grid;gap:12px;margin-top:18px}
.bt-draft-section h3{margin:0}
.bt-draft-item{position:relative;padding:16px 18px 16px 56px;border-radius:16px;border:1px solid var(--bt-line);background:#fff}
.bt-draft-item__icon{position:absolute;left:15px;top:15px;width:30px;height:30px;border-radius:10px;display:grid;place-items:center}
.bt-draft-item__icon svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.bt-draft-item.urgency-red{border-color:#ffb6b6;background:#fff4f4;color:#8c2727}
.bt-draft-item.urgency-red .bt-draft-item__icon{background:#ffdede;color:#d33939}
.bt-draft-item.urgency-yellow{border-color:#f1d480;background:#fffbea;color:#735800}
.bt-draft-item.urgency-yellow .bt-draft-item__icon{background:#ffefad;color:#af7f00}
.bt-draft-item.urgency-green{border-color:#cce6a1;background:#f7ffe9;color:#4a6811}
.bt-draft-item.urgency-green .bt-draft-item__icon{background:#e6fac1;color:#6f980e}
.bt-draft-item p{color:inherit;opacity:.82}.bt-draft-item small{display:block;margin-top:7px;color:inherit;font-weight:700}

/* New vertically stacked maintenance report. */
.bt-service-plan{display:grid;gap:20px;margin-top:20px}
.bt-service-block{overflow:hidden;border:1px solid #e4e8ed;border-radius:24px;background:#fff;box-shadow:0 16px 42px rgba(24,32,44,.055)}
.bt-service-block>header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:24px 26px;border-bottom:1px solid #edf0f3}
.bt-service-block>header span{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#858e9d;font-weight:800}
.bt-service-block>header h3{margin:5px 0 5px;font-size:24px;letter-spacing:-.035em}
.bt-service-block>header p{margin:0;color:#7c8695;font-size:13px}
.bt-service-block__badge{flex:none;padding:8px 12px;border-radius:999px;background:#efffc8;color:#658c00;font-size:12px;font-weight:800}
.bt-service-block__badge--muted{background:#f1f3f6;color:#687382}
.bt-service-block__badge--purple{background:#f0ebff;color:#6d3eff}
.bt-service-table{display:grid}
.bt-service-table__head,.bt-service-row{display:grid;grid-template-columns:minmax(230px,1.45fr) minmax(130px,.6fr) minmax(130px,.65fr) minmax(220px,1fr);gap:16px;align-items:center;padding:13px 26px}
.bt-service-table__head{background:#fafbfc;color:#8993a1;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.055em}
.bt-service-row{min-height:72px;border-top:1px solid #edf0f3}
.bt-service-row:first-child{border-top:0}
.bt-service-row__operation{min-width:0}.bt-service-row__operation b{display:block;font-size:15px;line-height:1.3}.bt-service-row__operation small{display:block;margin-top:4px;color:#87909e;line-height:1.35}
.bt-service-row__mileage{font-weight:750;font-variant-numeric:tabular-nums}.bt-service-row__status{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:750}
.bt-service-row__status::before{content:"";width:8px;height:8px;border-radius:50%;background:#a4acb8}
.bt-service-row__status.is-danger{color:#bd3737}.bt-service-row__status.is-danger::before{background:#ef5656}
.bt-service-row__status.is-warning{color:#8b6800}.bt-service-row__status.is-warning::before{background:#f5b900}
.bt-service-row__status.is-current{color:#6f9700}.bt-service-row__status.is-current::before{background:#a9e500}
.bt-service-row__status.is-ok{color:#567b08}.bt-service-row__status.is-ok::before{background:#8fca18}
.bt-service-row__actions{display:flex;justify-content:flex-end;gap:7px;flex-wrap:wrap}
.bt-service-row__actions button{border:1px solid #dfe3e8;background:#fff;border-radius:10px;padding:8px 10px;font-size:11px;font-weight:750;cursor:pointer}
.bt-service-row__actions button:hover{border-color:var(--bt-purple);color:var(--bt-purple)}
.bt-service-row__actions .is-primary{background:var(--bt-step-lime);border-color:var(--bt-step-lime);color:#182000}
.bt-service-empty{padding:28px 26px;color:#7d8796}

/* Mobile: application-like behavior, no horizontal overflow. */
@media(max-width:1100px){
  .bt-landing-stage{grid-template-columns:minmax(360px,.9fr) minmax(390px,1.1fr)!important}
  .bt-garage-hero{grid-template-columns:1fr}.bt-garage-car-stage{order:-1;min-height:240px}.bt-garage-car-stage .bt-vehicle-image{height:250px!important}
  .bt-service-table__head,.bt-service-row{grid-template-columns:minmax(210px,1.3fr) 120px 130px minmax(190px,1fr)}
}
@media(max-width:900px){
  .bt-welcome:not([hidden]){grid-template-columns:82px minmax(0,1fr)}
  .bt-welcome .bt-landing{padding-left:32px!important;padding-right:32px!important}
  .bt-landing-stage{grid-template-columns:1fr!important;gap:8px!important}
  .bt-approved-car{position:absolute;right:-90px;top:18%;width:52%;height:360px!important;opacity:.35;pointer-events:none}
  .bt-landing-stage .bt-hero__copy{max-width:680px;position:relative;z-index:2}
  .bt-welcome .bt-feature-row{grid-template-columns:repeat(3,minmax(0,1fr))}
  .bt-drawer{left:82px!important}body.bt-sidebar-expanded .bt-drawer{left:210px!important}
  .bt-service-block{overflow-x:auto}.bt-service-table{min-width:850px}
}
@media(max-width:680px){
  body:not(.bt-in-app){overflow:auto!important}
  .bt-welcome:not([hidden]){display:block;height:auto;min-height:100dvh;overflow:visible}
  .bt-welcome .bt-rail--landing{display:none!important}
  .bt-welcome .bt-landing{height:auto!important;min-height:100dvh;display:block!important;padding:18px 16px 96px!important;overflow:visible!important}
  .bt-landing-login{position:static;display:flex;justify-content:flex-end}
  .bt-landing-stage{display:flex!important;flex-direction:column;align-items:stretch!important}
  .bt-landing-stage h1{font-size:var(--bt-hero-title-mobile)!important;line-height:var(--bt-hero-title-line)!important;margin-top:36px!important}
  .bt-landing-stage p{font-size:16px!important}
  .bt-landing-stage .bt-hero__actions{display:grid;grid-template-columns:1fr}
  .bt-landing-stage .bt-button--large{width:100%}
  .bt-approved-car{position:relative;right:auto;top:auto;width:100%;height:220px!important;opacity:1;margin:4px 0 8px}
  .bt-approved-car img{width:100%!important;height:100%!important}
  .bt-welcome .bt-feature-row{grid-template-columns:1fr;gap:10px!important}
  .bt-welcome .bt-feature-row article{min-height:90px!important}
  .bt-guest-fab{right:18px;bottom:18px;width:54px;height:54px}
  .bt-topbar{padding:14px 14px 10px;min-height:auto}.bt-topbar__intro p,.bt-topbar__intro>span{display:none}.bt-topbar h1{font-size:26px}
  .bt-topbar__actions{width:100%;margin-top:12px}.bt-topbar{display:block}.bt-topbar select{flex:1;min-width:0;max-width:none}
  .bt-content{padding:12px 12px 92px}
  .bt-garage-car-stage .bt-vehicle-image{height:190px!important}.bt-garage-identity{padding:20px}.bt-garage-identity h2{font-size:25px!important}
  .bt-garage-stats{grid-template-columns:1fr 1fr;padding:8px}.bt-garage-stats article{padding:13px}.bt-garage-stats article+article{border-left:0}.bt-garage-stats article:nth-child(even){border-left:1px solid #e7eaf0}.bt-garage-stats article:nth-child(n+3){border-top:1px solid #e7eaf0}
  .bt-dashboard-grid{grid-template-columns:1fr!important}.bt-dashboard-grid .bt-panel{min-height:auto}
  .bt-ai-dock{display:none!important}
  .bt-drawer{left:0!important;z-index:120!important}.bt-sidebar{display:none!important}.bt-chat-workspace{padding:8px!important}.bt-chat-header{height:66px}.bt-chat{padding:8px 3px 18px}.bt-message__bubble{max-width:94%}
  .bt-composer{border-radius:22px;margin:0 0 calc(4px + env(safe-area-inset-bottom));grid-template-columns:40px minmax(0,1fr) 48px!important}.bt-composer button{width:44px!important;height:44px!important}
  .bt-mobile-nav{z-index:90}.bt-fab{right:18px;bottom:82px}
  .bt-section-intro h2{font-size:30px}.bt-report-summary{grid-template-columns:repeat(3,1fr)}.bt-report-summary article{padding:14px 10px}.bt-report-summary article strong{font-size:24px}
  .bt-service-block>header{padding:20px;display:block}.bt-service-block__badge{display:inline-flex;margin-top:12px}
  .bt-service-block{overflow:visible}.bt-service-table{min-width:0}.bt-service-table__head{display:none}
  .bt-service-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:18px 20px;align-items:start}
  .bt-service-row__operation{grid-column:1/-1}.bt-service-row__mileage{font-size:13px}.bt-service-row__status{justify-self:end;text-align:right}
  .bt-service-row__actions{grid-column:1/-1;justify-content:flex-start}.bt-service-row__actions button{min-height:40px;padding:9px 12px}
  [data-tooltip]::after,[data-tooltip]::before{display:none!important}
}
@media(min-width:901px){.bt-landing-stage h1{white-space:nowrap}}

/* Consistent inner pages. */
.bt-section-intro{padding:26px 28px;border:1px solid #e5e8ed;border-radius:22px;background:rgba(255,255,255,.88);box-shadow:0 14px 38px rgba(24,32,44,.045)}
.bt-section-intro>div>span{color:var(--bt-purple);font-weight:800;letter-spacing:.08em;text-transform:uppercase;font-size:11px}
.bt-current-mileage{border-radius:18px;border:1px solid #e5e8ed;background:#fff;box-shadow:0 12px 34px rgba(24,32,44,.045)}
.bt-symptom-grid,.bt-document-list,.bt-timeline{min-width:0}
.bt-document,.bt-symptom,.bt-timeline-item{transition:border-color .18s ease,transform .18s ease,box-shadow .18s ease}
.bt-document:hover,.bt-symptom:hover{transform:translateY(-1px);box-shadow:0 16px 36px rgba(24,32,44,.07)}

@media(max-width:680px){
  .bt-landing-stage h1{white-space:normal}
  body.bt-chat-open .bt-mobile-nav,body.bt-chat-open .bt-fab{display:none!important}
  .bt-section-intro{padding:20px;border-radius:18px}.bt-section-intro .bt-button{width:100%}
  .bt-report-footer{display:grid;grid-template-columns:1fr}.bt-report-footer .bt-button{width:100%}
}
