:root{--primary:#603ebc;--primary-container:#7959d7;--primary-fixed:#e8ddff;--on-primary:#fff;--on-primary-fixed:#20005e;--surface:#fcf9f8;--surface-container-low:#f6f3f2;--surface-container:#f4eff4;--surface-container-lowest:#fff;--surface-container-highest:#e5e2e1;--on-surface:#1c1b1b;--outline-variant:#cac4d5;--primary-50:#f3eeff;--primary-100:#e8ddff;--primary-200:#d4c4ff;--primary-300:#b49cff;--primary-400:#9575f5;--primary-500:#603ebc;--primary-600:#5434a6;--primary-700:#452a8d;--primary-800:#382274;--primary-900:#20005e;--neutral-50:#fcf9f8;--neutral-100:#f6f3f2;--neutral-200:#e5e2e1;--neutral-300:#cac4d5;--neutral-400:#9a929e;--neutral-500:#6e6779;--neutral-600:#564f60;--neutral-700:#433d4c;--neutral-800:#302b38;--neutral-900:#1c1b1b;--success-text:#1e8308;--success-icon:#37d80a;--success-bg:#eeffe5;--danger-text:#d71c00;--danger-icon:#ff4023;--danger-bg:#fff2f0;--warning-icon:#ffc107;--warning-bg:#fff8e1;--info-icon:#00c1eb;--info-bg:#e1f7fe;--font-display:"Plus Jakarta Sans", system-ui, -apple-system, sans-serif;--font-body:"Inter", system-ui, -apple-system, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, monospace;--shadow-sm:0px 4px 8px #1c1b1b08;--shadow-md:0px 12px 24px #1c1b1b0a;--shadow-lg:0px 20px 40px #1c1b1b0f;--radius-sm:4px;--radius-md:.75rem;--radius-lg:1.25rem;--radius-xl:1.5rem;--radius-pill:9999px}[data-theme=dark]{--neutral-50:#0a0e19;--neutral-100:#0c1427;--neutral-200:#1e2a3e;--neutral-800:#d5d9e2;--neutral-900:#eceef2}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.illustration{border-radius:var(--radius-hero)}.input{width:100%;font-family:var(--font-body);color:var(--on-surface);background-color:var(--surface-container-highest);border-radius:var(--radius-md);border:1px solid #cac4d526;padding:.625rem .875rem;font-size:.9375rem;transition:background-color .15s,box-shadow .15s,border-color .15s;display:block}.input:focus{background-color:var(--surface-container-lowest);border-color:#0000;outline:none;box-shadow:0 0 0 2px #603ebc40}.input::placeholder{color:var(--neutral-400)}.prose h1{font-family:var(--font-display);color:var(--neutral-900);margin-top:2rem;margin-bottom:1rem;font-size:2rem;font-weight:700;line-height:1.2}.prose h2{font-family:var(--font-display);color:var(--neutral-900);margin-top:1.75rem;margin-bottom:.75rem;font-size:1.5rem;font-weight:700;line-height:1.2}.prose h3{font-family:var(--font-display);color:var(--neutral-900);margin-top:1.5rem;margin-bottom:.5rem;font-size:1.25rem;font-weight:700;line-height:1.3}.prose h4{font-family:var(--font-display);margin-top:1.25rem;margin-bottom:.5rem;font-size:1.125rem;font-weight:600}.prose p{margin-bottom:1rem;line-height:1.7}.prose ul,.prose ol{margin-bottom:1rem;padding-left:1.5rem}.prose ul{list-style-type:disc}.prose ol{list-style-type:decimal}.prose li{margin-bottom:.375rem;line-height:1.6}.prose a{color:var(--primary-600);text-decoration:underline}.prose a:hover{color:var(--primary-700)}.prose blockquote{border-left:3px solid var(--primary-300);color:var(--neutral-600);margin-bottom:1rem;padding-left:1rem;font-style:italic}.prose code{font-family:var(--font-mono);background:var(--neutral-100);border-radius:var(--radius-sm);padding:.125rem .375rem;font-size:.875em}.prose pre{background:var(--neutral-900);color:#eceef2;border-radius:var(--radius-md);margin-bottom:1rem;padding:1rem;overflow-x:auto}.prose pre code{color:inherit;background:0 0;padding:0}.prose table{border-collapse:collapse;width:100%;margin-bottom:1rem}.prose th,.prose td{border:1px solid var(--neutral-200);text-align:left;padding:.625rem .875rem;font-size:.875rem}.prose th{background:var(--neutral-50);font-weight:600}.prose img{border-radius:var(--radius-md);max-width:100%;height:auto;margin:1rem 0}.prose hr{border:none;border-top:1px solid var(--neutral-200);margin:2rem 0}.data-table{font-variant-numeric:tabular-nums}.data-table th{font-family:var(--font-body);text-transform:uppercase;letter-spacing:.05em;color:var(--neutral-500);font-size:.8125rem;font-weight:600}.faq-item details summary{cursor:pointer;list-style:none}.faq-item details summary::-webkit-details-marker{display:none}.faq-item details[open] .faq-chevron{transform:rotate(180deg)}.htmx-indicator{display:none}.htmx-request .htmx-indicator,.htmx-request.htmx-indicator{display:inline-block}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spinner{animation:.75s linear infinite spin}.admin-layout{min-height:100vh;display:flex}.admin-sidebar{background:var(--neutral-900);width:260px;color:var(--neutral-300);z-index:100;flex-shrink:0;position:fixed;top:0;bottom:0;left:0;overflow-y:auto}.admin-main{flex:1;margin-left:260px}@media (max-width:1024px){.admin-sidebar{display:none}.admin-sidebar.open{display:block}.admin-main{margin-left:0}}.status-dot{border-radius:50%;width:10px;height:10px;display:inline-block}.status-dot-up{background-color:#37d80a}.status-dot-down{background-color:#ff4023}.status-dot-pending{background-color:#ffc107}.transition-default{transition:all .15s}.karussell-spur{scroll-snap-type:x mandatory;scroll-behavior:smooth;overscroll-behavior-x:contain;display:flex;overflow-x:auto}.karussell--bereit .karussell-spur{scrollbar-width:none;-ms-overflow-style:none}.karussell--bereit .karussell-spur::-webkit-scrollbar{display:none}.karussell-folie{scroll-snap-align:start;scroll-snap-stop:always;flex:0 0 100%;min-width:0}.karussell-folie img{aspect-ratio:4/3;object-fit:contain}.karussell-bedienung{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.karussell-marken{flex-wrap:wrap;gap:.25rem;display:flex}.karussell-marke{font-family:var(--font-body);color:var(--on-surface-variant);border-radius:var(--radius-btn);cursor:pointer;background:0 0;border:none;align-items:baseline;gap:.5rem;padding:.625rem 1.125rem;font-size:.9375rem;font-weight:600;transition:background-color .15s,color .15s;display:inline-flex}.karussell-marke:hover{color:var(--on-surface);background-color:var(--surface-container-lowest)}.karussell-marke[aria-current=true]{color:var(--on-surface);background-color:var(--surface-container-lowest);box-shadow:var(--shadow-sm)}.karussell-marke-nr{font-family:var(--font-mono);color:var(--primary);font-size:.75rem}.karussell-pfeile{gap:.5rem;display:flex}.karussell-pfeil{width:2.75rem;height:2.75rem;color:var(--on-surface);background-color:var(--surface-container-lowest);border-radius:var(--radius-btn);cursor:pointer;box-shadow:var(--shadow-sm);border:none;justify-content:center;align-items:center;font-size:1.25rem;transition:filter .15s,opacity .15s;display:inline-flex}.karussell-pfeil:hover{filter:brightness(.97)}.karussell:not(.karussell--bereit) .karussell-bedienung{display:none}@media (prefers-reduced-motion:reduce){.karussell-spur{scroll-behavior:auto}}.karussell-aktionen{flex-wrap:wrap;align-items:center;gap:.75rem 1.5rem;margin-top:2rem;display:flex}.karussell-link{font-family:var(--font-body);color:var(--primary);font-weight:600;display:inline-block}.karussell-link:hover{text-decoration:underline}.funktionsliste{flex-direction:column;gap:.5rem;display:flex}.funktionsliste-zeile{background-color:var(--surface-container-lowest);padding:1.75rem}@media (min-width:48rem){.funktionsliste-zeile{padding:2.5rem 3rem}}.funktionsliste-zeile:first-child{border-radius:var(--radius-xl) var(--radius-xl) var(--radius-md) var(--radius-md)}.funktionsliste-zeile:last-child{border-radius:var(--radius-md) var(--radius-md) var(--radius-xl) var(--radius-xl)}.funktionsliste-zeile:not(:first-child):not(:last-child){border-radius:var(--radius-md)}.tarife-steuerung{flex-wrap:wrap;justify-content:center;align-items:center;gap:.75rem 1rem;margin-top:1.5rem;display:flex}.tarife-rabatt{font-family:var(--font-body);color:var(--success-text);background-color:var(--success-bg);border-radius:var(--radius-btn);align-items:center;gap:.5rem;padding:.5rem 1.125rem;font-size:.9375rem;font-weight:600;display:inline-flex}.tarife-umschalter{background-color:var(--surface-container-low);border-radius:var(--radius-btn);gap:.25rem;padding:.25rem;display:inline-flex}.tarife-umschalter button{font-family:var(--font-body);color:var(--on-surface-variant);border-radius:var(--radius-btn);cursor:pointer;background:0 0;border:none;padding:.5rem 1.5rem;font-size:.9375rem;font-weight:600;transition:background-color .15s,color .15s}.tarife-umschalter button[aria-pressed=true]{color:var(--on-primary);background:var(--gradient-cta)}.tarife-karten{grid-template-columns:1fr;gap:1.5rem;margin-top:2rem;display:grid}@media (min-width:64rem){.tarife-karten{grid-template-columns:.85fr 1fr 1fr}}.tarif-karte{background-color:var(--surface-container-lowest);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);flex-direction:column;padding:2rem;display:flex}.tarif-karte--hervor{box-shadow:var(--shadow-lg)}.tarif-kopf{justify-content:space-between;align-items:center;gap:1rem;min-height:2.75rem;display:flex}.tarif-kopf h3{font-family:var(--font-display);letter-spacing:-.02em;color:var(--on-surface);font-size:1.75rem;font-weight:700}.tarif-stufen{background-color:var(--surface-container-low);border-radius:var(--radius-btn);gap:.125rem;padding:.1875rem;display:inline-flex}.tarif-stufen button{font-family:var(--font-body);color:var(--on-surface-variant);border-radius:var(--radius-btn);cursor:pointer;background:0 0;border:none;padding:.3125rem .75rem;font-size:.8125rem;font-weight:600}.tarif-stufen button[aria-pressed=true]{color:var(--on-primary);background:var(--gradient-cta)}.tarif-stufe{flex-direction:column;flex:1;display:flex}.tarif-stufe[hidden]{display:none}.tarif-stufe-hinweis{color:var(--on-surface-variant);margin-top:.5rem;font-size:.875rem}.tarif-preis{margin-top:1.75rem}.tarif-preis[hidden]{display:none}.tarif-betrag strong{font-family:var(--font-display);letter-spacing:-.03em;color:var(--on-surface);font-size:2.5rem;font-weight:700}.tarif-betrag span{color:var(--on-surface-variant);font-size:1rem}.tarif-zeitraum{color:var(--on-surface-variant);margin-top:.25rem;font-size:.9375rem}.tarif-rabattzeile{color:var(--success-text);margin-top:.375rem;font-size:.9375rem;font-weight:600}.tarif-belege{font-family:var(--font-body);color:var(--on-surface);margin-top:1.75rem;font-size:1.0625rem;font-weight:600}.tarif-belege-tag{color:var(--on-surface-variant);margin-top:.125rem;font-size:.9375rem}.tarif-stufe p:last-of-type{margin-bottom:2rem}.tarif-cta{text-align:center;font-family:var(--font-body);color:var(--on-primary);background:var(--gradient-cta);border-radius:var(--radius-btn);margin-top:auto;padding:.875rem 1.5rem;font-size:.9375rem;font-weight:600;transition:filter .15s;display:block}.tarif-cta--sekundaer{color:var(--on-surface);background:var(--surface-container-low)}.tarif-cta:hover{filter:brightness(1.05)}.tarife-fussnote{text-align:center;color:var(--on-surface-variant);margin-top:2.5rem;font-size:.875rem}.pride-corner{pointer-events:none;z-index:700;background:linear-gradient(#e40303 0 16.666%,#ff8c00 16.666% 33.333%,#ffed00 33.333% 50%,#008026 50% 66.666%,#004dff 66.666% 83.333%,#750787 83.333% 100%);width:300px;height:48px;position:fixed;top:38px;left:-88px;transform:rotate(-45deg);box-shadow:0 6px 18px #1c1b1b38}header .max-w-7xl{padding-left:4rem}@media (max-width:1380px){.pride-corner{width:280px;height:38px;top:36px;left:-85px}header .max-w-7xl{padding-left:8rem}}@media (max-width:640px){.pride-corner{width:250px;height:30px;top:25px;left:-85px}header .max-w-7xl{padding-left:5.5rem}}.faq-eintrag+.faq-eintrag{background-image:linear-gradient(to right, var(--outline-variant,#cac4d5), var(--outline-variant,#cac4d5));background-position:0 0;background-repeat:no-repeat;background-size:100% 1px}.faq-eintrag summary::-webkit-details-marker{display:none}.faq-eintrag summary:hover,.faq-eintrag[open] summary{background-color:var(--surface-container-low,#f6f3f2)}.faq-eintrag[open] .faq-zeichen{transform:rotate(45deg)}.faq-zeichen{transition:transform .15s}nav[aria-label="Zu einem Bereich springen"] a:hover{background-color:var(--surface-container-low,#f6f3f2)}.archiv-hinweis{color:var(--on-surface);background-color:var(--warning-bg);border-radius:var(--radius-lg);align-items:baseline;gap:.625rem;margin-bottom:2rem;padding:1rem 1.25rem;font-size:.9375rem;display:flex}.archiv-hinweis a{color:var(--primary);white-space:nowrap;font-weight:600}