.ghc label,.ghco-box label{display:block;margin:0 0 4px;font-weight:600;font-size:var(--gh-fs-sm,13px);color:var(--gh-ink,#1b222b)}.ghc label:has(> input[type=checkbox]),.ghc label:has(> input[type=radio]),.ghco-box label:has(> input[type=checkbox]),.ghco-box label:has(> input[type=radio]){display:flex;align-items:center;gap:8px;font-weight:400}.ghc label input[type=checkbox],.ghc label input[type=radio],.ghco-box label input[type=checkbox],.ghco-box label input[type=radio]{width:auto;min-height:0;margin:0;flex:0 0 auto}.ghc-form label:has(> input[type=checkbox]),.ghc-form label:has(> input[type=radio]),.ghc-form label.ghc-check,.ghc-form label.ghc-radio{flex-direction:row!important;align-items:center;gap:8px;font-weight:400;margin:0 0 8px}.ghc-form label .ghc-tip,.ghc .ghc-tip{flex:0 0 auto;vertical-align:middle}.ghc-form label.ghc-check{flex-wrap:nowrap}.ghc form p,.ghco-box form p{margin:0 0 14px}.ghc-field,.ghco-field{margin:0 0 14px}.ghc :is(input,select,textarea,button):focus-visible,.ghco-box :is(input,select,textarea,button):focus-visible{outline:3px solid color-mix(in srgb,var(--gh-amber,#f59e0b) 45%,transparent);outline-offset:2px}.ghc .ghc-btn,.ghco-box .ghco-btn{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:6px}.ghc-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.ghc-hint,.ghco-hint{display:block;margin-top:4px;font-size:var(--gh-fs-sm,12px);color:var(--gh-muted,#566471)}.ghc-fehler{color:var(--gh-danger,#b91c1c);font-size:var(--gh-fs-sm,13px)}.ghc :disabled,.ghco-box :disabled{opacity:.55;cursor:not-allowed}.ghc-wahl,.ghc-chip,.ghn-chip,.ghgrp-eintrag,.ghco-memtype{border:1px solid var(--gh-line,#d9dde2);border-radius:var(--gh-r-pill,999px);padding:7px 13px;cursor:pointer;transition:border-color .12s,background .12s}:is(.ghc-wahl,.ghc-chip,.ghn-chip,.ghgrp-eintrag,.ghco-memtype):hover{border-color:var(--gh-amber,#f59e0b)}:is(.ghc-wahl,.ghc-chip,.ghn-chip,.ghgrp-eintrag,.ghco-memtype):has(input:checked){background:var(--gh-amber,#f59e0b);color:var(--gh-on-accent,#1b222b);border-color:var(--gh-amber,#f59e0b);font-weight:600}:is(.ghc-wahl,.ghc-chip,.ghn-chip,.ghgrp-eintrag,.ghco-memtype).ist-gewaehlt{background:var(--gh-amber,#f59e0b);border-color:var(--gh-amber,#f59e0b);font-weight:600}.ghc [aria-invalid=true],.ghco-box [aria-invalid=true]{border-color:var(--gh-danger,#b91c1c);border-width:2px}.ghc [aria-invalid=true]:focus-visible{outline-color:var(--gh-danger,#b91c1c)}.ghc label:has(+ :required)::after,.ghc label:has(> :required)::after{content:' *';color:var(--gh-danger,#b91c1c)}.ghc [aria-busy=true],.ghco-box [aria-busy=true]{opacity:.6;pointer-events:none}.ghc-btn[aria-busy=true]::after{content:"";width:13px;height:13px;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:ghc-dreh .7s linear infinite}@keyframes ghc-dreh{to{transform:rotate(360deg)}}.ghc-status{display:inline-flex;align-items:center;gap:5px;padding:2px 9px;border-radius:var(--gh-r-pill,999px);font-size:var(--gh-fs-sm,12px);font-weight:600}.ghc-status--offen{background:var(--gh-bg-soft,#eef0f2);color:var(--gh-muted,#566471)}.ghc-status--wartet{background:#fef3c7;color:#845506}.ghc-status--ok{background:#d1fae5;color:#065f46}.ghc-status--weg{background:#ffe4e6;color:var(--gh-danger,#b91c1c)}.ghc-leer{padding:22px 16px;text-align:center;color:var(--gh-muted,#566471);border:1px dashed var(--gh-line,#d9dde2);border-radius:var(--gh-r-md,8px)}@media (max-width:640px){.ghc table,.ghco-box table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}.ghc table th,.ghc table td{white-space:nowrap}.ghc [style*="width:"],.ghco-box [style*="width:"]{max-width:100%}.ghc img,.ghco-box img{max-width:100%;height:auto}.ghc-grid2,.ghom-grid2,.ghco-grid2{grid-template-columns:1fr!important}.ghc-actions{flex-direction:column;align-items:stretch}.ghc-actions .ghc-btn{width:100%}}@media (hover:none){.ghc [title]:focus::after,.ghc [title]:active::after{content:attr(title);display:block;margin-top:4px;font-size:var(--gh-fs-sm,12px);color:var(--gh-muted,#566471);white-space:normal}}.ghc-fieldset{border:1px solid var(--gh-line,#dfe5eb);border-radius:var(--gh-r-lg,12px);padding:16px 18px;margin:0 0 18px;background:var(--gh-surface,#fff)}.ghc-fieldset > legend{padding:0 8px;font-weight:700;font-size:var(--gh-fs-base,15px);color:var(--gh-ink,#1b222b)}@media (max-width:640px){.ghc-fieldset{padding:12px 12px;border-radius:var(--gh-r-md,8px)}}.ghc-guidelist{display:flex;flex-direction:column;gap:0;max-height:340px;overflow:auto;border:1px solid var(--gh-line,#dfe5eb);border-radius:var(--gh-r-md,8px);background:var(--gh-surface,#fff)}.ghc-guiderow{display:flex;align-items:center;gap:10px;padding:8px 12px;flex-wrap:wrap}.ghc-guiderow + .ghc-guiderow{border-top:1px solid var(--gh-line,#dfe5eb)}.ghc-guiderow:hover{background:var(--gh-bg-soft,#eef0f2)}.ghc-gnamewrap{display:flex;align-items:center;gap:9px;flex:1 1 190px;min-width:0;margin:0}.ghc-gnamewrap span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ghc-gavatar{width:34px;height:34px;border-radius:50%;object-fit:cover;flex:0 0 auto}.ghc-gpct input{max-width:88px;width:100%}.ghc-guideextern{border:1px dashed var(--gh-line,#d9dde2);border-radius:var(--gh-r-md,8px);padding:10px 12px;background:var(--gh-bg-soft,#eef0f2)}.ghco-memtype{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border:1px solid var(--gh-line,#d9dde2);border-radius:var(--gh-r-lg,10px);background:var(--gh-surface,#fff);cursor:pointer}.ghco-memtype input{margin-top:2px}.ghco-memtype > span{display:flex;flex-direction:column;gap:2px;min-width:0}.ghco-memtype .ghco-preis{font-size:var(--gh-fs-sm,13px);color:var(--gh-muted,#566471);font-weight:400}.ghco-joinform .ghco-btn,.ghco-box form > p:last-of-type .ghco-btn{min-height:44px;padding:0 24px}@media (max-width:640px){.ghco-joinform .ghco-btn{width:100%}}/* ===== FORMULARSYSTEM ===== */
:root{--ghf-h:44px;--ghf-pad:10px 14px;--ghf-r:var(--gh-r-lg,10px);--ghf-gap-y:18px;--ghf-gap-x:20px;--ghf-min:300px;--ghf-line:var(--gh-line-3,#c6d0da);--ghf-line-hover:var(--gh-line-4,#b4c0cc);--ghf-ring:color-mix(in srgb,var(--gh-amber,#f59e0b) 38%,transparent);--ghf-ring-danger:color-mix(in srgb,var(--gh-danger,#b91c1c) 22%,transparent)}
/* Filterleisten und Inline-Formulare: kompakter, sonst wirken sie schwer. */
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) :is(.ghc-inline,.ghc-filter,.ghc-filtrow,.ghm-filters,.ghco-search,.ghe-filters,.ghc-feed-filter,.gh-filter,.ghm-frow){--ghf-h:38px;--ghf-pad:6px 12px}

/* --- 1. Skin: Felder --- */
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) :is(input:not([type=checkbox],[type=radio],[type=submit],[type=button],[type=reset],[type=hidden],[type=file],[type=color],[type=range],[type=image]),select,textarea){width:100%;box-sizing:border-box;color-scheme:light;transition:border-color .15s,box-shadow .15s,background-color .15s}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) :is(input:not([type=checkbox],[type=radio],[type=submit],[type=button],[type=reset],[type=hidden],[type=file],[type=color],[type=range],[type=image]),select,textarea):not([style*="border"]):not([style*="padding"]){min-height:var(--ghf-h)!important;padding:var(--ghf-pad)!important;border:1px solid var(--ghf-line)!important;border-radius:var(--ghf-r)!important;box-shadow:var(--gh-sch-1,0 1px 2px rgba(27,34,43,.06))!important}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) :is(input:not([type=checkbox],[type=radio],[type=submit],[type=button],[type=reset],[type=hidden],[type=file],[type=color],[type=range],[type=image]),select,textarea):not([style*="font"]):not([style*="color"]){font:inherit!important;font-size:16px!important;line-height:1.35!important;color:var(--gh-ink,#1b222b)!important}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) :is(input:not([type=checkbox],[type=radio],[type=submit],[type=button],[type=reset],[type=hidden],[type=file],[type=color],[type=range],[type=image]),select,textarea):not([style*="background"]){background-color:var(--gh-surface,#fff)!important}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) textarea:not([style*="border"]):not([style*="padding"]){min-height:110px!important;padding:12px 14px!important}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) textarea{resize:vertical;line-height:1.5!important;field-sizing:content;max-height:60vh}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) :is(input:not([type=checkbox],[type=radio],[type=submit],[type=button],[type=reset],[type=hidden],[type=file],[type=color],[type=range],[type=image]),textarea)::placeholder{color:var(--gh-muted,#566471);opacity:.65}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) :is(input:not([type=checkbox],[type=radio],[type=submit],[type=button],[type=reset],[type=hidden],[type=file],[type=color],[type=range],[type=image]),select,textarea):hover:not(:focus-visible):not(:disabled):not([style*="border"]){border-color:var(--ghf-line-hover)!important}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) :is(input:not([type=checkbox],[type=radio],[type=submit],[type=button],[type=reset],[type=hidden],[type=file],[type=color],[type=range],[type=image]),select,textarea):focus-visible{outline:0!important;border-color:var(--gh-amber,#f59e0b)!important;box-shadow:0 0 0 4px var(--ghf-ring)!important}
/* Fehler: aria-invalid (vom Skript) UND :user-invalid (vom Browser, vor dem Skript). */
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) :is([aria-invalid=true],:user-invalid):is(input:not([type=checkbox],[type=radio],[type=submit],[type=button],[type=reset],[type=hidden],[type=file],[type=color],[type=range],[type=image]),select,textarea){border-color:var(--gh-danger,#b91c1c)!important;box-shadow:0 0 0 4px var(--ghf-ring-danger)!important}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) :is(input:not([type=checkbox],[type=radio],[type=submit],[type=button],[type=reset],[type=hidden],[type=file],[type=color],[type=range],[type=image]),select,textarea):disabled{background-color:var(--gh-bg-soft,#e0e6ec)!important;color:var(--gh-muted,#566471)!important;box-shadow:none!important;cursor:not-allowed}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) :is(input:not([type=checkbox],[type=radio],[type=submit],[type=button],[type=reset],[type=hidden],[type=file],[type=color],[type=range],[type=image]),textarea):read-only:not(:disabled){background-color:var(--gh-bg,#edf1f4)!important}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) input:-webkit-autofill{-webkit-box-shadow:0 0 0 1000px var(--gh-surface,#fff) inset!important;-webkit-text-fill-color:var(--gh-ink,#1b222b)!important}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) input[type=search]{-webkit-appearance:none;appearance:none}
/* Auswahlliste mit eigenem Pfeil - der Browserpfeil sieht in jedem System anders aus. */
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) select:not([multiple]):not([size]){-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath d='M4 6l4 4 4-4' fill='none' stroke='%2357534e' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:right 12px center!important;padding-right:38px!important;cursor:pointer}
/* Ankreuz- und Auswahlfelder in Markenfarbe, ohne eigenes Markup: accent-color. */
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) :is(input[type=checkbox],input[type=radio]){accent-color:var(--gh-amber,#f59e0b);width:18px!important;height:18px!important;min-height:0!important;margin:0;flex:0 0 auto;cursor:pointer}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) input[type=range]{accent-color:var(--gh-amber,#f59e0b);width:100%}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) input[type=color]{min-height:var(--ghf-h);width:56px;padding:4px;border:1px solid var(--ghf-line);border-radius:var(--ghf-r);background:var(--gh-surface,#fff);cursor:pointer}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) input[type=file]{width:100%;box-sizing:border-box;padding:8px;font-size:14px;color:var(--gh-muted,#566471);border:1px dashed var(--ghf-line);border-radius:var(--ghf-r);background:var(--gh-bg,#edf1f4);cursor:pointer}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) input[type=file]::file-selector-button{margin-right:12px;min-height:34px;padding:0 14px;border:1px solid var(--ghf-line);border-radius:var(--gh-r-md,8px);background:var(--gh-surface,#fff);color:var(--gh-ink,#1b222b);font:inherit;font-weight:600;cursor:pointer}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) input[type=file]:hover::file-selector-button{border-color:var(--gh-amber,#f59e0b)}

/* --- 2. Raster: .ghc-form --- */
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form{max-width:none}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe){display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,max(var(--ghf-min),calc((100% - 2*var(--ghf-gap-x))/3))),1fr));column-gap:var(--ghf-gap-x);row-gap:0;align-items:start}
/* Abstand ueber Raender statt row-gap: Anker und versteckte Felder sind
   Rasterzellen ohne Hoehe - mit row-gap entstuende an jeder ein Loch. */
