/* Pharos Lodge — Gestor central. Mesmo padrão visual das telas das Lojas. */
:root{--titulo:'Cinzel',Georgia,serif;--serif:'Spectral',Georgia,serif;--navy:#17365E;--ouro:#C8A020;--tinta:#102039}
*{box-sizing:border-box}
body{margin:0;background:#FCFAF2;color:var(--tinta);font:400 18px/1.5 var(--serif)}
a{color:#1D4ED8}
.faixa{display:flex;align-items:center;gap:14px;padding:12px 28px;background-color:#17365E;background-image:repeating-conic-gradient(rgba(255,255,255,.06) 0% 25%,transparent 0% 50%);background-size:18px 18px;box-shadow:inset 0 -2px 0 #C8A020,inset 0 -4px 0 #17365E,inset 0 -5px 0 rgba(200,160,32,.55)}
.faixa img{height:38px;width:38px;object-fit:contain}
.faixa .marca{font:700 18px var(--titulo);letter-spacing:.09em;color:#F0D27A;font-variant-caps:small-caps}
.faixa .espaco{flex:1}
.faixa a.sair{color:#F0D27A;text-decoration:none;font:700 15px var(--titulo);letter-spacing:.06em;border:1px solid rgba(240,210,122,.5);border-radius:8px;padding:7px 14px}
.conteudo{padding:24px 28px;max-width:1500px;margin:0 auto}
.topo-lado{display:flex;align-items:center;flex-wrap:wrap;gap:0 26px;margin:0 0 18px}
.topo-lado .ob-volta{margin:0}
.topo-lado .cabecalho{margin:0;flex:0 1 auto;min-width:0}
.topo-lado .titulo-grande{margin:0;font:700 34px var(--titulo);letter-spacing:1.4px;color:#102039;text-transform:uppercase}
.topo-lado .subtitulo{font-size:18px;color:#2a3850;line-height:1.4;margin:6px 0 0}
.aviso-tela{flex:1 1 380px;background:#F6E8BF;border:1px solid #e3cf8a;border-left:9px solid #B8922A;border-radius:12px;padding:10px 16px;font:400 16.5px/1.4 var(--serif);color:#102039}
@media (min-width:981px){.topo-lado{flex-wrap:nowrap}.topo-lado .ob-volta{flex:none}.aviso-tela{flex:1 1 300px;min-width:300px}}
@media (max-width:640px){.topo-lado .titulo-grande{font-size:27px}.conteudo{padding:18px 16px}.faixa{padding:10px 16px}}
.btn-voltar{display:inline-block;background-color:#17365E;color:#F0D27A;padding:12px 20px;border-radius:10px;font:700 15px var(--titulo);text-decoration:none;box-shadow:inset 0 -2px 0 #C8A020}
.aviso{background:#E4EFFB;border-left:9px solid #2D6CC0;border-radius:12px;padding:12px 16px;margin:0 0 14px;font-size:17px}
.aviso-erro{background:#FBE5E2;border-left:9px solid #C0392B;border-radius:12px;padding:12px 16px;margin:0 0 14px;font-size:17px;color:#7a1f16}
.aviso-ok{background:#E2F4EA;border-left:9px solid #2FA36B;border-radius:12px;padding:12px 16px;margin:0 0 14px;font-size:17px}
.cartao-topo.placa{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 16px 13px;margin:0 0 12px;border-radius:12px;background-color:#17365E;background-image:repeating-conic-gradient(rgba(255,255,255,.06) 0% 25%,transparent 0% 50%);background-size:18px 18px;box-shadow:inset 0 -2px 0 #C8A020,inset 0 -4px 0 #17365E,inset 0 -5px 0 rgba(200,160,32,.55)}
.cartao-topo.placa .rotulo{font-variant-caps:small-caps;font-size:18px;font-weight:700;letter-spacing:.09em;color:#F0D27A}
.dn-seq{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:0 0 14px}
.dn-seq:has(.dn-acao){grid-template-columns:repeat(5,minmax(0,1fr))}
.dn{--c:#2D6CC0;display:flex;align-items:center;gap:16px;padding:14px 20px;border-radius:14px;color:#102039;background:color-mix(in srgb,var(--c) 13%,#fff);border:1px solid #e3dcc8;border-left:9px solid var(--c);transition:transform .16s,box-shadow .16s,border-left-width .16s;min-height:124px}
.dn b{font:600 42px var(--titulo);line-height:1;flex:none}.dn>div{min-width:0}
.dn span{display:block;overflow-wrap:anywhere;font:600 14px var(--titulo);letter-spacing:.1em;text-transform:uppercase;color:#2a3850}
.dn small{display:block;font:400 16px var(--serif);color:#4a5668;margin-top:3px}
.dn-acao{cursor:pointer;font:inherit;text-align:left;width:100%}
@media (hover:hover){.dn-acao:hover{transform:translateY(-3px);border-left-width:12px;box-shadow:0 8px 20px rgba(16,32,57,.18)}}
@media (max-width:1100px){.dn-seq,.dn-seq:has(.dn-acao){grid-template-columns:repeat(2,minmax(0,1fr))}.dn-acao{grid-column:1/-1}}
@media (max-width:520px){.dn{flex-direction:column;align-items:flex-start;gap:6px;padding:12px 14px;min-height:0}.dn b{font-size:36px}.dn span{font-size:12.5px}}
.cartao{background:#fff;border:1px solid #e3dcc8;border-bottom:5px solid #17365E;border-radius:14px;padding:10px 14px 16px;box-shadow:0 2px 8px rgba(16,32,57,.07);min-width:0;margin:0 0 16px}
.cartao h3{font:700 18px var(--titulo);color:#17365E;margin:8px 0}
.vis-modal{position:fixed;inset:0;z-index:1000;background:rgba(16,32,57,.55);display:flex;align-items:center;justify-content:center;padding:20px;overflow:auto}
.vis-modal[hidden]{display:none}
.vis-modal>.cartao{flex:none;width:min(640px,100%);max-height:calc(100vh - 40px);overflow:auto;margin:0;box-shadow:0 24px 60px rgba(0,0,0,.35)}
.vis-x{margin-left:auto;background:none;border:0;color:#E8C860;font-size:30px;line-height:1;cursor:pointer;padding:0 4px}
.nota{font-size:17px;line-height:1.5;color:#17365E;margin:0 0 14px}
.rp-bl2{--c:#2D6CC0;margin:0 0 12px;padding:12px 14px 12px 16px;border-radius:12px;background:color-mix(in srgb,var(--c) 9%,#fff);border:1px solid color-mix(in srgb,var(--c) 28%,#fff);border-left:9px solid var(--c);min-width:0}
.rp-bl2.c2{--c:#E0A100}.rp-bl2.c3{--c:#C0392B}.rp-bl2.c4{--c:#2FA36B}.rp-bl2.c5{--c:#7A4FA0}.rp-bl2.c6{--c:#1B7F8F}
.rp-bl2 label{display:block;font:700 15px var(--titulo);letter-spacing:.07em;text-transform:uppercase;color:color-mix(in srgb,var(--c) 62%,#000);margin:0 0 6px}
.rp-bl2 input[type=text],.rp-bl2 input[type=email],.rp-bl2 input[type=date],.rp-bl2 input[type=password],.rp-bl2 input[type=tel],.rp-bl2 select{width:100%;font:400 17px var(--serif);padding:10px 14px;border-radius:10px;background:#fff;border:1px solid color-mix(in srgb,var(--c) 45%,#fff);color:#102039}
.grade2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px}.grade2 .rp-bl2{margin:0}
.grade3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 16px}.grade3 .rp-bl2{margin:0}
@media (max-width:820px){.grade2,.grade3{grid-template-columns:1fr}}
.btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:10px;padding:11px 28px;font:700 16px var(--titulo);letter-spacing:.08em;text-transform:uppercase;color:#fff;cursor:pointer;text-decoration:none;border-bottom:3px solid rgba(0,0,0,.28)}
.btn.verde{background:#2FA36B}.btn.azul{background:#2D6CC0}.btn.verm{background:#C0392B}.btn.amar{background:#E0A100}.btn.roxo{background:#7A4FA0}
.btn[disabled]{opacity:.55;cursor:not-allowed}
.acoes{display:flex;gap:12px;flex-wrap:wrap;margin-top:12px}
.selo{display:inline-flex;align-items:center;justify-content:center;min-width:150px;height:34px;padding:0 14px;border-radius:8px;font:700 13px var(--titulo);letter-spacing:.07em;text-transform:uppercase;color:#fff;background:#6B7686;border-left:6px solid rgba(0,0,0,.3)}
.selo.am{background:#E0A100}.selo.vd{background:#2FA36B}.selo.vm{background:#C0392B}.selo.az{background:#2D6CC0}
.tab-cab,.tab-lin{display:grid;grid-template-columns:minmax(0,2.4fr) minmax(0,1.2fr) minmax(0,1.4fr) minmax(0,1.4fr) minmax(0,1.2fr);gap:10px;align-items:center}
.tab-cab{padding:10px 14px;border-radius:10px;background:#17365E;color:#F0D27A;font:700 14px var(--titulo);letter-spacing:.08em;text-transform:uppercase;text-align:center;margin:0 0 8px}
.tab-lin{--c:#2D6CC0;margin:0 0 8px;padding:10px 14px;border-radius:12px;background:color-mix(in srgb,var(--c) 10%,#fff);border:1px solid color-mix(in srgb,var(--c) 28%,#fff);border-left:7px solid var(--c);font:600 17px var(--serif)}
.tab-lin .c{text-align:center}
@media (max-width:760px){.tab-cab{display:none}.tab-lin{grid-template-columns:1fr 1fr}}
.codigo-teste{background:#FFF4CC;border:2px dashed #B8922A;border-radius:12px;padding:12px 16px;margin:0 0 14px;font-size:17px}
.codigo-teste b{font:700 30px var(--titulo);letter-spacing:.3em}
.contrato{max-height:52vh;overflow:auto;border:1px solid #e3dcc8;border-radius:12px;background:#fff;padding:14px 18px;font-size:16.5px;line-height:1.55;scrollbar-width:thin;scrollbar-color:#17365E #ece6d4}
.contrato h4{font:700 15px var(--titulo);letter-spacing:.06em;color:#17365E;margin:16px 0 4px;text-transform:uppercase}
.contrato p{margin:6px 0;text-align:justify}
.pagina-estreita{max-width:820px;margin:0 auto}
.passos{display:flex;gap:10px;margin:0 0 16px;flex-wrap:wrap}
.passos span{flex:1 1 120px;text-align:center;padding:8px 6px;border-radius:10px;font:700 13px var(--titulo);letter-spacing:.06em;text-transform:uppercase;background:#ece6d4;color:#4a5668;border-bottom:4px solid #cfc7ae}
.passos span.on{background:#17365E;color:#F0D27A;border-bottom-color:#C8A020}
.passos span.ok{background:#2FA36B;color:#fff;border-bottom-color:#14573A}
