/* Scoped ORI gate — light theme matched to tun-files product page */
.nexora-tf-ori-gate{
  margin:1.25rem 0 1.4rem;
  padding:1.15rem 1.25rem 1.05rem;
  border:1px solid #e2e8f0;
  border-radius:10px;
  background:#ffffff;
  color:#1e293b;
  box-shadow:0 1px 3px rgba(15,23,42,.06),0 4px 14px rgba(15,23,42,.04);
  clear:both;
  width:100%;
  box-sizing:border-box;
}
.nexora-tf-ori-gate__title{
  margin:0 0 .35rem;
  font-size:1.05rem;
  font-weight:700;
  color:#0f172a;
}
.nexora-tf-ori-gate__hint{
  margin:0 0 .9rem;
  font-size:.9rem;
  color:#64748b;
}
.nexora-tf-ori-gate__grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:.55rem .85rem;
}
.nexora-tf-ori-gate__field{
  margin:0 0 .75rem !important;
  float:none !important;
  width:100% !important;
}
.nexora-tf-ori-gate__field label{
  display:block;
  font-weight:600;
  margin:0 0 .28rem;
  color:#1e293b !important;
  font-size:.9rem;
}
.nexora-tf-ori-gate__field label .required,
.nexora-tf-ori-gate__field label abbr.required{
  color:#dc2626 !important;
  text-decoration:none;
  border:0;
}
.nexora-tf-ori-gate__field input.input-text,
.nexora-tf-ori-gate input[type=text],
.nexora-tf-ori-gate input[type=file]{
  width:100%;
  box-sizing:border-box;
  background:#ffffff !important;
  color:#0f172a !important;
  border:1px solid #cbd5e1 !important;
  border-radius:8px !important;
  padding:10px 12px !important;
  min-height:42px;
  box-shadow:none !important;
}
.nexora-tf-ori-gate__field input.input-text::placeholder,
.nexora-tf-ori-gate input[type=text]::placeholder{
  color:#94a3b8 !important;
}
.nexora-tf-ori-gate__field input.input-text:focus{
  border-color:#009fd4 !important;
  outline:none;
  box-shadow:0 0 0 3px rgba(0,159,212,.18) !important;
}
.nexora-tf-ori-gate__file input[type=file]{
  padding:8px !important;
  color:#334155 !important;
  background:#f8fafc !important;
}
.nexora-tf-ori-gate__terms{
  display:flex;
  gap:.55rem;
  align-items:flex-start;
  margin:.4rem 0 .2rem !important;
  color:#334155;
  font-size:.9rem;
}
.nexora-tf-ori-gate__terms input{margin-top:.2rem;margin-right:.35rem}
.nexora-tf-ori-gate__terms a{color:#009fd4}
.nexora-tf-ori-gate__terms a:hover{color:#0085FF}
@media (max-width:640px){
  .nexora-tf-ori-gate__grid{grid-template-columns:1fr}
}
.single-product form.cart .nexora-tf-ori-gate{
  flex:1 1 100%!important;
  order:-1!important;
  width:100%!important;
}
