/* TYF Donations form. Uses the Think Yorùbá First theme's colours when present. */
.tyf-don {
	--tyf-ink: var(--ink, #24160a);
	--tyf-muted: var(--muted, #6e5c48);
	--tyf-line: var(--line, #eadcc4);
	--tyf-cream: var(--cream, #fbf5ea);
	--tyf-brand: var(--brown-800, #43260b);
	--tyf-brand-dark: var(--brown-950, #1a0e04);
	--tyf-gold: var(--gold, #f2b449);
	--tyf-gold-dark: var(--gold-600, #d99a2b);
	color: var(--tyf-ink);
	font-size: 1rem;
}
.tyf-don *, .tyf-don *::before, .tyf-don *::after { box-sizing: border-box; }
.tyf-don fieldset { border: 0; margin: 0; padding: 0; min-width: 0; }
.tyf-don__rest { transition: opacity .2s ease; }
.tyf-don__rest.is-locked { opacity: .45; }
.tyf-don__step { margin: 0 0 26px; }
.tyf-don__label { display: block; margin: 0 0 8px; padding: 0; font-weight: 700; font-size: .95rem; color: var(--tyf-brand-dark); }
.tyf-don__label span[aria-hidden] { color: #b3261e; }
.tyf-don__opt { font-weight: 400; color: var(--tyf-muted); }
.tyf-don__hint { margin: -2px 0 10px; font-size: .9rem; color: var(--tyf-muted); }
.tyf-don__hint[hidden], .tyf-don [hidden] { display: none !important; }
.tyf-don select, .tyf-don input[type="text"], .tyf-don input[type="email"], .tyf-don input[type="number"], .tyf-don textarea {
	width: 100%; padding: .85em 1em; border: 1.5px solid var(--tyf-line); border-radius: 10px; background: #fff; font: inherit; color: var(--tyf-ink);
}
.tyf-don select:focus, .tyf-don input:focus, .tyf-don textarea:focus { outline: none; border-color: var(--tyf-gold-dark); box-shadow: 0 0 0 3px rgba(242, 180, 73, .28); }
.tyf-don textarea { resize: vertical; }
.tyf-don__presets { display: grid; grid-template-columns: repeat(auto-fit, minmax(96px, 1fr)); gap: 10px; margin-bottom: 12px; }
.tyf-don__preset { padding: .85em .6em; border: 1.5px solid var(--tyf-line); border-radius: 10px; background: #fff; font-family: inherit; font-weight: 700; font-size: 1.05rem; line-height: 1; color: var(--tyf-brand-dark); cursor: pointer; transition: background .15s ease, border-color .15s ease, color .15s ease; }
.tyf-don__preset:hover { border-color: var(--tyf-gold-dark); }
.tyf-don__preset[aria-pressed="true"] { background: var(--tyf-brand); border-color: var(--tyf-brand); color: #fff; }
.tyf-don__preset--other { font-weight: 600; font-size: .92rem; }
.tyf-don__amount { display: flex; align-items: stretch; border: 1.5px solid var(--tyf-line); border-radius: 10px; overflow: hidden; background: #fff; }
.tyf-don__amount:focus-within { border-color: var(--tyf-gold-dark); box-shadow: 0 0 0 3px rgba(242, 180, 73, .28); }
.tyf-don__symbol { display: grid; place-items: center; min-width: 52px; padding: 0 12px; background: var(--tyf-cream); font-weight: 700; color: var(--tyf-brand); border-right: 1.5px solid var(--tyf-line); }
.tyf-don .tyf-don__amount input { border: 0; border-radius: 0; box-shadow: none; font-size: 1.15rem; font-weight: 600; }
.tyf-don__check, .tyf-don__radio { display: inline-flex; align-items: center; gap: 10px; cursor: pointer; }
.tyf-don__check { margin-top: 14px; padding: 12px 14px; width: 100%; border-radius: 10px; background: var(--tyf-cream); font-weight: 600; }
.tyf-don__check input, .tyf-don__radio input { width: 18px; height: 18px; accent-color: var(--tyf-brand); }
.tyf-don__inline { display: flex; gap: 26px; }
.tyf-don__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.tyf-don__field { display: block; min-width: 0; }
.tyf-don__field--full { grid-column: 1 / -1; }
.tyf-don__methods { display: grid; gap: 10px; }
.tyf-don__method { display: flex; align-items: center; gap: 14px; padding: 14px 16px; border: 1.5px solid var(--tyf-line); border-radius: 12px; background: #fff; cursor: pointer; transition: border-color .15s ease, background .15s ease; }
.tyf-don__method:hover { border-color: var(--tyf-gold-dark); }
.tyf-don__method:has(input:checked) { border-color: var(--tyf-brand); background: var(--tyf-cream); box-shadow: inset 0 0 0 1px var(--tyf-brand); }
.tyf-don__method input { flex: none; width: 18px; height: 18px; accent-color: var(--tyf-brand); }
.tyf-don__method-body { display: flex; flex-direction: column; }
.tyf-don__method-body small { color: var(--tyf-muted); font-size: .86rem; }
.tyf-don__bank { margin-top: 14px; padding: 16px 18px; border-left: 4px solid var(--tyf-gold); border-radius: 8px; background: var(--tyf-cream); font-size: .95rem; }
.tyf-don__bank p { margin: 0 0 .6em; }
.tyf-don__bank p:last-child { margin: 0; }
.tyf-don__submit { display: block; width: 100%; padding: 1.05em 1.4em; border: 0; border-radius: 12px; background: var(--tyf-gold); color: var(--tyf-brand-dark); font-family: inherit; font-weight: 700; font-size: 1.12rem; line-height: 1; cursor: pointer; transition: background .15s ease, transform .15s ease; }
.tyf-don__submit:hover { background: var(--gold-300, #f8d48a); }
.tyf-don__submit:active { transform: translateY(1px); }
.tyf-don__submit:disabled { opacity: .7; cursor: progress; }
.tyf-don__secure { margin: 12px 0 0; font-size: .85rem; color: var(--tyf-muted); text-align: center; }
.tyf-don__msg { margin: 0 0 22px; padding: 14px 16px; border-radius: 10px; background: #fdecea; color: #8a2216; font-weight: 600; }
.tyf-don__hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.tyf-don--done { text-align: center; padding: 10px 0; }
.tyf-don__done-icon { display: grid; place-items: center; width: 68px; height: 68px; margin: 0 auto 16px; border-radius: 50%; background: var(--tyf-brand); color: var(--tyf-gold); font-size: 1.8rem; }
.tyf-don__done-title { margin: 0 0 6px; }
.tyf-don__done-amount { margin: 0 0 16px; font-size: 1.4rem; font-weight: 700; color: var(--tyf-brand); }
.tyf-don--done .tyf-don__bank { text-align: left; }
.tyf-don__small { font-size: .9rem; color: var(--tyf-muted); }
.tyf-don__link { font-weight: 700; color: var(--tyf-brand); }
@media (max-width: 560px) {
	.tyf-don__grid { grid-template-columns: 1fr; }
	.tyf-don__presets { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
