/* ============================================================
   login-skyline.css — Νέο split-screen Login look (Metronic template)
   5 χρωματικά θέματα: govgr (default) / navy / teal / green / red
   Πηγή σχεδίασης: Claude Design "Οικονομική / egfin".
   Όλα scoped κάτω από body.login-container-new ώστε ΝΑ ΜΗΝ επηρεάζει
   το admin (Blazor) ούτε άλλες περιοχές. Φορτώνεται ΜΕΤΑ το Metronic.css.
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Public+Sans:ital,wght@0,300;0,400;0,500;0,600;0,700;1,400&display=swap');

/* ---- Tabler Icons (subset) — ίδια icons με το design ---- */
@font-face {
  font-family: "tabler-icons";
  font-style: normal;
  font-weight: 400;
  src: url("/webfonts/tabler-icons.woff2") format("woff2");
}
.login-container-new .ti {
  font-family: "tabler-icons" !important;
  font-style: normal; font-weight: normal; font-variant: normal;
  text-transform: none; line-height: 1; display: inline-block; speak: none;
  vertical-align: middle;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
.login-container-new .ti-mail:before { content: "\eae5"; }
.login-container-new .ti-lock:before { content: "\eae2"; }
.login-container-new .ti-eye:before { content: "\ea9a"; }
.login-container-new .ti-eye-off:before { content: "\ecf0"; }
.login-container-new .ti-check:before { content: "\ea5e"; }
.login-container-new .ti-language:before { content: "\ebbe"; }
.login-container-new .ti-chevron-down:before { content: "\ea5f"; }
.login-container-new .ti-arrow-right:before { content: "\ea1f"; }
.login-container-new .ti-id-badge-2:before { content: "\f076"; }
.login-container-new .ti-scale:before { content: "\ebc2"; }
.login-container-new .ti-loader-2:before { content: "\f226"; }
.login-container-new .ti-alert-circle:before { content: "\ea05"; }
.login-container-new .ti-key:before { content: "\eac7"; }
.login-container-new .ti-fingerprint:before { content: "\ebd1"; }
.login-container-new .ti-layout-grid:before { content: "\edba"; }
.login-container-new .ti-user:before { content: "\eb4d"; }
.login-container-new .ti-phone:before { content: "\eb09"; }
.login-container-new .ti-shield-lock:before { content: "\ed58"; }
.login-container-new .ti-chevron-right:before { content: "\ea61"; }
.login-container-new .ti-clock-hour-4:before { content: "\f319"; }
.login-container-new .ti-id:before { content: "\eac3"; }
.login-container-new .ti-map-pin:before { content: "\eae8"; }
.login-container-new .ti-building:before { content: "\ea4f"; }
.login-container-new .ti-world:before { content: "\eb54"; }
.login-container-new .ti-mailbox:before { content: "\eead"; }
.login-container-new .ti-circle-check:before { content: "\ea67"; }
.login-container-new .ti-info-circle:before { content: "\eac5"; }
.login-container-new .ti-alert-triangle:before { content: "\ea06"; }
.login-container-new .ti-x:before { content: "\eb55"; }
.login-container-new .ti-file-description:before { content: "\f028"; }

/* ---- Χρωματικά θέματα (default govgr) ---- */
body.login-container-new {
  --sky-primary:        #00243b;
  --sky-primary-hover:  #001827;
  --sky-brand-bg:       #00121f;
  --sky-glow:           rgba(0, 64, 105, .55);
  --sky-glow-0:         rgba(0, 64, 105, 0);
  --sky-ring:           rgba(0, 36, 59, .16);
  --sky-shadow:         rgba(0, 36, 59, .26);
  --sky-shadow-strong:  rgba(0, 36, 59, .30);

  /* Ουδέτερα (egfin tokens) */
  --sky-ink:            #1b2433;
  --sky-ink-2:          #4a5568;
  --sky-ink-3:          #6b7280;
  --sky-ink-4:          #9aa3b2;
  --sky-border:         #e4e7eb;
  --sky-border-strong:  #d2d6dc;
  --sky-surface-alt:    #fafbfc;
  --sky-primary-soft:   #eef2f8;
  --sky-font: 'Public Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Commissioner', 'Helvetica Neue', Arial, sans-serif;
}
body.login-container-new.scheme-navy {
  --sky-primary:#1e3548; --sky-primary-hover:#335c7d; --sky-brand-bg:#0d1b26;
  --sky-glow:rgba(61,109,148,.55); --sky-glow-0:rgba(61,109,148,0);
  --sky-ring:rgba(0,0,0,.14); --sky-shadow:rgba(0,0,0,.18); --sky-shadow-strong:rgba(0,0,0,.22);
}
body.login-container-new.scheme-teal {
  --sky-primary:#2d7577; --sky-primary-hover:#235a5c; --sky-brand-bg:#0f1f27;
  --sky-glow:rgba(45,117,119,.55); --sky-glow-0:rgba(45,117,119,0);
  --sky-ring:rgba(45,117,119,.16); --sky-shadow:rgba(45,117,119,.28); --sky-shadow-strong:rgba(45,117,119,.32);
}
body.login-container-new.scheme-green {
  --sky-primary:#3f6b4f; --sky-primary-hover:#31543e; --sky-brand-bg:#0f2117;
  --sky-glow:rgba(63,107,79,.55); --sky-glow-0:rgba(63,107,79,0);
  --sky-ring:rgba(0,0,0,.14); --sky-shadow:rgba(0,0,0,.18); --sky-shadow-strong:rgba(0,0,0,.22);
}
body.login-container-new.scheme-red {
  --sky-primary:#c2413f; --sky-primary-hover:#a83335; --sky-brand-bg:#25100f;
  --sky-glow:rgba(160,40,38,.55); --sky-glow-0:rgba(160,40,38,0);
  --sky-ring:rgba(194,65,63,.16); --sky-shadow:rgba(194,65,63,.26); --sky-shadow-strong:rgba(194,65,63,.30);
}
body.login-container-new.scheme-amber {
  --sky-primary:#9a6206; --sky-primary-hover:#7c4e04; --sky-brand-bg:#1d1503;
  --sky-glow:rgba(200,140,26,.55); --sky-glow-0:rgba(200,140,26,0);
  --sky-ring:rgba(154,98,6,.16); --sky-shadow:rgba(154,98,6,.26); --sky-shadow-strong:rgba(154,98,6,.30);
}
body.login-container-new.scheme-copper {
  --sky-primary:#8c4a2f; --sky-primary-hover:#6f3922; --sky-brand-bg:#1c0f0a;
  --sky-glow:rgba(178,92,50,.58); --sky-glow-0:rgba(178,92,50,0);
  --sky-ring:rgba(140,74,47,.16); --sky-shadow:rgba(140,74,47,.26); --sky-shadow-strong:rgba(140,74,47,.30);
}
body.login-container-new.scheme-purple {
  --sky-primary:#4f2a72; --sky-primary-hover:#3c1f57; --sky-brand-bg:#150b21;
  --sky-glow:rgba(124,58,181,.6); --sky-glow-0:rgba(124,58,181,0);
  --sky-ring:rgba(79,42,114,.16); --sky-shadow:rgba(79,42,114,.26); --sky-shadow-strong:rgba(79,42,114,.30);
}
body.login-container-new.scheme-fancy {
  --sky-primary:#c2185b; --sky-primary-hover:#a01249; --sky-brand-bg:#140b2b;
  --sky-glow:rgba(139,92,246,.6); --sky-glow-0:rgba(139,92,246,0);
  --sky-ring:rgba(194,24,91,.16); --sky-shadow:rgba(194,24,91,.26); --sky-shadow-strong:rgba(194,24,91,.30);
}
/* ── Fancy specials: πολύχρωμα εφέ (rainbow bubble, 3 glows, gradient accent) ΜΟΝΟ σε αυτό το θέμα ── */
body.login-container-new.scheme-fancy .eg-intro__bubble {
  background: radial-gradient(62% 58% at 42% 34%, #ec4899 0%, #8b5cf6 38%, #4c1d8f 66%, #140b2b 100%);
}
body.login-container-new.scheme-fancy .eg-intro__ring { border-color: rgba(236,72,153,.55); }
body.login-container-new.scheme-fancy .sky-brand-rule {
  background: linear-gradient(90deg, #ec4899 0%, #8b5cf6 50%, #2dd4bf 100%) !important;
  width: 58px !important; height: 3px !important; border-radius: 2px;
}
/* Δεύτερο (ροζ) και τρίτο (τιρκουάζ) glow μέσω pseudo-elements στο υπάρχον .sky-glow */
body.login-container-new.scheme-fancy .sky-glow::before,
body.login-container-new.scheme-fancy .sky-glow::after {
  content: ''; position: absolute; pointer-events: none;
}
body.login-container-new.scheme-fancy .sky-glow::before {
  width: 120%; height: 120%; left: -30%; bottom: -40%;
  background: radial-gradient(40% 40% at 50% 50%, rgba(236,72,153,.5) 0%, rgba(236,72,153,0) 70%);
  animation: skyDrift 21s ease-in-out 2s infinite;
}
body.login-container-new.scheme-fancy .sky-glow::after {
  width: 90%; height: 90%; right: -28%; top: 26%;
  background: radial-gradient(40% 40% at 50% 50%, rgba(45,212,191,.34) 0%, rgba(45,212,191,0) 70%);
  animation: skyDrift 18s ease-in-out 5s infinite;
}

/* ---- Shell reset (μόνο για το νέο login body) ---- */
body.login-container-new {
  margin: 0; padding: 0; background: #ffffff;
  color: var(--sky-ink); font-family: var(--sky-font);
}
body.login-container-new * { box-sizing: border-box; }
body.login-container-new a { color: var(--sky-primary); text-decoration: none; }
body.login-container-new a:hover { color: var(--sky-primary-hover); }

/* ============================================================
   SPLIT-SCREEN SHELL
   ============================================================ */
.login-container-new .sky-shell {
  min-height: 100vh;
  display: grid;
  grid-template-columns: 1fr 1.06fr;
  background: #ffffff;
}
/* brand/logo αριστερά, φόρμα δεξιά */
.login-container-new .sky-brand { order: 1; }
.login-container-new .sky-form { order: 2; }

/* ---- FORM SIDE (αριστερά) ---- */
.login-container-new .sky-form {
  position: relative;
  display: flex;
  flex-direction: column;
  padding: 40px 52px 26px;
  overflow: hidden;
  background: #ffffff;
}
.login-container-new .sky-form::before {
  content: "";
  position: absolute; inset: 0;
  background-image: radial-gradient(var(--sky-border) 1px, transparent 1px);
  background-size: 22px 22px;
  opacity: .55;
  -webkit-mask-image: radial-gradient(120% 90% at 88% 0%, #000 0%, transparent 62%);
  mask-image: radial-gradient(120% 90% at 88% 0%, #000 0%, transparent 62%);
  pointer-events: none;
}
.login-container-new .sky-form-body {
  position: relative;
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  max-width: 452px; width: 100%;
  margin: 0 auto;
  padding: 24px 0;
  animation: skyRise .5s ease both;
}
/* Register page: 2-στηλο layout (Όνομα/Επώνυμο, Κωδικός/Επιβεβαίωση) -> φαρδύτερη φόρμα + footer */
.login-container-new .sky-form-body:has(.sky-row) { max-width: 500px; }
.login-container-new .sky-form:has(.sky-row) .sky-form-foot { max-width: 500px; }
.login-container-new .sky-form-foot {
  position: relative;
  display: flex; align-items: center; justify-content: space-between;
  gap: 16px;
  max-width: 452px; width: 100%; margin: 0 auto;
  font-size: 12.5px; color: var(--sky-ink-4);
}

/* ---- Τίτλος / intro ---- */
.login-container-new .sky-title {
  margin: 0; font-size: 40px; font-weight: 700;
  letter-spacing: -.02em; line-height: 1.05; color: var(--sky-ink);
}
.login-container-new .sky-intro {
  margin: 10px 0 24px; font-size: 15px; line-height: 1.5;
  color: var(--sky-ink-3); max-width: 36ch;
}

/* ---- Social providers ---- */
.login-container-new .sky-providers {
  display: grid; grid-template-columns: 1fr 1fr; gap: 10px;
}
.login-container-new .sky-provider {
  display: flex; align-items: center; justify-content: center; gap: 8px;
  height: 44px; padding: 0 10px;
  border: 1px solid var(--sky-border); border-radius: 8px;
  background: #fff; color: var(--sky-ink-2);
  font-family: inherit; font-size: 13.5px; font-weight: 400;
  cursor: pointer; transition: all .12s ease; text-align: center;
}
.login-container-new .sky-provider:hover {
  border-color: var(--sky-border-strong); background: var(--sky-surface-alt);
  color: var(--sky-ink-2);
}
.login-container-new .sky-provider--wide { grid-column: span 2; }
.login-container-new .sky-providers.one-provider .sky-provider { grid-column: span 2; }
.login-container-new .sky-provider .img-icon,
.login-container-new .sky-provider img { height: 18px; width: auto; margin: 0; }
.login-container-new .sky-provider i { font-size: 16px; width: 20px; text-align: center; }
.login-container-new .sky-provider .sky-i-gsis { color: var(--sky-primary); }

/* ---- Separator ---- */
.login-container-new .sky-sep {
  display: flex; align-items: center; gap: 14px; margin: 22px 0 18px;
}
.login-container-new .sky-sep::before,
.login-container-new .sky-sep::after {
  content: ""; flex: 1; height: 1px; background: var(--sky-border);
}
.login-container-new .sky-sep span {
  font-size: 10.5px; font-weight: 600; letter-spacing: .1em;
  text-transform: uppercase; color: var(--sky-ink-4); white-space: nowrap;
}

/* ---- Floating-label fields ---- */
.login-container-new .sky-fields { display: flex; flex-direction: column; gap: 16px; }
.login-container-new .sky-field { position: relative; display: block; }
.login-container-new .sky-field-icon {
  position: absolute; left: 13px; top: 50%; transform: translateY(-50%);
  font-size: 16px; color: var(--sky-ink-4); pointer-events: none; z-index: 2;
}
.login-container-new .sky-input {
  width: 100%; height: 50px;
  padding: 16px 14px 0 40px;
  border: 1px solid var(--sky-border-strong); border-radius: 8px;
  background: #fff; font-size: 14.5px; color: var(--sky-ink);
  font-family: var(--sky-font); font-weight: 400; outline: none;
  transition: box-shadow .12s ease, border-color .12s ease;
}
/* το κείμενο μέσα στα πεδία: normal weight (το Metronic .input κάνει 500 -> πιο bold) */
body.login-container-new .sky-form-body .sky-input,
body.login-container-new .sky-form-body .input { font-weight: 400; color: var(--sky-ink); }
.login-container-new .sky-field-pass .sky-input { padding-right: 46px; }
.login-container-new .sky-input:focus {
  border-color: var(--sky-primary);
  box-shadow: 0 0 0 3px var(--sky-ring);
}
.login-container-new .sky-field-label {
  position: absolute; left: 40px; top: 50%; transform: translateY(-50%);
  pointer-events: none; font-size: 14.5px; font-weight: 400; color: var(--sky-ink-4);
  transition: all .14s ease;
  max-width: calc(100% - 52px); overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.login-container-new .sky-input:focus + .sky-field-label,
.login-container-new .sky-input:not(:placeholder-shown) + .sky-field-label {
  top: 7px; transform: none; font-size: 10.5px; font-weight: 600;
  letter-spacing: .07em; text-transform: uppercase; color: var(--sky-ink-3);
}
/* Autofill/refresh: όταν ο browser επαναφέρει αποθηκευμένα στοιχεία, το :placeholder-shown
   δεν ενημερώνεται πάντα (Chrome/WebKit quirk) -> το label μένει κάτω πάνω στο κείμενο.
   Force float και για autofilled πεδία. Ξεχωριστά rules: άγνωστος selector ρίχνει όλο το group. */
.login-container-new .sky-input:-webkit-autofill + .sky-field-label {
  top: 7px; transform: none; font-size: 10.5px; font-weight: 600;
  letter-spacing: .07em; text-transform: uppercase; color: var(--sky-ink-3);
}
.login-container-new .sky-input:autofill + .sky-field-label {
  top: 7px; transform: none; font-size: 10.5px; font-weight: 600;
  letter-spacing: .07em; text-transform: uppercase; color: var(--sky-ink-3);
}
.login-container-new .sky-eye {
  position: absolute; right: 8px; top: 0; bottom: 0; margin: auto 0;
  width: 36px; height: 36px; display: flex; align-items: center; justify-content: center;
  padding: 0; line-height: 0; transform: none;
  border: 0; border-radius: 6px; background: transparent;
  color: var(--sky-ink-3); cursor: pointer; transition: all .12s ease; z-index: 2;
}
.login-container-new .sky-eye i { font-size: 20px; line-height: 1; display: block; }
.login-container-new .sky-eye:hover { background: var(--sky-primary-soft); color: var(--sky-primary); }

/* ---- Select field (χώρα κ.λπ.) — styled σαν input με floating label πάντα «πάνω» ---- */
.login-container-new .sky-field-select .sky-select {
  width: 100%; height: 50px;
  padding: 17px 38px 0 40px;
  border: 1px solid var(--sky-border-strong); border-radius: 8px;
  background: #fff; font-size: 14.5px; color: var(--sky-ink);
  font-family: var(--sky-font); font-weight: 400; outline: none; cursor: pointer;
  appearance: none; -webkit-appearance: none; -moz-appearance: none;
  text-overflow: ellipsis;
  transition: box-shadow .12s ease, border-color .12s ease;
}
.login-container-new .sky-field-select .sky-select:focus {
  border-color: var(--sky-primary); box-shadow: 0 0 0 3px var(--sky-ring);
}
/* Το select έχει πάντα τιμή -> το label μένει σταθερά «πάνω» (όπως τα filled inputs) */
.login-container-new .sky-field-select .sky-field-label {
  top: 7px; transform: none; font-size: 10.5px; font-weight: 600;
  letter-spacing: .07em; text-transform: uppercase; color: var(--sky-ink-3);
}
.login-container-new .sky-field-select .sky-select-arrow {
  position: absolute; right: 14px; top: 50%; transform: translateY(-50%);
  font-size: 15px; color: var(--sky-ink-4); pointer-events: none; z-index: 2;
}

/* ---- Submit ---- */
.login-container-new .sky-submit {
  margin-top: 22px;
  display: flex; align-items: center; justify-content: center; gap: 10px;
  width: 100%; height: 50px; border: 0; border-radius: 8px;
  background: var(--sky-primary); color: #fff;
  font-family: inherit; font-size: 15px; font-weight: 600; letter-spacing: .01em;
  cursor: pointer; box-shadow: 0 6px 18px var(--sky-shadow);
  transition: background .12s ease, transform .12s ease, box-shadow .12s ease;
}
.login-container-new .sky-submit:hover {
  background: var(--sky-primary-hover); transform: translateY(-1px);
  box-shadow: 0 10px 24px var(--sky-shadow-strong); color: #fff;
}
.login-container-new .sky-submit:active { transform: translateY(0); }

/* ---- Error alert (όπως design) ---- */
.login-container-new .sky-alert {
  display: flex; align-items: flex-start; gap: 10px; margin-bottom: 14px;
  padding: 11px 13px; border: 1px solid rgba(234,84,85,.35); border-left: 3px solid #ea5455;
  border-radius: 8px; background: rgba(234,84,85,.07);
}
.login-container-new .sky-alert > i { flex: none; margin-top: 1px; font-size: 17px; color: #ea5455; }
.login-container-new .sky-alert .sky-alert-body { font-size: 13px; line-height: 1.45; color: #b23e3f; }
.login-container-new .sky-alert .sky-alert-body a { color: #b23e3f; font-weight: 600; text-decoration: underline; }
.login-container-new .sky-loginform.has-error .sky-input { border-color: rgba(234,84,85,.6); }

/* register: 2 στήλες (Όνομα/Επώνυμο), κόκκινος αστερίσκος, τίτλος αριστερά */
.login-container-new .sky-row { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
/* Section headers (register): «Προσωπικά στοιχεία», «Στοιχεία επικοινωνίας», «Κωδικός πρόσβασης» */
.login-container-new .sky-section-title {
  display: block; margin: 12px 0 -4px; font-size: 11px; font-weight: 700;
  letter-spacing: .1em; text-transform: uppercase; color: var(--sky-ink-4);
}
.login-container-new .sky-fields > .sky-section-title:first-child { margin-top: 0; }
/* Password strength meter */
.login-container-new .sky-pw-strength { display: flex; align-items: center; gap: 8px; margin-top: 8px; }
.login-container-new .sky-pw-bar { flex: 1; height: 3px; border-radius: 2px; background: var(--sky-border); overflow: hidden; }
.login-container-new .sky-pw-bar-fill { display: block; height: 100%; width: 0; background: var(--sky-border); border-radius: 2px; transition: width .25s ease, background .25s ease; }
.login-container-new .sky-pw-label { font-size: 11px; font-weight: 600; letter-spacing: .04em; color: var(--sky-ink-3); min-width: 62px; text-align: right; }
.login-container-new .sky-pw-hint { margin: 6px 0 0; font-size: 11.5px; line-height: 1.45; color: var(--sky-ink-4); }
.login-container-new .sky-req { color: #ea5455; font-weight: 700; }
.login-container-new .sky-form-body .register-head { justify-content: flex-start; margin-bottom: 2px; }
.login-container-new .sky-form-body .register-title { text-align: left; font-size: 40px; font-weight: 700; letter-spacing: -.02em; }
.login-container-new .sky-form-body .register-subltitle {
  display: block; text-align: left; width: auto; max-width: 40ch;
  font-size: 15px; line-height: 1.5; font-weight: 400; color: var(--sky-ink-3);
  margin: 10px 0 24px;
}
/* Tablet: μόνο Όνομα/Επώνυμο μένουν 2 σε σειρά· τα υπόλοιπα (Email/Τηλέφωνο, Κωδικός/Επιβεβαίωση) ένα ανά σειρά */
@media (max-width: 1024px) { .login-container-new .sky-row:not(.sky-row-names) { grid-template-columns: 1fr; } }
/* Κινητό: όλα ένα ανά σειρά */
@media (max-width: 480px) { .login-container-new .sky-row { grid-template-columns: 1fr; } }
/* Πόλη + ΤΚ πάντα στην ίδια σειρά, με την Πόλη να πιάνει μεγαλύτερο χώρο (ακόμα και σε κινητό) */
.login-container-new .sky-row.sky-row-city-zip { grid-template-columns: 1.75fr 1fr; }
@media (max-width: 1024px) { .login-container-new .sky-row.sky-row-city-zip { grid-template-columns: 1.75fr 1fr; } }
@media (max-width: 480px) { .login-container-new .sky-row.sky-row-city-zip { grid-template-columns: 1.6fr 1fr; gap: 10px; } }

/* ---- Terms ---- */
.login-container-new .sky-terms {
  display: flex; gap: 10px; align-items: flex-start; margin-top: 18px;
  font-size: 12.5px; line-height: 1.5; color: var(--sky-ink-3);
}
.login-container-new .sky-terms p { margin: 0; color: var(--sky-ink-3); font-size: 12.5px; line-height: 1.5; }
.login-container-new .sky-terms a { font-weight: 600; }

/* ---- Links row (Εγγραφή / Ξεχάσατε) ---- */
.login-container-new .sky-links {
  display: flex; align-items: baseline; justify-content: space-between;
  gap: 16px; margin-top: 22px; padding-top: 18px;
  border-top: 1px solid var(--sky-border);
  font-size: 13px; color: var(--sky-ink-3);
}
.login-container-new .sky-links a { font-weight: 600; white-space: nowrap; }
/* Wrapper των text-links: σε desktop «διάφανο» (contents) ώστε register/forgot να μένουν
   flex-children του sky-links (space-between)· σε κινητά γίνεται στήλη (βλ. @992). */
.login-container-new .sky-links-text { display: contents; }
.login-container-new .sky-forgot a { color: var(--sky-primary); }
/* Inline (mobile-only) γλώσσα δίπλα στα links — κρυφή σε desktop· menu ανοίγει προς αριστερά. */
.login-container-new .sky-lang-inlinks { display: none; }
.login-container-new .sky-lang-inlinks .sky-lang-menu { left: auto; right: 0; }

/* ---- Language picker (form foot) ---- */
.login-container-new .sky-lang { position: relative; }
.login-container-new .sky-lang-btn {
  display: inline-flex; align-items: center; gap: 8px; padding: 7px 10px;
  border: 1px solid var(--sky-border); border-radius: 8px; background: #fff;
  font-family: inherit; font-size: 12.5px; font-weight: 600; color: var(--sky-ink-2);
  cursor: pointer; transition: all .12s ease;
}
.login-container-new .sky-lang-btn:hover { border-color: var(--sky-border-strong); background: var(--sky-surface-alt); }
.login-container-new .sky-lang-btn img { width: 18px; height: auto; border-radius: 3px; }
.login-container-new .sky-lang-menu {
  position: absolute; bottom: calc(100% + 6px); left: 0; min-width: 148px;
  padding: 4px 0; border: 1px solid var(--sky-border); border-radius: 8px;
  background: #fff; box-shadow: 0 5px 12px 0 rgba(67,89,113,.18);
  overflow: hidden; z-index: 5;
  opacity: 0; visibility: hidden; transform: translateY(4px); transition: all .14s ease;
}
.login-container-new .sky-lang:hover .sky-lang-menu,
.login-container-new .sky-lang:focus-within .sky-lang-menu { opacity: 1; visibility: visible; transform: translateY(0); }
.login-container-new .sky-lang-menu button {
  display: flex; align-items: center; gap: 8px; width: 100%; padding: 8px 12px;
  border: 0; background: transparent; font-family: inherit; font-size: 12.5px;
  font-weight: 500; text-align: left; color: var(--sky-ink-2); cursor: pointer;
}
.login-container-new .sky-lang-menu button:hover { background: var(--sky-surface-alt); }
.login-container-new .sky-lang-menu img { width: 18px; height: auto; border-radius: 3px; }
.login-container-new .sky-official { font-size: 12.5px; font-weight: 600; color: var(--sky-ink-3); white-space: nowrap; }

/* ============================================================
   BRAND SIDE (δεξιά)
   ============================================================ */
.login-container-new .sky-brand {
  position: relative; overflow: hidden; z-index: 2;
  background: var(--sky-brand-bg);
  display: flex; flex-direction: column; justify-content: space-between;
  padding: 40px 48px;
  /* Κυρτή δεξιά άκρη που «αναπνέει» — αλλάζει σχήμα συνεχώς */
  border-radius: 0 46% 46% 0 / 0 50% 50% 0;
  animation: skyBrandMorph 7s ease-in-out infinite;
}
@keyframes skyBrandMorph {
  0%,100% { border-radius: 0 46% 46% 0 / 0 50% 50% 0; }
  25%     { border-radius: 0 58% 40% 0 / 0 44% 60% 0; }
  50%     { border-radius: 0 42% 54% 0 / 0 62% 42% 0; }
  75%     { border-radius: 0 52% 44% 0 / 0 40% 56% 0; }
}
/* Πιο πλατιές οθόνες (≥2000px): πιο ήπια καμπυλότητα ώστε ο «κόλπος» να μην τραβάει τόσο βαθιά */
@keyframes skyBrandMorphWide {
  0%,100% { border-radius: 0 28% 28% 0 / 0 32% 32% 0; }
  25%     { border-radius: 0 34% 24% 0 / 0 28% 38% 0; }
  50%     { border-radius: 0 25% 33% 0 / 0 38% 26% 0; }
  75%     { border-radius: 0 31% 26% 0 / 0 26% 35% 0; }
}
.login-container-new .sky-glow {
  position: absolute; width: 130%; height: 130%; left: -15%; top: -15%;
  background: radial-gradient(45% 45% at 62% 38%, var(--sky-glow) 0%, var(--sky-glow-0) 70%);
  animation: skyDrift 16s ease-in-out infinite; pointer-events: none;
}
.login-container-new .sky-stars { position: absolute; inset: 0; pointer-events: none; }
.login-container-new .sky-stars span {
  position: absolute; border-radius: 50%; background: rgba(255,255,255,.5);
  box-shadow: 0 0 8px 1.2px rgba(255,255,255,.16); opacity: .14;
  animation-name: skyTwinkle; animation-timing-function: ease-in-out; animation-iteration-count: infinite;
  animation-fill-mode: backwards;
}
.login-container-new .sky-brand-main {
  position: relative; flex: 1;
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  text-align: center; padding: 20px 0;
}
.login-container-new .sky-seal {
  position: relative; display: flex; align-items: center; justify-content: center; width: 100%;
}
.login-container-new .sky-seal a { display: grid; place-items: center; }
.login-container-new .sky-seal-ring {
  position: absolute; inset: 0; border: 1px solid rgba(255,255,255,.14); border-radius: 50%;
}
.login-container-new .sky-seal-pulse {
  position: absolute; inset: -22px; border: 1px solid rgba(255,255,255,.07); border-radius: 50%;
  animation: skyRing 4.5s ease-out infinite;
}
.login-container-new .sky-seal img {
  max-width: 250px; max-height: 175px; width: auto; height: auto; display: block;
  filter: drop-shadow(0 10px 26px rgba(0,0,0,.4));
}
/* Co-branding: brand logo + κάθετο (μικρό σε height) border + partner (Egritos) logo */
.login-container-new .sky-seal-cobrand { gap: 26px; }
.login-container-new .sky-seal-cobrand a { display: inline-grid; }
.login-container-new .sky-seal-cobrand img,
.login-container-new .sky-seal-partner { max-width: 168px; max-height: 92px; }
.login-container-new .sky-seal-divider { width: 1px; height: 46px; background: rgba(255,255,255,.22); flex: none; }

/* ============================================================
   INTRO — "φούσκα" με το Egritos logo που φεύγει προς το σκούρο panel (αριστερά)
   Παίζει μία φορά ανά session (JS sessionStorage -> .eg-intro-done)
   ============================================================ */
@keyframes egCurtain {
  0%, 52%  { background: #fff; }
  72%      { background: rgba(255,255,255,0); }
  100%     { background: rgba(255,255,255,0); visibility: hidden; }
}
@keyframes egBubble {
  0%   { transform: translateX(0) scale(0) rotate(-8deg); opacity: 0;
         border-radius: 46% 54% 50% 50% / 52% 48% 52% 48%; }
  10%  { opacity: 1; }
  22%  { transform: translateX(0) scale(1) rotate(0deg);
         border-radius: 58% 42% 47% 53% / 44% 56% 44% 56%; }
  32%  { transform: translateX(0) scale(1.08) rotate(3deg);
         border-radius: 40% 60% 56% 44% / 58% 40% 60% 42%; }
  44%  { transform: translateX(0) scale(1.01) rotate(-2deg);
         border-radius: 55% 45% 38% 62% / 42% 60% 40% 58%; }
  56%  { transform: translateX(0) scale(1.04) rotate(2deg);
         border-radius: 44% 56% 60% 40% / 56% 44% 58% 42%; }
  86%  { opacity: 1; }
  100% { transform: translateX(-24vw) scale(7) rotate(-4deg); opacity: 0;
         border-radius: 50%; }
}
@keyframes egBlobWobble {
  0%   { border-radius: 58% 42% 47% 53% / 44% 56% 44% 56%; }
  25%  { border-radius: 44% 56% 58% 42% / 56% 44% 58% 42%; }
  50%  { border-radius: 52% 48% 40% 60% / 42% 58% 40% 60%; }
  75%  { border-radius: 40% 60% 54% 46% / 58% 42% 56% 44%; }
  100% { border-radius: 58% 42% 47% 53% / 44% 56% 44% 56%; }
}
@keyframes egBubbleLogo {
  0%   { opacity: 0; transform: scale(.55); filter: blur(5px); }
  22%  { opacity: 1; transform: scale(1);   filter: blur(0); }
  30%  { transform: scale(1.06); }
  40%  { transform: scale(1); }
  56%  { opacity: 1; }
  68%  { opacity: 0; transform: scale(1.1); }
  100% { opacity: 0; }
}
@keyframes egBubbleRing {
  0%, 24% { opacity: 0; transform: scale(.9) rotate(0deg);
            border-radius: 58% 42% 47% 53% / 44% 56% 44% 56%; }
  32%     { opacity: .5; }
  100%    { opacity: 0; transform: scale(1.9) rotate(14deg);
            border-radius: 42% 58% 55% 45% / 56% 44% 58% 42%; }
}
.eg-intro {
  position: fixed; inset: 0; z-index: 1060;
  display: grid; place-items: center;
  pointer-events: none; background: #fff;
  animation: egCurtain 2.1s linear both;
}
.eg-intro__bubble {
  position: relative; width: 300px; height: 300px;
  border-radius: 58% 42% 47% 53% / 44% 56% 44% 56%;
  background: radial-gradient(68% 68% at 50% 42%, var(--sky-primary) 0%, var(--sky-brand-bg) 72%);
  box-shadow: 0 30px 90px rgba(0,18,31,.45);
  display: grid; place-items: center;
  animation: egBubble 2.1s cubic-bezier(.62,.02,.3,1) both,
             egBlobWobble 3.4s ease-in-out infinite;
}
.eg-intro__ring {
  position: absolute; inset: -6px;
  border-radius: 58% 42% 47% 53% / 44% 56% 44% 56%;
  border: 1px solid rgba(255,255,255,.35);
  animation: egBubbleRing 2.1s cubic-bezier(.2,.8,.3,1) both;
}
.eg-intro__logo {
  width: 152px; height: auto; display: block;
  animation: egBubbleLogo 2.1s cubic-bezier(.62,.02,.3,1) both;
}
/* Έχει ήδη παίξει σε αυτό το session -> μη το δείχνεις (χωρίς flash) */
.eg-intro-done .eg-intro { display: none !important; }
@media (prefers-reduced-motion: reduce) { .eg-intro { display: none; } }
.login-container-new .sky-brand-sub-short { display: none; }
.login-container-new .sky-brand-title {
  margin: 32px 0 0; font-size: clamp(22px, 3vw, 38px); font-weight: 500;
  letter-spacing: -.02em; line-height: 1.08; color: #fff;
}
.login-container-new .sky-brand-rule { width: 46px; height: 2px; background: var(--sky-primary); margin: 40px 0; }
.login-container-new .sky-brand-sub,
.login-container-new .sky-brand-sub-short {
  margin: 16px 0 0; max-width: 52ch; font-size: 14.5px; line-height: 1.6; color: rgba(255,255,255,.6);
}
.login-container-new .sky-features {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px;
  margin-top: 32px; width: 100%; max-width: 420px;
}
.login-container-new .sky-feature {
  display: flex; flex-direction: column; align-items: center; gap: 8px;
  padding: 16px 8px; border: 1px solid rgba(255,255,255,.09); border-radius: 10px;
  background: rgba(255,255,255,.035);
}
.login-container-new .sky-feature i { font-size: 19px; color: rgba(255,255,255,.72); }
.login-container-new .sky-feature span {
  font-size: 11px; font-weight: 600; letter-spacing: .05em; text-transform: uppercase;
  color: rgba(255,255,255,.5); line-height: 1.3; text-align: center;
}
.login-container-new .sky-brand-foot {
  position: relative; display: flex; align-items: center; justify-content: space-between;
  gap: 16px; padding-top: 18px; border-top: 1px solid rgba(255,255,255,.08);
}
.login-container-new .sky-brand-foot span {
  font-size: 11px; letter-spacing: .06em; text-transform: uppercase; color: rgba(255,255,255,.32);
}
.login-container-new .sky-brand-foot .sky-brand-foot-strong { font-weight: 600; }
/* ΕΣΠΑ banner (κάτω στο brand panel) */
.login-container-new .sky-espa {
  position: relative; z-index: 1; width: 100%; max-width: 300px; align-self: center; margin: 0 auto;
  display: flex; align-items: center; justify-content: center;
  border-radius: 10px;
}
.login-container-new .sky-espa img { width: 100%; height: auto; display: block; }
/* άσπρο ΕΣΠΑ (άσπρο κείμενο) σε dark panel -> διαφανές */
.login-container-new .sky-espa.sky-espa-plain img { background: transparent !important; }
/* σκούρο ΕΣΠΑ (μπλε κείμενο) -> λευκό card */
.login-container-new .sky-espa.sky-espa-card img { background: #fff; padding: 8px 12px; border-radius: 8px; }

/* Βήματα (steps) — κύκλοι με connecting lines */
.login-container-new .sky-steps {
  position: relative; display: grid; grid-template-columns: repeat(3, 1fr); gap: 0;
  width: 100%; max-width: 430px;
}
.login-container-new .sky-steps-line {
  position: absolute; top: 17px; height: 1px;
  background: linear-gradient(90deg, rgba(255,255,255,.06), rgba(255,255,255,.22), rgba(255,255,255,.06));
}
.login-container-new .sky-steps-line-1 { left: calc(16.66% + 26px); width: calc(33.33% - 52px); }
.login-container-new .sky-steps-line-2 { left: calc(50% + 26px); width: calc(33.33% - 52px); }
.login-container-new .sky-step {
  position: relative; z-index: 1; display: flex; flex-direction: column; align-items: center; gap: 10px;
}
.login-container-new .sky-step-ic {
  display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50%;
  border: 1px solid rgba(255,255,255,.22); background: rgba(255,255,255,.06);
  transition: background .18s ease, border-color .18s ease, transform .18s ease;
}
.login-container-new .sky-step:hover .sky-step-ic { background: rgba(255,255,255,.13); border-color: rgba(255,255,255,.4); transform: translateY(-2px); }
.login-container-new .sky-step-ic i { font-size: 16px; color: rgba(255,255,255,.8); }
.login-container-new .sky-step-lbl {
  font-size: 11px; font-weight: 600; letter-spacing: .05em; text-transform: uppercase;
  color: rgba(255,255,255,.5); line-height: 1.35; text-align: center;
}

/* ============================================================
   ANIMATIONS
   ============================================================ */
@keyframes skyDrift {
  0%   { transform: translate3d(0,0,0) scale(1); }
  50%  { transform: translate3d(0,-3%,0) scale(1.06); }
  100% { transform: translate3d(0,0,0) scale(1); }
}
@keyframes skyRise { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
@keyframes skyOrbitA {
  0%   { transform: rotate(0deg) translateY(0) scale(1);      border-radius: 42%; }
  25%  { transform: rotate(5deg) translateY(-12px) scale(1.05); border-radius: 52% 38% 46% 44%; }
  50%  { transform: rotate(9deg) translateY(-18px) scale(1.09); border-radius: 34% 50% 40% 56%; }
  75%  { transform: rotate(4deg) translateY(-8px) scale(1.04);  border-radius: 48% 42% 55% 36%; }
  100% { transform: rotate(0deg) translateY(0) scale(1);      border-radius: 42%; }
}
@keyframes skyOrbitB {
  0%   { transform: rotate(0deg) translateY(0) scale(1);       border-radius: 46%; }
  30%  { transform: rotate(-7deg) translateY(9px) scale(1.07);  border-radius: 38% 54% 42% 50%; }
  60%  { transform: rotate(-11deg) translateY(14px) scale(1.11); border-radius: 55% 36% 50% 40%; }
  100% { transform: rotate(0deg) translateY(0) scale(1);       border-radius: 46%; }
}
@keyframes skyRing { 0% { opacity: .35; transform: scale(1); } 100% { opacity: 0; transform: scale(1.35); } }
@keyframes skyTwinkle { 0%, 100% { opacity: .14; transform: scale(.97); } 50% { opacity: .28; transform: scale(1.02); } }

@media (prefers-reduced-motion: reduce) {
  .login-container-new .sky-glow,
  .login-container-new .sky-orbit-a,
  .login-container-new .sky-orbit-b,
  .login-container-new .sky-seal-pulse,
  .login-container-new .sky-brand,
  .login-container-new .sky-form-body { animation: none !important; }
}

/* Μεγάλες οθόνες (>1600px): η καμπύλη μπαίνει κάτω από τη λευκή στήλη */
@media (min-width: 1600px) {
  .login-container-new .sky-brand { margin-right: -9%; }
}
/* Μεσαίες οθόνες (<1300px): μικρότερη καμπύλη ώστε να μη μπαίνει τόσο μέσα */
@keyframes skyBrandMorphSm {
  0%,100% { border-radius: 0 32% 32% 0 / 0 50% 50% 0; }
  25%     { border-radius: 0 40% 27% 0 / 0 44% 60% 0; }
  50%     { border-radius: 0 28% 37% 0 / 0 62% 42% 0; }
  75%     { border-radius: 0 36% 30% 0 / 0 40% 56% 0; }
}
@media (max-width: 1300px) {
  .login-container-new .sky-brand {
    border-radius: 0 32% 32% 0 / 0 50% 50% 0;
    animation-name: skyBrandMorphSm;
  }
}

/* ============================================================
   RESPONSIVE — tablet & mobile: stacked (brand πάνω, φόρμα κάτω)
   ============================================================ */
/* Env/URL tag (Demo/Δοκιμαστικό/Τοπικό) στο brand — server-gated (δεν renders σε production).
   Καθαρό κείμενο, όχι badge/ribbon/bar· το letter-spacing κάνει τη δουλειά. */
.login-container-new .auth-env {
  margin-top: 4px; font-size: 18px; font-weight: 700; letter-spacing: .34em;
  text-transform: uppercase; color: #ff6b6c; line-height: 1; text-indent: .34em;
  animation: skyRise .6s cubic-bezier(.22,.9,.24,1) 1.4s both;
}
/* Το accent rule πλησιάζει λίγο λόγω του tag */
.login-container-new .sky-brand-rule { margin: 34px 0 !important; }

.login-container-new .sky-brand-pagetitle, .login-container-new .sky-brand-pagesub { display: none; }

.login-container-new .sky-espa-mobile { display: none; }
.login-container-new .sky-espa-row { display: none; }
/* Collapsed «mini»: logo + τίτλος σελίδας σε μία οριζόντια γραμμή (ώστε να φαίνεται και ο τίτλος) */
.login-container-new .sky-brand--mini .sky-brand-main { flex-direction: row; align-items: center; justify-content: center; gap: 12px; }
.login-container-new .sky-brand--mini .sky-seal { margin: 0 !important; flex: 0 0 auto; width: auto !important; }
.login-container-new .sky-brand--mini .sky-seal img { max-height: 46px !important; max-width: 84px !important; }
.login-container-new .sky-brand--mini .sky-brand-pagetitle { font-size: 18px !important; margin: 0 !important; max-height: none !important; line-height: 1.12; overflow: visible; opacity: 1 !important; white-space: nowrap; flex: 0 1 auto; }
.login-container-new .sky-brand--mini .sky-brand-pagesub { display: none !important; }
.login-container-new .sky-lang-espa .sky-lang-menu { left: auto; right: 0; }
@media (max-width: 1024px) {
  /* Collapsing header: το shell γίνεται viewport-locked, το form είναι το scroll container,
     το brand κάθεται από πάνω και συρρικνώνεται με JS καθώς κάνεις scroll (μένει μικρό logo). */
  .login-container-new .sky-shell { display: block; position: relative; height: 100vh; min-height: 100vh; overflow: hidden; }
  /* Brand section: ΣΤΑΘΕΡΟ ύψος (μεγαλύτερος χώρος) + κεντραρισμένο περιεχόμενο -> πιο ομοιόμορφο look */
  /* v2 mobile: καμπύλη κάτω άκρη (arc) όπως το Claude Design "Login/Register v2 mobile" */
  .login-container-new .sky-brand { position: absolute; top: 0; left: 0; right: 0; z-index: 5; height: 325px; flex: none; justify-content: center; padding: calc(34px - 20px * var(--sc, 0)) 40px calc(52px - 38px * var(--sc, 0)); border-radius: 0 0 calc(50% * (1 - var(--sc, 0))) calc(50% * (1 - var(--sc, 0))) / 0 0 calc(22% * (1 - var(--sc, 0))) calc(22% * (1 - var(--sc, 0))); overflow: hidden; margin-right: 0; animation: none; will-change: height; }
  /* Collapse: το logo μικραίνει (max-height/width -> αλλάζει και το flow ύψος), ο τίτλος/υπότιτλος σβήνει */
  .login-container-new .sky-seal img { transition: max-height .14s linear, max-width .14s linear; }
  .login-container-new .sky-brand-pagetitle, .login-container-new .sky-brand-pagesub { transition: opacity .12s linear; opacity: calc(1 - 2.4 * var(--sc, 0)); }
  .login-container-new .sky-brand-main { flex: none; padding: 0; justify-content: center; }
  /* Λάμψη κεντραρισμένη + μεγαλύτερη -> πιο smooth/ομοιόμορφη σε στενές οθόνες */
  .login-container-new .sky-glow { width: 150%; height: 160%; left: -25%; top: -38%; background: radial-gradient(45% 45% at 50% 45%, var(--sky-glow) 0%, var(--sky-glow-0) 70%); }
  .login-container-new .sky-seal img { max-width: calc(200px - 130px * var(--sc, 0)); max-height: calc(104px - 60px * var(--sc, 0)); }
  .login-container-new .sky-brand-title { margin-top: 22px; font-size: 28px; }
  .login-container-new .sky-brand-rule { display: none; }
  .login-container-new .sky-steps { display: none; }
  /* ΕΣΠΑ: φεύγει από το σκούρο brand -> κάτω από τη φόρμα (sky-espa-mobile, στο λευκό) */
  .login-container-new .sky-brand .sky-espa { display: none; }
  /* ΕΣΠΑ + γλώσσα σε μία σειρά: ΕΣΠΑ αριστερά, εναλλαγέας γλώσσας δεξιά, hairline από πάνω, 75% opacity */
  /* margin-top:auto -> όταν το περιεχόμενο δεν γεμίζει την οθόνη, το ΕΣΠΑ πέφτει κάτω-κάτω */
  .login-container-new .sky-espa-row { display: flex; align-items: center; justify-content: space-between; gap: 16px; width: 100%; max-width: 500px; margin: 16px auto 6px; padding-top: 16px; border-top: 1px solid var(--sky-border); }
  .login-container-new .sky-espa-row .sky-espa-mobile { display: block; width: auto; margin: 0; padding: 0; border: 0; opacity: 1; }
  .login-container-new .sky-espa-row .sky-espa-mobile img { width: 190px; max-width: 100%; height: auto; display: block; }
  .login-container-new .sky-lang-espa { display: block; flex: none; }
  /* Όταν υπάρχει ΕΣΠΑ: τα links κεντράρονται (η γλώσσα πήγε δίπλα στο ΕΣΠΑ) */
  .login-container-new .sky-has-espa .sky-links { justify-content: center; }
  .login-container-new .sky-has-espa .sky-links-text { align-items: center; text-align: center; }
  .login-container-new .sky-has-espa .sky-lang-inlinks { display: none; }
  /* «Επίσημη ιστοσελίδα» κρυφό σε κινητά/tablet */
  .login-container-new .sky-official { display: none; }
  /* v2 mobile/tablet: το brand δείχνει τον τίτλο ΤΗΣ ΣΕΛΙΔΑΣ (Είσοδος/Εγγραφή) + υπότιτλο σελίδας
     αντί για το γενικό "Ηλεκτρονικές Υπηρεσίες" */
  .login-container-new .sky-brand-sub { display: none; }
  .login-container-new .sky-brand-sub-short { display: none; }
  .login-container-new .sky-brand-title { display: none; }
  .login-container-new .auth-env { display: none; }
  .login-container-new .sky-brand-pagetitle { display: block; margin-top: calc(16px - 16px * var(--sc, 0)); font-size: calc(32px - 32px * var(--sc, 0)); font-weight: 700; letter-spacing: -.02em; color: #fff; line-height: 1.1; overflow: hidden; }
  .login-container-new .sky-brand-pagesub { display: block; margin-top: calc(8px - 8px * var(--sc, 0)); max-width: 34ch; font-size: calc(13px - 13px * var(--sc, 0)); line-height: 1.5; color: rgba(255,255,255,.6); overflow: hidden; }
  /* Το form δεν επαναλαμβάνει τον τίτλο σε κινητά (πλέον στο brand) */
  .login-container-new .sky-title, .login-container-new .sky-intro,
  .login-container-new .sky-form-body .register-title, .login-container-new .sky-form-body .register-subltitle { display: none; }
  .login-container-new .sky-form { position: absolute; inset: 0; overflow-y: auto; -webkit-overflow-scrolling: touch; z-index: 2; padding: 355px 40px 24px; flex: none; display: flex; flex-direction: column; }
  .login-container-new .sky-form-body { padding: 8px 0; justify-content: flex-start; }
  /* iOS Safari: με font-size >= 16px στα inputs ΔΕΝ κάνει auto-zoom στο focus (και δεν «κολλάει» ζουμαρισμένο) */
  .login-container-new .sky-input,
  .login-container-new .sky-form-body .input,
  .login-container-new .sky-form-body input[type="text"],
  .login-container-new .sky-form-body input[type="email"],
  .login-container-new .sky-form-body input[type="password"],
  .login-container-new .sky-form-body input[type="tel"],
  .login-container-new .sky-form-body input[type="number"],
  .login-container-new .sky-form-body .sky-select { font-size: 16px; }
  /* main-content γεμίζει το ύψος -> τα links (margin-top:auto) πέφτουν κάτω, μαζί με το ΕΣΠΑ */
  .login-container-new .sky-login { flex: 1; display: flex; flex-direction: column; }
  /* Links + inline γλώσσα σε κινητά: register/forgot στοιβαγμένα αριστερά, γλώσσα δεξιά. */
  .login-container-new .sky-links { align-items: center; margin-top: auto; }
  .login-container-new .sky-links-text { display: flex; flex-direction: column; gap: 6px; align-items: flex-start; }
  .login-container-new .sky-lang-inlinks { display: block; }
  /* Το form-foot (γλώσσα desktop + «Επίσημη ιστοσελίδα») είναι κενό σε κινητά -> κρύβεται
     ώστε να μην αφήνει περιττό κενό κάτω από τα links. */
  .login-container-new .sky-form-foot { display: none; }
}

@media (max-width: 600px) {
  .login-container-new .sky-brand { height: 325px; padding: calc(28px - 16px * var(--sc, 0)) 22px calc(44px - 32px * var(--sc, 0)); }
  .login-container-new .sky-brand-main { align-items: center; }
  .login-container-new .sky-seal img { max-width: calc(168px - 98px * var(--sc, 0)); max-height: calc(110px - 66px * var(--sc, 0)); }
  .login-container-new .sky-brand-pagetitle { font-size: calc(27px - 27px * var(--sc, 0)); margin-top: calc(14px - 14px * var(--sc, 0)); }
  .login-container-new .sky-brand-rule { display: none; }
  .login-container-new .sky-brand-pagesub { font-size: calc(12.5px - 12.5px * var(--sc, 0)); margin-top: calc(6px - 6px * var(--sc, 0)); }
  .login-container-new .sky-form { padding: 26px 20px 20px; }
  .login-container-new .sky-title { font-size: 30px; }
  .login-container-new .sky-intro { margin-bottom: 20px; }
  .login-container-new .sky-form-foot { flex-direction: column; align-items: flex-start; gap: 12px; }
}

/* ============================================================
   Legacy overrides — ώστε ΟΙ ΑΛΛΕΣ σελίδες (register / forgot / reset /
   2fa) που μοιράζονται τις κοινές form classes να ακολουθούν το νέο look.
   Scoped κάτω από .login-container-new .sky-form-body.
   ============================================================ */
.login-container-new .sky-form-body .center,
.login-container-new .sky-form-body .center-sm-div { background: transparent; width: 100%; max-width: 100%; padding: 0; }
.login-container-new .sky-form-body .cont-wrap-450 { max-width: 100%; margin: 0; }
.login-container-new .sky-form-body .register-title { color: var(--sky-ink); font-size: 34px; font-weight: 700; letter-spacing: -.02em; }
.login-container-new .sky-form-body .register-subltitle { color: var(--sky-ink-3); font-size: 15px; margin-bottom: 22px; }
.login-container-new .sky-form-body .separator-content { margin: 22px 0 !important; }
.login-container-new .sky-form-body .separator-content span { color: var(--sky-ink-4); font-size: 10.5px; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; }
.login-container-new .sky-form-body .separator-content::before,
.login-container-new .sky-form-body .separator-content::after { border-bottom-color: var(--sky-border); }
.login-container-new .sky-form-body .loginProvidersWrap { gap: 10px; }
.login-container-new .sky-form-body .btn-ext-login {
  width: calc(50% - 5px); border-radius: 8px; border: 1px solid var(--sky-border);
  background: #fff; color: var(--sky-ink-2); padding: 0 10px; height: 44px; transition: all .12s ease;
}
.login-container-new .sky-form-body .btn-ext-login:hover { background: var(--sky-surface-alt); border-color: var(--sky-border-strong); color: var(--sky-ink-2); }
.login-container-new .sky-form-body .one-provider .btn-ext-login { width: 100% !important; }

/* ---- Overlay: λίστα οργανισμών («Σύνδεση μέσω άλλου οργανισμού») ---- */
/* Overlay «άλλου Οργανισμού»: κρυφό (δεν πιάνει χώρο) μέχρι να ενεργοποιηθεί -> δεν εμφανίζεται «από κάτω» */
.login-container-new .sky-form-body .more-auth-content { display: none; }
.login-container-new .sky-form-body .more-auth-content.active { display: block; }
.login-container-new .sky-form-body .more-auth-content .register-head { justify-content: flex-start; margin-bottom: 2px; }
.login-container-new .sky-form-body .more-auth-content .register-title { text-align: left; font-size: 34px; font-weight: 700; letter-spacing: -.02em; color: var(--sky-ink); }
.login-container-new .sky-form-body .auth-menu { margin-top: 0; padding: 0; height: auto; max-height: 60vh; overflow-y: auto; }
.login-container-new .sky-form-body #external-auth-search { margin-bottom: 12px; }
.login-container-new .sky-form-body .filterable { display: flex; flex-wrap: wrap; align-content: flex-start; gap: 20px; margin: 0; }
.login-container-new .sky-form-body .external-auth-btn {
  display: flex !important; flex-direction: column !important; align-items: center !important; justify-content: center; gap: 20px;
  width: calc(50% - 10px); min-height: 128px; padding: 16px 10px; margin: 0;
  border: 1px solid var(--sky-border); border-radius: 8px; background: #fff;
  color: var(--sky-ink); text-align: center; transition: all .12s ease;
}
.login-container-new .sky-form-body .external-auth-btn:hover { border-color: var(--sky-primary); background: var(--sky-surface-alt); }
.login-container-new .sky-form-body .external-auth-btn .img-ico { height: 75px !important; width: auto !important; max-width: 100% !important; object-fit: contain; flex: none; margin: 0 !important; display: block; }
.login-container-new .sky-form-body .external-auth-btn .provider-title { max-width: 100%; text-align: center; font-size: 13px; font-weight: 500; line-height: 1.25; }
.login-container-new .sky-form-body .external-auth-btn:not(.match) { display: none !important; }

/* ---- Κάρτα επιλογής μεθόδου 2FA (SendCode: Email / Authenticator) ---- */
.login-container-new .sky-method-card {
  width: 100%; margin: 18px auto 0;
  border: 1px solid #e4e7eb; border-radius: 10px; overflow: hidden;
}
.login-container-new .sky-method {
  display: flex; align-items: center; gap: 14px; width: 100%;
  padding: 17px 18px; border: 0; background: #fff;
  font-family: inherit; text-align: left; cursor: pointer;
  transition: background .12s ease;
}
.login-container-new .sky-method:not(:last-child) { border-bottom: 1px solid #e4e7eb; }
.login-container-new .sky-method:hover { background: #fafbfc; }
.login-container-new .sky-method:focus-visible { outline: 2px solid #00243b; outline-offset: -2px; }
.login-container-new .sky-method-ic { flex: none; font-size: 26px; color: #00243b; line-height: 1; }
.login-container-new .sky-method-body { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.login-container-new .sky-method-title { font-size: 16px; font-weight: 600; color: #1b2433; }
.login-container-new .sky-method-sub { font-size: 12.5px; font-weight: 400; color: #6b7280; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.login-container-new .sky-method-chev { margin-left: auto; flex: none; font-size: 18px; color: #9aa3b2; }

/* ---- Κλείδωμα λογαριασμού (Lockout) — κάρτα με countdown + progress ---- */
.login-container-new .sky-lock-card {
  position: relative; overflow: hidden; text-align: left;
  margin-top: 24px; padding: 22px 24px;
  border: 1px solid var(--sky-border); border-radius: 12px; background: var(--sky-surface-alt);
}
.login-container-new .sky-lock-progress {
  position: absolute; left: 0; top: 0; bottom: 0; width: 0;
  background: rgba(0,36,59,.05); transition: width 1s linear;
}
.login-container-new .sky-lock-row { position: relative; display: flex; align-items: center; gap: 18px; }
.login-container-new .sky-lock-ic-wrap {
  flex: none; display: grid; place-items: center; width: 46px; height: 46px;
  border-radius: 50%; border: 1px solid var(--sky-border-strong); background: #fff;
}
.login-container-new .sky-lock-ic { font-size: 22px; color: var(--sky-primary); }
.login-container-new .sky-lock-txt { display: flex; flex-direction: column; gap: 2px; }
.login-container-new .sky-lock-time { font-size: 34px; font-weight: 600; line-height: 1; letter-spacing: .02em; color: var(--sky-ink); font-variant-numeric: tabular-nums; }
.login-container-new .sky-lock-lbl { font-size: 11px; font-weight: 600; letter-spacing: .07em; text-transform: uppercase; color: var(--sky-ink-3); }
.login-container-new .sky-lock-info {
  display: flex; align-items: flex-start; gap: 10px; text-align: left;
  margin-top: 18px; font-size: 12.5px; line-height: 1.5; color: var(--sky-ink-3);
}
.login-container-new .sky-lock-info > i { flex: none; margin-top: 1px; font-size: 16px; color: var(--sky-ink-4); }
.login-container-new .sky-lock-info a { color: var(--sky-primary); font-weight: 600; }
.login-container-new .sky-form-body .input {
  border: 1px solid var(--sky-border-strong); border-radius: 8px; height: 50px; color: var(--sky-ink);
}
.login-container-new .sky-form-body .input:focus { border-color: var(--sky-primary); box-shadow: 0 0 0 3px var(--sky-ring); }
/* το εικονίδιο του input (register/forgot) στο focus να ακολουθεί το scheme αντί για σταθερό μπλε */
.login-container-new .sky-form-body .input:focus + .focus-input + .symbol-input { color: var(--sky-primary) !important; }
.login-container-new .sky-form-body .btn-success,
.login-container-new .sky-form-body .btn-login-custom,
.login-container-new .sky-form-body .sumbit,
.login-container-new .sky-form-body #btnsignin {
  background-color: var(--sky-primary); border-color: var(--sky-primary); border-radius: 8px; height: 50px;
  margin-top: 22px; margin-bottom: 0;
}
.login-container-new .sky-form-body .btn-success:hover,
.login-container-new .sky-form-body .btn-login-custom:hover,
.login-container-new .sky-form-body #btnsignin:hover {
  background-color: var(--sky-primary-hover); border-color: var(--sky-primary-hover);
}
.login-container-new .sky-form-body .register-btn { color: var(--sky-primary); font-weight: 600; }
/* "Είστε ήδη εγγεγραμμένοι; Είσοδος" — αριστερά, inline (link κοντά στο κείμενο) */
.login-container-new .sky-form-body .register-button {
  display: block; text-align: center; margin: 22px 0 0; padding: 18px 0 18px; width: 100%; max-width: 100%;
  border-top: 1px solid var(--sky-border);
  font-size: 13px; color: var(--sky-ink-3);
}
.login-container-new .sky-form-body .register-button .register-btn { margin-left: 4px; }
.login-container-new .sky-form-body .forgot-pass a { color: var(--sky-primary); }

/* ---- Σελίδες κατάστασης/μηνύματος (email στάλθηκε / επιβεβαιώθηκε / κωδικός άλλαξε) ---- */
.login-container-new .sky-status {
  display: flex; align-items: flex-start; gap: 14px; text-align: left;
  margin-top: 24px; padding: 20px 22px;
  border: 1px solid var(--sky-border); border-radius: 12px; background: var(--sky-surface-alt);
}
.login-container-new .sky-status .sky-status-ic {
  flex: none; display: grid; place-items: center; width: 46px; height: 46px;
  border-radius: 50%; border: 1px solid var(--sky-border-strong); background: #fff;
}
.login-container-new .sky-status .sky-status-ic i { font-size: 24px; color: var(--sky-primary); line-height: 1; }
.login-container-new .sky-status-body { display: flex; flex-direction: column; gap: 4px; }
.login-container-new .sky-status-title { font-size: 15px; font-weight: 600; color: var(--sky-ink); }
.login-container-new .sky-status-txt { font-size: 13px; line-height: 1.5; color: var(--sky-ink-3); }
/* Επιτυχία -> πράσινο accent στο εικονίδιο */
.login-container-new .sky-status.sky-status-ok .sky-status-ic {
  border-color: rgba(40,199,111,.4); background: rgba(40,199,111,.08);
}
.login-container-new .sky-status.sky-status-ok .sky-status-ic i { color: #28c76f; }
/* Πληροφορία επιστροφής κάτω από το status card (ίδιο look με το Lockout info) */
.login-container-new .sky-status-note {
  display: flex; align-items: flex-start; gap: 10px; text-align: left;
  margin-top: 18px; font-size: 12.5px; line-height: 1.5; color: var(--sky-ink-3);
}
.login-container-new .sky-status-note > i { flex: none; margin-top: 1px; font-size: 16px; color: var(--sky-ink-4); }
.login-container-new .sky-status-note a { color: var(--sky-primary); font-weight: 600; }

/* ============================================================
   HARDENING — εξουδετέρωση overrides από theme-front/plugins/Metronic/Bootstrap
   (φορτώνονται ΠΡΙΝ και στοχεύουν generic button/span/form/input/section).
   ============================================================ */
/* Πλάτη: τα generic form rules μαζεύουν τα containers -> τα ξαναγεμίζουμε */
body.login-container-new .sky-login { width: 100%; }
body.login-container-new .sky-login > form,
body.login-container-new .sky-loginform,
body.login-container-new form.form-horizontal { display: block; width: 100%; margin: 0; }
body.login-container-new .sky-providers { width: 100%; margin: 0; }
body.login-container-new .sky-fields { width: 100%; }
body.login-container-new .sky-provider { margin: 0; float: none; min-height: 0; }
/* Το <span> μέσα σε κουμπιά γίνεται λευκό από Metronic -> επαναφορά για provider/lang */
body.login-container-new .sky-provider span { color: var(--sky-ink-2) !important; font-weight: 400; }
body.login-container-new .sky-lang-btn span,
body.login-container-new .sky-lang-menu button span { color: var(--sky-ink-2) !important; }
/* Το submit πρέπει να μένει λευκό (σκούρο κουμπί) */
body.login-container-new .sky-submit span,
body.login-container-new .sky-submit { color: #fff !important; }
/* Custom checkbox όρων — ίδιο look με το design (rounded box + Tabler check) */
body.login-container-new .sky-terms-wrap .acceptTermsChBox { display: block; margin: 1px 0 0; }
body.login-container-new .sky-terms-wrap .acceptTermsCh {
  -webkit-appearance: none; appearance: none;
  width: 18px; height: 18px; margin: 0; flex: none; vertical-align: top;
  border: 1.5px solid var(--sky-border-strong); border-radius: 7px;
  background: #fff; cursor: pointer; display: inline-grid; place-items: center;
  transition: all .12s ease;
}
body.login-container-new .sky-terms-wrap .acceptTermsCh:checked { border-color: var(--sky-primary) !important; background: var(--sky-primary) !important; }
body.login-container-new .sky-terms-wrap .acceptTermsCh:checked::after {
  content: "\ea5e"; font-family: "tabler-icons"; font-size: 12px; color: #fff; line-height: 1;
}

/* ---- Terms of use (κρατά το υπάρχον markup/λογική, νέο look) ---- */
.login-container-new .sky-terms-wrap { margin-top: 16px; }
.login-container-new .sky-terms-wrap .term-of-use-container { display: flex; gap: 10px; align-items: flex-start; margin: 0; }
.login-container-new .sky-terms-wrap .term-of-use {
  font-size: 12.5px; line-height: 1.5; color: var(--sky-ink-3);
  background: transparent !important; padding: 0; margin: 0;
}
.login-container-new .sky-terms-wrap .term-of-use a { font-weight: 600; color: var(--sky-primary); }
.login-container-new .sky-terms-wrap .acceptTermsChBox.hidden { display: none; }
.login-container-new .sky-terms-wrap .acceptTermsChBox { margin-top: 2px; }

/* ---- Note blocks (success / info) — status μηνύματα (Πάροχος κ.λπ.) ---- */
.login-container-new .sky-note {
  display: flex; align-items: flex-start; gap: 10px; margin-top: 20px;
  padding: 13px 15px; border: 1px solid var(--sky-border); border-left-width: 3px;
  border-radius: 8px; text-align: left;
}
.login-container-new .sky-note > i { flex: none; margin-top: 1px; font-size: 18px; }
.login-container-new .sky-note .sky-note-body { font-size: 13px; line-height: 1.5; color: var(--sky-ink-2); }
.login-container-new .sky-note .sky-note-body a { font-weight: 600; text-decoration: underline; }
.login-container-new .sky-note-ok {
  border-color: rgba(40,167,69,.35); border-left-color: #28a745; background: rgba(40,167,69,.07);
}
.login-container-new .sky-note-ok > i { color: #28a745; }
.login-container-new .sky-note-info {
  border-color: rgba(0,123,255,.30); border-left-color: var(--sky-primary); background: var(--sky-primary-soft);
}
.login-container-new .sky-note-info > i { color: var(--sky-primary); }

/* ---- Status icon block (AccessDenied / NotAuthorized / ExternalLoginFailure) ---- */
.login-container-new .sky-status-ic {
  display: grid; place-items: center; width: 64px; height: 64px; margin: 26px 0 22px;
  border-radius: 16px; border: 1px solid var(--sky-border-strong); background: var(--sky-surface-alt);
}
.login-container-new .sky-form-body .sky-status-ic { margin-left: 0; }
.login-container-new .sky-status-ic i { font-size: 30px; color: var(--sky-primary); line-height: 1; }
.login-container-new .sky-status-ic-warn { border-color: rgba(234,84,85,.35); background: rgba(234,84,85,.07); }
.login-container-new .sky-status-ic-warn i { color: #ea5455; }

/* ============================================================
   Kiosk (LoginWithPin) — card-reader + on-screen numpad στο sky look.
   Το kiosk.css φορτώνεται ΜΕΤΑ, οπότε εδώ ξαναγράφουμε ό,τι πρέπει
   να ακολουθεί το νέο design. Τα class names (.pin-input/.show-pass/
   .keys-wrapper/.submit-btn/.clear-btn) μένουν για το kiosk.js.
   ============================================================ */
body.login-container-new.kiosk-body {
  background: var(--sky-surface-alt); color: var(--sky-ink);
  font-family: var(--sky-font); font-size: 15px;
}
.login-container-new.kiosk-body .main { min-height: 100vh; padding: 24px; }
.login-container-new.kiosk-body .form-wrapper {
  width: 100%; max-width: 480px; margin: auto; padding: 40px 36px;
  background: #fff; border: 1px solid var(--sky-border); border-radius: 16px;
  box-shadow: 0 18px 48px var(--sky-shadow);
}
.login-container-new.kiosk-body .sky-kiosk-welcome {
  font-size: 30px; font-weight: 700; letter-spacing: -.02em; color: var(--sky-ink); margin-bottom: 20px;
}
.login-container-new.kiosk-body .sky-kiosk-card {
  width: 100%; max-width: 480px; margin: auto; padding: 44px 36px; text-align: center;
  display: flex; flex-direction: column; align-items: center;
  background: #fff; border: 1px solid var(--sky-border); border-radius: 16px;
  box-shadow: 0 18px 48px var(--sky-shadow);
}
.login-container-new.kiosk-body .sky-kiosk-ic {
  display: grid; place-items: center; width: 72px; height: 72px; margin-bottom: 22px;
  border-radius: 18px; border: 1px solid var(--sky-border-strong); background: var(--sky-surface-alt);
}
.login-container-new.kiosk-body .sky-kiosk-ic i { font-size: 34px; color: var(--sky-primary); line-height: 1; }
.login-container-new.kiosk-body .sky-kiosk-card-error .sky-kiosk-ic { border-color: rgba(234,84,85,.35); background: rgba(234,84,85,.07); }
.login-container-new.kiosk-body .sky-kiosk-card-error .sky-kiosk-ic i { color: #ea5455; }
.login-container-new.kiosk-body .sky-kiosk-title { font-size: 22px; font-weight: 700; letter-spacing: -.01em; color: var(--sky-ink); margin-bottom: 8px; }
.login-container-new.kiosk-body .sky-kiosk-sub { font-size: 14.5px; line-height: 1.55; color: var(--sky-ink-3); }
.login-container-new.kiosk-body .sky-kiosk-info {
  display: flex; align-items: flex-start; gap: 10px; text-align: left;
  margin: 0 0 18px; padding: 13px 15px; border: 1px solid rgba(0,123,255,.30);
  border-left: 3px solid var(--sky-primary); border-radius: 8px; background: var(--sky-primary-soft);
  font-size: 13px; line-height: 1.5; color: var(--sky-ink-2);
}
.login-container-new.kiosk-body .sky-kiosk-info > i { flex: none; margin-top: 1px; font-size: 18px; color: var(--sky-primary); }
/* Το .pin-input κρατά το kiosk class για το JS αλλά παίρνει sky-input look */
.login-container-new.kiosk-body .pin-input {
  font-size: 15px; height: 50px; color: var(--sky-ink);
  border: 1px solid var(--sky-border-strong); border-radius: 8px; width: 100%;
}
.login-container-new.kiosk-body .pin-input:focus { border-color: var(--sky-primary); box-shadow: 0 0 0 3px var(--sky-ring); }
/* Το .show-pass κρατά το kiosk class αλλά τοποθετείται σαν sky-eye */
.login-container-new.kiosk-body .sky-eye.show-pass {
  position: absolute; right: 8px; top: 0; bottom: 0; margin: auto 0;
  width: 36px; height: 36px; padding: 0; color: var(--sky-ink-3); background: transparent;
}
.login-container-new.kiosk-body .sky-eye.show-pass i { font-size: 20px; }
/* Numpad + actions στο sky look (κρατούν το functional markup) */
.login-container-new.kiosk-body .keyboard-wrapper { margin-top: 22px; gap: 14px; }
.login-container-new.kiosk-body .keys-wrapper span {
  border: 1px solid var(--sky-border-strong); border-radius: 10px; background: #fff;
  color: var(--sky-ink); font-weight: 600; font-size: 20px; transition: all .12s ease;
}
.login-container-new.kiosk-body .keys-wrapper span:hover,
.login-container-new.kiosk-body .keys-wrapper span:active { background: var(--sky-surface-alt); border-color: var(--sky-primary); color: var(--sky-primary); }
.login-container-new.kiosk-body .actions-wrapper span { border-radius: 10px; border: 0; font-weight: 600; color: #fff; }
.login-container-new.kiosk-body .submit-btn { background-color: var(--sky-primary); }
.login-container-new.kiosk-body .submit-btn:hover { background-color: var(--sky-primary-hover); }
.login-container-new.kiosk-body .clear-btn { background-color: var(--sky-ink-3); }

/* ============================================================
   DOCUMENT READER — in-page overlay (Όροι Χρήσης / Πολιτική Απορρήτου)
   Ενεργός όταν ΔΕΝ έχουν οριστεί εξωτερικά URLs. Slide-in panel πάνω
   από τη φόρμα + veil· το brand panel γλιστράει προς τα αριστερά.
   Πηγή σχεδίασης: Claude Design "Login v2".
   ============================================================ */

/* Veil πάνω από τη φόρμα (μέσα στο .sky-form) */
.login-container-new .sky-doc-veil {
  position: absolute; inset: 0; z-index: 20;
  background: rgba(255,255,255,.72);
  -webkit-backdrop-filter: blur(2px); backdrop-filter: blur(2px);
  opacity: 0; transition: opacity .42s ease;
}
.login-container-new .sky-doc-veil.is-open { opacity: 1; }

/* Panel */
.login-container-new .sky-doc-panel {
  position: absolute; z-index: 30;
  top: 34px; bottom: 34px; right: 40px; left: 7%;
  display: flex; flex-direction: column;
  background: #fff; border: 1px solid var(--sky-border); border-radius: 14px;
  box-shadow: 0 24px 64px rgba(15,23,42,.16);
  overflow: hidden;
  opacity: 0; transform: translateX(26px) scale(.97);
  transition: opacity .46s ease, transform .46s cubic-bezier(.22,.61,.36,1);
  pointer-events: none;
}
.login-container-new .sky-doc-panel.is-open {
  opacity: 1; transform: translateX(0) scale(1); pointer-events: auto;
}
/* Το display των .sky-doc-panel/.sky-doc-veil (0,2,0) υπερισχύει του normalize [hidden]{display:none}
   (0,1,0)· γι' αυτό επαναφέρουμε ρητά το hidden με ίδια/μεγαλύτερη ειδικότητα. */
.login-container-new .sky-doc-panel[hidden],
.login-container-new .sky-doc-veil[hidden] { display: none !important; }

/* Progress bar (κορυφή του panel) */
.login-container-new .sky-doc-progress {
  position: absolute; top: 0; left: 0; height: 2px; width: 0;
  background: #00243b; z-index: 2; transition: width .08s linear;
}

/* Header */
.login-container-new .sky-doc-head {
  display: flex; align-items: center; gap: 14px;
  padding: 26px 30px 18px; border-bottom: 1px solid var(--sky-border);
  flex: none;
}
.login-container-new .sky-doc-ic {
  display: grid; place-items: center; width: 38px; height: 38px; flex: none;
  border: 1px solid var(--sky-border); border-radius: 10px; background: var(--sky-surface-alt);
}
.login-container-new .sky-doc-ic i { font-size: 20px; color: var(--sky-primary); line-height: 1; }
.login-container-new .sky-doc-headtxt { min-width: 0; flex: 1; }
.login-container-new .sky-doc-title {
  margin: 0; font-size: 20px; font-weight: 700; color: var(--sky-ink); line-height: 1.2;
  overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.login-container-new .sky-doc-meta {
  display: block; margin-top: 3px; font-size: 11.5px; font-weight: 600;
  letter-spacing: .06em; text-transform: uppercase; color: var(--sky-ink-4);
}
/* Κενό meta (αφαιρέθηκε το «Έκδοση · Ισχύς από») -> να μην πιάνει χώρο, αλλιώς
   ο τίτλος πέφτει εκτός κέντρου και το X κουμπί δεν στοιχίζεται με τον τίτλο. */
.login-container-new .sky-doc-meta:empty { display: none; }
.login-container-new .sky-doc-close {
  margin-left: auto; flex: none; padding: 0;
  display: grid; place-items: center; width: 34px; height: 34px;
  border: 1px solid var(--sky-border); border-radius: 9px; background: #fff;
  color: var(--sky-ink-3); cursor: pointer; transition: all .12s ease;
}
.login-container-new .sky-doc-close:hover { background: var(--sky-surface-alt); color: var(--sky-ink); border-color: var(--sky-border-strong); }
.login-container-new .sky-doc-close i { font-size: 18px; line-height: 1; display: block; }

/* Body */
.login-container-new .sky-doc-body {
  flex: 1; overflow-y: auto; padding: 22px 30px 26px;
  display: flex; flex-direction: column; gap: 20px;
}
.login-container-new .sky-doc-sec { display: flex; flex-direction: column; gap: 7px; }
.login-container-new .sky-doc-sec > span {
  font-size: 11px; font-weight: 700; letter-spacing: .06em;
  text-transform: uppercase; color: var(--sky-ink-4);
}
.login-container-new .sky-doc-sec > p {
  margin: 0; font-size: 14px; line-height: 1.62; color: var(--sky-ink-2);
}

/* Footer */
.login-container-new .sky-doc-foot {
  display: flex; align-items: center; justify-content: space-between; gap: 16px;
  padding: 16px 30px; border-top: 1px solid var(--sky-border);
  background: var(--sky-surface-alt); flex: none;
}
.login-container-new .sky-doc-footmeta { font-size: 12px; color: var(--sky-ink-4); min-width: 0; }
.login-container-new .sky-doc-actions { display: flex; align-items: center; gap: 10px; flex: none; }
.login-container-new .sky-doc-btn {
  display: inline-flex; align-items: center; gap: 7px; height: 40px; padding: 0 18px;
  border-radius: 8px; font-family: inherit; font-size: 13.5px; font-weight: 600;
  cursor: pointer; transition: all .12s ease;
}
.login-container-new .sky-doc-btn i { font-size: 16px; line-height: 1; }
.login-container-new .sky-doc-btn-ghost {
  border: 1px solid var(--sky-border-strong); background: #fff; color: var(--sky-ink-2);
}
.login-container-new .sky-doc-btn-ghost:hover { background: var(--sky-surface-alt); border-color: var(--sky-ink-4); color: var(--sky-ink); }
.login-container-new .sky-doc-btn-primary {
  border: 1px solid var(--sky-primary); background: var(--sky-primary); color: #fff;
}
.login-container-new .sky-doc-btn-primary:hover { background: var(--sky-primary-hover); border-color: var(--sky-primary-hover); }
.login-container-new .sky-doc-src { display: none; }

/* Brand panel γλιστράει όταν ο reader είναι ανοιχτός */
.login-container-new .sky-brand { transition: transform .62s cubic-bezier(.22,.61,.36,1); }
.login-container-new.sky-doc-open .sky-brand { transform: translateX(-11%) scaleX(.94); }

/* Responsive: σε ≤992px το panel πιάνει σχεδόν όλη την οθόνη· χωρίς brand slide */
@media (max-width: 1024px) {
  /* Doc Reader σε κινητά/tablet: full-page λευκό (όχι modal overlay) — όπως η φόρμα */
  .login-container-new .sky-doc-panel { position: fixed; inset: 0; top: 0; bottom: 0; left: 0; right: 0; border-radius: 0; border: 0; box-shadow: none; transform: none; }
  .login-container-new .sky-doc-panel.is-open { transform: none; }
  .login-container-new .sky-doc-veil { display: none; }
  /* Το panel ζει μέσα στο .sky-form (z-index:2) που κάθεται κάτω από το brand (z-index:5)·
     όταν ανοίγει ο reader ανεβάζουμε το form πάνω από το brand ώστε να μη κρύβονται τα κείμενα. */
  .login-container-new.sky-doc-open .sky-form { z-index: 20; }
  .login-container-new.sky-doc-open .sky-brand { transform: none; }
}
@media (max-width: 600px) {
  .login-container-new .sky-doc-panel { inset: 0; top: 0; bottom: 0; left: 0; right: 0; }
  .login-container-new .sky-doc-head { padding: 20px 20px 14px; }
  .login-container-new .sky-doc-body { padding: 18px 20px 22px; }
  .login-container-new .sky-doc-foot { padding: 14px 20px; flex-wrap: wrap; }
  .login-container-new .sky-doc-footmeta { flex: 1 0 100%; order: 2; }
  /* Σε κινητά: οι ενέργειες σε δική τους σειρά, το «Αποδοχή» πιάνει όλο τον υπόλοιπο χώρο */
  .login-container-new .sky-doc-actions { flex: 1 0 100%; order: 1; }
  .login-container-new .sky-doc-btn-ghost { flex: 0 0 auto; width: auto; }
  .login-container-new .sky-doc-btn-primary { flex: 1 1 0; min-width: 0; width: auto; justify-content: center; }
}

/* Reduced motion: απλό fade, χωρίς slide/scale */
@media (prefers-reduced-motion: reduce) {
  .login-container-new .sky-doc-panel { transition: opacity .2s ease; transform: none !important; }
  .login-container-new .sky-brand { transition: none; }
  .login-container-new.sky-doc-open .sky-brand { transform: none; }
  .login-container-new .sky-doc-progress { transition: none; }
}

/* ============================================================
   Πολύ μεγάλες οθόνες (≥2000px): μεγαλύτερα μεγέθη ώστε η φόρμα να
   μη «χάνεται» μέσα στο κενό — inputs/γραμματοσειρές/logo κ.λπ. ~+20%.
   ============================================================ */
@media (min-width: 2000px) {
  /* Πλάτος φόρμας/footer */
  .login-container-new .sky-form-body { max-width: 560px; }
  .login-container-new .sky-form-body:has(.sky-row) { max-width: 640px; }
  .login-container-new .sky-form:has(.sky-row) .sky-form-foot { max-width: 640px; }
  .login-container-new .sky-form-foot { max-width: 560px; font-size: 15px; }

  /* Τίτλοι */
  .login-container-new .sky-title,
  .login-container-new .sky-form-body .register-title { font-size: 52px; }
  .login-container-new .sky-intro,
  .login-container-new .sky-form-body .register-subltitle { font-size: 18px; margin-bottom: 30px; }

  /* Inputs — το height χρειάζεται specificity (0,3,0) γιατί το .sky-form-body .input (γρ.884) το ορίζει εκεί */
  .login-container-new .sky-fields { gap: 20px; }
  .login-container-new .sky-input { height: 60px; font-size: 17px; padding: 20px 16px 0 46px; }
  .login-container-new .sky-form-body .input { height: 60px; }
  .login-container-new .sky-field-pass .sky-input { padding-right: 52px; }
  body.login-container-new .sky-form-body .sky-input,
  body.login-container-new .sky-form-body .input { font-size: 17px; }
  .login-container-new .sky-field-icon { font-size: 19px; left: 16px; }
  .login-container-new .sky-field-label { font-size: 17px; left: 46px; }
  .login-container-new .sky-input:focus + .sky-field-label,
  .login-container-new .sky-input:not(:placeholder-shown) + .sky-field-label,
  .login-container-new .sky-input:-webkit-autofill + .sky-field-label,
  .login-container-new .sky-input:autofill + .sky-field-label,
  .login-container-new .sky-field-select .sky-field-label { font-size: 12px; top: 9px; }
  .login-container-new .sky-eye { width: 42px; height: 42px; }
  .login-container-new .sky-eye i { font-size: 23px; }

  /* Select (χώρα κ.λπ.) */
  .login-container-new .sky-field-select .sky-select { height: 60px; font-size: 17px; padding: 22px 46px 0 46px; }
  .login-container-new .sky-field-select .sky-select-arrow { font-size: 18px; right: 16px; }

  /* Submit — override και το (0,3,0) .sky-form-body .sumbit/.btn-login-custom/.btn-success (γρ.890-894) */
  .login-container-new .sky-submit { height: 60px; font-size: 18px; }
  .login-container-new .sky-form-body .btn-success,
  .login-container-new .sky-form-body .btn-login-custom,
  .login-container-new .sky-form-body .sumbit,
  .login-container-new .sky-form-body #btnsignin { height: 60px; }

  /* Πάροχοι σύνδεσης */
  .login-container-new .sky-provider { height: 54px; font-size: 16px; }
  .login-container-new .sky-provider .img-icon,
  .login-container-new .sky-provider img { height: 22px; }
  .login-container-new .sky-provider i { font-size: 19px; }

  /* Separator / section titles / links */
  .login-container-new .sky-sep span { font-size: 12.5px; }
  .login-container-new .sky-section-title { font-size: 13px; }
  .login-container-new .sky-links { font-size: 15.5px; }
  .login-container-new .sky-terms,
  .login-container-new .sky-terms p { font-size: 14.5px; }

  /* Brand side (δεξιά) */
  .login-container-new .sky-brand-title { font-size: 46px; }
  .login-container-new .sky-brand-sub,
  .login-container-new .sky-brand-sub-short { font-size: 18px; max-width: 50ch; }
  .login-container-new .sky-seal img { max-width: 300px; max-height: 210px; }
  /* Πιο ήπια καμπυλότητα του brand «κόλπου» (τραβάει πολύ σε πλατιές οθόνες) */
  .login-container-new .sky-brand { border-radius: 0 28% 28% 0 / 0 32% 32% 0; animation-name: skyBrandMorphWide; }

  /* Όροι Χρήσης / Πολιτική στη φόρμα (κείμενο + checkbox area) */
  .login-container-new .sky-terms-wrap .term-of-use { font-size: 14.5px; }

  /* Document Reader (Όροι / Πολιτική panel) */
  .login-container-new .sky-doc-title { font-size: 24px; }
  .login-container-new .sky-doc-meta { font-size: 13px; }
  .login-container-new .sky-doc-close { width: 40px; height: 40px; }
  .login-container-new .sky-doc-close i { font-size: 22px; }
  .login-container-new .sky-doc-sec > span { font-size: 13px; }
  .login-container-new .sky-doc-sec > p { font-size: 16.5px; }
  .login-container-new .sky-doc-footmeta { font-size: 14px; }
  .login-container-new .sky-doc-btn { height: 48px; font-size: 16px; padding: 0 22px; }
  .login-container-new .sky-doc-btn i { font-size: 19px; }

  /* 2FA / επιλογή μεθόδου (method cards) */
  .login-container-new .sky-method-ic { font-size: 30px; }
  .login-container-new .sky-method-title { font-size: 18px; }
  .login-container-new .sky-method-sub { font-size: 14px; }
  .login-container-new .sky-method-chev { font-size: 21px; }

  /* Lockout */
  .login-container-new .sky-lock-ic { font-size: 26px; }
  .login-container-new .sky-lock-time { font-size: 40px; }
  .login-container-new .sky-lock-lbl { font-size: 13px; }
  .login-container-new .sky-lock-info { font-size: 14.5px; }

  /* Status / confirmations (Επιβεβαίωση email, reset κ.λπ.) */
  .login-container-new .sky-status-title { font-size: 17px; }
  .login-container-new .sky-status-txt { font-size: 15px; }
  .login-container-new .sky-status .sky-status-ic i { font-size: 28px; }
  .login-container-new .sky-status-ic i { font-size: 34px; }
}
