:root{--color-orange:#ffb500;--color-green:#157f3c;--color-red:#c0271d;--color-black:#000;--color-white:#fff;--color-surface:var(--color-white);--color-text:var(--color-black);--color-on-accent:var(--color-black);--color-focus:var(--color-black);--space-1:.25rem;--space-2:.5rem;--space-3:1rem;--space-4:1.5rem;--space-5:2rem;--space-6:3rem;--font-size-sm:.875rem;--font-size-md:1rem;--font-size-lg:1.25rem;--font-size-xl:1.5rem;--font-size-2xl:2rem;--font-size-3xl:2.5rem;--radius-sm:.25rem;--radius-md:.5rem;--radius-pill:9999px;--border-width-sm:1px;--border-width-md:2px;--color-scrim:#0009;--tap-target-min:2.75rem;--content-max-width:40rem;--z-nav:10;--z-banner:20;--z-menu:30}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%}body{background-color:var(--color-surface);min-width:320px;color:var(--color-text);font-family:system-ui,sans-serif;font-size:var(--font-size-md);margin:0;line-height:1.5}h1,h2,h3,p{margin:0 0 var(--space-3) 0}.content-width{max-width:var(--content-max-width);padding-inline:var(--space-3);margin-inline:auto}:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}img{max-width:100%;display:block}.tab-bar{padding-bottom:env(safe-area-inset-bottom)}.app-main{padding-bottom:calc(var(--tap-target-min) + var(--space-2) * 2 + var(--border-width-sm) + var(--font-size-md) * 1.5 + env(safe-area-inset-bottom))}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.eyebrow{margin:0 0 var(--space-1) 0;font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.08em;opacity:.7;font-weight:700}.callout{margin:0 0 var(--space-3) 0;border-inline-start:var(--space-1) solid var(--color-black);padding-inline-start:var(--space-3);font-weight:700}.banner-success{margin:0 0 var(--space-3) 0;padding:var(--space-2) var(--space-3);border:var(--border-width-sm) solid var(--color-black);border-inline-start:var(--space-2) solid var(--color-green);border-radius:var(--radius-sm);font-weight:700}.poster-card{background-color:var(--color-surface);border:var(--border-width-sm) solid var(--color-black);border-radius:var(--radius-md);box-shadow:6px 6px 0 0 var(--color-black)}.rallye-row{row-gap:var(--space-1);border:var(--border-width-sm) solid var(--color-black);border-radius:var(--radius-md);color:var(--color-text);flex-wrap:wrap;text-decoration:none;display:flex}.rallye-row:hover,.rallye-row:focus-visible{border-width:var(--border-width-md)}.rallye-number-badge{min-inline-size:var(--space-5);min-block-size:var(--space-5);border:var(--border-width-sm) solid var(--color-black);border-radius:var(--radius-pill);flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.btn-primary,.btn-secondary{min-inline-size:var(--tap-target-min);min-block-size:var(--tap-target-min);padding-inline:var(--space-4);border-radius:var(--radius-md);border:var(--border-width-sm) solid var(--color-black);font-size:var(--font-size-md);cursor:pointer;justify-content:center;align-items:center;font-family:inherit;font-weight:700;text-decoration:none;display:inline-flex}.btn-primary{background-color:var(--color-orange);color:var(--color-on-accent)}.btn-secondary{background-color:var(--color-surface);color:var(--color-text)}.btn-primary:hover,.btn-secondary:hover{background-color:var(--color-black);color:var(--color-white)}.rallye-toolbar{justify-content:space-between;gap:var(--space-2);display:flex}.rallye-toolbar .btn-primary,.rallye-toolbar .btn-secondary{flex:1 1 0}.btn-nav{min-inline-size:var(--tap-target-min);min-block-size:var(--tap-target-min);padding-inline:var(--space-2);border-radius:var(--radius-md);border:var(--border-width-sm) solid var(--color-black);background-color:var(--color-surface);color:var(--color-text);font-size:var(--font-size-lg);cursor:pointer;flex:none;justify-content:center;align-items:center;font-family:inherit;font-weight:700;display:inline-flex}.btn-nav:hover:not(:disabled){background-color:var(--color-black);color:var(--color-white)}.btn-nav:disabled{opacity:.4;cursor:not-allowed}.back-link{align-items:center;gap:var(--space-1);min-block-size:var(--tap-target-min);color:var(--color-text);font-weight:700;text-decoration:none;display:inline-flex}.back-link:hover{text-decoration:underline}.textlink{color:var(--color-text);text-decoration:underline}.sortier-liste{margin:0 0 var(--space-4) 0;gap:var(--space-2);flex-direction:column;padding:0;list-style:none;display:flex}.sortier-zeile{align-items:center;gap:var(--space-2);padding:var(--space-2);border:var(--border-width-sm) solid var(--color-black);border-radius:var(--radius-md);background-color:var(--color-surface);display:flex}.sortier-zeile[data-wird-gezogen=true]{border-width:var(--border-width-md);box-shadow:6px 6px 0 0 var(--color-black)}.sortier-anfasser{min-inline-size:var(--tap-target-min);min-block-size:var(--tap-target-min);touch-action:none;cursor:grab;font-size:var(--font-size-lg);-webkit-user-select:none;user-select:none;flex:none;justify-content:center;align-self:stretch;align-items:center;line-height:1;display:inline-flex}.sortier-anfasser:active{cursor:grabbing}.sortier-position{flex:none}.sortier-bild{aspect-ratio:4/5;inline-size:var(--space-6);border:var(--border-width-sm) solid var(--color-black);border-radius:var(--radius-sm);object-fit:cover;flex:none;block-size:auto}.sortier-bezeichnung{overflow-wrap:anywhere;flex:auto;min-inline-size:0;font-weight:700}.inhaltsbild-knopf{cursor:zoom-in;min-inline-size:var(--tap-target-min);min-block-size:var(--tap-target-min);background:0 0;border:0;flex:none;padding:0;display:inline-flex}.inhaltsbild-knopf>.sortier-bild{inline-size:var(--space-6)}.bild-lightbox-bild{object-fit:contain;block-size:auto;max-block-size:100%;inline-size:auto;max-inline-size:100%}.lageplan-umriss-knopf{border:var(--border-width-sm) solid var(--color-black);border-radius:var(--radius-md);cursor:zoom-in;inline-size:100%;min-block-size:var(--tap-target-min);background:0 0;margin-block-end:var(--space-4);padding:0;display:block;overflow:hidden}.lageplan-umriss-buehne{aspect-ratio:1600/1022;inline-size:100%;position:relative}.lageplan-umriss-buehne--gross{inline-size:min(100%, calc((100dvh - (var(--space-4) * 2 + var(--space-3) + var(--tap-target-min))) * 1600 / 1022));max-inline-size:100%}.lageplan-umriss-basis,.lageplan-umriss-flaeche,.lageplan-umriss-kontur{object-fit:fill;pointer-events:none;block-size:100%;inline-size:100%;position:absolute;inset:0}.lageplan-umriss-flaeche{filter:url(#lageplan-umriss-flaeche);opacity:.3}.lageplan-umriss-kontur{filter:url(#lageplan-umriss-kontur)}.lageplan-umriss-filter{block-size:0;inline-size:0;position:absolute}.sortier-zusatz{font-size:var(--font-size-sm);opacity:.75;font-weight:400;display:block}.sortier-schaltflaechen{gap:var(--space-1);flex:none;display:flex}.sortier-verschieben{min-inline-size:var(--tap-target-min);min-block-size:var(--tap-target-min);border:var(--border-width-sm) solid var(--color-black);border-radius:var(--radius-md);background-color:var(--color-surface);color:var(--color-text);font-size:var(--font-size-md);cursor:pointer;justify-content:center;align-items:center;padding:0;font-family:inherit;display:inline-flex}.sortier-verschieben:hover:not([aria-disabled=true]){background-color:var(--color-black);color:var(--color-white)}.sortier-verschieben[aria-disabled=true]{opacity:.4;cursor:not-allowed}.lageplan-viewport{touch-action:none;block-size:55vh;max-block-size:30rem;inline-size:100%;border:var(--border-width-sm) solid var(--color-black);border-radius:var(--radius-md);background-color:var(--color-surface);-webkit-user-select:none;user-select:none;margin-block-end:var(--space-3);position:relative;overflow:hidden}.lageplan-bild{transform-origin:0 0;will-change:transform;pointer-events:none;max-inline-size:none;position:absolute;inset-block-start:0;inset-inline-start:0}.lageplan-fadenkreuz{inline-size:var(--space-6);block-size:var(--space-6);pointer-events:none;position:absolute;inset-block-start:50%;inset-inline-start:50%;transform:translate(-50%,-50%)}.lageplan-zoomleiste{gap:var(--space-2);margin-block-end:var(--space-2);display:flex}.lageplan-marker{pointer-events:none;position:absolute;transform:translate(-50%,-50%)}.lageplan-marker-label{white-space:nowrap;padding-inline:var(--space-1);background-color:var(--color-surface);border:var(--border-width-sm) solid var(--color-black);border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-weight:700;position:absolute;inset-block-start:100%;inset-inline-start:50%;transform:translate(-50%)}@media (prefers-reduced-motion:reduce){.sortier-zeile{transition:none}}@media (prefers-reduced-motion:no-preference){.rallye-row{transition:border-width .12s}.btn-primary,.btn-secondary,.btn-nav{transition:background-color .12s,color .12s}}.zeitplan-kopf{margin-block-end:var(--space-5)}.zeitplan-datum{border-block-end:var(--space-1) solid var(--color-orange);font-size:var(--font-size-xl);margin:0;padding-block-end:var(--space-1);font-weight:700;display:inline-block}.zeitplan{margin:0;padding:0;list-style:none;position:relative}.zeitplan-punkt{padding-block-end:var(--space-5);padding-inline-start:var(--space-5);position:relative}.zeitplan-punkt:last-child{padding-block-end:0}.zeitplan-punkt:not(:last-child):after{content:"";inline-size:var(--border-width-md);background-color:var(--color-black);position:absolute;inset-block-start:calc(var(--space-1) + var(--space-3) / 2);inset-block-end:calc(-1 * (var(--space-1) + var(--space-3) / 2));inset-inline-start:calc(var(--space-3) / 2 - var(--border-width-md) / 2)}.zeitplan-punkt:before{content:"";z-index:1;inline-size:var(--space-3);block-size:var(--space-3);border-radius:var(--radius-pill);border:var(--border-width-md) solid var(--color-black);background-color:var(--color-orange);position:absolute;inset-block-start:var(--space-1);inset-inline-start:0}.zeitplan-zeit{margin:0 0 var(--space-1) 0;font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.08em;opacity:.7;font-weight:700}.zeitplan-text{font-size:var(--font-size-lg);margin:0;font-weight:700}.zeitplan-detail{margin:var(--space-2) 0 0 0;border-inline-start:var(--space-1) solid var(--color-black);padding-inline-start:var(--space-3);font-weight:700}
