/* ============================================
   RESCUETECH — tema futurista preto/amarelo
   ============================================ */
@import url('https://fonts.googleapis.com/css2?family=Archivo+Black&family=JetBrains+Mono:wght@400;500;700&family=Inter:wght@400;500;600;700;800&display=swap');

:root{
  --black: #060606;
  --panel: #0e0e0e;
  --panel-2: #161616;
  --yellow: #FFD400;
  --yellow-soft: rgba(255,212,0,0.12);
  --yellow-dim: #9c8200;
  --off: #F3F1E7;
  --gray: #888880;
  --line: #232320;
  --ok: #3ddc6a;
  --danger: #ff5757;
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  background:var(--black);
  color:var(--off);
  font-family:'Inter',sans-serif;
  min-height:100vh;
  position:relative;
}
a{color:inherit;text-decoration:none;}
.mono{font-family:'JetBrains Mono',monospace;}

/* grid + scanline background */
.bg-fx{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden;}
.bg-fx .grid{
  position:absolute;inset:0;
  background-image:
    linear-gradient(rgba(255,212,0,0.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,212,0,0.04) 1px, transparent 1px);
  background-size:44px 44px;
  mask-image:radial-gradient(ellipse 90% 70% at 50% 20%, #000 30%, transparent 100%);
}
.bg-fx .scan{
  position:absolute;left:0;right:0;height:140px;
  background:linear-gradient(180deg, transparent, rgba(255,212,0,0.06), transparent);
  animation:scan 7s linear infinite;
}
@keyframes scan{
  0%{top:-140px;}
  100%{top:100%;}
}
.bg-fx .glow{
  position:absolute;width:680px;height:680px;border-radius:50%;
  background:radial-gradient(circle, rgba(255,212,0,0.10), transparent 70%);
  top:-220px;left:50%;transform:translateX(-50%);
  filter:blur(10px);
}

/* ===== layout shells ===== */
.wrap{max-width:1140px;margin:0 auto;padding:0 24px;position:relative;z-index:1;}
.center-screen{
  min-height:100vh;display:flex;align-items:center;justify-content:center;
  position:relative;z-index:1;padding:40px 20px;
}

/* ===== header ===== */
header{
  position:sticky;top:0;z-index:50;
  background:rgba(6,6,6,0.85);backdrop-filter:blur(10px);
  border-bottom:1px solid var(--line);
}
.nav{display:flex;align-items:center;justify-content:space-between;height:72px;position:relative;z-index:1;}
.logo{
  font-family:'Archivo Black',sans-serif;font-size:19px;letter-spacing:-0.5px;
  display:flex;align-items:center;gap:10px;
}
.logo .dot{width:9px;height:9px;background:var(--yellow);box-shadow:0 0 12px var(--yellow);animation:pulse 2s infinite;}
@keyframes pulse{0%,100%{opacity:1;}50%{opacity:.35;}}
.nav-links{display:flex;gap:32px;font-size:14px;font-weight:600;}
.nav-links a{color:var(--gray);transition:color .2s;position:relative;}
.nav-links a:hover{color:var(--yellow);}
.user-chip{
  font-family:'JetBrains Mono',monospace;font-size:12px;color:var(--yellow);
  border:1px solid var(--yellow-dim);padding:8px 14px;display:flex;align-items:center;gap:8px;
}
.user-chip::before{content:'';width:6px;height:6px;background:var(--ok);border-radius:50%;}

/* ===== glitch heading ===== */
.glitch{position:relative;display:inline-block;}
.glitch:hover{animation:glitchShake .25s steps(2) infinite;}
@keyframes glitchShake{
  0%{transform:translate(0,0);}
  25%{transform:translate(-1px,1px);}
  50%{transform:translate(1px,-1px);}
  75%{transform:translate(-1px,-1px);}
  100%{transform:translate(0,0);}
}

/* ===== buttons ===== */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  font-weight:800;font-size:13px;text-transform:uppercase;letter-spacing:0.6px;
  padding:15px 26px;border:2px solid transparent;cursor:pointer;
  transition:all .2s;width:100%;
}
.btn-primary{background:var(--yellow);color:var(--black);border-color:var(--yellow);box-shadow:0 0 0 rgba(255,212,0,0);}
.btn-primary:hover{box-shadow:0 0 24px rgba(255,212,0,0.45);transform:translateY(-1px);}
.btn-ghost{background:transparent;border-color:var(--line);color:var(--off);}
.btn-ghost:hover{border-color:var(--yellow);color:var(--yellow);}

