/* Touch targets, app-wide: everything you tap is at least 44 × 44 px (Apple's minimum), so a greasy thumb on a phone
   or the bay iPad never hits the wrong thing. Loaded after styles.css. Found by measuring every screen at 375 px
   (2026-10-16). Where growing the look would crowd a row, an invisible ::before grows only the tap area (like .dict-btn's). */

/* buttons and fields */
.btn { min-height: 44px; min-width: 44px; }
.btn.sm { min-height: 44px; }
.icon { width: 44px; height: 44px; flex-shrink: 0; }
.who { min-height: 44px; }
nav .newjob { min-height: 44px; }
input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]), select { min-height: 44px; }
.seg button, .seg a { min-height: 44px; min-width: 44px; }
.seg a { display: inline-flex; align-items: center; justify-content: center; }
.seg { padding: 2px; }

/* the shop's operating-hours rows: compact boxes, full-size taps */
.oprow input { min-height: 44px; }

/* checkboxes and radio buttons: the whole label is the target */
label.chk, label:has(> input[type=radio]) { min-height: 44px; }
label.sdday { min-height: 44px; }
input[type=checkbox], input[type=radio] { width: 22px; height: 22px; }

/* links that look like text or rows */
.duelink { display: inline-flex; align-items: center; min-height: 44px; }
.qmain, a.mini { min-height: 44px; }
.linkbtn { position: relative; min-height: 44px; }
nav .brand { position: relative; }
nav .brand::before { content: ''; position: absolute; inset: -12px -4px; }

/* parts orders: supplier and day chips, the order rows' buttons */
.pochip span { min-height: 44px; }
.poform label.chk { min-height: 44px; }
.poact .btn, .pocol .btn { min-height: 44px; }

/* 2026-10-17 (POPS-3, phone at 320 px): the header links, every checkbox label, the payment ✕ and a text's attachments */
nav .links a { min-height: 44px; }
input[type=checkbox], input[type=radio] { width: 24px; height: 24px; }
label:has(> input[type=checkbox]) { min-height: 44px; display: inline-flex; align-items: center; gap: 8px; }
.linkbtn[data-del-pay] { min-width: 44px; justify-content: center; }
.bubble a.small { display: inline-flex; align-items: center; min-height: 44px; padding: 0 4px; }
/* POPS-4: a long Russian label wraps inside the button on a narrow phone instead of being cut off. break-word, not
   anywhere: "anywhere" let a row squeeze the button narrower than one word ("Сохран|ить", "Ad|d"): T-9 */
@media (max-width: 420px) { .btn { white-space: normal; overflow-wrap: break-word; line-height: 1.15; } }
