:root{color-scheme:light;--hintergrund: #f4f5f7;--flaeche: #ffffff;--flaeche-leise: #f1f3f6;--text: #111827;--leise: #4b5563;--label: #374151;--rand: #e5e7eb;--rand-stark: #d1d5db;--tinte: #111827;--kopf: #111827;--akzent: #1d4ed8;--akzent-dunkel: #1e3a8a;--akzent-hell: #eff6ff;--akzent-text: #1d4ed8;--meldung-text: #1e3a8a;--fokus-schein: rgba(29, 78, 216, .2);--gruen: #166534;--gelb: #fbbf24;--rot: #b91c1c;--rot-hell: #fef2f2;--verfuegbar-bg: #166534;--verkauft-bg: #f3f4f6;--verkauft-text: #374151;--chip-text: #374151;--reiter-bg: #e9ecf1;--reiter-hover: rgba(255, 255, 255, .6);--kein-bild-von: #f8fafc;--kein-bild-bis: #e9ecf1;--logo-filter: invert(0);--select-pfeil: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%234b5563' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");--ampel-gruen-text: #4b5563;--ampel-gruen-punkt: #16a34a;--ampel-gelb-text: #92400e;--ampel-gelb-punkt: #f59e0b;--ampel-rot-text: #b91c1c;--ampel-rot-punkt: #dc2626;--box-gelb-bg: #fffbeb;--box-gelb-rand: #fbbf24;--box-gelb-text: #78350f;--box-rot-bg: #fef2f2;--box-rot-rand: #fca5a5;--box-rot-text: #991b1b;--radius: 14px;--radius-klein: 10px;--schatten: 0 1px 2px rgba(17, 24, 39, .06), 0 4px 16px rgba(17, 24, 39, .06);--schatten-hoch: 0 2px 4px rgba(17, 24, 39, .08), 0 12px 32px rgba(17, 24, 39, .12);--nav-hoehe: 64px;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:16px;line-height:1.5;color:var(--text);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}:root[data-theme=dark]{color-scheme:dark;--hintergrund: #0e131b;--flaeche: #171d27;--flaeche-leise: #222a37;--text: #e8ecf2;--leise: #a3adbb;--label: #cbd2dc;--rand: #2b3341;--rand-stark: #3d4655;--tinte: #ffffff;--kopf: #0a0e14;--akzent: #2563eb;--akzent-dunkel: #1d4ed8;--akzent-hell: #1c2a4d;--akzent-text: #93b4fd;--meldung-text: #c7d7fe;--fokus-schein: rgba(147, 180, 253, .25);--kopf-rand: #222a37;--gruen: #4ade80;--rot: #f87171;--rot-hell: #3b1d22;--verfuegbar-bg: #15803d;--verkauft-bg: #2b3341;--verkauft-text: #e5e7eb;--chip-text: #d1d5db;--reiter-bg: #0e131b;--reiter-hover: rgba(255, 255, 255, .06);--kein-bild-von: #1c2330;--kein-bild-bis: #121822;--logo-filter: invert(1);--select-pfeil: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23a3adbb' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");--ampel-gruen-text: #a3adbb;--ampel-gruen-punkt: #22c55e;--ampel-gelb-text: #fbbf24;--ampel-gelb-punkt: #fbbf24;--ampel-rot-text: #f87171;--ampel-rot-punkt: #ef4444;--box-gelb-bg: #2d2412;--box-gelb-rand: #a16207;--box-gelb-text: #fcd34d;--box-rot-bg: #3b1d22;--box-rot-rand: #b91c1c;--box-rot-text: #fca5a5;--schatten: 0 0 0 1px #232b38, 0 4px 16px rgba(0, 0, 0, .35);--schatten-hoch: 0 0 0 1px #2b3341, 0 12px 32px rgba(0, 0, 0, .5)}*{box-sizing:border-box}html{overflow-x:clip}body{margin:0;background:var(--hintergrund);min-height:100dvh}img{max-width:100%}h1{font-size:1.5rem;line-height:1.25;font-weight:700;letter-spacing:-.02em;margin:0 0 16px}h2{font-size:1.05rem;line-height:1.3;font-weight:650;letter-spacing:-.01em;margin:0 0 12px}h3{font-size:.95rem;font-weight:650;margin:16px 0 6px}p{margin:0 0 12px}a{color:var(--akzent-text);text-underline-offset:3px}:focus-visible{outline:3px solid var(--akzent-text);outline-offset:2px}input:not([type=checkbox]):not([type=radio]):not([type=file]),select,textarea{font:inherit;width:100%;min-height:48px;padding:11px 14px;border:1px solid var(--rand-stark);border-radius:var(--radius-klein);background-color:var(--flaeche);color:var(--text);transition:border-color .15s,box-shadow .15s}textarea{min-height:120px;resize:vertical}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:40px;cursor:pointer;background-image:var(--select-pfeil);background-repeat:no-repeat;background-position:right 14px center}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--akzent-text);box-shadow:0 0 0 3px var(--fokus-schein)}input[aria-invalid=true],select[aria-invalid=true],textarea[aria-invalid=true]{border-color:var(--rot)}input:disabled,select:disabled{background-color:var(--flaeche-leise);color:var(--leise);cursor:not-allowed}input[type=file]{font:inherit;width:100%;min-height:48px;padding:8px;color:var(--leise);border:1.5px dashed var(--rand-stark);border-radius:var(--radius-klein);background:var(--flaeche-leise);cursor:pointer}input[type=file]::file-selector-button{font:inherit;font-weight:600;margin-right:12px;min-height:36px;padding:6px 14px;border:0;border-radius:8px;background:var(--kopf);color:#fff;cursor:pointer}input[type=checkbox]{width:20px;height:20px;margin:0;accent-color:var(--akzent);cursor:pointer;flex:none}button,.knopf{font:inherit;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:10px 20px;border:1px solid transparent;border-radius:var(--radius-klein);background:var(--akzent);color:#fff;cursor:pointer;text-decoration:none;white-space:nowrap;transition:background-color .15s,box-shadow .15s,transform .05s}button:hover,.knopf:hover{background:var(--akzent-dunkel)}button:active,.knopf:active{transform:translateY(1px)}button.zweit,.knopf.zweit{background:var(--flaeche);color:var(--text);border-color:var(--rand-stark)}button.zweit:hover,.knopf.zweit:hover{background:var(--flaeche-leise)}button:disabled{opacity:.55;cursor:not-allowed;transform:none}.textlink{display:inline-flex;align-items:center;min-height:44px;font-weight:600;text-decoration:none}.textlink:hover{text-decoration:underline}.kopf{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:8px 16px;padding-top:max(8px,env(safe-area-inset-top));background:var(--kopf);color:#fff;border-bottom:1px solid var(--kopf-rand, transparent)}.marke{display:inline-flex;align-items:center;min-height:44px}.marke img{display:block;height:40px;width:auto;filter:invert(1)}.abmelden{min-height:44px;padding:8px 14px;background:transparent;color:#fff;border:1px solid rgba(255,255,255,.35);font-weight:500}.abmelden:hover{background:#ffffff1a}.hauptnav{position:fixed;left:0;right:0;bottom:0;z-index:20;display:flex;justify-content:space-around;padding:6px 8px calc(6px + env(safe-area-inset-bottom));background:var(--flaeche);border-top:1px solid var(--rand);box-shadow:0 -4px 20px #11182714}.hauptnav a{flex:1;max-width:120px;min-height:52px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border-radius:12px;color:var(--leise);text-decoration:none;font-size:.75rem;font-weight:600}.hauptnav a svg{width:24px;height:24px}.hauptnav a.active{color:var(--akzent-text);background:var(--akzent-hell)}.inhalt{max-width:1120px;margin:0 auto;padding:20px 16px calc(var(--nav-hoehe) + 28px + env(safe-area-inset-bottom))}@media (min-width: 768px){.kopf{padding:10px 32px;gap:32px}.marke img{height:46px}.hauptnav{position:static;flex:1;justify-content:flex-start;gap:4px;padding:0;background:none;border:0;box-shadow:none}.hauptnav a{flex:none;max-width:none;min-height:44px;flex-direction:row;gap:8px;padding:0 14px;color:#d1d5db;font-size:.95rem;font-weight:500}.hauptnav a svg{width:18px;height:18px}.hauptnav a:hover{color:#fff;background:#ffffff14}.hauptnav a.active{color:#fff;background:#ffffff24}.inhalt{padding:32px 32px 48px}h1{font-size:1.85rem}}.karte{background:var(--flaeche);border-radius:var(--radius);box-shadow:var(--schatten);padding:20px}.karte+.karte,.karte+.gruppen,.gruppen+.karte{margin-top:16px}.seitenkopf{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}.seitenkopf h1{margin:0}.feldfehler,.fehler{color:var(--rot)}.feldfehler{font-size:.85rem;font-weight:500}.feld-hinweis{font-size:.85rem;font-weight:400;color:var(--leise)}p.fehler{background:var(--rot-hell);border-radius:var(--radius-klein);padding:12px 14px}.erfolg{color:var(--gruen);font-weight:500}.hinweis{color:var(--leise)}.zeile{display:flex;gap:8px 12px;align-items:center;flex-wrap:wrap}.liste{list-style:none;padding:0;margin:0 0 16px}.liste li{padding:12px 0;border-bottom:1px solid var(--rand)}.liste li:last-child{border-bottom:0}.leer{text-align:center;padding:40px 20px;color:var(--leise);background:var(--flaeche);border-radius:var(--radius);box-shadow:var(--schatten)}.badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:.8rem;font-weight:650;line-height:1.3;white-space:nowrap}.badge:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}.badge-verfuegbar{background:var(--verfuegbar-bg);color:#fff}.badge-reserviert{background:var(--gelb);color:#111827}.badge-verkauft{background:var(--verkauft-bg);color:var(--verkauft-text);border:1px solid var(--rand-stark)}.chips{display:flex;flex-wrap:wrap;gap:6px;padding:0;margin:0;list-style:none}.chips li{padding:3px 10px;border-radius:999px;background:var(--flaeche-leise);color:var(--chip-text);font-size:.8rem;font-weight:500}.kein-bild{position:relative;width:100%;aspect-ratio:4 / 3;display:flex;align-items:flex-end;justify-content:center;padding-bottom:14%;border-radius:var(--radius);color:var(--leise);font-size:.85rem;font-weight:500;background:linear-gradient(160deg,var(--kein-bild-von) 0%,var(--kein-bild-bis) 100%)}.kein-bild:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:url(/logo.png) center 38% / 62% auto no-repeat;opacity:.3;pointer-events:none;filter:var(--logo-filter)}.filter{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}.filter select{flex:0 1 190px;min-width:0}.filter input{flex:1 1 220px;min-width:0}.filter select.sortierung{flex:1 1 230px}.raster{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,270px),1fr));gap:20px}.kachel{display:flex;flex-direction:column;overflow:hidden;color:inherit;text-decoration:none;background:var(--flaeche);border-radius:var(--radius);box-shadow:var(--schatten);transition:box-shadow .2s,transform .2s}.kachel:hover{box-shadow:var(--schatten-hoch);transform:translateY(-2px)}.kachel-bild{position:relative}.kachel-bild img{width:100%;aspect-ratio:4 / 3;object-fit:cover;display:block;background:var(--flaeche-leise)}.kachel-bild .kein-bild{border-radius:0}.kachel-bild .badge{position:absolute;top:12px;left:12px;box-shadow:0 2px 8px #11182740}.kachel-text{display:flex;flex-direction:column;gap:10px;padding:14px 16px 16px;flex:1}.kachel-titel{font-size:1.05rem;font-weight:650;line-height:1.3;letter-spacing:-.01em}.kachel-fuss{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 8px;margin-top:auto;padding-top:4px}.preis{font-size:1.3rem;font-weight:750;letter-spacing:-.02em;color:var(--tinte)}.preis-offen{font-size:1rem;font-weight:600;color:var(--leise)}.standzeit{font-size:.8rem;color:var(--leise);white-space:nowrap}.preis-label{font-size:.8rem;font-weight:600;color:var(--leise)}.preis-zusatz{font-size:.9rem;font-weight:500;color:var(--text)}.zurueck{margin-bottom:8px}.galerie{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;margin:0 -16px 16px;padding:0 16px;scrollbar-width:thin}.galerie img{flex:0 0 88%;max-width:720px;aspect-ratio:4 / 3;object-fit:cover;border-radius:var(--radius);scroll-snap-align:center;box-shadow:var(--schatten);background:var(--flaeche-leise)}.galerie img:only-child{flex-basis:100%}.galerie-leer{margin-bottom:16px;aspect-ratio:auto;height:clamp(200px,45vw,300px);padding-bottom:20px}.galerie-leer:before{background-size:auto 42%;background-position:center 40%}.kopfblock{display:grid;gap:14px}.kopfblock h1{margin:0}.kopfblock-titel{display:grid;justify-items:start;gap:10px;min-width:0}.kopfblock-titel h1{overflow-wrap:anywhere}.kopfblock .preis{font-size:1.75rem}.kopfblock-aktionen{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;padding-top:14px;border-top:1px solid var(--rand)}.kopfblock-aktionen label{display:grid;gap:6px;font-size:.85rem;font-weight:600;color:var(--leise);flex:1 1 200px;max-width:280px}.reiter{display:flex;gap:4px;margin:20px 0 16px;padding:4px;background:var(--reiter-bg);border-radius:12px}.reiter button{flex:1;min-height:44px;padding:8px 10px;background:transparent;color:var(--leise);border:0;box-shadow:none}.reiter button:hover{background:var(--reiter-hover);color:var(--text)}.reiter button[aria-pressed=true]{background:var(--flaeche);color:var(--text);box-shadow:0 1px 3px #1118271f}.gruppen{display:grid;gap:16px;margin-top:16px}.werte{display:grid;grid-template-columns:1fr;margin:0}.werte>div{display:grid;grid-template-columns:minmax(0,45%) minmax(0,1fr);gap:12px;padding:10px 0;border-bottom:1px solid var(--rand)}.werte dt{color:var(--leise);font-size:.9rem}.werte dd{margin:0;font-weight:500;overflow-wrap:anywhere}.notizen{margin-top:16px}.notizen p{white-space:pre-wrap;margin:0}.daten{width:100%;border-collapse:collapse;margin-top:16px}.daten th,.daten td{text-align:left;padding:10px 4px;border-bottom:1px solid var(--rand);vertical-align:top}.daten th{color:var(--leise);font-weight:400;width:45%}.daten td{font-weight:600}@media (min-width: 768px){.galerie{margin:0 0 20px;padding:0}.galerie img{flex-basis:62%}.kopfblock{grid-template-columns:1fr auto;align-items:start}.kopfblock-aktionen{grid-column:1 / -1}.kopfblock .preis-block{text-align:right}.werte{grid-template-columns:1fr 1fr;column-gap:32px}}.formular{display:grid;gap:16px}.formular label,label.feld{display:grid;gap:6px;font-size:.9rem;font-weight:600;color:var(--label)}.formular .breit{grid-column:1 / -1}.formular label.haken,label.haken{display:flex;align-items:center;gap:12px;min-height:48px;padding:0 14px;align-self:end;border:1px solid var(--rand-stark);border-radius:var(--radius-klein);background:var(--flaeche);font-size:.95rem;font-weight:500;color:var(--text);cursor:pointer}label.haken:hover{background:var(--flaeche-leise)}.formularseite{display:grid;gap:16px}.formularseite>h1{margin:0}.formularseite>.karte+.karte{margin-top:0}.gruppenkarte h2{padding-bottom:12px;margin-bottom:16px;border-bottom:1px solid var(--rand)}.meldung{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:12px 14px;border-radius:var(--radius-klein);background:var(--akzent-hell);color:var(--meldung-text);margin:0}.aktionsleiste{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.aktionsleiste button[type=submit]{min-width:160px}.fotoliste{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin-bottom:16px}.fotoliste>div{display:grid;gap:8px}.fotoliste img{width:100%;aspect-ratio:4 / 3;object-fit:cover;border-radius:var(--radius-klein)}.fotoliste .zeile{gap:6px}.fotoliste button{flex:1;min-height:44px;padding:6px 10px;font-size:.85rem}.fotoliste .hinweis{flex:1;font-size:.85rem;font-weight:600;text-align:center}@media (min-width: 640px){.formular.zweispaltig{grid-template-columns:1fr 1fr;column-gap:20px}}.anmeldung{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:24px 16px}.schmal{width:100%;max-width:420px;margin:40px auto}.anmeldung .schmal{margin:0}.anmeldung .karte{padding:32px 24px;box-shadow:var(--schatten-hoch)}.anmeldung-logo{display:block;width:220px;max-width:70%;height:auto;margin:0 auto 8px;filter:var(--logo-filter)}.anmeldung h1{text-align:center;font-size:1.35rem;margin-bottom:4px}.zahlen{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:16px}.zahlen .karte+.karte{margin-top:0}.kpi{position:relative;overflow:hidden;display:grid;gap:4px}.kpi:before{content:"";position:absolute;inset:0 0 auto 0;height:4px;background:var(--akzent)}.kpi-titel{color:var(--leise);font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.zahl{font-size:2rem;font-weight:750;letter-spacing:-.03em;line-height:1.2;color:var(--tinte);overflow-wrap:anywhere}.kpi-info{color:var(--leise);font-size:.85rem}.nutzerliste li{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px}.nutzer-name{flex:1 1 200px;min-width:0;display:grid;overflow-wrap:anywhere}.nutzer-name strong{font-weight:600}.nutzer-name span{font-size:.85rem}.nutzerliste select{width:auto;min-width:120px}.nutzerliste label.haken{align-self:auto}.kopf-aktionen{display:flex;align-items:center;gap:8px;flex:none}.thema-knopf{width:44px;min-width:44px;min-height:44px;padding:0;background:transparent;color:#fff;border:1px solid rgba(255,255,255,.35)}.thema-knopf:hover{background:#ffffff1a}.thema-knopf svg{width:20px;height:20px}.ampel{display:inline-flex;align-items:center;gap:6px}.ampel:before{content:"";flex:none;width:8px;height:8px;border-radius:50%;background:var(--punkt)}.ampel-gruen{color:var(--ampel-gruen-text);--punkt: var(--ampel-gruen-punkt)}.ampel-gelb{color:var(--ampel-gelb-text);--punkt: var(--ampel-gelb-punkt);font-weight:600}.ampel-rot{color:var(--ampel-rot-text);--punkt: var(--ampel-rot-punkt);font-weight:700}.kachel-hinweise{display:flex;flex-wrap:wrap;gap:6px}.badge-hu-bald,.badge-gelb{background:var(--gelb);color:#111827}.badge-hu-abgelaufen,.badge-rot{background:#b91c1c;color:#fff}.hinweisboxen{display:grid;gap:10px;margin-top:16px}.hinweisbox{margin:0;padding:12px 14px;border-radius:var(--radius-klein);border-left:4px solid;font-weight:500}.hinweisbox strong{font-weight:700}.hinweisbox-gelb{background:var(--box-gelb-bg);border-color:var(--box-gelb-rand);color:var(--box-gelb-text)}.hinweisbox-rot{background:var(--box-rot-bg);border-color:var(--box-rot-rand);color:var(--box-rot-text)}.achtung{margin-top:16px}.achtung h2{display:flex;align-items:center;gap:8px}.achtung-liste{margin:0}.achtung-liste li{padding:0}.achtung-liste a{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px 12px;min-height:52px;padding:10px 4px;color:inherit;text-decoration:none;border-radius:8px}.achtung-liste a:hover{background:var(--flaeche-leise)}.achtung-titel{font-weight:600;color:var(--akzent-text);overflow-wrap:anywhere}.achtung-gruende{display:flex;flex-wrap:wrap;gap:6px}.achtung-leer{margin:0}.anmeldung-logo-rahmen{position:relative;display:block;width:220px;max-width:70%;margin:0 auto 8px}.anmeldung-logo-rahmen .anmeldung-logo{width:100%;max-width:none;margin:0}.anmeldung-logo-rahmen:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:0;background:linear-gradient(105deg,transparent 38%,rgba(147,197,253,.95) 50%,transparent 62%) 0 0 / 250% 100% no-repeat;-webkit-mask:url(/logo.png) center / 100% auto no-repeat;mask:url(/logo.png) center / 100% auto no-repeat}.anmeldung-animiert .karte{animation:anmeldung-karte .35s ease-out both}.anmeldung-animiert .anmeldung-logo{animation:anmeldung-logo .65s cubic-bezier(.2,.7,.2,1) .08s both}.anmeldung-animiert .anmeldung-logo-rahmen:after{animation:anmeldung-glanz .7s ease-in-out .5s both}.anmeldung-animiert h1{animation:anmeldung-von-unten .4s ease-out .45s both}.anmeldung-animiert .formular>label,.anmeldung-animiert .formular>button{animation:anmeldung-von-unten .4s ease-out .55s both}.anmeldung-animiert.raus .karte{animation:anmeldung-raus .3s ease-in forwards}@keyframes anmeldung-karte{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes anmeldung-logo{0%{opacity:0;transform:translate(-28px);filter:var(--logo-filter) blur(8px)}to{opacity:1;transform:none;filter:var(--logo-filter) blur(0)}}@keyframes anmeldung-glanz{0%{opacity:1;background-position:100% 0}85%{opacity:1}to{opacity:0;background-position:0 0}}@keyframes anmeldung-von-unten{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes anmeldung-raus{to{opacity:0;transform:translateY(-8px) scale(.97)}}@media (prefers-reduced-motion: reduce){.anmeldung-animiert .karte,.anmeldung-animiert .anmeldung-logo,.anmeldung-animiert .anmeldung-logo-rahmen:after,.anmeldung-animiert h1,.anmeldung-animiert .formular>label,.anmeldung-animiert .formular>button,.anmeldung-animiert.raus .karte{animation:none}}
