/*
 * Flora Fauna Fun puppy weight calculator. Everything is scoped under .pwc.pwc-root: the doubled
 * class (0,2,0) plus one more beats ruki's `.the-post .entry-content p` (0,2,1) and its bare
 * button / input / ul / h2 / table / img rules. Only link colours use !important.
 * Variables --pwc-*. No url() anywhere (Autoptimize rewrites it). No ad markup lives inside the tool.
 */

.pwc.pwc-root {
	--pwc-ink: #3b2414;
	--pwc-soft: #6b5440;
	--pwc-line: #dccaa6;
	--pwc-paper: #fffaf0;
	--pwc-green: #1f5a42;
	--pwc-green-d: #174532;
	--pwc-amber: #f2b84b;
	--pwc-ok: #1f7a4f;
	--pwc-above: #a96412;
	--pwc-below: #b0413e;
	--pwc-title: 'Fredoka', 'Nunito Sans', system-ui, sans-serif;
	--pwc-body: 'Nunito Sans', system-ui, -apple-system, 'Segoe UI', Arial, sans-serif;
	box-sizing: border-box;
	display: block;
	width: 100%;
	margin: 0 0 30px;
	padding: 0;
	font-family: var(--pwc-body);
	font-size: 16px;
	line-height: 1.5;
	color: var(--pwc-ink);
	scroll-margin-top: 76px;
}
.pwc.pwc-root *,
.pwc.pwc-root *::before,
.pwc.pwc-root *::after {
	box-sizing: border-box;
}
.entry-content h2[id],
.entry-content h3[id] {
	scroll-margin-top: 76px;
}

/* plain text blocks: undo ruki's 25px paragraph margins and list styling */
.pwc.pwc-root p,
.pwc.pwc-root .pwc-h,
.pwc.pwc-root .pwc-idle,
.pwc.pwc-root .pwc-msg,
.pwc.pwc-root .pwc-kicker,
.pwc.pwc-root .pwc-big,
.pwc.pwc-root .pwc-sub,
.pwc.pwc-root .pwc-meta,
.pwc.pwc-root .pwc-method,
.pwc.pwc-root .pwc-grown-t,
.pwc.pwc-root .pwc-naive,
.pwc.pwc-root .pwc-how,
.pwc.pwc-root .pwc-note-s,
.pwc.pwc-root .pwc-credit,
.pwc.pwc-root ul,
.pwc.pwc-root li,
.pwc.pwc-root fieldset,
.pwc.pwc-root legend,
.pwc.pwc-root figure,
.pwc.pwc-root figcaption {
	margin: 0;
	padding: 0;
	font-family: var(--pwc-body);
	font-size: 16px;
	line-height: 1.5;
	color: var(--pwc-ink);
	list-style: none;
	border: 0;
	background: none;
}

/* buttons: reset ruki's bare button style (padding 15px 30px, filled, 800 weight) */
.pwc.pwc-root .pwc-btn {
	all: unset;
	box-sizing: border-box;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	min-width: 44px;
	padding: 0 20px;
	font-family: var(--pwc-body);
	font-size: 16px;
	font-weight: 800;
	line-height: 1;
	color: var(--pwc-ink);
	background: #fff;
	border: 2px solid var(--pwc-line);
	border-radius: 999px;
	cursor: pointer;
	text-align: center;
	-webkit-tap-highlight-color: transparent;
}
.pwc.pwc-root .pwc-btn:hover {
	border-color: var(--pwc-green);
	background: #f3fbf6;
	color: var(--pwc-ink);
}
.pwc.pwc-root .pwc-btn--primary {
	width: 100%;
	min-height: 52px;
	margin-top: 8px;
	font-size: 18px;
	color: #fff;
	background: var(--pwc-green);
	border-color: var(--pwc-green);
}
.pwc.pwc-root .pwc-btn--primary:hover {
	color: #fff;
	background: var(--pwc-green-d);
	border-color: var(--pwc-green-d);
}
.pwc.pwc-root .pwc-btn:focus-visible,
.pwc.pwc-root .pwc-input:focus-visible,
.pwc.pwc-root .pwc-sum:focus-visible,
.pwc.pwc-root .pwc-chip:focus-visible,
.pwc.pwc-root .pwc-link:focus-visible,
.pwc.pwc-root .pwc-credit-link:focus-visible,
.pwc.pwc-root .pwc-radio:focus-visible + .pwc-seg-l {
	outline: 3px solid var(--pwc-amber);
	outline-offset: 2px;
}

