/* יוסף האוסף — reset + base */
@layer reset {
	*, *::before, *::after { box-sizing: border-box; }
	* { margin: 0; }
	img, svg, iframe { display: block; max-inline-size: 100%; }
	button, input, select, textarea { font: inherit; color: inherit; }
	[hidden] { display: none; }
}

@layer base {
	html {
		-webkit-text-size-adjust: 100%;
		text-size-adjust: 100%;
		scroll-behavior: smooth;
		overscroll-behavior: none;
		touch-action: manipulation;
		background: var(--color_bg);
	}

	body {
		min-block-size: 100dvh;
		font-family: var(--font_family);
		font-size: calc(var(--font_size_base) * var(--zoom_base));
		font-weight: var(--font_weight_regular);
		line-height: var(--line_height_base);
		color: var(--color_text);
		background-color: var(--color_bg);
		background-image:
			radial-gradient(48rem 32rem at 100% -8%, var(--color_glow_a), transparent 70%),
			radial-gradient(40rem 28rem at 0% 8%, var(--color_glow_b), transparent 70%);
		background-repeat: no-repeat;
		text-rendering: optimizeLegibility;
		-webkit-font-smoothing: antialiased;
		font-variant-numeric: tabular-nums;
		overflow-wrap: anywhere;
	}

	h1, h2, h3 { line-height: var(--line_height_tight); font-weight: var(--font_weight_bold); letter-spacing: -0.01em; text-wrap: balance; }
	h1 { font-size: var(--font_size_xl); }
	h2 { font-size: var(--font_size_lg); }
	h3 { font-size: var(--font_size_base); }
	p, li { text-wrap: pretty; }
	small { font-size: var(--font_size_sm); color: var(--color_text_muted); }
	b, strong { font-weight: var(--font_weight_bold); }

	a { color: var(--color_link); text-decoration: underline; text-underline-offset: 0.2em; text-decoration-thickness: var(--border_width); transition: color var(--transition_fast); }
	a:hover { color: color-mix(in srgb, var(--color_link), var(--color_text_on_primary) 25%); text-decoration-thickness: var(--border_width_thick); }

	:focus { outline: none; }
	:focus-visible { outline: var(--focus_ring_width) solid var(--color_focus); outline-offset: var(--focus_ring_offset); border-radius: var(--radius_sm); }

	::selection { background: var(--color_primary_soft); }

	hr { border: 0; block-size: var(--border_width); background: var(--color_border); }

	bdi[dir="ltr"], [dir="ltr"] > code, code { font-family: var(--font_family_mono); font-size: 0.92em; }
	pre { font-family: var(--font_family_mono); }
}
