/* IHS Member Feedback: IHS house colours */
.ihs-fb { max-width: 46rem; }
.ihs-fb-lead { margin: 0 0 1.25rem; }
.ihs-fb-field { margin: 0 0 1.1rem; border: 0; padding: 0; }
.ihs-fb-field label, .ihs-fb-field legend { display: block; font-weight: 600; margin-bottom: .35rem; color: #1D1F47; }
.ihs-fb textarea, .ihs-fb select {
	display: block; width: 100%; box-sizing: border-box; padding: .55rem .75rem; min-height: 2.75rem;
	border: 1px solid #c9cde0 !important; border-radius: 6px; background: #fff; font: inherit; line-height: 1.4;
}
.ihs-fb textarea { min-height: 6rem; resize: vertical; }
.ihs-fb textarea:focus, .ihs-fb select:focus { border-color: #2B2F6B !important; outline: 2px solid rgba(43,47,107,.15); }
.ihs-fb-checks { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .35rem 1.25rem; }
.ihs-fb-checks label, .ihs-fb-scale label, .ihs-fb-identity label { font-weight: 400; display: flex; align-items: center; gap: .45rem; margin: 0; color: inherit; }
.ihs-fb-checks input, .ihs-fb-scale input, .ihs-fb-identity input { width: auto; margin: 0; }
.ihs-fb-scale { display: flex; gap: 1.25rem; }
.ihs-fb-hint { font-size: .85rem; color: #666; margin: .3rem 0 0; }
.ihs-fb-row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.25rem; align-items: start; }
.ihs-fb-row::before, .ihs-fb-row::after, .ihs-fb-checks::before, .ihs-fb-checks::after { content: none !important; display: none !important; }
.ihs-fb-identity { background: #EEF0F6; padding: .65rem .85rem; border-radius: 6px; }
.ihs-fb-btn { background: #2B2F6B; color: #fff; border: 0; border-radius: 4px; padding: .6rem 1.2rem; font-weight: 600; cursor: pointer; }
.ihs-fb-btn:hover, .ihs-fb-btn:focus { background: #1D1F47; }
.ihs-fb-ok, .ihs-fb-err { padding: .75rem 1rem; border-radius: 4px; margin: 0 0 1rem; }
.ihs-fb-ok { background: #e8f5ec; border-left: 4px solid #2e7d4f; }
.ihs-fb-err { background: #fdecec; border-left: 4px solid #b3261e; }
@media (max-width: 640px) { .ihs-fb-checks, .ihs-fb-row { grid-template-columns: 1fr; } }

/* v1.0.1: one label style for all questions, independent of theme legend styles */
.ihs-fb .ihs-fb-label, .ihs-fb .ihs-fb-field > label { display: block; font-size: 1rem; font-weight: 600; text-transform: none; letter-spacing: normal; color: #1D1F47; margin: 0 0 .45rem; line-height: 1.35; position: static; float: none; }
.ihs-fb-row { align-items: start; }
.ihs-fb-row > .ihs-fb-field { margin-bottom: 0; }
.ihs-fb-scale { display: flex; flex-wrap: wrap; gap: .5rem 1.5rem; align-items: center; min-height: 2.75rem; }
.ihs-fb-scale label { font-weight: 400; }
.ihs-fb-identity { margin-top: 1.25rem; }
.ihs-fb-checks label { line-height: 1.4; }
