/* Ombor amallari: buyurtma · ko'chirish · chiqim.
 *
 * ⛔ Ikkita narsa ataylab qilingan:
 *
 * 1. Amal tanlash tugmalari YIRIK — bozorda qo'l qo'pol (2.1).
 * 2. Sanash maydoni katta va o'ngda turadi: qabul qilayotgan odam
 *    bir qo'lida tovar sanaydi, ikkinchisi bilan yozadi.
 */

/* ── Amal tanlash ──────────────────────────────────────── */

/* ⛔ 2x2: to'rtinchi amal (sanoq) qo'shilganda 3+1 bo'lib,
 * «Sanoq» pastda yolg'iz qolgan edi — skrinshot 7.9 da. */
/* ⛔ `.ops.three` O‘CHIRILDI (2026-09-17). U savdo bo‘limining
   uchta rejimi uchun edi; haqnoma o‘chirilgach uni hech kim
   ishlatmay qoldi. O‘lik CSS keyingi o‘qiganni adashtiradi —
   toq songa `:last-child:nth-child(odd)` qoidasi javob beradi. */
/* ⛔ Yolg‘iz rejim ikkitalik to‘rda yarim ekranni egallab, yonida
   bo‘sh joy qoldirardi: kassirda «Bugun» da faqat qarz rejasi
   ko‘rinadi (`report.view` yo‘q). */
.ops.one{grid-template-columns:1fr}
.ops{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;
  margin-bottom:16px}
/* ⛔ Ramka emas, soya (2026-09-13) — `base.css` dagi `--card-sh`. */
.op{min-height:var(--tap);padding:9px 6px;border-radius:var(--card-r);
  border:0;box-shadow:var(--card-sh);background:var(--glass);
  display:flex;flex-direction:column;gap:2px;align-items:center;
  cursor:pointer;font:inherit;color:var(--muted);text-align:center}
.op b{font-size:var(--t-3);color:var(--ink)}
.op span{font-size:var(--t-1);line-height:1.25}
/* ⛔ Tanlangani — ko'k halqa, soya ustiga qo'shiladi */
.op.on{background:#fff;
  box-shadow:var(--card-sh),0 0 0 2px var(--mid) inset}
.op.on b{color:var(--mid)}
/* Klaviatura raqami — bor-yo'qligini bilish uchun */
.op-key{position:absolute;top:5px;right:8px;font-size:var(--t-1);color:var(--muted)}
.op{position:relative}

@media (max-width:420px){
  .op span{display:none}
  .op{min-height:44px}
}

/* ⛔ KOMPYUTERDA TO'RTTASI BITTA QATORDA.
 *
 * 2x2 to'r telefon uchun to'g'ri (u yerda kenglik yo'q), lekin
 * 1440px da u ekranning tepasidan 200px yeb, savat pastga tushib
 * ketardi — egasi suratda qizil bilan belgiladi. Kenglik bor
 * joyda to'rtta amal bir qatorga sig'adi.
 *
 * `.ops.one` bu yerda TEGILMAYDI: u allaqachon bitta qator va
 * uning tanlagichi kuchliroq. */
/* ⛔ TOQ SONDAGI OXIRGI TUGMA YOLG‘IZ QOLMASIN.
 *
 * Omborda beshta amal bor va ikkitalik to‘rda oxirgisi («Sanoq»)
 * chap yarmida yolg‘iz turib, o‘ng yarmi bo‘sh qolardi — ekran
 * tugallanmagandek ko‘rinardi (2026-09-12, suratda ko‘rindi).
 *
 * ⛔ `.one` CHETLAB O‘TILADI: unda ustun soni boshqacha va bu
 * qoida yolg‘iz tugmani ikki marta cho‘zib yuborardi. */
@media (max-width:819px){
  .ops:not(.one) > .op:last-child:nth-child(odd){
    grid-column:1 / -1;
  }
}

