/* ============================================================================
   saas_ergani_wto.css — «Δηλωμένα ωράρια στο ΕΡΓΑΝΗ» (#page-ergani-wto): ΟΨΗ
   ============================================================================
   Ύφος docs/design/fason/: λευκές κάρτες (var(--surface), περίγραμμα
   var(--border), γωνίες 12px) πάνω στο φόντο της επιχείρησης — ΚΑΜΙΑ σελίδα
   δεν γράφει σταθερό χρώμα φόντου (το κληρονομεί από το body). Μπλε = ενέργεια,
   πράσινο = θετική κατάσταση, μωβ = άδεια, κεχριμπαρένιο/κόκκινο = προσοχή.
   Εδώ ζουν ΜΟΝΟ οι κανόνες που άλλαξε ο ανασχεδιασμός: κεφαλίδα, κάρτα
   εργαζομένου/εβδομάδας, μαζεμένες ημέρες, υποβολές, ομάδες επιλογέα άδειας.
   Οι υπόλοιποι κανόνες ewto-* (βάρδιες, ζώνες, πλαίσια δήλωσης) μένουν στο
   app.css αναλλοίωτοι. Λογική: saas_ergani_wto.js. */

/* ── Κεφαλίδα: «← ΕΡΓΑΝΗ» · τίτλος · χάπι κατάστασης ───────────────────── */
#page-ergani-wto .ewto-top{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:14px}
#page-ergani-wto .ewto-top .page-title{margin:0;flex:0 1 auto;min-width:0}
.ewto-back{background:none;border:none;color:var(--muted);font:inherit;font-size:0.85rem;font-weight:600;cursor:pointer;padding:0 6px;min-height:44px}
.ewto-back:hover{color:var(--text)}
/* Το JS βάζει display:block στο #ewto-validity· το περιεχόμενο ρέει inline μέσα στο χάπι. */
.ewto-validity{position:relative;margin-left:auto;background:#EFF6FF;border:1px solid #BFDBFE;color:#1E3A5F;border-radius:16px;padding:6px 12px;font-size:0.8rem;line-height:1.5}
.ewto-validity.is-declared{background:#DCFCE7;border-color:#86EFAC;color:#166534}
.ewto-validity-text{display:inline;color:inherit}
.ewto-validity-btn{margin-left:8px;background:#185FA5;color:#fff;border:none;border-radius:999px;padding:3px 10px;font:inherit;font-size:0.75rem;font-weight:700;cursor:pointer}
.ewto-validity .ewto-htrig{color:inherit;opacity:0.85}
.ewto-validity .erg-qbubble{position:absolute;top:100%;right:0;z-index:5;width:min(320px,86vw);color:var(--text);font-weight:400}
@media (max-width:600px){ .ewto-validity{margin-left:0;width:100%} }

/* ── Κάρτα Εργαζόμενος / Εβδομάδα (ετικέτα από πάνω, πεδία 44px) ─────────── */
.ewto-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:14px;margin-bottom:14px}
.ewto-fields{display:flex;gap:14px;flex-wrap:wrap}
.ewto-field{flex:1;min-width:200px}
.ewto-field > label{display:block;font-size:0.72rem;color:var(--muted);text-transform:uppercase;letter-spacing:0.04em;font-weight:600;margin-bottom:6px}
.ewto-field select{width:100%;height:44px;padding:0 10px;border:1px solid var(--border);border-radius:8px;font:inherit;font-size:0.9rem;background:var(--surface);color:var(--text)}
.ewto-weekpick{display:flex;align-items:center;gap:6px}
.ewto-weekpick button{height:44px;width:44px;flex-shrink:0;background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--text);font:inherit;font-size:1.1rem;line-height:1;cursor:pointer}
#ewto-week-label{flex:1;text-align:center;font-size:0.9rem;font-weight:600;color:var(--text);white-space:nowrap}
.ewto-week-today{margin-top:4px;width:100%;background:none;border:none;color:#185FA5;font:inherit;font-size:0.78rem;font-weight:600;cursor:pointer;padding:6px 2px}

/* ── Οι 7 ημέρες: ΜΙΑ κάρτα, μία λεπτή γραμμή-κουμπί η καθεμία ──────────── */
.ewto-days{padding:0;overflow:hidden}
.ewto-day-card{position:relative;border-top:1px solid var(--border);border-left:4px solid transparent}
.ewto-day-card:first-child{border-top:none}
.ewto-day-row{display:grid;grid-template-columns:minmax(120px,170px) minmax(0,1fr) auto 18px;align-items:center;column-gap:12px;row-gap:6px;width:100%;min-height:48px;padding:8px 12px;background:none;border:none;color:var(--text);font:inherit;text-align:left;cursor:pointer}
.ewto-day-row:hover,.ewto-day-card.open > .ewto-day-row{background:var(--surface2)}
.ewto-day-row > *{grid-row:1}
.ewto-day-row .ewto-day-name{grid-column:1}
.ewto-day-sum{grid-column:2;font-size:0.85rem;overflow-wrap:anywhere}
.ewto-day-pills{grid-column:3;display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end;align-items:center}
.ewto-day-sum:empty,.ewto-day-pills:empty{display:none}
.ewto-chev{grid-column:4;justify-self:center;width:8px;height:8px;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:rotate(-45deg);transition:transform 0.15s}
.ewto-day-card.open .ewto-chev{transform:rotate(45deg)}
.ewto-day-name{display:flex;align-items:baseline;gap:8px}
.ewto-dow{font-weight:700;font-size:0.95rem;color:var(--text)}
.ewto-ddate{font-size:0.78rem;color:var(--muted)}
.ewto-day-body{display:none;padding:4px 14px 14px 16px;border-top:1px dashed var(--border)}
.ewto-day-card.open .ewto-day-body{display:block}
.ewto-day-tools{display:flex;justify-content:flex-end;padding:6px 0 4px}
/* Προειδοποιήσεις ημέρας (ανάπαυση, «ισχύει μόνο», πλαίσιο μπλοκαρίσματος): ΠΑΝΤΑ ορατές, κάτω από τη γραμμή. */
.ewto-day-card > .ewto-exc-banner,.ewto-day-card > .ewto-rest-flag,.ewto-day-card > .ewto-rest-flag-unsupported,.ewto-day-card > .ewto-block{margin:0 14px 10px 12px}
/* Διάκριση ημέρας: αριστερή λωρίδα (εξαίρεση μπλε, ανάπαυση κόκκινη/κεχριμπαρένια) — μένει ΚΑΙ κλειστή. */
.ewto-day-card.exception-mode{border-left-color:#185FA5;background:rgba(24,95,165,0.07)}
.ewto-day-card.exception-mode .ewto-dow{color:#185FA5}
.ewto-day-card.rest-violation{border-left-color:#991B1B}
.ewto-day-card.rest-unsupported{border-left-color:#92400E}
.ewto-day-card.locked{background:var(--surface2)}
@media (max-width:600px){
  .ewto-day-row{grid-template-columns:minmax(0,1fr) 18px}
  .ewto-day-row .ewto-day-name{grid-column:1;grid-row:1}
  .ewto-chev{grid-column:2;grid-row:1}
  .ewto-day-sum,.ewto-day-pills{grid-column:1 / -1;grid-row:auto}
  .ewto-day-pills{justify-content:flex-start}
  .ewto-day-body{padding-left:12px;padding-right:12px}
}

/* Αναποθήκευτη αλλαγή + σύνολο εβδομάδας: τελευταία γραμμή της ΙΔΙΑΣ κάρτας. */
.ewto-days > .ewto-sum-unsaved{margin:0;border-radius:0;border-width:1px 0 0;border-style:solid;border-color:#92400E;background:#FEF3C7;color:#78350F;padding:10px 14px;font-size:0.8rem;line-height:1.5}
.ewto-days > #ewto-summary{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;padding:12px 14px;border-top:1px solid var(--border);background:var(--surface2)}
.ewto-days > #ewto-summary:empty{display:none}
#ewto-summary .ewto-summary-title{margin:0;white-space:nowrap}
#ewto-summary .ewto-zonebar{flex:1;min-width:120px;height:8px}
#ewto-summary .ewto-zone-legend{margin:0}
#ewto-summary .ewto-locked-foot,#ewto-summary .ewto-annual,#ewto-summary .ewto-sixthday-flag,#ewto-summary > div:not(.ewto-zonebar):not(.ewto-zone-legend):not(.ewto-summary-title){flex-basis:100%;margin-top:0}

/* ── Υποβολές ΕΡΓΑΝΗ: κλειστή γραμμή-κουμπί, ανοίγει η λίστα ───────────── */
.ewto-subs{padding:0;overflow:hidden;margin-bottom:14px}
.ewto-subs > .ewto-stopped{margin:14px 14px 0}
.ewto-subs-head{display:flex;align-items:center;gap:10px;width:100%;min-height:48px;padding:8px 14px;background:none;border:none;color:var(--text);font:inherit;text-align:left;cursor:pointer}
.ewto-subs-head:hover,.ewto-subs.open .ewto-subs-head{background:var(--surface2)}
.ewto-subs-title{flex:1;min-width:0;font-weight:700;font-size:0.85rem;overflow-wrap:anywhere}
.ewto-subs-pill{flex-shrink:0;font-size:0.78rem;font-weight:700;padding:3px 10px;border-radius:999px;white-space:nowrap}
.ewto-subs-pill.ok{background:#DCFCE7;color:#166534}
.ewto-subs-pill.warn{background:#FEF3C7;color:#92400E}
.ewto-subs-pill.bad{background:#FEE2E2;color:#991B1B}
.ewto-subs-body{display:none;padding:4px 14px 14px;border-top:1px solid var(--border)}
.ewto-subs.open .ewto-subs-body{display:block}
.ewto-subs.open .ewto-chev{transform:rotate(45deg)}
.ewto-subs-head .ewto-chev{flex-shrink:0}

/* Γραμμές βάρδιας μέσα στην ανοιχτή ημέρα: χωρίς εικονίδιο πια· διπλώνουν αντί να βγαίνουν έξω από την κάρτα. */
.ewto-day-body .ewto-shift-row{flex-wrap:wrap}
.ewto-day-body .ewto-line-type{max-width:100%;min-width:0}
.ewto-day-body .ewto-leave-fields{padding-left:0}
.ewto-print-btn{background:none;border:1.5px solid var(--border);color:var(--text);border-radius:8px;padding:6px 10px;font:inherit;font-size:0.78rem;font-weight:600;cursor:pointer;white-space:nowrap}
@media (max-width:600px){
  .ewto-subs-head{flex-wrap:wrap}
  .ewto-subs-title{flex:1 1 100%}
  .ewto-subs-head .ewto-chev{margin-left:auto}
}

/* ── Επιλογέας ολοήμερης άδειας: ΑΝ/ΜΕ, «Συχνές», «Περισσότερες άδειες» ── */
.ewto-pick-group{padding:7px 12px;font-size:0.68rem;font-weight:800;text-transform:uppercase;letter-spacing:0.05em;color:var(--muted);background:var(--surface2);border-bottom:1px solid var(--border)}
.ewto-pick-more{display:block;width:100%;padding:11px 12px;background:none;border:none;border-bottom:1px solid var(--border);color:#185FA5;font:inherit;font-size:0.85rem;font-weight:700;text-align:left;cursor:pointer}

/* ── Αποθήκευση: sticky, ΠΟΤΕ disabled ───────────────────────────────────── */
.ewto-savebar{position:sticky;bottom:0;margin-top:16px;padding-top:10px;background:var(--cfx-page-bg,var(--bg,transparent))}
#ewto-save{width:100%;min-height:48px;background:#185FA5;color:#fff;border:none;border-radius:12px;padding:13px;font:inherit;font-weight:700;font-size:0.95rem;cursor:pointer}

/* ── Σκοτεινό θέμα ─────────────────────────────────────────────────────── */
body[data-theme="dark"] .ewto-validity{background:#10243A;border-color:#3E7CB1;color:#BFD9F2}
body[data-theme="dark"] .ewto-validity.is-declared{background:#14321F;border-color:#2F7A4B;color:#4ADE80}
body[data-theme="dark"] .ewto-subs-pill.ok{background:#14321F;color:#4ADE80}
body[data-theme="dark"] .ewto-subs-pill.warn{background:#3A2A0A;color:#FBBF24}
body[data-theme="dark"] .ewto-subs-pill.bad{background:#3B1212;color:#F87171}
body[data-theme="dark"] .ewto-day-card.exception-mode{border-left-color:#3E7CB1;background:rgba(63,124,177,0.14)}
body[data-theme="dark"] .ewto-day-card.exception-mode .ewto-dow{color:#7FB3E8}
body[data-theme="dark"] .ewto-day-card.rest-violation{border-left-color:#F87171}
body[data-theme="dark"] .ewto-day-card.rest-unsupported{border-left-color:#FBBF24}
body[data-theme="dark"] .ewto-days > .ewto-sum-unsaved{background:#3A2A0A;color:#FBBF24;border-color:#FBBF24}
body[data-theme="dark"] .ewto-pick-more,body[data-theme="dark"] .ewto-week-today{color:#7FB3E8}
