.animate-fade-in { animation: fadeIn 0.5s ease-in-out; }
  @keyframes fadeIn { from {opacity:0;} to {opacity:1;} }

  /* Buttons (Toolbar) */
  .wp-btn{
    display:inline-flex; align-items:center; justify-content:center;
    height:40px; min-width:40px; padding:0 12px;
    border-radius:10px; font-weight:700;
    box-shadow:none;
    transition:.15s;
  }
  .wp-btn-blue{ background:#2563eb; color:#fff; }
  .wp-btn-blue:hover{ background:#1d4ed8; }
  .wp-btn-orange{ background:#ea580c; color:#fff; }
  .wp-btn-orange:hover{ background:#c2410c; }
  .wp-btn-green{ background:#16a34a; color:#fff; }
  .wp-btn-green:hover{ background:#15803d; }
  .wp-btn-gray{ background:#e5e7eb; color:#111827; }
  .wp-btn-gray:hover{ background:#d1d5db; }

  /* =========================
     Wochenplan modern / clean / ohne Schatten
     ========================= */
  #page-wochenplan .wp-schedule-table{
    border-collapse:separate;
    border-spacing:0;
    width:max-content;
    min-width:100%;
    background:#fff;
  }

  #page-wochenplan .wp-head-emp{
    background:#f8fafc;
    border-right:1px solid #e2e8f0;
    border-bottom:1px solid #e2e8f0;
    box-shadow:none;
  }

  #page-wochenplan .wp-day-head{
    background:#0f172a;
    border-right:1px solid rgba(255,255,255,.06);
    border-bottom:1px solid #0f172a;
    min-width:165px;
    box-shadow:none;
  }

  #page-wochenplan .wp-day-head-inner{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    min-height:64px;
  }

  #page-wochenplan .wp-day-badge{
    width:42px;
    height:42px;
    border-radius:14px;
    background:rgba(255,255,255,.08);
    border:1px solid rgba(255,255,255,.10);
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:20px;
    font-weight:900;
    line-height:1;
    color:#fff;
    box-shadow:none;
  }

  #page-wochenplan .wp-day-meta{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    justify-content:center;
    line-height:1.05;
  }

  #page-wochenplan .wp-day-weekday{
    font-size:11px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
    color:#cbd5e1;
  }

  #page-wochenplan .wp-day-month{
    font-size:13px;
    font-weight:800;
    color:#fff;
    margin-top:4px;
  }

  /* Header links */
  #page-wochenplan .wp-emp-toolbar-card{
    border:1px solid #e2e8f0;
    background:#fff;
    border-radius:18px;
    padding:10px 10px 11px;
    box-shadow:none;
  }

  #page-wochenplan .wp-emp-toolbar-row1,
  #page-wochenplan .wp-emp-toolbar-row2{
    display:flex;
    align-items:center;
    gap:8px;
  }

  #page-wochenplan .wp-emp-toolbar-row2{
    margin-top:10px;
  }

  #page-wochenplan .wp-emp-toolbar-title{
    font-size:14px;
    font-weight:900;
    color:#0f172a;
    line-height:1;
    white-space:nowrap;
    flex:0 0 auto;
  }

  #page-wochenplan .wp-emp-toolbar-spacer{
    margin-left:auto;
  }

  #page-wochenplan .wp-emp-stat-chip{
    display:inline-flex;
    align-items:center;
    gap:6px;
    height:28px;
    padding:0 10px;
    border-radius:999px;
    background:#fff;
    border:1px solid #e2e8f0;
    font-size:11px;
    font-weight:800;
    color:#475569;
    white-space:nowrap;
    box-shadow:none;
    flex:0 0 auto;
  }

  #page-wochenplan .wp-header-icon-btn{
    height:34px;
    width:34px;
    border-radius:999px;
    border:1px solid #dbe3ef;
    background:#fff;
    display:grid;
    place-items:center;
    color:#64748b;
    transition:.15s ease;
    box-shadow:none;
    flex:0 0 auto;
  }
  #page-wochenplan .wp-header-icon-btn:hover{
    background:#f8fafc;
    color:#0f172a;
  }

  #page-wochenplan .wp-header-select{
    height:34px;
    min-width:122px;
    border-radius:999px;
    border:1px solid #dbe3ef;
    background:#fff;
    padding:0 34px 0 14px;
    font-size:12px;
    font-weight:800;
    color:#334155;
    outline:none;
    box-shadow:none;
    flex:0 0 auto;
  }

  #page-wochenplan .wp-header-label{
    font-size:11px;
    font-weight:800;
    color:#64748b;
    white-space:nowrap;
    flex:0 0 auto;
  }

  #page-wochenplan .wp-header-search-wrap{
    position:relative;
    flex:1 1 auto;
    min-width:0;
  }

  #page-wochenplan .wp-header-search{
    width:100%;
    height:38px;
    border-radius:999px;
    border:1px solid #dbe3ef;
    background:#fff;
    padding:0 36px 0 14px;
    font-size:12px;
    font-weight:700;
    color:#0f172a;
    outline:none;
    box-shadow:none;
  }

  #page-wochenplan .wp-header-search::placeholder{
    color:#94a3b8;
    font-weight:700;
  }

  #page-wochenplan .wp-header-search-icon{
    position:absolute;
    right:12px;
    top:50%;
    transform:translateY(-50%);
    color:#94a3b8;
    font-size:15px;
    pointer-events:none;
  }

  /* Mitarbeiter Row */
  #page-wochenplan .wp-emp-row{
    background:#fff;
    transition:background .15s ease;
  }
  #page-wochenplan .wp-emp-row:hover{
    background:#f8fafc;
  }
  #page-wochenplan .wp-emp-cell{
    background:#fff;
    border-right:1px solid #e2e8f0;
  }

  #page-wochenplan .wp-emp-card{
    border:1px solid #e2e8f0;
    background:#fff;
    border-radius:24px;
    padding:12px 14px;
    box-shadow:none;
  }

  #page-wochenplan .wp-emp-avatar{
    width:54px;
    height:54px;
    border-radius:18px;
    background:#dbeafe;
    border:1px solid #bfdbfe;
    color:#1d4ed8;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:16px;
    font-weight:900;
    flex:0 0 auto;
    box-shadow:none;
  }

  #page-wochenplan .wp-emp-name{
    font-size:15px;
    font-weight:800;
    color:#0f172a;
    line-height:1.1;
  }

  #page-wochenplan .wp-emp-sub{
    margin-top:8px;
    display:flex;
    flex-wrap:wrap;
    gap:8px;
  }

  #page-wochenplan .wp-emp-mini{
    display:inline-flex;
    align-items:center;
    gap:5px;
    height:32px;
    padding:0 12px;
    border-radius:999px;
    background:#f8fafc;
    border:1px solid #e2e8f0;
    font-size:12px;
    font-weight:700;
    color:#475569;
    box-shadow:none;
  }

  #page-wochenplan .wp-emp-actions{
    display:flex;
    align-items:center;
    gap:8px;
    margin-left:auto;
  }

  #page-wochenplan .wp-icon-btn{
    height:44px;
    width:44px;
    border-radius:18px;
    border:1px solid #e2e8f0;
    background:#fff;
    display:grid;
    place-items:center;
    color:#64748b;
    transition:.15s ease;
    box-shadow:none;
  }
  #page-wochenplan .wp-icon-btn:hover{
    background:#f8fafc;
    color:#0f172a;
    transform:none;
  }

  #page-wochenplan .wp-month-btn{
    display:inline-flex;
    align-items:center;
    gap:6px;
    height:32px;
    padding:0 12px;
    border-radius:999px;
    background:#f8fafc;
    border:1px solid #e2e8f0;
    font-size:12px;
    font-weight:700;
    color:#334155;
    transition:.15s ease;
    box-shadow:none;
  }
  #page-wochenplan .wp-month-btn:hover{
    background:#f1f5f9;
    border-color:#cbd5e1;
  }

  #page-wochenplan .wp-month-sep{
    color:#cbd5e1;
    font-weight:900;
  }

