/* KidBrief Community — "Ask KidBrief" form. Inherits theme fonts and colors; only layout and states here. */
.kbc-ask { margin: 2rem 0; }
.kbc-ask .kbc-form { display: grid; gap: 1rem; max-width: 40rem; }
.kbc-ask .kbc-field { display: grid; gap: 0.35rem; margin: 0; }
.kbc-ask label { font-weight: 600; }
.kbc-ask .kbc-required { font-weight: 400; }
.kbc-ask textarea,
.kbc-ask input[type="text"],
.kbc-ask input[type="email"],
.kbc-ask select {
	width: 100%;
	box-sizing: border-box;
	min-height: 2.75rem; /* WCAG 2.2 target size */
	padding: 0.5rem 0.75rem;
	font: inherit;
	border: 1px solid currentColor;
	border-radius: 6px;
	background: transparent;
	color: inherit;
}
.kbc-ask textarea { min-height: 8rem; resize: vertical; }
.kbc-ask .kbc-hint,
.kbc-ask .kbc-disclaimer { font-size: 0.9em; opacity: 0.85; margin: 0; }
.kbc-ask .kbc-consent { grid-template-columns: auto 1fr; align-items: start; column-gap: 0.6rem; }
.kbc-ask .kbc-consent input { width: 1.5rem; height: 1.5rem; margin: 0.1rem 0 0; }
.kbc-ask .kbc-consent label { font-weight: 400; }
.kbc-ask .kbc-actions { margin: 0; }
.kbc-ask .kbc-submit { min-height: 2.75rem; padding: 0.6rem 1.4rem; cursor: pointer; }
.kbc-ask :focus-visible { outline: 3px solid currentColor; outline-offset: 2px; }
.kbc-ask .kbc-notice { padding: 0.85rem 1rem; border-radius: 6px; border: 2px solid; margin: 0 0 1rem; max-width: 40rem; }
.kbc-ask .kbc-notice--success { border-color: #1e7a3a; }
.kbc-ask .kbc-notice--error { border-color: #b32d2e; }
/* Honeypot: off-screen for people, still present for bots. */
.kbc-ask .kbc-hp { position: absolute !important; left: -10000px !important; width: 1px; height: 1px; overflow: hidden; }
.kbc-comment-notice { font-size: 0.9em; }
@media (prefers-reduced-motion: reduce) { .kbc-ask * { transition: none !important; } }