/* quick-start chips */
.pwc.pwc-root .pwc-chips {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	margin: 0 0 16px;
}
.pwc.pwc-root .pwc-chips-l {
	font-size: 14px;
	font-weight: 800;
	color: var(--pwc-soft);
	text-transform: uppercase;
	letter-spacing: 0.04em;
}
.pwc.pwc-root a.pwc-chip {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	padding: 0 16px;
	font-size: 15px;
	font-weight: 800;
	line-height: 1;
	color: var(--pwc-ink) !important;
	background: #fff;
	border: 2px solid var(--pwc-line);
	border-radius: 999px;
	text-decoration: none !important;
	box-shadow: none;
}
.pwc.pwc-root a.pwc-chip:hover {
	border-color: var(--pwc-green);
	background: #f3fbf6;
}

/* form */
.pwc.pwc-root .pwc-form {
	margin: 0;
	padding: 16px;
	background: var(--pwc-paper);
	border: 2px solid var(--pwc-line);
	border-radius: 16px;
}
.pwc.pwc-root .pwc-field {
	display: block;
	min-width: 0;
	margin: 0 0 14px;
}
.pwc.pwc-root .pwc-label {
	display: block;
	margin: 0 0 6px;
	padding: 0;
	font-size: 15px;
	font-weight: 800;
	line-height: 1.3;
	color: var(--pwc-ink);
}
.pwc.pwc-root .pwc-row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0 16px;
}
.pwc.pwc-root .pwc-input {
	display: block;
	width: 100%;
	height: 48px;
	margin: 0;
	padding: 0 12px;
	font-family: var(--pwc-body);
	font-size: 16px;
	line-height: 1.2;
	color: var(--pwc-ink);
	background: #fff;
	border: 2px solid var(--pwc-line);
	border-radius: 10px;
	box-shadow: none;
}
.pwc.pwc-root select.pwc-input {
	appearance: auto;
}
.pwc.pwc-root .pwc-combo {
	position: relative;
	min-height: 48px;
}
.pwc.pwc-root .pwc-combo-js[hidden],
.pwc.pwc-root .pwc-select[hidden],
.pwc.pwc-root .pwc-list[hidden],
.pwc.pwc-root details[hidden] {
	display: none;
}
.pwc.pwc-root .pwc-list {
	position: absolute;
	z-index: 20;
	left: 0;
	right: 0;
	top: 100%;
	max-height: 280px;
	margin: 4px 0 0;
	padding: 4px;
	overflow-y: auto;
	background: #fff;
	border: 2px solid var(--pwc-green);
	border-radius: 10px;
	box-shadow: 0 8px 24px rgba(59, 36, 20, 0.18);
}
.pwc.pwc-root .pwc-opt,
.pwc.pwc-root .pwc-opt-empty {
	display: block;
	min-height: 44px;
	margin: 0;
	padding: 10px 12px;
	font-size: 16px;
	line-height: 1.3;
	border-radius: 8px;
	cursor: pointer;
}
.pwc.pwc-root .pwc-opt-empty {
	cursor: default;
	color: var(--pwc-soft);
}
.pwc.pwc-root .pwc-opt:hover,
.pwc.pwc-root .pwc-opt[aria-selected="true"] {
	background: #e6f3ec;
}

/* segmented radio toggles */
.pwc.pwc-root .pwc-seg {
	position: relative;
	display: inline-flex;
	margin: 8px 0 0;
	border: 2px solid var(--pwc-line);
	border-radius: 999px;
	overflow: hidden;
	background: #fff;
}
.pwc.pwc-root .pwc-field--sex .pwc-seg {
	margin-top: 0;
}
.pwc.pwc-root .pwc-field--sex {
	min-width: 0;
	margin: 0 0 14px;
}
.pwc.pwc-root .pwc-radio {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: 0;
	opacity: 0;
	pointer-events: none;
}
.pwc.pwc-root .pwc-seg-l {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 56px;
	min-height: 44px;
	margin: 0;
	padding: 0 16px;
	font-size: 15px;
	font-weight: 800;
	line-height: 1;
	cursor: pointer;
	-webkit-tap-highlight-color: transparent;
}
.pwc.pwc-root .pwc-radio:checked + .pwc-seg-l {
	color: #fff;
	background: var(--pwc-green);
}