:is(:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe),:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) fieldset,:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) .ghc-panel2,:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) :is(.ghc-feldgruppe,.ghc-field:has(> .ghc-grid2,> .ghom-grid2,> .ghc-field,> fieldset))) > *{margin:0 0 var(--ghf-gap-y);min-width:0}
:is(:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe),:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) fieldset,:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) .ghc-panel2,:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) :is(.ghc-feldgruppe,.ghc-field:has(> .ghc-grid2,> .ghom-grid2,> .ghc-field,> fieldset))) > :is(input[type=hidden],script,template,style,.ghp-anchor){margin:0;grid-column:1/-1;height:0}
:is(:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe),:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) fieldset,:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) .ghc-panel2,:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) :is(.ghc-feldgruppe,.ghc-field:has(> .ghc-grid2,> .ghom-grid2,> .ghc-field,> fieldset))) > br{display:none}
/* Ganze Zeile: Fliesstext, Ueberschriften, Bloecke, Trenner. */
:is(:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe),:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) fieldset,:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) .ghc-panel2,:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) :is(.ghc-feldgruppe,.ghc-field:has(> .ghc-grid2,> .ghom-grid2,> .ghc-field,> fieldset))) > :is(p,h1,h2,h3,h4,h5,h6,hr,div,fieldset,table,ul,ol,dl,details,section,nav,article,pre){grid-column:1/-1}
/* Ein Absatz, der genau ein Feld traegt, ist eine Zelle. */
:is(:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe),:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) fieldset,:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) .ghc-panel2,:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) :is(.ghc-feldgruppe,.ghc-field:has(> .ghc-grid2,> .ghom-grid2,> .ghc-field,> fieldset))) > p:has(> label > :is(input,select,textarea)):not(:has(textarea,[type=file])){grid-column:auto}
/* Beschriftung ohne Feld = Zwischentitel fuer das, was folgt (z. B. Editor). */
:is(:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe),:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) fieldset,:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) .ghc-panel2,:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) :is(.ghc-feldgruppe,.ghc-field:has(> .ghc-grid2,> .ghom-grid2,> .ghc-field,> fieldset))) > label:not(:has(input,select,textarea)){grid-column:1/-1;margin-bottom:6px}
/* Breite Felder: Textbereiche, Editoren, Dateien, Bildausschnitt, Karte. */
:is(:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe),:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) fieldset,:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) .ghc-panel2,:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) :is(.ghc-feldgruppe,.ghc-field:has(> .ghc-grid2,> .ghom-grid2,> .ghc-field,> fieldset))) > label:has(> textarea,> .wp-editor-wrap,> .ghc-cropper,> .ghc-certfield,> .ghc-mediabox,.ghgeo-map){grid-column:1/-1}
:is(:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe),:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) fieldset,:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) .ghc-panel2,:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) :is(.ghc-feldgruppe,.ghc-field:has(> .ghc-grid2,> .ghom-grid2,> .ghc-field,> fieldset))) > :is(.ghc-grid2,.ghom-grid2,.ghco-grid2,.ghc-box,.ghc-notice,.ghc-flag,.ghc-fieldset,.ghc-wizard,.ghc-wizard__footer,.ghc-panel2,.ghc-cropper,.ghc-certfield,.ghgeo-status,.ghgeo-map,.wp-editor-wrap,.ghc-guidelist,.ghc-guideextern,.ghc-photofield,.ghc-actions,.ghc-tip){grid-column:1/-1}
:is(:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe),:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) fieldset,:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) .ghc-panel2,:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) :is(.ghc-feldgruppe,.ghc-field:has(> .ghc-grid2,> .ghom-grid2,> .ghc-field,> fieldset))) > :is(.ghc-field,.ghco-field,.ghm-field):not(:is(.ghc-feldgruppe,.ghc-field:has(> .ghc-grid2,> .ghom-grid2,> .ghc-field,> fieldset))){grid-column:auto}
:is(:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe),:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) fieldset,:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) .ghc-panel2,:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) :is(.ghc-feldgruppe,.ghc-field:has(> .ghc-grid2,> .ghom-grid2,> .ghc-field,> fieldset))) > :is(.ghc-field,.ghco-field,.ghm-field):has(textarea,.wp-editor-wrap){grid-column:1/-1}
/* Auswahlwolke: ein Feld mit vier und mehr Ankreuzmoeglichkeiten braucht die
   Zeile. Gruppen ausgenommen - sie enthalten ebenfalls Haekchen, haben aber
   ihre eigene Regel; die Ausnahme hebt zugleich ueber die Zellenregel. */
