/* assets/app.css — erzeugt von werkzeuge/css_generieren.py
   Lokaler Ersatz für cdn.tailwindcss.com, damit die App ohne
   Internet vollständig dargestellt wird. NICHT von Hand ändern:
   nach Layoutänderungen das Skript erneut ausführen. */
/* --- Preflight (schlanke Fassung von Tailwinds Normalisierung) --- */
*,::before,::after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e2e8f0}
html{-webkit-text-size-adjust:100%;line-height:1.5;
 font-family:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
body{margin:0;line-height:inherit}
h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit;margin:0}
p,dl,dd,figure,pre{margin:0}
ul,ol{list-style:none;margin:0;padding:0}
a{color:inherit;text-decoration:inherit}
b,strong{font-weight:bolder}
code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:1em}
small{font-size:80%}
table{text-indent:0;border-color:inherit;border-collapse:collapse}
button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;font-weight:inherit;
 line-height:inherit;color:inherit;margin:0;padding:0}
button,select{text-transform:none}
button,[type=button],[type=submit]{-webkit-appearance:button;background-color:transparent;background-image:none;cursor:pointer}
button:disabled{cursor:not-allowed}
:-moz-focusring{outline:auto}
textarea{resize:vertical}
input::placeholder,textarea::placeholder{opacity:1;color:#94a3b8}
img,svg,video,canvas{display:block;vertical-align:middle;max-width:100%;height:auto}
[hidden]{display:none}
/* Auswahlfelder und Datumsfelder auf Touch-Geraeten gut treffbar halten */
select,input[type=date],input[type=number],input[type=text],input[type=email],input[type=password]{
 background-color:#fff}

/* --- Utilities --- */
.-right-0\.5{right:-0.125rem}
.-top-0\.5{top:-0.125rem}
.absolute{position:absolute}
.accent-red-700{accent-color:#b91c1c}
.active\:bg-green-800:active{background-color:#166534}
.align-top{vertical-align:top}
.bg-amber-100{background-color:#fef3c7}
.bg-amber-50{background-color:#fffbeb}
.bg-blue-100{background-color:#dbeafe}
.bg-green-100{background-color:#dcfce7}
.bg-green-50{background-color:#f0fdf4}
.bg-green-600{background-color:#16a34a}
.bg-orange-100{background-color:#ffedd5}
.bg-orange-50{background-color:#fff7ed}
.bg-orange-500{background-color:#f97316}
.bg-purple-100{background-color:#f3e8ff}
.bg-red-100{background-color:#fee2e2}
.bg-red-50{background-color:#fef2f2}
.bg-red-700{background-color:#b91c1c}
.bg-slate-100{background-color:#f1f5f9}
.bg-slate-200{background-color:#e2e8f0}
.bg-slate-300{background-color:#cbd5e1}
.bg-slate-50{background-color:#f8fafc}
.bg-slate-700{background-color:#334155}
.bg-slate-800{background-color:#1e293b}
.bg-white{background-color:#ffffff}
.bg-yellow-100{background-color:#fef9c3}
.block{display:block}
.border{border-width:1px}
.border-2{border-width:2px}
.border-amber-200{border-color:#fde68a}
.border-amber-300{border-color:#fcd34d}
.border-b{border-bottom-width:1px}
.border-b-4{border-bottom-width:4px}
.border-blue-200{border-color:#bfdbfe}
.border-green-200{border-color:#bbf7d0}
.border-green-300{border-color:#86efac}
.border-green-500{border-color:#22c55e}
.border-orange-300{border-color:#fdba74}
.border-orange-400{border-color:#fb923c}
.border-orange-500{border-color:#f97316}
.border-purple-200{border-color:#e9d5ff}
.border-red-200{border-color:#fecaca}
.border-red-300{border-color:#fca5a5}
.border-red-700{border-color:#b91c1c}
.border-slate-100{border-color:#f1f5f9}
.border-slate-200{border-color:#e2e8f0}
.border-slate-300{border-color:#cbd5e1}
.border-slate-700{border-color:#334155}
.border-t{border-top-width:1px}
.border-t-4{border-top-width:4px}
.break-words{overflow-wrap:break-word}
.cursor-not-allowed{cursor:not-allowed}
.cursor-pointer{cursor:pointer}
.divide-slate-100 > * + *{border-color:#f1f5f9}
.divide-slate-200 > * + *{border-color:#e2e8f0}
.divide-y > * + *{border-top-width:1px;border-bottom-width:0}
.flex{display:flex}
.flex-1{flex:1 1 0%}
.flex-col{flex-direction:column}
.flex-wrap{flex-wrap:wrap}
.focus\:border-red-700:focus{border-color:#b91c1c}
.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}
.focus\:ring-2:focus{box-shadow:0 0 0 2px var(--dd-ring, rgb(59 130 246 / 0.5))}
.focus\:ring-red-700:focus{--dd-ring:#b91c1c}
.font-bold{font-weight:700}
.font-extrabold{font-weight:800}
.font-medium{font-weight:500}
.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
.font-semibold{font-weight:600}
.gap-1{gap:0.25rem}
.gap-2{gap:0.5rem}
.gap-3{gap:0.75rem}
.gap-4{gap:1rem}
.gap-6{gap:1.5rem}
.grid{display:grid}
.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}
.h-10{height:2.5rem}
.h-12{height:3rem}
.h-14{height:3.5rem}
.h-16{height:4rem}
.h-20{height:5rem}
.h-4{height:1rem}
.h-5{height:1.25rem}
.h-6{height:1.5rem}
.hidden{display:none}
.hover\:bg-green-50:hover{background-color:#f0fdf4}
.hover\:bg-green-700:hover{background-color:#15803d}
.hover\:bg-red-800:hover{background-color:#991b1b}
.hover\:bg-slate-100:hover{background-color:#f1f5f9}
.hover\:bg-slate-300:hover{background-color:#cbd5e1}
.hover\:bg-slate-50:hover{background-color:#f8fafc}
.hover\:bg-slate-700:hover{background-color:#334155}
.hover\:bg-slate-800:hover{background-color:#1e293b}
.hover\:border-red-700:hover{border-color:#b91c1c}
.hover\:text-green-600:hover{color:#16a34a}
.hover\:text-slate-700:hover{color:#334155}
.hover\:text-slate-800:hover{color:#1e293b}
.hover\:text-white:hover{color:#ffffff}
.hover\:underline:hover{text-decoration-line:underline}
.inline{display:inline}
.inline-block{display:inline-block}
.inline-flex{display:inline-flex}
.italic{font-style:italic}
.items-center{align-items:center}
.items-end{align-items:flex-end}
.items-start{align-items:flex-start}
.justify-between{justify-content:space-between}
.justify-center{justify-content:center}
.last\:border-0:last-child{border-width:0px}
.leading-tight{line-height:1.25}
.line-through{text-decoration-line:line-through}
.list-disc{list-style-type:disc}
.list-inside{list-style-position:inside}
.max-h-96{max-height:24rem}
.max-w-2xl{max-width:42rem}
.max-w-3xl{max-width:48rem}
.max-w-7xl{max-width:80rem}
.max-w-lg{max-width:32rem}
.max-w-md{max-width:28rem}
.max-w-xs{max-width:20rem}
.mb-1{margin-bottom:0.25rem}
.mb-2{margin-bottom:0.5rem}
.mb-3{margin-bottom:0.75rem}
.mb-4{margin-bottom:1rem}
.mb-6{margin-bottom:1.5rem}
.mb-8{margin-bottom:2rem}
.min-h-\[44px\]{min-height:44px}
.min-h-\[48px\]{min-height:48px}
.min-h-screen{min-height:100vh}
.min-w-0{min-width:0px}
.min-w-\[1\.25rem\]{min-width:1.25rem}
.min-w-\[16rem\]{min-width:16rem}
.min-w-full{min-width:100%}
.ml-1{margin-left:0.25rem}
.ml-2{margin-left:0.5rem}
.ml-auto{margin-left:auto}
.mr-2{margin-right:0.5rem}
.mt-1{margin-top:0.25rem}
.mt-2{margin-top:0.5rem}
.mt-3{margin-top:0.75rem}
.mt-4{margin-top:1rem}
.mt-5{margin-top:1.25rem}
.mt-6{margin-top:1.5rem}
.mt-8{margin-top:2rem}
.mx-2{margin-left:0.5rem;margin-right:0.5rem}
.mx-auto{margin-left:auto;margin-right:auto}
.my-4{margin-top:1rem;margin-bottom:1rem}
.my-6{margin-top:1.5rem;margin-bottom:1.5rem}
.opacity-50{opacity:0.5}
.opacity-60{opacity:0.6}
.overflow-hidden{overflow:hidden}
.overflow-x-auto{overflow-x:auto}
.overflow-y-auto{overflow-y:auto}
.p-1\.5{padding:0.375rem}
.p-2{padding:0.5rem}
.p-3{padding:0.75rem}
.p-4{padding:1rem}
.p-5{padding:1.25rem}
.p-6{padding:1.5rem}
.p-8{padding:2rem}
.pb-1{padding-bottom:0.25rem}
.pb-2{padding-bottom:0.5rem}
.peer{}
.peer:checked ~ .peer-checked\:bg-red-50{background-color:#fef2f2}
.peer:checked ~ .peer-checked\:border-red-700{border-color:#b91c1c}
.peer:checked ~ .peer-checked\:text-slate-900{color:#0f172a}
.peer:checked ~ .peer-checked\:text-white{color:#ffffff}
.pt-2{padding-top:0.5rem}
.pt-3{padding-top:0.75rem}
.px-1{padding-left:0.25rem;padding-right:0.25rem}
.px-1\.5{padding-left:0.375rem;padding-right:0.375rem}
.px-2{padding-left:0.5rem;padding-right:0.5rem}
.px-2\.5{padding-left:0.625rem;padding-right:0.625rem}
.px-3{padding-left:0.75rem;padding-right:0.75rem}
.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-top:0.125rem;padding-bottom:0.125rem}
.py-1{padding-top:0.25rem;padding-bottom:0.25rem}
.py-10{padding-top:2.5rem;padding-bottom:2.5rem}
.py-2{padding-top:0.5rem;padding-bottom:0.5rem}
.py-2\.5{padding-top:0.625rem;padding-bottom:0.625rem}
.py-3{padding-top:0.75rem;padding-bottom:0.75rem}
.py-4{padding-top:1rem;padding-bottom:1rem}
.py-6{padding-top:1.5rem;padding-bottom:1.5rem}
.relative{position:relative}
.right-0{right:0}
.rounded{border-radius:0.25rem}
.rounded-full{border-radius:9999px}
.rounded-lg{border-radius:0.5rem}
.rounded-md{border-radius:0.375rem}
.rounded-xl{border-radius:0.75rem}
.shadow{box-shadow:0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1)}
.shadow-lg{box-shadow:0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1)}
.shadow-xl{box-shadow:0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1)}
.shrink-0{flex-shrink:0}
.space-y-1 > * + *{margin-top:0.25rem}
.space-y-2 > * + *{margin-top:0.5rem}
.space-y-3 > * + *{margin-top:0.75rem}
.space-y-4 > * + *{margin-top:1rem}
.space-y-5 > * + *{margin-top:1.25rem}
.space-y-6 > * + *{margin-top:1.5rem}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}
.sticky{position:sticky}
.text-2xl{font-size:1.5rem;line-height:2rem}
.text-3xl{font-size:1.875rem;line-height:2.25rem}
.text-5xl{font-size:3rem;line-height:1}
.text-amber-800{color:#92400e}
.text-amber-900{color:#78350f}
.text-base{font-size:1rem;line-height:1.5rem}
.text-blue-800{color:#1e40af}
.text-center{text-align:center}
.text-green-600{color:#16a34a}
.text-green-700{color:#15803d}
.text-green-800{color:#166534}
.text-left{text-align:left}
.text-lg{font-size:1.125rem;line-height:1.75rem}
.text-orange-800{color:#9a3412}
.text-orange-900{color:#7c2d12}
.text-purple-800{color:#6b21a8}
.text-red-600{color:#dc2626}
.text-red-700{color:#b91c1c}
.text-red-800{color:#991b1b}
.text-right{text-align:right}
.text-slate-200{color:#e2e8f0}
.text-slate-300{color:#cbd5e1}
.text-slate-400{color:#94a3b8}
.text-slate-500{color:#64748b}
.text-slate-600{color:#475569}
.text-slate-700{color:#334155}
.text-slate-800{color:#1e293b}
.text-sm{font-size:0.875rem;line-height:1.25rem}
.text-white{color:#ffffff}
.text-xl{font-size:1.25rem;line-height:1.75rem}
.text-xs{font-size:0.75rem;line-height:1rem}
.text-yellow-800{color:#854d0e}
.top-0{top:0}
.tracking-wide{letter-spacing:0.025em}
.tracking-wider{letter-spacing:0.05em}
.transition-colors{transition-property:color,background-color,border-color;transition-duration:150ms}
.underline{text-decoration-line:underline}
.uppercase{text-transform:uppercase}
.w-10{width:2.5rem}
.w-12{width:3rem}
.w-24{width:6rem}
.w-32{width:8rem}
.w-4{width:1rem}
.w-40{width:10rem}
.w-5{width:1.25rem}
.w-6{width:1.5rem}
.w-80{width:20rem}
.w-full{width:100%}
.whitespace-nowrap{white-space:nowrap}
.whitespace-pre-line{white-space:pre-line}
.z-50{z-index:50}
@media (min-width:640px){
.sm\:col-span-2{grid-column:span 2 / span 2}
.sm\:flex-row{flex-direction:row}
.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\:hidden{display:none}
.sm\:inline{display:inline}
.sm\:p-6{padding:1.5rem}
.sm\:text-6xl{font-size:3.75rem;line-height:1}
.sm\:text-sm{font-size:0.875rem;line-height:1.25rem}
.sm\:w-64{width:16rem}
.sm\:w-72{width:18rem}
.sm\:w-96{width:24rem}
}
@media (min-width:768px){
.md\:col-span-2{grid-column:span 2 / span 2}
.md\:flex{display:flex}
.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (min-width:1024px){
.lg\:col-span-3{grid-column:span 3 / span 3}
.lg\:col-span-5{grid-column:span 5 / span 5}
.lg\:flex{display:flex}
.lg\:grid-cols-2{grid-template-columns:repeat(2,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\:hidden{display:none}
}
