:root {
  --ws-bg: #f5f6f4;
  --ws-surface: #ffffff;
  --ws-surface-2: #f5f6f4;
  /* Landing demó / Beosztás – papír + kék */
  --ws-border: rgba(18, 20, 26, 0.1);
  --ws-border-strong: rgba(18, 20, 26, 0.16);
  --ws-text: #12141a;
  --ws-text-soft: #3a3f4b;
  --ws-text-muted: #5c6470;
  --ws-primary: #2563eb;
  --ws-primary-soft: rgba(37, 99, 235, 0.12);
  --ws-indigo-soft: #eff6ff;
  --ws-panel-bg: #ffffff;
  --ws-panel-border: rgba(18, 20, 26, 0.1);
  --ws-panel-shadow: 0 1px 0 rgba(18, 20, 26, 0.04), 0 8px 24px rgba(18, 20, 26, 0.06);
  --ws-amber-soft: #fff7e6;
  --ws-rose-soft: #fff0f1;
  --ws-success-soft: #ecfdf5;
  --ws-warning: #d97706;
  --ws-danger: #dc2626;
  --ws-shadow: 0 12px 28px rgba(18, 20, 26, 0.08);
  --ws-radius-lg: 24px;
  --ws-radius-md: 18px;
  --ws-radius-sm: 12px;
}

body.work-schedule-redesign-page,
#naptar-demo.work-schedule-redesign-page {
  background: #f5f6f4;
}

/* Főoldal (/work_schedule): ugyanaz a theme-saas háttér mint a /planzee nél */
body.work-schedule-redesign-page.planzee-page,
#naptar-demo.work-schedule-redesign-page.planzee-page {
  background: transparent;
}

/* Theme-saas: .layout-main felső margó (a planzee_filter 20px felülírása a munkaterv nézeteken) */
body.theme-saas.work-schedule-redesign-page .layout-main {
  margin-top: 16px;
}

/* Alcím oldalak: navbar ↔ fejléc távolság mint /profil */
body.theme-saas.work-schedule-redesign-page.ws-worksheets-hub .layout-main,
body.theme-saas.work-schedule-redesign-page.ws-edit-page .layout-main {
  margin-top: 0;
}

body.ws-worksheets-hub .container-page.work-schedule-page.ws-subpage.ws-worksheets-page,
body.ws-edit-page .container-page.work-schedule-page.ws-subpage.ws-edit-page {
  margin-top: 0;
}

body.ws-edit-page .container-page.work-schedule-page.ws-subpage.ws-edit-page,
.work-schedule-page.ws-subpage.ws-edit-page.container-page {
  width: min(1200px, calc(100% - 24px));
  max-width: 1200px;
}

@media (min-width: 1224px) {
  body.ws-edit-page .container-page.work-schedule-page.ws-subpage.ws-edit-page,
  .work-schedule-page.ws-subpage.ws-edit-page.container-page {
    width: 1200px;
    max-width: 1200px;
  }
}

.work-schedule-page.ws-subpage.ws-worksheets-page .glass-panel.ws-import-header.app-page-header,
.work-schedule-page.ws-subpage.ws-edit-page .glass-panel.ws-edit-header.app-page-header {
  padding: 0.9rem 1rem !important;
  margin-top: 0;
}

/* ========== /attendance-szerű fejléc (glass-panel) ========== */
body.planzee-page.work-schedule-redesign-page .ws-page-header,
#naptar-demo.planzee-page.work-schedule-redesign-page .ws-page-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem 1rem;
  flex-wrap: wrap;
  padding: 0.85rem 1rem;
  margin: 0;
  border-radius: 16px;
  border: 1px solid var(--ws-panel-border);
  background: #ffffff;
  box-shadow: var(--ws-panel-shadow);
}

/*
 * work_schedule.css: .glass-panel { padding: 8px 12px !important; } – enélkül a fejléc padding/igazítás nem érvényesül.
 */
body.planzee-page.work-schedule-redesign-page .glass-panel.ws-page-header,
#naptar-demo.planzee-page.work-schedule-redesign-page .glass-panel.ws-page-header {
  padding: 0.85rem 1rem !important;
  overflow: visible;
  box-sizing: border-box;
}

body.planzee-page.work-schedule-redesign-page .ws-page-header-main,
#naptar-demo.planzee-page.work-schedule-redesign-page .ws-page-header-main {
  min-width: 0;
  flex: 1 1 auto;
}

body.planzee-page.work-schedule-redesign-page .ws-page-title-row,
#naptar-demo.planzee-page.work-schedule-redesign-page .ws-page-title-row {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.55rem 0.75rem;
  margin: 0;
  width: 100%;
}

body.planzee-page.work-schedule-redesign-page .ws-page-hero-icon,
#naptar-demo.planzee-page.work-schedule-redesign-page .ws-page-hero-icon {
  width: 2.65rem;
  height: 2.65rem;
  border-radius: 0.5rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  /* Beosztás / landing demó – kék átmenet */
  background: linear-gradient(145deg, #93c5fd 0%, #3b82f6 48%, #1d4ed8 100%);
  color: #fff;
  box-shadow:
    0 1px 2px rgba(18, 20, 26, 0.1),
    0 2px 8px rgba(37, 99, 235, 0.28);
  flex-shrink: 0;
}

body.planzee-page.work-schedule-redesign-page .ws-page-title-wrap,
#naptar-demo.planzee-page.work-schedule-redesign-page .ws-page-title-wrap {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.15rem;
  min-width: 0;
}

body.planzee-page.work-schedule-redesign-page .ws-page-title-label,
#naptar-demo.planzee-page.work-schedule-redesign-page .ws-page-title-label {
  font-size: 0.72rem;
  font-weight: 700;
  color: #64748b;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

body.planzee-page.work-schedule-redesign-page .ws-page-heading,
#naptar-demo.planzee-page.work-schedule-redesign-page .ws-page-heading {
  margin: 0;
  font-size: clamp(1rem, 2vw, 1.15rem);
  font-weight: 700;
  letter-spacing: -0.02em;
  color: #12141a;
}

body.planzee-page.work-schedule-redesign-page .ws-page-subtitle,
#naptar-demo.planzee-page.work-schedule-redesign-page .ws-page-subtitle {
  margin: 0;
  font-size: 0.82rem;
  color: #64748b;
}

body.planzee-page.work-schedule-redesign-page .ws-page-header-actions,
#naptar-demo.planzee-page.work-schedule-redesign-page .ws-page-header-actions {
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-left: auto;
}

body.planzee-page.work-schedule-redesign-page .ws-page-header-actions .glass-btn.btn-back,
#naptar-demo.planzee-page.work-schedule-redesign-page .ws-page-header-actions .glass-btn.btn-back,
body.planzee-page.work-schedule-redesign-page .ws-page-header__back-in-title.glass-btn.btn-back,
#naptar-demo.planzee-page.work-schedule-redesign-page .ws-page-header__back-in-title.glass-btn.btn-back {
  border: 1px solid var(--ws-panel-border);
  border-radius: 10px;
  background: #ffffff;
  min-height: 2.25rem !important;
  height: auto !important;
  box-sizing: border-box !important;
}

body.planzee-page.work-schedule-redesign-page .ws-page-header-actions .glass-btn.btn-back:hover,
#naptar-demo.planzee-page.work-schedule-redesign-page .ws-page-header-actions .glass-btn.btn-back:hover,
body.planzee-page.work-schedule-redesign-page .ws-page-header__back-in-title.glass-btn.btn-back:hover,
#naptar-demo.planzee-page.work-schedule-redesign-page .ws-page-header__back-in-title.glass-btn.btn-back:hover {
  background: rgba(255, 255, 255, 0.95);
}

/* Asztalon csak a jobb oldali sávban lévő Vissza látszik; mobilon a címsorban (+ és Vissza egy csoportban) */
body.planzee-page.work-schedule-redesign-page .ws-page-title-row__trail,
#naptar-demo.planzee-page.work-schedule-redesign-page .ws-page-title-row__trail {
  display: none;
}

body.planzee-page.work-schedule-redesign-page .ws-page-header__back-in-title,
#naptar-demo.planzee-page.work-schedule-redesign-page .ws-page-header__back-in-title {
  display: none;
}

body.planzee-page.work-schedule-redesign-page .ws-page-header__new-task-icon,
#naptar-demo.planzee-page.work-schedule-redesign-page .ws-page-header__new-task-icon {
  display: none;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  font: inherit;
  cursor: pointer;
  border: 1px solid var(--ws-panel-border);
  border-radius: 10px;
  background: #ffffff;
  color: #0f172a;
  box-shadow: var(--ws-panel-shadow);
}

body.planzee-page.work-schedule-redesign-page .ws-page-header__new-task-icon:hover,
#naptar-demo.planzee-page.work-schedule-redesign-page .ws-page-header__new-task-icon:hover {
  background: #f8fafc;
  border-color: #cbd5e1;
}

body.planzee-page.work-schedule-redesign-page .ws-page-header__new-task-icon:focus-visible,
#naptar-demo.planzee-page.work-schedule-redesign-page .ws-page-header__new-task-icon:focus-visible {
  outline: 2px solid rgba(100, 116, 139, 0.45);
  outline-offset: 2px;
}

body.planzee-page.work-schedule-redesign-page .ws-page-header__new-task-icon-svg,
#naptar-demo.planzee-page.work-schedule-redesign-page .ws-page-header__new-task-icon-svg {
  width: 1.1rem;
  height: 1.1rem;
  display: block;
}

/* Tartalom padding – mint az attendance-content */
.ws-page-inner {
  padding: 10px 0.5rem 10px;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
  width: 100%;
}

@media (min-width: 640px) {
  .ws-page-inner {
    padding-left: 0.75rem;
    padding-right: 0.75rem;
  }
}

/* Oszlopszélességek: ugyanaz, mint a régi ws-shell-layout + container-page (ne planzee 800/400) */
.work-schedule-page.ws-shell-page.container-page {
  width: min(1250px, calc(100% - 40px));
  max-width: 1250px;
  margin: 0 auto 28px;
  padding: 0;
  box-sizing: border-box;
}

@media (min-width: 1024px) {
  /*
   * planzee_filter: .planzee-layout { width: fit-content } → a rács nem nyílik ki, a bal oszlop keskeny marad.
   * Jobb oldal fix 300px + 16px rés; bal: a maradék teljes szélesség (nem 1000px plafon).
   * Három gyerek: fejléc (1. sor), fő tartalom (2. sor), oldalsáv (jobbra, 1–2. sor).
   */
  .planzee-layout.ws-work-schedule-layout {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    grid-template-columns: minmax(0, 1fr) 300px;
    grid-template-rows: auto 1fr;
    gap: 16px;
    align-items: start;
    justify-content: stretch;
  }

  body.planzee-page.work-schedule-redesign-page .ws-work-schedule-page-header,
  #naptar-demo.planzee-page.work-schedule-redesign-page .ws-work-schedule-page-header {
    grid-column: 1;
    grid-row: 1;
    min-width: 0;
  }

  .planzee-layout.ws-work-schedule-layout .planzee-main {
    grid-column: 1;
    grid-row: 2;
    width: 100%;
    max-width: none;
    min-width: 0;
  }

  /* planzee_filter alapból 400px oldalsáv – a munkatervnél marad a korábbi 300px */
  .planzee-layout.ws-work-schedule-layout .planzee-sidebar {
    grid-column: 2;
    grid-row: 1 / -1;
    width: 300px;
    min-width: 300px;
    max-width: 300px;
  }
}

/* Mobil / tablet: heti nézet + dock ugyanolyan széles, mint a fő tartalom; külön panelek (planzee_filter: calc(100% - 1rem) + középre igazítás felülírása) */
@media (max-width: 1023px) {
  body.work-schedule-redesign-page.planzee-page .page-content.planzee-weekly-page,
  #naptar-demo.work-schedule-redesign-page.planzee-page .page-content.planzee-weekly-page {
    align-items: stretch;
  }

  body.work-schedule-redesign-page.planzee-page .planzee-layout.ws-work-schedule-layout,
  #naptar-demo.work-schedule-redesign-page.planzee-page .planzee-layout.ws-work-schedule-layout {
    width: 100%;
    max-width: 100%;
    grid-template-columns: 1fr;
    grid-template-rows: auto auto minmax(0, 1fr);
  }

  /* Fejléc grid wrapper: ws_page_header_mobile.css */

  body.work-schedule-redesign-page.planzee-page .planzee-layout.ws-work-schedule-layout .planzee-sidebar,
  #naptar-demo.work-schedule-redesign-page.planzee-page .planzee-layout.ws-work-schedule-layout .planzee-sidebar {
    grid-column: 1;
    grid-row: 2;
    order: 0;
  }

  body.work-schedule-redesign-page.planzee-page .planzee-layout.ws-work-schedule-layout .planzee-main,
  #naptar-demo.work-schedule-redesign-page.planzee-page .planzee-layout.ws-work-schedule-layout .planzee-main {
    grid-column: 1;
    grid-row: 3;
    order: 0;
  }

  body.work-schedule-redesign-page.planzee-page .planzee-weekly-page .planzee-sidebar .planzee-week-toolbar,
  #naptar-demo.work-schedule-redesign-page.planzee-page .planzee-weekly-page .planzee-sidebar .planzee-week-toolbar {
    width: 100%;
    max-width: 100%;
    margin-left: 0;
    margin-right: 0;
  }

  /* Külső toolbar átlátszó: a sorok kapják a régi ws-shell kártya stílust (nem keskeny „sáv”) */
  body.work-schedule-redesign-page.planzee-page .planzee-sidebar .planzee-week-toolbar.planzee-dock--weekly-with-filters,
  #naptar-demo.work-schedule-redesign-page.planzee-page .planzee-sidebar .planzee-week-toolbar.planzee-dock--weekly-with-filters {
    border: none;
    box-shadow: none;
    background: transparent;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    padding: 0;
    gap: 0.75rem;
  }

  body.work-schedule-redesign-page.planzee-page .planzee-sidebar .planzee-week-toolbar.planzee-dock--weekly-with-filters > .planzee-dock__group,
  #naptar-demo.work-schedule-redesign-page.planzee-page .planzee-sidebar .planzee-week-toolbar.planzee-dock--weekly-with-filters > .planzee-dock__group {
    border-radius: var(--ws-filter-radius);
    border: 1px solid var(--ws-panel-border);
    background: rgba(255, 255, 255, 0.96);
    padding: 0.65rem;
    box-shadow: var(--ws-panel-shadow);
    box-sizing: border-box;
    min-width: 0;
  }

  /* A hét összefoglaló kártya: egy külső panel van, ne duplázzuk a keretet */
  body.work-schedule-redesign-page.planzee-page .planzee-dock__group .ws-shell-week-card,
  #naptar-demo.work-schedule-redesign-page.planzee-page .planzee-dock__group .ws-shell-week-card {
    border: none;
    box-shadow: none;
    background: #f8fafc;
  }

}

.planzee-main > .ws-main-stack {
  flex: 1 1 auto;
  min-width: 0;
  width: 100%;
  align-self: stretch;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

/* Bal oszlop: ne legyen dupla „kártya” a fejléc körül – a csoportpanelek maradnak kártyák */
body.planzee-page.work-schedule-redesign-page .planzee-main .ws-shell-main,
#naptar-demo.planzee-page.work-schedule-redesign-page .planzee-main .ws-shell-main {
  width: 100%;
  border: none;
  background: transparent;
  box-shadow: none;
  padding: 0;
  gap: 0.75rem;
}

/* Dockban a régi ws-shell-sidebar-block ne duplázza a planzee panel szegélyét */
body.work-schedule-redesign-page .planzee-dock__group > .ws-shell-sidebar-block,
#naptar-demo.work-schedule-redesign-page .planzee-dock__group > .ws-shell-sidebar-block {
  border: none;
  box-shadow: none;
  background: transparent;
  padding: 0;
}

body.work-schedule-redesign-page .planzee-dock__group .ws-shell-week-card,
#naptar-demo.work-schedule-redesign-page .planzee-dock__group .ws-shell-week-card {
  background: rgba(255, 255, 255, 0.95);
}

/*
 * Ugyanaz a függőleges flex mint a planzee/index.blade.php nél (Tailwind utility itt nincs betöltve).
 * A footer.css .page-wrapper flex:1 szabálya így érvényesül.
 */
body.planzee-page.work-schedule-redesign-page .layout-main__content > .page-wrapper,
#naptar-demo.planzee-page.work-schedule-redesign-page .layout-main__content > .page-wrapper {
  display: flex;
  flex-direction: column;
  width: 100%;
}

body.planzee-page.work-schedule-redesign-page .page-wrapper > .page-content.planzee-weekly-page,
#naptar-demo.planzee-page.work-schedule-redesign-page .page-wrapper > .page-content.planzee-weekly-page {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  min-width: 0;
}

.work-schedule-redesign-page {
  /* Planzee – primér kék CTA-hoz; keretek semlegesek */
  --ws-filter-accent: #2563eb;
  --ws-filter-accent-strong: #1d4ed8;
  --ws-filter-border: rgba(18, 20, 26, 0.1);
  --ws-filter-surface: rgba(255, 255, 255, 0.92);
  --ws-filter-surface-strong: rgba(255, 255, 255, 0.98);
  --ws-filter-radius: 0.95rem;
  --ws-filter-radius-btn: 0.85rem;
  --ws-filter-shadow: var(--ws-panel-shadow);
}

/* ========== Sidebar: planzee_filter .planzee-week-toolbar (sticky) ========== */

/* Keresés + gyorsszűrő a „Heti nézet” lenyitható törzsében (mobilon együtt csukódik) */
body.work-schedule-redesign-page .ws-shell-sidebar-block--week .ws-shell-sidebar-block__body > .ws-shell-dock-section,
#naptar-demo.work-schedule-redesign-page .ws-shell-sidebar-block--week .ws-shell-sidebar-block__body > .ws-shell-dock-section {
  display: flex;
  flex-direction: column;
  gap: 0.45rem;
  min-width: 0;
  margin-top: 0.65rem;
  padding-top: 0.65rem;
  border-top: 1px solid rgba(148, 163, 184, 0.28);
}

body.work-schedule-redesign-page .ws-shell-week-card,
#naptar-demo.work-schedule-redesign-page .ws-shell-week-card {
  border-radius: 1rem;
  border: 1px solid var(--ws-panel-border);
  background: #ffffff;
  box-shadow: var(--ws-panel-shadow);
  padding: 0.75rem;
}

body.work-schedule-redesign-page .ws-shell-week-card__title,
#naptar-demo.work-schedule-redesign-page .ws-shell-week-card__title {
  font-size: 0.82rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  font-weight: 700;
  color: #64748b;
}

body.work-schedule-redesign-page .ws-shell-week-card__range,
#naptar-demo.work-schedule-redesign-page .ws-shell-week-card__range {
  margin-top: 0.25rem;
  font-size: 1rem;
  font-weight: 700;
  color: #0f172a;
}

