/* Ecrane provizorii (Painel, Participantes, Entrar): folosesc doar tokens din gem.css; fără stil inline (CSP style-src 'self'). */
body { margin: 0; background: var(--fundo); color: var(--texto); }
#app { max-width: 80%; margin: 0 auto; padding: 2rem 0; }
@media (max-width: 900px) { #app { max-width: 100%; padding: 1rem; } }
button { font: inherit; padding: .6rem 1rem; margin: .3rem; cursor: pointer; }
.erro { color: var(--erro); }
.aviso { color: var(--ok); }
table { border-collapse: collapse; width: 100%; margin: .6rem 0; }
th, td { border-bottom: 1px solid var(--linha); padding: .35rem .5rem; text-align: left; }
tr.com-erro td { color: var(--erro); }
label { display: block; margin: .4rem 0; }
input, select { font: inherit; padding: .35rem; margin-left: .4rem; }
fieldset { margin: 1rem 0; border: 1px solid var(--linha); }
