.app-settings-page { padding: 0 0 32px; }
.settings-section { margin-bottom: 6px; }
.settings-section-title {
  font-size: 11px; font-weight: 800; color: var(--text3);
  letter-spacing: .08em; text-transform: uppercase;
  padding: 18px 20px 8px;
}
.settings-list {
  background: var(--bg2);
  border-top: 1px solid var(--line); border-bottom: 1px solid var(--line);
}
.settings-row {
  display: flex; align-items: center; gap: 14px;
  padding: 14px 20px; border-bottom: 1px solid var(--line);
  min-height: 56px;
}
.settings-row:last-child { border-bottom: none; }
.settings-row-ico { font-size: 22px; width: 28px; text-align: center; flex-shrink: 0; }
.settings-row-body { flex: 1; min-width: 0; }
.settings-row-label { font-size: 15px; font-weight: 600; color: var(--text1); margin-bottom: 2px; }
.settings-row-sub { font-size: 12px; color: var(--text3); }
.settings-row-control { flex-shrink: 0; }
.font-preview {
  font-size: 15px; color: var(--text2); padding: 12px 20px;
  background: var(--surface); border-radius: var(--ui-radius-md,10px);
  margin: 0 20px; line-height: 1.6;
  border: 1px solid var(--line);
}

/* Segment control */
.seg-ctrl {
  display: inline-flex; background: var(--surface);
  border: 1px solid var(--line); border-radius: var(--ui-radius-md,10px);
  overflow: hidden; padding: 2px; gap: 2px;
}
.seg-btn {
  padding: 6px 12px; font-size: 12px; font-weight: 700;
  border-radius: var(--ui-radius-md,10px); color: var(--text2); cursor: pointer;
  transition: background .15s, color .15s;
  white-space: nowrap; border: none; background: none; font-family: inherit;
}
.seg-btn.active { background: var(--orange); color: #fff; }
.seg-btn:not(.active):hover { background: var(--line); color: var(--text1); }

/* Accent dots */
.accent-grid { display: flex; gap: 10px; flex-wrap: wrap; padding: 12px 20px; }
.accent-dot {
  width: 34px; height: 34px; border-radius: 50%;
  cursor: pointer; position: relative;
  transition: transform .15s; border: 2px solid transparent;
}
.accent-dot:hover { transform: scale(1.1); }
.accent-dot.active { border-color: var(--text1); transform: scale(1.06); }
.accent-dot.active::after {
  content: '✓'; position: absolute; inset: 0;
  display: flex; align-items: center; justify-content: center;
  font-size: 14px; font-weight: 900; color: #fff;
}

/* ═══════════════════════════════════════════
   Special service panel
═══════════════════════════════════════════ */
.spec-svc-overlay {
  position: fixed;
  inset: 0;
  z-index: 960;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 18px;
  background: rgba(7,17,27,.82);
  backdrop-filter: blur(10px);
  opacity: 0;
  transition: opacity .25s ease;
}
.spec-svc-panel {
  --ssc: var(--orange);
  width: min(100%, 980px);
  max-height: min(88dvh, 920px);
  display: flex;
  flex-direction: column;
  gap: 18px;
  padding: 22px;
  overflow: auto;
  border-radius: var(--ui-radius-lg,18px);
  border: 1px solid color-mix(in srgb, var(--ssc) 24%, rgba(255,255,255,.10));
  background:
    radial-gradient(circle at top right, color-mix(in srgb, var(--ssc) 16%, transparent) 0%, transparent 34%),
    linear-gradient(180deg, color-mix(in srgb, var(--bg2) 96%, white 4%), var(--bg2));
  box-shadow: 0 34px 80px rgba(0,0,0,.42);
  transform: translateY(24px);
  transition: transform .25s ease;
}
.spec-svc-head {
  display: flex;
  align-items: flex-start;
  gap: 14px;
}
.spec-svc-headcopy {
  flex: 1;
  min-width: 0;
}
.spec-svc-kicker {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 0 11px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--ssc) 14%, transparent);
  border: 1px solid color-mix(in srgb, var(--ssc) 26%, transparent);
  color: var(--ssc);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.spec-svc-title {
  margin-top: 10px;
  font-family: 'Oswald', sans-serif;
  font-size: clamp(24px, 3vw, 36px);
  line-height: 1.05;
  color: var(--text1);
}
.spec-svc-desc {
  margin-top: 8px;
  max-width: 760px;
  font-size: 14px;
  line-height: 1.62;
  color: var(--text2);
}
.spec-svc-close {
  width: 42px;
  height: 42px;
  min-width: 42px;
  border: 1px solid var(--line);
  border-radius: var(--ui-radius-md,10px);
  background: rgba(255,255,255,.04);
  color: var(--text1);
  font-size: 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
.spec-svc-items {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
.spec-svc-item {
  appearance: none;
  width: 100%;
  border: 1px solid var(--line);
  border-radius: var(--ui-radius-lg,18px);
  background: rgba(255,255,255,.02);
  padding: 16px;
  display: grid;
  grid-template-columns: auto minmax(0,1fr);
  gap: 12px;
  align-items: start;
  text-align: left;
  cursor: pointer;
  transition: transform .18s ease, border-color .18s ease, background .18s ease, box-shadow .18s ease;
}
.spec-svc-ico {
  width: 48px;
  height: 48px;
  border-radius: var(--ui-radius-md,10px);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  background: color-mix(in srgb, var(--ssc) 10%, transparent);
  border: 1px solid color-mix(in srgb, var(--ssc) 18%, transparent);
}
.spec-svc-body {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.spec-svc-label {
  font-size: 15px;
  font-weight: 800;
  line-height: 1.3;
  color: var(--text1);
}
.spec-svc-sub {
  font-size: 13px;
  line-height: 1.55;
  color: var(--text2);
}
.spec-svc-price {
  grid-column: 1 / -1;
  justify-self: flex-start;
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 0 10px;
  border-radius: 999px;
  background: rgba(255,255,255,.04);
  border: 1px solid var(--line);
  color: var(--text1);
  font-size: 12px;
  font-weight: 800;
}
@media (hover: hover) {
  .spec-svc-item:hover,
  .spec-svc-close:hover {
    border-color: color-mix(in srgb, var(--ssc) 32%, var(--line));
    background: color-mix(in srgb, var(--ssc) 8%, rgba(255,255,255,.02));
  }
  .spec-svc-item:hover {
    transform: translateY(-1px);
    box-shadow: 0 18px 32px rgba(0,0,0,.14);
  }
}

@media (max-width: 900px) {
  .spec-svc-overlay { padding: 12px; }
  .spec-svc-items { grid-template-columns: 1fr; }
}

@media (max-width: 767px) {
  .spec-svc-overlay {
    padding: 12px;
    align-items: center;
  }
  .spec-svc-panel {
    width: 100%;
    max-height: min(92dvh, 860px);
    padding: 18px 16px 16px;
    gap: 14px;
    border-radius: var(--ui-radius-lg,18px);
  }
  .spec-svc-head { gap: 12px; }
  .spec-svc-kicker { min-height: 26px; padding: 0 10px; font-size: 10px; }
  .spec-svc-title { margin-top: 8px; font-size: 26px; }
  .spec-svc-desc { font-size: 13px; line-height: 1.55; }
  .spec-svc-close {
    width: 38px;
    height: 38px;
    min-width: 38px;
    border-radius: var(--ui-radius-md,10px);
  }
  .spec-svc-item {
    padding: 14px;
    border-radius: var(--ui-radius-lg,18px);
    gap: 10px;
  }
  .spec-svc-ico {
    width: 42px;
    height: 42px;
    border-radius: var(--ui-radius-md,10px);
    font-size: 22px;
  }
  .spec-svc-label { font-size: 14px; }
  .spec-svc-sub { font-size: 12px; }
  .spec-svc-price { font-size: 11px; min-height: 28px; }
}


/* v20260423r33 master exchange */
.mx-exchange-shell{display:block;min-width:0;max-width:100%;overflow-x:hidden}
.mx-work-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:16px}
.mx-title{font-family:'Oswald',sans-serif;font-size:26px;font-weight:700;color:var(--text)}
.mx-subtitle{font-size:13px;color:var(--text3);margin-top:4px}
.mx-counter-grid{display:grid;grid-template-columns:repeat(5,minmax(90px,1fr));gap:10px;flex:1;min-width:320px}
.mx-counter{background:var(--surface);border:1px solid var(--line);border-radius:var(--ui-radius-md,10px);padding:12px 10px;display:flex;flex-direction:column;gap:4px;min-height:74px}
.mx-counter b{font-family:'Oswald',sans-serif;font-size:20px;color:var(--text)}
.mx-counter span{font-size:11px;color:var(--text3)}
.mx-layout{display:grid;grid-template-columns:minmax(250px,300px) minmax(0,1fr) minmax(220px,280px);gap:16px;align-items:start;min-width:0;max-width:100%}
.mx-sidebar,.mx-center-col{min-width:0}
.mx-panel-title{font-size:13px;font-weight:700;color:var(--text);margin-bottom:10px}
.mx-sidebar--filters,.mx-sidebar--service{position:sticky;top:84px;background:var(--surface);border:1px solid var(--line);border-radius:var(--ui-radius-lg,18px);padding:14px}
.mx-filter-grid{display:grid;grid-template-columns:1fr;gap:10px}
.mx-filter-grid label,.mx-respond-grid label{display:flex;flex-direction:column;gap:6px;font-size:12px;color:var(--text2)}
.mx-filter-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.mx-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}
.mx-tabs button{border:1px solid var(--line);background:var(--surface);color:var(--text2);border-radius:999px;padding:10px 14px;font-size:12px;font-weight:600}
.mx-tabs button.is-active{background:var(--orange);color:#fff;border-color:var(--orange)}
.mx-stream-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;color:var(--text3);font-size:12px;margin-bottom:12px}
.mx-card-list{display:grid;grid-template-columns:1fr;gap:12px;min-width:0;width:100%;overflow:hidden}
.mx-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--ui-radius-lg,18px);padding:16px;display:flex;flex-direction:column;gap:12px;min-width:0;overflow:hidden;box-sizing:border-box;width:100%}
.mx-card.is-urgent{box-shadow:0 0 0 1px rgba(239,68,68,.18) inset}
.mx-card.is-suitable{border-color:rgba(255,107,0,.35)}
.mx-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;min-width:0}
.mx-card-headings h4{margin:0;font-size:18px;line-height:1.2;color:var(--text);word-break:break-word;overflow-wrap:break-word}
.mx-card-sub{font-size:12px;color:var(--text3);margin-top:4px}
.mx-card-budget{font-family:'Oswald',sans-serif;font-size:20px;font-weight:700;color:var(--orange);white-space:nowrap;max-width:160px;overflow:hidden;text-overflow:ellipsis;flex-shrink:0}
.mx-chip-row{display:flex;gap:6px;flex-wrap:wrap}
.mx-chip{font-size:10px;font-weight:700;padding:4px 8px;border-radius:999px;background:rgba(255,107,0,.08);border:1px solid rgba(255,107,0,.2);color:var(--text2)}
.mx-chip--urgent{background:rgba(239,68,68,.12);border-color:rgba(239,68,68,.3);color:#ef4444}
.mx-card-desc{font-size:13px;line-height:1.5;color:var(--text2)}
.mx-meta-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.mx-meta-grid div{background:var(--bg);border:1px solid var(--line);border-radius:var(--ui-radius-md,10px);padding:10px}
.mx-meta-grid span{display:block;font-size:11px;color:var(--text3);margin-bottom:5px}
.mx-meta-grid b{display:block;font-size:13px;color:var(--text)}
.mx-actions{display:flex;gap:8px;flex-wrap:wrap}
.mx-actions .btn{padding:9px 12px;font-size:12px;min-width:0;overflow:hidden;text-overflow:ellipsis}
.mx-my-response{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12px;color:var(--text2);padding:10px 12px;background:rgba(96,165,250,.08);border:1px solid rgba(96,165,250,.18);border-radius:var(--ui-radius-md,10px)}
.mx-my-response .mx-status{margin-left:auto;font-weight:700;color:#60a5fa}
.mx-side-stack{display:grid;gap:10px}
.mx-side-card,.mx-side-list{background:var(--bg);border:1px solid var(--line);border-radius:var(--ui-radius-md,10px);padding:12px}
.mx-side-card{display:flex;align-items:center;justify-content:space-between;gap:8px}
.mx-side-card span{font-size:12px;color:var(--text3)}
.mx-side-card b{font-family:'Oswald',sans-serif;font-size:18px;color:var(--text)}
.mx-mini-response{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;border:none;background:transparent;padding:8px 0;border-top:1px solid var(--line);text-align:left}
.mx-mini-response:first-of-type{border-top:none;padding-top:0}
.mx-mini-response b{font-size:12px;color:var(--text)}
.mx-mini-response span{font-size:11px;color:var(--text3)}
.mx-empty-mini{font-size:12px;color:var(--text3)}
.mx-mobile-bar{display:none;position:sticky;bottom:10px;z-index:5;margin-top:14px;padding:8px;background:rgba(15,23,42,.92);border:1px solid rgba(255,255,255,.08);border-radius:var(--ui-radius-md,10px);backdrop-filter:blur(10px)}
.mx-mobile-bar button{flex:1;border:none;background:transparent;color:#fff;font-size:12px;font-weight:700;padding:10px}
.mx-detail-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:16px}
.mx-detail-block{background:var(--surface);border:1px solid var(--line);border-radius:var(--ui-radius-md,10px);padding:14px}
.mx-photo-row{display:flex;gap:10px;flex-wrap:wrap}
.mx-photo{width:84px;height:84px;border-radius:var(--ui-radius-md,10px);overflow:hidden;border:1px solid var(--line);padding:0;background:var(--bg)}
.mx-photo img{width:100%;height:100%;object-fit:cover}
.mx-history-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 0;border-top:1px solid var(--line)}
.mx-history-item:first-child{border-top:none;padding-top:0}
.mx-history-item b{font-size:12px;color:var(--text)}
.mx-history-item span{font-size:11px;color:var(--text3)}
.mx-respond-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.mx-span-2{grid-column:1 / -1}
@media (max-width: 1180px){
  .mx-layout{grid-template-columns:minmax(240px,280px) minmax(0,1fr)}
  .mx-sidebar--service{grid-column:1 / -1;position:static}
  .mx-side-stack{grid-template-columns:repeat(4,minmax(0,1fr))}
  .mx-side-list{grid-column:1 / -1}
}
@media (max-width: 900px){
  .mx-counter-grid{grid-template-columns:repeat(2,minmax(120px,1fr));min-width:0;width:100%}
  .mx-layout{grid-template-columns:1fr}
  .mx-sidebar--filters{display:none}
  .mx-sidebar--service{position:static}
  .mx-mobile-bar{display:flex;gap:8px}
  .mx-meta-grid,.mx-detail-grid,.mx-respond-grid,.mx-side-stack{grid-template-columns:1fr}
}
@media (max-width: 640px){
  .mx-title{font-size:22px}
  .mx-counter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .mx-card{padding:14px}
  .mx-card-top{flex-direction:column}
  .mx-card-budget{font-size:18px}
  .mx-meta-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .mx-actions .btn{flex:1;min-width:calc(50% - 4px)}
}


.mx-tabs button{display:inline-flex;align-items:center;gap:8px}
.mx-tab-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:rgba(255,255,255,.14);font-size:10px;font-weight:700}
.mx-tabs button.is-active .mx-tab-count{background:rgba(255,255,255,.22)}
.mx-card-scenario{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:700;color:var(--text2);margin-bottom:8px}
.mx-card-scenario-icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:999px;background:rgba(255,107,0,.10);border:1px solid rgba(255,107,0,.18)}
.mx-card--tow .mx-card-scenario-icon{background:rgba(96,165,250,.12);border-color:rgba(96,165,250,.2)}
.mx-card--legal .mx-card-scenario-icon{background:rgba(168,85,247,.12);border-color:rgba(168,85,247,.2)}
.mx-card--battery .mx-card-scenario-icon{background:rgba(34,197,94,.12);border-color:rgba(34,197,94,.2)}
.mx-card--tires .mx-card-scenario-icon{background:rgba(251,191,36,.12);border-color:rgba(251,191,36,.2)}
.mx-empty-state{background:var(--surface);border:1px dashed var(--line);border-radius:var(--ui-radius-lg,18px);padding:28px 18px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;color:var(--text3)}
.mx-empty-state b{font-size:16px;color:var(--text)}
.mx-empty-icon{font-size:32px}
@media (max-width: 767px){
  .mx-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .mx-tabs button{justify-content:space-between;width:100%}
  .mx-actions .btn{min-width:100%;flex:1 1 100%}
  .mx-mobile-bar{left:0;right:0;bottom:8px}
}

