/* ΙΛΥΔΑ 4 · Πάνελ «Διαδρομή αποστολής» και ενδείξεις κατάστασης. Μόνο κλάσεις .cfx-fr-* (κανένας γενικός selector). */
.cfx-fr-ov { position: fixed; inset: 0; z-index: 10050; background: rgba(15, 23, 42, 0.45); display: flex; align-items: flex-start; justify-content: center; padding: 16px; overflow-y: auto; }
.cfx-fr-card { background: #FFFFFF; border: 1px solid #E2E8F0; border-radius: 12px; box-shadow: 0 8px 28px rgba(15, 23, 42, 0.18); width: 100%; max-width: 720px; padding: 18px; box-sizing: border-box; color: #0F172A; font-size: 0.95rem; line-height: 1.45; }
.cfx-fr-head { display: flex; gap: 12px; align-items: flex-start; justify-content: space-between; flex-wrap: wrap; }
.cfx-fr-head-txt { flex: 1 1 260px; min-width: 0; }
.cfx-fr-type { font-weight: 800; font-size: 1.05rem; }
.cfx-fr-sub { color: #475569; font-size: 0.9rem; margin-top: 2px; overflow-wrap: anywhere; }
.cfx-fr-pill { display: inline-block; white-space: nowrap; border-radius: 999px; padding: 4px 12px; font-weight: 700; font-size: 0.85rem; border: 1px solid; }
.cfx-fr-pill-red { background: #FCEBEB; border-color: #E9A0A0; color: #7A1515; }
.cfx-fr-pill-yellow { background: #FBF3D5; border-color: #E8C93F; color: #7A5B00; }
.cfx-fr-pill-green { background: #EAF3DE; border-color: #97C459; color: #27500A; }
.cfx-fr-h { margin: 16px 0 8px; font-size: 0.78rem; letter-spacing: 0.04em; font-weight: 800; color: #475569; text-transform: uppercase; }
.cfx-fr-steps { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
.cfx-fr-step { border: 1px solid #E2E8F0; border-radius: 10px; padding: 10px 12px; min-width: 0; }
.cfx-fr-step-t { font-weight: 700; font-size: 0.9rem; overflow-wrap: anywhere; }
.cfx-fr-step-s { margin-top: 4px; font-size: 0.85rem; font-weight: 600; }
.cfx-fr-step-time { margin-top: 2px; font-size: 0.78rem; color: #64748B; }
.cfx-fr-step-done { background: #EAF3DE; border-color: #97C459; color: #27500A; }
.cfx-fr-step-stop { background: #FCEBEB; border-color: #E9A0A0; color: #7A1515; }
.cfx-fr-step-wait { background: #FBF3D5; border-color: #E8C93F; color: #7A5B00; }
.cfx-fr-step-idle { background: #F8FAFC; border: 1px dashed #CBD5E1; color: #64748B; }
.cfx-fr-why { border: 1px solid; border-radius: 10px; padding: 12px 14px; margin-top: 14px; }
.cfx-fr-why-red { background: #FFF7F7; border-color: #E9A0A0; }
.cfx-fr-why-yellow { background: #FFFBEA; border-color: #E8C93F; }
.cfx-fr-why-t { font-weight: 800; font-size: 0.8rem; letter-spacing: 0.04em; }
.cfx-fr-why-red .cfx-fr-why-t { color: #7A1515; }
.cfx-fr-why-yellow .cfx-fr-why-t { color: #7A5B00; }
.cfx-fr-lbl { font-weight: 700; margin-top: 10px; }
.cfx-fr-small { font-size: 0.78rem; color: #64748B; margin-top: 6px; overflow-wrap: anywhere; }
.cfx-fr-alert { color: #7A1515; font-weight: 700; margin-top: 8px; }
.cfx-fr-err { border-top: 1px solid #E2E8F0; margin-top: 8px; padding-top: 8px; }
.cfx-fr-err-t { font-weight: 700; overflow-wrap: anywhere; }
.cfx-fr-tag { display: inline-block; margin-left: 6px; border-radius: 6px; padding: 1px 8px; font-size: 0.75rem; font-weight: 700; background: #FCEBEB; color: #7A1515; }
.cfx-fr-btns { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 12px; }
.cfx-fr-btn { min-height: 44px; padding: 0 16px; border-radius: 10px; border: 1px solid #1D4ED8; background: #FFFFFF; color: #1D4ED8; font-weight: 700; font-size: 0.9rem; cursor: pointer; }
.cfx-fr-btn-main { background: #1D4ED8; color: #FFFFFF; }
.cfx-fr-btn:disabled { opacity: 0.55; cursor: default; }
.cfx-fr-close { margin-top: 14px; }
/* Ένδειξη κατάστασης που ανοίγει το πάνελ (κουμπί) */
.cfx-fr-badge { min-height: 44px; display: inline-flex; align-items: center; border-radius: 8px; border: 1px solid; padding: 0 12px; font-weight: 700; font-size: 0.8rem; cursor: pointer; white-space: nowrap; font-family: inherit; }
.cfx-fr-badge-red { background: #FCEBEB; border-color: #E9A0A0; color: #7A1515; }
.cfx-fr-badge-yellow { background: #FBF3D5; border-color: #E8C93F; color: #7A5B00; }
.cfx-fr-badge-green { background: #EAF3DE; border-color: #97C459; color: #27500A; }
@media (max-width: 640px) {
  .cfx-fr-steps { grid-template-columns: 1fr; }
  .cfx-fr-card { padding: 14px; }
}
/* Κάρτα Αρχικής «Παραστατικά χωρίς ΜΑΡΚ» και λίστα */
.cfx-fr-home { background: #FFFFFF; border: 1px solid #E2E8F0; border-radius: 12px; padding: 14px 16px; margin: 0 0 16px; }
.cfx-fr-home-t { font-weight: 800; font-size: 1rem; }
.cfx-fr-home-n { display: inline-block; margin-left: 8px; border-radius: 999px; padding: 1px 10px; background: #FCEBEB; color: #7A1515; font-size: 0.85rem; }
.cfx-fr-row { display: block; width: 100%; text-align: left; min-height: 44px; margin-top: 8px; padding: 8px 12px; border-radius: 10px; border: 1px solid; font-family: inherit; cursor: pointer; }
.cfx-fr-row-red { background: #FFF7F7; border-color: #E9A0A0; }
.cfx-fr-row-yellow { background: #FFFBEA; border-color: #E8C93F; }
.cfx-fr-row-t { font-weight: 700; overflow-wrap: anywhere; }
.cfx-fr-row-s { font-size: 0.85rem; color: #475569; margin-top: 2px; overflow-wrap: anywhere; }
.cfx-fr-row-red .cfx-fr-row-s { color: #7A1515; }
.cfx-fr-row-yellow .cfx-fr-row-s { color: #7A5B00; }
.cfx-fr-legend { font-size: 0.8rem; color: #64748B; margin-top: 10px; }
.cfx-fr-filters { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 12px; }
.cfx-fr-filter { min-height: 44px; padding: 0 14px; border-radius: 10px; border: 1px solid #CBD5E1; background: #FFFFFF; color: #0F172A; font-weight: 600; font-size: 0.85rem; cursor: pointer; white-space: nowrap; }
.cfx-fr-filter-on { background: #1D4ED8; border-color: #1D4ED8; color: #FFFFFF; }
.cfx-fr-empty { color: #64748B; padding: 18px 4px; }
