:root{--bg:#090b0b;--panel:#111514;--panel2:#171c1a;--text:#ecefe9;--muted:#aab0aa;--line:#2b332f;--accent:#8da35a;--danger:#b5534c;--gold:#c3a86b;--shadow:0 20px 60px rgba(0,0,0,.35)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:linear-gradient(180deg,#080a09,#111613);color:var(--text)}
a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}
.hidden{display:none!important}.container{width:min(1180px,92vw);margin:auto}
.topbar{position:sticky;top:0;z-index:20;background:rgba(8,10,9,.92);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.nav{height:76px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:12px;font-weight:900;letter-spacing:.16em}.brand img{width:52px;height:52px;object-fit:contain}.navlinks{display:flex;gap:18px;align-items:center;color:var(--muted)}.navlinks a:hover{color:#fff}.btn{border:1px solid var(--line);background:#1b211e;color:#fff;border-radius:10px;padding:11px 16px;font-weight:800}.btn:hover{transform:translateY(-1px)}.btn.primary{background:var(--accent);color:#0b0e0b;border-color:transparent}.btn.danger{background:transparent;border-color:#6e3a37;color:#ffb7b0}.btn.ghost{background:transparent}
.hero{min-height:78vh;display:grid;place-items:center;position:relative;overflow:hidden;border-bottom:1px solid var(--line)}.hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 35%,rgba(107,128,72,.25),transparent 34%),linear-gradient(rgba(0,0,0,.15),rgba(0,0,0,.72))}.hero-inner{position:relative;text-align:center;padding:70px 0}.hero-logo{width:min(360px,70vw);filter:drop-shadow(0 24px 35px rgba(0,0,0,.6))}.eyebrow{color:var(--accent);text-transform:uppercase;letter-spacing:.22em;font-size:.78rem;font-weight:900}h1{font-size:clamp(2.5rem,8vw,6.7rem);line-height:.92;margin:18px 0 14px;letter-spacing:-.055em}.lead{max-width:720px;margin:0 auto;color:#c9cec9;font-size:clamp(1rem,2vw,1.25rem);line-height:1.65}.hero-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:28px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:42px auto 0;max-width:720px}.stat{background:rgba(15,19,17,.8);border:1px solid var(--line);border-radius:14px;padding:18px}.stat strong{display:block;font-size:1.5rem}.stat span{color:var(--muted);font-size:.85rem}
section{padding:86px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:30px}.section-head h2{font-size:clamp(2rem,5vw,3.7rem);margin:6px 0 0;letter-spacing:-.04em}.section-head p{max-width:520px;color:var(--muted);line-height:1.6}
.grid{display:grid;gap:18px}.members-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}.card{background:linear-gradient(180deg,var(--panel2),var(--panel));border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:var(--shadow)}.member-photo{aspect-ratio:4/3;background:#202621;display:grid;place-items:center;color:#7e8b7f;font-size:3rem;font-weight:900;overflow:hidden}.member-photo img{width:100%;height:100%;object-fit:cover}.card-body{padding:20px}.tag{display:inline-flex;padding:5px 9px;border-radius:999px;background:rgba(141,163,90,.13);border:1px solid rgba(141,163,90,.35);color:#cbd9a6;font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.card h3{font-size:1.35rem;margin:12px 0 4px}.card p{color:var(--muted);line-height:1.55;margin:0}.rules{display:grid;gap:12px}.rule{display:grid;grid-template-columns:60px 1fr;gap:18px;padding:20px;border:1px solid var(--line);background:var(--panel);border-radius:14px}.rule-num{font-weight:900;color:var(--accent);font-size:1.25rem}.rule h3{margin:0 0 6px}.rule p{margin:0;color:var(--muted)}.operations-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.operation-cover{aspect-ratio:16/9;background:#1e2420;display:grid;place-items:center;font-weight:900;color:#727c73;overflow:hidden}.operation-cover img{width:100%;height:100%;object-fit:cover}
.recruit-box{display:grid;grid-template-columns:.85fr 1.15fr;gap:28px;background:var(--panel);border:1px solid var(--line);border-radius:22px;padding:30px}.recruit-copy h2{font-size:clamp(2rem,5vw,3.5rem);margin:8px 0}.recruit-copy p{color:var(--muted);line-height:1.7}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}label{display:grid;gap:7px;color:#d7ddd7;font-size:.88rem;font-weight:700}label.full{grid-column:1/-1}input,textarea,select{width:100%;border:1px solid #354038;background:#0d110f;color:#fff;border-radius:10px;padding:12px;outline:none}input:focus,textarea:focus,select:focus{border-color:var(--accent)}textarea{min-height:100px;resize:vertical}.feedback{min-height:22px;margin:10px 0 0;color:#bcd28a;font-weight:700}footer{border-top:1px solid var(--line);padding:30px 0;color:var(--muted)}
/* Admin */
.admin-overlay{position:fixed;inset:0;z-index:60;background:#080a09;overflow:auto}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:24px}.login-card{width:min(430px,94vw);background:var(--panel);border:1px solid var(--line);border-radius:22px;padding:30px;box-shadow:var(--shadow)}.login-card img{width:120px;display:block;margin:0 auto 16px}.login-card h2{text-align:center;font-size:2rem;margin:0 0 8px}.login-card .muted{text-align:center;color:var(--muted);margin:0 0 22px}.login-card label{margin:12px 0}.login-actions{display:grid;gap:10px;margin-top:16px}.tiny{font-size:.8rem;color:var(--muted)}
.admin-shell{min-height:100vh;display:grid;grid-template-columns:270px 1fr}.sidebar{position:sticky;top:0;height:100vh;background:#0b0e0c;border-right:1px solid var(--line);padding:22px;display:flex;flex-direction:column}.side-brand{display:flex;align-items:center;gap:10px;font-weight:900;letter-spacing:.12em;margin-bottom:26px}.side-brand img{width:44px;height:44px;object-fit:contain}.admin-nav{display:grid;gap:8px}.admin-nav button{border:0;background:transparent;color:var(--muted);text-align:left;border-radius:9px;padding:12px 13px;font-weight:800}.admin-nav button.active,.admin-nav button:hover{background:#1a201c;color:#fff}.side-bottom{margin-top:auto;display:grid;gap:9px}.admin-main{padding:28px;min-width:0}.admin-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:26px}.admin-head h2{font-size:2rem;margin:0}.admin-panel{display:none}.admin-panel.active{display:block}.dashboard-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.metric{background:var(--panel);border:1px solid var(--line);border-radius:15px;padding:20px}.metric strong{display:block;font-size:2rem}.metric span{color:var(--muted)}.admin-card{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:22px;margin-bottom:18px}.admin-card h3{margin-top:0}.admin-form{display:grid;grid-template-columns:1fr 1fr;gap:14px}.admin-form .full{grid-column:1/-1}.admin-list{display:grid;gap:12px}.admin-row{display:grid;grid-template-columns:74px 1fr auto;gap:14px;align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:12px}.thumb{width:74px;height:62px;background:#202721;border-radius:10px;display:grid;place-items:center;overflow:hidden;font-weight:900;color:#7f8a80}.thumb img{width:100%;height:100%;object-fit:cover}.admin-row h4{margin:0 0 4px}.admin-row p{margin:0;color:var(--muted);font-size:.9rem}.row-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.smallbtn{border:1px solid var(--line);background:#1a201c;color:#fff;border-radius:8px;padding:8px 10px;font-weight:800}.smallbtn.danger{color:#ffb1a9;border-color:#623634}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px}.modal{position:fixed;inset:0;z-index:90;background:rgba(0,0,0,.78);display:grid;place-items:center;padding:20px}.modal-card{width:min(700px,96vw);max-height:92vh;overflow:auto;background:#111613;border:1px solid var(--line);border-radius:18px;padding:24px}.modal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.modal-head h3{margin:0}.close{border:0;background:transparent;color:#fff;font-size:1.5rem}.note{padding:12px 14px;border:1px solid #4c5836;background:rgba(141,163,90,.1);border-radius:10px;color:#d2ddba;line-height:1.5}.backup-actions{display:flex;gap:10px;flex-wrap:wrap}
@media(max-width:850px){.navlinks a{display:none}.stats{grid-template-columns:1fr}.recruit-box{grid-template-columns:1fr}.admin-shell{grid-template-columns:1fr}.sidebar{position:relative;height:auto;border-right:0;border-bottom:1px solid var(--line)}.admin-nav{grid-template-columns:repeat(3,1fr)}.admin-nav button{text-align:center;font-size:.8rem}.side-bottom{margin-top:18px;grid-template-columns:1fr 1fr}.dashboard-grid{grid-template-columns:1fr 1fr}.admin-row{grid-template-columns:60px 1fr}.row-actions{grid-column:1/-1;justify-content:flex-start}}
@media(max-width:560px){.form-grid,.admin-form{grid-template-columns:1fr}label.full,.admin-form .full{grid-column:auto}.dashboard-grid{grid-template-columns:1fr}.admin-main{padding:18px}.section-head{display:block}.rule{grid-template-columns:42px 1fr}}

/* Estrutura editável local */
.hero{background-size:cover;background-position:center;background-repeat:no-repeat}
label .tiny{display:block;margin-top:3px;font-weight:400}

/* =========================================================
   LOGO ANIMADA — altere em config/site-config.js
   ========================================================= */
:root{--logo-speed:1}
.hero-logo-stage{
  position:relative;
  width:min(390px,74vw);
  aspect-ratio:1/1;
  display:grid;
  place-items:center;
  margin:0 auto 4px;
  isolation:isolate;
  transform-origin:center;
  transition:transform .35s ease,filter .35s ease;
}
.hero-logo-stage:hover{
  transform:scale(1.035) rotate(-.35deg);
  filter:brightness(1.08);
}
.hero-logo{
  width:100%;
  height:100%;
  object-fit:contain;
  pointer-events:none;
  user-select:none;
}
.hero-logo-main{
  position:relative;
  z-index:4;
  filter:drop-shadow(0 24px 35px rgba(0,0,0,.68)) drop-shadow(0 0 20px rgba(141,163,90,.15));
  animation:
    unknown-logo-float calc(4.8s / var(--logo-speed)) ease-in-out infinite,
    unknown-logo-glow calc(3.6s / var(--logo-speed)) ease-in-out infinite;
  will-change:transform,filter;
}
.logo-aura{
  position:absolute;
  z-index:0;
  width:72%;
  aspect-ratio:1;
  border-radius:50%;
  background:radial-gradient(circle,rgba(141,163,90,.26) 0%,rgba(141,163,90,.09) 43%,transparent 72%);
  filter:blur(12px);
  animation:unknown-aura calc(3.4s / var(--logo-speed)) ease-in-out infinite;
}
.logo-orbit{
  position:absolute;
  z-index:1;
  border-radius:50%;
  border:1px solid rgba(168,186,119,.2);
  box-shadow:inset 0 0 18px rgba(141,163,90,.06),0 0 18px rgba(141,163,90,.07);
  pointer-events:none;
}
.logo-orbit::before,.logo-orbit::after{
  content:"";
  position:absolute;
  border-radius:50%;
  background:#b44c43;
  box-shadow:0 0 12px rgba(181,83,76,.8);
}
.logo-orbit-one{
  width:87%;
  aspect-ratio:1;
  animation:unknown-orbit-one calc(14s / var(--logo-speed)) linear infinite;
}
.logo-orbit-one::before{width:5px;height:5px;left:10%;top:21%}
.logo-orbit-one::after{width:3px;height:3px;right:14%;bottom:18%;background:#a9b879;box-shadow:0 0 10px rgba(169,184,121,.85)}
.logo-orbit-two{
  width:68%;
  aspect-ratio:1;
  border-style:dashed;
  opacity:.55;
  animation:unknown-orbit-two calc(10s / var(--logo-speed)) linear infinite;
}
.logo-orbit-two::before{width:4px;height:4px;right:-2px;top:46%;background:#a9b879;box-shadow:0 0 10px rgba(169,184,121,.85)}
.logo-orbit-two::after{display:none}
.hero-logo-glitch{
  position:absolute;
  inset:0;
  z-index:5;
  opacity:0;
  mix-blend-mode:screen;
  filter:contrast(1.25) saturate(1.35);
}
.hero-logo-glitch-a{
  filter:drop-shadow(-7px 0 0 rgba(183,65,58,.55)) contrast(1.3);
  animation:unknown-glitch-a calc(8.3s / var(--logo-speed)) steps(1,end) infinite;
}
.hero-logo-glitch-b{
  filter:drop-shadow(7px 0 0 rgba(133,163,90,.55)) contrast(1.3);
  animation:unknown-glitch-b calc(8.3s / var(--logo-speed)) steps(1,end) infinite;
}
.logo-scanline{
  position:absolute;
  z-index:6;
  left:12%;right:12%;height:2px;
  top:15%;
  opacity:0;
  background:linear-gradient(90deg,transparent,rgba(196,217,151,.7),transparent);
  box-shadow:0 0 12px rgba(141,163,90,.45);
  pointer-events:none;
  animation:unknown-scan calc(7.6s / var(--logo-speed)) ease-in-out infinite;
}
.brand img{
  animation:unknown-nav-breathe calc(3.4s / var(--logo-speed)) ease-in-out infinite;
}
@keyframes unknown-logo-float{
  0%,100%{transform:translate3d(0,0,0) rotate(-.35deg) scale(1)}
  50%{transform:translate3d(0,-13px,0) rotate(.45deg) scale(1.015)}
}
@keyframes unknown-logo-glow{
  0%,100%{filter:drop-shadow(0 24px 35px rgba(0,0,0,.68)) drop-shadow(0 0 13px rgba(141,163,90,.12));}
  50%{filter:drop-shadow(0 30px 42px rgba(0,0,0,.74)) drop-shadow(0 0 31px rgba(141,163,90,.35));}
}
@keyframes unknown-aura{
  0%,100%{transform:scale(.92);opacity:.38}
  50%{transform:scale(1.15);opacity:.82}
}
@keyframes unknown-orbit-one{to{transform:rotate(360deg)}}
@keyframes unknown-orbit-two{to{transform:rotate(-360deg)}}
@keyframes unknown-glitch-a{
  0%,83%,86%,89%,100%{opacity:0;transform:translate(0);clip-path:inset(0 0 0 0)}
  84%{opacity:.62;transform:translate(-7px,2px);clip-path:inset(13% 0 64% 0)}
  85%{opacity:.34;transform:translate(5px,-2px);clip-path:inset(58% 0 18% 0)}
  87%{opacity:.5;transform:translate(-3px,1px);clip-path:inset(35% 0 42% 0)}
  88%{opacity:.24;transform:translate(6px,0);clip-path:inset(72% 0 7% 0)}
}
@keyframes unknown-glitch-b{
  0%,83.5%,86.5%,89.5%,100%{opacity:0;transform:translate(0);clip-path:inset(0 0 0 0)}
  84.5%{opacity:.48;transform:translate(7px,-1px);clip-path:inset(66% 0 12% 0)}
  85.5%{opacity:.3;transform:translate(-5px,2px);clip-path:inset(20% 0 60% 0)}
  87.5%{opacity:.42;transform:translate(4px,-2px);clip-path:inset(46% 0 32% 0)}
  88.5%{opacity:.22;transform:translate(-6px,0);clip-path:inset(8% 0 74% 0)}
}
@keyframes unknown-scan{
  0%,75%,100%{opacity:0;transform:translateY(0)}
  78%{opacity:.72}
  88%{opacity:.18;transform:translateY(270px)}
  89%{opacity:0}
}
@keyframes unknown-nav-breathe{
  0%,100%{filter:drop-shadow(0 0 0 rgba(141,163,90,0));transform:translateY(0)}
  50%{filter:drop-shadow(0 0 8px rgba(141,163,90,.35));transform:translateY(-2px)}
}
.logo-animation-disabled .hero-logo-main,
.logo-animation-disabled .logo-aura,
.logo-animation-disabled .logo-orbit,
.logo-animation-disabled .logo-scanline,
.logo-animation-disabled .brand img,
.logo-animation-disabled .hero-logo-glitch{animation:none!important}
.logo-animation-disabled .hero-logo-stage:hover{transform:none}
.logo-glitch-disabled .hero-logo-glitch,
.logo-glitch-disabled .logo-scanline{display:none}
@media(max-width:560px){
  .hero-logo-stage{width:min(315px,78vw)}
  @keyframes unknown-scan{0%,75%,100%{opacity:0;transform:translateY(0)}78%{opacity:.65}88%{opacity:.15;transform:translateY(218px)}89%{opacity:0}}
}
@media(prefers-reduced-motion:reduce){
  .hero-logo-main,.logo-aura,.logo-orbit,.hero-logo-glitch,.logo-scanline,.brand img{animation:none!important}
  .hero-logo-stage{transition:none}
  .hero-logo-stage:hover{transform:none}
}

/* =====================================================
   MEMBROS — PADRÃO FINAL CENTRALIZADO
   ===================================================== */
#membersGrid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 240px));
  justify-content: center;
  align-items: stretch;
  gap: 20px;
}

#membersGrid > .card {
  display: flex;
  flex-direction: column;
  align-items: center;
  min-height: 360px;
  padding: 34px 18px 26px;
  text-align: center;
  border-radius: 18px;
}

#membersGrid > .card .member-photo {
  position: relative;
  display: grid;
  place-items: center;
  width: 155px;
  height: 155px;
  min-width: 155px;
  min-height: 155px;
  flex: 0 0 155px;
  margin: 0 auto 28px;
  aspect-ratio: 1 / 1;
  border-radius: 50%;
  overflow: hidden;
  border: none;
  outline: none;
  box-shadow: none;
  background: #0a0d0b;
}

#membersGrid > .card .member-photo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
  border: none;
  outline: none;
  box-shadow: none;
  border-radius: 50%;
}

#membersGrid > .card .card-body {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  padding: 0;
  text-align: center;
}

