/* ═══════════════════════════════════════════════════════════════════════════════════════
   consent.css — Cookie banner & ρυθμίσεις
   ΑΡΧΗ #1 TABLET FIRST: στόχοι αφής ≥44px, γράμματα ≥16px στα πεδία, καμία ενέργεια που
   να απαιτεί hover. Κρίσιμο εύρος 768-1100px.
   ⚠ ΤΑ ΤΡΙΑ ΚΟΥΜΠΙΑ ΕΧΟΥΝ ΙΔΙΟ ΒΑΡΟΣ ΕΠΙΤΗΔΕΣ — νομική απαίτηση, όχι αισθητική επιλογή.
   Μην κάνεις το «Αποδοχή» γεμάτο και τα άλλα δύο περιγράμματα.
   ═══════════════════════════════════════════════════════════════════════════════════════ */

.ekc{ position: fixed; inset: 0; z-index: 99998; pointer-events: none;
      display: flex; align-items: flex-end; justify-content: center; }

.ekc__σκιά{ position: absolute; inset: 0; background: rgba(21,23,30,.42);
   -webkit-backdrop-filter: blur(2px); backdrop-filter: blur(2px); pointer-events: auto; }

.ekc__panel{ position: relative; pointer-events: auto; background: var(--c-surface, #fff);
   color: var(--c-ink, #17191E); border: 1px solid var(--c-surface-tint, #E4E8F5);
   box-shadow: 0 -6px 40px rgba(10,20,40,.16);
   font-family: inherit; font-size: 1rem; line-height: 1.5; }

/* ── ΤΟ ΠΑΡΑΘΥΡΟ ΤΗΣ ΠΡΩΤΗΣ ΕΠΙΣΚΕΨΗΣ (24/8) ──
   Κλειδώνει τη σελίδα μέχρι να απαντήσεις. Τα τρία κουμπιά παραμένουν ΠΑΝΟΜΟΙΟΤΥΠΑ. */
.ekc__σκιά--μπλοκ{ background: rgba(21,23,30,.55); }
.ekc__panel--πρώτο{ width: min(38rem, calc(100vw - 2rem)); max-height: calc(100svh - 3rem);
   overflow: auto; border-radius: 18px; margin: 1rem; padding: 1.6rem;
   align-self: center; display: grid; gap: 1.2rem;
   animation: ekc-in .35s cubic-bezier(.22,1,.36,1) both; }
@media (min-width: 560px){ .ekc__panel--πρώτο .ekc__btns{ grid-auto-flow: column; grid-auto-columns: 1fr; } }

/* ── Η παλιά μπάρα (μένει για «γύρνα πίσω») ── */
.ekc__panel--bar{ width: 100%; max-width: 100%; border-radius: 18px 18px 0 0;
   padding: 1.35rem clamp(1.1rem, 4vw, 2.4rem) 1.5rem;
   display: grid; gap: 1.1rem; animation: ekc-up .45s cubic-bezier(.22,1,.36,1) both; }
@keyframes ekc-up{ from{ transform: translateY(100%); } to{ transform: none; } }
@media (min-width: 900px){
  .ekc__panel--bar{ grid-template-columns: 1fr auto; align-items: center; gap: 2rem; }
}

/* ── Το παράθυρο ρυθμίσεων ── */
.ekc__panel--modal{ width: min(38rem, calc(100vw - 2rem)); max-height: calc(100svh - 3rem);
   overflow: auto; border-radius: 18px; margin: 1rem; padding: 1.5rem;
   align-self: center; animation: ekc-in .35s cubic-bezier(.22,1,.36,1) both; }
@keyframes ekc-in{ from{ transform: translateY(14px); opacity: 0; } to{ transform: none; opacity: 1; } }

.ekc__title{ margin: 0 0 .45rem; font-size: 1.15rem; font-weight: 700; letter-spacing: -.01em; }
.ekc__txt{ margin: 0; font-size: .95rem; color: var(--c-ink-soft, #5C646F); }
.ekc__txt a{ color: var(--c-cta, #00807D); text-decoration: underline; }
.ekc__txt b{ color: var(--c-ink, #17191E); font-weight: 600; }
.ekc__λεπ{ margin: .5rem 0 0; font-size: .8rem; color: var(--c-ink-mute, #8A919C);
   font-variant-numeric: tabular-nums; }

/* ── Κουμπιά: ΙΔΙΟ μέγεθος, ΙΔΙΟ χρώμα, ΙΔΙΑ αντίθεση ── */
.ekc__btns{ display: grid; gap: .6rem; }
@media (min-width: 560px){ .ekc__btns{ grid-auto-flow: column; grid-auto-columns: 1fr; } }
@media (min-width: 900px){ .ekc__panel--bar .ekc__btns{ grid-auto-columns: minmax(9.5rem, auto); } }

.ekc__btn{ min-height: 48px; padding: .8rem 1.15rem; border-radius: 11px; cursor: pointer;
   font: 600 .95rem/1.2 inherit; text-align: center;
   background: var(--c-surface, #fff); color: var(--c-ink, #17191E);
   border: 1.5px solid var(--c-ink, #17191E);
   transition: background-color .18s ease, color .18s ease; }
.ekc__btn:hover, .ekc__btn:focus-visible{ background: var(--c-ink, #17191E); color: #fff; outline: none; }
.ekc__btn:focus-visible{ box-shadow: 0 0 0 3px var(--c-accent, #4BECE7); }

/* ── Ομάδες στο παράθυρο ρυθμίσεων ── */
.ekc__ομ{ padding: 1rem 0; border-top: 1px solid var(--c-surface-tint, #E4E8F5); }
.ekc__ομ:first-of-type{ border-top: 0; }
.ekc__ομ-κεφ{ display: flex; align-items: center; justify-content: space-between; gap: 1rem;
   min-height: 44px; font-weight: 700; font-size: 1rem; cursor: pointer; }
.ekc__ομ:first-of-type .ekc__ομ-κεφ{ cursor: default; }
.ekc__πάντα{ font-weight: 500; font-size: .82rem; color: var(--c-ink-mute, #8A919C); }

/* Διακόπτης — μεγάλος στόχος αφής, χωρίς εικονίδιο */
.ekc__δια{ appearance: none; -webkit-appearance: none; margin: 0;
   width: 52px; height: 30px; border-radius: 999px; flex: none; cursor: pointer;
   background: var(--c-surface-tint, #E4E8F5); border: 1.5px solid var(--c-ink-mute, #8A919C);
   position: relative; transition: background-color .2s ease, border-color .2s ease; }
.ekc__δια::after{ content: ''; position: absolute; top: 2px; left: 2px;
   width: 22px; height: 22px; border-radius: 50%; background: var(--c-surface, #fff);
   box-shadow: 0 1px 3px rgba(10,20,40,.3); transition: transform .2s cubic-bezier(.22,1,.36,1); }
.ekc__δια:checked{ background: var(--c-ink, #17191E); border-color: var(--c-ink, #17191E); }
.ekc__δια:checked::after{ transform: translateX(22px); }
.ekc__δια:focus-visible{ outline: none; box-shadow: 0 0 0 3px var(--c-accent, #4BECE7); }

@media (prefers-reduced-motion: reduce){
  .ekc__panel, .ekc__δια::after{ animation: none !important; transition: none !important; }
}

/* ═══ Η ΛΩΡΙΔΑ ΣΤΗ ΣΕΛΙΔΑ ΑΝΑΜΟΝΗΣ — ΣΥΜΠΑΓΗΣ (27/8) ═══
   ΜΕΤΡΗΘΗΚΕ: στα 390px η λωρίδα έπιανε 491px ύψος και σκέπαζε το κουμπί «Εκδήλωση
   ενδιαφέροντος». Σε μια σελίδα που έχει ΕΝΑ σκοπό, αυτό είναι σφάλμα, όχι λεπτομέρεια.
   Τα κουμπιά μπαίνουν σε ΜΙΑ σειρά ακόμη και σε στενή οθόνη — παραμένουν ≥44px ύψος και
   πανομοιότυπα μεταξύ τους, όπως απαιτεί η νομοθεσία. */
html[data-consent="bar"] .ekc__panel--bar{
  padding: .85rem 1rem calc(.85rem + env(safe-area-inset-bottom, 0px));
  gap: .7rem; border-radius: 14px 14px 0 0; }
html[data-consent="bar"] .ekc__txt{ font-size: .88rem; line-height: 1.4; margin: 0; }
html[data-consent="bar"] .ekc__btns{
  display: grid; grid-auto-flow: column; grid-auto-columns: 1fr; gap: .5rem; }
html[data-consent="bar"] .ekc__btn{ padding: .6rem .4rem; font-size: .82rem; min-height: 44px; }
