:root{
  --bg:#071822;
  --bg2:#020b10;
  --panel:#082334;
  --panel2:#0b2c41;
  --blue:#24a8f2;
  --cyan:#20d4ff;
  --green:#23d18b;
  --orange:#ff9f1c;
  --text:#edf7ff;
  --muted:#a9c1cc;
}

*{scroll-margin-top:80px}
html{min-height:100%;height:100%}
body{margin:0;min-height:100%;background:var(--bg2);color:var(--text);font-family:'Inter',Arial,sans-serif;display:flex;flex-direction:column}
body > main{flex:1 0 auto}
.site-footer{flex-shrink:0}
h1,h2,h3,.navbar-brand strong{font-family:'Fredoka',Arial,sans-serif}

.nav-pirita{
  min-height:54px;
  background:#06151d;
  box-shadow:0 2px 12px rgba(0,0,0,.35);
}
.navbar-brand strong{font-size:15px}
.navbar-brand img{object-fit:contain;filter:drop-shadow(0 0 6px rgba(36,168,242,.55))}
.small-menu .nav-link{
  color:#d9eef8!important;
  font-weight:800;
  font-size:13px;
  padding-left:14px!important;
  padding-right:14px!important;
}
.btn-donate{
  background:var(--orange);
  border:0;
  color:#fff;
  font-weight:900;
  border-radius:5px;
}
.btn-launcher{
  background:var(--blue);
  border:0;
  color:#fff;
  font-weight:900;
  border-radius:5px;
}
.btn-primary-pirita{
  background:var(--blue);
  color:#fff;
  border:0;
  font-weight:900;
  padding:10px 22px;
}
.btn-outline-pirita{
  color:#c7efff;
  border:1px solid var(--blue);
  font-weight:900;
  padding:10px 22px;
}
.btn-outline-pirita:hover{background:var(--blue);color:#fff}

.craft-hero{
  position:relative;
  min-height:625px;
  padding-top:85px;
  display:flex;
  align-items:center;
  overflow:hidden;
  background:
    linear-gradient(90deg,rgba(2,11,16,.92),rgba(2,11,16,.55),rgba(2,11,16,.92)),
    url('/assets/img/logo-piritacraft.png') center/520px no-repeat,
    radial-gradient(circle at 45% 40%,rgba(36,168,242,.25),transparent 40%),
    linear-gradient(135deg,#123546,#051018);
}
.craft-hero:before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(rgba(2,11,16,.50),rgba(2,11,16,.78)),
    repeating-linear-gradient(135deg,rgba(255,255,255,.03) 0 2px,transparent 2px 14px);
}
.hero-content{position:relative;z-index:2}
.floating-logo{
  width:min(380px,90%);
  filter:drop-shadow(0 18px 35px rgba(0,0,0,.55)) drop-shadow(0 0 30px rgba(35,209,139,.20));
}
.craft-hero h1{
  font-size:clamp(46px,6vw,78px);
  font-weight:700;
  letter-spacing:.5px;
  text-shadow:0 5px 20px rgba(0,0,0,.55);
}
.craft-hero p{
  color:#d7eaf2;
  max-width:600px;
  font-size:17px;
  line-height:1.7;
}

.section-title h2{
  font-size:clamp(32px,4vw,46px);
  color:#fff;
  font-weight:700;
  text-shadow:0 4px 16px rgba(0,0,0,.45);
}
.section-title p{color:var(--muted);font-size:14px}

.forum-highlights{background:#0b1018}
.highlight-row{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
  max-width:980px;
  margin:34px auto 0;
}
.highlight-card{
  background:#121b2b;
  border-radius:8px;
  overflow:hidden;
  box-shadow:0 12px 35px rgba(0,0,0,.25);
  border:1px solid rgba(255,255,255,.05);
}
.highlight-img{
  height:105px;
  background:linear-gradient(135deg,#11344b,#0a111b);
  display:flex;
  align-items:center;
  justify-content:center;
}
.highlight-img img{height:90px;max-width:90%;object-fit:contain}
.highlight-body{padding:14px}
.highlight-body span{font-size:10px;color:var(--blue);font-weight:900;text-transform:uppercase}
.highlight-body h3{font-size:16px;margin:5px 0;color:#fff}
.highlight-body p{font-size:12px;color:#9fb7c4;min-height:48px}
.highlight-body small{color:#607b89;font-size:11px}

.servers-area{background:#001b26}
.server-box{
  max-width:760px;
  background:#061d2b;
  border:1px solid rgba(36,168,242,.25);
  border-radius:8px;
  padding:34px;
  box-shadow:0 20px 50px rgba(0,0,0,.25);
}
.server-box h3{color:var(--blue);font-size:22px}
.check-list{list-style:none;padding:0;margin:25px 0}
.check-list li{margin:12px 0;color:#d3e7ef;font-size:14px}
.check-list li:before{content:"✓";color:var(--green);font-weight:900;margin-right:10px}
.server-entry{
  padding:12px 0 18px;
  border-bottom:1px solid rgba(255,255,255,.08);
}
.server-entry strong{font-size:22px;font-family:'Fredoka';display:inline-block;margin-right:8px}
.server-entry em{
  background:#124b68;
  color:#7edaff;
  border-radius:999px;
  font-size:11px;
  padding:2px 8px;
  font-style:normal;
  font-weight:900;
}
.server-entry code{display:block;margin-top:8px;color:#32c5ff;background:transparent}

.connect-area{
  position:relative;
  background:
    linear-gradient(rgba(2,11,16,.72),rgba(2,11,16,.78)),
    radial-gradient(circle at center,rgba(36,168,242,.15),transparent 45%),
    #102c3b;
}
.connect-step div{
  width:64px;height:64px;border-radius:50%;
  margin:0 auto 20px;
  display:flex;align-items:center;justify-content:center;
  background:var(--blue);
  color:#fff;
  font-size:28px;
  font-weight:900;
  box-shadow:0 0 25px rgba(36,168,242,.35);
}
.connect-step h3{font-size:18px;color:#fff}
.connect-step p{color:#bfd1da;font-size:14px;max-width:260px;margin:auto}
.video-box{
  max-width:560px;
  min-height:290px;
  border-radius:10px;
  background:
    linear-gradient(rgba(0,0,0,.25),rgba(0,0,0,.55)),
    radial-gradient(circle at center,rgba(36,168,242,.22),transparent 50%),
    #0a2231;
  border:1px solid rgba(255,255,255,.08);
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  text-align:center;
  padding:30px;
}
.play-button{
  width:72px;height:72px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  background:#ff2222;
  font-size:28px;
  margin-bottom:15px;
}

.history-area{background:#06151d}
.history-box{
  max-width:900px;
  margin:auto;
  border-left:4px solid var(--blue);
  background:#071f2c;
  padding:22px 28px;
}
.history-box h3{font-size:22px}
.history-box p{color:#c7d9e0;margin:0}

.discord-banner{
  background:
    linear-gradient(rgba(2,11,16,.58),rgba(2,11,16,.65)),
    radial-gradient(circle at center,rgba(35,209,139,.18),transparent 45%),
    #0a2934;
}
.discord-banner h2{
  font-size:48px;
  font-family:'Fredoka';
}
.discord-banner p{color:#d2e8f0}

.faq-area{background:#001b26}
.pirita-faq{max-width:850px}
.pirita-faq .accordion-item{
  background:transparent;
  border:0;
  margin-bottom:12px;
}
.pirita-faq .accordion-button{
  background:#082f43;
  color:#eaf8ff;
  border-radius:5px!important;
  font-weight:900;
  box-shadow:none;
}
.pirita-faq .accordion-button:not(.collapsed){
  background:#0d3e58;
  color:#fff;
}
.pirita-faq .accordion-body{
  background:#061d2b;
  color:#bcd2dc;
  border-radius:0 0 5px 5px;
}

.page-top{padding-top:105px!important;min-height:70vh;background:#001b26}
.card-pirita,.news-card,.rank-box{
  background:#061d2b;
  border:1px solid rgba(36,168,242,.24);
  border-radius:8px;
  padding:24px;
}
.rank-box h3{font-family:'Fredoka';color:#fff}


/* Ranking automático */
.rank-page{background:radial-gradient(circle at top,rgba(36,168,242,.18),transparent 35%),#00131d}
.rank-hero h1{font-size:clamp(38px,5vw,64px);font-family:'Fredoka';color:#fff;text-shadow:0 8px 26px rgba(0,0,0,.45)}
.rank-hero p{color:#b8cfda;max-width:720px;margin:0 auto;font-size:16px}
.rank-kicker{display:inline-flex;margin-bottom:12px;padding:7px 14px;border-radius:999px;background:rgba(255,159,28,.16);border:1px solid rgba(255,159,28,.35);color:#ffd79a;font-weight:900;text-transform:uppercase;font-size:12px;letter-spacing:.08em}
.rank-card-pro{background:linear-gradient(180deg,#082b40,#051722);border:1px solid rgba(36,168,242,.28);border-radius:18px;padding:22px;box-shadow:0 24px 70px rgba(0,0,0,.28);position:relative;overflow:hidden}
.rank-card-pro:before{content:"";position:absolute;inset:-80px -80px auto auto;width:170px;height:170px;border-radius:50%;background:rgba(36,168,242,.13)}
.rank-card-head{display:flex;align-items:center;gap:14px;margin-bottom:18px;position:relative;z-index:1}
.rank-icon{width:54px;height:54px;border-radius:16px;display:flex;align-items:center;justify-content:center;background:#0d3e58;font-size:28px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}
.rank-card-head h2{font-size:27px;margin:0;color:#fff}
.rank-card-head p{margin:0;color:#8fb1c0;font-size:13px}
.rank-champion{display:flex;align-items:center;gap:14px;padding:15px;border-radius:16px;background:linear-gradient(90deg,rgba(255,159,28,.20),rgba(36,168,242,.12));border:1px solid rgba(255,255,255,.08);margin-bottom:16px}
.rank-champion img{width:72px;height:72px;border-radius:14px;image-rendering:pixelated;background:#071822}
.rank-champion span{display:block;color:#ffd79a;font-size:11px;text-transform:uppercase;font-weight:900}
.rank-champion strong{display:block;color:#fff;font-size:22px;line-height:1.1}
.rank-champion small{color:#cce8f4;font-weight:800}
.rank-list{display:flex;flex-direction:column;gap:9px}
.rank-row-pro{display:grid;grid-template-columns:48px 36px 1fr auto;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.055)}
.rank-row-pro img{width:36px;height:36px;border-radius:9px;image-rendering:pixelated;background:#071822}
.rank-row-pro strong{color:#fff;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rank-row-pro em{font-style:normal;color:#9ee7ff;font-weight:900}
.rank-pos{color:#88a7b5;font-weight:900}
.rank-top-1{background:rgba(255,159,28,.14);border-color:rgba(255,159,28,.26)}
.rank-top-2{background:rgba(200,220,235,.10)}
.rank-top-3{background:rgba(205,127,50,.12)}
.rank-empty{padding:20px;text-align:center;color:#9bb4c0;background:rgba(255,255,255,.04);border-radius:12px}

.site-footer{
  background:#030303;
  color:#8b9ba3;
  padding:28px 0;
  font-size:13px;
}
.site-footer strong{color:#fff}
.socials a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:28px;height:28px;
  border-radius:50%;
  background:#111;
  color:#fff;
  text-decoration:none;
  margin-left:6px;
  font-size:10px;
}

@media(max-width:991px){
  .highlight-row{grid-template-columns:repeat(2,1fr)}
  .craft-hero{text-align:center}
  .craft-hero p{margin-left:auto;margin-right:auto}
}
@media(max-width:575px){
  .highlight-row{grid-template-columns:1fr}
  .server-box{padding:22px}
}


/* Hero atualizado com imagem real do spawn */
.craft-hero,
.hero,
.home-hero{
    background:
      linear-gradient(rgba(0,0,0,.65), rgba(0,0,0,.75)),
      url('/assets/img/hero-bg.png') center center / cover no-repeat !important;
    min-height: 720px;
}

.hero-overlay{
    background: rgba(0,0,0,.35);
}

.hero-content{
    position: relative;
    z-index: 2;
}

/* VIP SkyBlock */
.vip-area{
  background: linear-gradient(180deg, rgba(7,11,25,.96), rgba(13,22,42,.96));
  position: relative;
}
.vip-card{
  height: 100%;
  padding: 26px 20px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 18px;
  background: rgba(255,255,255,.06);
  box-shadow: 0 18px 40px rgba(0,0,0,.22);
  text-align: center;
  transition: transform .2s ease, border-color .2s ease, background .2s ease;
}
.vip-card:hover{
  transform: translateY(-5px);
  border-color: rgba(255,210,75,.55);
  background: rgba(255,255,255,.09);
}
.vip-icon{
  width: 58px;
  height: 58px;
  display: grid;
  place-items: center;
  margin: 0 auto 14px;
  border-radius: 16px;
  background: rgba(255,210,75,.14);
  font-size: 30px;
}
.vip-card h3{
  color: #fff;
  font-size: 1.05rem;
  font-weight: 900;
  margin-bottom: 10px;
}
.vip-card p{
  color: rgba(255,255,255,.74);
  margin: 0;
  font-size: .94rem;
}

/* Página de Regras */
.rules-hero{
  position:relative;
  padding-top:130px!important;
  padding-bottom:70px;
  min-height:auto!important;
  overflow:hidden;
  background:
    linear-gradient(90deg,rgba(2,10,18,.96),rgba(2,10,18,.72)),
    radial-gradient(circle at 18% 32%,rgba(255,213,79,.22),transparent 34%),
    radial-gradient(circle at 82% 44%,rgba(35,209,139,.14),transparent 32%),
    url('/assets/img/hero-bg.png') center center / cover no-repeat!important;
}
.rules-hero h1{font-size:clamp(42px,6vw,72px);font-weight:900;margin:14px 0;color:#fff}
.rules-hero p{color:#cde5ef;font-size:17px;line-height:1.7;max-width:760px}
.rules-badge{display:inline-flex;align-items:center;gap:8px;background:rgba(36,168,242,.14);border:1px solid rgba(36,168,242,.35);color:#9de5ff;border-radius:999px;padding:8px 14px;font-weight:900;font-size:13px}
.rules-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.rules-warning-card{background:rgba(6,29,43,.86);border:1px solid rgba(255,159,28,.36);border-radius:18px;padding:24px;box-shadow:0 20px 45px rgba(0,0,0,.32)}
.rules-warning-card strong{color:#ffbf57;font-size:20px;font-family:'Fredoka',Arial,sans-serif}
.rules-warning-card p{margin:10px 0 0;color:#d6e7ee;font-size:14px}
.rules-area{background:linear-gradient(180deg,#001b26,#04111a)}
.rules-layout{display:grid;grid-template-columns:270px 1fr;gap:26px;align-items:start}
.rules-menu{position:sticky;top:78px;background:#061d2b;border:1px solid rgba(36,168,242,.25);border-radius:14px;padding:18px;box-shadow:0 18px 40px rgba(0,0,0,.22)}
.rules-menu h3{font-size:20px;margin:0 0 12px;color:#fff}
.rules-menu a{display:block;text-decoration:none;color:#cde5ef;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.06);border-radius:9px;padding:10px 12px;margin-bottom:8px;font-size:13px;font-weight:800;transition:.2s}
.rules-menu a:hover{background:#0d3e58;color:#fff;border-color:rgba(36,168,242,.45);transform:translateX(3px)}
.rules-content{min-width:0}
.rule-card{background:#061d2b;border:1px solid rgba(36,168,242,.24);border-radius:16px;padding:26px;margin-bottom:20px;box-shadow:0 16px 38px rgba(0,0,0,.20)}
.rule-card h2{color:#fff;font-size:26px;margin-bottom:14px}
.rule-card p{color:#c5dce6;line-height:1.7}
.rule-card ul{padding-left:20px;margin-bottom:0}
.rule-card li{color:#d2e6ee;margin:10px 0;line-height:1.55}
.rule-card li::marker{color:var(--blue)}
.rule-punishment{margin-top:18px;background:rgba(36,168,242,.10);border-left:4px solid var(--blue);border-radius:10px;padding:12px 14px;color:#dff4ff;font-weight:800;font-size:14px}
.rule-punishment.danger{background:rgba(255,72,72,.10);border-left-color:#ff5555;color:#ffe2e2}
.rules-table{border-radius:12px;overflow:hidden;margin-bottom:0}
.rules-table th{color:#9de5ff}
.final-card{background:linear-gradient(135deg,#082f43,#062332);border-color:rgba(35,209,139,.35)}
.final-card strong{font-family:'Fredoka',Arial,sans-serif;color:#23d18b;font-size:20px}
.final-card span{color:#bdd8e3}
@media(max-width:991px){.rules-layout{grid-template-columns:1fr}.rules-menu{position:relative;top:auto}.rules-menu a{display:inline-block;margin-right:6px}.rules-hero{text-align:center}.rules-hero p{margin-left:auto;margin-right:auto}.rules-actions{justify-content:center}}
@media(max-width:575px){.rule-card{padding:20px}.rules-menu a{display:block;margin-right:0}.rules-hero{padding-top:105px!important}}

/* Página de Equipe */
.team-hero{
  position:relative;
  padding:145px 0 82px;
  background:
    linear-gradient(90deg,rgba(2,10,18,.96),rgba(2,10,18,.72)),
    radial-gradient(circle at 18% 32%,rgba(255,213,79,.22),transparent 34%),
    radial-gradient(circle at 82% 44%,rgba(35,209,139,.14),transparent 32%),
    url('/assets/img/hero-bg.png') center center / cover no-repeat;
  overflow:hidden;
}
.team-hero:after{
  content:"";
  position:absolute;
  inset:auto 0 0;
  height:90px;
  background:linear-gradient(180deg,transparent,#04111a);
}
.team-hero .container{position:relative;z-index:2;text-align:center}
.team-badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:9px 16px;
  border-radius:999px;
  background:rgba(255,213,79,.14);
  border:1px solid rgba(255,213,79,.42);
  color:#ffe28a;
  font-weight:900;
  font-size:13px;
  text-transform:uppercase;
  letter-spacing:.6px;
}
.team-hero h1{
  color:#fff;
  font-size:clamp(42px,6vw,76px);
  font-weight:900;
  margin:16px 0 12px;
  font-family:'Fredoka',Arial,sans-serif;
  text-shadow:0 6px 24px rgba(0,0,0,.45);
}
.team-hero p{
  color:#d8edf5;
  max-width:760px;
  margin:0 auto;
  line-height:1.7;
  font-size:17px;
}
.team-page{background:linear-gradient(180deg,#04111a,#071627 54%,#031018)}
.team-group{margin-bottom:54px}
.team-group-head{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:24px;
  margin-bottom:22px;
  padding-bottom:16px;
  border-bottom:1px solid rgba(255,255,255,.09);
}
.team-group-head > div{display:flex;align-items:center;gap:12px}
.team-group-icon{
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  border-radius:14px;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.12);
  font-size:25px;
}
.team-group h2{
  color:#fff;
  margin:0;
  font-size:31px;
  font-weight:900;
  font-family:'Fredoka',Arial,sans-serif;
}
.team-group-head p{color:#bed5df;margin:0;max-width:560px;text-align:right;line-height:1.55}
.team-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:24px}
.team-card{
  position:relative;
  overflow:hidden;
  min-height:385px;
  border-radius:22px;
  padding:26px 20px 22px;
  background:rgba(7,27,43,.88);
  border:1px solid rgba(255,255,255,.10);
  box-shadow:0 22px 48px rgba(0,0,0,.28);
  text-align:center;
  transition:transform .22s ease,border-color .22s ease,background .22s ease;
}
.team-card:before{
  content:"";
  position:absolute;
  inset:0;
  opacity:.28;
  pointer-events:none;
  background:radial-gradient(circle at top,rgba(255,255,255,.25),transparent 42%);
}
.team-card:hover{transform:translateY(-7px);background:rgba(8,35,55,.94)}
.team-card.admin{border-top:5px solid #ff5353}
.team-card.mod{border-top:5px solid #3aa7ff}
.team-card.helper{border-top:5px solid #23d18b}
.team-card.admin:hover{border-color:rgba(255,83,83,.62)}
.team-card.mod:hover{border-color:rgba(58,167,255,.62)}
.team-card.helper:hover{border-color:rgba(35,209,139,.62)}
.skin-frame{
  position:relative;
  z-index:1;
  height:250px;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  margin-bottom:18px;
}
.skin-frame img{
  max-height:245px;
  width:auto;
  image-rendering:pixelated;
  filter:drop-shadow(0 18px 18px rgba(0,0,0,.42));
  transition:transform .22s ease;
}
.team-card:hover .skin-frame img{transform:scale(1.04)}
.soon-skin{
  width:135px;
  height:210px;
  border-radius:24px;
  display:grid;
  place-items:center;
  color:rgba(255,255,255,.85);
  font-size:82px;
  font-weight:900;
  background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.04));
  border:2px dashed rgba(255,255,255,.24);
}
.team-info{position:relative;z-index:1}
.team-info h3{color:#fff;font-size:23px;font-weight:900;margin:0 0 8px;font-family:'Fredoka',Arial,sans-serif}
.team-info span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  padding:7px 14px;
  color:#07111a;
  background:#ffd54f;
  font-weight:900;
  font-size:13px;
}
.team-card.admin .team-info span{background:#ff6666;color:#fff}
.team-card.mod .team-info span{background:#3aa7ff;color:#fff}
.team-card.helper .team-info span{background:#23d18b;color:#062216}
@media(max-width:767px){
  .team-group-head{display:block;text-align:center}
  .team-group-head > div{justify-content:center;margin-bottom:12px}
  .team-group-head p{text-align:center;margin:0 auto}
  .team-card{min-height:360px}
}


/* Login do Admin */
.admin-login-body{
  min-height:100vh;
  background:
    linear-gradient(135deg,rgba(2,11,16,.92),rgba(0,27,38,.88)),
    radial-gradient(circle at 20% 20%,rgba(36,168,242,.28),transparent 34%),
    radial-gradient(circle at 80% 80%,rgba(35,209,139,.18),transparent 32%),
    url('/assets/img/hero-bg.png') center center / cover no-repeat;
  color:var(--text);
}
.admin-login-page{
  min-height:100vh;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:32px 16px;
}
.admin-login-card{
  width:min(100%,455px);
  padding:34px 30px 28px;
  border-radius:24px;
  background:rgba(6,29,43,.90);
  border:1px solid rgba(36,168,242,.32);
  box-shadow:0 28px 70px rgba(0,0,0,.46), inset 0 1px 0 rgba(255,255,255,.06);
  backdrop-filter:blur(10px);
}
.admin-login-brand{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:22px;
}
.admin-login-brand img{
  width:58px;
  height:58px;
  object-fit:contain;
  filter:drop-shadow(0 0 16px rgba(36,168,242,.35));
}
.admin-login-brand span{
  color:#9de5ff;
  font-weight:900;
  font-size:13px;
  text-transform:uppercase;
  letter-spacing:.8px;
}
.admin-login-card h1{
  margin:0 0 8px;
  color:#fff;
  font-size:34px;
  font-weight:900;
}
.admin-login-subtitle{
  color:#bcd6e2;
  margin-bottom:24px;
  line-height:1.55;
  font-size:14px;
}
.admin-login-card .form-label{
  color:#dff4ff;
  font-size:13px;
  font-weight:900;
  margin-bottom:8px;
}
.admin-input-wrap{
  position:relative;
}
.admin-input-wrap span{
  position:absolute;
  left:15px;
  top:50%;
  transform:translateY(-50%);
  z-index:2;
  opacity:.9;
}
.admin-input-wrap .form-control{
  height:52px;
  padding-left:48px;
  color:#fff;
  background:rgba(2,11,16,.58);
  border:1px solid rgba(255,255,255,.12);
  border-radius:14px;
  box-shadow:none;
}
.admin-input-wrap .form-control::placeholder{color:#7898a7}
.admin-input-wrap .form-control:focus{
  background:rgba(2,11,16,.75);
  color:#fff;
  border-color:rgba(36,168,242,.75);
  box-shadow:0 0 0 .2rem rgba(36,168,242,.15);
}
.admin-login-btn{
  height:52px;
  border:0;
  border-radius:14px;
  background:linear-gradient(135deg,var(--blue),var(--green));
  color:#fff;
  font-weight:900;
  box-shadow:0 14px 30px rgba(36,168,242,.22);
}
.admin-login-btn:hover{
  color:#fff;
  filter:brightness(1.08);
  transform:translateY(-1px);
}
.admin-alert{
  border:0;
  border-radius:14px;
  background:rgba(255,83,83,.14);
  color:#ffdede;
}
.admin-back-link{
  display:block;
  margin-top:22px;
  color:#9de5ff;
  text-align:center;
  font-size:13px;
  font-weight:800;
  text-decoration:none;
}
.admin-back-link:hover{color:#fff}
@media(max-width:575px){.admin-login-card{padding:28px 20px}.admin-login-card h1{font-size:29px}}


/* Painel Admin separado do site principal */
.admin-panel-body{background:#04111a;color:#eef8ff;font-family:'Inter',Arial,sans-serif;min-height:100vh}
.admin-shell{display:grid;grid-template-columns:280px 1fr;min-height:100vh}
.admin-sidebar{background:linear-gradient(180deg,#061d2b,#031018);border-right:1px solid rgba(36,168,242,.20);padding:22px;position:sticky;top:0;height:100vh}
.admin-brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:#fff;margin-bottom:28px}
.admin-brand img{width:54px;height:54px;object-fit:contain;filter:drop-shadow(0 0 12px rgba(36,168,242,.40))}
.admin-brand span{line-height:1.05;color:#a9cfe0;font-weight:800}.admin-brand strong{color:#fff;font-size:22px;font-family:'Fredoka'}
.admin-menu{display:grid;gap:9px}.admin-menu a{display:block;text-decoration:none;color:#d8eef8;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.07);border-radius:13px;padding:13px 14px;font-weight:900;transition:.18s}.admin-menu a:hover{background:#0d3e58;color:#fff;transform:translateX(3px);border-color:rgba(36,168,242,.38)}.admin-menu .logout{background:rgba(255,83,83,.12);border-color:rgba(255,83,83,.22);color:#ffdede}
.admin-content{padding:34px;min-width:0}.admin-title{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:24px}.admin-title h1{font-size:34px;margin:0;color:#fff}.admin-title p{color:#a9c1cc;margin:6px 0 0}
.admin-card{background:#061d2b;border:1px solid rgba(36,168,242,.23);border-radius:18px;padding:22px;box-shadow:0 18px 42px rgba(0,0,0,.22)}
.admin-stat{background:linear-gradient(135deg,#082f43,#061d2b);border:1px solid rgba(36,168,242,.22);border-radius:18px;padding:20px}.admin-stat span{display:block;color:#9de5ff;font-weight:900;font-size:13px;text-transform:uppercase}.admin-stat strong{display:block;font-size:34px;color:#fff;font-family:'Fredoka'}
.admin-table{color:#eaf8ff}.admin-table th{color:#9de5ff}.admin-thumb{width:72px;height:46px;object-fit:cover;border-radius:8px;background:#031018;border:1px solid rgba(255,255,255,.08)}
.admin-form .form-control,.admin-form .form-select,.admin-form textarea{background:#031925;border:1px solid rgba(255,255,255,.12);color:#fff;border-radius:12px}.admin-form .form-control:focus,.admin-form .form-select:focus,.admin-form textarea:focus{background:#041d2b;color:#fff;border-color:rgba(36,168,242,.65);box-shadow:0 0 0 .2rem rgba(36,168,242,.13)}.admin-form label{font-weight:900;color:#dff4ff;margin-bottom:8px}.admin-help{color:#9fb7c4;font-size:13px}.admin-preview{max-width:220px;max-height:120px;border-radius:12px;border:1px solid rgba(255,255,255,.10);object-fit:cover;background:#031018}.admin-actions{display:flex;gap:8px;flex-wrap:wrap}
.news-img{width:100%;height:170px;object-fit:cover;border-radius:10px;margin-bottom:14px;background:#031018}.post-detail-img{width:100%;max-height:380px;object-fit:cover;border-radius:18px;margin-bottom:22px}
@media(max-width:991px){.admin-shell{grid-template-columns:1fr}.admin-sidebar{position:relative;height:auto}.admin-menu{grid-template-columns:repeat(2,1fr)}.admin-content{padding:22px}}@media(max-width:575px){.admin-menu{grid-template-columns:1fr}.admin-title{display:block}.admin-content{padding:16px}.admin-sidebar{padding:16px}}


.admin-panel-body,.admin-shell{min-height:100vh}.admin-content{display:flex;flex-direction:column;min-height:100vh}.admin-content>*:last-child{margin-top:auto}
