/*
CPR — Shared Styles
Safe visual primitives only.
NO layout assumptions.
*/

/* ---------- Typography ---------- */

/* ---------- GLOBAL BASE ---------- */

html, body {
	margin: 0;
	padding: 0;
	height: auto;
	overflow-y: auto;
	font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	background: #e8e8ed;
	color: #111;
}

h1, h2, h3 {
	margin: 0.6em 0 0.4em;
	font-weight: 700;
}

p {
	margin: 0.6em 0;
	line-height: 1.5;
}

/* ---------- Forms ---------- */

input,
textarea,
select {
	font-family: inherit;
	font-size: 15px;
	padding: 8px;
	border-radius: 8px;
	border: 1px solid #ccc;
	box-sizing: border-box;
}

textarea {
	resize: vertical;
	min-height: 80px;
}

/* ---------- Buttons ---------- */

button {
	font-family: inherit;
	font-size: 15px;
	cursor: pointer;
}

button:disabled {
	opacity: 0.6;
	cursor: not-allowed;
}

/* ---------- Cards ---------- */

.card {
	background: #ffffff;
	border-radius: 12px;
	box-shadow: 0 2px 6px rgba(0,0,0,0.08);
}

/* ---------- Pills ---------- */

.pill {
	display: inline-block;
	padding: 4px 10px;
	border-radius: 999px;
	font-size: 13px;
	font-weight: 700;
	color: #ffffff;
}

/* ---------- Utility ---------- */

.unsaved {
	color: #8B0000;
	font-weight: 700;
	letter-spacing: 0.04em;
	font-size: 12px;


/* Fix for sticky headers on admin pages */
html:has(.admin-page),
body.admin-page {
  overflow: visible;
  height: auto;
}
