/**
 * Akel Tools Design System — Layout patterns
 */

.at-container {
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	padding-left: var(--space-5);
	padding-right: var(--space-5);
}

.at-container--sm { max-width: var(--container-sm); }
.at-container--md { max-width: var(--container-md); }
.at-container--lg { max-width: var(--container-lg); }
.at-container--xl { max-width: var(--container-xl); }

.at-page-header {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
	gap: var(--space-4);
	margin-bottom: var(--space-6);
}

.at-page-header__main {
	min-width: 0;
}

.at-page-header__title {
	margin: var(--space-1) 0 0;
}

.at-page-header__meta {
	margin-top: var(--space-2);
	font-size: var(--text-sm);
	color: var(--text-secondary);
}

.at-page-header__actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--space-3);
	flex-shrink: 0;
}

.at-two-pane {
	display: grid;
	grid-template-columns: minmax(280px, 360px) 1fr;
	gap: 0;
	min-height: 400px;
	border: 1px solid var(--border-default);
	border-radius: 0;
	overflow: hidden;
}

.at-two-pane__list {
	border-right: 1px solid var(--border-default);
	background: var(--surface-subtle);
	overflow: auto;
}

.at-two-pane__detail {
	background: var(--surface-elevated);
	overflow: auto;
	padding: var(--space-5);
}

@media (max-width: 768px) {
	.at-two-pane {
		grid-template-columns: 1fr;
	}
	.at-two-pane__list {
		border-right: none;
		border-bottom: 1px solid var(--border-default);
		max-height: 240px;
	}
}

.at-sticky-footer {
	position: sticky;
	bottom: 0;
	display: flex;
	justify-content: flex-end;
	gap: var(--space-3);
	padding: var(--space-4) var(--space-5);
	background: var(--surface-elevated);
	border-top: 1px solid var(--border-default);
	box-shadow: 0 -4px 12px rgba(0, 36, 77, 0.06);
	z-index: var(--z-sticky);
}

.at-form-grid {
	display: grid;
	gap: var(--space-4);
}

.at-form-grid--2 {
	grid-template-columns: repeat(2, 1fr);
}

.at-form-grid--3 {
	grid-template-columns: repeat(3, 1fr);
}

@media (max-width: 768px) {
	.at-form-grid--2,
	.at-form-grid--3 {
		grid-template-columns: 1fr;
	}
}

.at-fieldset {
	margin: 0;
	padding: 0;
	border: none;
}

.at-fieldset__legend {
	font-size: var(--text-md);
	font-weight: var(--weight-semibold);
	color: var(--text-primary);
	margin-bottom: var(--space-4);
	padding: 0;
}

.at-field-group {
	display: flex;
	flex-direction: column;
	gap: var(--space-4);
	padding: var(--space-5);
	background: var(--surface-subtle);
	border: 1px solid var(--border-default);
	border-radius: 0;
	margin-bottom: var(--space-5);
}

.at-field-group__title {
	font-size: var(--text-sm);
	font-weight: var(--weight-semibold);
	color: var(--text-secondary);
	margin-bottom: var(--space-3);
}
