.editor-page
{
	min-width: 0;
}

.tile-editor-layout
{
	display: grid;
	grid-template-columns: 188px minmax(480px, 1fr) 300px;
	gap: 12px;
	min-height: 680px;
}

.map-editor-layout
{
	display: grid;
	grid-template-columns: 230px minmax(540px,1fr) 300px;
	gap: 12px;
	min-height: 700px;
}

.tile-editor-layout > .admin-panel,
.map-editor-layout > .admin-panel
{
	padding: 12px;
}

.toolbox,
.map-library,
.inspector
{
	min-height: 0;
	overflow: auto;
}

.toolbox h2
{
	margin-bottom: 12px;
}

.tool-grid
{
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 6px;
}

.tool-button
{
	border: 1px solid var(--line);
	background: #10161b;
	color: #b9c5cd;
	min-height: 58px;
	border-radius: 7px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 5px;
	font: 600 10px Mulish, sans-serif;
	cursor: pointer;
}

.tool-button i
{
	font-size: 16px;
}

.tool-button:hover,
.tool-button.is-active
{
	border-color: #667680;
	color: #fff;
	background: #1d272e;
}

.tool-button.is-active
{
	box-shadow: inset 0 -2px var(--accent);
	color: var(--accent-2);
}

.tool-hint
{
	font-size: 10px;
	line-height: 1.45;
	color: var(--muted);
	margin: 12px 0;
	background: #0d1216;
	border: 1px solid #27313a;
	padding: 9px;
	border-radius: 6px;
}

.zoom-controls
{
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 4px;
	border-top: 1px solid var(--line);
	padding-top: 10px;
}

.zoom-controls button
{
	border: 1px solid var(--line);
	background: var(--surface-2);
	color: #d7dee3;
	width: 28px;
	height: 28px;
	border-radius: 5px;
	cursor: pointer;
}

.zoom-controls span
{
	width: 46px;
	text-align: center;
	font-size: 10px;
	color: var(--muted);
}

.editor-canvas-panel
{
	padding: 0!important;
	display: flex;
	flex-direction: column;
	overflow: hidden;
	min-width: 0;
}

.canvas-scroll
{
	flex: 1;
	overflow: auto;
	display: grid;
	place-items: center;
	min-height: 580px;
	background-color: #090d10;
	background-image: linear-gradient(rgba(255, 255, 255, .025) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .025) 1px, transparent 1px);
	background-size: 20px 20px;
	padding: 50px;
}

.tile-stage
{
	position: relative;
	width: min(850px, 78vw);
	aspect-ratio: 1;
	transform-origin: center center;
	box-shadow: 0 0 0 1px #54616b, 0 20px 60px rgba(0, 0, 0, .5);
	user-select: none;
}

.tile-stage > img
{
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	display: block;
}

.tile-stage>svg
{
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	overflow: visible;
	touch-action: none;
}

.canvas-status
{
	display: flex;
	justify-content: space-between;
	gap: 20px;
	padding: 8px 12px;
	background: #0f151a;
	border-top: 1px solid var(--line);
	font-size: 10px;
	color: var(--muted);
}

.zone-shape
{
	fill: rgba(83, 167, 216, .13);
	stroke: #56a8d4;
	stroke-width: 3;
	vector-effect: non-scaling-stroke;
	cursor: pointer;
}

.zone-shape.zone-building
{
	fill: rgba(225, 170, 59, .12);
	stroke: #d6a23d;
}

.zone-shape.zone-dark
{
	fill: rgba(150, 99, 197, .15);
	stroke: #9d70cc;
}

.zone-shape.is-selected,
.exclusion-shape.is-selected
{
	stroke: #d8ef7c;
	stroke-width: 5;
}

.zone-label
{
	fill: #fff;
	font: bold 22px Mulish, sans-serif;
	paint-order: stroke;
	stroke: #000;
	stroke-width: 5;
	stroke-linejoin: round;
	pointer-events: none;
}

.exclusion-shape
{
	fill: rgba(232, 91, 91, .22);
	stroke: #e55e5e;
	stroke-width: 3;
	stroke-dasharray: 10 7;
	vector-effect: non-scaling-stroke;
	cursor: pointer;
}

.portal-line
{
	stroke: #ffcc56;
	stroke-width: 8;
	vector-effect: non-scaling-stroke;
	stroke-linecap: round;
	cursor: pointer;
}

.connector-line
{
	stroke: #b7dc48;
	stroke-width: 9;
	vector-effect: non-scaling-stroke;
	stroke-linecap: round;
	cursor: pointer;
}

.connection-line
{
	stroke: #65d0ef;
	stroke-width: 4;
	vector-effect: non-scaling-stroke;
	stroke-dasharray: 9 6;
	cursor: pointer;
}

.anchor-marker
{
	fill: #b6d63c;
	stroke: #0b0e10;
	stroke-width: 2;
	vector-effect: non-scaling-stroke;
	cursor: pointer;
}

.object-marker
{
	fill: #e1aa3b;
	stroke: #0b0e10;
	stroke-width: 2;
	vector-effect: non-scaling-stroke;
	cursor: pointer;
}

.point-handle
{
	fill: #fff;
	stroke: #101418;
	stroke-width: 2;
	vector-effect: non-scaling-stroke;
	cursor: grab;
}

.point-handle:active
{
	cursor: grabbing;
}

.draft-line
{
	stroke: #fff;
	stroke-width: 2;
	stroke-dasharray: 7 5;
	fill: rgba(255, 255, 255, .08);
	vector-effect: non-scaling-stroke;
	pointer-events: none;
}

.placement-dot
{
	fill: #dcf485;
	stroke: #101418;
	stroke-width: 2;
	vector-effect: non-scaling-stroke;
}

.inspector-head
{
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
}

.inspector-head h2
{
	margin: 0;
}

.inspector hr
{
	border: 0;
	border-top: 1px solid var(--line);
	margin: 14px 0;
}

.inspector-field
{
	margin-bottom: 10px;
}

.inspector-field label
{
	display: block;
	color: var(--muted);
	font-size: 10px;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: .07em;
	margin-bottom: 4px;
}

.inspector-field .uk-input,
.inspector-field .uk-select
{
	height: 32px;
	font-size: 11px;
}

.inspector-check
{
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 9px 0;
	font-size: 11px;
}

.layer-list
{
	max-height: 300px;
	overflow: auto;
}

.layer-item
{
	display: flex;
	align-items: center;
	gap: 7px;
	width: 100%;
	border: 0;
	border-bottom: 1px solid #27313a;
	background: transparent;
	color: #bdc7ce;
	text-align: left;
	padding: 7px 4px;
	font-size: 10px;
	cursor: pointer;
}

.layer-item:hover,
.layer-item.is-active
{
	color: #fff;
	background: #182129;
}

.layer-item i
{
	width: 16px;
	text-align: center;
	color: #71818d;
}

.layer-item small
{
	color: var(--muted);
	margin-left: auto;
}

.editor-bottom
{
	display: grid;
	grid-template-columns: 2fr 1fr;
	gap: 24px;
	margin-top: 12px;
}

.validation-panel,
.placement-panel
{
	min-width: 0;
}

.map-help
{
	font-size: 12px;
	color: #a8b3bb;
}

.map-toolbar
{
	display: flex;
	align-items: center;
	gap: 6px;
	padding: 8px;
	background: #0f151a;
	border-bottom: 1px solid var(--line);
}