#membersGrid > .card .tag {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: fit-content;
  margin: 0 auto 12px;
  text-align: center;
}

#membersGrid > .card h3 {
  width: 100%;
  margin: 0 0 7px;
  font-size: 1.35rem;
  text-align: center;
}

#membersGrid > .card p {
  width: 100%;
  margin: 0;
  line-height: 1.45;
  text-align: center;
}

#membersGrid > .card p + p {
  margin-top: 7px;
}

@media (max-width: 600px) {
  #membersGrid {
    grid-template-columns: repeat(auto-fit, minmax(165px, 1fr));
    gap: 14px;
  }

  #membersGrid > .card {
    min-height: 315px;
    padding: 28px 12px 20px;
  }

  #membersGrid > .card .member-photo {
    width: 128px;
    height: 128px;
    min-width: 128px;
    min-height: 128px;
    flex-basis: 128px;
    margin-bottom: 22px;
  }

  #membersGrid > .card h3 {
    font-size: 1.15rem;
  }
}

/* =====================================================
   CONTROLE DE RECRUTAMENTO — HOME + PAINEL
   ===================================================== */
.recruitment-home-message{
  width:min(620px,92%);
  margin:14px auto 0;
  padding:11px 16px;
  border:1px solid rgba(197,76,68,.42);
  border-radius:10px;
  background:rgba(132,39,34,.16);
  color:#ffb8b2;
  font-weight:800;
  text-align:center;
}

