:root {
  --bg: #d5d5d8;
  --shell: #f3f3f5;
  --card: #ffffff;
  --ink: #1c1d21;
  --muted: #8d8f96;
  --line: #ececef;
  --lime: #d6f25c;
  --lime-2: #c6e34a;
  --good: #3c8f32;
  --good-bg: #e7f7d8;
  --pink: #f0a8ba;
  --dark: #2a2c31;
  --soft: #f7f7f8;
  --radius: 22px;
  --sans: "Inter", "Segoe UI", sans-serif;
}

* { box-sizing: border-box; }
html, body { margin: 0; }
body {
  min-height: 100vh;
  color: var(--ink);
  font-family: var(--sans);
  background: var(--bg);
  letter-spacing: -0.011em;
}
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; color: inherit; }
h1, h2, h3 { margin: 0; font-weight: 600; }

.shell {
  margin: 12px;
  min-height: calc(100vh - 24px);
  background: var(--shell);
  border-radius: 28px;
  padding: 10px 16px 22px;
}
.topbar {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 8px 6px 12px;
}
.logo {
  width: 38px; height: 38px; border-radius: 12px;
  display: grid; place-items: center; background: white; color: var(--ink);
  border: 1px solid var(--line); flex: none;
}
.logo.brand { width: auto; height: 38px; padding: 0 10px; }
.logo.brand img { display: block; height: 30px; width: auto; }
.topnav { display: flex; gap: 2px; align-items: center; overflow-x: auto; flex: 1; }
.topnav a {
  display: inline-flex; align-items: center; gap: 7px;
  padding: 8px 12px; border-radius: 999px; color: #6e7078;
  font-size: 14px; font-weight: 500; white-space: nowrap;
}
.topnav a svg { opacity: 0.8; }
.topnav a.on { background: var(--lime); color: var(--ink); }
.topnav a.on svg { opacity: 1; }
.topnav em {
  font-style: normal; background: #1c1d21; color: white;
  border-radius: 99px; min-width: 18px; text-align: center; font-size: 11px; padding: 1px 5px;
}
.top-tools { display: flex; align-items: center; gap: 10px; margin-left: auto; }
.icon-btn, .avatar {
  width: 36px; height: 36px; border-radius: 50%;
  display: grid; place-items: center; background: white; border: 1px solid var(--line);
}
.avatar { font-size: 12px; font-weight: 650; background: #ececef; }
.loc { display: inline-flex; align-items: center; gap: 6px; color: #5e6168; font-size: 13px; font-weight: 500; }
.text-btn { background: none; border: 0; color: var(--muted); cursor: pointer; font-size: 13px; }
.main { padding: 4px 4px 10px; }

.page-head { display: flex; justify-content: space-between; gap: 16px; align-items: end; margin: 8px 4px 18px; flex-wrap: wrap; }
.page-title { font-size: 28px; letter-spacing: -0.045em; font-weight: 650; }
.eyebrow, .crumbs { margin: 0 0 4px; color: var(--muted); font-size: 12px; letter-spacing: 0.04em; text-transform: none; }
.lead, .fine, .sub { color: var(--muted); }
.sub { display: block; font-size: 12px; }
.head-actions, .date-switch { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }

.btn {
  border: 0; border-radius: 12px; padding: 10px 14px; cursor: pointer;
  display: inline-flex; align-items: center; justify-content: center; font-weight: 550; font-size: 14px;
}
.btn-primary { background: var(--ink); color: white; }
.btn-line { background: white; border: 1px solid var(--line); }
.btn-danger { background: transparent; color: #b42318; padding-left: 0; }

.card, .panel, .sheet, .metric, .brand-card, .vehicle, .person, .login-card {
  background: var(--card);
  border-radius: var(--radius);
  border: 1px solid rgba(255,255,255,.7);
}
.card, .sheet { padding: 18px 18px 16px; margin-bottom: 14px; }
.card-head, .panel-head, .sheet header { display: flex; justify-content: space-between; gap: 10px; align-items: center; margin-bottom: 12px; }
.card-head h2, .panel-head h2, .sheet h2 { font-size: 16px; letter-spacing: -0.03em; }
.card-head a { color: var(--muted); font-size: 13px; }

.erp { display: grid; grid-template-columns: 228px minmax(0, 1fr) 300px; gap: 14px; align-items: start; }
.rail, .side-col, .erp-main { display: flex; flex-direction: column; gap: 14px; }
.quick { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.quick a {
  background: white; border-radius: 16px; min-height: 74px; padding: 12px;
  display: flex; flex-direction: column; justify-content: space-between;
  font-size: 13px; font-weight: 550; border: 1px solid #fff; color: #3a3c42;
}
.quick svg { color: #6e7078; }
.rail-list { background: transparent; }
.rail-list h3 { display: flex; justify-content: space-between; color: #9a9ca3; font-size: 13px; font-weight: 550; margin-bottom: 6px; }
.rail-list a { display: block; padding: 7px 2px; font-size: 13.5px; color: #3a3c42; }
.promo { background: var(--dark); color: white; border-radius: 20px; padding: 16px; margin-top: 8px; }
.promo h3 { font-size: 16px; }
.promo p { color: #c8c9ce; font-size: 13px; line-height: 1.45; }
.promo-actions { display: flex; gap: 14px; margin-top: 12px; font-size: 13px; }
.promo-actions a:first-child { background: white; color: var(--ink); border-radius: 10px; padding: 7px 12px; }

.panel { padding: 16px 16px 14px; }
.money-row { display: flex; gap: 28px; margin: 12px 0 4px; }
.money-row b { display: block; font-size: 28px; letter-spacing: -0.05em; font-weight: 650; }
.money-row span, .pair-stats small, .stock-head small { color: var(--muted); font-size: 13px; }
.muted-num { color: #8a8d95; }
.delta { background: var(--good-bg); color: var(--good); border-radius: 999px; font-size: 12px; font-weight: 600; padding: 2px 7px; margin-left: 6px; }
.delta.neg { background: #fdecee; color: #c44755; }
.ghost-pill, .week-pill {
  background: white; border: 1px solid var(--line); border-radius: 10px; color: #555; font-size: 12px; padding: 6px 8px;
}
.week-pill { flex: none; }
.week-pill input { width: auto; border: 0; padding: 0; background: transparent; font-size: 12px; }
.legend-row { display: flex; justify-content: flex-end; gap: 14px; color: var(--muted); font-size: 12px; }
.dot { width: 8px; height: 8px; border-radius: 50%; display: inline-block; margin-right: 5px; }
.dot.lime { background: var(--lime-2); }
.dot.pink { background: var(--pink); }
.chart { width: 100%; height: 150px; display: block; }
.chart.mini { height: 92px; }
.axis, .heat-days { display: grid; grid-template-columns: repeat(7, 1fr); color: #b0b2b8; font-size: 11px; text-align: center; }
.duo { display: grid; grid-template-columns: 1.1fr 0.9fr; gap: 14px; }
.pair-stats { display: flex; gap: 28px; margin: 8px 0; }
.pair-stats b { font-size: 28px; letter-spacing: -0.05em; }
.stock-head b { font-size: 34px; letter-spacing: -0.05em; }
.meter { height: 16px; background: #2c2e33; border-radius: 8px; overflow: hidden; margin: 8px 0 14px; }
.meter i { display: block; height: 100%; background: linear-gradient(90deg, #2c2e33 70%, var(--lime-2)); }
.heat-row { display: grid; grid-template-columns: 72px 1fr; gap: 8px; align-items: center; margin-bottom: 6px; font-size: 12px; color: #6a6d74; }
.cells { display: grid; grid-template-columns: repeat(7, 1fr); gap: 4px; }
.cells i { display: block; height: 16px; border-radius: 4px; background: #eef3df; }
.cells .t1 { background: #d7ef9a; }
.cells .t2 { background: #b7dc55; }
.cells .t3 { background: #7eab2e; }
.cells .t4 { background: #3f6a22; }
.eff { display: grid; grid-template-columns: repeat(5, 1fr); gap: 12px; min-height: 180px; align-items: end; }
.eff-col { text-align: center; }
.eff-col > span { display: block; font-size: 12px; color: #8b8e96; margin-bottom: 6px; }
.eff-track { height: 120px; border-radius: 12px; background: repeating-linear-gradient(#f6f6f7, #f6f6f7 8px, #fbfbfc 8px, #fbfbfc 16px); display: flex; align-items: end; justify-content: center; }
.eff-track b { width: 42%; background: var(--dark); border-radius: 8px 8px 4px 4px; display: flex; align-items: start; justify-content: center; min-height: 8px; }
.eff-track i { width: 100%; height: 7px; background: var(--lime-2); border-radius: 8px 8px 0 0; }
.eff-col small { display: block; margin-top: 8px; color: #6d7078; }

.day-pills { display: flex; gap: 6px; margin: 12px 0; }
.day-pills a { flex: 1; text-align: center; background: #f4f4f6; border-radius: 14px; padding: 8px 0; }
.day-pills b { display: block; font-size: 16px; }
.day-pills small { color: var(--muted); }
.day-pills a.on { background: var(--ink); color: white; }
.day-pills a.on small { color: #c8c9ce; }
.plus { width: 28px; height: 28px; border-radius: 9px; border: 1px solid var(--line); display: grid; place-items: center; }
.tasks, .staff { list-style: none; margin: 0; padding: 0; }
.tasks li, .staff li { display: flex; justify-content: space-between; gap: 10px; align-items: center; padding: 10px 0; border-top: 1px solid var(--line); }
.tasks strong, .staff strong { display: block; font-size: 14px; }
.tasks small, .staff small { color: var(--muted); font-size: 12px; }
.staff a { display: flex; gap: 10px; align-items: center; }
.staff em, .tag { font-style: normal; font-size: 12px; color: #7a7d85; }
.tag { border-radius: 999px; padding: 4px 8px; }
.tag.go { background: var(--good-bg); color: var(--good); }
.tag.late { background: #fdecee; color: #c44755; }
.ava { width: 32px; height: 32px; border-radius: 50%; background: #ececef; display: grid; place-items: center; font-size: 11px; font-weight: 650; }
.quiet { color: var(--muted); border: 0 !important; }

.metrics { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin-bottom: 14px; }
.metric { padding: 16px; }
.metric span, .pill span { color: var(--muted); font-size: 12px; }
.metric b, .pill b { display: block; margin-top: 6px; font-size: 26px; letter-spacing: -0.045em; overflow-wrap: anywhere; }
.metric small, .pill small, .pill em { color: var(--muted); font-size: 12px; font-style: normal; }
.slim .metric b { font-size: 22px; }
.split { display: grid; grid-template-columns: 1.1fr 0.9fr; gap: 14px; }
.stack { display: flex; flex-direction: column; }
.work { display: grid; grid-template-columns: minmax(0, 1fr) 280px; gap: 14px; align-items: start; }
.summary { position: sticky; top: 12px; background: white; border-radius: 22px; padding: 18px; border: 1px solid var(--line); }
.summary h2 { font-size: 22px; letter-spacing: -0.04em; }
.summary dl { margin: 12px 0; }
.summary dl div { display: flex; justify-content: space-between; gap: 8px; padding: 8px 0; border-top: 1px solid var(--line); }
.summary dt { color: var(--muted); }
.narrow { max-width: 860px; }

.table-wrap { overflow: auto; width: 100%; }
.table { width: 100%; border-collapse: collapse; font-size: 14px; table-layout: auto; }
.clients-table { table-layout: fixed; }
.clients-table th:nth-child(1), .clients-table td:nth-child(1) { width: 22%; }
.clients-table th:nth-child(2), .clients-table td:nth-child(2) { width: 18%; }
.clients-table th:nth-child(3), .clients-table td:nth-child(3) { width: 16%; }
.clients-table th:nth-child(4), .clients-table td:nth-child(4) { width: 10%; }
.clients-table th:nth-child(5), .clients-table td:nth-child(5) { width: 16%; }
.clients-table th:nth-child(6), .clients-table td:nth-child(6) { width: 18%; }
.search-bar { display: flex; gap: 8px; align-items: center; margin: 0 0 14px; width: 100%; }
.search-bar input { flex: 1; width: 1%; min-width: 0; }
.search-bar .btn { flex: none; }
.plate-hint { color: var(--muted); font-size: 12px; }
.table th { text-align: left; font-size: 11px; color: var(--muted); font-weight: 550; padding: 0 8px 8px; }
.table td { padding: 12px 8px; border-top: 1px solid var(--line); vertical-align: middle; }
.table a { border-bottom: 1px solid #e4e4e8; }
.row-actions { white-space: nowrap; }
.row-actions a { margin-right: 8px; }

.badge, .tag { font-weight: 550; }
.badge { display: inline-flex; border-radius: 999px; padding: 3px 8px; font-size: 12px; background: #f2f2f4; }
.b-available, .b-paid, .b-returned { background: var(--good-bg); color: var(--good); }
.b-rented, .b-active { background: #e7f6fb; color: #1d6f8a; }
.b-repair, .b-impound, .b-overdue, .b-open, .b-cancelled { background: #fdecee; color: #c44755; }
.b-service, .b-parked { background: #f7f1dc; color: #8a6414; }

.plate { display: inline-flex; height: 28px; border-radius: 7px; overflow: hidden; border: 1px solid #dedee2; background: white; vertical-align: middle; }
.plate i { background: #1d4e96; color: white; font-style: normal; font-size: 10px; display: grid; place-items: center; padding: 0 6px; }
.plate b { display: grid; place-items: center; padding: 0 8px; font-size: 12px; letter-spacing: 0.06em; }
.plate.lg { height: 46px; }
.plate.lg b { font-size: 22px; padding: 0 12px; }

.field { display: flex; flex-direction: column; gap: 6px; margin-bottom: 12px; }
.field span { font-size: 12px; color: var(--muted); font-weight: 550; }
input, select, textarea { width: 100%; background: white; border: 1px solid var(--line); border-radius: 12px; padding: 11px 12px; outline: none; }
textarea { resize: vertical; }
input:focus, select:focus, textarea:focus { border-color: #c5d86a; box-shadow: 0 0 0 3px rgba(214, 242, 92, 0.45); }
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 8px 12px; }
.check { display: flex; gap: 8px; align-items: center; margin: 8px 0 14px; }
.check input { width: auto; }
.inline-form { display: flex; gap: 10px; align-items: end; }
.inline-form .field { flex: 1; margin: 0; }
.inline { display: inline-flex; gap: 6px; align-items: center; }
.inline select { width: auto; }

.brand-grid, .car-grid, .people { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 10px; margin-bottom: 14px; }
.brand-card, .vehicle, .person { padding: 16px; min-height: 120px; display: flex; flex-direction: column; gap: 6px; }
.brand-card strong, .person strong { font-size: 22px; letter-spacing: -0.04em; }
.brand-card em, .vehicle em, .person em { margin-top: auto; color: var(--muted); font-style: normal; font-size: 13px; }
.brand-card:hover, .vehicle:hover, .person:hover { outline: 1px solid #e4e4e8; }
.swatch { width: 16px; height: 16px; border-radius: 50%; border: 1px solid rgba(0,0,0,.12); }
.mono, .ava { }
.mono { width: 48px; height: 48px; border-radius: 50%; background: var(--ink); color: white; display: grid; place-items: center; margin-bottom: 8px; }

.chips { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 12px; }
.chip { border: 1px solid var(--line); background: white; border-radius: 999px; padding: 6px 10px; font-size: 13px; }
.chip.on, .pick.on { background: var(--ink); color: white; border-color: var(--ink); }
.picker-list { display: flex; flex-direction: column; gap: 6px; margin-top: 8px; }
.pick { text-align: left; background: white; border: 1px solid var(--line); border-radius: 14px; padding: 10px 12px; cursor: pointer; }
.pick small { display: block; color: var(--muted); }
.pick:disabled { opacity: 0.45; }
.js .native-pick { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); }

.deck { display: grid; grid-template-columns: 1fr 160px 1fr; grid-template-areas: "fl car fr" "rl car rr"; gap: 10px; margin-bottom: 12px; }
.fl { grid-area: fl; } .fr { grid-area: fr; } .rl { grid-area: rl; } .rr { grid-area: rr; }
.chassis { grid-area: car; border-radius: 28px; background: var(--soft); display: grid; place-items: center; text-align: center; min-height: 110px; }
.chassis strong { font-size: 18px; }
.corner small { display: block; margin-bottom: 6px; color: var(--muted); font-size: 12px; }
.seg { display: flex; gap: 6px; }
.seg-item { flex: 1; position: relative; }
.seg-item input { position: absolute; opacity: 0; }
.seg-item span { display: block; text-align: center; border: 1px solid var(--line); border-radius: 999px; padding: 7px 4px; background: white; font-size: 12px; cursor: pointer; }
.seg-yaxshi input:checked + span { background: var(--good-bg); color: var(--good); border-color: transparent; }
.seg-orta input:checked + span { background: #f7f1dc; color: #8a6414; border-color: transparent; }
.seg-yomon input:checked + span { background: #fdecee; color: #c44755; border-color: transparent; }
.payseg .seg-item input:checked + span { background: var(--lime); color: var(--ink); border-color: transparent; }

.dossier { display: grid; grid-template-columns: 300px 1fr; gap: 14px; }
.facts div { display: grid; grid-template-columns: 110px 1fr; gap: 8px; padding: 8px 0; border-top: 1px solid var(--line); }
.facts dt { color: var(--muted); }
.facts dd { margin: 0; }
.stat-pills { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-bottom: 14px; }
.pill { padding: 14px; }
.legend { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.legend li { display: flex; gap: 8px; align-items: center; }
.legend b { margin-left: auto; }
.legend i { width: 8px; height: 8px; border-radius: 50%; }
.legend.flat { grid-template-columns: 1fr 1fr; }
.c-available { background: #3f6a22; } .c-rented { background: #1d6f8a; } .c-repair { background: #c44755; }
.c-service { background: #8a6414; } .c-impound { background: #6d4c5a; } .c-parked { background: #8d8478; }
.fleet { display: flex; gap: 18px; align-items: center; }
.donut {
  width: 132px; height: 132px; border-radius: 50%; flex: none;
  background: conic-gradient(#3f6a22 0 calc(var(--a) * 1%), #1d6f8a calc(var(--a) * 1%) calc((var(--a) + var(--b)) * 1%), #c44755 calc((var(--a) + var(--b)) * 1%) calc((var(--a) + var(--b) + var(--c)) * 1%), #c6e34a calc((var(--a) + var(--b) + var(--c)) * 1%) calc((var(--a) + var(--b) + var(--c) + var(--d)) * 1%), #6d4c5a calc((var(--a) + var(--b) + var(--c) + var(--d)) * 1%) calc((var(--a) + var(--b) + var(--c) + var(--d) + var(--e)) * 1%), #d9d9de 0);
  -webkit-mask: radial-gradient(circle 44px, transparent 98%, #000 100%);
  mask: radial-gradient(circle 44px, transparent 98%, #000 100%);
}
.donut.empty { background: #e6e6ea; }
.bars { display: flex; flex-direction: column; gap: 8px; }
.bar-row { display: grid; grid-template-columns: 72px 1fr auto; gap: 8px; align-items: center; font-size: 13px; }
.bar { height: 8px; background: #eef0e4; border-radius: 99px; overflow: hidden; }
.bar i { display: block; height: 100%; background: var(--lime-2); }
.empty { color: var(--muted); }
.flash { border-radius: 14px; padding: 12px 14px; margin-bottom: 12px; }
.flash-ok { background: var(--good-bg); color: var(--good); }
.flash-err { background: #fdecee; color: #c44755; }
.close-list { list-style: none; margin: 12px 0 0; padding: 0; counter-reset: row; }
.close-list > li { display: grid; grid-template-columns: 24px 1fr auto; gap: 8px; padding: 11px 0; border-top: 1px solid var(--line); }
.close-list > li::before { counter-increment: row; content: counter(row); color: var(--muted); }
.close-list ul { grid-column: 2 / -1; list-style: none; margin: 4px 0 0; padding: 0; color: var(--muted); }
.close-list ul li { display: flex; justify-content: space-between; }
.sign { display: flex; justify-content: space-between; gap: 20px; margin-top: 18px; }
.sign span { color: var(--muted); font-size: 12px; }
.sign strong { display: block; min-height: 22px; border-bottom: 1px solid var(--ink); margin-top: 8px; }

.hit-row { cursor: pointer; }
.hit-row:hover { background: #f7f8f2; }
.tabbar, .sheet { display: none; }
.flash a { text-decoration: underline; }

.login-body { display: grid; place-items: center; padding: 28px; min-height: 100vh; background: #eef0f3; }
.login-card {
  width: min(400px, 100%);
  padding: 36px 32px 28px;
  border-radius: 22px;
  box-shadow: 0 10px 40px rgba(20, 24, 40, 0.06);
}
.login-logo { display: block; width: 200px; height: auto; margin: 0 auto 26px; }
.login-card .field span { color: #6b7280; font-size: 13px; font-weight: 500; }
.login-card input { border-radius: 12px; border-color: #e5e7eb; padding: 12px 14px; }
.login-card input:focus { border-color: #3b82f6; box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.18); }
.login-card .btn-primary {
  width: 100%;
  background: #111111;
  color: white;
  border-radius: 999px;
  padding: 12px 16px;
  margin-top: 6px;
}

@media (max-width: 1180px) {
  .erp, .split, .work, .dossier, .duo { grid-template-columns: 1fr; }
  .metrics, .stat-pills { grid-template-columns: 1fr 1fr; }
  .summary { position: static; }
}
@media (max-width: 900px) {
  .topnav, .loc, .top-tools .text-btn { display: none; }
  .shell { margin: 0; border-radius: 0; min-height: 100vh; padding: 8px 12px 92px; }
  .page-head { align-items: stretch; }
  .page-head .btn, .head-actions, .head-actions .btn, .date-switch { width: 100%; }
  .date-switch { display: grid; }
  .inline-form { flex-direction: column; align-items: stretch; }
  .money-row { flex-wrap: wrap; gap: 14px; }
  .money-row b, .pair-stats b, .stock-head b { font-size: 22px; }
  .metrics, .form-grid, .eff, .quick, .stat-pills { grid-template-columns: 1fr 1fr; }
  .deck { grid-template-columns: 1fr 1fr; grid-template-areas: "car car" "fl fr" "rl rr"; }
  .tabbar {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    position: fixed;
    left: 0; right: 0; bottom: 0;
    z-index: 30;
    background: white;
    border-top: 1px solid var(--line);
    padding: 6px 4px calc(8px + env(safe-area-inset-bottom));
  }
  .tabbar a, .tabbar button {
    border: 0; background: transparent; color: #6e7078;
    font-size: 12px; font-weight: 600; padding: 8px 2px; border-radius: 12px;
    display: flex; flex-direction: column; align-items: center; gap: 2px;
  }
  .tabbar a.on, .tabbar button[aria-expanded="true"] { background: var(--lime); color: var(--ink); }
  .tabbar em { font-style: normal; background: #1c1d21; color: white; border-radius: 99px; font-size: 10px; padding: 0 5px; }
  .sheet {
    display: flex;
    flex-direction: column;
    position: fixed;
    left: 12px; right: 12px;
    bottom: calc(68px + env(safe-area-inset-bottom));
    z-index: 31;
    background: white;
    border-radius: 18px;
    padding: 8px;
    box-shadow: 0 12px 40px rgba(0,0,0,.12);
  }
  .sheet[hidden] { display: none; }
  .sheet a, .sheet button {
    text-align: left; background: none; border: 0; border-radius: 12px;
    padding: 12px; font-size: 15px; font-weight: 550;
  }
  .sheet a:active, .sheet button:active { background: #f4f4f6; }
  .table.cards thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
  .table.cards, .table.cards tbody, .table.cards tr, .table.cards td { display: block; width: 100%; }
  .clients-table { table-layout: auto; }
  .table.cards tr {
    border: 1px solid var(--line);
    border-radius: 16px;
    margin-bottom: 10px;
    padding: 6px 0;
    background: white;
  }
  .table.cards td {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    border: 0;
    padding: 7px 12px;
    text-align: right;
  }
  .table.cards td::before { content: attr(data-label); color: var(--muted); font-size: 12px; text-align: left; }
  .table.cards .row-actions { justify-content: flex-end; gap: 14px; }
  .table.cards .row-actions a { padding: 8px 0; }
  input, select, textarea { font-size: 16px; }
}
@media (max-width: 520px) {
  .metrics, .stat-pills, .eff, .quick, .form-grid { grid-template-columns: 1fr; }
  .brand-grid, .car-grid, .people { grid-template-columns: 1fr; }
  .page-title { font-size: 24px; }
}
@media print {
  .topbar, .rail, .side-col, .btn, .noprint, .tabbar, .sheet { display: none !important; }
  .shell { margin: 0; background: white; padding-bottom: 0; }
  .erp, .split { display: block; }
}
