body {
	font-family: "Courier New", Courier, monospace;
	background: #0a0e27;
	color: #e6e6e6;
	margin: 0;
	padding-bottom: 32px;
	line-height: 1.6;
}
header nav {
	background: #12163a;
	border-bottom: 3px solid #6ded8a;
	padding: 12px 20px;
	margin-bottom: 24px;
}
header nav a {
	color: #6ded8a;
	text-decoration: none;
	margin-right: 18px;
	font-weight: bold;
	text-transform: uppercase;
	letter-spacing: 0.05em;
}
header nav a:hover { color: #ff5f85; }
header nav a.handle { text-transform: none; }
header nav a.link-inicial {
	color: #f0f14e;
	text-shadow: 2px 2px 0 #1645f5;
	text-transform: none;
}
header nav a.link-inicial:hover { color: #f0f14e; }

body > *:not(header):not(dialog) { max-width: 860px; margin: 0 auto; padding: 0 24px; }
body > form + p { margin-top: 24px; }
body > p:first-child { margin-top: 24px; }

h1, h2, h3 {
	color: #f0f14e;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	text-shadow: 2px 2px 0 #1645f5;
	margin-bottom: 16px;
}
h2, h3 {
	text-shadow: none;
}
h2, body > h2:not(dialog) {
	margin-top: 48px;
	margin-bottom: 16px;
}
h3 {
	margin-top: 24px;
	margin-bottom: 8px;
}
section > h2:first-child {
	margin-top: 0;
}
.conteudo-aba > h2:first-child {
	margin-top: 0;
}
body > h1:not(dialog) {
	margin-bottom: 16px;
}
h1.marca {
	text-transform: none;
	max-width: 860px;
	margin: 0 auto;
	padding: 0 24px;
	box-sizing: border-box;
}
h1.titulo { text-transform: none; }
h1 .tipo {
	font-size: 0.6em;
	font-weight: bold;
	text-shadow: none;
	color: #f0f14e;
	letter-spacing: 0.05em;
	text-transform: none;
}

img.capa {
	display: block;
	border: 2px solid #6ded8a;
}

.painel-objeto {
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	margin-bottom: 32px;
}
.info-objeto {
	flex: 0 1 65%;
	padding-right: 16px;
	border-right: 2px solid #6ded8a;
}
.painel-objeto.sem-acoes .info-objeto {
	border-right: none;
	padding-right: 0;
}
.acoes-objeto {
	flex: 0 1 35%;
	padding-left: 16px;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	text-align: left;
	gap: 10px;
}
.acoes-navegacao, .acoes-diretas {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	gap: 8px;
}
.acoes-navegacao + .acoes-diretas {
	margin-top: 10px;
}

.botao-navegacao {
	display: inline-block;
	padding: 7px 14px;
	background: #12163a;
	color: #6ded8a;
	border: 2px solid #6ded8a;
	box-shadow: 3px 3px 0 #6ded8a;
	text-decoration: none;
	font-weight: bold;
	font-size: 0.9em;
	text-transform: uppercase;
	letter-spacing: 0.03em;
}
.botao-navegacao:hover {
	color: #ff5f85;
	border-color: #ff5f85;
	box-shadow: 3px 3px 0 #ff5f85;
}
.botao-navegacao:active {
	box-shadow: none;
	transform: translate(3px, 3px);
}
.botao-direto {
	padding: 7px 14px;
	font-size: 0.9em;
}

.acoes-diretas-largo { align-self: stretch; }
.campo-justificativa {
	flex: 1 1 100%;
	font-size: 0.9em;
}
.campo-justificativa input[type=text] {
	width: 100%;
	box-sizing: border-box;
}

.campo-imagem { text-align: left; }
.legenda-campo { color: #e6e6e6; }
.input-arquivo-oculto {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	opacity: 0;
}
.rotulo-arquivo {
	display: inline-block;
	padding: 1px 6px;
	background: #e0e0e0;
	color: #000;
	border: 1px solid #767676;
	border-radius: 2px;
	font-family: system-ui, sans-serif;
	font-size: 0.9rem;
	font-weight: normal;
	text-transform: none;
	letter-spacing: normal;
	cursor: pointer;
}
.rotulo-arquivo:hover { background: #d5d5d5; }
#imagem-nome {
	font-family: system-ui, sans-serif;
	font-size: 0.9rem;
	color: #e6e6e6;
	margin-left: 6px;
}

a { color: #6ded8a; text-underline-offset: 2px; }
a:hover { color: #ff5f85; }

ul {
	margin: 0;
	padding-left: 0;
	list-style-type: square;
	list-style-position: inside;
}

h2 a {
	color: #f0f14e;
	text-shadow: 2px 2px 0 #ed3833;
	text-transform: none;
}

table { width: 100%; border-collapse: collapse; margin: 16px 0; }
th, td { border: 2px solid #6ded8a; padding: 8px 12px; text-align: left; }
th { background: #12163a; color: #f0f14e; text-transform: uppercase; }

section, fieldset {
	border: 2px solid #ff5f85;
	padding: 14px 14px 32px 20px;
	margin-bottom: 16px;
	background: #12163a;
}
body > section:not(dialog), body > fieldset:not(dialog) {
	margin-top: 32px;
	margin-bottom: 32px;
	padding: 14px 14px 32px 20px;
}
fieldset legend + p {
	margin-top: 0;
}

#conteudo {
	width: 100%;
	box-sizing: border-box;
}

article {
	background: #1c2350;
	padding: 14px;
}
body > article:not(dialog) { padding: 14px; }

.grupo-papel {
	background: #1c2350;
	padding: 14px;
	margin-bottom: 20px;
}
.grupo-papel:last-child { margin-bottom: 0; }
.grupo-papel > h3:first-child { margin-top: 0; }
.formularios-papel {
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
	margin-top: 8px;
}
article h1, article h2, article h3 {
	color: #6ded8a;
	text-shadow: none;
	text-transform: none;
	letter-spacing: normal;
	margin-top: 16px;
	margin-bottom: 8px;
}
article h1 { font-size: 1.3em; }
article h2 { font-size: 1.1em; }
article h3 { font-size: 1em; font-weight: normal; }
article h2, article h3 { color: #1645f5; }

article table { width: auto; font-size: 0.85em; margin: 12px 0; }
article th, article td { border-width: 1px; border-color: #1645f5; padding: 4px 8px; }
article th { color: #ffffff; }

.mensagem-erro {
	margin-top: 32px;
	margin-bottom: 24px;
	min-height: 48px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 10px;
	text-align: center;
	padding: 16px;
	border: 2px solid #ed3833;
	background: rgba(237, 56, 51, 0.15);
}
body > div.mensagem-erro:first-child {
	margin-top: 15vh;
}
.mensagem-erro p {
	margin: 0;
}
.mensagem-erro-acoes {
	display: flex;
	gap: 12px;
}

button, input[type=submit] {
	background: #ff5f85;
	color: #0a0e27;
	border: 2px solid #f0f14e;
	box-shadow: 3px 3px 0 #f0f14e;
	padding: 8px 16px;
	font-family: inherit;
	font-size: inherit;
	font-weight: bold;
	text-transform: uppercase;
	cursor: pointer;
}
button:hover, input[type=submit]:hover {
	background: #6ded8a;
	color: #0a0e27;
}
button:active, input[type=submit]:active {
	box-shadow: none;
	transform: translate(3px, 3px);
}

.barra-formatacao {
	display: flex;
	gap: 6px;
	margin-bottom: 6px;
}
.barra-formatacao button {
	padding: 3px 8px;
	font-size: 0.8em;
	box-shadow: none;
}
.barra-formatacao button:active {
	transform: translate(1px, 1px);
}

nav.abas {
	display: flex;
	gap: 10px;
	border-bottom: 3px solid #6ded8a;
	margin-top: 16px;
	/* margin-bottom: 20px; */
	padding-top: 0;
	padding-bottom: 2px;
}
nav.abas a, nav.abas strong {
	display: inline-block;
	padding: 8px 16px;
	text-decoration: none;
	font-weight: bold;
	text-transform: uppercase;
	letter-spacing: 0.03em;
	font-style: normal;
	border: 2px solid #6ded8a;
	border-bottom: none;
	background: #12163a;
	color: #6ded8a;
	margin-bottom: -3px;
}
nav.abas strong.aba-ativa {
	background: #6ded8a;
	color: #0a0e27;
}
nav.abas a:hover {
	color: #ff5f85;
	border-color: #ff5f85;
}

.conteudo-aba {
	background: rgba(109, 237, 138, 0.10);
	padding: 30px 24px;
	margin-bottom: 20px;
}

textarea, input[type=text] {
	background: #0a0e27;
	color: #e6e6e6;
	border: 2px solid #6ded8a;
	padding: 6px 8px;
	font-family: inherit;
}

p textarea, p input[type=text] {
	width: 100%;
	box-sizing: border-box;
}

p input.campo-autenticacao {
	width: 50%;
	box-sizing: border-box;
}

/* ===== iu — páginas de credenciais ===== */

.iu-login,
.iu-signin,
.iu-cadastrar,
.iu-forgot,
.iu-reset,
.iu-changepassword,
.iu-invite,
.iu-info,
.iu-forgothandle {
	max-width: 420px;
	box-sizing: border-box;
	margin: 15vh auto 40px;
	padding: 32px 28px;
	background: #12163a;
	border: 2px solid #ff5f85;
}
.iu-cadastrar,
.iu-info {
	max-width: 480px;
	text-align: center;
}

.iu-login__title,
.iu-signin__title,
.iu-cadastrar__title,
.iu-forgot__title,
.iu-reset__title,
.iu-changepassword__title,
.iu-invite__title,
.iu-info__title,
.iu-forgothandle__title {
	margin: 0 0 20px;
	text-align: center;
	color: #f0f14e;
	text-transform: none;
	letter-spacing: 0.04em;
	text-shadow: 2px 2px 0 #1645f5;
	font-size: 1.6em;
}

.iu-login__title a,
.iu-signin__title a,
.iu-cadastrar__title a,
.iu-forgot__title a,
.iu-reset__title a,
.iu-changepassword__title a,
.iu-invite__title a,
.iu-info__title a,
.iu-forgothandle__title a {
    color: inherit;
    text-decoration: none;
}

.iu-login__error,
.iu-signin__error,
.iu-forgot__error,
.iu-changepassword__error {
	margin: 0 0 16px;
	padding: 10px 14px;
	text-align: center;
	color: #e6e6e6;
	background: rgba(237, 56, 51, 0.15);
	border: 2px solid #ed3833;
}

.iu-login__form,
.iu-signin__form,
.iu-forgot__form,
.iu-reset__form,
.iu-changepassword__form,
.iu-forgothandle__form {
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.iu-login__field,
.iu-signin__field,
.iu-forgot__field,
.iu-reset__field,
.iu-changepassword__field,
.iu-forgothandle__field {
	display: flex;
	flex-direction: column;
	gap: 4px;
}
.iu-login__field label,
.iu-signin__field label,
.iu-forgot__field label,
.iu-reset__field label,
.iu-changepassword__field label,
.iu-forgothandle__field label {
	color: #6ded8a;
	font-size: 0.85em;
	font-weight: bold;
	text-transform: uppercase;
	letter-spacing: 0.03em;
}
.iu-login__field input,
.iu-signin__field input,
.iu-forgot__field input,
.iu-reset__field input,
.iu-changepassword__field input,
.iu-forgothandle__field input {
	width: 100%;
	box-sizing: border-box;
	padding: 6px 8px;
	font-family: inherit;
	font-size: inherit;
	color: #e6e6e6;
	background: #0a0e27;
	border: 2px solid #6ded8a;
}

.iu-signin__hint {
	margin: -6px 0 0;
	color: #e6e6e6;
	font-size: 0.85em;
}

.iu-login__actions,
.iu-signin__actions,
.iu-forgot__actions,
.iu-reset__actions,
.iu-changepassword__actions {
	display: flex;
	flex-direction: column;
	gap: 16px;
	margin-top: 20px;
}

.iu-login__button,
.iu-signin__button,
.iu-forgot__button,
.iu-reset__button,
.iu-changepassword__button,
.iu-cadastrar__button,
.iu-info__button,
.iu-forgothandle__button,
.iu-invite__button {
	display: inline-block;
	padding: 8px 16px;
	font-family: inherit;
	font-weight: bold;
	font-size: inherit;
	text-align: center;
	text-decoration: none;
	text-transform: uppercase;
	letter-spacing: 0.03em;
	color: #0a0e27;
	background: #ff5f85;
	border: 2px solid #f0f14e;
	box-shadow: 3px 3px 0 #f0f14e;
	cursor: pointer;
}
.iu-login__button:hover,
.iu-signin__button:hover,
.iu-forgot__button:hover,
.iu-reset__button:hover,
.iu-changepassword__button:hover,
.iu-cadastrar__button:hover,
.iu-info__button:hover,
.iu-forgothandle__button:hover,
.iu-invite__button:hover {
	background: #6ded8a;
	color: #0a0e27;
}
.iu-login__button:active,
.iu-signin__button:active,
.iu-forgot__button:active,
.iu-reset__button:active,
.iu-changepassword__button:active,
.iu-cadastrar__button:active,
.iu-info__button:active,
.iu-forgothandle__button:active,
.iu-invite__button:active {
	box-shadow: none;
	transform: translate(3px, 3px);
}

.iu-login__button--project {
	color: #6ded8a;
	background: transparent;
	border-color: #6ded8a;
	box-shadow: 3px 3px 0 #6ded8a;
}
.iu-login__button--project:hover {
	color: #ff5f85;
	background: transparent;
	border-color: #ff5f85;
	box-shadow: 3px 3px 0 #ff5f85;
}

.iu-login__secondary {
	display: flex;
	justify-content: space-between;
	gap: 12px;
	margin-top: 16px;
	font-size: 0.85em;
}

.iu-login__link,
.iu-signin__link,
.iu-forgot__link,
.iu-forgothandle__link,
.iu-login__secondarylink {
	color: #6ded8a;
	text-underline-offset: 2px;
}
.iu-login__link:hover,
.iu-signin__link:hover,
.iu-forgot__link:hover,
.iu-forgothandle__link:hover,
.iu-login__secondarylink:hover {
	color: #ff5f85;
}

.iu-login__noaccount,
.iu-signin__login,
.iu-forgot__login,
.iu-forgothandle__login {
	margin: 32px 0 0;
	padding-top: 16px;
	text-align: center;
	border-top: 1px solid #6ded8a;
}

.iu-forgothandle__actions {
	text-align: center;
}

.iu-cadastrar__text,
.iu-info__text,
.iu-invite__text,
.iu-invite__hint,
.iu-forgothandle__text,
.iu-reset__text,
.iu-signin__text,
.iu-forgot__text {
	margin: 0 0 16px;
	color: #e6e6e6;
	font-size: 0.9em;
}

.iu-cadastrar__actions {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 16px;
	margin-top: 16px;
}

.iu-invite__linkbox {
	margin-bottom: 16px;
	display: flex;
	gap: 8px;
	align-items: center;
}
.iu-invite__linktext {
	flex: 1;
	min-width: 0;
	box-sizing: border-box;
	padding: 8px 10px;
	font-family: inherit;
	font-size: inherit;
	word-break: break-all;
	overflow-wrap: anywhere;
	text-align: left;
	color: #6ded8a;
	background: #0a0e27;
	border: 2px solid #6ded8a;
}
.iu-invite__copybutton {
	flex-shrink: 0;
	display: inline-block;
	min-width: 13ch;
	white-space: nowrap;
	padding: 8px 16px;
	font-family: inherit;
	font-weight: bold;
	font-size: inherit;
	text-align: center;
	text-transform: uppercase;
	letter-spacing: 0.03em;
	color: #0a0e27;
	background: #ff5f85;
	border: 2px solid #f0f14e;
	box-shadow: 3px 3px 0 #f0f14e;
	cursor: pointer;
}
.iu-invite__button {
	display: block;
	width: fit-content;
	margin: 0 auto;
}
