/* All About Material Theme 1.0.2 — admin category manager and instant dashboard search */

/* Applications are no longer exposed as a dashboard module. Categories replace it. */
.aam-admin-dashboard #admin-categories {
	display: none;
	margin-top: 0;
}

.aam-admin-dashboard #admin-categories.is-active {
	display: block;
}

.aam-admin-dashboard .aam-dashboard-nav {
	margin-bottom: 16px;
}

/* Compact premium quick search shared by every admin data tab. */
.aam-admin-quick-search {
	position: relative;
	display: flex;
	align-items: center;
	margin: 16px 20px;
	border: 1px solid #e3e8ee;
	border-radius: 13px;
	background: #f8fafc;
	box-shadow: inset 0 1px 0 rgba(255,255,255,.8);
	transition: border-color .2s ease, box-shadow .2s ease, background .2s ease;
}

.aam-admin-quick-search:focus-within {
	border-color: color-mix(in srgb, var(--aam-primary) 38%, #dce2e8);
	background: #fff;
	box-shadow: 0 0 0 4px color-mix(in srgb, var(--aam-primary) 8%, transparent);
}

.aam-admin-quick-search > svg {
	position: absolute;
	left: 16px;
	width: 20px;
	height: 20px;
	fill: none;
	stroke: #667085;
	stroke-width: 1.8;
	stroke-linecap: round;
	pointer-events: none;
}

.aam-admin-quick-search input {
	width: 100%;
	height: 48px;
	padding: 0 52px 0 47px;
	border: 0 !important;
	outline: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	color: var(--aam-ink);
	font: 600 14px/1 "DM Sans", sans-serif;
}

.aam-admin-quick-search input::placeholder {
	color: #98a2b3;
	font-weight: 500;
}

.aam-admin-quick-search button {
	position: absolute;
	right: 8px;
	display: grid;
	place-items: center;
	width: 34px;
	height: 34px;
	padding: 0;
	border: 0;
	border-radius: 9px;
	background: #fff;
	color: #667085;
	cursor: pointer;
	box-shadow: 0 2px 8px rgba(16,24,40,.06);
}

.aam-admin-quick-search button svg {
	width: 17px;
	height: 17px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.8;
	stroke-linecap: round;
}

.aam-admin-search-empty {
	margin: 8px 20px 18px;
	padding: 24px;
	border: 1px dashed #d8dee6;
	border-radius: 13px;
	background: #fbfcfd;
	color: #667085;
	font-size: 13px;
	font-weight: 600;
	text-align: center;
}

/* Category manager */
.aam-category-manager {
	overflow: visible;
}

.aam-category-add-form {
	display: grid;
	grid-template-columns: minmax(180px,1.05fr) minmax(170px,.85fr) minmax(220px,1.25fr) minmax(170px,.8fr) auto;
	gap: 12px;
	align-items: end;
	margin: 0 20px 20px;
	padding: 18px;
	border: 1px solid var(--aam-line);
	border-radius: 14px;
	background: linear-gradient(135deg, color-mix(in srgb, var(--aam-primary) 4%, #fff), #fff);
}

.aam-category-add-form label {
	display: grid;
	gap: 7px;
	min-width: 0;
}

.aam-category-add-form label > span {
	color: var(--aam-ink);
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: .035em;
}

.aam-category-add-form input,
.aam-category-add-form select {
	width: 100%;
	height: 48px;
	min-width: 0;
	padding: 0 13px;
	border: 1px solid #dce2e8;
	border-radius: 10px;
	background: #fff;
	color: var(--aam-ink);
	font: 500 13px "DM Sans",sans-serif;
}

.aam-category-add-form input[type="file"] {
	padding: 10px 11px;
	font-size: 11px;
}

.aam-category-add-form .aam-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	height: 48px;
	white-space: nowrap;
}

.aam-category-admin-list {
	display: grid;
	grid-template-columns: repeat(2,minmax(0,1fr));
	gap: 12px;
	padding: 0 20px 22px;
}

.aam-category-admin-list > article {
	position: relative;
	display: grid;
	grid-template-columns: 54px minmax(0,1fr) 40px 40px;
	gap: 11px;
	align-items: center;
	min-height: 84px;
	padding: 14px;
	border: 1px solid var(--aam-line);
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 8px 24px rgba(15,31,49,.035);
	transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}

.aam-category-admin-list > article:hover {
	transform: translateY(-1px);
	border-color: color-mix(in srgb, var(--aam-primary) 24%, var(--aam-line));
	box-shadow: 0 12px 30px rgba(15,31,49,.07);
}

.aam-category-admin-image {
	display: grid;
	place-items: center;
	width: 54px;
	height: 54px;
	overflow: hidden;
	border-radius: 12px;
	background: var(--aam-primary-soft);
	color: var(--aam-primary);
}

.aam-category-admin-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.aam-category-admin-summary {
	min-width: 0;
	padding-left: calc(var(--aam-category-depth,0) * 10px);
}

.aam-category-admin-summary small,
.aam-category-admin-summary strong,
.aam-category-admin-summary span {
	display: block;
}

.aam-category-admin-summary small {
	margin-bottom: 3px;
	color: var(--aam-primary);
	font-size: 9px;
	font-weight: 800;
	letter-spacing: .045em;
	text-transform: uppercase;
}

.aam-category-admin-summary strong {
	overflow: hidden;
	color: var(--aam-ink);
	font: 700 14px/1.35 "Poppins",sans-serif;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.aam-category-admin-summary span {
	overflow: hidden;
	margin-top: 4px;
	color: var(--aam-muted);
	font-size: 11px;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.aam-category-current-image {
	display: flex;
	align-items: center;
	gap: 14px;
	margin: 0 0 12px;
	padding: 10px;
	border: 1px solid var(--aam-line);
	border-radius: 12px;
	background: var(--aam-soft);
}

.aam-category-current-image img {
	width: 90px;
	height: 66px;
	border-radius: 9px;
	object-fit: cover;
}

.aam-category-current-image label {
	display: flex;
	align-items: center;
	gap: 7px;
	margin: 0;
}

.aam-category-current-image input[type="checkbox"] {
	width: auto;
	min-height: 0;
}

/* Materials filter now uses category only; Applications is intentionally removed. */
.aam-filter-bar.aam-filter-bar-two {
	grid-template-columns: minmax(260px,1fr) minmax(210px,.46fr) auto;
}

@media (max-width: 1180px) {
	.aam-category-add-form {
		grid-template-columns: repeat(2,minmax(0,1fr));
	}
	.aam-category-add-form .aam-btn {
		grid-column: 1/-1;
	}
}

@media (max-width: 820px) {
	.aam-category-admin-list {
		grid-template-columns: 1fr;
	}
	.aam-filter-bar.aam-filter-bar-two {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 640px) {
	.aam-admin-quick-search {
		margin: 12px;
	}
	.aam-category-add-form {
		grid-template-columns: 1fr;
		margin: 0 12px 16px;
	}
	.aam-category-admin-list {
		padding: 0 12px 16px;
	}
	.aam-category-admin-list > article {
		grid-template-columns: 48px minmax(0,1fr) 38px 38px;
		padding: 12px;
	}
	.aam-category-admin-image {
		width: 48px;
		height: 48px;
	}
}

.aam-admin-dashboard [data-aam-search-item][hidden] {
	display: none !important;
}


/* 1.0.3 fixes: compact category upload, stable editor modal, semantic cards and one back-to-top icon. */
.aam-category-add-form .aam-category-image-field input[type="file"] {
	display: block;
	height: 48px;
	padding: 5px 7px;
	overflow: hidden;
	border: 1px solid #dce2e8;
	border-radius: 10px;
	background: #fff;
	color: #667085;
	font: 600 11px/36px "DM Sans", sans-serif;
	white-space: nowrap;
	text-overflow: ellipsis;
}
.aam-category-add-form .aam-category-image-field input[type="file"]::file-selector-button {
	height: 36px;
	margin: 0 9px 0 0;
	padding: 0 13px;
	border: 0;
	border-radius: 8px;
	background: color-mix(in srgb, var(--aam-primary) 10%, #fff);
	color: var(--aam-primary);
	font: 800 11px "DM Sans", sans-serif;
	cursor: pointer;
}
.aam-category-add-form .aam-category-image-field input[type="file"]::-webkit-file-upload-button {
	height: 36px;
	margin: 0 9px 0 0;
	padding: 0 13px;
	border: 0;
	border-radius: 8px;
	background: color-mix(in srgb, var(--aam-primary) 10%, #fff);
	color: var(--aam-primary);
	font: 800 11px "DM Sans", sans-serif;
	cursor: pointer;
}

/* A transformed category card becomes the containing block for a fixed child.
   Disable that hover transform while its editor is open so the modal remains
   viewport-centred during hover and page scrolling. */
.aam-category-admin-list > article.has-open-editor,
body.aam-modal-open .aam-category-admin-list > article:hover {
	transform: none !important;
}
.aam-category-admin-list > article.has-open-editor {
	z-index: auto !important;
}
.aam-category-edit-form.aam-dashboard-editor-modal.is-open {
	position: fixed !important;
	top: 50% !important;
	right: auto !important;
	bottom: auto !important;
	left: 50% !important;
	margin: 0 !important;
	transform: translate(-50%, -50%) !important;
	overscroll-behavior: contain;
}

/* Category fallback illustrations are purpose-built per category and should
   fill the photographic card area without stretching. */
.aam-main-category-grid .aam-category-fallback-image {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

/* The markup already contains the premium SVG arrow. Older styles also drew a
   pseudo arrow, which caused the duplicate icon visible in the screenshot. */
.aam-back-to-top::before,
.aam-back-to-top:before {
	content: none !important;
	display: none !important;
}
.aam-back-to-top .aam-back-to-top-icon {
	display: block !important;
	width: 21px;
	height: 21px;
	margin: 0 !important;
}
@supports (scrollbar-gutter: stable) {
	html { scrollbar-gutter: stable; }
}