.toolbar-spacer
{
	flex: 1;
}

.map-scroll
{
	display: block;
	padding: 0;
	min-height: 610px;
	position: relative;
}

.map-stage
{
	display: block;
	width: 100%;
	height: 100%;
	min-height: 610px;
	touch-action: none;
	user-select: none;
	background-color: #0a0e11;
	background-image: linear-gradient(rgba(182, 214, 60, .06) 1px, transparent 1px), linear-gradient(90deg, rgba(182, 214, 60, .06) 1px, transparent 1px);
	background-size: 120px 120px;
	background-position: center;
}

.map-grid-line
{
	stroke: #28333b;
	stroke-width: 1;
	vector-effect: non-scaling-stroke;
}

.map-tile
{
	cursor: move;
}

.map-tile-border
{
	fill: rgba(20, 26, 32, .1);
	stroke: #7e8d97;
	stroke-width: 5;
	vector-effect: non-scaling-stroke;
}

.map-tile.is-selected .map-tile-border
{
	stroke: #d8ef7c;
	stroke-width: 8;
}

.map-tile-code
{
	fill: #fff;
	font: 800 30px Mulish, sans-serif;
	paint-order: stroke;
	stroke: #000;
	stroke-width: 7;
	pointer-events: none;
}

.map-connector
{
	stroke: #b6d63c;
	stroke-width: 9;
	vector-effect: non-scaling-stroke;
}

.map-connector.incompatible
{
	stroke: #e65e5e;
}

.map-edge-link
{
	stroke: #63d6f4;
	stroke-width: 6;
	stroke-dasharray: 12 8;
	vector-effect: non-scaling-stroke;
	pointer-events: none;
}

.map-graph-line
{
	stroke: #e1aa3b;
	stroke-width: 5;
	vector-effect: non-scaling-stroke;
	pointer-events: none;
}

.tile-library-list
{
	display: grid;
	gap: 7px;
	margin-top: 10px;
	max-height: 600px;
	overflow: auto;
}

.library-tile
{
	display: grid;
	grid-template-columns: 54px 1fr;
	gap: 8px;
	padding: 7px;
	border: 1px solid var(--line);
	background: #10161b;
	border-radius: 7px;
	cursor: grab;
	color: #d9e0e5
}

.library-tile:hover
{
	border-color: #65747f;
}

.library-tile img
{
	width: 54px;
	height: 54px;
	object-fit: cover;
	border-radius: 4px;
}

.library-tile strong
{
	display: block;
	font-size: 11px;
}

.library-tile small
{
	display: block;
	color: var(--muted);
	font-size: 9px;
	margin-top: 3px;
}

.map-instance-card,
.edge-link-card
{
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 7px;
	border-bottom: 1px solid var(--line);
	font-size: 10px;
}

.edge-link-card i
{
	color: var(--accent);
}

.editor-toast
{
	position: absolute;
	z-index: 10;
	pointer-events: none;
	background: #10161b;
	border: 1px solid #44515c;
	color: #dbe2e7;
	padding: 6px 8px;
	border-radius: 6px;
	font-size: 10px;
}

.draft-help
{
	color: #d8ef7c;
	font-size: 10px;
	margin-top: 8px;
}

.map-edge-link.continuation
{
	stroke: #b987e7;
	stroke-width: 10;
}

.map-zone-preview
{
	fill: rgba(83, 167, 216, .08);
	stroke: rgba(255, 255, 255, .5);
	stroke-width: 2;
	vector-effect: non-scaling-stroke;
	pointer-events: none;
}

.map-link-label
{
	fill: #fff;
	font: bold 14px Mulish, sans-serif;
	paint-order: stroke;
	stroke: #000;
	stroke-width: 4;
	pointer-events: none;
}

.library-tile[draggable=true]:active
{
	cursor: grabbing;
}

.map-zone-preview.continuation
{
	fill: rgba(185, 135, 231, .24);
	stroke: #c69cf0;
	stroke-width: 4;
}

.map-internal-connection
{
	stroke: #f0be58;
	stroke-width: 4;
	stroke-dasharray: 8 6;
	vector-effect: non-scaling-stroke;
	pointer-events: none;
}



@media (max-width:1350px)
{
	.tile-editor-layout
	{
		grid-template-columns: 165px minmax(420px,1fr) 260px;
	}

	.map-editor-layout
	{
		grid-template-columns: 190px minmax(440px,1fr) 260px;
	}
}

@media(max-width:1050px)
{
	.tile-editor-layout,
	.map-editor-layout
	{
		grid-template-columns: 1fr;
	}

	.toolbox,
	.map-library,
	.inspector
	{
		max-height: none;
	}

	.tool-grid
	{
		grid-template-columns: repeat(6,1fr);
	}

	.canvas-scroll
	{
		min-height: 500px;
	}

	.editor-bottom
	{
		grid-template-columns: 1fr;
	}

	.tile-stage
	{
		width: min(800px,90vw);
	}
}

@media(max-width:700px)
{
	.tool-grid
	{
		grid-template-columns: repeat(3,1fr);
	}

	.map-toolbar
	{
		flex-wrap: wrap;
	}

	.canvas-scroll
	{
		padding: 25px;
	}

	.tile-stage
	{
		width: 90vw;
	}

	.editor-header-actions .save-state
	{
		width: 100%;
	}
}
/* --- Full-screen editor workspace -------------------------------------- */
.editor-workspace-header
{
	position: sticky;
	top: 0;
	z-index: 50;
	min-height: 70px;
	margin: 0;
	padding: 10px 16px;
	align-items: center;
	background: rgba(15, 20, 25, .97);
	border-bottom: 1px solid var(--line);
	backdrop-filter: blur(10px);
}

.editor-workspace-header h1
{
	font-size: 28px;
	margin-bottom: 0;
}

.editor-title-wrap
{
	display: flex;
	align-items: center;
	gap: 12px;
	min-width: 0;
}

.editor-title-wrap h1
{
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	max-width: min(720px, 48vw);
}

.editor-back
{
	flex: 0 0 auto;
}

.editor-back:hover,
.editor-back:focus
{
	text-decoration: none;
}

.editor-workspace-grid.tile-editor-layout
{
	grid-template-columns: 300px minmax(440px, 1fr) 350px;
	gap: 0;
	height: calc(100vh - 70px);
	min-height: 560px;
}

.editor-workspace-grid.map-editor-layout
{
	grid-template-columns: 250px minmax(500px, 1fr) 350px;
	gap: 0;
	height: calc(100vh - 70px);
	min-height: 560px;
}

.editor-workspace-grid > .admin-panel
{
	border-radius: 0;
	box-shadow: none;
	border-top: 0;
	border-bottom: 0;
}

.editor-side-panel
{
	height: 100%;
	overflow: auto;
	background: #11171c;
}

.editor-workspace-grid > .editor-side-panel:first-child
{
	border-left: 0;
}

.editor-workspace-grid > .editor-side-panel:last-child
{
	border-right: 0;
}

.editor-side-heading
{
	margin-bottom: 12px;
}

.editor-side-heading h2
{
	margin: 1px 0 0;
}

.editor-mode .tool-grid
{
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 7px;
}

.editor-mode .tool-button
{
	min-height: 72px;
	padding: 9px 7px;
	flex-direction: column;
	justify-content: center;
	gap: 7px;
	font-size: 11px;
	line-height: 1.2;
	text-align: center;
}

.editor-mode .tool-button i
{
	width: auto;
	font-size: 19px;
	text-align: center;
}