:is(:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe),:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) fieldset,:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) .ghc-panel2,:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) :is(.ghc-feldgruppe,.ghc-field:has(> .ghc-grid2,> .ghom-grid2,> .ghc-field,> fieldset))) > .ghc-field:not(:is(.ghc-feldgruppe,.ghc-field:has(> .ghc-grid2,> .ghom-grid2,> .ghc-field,> fieldset))):has(label:nth-of-type(4)){grid-column:1/-1}
/* Knoepfe: eigene Zelle, natuerliche Breite, nicht gedehnt. Der LETZTE Knopf
   (Absenden ohne Huelle) bekommt die ganze Zeile - sonst sitzt er neben dem
   letzten Feld. */
:is(:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe),:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) fieldset,:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) .ghc-panel2,:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) :is(.ghc-feldgruppe,.ghc-field:has(> .ghc-grid2,> .ghom-grid2,> .ghc-field,> fieldset))) > :is(button,.ghc-btn,.ghco-btn){justify-self:start;margin-top:4px}
:is(:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe),:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) fieldset,:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) .ghc-panel2,:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) :is(.ghc-feldgruppe,.ghc-field:has(> .ghc-grid2,> .ghom-grid2,> .ghc-field,> fieldset))) > :is(button,.ghc-btn,.ghco-btn):last-child{grid-column:1/-1}
/* Abschnitte, Assistenten-Schritte und Feldgruppen sind selbst Raster. */
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) :is(fieldset,.ghc-panel2,:is(.ghc-feldgruppe,.ghc-field:has(> .ghc-grid2,> .ghom-grid2,> .ghc-field,> fieldset))){grid-column:1/-1;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,max(var(--ghf-min),calc((100% - 2*var(--ghf-gap-x))/3))),1fr));column-gap:var(--ghf-gap-x);row-gap:0;align-items:start}
/* Versteckte Schritte bleiben versteckt - display:grid darf [hidden] nicht aufheben. */
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) :is(.ghc-panel2,fieldset,div,p,label)[hidden]{display:none!important}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) fieldset{padding:18px 20px 2px;margin:0 0 var(--ghf-gap-y);border:1px solid var(--gh-line,#dfe5eb);border-radius:var(--gh-r-xl,12px);background:var(--gh-surface,#fff);min-width:0}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) fieldset > legend{padding:0 8px;margin:0 0 4px;font-weight:700;font-size:var(--gh-fs-lg,16px);color:var(--gh-ink,#1b222b)}
/* Das Formular misst seine eigene Breite (Container-Abfrage): ob drei Spalten
   Platz haben, haengt vom Behaelter ab, nicht vom Bildschirm - in der App-
   Ansicht nimmt die Seitenleiste Platz weg. 940px = 3 x 300px + 2 x 20px,
   also genau die Schwelle, ab der das Raster drei Spalten bildet. */
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe){container-type:inline-size}
/* Spalte: eine Huelle, die sich normalerweise aufloest (display:contents) -
   ihre Kinder sind gewoehnliche Zellen. Erst neben einer zweispaltigen
   Feldgruppe wird sie zur gestapelten dritten Spalte: Titel, darunter das
   Titelbild, darunter die Galerie. */
/* Als Kind des Behaelters angesprochen (:is(:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe),:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) fieldset,:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) .ghc-panel2,:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) :is(.ghc-feldgruppe,.ghc-field:has(> .ghc-grid2,> .ghom-grid2,> .ghc-field,> fieldset))) >), damit die Regeln ueber der
   allgemeinen "div belegt die Zeile"-Regel liegen - Gruppe und Spalte sind divs. */
:is(:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe),:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) fieldset,:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) .ghc-panel2,:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) :is(.ghc-feldgruppe,.ghc-field:has(> .ghc-grid2,> .ghom-grid2,> .ghc-field,> fieldset))) > .ghc-spalte{display:contents}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) .ghc-spalte > *{margin:0 0 var(--ghf-gap-y);min-width:0}
/* Aufgeloest sind die Kinder Zellen des Formulars - breite Inhalte brauchen
   dann ihre Zeile, wie sonst auch. */
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) .ghc-spalte > :is(label:has(> textarea,> .wp-editor-wrap),label:not(:has(input,select,textarea)),.wp-editor-wrap,p,h2,h3,h4,div:not(.ghc-field),:is(.ghc-feldgruppe,.ghc-field:has(> .ghc-grid2,> .ghom-grid2,> .ghc-field,> fieldset))){grid-column:1/-1}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) .ghc-spalte > :is(.ghc-grid2,.ghom-grid2,.ghco-grid2){grid-column:1/-1}
/* Feldgruppe: Auswahlfelder brauchen weniger Platz als Textfelder - so
   stehen Sportart, Art und Schwierigkeit in einer Zeile. Kein Kasten im
   Kasten: Felder in der Gruppe verlieren die Kartenoptik des Plugins. */
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) .ghc-feldgruppe{--ghf-min:200px}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) :is(.ghc-feldgruppe,.ghc-field:has(> .ghc-grid2,> .ghom-grid2,> .ghc-field,> fieldset)) > .ghc-field:not(:is(.ghc-feldgruppe,.ghc-field:has(> .ghc-grid2,> .ghom-grid2,> .ghc-field,> fieldset))){background:transparent;border:0;border-radius:0;padding:0;box-shadow:none}
/* Vorlagen-Bloecke (Aus Vorlage importieren, Touren-/Kursvorlage): lose
   Folgen aus Knopf, Beschriftung, <br>, Auswahl, Knopf. Das <br> trug den
   Abstand - seit Beschriftungen Flex sind, wirkt es nicht mehr. Darum ein
   senkrechter Stapel mit festem Abstand; Knoepfe auf eigener Zeile. */
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) :is(.ghc-vorlage,.ghc-kindbox){display:flex;flex-direction:column;align-items:flex-start;gap:10px}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) :is(.ghc-vorlage,.ghc-kindbox) > :is(br,input[type=hidden]){display:none}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) :is(.ghc-vorlage,.ghc-kindbox) > :is(label,p,select,div){margin:0}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) :is(.ghc-vorlage,.ghc-kindbox) > :is(select,div,textarea){align-self:stretch}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) :is(.ghc-vorlage,.ghc-kindbox) > .ghc-kindbox{margin-top:4px}
@container (min-width:940px){
:is(:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe),:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) fieldset,:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) .ghc-panel2,:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) :is(.ghc-feldgruppe,.ghc-field:has(> .ghc-grid2,> .ghom-grid2,> .ghc-field,> fieldset))) > .ghc-feldgruppe.ghc-feldgruppe--zwei{grid-column:1/span 2}
/* Zwei Spalten nebeneinander: die schmale (Titel, Bilder) rechts, die breite
   (Abschnitt, Beschreibung) links - so enden beide auf gleicher Hoehe. Die
   schmale steht im Code ZUERST, damit der Titel auch in der Tab-Reihenfolge
   zuerst kommt; ihre Position im Raster ist darum ausdruecklich die dritte. */
