:root{
  --petroleo:#24607f; --petroleo-escuro:#173f56; --ouro:#d9a432; --ouro-claro:#f3dfa4;
  --ceu:#dff1f6; --areia:#f7f2e6; --papel:#fffdf8; --erro:#b3382c; --ok:#2f7d4f;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:"Inter","Segoe UI",system-ui,sans-serif;color:var(--petroleo-escuro);
  background:linear-gradient(180deg,var(--ceu) 0,#eef6f4 38%,var(--areia) 100%) fixed;min-height:100vh;line-height:1.55}
h1,h2{font-family:Georgia,"Times New Roman",serif;font-weight:500;letter-spacing:.2px}
a{color:var(--petroleo)}
.capa{position:relative;text-align:center;padding:48px 20px 96px;overflow:hidden}
.capa img.logo{width:148px;height:148px;border-radius:50%;box-shadow:0 8px 28px rgba(36,96,127,.22);border:4px solid var(--papel)}
.capa .selo{display:inline-block;margin-top:22px;padding:5px 14px;border-radius:999px;background:var(--ouro-claro);color:#7a5a0c;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase}
.capa h1{margin:14px auto 8px;max-width:20ch;text-wrap:balance;font-size:clamp(2.2rem,8vw,3.6rem);line-height:1.08;color:var(--petroleo)}
.capa p{margin:0 auto;max-width:34ch;font-size:1.05rem;color:#3d6479}
.ondas{position:absolute;left:0;right:0;bottom:-1px;width:100%;height:70px;display:block}
.cartao{position:relative;max-width:640px;margin:-44px auto 40px;padding:0 16px}
.painel{background:var(--papel);border-radius:20px;padding:28px 24px;box-shadow:0 14px 40px rgba(23,63,86,.12);border:1px solid #ebe3cf}
.painel h2{margin:0 0 6px;font-size:1.5rem;color:var(--petroleo)}
.info{margin:16px 0 22px;padding:16px 18px;border-radius:14px;background:var(--ceu);font-size:.95rem}
.info ul{margin:8px 0 0;padding-left:20px}.info li{margin:4px 0}
.vagas{display:inline-block;margin-top:10px;font-weight:600;color:var(--petroleo)}
label{display:block;margin:16px 0 6px;font-weight:600;font-size:.92rem}
input[type=text],input[type=tel],input[type=email],input[type=password]{width:100%;padding:13px 14px;font:inherit;border:1.5px solid #cfd9d9;border-radius:12px;background:#fff;color:inherit}
input:focus{outline:3px solid rgba(217,164,50,.45);border-color:var(--ouro)}
.dica{font-size:.82rem;color:#5f7886;margin-top:4px}
.acomp{display:flex;gap:8px;margin-top:8px}.acomp input{flex:1}
button{font:inherit;cursor:pointer}
.btn{width:100%;margin-top:24px;padding:15px;border:0;border-radius:14px;background:var(--petroleo);color:#fff;font-weight:600;font-size:1.05rem;transition:background .15s}
.btn:hover{background:var(--petroleo-escuro)}.btn:disabled{opacity:.6;cursor:wait}
.btn:focus-visible,.link:focus-visible,.x:focus-visible{outline:3px solid var(--ouro);outline-offset:2px}
.link{background:none;border:0;color:var(--petroleo);text-decoration:underline;padding:6px 0;margin-top:8px}
.x{border:1.5px solid #cfd9d9;background:#fff;border-radius:12px;width:46px;color:var(--erro);font-size:1.2rem}
.aceite{display:flex;gap:10px;align-items:flex-start;margin-top:20px;font-size:.85rem;font-weight:400}
.aceite input{margin-top:3px;width:18px;height:18px;accent-color:var(--petroleo)}
.erro{margin-top:14px;padding:12px 14px;border-radius:12px;background:#fbe9e6;color:var(--erro);font-size:.92rem}
.oculto{display:none!important}
.hp{position:absolute;left:-9999px;height:0;overflow:hidden}
.contagem{font-family:Georgia,serif;font-size:1.6rem;color:var(--petroleo);margin:10px 0}
.rodape{text-align:center;padding:0 16px 36px;font-size:.8rem;color:#5f7886}
.obrigado{text-align:center;padding:30px 8px}.obrigado .check{width:64px;height:64px;margin:0 auto 14px;border-radius:50%;background:var(--ouro-claro);display:grid;place-items:center;font-size:2rem;color:#7a5a0c}
/* painel */
.topo{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;max-width:1000px;margin:0 auto;padding:20px 16px}
.topo h1{margin:0;font-size:1.4rem;color:var(--petroleo)}
.larg{max-width:1000px;margin:0 auto;padding:0 16px 40px}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin-bottom:18px}
.card{background:var(--papel);border-radius:16px;padding:16px 18px;border:1px solid #ebe3cf}
.card b{display:block;font-family:Georgia,serif;font-size:2rem;color:var(--petroleo);font-weight:500}
.card span{font-size:.85rem;color:#5f7886}
.barra{height:10px;border-radius:999px;background:#e4ecec;overflow:hidden;margin-top:8px}.barra i{display:block;height:100%;background:var(--ouro)}
.tabela{background:var(--papel);border-radius:16px;border:1px solid #ebe3cf;overflow:auto}
table{width:100%;border-collapse:collapse;min-width:640px}
th,td{text-align:left;padding:12px 14px;border-bottom:1px solid #f0e9d8;font-size:.92rem;vertical-align:top}
th{font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:#5f7886}
.busca{margin-bottom:12px}
.mini{font-size:.82rem;color:#5f7886}
.acoes{display:flex;gap:10px;align-items:center}
.btn-s{background:#fff;padding:10px 16px;border-radius:12px;border:1.5px solid var(--petroleo);background:#fff;color:var(--petroleo);font-weight:600;text-decoration:none;font-size:.9rem}
.login{max-width:400px;margin:12vh auto;padding:0 16px}
@media (max-width:480px){.painel{padding:22px 16px}.capa{padding-top:36px}}
@media (prefers-reduced-motion:no-preference){.painel{animation:sobe .5s ease-out both}@keyframes sobe{from{opacity:0;transform:translateY(12px)}}}

.centro{text-align:center}.vazio{margin-top:18px}
.campo{width:100%;padding:13px 14px;font:inherit;border:1.5px solid #cfd9d9;border-radius:12px;background:#fff;color:inherit}
.barra i{width:0}
.vagas:empty{display:none}

.credito{display:inline-block;margin-top:6px;color:var(--petroleo);text-decoration:none;border-bottom:1px solid var(--ouro)}
.credito:hover{color:var(--petroleo-escuro)}
.entrar{display:inline-flex;align-items:center;gap:8px;padding:9px 18px;border-radius:999px;border:1.5px solid var(--petroleo);background:rgba(255,253,248,.85);color:var(--petroleo);font-weight:600;font-size:.9rem;text-decoration:none;transition:background .15s,color .15s}
.entrar:hover{background:var(--petroleo);color:#fff}.entrar:focus-visible{outline:3px solid var(--ouro);outline-offset:2px}

.barra-topo{position:absolute;top:0;left:0;right:0;display:flex;justify-content:flex-end;padding:18px 24px;z-index:2}
@media (max-width:480px){.barra-topo{padding:14px 16px}}

.inicio{display:inline-flex;align-items:center;gap:8px}
.obrigado .inicio{margin-top:18px}
.login .centro{margin-top:18px}

.credito{display:inline-flex;align-items:center;gap:9px;margin-top:10px;padding:5px 14px 5px 5px;border:1px solid #e3d9bd;border-radius:999px;background:rgba(255,253,248,.85);border-bottom-color:#e3d9bd}
.credito img{width:24px;height:24px;border-radius:50%;object-fit:cover}
.credito:hover{border-color:var(--ouro)}
