/* Family Book Build 5.1.2 — Secure Family Setup layout */
.supabase-setup-page{
  min-height:100vh;
  box-sizing:border-box;
  padding:32px 20px;
  background:linear-gradient(180deg,#f5f0e7 0%,#fbf8f3 100%)!important;
}

.supabase-setup-page .join-card{
  width:min(680px,100%)!important;
  max-width:680px!important;
  box-sizing:border-box!important;
  padding:26px!important;
  border:1px solid #dfd4c7!important;
  border-radius:22px!important;
  background:#fff!important;
  color:#403a34!important;
  box-shadow:0 18px 48px rgba(62,48,35,.08)!important;
}

.supabase-setup-page .join-family-mark{
  margin-bottom:12px!important;
}

.supabase-setup-page .backend-account-chip{
  margin:14px 0 10px!important;
  padding:11px 13px!important;
  border:1px solid #ded3c7!important;
  border-radius:12px!important;
  background:#fbf8f3!important;
  color:#403a34!important;
}

.supabase-setup-page .setup-choice-tabs{
  margin:10px 0 18px!important;
  padding:5px!important;
  gap:5px!important;
  border-radius:13px!important;
  background:#ece7df!important;
}

.supabase-setup-page .setup-choice-tabs button{
  min-height:42px!important;
  border:0!important;
  border-radius:10px!important;
  background:transparent!important;
  color:#70665d!important;
  font-size:.76rem!important;
  font-weight:850!important;
}

.supabase-setup-page .setup-choice-tabs button.active{
  background:#fff!important;
  color:#315c43!important;
  box-shadow:0 2px 7px rgba(57,45,31,.08)!important;
}

.supabase-setup-page #backendCreateFamily,
.supabase-setup-page #backendJoinFamily{
  display:grid!important;
  gap:15px!important;
}

.supabase-setup-page #backendCreateFamily.hidden,
.supabase-setup-page #backendJoinFamily.hidden{
  display:none!important;
}

.supabase-setup-page .setup-name-grid{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:14px!important;
  align-items:start!important;
}

.supabase-setup-page .setup-field{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  gap:7px!important;
  min-width:0!important;
  margin:0!important;
  color:#504840!important;
  font-size:.72rem!important;
  font-weight:800!important;
  line-height:1.2!important;
}

.supabase-setup-page .setup-label-text{
  display:block!important;
  margin:0!important;
  color:#504840!important;
}

.supabase-setup-page .setup-field input{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  height:46px!important;
  box-sizing:border-box!important;
  margin:0!important;
  padding:0 13px!important;
  border:1px solid #d9cec1!important;
  border-radius:11px!important;
  background:#fcfaf7!important;
  color:#38322d!important;
  -webkit-text-fill-color:#38322d!important;
  font:500 .78rem/1.2 system-ui,-apple-system,"Segoe UI",sans-serif!important;
  outline:none!important;
  appearance:none!important;
}

.supabase-setup-page .setup-field input::placeholder{
  color:#9b9187!important;
  -webkit-text-fill-color:#9b9187!important;
  opacity:1!important;
}

.supabase-setup-page .setup-field input:focus{
  border-color:#78957f!important;
  box-shadow:0 0 0 3px rgba(49,92,67,.09)!important;
}

.supabase-setup-page .setup-family-field{
  width:100%!important;
}

.supabase-setup-page .field-hint{
  display:block!important;
  margin:0!important;
  color:#8b8178!important;
  font-size:.61rem!important;
  font-weight:500!important;
  line-height:1.4!important;
}

.supabase-setup-page .setup-create-button{
  width:100%!important;
  min-height:50px!important;
  margin-top:1px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  border:1px solid #315c43!important;
  border-radius:12px!important;
  background:#315c43!important;
  color:#fff!important;
  font-size:.76rem!important;
  font-weight:900!important;
  box-shadow:0 10px 22px rgba(49,92,67,.15)!important;
}

.supabase-setup-page .setup-create-button svg{
  width:19px!important;
  height:19px!important;
  flex:0 0 auto!important;
}

.supabase-setup-page .setup-create-button span{
  display:inline-block!important;
}

.supabase-setup-page .secondary.full{
  min-height:46px!important;
  border-radius:11px!important;
}

.supabase-setup-page .setup-signout{
  margin:14px auto 0!important;
  padding:7px 9px!important;
}

@media(max-width:600px){
  .supabase-setup-page{
    padding:14px!important;
  }

  .supabase-setup-page .join-card{
    padding:19px!important;
    border-radius:19px!important;
  }

  .supabase-setup-page .join-card h1{
    font-size:1.75rem!important;
  }

  .supabase-setup-page .setup-name-grid{
    grid-template-columns:1fr!important;
    gap:12px!important;
  }
}
