﻿*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }

/*! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com*/*,:after,:before{border:0 solid #e5e7eb;box-sizing:border-box}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;font-family:Inter,system-ui,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-tap-highlight-color:transparent}body{line-height:inherit;margin:0}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:Fira Code,monospace;font-feature-settings:normal;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{color:inherit;font-family:inherit;font-feature-settings:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{color:#9ca3af;opacity:1}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]:where(:not([hidden=until-found])){display:none}html{-webkit-text-size-adjust:100%}body{min-height:100%;--tw-bg-opacity:1;background-color:rgb(248 250 252/var(--tw-bg-opacity,1));font-family:Inter,system-ui,sans-serif;--tw-text-opacity:1;color:rgb(30 41 59/var(--tw-text-opacity,1));-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body.dark :is(body,.bg-slate-50\/80,.bg-slate-50\/90,.bg-slate-100,.bg-slate-200):not(#pages-container *){background-color:#1e293b}body.dark :is(.text-slate-900,body,h1,h2,h3,h4):not(#pages-container *){color:#f8fafc}h1,h2,h3,h4{--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}body.dark :is(h1,.text-slate-800,h1,h2,h3,h4):not(#pages-container *),body.dark :is(h2,.text-slate-800,h1,h3,h4):not(#pages-container *),body.dark :is(h3,.text-slate-800,h1,h2,h4):not(#pages-container *),body.dark :is(h4,.text-slate-800,h1,h2,h3):not(#pages-container *){color:#f8fafc}:focus-visible{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);--tw-ring-opacity:1;--tw-ring-color:rgb(59 130 246/var(--tw-ring-opacity,1));--tw-ring-offset-width:2px}.skip-link{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0);border-width:0;white-space:nowrap}.skip-link:focus{height:auto;margin:0;overflow:visible;position:static;width:auto;clip:auto;border-radius:0;left:.5rem;position:fixed;top:.5rem;white-space:normal;z-index:100;--tw-bg-opacity:1;background-color:rgb(37 99 235/var(--tw-bg-opacity,1));font-weight:700;padding:.5rem 1rem;--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.\!container{width:100%!important}.container{width:100%}@media (min-width:640px){.\!container{max-width:640px!important}.container{max-width:640px}}@media (min-width:768px){.\!container{max-width:768px!important}.container{max-width:768px}}@media (min-width:1024px){.\!container{max-width:1024px!important}.container{max-width:1024px}}@media (min-width:1280px){.\!container{max-width:1280px!important}.container{max-width:1280px}}@media (min-width:1536px){.\!container{max-width:1536px!important}.container{max-width:1536px}}.container-page{margin-left:auto;margin-right:auto;max-width:72rem;padding-left:1rem;padding-right:1rem}@media (min-width:640px){.container-page{padding-left:1.5rem;padding-right:1.5rem}}@media (min-width:1024px){.container-page{padding-left:2rem;padding-right:2rem}}.container-wide{margin-left:auto;margin-right:auto;max-width:1700px;padding-left:1rem;padding-right:1rem}.section{border-top-width:1px;--tw-border-opacity:1;border-color:rgb(226 232 240/var(--tw-border-opacity,1));padding-bottom:3.5rem;padding-top:3.5rem}body.dark :is(.section,.border-slate-100,.border-slate-300):not(#pages-container *){border-color:#334155}.section-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}body.dark :is(.section-white,.bg-white\/95):not(#pages-container *){background-color:#16203a}.section-alt{--tw-bg-opacity:1;background-color:rgb(248 250 252/var(--tw-bg-opacity,1))}body.dark :is(.section-alt,.bg-slate-50\/80,.bg-slate-50\/90,.bg-slate-100,.bg-slate-200):not(#pages-container *){background-color:#1e293b}.card{border-radius:0;border-width:1px;--tw-border-opacity:1;border-color:rgb(226 232 240/var(--tw-border-opacity,1));--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1));padding:1.5rem;--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}body.dark :is(.card,.bg-white\/95):not(#pages-container *){background-color:#16203a}body.dark :is(.card,.border-slate-100,.border-slate-300):not(#pages-container *){border-color:#334155}.tile{border-radius:0;border-width:1px;display:block;--tw-border-opacity:1;border-color:rgb(226 232 240/var(--tw-border-opacity,1));--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1));padding:1.25rem;--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}body.dark :is(.tile,.bg-white\/95):not(#pages-container *){background-color:#16203a}body.dark :is(.tile,.border-slate-100,.border-slate-300):not(#pages-container *){border-color:#334155}.tile:hover{--tw-border-opacity:1;border-color:rgb(59 130 246/var(--tw-border-opacity,1));--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.tile h3{font-size:1rem;font-weight:700;line-height:1.5rem;margin-bottom:.25rem}.tile p{font-size:.875rem;line-height:1.25rem;line-height:1.625;--tw-text-opacity:1;color:rgb(71 85 105/var(--tw-text-opacity,1))}body.dark :is(.text-slate-700,.tile p,.prose-de,.prose-de p):not(#pages-container *){color:#cbd5e1}.\!badge,.badge,.badge-green{align-items:center;border-radius:0;display:inline-flex;font-size:.75rem;font-weight:600;gap:.375rem;line-height:1rem;padding:.25rem .75rem}.badge-green{border-width:1px;--tw-border-opacity:1;border-color:rgb(167 243 208/var(--tw-border-opacity,1));--tw-bg-opacity:1;background-color:rgb(236 253 245/var(--tw-bg-opacity,1));--tw-text-opacity:1;color:rgb(4 120 87/var(--tw-text-opacity,1))}body.dark :is(.badge-green,.bg-emerald-100):not(#pages-container *){background-color:#052e21}body.dark :is(.text-emerald-900,.text-emerald-800,.badge-green):not(#pages-container *){color:#6ee7b7}body.dark :is(.badge-green,.border-emerald-100):not(#pages-container *){border-color:#065f46}.badge-blue{align-items:center;border-radius:0;border-width:1px;display:inline-flex;font-size:.75rem;font-weight:600;gap:.375rem;line-height:1rem;padding:.25rem .75rem;--tw-border-opacity:1;border-color:rgb(191 219 254/var(--tw-border-opacity,1));--tw-bg-opacity:1;background-color:rgb(239 246 255/var(--tw-bg-opacity,1));--tw-text-opacity:1;color:rgb(29 78 216/var(--tw-text-opacity,1))}body.dark :is(.bg-brand-50,.bg-brand-100,.badge-blue,.bg-blue-100):not(#pages-container *){background-color:#12234a}body.dark :is(.text-brand-700,.text-brand-800,.badge-blue):not(#pages-container *){color:#93c5fd}body.dark :is(.border-brand-200,.badge-blue):not(#pages-container *){border-color:#1e3a8a}.badge-amber{align-items:center;border-radius:0;border-width:1px;display:inline-flex;font-size:.75rem;font-weight:600;gap:.375rem;line-height:1rem;padding:.25rem .75rem;--tw-border-opacity:1;border-color:rgb(253 230 138/var(--tw-border-opacity,1));--tw-bg-opacity:1;background-color:rgb(255 251 235/var(--tw-bg-opacity,1));--tw-text-opacity:1;color:rgb(146 64 14/var(--tw-text-opacity,1))}body.dark :is(.badge-amber,.bg-amber-100):not(#pages-container *){background-color:#3a2708}body.dark :is(.text-amber-900,.badge-amber,.text-amber-700):not(#pages-container *){color:#fcd34d}body.dark :is(.badge-amber,.border-amber-100):not(#pages-container *){border-color:#78350f}.note{border-radius:0;border-width:1px;--tw-border-opacity:1;border-color:rgb(226 232 240/var(--tw-border-opacity,1));--tw-bg-opacity:1;background-color:rgb(248 250 252/var(--tw-bg-opacity,1));font-size:.875rem;line-height:1.25rem;line-height:1.625;padding:1rem;--tw-text-opacity:1;color:rgb(71 85 105/var(--tw-text-opacity,1))}body.dark :is(.note,.bg-slate-50\/80,.bg-slate-50\/90,.bg-slate-100,.bg-slate-200):not(#pages-container *){background-color:#1e293b}body.dark :is(.text-slate-700,.note,.prose-de,.prose-de p):not(#pages-container *){color:#cbd5e1}body.dark :is(.note,.border-slate-100,.border-slate-300):not(#pages-container *){border-color:#334155}.note-warn{border-radius:0;border-width:1px;--tw-border-opacity:1;border-color:rgb(253 230 138/var(--tw-border-opacity,1));--tw-bg-opacity:1;background-color:rgb(255 251 235/var(--tw-bg-opacity,1));font-size:.875rem;line-height:1.25rem;line-height:1.625;padding:1rem;--tw-text-opacity:1;color:rgb(120 53 15/var(--tw-text-opacity,1))}body.dark :is(.note-warn,.bg-amber-100):not(#pages-container *){background-color:#3a2708}body.dark :is(.note-warn,.text-amber-800,.text-amber-700):not(#pages-container *){color:#fcd34d}body.dark :is(.note-warn,.border-amber-100):not(#pages-container *){border-color:#78350f}.note-legal{border-radius:0;border-width:1px;--tw-border-opacity:1;border-color:rgb(226 232 240/var(--tw-border-opacity,1));--tw-bg-opacity:1;background-color:rgb(241 245 249/var(--tw-bg-opacity,1));font-size:.75rem;line-height:1rem;line-height:1.625;padding:.75rem;--tw-text-opacity:1;color:rgb(100 116 139/var(--tw-text-opacity,1))}body.dark :is(.bg-slate-50,.bg-slate-50\/80,.bg-slate-50\/90,.note-legal,.bg-slate-200):not(#pages-container *){background-color:#1e293b}body.dark :is(.note-legal,.text-slate-400,.breadcrumbs):not(#pages-container *){color:#94a3b8}body.dark :is(.note-legal,.border-slate-100,.border-slate-300):not(#pages-container *){border-color:#334155}.prose-de{line-height:1.625;--tw-text-opacity:1;color:rgb(71 85 105/var(--tw-text-opacity,1))}body.dark :is(.text-slate-700,.prose-de,.prose-de,.prose-de p):not(#pages-container *){color:#cbd5e1}.prose-de>p:first-of-type{font-size:1.125rem;line-height:1.75rem;--tw-text-opacity:1;color:rgb(51 65 85/var(--tw-text-opacity,1))}body.dark :is(.prose-de>p:first-of-type,.text-slate-600,.prose-de,.prose-de p):not(#pages-container *){color:#cbd5e1}.prose-de h2{font-size:1.5rem;font-weight:900;line-height:2rem;margin-bottom:1rem;margin-top:3rem;scroll-margin-top:6rem;--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}body.dark :is(.prose-de h2,.text-slate-800,h1,h2,h3,h4):not(#pages-container *){color:#f8fafc}.prose-de h3{font-size:1.125rem;font-weight:700;line-height:1.75rem;margin-bottom:.5rem;margin-top:2rem;--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}body.dark :is(.prose-de h3,.text-slate-800,h1,h2,h3,h4):not(#pages-container *){color:#f8fafc}.prose-de p,.prose-de ul{margin-bottom:1rem}.prose-de ul{list-style-type:disc}.prose-de ul>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.375rem*var(--tw-space-y-reverse));margin-top:calc(.375rem*(1 - var(--tw-space-y-reverse)))}.prose-de ul{padding-left:1.5rem}.prose-de ol{list-style-type:decimal;margin-bottom:1rem}.prose-de ol>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.375rem*var(--tw-space-y-reverse));margin-top:calc(.375rem*(1 - var(--tw-space-y-reverse)))}.prose-de ol{padding-left:1.5rem}.prose-de a{font-weight:600;--tw-text-opacity:1;color:rgb(37 99 235/var(--tw-text-opacity,1))}body.dark .prose-de a:not(#pages-container *){color:#60a5fa}.prose-de a:hover{text-decoration-line:underline}.prose-de strong{font-weight:600;--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}body.dark :is(.prose-de strong,.text-slate-800,h1,h2,h3,h4):not(#pages-container *){color:#f8fafc}.prose-de code{border-radius:0;--tw-bg-opacity:1;background-color:rgb(241 245 249/var(--tw-bg-opacity,1));font-family:Fira Code,monospace;font-size:.85em;padding:.125rem .375rem}body.dark :is(.bg-slate-50,.bg-slate-50\/80,.bg-slate-50\/90,.prose-de code,.bg-slate-200):not(#pages-container *){background-color:#1e293b}.prose-de blockquote{border-left-width:4px;margin-bottom:1rem;margin-top:1rem;--tw-border-opacity:1;border-color:rgb(59 130 246/var(--tw-border-opacity,1));font-style:italic;padding-left:1rem;--tw-text-opacity:1;color:rgb(71 85 105/var(--tw-text-opacity,1))}body.dark :is(.text-slate-700,.prose-de blockquote,.prose-de,.prose-de p):not(#pages-container *){color:#cbd5e1}.prose-de table{border-collapse:collapse;font-size:.875rem;line-height:1.25rem;margin-bottom:1.5rem;margin-top:1.5rem;text-align:left;width:100%}.prose-de th{border-width:1px;--tw-border-opacity:1;border-color:rgb(226 232 240/var(--tw-border-opacity,1));--tw-bg-opacity:1;background-color:rgb(241 245 249/var(--tw-bg-opacity,1));font-weight:700;padding:.75rem;--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}body.dark :is(.bg-slate-50,.bg-slate-50\/80,.bg-slate-50\/90,.prose-de th,.bg-slate-200):not(#pages-container *){background-color:#1e293b}body.dark :is(.prose-de th,.text-slate-800,h1,h2,h3,h4):not(#pages-container *){color:#f8fafc}body.dark :is(.prose-de th,.border-slate-100,.border-slate-300):not(#pages-container *){border-color:#334155}.prose-de td{border-width:1px;--tw-border-opacity:1;border-color:rgb(226 232 240/var(--tw-border-opacity,1));padding:.75rem;vertical-align:top}body.dark :is(.prose-de td,.border-slate-100,.border-slate-300):not(#pages-container *){border-color:#334155}.table-scroll{margin-left:-1rem;margin-right:-1rem;overflow-x:auto;padding-left:1rem;padding-right:1rem}@media (min-width:640px){.table-scroll{margin-left:0;margin-right:0;padding-left:0;padding-right:0}}.\!btn,.btn,.btn-primary{align-items:center;border-radius:0;display:inline-flex;font-size:.875rem;font-weight:700;gap:.5rem;justify-content:center;line-height:1.25rem;padding:.75rem 1.25rem;transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.btn-primary{--tw-bg-opacity:1;background-color:rgb(37 99 235/var(--tw-bg-opacity,1));--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1));--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}@media (pointer:coarse){.btn-primary{min-height:44px}}.btn-primary:hover{--tw-bg-opacity:1;background-color:rgb(29 78 216/var(--tw-bg-opacity,1))}.btn-amber{align-items:center;border-radius:0;display:inline-flex;font-size:.875rem;font-weight:700;gap:.5rem;justify-content:center;line-height:1.25rem;padding:.75rem 1.25rem;transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);--tw-bg-opacity:1;background-color:rgb(217 119 6/var(--tw-bg-opacity,1));--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1));--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}@media (pointer:coarse){.btn-amber{min-height:44px}}.btn-amber:hover{--tw-bg-opacity:1;background-color:rgb(180 83 9/var(--tw-bg-opacity,1))}.btn-dark{align-items:center;border-radius:0;display:inline-flex;font-size:.875rem;font-weight:700;gap:.5rem;justify-content:center;line-height:1.25rem;padding:.75rem 1.25rem;transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);--tw-bg-opacity:1;background-color:rgb(15 23 42/var(--tw-bg-opacity,1));--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}@media (pointer:coarse){.btn-dark{min-height:44px}}.btn-dark:hover{--tw-bg-opacity:1;background-color:rgb(30 41 59/var(--tw-bg-opacity,1))}.btn-outline{align-items:center;border-radius:0;border-width:1px;display:inline-flex;font-size:.875rem;font-weight:700;gap:.5rem;justify-content:center;line-height:1.25rem;padding:.75rem 1.25rem;transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);--tw-border-opacity:1;border-color:rgb(203 213 225/var(--tw-border-opacity,1));--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1));--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}body.dark :is(.btn-outline,.bg-white\/95):not(#pages-container *){background-color:#16203a}body.dark :is(.btn-outline,.text-slate-800,h1,h2,h3,h4):not(#pages-container *){color:#f8fafc}body.dark :is(.border-slate-200,.border-slate-100,.btn-outline):not(#pages-container *){border-color:#334155}@media (pointer:coarse){.btn-outline{min-height:44px}}.btn-outline:hover{--tw-bg-opacity:1;background-color:rgb(248 250 252/var(--tw-bg-opacity,1))}.btn-sm{border-radius:0;font-size:.75rem;line-height:1rem;padding:.5rem .875rem}.btn-lg{border-radius:0;font-size:1rem;line-height:1.5rem;padding:1rem 2rem}.btn-row{display:flex;flex-direction:column;gap:.75rem}@media (min-width:640px){.btn-row{align-items:center;flex-direction:row}}.faq-list{margin-top:1.5rem}.faq-list>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(1rem*var(--tw-space-y-reverse));margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)))}.faq-item{border-radius:0;border-width:1px;--tw-border-opacity:1;border-color:rgb(226 232 240/var(--tw-border-opacity,1));--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1));padding:1.25rem;--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}body.dark :is(.faq-item,.bg-white\/95):not(#pages-container *){background-color:#16203a}body.dark :is(.faq-item,.border-slate-100,.border-slate-300):not(#pages-container *){border-color:#334155}.faq-item h3{font-size:1rem;font-weight:700;line-height:1.5rem;margin-bottom:.375rem;--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}body.dark :is(.faq-item h3,.text-slate-800,h1,h2,h3,h4):not(#pages-container *){color:#f8fafc}.faq-item p{font-size:.875rem;line-height:1.25rem;line-height:1.625;--tw-text-opacity:1;color:rgb(71 85 105/var(--tw-text-opacity,1))}body.dark :is(.text-slate-700,.faq-item p,.prose-de,.prose-de p):not(#pages-container *){color:#cbd5e1}.faq-item p+p{margin-top:.5rem}.cta-box{border-radius:0;--tw-bg-opacity:1;background-color:rgb(37 99 235/var(--tw-bg-opacity,1));padding:2rem;text-align:center}.cta-box,.cta-box h2{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.cta-box h2{font-size:1.5rem;font-weight:900;line-height:2rem;margin-bottom:.5rem}.cta-box p{margin-bottom:1.25rem;--tw-text-opacity:1;color:rgb(239 246 255/var(--tw-text-opacity,1))}.steps{display:grid;gap:1.25rem;margin-top:1.5rem}@media (min-width:640px){.steps{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1024px){.steps{grid-template-columns:repeat(4,minmax(0,1fr))}}.step{border-radius:0;border-width:1px;--tw-border-opacity:1;border-color:rgb(226 232 240/var(--tw-border-opacity,1));--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1));padding:1.25rem}body.dark :is(.step,.bg-white\/95):not(#pages-container *){background-color:#16203a}body.dark :is(.step,.border-slate-100,.border-slate-300):not(#pages-container *){border-color:#334155}.step-num{align-items:center;border-radius:50%;display:flex;height:2rem;justify-content:center;margin-bottom:.75rem;width:2rem;--tw-bg-opacity:1;background-color:rgb(37 99 235/var(--tw-bg-opacity,1));font-weight:900;--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.nav-link{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.nav-link:hover{--tw-text-opacity:1;color:rgb(37 99 235/var(--tw-text-opacity,1))}.breadcrumbs{font-size:.75rem;line-height:1rem;padding-bottom:.75rem;padding-top:.75rem;--tw-text-opacity:1;color:rgb(100 116 139/var(--tw-text-opacity,1))}body.dark :is(.breadcrumbs,.text-slate-400,.breadcrumbs):not(#pages-container *){color:#94a3b8}.breadcrumbs a{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.breadcrumbs a:hover{--tw-text-opacity:1;color:rgb(37 99 235/var(--tw-text-opacity,1))}.footer-link{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.footer-link:hover{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.field-label{display:block;font-size:.75rem;font-weight:600;line-height:1rem;margin-bottom:.25rem;--tw-text-opacity:1;color:rgb(71 85 105/var(--tw-text-opacity,1))}body.dark :is(.text-slate-700,.field-label,.prose-de,.prose-de p):not(#pages-container *){color:#cbd5e1}.field{border-radius:0;border-width:1px;width:100%;--tw-border-opacity:1;border-color:rgb(226 232 240/var(--tw-border-opacity,1));font-size:.75rem;line-height:1rem;padding:.5rem .75rem;transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}body.dark :is(.field,.border-slate-100,.border-slate-300):not(#pages-container *){border-color:#334155}.field:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);--tw-ring-opacity:1;--tw-ring-color:rgb(59 130 246/var(--tw-ring-opacity,1))}.sr-only{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0);border-width:0;white-space:nowrap}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.visible{visibility:visible}.collapse{visibility:collapse}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.inset-x-0{left:0;right:0}.bottom-0{bottom:0}.left-0{left:0}.left-3{left:.75rem}.right-0{right:0}.right-3{right:.75rem}.right-5{right:1.25rem}.top-0{top:0}.top-3{top:.75rem}.top-5{top:1.25rem}.top-full{top:100%}.z-10{z-index:10}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.col-span-1{grid-column:span 1/span 1}.col-span-2{grid-column:span 2/span 2}.col-span-5{grid-column:span 5/span 5}.col-span-7{grid-column:span 7/span 7}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-auto{margin-left:auto;margin-right:auto}.my-3{margin-bottom:.75rem;margin-top:.75rem}.my-4{margin-bottom:1rem;margin-top:1rem}.my-6{margin-bottom:1.5rem;margin-top:1.5rem}.mb-0{margin-bottom:0}.mb-0\.5{margin-bottom:.125rem}.mb-1{margin-bottom:.25rem}.mb-1\.5{margin-bottom:.375rem}.mb-10{margin-bottom:2.5rem}.mb-12{margin-bottom:3rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-0\.5{margin-left:.125rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.mr-2{margin-right:.5rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-1\.5{margin-top:.375rem}.mt-12{margin-top:3rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.mt-auto{margin-top:auto}.\!block{display:block!important}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.contents{display:contents}.hidden{display:none}.aspect-\[4\/3\]{aspect-ratio:4/3}.aspect-video{aspect-ratio:16/9}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-16{height:4rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-20{height:5rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-4{height:1rem}.h-48{height:12rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-auto{height:auto}.h-full{height:100%}.max-h-\[85vh\]{max-height:85vh}.max-h-\[90vh\]{max-height:90vh}.min-h-0{min-height:0}.min-h-screen{min-height:100vh}.w-1\/2{width:50%}.w-10{width:2.5rem}.w-12{width:3rem}.w-14{width:3.5rem}.w-16{width:4rem}.w-2{width:.5rem}.w-2\.5{width:.625rem}.w-20{width:5rem}.w-24{width:6rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-32{width:8rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-7{width:1.75rem}.w-72{width:18rem}.w-8{width:2rem}.w-auto{width:auto}.w-full{width:100%}.min-w-0{min-width:0}.min-w-\[10rem\]{min-width:10rem}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-5xl{max-width:64rem}.max-w-6xl{max-width:72rem}.max-w-7xl{max-width:80rem}.max-w-\[140px\]{max-width:140px}.max-w-\[150px\]{max-width:150px}.max-w-\[1700px\]{max-width:1700px}.max-w-\[210mm\]{max-width:210mm}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-sm{max-width:24rem}.max-w-xl{max-width:36rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.shrink-0{flex-shrink:0}.border-collapse{border-collapse:collapse}.translate-y-0{--tw-translate-y:0px}.rotate-180,.translate-y-0{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-180{--tw-rotate:180deg}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(1turn)}}.animate-spin{animation:spin 1s linear infinite}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.select-all{-webkit-user-select:all;-moz-user-select:all;user-select:all}.resize-none{resize:none}.scroll-mt-20{scroll-margin-top:5rem}.scroll-mt-24{scroll-margin-top:6rem}.list-disc{list-style-type:disc}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.items-stretch{align-items:stretch}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.gap-x-6{-moz-column-gap:1.5rem;column-gap:1.5rem}.gap-y-2{row-gap:.5rem}.space-y-0\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.125rem*var(--tw-space-y-reverse));margin-top:calc(.125rem*(1 - var(--tw-space-y-reverse)))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.25rem*var(--tw-space-y-reverse));margin-top:calc(.25rem*(1 - var(--tw-space-y-reverse)))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.375rem*var(--tw-space-y-reverse));margin-top:calc(.375rem*(1 - var(--tw-space-y-reverse)))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.5rem*var(--tw-space-y-reverse));margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.75rem*var(--tw-space-y-reverse));margin-top:calc(.75rem*(1 - var(--tw-space-y-reverse)))}.space-y-3\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.875rem*var(--tw-space-y-reverse));margin-top:calc(.875rem*(1 - var(--tw-space-y-reverse)))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(1rem*var(--tw-space-y-reverse));margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(1.5rem*var(--tw-space-y-reverse));margin-top:calc(1.5rem*(1 - var(--tw-space-y-reverse)))}.self-start{align-self:flex-start}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overscroll-contain{overscroll-behavior:contain}.scroll-smooth{scroll-behavior:smooth}.truncate{overflow:hidden;text-overflow:ellipsis}.truncate,.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.break-words{overflow-wrap:break-word}.rounded{border-radius:0}.rounded-2xl{border-radius:0}.rounded-3xl{border-radius:0}.rounded-full{border-radius:50%}.rounded-lg{border-radius:0}.rounded-md{border-radius:0}.rounded-xl{border-radius:0}.border{border-width:1px}.border-2{border-width:2px}.border-y{border-bottom-width:1px;border-top-width:1px}.border-y-2{border-bottom-width:2px;border-top-width:2px}.border-b{border-bottom-width:1px}.border-l{border-left-width:1px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-amber-200{--tw-border-opacity:1;border-color:rgb(253 230 138/var(--tw-border-opacity,1))}.border-amber-200\/60{border-color:hsla(48,97%,77%,.6)}.border-amber-300{--tw-border-opacity:1;border-color:rgb(252 211 77/var(--tw-border-opacity,1))}.border-blue-200{--tw-border-opacity:1;border-color:rgb(191 219 254/var(--tw-border-opacity,1))}.border-brand-100{--tw-border-opacity:1;border-color:rgb(219 234 254/var(--tw-border-opacity,1))}.border-brand-200{--tw-border-opacity:1;border-color:rgb(191 219 254/var(--tw-border-opacity,1))}.border-brand-500{--tw-border-opacity:1;border-color:rgb(59 130 246/var(--tw-border-opacity,1))}.border-brand-700{--tw-border-opacity:1;border-color:rgb(29 78 216/var(--tw-border-opacity,1))}.border-emerald-200{--tw-border-opacity:1;border-color:rgb(167 243 208/var(--tw-border-opacity,1))}.border-emerald-300{--tw-border-opacity:1;border-color:rgb(110 231 183/var(--tw-border-opacity,1))}.border-emerald-400{--tw-border-opacity:1;border-color:rgb(52 211 153/var(--tw-border-opacity,1))}.border-indigo-100{--tw-border-opacity:1;border-color:rgb(224 231 255/var(--tw-border-opacity,1))}.border-indigo-200{--tw-border-opacity:1;border-color:rgb(199 210 254/var(--tw-border-opacity,1))}.border-rose-200{--tw-border-opacity:1;border-color:rgb(254 205 211/var(--tw-border-opacity,1))}.border-rose-300{--tw-border-opacity:1;border-color:rgb(253 164 175/var(--tw-border-opacity,1))}.border-slate-100{--tw-border-opacity:1;border-color:rgb(241 245 249/var(--tw-border-opacity,1))}.border-slate-200{--tw-border-opacity:1;border-color:rgb(226 232 240/var(--tw-border-opacity,1))}.border-slate-300{--tw-border-opacity:1;border-color:rgb(203 213 225/var(--tw-border-opacity,1))}.border-slate-800{--tw-border-opacity:1;border-color:rgb(30 41 59/var(--tw-border-opacity,1))}.border-slate-900{--tw-border-opacity:1;border-color:rgb(15 23 42/var(--tw-border-opacity,1))}.bg-amber-100{--tw-bg-opacity:1;background-color:rgb(254 243 199/var(--tw-bg-opacity,1))}.bg-amber-50{--tw-bg-opacity:1;background-color:rgb(255 251 235/var(--tw-bg-opacity,1))}.bg-amber-500{--tw-bg-opacity:1;background-color:rgb(245 158 11/var(--tw-bg-opacity,1))}.bg-amber-700{--tw-bg-opacity:1;background-color:rgb(180 83 9/var(--tw-bg-opacity,1))}.bg-blue-100{--tw-bg-opacity:1;background-color:rgb(219 234 254/var(--tw-bg-opacity,1))}.bg-blue-50{--tw-bg-opacity:1;background-color:rgb(239 246 255/var(--tw-bg-opacity,1))}.bg-blue-600{--tw-bg-opacity:1;background-color:rgb(37 99 235/var(--tw-bg-opacity,1))}.bg-brand-100{--tw-bg-opacity:1;background-color:rgb(219 234 254/var(--tw-bg-opacity,1))}.bg-brand-50{--tw-bg-opacity:1;background-color:rgb(239 246 255/var(--tw-bg-opacity,1))}.bg-brand-600{--tw-bg-opacity:1;background-color:rgb(37 99 235/var(--tw-bg-opacity,1))}.bg-brand-700{--tw-bg-opacity:1;background-color:rgb(29 78 216/var(--tw-bg-opacity,1))}.bg-emerald-100{--tw-bg-opacity:1;background-color:rgb(209 250 229/var(--tw-bg-opacity,1))}.bg-emerald-50{--tw-bg-opacity:1;background-color:rgb(236 253 245/var(--tw-bg-opacity,1))}.bg-emerald-600{--tw-bg-opacity:1;background-color:rgb(5 150 105/var(--tw-bg-opacity,1))}.bg-emerald-700{--tw-bg-opacity:1;background-color:rgb(4 120 87/var(--tw-bg-opacity,1))}.bg-indigo-50{--tw-bg-opacity:1;background-color:rgb(238 242 255/var(--tw-bg-opacity,1))}.bg-indigo-50\/60{background-color:rgba(238,242,255,.6)}.bg-indigo-50\/70{background-color:rgba(238,242,255,.7)}.bg-indigo-600{--tw-bg-opacity:1;background-color:rgb(79 70 229/var(--tw-bg-opacity,1))}.bg-purple-100{--tw-bg-opacity:1;background-color:rgb(243 232 255/var(--tw-bg-opacity,1))}.bg-purple-600{--tw-bg-opacity:1;background-color:rgb(147 51 234/var(--tw-bg-opacity,1))}.bg-rose-50{--tw-bg-opacity:1;background-color:rgb(255 241 242/var(--tw-bg-opacity,1))}.bg-rose-500{--tw-bg-opacity:1;background-color:rgb(244 63 94/var(--tw-bg-opacity,1))}.bg-rose-600{--tw-bg-opacity:1;background-color:rgb(225 29 72/var(--tw-bg-opacity,1))}.bg-slate-100{--tw-bg-opacity:1;background-color:rgb(241 245 249/var(--tw-bg-opacity,1))}.bg-slate-100\/80{background-color:rgba(241,245,249,.8)}.bg-slate-200{--tw-bg-opacity:1;background-color:rgb(226 232 240/var(--tw-bg-opacity,1))}.bg-slate-50{--tw-bg-opacity:1;background-color:rgb(248 250 252/var(--tw-bg-opacity,1))}.bg-slate-50\/80{background-color:rgba(248,250,252,.8)}.bg-slate-50\/90{background-color:rgba(248,250,252,.9)}.bg-slate-500{--tw-bg-opacity:1;background-color:rgb(100 116 139/var(--tw-bg-opacity,1))}.bg-slate-700{--tw-bg-opacity:1;background-color:rgb(51 65 85/var(--tw-bg-opacity,1))}.bg-slate-800{--tw-bg-opacity:1;background-color:rgb(30 41 59/var(--tw-bg-opacity,1))}.bg-slate-900{--tw-bg-opacity:1;background-color:rgb(15 23 42/var(--tw-bg-opacity,1))}.bg-slate-900\/45{background-color:rgba(15,23,42,.45)}.bg-slate-950{--tw-bg-opacity:1;background-color:rgb(2 6 23/var(--tw-bg-opacity,1))}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-white\/90{background-color:hsla(0,0%,100%,.9)}.bg-white\/95{background-color:hsla(0,0%,100%,.95)}.object-contain{-o-object-fit:contain;object-fit:contain}.object-cover{-o-object-fit:cover;object-fit:cover}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-2{padding:.5rem}.p-2\.5{padding:.625rem}.p-3{padding:.75rem}.p-3\.5{padding:.875rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-3\.5{padding-left:.875rem;padding-right:.875rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-0\.5{padding-bottom:.125rem;padding-top:.125rem}.py-1{padding-bottom:.25rem;padding-top:.25rem}.py-1\.5{padding-bottom:.375rem;padding-top:.375rem}.py-10{padding-bottom:2.5rem;padding-top:2.5rem}.py-12{padding-bottom:3rem;padding-top:3rem}.py-16{padding-bottom:4rem;padding-top:4rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.py-2\.5{padding-bottom:.625rem;padding-top:.625rem}.py-3{padding-bottom:.75rem;padding-top:.75rem}.py-4{padding-bottom:1rem;padding-top:1rem}.py-5{padding-bottom:1.25rem;padding-top:1.25rem}.py-6{padding-bottom:1.5rem;padding-top:1.5rem}.pb-1{padding-bottom:.25rem}.pb-1\.5{padding-bottom:.375rem}.pb-10{padding-bottom:2.5rem}.pb-12{padding-bottom:3rem}.pb-16{padding-bottom:4rem}.pb-2{padding-bottom:.5rem}.pb-3{padding-bottom:.75rem}.pb-4{padding-bottom:1rem}.pb-5{padding-bottom:1.25rem}.pb-6{padding-bottom:1.5rem}.pb-\[calc\(0\.5rem\+env\(safe-area-inset-bottom\)\)\]{padding-bottom:calc(.5rem + env(safe-area-inset-bottom))}.pl-3{padding-left:.75rem}.pl-4{padding-left:1rem}.pr-1{padding-right:.25rem}.pt-0{padding-top:0}.pt-1{padding-top:.25rem}.pt-1\.5{padding-top:.375rem}.pt-10{padding-top:2.5rem}.pt-12{padding-top:3rem}.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.pt-6{padding-top:1.5rem}.pt-8{padding-top:2rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.font-dm-serif{font-family:DM Serif Display,serif}.font-jetbrains{font-family:JetBrains Mono,monospace}.font-mono{font-family:Fira Code,monospace}.font-sans{font-family:Inter,system-ui,sans-serif}.font-serif{font-family:Playfair Display,Georgia,serif}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-\[10px\]{font-size:10px}.text-\[13px\]{font-size:13px}.text-\[9\.5px\]{font-size:9.5px}.text-\[9px\]{font-size:9px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-black{font-weight:900}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.normal-case{text-transform:none}.italic{font-style:italic}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.leading-tight{line-height:1.25}.tracking-tight{letter-spacing:-.025em}.tracking-wider{letter-spacing:.05em}.text-amber-600{--tw-text-opacity:1;color:rgb(217 119 6/var(--tw-text-opacity,1))}.text-amber-700{--tw-text-opacity:1;color:rgb(180 83 9/var(--tw-text-opacity,1))}.text-amber-800{--tw-text-opacity:1;color:rgb(146 64 14/var(--tw-text-opacity,1))}.text-amber-900{--tw-text-opacity:1;color:rgb(120 53 15/var(--tw-text-opacity,1))}.text-blue-600{--tw-text-opacity:1;color:rgb(37 99 235/var(--tw-text-opacity,1))}.text-blue-700{--tw-text-opacity:1;color:rgb(29 78 216/var(--tw-text-opacity,1))}.text-brand-500{--tw-text-opacity:1;color:rgb(59 130 246/var(--tw-text-opacity,1))}.text-brand-700{--tw-text-opacity:1;color:rgb(29 78 216/var(--tw-text-opacity,1))}.text-brand-800{--tw-text-opacity:1;color:rgb(30 64 175/var(--tw-text-opacity,1))}.text-brand-900{--tw-text-opacity:1;color:rgb(30 58 138/var(--tw-text-opacity,1))}.text-emerald-400{--tw-text-opacity:1;color:rgb(52 211 153/var(--tw-text-opacity,1))}.text-emerald-600{--tw-text-opacity:1;color:rgb(5 150 105/var(--tw-text-opacity,1))}.text-emerald-700{--tw-text-opacity:1;color:rgb(4 120 87/var(--tw-text-opacity,1))}.text-emerald-800{--tw-text-opacity:1;color:rgb(6 95 70/var(--tw-text-opacity,1))}.text-emerald-900{--tw-text-opacity:1;color:rgb(6 78 59/var(--tw-text-opacity,1))}.text-indigo-600{--tw-text-opacity:1;color:rgb(79 70 229/var(--tw-text-opacity,1))}.text-indigo-700{--tw-text-opacity:1;color:rgb(67 56 202/var(--tw-text-opacity,1))}.text-indigo-800{--tw-text-opacity:1;color:rgb(55 48 163/var(--tw-text-opacity,1))}.text-indigo-900{--tw-text-opacity:1;color:rgb(49 46 129/var(--tw-text-opacity,1))}.text-purple-600{--tw-text-opacity:1;color:rgb(147 51 234/var(--tw-text-opacity,1))}.text-purple-700{--tw-text-opacity:1;color:rgb(126 34 206/var(--tw-text-opacity,1))}.text-rose-500{--tw-text-opacity:1;color:rgb(244 63 94/var(--tw-text-opacity,1))}.text-rose-600{--tw-text-opacity:1;color:rgb(225 29 72/var(--tw-text-opacity,1))}.text-rose-700{--tw-text-opacity:1;color:rgb(190 18 60/var(--tw-text-opacity,1))}.text-rose-800{--tw-text-opacity:1;color:rgb(159 18 57/var(--tw-text-opacity,1))}.text-rose-900{--tw-text-opacity:1;color:rgb(136 19 55/var(--tw-text-opacity,1))}.text-slate-300{--tw-text-opacity:1;color:rgb(203 213 225/var(--tw-text-opacity,1))}.text-slate-400{--tw-text-opacity:1;color:rgb(148 163 184/var(--tw-text-opacity,1))}.text-slate-500{--tw-text-opacity:1;color:rgb(100 116 139/var(--tw-text-opacity,1))}.text-slate-600{--tw-text-opacity:1;color:rgb(71 85 105/var(--tw-text-opacity,1))}.text-slate-700{--tw-text-opacity:1;color:rgb(51 65 85/var(--tw-text-opacity,1))}.text-slate-800{--tw-text-opacity:1;color:rgb(30 41 59/var(--tw-text-opacity,1))}.text-slate-900{--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.underline{text-decoration-line:underline}.underline-offset-2{text-underline-offset:2px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-70{opacity:.7}.opacity-75{opacity:.75}.opacity-80{opacity:.8}.opacity-85{opacity:.85}.opacity-90{opacity:.9}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.shadow,.shadow-2xl{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color)}.shadow-\[0_-6px_18px_rgba\(15\2c 23\2c 42\2c 0\.10\)\]{--tw-shadow:0 -6px 18px rgba(15,23,42,.1);--tw-shadow-colored:0 -6px 18px var(--tw-shadow-color)}.shadow-\[0_-6px_18px_rgba\(15\2c 23\2c 42\2c 0\.10\)\],.shadow-lg{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-md{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color)}.shadow-md,.shadow-sm{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color)}.shadow-xl{--tw-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-brand-500\/20{--tw-shadow-color:rgba(59,130,246,.2);--tw-shadow:var(--tw-shadow-colored)}.ring-2{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.ring-transparent{--tw-ring-color:transparent}.ring-offset-2{--tw-ring-offset-width:2px}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur{--tw-backdrop-blur:blur(8px)}.backdrop-blur,.backdrop-blur-sm{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-sm{--tw-backdrop-blur:blur(4px)}.transition{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-transform{transition-duration:.15s;transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.a4-page{background:#fff;box-shadow:0 10px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);box-sizing:border-box;display:flex;flex-direction:column;height:297mm;justify-content:space-between;margin:0 auto 2rem;min-height:297mm;overflow:hidden;padding:12mm 15mm;position:relative;width:210mm}.a4-page *,.invoice-footer *{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;box-sizing:border-box;font-variant-ligatures:none;text-rendering:optimizeLegibility}.accent-slate{color:#0f172a}.accent-blue{color:#2563eb}.accent-emerald{color:#059669}.accent-rose{color:#e11d48}.accent-amber{color:#d97706}.accent-purple{color:#7c3aed}.accent-gold{color:#b8860b}.accent-indigo{color:#4f46e5}.bg-accent-slate{background-color:#0f172a}.bg-accent-blue{background-color:#2563eb}.bg-accent-emerald{background-color:#059669}.bg-accent-rose{background-color:#e11d48}.bg-accent-amber{background-color:#d97706}.bg-accent-purple{background-color:#7c3aed}.bg-accent-gold{background-color:#b8860b}.bg-accent-indigo{background-color:#4f46e5}.border-accent-slate{border-color:#0f172a}.border-accent-blue{border-color:#2563eb}.border-accent-emerald{border-color:#059669}.border-accent-rose{border-color:#e11d48}.border-accent-amber{border-color:#d97706}.border-accent-purple{border-color:#7c3aed}.border-accent-gold{border-color:#b8860b}.border-accent-indigo{border-color:#4f46e5}.gradient-gray{background:linear-gradient(180deg,rgba(241,245,249,.92),#fff 40%)!important}.gradient-accent-blue{background:linear-gradient(180deg,rgba(239,246,255,.92),#fff 45%)!important}.gradient-accent-emerald{background:linear-gradient(180deg,rgba(236,253,245,.92),#fff 45%)!important}.gradient-accent-amber{background:linear-gradient(180deg,hsla(48,96%,89%,.92),#fff 45%)!important}.gradient-accent-purple{background:linear-gradient(180deg,rgba(243,232,255,.92),#fff 45%)!important}.gradient-accent-rose{background:linear-gradient(180deg,rgba(255,228,230,.92),#fff 45%)!important}.gradient-accent-slate{background:linear-gradient(180deg,rgba(241,245,249,.92),#fff 45%)!important}.gradient-accent-gold{background:linear-gradient(180deg,hsla(48,96%,89%,.92),#fff 45%)!important}.gradient-accent-indigo{background:linear-gradient(180deg,rgba(238,242,255,.92),#fff 45%)!important}@media print{body{background:#fff!important;padding:0!important}.no-print{display:none!important}.a4-page{box-shadow:none!important;height:100vh!important;margin:0!important;page-break-after:always;width:100%!important}}.modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:rgba(15,23,42,.6)}/* Fassung 3.15.15: Der Block gilt jetzt bis 1023.98px (vorher bis 1024px) –
   sonst überschnitt er sich mit dem Desktop-Block ab 1024px. -webkit-overflow-
   scrolling entfällt: auf älteren iOS-Geräten blieb der Inhalt damit weiß.
   Die gestauchte Seite schneidet nichts mehr ab (overflow sichtbar). */
@media (max-width:1023.98px){.preview-scale-wrapper{overflow-x:auto;width:100%;padding-bottom:1rem}.a4-page{height:auto!important;margin-bottom:1rem;min-height:auto!important;overflow:visible!important;padding:12mm!important;width:100%!important}}@media (max-width:768px){.cursor-pointer,button,input,label,select{font-size:16px!important;min-height:44px!important}.a4-page{padding:8mm!important}.grid-cols-12{gap:.5rem}.col-span-5{grid-column:span 12}.col-span-2,.col-span-3{grid-column:span 6}.col-span-1{grid-column:span 2}}.preview-loading{align-items:center;color:#64748b;display:none;font-size:.75rem;justify-content:center;padding:1rem}.preview-loading.active{display:flex}.input-valid{border-color:#10b981!important}.input-invalid{background-color:#fef2f2!important;border-color:#ef4444!important}.import-unsicher{background-color:#fffbeb!important;border-color:#f59e0b!important;box-shadow:0 0 0 3px rgba(245,158,11,.18)!important}body.dark .import-unsicher{background-color:#3a2708!important;border-color:#f59e0b!important}.video-placeholder{aspect-ratio:16/9;border-radius:0;border-width:1px;overflow:hidden;position:relative;width:100%;--tw-border-opacity:1;border-color:rgb(226 232 240/var(--tw-border-opacity,1));--tw-bg-opacity:1;background-color:rgb(15 23 42/var(--tw-bg-opacity,1));--tw-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}body.dark :is(.video-placeholder,.border-slate-100,.border-slate-300):not(#pages-container *){border-color:#334155}.video-placeholder img{height:100%;inset:0;-o-object-fit:cover;object-fit:cover;position:absolute;width:100%}.video-placeholder button{align-items:center;display:flex;flex-direction:column;font-weight:700;gap:.75rem;inset:0;justify-content:center;position:absolute;--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}summary{cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}.chevron{transition:transform .2s ease}details[open]>summary .chevron{transform:rotate(180deg)}body.dark{background-color:#0b1220!important;color:#e2e8f0}body.dark :is(.bg-white,.bg-white\/95):not(#pages-container *){background-color:#16203a!important}body.dark :is(.bg-slate-50,.bg-slate-50\/80,.bg-slate-50\/90,.bg-slate-100,.bg-slate-200):not(#pages-container *){background-color:#1e293b!important}body.dark .section-white:not(#pages-container *){background-color:#16203a!important}body.dark .section-alt:not(#pages-container *){background-color:#1e293b!important}body.dark :is(.card,.card-tight,.tile,.step,.faq-item):not(#pages-container *){background-color:#16203a!important;border-color:#334155!important}body.dark :is(.text-slate-900,.text-slate-800,h1,h2,h3,h4):not(#pages-container *){color:#f8fafc!important}body.dark :is(.text-slate-700,.text-slate-600,.prose-de,.prose-de p):not(#pages-container *){color:#cbd5e1!important}body.dark :is(.text-slate-500,.text-slate-400,.breadcrumbs):not(#pages-container *){color:#94a3b8!important}body.dark :is(.nav-link-strong,.prose-de strong,.tile h3,.faq-item h3):not(#pages-container *){color:#f8fafc!important}body.dark .prose-de a:not(#pages-container *){color:#93c5fd!important}body.dark .prose-de code:not(#pages-container *){background-color:#1e293b!important;color:#e2e8f0!important}body.dark :is(.border-slate-200,.border-slate-100,.border-slate-300):not(#pages-container *){border-color:#334155!important}body.dark .section:not(#pages-container *){border-color:#334155!important}body.dark :is(input,select,textarea):not(#pages-container *){background-color:#0f172a!important;border-color:#334155!important;color:#e2e8f0!important}body.dark :is(input,textarea)::-moz-placeholder{color:#64748b!important}body.dark :is(input,textarea)::placeholder{color:#64748b!important}body.dark .field-label:not(#pages-container *),body.dark .field:not(#pages-container *){color:#cbd5e1!important}body.dark .input-valid{background-color:#052e21!important;border-color:#34d399!important}body.dark .input-invalid{background-color:#3f1520!important;border-color:#f87171!important}body.dark :is(.btn-outline,.btn-soft):not(#pages-container *){background-color:#1e293b!important;border-color:#334155!important;color:#e2e8f0!important}body.dark :is(.note,.note-legal):not(#pages-container *){background-color:#1e293b!important;border-color:#334155!important;color:#cbd5e1!important}body.dark .note-warn:not(#pages-container *){background-color:#3a2708!important;border-color:#78350f!important;color:#fcd34d!important}body.dark :is(.bg-emerald-50,.bg-emerald-100):not(#pages-container *){background-color:#052e21!important}body.dark :is(.bg-amber-50,.bg-amber-100):not(#pages-container *){background-color:#3a2708!important}body.dark :is(.bg-rose-50,.bg-rose-100):not(#pages-container *){background-color:#3f1520!important}body.dark :is(.bg-brand-50,.bg-brand-100,.bg-blue-50,.bg-blue-100):not(#pages-container *){background-color:#12234a!important}body.dark :is(.text-emerald-900,.text-emerald-800,.text-emerald-700):not(#pages-container *){color:#6ee7b7!important}body.dark :is(.text-amber-900,.text-amber-800,.text-amber-700):not(#pages-container *){color:#fcd34d!important}body.dark :is(.text-rose-900,.text-rose-800,.text-rose-700,.text-rose-600):not(#pages-container *){color:#fda4af!important}body.dark :is(.text-brand-700,.text-brand-800,.text-blue-700):not(#pages-container *){color:#93c5fd!important}body.dark .text-brand-600:not(#pages-container *){color:#60a5fa!important}body.dark :is(.badge-green,.badge-blue,.badge-amber):not(#pages-container *){border-color:transparent!important}body.dark :is(.border-emerald-200,.border-emerald-100):not(#pages-container *){border-color:#065f46!important}body.dark :is(.border-amber-200,.border-amber-100):not(#pages-container *){border-color:#78350f!important}body.dark :is(.border-rose-200,.border-rose-100):not(#pages-container *){border-color:#7f1d1d!important}body.dark :is(.border-brand-200,.border-blue-200):not(#pages-container *){border-color:#1e3a8a!important}body.dark header:not(#pages-container *){background-color:rgba(11,18,32,.95)!important;border-color:#334155!important}body.dark footer:not(#pages-container *){background-color:#0b1220!important}body.dark .prose-de :is(th,td):not(#pages-container *){border-color:#334155!important}body.dark .prose-de th:not(#pages-container *){background-color:#1e293b!important;color:#f8fafc!important}body.dark .table-scroll table :is(th,td):not(#pages-container *){border-color:#334155!important}.dark-toggle .icon-sun{display:none}body.dark .dark-toggle .icon-sun{display:inline-flex}body.dark .dark-toggle .icon-moon{display:none}@media print{body.dark,body.dark *{background-color:#fff!important;border-color:#cbd5e1!important;color:#000!important}body.dark .a4-page{box-shadow:none!important}}body.modus-einfach .nur-vollstaendig,body.modus-vollstaendig .nur-einfach{display:none!important}:root{--assistant-bg-light:#ffe5d9;--assistant-bg-light-stark:#ffd8b5;--assistant-text-light:#6b3410;--assistant-rand-light:#f0b892;--assistant-bg-dark:#3b2d28;--assistant-text-dark:#ffe4d6;--assistant-akzent-dark:#fdba74}.assistent-akkordeon{background-color:#fff;border:1px solid var(--assistant-rand-light);border-radius:0;box-shadow:0 1px 3px rgba(15,23,42,.08);overflow:hidden}body.dark .assistent-akkordeon{background-color:#16203a;border-color:#57453d}.assistent-akkordeon>summary{list-style:none}.assistent-akkordeon>summary::-webkit-details-marker{display:none}.assistent-kopf{align-items:center;background-color:var(--assistant-bg-light)!important;border-bottom:1px solid var(--assistant-rand-light)!important}.assistent-akkordeon:not([open])>.assistent-kopf{border-bottom-color:transparent!important}#assistent .assistent-kopf .assistent-klapp,#assistent .assistent-kopf .assistent-punkte,#assistent .assistent-kopf .assistent-schritt-nr,#assistent .assistent-kopf .assistent-titel{color:var(--assistant-text-light)!important}#assistent .assistent-kopf .assistent-symbol{background-color:#b45309!important;color:#fff!important}body.dark #assistent .assistent-kopf{background-color:var(--assistant-bg-dark)!important;border-bottom-color:#57453d!important}body.dark #assistent .assistent-kopf .assistent-klapp,body.dark #assistent .assistent-kopf .assistent-punkte,body.dark #assistent .assistent-kopf .assistent-schritt-nr,body.dark #assistent .assistent-kopf .assistent-titel{color:var(--assistant-text-dark)!important}body.dark #assistent .assistent-kopf .assistent-symbol{background-color:var(--assistant-akzent-dark)!important;color:#3b2d28!important}.assistent-symbol{align-items:center;border-radius:0;display:inline-flex;height:2.25rem;justify-content:center;width:2.25rem}.assistent-punkte{align-items:center;gap:.35rem}.assistent-punkt{background-color:transparent;border:2px solid;border-radius:50%;display:inline-block;height:.6rem;width:.6rem}.assistent-punkt.ist-aktiv,.assistent-punkt.ist-fertig{background-color:currentColor}.assistent-punkt.ist-aktiv{box-shadow:0 0 0 3px rgba(180,83,9,.28)}.assistent-strich{background-color:rgba(107,52,16,.35);display:inline-block;height:2px;width:1.1rem}.assistent-strich.ist-fertig{background-color:currentColor}body.dark .assistent-strich{background-color:rgba(255,228,214,.35)}.assistent-leiste{list-style:none;margin:0;padding:0}.assistent-leisten-eintrag{min-width:0}.assistent-leisten-knopf{align-items:center;background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:0;color:#334155;display:flex;font-size:.75rem;font-weight:700;gap:.5rem;padding:.5rem .65rem;text-align:left;transition:background-color .15s ease,border-color .15s ease;width:100%}.assistent-leisten-knopf:hover{background-color:#f1f5f9}.assistent-leisten-knopf.ist-aktiv{background-color:var(--assistant-bg-light);border-color:var(--assistant-rand-light);color:var(--assistant-text-light)}.assistent-leisten-nr{font-variant-numeric:tabular-nums;opacity:.7}.assistent-leisten-knopf .assistent-punkt{border-width:2px;color:#0f172a;height:.5rem;width:.5rem}.assistent-leisten-knopf.ist-aktiv .assistent-punkt{color:#b45309}.assistent-beschreibung{border-left:3px solid var(--assistant-bg-light-stark);color:#475569;margin:.3rem 0 0 .2rem;padding:.5rem .7rem}body.dark .assistent-leisten-knopf{background-color:#1e293b;border-color:#334155;color:#cbd5e1}body.dark .assistent-leisten-knopf:hover{background-color:#263449}body.dark .assistent-leisten-knopf.ist-aktiv{background-color:var(--assistant-bg-dark);border-color:#57453d;color:var(--assistant-text-dark)}body.dark .assistent-leisten-knopf .assistent-punkt{color:#cbd5e1}body.dark .assistent-leisten-knopf.ist-aktiv .assistent-punkt{color:var(--assistant-akzent-dark)}body.dark .assistent-beschreibung{border-left-color:var(--assistant-bg-dark);color:#cbd5e1}.info-tip>summary{list-style:none}.info-tip[open]>summary{background-color:#dbeafe}.info-tip-panel{background:#fff;border:1px solid #cbd5e1;border-radius:0;box-shadow:0 12px 28px rgba(15,23,42,.18);color:#334155;font-size:.75rem;line-height:1.6;padding:.75rem .9rem;position:absolute;right:0;top:calc(100% + .4rem);width:min(24rem,88vw);z-index:40}body.dark .info-tip-panel{background:#1e293b;border-color:#334155;color:#e2e8f0}.cta-band{align-items:center;background-color:#eff6ff;border:1px solid #bfdbfe;border-left:5px solid #1d4ed8;border-radius:0;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin:2rem 0;padding:1.15rem 1.35rem}.cta-band-ende{background-color:#ecfdf5;border-color:#a7f3d0 #a7f3d0 #a7f3d0 #047857;margin-top:2.5rem}.cta-band-text{color:#1e3a8a;font-size:.95rem;font-weight:600;margin:0}.cta-band-ende .cta-band-text{color:#065f46}.cta-band-knopf{align-items:center;background-color:#1d4ed8;border-radius:0;box-shadow:0 2px 8px rgba(29,78,216,.25);color:#fff!important;display:inline-flex;font-size:.9rem;font-weight:700;gap:.5rem;padding:.7rem 1.1rem;text-decoration:none;transition:background-color .15s ease}.cta-band-knopf:hover{background-color:#1e40af}.cta-band-ende .cta-band-knopf{background-color:#047857;box-shadow:0 2px 8px rgba(4,120,87,.25)}.cta-band-ende .cta-band-knopf:hover{background-color:#065f46}body.dark .cta-band{background-color:#12234a;border-color:#1e3a8a}body.dark .cta-band-text{color:#bfdbfe}body.dark .cta-band-ende{background-color:#052e21;border-color:#065f46}body.dark .cta-band-ende .cta-band-text{color:#6ee7b7}.info-wrap{position:relative}.info-i,.info-wrap{align-items:center;display:inline-flex}.info-i{background-color:#f3f4f6;border:1px solid #9ca3af;border-radius:50%;color:#6b7280;cursor:help;font-family:Georgia,Times New Roman,serif;font-size:.68rem;font-style:italic;font-weight:700;height:1.125rem;justify-content:center;line-height:1;transition:background-color .15s ease,border-color .15s ease,color .15s ease;width:1.125rem}.info-i:focus-visible,.info-i:hover{background-color:#e5e7eb;border-color:#4b5563;color:#374151}body.dark .info-i{background-color:#1e293b;border-color:#64748b;color:#cbd5e1}body.dark .info-i:focus-visible,body.dark .info-i:hover{background-color:#334155;border-color:#94a3b8;color:#f1f5f9}.info-knopf{align-items:center;background-color:#eff6ff;border:1px solid #93c5fd;border-radius:0;color:#1e40af;cursor:pointer;display:inline-flex;font-size:.8125rem;font-weight:700;gap:.35rem;padding:.4rem .7rem}.info-knopf:hover{background-color:#dbeafe;border-color:#60a5fa}.info-knopf[aria-expanded=true]{background-color:#dbeafe;border-color:#3b82f6}body.dark .info-knopf{background-color:#1e293b;border-color:#64748b;color:#bfdbfe}body.dark .info-knopf:hover,body.dark .info-knopf[aria-expanded=true]{background-color:#334155;border-color:#94a3b8;color:#f1f5f9}.info-pop{background-color:#1f2937;border-radius:0;bottom:calc(100% + .45rem);box-shadow:0 10px 24px rgba(15,23,42,.28);color:#f9fafb;font-size:.72rem;font-weight:400;left:0;line-height:1.55;opacity:0;padding:.7rem 2rem .75rem .8rem;position:absolute;text-align:left;transition:opacity .12s ease;visibility:hidden;width:min(22rem,86vw);z-index:45}.info-pop:after{border:6px solid transparent;border-top-color:#1f2937;content:"";left:.55rem;position:absolute;top:100%}.info-pop a{color:#bfdbfe}.info-pop-close{align-items:center;background:transparent;border:0;border-radius:0;color:#9ca3af;cursor:pointer;display:inline-flex;font-size:.85rem;height:1.4rem;justify-content:center;line-height:1;position:absolute;right:.3rem;top:.3rem;transition:color .15s ease,background-color .15s ease;width:1.4rem}.info-pop-close:focus-visible,.info-pop-close:hover{background-color:hsla(0,0%,100%,.14);color:#f9fafb}.info-wrap.info-offen .info-pop,.info-wrap:focus-within .info-pop,.info-wrap:hover .info-pop{opacity:1;visibility:visible}.info-wrap.info-zu .info-pop{opacity:0!important;visibility:hidden!important}body.dark .info-pop{background-color:#0f172a;border:1px solid #334155;color:#e2e8f0}body.dark .info-pop:after{border-top-color:#0f172a}body.dark .info-pop-close{color:#94a3b8}body.dark .info-pop-close:focus-visible,body.dark .info-pop-close:hover{background-color:hsla(0,0%,100%,.14);color:#f8fafc}.formular-abschnitt>summary{list-style:none}.formular-abschnitt>summary::-webkit-details-marker{display:none}.formular-abschnitt>summary:hover{background-color:#f8fafc}.formular-abschnitt[open]>summary{border-bottom:1px solid #e2e8f0}.abschnitt-kopf{border-radius:0}.abschnitt-titel{margin:0}.abschnitt-stand{white-space:nowrap}.formular-abschnitt{scroll-margin-top:5.5rem}body.dark .formular-abschnitt>summary:hover{background-color:#1e293b}body.dark .formular-abschnitt[open]>summary{border-bottom-color:#334155}:focus-visible{border-radius:0;outline:3px solid #0369a1;outline-offset:2px}input:focus-visible,select:focus-visible,summary:focus-visible,textarea:focus-visible{outline:3px solid #0369a1;outline-offset:1px}@supports not selector(:focus-visible){:focus{outline:3px solid #0369a1;outline-offset:2px}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}.animate-pulse{animation:none!important}.animate-spin{animation-duration:1.5s!important}}@media (pointer:coarse){.btn,[role=button],button,summary{min-height:44px}#status-ampel,.dark-toggle,.info-pop-close-inline{min-height:0}}a.skip-link:focus{background:#fff;border-radius:0;box-shadow:0 10px 25px rgba(15,23,42,.25);color:#0f172a;left:.5rem;outline:3px solid #0369a1;padding:.75rem 1rem;position:fixed;top:.5rem;z-index:100}#import.import-aktiv{border-color:#f59e0b!important;box-shadow:0 0 0 3px rgba(245,158,11,.25)}#import.import-aktiv.import-puls{animation:import-puls 1s ease-in-out 3}@keyframes import-puls{0%,to{box-shadow:0 0 0 3px rgba(245,158,11,.22)}50%{box-shadow:0 0 0 10px rgba(245,158,11,.38)}}body.dark #import.import-aktiv{border-color:#fbbf24!important;box-shadow:0 0 0 3px rgba(251,191,36,.3)}.import-aktiv-etikett{align-items:center;background-color:#fef3c7;border:1px solid #f59e0b;border-radius:0;color:#78350f;display:inline-flex;font-size:.75rem;font-weight:700;gap:.35rem;padding:.15rem .4rem .15rem .5rem;white-space:nowrap}body.dark .import-aktiv-etikett{background-color:#3a2708;border-color:#fbbf24;color:#fcd34d}.info-pop-close-inline{align-items:center;border-radius:0;color:inherit;cursor:pointer;display:inline-flex;font-size:.7rem;height:1.25rem;justify-content:center;line-height:1;opacity:.75;width:1.25rem}.info-pop-close-inline:focus-visible,.info-pop-close-inline:hover{background-color:rgba(120,53,15,.15);opacity:1}body.dark .info-pop-close-inline:focus-visible,body.dark .info-pop-close-inline:hover{background-color:rgba(252,211,77,.2)}.hover\:scale-110:hover{--tw-scale-x:1.1;--tw-scale-y:1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:border-brand-300:hover{--tw-border-opacity:1;border-color:rgb(147 197 253/var(--tw-border-opacity,1))}.hover\:border-brand-500:hover{--tw-border-opacity:1;border-color:rgb(59 130 246/var(--tw-border-opacity,1))}.hover\:bg-amber-100:hover{--tw-bg-opacity:1;background-color:rgb(254 243 199/var(--tw-bg-opacity,1))}.hover\:bg-amber-200:hover{--tw-bg-opacity:1;background-color:rgb(253 230 138/var(--tw-bg-opacity,1))}.hover\:bg-amber-800:hover{--tw-bg-opacity:1;background-color:rgb(146 64 14/var(--tw-bg-opacity,1))}.hover\:bg-blue-100:hover,.hover\:bg-brand-100:hover{--tw-bg-opacity:1;background-color:rgb(219 234 254/var(--tw-bg-opacity,1))}.hover\:bg-brand-50:hover{--tw-bg-opacity:1;background-color:rgb(239 246 255/var(--tw-bg-opacity,1))}.hover\:bg-brand-700:hover{--tw-bg-opacity:1;background-color:rgb(29 78 216/var(--tw-bg-opacity,1))}.hover\:bg-brand-800:hover{--tw-bg-opacity:1;background-color:rgb(30 64 175/var(--tw-bg-opacity,1))}.hover\:bg-emerald-100:hover{--tw-bg-opacity:1;background-color:rgb(209 250 229/var(--tw-bg-opacity,1))}.hover\:bg-emerald-800:hover{--tw-bg-opacity:1;background-color:rgb(6 95 70/var(--tw-bg-opacity,1))}.hover\:bg-indigo-100:hover{--tw-bg-opacity:1;background-color:rgb(224 231 255/var(--tw-bg-opacity,1))}.hover\:bg-indigo-700:hover{--tw-bg-opacity:1;background-color:rgb(67 56 202/var(--tw-bg-opacity,1))}.hover\:bg-rose-100:hover{--tw-bg-opacity:1;background-color:rgb(255 228 230/var(--tw-bg-opacity,1))}.hover\:bg-rose-50:hover{--tw-bg-opacity:1;background-color:rgb(255 241 242/var(--tw-bg-opacity,1))}.hover\:bg-rose-700:hover{--tw-bg-opacity:1;background-color:rgb(190 18 60/var(--tw-bg-opacity,1))}.hover\:bg-slate-100:hover{--tw-bg-opacity:1;background-color:rgb(241 245 249/var(--tw-bg-opacity,1))}.hover\:bg-slate-200:hover{--tw-bg-opacity:1;background-color:rgb(226 232 240/var(--tw-bg-opacity,1))}.hover\:bg-slate-50:hover{--tw-bg-opacity:1;background-color:rgb(248 250 252/var(--tw-bg-opacity,1))}.hover\:bg-slate-800:hover{--tw-bg-opacity:1;background-color:rgb(30 41 59/var(--tw-bg-opacity,1))}.hover\:text-amber-900:hover{--tw-text-opacity:1;color:rgb(120 53 15/var(--tw-text-opacity,1))}.hover\:text-brand-700:hover{--tw-text-opacity:1;color:rgb(29 78 216/var(--tw-text-opacity,1))}.hover\:text-brand-800:hover{--tw-text-opacity:1;color:rgb(30 64 175/var(--tw-text-opacity,1))}.hover\:text-emerald-800:hover{--tw-text-opacity:1;color:rgb(6 95 70/var(--tw-text-opacity,1))}.hover\:text-indigo-700:hover{--tw-text-opacity:1;color:rgb(67 56 202/var(--tw-text-opacity,1))}.hover\:text-rose-600:hover{--tw-text-opacity:1;color:rgb(225 29 72/var(--tw-text-opacity,1))}.hover\:text-rose-800:hover{--tw-text-opacity:1;color:rgb(159 18 57/var(--tw-text-opacity,1))}.hover\:text-rose-900:hover{--tw-text-opacity:1;color:rgb(136 19 55/var(--tw-text-opacity,1))}.hover\:text-slate-600:hover{--tw-text-opacity:1;color:rgb(71 85 105/var(--tw-text-opacity,1))}.hover\:text-slate-800:hover{--tw-text-opacity:1;color:rgb(30 41 59/var(--tw-text-opacity,1))}.hover\:text-slate-900:hover{--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}.hover\:text-white:hover{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.hover\:underline:hover{text-decoration-line:underline}.hover\:shadow:hover{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.hover\:shadow-md:hover,.hover\:shadow:hover{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.hover\:shadow-md:hover{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color)}.hover\:shadow-xl:hover{--tw-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus\:ring-amber-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(245 158 11/var(--tw-ring-opacity,1))}.focus\:ring-amber-600:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(217 119 6/var(--tw-ring-opacity,1))}.focus\:ring-amber-700:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(180 83 9/var(--tw-ring-opacity,1))}.focus\:ring-blue-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(59 130 246/var(--tw-ring-opacity,1))}.focus\:ring-blue-600:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(37 99 235/var(--tw-ring-opacity,1))}.focus\:ring-brand-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(59 130 246/var(--tw-ring-opacity,1))}.focus\:ring-emerald-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(16 185 129/var(--tw-ring-opacity,1))}.focus\:ring-emerald-600:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(5 150 105/var(--tw-ring-opacity,1))}.focus\:ring-indigo-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(99 102 241/var(--tw-ring-opacity,1))}.focus\:ring-purple-600:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(147 51 234/var(--tw-ring-opacity,1))}.focus\:ring-rose-400:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(251 113 133/var(--tw-ring-opacity,1))}.focus\:ring-rose-600:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(225 29 72/var(--tw-ring-opacity,1))}.focus\:ring-slate-400:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(148 163 184/var(--tw-ring-opacity,1))}.focus\:ring-slate-700:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(51 65 85/var(--tw-ring-opacity,1))}.active\:scale-95:active{--tw-scale-x:.95;--tw-scale-y:.95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.disabled\:opacity-60:disabled{opacity:.6}.group:hover .group-hover\:scale-105{--tw-scale-x:1.05;--tw-scale-y:1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@media (min-width:640px){.sm\:col-span-1{grid-column:span 1/span 1}.sm\:col-span-2{grid-column:span 2/span 2}.sm\:col-span-3{grid-column:span 3/span 3}.sm\:col-span-5{grid-column:span 5/span 5}.sm\:col-span-6{grid-column:span 6/span 6}.sm\:block{display:block}.sm\:inline{display:inline}.sm\:flex{display:flex}.sm\:hidden{display:none}.sm\:w-auto{width:auto}.sm\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:gap-4{gap:1rem}.sm\:p-5{padding:1.25rem}.sm\:p-6{padding:1.5rem}.sm\:p-8{padding:2rem}.sm\:px-5{padding-left:1.25rem;padding-right:1.25rem}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:py-4{padding-bottom:1rem;padding-top:1rem}.sm\:py-5{padding-top:1.25rem}.sm\:pb-5,.sm\:py-5{padding-bottom:1.25rem}.sm\:text-2xl{font-size:1.5rem;line-height:2rem}.sm\:text-3xl{font-size:1.875rem;line-height:2.25rem}.sm\:text-4xl{font-size:2.25rem;line-height:2.5rem}.sm\:text-5xl{font-size:3rem;line-height:1}.sm\:text-base{font-size:1rem;line-height:1.5rem}.sm\:text-lg{font-size:1.125rem;line-height:1.75rem}}@media (min-width:768px){.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:py-20{padding-bottom:5rem;padding-top:5rem}}@media (min-width:1024px){.lg\:sticky{position:sticky}.lg\:top-20{top:5rem}.lg\:col-span-5{grid-column:span 5/span 5}.lg\:col-span-7{grid-column:span 7/span 7}.lg\:flex{display:flex}.lg\:hidden{display:none}.lg\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.lg\:gap-6{gap:1.5rem}.lg\:px-8{padding-left:2rem;padding-right:2rem}}@media (min-width:1280px){.xl\:col-span-4{grid-column:span 4/span 4}.xl\:col-span-8{grid-column:span 8/span 8}}
/* ==========================================================================
   Nachtrag 3.12.0 - Dunkelmodus: Indigo- und Violett-Flaechen (K-1, M-1)
   --------------------------------------------------------------------------
   Befund: Die vorhandenen body.dark-Regeln deckten emerald, amber, rose,
   brand/blue und slate ab - indigo und purple fehlten vollstaendig.
   Folge bei #xrechnung-block (bg-indigo-50/60): Die Flaeche blieb hell
   (effektiv rgb(152,158,176)), waehrend die Kinder auf helle Schrift
   umgestellt wurden -> Kontrast 1,04:1 (text-slate-500) und 1,80:1
   (text-slate-700), WCAG 1.4.3 (4,5:1) verfehlt.
   Aufbau, Spezifitaet und Vorgehen folgen exakt dem vorhandenen Muster
   (vgl. body.dark :is(.bg-brand-50,...){background-color:#12234a!important}).
   Flaechenfarben wie die bereits benutzten Dunkeltoene:
   #12234a (wie brand-50/blue-50), #2e1065 (violett), #1e3a8a (Rahmen).
   ========================================================================== */

/* Indigo: Flaechen, Rahmen, Schrift */
body.dark :is(.bg-indigo-50,.bg-indigo-50\/60,.bg-indigo-50\/70,.bg-indigo-100):not(#pages-container *){background-color:#12234a!important}
body.dark :is(.hover\:bg-indigo-100:hover):not(#pages-container *){background-color:#1e3a8a!important}
body.dark :is(.border-indigo-100,.border-indigo-200):not(#pages-container *){border-color:#1e3a8a!important}
body.dark :is(.text-indigo-900,.text-indigo-800):not(#pages-container *){color:#c7d2fe!important}
body.dark :is(.text-indigo-700,.text-indigo-600):not(#pages-container *){color:#a5b4fc!important}

/* Violett: Flaechen und Schrift */
body.dark :is(.bg-purple-100,.bg-purple-50):not(#pages-container *){background-color:#2e1065!important}
body.dark :is(.text-purple-700,.text-purple-600):not(#pages-container *){color:#d8b4fe!important}

/* Pflichtfeld-Sternchen: text-rose-500 fehlte in der vorhandenen rose-Regel
   (die deckte nur rose-600 bis rose-900 ab). */
body.dark :is(.text-rose-500):not(#pages-container *){color:#fda4af!important}

/* --------------------------------------------------------------------------
   M-9: .border-t-brand-700 war in site.css nicht definiert. Der Lade-Spinner
   (index.htm) hatte dadurch kein farbiges Segment und wirkte eingefroren.
   -------------------------------------------------------------------------- */
.border-t-brand-700{border-top-color:#1d4ed8}
body.dark .border-t-brand-700{border-top-color:#93c5fd}
/* --------------------------------------------------------------------------
   M-8: Symbol-Knopfe (nur Symbol, kein Text) groesser und sicher treffbar.
   Gemessen am 3.12.0: .info-pop-close-inline war 20x20 px und verfehlte
   damit WCAG 2.2 AA (SC 2.5.8, Mindestgroesse 24 px). Die Loeschknoepfe in
   Kundenbuch, Archiv und Entwuerfen waren 28 px hoch.
   .info-pop-close-inline bekommt die Mindestgroesse 24 px (Norm erfuellt),
   .symbol-knopf die Komfortgroesse 44 px (Empfehlung fuer Touch).
   Beide setzen nur Groesse und Ausrichtung, keine Farben - der Dunkelmodus
   bleibt unberuehrt.
   -------------------------------------------------------------------------- */
.info-pop-close-inline{min-width:1.5rem;min-height:1.5rem}
.symbol-knopf{display:inline-flex;align-items:center;justify-content:center;min-width:2.75rem;min-height:2.75rem}
/* ==========================================================================
   Nachtrag 3.13.0 - Hauptnavigation, Themen-Menue, Mobilmenue, Schnellzugriff
   --------------------------------------------------------------------------
   Etappe 1 des UX-Umbaus. Alles Neue steht in eigenen Klassen (kopf-, hl-,
   tp-, mp-, sz-). Grund: site.css ist ein FERTIGER Tailwind-Build - neue
   Utility-Klassen (etwa lg:grid) gaebe es darin nicht. Abschnitt 64 der
   Pruefdatei prueft deshalb, dass jede im neuen Markup benutzte Klasse hier
   wirklich definiert ist.

   Aufbau:
     .kopf-zeile       Zeile 1 der Kopfzeile: Logo mittig, Bedienung rechts
     .haupt-leiste     Zeile 2: die acht Hauptpunkte (ab 1024 px)
     .themen-panel     Themen-Menue unter der Hauptleiste (ab 1024 px)
     .mobil-panel      Vollbildmenue am Hamburger (unter 1024 px)
     .schnellzugriff   zwei schwebende Knoepfe unten rechts

   Zeile 2 klebt bewusst NICHT mit: /erstellen/ rechnet mit einer 64 px
   hohen Kopfzeile (lg:top-20 = 80 px, scroll-mt-20/24). Eine klebende
   zweite Zeile wuerde diese Werte verschieben - der Editor bleibt aber
   unangetastet.

   Farben: hell wie bisher (slate/brand), dunkel ueber body.dark mit den
   bereits benutzten Dunkeltoenen #16203a (Flaeche), #334155 (Rahmen),
   #cbd5e1 (Text), #93c5fd (Akzent).
   ========================================================================== */

/* --------------------------------------------------------------------------
   Zeile 1: Logo mittig, Bedienung rechts
   Unter 1024 px bleibt es bei "Logo links, Menue-Knopf rechts" - dort waere
   eine Mitte nicht zu halten (Wortmarke + Knopf passen sonst nicht mehr).
   -------------------------------------------------------------------------- */
.kopf-zeile{display:flex;align-items:center;justify-content:space-between;gap:.75rem;height:4rem}
.kopf-luecke{display:none}
.kopf-logo{display:flex;align-items:center;gap:.625rem;min-width:0}
.kopf-rechts{display:flex;align-items:center;justify-content:flex-end;gap:.5rem}
.kopf-hamburger{display:inline-flex}
.kopf-cta{display:none}
.kopf-install{display:none}
/* Fassung 3.15.9: Der Installations-Knopf wird sichtbar, sobald site.js nach
   dem beforeinstallprompt-Ereignis .inline-flex setzt - und zwar auf ALLEN
   Bildschirmbreiten. Bis 3.15.8 stand diese Regel in der 1024-px-Abfrage;
   damit war der Knopf auf Handys und Tablets nie zu sehen, obwohl gerade dort
   die PWA-Installation der wichtigste Fall ist (Android). Auf iOS/Safari gibt
   es das Ereignis nicht - dort bleibt der Knopf korrekt verborgen.
   Zwei Klassen im Selektor: so gewinnt die Regel auch gegen Tailwind-.hidden. */
.kopf-install.inline-flex{display:inline-flex}
/* Unter 1024 px bleibt nur das Symbol: die Kopfzeile ist dort schmal
   (Logo + Installieren + Dunkelmodus + Menue-Knopf). Den zugaenglichen Namen
   traegt der Knopf selbst (aria-label="App installieren").
   min-width 2.75rem = 44 px: die Touch-Zielgroesse nach WCAG 2.5.5, die im
   Projekt fuer alle Knoepfe gilt (gemessen: ohne die Regel waere der
   Symbol-Knopf nur 42 px breit). */
@media (max-width:1023.98px){
  .kopf-install-text{display:none}
  .kopf-install.inline-flex{min-width:2.75rem;justify-content:center}
}

@media (min-width:1024px){
  .kopf-zeile{display:grid;grid-template-columns:1fr auto 1fr}
  .kopf-luecke{display:block}
  .kopf-logo{justify-self:center}
  .kopf-hamburger{display:none}
  .kopf-cta{display:inline-flex}
}

/* --------------------------------------------------------------------------
   Zeile 2: die Hauptleiste (ab 1024 px)
   Seit 3.15.7 NEUN Punkte in 15 px Schrift ("Kontakt" ist dazugekommen),
   Abstand 0.625rem. Geprueft mit Abschnitt 64 und 68: bei 1024 px stehen
   960 px zur Verfuegung; die neun Punkte messen mit den echten Vorschubbreiten
   der Inter-Datei rund 868 px (mit 10 % Zuschlag fuer Halbfett 954 px) und
   brechen damit nicht um. Dafuer sorgen zusaetzlich white-space:nowrap und
   der verkleinerte Abstand (vorher 0.875rem).
   -------------------------------------------------------------------------- */
.haupt-leiste{display:none;position:relative;background-color:#fff;border-bottom:1px solid #e2e8f0}
@media (min-width:1024px){ .haupt-leiste{display:block} }

.hl-inner{display:flex;align-items:center;justify-content:center}
.hl-liste{display:flex;align-items:center;justify-content:center;gap:.625rem;list-style:none;margin:0;padding:0;min-height:2.75rem}
.hl-link{display:inline-flex;align-items:center;gap:.25rem;font-size:15px;line-height:1.25rem;font-weight:600;color:#475569;text-decoration:none;white-space:nowrap;padding:.4rem 0;border-bottom:2px solid transparent;transition:color .15s ease,border-color .15s ease}
.hl-link:hover{color:#1d4ed8}
.hl-link[aria-current]{color:#1d4ed8;border-bottom-color:#1d4ed8}
.hl-themen[aria-current="true"]{color:#1d4ed8;border-bottom-color:#1d4ed8}
.hl-pfeil{width:.875rem;height:.875rem;flex-shrink:0;transition:transform .15s ease}
.hl-themen[aria-expanded="true"] .hl-pfeil{transform:rotate(180deg)}

/* --------------------------------------------------------------------------
   Themen-Menue: drei Spalten, sechzehn echte Verweise
   -------------------------------------------------------------------------- */
.themen-panel{position:absolute;left:0;right:0;top:100%;z-index:45;background-color:#fff;border-top:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0;box-shadow:0 18px 30px -12px rgba(15,23,42,.28)}
.tp-inner{padding-top:1.25rem;padding-bottom:1.5rem;text-align:left}
.tp-raster{display:grid;grid-template-columns:1fr 1fr 1.6fr;gap:2rem}
.tp-spalte{min-width:0}
.tp-kopf{margin:0 0 .5rem;font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#64748b}
.tp-liste{list-style:none;margin:0;padding:0}
.tp-link{display:block;padding:.375rem 0;font-size:.875rem;line-height:1.35;font-weight:500;color:#334155;text-decoration:none;transition:color .15s ease}
.tp-link:hover{color:#1d4ed8}
.tp-link[aria-current]{color:#1d4ed8;font-weight:700}

/* --------------------------------------------------------------------------
   Mobilmenue (unter 1024 px): Vollbild unter der Kopfzeile
   -------------------------------------------------------------------------- */
.mobil-panel{position:fixed;left:0;right:0;top:4rem;bottom:0;z-index:45;overflow-y:auto;overscroll-behavior:contain;background-color:#fff;border-top:1px solid #e2e8f0;box-shadow:0 18px 30px -12px rgba(15,23,42,.28)}
.mp-inner{padding-top:.5rem;padding-bottom:3rem}
.mp-liste{list-style:none;margin:0;padding:0}
.mp-link{display:block;padding:.8rem .25rem;font-size:.95rem;line-height:1.4;font-weight:600;color:#1e293b;text-decoration:none;border-bottom:1px solid #f1f5f9}
.mp-link:hover{color:#1d4ed8}
/* Fassung 3.15.9: „App installieren" im Mobilmenue (Variante 3 der Aufgabe).
   Der Eintrag steht auf jeder Seite im Markup und ruft installPWA() aus
   site.js auf: mit Installationsangebot oeffnet er den echten Dialog, auf
   iOS die Anleitung (#modal-ios-install), sonst erscheint ein Hinweis.
   Es ist ein <button>, sieht aber aus wie die uebrigen Menueeintraege
   (.mp-link). Laeuft die Seite bereits als installierte App, wird der
   Eintrag ausgeblendet - dann gibt es nichts zu installieren. */
.mp-install{width:100%;text-align:left;background:none;border:0;cursor:pointer;font-family:inherit}
@media all and (display-mode:standalone){
  .mp-install{display:none}
}
.mp-trenner{height:1px;margin:1.25rem 0;background-color:#e2e8f0}
.mp-themen{display:block;padding:.8rem .25rem;font-size:.95rem;font-weight:700;color:#1d4ed8;text-decoration:none}
.mp-recht{display:flex;gap:1.25rem;margin-top:1rem;font-size:.8rem}
.mp-recht a{color:#64748b;text-decoration:none}
.mp-recht a:hover{color:#1d4ed8}
body.mobil-offen{overflow:hidden}
body.mobil-offen .schnellzugriff{display:none}

/* --------------------------------------------------------------------------
   Schnellzugriff: Adressbuch und Dashboard, unten rechts
   Immer erreichbar, aber so schlank wie moeglich: 44 px (WCAG 2.5.5),
   Randlage, und am Seitenende Freiraum im Fuss - dadurch wird kein Inhalt
   dauerhaft verdeckt. Auf dem Handy EIN Knopf, der die beiden Eintraege
   aufklappt.
   -------------------------------------------------------------------------- */
.schnellzugriff{position:fixed;right:.75rem;bottom:.75rem;z-index:45;display:flex;flex-direction:column;align-items:flex-end;gap:.5rem}
body.schwebend footer{padding-bottom:5rem}
/* Nur wo die Handyleiste von /erstellen/ ueberhaupt sichtbar ist (unter
   1024 px) ruecken die Knoepfe darueber - sonst wuerden sie am Schreibtisch
   grundlos hoch stehen. */
@media (max-width:1023.98px){
  body.hat-mobil-leiste .schnellzugriff{bottom:calc(5rem + env(safe-area-inset-bottom,0px))}
}

.sz-knopf{position:relative;display:inline-flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;border-radius:50%;background-color:#1d4ed8;color:#fff;border:1px solid #1e3a8a;box-shadow:0 10px 20px -6px rgba(15,23,42,.45);cursor:pointer;text-decoration:none;font-weight:700;transition:background-color .15s ease}
.sz-knopf:hover{background-color:#1e40af}
.sz-knopf:focus-visible{outline:3px solid #0369a1;outline-offset:2px}
.sz-knopf svg{width:1.25rem;height:1.25rem;flex-shrink:0}
.sz-text{position:absolute;right:calc(100% + .5rem);white-space:nowrap;background-color:#0f172a;color:#f8fafc;font-size:.75rem;font-weight:600;padding:.3rem .6rem;border-radius:0;opacity:0;visibility:hidden;transition:opacity .12s ease;pointer-events:none}
.sz-knopf:hover .sz-text,.sz-knopf:focus-visible .sz-text{opacity:1;visibility:visible}
.sz-fab{display:none}

/* Rueckmeldung aus der Adresse: kurzer Blickfang */
@keyframes blickfang-puls{0%,100%{box-shadow:0 0 0 0 rgba(245,158,11,.55)}50%{box-shadow:0 0 0 8px rgba(245,158,11,0)}}
.ist-blickfang{outline:3px solid #b45309;outline-offset:2px;border-radius:0;animation:blickfang-puls 1.2s ease-in-out 3}

/* --------------------------------------------------------------------------
   Dunkelmodus - Muster und Farbwerte wie im vorhandenen Bestand
   -------------------------------------------------------------------------- */
body.dark .haupt-leiste{background-color:#16203a;border-bottom-color:#334155}
body.dark .hl-link{color:#cbd5e1}
body.dark .hl-link:hover{color:#93c5fd}
body.dark .hl-link[aria-current]{color:#93c5fd;border-bottom-color:#93c5fd}
body.dark .hl-themen[aria-current="true"]{color:#93c5fd;border-bottom-color:#93c5fd}
body.dark .themen-panel{background-color:#16203a;border-color:#334155}
body.dark .tp-kopf{color:#94a3b8}
body.dark .tp-link{color:#cbd5e1}
body.dark .tp-link:hover,body.dark .tp-link[aria-current]{color:#93c5fd}
body.dark .mobil-panel{background-color:#16203a;border-top-color:#334155}
body.dark .mp-link{color:#e2e8f0;border-bottom-color:#334155}
body.dark .mp-link:hover{color:#93c5fd}
body.dark .mp-trenner{background-color:#334155}
body.dark .mp-themen{color:#93c5fd}
body.dark .mp-recht a{color:#94a3b8}
body.dark .mp-recht a:hover{color:#93c5fd}
body.dark .sz-knopf{background-color:#1e3a8a;border-color:#334155;color:#f8fafc}
body.dark .sz-knopf:hover{background-color:#1d4ed8}
body.dark .sz-text{background-color:#e2e8f0;color:#0f172a}
body.dark .ist-blickfang{outline-color:#fbbf24}

/* --------------------------------------------------------------------------
   Handy (unter 640 px): EIN Knopf mit den zwei Eintraegen
   -------------------------------------------------------------------------- */
@media (max-width:639.98px){
  .schnellzugriff .sz-knopf{display:none;width:auto;height:auto;min-height:2.75rem;padding:.5rem .9rem;gap:.5rem;border-radius:50%;font-size:.8rem}
  .schnellzugriff .sz-fab{display:inline-flex}
  .schnellzugriff.ist-offen .sz-knopf{display:inline-flex}
  .sz-text{position:static;right:auto;opacity:1;visibility:visible;background-color:transparent;color:inherit;font-size:.8rem;font-weight:700;padding:0;border-radius:0}
  body.dark .sz-text{background-color:transparent;color:inherit}
}
/* ==========================================================================
   Nachtrag 3.14.0 - Assistent (Etappe 2)
   --------------------------------------------------------------------------
   Ergänzt die vorhandenen .assistent-Klassen um das, was der Umbau braucht:
     .assistent-balken      Fortschrittsbalken im Kopf (immer sichtbar)
     .assistent-stammdaten  Hinweis „Deine Daten sind gespeichert." + [Bearbeiten]
     .assistent-position    eine Zeile in der Positionsliste der Zusammenfassung
     .assistent-knopfreihe  „Jetzt herunterladen" / „Erweiterte Optionen"
     .assistent-kunde       Vorschlag aus dem Adressbuch (Schritt Empfänger)

   Grund für einen eigenen Block: site.css ist ein FERTIGER Tailwind-Build -
   neue Utility-Klassen (etwa lg:grid) gäbe es darin nicht. Diese fünf Klassen
   sind deshalb vollständig hier definiert; Abschnitt 65 der Prüfdatei prüft,
   dass im Assistenten-Markup keine ungestylte Klasse benutzt wird.

   Farben: hell wie bisher, dunkel über body.dark mit den bereits benutzten
   Dunkeltönen #16203a (Fläche), #334155 (Rahmen), #93c5fd (Akzent).
   ========================================================================== */

/* Struktur-Hilfen: verhindern, dass ein Rasterfeld den Inhalt aufbläht. */
.assistent-koerper{min-width:0}
.assistent-schritt{min-width:0}

/* --------------------------------------------------------------------------
   Fortschrittsbalken („Schritt 3 von 6" mit sichtbarem Fortschritt)
   -------------------------------------------------------------------------- */
.assistent-balken{display:block;height:.35rem;max-width:22rem;margin-top:.4rem;border-radius:0;background-color:#e2e8f0;overflow:hidden}
.assistent-balken-fuellung{display:block;height:100%;width:0;border-radius:0;background-color:#1d4ed8;transition:width .25s ease}

/* --------------------------------------------------------------------------
   Hinweis statt Schritt 0
   -------------------------------------------------------------------------- */
.assistent-stammdaten{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .75rem;padding:.6rem .85rem;border:1px solid #a7f3d0;background-color:#ecfdf5;border-radius:0;font-size:.8125rem;line-height:1.5;font-weight:600;color:#065f46}
.assistent-stammdaten-text{min-width:0}
.assistent-stammdaten-knopf{font-size:.8125rem;font-weight:700;color:#1d4ed8;background-color:#fff;border:1px solid #bfdbfe;border-radius:0;padding:.3rem .7rem;cursor:pointer;transition:background-color .15s ease}
.assistent-stammdaten-knopf:hover{background-color:#eff6ff}
.assistent-stammdaten-knopf:focus-visible{outline:3px solid #0369a1;outline-offset:2px}

/* --------------------------------------------------------------------------
   Zusammenfassung: Positionen und Knopfreihe
   -------------------------------------------------------------------------- */
.assistent-positionen{list-style:none;margin:.25rem 0 0;padding:0}
.assistent-position{padding:.2rem 0;font-variant-numeric:tabular-nums}
.assistent-knopfreihe{display:flex;flex-wrap:wrap;gap:.75rem}

/* --------------------------------------------------------------------------
   Vorschläge aus dem Adressbuch (Schritt Empfänger)
   -------------------------------------------------------------------------- */
.assistent-kunde{display:inline-flex;align-items:center;margin:.15rem .3rem 0 0;padding:.2rem .6rem;border:1px solid #bfdbfe;background-color:#eff6ff;color:#1e40af;border-radius:0;font-size:.75rem;font-weight:700;cursor:pointer;transition:background-color .15s ease}
.assistent-kunde:hover{background-color:#dbeafe}
.assistent-kunde:focus-visible{outline:3px solid #0369a1;outline-offset:2px}

/* --------------------------------------------------------------------------
   Dunkelmodus
   -------------------------------------------------------------------------- */
body.dark .assistent-balken{background-color:#334155}
body.dark .assistent-balken-fuellung{background-color:#93c5fd}
body.dark .assistent-stammdaten{background-color:#052e21;border-color:#065f46;color:#6ee7b7}
body.dark .assistent-stammdaten-knopf{background-color:#16203a;border-color:#1e3a8a;color:#93c5fd}
body.dark .assistent-stammdaten-knopf:hover{background-color:#1e3a8a}
body.dark .assistent-kunde{background-color:#12234a;border-color:#1e3a8a;color:#bfdbfe}
body.dark .assistent-kunde:hover{background-color:#1e3a8a}

/* --------------------------------------------------------------------------
   Handy: Knöpfe untereinander, Balken über die volle Breite
   -------------------------------------------------------------------------- */
@media (max-width:639.98px){
  .assistent-balken{max-width:none}
  .assistent-knopfreihe{flex-direction:column}
  .assistent-knopfreihe > button{justify-content:center;width:100%}
}

/* ==========================================================================
   Nachtrag 3.15.0 - Assistent (Etappe 2, Fassung 3.15.0)
   --------------------------------------------------------------------------
   Ergaenzt die vorhandenen .assistent-Klassen um die Mehrfach-Positionen
   (Schritt "Positionen") und den Vermerk (Schritt "Zahlung & Vermerk"):

     .assistent-positionen-liste  Behaelter der Positionszeilen
     .assistent-position-zeile    eine Zeile: Kopf + Beschreibung/Menge/Einheit/Preis/Summe
     .assistent-position-kopf     Zeile mit Nummer und Muelleimer
     .assistent-position-weg      Muelleimer-Knopf
     .assistent-position-spalte   ein Feld der Zeile
     .assistent-position-breit    Beschreibung
     .assistent-position-erg      Zeilensumme
     .assistent-position-summe    Zahl der Zeilensumme
     .assistent-beispiel-hinweis  Hinweis auf die Beispielpositionen der Vorlage
     .assistent-beispiel-knopf    "Beispielpositionen entfernen"

   Grund wie beim Nachtrag 3.14.0: site.css ist ein FERTIGER Tailwind-Build -
   neue Utility-Klassen gaebe es darin nicht. Alle Klassen sind deshalb
   vollstaendig hier definiert; Abschnitt 65 und 66 der Pruefdatei pruefen,
   dass im Assistenten-Markup keine ungestylte Klasse benutzt wird.

   Farben wie im Assistenten ueblich: hell #f8fafc / #e2e8f0 / #1d4ed8,
   dunkel #16203a (Flaeche), #334155 (Rahmen), #93c5fd (Akzent).
   ========================================================================== */

.assistent-positionen-liste{display:flex;flex-direction:column;gap:.6rem;margin:0}
.assistent-position-zeile{display:grid;grid-template-columns:1fr;gap:.5rem;border:1px solid #e2e8f0;background-color:#f8fafc;border-radius:0;padding:.65rem .75rem}
.assistent-position-kopf{display:flex;align-items:center;justify-content:space-between;gap:.5rem}
.assistent-position-nr{font-size:.75rem;font-weight:700;color:#475569;letter-spacing:.05em;text-transform:uppercase}
.assistent-position-weg{display:inline-flex;align-items:center;justify-content:center;padding:.25rem;border:1px solid #e2e8f0;background-color:#ffffff;border-radius:0;color:#64748b;cursor:pointer;transition:color .15s ease,border-color .15s ease,background-color .15s ease}
.assistent-position-weg:hover{color:#e11d48;border-color:#fecdd3;background-color:#fff1f2}
.assistent-position-weg:focus-visible{outline:3px solid #0369a1;outline-offset:2px}
.assistent-position-spalte{min-width:0}
.assistent-position-erg{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem}
.assistent-position-erg-label{font-size:.75rem;font-weight:600;color:#64748b}
.assistent-position-summe{font-size:.9rem;font-weight:700;color:#0f172a;font-variant-numeric:tabular-nums}
.assistent-beispiel-hinweis{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .75rem;margin-bottom:.6rem;padding:.55rem .8rem;border:1px solid #fde68a;background-color:#fffbeb;border-radius:0;font-size:.8125rem;line-height:1.5;color:#78350f}
.assistent-beispiel-knopf{padding:.3rem .7rem;border:1px solid #fcd34d;background-color:#ffffff;border-radius:0;font-size:.8125rem;font-weight:700;color:#92400e;cursor:pointer;transition:background-color .15s ease}
.assistent-beispiel-knopf:hover{background-color:#fef3c7}
.assistent-beispiel-knopf:focus-visible{outline:3px solid #0369a1;outline-offset:2px}

/* Ab Tablet stehen Beschreibung, Menge, Einheit, Preis und Zeilensumme
   nebeneinander; die Kopfzeile der Position laeuft ueber die volle Breite. */
@media (min-width:640px){
  .assistent-position-zeile{grid-template-columns:2.5fr 1fr 1.4fr 1.5fr 1.2fr;align-items:end}
  .assistent-position-kopf{grid-column:1 / -1}
}

/* --------------------------------------------------------------------------
   Dunkelmodus
   -------------------------------------------------------------------------- */
body.dark .assistent-position-zeile{background-color:#16203a;border-color:#334155}
body.dark .assistent-position-nr{color:#94a3b8}
body.dark .assistent-position-weg{background-color:#1e293b;border-color:#334155;color:#94a3b8}
body.dark .assistent-position-weg:hover{color:#fda4af;border-color:#7f1d1d;background-color:#33151c}
body.dark .assistent-position-erg-label{color:#94a3b8}
body.dark .assistent-position-summe{color:#e2e8f0}
body.dark .assistent-beispiel-hinweis{background-color:#3a2708;border-color:#b45309;color:#fcd34d}
body.dark .assistent-beispiel-knopf{background-color:#16203a;border-color:#b45309;color:#fcd34d}
body.dark .assistent-beispiel-knopf:hover{background-color:#4a3008}

/* ==========================================================================
   Nachtrag 3.15.1 - Assistent (Etappe 2.5: Fehlermeldungen, DATEV-Haekchen)
   --------------------------------------------------------------------------
   Ergaenzt die Assistenten-Klassen um die Fehlermeldung am Feld und den
   optionalen DATEV-Bereich:

     .assistent-feld-fehler  Meldung direkt unter dem betroffenen Feld
     .assistent-datev        optionaler DATEV-Export in der Zusammenfassung
     [aria-invalid="true"]   rote Markierung des fehlerhaften Feldes
     #assistent-weiter[disabled]  gesperrter Weiter-Knopf

   Kein Modal, kein Overlay: die Meldung steht im Fluss unter dem Feld.
   Farben: hell #b91c1c auf #fef2f2, dunkel #fca5a5 auf #3f1d1d - beides
   deutlich ueber 4,5:1 (Abschnitt 67 der Pruefdatei rechnet das nach).
   ========================================================================== */

.assistent-feld-fehler{margin-top:.25rem;font-size:.75rem;line-height:1.45;font-weight:600;color:#b91c1c}
.assistent-schritt [aria-invalid="true"]{border-color:#dc2626;background-color:#fef2f2}
.assistent-schritt [aria-invalid="true"]:focus{outline-color:#dc2626}
.assistent-datev{min-width:0}
#assistent-weiter[disabled]{background-color:#94a3b8;opacity:.6;cursor:not-allowed;box-shadow:none}
#assistent-weiter[disabled]:hover{background-color:#94a3b8}

/* --------------------------------------------------------------------------
   Dunkelmodus
   -------------------------------------------------------------------------- */
body.dark .assistent-feld-fehler{color:#fca5a5}
body.dark .assistent-schritt [aria-invalid="true"]{border-color:#f87171;background-color:#3f1d1d}
body.dark #assistent-weiter[disabled]{background-color:#475569;color:#cbd5e1}
body.dark #assistent-weiter[disabled]:hover{background-color:#475569}

/* ==========================================================================
   Nachtrag 3.15.2 - Assistent und Hauptnavigation (Etappe 2.6)
   --------------------------------------------------------------------------
   Zwei Ergaenzungen:

     .assistent-feld-hinweis   grauer Hinweis unter einem Feld - fuer Faelle,
                               die wie ein Fehler aussehen, aber keiner sind
                               (Steuernummer leer, USt-IdNr. steht dafuer).
                               Mit Etappe 2.7 (Fassung 3.15.4) entfallen:
                               der Hinweis steht jetzt im rechten Kasten,
                               siehe Nachtrag 3.15.4 unten.

   Geaendert (nur Schriftgroesse, wie beauftragt):
     .hl-link  13px -> 15px. Nachgerechnet mit den echten Schriftdaten
               (Inter, hmtx/hmtx-Vorschuebe): Die acht Punkte brauchen bei
               15 px rund 831 px von 960 px, die bei 1024 px Breite zur
               Verfuegung stehen (1024 - 2 x 2rem Innenabstand). Es bleibt
               also Luft; white-space:nowrap verhindert einen Umbruch der
               einzelnen Punkte. Abschnitt 68 der Pruefdatei rechnet das
               dauerhaft nach.
   ========================================================================== */

/* ==========================================================================
   Nachtrag 3.15.4 - Hinweise und Erklaerungen im rechten Kasten (Etappe 2.7)
   --------------------------------------------------------------------------
   Fehlermeldungen stehen weiterhin direkt am betroffenen Feld (rot, mit
   aria-invalid und aria-describedby). Alles, was nur erklaert und nicht
   blockiert, steht jetzt im rechten Kasten "Was hier passiert" - direkt unter
   dem Schritt-Text und ueber der gruenen Merkliste. Damit steht nichts mehr
   zwischen zwei Eingabefeldern, was kein Fehler ist.

   Titel gelb, Text normal, keine gelbe Flaeche: Die Farbe ist nicht das
   einzige Signal, jeder Hinweis ist ein vollstaendiger Satz.

   .assistent-hinweise        Behaelter im Kasten; .hidden schaltet ihn aus
   .assistent-hinweis-block   ein einzelner Hinweis, links ein schmaler Balken
   .assistent-hinweis-titel   die Zeile "Hinweis" - gelb und fett
   .assistent-hinweis-text    der erklaerende Satz in normaler Schriftfarbe

   Mehrere Hinweise stehen untereinander und sind zusaetzlich durch Abstand
   und eine feine Linie getrennt - die Trennung ist also nicht nur farbig.
   Der graue Feldhinweis (.assistent-feld-hinweis) ist damit entfallen.

   Farben (gemessen, Hintergrund des Kastens ist #fff bzw. #16203a):
     hell   Titel/Balken #b45309 auf #fff      = 5,02:1
            Text         #334155 auf #fff      = 10,35:1
     dunkel Titel/Balken #fbbf24 auf #16203a   = 9,66:1
            Text         #cbd5e1 auf #16203a   = 10,87:1
   Die Trennlinie (#cbd5e1 bzw. #334155) ist reine Gliederung ohne Aussage.
   ========================================================================== */

.assistent-hinweise{display:flex;flex-direction:column}
.assistent-hinweise.hidden{display:none}
.assistent-hinweis-block{border-left-width:3px;border-left-style:solid;border-left-color:#b45309;padding-left:.6rem}
.assistent-hinweis-titel{margin:0 0 .2rem;font-size:.75rem;font-weight:700;letter-spacing:.02em;color:#b45309}
.assistent-hinweis-text{margin:0;font-size:.8125rem;line-height:1.55;color:#334155}

/* Ab dem zweiten Hinweis: Abstand plus feine Trennlinie */
.assistent-hinweis-block + .assistent-hinweis-block{margin-top:.75rem;border-top-width:1px;border-top-style:solid;border-top-color:#cbd5e1;padding-top:.75rem}

/* --------------------------------------------------------------------------
   Dunkelmodus
   -------------------------------------------------------------------------- */
body.dark .assistent-hinweis-block{border-left-color:#fbbf24}
body.dark .assistent-hinweis-block + .assistent-hinweis-block{border-top-color:#334155}
body.dark .assistent-hinweis-titel{color:#fbbf24}
body.dark .assistent-hinweis-text{color:#cbd5e1}

/* --------------------------------------------------------------------------
   Mobil (unter 1024 px): Der Kasten steht im Raster unter dem Formular, die
   Hinweise erscheinen also nach den Feldern - Fehler weiterhin am Feld.
   -------------------------------------------------------------------------- */
@media (max-width:1023px){.assistent-hinweise{margin-top:.25rem}}

/* ==========================================================================
   Nachtrag 3.15.5 - Angebots-Seite: eigene Farbe (Etappe 3a)
   --------------------------------------------------------------------------
   Die Rechnungs-Seite bleibt unveraendert (Pfirsich/Bernstein, blauer Balken).
   Die Angebots-Seite traegt data-dokumentart="angebot" am <body>; nur dort
   greifen diese Regeln. Ruhiges Salbeigruen im Hellmodus, kraeftigeres Gruen
   im Dunkelmodus.

   Rahmen, aktive Schritt-Markierung und die Punkte arbeiten bereits mit den
   Variablen --assistant-*: dort genuegt das Umsetzen der Variablen. Nur
   Fortschrittsbalken, Symbolflaeche, Punkte-Schimmer, Striche und die beiden
   primaeren Knoepfe tragen im Bestand feste Farbwerte - sie werden einzeln
   ersetzt.

   Farben (gemessen, WCAG 2.1):
     hell   Text   #2c452f auf #e6efe3 =  8,91:1
            Akzent #3f6b4a auf #e6efe3 =  5,22:1   (Symbolflaeche)
            Balken #3f6b4a auf #e2e8f0 =  4,99:1   (Spur des Fortschritts)
            Knopf  #ffffff auf #3f6b4a =  6,15:1   (Hover #35593f = 7,92:1)
     dunkel Text   #dceadb auf #27332a = 10,57:1
            Akzent #9ed2a6 auf #27332a =  7,67:1
            Balken #8ecb98 auf #334155 =  5,50:1
            Knopf  #10231a auf #8ecb98 =  8,73:1   (Hover #a3d9ab = 10,23:1)

   Abgrenzung: kein Gelbgruen (das ist die Warnfarbe des Hinweises), kein
   kraeftiges Emerald (das ist die Erfolgsfarbe "Deine Daten sind gespeichert").
   Salbei liegt bewusst dazwischen. Die Farbe ist nie das einzige Signal:
   Assistententitel, Schritttitel, Knoepfe und Texte sagen zusaetzlich
   "Angebot".
   ========================================================================== */

body[data-dokumentart="angebot"]{
    --assistant-bg-light:#e6efe3;
    --assistant-bg-light-stark:#d3e2d0;
    --assistant-text-light:#2c452f;
    --assistant-rand-light:#c2d5bb;
    --assistant-bg-dark:#27332a;
    --assistant-text-dark:#dceadb;
    --assistant-akzent-dark:#9ed2a6;
    --assistent-akzent:#3f6b4a;
}

/* Symbolflaeche im Kopf (Bestand: Bernstein #b45309). */
body[data-dokumentart="angebot"] #assistent .assistent-kopf .assistent-symbol{background-color:#3f6b4a!important;color:#fff!important}
body.dark[data-dokumentart="angebot"] #assistent .assistent-kopf .assistent-symbol{background-color:#9ed2a6!important;color:#27332a!important}

/* Punkte und Verbindungsstriche (Bestand: Brauntoene). */
body[data-dokumentart="angebot"] .assistent-punkt.ist-aktiv{box-shadow:0 0 0 3px rgba(63,107,74,.28)}
body[data-dokumentart="angebot"] .assistent-strich{background-color:rgba(44,69,47,.35)}
body.dark[data-dokumentart="angebot"] .assistent-strich{background-color:rgba(220,234,219,.35)}
body[data-dokumentart="angebot"] .assistent-leisten-knopf.ist-aktiv .assistent-punkt{color:#3f6b4a}
body.dark[data-dokumentart="angebot"] .assistent-leisten-knopf.ist-aktiv .assistent-punkt{color:#9ed2a6}

/* Fortschrittsbalken (Bestand: blau #1d4ed8 bzw. #93c5fd). */
body[data-dokumentart="angebot"] .assistent-balken-fuellung{background-color:#3f6b4a}
body.dark[data-dokumentart="angebot"] .assistent-balken-fuellung{background-color:#8ecb98}

/* Primaere Knoepfe (Bestand: bg-brand-700 = blau). :not([disabled]) haelt den
   gesperrten Weiter-Knopf grau, wie im Bestand. */
body[data-dokumentart="angebot"] #assistent-weiter:not([disabled]),
body[data-dokumentart="angebot"] #assistent-download:not([disabled]){background-color:#3f6b4a}
body[data-dokumentart="angebot"] #assistent-weiter:not([disabled]):hover,
body[data-dokumentart="angebot"] #assistent-download:not([disabled]):hover{background-color:#35593f}
body.dark[data-dokumentart="angebot"] #assistent-weiter:not([disabled]),
body.dark[data-dokumentart="angebot"] #assistent-download:not([disabled]){background-color:#8ecb98;color:#10231a}
body.dark[data-dokumentart="angebot"] #assistent-weiter:not([disabled]):hover,
body.dark[data-dokumentart="angebot"] #assistent-download:not([disabled]):hover{background-color:#a3d9ab;color:#10231a}

/* ==========================================================================
   Nachtrag 3.15.6 - Spitze Ecken (Etappe 3, Teil A)
   --------------------------------------------------------------------------
   Abgerundete Ecken wirken generisch; Kaesten, Knoepfe, Felder, Banner,
   Fenster und Tabellen bekommen deshalb spitze Ecken. Die Werte selbst sind
   bereits oben in dieser Datei auf 0 gesetzt (Tailwind-Klassen .rounded bis
   .rounded-3xl ebenso). Hier steht nur noch die SICHERHEITSREGEL: Sie faengt
   alles ab, was nicht in dieser Datei steht - Klassennamen im Markup,
   eingebaute Fremd-Bausteine (pdf.js, tesseract) und spaetere Ergaenzungen.

   Ausgenommen bleiben:
     · das DOKUMENT (#pages-container) - Vorschau und Druck/PDF. Die
       Rechnungs-Dekorationen (Wellen, Boegen) sind Teil jedes Belegs und
       duerfen sich NICHT aendern. Diese Schreibweise nutzt die Datei schon
       im Dunkelmodus (:not(#pages-container *)).
     · echte KREISE: ein Kreis ist keine abgerundete Ecke. Sie stehen auf
       50 % und sind hier von der Regel ausgenommen, damit ihr Wert bleibt:
         .rounded-full    (Statuspunkte, Zier-Icons, Farbmuster)
         .assistent-punkt (Fortschrittspunkte im Assistenten)
         .step-num        (Schrittnummer im Ratgeber)
         .sz-knopf        (runder Schnellzugriff-Knopf)
         .info-i          (rundes Info-Zeichen)
     · Radio-Knoepfe und Kaestchen: Sie behalten den Browser-Standard.

   Ergebnis: entweder 0 oder 50 % - kein Zwischenwert. Abschnitt 72 der
   Pruefdatei rechnet das nach (Quelltext und Wirkung).
   ========================================================================== */

body *:not(#pages-container):not(#pages-container *):not(.rounded-full):not(.assistent-punkt):not(.info-i):not(.step-num):not(.sz-knopf):not([type="checkbox"]):not([type="radio"]){border-radius:0!important}

/* ==========================================================================
   Nachtrag 3.15.7 - Einfahrbare Vorschau am rechten Rand (Etappe 4, Teil D)
   --------------------------------------------------------------------------
   Die Live-Vorschau stand bis 3.15.6 unter dem Formular und wurde beim Tippen
   mitgeschoben. Jetzt liegt sie in einem Feld am rechten Rand
   (#vorschau-panel): standardmaessig eingefahren, geoeffnet ueber den Reiter
   „Vorschau" am rechten Rand (#vorschau-tab) oder den Knopf „Vorschau" der
   Handyleiste. Den Zustand merkt /assets/js/vorschau.js im LocalStorage.

   WARUM DAS DOKUMENT NICHT KLEINER GERECHNET WIRD
   Die A4-Seiten bleiben in Originalgroesse (210 mm breit, siehe renderInvoice-
   Pages in generator.js). Eine Verkleinerung (zoom/transform) wuerde in das
   Dokument selbst eingreifen - und genau dieselben Seiten gehen in die
   PDF-Erzeugung. Vorschau und Ausgabe sollen gleich bleiben. Deshalb scrollt
   das Feld: unter 1024 px uebernimmt das die vorhandene Regel
   .preview-scale-wrapper (overflow-x:auto), im Feld gilt overflow:auto.

   EBENEN (z-index): Seiteninhalt < Vorschaufenster (42) < Reiter (41 ist
   darunter, er faehrt ohnehin mit hinaus) < schwebende Knoepfe (45). Die drei
   schwebenden Knoepfe bleiben damit auch ueber dem geoeffneten Fenster
   erreichbar (Etappe 4, Teil C).

   HANDY (unter 1024 px): Vollbild von unten - wie ein Blatt, das hereinfaehrt.
   Der Hintergrund steht dabei still (overflow:hidden am <body>), damit nicht
   zwei Ebenen gleichzeitig scrollen.
   ========================================================================== */

.vorschau-panel{position:fixed;top:0;right:0;bottom:0;z-index:42;display:flex;flex-direction:column;width:min(46vw,52rem);max-width:100vw;background-color:#fff;border-left:1px solid #cbd5e1;box-shadow:-20px 0 44px -28px rgba(15,23,42,.55);transform:translateX(100%);visibility:hidden;transition:transform .28s ease,visibility .28s ease;overflow:hidden}
/* Fassung 3.15.15: Im geöffneten Zustand wird der Transform ganz entfernt.
   Ein dauerhafter transform erzeugt auf älteren iOS-Geräten eine eigene
   Ebene – der Inhalt darunter blieb dort weiß. */
body.vorschau-offen .vorschau-panel{transform:none}
body.vorschau-offen .vorschau-panel{transform:translateX(0);visibility:visible}
.vorschau-panel-kopf{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.6rem .9rem;border-bottom:1px solid #e2e8f0;background-color:#f8fafc;flex:0 0 auto}
/* Fassung 3.15.15: kein -webkit-overflow-scrolling mehr. Auf älteren
   iOS-Geräten blieb der Inhalt dieses Feldes weiß – genau das gemeldete
   Symptom („Vorschau öffnet sich, bleibt leer"). overflow:auto genügt. */
.vorschau-panel #vorschau{flex:1 1 auto;min-height:0;overflow:auto;padding:.9rem}
.vorschau-schliessen{display:inline-flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;background-color:transparent;border:1px solid #cbd5e1;color:#334155;cursor:pointer;flex:0 0 auto}
.vorschau-schliessen:hover{background-color:#e2e8f0;color:#0f172a}
.vorschau-schliessen:focus-visible{outline:3px solid #0369a1;outline-offset:2px}

.vorschau-tab{position:fixed;top:50%;right:0;z-index:41;display:inline-flex;flex-direction:column;align-items:center;gap:.4rem;padding:.9rem .45rem;background-color:#1d4ed8;color:#fff;border:1px solid #1e3a8a;cursor:pointer;font-size:.8rem;font-weight:700;transform:translateY(-50%);transition:transform .28s ease,background-color .15s ease,visibility .28s ease;box-shadow:-8px 0 18px -10px rgba(15,23,42,.55)}
.vorschau-tab:hover{background-color:#1e40af}
.vorschau-tab:focus-visible{outline:3px solid #0369a1;outline-offset:2px}
.vorschau-tab-text{writing-mode:vertical-rl;transform:rotate(180deg);white-space:nowrap}
.vorschau-tab-pfeil{transition:transform .2s ease}
body.vorschau-offen .vorschau-tab{transform:translate(110%,-50%);visibility:hidden}

/* Der Inhalt rueckt zur Seite, statt unter dem Fenster zu verschwinden:
   der Abstand entspricht genau der Breite des Fensters. */
body.vorschau-offen #editor-hauptspalte,
body.vorschau-offen #vorschau-spalte{padding-right:calc(min(46vw,52rem) + .75rem)}

@media (max-width:1023.98px){
  .vorschau-panel{top:auto;left:0;right:0;bottom:0;width:100%;max-width:none;height:92vh;height:92dvh;border-left:0;border-top:1px solid #cbd5e1;box-shadow:0 -20px 44px -28px rgba(15,23,42,.55);transform:translateY(100%)}
  body.vorschau-offen .vorschau-panel{transform:translateY(0)}
  body.vorschau-offen{overflow:hidden}
  body.vorschau-offen #editor-hauptspalte,
  body.vorschau-offen #vorschau-spalte{padding-right:0}
}

/* Dunkelmodus - gleiche Farbwerte wie im uebrigen Bestand. */
body.dark .vorschau-panel{background-color:#0f172a;border-left-color:#334155}
body.dark .vorschau-panel-kopf{background-color:#16203a;border-bottom-color:#334155}
body.dark .vorschau-panel-kopf #preview-mode-title{color:#cbd5e1}
body.dark .vorschau-schliessen{color:#cbd5e1;border-color:#334155}
body.dark .vorschau-schliessen:hover{background-color:#1e293b;color:#f8fafc}
body.dark .vorschau-tab{background-color:#1e3a8a;border-color:#334155}
body.dark .vorschau-tab:hover{background-color:#1d4ed8}

/* ==========================================================================
   Nachtrag 3.15.7 - Kopfzeile des Editors (Etappe 4, Teile A und B)
   --------------------------------------------------------------------------
   #dokumentart-anzeige nennt Art und Nummer des Dokuments, das gerade
   bearbeitet wird. Weil der Umschalter „Rechnung / Angebot" entfallen ist,
   muss die Kopfzeile diese Auskunft geben. Gefuellt wird sie von
   /assets/js/vorschau.js (dokumentartAktualisieren).
   ========================================================================== */

#dokumentart-anzeige{display:inline-flex;align-items:center;min-height:2.25rem;padding:0 .6rem;background-color:#f1f5f9;border:1px solid #cbd5e1;letter-spacing:.01em}
body.dark #dokumentart-anzeige{background-color:#16203a;border-color:#334155;color:#e2e8f0}

/* Die unsichtbare Brücke #einstellungen-menu wird in GENAU EINEM Fall
   sichtbar: wenn die Hauptnavigation ausdrücklich auf sie zeigt. Kommt
   jemand von einer anderen Seite über „Daten sichern" oder „Daten laden"
   (/erstellen/?aktion=sichern bzw. ?aktion=laden), dann markiert
   navigation.js den passenden Auslöser mit der Klasse .ist-blickfang.
   Ohne diese Regel passierte auf diesem Weg sichtbar nichts – der Hinweis
   der Navigation zeigte ins Leere (so war es bis 3.15.6 nicht: damals
   öffnete sich das Zahnrad-Menü). Sonst bleibt der Block verborgen.

   Browser ohne :has() bleiben beim alten Verhalten (Block unsichtbar);
   alles andere funktioniert dort unverändert. Die Regel steht bewusst hier
   und nicht in navigation.js – die Navigation ist unverändert (Tabu). */
#einstellungen-menu:has(.ist-blickfang){display:block;margin-top:.6rem}
#einstellungen-menu:has(.ist-blickfang) button,
#einstellungen-menu:has(.ist-blickfang) label{display:inline-flex;align-items:center;gap:.45rem;padding:.5rem .85rem;background-color:#fff;border:1px solid #cbd5e1;font-size:.75rem;font-weight:700;color:#334155;cursor:pointer}
#einstellungen-menu:has(.ist-blickfang) label input[type="file"]{max-width:11rem;font-size:.7rem;font-weight:600}
body.dark #einstellungen-menu:has(.ist-blickfang) button,
body.dark #einstellungen-menu:has(.ist-blickfang) label{background-color:#16203a;border-color:#334155;color:#e2e8f0}

/* ==========================================================================
   Nachtrag 3.15.8 - Zwei fehlende Utility-Klassen und der Rasterschutz
   --------------------------------------------------------------------------
   BEFUND (Fassung 3.15.7, auf der Test-Domain sichtbar):
   In Etappe 4 wurden die beiden Editor-Spalten von lg:col-span-5 / lg:col-span-7
   auf lg:col-span-12 umgestellt. Diese Klasse gibt es im kompilierten
   Tailwind-Bestand dieser Datei aber NICHT - Tailwind erzeugt nur die Klassen,
   die zur Bauzeit im Markup vorkamen. Ohne Regel bleibt es bei
   "grid-column: auto", und in einem 12-Spalten-Raster belegt ein Element dann
   GENAU EINE Spalte. Gemessen mit Chrome (getBoundingClientRect):

     Viewport 1920 px:  Raster 1668 px  ->  Akkordion-Spalte  109,7 px
     Viewport 1280 px:  Raster 1233 px  ->  Akkordion-Spalte   73,4 px
     Viewport 1024 px:  Raster  977 px  ->  Akkordion-Spalte   52,1 px

   Folge: wortweiser Umbruch im Formular; Aktions-/Downloadleiste, PDF-Import
   und Statusleiste praktisch unsichtbar (alle 52-110 px breit).
   Ebenso fehlte .min-w-[16rem] (Statusleiste; die Klasse war vorher nie
   benutzt worden, im Bestand gab es nur .min-w-[10rem]).

   DIE BEIDEN SCHUTZEBENEN
     1. Die fehlenden Klassen werden hier ergaenzt - damit das Markup stimmt
        (Muster wie in den vorherigen Nachtraegen: fehlende Utilities
        nachtragen).
     2. Zusaetzlich eine Regel ueber die IDs der beiden Spalten. Sie ist
        unabhaengig von Tailwind-Klassen und kann durch keinen spaeteren
        Neubau dieser Datei verloren gehen.

   Geprueft wird das in Abschnitt 75 der Pruefdatei: (a) jede im Markup der
   Editor-Seiten benutzte Klasse ist in den geladenen CSS-Dateien definiert,
   (b) die beiden Spalten loesen im Raster auf die volle Breite auf.
   Zusaetzlich nachgemessen mit Chrome (DOM-Messung, Abschnitt 75.6).
   ========================================================================== */

.col-span-12{grid-column:span 12/span 12}
@media (min-width:1024px){
  .lg\:col-span-12{grid-column:span 12/span 12}
}
.min-w-\[16rem\]{min-width:16rem}

/* Schutzebene 2: die beiden Editor-Spalten nehmen immer die volle Rasterbreite.
   Ist die Vorschau offen, rueckt der Inhalt ueber den Breitenabzug zur Seite
   (Nachtrag 3.15.7: padding-right = Panelbreite) - so bleibt "Akkordeons
   links, Vorschau rechts" ohne Ueberlappung. */
#editor-hauptspalte,#vorschau-spalte{grid-column:1/-1}

/* .reset-bereich war im Markup der Editor-Seiten benutzt, aber nirgends
   gestaltet (Pruefung 75.3 findet genau solche Luecken). Die Werte
   entsprechen den Tailwind-Klassen, die am selben Element stehen. */
.reset-bereich{display:flex;flex-direction:column;align-items:flex-start;gap:.5rem;max-width:24rem}

/* Zwei weitere Klassen, die im Markup benutzt wurden, aber im kompilierten
   Bestand fehlten (von Pruefung 75.3 gefunden). Beide Werte sind die
   Tailwind-Standardwerte. */
.align-middle{vertical-align:middle}
.hover\:opacity-70:hover{opacity:.7}

/* ==========================================================================
   Fassung 3.15.12: Die Hauptleiste klebt auf dem Desktop unter der Logo-Zeile
   --------------------------------------------------------------------------
   Befund (mit Chrome gemessen, cdp-navi.mjs): Die Logo-Zeile (header, sticky
   top-0, z-index 40) blieb beim Scrollen stehen, die Hauptleiste
   (#hauptleiste, position: relative) scrollte mit - bei 900 px Scroll lag sie
   bei -835 px, bei 3000 px bei -2927 px. Auf langen Seiten musste man zum
   Menuewechsel jedes Mal nach oben scrollen.

   Umsetzung (nur CSS, kein JavaScript):
     * position: sticky; top: 4rem;  -> klebt direkt unter der Logo-Zeile
       (64 px = height:4rem der .kopf-zeile). Der Kopf liegt mit z-index 40
       ueber der Leiste, deshalb verschwindet die 1-px-Ueberlappung unter ihm
       und die Kante bleibt nahtlos.
     * z-index: 39 -> ueber dem Seiteninhalt, unter der Kopfzeile (40), unter
       Vorschau-Reiter (41) und Vorschau-Fenster (42), unter den schwebenden
       Knoepfen und Fenstern (45) und unter den Modals (50).
     * Der Hintergrund bleibt, wie er ist: .haupt-leiste ist bereits deckend
       (#fff, im Dunkelmodus #16203a) - der halbtransparente Teil ist nur der
       Kopf (bg-white/95 + backdrop-blur).
     * Sprungmarken: Die Anker-Abstaende waren auf die 64-px-Kopfzeile
       gerechnet (80 / 88 / 96 px) und liegen jetzt unter der Klebkante von
       110 px (65 px Kopf + 45 px Leiste). Ab 1024 px werden sie deshalb auf
       112 px (7rem) bzw. 120 px (7.5rem) angehoben. Mobil bleibt alles, wie
       es war - dort klebt die Leiste nicht.
   Der ID-Selektor ist Absicht: So bleibt die bestehende Regel
   .haupt-leiste{display:block} im Desktop-Block unveraendert (Pruefung 64.4).
   ========================================================================== */
@media (min-width:1024px){
    #hauptleiste {
        position: sticky;
        top: 4rem;
        z-index: 39;
        box-shadow: 0 8px 16px -12px rgba(15, 23, 42, .28);
    }
    body.dark #hauptleiste {
        box-shadow: 0 8px 16px -12px rgba(0, 0, 0, .55);
    }
    /* Sprungziele unter der Klebkante halten (112 px > 65 + 45 = 110 px). */
    .scroll-mt-20,
    .scroll-mt-24,
    .prose-de h2 {
        scroll-margin-top: 7rem;
    }
    .formular-abschnitt {
        scroll-margin-top: 7.5rem;
    }
}
/* ==========================================================================
   Fassung 3.15.15: Wenn die Vorschau nicht gerendert werden kann
   --------------------------------------------------------------------------
   Befund: Auf einem älteren iPad blieb der Vorschaubereich weiß und leer –
   ohne Meldung, ohne Ladefortschritt. Ursache war ein stiller Fehler: Weder
   der Aufbau der Vorschau noch das Setzen der Seiten sind abgesichert, und
   niemand prüft danach, ob wirklich eine Seite sichtbar ist. Deshalb gibt es
   jetzt eine sichtbare Meldung samt Ausweg (PDF herunterladen) – der Bereich
   wird nie mehr still leer gelassen.
   ========================================================================== */
.vorschau-fehler{display:flex;flex-direction:column;align-items:center;gap:.75rem;margin:.5rem 0 1rem;padding:1rem;background-color:#fff7ed;border:1px solid #fdba74;color:#7c2d12;font-size:.8125rem;line-height:1.6}
.vorschau-fehler[hidden]{display:none}
.vorschau-fehler strong{font-weight:700}
.vorschau-fehler-knopf{align-items:center;background-color:#1d4ed8;border:1px solid #1e3a8a;color:#fff;cursor:pointer;display:inline-flex;font-size:.8125rem;font-weight:700;gap:.4rem;min-height:2.75rem;padding:.65rem 1.1rem;transition:background-color .15s ease}
.vorschau-fehler-knopf:hover{background-color:#1e40af}
.vorschau-fehler-knopf:focus-visible{outline:3px solid #0369a1;outline-offset:2px}
body.dark .vorschau-fehler{background-color:#3a2708;border-color:#78350f;color:#fcd34d}
body.dark .vorschau-fehler-knopf{background-color:#1e3a8a;border-color:#334155}
body.dark .vorschau-fehler-knopf:hover{background-color:#1d4ed8}
