/* join/assets/join.css – öffentliches Formular (Material) */

body{
  background: var(--app-bg);
  color: var(--text-color);
}

.page-wrap{max-width:960px;margin:0 auto;padding:16px;}

.public-topbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:12px;
  background: var(--public-header-bg);
  color: var(--public-header-text);
  border-radius: 14px;
  padding: 12px 14px;
}

.public-topbar .logo{height:38px;width:auto}

.badge{
  display:inline-flex;
  align-items:center;
  gap:6px;
  font-size:12px;
  padding:6px 10px;
  border-radius:999px;
  background: var(--badge-bg);
  color: var(--badge-text);
  font-weight:700;
}

.section-title{
  margin:18px 0 8px;
  font-size:14px;
  font-weight:800;
  color: var(--heading-color);
  opacity:.95;
}

.row-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media(max-width:720px){.row-2{grid-template-columns:1fr}}

.hp{position:absolute;left:-9999px;top:-9999px;opacity:0;height:0;width:0}

.small{font-size:12px;opacity:.86}
.note{font-size:13px;opacity:.9}

.legal-box{
  border:1px solid var(--border-color);
  border-radius:12px;
  background: var(--surface-bg);
  padding:12px;
  max-height:280px;
  overflow:auto
}

.check-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
@media(max-width:720px){.check-grid{grid-template-columns:1fr}}

.checkline{display:flex;gap:10px;align-items:flex-start}
.checkline input{margin-top:3px}

hr.soft{border:none;border-top:1px solid rgba(0,0,0,.08);margin:14px 0}

.site-footer{margin-top:14px;text-align:center;color:var(--muted-text);font-size:12px}
.site-footer a{color:var(--link-color);text-decoration:underline}
