
.hhg-tg-generator {
	--hhg-main: var(--hhg-brand-main, #DCA54A);
	--hhg-accent: var(--hhg-brand-accent, #F3E3C7);
	--hhg-edge: var(--hhg-brand-border, #B1843A);
	--hhg-ink: var(--hhg-brand-text, #000000);
	--hhg-border: color-mix(in srgb, var(--hhg-edge) 42%, #ffffff);
	--hhg-soft: color-mix(in srgb, var(--hhg-accent) 42%, #ffffff);
	--hhg-text-soft: color-mix(in srgb, var(--hhg-ink) 62%, #ffffff);
	color: var(--hhg-ink);
	max-width: 1050px;
	margin: 28px auto;
	font-family: inherit;
}
.hhg-tg-generator * { box-sizing: border-box; }
.hhg-tg-header { margin-bottom: 22px; }
.hhg-tg-header h2 { margin-bottom: 6px; }
.hhg-tg-header p { margin: 0; color: var(--hhg-text-soft); }
.hhg-tg-steps {
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: 8px;
	list-style: none;
	margin: 0 0 22px;
	padding: 0;
}
.hhg-tg-steps li {
	display: flex;
	align-items: center;
	min-height: 58px;
	padding: 10px;
	border: 1px solid var(--hhg-border);
	border-radius: 10px;
	background: var(--hhg-soft);
	font-size: 13px;
	line-height: 1.25;
}
.hhg-tg-steps li span {
	display: inline-flex;
	flex: 0 0 25px;
	width: 25px;
	height: 25px;
	border-radius: 50%;
	align-items: center;
	justify-content: center;
	margin-right: 7px;
	background: #e5e5e5;
}
.hhg-tg-steps li.is-active {
	background: #fff;
	border-color: #999;
	font-weight: 700;
}
.hhg-tg-card {
	margin-bottom: 18px;
	padding: 22px;
	border: 1px solid var(--hhg-border);
	border-radius: 12px;
	background: #fff;
}
.hhg-tg-card h3 { margin-top: 0; margin-bottom: 18px; }
.hhg-tg-card-head {
	display: flex;
	justify-content: space-between;
	gap: 20px;
	align-items: flex-start;
	margin-bottom: 18px;
}
.hhg-tg-card-head h3 { margin: 0 0 4px; }
.hhg-tg-card-head p { margin: 0; color: var(--hhg-text-soft); }
.hhg-tg-save-state {
	white-space: nowrap;
	font-size: 13px;
	color: var(--hhg-text-soft);
}
.hhg-tg-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px;
}
.hhg-tg-field-wide { grid-column: 1 / -1; }
.hhg-tg-field label {
	display: block;
	font-weight: 650;
	margin-bottom: 6px;
}
.hhg-tg-field label span { color: #a00; }
.hhg-tg-field input,
.hhg-tg-field select,
.hhg-tg-field textarea {
	display: block;
	width: 100%;
	min-height: 44px;
	padding: 9px 11px;
	border: 1px solid #cfcfcf;
	border-radius: 8px;
	background: #fff;
	font: inherit;
}
.hhg-tg-field textarea { min-height: 90px; resize: vertical; }
.hhg-tg-field input:focus,
.hhg-tg-field select:focus,
.hhg-tg-field textarea:focus {
	outline: 2px solid currentColor;
	outline-offset: 1px;
}
.hhg-tg-field small {
	display: block;
	margin-top: 6px;
	color: var(--hhg-text-soft);
}
.hhg-tg-field.is-invalid input,
.hhg-tg-field.is-invalid select,
.hhg-tg-field.is-invalid textarea {
	border-color: #b42318;
}
.hhg-tg-logo-preview {
	margin-top: 10px;
	padding: 10px;
	border: 1px dashed var(--hhg-border);
	border-radius: 8px;
}
.hhg-tg-logo-preview img {
	display: block;
	max-width: 180px;
	max-height: 100px;
	object-fit: contain;
	margin-bottom: 8px;
}
.hhg-tg-link-button {
	padding: 0;
	border: 0;
	background: transparent;
	text-decoration: underline;
	cursor: pointer;
	font: inherit;
}
.hhg-tg-actions {
	display: flex;
	justify-content: space-between;
	gap: 12px;
	margin-top: 20px;
}
.hhg-tg-primary,
.hhg-tg-secondary {
	min-height: 44px;
	padding: 10px 16px;
	border-radius: 8px;
	font: inherit;
	font-weight: 650;
	cursor: pointer;
}
.hhg-tg-primary {
	border: 1px solid #222;
	background: #222;
	color: #fff;
}
.hhg-tg-secondary {
	border: 1px solid #bbb;
	background: #fff;
	color: inherit;
}
.hhg-tg-message {
	margin-top: 16px;
	padding: 12px 14px;
	border-radius: 8px;
	background: #f6f6f6;
}
.hhg-tg-message.is-error {
	background: #fff1f0;
	color: #8a1c16;
}
.hhg-tg-message.is-success {
	background: #f0f7f1;
	color: #245b2d;
}
@media (max-width: 800px) {
	.hhg-tg-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.hhg-tg-grid { grid-template-columns: 1fr; }
	.hhg-tg-field-wide { grid-column: auto; }
	.hhg-tg-card-head { display: block; }
	.hhg-tg-save-state { display: block; margin-top: 8px; }
}
@media (max-width: 520px) {
	.hhg-tg-steps { grid-template-columns: 1fr; }
	.hhg-tg-actions { flex-direction: column-reverse; }
	.hhg-tg-primary, .hhg-tg-secondary { width: 100%; }
}

.hhg-tg-step-panel[hidden] { display: none !important; }
.hhg-tg-choice-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
}
.hhg-tg-choice {
	display: block;
	padding: 16px;
	border: 1px solid var(--hhg-border);
	border-radius: 10px;
	cursor: pointer;
}
.hhg-tg-choice:has(input:checked) { border-color: #555; background: var(--hhg-soft); }
.hhg-tg-choice input { margin-right: 7px; }
.hhg-tg-choice strong { display: inline; }
.hhg-tg-choice small { display: block; margin: 7px 0 0 24px; color: var(--hhg-text-soft); }
.hhg-tg-age-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 10px;
}
.hhg-tg-check {
	display: flex;
	gap: 9px;
	align-items: flex-start;
	padding: 12px;
	border: 1px solid var(--hhg-border);
	border-radius: 9px;
}
.hhg-tg-check input { margin-top: 3px; }
.hhg-tg-check small { display: block; color: var(--hhg-text-soft); margin-top: 2px; }
.hhg-tg-help { color: var(--hhg-text-soft); margin-top: -8px; }
.hhg-tg-toggle-list { margin-top: 16px; }
.hhg-tg-info-card { background: var(--hhg-soft); }
.hhg-tg-rule-legend p:last-child { margin-bottom: 0; }
@media (max-width: 800px) {
	.hhg-tg-choice-grid { grid-template-columns: 1fr; }
	.hhg-tg-age-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

.hhg-tg-empty {
	padding: 26px;
	border: 1px dashed var(--hhg-border);
	border-radius: 10px;
	text-align: center;
	color: var(--hhg-text-soft);
}
.hhg-tg-empty p { margin-bottom: 0; }
.hhg-tg-competition-list { display: grid; gap: 10px; }
.hhg-tg-competition-item {
	display: grid;
	grid-template-columns: 36px 1fr auto;
	gap: 12px;
	align-items: center;
	padding: 14px;
	border: 1px solid var(--hhg-border);
	border-radius: 10px;
	background: #fff;
}
.hhg-tg-drag {
	cursor: grab;
	user-select: none;
	font-size: 20px;
	text-align: center;
	color: var(--hhg-text-soft);
}
.hhg-tg-competition-title { font-weight: 700; margin-bottom: 4px; }
.hhg-tg-competition-meta { font-size: 13px; color: var(--hhg-text-soft); }
.hhg-tg-competition-actions { display: flex; gap: 6px; flex-wrap: wrap; justify-content: flex-end; }
.hhg-tg-small-button {
	padding: 7px 9px;
	border: 1px solid #bbb;
	border-radius: 7px;
	background: #fff;
	cursor: pointer;
	font: inherit;
	font-size: 13px;
}
.hhg-tg-small-button.is-danger { color: #9f1d16; }
.hhg-tg-modal[hidden] { display: none !important; }
.hhg-tg-modal {
	position: fixed;
	inset: 0;
	z-index: 999999;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 20px;
}
.hhg-tg-modal-backdrop {
	position: absolute;
	inset: 0;
	background: rgba(0,0,0,.48);
}
.hhg-tg-modal-dialog {
	position: relative;
	width: min(900px, 100%);
	max-height: 90vh;
	overflow: auto;
	background: #fff;
	border-radius: 14px;
	padding: 22px;
	box-shadow: 0 20px 60px rgba(0,0,0,.24);
}
.hhg-tg-modal-head {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 16px;
	margin-bottom: 18px;
}
.hhg-tg-modal-head h3 { margin: 0; }
.hhg-tg-modal-close {
	border: 0;
	background: transparent;
	font-size: 30px;
	line-height: 1;
	cursor: pointer;
}
.hhg-tg-modal-actions {
	display: flex;
	justify-content: flex-end;
	gap: 10px;
	margin-top: 20px;
}
.hhg-tg-competition-item.is-dragging { opacity: .45; }
.hhg-tg-rule-warning {
	margin-top: 6px;
	color: #8a5a00;
	font-size: 13px;
}
@media (max-width: 700px) {
	.hhg-tg-competition-item { grid-template-columns: 30px 1fr; }
	.hhg-tg-competition-actions { grid-column: 1 / -1; justify-content: flex-start; }
	.hhg-tg-modal { padding: 8px; }
	.hhg-tg-modal-dialog { padding: 16px; max-height: 96vh; }
}

.hhg-tg-step-panel[data-step="4"] .hhg-tg-choice-grid {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}
@media (max-width: 800px) {
	.hhg-tg-step-panel[data-step="4"] .hhg-tg-choice-grid {
		grid-template-columns: 1fr;
	}
}

.hhg-tg-provision-list {
	display: grid;
	gap: 14px;
}
.hhg-tg-provision {
	padding: 16px;
	border: 1px solid var(--hhg-border);
	border-radius: 10px;
	background: #fff;
}
.hhg-tg-provision-toggle {
	display: flex;
	gap: 9px;
	align-items: flex-start;
	margin-bottom: 10px;
	cursor: pointer;
}
.hhg-tg-provision-toggle input {
	margin-top: 4px;
}
.hhg-tg-provision textarea {
	width: 100%;
	min-height: 95px;
	padding: 10px 11px;
	border: 1px solid #cfcfcf;
	border-radius: 8px;
	font: inherit;
	resize: vertical;
}
.hhg-tg-provision small {
	display: block;
	margin-top: 7px;
	color: var(--hhg-text-soft);
}
.hhg-tg-provision.is-disabled {
	opacity: .58;
	background: var(--hhg-soft);
}
.hhg-tg-custom-provision {
	margin-bottom: 14px;
	padding: 16px;
	border: 1px solid var(--hhg-border);
	border-radius: 10px;
}
.hhg-tg-custom-provision-head {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 12px;
	margin-bottom: 12px;
}
.hhg-tg-custom-provision .hhg-tg-field + .hhg-tg-field {
	margin-top: 12px;
}

.hhg-tg-document-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 16px;
}
.hhg-tg-doc-note {
	margin-top: 14px;
	padding: 12px 14px;
	border: 1px solid var(--hhg-border);
	border-radius: 8px;
	background: var(--hhg-soft);
}
.hhg-tg-document-shell {
	margin-top: 20px;
	padding: 24px;
	background: #e8e8e8;
	border-radius: 12px;
}
.hhg-tg-document-preview {
	box-sizing: border-box;
	width: min(210mm, 100%);
	min-height: 297mm;
	margin: 0 auto;
	padding: 18mm 17mm;
	background: #fff;
	color: #222;
	box-shadow: 0 4px 20px rgba(0,0,0,.12);
	font-family: Arial, Helvetica, sans-serif;
	font-size: 11pt;
	line-height: 1.48;
}
.hhg-doc-header {
	text-align: center;
	padding-bottom: 18px;
	border-bottom: 2px solid #333;
	margin-bottom: 24px;
}
.hhg-doc-logo {
	display: block;
	max-width: 160px;
	max-height: 90px;
	object-fit: contain;
	margin: 0 auto 14px;
}
.hhg-doc-kicker {
	font-size: 10pt;
	text-transform: uppercase;
	letter-spacing: .12em;
}
.hhg-doc-header h1 {
	margin: 5px 0 7px;
	font-size: 24pt;
	line-height: 1.15;
}
.hhg-doc-organizer, .hhg-doc-lead { margin: 4px 0; }
.hhg-doc-section {
	margin: 0 0 25px;
	break-inside: auto;
}
.hhg-doc-section > h2 {
	font-size: 15pt;
	border-bottom: 1px solid #999;
	padding-bottom: 5px;
	margin: 0 0 12px;
}
.hhg-doc-section h3 {
	font-size: 11.5pt;
	margin: 13px 0 5px;
}
.hhg-doc-info { margin: 0; }
.hhg-doc-info-row {
	display: grid;
	grid-template-columns: 165px 1fr;
	gap: 12px;
	padding: 5px 0;
	border-bottom: 1px solid #eee;
}
.hhg-doc-info-row dt { font-weight: 700; }
.hhg-doc-info-row dd { margin: 0; }
.hhg-doc-competition {
	padding: 10px 0 13px;
	border-bottom: 1px solid #ddd;
	break-inside: avoid;
}
.hhg-doc-competition:first-child { padding-top: 0; }
.hhg-doc-competition h3 { margin-top: 0; }
.hhg-doc-competition-rule { color: #555; margin-top: -2px; }
.hhg-doc-competition ul { margin: 7px 0; }
.hhg-doc-provision { break-inside: avoid; }
.hhg-doc-provision p { margin-top: 4px; }
.hhg-doc-nomination-table {
	width: 100%;
	border-collapse: collapse;
	margin: 14px 0 20px;
}
.hhg-doc-nomination-table th,
.hhg-doc-nomination-table td {
	border: 1px solid #888;
	padding: 7px;
	text-align: left;
}
.hhg-doc-nomination-table th:first-child,
.hhg-doc-nomination-table td:first-child { width: 25px; text-align: center; }
.hhg-doc-nomination-table th:nth-child(2),
.hhg-doc-nomination-table td:nth-child(2) { width: 35px; text-align: center; }
.hhg-doc-footer {
	margin-top: 35px;
	padding-top: 10px;
	border-top: 1px solid #aaa;
	font-size: 9pt;
	color: #666;
	text-align: center;
}
@media (max-width: 700px) {
	.hhg-tg-document-shell { padding: 7px; }
	.hhg-tg-document-preview { min-height: 0; padding: 18px 14px; font-size: 10pt; }
	.hhg-doc-info-row { grid-template-columns: 1fr; gap: 2px; }
}
@media print {
	body * { visibility: hidden !important; }
	#hhg-tg-document-preview,
	#hhg-tg-document-preview * { visibility: visible !important; }
	#hhg-tg-document-preview {
		position: absolute;
		left: 0;
		top: 0;
		width: 100%;
		min-height: 0;
		margin: 0;
		padding: 12mm 14mm;
		box-shadow: none;
		font-size: 10.5pt;
	}
	.hhg-tg-no-print { display: none !important; }
	@page { size: A4; margin: 0; }
}

/* V0.8 – dokumentnahe Vorschau */
.hhg-tg-document-shell { padding: 18px; }
.hhg-tg-document-preview {
	width: min(210mm, 100%);
	padding: 16mm 16mm 18mm;
	font-size: 10.5pt;
	line-height: 1.48;
}
.hhg-doc-overview-wrap { overflow-x:auto; }
.hhg-doc-overview { width:100%; border-collapse:collapse; font-size:9pt; }
.hhg-doc-overview th,.hhg-doc-overview td { border:1px solid #aaa; padding:6px; vertical-align:top; }
.hhg-doc-competition-detail {
	margin-top: 34px;
	padding-top: 24px;
	border-top: 3px solid #ececec;
}
.hhg-doc-competition-heading {
	display:flex;
	justify-content:space-between;
	gap:20px;
	align-items:flex-end;
	border-bottom:1px solid #999;
	margin-bottom:16px;
}
.hhg-doc-competition-heading h2 { border:0; margin:0 0 6px; padding:0; }
.hhg-doc-competition-heading > div { color:#666; font-size:9pt; text-align:right; }
.hhg-doc-detail-label { font-weight:700; margin-top:15px; }
.hhg-doc-sketch { text-align:center; margin:20px 0; }
.hhg-doc-sketch svg { width:min(520px,100%); height:auto; }
.hhg-doc-sketch-caption { color:#666; font-size:9pt; }
.hhg-doc-task-box { border:1px solid #aaa; border-radius:6px; padding:12px; margin-top:16px; }
.hhg-doc-task-box strong { display:block; margin-bottom:5px; }
.hhg-doc-task-box span { color:#666; }
.hhg-doc-note-inline { background:#f6f6f6; border-left:3px solid #999; padding:9px 12px; }

.hhg-doc-nomination-page {
	margin-top:55px;
	padding-top:35px;
	border-top:8px solid #e8e8e8;
}
.hhg-nenn-header {
	display:grid;
	grid-template-columns:minmax(0,120px) 1fr;
	gap:20px;
	align-items:center;
	border-bottom:2px solid #333;
	padding-bottom:14px;
	margin-bottom:16px;
}
.hhg-nenn-header .hhg-doc-logo { margin:0; max-width:110px; }
.hhg-nenn-header h1 { margin:3px 0; font-size:20pt; }
.hhg-nenn-header p { margin:2px 0; }
.hhg-nenn-fields { display:grid; grid-template-columns:1fr 1fr; gap:12px 20px; }
.hhg-nenn-fields .wide { grid-column:1/-1; }
.hhg-nenn-fields label,.hhg-parent-box label,.hhg-signatures label { font-weight:650; }
.hhg-nenn-fields input,.hhg-parent-box input,.hhg-signatures input,.hhg-nenn-total input,.hhg-fill-line {
	width:100%; min-height:34px; border:1px solid #ccc; border-radius:6px; padding:6px 8px; font:inherit;
}
.hhg-nenn-total { display:flex; justify-content:flex-end; align-items:center; gap:8px; margin:12px 0; }
.hhg-nenn-total input { width:120px; }
.hhg-consent { display:grid; grid-template-columns:24px 1fr; gap:8px; align-items:flex-start; margin:12px 0; }
.hhg-consent input { width:18px; height:18px; margin-top:2px; }
.hhg-consent-optional { background:#f7f7f7; padding:10px; border-radius:6px; }
.hhg-parent-box { border:1px solid #bbb; padding:12px; margin:15px 0; border-radius:6px; }
.hhg-signatures { display:grid; grid-template-columns:1fr 1fr; gap:20px; margin-top:16px; }
.hhg-nenn-legal-note { font-size:8.5pt; color:#666; margin-top:16px; }
.hhg-nenn-footer { text-align:center; border-top:1px solid #bbb; margin-top:20px; padding-top:8px; font-size:8.5pt; color:#666; }
.hhg-tg-custom-rule-box { padding:14px; background:#fafafa; border:1px solid #ddd; border-radius:8px; }
.hhg-tg-custom-rule-box h4 { margin-top:0; }
.hhg-tg-custom-rule-box textarea { width:100%; margin:6px 0 12px; }

/* Alte globale Print-Regel wird in V0.8 nicht mehr verwendet:
   Der Druck erfolgt in einem eigenen Dokumentfenster. */

.hhg-tg-custom-rule-box input[type="text"] { width:100%; min-height:42px; margin:6px 0 12px; padding:8px 10px; border:1px solid #cfcfcf; border-radius:8px; font:inherit; }
.hhg-doc-internal-link { color:inherit; text-decoration:underline; }
.hhg-doc-task-box { break-inside:avoid; page-break-inside:avoid; min-height:auto; }

.hhg-tg-rule-guidance{padding:14px 16px;border:1px solid #b9c6d8;border-left:4px solid #6b7f99;border-radius:8px;background:#f7f9fc}
.hhg-tg-rule-guidance>strong{display:block;font-size:1.05em;margin-bottom:8px}.hhg-tg-rule-guidance ul{margin:6px 0 9px 20px}
.hhg-tg-inline-check{display:flex;align-items:flex-start;gap:10px;cursor:pointer}.hhg-tg-inline-check input{width:auto;min-height:0;margin-top:4px}
.hhg-tg-age-grid.is-muted{opacity:.45;pointer-events:none}
.hhg-tg-spring-box,.hhg-tg-task-generator-box{padding:14px;border:1px solid var(--hhg-border);border-radius:10px;background:#fafafa}
.hhg-tg-spring-box h4,.hhg-tg-task-generator-box h4{margin:0 0 10px}
.hhg-tg-obstacle-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.hhg-task-row{display:grid;grid-template-columns:120px 1fr 40px;gap:8px;margin-bottom:8px}.hhg-task-row input{width:100%;min-height:40px;padding:7px 9px;border:1px solid #ccc;border-radius:7px;font:inherit}
.hhg-doc-attachment-image{display:block;max-width:100%;max-height:700px;object-fit:contain;margin:14px auto 0}.hhg-doc-file-note{display:block;margin-top:7px;font-style:italic}
.hhg-doc-task-table{width:100%;border-collapse:collapse;margin:10px 0 18px}.hhg-doc-task-table th,.hhg-doc-task-table td{border:1px solid #aaa;padding:7px}.hhg-doc-task-table th:first-child,.hhg-doc-task-table td:first-child{width:90px}
@media(max-width:800px){.hhg-tg-obstacle-grid{grid-template-columns:1fr 1fr}.hhg-task-row{grid-template-columns:90px 1fr 38px}}
@media(max-width:520px){.hhg-tg-obstacle-grid{grid-template-columns:1fr}.hhg-task-row{grid-template-columns:1fr 38px}.hhg-task-row .hhg-task-text{grid-column:1/-1}}

.hhg-doc-attachment-pdf{display:block;width:100%;height:760px;border:1px solid #ddd;margin:14px auto 0}
#hhg_comp_duration_wrap input{width:100%}
#hhg_comp_lesson_picker_wrap textarea{width:100%;margin-top:6px}

.hhg-tg-duration-range{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.hhg-tg-duration-range label{font-weight:600}
.hhg-tg-duration-range input{width:100%;min-height:42px;margin-top:5px;padding:8px 10px;border:1px solid #cfcfcf;border-radius:8px;font:inherit}
@media(max-width:600px){.hhg-tg-duration-range{grid-template-columns:1fr}}

#hhg-tg-print-frame{position:fixed!important;width:0!important;height:0!important;border:0!important;right:0!important;bottom:0!important}

.hhg-doc-arena-image{display:block;width:min(620px,100%);height:auto;margin:0 auto}
.hhg-doc-judging-page{margin-top:50px;padding-top:30px;border-top:8px solid #e8e8e8}
.hhg-doc-judging-page h1{font-size:22pt;border-bottom:1px solid #999;padding-bottom:8px}
.hhg-dressage-only #hhg_da_lessons .hhg-tg-small-button{text-align:left}

.hhg-doc-competition-heading,.hhg-doc-task-box,.hhg-doc-task-table,.hhg-nenn-header{break-inside:avoid;page-break-inside:avoid}
.hhg-doc-detail-label{break-after:avoid;page-break-after:avoid}
.hhg-doc-provision{break-inside:avoid;page-break-inside:avoid}

/* v0.14.2 */
.hhg-tg-obstacle-grid .hhg-tg-check{
    background:#fff!important;
    border-color:var(--hhg-border)!important;
}
.hhg-tg-obstacle-grid .hhg-tg-check small{display:none!important}
.hhg-consent-required{font-weight:500}
.hhg-nenn-signature-block,
.hhg-parent-box,
.hhg-signatures,
.hhg-nenn-legal-note,
.hhg-consent{
    break-inside:avoid;
    page-break-inside:avoid;
}

/* v0.15 – KI-Aufgabenerkennung */
.hhg-tg-ai-import{margin:14px 0 18px;padding:14px;border:1px solid #cfd7e3;border-radius:10px;background:#f8fafc}
.hhg-tg-ai-import h5{margin:0 0 7px;font-size:1rem}
.hhg-tg-ai-upload-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.hhg-tg-ai-upload-row input[type=file]{flex:1 1 280px;min-width:0}
.hhg-tg-ai-status{margin-top:10px;font-weight:600}
.hhg-tg-ai-review-note{margin-top:10px;padding:10px 12px;border-left:4px solid #8b6f47;background:#fffaf2;border-radius:6px}

/* v0.15.1 */
.hhg-tg-ai-card{border-style:dashed}
.hhg-tg-ai-card #hhg_comp_ai_panel{margin-top:14px;padding-top:14px;border-top:1px solid var(--hhg-border)}

/* v0.15.2 – PDF preview always A4 portrait */
.hhg-tg-document-preview{
	width:min(100%, 794px);
	max-width:794px;
	margin-left:auto;
	margin-right:auto;
}
.hhg-tg-document-preview .hhg-main-document,
.hhg-tg-document-preview .hhg-doc-nomination-page,
.hhg-tg-document-preview .hhg-doc-judging-page{
	max-width:100%;
}

/* v0.16 – Parcours-Editor */
.hhg-parcours-config-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:12px 0}
.hhg-parcours-config-grid label{font-weight:600}
.hhg-parcours-config-grid input[type=number]{width:100%;margin-top:5px}
.hhg-parcours-toolbar{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;align-items:flex-start;margin:12px 0}
.hhg-parcours-library{display:flex;flex-wrap:wrap;gap:8px;flex:1 1 520px}
.hhg-parcours-library-item{border:1px solid var(--hhg-border);background:#fff;border-radius:8px;padding:8px 10px;cursor:pointer;font:inherit}
.hhg-parcours-tools{display:flex;flex-wrap:wrap;gap:8px}
.hhg-parcours-workspace{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:14px;align-items:start}
.hhg-parcours-svg{width:100%;height:auto;border:1px solid var(--hhg-border);background:#fff;touch-action:none}
.hhg-parcours-properties{border:1px solid var(--hhg-border);border-radius:10px;padding:12px;background:#fafafa}
.hhg-parcours-properties h5{margin:0 0 10px}
.hhg-parcours-properties label{display:block;margin-bottom:10px;font-weight:600}
.hhg-parcours-properties input,.hhg-parcours-properties select{width:100%;margin-top:5px}
.hhg-pc-item{cursor:grab}
.hhg-pc-item.is-selected{filter:drop-shadow(0 0 2px var(--viz-accent,#666))}
.hhg-parcours-export-svg{display:block;width:100%;height:auto;max-height:720px}
@media(max-width:900px){.hhg-parcours-workspace{grid-template-columns:1fr}.hhg-parcours-properties{order:-1}.hhg-parcours-config-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.hhg-parcours-config-grid{grid-template-columns:1fr}}

/* v0.16.1 */
.hhg-parcours-print-head{margin-bottom:12px}.hhg-parcours-print-head h3{margin:0 0 6px}.hhg-parcours-print-head p{margin:3px 0}.hhg-parcours-legend{margin-top:14px}.hhg-parcours-legend h4{margin:0 0 8px}.hhg-parcours-legend table{width:100%;border-collapse:collapse}.hhg-parcours-legend td{border:1px solid var(--hhg-border);padding:7px 9px;vertical-align:middle}.hhg-pc-leg-symbol{width:80px}.hhg-pc-legend-icon{display:block;width:64px;height:34px}.hhg-doc-parcours-box{break-inside:avoid;page-break-inside:avoid}

/* v0.16.2 – Parcours-Editor erweitert */
#hhg-tg-competition-modal .hhg-tg-modal-dialog{
	width:min(1280px, calc(100vw - 24px));
}
#hhg_comp_parcours_builder .hhg-parcours-workspace{
	grid-template-columns:minmax(0,1fr) 220px;
}
#hhg_comp_parcours_builder .hhg-parcours-svg{
	min-height:560px;
}
.hhg-pc-second-number{
	margin-top:10px;
	padding-top:10px;
	border-top:1px solid var(--hhg-border);
}
.hhg-pc-combo-part{cursor:ns-resize}
.hhg-parcours-legend{
	font-size:.82em;
}
.hhg-parcours-legend table{font-size:inherit}
.hhg-parcours-legend td{
	padding:4px 6px;
	line-height:1.2;
}
.hhg-pc-leg-symbol{width:52px}
.hhg-pc-legend-icon{width:42px;height:24px}
@media(max-width:1100px){
	#hhg_comp_parcours_builder .hhg-parcours-workspace{grid-template-columns:1fr}
	#hhg_comp_parcours_builder .hhg-parcours-properties{order:-1}
}

/* v0.16.3 – Arbeitsfläche optimiert */
#hhg-tg-competition-modal .hhg-tg-modal-dialog{
	width:min(1540px, calc(100vw - 16px));
	max-width:none;
}
#hhg_comp_parcours_builder .hhg-parcours-workspace{
	grid-template-columns:minmax(0,1fr) 205px;
	gap:10px;
}
#hhg_comp_parcours_builder .hhg-parcours-svg{
	min-height:680px;
	max-height:76vh;
}
#hhg_comp_parcours_builder .hhg-parcours-properties{
	padding:10px;
}
#hhg_comp_parcours_builder .hhg-parcours-properties label{
	margin-bottom:7px;
	font-size:.92em;
}
#hhg_comp_parcours_builder .hhg-parcours-config-grid{
	grid-template-columns:repeat(6,minmax(120px,1fr));
}
@media(max-width:1250px){
	#hhg_comp_parcours_builder .hhg-parcours-config-grid{grid-template-columns:repeat(3,minmax(140px,1fr))}
}

/* v0.16.4 */
.hhg-pc-library-group{width:100%}
.hhg-pc-library-heading{font-weight:700;font-size:.86em;margin:5px 0 4px}
.hhg-pc-library-row{display:flex;flex-wrap:wrap;gap:6px}
.hhg-parcours-title-line{font-size:1.05rem}
.hhg-parcours-subtitle-line{font-size:.9rem;margin-top:4px}
.hhg-parcours-print-head{margin-bottom:10px}

/* v0.16.5 */
.hhg-pc-library-group{width:100%;margin-bottom:5px}
.hhg-pc-library-heading{font-weight:700;font-size:.84em;margin:3px 0}
.hhg-pc-library-row{display:flex;flex-wrap:wrap;gap:6px}
.hhg-pc-branding{user-select:none}
.hhg-parcours-tools{align-items:center}

/* v0.16.6 */
.hhg-dressage-task-head{margin:0 0 12px}
.hhg-dressage-title-line{font-size:1.05rem}
.hhg-dressage-subtitle-line{font-size:.9rem;margin-top:4px}
.hhg-dressage-brand{font-size:.78rem;color:#555;margin-top:5px;font-weight:500}
.hhg-pc-draw-hint{font-size:.78rem;color:#666;align-self:center}
.hhg-parcours-svg.is-drawing-guide{cursor:crosshair}

/* v0.16.7 */
.hhg-parcours-svg.is-drawing-guide{cursor:crosshair}
.hhg-parcours-svg[data-guide-mode="arrow"]{touch-action:none}

/* v0.16.8 */
#hhg_pc_arrow_color_wrap select{width:100%}

/* v0.17.0 */
.hhg-nenn-header.no-logo{grid-template-columns:1fr}
.hhg-nenn-header.no-logo > div{min-width:0}
.hhg-nenn-header h1{overflow-wrap:normal;word-break:normal;hyphens:none}
.hhg-tg-version{display:block;margin-top:6px;font-size:11px;color:#777}


/* v0.17.3 – Vorschau-Renderfehler behoben; Checkbox-Styling aus 0.17.2 unverändert übernommen. */

/* v0.17.4 – Checkboxen ohne :has() und ohne native Theme-Darstellung */
.hhg-tg-generator .hhg-tg-check > input[type="checkbox"],
.hhg-tg-modal .hhg-tg-check > input[type="checkbox"],
.hhg-tg-generator .form-check > input[type="checkbox"],
.hhg-tg-modal .form-check > input[type="checkbox"]{
	position:absolute!important; opacity:0!important;
	width:1px!important; height:1px!important; min-width:1px!important; min-height:1px!important;
	margin:0!important; padding:0!important; pointer-events:none!important;
}
.hhg-tg-generator .hhg-tg-check,
.hhg-tg-modal .hhg-tg-check,
.hhg-tg-generator .form-check,
.hhg-tg-modal .form-check{position:relative;cursor:pointer}
.hhg-tg-generator .hhg-tg-check > span,
.hhg-tg-modal .hhg-tg-check > span,
.hhg-tg-generator .form-check > span,
.hhg-tg-modal .form-check > span{
	position:relative;display:block;min-width:0;padding-left:29px;flex:1 1 auto;
}
.hhg-tg-generator .hhg-tg-check > span::before,
.hhg-tg-modal .hhg-tg-check > span::before,
.hhg-tg-generator .form-check > span::before,
.hhg-tg-modal .form-check > span::before{
	content:"";position:absolute;left:0;top:1px;width:18px;height:18px;box-sizing:border-box;
	border:1.5px solid #8d8d8d;border-radius:3px;background:#fff;
}
.hhg-tg-generator .hhg-tg-check > input[type="checkbox"]:checked + span::before,
.hhg-tg-modal .hhg-tg-check > input[type="checkbox"]:checked + span::before,
.hhg-tg-generator .form-check > input[type="checkbox"]:checked + span::before,
.hhg-tg-modal .form-check > input[type="checkbox"]:checked + span::before{
	content:"✓";display:flex;align-items:center;justify-content:center;
	background:#8a6322;border-color:#8a6322;color:#fff;
	font-family:Arial,Helvetica,sans-serif;font-size:14px;line-height:1;font-weight:800;
}
.hhg-tg-generator .hhg-tg-check > input[type="checkbox"]:focus-visible + span::before,
.hhg-tg-modal .hhg-tg-check > input[type="checkbox"]:focus-visible + span::before,
.hhg-tg-generator .form-check > input[type="checkbox"]:focus-visible + span::before,
.hhg-tg-modal .form-check > input[type="checkbox"]:focus-visible + span::before{
	outline:2px solid #222;outline-offset:2px;
}
.hhg-tg-generator .form-check,.hhg-tg-modal .form-check{display:block!important}

/* Auswahlkarten: ebenfalls ohne :has() */
.hhg-tg-generator .hhg-tg-choice > input[type="radio"],
.hhg-tg-modal .hhg-tg-choice > input[type="radio"]{
	position:absolute!important;opacity:0!important;width:1px!important;height:1px!important;pointer-events:none!important;
}
.hhg-tg-generator .hhg-tg-choice,.hhg-tg-modal .hhg-tg-choice{position:relative;padding-left:46px!important}
.hhg-tg-generator .hhg-tg-choice > strong::before,
.hhg-tg-modal .hhg-tg-choice > strong::before{
	content:"";position:absolute;left:16px;top:17px;width:18px;height:18px;box-sizing:border-box;
	border:1.5px solid #8d8d8d;border-radius:50%;background:#fff;
}
.hhg-tg-generator .hhg-tg-choice > input[type="radio"]:checked + strong::before,
.hhg-tg-modal .hhg-tg-choice > input[type="radio"]:checked + strong::before{border:5px solid #8a6322}

.hhg-tg-generated-confirmation{
	margin-top:12px;padding:11px 13px;border:1px solid #9db79d;border-radius:8px;background:#f4faf4;color:#244824;
}
.hhg-tg-generated-confirmation strong,.hhg-tg-generated-confirmation span{display:block}
.hhg-tg-generated-confirmation span{margin-top:3px;font-size:.9em}

/* v0.17.6 – Dressur-Branding an der Aufgabentabelle statt unter der Überschrift */
.hhg-dressage-task-table-wrap{
	width:100%;
}
.hhg-dressage-brand-table{
	display:block;
	margin:4px 2px 0 0;
	text-align:right;
	font-size:.72rem;
	line-height:1.25;
	color:#666;
	font-weight:500;
	white-space:nowrap;
}
@media (max-width:640px){
	.hhg-dressage-brand-table{
		white-space:normal;
		font-size:.68rem;
	}
}

/* v0.17.7 – wichtige Ausgabeauswahl deutlich hervorheben */
.hhg-tg-highlight-choice{
	background:#fff8e8;
	border:1px solid #ead7aa;
	border-left:4px solid #b68a34;
	border-radius:10px;
	padding:14px 15px!important;
}
.hhg-tg-highlight-choice > label{font-weight:700;color:#3b2d15}
.hhg-tg-highlight-choice > select{background:#fffdf7;border-color:#c9ad70}
.hhg-tg-default-choice-hint{display:block;margin-top:6px;color:#71551d;font-weight:600}

/* v0.17.8 – Auswahlstatus als echtes X-Element, unabhängig von Theme/Browser */
.hhg-tg-generator label.hhg-tg-check,
.hhg-tg-modal label.hhg-tg-check,
.hhg-tg-generator label.form-check,
.hhg-tg-modal label.form-check{
	position:relative!important;
	cursor:pointer!important;
}

/* Native Checkbox vollständig aus der Optik nehmen, bleibt aber funktional im Label */
.hhg-tg-generator label.hhg-tg-check > input[type="checkbox"],
.hhg-tg-modal label.hhg-tg-check > input[type="checkbox"],
.hhg-tg-generator label.form-check > input[type="checkbox"],
.hhg-tg-modal label.form-check > input[type="checkbox"]{
	position:absolute!important;
	left:-9999px!important;
	width:1px!important;
	height:1px!important;
	min-width:1px!important;
	min-height:1px!important;
	opacity:0!important;
	margin:0!important;
	padding:0!important;
}

/* Alte Pseudo-Checkboxen sicher abschalten */
.hhg-tg-generator label.hhg-tg-check > span:not(.hhg-check-indicator)::before,
.hhg-tg-modal label.hhg-tg-check > span:not(.hhg-check-indicator)::before,
.hhg-tg-generator label.form-check > span:not(.hhg-check-indicator)::before,
.hhg-tg-modal label.form-check > span:not(.hhg-check-indicator)::before{
	content:none!important;
	display:none!important;
}

.hhg-check-indicator{
	display:inline-flex!important;
	align-items:center!important;
	justify-content:center!important;
	flex:0 0 20px!important;
	width:20px!important;
	height:20px!important;
	box-sizing:border-box!important;
	margin:0 10px 0 0!important;
	border:2px solid #8e8e8e!important;
	border-radius:4px!important;
	background:#fff!important;
	color:transparent!important;
	font-family:Arial,Helvetica,sans-serif!important;
	font-size:14px!important;
	font-weight:900!important;
	line-height:1!important;
	box-shadow:none!important;
	vertical-align:top!important;
}

label.hhg-is-checked > .hhg-check-indicator{
	background:#8a6322!important;
	border-color:#8a6322!important;
	color:#fff!important;
}

/* Inhalt nicht mehr künstlich für frühere Pseudo-Checkbox einrücken */
.hhg-tg-generator label.hhg-tg-check > span:not(.hhg-check-indicator),
.hhg-tg-modal label.hhg-tg-check > span:not(.hhg-check-indicator),
.hhg-tg-generator label.form-check > span:not(.hhg-check-indicator),
.hhg-tg-modal label.form-check > span:not(.hhg-check-indicator){
	padding-left:0!important;
}

/* Karten und Parcoursoptionen sauber nebeneinander */
.hhg-tg-generator label.hhg-tg-check,
.hhg-tg-modal label.hhg-tg-check{
	display:flex!important;
	align-items:flex-start!important;
	gap:0!important;
}
.hhg-tg-generator label.form-check,
.hhg-tg-modal label.form-check{
	display:flex!important;
	align-items:flex-start!important;
	gap:0!important;
}

/* ausgewählte Karte zusätzlich dezent hervorheben */
.hhg-tg-generator label.hhg-tg-check.hhg-is-checked,
.hhg-tg-modal label.hhg-tg-check.hhg-is-checked{
	border-color:#c8ad7d!important;
	background:#fffaf1!important;
}

/* v0.17.10 – Auswahlfelder: sichtbarer Haken als echtes DOM-Element */
.hhg-tg-generator label.hhg-tg-check,
.hhg-tg-modal label.hhg-tg-check,
.hhg-tg-generator label.form-check,
.hhg-tg-modal label.form-check{
	display:flex!important;
	align-items:flex-start!important;
	gap:0!important;
	position:relative!important;
	cursor:pointer!important;
}
.hhg-tg-generator label.hhg-tg-check.hhg-is-checked,
.hhg-tg-modal label.hhg-tg-check.hhg-is-checked{
	border-color:#c8ad7d!important;
	background:#fffaf1!important;
}

/* v0.17.11 – strukturierte Einzelgeneratoren */
.hhg-standalone-age-wrap{margin-top:18px}
.hhg-standalone-age-grid{display:flex;flex-wrap:wrap;gap:8px;margin-top:7px}
.hhg-age-pick{position:relative;cursor:pointer}
.hhg-age-pick input{position:absolute!important;opacity:0!important;width:1px!important;height:1px!important;pointer-events:none!important}
.hhg-age-pick span{
	display:inline-flex;align-items:center;justify-content:center;min-width:50px;
	padding:8px 12px;border:1px solid #c9c9c9;border-radius:7px;background:#fff;
	font-weight:700;transition:.12s ease;
}
.hhg-age-pick input:checked + span{background:#fff7e8;border-color:#9a6d20;box-shadow:inset 0 0 0 1px #9a6d20}
.hhg-age-pick input:checked + span::before{content:"✓";margin-right:6px;font-size:15px}
.hhg-generator-age-line{margin-top:4px;font-size:.83em;color:#666}
.hhg-parcours-standalone .hhg-tg-document-preview{overflow:hidden}


/* v0.17.14 – robuste HHG-Optik + einheitliche Dressur-Regelbibliothek */
:root{
	--hhg-brand-main:#DCA54A;
	--hhg-brand-accent:#F3E3C7;
	--hhg-brand-border:#B1843A;
	--hhg-brand-text:#000000;
}
.hhg-tg-generator,
.hhg-tg-modal{
	--hhg-main:var(--hhg-brand-main,#DCA54A);
	--hhg-accent:var(--hhg-brand-accent,#F3E3C7);
	--hhg-edge:var(--hhg-brand-border,#B1843A);
	--hhg-ink:var(--hhg-brand-text,#000000);
	--hhg-border:var(--hhg-edge);
	--hhg-soft:var(--hhg-accent);
	--hhg-text-soft:#5f5547;
	color:var(--hhg-ink)!important;
}

/* Kopf / Navigation */
.hhg-tg-header{
	padding:18px 20px!important;
	border:1px solid var(--hhg-edge)!important;
	border-left:6px solid var(--hhg-main)!important;
	border-radius:12px!important;
	background:var(--hhg-accent)!important;
}
.hhg-tg-header h2,.hhg-tg-header h3{color:var(--hhg-ink)!important}
.hhg-tg-steps li{
	border-color:var(--hhg-edge)!important;
	background:#fff!important;
	color:var(--hhg-ink)!important;
}
.hhg-tg-steps li span{
	background:var(--hhg-accent)!important;
	color:var(--hhg-ink)!important;
	font-weight:700!important;
}
.hhg-tg-steps li.is-active{
	background:var(--hhg-accent)!important;
	border-color:var(--hhg-edge)!important;
	box-shadow:inset 0 0 0 1px var(--hhg-edge)!important;
}
.hhg-tg-steps li.is-active span{background:var(--hhg-main)!important}

/* Karten / Eingaben */
.hhg-tg-card,
.hhg-tg-choice,
.hhg-tg-check,
.hhg-tg-competition-item,
.hhg-tg-provision,
.hhg-tg-custom-provision,
.hhg-tg-modal-dialog{
	border-color:var(--hhg-edge)!important;
}
.hhg-tg-card{background:#fff!important}
.hhg-tg-field label,.hhg-tg-card h3,.hhg-tg-card h4{color:var(--hhg-ink)!important}
.hhg-tg-field input,
.hhg-tg-field select,
.hhg-tg-field textarea{
	border-color:var(--hhg-edge)!important;
	background:#fff!important;
	color:var(--hhg-ink)!important;
}
.hhg-tg-field input:focus,
.hhg-tg-field select:focus,
.hhg-tg-field textarea:focus{
	outline:2px solid var(--hhg-main)!important;
	outline-offset:1px!important;
}
.hhg-tg-primary{
	border:1px solid var(--hhg-edge)!important;
	background:var(--hhg-main)!important;
	color:var(--hhg-ink)!important;
}
.hhg-tg-secondary,.hhg-tg-small-button{
	border-color:var(--hhg-edge)!important;
	background:#fff!important;
	color:var(--hhg-ink)!important;
}
.hhg-tg-secondary:hover,.hhg-tg-small-button:hover{background:var(--hhg-accent)!important}
.hhg-tg-info-card,
.hhg-tg-rule-guidance,
.hhg-tg-custom-rule-box,
.hhg-tg-task-generator-box,
.hhg-tg-generated-confirmation{
	border-color:var(--hhg-edge)!important;
	background:var(--hhg-accent)!important;
}
.hhg-tg-rule-guidance{
	border-left:4px solid var(--hhg-edge)!important;
}

/* Auswahl */
.hhg-tg-choice:has(input:checked),
.hhg-tg-check.hhg-is-checked,
.hhg-tg-obstacle-grid label.hhg-is-checked,
.hhg-tg-age-grid label.hhg-is-checked{
	border-color:var(--hhg-edge)!important;
	background:var(--hhg-accent)!important;
}
.hhg-check-indicator{border-color:var(--hhg-edge)!important}
.hhg-is-checked>.hhg-check-indicator{
	background:var(--hhg-main)!important;
	border-color:var(--hhg-edge)!important;
	color:var(--hhg-ink)!important;
}
.hhg-age-pick input:checked+span{
	background:var(--hhg-accent)!important;
	border-color:var(--hhg-edge)!important;
	box-shadow:inset 0 0 0 1px var(--hhg-edge)!important;
}

/* Modal */
.hhg-tg-modal-head{
	margin:-22px -22px 18px!important;
	padding:16px 22px!important;
	background:var(--hhg-accent)!important;
	border-bottom:1px solid var(--hhg-edge)!important;
}

/* Regelbibliothek: Darstellung wie die bevorzugte Bild-1.0-Version */
.hhg-dressage-lesson-guidance{
	margin:0 0 18px!important;
	padding:16px 18px!important;
	border:1px solid var(--hhg-edge)!important;
	border-left:4px solid var(--hhg-edge)!important;
	border-radius:8px!important;
	background:#fffaf1!important;
	color:var(--hhg-ink)!important;
}
.hhg-dressage-lesson-guidance strong{display:block;margin-bottom:8px}
.hhg-dressage-lesson-guidance p{margin:0 0 12px}
.hhg-dressage-lesson-guidance p:last-child{margin-bottom:0}
.hhg-dressage-lesson-section>label{display:block;margin-bottom:4px;font-weight:700}
.hhg-tg-lesson-chip-grid{
	display:grid!important;
	grid-template-columns:repeat(3,minmax(0,1fr))!important;
	gap:8px!important;
	margin-top:14px!important;
}
.hhg-lesson-chip{position:relative!important;display:block!important;cursor:pointer!important}
.hhg-lesson-chip input{
	position:absolute!important;opacity:0!important;width:1px!important;height:1px!important;pointer-events:none!important;
}
.hhg-lesson-chip span,
.hhg-lesson-action{
	display:flex!important;
	align-items:center!important;
	width:100%!important;
	min-height:42px!important;
	box-sizing:border-box!important;
	padding:9px 11px!important;
	border:1px solid #b7b7b7!important;
	border-radius:7px!important;
	background:#fff!important;
	color:#222!important;
	font:inherit!important;
	text-align:left!important;
	box-shadow:none!important;
}
.hhg-lesson-action{cursor:pointer!important}
.hhg-lesson-action:hover,.hhg-lesson-chip:hover span{
	border-color:var(--hhg-edge)!important;
	background:#fffaf1!important;
}
.hhg-lesson-chip input:checked+span{
	background:var(--hhg-accent)!important;
	border-color:var(--hhg-edge)!important;
	box-shadow:inset 0 0 0 1px var(--hhg-edge)!important;
	font-weight:700!important;
}
.hhg-lesson-chip input:checked+span::before{
	content:"✓";margin-right:7px;font-weight:900;
}

/* Dokument bleibt druckfreundlich */
.hhg-tg-document-shell{background:#eee7dc!important}
.hhg-tg-document-preview{background:#fff!important;color:#000!important}
.hhg-tg-document-preview .hhg-doc-section>h2,
.hhg-tg-document-preview .hhg-doc-header{border-color:var(--hhg-edge)!important}

@media(max-width:800px){
	.hhg-tg-lesson-chip-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:520px){
	.hhg-tg-lesson-chip-grid{grid-template-columns:1fr!important}
}

/* v0.17.15 – gleiche Parcours-Bedienung im Haupt- und Einzelgenerator */
.hhg-parcours-standalone .hhg-parcours-properties label,
.hhg-parcours-standalone .hhg-parcours-config-grid>label{display:block;margin-bottom:10px;font-weight:650}
.hhg-parcours-standalone .hhg-parcours-properties input,
.hhg-parcours-standalone .hhg-parcours-properties select,
.hhg-parcours-standalone .hhg-parcours-config-grid input,
.hhg-parcours-standalone .hhg-parcours-config-grid select{width:100%;box-sizing:border-box;margin-top:5px;border:1px solid var(--hhg-edge,#B1843A);border-radius:7px;background:#fff;padding:7px 9px;font:inherit}
.hhg-parcours-standalone .hhg-pc-second-number,
.hhg-parcours-standalone #hhg_ps_combo_labels_wrap,
.hhg-parcours-standalone #hhg_ps_arrow_color_wrap,
.hhg-parcours-standalone #hhg_ps_obstacle_width_wrap,
.hhg-parcours-standalone #hhg_ps_distance_wrap,
.hhg-parcours-standalone #hhg_ps_distance2_wrap{margin-top:12px;padding-top:12px;border-top:1px solid var(--hhg-edge,#B1843A)}

/* v0.17.16 – Standalone-Parcours: keine Überlappung */
.hhg-parcours-standalone .hhg-parcours-workspace{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(230px,260px)!important;align-items:start!important;gap:16px!important;margin-bottom:28px!important;overflow:visible!important}
.hhg-parcours-standalone .hhg-parcours-svg{min-width:0!important}
.hhg-parcours-standalone .hhg-parcours-properties{position:relative!important;inset:auto!important;float:none!important;height:auto!important;max-height:none!important;overflow:visible!important;z-index:1!important;box-sizing:border-box!important}
.hhg-parcours-standalone .hhg-parcours-workspace + .hhg-tg-help{clear:both!important;display:block!important;margin:0 0 4px!important;padding-top:8px!important}
.hhg-tg-document-actions{display:flex!important;flex-wrap:wrap!important;gap:8px!important;align-items:center!important}
.hhg-generator-meta-line{font-size:.83em;color:#666;margin-top:4px}
@media(max-width:1000px){.hhg-parcours-standalone .hhg-parcours-workspace{grid-template-columns:1fr!important}.hhg-parcours-standalone .hhg-parcours-properties{order:-1!important}}

/* v0.17.18 – Parcours-Steuerbereich: sichere Höhenberechnung ohne Überlappung */
.hhg-parcours-standalone .hhg-parcours-workspace{
	display:grid!important;
	grid-template-columns:minmax(0,1fr) 260px!important;
	align-items:stretch!important;
	gap:18px!important;
	min-height:0!important;
	height:auto!important;
	overflow:visible!important;
	margin-bottom:0!important;
}
.hhg-parcours-standalone .hhg-parcours-svg{
	display:block!important;
	width:100%!important;
	height:auto!important;
	min-height:520px!important;
	align-self:start!important;
}
.hhg-parcours-standalone .hhg-parcours-properties{
	position:static!important;
	width:auto!important;
	min-width:0!important;
	height:auto!important;
	min-height:100%!important;
	max-height:none!important;
	overflow:visible!important;
	align-self:stretch!important;
}
.hhg-parcours-standalone .hhg-parcours-workspace + .hhg-tg-help{
	position:relative!important;
	display:block!important;
	width:100%!important;
	clear:both!important;
	margin:22px 0 0!important;
	padding:14px 0 0!important;
	border-top:1px solid var(--hhg-edge,#B1843A)!important;
	box-sizing:border-box!important;
}
@media(max-width:1000px){
	.hhg-parcours-standalone .hhg-parcours-workspace{grid-template-columns:1fr!important}
	.hhg-parcours-standalone .hhg-parcours-properties{min-height:0!important}
	.hhg-parcours-standalone .hhg-parcours-svg{min-height:420px!important}
}

/* v0.17.20 */
.hhg-parcours-rule-list{margin-top:12px;padding:12px 14px;border:1px solid var(--hhg-edge,#B1843A);border-radius:8px;background:#fff}
.hhg-parcours-rule-list ul{margin:8px 0 0 20px}
.hhg-parcours-legend td.hhg-parcours-legend-symbol{width:64px;text-align:center;vertical-align:middle}
.hhg-parcours-legend-symbol svg{display:block;margin:auto;max-width:54px;height:34px}

/* v0.17.21 – Standalone-Parcours: sichtbare Auswahlkästchen ohne Frontend-JS-Abhängigkeit */
.hhg-parcours-standalone label.form-check{
	display:flex!important;
	align-items:center!important;
	gap:9px!important;
	min-height:42px!important;
	margin:0!important;
	padding:8px 4px!important;
	cursor:pointer!important;
}
.hhg-parcours-standalone label.form-check input[type="checkbox"]{
	-webkit-appearance:checkbox!important;
	appearance:auto!important;
	position:static!important;
	left:auto!important;
	clip:auto!important;
	clip-path:none!important;
	opacity:1!important;
	visibility:visible!important;
	display:inline-block!important;
	width:20px!important;
	height:20px!important;
	min-width:20px!important;
	min-height:20px!important;
	margin:0!important;
	padding:0!important;
	accent-color:var(--hhg-main,#DCA54A)!important;
}
.hhg-parcours-standalone label.form-check span{display:inline!important;padding:0!important}
.hhg-parcours-rulebook-card .hhg-tg-rule-guidance{margin:0!important}

/* v0.17.22 – Ausschreibungsgenerator dezenter und gleichmäßiger */
.hhg-turniergenerator-main{
	--hhg-main:var(--hhg-brand-main,#DCA54A);
	--hhg-accent:var(--hhg-brand-accent,#F3E3C7);
	--hhg-edge:var(--hhg-brand-border,#B1843A);
	--hhg-ink:var(--hhg-brand-text,#000);
	--hhg-border:#ded7cc;
	--hhg-soft:#faf8f4;
}
.hhg-turniergenerator-main .hhg-tg-header{
	background:#fffaf2!important;
	border:1px solid #dfc89f!important;
	border-left:4px solid var(--hhg-main)!important;
	padding:16px 18px!important;
}
.hhg-turniergenerator-main .hhg-tg-steps li{
	background:#fff!important;
	border-color:#ddd5c9!important;
	min-height:52px!important;
}
.hhg-turniergenerator-main .hhg-tg-steps li span{background:#f3eadb!important}
.hhg-turniergenerator-main .hhg-tg-steps li.is-active{
	background:#fffaf2!important;
	border-color:#c9a45d!important;
	box-shadow:none!important;
}
.hhg-turniergenerator-main .hhg-tg-steps li.is-active span{background:#ecd39f!important}
.hhg-turniergenerator-main .hhg-tg-card,
.hhg-turniergenerator-main .hhg-tg-choice,
.hhg-turniergenerator-main .hhg-tg-check,
.hhg-turniergenerator-main .hhg-tg-competition-item,
.hhg-turniergenerator-main .hhg-tg-provision,
.hhg-turniergenerator-main .hhg-tg-custom-provision{
	border-color:#ddd7cd!important;
}
.hhg-turniergenerator-main .hhg-tg-rule-guidance,
.hhg-turniergenerator-main .hhg-tg-info-card,
.hhg-turniergenerator-main .hhg-tg-task-generator-box,
.hhg-turniergenerator-main .hhg-tg-generated-confirmation{
	background:#fffaf2!important;
	border-color:#dfc89f!important;
}
.hhg-turniergenerator-main .hhg-tg-choice:has(input:checked),
.hhg-turniergenerator-main .hhg-tg-check.hhg-is-checked,
.hhg-turniergenerator-main .hhg-tg-obstacle-grid label.hhg-is-checked,
.hhg-turniergenerator-main .hhg-tg-age-grid label.hhg-is-checked{
	background:#fffaf2!important;
	border-color:#c7a563!important;
}
.hhg-turniergenerator-main .hhg-check-indicator{
	border-color:#b9b9b9!important;
	color:transparent!important;
	font-size:0!important;
}
.hhg-turniergenerator-main .hhg-is-checked>.hhg-check-indicator{
	background:var(--hhg-main)!important;
	border-color:var(--hhg-edge)!important;
	color:transparent!important;
}
.hhg-turniergenerator-main .hhg-tg-grid{gap:16px!important}
.hhg-turniergenerator-main .hhg-tg-choice-grid{gap:12px!important}
.hhg-turniergenerator-main .hhg-tg-age-grid{gap:12px!important}
.hhg-turniergenerator-main .hhg-tg-competition-list{gap:12px!important}
.hhg-turniergenerator-main .hhg-tg-obstacle-grid{gap:12px!important}
.hhg-turniergenerator-main .hhg-tg-card{margin-bottom:16px!important}
.hhg-turniergenerator-main .hhg-tg-field{margin:0!important}
.hhg-turniergenerator-main .hhg-tg-field small{margin-top:6px!important}
.hhg-turniergenerator-main .hhg-tg-card>*:last-child{margin-bottom:0!important}

/* v0.17.22 – im großen Ausschreibungsgenerator keine zusätzlichen Häkchen neben sichtbaren Auswahlzuständen */
.hhg-turniergenerator-main .hhg-age-pick input:checked + span::before,
.hhg-turniergenerator-main .hhg-lesson-chip input:checked + span::before,
.hhg-turniergenerator-main label.hhg-tg-check > span:not(.hhg-check-indicator)::before,
.hhg-turniergenerator-main label.form-check > span:not(.hhg-check-indicator)::before{
	content:none!important;
	display:none!important;
}

/* v0.17.23 – Einzel-Parcoursplaner wieder großzügig wie 0.17.16 */
.hhg-parcours-standalone{max-width:1450px!important}
.hhg-parcours-standalone .hhg-parcours-workspace{
	grid-template-columns:minmax(0,1fr) minmax(230px,260px)!important;
	align-items:start!important;
	gap:16px!important;
	margin-bottom:28px!important;
}
.hhg-parcours-standalone .hhg-parcours-svg{
	min-height:680px!important;
	max-height:78vh!important;
	width:100%!important;
}
.hhg-parcours-standalone .hhg-parcours-properties{
	min-height:0!important;
	height:auto!important;
	align-self:start!important;
}
@media(max-width:1000px){
	.hhg-parcours-standalone .hhg-parcours-workspace{grid-template-columns:1fr!important}
	.hhg-parcours-standalone .hhg-parcours-svg{min-height:520px!important}
}

/* Einzelgeneratoren: genau ein Auswahlzeichen – native Checkbox, keine zweite Pseudo-/DOM-Markierung */
.hhg-parcours-standalone .hhg-check-indicator,
.hhg-dressage-only .hhg-check-indicator{display:none!important}
.hhg-parcours-standalone label.form-check > span::before,
.hhg-parcours-standalone label.hhg-tg-check > span::before,
.hhg-dressage-only label.form-check > span::before,
.hhg-dressage-only label.hhg-tg-check > span::before{content:none!important;display:none!important}
.hhg-parcours-standalone label.form-check input[type="checkbox"],
.hhg-parcours-standalone label.hhg-tg-check input[type="checkbox"],
.hhg-dressage-only label.form-check input[type="checkbox"],
.hhg-dressage-only label.hhg-tg-check input[type="checkbox"]{
	-webkit-appearance:checkbox!important;appearance:auto!important;position:static!important;
	left:auto!important;clip:auto!important;clip-path:none!important;opacity:1!important;visibility:visible!important;
	display:inline-block!important;width:20px!important;height:20px!important;min-width:20px!important;min-height:20px!important;
	margin:0 9px 0 0!important;padding:0!important;accent-color:var(--hhg-main,#DCA54A)!important;
}

/* v0.17.24 – exakt ein Checkbox-Symbol in den Einzelgeneratoren */
.hhg-parcours-standalone .hhg-check-indicator,.hhg-dressage-only .hhg-check-indicator{display:none!important}
.hhg-parcours-standalone label.form-check::before,.hhg-parcours-standalone label.form-check::after,
.hhg-parcours-standalone label.form-check>span::before,.hhg-parcours-standalone label.form-check>span::after,
.hhg-dressage-only label.form-check::before,.hhg-dressage-only label.form-check::after,
.hhg-dressage-only label.form-check>span::before,.hhg-dressage-only label.form-check>span::after{content:none!important;display:none!important}
.hhg-parcours-standalone label.form-check input[type="checkbox"],.hhg-dressage-only label.form-check input[type="checkbox"]{
	-webkit-appearance:none!important;appearance:none!important;position:static!important;opacity:1!important;visibility:visible!important;clip:auto!important;clip-path:none!important;
	display:inline-block!important;width:20px!important;height:20px!important;min-width:20px!important;min-height:20px!important;margin:0 9px 0 0!important;padding:0!important;
	border:1.5px solid #9d8b70!important;border-radius:4px!important;background:#fff!important;box-shadow:none!important;outline:none!important
}
.hhg-parcours-standalone label.form-check input[type="checkbox"]:checked,.hhg-dressage-only label.form-check input[type="checkbox"]:checked{
	border-color:#B1843A!important;background-color:#DCA54A!important;
	background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M4 10.2 8.1 14 16 5.8' fill='none' stroke='white' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important;
	background-repeat:no-repeat!important;background-position:center!important;background-size:16px 16px!important
}
/* Vollbild für beide Parcourseditoren inklusive Werkzeugleiste */
#hhg_ps_editor_mount:fullscreen,#hhg_comp_parcours_builder:fullscreen,#hhg_ps_editor_mount.hhg-parcours-fullscreen-fallback,#hhg_comp_parcours_builder.hhg-parcours-fullscreen-fallback{background:#fff!important;padding:16px!important;overflow:auto!important;box-sizing:border-box!important}
#hhg_ps_editor_mount.hhg-parcours-fullscreen-fallback,#hhg_comp_parcours_builder.hhg-parcours-fullscreen-fallback{position:fixed!important;inset:0!important;z-index:999999!important;width:100vw!important;height:100vh!important}
#hhg_ps_editor_mount:fullscreen .hhg-parcours-workspace,#hhg_comp_parcours_builder:fullscreen .hhg-parcours-workspace,#hhg_ps_editor_mount.hhg-parcours-fullscreen-fallback .hhg-parcours-workspace,#hhg_comp_parcours_builder.hhg-parcours-fullscreen-fallback .hhg-parcours-workspace{grid-template-columns:minmax(0,1fr) 290px!important;gap:16px!important}
#hhg_ps_editor_mount:fullscreen .hhg-parcours-svg,#hhg_comp_parcours_builder:fullscreen .hhg-parcours-svg,#hhg_ps_editor_mount.hhg-parcours-fullscreen-fallback .hhg-parcours-svg,#hhg_comp_parcours_builder.hhg-parcours-fullscreen-fallback .hhg-parcours-svg{height:calc(100vh - 255px)!important;min-height:620px!important;max-height:none!important;width:100%!important}
#hhg_ps_editor_mount:fullscreen .hhg-parcours-toolbar,#hhg_comp_parcours_builder:fullscreen .hhg-parcours-toolbar,#hhg_ps_editor_mount.hhg-parcours-fullscreen-fallback .hhg-parcours-toolbar,#hhg_comp_parcours_builder.hhg-parcours-fullscreen-fallback .hhg-parcours-toolbar{position:sticky!important;top:0!important;z-index:5!important;background:#fff!important;padding:6px 0 10px!important}
@media(max-width:900px){#hhg_ps_editor_mount:fullscreen .hhg-parcours-workspace,#hhg_comp_parcours_builder:fullscreen .hhg-parcours-workspace,#hhg_ps_editor_mount.hhg-parcours-fullscreen-fallback .hhg-parcours-workspace,#hhg_comp_parcours_builder.hhg-parcours-fullscreen-fallback .hhg-parcours-workspace{grid-template-columns:1fr!important}}

/* v0.17.25 – sichere Tablet-/Smartphone-Optimierung der Editoren */
.hhg-parcours-svg{touch-action:none}
@media(max-width:900px){
	.hhg-parcours-standalone .hhg-parcours-config-grid,
	#hhg_comp_parcours_builder .hhg-parcours-config-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
	.hhg-parcours-toolbar{display:block!important}
	.hhg-parcours-library{overflow-x:auto!important;-webkit-overflow-scrolling:touch;padding-bottom:6px!important}
	.hhg-pc-library-row{flex-wrap:nowrap!important;min-width:max-content}
	.hhg-parcours-library-item{min-height:42px!important;white-space:nowrap!important;padding:8px 12px!important}
	.hhg-parcours-tools{display:flex!important;flex-wrap:wrap!important;gap:8px!important}
	.hhg-parcours-tools button{min-height:42px!important}
	.hhg-parcours-properties{width:100%!important;max-width:none!important}
}
@media(max-width:600px){
	.hhg-parcours-standalone .hhg-parcours-config-grid,
	#hhg_comp_parcours_builder .hhg-parcours-config-grid{grid-template-columns:1fr!important}
	.hhg-parcours-standalone .hhg-parcours-svg,
	#hhg_comp_parcours_builder .hhg-parcours-svg{min-height:430px!important}
	.hhg-parcours-tools button{flex:1 1 calc(50% - 8px)!important}
	.hhg-pc-draw-hint{flex-basis:100%!important}
	.hhg-parcours-properties input,
	.hhg-parcours-properties select,
	.hhg-parcours-properties button{min-height:42px!important}
}
/* Legende – Symbolspalte garantiert sichtbar */
.hhg-parcours-legend-symbol{width:64px!important;min-width:64px!important;text-align:center!important}
.hhg-parcours-legend-symbol svg{display:block!important;width:54px!important;height:34px!important;margin:auto!important}

/* v0.17.26 – Legendensymbole & Riding Pattern */
.hhg-parcours-legend td:first-child,.hhg-parcours-legend-symbol{width:72px!important;min-width:72px!important;text-align:center!important}
.hhg-parcours-legend-icon,.hhg-parcours-legend-symbol svg{display:block!important;width:58px!important;height:38px!important;min-width:58px!important;min-height:38px!important;margin:auto!important;overflow:visible!important}
.hhg-pattern-editor-box,.hhg-pattern-output{margin-top:16px}
.hhg-pattern-table-wrap{overflow-x:auto}
.hhg-pattern-table,.hhg-pattern-output table{width:100%;border-collapse:collapse}
.hhg-pattern-table th,.hhg-pattern-table td,.hhg-pattern-output th,.hhg-pattern-output td{border:1px solid #d4d4d4;padding:8px;text-align:left;vertical-align:middle}
.hhg-pattern-table th:first-child,.hhg-pattern-table td:first-child,.hhg-pattern-output th:first-child,.hhg-pattern-output td:first-child{width:150px}
.hhg-pattern-table th:last-child,.hhg-pattern-table td:last-child{width:48px;text-align:center}
.hhg-pattern-table input{width:100%;box-sizing:border-box}
@media(max-width:600px){.hhg-pattern-table{min-width:520px}.hhg-pattern-table th:first-child,.hhg-pattern-table td:first-child{width:95px}}

/* v0.17.27 – robuste Legendensymbole als Bilddaten */
.hhg-parcours-legend-symbol{width:72px!important;min-width:72px!important;text-align:center!important}
.hhg-parcours-legend-symbol img.hhg-parcours-legend-icon{display:block!important;width:58px!important;height:38px!important;max-width:none!important;object-fit:contain!important;margin:0 auto!important}

/* v0.17.28 – Legendenspalte: Symbol direkt in der ersten Spalte */
.hhg-parcours-legend-symbol{
	width:78px!important;
	min-width:78px!important;
	text-align:center!important;
	vertical-align:middle!important;
	padding:6px!important;
}
.hhg-parcours-legend-symbol-wrap{
	position:relative!important;
	display:inline-flex!important;
	align-items:center!important;
	justify-content:center!important;
	width:62px!important;
	height:42px!important;
	min-width:62px!important;
	min-height:42px!important;
	overflow:visible!important;
}
.hhg-parcours-legend-symbol-wrap>svg.hhg-parcours-legend-icon{
	display:block!important;
	width:58px!important;
	height:38px!important;
	min-width:58px!important;
	min-height:38px!important;
	overflow:visible!important;
	position:relative!important;
	z-index:2!important;
}
.hhg-parcours-legend-fallback{
	position:absolute!important;
	inset:0!important;
	display:flex!important;
	align-items:center!important;
	justify-content:center!important;
	font-size:10px!important;
	font-weight:700!important;
	color:#666!important;
	z-index:1!important;
}
/* Falls SVG korrekt da ist, wird der Fallback optisch verdeckt; falls SVG entfernt wird, bleibt wenigstens eine Kennung sichtbar. */

/* v0.17.29 – echte PNG-Legendensymbole */
.hhg-parcours-legend-symbol{width:78px!important;min-width:78px!important;text-align:center!important;vertical-align:middle!important;padding:5px 8px!important}
.hhg-parcours-legend-symbol img.hhg-parcours-legend-icon{display:block!important;width:58px!important;height:38px!important;max-width:58px!important;object-fit:contain!important;margin:0 auto!important}

/* v0.17.30 – Legendensymbol-URL direkt aus dem geladenen Parcours-Script ableiten */
.hhg-parcours-legend-missing{
	display:inline-flex!important;width:28px!important;height:28px!important;align-items:center!important;justify-content:center!important;
	border:1px solid #c00!important;color:#c00!important;border-radius:50%!important;font-weight:700!important;
}

/* v0.17.32 – Maßband / Messstrecken im Parcoursplaner */
.hhg-parcours-svg[data-guide-mode="measure"]{touch-action:none;cursor:crosshair}
.hhg-parcours-svg [data-measure-handle]{cursor:crosshair}
#hhg_ps_measure_info_wrap,#hhg_pc_measure_info_wrap{
	margin:0 0 12px;padding:9px 10px;border:1px solid var(--hhg-border,#B1843A);border-radius:8px;background:var(--hhg-accent,#F3E3C7)
}
#hhg_ps_measure_info_wrap .hhg-tg-help,#hhg_pc_measure_info_wrap .hhg-tg-help{display:block;margin-top:5px}


/* === v0.17.37 – ruhige, klar gegliederte Parcours-Werkzeugleiste === */
.hhg-parcours-toolbar-v2{display:grid!important;grid-template-columns:minmax(0,1fr);gap:10px!important;margin:14px 0!important}
.hhg-parcours-toolgroup{border:1px solid color-mix(in srgb,var(--hhg-border) 65%,#fff);border-radius:10px;background:#fff;padding:10px 12px;min-width:0}
.hhg-parcours-toolgroup-title{font-size:13px;font-weight:700;color:#4b3a20;margin:0 0 8px;letter-spacing:.01em}
.hhg-parcours-toolgroup-obstacles{background:color-mix(in srgb,var(--hhg-accent) 30%,#fff)}
.hhg-parcours-toolgroup-obstacles .hhg-parcours-library{display:flex;flex-wrap:wrap;gap:7px}
.hhg-parcours-toolgroup-tools{display:grid;grid-template-columns:minmax(0,1fr);gap:6px}
.hhg-parcours-toolgroup-tools .hhg-parcours-tools{display:flex;flex-wrap:wrap;gap:7px;align-items:center}
.hhg-parcours-toolgroup-tools .hhg-pc-draw-hint{margin:0;font-size:12px;color:#6b6257}
.hhg-parcours-toolgroup-view{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fffaf1;border-color:var(--hhg-border)}
.hhg-parcours-toolgroup-view .hhg-parcours-toolgroup-title{margin:0}
.hhg-parcours-fullscreen-btn{font-weight:700!important;border:1.5px solid var(--hhg-main)!important;background:var(--hhg-accent)!important;color:#1e1a13!important;box-shadow:0 1px 2px rgba(0,0,0,.05)}
.hhg-parcours-fullscreen-btn:hover{background:color-mix(in srgb,var(--hhg-accent) 75%,var(--hhg-main))!important}
.hhg-parcours-clear{margin-left:auto}

/* Hauptschritte sind zugleich eine direkte Rücksprung-Navigation. */
.hhg-tg-steps [data-step-indicator]{cursor:pointer;transition:background .15s ease,border-color .15s ease,transform .15s ease}
.hhg-tg-steps [data-step-indicator]:hover{background:color-mix(in srgb,var(--hhg-accent) 55%,#fff);border-color:var(--hhg-border)}
.hhg-tg-steps [data-step-indicator]:focus-visible{outline:2px solid var(--hhg-main);outline-offset:2px}

@media(min-width:980px){
 .hhg-parcours-toolbar-v2{grid-template-columns:minmax(0,1fr) auto}
 .hhg-parcours-toolgroup-obstacles{grid-column:1/-1}
 .hhg-parcours-toolgroup-tools{grid-column:1}
 .hhg-parcours-toolgroup-view{grid-column:2;min-width:220px;align-self:stretch;flex-direction:column;justify-content:center;align-items:stretch}
 .hhg-parcours-toolgroup-view .hhg-parcours-toolgroup-title{text-align:center}
}
@media(max-width:700px){.hhg-parcours-toolgroup-view{display:block}.hhg-parcours-fullscreen-btn{width:100%;margin-top:7px}.hhg-parcours-clear{margin-left:0}}


/* === v0.17.38 – moderne, ruhigere Hindernisbibliothek === */
.hhg-parcours-toolgroup-title{display:flex;align-items:center;gap:7px}
.hhg-toolbar-title-icon{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:7px;background:#fff;color:#765a2d;border:1px solid rgba(177,132,58,.35);font-size:14px;line-height:1;font-weight:700;flex:0 0 22px}
.hhg-parcours-toolgroup-obstacles{padding:12px 14px 14px!important;background:linear-gradient(180deg,#fffdf9 0%,color-mix(in srgb,var(--hhg-accent) 16%,#fff) 100%)!important}
.hhg-parcours-toolgroup-obstacles>.hhg-parcours-toolgroup-title{font-size:14px;margin-bottom:10px;color:#2c2924}
.hhg-parcours-library{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px!important;align-items:stretch}
.hhg-pc-library-group{position:relative;min-width:0;padding:10px 11px 11px;border:1px solid rgba(177,132,58,.24);border-radius:9px;background:rgba(255,255,255,.82);box-shadow:0 1px 2px rgba(55,43,25,.025)}
.hhg-pc-library-group::before{content:"";position:absolute;left:0;top:10px;bottom:10px;width:3px;border-radius:0 3px 3px 0;background:rgba(220,165,74,.48)}
.hhg-pc-library-group:nth-child(2)::before{background:rgba(151,125,87,.46)}
.hhg-pc-library-group:nth-child(3)::before{background:rgba(192,151,92,.40)}
.hhg-pc-library-group:nth-child(4)::before{background:rgba(120,142,102,.42)}
.hhg-pc-library-heading{display:flex;align-items:center;gap:7px;margin:0 0 8px 2px;padding-left:4px;font-size:12px;font-weight:750;color:#3c352b;letter-spacing:.01em}
.hhg-pc-library-icon{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:6px;background:color-mix(in srgb,var(--hhg-accent) 42%,#fff);border:1px solid rgba(177,132,58,.22);color:#6b5128;font-size:12px;font-weight:800;line-height:1}
.hhg-pc-library-row{display:flex!important;flex-wrap:wrap!important;gap:5px!important;min-width:0!important}
.hhg-parcours-library-item{min-height:34px!important;padding:6px 9px!important;border-radius:7px!important;border:1px solid rgba(177,132,58,.58)!important;background:#fff!important;color:#181715!important;font-size:12.5px!important;line-height:1.2!important;box-shadow:none!important;transition:background .14s ease,border-color .14s ease,box-shadow .14s ease,transform .14s ease!important}
.hhg-parcours-library-item:hover{background:color-mix(in srgb,var(--hhg-accent) 38%,#fff)!important;border-color:var(--hhg-border)!important;box-shadow:0 2px 6px rgba(74,55,24,.07)!important;transform:translateY(-1px)}
.hhg-parcours-library-item:focus-visible{outline:2px solid color-mix(in srgb,var(--hhg-main) 72%,#fff)!important;outline-offset:2px!important}
.hhg-parcours-toolgroup-tools>.hhg-parcours-toolgroup-title,.hhg-parcours-toolgroup-view>.hhg-parcours-toolgroup-title{font-size:13px;color:#302b24}
.hhg-parcours-toolgroup-tools,.hhg-parcours-toolgroup-view{box-shadow:0 1px 2px rgba(55,43,25,.025)}
@media(min-width:1180px){.hhg-parcours-library{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:900px){.hhg-parcours-library{grid-template-columns:1fr!important;overflow:visible!important}.hhg-pc-library-row{min-width:0!important;flex-wrap:wrap!important}}
@media(max-width:600px){.hhg-pc-library-group{padding:9px}.hhg-parcours-library-item{min-height:38px!important;font-size:13px!important}}


/* === v0.17.39 – Editor-Palette: moderne visuelle Hierarchie === */
.hhg-parcours-toolgroup{border-color:#e5dfd5!important;border-radius:14px!important;box-shadow:0 1px 2px rgba(28,24,18,.03)!important}
.hhg-parcours-toolgroup-obstacles{padding:16px!important;background:#fff!important;border-color:#e2ddd4!important}
.hhg-parcours-toolgroup-obstacles>.hhg-parcours-toolgroup-title{font-size:15px!important;font-weight:750!important;margin:0 0 14px!important;color:#1f1d1a!important}
.hhg-toolbar-title-icon{width:28px!important;height:28px!important;flex-basis:28px!important;border:0!important;border-radius:8px!important;background:#f6f2eb!important;color:#6d5732!important;font-size:0!important;position:relative}
.hhg-toolbar-title-icon::before{font-size:15px!important;line-height:1!important}
.hhg-parcours-toolgroup-obstacles .hhg-toolbar-title-icon::before{content:"◆"}
.hhg-parcours-toolgroup-tools .hhg-toolbar-title-icon::before{content:"⚙"}
.hhg-parcours-toolgroup-view .hhg-toolbar-title-icon::before{content:"▣"}
.hhg-parcours-library{display:grid!important;grid-template-columns:1fr!important;gap:0!important;border:1px solid #e9e4dc;border-radius:12px;overflow:hidden;background:#fff}
.hhg-pc-library-group{display:grid!important;grid-template-columns:190px minmax(0,1fr)!important;gap:14px!important;align-items:start!important;padding:13px 14px!important;border:0!important;border-radius:0!important;background:#fff!important;box-shadow:none!important;position:relative!important}
.hhg-pc-library-group+.hhg-pc-library-group{border-top:1px solid #eee9e2!important}
.hhg-pc-library-group::before{content:""!important;position:absolute!important;left:0!important;top:0!important;bottom:0!important;width:4px!important;border-radius:0!important;background:#d7b779!important}
.hhg-pc-library-group:nth-child(2)::before{background:#9aa9a0!important}
.hhg-pc-library-group:nth-child(3)::before{background:#c7a6a0!important}
.hhg-pc-library-group:nth-child(4)::before{background:#94aa84!important}
.hhg-pc-library-group:nth-child(1){background:linear-gradient(90deg,#fffaf1 0,#fff 28%)!important}
.hhg-pc-library-group:nth-child(2){background:linear-gradient(90deg,#f6f8f7 0,#fff 28%)!important}
.hhg-pc-library-group:nth-child(3){background:linear-gradient(90deg,#faf7f6 0,#fff 28%)!important}
.hhg-pc-library-group:nth-child(4){background:linear-gradient(90deg,#f6f9f3 0,#fff 28%)!important}
.hhg-pc-library-heading{display:flex!important;align-items:center!important;gap:9px!important;margin:2px 0 0!important;padding:0 0 0 3px!important;font-size:12.5px!important;font-weight:750!important;color:#27241f!important;line-height:1.25!important}
.hhg-pc-library-icon{width:30px!important;height:30px!important;flex:0 0 30px!important;border-radius:9px!important;background:#fff!important;border:1px solid #e4ded4!important;color:#5d5549!important;font-size:0!important;position:relative!important;box-shadow:0 1px 2px rgba(20,17,12,.03)!important}
.hhg-pc-library-icon svg{width:17px;height:17px;display:block;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.hhg-pc-library-row{display:flex!important;flex-wrap:wrap!important;gap:7px!important;min-width:0!important}
.hhg-parcours-library-item{min-height:36px!important;padding:7px 11px!important;border:1px solid #ddd7cd!important;border-radius:9px!important;background:#fff!important;color:#24211d!important;font-size:12.5px!important;font-weight:550!important;box-shadow:0 1px 1px rgba(30,24,15,.025)!important;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease,transform .15s ease!important}
.hhg-parcours-library-item:hover{background:#fffaf1!important;border-color:#c9a45f!important;box-shadow:0 3px 10px rgba(71,53,25,.07)!important;transform:translateY(-1px)!important}
.hhg-parcours-toolgroup-tools{background:#fff!important;padding:14px!important}
.hhg-parcours-toolgroup-view{background:#faf8f4!important;padding:14px!important}
.hhg-parcours-toolgroup-tools>.hhg-parcours-toolgroup-title,.hhg-parcours-toolgroup-view>.hhg-parcours-toolgroup-title{font-size:14px!important;font-weight:750!important;color:#24211d!important}
.hhg-parcours-toolgroup-tools .hhg-parcours-tools button{border-radius:9px!important}
.hhg-parcours-fullscreen-btn{border-radius:9px!important;background:#fff!important;border-color:#d3b06d!important;box-shadow:0 1px 2px rgba(65,48,20,.04)!important}
@media(max-width:900px){.hhg-pc-library-group{grid-template-columns:1fr!important;gap:9px!important}.hhg-pc-library-heading{margin-bottom:2px!important}}

/* === v0.17.40 – Modern Dashboard UI ===================================== */
.hhg-tg-wrap,.hhg-parcours-standalone{--ui-bg:#f5f7fa;--ui-card:#fff;--ui-text:#20242a;--ui-muted:#667085;--ui-line:#e6e9ef;--ui-shadow-sm:0 3px 12px rgba(22,28,45,.055);--ui-gold:#dca54a}
.hhg-tg-card{border:1px solid var(--ui-line)!important;border-radius:16px!important;background:var(--ui-card)!important;box-shadow:var(--ui-shadow-sm)!important}
.hhg-tg-card input[type=text],.hhg-tg-card input[type=number],.hhg-tg-card input[type=date],.hhg-tg-card input[type=email],.hhg-tg-card select,.hhg-tg-card textarea,.hhg-parcours-standalone input[type=text],.hhg-parcours-standalone input[type=number],.hhg-parcours-standalone input[type=date],.hhg-parcours-standalone select,.hhg-parcours-standalone textarea{border:1px solid #d8dde6!important;border-radius:10px!important;background:#fff!important;box-shadow:0 1px 2px rgba(16,24,40,.02)!important;transition:border-color .15s,box-shadow .15s!important}
.hhg-tg-card input:focus,.hhg-tg-card select:focus,.hhg-tg-card textarea:focus,.hhg-parcours-standalone input:focus,.hhg-parcours-standalone select:focus,.hhg-parcours-standalone textarea:focus{border-color:#d0a557!important;box-shadow:0 0 0 3px rgba(220,165,74,.14)!important;outline:0!important}
.hhg-parcours-toolbar-v2{gap:12px!important;margin:18px 0!important}
.hhg-parcours-toolgroup{border:1px solid var(--ui-line)!important;border-radius:16px!important;background:#fff!important;box-shadow:var(--ui-shadow-sm)!important;padding:16px!important}
.hhg-parcours-toolgroup-title{display:flex!important;align-items:center!important;gap:10px!important;margin:0 0 14px!important;font-size:14px!important;font-weight:750!important;color:var(--ui-text)!important;letter-spacing:0!important}
.hhg-toolbar-title-mark{display:block;width:5px;height:24px;border-radius:999px;background:linear-gradient(180deg,#e6b75f,#c98d2d);box-shadow:0 0 0 4px rgba(220,165,74,.10);flex:0 0 5px}
.hhg-parcours-toolgroup-obstacles{padding:18px!important;background:#f8fafc!important;border-color:#e3e7ee!important}
.hhg-parcours-toolgroup-obstacles>.hhg-parcours-toolgroup-title{margin-bottom:16px!important;font-size:16px!important}
.hhg-parcours-library{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;border:0!important;background:transparent!important;overflow:visible!important}
.hhg-pc-library-group{display:block!important;min-width:0!important;border:1px solid var(--ui-line)!important;border-radius:14px!important;background:#fff!important;padding:14px!important;box-shadow:0 5px 16px rgba(18,28,45,.045)!important;position:relative!important;overflow:hidden!important}
.hhg-pc-library-group::before{content:""!important;position:absolute!important;left:0!important;top:0!important;right:0!important;width:auto!important;height:4px!important;border-radius:0!important;background:#64748b!important}
.hhg-pc-library-group[data-group="Springen"]::before{background:#5b78d6!important}.hhg-pc-library-group[data-group="Western"]::before{background:#b47b47!important}.hhg-pc-library-group[data-group="Geschicklichkeit / Mounted Games"]::before{background:#9a6bb3!important}.hhg-pc-library-group[data-group="Gelände"]::before{background:#5d9770!important}
.hhg-pc-library-group[data-group="Springen"]{background:linear-gradient(180deg,#f8faff 0,#fff 34%)!important}.hhg-pc-library-group[data-group="Western"]{background:linear-gradient(180deg,#fffaf5 0,#fff 34%)!important}.hhg-pc-library-group[data-group="Geschicklichkeit / Mounted Games"]{background:linear-gradient(180deg,#fcf9ff 0,#fff 34%)!important}.hhg-pc-library-group[data-group="Gelände"]{background:linear-gradient(180deg,#f7fbf8 0,#fff 34%)!important}
.hhg-pc-library-heading{display:flex!important;align-items:center!important;gap:10px!important;margin:0 0 12px!important;padding:2px 0 0!important;min-height:38px!important;color:var(--ui-text)!important}
.hhg-pc-library-marker{width:10px;height:10px;border-radius:50%;background:#64748b;box-shadow:0 0 0 5px rgba(100,116,139,.10);flex:0 0 10px}
[data-group="Springen"] .hhg-pc-library-marker{background:#5b78d6;box-shadow:0 0 0 5px rgba(91,120,214,.10)}[data-group="Western"] .hhg-pc-library-marker{background:#b47b47;box-shadow:0 0 0 5px rgba(180,123,71,.10)}[data-group="Geschicklichkeit / Mounted Games"] .hhg-pc-library-marker{background:#9a6bb3;box-shadow:0 0 0 5px rgba(154,107,179,.10)}[data-group="Gelände"] .hhg-pc-library-marker{background:#5d9770;box-shadow:0 0 0 5px rgba(93,151,112,.10)}
.hhg-pc-library-titlewrap{display:flex;flex-direction:column;gap:2px;min-width:0}.hhg-pc-library-label{font-size:13px;font-weight:750;line-height:1.2;color:#22262c}.hhg-pc-library-count{font-size:10.5px;font-weight:500;color:#8a93a0;line-height:1.2}
.hhg-pc-library-row{display:flex!important;flex-wrap:wrap!important;gap:7px!important}.hhg-parcours-library-item{min-height:34px!important;padding:7px 10px!important;border:1px solid #e1e5eb!important;border-radius:9px!important;background:#fff!important;color:#31363f!important;font-size:12px!important;font-weight:600!important;line-height:1.15!important;box-shadow:0 1px 2px rgba(16,24,40,.025)!important;transition:all .14s ease!important}.hhg-parcours-library-item:hover{border-color:#cfa04d!important;background:#fffaf1!important;color:#1f242b!important;box-shadow:0 4px 12px rgba(44,52,70,.08)!important;transform:translateY(-1px)!important}.hhg-parcours-library-item:active{transform:translateY(0)!important;box-shadow:none!important}
.hhg-parcours-toolgroup-tools{background:#fff!important;padding:16px!important}.hhg-parcours-toolgroup-tools .hhg-parcours-tools{gap:8px!important}.hhg-parcours-toolgroup-tools .hhg-parcours-tools button{min-height:40px!important;border:1px solid #dfe3ea!important;border-radius:10px!important;background:#fff!important;color:#2b3038!important;font-weight:700!important;padding:8px 14px!important;box-shadow:0 2px 6px rgba(16,24,40,.035)!important}.hhg-parcours-toolgroup-tools .hhg-parcours-tools button:hover{border-color:#cfa04d!important;background:#fffaf2!important;transform:translateY(-1px)!important}.hhg-parcours-clear{margin-left:auto!important;color:#8f3d35!important;border-color:#ead5d1!important;background:#fffafa!important}.hhg-pc-draw-hint{margin-top:4px!important;color:var(--ui-muted)!important;font-size:11.5px!important}
.hhg-parcours-toolgroup-view{background:linear-gradient(145deg,#202b3c,#34455e)!important;border:0!important;color:#fff!important;min-width:220px!important;padding:16px!important;box-shadow:0 8px 24px rgba(31,41,55,.14)!important}.hhg-parcours-toolgroup-view .hhg-parcours-toolgroup-title{color:#fff!important;margin-bottom:12px!important}.hhg-parcours-toolgroup-view .hhg-toolbar-title-mark{background:linear-gradient(180deg,#f5c66e,#dca54a);box-shadow:0 0 0 4px rgba(255,255,255,.08)}.hhg-parcours-fullscreen-btn{min-height:42px!important;border:1px solid rgba(255,255,255,.18)!important;border-radius:10px!important;background:#fff!important;color:#202733!important;font-weight:800!important;box-shadow:0 5px 16px rgba(0,0,0,.12)!important}.hhg-parcours-fullscreen-btn:hover{background:#fbf3e3!important;border-color:#f0c979!important;transform:translateY(-1px)!important}
.hhg-parcours-editor-wrap,.hhg-parcours-workspace{border-color:#e2e6ed!important;background:#f7f9fc!important;border-radius:16px!important}
.hhg-pc-library-icon,.hhg-toolbar-title-icon{display:none!important}.hhg-pc-library-heading>svg,.hhg-pc-library-heading svg,.hhg-toolbar-title-icon svg{display:none!important;width:0!important;height:0!important}
@media(min-width:1180px){.hhg-parcours-library{grid-template-columns:repeat(2,minmax(0,1fr))!important}}@media(max-width:900px){.hhg-parcours-library{grid-template-columns:1fr!important}.hhg-parcours-toolgroup-view{min-width:0!important}}@media(max-width:620px){.hhg-parcours-toolgroup{padding:13px!important;border-radius:13px!important}.hhg-pc-library-group{padding:12px!important}.hhg-parcours-library-item{font-size:12.5px!important;min-height:38px!important}.hhg-parcours-clear{margin-left:0!important}}


/* === v0.17.41 – Modern Glass Dashboard ================================== */
:root{
  --hhg-ui-bg:#f4f7fb;
  --hhg-ui-surface:#ffffff;
  --hhg-ui-text:#182236;
  --hhg-ui-muted:#6f7b8f;
  --hhg-ui-line:#e3e9f2;
  --hhg-ui-blue:#5278ff;
  --hhg-ui-cyan:#35b9d6;
  --hhg-ui-violet:#8a63f6;
  --hhg-ui-green:#43b987;
  --hhg-ui-warm:#ec9b5f;
  --hhg-ui-shadow:0 14px 34px rgba(33,50,82,.085);
  --hhg-ui-shadow-soft:0 7px 20px rgba(33,50,82,.065);
}

.hhg-turniergenerator-main,
.hhg-parcours-standalone,
.hhg-dressage-standalone{color:var(--hhg-ui-text)!important}

.hhg-turniergenerator-main .hhg-tg-card,
.hhg-parcours-standalone .hhg-tg-card,
.hhg-dressage-standalone .hhg-tg-card{
  border:1px solid rgba(216,224,237,.9)!important;
  border-radius:18px!important;
  background:linear-gradient(180deg,rgba(255,255,255,.99),rgba(255,255,255,.94))!important;
  box-shadow:var(--hhg-ui-shadow-soft)!important
}

.hhg-turniergenerator-main input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),
.hhg-turniergenerator-main select,
.hhg-turniergenerator-main textarea,
.hhg-parcours-standalone input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),
.hhg-parcours-standalone select,
.hhg-parcours-standalone textarea,
.hhg-dressage-standalone input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),
.hhg-dressage-standalone select,
.hhg-dressage-standalone textarea{
  border:1px solid #dce4ef!important;
  border-radius:11px!important;
  background:linear-gradient(180deg,#fff,#fbfcfe)!important;
  box-shadow:inset 0 1px 1px rgba(20,31,50,.025),0 1px 2px rgba(20,31,50,.025)!important;
  transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease!important
}
.hhg-turniergenerator-main input:focus,
.hhg-turniergenerator-main select:focus,
.hhg-turniergenerator-main textarea:focus,
.hhg-parcours-standalone input:focus,
.hhg-parcours-standalone select:focus,
.hhg-parcours-standalone textarea:focus,
.hhg-dressage-standalone input:focus,
.hhg-dressage-standalone select:focus,
.hhg-dressage-standalone textarea:focus{
  border-color:#8aa5ff!important;
  box-shadow:0 0 0 4px rgba(82,120,255,.10)!important;
  outline:0!important
}

.hhg-parcours-toolbar-v2{
  position:relative!important;
  gap:14px!important;
  padding:5px!important;
  border:0!important;
  border-radius:22px!important;
  background:
    radial-gradient(circle at 10% 0%,rgba(82,120,255,.10),transparent 27%),
    radial-gradient(circle at 90% 100%,rgba(138,99,246,.08),transparent 31%),
    #f3f6fb!important
}
.hhg-parcours-toolbar-v2::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  pointer-events:none!important;
  border:1px solid rgba(211,221,235,.82)!important;
  border-radius:22px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.95)!important
}

.hhg-parcours-toolgroup{
  position:relative!important;
  isolation:isolate!important;
  border:1px solid rgba(215,224,237,.92)!important;
  border-radius:18px!important;
  background:rgba(255,255,255,.90)!important;
  box-shadow:0 10px 28px rgba(27,42,70,.075),inset 0 1px 0 rgba(255,255,255,.98)!important;
  backdrop-filter:blur(12px)!important;
  -webkit-backdrop-filter:blur(12px)!important;
  overflow:hidden!important
}
.hhg-parcours-toolgroup::after{
  content:""!important;
  position:absolute!important;
  left:18px!important;
  right:18px!important;
  top:0!important;
  height:1px!important;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.98),transparent)!important;
  z-index:-1!important
}
.hhg-parcours-toolgroup-title{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  color:#1c2739!important;
  font-size:15px!important;
  font-weight:800!important;
  letter-spacing:-.015em!important
}
.hhg-parcours-toolgroup-title::before{
  content:""!important;
  width:11px!important;
  height:11px!important;
  border-radius:4px!important;
  background:linear-gradient(135deg,var(--hhg-ui-blue),var(--hhg-ui-cyan))!important;
  box-shadow:0 0 0 5px rgba(82,120,255,.08),0 3px 8px rgba(82,120,255,.18)!important;
  flex:0 0 11px!important
}

/* Hindernis-Bibliothek */
.hhg-parcours-toolgroup-obstacles{
  padding:18px!important;
  background:radial-gradient(circle at 7% -12%,rgba(82,120,255,.09),transparent 29%),rgba(255,255,255,.92)!important
}
.hhg-parcours-toolgroup-obstacles>.hhg-parcours-toolgroup-title{
  font-size:17px!important;
  margin-bottom:15px!important
}
.hhg-parcours-library{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:13px!important;
  border:0!important;
  background:transparent!important;
  overflow:visible!important
}
.hhg-pc-library-group{
  --group-accent:#5278ff;
  --group-accent2:#35b9d6;
  position:relative!important;
  display:block!important;
  min-width:0!important;
  padding:15px!important;
  border:1px solid rgba(220,227,238,.94)!important;
  border-radius:16px!important;
  background:
    radial-gradient(circle at 92% -8%,color-mix(in srgb,var(--group-accent) 14%,transparent),transparent 34%),
    linear-gradient(160deg,#fff 0%,#fbfcff 100%)!important;
  box-shadow:0 8px 20px rgba(34,48,76,.06),inset 0 1px 0 rgba(255,255,255,.98)!important;
  overflow:hidden!important;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease!important
}
.hhg-pc-library-group:hover{
  transform:translateY(-2px)!important;
  border-color:color-mix(in srgb,var(--group-accent) 25%,#dce4ef)!important;
  box-shadow:0 14px 28px rgba(34,48,76,.09),0 5px 18px color-mix(in srgb,var(--group-accent) 8%,transparent)!important
}
.hhg-pc-library-group::before{
  content:""!important;
  position:absolute!important;
  left:0!important;
  top:0!important;
  right:0!important;
  width:auto!important;
  height:3px!important;
  border-radius:0!important;
  background:linear-gradient(90deg,var(--group-accent),var(--group-accent2),transparent 95%)!important
}
.hhg-pc-library-group[data-group="Springen"]{--group-accent:#5278ff;--group-accent2:#35b9d6}
.hhg-pc-library-group[data-group="Western"]{--group-accent:#ec9b5f;--group-accent2:#f4bf73}
.hhg-pc-library-group[data-group="Geschicklichkeit / Mounted Games"]{--group-accent:#8a63f6;--group-accent2:#d06dd5}
.hhg-pc-library-group[data-group="Gelände"]{--group-accent:#43b987;--group-accent2:#78cf7d}

.hhg-pc-library-heading{
  display:flex!important;
  align-items:center!important;
  min-height:34px!important;
  margin-bottom:10px!important;
  gap:10px!important
}
.hhg-pc-library-marker{
  width:30px!important;
  height:30px!important;
  flex:0 0 30px!important;
  border-radius:10px!important;
  background:linear-gradient(145deg,color-mix(in srgb,var(--group-accent) 90%,#fff),color-mix(in srgb,var(--group-accent2) 86%,#fff))!important;
  box-shadow:0 7px 14px color-mix(in srgb,var(--group-accent) 22%,transparent),inset 0 1px 0 rgba(255,255,255,.50)!important;
  position:relative!important
}
.hhg-pc-library-marker::after{
  content:""!important;
  position:absolute!important;
  width:8px!important;
  height:8px!important;
  left:11px!important;
  top:11px!important;
  border-radius:50%!important;
  background:#fff!important;
  box-shadow:0 0 0 3px rgba(255,255,255,.18)!important
}
.hhg-pc-library-titlewrap{display:flex!important;flex-direction:column!important;gap:1px!important;min-width:0!important}
.hhg-pc-library-label{color:#1e293b!important;font-size:13.5px!important;font-weight:800!important;letter-spacing:-.01em!important}
.hhg-pc-library-count{color:#8a95a6!important;font-size:10.5px!important;font-weight:650!important}
.hhg-pc-library-row{display:flex!important;flex-wrap:wrap!important;gap:7px!important}

.hhg-parcours-library-item{
  min-height:34px!important;
  padding:7px 10px!important;
  border:1px solid #e2e8f0!important;
  border-radius:10px!important;
  background:linear-gradient(180deg,#fff,#fafbfd)!important;
  color:#344055!important;
  font-size:12px!important;
  font-weight:700!important;
  line-height:1.15!important;
  box-shadow:0 2px 4px rgba(24,36,58,.025),inset 0 1px 0 rgba(255,255,255,.9)!important;
  transition:all .15s ease!important
}
.hhg-parcours-library-item:hover{
  border-color:color-mix(in srgb,var(--group-accent) 45%,#dbe3ee)!important;
  color:#172033!important;
  background:linear-gradient(180deg,color-mix(in srgb,var(--group-accent) 7%,#fff),#fff)!important;
  box-shadow:0 6px 14px rgba(28,42,68,.075),0 0 0 3px color-mix(in srgb,var(--group-accent) 7%,transparent)!important;
  transform:translateY(-1px)!important
}
.hhg-parcours-library-item:active{transform:translateY(0) scale(.985)!important;box-shadow:inset 0 2px 4px rgba(24,36,58,.06)!important}

/* Werkzeuge */
.hhg-parcours-toolgroup-tools{
  padding:16px!important;
  background:radial-gradient(circle at 0 0,rgba(53,185,214,.10),transparent 35%),rgba(255,255,255,.94)!important
}
.hhg-parcours-toolgroup-tools>.hhg-parcours-toolgroup-title::before{
  background:linear-gradient(135deg,#35b9d6,#5278ff)!important
}
.hhg-parcours-toolgroup-tools .hhg-parcours-tools{gap:8px!important}
.hhg-parcours-toolgroup-tools .hhg-parcours-tools button{
  min-height:42px!important;
  border:1px solid #dfe6f0!important;
  border-radius:11px!important;
  background:linear-gradient(180deg,#fff,#f8fafc)!important;
  color:#273449!important;
  font-weight:800!important;
  padding:8px 14px!important;
  box-shadow:0 4px 10px rgba(25,42,72,.05),inset 0 1px 0 #fff!important;
  transition:all .15s ease!important
}
.hhg-parcours-toolgroup-tools .hhg-parcours-tools button:hover{
  border-color:#a9bbf7!important;
  color:#20376c!important;
  background:linear-gradient(180deg,#fff,#f2f6ff)!important;
  box-shadow:0 8px 18px rgba(46,75,139,.10),0 0 0 3px rgba(82,120,255,.06)!important;
  transform:translateY(-1px)!important
}
.hhg-parcours-toolgroup-tools .hhg-parcours-clear{
  margin-left:auto!important;
  border-color:#f0d9df!important;
  color:#9a4252!important;
  background:linear-gradient(180deg,#fff,#fff7f8)!important
}

/* Ansicht / Vollbild */
.hhg-parcours-toolgroup-view{
  min-width:230px!important;
  padding:16px!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.18)!important;
  background:
    radial-gradient(circle at 20% 0,rgba(73,208,255,.36),transparent 28%),
    radial-gradient(circle at 100% 100%,rgba(162,91,255,.40),transparent 34%),
    linear-gradient(145deg,#202b49 0%,#273a6d 52%,#503877 100%)!important;
  box-shadow:0 18px 34px rgba(36,46,82,.18),inset 0 1px 0 rgba(255,255,255,.18)!important
}
.hhg-parcours-toolgroup-view>.hhg-parcours-toolgroup-title{color:#fff!important}
.hhg-parcours-toolgroup-view>.hhg-parcours-toolgroup-title::before{
  background:linear-gradient(135deg,#6ee7ff,#b893ff)!important;
  box-shadow:0 0 0 5px rgba(255,255,255,.08),0 0 18px rgba(110,231,255,.28)!important
}
.hhg-parcours-fullscreen-btn{
  min-height:44px!important;
  border:1px solid rgba(255,255,255,.30)!important;
  border-radius:12px!important;
  background:linear-gradient(180deg,rgba(255,255,255,.99),rgba(244,247,255,.95))!important;
  color:#263457!important;
  font-weight:850!important;
  box-shadow:0 9px 20px rgba(0,0,0,.18),inset 0 1px 0 #fff!important
}
.hhg-parcours-fullscreen-btn:hover{
  border-color:#fff!important;
  background:#fff!important;
  box-shadow:0 12px 26px rgba(0,0,0,.22),0 0 0 4px rgba(255,255,255,.08)!important;
  transform:translateY(-1px)!important
}
.hhg-pc-draw-hint{color:#778399!important;font-size:11.5px!important}

/* Arbeitsbereich */
.hhg-parcours-workspace{
  gap:16px!important;
  border:0!important;
  border-radius:20px!important;
  background:linear-gradient(145deg,#edf2f8,#f8fafc)!important;
  padding:10px!important;
  box-shadow:inset 0 1px 2px rgba(30,45,70,.035)!important
}
.hhg-parcours-svg{
  border:1px solid #dfe6ef!important;
  border-radius:14px!important;
  background:#fff!important;
  box-shadow:0 10px 24px rgba(36,51,78,.07)!important
}
.hhg-parcours-properties{
  border:1px solid #dde5ef!important;
  border-radius:15px!important;
  background:linear-gradient(180deg,#fff,#fafbfd)!important;
  box-shadow:0 9px 22px rgba(32,48,75,.07)!important
}
.hhg-parcours-properties h5{
  color:#1e293b!important;
  font-size:15px!important;
  font-weight:800!important;
  letter-spacing:-.01em!important
}

.hhg-parcours-config-grid{
  padding:14px!important;
  border:1px solid #e0e7f0!important;
  border-radius:16px!important;
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(248,250,253,.96))!important;
  box-shadow:0 7px 18px rgba(32,48,76,.045)!important
}
.hhg-parcours-config-grid>label{color:#344055!important}
.hhg-parcours-config-grid input[type="checkbox"]{accent-color:var(--hhg-ui-blue)!important}

@media(min-width:1180px){
  .hhg-parcours-library{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:900px){
  .hhg-parcours-library{grid-template-columns:1fr!important}
  .hhg-parcours-toolgroup-view{min-width:0!important}
}
@media(max-width:620px){
  .hhg-parcours-toolbar-v2{padding:2px!important;border-radius:17px!important}
  .hhg-parcours-toolgroup{padding:13px!important;border-radius:15px!important}
  .hhg-pc-library-group{padding:13px!important}
  .hhg-pc-library-marker{width:28px!important;height:28px!important;flex-basis:28px!important}
  .hhg-pc-library-marker::after{left:10px!important;top:10px!important}
  .hhg-parcours-library-item{min-height:38px!important;font-size:12.5px!important}
  .hhg-parcours-clear{margin-left:0!important}
}



/* ==========================================================================
   v0.17.42 – Modern Software UI für ALLE drei Generatoren
   ========================================================================== */
.hhg-tg-generator{
	--hhg-main:var(--hhg-brand-main,#5B6CFF)!important;
	--hhg-accent:var(--hhg-brand-accent,#F4F7FB)!important;
	--hhg-edge:var(--hhg-brand-border,#D9E2EE)!important;
	--hhg-ink:var(--hhg-brand-text,#182236)!important;
	--hhg-border:var(--hhg-edge)!important;
	--hhg-soft:var(--hhg-accent)!important;
	--hhg-text-soft:#6D788B!important;
	--hhg-app-blue:var(--hhg-main)!important;
	--hhg-app-cyan:#35B9D6;
	--hhg-app-violet:#8069E8;
	--hhg-app-green:#43B987;
	--hhg-app-warm:#E79A61;
	--hhg-app-danger:#C95869;
	--hhg-app-surface:#FFFFFF;
	--hhg-app-bg:#F2F5FA;
	--hhg-app-border:var(--hhg-edge);
	--hhg-app-text:var(--hhg-ink);
	--hhg-app-muted:#6D788B;
	--hhg-app-shadow:0 16px 38px rgba(29,44,73,.085);
	--hhg-app-shadow-soft:0 8px 22px rgba(29,44,73,.06);
	position:relative!important;
	color:var(--hhg-app-text)!important;
	padding:20px!important;
	border:1px solid #E3E9F1!important;
	border-radius:26px!important;
	background:
		radial-gradient(circle at 4% 0%,color-mix(in srgb,var(--hhg-app-blue) 7%,transparent),transparent 21%),
		radial-gradient(circle at 100% 18%,rgba(128,105,232,.045),transparent 24%),
		linear-gradient(145deg,#F1F4F9 0%,#F8FAFC 44%,#F3F6FA 100%)!important;
	box-shadow:
		0 26px 65px rgba(25,39,66,.085),
		inset 0 1px 0 rgba(255,255,255,.95)!important;
}
.hhg-turniergenerator-main{max-width:1180px!important}
.hhg-dressage-only{max-width:1180px!important}
.hhg-parcours-standalone{max-width:1450px!important}

/* Header = ruhige Premium-App-Leiste */
.hhg-tg-generator>.hhg-tg-header{
	position:relative!important;
	overflow:hidden!important;
	margin:0 0 18px!important;
	padding:22px 24px!important;
	border:1px solid rgba(255,255,255,.18)!important;
	border-left:0!important;
	border-radius:18px!important;
	color:#fff!important;
	background:
		radial-gradient(circle at 12% -30%,rgba(91,108,255,.52),transparent 35%),
		radial-gradient(circle at 96% 115%,rgba(128,105,232,.32),transparent 37%),
		linear-gradient(135deg,#24304B 0%,#2D3D66 58%,#433A67 100%)!important;
	box-shadow:
		0 18px 38px rgba(32,45,78,.18),
		inset 0 1px 0 rgba(255,255,255,.16)!important;
}
.hhg-tg-generator>.hhg-tg-header::after{
	content:""!important;
	position:absolute!important;
	left:22px!important;
	right:22px!important;
	top:0!important;
	height:1px!important;
	background:linear-gradient(90deg,transparent,rgba(255,255,255,.62),transparent)!important;
}
.hhg-tg-generator>.hhg-tg-header h2{
	margin:0 0 5px!important;
	color:#fff!important;
	font-size:clamp(22px,2.4vw,31px)!important;
	line-height:1.14!important;
	letter-spacing:-.025em!important;
}
.hhg-tg-generator>.hhg-tg-header p{
	max-width:850px!important;
	color:rgba(255,255,255,.76)!important;
	font-size:14px!important;
	line-height:1.55!important;
}
.hhg-tg-version{
	display:inline-flex!important;
	margin-top:7px!important;
	padding:4px 9px!important;
	border:1px solid rgba(255,255,255,.16)!important;
	border-radius:999px!important;
	background:rgba(255,255,255,.08)!important;
	color:rgba(255,255,255,.78)!important;
	font-size:10.5px!important;
	font-weight:700!important;
	backdrop-filter:blur(8px)!important;
}

/* Hauptgenerator-Schritte = modernes Navigation-Dashboard */
.hhg-turniergenerator-main .hhg-tg-steps{
	gap:9px!important;
	margin:0 0 18px!important;
	padding:5px!important;
	border:1px solid #E1E7F0!important;
	border-radius:17px!important;
	background:rgba(255,255,255,.70)!important;
	box-shadow:0 8px 22px rgba(31,46,75,.045),inset 0 1px 0 #fff!important;
}
.hhg-turniergenerator-main .hhg-tg-steps li{
	position:relative!important;
	min-height:58px!important;
	padding:9px 10px!important;
	border:1px solid transparent!important;
	border-radius:12px!important;
	background:transparent!important;
	color:#657186!important;
	box-shadow:none!important;
	font-weight:650!important;
	transition:transform .16s ease,background .16s ease,border-color .16s ease,box-shadow .16s ease!important;
}
.hhg-turniergenerator-main .hhg-tg-steps li:hover{
	transform:translateY(-1px)!important;
	background:#fff!important;
	border-color:#E3E9F2!important;
	box-shadow:0 7px 16px rgba(28,43,72,.055)!important;
}
.hhg-turniergenerator-main .hhg-tg-steps li span{
	background:#EAF0F7!important;
	color:#68758A!important;
	box-shadow:inset 0 1px 0 #fff!important;
}
.hhg-turniergenerator-main .hhg-tg-steps li.is-active{
	color:#fff!important;
	border-color:rgba(255,255,255,.16)!important;
	background:
		linear-gradient(135deg,var(--hhg-app-blue),color-mix(in srgb,var(--hhg-app-blue) 62%,#7160D6))!important;
	box-shadow:
		0 10px 22px color-mix(in srgb,var(--hhg-app-blue) 23%,transparent),
		inset 0 1px 0 rgba(255,255,255,.20)!important;
}
.hhg-turniergenerator-main .hhg-tg-steps li.is-active span{
	background:rgba(255,255,255,.20)!important;
	color:#fff!important;
	box-shadow:inset 0 1px 0 rgba(255,255,255,.16)!important;
}

/* Cards – überall identisch */
.hhg-tg-generator .hhg-tg-card{
	position:relative!important;
	margin-bottom:16px!important;
	padding:22px!important;
	border:1px solid var(--hhg-app-border)!important;
	border-radius:18px!important;
	background:
		linear-gradient(180deg,rgba(255,255,255,.99),rgba(255,255,255,.95))!important;
	box-shadow:var(--hhg-app-shadow-soft)!important;
	overflow:visible!important;
}
.hhg-tg-generator .hhg-tg-card::before{
	content:""!important;
	position:absolute!important;
	left:20px!important;
	right:20px!important;
	top:0!important;
	height:1px!important;
	background:linear-gradient(90deg,transparent,rgba(255,255,255,.95),transparent)!important;
}
.hhg-tg-generator .hhg-tg-card h3{
	color:#1F2A3D!important;
	font-size:18px!important;
	font-weight:820!important;
	letter-spacing:-.018em!important;
}
.hhg-tg-generator .hhg-tg-card h4{color:#29364B!important}
.hhg-tg-card-head p,
.hhg-tg-help,
.hhg-tg-field small{
	color:var(--hhg-app-muted)!important;
}

/* Formulare */
.hhg-tg-generator .hhg-tg-grid{gap:16px!important}
.hhg-tg-generator .hhg-tg-field label{
	color:#344157!important;
	font-size:13px!important;
	font-weight:760!important;
}
.hhg-tg-generator input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]),
.hhg-tg-generator select,
.hhg-tg-generator textarea{
	border:1px solid #DCE4EF!important;
	border-radius:11px!important;
	background:linear-gradient(180deg,#FFFFFF,#FBFCFE)!important;
	color:#1D293B!important;
	box-shadow:
		inset 0 1px 1px rgba(22,35,57,.025),
		0 1px 2px rgba(22,35,57,.025)!important;
	transition:border-color .15s ease,box-shadow .15s ease,background .15s ease!important;
}
.hhg-tg-generator input:focus,
.hhg-tg-generator select:focus,
.hhg-tg-generator textarea:focus{
	outline:0!important;
	border-color:color-mix(in srgb,var(--hhg-app-blue) 64%,#CBD7E6)!important;
	box-shadow:0 0 0 4px color-mix(in srgb,var(--hhg-app-blue) 10%,transparent)!important;
	background:#fff!important;
}

/* Buttons */
.hhg-tg-generator .hhg-tg-primary{
	border:1px solid color-mix(in srgb,var(--hhg-app-blue) 82%,#34445F)!important;
	border-radius:11px!important;
	background:
		linear-gradient(135deg,var(--hhg-app-blue),color-mix(in srgb,var(--hhg-app-blue) 68%,#6E59D2))!important;
	color:#fff!important;
	box-shadow:
		0 9px 20px color-mix(in srgb,var(--hhg-app-blue) 22%,transparent),
		inset 0 1px 0 rgba(255,255,255,.20)!important;
	transition:transform .15s ease,box-shadow .15s ease,filter .15s ease!important;
}
.hhg-tg-generator .hhg-tg-primary:hover{
	transform:translateY(-1px)!important;
	filter:saturate(.92) brightness(1.02)!important;
	box-shadow:0 12px 26px color-mix(in srgb,var(--hhg-app-blue) 28%,transparent)!important;
}
.hhg-tg-generator .hhg-tg-secondary,
.hhg-tg-generator .hhg-tg-small-button{
	border:1px solid #DCE4EF!important;
	border-radius:11px!important;
	background:linear-gradient(180deg,#fff,#F7F9FC)!important;
	color:#334158!important;
	box-shadow:0 4px 10px rgba(25,40,67,.04),inset 0 1px 0 #fff!important;
}
.hhg-tg-generator .hhg-tg-secondary:hover,
.hhg-tg-generator .hhg-tg-small-button:hover{
	border-color:#BFCDE0!important;
	background:#fff!important;
	box-shadow:0 8px 17px rgba(25,40,67,.07)!important;
	transform:translateY(-1px)!important;
}

/* Auswahlkarten / Check-Kacheln */
.hhg-tg-generator .hhg-tg-choice,
.hhg-tg-generator label.hhg-tg-check,
.hhg-tg-generator label.form-check,
.hhg-tg-generator .hhg-age-pick span,
.hhg-tg-generator .hhg-lesson-chip span,
.hhg-tg-generator .hhg-lesson-action,
.hhg-tg-generator .hhg-tg-obstacle-grid label{
	border:1px solid #DFE6EF!important;
	border-radius:12px!important;
	background:linear-gradient(180deg,#fff,#FAFBFD)!important;
	color:#334158!important;
	box-shadow:0 3px 8px rgba(29,43,68,.035),inset 0 1px 0 #fff!important;
	transition:border-color .15s ease,background .15s ease,box-shadow .15s ease,transform .15s ease!important;
}
.hhg-tg-generator .hhg-tg-choice:hover,
.hhg-tg-generator label.hhg-tg-check:hover,
.hhg-tg-generator label.form-check:hover,
.hhg-tg-generator .hhg-age-pick:hover span,
.hhg-tg-generator .hhg-lesson-chip:hover span,
.hhg-tg-generator .hhg-lesson-action:hover,
.hhg-tg-generator .hhg-tg-obstacle-grid label:hover{
	transform:translateY(-1px)!important;
	border-color:#C5D1E2!important;
	box-shadow:0 7px 15px rgba(29,43,68,.06)!important;
}
.hhg-tg-generator .hhg-tg-choice:has(input:checked),
.hhg-tg-generator .hhg-tg-check.hhg-is-checked,
.hhg-tg-generator .form-check.hhg-is-checked,
.hhg-tg-generator .hhg-tg-obstacle-grid label.hhg-is-checked,
.hhg-tg-generator .hhg-tg-age-grid label.hhg-is-checked,
.hhg-tg-generator .hhg-age-pick input:checked+span,
.hhg-tg-generator .hhg-lesson-chip input:checked+span{
	border-color:color-mix(in srgb,var(--hhg-app-blue) 48%,#D5DFEC)!important;
	background:
		linear-gradient(180deg,color-mix(in srgb,var(--hhg-app-blue) 7%,#fff),#fff)!important;
	box-shadow:
		0 6px 14px color-mix(in srgb,var(--hhg-app-blue) 8%,transparent),
		inset 3px 0 0 color-mix(in srgb,var(--hhg-app-blue) 72%,#fff)!important;
}

/* Schalter / sichtbare Indikatoren */
.hhg-tg-generator .hhg-check-indicator{
	border-color:#C8D3E2!important;
	background:#F7F9FC!important;
}
.hhg-tg-generator .hhg-is-checked>.hhg-check-indicator{
	background:linear-gradient(135deg,var(--hhg-app-blue),#7584F8)!important;
	border-color:var(--hhg-app-blue)!important;
}

/* Regelbibliotheken / Hinweise – weniger leuchtend */
.hhg-tg-generator .hhg-tg-rule-guidance,
.hhg-tg-generator .hhg-dressage-lesson-guidance,
.hhg-tg-generator .hhg-tg-info-card,
.hhg-tg-generator .hhg-tg-custom-rule-box,
.hhg-tg-generator .hhg-tg-task-generator-box,
.hhg-tg-generator .hhg-tg-generated-confirmation,
.hhg-tg-generator .hhg-tg-ai-review-note{
	border:1px solid #D9E3F0!important;
	border-left:4px solid color-mix(in srgb,var(--hhg-app-blue) 58%,#93A7C4)!important;
	border-radius:13px!important;
	background:
		linear-gradient(135deg,#F7F9FD,#F1F5FA)!important;
	color:#354258!important;
	box-shadow:0 5px 14px rgba(31,47,76,.035)!important;
}

/* KI Upload / Dressuraufgabe */
.hhg-dressage-only .hhg-tg-ai-upload-row{
	display:flex!important;
	gap:12px!important;
	align-items:center!important;
	flex-wrap:wrap!important;
	padding:14px!important;
	border:1px dashed #CBD6E5!important;
	border-radius:13px!important;
	background:#F8FAFD!important;
}
.hhg-dressage-only .hhg-task-row{
	border:1px solid #E0E7F0!important;
	border-radius:12px!important;
	background:#fff!important;
	box-shadow:0 4px 10px rgba(30,45,72,.035)!important;
}

/* Wettbewerbe / Bestimmungen */
.hhg-turniergenerator-main .hhg-tg-competition-item,
.hhg-turniergenerator-main .hhg-tg-provision,
.hhg-turniergenerator-main .hhg-tg-custom-provision{
	border:1px solid #DFE6EF!important;
	border-radius:14px!important;
	background:linear-gradient(180deg,#fff,#FAFBFD)!important;
	box-shadow:0 6px 16px rgba(28,43,72,.045)!important;
}
.hhg-turniergenerator-main .hhg-tg-competition-item:hover{
	border-color:#C7D3E3!important;
	box-shadow:0 10px 23px rgba(28,43,72,.07)!important;
}

/* Modal = echte Software-Dialogbox */
.hhg-tg-modal{
	--hhg-main:#5B6CFF;
	--hhg-accent:#F4F7FB;
	--hhg-edge:#D9E2EE;
	--hhg-ink:#182236;
	backdrop-filter:blur(6px)!important;
	-webkit-backdrop-filter:blur(6px)!important;
}
.hhg-tg-modal-backdrop{
	background:rgba(20,29,47,.48)!important;
	backdrop-filter:blur(6px)!important;
}
.hhg-tg-modal-dialog{
	padding:22px!important;
	border:1px solid rgba(255,255,255,.76)!important;
	border-radius:20px!important;
	background:linear-gradient(180deg,#fff,#FAFBFD)!important;
	box-shadow:0 30px 80px rgba(19,29,49,.26),inset 0 1px 0 #fff!important;
}
.hhg-tg-modal-head{
	margin:-22px -22px 20px!important;
	padding:18px 22px!important;
	border-bottom:1px solid #E2E8F1!important;
	border-radius:20px 20px 0 0!important;
	background:
		linear-gradient(135deg,#F8FAFD,#F0F4FA)!important;
	color:#1F2A3D!important;
}
.hhg-tg-modal-close{
	border-radius:10px!important;
	color:#56647A!important;
}
.hhg-tg-modal-actions{
	position:sticky!important;
	bottom:-22px!important;
	margin:22px -22px -22px!important;
	padding:14px 22px!important;
	border-top:1px solid #E1E8F1!important;
	background:rgba(250,252,254,.94)!important;
	backdrop-filter:blur(10px)!important;
}

/* Dokumentbereich außen modern, Dokument selbst druckneutral */
.hhg-tg-generator .hhg-tg-document-shell{
	padding:16px!important;
	border:1px solid #DFE6EF!important;
	border-radius:17px!important;
	background:
		linear-gradient(145deg,#E9EEF5,#F5F7FA)!important;
	box-shadow:inset 0 1px 2px rgba(30,44,70,.04)!important;
}
.hhg-tg-generator .hhg-tg-document-preview{
	background:#fff!important;
	color:#000!important;
	box-shadow:0 15px 35px rgba(24,37,61,.10)!important;
}

/* Save state / Status */
.hhg-tg-save-state{
	display:inline-flex!important;
	align-items:center!important;
	padding:5px 9px!important;
	border:1px solid #E0E7F0!important;
	border-radius:999px!important;
	background:#F7F9FC!important;
	color:#758196!important;
	font-size:11px!important;
	font-weight:700!important;
}

/* Parcours: 0.17.41 Design etwas neutraler */
.hhg-parcours-toolgroup-view{
	background:
		radial-gradient(circle at 20% 0,rgba(73,208,255,.20),transparent 29%),
		radial-gradient(circle at 100% 100%,rgba(162,91,255,.22),transparent 35%),
		linear-gradient(145deg,#29334D 0%,#334264 56%,#49415F 100%)!important;
	box-shadow:0 14px 30px rgba(36,46,82,.14),inset 0 1px 0 rgba(255,255,255,.15)!important;
}
.hhg-pc-library-group{
	background:
		radial-gradient(circle at 92% -8%,color-mix(in srgb,var(--group-accent) 9%,transparent),transparent 34%),
		linear-gradient(160deg,#fff 0%,#FBFCFE 100%)!important;
}
.hhg-pc-library-marker{
	filter:saturate(.82)!important;
	box-shadow:0 5px 11px color-mix(in srgb,var(--group-accent) 15%,transparent),inset 0 1px 0 rgba(255,255,255,.48)!important;
}

/* Responsive */
@media(max-width:800px){
	.hhg-tg-generator{
		padding:12px!important;
		border-radius:18px!important;
	}
	.hhg-tg-generator>.hhg-tg-header{
		padding:18px!important;
		border-radius:15px!important;
	}
	.hhg-tg-generator .hhg-tg-card{
		padding:17px!important;
		border-radius:15px!important;
	}
	.hhg-turniergenerator-main .hhg-tg-steps{
		grid-template-columns:repeat(2,minmax(0,1fr))!important;
	}
}
@media(max-width:520px){
	.hhg-turniergenerator-main .hhg-tg-steps{grid-template-columns:1fr!important}
	.hhg-tg-generator .hhg-tg-actions{gap:9px!important}
}


/* ==========================================================================
   v0.17.43 – Feinschliff: glossy warmer Akzent, Abstände, Nennformular
   ========================================================================== */

/* Warme HHG-Hervorhebung bleibt erkennbar, wirkt aber wie eine moderne
   Premium-/Glass-Card statt wie eine matte beige Formularbox. */
.hhg-tg-generator .hhg-tg-highlight-choice{
	position:relative!important;
	overflow:hidden!important;
	margin:14px 0 18px!important;
	padding:16px 17px!important;
	border:1px solid #E7D5AE!important;
	border-left:0!important;
	border-radius:14px!important;
	background:
		radial-gradient(circle at 8% -18%,rgba(255,255,255,.96),transparent 34%),
		linear-gradient(135deg,#FFFDF8 0%,#FFF8EB 54%,#F8F1E6 100%)!important;
	box-shadow:
		0 9px 22px rgba(83,66,37,.075),
		inset 0 1px 0 rgba(255,255,255,.99)!important;
}
.hhg-tg-generator .hhg-tg-highlight-choice::before{
	content:""!important;
	position:absolute!important;
	left:0!important;top:0!important;bottom:0!important;width:4px!important;
	background:linear-gradient(180deg,#F7DFA6 0%,#DFA94E 48%,#B98A36 100%)!important;
	box-shadow:2px 0 10px rgba(220,165,74,.18)!important;
}
.hhg-tg-generator .hhg-tg-highlight-choice::after{
	content:""!important;
	position:absolute!important;
	left:18px!important;right:18px!important;top:0!important;height:1px!important;
	background:linear-gradient(90deg,transparent,rgba(255,255,255,.98),transparent)!important;
}
.hhg-tg-generator .hhg-tg-highlight-choice>label{
	color:#394255!important;
	font-weight:800!important;
	letter-spacing:-.01em!important;
}
.hhg-tg-generator .hhg-tg-highlight-choice>small{color:#778196!important}
.hhg-tg-generator .hhg-tg-highlight-choice>select{
	margin-top:7px!important;
	border:1px solid #DED7C8!important;
	background:linear-gradient(180deg,#FFFFFF,#FCFBF7)!important;
	box-shadow:0 3px 8px rgba(44,53,71,.04),inset 0 1px 0 #fff!important;
}
.hhg-tg-generator .hhg-tg-highlight-choice>select:focus{
	border-color:#D4B46F!important;
	box-shadow:0 0 0 4px rgba(220,165,74,.10)!important;
}
.hhg-tg-generator .hhg-tg-default-choice-hint{
	display:block!important;
	margin-top:8px!important;
	color:#85724C!important;
	font-weight:650!important;
}

/* Matte Gold-Checkboxen aus älteren Styles in die neue App-Palette holen. */
.hhg-parcours-standalone label.form-check input[type="checkbox"]:checked,
.hhg-dressage-only label.form-check input[type="checkbox"]:checked{
	border-color:#7080EE!important;
	background-color:#5F72EB!important;
	background-image:
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M4 10.2 8.1 14 16 5.8' fill='none' stroke='white' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"),
		linear-gradient(135deg,#7181FF,#5265D9)!important;
	background-repeat:no-repeat,no-repeat!important;
	background-position:center,center!important;
	background-size:16px 16px,100% 100%!important;
	box-shadow:0 5px 12px rgba(82,101,217,.20),inset 0 1px 0 rgba(255,255,255,.22)!important;
}

/* Lange Wettbewerbsmasken: konsistente vertikale Luft. */
.hhg-turniergenerator-main #hhg_comp_dressage_builder_wrap{
	margin:8px 0 14px!important;
}
.hhg-turniergenerator-main #hhg_comp_ai_import_wrap{
	margin-top:14px!important;
	margin-bottom:16px!important;
}
.hhg-turniergenerator-main #hhg_comp_attachment_mode_field{
	margin:16px 0 18px!important;
}
.hhg-turniergenerator-main #hhg_comp_attachment_upload_wrap,
.hhg-turniergenerator-main #hhg_comp_attachment_notice_wrap{
	margin:0 0 16px!important;
}
.hhg-turniergenerator-main .hhg-tg-task-generator-box .hhg-tg-card-head{
	gap:16px!important;
}
.hhg-turniergenerator-main .hhg-tg-ai-card #hhg_comp_ai_panel{
	margin-top:14px!important;
	padding-top:14px!important;
	border-top:1px solid #E1E7F0!important;
}

/* Auch im einzelnen Dressurgenerator klare Kartenabstände. */
.hhg-dressage-only .hhg-tg-task-generator-box{
	margin-bottom:14px!important;
}
.hhg-dressage-only .hhg-tg-ai-card{
	margin-top:14px!important;
}

/* Nennformular: "Geburtsdatum" bleibt als leeres Feld zum handschriftlichen
   Eintragen stehen. Kein tt.mm.jjjj und kein Kalender-Icon im Ausdruck. */
.hhg-doc-nomination-form .hhg-doc-handwrite-field{
	-webkit-appearance:none!important;
	appearance:none!important;
	color:transparent!important;
	caret-color:transparent!important;
	background:#fff!important;
}
@media print{
	.hhg-doc-nomination-form .hhg-doc-handwrite-field{
		-webkit-appearance:none!important;
		appearance:none!important;
		color:transparent!important;
		background:#fff!important;
	}
}

/* ==========================================================================
   v0.17.44 – Einheitliche Header aller drei Generatoren
   ========================================================================== */
.hhg-tg-generator .hhg-tg-header{
	padding:24px!important;
}
.hhg-tg-generator .hhg-tg-header h2{
	margin:0!important;
}
.hhg-tg-generator .hhg-tg-header-meta{
	display:flex;
	flex-direction:column;
	align-items:flex-start;
	gap:0;
	margin-top:12px;
}
.hhg-tg-generator .hhg-tg-header-meta .hhg-tg-version{
	display:inline-flex!important;
	margin:0 0 12px!important;
}
.hhg-tg-generator .hhg-tg-header-meta p{
	margin:0!important;
	max-width:1050px;
	line-height:1.55!important;
}
.hhg-tg-generator .hhg-tg-header-meta .hhg-tg-developer{
	margin-bottom:8px!important;
	font-size:13px!important;
	color:rgba(255,255,255,.93)!important;
}
.hhg-tg-generator .hhg-tg-header-meta .hhg-tg-storage-note{
	font-size:14px!important;
	color:rgba(255,255,255,.90)!important;
}
.hhg-tg-generator .hhg-tg-header-meta .hhg-tg-module-intro{
	margin-top:14px!important;
	font-size:15px!important;
	font-weight:700!important;
	color:#fff!important;
}
.hhg-tg-generator .hhg-tg-header-meta .hhg-tg-module-help{
	margin-top:6px!important;
	font-size:13px!important;
	color:rgba(255,255,255,.84)!important;
}
@media (max-width:700px){
	.hhg-tg-generator .hhg-tg-header{padding:20px!important}
	.hhg-tg-generator .hhg-tg-header-meta .hhg-tg-developer,
	.hhg-tg-generator .hhg-tg-header-meta .hhg-tg-storage-note,
	.hhg-tg-generator .hhg-tg-header-meta .hhg-tg-module-help{
		font-size:12px!important;
	}
}

/* v0.17.45 – Informationshierarchie im Generator-Header */
.hhg-tg-generator .hhg-tg-header-meta .hhg-tg-developer{
	margin-bottom:9px!important;
	font-size:11px!important;
	font-weight:500!important;
	line-height:1.45!important;
	color:rgba(255,255,255,.72)!important;
}
.hhg-tg-generator .hhg-tg-header-meta .hhg-tg-developer strong{
	font-weight:650!important;
}
.hhg-tg-generator .hhg-tg-header-meta .hhg-tg-developer a{
	color:rgba(255,255,255,.88)!important;
	text-decoration:underline;
	text-decoration-color:rgba(255,255,255,.32);
	text-underline-offset:2px;
}
.hhg-tg-generator .hhg-tg-header-meta .hhg-tg-developer a:hover{
	color:#fff!important;
	text-decoration-color:rgba(255,255,255,.75);
}
.hhg-tg-generator .hhg-tg-header-meta .hhg-tg-storage-note{
	font-size:14px!important;
	font-weight:600!important;
	line-height:1.55!important;
	color:rgba(255,255,255,.97)!important;
}
@media(max-width:700px){
	.hhg-tg-generator .hhg-tg-header-meta .hhg-tg-developer{font-size:10.5px!important}
	.hhg-tg-generator .hhg-tg-header-meta .hhg-tg-storage-note{font-size:13px!important}
}

/* v0.17.46 – Entwicklerlink im dunklen Generator-Header:
   Theme-/HHG-Linkfarben dürfen die Lesbarkeit nicht überschreiben. */
.hhg-tg-generator .hhg-tg-header-meta .hhg-tg-developer a,
.hhg-tg-generator .hhg-tg-header-meta .hhg-tg-developer a:link,
.hhg-tg-generator .hhg-tg-header-meta .hhg-tg-developer a:visited {
	color: rgba(255,255,255,.88) !important;
	text-decoration: underline !important;
	text-decoration-color: rgba(255,255,255,.45) !important;
	text-underline-offset: 2px;
}
.hhg-tg-generator .hhg-tg-header-meta .hhg-tg-developer a:hover,
.hhg-tg-generator .hhg-tg-header-meta .hhg-tg-developer a:focus {
	color: #ffffff !important;
	text-decoration-color: #ffffff !important;
}

/* v0.17.47 – feinere Typografie-Hierarchie in den Headern aller Generator-Module */
.hhg-tg-generator .hhg-tg-header-meta .hhg-tg-storage-note {
	font-size: 16px !important;
	line-height: 1.55 !important;
	font-weight: 500 !important;
}
.hhg-tg-generator .hhg-tg-header-meta .hhg-tg-module-lead {
	font-size: 18px !important;
	line-height: 1.45 !important;
	font-weight: 700 !important;
	margin-top: 14px !important;
}
.hhg-tg-generator .hhg-tg-header-meta .hhg-tg-module-intro {
	font-size: 16px !important;
	line-height: 1.6 !important;
	font-weight: 400 !important;
	max-width: 1050px;
}

.hhg-tg-generator .hhg-tg-hero .hhg-tg-hero-storage,
.hhg-tg-generator .hhg-tg-generator-header .hhg-tg-storage-note {
	font-size: 16px !important;
	line-height: 1.55 !important;
}
.hhg-tg-generator .hhg-tg-hero .hhg-tg-hero-subtitle,
.hhg-tg-generator .hhg-tg-generator-header .hhg-tg-module-lead {
	font-size: 18px !important;
	line-height: 1.45 !important;
	font-weight: 700 !important;
}
.hhg-tg-generator .hhg-tg-hero .hhg-tg-hero-description,
.hhg-tg-generator .hhg-tg-generator-header .hhg-tg-module-intro {
	font-size: 16px !important;
	line-height: 1.6 !important;
}

/* tatsächliche gemeinsame Header-Klassen */
.hhg-tg-header .hhg-tg-storage-note {
	font-size: 16px !important;
	line-height: 1.55 !important;
	font-weight: 500 !important;
}
.hhg-tg-header .hhg-tg-module-intro {
	font-size: 18px !important;
	line-height: 1.45 !important;
	font-weight: 700 !important;
	margin-top: 14px !important;
	margin-bottom: 6px !important;
}
.hhg-tg-header .hhg-tg-module-help {
	font-size: 16px !important;
	line-height: 1.6 !important;
	font-weight: 400 !important;
	margin-top: 0 !important;
}

/* ==========================================================================
   v0.17.50 – Parcours UX: Hilfe, Rückgängig, Sperren, Vollbild & Mobile
   ========================================================================== */

/* Standalone: Informationen zum Parcours ist eindeutig eine aufklappbare Aktion */
.hhg-parcours-standalone .hhg-parcours-info-details{
	padding:0!important;
	overflow:hidden!important;
}
.hhg-parcours-standalone .hhg-parcours-info-summary{
	position:relative;
	display:flex;
	align-items:center;
	gap:12px;
	min-height:68px;
	padding:16px 18px;
	cursor:pointer;
	list-style:none;
	color:#fff;
	border-radius:17px;
	background:
		radial-gradient(circle at 10% -25%,rgba(91,108,255,.38),transparent 34%),
		linear-gradient(135deg,#293a69 0%,#354978 58%,#514477 100%);
	box-shadow:0 12px 28px rgba(31,44,80,.15),inset 0 1px 0 rgba(255,255,255,.16);
}
.hhg-parcours-standalone .hhg-parcours-info-summary::-webkit-details-marker{display:none}
.hhg-parcours-standalone .hhg-parcours-info-summary::before{
	content:"";
	width:10px;height:10px;
	border-right:2px solid #fff;
	border-bottom:2px solid #fff;
	transform:rotate(-45deg);
	transition:transform .18s ease;
	margin:0 3px 0 2px;
}
.hhg-parcours-standalone details[open]>.hhg-parcours-info-summary::before{transform:rotate(45deg)}
.hhg-parcours-info-summary-text{font-size:17px;font-weight:800;letter-spacing:-.01em}
.hhg-parcours-info-summary-action{
	margin-left:auto;
	padding:6px 10px;
	border:1px solid rgba(255,255,255,.22);
	border-radius:999px;
	background:rgba(255,255,255,.09);
	font-size:11px;
	font-weight:750;
	color:rgba(255,255,255,.92);
}
.hhg-parcours-info-details-body{padding:20px 20px 22px}

/* Richtige, runde Info-Icons */
.hhg-info-icon{
	display:inline-flex!important;
	align-items:center!important;
	justify-content:center!important;
	flex:0 0 24px!important;
	width:24px!important;
	height:24px!important;
	min-width:24px!important;
	min-height:24px!important;
	padding:0!important;
	border:1.5px solid #8392aa!important;
	border-radius:50%!important;
	background:#fff!important;
	color:#52627b!important;
	box-shadow:0 3px 8px rgba(31,45,72,.08)!important;
	font-family:Georgia,"Times New Roman",serif!important;
	font-size:15px!important;
	font-style:italic!important;
	font-weight:800!important;
	line-height:1!important;
	cursor:pointer!important;
	vertical-align:middle!important;
}
.hhg-info-icon:hover,.hhg-info-icon:focus{
	outline:none!important;
	color:#fff!important;
	border-color:#6174dc!important;
	background:linear-gradient(135deg,#7182f4,#596bda)!important;
	box-shadow:0 6px 14px rgba(70,88,170,.20)!important;
}
.hhg-info-icon-on-dark{
	border-color:rgba(255,255,255,.62)!important;
	background:rgba(255,255,255,.10)!important;
	color:#fff!important;
}
.hhg-parcours-info-summary .hhg-info-icon{margin-left:2px}

/* Settings gets a real heading rather than an anonymous grid */
.hhg-parcours-standalone-section{
	margin-bottom:14px;
	padding:14px;
	border:1px solid #dfe6f0;
	border-radius:17px;
	background:linear-gradient(180deg,#fff,#fbfcfe);
	box-shadow:0 7px 18px rgba(32,48,76,.045);
}
.hhg-parcours-section-heading{
	display:flex;
	align-items:center;
	gap:8px;
	margin:0 0 12px;
	color:#28354a;
	font-size:14px;
	font-weight:800;
}
.hhg-parcours-standalone-section .hhg-parcours-config-grid{
	padding:0!important;
	border:0!important;
	background:transparent!important;
	box-shadow:none!important;
	margin:0!important;
}
.hhg-parcours-toolgroup-title .hhg-info-icon{margin-left:5px}

/* Info dialog */
.hhg-info-dialog[hidden]{display:none!important}
.hhg-info-dialog{
	position:fixed;
	inset:0;
	z-index:2147483300;
	display:flex;
	align-items:center;
	justify-content:center;
	padding:22px;
}
.hhg-info-dialog-backdrop{
	position:absolute;inset:0;
	background:rgba(22,31,49,.36);
	backdrop-filter:blur(4px);
	-webkit-backdrop-filter:blur(4px);
}
.hhg-info-dialog-panel{
	position:relative;
	z-index:1;
	width:min(560px,100%);
	padding:26px 28px 25px;
	border:1px solid rgba(255,255,255,.8);
	border-radius:20px;
	background:linear-gradient(180deg,#fff,#f8faff);
	box-shadow:0 30px 80px rgba(20,31,53,.28);
	color:#263349;
}
.hhg-info-dialog-symbol{
	display:flex;align-items:center;justify-content:center;
	width:38px;height:38px;margin-bottom:14px;
	border-radius:50%;
	color:#fff;
	background:linear-gradient(135deg,#7182f4,#596bda);
	font:italic 800 24px/1 Georgia,serif;
	box-shadow:0 8px 18px rgba(77,94,188,.22);
}
.hhg-info-dialog-panel h3{margin:0 42px 10px 0!important;font-size:20px!important}
.hhg-info-dialog-panel #hhg_ps_info_text{font-size:14px;line-height:1.65;color:#58667d}
.hhg-info-dialog-close{
	position:absolute;right:15px;top:14px;
	width:34px;height:34px;padding:0;
	border:0;border-radius:10px;
	background:#eef2f7;color:#5f6d82;
	font-size:22px;line-height:1;cursor:pointer;
}
body.hhg-info-dialog-open{overflow:hidden}

/* Non-intrusive once-per-session notice */
.hhg-parcours-session-note[hidden]{display:none!important}
.hhg-parcours-session-note{
	position:fixed;
	right:22px;
	bottom:22px;
	z-index:2147483200;
	display:flex;
	gap:16px;
	align-items:flex-start;
	width:min(470px,calc(100vw - 32px));
	padding:17px 18px;
	border:1px solid #dbe3ee;
	border-left:4px solid #6577db;
	border-radius:15px;
	background:rgba(255,255,255,.97);
	box-shadow:0 18px 45px rgba(25,38,65,.18);
	color:#354258;
	opacity:0;
	transform:translateY(12px);
	transition:opacity .18s ease,transform .18s ease;
}
.hhg-parcours-session-note.is-visible{opacity:1;transform:translateY(0)}
.hhg-parcours-session-note strong{display:block;margin-bottom:4px;color:#25324a}
.hhg-parcours-session-note p{margin:0;font-size:12.5px;line-height:1.5;color:#637087}
.hhg-parcours-session-note button{
	margin-left:auto;flex:0 0 28px;width:28px;height:28px;padding:0;border:0;border-radius:8px;
	background:#eef2f7;color:#657186;font-size:18px;cursor:pointer;
}

/* Undo / lock states */
.hhg-pc-undo:disabled{opacity:.42!important;cursor:not-allowed!important;transform:none!important;box-shadow:none!important}
.hhg-pc-lock-btn[aria-pressed="true"]{
	border-color:#7d8de1!important;
	background:linear-gradient(180deg,#f2f4ff,#e9edff)!important;
	color:#354b9b!important;
}

/* Fullscreen must win over sticky/fixed site navigation */
body.hhg-parcours-fullscreen-open{overflow:hidden!important}
#hhg_ps_editor_mount:fullscreen,
#hhg_comp_parcours_builder:fullscreen,
#hhg_ps_editor_mount.hhg-parcours-fullscreen-fallback,
#hhg_comp_parcours_builder.hhg-parcours-fullscreen-fallback{
	position:fixed!important;
	inset:0!important;
	z-index:2147483000!important;
	width:100vw!important;
	height:100dvh!important;
	max-width:none!important;
	margin:0!important;
	padding:14px!important;
	overflow:auto!important;
	background:#f4f7fb!important;
	box-sizing:border-box!important;
}
#hhg_ps_editor_mount:fullscreen .hhg-parcours-toolbar,
#hhg_comp_parcours_builder:fullscreen .hhg-parcours-toolbar,
#hhg_ps_editor_mount.hhg-parcours-fullscreen-fallback .hhg-parcours-toolbar,
#hhg_comp_parcours_builder.hhg-parcours-fullscreen-fallback .hhg-parcours-toolbar{
	position:relative!important;
	top:auto!important;
	z-index:auto!important;
}

/* Better touch behavior: page can scroll on empty canvas, objects still draggable */
@media (pointer:coarse){
	.hhg-parcours-svg{touch-action:pan-y!important}
	.hhg-parcours-svg [data-id],
	.hhg-parcours-svg [data-combo-part],
	.hhg-parcours-svg [data-measure-handle],
	.hhg-parcours-svg[data-guide-mode="arrow"],
	.hhg-parcours-svg[data-guide-mode="measure"]{touch-action:none!important}
}

/* Mobile / tablet – global for both parcours integrations and the plugin forms */
@media(max-width:900px){
	.hhg-tg-generator{padding:10px!important}
	.hhg-tg-generator .hhg-tg-grid,
	.hhg-parcours-config-grid{grid-template-columns:1fr!important}
	.hhg-parcours-toolbar-v2{display:grid!important;grid-template-columns:1fr!important}
	.hhg-parcours-toolgroup-tools,.hhg-parcours-toolgroup-view{min-width:0!important;width:auto!important}
	.hhg-parcours-tools{display:flex!important;flex-wrap:wrap!important;gap:8px!important}
	.hhg-parcours-tools button{min-height:44px!important}
	.hhg-parcours-workspace{
		display:block!important;
		overflow-x:auto!important;
		overflow-y:visible!important;
		-webkit-overflow-scrolling:touch!important;
	}
	.hhg-parcours-svg{
		display:block!important;
		width:900px!important;
		min-width:900px!important;
		max-width:none!important;
		height:auto!important;
	}
	.hhg-parcours-properties{
		position:sticky!important;
		left:0!important;
		width:min(calc(100vw - 38px),100%)!important;
		max-width:none!important;
		margin-top:12px!important;
		order:initial!important;
	}
	.hhg-parcours-library{grid-template-columns:1fr!important}
	.hhg-pc-library-group{min-width:0!important}
	.hhg-info-dialog{padding:14px}
}
@media(max-width:560px){
	.hhg-parcours-info-summary{padding:14px!important;min-height:62px!important}
	.hhg-parcours-info-summary-text{font-size:15px}
	.hhg-parcours-info-summary-action{display:none}
	.hhg-parcours-session-note{right:16px;bottom:16px}
	.hhg-parcours-library-item{min-height:40px!important}
	.hhg-tg-generator .hhg-tg-actions,
	.hhg-tg-document-actions{display:grid!important;grid-template-columns:1fr!important}
	.hhg-tg-generator button,.hhg-tg-generator select,.hhg-tg-generator input{font-size:16px}
}

/* ==========================================================================
   v0.17.51 – Mobile Parcours UX
   ========================================================================== */
.hhg-mobile-collapse-toggle{
	display:inline-flex;align-items:center;gap:9px;padding:0;border:0;background:transparent;
	color:#28354a;font:inherit;font-weight:800;cursor:pointer;
}
.hhg-mobile-collapse-toggle::before{
	content:"";width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;
	transform:rotate(45deg);transition:transform .16s ease;
}
.hhg-mobile-collapse-toggle[aria-expanded="true"]::before{transform:rotate(225deg)}
.hhg-mobile-rotate-buttons{display:none;gap:8px;margin-top:9px}
.hhg-mobile-rotate-buttons button{min-width:82px}

/* Library headings are buttons but keep card heading appearance */
.hhg-pc-library-heading{
	width:100%;border:0!important;background:transparent!important;text-align:left!important;padding:0!important;color:inherit!important;
}
@media(max-width:900px){
	/* Categories closed by default; one tap opens the needed group */
	.hhg-pc-library-heading{cursor:pointer!important;min-height:42px!important}
	.hhg-pc-library-heading::after{
		content:"";margin-left:auto;width:8px;height:8px;flex:0 0 8px;
		border-right:2px solid #77859a;border-bottom:2px solid #77859a;transform:rotate(45deg);transition:transform .15s ease;
	}
	.hhg-pc-library-heading[aria-expanded="true"]::after{transform:rotate(225deg)}
	.hhg-pc-library-row:not([hidden]){margin-top:10px!important}
	.hhg-pc-library-group{padding:10px 12px!important}

	/* Editor before properties. Element bearbeiten sits directly below canvas. */
	.hhg-parcours-workspace{
		display:flex!important;flex-direction:column!important;gap:10px!important;
		overflow:auto!important;-webkit-overflow-scrolling:touch!important;scroll-behavior:auto!important;
		padding:8px!important;
	}
	.hhg-parcours-svg{
		order:1!important;width:900px!important;min-width:900px!important;max-width:none!important;height:auto!important;
	}
	.hhg-parcours-properties{
		order:2!important;position:relative!important;left:auto!important;top:auto!important;
		width:100%!important;max-width:none!important;margin:0!important;padding:14px!important;
	}
	.hhg-mobile-rotate-buttons{display:flex!important}

	/* Touch semantics: empty canvas/page may scroll; actual objects are directly draggable. */
	.hhg-parcours-svg{touch-action:pan-y!important}
	.hhg-parcours-svg [data-id],
	.hhg-parcours-svg [data-combo-part],
	.hhg-parcours-svg [data-measure-handle],
	.hhg-parcours-svg[data-guide-mode="arrow"],
	.hhg-parcours-svg[data-guide-mode="measure"]{touch-action:none!important}

	/* Compact UI and touch-friendly controls */
	.hhg-parcours-toolbar-v2{grid-template-columns:1fr!important;gap:9px!important}
	.hhg-parcours-toolgroup-tools,.hhg-parcours-toolgroup-view{width:auto!important;min-width:0!important}
	.hhg-parcours-tools{display:flex!important;flex-wrap:wrap!important;gap:8px!important}
	.hhg-parcours-tools button{min-height:44px!important}
	.hhg-tg-generator .hhg-tg-grid,.hhg-parcours-config-grid{grid-template-columns:1fr!important}
	.hhg-tg-generator button,.hhg-tg-generator select,.hhg-tg-generator input{font-size:16px}

	/* Reduce sticky-header/focus jumping */
	#hhg_ps_editor_mount input,#hhg_ps_editor_mount select,#hhg_ps_editor_mount button,
	#hhg_comp_parcours_builder input,#hhg_comp_parcours_builder select,#hhg_comp_parcours_builder button{
		scroll-margin-top:12px!important;
	}
}
@media(max-width:560px){
	.hhg-parcours-toolgroup{border-radius:14px!important}
	.hhg-parcours-library-item{padding:9px 11px!important;min-height:40px!important}
	.hhg-parcours-settings-section{padding:12px!important}
}

/* ==========================================================================
   v0.17.52 – Mobile Canvas: echte Touch-Arbeitsfläche
   ========================================================================== */
@media(max-width:1100px), (pointer:coarse){
	/* Im Zeichenbereich scrollt/zoomt NICHT die Website. Gesten gehören dem Editor. */
	.hhg-parcours-workspace,
	.hhg-parcours-svg{
		touch-action:none!important;
		overscroll-behavior:contain!important;
		-webkit-user-select:none!important;
		user-select:none!important;
	}
	.hhg-parcours-workspace{
		position:relative!important;
		overflow:auto!important;
		-webkit-overflow-scrolling:auto!important;
	}
	.hhg-parcours-svg [data-id],
	.hhg-parcours-svg [data-combo-part],
	.hhg-parcours-svg [data-measure-handle],
	.hhg-parcours-svg [data-rotate-handle]{
		touch-action:none!important;
	}
	/* größerer unsichtbarer/visueller Drehgriff für Finger */
	.hhg-parcours-svg [data-rotate-handle]{cursor:grab}
	.hhg-parcours-svg [data-rotate-handle]:active{cursor:grabbing}
}

/* Mobile properties really below the canvas */
@media(max-width:900px){
	.hhg-parcours-workspace{display:flex!important;flex-direction:column!important}
	.hhg-parcours-svg{order:1!important}
	.hhg-parcours-properties{order:2!important;position:relative!important;inset:auto!important;width:100%!important;max-width:none!important}
}

/* Collapsible panels visibly indicate their state */
@media(max-width:1100px){
	.hhg-mobile-collapse-toggle{width:100%;justify-content:flex-start}
	.hhg-pc-library-heading[aria-expanded="false"]{margin-bottom:0!important}
	.hhg-pc-library-row[hidden],#hhg_ps_settings_body[hidden]{display:none!important}
}

/* ==========================================================================
   v0.17.53 – Mobile Parcours Performance / Touch Reset
   ========================================================================== */

/* hidden must always win over decades of grid/flex declarations */
#hhg_ps_settings_body[hidden],
.hhg-pc-library-row[hidden]{
	display:none!important;
}

@media(max-width:1100px), (pointer:coarse){
	/* Canvas is an app surface. Browser gestures/page scrolling stop at its edge. */
	.hhg-parcours-workspace{
		touch-action:none!important;
		overscroll-behavior:none!important;
		-webkit-overflow-scrolling:auto!important;
	}
	.hhg-parcours-svg{
		touch-action:none!important;
		overscroll-behavior:none!important;
		-webkit-user-select:none!important;
		user-select:none!important;
	}
	.hhg-parcours-svg *{
		-webkit-user-select:none!important;
		user-select:none!important;
	}
	/* bigger touch target for the rotation handle without changing printed symbol */
	.hhg-parcours-svg [data-rotate-handle] circle{
		r:16px;
	}

	/* On touch devices the large editor is a stable fixed app, not browser fullscreen. */
	#hhg_ps_editor_mount.hhg-parcours-fullscreen-fallback,
	#hhg_comp_parcours_builder.hhg-parcours-fullscreen-fallback{
		position:fixed!important;
		inset:0!important;
		z-index:2147483000!important;
		display:flex!important;
		flex-direction:column!important;
		width:100vw!important;
		height:100dvh!important;
		max-width:none!important;
		margin:0!important;
		padding:10px!important;
		overflow:auto!important;
		background:#f4f7fb!important;
		box-sizing:border-box!important;
		pointer-events:auto!important;
	}
	#hhg_ps_editor_mount.hhg-parcours-fullscreen-fallback *,
	#hhg_comp_parcours_builder.hhg-parcours-fullscreen-fallback *{
		pointer-events:auto;
	}
}

@media(max-width:900px){
	/* definitive mobile order: categories/tools -> canvas -> element editor */
	.hhg-parcours-workspace{
		display:flex!important;
		flex-direction:column!important;
		align-items:stretch!important;
		gap:10px!important;
		width:100%!important;
		max-width:100%!important;
		overflow:auto!important;
		margin:0!important;
	}
	.hhg-parcours-svg{
		order:1!important;
		flex:0 0 auto!important;
		display:block!important;
		width:900px!important;
		min-width:900px!important;
		max-width:none!important;
		height:auto!important;
		min-height:0!important;
	}
	.hhg-parcours-properties{
		order:2!important;
		position:relative!important;
		inset:auto!important;
		left:auto!important;
		top:auto!important;
		width:100%!important;
		max-width:none!important;
		min-height:0!important;
		height:auto!important;
		margin:0!important;
		overflow:visible!important;
	}
}

/* ==========================================================================
   v0.17.54 – Mobiler Parcours-App-Modus
   Desktop bleibt unverändert.
   ========================================================================== */
.hhg-mobile-hit-target{pointer-events:none!important}
.hhg-mobile-editor-dock,.hhg-mobile-editor-drawer,.hhg-mobile-edit-done{display:none}

@media(max-width:1100px), (pointer:coarse){
	/* Normaler Seitenmodus: freie Fläche darf die Website wieder scrollen. */
	.hhg-parcours-workspace,.hhg-parcours-svg{touch-action:pan-y!important;overscroll-behavior:auto!important}
	.hhg-mobile-hit-target{pointer-events:all!important;touch-action:none!important}
	.hhg-parcours-svg [data-combo-part],.hhg-parcours-svg [data-measure-handle],.hhg-parcours-svg [data-rotate-handle]{touch-action:none!important}

	.hhg-mobile-parcours-app{
		position:fixed!important;inset:0!important;z-index:2147483000!important;width:100vw!important;height:100dvh!important;
		max-width:none!important;margin:0!important;padding:0!important;overflow:hidden!important;background:#eef3f8!important;box-sizing:border-box!important;
	}
	.hhg-mobile-parcours-app > .hhg-parcours-settings-section,
	.hhg-mobile-parcours-app > .hhg-parcours-toolbar,
	.hhg-mobile-parcours-app > .hhg-tg-help{display:none!important}
	.hhg-mobile-parcours-app .hhg-parcours-workspace{
		position:absolute!important;inset:0 0 0 62px!important;width:auto!important;height:100%!important;margin:0!important;padding:0!important;
		border:0!important;border-radius:0!important;background:#f8fafc!important;overflow:auto!important;touch-action:none!important;
		overscroll-behavior:none!important;display:block!important;
	}
	.hhg-mobile-parcours-app .hhg-parcours-svg{
		display:block!important;width:max(820px,calc(100vw - 62px))!important;min-width:820px!important;height:auto!important;min-height:0!important;
		max-width:none!important;margin:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;touch-action:none!important;background:#fff!important;
	}
	.hhg-mobile-parcours-app .hhg-parcours-properties{
		position:fixed!important;left:72px!important;right:10px!important;bottom:10px!important;top:auto!important;z-index:25!important;
		width:auto!important;max-width:none!important;max-height:42dvh!important;overflow:auto!important;margin:0!important;padding:14px!important;
		border-radius:16px!important;box-shadow:0 18px 44px rgba(24,38,64,.22)!important;background:rgba(255,255,255,.98)!important;
	}
	.hhg-mobile-parcours-app .hhg-parcours-properties[hidden]{display:none!important}

	.hhg-mobile-parcours-app > .hhg-mobile-editor-dock{
		position:fixed!important;left:0!important;top:0!important;bottom:0!important;z-index:40!important;width:62px!important;padding:8px 6px!important;
		display:flex!important;flex-direction:column!important;gap:7px!important;background:linear-gradient(180deg,#263760,#354975 62%,#4a416f)!important;
		box-shadow:7px 0 20px rgba(25,38,68,.20)!important;
	}
	.hhg-mobile-dock-btn{
		display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:3px!important;width:50px!important;
		min-height:52px!important;padding:5px 2px!important;border:1px solid rgba(255,255,255,.13)!important;border-radius:12px!important;
		background:rgba(255,255,255,.07)!important;color:#fff!important;
	}
	.hhg-mobile-dock-btn.is-active,.hhg-mobile-dock-btn:active{background:rgba(255,255,255,.20)!important;border-color:rgba(255,255,255,.34)!important}
	.hhg-mobile-dock-label{font-size:8px!important;line-height:1!important;font-weight:750!important;color:rgba(255,255,255,.86)!important}
	.hhg-mobile-dock-symbol{position:relative!important;display:block!important;width:27px!important;height:27px!important;color:#fff!important}
	.hhg-mobile-dock-tools .hhg-mobile-dock-symbol{border:3px solid currentColor!important;border-radius:50%!important}
	.hhg-mobile-dock-tools .hhg-mobile-dock-symbol::before{content:""!important;position:absolute!important;inset:7px!important;border:2px solid currentColor!important;border-radius:50%!important}
	.hhg-mobile-dock-jump .hhg-mobile-dock-symbol::before{content:""!important;position:absolute!important;left:3px!important;right:3px!important;top:12px!important;height:3px!important;background:currentColor!important}
	.hhg-mobile-dock-jump .hhg-mobile-dock-symbol::after{content:""!important;position:absolute!important;left:4px!important;top:5px!important;width:3px!important;height:19px!important;background:currentColor!important;box-shadow:16px 0 0 currentColor!important}
	.hhg-mobile-dock-western .hhg-mobile-dock-symbol::before,.hhg-mobile-dock-western .hhg-mobile-dock-symbol::after{content:""!important;position:absolute!important;left:3px!important;top:12px!important;width:22px!important;height:3px!important;background:currentColor!important;border-radius:2px!important}
	.hhg-mobile-dock-western .hhg-mobile-dock-symbol::before{transform:rotate(35deg)!important}.hhg-mobile-dock-western .hhg-mobile-dock-symbol::after{transform:rotate(-35deg)!important}
	.hhg-mobile-dock-terrain .hhg-mobile-dock-symbol::before{content:""!important;position:absolute!important;left:1px!important;bottom:3px!important;border-left:9px solid transparent!important;border-right:9px solid transparent!important;border-bottom:18px solid currentColor!important}
	.hhg-mobile-dock-terrain .hhg-mobile-dock-symbol::after{content:""!important;position:absolute!important;right:0!important;bottom:3px!important;border-left:7px solid transparent!important;border-right:7px solid transparent!important;border-bottom:14px solid currentColor!important}
	.hhg-mobile-dock-skill .hhg-mobile-dock-symbol::before{content:""!important;position:absolute!important;left:7px!important;top:1px!important;width:13px!important;height:13px!important;border:3px solid currentColor!important;border-radius:50%!important}
	.hhg-mobile-dock-skill .hhg-mobile-dock-symbol::after{content:""!important;position:absolute!important;left:13px!important;top:16px!important;width:3px!important;height:10px!important;background:currentColor!important}
	.hhg-mobile-dock-exit{margin-top:auto!important}
	.hhg-mobile-dock-exit .hhg-mobile-dock-symbol::before,.hhg-mobile-dock-exit .hhg-mobile-dock-symbol::after{content:""!important;position:absolute!important;left:3px!important;top:12px!important;width:22px!important;height:3px!important;background:currentColor!important}
	.hhg-mobile-dock-exit .hhg-mobile-dock-symbol::before{transform:rotate(45deg)!important}.hhg-mobile-dock-exit .hhg-mobile-dock-symbol::after{transform:rotate(-45deg)!important}

	.hhg-mobile-parcours-app > .hhg-mobile-editor-drawer{
		position:fixed!important;left:68px!important;top:8px!important;bottom:8px!important;z-index:38!important;width:min(260px,calc(100vw - 86px))!important;
		display:block!important;overflow:hidden!important;border:1px solid #dce4ef!important;border-radius:16px!important;background:rgba(255,255,255,.98)!important;
		box-shadow:0 18px 46px rgba(24,38,64,.23)!important;
	}
	.hhg-mobile-parcours-app > .hhg-mobile-editor-drawer[hidden]{display:none!important}
	.hhg-mobile-drawer-head{display:flex!important;align-items:center!important;justify-content:space-between!important;padding:14px 14px 10px!important;border-bottom:1px solid #e5eaf2!important;color:#26344b!important}
	.hhg-mobile-drawer-close{width:32px!important;height:32px!important;padding:0!important;border:0!important;border-radius:9px!important;background:#eef2f7!important;color:#5f6d82!important;font-size:21px!important}
	.hhg-mobile-drawer-body{display:grid!important;grid-template-columns:1fr!important;gap:7px!important;height:calc(100% - 57px)!important;overflow:auto!important;padding:10px!important}
	.hhg-mobile-drawer-action{min-height:46px!important;padding:9px 11px!important;text-align:left!important;border:1px solid #dfe6ef!important;border-radius:11px!important;background:#fff!important;color:#2e3b51!important;font-size:13px!important;font-weight:700!important}

	.hhg-mobile-parcours-app > .hhg-mobile-edit-done{
		position:fixed!important;right:12px!important;top:12px!important;z-index:42!important;display:block!important;min-height:44px!important;padding:9px 15px!important;
		border:0!important;border-radius:12px!important;background:linear-gradient(135deg,#5f73e7,#6757c7)!important;color:#fff!important;font-weight:800!important;
		box-shadow:0 9px 22px rgba(60,72,145,.28)!important;
	}
	.hhg-mobile-parcours-app > .hhg-mobile-edit-done[hidden]{display:none!important}
}
@media(min-width:1101px) and (pointer:fine){
	.hhg-mobile-editor-dock,.hhg-mobile-editor-drawer,.hhg-mobile-edit-done{display:none!important}
}

/* ==========================================================================
   v0.17.55 – Mobile App Feinschliff
   ========================================================================== */
@media(max-width:1100px), (pointer:coarse){
	/* Der erklärende Platzseiten-Text gehört im App-Modus nicht auf die Arbeitsfläche. */
	.hhg-mobile-parcours-app .hhg-parcours-editor-help{display:none!important}

	/* Element bearbeiten: zunächst nur schmale Bottom-Bar; Details erst nach Tipp auf Überschrift. */
	.hhg-mobile-parcours-app .hhg-mobile-properties-collapsible{
		left:72px!important;right:10px!important;bottom:8px!important;
		max-height:none!important;overflow:hidden!important;padding:11px 14px!important;
		border-radius:15px!important;
	}
	.hhg-mobile-parcours-app .hhg-mobile-properties-collapsible h5{
		position:relative!important;margin:0!important;padding:3px 34px 3px 0!important;cursor:pointer!important;
		font-size:13px!important;line-height:1.25!important;
	}
	.hhg-mobile-parcours-app .hhg-mobile-properties-collapsible h5::after{
		content:"⌃"!important;position:absolute!important;right:3px!important;top:-2px!important;
		width:28px!important;height:28px!important;display:flex!important;align-items:center!important;justify-content:center!important;
		border-radius:9px!important;background:#eef2f7!important;color:#657287!important;font-size:16px!important;
	}
	.hhg-mobile-parcours-app .hhg-mobile-properties-collapsible > .hhg-tg-help{
		margin:3px 0 0!important;font-size:10px!important;line-height:1.3!important;
	}
	.hhg-mobile-parcours-app .hhg-mobile-properties-collapsible #hhg_ps_props,
	.hhg-mobile-parcours-app .hhg-mobile-properties-collapsible #hhg_pc_properties_fields{
		display:none!important;
	}
	.hhg-mobile-parcours-app .hhg-mobile-properties-collapsible.is-expanded{
		max-height:44dvh!important;overflow:auto!important;padding:14px!important;
	}
	.hhg-mobile-parcours-app .hhg-mobile-properties-collapsible.is-expanded h5{margin-bottom:7px!important}
	.hhg-mobile-parcours-app .hhg-mobile-properties-collapsible.is-expanded h5::after{content:"⌄"!important}
	.hhg-mobile-parcours-app .hhg-mobile-properties-collapsible.is-expanded #hhg_ps_props:not([hidden]),
	.hhg-mobile-parcours-app .hhg-mobile-properties-collapsible.is-expanded #hhg_pc_properties_fields:not([hidden]){
		display:block!important;
	}

	/* Parcourseinstellungen im Drawer */
	.hhg-mobile-settings-form{
		display:flex!important;flex-direction:column!important;gap:10px!important;
		padding:11px!important;height:calc(100% - 57px)!important;overflow:auto!important;
	}
	.hhg-mobile-settings-row{
		display:flex!important;flex-direction:column!important;gap:5px!important;
		font-size:11px!important;font-weight:700!important;color:#39475d!important;
	}
	.hhg-mobile-settings-row input,.hhg-mobile-settings-row select{
		min-height:42px!important;width:100%!important;padding:7px 9px!important;
		border:1px solid #d9e1ec!important;border-radius:10px!important;background:#fff!important;color:#26354b!important;
	}
	.hhg-mobile-settings-toggle{
		display:flex!important;align-items:center!important;gap:9px!important;min-height:42px!important;padding:8px 9px!important;
		border:1px solid #e0e6ef!important;border-radius:10px!important;background:#fff!important;font-size:11px!important;font-weight:700!important;color:#39475d!important;
	}
	.hhg-mobile-settings-toggle input{width:20px!important;height:20px!important;min-width:20px!important;margin:0!important}

	/* Settings: Zahnrad */
	.hhg-mobile-dock-settings .hhg-mobile-dock-symbol{
		border:3px solid currentColor!important;border-radius:50%!important;
	}
	.hhg-mobile-dock-settings .hhg-mobile-dock-symbol::before{
		content:""!important;position:absolute!important;inset:7px!important;border:3px solid currentColor!important;border-radius:50%!important;
	}
	.hhg-mobile-dock-settings .hhg-mobile-dock-symbol::after{
		content:""!important;position:absolute!important;left:10px!important;top:-5px!important;width:3px!important;height:37px!important;background:currentColor!important;
		box-shadow:0 0 0 0 currentColor!important;transform:rotate(45deg)!important;
		opacity:.9!important;
	}

	/* Western: Cowboyhut */
	.hhg-mobile-dock-western .hhg-mobile-dock-symbol::before{
		content:""!important;position:absolute!important;left:3px!important;right:3px!important;bottom:5px!important;height:5px!important;
		border-radius:50%!important;background:currentColor!important;transform:none!important;
	}
	.hhg-mobile-dock-western .hhg-mobile-dock-symbol::after{
		content:""!important;position:absolute!important;left:7px!important;top:4px!important;width:14px!important;height:14px!important;
		border-radius:50% 50% 28% 28%!important;background:currentColor!important;transform:none!important;
		box-shadow:0 6px 0 -3px currentColor!important;
	}

	/* Games/Fun: Pokal */
	.hhg-mobile-dock-skill .hhg-mobile-dock-symbol::before{
		content:""!important;position:absolute!important;left:7px!important;top:2px!important;width:13px!important;height:12px!important;
		border:3px solid currentColor!important;border-top:0!important;border-radius:0 0 8px 8px!important;
	}
	.hhg-mobile-dock-skill .hhg-mobile-dock-symbol::after{
		content:""!important;position:absolute!important;left:12px!important;top:14px!important;width:4px!important;height:9px!important;
		background:currentColor!important;box-shadow:-5px 9px 0 1px currentColor,5px 9px 0 1px currentColor!important;
	}

	/* Text darf winzig sein, aber bleibt lesbar */
	.hhg-mobile-dock-label{font-size:7px!important;letter-spacing:-.02em!important;max-width:48px!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
}

/* ==========================================================================
   v0.17.56 – Mobile App: saubere Icons / offene Hindernisbibliothek
   ========================================================================== */
@media(max-width:1100px), (pointer:coarse){
	/* Dieser Text gehört im App-Modus nie über den Parcours. */
	.hhg-mobile-parcours-app [data-hhg-mobile-hide="1"],
	.hhg-mobile-parcours-app .hhg-parcours-editor-help,
	.hhg-mobile-parcours-app .hhg-tg-help.hhg-parcours-editor-help{
		display:none!important;
		visibility:hidden!important;
		height:0!important;
		min-height:0!important;
		margin:0!important;
		padding:0!important;
		overflow:hidden!important;
	}

	/* Startseite: Hinderniskategorien bleiben vollständig offen. */
	#hhg_ps_editor_mount:not(.hhg-mobile-parcours-app) .hhg-pc-library-row{
		display:flex!important;
	}
	#hhg_ps_editor_mount:not(.hhg-mobile-parcours-app) .hhg-pc-library-heading::after{
		display:none!important;
	}

	/* Neue SVG-Icons statt grober CSS-Piktogramme. */
	.hhg-mobile-dock-symbol{
		width:29px!important;
		height:29px!important;
		display:flex!important;
		align-items:center!important;
		justify-content:center!important;
		border:0!important;
		background:none!important;
		box-shadow:none!important;
	}
	.hhg-mobile-dock-symbol svg{
		display:block!important;
		width:28px!important;
		height:28px!important;
		color:#fff!important;
		overflow:visible!important;
	}
	.hhg-mobile-dock-symbol::before,
	.hhg-mobile-dock-symbol::after{
		content:none!important;
		display:none!important;
	}
	.hhg-mobile-dock-btn{
		min-height:56px!important;
	}
	.hhg-mobile-dock-label{
		font-size:7.5px!important;
		line-height:1.05!important;
		max-width:50px!important;
	}
}

/* ==========================================================================
   v0.17.57 – Smartphone-Optimierung des mobilen Parcours-App-Modus
   ========================================================================== */

/* hidden must beat all theme/plugin display declarations */
.hhg-mobile-parcours-app [hidden]{
	display:none!important;
}

/* Helper text has no place inside the drawing app. */
.hhg-mobile-parcours-app [data-hhg-mobile-hide="1"],
.hhg-mobile-parcours-app .hhg-parcours-editor-help{
	display:none!important;
}

/* Phone – both portrait and landscape */
@media (max-width:700px), (max-height:500px) and (pointer:coarse){
	.hhg-mobile-parcours-app > .hhg-mobile-editor-dock{
		width:48px!important;
		padding:4px 3px!important;
		gap:3px!important;
		overflow-y:auto!important;
		overflow-x:hidden!important;
		scrollbar-width:none!important;
	}
	.hhg-mobile-parcours-app > .hhg-mobile-editor-dock::-webkit-scrollbar{
		display:none!important;
	}
	.hhg-mobile-dock-btn{
		flex:0 0 auto!important;
		width:42px!important;
		min-height:46px!important;
		height:46px!important;
		padding:3px 1px!important;
		gap:1px!important;
		border-radius:9px!important;
	}
	.hhg-mobile-dock-symbol,
	.hhg-mobile-dock-symbol svg{
		width:22px!important;
		height:22px!important;
	}
	.hhg-mobile-dock-label{
		font-size:6.2px!important;
		line-height:1!important;
		max-width:40px!important;
	}
	.hhg-mobile-dock-exit{
		margin-top:auto!important;
	}

	/* Canvas uses the available screen instead of an 820px minimum.
	   Width is additionally limited by the 2:1 arena ratio so landscape phones
	   never lose the lower edge of the course. */
	.hhg-mobile-parcours-app .hhg-parcours-workspace{
		inset:0 0 0 48px!important;
		display:flex!important;
		align-items:flex-start!important;
		justify-content:center!important;
		overflow:auto!important;
	}
	.hhg-mobile-parcours-app .hhg-parcours-svg{
		width:min(calc(100vw - 48px), calc(100dvh * 2))!important;
		min-width:0!important;
		max-width:calc(100vw - 48px)!important;
		height:auto!important;
		margin:0 auto!important;
		flex:0 0 auto!important;
	}

	/* When a selected element needs editing, keep the sheet small and above
	   the phone's browser/system bars. */
	.hhg-mobile-parcours-app .hhg-mobile-properties-collapsible{
		left:56px!important;
		right:7px!important;
		bottom:max(7px,env(safe-area-inset-bottom))!important;
		padding:8px 10px!important;
		border-radius:12px!important;
	}
	.hhg-mobile-parcours-app .hhg-mobile-properties-collapsible h5{
		font-size:12px!important;
	}
	.hhg-mobile-parcours-app .hhg-mobile-properties-collapsible > .hhg-tg-help{
		font-size:9px!important;
	}

	.hhg-mobile-parcours-app > .hhg-mobile-edit-done{
		right:7px!important;
		top:max(7px,env(safe-area-inset-top))!important;
		min-height:38px!important;
		padding:6px 10px!important;
		font-size:11px!important;
	}

	.hhg-mobile-parcours-app > .hhg-mobile-editor-drawer{
		left:52px!important;
		top:5px!important;
		bottom:5px!important;
		width:min(230px,calc(100vw - 60px))!important;
		border-radius:12px!important;
	}
	.hhg-mobile-drawer-head{
		padding:10px 10px 7px!important;
		font-size:12px!important;
	}
	.hhg-mobile-drawer-body{
		height:calc(100% - 48px)!important;
		padding:7px!important;
		gap:5px!important;
	}
	.hhg-mobile-drawer-action{
		min-height:39px!important;
		padding:7px 8px!important;
		font-size:11px!important;
	}
}

/* Very short landscape phones: all seven dock buttons fit without scrolling. */
@media (max-height:430px) and (pointer:coarse){
	.hhg-mobile-parcours-app > .hhg-mobile-editor-dock{
		width:46px!important;
		padding:3px 2px!important;
		gap:2px!important;
	}
	.hhg-mobile-dock-btn{
		width:42px!important;
		height:40px!important;
		min-height:40px!important;
		border-radius:8px!important;
	}
	.hhg-mobile-dock-symbol,
	.hhg-mobile-dock-symbol svg{
		width:19px!important;
		height:19px!important;
	}
	.hhg-mobile-dock-label{
		font-size:5.6px!important;
	}
	.hhg-mobile-parcours-app .hhg-parcours-workspace{
		inset:0 0 0 46px!important;
	}
	.hhg-mobile-parcours-app .hhg-parcours-svg{
		width:min(calc(100vw - 46px), calc(100dvh * 2))!important;
		max-width:calc(100vw - 46px)!important;
	}
	.hhg-mobile-parcours-app .hhg-mobile-properties-collapsible{
		left:53px!important;
	}
}

/* Portrait phones: fit the complete course into the remaining width.
   Editing is still possible thanks to the enlarged invisible touch targets. */
@media (max-width:600px) and (orientation:portrait) and (pointer:coarse){
	.hhg-mobile-parcours-app .hhg-parcours-workspace{
		align-items:flex-start!important;
		justify-content:flex-start!important;
	}
	.hhg-mobile-parcours-app .hhg-parcours-svg{
		width:calc(100vw - 48px)!important;
		max-width:calc(100vw - 48px)!important;
		min-width:0!important;
	}
}

/* ==========================================================================
   v0.17.58 – Werkzeugschutz + Smartphone-Pinch-Zoom
   ========================================================================== */
.hhg-parcours-svg.is-tool-active [data-id],
.hhg-parcours-svg.is-tool-active [data-combo-part],
.hhg-parcours-svg.is-tool-active [data-rotate-handle],
.hhg-parcours-svg.is-tool-active .hhg-mobile-hit-target{
	pointer-events:none!important;
}
.hhg-parcours-svg.is-tool-active{cursor:crosshair!important}

.hhg-mobile-dock-undo .hhg-mobile-dock-symbol svg{width:25px!important;height:25px!important}

.hhg-mobile-zoom-badge{display:none}
@media(max-width:700px), (max-height:500px) and (pointer:coarse){
	.hhg-mobile-parcours-app > .hhg-mobile-zoom-badge{
		position:fixed!important;right:8px!important;bottom:max(8px,env(safe-area-inset-bottom))!important;z-index:43!important;
		display:block!important;min-width:52px!important;min-height:36px!important;padding:5px 8px!important;
		border:1px solid rgba(39,55,92,.18)!important;border-radius:10px!important;background:rgba(255,255,255,.92)!important;
		color:#354563!important;font-size:10px!important;font-weight:800!important;box-shadow:0 7px 18px rgba(30,43,72,.16)!important;
		backdrop-filter:blur(5px)!important;
	}
	.hhg-mobile-parcours-app > .hhg-mobile-zoom-badge[hidden]{display:none!important}
}
@media(max-height:430px) and (pointer:coarse){
	.hhg-mobile-parcours-app > .hhg-mobile-editor-dock{gap:1px!important}
	.hhg-mobile-dock-btn{height:36px!important;min-height:36px!important}
	.hhg-mobile-dock-symbol,.hhg-mobile-dock-symbol svg{width:17px!important;height:17px!important}
	.hhg-mobile-dock-label{font-size:5.2px!important}
}

/* ==========================================================================
   v0.17.59 – Touch-Bedienung, Lesbarkeit, App-Isolation
   ========================================================================== */

/* While the editor app is open, the surrounding page must not accept input. */
html.hhg-parcours-app-active,
html.hhg-parcours-app-active body{
	overflow:hidden!important;
	overscroll-behavior:none!important;
}

/* Tablet/phone: fields in "Element bearbeiten" are real touch-sized controls. */
@media(max-width:1100px), (pointer:coarse){
	.hhg-mobile-parcours-app .hhg-parcours-properties input:not([type="range"]):not([type="checkbox"]),
	.hhg-mobile-parcours-app .hhg-parcours-properties select,
	.hhg-mobile-parcours-app .hhg-parcours-properties textarea{
		box-sizing:border-box!important;
		width:100%!important;
		min-height:44px!important;
		height:auto!important;
		padding:9px 11px!important;
		font-size:16px!important;
		line-height:1.35!important;
		color:#26354b!important;
		background:#fff!important;
	}
	.hhg-mobile-parcours-app .hhg-parcours-properties label{
		font-size:13px!important;
		line-height:1.35!important;
	}

	/* Slalom / Trabstangen: browser-independent +/- controls. */
	.hhg-touch-stepper{
		display:grid!important;
		grid-template-columns:44px minmax(64px,1fr) 44px!important;
		gap:7px!important;
		align-items:center!important;
		margin-top:5px!important;
	}
	.hhg-touch-stepper input{
		text-align:center!important;
		font-weight:800!important;
		font-size:17px!important;
	}
	.hhg-stepper-btn{
		width:44px!important;
		height:44px!important;
		min-width:44px!important;
		padding:0!important;
		border:1px solid #cfd8e6!important;
		border-radius:10px!important;
		background:#f3f6fa!important;
		color:#263b62!important;
		font-size:25px!important;
		font-weight:800!important;
		line-height:1!important;
	}
	.hhg-pylon-quickadd{
		margin-top:9px!important;
	}
	.hhg-pylon-quickadd button{
		min-height:42px!important;
		width:100%!important;
	}

	/* Undo sits top-right, visually separated as a caution/destructive-style action. */
	.hhg-mobile-parcours-app > .hhg-mobile-top-actions{
		position:fixed!important;
		top:max(8px,env(safe-area-inset-top))!important;
		right:8px!important;
		z-index:46!important;
		display:flex!important;
		align-items:center!important;
		gap:7px!important;
	}
	.hhg-mobile-undo-top{
		display:inline-flex!important;
		align-items:center!important;
		gap:6px!important;
		min-height:42px!important;
		padding:7px 11px!important;
		border:1px solid #e0a3a3!important;
		border-radius:11px!important;
		background:linear-gradient(135deg,#fff2f2,#ffe3e3)!important;
		color:#a62a2a!important;
		font-size:11px!important;
		font-weight:850!important;
		box-shadow:0 8px 20px rgba(151,39,39,.13)!important;
	}
	.hhg-mobile-undo-top svg{
		width:22px!important;
		height:22px!important;
		flex:0 0 22px!important;
	}
	.hhg-mobile-undo-top:disabled{
		opacity:.42!important;
		filter:grayscale(.35)!important;
	}
	.hhg-mobile-parcours-app > .hhg-mobile-top-actions .hhg-mobile-edit-done{
		position:static!important;
		display:inline-flex!important;
		min-height:42px!important;
		margin:0!important;
	}
	.hhg-mobile-parcours-app > .hhg-mobile-top-actions .hhg-mobile-edit-done[hidden]{
		display:none!important;
	}

	/* Zoom controls: explicit +/- plus pinch gesture. */
	.hhg-mobile-parcours-app > .hhg-mobile-zoom-controls{
		position:fixed!important;
		right:8px!important;
		bottom:max(8px,env(safe-area-inset-bottom))!important;
		z-index:45!important;
		display:flex!important;
		align-items:center!important;
		gap:3px!important;
		padding:3px!important;
		border:1px solid rgba(39,55,92,.18)!important;
		border-radius:12px!important;
		background:rgba(255,255,255,.94)!important;
		box-shadow:0 8px 20px rgba(30,43,72,.16)!important;
	}
	.hhg-mobile-parcours-app > .hhg-mobile-zoom-controls[hidden]{
		display:none!important;
	}
	.hhg-mobile-zoom-controls > button{
		min-width:38px!important;
		height:38px!important;
		padding:0 7px!important;
		border:0!important;
		border-radius:9px!important;
		background:#eef3f8!important;
		color:#354563!important;
		font-weight:850!important;
		font-size:19px!important;
	}
	.hhg-mobile-zoom-controls > .hhg-mobile-zoom-badge{
		min-width:54px!important;
		font-size:10px!important;
	}
}

/* Very small phones: keep top actions compact. */
@media(max-width:520px) and (pointer:coarse){
	.hhg-mobile-undo-top{
		padding:6px 8px!important;
	}
	.hhg-mobile-undo-top span{
		font-size:9px!important;
	}
	.hhg-mobile-undo-top svg{
		width:19px!important;
		height:19px!important;
	}
}
\n/* v0.17.62 – große Funktions-Erweiterung Parcoursplaner */
@media(min-width:1101px) and (pointer:fine){
 .hhg-parcours-tools .hhg-pc-undo{width:auto!important;min-width:0!important;padding:7px 11px!important;font-size:12px!important;line-height:1.2!important}
}
.hhg-ext-control{margin:8px 0}.hhg-ext-control label{display:flex;flex-direction:column;gap:5px}.hhg-ext-control input,.hhg-ext-control select{min-height:38px}

/* v0.17.63 – Richter darf bewusst außerhalb der eigentlichen Parcoursfläche stehen. */
.hhg-parcours-svg [data-id][data-kind="judge"]{overflow:visible}

/* v0.17.64 – GHHA-LVMD: nur die ausdrücklich hinterlegten Alters- und Leistungsklassen. */
.hhg-ghha-lvmd-info{margin-top:12px}
.hhg-ghha-lvmd-info .hhg-tg-rule-guidance{line-height:1.55}

/* v0.17.65 – GHHA/LVMD-Auswahlchips bleiben neutral, bis sie bewusst ausgewählt werden. */
.hhg-ghha-lvmd-info select{min-width:0}