#recruitmentButton.recruitment-closed{
  background:#7b2925;
  border-color:#b5534c;
  color:#fff;
  box-shadow:0 0 0 1px rgba(181,83,76,.18),0 10px 26px rgba(80,20,17,.30);
}

#recruitmentButton.recruitment-closed:hover{
  background:#96332d;
  border-color:#ce655d;
}

#recruitStat.recruitment-closed{
  border-color:rgba(181,83,76,.55);
  background:rgba(73,25,22,.34);
}

#recruitStat.recruitment-closed #recruitStatus{
  color:#ffaaa3;
}

#recruitStat.recruitment-open #recruitStatus{
  color:#cfe58f;
}

.recruitment-admin-control{
  display:grid;
  gap:14px;
  padding:18px;
  border:1px solid #384238;
  border-radius:14px;
  background:linear-gradient(145deg,rgba(26,32,28,.90),rgba(13,17,14,.94));
}

.recruitment-admin-control h3{
  margin:4px 0 8px;
}

.recruitment-admin-control .note{
  margin:0;
}

.recruitment-admin-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}

.recruitment-admin-actions .btn{
  min-width:190px;
}

.recruitment-admin-control.status-open{
  border-color:rgba(141,163,90,.55);
}

.recruitment-admin-control.status-closed{
  border-color:rgba(181,83,76,.58);
}

