/*
 * Minimal, dependency-free styling for the front-end partner dashboard ( [altechy_partner_dashboard] ).
 * Intentionally unopinionated about color/typography so it inherits the active theme's look —
 * only layout/spacing rules live here. The Altechy block theme's own theme.json tokens take care
 * of colors and fonts automatically since this markup uses plain elements, not custom classes with
 * hardcoded styles.
 */

.altechy-pp-dashboard {
	max-width: 760px;
	margin: 0 auto;
}

.altechy-pp-dashboard h2 {
	margin-top: 2em;
	margin-bottom: 0.5em;
}

.altechy-pp-dashboard .altechy-pp-help {
	font-size: 0.9em;
	opacity: 0.75;
	margin-top: -0.5em;
}

.altechy-pp-field {
	display: flex;
	flex-direction: column;
	gap: 0.35em;
	margin: 0 0 1em;
}

.altechy-pp-field label {
	font-weight: 600;
}

.altechy-pp-field input[type="text"],
.altechy-pp-field input[type="email"],
.altechy-pp-field textarea {
	width: 100%;
	padding: 0.5em 0.6em;
	box-sizing: border-box;
}

.altechy-pp-field-row {
	display: flex;
	gap: 1.5em;
}

.altechy-pp-field-row .altechy-pp-field {
	flex: 1;
}

.altechy-pp-expertise-table {
	width: 100%;
	border-collapse: collapse;
	margin-bottom: 0.75em;
}

.altechy-pp-expertise-table th,
.altechy-pp-expertise-table td {
	padding: 0.4em 0.5em;
	text-align: left;
	vertical-align: top;
}

.altechy-pp-expertise-table select,
.altechy-pp-expertise-table input[type="text"] {
	width: 100%;
	box-sizing: border-box;
}

.altechy-pp-remove-row {
	display: flex;
	align-items: center;
	gap: 0.4em;
	white-space: nowrap;
}

.altechy-pp-button {
	cursor: pointer;
	padding: 0.6em 1.4em;
	border: 1px solid currentColor;
	background: transparent;
	border-radius: 3px;
}

.altechy-pp-button-primary {
	background: currentColor;
}

.altechy-pp-notice {
	padding: 0.75em 1em;
	border-radius: 3px;
	margin-bottom: 1.5em;
}

.altechy-pp-notice-success {
	border: 1px solid #2a8f3f;
}

.altechy-pp-login-required form.login {
	max-width: 360px;
}