.tool-hint
{
	margin: 12px 0 8px;
	padding: 10px;
}

.tool-hint strong
{
	display: block;
	color: #e8eef2;
	font-size: 11px;
	margin-bottom: 4px;
}

.tool-hint p
{
	margin: 0;
}

.viewport-help
{
	margin: 8px 0 0;
	color: #7f8c96;
	font-size: 9px;
	line-height: 1.4;
}

.viewport-help i
{
	margin-right: 4px;
}

.editor-mode .editor-canvas-panel
{
	border-left: 0;
	border-right: 0;
	height: 100%;
	min-height: 0;
}

.editor-mode .canvas-scroll
{
	min-height: 0;
	height: 100%;
	overflow: hidden;
	padding: 28px;
	position: relative;
	touch-action: none;
}

.editor-mode .canvas-scroll.is-panning,
.editor-mode .canvas-scroll.is-panning .tile-stage
{
	cursor: grabbing !important;
}

.editor-mode .tile-stage
{
	width: min(820px, calc(100vh - 155px));
	max-width: none;
	transform-origin: center center;
	will-change: transform;
}

.editor-inspector
{
	display: flex;
	flex-direction: column;
	padding: 0 !important;
	overflow: hidden;
}

.editor-inspector-tabs
{
	order: 2;
	flex: 0 0 auto;
	margin: 0;
	padding: 6px 8px 7px;
	background: #0f151a;
	border-top: 1px solid var(--line);
}

.editor-inspector-tabs::before
{
	border-bottom: 0;
}

.editor-inspector-tabs > *
{
	padding-left: 4px;
}

.editor-inspector-tabs > * > a
{
	min-height: 52px;
	padding: 6px 5px 5px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 4px;
	color: #a8b4bc;
	font-size: 11px;
	font-weight: 800;
	line-height: 1.1;
	letter-spacing: .01em;
	text-transform: none;
	border-top: 2px solid transparent;
	border-bottom: 0;
}

.editor-inspector-tabs > .uk-active > a
{
	color: var(--accent-2);
	border-top-color: var(--accent);
}

.editor-inspector-tabs i
{
	margin: 0;
	font-size: 17px;
}

.editor-inspector-switcher
{
	order: 1;
	flex: 1 1 auto;
	min-height: 0;
	margin: 0;
	overflow: hidden;
}

.editor-inspector-switcher > li
{
	height: 100%;
	overflow: auto;
	padding: 14px;
}

.editor-inspector .inspector-field label,
.editor-inspector .inspector-check,
.editor-inspector .placement-fields label
{
	color: #c9d3da;
}

.placement-fields
{
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 9px;
	align-items: end;
}

.placement-fields label
{
	display: grid;
	gap: 4px;
	font-size: 10px;
	font-weight: 700;
}

.placement-fields button
{
	grid-column: 1 / -1;
}

.editor-mode .layer-list
{
	max-height: none;
}

.editor-mode .editor-bottom
{
	display: none;
}

.editor-mode .map-scroll
{
	min-height: 0;
	padding: 0;
}

.editor-mode .map-stage
{
	min-height: 100%;
}

@media (max-width: 1250px)
{
	.editor-workspace-grid.tile-editor-layout
	{
		grid-template-columns: 270px minmax(380px, 1fr) 315px;
	}

	.editor-workspace-grid.map-editor-layout
	{
		grid-template-columns: 220px minmax(420px, 1fr) 315px;
	}
}

@media (max-width: 900px)
{
	.editor-workspace-grid.tile-editor-layout,
	.editor-workspace-grid.map-editor-layout
	{
		grid-template-columns: 1fr;
		height: auto;
	}

	.editor-side-panel,
	.editor-mode .editor-canvas-panel
	{
		height: auto;
		min-height: 420px;
	}

	.editor-mode .canvas-scroll
	{
		min-height: 520px;
	}

	.editor-mode .tool-grid
	{
		grid-template-columns: repeat(2, 1fr);
	}

	.editor-inspector
	{
		min-height: 540px;
	}

	.editor-title-wrap h1
	{
		max-width: 62vw;
	}
}

.editor-mode .map-grid-line
{
	pointer-events: none;
}

.editor-mode .map-scroll
{
	cursor: grab;
}

.editor-mode .map-scroll.is-panning
{
	cursor: grabbing;
}

/* --- Tile-Editor workflow & graphic tokens (0.0.3) --------------------- */
.editor-mode .tool-button:disabled,
.editor-mode .tool-button.is-disabled
{
	opacity: .42;
	cursor: not-allowed;
	background: #0d1216;
	border-color: #252e35;
	color: #78848d;
	box-shadow: none;
}

.editor-mode .tool-button:disabled:hover
{
	background: #0d1216;
	border-color: #252e35;
	color: #78848d;
}

.tool-prerequisite
{
	margin: 7px 0 0 !important;
	padding-top: 7px;
	border-top: 1px solid #263039;
	color: var(--warning) !important;
}

.save-state
{
	display: inline-grid;
	place-items: center;
	width: 28px;
	height: 28px;
	margin-right: 3px;
	font-size: 18px !important;
}
.save-state.is-error { color: var(--danger); }

.inspector-help
{
	padding: 8px 9px;
	border-left: 3px solid #465660;
	background: #0d1216;
	border-radius: 0 5px 5px 0;
}

.layer-list h3
{
	margin-bottom: 8px;
	font-size: 12px;
	color: #dbe3e8;
}

.layer-group
{
	border: 1px solid #29343c;
	border-radius: 6px;
	background: #0e1419;
	margin-bottom: 7px;
	overflow: hidden;
}

.layer-group > summary
{
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	padding: 8px 9px;
	cursor: pointer;
	color: #bac5cc;
	font-size: 10px;
	font-weight: 800;
	list-style: none;
	user-select: none;
}