/* disclosures */
.pwc.pwc-root .pwc-more,
.pwc.pwc-root .pwc-embedbox {
	margin: 0 0 8px;
	border-top: 1px solid var(--pwc-line);
}
.pwc.pwc-root .pwc-sum {
	display: flex;
	align-items: center;
	min-height: 44px;
	margin: 0;
	padding: 0;
	font-size: 15px;
	font-weight: 800;
	color: var(--pwc-green);
	cursor: pointer;
	list-style: none;
}
.pwc.pwc-root .pwc-sum::-webkit-details-marker {
	display: none;
}
.pwc.pwc-root .pwc-sum::before {
	content: "+";
	display: inline-block;
	width: 22px;
	font-size: 20px;
	line-height: 1;
}
.pwc.pwc-root details[open] > .pwc-sum::before {
	content: "\2212";
}
.pwc.pwc-root .pwc-more-b {
	padding: 4px 0 8px;
}
.pwc.pwc-root .pwc-note-s {
	margin: 0 0 10px;
	font-size: 14px;
	line-height: 1.45;
	color: var(--pwc-soft);
}

/* result */
.pwc.pwc-root .pwc-out {
	margin: 20px 0 0;
	scroll-margin-top: 76px;
}
.pwc.pwc-root .pwc-result {
	padding: 18px 16px;
	background: #fff;
	border: 2px solid var(--pwc-line);
	border-radius: 16px;
}
.pwc.pwc-root .pwc-idle,
.pwc.pwc-root .pwc-msg {
	font-size: 16px;
	color: var(--pwc-soft);
}
.pwc.pwc-root .pwc-msg {
	color: var(--pwc-below);
	font-weight: 700;
}
.pwc.pwc-root .pwc-kicker {
	font-size: 14px;
	font-weight: 800;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--pwc-soft);
}
.pwc.pwc-root .pwc-big {
	margin: 2px 0 4px;
	font-family: var(--pwc-title);
	font-size: 48px;
	font-weight: 600;
	line-height: 1.1;
	color: var(--pwc-green);
}
.pwc.pwc-root .pwc-sub {
	font-size: 17px;
	font-weight: 700;
}
.pwc.pwc-root .pwc-alt {
	font-size: 14px;
	font-weight: 600;
	color: var(--pwc-soft);
}
.pwc.pwc-root .pwc-meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px 12px;
	margin: 10px 0 0;
}
.pwc.pwc-root .pwc-pill {
	display: inline-block;
	padding: 4px 12px;
	font-size: 14px;
	font-weight: 800;
	color: #fff;
	background: var(--pwc-green);
	border-radius: 999px;
}
.pwc.pwc-root .pwc-full {
	font-size: 15px;
	color: var(--pwc-soft);
}
.pwc.pwc-root .pwc-grown {
	margin: 18px 0 0;
}
.pwc.pwc-root .pwc-grown-t {
	margin: 0 0 6px;
	font-size: 15px;
	font-weight: 800;
}
.pwc.pwc-root .pwc-bar {
	height: 16px;
	overflow: hidden;
	background: #efe4cc;
	border-radius: 999px;
}
.pwc.pwc-root .pwc-bar-fill {
	display: block;
	height: 100%;
	background: var(--pwc-green);
	border-radius: 999px;
}

