:root{
  --bg1:#070c16;
  --bg2:#0a1327;
  --card:rgba(255,255,255,0.06);
  --card2:rgba(255,255,255,0.04);
  --border:rgba(255,255,255,0.12);
  --text:#e8eefc;
  --muted:rgba(232,238,252,0.75);
  --primary:#4f7cff;
  --danger:#ff5f73;
  --success:#39d98a;
}
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family: system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  color:var(--text);
  background: radial-gradient(1200px 700px at 30% 0%, rgba(79,124,255,0.18), transparent 55%),
              radial-gradient(900px 600px at 90% 10%, rgba(57,217,138,0.10), transparent 50%),
              linear-gradient(180deg, var(--bg1), var(--bg2));
}

.container{max-width:1100px;margin:0 auto;padding:24px 16px}

.card{
  background: linear-gradient(180deg, rgba(255,255,255,0.06), rgba(255,255,255,0.03));
  border: 1px solid var(--border);
  border-radius: 18px;
  box-shadow: 0 12px 40px rgba(0,0,0,0.35);
}
.card.padded{padding:20px}

.h1{font-size:28px;margin:0 0 6px 0}
.sub{color:var(--muted);margin:0 0 18px 0}

.grid{display:grid;gap:18px}
.grid.two{grid-template-columns:1fr 1fr}
@media(max-width:900px){.grid.two{grid-template-columns:1fr}}

.field{display:flex;flex-direction:column;gap:6px;margin:10px 0}
label{font-size:13px;color:var(--muted)}
input,select,textarea{
  width:100%;
  padding:12px 12px;
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,0.14);
  background: rgba(0,0,0,0.20);
  color: var(--text);
  outline:none;
}
textarea{min-height:90px;resize:vertical}

.row{display:flex;gap:12px}
.row > *{flex:1}
@media(max-width:700px){.row{flex-direction:column}}

.btn{
  width:100%;
  padding:12px 14px;
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,0.14);
  background: rgba(255,255,255,0.06);
  color: var(--text);
  cursor:pointer;
  font-weight:600;
}
.btn.primary{background:var(--primary);border:0}
.btn.danger{background:rgba(255,95,115,0.15);border:1px solid rgba(255,95,115,0.35)}
.btn.ghost{background:transparent}

.alert{margin-top:12px;padding:12px 12px;border-radius:12px;border:1px solid var(--border);background:rgba(0,0,0,0.22)}
.alert.success{border-color:rgba(57,217,138,0.45);color:var(--success)}
.alert.danger{border-color:rgba(255,95,115,0.45);color:var(--danger)}

.pills{display:flex;gap:10px;flex-wrap:wrap}
.pill{padding:9px 12px;border-radius:999px;border:1px solid rgba(255,255,255,0.14);background:rgba(255,255,255,0.06);cursor:pointer;font-weight:700}
.pill.active{background:rgba(79,124,255,0.25);border-color:rgba(79,124,255,0.45)}

/* Navbar */
#mc-navbar{
  position:sticky;top:0;z-index:9999;
  background: rgba(11,18,32,0.92);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid rgba(255,255,255,0.10);
}
#mc-navbar .inner{max-width:1100px;margin:0 auto;padding:10px 16px;display:flex;align-items:center;justify-content:space-between;gap:10px}
#mc-navbar a{color:var(--text);text-decoration:none;opacity:.95}
#mc-navbar .left{display:flex;align-items:center;gap:12px}
#mc-navbar .brand{font-weight:800;letter-spacing:.2px}
#mc-navbar .links{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
#mc-navbar .navbtn{padding:7px 10px;border-radius:10px;border:1px solid rgba(255,255,255,0.14);background:rgba(255,255,255,0.06);font-size:13px}
#mc-navbar .navbtn.primary{border:0;background:var(--primary)}
#mc-navbar .session{font-size:13px;opacity:.85;display:flex;gap:8px;align-items:center;flex-wrap:wrap}
#mc-navbar code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;opacity:.9}


/* --- convites / atualizar-cadastro --- */
.grid2{display:grid;grid-template-columns:1fr;gap:16px;margin-top:16px}
@media(min-width:900px){.grid2{grid-template-columns:1fr 1fr}}
.card-inner{border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:16px;background:rgba(255,255,255,.03)}
.form{display:flex;flex-direction:column;gap:10px;max-width:560px}
.label{opacity:.9;font-size:14px;margin-top:6px}
.input{padding:12px 14px;border-radius:12px;border:1px solid rgba(255,255,255,.10);background:rgba(0,0,0,.20);color:#fff}
.btn{padding:12px 16px;border-radius:12px;border:0;cursor:pointer}
.btn-primary{background:#4f7cff;color:#fff}
.btn-secondary{background:rgba(255,255,255,.10);color:#fff}
.alert{padding:12px 14px;border-radius:12px;border:1px solid rgba(255,255,255,.10);background:rgba(0,0,0,.25)}
.alert.success{border-color:rgba(60,200,120,.5)}
.alert.warn{border-color:rgba(240,200,60,.5)}
.alert.danger{border-color:rgba(240,80,80,.5)}
.muted{opacity:.8}