.recruitment-admin-control.status-closed #adminRecruitStatus{
  color:#ffaaa3;
}

.recruitment-admin-control.status-open #adminRecruitStatus{
  color:#cfe58f;
}

@media(max-width:600px){
  .recruitment-admin-actions .btn{width:100%;min-width:0}
}

/* UNKNOWN V2 — usuários e permissões */
.admin-users-list{display:grid;gap:14px}.admin-user-card{display:grid;gap:16px;padding:18px;border:1px solid rgba(255,255,255,.08);background:rgba(9,13,9,.72);border-radius:12px}.admin-user-head{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px}.admin-user-head h4{margin:0 0 4px}.admin-user-head p{margin:0;color:#8e9787;font-size:.83rem}.user-badge{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;background:#151b12;border:1px solid rgba(255,255,255,.08)}.admin-user-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.admin-user-controls label{display:grid;gap:6px;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#9ca693}.admin-user-controls select{width:100%;padding:10px;border-radius:8px;border:1px solid rgba(255,255,255,.1);background:#0b0f0a;color:#fff}.permission-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.permission-check{display:flex!important;align-items:center;gap:8px;padding:9px 10px;border-radius:8px;background:rgba(255,255,255,.025);font-size:.82rem!important;font-weight:600!important;text-transform:none!important;letter-spacing:0!important}.permission-check input{width:auto!important}.admin-user-footer{display:flex;justify-content:flex-end;align-items:center;gap:12px;border-top:1px solid rgba(255,255,255,.06);padding-top:14px}@media(max-width:900px){.permission-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.permission-grid,.admin-user-controls{grid-template-columns:1fr}.admin-user-head{grid-template-columns:auto 1fr}.admin-user-head .tag{grid-column:2}.admin-user-footer{align-items:stretch;flex-direction:column}}


/* UNKNOWN V2 — lista de candidaturas simplificada */
.application-summary-row{grid-template-columns:74px minmax(0,1fr) auto;padding:15px 16px;transition:border-color .18s ease,background .18s ease,transform .18s ease}
.application-summary-row:hover{border-color:rgba(153,178,83,.34);background:#121713;transform:translateY(-1px)}
.application-thumb{background:linear-gradient(145deg,#1c241b,#121712);color:#9fb270;border:1px solid rgba(153,178,83,.16)}
.application-summary-content{min-width:0}
.application-summary-title{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:4px}
.application-summary-title h4{margin:0}
.application-summary-reason{margin-top:6px!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;max-width:780px}
.application-status{display:inline-flex;align-items:center;border-radius:999px;padding:4px 9px;font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em;border:1px solid rgba(255,255,255,.1);background:#181d19;color:#d9dfd2}
.application-status.status-pendente{border-color:#6b6532;color:#e5da82;background:rgba(172,153,53,.08)}
.application-status.status-entrevista{border-color:#315b70;color:#86cce7;background:rgba(49,116,148,.09)}
.application-status.status-periodo-de-teste{border-color:#735c2c;color:#e9bf69;background:rgba(167,119,32,.09)}
.application-status.status-aprovada{border-color:#3d673d;color:#9ed69b;background:rgba(55,122,55,.09)}
.application-status.status-recusada{border-color:#713937;color:#efa19b;background:rgba(154,54,50,.09)}
.application-open-btn{text-decoration:none;display:inline-flex;align-items:center;white-space:nowrap;padding:10px 13px}
@media(max-width:850px){.application-summary-row{grid-template-columns:60px 1fr}.application-summary-row .row-actions{grid-column:1/-1}.application-open-btn{width:100%;justify-content:center}}


/* UNKNOWN V2 — navegação administrativa sem flash da tela de login */
html.admin-route-pending body{background:#080a09;overflow:hidden}
html.admin-route-pending body>.topbar,
html.admin-route-pending #publicSite,
html.admin-route-pending body>footer{visibility:hidden}
html.admin-route-pending body::after{
  content:'VALIDANDO SESSÃO · UNKNOWN CMS';
  position:fixed;
  inset:0;
  z-index:59;
  display:grid;
  place-items:center;
  background:#080a09;
  color:#9fb270;
  font-size:.76rem;
  font-weight:900;
  letter-spacing:.18em;
  text-transform:uppercase;
}


/* =========================================================
   CMS -> ÁREA DOS MEMBROS
   Atalhos para o administrador visualizar os módulos internos.
   ========================================================= */
.admin-nav-section{
  margin:14px 10px 4px;
  padding-top:14px;
  border-top:1px solid var(--line);
  color:var(--accent);
  font-size:.67rem;
  font-weight:900;
  letter-spacing:.16em;
}
.admin-nav .admin-portal-link{
  display:block;
  padding:11px 13px;
  border-radius:9px;
  color:var(--muted);
  font-weight:800;
  text-decoration:none;
  border:1px solid transparent;
}
.admin-nav .admin-portal-link:hover{
  background:#151b17;
  border-color:var(--line);
  color:#fff;
}
@media(max-width:850px){
  .admin-nav-section{grid-column:1/-1;margin-top:10px}
  .admin-nav .admin-portal-link{text-align:center;font-size:.8rem}
}

/* UNKNOWN V6 — logs de auditoria */
.audit-log-filters{margin-bottom:12px}.audit-log-filters input{width:min(520px,100%)}
.audit-log-list{display:grid;gap:10px}
.audit-log-row{display:grid;grid-template-columns:minmax(220px,1.1fr) minmax(180px,.9fr) minmax(320px,1.5fr) auto;gap:14px;align-items:center;padding:14px 16px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:#0b0f0c}
.audit-log-user{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:center;min-width:0}.audit-log-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:#151b13;border:1px solid rgba(255,255,255,.08)}.audit-log-user strong,.audit-log-user small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.audit-log-user small{margin-top:3px;color:#7f897b;font-size:.68rem}
.audit-log-page,.audit-log-times>div{display:grid;gap:4px}.audit-log-page span,.audit-log-times span{font-size:.52rem;letter-spacing:.12em;color:#667064;font-weight:900}.audit-log-page strong{font-size:.8rem;color:#e4e8df}.audit-log-times{display:grid;grid-template-columns:1fr 1fr;gap:10px}.audit-log-times strong{font-size:.68rem;color:#c7cec1}
.audit-log-status{display:grid;justify-items:end;gap:5px}.audit-log-status small{font-size:.61rem;color:#7e8879}
@media(max-width:1050px){.audit-log-row{grid-template-columns:1fr 1fr}.audit-log-status{justify-items:start}}@media(max-width:650px){.audit-log-row{grid-template-columns:1fr}.audit-log-times{grid-template-columns:1fr}.audit-log-status{justify-items:start}}

/* --- V7: edição cadastral pelo administrador --- */
.admin-user-block{display:grid;gap:0}
.admin-user-block .admin-user-card{border-radius:12px 12px 0 0}
.admin-user-block:has(.admin-user-profile-card) .admin-user-card{border-bottom:0}
.admin-user-profile-card{display:grid;gap:14px;padding:18px;border:1px solid rgba(255,255,255,.08);border-top:1px dashed rgba(154,188,120,.35);background:rgba(14,20,12,.85);border-radius:0 0 12px 12px}
.admin-user-profile-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap}
.admin-user-profile-head h5{margin:0;font-size:.9rem;letter-spacing:.04em;text-transform:uppercase;color:#b8c9a4}
.admin-user-profile-head .tiny{color:#7f8a75}
.admin-user-profile-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.admin-user-profile-grid label{display:grid;gap:6px;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#9ca693}
.admin-user-profile-grid input{width:100%;padding:10px;border-radius:8px;border:1px solid rgba(255,255,255,.1);background:#0b0f0a;color:#fff;font-size:.9rem}
.admin-user-profile-grid input:focus{outline:none;border-color:rgba(154,188,120,.55)}
.admin-user-profile-card>.tiny{color:#7f8a75;margin:0}
@media(max-width:900px){.admin-user-profile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.admin-user-profile-grid{grid-template-columns:1fr}}

/* --- V7: autenticação silenciosa (sem flash de deslogado) --- */
html.auth-resolving .auth-gated{visibility:hidden}
html.auth-known .auth-gated{visibility:hidden}
html.auth-settled .auth-gated{visibility:visible}
.auth-resolving-splash{position:fixed;inset:0;background:#070a06;z-index:9998;pointer-events:none;opacity:0;transition:opacity .12s ease}
html.auth-resolving .auth-resolving-splash,html.auth-known .auth-resolving-splash{opacity:1}
html.auth-settled .auth-resolving-splash{opacity:0;display:none}

/* --- V7: candidaturas --- */
.application-summary-bar{padding:10px 14px;margin-bottom:12px;border-radius:8px;background:rgba(154,188,120,.09);border:1px solid rgba(154,188,120,.22);font-size:.82rem;color:#b8c9a4}
.note.error-note{border:1px solid rgba(220,90,90,.35);background:rgba(220,90,90,.08);color:#e2b3b3}
.note.error-note .smallbtn{margin-top:10px}
.portal-message.warn{border:1px solid rgba(214,178,80,.38);background:rgba(214,178,80,.1);color:#e3cd93;padding:12px 14px;border-radius:8px;margin-bottom:14px}

/* --- V7: avatar do perfil sem layout shift --- */
.steam-member-avatar{width:84px;height:84px;object-fit:cover;background:#0b0f0a}

/* =========================================================
   V7.1 — LISTA DE USUÁRIOS, MODAL DE PERFIL E SIDEBAR
   ========================================================= */

/* Item 6 — o menu lateral rola sozinho; a marca e os botões de baixo
   ficam fixos, só a navegação central é que rola. */
.sidebar{overflow:hidden}
.sidebar .side-brand{flex:0 0 auto}
.sidebar .admin-nav{
  flex:1 1 auto;
  min-height:0;
  overflow-y:auto;
  overscroll-behavior:contain;
  scrollbar-width:thin;
  scrollbar-color:#3a463c transparent;
  padding-right:6px;
}
.sidebar .admin-nav::-webkit-scrollbar{width:8px}
.sidebar .admin-nav::-webkit-scrollbar-track{background:transparent}
.sidebar .admin-nav::-webkit-scrollbar-thumb{background:#2c352e;border-radius:8px}
.sidebar .admin-nav::-webkit-scrollbar-thumb:hover{background:#3d4a3f}
.sidebar .side-bottom{flex:0 0 auto;padding-top:14px}
@media(max-width:850px){.sidebar{overflow:visible}.sidebar .admin-nav{overflow:visible;max-height:none}}

/* V7.6 — listagem em tabela (Task 1) */
.admin-user-table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:12px;background:var(--panel)}
.admin-user-table{width:100%;border-collapse:collapse;font-size:.86rem}
.admin-user-table thead th{
  text-align:left;padding:12px 14px;font-size:.66rem;letter-spacing:.08em;text-transform:uppercase;
  color:#8b9682;border-bottom:1px solid var(--line);white-space:nowrap;background:rgba(0,0,0,.18)
}
.admin-user-table tbody td{padding:11px 14px;border-bottom:1px solid rgba(255,255,255,.05);vertical-align:middle;color:#dfe4d6}
.admin-user-table tbody tr:last-child td{border-bottom:0}
.admin-user-table tbody tr:hover{background:rgba(255,255,255,.02)}
.admin-user-table tr.is-inactive{opacity:.55}
.admin-user-cell-identity{display:flex;align-items:center;gap:10px;min-width:200px}
.admin-user-cell-identity span{display:grid;gap:1px;min-width:0}
.admin-user-cell-identity strong{font-size:.9rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.admin-user-cell-identity small{font-size:.68rem;color:#7f897b}
.admin-user-avatar{width:32px;height:32px;border-radius:50%;flex:0 0 auto;border:1px solid var(--line);object-fit:cover;background:#11160f}
.admin-user-cell-mono{font-family:monospace;font-size:.78rem;color:#b8c2ac}
.tag-ok{border-color:rgba(154,188,120,.4);color:#b8d68a}
.tag-muted{opacity:.7}
@media(max-width:900px){.admin-user-table{font-size:.78rem}.admin-user-table thead th,.admin-user-table tbody td{padding:9px 10px}}

/* Modal de perfil */
.user-modal{position:fixed;inset:0;z-index:120;display:flex;justify-content:flex-end}
.user-modal.hidden{display:none}
body.modal-open{overflow:hidden}
.user-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.72)}
.user-modal-panel{
  position:relative;width:min(760px,100vw);height:100vh;overflow-y:auto;
  background:#0d110c;border-left:1px solid var(--line);
  padding:24px;display:flex;flex-direction:column;gap:18px;
}
.user-modal-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;
  position:sticky;top:-24px;background:#0d110c;padding:8px 0 14px;margin:-8px 0 0;
  border-bottom:1px solid var(--line);z-index:2}
.user-modal-head h3{margin:4px 0 2px;font-size:1.4rem}
.user-modal-head .tiny{color:var(--muted);margin:0}
.user-modal-section{border:1px solid var(--line);border-radius:14px;padding:18px;background:var(--panel)}
.user-modal-section h4{margin:0 0 14px;font-size:.82rem;letter-spacing:.08em;text-transform:uppercase;color:#b8c9a4}
.user-modal-section .admin-user-card,
.user-modal-section .admin-user-profile-card{border:0;background:transparent;padding:0;border-radius:0}

/* Dossiê da candidatura */
.dossier-status{display:flex;align-items:center;gap:12px;margin-bottom:16px;flex-wrap:wrap}
.dossier-status small{color:var(--muted)}
.dossier-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:12px}
.dossier-field{background:rgba(0,0,0,.28);border:1px solid var(--line);border-radius:10px;padding:10px 12px;margin-bottom:10px}
.dossier-field span{display:block;font-size:.68rem;letter-spacing:.07em;text-transform:uppercase;color:#8b9682;margin-bottom:4px}
.dossier-field p{margin:0;white-space:pre-wrap;line-height:1.5;font-size:.92rem}
.dossier-audit{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.dossier-audit li{background:rgba(0,0,0,.28);border:1px solid var(--line);border-radius:10px;padding:10px 12px}
.dossier-audit strong{display:block;font-size:.85rem}
.dossier-audit small{color:var(--muted);font-size:.74rem}
.dossier-audit p{margin:6px 0 0;font-size:.82rem;color:#c6d2b6;word-break:break-word}
@media(max-width:620px){.dossier-grid{grid-template-columns:1fr}.user-modal-panel{padding:16px}}

/* =========================================================
   V7.2 — AVATARES, MEU PERFIL, PERFIL ADMIN E FILTROS DO MAPA
   ========================================================= */

/* --- Avatares --- */
.admin-user-avatar,.post-avatar img,.composer-avatar img,.sidebar-avatar,
.my-profile-avatar,.user-page-avatar{object-fit:cover;background:#11160f;display:block}
.admin-user-avatar{width:36px;height:36px;border-radius:50%;flex:0 0 auto;border:1px solid var(--line)}
.post-avatar,.composer-avatar{overflow:hidden;border-radius:50%;padding:0}
.post-avatar img,.composer-avatar img{width:100%;height:100%;border-radius:50%}
.sidebar-avatar{width:72px;height:72px;border-radius:50%;margin:0 auto 10px;border:2px solid rgba(154,188,120,.35)}
.sidebar-profile-btn{margin-top:10px;width:100%;font-size:.8rem}

/* --- Modal "Meu perfil" --- */
.my-profile-modal{position:fixed;inset:0;z-index:130;display:grid;place-items:center;padding:20px}
.my-profile-modal.hidden{display:none}
.my-profile-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.74)}
.my-profile-panel{position:relative;width:min(520px,100%);max-height:90vh;overflow-y:auto;
  background:#0d110c;border:1px solid var(--line);border-radius:16px;padding:24px;
  display:flex;flex-direction:column;gap:18px}
.my-profile-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px}
.my-profile-head h3{margin:4px 0 0;font-size:1.3rem}
.my-profile-avatar-row{display:flex;gap:18px;align-items:center}
.my-profile-avatar{width:96px;height:96px;border-radius:50%;border:2px solid rgba(154,188,120,.35);flex:0 0 auto}
.my-profile-avatar-actions{display:flex;flex-direction:column;gap:8px;align-items:flex-start;min-width:0}
.my-profile-avatar-actions .btn{cursor:pointer}
.my-profile-avatar-actions .tiny{margin:0;color:var(--muted)}
.my-profile-field{display:grid;gap:8px;font-weight:700;color:rgba(255,255,255,.84)}
.my-profile-field input{padding:12px;border-radius:10px;border:1px solid var(--line);background:#0b0f0a;color:#fff;font-size:.95rem}
.my-profile-field input:focus{outline:none;border-color:rgba(154,188,120,.55)}
.my-profile-footer{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap}
@media(max-width:520px){.my-profile-avatar-row{flex-direction:column;align-items:flex-start}}

/* --- Perfil do usuário em página inteira --- */
.admin-user-main{max-width:1180px;margin:0 auto;padding:28px 20px 60px;display:grid;gap:20px}
.user-page-head{display:flex;align-items:center;gap:20px;flex-wrap:wrap;position:relative;
  background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:22px}
.user-page-avatar{width:96px;height:96px;border-radius:50%;border:2px solid rgba(154,188,120,.35);flex:0 0 auto}
.user-page-identity{flex:1 1 260px;min-width:0}
.user-page-identity h1{margin:4px 0 2px;font-size:1.8rem;word-break:break-word}
.user-page-identity .tiny{margin:0;color:var(--muted)}
.user-page-tags{display:flex;gap:8px;flex-wrap:wrap}
.user-page-section{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:22px}
.user-page-section h2{margin:0 0 16px;font-size:.82rem;letter-spacing:.08em;text-transform:uppercase;color:#b8c9a4}
.user-page-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.status-current{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:16px}
.status-current .tiny{color:var(--muted)}
.status-actions{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:12px}
.status-actions .btn.is-current{border-color:rgba(154,188,120,.6);background:rgba(154,188,120,.16);opacity:1}
.status-actions .btn:disabled{cursor:default}
.btn.danger{border-color:rgba(220,90,90,.45);color:#e2b3b3}
.btn.danger:hover{background:rgba(220,90,90,.14)}
@media(max-width:900px){.user-page-grid{grid-template-columns:1fr}}

/* --- Filtros visuais do mapa --- */
.map-filter-block{margin:10px 0 14px;padding:12px;border:1px solid var(--line);border-radius:10px;background:rgba(0,0,0,.26)}
.map-filter-block.is-active{border-color:rgba(154,188,120,.42)}
.map-filter-row{display:grid;gap:6px}
.map-filter-row>span{font-size:.68rem;letter-spacing:.07em;text-transform:uppercase;color:#8b9682}
.map-filter-row select{width:100%;padding:8px 10px;border-radius:8px;border:1px solid var(--line);background:#0b0f0a;color:#fff;font-size:.85rem}
.map-filter-sliders{display:grid;gap:10px;margin-top:12px;padding-top:12px;border-top:1px dashed var(--line)}
.map-filter-sliders label{display:grid;gap:5px}
.map-filter-sliders label>span{display:flex;justify-content:space-between;font-size:.7rem;color:#8b9682;text-transform:uppercase;letter-spacing:.05em}
.map-filter-sliders label>span b{color:#b8c9a4}
.map-filter-sliders input[type=range]{width:100%;accent-color:#9cb653}

/* =========================================================
   V7.6 — PERFIL: fechar, status da candidatura, salvar consolidado
   ========================================================= */
.user-page-close{
  position:absolute;top:0;right:0;width:34px;height:34px;border-radius:50%;
  display:grid;place-items:center;color:#9ca696;text-decoration:none;font-size:1.1rem;
  border:1px solid var(--line);background:rgba(0,0,0,.2)
}
.user-page-close:hover{color:#fff;border-color:rgba(255,255,255,.3)}
.status-select-label{display:grid;gap:6px;font-size:.72rem;font-weight:800;letter-spacing:.06em;color:#9ca693;max-width:340px;margin-bottom:8px}
.status-select-label select{padding:10px 11px;border-radius:9px;border:1px solid var(--line);background:#0b0f0a;color:#fff;font-size:.88rem}
#applicationStatusDates{display:block;color:var(--muted)}
.user-page-save-bar{
  position:sticky;bottom:0;z-index:20;display:flex;justify-content:flex-end;align-items:center;gap:14px;
  padding:16px 20px;margin-top:4px;background:#0d110c;border:1px solid var(--line);border-radius:14px;
  box-shadow:0 -10px 24px rgba(0,0,0,.35)
}
.user-page-save-bar .btn{padding:11px 22px;font-size:.9rem}
@media(max-width:620px){.user-page-save-bar{flex-direction:column;align-items:stretch}.user-page-save-bar .btn{width:100%}}