@media (min-width:820px){
  /* ⛔ KOMPYUTERDA BO‘LIM ALMASHTIRGICHI YASHIRINADI (2026-09-14).
   *
   * BILLZ da sahifa ichida bunday qator YO‘Q: navigatsiya yo‘lak
   * va undan ochiladigan menyuda. Bizda esa u menyuni bir joyda
   * ikki marta ko‘rsatib turardi — egasi «barcha narsani billz
   * kabi qil» dedi.
   *
   * ⛔ TUGMALAR O‘CHIRILMAYDI, faqat yashiriladi: telefon aynan
   * shu DOM ni ishlatadi (u yerda menyu yo‘q) va ikkita ko‘rinish
   * uchun ikkita kod yozilmaydi.
   *
   * ⛔ Sharti: sarlavha endi SAHIFA nomini ko‘rsatadi
   * (`screen_title.js`). Busiz kassir qayerdaligini bilmasdi.
   *
   * ⛔ Bu yerda ilgari qatorning KENG EKRANDAGI joylashuvi
   * yozilgan edi: `auto-fit` beshta amalni bir qatorga terardi,
   * `max-width` esa ikkita rejim 500 pikselga cho‘zilishini
   * to‘xtatardi. Qator yashiringach ular O‘LIK qoidaga aylandi
   * va o‘chirildi — o‘lik CSS keyingi o‘qiganni adashtiradi.
   * Telefondagi joylashuv (`.ops` ning asosiy qoidasi va
   * `max-width:819px` bloki) o‘z joyida qoldi. */
  .ops{display:none}
}

/* ── Sanash ────────────────────────────────────────────── */

/* ⛔ Miqdor TAYYOR turadi, lekin o'zgartirilishi mumkin: farq
 * tekislanmaydi, u hujjatda qoladi va mudirga ko'rinadi. */
.count-row{display:flex;align-items:center;gap:10px;
  padding:9px 12px;border-bottom:1px solid var(--line)}
.count-row .who{flex:1;display:flex;flex-direction:column;min-width:0}
.count-row .who b{font-size:var(--t-3);overflow:hidden;text-overflow:ellipsis;
  white-space:nowrap}
.count-row .sub{font-size:var(--t-1);color:var(--muted)}
.count-row .cnt{width:84px;height:var(--tap);flex:0 0 auto;
  text-align:center;font-size:19px;font-weight:600;
  border:0;box-shadow:var(--ctl-sh);border-radius:12px;background:#fff;
  color:var(--ink);font-family:inherit}
.count-row .cnt:focus{outline:none;border-color:var(--mid);
  box-shadow:var(--ring)}

.gap{margin:10px 0 2px}
.gap[hidden]{display:none}
/* ⛔ SMENA FARQI SO‘Z BILAN (egasi, 2026-09-18): «25 000 kam».
   Ilgari «Farq: -25 000» deb turardi va minus tez o‘qilganda
   ko‘rinmasdi. Rang ogohlantiradi, so‘z tushuntiradi:
   kam — qizil, ortiqcha — sariq (u ham xato, faqat boshqa
   tomonga), farqsiz — jim kulrang. */
/* ⛔ SMENA YAKUNI — QOG‘OZ KO‘RINISHI.
   ⛔ `.paper` sinfini QAYTA ISHLATMADIM: u `sale_pay.css` da
   `display:none` bilan boshlanadi (telefonda jonli chek
   yashiriladi) va bu yerda blok jimgina yo‘qolardi. Bitta nom
   ikki ekranda ikki ma'no — `test_bare_layout_class_does_not_leak`
   aynan shuni qo‘riqlaydi. */