:is(:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe),:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) fieldset,:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) .ghc-panel2,:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) :is(.ghc-feldgruppe,.ghc-field:has(> .ghc-grid2,> .ghom-grid2,> .ghc-field,> fieldset))) > .ghc-spalte{display:flex;flex-direction:column;grid-column:auto}
/* Die schmale Spalte steht im Code vor der breiten, sitzt aber rechts. Beim
   Einordnen rueckt der Cursor darum eine Zeile weiter (Spalte 1 liegt vor
   Spalte 3) - die breite landete unter der schmalen. Darum wird die breite
   per "order" ZUERST platziert, die schmale danach in Spalte 3 derselben
   Zeile. "order" aendert nur die Platzierung, nicht die Tab-Reihenfolge.
   (Ein "dense" auf dem Behaelter ging nicht: @container-Regeln gelten nie
   fuer den Container selbst - und das Formular ist der Container.) */
:is(:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe),:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) fieldset,:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) .ghc-panel2,:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) :is(.ghc-feldgruppe,.ghc-field:has(> .ghc-grid2,> .ghom-grid2,> .ghc-field,> fieldset))) > .ghc-spalte:has(+ .ghc-spalte--zwei){grid-column:3;order:-1}
/* Die breite Spalte ist selbst ein Raster (subgrid): Kontakt-Zweispalter und
   Felder darin fluchten mit dem Formular; Abschnitte, Textbereiche und der
   Editor belegen ihre ganze Breite. */