/* Gombok: Planzee-nav jelleg (nem pill) — ne használj font: inherit-et, mert felülírja a .ws-shell-action-link betűket */
body.work-schedule-redesign-page button.ws-shell-action-link,
#naptar-demo.work-schedule-redesign-page button.ws-shell-action-link {
  appearance: none;
  cursor: pointer;
  font-family: inherit;
  text-align: center;
}

/* Kereső: Planzee live-filter input hangulat */
body.work-schedule-redesign-page .ws-shell-search,
#naptar-demo.work-schedule-redesign-page .ws-shell-search {
  width: 100%;
  height: 2.45rem;
  min-height: 2.45rem;
  padding: 0 14px;
  font-size: 14px;
  color: var(--ws-text);
  border-radius: 1rem;
  border: 1px solid rgba(211, 220, 232, 0.95);
  background-color: rgba(255, 255, 255, 0.35);
  box-shadow:
    0 0 0 1px rgba(255, 255, 255, 0.6),
    inset 0 1px 0 rgba(255, 255, 255, 0.6),
    0 6px 20px rgba(15, 23, 42, 0.08);
  outline: none;
}

body.work-schedule-redesign-page .ws-shell-search::placeholder,
#naptar-demo.work-schedule-redesign-page .ws-shell-search::placeholder {
  color: #94a3b8;
}

body.work-schedule-redesign-page .ws-shell-search:focus,
#naptar-demo.work-schedule-redesign-page .ws-shell-search:focus {
  border-color: rgba(59, 130, 246, 0.65);
  box-shadow:
    0 0 0 1px rgba(255, 255, 255, 0.6),
    0 0 0 4px rgba(59, 130, 246, 0.2),
    inset 0 1px 0 rgba(255, 255, 255, 0.6),
    0 6px 20px rgba(15, 23, 42, 0.08);
}

.planzee-layout.ws-work-schedule-layout,
.planzee-layout.ws-work-schedule-layout *,
.ws-shell-main,
.ws-board,
.ws-group-panel,
.ws-group-panel__days-scroll,
.ws-group-panel__days,
.ws-day-column,
.ws-day-column__header,
.ws-day-column__body,
.ws-task-card,
.ws-task-card__summary,
.ws-task-card__footerline,
.ws-task-card__participants-row,
.ws-task-card__participants,
.ws-task-card__actions {
  box-sizing: border-box;
}

.ws-shell-main,
.ws-shell-editor,
.ws-group-panel,
.ws-summary-card,
.ws-board-empty,
.ws-shell-form-panel,
.ws-detail-drawer__panel {
  border: 1px solid var(--ws-panel-border);
  border-radius: 16px;
  box-shadow: var(--ws-panel-shadow);
  background: #ffffff;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

.ws-shell-main {
  background: transparent;
}

.ws-shell-brand {
  display: flex;
  align-items: center;
  gap: 14px;
}

.ws-shell-brand__logo {
  width: 44px;
  height: 44px;
  border-radius: 0.5rem;
  display: grid;
  place-items: center;
  background: linear-gradient(145deg, #93c5fd 0%, #3b82f6 48%, #1d4ed8 100%);
  color: #fff;
  font-weight: 700;
  letter-spacing: 0.04em;
  box-shadow:
    0 1px 2px rgba(18, 20, 26, 0.1),
    0 2px 8px rgba(37, 99, 235, 0.28);
}

.ws-shell-brand__name {
  font-size: 1.1rem;
  font-weight: 700;
  color: var(--ws-text);
}

.ws-shell-brand__meta,
.ws-shell-main-subtitle,
.ws-shell-section-subtitle,
.ws-shell-week-card__range,
.ws-group-panel__meta,
.ws-day-column__meta,
.ws-summary-card__meta,
.ws-day-column__empty,
.ws-board-empty p,
.ws-detail-label,
.ws-detail-note,
.ws-shell-input-label {
  color: var(--ws-text-muted);
}

.ws-shell-sidebar-block {
  display: grid;
  gap: 12px;
}

.work-schedule-redesign-page .ws-shell-sidebar-block {
  border-radius: var(--ws-filter-radius);
  border: 1px solid var(--ws-panel-border);
  background: #ffffff;
  padding: 0.65rem;
  box-shadow: var(--ws-filter-shadow);
  gap: 0.55rem;
}

.work-schedule-redesign-page .ws-shell-sidebar-block__header,
.work-schedule-redesign-page .ws-shell-sidebar-block__body {
  gap: 0.55rem;
}

.ws-shell-sidebar-block__header,
.ws-shell-sidebar-block__body {
  display: grid;
  gap: 12px;
}

.ws-shell-eyebrow {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--ws-text-muted);
}

.work-schedule-redesign-page .ws-shell-eyebrow {
  font-size: 0.72rem;
  letter-spacing: 0.08em;
}

.work-schedule-redesign-page .ws-shell-eyebrow--with-week-icon {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  min-width: 0;
}

.work-schedule-redesign-page .ws-shell-mobile-block-toggle__label {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  min-width: 0;
}

.work-schedule-redesign-page label.planzee-dock__group-label.ws-shell-dock-label--with-search-icon {
  display: flex;
  align-items: center;
  gap: 0.35rem;
}

.work-schedule-redesign-page .ws-shell-dock-label__search-icon {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.05rem;
  height: 1.05rem;
  color: #64748b;
}

.work-schedule-redesign-page .ws-shell-dock-label__search-icon svg {
  width: 100%;
  height: 100%;
}

.work-schedule-redesign-page .ws-shell-dock-label-row--quick-filters {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  margin-bottom: 0.3rem;
}

.work-schedule-redesign-page .ws-shell-dock-label-row--quick-filters .ws-shell-dock-label-row__text {
  margin-bottom: 0;
  flex: 1;
  min-width: 0;
}

.work-schedule-redesign-page .ws-shell-input-label {
  display: block;
  font-size: 0.72rem;
  font-weight: 700;
  color: #475569;
  margin: 0 0 0.3rem;
}

.ws-shell-mobile-block-toggle {
  display: none;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  width: 100%;
  min-height: 42px;
  padding: 0 14px;
  border-radius: 14px;
  border: 1px solid var(--ws-border-strong);
  background: var(--ws-surface);
  color: var(--ws-text);
  font-size: 14px;
  font-weight: 700;
  text-align: left;
}

.work-schedule-redesign-page .ws-shell-mobile-block-toggle {
  min-height: 40px;
  border-radius: var(--ws-filter-radius-btn);
  border: 1px solid var(--ws-panel-border);
  background: var(--ws-filter-surface-strong);
  color: var(--ws-filter-accent-strong);
}

.ws-shell-mobile-block-toggle__icon {
  font-size: 18px;
  line-height: 1;
  color: var(--ws-text-soft);
}

.ws-shell-week-card {
  padding: 16px;
  border-radius: var(--ws-radius-md);
  background: #ffffff;
  border: 1px solid var(--ws-panel-border);
  box-shadow: var(--ws-panel-shadow);
}

.ws-shell-week-card__title,
.ws-shell-main-title,
.ws-shell-section-title,
.ws-group-panel__title {
  color: var(--ws-text);
  font-weight: 700;
}

.ws-shell-week-card__title {
  font-size: 1rem;
}

.ws-shell-week-switch,
.ws-shell-quick-actions,
.ws-shell-filter-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

body.work-schedule-redesign-page .ws-shell-week-switch,
#naptar-demo.work-schedule-redesign-page .ws-shell-week-switch {
  display: flex;
  flex-direction: column;
  gap: 10px;
  width: 100%;
}

body.work-schedule-redesign-page .ws-shell-week-switch__row,
#naptar-demo.work-schedule-redesign-page .ws-shell-week-switch__row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  width: 100%;
}

body.work-schedule-redesign-page .ws-shell-week-switch__row--full,
#naptar-demo.work-schedule-redesign-page .ws-shell-week-switch__row--full {
  grid-template-columns: 1fr;
}

body.work-schedule-redesign-page .ws-shell-week-switch__row .ws-shell-week-link,
#naptar-demo.work-schedule-redesign-page .ws-shell-week-switch__row .ws-shell-week-link {
  width: 100%;
  font-size: 0.82rem;
  white-space: nowrap;
}

body.work-schedule-redesign-page .ws-shell-filter-chips,
#naptar-demo.work-schedule-redesign-page .ws-shell-filter-chips {
  justify-content: center;
}

body.work-schedule-redesign-page .ws-shell-week-link,
#naptar-demo.work-schedule-redesign-page .ws-shell-week-link,
body.work-schedule-redesign-page .ws-shell-action-link,
#naptar-demo.work-schedule-redesign-page .ws-shell-action-link,
body.work-schedule-redesign-page .ws-shell-filter-chip,
#naptar-demo.work-schedule-redesign-page .ws-shell-filter-chip,
body.work-schedule-redesign-page .ws-shell-toggle,
#naptar-demo.work-schedule-redesign-page .ws-shell-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.25rem;
  padding: 0.35rem 0.65rem;
  border-radius: 10px;
  border: 1px solid var(--ws-panel-border);
  background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
  color: #0f172a;
  text-decoration: none;
  font-size: 0.8125rem;
  font-weight: 600;
  letter-spacing: 0.01em;
  line-height: 1.25;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.05);
  transition: background-color 0.16s ease, color 0.16s ease, border-color 0.16s ease, box-shadow 0.16s ease, transform 0.16s ease;
}

body.work-schedule-redesign-page .ws-shell-action-link__icon,
#naptar-demo.work-schedule-redesign-page .ws-shell-action-link__icon {
  width: 14px;
  height: 14px;
  display: inline-block;
  flex: 0 0 auto;
  margin-right: 5px;
}

body.work-schedule-redesign-page .ws-shell-week-link:hover,
#naptar-demo.work-schedule-redesign-page .ws-shell-week-link:hover,
body.work-schedule-redesign-page .ws-shell-action-link:hover,
#naptar-demo.work-schedule-redesign-page .ws-shell-action-link:hover,
body.work-schedule-redesign-page .ws-shell-filter-chip:hover,
#naptar-demo.work-schedule-redesign-page .ws-shell-filter-chip:hover,
body.work-schedule-redesign-page .ws-shell-toggle:hover,
#naptar-demo.work-schedule-redesign-page .ws-shell-toggle:hover {
  border-color: #cbd5e1;
  color: #0f172a;
  box-shadow: 0 4px 12px rgba(15, 23, 42, 0.08);
  transform: translateY(-0.5px);
}

body.work-schedule-redesign-page .ws-shell-week-link.is-active,
#naptar-demo.work-schedule-redesign-page .ws-shell-week-link.is-active,
body.work-schedule-redesign-page .ws-shell-filter-chip.is-active,
#naptar-demo.work-schedule-redesign-page .ws-shell-filter-chip.is-active {
  background: rgba(239, 246, 255, 0.95);
  border-color: rgba(59, 130, 246, 0.35);
  color: #1e40af;
}

body.work-schedule-redesign-page .ws-shell-action-link--primary,
#naptar-demo.work-schedule-redesign-page .ws-shell-action-link--primary,
body.work-schedule-redesign-page .ws-shell-toggle,
#naptar-demo.work-schedule-redesign-page .ws-shell-toggle {
  background: linear-gradient(180deg, rgba(59, 130, 246, 0.92), rgba(37, 99, 235, 0.92));
  border-color: #1d4ed8;
  color: #fff;
}

body.work-schedule-redesign-page .ws-shell-action-link--danger,
#naptar-demo.work-schedule-redesign-page .ws-shell-action-link--danger {
  color: #fff;
  background: linear-gradient(180deg, #ef4444, #dc2626);
  border-color: #b91c1c;
}

body.work-schedule-redesign-page .ws-shell-action-link--primary:hover,
#naptar-demo.work-schedule-redesign-page .ws-shell-action-link--primary:hover,
body.work-schedule-redesign-page .ws-shell-toggle:hover,
#naptar-demo.work-schedule-redesign-page .ws-shell-toggle:hover {
  color: #fff;
  border-color: #1d4ed8;
  background: linear-gradient(180deg, rgba(59, 130, 246, 0.95), rgba(37, 99, 235, 0.95));
  filter: brightness(1.02);
  box-shadow: 0 4px 14px rgba(37, 99, 235, 0.22);
}

.ws-shell-toggle .ws-shell-toggle__close {
  display: none;
}

.ws-shell-group-option,
.ws-detail-value,
.ws-detail-note {
  font-size: 14px;
}

/* Új feladat modál */
.ws-task-modal {
  width: 100vw;
  max-width: 100vw;
  height: 100vh;
  max-height: 100vh;
  margin: 0;
  padding: 0;
  border: none;
  background: transparent;
  /* visible: TomSelect legördülő ne vágódjon le (dropdownParent: dialog) */
  overflow: visible;
  position: relative;
}

.ws-task-modal::backdrop {
  background: rgba(15, 23, 42, 0.42);
}

.ws-task-modal__shell {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: min(24px, 4vw);
  box-sizing: border-box;
}

.ws-task-modal__scrim {
  position: absolute;
  inset: 0;
  cursor: pointer;
  background: transparent;
}

.ws-task-modal__panel {
  position: relative;
  z-index: 1;
  width: min(720px, 100%);
  max-height: min(92vh, 900px);
  display: flex;
  flex-direction: column;
  border-radius: 16px;
  border: 1px solid var(--ws-panel-border);
  background: var(--ws-panel-bg, #fff);
  box-shadow: var(--ws-panel-shadow, 0 24px 48px rgba(15, 23, 42, 0.18));
  /* visible: résztvevő TomSelect legördülő ne vágódjon le (wrapper alatti absolute pozíció) */
  overflow: visible;
}

.ws-task-modal__header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  padding: 16px 18px 12px;
  border-bottom: 1px solid rgba(148, 163, 184, 0.35);
  flex-shrink: 0;
}

.ws-task-modal__title {
  margin: 0;
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 1.15rem;
  font-weight: 700;
  color: var(--ws-text);
}

.ws-task-modal__title-icon {
  flex-shrink: 0;
  width: 1.25rem;
  height: 1.25rem;
  color: #2563eb;
  opacity: 0.95;
}

.ws-task-modal__title-text {
  min-width: 0;
}

.ws-task-modal__subtitle {
  margin: 6px 0 0;
  font-size: 0.88rem;
  line-height: 1.35;
  color: var(--ws-text-muted);
}

.ws-task-modal__close {
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  display: grid;
  place-items: center;
  margin: -6px -6px 0 0;
  border: none;
  border-radius: 12px;
  background: rgba(148, 163, 184, 0.14);
  color: var(--ws-text);
  font-size: 1.5rem;
  line-height: 1;
  cursor: pointer;
  transition: background 0.15s ease;
}

.ws-task-modal__close:hover {
  background: rgba(148, 163, 184, 0.28);
}

.ws-task-modal__header-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-shrink: 0;
}

.ws-task-modal__header-actions .ws-task-modal__close {
  margin: 0;
  width: 40px;
  height: 40px;
}

.ws-task-modal__header-week {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 40px;
  padding: 4px 6px 4px 10px;
  border-radius: 12px;
  border: 1px solid rgba(226, 232, 240, 0.95);
  background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}

.ws-task-modal__header-week-label {
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #64748b;
  white-space: nowrap;
}

.ws-task-modal__header-week-pills {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  padding: 2px;
  border-radius: 10px;
  background: rgba(226, 232, 240, 0.65);
}

.ws-task-modal__header-week-pills .ws-task-modal__week-option span {
  min-height: 1.875rem;
  padding: 0.3rem 0.65rem;
  border-radius: 8px;
  border: none;
  background: transparent;
  color: #475569;
  font-size: 0.75rem;
  font-weight: 600;
  box-shadow: none;
}

.ws-task-modal__header-week-pills .ws-task-modal__week-option:hover span {
  color: #0f172a;
  background: rgba(255, 255, 255, 0.45);
}

.ws-task-modal__header-week-pills .ws-task-modal__week-option input:checked + span {
  border: none;
  background: #fff;
  color: #1d4ed8;
  box-shadow: 0 1px 3px rgba(15, 23, 42, 0.08);
}

.ws-task-modal__week-option {
  position: relative;
  display: block;
  margin: 0;
  cursor: pointer;
}

