/*
 * PureCSS.com
 * https://purecss.com/examples/numeric-stepper/
 * A styled <input type="number"> with custom spin button appearance.
 */

.demo-numeric-stepper .stepper-group {
		display: flex;
		flex-direction: column;
		gap: 1.25rem;
		max-width: 280px;
		margin: 0 auto;
	}

.demo-numeric-stepper .stepper-field {
		display: flex;
		flex-direction: column;
		gap: .3rem;
	}

.demo-numeric-stepper label {
		font-size: .82rem;
		color: var(--text-muted);
		font-weight: 500;
	}

.demo-numeric-stepper input[type="number"] {
		appearance: textfield;
		-moz-appearance: textfield;
		width: 100%;
		padding: .7rem 1rem;
		background: var(--surface-2);
		border: 2px solid var(--border);
		border-radius: var(--radius);
		color: var(--text);
		font-family: var(--font-mono);
		font-size: 1.1rem;
		font-weight: 500;
		text-align: center;
		outline: none;
		transition: border-color .2s;
	}

:is(.demo-numeric-stepper input[type="number"]):focus {
			border-color: var(--accent);
		}

:is(.demo-numeric-stepper input[type="number"])::-webkit-inner-spin-button,:is(.demo-numeric-stepper input[type="number"])::-webkit-outer-spin-button {
			-webkit-appearance: none;
			appearance: none;
		}

.demo-numeric-stepper .stepper-row {
		display: flex;
		align-items: center;
		gap: 0;
		border: 2px solid var(--border);
		border-radius: var(--radius);
		overflow: hidden;
		background: var(--surface-2);
		transition: border-color .2s;
	}

:is(.demo-numeric-stepper .stepper-row):focus-within {
			border-color: var(--accent);
		}

:is(.demo-numeric-stepper .stepper-row) input[type="number"] {
			border: none;
			border-radius: 0;
			flex: 1;
			background: transparent;
			padding: .7rem .5rem;
		}

:is(:is(.demo-numeric-stepper .stepper-row) input[type="number"]):focus {
				border-color: transparent;
			}

.demo-numeric-stepper .step-btn {
		width: 40px;
		background: var(--surface);
		border: none;
		border-left: 1px solid var(--border);
		color: var(--text);
		font-size: 1.2rem;
		font-weight: 300;
		cursor: pointer;
		padding: .6rem 0;
		line-height: 1;
		transition: background .15s, color .15s;
		font-family: var(--font-sans);
	}

:is(.demo-numeric-stepper .step-btn):first-child {
			border-left: none;
			border-right: 1px solid var(--border);
		}

:is(.demo-numeric-stepper .step-btn):hover {
			background: var(--accent-dim);
			color: var(--accent);
		}
