/* Private-question and public-poll surfaces. Forms remain fully functional
   without JavaScript; this file supplies presentation and focus treatment. */
.vs-community-engagement {
	max-width: 860px;
	margin: clamp(2rem, 5vw, 4rem) auto;
	padding: clamp(1.2rem, 3vw, 2.15rem);
	border: 1px solid rgba(240, 233, 218, .28);
	background: linear-gradient(110deg, rgba(7, 8, 10, .96), rgba(20, 23, 28, .88));
	box-shadow: inset 0 0 0 1px rgba(0, 0, 0, .48), 0 15px 32px rgba(0, 0, 0, .18);
}

.vs-community-engagement h2,
.vs-community-engagement h3,
.vs-community-engagement h4 { color: #fff; }
.vs-community-engagement header > :first-child { margin-top: 0; }
.vs-community-engagement__form > p,
.vs-poll__form > p { margin: 1rem 0; }
.vs-community-engagement label,
.vs-poll__form legend { font-weight: 700; }
.vs-community-engagement textarea,
.vs-community-engagement select,
.vs-poll__form input[type="radio"] { accent-color: var(--wp--preset--color--warning, var(--vs-weathered-brass)); }
.vs-community-engagement textarea,
.vs-community-engagement select {
	box-sizing: border-box;
	display: block;
	width: min(100%, 680px);
	margin-top: .42rem;
	padding: .7rem .78rem;
	border: 1px solid rgba(240, 233, 218, .42);
	background: rgba(5, 6, 8, .9);
	color: #f0e9da;
	font: inherit;
}
.vs-community-engagement textarea:focus-visible,
.vs-community-engagement select:focus-visible,
.vs-poll__option:focus-within { outline: 3px solid var(--wp--preset--color--warning, var(--vs-weathered-brass)); outline-offset: 3px; }
.vs-community-engagement .description,
.vs-poll__privacy-note { display: block; margin-top: .38rem; color: rgba(240, 233, 218, .72); font-size: .88rem; line-height: 1.45; }
.vs-community-engagement__honeypot { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
.vs-community-engagement__notice { margin: 1rem 0; padding: .78rem .9rem; border-left: 4px solid currentColor; background: rgba(240, 233, 218, .08); }
.vs-community-engagement__notice--success { color: #d5f0ba; }
.vs-community-engagement__notice--error { color: #ffd1c4; }
.vs-polls__list { display: grid; gap: 1rem; }
.vs-poll { padding: 1.15rem; border: 1px solid rgba(240, 233, 218, .2); background: rgba(4, 5, 7, .46); }
.vs-poll > :first-child { margin-top: 0; }
.vs-poll > :last-child { margin-bottom: 0; }
.vs-poll__form fieldset { display: grid; gap: .55rem; margin: 1rem 0; padding: 0; border: 0; }
.vs-poll__option { display: flex; align-items: flex-start; gap: .6rem; padding: .72rem .8rem; border: 1px solid rgba(240, 233, 218, .27); background: rgba(240, 233, 218, .045); font-weight: 400; cursor: pointer; }
.vs-poll__option:hover { border-color: rgba(240, 233, 218, .58); background: rgba(240, 233, 218, .09); }
.vs-poll__option input { flex: 0 0 auto; margin-top: .22rem; }
.vs-poll__results { margin-top: 1.3rem; padding-top: 1rem; border-top: 1px solid rgba(240, 233, 218, .22); }
.vs-poll__results h4 { margin: 0; }
.vs-poll__results ul { display: grid; gap: .65rem; margin: .85rem 0 0; padding: 0; list-style: none; }
.vs-poll__results li { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: .3rem .8rem; align-items: center; }
.vs-poll__results meter { grid-column: 1 / -1; width: 100%; min-height: .7rem; }
.vs-poll__status { padding: .7rem .8rem; border-left: 3px solid var(--wp--preset--color--warning, var(--vs-weathered-brass)); background: rgba(240, 233, 218, .05); }

@media (max-width: 620px) {
	.vs-community-engagement { margin-right: 0; margin-left: 0; }
	.vs-poll__results li { grid-template-columns: 1fr; gap: .25rem; }
	.vs-poll__results meter { grid-column: auto; }
}
