/* HSS App CSS – Brand Kit v2 */
@import url('https://fonts.googleapis.com/css2?family=Maven+Pro:wght@400;600;700&family=Poppins:wght@400;500;600&display=swap');

/* ── HSS Brand Variables ── */
:root{
  --hss-dark:#255a5d;
  --hss-mid:#447e80;
  --hss-light:#93c2c4;
  --hss-sand:#a09b96;
  --hss-orange:#ffbd59;
  --hss-orange-dark:#e0a535;
  --hss-orange-light:#fff3d6;
  --hss-dark-hover:#1d484a;
  --hss-mid-hover:#366264;
}

*,::after,::before{box-sizing:border-box;border-width:0;border-style:solid}
html{line-height:1.5;-webkit-text-size-adjust:100%;font-family:'Poppins',Open Sans,sans-serif}
body{margin:0;line-height:inherit}
h1,h2,h3,h4,h5{font-family:'Maven Pro',sans-serif;font-weight:600;color:#255a5d}

/* ── HSS Utility Classes ── */
.bg-hss-dark{background-color:#255a5d}
.bg-hss-mid{background-color:#447e80}
.bg-hss-light{background-color:#93c2c4}
.bg-hss-sand{background-color:#a09b96}
.bg-hss-orange{background-color:#ffbd59}
.bg-hss-orange-light{background-color:#fff3d6}
.text-hss-dark{color:#255a5d}
.text-hss-mid{color:#447e80}
.text-hss-orange{color:#ffbd59}
.text-hss-orange-dark{color:#b07010}
.border-hss-dark{border-color:#255a5d}
.border-hss-mid{border-color:#447e80}
.border-hss-light{border-color:#93c2c4}
.border-hss-orange{border-color:#ffbd59}
.bg-hss-input{background-color:#1d484a}
.ring-hss-mid{--ring-color:#447e80}
.hover\:bg-hss-dark:hover{background-color:#255a5d}
.hover\:bg-hss-mid:hover{background-color:#447e80}
.hover\:bg-hss-orange-dark:hover{background-color:#e0a535}
.hover\:border-hss-light:hover{border-color:#93c2c4}
.focus\:ring-hss-mid:focus{box-shadow:0 0 0 2px rgba(68,126,128,.35)}
[x-cloak]{display:none!important}

/* Layout */
.min-h-screen{min-height:100vh}.h-screen{height:100vh}.w-full{width:100%}
.w-56{width:14rem}.w-72{width:18rem}.w-40{width:10rem}.w-9{height:2.25rem;width:2.25rem}.w-2{width:.5rem}.h-2{height:.5rem}
.max-w-sm{max-width:24rem}.max-w-md{max-width:28rem}.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}
.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.block{display:block}.hidden{display:none}
.flex-1{flex:1 1 0%}.flex-shrink-0{flex-shrink:0}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}
.items-start{align-items:flex-start}.items-center{align-items:center}.items-end{align-items:flex-end}
.justify-start{justify-content:flex-start}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}
.self-center{align-self:center}
.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}
.space-y-0\.5>*+*{margin-top:.125rem}.space-y-1>*+*{margin-top:.25rem}.space-y-2>*+*{margin-top:.5rem}.space-y-3>*+*{margin-top:.75rem}.space-y-4>*+*{margin-top:1rem}.space-y-5>*+*{margin-top:1.25rem}
.divide-y>*+*{border-top-width:1px}.divide-stone-100>*+*{border-color:rgb(245 245 244)}
.grid-cols-1{grid-template-columns:repeat(1,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))}
.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.md\:col-span-2{grid-column:span 2/span 2}
.col-span-2{grid-column:span 2/span 2}
.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.overflow-x-auto{overflow-x:auto}
.fixed{position:fixed}.inset-0{top:0;right:0;bottom:0;left:0;inset:0}.relative{position:relative}
.z-50{z-index:50}
.min-w-0{min-width:0}.min-h-24{min-height:6rem}

/* Spacing */
.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}
.px-1{padding-left:.25rem;padding-right:.25rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.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}
.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-20{padding-top:5rem;padding-bottom:5rem}
.pt-1{padding-top:.25rem}.pt-2{padding-top:.5rem}.pt-4{padding-top:1rem}.pt-6{padding-top:1.5rem}
.pb-1{padding-bottom:.25rem}.pb-4{padding-bottom:1rem}
.pl-2{padding-left:.5rem}.pr-2{padding-right:.5rem}
.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}
.mb-0\.5{margin-bottom:.125rem}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-8{margin-bottom:2rem}
.ml-1{margin-left:.25rem}.ml-auto{margin-left:auto}
.mx-auto{margin-left:auto;margin-right:auto}

/* Typography */
.text-xs{font-size:.75rem;line-height:1rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.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}
.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}
.leading-tight{line-height:1.25}
.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}
.uppercase{text-transform:uppercase}.capitalize{text-transform:capitalize}
.tracking-wide{letter-spacing:.025em}.tracking-wider{letter-spacing:.05em}
.line-through{text-decoration:line-through}
.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}

/* Colors – Text */
.text-white{color:#fff}.text-black{color:#000}
.text-stone-400{color:rgb(168 162 158)}.text-stone-500{color:rgb(120 113 108)}.text-stone-600{color:rgb(87 83 78)}.text-stone-700{color:rgb(68 64 60)}.text-stone-800{color:rgb(41 37 36)}.text-stone-900{color:rgb(28 25 23)}
.text-amber-500{color:#ffbd59}.text-amber-600{color:#447e80}.text-amber-700{color:#255a5d}.text-amber-800{color:#255a5d}
.text-red-400{color:rgb(248 113 113)}.text-red-600{color:rgb(220 38 38)}.text-red-700{color:rgb(185 28 28)}
.text-green-700{color:rgb(21 128 61)}
.text-blue-600{color:rgb(37 99 235)}.text-blue-700{color:rgb(29 78 216)}
.text-orange-600{color:rgb(234 88 12)}.text-orange-700{color:rgb(194 65 12)}
.text-purple-600{color:rgb(147 51 234)}

/* Colors – Background */
.bg-white{background-color:#fff}.bg-black{background-color:#000}
.bg-stone-50{background-color:rgb(250 250 249)}.bg-stone-100{background-color:rgb(245 245 244)}.bg-stone-200{background-color:rgb(231 229 228)}.bg-stone-700{background-color:rgb(68 64 60)}.bg-stone-800{background-color:rgb(41 37 36)}.bg-stone-900{background-color:rgb(28 25 23)}
.bg-amber-50{background-color:#f0f8f8}.bg-amber-100{background-color:#e0f0f0}.bg-amber-500{background-color:#ffbd59}.bg-amber-600{background-color:#ffbd59}.bg-amber-700{background-color:#e0a535}
.bg-red-50{background-color:rgb(254 242 242)}.bg-red-100{background-color:rgb(254 226 226)}.bg-red-500{background-color:rgb(239 68 68)}.bg-red-600{background-color:rgb(220 38 38)}
.bg-green-50{background-color:rgb(240 253 244)}.bg-green-100{background-color:rgb(220 252 231)}
.bg-blue-50{background-color:rgb(239 246 255)}.bg-blue-100{background-color:rgb(219 234 254)}
.bg-orange-50{background-color:rgb(255 247 237)}.bg-orange-100{background-color:rgb(255 237 213)}
.bg-purple-100{background-color:rgb(243 232 255)}
.bg-black\/50{background-color:rgba(0,0,0,.5)}

/* Borders */
.border{border-width:1px}.border-t{border-top-width:1px}.border-b{border-bottom-width:1px}
.border-2{border-width:2px}
.border-stone-100{border-color:rgb(245 245 244)}.border-stone-200{border-color:rgb(231 229 228)}.border-stone-600{border-color:rgb(87 83 78)}.border-stone-700{border-color:rgb(68 64 60)}
.border-amber-200{border-color:#93c2c4}.border-amber-300{border-color:#447e80}
.border-red-100{border-color:rgb(254 226 226)}.border-red-200{border-color:rgb(254 202 202)}
.border-green-200{border-color:rgb(187 247 208)}
.border-orange-200{border-color:rgb(254 215 170)}
.border-dashed{border-style:dashed}
.rounded{border-radius:.25rem}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.rounded-full{border-radius:9999px}

/* Shadows */
.shadow-sm{box-shadow:0 1px 2px 0 rgb(0 0 0/.05)}.shadow-md{box-shadow:0 4px 6px -1px rgb(0 0 0/.1),0 2px 4px -2px rgb(0 0 0/.1)}.shadow-xl{box-shadow:0 20px 25px -5px rgb(0 0 0/.1),0 8px 10px -6px rgb(0 0 0/.1)}

/* Transitions */
.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:150ms}
.transition-colors{transition-property:color,background-color,border-color;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:150ms}

/* Cursor */
.cursor-pointer{cursor:pointer}

/* Focus */
.focus\:outline-none:focus{outline:none}
.focus\:ring-2:focus{box-shadow:0 0 0 2px var(--ring-color,#447e80)}

/* Hover */
.hover\:bg-stone-50:hover{background-color:rgb(250 250 249)}.hover\:bg-stone-200:hover{background-color:rgb(231 229 228)}.hover\:bg-stone-700:hover{background-color:rgb(68 64 60)}
.hover\:bg-amber-50:hover{background-color:#f0f8f8}.hover\:bg-amber-700:hover{background-color:#e0a535}
.hover\:bg-green-50:hover{background-color:rgb(240 253 244)}.hover\:bg-green-200:hover{background-color:rgb(187 247 208)}
.hover\:bg-red-200:hover{background-color:rgb(254 202 202)}
.hover\:text-white:hover{color:#fff}
.hover\:border-amber-300:hover{border-color:#447e80}
.hover\:shadow-md:hover{box-shadow:0 4px 6px -1px rgb(0 0 0/.1),0 2px 4px -2px rgb(0 0 0/.1)}
.hover\:underline:hover{text-decoration:underline}

/* Disabled */
.disabled\:opacity-50:disabled{opacity:.5}

/* Accent */
.accent-amber-600{accent-color:#255a5d}

/* Responsive */
@media(min-width:768px){
  .md\:col-span-2{grid-column:span 2/span 2}
  .md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
  .md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
  .md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
}

/* ── Custom Component Classes ── */
[x-cloak]{display:none!important}

.sidebar-link{display:flex;align-items:center;gap:.75rem;padding:.5rem .75rem;border-radius:.5rem;font-size:.875rem;line-height:1.25rem;font-weight:500;color:rgba(255,255,255,0.7);cursor:pointer;transition:color .15s,background-color .15s}
.sidebar-link:hover{background-color:#447e80;color:#fff}
.sidebar-link.active{background-color:#ffbd59;color:#1a3a3c;font-weight:600}

.card{background:#fff;border-radius:.75rem;box-shadow:0 1px 2px 0 rgb(0 0 0/.05);border:1px solid rgb(231 229 228);padding:1.25rem}
.card-accent{background:#fff;border-radius:.75rem;box-shadow:0 1px 2px 0 rgb(0 0 0/.05);border:1px solid #93c2c4;border-top:3px solid #447e80;padding:1.25rem}

/* ── HSS Brand Cards ── */
.card-teal{background:#447e80;border-radius:.75rem;padding:1.25rem;color:#fff}
.card-teal-dark{background:#255a5d;border-radius:.75rem;padding:1.25rem;color:#fff}
.card-teal-light{background:#f0f8f8;border-radius:.75rem;border:1px solid #93c2c4;padding:1.25rem}

/* Stat Cards */
.stat-card{background:#447e80;border-radius:.75rem;padding:1.25rem;text-align:center;position:relative;overflow:hidden}
.stat-card::before{content:'';position:absolute;top:-20px;right:-20px;width:80px;height:80px;background:rgba(255,255,255,.08);border-radius:50%}
.stat-card-number{font-family:'Maven Pro',sans-serif;font-size:2rem;font-weight:700;color:#fff;line-height:1}
.stat-card-label{font-size:.75rem;color:rgba(255,255,255,.8);margin-top:.375rem;font-weight:500}
.stat-card-alert{background:#fff;border-radius:.75rem;padding:1.25rem;text-align:center;border:2px solid #e53e3e;position:relative;overflow:hidden}
.stat-card-alert .stat-card-number{color:#c53030}
.stat-card-alert .stat-card-label{color:#718096}

/* Dashboard Page Header */
.page-header{background:linear-gradient(135deg,#255a5d 0%,#447e80 100%);padding:1.5rem 1.5rem 1.25rem;border-bottom:1px solid #93c2c4}
.page-header h1{font-family:'Maven Pro',sans-serif;font-weight:700;color:#fff;font-size:1.25rem;margin:0}
.page-header p{color:rgba(255,255,255,.75);font-size:.875rem;margin:.25rem 0 0}

/* Section Header */
.section-header{font-family:'Maven Pro',sans-serif;font-size:.875rem;font-weight:700;color:#447e80;text-transform:uppercase;letter-spacing:.06em;display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem}
.section-header::before{content:'';display:block;width:3px;height:1em;background:#ffbd59;border-radius:2px;flex-shrink:0}

/* Team Member Card */
.team-card{background:#f0f8f8;border-radius:.75rem;border:1px solid #93c2c4;padding:.875rem;transition:border-color .15s,box-shadow .15s}
.team-card:hover{border-color:#447e80;box-shadow:0 2px 8px rgba(68,126,128,.15)}
.team-card-name{font-family:'Maven Pro',sans-serif;font-weight:600;color:#255a5d;font-size:.875rem}
.team-card-sub{font-size:.75rem;color:#447e80;margin-top:.125rem}

.badge{display:inline-flex;align-items:center;padding:.125rem .5rem;border-radius:9999px;font-size:.75rem;line-height:1rem;font-weight:600}

.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:.5rem;font-weight:500;font-size:.875rem;transition:color .15s,background-color .15s;cursor:pointer;outline:none;border:none}
.btn-primary{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:.5rem;font-weight:500;font-size:.875rem;transition:color .15s,background-color .15s;cursor:pointer;outline:none;border:none;background-color:#447e80;color:#fff}
.btn-primary:hover:not(:disabled){background-color:#255a5d}
.btn-primary:disabled{opacity:.5;cursor:not-allowed}
.btn-secondary{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:.5rem;font-weight:500;font-size:.875rem;transition:color .15s,background-color .15s;cursor:pointer;outline:none;border:none;background-color:rgb(245 245 244);color:rgb(68 64 60)}
.btn-secondary:hover{background-color:rgb(231 229 228)}
.btn-danger{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:.5rem;font-weight:500;font-size:.875rem;transition:color .15s,background-color .15s;cursor:pointer;outline:none;border:none;background-color:rgb(254 226 226);color:rgb(185 28 28)}

.input{width:100%;padding:.5rem .75rem;border:1px solid rgb(231 229 228);border-radius:.5rem;font-size:.875rem;outline:none;background:#fff;color:rgb(28 25 23)}
.input:focus{border-color:#447e80;box-shadow:0 0 0 2px rgba(68,126,128,.2)}
select.input{appearance:auto}

.label{display:block;font-size:.75rem;font-weight:600;color:rgb(120 113 108);margin-bottom:.25rem;text-transform:uppercase;letter-spacing:.05em}

.status-neu{display:inline-flex;align-items:center;padding:.125rem .5rem;border-radius:9999px;font-size:.75rem;font-weight:600;background:rgb(219 234 254);color:rgb(29 78 216)}
.status-in_bearbeitung{display:inline-flex;align-items:center;padding:.125rem .5rem;border-radius:9999px;font-size:.75rem;font-weight:600;background:rgb(254 243 199);color:rgb(180 83 9)}
.status-wartet_auf_teilnehmer{display:inline-flex;align-items:center;padding:.125rem .5rem;border-radius:9999px;font-size:.75rem;font-weight:600;background:rgb(237 233 254);color:rgb(109 40 217)}
.status-eskaliert{display:inline-flex;align-items:center;padding:.125rem .5rem;border-radius:9999px;font-size:.75rem;font-weight:600;background:rgb(254 226 226);color:rgb(185 28 28)}
.status-abgeschlossen{display:inline-flex;align-items:center;padding:.125rem .5rem;border-radius:9999px;font-size:.75rem;font-weight:600;background:rgb(220 252 231);color:rgb(21 128 61)}

.prio-kritisch{display:inline-flex;align-items:center;padding:.125rem .5rem;border-radius:9999px;font-size:.75rem;font-weight:600;background:rgb(220 38 38);color:#fff}
.prio-hoch{display:inline-flex;align-items:center;padding:.125rem .5rem;border-radius:9999px;font-size:.75rem;font-weight:600;background:rgb(255 237 213);color:rgb(194 65 12)}
.prio-normal{display:inline-flex;align-items:center;padding:.125rem .5rem;border-radius:9999px;font-size:.75rem;font-weight:600;background:rgb(245 245 244);color:rgb(87 83 78)}
.prio-niedrig{display:inline-flex;align-items:center;padding:.125rem .5rem;border-radius:9999px;font-size:.75rem;font-weight:600;background:rgb(250 250 249);color:rgb(168 162 158)}

/* ── Pipeline Kanban ── */
.pipeline-scroll{display:flex;gap:1rem;overflow-x:auto;padding-bottom:1rem;align-items:flex-start}
.pipeline-col{min-width:230px;max-width:260px;flex-shrink:0}
.pipeline-col-header{background:#255a5d;color:#fff;padding:.5rem .75rem;border-radius:.5rem .5rem 0 0;font-family:'Maven Pro',sans-serif;font-size:.75rem;font-weight:700;display:flex;align-items:center;justify-content:space-between;text-transform:uppercase;letter-spacing:.04em}
.pipeline-col-header.success{background:#38a169}
.pipeline-col-header.danger{background:#e53e3e}
.pipeline-col-header.muted{background:#718096}
.pipeline-col-header.orange{background:#d4870a;color:#fff}
.pipeline-col-body{background:#f0f8f8;border-radius:0 0 .5rem .5rem;padding:.5rem;min-height:120px;display:flex;flex-direction:column;gap:.5rem}
.pipeline-card{background:#fff;border-radius:.5rem;padding:.75rem;border:1px solid #e0ecec;cursor:pointer;transition:box-shadow .15s,border-color .15s}
.pipeline-card:hover{box-shadow:0 2px 8px rgba(68,126,128,.18);border-color:#93c2c4}
.pipeline-card-name{font-family:'Maven Pro',sans-serif;font-weight:600;color:#255a5d;font-size:.875rem;line-height:1.2}
.pipeline-card-sub{font-size:.72rem;color:#447e80;margin-top:.125rem}
.pipeline-card-step{font-size:.72rem;color:#255a5d;background:#f0f8f8;border-radius:.25rem;padding:.125rem .375rem;margin-top:.375rem;display:inline-block;border:1px solid #93c2c4}
.source-badge{display:inline-flex;align-items:center;padding:.1rem .4rem;border-radius:9999px;font-size:.65rem;font-weight:700;background:#ffbd59;color:#1a3a3c;margin-left:.25rem}
.pipeline-status-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border-radius:.5rem;border:2px solid #e0ecec;cursor:pointer;font-size:.8rem;font-weight:500;color:#255a5d;transition:all .15s;background:#fff;width:100%;text-align:left;margin-bottom:.375rem}
.pipeline-status-btn:hover{border-color:#447e80;background:#f0f8f8}
.pipeline-status-btn.active{border-color:#447e80;background:#447e80;color:#fff}
.pipeline-status-btn.success{border-color:#38a169;background:#38a169;color:#fff}
.pipeline-status-btn.danger{border-color:#e53e3e;background:#fee2e2;color:#c53030}
.pipeline-status-btn.muted{color:#718096;border-color:#e2e8f0}


/* ══════════════════════════════════════════════════════
   MOBILE RESPONSIVE ADDITIONS
══════════════════════════════════════════════════════ */

/* Sidebar Drawer (Mobile) */
.sidebar-drawer {
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  z-index: 40;
  transition: transform 200ms ease-in-out;
}
.sidebar-overlay { display: none; }
.translate-x-0 { transform: translateX(0); }
.-translate-x-full { transform: translateX(-100%); }

/* Mobile Header: zeigen auf kleinen Screens */
.lg-hidden-block { display: flex; }

/* Main Content: Abstand für mobile Header */
.mobile-content-offset { padding-top: 3.25rem; }

/* Break long words (E-Mails) */
.break-words { word-break: break-word; overflow-wrap: break-word; }

/* Extra spacing classes */
.gap-1\.5 { gap: 0.375rem; }
.p-1\.5 { padding: 0.375rem; }
.pt-3 { padding-top: 0.75rem; }
.pb-3 { padding-bottom: 0.75rem; }
.pl-3 { padding-left: 0.75rem; }
.border-l-2 { border-left-width: 2px; }
.border-l-4 { border-left-width: 4px; }
.border-l-blue-400 { border-left-color: rgb(96 165 250); }
.border-l-teal-500 { border-left-color: #447e80; }
.border-blue-50 { border-color: rgb(239 246 255); }
.border-blue-100 { border-color: rgb(219 234 254); }
.border-teal-50 { border-color: #d0ecec; }
.border-teal-100 { border-color: #b8e0e0; }
.text-blue-500 { color: rgb(59 130 246); }
.text-teal-600 { color: #447e80; }
.bg-black\/60 { background-color: rgba(0,0,0,.6); }
.opacity-0 { opacity: 0; }
.opacity-100 { opacity: 1; }
.transition-opacity { transition-property: opacity; transition-timing-function: cubic-bezier(.4,0,.2,1); transition-duration: 150ms; }
.transition-transform { transition-property: transform; transition-timing-function: cubic-bezier(.4,0,.2,1); }
.ease-in-out { transition-timing-function: cubic-bezier(.4,0,.2,1); }
.ease-out { transition-timing-function: cubic-bezier(0,0,.2,1); }
.ease-in { transition-timing-function: cubic-bezier(.4,0,1,1); }
.duration-150 { transition-duration: 150ms; }
.duration-200 { transition-duration: 200ms; }
.w-64 { width: 16rem; }

/* ── Large screen (lg: ≥1024px) ── */
@media (min-width: 1024px) {
  .lg-hidden-block { display: none; }       /* Mobile header weg */
  .sidebar-overlay { display: none !important; }
  .sidebar-drawer {
    position: static;                        /* Sidebar statisch */
    transform: translateX(0) !important;
    z-index: auto;
  }
  .mobile-content-offset { padding-top: 0; }
  .lg-static { position: static; }
  .lg-w-56 { width: 14rem; }
  .lg-translate-x-0 { transform: translateX(0); }
  .lg-px-6 { padding-left: 1.5rem; padding-right: 1.5rem; }
  .lg-py-5 { padding-top: 1.25rem; padding-bottom: 1.25rem; }
  .md\:col-span-3 { grid-column: span 3 / span 3; }
}

/* ── Tablet/Desktop sidebar border ── */
@media (min-width: 1024px) {
  .sidebar-drawer { border-right: 1px solid rgba(255,255,255,.08); }
}


/* ── Inbox Responsive Panel Layout ── */
.inbox-list-panel  { width: 380px; min-width: 280px; }
.inbox-mobile-back { display: none; }
.mobile-overlay-open { }

/* Schriftverkehr E-Mail Body */
.sv-mail-body p { margin: 0; }
.sv-mail-body p.mt-2 { margin-top: 0.5rem; }

@media (max-width: 1023px) {
  /* Inbox: Liste nimmt volle Breite */
  .inbox-outer-container { height: calc(100dvh - 220px) !important; }
  .inbox-list-panel   { width: 100% !important; min-width: 0 !important; border-right: none !important; }

  /* Detail: Full-Screen Overlay über allem */
  .inbox-detail-panel {
    position: fixed !important;
    inset: 0 !important;
    z-index: 55 !important;
    background: white !important;
    display: none !important;
    flex-direction: column !important;
    overflow-y: auto !important;
  }
  .inbox-detail-panel.mobile-overlay-open {
    display: flex !important;
  }
  .inbox-mobile-back { display: flex !important; flex-shrink: 0; }
}
@media (min-width: 1024px) {
  .inbox-mobile-back { display: none !important; }
  .inbox-outer-container { height: calc(100vh - 130px); }
}
/* === MOBILE RESPONSIVE FIXES === */

/* Mobile Sidebar */
@media (max-width: 768px) {
  /* Sidebar auf Mobile standardmäßig versteckt */
  aside.w-56 {
    position: fixed;
    top: 0;
    left: 0;
    height: 100vh;
    width: 280px;
    z-index: 100;
    transform: translateX(-100%);
    transition: transform 0.3s ease;
  }
  
  aside.w-56.mobile-open {
    transform: translateX(0);
  }
  
  /* Overlay wenn Sidebar offen */
  .mobile-overlay {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.5);
    z-index: 99;
  }
  
  .mobile-overlay.active {
    display: block;
  }
  
  /* Content nimmt volle Breite */
  #app > div[x-show="user"] {
    flex-direction: column;
  }
  
  /* Mobile Header mit Hamburger */
  .mobile-header {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    padding: 12px 16px;
    background: #255a5d;
    position: sticky;
    top: 0;
    z-index: 50;
  }
  
  /* Main Content padding anpassen */
  main {
    padding: 16px;
    overflow-x: hidden;
  }
  
  /* Tabellen horizontal scrollen */
  .overflow-x-auto {
    -webkit-overflow-scrolling: touch;
  }
  
  /* Grid auf 1-Spalten */
  .grid-cols-2, .grid-cols-3, .grid-cols-4 {
    grid-template-columns: repeat(1, minmax(0, 1fr)) !important;
  }
  
  /* Größere Touch-Targets */
  a, button {
    min-height: 44px;
    min-width: 44px;
  }
  
  /* Sidebar-Links größer */
  .sidebar-link {
    padding: 12px 16px;
    font-size: 16px;
  }
  
  /* Formulare volle Breite */
  form .grid {
    grid-template-columns: 1fr !important;
  }
  
  /* Modals volle Breite auf Mobile */
  .max-w-lg, .max-w-2xl, .max-w-3xl, .max-w-4xl {
    max-width: calc(100vw - 32px);
    margin: 16px;
  }
  
  /* Text nicht zu klein */
  .text-xs {
    font-size: 13px;
  }
  
  /* Padding verkleinern */
  .p-4, .p-5, .p-6 {
    padding: 12px;
  }
  
  /* Action Buttons stacked */
  .flex.gap-2.justify-end {
    flex-wrap: wrap;
  }
}

/* Tablet (769px - 1024px) */
@media (min-width: 769px) and (max-width: 1024px) {
  aside.w-56 {
    width: 220px;
  }
  
  .grid-cols-3, .grid-cols-4 {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

/* Desktop Sidebar - immer sichtbar */
@media (min-width: 769px) {
  .mobile-header {
    display: none !important;
  }
  
  .mobile-overlay {
    display: none !important;
  }
}

/* Utility für Mobile Header (standardmäßig versteckt) */
.mobile-header {
  display: none;
}

/* Hamburger Button */
.hamburger-btn {
  background: none;
  border: none;
  color: white;
  font-size: 24px;
  padding: 8px;
  cursor: pointer;
  min-width: 44px;
  min-height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Mobile-safe scrolling */
.overflow-y-auto, .overflow-x-auto {
  -webkit-overflow-scrolling: touch;
}

/* Prevent zoom on input focus (iOS) */
@media (max-width: 768px) {
  input, select, textarea {
    font-size: 16px;
  }
}
/* === EMERGENCY MOBILE FIXES v2 === */

@media (max-width: 768px) {
  main { width: 100% !important; max-width: 100% !important; overflow-x: hidden !important; padding: 0 !important; }
  .max-w-6xl, .max-w-5xl, .max-w-4xl, .max-w-3xl, .max-w-2xl { max-width: 100% !important; width: 100% !important; padding-left: 12px !important; padding-right: 12px !important; }
  .page-header { margin: 0 !important; padding: 16px 12px !important; width: 100% !important; }
  .grid-cols-2, .grid-cols-3, .grid-cols-4, [class*='grid-cols-'] { grid-template-columns: 1fr !important; gap: 12px !important; }
  .stat-card, .stat-card-alert, [class*='stat-card'] { min-width: 0 !important; padding: 16px !important; }
  .card, [class*='card'] { margin: 0 !important; width: 100% !important; max-width: 100% !important; }
  .flex.items-center.gap-3, .flex.items-start.gap-3 { flex-wrap: wrap !important; gap: 8px !important; }
  .overflow-x-auto { display: block; width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; }
  * { box-sizing: border-box; }
}