/* chart */
.pwc.pwc-root .pwc-chart {
	margin: 18px 0 0;
}
.pwc.pwc-root .pwc-svg {
	display: block;
	width: 100%;
	max-width: none;
	height: auto;
	aspect-ratio: 480 / 320;
	margin: 0;
	overflow: visible;
}
.pwc.pwc-root .pwc-grid {
	stroke: #eadfc6;
	stroke-width: 1;
}
.pwc.pwc-root .pwc-axis {
	stroke: var(--pwc-soft);
	stroke-width: 1.5;
}
.pwc.pwc-root .pwc-tick,
.pwc.pwc-root .pwc-axis-t {
	font-family: var(--pwc-body);
	font-size: 12px;
	fill: var(--pwc-soft);
}
.pwc.pwc-root .pwc-axis-t {
	font-weight: 700;
}
.pwc.pwc-root .pwc-band {
	fill: rgba(31, 90, 66, 0.16);
	stroke: none;
}
.pwc.pwc-root .pwc-median {
	fill: none;
	stroke: var(--pwc-green);
	stroke-width: 3;
	stroke-linejoin: round;
}
.pwc.pwc-root .pwc-proj {
	stroke: var(--pwc-ink);
	stroke-width: 2;
	stroke-dasharray: 6 5;
}
.pwc.pwc-root .pwc-adult {
	fill: var(--pwc-amber);
	stroke: var(--pwc-ink);
	stroke-width: 1.5;
}
.pwc.pwc-root .pwc-dot {
	fill: var(--pwc-ok);
	stroke: #fff;
	stroke-width: 2;
}
.pwc.pwc-root .pwc-dot--above {
	fill: var(--pwc-above);
}
.pwc.pwc-root .pwc-dot--below {
	fill: var(--pwc-below);
}
.pwc.pwc-root .pwc-dot--now {
	stroke: var(--pwc-ink);
}
.pwc.pwc-root .pwc-legend {
	display: flex;
	flex-wrap: wrap;
	gap: 4px 16px;
	margin: 8px 0 0;
}
.pwc.pwc-root .pwc-legend li {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 13px;
	color: var(--pwc-soft);
}
.pwc.pwc-root .pwc-sw {
	display: inline-block;
	width: 22px;
	height: 10px;
	border-radius: 3px;
}
.pwc.pwc-root .pwc-sw--median {
	height: 4px;
	background: var(--pwc-green);
}
.pwc.pwc-root .pwc-sw--band {
	background: rgba(31, 90, 66, 0.25);
}
.pwc.pwc-root .pwc-sw--dot {
	width: 10px;
	background: var(--pwc-ok);
	border-radius: 50%;
}
.pwc.pwc-root .pwc-sw--proj {
	height: 0;
	border-top: 2px dashed var(--pwc-ink);
	border-radius: 0;
}
.pwc.pwc-root .pwc-cap {
	margin: 8px 0 0;
	font-size: 14px;
	line-height: 1.45;
	color: var(--pwc-soft);
}

/* weigh-ins, naive note, table */
.pwc.pwc-root .pwc-h {
	margin: 20px 0 6px;
	font-family: var(--pwc-title);
	font-size: 20px;
	font-weight: 600;
	line-height: 1.25;
	color: var(--pwc-ink);
}
.pwc.pwc-root .pwc-weighins li {
	margin: 0 0 6px;
	padding: 6px 12px;
	border-left: 6px solid var(--pwc-ok);
	background: #f5f9f6;
	border-radius: 0 8px 8px 0;
}
.pwc.pwc-root .pwc-wi--above {
	border-left-color: var(--pwc-above);
	background: #fbf4e8;
}
.pwc.pwc-root .pwc-wi--below {
	border-left-color: var(--pwc-below);
	background: #fbeeed;
}
.pwc.pwc-root .pwc-naive,
.pwc.pwc-root .pwc-note {
	margin: 16px 0 0;
	padding: 10px 14px;
	font-size: 15px;
	background: var(--pwc-paper);
	border-radius: 10px;
}
.pwc.pwc-root a.pwc-link,
.pwc.pwc-root a.pwc-credit-link {
	color: var(--pwc-green) !important;
	font-weight: 800;
	text-decoration: underline !important;
}
.pwc.pwc-root table.pwc-ms {
	width: 100%;
	margin: 0;
	border: 0;
	border-collapse: collapse;
	font-size: 15px;
	background: none;
}
.pwc.pwc-root table.pwc-ms th,
.pwc.pwc-root table.pwc-ms td {
	padding: 10px 8px;
	font-family: var(--pwc-body);
	font-size: 15px;
	font-weight: 600;
	line-height: 1.3;
	text-align: left;
	color: var(--pwc-ink);
	background: none;
	border: 0;
	border-bottom: 1px solid var(--pwc-line);
}
.pwc.pwc-root table.pwc-ms thead th {
	font-size: 13px;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: var(--pwc-soft);
}
.pwc.pwc-root table.pwc-ms tbody th {
	font-weight: 800;
}
.pwc.pwc-root .pwc-actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px 12px;
	margin: 20px 0 0;
}
.pwc.pwc-root .pwc-status {
	font-size: 14px;
	color: var(--pwc-soft);
}
/* the share button only works with script: keep its space, hide it until the script marks the root */
.pwc.pwc-root:not(.pwc-js) [data-pwc-share] {
	visibility: hidden;
}