/* ═══════════════════════════════════════════════════════════════════
   HOME — улучшения главной страницы
═══════════════════════════════════════════════════════════════════ */

/* Сетка категорий */
.home-catalog__grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
  margin-bottom: 20px;
}
@media (min-width: 640px) { .home-catalog__grid { grid-template-columns: repeat(3, 1fr); } }
@media (min-width: 900px) { .home-catalog__grid { grid-template-columns: repeat(4, 1fr); } }

/* Карточка категории */
.hcat-card {
  display: flex; flex-direction: column;
  background: var(--bg2);
  border: 1px solid var(--line);
  border-radius: var(--r-xl,18px);
  padding: 16px 14px;
  cursor: pointer; text-align: left;
  font-family: inherit;
  position: relative; overflow: hidden;
  transition: border-color .18s, transform .15s, box-shadow .18s;
}
.hcat-card:hover {
  border-color: color-mix(in srgb, var(--hcat,var(--orange)) 40%, transparent);
  transform: translateY(-3px);
  box-shadow: 0 12px 32px rgba(0,0,0,.25);
}
.hcat-card__top {
  display: flex; align-items: flex-start;
  justify-content: space-between; margin-bottom: 10px;
}
.hcat-icon { font-size: 28px; line-height: 1; }
.hcat-count {
  font-size: 10px; font-weight: 700;
  color: var(--hcat,var(--orange));
  background: color-mix(in srgb, var(--hcat,var(--orange)) 12%, transparent);
  border: 1px solid color-mix(in srgb, var(--hcat,var(--orange)) 25%, transparent);
  padding: 2px 8px; border-radius: 99px;
}
.hcat-label {
  font-family: 'Oswald', sans-serif;
  font-size: 15px; font-weight: 700; color: var(--text1);
  margin-bottom: 4px; line-height: 1.2;
}
.hcat-sub {
  font-size: 11px; color: var(--text3); line-height: 1.5;
  margin-bottom: 8px;
}
.hcat-price {
  font-size: 11px; font-weight: 700;
  color: var(--hcat,var(--orange));
  margin-bottom: 8px;
}
.hcat-examples {
  display: flex; flex-wrap: wrap; gap: 4px;
  margin-bottom: 10px;
}
.hcat-chip {
  font-size: 10px; padding: 2px 7px;
  border-radius: 99px;
  background: rgba(255,255,255,.05);
  border: 1px solid var(--line);
  color: var(--text3);
}
.hcat-badges { display: flex; gap: 4px; margin-bottom: 8px; }
.hcat-badge {
  font-size: 9px; font-weight: 800; letter-spacing: .04em;
  text-transform: uppercase; padding: 2px 7px;
  border-radius: 99px;
  background: var(--hcat,var(--orange));
  color: #fff;
}
.hcat-arrow {
  font-size: 11px; font-weight: 700;
  color: var(--hcat,var(--orange));
  margin-top: auto;
}

/* Спец-карточки (эвакуатор, юрист) */
.home-specials { margin-top: 20px; }
.home-specials__title {
  font-size: 11px; font-weight: 800; color: var(--text3);
  text-transform: uppercase; letter-spacing: .06em;
  margin-bottom: 10px;
}
.home-specials__grid { display: flex; flex-direction: column; gap: 10px; }
.home-special-card {
  display: flex; align-items: center; gap: 14px;
  padding: 14px 16px;
  border-radius: var(--r-lg,18px);
  border: 1.5px solid var(--line);
  background: var(--bg2);
  cursor: pointer; text-align: left; font-family: inherit;
  transition: border-color .15s, transform .12s;
}
.home-special-card--danger { border-color: rgba(239,68,68,.25); background: rgba(239,68,68,.05); }
.home-special-card--legal  { border-color: rgba(139,92,246,.25); background: rgba(139,92,246,.05); }
.home-special-card:hover { transform: translateY(-2px); }
.home-special-card__ico { font-size: 30px; flex-shrink: 0; }
.home-special-card__body { flex: 1; }
.home-special-card__title { font-size: 14px; font-weight: 700; color: var(--text1); margin-bottom: 2px; }
.home-special-card__sub { font-size: 12px; color: var(--text2); line-height: 1.5; }
.home-special-card__badges { display: flex; gap: 5px; margin-top: 5px; }
.home-special-card__badge {
  font-size: 9px; font-weight: 700;
  background: rgba(239,68,68,.15); color: #ef4444;
  border: 1px solid rgba(239,68,68,.25);
  padding: 2px 7px; border-radius: 99px;
  text-transform: uppercase; letter-spacing: .04em;
}
.home-special-card__cta {
  font-size: 12px; font-weight: 700; color: var(--orange);
  white-space: nowrap; flex-shrink: 0;
}

