@spunto/design-system 0.18.0 → 0.18.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/package.json +1 -1
  2. package/styles.css +28 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@spunto/design-system",
3
- "version": "0.18.0",
3
+ "version": "0.18.1",
4
4
  "description": "Spunto's shared design system — warm/flame tokens, color constants, and UI primitives.",
5
5
  "type": "module",
6
6
  "license": "MIT",
package/styles.css CHANGED
@@ -351,6 +351,34 @@
351
351
  ::-webkit-scrollbar-thumb:hover { background: color-mix(in oklch, var(--muted-foreground) 30%, transparent); }
352
352
  }
353
353
 
354
+ /* ─── Touch devices — no zoom-on-focus ───────────────────────────────────────
355
+ * iOS Safari (and other coarse-pointer browsers) zoom the whole page in the
356
+ * moment a form control smaller than 16px takes focus, then leaves the user
357
+ * to zoom back out by hand. Individual components already set `text-base`
358
+ * for this (Input, Textarea, the command palette's search field), but any
359
+ * caller passing its own `text-sm`/`text-xs` override — very common, since
360
+ * that's how a form matches its surrounding density on desktop — clobbers it
361
+ * through `tailwind-merge`. Deliberately unlayered (outside `@layer`): Tailwind
362
+ * utilities all live inside named layers, and an unlayered rule always wins
363
+ * the cascade over a layered one regardless of source order or specificity —
364
+ * so this holds no matter what class a consumer adds. */
365
+ @media (any-pointer: coarse) {
366
+ input:not(
367
+ [type="checkbox"],
368
+ [type="radio"],
369
+ [type="range"],
370
+ [type="color"],
371
+ [type="file"],
372
+ [type="button"],
373
+ [type="submit"],
374
+ [type="reset"]
375
+ ),
376
+ textarea,
377
+ select {
378
+ font-size: 16px;
379
+ }
380
+ }
381
+
354
382
  /* ─── Terminal — xterm.js scrollbar ──────────────────────────────────────────
355
383
  * Restyle xterm's own custom scrollbar (14px, square corners) to match the
356
384
  * thin/rounded one above. Its width/position are set inline by xterm's JS on