/* Κοινό στυλ των σελίδων διαχείρισης με φόρμα σε ενότητες (σχέδιο «Φόρμα με friendly UX»: χρήστης, εφαρμογή).
   Όλες οι κλάσεις έχουν πρόθεμα ud-· ό,τι αφορά μόνο μία σελίδα μένει στο scoped .razor.css της. */

/* ---------- Χρώματα (tokens) ----------
   Όλα τα χρώματα του ud-/udl- και των σελίδων περνούν από εδώ, ώστε το σκούρο θέμα του Metronic (data-bs-theme="dark" στο <html>)
   να αλλάζει μόνο τις τιμές. Light: ακριβώς οι τιμές του σχεδίου. Dark: παλέτα του Metronic (φόντο #0F1014, κάρτες #15171C,
   γραμμές #26272F), οι παστέλ τόνοι γίνονται διάφανες αποχρώσεις με πιο φωτεινό κείμενο.
   Τα -2, -3… είναι ο ίδιος τόνος με ελάχιστα διαφορετική φωτεινή τιμή· κρατιούνται για να μην αλλάξει τίποτα στο light.
   Ένα πλαίσιο με data-bs-theme="light" (π.χ. η οθόνη των mockup συσκευών στις προεπισκοπήσεις) μένει φωτεινό και στο σκούρο θέμα. */