/* Срочная CTA полоска */
.home-urgent-cta {
  display: flex; align-items: center; gap: 12px;
  width: 100%; margin-top: 14px;
  padding: 14px 16px;
  border-radius: var(--r-lg,18px);
  border: 1.5px solid rgba(239,68,68,.3);
  background: rgba(239,68,68,.06);
  cursor: pointer; text-align: left; font-family: inherit;
  transition: background .15s;
}
.home-urgent-cta:hover { background: rgba(239,68,68,.1); }
.home-urgent-cta__ico { font-size: 24px; flex-shrink: 0; }
.home-urgent-cta__body { flex: 1; }
.home-urgent-cta__body strong { display: block; font-size: 14px; color: var(--text1); }
.home-urgent-cta__body em { display: block; font-size: 11px; color: var(--text2); font-style: normal; margin-top: 2px; }
.home-urgent-cta__arrow { font-size: 18px; color: #ef4444; }

.home-catalog__subhead {
  font-size: 13px; color: var(--text2); margin-bottom: 16px; line-height: 1.6;
}

/* ═══════════════════════════════════════════════════════════════════
   МОБИЛЬНЫЕ — bottom nav скругления и улучшения
═══════════════════════════════════════════════════════════════════ */
.bnav-item {
  transition: color .15s, background .15s;
  border-radius: var(--ui-radius-md,10px);
}
.bnav-item.active { background: rgba(255,107,0,.1); }
.bnav-item .bnav-lbl { transition: color .15s; }
.bnav-item.active .bnav-icon-wrap { color: var(--orange); }
.bnav-item.active .bnav-lbl { color: var(--orange); }

/* ═══════════════════════════════════════════════════════════════════
   LIGHT THEME — onb2 и карточки
═══════════════════════════════════════════════════════════════════ */
[data-theme="light"] .hcat-card,
[data-theme="light"] .home-special-card { background: #fff; }
[data-theme="light"] .home-urgent-cta { background: rgba(239,68,68,.04); }

/* ═══════════════════════════════════════════════════════════════════
   DRAWER — настройки кнопка
═══════════════════════════════════════════════════════════════════ */
.drawer-link--settings {
  color: var(--orange);
  font-weight: 600;
}

/* ═══════════════════════════════════════════════════════════════════
   DRAWER — пользовательская карточка в шапке
═══════════════════════════════════════════════════════════════════ */

/* v20260423r66 special service request form */
.spec-svc-item.active{
  border-color: color-mix(in srgb, var(--ssc) 52%, var(--line));
  background: color-mix(in srgb, var(--ssc) 12%, rgba(255,255,255,.03));
  box-shadow: 0 0 0 1px color-mix(in srgb, var(--ssc) 20%, transparent) inset;
}
.spec-svc-request{
  display:flex;
  flex-direction:column;
  gap:14px;
  padding:16px;
  border:1px solid color-mix(in srgb, var(--ssc) 26%, var(--line));
  border-radius:var(--ui-radius-lg,18px);
  background: color-mix(in srgb, var(--ssc) 8%, rgba(255,255,255,.025));
}
.spec-svc-request-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}
.spec-svc-request-title{
  font-size:18px;
  font-weight:900;
  line-height:1.2;
  color:var(--text1);
}
.spec-svc-request-sub{
  margin-top:4px;
  font-size:14px;
  line-height:1.45;
  color:var(--text2);
}
.spec-svc-request-sub b{color:var(--ssc)}
.spec-svc-request-badge{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:0 11px;
  border-radius:999px;
  background:color-mix(in srgb, var(--ssc) 14%, transparent);
  border:1px solid color-mix(in srgb, var(--ssc) 24%, transparent);
  color:var(--ssc);
  font-size:12px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.spec-svc-form-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.spec-svc-field{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:7px;
  font-size:14px;
  font-weight:800;
  color:var(--text2);
}
.spec-svc-field b{color:#ef4444}
.spec-svc-field input,
.spec-svc-field textarea{
  width:100%;
  border:1px solid var(--line);
  border-radius:var(--ui-radius-md,10px);
  background:var(--bg);
  color:var(--text1);
  padding:12px 13px;
  font-size:16px;
  line-height:1.35;
  outline:none;
}
.spec-svc-field textarea{resize:vertical;min-height:92px}
.spec-svc-field input:focus,
.spec-svc-field textarea:focus{
  border-color:color-mix(in srgb, var(--ssc) 60%, var(--line));
  box-shadow:0 0 0 3px color-mix(in srgb, var(--ssc) 16%, transparent);
}
.spec-svc-field--wide{grid-column:1/-1}
.spec-svc-submit-row{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
.spec-svc-submit-row .btn{min-height:46px;justify-content:center}
.spec-svc-submit{flex:0 0 auto}
.spec-svc-hint{
  font-size:13px;
  line-height:1.55;
  color:var(--text3);
}
@media (max-width:767px){
  .spec-svc-form-grid{grid-template-columns:1fr;gap:10px}
  .spec-svc-request{padding:14px;border-radius:var(--ui-radius-lg,18px)}
  .spec-svc-request-title{font-size:10px}
  .spec-svc-request-sub{font-size:10px}
  .spec-svc-field{font-size:10px}
  .spec-svc-field input,
  .spec-svc-field textarea{font-size:10px;padding:12px}
  .spec-svc-submit-row{flex-direction:column}
  .spec-svc-submit-row .btn{width:100%}
}


/* r74: форма предложения заказа конкретному мастеру */
.master-order-proposal-overlay.open{display:flex;align-items:center;justify-content:center;padding:18px;}
.master-order-proposal{width:min(720px,100%);max-height:92vh;overflow:hidden;border-radius:var(--ui-radius-lg,18px);}
.master-order-proposal .cmodal-body{max-height:calc(92vh - 72px);overflow:auto;}
.master-order-proposal-master{display:flex;align-items:center;gap:12px;padding:12px 14px;margin-bottom:14px;border:1px solid var(--line);border-radius:var(--ui-radius-md,10px);background:linear-gradient(135deg,rgba(255,107,0,.08),var(--surface));}
.master-order-proposal-avatar{width:48px;height:48px;border-radius:var(--ui-radius-md,10px);display:flex;align-items:center;justify-content:center;background:var(--orange);color:#fff;font-family:'Oswald',sans-serif;font-weight:800;font-size:18px;flex-shrink:0;}
.master-order-proposal-name{font-weight:800;font-size:16px;color:var(--text);}
.master-order-proposal-spec{font-size:13px;color:var(--text2);margin-top:3px;line-height:1.4;}
.master-order-proposal-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.master-order-proposal-hint{margin-top:12px;padding:12px 14px;border-radius:var(--ui-radius-md,10px);background:rgba(96,165,250,.08);border:1px solid rgba(96,165,250,.18);color:var(--text2);font-size:13px;line-height:1.55;}
.master-order-proposal-actions{margin-top:14px;}
@media (max-width:640px){
  .master-order-proposal-overlay.open{align-items:flex-end;padding:10px;}
  .master-order-proposal{border-radius:var(--ui-radius-lg,18px) var(--ui-radius-lg,18px) var(--ui-radius-lg,18px) var(--ui-radius-lg,18px);max-height:94vh;}
  .master-order-proposal-grid{grid-template-columns:1fr;gap:10px;}
  .master-order-proposal-name{font-size:17px;}
  .master-order-proposal-spec,.master-order-proposal-hint{font-size:14px;}
  .master-order-proposal-actions{display:grid;grid-template-columns:1fr;}
}

/* r75: special service 3-level flow */
.spec-svc-panel{
  overflow:hidden;
}
.spec-svc-items{
  min-height:0;
  max-height:min(44dvh, 430px);
  overflow-y:auto;
  overscroll-behavior:contain;
  padding-right:4px;
  scrollbar-width:thin;
}
.spec-svc-items::-webkit-scrollbar{width:6px}
.spec-svc-items::-webkit-scrollbar-thumb{border-radius:999px;background:color-mix(in srgb,var(--ssc) 34%,rgba(255,255,255,.18))}
.spec-svc-request-overlay,
.spec-svc-result-overlay{
  position:fixed;
  inset:0;
  z-index:982;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  padding:18px;
  background:rgba(7,17,27,.54);
  backdrop-filter:blur(8px);
  opacity:0;
  transition:opacity .24s ease;
}
.spec-svc-result-overlay{z-index:984;background:rgba(7,17,27,.70)}
.spec-svc-request-modal,
.spec-svc-result-modal{
  width:min(760px,100%);
  max-height:min(88dvh,860px);
  overflow:hidden;
  display:flex;
  flex-direction:column;
  gap:14px;
  padding:18px;
  border:1px solid color-mix(in srgb,var(--ssc) 28%,var(--line));
  border-radius:var(--ui-radius-lg,18px);
  background:linear-gradient(180deg,color-mix(in srgb,var(--bg2) 96%,white 4%),var(--bg2));
  box-shadow:0 34px 84px rgba(0,0,0,.46);
  transform:translateY(24px);
  transition:transform .24s ease;
}
.spec-svc-request-modal-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}
.spec-svc-request-modal-title{
  margin-top:8px;
  font-family:'Oswald',sans-serif;
  font-size:28px;
  line-height:1.08;
  color:var(--text1);
}
.spec-svc-request-modal .spec-svc-request{
  overflow:auto;
  max-height:calc(88dvh - 110px);
  background:color-mix(in srgb,var(--ssc) 6%,rgba(255,255,255,.02));
}
.spec-svc-result-modal{
  position:relative;
  align-items:center;
  text-align:center;
  width:min(420px,100%);
  padding:28px 20px 20px;
}
.spec-svc-result-close{position:absolute;top:14px;right:14px}
.spec-svc-result-icon{
  width:68px;
  height:68px;
  border-radius:var(--ui-radius-lg,18px);
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:34px;
  background:color-mix(in srgb,var(--ssc) 16%,transparent);
  border:1px solid color-mix(in srgb,var(--ssc) 24%,transparent);
}
.spec-svc-result-title{font-size:20px;font-weight:900;color:var(--text1);margin-top:2px}
.spec-svc-result-number{
  width:100%;
  padding:14px 16px;
  border-radius:var(--ui-radius-lg,18px);
  background:color-mix(in srgb,var(--ssc) 12%,rgba(255,255,255,.03));
  border:1px solid color-mix(in srgb,var(--ssc) 26%,var(--line));
  color:var(--text1);
  font-family:'Oswald',sans-serif;
  font-size:30px;
  font-weight:800;
  letter-spacing:.02em;
}
.spec-svc-result-sub{font-size:14px;line-height:1.45;color:var(--text2)}
.spec-svc-result-actions{width:100%;display:flex;gap:10px;margin-top:6px}
.spec-svc-result-actions .btn{flex:1;justify-content:center;min-height:46px}
@media (max-width:767px){
  .spec-svc-panel{max-height:92dvh;overflow:hidden}
  .spec-svc-items{max-height:50dvh;padding-right:2px}
  .spec-svc-request-overlay,.spec-svc-result-overlay{padding:0;align-items:flex-end}
  .spec-svc-request-modal{width:100%;max-height:92dvh;border-radius:var(--ui-radius-lg,18px) var(--ui-radius-lg,18px) 0 0;padding:16px 14px 14px}
  .spec-svc-request-modal-title{font-size:24px}
  .spec-svc-request-modal .spec-svc-request{max-height:calc(92dvh - 96px);padding:14px;border-radius:var(--ui-radius-lg,18px)}
  .spec-svc-result-modal{width:100%;border-radius:var(--ui-radius-lg,18px) var(--ui-radius-lg,18px) 0 0;padding:28px 16px 18px}
  .spec-svc-result-actions{flex-direction:column}
  .spec-svc-result-number{font-size:28px}
}

/* r76: отдельные формы сценариев аккумулятора */
.spec-svc-mode{
  grid-column:1/-1;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  padding:10px;
  border:1px solid color-mix(in srgb,var(--ssc) 24%,var(--line));
  border-radius:var(--ui-radius-lg,18px);
  background:color-mix(in srgb,var(--ssc) 7%,rgba(255,255,255,.025));
}
.spec-svc-mode-title{
  grid-column:1/-1;
  font-size:13px;
  font-weight:900;
  color:var(--text2);
}
.spec-svc-mode-title b{color:#ef4444}
.spec-svc-mode-option{
  min-width:0;
  display:flex;
  align-items:center;
  gap:9px;
  min-height:44px;
  padding:10px 12px;
  border:1px solid var(--line);
  border-radius:var(--ui-radius-md,10px);
  background:var(--bg);
  color:var(--text1);
  font-size:14px;
  font-weight:850;
  cursor:pointer;
  transition:transform .18s ease,border-color .18s ease,background .18s ease;
}
.spec-svc-mode-option input{accent-color:var(--ssc);width:18px;height:18px;flex:0 0 auto}
.spec-svc-mode-option:has(input:checked){
  border-color:color-mix(in srgb,var(--ssc) 54%,var(--line));
  background:color-mix(in srgb,var(--ssc) 12%,rgba(255,255,255,.04));
}
@media (hover:hover){.spec-svc-mode-option:hover{transform:translateY(-1px)}}
@media (max-width:767px){
  .spec-svc-mode{grid-template-columns:1fr;gap:8px;padding:9px;border-radius:var(--ui-radius-md,10px)}
  .spec-svc-mode-title{font-size:10px}
  .spec-svc-mode-option{font-size:10px;min-height:46px;padding:11px 12px}
}

/* r77: special service form uses account card data instead of visible name/phone/car fields */
.spec-svc-account-source{
  display:flex;
  flex-direction:column;
  gap:8px;
  padding:12px 14px;
  border-radius:var(--ui-radius-md,10px);
  background:color-mix(in srgb, var(--ssc) 8%, var(--surface));
  border:1px solid color-mix(in srgb, var(--ssc) 18%, var(--line));
}
.spec-svc-account-title{
  font-size:14px;
  font-weight:900;
  color:var(--text1);
}
.spec-svc-account-note{
  font-size:13px;
  line-height:1.45;
  color:var(--text2);
}
.spec-svc-account-chips{
  display:flex;
  gap:7px;
  flex-wrap:wrap;
}
.spec-svc-account-chips span{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:0 10px;
  border-radius:999px;
  background:var(--surface);
  border:1px solid var(--line);
  color:var(--text1);
  font-size:13px;
  font-weight:800;
}
.spec-svc-account-warn{
  font-size:13px;
  font-weight:800;
  color:#ef4444;
}
@media (max-width:767px){
  .spec-svc-account-title{font-size:15px}
  .spec-svc-account-note,.spec-svc-account-warn{font-size:14px}
  .spec-svc-account-chips span{font-size:14px;min-height:30px}
}

/* v20260423r95 master exchange simplified + GPDRIVE */
.mx-work-head--compact{margin-bottom:12px}
.mx-work-head--compact .mx-title{font-size:24px}
.mx-layout{grid-template-columns:minmax(230px,280px) minmax(0,1fr)}
.mx-sidebar--service{display:none!important}
.mx-sidebar--filters{top:72px;padding:12px;border-radius:var(--ui-radius-md,10px)}
.mx-filter-grid{gap:5px}
.mx-filter-grid label span{font-size:10px;color:var(--text3)}
.mx-filter-actions .btn{flex:1;padding:9px 10px;font-size:12px}
.mx-counter-grid{grid-template-columns:repeat(5,minmax(72px,1fr));gap:8px;min-width:280px}
.mx-counter{min-height:58px;padding:9px 10px;border-radius:var(--ui-radius-md,10px)}
.mx-counter b{font-size:18px}.mx-counter span{font-size:10px}
.mx-tabs{gap:5px;margin-bottom:10px}.mx-tabs button{padding:8px 11px;font-size:11px}
.mx-stream-head--tools{position:sticky;top:62px;z-index:4;background:var(--bg);border:1px solid var(--line);border-radius:var(--ui-radius-md,10px);padding:8px 10px;margin-bottom:10px}
.mx-view-tools{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.mx-view-tools button{border:1px solid var(--line);background:var(--surface);color:var(--text2);border-radius:999px;padding:8px 11px;font-size:11px;font-weight:700;cursor:pointer}
.mx-view-tools button.is-active,.mx-gpdrive-btn{background:var(--orange)!important;color:#fff!important;border-color:var(--orange)!important}
.mx-card{border-radius:var(--ui-radius-md,10px);padding:14px;gap:10px}.mx-card-headings h4{font-size:16px}.mx-card-budget{font-size:17px}
.mx-card-desc{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.mx-meta-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.mx-meta-grid div{padding:8px;border-radius:var(--ui-radius-md,10px)}.mx-meta-grid b{font-size:10px}
.mx-actions .btn{padding:5px 10px;font-size:11px}
.mx-list-view{display:grid;gap:8px}
.mx-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:var(--ui-radius-md,10px);padding:11px 12px}
.mx-row.is-urgent{border-color:rgba(239,68,68,.28);box-shadow:0 0 0 1px rgba(239,68,68,.12) inset}
.mx-row-title{display:flex;align-items:center;gap:8px;color:var(--text)}.mx-row-title b{font-size:14px}.mx-row-meta{font-size:11px;color:var(--text3);margin-top:3px}
.mx-row-price{font-family:'Oswald',sans-serif;font-size:16px;color:var(--orange);white-space:nowrap}.mx-row-actions{display:flex;gap:6px}.mx-row-actions .btn{font-size:11px;padding:7px 10px}
.mx-gpdrive-shell{max-width:min(1100px,96vw)!important}.mx-gpdrive{display:grid;grid-template-rows:minmax(300px,52vh) minmax(150px,28vh);gap:12px}
.mx-gp-map{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:var(--ui-radius-lg,18px);background:radial-gradient(circle at 25% 20%,rgba(255,107,0,.14),transparent 28%),radial-gradient(circle at 80% 70%,rgba(96,165,250,.12),transparent 32%),var(--surface)}
.mx-gp-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);background-size:44px 44px;opacity:.55}
.mx-map-pin{position:absolute;z-index:2;transform:translate(-50%,-50%);width:32px;height:32px;border-radius:999px;border:2px solid #fff;background:var(--orange);color:#fff;font-weight:800;box-shadow:0 10px 24px rgba(0,0,0,.28);cursor:pointer}
.mx-map-pin.is-hot{background:#ef4444;animation:mxPulse 1.4s infinite}.mx-gp-legend{position:absolute;left:14px;bottom:14px;z-index:3;background:rgba(15,23,42,.86);color:#fff;border:1px solid rgba(255,255,255,.12);border-radius:var(--ui-radius-md,10px);padding:10px 12px;display:flex;gap:10px;align-items:center}.mx-gp-legend span{font-size:12px;color:rgba(255,255,255,.74)}
.mx-gp-list{overflow:auto;display:grid;gap:8px;padding-right:4px}.mx-gp-row{width:100%;text-align:left;border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:var(--ui-radius-md,10px);padding:11px 12px;display:grid;gap:3px;cursor:pointer}.mx-gp-row span,.mx-gp-row small{color:var(--text3);font-size:12px}.mx-gp-row b{font-size:13px}
@keyframes mxPulse{0%,100%{box-shadow:0 0 0 0 rgba(239,68,68,.38),0 10px 24px rgba(0,0,0,.28)}50%{box-shadow:0 0 0 10px rgba(239,68,68,0),0 10px 24px rgba(0,0,0,.28)}}
@media (max-width:900px){.mx-layout{grid-template-columns:1fr}.mx-sidebar--filters{display:none}.mx-counter-grid{grid-template-columns:repeat(3,minmax(0,1fr));width:100%}.mx-stream-head--tools{top:8px}.mx-view-tools{width:100%}.mx-view-tools button{flex:1}.mx-row{grid-template-columns:1fr}.mx-row-price{font-size:15px}.mx-row-actions{display:grid;grid-template-columns:repeat(3,1fr)}.mx-gpdrive{grid-template-rows:45vh 34vh}.mx-gp-map{border-radius:var(--ui-radius-md,10px)}}
@media (max-width:18px){.mx-work-head--compact .mx-title{font-size:18px}.mx-counter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mx-counter{min-height:18px}.mx-tabs{display:flex;overflow:auto;flex-wrap:nowrap;padding-bottom:4px}.mx-tabs button{white-space:nowrap}.mx-stream-head--tools{align-items:stretch}.mx-meta-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mx-card{padding:12px}.mx-actions .btn{min-width:calc(50% - 4px);flex:1 1 calc(50% - 4px)}.mx-row-actions{grid-template-columns:1fr}.mx-gpdrive{grid-template-rows:42vh 38vh}.mx-map-pin{width:28px;height:28px;font-size:11px}.mx-gp-legend{left:10px;right:10px;bottom:10px;justify-content:space-between}}

/* v20260503r96 — unified modal cleanup */
.app-settings-modal-overlay{z-index:9700;align-items:center;padding:14px;}
.app-settings-shell{width:min(600px,96vw);max-height:88dvh;display:flex;flex-direction:column;}
.app-settings-shell .cmodal-body{overflow:auto;padding:16px var(--ui-radius-lg,18px) var(--ui-radius-lg,18px);}
.app-settings-modal-body{min-height:0;}
.app-settings-sub{font-size:13px;color:var(--text2);margin-top:3px;}
.mx-modal-overlay{z-index:9750;align-items:center;padding:12px;}
.mx-sheet .cmodal-body{max-height:72dvh;overflow:auto;}
.mx-sheet-body .mx-panel-title{display:none;}
.mx-sheet-body .mx-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
.mx-sheet-body .mx-filter-actions{position:sticky;bottom:0;background:var(--surface, #fff);padding-top:10px;margin-top:10px;}
@media (max-width: 680px){
  .app-settings-modal-overlay,.mx-modal-overlay{align-items:flex-end;padding:0;}
  .app-settings-shell,.mx-modal-overlay .cmodal-card{width:100%;max-width:100%;max-height:92dvh;border-radius:var(--ui-radius-lg,18px) var(--ui-radius-lg,18px) 0 0;}
  .mx-sheet-body .mx-filter-grid{grid-template-columns:1fr;}
}

/* v20260503r97 — cmodal viewport fit fix */
.cmodal-overlay.open {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;    /* контент сверху — overlay скроллится */
  padding: clamp(12px, 2.5vw, 32px) clamp(8px, 2vw, 20px);
  padding-bottom: max(32px, env(safe-area-inset-bottom, 0px));
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior: contain;
}
/* flex-item — не растягивать, не сжимать */
.cmodal-overlay.open > * {
  flex: 0 0 auto;
  width: 100%;
  max-width: 620px;
}
/* cmodal-card — широкий бокс (биржа, фильтры, GPDRIVE) */
.cmodal-overlay.open .cmodal-card,
.cmodal-overlay.open > .cmodal-card {
  max-width: min(940px, calc(100vw - 24px));
  max-height: calc(100dvh - 48px);
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border-radius: var(--ui-radius-lg,18px);
}
.cmodal-overlay.open .cmodal-card .cmodal-head { flex: 0 0 auto; }
.cmodal-overlay.open .cmodal-card .cmodal-body {
  flex: 1 1 0;
  min-height: 0;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior: contain;
}
.cmodal-overlay.open .cmodal-card .cmodal-actions,
.cmodal-overlay.open .cmodal-card .mx-filter-actions { flex: 0 0 auto; }

/* cmodal-box — стандартный бокс */
.cmodal-overlay.open .cmodal-box,
.cmodal-overlay.open > .cmodal-box {
  max-width: min(520px, calc(100vw - 24px));
  border-radius: var(--ui-radius-lg,18px);
  /* НЕТ max-height — overlay сам скроллится на десктопе */
}

/* modal-body-v2 (клиентская деталь заявки) */
.cmodal-overlay.open .modal-body-v2,
.cmodal-overlay.open > .modal-body-v2 {
  background: var(--bg2);
  border: 1px solid var(--line);
  border-radius: var(--ui-radius-lg,18px);
  box-shadow: 0 24px 64px rgba(0,0,0,.5);
}
.modal-header-v2 {
  position: sticky;
  top: 0;
  z-index: 2;
  background: var(--bg2);
  border-radius: var(--ui-radius-lg,18px) var(--ui-radius-lg,18px) 0 0;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

/* ── Mobile ≤ 680px: bottom sheet ── */
@media (max-width: 680px) {
  .cmodal-overlay.open {
    align-items: flex-end;     /* прибиваем к низу */
    justify-content: flex-end;
    padding: 0;
    padding-bottom: 0;
    overflow: hidden;          /* overlay не скроллится — скроллится box */
  }
  /* Все боксы = bottom sheet */
  .cmodal-overlay.open > *,
  .cmodal-overlay.open .cmodal-card,
  .cmodal-overlay.open .cmodal-box,
  .cmodal-overlay.open .modal-body-v2 {
    width: 100% !important;
    max-width: 100% !important;
    border-radius: var(--ui-radius-lg,18px) var(--ui-radius-lg,18px) 0 0 !important;
    max-height: calc(94dvh - env(safe-area-inset-top, 0px)) !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;
  }
  .modal-header-v2 { border-radius: var(--ui-radius-lg,18px) var(--ui-radius-lg,18px) 0 0; }
  /* cmodal-card на мобиле: header sticky внутри бокса */
  .cmodal-overlay.open .cmodal-card {
    overflow: hidden !important;  /* cmodal-body скроллится внутри */
  }
  .cmodal-overlay.open .cmodal-card .cmodal-body {
    max-height: none !important;
    overflow-y: auto !important;
  }
}
@media (max-width: 400px) {
  .cmodal-overlay.open > *,
  .cmodal-overlay.open .cmodal-card,
  .cmodal-overlay.open .cmodal-box,
  .cmodal-overlay.open .modal-body-v2 {
    max-height: calc(96dvh - env(safe-area-inset-top, 0px)) !important;
  }
}


/* v20260503r99 — hide heavy master exchange meta grid on mobile */
@media (max-width:680px){
  .mx-exchange-shell--no-head .mx-card > .mx-meta-grid{
    display:none !important;
  }
}

/* v20260503r100 — mobile exchange toolbar and tablet-visible filters */
.mx-mobile-tools{display:none}
.mx-filter-tabs{margin-bottom:10px}
.mx-filter-tabs label{display:flex;flex-direction:column;gap:6px;font-size:12px;color:var(--text2)}
@media (max-width:900px) and (min-width:681px){
  .mx-exchange-shell--no-head .mx-layout{grid-template-columns:1fr}
  .mx-exchange-shell--no-head .mx-sidebar--filters{display:block !important;position:static;top:auto;order:0}
  .mx-exchange-shell--no-head .mx-center-col{order:1}
  .mx-exchange-shell--no-head .mx-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .mx-exchange-shell--no-head .mx-filter-actions{justify-content:flex-end}
  .mx-exchange-shell--no-head .mx-filter-actions .btn{flex:0 0 auto;min-width:130px}
}
@media (max-width:680px){
  .master-work-page .master-work-nav-card{display:none !important}
  .mx-exchange-shell--no-head{margin-top:0}
  .mx-exchange-shell--no-head .mx-layout{display:block}
  .mx-exchange-shell--no-head .mx-sidebar--filters{display:none !important}
  .mx-exchange-shell--no-head .mx-tabs{display:none !important}
  .mx-exchange-shell--no-head .mx-stream-head--tools{position:static;top:auto;padding:0;border:0;background:transparent;margin:8px 0 10px}
  .mx-exchange-shell--no-head .mx-stream-head--tools > div:first-child{display:none}
  .mx-exchange-shell--no-head .mx-view-tools{display:none}
  .mx-mobile-tools{display:grid;grid-template-columns:minmax(0,1fr) 42px 42px;gap:8px;align-items:center;margin:0 0 10px;position:sticky;top:8px;z-index:7;padding:8px;background:rgba(15,23,42,.92);border:1px solid rgba(255,255,255,.10);border-radius:var(--ui-radius-md,10px);box-shadow:0 12px 30px rgba(0,0,0,.18);backdrop-filter:blur(12px)}
  .mx-mobile-searchbox{display:grid;align-items:center;gap:4px;min-width:0;background:#fff;border:1px solid rgba(255,255,255,.14);border-radius:var(--ui-radius-md,10px);padding:3px 4px 3px 8px}
  .mx-mobile-search-ico{font-size:14px;opacity:.72;text-align:center}
  .mx-mobile-searchbox .pf-input{height:34px;min-height:34px;border:0 !important;background:transparent !important;padding:0 4px !important;color:#111827;font-size:14px;box-shadow:none !important}
  .mx-mobile-searchbox .pf-input::placeholder{color:#6b7280}
  .mx-icon-btn{height:42px;min-width:42px;border:1px solid rgba(255,255,255,.14);border-radius:var(--ui-radius-md,10px);background:rgba(255,255,255,.10);color:#fff;font-size:17px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;position:relative;cursor:pointer}
  .mx-mobile-searchbox .mx-icon-btn{height:32px;min-width:32px;border-radius:var(--ui-radius-md,10px);background:var(--orange);border-color:var(--orange);font-size:14px}
  .mx-filter-btn span{position:absolute;right:-4px;top:-5px;min-width:17px;height:17px;padding:0 4px;border-radius:999px;background:#ef4444;color:#fff;font-size:10px;line-height:17px;text-align:center;border:1px solid rgba(255,255,255,.7)}
  .mx-mobile-bar{display:none !important}
  .mx-sheet-body .mx-panel-title{display:block;font-size:15px;margin-bottom:10px}
  .mx-sheet-body .mx-filter-tabs{display:block}
  .mx-sheet-body .mx-filter-grid{grid-template-columns:1fr}
}

/* v20260503r101 — compact master exchange actions */
.mx-actions--core,
.mx-row-actions.mx-actions--core{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  width:100%;
}
.mx-actions--core .btn,
.mx-row-actions.mx-actions--core .btn{
  min-width:0!important;
  width:100%;
  flex:0 1 auto!important;
  justify-content:center;
  padding:9px 8px;
  font-size:12px;
  white-space:nowrap;
}
@media (max-width:680px){
  .mx-actions--core,
  .mx-row-actions.mx-actions--core{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
  .mx-actions--core .btn,
  .mx-row-actions.mx-actions--core .btn{
    min-width:0!important;
    flex:0 1 auto!important;
    padding:8px 6px;
    font-size:11px;
  }
}

/* v20260503r103 — master work process accepted demo page */
.mx-process-shell{display:block;margin-top:0}
.mx-process-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:12px}
.mx-process-summary>div{background:var(--surface);border:1px solid var(--line);border-radius:var(--ui-radius-md,10px);padding:13px 14px;min-width:0}
.mx-process-summary b{display:block;font-family:'Oswald',sans-serif;font-size:22px;line-height:1;color:var(--orange)}
.mx-process-summary span{display:block;margin-top:5px;font-size:12px;color:var(--text3)}
.mx-process-tools{display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--surface);border:1px solid var(--line);border-radius:var(--ui-radius-lg,18px);padding:14px 16px;margin-bottom:12px}
.mx-process-tools strong{display:block;font-family:'Oswald',sans-serif;font-size:18px;line-height:1.15;color:var(--text)}
.mx-process-tools span{display:block;margin-top:4px;font-size:12px;color:var(--text3);line-height:1.35}
.mx-process-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:12px}
.mx-process-card{background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--orange);border-radius:var(--ui-radius-lg,18px);padding:15px 16px;min-width:0;box-shadow:0 12px 28px rgba(0,0,0,.05)}
.mx-process-card.is-urgent{border-left-color:#ef4444}
.mx-process-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}
.mx-process-main{min-width:0;flex:1}
.mx-process-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}
.mx-process-badges span{font-size:10px;font-weight:800;line-height:1;padding:5px 8px;border-radius:999px;background:rgba(255,107,0,.10);border:1px solid rgba(255,107,0,.22);color:var(--orange)}
.mx-process-badges .is-hot{background:rgba(239,68,68,.12);border-color:rgba(239,68,68,.25);color:#ef4444}
.mx-process-card h3{margin:0;font-family:'Oswald',sans-serif;font-size:18px;line-height:1.15;color:var(--text)}
.mx-process-card p{margin:5px 0 0;font-size:13px;line-height:1.45;color:var(--text2)}
.mx-process-price{text-align:right;flex:0 0 auto}
.mx-process-price b{display:block;font-family:'Oswald',sans-serif;font-size:18px;color:var(--orange);white-space:nowrap}
.mx-process-price small{display:block;margin-top:4px;font-size:10px;color:var(--text3)}
.mx-process-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:10px 0}
.mx-process-meta>div{background:var(--bg);border:1px solid var(--line);border-radius:var(--ui-radius-md,10px);padding:9px 10px;min-width:0}
.mx-process-meta span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.03em;color:var(--text3);margin-bottom:4px}
.mx-process-meta b{display:block;font-size:12px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mx-process-progress{margin-top:10px;background:var(--bg);border:1px solid var(--line);border-radius:var(--ui-radius-md,10px);padding:10px;overflow:hidden}
.mx-process-progress>div{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:7px;font-size:12px;color:var(--text2)}
.mx-process-progress b{font-size:12px;color:var(--orange)}
.mx-process-progress i{display:block;height:5px;background:var(--orange);border-radius:99px;min-width:5px}
.mx-process-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}
.mx-process-actions .btn{min-width:0!important;width:100%;justify-content:center;padding:9px 8px;font-size:12px;white-space:nowrap}
@media (max-width:680px){
  .mx-process-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-bottom:10px}
  .mx-process-summary>div{padding:10px 8px;border-radius:var(--ui-radius-md,10px);text-align:center}
  .mx-process-summary b{font-size:18px}
  .mx-process-summary span{font-size:10px;line-height:1.15}
  .mx-process-tools{padding:12px 13px;border-radius:var(--ui-radius-md,10px);margin-bottom:10px}
  .mx-process-tools .btn{display:none}
  .mx-process-tools strong{font-size:17px}
  .mx-process-list{grid-template-columns:1fr;gap:10px}
  .mx-process-card{padding:13px 13px;border-radius:var(--ui-radius-md,10px)}
  .mx-process-top{gap:5px;margin-bottom:8px}
  .mx-process-card h3{font-size:17px}
  .mx-process-card p{font-size:12px}
  .mx-process-price b{font-size:16px}
  .mx-process-meta{grid-template-columns:1fr 1fr;gap:7px}
  .mx-process-meta>div{padding:8px 9px}
  .mx-process-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
  .mx-process-actions .btn{font-size:11px;padding:8px 6px}
}
@media (max-width:380px){
  .mx-process-meta{grid-template-columns:1fr}
  .mx-process-summary span{font-size:9px}
}

/* v20260503r104 — hide quick summary on mobile master queue/work */
@media (max-width:680px){
  .master-work-quick-summary{
    display:none !important;
  }
  .master-work-extra-grid{
    grid-template-columns:1fr !important;
    gap:10px !important;
    margin-top:10px !important;
  }
}


/* v20260503r108 — legal pages: privacy/terms visible layout */
.legal-page-section{
  padding:34px 0 64px;
}
.legal-page-container{
  max-width:920px;
}
.legal-page-grid{
  display:grid;
  gap:14px;
}
.legal-card{
  padding:22px;
}
.legal-card-title{
  margin:0 0 10px;
  font-size:18px;
  line-height:1.25;
  font-weight:900;
  color:var(--text1);
}
.legal-card-text{
  font-size:14px;
  line-height:1.85;
  color:var(--text2);
  white-space:pre-line;
}
@media (max-width:680px){
  .legal-page-section{
    padding:22px 0 calc(var(--bnav-h, 72px) + 34px);
  }
  .legal-page-container{
    padding:0 12px;
  }
  .legal-page-grid{
    gap:10px;
  }
  .legal-card{
    padding:16px 14px;
    border-radius:var(--ui-radius-md,10px);
  }
  .legal-card-title{
    font-size:16px;
  }
  .legal-card-text{
    font-size:13px;
    line-height:1.7;
  }
}

/* ── MX-CARD кнопки на маленьких экранах ── */
@media (max-width: 480px) {
  .mx-actions--core {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 6px !important;
  }
  .mx-actions--core .btn {
    min-width: 0 !important;
    width: 100% !important;
    font-size: 11px !important;
    padding: 8px 4px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }
}

@media (max-width: 360px) {
  .mx-actions--core {
    grid-template-columns: 1fr 1fr !important;
  }
  .mx-actions--core .btn:last-child {
    grid-column: 1 / -1 !important;
  }
  .mx-card-budget {
    font-size: 14px !important;
    max-width: 120px !important;
  }
}

/* ── MX-PROCESS: зелёный акцент вместо оранжевого ── */
.mx-process-card{border-left-color:#34d399 !important}
.mx-process-card h3{font-size:16px !important}
.mx-process-card p{font-size:12px !important;-webkit-line-clamp:1;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical}
.mx-process-price b{color:#34d399 !important;font-size:16px !important}
@media (max-width:640px){
  .mx-process-card{padding:12px !important}
  .mx-process-meta{grid-template-columns:repeat(2,1fr) !important}
  .mx-process-summary{grid-template-columns:repeat(3,1fr) !important;padding:8px !important}
  .mx-process-summary b{font-size:17px !important}
}

/* ── MX-CARD QUEUE: акцент на срочность ── */
.mx-card.is-urgent{border-left-width:3px !important;border-left-color:#ef4444 !important}
.mx-card.is-suitable{border-left-width:3px !important;border-left-color:var(--orange) !important}
.mx-card-scenario{align-items:center;flex-wrap:wrap}

/* ── MX QUICK FILTERS: единственный рабочий контейнер — модалка фильтров ── */
.mx-mobile-tools-row {
  display: flex; gap: 8px; align-items: center;
}
.mx-mobile-tools-row .mx-mobile-searchbox { flex: 1; }
.mx-sheet-quickfilters {
  display: none; gap: 6px; flex-wrap: nowrap;
  overflow-x: auto; padding: 2px 0 4px;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}
.mx-sheet-quickfilters::-webkit-scrollbar { display: none; }
.mx-sheet-qbtn {
  flex: 0 0 auto;
  font-size: 11px; font-weight: 700;
  padding: 5px 10px; border-radius: 999px;
  border: 1px solid var(--line);
  background: var(--bg3); color: var(--text2);
  cursor: pointer; white-space: nowrap;
  transition: border-color .15s, background .15s, color .15s;
}
.mx-sheet-qbtn.is-active {
  border-color: var(--orange);
  background: rgba(255,107,0,.1);
  color: var(--orange);
}
.mx-sheet-qbtn:active { transform: scale(.96); }
.mx-filter-badge {
  display: inline-flex; align-items: center; justify-content: center;
  min-width: 16px; height: 16px; padding: 0 3px;
  border-radius: 99px; background: var(--orange);
  color: #fff; font-size: 9px; font-weight: 800;
  margin-left: 3px;
}

/* ── MOBILE TOOLS layout ── */
.mx-mobile-tools {
  display: flex !important;
  flex-direction: column;
  gap: 8px;
}

/* v20260503r117 — data source labels for exchange/process */
.mx-source-badge{display:inline-flex;align-items:center;justify-content:center;min-height:18px;padding:3px 7px;border-radius:999px;font-size:9px;font-style:normal;font-weight:900;letter-spacing:.04em;line-height:1;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06);color:var(--text2)}
.mx-source-badge.is-demo{background:rgba(245,158,11,.13);border-color:rgba(245,158,11,.30);color:#f59e0b}
.mx-source-badge.is-db{background:rgba(34,197,94,.12);border-color:rgba(34,197,94,.28);color:#22c55e}
.mx-source-badge.is-runtime{background:rgba(59,130,246,.12);border-color:rgba(59,130,246,.28);color:#60a5fa}
.mx-detail-source{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:10px}.mx-detail-source small{font-size:12px;color:var(--text2);line-height:1.35}
.mx-card.is-demo,.mx-row.is-demo,.mx-process-card.is-demo{border-style:dashed}
@media (max-width:680px){.mx-source-badge{font-size:8px;padding:3px 6px}.mx-detail-source small{font-size:11px}.mx-card-scenario .mx-source-badge{margin-left:2px}}

/* v20260503r128 — быстрые фильтры видимы только в теле модалки фильтров */
.cmodal-overlay.open.mx-modal-overlay .cmodal-body.mx-sheet-body > .mx-sheet-quickfilters.mx-sheet-quickfilters--sheet{display:flex;margin-bottom:10px;}

/* v20260503r121 — profile setup modal visual cleanup */
.profile-setup-overlay{
  position:fixed;inset:0;z-index:9750;
  display:flex;align-items:center;justify-content:center;
  padding:clamp(12px,3vw,28px);
  background:radial-gradient(circle at 50% 0%, rgba(255,107,0,.16), transparent 38%), rgba(7,17,27,.84);
  -webkit-backdrop-filter:blur(14px) saturate(1.25);
  backdrop-filter:blur(14px) saturate(1.25);
  opacity:0;transition:opacity .22s ease;
}
.profile-setup-overlay.is-visible{opacity:1}
.profile-setup-panel{
  width:min(560px,100%);
  max-height:min(720px,calc(100dvh - 28px));
  display:grid;grid-template-rows:auto minmax(0,1fr) auto;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.12);
  border-radius:var(--ui-radius-lg,18px);
  background:linear-gradient(180deg, rgba(28,28,32,.98), rgba(14,14,17,.98));
  box-shadow:0 28px 90px rgba(0,0,0,.55), inset 0 1px 0 rgba(255,255,255,.08);
  transform:translateY(18px) scale(.985);
  transition:transform .24s cubic-bezier(.16,1,.3,1);
}
.profile-setup-overlay.is-visible .profile-setup-panel{transform:translateY(0) scale(1)}
.profile-setup-drag{display:none;width:42px;height:4px;border-radius:999px;background:rgba(255,255,255,.20);margin:10px auto 0}
.profile-setup-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:start;padding:20px 20px 16px;border-bottom:1px solid rgba(255,255,255,.08)}
.profile-setup-icon{width:46px;height:46px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--ui-radius-md,10px);background:linear-gradient(180deg, rgba(255,107,0,.18), rgba(255,107,0,.07));border:1px solid rgba(255,107,0,.24);font-size:22px;box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}
.profile-setup-titlebox{min-width:0}
.profile-setup-kicker{font-size:10px;font-weight:900;color:var(--orange);text-transform:uppercase;letter-spacing:.09em;margin-bottom:5px}
.profile-setup-title{font-family:Oswald,sans-serif;font-size:22px;font-weight:800;line-height:1.08;color:var(--text1)}
.profile-setup-subtitle{max-width:420px;margin-top:7px;font-size:13px;line-height:1.45;color:var(--text2)}
.profile-setup-close{width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--ui-radius-md,10px);background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.10);color:var(--text2);font-size:15px;cursor:pointer;transition:background .15s,border-color .15s,color .15s,transform .15s}
.profile-setup-close:hover{background:rgba(255,255,255,.10);border-color:rgba(255,255,255,.18);color:var(--text1)}
.profile-setup-close:active{transform:scale(.94)}
.profile-setup-body{min-height:0;overflow:auto;padding:18px 20px 20px;scrollbar-width:thin}
.profile-setup-grid{display:grid;grid-template-columns:1fr;gap:13px}
.profile-setup-field{display:flex;flex-direction:column;gap:7px;min-width:0}
.profile-setup-label{font-size:10px;font-weight:900;color:var(--text3);text-transform:uppercase;letter-spacing:.055em}
.profile-setup-input{width:100%;min-height:48px;border-radius:var(--ui-radius-md,10px) !important;font-size:15px !important;padding:0 14px !important;background:rgba(255,255,255,.055) !important;border-color:rgba(255,255,255,.12) !important;box-shadow:inset 0 1px 0 rgba(255,255,255,.05)}
.profile-setup-input:focus{border-color:rgba(255,107,0,.55) !important;box-shadow:0 0 0 4px rgba(255,107,0,.13), inset 0 1px 0 rgba(255,255,255,.06) !important;outline:none}
.profile-setup-footer{display:flex;align-items:center;gap:10px;padding:14px 20px calc(16px + env(safe-area-inset-bottom,0px));border-top:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg, rgba(255,255,255,.035), rgba(255,255,255,.015))}
.profile-setup-skip{min-width:132px;min-height:46px;padding:0 16px !important;border-radius:var(--ui-radius-md,10px) !important}
.profile-setup-save{flex:1;min-height:46px;padding:0 18px !important;border-radius:var(--ui-radius-md,10px) !important;font-size:14px !important;font-weight:900 !important}
[data-theme="light"] .profile-setup-overlay{background:radial-gradient(circle at 50% 0%, rgba(255,107,0,.14), transparent 40%), rgba(244,245,247,.76)}
[data-theme="light"] .profile-setup-panel{background:#fff !important;border-color:rgba(0,0,0,.08) !important;box-shadow:0 28px 80px rgba(15,23,42,.18), inset 0 1px 0 rgba(255,255,255,.8)}
[data-theme="light"] .profile-setup-head,[data-theme="light"] .profile-setup-footer{border-color:rgba(0,0,0,.08)}
[data-theme="light"] .profile-setup-footer{background:linear-gradient(180deg, rgba(0,0,0,.015), rgba(0,0,0,.025))}
[data-theme="light"] .profile-setup-close{background:#f4f5f7;border-color:rgba(0,0,0,.08);color:#4b5563}

/* r129: client order response offers */
.mo-responses{
  margin:12px 0 0;
  padding:12px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:var(--ui-radius-md,10px);
  background:linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,.018));
  display:grid;
  gap:9px;
}
.mo-responses--empty{
  color:var(--text3);
  font-size:12px;
  padding:10px 12px;
}
.mo-responses-head{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:12px;color:var(--text2)}
.mo-responses-head b{color:var(--text1);font-size:13px}
.mo-responses-head span{min-width:24px;height:24px;border-radius:999px;background:rgba(255,107,0,.14);color:var(--orange);display:inline-flex;align-items:center;justify-content:center;font-weight:900}
.mo-response-row{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px;border:1px solid rgba(255,255,255,.08);border-radius:var(--ui-radius-md,10px);background:rgba(0,0,0,.14)}
.mo-response-row.is-accepted{border-color:rgba(52,211,153,.28);background:rgba(52,211,153,.075)}
.mo-response-av{width:38px;height:38px;border-radius:var(--ui-radius-md,10px);display:flex;align-items:center;justify-content:center;font-weight:900;font-size:13px}
.mo-response-main{min-width:0;display:grid;gap:4px}
.mo-response-top{display:flex;align-items:center;gap:8px;justify-content:space-between;min-width:0}
.mo-response-top b{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mo-response-top span{font-size:10px;color:var(--text3);white-space:nowrap}
.mo-response-meta{font-size:11px;color:var(--text2);line-height:1.35}
.mo-response-comment{font-size:11px;color:var(--text3);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.mo-response-actions{display:flex;gap:7px;align-items:center;justify-content:flex-end;flex-wrap:wrap}
.mo-response-actions .btn{min-height:34px;padding:7px 10px;font-size:11px;border-radius:var(--ui-radius-md,10px)}
@media (max-width:18px){
  .mo-responses{padding:10px;border-radius:var(--ui-radius-md,10px)}
  .mo-response-row{grid-template-columns:18px minmax(0,1fr);align-items:start}
  .mo-response-av{width:34px;height:34px;border-radius:var(--ui-radius-md,10px)}
  .mo-response-actions{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;width:100%}
  .mo-response-actions .btn{width:100%;justify-content:center}
}


.mx-filter-badge {
  display: inline-flex; align-items: center; justify-content: center;
  min-width: 16px; height: 16px; padding: 0 3px;
  border-radius: 99px; background: var(--orange);
  color: #fff; font-size: 9px; font-weight: 800;
  margin-left: 3px; vertical-align: middle;
}

/* ═══════════════════════════════════════════════════════════════════
   RESPONSE STATUS — статус отклика в карточке биржи
═══════════════════════════════════════════════════════════════════ */
.mx-resp-status {
  display: flex; align-items: center; gap: 6px;
  font-size: 12px; font-weight: 700;
  padding: 6px 12px; border-radius: 99px;
  flex: 1;
}
.mx-resp-status--pending {
  background: rgba(245,158,11,.1);
  border: 1px solid rgba(245,158,11,.25);
  color: #f59e0b;
}
.mx-resp-status--viewed {
  background: rgba(96,165,250,.1);
  border: 1px solid rgba(96,165,250,.25);
  color: #60a5fa;
}
.mx-resp-status--accepted {
  background: rgba(52,211,153,.1);
  border: 1px solid rgba(52,211,153,.3);
  color: #34d399;
}
.mx-resp-status--declined {
  background: rgba(239,68,68,.08);
  border: 1px solid rgba(239,68,68,.2);
  color: #ef4444;
  opacity: .8;
}

/* Строка статус + цена */
.mx-resp-status-row {
  display: flex; align-items: center;
  justify-content: space-between; gap: 8px;
  flex-wrap: wrap;
}
.mx-resp-my-price {
  font-size: 12px; color: var(--text2); white-space: nowrap;
}
.mx-resp-my-price b { color: #34d399; }

/* ═══════════════════════════════════════════════════════════════════
   RESPONSES LIST — вкладка "Отклики" мастера
═══════════════════════════════════════════════════════════════════ */
.mx-responses-list {
  display: grid; gap: 12px;
}
.mx-resp-card {
  border-left: 3px solid rgba(245,158,11,.5) !important;
}
.mx-resp-card.mx-resp-accepted {
  border-left-color: #34d399 !important;
}

/* ═══════════════════════════════════════════════════════════════════
   EMPTY STATES — унифицированный стиль
═══════════════════════════════════════════════════════════════════ */
.mx-empty-state {
  display: flex; flex-direction: column;
  align-items: center; text-align: center;
  padding: 48px 24px; gap: 10px;
}
.mx-empty-icon { font-size: 40px; margin-bottom: 4px; }
.mx-empty-state b {
  font-size: 17px; font-weight: 700; color: var(--text);
  font-family: 'Oswald', sans-serif;
}
.mx-empty-state span {
  font-size: 13px; color: var(--text3);
  max-width: 300px; line-height: 1.55;
}

/* Mobile */
@media (max-width: 640px) {
  .mx-resp-status { font-size: 11px; padding: 5px 10px; }
  .mx-empty-state { padding: 36px 16px; }
  .mx-empty-state b { font-size: 15px; }
}

/* ═══════════════════════════════════════════════════════════════════
   PROCESS CARD — таймер работы, запчасти, ETA
═══════════════════════════════════════════════════════════════════ */
.mx-work-timer {
  font-size: 11px; font-weight: 700;
  color: #f59e0b;
  display: block; margin-top: 3px;
}
.mx-work-meta-row {
  display: flex; gap: 12px; flex-wrap: wrap;
  font-size: 11px; color: var(--text3);
  padding: 6px 0; border-top: 1px solid var(--line);
}
.mx-work-eta {
  display: flex; align-items: center; gap: 4px;
}
.mx-work-eta b { color: #34d399; }
.mx-work-parts {
  display: flex; align-items: center; gap: 4px;
}
.mx-work-parts b { color: var(--orange); }

/* Полоса этапа в карточке */
.mx-process-progress {
  background: rgba(52,211,153,.08);
  border: 1px solid rgba(52,211,153,.15);
  border-radius: var(--ui-radius-md,10px); padding: 8px 12px;
}
.mx-process-progress > div {
  display: flex; align-items: center;
  justify-content: space-between;
  font-size: 12px; color: var(--text2);
  margin-bottom: 6px;
}
.mx-process-progress > div b { color: #34d399; font-weight: 800; }
.mx-process-progress > i {
  display: block; height: 4px; border-radius: var(--ui-radius-sm,5px);
  background: #34d399;
  transition: width .4s ease;
}

/* Кнопки process: ETap | Chat | Card */
.mx-process-actions {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 8px;
}
.mx-process-actions .btn {
  min-height: 40px; font-size: 12px;
}

@media (max-width: 400px) {
  .mx-process-actions {
    grid-template-columns: 1fr 1fr;
  }
  .mx-process-actions .btn:first-child {
    grid-column: 1 / -1;
  }
}

/* ═══════════════════════════════════════════════════════════════════
   PROCESS CARD — 4 кнопки в сетке
═══════════════════════════════════════════════════════════════════ */
.mx-process-actions {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 6px;
}
.mx-process-actions .btn {
  font-size: 11px !important;
  padding: 8px 6px !important;
  min-height: 40px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

@media (max-width: 480px) {
  .mx-process-actions {
    grid-template-columns: repeat(2, 1fr);
  }
  .mx-process-actions .btn:first-child {
    grid-column: 1 / -1;
    font-size: 12px !important;
    padding: 10px !important;
  }
}
@media (max-width: 360px) {
  .mx-process-actions { grid-template-columns: 1fr; }
  .mx-process-actions .btn:first-child { grid-column: unset; }
}

/* ═══════════════════════════════════════════════════════════════════
   WORK TIMER
═══════════════════════════════════════════════════════════════════ */
.mx-work-timer {
  font-size: 11px; font-weight: 700;
  color: var(--orange); white-space: nowrap;
  padding: 2px 8px;
  background: rgba(255,107,0,.1);
  border-radius: 99px;
  margin-top: 4px;
  display: inline-block;
}
.mx-work-eta {
  font-size: 12px; color: var(--text2);
  padding: 2px 0;
}
.mx-work-parts {
  font-size: 12px; color: var(--text2);
}
.mx-work-meta-row {
  display: flex; gap: 12px;
  flex-wrap: wrap; align-items: center;
  padding: 6px 0;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  margin: 4px 0;
}

/* r145: repair stages and client event timeline */
.repair-stage-steps{display:grid;gap:6px;margin:8px 0 10px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--ui-radius-md,10px);background:color-mix(in srgb,var(--surface,#151515) 88%,transparent);font-size:12px;line-height:1.45;color:var(--text2)}
.repair-stage-steps--master label{display:flex;align-items:flex-start;gap:8px;min-width:0;cursor:pointer}
.repair-stage-steps--master input{margin-top:2px;accent-color:var(--orange)}
.repair-stage-steps--client span{display:block;min-width:0;word-break:break-word}
.repair-events-list{display:flex;flex-direction:column;gap:8px}
.repair-event-item{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--ui-radius-md,10px);background:var(--surface);min-width:0}
.repair-event-item b{font-size:12px;color:var(--text);min-width:0;word-break:break-word}
.repair-event-item span{font-size:11px;color:var(--text3);text-align:right;min-width:90px}
.repair-events-empty{padding:14px 16px;border:1px dashed var(--line);border-radius:var(--ui-radius-md,10px);color:var(--text3);font-size:13px;text-align:center;background:var(--surface)}
@media (max-width:680px){
  .repair-stage-steps{font-size:12px;padding:9px 10px;border-radius:var(--ui-radius-md,10px)}
  .repair-event-item{display:block;padding:10px 11px}
  .repair-event-item span{display:block;text-align:left;margin-top:4px;min-width:0}
}

/* r147: master response management */
.mx-response-status-strip{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:8px 0 4px;
}
.mx-response-status-strip span{
  display:inline-flex;
  align-items:center;
  gap:4px;
  min-height:30px;
  padding:5px 10px;
  border:1px solid var(--line);
  border-radius:999px;
  background:rgba(255,255,255,.045);
  color:var(--text2);
  font-size:12px;
  font-weight:700;
}
.mx-resp-card--accepted{border-left-color:rgba(34,197,94,.75)!important;}
.mx-resp-card--declined,
.mx-resp-card--rejected{border-left-color:rgba(239,68,68,.6)!important;}
.mx-resp-card--cancelled{opacity:.72;border-left-color:rgba(148,163,184,.45)!important;}
.mx-resp-status--cancelled{background:rgba(148,163,184,.12);border-color:rgba(148,163,184,.26);color:#cbd5e1;}
.mx-resp-status--rejected,
.mx-resp-status--declined{background:rgba(239,68,68,.12);border-color:rgba(239,68,68,.28);color:#fca5a5;}
.mx-danger-action{color:#ef4444!important;border-color:rgba(239,68,68,.3)!important;}
.mx-edit-note{
  margin:0 0 12px;
  padding:10px 12px;
  border:1px solid rgba(245,158,11,.25);
  border-radius:var(--ui-radius-md,10px);
  background:rgba(245,158,11,.08);
  color:#fbbf24;
  font-size:12px;
  font-weight:700;
}
@media (max-width:680px){
  .mx-response-status-strip{gap:6px;overflow-x:auto;flex-wrap:nowrap;padding-bottom:2px;}
  .mx-response-status-strip span{white-space:nowrap;font-size:11px;padding:5px 9px;}
  .mx-resp-card .mx-actions--core{grid-template-columns:repeat(3,minmax(0,1fr));}
}

/* r150: client order cards — compact responses CTA + full offers in details modal */
.mo-responses-cta{
  width:100%;
  border:1px solid var(--line);
  border-radius:var(--ui-radius-md,10px);
  background:linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.025));
  color:var(--text1);
  display:grid;
  grid-template-columns:38px minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  padding:10px 12px;
  margin:10px 0 0;
  cursor:pointer;
  text-align:left;
  font-family:inherit;
  box-sizing:border-box;
  min-width:0;
}
.mo-responses-cta:hover{border-color:rgba(255,107,0,.35);background:rgba(255,107,0,.055)}
.mo-responses-cta-ico{width:38px;height:38px;border-radius:var(--ui-radius-md,10px);display:flex;align-items:center;justify-content:center;background:rgba(255,107,0,.10);font-size:18px;flex-shrink:0}
.mo-responses-cta-main{min-width:0;display:flex;flex-direction:column;gap:2px}
.mo-responses-cta-main b{font-size:13px;line-height:1.2;color:var(--text1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mo-responses-cta-main em{font-style:normal;font-size:11px;line-height:1.25;color:var(--text3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mo-responses-cta-count{min-width:28px;height:28px;padding:0 8px;border-radius:999px;background:rgba(255,107,0,.14);color:var(--orange);font-size:12px;font-weight:900;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(255,107,0,.22)}
.mo-responses-cta.has-responses{border-color:rgba(255,107,0,.28);background:linear-gradient(180deg, rgba(255,107,0,.10), rgba(255,107,0,.035))}

.client-order-offers{background:var(--surface);border:1px solid var(--line);border-radius:var(--ui-radius-md,10px);padding:12px;box-sizing:border-box;min-width:0}
.client-order-offers-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px;font-size:12px;color:var(--text2)}
.client-order-offers-head b{font-size:12px;color:var(--text1);text-transform:uppercase;letter-spacing:.7px}
.client-order-offers-head span{min-width:26px;height:26px;padding:0 8px;border-radius:999px;background:rgba(255,107,0,.14);color:var(--orange);font-weight:900;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(255,107,0,.22)}
.client-order-offers-list{display:flex;flex-direction:column;gap:10px}
.client-order-offer{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:10px;align-items:start;padding:10px;border:1px solid var(--line);border-radius:var(--ui-radius-md,10px);background:var(--bg);min-width:0}
.client-order-offer.is-accepted{border-color:rgba(34,197,94,.34);background:rgba(34,197,94,.055)}
.client-order-offer.is-muted{opacity:.62}
.client-order-offer-av{width:42px;height:42px;border-radius:var(--ui-radius-md,10px);display:flex;align-items:center;justify-content:center;font-weight:900;flex-shrink:0}
.client-order-offer-main{min-width:0;display:flex;flex-direction:column;gap:4px}
.client-order-offer-top{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}
.client-order-offer-top b{font-size:14px;color:var(--text1);min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.client-order-offer-top span{font-size:10px;font-weight:800;color:var(--orange);padding:3px 7px;border-radius:999px;background:rgba(255,107,0,.10);white-space:nowrap;flex-shrink:0}
.client-order-offer-meta{font-size:12px;color:var(--text3);line-height:1.35;word-break:break-word}
.client-order-offer-comment{font-size:12px;color:var(--text2);line-height:1.45;background:rgba(255,255,255,.035);border-radius:var(--ui-radius-md,10px);padding:7px 9px;word-break:break-word}
.client-order-offer-actions{display:flex;flex-direction:column;gap:6px;align-items:stretch;min-width:96px}
.client-order-offer-actions .btn{min-height:34px;padding:7px 10px;font-size:11px;justify-content:center;white-space:nowrap}
.client-order-offers-empty{display:flex;align-items:flex-start;gap:12px;padding:12px;border:1px dashed var(--line);border-radius:var(--ui-radius-md,10px);background:var(--bg)}
.client-order-offers-empty-ico{width:42px;height:42px;border-radius:var(--ui-radius-md,10px);background:rgba(255,107,0,.10);display:flex;align-items:center;justify-content:center;font-size:19px;flex-shrink:0}
.client-order-offers-empty b{display:block;font-size:14px;color:var(--text1);margin-bottom:3px}
.client-order-offers-empty p{margin:0;font-size:12px;line-height:1.45;color:var(--text3)}

@media (max-width:680px){
  .mo-responses-cta{grid-template-columns:34px minmax(0,1fr) auto;padding:9px 10px;border-radius:var(--ui-radius-md,10px);gap:9px}
  .mo-responses-cta-ico{width:34px;height:34px;border-radius:var(--ui-radius-md,10px);font-size:16px}
  .mo-responses-cta-main b{font-size:12px}
  .mo-responses-cta-main em{font-size:10.5px}
  .client-order-offer{grid-template-columns:38px minmax(0,1fr);gap:9px}
  .client-order-offer-av{width:38px;height:38px;border-radius:var(--ui-radius-md,10px)}
  .client-order-offer-actions{grid-column:1 / -1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));min-width:0}
  .client-order-offer-actions .btn{width:100%;min-height:38px}
}

/* r202 — richer legal pages: privacy / terms */
.legal-rich-page .legal-rich-hero{
  padding-bottom:28px;
}
.legal-rich-hero-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(260px,360px);
  gap:18px;
  align-items:stretch;
}
.legal-rich-label{
  display:inline-flex;
  align-items:center;
  gap:8px;
}
.legal-rich-sub{
  max-width:760px;
}
.legal-rich-chips{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:16px;
}
.legal-rich-chips span{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:6px 10px;
  border-radius:999px;
  border:1px solid rgba(255,107,0,.18);
  background:rgba(255,107,0,.08);
  color:var(--text1);
  font-size:12px;
  font-weight:800;
}
.legal-rich-updated{
  font-size:13px;
  color:var(--text2);
  margin-top:12px;
}
.legal-rich-summary{
  padding:20px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-height:220px;
  border:1px solid rgba(255,107,0,.16);
  background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(255,107,0,.055));
}
.legal-rich-summary-icon{
  width:58px;
  height:58px;
  border-radius:var(--ui-radius-lg,18px);
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:28px;
  margin-bottom:14px;
  background:rgba(255,107,0,.12);
  box-shadow:inset 0 0 0 1px rgba(255,107,0,.16);
}
.legal-rich-summary-title{
  font-size:19px;
  line-height:1.25;
  font-weight:900;
  color:var(--text1);
  margin-bottom:8px;
}
.legal-rich-summary-text{
  font-size:13px;
  line-height:1.65;
  color:var(--text2);
}
.legal-rich-section{
  padding-top:20px;
}
.legal-rich-stats{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-bottom:14px;
}
.legal-rich-stat{
  padding:16px;
  min-height:96px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:4px;
}
.legal-rich-stat-ico{
  width:32px;
  height:32px;
  border-radius:var(--ui-radius-md,10px);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:rgba(17,24,39,.06);
  font-weight:900;
}
.legal-rich-stat b{
  font-size:18px;
  color:var(--text1);
}
.legal-rich-stat small{
  font-size:12px;
  color:var(--text3);
  font-weight:700;
}
.legal-rich-info-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin-bottom:18px;
}
.legal-info-card{
  padding:18px;
  display:grid;
  grid-template-columns:44px minmax(0,1fr);
  gap:12px;
  align-items:start;
}
.legal-info-card-ico,
.legal-card-ico{
  width:42px;
  height:42px;
  border-radius:var(--ui-radius-md,10px);
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:20px;
  background:rgba(255,107,0,.10);
  box-shadow:inset 0 0 0 1px rgba(255,107,0,.14);
}
.legal-info-card h2{
  margin:0 0 6px;
  font-size:16px;
  line-height:1.25;
  font-weight:900;
  color:var(--text1);
}
.legal-info-card p{
  margin:0;
  font-size:13px;
  line-height:1.65;
  color:var(--text2);
}
.legal-rich-text-grid{
  margin-top:4px;
}
.legal-card--rich{
  display:grid;
  grid-template-columns:42px minmax(0,1fr);
  gap:12px;
  align-items:start;
}
.legal-rich-note{
  margin-top:14px;
  padding:16px 18px;
  display:flex;
  gap:12px;
  align-items:flex-start;
  font-size:13px;
  line-height:1.65;
  color:var(--text2);
  border-style:dashed;
}
.legal-rich-note span{
  width:32px;
  height:32px;
  flex:0 0 32px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:var(--ui-radius-md,10px);
  background:rgba(17,24,39,.06);
}
.legal-rich-page--privacy .legal-info-card-ico,
.legal-rich-page--privacy .legal-card-ico,
.legal-rich-page--privacy .legal-rich-summary-icon{
  background:rgba(34,197,94,.12);
  box-shadow:inset 0 0 0 1px rgba(34,197,94,.18);
}
.legal-rich-page--privacy .legal-rich-chips span{
  border-color:rgba(34,197,94,.18);
  background:rgba(34,197,94,.08);
}
.legal-rich-page--terms .legal-info-card-ico,
.legal-rich-page--terms .legal-card-ico,
.legal-rich-page--terms .legal-rich-summary-icon{
  background:rgba(59,130,246,.12);
  box-shadow:inset 0 0 0 1px rgba(59,130,246,.18);
}
.legal-rich-page--terms .legal-rich-chips span{
  border-color:rgba(59,130,246,.18);
  background:rgba(59,130,246,.08);
}
@media (max-width:780px){
  .legal-rich-hero-grid{
    grid-template-columns:1fr;
  }
  .legal-rich-summary{
    min-height:0;
  }
  .legal-rich-stats{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:8px;
  }
  .legal-rich-stat{
    min-height:88px;
    padding:12px 10px;
  }
  .legal-rich-info-grid{
    grid-template-columns:1fr;
  }
}
@media (max-width:520px){
  .legal-rich-page .legal-rich-hero{
    padding-top:22px;
    padding-bottom:18px;
  }
  .legal-rich-title{
    font-size:28px;
  }
  .legal-rich-chips{
    gap:6px;
  }
  .legal-rich-chips span{
    font-size:11px;
    padding:5px 8px;
  }
  .legal-rich-summary{
    padding:16px;
    border-radius:var(--ui-radius-lg,18px);
  }
  .legal-rich-summary-icon{
    width:48px;
    height:48px;
    border-radius:var(--ui-radius-md,10px);
    font-size:24px;
  }
  .legal-rich-summary-title{
    font-size:17px;
  }
  .legal-rich-stats{
    grid-template-columns:1fr;
  }
  .legal-rich-stat{
    min-height:0;
    display:grid;
    grid-template-columns:34px minmax(0,1fr);
    align-items:center;
  }
  .legal-rich-stat small{
    grid-column:2;
  }
  .legal-info-card,
  .legal-card--rich{
    grid-template-columns:38px minmax(0,1fr);
    padding:14px;
    gap:10px;
  }
  .legal-info-card-ico,
  .legal-card-ico{
    width:38px;
    height:38px;
    border-radius:var(--ui-radius-md,10px);
    font-size:18px;
  }
  .legal-info-card h2,
  .legal-card-title{
    font-size:15px;
  }
  .legal-info-card p,
  .legal-card-text{
    font-size:13px;
    line-height:1.6;
  }
}

/* r205 — legal cards open rich modal */
.legal-rich-stat,
.legal-info-card{
  cursor:pointer;
  transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}
.legal-rich-stat:hover,
.legal-info-card:hover{
  transform:translateY(-2px);
  border-color:rgba(255,107,0,.28);
  box-shadow:0 18px 44px rgba(17,24,39,.12);
}
.legal-rich-stat:focus-visible,
.legal-info-card:focus-visible{
  outline:3px solid rgba(255,107,0,.26);
  outline-offset:3px;
}
.legal-rich-stat em{
  margin-top:4px;
  font-size:11px;
  line-height:1.2;
  font-style:normal;
  font-weight:900;
  color:var(--accent);
}
.legal-info-card-more{
  display:inline-flex;
  margin-top:10px;
  font-size:12px;
  line-height:1.2;
  font-weight:900;
  color:var(--accent);
}
.legal-detail-modal{
  position:fixed;
  inset:0;
  z-index:99999;
  display:none;
  align-items:center;
  justify-content:center;
  padding:22px;
  background:rgba(15,23,42,.62);
  backdrop-filter:blur(8px);
}
.legal-detail-modal.open{display:flex;}
.legal-detail-card{
  width:min(820px,100%);
  max-height:min(86vh,760px);
  overflow:hidden;
  position:relative;
  border-radius:var(--ui-radius-lg,18px);
  background:var(--card,#fff);
  border:1px solid rgba(17,24,39,.10);
  box-shadow:0 34px 90px rgba(15,23,42,.35);
  display:flex;
  flex-direction:column;
}
.legal-detail-close{
  position:absolute;
  top:14px;
  right:14px;
  width:38px;
  height:38px;
  border:none;
  border-radius:var(--ui-radius-md,10px);
  background:rgba(17,24,39,.06);
  color:var(--text1);
  font-weight:900;
  cursor:pointer;
  z-index:2;
}
.legal-detail-head{
  display:grid;
  grid-template-columns:64px minmax(0,1fr);
  gap:16px;
  padding:26px 64px 20px 26px;
  border-bottom:1px solid rgba(17,24,39,.08);
  background:linear-gradient(135deg,rgba(255,107,0,.10),rgba(255,255,255,.78));
}
.legal-detail-icon{
  width:64px;
  height:64px;
  border-radius:var(--ui-radius-lg,18px);
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:30px;
  background:rgba(255,107,0,.12);
  box-shadow:inset 0 0 0 1px rgba(255,107,0,.18);
}
.legal-detail-kicker{
  margin-bottom:6px;
  font-size:12px;
  line-height:1.2;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--accent);
  font-weight:950;
}
.legal-detail-head h2{
  margin:0 0 8px;
  font-size:25px;
  line-height:1.15;
  color:var(--text1);
}
.legal-detail-head p{
  margin:0;
  font-size:14px;
  line-height:1.55;
  color:var(--text2);
}
.legal-detail-body{
  overflow:auto;
  padding:22px 26px 28px;
}
.legal-detail-body p{
  margin:0 0 16px;
  font-size:15px;
  line-height:1.75;
  color:var(--text2);
}
.legal-detail-body p:last-child{margin-bottom:0;}
.legal-detail-body b{
  color:var(--accent);
  margin-right:4px;
}
@media (max-width:640px){
  .legal-detail-modal{padding:12px;align-items:center;}
  .legal-detail-card{border-radius:var(--ui-radius-lg,18px);max-height:88vh;}
  .legal-detail-head{grid-template-columns:48px minmax(0,1fr);gap:12px;padding:20px 54px 16px 18px;}
  .legal-detail-icon{width:48px;height:48px;border-radius:var(--ui-radius-md,10px);font-size:24px;}
  .legal-detail-head h2{font-size:20px;}
  .legal-detail-head p{font-size:13px;}
  .legal-detail-body{padding:18px;}
  .legal-detail-body p{font-size:14px;line-height:1.68;}
}

/* r238 — richer legal stat details button */
.legal-rich-stat{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(255,107,0,.12);
  background:
    radial-gradient(circle at 12% 10%, rgba(255,107,0,.10), transparent 34%),
    linear-gradient(145deg, rgba(255,255,255,.98), rgba(255,247,237,.78));
  box-shadow:0 14px 34px rgba(17,24,39,.08);
}
.legal-rich-stat::after{
  content:'';
  position:absolute;
  inset:auto -26px -42px auto;
  width:96px;
  height:96px;
  border-radius:999px;
  background:rgba(255,107,0,.08);
  pointer-events:none;
}
.legal-rich-stat em{
  position:relative;
  z-index:1;
  width:max-content;
  max-width:100%;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  margin-top:10px;
  padding:8px 11px;
  border-radius:999px;
  border:1px solid rgba(255,107,0,.24);
  background:linear-gradient(135deg, rgba(255,107,0,.12), rgba(255,255,255,.92));
  color:#c2410c;
  box-shadow:0 8px 18px rgba(255,107,0,.12);
  font-size:12px;
  letter-spacing:.01em;
  transition:transform .16s ease, background .16s ease, border-color .16s ease, color .16s ease;
}
.legal-rich-stat em::before{
  content:'↗';
  width:18px;
  height:18px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:#fff;
  color:#f97316;
  box-shadow:0 4px 10px rgba(255,107,0,.14);
  font-size:11px;
  font-weight:900;
}
.legal-rich-stat:hover em,
.legal-rich-stat:focus-visible em{
  transform:translateY(-1px);
  background:linear-gradient(135deg, #ff6b00, #fb923c);
  border-color:rgba(255,107,0,.44);
  color:#fff;
}
.legal-rich-stat:hover em::before,
.legal-rich-stat:focus-visible em::before{
  color:#ff6b00;
}
@media (max-width:640px){
  .legal-rich-stat em{
    padding:7px 10px;
    font-size:11px;
  }
}

/* ── UI-r5 — drawer cab-section (cabinet tabs in drawer) ── */
.drawer-cab-section{ display: block; }
.drawer-link--cab{
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  padding: 9px 20px;
  background: none;
  border: 0;
  text-align: left;
  cursor: pointer;
  color: var(--text, #111827);
  font-size: 14px;
  transition: background .12s;
}
.drawer-link--cab:hover, .drawer-link--cab:active{
  background: var(--surface2, rgba(15,23,42,.04));
}
.drawer-link--cab .dl-icon{
  font-size: 17px;
  flex-shrink: 0;
  width: 24px;
  text-align: center;
}
.drawer-link--cab .dl-body{
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.drawer-link--cab .dl-title{
  font-weight: 600;
  font-size: 13.5px;
  line-height: 1.2;
}
.drawer-link--cab .dl-desc{
  font-size: 11px;
  color: var(--text3, #94a3b8);
  margin-top: 1px;
}