/* Drei Punkte nur Hover */
#page-wochenplan .wp-hover-menu-btn{
  opacity:0;
  pointer-events:none;
  transition:opacity .15s ease;
}

#page-wochenplan .wp-emp-row:hover .wp-hover-menu-btn,
#page-wochenplan tr.group:hover .wp-hover-menu-btn{
  opacity:1;
  pointer-events:auto;
}

.wp-floating-menu{
  position:fixed;
  z-index:999999 !important;
  min-width:180px;
  background:#fff;
  border:1px solid #e2e8f0;
  border-radius:14px;
  overflow:hidden;
  box-shadow:0 8px 24px rgba(15,23,42,.12);
}

.wp-floating-menu button{
  width:100%;
  border:0;
  background:#fff;
  padding:10px 12px;
  text-align:left;
  font-size:13px;
  font-weight:700;
  color:#334155;
  display:flex;
  align-items:center;
  gap:8px;
}

.wp-floating-menu button:hover{
  background:#f8fafc;
}

.wp-floating-menu button.danger{
  color:#dc2626;
}

.wp-floating-menu button.danger:hover{
  background:#fef2f2;
}

/* Wetter CSS */

#page-wochenplan .wp-weather-mini{
  margin-top:6px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:5px;
  font-size:11px;
  font-weight:800;
  color:#e2e8f0;
  white-space:nowrap;
}