:root,
[data-bs-theme=light] {
    /* κείμενο */
    --ud-text: #1d2433; --ud-text-2: #4a5263; --ud-text-muted: #6b7385; --ud-text-faint: #9aa3b2; --ud-placeholder: #9aa1b0; --ud-text-disabled: #8a91a0;
    /* επιφάνειες, γραμμές */
    --ud-surface: #fff; --ud-raised: #fff; --ud-surface-2: #f8f9fb; --ud-surface-3: #fafbfc; --ud-page-bg: #f4f6f9; --ud-hover: #f4f6f9;
    --ud-hover-2: #f1f4f8; --ud-soft: #eef1f5; --ud-soft-2: #e3e7ee; --ud-soft-3: #f1f3f6; --ud-disabled-bg: #e6e9ee; --ud-track: #e8ebf0;
    --ud-line: #eef1f5; --ud-border: #e3e7ee; --ud-border-strong: #d5dae3; --ud-grey: #c9d0db; --ud-tip-bg: #1d2433; --ud-seg-hover: rgba(255,255,255,.55);
    --ud-card-shadow: 0 1px 2px rgba(16,24,40,.06);
    /* μπλε της ταυτότητας: primary = γεμίσματα (κεφαλίδες ενοτήτων, chips, badges), primary-text = κείμενο/σύνδεσμοι, primary-accent = περιγράμματα, focus, κουκκίδες */
    --ud-primary: #0b3b7d; --ud-primary-text: #0b3b7d; --ud-primary-accent: #0b3b7d; --ud-primary-hover: #08306a; --ud-primary-hover-2: #092f63;
    --ud-primary-deep: #1d3f73; --ud-primary-soft: #eef3fb; --ud-primary-soft-2: #eef4fc; --ud-primary-soft-3: #f5f8fd; --ud-primary-soft-4: #f4f8fd;
    --ud-primary-soft-5: #f4f7fc; --ud-primary-soft-6: #e1ebf8; --ud-primary-soft-7: #e3ebf7; --ud-primary-soft-hover: #d7e3f5; --ud-primary-border: #c6d5ee;
    --ud-primary-border-2: #b9cbe8; --ud-primary-border-3: #9fb8de;
    /* γαλάζιο */
    --ud-info-fg: #0077a8; --ud-info-bg: #e3f5fc; --ud-info-bg-2: #ebf8fd; --ud-info-border: #9fd9f2; --ud-info-fg-2: #0a7fae; --ud-info-bg-3: #e6f6fc;
    --ud-info-border-2: #a6dbf0;
    /* πράσινο */
    --ud-ok-fg: #1f8f43; --ud-ok-deep: #14532d; --ud-ok-bg: #e6f6ec; --ud-ok-bg-2: #eef9f2; --ud-ok-bg-3: #e5f6ea; --ud-ok-border: #bfe6cc;
    --ud-ok-border-2: #a8dfbb;
    /* κόκκινο */
    --ud-bad-fg: #c62f2f; --ud-bad-deep: #8f1f1f; --ud-bad-deep-2: #5b1a1a; --ud-bad-bg: #fdecec; --ud-bad-bg-2: #fdf1f1; --ud-bad-bg-3: #fdf0f0;
    --ud-bad-border: #f3c2c2; --ud-bad-border-2: #f3b4b4; --ud-bad-border-3: #e8a5a5; --ud-bad-border-4: #efc3c3;
    /* πορτοκαλί (σε εξέλιξη) */
    --ud-wait-fg: #b26a00; --ud-wait-deep: #8a5300; --ud-wait-bg: #fff4e0; --ud-wait-bg-2: #fff6e5; --ud-wait-bg-3: #fff8eb; --ud-wait-border: #f5d08a;
    /* κίτρινο (προειδοποίηση) */
    --ud-warn-fg: #6e4e00; --ud-warn-fg-2: #8a6a1a; --ud-warn-fg-3: #6b5200; --ud-warn-fg-4: #8a6a00; --ud-warn-bg: #fff8e1; --ud-warn-bg-2: #fffbe8;
    --ud-warn-bg-3: #fffbe6; --ud-warn-bg-4: #fff8d6; --ud-warn-bg-hover: #fff1c4; --ud-warn-border: #f3c94b; --ud-warn-border-2: #f3d77a;
    --ud-warn-border-3: #f3dc8f; --ud-warn-border-4: #f0dc8a; --ud-warn-border-5: #e0b53a;
    /* βαθύ πορτοκαλί (παύση) */
    --ud-paused-fg: #c2410c; --ud-paused-deep: #9a3412; --ud-paused-bg: #fff3ec; --ud-paused-bg-2: #ffece0; --ud-paused-border: #f8c4a4;
    /* ροζ (προετοιμασία) */
    --ud-pink-fg: #d63b98; --ud-pink-bg: #fff0f8; --ud-pink-border: #ffc2e2;
    /* μωβ */
    --ud-purple-fg: #5b3aa8; --ud-purple-fg-2: #6a2fb8; --ud-purple-fg-3: #6b3fb8; --ud-purple-bg: #f1ecfb; --ud-purple-bg-2: #f3eefc; --ud-purple-bg-3: #f4effc;
    --ud-purple-border: #d9cdf3; --ud-purple-border-2: #d9cbf2; --ud-purple-border-3: #d4c2f2; --ud-purple-fg-4: #6a3fc0; --ud-purple-bg-4: #f3effc;
    --ud-purple-border-4: #d6c8f2;
    /* τιρκουάζ (tags) */
    --ud-teal-fg: #137a7f; --ud-teal-bg: #e8f7f7; --ud-teal-border: #a9dcde;
    /* ματζέντα (tags) */
    --ud-rose-fg: #b0306f; --ud-rose-bg: #fceef6; --ud-rose-border: #f1bfd9;
    /* indigo (αναμονή ημερήσιου ορίου αποστολών: συνεχίζει μόνη της) */
    --ud-quota-fg: #4f3cc9; --ud-quota-deep: #3f2fa8; --ud-quota-bg: #eeebfd; --ud-quota-bg-2: #f3f1fe; --ud-quota-border: #d6cff8;
    /* κάρτα «Από ΕΜΕΠ» */
    --ud-emep-border: #cfdcf0; --ud-emep-line: #dbe5f4;
}
[data-bs-theme=dark] {
    /* κείμενο */
    --ud-text: #e4e6ef; --ud-text-2: #b5b7c8; --ud-text-muted: #9a9cae; --ud-text-faint: #808290; --ud-placeholder: #6d7080; --ud-text-disabled: #636674;
    /* επιφάνειες, γραμμές */
    --ud-surface: #15171c; --ud-raised: #2c2e39; --ud-surface-2: #1b1c22; --ud-surface-3: #1a1b21; --ud-page-bg: #0f1014; --ud-hover: #22232b;
    --ud-hover-2: #20212a; --ud-soft: #20222b; --ud-soft-2: #2a2c36; --ud-soft-3: #20222b; --ud-disabled-bg: #1a1b21; --ud-track: #26272f;
    --ud-line: #23242d; --ud-border: #2b2d37; --ud-border-strong: #393b47; --ud-grey: #4a4c58; --ud-tip-bg: #363843; --ud-seg-hover: rgba(255,255,255,.06);
    --ud-card-shadow: 0 0 0 1px #1e2027;
    /* μπλε της ταυτότητας: primary = γεμίσματα (κεφαλίδες ενοτήτων, chips, badges), primary-text = κείμενο/σύνδεσμοι, primary-accent = περιγράμματα, focus, κουκκίδες */
    --ud-primary: #1b4f9c; --ud-primary-text: #7fb0f5; --ud-primary-accent: #3d7bd9; --ud-primary-hover: #2560b0; --ud-primary-hover-2: #2560b0;
    --ud-primary-deep: #a9c7f2; --ud-primary-soft: rgba(61,123,217,.14); --ud-primary-soft-2: rgba(61,123,217,.12); --ud-primary-soft-3: rgba(61,123,217,.08);
    --ud-primary-soft-4: rgba(61,123,217,.08); --ud-primary-soft-5: rgba(61,123,217,.1); --ud-primary-soft-6: rgba(61,123,217,.22); --ud-primary-soft-7: rgba(61,123,217,.25);
    --ud-primary-soft-hover: rgba(61,123,217,.3); --ud-primary-border: rgba(61,123,217,.38); --ud-primary-border-2: rgba(61,123,217,.5);
    --ud-primary-border-3: rgba(61,123,217,.55);
    /* γαλάζιο */
    --ud-info-fg: #5cc8f0; --ud-info-bg: rgba(0,169,230,.15); --ud-info-bg-2: rgba(0,169,230,.15); --ud-info-border: rgba(0,169,230,.42);
    --ud-info-fg-2: #5cc8f0; --ud-info-bg-3: rgba(0,169,230,.15); --ud-info-border-2: rgba(0,169,230,.42);
    /* πράσινο */
    --ud-ok-fg: #4cc97a; --ud-ok-deep: #8fe0ad; --ud-ok-bg: rgba(31,174,75,.15); --ud-ok-bg-2: rgba(31,174,75,.15); --ud-ok-bg-3: rgba(31,174,75,.2);
    --ud-ok-border: rgba(31,174,75,.4); --ud-ok-border-2: rgba(31,174,75,.5);
    /* κόκκινο */
    --ud-bad-fg: #f07171; --ud-bad-deep: #f4a3a3; --ud-bad-deep-2: #f4b8b8; --ud-bad-bg: rgba(217,54,54,.15); --ud-bad-bg-2: rgba(217,54,54,.15);
    --ud-bad-bg-3: rgba(217,54,54,.13); --ud-bad-border: rgba(217,54,54,.42); --ud-bad-border-2: rgba(217,54,54,.5); --ud-bad-border-3: rgba(217,54,54,.55);
    --ud-bad-border-4: rgba(217,54,54,.42);
    /* πορτοκαλί (σε εξέλιξη) */
    --ud-wait-fg: #f0a33a; --ud-wait-deep: #f5b75c; --ud-wait-bg: rgba(224,138,0,.15); --ud-wait-bg-2: rgba(224,138,0,.15); --ud-wait-bg-3: rgba(224,138,0,.15);
    --ud-wait-border: rgba(224,138,0,.42);
    /* κίτρινο (προειδοποίηση) */
    --ud-warn-fg: #f3cf6b; --ud-warn-fg-2: #d9b85e; --ud-warn-fg-3: #f0c95a; --ud-warn-fg-4: #e6c04f; --ud-warn-bg: rgba(243,180,0,.12);
    --ud-warn-bg-2: rgba(243,180,0,.1); --ud-warn-bg-3: rgba(243,180,0,.1); --ud-warn-bg-4: rgba(243,180,0,.12); --ud-warn-bg-hover: rgba(243,180,0,.2);
    --ud-warn-border: rgba(243,180,0,.45); --ud-warn-border-2: rgba(243,180,0,.4); --ud-warn-border-3: rgba(243,180,0,.4); --ud-warn-border-4: rgba(243,180,0,.4);
    --ud-warn-border-5: rgba(243,180,0,.5);
    /* βαθύ πορτοκαλί (παύση) */
    --ud-paused-fg: #fb8a4c; --ud-paused-deep: #fdba8c; --ud-paused-bg: rgba(234,88,12,.16); --ud-paused-bg-2: rgba(234,88,12,.16); --ud-paused-border: rgba(234,88,12,.42);
    /* ροζ (προετοιμασία) */
    --ud-pink-fg: #f383c4; --ud-pink-bg: rgba(255,111,181,.15); --ud-pink-border: rgba(255,111,181,.42);
    /* μωβ */
    --ud-purple-fg: #b99af0; --ud-purple-fg-2: #b99af0; --ud-purple-fg-3: #b99af0; --ud-purple-bg: rgba(126,59,208,.18); --ud-purple-bg-2: rgba(126,59,208,.18);
    --ud-purple-bg-3: rgba(126,59,208,.18); --ud-purple-border: rgba(126,59,208,.45); --ud-purple-border-2: rgba(126,59,208,.45); --ud-purple-border-3: rgba(126,59,208,.45);
    --ud-purple-fg-4: #b99af0; --ud-purple-bg-4: rgba(126,59,208,.18); --ud-purple-border-4: rgba(126,59,208,.45);
    /* τιρκουάζ (tags) */
    --ud-teal-fg: #5fc9cd; --ud-teal-bg: rgba(19,160,165,.18); --ud-teal-border: rgba(19,160,165,.45);
    /* ματζέντα (tags) */
    --ud-rose-fg: #ec8fbe; --ud-rose-bg: rgba(220,80,150,.18); --ud-rose-border: rgba(220,80,150,.45);
    /* indigo (αναμονή ημερήσιου ορίου αποστολών) */
    --ud-quota-fg: #a99cf5; --ud-quota-deep: #c3b9fa; --ud-quota-bg: rgba(99,80,230,.18); --ud-quota-bg-2: rgba(99,80,230,.12); --ud-quota-border: rgba(99,80,230,.45);
    /* κάρτα «Από ΕΜΕΠ» */
    --ud-emep-border: rgba(61,123,217,.35); --ud-emep-line: rgba(61,123,217,.22);
}

