/* MidgardRO - tema do FluxCP. Carregado depois do flux.css do tema padrao e sobrescreve as cores */
@font-face { font-family: "Cinzel Decorative"; src: url("/fontes/CinzelDecorative-Black.ttf") format("truetype"); font-weight: 900; font-display: swap; }
@font-face { font-family: "Cinzel"; src: url("/fontes/Cinzel-var.ttf") format("truetype"); font-weight: 400 900; font-display: swap; }
@font-face { font-family: "IM Fell"; src: url("/fontes/IMFeENrm28P.ttf") format("truetype"); font-display: swap; }

:root {
	--fundo: #120d09; --fundo-2: #1c140d; --pergaminho: #2a1e13; --borda: #6b5230;
	--ouro: #e2b45c; --ouro-claro: #f6dc9c; --rubi: #c8342c; --texto: #e9dcc3; --texto-suave: #b7a688;
}

body.midgard {
	margin: 0; padding: 0;
	background: var(--fundo) radial-gradient(ellipse at top, #2b1d10 0%, var(--fundo) 60%) no-repeat;
	color: var(--texto);
	font: 16px/1.55 "IM Fell", Georgia, serif;
}
body.midgard a { color: var(--ouro); }
body.midgard a:hover { color: var(--ouro-claro); }
.m-midgard { color: var(--ouro); }
.m-ro { color: var(--rubi); }

.mg-topo { background: rgba(18, 13, 9, .95); border-bottom: 1px solid var(--borda); }
.mg-topo-inner { max-width: 1240px; margin: 0 auto; padding: 10px 20px; display: flex; align-items: center; gap: 20px; flex-wrap: wrap; }
.mg-marca { font: 900 26px "Cinzel Decorative", serif; text-decoration: none; text-shadow: 0 2px 6px #000; }
.mg-menu { margin-left: auto; display: flex; gap: 20px; align-items: center; flex-wrap: wrap; }
.mg-menu a { font: 600 14px "Cinzel", serif; letter-spacing: 1px; text-transform: uppercase; text-decoration: none; color: var(--texto) !important; }
.mg-menu a:hover { color: var(--ouro-claro) !important; }
.mg-menu .mg-botao, body.midgard input[type=submit], body.midgard button, body.midgard .submit_button {
	background: linear-gradient(#f0c870, #b9852f); color: #2a1a08 !important; border: 1px solid #f6dc9c; border-radius: 4px;
	padding: 6px 14px; font: 700 13px "Cinzel", serif; letter-spacing: 1px; text-transform: uppercase; cursor: pointer;
}

.mg-corpo { max-width: 1240px; margin: 24px auto; padding: 0 20px; display: grid; grid-template-columns: 220px 1fr; gap: 24px; }
.mg-lateral-menu { background: var(--fundo-2); border: 1px solid var(--borda); border-radius: 6px; padding: 12px 0; margin-bottom: 18px; }
.mg-lateral-menu h3 { font: 700 14px "Cinzel", serif; letter-spacing: 2px; text-transform: uppercase; color: var(--ouro-claro); margin: 8px 16px 6px; }
.mg-lateral-menu h3:first-letter { font-size: inherit; color: inherit; }
.mg-lateral-menu ul { list-style: none; margin: 0 0 6px; padding: 0; }
.mg-lateral-menu a { display: block; padding: 5px 16px 5px 22px; text-decoration: none; color: var(--texto) !important; border-left: 2px solid transparent; }
.mg-lateral-menu a:hover { background: var(--pergaminho); border-left-color: var(--ouro); color: var(--ouro-claro) !important; }
.mg-admin { border-color: var(--rubi); }

.mg-sessao { background: var(--fundo-2); border: 1px solid var(--borda); border-radius: 6px; padding: 8px 14px; margin-bottom: 14px; color: var(--texto-suave); }
.mg-caixa { background: linear-gradient(var(--pergaminho), var(--fundo-2)); border: 1px solid var(--borda); border-radius: 6px; padding: 22px 26px; box-shadow: 0 10px 30px rgba(0, 0, 0, .5); min-height: 300px; }

/* elementos do FluxCP */
body.midgard h2 { font: 700 26px "Cinzel", serif; color: var(--ouro-claro); border-bottom: 1px solid var(--borda); padding-bottom: 6px; }
body.midgard h3 { font: 700 19px "Cinzel", serif; color: var(--ouro-claro); }
body.midgard h3:first-letter { color: var(--ouro); }
body.midgard p, body.midgard td, body.midgard th, body.midgard label { color: var(--texto); }
body.midgard table { border-color: var(--borda); }
.horizontal-table, .vertical-table, .generic-form-table { border-collapse: collapse; }
body.midgard .horizontal-table th, body.midgard .vertical-table th, body.midgard .generic-form-table th {
	background: #3a2a18; color: var(--ouro-claro); border: 1px solid var(--borda); font-family: "Cinzel", serif; font-weight: 600;
}
body.midgard .horizontal-table td, body.midgard .vertical-table td, body.midgard .generic-form-table td { background: rgba(18, 13, 9, .55); border: 1px solid #3a2a18; }
body.midgard input[type=text], body.midgard input[type=password], body.midgard input[type=email], body.midgard input[type=file], body.midgard textarea, body.midgard select {
	background: #1c140d; color: var(--texto); border: 1px solid var(--borda); border-radius: 4px; padding: 6px 8px; font: 15px Georgia, serif;
}
body.midgard .message { background: rgba(111, 207, 106, .12); border: 1px solid #4c8a48; color: #bfe8bb; border-radius: 4px; padding: 8px 12px; }
body.midgard .red { color: #ff8a80; background: rgba(224, 86, 76, .12); border-color: #a04038; }
body.midgard .notice { background: rgba(226, 180, 92, .12); color: var(--ouro-claro); border: 1px solid var(--borda); }
body.midgard .up, body.midgard .online { color: #6fcf6a; }
body.midgard .down, body.midgard .offline { color: #e0564c; }
body.midgard #submenu, body.midgard #pagemenu { color: var(--texto-suave); }
body.midgard .search-form, body.midgard .search-form2 { background: var(--fundo-2); border: 1px solid var(--borda); }
body.midgard #register_form th label, body.midgard #login_form th label { color: var(--ouro-claro); }
body.midgard #register_form img, body.midgard #login_form img { border: 1px solid var(--borda); border-radius: 4px; }
body.midgard .pages .current-page { color: var(--ouro-claro); }

.mg-rodape { text-align: center; padding: 26px 20px; border-top: 1px solid #2c2013; color: var(--texto-suave); }
.mg-rodape p { margin: 3px 0; color: var(--texto-suave); }
.mg-legal { font-size: 13px; }

@media (max-width: 860px) {
	.mg-corpo { grid-template-columns: 1fr; }
	.mg-menu { margin-left: 0; }
}

/* formularios (cadastro, login, troca de senha) */
body.midgard .generic-form, body.midgard .generic-form-div { background: rgba(18, 13, 9, .5); border: 1px solid var(--borda); border-radius: 6px; }
body.midgard .generic-form-table { width: 100%; }
body.midgard .generic-form-table th { background: transparent; border: 0; border-bottom: 1px solid #3a2a18; width: 210px; }
body.midgard .generic-form-table td { background: transparent; border: 0; border-bottom: 1px solid #3a2a18; color: var(--texto); font: 15px Georgia, serif; }
body.midgard .generic-form-table label { color: var(--texto); font-family: Georgia, serif; }
body.midgard .generic-form-table input[type=text], body.midgard .generic-form-table input[type=password] { width: min(320px, 100%); }
body.midgard .security-code img { border: 1px solid var(--borda); border-radius: 4px; background: #f6efe0; }
body.midgard .mg-dica { display: block; color: var(--texto-suave); font-style: italic; margin-top: 4px; }
body.midgard table { font-family: Georgia, serif; font-size: 14px; }

/* status do servidor */
body.midgard #server_status { border-collapse: collapse; background: transparent; }
body.midgard #server_status td, body.midgard #server_status th { background: rgba(18, 13, 9, .55); border: 1px solid #3a2a18; color: var(--texto); padding: 8px 12px; }
body.midgard #server_status tr:first-child td { background: #3a2a18; color: var(--ouro-claro); font-family: "Cinzel", serif; }
body.midgard .note { background: rgba(226, 180, 92, .08); border: 1px solid var(--borda); color: var(--texto-suave); padding: 8px 12px; border-radius: 4px; }