/* ===== auth cards (login/register) ===== */
.auth-card{
  width:100%;max-width:440px;
  background:var(--panel);border:1px solid var(--line);
  padding:42px 38px;position:relative;
}
.auth-card::before{
  content:'';position:absolute;top:0;left:0;right:0;height:2px;
  background:linear-gradient(90deg, transparent, var(--yellow), transparent);
}
.auth-tag{
  font-family:'JetBrains Mono',monospace;font-size:12px;color:var(--yellow);
  text-transform:uppercase;letter-spacing:1.5px;margin-bottom:14px;
  display:flex;align-items:center;gap:8px;
}
.auth-tag::before{content:'';width:6px;height:6px;background:var(--yellow);box-shadow:0 0 8px var(--yellow);}
.auth-card h1{
  font-family:'Archivo Black',sans-serif;font-size:30px;letter-spacing:-0.5px;margin-bottom:8px;
}
.auth-card p.sub{color:var(--gray);font-size:14px;margin-bottom:30px;}

.field{margin-bottom:18px;}
.field label{
  display:block;font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--gray);
  text-transform:uppercase;letter-spacing:1px;margin-bottom:8px;
}
.field input{
  width:100%;background:var(--panel-2);border:1px solid var(--line);
  color:var(--off);padding:13px 14px;font-size:14px;font-family:'Inter',sans-serif;
  transition:border-color .2s, box-shadow .2s;
}
.field input:focus{outline:none;border-color:var(--yellow-dim);box-shadow:0 0 0 3px var(--yellow-soft);}
.field input::placeholder{color:#55554f;}

.alert{
  font-family:'JetBrains Mono',monospace;font-size:13px;
  padding:12px 14px;margin-bottom:20px;border:1px solid;
}
.alert-error{color:var(--danger);border-color:var(--danger);background:rgba(255,87,87,0.08);}
.alert-ok{color:var(--ok);border-color:var(--ok);background:rgba(61,220,106,0.08);}

.auth-foot{
  margin-top:24px;padding-top:20px;border-top:1px solid var(--line);
  font-size:13px;color:var(--gray);text-align:center;
}
.auth-foot a{color:var(--yellow);font-weight:600;}

/* ===== dashboard / downloads console ===== */
.page-head{padding:64px 0 40px;border-bottom:1px solid var(--line);position:relative;z-index:1;}
.page-head .sec-tag{
  font-family:'JetBrains Mono',monospace;font-size:12px;color:var(--yellow);
  text-transform:uppercase;letter-spacing:1.5px;margin-bottom:14px;
  display:flex;align-items:center;gap:8px;
}
.page-head h1{font-family:'Archivo Black',sans-serif;font-size:clamp(30px,5vw,48px);letter-spacing:-1px;}
.page-head p{color:var(--gray);margin-top:12px;max-width:560px;}

.sec{padding:50px 0 90px;position:relative;z-index:1;}

.console{background:var(--panel);border:1px solid var(--line);box-shadow:0 0 40px rgba(255,212,0,0.03);}
.console-bar{
  display:flex;align-items:center;justify-content:space-between;
  padding:14px 20px;border-bottom:1px solid var(--line);background:var(--panel-2);
}
.console-bar .dots{display:flex;gap:7px;}
.console-bar .dots span{width:10px;height:10px;border-radius:50%;background:var(--line);}
.console-bar .dots span:nth-child(1){background:#ff5f56;}
.console-bar .dots span:nth-child(2){background:#ffbd2e;}
.console-bar .dots span:nth-child(3){background:#27c93f;}
.console-bar .status{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--ok);display:flex;align-items:center;gap:6px;}
.console-bar .status::before{content:'';width:6px;height:6px;background:var(--ok);border-radius:50%;box-shadow:0 0 6px var(--ok);}

.dl-row{
  display:grid;grid-template-columns:50px 1fr 130px 100px 130px;
  align-items:center;gap:18px;padding:18px 22px;border-bottom:1px solid var(--line);
  font-size:14px;transition:background .2s;
}
.dl-row:hover{background:rgba(255,212,0,0.025);}
.dl-row:last-child{border-bottom:none;}
.dl-row.head{
  font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--gray);
  text-transform:uppercase;letter-spacing:0.8px;background:rgba(255,212,0,0.03);
}
.dl-icon{
  width:38px;height:38px;background:var(--panel-2);border:1px solid var(--line);
  display:flex;align-items:center;justify-content:center;
  font-family:'Archivo Black',sans-serif;color:var(--yellow);font-size:13px;
}
.dl-name{font-weight:600;}
.dl-name span{display:block;color:var(--gray);font-size:12px;font-weight:400;margin-top:3px;font-family:'JetBrains Mono',monospace;}
.tag{
  font-family:'JetBrains Mono',monospace;font-size:11px;padding:4px 9px;border:1px solid;
  display:inline-block;text-transform:uppercase;letter-spacing:0.5px;width:fit-content;
}
.tag.testado{color:var(--ok);border-color:var(--ok);}
.tag.atualizado{color:var(--yellow);border-color:var(--yellow-dim);}
.tag.beta{color:#7aa7ff;border-color:#3e5fa0;}
.dl-size{color:var(--gray);font-family:'JetBrains Mono',monospace;font-size:13px;}
.dl-btn{
  background:transparent;border:1px solid var(--yellow-dim);color:var(--yellow);
  font-family:'JetBrains Mono',monospace;font-size:12px;font-weight:500;
  padding:9px 14px;text-align:center;transition:all .2s;
}
.dl-btn:hover{background:var(--yellow);color:var(--black);border-color:var(--yellow);box-shadow:0 0 18px rgba(255,212,0,0.4);}

.empty-state{padding:50px 22px;text-align:center;color:var(--gray);font-family:'JetBrains Mono',monospace;font-size:13px;}

footer{border-top:1px solid var(--line);padding:30px 0;position:relative;z-index:1;}
.foot-row{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;}
.foot-row span{font-family:'JetBrains Mono',monospace;font-size:12px;color:var(--gray);}

@media(max-width:720px){
  .nav-links{display:none;}
  .dl-row{grid-template-columns:36px 1fr;row-gap:8px;}
  .dl-row .dl-size,.dl-row.head{display:none;}
  .dl-row .dl-btn{grid-column:1/-1;width:100%;}
  .dl-row .tag{grid-column:2/3;}
  .auth-card{padding:32px 24px;}
}

/* ===== admin panel ===== */
.admin-bar{
  display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:14px;margin-bottom:24px;
}
.btn-sm{
  display:inline-flex;align-items:center;gap:6px;
  font-family:'JetBrains Mono',monospace;font-size:12px;font-weight:600;
  padding:9px 16px;border:1px solid var(--yellow-dim);color:var(--yellow);
  background:transparent;cursor:pointer;text-transform:uppercase;letter-spacing:0.4px;
  transition:all .2s;width:auto;
}
.btn-sm:hover{background:var(--yellow);color:var(--black);}
.btn-sm.danger{border-color:var(--danger);color:var(--danger);}
.btn-sm.danger:hover{background:var(--danger);color:#fff;}

.admin-table{width:100%;border-collapse:collapse;font-size:14px;}
.admin-table th{
  text-align:left;font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--gray);
  text-transform:uppercase;letter-spacing:0.8px;padding:14px 16px;background:rgba(255,212,0,0.03);
  border-bottom:1px solid var(--line);
}
.admin-table td{padding:14px 16px;border-bottom:1px solid var(--line);vertical-align:middle;}
.admin-table tr:hover td{background:rgba(255,212,0,0.02);}
.admin-table .actions{display:flex;gap:8px;}

.form-card{background:var(--panel);border:1px solid var(--line);padding:32px;max-width:640px;}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
.field select{
  width:100%;background:var(--panel-2);border:1px solid var(--line);
  color:var(--off);padding:13px 14px;font-size:14px;font-family:'Inter',sans-serif;
}
.field .hint{font-size:12px;color:var(--gray);margin-top:6px;}
.field-divider{
  text-align:center;color:var(--gray);font-family:'JetBrains Mono',monospace;font-size:11px;
  text-transform:uppercase;letter-spacing:1px;margin:22px 0;position:relative;
}
.field-divider::before,.field-divider::after{
  content:'';position:absolute;top:50%;width:42%;height:1px;background:var(--line);
}
.field-divider::before{left:0;}
.field-divider::after{right:0;}

@media(max-width:600px){
  .form-row{grid-template-columns:1fr;}
  .admin-table{font-size:13px;}
  .admin-table th:nth-child(3), .admin-table td:nth-child(3){display:none;}
}

/* ===== admin layout with sidebar ===== */
.admin-shell{display:grid;grid-template-columns:240px 1fr;gap:0;min-height:calc(100vh - 73px);position:relative;z-index:1;}
.sidebar{
  border-right:1px solid var(--line);background:rgba(14,14,14,0.6);
  padding:28px 0;
}
.sidebar-title{
  font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--gray);
  text-transform:uppercase;letter-spacing:1.2px;padding:0 24px;margin-bottom:16px;
}
.sidebar-menu{list-style:none;}
.sidebar-menu li a{
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  padding:12px 24px;font-size:14px;font-weight:600;color:var(--gray);
  border-left:2px solid transparent;transition:all .15s;
}
.sidebar-menu li a:hover{color:var(--off);background:rgba(255,212,0,0.03);}
.sidebar-menu li a.active{
  color:var(--yellow);border-left-color:var(--yellow);background:rgba(255,212,0,0.06);
}
.sidebar-menu .icon{font-size:15px;width:20px;text-align:center;}
.sidebar-menu .count{
  font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--gray);
  background:var(--panel-2);border:1px solid var(--line);padding:2px 7px;
}
.sidebar-menu li a.active .count{color:var(--yellow);border-color:var(--yellow-dim);}
.sidebar-add{
  margin:20px 24px 0;padding-top:16px;border-top:1px solid var(--line);
}
.sidebar-add a{
  display:flex;align-items:center;gap:8px;font-family:'JetBrains Mono',monospace;
  font-size:12px;color:var(--yellow);text-transform:uppercase;letter-spacing:0.5px;
}
.sidebar-add a:hover{text-decoration:underline;}
.admin-content{padding:36px 32px;}
.admin-content .wrap{max-width:100%;padding:0;margin:0;}

@media(max-width:860px){
  .admin-shell{grid-template-columns:1fr;}
  .sidebar{border-right:none;border-bottom:1px solid var(--line);padding:16px 0;}
  .sidebar-menu{display:flex;overflow-x:auto;gap:4px;padding:0 16px;}
  .sidebar-menu li a{border-left:none;border-bottom:2px solid transparent;white-space:nowrap;padding:10px 14px;}
  .sidebar-menu li a.active{border-left-color:transparent;border-bottom-color:var(--yellow);}
  .sidebar-title,.sidebar-add{display:none;}
  .admin-content{padding:24px 18px;}
}

/* ===== login/register showcase carousel ===== */
.auth-shell{
  display:grid;grid-template-columns:1fr 460px;gap:0;
  min-height:100vh;position:relative;z-index:1;
}
.auth-shell .center-screen{min-height:100vh;}
.showcase{
  position:relative;overflow:hidden;
  border-left:1px solid var(--line);
  background:var(--panel);
}
.showcase .slide{
  position:absolute;inset:0;opacity:0;transition:opacity .9s ease;
  background-size:cover;background-position:center;
  display:flex;align-items:flex-end;
}
.showcase .slide.active{opacity:1;}
.showcase .slide::before{
  content:'';position:absolute;inset:0;
  background:linear-gradient(180deg, rgba(6,6,6,0.05) 0%, rgba(6,6,6,0.85) 85%);
}
.showcase .slide.placeholder{
  background:
    repeating-linear-gradient(135deg, rgba(255,212,0,0.04) 0 2px, transparent 2px 22px),
    linear-gradient(160deg, #141210 0%, #0a0a0a 100%);
}
.showcase .slide.placeholder .ph-icon{
  position:absolute;top:50%;left:50%;transform:translate(-50%,-58%);
  font-size:64px;opacity:.25;
}
.showcase .caption{
  position:relative;z-index:1;padding:36px 32px;
}
.showcase .caption .tag{
  font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--yellow);
  text-transform:uppercase;letter-spacing:1.5px;margin-bottom:10px;display:block;
}
.showcase .caption h3{
  font-family:'Archivo Black',sans-serif;font-size:26px;letter-spacing:-0.5px;color:var(--off);
}
.showcase .dots{
  position:absolute;bottom:22px;right:28px;z-index:2;display:flex;gap:8px;
}
.showcase .dots span{
  width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,0.25);
  cursor:pointer;transition:all .2s;
}
.showcase .dots span.active{background:var(--yellow);width:22px;border-radius:4px;}

@media(max-width:960px){
  .auth-shell{grid-template-columns:1fr;}
  .showcase{display:none;}
}