/* ---------- Header (μέσα στο σταθερό app header) ---------- */
.ud-hdr { display: flex; align-items: center; gap: 20px; flex-wrap: wrap; width: 100%; padding: 12px 0; font-family: Manrope, Helvetica, sans-serif; color: var(--ud-text); }
.ud-back { width: 38px; height: 38px; flex-shrink: 0; border-radius: 6px; border: 1px solid var(--ud-border-strong); background: var(--ud-surface); color: var(--ud-text); font-size: 18px; cursor: pointer; display: flex; align-items: center; justify-content: center; text-decoration: none; }
.ud-back:hover { background: var(--ud-hover); color: var(--ud-text); }
.ud-hdr-main { flex: 1; min-width: 220px; }
.ud-hdr-titlerow { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.ud-title { font-size: 20px; font-weight: 700; }
.ud-status { display: flex; align-items: center; gap: 6px; height: 22px; padding: 0 9px; border-radius: 11px; font-size: 11px; font-weight: 700; }
.ud-status .ud-dot { width: 6px; height: 6px; }
.ud-crumbs { font-size: 12px; color: var(--ud-text-muted); margin-top: 2px; display: flex; gap: 6px; flex-wrap: wrap; }
.ud-crumbs a { color: var(--ud-text-muted); text-decoration: none; }
.ud-crumbs a:hover { color: #00a9e6; }
.ud-crumb-sep { color: var(--ud-grey); }
.ud-hdr-actions { display: flex; gap: 8px; align-items: center; }
.ud-dirty { font-size: 12px; color: #e08a00; font-weight: 600; display: flex; align-items: center; gap: 6px; }
.ud-dirty .ud-dot { background: #e08a00; }
.ud-btn { height: 38px; padding: 0 16px; border-radius: 6px; border: 1px solid var(--ud-border-strong); background: var(--ud-surface); color: var(--ud-text); font-size: 13px; font-weight: 600; cursor: pointer; }
.ud-btn:hover:not(:disabled) { background: var(--ud-hover); }
.ud-btn-primary { padding: 0 22px; border: none; background: #1fae4b; color: #fff; font-weight: 700; }
.ud-btn-primary:hover:not(:disabled) { background: #18963f; }
.ud-btn:disabled { opacity: .5; cursor: default; }
.ud-vsep { width: 1px; height: 28px; background: var(--ud-soft-2); margin: 0 4px; }
.ud-req-meter { display: flex; flex-direction: column; gap: 5px; min-width: 170px; }
.ud-req-meter-top { font-size: 12px; color: var(--ud-text-muted); display: flex; justify-content: space-between; gap: 10px; }
.ud-req-meter-top strong { color: var(--ud-text); }
.ud-req-bar { height: 6px; border-radius: 3px; background: var(--ud-track); overflow: hidden; }
.ud-req-fill { height: 100%; border-radius: 3px; transition: width .3s; }

/* ---------- Σελίδα ---------- */
.ud-page { display: flex; gap: 24px; padding: 20px 0 60px; align-items: flex-start; font-family: Manrope, Helvetica, sans-serif; color: var(--ud-text); }
.ud-main { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 20px; }
.ud-dot { display: inline-block; width: 7px; height: 7px; border-radius: 50%; flex-shrink: 0; }

/* ---------- Ειδοποιήσεις πάνω από τις κάρτες ---------- */
.ud-alert { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; padding: 12px 16px; border-radius: 8px; font-size: 13px; line-height: 1.5; }
.ud-alert-danger { background: var(--ud-bad-bg); border: 1px solid var(--ud-bad-border); color: var(--ud-bad-deep); }
.ud-alert-warn { align-items: flex-start; flex-wrap: nowrap; background: var(--ud-warn-bg); border: 1px solid var(--ud-warn-border); color: var(--ud-warn-fg); }
.ud-alert-icon { width: 20px; height: 20px; flex-shrink: 0; border-radius: 50%; color: #fff; font-weight: 800; display: flex; align-items: center; justify-content: center; font-size: 12px; }
.ud-alert-danger .ud-alert-icon { background: #d93636; }
.ud-alert-warn .ud-alert-icon { background: #f3b400; }
.ud-alert-text { flex: 1; min-width: 200px; }
.ud-alert-sub { font-size: 12px; color: var(--ud-warn-fg-2); margin-top: 2px; }
.ud-alert-btn { height: 32px; padding: 0 14px; border-radius: 6px; border: none; background: #d93636; color: #fff; font-size: 13px; font-weight: 700; cursor: pointer; white-space: nowrap; }
.ud-alert-btn:hover { background: #b82a2a; }
.ud-alert-btn-warn { height: 30px; padding: 0 12px; border-radius: 5px; border: 1px solid var(--ud-warn-border-5); background: var(--ud-surface); color: var(--ud-warn-fg); font-size: 12px; font-weight: 600; cursor: pointer; white-space: nowrap; }
.ud-alert-close { width: 30px; height: 30px; border: none; background: transparent; color: var(--ud-warn-fg-2); font-size: 18px; cursor: pointer; }

/* ---------- Ενότητες ---------- */
.ud-sec { background: var(--ud-surface); border-radius: 8px; box-shadow: var(--ud-card-shadow); overflow: hidden; scroll-margin-top: 96px; }
.ud-sec-head { background: var(--ud-primary); color: #fff; padding: 10px 20px; min-height: 50px; display: flex; align-items: center; gap: 12px; cursor: pointer; user-select: none; }
.ud-sec-num { width: 24px; height: 24px; border-radius: 50%; background: rgba(255,255,255,.18); font-size: 12px; font-weight: 700; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.ud-sec-title { font-size: 15px; font-weight: 700; flex: 1; }
.ud-sec-meta { font-size: 12px; opacity: .85; }
/* πού πηγαίνουν οι ειδοποιήσεις, στην κεφαλίδα (σελίδα χρήστη)· κόβεται με «…» σε στενή οθόνη */
.ud-sec-effective { min-width: 0; max-width: 60%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; opacity: .95; }
.ud-sec-effective strong { font-weight: 700; }
.ud-sec-effective-src { opacity: .8; }
.ud-sec-effective-label { margin-right: 4px; }
.ud-sec-effective-ic { display: none; margin-right: 4px; }
@media (max-width: 575px) {
    .ud-sec-effective-label, .ud-sec-effective-src { display: none; }
    .ud-sec-effective-ic { display: inline; }
}
.ud-chev { font-size: 14px; transition: transform .2s; }
.ud-chev.collapsed { transform: rotate(-90deg); }
.ud-active-toggle { display: flex; align-items: center; gap: 8px; background: transparent; border: none; color: #fff; font-size: 13px; font-weight: 600; cursor: pointer; padding: 0; }

.ud-body { padding: 20px; }
.ud-body-col { padding: 20px; display: flex; flex-direction: column; gap: 18px; }
.ud-body-col-22 { padding: 20px; display: flex; flex-direction: column; gap: 22px; }
.ud-grid { display: grid; gap: 18px 20px; }
.ud-grid-200 { grid-template-columns: repeat(auto-fit, minmax(min(100%, 200px), 1fr)); }
.ud-grid-260 { grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr)); }
.ud-grid-170 { grid-template-columns: repeat(auto-fill, minmax(170px, 1fr)); }
.ud-grid-220 { grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); }
/* Σύνδεση & Ασφάλεια: πεδία στο 1/3 και κουτιά στο 1/2, σε μία στήλη στο κινητό */
.ud-grid-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.ud-grid-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
@media (max-width: 767px) { .ud-grid-3, .ud-grid-2 { grid-template-columns: minmax(0, 1fr); } }
/* Βασικά: 2 στήλες, 4 σε φαρδιά οθόνη (Email και Οργανισμός πιάνουν από 2) */
.ud-grid-basic { grid-template-columns: repeat(2, minmax(0, 1fr)); }
/* Διεύθυνση: η οδός σε δική της γραμμή, όλα σε μία γραμμή σε φαρδιά οθόνη */
.ud-grid-addr { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px 16px; }
.ud-grid-addr .ud-addr-main { grid-column: 1 / -1; }
@media (min-width: 1440px) {
    .ud-grid-basic { grid-template-columns: repeat(4, minmax(0, 1fr)); }
    .ud-grid-addr { grid-template-columns: minmax(0, 2fr) repeat(4, minmax(0, 1fr)); }
    .ud-grid-addr .ud-addr-main { grid-column: auto; }
}
.ud-span2 { grid-column: span 2; }
/* Βασικά: Email Εγγραφής, Username και Οργανισμός σε μία σειρά, σπάει σε στενό πλάτος */
.ud-basic-row3 { grid-template-columns: repeat(auto-fit, minmax(min(100%, 230px), 1fr)); gap: 18px 20px; align-items: start; }
.ud-full { grid-column: 1 / -1; }
.ud-divider { height: 1px; background: var(--ud-track); }

/* ---------- Πεδία ---------- */
.ud-field { display: flex; flex-direction: column; gap: 6px; min-width: 0; margin: 0; }
.ud-label { font-size: 13px; font-weight: 600; }
.ud-label-row { font-size: 13px; font-weight: 600; display: flex; justify-content: space-between; gap: 8px; }
.ud-label-with-info { display: flex; align-items: center; gap: 6px; }
.ud-req { color: #d93636; }
.ud-verify { font-size: 12px; font-weight: 600; white-space: nowrap; cursor: help; }
.ud-verify.ok { color: var(--ud-ok-fg); }
.ud-verify.no { color: var(--ud-placeholder); }
.ud-check-inline { display: flex; align-items: center; gap: 6px; font-weight: 500; color: var(--ud-text-muted); font-size: 12px; cursor: pointer; }
.ud-check-inline input, .ud-check input { accent-color: var(--ud-primary-accent); width: 15px; height: 15px; margin: 0; }
.ud-check { display: flex; align-items: center; gap: 6px; font-size: 13px; color: var(--ud-text-2); cursor: pointer; margin: 0; }
.ud-input { height: 40px; padding: 0 12px; border-radius: 6px; background: var(--ud-soft); border: 1px solid transparent; font-size: 14px; outline: none; color: var(--ud-text); width: 100%; min-width: 0; }
select.ud-input { padding: 0 10px; }
.ud-input::placeholder { color: var(--ud-placeholder); }
.ud-input:focus { background: var(--ud-surface); border-color: var(--ud-primary-accent); }
.ud-input.invalid { border-color: #d93636; }
.ud-input:disabled { background: var(--ud-disabled-bg); color: var(--ud-text-disabled); cursor: not-allowed; }
.ud-afm { display: flex; gap: 8px; }
.ud-org-row { display: flex; gap: 8px; }
.ud-org-row select { flex: 1; min-width: 0; }
.ud-more-btn { flex-shrink: 0; height: 40px; padding: 0 12px; border-radius: 6px; border: 1px solid var(--ud-border-strong); background: var(--ud-surface); color: var(--ud-primary-text); font-size: 12px; font-weight: 700; cursor: pointer; white-space: nowrap; }
.ud-more-btn:hover, .ud-more-btn.on { background: var(--ud-primary-soft); border-color: var(--ud-primary-border); }
.ud-afm select { width: 58px; flex-shrink: 0; padding: 0 4px; }
.ud-afm input { flex: 1; min-width: 0; }
.ud-err { font-size: 12px; color: #d93636; }
.ud-warn-note { font-size: 12px; color: var(--ud-warn-fg-2); }
.ud-ok { font-size: 12px; color: var(--ud-ok-fg); font-weight: 600; }
.ud-link-btn { border: none; background: none; padding: 0; color: var(--ud-primary-text); font-size: 12px; font-weight: 600; cursor: pointer; }
.ud-link-btn:hover { color: #00a9e6; }

/* Κωδικός */
.ud-pw { display: flex; position: relative; }
.ud-pw .ud-input { padding-right: 44px; }
.ud-eye { position: absolute; right: 4px; top: 4px; width: 32px; height: 32px; padding: 0; border: none; border-radius: 4px; background: transparent; color: var(--ud-text-2); cursor: pointer; display: flex; align-items: center; justify-content: center; z-index: 1; }
.ud-eye:hover { background: var(--ud-soft-2); color: var(--ud-primary-text); }
.ud-strength { display: flex; align-items: center; gap: 8px; }
.ud-strength-bar { flex: 1; height: 4px; border-radius: 2px; background: var(--ud-track); overflow: hidden; }
.ud-strength-fill { height: 100%; transition: width .2s; }
.ud-strength-label { font-size: 12px; font-weight: 600; }

/* Διακόπτες */
.ud-box { border: 1px solid var(--ud-border); border-radius: 8px; padding: 14px 16px; display: flex; flex-direction: column; gap: 12px; }
.ud-toggle { display: flex; align-items: flex-start; gap: 12px; border: none; background: none; padding: 0; text-align: left; cursor: pointer; color: var(--ud-text); }
.ud-toggle:disabled { cursor: not-allowed; }
.ud-switch { width: 38px; height: 22px; flex-shrink: 0; border-radius: 11px; background: var(--ud-grey); position: relative; transition: background .2s; display: inline-block; }
.ud-switch.on { background: #00a9e6; }
.ud-switch .ud-knob { position: absolute; top: 3px; left: 3px; width: 16px; height: 16px; border-radius: 50%; background: #fff; transition: left .2s; }
.ud-switch.on .ud-knob { left: 19px; }
.ud-switch.ud-switch-hdr { background: rgba(255,255,255,.35); }
.ud-switch.ud-switch-hdr.on { background: #1fae4b; }
.ud-box-title { display: block; font-size: 14px; font-weight: 600; }
.ud-box-hint { display: block; font-size: 12px; color: var(--ud-text-muted); margin-top: 2px; }

/* Tooltip πληροφορίας */
.ud-info { position: relative; width: 16px; height: 16px; border-radius: 50%; background: var(--ud-soft-2); color: var(--ud-text-2); font-size: 10px; font-weight: 800; display: inline-flex; align-items: center; justify-content: center; cursor: help; }
.ud-tip { display: none; position: absolute; left: 50%; bottom: calc(100% + 8px); transform: translateX(-50%); width: 230px; padding: 8px 10px; border-radius: 6px; background: var(--ud-tip-bg); color: #fff; font-size: 12px; font-weight: 500; line-height: 1.45; box-shadow: 0 6px 18px rgba(16,24,40,.2); z-index: 5; }
.ud-info:hover .ud-tip { display: block; }

/* Ομάδες ειδοποιήσεων */
.ud-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.ud-chip { height: 32px; padding: 0 14px; border-radius: 16px; border: 1px solid var(--ud-border-strong); background: var(--ud-surface); color: var(--ud-text); font-size: 13px; font-weight: 600; cursor: pointer; }
.ud-chip.on { background: var(--ud-primary); color: #fff; border-color: var(--ud-primary-accent); }
.ud-ch-rows { border: 1px solid var(--ud-border); border-radius: 8px; overflow: hidden; }
.ud-ch-row { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; padding: 10px 14px; border-bottom: 1px solid var(--ud-line); }
.ud-ch-row:last-child { border-bottom: none; }
.ud-ch-name { flex: 1; min-width: 160px; font-size: 13px; font-weight: 600; }
.ud-ch-opts { display: flex; gap: 6px; flex-wrap: wrap; }
.ud-ch-pill { height: 28px; padding: 0 12px; border-radius: 14px; border: 1px solid var(--ud-border-strong); background: var(--ud-surface); color: var(--ud-text-muted); font-size: 12px; font-weight: 700; cursor: pointer; display: flex; align-items: center; gap: 6px; }
.ud-ch-pill.on { background: var(--ud-primary-soft); color: var(--ud-primary-text); border-color: var(--ud-primary-accent); }
.ud-hint { font-size: 12px; color: var(--ud-text-muted); }

/* Παραλαβή ειδοποιήσεων: segmented control (ίδιο στυλ με το cd-seg της σελίδας εφαρμογής) και η διεύθυνση που ισχύει */
.ud-pref { gap: 8px; }
.ud-seg { display: inline-flex; flex-wrap: wrap; align-self: flex-start; padding: 3px; border-radius: 7px; background: var(--ud-soft); gap: 3px; max-width: 100%; }
.ud-seg-btn { height: 30px; padding: 0 14px; border: none; border-radius: 5px; background: transparent; color: var(--ud-text-2); font-size: 12px; font-weight: 700; cursor: pointer; white-space: nowrap; }
.ud-seg-btn.on { background: var(--ud-raised); color: var(--ud-primary-text); box-shadow: 0 1px 2px rgba(16,24,40,.12); }
/* σε όλο το πλάτος: δύο ίσα μισά, πάνω από τις δύο στήλες των στοιχείων επικοινωνίας */
.ud-pref-full .ud-seg { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); width: 100%; align-self: stretch; }
.ud-pref-full .ud-seg-btn { width: 100%; white-space: normal; height: auto; min-height: 34px; padding: 7px 10px; font-size: 13px; }
.ud-effective { font-size: 13px; color: var(--ud-text-2); overflow-wrap: anywhere; }
.ud-effective strong { color: var(--ud-text); font-weight: 600; }
.ud-effective-src { color: var(--ud-text-muted); }

/* Από ΕΜΕΠ */
/* Στοιχεία Επικοινωνίας: δηλωμένα αριστερά, ΕΜΕΠ δεξιά (κάθετη γραμμή)· μία στήλη όταν η ενότητα είναι στενή */
.ud-contact-wrap { container: udcontact / inline-size; }
.ud-contact-split { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
.ud-contact-col { display: flex; flex-direction: column; gap: 16px; min-width: 0; padding-right: 24px; }
.ud-contact-col-emep { padding: 0 0 0 24px; border-left: 1px solid var(--ud-track); }
.ud-contact-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px 18px; }
/* Email Ειδοποιήσεων (λίγο φαρδύτερο), Κινητό, Σταθερό σε μία σειρά */
.ud-contact-row3 { grid-template-columns: minmax(0, 1.7fr) minmax(0, 1fr) minmax(0, 1fr); gap: 16px 12px; }
.ud-contact-row3 .ud-input { padding-left: 10px; padding-right: 10px; }
.ud-contact-row3 .ud-verify { font-size: 11px; }
/* Διεύθυνση φαρδιά, Πόλη, Τ.Κ. και Χώρα (κωδικός) στενά, σε μία σειρά */
.ud-contact-addr { grid-template-columns: minmax(0, 2.5fr) minmax(0, 1.4fr) minmax(0, 1.15fr) minmax(0, 0.85fr); gap: 16px 12px; }
.ud-contact-addr .ud-input { padding-left: 10px; padding-right: 10px; }
/* Χώρα: κλειστή δείχνει τον κωδικό (GR), ανοιχτή τα πλήρη ονόματα */
.ud-country-code { position: relative; display: block; }
.ud-country-code select { color: transparent; }
.ud-country-code select option { color: var(--ud-text); }
.ud-country-code-label { position: absolute; left: 11px; top: 50%; transform: translateY(-50%); pointer-events: none; font-size: 14px; font-weight: 600; color: var(--ud-text); }
.ud-contact-col .ud-emep, .ud-contact-col .ud-emep-new { margin: 0; }
@container udcontact (max-width: 819.98px) {
    .ud-contact-split { grid-template-columns: minmax(0, 1fr); gap: 22px; }
    .ud-contact-col { padding: 0; }
    .ud-contact-col-emep { padding: 22px 0 0; border-left: none; border-top: 1px solid var(--ud-track); }
}
@container udcontact (max-width: 419.98px) {
    .ud-contact-grid, .ud-contact-row3 { grid-template-columns: minmax(0, 1fr); }
    .ud-contact-addr { grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr) minmax(0, 0.9fr); }
    .ud-contact-addr > :first-child { grid-column: 1 / -1; }
}
/* ΕΜΕΠ: λευκή κάρτα με γαλάζιο τόνο (στοιχεία από δημόσιο μητρώο, μόνο για ανάγνωση) */
.ud-emep { border: 1px solid var(--ud-emep-border); border-radius: 10px; background: var(--ud-surface); overflow: hidden; box-shadow: 0 1px 2px rgba(16,24,40,.05); }
.ud-emep-head { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; padding: 12px 16px; border-bottom: 1px solid var(--ud-emep-line); background: var(--ud-primary-soft-2); }
.ud-emep-title { font-size: 14px; font-weight: 700; color: var(--ud-primary-text); display: inline-flex; align-items: center; }
.ud-emep-title i { color: inherit; font-size: 13px; margin-right: 8px; line-height: 1; }
.ud-sync { font-size: 12px; color: var(--ud-text-muted); display: flex; align-items: center; gap: 6px; }
/* στην κεφαλίδα του ΕΜΕΠ: τέρμα δεξιά, στην ίδια γραμμή με τον τίτλο */
.ud-emep-head .ud-sync { margin-left: auto; }
/* συναινέσεις ΕΜΕΠ στο κάτω μέρος: ✓ πράσινο / ✕ κόκκινο (επιλογή του πολίτη στο gov.gr) */
.ud-emep-consents { display: flex; flex-wrap: wrap; gap: 8px 22px; padding: 12px 16px; border-top: 1px solid var(--ud-line); font-size: 13px; color: var(--ud-text-2); }
.ud-consent { display: inline-flex; align-items: center; gap: 7px; }
.ud-consent-mark { width: 18px; height: 18px; flex-shrink: 0; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; font-size: 11px; font-weight: 800; line-height: 1; }
.ud-consent.yes .ud-consent-mark { background: var(--ud-ok-bg-3); color: var(--ud-ok-fg); }
.ud-consent.no .ud-consent-mark { background: var(--ud-bad-bg); color: var(--ud-bad-fg); }
/* email, κινητό, σταθερό σε μία σειρά (το email λίγο φαρδύτερο)· η διεύθυνση από κάτω σε όλο το πλάτος */
.ud-emep-grid { display: grid; grid-template-columns: minmax(0, 2.2fr) minmax(0, 1fr) minmax(0, 1fr); gap: 16px 16px; padding: 16px; font-size: 13px; }
.ud-emep-grid .ud-kv > span { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.ud-emep-grid .ud-kv-full { grid-column: 1 / -1; }
/* η πηγή (ΕΜΕΠ / Μητρώο Φυσικών Προσώπων) δίπλα στον τίτλο της διεύθυνσης, χωρίς κεφαλαία */
.ud-kv-src { font-style: normal; font-weight: 600; text-transform: none; letter-spacing: 0; margin-left: 6px; padding: 1px 7px; border-radius: 9px; background: var(--ud-primary-soft-2); color: var(--ud-primary-text); }
@container udcontact (max-width: 419.98px) { .ud-emep-grid { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 575px) { .ud-emep-grid { grid-template-columns: minmax(0, 1fr); } }
.ud-emep-grid .ud-kv > span { font-size: 11px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; color: var(--ud-text-muted); }
.ud-emep-grid .ud-kv > strong { font-size: 14px; color: var(--ud-text); overflow-wrap: anywhere; }
.ud-kv { display: flex; flex-direction: column; gap: 3px; }
.ud-kv > span { font-size: 12px; color: var(--ud-text-muted); }
.ud-kv > strong { font-weight: 600; }
.ud-note { display: flex; align-items: flex-start; gap: 8px; padding: 10px 16px; border-top: 1px solid var(--ud-border); background: var(--ud-primary-soft-2); color: var(--ud-primary-deep); font-size: 12px; line-height: 1.5; }
.ud-note-i { width: 16px; height: 16px; flex-shrink: 0; margin-top: 1px; border-radius: 50%; background: var(--ud-primary); color: #fff; font-size: 10px; font-weight: 800; display: flex; align-items: center; justify-content: center; }
.ud-emep-new { border: 1px dashed var(--ud-emep-border); border-radius: 10px; background: var(--ud-primary-soft-3); display: flex; align-items: center; flex-wrap: wrap; gap: 10px; padding: 12px 16px; }
.ud-emep-new-text { font-size: 12px; color: var(--ud-text-muted); flex: 1; min-width: 200px; }
.ud-emep .ud-note { border-top-color: var(--ud-emep-line); }
.ud-emep-new .ud-note { flex-basis: 100%; border-top: none; padding: 8px 10px; border-radius: 6px; }

/* Ρόλοι */
.ud-sel-chips { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; }
.ud-sel-title { font-size: 12px; font-weight: 700; color: var(--ud-text-2); margin-right: 4px; }
.ud-sel-chip { display: flex; align-items: center; gap: 4px; height: 26px; padding: 0 4px 0 10px; border-radius: 13px; background: var(--ud-primary-soft); border: 1px solid var(--ud-primary-border); color: var(--ud-primary-text); font-size: 12px; font-weight: 600; }
.ud-sel-chip button { width: 18px; height: 18px; border: none; border-radius: 50%; background: transparent; color: var(--ud-primary-text); cursor: pointer; font-size: 14px; line-height: 1; padding: 0; }
.ud-sel-chip button:hover { background: var(--ud-primary-soft-hover); }
.ud-sel-clear { margin-left: auto; border: none; background: none; color: var(--ud-text-muted); font-size: 12px; font-weight: 600; cursor: pointer; text-decoration: underline; padding: 0; }
.ud-roles-box { display: grid; grid-template-columns: minmax(0, 1fr); border: 1px solid var(--ud-border); border-radius: 8px; overflow: hidden; }
.ud-roles-cats { display: flex; flex-direction: column; background: var(--ud-surface-2); border-bottom: 1px solid var(--ud-border); padding: 6px 0; }
@media (min-width: 1100px) {
    .ud-roles-box { grid-template-columns: 200px minmax(0, 1fr); }
    .ud-roles-cats { border-bottom: none; border-right: 1px solid var(--ud-border); }
}
.ud-roles-cat { display: flex; align-items: center; justify-content: space-between; gap: 8px; width: 100%; height: 40px; flex-shrink: 0; padding: 0 14px; border: none; border-left: 3px solid transparent; background: transparent; text-align: left; font-size: 13px; font-weight: 500; color: var(--ud-text); cursor: pointer; }
.ud-roles-cat:hover { background: var(--ud-raised); }
.ud-roles-cats-list { display: flex; flex-direction: column; max-height: 400px; overflow-y: auto; }
.ud-roles-cat-name { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ud-roles-pill { flex-shrink: 0; }
.ud-roles-cat.on { background: var(--ud-raised); border-left-color: var(--ud-primary-accent); font-weight: 700; }
.ud-roles-pill { min-width: 22px; height: 20px; padding: 0 7px; border-radius: 10px; background: var(--ud-soft-2); color: var(--ud-text-2); font-size: 11px; font-weight: 700; display: flex; align-items: center; justify-content: center; }
.ud-roles-pill.has { background: var(--ud-primary); color: #fff; }
.ud-roles-pane { display: flex; flex-direction: column; min-width: 0; }
.ud-roles-tools { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; padding: 10px 12px; border-bottom: 1px solid var(--ud-line); }
.ud-roles-search { flex: 1; min-width: 180px; width: auto; height: 36px; font-size: 13px; }
.ud-roles-only { display: flex; align-items: center; gap: 6px; font-size: 12px; color: var(--ud-text-2); cursor: pointer; margin: 0; }
.ud-roles-only input { accent-color: var(--ud-primary-accent); width: 15px; height: 15px; margin: 0; }
.ud-roles-head { display: flex; align-items: center; gap: 10px; padding: 10px 14px 4px; }
.ud-roles-head strong { font-size: 13px; flex: 1; }
.ud-roles-head button { border: none; background: none; color: var(--ud-primary-text); font-size: 12px; font-weight: 700; cursor: pointer; padding: 0; }
.ud-roles-grid { padding: 6px 10px 12px; max-height: 380px; overflow: auto; display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 215px), 1fr)); gap: 6px; align-content: start; }
.ud-role { display: flex; align-items: center; gap: 10px; padding: 9px 10px; border-radius: 6px; border: 1px solid var(--ud-line); background: var(--ud-surface); cursor: pointer; min-width: 0; margin: 0; font-weight: 400; }
.ud-role:hover { border-color: var(--ud-primary-border-2); }
.ud-role.on { background: var(--ud-primary-soft); border-color: var(--ud-primary-border-2); }
.ud-role input { accent-color: var(--ud-primary-accent); width: 15px; height: 15px; margin: 0; flex-shrink: 0; }
.ud-role-text { display: flex; flex-direction: column; gap: 1px; min-width: 0; }
.ud-role-label { font-size: 13px; font-weight: 600; color: var(--ud-text); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ud-role-sub { font-size: 11px; color: var(--ud-text-muted); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ud-roles-grid .ud-empty { grid-column: 1 / -1; padding: 24px; }
.ud-empty { padding: 20px; text-align: center; font-size: 13px; color: var(--ud-text-muted); }

/* Logins / Κάρτες / Υπογραφές */
.ud-list { padding: 8px 20px; }
.ud-row { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; padding: 12px 0; border-bottom: 1px solid var(--ud-line); }
.ud-row:last-child { border-bottom: none; }
.ud-row-icon { width: 32px; height: 32px; border-radius: 6px; background: var(--ud-soft); display: flex; align-items: center; justify-content: center; font-weight: 800; font-size: 13px; color: var(--ud-text-2); text-transform: uppercase; }
.ud-row-main { flex: 1; min-width: 180px; display: flex; flex-direction: column; gap: 2px; }
.ud-row-main strong { font-size: 14px; font-weight: 600; }
.ud-row-main span { font-size: 12px; color: var(--ud-text-muted); }
.ud-card-row { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; padding: 12px 14px; border: 1px solid var(--ud-border); border-radius: 8px; }
.ud-card-icon { width: 44px; height: 30px; border-radius: 5px; background: var(--ud-primary); flex-shrink: 0; }
.ud-pill { padding: 2px 8px; border-radius: 10px; font-size: 11px; font-weight: 700; }
.ud-pill-ok { background: var(--ud-ok-bg); color: var(--ud-ok-fg); }
.ud-pill-off { background: var(--ud-soft); color: var(--ud-text-muted); }
.ud-add-btn { align-self: flex-start; height: 32px; padding: 0 12px; border-radius: 6px; border: 1px solid var(--ud-border-strong); background: var(--ud-surface); color: var(--ud-primary-text); font-size: 12px; font-weight: 700; cursor: pointer; }
.ud-add-btn:hover { background: var(--ud-hover); }
.ud-icon-btn { width: 32px; height: 32px; border-radius: 6px; border: 1px solid var(--ud-border); background: var(--ud-surface); color: var(--ud-text-2); cursor: pointer; display: inline-flex; align-items: center; justify-content: center; padding: 0; }
.ud-icon-btn:hover { background: var(--ud-hover); color: var(--ud-primary-text); }
.ud-icon-btn.danger:hover { background: var(--ud-bad-bg); color: var(--ud-bad-fg); border-color: var(--ud-bad-border); }
.ud-row-actions { display: flex; gap: 6px; }
.ud-table-wrap { overflow-x: auto; }
.ud-table { min-width: 560px; display: grid; grid-template-columns: minmax(0,2fr) minmax(0,1fr) minmax(0,1fr) 90px 80px; font-size: 13px; }
.ud-th { padding: 8px 10px; font-size: 12px; color: var(--ud-text-muted); font-weight: 600; border-bottom: 1px solid var(--ud-border); }
.ud-td { padding: 10px; display: flex; align-items: center; border-bottom: 1px solid var(--ud-line); min-width: 0; }
.ud-td strong { font-weight: 600; }
.ud-later { display: flex; align-items: center; gap: 14px; padding: 16px 20px; border-radius: 8px; border: 1px dashed var(--ud-grey); background: var(--ud-surface-3); font-size: 13px; color: var(--ud-text-2); flex-wrap: wrap; }
.ud-later strong { color: var(--ud-text); }

/* ---------- Πλαϊνή στήλη ---------- */
.ud-rail { width: 220px; flex-shrink: 0; position: sticky; top: 100px; display: flex; flex-direction: column; gap: 16px; }
.ud-rail-card { background: var(--ud-surface); border-radius: 8px; box-shadow: var(--ud-card-shadow); padding: 12px; display: flex; flex-direction: column; gap: 2px; }
.ud-rail-card.ud-actions { gap: 6px; }
.ud-rail-title { font-size: 11px; font-weight: 700; color: var(--ud-text-muted); letter-spacing: .05em; padding: 4px 8px 8px; }
.ud-actions .ud-rail-title { padding: 4px 8px 4px; }
.ud-rail-item { display: flex; align-items: center; gap: 10px; padding: 8px; border: none; border-radius: 6px; background: transparent; text-align: left; cursor: pointer; color: var(--ud-text); width: 100%; }
.ud-rail-item:hover { background: var(--ud-hover-2); }
.ud-rail-item.active { background: var(--ud-primary-soft); }
.ud-rail-dot { width: 8px; height: 8px; border-radius: 50%; flex-shrink: 0; }
.ud-rail-text { flex: 1; min-width: 0; }
.ud-rail-label { display: block; font-size: 13px; font-weight: 500; }
.ud-rail-item.active .ud-rail-label { font-weight: 700; }
.ud-rail-status { display: block; font-size: 11px; }
.ud-action { display: flex; flex-direction: column; align-items: flex-start; gap: 2px; padding: 9px 10px; border: 1px solid var(--ud-border); border-radius: 6px; background: var(--ud-surface); text-align: left; cursor: pointer; color: var(--ud-primary-text); width: 100%; }
.ud-action:hover:not(:disabled) { background: var(--ud-hover-2); border-color: var(--ud-grey); }
.ud-action:disabled { cursor: not-allowed; opacity: .5; }
.ud-action-label { font-size: 13px; font-weight: 600; }
.ud-action-hint { font-size: 11px; color: var(--ud-text-muted); }
.ud-actions-note { font-size: 11px; color: var(--ud-text-muted); padding: 2px 4px 0; line-height: 1.4; }
@media (max-width: 1199px) { .ud-rail { display: none; } }

/* ---------- Μικρές οθόνες: η κεφαλίδα του θέματος έχει σταθερό ύψος, άρα μία γραμμή χωρίς breadcrumbs ---------- */
@media (max-width: 991px) {
    .ud-hdr { flex-wrap: nowrap; gap: 8px; padding: 6px 0; min-width: 0; }
    .ud-back, .ud-crumbs, .ud-req-meter, .ud-vsep { display: none; }
    .ud-hdr-main { min-width: 0; }
    .ud-hdr-titlerow { flex-wrap: nowrap; }
    .ud-title { font-size: 15px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
    .ud-dirty { font-size: 0; gap: 0; }
    .ud-hdr-actions { gap: 6px; flex-shrink: 0; }
    .ud-btn, .ud-btn-primary { height: 32px; padding: 0 10px; font-size: 12px; }
}
@media (max-width: 575px) {
    .ud-hdr-main, .ud-hide-sm { display: none; }
    .ud-hdr { justify-content: flex-end; }
    .ud-hdr-actions { gap: 4px; }
    .ud-btn, .ud-btn-primary { padding: 0 7px; }
    /* με μία στήλη το span 2 θα δημιουργούσε δεύτερη, στενή στήλη */
    .ud-span2 { grid-column: 1 / -1; }
}

/* ---------- Ειδοποιήσεις (ενότητα 10) ---------- */
.ud-n-tools { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
.ud-n-search { flex: 1; min-width: 240px; position: relative; display: flex; }
.ud-n-search-icon { position: absolute; left: 12px; top: 10px; color: var(--ud-text-muted); font-size: 13px; }
.ud-n-search .ud-input { height: 38px; padding-left: 32px; font-size: 13px; }
.ud-n-more { height: 38px; padding: 0 14px; border-radius: 6px; border: 1px solid var(--ud-border-strong); background: var(--ud-surface); color: var(--ud-primary-text); font-size: 13px; font-weight: 600; cursor: pointer; display: flex; align-items: center; gap: 8px; }
.ud-n-more.on { background: var(--ud-primary-soft); border-color: var(--ud-primary-border); }
.ud-n-badge { min-width: 18px; height: 18px; padding: 0 5px; border-radius: 9px; background: var(--ud-primary); color: #fff; font-size: 11px; font-weight: 700; display: flex; align-items: center; justify-content: center; }
.ud-n-arrow { font-size: 11px; }
.ud-n-filters { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 150px), 1fr)); gap: 12px 14px; padding: 14px; border-radius: 8px; background: var(--ud-surface-2); border: 1px solid var(--ud-border); }
.ud-n-filter { display: flex; flex-direction: column; gap: 5px; min-width: 0; margin: 0; }
.ud-n-filter > span { font-size: 12px; font-weight: 600; }
.ud-n-filter select, .ud-n-filter input { height: 36px; padding: 0 8px; border-radius: 6px; background: var(--ud-surface); border: 1px solid var(--ud-border-strong); font-size: 13px; color: var(--ud-text); outline: none; width: 100%; }
.ud-n-filter-clear { display: flex; align-items: flex-end; }
.ud-n-filter-clear button { height: 36px; padding: 0 4px; border: none; background: none; color: var(--ud-text-muted); font-size: 12px; font-weight: 600; cursor: pointer; text-decoration: underline; }
.ud-n-list { border: 1px solid var(--ud-border); border-radius: 8px; overflow: hidden; }
.ud-n-row { display: flex; align-items: flex-start; gap: 14px; padding: 12px 14px; border-bottom: 1px solid var(--ud-line); }
.ud-n-row:hover { background: var(--ud-surface-3); }
.ud-n-icon { width: 34px; height: 34px; flex-shrink: 0; border-radius: 8px; background: var(--ud-primary-soft); color: var(--ud-primary-text); font-size: 10px; font-weight: 800; line-height: 1; display: flex; align-items: center; justify-content: center; }
.ud-n-content { flex: 1; min-width: 0; display: flex; flex-wrap: wrap; align-items: flex-start; gap: 8px 20px; }
.ud-n-main { flex: 1 1 280px; min-width: 0; display: flex; flex-direction: column; gap: 3px; }
.ud-n-subject-row { display: flex; align-items: center; flex-wrap: wrap; gap: 6px 10px; }
.ud-n-subject-row strong { font-size: 13px; font-weight: 600; color: var(--ud-text); }
.ud-n-status { display: flex; align-items: center; gap: 5px; height: 20px; padding: 0 8px; border-radius: 10px; font-size: 11px; font-weight: 700; }
.ud-n-status .ud-dot { width: 6px; height: 6px; }
.ud-n-to { font-size: 12px; color: var(--ud-text-muted); }
.ud-n-meta { font-size: 11px; color: var(--ud-text-faint); }
.ud-n-error { flex: 1 1 260px; min-width: 0; display: flex; flex-direction: column; gap: 3px; padding-left: 12px; border-left: 2px solid var(--ud-bad-border-3); }
.ud-n-error-text { font-size: 12px; line-height: 1.45; color: var(--ud-text-2); }
.ud-n-error-text strong { color: var(--ud-bad-fg); font-weight: 700; }
.ud-n-error-raw { font-family: ui-monospace, Menlo, Consolas, monospace; font-size: 11px; color: var(--ud-bad-deep); word-break: break-all; }
.ud-n-actions { display: flex; gap: 6px; flex-shrink: 0; }
.ud-n-btn { width: 32px; height: 32px; border-radius: 6px; border: 1px solid var(--ud-border); background: var(--ud-surface); color: var(--ud-text-2); cursor: pointer; display: flex; align-items: center; justify-content: center; padding: 0; }
.ud-n-btn:hover { background: var(--ud-primary-soft); color: var(--ud-primary-text); border-color: var(--ud-primary-border); }
.ud-n-btn-resend:hover { background: var(--ud-ok-bg); color: var(--ud-ok-fg); border-color: var(--ud-ok-border); }
.ud-n-empty { padding: 28px; text-align: center; font-size: 13px; color: var(--ud-text-muted); border-bottom: 1px solid var(--ud-line); }
.ud-n-foot { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 10px 14px; background: var(--ud-surface-2); font-size: 12px; color: var(--ud-text-muted); min-height: 40px; }
.ud-n-foot button { border: none; background: none; color: var(--ud-primary-text); font-size: 12px; font-weight: 700; cursor: pointer; padding: 0; }

/* ---------- Toast ---------- */
.ud-toast { position: fixed; bottom: 24px; left: 50%; transform: translateX(-50%); z-index: 1100; display: flex; align-items: center; gap: 10px; padding: 12px 18px; border-radius: 8px; color: #fff; font-family: Manrope, sans-serif; font-size: 14px; font-weight: 600; box-shadow: 0 8px 24px rgba(16,24,40,.2); }

/* Telerik ComboBox (Εργαζόμενος) στο ύφος των πεδίων */
.ud-field .k-combobox { height: 40px; border-radius: 6px; background: var(--ud-soft); border: 1px solid transparent; }
/* σκούρο θέμα: το θέμα του Telerik είναι φωτεινό, οπότε κείμενο και κουμπί του πεδίου παίρνουν τα χρώματα των ud- πεδίων */
[data-bs-theme=dark] .ud-field .k-combobox { --kendo-color-on-app-surface: var(--ud-text); --kendo-color-surface-alt: var(--ud-soft); --kendo-color-base: var(--ud-soft-2); --kendo-color-on-base: var(--ud-text-2); --kendo-color-subtle: var(--ud-placeholder); }
