    /* PARTCN: CLIENT_APP_CSS */
    :root {
      color-scheme: light dark;
      --bg: #1a1a1b;
      --text: #f1f1ef;
      --hint: #9a9a96;
      --button: #e6e3dc;
      --button-text: #171715;
      --field: rgba(255,255,255,.105);
      --input-field: rgba(255,255,255,.026);
      --border: rgba(255,255,255,.10);
      --border-strong: rgba(255,255,255,.14);
      --card: rgba(255,255,255,.088);
      --panel-surface: #3f3f3f;
      --active: #e6e3dc;
      --active-text: #171715;
      --focus: rgba(230,227,220,.55);
      --focus-soft: rgba(230,227,220,.22);
      --telegram-accent: #c875f2;
      --shadow: 0 10px 26px rgba(0,0,0,.18);
      --radius: 22px;
      --radius-sm: 18px;
      --space-1: 8px;
      --space-2: 12px;
      --space-3: 16px;
      --space-4: 24px;
      --telegram-top-offset: 0px;
      --page-pad-left: max(20px, calc(env(safe-area-inset-left) + 14px));
      --page-pad-right: max(20px, calc(env(safe-area-inset-right) + 14px));
    }
    * { box-sizing: border-box; }
    html, body {
      max-width: 100%;
      overflow-x: hidden;
      overscroll-behavior-x: none;
      touch-action: pan-y;
    }
    body {
      margin: 0;
      font: 16px/1.45 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
      background: var(--bg);
      color: var(--text);
      width: 100%;
      overflow-x: clip;
    }
    .wrap {
      width: 100%;
      max-width: 760px;
      margin: 0 auto;
      padding:
        calc(24px + var(--telegram-top-offset))
        var(--page-pad-right)
        calc(154px + env(safe-area-inset-bottom))
        var(--page-pad-left);
      overflow-x: hidden;
    }
    .brand {
      position: relative;
      display: block;
      margin: 0 0 18px;
      transform: none;
      text-align: center;
    }
    .brand-title {
      margin: 0;
      color: var(--text);
      font-size: clamp(24px, 6.3vw, 36px);
      line-height: 1.05;
      font-weight: 800;
      letter-spacing: 0;
    }
    .brand-help-link {
      display: inline-block;
      margin-top: 8px;
      color: var(--telegram-accent);
      font-size: 15px;
      line-height: 1.2;
      font-weight: 500;
      text-decoration: none;
    }
    .brand.search-brand-compact {
      margin-top: -8px;
      margin-bottom: 18px;
    }
    .brand.search-brand-compact .brand-title {
      display: none;
    }
    .brand.search-brand-compact .brand-help-link {
      margin-top: 0;
    }
    .app-menu-trigger {
      position: absolute;
      left: 0;
      top: -10px;
      z-index: 3;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 4px;
      width: 44px;
      min-height: 44px;
      height: 44px;
      padding: 0;
      border: 0;
      border-radius: 0;
      background: transparent;
      color: var(--text);
      box-shadow: none;
    }
    .app-menu-trigger span {
      width: 5px;
      height: 5px;
      border-radius: 50%;
      background: rgba(241,241,239,.92);
      box-shadow: 0 1px 8px rgba(0,0,0,.20);
    }
    .payment-due-amount {
      display: none;
      margin: 0 0 8px;
      color: rgba(241,241,239,.30);
      font-size: 42px;
      line-height: 1;
      font-weight: 760;
      letter-spacing: 0;
      text-align: center;
    }
    .payment-due-amount.has-due {
      color: var(--text);
    }
    .payment-due-amount.has-due .payment-due-currency {
      color: var(--text);
    }
    .payment-due-value {
      position: relative;
      display: inline-block;
    }
    .payment-due-currency {
      position: absolute;
      left: 100%;
      top: 50%;
      margin-left: 8px;
      color: rgba(241,241,239,.68);
      font-size: .68em;
      font-weight: 720;
      transform: translateY(-50%);
    }
    .wrap:has(#exchange.screen.active) .brand.search-brand-compact {
      margin-top: 20px;
      margin-bottom: 18px;
    }
    .wrap:not(:has(#search.screen.active)) .app-menu-trigger {
      display: none;
    }
    .wrap:has(#exchange.screen.active) .payment-due-amount {
      display: block;
    }
    .wrap:has(#exchange.screen.active) .brand-help-link {
      margin-top: 18px;
    }
    .cargo-due-amount {
      display: none;
      margin: 0 0 8px;
      text-align: center;
    }
    .cargo-due-value {
      position: relative;
      display: inline-block;
      color: rgba(241,241,239,.30);
      font-size: 42px;
      line-height: 1;
      font-weight: 760;
      letter-spacing: 0;
    }
    .cargo-due-amount.has-due .cargo-due-value {
      color: var(--text);
    }
    .cargo-due-amount.has-due .cargo-due-currency {
      color: var(--text);
    }
    .cargo-due-currency {
      position: absolute;
      left: 100%;
      top: 50%;
      margin-left: 8px;
      color: rgba(241,241,239,.68);
      font-size: .68em;
      font-weight: 720;
      transform: translateY(-50%);
    }
    .cargo-due-meta {
      display: block;
      min-height: 18px;
      margin-top: 9px;
      color: rgba(241,241,239,.52);
      font-size: 13px;
      line-height: 1.2;
      font-weight: 600;
      letter-spacing: 0;
      text-align: center;
    }
    .cargo-due-meta.empty {
      display: none;
      min-height: 0;
      margin-top: 0;
    }
    .wrap:has(#cargo.screen.active) .brand.search-brand-compact {
      margin-top: 20px;
      margin-bottom: 18px;
    }
    .wrap:has(#cargo.screen.active) .cargo-due-amount {
      display: block;
    }
    .wrap:has(#cargo.screen.active) .brand-help-link {
      margin-top: 18px;
    }
    .brand.orders-brand-hidden {
      display: none;
    }
    .brand-contact {
      position: absolute;
      width: 1px;
      min-width: 1px;
      height: 1px;
      min-height: 1px;
      padding: 0;
      margin: -1px;
      overflow: hidden;
      clip: rect(0 0 0 0);
      white-space: nowrap;
      border: 0;
    }
    /* PARTCN: CLIENT_TABS */
    .tabs {
      position: fixed;
      left: 50%;
      right: auto;
      bottom: max(16px, env(safe-area-inset-bottom));
      z-index: 20;
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 2px;
      width: min(500px, calc(100vw - 42px - env(safe-area-inset-left) - env(safe-area-inset-right)));
      margin: 0 auto;
      padding: 4px;
      min-width: 0;
      transform: translateX(-50%);
      border: 1px solid rgba(255,255,255,.075);
      border-radius: 28px;
      background:
        linear-gradient(180deg, rgba(72,72,80,.26), rgba(34,34,39,.16)),
        rgba(18,18,20,.28);
      box-shadow:
        inset 0 1px 0 rgba(255,255,255,.09),
        inset 0 -1px 0 rgba(0,0,0,.12),
        0 14px 34px rgba(0,0,0,.30);
      backdrop-filter: blur(28px) saturate(1.18);
      -webkit-backdrop-filter: blur(28px) saturate(1.18);
    }
    body.keyboard-open .tabs {
      opacity: 0;
      pointer-events: none;
      transform: translateX(-50%) translateY(14px);
    }
    .tab {
      position: relative;
      min-width: 0;
      min-height: 40px;
      border: 0;
      border-radius: 23px;
      padding: 0 8px;
      background: transparent;
      color: rgba(232,232,235,.78);
      text-align: center;
      cursor: pointer;
      font-weight: 700;
      font-size: 17px;
      line-height: 1;
      letter-spacing: 0;
      overflow: visible;
      text-overflow: ellipsis;
      display: flex;
      align-items: center;
      justify-items: center;
      justify-content: center;
      gap: 0;
      box-shadow: none;
      transition: background .18s ease, color .18s ease, box-shadow .18s ease;
    }
    .tab.active {
      background:
        linear-gradient(180deg, rgba(255,255,255,.22), rgba(255,255,255,.15));
      color: var(--telegram-accent);
      box-shadow:
        inset 0 1px 0 rgba(255,255,255,.08),
        inset 0 -1px 0 rgba(0,0,0,.09);
    }
    .tab:active {
      animation: tabPressMicro .18s ease both;
    }
    .tab-unread-dot {
      position: absolute;
      top: 0;
      right: 0;
      width: 12px;
      height: 12px;
      border-radius: 999px;
      background: rgba(255,255,255,.96);
      box-shadow:
        0 0 0 1px rgba(15,15,16,.36),
        0 0 12px rgba(255,255,255,.32);
      display: none;
      pointer-events: none;
      animation: searchUnreadPulse 1.8s ease-in-out infinite;
      transform: translate(42%, -42%);
    }
    .tab.has-unread .tab-unread-dot {
      display: block;
    }
    @keyframes tabPressMicro {
      0% { transform: translateY(0) scale(1); }
      45% { transform: translateY(1px) scale(.965); }
      75% { transform: translateY(0) scale(1.015); }
      100% { transform: translateY(0) scale(1); }
    }
    @keyframes searchUnreadPulse {
      0% {
        transform: scale(1);
        opacity: .96;
      }
      50% {
        transform: scale(1.18);
        opacity: .72;
      }
      100% {
        transform: scale(1);
        opacity: .96;
      }
    }
    .choice-button {
      min-height: 56px;
      border-radius: var(--radius-sm);
      padding: 14px 18px;
      background: var(--field);
      border: 1px solid rgba(230,227,220,.48);
      color: var(--text);
      font-weight: 600;
      box-shadow:
        inset 0 0 0 1px rgba(230,227,220,.16),
        0 0 0 1px rgba(230,227,220,.10);
    }
    .choice-button:hover {
      filter: none;
      border-color: rgba(230,227,220,.58);
      box-shadow:
        inset 0 0 0 1px rgba(230,227,220,.20),
        0 0 0 1px rgba(230,227,220,.12);
    }
    .choice-button:active {
      transform: scale(.985);
    }
    /* PARTCN: CLIENT_SCREENS */
    .screen {
      display: none;
      opacity: 1;
      transform: translateY(0);
      transition: opacity .2s ease, transform .2s ease;
      width: 100%;
      min-width: 0;
      overflow-x: hidden;
    }
    .screen.active {
      display: block;
    }
    #search.screen.active {
      display: block;
      padding-top: 6px;
      overflow-x: visible;
    }
    #exchange.screen.active {
      display: block;
      padding-top: 6px;
      overflow-x: visible;
    }
    #cargo.screen.active {
      display: block;
      overflow-x: visible;
    }
    #tracker.screen.active {
      display: block;
      overflow-x: visible;
    }
    .search-chat-block {
      display: grid;
      gap: 12px;
      margin-top: 0;
      margin-left: calc(-1 * var(--page-pad-left) - 8px);
      margin-right: calc(-1 * var(--page-pad-right) - 8px);
    }
    .screen.entering {
      opacity: 0;
      transform: translateY(14px);
    }
    .step-panel {
      opacity: 1;
      transform: translateY(0);
      transition: opacity .2s ease, transform .2s ease;
    }
    .step-panel.hidden {
      display: none !important;
    }
    .step-panel.entering {
      opacity: 0;
      transform: translateY(14px);
    }
    .card {
      min-width: 0;
      padding: 20px;
      border-radius: var(--radius);
      background: var(--card);
      border: 1px solid rgba(255,255,255,.075);
      margin-bottom: 14px;
      box-shadow: var(--shadow);
      backdrop-filter: blur(8px);
    }
    .card.tight {
      padding: 16px;
      margin-bottom: 0;
    }
    .card h2 {
      margin: 0 0 10px;
      font-size: 18px;
      line-height: 1.2;
    }
    .card p {
      margin: 0;
      color: var(--hint);
      line-height: 1.45;
    }
    /* PARTCN: CLIENT_HERO_AND_FORMS */
    .hero-card,
    .exchange-box.rate-card {
      height: 108px;
      min-height: 108px;
      padding: 18px 20px;
      border-radius: 28px;
    }
    #search-intro,
    #tracker > .hero-card {
      margin-bottom: 18px;
    }
    #search-step-part-number > .hero-card,
    #search-step-vin > .hero-card,
    #cargo-form-step > .hero-card {
      margin-bottom: 8px;
    }
    #cargo-form-step > .hero-card {
      display: flex;
      flex-direction: column;
      justify-content: flex-start;
      gap: 10px;
      padding: 18px 20px;
    }
    #cargo-form-step > .hero-card h2 {
      margin-bottom: 0;
    }
    #exchange .exchange-box.rate-card {
      margin-bottom: 0;
    }
    .hero-card h2,
    .exchange-box.rate-card .exchange-box-label.primary {
      margin: 0 0 10px;
      font-size: 18px;
      line-height: 1.2;
      font-weight: 700;
    }
    .hero-card p {
      margin: 0;
      color: var(--hint);
      font-size: 16px;
      line-height: 1.45;
    }
    .hero-card.form-hero {
      height: 108px;
      min-height: 108px;
      padding: 16px 20px;
    }
    .hero-card.form-hero p {
      font-size: 15px;
      line-height: 1.3;
      display: -webkit-box;
      -webkit-line-clamp: 2;
      -webkit-box-orient: vertical;
      overflow: hidden;
    }
    .stack {
      display: grid;
      gap: 14px;
      width: 100%;
      min-width: 0;
    }
    .stack.compact-step {
      gap: 10px;
    }
    #search-step-method,
    #search-step-vin,
    #cargo-form-step {
      gap: 10px;
    }
    #cargo-form-step > .stack {
      gap: 10px;
    }
    .cargo-board-wrap {
      display: grid;
      gap: 12px;
      margin-top: 6px;
    }
    .cargo-board-wrap > .cargo-combined-card {
      margin-top: 0;
    }
    .cargo-combined-card,
    .exchange-board {
      width: calc(100% + 16px);
      min-width: 0;
      margin-top: 0;
      margin-left: -8px;
      margin-right: -8px;
      overflow: hidden;
      border-radius: 30px;
      background: transparent;
      border: 0;
      box-shadow: none;
    }
    .exchange-board {
      background: transparent;
      border: 0;
      box-shadow: none;
      margin-top: 0;
    }
    .cargo-combined-card > .cargo-fields-card {
      position: relative;
      margin-bottom: 0;
      border: 0;
      border-radius: 28px;
      background: var(--panel-surface);
      box-shadow: none;
      border-top: 0;
    }
    .cargo-fields-card {
      padding: 0;
      overflow: hidden;
      border-radius: 28px;
      background: var(--panel-surface);
      border: 0;
      box-shadow: none;
      margin-bottom: 6px;
    }
    .cargo-fields-list {
      display: block;
    }
    .cargo-field-row {
      position: relative;
      display: grid;
      grid-template-columns: auto minmax(0, 1fr);
      align-items: center;
      gap: 16px;
      min-height: 58px;
      padding: 0 20px;
      background: transparent;
    }
    .cargo-field-row + .cargo-field-row::before {
      content: "";
      position: absolute;
      top: 0;
      left: 16px;
      right: 16px;
      height: 1px;
      background: rgba(255,255,255,.08);
    }
    .cargo-field-label {
      color: var(--text);
      font-size: 16px;
      font-weight: 700;
      line-height: 1.2;
      white-space: nowrap;
    }
    .cargo-field-row:focus-within {
      background: transparent;
      box-shadow: none;
    }
    .field {
      display: grid;
      gap: 10px;
    }
    .search-input-accent input {
      border-color: rgba(230,227,220,.48);
      box-shadow:
        inset 0 0 0 1px rgba(230,227,220,.16),
        0 0 0 1px rgba(230,227,220,.10);
    }
    /* PARTCN: CLIENT_FAQ_INFO_BLOCKS */
    .search-info-wrap {
      margin-top: 40px;
      display: grid;
      gap: 12px;
    }
    .search-info-title {
      margin: 0 0 0 16px;
      color: rgba(241,241,239,.72);
      font-size: 18px;
      line-height: 1.2;
      font-weight: 700;
    }
    .search-info-card {
      padding: 0;
      overflow: hidden;
      border-radius: 30px;
      background: rgba(255,255,255,.04);
      border: 1px solid rgba(255,255,255,.08);
      box-shadow: var(--shadow);
    }
    .search-info-list {
      display: block;
    }
    .search-info-item {
      position: relative;
    }
    .search-info-item + .search-info-item {
      border-top: 0;
    }
    .search-info-item + .search-info-item::before {
      content: "";
      position: absolute;
      top: 0;
      left: 16px;
      right: 16px;
      height: 1px;
      background: rgba(255,255,255,.08);
    }
    .search-info-trigger {
      width: 100%;
      min-height: 64px;
      padding: 18px 20px;
      display: flex;
      align-items: center;
      gap: 12px;
      border: 0;
      border-radius: 0;
      background: transparent;
      color: var(--text);
      box-shadow: none;
      text-align: left;
      font-size: 15px;
      font-weight: 600;
    }
    .search-info-preview {
      flex: 1 1 auto;
      min-width: 0;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
      color: var(--text);
    }
    .search-info-trigger::after {
      content: '›';
      color: rgba(241,241,239,.7);
      font-size: 18px;
      line-height: 1;
      flex: 0 0 auto;
      transition: transform .18s ease;
    }
    .search-info-item.open .search-info-trigger {
      border-bottom: 1px solid rgba(255,255,255,.08);
    }
    .search-info-item.open .search-info-trigger::after {
      transform: rotate(90deg);
    }
    .search-info-panel {
      display: none;
      padding: 18px 20px;
      color: var(--hint);
      font-size: 15px;
      line-height: 1.55;
      cursor: pointer;
    }
    .search-info-item.open .search-info-panel {
      display: block;
    }
    .promo-card-button {
      width: 100%;
      min-height: 76px;
      margin-top: 18px;
      padding: 14px 18px;
      display: grid;
      justify-items: start;
      align-content: center;
      gap: 4px;
      border-radius: 30px;
      background: rgba(255,255,255,.04);
      border: 1px solid rgba(230,227,220,.52);
      box-shadow:
        inset 0 0 0 1px rgba(230,227,220,.20),
        0 0 0 1px rgba(230,227,220,.16);
      color: var(--text);
      text-align: left;
    }
    .promo-card-button:active {
      transform: scale(.99);
    }
    .promo-card-title {
      margin: 0;
      font-size: 18px;
      line-height: 1.15;
      font-weight: 700;
      color: var(--text);
    }
    .promo-card-subtitle {
      margin: 0;
      font-size: 14px;
      line-height: 1.25;
      font-weight: 500;
      color: var(--hint);
    }
    .cargo-info-card {
      position: relative;
      width: 100%;
      height: 66px;
      margin-top: 6px;
      padding: 9px 16px 10px;
      border-radius: 12px;
      border: 1px solid rgba(241,241,239,.18);
      background: transparent;
      color: var(--text);
      text-align: left;
      box-shadow: none;
      overflow: hidden;
      transition: height .22s ease;
    }
    .cargo-info-card.is-expanded {
      height: auto;
      min-height: 66px;
      padding-bottom: 14px;
    }
    .cargo-info-copy {
      margin: 0;
      min-width: 0;
      padding-right: 28px;
      color: rgba(241,241,239,.84);
      font-size: 14px;
      line-height: 1.22;
      font-weight: 500;
      letter-spacing: 0;
      display: -webkit-box;
      -webkit-line-clamp: 3;
      -webkit-box-orient: vertical;
      overflow: hidden;
    }
    .cargo-info-card.is-expanded .cargo-info-copy {
      display: block;
      padding-right: 0;
      overflow: visible;
    }
    .cargo-info-card.is-expanded .cargo-info-more {
      display: none;
    }
    .cargo-info-more {
      -webkit-appearance: none;
      appearance: none;
      position: absolute;
      right: 16px;
      top: 0;
      bottom: 0;
      width: 24px;
      padding: 0;
      border: 0;
      background: transparent;
      box-shadow: none;
      color: var(--accent);
      font: inherit;
      font-size: 24px;
      line-height: 1;
      font-weight: 400;
      display: grid;
      place-items: center;
      cursor: pointer;
    }
    /* PARTCN: CLIENT_CHAT */
    .search-chat-shell {
      position: relative;
      display: block;
      width: 100%;
      max-width: none;
      height: 384px;
      min-height: 384px;
      margin-top: 0;
      margin-bottom: 0;
      margin-left: 0;
      margin-right: 0;
      padding: 0;
      overflow: hidden;
      border-radius: 32px;
      border: 0;
      background: var(--panel-surface);
      box-shadow:
        inset 0 1px 0 rgba(255,255,255,.045),
        0 10px 28px rgba(0,0,0,.24);
      backdrop-filter: none;
    }
    .search-chat-label {
      position: static;
      margin: 0;
      color: rgba(241,241,239,.72);
      font-size: 18px;
      line-height: 1.2;
      font-weight: 700;
    }
    .search-chat-history {
      position: absolute;
      inset: 0;
      margin: 0;
      padding: var(--search-chat-top-spacer, 0px) 0 82px;
      overflow-y: auto;
      overflow-x: hidden;
      scroll-behavior: auto;
      overflow-anchor: none;
      background: transparent;
      border-radius: 0;
      border: 0;
      box-shadow: none;
    }
    .search-chat-empty {
      position: absolute;
      inset: 0;
      margin: 0;
      display: flex;
      align-items: center;
      justify-content: center;
      padding: 20px;
      color: var(--hint);
      font-size: 15px;
      line-height: 1.45;
      text-align: center;
      pointer-events: none;
    }
    .search-chat-row {
      display: flex;
      width: 100%;
      margin: 0;
      padding: 0 10px;
    }
    .search-chat-row + .search-chat-row {
      margin-top: 8px;
    }
    .search-chat-date:first-child,
    .search-chat-row:first-child {
      margin-top: 10px;
    }
    .search-chat-row.client {
      justify-content: flex-end;
    }
    .search-chat-row.operator {
      justify-content: flex-start;
    }
    .search-chat-date {
      display: flex;
      justify-content: center;
      margin: 6px 0 10px;
      color: rgba(241,241,239,.78);
      font-size: 11px;
      line-height: 1.2;
      font-weight: 600;
    }
    .search-chat-bubble {
      position: relative;
      max-width: min(84%, 560px);
      padding: 9px 14px;
      border: 0;
      border-radius: 18px;
      background: #242426;
      box-shadow: none;
      display: inline-block;
      overflow: visible;
    }
    .search-chat-bubble::after {
      content: '';
      position: absolute;
      bottom: 1px;
      width: 15px;
      height: 12px;
      background: inherit;
      pointer-events: none;
    }
    .search-chat-bubble.photo-only {
      width: min(68%, 320px);
      height: 180px;
      padding: 0 0 24px 0;
      overflow: hidden;
    }
    .search-chat-bubble.photo-only .search-chat-time {
      position: absolute;
      right: 12px;
      bottom: 8px;
    }
    .search-chat-row.client .search-chat-bubble {
      color: var(--text);
    }
    .search-chat-row.client .search-chat-bubble::after {
      right: -6px;
      border-bottom-right-radius: 10px;
      clip-path: polygon(0 0, 42% 52%, 100% 100%, 0 100%);
    }
    .search-chat-row.operator .search-chat-bubble::after {
      left: -6px;
      border-bottom-left-radius: 10px;
      clip-path: polygon(100% 0, 58% 52%, 0 100%, 100% 100%);
    }
    .search-chat-row.client.service-payment .search-chat-bubble,
    .search-chat-row.client.service-delivery .search-chat-bubble {
      background: #242426;
      border: 0;
    }
    .search-chat-text {
      display: inline;
      white-space: pre-wrap;
      word-break: break-word;
      font-size: 16px;
      line-height: 1.2;
      color: var(--text);
    }
    .search-chat-text::after {
      content: '';
      display: inline-block;
      width: 36px;
      height: 0;
      font-size: 0;
      line-height: 0;
      vertical-align: top;
    }
    .search-chat-time {
      position: absolute;
      right: 14px;
      bottom: 8px;
      display: block;
      margin-left: 0;
      font-size: 10px;
      line-height: 1;
      color: rgba(241,241,239,.54);
    }
    .search-chat-image {
      display: block;
      width: 100%;
      height: 100%;
      max-width: none;
      border-radius: 16px;
      object-fit: cover;
    }
    .search-chat-image.is-loading {
      background: rgba(255,255,255,.06);
    }
    .search-chat-file {
      color: var(--text);
      text-decoration: underline;
      text-decoration-color: currentColor;
      text-underline-offset: 2px;
      font-size: 16px;
      line-height: 1.25;
      word-break: break-word;
    }
    .search-chat-composer {
      position: absolute;
      left: 6px;
      right: 6px;
      bottom: 6px;
      display: grid;
      grid-template-columns: 34px minmax(0, 1fr) 40px;
      gap: 6px;
      align-items: center;
      min-height: 46px;
      margin: 0;
      padding: 3px 8px 3px 8px;
      border: 1px solid rgba(255,255,255,.085);
      background: rgba(0,0,0,.18);
      border-radius: 999px;
      box-shadow:
        inset 0 0 0 1px rgba(255,255,255,.025),
        0 1px 0 rgba(255,255,255,.025);
      z-index: 2;
    }
    .search-chat-input {
      width: 100%;
      height: 36px;
      min-height: 36px;
      max-height: 36px;
      padding: 8px 0;
      margin: 0;
      border: 0;
      border-radius: 0;
      background: transparent;
      color: var(--text);
      resize: none;
      outline: none;
      font: inherit;
      font-size: 16px;
      line-height: 1.25;
      overflow: hidden;
      overflow-wrap: normal;
      white-space: pre;
      box-shadow: none;
    }
    .search-chat-input::placeholder {
      color: rgba(255,255,255,.42);
    }
    .search-chat-attach {
      position: static;
      top: auto;
      right: auto;
      transform: translateY(0);
      width: 34px;
      min-width: 34px;
      height: 34px;
      min-height: 34px;
      padding: 0;
      border: 0;
      border-radius: 0;
      background: transparent;
      color: rgba(255,255,255,.62);
      display: inline-grid;
      place-items: center;
      z-index: 3;
    }
    .search-chat-attach svg {
      width: 26px;
      height: 26px;
      display: block;
    }
    .search-chat-attach-status {
      position: absolute;
      left: 16px;
      bottom: 58px;
      margin: 0;
      max-width: calc(100% - 32px);
      padding: 6px 10px;
      border: 1px solid rgba(255,255,255,.10);
      border-radius: 999px;
      background: rgba(255,255,255,.08);
      color: rgba(241,241,239,.72);
      font-size: 12px;
      line-height: 1.2;
      z-index: 3;
      pointer-events: auto;
      cursor: pointer;
      text-align: left;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }
    .search-chat-attach-status::after {
      content: '×';
      margin-left: 8px;
      color: rgba(241,241,239,.76);
      font-weight: 700;
    }
    .search-chat-send {
      width: 40px;
      min-width: 40px;
      height: 30px;
      min-height: 30px;
      padding: 0;
      border: 0;
      border-radius: 999px;
      background: rgba(255,255,255,.115);
      color: rgba(241,241,239,.58);
      box-shadow: inset 0 1px 0 rgba(255,255,255,.035);
      white-space: nowrap;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      font-size: 0;
      line-height: 0;
      position: relative;
    }
    .search-chat-send::before {
      content: '';
      width: 21px;
      height: 21px;
      display: block;
      position: absolute;
      inset: 0;
      margin: auto;
      background: currentColor;
      -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 4.5c.3 0 .6.1.8.3l5.1 5.1c.5.5.5 1.2 0 1.7s-1.2.5-1.7 0l-3-3V18c0 .7-.5 1.2-1.2 1.2s-1.2-.5-1.2-1.2V8.6l-3 3c-.5.5-1.2.5-1.7 0s-.5-1.2 0-1.7l5.1-5.1c.2-.2.5-.3.8-.3z'/%3E%3C/svg%3E") center / contain no-repeat;
      mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 4.5c.3 0 .6.1.8.3l5.1 5.1c.5.5.5 1.2 0 1.7s-1.2.5-1.7 0l-3-3V18c0 .7-.5 1.2-1.2 1.2s-1.2-.5-1.2-1.2V8.6l-3 3c-.5.5-1.2.5-1.7 0s-.5-1.2 0-1.7l5.1-5.1c.2-.2.5-.3.8-.3z'/%3E%3C/svg%3E") center / contain no-repeat;
    }
    .homescreen-install-card {
      position: relative;
      display: flex;
      align-items: center;
      gap: 12px;
      min-height: 68px;
      margin: 18px 0 16px;
      padding: 9px 16px;
      overflow: hidden;
      border-radius: 28px;
      background: #2b2b2d;
      box-shadow: 0 10px 24px rgba(0,0,0,.18);
      color: inherit;
      text-decoration: none;
    }
    .search-promo-card {
      position: relative;
      display: flex;
      align-items: center;
      min-height: 112px;
      margin: 18px 0 16px;
      padding: 18px 20px;
      overflow: hidden;
      border-radius: 28px;
      background: #bfc0bd;
      box-shadow: 0 12px 26px rgba(0,0,0,.16);
    }
    .cargo-promo-card {
      min-height: 88px;
      margin: 10px 0 10px;
      padding-top: 14px;
      padding-bottom: 14px;
    }
    .search-main-promo-card {
      min-height: 88px;
      margin: 18px 0 10px;
      padding-top: 14px;
      padding-bottom: 14px;
    }
    .cargo-info-wrap {
      margin-top: 18px;
    }
    .search-promo-copy {
      min-width: 0;
    }
    .search-promo-title {
      margin: 0;
      color: #171719;
      font-size: 18px;
      line-height: 1.12;
      font-weight: 700;
      letter-spacing: 0;
    }
    .search-promo-action {
      display: inline-block;
      margin-top: 8px;
      color: rgba(23,23,25,.68);
      font-size: 15px;
      line-height: 1.2;
      font-weight: 600;
    }
    .search-main-promo-card .search-promo-title {
      color: rgba(23,23,25,.82);
      font-size: 18px;
      line-height: 1.12;
      font-weight: 700;
    }
    .search-main-promo-card .search-promo-action {
      margin-top: 8px;
      color: rgba(23,23,25,.68);
      font-size: 15px;
      line-height: 1.2;
      font-weight: 600;
    }
    .homescreen-install-icon {
      position: relative;
      display: block;
      width: 54px;
      height: 54px;
      flex: 0 0 54px;
      border-radius: 50%;
      background: var(--bg);
    }
    .homescreen-install-plus {
      position: absolute;
      inset: 0;
      display: block;
    }
    .homescreen-install-plus::before,
    .homescreen-install-plus::after {
      content: "";
      position: absolute;
      left: 50%;
      top: 50%;
      width: 20px;
      height: 4px;
      border-radius: 999px;
      background: rgba(255,255,255,.82);
      transform: translate(-50%, -50%);
    }
    .homescreen-install-plus::after {
      transform: translate(-50%, -50%) rotate(90deg);
    }
    .exchange-promo-icon {
      position: relative;
      display: grid;
      place-items: center;
      width: 54px;
      height: 54px;
      flex: 0 0 54px;
      border-radius: 50%;
      background: var(--bg);
      color: rgba(255,255,255,.82);
      font-size: 24px;
      line-height: 1;
      font-weight: 760;
    }
    .exchange-promo-icon::before {
      content: "¥";
    }
    .homescreen-install-copy {
      position: relative;
      z-index: 1;
      min-width: 0;
      flex: 1 1 auto;
    }
    .homescreen-install-title {
      margin: 0;
      color: #fff;
      font-size: 17px;
      line-height: 1.24;
      font-weight: 400;
      letter-spacing: 0;
      max-width: 250px;
    }
    .homescreen-install-action {
      display: inline;
      width: auto;
      height: auto;
      margin: 8px 0 0;
      padding: 0;
      border: 0;
      background: transparent;
      color: rgba(241,241,239,.62);
      font-size: 13px;
      line-height: 1;
      font-weight: 650;
      letter-spacing: 0;
      appearance: none;
      -webkit-appearance: none;
      cursor: pointer;
    }
    .homescreen-guide-modal {
      padding: calc(28px + env(safe-area-inset-top)) var(--page-pad-right) calc(34px + env(safe-area-inset-bottom)) var(--page-pad-left);
      background: rgba(0,0,0,.58);
    }
    .homescreen-guide-card {
      position: relative;
      width: min(360px, 100%);
      padding: 22px 20px 20px;
      border-radius: 26px;
      background: #2b2b2d;
      color: var(--text);
      box-shadow: 0 22px 50px rgba(0,0,0,.34);
      transform: translateY(10px);
      transition: transform .2s ease;
    }
    .modal-overlay.visible .homescreen-guide-card {
      transform: translateY(0);
    }
    .homescreen-guide-close {
      position: absolute;
      top: 10px;
      right: 10px;
      width: 30px;
      min-height: 30px;
      height: 30px;
      padding: 0;
      border: 0;
      border-radius: 50%;
      background: rgba(255,255,255,.08);
      color: var(--text);
      box-shadow: none;
      font-size: 20px;
      line-height: 1;
      font-weight: 400;
    }
    .homescreen-guide-title {
      max-width: 280px;
      margin: 0 34px 14px 0;
      color: var(--text);
      font-size: 20px;
      line-height: 1.18;
      font-weight: 760;
      text-align: left;
      letter-spacing: 0;
    }
    .exchange-promo-card .homescreen-install-action {
      margin: 0 0 0 auto;
      flex: 0 0 auto;
      font-size: 26px;
      line-height: 1;
    }
    #homescreenInstallCard .homescreen-install-action {
      margin: 0 0 0 auto;
      flex: 0 0 auto;
      font-size: 26px;
      line-height: 1;
    }
    .exchange-promo-card {
      margin: 18px 0 16px;
    }
    .homescreen-guide-steps {
      width: 100%;
      margin: 0;
      padding-left: 22px;
      color: rgba(241,241,239,.78);
      font-size: 15px;
      line-height: 1.42;
      font-weight: 600;
    }
    .homescreen-guide-steps li + li {
      margin-top: 8px;
    }
    .homescreen-guide-share-icon,
    .homescreen-guide-plus-icon {
      display: inline-block;
      width: 1.05em;
      height: 1.05em;
      margin: 0 .12em;
      vertical-align: -.14em;
      background: #3d8dff;
    }
    .homescreen-guide-share-icon {
      -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 3 7.5 7.5l1.4 1.4L11 6.8V15h2V6.8l2.1 2.1 1.4-1.4L12 3ZM5 10h2v9h10v-9h2v9a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2v-9Z'/%3E%3C/svg%3E") center / contain no-repeat;
      mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 3 7.5 7.5l1.4 1.4L11 6.8V15h2V6.8l2.1 2.1 1.4-1.4L12 3ZM5 10h2v9h10v-9h2v9a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2v-9Z'/%3E%3C/svg%3E") center / contain no-repeat;
    }
    .homescreen-guide-plus-icon {
      -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M11 5h2v6h6v2h-6v6h-2v-6H5v-2h6V5Z'/%3E%3C/svg%3E") center / contain no-repeat;
      mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M11 5h2v6h6v2h-6v6h-2v-6H5v-2h6V5Z'/%3E%3C/svg%3E") center / contain no-repeat;
    }
    .modal-overlay.search-info-sheet-modal {
      left: 0;
      right: 0;
      width: 100vw;
      align-items: flex-end;
      justify-content: center;
      padding: 0;
      background: rgba(0,0,0,.62);
    }
    .modal-overlay.app-menu-modal {
      align-items: flex-end;
      justify-content: center;
      padding: 0;
      background: rgba(0,0,0,.58);
    }
    .app-menu-card {
      position: relative;
      width: 100vw;
      padding: 28px 28px calc(24px + env(safe-area-inset-bottom));
      border-radius: 34px 34px 0 0;
      background: #2b2b2d;
      color: var(--text);
      box-shadow: 0 -22px 54px rgba(0,0,0,.46);
      transform: translateY(100%);
      transition: transform .28s cubic-bezier(.2,.8,.2,1);
    }
    .modal-overlay.visible .app-menu-card {
      transform: translateY(0);
    }
    .app-menu-close {
      position: absolute;
      top: 18px;
      right: 18px;
      display: grid;
      place-items: center;
      width: 44px;
      min-height: 44px;
      height: 44px;
      padding: 0;
      border: 0;
      border-radius: 50%;
      background: rgba(255,255,255,.09);
      color: rgba(241,241,239,.72);
      box-shadow: none;
      font-size: 32px;
      line-height: 0;
      font-weight: 300;
    }
    .app-menu-title {
      margin: 0 56px 24px;
      color: var(--text);
      font-size: 24px;
      line-height: 1.08;
      font-weight: 800;
      letter-spacing: 0;
      text-align: center;
    }
    .app-menu-list {
      display: grid;
      gap: 10px;
    }
    .app-menu-item {
      width: 100%;
      min-height: 54px;
      padding: 0 18px;
      border: 1px solid rgba(255,255,255,.08);
      border-radius: 18px;
      background: rgba(255,255,255,.055);
      color: rgba(241,241,239,.94);
      box-shadow: none;
      font-size: 17px;
      line-height: 1.15;
      font-weight: 650;
      text-align: left;
    }
    .app-menu-version {
      margin: 20px 0 0;
      color: rgba(241,241,239,.42);
      font-size: 13px;
      line-height: 1.2;
      font-weight: 600;
      text-align: center;
    }
    .search-info-sheet-card {
      position: relative;
      width: 100vw;
      max-width: none;
      overflow: visible;
      min-height: min(52dvh, 460px);
      display: flex;
      flex-direction: column;
      justify-content: center;
      padding: 30px 34px calc(24px + env(safe-area-inset-bottom));
      border-radius: 34px 34px 0 0;
      background: #2b2b2d;
      color: var(--text);
      box-shadow: 0 -22px 54px rgba(0,0,0,.46);
      transform: translateY(100%);
      transition: transform .28s cubic-bezier(.2,.8,.2,1);
    }
    .search-info-sheet-card.has-action {
      min-height: min(64dvh, 570px);
      padding-bottom: env(safe-area-inset-bottom);
      background: #2b2b2d;
    }
    .search-info-sheet-card.is-search-info,
    .search-info-sheet-card.is-delivery {
      justify-content: flex-start;
      padding-top: 52px;
      padding-bottom: calc(30px + env(safe-area-inset-bottom));
    }
    .search-info-sheet-card.is-delivery {
      min-height: auto;
    }
    .search-info-sheet-card.has-link-action:not(.is-delivery) {
      justify-content: flex-start;
      min-height: auto;
      padding-top: 52px;
      padding-bottom: calc(30px + env(safe-area-inset-bottom));
    }
    .modal-overlay.visible .search-info-sheet-card {
      transform: translateY(0);
    }
    .search-info-sheet-close {
      position: absolute;
      top: 18px;
      right: 18px;
      display: grid;
      place-items: center;
      width: 44px;
      min-height: 44px;
      height: 44px;
      padding: 0;
      border: 0;
      border-radius: 50%;
      background: rgba(255,255,255,.09);
      color: rgba(241,241,239,.72);
      box-shadow: none;
      font-size: 32px;
      line-height: 0;
      font-weight: 300;
    }
    .search-info-sheet-icon {
      width: 72px;
      height: 72px;
      margin: -12px auto 22px;
      display: grid;
      place-items: center;
      border-radius: 50%;
      background-color: #ffe53b;
      background-image: linear-gradient(147deg, #ffe53b 0%, #ff2525 74%);
      color: #fff;
      font-size: 42px;
      line-height: 1;
      font-weight: 800;
    }
    .search-info-sheet-icon.is-svg {
      background: transparent;
    }
    .search-info-sheet-icon.is-svg svg {
      width: 72px;
      height: 72px;
      display: block;
    }
    .search-info-sheet-icon.hidden {
      display: none;
    }
    .search-info-sheet-card.has-link-action .search-info-sheet-icon {
      margin-top: -36px;
    }
    .search-info-sheet-title {
      margin: 0;
      color: var(--text);
      font-size: 24px;
      line-height: 1.08;
      font-weight: 800;
      letter-spacing: 0;
      text-align: center;
    }
    .search-info-sheet-lead {
      margin: 30px auto 0;
      max-width: 420px;
      padding-left: 12px;
      color: rgba(241,241,239,.58);
      font-size: 16px;
      line-height: 1.42;
      font-weight: 500;
      text-align: left;
    }
    .search-info-sheet-support {
      width: 100%;
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 8px;
      margin-top: auto;
      padding-top: 36px;
      color: var(--text);
      font-size: 15px;
      line-height: 1.2;
      font-weight: 650;
    }
    .search-info-sheet-card.is-search-info .search-info-sheet-support {
      padding-top: 30px;
    }
    .search-info-sheet-support a {
      color: var(--telegram-accent);
      text-decoration: none;
      white-space: nowrap;
    }
    .search-info-sheet-action {
      width: calc(100% - 16px);
      min-height: 58px;
      margin: auto auto 0;
      border-radius: 16px;
      background: var(--button);
      color: var(--button-text);
      font-size: 18px;
      line-height: 1;
      font-weight: 600;
      box-shadow: 0 10px 24px rgba(0,0,0,.20);
    }
    .search-info-sheet-action.as-link {
      width: auto;
      min-height: auto;
      margin: 28px auto 0;
      padding: 0 0 4px;
      border-radius: 0;
      background: transparent;
      color: var(--telegram-accent);
      box-shadow: none;
      font-size: 15px;
      line-height: 1.2;
      font-weight: 500;
    }
    .search-info-sheet-card.is-delivery .search-info-sheet-action.as-link {
      margin-top: 28px;
      padding-top: 0;
    }
    .search-info-sheet-card.has-link-action:not(.is-delivery) .search-info-sheet-action.as-link {
      margin-top: 28px;
      padding-top: 0;
    }
    .search-info-sheet-action.hidden {
      display: none;
    }
    .client-push-card {
      display: grid;
      gap: 12px;
      margin: 12px 0 16px;
      padding: 16px 18px;
      border: 1px solid rgba(230,227,220,.34);
      border-radius: 28px;
      background: rgba(255,255,255,.055);
      box-shadow:
        inset 0 0 0 1px rgba(230,227,220,.12),
        0 10px 26px rgba(0,0,0,.18);
    }
    .client-push-card.hidden {
      display: none;
    }
    .client-push-title {
      margin: 0;
      color: var(--text);
      font-size: 18px;
      line-height: 1.2;
      font-weight: 800;
    }
    .client-push-text {
      margin: -4px 0 0;
      color: var(--hint);
      font-size: 14px;
      line-height: 1.35;
      font-weight: 600;
    }
    .client-push-button {
      justify-self: start;
      min-height: 38px;
      padding: 0 18px;
      border: 1px solid rgba(230,227,220,.46);
      border-radius: 999px;
      background: var(--button);
      color: var(--button-text);
      font-size: 14px;
      line-height: 1;
      font-weight: 800;
      box-shadow: none;
    }
    .client-push-button:disabled {
      opacity: .58;
    }
    .field-inline {
      position: relative;
    }
    .field-inline input {
      padding-right: 56px;
    }
    .field-inline-button {
      position: absolute;
      top: 50%;
      right: 10px;
      transform: translateY(-50%);
      width: 36px;
      height: 36px;
      border: 0;
      border-radius: 10px;
      background: transparent;
      box-shadow: none;
      padding: 0;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      color: var(--hint);
    }
    .field-inline-button:hover {
      filter: none;
      color: var(--text);
    }
    .field-inline-button:active {
      transform: translateY(-50%) scale(.96);
    }
    .field-inline-button svg {
      width: 20px;
      height: 20px;
      display: block;
    }
    .field-note {
      font-size: 13px;
      color: var(--hint);
      line-height: 1.35;
    }
    label {
      font-size: 14px;
      color: var(--hint);
      font-weight: 500;
    }
    select, input, button {
      width: 100%;
      border: 1px solid var(--border);
      border-radius: var(--radius-sm);
      background: var(--field);
      color: var(--text);
      padding: 15px 16px;
      min-height: 54px;
      font: inherit;
    }
    select,
    input {
      appearance: none;
      -webkit-appearance: none;
      background: var(--input-field);
    }
    .cargo-field-row select,
    .cargo-field-row input {
      -webkit-tap-highlight-color: transparent;
      border: 0;
      border-radius: 0;
      background: transparent;
      box-shadow: none;
      min-height: 58px;
      padding: 0;
      color: var(--text);
      font-weight: 700;
      text-align: right;
    }
    #weight,
    #volume {
      font-size: 25px;
      line-height: 1;
    }
    .cargo-field-row select {
      direction: rtl;
    }
    .cargo-field-row select option {
      direction: ltr;
    }
    .cargo-field-row select:active,
    .cargo-field-row input:active {
      background: transparent;
      box-shadow: none;
      filter: none;
    }
    input::placeholder {
      color: rgba(255,255,255,.38);
    }
    select:focus,
    input:focus {
      outline: none;
      border-color: var(--focus);
      box-shadow:
        inset 0 0 0 1px var(--focus),
        0 0 0 1px var(--focus-soft);
    }
    select.placeholder-state {
      color: rgba(255,255,255,.38);
    }
    .cargo-field-row select:focus,
    .cargo-field-row input:focus {
      outline: none;
      border-color: transparent;
      box-shadow: none;
    }
    button {
      border: 0;
      background: var(--button);
      color: var(--button-text);
      font-weight: 600;
      cursor: pointer;
      box-shadow: 0 10px 24px rgba(0,0,0,.20);
      transition: transform .18s ease, opacity .18s ease, filter .18s ease;
    }
    button:disabled {
      opacity: .6;
      cursor: default;
      filter: none;
      transform: none;
      box-shadow: none;
    }
    button:hover {
      filter: brightness(1.03);
    }
    button:active {
      transform: scale(.99);
    }
    button.secondary {
      background: transparent;
      border: 1px solid var(--border-strong);
      color: var(--text);
      box-shadow: none;
    }
    .menu-grid {
      display: grid;
      gap: 10px;
    }
    .result {
      min-width: 0;
      margin-top: 18px;
      padding: 16px;
      border-radius: var(--radius);
      background: var(--card);
      border: 1px solid var(--border);
      display: none;
    }
    .result.visible { display: block; }
    /* PARTCN: CLIENT_TOASTS_AND_MODALS */
    .toast {
      position: fixed;
      left: var(--page-pad-left);
      right: var(--page-pad-right);
      bottom: 18px;
      z-index: 1000;
      padding: 14px 16px;
      border-radius: 14px;
      background: rgba(20, 20, 22, 0.94);
      border: 1px solid var(--border);
      color: var(--text);
      font-size: 14px;
      font-weight: 600;
      box-shadow: 0 10px 30px rgba(0,0,0,.35);
      opacity: 0;
      transform: translateY(12px);
      pointer-events: none;
      transition: opacity .18s ease, transform .18s ease;
    }
    .toast.visible {
      opacity: 1;
      transform: translateY(0);
    }
    .toast.centered {
      left: 50%;
      right: auto;
      bottom: auto;
      top: 50%;
      width: min(360px, calc(100vw - var(--page-pad-left) - var(--page-pad-right)));
      text-align: center;
      padding: 18px 18px;
      border-radius: 18px;
      background: rgba(20, 20, 22, 0.96);
      transform: translate(-50%, calc(-50% + 12px));
      white-space: normal;
      line-height: 1.4;
      font-size: 15px;
      box-shadow: 0 18px 48px rgba(0,0,0,.42);
    }
    .toast.centered.visible {
      transform: translate(-50%, -50%);
    }
    .modal-overlay {
      position: fixed;
      inset: 0;
      z-index: 1200;
      display: flex;
      align-items: center;
      justify-content: center;
      padding: 24px var(--page-pad-right) 24px var(--page-pad-left);
      background: rgba(0,0,0,.52);
      opacity: 0;
      pointer-events: none;
      transition: opacity .2s ease;
    }
    .modal-overlay.visible {
      opacity: 1;
      pointer-events: auto;
    }
    #searchChatPhotoModal {
      padding: 0;
      background: rgba(0,0,0,.94);
    }
    .modal-card {
      width: min(380px, 100%);
      padding: 22px 20px 18px;
      border-radius: 22px;
      background: var(--button);
      color: var(--button-text);
      box-shadow: 0 22px 50px rgba(0,0,0,.38);
      border: 1px solid rgba(255,255,255,.55);
      transform: translateY(10px) scale(.98);
      transition: transform .2s ease;
    }
    .modal-overlay.visible .modal-card {
      transform: translateY(0) scale(1);
    }
    .modal-title {
      margin: 0;
      font-size: 24px;
      line-height: 1.15;
      font-weight: 700;
      letter-spacing: 0;
      text-align: center;
    }
    .modal-message {
      margin: 12px 0 18px;
      font-size: 15px;
      line-height: 1.45;
      color: rgba(20,20,22,.82);
    }
    .modal-card button {
      width: 100%;
    }
    .contact-modal-card {
      width: min(420px, 100%);
      padding: 22px 20px 18px;
    }
    .contact-modal-message {
      margin: 0 0 16px;
      font-size: 15px;
      line-height: 1.45;
      color: rgba(20,20,22,.82);
      text-align: center;
    }
    .contact-modal-fields {
      display: grid;
      gap: 10px;
      margin-bottom: 14px;
    }
    .contact-modal-row {
      display: grid;
      gap: 6px;
    }
    .contact-modal-row label {
      color: rgba(20,20,22,.78);
      font-size: 14px;
      font-weight: 600;
    }
    .contact-modal-row input {
      min-height: 50px;
      border-radius: 14px;
      border: 1px solid rgba(23,23,21,.12);
      background: rgba(23,23,21,.06);
      color: var(--button-text);
      box-shadow: none;
      padding: 13px 14px;
    }
    .contact-modal-row input::placeholder {
      color: rgba(20,20,22,.34);
    }
    .contact-modal-error {
      min-height: 18px;
      margin: 0 0 10px;
      color: #9f2f2f;
      font-size: 13px;
      line-height: 1.35;
      text-align: center;
    }
    .info-modal-card {
      width: min(420px, 100%);
      max-height: min(78dvh, 680px);
      overflow-y: auto;
    }
    .info-modal-title {
      margin: 0 0 14px;
      color: var(--button-text);
      font-size: 24px;
      line-height: 1.15;
      font-weight: 700;
      text-align: center;
    }
    .info-modal-stack {
      display: grid;
      gap: 10px;
      margin-bottom: 16px;
    }
    .info-modal-item {
      border-radius: 16px;
      padding: 12px 14px;
      background: rgba(23,23,21,.06);
      border: 1px solid rgba(23,23,21,.08);
    }
    .info-modal-item h4 {
      margin: 0 0 4px;
      color: var(--button-text);
      font-size: 16px;
      line-height: 1.25;
      font-weight: 700;
    }
    .info-modal-item p {
      margin: 0;
      color: rgba(20,20,22,.76);
      font-size: 14px;
      line-height: 1.45;
    }
    .info-modal-note {
      margin: 0 0 14px;
      color: rgba(20,20,22,.56);
      font-size: 13px;
      line-height: 1.4;
      text-align: center;
    }
    .line {
      display: flex;
      justify-content: space-between;
      gap: 16px;
      padding: 8px 0;
    }
    .line span:last-child {
      text-align: right;
      font-weight: 600;
    }
    .note {
      margin-top: 14px;
      color: var(--hint);
      font-size: 14px;
      line-height: 1.45;
    }
    /* PARTCN: CLIENT_CARGO_CALC */
    .cargo-live {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 16px;
      padding: 16px;
      border-radius: var(--radius);
      border: 1px solid var(--border);
      background: var(--card);
      box-shadow: var(--shadow);
      min-width: 0;
    }
    .cargo-live-copy {
      min-width: 0;
      display: grid;
      gap: 4px;
    }
    .cargo-live-label {
      font-size: 15px;
      line-height: 1.2;
      font-weight: 600;
      color: var(--text);
    }
    .cargo-live-note {
      font-size: 13px;
      line-height: 1.3;
      color: var(--hint);
    }
    .cargo-live-value {
      flex: 0 0 auto;
      text-align: right;
      font-size: 24px;
      line-height: 1;
      font-weight: 700;
      white-space: nowrap;
    }
    #calculate {
      margin-top: 2px;
    }
    .actions {
      margin-top: 18px;
      display: grid;
      gap: 10px;
      width: 100%;
      min-width: 0;
    }
    .actions.two {
      grid-template-columns: 1fr 1fr;
    }
    /* PARTCN: CLIENT_EXCHANGE */
    .exchange-board {
      display: grid;
      gap: 6px;
    }
    .exchange-input-group {
      display: grid;
      gap: 0;
      min-width: 0;
      overflow: hidden;
      border-radius: 28px;
      background: var(--panel-surface);
    }
    .exchange-box {
      min-height: 54px;
      padding: 8px 16px;
      border-radius: 0;
      border: 0;
      background: transparent;
      box-shadow: none;
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      min-width: 0;
      overflow: hidden;
      position: relative;
    }
    .exchange-input-group .exchange-box + .exchange-box {
      border-top: 0;
    }
    .exchange-input-group .exchange-box + .exchange-box::before {
      content: "";
      position: absolute;
      top: 0;
      left: 16px;
      right: 16px;
      height: 1px;
      background: rgba(255,255,255,.08);
    }
    .exchange-box:not(.rate-card) {
      justify-content: center;
      gap: 4px;
    }
    .exchange-box.rate-card {
      height: auto;
      min-height: 54px;
      padding: 8px 16px;
      border-radius: 28px;
      background: var(--panel-surface);
      display: grid;
      grid-template-columns: auto minmax(0, 1fr);
      align-items: baseline;
      align-content: center;
      column-gap: 16px;
      row-gap: 2px;
      border: 0;
      box-shadow: none;
    }
    .exchange-box-head {
      display: contents;
    }
    .exchange-box-label {
      font-size: 16px;
      color: var(--hint);
      font-weight: 500;
      line-height: 20px;
      display: flex;
      align-items: center;
      min-height: 20px;
    }
    .exchange-box-label.primary {
      color: var(--text);
      font-size: 18px;
      line-height: 22px;
      font-weight: 700;
      align-self: baseline;
    }
    .exchange-box-code {
      font-size: 24px;
      line-height: 1;
      font-weight: 700;
      letter-spacing: 0;
      color: var(--text);
      flex: 0 0 auto;
    }
    .exchange-box-value {
      font-size: 22px;
      line-height: 1.1;
      font-weight: 600;
      letter-spacing: 0;
      word-break: break-word;
    }
    .exchange-box-value.medium {
      font-size: 18px;
      line-height: 22px;
      font-weight: 700;
      text-align: right;
      align-self: baseline;
      justify-self: end;
    }
    .exchange-amount-row {
      display: grid;
      grid-template-columns: auto minmax(0, 1fr);
      align-items: center;
      gap: 14px;
      min-width: 0;
      overflow: hidden;
      margin-top: auto;
      padding-top: 0;
    }
    .exchange-box:not(.rate-card) .exchange-amount-row {
      align-items: baseline;
      margin-top: 0;
    }
    .exchange-box input.exchange-amount-input {
      margin: 0;
      width: 100%;
      min-width: 0;
      max-width: 100%;
      text-align: right;
      font-size: clamp(24px, 7vw, 30px);
      font-weight: 600;
      line-height: 1;
      padding: 0;
      border: 0;
      border-radius: 0;
      background: transparent;
      box-sizing: border-box;
      box-shadow: none;
      overflow: hidden;
      -webkit-appearance: none;
      appearance: none;
    }
    .exchange-box input.exchange-amount-input::placeholder {
      color: rgba(255,255,255,.24);
    }
    .exchange-box input.exchange-amount-input::-webkit-outer-spin-button,
    .exchange-box input.exchange-amount-input::-webkit-inner-spin-button {
      margin: 0;
      -webkit-appearance: none;
    }
    .exchange-box input.exchange-amount-input:focus {
      outline: none;
    }
    .exchange-amount-display {
      min-width: 0;
      width: 100%;
      max-width: 100%;
      text-align: right;
      font-size: clamp(24px, 7vw, 30px);
      line-height: 1.05;
      font-weight: 600;
      letter-spacing: 0;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }
    .exchange-box-meta {
      font-size: 13px;
      line-height: 1.2;
      color: var(--hint);
      font-weight: 500;
      text-align: right;
      white-space: nowrap;
      display: flex;
      align-items: flex-end;
      justify-content: flex-end;
      min-height: 16px;
      width: 100%;
      grid-column: 2;
      align-self: start;
      justify-self: end;
    }
    .hidden {
      display: none !important;
    }
    .muted {
      color: var(--hint);
      font-size: 14px;
    }
    .map {
      height: 320px;
      border-radius: 16px;
      overflow: hidden;
      border: 1px solid var(--border);
      background: var(--field);
      margin-top: 14px;
    }
    @media (max-width: 560px) {
      :root {
        --page-pad-left: max(18px, calc(env(safe-area-inset-left) + 12px));
        --page-pad-right: max(18px, calc(env(safe-area-inset-right) + 12px));
      }
      .wrap {
        padding:
          calc(20px + var(--telegram-top-offset))
          var(--page-pad-right)
          132px
          var(--page-pad-left);
      }
      .tab {
        min-height: 38px;
        padding: 0 6px;
        font-size: 16px;
      }
      .tabs {
        width: calc(100vw - 42px - env(safe-area-inset-left) - env(safe-area-inset-right));
        padding: 4px;
      }
      .search-chat-block {
        margin-left: -8px;
        margin-right: -8px;
      }
      .brand {
        margin: 0 0 18px;
      }
      .card {
        padding: 18px;
      }
      .card.tight {
        padding: 16px;
      }
      .hero-card,
      .exchange-box.rate-card {
        height: auto;
        min-height: 91px;
        padding: 8px 14px;
      }
      .cargo-field-row + .cargo-field-row::before {
        left: 14px;
        right: 14px;
      }
      .cargo-field-row {
        min-height: 56px;
        padding: 0 18px;
      }
      .cargo-live {
        padding: 14px;
      }
      .cargo-live-value {
        font-size: 22px;
      }
      .exchange-box {
        min-height: 64px;
        padding: 10px 14px;
      }
      .exchange-input-group .exchange-box + .exchange-box::before {
        left: 14px;
        right: 14px;
      }
      .exchange-box:not(.rate-card) {
        min-height: 58px;
        padding: 12px 14px;
      }
      .exchange-box-label {
        font-size: 15px;
      }
      .exchange-box-value.medium {
        font-size: 17px;
      }
      .exchange-box-code {
        font-size: 22px;
      }
      .exchange-box input.exchange-amount-input,
      .exchange-amount-display {
        font-size: clamp(22px, 7vw, 28px);
        height: 42px;
        line-height: 1;
        min-height: 0;
      }
    }
    /* PARTCN: CLIENT_ORDERS */
    .orders-board-wrap {
      display: grid;
      gap: 12px;
      margin-top: 6px;
    }
    .orders-local-title {
      margin-top: 0;
      margin-bottom: 0;
      font-size: 22px;
      line-height: 1.15;
      font-weight: 700;
    }
    .orders-screen {
      display: grid;
      gap: 12px;
      margin-top: 0;
      width: calc(100% + 16px);
      min-width: 0;
      margin-left: -8px;
      margin-right: -8px;
    }
    .orders-list-mobile {
      display: grid;
      gap: 10px;
    }
    .order-card-mobile {
      padding: 0;
      overflow: hidden;
      border-radius: 22px;
      background: rgba(255,255,255,.075);
      border: 1px solid rgba(255,255,255,.08);
      box-shadow: var(--shadow);
      min-height: 156px;
    }
    .order-card-head-mobile {
      display: grid;
      grid-template-columns: auto minmax(64px, 1fr) auto;
      gap: 14px;
      align-items: center;
      min-height: 50px;
      padding: 0 14px;
      background: transparent;
      border-bottom: 0;
      overflow: hidden;
    }
    .order-card-title-mobile {
      margin: 0;
      font-size: 16px;
      line-height: 1;
      font-weight: 700;
      color: inherit;
      text-align: left;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }
    .order-card-price-mobile {
      min-width: 0;
      display: flex;
      align-items: baseline;
      justify-content: flex-start;
      gap: 1px;
      color: var(--text);
      font-size: 16px;
      line-height: 1;
      font-weight: 700;
      white-space: nowrap;
    }
    .order-card-price-value-mobile {
      overflow: hidden;
      text-overflow: ellipsis;
    }
    .order-card-price-currency-mobile {
      color: var(--text);
      font-size: 15px;
      line-height: 1;
      font-weight: 700;
    }
    .order-card-date-mobile {
      color: var(--hint);
      font-size: 12px;
      line-height: 1;
      font-weight: 700;
      text-align: right;
      white-space: nowrap;
    }
    .order-card-body-mobile {
      display: grid;
      align-content: space-between;
      gap: 12px;
      min-height: 106px;
      padding: 10px 14px 14px;
    }
    .order-card-lower-mobile {
      min-height: 76px;
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      gap: 12px;
      align-items: end;
    }
    .order-card-side-mobile {
      display: flex;
      flex-direction: column;
      align-items: flex-end;
      justify-content: flex-end;
      gap: 8px;
      min-width: 0;
    }
    .order-card-actions-mobile {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, auto));
      overflow: hidden;
      border: 1px solid rgba(255,255,255,.18);
      border-radius: 16px;
      background: transparent;
      transform: translateY(-12px);
    }
    .order-card-meta-mobile {
      display: grid;
      gap: 6px;
    }
    .order-card-row-mobile {
      display: grid;
      gap: 4px;
    }
    .order-card-label-mobile {
      color: var(--hint);
      font-size: 12px;
      line-height: 1.2;
      font-weight: 500;
      text-transform: uppercase;
      letter-spacing: .02em;
    }
    .order-card-value-mobile {
      color: var(--text);
      font-size: 15px;
      line-height: 1.35;
      word-break: break-word;
    }
    .order-action-segment-mobile {
      min-height: 32px;
      font-size: 13px;
      font-weight: 500;
      padding: 0 11px;
      border: 0;
      background: transparent;
      color: var(--text);
      display: flex;
      align-items: center;
      justify-content: center;
      text-align: center;
      cursor: pointer;
      user-select: none;
      font-family: inherit;
      appearance: none;
      -webkit-appearance: none;
    }
    .order-action-segment-mobile + .order-action-segment-mobile {
      border-left: 1px solid rgba(255,255,255,.18);
    }
    .order-action-segment-mobile:hover {
      filter: none;
      background: rgba(255,255,255,.03);
    }
    .order-files-mobile {
      min-height: 64px;
      width: 100%;
      border: 0;
      border-radius: 16px;
      padding: 0 12px;
      background: rgba(0,0,0,.12);
      color: var(--hint);
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 10px;
      text-align: center;
      cursor: pointer;
      font-family: inherit;
      appearance: none;
      -webkit-appearance: none;
      transform: translateY(5px);
    }
    .order-files-mobile.has-files {
      flex-direction: column;
      align-items: flex-start;
      justify-content: center;
      gap: 6px;
      text-align: left;
      padding: 8px 12px;
    }
    .order-files-mobile:not(.has-files) {
      cursor: default;
    }
    .order-files-text-mobile {
      color: rgba(255,255,255,.48);
      font-size: 12px;
      line-height: 1.15;
      font-weight: 700;
    }
    .order-file-preview-mobile {
      display: block;
      width: 100%;
      max-width: 100%;
      color: rgba(255,255,255,.62);
      font-size: 13px;
      line-height: 1.15;
      font-weight: 700;
      text-decoration: none;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }
    .order-card-status-row-mobile {
      display: flex;
      justify-content: flex-end;
      min-height: 16px;
      transform: translateY(6px);
    }
    .order-card-status-mobile {
      color: var(--text);
      font-size: 14px;
      line-height: 1.1;
      font-weight: 800;
      white-space: nowrap;
      text-align: right;
    }
    /* PARTCN: CLIENT_PHOTO_VIEWER */
    .search-chat-photo-dialog {
      width: 100vw;
      height: 100vh;
      display: flex;
      align-items: center;
      justify-content: center;
      overflow: auto;
      -webkit-overflow-scrolling: touch;
      touch-action: none;
    }
    .search-chat-photo-image {
      display: block;
      max-width: min(100vw, 100%);
      max-height: 100vh;
      width: auto;
      height: auto;
      object-fit: contain;
      background: transparent;
      user-select: none;
      -webkit-user-drag: none;
      touch-action: none;
    }
    .orders-empty-mobile {
      padding: 20px 18px;
      border-radius: 28px;
      background: rgba(255,255,255,.04);
      border: 1px solid rgba(255,255,255,.08);
      color: var(--hint);
      font-size: 15px;
      line-height: 1.4;
      text-align: center;
    }
    .orders-empty-card {
      min-height: 188px;
      display: grid;
      align-content: center;
      justify-items: center;
      gap: 10px;
      padding: 28px 24px;
      border-radius: 30px;
      text-align: center;
    }
    .orders-empty-title {
      margin: 0;
      color: rgba(241,241,239,.58);
      font-size: 20px;
      line-height: 1.2;
      font-weight: 600;
    }
