: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 .1s}button:hover,.knopf:hover{background:var(--akzent-dunkel)}button:active,.knopf:active{transform:scale(.97)}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;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:0 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{position:relative;z-index:1}.hauptnav a.active{color:var(--akzent-text)}.nav-markierung{position:absolute;top:0;left:0;z-index:0;border-radius:12px;pointer-events:none;background:var(--akzent-hell);transition:opacity .2s}.nav-markierung.gleitet{transition:transform .35s cubic-bezier(.3,.7,.2,1),width .35s cubic-bezier(.3,.7,.2,1),opacity .2s}.nav-markierung.aus{opacity:0}.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:0 32px}.marke img{height:46px}.hauptnav{position:relative;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:none}.nav-markierung{border-radius:var(--radius-klein);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}@media (hover: hover){.kachel:hover{box-shadow:var(--schatten-hoch);transform:translateY(-3px)}}.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-laedt{margin-bottom:16px}.galerie-laedt .skelett-bild{border-radius:var(--radius);height:clamp(200px,45vw,300px);aspect-ratio:auto}.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{overflow-x:clip;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}.ranking-hinweis{margin:0 0 12px}.ranking-sortierung{display:grid;gap:4px;margin-bottom:12px;max-width:360px}.ranking-liste{list-style:none;margin:0;padding:0;display:grid;gap:10px}.ranking-zeile{padding:12px 14px;border-radius:var(--radius-klein);background:var(--flaeche-leise);min-width:0}.ranking-name{display:block;font-weight:650;margin-bottom:8px;overflow-wrap:anywhere}.ranking-werte{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px 12px;margin:0}.ranking-werte dt{color:var(--leise);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.ranking-werte dd{margin:0;font-weight:650;overflow-wrap:anywhere}.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}.scheinwerfer-rahmen{position:relative;--licht-kern: rgba(245, 158, 11, .75);--licht-rand: rgba(251, 191, 36, 0);--fern-mitte: rgba(234, 88, 12, .95);--fern-kern: rgba(245, 158, 11, .95);--fern-rand: rgba(245, 158, 11, 0)}:root[data-theme=dark] .scheinwerfer-rahmen,.start .scheinwerfer-rahmen{--licht-kern: rgba(255, 246, 214, .9);--licht-rand: rgba(255, 246, 214, 0);--fern-mitte: #fff;--fern-kern: rgba(255, 248, 215, .95);--fern-rand: rgba(255, 248, 215, 0)}.scheinwerfer{position:absolute;right:96%;top:48%;width:75%;height:0;pointer-events:none;opacity:0;transform-origin:100% 50%}.scheinwerfer:before,.scheinwerfer:after{content:"";position:absolute;right:0;top:0;width:100%;aspect-ratio:2.6 / 1;transform-origin:100% 50%;background:radial-gradient(ellipse 22% 30% at 100% 50%,var(--licht-kern),var(--licht-rand) 100%),linear-gradient(to left,var(--licht-kern),var(--licht-rand) 92%);clip-path:polygon(100% 44%,100% 56%,0 100%,0 0)}@media (max-width: 480px){.scheinwerfer{width:40%}}.scheinwerfer:before{transform:translateY(-50%) rotate(-9deg)}.scheinwerfer:after{transform:translateY(-50%) rotate(1deg) scaleX(1.7) scaleY(.85);opacity:0;background:radial-gradient(ellipse 14% 22% at 100% 50%,var(--fern-mitte),var(--fern-rand) 100%),radial-gradient(ellipse 40% 45% at 100% 50%,var(--fern-kern),var(--fern-rand) 100%),linear-gradient(to left,var(--fern-kern),var(--fern-rand) 95%);clip-path:polygon(100% 40%,100% 60%,0 100%,0 0)}.scheinwerfer.licht{animation:scheinwerfer-an 2s ease-out var(--licht-start) both}.scheinwerfer.licht:after{animation:lichthupe 2s linear var(--licht-start) both}.anmeldung-animiert .karte{animation:anmeldung-karte .35s ease-out both}.anmeldung-animiert .anmeldung-logo-rahmen{animation:auto-einfahrt 3s cubic-bezier(.3,.55,.25,1) .1s both}.anmeldung-animiert .anmeldung-logo{animation:auto-fahrt-unschaerfe 3s ease-out .1s both}.anmeldung-animiert .scheinwerfer{--licht-start: 2.75s}.anmeldung-animiert .anmeldung-logo-rahmen:after{animation:anmeldung-glanz .6s ease-in-out 4.3s both}.anmeldung-animiert h1{animation:anmeldung-von-unten .3s ease-out .85s both}.anmeldung-animiert .formular>label,.anmeldung-animiert .formular>button{animation:anmeldung-von-unten .3s ease-out var(--feld-start, .9s) both}.anmeldung-animiert .formular>label+label{--feld-start: .95s}.anmeldung-animiert .formular>button{--feld-start: 1s}.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 auto-einfahrt{0%{transform:translate(calc(50vw + 100%))}to{transform:none}}@keyframes auto-fahrt-unschaerfe{0%{filter:var(--logo-filter) blur(4px);transform:skew(-6deg)}55%{filter:var(--logo-filter) blur(1.5px);transform:skew(-2deg)}85%{filter:var(--logo-filter) blur(0);transform:rotate(1.2deg)}to{filter:var(--logo-filter) blur(0);transform:none}}@keyframes scheinwerfer-an{0%{opacity:0}6%{opacity:.7}10%{opacity:.3}16%,82%{opacity:1}to{opacity:0}}@keyframes lichthupe{0%,26%{opacity:0}28%,35%{opacity:1}37%,45%{opacity:0}47%,54%{opacity:1}56%,to{opacity: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)}}.fortschritt{display:flex;align-items:center;gap:10px;min-width:0}.fortschrittsbalken{flex:1;min-width:60px;height:8px;border-radius:999px;background:var(--flaeche-leise);border:1px solid var(--rand);overflow:hidden}.fortschrittsfuellung{display:block;height:100%;border-radius:999px;background:var(--akzent)}.fortschritt-text{flex:none;font-size:.85rem;font-weight:600;color:var(--leise);white-space:nowrap}.fortschritt-kurz{gap:8px}.fortschritt-kurz .fortschrittsbalken{height:6px}.fortschritt-kurz .fortschritt-text{font-size:.8rem}.arbeitsstand{margin-top:16px}.arbeitsstand-kopf{display:grid;gap:10px;margin-bottom:8px}.arbeitsstand-kopf h2{margin:0}.schrittliste{list-style:none;margin:0;padding:0}.schrittliste li{border-bottom:1px solid var(--rand)}.schrittliste li:last-child{border-bottom:0}.schritt{display:grid;grid-template-columns:24px minmax(0,1fr);align-items:center;column-gap:14px;row-gap:0;min-height:56px;padding:8px 4px;cursor:pointer;border-radius:var(--radius-klein)}.schritt:hover{background:var(--flaeche-leise)}.schritt input[type=checkbox]{width:24px;height:24px;grid-row:1 / span 2}.schritt-text{font-weight:600;overflow-wrap:anywhere}.schritt-meta{grid-column:2;font-size:.85rem;color:var(--leise);overflow-wrap:anywhere}.schritt-erledigt .schritt-text{color:var(--text)}@media (min-width: 640px){.arbeitsstand-kopf{grid-template-columns:auto minmax(160px,280px);align-items:center;justify-content:space-between}}.liste .zeile .kosten-text{flex:1 1 220px;min-width:0;overflow-wrap:anywhere}.beleg-aktionen{display:flex;flex-wrap:wrap;gap:8px}.beleg-aktionen .knopf,.beleg-aktionen label.knopf{min-height:44px;padding:6px 14px;font-size:.9rem;position:relative}.beleg-anhaengen:focus-within{outline:3px solid var(--akzent-text);outline-offset:2px}.beleg-anhaengen input.datei-versteckt{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;min-height:0;padding:0;border:0;opacity:0;cursor:pointer;font-size:0}.beleg-anhaengen input.datei-versteckt:disabled{cursor:not-allowed}.start{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;align-items:center;justify-content:center;overflow:hidden;background:var(--kopf);cursor:pointer;animation:start-weg 4s ease-in both}.start-logo{display:block;width:min(260px,64vw);animation:auto-einfahrt 2s cubic-bezier(.3,.55,.25,1) .1s both}.start-logo img{display:block;width:100%;height:auto;filter:invert(1);animation:start-unschaerfe 2s ease-out .1s both}.start .scheinwerfer{--licht-start: 1.95s}@keyframes start-weg{0%,90%{opacity:1}to{opacity:0;visibility:hidden}}@keyframes start-unschaerfe{0%{filter:invert(1) blur(4px);transform:skew(-6deg)}55%{filter:invert(1) blur(1.5px);transform:skew(-2deg)}85%{filter:invert(1) blur(0);transform:rotate(1.2deg)}to{filter:invert(1) blur(0);transform:none}}.start~.inhalt .seitenwechsel{animation-delay:3.5s}.seitenwechsel{animation:seite-rein .3s ease-out backwards}@keyframes seite-rein{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.kachel-rein{animation:kachel-rein .4s cubic-bezier(.2,.7,.2,1) var(--verzoegerung, 0ms) backwards}@keyframes kachel-rein{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}.nur-vorlesen{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.skelett{pointer-events:none}.skelett-bild,.skelett-zeile{position:relative;overflow:hidden;background:var(--flaeche-leise)}.skelett-bild{aspect-ratio:4 / 3}.skelett-zeile{height:14px;border-radius:6px}.skelett-klein{height:22px;border-radius:999px}.skelett-gross{height:24px;margin-top:8px}.skelett-bild:after,.skelett-zeile:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;transform:translate(-100%);background:linear-gradient(90deg,transparent,var(--schimmer, rgba(255, 255, 255, .75)),transparent);animation:schimmern 1.3s ease-in-out infinite}:root[data-theme=dark] .skelett{--schimmer: rgba(255, 255, 255, .07)}@keyframes schimmern{to{transform:translate(100%)}}.gespeichert{display:inline-flex;align-items:center;gap:8px;margin:0 0 12px;color:var(--gruen);font-weight:600}.aktionsleiste .gespeichert{margin:0}.gespeichert svg{width:24px;height:24px;flex:none;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.gespeichert-kreis{--strich: 63;stroke-dasharray:63;animation:strich-zeichnen .35s ease-out both}.gespeichert-haken{--strich: 16;stroke-dasharray:16;stroke-width:2.4;animation:strich-zeichnen .25s ease-out .3s both}.gespeichert span{animation:gespeichert-text .3s ease-out .1s both}@keyframes strich-zeichnen{0%{stroke-dashoffset:var(--strich)}to{stroke-dashoffset:0}}@keyframes gespeichert-text{0%{opacity:0;transform:translate(-6px)}to{opacity:1;transform:none}}.schritt{position:relative}.schritt input[type=checkbox]{position:absolute;left:4px;top:50%;width:24px;height:24px;margin:-12px 0 0;opacity:0}.haken-feld{grid-row:1 / span 2;display:grid;place-items:center;width:24px;height:24px;border-radius:7px;border:2px solid var(--rand-stark);background:var(--flaeche);transition:background-color .2s,border-color .2s}.haken-feld svg{width:18px;height:18px;fill:none;stroke:#fff;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}.haken-feld path{stroke-dasharray:20;stroke-dashoffset:20;transition:stroke-dashoffset .3s ease-out .08s}.schritt input:checked+.haken-feld{background:var(--akzent);border-color:var(--akzent);animation:haken-pop .3s ease-out}.schritt input:checked+.haken-feld path{stroke-dashoffset:0}.schritt input:focus-visible+.haken-feld{outline:3px solid var(--akzent-text);outline-offset:2px}.schritt input:disabled+.haken-feld{opacity:.6}@keyframes haken-pop{50%{transform:scale(1.15)}}.fortschrittsfuellung{transform-origin:0 50%;transition:width .5s cubic-bezier(.3,.7,.2,1);animation:balken-wachsen .6s cubic-bezier(.3,.7,.2,1) backwards}@keyframes balken-wachsen{0%{transform:scaleX(0)}}@media (prefers-reduced-motion: reduce){:where(*:not(.start,.start *,.anmeldung-logo-rahmen,.anmeldung-logo-rahmen *)),:where(*:not(.start,.start *,.anmeldung-logo-rahmen,.anmeldung-logo-rahmen *)):before,:where(*:not(.start,.start *,.anmeldung-logo-rahmen,.anmeldung-logo-rahmen *)):after{animation-duration:.01ms!important;animation-delay:0s!important;animation-iteration-count:1!important;transition-duration:.01ms!important;transition-delay:0s!important;scroll-behavior:auto!important}.skelett-bild:after,.skelett-zeile:after{display:none}}.ansicht-knopf.aktiv{background:var(--gelb);color:#111827;border-color:var(--gelb)}.ansicht-knopf.aktiv:hover{background:#f59e0b}.kunden-streifen{flex:0 0 calc(100% + 32px);margin:0 -16px -8px;padding:6px 16px;display:flex;flex-wrap:wrap;justify-content:center;gap:0 8px;background:var(--gelb);color:#111827;font-size:.85rem;font-weight:500;text-align:center}.kunden-streifen strong{font-weight:800;text-transform:uppercase;letter-spacing:.04em}@media (min-width: 768px){.kunden-streifen{flex-basis:calc(100% + 64px);margin:0 -32px -10px}}.nutzerliste .rolle{font-size:.85rem;font-weight:600;color:var(--leise)}.schrittanzeige ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px}.schrittanzeige li{position:relative;display:grid;justify-items:center;gap:4px;min-width:0;color:var(--leise);font-size:.8rem;font-weight:600;text-align:center}.schrittanzeige li+li:before{content:"";position:absolute;top:15px;right:calc(50% + 18px);width:calc(100% - 32px);height:2px;background:var(--rand-stark)}.schrittanzeige li.erledigt+li:before{background:var(--akzent)}.schritt-punkt{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;border:2px solid var(--rand-stark);background:var(--flaeche);color:var(--leise);font-size:.9rem;font-weight:700;transition:background-color .2s,border-color .2s,color .2s}.schrittanzeige li.erledigt .schritt-punkt{background:var(--akzent);border-color:var(--akzent);color:#fff}.schrittanzeige li.aktuell .schritt-punkt{border-color:var(--akzent-text);color:var(--akzent-text);box-shadow:0 0 0 4px var(--fokus-schein)}.schrittanzeige li.aktuell{color:var(--text)}.schritt-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.schritt-kurz{display:none;margin:8px 0 0;text-align:center;font-size:.9rem;color:var(--leise)}@media (max-width: 479px){.schritt-label{display:none}.schritt-kurz{display:block}}.kaufvertrag h1:focus{outline:none}.schritt-inhalt{animation:schritt-rein .25s ease-out}@keyframes schritt-rein{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.kaufvertrag .gruppen{margin-top:0}.ausweis-fotos{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr));gap:12px;margin-bottom:12px}.ausweis-foto{display:grid;gap:8px;min-width:0}.ausweis-foto img,.ausweis-leer{width:100%;aspect-ratio:85.6 / 54;object-fit:cover;border-radius:var(--radius-klein);background:var(--flaeche-leise)}.ausweis-leer{display:flex;align-items:center;justify-content:center;border:1.5px dashed var(--rand-stark);color:var(--leise);font-weight:600}.datei-knopf{position:relative;white-space:normal;text-align:center}.datei-knopf:focus-within{outline:3px solid var(--akzent-text);outline-offset:2px}.unsichtbar{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.ocr-fortschritt{display:grid;gap:6px;margin:0 0 12px;font-weight:600;color:var(--meldung-text)}.ocr-fortschritt progress{width:100%;height:10px;accent-color:var(--akzent)}.technik{margin:0 0 12px;font-size:.875rem;color:var(--leise)}.technik summary{cursor:pointer;font-weight:600}.technik pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:240px;overflow:auto;padding:8px;border-radius:var(--radius-klein);background:var(--flaeche-leise);font-size:.75rem}.formular label.unsicher input,.formular label.unsicher textarea{border-color:var(--box-gelb-rand);background-color:var(--box-gelb-bg);box-shadow:0 0 0 1px var(--box-gelb-rand)}.pruefen-hinweis{display:inline-flex;align-items:center;gap:6px;font-size:.85rem;font-weight:600;color:var(--box-gelb-text)}.pruefen-hinweis:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--ampel-gelb-punkt)}.janein{border:0;margin:0;padding:0;min-width:0;display:grid;gap:6px}.janein legend{padding:0;margin-bottom:6px;font-size:.9rem;font-weight:600;color:var(--label)}.umschalter{display:flex;gap:6px;padding:4px;border-radius:var(--radius-klein);background:var(--reiter-bg)}.umschalter button{flex:1 1 0;min-width:0;min-height:44px;padding:8px 10px;white-space:normal;line-height:1.2}.umschalter button.zweit{background:transparent;border-color:transparent;color:var(--leise)}.umschalter button.zweit:hover{background:var(--reiter-hover);color:var(--text)}.platzhalter-zelle{display:none}@media (min-width: 640px){.platzhalter-zelle{display:block}}.pdf-vorschau{width:100%;height:75vh;min-height:480px;border:1px solid var(--rand);border-radius:var(--radius-klein);background:#fff;margin-bottom:12px}.unterschrift{display:grid;gap:12px}.unterschrift-text{display:grid;gap:2px}.unterschrift-text strong{font-size:1.05rem}.unterschrift-text span{color:var(--leise)}.unterschrift-flaeche{position:relative;border:2px solid var(--rand-stark);border-radius:var(--radius);background:#fff;overflow:hidden}.unterschrift-canvas{display:block;width:100%;height:clamp(200px,42vh,320px);touch-action:none;cursor:crosshair;user-select:none;-webkit-user-select:none}.unterschrift-linie{position:absolute;left:6%;right:6%;bottom:26%;border-bottom:1.5px dashed #9ca3af;pointer-events:none}.unterschrift-platzhalter{position:absolute;left:6%;bottom:calc(26% + 8px);color:#6b7280;font-size:1rem;font-weight:500;pointer-events:none}.vertraege{margin-bottom:16px}.vertraege h3{margin-top:0}.vertrag-zeile{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 14px}.vertrag-text{display:grid;min-width:0;flex:1 1 200px;overflow-wrap:anywhere}.vertrag-zeile .zeile .knopf,.vertrag-zeile .zeile button{min-height:44px;padding:8px 14px}.knopf.deaktiviert{opacity:.55;pointer-events:none}.gruppen-feldsatz{display:grid;gap:16px;min-width:0;margin:0;padding:0;border:0}.gruppen-feldsatz:disabled{opacity:.6}.vertragstext{max-height:50vh;overflow-y:auto;padding:12px 14px;border:1px solid var(--rand);border-radius:var(--radius-klein);background:var(--flaeche);margin-bottom:12px;-webkit-overflow-scrolling:touch}.vertragstext:focus-visible{outline:2px solid var(--akzent);outline-offset:2px}.vertragsabschnitt+.vertragsabschnitt{margin-top:14px}.vertragsabschnitt h3{font-size:1rem;margin:0 0 6px}.vertragsabschnitt p,.vertragsabschnitt ul{margin:0 0 8px}.vertragsabschnitt ul{padding-left:20px}.unterschrift-liste{margin:0 0 12px;padding-left:22px;display:grid;gap:4px}.verlauf-karte{margin-top:16px}.verlauf-liste{margin:0 0 8px}.verlauf-liste li{padding:12px 0;min-height:44px}.verlauf-zeit{display:block;font-size:.85rem;color:var(--leise);font-variant-numeric:tabular-nums}.verlauf-kopf{margin-top:2px}.verlauf-fahrzeug{display:inline-flex;align-items:center;min-height:44px;font-weight:600;color:var(--akzent-text);overflow-wrap:anywhere;text-decoration:none}.verlauf-fahrzeug:hover{text-decoration:underline}.verlauf-geloescht{color:var(--leise);font-weight:500;font-style:italic}.verlauf-text{margin:2px 0 0;overflow-wrap:anywhere}.verlauf-mehr{width:100%;min-height:44px;margin-top:8px}
