/* park — стили модуля (клон mobile).
   Источники: machine_park_list_item.dart, machine_preview.dart,
   ot_list_view.dart + ot_list_item.dart, gas_station_list_item.dart,
   writeoff_machinery_list_item.dart + writeoff_machinery_preview.dart. */

/* ---------- Превью машины: подстроки телеметрии ----------
   machine_preview._TelemetryRow берёт textTheme.bodySmall = AppTextStyles.p3M
   (12px / w500). В app.css строки заданы весом 400 — уточняем здесь. */
.tel-row__lbl,
.tel-row__val{font-weight:500}

/* ---------- Карточка АЗС (gas_station_list_item.dart, _Avatar) ----------
   Круг 51px: фото cover либо gas_station.svg 24px primary500 на primary50. */
.gas-avatar{
  width:51px;height:51px;border-radius:50%;background:var(--primary50);flex:0 0 51px;
  display:flex;align-items:center;justify-content:center;overflow:hidden;
}

/* ---------- OtListView внутри шитов выбора (ot_list_view.dart) ----------
   «ВСЕГО: N» — h5 (11/600, uppercase) text600; плитка — рамка text300,
   radius 8, padding 12; чекбокс (OtListItem) идёт ПЕРВЫМ в строке. */
.pk-total{font-size:11px;font-weight:600;line-height:1.5;color:var(--text600);
  text-transform:uppercase;margin-bottom:8px}
.pk-lv{display:flex;flex-direction:column;gap:8px}
.pk-lv__item{
  display:flex;align-items:center;gap:12px;width:100%;padding:12px;
  border-radius:8px;border:1px solid var(--text300);background:#fff;text-align:left;
}
.pk-lv__item:active{background:var(--default5)}
/* Выбранная плитка — ВСЕГДА primary300 @ 12 % (ot_list_view._ListItem:
   backgroundColor = AppColors.primary300.withValues(alpha: 0.12)),
   независимо от наличия чекбокса. */
.pk-lv__item.on{background:rgba(140,171,205,.12)}
.pk-lv__txt{flex:1;min-width:0}
/* Checkbox: 18×18, radius 4, рамка text400; отмеченный — primary500 */
.pk-cb{
  width:18px;height:18px;flex:0 0 18px;border-radius:4px;border:1.5px solid var(--text400);
  background:#fff;display:flex;align-items:center;justify-content:center;
}
.pk-cb.on{background:var(--primary500);border-color:var(--primary500)}

/* Плавающий OtToolBar поверх списка (Positioned bottom: 0):
   в шите список скроллится внутри .cbs__body, поэтому бар — sticky. */
.pk-lvwrap{position:relative;display:flex;flex-direction:column}
.pk-lvwrap--bar #pkList{padding-bottom:12px}
.pk-lvbar{
  position:sticky;bottom:0;z-index:2;display:flex;align-items:center;justify-content:center;
  gap:8px;padding:8px 0 4px;
}

/* Шит «Находится в/на зоне»: контент = 75 % высоты экрана
   (SizedBox height: MediaQuery.size.height * 0.75). На десктопе «экран» —
   рамка телефона 852px, на узком экране — вся высота окна. */
.pk-zonelist{height:min(75vh,639px);overflow-y:auto;scrollbar-width:none}
.pk-zonelist::-webkit-scrollbar{display:none}

/* ---------- Формы АЗС ----------
   isPrimaryButtonEnabled == false → ElevatedButton в disabled-состоянии. */
.btn-primary.is-off{background:var(--text400);color:#fff;pointer-events:none}

/* ---------- Таб «Списания» ---------- */
/* _OfflineNotice: во всю ширину, фон yellow10, padding 16/8, p4m text800 */
.wo-offline{width:100%;background:var(--yellow10);padding:8px 16px;color:var(--text800)}
/* error-ветка _Content: центрированный текст p3m text700, padding 24 */
.wo-error{padding:24px;text-align:center;color:var(--text700)}
/* Строка секции превью: label flex 4 / значение flex 6 по правому краю */
.wo-kv{display:flex;align-items:flex-start}
/* Метрика шапки превью: padding 12/10, фон text300, radius 12 */
.wo-metric{
  flex:1;min-width:0;display:flex;flex-direction:column;
  padding:10px 12px;border-radius:12px;background:var(--text300);
}