#page-wochenplan .wp-weather-mini .ico{
  font-size:15px;
  line-height:1;
}

#page-wochenplan .wp-weather-mini.loading{
  color:#94a3b8;
}

  @media (max-width: 1024px){
    #page-wochenplan .wp-head-emp{
      width:260px !important;
      min-width:260px !important;
    }
    #page-wochenplan .wp-emp-cell{
      width:260px !important;
      min-width:260px !important;
    }
    #page-wochenplan .wp-day-head{
      min-width:150px;
    }
    #page-wochenplan .wp-emp-card{
      border-radius:20px;
    }
    #page-wochenplan .wp-icon-btn{
      height:40px;
      width:40px;
      border-radius:16px;
    }
    #page-wochenplan .wp-header-select{
      min-width:108px;
    }
  }

  @media (max-width: 768px){
    #page-wochenplan .wp-head-emp{
      width:230px !important;
      min-width:230px !important;
    }
    #page-wochenplan .wp-emp-cell{
      width:230px !important;
      min-width:230px !important;
    }
    #page-wochenplan .wp-day-head{
      min-width:138px;
    }
    #page-wochenplan .wp-day-badge{
      width:36px;
      height:36px;
      border-radius:12px;
      font-size:17px;
    }
    #page-wochenplan .wp-day-head-inner{
      gap:8px;
      min-height:58px;
    }
    #page-wochenplan .wp-emp-card{
      padding:10px 11px;
      border-radius:18px;
    }
    #page-wochenplan .wp-emp-avatar{
      width:44px;
      height:44px;
      border-radius:14px;
      font-size:13px;
    }
    #page-wochenplan .wp-emp-name{
      font-size:14px;
    }
    #page-wochenplan .wp-icon-btn{
      height:38px;
      width:38px;
      border-radius:14px;
    }
    #page-wochenplan .wp-month-btn,
    #page-wochenplan .wp-emp-mini{
      height:30px;
      padding:0 10px;
      font-size:11px;
    }
    #page-wochenplan .wp-header-select{
      min-width:96px;
      height:32px;
    }
    #page-wochenplan .wp-header-icon-btn{
      height:32px;
      width:32px;
    }
    #page-wochenplan .wp-header-search{
      height:34px;
    }
  }

  /* ✅ Tabelle unten nicht verdecken – wird per JS dynamisch gesetzt */
  /* =========================
     ✅ Skew Tabs nur für WP Footer (scoped)
     ========================= */

  #wp-prod-footer .wp-tabbed{
    width:100%;
    border-bottom:2px solid #0f172a;
    overflow:hidden;
    transition:border 250ms ease;
    position:relative;
    z-index:30;
    background:#ffffff;
    padding-right:56px;
  }

  #wp-prod-footer .wp-tabbed-scroll{
    overflow-x:auto;
    overflow-y:hidden;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
  }
  #wp-prod-footer .wp-tabbed-scroll::-webkit-scrollbar{ display:none; }

  #wp-prod-footer .wp-tabbed ul{
    margin:0;
    padding:0;
    overflow:hidden;
    float:left;
    padding-left:14px;
    list-style-type:none;
  }

  #wp-prod-footer .wp-tabbed ul *{ margin:0; padding:0; }

  #wp-prod-footer .wp-tabbed ul li{
    display:block;
    float:right;
    padding:1px 12px 1px;
    background-color:#fff;
    margin-right:36px;
    margin-left:16px;
    z-index:2;
    position:relative;
    cursor:pointer;
    color:#64748b;
    text-transform:uppercase;
    font:800 12px/14px ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;
    letter-spacing:.02em;
    transition:all 250ms ease;
    user-select:none;
    white-space:nowrap;
  }

  #wp-prod-footer .wp-tabbed ul li:before,
  #wp-prod-footer .wp-tabbed ul li:after{
    display:block;
    content:" ";
    position:absolute;
    top:0;
    height:100%;
    width:30px;
    background-color:#fff;
    transition:all 250ms ease;
  }

  #wp-prod-footer .wp-tabbed ul li:before{
    right:-24px;
    transform:skew(30deg, 0deg);
    box-shadow:rgba(0,0,0,.10) 3px 2px 5px, inset rgba(255,255,255,.09) -1px 0;
  }

  #wp-prod-footer .wp-tabbed ul li:after{
    left:-24px;
    transform:skew(-30deg, 0deg);
    box-shadow:rgba(0,0,0,.10) -3px 2px 5px, inset rgba(255,255,255,.09) 1px 0;
  }

  #wp-prod-footer .wp-tabbed ul li.is-active{
    background-color:#0f172a;
    color:#fff;
  }
  #wp-prod-footer .wp-tabbed ul li.is-active:before,
  #wp-prod-footer .wp-tabbed ul li.is-active:after{
    background-color:#0f172a;
  }

  #wp-prod-footer .wp-tabbed ul li:hover{ color:#0f172a; }
  #wp-prod-footer .wp-tabbed ul li.is-active:hover{ color:#fff; }

  @media (max-width: 639px){
    #wp-prod-footer .wp-tabbed{ overflow:hidden; }
    #wp-prod-footer .wp-tabbed ul{
      float:none;
      display:flex;
      flex-wrap:nowrap;
      gap:18px;
      padding:0 12px;
    }
    #wp-prod-footer .wp-tabbed ul li{
      float:none;
      margin:0;
      flex:0 0 auto;
    }
  }

  /* ✅ Header komplett togglebar */
  #page-wochenplan .wp-prod-toggle-area{ cursor: pointer; }

  .wp-card{
    background:#f8fafc;
    border:1px solid #e5e7eb;
    border-radius:12px;
    padding:10px 12px;
    box-shadow:none;
  }
  .wp-card-green{ background:#f0fdf4; border-color:#bbf7d0; }
  .wp-card-blue{ background:#eff6ff; border-color:#bfdbfe; }
  .wp-card-title{ font-size:12px; color:#475569; font-weight:700; }
  .wp-card-value{ font-size:14px; font-weight:800; color:#0f172a; margin-top:2px; }

  .wp-add-btn{
    opacity:0;
    transition:.15s;
    background:#3b82f6;
    color:#fff;
    padding:6px 10px;
    border-radius:10px;
    font-weight:800;
    font-size:12px;
    box-shadow:none;
  }
  .wp-cell:hover .wp-add-btn{ opacity:1; }

  .av-layer{ position:absolute; inset:3px; border-radius:10px; opacity:.22; pointer-events:none; }
  .av-hint{ position:absolute; left:8px; top:6px; font-size:11px; color:#475569; }

  .note-badge{
    position:absolute;
    left:10px; top:8px;
    width:18px; height:18px;
    border-radius:999px;
    background:#eff6ff;
    border:1px solid #bfdbfe;
    display:flex; align-items:center; justify-content:center;
    color:#2563eb;
    box-shadow:none;
    pointer-events:none;
  }

  .shift-box{
    position:relative;
    display:flex; align-items:center; gap:10px;
    border:3px solid;
    border-radius:10px;
    background:#fff;
    padding:8px 10px;
    min-height:44px;
    box-shadow:none;
    user-select:none;
    cursor:grab;
  }
  .shift-box:active{ cursor:grabbing; }

  .wp-drag-ghost{ opacity:.55; }

  .note-corner{
    position:absolute;
    right:8px;
    top:8px;
    width:18px;
    height:18px;
    border-radius:8px;
    background:#eff6ff;
    border:1px solid #bfdbfe;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#2563eb;
    box-shadow:none;
    z-index:3;
    pointer-events:none;
  }
  .note-corner .material-icons{ font-size:14px; line-height:1; }

  .note-tooltip{
    position:absolute;
    right:8px;
    top:-8px;
    transform: translateY(-100%);
    min-width:220px;
    max-width:360px;
    background:#0f172a;
    color:#fff;
    border-radius:12px;
    padding:10px 12px;
    font-size:12px;
    line-height:1.35;
    box-shadow:none;
    opacity:0;
    pointer-events:none;
    transition:.12s;
    z-index:60;
    white-space:pre-wrap;
  }
  .note-tooltip::after{
    content:"";
    position:absolute;
    right:14px;
    bottom:-6px;
    width:12px; height:12px;
    background:#0f172a;
    transform: rotate(45deg);
  }
  .shift-wrapper:hover .note-tooltip{ opacity:1; }

  .wp-drop-hover{
    outline:2px dashed #2563eb;
    outline-offset:-4px;
    background:#eff6ff;
  }

  .wp-shift-draggable{ -webkit-user-drag: element; }
  /* Mobile-specific tweaks to keep the weekly view compact */
@media (max-width: 639px){
  
  #page-wochenplan .wp-schedule-table,
  #page-wochenplan .schedule-table{
    width:max-content !important;
    min-width:0 !important;
    table-layout:fixed !important;
  }

  #page-wochenplan .schedule-table th:first-child,
  #page-wochenplan .schedule-table td.sticky.left-0{
    width:72px !important;
    min-width:72px !important;
    max-width:72px !important;
    padding-left:2px !important;
    padding-right:2px !important;
    overflow:hidden !important;
  }

  #page-wochenplan .schedule-table th:not(:first-child),
  #page-wochenplan .schedule-table td.wp-cell{
    width:48px !important;
    min-width:48px !important;
    max-width:48px !important;
    padding-left:2px !important;
    padding-right:2px !important;
    overflow:hidden !important;
  }

  #page-wochenplan .schedule-table td.wp-cell .wp-shift-draggable{
    padding:2px !important;
    min-height:34px !important;
  }

  #page-wochenplan .wp-weather-mini,
  #page-wochenplan [data-wp-day-weather]{
    display:none !important;
  }

  #page-wochenplan table.schedule-table thead th{
    font-size:10px !important;
    line-height:1 !important;
  }

  #page-wochenplan .schedule-table td.sticky.left-0 > div{
    padding-left:0 !important;
    padding-right:0 !important;
  }
}