.layer-group > summary::-webkit-details-marker { display: none; }
.layer-group > summary > span { display: inline-flex; align-items: center; gap: 7px; }
.layer-group > summary > span::before
{
	content: '▸';
	color: #77858f;
}
.layer-group[open] > summary > span::before { content: '▾'; }
.layer-group > summary small { color: #75828c; font-size: 9px; }
.layer-group[open] > summary { border-bottom: 1px solid #29343c; background: #121a20; color: #e3e9ed; }

.layer-group .layer-item
{
	padding: 8px 9px;
	border-bottom-color: #202a31;
}
.layer-group .layer-item:last-child { border-bottom: 0; }
.layer-item.is-active
{
	background: #293724 !important;
	color: #eff8cf !important;
	box-shadow: inset 3px 0 var(--accent);
}
.layer-item.is-active i { color: var(--accent); }
.layer-item.is-active small { color: #c8d79c; }

.editor-token
{
	cursor: pointer;
	filter: drop-shadow(0 3px 3px rgba(0,0,0,.42));
}
.editor-mode .tool-button[data-tool="edit"].is-active ~ * .editor-token { cursor: move; }
.token-selection-outline
{
	fill: rgba(182, 214, 60, .06);
	stroke: var(--accent);
	stroke-width: 3;
	stroke-dasharray: 8 5;
	pointer-events: none;
}
.portal-axis
{
	stroke: #68b8e8;
	stroke-width: 4;
	stroke-dasharray: 8 5;
	pointer-events: stroke;
}
.portal-axis.is-selected { stroke: var(--accent); stroke-width: 6; }
.placement-image { pointer-events: none; }
.placement-token-border
{
	fill: none;
	/* Die Rahmenbreite wird passend zum Token-Durchmesser im SVG gesetzt. */
	pointer-events: none;
	filter: drop-shadow(0 2px 2px rgba(0,0,0,.55));
}

.editor-mode .json-details { margin-top: 10px; }
.editor-mode .json-property-box { font-size: 9px !important; min-height: 80px; }

@media (min-width: 1251px)
{
	.editor-workspace-grid.tile-editor-layout
	{
		grid-template-columns: 310px minmax(440px, 1fr) 350px;
	}
}

/* --- Mission Editor ---------------------------------------------------- */
.editor-workspace-grid.mission-editor-layout{grid-template-columns:300px minmax(440px,1fr) 350px;gap:0;height:calc(100vh - 70px);min-height:560px}
.mission-library{display:flex;flex-direction:column;overflow:hidden!important;padding:12px!important}
.mission-library-main,.mission-library-picker{display:flex;flex:1 1 auto;min-height:0;flex-direction:column;gap:9px}
.mission-library-scroll{flex:1 1 auto;min-height:0;overflow:auto;padding-right:3px}
.mission-tile-grid,.mission-asset-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.mission-tile-card,.mission-asset-card{border:1px solid #2c3740;background:#0d1317;color:#dce5ea;border-radius:6px;padding:6px;display:flex;min-width:0;flex-direction:column;gap:6px;cursor:pointer;text-align:left}
.mission-tile-card:hover,.mission-tile-card.is-selected,.mission-asset-card:hover,.mission-asset-card.is-selected{border-color:var(--accent);background:#172027}
.mission-tile-thumb,.mission-asset-thumb{display:grid;place-items:center;width:100%;aspect-ratio:1;background:#070a0c;border-radius:4px;overflow:hidden}
.mission-tile-thumb img,.mission-asset-thumb img{width:100%;height:100%;object-fit:contain;display:block}
.mission-tile-card strong,.mission-asset-card strong{font-size:11px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mission-tile-card small,.mission-asset-card small{font-size:9px;color:#84939d;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mission-asset-card .mission-asset-thumb{aspect-ratio:4/3}.mission-asset-card>span:last-child{font-size:10px;line-height:1.2}
.mission-library-group{border:1px solid #26313a;border-radius:6px;margin-bottom:8px;background:#0d1216}.mission-library-group>summary{cursor:pointer;padding:8px 9px;font-size:10px;font-weight:800;color:#d5dee4}.mission-library-group>.mission-asset-grid{padding:0 8px 8px}
.mission-zoom-controls{flex:0 0 auto;margin:10px -12px -12px;padding:10px 12px 12px;background:#0c1115;border-top:1px solid var(--line)}
.mission-canvas-panel{position:relative}.mission-toolbar{flex:0 0 auto;display:flex;align-items:center;gap:5px;padding:8px 10px;background:#0f151a;border-bottom:1px solid var(--line)}
.mission-toolbar .uk-button.is-active{border-color:var(--accent);color:var(--accent-2);box-shadow:inset 0 -2px var(--accent);background:#1a242b}
.mission-map-scroll{overflow:hidden!important;padding:0!important;position:relative;background:#080c0f!important;cursor:default!important}.mission-map-scroll.is-panning{cursor:grabbing!important}
.mission-map-stage{width:100%;height:100%;min-height:100%;display:block;user-select:none;touch-action:none}
.map-slot rect{fill:rgba(255,255,255,.015);stroke:#26323a;stroke-width:1.5;stroke-dasharray:10 8;vector-effect:non-scaling-stroke}.map-slot:hover rect{fill:rgba(182,214,60,.045);stroke:#82914c}.map-slot-plus{fill:#47545d;font:600 34px Mulish,sans-serif;pointer-events:none}
.map-tile{cursor:pointer}.map-tile-selection{fill:none;stroke:#d8ef7c;stroke-width:2;vector-effect:non-scaling-stroke;pointer-events:none}.map-tile-label{pointer-events:none}.map-tile-label text{fill:#fff;font:900 48px Mulish,sans-serif;paint-order:stroke;stroke:#000;stroke-width:8px;stroke-linejoin:round}.map-tile-mismatch-edge{stroke:#ff3f46;stroke-width:3;stroke-dasharray:10 7;stroke-linecap:round;vector-effect:non-scaling-stroke;pointer-events:none}
.map-connector-line{stroke:#67c7ff;stroke-width:4;vector-effect:non-scaling-stroke;cursor:pointer;pointer-events:stroke}.map-connector-line:hover,.map-connector-line.is-pending{stroke:#d8ef7c;stroke-width:6}.edge-link-badge{fill:#d8ef7c;font:800 12px Mulish,sans-serif;paint-order:stroke;stroke:#000;stroke-width:3px;vector-effect:non-scaling-stroke}
.mission-logical-zone{cursor:pointer}.mission-logical-zone-surface{fill:rgba(90,170,220,.05);stroke:none;pointer-events:all}.mission-logical-zone-boundary{fill:none;stroke:rgba(130,200,240,.48);stroke-width:1.5;vector-effect:non-scaling-stroke;pointer-events:none;stroke-linejoin:round;stroke-linecap:round}.mission-logical-zone:hover .mission-logical-zone-surface,.mission-logical-zone.is-selected .mission-logical-zone-surface{fill:rgba(216,239,124,.1)}.mission-logical-zone:hover .mission-logical-zone-boundary,.mission-logical-zone.is-selected .mission-logical-zone-boundary{stroke:#d8ef7c;stroke-width:2.5}
.map-door-target{stroke:#b6d63c;stroke-width:8;stroke-linecap:round;vector-effect:non-scaling-stroke;opacity:.75;cursor:pointer;pointer-events:stroke}.map-door-target:hover{stroke:#fff;opacity:1}.map-door,.mission-object{cursor:pointer}.mission-object:active{cursor:grabbing}.map-door-hitbox,.mission-object-hitbox{fill:transparent;pointer-events:all}.map-door-image,.mission-object image{pointer-events:auto}.mission-object-selection{fill:none;stroke:#d8ef7c;stroke-width:1.5;stroke-dasharray:6 4;vector-effect:non-scaling-stroke;pointer-events:none}.mission-object-placeholder{fill:#26313a;stroke:#8998a2;stroke-width:1.5;vector-effect:non-scaling-stroke}.mission-token-surface,.mission-token-avatar,.mission-token-border,.mission-token-highlight,.mission-token-shadow,.mission-token-placeholder{pointer-events:none}.mission-token-border{filter:drop-shadow(0 4px 7px rgba(0,0,0,.28))}.mission-token-highlight{fill:none;stroke:rgba(255,255,255,.26);stroke-width:3;vector-effect:non-scaling-stroke}.mission-token-shadow{fill:none;stroke:rgba(0,0,0,.22);stroke-width:3;vector-effect:non-scaling-stroke}.mission-token-placeholder{fill:#26313a;stroke:#91a0a9;stroke-width:1.5;vector-effect:non-scaling-stroke}.mission-token-label{fill:#fff;font:700 12px Mulish,sans-serif;pointer-events:none}.mission-object-selection.is-token{stroke-width:2;stroke-dasharray:8 5}.mission-object text{fill:#fff;font:700 12px Mulish,sans-serif;pointer-events:none}
.mission-target-zone,.mission-start-zone{fill:transparent;stroke-width:4;stroke-dasharray:14 10;vector-effect:non-scaling-stroke;pointer-events:none}.mission-target-zone{stroke:var(--target-color,#f6c945)}.mission-start-zone{stroke:var(--start-color,#2f80ed)}.mission-start-badge circle{fill:#183d66;stroke:var(--start-color,#2f80ed);stroke-width:2;vector-effect:non-scaling-stroke}.mission-zone-fa-icon{fill:#fff;font-family:"Font Awesome 7 Pro";font-size:16px;font-weight:300;pointer-events:none;paint-order:stroke;stroke:rgba(0,0,0,.35);stroke-width:1.2px}.mission-start-icon{font-size:21px}.mission-info-icon{font-size:23px;font-weight:900}.mission-noise-symbol{pointer-events:none}.mission-noise-value{fill:#fff;font:900 18px Mulish,sans-serif;paint-order:stroke;stroke:#000;stroke-width:4px;pointer-events:none}.mission-info-badge{cursor:pointer}.mission-info-badge circle{fill:#284f6a;stroke:#8ed5ff;stroke-width:1.5;vector-effect:non-scaling-stroke}.mission-target-hint-badge circle{fill:#000;stroke:var(--target-color,#f6c945);stroke-width:5;vector-effect:non-scaling-stroke}
.asset-readonly{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;align-items:center;margin-bottom:10px}.asset-readonly>div{height:38px;border:1px solid #34404a;background:#0e1418;border-radius:5px;display:flex;align-items:center;gap:7px;padding:4px 7px;min-width:0}.asset-readonly img{width:31px;height:31px;object-fit:contain}.asset-readonly span{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.inspector-grid-two{display:grid;grid-template-columns:1fr 1fr;gap:7px}.inspector-value-stepper{display:grid;grid-template-columns:36px minmax(0,1fr) 36px;gap:4px;align-items:center}.inspector-value-stepper .uk-button{width:36px;padding:0;display:grid;place-items:center}.inspector-value-stepper .uk-input{text-align:center;min-width:0;padding-left:4px;padding-right:4px}.rotation-buttons{display:grid;grid-template-columns:auto 1fr auto;gap:6px;align-items:center}.rotation-buttons strong{text-align:center;font-size:11px}.tile-rotation-field{margin-top:10px}.tile-rotation-buttons{display:grid;grid-template-columns:1fr 1fr;gap:6px}.zone-rule-list{margin-top:8px}.zone-rule-section{padding:11px 0;border-top:1px solid #29343d}.zone-rule-section:first-child{padding-top:2px;border-top:0}.zone-rule-fields{display:grid;gap:7px;padding:7px 0 0}.zone-rule-fields>small{color:#83919a;font-size:9px;line-height:1.45}.mission-inspector-switch{width:100%}.door-requirements{display:grid;gap:5px;margin:7px 0 10px}.json-details{border-top:1px solid #29333b;margin-top:10px;padding-top:8px}.json-details summary{cursor:pointer;color:#9dabb5;font-size:10px;font-weight:800}.json-details pre{white-space:pre-wrap;font-size:9px;line-height:1.5;color:#b8c4cc;background:#090d10!important;border:1px solid #29343d!important;border-radius:5px;padding:10px;margin:8px 0 0;box-shadow:none!important}.mission-layer-list{display:grid;gap:7px}.layer-group{border:1px solid #29343d;border-radius:6px;background:#0c1216}.layer-group>summary{cursor:pointer;padding:7px 8px;font-size:10px;font-weight:800}.layer-group>summary span{float:right;color:#77858f}.layer-row{width:100%;border:0;border-top:1px solid #232d34;background:transparent;color:#d2dbe0;display:flex;justify-content:space-between;gap:8px;padding:6px 8px;font-size:10px;cursor:pointer;text-align:left}.layer-row:hover{background:#172027}.layer-row small{color:#7d8b95}.compact-list{display:grid;gap:4px}.validation-summary{display:flex;gap:8px;margin-bottom:8px}.validation-summary strong,.validation-summary span{background:#171f24;border:1px solid #2e3941;padding:4px 7px;border-radius:999px;font-size:9px}.validation-ok{display:flex;gap:7px;align-items:center;padding:9px;border:1px solid #365b42;background:#102019;border-radius:6px;color:#badfc4}.validation-item{display:grid;gap:2px;padding:8px;margin:6px 0;border-radius:6px;font-size:10px}.validation-item.error{background:#271315;border:1px solid #6c3035}.validation-item.warning{background:#282311;border:1px solid #665b2c}.validation-item strong{font-size:10px}.validation-item span{color:#b9c4ca}.item-list-preview{display:grid;place-items:center;width:72px;height:46px;background:#0b1014;border:1px solid #303b43;border-radius:4px;overflow:hidden}.item-list-preview img{width:100%;height:100%;object-fit:contain}.item-group-tags{display:flex;gap:4px;flex-wrap:wrap}.item-group-tag{font-size:9px;border:1px solid #34414a;background:#11191e;border-radius:999px;padding:2px 6px}.item-groups-editor{display:grid;gap:5px}.item-group-row{display:grid;grid-template-columns:auto minmax(0,1fr) 84px;align-items:center;gap:8px;padding:7px;border:1px solid #2c3740;border-radius:5px}.item-group-row span{display:grid}.item-group-row strong{font-size:10px}.item-group-row small{font-size:9px;color:#7d8a94}.item-preview{min-height:360px;display:grid;place-items:center;background:#090d10;border:1px solid #2b353d}.item-preview img{max-width:100%;max-height:520px;object-fit:contain}.item-editor-grid{align-items:start}
@media(max-width:1250px){.editor-workspace-grid.mission-editor-layout{grid-template-columns:270px minmax(380px,1fr) 315px}}
@media(max-width:900px){.editor-workspace-grid.mission-editor-layout{grid-template-columns:1fr;height:auto}.mission-library,.mission-inspector{min-height:520px}.mission-map-scroll{min-height:620px!important}}
.mission-exit-label{fill:#fff;font:800 15px Mulish,sans-serif;paint-order:stroke;stroke:#111;stroke-width:4px;vector-effect:non-scaling-stroke;pointer-events:none}
.item-property-checks{display:flex;flex-direction:column;gap:8px;justify-content:flex-end;padding-bottom:2px}

/* --- Gegenstandsverwaltung: typabhängige Eigenschaften ---------------- */
.item-admin-table .item-seq{width:42px;text-align:center;color:#7f8d96;font-variant-numeric:tabular-nums}.item-admin-table td{vertical-align:middle}.item-groups-list{display:flex;flex-direction:column;gap:3px}.item-groups-list span{display:block;line-height:1.25}.item-groups-list strong{font-size:10px}.item-groups-list small{color:#8f9ca5;font-size:9px}.item-groups-list .muted{color:#68757e}
.item-form-layout{max-width:1500px;margin:0 auto}.item-form-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;align-items:start}.item-form-card{min-width:0}.item-field-grid{display:grid;gap:8px;align-items:end}.item-field-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.item-field-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.item-field-grid.five{grid-template-columns:repeat(5,minmax(0,1fr))}.item-field-grid.compact-top{margin-top:8px}.item-checkbox-field{min-height:40px;display:flex;align-items:center;padding-bottom:6px}
.item-image-inline{display:grid;grid-template-columns:150px minmax(0,1fr);gap:10px;align-items:stretch}.item-image-current{height:128px;border:1px solid #303b43;border-radius:6px;background:#090d10;display:grid;place-items:center;overflow:hidden}.item-image-current img{width:100%;height:100%;object-fit:contain}.item-upload-field{min-width:0;height:128px}.item-upload-field .upload-dropzone{height:100%;min-height:0;box-sizing:border-box}.item-upload-dropzone .upload-copy{min-width:0}.item-upload-dropzone .upload-file-name{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.item-type-panel{display:none}.item-attack-card{border:1px solid #2d3942;background:#0d1317;border-radius:6px;padding:9px;margin-top:9px}.item-switch-title{display:flex;align-items:center;gap:7px;margin-bottom:8px;font-size:11px}.item-mode-fields.is-disabled{opacity:.42}.item-door-row{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:10px;align-items:end;margin-top:10px;padding:9px;border:1px solid #2c3740;border-radius:6px}.item-door-row>label{align-self:center}.item-groups-title{margin-top:2px}.item-groups-editor{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.item-group-row{display:grid;grid-template-columns:minmax(0,1fr) 110px;gap:8px;align-items:center;padding:8px 9px;border:1px solid #2b363f;background:#0d1317;border-radius:6px;transition:border-color .15s,background .15s}.item-group-row.is-active{border-color:#63773b;background:#151d18}.item-group-main{display:flex;gap:7px;align-items:center;min-width:0}.item-group-main strong{font-size:10px}.item-group-count{display:grid;grid-template-columns:auto 55px;gap:6px;align-items:center}.item-group-count span{font-size:9px;color:#87949d}.item-group-count .uk-input{height:31px;text-align:center}.item-form-actions{margin-top:14px}
@media(max-width:1150px){.item-field-grid.five{grid-template-columns:repeat(3,minmax(0,1fr))}.item-form-columns{grid-template-columns:1fr}}
@media(max-width:700px){.item-field-grid.two,.item-field-grid.three,.item-field-grid.five,.item-groups-editor,.item-door-row,.item-image-inline{grid-template-columns:1fr}.item-image-current{height:180px}.item-upload-field{height:auto;min-height:120px}}

/* Gegenstandsliste: kompakte Vorschau und Gruppen strikt zeilenweise */
.item-admin-table th:nth-child(2),.item-admin-table td:nth-child(2){width:56px}.item-list-preview{width:42px!important;height:32px!important;max-width:42px!important;max-height:32px!important}.item-list-preview img{display:block;width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:contain}.item-groups-list{display:block!important;list-style:none!important;margin:0!important;padding:0!important}.item-groups-list li{display:flex!important;align-items:baseline;gap:5px;white-space:nowrap;line-height:1.35;margin:0 0 2px}.item-groups-list li:last-child{margin-bottom:0}.item-groups-list strong{font-size:10px}.item-groups-list small{font-size:9px;color:#8f9ca5}.item-groups-list .muted{color:#68757e}

/* Gegenstandsverwaltung: kompaktes Listenbild und zweispaltige Detailmaske */
.item-admin-table th:nth-child(2),.item-admin-table td:nth-child(2){width:96px}
.item-admin-table .item-list-preview{display:flex!important;align-items:center!important;justify-content:center!important;width:90px!important;height:70px!important;max-width:90px!important;max-height:70px!important;overflow:hidden!important;background:#0b1014;border:1px solid #303b43;border-radius:4px}
.item-admin-table .item-list-preview img{display:block!important;width:auto!important;height:auto!important;max-width:90px!important;max-height:70px!important;object-fit:contain!important}
.item-admin-table .item-groups-list{display:block!important;list-style:none!important;margin:0!important;padding:0!important}
.item-admin-table .item-groups-list li{display:block!important;white-space:normal!important;line-height:1.35;margin:0 0 3px;padding:0}
.item-admin-table .item-groups-list li strong,.item-admin-table .item-groups-list li small{display:inline!important}
.item-admin-table .item-groups-list li small{margin-left:5px}

.item-form-layout{max-width:1600px;margin:0 auto}
.item-form-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;align-items:start}
.item-form-card{min-width:0;height:100%;box-sizing:border-box}
.item-master-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.item-master-full{grid-column:1/-1}
.item-image-upload-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;margin-top:10px;align-items:stretch}
.item-image-current{height:150px;min-width:0;border:1px solid #303b43;border-radius:6px;background:#090d10;display:grid;place-items:center;overflow:hidden}
.item-image-current img{display:block;width:100%;height:100%;object-fit:contain}
.item-upload-stack{display:grid;grid-template-rows:minmax(0,1fr) auto;gap:8px;min-width:0}
.item-upload-field{min-width:0;height:auto;min-height:108px}
.item-upload-field .upload-dropzone{height:100%;min-height:108px;box-sizing:border-box}
.item-active-switch{justify-self:start}

.item-switch{position:relative;display:inline-flex;align-items:center;gap:8px;min-height:30px;cursor:pointer;user-select:none;color:#d0d9df;font-size:10px;font-weight:700}
.item-switch input{position:absolute;opacity:0;pointer-events:none}
.item-switch-control{position:relative;display:inline-block;flex:0 0 auto;width:34px;height:18px;border-radius:999px;background:#253039;border:1px solid #46535d;transition:background .15s,border-color .15s}
.item-switch-control::after{content:"";position:absolute;left:2px;top:2px;width:12px;height:12px;border-radius:50%;background:#aab5bc;transition:transform .15s,background .15s}
.item-switch input:checked + .item-switch-control{background:#35451e;border-color:#708936}
.item-switch input:checked + .item-switch-control::after{transform:translateX(16px);background:#dce9b7}
.item-switch input:focus-visible + .item-switch-control{outline:2px solid #8ca84c;outline-offset:2px}
.item-switch-label{min-width:0}
.item-switch-field{min-height:40px;display:flex;align-items:flex-end;padding-bottom:3px}

.item-groups-section{margin-top:14px;padding-top:12px;border-top:1px solid #2a353d}
.item-groups-title{margin:0 0 4px}
.item-groups-editor{display:grid;grid-template-columns:1fr;gap:6px}
.item-group-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;align-items:center;padding:7px 9px;border:1px solid #2b363f;background:#0d1317;border-radius:6px;transition:border-color .15s,background .15s}
.item-group-row.is-active{border-color:#63773b;background:#151d18}
.item-group-main{width:100%}
.item-group-count{display:grid;grid-template-columns:auto minmax(55px,1fr);gap:7px;align-items:center;margin:0}
.item-group-count span{font-size:9px;color:#87949d}
.item-group-count .uk-input{height:31px;text-align:center}

.item-properties-card .item-type-panel{display:none}
.item-properties-card .item-field-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;align-items:end}
.item-attack-card{border:1px solid #2d3942;background:#0d1317;border-radius:6px;padding:9px;margin-top:9px}
.item-switch-title{margin:0 0 8px}
.item-mode-fields[hidden], [data-door-noise][hidden]{display:none!important}
.item-grid-placeholder{min-height:1px}
.item-form-actions{grid-column:1/-1;margin-top:0}

@media(max-width:900px){.item-form-columns{grid-template-columns:1fr}.item-form-actions{grid-column:1}.item-form-card{height:auto}}
@media(max-width:650px){.item-master-grid,.item-image-upload-row,.item-properties-card .item-field-grid,.item-group-row{grid-template-columns:1fr}.item-master-full{grid-column:auto}.item-grid-placeholder{display:none}.item-image-current{height:180px}}

/* --- Gegenstandsdetail: finale Anordnung und kompakte Formular-Typografie --- */
.item-form-layout
{
    max-width: none;
    margin: 0;
}

.item-form-columns
{
    grid-template-columns: minmax(0, 760px) minmax(0, 1fr);
    gap: 26px;
    width: 100%;
}

.item-form-card
{
    max-width: none !important;
    width: 100%;
}

.item-form-layout .uk-input,
.item-form-layout .uk-select,
.item-form-layout .uk-textarea
{
    font-size: 14px !important;
}

.item-form-layout .uk-form-label
{
    display: block;
    margin: 0 0 5px;
    color: #c8d0d6;
    font-size: .75rem !important;
    font-weight: 400 !important;
    line-height: 1.25;
}

.item-image-section
{
    margin-top: 10px;
}

.item-image-upload-row
{
    margin-top: 0;
}

.item-image-current
{
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 8px;
}

.item-image-current img
{
    display: block !important;
    width: auto !important;
    height: auto !important;
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: contain !important;
    object-position: center !important;
}

.item-switch
{
    min-height: 34px;
    gap: 10px;
    color: #e7edf1;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.2;
}

.item-switch-control
{
    width: 46px;
    height: 24px;
    border-width: 1px;
}

.item-switch-control::after
{
    left: 2px;
    top: 2px;
    width: 18px;
    height: 18px;
}

.item-switch input:checked + .item-switch-control::after
{
    transform: translateX(20px);
}

.item-switch-label,
.item-group-main .item-switch-label
{
    font-size: 14px;
    font-weight: 400;
}

.item-active-switch
{
    min-height: 34px;
}

.item-groups-section
{
    margin-top: 14px;
    padding-top: 12px;
    border-top: 1px solid #2a353d;
}

.item-groups-editor
{
    display: grid;
    grid-template-columns: 1fr;
    gap: 6px;
}

.item-group-row
{
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 8px;
    padding: 7px 9px;
}

.item-group-main
{
    width: 100%;
}

.item-group-count
{
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(70px, 50%);
    gap: 8px;
    align-items: center;
    width: 100%;
    margin: 0;
}

.item-group-count .uk-form-label
{
    justify-self: end;
    margin: 0;
    text-align: right;
}

.item-group-count .uk-input
{
    width: 100%;
    height: 34px;
    text-align: center;
}

.item-properties-description
{
    margin-bottom: 14px;
}

.item-properties-description .uk-textarea
{
    min-height: 96px;
    resize: vertical;
}

.item-properties-card .item-type-panel
{
    display: none;
}

.item-properties-card .item-field-grid
{
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    align-items: end;
}

.item-switch-property
{
    min-width: 0;
}

.item-switch-property > .item-switch
{
    min-height: 40px;
}

.item-weapon-core
{
    margin-bottom: 14px;
}

.item-weapon-modes
{
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
    align-items: start;
}

.item-weapon-mode
{
    min-width: 0;
}

.item-mode-toggle
{
    margin-bottom: 8px;
}

.item-mode-toggle > .item-switch
{
    min-height: 34px;
}

.item-mode-fields[hidden],
[data-door-noise][hidden]
{
    display: none !important;
}

.item-mode-field-grid
{
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    align-items: end;
}

.item-mode-field-grid > div
{
    min-width: 0;
}

/* Die bisherigen eingerahmten Waffen-Unterbereiche werden nicht mehr verwendet. */
.item-properties-card .item-attack-card
{
    border: 0;
    background: transparent;
    border-radius: 0;
    padding: 0;
    margin: 0;
}

@media (max-width: 1250px)
{
    .item-form-columns
    {
        grid-template-columns: minmax(0, 620px) minmax(0, 1fr);
        gap: 20px;
    }

    .item-weapon-modes
    {
        gap: 14px;
    }
}

@media (max-width: 980px)
{
    .item-form-columns
    {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .item-form-actions
    {
        grid-column: 1;
    }

    .item-form-card
    {
        height: auto;
    }
}

@media (max-width: 700px)
{
    .item-master-grid,
    .item-image-upload-row,
    .item-properties-card .item-field-grid,
    .item-group-row,
    .item-weapon-modes,
    .item-mode-field-grid
    {
        grid-template-columns: 1fr;
    }

    .item-master-full
    {
        grid-column: auto;
    }

    .item-group-count
    {
        grid-template-columns: minmax(0, 1fr) minmax(80px, 50%);
    }
}


/* --- Gegenstandsdetail: kleine Ausrichtungs-Korrekturen --- */
.item-switch-nowrap .item-switch-label
{
    white-space: nowrap;
}

/*
 * Der Tür-Lärm-Select vergrößert seine Grid-Zeile beim Einblenden.
 * Die Mindesthöhe reserviert diesen Platz bereits im deaktivierten Zustand,
 * damit der Switch "Kann Türen öffnen" nicht nach unten springt.
 */
.item-door-switch-property
{
    min-height: 61px;
    display: flex;
    align-items: flex-end;
}

.item-door-switch-property > .item-switch
{
    flex: 0 0 auto;
}

/* Gegenstandsverwaltung: Listenfilter und Detailaktionen */
.item-list-filters{display:grid;grid-template-columns:minmax(240px,1.4fr) repeat(3,minmax(150px,1fr)) auto;gap:10px;align-items:end;margin-bottom:12px;padding:12px}
.item-list-filters .item-filter-field{min-width:0}.item-list-filters .uk-form-label{display:block;margin-bottom:4px}.item-filter-actions{display:flex;align-items:flex-end}.item-filter-actions .uk-button{white-space:nowrap}
.item-admin-table th:nth-child(6),.item-admin-table td:nth-child(6){white-space:nowrap;width:92px}
.item-form-actions{display:flex!important;align-items:center;gap:8px}.item-form-action-spacer{flex:1 1 auto}.item-delete-button{margin-right:auto}
@media(max-width:1100px){.item-list-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.item-filter-actions{grid-column:1/-1}.item-filter-actions .uk-button{width:100%}}
@media(max-width:640px){.item-list-filters{grid-template-columns:1fr}}

/* Gegenstandsübersicht: Slots nur für Rüstung; separate Waffen-Händigkeit. */
.item-admin-table th:nth-child(6),.item-admin-table td:nth-child(6){width:82px;white-space:nowrap}
.item-admin-table th:nth-child(7),.item-admin-table td:nth-child(7){width:118px;white-space:nowrap}
.item-handedness{display:inline-flex;align-items:center;gap:7px}
.item-handedness-symbol{display:inline-flex;align-items:center;justify-content:center;gap:3px;min-width:29px;height:27px;padding:0 6px;border:1px solid #34414a;border-radius:5px;background:#11191e;color:#d8e0e5;font-size:13px}
.item-handedness-symbol small{font-size:9px;line-height:1;color:#9eabb4}
.item-handedness-symbol.dual.allowed{color:var(--accent,#69b578);border-color:rgba(105,181,120,.55)}
.item-handedness-symbol.dual.denied{color:#66747d}
.catalog-list-filters{display:grid;grid-template-columns:minmax(260px,520px) auto;gap:10px;align-items:end;margin-bottom:12px;padding:12px}.catalog-filter-field{min-width:0}.catalog-list-filters .uk-form-label{display:block;margin-bottom:4px}.catalog-filter-actions{display:flex;align-items:flex-end}.catalog-filter-actions .uk-button{white-space:nowrap}@media(max-width:640px){.catalog-list-filters{grid-template-columns:1fr}.catalog-filter-actions .uk-button{width:100%}}
.admin-table .item-seq{width:42px;text-align:center;color:#7f8d96;font-variant-numeric:tabular-nums}


/* Mission-Editor: einheitliche Form-Control-Höhen im Eigenschaften-Inspector */
.mission-inspector [data-map-inspector] .uk-input,
.mission-inspector [data-map-inspector] .uk-select,
.mission-inspector [data-map-inspector] .uk-button {
    box-sizing: border-box;
    height: 36px;
    min-height: 36px;
}
.mission-inspector [data-map-inspector] .uk-input { font-size: 12px; }
.mission-inspector [data-map-inspector] .uk-select { font-size: 13px; line-height: 34px; }
.mission-inspector [data-map-inspector] .uk-button { line-height: 34px; }
.mission-inspector [data-map-inspector] input[type="color"].uk-input { padding: 3px 6px; }
.mission-inspector [data-map-inspector] .icon-button {
    width: 36px;
    min-width: 36px;
    height: 36px;
    min-height: 36px;
}
.mission-inspector [data-map-inspector] .asset-readonly > div { height: 36px; }
.mission-inspector [data-map-inspector] .asset-readonly img { width: 29px; height: 29px; }

/* Mission Editor: zweistufige Missionselement-Bibliothek */
.mission-element-group-grid{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.mission-element-group-card{border:1px solid #2c3740;background:#0d1317;color:#dce5ea;border-radius:6px;padding:8px;display:flex;min-width:0;min-height:112px;flex-direction:column;justify-content:space-between;gap:8px;cursor:pointer;text-align:left;transition:border-color .15s,background .15s}
.mission-element-group-card:hover{border-color:var(--accent);background:#172027}
.mission-element-group-icon{display:grid;place-items:center;min-height:62px;border-radius:4px;background:#070a0c;color:var(--accent-2);font-size:27px}
.mission-element-group-card strong{display:block;font-size:11px;line-height:1.25}.mission-element-group-card small{display:block;margin-top:2px;color:#84939d;font-size:9px}
.mission-element-back{grid-column:1/-1;width:100%;justify-content:flex-start;margin-top:8px}.mission-tile-grid>.mission-asset-grid{grid-column:1/-1;width:100%}
.mission-custom-item-editor{display:grid;gap:9px}.mission-custom-item-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:10px;padding-top:10px;border-top:1px solid #29343d}.mission-custom-item-actions .uk-button{height:36px}

.mission-asset-thumb>i,.asset-list-preview>i,.item-list-preview>i{color:#65737d;font-size:24px}.mission-asset-thumb>i{font-size:26px}.asset-readonly>div>i{color:#6f7d86;font-size:18px;min-width:29px;text-align:center}

/* Mission Editor: Platzierungsvorschau und Kisteninhalt */
.crate-content-tree{display:grid;gap:7px;margin-top:10px;padding-top:10px;border-top:1px solid #29343d}
.crate-content-tree>strong{font-size:11px}
.crate-content-group,.crate-content-type{border:1px solid #2c3740;border-radius:5px;background:#0c1216;overflow:hidden}
.crate-content-group>summary,.crate-content-type>summary{display:flex;align-items:center;justify-content:space-between;gap:8px;cursor:pointer;padding:7px 8px;list-style:none}
.crate-content-group>summary::-webkit-details-marker,.crate-content-type>summary::-webkit-details-marker{display:none}
.crate-content-group>summary label,.crate-content-type>summary label{display:flex;align-items:center;gap:6px;min-width:0;font-size:10px;font-weight:800}
.crate-content-group>summary small,.crate-content-type>summary small{color:#7f8d96;font-size:9px}
.crate-content-type{margin:0 7px 7px;background:#10171c}
.crate-content-items{display:grid;border-top:1px solid #26313a}
.crate-content-item{display:grid;grid-template-columns:minmax(0,1fr) 116px;gap:8px;align-items:center;padding:6px 7px;border-top:1px solid #202a31}
.crate-content-item:first-child{border-top:0}
.crate-content-item>label{display:flex;align-items:center;gap:6px;min-width:0;font-size:10px}
.crate-content-item>label span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* Grafische Elemente: zwei Filter + Aktion */
.catalog-list-filters{grid-template-columns:minmax(260px,1fr) minmax(180px,260px) auto}
@media(max-width:800px){.catalog-list-filters{grid-template-columns:1fr 1fr}.catalog-filter-actions{grid-column:1/-1}}
@media(max-width:640px){.catalog-list-filters{grid-template-columns:1fr}}

/* Missionseditor: einheitliche Transformationssteuerung und Kistenbaum */
.mission-placement-zone-highlight{pointer-events:none!important}
.mission-placement-zone-highlight .mission-logical-zone-surface{pointer-events:none}
.mission-placement-zone-highlight .mission-logical-zone-surface{fill:rgba(216,239,124,.1)}
.mission-placement-zone-highlight .mission-logical-zone-boundary{fill:none;stroke:#d8ef7c;stroke-width:2.5;stroke-dasharray:none;vector-effect:non-scaling-stroke;stroke-linejoin:round;stroke-linecap:round}
.mission-element-transform-grid{align-items:end}
.mission-element-rotation{grid-template-columns:36px minmax(0,1fr) 36px;gap:4px}
.mission-element-rotation .uk-button{width:36px;padding:0;display:grid;place-items:center}
.mission-element-rotation-value{height:36px;box-sizing:border-box;border:1px solid #34404a;background:#0e1418;border-radius:4px;display:flex;align-items:center;justify-content:center;color:#d9e2e8;font-size:11px;font-weight:800}
.crate-content-type{margin-left:18px;margin-right:7px}
.crate-content-items{margin-left:18px}
.crate-content-item{display:block;padding:7px 9px 7px 12px}
.crate-content-group.is-partial>summary,.crate-content-type.is-partial>summary{background:rgba(216,239,124,.08);box-shadow:inset 3px 0 0 #d8ef7c}
.crate-content-group.is-partial>summary label,.crate-content-type.is-partial>summary label{color:#d8ef7c}
.crate-content-group input:indeterminate,.crate-content-type input:indeterminate{accent-color:#d8ef7c}


/* Missionseditor: eindeutige Kisten-Auswahl je Gruppe */
.crate-content-group.is-selected>summary,.crate-content-type.is-selected>summary,.crate-content-item.is-selected{background:rgba(216,239,124,.12);box-shadow:inset 3px 0 0 #d8ef7c}
.crate-content-group.is-selected>summary label,.crate-content-type.is-selected>summary label,.crate-content-item.is-selected>label{color:#d8ef7c}
.crate-content-group.is-partial>summary,.crate-content-type.is-partial>summary{background:rgba(216,239,124,.06);box-shadow:inset 3px 0 0 rgba(216,239,124,.7)}
.crate-content-group.is-partial>summary label,.crate-content-type.is-partial>summary label{color:#c8d994}
.crate-content-item{display:flex;align-items:center;justify-content:space-between;gap:8px}
.crate-content-item>label{flex:1 1 auto}
.crate-content-item>small{flex:0 0 auto;color:#7f8d96;font-size:9px;font-weight:700}
.crate-content-item.is-selected>small{color:#d8ef7c}
.crate-content-summary{margin-top:2px;padding:8px 9px;border:1px solid #2c3740;border-radius:5px;background:#0c1216;color:#aeb9c0;font-size:10px;font-weight:700}