:is(:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe),:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) fieldset,:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) .ghc-panel2,:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) :is(.ghc-feldgruppe,.ghc-field:has(> .ghc-grid2,> .ghom-grid2,> .ghc-field,> fieldset))) > .ghc-spalte.ghc-spalte--zwei{grid-column:1/span 2;order:-2;display:grid;grid-template-columns:subgrid;row-gap:0;align-items:start}
@supports not (grid-template-columns:subgrid){:is(:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe),:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) fieldset,:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) .ghc-panel2,:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) :is(.ghc-feldgruppe,.ghc-field:has(> .ghc-grid2,> .ghom-grid2,> .ghc-field,> fieldset))) > .ghc-spalte.ghc-spalte--zwei{grid-template-columns:repeat(2,minmax(0,1fr))}}
}
/* Zweispalter reihen sich ins Elternraster ein (subgrid) statt eigene
   Spalten zu erfinden - so fluchten die Felder ueber das ganze Formular. */
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) :is(.ghc-grid2,.ghom-grid2,.ghco-grid2){display:grid;grid-column:1/-1;grid-template-columns:subgrid;column-gap:var(--ghf-gap-x);row-gap:0;margin:0;align-items:start}
@supports not (grid-template-columns:subgrid){:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) :is(.ghc-grid2,.ghom-grid2,.ghco-grid2){grid-template-columns:repeat(2,minmax(0,1fr))}}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) :is(.ghc-grid2,.ghom-grid2,.ghco-grid2) > *{margin:0 0 var(--ghf-gap-y);min-width:0}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) :is(.ghc-grid2,.ghom-grid2,.ghco-grid2) > :is(div:not(.ghc-field,.ghco-field,.ghm-field),p:not(:has(> label)),label:has(> textarea,> input[type=file])){grid-column:1/-1}
/* Beschriftungen: Text und Info-Symbol in einer Zeile, das Feld darunter.
   Die Kartenoptik einzelner Plugins (weisse Kaestchen je Feld) wird
   aufgehoben - sie frisst Platz und passt nicht zum Raster. */
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) label:not(label label):not(.ghc-hidechk):not(.ghc-btn):not(.ghc-wahl):not(.ghc-chip):not(.ghn-chip):not(.ghc-reg__chip):not(.ghco-typ):not(.ghco-memtype):not(.ghgrp-eintrag):not(.ghc-sporticon):not(.ghm-chip){display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;align-content:flex-start;gap:6px 8px;font-weight:600;font-size:var(--gh-fs-md,14px);line-height:1.3;color:var(--gh-ink,#1b222b)}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) label:not(label label):not(.ghc-hidechk):not(.ghc-btn):not(.ghc-wahl):not(.ghc-chip):not(.ghn-chip):not(.ghc-reg__chip):not(.ghco-typ):not(.ghco-memtype):not(.ghgrp-eintrag):not(.ghc-sporticon):not(.ghm-chip):not([style*="background"]):not([style*="border"]):not([style*="padding"]){background:transparent!important;border:0!important;border-radius:0!important;padding:0!important;box-shadow:none!important}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) label > :is(input:not([type=checkbox],[type=radio],[type=submit],[type=button],[type=reset],[type=hidden],[type=file],[type=color],[type=range],[type=image]),select,textarea,.wp-editor-wrap,.ghc-mediabox,.ghc-cropper,.ghc-certfield,.ghc-hint,.ghc-hidechk,.ghc-fehler,.ghc-rest,small){flex:0 0 100%;width:100%;margin-top:0}
/* "Name<br><input>": das <br> trug den Zeilenumbruch - seit Beschriftungen
   Flex sind, steht das Feld ohnehin darunter, und das <br> wuerde eine leere
   Zeile erzeugen. */
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) label > br,:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form.ghc-inline label > br{display:none}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) > :is(h2,h3,h4){margin:6px 0 10px}
/* Inline-Formulare (Filterleisten) bleiben eine Zeile, verlieren aber die
   Kartenoptik je Beschriftung - sie stammt aus dem Eventformular und sieht in
   einer Leiste nach Kaestchen aus. */
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form.ghc-inline > label{display:flex;flex-direction:column;align-items:stretch;gap:4px;font-weight:600;font-size:var(--gh-fs-md,14px);color:var(--gh-ink,#1b222b)}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form.ghc-inline > label:not([style*="background"]):not([style*="border"]):not([style*="padding"]){background:transparent!important;border:0!important;border-radius:0!important;padding:0!important;box-shadow:none!important}
/* Der Unterrand der Kartenregel liess die Knoepfe tiefer haengen als die Felder. */
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form.ghc-inline > label:not([style*="margin"]){margin:0!important}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form.ghc-inline > :is(button,.ghc-btn){align-self:flex-end}
/* Prozentfeld in der Guide-Liste: Feld und Zeichen in einer Zeile, kompakt. */
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-gpct{display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;white-space:nowrap}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-gpct input{--ghf-h:36px;--ghf-pad:4px 8px;width:72px;max-width:72px}

/* --- 2a. Profilkarte, Fakten-Karte, Aufklappen ---
   Bausteine fuer Profilformulare: das Foto gross und mittig, die Knoepfe
   darunter, das Zuschneiden eingeklappt - es braucht Platz und wird selten
   gebraucht. Die Fakten-Karte sammelt, was die Geschaeftsstelle pflegt. */
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) .ghc-profilkarte{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;padding:22px 18px 16px}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) .ghc-profilkarte > label:first-child{justify-content:center}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) .ghc-profilkarte #ghc-photo-preview{margin:0}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) .ghc-profilkarte #ghc-photo-preview img{width:148px!important;height:148px!important;max-width:none!important;max-height:none!important;object-fit:cover;border-radius:30px!important;box-shadow:var(--gh-sch-2,0 4px 12px rgba(27,34,43,.10))}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) .ghc-profilkarte #ghc-photo-preview:empty::before,:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) .ghc-profilkarte #ghc-photo-preview > span{display:flex;width:148px;height:148px;border-radius:30px;background:var(--gh-bg-soft,#e0e6ec);color:var(--gh-muted,#566471);align-items:center;justify-content:center;font-size:13px;margin:0 auto}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) .ghc-btnrow{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) .ghc-profilkarte .ghc-hidechk{margin:0;font-size:13px}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) details.ghc-aufklapp{width:100%;text-align:left;border-top:1px solid var(--gh-line,#dfe5eb);padding-top:10px;margin-top:2px}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) .ghc-aufklapp > summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:8px;font-weight:600;font-size:14px;color:var(--gh-amber-600,#a04708);padding:4px 0;user-select:none}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) .ghc-aufklapp > summary::-webkit-details-marker{display:none}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) .ghc-aufklapp > summary::before{content:"";width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(-45deg);transition:transform .15s;flex:0 0 auto;margin-left:2px}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) .ghc-aufklapp[open] > summary::before{transform:rotate(45deg)}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) .ghc-aufklapp > summary:hover{color:var(--gh-ink,#1b222b)}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) .ghc-aufklapp .ghc-cropper{margin:10px 0 0}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) .ghc-aufklapp .ghc-cropper__frame,:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) .ghc-aufklapp .ghc-cropper__zoom{width:100%;max-width:240px;margin-left:auto;margin-right:auto}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) .ghc-aufklapp .ghc-cropper__ctrls{justify-content:center}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) .ghc-fakten{padding:16px 18px}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) .ghc-fakten > h3{margin:0 0 12px;font-size:var(--gh-fs-md,14px);font-weight:700;color:var(--gh-ink,#1b222b)}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) .ghc-fakten .ghc-readonly{margin:0 0 12px;font-size:14px;line-height:1.45}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) .ghc-fakten > :last-child{margin-bottom:0}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) .ghc-fakten .ghc-readonly > strong{display:block;font-size:12px;font-weight:600;color:var(--gh-muted,#566471);margin-bottom:2px}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) .ghc-fakten .ghc-readonly > .ghc-muted{display:block;font-size:12px}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) .ghc-fakten ul.ghc-docs{margin:2px 0 12px;padding-left:18px;font-size:14px}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) .ghc-fakten .ghc-hidechk{margin:-6px 0 12px;font-size:13px}