.sh-paper{margin:10px 0;padding:12px;border-radius:var(--radius-sm);
  background:#fff;box-shadow:var(--ctl-sh);overflow-x:auto}
.sh-paper pre{margin:0;white-space:pre;
  font-family:ui-monospace,SFMono-Regular,Menlo,monospace;
  font-size:var(--t-2);line-height:1.5;color:var(--ink)}

/* ⛔ NAQD LIMIT ESLATMASI (egasi, 2026-09-18).
   Qizil emas, SARIQ: bu xato emas — pul ko‘p, ya'ni savdo yaxshi
   ketyapti. Qizil rang «nimadir buzildi» deb o‘qiladi va haqiqiy
   kamomad bilan bir xil ko‘rinardi. */
.cash-over{margin:10px 0 2px;padding:10px 12px;border-radius:var(--radius-sm);
  background:#fdf6ea;color:var(--warn);font-size:var(--t-2)}
.cash-over b{font-weight:600}

/* ⛔ SO‘M VA DOLLAR bilan sanash (13.12).
   Yopiq turadi: dollar har kuni bo‘lmaydi va ikkita ortiqcha
   katak har safar ko‘rinib tursa, ular shovqin bo‘lardi.

   ⛔ KENGLIK CHEKLANGAN. Birinchi urinishda (nominal jadvali)
   qator butun ekranga yoyilgandi va kompyuterda raqam bilan
   natija orasida 900 piksel bo‘sh joy qolardi — ko‘z ikkovini
   bog‘lay olmasdi. Egasi shu xatoni Qoldiq ustunlarida
   allaqachon ko‘rsatgan edi. */
.tally-go{max-width:420px;width:100%;margin-top:8px}
.tally-go.on{color:var(--mid)}
.tally{max-width:420px;margin-top:8px}
.tally[hidden]{display:none}
.tally-row{display:flex;align-items:center;gap:10px;padding:3px 0}
.tally-note{flex:0 0 58px;font-size:var(--t-2);color:var(--muted)}
.tally-cnt{flex:0 0 140px;height:var(--tap);text-align:right;
  padding:0 12px;font-size:17px;font-weight:600;border:0;
  border-radius:12px;background:#fff;box-shadow:var(--ctl-sh);
  color:var(--ink);font-family:inherit}
.tally-cnt:focus{outline:none;box-shadow:var(--ring)}
/* ⛔ Kurs va natija BITTA qatorda: «× 12 500 = 1 250 000».
   Alohida qator bo‘lsa, kassir qaysi raqam nimaga tegishli
   ekanini qidirardi. */
.tally-sum{flex:1 1 auto;font-size:var(--t-2);color:var(--muted)}
.tally-all{display:flex;justify-content:space-between;align-items:center;
  margin-top:8px;padding-top:8px;font-size:var(--t-3)}
.tally-all b{font-weight:600}

.gap-bad{color:var(--danger)}
.gap-over{color:var(--warn)}
.gap-ok{color:var(--muted)}


/* ── Qoldiq ro'yxati (6.1) ──────────────────────────────── */

.bal-top{display:flex;flex-wrap:wrap;align-items:center;gap:12px;
  margin-bottom:12px}
.bal-top select{width:auto;min-width:180px;max-width:100%;height:var(--tap)}
.bal-top .chips.two{margin:0;min-width:260px}
/* ⛔ Qidiruv maydoni 1600 piksel bo'lib cho'zilmasin: terilgan
   so'z chap chekkada qolib, maydonning qolgan qismi bo'sh
   turadi. */
#bq{max-width:520px}

/* ⛔ Qator BOSILMAYDI: bu ro'yxat javob beradi, amalga olib
   bormaydi. Tovarni ochish «Tovar» bo'limida — u yerda narx va
   kirim tarixi bor. Bosiladigandek ko'rinib, bosilmaydigan qator
   — yolg'on va'da. */
.found.flat{cursor:default;background:#fff}
.found.flat:hover{background:#fff}

.qty-cell{font-variant-numeric:tabular-nums;font-weight:600}
/* ⛔ Tugagani QIZIL: do'kondor ro'yxatni ko'zdan kechirganda uni
   o'qimasdan ham ko'radi. */
.qty-cell.zero{color:var(--danger)}
/* ⛔ NARX — ODDIY RAQAM, ogohlantirish emas. Ilgari bu yerda
   `.debt` sinfi ishlatilardi va u `debt.css` da QIZIL: butun
   ustun xatoga o'xshab turardi. Qoldiq noli qizil bo'lishi
   yetarli — ekranda BITTA qizil ma'no bo'lsin. */
.bal-price{font-variant-numeric:tabular-nums}
/* ⛔ USTUNLARGA KENGLIK. `.found` qatori nomga butun joyni berib,
   qolgan uchta ustunni o‘ng chekkaga yopishtirib qo‘yardi:
   «Kod Qoldiq Narxi» uch so‘z bir-biriga tegib, qiymatlar
   «99OMIALNDI 10 120 000» bitta so‘zdek turardi (UX_TANQID 1.3).
   Endi har ustun o‘z joyida, raqamlar o‘ngga tekis. */
.bal-grid .tm{flex:0 0 150px;overflow:hidden;text-overflow:ellipsis;
  white-space:nowrap}
.bal-grid .cnt{flex:0 0 72px;text-align:right}
.bal-grid .debt,.bal-grid .bal-price{flex:0 0 110px;text-align:right}
@media (max-width:560px){
  .bal-grid .tm{flex-basis:96px}
  .bal-grid .cnt{flex-basis:48px}
  .bal-grid .debt,.bal-grid .bal-price{flex-basis:84px}
}

/* ⛔ «125 tadan 30 tasi» — ro'yxat USTIDA.
 *
 * Katalogda 125 tovar bor edi, ekranda 30 tasi turardi va bu
 * hech qayerda YOZILMAGANDI. Do'kondor qolgan 95 tasini faqat
 * nomini eslab yozib topa olardi — buni u do'konda birinchi kuni
 * sezadi.
 *
 * Xira va kichik: bu javob, e'lon emas. */
.found-count{padding:2px 14px 8px;font-size:var(--t-2);color:var(--muted);
  font-variant-numeric:tabular-nums}
