.pForm{
	width: 100%;
	display: grid;
	grid-template-columns: 1fr;
	grid-template-rows: auto;
	grid-auto-rows: auto;
	align-items: start;
	/* gap: 1.5rem; */
}
.pForm input[type="datetime-local"]{
	/* background-image: url(assets/arrow_drop_down_gray_24dp.svg);
	background-repeat: no-repeat;
	background-position-x: 100%;
	background-position-y: center; */
}
.pForm input[type="datetime-local"]:hover{
	background-color: var(--c1);
}
.pForm input[type="datetime-local"]::-webkit-calendar-picker-indicator {
	/* cursor: pointer;
	filter: invert(0.5);
	opacity: 0; */
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	cursor: pointer;
	opacity: 0;
  }
.pForm input{
	font-family: inherit;
	font-size: 1rem;
	/* font-weight: 400; */
	-webkit-appearance: none;
	-webkit-border-radius: 0;
	border-radius: 0px;
	width: 100%;
	border: none;
	/* border-bottom: 1px solid #00000000; */
	background-color: transparent;
	color: var(--c5);
	outline: none;
	margin-bottom: 0px;
	/* padding: 0px; */
	/* padding-left: 0.1rem; */
	padding: 0px 1rem;
	box-sizing: border-box;
	/* display: block; */
}
.pForm input:hover + label{
	font-size: 0.75rem;
	left: auto;
	right: 0;
	color: var(--c3);
	display: block;
}
.pForm textarea:hover + label{
	font-size: 0.75rem;
	left: auto;
	right: 0;
	color: var(--c3);
	display: block;
}

.pForm input:focus{
	/* border-bottom: 1px solid #00000080; */
	background-color: var(--c1);
}
.pForm input:focus + label,
.pForm input:not(:placeholder-shown) + label{
	font-size: 0.75rem;
	left: auto;
	right: 0;
	color: var(--c3);
}

.pForm textarea{
	font-family: inherit;
	border: none;
	/* border: 1px solid #00000020; */
	/* margin-bottom: 30px; */
	/* padding-bottom: 3px; */
	background-color: transparent;
	/* color: var(--cF); */
	outline: none;
	resize: none;
	width: 100%;
	/* padding-left: 0.1rem; */
	padding: 0px 1rem;
	/* padding: 0px; */
	box-sizing: border-box;
	margin: 0px;
	box-sizing: border-box;
}
.pForm textarea:focus{
	/* border: 1px solid #00000080; */
	background-color: var(--c1);
}
.pForm textarea:focus + label,
.pForm textarea:not(:placeholder-shown) + label{
	font-size: 0.75rem;
	left: auto;
	right: 0;
	color: var(--c3);
}

.pForm label{
	/* font-size: 0.75rem; */
	position: absolute;
	cursor: text;
	/* z-index: 2; */
	top: 0px;
	left: 0px;
	transition: all .3s ease;
	color: var(--c3);
	padding: 0.2rem 1rem 0px 1rem;
	box-sizing: border-box;
	display: none;
}

.pForm select{
	cursor: pointer;
	font-family: inherit;
	font-size: 1rem;
	/* font-weight: 400; */
	-webkit-appearance: none;
	background-color: transparent;
	color: var(--c0);
	outline: none;
	padding: 0px;
	padding-bottom: 3px;
	margin-bottom: 0px;

	background-image: url(assets/arrow_drop_down_gray_24dp.svg);
	background-repeat: no-repeat;
	background-position-x: 100%;
	background-position-y: center;
	
	-webkit-border-radius: 0;
	border-radius: 0px;
	width: 100%;
	border: none;
	border-bottom: 1px solid hsl(0,0%,33%);
	/* margin-bottom: 30px; */
}
.pForm select option[value=""]{
	color: #00000080;
}
.pForm select:required:invalid {
	color: #00000080;
}
.pForm option[value=""][disabled] {
	display: none;
}
.pForm .selected{
	padding: 0.25rem 1rem;
	border: solid 0.1rem var(--c5);
	border-radius: 1rem;
	background-color: var(--c5);
	color: var(--c0);
	cursor: pointer;
	font-family: var(--bold);
}
.pForm .unselected{
	padding: 0.25rem 1rem;
	border: solid 0.1rem var(--c5);
	border-radius: 1rem;
	cursor: pointer;
	font-family: var(--bold);
}
.pForm .unselected:hover{
	border: solid 0.1rem var(--c5);
	color: var(--c0);
	background-color: var(--c5);
}

.pForm input::placeholder, .pForm textarea::placeholder{
	color: var(--c3);
	/* color: transparent; */
}
.pForm input ~ .invalidText, .pForm textarea ~ .invalidText{
	position: relative;
	color: red;
	font-size: 0.8rem;
	max-height: 0rem;
	height: 0rem;
	overflow: hidden;
	/* padding: 0.05rem 0px 0.5rem 0px; */
	box-sizing: border-box;
	transition-duration: 0.5s;
	margin: 0px;
	padding: 0px 1rem;
}
.pForm input:-webkit-autofill{
	background-color: transparent;
}
.pForm input:invalid:not(:placeholder-shown) ~ .invalidText{
	max-height: 2rem;
	height: 2rem;
}
.pForm .disabled{
	pointer-events: none;
}
.pForm div:has(.dummyInput:focus){
	background-color: var(--c0);
}

.pForm input::-webkit-outer-spin-button,
.pForm input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.pForm input[type=number] {
  -moz-appearance: textfield;
}

.pForm .input-sizer {
	display: inline-grid;
	/* vertical-align: top; */
	align-items: center;
	position: relative;
	/* border: solid 1px; */
	/* padding: .25em .5em; */
	/* margin: 5px; */
	
	&.stacked {
	  /* padding: 0px 1rem; */
	  align-items: stretch;
	  
	  &::after,
	  input,
	  textarea {
		grid-area: 2 / 1;
	  }
	}
	
	&::after,
	input,
	textarea {
	  width: auto;
	  min-width: 1em;
	  grid-area: 1 / 2;
	  font: inherit;
	  font-size: inherit;
	  /* padding: 0.25em; */
	  /* margin: 0; */
	  resize: none;
	  /* background: none; */
	  /* appearance: none; */
	  /* border: none; */
	  /* box-sizing: border-box; */
	}
	
	span {
	  /* padding: 0.25em; */
	}
	
	&::after {
	  content: attr(data-value) ' ';
	  visibility: hidden;
	  white-space: pre-wrap;
	  padding: 0px 1rem;
	  box-sizing: border-box;
	  font: inherit;
	  font-size: inherit;
	}
	
	&:focus-within {
	  /* outline: solid 1px blue;
	  box-shadow: 4px 4px 0px blue;
	  
	  > span { color: blue; }
	  
	  textarea:focus,
	  input:focus {
		outline: none;
	  } */
	}
}