.ctyd-card {
	max-width: 640px;
	margin: 1.5rem auto;
	padding: 1.75rem;
	background: #fffdf7;
	border: 1px solid #e6ddc6;
	border-radius: 14px;
	box-shadow: 0 4px 18px rgba(80, 60, 20, 0.06);
	font-family: inherit;
	color: #3a3326;
}
.ctyd-title {
	margin: 0 0 .35rem;
	font-size: 1.6rem;
	color: #6a4f1d;
}
.ctyd-intro { margin: 0 0 1.25rem; color: #6d6450; }
.ctyd-field { margin-bottom: 1rem; }
.ctyd-field label { display: block; font-weight: 600; margin-bottom: .3rem; }
.ctyd-field small { display: block; margin-top: .25rem; color: #8a8169; font-weight: 400; }
.ctyd-field input,
.ctyd-field select {
	width: 100%;
	box-sizing: border-box;
	padding: .6rem .7rem;
	border: 1px solid #cfc4a6;
	border-radius: 8px;
	font-size: 1rem;
	background: #fff;
}
.ctyd-field input:focus,
.ctyd-field select:focus {
	outline: none;
	border-color: #b8901f;
	box-shadow: 0 0 0 3px rgba(184, 144, 31, .18);
}
.ctyd-checks {
	border: 1px solid #e0d6bd;
	border-radius: 10px;
	padding: .9rem 1rem;
	margin: 0 0 1.1rem;
}
.ctyd-checks legend { font-weight: 600; padding: 0 .4rem; }
.ctyd-checks label {
	display: flex;
	align-items: center;
	gap: .5rem;
	margin: .35rem 0;
	font-weight: 400;
}
.ctyd-checks input { width: auto; }
.ctyd-btn {
	display: inline-block;
	background: #7a5a17;
	color: #fff;
	border: 0;
	border-radius: 9px;
	padding: .75rem 1.4rem;
	font-size: 1.05rem;
	font-weight: 600;
	cursor: pointer;
	transition: background .15s ease;
}
.ctyd-btn:hover { background: #8f6c20; }
.ctyd-btn:disabled { opacity: .6; cursor: default; }
.ctyd-result { margin-top: 1.25rem; }
.ctyd-verdict {
	padding: .8rem 1rem;
	border-radius: 9px;
	font-weight: 700;
	margin-bottom: 1rem;
}
.ctyd-verdict.is-pass { background: #e7f3e0; color: #335c22; border: 1px solid #b9d9a6; }
.ctyd-verdict.is-fail { background: #fbeede; color: #8a4b14; border: 1px solid #ecc79a; }
.ctyd-checklist { list-style: none; margin: 0; padding: 0; }
.ctyd-checklist li {
	display: flex;
	flex-direction: column;
	padding: .6rem .8rem;
	border-radius: 8px;
	margin-bottom: .5rem;
	border-left: 4px solid #ccc;
	background: #fff;
}
.ctyd-checklist li.ok { border-left-color: #5a9c3a; }
.ctyd-checklist li.no { border-left-color: #d08431; }
.ctyd-checklist li span { color: #6d6450; font-size: .92rem; }
.ctyd-breeds { display: grid; grid-template-columns: 1fr 1fr; gap: .9rem; }
.ctyd-breed {
	display: flex;
	flex-direction: column;
	text-decoration: none;
	color: inherit;
	border: 1px solid #e0d6bd;
	border-radius: 10px;
	overflow: hidden;
	background: #fff;
	transition: transform .12s ease, box-shadow .12s ease;
}
.ctyd-breed:hover { transform: translateY(-2px); box-shadow: 0 6px 16px rgba(80, 60, 20, .1); }
.ctyd-breed img { width: 100%; height: 130px; object-fit: cover; }
.ctyd-breed-body { padding: .7rem .8rem; }
.ctyd-breed-body strong { display: block; margin-bottom: .3rem; color: #6a4f1d; }
.ctyd-breed-body ul { margin: .3rem 0 0; padding-left: 1.1rem; font-size: .85rem; color: #6d6450; }
.ctyd-oos { display: block; color: #b3471a; font-size: .8rem; margin-bottom: .3rem; }
.ctyd-note { margin-top: 1rem; font-size: .9rem; color: #8a8169; }
@media (max-width: 520px) {
	.ctyd-breeds { grid-template-columns: 1fr; }
	.ctyd-card { padding: 1.25rem; margin: 1rem; }
}
.ctyd-notes { margin: 0 0 1rem; }
.ctyd-flocknote {
	padding: .7rem .9rem;
	border-radius: 8px;
	margin-bottom: .5rem;
	font-size: .95rem;
	border-left: 4px solid #ccc;
}
.ctyd-flocknote.is-warn { background: #fbeede; color: #8a4b14; border-left-color: #d08431; }
.ctyd-flocknote.is-ok { background: #e7f3e0; color: #335c22; border-left-color: #5a9c3a; }
.ctyd-housing-tie {
	margin-top: 1rem;
	padding: .8rem 1rem;
	background: #f4efe2;
	border-radius: 9px;
	font-size: .95rem;
}
.ctyd-housing-tie a { color: #7a5a17; font-weight: 600; white-space: nowrap; }
.ctyd-alts { margin-top: .9rem; font-size: .92rem; color: #6d6450; }

/* ---- Purchase wizard ---- */
.ctyd-wizard { max-width: 760px; }
.ctyd-group-title {
	margin: 1.4rem 0 .6rem;
	font-size: 1.15rem;
	color: #6a4f1d;
	border-bottom: 2px solid #ece3cc;
	padding-bottom: .3rem;
}
.ctyd-bird-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
	gap: .9rem;
}
.ctyd-bird {
	border: 1px solid #e6ddc6;
	border-radius: 11px;
	background: #fff;
	padding: .8rem;
	text-align: center;
	display: flex;
	flex-direction: column;
	align-items: center;
}
.ctyd-bird.is-oos { opacity: .6; }
.ctyd-bird-img {
	width: 100%;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	border-radius: 8px;
	margin-bottom: .5rem;
}
.ctyd-bird-name { font-weight: 600; font-size: .95rem; line-height: 1.25; }
.ctyd-bird-price { font-size: .88rem; color: #6d6450; margin: .25rem 0 .55rem; }
.ctyd-oos-label { font-size: .82rem; font-style: italic; color: #8a8169; margin-top: auto; }
.ctyd-qty {
	display: inline-flex;
	align-items: center;
	gap: .35rem;
	margin-top: auto;
}
.ctyd-qty-btn {
	width: 2rem;
	height: 2rem;
	border: 1px solid #cfc4a6;
	background: #f7f1e0;
	border-radius: 7px;
	font-size: 1.2rem;
	line-height: 1;
	cursor: pointer;
	color: #6a4f1d;
}
.ctyd-qty-btn:hover { background: #efe6cf; }
.ctyd-qty-input {
	width: 3rem;
	text-align: center;
	padding: .35rem;
	border: 1px solid #cfc4a6;
	border-radius: 7px;
	font-size: 1rem;
}
.ctyd-wizard-bar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	flex-wrap: wrap;
	margin-top: 1.5rem;
	padding-top: 1.1rem;
	border-top: 1px solid #ece3cc;
}
.ctyd-wizard-count { font-weight: 600; color: #6d6450; }
.ctyd-btn-ghost {
	background: transparent;
	color: #6a4f1d;
	border: 1px solid #cfc4a6;
}
.ctyd-btn-ghost:hover { background: #f3ecda; }
.ctyd-chosen {
	list-style: none;
	margin: 0 0 1rem;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	gap: .5rem;
}
.ctyd-chosen li {
	background: #f3ecda;
	border-radius: 7px;
	padding: .3rem .7rem;
	font-size: .92rem;
}
.ctyd-chosen-qty { font-weight: 700; color: #6a4f1d; }
.ctyd-coop-rec { margin: 1.25rem 0; }
.ctyd-coop-rec h3 { margin: 0 0 .6rem; color: #6a4f1d; font-size: 1.1rem; }
.ctyd-coop {
	display: flex;
	gap: 1rem;
	align-items: center;
	text-decoration: none;
	color: inherit;
	border: 1px solid #e6ddc6;
	border-radius: 11px;
	background: #fff;
	padding: .8rem;
}
.ctyd-coop:hover { border-color: #b8901f; }
.ctyd-coop img { width: 96px; height: 96px; object-fit: cover; border-radius: 8px; flex: none; }
.ctyd-coop-body strong { display: block; font-size: 1.05rem; color: #6a4f1d; }
.ctyd-coop-price { margin: .2rem 0; }
.ctyd-coop-body small { color: #8a8169; }

.ctyd-bird.is-hidden { display: none; }

/* Complete starter pack card */
.ctyd-pack {
	margin: 1rem 0 .5rem;
	padding: .9rem;
	border: 2px solid #b8901f;
	border-radius: 12px;
	background: #fffaf0;
}
.ctyd-pack-head {
	font-weight: 700;
	color: #6a4f1d;
	margin-bottom: .6rem;
	display: flex;
	align-items: center;
	gap: .5rem;
}
.ctyd-save {
	background: #2e7d32;
	color: #fff;
	font-size: .8rem;
	font-weight: 700;
	padding: .15rem .55rem;
	border-radius: 999px;
}
.ctyd-pack .ctyd-coop { border-color: #e6ddc6; margin-bottom: .7rem; }
.ctyd-pack .ctyd-pack-add { width: 100
/* Complete starter pack card */
.ctyd-pack {
	margin: 1rem 0 .5rem;
	padding: .9rem;
	border: 2px solid #b8901f;
	border-radius: 12px;
	background: #fffaf0;
}
.ctyd-pack-head {
	font-weight: 700;
	color: #6a4f1d;
	margin-bottom: .6rem;
	display: flex;
	align-items: center;
	gap: .5rem;
}
.ctyd-save {
	background: #2e7d32;
	color: #fff;
	font-size: .8rem;
	font-weight: 700;
	padding: .15rem .55rem;
	border-radius: 999px;
}
.ctyd-pack .ctyd-coop { border-color: #e6ddc6; margin-bottom: .7rem; }
.ctyd-pack .ctyd-pack-add { width: 100%; }
