/* v266 LayCrew Worldclass Shiftplan Override
   Ziel: aktuelles Layout behalten, aber wie eine moderne Event-/Planungsplattform wirken lassen.
   Wird bewusst als letzte CSS-Datei geladen. */
:root{
  --lc-red:#a50f2d;
  --lc-red-2:#d7193f;
  --lc-ink:#111827;
  --lc-muted:#667085;
  --lc-soft:#f7f8fb;
  --lc-line:rgba(148,163,184,.22);
  --lc-card:#ffffff;
  --lc-shadow:0 22px 70px rgba(17,24,39,.075);
  --lc-shadow-soft:0 10px 30px rgba(17,24,39,.045);
}

html,body{width:100%!important;max-width:100%!important;overflow-x:hidden!important;box-sizing:border-box!important;}
*,*::before,*::after{box-sizing:border-box!important;}
body{
  margin:0!important;
  background:
    radial-gradient(circle at 92% 2%, rgba(165,15,45,.10), transparent 18rem),
    linear-gradient(180deg,#f8fafc 0%,#ffffff 32%,#f4f6f9 100%)!important;
  color:var(--lc-ink)!important;
  -webkit-font-smoothing:antialiased!important;
  text-rendering:optimizeLegibility!important;
}

.public-hero{background:transparent!important;border:0!important;box-shadow:none!important;}
.public-wrap,.board-wrap{
  width:calc(100% - 32px)!important;
  max-width:1480px!important;
  min-width:0!important;
  margin:0 auto 42px!important;
  padding:18px!important;
  border:1px solid rgba(226,232,240,.86)!important;
  border-radius:34px!important;
  background:rgba(255,255,255,.72)!important;
  box-shadow:0 28px 95px rgba(15,23,42,.085)!important;
  backdrop-filter:blur(14px)!important;
}
.public-nav{max-width:1480px!important;width:calc(100% - 32px)!important;margin:0 auto!important;padding:16px 4px 8px!important;}

.event-card,.board-event-card,.board-filter-card,.home-screen-card{
  max-width:100%!important;min-width:0!important;
  border:1px solid rgba(226,232,240,.92)!important;
  border-radius:28px!important;
  background:linear-gradient(135deg,#fff 0%,#fffaf8 100%)!important;
  box-shadow:var(--lc-shadow-soft)!important;
  overflow:hidden!important;
}
.event-card{padding:26px 28px!important;}
.event-card h1,.board-event-card h1{
  margin:0 0 12px!important;
  font-size:clamp(2rem,3.5vw,3.25rem)!important;
  line-height:1!important;
  letter-spacing:-.055em!important;
  font-weight:850!important;
}
.event-meta,.board-meta,.public-actions,.filters-row,.day-tabs,.area-preview,.actions,.board-tools{
  max-width:100%!important;min-width:0!important;overflow-x:auto!important;overflow-y:hidden!important;flex-wrap:wrap!important;gap:8px!important;
  scrollbar-width:none!important;
}
.event-meta::-webkit-scrollbar,.day-tabs::-webkit-scrollbar,.area-preview::-webkit-scrollbar{display:none!important;}
.event-meta span,.board-meta span{
  border:1px solid rgba(226,232,240,.96)!important;
  background:#fff!important;
  color:#475467!important;
  border-radius:999px!important;
  padding:7px 11px!important;
  font-size:.82rem!important;
  font-weight:750!important;
  box-shadow:none!important;
}

/* KPI-Zeile: aktuelles Layout, aber ruhiger und rechtsbündige Zahlen */
.public-stats-row,.board-stats-row{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:12px!important;
  margin:16px 0!important;
  max-width:100%!important;
}
.public-stat,.board-stat{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  grid-template-areas:"label value"!important;
  align-items:center!important;
  column-gap:14px!important;
  min-height:70px!important;
  padding:16px 18px!important;
  border:1px solid rgba(226,232,240,.92)!important;
  border-radius:22px!important;
  background:rgba(255,255,255,.96)!important;
  box-shadow:0 12px 34px rgba(15,23,42,.045)!important;
  overflow:hidden!important;
}
.public-stat strong,.board-stat strong{
  grid-area:value!important;
  display:block!important;
  margin:0!important;
  text-align:right!important;
  color:#182230!important;
  font-size:clamp(1.55rem,2vw,2.05rem)!important;
  line-height:1!important;
  letter-spacing:-.045em!important;
  font-weight:650!important;
  white-space:nowrap!important;
}
.public-stat span,.board-stat span{
  grid-area:label!important;
  display:block!important;
  margin:0!important;
  color:#667085!important;
  text-align:left!important;
  font-size:.73rem!important;
  line-height:1.1!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  font-weight:800!important;
  white-space:nowrap!important;
}

.open-filter-bar{
  display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;
  margin:14px 0!important;padding:12px 14px!important;
  border:1px solid rgba(226,232,240,.92)!important;border-radius:24px!important;
  background:rgba(255,255,255,.94)!important;box-shadow:0 10px 30px rgba(15,23,42,.04)!important;
}
.summary-pill{border-radius:999px!important;padding:8px 12px!important;font-weight:800!important;font-size:.85rem!important;}
.btn,.share-chip,button,a.btn{border-radius:999px!important;font-weight:800!important;}
.btn.secondary,a.btn.secondary,button.btn.secondary{background:#fff!important;border:1px solid rgba(226,232,240,.98)!important;color:#344054!important;box-shadow:none!important;}
button[type=submit],.btn:not(.secondary){box-shadow:0 14px 30px rgba(165,15,45,.18)!important;}

.day-tabs{
  position:sticky!important;top:0!important;z-index:30!important;
  display:flex!important;gap:10px!important;margin:18px 0!important;padding:8px!important;
  border:1px solid rgba(226,232,240,.86)!important;border-radius:24px!important;
  background:rgba(246,248,251,.86)!important;backdrop-filter:blur(16px)!important;
  box-shadow:0 12px 30px rgba(15,23,42,.045)!important;
}
.day-tab{
  min-width:112px!important;display:flex!important;align-items:center!important;justify-content:center!important;
  border:1px solid transparent!important;background:#fff!important;color:#344054!important;
  border-radius:17px!important;padding:10px 15px!important;font-size:.9rem!important;font-weight:850!important;
  box-shadow:none!important;white-space:nowrap!important;
}
.day-tab.active{background:linear-gradient(135deg,var(--lc-red),var(--lc-red-2))!important;color:#fff!important;box-shadow:0 12px 26px rgba(165,15,45,.22)!important;}
.day-heading{display:flex!important;align-items:flex-end!important;justify-content:space-between!important;gap:12px!important;margin:22px 2px 12px!important;}
.day-heading h2{font-size:1.35rem!important;letter-spacing:-.03em!important;margin:0!important;font-weight:850!important;}
.day-count{border:1px solid rgba(226,232,240,.92)!important;background:#fff!important;border-radius:999px!important;padding:7px 11px!important;color:#667085!important;font-size:.8rem!important;font-weight:800!important;box-shadow:none!important;}

/* Bereichskarten */
.area-list{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(330px,1fr))!important;
  align-items:start!important;
  gap:14px!important;
  max-width:100%!important;min-width:0!important;
}
.area-group{
  max-width:100%!important;min-width:0!important;height:auto!important;
  border:1px solid rgba(226,232,240,.92)!important;border-radius:24px!important;
  background:#fff!important;box-shadow:var(--lc-shadow-soft)!important;overflow:hidden!important;
  transition:transform .16s ease, box-shadow .16s ease!important;
}
.area-group:hover{transform:translateY(-1px)!important;box-shadow:0 18px 45px rgba(15,23,42,.07)!important;}
.area-group::before{display:none!important;}
.area-toggle{
  position:relative!important;display:grid!important;grid-template-columns:minmax(0,1fr) 32px!important;align-items:start!important;gap:10px!important;
  width:100%!important;border:0!important;background:linear-gradient(180deg,#fff,#fffaf8)!important;padding:16px!important;text-align:left!important;cursor:pointer!important;
}
.area-title{display:flex!important;align-items:flex-start!important;gap:12px!important;min-width:0!important;}
.area-title strong{display:grid!important;grid-template-columns:44px minmax(0,1fr)!important;grid-template-rows:auto auto auto!important;column-gap:12px!important;align-items:center!important;width:100%!important;min-width:0!important;font-size:1rem!important;letter-spacing:-.01em!important;font-weight:850!important;}
.area-type-icon{grid-row:1 / span 3!important;grid-column:1!important;width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;flex:0 0 44px!important;display:flex!important;align-items:center!important;justify-content:center!important;border-radius:16px!important;background:#fff1f2!important;color:inherit!important;font-size:22px!important;box-shadow:inset 0 0 0 1px rgba(165,15,45,.10)!important;margin:0!important;}
.area-status-dot{display:none!important;}
.area-summary{grid-column:2!important;display:block!important;margin:6px 0 0!important;color:#667085!important;font-size:.88rem!important;line-height:1.25!important;font-weight:750!important;}
.area-summary strong{display:inline!important;font-weight:850!important;}
.area-preview{grid-column:1 / -1!important;display:flex!important;flex-wrap:wrap!important;gap:7px!important;margin:13px 0 0!important;max-width:100%!important;}
.area-preview-chip{border:1px solid #f2d7d7!important;background:#fff!important;border-radius:999px!important;padding:6px 9px!important;font-size:.78rem!important;line-height:1!important;font-weight:800!important;white-space:nowrap!important;}
.area-preview-chip.bad{background:#fff1f2!important;color:#9f1239!important;border-color:#fecdd3!important;}
.area-preview-chip.warn{background:#fff7ed!important;color:#9a3412!important;border-color:#fed7aa!important;}
.area-preview-chip.ok{background:#f0fdf4!important;color:#166534!important;border-color:#bbf7d0!important;}
.area-chevron{display:flex!important;align-items:center!important;justify-content:center!important;width:28px!important;height:28px!important;border-radius:999px!important;background:#fff!important;border:1px solid rgba(226,232,240,.9)!important;color:var(--lc-red)!important;font-weight:900!important;transition:transform .15s ease!important;}
.area-group.open .area-chevron{transform:rotate(180deg)!important;}
.area-content{display:none!important;padding:0 12px 12px!important;}
.area-group.open .area-content{display:block!important;}

/* Schichtkarten: kompakt, gleichmäßig, sauber aligned */
.shift-summary-list{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;padding:0!important;max-width:100%!important;}
.shift-accordion{
  position:relative!important;display:flex!important;flex-direction:column!important;min-height:96px!important;
  border:1px solid rgba(226,232,240,.96)!important;border-left-width:4px!important;border-radius:18px!important;
  background:#fff!important;box-shadow:none!important;overflow:hidden!important;max-width:100%!important;min-width:0!important;
}
.shift-accordion.status-bad{border-left-color:#e11d48!important;background:#fff!important;}
.shift-accordion.status-warn{border-left-color:#f59e0b!important;background:#fff!important;}
.shift-accordion.status-ok{border-left-color:#22c55e!important;background:#fff!important;}
.shift-toggle{
  position:relative!important;display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:10px!important;
  width:100%!important;min-height:96px!important;padding:14px 44px 14px 14px!important;border:0!important;background:#fff!important;text-align:left!important;cursor:pointer!important;pointer-events:auto!important;
}
.shift-toggle-main{min-width:0!important;max-width:100%!important;}
.shift-title-line{min-height:28px!important;display:flex!important;flex-wrap:wrap!important;align-items:center!important;gap:6px!important;color:#111827!important;font-size:.96rem!important;line-height:1.25!important;font-weight:850!important;letter-spacing:-.01em!important;}
.shift-time-line{min-height:34px!important;display:block!important;margin-top:7px!important;color:#667085!important;font-size:.84rem!important;line-height:1.28!important;font-weight:750!important;}
.shift-toggle-side{position:absolute!important;top:12px!important;right:12px!important;width:28px!important;height:28px!important;display:flex!important;align-items:center!important;justify-content:center!important;pointer-events:none!important;}
.shift-chevron{display:flex!important;align-items:center!important;justify-content:center!important;width:28px!important;height:28px!important;background:transparent!important;color:var(--lc-red)!important;box-shadow:none!important;font-weight:900!important;line-height:1!important;transition:transform .15s ease!important;}
.shift-accordion.open .shift-chevron{transform:rotate(180deg)!important;}
.shift-body{display:none!important;}
.shift-accordion.open .shift-body{display:block!important;}
.shift-body-inner{padding:14px!important;background:#fbfcfe!important;border-top:1px solid rgba(226,232,240,.92)!important;border-radius:0!important;}
.badge{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:22px!important;border-radius:999px!important;padding:3px 8px!important;font-size:.72rem!important;line-height:1!important;font-weight:800!important;}
.progress{height:8px!important;border:0!important;border-radius:999px!important;background:#eef2f6!important;overflow:hidden!important;}
.progress>span{display:block!important;height:100%!important;background:linear-gradient(90deg,var(--lc-red),#fb7185)!important;border-radius:999px!important;}
.shift-needed{border-radius:14px!important;padding:9px 11px!important;margin:10px 0!important;font-size:.9rem!important;font-weight:800!important;}

/* Formulare */
.shift-signup-form,.shift-body form{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;width:100%!important;max-width:760px!important;margin:14px auto 0!important;}
.shift-signup-form input,.shift-signup-form textarea,.shift-signup-form select,
.shift-body form input,.shift-body form textarea,.shift-body form select{
  width:100%!important;min-width:0!important;min-height:46px!important;border-radius:14px!important;padding:10px 12px!important;border:1px solid #d0d5dd!important;background:#fff!important;font:inherit!important;
}
.shift-body form label,.shift-body form textarea,.shift-body form button.full,.role-choice-list{grid-column:1 / -1!important;}
.role-choice-list{display:grid!important;gap:8px!important;}
.role-choice{border:1px solid rgba(226,232,240,.96)!important;background:#fff!important;border-radius:16px!important;padding:10px!important;}

@media (min-width:1200px){
  .area-list{grid-template-columns:repeat(4,minmax(0,1fr))!important;}
}
@media (max-width:1100px){
  .public-stats-row,.board-stats-row{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .area-list{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media (max-width:700px){
  .public-wrap,.board-wrap{width:calc(100% - 18px)!important;margin-bottom:24px!important;padding:10px!important;border-radius:24px!important;}
  .public-nav{width:calc(100% - 18px)!important;padding:10px 0 6px!important;}
  .event-card{padding:20px!important;border-radius:22px!important;}
  .event-card h1{font-size:2rem!important;letter-spacing:-.045em!important;}
  .public-stats-row,.board-stats-row{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important;}
  .public-stat,.board-stat{min-height:64px!important;padding:13px!important;border-radius:18px!important;column-gap:8px!important;}
  .public-stat strong,.board-stat strong{font-size:1.45rem!important;font-weight:650!important;}
  .public-stat span,.board-stat span{font-size:.66rem!important;letter-spacing:.06em!important;}
  .open-filter-bar{display:block!important;border-radius:20px!important;}
  .open-filter-bar .actions{margin-top:10px!important;display:grid!important;gap:8px!important;}
  .actions .btn,.actions .share-chip{width:100%!important;justify-content:center!important;text-align:center!important;}
  .day-tabs{border-radius:20px!important;gap:8px!important;padding:7px!important;}
  .day-tab{min-width:108px!important;padding:10px 12px!important;border-radius:15px!important;font-size:.84rem!important;}
  .area-list{grid-template-columns:1fr!important;gap:12px!important;}
  .area-group{border-radius:20px!important;}
  .area-toggle{padding:14px!important;}
  .area-title strong{grid-template-columns:40px minmax(0,1fr)!important;column-gap:10px!important;}
  .area-type-icon{width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important;flex:0 0 40px!important;font-size:20px!important;border-radius:14px!important;}
  .shift-accordion,.shift-toggle{min-height:90px!important;}
  .shift-title-line{font-size:.93rem!important;}
  .shift-time-line{font-size:.8rem!important;}
  .shift-body form,.shift-signup-form{grid-template-columns:1fr!important;}
}
@media (max-width:430px){
  .public-stats-row,.board-stats-row{grid-template-columns:1fr 1fr!important;}
  .area-preview{display:flex!important;overflow-x:auto!important;flex-wrap:nowrap!important;padding-bottom:2px!important;}
}