/* --- 2a2. Registrierungs-Karte ---
   Die Karte war 660px breit - mit 300px Mindestbreite je Feld blieb darin eine
   Spalte, Vorname und Nachname standen untereinander. Jetzt 760px und 260px
   Mindestbreite: zwei Spalten, nie drei (das bleibt den Dashboards). Schrift
   wie der Rest der Seite statt Calibri und einer Serifen-Ueberschrift. */
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-reg{font-family:inherit}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-reg__card{max-width:760px}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-reg__title{font-family:inherit;font-size:26px;letter-spacing:0}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-reg :is(.ghc-form,.ghco-form){--ghf-min:260px}
/* Abschnittslinien brauchen Luft nach oben - die Rasterregel setzt sonst 0. */
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) .ghc-reg__sec{margin-top:14px}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) .ghc-reg__sec:first-of-type{margin-top:0}
:is(:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe),:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) fieldset,:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) .ghc-panel2,:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) :is(.ghc-feldgruppe,.ghc-field:has(> .ghc-grid2,> .ghom-grid2,> .ghc-field,> fieldset))) > :is(.ghc-reg__flabel,.ghc-reg__hint,.ghc-reg__msg){grid-column:1/-1}
:is(:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe),:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) fieldset,:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) .ghc-panel2,:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) :is(.ghc-feldgruppe,.ghc-field:has(> .ghc-grid2,> .ghom-grid2,> .ghc-field,> fieldset))) > .ghc-reg__flabel{margin-bottom:6px}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) .ghc-reg__chips{margin-bottom:var(--ghf-gap-y)}

