/**
 * Pinnacle Market UI Bridge foundation, version 1.
 *
 * Source authority: the current runtime under apps/web/src, specifically the
 * shared, business, and event styles. This file intentionally does not copy
 * fixture data or historical baseline rules.
 *
 * Inert-by-default guarantee: every declaration is scoped beneath
 * .pm-shell-v1. Phase 1A does not apply that class to any WordPress surface.
 * Component-specific runtime values remain with their future component
 * migrations and are not promoted to global WordPress rules here.
 */

.pm-shell-v1 {
	/* Current product palette from apps/web/src/styles/globals.css. */
	--pm-color-ink: #172218;
	--pm-color-forest: #263f2d;
	--pm-color-deep: #132b20;
	--pm-color-cream: #f5f0e5;
	--pm-color-paper: #fcfaf4;
	--pm-color-gold: #e7ad41;
	--pm-color-orange: #e36f36;
	--pm-color-sage: #8fa27e;
	--pm-color-line: #d8d3c7;
	--pm-color-white: #fff;

	/* Current runtime font families. Font delivery remains WordPress-owned. */
	--pm-font-sans: "DM Sans", Arial, sans-serif;
	--pm-font-serif: "Fraunces", Georgia, serif;
	--pm-font-weight-regular: 400;
	--pm-font-weight-medium: 500;
	--pm-font-weight-semibold: 600;
	--pm-font-weight-bold: 700;

	/* Shared text primitives observed across the current runtime. */
	--pm-text-body-size: 15px;
	--pm-text-body-line-height: 1.7;
	--pm-text-action-size: 13px;
	--pm-text-meta-size: 10px;
	--pm-text-meta-letter-spacing: 1.2px;
	--pm-text-heading-line-height: 1.05;

	/* Recurring shared spacing values; component geometry remains separate. */
	--pm-space-1: 4px;
	--pm-space-2: 7px;
	--pm-space-3: 8px;
	--pm-space-4: 10px;
	--pm-space-5: 12px;
	--pm-space-6: 14px;
	--pm-space-7: 16px;
	--pm-space-8: 18px;
	--pm-space-9: 20px;
	--pm-space-10: 22px;
	--pm-space-11: 24px;
	--pm-space-12: 30px;
	--pm-space-13: 32px;
	--pm-space-14: 40px;
	--pm-space-section-small: 55px;
	--pm-space-section-medium: 70px;
	--pm-space-section-large: 90px;

	/* Shared fluid gutters used by current product sections. */
	--pm-gutter-header: clamp(24px, 5vw, 76px);
	--pm-gutter-content: clamp(24px, 6vw, 94px);
	--pm-gutter-editorial: clamp(24px, 7vw, 110px);
	--pm-gutter-workspace: clamp(24px, 4vw, 62px);
	--pm-gutter-mobile: 20px;

	/* Square is the default; round is reserved for explicit circular UI. */
	--pm-radius-square: 0;
	--pm-radius-pill: 20px;
	--pm-radius-round: 50%;
	--pm-border-width: 1px;
	--pm-border-standard: var(--pm-border-width) solid var(--pm-color-line);
	--pm-border-header: 1px solid rgba(23, 34, 24, 0.12);

	/* Shared shadow recipes from the current runtime. */
	--pm-shadow-search: 0 12px 40px rgba(30, 39, 30, 0.12);
	--pm-shadow-directory-search: 0 15px 45px rgba(30, 39, 30, 0.12);
	--pm-shadow-elevated: 0 22px 60px rgba(23, 34, 24, 0.15);
	--pm-shadow-menu: 0 12px 30px rgba(0, 0, 0, 0.12);
	--pm-shadow-hard-gold: 10px 10px 0 var(--pm-color-gold);

	/* Shared interaction timing. */
	--pm-duration-fast: 200ms;
	--pm-duration-standard: 250ms;

	/* Documented runtime breakpoints for future scoped component migrations. */
	--pm-breakpoint-wide: 1100px;
	--pm-breakpoint-business-intermediate: 1050px;
	--pm-breakpoint-event-intermediate: 1000px;
	--pm-breakpoint-tablet-wide: 950px;
	--pm-breakpoint-business-tablet: 800px;
	--pm-breakpoint-mobile: 720px;
	--pm-breakpoint-small: 420px;

	color: var(--pm-color-ink);
	font-family: var(--pm-font-sans);
}

.pm-shell-v1 .pm-surface {
	background: var(--pm-color-paper);
	color: var(--pm-color-ink);
}

.pm-shell-v1 .pm-surface--cream {
	background: var(--pm-color-cream);
}

.pm-shell-v1 .pm-surface--deep {
	background: var(--pm-color-deep);
	color: var(--pm-color-white);
}

.pm-shell-v1 .pm-heading {
	font-family: var(--pm-font-serif);
	font-weight: var(--pm-font-weight-bold);
	line-height: var(--pm-text-heading-line-height);
}

.pm-shell-v1 .pm-body {
	font-family: var(--pm-font-sans);
	font-size: var(--pm-text-body-size);
	font-weight: var(--pm-font-weight-regular);
	line-height: var(--pm-text-body-line-height);
}

.pm-shell-v1 .pm-meta {
	font-family: var(--pm-font-sans);
	font-size: var(--pm-text-meta-size);
	font-weight: var(--pm-font-weight-bold);
	letter-spacing: var(--pm-text-meta-letter-spacing);
	text-transform: uppercase;
}

.pm-shell-v1 .pm-action {
	align-items: center;
	background: var(--pm-color-deep);
	border: 0;
	border-radius: var(--pm-radius-square);
	color: var(--pm-color-white);
	display: inline-flex;
	font-family: var(--pm-font-sans);
	font-size: var(--pm-text-action-size);
	font-weight: var(--pm-font-weight-bold);
	gap: var(--pm-space-8);
	justify-content: center;
	padding: var(--pm-space-7) 23px;
	text-decoration: none;
	transition: transform var(--pm-duration-fast), background var(--pm-duration-fast);
}

.pm-shell-v1 .pm-action:hover {
	transform: translateY(-2px);
}

.pm-shell-v1 .pm-action--orange {
	background: var(--pm-color-orange);
}

.pm-shell-v1 .pm-action--cream {
	background: var(--pm-color-cream);
	color: var(--pm-color-deep);
}

.pm-shell-v1 .pm-link {
	color: inherit;
	text-decoration: none;
	transition: color var(--pm-duration-fast);
}

.pm-shell-v1 .pm-link:hover {
	color: var(--pm-color-orange);
}

.pm-shell-v1 .pm-divider {
	border: 0;
	border-top: var(--pm-border-standard);
	margin: 0;
}

/*
 * The current apps/web runtime tests keyboard focus behavior but does not
 * define a reusable visual focus token. Phase 1A therefore does not invent a
 * bridge-wide focus appearance. A future visible component migration must
 * specify and parity-test its scoped :focus-visible treatment explicitly.
 */