.ws-task-modal__week-option input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.ws-task-modal__week-option span {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 2.25rem;
  padding: 0.35rem 0.65rem;
  border-radius: 10px;
  border: 1px solid var(--ws-border-strong, #cbd5e1);
  background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
  color: #0f172a;
  font-size: 0.8125rem;
  font-weight: 600;
  text-align: center;
  transition: border-color 0.15s ease, background 0.15s ease, box-shadow 0.15s ease, color 0.15s ease;
}

.ws-task-modal__week-option:hover span {
  border-color: #94a3b8;
}

.ws-task-modal__week-option input:focus-visible + span {
  outline: 2px solid #2563eb;
  outline-offset: 2px;
}

.ws-task-modal__week-option input:checked + span {
  border-color: #2563eb;
  background: linear-gradient(180deg, rgba(37, 99, 235, 0.12) 0%, rgba(37, 99, 235, 0.06) 100%);
  box-shadow: inset 0 0 0 1px rgba(37, 99, 235, 0.18);
  color: #1d4ed8;
}

@media (max-width: 640px) {
  .ws-task-modal__header {
    flex-wrap: wrap;
  }

  .ws-task-modal__header-actions {
    width: 100%;
    justify-content: space-between;
  }

  .ws-task-modal__header-week {
    flex: 1 1 auto;
    min-width: 0;
  }
}

.ws-task-modal__body {
  padding: 14px 18px 18px;
  overflow: auto;
  flex: 1 1 auto;
  min-height: 0;
}

.ws-task-modal__footer {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  margin-top: 1rem;
  padding-top: 1rem;
  border-top: 1px solid rgba(148, 163, 184, 0.22);
}

/* Modál: kompaktabb, letisztultabb gombok */
.ws-task-modal__footer .btn {
  height: auto;
  min-height: 2.125rem;
  padding: 0.4rem 0.9rem;
  font-size: 0.8125rem;
  font-weight: 500;
  line-height: 1.25;
  letter-spacing: 0.02em;
  color: #475569;
  border-radius: 9px;
  border: 1px solid #cbd5e1;
  background: #f8fafc;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}

.ws-task-modal__footer .btn:hover {
  background: #f1f5f9;
  border-color: #94a3b8;
  color: #0f172a;
}

.ws-task-modal .glass-primary-btn {
  height: auto;
  min-height: 2.125rem;
  padding: 0.4rem 1rem;
  font-size: 0.8125rem;
  font-weight: 600;
  line-height: 1.25;
  letter-spacing: 0.03em;
  border-radius: 9px;
  gap: 6px;
  box-shadow: 0 4px 14px rgba(37, 99, 235, 0.2);
}

.ws-task-modal .glass-primary-btn:hover {
  filter: brightness(1.03);
  box-shadow: 0 6px 18px rgba(37, 99, 235, 0.26);
}

.ws-task-modal .actions {
  gap: 6px;
}

.ws-task-modal .actions .btn {
  height: auto;
  min-height: 1.875rem;
  padding: 0.3rem 0.6rem;
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1.35;
  letter-spacing: 0.01em;
  border-radius: 8px;
  border-color: #e2e8f0;
  background: #fff;
  color: #64748b;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}

.ws-task-modal .actions .btn:hover {
  background: #f8fafc;
  border-color: #cbd5e1;
  color: #334155;
}

.ws-task-modal .actions .ws-badge-days {
  font-size: 0.6875rem;
  font-weight: 600;
  padding: 0.3rem 0.5rem;
  border-radius: 999px;
  border-color: #bfdbfe;
  background: linear-gradient(180deg, #eff6ff 0%, #dbeafe 100%);
  color: #1d4ed8;
}

/* Hét napjai: keskeny modálban ne vágódjon le a név (pl. Csütörtök) — elég széles cella vagy több sor */
.ws-task-modal .weekdays {
  grid-template-columns: repeat(auto-fill, minmax(6.75rem, 1fr));
  gap: 6px 6px;
}

.ws-task-modal .weekday {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  padding: 5px 7px;
  gap: 6px;
  border-radius: 8px;
  border: 1px solid #e2e8f0;
  background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
  transition: border-color 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;
}

.ws-task-modal .weekday:hover {
  border-color: rgba(59, 130, 246, 0.35);
  box-shadow: 0 2px 8px rgba(37, 99, 235, 0.08);
  background: linear-gradient(180deg, #ffffff 0%, #f1f5f9 100%);
}

.ws-task-modal .weekday:has(input:checked) {
  border-color: rgba(59, 130, 246, 0.55);
  background: linear-gradient(180deg, #eff6ff 0%, #e0e7ff 100%);
  box-shadow: 0 1px 3px rgba(37, 99, 235, 0.12);
}

.ws-task-modal .weekday input[type='checkbox'] {
  transform: scale(1);
  margin: 0;
  width: 0.95rem;
  height: 0.95rem;
  accent-color: #2563eb;
  flex-shrink: 0;
}

.ws-task-modal .weekday span:not(.weekday-label-short) {
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: 0.01em;
  color: #0a0a0a;
  text-align: center;
}

.ws-task-modal .weekday:has(input:checked) span:not(.weekday-label-short) {
  color: #0a0a0a;
  font-weight: 600;
}

.ws-task-modal .form-grid {
  gap: 12px 16px;
}

.ws-task-modal__detail-grid {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px 16px;
  align-items: start;
}

.ws-task-modal__detail-grid .form-row {
  min-width: 0;
}

.ws-task-modal__detail-grid .form-row label {
  font-size: 13px;
  line-height: 1.3;
}

.ws-task-modal__detail-grid .form-row input,
.ws-task-modal__detail-grid .form-row select {
  width: 100%;
  max-width: 100%;
  min-height: 40px;
}

.ws-task-modal__field-hint {
  grid-column: 1 / -1;
  margin: -4px 0 0;
  font-size: 12px;
  line-height: 1.4;
  color: var(--ws-text-muted, #64748b);
}

.ws-task-modal__field-hint--inline {
  margin: 4px 0 0;
}

@media (max-width: 640px) {
  .ws-task-modal__detail-grid {
    grid-template-columns: 1fr;
  }
}

.ws-task-modal .weekday:focus-within {
  outline: none;
  box-shadow: 0 0 0 2px #fff, 0 0 0 4px rgba(59, 130, 246, 0.35);
}

.ws-shell-group-list {
  display: grid;
  gap: 8px;
  max-height: 280px;
  overflow: auto;
}

.ws-shell-group-option {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  border: 1px solid var(--ws-border);
  border-radius: 14px;
  background: var(--ws-surface-2);
  color: var(--ws-text-soft);
}

.ws-shell-group-option input {
  accent-color: var(--ws-primary);
}

/* Látható csoportok — Tom Select (Planzee groupPicker-szerű) */
.ws-shell-sidebar-block--groups {
  min-width: 0;
}

.ws-shell-sidebar-block--groups .ts-wrapper {
  max-width: 100%;
  min-width: 0;
  width: 100%;
  box-sizing: border-box;
}

.work-schedule-redesign-page .ws-shell-sidebar-block--groups .ts-control,
.work-schedule-redesign-page #wsGroupPicker-ts-control {
  border-radius: 14px !important;
  border: 1px solid var(--ws-border) !important;
  background: var(--ws-surface-2) !important;
  padding: 0.42rem 0.55rem !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}

/* Chip-sor + placeholder/kereső második sorban — mint a Planzee #groupPicker */
.work-schedule-redesign-page .ws-shell-sidebar-block--groups .ts-wrapper.multi .ts-control {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  align-content: center !important;
  justify-content: center !important;
}

.work-schedule-redesign-page .ws-shell-sidebar-block--groups .ts-wrapper.multi .ts-control > input {
  order: 99;
  flex: 0 0 100% !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  margin: 0.42rem 0 0 !important;
  height: 1.6rem !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  text-align: center !important;
  line-height: 1.6rem !important;
}

.work-schedule-redesign-page .ws-shell-sidebar-block--groups .ts-wrapper.multi .ts-control > input::placeholder {
  color: #374151 !important;
  font-weight: 700;
  opacity: 1;
  display: inline-block;
  transform: translateY(-1px);
}

.work-schedule-redesign-page .ws-shell-sidebar-block--groups .ts-wrapper.multi .ts-control > input:focus::placeholder {
  opacity: 0 !important;
}

.work-schedule-redesign-page .ws-shell-sidebar-block--groups .ts-wrapper.multi.focus .ts-control > input::placeholder,
.work-schedule-redesign-page .ws-shell-sidebar-block--groups .ts-wrapper.multi.focus .ts-control > input::-webkit-input-placeholder {
  opacity: 0 !important;
}

.work-schedule-redesign-page .ws-shell-sidebar-block--groups #wsGroupPicker-ts-control > input {
  display: block !important;
}

.work-schedule-redesign-page .ws-shell-sidebar-block--groups .ts-wrapper.multi .ts-control > div.item,
.work-schedule-redesign-page .ws-shell-sidebar-block--groups .ts-wrapper.multi .ts-control > div {
  border-radius: 10px !important;
  border: 1px solid rgba(148, 163, 184, 0.45) !important;
}

.work-schedule-redesign-page .ws-shell-sidebar-block--groups #wsGroupPicker-ts-control > div.item {
  margin: 0 3px 3px 3px !important;
}

.work-schedule-redesign-page .ws-shell-sidebar-block--groups #wsGroupPicker-ts-control.ts-control:not(.rtl) {
  padding-left: 0.55rem !important;
  padding-right: 0.55rem !important;
}

/*
 * work_schedule.css globálisan átlátszóvá teszi a TomSelect placeholder-t .has-items mellett
 * (résztvevő mezőhöz); a Látható csoportoknál viszont látszódjon: „Saját csoport + további csoportok”.
 */
.work-schedule-redesign-page .ws-shell-sidebar-block--groups .ts-wrapper.has-items .ts-control input::placeholder {
  color: #374151 !important;
  font-weight: 700;
  opacity: 1 !important;
}

.work-schedule-redesign-page .ws-shell-sidebar-block--groups .ts-wrapper.has-items .ts-control input::-webkit-input-placeholder {
  color: #374151 !important;
  font-weight: 700;
}

body.work-schedule-redesign-page .ts-dropdown,
#naptar-demo.work-schedule-redesign-page .ts-dropdown {
  z-index: 10050 !important;
  border-radius: 14px !important;
  border-color: rgba(148, 163, 184, 0.35) !important;
  box-shadow: 0 12px 32px rgba(15, 23, 42, 0.16) !important;
}

/* Résztvevők (#taskForm): maradjon a régi, work_schedule.css-szerű megjelenés (ne a dock TomSelect stílus) */
body.work-schedule-redesign-page #taskForm .ts-dropdown,
#naptar-demo.work-schedule-redesign-page #taskForm .ts-dropdown {
  border-radius: 10px !important;
  border: 1px solid #cccccc !important;
  box-shadow: 0 4px 14px rgba(15, 23, 42, 0.1) !important;
}

/*
 * A .ts-control dropdown-active z-index: 10052 felette maradt a globális .ts-dropdown 10050 !important
 * (a JS inline z-indexet is felülírja). Valódi mobilon/WebKiten a lista a kereső mögé került.
 * A modál #taskForm legördülőjét explicit magasabbra tesszük, mint a vezérlő.
 */
body.work-schedule-redesign-page #wsTaskModal #taskForm .ts-dropdown,
#naptar-demo.work-schedule-redesign-page #wsTaskModal #taskForm .ts-dropdown {
  z-index: 10060 !important;
}

body.work-schedule-redesign-page #wsTaskModal #taskForm .ts-wrapper.dropdown-active .ts-control,
#naptar-demo.work-schedule-redesign-page #wsTaskModal #taskForm .ts-wrapper.dropdown-active .ts-control {
  z-index: 10052;
  position: relative;
}

body.work-schedule-redesign-page .planzee-week-toolbar .ts-wrapper.dropdown-active .ts-control,
#naptar-demo.work-schedule-redesign-page .planzee-week-toolbar .ts-wrapper.dropdown-active .ts-control {
  z-index: 10051;
  position: relative;
}

.ws-shell-main {
  border-left: 1px solid var(--ws-border);
  padding: 10px;
  display: grid;
  gap: 20px;
  overflow: visible;
  min-width: 0;
  align-self: start;
}

.ws-shell-main-header,
.ws-shell-section-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.ws-shell-main-title {
  font-size: clamp(1.8rem, 2.8vw, 2.25rem);
  margin: 4px 0 0;
  letter-spacing: -0.03em;
}

/* Heti munkatervek fejléc – finomabb hierarchia, kevésbé „nehéz” */
.work-schedule-redesign-page .ws-shell-main-header {
  align-items: center;
  gap: clamp(14px, 2.5vw, 28px);
  padding-bottom: 1rem;
  margin-bottom: 0.25rem;
  border-bottom: 1px solid rgba(226, 232, 240, 0.95);
}

.work-schedule-redesign-page .ws-shell-main-header > div:first-child {
  display: flex;
  flex-direction: column;
  gap: 0;
  min-width: 0;
}

.work-schedule-redesign-page .ws-shell-main-header .ws-shell-eyebrow {
  font-size: 0.65rem;
  font-weight: 600;
  letter-spacing: 0.14em;
  color: #94a3b8;
  line-height: 1.35;
  margin: 0 0 0.45rem;
}

.work-schedule-redesign-page .ws-shell-main-title-row {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: 0.65rem 1rem;
  min-width: 0;
}

.work-schedule-redesign-page .ws-shell-main-title {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  min-width: 0;
  flex-shrink: 0;
  font-size: clamp(1.22rem, 1.85vw, 1.52rem);
  font-weight: 700;
  letter-spacing: -0.028em;
  line-height: 1.14;
  margin: 0;
}

.work-schedule-redesign-page .ws-shell-main-title__icon {
  width: 1.2em;
  height: 1.2em;
  flex-shrink: 0;
  color: #2563eb;
}

.work-schedule-redesign-page .ws-shell-main-title__text {
  font-size: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
}

.work-schedule-redesign-page .ws-shell-main-subtitle {
  display: inline-flex;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0.45rem;
  margin: 0;
  padding: 0.2rem 0 0.2rem 0.85rem;
  border-left: 1px solid rgba(148, 163, 184, 0.45);
  font-size: 0.8125rem;
  font-weight: 500;
  line-height: 1.25;
  color: #64748b;
  letter-spacing: 0.01em;
  flex: 0 1 auto;
  min-width: 0;
}

.work-schedule-redesign-page .ws-shell-main-subtitle__range {
  color: #475569;
  font-weight: 600;
  letter-spacing: -0.01em;
  white-space: nowrap;
}

.work-schedule-redesign-page .ws-shell-main-subtitle__sep {
  color: #cbd5e1;
  font-weight: 500;
  user-select: none;
}

.work-schedule-redesign-page .ws-shell-main-subtitle__badge {
  display: inline-flex;
  align-items: center;
  padding: 0.2rem 0.55rem;
  border-radius: 999px;
  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  white-space: nowrap;
  line-height: 1.2;
}

.work-schedule-redesign-page .ws-shell-main-subtitle__badge--current {
  color: #1d4ed8;
  background: rgba(37, 99, 235, 0.1);
  border: 1px solid rgba(37, 99, 235, 0.22);
}

.work-schedule-redesign-page .ws-shell-main-subtitle__badge--next {
  color: #0f766e;
  background: rgba(13, 148, 136, 0.1);
  border: 1px solid rgba(13, 148, 136, 0.24);
}

.work-schedule-redesign-page .ws-shell-main-subtitle__badge--previous {
  color: #b45309;
  background: rgba(245, 158, 11, 0.12);
  border: 1px solid rgba(217, 119, 6, 0.28);
}

@media (max-width: 560px) {
  .work-schedule-redesign-page .ws-shell-main-title-row {
    flex-wrap: wrap;
    align-items: flex-start;
    row-gap: 0.35rem;
  }

  .work-schedule-redesign-page .ws-shell-main-title {
    flex-shrink: 1;
    min-width: 0;
  }

  .work-schedule-redesign-page .ws-shell-main-subtitle {
    flex-basis: 100%;
    padding: 0.45rem 0 0.2rem;
    margin-top: 0.1rem;
    border-left: none;
    border-top: 1px solid rgba(148, 163, 184, 0.35);
  }
}

.ws-shell-main-actions,
.ws-shell-section-actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

.ws-shell-section-title {
  margin: 2px 0 0;
  font-size: 1.2rem;
  line-height: 1.2;
}

.ws-shell-section-subtitle {
  margin: 6px 0 0;
  line-height: 1.4;
}

.ws-summary-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.5rem 0.65rem;
  min-width: 0;
}

@media (max-width: 900px) {
  .ws-summary-grid {
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  }
}

/* Kompakt KPI: címke+ikon | nagy szám egy sorban, meta alatta – minden infó megmarad */
.ws-summary-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  grid-template-rows: auto auto;
  column-gap: 0.5rem;
  row-gap: 0.2rem;
  align-items: center;
  padding: 0.5rem 0.65rem 0.45rem 0.6rem;
  min-width: 0;
  border-radius: 12px;
  border: 1px solid var(--ws-panel-border);
  box-shadow: var(--ws-panel-shadow);
}

.ws-summary-card__label {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  grid-column: 1;
  grid-row: 1;
  margin: 0;
  min-width: 0;
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--ws-text-muted);
  line-height: 1.2;
}

.ws-summary-card__label-icon {
  width: 14px;
  height: 14px;
  flex: 0 0 auto;
  opacity: 1;
}

/* KPI címke ikonok – tónus szerint (Heti feladatok / Résztvevők / Ütközések) */
.ws-summary-card--blue .ws-summary-card__label-icon {
  color: #1d4ed8;
  filter: drop-shadow(0 1px 1px rgba(37, 99, 235, 0.25));
}

.ws-summary-card--indigo .ws-summary-card__label-icon {
  color: #1d4ed8;
  filter: drop-shadow(0 1px 1px rgba(37, 99, 235, 0.25));
}

.ws-summary-card--amber .ws-summary-card__label-icon {
  color: #1d4ed8;
  filter: drop-shadow(0 1px 1px rgba(37, 99, 235, 0.25));
}

.ws-summary-card--rose .ws-summary-card__label-icon {
  color: #e11d48;
  filter: drop-shadow(0 1px 1px rgba(225, 29, 72, 0.22));
}

.ws-summary-card__value {
  grid-column: 2;
  grid-row: 1;
  margin: 0;
  font-size: 1.35rem;
  line-height: 1;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  color: var(--ws-text);
  text-align: right;
}

.ws-summary-card__meta {
  grid-column: 1 / -1;
  grid-row: 2;
  margin: 0;
  padding-top: 0.2rem;
  border-top: 1px solid rgba(148, 163, 184, 0.22);
  font-size: 0.7rem;
  line-height: 1.3;
  font-weight: 500;
  color: #64748b;
}

.ws-summary-card--blue,
.ws-summary-card--indigo,
.ws-summary-card--amber,
.ws-summary-card--rose {
  background: #ffffff;
}

.ws-shell-editor {
  padding: 14px 16px;
}

.ws-shell-form-panel {
  margin-top: 18px;
  padding: 20px;
  background: #ffffff;
}

.ws-shell-form {
  margin-top: 14px;
}

/* ========== Search / Import subpages ========== */
.work-schedule-page.ws-subpage.container-page {
  width: min(1180px, calc(100% - 40px));
  max-width: 1180px;
  margin: 0 auto 28px;
  padding: 0;
  min-width: 0;
  box-sizing: border-box;
}

.work-schedule-page.ws-subpage {
  display: grid;
  gap: 16px;
  min-width: 0;
  max-width: 100%;
}

.work-schedule-page.ws-subpage .glass-panel {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  padding: 16px !important;
  border-radius: 16px;
  border: 1px solid var(--ws-panel-border) !important;
  background: #ffffff !important;
  box-shadow: var(--ws-panel-shadow) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  overflow: visible;
}

.work-schedule-page.ws-worksheets-page .glass-panel {
  overflow-x: clip;
  max-width: 100%;
}

.work-schedule-page.ws-subpage .card-white {
  background: rgba(255, 255, 255, 0.78);
  border: 1px solid rgba(219, 228, 240, 0.92);
  border-radius: var(--ws-radius-md);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.65);
  padding: 18px;
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
}

.work-schedule-page.ws-subpage .ws-search-header,
.work-schedule-page.ws-subpage .ws-import-header,
.work-schedule-page.ws-subpage .ws-edit-header {
  background: #ffffff !important;
  /* Ugyanaz a betűtípus, mint a heti munkaterv .ws-page-header / body (theme-saas) */
  font-family: inherit;
}

.work-schedule-page.ws-subpage .headerbar {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  min-width: 0;
}

.work-schedule-page.ws-subpage .headerbar-title {
  margin: 2px 0 0;
  min-width: 0;
  flex: 1 1 auto;
  max-width: 100%;
  font-family: inherit;
  font-size: 1.5rem;
  line-height: 1.2;
  letter-spacing: -0.01em;
  color: var(--ws-text);
}

.work-schedule-page.ws-subpage .ws-subpage-title-row {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
  max-width: 100%;
}

