.lue-form,
.lue-gate-form {
	max-width: 720px;
	margin: 0 auto;
}

.lue-field {
	margin-bottom: 1rem;
}

.lue-field label {
	display: block;
	font-weight: 600;
	margin-bottom: 0.25rem;
}

.lue-field input,
.lue-field select,
.lue-field textarea {
	width: 100%;
	padding: 0.6rem 0.75rem;
	border: 1px solid var( --color-border, #E0E0E0 );
	border-radius: var( --border-radius, 6px );
	font-size: 1rem;
	box-sizing: border-box;
}

.lue-field--error input,
.lue-field--error select,
.lue-field--error textarea {
	border-color: #B3261E;
}

.lue-field textarea {
	font-family: inherit;
	resize: vertical;
}

/* Invoice-request form */

.lue-fieldset {
	border: 1px solid var( --color-border, #E0E0E0 );
	border-radius: var( --border-radius, 6px );
	padding: 1rem 1rem 0.5rem;
	margin: 0 0 1.5rem;
}

.lue-fieldset legend {
	font-weight: 700;
	padding: 0 0.35rem;
}

.lue-radio-group {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem 1.5rem;
}

.lue-radio-group label {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	font-weight: 400;
	margin: 0;
	cursor: pointer;
}

.lue-radio-group input {
	width: auto;
}

.lue-field-row {
	display: grid;
	grid-template-columns: 8rem 1fr;
	gap: 0 1rem;
}

.lue-col-qty {
	width: 5.5rem;
}

.lue-table td.lue-line-total {
	white-space: nowrap;
	padding-top: 0.9rem;
}

.lue-error-msg {
	color: #B3261E;
	font-size: 0.85rem;
	margin: 0.25rem 0 0;
}

.lue-notice {
	padding: 0.75rem 1rem;
	border-radius: var( --border-radius, 6px );
	margin-bottom: 1rem;
}

.lue-notice--error {
	background: #FCE8E6;
	color: #8A1C13;
}

.lue-notice--success {
	background: #E6F4EC;
	color: #0B5A34;
}

.lue-success {
	max-width: 720px;
	margin: 0 auto;
}

.lue-table-wrap {
	overflow-x: auto;
}

.lue-table {
	width: 100%;
	border-collapse: collapse;
	margin-bottom: 1rem;
}

.lue-table th,
.lue-table td {
	padding: 0.5rem;
	border-bottom: 1px solid var( --color-border, #E0E0E0 );
	text-align: left;
	vertical-align: top;
}

.lue-table input[type="text"],
.lue-table input[type="file"] {
	width: 100%;
	padding: 0.4rem 0.5rem;
	border: 1px solid var( --color-border, #E0E0E0 );
	border-radius: 4px;
	font-size: 0.95rem;
	box-sizing: border-box;
}

.lue-file-list {
	margin-top: 0.35rem;
}

.lue-file-list__item {
	font-size: 0.85rem;
	overflow-wrap: anywhere;
	word-break: break-word;
	line-height: 1.4;
	color: var( --color-dark, #1A1A1A );
}

.lue-file-hint {
	font-size: 0.8rem;
	color: var( --color-gray, #6B6B6B );
	margin: 0.35rem 0 0;
	overflow-wrap: anywhere;
}

.lue-remove-row {
	background: none;
	border: none;
	color: #8A1C13;
	font-size: 1.25rem;
	cursor: pointer;
	line-height: 1;
	padding: 0.25rem 0.5rem;
}

.lue-btn {
	background: var( --color-green, #009B68 );
	color: #fff;
	border: none;
	padding: 0.7rem 1.25rem;
	border-radius: var( --border-radius, 6px );
	font-weight: 600;
	cursor: pointer;
	font-size: 1rem;
	margin-top: 0.5rem;
}

.lue-btn--secondary {
	background: transparent;
	color: var( --color-green, #009B68 );
	border: 1px solid var( --color-green, #009B68 );
}

.lue-btn[disabled] {
	opacity: 0.6;
	cursor: default;
}

.lue-field-hint {
	font-size: 0.85rem;
	color: var( --color-gray, #6B6B6B );
}

.lue-hp {
	position: absolute;
	left: -9999px;
	top: -9999px;
}

@media ( max-width: 600px ) {
	.lue-table thead {
		display: none;
	}

	.lue-table,
	.lue-table tbody,
	.lue-table tr,
	.lue-table td {
		display: block;
		width: 100%;
	}

	.lue-table tfoot {
		display: block;
	}

	.lue-table tfoot tr,
	.lue-table tfoot td {
		display: block;
		width: 100%;
	}

	.lue-table tbody tr {
		border: 1px solid var( --color-border, #E0E0E0 );
		border-radius: var( --border-radius, 6px );
		margin-bottom: 1rem;
		padding: 0.5rem;
	}

	.lue-table tbody td {
		border: none;
		padding: 0.35rem 0;
	}

	.lue-table td[data-label]::before {
		content: attr( data-label );
		display: block;
		font-weight: 600;
		font-size: 0.8rem;
		color: var( --color-gray, #6B6B6B );
		margin-bottom: 0.15rem;
	}

	.lue-row__actions {
		text-align: right;
	}

	.lue-col-qty {
		width: 100%;
	}

	.lue-table tbody td.lue-line-total {
		padding-top: 0.35rem;
	}
}