/* warnings, method line, status variants */
.pwc.pwc-root .pwc-warn {
	margin: 14px 0 0;
}
.pwc.pwc-root .pwc-warn-i {
	margin: 0 0 6px;
	padding: 8px 12px;
	font-size: 15px;
	background: #fbf4e8;
	border-left: 6px solid var(--pwc-above);
	border-radius: 0 8px 8px 0;
}
.pwc.pwc-root .pwc-warn-i--info {
	background: #f5f9f6;
	border-left-color: var(--pwc-ok);
}
.pwc.pwc-root .pwc-method {
	margin: 12px 0 0;
	font-size: 14px;
	line-height: 1.45;
	color: var(--pwc-soft);
}
.pwc.pwc-root .pwc-how {
	margin: 16px 0 0;
	font-size: 14px;
	color: var(--pwc-soft);
}
.pwc.pwc-root .pwc-wi--well_above {
	border-left-color: var(--pwc-above);
	background: #fbf4e8;
}
.pwc.pwc-root .pwc-wi--well_below {
	border-left-color: var(--pwc-below);
	background: #fbeeed;
}
.pwc.pwc-root .pwc-wi--no_reference {
	border-left-color: var(--pwc-line);
	background: #faf6ec;
}
.pwc.pwc-root .pwc-dot--well_above {
	fill: var(--pwc-above);
}
.pwc.pwc-root .pwc-dot--well_below {
	fill: var(--pwc-below);
}
.pwc.pwc-root .pwc-dot--no_reference {
	fill: var(--pwc-green);
}
.pwc.pwc-root table.pwc-ms tr.pwc-past th,
.pwc.pwc-root table.pwc-ms tr.pwc-past td {
	color: var(--pwc-soft);
	font-weight: 400;
}

/* embed box */
.pwc.pwc-root .pwc-embedbox {
	margin: 20px 0 0;
}
.pwc.pwc-root .pwc-embedbox-b {
	padding: 4px 0 8px;
}
.pwc.pwc-root .pwc-code {
	display: block;
	width: 100%;
	margin: 0 0 10px;
	padding: 10px 12px;
	font-family: Consolas, Menlo, monospace;
	font-size: 13px;
	line-height: 1.4;
	color: var(--pwc-ink);
	background: #fff;
	border: 2px solid var(--pwc-line);
	border-radius: 10px;
	resize: vertical;
}
.pwc.pwc-root .pwc-credit {
	margin: 12px 0 0;
	font-size: 14px;
}

@media (max-width: 700px) {
	.entry-content .pwc.pwc-root {
		margin-left: -30px;
		margin-right: -30px;
		width: auto;
		padding: 0 12px;
	}
	.pwc.pwc-root .pwc-form {
		padding: 14px 12px;
	}
	.pwc.pwc-root .pwc-result {
		padding: 16px 12px;
	}
	.pwc.pwc-root .pwc-chart {
		margin-left: -6px;
		margin-right: -6px;
	}
	.pwc.pwc-root .pwc-tick,
	.pwc.pwc-root .pwc-axis-t {
		font-size: 14px;
	}
	.pwc.pwc-root .pwc-big {
		font-size: 42px;
	}
}
@media (max-width: 480px) {
	.pwc.pwc-root .pwc-row {
		grid-template-columns: 1fr;
	}
	.pwc.pwc-root .pwc-row--wi {
		grid-template-columns: 1fr 1fr;
		gap: 0 12px;
	}
}

/* embed document */
.pwc-embed-body {
	margin: 0;
	padding: 0;
	background: #fff;
}
.pwc.pwc-root.pwc-embedded {
	margin: 0;
	padding: 12px;
}