.work-schedule-page.ws-subpage .ws-subpage-title-text {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.work-schedule-page.ws-subpage .ws-subpage-hero-icon {
  width: 38px;
  height: 38px;
  border-radius: 0.5rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  color: #fff;
  background: linear-gradient(145deg, #93c5fd 0%, #3b82f6 48%, #1d4ed8 100%);
  border: 1px solid rgba(37, 99, 235, 0.35);
  box-shadow:
    0 1px 2px rgba(18, 20, 26, 0.08),
    0 2px 8px rgba(37, 99, 235, 0.22);
}

.work-schedule-page.ws-subpage .headerbar-actions {
  margin-left: auto;
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  flex-shrink: 0;
}

/* Keresés / Excel import / feladat szerkesztés: cím + gombok; gombok = .ws-page-header-actions (2.25rem, padding, 10px radius) */
.work-schedule-page.ws-subpage .ws-search-header .headerbar,
.work-schedule-page.ws-subpage .ws-import-header .headerbar,
.work-schedule-page.ws-subpage .ws-edit-header .headerbar {
  align-items: center;
}

.work-schedule-page.ws-subpage .ws-search-header .headerbar-actions,
.work-schedule-page.ws-subpage .ws-import-header .headerbar-actions,
.work-schedule-page.ws-subpage .ws-edit-header .headerbar-actions {
  align-items: center;
  gap: 0.5rem;
}

.work-schedule-page.ws-subpage .ws-search-header .headerbar-actions .glass-btn.btn-back,
.work-schedule-page.ws-subpage .ws-search-header .headerbar-actions .btn-excel-import,
.work-schedule-page.ws-subpage .ws-import-header .headerbar-actions .glass-btn.btn-back,
.work-schedule-page.ws-subpage .ws-import-header .headerbar-actions .btn-excel-import,
.work-schedule-page.ws-subpage .ws-edit-header .headerbar-actions .glass-btn.btn-back,
.work-schedule-page.ws-subpage .ws-edit-header .headerbar-actions .btn-excel-import {
  min-height: 2.25rem !important;
  height: auto !important;
  max-height: none !important;
  padding: 0.35rem 0.65rem !important;
  border-radius: 10px !important;
  font-family: inherit !important;
  font-size: 0.8125rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.01em !important;
  line-height: 1.25 !important;
  box-sizing: border-box !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0.35rem;
}

.work-schedule-page.ws-subpage .ws-search-header .headerbar-actions .glass-btn.btn-back,
.work-schedule-page.ws-subpage .ws-import-header .headerbar-actions .glass-btn.btn-back,
.work-schedule-page.ws-subpage .ws-edit-header .headerbar-actions .glass-btn.btn-back {
  border: 1px solid var(--ws-panel-border);
  background: #ffffff;
  box-shadow: var(--ws-panel-shadow);
}

.work-schedule-page.ws-subpage .ws-search-header .headerbar-actions .glass-btn.btn-back:hover,
.work-schedule-page.ws-subpage .ws-import-header .headerbar-actions .glass-btn.btn-back:hover,
.work-schedule-page.ws-subpage .ws-edit-header .headerbar-actions .glass-btn.btn-back:hover {
  background: rgba(255, 255, 255, 0.95);
}

body.theme-saas .work-schedule-page.ws-subpage .ws-search-header .headerbar-actions a.glass-btn.btn-back.back-link,
body.theme-saas .work-schedule-page.ws-subpage .ws-import-header .headerbar-actions a.glass-btn.btn-back.back-link,
body.theme-saas .work-schedule-page.ws-subpage .ws-edit-header .headerbar-actions a.glass-btn.btn-back.back-link {
  min-height: 2.25rem !important;
  height: auto !important;
  max-height: none !important;
  padding: 0.35rem 0.65rem !important;
  border-radius: 10px !important;
  font-size: 0.8125rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.01em !important;
  line-height: 1.25 !important;
}

.work-schedule-page.ws-subpage.ws-import-page .ws-import-template-actions {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem;
}

.work-schedule-page.ws-subpage .subtle {
  font-size: 13px;
  color: var(--ws-text-muted);
}

.work-schedule-page.ws-subpage .hint {
  font-size: 12px;
  color: var(--ws-text-muted);
}

.work-schedule-page.ws-subpage .btn-excel-import,
.work-schedule-page.ws-subpage .glass-btn.btn-back,
.work-schedule-page.ws-subpage .btn {
  min-height: 38px;
  border-radius: 12px;
  font-weight: 600;
  box-shadow: none;
}

.work-schedule-page.ws-subpage .btn-excel-import {
  background: linear-gradient(180deg, rgba(37, 99, 235, 0.98), rgba(29, 78, 216, 0.98));
  border-color: #1d4ed8;
}

.work-schedule-page.ws-subpage .btn-excel-import:hover {
  background: linear-gradient(180deg, rgba(63, 98, 226, 0.98), rgba(29, 78, 216, 0.98));
}

.work-schedule-page.ws-subpage .glass-btn.btn-back,
.work-schedule-page.ws-subpage .btn {
  background: var(--ws-surface);
  border: 1px solid var(--ws-border-strong);
  color: var(--ws-text-soft);
}

.work-schedule-page.ws-subpage .glass-btn.btn-back:hover,
.work-schedule-page.ws-subpage .btn:hover:not(.btn-commit-import):not(.btn-preview):not(.btn-search-action):not(.btn-reset-preview) {
  background: #f8fbff;
  border-color: rgba(37, 99, 235, 0.35);
  color: var(--ws-primary);
}

.work-schedule-page.ws-subpage .btn.btn-search-action,
.work-schedule-page.ws-subpage .btn.btn-preview,
.work-schedule-page.ws-subpage .btn-commit-import {
  background: linear-gradient(180deg, rgba(37, 99, 235, 0.98), rgba(29, 78, 216, 0.98));
  border-color: #1d4ed8;
  color: #fff;
}

.work-schedule-page.ws-subpage .btn.btn-search-action:hover,
.work-schedule-page.ws-subpage .btn.btn-preview:hover,
.work-schedule-page.ws-subpage .btn-commit-import:hover {
  background: linear-gradient(180deg, rgba(63, 98, 226, 0.98), rgba(29, 78, 216, 0.98));
  border-color: #1d4ed8;
  color: #fff;
}

.work-schedule-page.ws-subpage .btn.btn-reset-preview {
  background: linear-gradient(180deg, #ef4444, #dc2626);
  border-color: #b91c1c;
  color: #fff;
}

.work-schedule-page.ws-subpage .btn.btn-reset-preview:hover {
  background: linear-gradient(180deg, #dc2626, #b91c1c);
  border-color: #b91c1c;
  color: #fff;
}

.work-schedule-page.ws-subpage .ws-search-results-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  margin-bottom: 14px;
}

.work-schedule-page.ws-subpage .ws-search-card {
  border-radius: 16px;
  border: 1px solid rgba(219, 228, 240, 0.96);
  background: linear-gradient(180deg, rgba(255,255,255,0.95), rgba(246,249,253,0.92));
  box-shadow: 0 6px 18px rgba(15, 23, 42, 0.05);
}

.work-schedule-page.ws-subpage .ws-import-file-block,
.work-schedule-page.ws-subpage .ws-import-deleted {
  border-radius: 16px;
}

.work-schedule-page.ws-subpage .import-preview-table {
  background: #f8fbff;
}

.work-schedule-page.ws-subpage .import-preview-table th {
  background: #edf3fb;
}

.work-schedule-page.ws-subpage .import-preview-table td {
  background: rgba(248, 251, 255, 0.9);
}

.work-schedule-page.ws-subpage .ws-import-section-title {
  color: var(--ws-text);
  font-weight: 700;
}

.work-schedule-page.ws-subpage .ws-import-preview-scope-note {
  margin: 0 0 12px;
}

.work-schedule-page.ws-subpage .ws-import-preview-legend {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin-top: 0;
  margin-bottom: 1rem;
  font-size: 12px;
  color: var(--ws-text-muted);
}

.work-schedule-page.ws-subpage .ws-import-info-list,
.work-schedule-page.ws-subpage .ws-import-summary-list {
  color: var(--ws-text-soft);
}

.work-schedule-page.ws-subpage .form-grid,
.work-schedule-page.ws-subpage .form-row,
.work-schedule-page.ws-subpage .form-row-full {
  min-width: 0;
}

.work-schedule-page.ws-subpage .form-row label,
.work-schedule-page.ws-subpage .field label {
  color: var(--ws-text);
}

.ws-board {
  display: grid;
  gap: 18px;
  min-width: 0;
}

.ws-group-panel {
  padding: 16px;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  overflow: visible;
}

.ws-group-panel__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 14px;
  margin-bottom: 16px;
}

.ws-group-panel__header-main {
  display: flex;
  align-items: center;
  gap: 0.65rem;
  min-width: 0;
  flex: 1 1 auto;
}

.ws-group-panel__header-text {
  min-width: 0;
  flex: 1 1 auto;
}

.ws-group-panel__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  flex-shrink: 0;
  border-radius: 10px;
  background: linear-gradient(145deg, #93c5fd 0%, #3b82f6 48%, #1d4ed8 100%);
  color: #ffffff;
  box-shadow: 0 3px 12px rgba(37, 99, 235, 0.28);
}

.ws-group-panel__icon svg {
  width: 1.125rem;
  height: 1.125rem;
}

.ws-group-panel__icon svg * {
  color: #fff !important;
  stroke: #fff !important;
  fill: none !important;
}

.ws-group-panel__title {
  font-size: 1.15rem;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.35rem 0.65rem;
}

.ws-group-panel__meta {
  margin: 0.2rem 0 0;
  font-size: 0.8125rem;
  line-height: 1.35;
}

.ws-group-panel__title .ws-group-panel__name {
  font-weight: 700;
}

.ws-group-panel__title-counts {
  font-size: 0.88em;
  font-weight: 600;
  color: var(--ws-text-muted);
  letter-spacing: 0.01em;
  white-space: nowrap;
}

.ws-group-panel__collapse {
  border: 1px solid rgba(18, 20, 26, 0.12);
  background: #f5f6f4;
  border-radius: 999px;
  color: #5c6470;
  min-height: 2rem;
  padding: 0 11px;
  font-size: 0.8125rem;
  font-weight: 600;
  letter-spacing: 0.01em;
  cursor: pointer;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.05);
  transition: border-color 0.15s ease, color 0.15s ease, box-shadow 0.15s ease;
}

.ws-group-panel__collapse:hover {
  border-color: rgba(59, 130, 246, 0.35);
  color: #1d4ed8;
  box-shadow: 0 2px 8px rgba(37, 99, 235, 0.1);
}

.ws-group-panel.is-collapsed .ws-group-panel__header {
  margin-bottom: 0;
  align-items: center;
}

.ws-group-panel.is-collapsed .ws-group-panel__header-main {
  align-items: center;
}

.ws-group-panel.is-collapsed .ws-group-panel__days {
  display: none;
}

.ws-group-panel__days-scroll {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  overflow: visible;
  overflow-y: visible;
}

.ws-group-panel__days {
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
  min-width: 0;
}

.ws-day-column {
  display: grid;
  grid-template-columns: 168px minmax(0, 1fr);
  align-items: stretch;
  min-width: 0;
  background: linear-gradient(180deg, rgba(245, 246, 244, 0.95), rgba(255, 255, 255, 0.98));
  border: 1px solid var(--ws-border);
  border-radius: 16px;
  overflow: visible;
}

.ws-day-column__header {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 6px;
  padding: 16px 14px;
  background: #f5f6f4;
  border-right: 1px solid var(--ws-border);
  text-align: center;
  align-items: center;
  border-top-left-radius: 16px;
  border-bottom-left-radius: 16px;
}

.ws-day-column__title-row {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  width: 100%;
}

.ws-day-column__name {
  font-size: 0.98rem;
  font-weight: 700;
  color: var(--ws-text);
  line-height: 1.15;
}

.ws-day-column__meta {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  line-height: 1.4;
  color: var(--ws-text-muted);
}

.ws-day-column__date {
  font-weight: 600;
  color: var(--ws-text-soft);
  letter-spacing: 0.01em;
}

.ws-day-column__count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 26px;
  padding: 0 10px;
  border-radius: 999px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(242, 247, 255, 0.92));
  border: 1px solid rgba(196, 208, 226, 0.95);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.75);
  color: var(--ws-text-soft);
  font-weight: 700;
  white-space: nowrap;
}

.ws-day-column__icons {
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: 8px;
  flex-wrap: nowrap;
}

.ws-day-column__unassigned {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 28px;
  min-height: 24px;
  padding: 0 8px;
  border-radius: 999px;
  border: 1px dashed rgba(37, 99, 235, 0.35);
  background: rgba(239, 246, 255, 0.75);
  color: #1d4ed8;
  font-weight: 700;
  font-size: 12px;
  line-height: 1;
  cursor: default;
}

.ws-day-column__unassigned .ws-available-icon {
  pointer-events: none;
  display: block;
  width: 16px;
  height: auto;
  flex-shrink: 0;
}

.ws-day-column__oncall {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 28px;
  min-height: 24px;
  padding: 0 8px;
  border-radius: 999px;
  border: 1px solid rgba(37, 99, 235, 0.38);
  background: linear-gradient(180deg, rgba(239, 246, 255, 0.95), rgba(219, 234, 254, 0.88));
  color: #1d4ed8;
  font-size: 13px;
  line-height: 1;
  cursor: default;
}

.ws-day-column__oncall .ws-oncall-icon {
  pointer-events: none;
  display: block;
  width: 16px;
  height: auto;
  flex-shrink: 0;
}

/* Keep tooltip inside day column to avoid clipping on the left edge */
.ws-day-column__unassigned.ws-tooltip-anchor::before {
  left: 10px;
  top: calc(100% + 2px);
  transform: translate(0, 2px);
  border: 6px solid transparent;
  border-bottom-color: rgba(15, 23, 42, 0.94);
  border-top-color: transparent;
}

.ws-day-column__unassigned.ws-tooltip-anchor::after {
  left: 0;
  top: calc(100% + 10px);
  transform: translate(0, 4px);
  max-width: min(360px, calc(100vw - 48px));
}

.ws-day-column__unassigned.ws-tooltip-anchor:hover::before,
.ws-day-column__unassigned.ws-tooltip-anchor:focus-visible::before {
  transform: translate(0, 0);
}

.ws-day-column__unassigned.ws-tooltip-anchor:hover::after,
.ws-day-column__unassigned.ws-tooltip-anchor:focus-visible::after {
  transform: translate(0, 6px);
}

.ws-day-column__oncall.ws-tooltip-anchor::before {
  left: 10px;
  top: calc(100% + 2px);
  transform: translate(0, 2px);
  border: 6px solid transparent;
  border-bottom-color: rgba(15, 23, 42, 0.94);
  border-top-color: transparent;
}

.ws-day-column__oncall.ws-tooltip-anchor::after {
  left: 0;
  top: calc(100% + 10px);
  transform: translate(0, 4px);
  max-width: min(360px, calc(100vw - 48px));
}

.ws-day-column__oncall.ws-tooltip-anchor:hover::before,
.ws-day-column__oncall.ws-tooltip-anchor:focus-visible::before {
  transform: translate(0, 0);
}

.ws-day-column__oncall.ws-tooltip-anchor:hover::after,
.ws-day-column__oncall.ws-tooltip-anchor:focus-visible::after {
  transform: translate(0, 6px);
}

.ws-day-column__body {
  padding: 12px;
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
  min-height: 110px;
  align-content: start;
}

.ws-day-column__empty {
  border: 1px dashed var(--ws-border-strong);
  border-radius: 12px;
  padding: 16px 14px;
  background: rgba(255, 255, 255, 0.72);
  font-size: 13px;
  grid-column: 1 / -1;
}

.ws-person-chip--unassigned {
  background: #f5f6f4;
  border: 1px solid rgba(18, 20, 26, 0.12);
  color: #3a3f4b;
}

.ws-task-card {
  border: 1px solid var(--ws-panel-border);
  border-radius: 14px;
  background: #fff;
  padding: 12px;
  display: grid;
  gap: 10px;
  box-shadow: var(--ws-panel-shadow);
  cursor: pointer;
  transition: transform 0.16s ease, box-shadow 0.16s ease, border-color 0.16s ease;
  min-width: 0;
}

.ws-task-card:hover,
.ws-task-card:focus {
  transform: translateY(-1px);
  border-color: #cbd5e1;
  box-shadow: 0 8px 20px rgba(15, 23, 42, 0.08);
  outline: none;
}

.ws-task-card.is-mine {
  border-left: 3px solid var(--ws-primary);
}

