/* Estilo comum das três páginas de alistamento (migração, MGE, Arca). */
:root{ --ink:#05070c; --ember:#E8A13A; --ember-hi:#F4C877; --parchment:#EADFC7; --parchment-2:#B9AF98; --steel:#6f7a8c; color-scheme:dark; }
*{ box-sizing:border-box; } [hidden]{ display:none !important; }
body{ margin:0; background:var(--ink); color:var(--parchment); font-family:"EB Garamond",Georgia,serif; min-height:100vh; }
body::before{ content:""; position:fixed; inset:0; pointer-events:none;
  background:radial-gradient(120vmax 70vmax at 50% -10%, rgba(232,161,58,.08), transparent 60%); }
header{ display:flex; align-items:center; justify-content:space-between; padding:22px clamp(18px,4vw,48px);
  border-bottom:1px solid rgba(232,161,58,.25); flex-wrap:wrap; gap:10px; }
.logo{ font-family:Cinzel,serif; font-weight:900; letter-spacing:.3em; font-size:1rem; color:var(--parchment); text-decoration:none; }
.logo b{ color:var(--ember); }
.who{ display:flex; align-items:center; gap:12px; font-size:.95rem; color:var(--parchment-2); flex-wrap:wrap; }
.who img{ width:34px; height:34px; border-radius:50%; border:1px solid rgba(232,161,58,.5); }
.who .lvl{ font-family:Cinzel,serif; font-size:.62rem; letter-spacing:.28em; color:var(--ember); border:1px solid rgba(232,161,58,.4); padding:.35em .8em; }
.who a{ color:var(--parchment-2); font-size:.85rem; }

/* trilha entre as três páginas — cada uma é um destino próprio */
nav.trilha{ display:flex; gap:0; flex-wrap:wrap; border-bottom:1px solid rgba(232,161,58,.18); padding:0 clamp(18px,4vw,48px); }
nav.trilha a{ font-family:Cinzel,serif; font-size:.66rem; letter-spacing:.22em; text-transform:uppercase; text-decoration:none;
  color:var(--parchment-2); padding:14px 20px; border-bottom:2px solid transparent; }
nav.trilha a:hover{ color:var(--parchment); }
nav.trilha a[aria-current="page"]{ color:var(--ember-hi); border-bottom-color:var(--ember); }

main{ max-width:900px; margin:0 auto; padding:clamp(28px,6vh,64px) 22px 80px; position:relative; }
.eyebrow{ font-family:Cinzel,serif; font-size:.68rem; letter-spacing:.4em; text-transform:uppercase; color:var(--ember); }
h1{ font-family:Cinzel,serif; font-weight:900; font-size:clamp(1.9rem,5.4vw,3.2rem); margin:.25em 0 .2em; letter-spacing:.04em; }
.sub{ font-style:italic; color:var(--parchment-2); margin:0 0 40px; }
section.mod{ border:1px solid rgba(232,161,58,.3); margin-bottom:28px;
  background:linear-gradient(160deg,rgba(232,161,58,.06),rgba(5,7,12,.2) 55%,rgba(155,45,36,.06)); }
section.mod.mig{ background:linear-gradient(160deg,rgba(199,126,36,.12),rgba(5,7,12,.2) 55%,rgba(232,161,58,.06)); border-color:rgba(232,161,58,.5); }
.mod .mh{ display:flex; align-items:center; justify-content:space-between; padding:18px 22px; border-bottom:1px solid rgba(232,161,58,.18); flex-wrap:wrap; gap:8px; }
.mod h2{ font-family:Cinzel,serif; font-size:1.05rem; letter-spacing:.12em; margin:0; color:var(--ember-hi); }
.mod .mb{ padding:20px 22px 26px; }
label{ display:block; font-family:Cinzel,serif; font-size:.62rem; letter-spacing:.28em; text-transform:uppercase; color:var(--parchment-2); margin:16px 0 6px; }
input[type=text],textarea{ width:100%; background:rgba(5,7,12,.6); color:var(--parchment); border:1px solid rgba(234,223,199,.25);
  padding:.7em .9em; font-family:inherit; font-size:1rem; }
select{ width:100%; background:rgba(5,7,12,.6); color:var(--parchment); border:1px solid rgba(234,223,199,.25);
  padding:.7em .9em; font-family:inherit; font-size:1rem; }
select:disabled{ opacity:.5; }
input[type=text]:focus,textarea:focus,select:focus{ outline:none; border-color:var(--ember); }
input[type=file]{ width:100%; color:var(--parchment-2); font-size:.9rem; border:1px dashed rgba(234,223,199,.3); padding:.8em; background:rgba(5,7,12,.4); }
.g2{ display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:0 18px; }
button.btn{ font-family:Cinzel,serif; font-weight:600; letter-spacing:.18em; text-transform:uppercase; font-size:.78rem;
  color:#120c05; background:linear-gradient(180deg,var(--ember-hi),var(--ember)); border:none; padding:.95em 2em; cursor:pointer; margin-top:22px; }
button.btn:disabled{ opacity:.5; cursor:wait; }
button.btn.secundario{ background:none; color:var(--ember-hi); border:1px solid rgba(232,161,58,.5); margin-top:0; max-width:100%; padding:.8em 1em; }
.arca-reuso{ margin:12px 0 22px; }
.arca-reuso .fb{ margin:10px 0; }
.arca-reuso fieldset{ margin:14px 0 0; padding:12px 16px; min-width:0; border:1px solid rgba(234,223,199,.25); }
.arca-reuso legend{ color:var(--ember-hi); }
.arca-reuso .reuso-opcao{ display:flex; align-items:center; gap:10px; margin:4px 0 12px; letter-spacing:.12em; }
.arca-reuso input[type=checkbox]{ width:18px; height:18px; flex-shrink:0; accent-color:var(--ember); }
.arca-reuso summary,.arca-reuso a{ color:var(--ember-hi); }
.arca-reuso summary{ cursor:pointer; }
.arca-reuso ul{ overflow-wrap:anywhere; }
.fb{ font-size:.95rem; margin-left:12px; } .fb.ok{ color:#8fce8f; } .fb.err{ color:#d98a7f; }
.badge{ font-family:Cinzel,serif; font-size:.6rem; letter-spacing:.28em; padding:.4em .9em; border:1px solid rgba(234,223,199,.3); color:var(--parchment-2); }
.badge.ok{ border-color:rgba(143,206,143,.6); color:#8fce8f; }
.badge.wait{ border-color:rgba(232,161,58,.6); color:var(--ember-hi); }
.muted{ color:var(--steel); font-style:italic; }
.trava{ border:1px dashed rgba(232,161,58,.45); background:rgba(232,161,58,.05); padding:18px 20px; color:var(--parchment-2); margin-bottom:28px; }
.trava b{ color:var(--ember-hi); font-family:Cinzel,serif; letter-spacing:.06em; }
/* o pacto: de um lado o que o reino entrega, do outro o que ele cobra */
section.mod.pacto{ border-color:rgba(232,161,58,.5);
  background:linear-gradient(160deg,rgba(232,161,58,.10),rgba(5,7,12,.2) 55%,rgba(155,45,36,.08)); }
.pacto-grade{ display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:10px 34px; }
.pacto-grade h3{ font-family:Cinzel,serif; font-size:.68rem; letter-spacing:.26em; text-transform:uppercase;
  color:var(--ember); margin:0 0 10px; }
.pacto-grade ul{ list-style:none; margin:0; padding:0; }
.pacto-grade li{ position:relative; padding:5px 0 5px 20px; color:var(--parchment-2); font-size:1rem; }
.pacto-grade li::before{ content:"◆"; position:absolute; left:0; top:5px; font-size:.6rem; color:var(--ember); }
.pacto-grade b{ color:var(--parchment); font-weight:400; }
.pacto-grade div + div li::before{ content:"⚔"; color:#d98a7f; }

.rodape{ font-size:.95rem; } .rodape a{ color:var(--ember); }
@media (max-width:680px){
  nav.trilha{ padding:0 12px; } nav.trilha a{ padding:12px 12px; font-size:.6rem; letter-spacing:.14em; }
}

  .arquivo{ position:relative; display:flex; flex-wrap:wrap; align-items:center; gap:10px; padding:10px; margin:8px 0; border:1px dashed rgba(234,223,199,.3); background:rgba(5,7,12,.4); }
  .arquivo input[type=file]{ position:absolute; inset:0; width:100%; height:100%; opacity:0; cursor:pointer; margin:0; padding:0; }
  .arquivo input[type=file]:disabled{ cursor:wait; }
  .arquivo:focus-within{ outline:2px solid #E8A13A; outline-offset:2px; }
  .arquivo-acao{ font-family:inherit; padding:6px 10px; border:1px solid rgba(232,161,58,.5); color:#F4C877; }
  .arquivo-contagem{ color:#B9AF98; }
  .arquivo-hint{ display:block; flex-basis:100%; color:#B9AF98; }