/* --- 2b. Raster: Firmen-/Vereinsformulare --- */
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) :is(.ghco-form,.ghco-box form):not(.ghco-search):not(.ghco-search--compact):has(> .ghco-field ~ .ghco-field){display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,max(var(--ghf-min),calc((100% - 2*var(--ghf-gap-x))/3))),1fr));column-gap:var(--ghf-gap-x);row-gap:0;align-items:start;max-width:none}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) :is(.ghco-form,.ghco-box form):not(.ghco-search):not(.ghco-search--compact):has(> .ghco-field ~ .ghco-field) > *{margin:0 0 var(--ghf-gap-y);min-width:0}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) :is(.ghco-form,.ghco-box form):not(.ghco-search):not(.ghco-search--compact):has(> .ghco-field ~ .ghco-field) > :is(input[type=hidden],script,template){margin:0;grid-column:1/-1;height:0}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) :is(.ghco-form,.ghco-box form):not(.ghco-search):not(.ghco-search--compact):has(> .ghco-field ~ .ghco-field) > :is(p,h1,h2,h3,h4,h5,h6,hr,div,table,ul,ol,details,section){grid-column:1/-1}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) :is(.ghco-form,.ghco-box form):not(.ghco-search):not(.ghco-search--compact):has(> .ghco-field ~ .ghco-field) > .ghco-field{grid-column:auto;display:flex;flex-direction:column;gap:6px}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) :is(.ghco-form,.ghco-box form):not(.ghco-search):not(.ghco-search--compact):has(> .ghco-field ~ .ghco-field) > .ghco-field:has(textarea,[type=file],.wp-editor-wrap,.ghco-typwahl,.ghc-cropper,label:nth-of-type(4)){grid-column:1/-1}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) :is(.ghco-form,.ghco-box form):not(.ghco-search):not(.ghco-search--compact):has(> .ghco-field ~ .ghco-field) > :is(button,.ghco-btn,.ghc-btn){justify-self:start;margin-top:4px}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) :is(.ghco-form,.ghco-box form):not(.ghco-search):not(.ghco-search--compact):has(> .ghco-field ~ .ghco-field) .ghco-field > label{margin:0;font-weight:600;font-size:var(--gh-fs-md,14px);color:var(--gh-ink,#1b222b)}

/* --- 2c. Klebende Aktionsleiste bei langen Formularen ---
   Wer unten angekommen ist, soll nicht nach dem Knopf suchen. */
:is(:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe):has(> label:nth-of-type(6),.ghc-panel2,> fieldset),:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) :is(.ghco-form,.ghco-box form):not(.ghco-search):not(.ghco-search--compact):has(> .ghco-field ~ .ghco-field):has(> .ghco-field:nth-of-type(6))) > :last-child:has(> [type=submit]){grid-column:1/-1;position:sticky;bottom:0;z-index:5;display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:8px 0 0;padding:12px 0;background:color-mix(in srgb,var(--gh-surface,#fff) 86%,transparent);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-top:1px solid var(--gh-line,#dfe5eb)}
:is(:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe),:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) :is(.ghco-form,.ghco-box form):not(.ghco-search):not(.ghco-search--compact):has(> .ghco-field ~ .ghco-field))[data-gh-dirty="1"] > :last-child:has(> [type=submit])::before{content:"Ungespeicherte Änderungen";font-size:13px;font-weight:400;color:var(--gh-muted,#566471);margin-right:auto}

/* --- 3. Knoepfe ---
   Die Knopf-Familie steht seit Kit 590 im Kern (ghc_knopf_css) und gilt dort
   fuer jede Seite - hier griff sie nur innerhalb der GuideHub-Bereiche. */

/* --- 3b. Meldungen und Hinweise --- */
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-fehler{display:flex;align-items:flex-start;gap:6px;flex:0 0 100%;margin-top:6px;font-size:13px;line-height:1.35;color:var(--gh-danger,#b91c1c)}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-fehler::before{content:"";flex:0 0 auto;width:15px;height:15px;margin-top:1px;border-radius:50%;background:var(--gh-danger,#b91c1c) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M8 4v5M8 11.5v.5' stroke='%23fff' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") center/contain no-repeat}
:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) :is(.ghc-hint,.ghco-hint,.ghc-rest){display:block;flex:0 0 100%;margin-top:4px;font-size:13px;color:var(--gh-muted,#566471)}

/* --- 3c. Hinweis am unteren Rand (Entwurf wiederhergestellt) --- */
/* Ueber der klebenden Aktionsleiste, nicht darauf. */
.ghf-toast{position:fixed;left:50%;bottom:92px;transform:translateX(-50%);z-index:100000;display:flex;align-items:center;gap:12px;max-width:min(92vw,560px);padding:12px 14px 12px 16px;border-radius:var(--gh-r-xl,12px);background:var(--gh-ink,#1b222b);color:#fff;font-size:14px;line-height:1.35;box-shadow:var(--gh-sch-3,0 12px 32px rgba(27,34,43,.18));animation:ghf-auf .25s ease}
.ghf-toast button{background:transparent;border:1px solid rgba(255,255,255,.35);color:#fff;border-radius:999px;padding:6px 12px;font:inherit;font-size:13px;font-weight:600;cursor:pointer;min-height:32px}
.ghf-toast button:hover{background:rgba(255,255,255,.12)}
.ghf-toast button[aria-label]{border:0;padding:4px 8px;font-size:18px;line-height:1}
@keyframes ghf-auf{from{opacity:0;transform:translate(-50%,8px)}to{opacity:1;transform:translate(-50%,0)}}

/* --- 4. Ruecksicht --- */
@media (prefers-reduced-motion:reduce){:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) :is(input,select,textarea,button,.ghc-btn,.ghco-btn,.ghc-panel2),.ghf-toast{transition:none!important;animation:none!important}}
@media (max-width:640px){:root{--ghf-gap-y:14px;--ghf-gap-x:14px}:is(:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe),:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) :is(.ghco-form,.ghco-box form):not(.ghco-search):not(.ghco-search--compact):has(> .ghco-field ~ .ghco-field)) > :is(button,.ghc-btn,.ghco-btn){width:100%;justify-self:stretch}:is(.ghweb-main,.ghapp-content,.ghc,.ghco-box,.ghm-wrap,.ghc-dashboard,.gh-directory) .ghc-form.ghc-form:not(.ghc-inline):has(> label ~ label,> p ~ p > label,> .ghc-grid2,> .ghom-grid2,> .ghco-grid2,> fieldset,> .ghc-wizard,> .ghc-panel2,> .ghc-spalte,> .ghc-feldgruppe) fieldset{padding:14px 14px 0}}