.ws-task-card.has-conflict {
  background: linear-gradient(180deg, #ffffff, #fff7f7);
}

.ws-task-card[hidden],
.ws-group-panel[hidden],
.ws-day-column[hidden] {
  display: none !important;
}

.ws-task-card__title {
  margin: 0;
  font-size: 0.94rem;
  line-height: 1.3;
  color: var(--ws-text);
  overflow-wrap: anywhere;
}

.ws-task-card__summary {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px 12px;
  min-width: 0;
}

.ws-task-card__summary > .ws-task-card__title {
  flex: 1 1 260px;
  min-width: 160px;
}

.ws-task-card__title {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.ws-task-card__title-text {
  min-width: 0;
}

.ws-task-card__drag-handle {
  display: none;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 1.1rem;
  color: var(--ws-muted, #94a3b8);
  font-size: 0.85rem;
  line-height: 1;
  letter-spacing: -0.12em;
  cursor: grab;
  user-select: none;
  touch-action: none;
}

@media (hover: hover) {
  .ws-task-card[data-can-reorder="1"] .ws-task-card__drag-handle {
    display: inline-flex;
  }

  .ws-task-card[data-can-reorder="1"]:hover .ws-task-card__drag-handle {
    color: var(--ws-text-muted, #64748b);
  }
}

.ws-task-card__drag-handle[draggable="true"] {
  cursor: grab;
}

.ws-task-card__drag-handle[draggable="true"]:active {
  cursor: grabbing;
}

.ws-task-card--dragging {
  opacity: 0.65;
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.12);
}

.ws-day-column__body--drag-over {
  outline: 1px dashed rgba(59, 130, 246, 0.35);
  outline-offset: -2px;
  border-radius: 8px;
}

.ws-task-card__mine-flag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  flex: 0 0 auto;
  border-radius: 999px;
  color: var(--ws-primary);
  background: var(--ws-primary-soft);
  border: 1px solid rgba(37, 99, 235, 0.18);
}

.ws-task-card__mine-flag svg {
  display: block;
}

.ws-task-card__note-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  flex: 0 0 auto;
  border-radius: 999px;
  color: var(--ws-primary);
  background: var(--ws-primary-soft);
  border: 1px solid rgba(37, 99, 235, 0.18);
}

.ws-tooltip-anchor {
  position: relative;
}

.ws-tooltip-anchor::before,
.ws-tooltip-anchor::after {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.16s ease, transform 0.16s ease;
  z-index: 30;
}

.ws-tooltip-anchor::before {
  content: '';
  position: absolute;
  left: 50%;
  top: -8px;
  transform: translate(-50%, -2px);
  border: 6px solid transparent;
  border-top-color: rgba(15, 23, 42, 0.94);
}

.ws-tooltip-anchor::after {
  content: attr(data-tooltip);
  position: absolute;
  left: 50%;
  top: -12px;
  transform: translate(-50%, -4px);
  background: rgba(15, 23, 42, 0.94);
  color: #f8fafc;
  border-radius: 10px;
  padding: 8px 10px;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.35;
  white-space: normal;
  width: max-content;
  max-width: min(340px, 58vw);
  box-shadow: 0 10px 28px rgba(2, 6, 23, 0.28);
  text-align: left;
}

.ws-tooltip-anchor:hover::before,
.ws-tooltip-anchor:hover::after,
.ws-tooltip-anchor:focus-visible::before,
.ws-tooltip-anchor:focus-visible::after {
  opacity: 1;
  visibility: visible;
}

.ws-tooltip-anchor:hover::before,
.ws-tooltip-anchor:focus-visible::before {
  transform: translate(-50%, 0);
}

.ws-tooltip-anchor:hover::after,
.ws-tooltip-anchor:focus-visible::after {
  transform: translate(-50%, -6px);
}

.ws-task-card__stat {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 0 10px;
  border-radius: 999px;
  background: #f8fafc;
  border: 1px solid var(--ws-border);
  color: var(--ws-text-soft);
  font-size: 12px;
  font-weight: 600;
}

.ws-task-card__stat--address {
  gap: 6px;
  text-decoration: none;
  color: var(--ws-accent, #2563eb);
  background: rgba(37, 99, 235, 0.1);
  border-color: rgba(37, 99, 235, 0.2);
  cursor: pointer;
  transition: background 0.15s ease, transform 0.15s ease;
}

.ws-task-card__stat--address:hover,
.ws-task-card__stat--address:focus-visible {
  background: rgba(37, 99, 235, 0.18);
  transform: translateY(-1px);
  outline: none;
}

.ws-task-card__stat--address svg {
  display: block;
}

.ws-task-card__stat--address .ws-task-card__stat-text {
  font-size: 12px;
  font-weight: 600;
}

.ws-map-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  flex: 0 0 auto;
  border-radius: 999px;
  color: var(--ws-accent, #2563eb);
  background: rgba(37, 99, 235, 0.1);
  border: 1px solid transparent;
  transition: background 0.15s ease, color 0.15s ease, transform 0.15s ease;
  cursor: pointer;
  text-decoration: none;
}

.ws-map-link:hover,
.ws-map-link:focus-visible {
  background: rgba(37, 99, 235, 0.18);
  transform: translateY(-1px);
  outline: none;
}

.ws-map-link svg {
  display: block;
}

/* display: inline-flex felülírná a [hidden] attribútumot */
.ws-map-link[hidden] {
  display: none !important;
}

.ws-map-nav-picker {
  border: none;
  padding: 0;
  margin: 0;
  background: transparent;
  width: 100%;
  max-width: none;
  height: 100%;
  max-height: none;
  overflow: visible;
}

.ws-map-nav-picker:not([open]) {
  display: none;
}

.ws-map-nav-picker[open] {
  display: flex;
  align-items: center;
  justify-content: center;
}

.ws-map-nav-picker::backdrop {
  background: rgba(15, 23, 42, 0.45);
}

.ws-map-nav-picker__panel {
  width: min(92vw, 360px);
  margin: 0;
  padding: 20px 18px 16px;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(15, 23, 42, 0.18);
}

.ws-map-nav-picker__title {
  margin: 0 0 4px;
  font-size: 17px;
  font-weight: 700;
  color: #0f172a;
  text-align: center;
}

.ws-map-nav-picker__hint {
  margin: 0 0 14px;
  font-size: 13px;
  color: #64748b;
  text-align: center;
}

.ws-map-nav-picker__actions {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.ws-map-nav-picker__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 44px;
  padding: 10px 14px;
  border: 1px solid rgba(37, 99, 235, 0.25);
  border-radius: 12px;
  background: rgba(37, 99, 235, 0.08);
  color: #1d4ed8;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
}

.ws-map-nav-picker__btn:active {
  transform: scale(0.98);
}

.ws-map-nav-picker__cancel {
  display: block;
  width: 100%;
  margin-top: 10px;
  min-height: 40px;
  border: none;
  background: transparent;
  color: #64748b;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
}

.ws-map-nav-picker__remember {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin-top: 12px;
  padding: 10px 12px;
  border-radius: 10px;
  background: #f8fafc;
  color: #334155;
  font-size: 13px;
  line-height: 1.4;
  cursor: pointer;
  user-select: none;
}

.ws-map-nav-picker__remember input {
  margin-top: 2px;
  flex-shrink: 0;
}

.ws-chip,
.ws-person-chip {
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  padding: 0 8px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 600;
  max-width: 100%;
}

.ws-chip--mine {
  background: var(--ws-primary-soft);
  color: var(--ws-primary);
}

.ws-chip--subtle {
  background: #f5f6f4;
  color: var(--ws-text-soft);
}

.ws-chip--danger {
  background: var(--ws-rose-soft);
  color: var(--ws-danger);
}

.ws-chip--warning {
  background: var(--ws-amber-soft);
  color: var(--ws-warning);
}

.ws-person-chip {
  background: #eef3fb;
  color: var(--ws-text-soft);
}

.ws-person-chip.is-me {
  background: var(--ws-primary-soft);
  color: var(--ws-primary);
}

.ws-person-chip.has-oncall {
  background: #eff6ff;
  color: #1d4ed8;
}

.ws-person-chip.has-leave {
  background: var(--ws-success-soft);
  color: #15803d;
}

.ws-task-card__footerline {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  min-width: 0;
}

.ws-task-card__participants-row {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  min-width: 0;
  flex: 1 1 auto;
}

.ws-task-card__participants-label {
  display: inline-flex;
  align-items: center;
  align-self: flex-start;
  flex-shrink: 0;
  min-height: 26px;
  font-size: 12px;
  line-height: 1.25;
  color: var(--ws-text-muted);
  white-space: nowrap;
}

.ws-task-card__participants,
.ws-detail-status {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  min-width: 0;
  align-content: flex-start;
}

.ws-task-card__actions {
  display: inline-flex;
  align-items: center;
  align-self: flex-start;
  justify-content: flex-end;
  flex: 0 0 auto;
  min-height: 26px;
  gap: 8px;
}

.ws-task-card__link {
  color: var(--ws-primary);
  text-decoration: none;
  font-weight: 700;
  font-size: 12px;
}

.ws-board-empty {
  padding: 28px;
}

.ws-board-empty h2 {
  margin: 0 0 8px;
  color: var(--ws-text);
}

.ws-detail-drawer[hidden] {
  display: none;
}

.ws-detail-drawer {
  position: fixed;
  inset: 0;
  z-index: 1000;
}

.ws-detail-drawer__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(15, 23, 42, 0.28);
}

.ws-detail-drawer__panel {
  position: absolute;
  top: calc(var(--nav-height, 56px) + 20px);
  right: 20px;
  bottom: 20px;
  width: min(420px, calc(100vw - 32px));
  background: #ffffff;
  padding: 20px;
  display: grid;
  grid-template-rows: auto 1fr auto;
  gap: 18px;
}

.ws-detail-drawer__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.ws-detail-drawer__actions {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 10px 14px;
  padding-right: 4rem;
}

.ws-detail-drawer__actions form[data-detail-delete-form] {
  display: inline-flex;
  margin: 0;
}

.ws-detail-drawer__actions [hidden] {
  display: none !important;
}

.ws-detail-drawer__close {
  width: 40px;
  height: 40px;
  border-radius: 999px;
  border: 1px solid var(--ws-border);
  background: var(--ws-surface-2);
  color: var(--ws-text-soft);
  cursor: pointer;
  font-size: 22px;
  line-height: 1;
}

.ws-detail-drawer__title {
  margin: 4px 0 0;
  font-size: 1.35rem;
  color: var(--ws-text);
}

.ws-detail-drawer__body {
  overflow: auto;
  display: grid;
  gap: 16px;
  align-content: start;
}

.ws-detail-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.ws-detail-work-layout {
  display: grid;
  gap: 12px;
}

.ws-detail-work-layout__row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.ws-detail-work-layout__row--full {
  grid-template-columns: minmax(0, 1fr);
}

/* hidden attribútum: a .ws-detail-block display szabály felülírná */
.ws-detail-drawer__body [data-detail-work-fields][hidden],
.ws-detail-drawer__body [data-detail-note-block][hidden],
.ws-detail-drawer__body [data-detail-status-block][hidden],
.ws-detail-drawer__body [data-detail-due-block][hidden],
.ws-detail-drawer__body [data-detail-sheet-block][hidden],
.ws-detail-drawer__body [data-detail-merged-block][hidden] {
  display: none !important;
}

.ws-detail-drawer__panel.is-leave-detail {
  grid-template-rows: auto auto auto;
  bottom: auto;
  max-height: calc(100dvh - var(--nav-height, 56px) - 40px);
}

.ws-detail-drawer__panel.is-leave-detail .ws-detail-drawer__body {
  overflow: visible;
}

.ws-detail-drawer__panel.is-leave-detail [data-detail-work-fields],
.ws-detail-drawer__panel.is-leave-detail [data-detail-note-block],
.ws-detail-drawer__panel.is-leave-detail [data-detail-status-block],
.ws-detail-drawer__panel.is-leave-detail [data-detail-due-block],
.ws-detail-drawer__panel.is-leave-detail [data-detail-sheet-block],
.ws-detail-drawer__panel.is-leave-detail [data-detail-merged-block] {
  display: none !important;
}

.ws-detail-drawer__panel.is-leave-detail .ws-detail-block {
  align-self: start;
}

.ws-detail-block {
  display: grid;
  gap: 8px;
  padding: 14px;
  border-radius: 18px;
  border: 1px solid var(--ws-border);
  background: var(--ws-surface-2);
}

.ws-detail-label {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.ws-detail-value {
  color: var(--ws-text);
  font-weight: 600;
}

.ws-detail-value--with-map {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.ws-field-optional {
  font-weight: 400;
  font-size: 0.85em;
  color: var(--ws-text-soft, #6b7280);
}

.ws-detail-participants {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.ws-detail-hint {
  margin: 0;
  font-size: 13px;
  line-height: 1.45;
  color: var(--ws-text-soft, #6b7280);
}

.ws-detail-merged-list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 10px;
}

.ws-detail-merged-item {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 8px 12px;
  padding: 10px 12px;
  border-radius: 12px;
  border: 1px solid var(--ws-border);
  background: var(--ws-surface);
}

.ws-detail-merged-item__title {
  font-size: 14px;
  font-weight: 600;
  color: var(--ws-text);
}

.ws-detail-merged-item__actions {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
}

.ws-detail-merged-item__delete {
  display: inline;
  margin: 0;
}

.ws-shell-page.is-compact .ws-group-panel__days {
  gap: 10px;
}

.ws-shell-page.is-compact .ws-day-column__body {
  gap: 8px;
  padding: 10px;
}

.ws-shell-page.is-compact .ws-task-card {
  gap: 10px;
  padding: 12px;
}

@media (max-width: 1320px) {
  .ws-day-column {
    grid-template-columns: 170px minmax(0, 1fr);
  }
}

@media (max-width: 1100px) {
  .work-schedule-page.ws-shell-page.container-page {
    width: calc(100% - 16px);
    margin-top: 0;
  }

  /* planzee_filter @1023: egyoszlop + sidebar order – itt csak finomhangolás */
  .ws-summary-grid {
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  }

  .ws-day-column {
    grid-template-columns: 150px minmax(0, 1fr);
  }

  .ws-day-column__header {
    padding: 12px;
  }

  /* Nap + dátum egy blokkban: chip, elválasztó, tipográfia */
  .ws-day-column__title-row {
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    gap: 0;
    width: auto;
    max-width: 100%;
    min-width: 0;
    margin: 0 auto;
    padding: 0.42rem 0.95rem 0.48rem;
    border-radius: 999px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(236, 242, 255, 0.92));
    border: 1px solid rgba(196, 208, 226, 0.9);
    box-shadow:
      inset 0 1px 0 rgba(255, 255, 255, 0.95),
      0 1px 2px rgba(15, 23, 42, 0.04);
  }

  .ws-day-column__title-row .ws-day-column__name {
    font-size: 0.92rem;
    font-weight: 700;
    letter-spacing: -0.02em;
    line-height: 1.2;
    color: var(--ws-text);
  }

  .ws-day-column__title-row .ws-day-column__date {
    white-space: nowrap;
    flex-shrink: 0;
    padding-left: 0.65rem;
    margin-left: 0.65rem;
    border-left: 1px solid rgba(148, 163, 184, 0.45);
    font-size: 0.8rem;
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: 0.03em;
    color: var(--ws-text-muted);
    font-variant-numeric: tabular-nums;
  }

  /* Feladatszám és ikonok egy sorban */
  .ws-day-column__meta {
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 0.45rem 0.65rem;
    width: 100%;
  }

  /* Nap fejléc tooltipek: középre az ikonhoz + --ws-tip-nudge-x (JS) a viewport széléhez */
  .ws-day-column__header,
  .ws-day-column__meta,
  .ws-day-column__icons {
    overflow: visible;
  }

  .ws-day-column__unassigned.ws-tooltip-anchor::before,
  .ws-day-column__oncall.ws-tooltip-anchor::before {
    left: 50%;
    right: auto;
    transform: translate(calc(-50% + var(--ws-tip-nudge-x, 0px)), 2px);
  }

  .ws-day-column__unassigned.ws-tooltip-anchor:hover::before,
  .ws-day-column__unassigned.ws-tooltip-anchor:focus-visible::before,
  .ws-day-column__oncall.ws-tooltip-anchor:hover::before,
  .ws-day-column__oncall.ws-tooltip-anchor:focus-visible::before {
    transform: translate(calc(-50% + var(--ws-tip-nudge-x, 0px)), 0);
  }

  .ws-day-column__unassigned.ws-tooltip-anchor::after,
  .ws-day-column__oncall.ws-tooltip-anchor::after {
    left: 50%;
    right: auto;
    transform: translate(calc(-50% + var(--ws-tip-nudge-x, 0px)), 4px);
    max-width: min(360px, calc(100vw - 24px));
    width: max-content;
    box-sizing: border-box;
  }

  .ws-day-column__unassigned.ws-tooltip-anchor:hover::after,
  .ws-day-column__unassigned.ws-tooltip-anchor:focus-visible::after,
  .ws-day-column__oncall.ws-tooltip-anchor:hover::after,
  .ws-day-column__oncall.ws-tooltip-anchor:focus-visible::after {
    transform: translate(calc(-50% + var(--ws-tip-nudge-x, 0px)), 6px);
  }

  .ws-task-card__footerline {
    flex-direction: column;
    align-items: flex-start;
  }

  .ws-task-card__actions {
    justify-content: flex-start;
  }
}

@media (max-width: 760px) {
  /* Fejléc (glass-panel): ws_page_header_mobile.css */

  .work-schedule-page.ws-subpage.container-page {
    width: calc(100% - 16px);
    margin-top: 0;
  }

  .work-schedule-page.ws-subpage .headerbar,
  .work-schedule-page.ws-subpage .ws-search-results-header {
    flex-direction: column;
    align-items: stretch;
  }

  /* Alcím oldalak: cím balra; gombok alatta – elsődleges balra, vissza jobbra */
  .work-schedule-page.ws-subpage .ws-edit-header .headerbar,
  .work-schedule-page.ws-worksheets-page .ws-import-header .headerbar {
    align-items: stretch;
    gap: 12px;
  }

  .work-schedule-page.ws-subpage .ws-edit-header .headerbar-title,
  .work-schedule-page.ws-subpage .ws-edit-header .ws-subpage-title-row,
  .work-schedule-page.ws-worksheets-page .ws-import-header .headerbar-title,
  .work-schedule-page.ws-worksheets-page .ws-import-header .ws-subpage-title-row {
    justify-content: flex-start;
    align-self: stretch;
    width: 100%;
    text-align: left;
  }

  .work-schedule-page.ws-subpage .ws-edit-header .headerbar-actions,
  .work-schedule-page.ws-worksheets-page .ws-import-header .headerbar-actions {
    width: 100%;
    margin-left: 0;
    justify-content: flex-start;
    align-items: center;
    flex-wrap: nowrap;
    gap: 8px;
  }

  .work-schedule-page.ws-subpage .ws-edit-header .headerbar-actions .glass-btn.btn-back,
  .work-schedule-page.ws-worksheets-page .ws-import-header .headerbar-actions .glass-btn.btn-back {
    margin-left: auto;
  }

  /* Munkalapok lista: Excel import / export csak asztalon */
  .work-schedule-page.ws-worksheets-page:not(.ws-worksheets-show-page):not(.ws-import-page)
    .ws-import-header
    .headerbar-actions
    .btn-excel-import {
    display: none !important;
  }

  /* Munkalapok lista: cím + Vissza egy sorban */
  .work-schedule-page.ws-worksheets-page:not(.ws-worksheets-show-page):not(.ws-import-page)
    .ws-import-header
    .headerbar {
    flex-direction: row;
    align-items: center;
    gap: 10px;
  }

  .work-schedule-page.ws-worksheets-page:not(.ws-worksheets-show-page):not(.ws-import-page)
    .ws-import-header
    .headerbar-title,
  .work-schedule-page.ws-worksheets-page:not(.ws-worksheets-show-page):not(.ws-import-page)
    .ws-import-header
    .ws-subpage-title-row {
    flex: 1 1 auto;
    width: auto;
    min-width: 0;
    align-self: center;
  }

  .work-schedule-page.ws-worksheets-page:not(.ws-worksheets-show-page):not(.ws-import-page)
    .ws-import-header
    .headerbar-actions {
    width: auto;
    flex: 0 0 auto;
    margin-left: auto;
  }

  .work-schedule-page.ws-worksheets-page:not(.ws-worksheets-show-page):not(.ws-import-page)
    .ws-import-header
    .headerbar-actions
    .glass-btn.btn-back {
    margin-left: 0;
    white-space: nowrap;
  }

  .ws-summary-grid,
  .ws-shell-editor {
    display: none;
  }

  .ws-shell-main,
  .planzee-week-toolbar,
  .ws-group-panel,
  .ws-detail-drawer__panel {
    border-radius: 20px;
  }

  .ws-shell-main {
    padding: 10px;
  }

  .ws-shell-editor {
    padding: 16px;
  }

  /* Más oldalak toolbarja; a munkaterv dock sorait a 1023px szabály kezeli */
  .planzee-week-toolbar:not(.planzee-dock--weekly-with-filters) {
    padding: 10px;
  }

  body.work-schedule-redesign-page.planzee-page .planzee-sidebar .planzee-week-toolbar.planzee-dock--weekly-with-filters,
  #naptar-demo.work-schedule-redesign-page.planzee-page .planzee-sidebar .planzee-week-toolbar.planzee-dock--weekly-with-filters {
    padding: 0;
  }

  .ws-shell-sidebar-block:not(.ws-shell-sidebar-block--week):not(.ws-shell-sidebar-block--groups) {
    display: none;
  }

  .ws-shell-sidebar-block--week .ws-shell-eyebrow {
    display: none;
  }

  .ws-shell-mobile-block-toggle {
    display: inline-flex;
  }

  .ws-shell-sidebar-block--week[data-open="false"] .ws-shell-sidebar-block__body {
    display: none;
  }

  .ws-shell-section-heading,
  .ws-group-panel__header {
    flex-direction: column;
    align-items: stretch;
  }

  .ws-detail-drawer__actions {
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    padding-right: 4.5rem;
  }

  /* Drawer header: keep close button top-right; title block may wrap */
  .ws-detail-drawer__header {
    flex-direction: row;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
  }

  .ws-detail-drawer__header > div:first-child {
    min-width: 0;
    flex: 1;
  }

  .ws-detail-drawer__close {
    flex-shrink: 0;
  }

  .ws-summary-grid,
  .ws-detail-grid,
  .ws-detail-work-layout__row:not(.ws-detail-work-layout__row--full) {
    grid-template-columns: 1fr;
  }

  .ws-day-column {
    grid-template-columns: 1fr;
    min-width: 0;
  }

  .ws-day-column__header {
    border-right: 0;
    border-bottom: 1px solid var(--ws-border);
    border-top-left-radius: 16px;
    border-top-right-radius: 16px;
    border-bottom-left-radius: 0;
  }

  .ws-day-column__title-row {
    padding: 0.36rem 0.8rem 0.4rem;
  }

  .ws-day-column__title-row .ws-day-column__name {
    font-size: 0.88rem;
  }

  .ws-day-column__title-row .ws-day-column__date {
    font-size: 0.76rem;
    padding-left: 0.55rem;
    margin-left: 0.55rem;
  }

  .ws-day-column__meta {
    gap: 0.4rem 0.55rem;
  }

  .ws-day-column__unassigned.ws-tooltip-anchor::before,
  .ws-day-column__oncall.ws-tooltip-anchor::before {
    display: none;
  }

  .ws-day-column__body {
    grid-template-columns: 1fr;
  }

  .ws-task-card {
    padding: 10px;
  }

  .ws-task-card__summary {
    gap: 6px 8px;
  }

  .ws-task-card__summary > .ws-task-card__title {
    flex-basis: 100%;
    min-width: 0;
  }

  .ws-task-card__stat--address .ws-task-card__stat-text {
    display: none;
  }

  .ws-task-card__stat--address {
    padding: 0 8px;
  }

  .ws-task-card__participants-row {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
  }

  .ws-detail-drawer__panel {
    inset: auto 8px 8px 8px;
    width: auto;
    top: calc(var(--nav-height, 56px) + 8px);
  }
}

/* ---- Lebegő tooltip (jelenléti admin / planzee / dashboard vizuális nyelve) ---- */
.ws-floating-tooltip {
  position: fixed;
  left: 0;
  top: 0;
  width: max-content;
  max-width: min(18rem, calc(100vw - 20px));
  box-sizing: border-box;
  background: rgba(51, 65, 85, 0.96);
  color: #f8fafc;
  border: 1px solid rgba(148, 163, 184, 0.35);
  border-radius: 0.65rem;
  box-shadow: 0 10px 30px rgba(15, 23, 42, 0.22);
  padding: 0.5rem 0.65rem;
  font-size: 0.72rem;
  line-height: 1.35;
  font-weight: 500;
  text-align: left;
  white-space: pre-line;
  word-break: break-word;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(3px);
  transition: opacity 0.14s ease, transform 0.14s ease, visibility 0.14s ease;
  z-index: 12000;
}

.ws-floating-tooltip.is-visible {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

@media (hover: hover) and (pointer: fine) {
  .planzee-weekly-page [data-ws-tooltip],
  .work-schedule-page [data-ws-tooltip] {
    cursor: help;
  }
}

/* Régi ::after / ::before tooltipp (data-tooltip) kikapcsolása — tartalom a lebegő tooltipben */
.ws-tooltip-anchor::before,
.ws-tooltip-anchor::after,
.ws-day-column__unassigned.ws-tooltip-anchor::before,
.ws-day-column__unassigned.ws-tooltip-anchor::after,
.ws-day-column__oncall.ws-tooltip-anchor::before,
.ws-day-column__oncall.ws-tooltip-anchor::after {
  display: none !important;
  content: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
}

.ws-tooltip-anchor:hover::before,
.ws-tooltip-anchor:hover::after,
.ws-tooltip-anchor:focus-visible::before,
.ws-tooltip-anchor:focus-visible::after,
.ws-day-column__unassigned.ws-tooltip-anchor:hover::before,
.ws-day-column__unassigned.ws-tooltip-anchor:hover::after,
.ws-day-column__unassigned.ws-tooltip-anchor:focus-visible::before,
.ws-day-column__unassigned.ws-tooltip-anchor:focus-visible::after,
.ws-day-column__oncall.ws-tooltip-anchor:hover::before,
.ws-day-column__oncall.ws-tooltip-anchor:hover::after,
.ws-day-column__oncall.ws-tooltip-anchor:focus-visible::before,
.ws-day-column__oncall.ws-tooltip-anchor:focus-visible::after {
  display: none !important;
  content: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
}

.ws-chip--status-in_progress { background: rgba(37, 99, 235, 0.12); color: #1d4ed8; }
.ws-chip--status-suspended { background: rgba(234, 88, 12, 0.12); color: #c2410c; }
.ws-chip--status-completed { background: rgba(22, 163, 74, 0.12); color: #15803d; }
.ws-chip--sheet { background: rgba(100, 116, 139, 0.12); color: #475569; max-width: 140px; overflow: hidden; text-overflow: ellipsis; }
.ws-chip--due-overdue { background: rgba(220, 38, 38, 0.12); color: #b91c1c; }
.ws-chip--due-upcoming { background: rgba(234, 179, 8, 0.15); color: #a16207; }
.ws-chip--due-after_due { background: rgba(249, 115, 22, 0.12); color: #c2410c; }
.ws-task-card--status-in_progress { border-left: 3px solid #2563eb; }
.ws-task-card--status-suspended { border-left: 3px solid #ea580c; }
.ws-task-card--status-completed { border-left: 3px solid #16a34a; }
/* Munkalapok: kompakt szűrősáv */
.work-schedule-page.ws-worksheets-page .card-white--toolbar {
  padding: 12px 14px;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-filter-bar {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 10px 12px;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-filter-bar__field {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-filter-bar__field--grow {
  flex: 1 1 240px;
  min-width: min(100%, 200px);
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-filter-bar__field--select {
  flex: 0 1 168px;
  width: 168px;
  max-width: 100%;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-filter-bar__field label {
  margin: 0;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: var(--ws-text-muted, #64748b);
  line-height: 1.2;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-create-form__row,
.work-schedule-page.ws-worksheets-page .ws-worksheets-filter-bar {
  min-width: 0;
  max-width: 100%;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-filter-bar__field {
  max-width: 100%;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-filter-bar__field input[type="search"],
.work-schedule-page.ws-worksheets-page .ws-worksheets-filter-bar__field input[type="text"],
.work-schedule-page.ws-worksheets-page .ws-worksheets-filter-bar__field input[type="date"],
.work-schedule-page.ws-worksheets-page .ws-worksheets-filter-bar__field select,
.work-schedule-page.ws-worksheets-page .ws-worksheets-filter-bar__field textarea {
  width: 100%;
  max-width: 100%;
  height: 34px;
  min-height: 34px;
  margin: 0;
  padding: 0 10px;
  box-sizing: border-box;
  font-size: 13px;
  line-height: 1.25;
  color: var(--ws-text, #0f172a);
  background: #fff;
  border: 1px solid rgba(203, 213, 225, 0.95);
  border-radius: 10px;
  box-shadow: inset 0 1px 2px rgba(15, 23, 42, 0.04);
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-filter-bar__field input[type="search"]::placeholder,
.work-schedule-page.ws-worksheets-page .ws-worksheets-filter-bar__field input[type="text"]::placeholder,
.work-schedule-page.ws-worksheets-page .ws-worksheets-filter-bar__field textarea::placeholder {
  color: #94a3b8;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-filter-bar__field textarea {
  height: auto;
  min-height: 52px;
  padding: 8px 10px;
  resize: vertical;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-filter-bar__field input[type="date"] {
  color-scheme: light;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-filter-bar__field input[type="search"]:focus,
.work-schedule-page.ws-worksheets-page .ws-worksheets-filter-bar__field input[type="text"]:focus,
.work-schedule-page.ws-worksheets-page .ws-worksheets-filter-bar__field input[type="date"]:focus,
.work-schedule-page.ws-worksheets-page .ws-worksheets-filter-bar__field select:focus,
.work-schedule-page.ws-worksheets-page .ws-worksheets-filter-bar__field textarea:focus {
  outline: none;
  border-color: rgba(37, 99, 235, 0.55);
  box-shadow:
    inset 0 1px 2px rgba(15, 23, 42, 0.04),
    0 0 0 3px rgba(37, 99, 235, 0.12);
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-filter-bar__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  flex: 0 0 auto;
  margin-left: auto;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-filter-bar__actions .btn.btn-search-action {
  min-height: 34px;
  height: 34px;
  padding: 0 16px;
  font-size: 13px;
  border-radius: 10px;
  white-space: nowrap;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-filter-bar__clear {
  font-size: 12px;
  font-weight: 600;
  color: var(--ws-text-muted, #64748b);
  text-decoration: none;
  padding: 6px 4px;
  white-space: nowrap;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-filter-bar__clear:hover {
  color: var(--ws-primary, #2563eb);
  text-decoration: underline;
}

/* Munkalapok: új munkalap űrlap */
.work-schedule-page.ws-worksheets-page .ws-worksheets-create-form__head {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 4px 10px;
  margin-bottom: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid rgba(226, 232, 240, 0.95);
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-create-form__title {
  margin: 0;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: -0.01em;
  color: var(--ws-text, #0f172a);
  line-height: 1.3;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-create-form__hint {
  margin: 0;
  font-size: 12px;
  line-height: 1.35;
  color: var(--ws-text-muted, #64748b);
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-create-form__hint::before {
  content: "·";
  margin-right: 6px;
  color: #cbd5e1;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-required {
  color: #dc2626;
  font-weight: 700;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-create-form__row {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 10px 12px;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-create-form__row + .ws-worksheets-create-form__row {
  margin-top: 10px;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-create-form__field--title {
  flex: 2 1 260px;
  min-width: 0;
  max-width: 100%;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-create-form__field--ref {
  flex: 1 1 148px;
  width: 148px;
  min-width: 0;
  max-width: 100%;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-create-form__field--date {
  flex: 0 0 152px;
  width: 152px;
  max-width: 100%;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-create-form__field--full {
  flex: 1 1 100%;
  width: 100%;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-create-form__actions {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  margin-top: 10px;
  padding-top: 2px;
}

.ws-worksheet-create-modal .ws-worksheets-create-form__actions {
  margin-top: 14px;
  padding-top: 4px;
}

.ws-worksheet-create-modal .ws-task-modal__body {
  padding-top: 4px;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-create-form__actions .btn.btn-search-action {
  min-height: 34px;
  height: 34px;
  padding: 0 18px;
  font-size: 13px;
  border-radius: 10px;
}

@media (max-width: 720px) {
  .work-schedule-page.ws-worksheets-page .ws-worksheets-filter-bar__field--select {
    flex: 1 1 calc(50% - 6px);
    width: auto;
  }

  .work-schedule-page.ws-worksheets-page .ws-worksheets-filter-bar__actions {
    width: 100%;
    margin-left: 0;
    justify-content: flex-end;
  }

  .work-schedule-page.ws-worksheets-page .ws-worksheets-create-form__field--ref,
  .work-schedule-page.ws-worksheets-page .ws-worksheets-create-form__field--date {
    flex: 1 1 calc(50% - 6px);
    width: auto;
  }

  .work-schedule-page.ws-worksheets-page .ws-worksheets-create-form__hint::before {
    display: none;
  }

  .work-schedule-page.ws-worksheets-page .ws-worksheets-create-form__hint {
    flex: 1 1 100%;
  }
}

/* Munkalapok: kompakt lista táblázat */
.work-schedule-page.ws-worksheets-page .ws-worksheets-list__head {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: space-between;
  gap: 6px 12px;
  margin-bottom: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid rgba(226, 232, 240, 0.95);
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-list__title {
  margin: 0;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: -0.01em;
  color: var(--ws-text, #0f172a);
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-list__head-meta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-list__export {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 28px;
  padding: 0 8px 0 6px;
  border-radius: 8px;
  color: var(--ws-text-muted, #64748b);
  background: rgba(255, 255, 255, 0.65);
  border: 1px solid rgba(148, 163, 184, 0.35);
  text-decoration: none;
  transition: color 0.15s ease, background 0.15s ease, border-color 0.15s ease;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-list__export-label {
  font-size: 11px;
  font-weight: 600;
  line-height: 1;
  white-space: nowrap;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-list__export:hover {
  color: #15803d;
  background: rgba(220, 252, 231, 0.85);
  border-color: rgba(34, 197, 94, 0.45);
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-list__meta {
  font-size: 12px;
  font-weight: 600;
  color: var(--ws-text-muted, #64748b);
  font-variant-numeric: tabular-nums;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-list__head--with-action {
  align-items: center;
  justify-content: space-between;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-list__head-text {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 2px;
  min-width: 0;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-list__legend {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
  margin: 0;
  font-size: 11px;
  color: var(--ws-text-muted, #64748b);
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-list__legend-item {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-list__legend-item::before {
  content: '';
  width: 12px;
  height: 12px;
  border-radius: 3px;
  border: 1px solid rgba(148, 163, 184, 0.45);
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-list__legend-item--upcoming::before {
  background: #fef9c3;
  border-color: #fde047;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-list__legend-item--overdue::before {
  background: #fee2e2;
  border-color: #fca5a5;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-add-task-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  flex-shrink: 0;
  min-height: 34px;
  height: 34px;
  padding: 0 14px;
  font-size: 13px;
  border-radius: 10px;
  white-space: nowrap;
}

.work-schedule-page.ws-worksheets-show-page .ws-worksheets-task-modal-week .ws-import-week-label {
  display: block;
  margin-bottom: 4px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: var(--ws-text-muted, #64748b);
}

.work-schedule-page.ws-worksheets-show-page .ws-worksheets-task-modal-week .ws-import-week-select {
  width: 100%;
  max-width: 280px;
  height: 34px;
  min-height: 34px;
  padding: 0 10px;
  font-size: 13px;
  border-radius: 10px;
  border: 1px solid rgba(203, 213, 225, 0.95);
  background: #fff;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-list__table-wrap {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-list-table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
  font-size: 13px;
  line-height: 1.25;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-list-table th {
  padding: 6px 10px;
  text-align: left;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: var(--ws-text-muted, #64748b);
  background: rgba(241, 245, 249, 0.85);
  border-bottom: 1px solid rgba(226, 232, 240, 0.95);
  white-space: nowrap;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-list-table td {
  padding: 7px 10px;
  vertical-align: middle;
  border-bottom: 1px solid rgba(241, 245, 249, 0.95);
  background: #fff;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-list-table tbody tr:last-child td {
  border-bottom: 0;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-list-table tbody tr:hover td {
  background: rgba(239, 246, 255, 0.65);
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-list-table__row--due-upcoming td {
  background: #fefce8;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-list-table__row--due-overdue td {
  background: #fef2f2;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-list-table__row--due-upcoming:hover td {
  background: #fef9c3;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-list-table__row--due-overdue:hover td {
  background: #fee2e2;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-list-table__col-title {
  width: 34%;
  min-width: 140px;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-list-table__col-ref {
  width: 18%;
  min-width: 88px;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-list-table__col-due {
  width: 13%;
  min-width: 96px;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-list-table__col-status {
  width: 14%;
  min-width: 88px;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-list-table__col-count {
  width: 72px;
  text-align: center;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-list-table__col-act {
  width: 44px;
  text-align: center;
  overflow: visible;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-list-table th.ws-worksheets-list-table__col-count {
  text-align: center;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-list-table__link {
  display: block;
  font-weight: 600;
  color: #2563eb;
  text-decoration: none;
  overflow: hidden;
  text-overflow: ellipsis;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-list-table__link:hover {
  color: #1d4ed8;
  text-decoration: underline;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-list-table__text {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  color: var(--ws-text-soft, #334155);
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-list-table__due {
  font-variant-numeric: tabular-nums;
  color: var(--ws-text, #0f172a);
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-list-table .ws-chip--compact {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  max-width: 100%;
  min-height: 22px;
  padding: 3px 10px;
  font-size: 11px;
  line-height: 1.2;
  text-align: center;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  vertical-align: middle;
  box-sizing: border-box;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-task-count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 1.625rem;
  height: 1.5rem;
  padding: 0 7px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  line-height: 1;
  color: #1d4ed8;
  background: rgba(37, 99, 235, 0.1);
  border: 1px solid rgba(37, 99, 235, 0.12);
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-task-count.is-zero {
  font-weight: 600;
  color: #64748b;
  background: rgba(148, 163, 184, 0.12);
  border-color: rgba(148, 163, 184, 0.2);
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-list-table__go {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  margin: 0 auto;
  border-radius: 8px;
  color: #64748b;
  text-decoration: none;
  transition: background 0.15s ease, color 0.15s ease;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-list-table__go:hover {
  color: #2563eb;
  background: rgba(37, 99, 235, 0.08);
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-list-table__col-act--readonly {
  pointer-events: none;
  cursor: default;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-list-table tbody tr:hover td.ws-worksheets-list-table__col-act--readonly {
  background: #fff;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-list-table__row--due-upcoming:hover td.ws-worksheets-list-table__col-act--readonly {
  background: #fefce8;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-list-table__row--due-overdue:hover td.ws-worksheets-list-table__col-act--readonly {
  background: #fef2f2;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-list-table__empty {
  padding: 14px 10px !important;
  text-align: center;
  white-space: normal;
  color: var(--ws-text-muted, #64748b);
  font-size: 13px;
  background: rgba(248, 250, 252, 0.8) !important;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-hub-toolbar__card {
  padding: 0;
  overflow: hidden;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-hub-toolbar__head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 10px 12px;
  padding: 12px 14px 0;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-hub-toolbar__head-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-left: auto;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-hub-toolbar__head-actions .btn-excel-import {
  min-height: 32px;
  padding: 0 14px;
  font-size: 13px;
  border-radius: 10px;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-hub-toolbar__tabs {
  display: inline-flex;
  gap: 2px;
  padding: 3px;
  background: rgba(241, 245, 249, 0.95);
  border: 1px solid rgba(226, 232, 240, 0.9);
  border-radius: 10px;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-hub-toolbar__tab {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 32px;
  padding: 0 16px;
  border-radius: 8px;
  font-size: 13px;
  font-weight: 600;
  color: var(--ws-text-muted, #64748b);
  text-decoration: none;
  transition: background 0.15s ease, color 0.15s ease, box-shadow 0.15s ease;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-hub-toolbar__tab:hover {
  color: #1e40af;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-hub-toolbar__tab.is-active {
  color: #1d4ed8;
  background: #fff;
  box-shadow: 0 1px 3px rgba(15, 23, 42, 0.08);
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-hub-toolbar__filters {
  padding: 12px 14px 14px;
  border-top: 1px solid rgba(226, 232, 240, 0.85);
  margin-top: 12px;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-hub-toolbar__filters .ws-worksheets-filter-bar {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  gap: 10px;
  align-items: stretch;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-hub-toolbar__filters .ws-worksheets-filter-bar > .ws-worksheets-filter-bar__field--grow {
  width: 100%;
  flex: none;
  min-width: 0;
}

.work-schedule-page.ws-worksheets-tasks-page .ws-worksheets-hub-toolbar__head {
  padding-bottom: 12px;
}

.work-schedule-page.ws-worksheets-tasks-page .ws-worksheets-hub-toolbar__filters {
  margin-top: 0;
  padding-top: 0;
}

.work-schedule-page.ws-worksheets-tasks-page .ws-worksheets-hub-toolbar__filters .ws-worksheets-filter-bar {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 10px;
}

.work-schedule-page.ws-worksheets-tasks-page .ws-worksheets-hub-toolbar__filters .ws-worksheets-filter-bar__top-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 12px;
  width: 100%;
}

.work-schedule-page.ws-worksheets-tasks-page .ws-worksheets-hub-toolbar__filters .ws-worksheets-filter-bar__top-row .ws-worksheets-filter-bar__field--grow {
  flex: none;
  width: auto;
  min-width: 0;
}

.work-schedule-page.ws-worksheets-tasks-page .ws-worksheets-filter-bar__field--source-inline {
  width: auto;
  min-width: 0;
  max-width: 100%;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-hub-toolbar__filters .ws-worksheets-filter-bar__row {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr)) auto;
  gap: 10px 12px;
  align-items: end;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-hub-toolbar__filters .ws-worksheets-filter-bar__field--select {
  flex: none;
  width: auto;
  min-width: 0;
}

.work-schedule-page.ws-worksheets-page .ws-worksheets-hub-toolbar__filters .ws-worksheets-filter-bar__actions {
  margin-left: 0;
  justify-content: flex-end;
  white-space: nowrap;
}

.work-schedule-page.ws-worksheets-tasks-page .ws-worksheets-hub-toolbar__filters .ws-worksheets-filter-bar__row {
  grid-template-columns: repeat(5, minmax(0, 1fr)) auto;
}

.work-schedule-page.ws-worksheets-tasks-page .ws-worksheets-filter-bar__source-row {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.work-schedule-page.ws-worksheets-tasks-page .ws-worksheets-filter-bar__source-select {
  width: 132px;
  min-width: 108px;
  max-width: 100%;
}

.work-schedule-page.ws-worksheets-tasks-page .ws-worksheets-filter-bar__save-default {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  flex: 0 0 auto;
  height: 34px;
  margin: 0;
  padding: 0 10px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.01em;
  color: var(--ws-text-muted, #64748b);
  background: rgba(248, 250, 252, 0.95);
  border: 1px solid rgba(148, 163, 184, 0.38);
  border-radius: 8px;
  cursor: pointer;
  user-select: none;
  white-space: nowrap;
  transition: border-color 0.15s ease, color 0.15s ease, background 0.15s ease;
}

.work-schedule-page.ws-worksheets-tasks-page .ws-worksheets-filter-bar__save-default:hover {
  border-color: rgba(37, 99, 235, 0.4);
  color: var(--ws-primary, #2563eb);
  background: rgba(255, 255, 255, 0.98);
}

.work-schedule-page.ws-worksheets-tasks-page .ws-worksheets-filter-bar__save-default:has(input:checked) {
  border-color: rgba(37, 99, 235, 0.5);
  color: var(--ws-primary, #2563eb);
  background: rgba(37, 99, 235, 0.08);
}

.work-schedule-page.ws-worksheets-tasks-page .ws-worksheets-filter-bar__save-default input[type="checkbox"] {
  width: 13px;
  height: 13px;
  margin: 0;
  flex-shrink: 0;
  accent-color: var(--ws-primary, #2563eb);
}

.work-schedule-page.ws-worksheets-tasks-page .ws-worksheets-filter-bar__save-default-text {
  line-height: 1;
}

.work-schedule-page.ws-worksheets-tasks-page .ws-worksheets-list-table__standalone {
  color: var(--ws-text-muted, #64748b);
  font-style: italic;
}

.work-schedule-page.ws-worksheets-tasks-page .ws-worksheets-hub-pagination {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px 16px;
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid rgba(148, 163, 184, 0.22);
}

.work-schedule-page.ws-worksheets-tasks-page .ws-worksheets-hub-pagination__info {
  font-size: 12px;
  color: var(--ws-text-muted, #64748b);
}

.work-schedule-page.ws-worksheets-tasks-page .ws-worksheets-hub-pagination__info strong {
  color: var(--ws-text, #1e293b);
}

.work-schedule-page.ws-worksheets-tasks-page .ws-worksheets-hub-pagination__per-page {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
}

.work-schedule-page.ws-worksheets-tasks-page .ws-worksheets-hub-pagination__per-page label {
  margin: 0;
  font-size: 11px;
  font-weight: 600;
  color: var(--ws-text-muted, #64748b);
  white-space: nowrap;
}

.work-schedule-page.ws-worksheets-tasks-page .ws-worksheets-hub-pagination__per-page-select {
  height: 32px;
  min-width: 88px;
  padding: 0 8px;
  font-size: 12px;
  border-radius: 8px;
  border: 1px solid rgba(148, 163, 184, 0.45);
  background: rgba(255, 255, 255, 0.85);
  color: var(--ws-text, #1e293b);
}

.work-schedule-page.ws-worksheets-tasks-page .ws-worksheets-hub-pagination__links {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
}

.work-schedule-page.ws-worksheets-tasks-page .ws-worksheets-hub-pagination__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2rem;
  height: 32px;
  padding: 0 10px;
  font-size: 12px;
  font-weight: 600;
  border-radius: 8px;
  border: 1px solid rgba(148, 163, 184, 0.4);
  background: rgba(255, 255, 255, 0.75);
  color: var(--ws-text, #1e293b);
  text-decoration: none;
  transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.work-schedule-page.ws-worksheets-tasks-page .ws-worksheets-hub-pagination__btn:hover {
  border-color: rgba(37, 99, 235, 0.45);
  color: var(--ws-primary, #2563eb);
  background: rgba(255, 255, 255, 0.95);
}

.work-schedule-page.ws-worksheets-tasks-page .ws-worksheets-hub-pagination__btn--current {
  background: rgba(37, 99, 235, 0.12);
  border-color: rgba(37, 99, 235, 0.45);
  color: var(--ws-primary, #2563eb);
  cursor: default;
}

.work-schedule-page.ws-worksheets-tasks-page .ws-worksheets-hub-pagination__btn--current:hover {
  background: rgba(37, 99, 235, 0.12);
  color: var(--ws-primary, #2563eb);
}

.work-schedule-page.ws-worksheets-tasks-page .ws-worksheets-hub-pagination__btn--disabled {
  color: #94a3b8;
  cursor: not-allowed;
}

.work-schedule-page.ws-worksheets-tasks-page .ws-worksheets-hub-pagination__btn--disabled:hover {
  border-color: rgba(148, 163, 184, 0.4);
  color: #94a3b8;
  background: rgba(255, 255, 255, 0.75);
}

@media (max-width: 1100px) {
  .work-schedule-page.ws-worksheets-page .ws-worksheets-hub-toolbar__filters .ws-worksheets-filter-bar__row {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .work-schedule-page.ws-worksheets-tasks-page .ws-worksheets-hub-toolbar__filters .ws-worksheets-filter-bar__row {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .work-schedule-page.ws-worksheets-page .ws-worksheets-hub-toolbar__filters .ws-worksheets-filter-bar__actions {
    grid-column: 1 / -1;
    justify-self: end;
  }
}

@media (max-width: 640px) {
  .work-schedule-page.ws-worksheets-tasks-page .ws-worksheets-hub-toolbar__filters .ws-worksheets-filter-bar__top-row {
    grid-template-columns: 1fr;
  }

  .work-schedule-page.ws-worksheets-tasks-page .ws-worksheets-filter-bar__source-row {
    width: 100%;
  }

  .work-schedule-page.ws-worksheets-tasks-page .ws-worksheets-filter-bar__source-select {
    flex: 1 1 auto;
    width: auto;
  }

  .work-schedule-page.ws-worksheets-page .ws-worksheets-hub-toolbar__filters .ws-worksheets-filter-bar__row {
    grid-template-columns: 1fr;
  }

  .work-schedule-page.ws-worksheets-page .ws-worksheets-hub-toolbar__filters .ws-worksheets-filter-bar__actions {
    justify-self: stretch;
    justify-content: flex-start;
  }
}

.work-schedule-page.ws-worksheets-tasks-page .ws-worksheets-list-table--all-tasks .ws-worksheets-tasks-table__col-due {
  width: 96px;
  min-width: 88px;
  white-space: nowrap;
}

.work-schedule-page.ws-worksheets-tasks-page .ws-worksheets-list-table--all-tasks .ws-worksheets-tasks-table__col-name {
  width: 24%;
  min-width: 120px;
}

.work-schedule-page.ws-worksheets-tasks-page .ws-worksheets-list-table--all-tasks .ws-worksheets-tasks-table__col-sheet {
  width: 22%;
  min-width: 110px;
}

.work-schedule-page.ws-worksheets-tasks-page .ws-worksheets-list-table--all-tasks .ws-worksheets-tasks-table__col-date {
  width: 88px;
  min-width: 80px;
  white-space: nowrap;
}

.work-schedule-page.ws-worksheets-tasks-page .ws-worksheets-list-table--all-tasks .ws-worksheets-tasks-table__col-time {
  width: 72px;
  min-width: 64px;
}

.work-schedule-page.ws-worksheets-tasks-page .ws-worksheets-list-table--all-tasks .ws-worksheets-tasks-table__col-status {
  width: 108px;
  min-width: 96px;
}

@media (max-width: 640px) {
  .work-schedule-page.ws-worksheets-page .ws-worksheets-list-table {
    table-layout: auto;
    min-width: 520px;
  }

  .work-schedule-page.ws-worksheets-tasks-page .ws-worksheets-list-table {
    min-width: 720px;
  }
}

/* Munkalap részlet */
.work-schedule-page.ws-worksheets-show-page .ws-worksheets-show-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 16px;
}

.work-schedule-page.ws-worksheets-show-page .ws-worksheets-show-meta__item {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
}

.work-schedule-page.ws-worksheets-show-page .ws-worksheets-show-meta__label {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: var(--ws-text-muted, #64748b);
  line-height: 1.2;
}

.work-schedule-page.ws-worksheets-show-page .ws-worksheets-show-meta__value {
  font-size: 13px;
  font-weight: 600;
  color: var(--ws-text, #0f172a);
  line-height: 1.25;
  max-width: min(280px, 42vw);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.work-schedule-page.ws-worksheets-show-page .ws-worksheets-show-meta__value--date {
  font-variant-numeric: tabular-nums;
}

.work-schedule-page.ws-worksheets-show-page .ws-worksheets-show-meta__item--count .ws-worksheets-task-count {
  margin: 0;
}

.work-schedule-page.ws-worksheets-show-page .ws-worksheets-show-meta__desc {
  margin: 10px 0 0;
  padding-top: 10px;
  border-top: 1px solid rgba(226, 232, 240, 0.95);
  font-size: 13px;
  line-height: 1.45;
  color: var(--ws-text-soft, #334155);
  overflow-wrap: anywhere;
  word-break: break-word;
}

.work-schedule-page.ws-worksheets-show-page .ws-worksheets-create-form__field--status {
  flex: 0 0 148px;
  width: 148px;
  max-width: 100%;
}

.work-schedule-page.ws-worksheets-show-page .ws-worksheets-create-form__actions--edit {
  margin-top: 12px;
  padding-top: 0;
  padding-bottom: 12px;
}

.work-schedule-page.ws-worksheets-show-page .ws-worksheets-create-form__actions--between {
  justify-content: flex-end;
}

.work-schedule-page.ws-worksheets-show-page .ws-worksheets-edit-footer {
  padding-bottom: 12px;
}

.work-schedule-page.ws-worksheets-show-page .ws-worksheets-delete-form {
  margin: 0;
  padding-top: 12px;
  border-top: 1px solid rgba(226, 232, 240, 0.95);
}

.work-schedule-page.ws-worksheets-show-page .ws-worksheets-delete-form__btn {
  margin: 0;
  padding: 6px 2px;
  border: 0;
  background: none;
  font-size: 12px;
  font-weight: 600;
  color: #dc2626;
  cursor: pointer;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.work-schedule-page.ws-worksheets-show-page .ws-worksheets-delete-form__btn:hover {
  color: #b91c1c;
}

.work-schedule-page.ws-worksheets-show-page .ws-worksheets-show-footnote,
.work-schedule-page.ws-worksheets-tasks-page .ws-worksheets-show-footnote {
  margin: 8px 0 0;
  font-size: 11px;
  line-height: 1.45;
  color: var(--ws-text-muted, #64748b);
}

.work-schedule-page.ws-worksheets-show-page .ws-worksheets-show-footnote a,
.work-schedule-page.ws-worksheets-tasks-page .ws-worksheets-show-footnote a {
  color: #2563eb;
  font-weight: 600;
  text-decoration: none;
}

.work-schedule-page.ws-worksheets-show-page .ws-worksheets-show-footnote a:hover,
.work-schedule-page.ws-worksheets-tasks-page .ws-worksheets-show-footnote a:hover {
  text-decoration: underline;
}

.work-schedule-page.ws-worksheets-show-page .ws-worksheets-list-table--tasks .ws-worksheets-tasks-table__col-date {
  width: 104px;
  min-width: 88px;
}

.work-schedule-page.ws-worksheets-show-page .ws-worksheets-list-table--tasks .ws-worksheets-tasks-table__col-name {
  width: auto;
  min-width: 160px;
}

.work-schedule-page.ws-worksheets-show-page .ws-worksheets-list-table--tasks .ws-worksheets-tasks-table__col-time {
  width: 88px;
  min-width: 72px;
}

.work-schedule-page.ws-worksheets-show-page .ws-worksheets-list-table--tasks .ws-worksheets-tasks-table__col-status {
  width: 120px;
  min-width: 96px;
  text-align: left;
  vertical-align: middle;
}

.work-schedule-page.ws-worksheets-show-page .ws-worksheets-list-table__task-name {
  font-weight: 600;
  color: var(--ws-text, #0f172a);
}

@media (max-width: 720px) {
  .work-schedule-page.ws-worksheets-show-page .ws-worksheets-create-form__field--status {
    flex: 1 1 calc(50% - 6px);
    width: auto;
  }
}

@media (max-width: 640px) {
  .work-schedule-page.ws-worksheets-show-page .ws-worksheets-list-table--tasks {
    min-width: 480px;
  }
}
.ws-status-form {
  display: grid;
  gap: 10px;
  margin-top: 4px;
}

.ws-status-form__row,
.ws-status-form__change {
  display: grid;
  gap: 6px;
}

.ws-status-form__select {
  width: 100%;
  min-height: 40px;
  padding: 8px 36px 8px 12px;
  border-radius: 10px;
  border: 1px solid rgba(22, 163, 74, 0.35);
  background-color: #fff;
  font-size: 14px;
  box-sizing: border-box;
}

.ws-status-form__note {
  display: block;
  padding-top: 8px;
  border-top: 1px solid rgba(22, 163, 74, 0.16);
}

.ws-status-form__textarea {
  display: block;
  width: 100%;
  min-height: 72px;
  margin-top: 6px;
  padding: 10px 12px;
  border-radius: 10px;
  border: 1px solid rgba(22, 163, 74, 0.3);
  background: #fff;
  font-size: 14px;
  line-height: 1.45;
  resize: vertical;
  box-sizing: border-box;
}

.ws-status-form__submit {
  justify-self: start;
}

/* Fiók: kompakt állapotváltás */
.ws-detail-block--status {
  padding: 12px 14px;
}

.ws-status-drawer {
  display: grid;
  gap: 0;
}

.ws-status-drawer__head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 10px;
}

.ws-status-drawer__label {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--ws-text-soft, #64748b);
  flex: 0 0 auto;
}

.ws-status-drawer__head .ws-detail-status {
  flex: 1 1 auto;
  min-width: 0;
}

.ws-detail-drawer .ws-detail-status-form {
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px solid var(--ws-border, #e2e8f0);
}

.ws-status-form--drawer {
  display: grid;
  gap: 8px;
  margin-top: 0;
}

.ws-status-form--drawer .ws-status-form__toolbar {
  display: flex;
  align-items: stretch;
  gap: 8px;
}

.ws-status-form--drawer .ws-status-form__select {
  flex: 1 1 auto;
  min-width: 0;
  min-height: 36px;
  padding: 6px 32px 6px 10px;
  border-radius: 8px;
  border: 1px solid var(--ws-border, #e2e8f0);
  background-color: #fff;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 10px center;
  appearance: none;
  font-size: 13px;
  font-weight: 500;
  color: var(--ws-text);
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.ws-status-form--drawer .ws-status-form__select:focus {
  outline: none;
  border-color: #16a34a;
  box-shadow: 0 0 0 2px rgba(34, 197, 94, 0.16);
}

.ws-status-form--drawer .ws-status-form__submit {
  flex: 0 0 auto;
  margin: 0;
  min-height: 36px;
  padding: 0 14px;
  border-radius: 8px;
  border: 1px solid rgba(22, 163, 74, 0.45);
  background: linear-gradient(180deg, #22c55e 0%, #16a34a 100%);
  color: #fff;
  font-size: 13px;
  font-weight: 600;
  line-height: 1;
  cursor: pointer;
  white-space: nowrap;
  transition: filter 0.15s ease, box-shadow 0.15s ease;
}

.ws-status-form--drawer .ws-status-form__submit:hover {
  filter: brightness(1.05);
  box-shadow: 0 2px 8px rgba(22, 163, 74, 0.28);
}

.ws-status-form--drawer .ws-status-form__textarea {
  min-height: 52px;
  margin-top: 0;
  padding: 8px 10px;
  border-radius: 8px;
  border: 1px solid var(--ws-border, #e2e8f0);
  background: var(--ws-surface, #f8fafc);
  font-size: 13px;
  line-height: 1.4;
  resize: vertical;
}

.ws-status-form--drawer .ws-status-form__textarea:focus {
  outline: none;
  border-color: #16a34a;
  background: #fff;
  box-shadow: 0 0 0 2px rgba(34, 197, 94, 0.12);
}

.work-schedule-page.ws-edit-page .ws-edit-status-block {
  margin-top: 4px;
  padding: 14px 16px;
  border-radius: 12px;
  border: 1px solid rgba(22, 163, 74, 0.28);
  background: linear-gradient(165deg, rgba(240, 253, 244, 0.98) 0%, rgba(220, 252, 231, 0.55) 100%);
  box-shadow: 0 1px 2px rgba(22, 101, 52, 0.06);
}

.work-schedule-page.ws-edit-page .ws-edit-status-block--compact {
  padding: 8px 12px;
}

.work-schedule-page.ws-edit-page .ws-edit-status-row {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: 8px 10px;
}

.work-schedule-page.ws-edit-page .ws-edit-status-row__sep {
  color: #86efac;
  font-weight: 600;
  user-select: none;
}

.work-schedule-page.ws-edit-page .ws-edit-status-row .ws-edit-status-block__field-label {
  display: inline;
  margin: 0;
  flex: 0 0 auto;
  white-space: nowrap;
}

.work-schedule-page.ws-edit-page .ws-edit-status-row .ws-edit-status-lock-hint {
  flex: 1 1 12rem;
  min-width: 0;
}

.work-schedule-page.ws-edit-page .ws-edit-status-lock-hint {
  font-size: 12px;
}

.work-schedule-page.ws-edit-page .ws-edit-status-block__title {
  font-size: 13px;
  font-weight: 700;
  color: #166534;
  letter-spacing: 0.01em;
}

.work-schedule-page.ws-edit-page .ws-edit-status-block__field-label {
  display: block;
  margin: 0 0 6px;
  font-size: 12px;
  font-weight: 600;
  color: #15803d;
}

.work-schedule-page.ws-edit-page .ws-edit-status-note .ws-edit-status-block__field-label {
  display: block;
  margin: 0 0 6px;
}

.work-schedule-page.ws-edit-page .ws-edit-status-select {
  width: 100%;
  min-height: 40px;
  padding: 8px 36px 8px 12px;
  border-radius: 10px;
  border: 1px solid rgba(22, 163, 74, 0.35);
  background-color: #fff;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2315803d' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 12px center;
  color: var(--ws-text);
  font-size: 14px;
  font-weight: 500;
  appearance: none;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.work-schedule-page.ws-edit-page .ws-edit-status-select:hover {
  border-color: rgba(22, 163, 74, 0.55);
}

.work-schedule-page.ws-edit-page .ws-edit-status-select:focus {
  outline: none;
  border-color: #16a34a;
  box-shadow: 0 0 0 3px rgba(34, 197, 94, 0.22);
}

.work-schedule-page.ws-edit-page .ws-edit-status-row .ws-edit-status-select.ws-edit-status-select--sm {
  width: auto;
  min-width: 9.5rem;
  max-width: 12rem;
  height: 28px;
  min-height: 28px;
  max-height: 28px;
  padding: 0 28px 0 8px;
  font-size: 12px;
  line-height: 26px;
  border-radius: 8px;
  background-position: right 8px center;
  background-size: 10px;
  box-sizing: border-box;
}

.work-schedule-page.ws-edit-page .ws-edit-status-row .ws-chip.ws-chip--compact {
  min-height: 22px;
  height: 22px;
  padding: 0 8px;
  font-size: 11px;
  line-height: 20px;
}

.work-schedule-page.ws-edit-page .ws-edit-status-row__change {
  display: inline-flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: 8px 10px;
}

.work-schedule-page.ws-edit-page .ws-edit-status-row__change .ws-edit-status-block__field-label {
  display: inline;
  margin: 0;
  white-space: nowrap;
}

.work-schedule-page.ws-edit-page .ws-edit-status-row__note {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  flex: 1 1 auto;
  min-width: 0;
}

.work-schedule-page.ws-edit-page .ws-edit-status-row__note .ws-edit-status-block__field-label {
  display: inline;
  margin: 0;
  white-space: nowrap;
}

.work-schedule-page.ws-edit-page .ws-edit-status-note__input.ws-edit-status-note__input--inline {
  margin-top: 0;
  min-height: 28px;
  height: 28px;
  padding: 0 10px;
  border-radius: 8px;
  font-size: 12px;
  line-height: 26px;
  resize: none;
  width: 100%;
}

.work-schedule-page.ws-edit-page .ws-edit-status-note {
  display: block;
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px solid rgba(22, 163, 74, 0.18);
}

.work-schedule-page.ws-edit-page .ws-edit-status-block--compact .ws-edit-status-note {
  margin-top: 8px;
  padding-top: 8px;
}

.work-schedule-page.ws-edit-page .ws-edit-status-note .ws-field-optional {
  font-weight: 500;
  color: #64748b;
}

.work-schedule-page.ws-edit-page .ws-edit-status-note__input {
  display: block;
  width: 100%;
  min-height: 72px;
  margin-top: 6px;
  padding: 10px 12px;
  border-radius: 10px;
  border: 1px solid rgba(22, 163, 74, 0.3);
  background: #fff;
  font-size: 14px;
  line-height: 1.45;
  resize: vertical;
  box-sizing: border-box;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.work-schedule-page.ws-edit-page .ws-edit-status-note__input:focus {
  outline: none;
  border-color: #16a34a;
  box-shadow: 0 0 0 3px rgba(34, 197, 94, 0.18);
}

/* Állapot megjegyzés: új feladat modal / shell (nincs ws-edit-page) */
.work-schedule-page .ws-edit-status-note {
  display: block;
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px solid rgba(22, 163, 74, 0.18);
}

.work-schedule-page .ws-edit-status-note label {
  display: block;
  margin: 0 0 6px;
  font-size: 12px;
  font-weight: 600;
  color: #15803d;
}

.work-schedule-page .ws-edit-status-note .ws-field-optional {
  font-weight: 500;
  color: #64748b;
}

.work-schedule-page .ws-edit-status-note__input {
  display: block;
  width: 100%;
  min-height: 72px;
  margin-top: 6px;
  padding: 10px 12px;
  border-radius: 10px;
  border: 1px solid rgba(22, 163, 74, 0.3);
  background: #fff;
  font-size: 14px;
  line-height: 1.45;
  resize: vertical;
  box-sizing: border-box;
}

.work-schedule-page .ws-edit-status-note__input:focus {
  outline: none;
  border-color: #16a34a;
  box-shadow: 0 0 0 3px rgba(34, 197, 94, 0.18);
}

.ws-detail-status-form .ws-field-optional {
  font-weight: 500;
  color: #64748b;
}

@media (max-width: 760px) {
  .work-schedule-page.ws-edit-page .ws-edit-status-row {
    flex-wrap: wrap;
  }

  .work-schedule-page.ws-edit-page .ws-edit-status-row__change {
    flex: 1 1 100%;
    width: 100%;
    flex-direction: column;
    align-items: stretch;
    gap: 8px;
    margin-top: 6px;
    padding-top: 10px;
    border-top: 1px solid rgba(22, 163, 74, 0.18);
  }

  .work-schedule-page.ws-edit-page .ws-edit-status-row__change .ws-edit-status-block__field-label {
    display: block;
  }

  .work-schedule-page.ws-edit-page .ws-edit-status-row__change .ws-edit-status-select.ws-edit-status-select--sm {
    width: 100%;
    max-width: none;
    min-width: 0;
  }

  .work-schedule-page.ws-edit-page .ws-edit-status-row__note {
    flex: 1 1 100%;
    width: 100%;
    flex-direction: column;
    align-items: stretch;
    gap: 6px;
  }

  .work-schedule-page.ws-edit-page .ws-edit-status-row__note .ws-edit-status-block__field-label {
    white-space: normal;
  }

}

/* Feladat részletei – saját névre vétel (readonly űrlap) */
.work-schedule-page.ws-edit-page--claim .ws-edit-claim-hint {
  margin: 0 0 1rem;
  font-size: 13px;
  line-height: 1.45;
}

.work-schedule-page.ws-edit-page--claim .headerbar-actions .ws-edit-header-claim-btn,
.work-schedule-page.ws-edit-page .ws-edit-form-actions .glass-primary-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.work-schedule-page.ws-edit-page .ws-edit-header-claim-btn__icon,
.work-schedule-page.ws-edit-page .ws-edit-save-btn__icon {
  flex-shrink: 0;
}

.work-schedule-page.ws-edit-page--claim .ws-edit-form--readonly input:disabled,
.work-schedule-page.ws-edit-page--claim .ws-edit-form--readonly select:disabled,
.work-schedule-page.ws-edit-page--claim .ws-edit-form--readonly textarea:disabled {
  opacity: 1;
  color: #0f172a;
  -webkit-text-fill-color: #0f172a;
  cursor: default;
  background-color: #f8fafc;
  border-color: #e2e8f0;
}

.work-schedule-page.ws-edit-page--claim .ws-edit-participants-form {
  margin-top: 1.25rem;
  padding-top: 1.25rem;
  border-top: 1px solid #e2e8f0;
}

.work-schedule-page.ws-edit-page--claim .ws-edit-participants-list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  min-height: 40px;
  padding: 8px 10px;
  background-color: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
}

.work-schedule-page.ws-edit-page--claim .ws-edit-participants-list .ws-person-chip {
  font-size: 13px;
  min-height: 28px;
  padding: 0 10px;
}

.work-schedule-page.ws-edit-page--claim .ws-edit-participants-list .ws-chip--subtle {
  min-height: 28px;
  font-size: 13px;
}

.work-schedule-page.ws-edit-page--claim .ws-edit-form--readonly input[readonly] {
  opacity: 1;
  color: #0f172a;
  background-color: #f8fafc;
  border-color: #e2e8f0;
  cursor: default;
}

/* Munkalap kimutatás */
.work-schedule-page.ws-worksheets-show-page .ws-worksheets-show-meta-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.work-schedule-page.ws-worksheets-show-page .ws-worksheets-show-meta-row .ws-worksheets-show-meta {
  flex: 1;
  min-width: 0;
}

.work-schedule-page.ws-worksheets-show-page .ws-worksheets-show-report-btn {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 10px;
  border: 1px solid rgba(59, 130, 246, 0.25);
  background: linear-gradient(145deg, rgba(239, 246, 255, 0.95), rgba(219, 234, 254, 0.85));
  color: #1d4ed8;
  cursor: pointer;
  transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.06);
}

.work-schedule-page.ws-worksheets-show-page .ws-worksheets-show-report-btn:hover {
  transform: translateY(-1px);
  border-color: rgba(37, 99, 235, 0.45);
  box-shadow: 0 4px 12px rgba(37, 99, 235, 0.15);
}

.work-schedule-page.ws-worksheets-show-page .ws-worksheets-show-report-btn:focus-visible {
  outline: 2px solid #2563eb;
  outline-offset: 2px;
}

.ws-worksheet-report-modal__panel {
  width: min(960px, calc(100vw - 24px));
  max-height: calc(100vh - 32px);
}

.ws-worksheet-report-modal .ws-task-modal__header-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
}

.ws-worksheet-report-modal .ws-task-modal__close {
  margin: 0;
  width: 40px;
  height: 40px;
}

.ws-worksheet-report__export-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  height: 40px;
  min-height: 40px;
  padding: 0 12px;
  border-radius: 12px;
  border: 1px solid #1d4ed8;
  background: linear-gradient(180deg, rgba(37, 99, 235, 0.98), rgba(29, 78, 216, 0.98));
  color: #fff;
  font-size: 0.8125rem;
  font-weight: 600;
  text-decoration: none;
  white-space: nowrap;
  box-shadow: none;
  transition: background 0.15s ease, border-color 0.15s ease;
}

.ws-worksheet-report__export-btn:hover {
  background: linear-gradient(180deg, rgba(63, 98, 226, 0.98), rgba(29, 78, 216, 0.98));
  color: #fff;
}

.ws-worksheet-report__export-btn:focus-visible {
  outline: 2px solid #2563eb;
  outline-offset: 2px;
}

.ws-worksheet-report__export-btn svg {
  flex-shrink: 0;
}

.ws-worksheet-report-modal__body {
  max-height: min(72vh, 720px);
}

.ws-worksheet-report__status {
  font-size: 0.875rem;
  color: var(--ws-text-muted, #64748b);
  padding: 0.5rem 0;
}

.ws-worksheet-report__empty,
.ws-worksheet-report__mini-empty {
  font-size: 0.875rem;
  color: var(--ws-text-muted, #64748b);
  margin: 0;
  padding: 0.75rem 0;
}

.ws-worksheet-report__kpis {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 16px;
}

@media (max-width: 760px) {
  .ws-worksheet-report__kpis {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.ws-worksheet-report__kpi {
  border-radius: 12px;
  padding: 12px 14px;
  border: 1px solid rgba(226, 232, 240, 0.95);
  background: #fff;
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}

.ws-worksheet-report__kpi--people { border-left: 3px solid #2563eb; }
.ws-worksheet-report__kpi--hours { border-left: 3px solid #2563eb; }
.ws-worksheet-report__kpi--tasks { border-left: 3px solid #0ea5e9; }
.ws-worksheet-report__kpi--km { border-left: 3px solid #14b8a6; }

.ws-worksheet-report__kpi-label {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #64748b;
}

.ws-worksheet-report__kpi-value {
  font-size: 1.35rem;
  font-weight: 700;
  color: #0f172a;
  font-variant-numeric: tabular-nums;
  line-height: 1.1;
}

.ws-worksheet-report__kpi-suffix {
  font-size: 0.85rem;
  font-weight: 600;
  color: #64748b;
  margin-left: 2px;
}

.ws-worksheet-report__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  margin-bottom: 16px;
}

@media (max-width: 760px) {
  .ws-worksheet-report__grid {
    grid-template-columns: 1fr;
  }
}

.ws-worksheet-report__section {
  margin-bottom: 16px;
}

.ws-worksheet-report__section-title {
  margin: 0 0 10px;
  font-size: 0.8125rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: #475569;
}

.ws-worksheet-report__grid .ws-worksheet-report__section {
  margin-bottom: 0;
  padding: 12px;
  border-radius: 12px;
  border: 1px solid rgba(226, 232, 240, 0.95);
  background: rgba(248, 250, 252, 0.65);
}

.ws-worksheet-report__bar-chart {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.ws-worksheet-report__bar-row {
  display: grid;
  grid-template-columns: minmax(72px, 28%) 1fr auto;
  gap: 8px;
  align-items: center;
}

.ws-worksheet-report__bar-label {
  font-size: 0.75rem;
  font-weight: 600;
  color: #334155;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.ws-worksheet-report__bar-track {
  height: 10px;
  border-radius: 999px;
  background: rgba(226, 232, 240, 0.9);
  overflow: hidden;
}

.ws-worksheet-report__bar-fill {
  height: 100%;
  border-radius: 999px;
  background: linear-gradient(90deg, #3b82f6, #1d4ed8);
}

.ws-worksheet-report__bar-chart--dates .ws-worksheet-report__bar-fill {
  background: linear-gradient(90deg, #0ea5e9, #14b8a6);
}

.ws-worksheet-report__bar-value {
  font-size: 0.75rem;
  font-weight: 700;
  color: #0f172a;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

.ws-worksheet-report__matrix-wrap {
  overflow-x: auto;
  border-radius: 10px;
  border: 1px solid rgba(226, 232, 240, 0.95);
}

.ws-worksheet-report__matrix-wrap--daily {
  overflow-x: auto;
}

.ws-worksheet-report__matrix-wrap--daily .ws-worksheet-report__matrix {
  display: block;
}

.ws-worksheet-report__matrix-wrap--daily .ws-worksheet-report__matrix thead {
  display: table;
  width: 100%;
  table-layout: fixed;
}

.ws-worksheet-report__matrix-wrap--daily .ws-worksheet-report__matrix tbody {
  display: block;
  max-height: calc(var(--ws-report-daily-row-h, 32px) * 5);
  overflow-y: auto;
  overflow-x: hidden;
  width: 100%;
}

.ws-worksheet-report__matrix-wrap--daily .ws-worksheet-report__matrix tbody tr {
  display: table;
  width: 100%;
  table-layout: fixed;
}

.ws-worksheet-report__matrix-wrap--daily .ws-worksheet-report__matrix thead th {
  position: static;
  box-shadow: none;
}

.ws-worksheet-report__matrix,
.ws-worksheet-report__table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.8125rem;
}

.ws-worksheet-report__matrix th,
.ws-worksheet-report__matrix td,
.ws-worksheet-report__table th,
.ws-worksheet-report__table td {
  padding: 8px 10px;
  border-bottom: 1px solid rgba(226, 232, 240, 0.85);
  text-align: left;
  vertical-align: middle;
}

.ws-worksheet-report__matrix thead th,
.ws-worksheet-report__table thead th {
  background: #f8fafc;
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: #64748b;
}

.ws-worksheet-report__matrix-name {
  font-weight: 600;
  color: #334155;
  min-width: 120px;
}

.ws-worksheet-report__matrix-date {
  text-align: center !important;
  white-space: nowrap;
}

.ws-worksheet-report__matrix-total,
.ws-worksheet-report__num {
  text-align: right !important;
  font-variant-numeric: tabular-nums;
  font-weight: 700;
}

.ws-worksheet-report__cell {
  text-align: center !important;
  color: #94a3b8;
}

.ws-worksheet-report__cell.has-value {
  color: #0f172a;
  font-weight: 700;
  background: rgba(59, 130, 246, 0.12);
}

.ws-worksheet-report__hint {
  margin: 0 0 8px;
  font-size: 0.75rem;
  color: #64748b;
  line-height: 1.4;
}

.ws-worksheet-report__tours {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.ws-worksheet-report__tour-card {
  border: 1px solid rgba(226, 232, 240, 0.95);
  border-radius: 12px;
  background: #fff;
  overflow: hidden;
}

.ws-worksheet-report__tour-header {
  padding: 12px 14px;
  background: rgba(248, 250, 252, 0.85);
  border-bottom: 1px solid rgba(226, 232, 240, 0.85);
  display: flex;
  flex-wrap: wrap;
  gap: 8px 16px;
  justify-content: space-between;
}

.ws-worksheet-report__tour-heading {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 12px;
  align-items: baseline;
  min-width: 0;
}

.ws-worksheet-report__tour-heading strong {
  color: #0f172a;
  font-size: 0.875rem;
}

.ws-worksheet-report__tour-user,
.ws-worksheet-report__tour-workplace {
  font-size: 0.8125rem;
  color: #475569;
}

.ws-worksheet-report__tour-kpis {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 14px;
  font-size: 0.75rem;
  color: #334155;
}

.ws-worksheet-report__tour-kpis strong {
  color: #0f172a;
}

.ws-worksheet-report__tour-mode {
  color: #64748b;
  font-style: italic;
}

.ws-worksheet-report__tour-table td:nth-child(3) {
  max-width: 220px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.ws-worksheet-report__tour-row--external td {
  background: rgba(251, 191, 36, 0.08);
}

.ws-worksheet-report__tour-map-details {
  padding: 0 14px 14px;
}

.ws-worksheet-report__tour-map-details summary {
  cursor: pointer;
  font-size: 0.75rem;
  font-weight: 600;
  color: #2563eb;
  padding: 10px 0 8px;
  list-style: none;
}

.ws-worksheet-report__tour-map-details summary::-webkit-details-marker {
  display: none;
}

.ws-worksheet-report__tour-map {
  height: 280px;
  border-radius: 10px;
  border: 1px solid rgba(226, 232, 240, 0.95);
  overflow: hidden;
  background: #f1f5f9;
}

.ws-worksheet-report__tour-map .leaflet-control-attribution {
  font-size: 10px;
}

.ws-tour-map-marker {
  background: transparent;
  border: none;
}

.ws-tour-map-marker__label {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  border-radius: 999px;
  font-size: 0.75rem;
  font-weight: 700;
  line-height: 1;
  color: #fff;
  box-shadow: 0 2px 8px rgba(15, 23, 42, 0.22);
  border: 2px solid #fff;
}

.ws-tour-map-marker--depot .ws-tour-map-marker__label {
  background: linear-gradient(145deg, #0d9488, #14b8a6);
}

.ws-tour-map-marker--stop .ws-tour-map-marker__label {
  background: linear-gradient(145deg, #1d4ed8, #3b82f6);
}

.ws-tour-map-marker--stop-external .ws-tour-map-marker__label {
  background: linear-gradient(145deg, #b45309, #f59e0b);
}

.ws-worksheet-report__legacy-travel {
  margin-top: 10px;
}
