/* =========================
   מודאלים (מנהל) – בסיס
   ========================= */
.dlts-modal{position:fixed;inset:0;z-index:9999}
.dlts-modal[aria-hidden="true"]{display:none}
.dlts-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.4)}
@supports (backdrop-filter: blur(4px)){
  .dlts-modal-backdrop{backdrop-filter: blur(4px)}
}
.dlts-modal-dialog{
  position:relative;background:#fff;width:min(1000px,96vw);
  margin:4vh auto;border-radius:16px;padding:16px;box-shadow:var(--dlts-shadow);
  max-height:92vh;overflow:auto
}
.dlts-modal-lg{width:min(1100px,96vw)}
.dlts-modal-xl{width:min(1280px,98vw)}
.dlts-modal-head{display:flex;align-items:center;justify-content:center;margin-bottom:10px;position:sticky;top:0;background:#fff;padding:8px 36px;border-bottom:1px solid var(--dlts-line);z-index:5;border-top-left-radius:16px;border-top-right-radius:16px}
.dlts-modal-head h3{margin:0;font-weight:900;letter-spacing:.2px}
.dlts-modal-body{overflow-x:auto;padding:8px 4px 16px}
.dlts-icon-btn{background:transparent;border:0;font-size:22px;cursor:pointer;line-height:1}
.dlts-icon-btn:hover{opacity:.8;transform:translateY(-1px)}
.dlts-sep{border:0;border-top:1px solid var(--dlts-line);margin:12px 0}

/* הצמדת כפתור הסגירה לפינת המודאל */
.dlts-modal-head .dlts-icon-btn{ position:absolute;inset-inline-end:10px;top:8px;font-weight:700; }

/* =========================
   טופס יצירת זימון – גריד ושדות
   ========================= */
.dlts-grid{
  display:grid;
  grid-template-columns: repeat(12, 1fr);
  gap:12px;
}
.dlts-grid > *{min-width:0}
.dlts-grid > div:not(.dlts-actions):not(.dlts-box){grid-column: span 6}
.dlts-grid > div[style*="grid-column:1/-1"]{grid-column:1/-1}

/* תוויות וקלטים במודאל */
.dlts-modal label{display:block;font-weight:800;margin:0 0 6px;color:#0f172a}
.dlts-modal input[type="text"],
.dlts-modal input[type="url"],
.dlts-modal input[type="email"],
.dlts-modal input[type="datetime-local"],
.dlts-modal input[type="date"],
.dlts-modal input[type="time"],
.dlts-modal select,
.dlts-modal textarea{
  width:100%; padding:11px 12px; border:1px solid var(--dlts-line); border-radius:12px;
  background:#fff; box-shadow:0 1px 2px rgba(16,24,40,.04) inset; font:inherit; line-height:1.3;
}
.dlts-modal textarea{min-height:88px; resize:vertical}
.dlts-modal input:focus,
.dlts-modal select:focus,
.dlts-modal textarea:focus{
  outline:none; border-color:#93c5fd; box-shadow:0 0 0 3px rgba(147,197,253,.35);
}

/* אנימציית הצגה/הסתרה לשדות מתחלפים */
.switchable{transition:opacity .18s ease, visibility .18s ease, max-height .18s ease}
.switchable[style*="display:none"]{opacity:0; visibility:hidden; max-height:0 !important}

/* קבוצת רדיו (פרונטלי/אונליין) – ניטור מודרני */
.dlts-radio{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.dlts-radio label{display:flex;align-items:center;gap:8px;font-weight:800;margin:0;background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;padding:8px 12px;cursor:pointer}
.dlts-radio input[type="radio"]{accent-color:#0ea5e9}
.dlts-radio input[type="radio"]:checked + span{color:#0ea5e9}
.dlts-radio input[type="radio"]{margin:0}

/* צבע בורר */
.dlts-modal input[type="color"]{
  height:44px; padding:4px; border-radius:12px; cursor:pointer;
}

/* בחירת מוזמנים (Select2) – צ'יפים + חיפוש */
.select2-container{z-index:100000 !important} /* מעל המודאל */
.select2-dropdown{z-index:100001 !important}
.select2-container--default .select2-selection--multiple{
  min-height:44px; border:1px solid var(--dlts-line); border-radius:12px; padding:4px 6px; display:flex; align-items:center; gap:6px
}
.select2-container--default .select2-selection--multiple .select2-selection__choice{
  background:#eef2ff; color:#3730a3; border:1px solid #c7d2fe; border-radius:999px; padding:6px 10px; font-weight:700
}
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove{
  margin-inline-end:6px; color:#6b7280
}
.select2-container--default .select2-selection--multiple .select2-search__field{
  margin-top:7px; font:inherit
}

/* פוטר פעולות דביק בתוך המודאל */
.dlts-actions{
  grid-column:1/-1;
  position:sticky; bottom:0; background:linear-gradient(180deg,rgba(255,255,255,.2),#fff 22px);
  padding-top:8px; margin-top:6px; display:flex; align-items:center; gap:10px; justify-content:flex-start;
  border-top:1px solid var(--dlts-line);
}

/* הודעות הצלחה/שגיאה */
.dlts-msg{font-size:13px}
.dlts-msg.err{color:#e11d48;font-weight:700}
.dlts-msg:not(.err):not(:empty){color:#059669;font-weight:700}

/* כפתורים כלליים במודאל */
.dlts-modal .dlts-btn{
  --btn-shadow:0 2px 10px rgba(16,24,40,.08);
  background:#0ea5e9; color:#fff; border:1px solid #38bdf8;
  padding:10px 16px; border-radius:12px; font-weight:800; cursor:pointer; transition:all .18s ease; line-height:1.1;
  box-shadow:var(--btn-shadow)
}
.dlts-modal .dlts-btn:hover{filter:saturate(1.05) brightness(1.02); transform:translateY(-1px)}
.dlts-modal .dlts-btn.ghost{background:#f8fafc;color:#0f172a;border-color:#e2e8f0;box-shadow:none}
.dlts-modal .dlts-btn.ghost:hover{background:#eef2f7}
.dlts-modal .dlts-btn.outline{background:#fff;color:#0ea5e9;border-color:#bae6fd}
.dlts-modal .dlts-btn.tiny{padding:6px 10px;border-radius:10px;font-weight:700}

/* תוצאות חיפוש אירועים (מודאל יצירת זימון) */
.dlts-box{background:#f9fafb;border:1px dashed var(--dlts-line);border-radius:12px;padding:12px}
.dlts-results{margin-top:8px;display:grid;gap:6px;max-height:220px;overflow:auto}
.res-item{border:1px solid var(--dlts-line);border-radius:10px;padding:10px;cursor:pointer;background:#fff;transition:.14s;outline:0}
.res-item:hover{background:#f3f4f6;transform:translateY(-1px)}
.res-item:focus-visible{box-shadow:0 0 0 3px rgba(147,197,253,.45);border-color:#93c5fd}
.res-item .title{font-weight:800;color:#0f172a}
.res-item .meta{color:var(--dlts-muted);font-size:13px;margin-top:4px}
.res-item .desc{color:#475569;font-size:13px;margin-top:6px;line-height:1.35}
.res-item.selected{border-color:#60a5fa;background:#eff6ff}

/* =========================
   טבלת סידור שבועי
   ========================= */
.dlts-week-table{
  border:1px solid var(--dlts-line);
  border-radius:12px;
  overflow:hidden;
  min-width:960px;
  background:#fff;
}
.dlts-week-head{
  display:grid;
  grid-template-columns:repeat(7,1fr);
  background:#f3f4f6;
}
.dlts-week-head .cell{
  padding:8px 6px;
  font-weight:800;
  text-align:center;
  font-size:13px;
}
.dlts-week-body{
  display:grid;
  grid-template-columns:repeat(7,1fr);
  gap:0;
}
.dlts-week-body .cell{
  border-inline-start:1px solid var(--dlts-line);
  border-top:1px solid var(--dlts-line);
  padding:6px;
  min-width:130px;
  background:#fff;
}

/* מבנה יום + ריווח */
.ws-day{ display:flex; flex-direction:column; gap:8px; }
.ws-rows{ display:flex; flex-direction:column; gap:6px; }

/* שורה/כרטיס קומפקטי */
.ws-row{
  display:grid;
  grid-template-columns:78px 78px minmax(120px,1fr) 32px;
  align-items:center;
  gap:6px;
  margin:0;
  padding:6px 8px;
  border:1px solid var(--dlts-line);
  border-radius:10px;
  background:#fcfdff;
  box-shadow:0 1px 3px rgba(16,24,40,.06);
}
.ws-row:hover{ border-color:#cbd5e1; background:#ffffff; }

/* שדות קטנים בתוך השורה */
.ws-row input[type="time"],
.ws-row input[type="text"],
.ws-row textarea,
.ws-row input[type="color"]{
  padding:6px 8px;
  font-size:13px;
  border-radius:10px;
  box-shadow:0 1px 2px rgba(16,24,40,.03) inset;
}
.ws-row input.ws-start,
.ws-row input.ws-end{ text-align:center; height:34px; }
.ws-row input.ws-title{ height:34px; }
.ws-row input.ws-color{ height:32px; padding:0; }

.ws-row textarea{
  grid-column:1/-1;
  min-height:36px;
  max-height:120px;
  line-height:1.25;
  resize:vertical;
}

/* כפתור מחיקה קטן */
.dlts-icon-mini{
  width:26px; height:26px;
  border-radius:8px; border:1px solid var(--dlts-line);
  background:#fff; cursor:pointer;
}
.dlts-icon-mini:hover{ background:#f3f4f6 }

/* כפתור הוספת שורה */
.ws-add-row{ margin-top:6px }

/* ===== Weekly: compact display cards (read-only items) inside the grid ===== */
#ws-cells .ws-rows > .ws-card,
#ws-cells .ws-rows > .ws-item,
#ws-cells .ws-rows > .ws-view,
#ws-cells .ws-rows > .ws-event,
#ws-cells .ws-rows > div:not(.ws-row){
  display:flex;
  flex-direction:column;
  gap:6px;
  padding:8px 10px;
  border:1px solid var(--dlts-line);
  border-radius:12px;
  background:#fff;
  box-shadow:0 1px 3px rgba(16,24,40,.06);
  border-inline-start:3px solid var(--ws-color, #3DC1BC);
}
#ws-cells .ws-rows > div:not(.ws-row) .title,
#ws-cells .ws-rows > div:not(.ws-row) .ws-title{
  font-weight:800;
  font-size:13px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  color:#0f172a;
}
#ws-cells .ws-rows > div:not(.ws-row) .meta,
#ws-cells .ws-rows > div:not(.ws-row) .time,
#ws-cells .ws-rows > div:not(.ws-row) .ws-time{
  font-size:12px;
  color:#334155;
  font-variant-numeric:tabular-nums;
  display:flex;
  align-items:center;
  gap:6px;
}
#ws-cells .ws-rows > div:not(.ws-row) .desc,
#ws-cells .ws-rows > div:not(.ws-row) .ws-desc,
#ws-cells .ws-rows > div:not(.ws-row) p + p,
#ws-cells .ws-rows > div:not(.ws-row) ul,
#ws-cells .ws-rows > div:not(.ws-row) ol{
  display:none !important;
}
#ws-cells .ws-rows > div:not(.ws-row) .actions,
#ws-cells .ws-rows > div:not(.ws-row) .ws-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin-top:2px;
}
#ws-cells .ws-rows > div:not(.ws-row) .pill,
#ws-cells .ws-rows > div:not(.ws-row) .chip,
#ws-cells .ws-rows > div:not(.ws-row) .ws-chip,
#ws-cells .ws-rows > div:not(.ws-row) .action,
#ws-cells .ws-rows > div:not(.ws-row) button{
  padding:5px 9px;
  border-radius:999px;
  border:1px solid #dbeafe;
  background:#eff6ff;
  color:#1e40af;
  font-size:12px;
  font-weight:700;
  line-height:1;
  cursor:pointer;
}
#ws-cells .ws-rows > div:not(.ws-row) .danger{
  background:#fef2f2; border-color:#fecaca; color:#b91c1c;
}
#ws-cells .ws-rows > div:not(.ws-row):hover{
  border-color:#cbd5e1;
  box-shadow:0 2px 8px rgba(16,24,40,.08);
}

/* =========================
   קלנדרים של המנהל
   ========================= */
#ws-live-calendar,
#admin-view-calendar{
  min-height:520px;background:#fff;border:1px solid var(--dlts-line);
  border-radius:16px;padding:10px;box-shadow:var(--dlts-shadow)
}

/* =========================
   טבלת היעדרויות – עיצוב מודרני
   ========================= */

/* מעטפת הטבלה (אם קיימת) */
.dlts-table-wrap{
  border:1px solid var(--dlts-line);
  border-radius:16px;
  background:#fff;
  overflow:auto;
  box-shadow:0 10px 25px rgba(16,24,40,.04);
}

/* טבלה */
.dlts-table{
  width:100%;
  border-collapse:separate;
  border-spacing:0;
  direction:rtl;
  background:#fff;
  font-size:14px;
  line-height:1.45;
  border-radius:16px;
  overflow:hidden;
}

.dlts-table thead th{
  position:sticky; top:0; z-index:1;
  background:linear-gradient(180deg,#f7f8fa,#eef1f4);
  border-bottom:1px solid var(--dlts-line);
  font-weight:800; text-align:right; padding:12px 14px;
  color:#0f172a;
}

.dlts-table th,.dlts-table td{
  border-bottom:1px solid var(--dlts-line);
  padding:12px 14px; text-align:right; vertical-align:top;
}

.dlts-table tbody tr:nth-child(even){ background:#fafbfc }
.dlts-table tbody tr:hover{ background:#f6f8fb }

.dlts-table .leave-reason{ white-space:normal; word-break:break-word }
.dlts-table .muted{ color:var(--dlts-muted) }

.leave-status{ font-weight:700; text-transform:none; }

/* תגיות סטטוס/סוג */
.status-badge,
.type-badge{
  display:inline-flex; align-items:center; gap:6px;
  padding:6px 10px; border-radius:999px;
  font-weight:700; font-size:12px; line-height:1;
  border:1px solid transparent;
}

/* סטטוסים */
.status-pending{  background:#fff7ed; color:#b45309; border-color:#fed7aa; }
.status-approved{ background:#ecfdf5; color:#047857; border-color:#a7f3d0; }
.status-denied{   background:#fef2f2; color:#b91c1c; border-color:#fecaca; }
.status-canceled{ background:#f8fafc; color:#334155; border-color:#e2e8f0; }

/* סוגים */
.type-leave,.type-vacation{    background:#eef4ff; color:#1d4ed8; border-color:#c7d2fe; }
.type-sick{                    background:#f5f3ff; color:#6d28d9; border-color:#ddd6fe; }
.type-treatment{               background:#fff7ed; color:#9a3412; border-color:#fed7aa; }
.type-other{                   background:#f1f5f9; color:#475569; border-color:#e2e8f0; }

/* פעולות (כפתורי סטטוס) */
.leave-actions{ display:flex; gap:8px; align-items:center; white-space:nowrap }
.dlts-leave-status{
  --btn-shadow:0 1px 2px rgba(16,24,40,.06);
  border:1px solid var(--dlts-line);
  background:#fff; color:#0f172a;
  padding:8px 12px; border-radius:12px; font-size:13px;
  cursor:pointer; transition:all .18s ease; line-height:1; box-shadow:var(--btn-shadow);
}
.dlts-leave-status:hover{ transform:translateY(-1px); box-shadow:0 3px 10px rgba(16,24,40,.10) }
.dlts-leave-status:disabled{ opacity:.6; cursor:not-allowed }

/* צבעי גבול/טיפוגרפיה לפי יעד */
.dlts-leave-status[data-status="approved"]{  border-color:#10b981; color:#0f9f75 }
.dlts-leave-status[data-status="denied"]{    border-color:#ef4444; color:#d83434 }
.dlts-leave-status[data-status="canceled"]{  border-color:#f59e0b; color:#b87407 }

/* מצב נבחר — כפתור מלא בצבע */
.dlts-leave-status.is-active[data-status="approved"]{ background:#10b981; color:#fff; border-color:#10b981 }
.dlts-leave-status.is-active[data-status="denied"]{   background:#ef4444; color:#fff; border-color:#ef4444 }
.dlts-leave-status.is-active[data-status="canceled"]{ background:#f59e0b; color:#fff; border-color:#f59e0b }

/* --- תיקון הובר --- */
.dlts-leave-status:hover,
.dlts-leave-status:focus-visible{
  background:#fff !important;
  color:inherit !important;
}
.dlts-leave-status[data-status="approved"]:hover,
.dlts-leave-status[data-status="approved"]:focus-visible{
  background:#ecfdf5 !important; color:#047857 !important; border-color:#a7f3d0;
}
.dlts-leave-status[data-status="denied"]:hover,
.dlts-leave-status[data-status="denied"]:focus-visible{
  background:#fef2f2 !important; color:#b91c1c !important; border-color:#fecaca;
}
.dlts-leave-status[data-status="canceled"]:hover,
.dlts-leave-status[data-status="canceled"]:focus-visible{
  background:#fff7ed !important; color:#9a3412 !important; border-color:#fed7aa;
}

/* הודעות מתחת לטבלה */
#dlts-leave-msg{ font-size:13px; margin-top:8px }
#dlts-leave-msg.err{ color:#e11d48 }

/* שדות מסננים */
#dlts-leave-search,
#dlts-leave-filter-status{
  appearance:none;
  padding:10px 12px;
  border:1px solid var(--dlts-line);
  border-radius:12px;
  background:#fff;
  box-shadow:0 1px 2px rgba(16,24,40,.04) inset;
  min-width:220px;
}
#dlts-leave-filter-status{ min-width:180px }
#dlts-leave-search::placeholder{ color:#94a3b8 }

/* =========================
   Hero Actions – כפתורי פעולה עליונים
   ========================= */
.dlts-hero-actions.center{
  display:flex; justify-content:center; align-items:center;
  gap:14px; flex-wrap:wrap; padding:18px 8px;
}

/* כפתורי Hero */
.dlts-hero-actions.center .dlts-btn{
  --btn-shadow:0 6px 18px rgba(2, 132, 199, .15);
  display:inline-flex; align-items:center; justify-content:center;
  padding:14px 22px; border-radius:14px; font-weight:800;
  letter-spacing:.2px; transition:all .2s ease; line-height:1.1;
  border:1px solid transparent;
}
.dlts-hero-actions.center .dlts-btn.lg{ font-size:16px }

.dlts-hero-actions.center .dlts-btn.primary{
  background:linear-gradient(135deg,#2563eb,#0ea5e9);
  color:#fff; box-shadow:var(--btn-shadow);
}
.dlts-hero-actions.center .dlts-btn.primary:hover{
  filter:saturate(1.05) brightness(1.02); transform:translateY(-1px);
}

.dlts-hero-actions.center .dlts-btn.outline{
  background:#fff; color:#0ea5e9; border-color:#bae6fd;
}
.dlts-hero-actions.center .dlts-btn.outline:hover{
  background:#f0f9ff; transform:translateY(-1px);
}

.dlts-hero-actions.center .dlts-btn.ghost{
  background:#f8fafc; color:#0f172a; border-color:#e2e8f0;
}
.dlts-hero-actions.center .dlts-btn.ghost:hover{
  background:#eef2f7; transform:translateY(-1px);
}

/* Utility */
.muted{ color:var(--dlts-muted) }

/* =========================
   רספונסיביות
   ========================= */
@media (max-width: 920px){
  .dlts-grid > div:not(.dlts-actions):not(.dlts-box){grid-column:1/-1}
  .dlts-modal-head{padding:8px 44px}
  .dlts-modal-dialog{padding:12px}
}
