/*
 * uos design tokens — INDUSTRY MATURE, EUROPEAN SOVEREIGN.
 *
 * Inspired by Linear, Vercel, Stripe, Cursor. Editorial-tech.
 * Type: IBM Plex (IBM/Red Hat/OpenShift heritage). Open source.
 * Palette: editorial — paper, ink, hairlines. Violet in 5% accents.
 */

:root {
	/* Brand — violet used sparingly */
	--uos-violet:        #5b21b6;
	--uos-violet-deep:   #4c1d95;
	--uos-violet-tint:   #ede9fe;
	--uos-red:           #ef2d2d;       /* UltimaOS official logo */

	/* Surfaces — editorial paper */
	--uos-paper:         #fafaf7;       /* page background, off-white cassé */
	--uos-surface:       #ffffff;       /* cards, panels */
	--uos-surface-alt:   #f5f5f2;       /* alternate sections, slightly warmer */

	/* Hairlines */
	--uos-line:          #e4e4e0;       /* hairlines, borders */
	--uos-line-strong:   #d4d4d0;       /* emphasized hairlines */

	/* Text — high-contrast, near-black */
	--uos-ink:           #0a0a0a;       /* primary text */
	--uos-ink-soft:      #3f3f46;       /* secondary text */
	--uos-ink-tertiary:  #71717a;       /* tertiary text (labels, kickers) */
	--uos-ink-quaternary:#a1a1aa;       /* muted */

	/* Status */
	--uos-success:       #047857;
	--uos-warning:       #b45309;
	--uos-error:         #b91c1c;

	/* Typography — IBM Plex family */
	--uos-font-display:  'IBM Plex Sans', system-ui, -apple-system, sans-serif;
	--uos-font-body:     'IBM Plex Sans', system-ui, -apple-system, sans-serif;
	--uos-font-mono:     'IBM Plex Mono', ui-monospace, 'SF Mono', Menlo, monospace;

	/* Type scale (calibrated editorial) */
	--uos-display-1:     clamp(3rem, 7vw, 5.5rem);   /* hero, line-height tight */
	--uos-display-2:     clamp(2rem, 4.5vw, 3.5rem);
	--uos-h1:            clamp(1.75rem, 3vw, 2.25rem);
	--uos-h2:            1.5rem;
	--uos-h3:            1.125rem;
	--uos-body:          1rem;
	--uos-body-lg:       1.0625rem;
	--uos-small:         0.875rem;
	--uos-tiny:          0.75rem;

	/* Line heights — editorial */
	--uos-lh-display:    1.02;
	--uos-lh-tight:      1.2;
	--uos-lh-snug:       1.45;
	--uos-lh-normal:     1.65;

	/* Letter-spacing — display gets tighter */
	--uos-tracking-display: -0.035em;
	--uos-tracking-tight:    -0.015em;
	--uos-tracking-normal:   0;

	/* Spacing (8pt scale) */
	--uos-s-1:  0.25rem;
	--uos-s-2:  0.5rem;
	--uos-s-3:  0.75rem;
	--uos-s-4:  1rem;
	--uos-s-5:  1.5rem;
	--uos-s-6:  2rem;
	--uos-s-8:  3rem;
	--uos-s-10: 4rem;
	--uos-s-12: 5rem;
	--uos-s-16: 7rem;
	--uos-s-20: 9rem;

	/* Radii — restrained, max 6px */
	--uos-r-xs: 2px;
	--uos-r-sm: 4px;
	--uos-r-md: 6px;
	--uos-r-lg: 8px;
	--uos-r-full: 999px;

	/* No drop shadows — editorial uses hairlines instead */
	--uos-shadow-card:  none;
	--uos-shadow-popup: 0 1px 2px rgba(10, 10, 10, 0.06);

	/* Motion */
	--uos-ease-out:      cubic-bezier(0.16, 1, 0.3, 1);
	--uos-dur-fast:      160ms;
	--uos-dur:           280ms;
	--uos-dur-slow:      500ms;

	/* Container */
	--uos-container:     1440px;
	--uos-container-sm:  880px;
	--uos-container-xs:  600px;
}