/* ============================================================
   NEXUSHUB — ΘΕΜΑΤΑ ΕΜΦΑΝΙΣΗΣ ΕΦΑΡΜΟΓΩΝ (γύρος 93)
   Forum (.fr) · Αγγελίες (.mk) · Freelance (.mk.wk)
   Φορτώνεται ΜΟΝΟ όταν η εφαρμογή έχει θέμα άλλο από το «classic»:
   <body class="… nx-themed" data-theme="slate | ocean | ivory | midnight | graphite">.
   1. Τα θέματα = μόνο τιμές (--t-*)   2. Κοινά   3. Αγγελίες + Freelance   4. Forum   5. Μικρές πινελιές ανά θέμα
   Αρχή: καθαρές επιφάνειες, λεπτές γραμμές, ΕΝΑ χρώμα έμφασης, ελάχιστη κίνηση (μόνο αλλαγή χρώματος / σκιάς σε 140ms).
   Νέο θέμα: ένα μπλοκ τιμών εδώ + μία γραμμή στο NEXUS_APP_THEMES (core/System/Apps.php).
   ============================================================ */

/* ---------- 1. ΤΑ ΘΕΜΑΤΑ ---------- */

/* Slate — ανοιχτό, ουδέτερο γκρι, λουλακί έμφαση. Καθαρό «εργαλείο». */
[data-theme="slate"] {
  --t-bg: #f5f6f8; --t-surface: #ffffff; --t-soft: #f0f2f5; --t-line: #e3e6eb; --t-line-strong: #cdd3dc;
  --t-text: #1c2434; --t-strong: #0b1220; --t-muted: #667085; --t-faint: #98a2b3;
  --t-accent: #4338ca; --t-accent-hover: #3730a3; --t-accent-ink: #ffffff; --t-accent-soft: rgba(67, 56, 202, .08); --t-accent-text: #4338ca;
  --t-radius: 10px; --t-radius-sm: 8px; --t-shadow: 0 1px 2px rgba(16, 24, 40, .05); --t-shadow-hover: 0 6px 18px rgba(16, 24, 40, .09);
  --t-font: "Inter", "Segoe UI", system-ui, -apple-system, Roboto, "Helvetica Neue", Arial, sans-serif; --t-head: var(--t-font); --t-head-weight: 700; --t-head-track: -.015em;
  --t-top-bg: #ffffff; --t-top-text: #1c2434; --t-top-line: #e3e6eb;
  --t-hero-bg: #1e1b4b; --t-hero-text: #ffffff; --t-hero-muted: rgba(255, 255, 255, .78); --t-hero-btn: #ffffff; --t-hero-btn-ink: #1e1b4b;
  --t-focus: rgba(67, 56, 202, .2);
}

/* Ocean — ανοιχτό, γαλάζιο, στρογγυλεμένες γωνίες, απαλή σκιά. Φιλικό. */
[data-theme="ocean"] {
  --t-bg: #f2f7fa; --t-surface: #ffffff; --t-soft: #e9f2f7; --t-line: #d9e6ee; --t-line-strong: #bfd3e0;
  --t-text: #143349; --t-strong: #0a2236; --t-muted: #587486; --t-faint: #8ea6b6;
  --t-accent: #0b76b7; --t-accent-hover: #095f94; --t-accent-ink: #ffffff; --t-accent-soft: rgba(11, 118, 183, .09); --t-accent-text: #0a6aa5;
  --t-radius: 16px; --t-radius-sm: 10px; --t-shadow: 0 2px 10px rgba(20, 51, 73, .06); --t-shadow-hover: 0 10px 26px rgba(20, 51, 73, .11);
  --t-font: "Segoe UI", system-ui, -apple-system, Roboto, "Helvetica Neue", Arial, sans-serif; --t-head: var(--t-font); --t-head-weight: 700; --t-head-track: -.01em;
  --t-top-bg: #ffffff; --t-top-text: #143349; --t-top-line: #d9e6ee;
  --t-hero-bg: linear-gradient(120deg, #0a5f97, #0b8aad); --t-hero-text: #ffffff; --t-hero-muted: rgba(255, 255, 255, .84); --t-hero-btn: #ffffff; --t-hero-btn-ink: #0a5f97;
  --t-focus: rgba(11, 118, 183, .22);
}

/* Ivory — ζεστό χαρτί, τίτλοι με πατούρες (serif), βαθύ πράσινο. Κλασικό, «έντυπο». */
[data-theme="ivory"] {
  --t-bg: #f8f5ef; --t-surface: #fffdf8; --t-soft: #f1ece2; --t-line: #e5ddcf; --t-line-strong: #d0c5b2;
  --t-text: #2b2620; --t-strong: #1b1713; --t-muted: #786d60; --t-faint: #a59a89;
  --t-accent: #1f5f4a; --t-accent-hover: #174a39; --t-accent-ink: #ffffff; --t-accent-soft: rgba(31, 95, 74, .09); --t-accent-text: #1f5f4a;
  --t-radius: 4px; --t-radius-sm: 4px; --t-shadow: none; --t-shadow-hover: 0 2px 10px rgba(43, 38, 32, .08);
  --t-font: "Segoe UI", system-ui, -apple-system, Roboto, "Helvetica Neue", Arial, sans-serif;
  --t-head: Georgia, "Iowan Old Style", "Palatino Linotype", "Book Antiqua", "Times New Roman", serif; --t-head-weight: 700; --t-head-track: 0;
  --t-top-bg: #fffdf8; --t-top-text: #2b2620; --t-top-line: #e5ddcf;
  --t-hero-bg: #1c4f3e; --t-hero-text: #fbf8f1; --t-hero-muted: rgba(251, 248, 241, .82); --t-hero-btn: #fbf8f1; --t-hero-btn-ink: #1c4f3e;
  --t-focus: rgba(31, 95, 74, .2);
}

/* Midnight — σκούρο μπλε, ήρεμο γαλάζιο. Για βραδινή ανάγνωση. */
[data-theme="midnight"] {
  --t-bg: #0b1220; --t-surface: #111b2e; --t-soft: #17243c; --t-line: #1f2d47; --t-line-strong: #2e4063;
  --t-text: #d9e2f1; --t-strong: #f4f7fc; --t-muted: #8fa0bd; --t-faint: #65769a;
  --t-accent: #4f9cf9; --t-accent-hover: #74b1fb; --t-accent-ink: #06121f; --t-accent-soft: rgba(79, 156, 249, .12); --t-accent-text: #7db8ff;
  --t-radius: 12px; --t-radius-sm: 9px; --t-shadow: 0 8px 24px rgba(0, 0, 0, .22); --t-shadow-hover: 0 12px 30px rgba(0, 0, 0, .34);
  --t-font: "Inter", "Segoe UI", system-ui, -apple-system, Roboto, "Helvetica Neue", Arial, sans-serif; --t-head: var(--t-font); --t-head-weight: 700; --t-head-track: -.015em;
  --t-top-bg: #0e1729; --t-top-text: #d9e2f1; --t-top-line: #1f2d47;
  --t-hero-bg: linear-gradient(135deg, #13233f, #1b3763); --t-hero-text: #f4f7fc; --t-hero-muted: rgba(244, 247, 252, .76); --t-hero-btn: #4f9cf9; --t-hero-btn-ink: #06121f;
  --t-focus: rgba(79, 156, 249, .28);
}

/* Graphite — σκούρο ανθρακί χωρίς απόχρωση, κεχριμπαρένια έμφαση, σφιχτές γωνίες. Αυστηρό. */
[data-theme="graphite"] {
  --t-bg: #131314; --t-surface: #1c1c1e; --t-soft: #252528; --t-line: #2c2c30; --t-line-strong: #3d3d43;
  --t-text: #e4e4e7; --t-strong: #fafafa; --t-muted: #a0a0a8; --t-faint: #70707a;
  --t-accent: #e8a33d; --t-accent-hover: #f1b65c; --t-accent-ink: #1a1305; --t-accent-soft: rgba(232, 163, 61, .12); --t-accent-text: #f0b358;
  --t-radius: 6px; --t-radius-sm: 5px; --t-shadow: none; --t-shadow-hover: 0 8px 22px rgba(0, 0, 0, .4);
  --t-font: "Segoe UI", system-ui, -apple-system, Roboto, "Helvetica Neue", Arial, sans-serif; --t-head: var(--t-font); --t-head-weight: 700; --t-head-track: -.01em;
  --t-top-bg: #18181a; --t-top-text: #e4e4e7; --t-top-line: #2c2c30;
  --t-hero-bg: #1c1c1e; --t-hero-text: #fafafa; --t-hero-muted: #a0a0a8; --t-hero-btn: #e8a33d; --t-hero-btn-ink: #1a1305;
  --t-focus: rgba(232, 163, 61, .26);
}

/* Χρώματα κατάστασης (εντάξει / προσοχή / λάθος / πληροφορία / ουδέτερο) — ανοιχτά και σκούρα θέματα. */
[data-theme="slate"], [data-theme="ocean"], [data-theme="ivory"] {
  color-scheme: light;
  --t-ok: #16a34a; --t-ok-bg: #e6f6ec; --t-ok-ink: #17663a; --t-ok-line: #bfe6cd;
  --t-warn: #f5a524; --t-warn-bg: #fdf3d6; --t-warn-ink: #7a5200; --t-warn-line: #edd28a; --t-warn-faint: rgba(245, 165, 36, .07);
  --t-err: #dc2626; --t-err-bg: #fdeaea; --t-err-ink: #a32020; --t-err-line: #f1bcbc;
  --t-info-bg: #e9f0fd; --t-info-ink: #1d4690; --t-info-line: #c7d8f7;
  --t-neutral-bg: #eceef2; --t-neutral-ink: #2d3442; --t-media-bg: #eceef2;
  --t-hero-field: #ffffff; --t-hero-field-ink: #18202f; --t-hero-field-line: transparent;
}
[data-theme="midnight"], [data-theme="graphite"] {
  color-scheme: dark;
  --t-ok: #22c55e; --t-ok-bg: rgba(34, 197, 94, .13); --t-ok-ink: #86e3a8; --t-ok-line: rgba(34, 197, 94, .32);
  --t-warn: #f5b544; --t-warn-bg: rgba(245, 181, 68, .14); --t-warn-ink: #f5cd7a; --t-warn-line: rgba(245, 181, 68, .34); --t-warn-faint: rgba(245, 181, 68, .05);
  --t-err: #ef4444; --t-err-bg: rgba(239, 68, 68, .14); --t-err-ink: #f7a6a6; --t-err-line: rgba(239, 68, 68, .36);
  --t-info-bg: rgba(96, 165, 250, .13); --t-info-ink: #a9cdfd; --t-info-line: rgba(96, 165, 250, .32);
  --t-neutral-bg: rgba(148, 163, 184, .16); --t-neutral-ink: #cdd5e0; --t-media-bg: #0a0a0c;
  --t-hero-field: var(--t-bg); --t-hero-field-ink: var(--t-text); --t-hero-field-line: var(--t-line-strong);
}

/* ---------- 2. ΚΟΙΝΑ ---------- */
.nx-themed { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; text-rendering: optimizeLegibility; }
.nx-themed ::selection { background: var(--t-accent); color: var(--t-accent-ink); }
.nx-themed :focus-visible { outline: 2px solid var(--t-accent); outline-offset: 2px; }
.nx-themed h1, .nx-themed h2, .nx-themed h3 { font-family: var(--t-head); font-weight: var(--t-head-weight); letter-spacing: var(--t-head-track); color: var(--t-strong); }

/* ---------- 3. ΑΓΓΕΛΙΕΣ + FREELANCE (το ίδιο UI kit: market.css) ---------- */
.nx-themed.mk {
  --mk-bg: var(--t-bg); --mk-card: var(--t-surface); --mk-line: var(--t-line); --mk-text: var(--t-text); --mk-muted: var(--t-muted);
  --mk-accent: var(--t-accent-text); --mk-accent-2: var(--t-accent-text); --mk-ok: var(--t-ok); --mk-err: var(--t-err); --mk-hl: var(--t-surface);
  --mk-radius: var(--t-radius); --mk-shadow: var(--t-shadow);
  font-family: var(--t-font);
}

/* κεφαλίδα */
.nx-themed .mk-top { background: var(--t-top-bg); border-bottom-color: var(--t-top-line); }
.nx-themed .mk-brand { color: var(--t-top-text); font-family: var(--t-head); font-weight: var(--t-head-weight); letter-spacing: var(--t-head-track); }
.nx-themed .mk-brand i { color: var(--t-accent-text); font-size: 20px; }
.nx-themed .mk-top-links a { color: var(--t-top-text); border-radius: var(--t-radius-sm); transition: background-color .14s; }
.nx-themed .mk-top-links a:hover { background: var(--t-soft); }
.nx-themed .mk-top-links a.mk-btn-new { background: var(--t-accent); color: var(--t-accent-ink) !important; }
.nx-themed .mk-top-links a.mk-btn-new:hover { background: var(--t-accent-hover); filter: none; }
.nx-themed .mk-lang { border-color: var(--t-line-strong); }
.nx-themed .mk-dot { background: var(--t-err); }
.nx-themed .mk-top-search button { background: var(--t-accent); color: var(--t-accent-ink); border-radius: 0 var(--t-radius-sm) var(--t-radius-sm) 0; transition: background-color .14s; }
.nx-themed .mk-top-search button:hover { background: var(--t-accent-hover); }

/* πεδία */
.nx-themed.mk input:not([type=checkbox]):not([type=radio]):not([type=file]), .nx-themed.mk select, .nx-themed.mk textarea {
  border-color: var(--t-line-strong); border-radius: var(--t-radius-sm); background: var(--t-surface); color: var(--t-text); transition: border-color .14s, box-shadow .14s; }
.nx-themed.mk input::placeholder, .nx-themed.mk textarea::placeholder { color: var(--t-faint); }
.nx-themed.mk input:focus, .nx-themed.mk select:focus, .nx-themed.mk textarea:focus { outline: none; border-color: var(--t-accent); box-shadow: 0 0 0 3px var(--t-focus); }
.nx-themed.mk .mk-top-search input:not([type=checkbox]):not([type=radio]):not([type=file]) { background: var(--t-soft); border-color: var(--t-line); border-right: 0; border-radius: var(--t-radius-sm) 0 0 var(--t-radius-sm); }
.nx-themed.mk .mk-top-search input:not([type=checkbox]):not([type=radio]):not([type=file]):focus { background: var(--t-surface); border-color: var(--t-accent); }
.nx-themed.mk input[type=checkbox], .nx-themed.mk input[type=radio] { accent-color: var(--t-accent); }

/* κουμπιά */
.nx-themed .mk-btn { background: var(--t-accent); color: var(--t-accent-ink); border-radius: var(--t-radius-sm); font-weight: 600; transition: background-color .14s, border-color .14s, color .14s; }
.nx-themed .mk-btn:hover { background: var(--t-accent-hover); filter: none; }
.nx-themed .mk-btn.ghost { background: transparent; color: var(--t-text); border: 1px solid var(--t-line-strong); }
.nx-themed .mk-btn.ghost:hover { background: var(--t-soft); }
.nx-themed .mk-btn.danger { background: transparent; color: var(--t-err-ink); border: 1px solid var(--t-err-line); }
.nx-themed .mk-btn.danger:hover { background: var(--t-err-bg); }
.nx-themed .mk-btn.promo { background: var(--t-warn); color: #1a1305; }
.nx-themed .mk-btn.promo:hover { background: var(--t-warn); filter: brightness(1.06); }
.nx-themed .mk-link { color: var(--t-muted); }
.nx-themed .mk-link:hover { color: var(--t-text); }

/* μηνύματα + ετικέτες κατάστασης */
.nx-themed .mk-note { background: var(--t-info-bg); color: var(--t-info-ink); border: 1px solid var(--t-info-line); border-radius: var(--t-radius-sm); font-weight: 500; }
.nx-themed .mk-note.ok { background: var(--t-ok-bg); color: var(--t-ok-ink); border-color: var(--t-ok-line); }
.nx-themed .mk-note.err { background: var(--t-err-bg); color: var(--t-err-ink); border-color: var(--t-err-line); }
.nx-themed .mk-state { padding: 2px 9px; border-radius: 999px; font-weight: 600; background: var(--t-neutral-bg); color: var(--t-neutral-ink); }
.nx-themed .st-active, .nx-themed .pay-completed,
.nx-themed .wk-st-active, .nx-themed .wk-st-completed, .nx-themed .wk-st-prop_accepted, .nx-themed .wk-st-job_open, .nx-themed .wk-st-payout_sent, .nx-themed .wk-st-payout_paid { background: var(--t-ok-bg); color: var(--t-ok-ink); }
.nx-themed .st-pending, .nx-themed .pay-created, .nx-themed .st-top,
.nx-themed .wk-st-awaiting_payment, .nx-themed .wk-st-delivered, .nx-themed .wk-st-prop_pending, .nx-themed .wk-st-job_pending, .nx-themed .wk-st-job_in_progress, .nx-themed .wk-st-payout_pending { background: var(--t-warn-bg); color: var(--t-warn-ink); }
.nx-themed .st-rejected, .nx-themed .st-expired, .nx-themed .pay-failed, .nx-themed .pay-cancelled,
.nx-themed .wk-st-disputed, .nx-themed .wk-st-refunded, .nx-themed .wk-st-cancelled, .nx-themed .wk-st-prop_rejected, .nx-themed .wk-st-job_rejected, .nx-themed .wk-st-job_expired, .nx-themed .wk-st-payout_failed { background: var(--t-err-bg); color: var(--t-err-ink); }
.nx-themed .st-sold { background: var(--t-neutral-bg); color: var(--t-neutral-ink); }

/* αρχική: ζώνη τίτλου, κατηγορίες */
.nx-themed .mk-hero { background: var(--t-hero-bg); color: var(--t-hero-text); border-radius: var(--t-radius); }
.nx-themed .mk-hero h1 { color: inherit; }
.nx-themed .mk-hero p { color: var(--t-hero-muted); opacity: 1; }
.nx-themed.mk .mk-hero-form input:not([type=checkbox]):not([type=radio]):not([type=file]), .nx-themed.mk .mk-hero-form select { height: 46px; background: var(--t-hero-field); color: var(--t-hero-field-ink); border-color: var(--t-hero-field-line); }
.nx-themed .mk-hero-form button { height: 46px; background: var(--t-hero-btn); color: var(--t-hero-btn-ink); border-radius: var(--t-radius-sm); font-weight: 700; transition: filter .14s; }
.nx-themed .mk-hero-form button:hover { filter: brightness(.95); }
.nx-themed .mk-hero .mk-btn { background: var(--t-hero-btn); color: var(--t-hero-btn-ink); }
.nx-themed .mk-hero .mk-btn:hover { background: var(--t-hero-btn); filter: brightness(.95); }
.nx-themed .mk-hero .mk-btn.ghost { background: transparent; }
.nx-themed .mk-hero .mk-btn.ghost:hover { background: rgba(255, 255, 255, .1); filter: none; }
.nx-themed .mk-cat { box-shadow: var(--t-shadow); transition: border-color .14s, box-shadow .14s; }
.nx-themed .mk-cat:hover { transform: none; border-color: var(--t-accent); box-shadow: var(--t-shadow-hover); }
.nx-themed .mk-cat i { color: var(--t-accent-text); }
.nx-themed .mk-cat span { color: var(--t-strong); font-weight: 600; }
.nx-themed .mk-block h2 .fa-star { color: var(--t-warn); }
.nx-themed .mk-block-head a:hover, .nx-themed .mk-seller a:hover { text-decoration: underline; }

/* κάρτες αγγελιών */
.nx-themed .mk-card { transition: border-color .14s, box-shadow .14s; }
.nx-themed .mk-card:hover { border-color: var(--t-line-strong); box-shadow: var(--t-shadow-hover); }
.nx-themed .mk-card.is-hl { border: 1px solid var(--t-warn-line); box-shadow: inset 0 3px 0 var(--t-warn), var(--t-shadow); }
.nx-themed .mk-card-img { background: var(--t-soft); }
.nx-themed .mk-card-title { color: var(--t-strong); font-weight: 600; }
.nx-themed .mk-card-price, .nx-themed .mk-item-price, .nx-themed .wk-budget, .nx-themed .wk-prop-price b { color: var(--t-strong); }
.nx-themed .mk-card-price { font-weight: 700; }
.nx-themed .mk-item-price { font-weight: 800; letter-spacing: -.01em; }
.nx-themed .mk-badge { background: var(--t-warn); color: #1a1305; border-radius: var(--t-radius-sm); font-weight: 700; }
.nx-themed .mk-badge.sold { background: rgba(17, 20, 28, .86); color: #ffffff; }
.nx-themed .mk-fav { background: var(--t-surface); color: var(--t-faint); box-shadow: 0 1px 4px rgba(0, 0, 0, .2); transition: color .14s; }
.nx-themed .mk-fav:hover { color: #e11d48; }
.nx-themed .mk-fav.on { color: #e11d48; }
.nx-themed .mk-fav.big { background: transparent; color: var(--t-text); border-color: var(--t-line-strong); border-radius: var(--t-radius-sm); box-shadow: none; }

/* αποτελέσματα, σελίδα αγγελίας */
.nx-themed .mk-pager a, .nx-themed .mk-pager span { border-radius: var(--t-radius-sm); transition: border-color .14s; }
.nx-themed .mk-pager a:hover { border-color: var(--t-accent); }
.nx-themed .mk-pager .on { background: var(--t-accent); color: var(--t-accent-ink); border-color: var(--t-accent); }
.nx-themed .mk-gallery-main { background: var(--t-media-bg); }
.nx-themed .mk-thumbs button { border-radius: var(--t-radius-sm); }
.nx-themed .mk-thumbs button.on { border-color: var(--t-accent); }
.nx-themed .mk-attrs div, .nx-themed .wk-facts div { background: var(--t-soft); border-radius: var(--t-radius-sm); }
.nx-themed .mk-attrs dd { color: var(--t-strong); }

/* ο λογαριασμός μου */
.nx-themed .mk-tabs a { border-radius: var(--t-radius-sm); background: transparent; color: var(--t-muted); transition: background-color .14s, color .14s; }
.nx-themed .mk-tabs a:hover { background: var(--t-soft); color: var(--t-text); }
.nx-themed .mk-tabs a.on { background: var(--t-accent-soft); color: var(--t-accent-text); border-color: transparent; }
.nx-themed .mk-row.is-hl { border: 1px solid var(--t-warn-line); box-shadow: inset 3px 0 0 var(--t-warn); }
.nx-themed .mk-table th { color: var(--t-muted); font-size: 12px; font-weight: 600; text-transform: uppercase; letter-spacing: .04em; background: var(--t-soft); }
.nx-themed .mk-convs li.on a { background: var(--t-soft); }
.nx-themed .mk-convs li.unread b { color: var(--t-accent-text); }
.nx-themed .mk-bubble { background: var(--t-soft); }
.nx-themed .mk-bubble.me { background: var(--t-accent); color: var(--t-accent-ink); }
.nx-themed .mk-bubble.me a { color: inherit; }
.nx-themed .mk-package { border-width: 1px; border-radius: var(--t-radius); box-shadow: var(--t-shadow); }
.nx-themed .mk-package.k-top { border-color: var(--t-warn); }
.nx-themed .mk-package-ico { color: var(--t-accent-text); }
.nx-themed .mk-package-price { color: var(--t-strong); }

/* Freelance */
.nx-themed.wk .mk-brand i { color: var(--t-accent-text); }
.nx-themed .wk-hero { background: var(--t-hero-bg); }
.nx-themed .wk-how li { background: rgba(255, 255, 255, .1); border-radius: var(--t-radius-sm); }
.nx-themed .wk-job { transition: border-color .14s, box-shadow .14s; }
.nx-themed .wk-job:hover { border-color: var(--t-line-strong); box-shadow: var(--t-shadow-hover); }
.nx-themed .wk-job-title { color: var(--t-strong); font-weight: 700; }
.nx-themed .wk-skills span { background: var(--t-soft); border-color: transparent; color: var(--t-text); font-weight: 500; }
.nx-themed .wk-steps li.done span { background: var(--t-ok); color: #ffffff; }
.nx-themed .wk-steps li.now { border-color: var(--t-accent); }
.nx-themed .wk-steps li.now span { background: var(--t-accent); color: var(--t-accent-ink); }
.nx-themed .wk-stars, .nx-themed .wk-rate label { color: var(--t-line-strong); }
.nx-themed .wk-stars .on, .nx-themed .wk-rate input:checked ~ label, .nx-themed .wk-rate label:hover, .nx-themed .wk-rate label:hover ~ label { color: var(--t-warn); }

/* Shop (γύρος 105) — <body class="mk sh">: το κατάστημα στήνεται στο ίδιο kit· εδώ μόνο ό,τι έχει δικό του (shop.css) */
.nx-themed.sh .mk-btn-new .mk-dot { background: var(--t-accent-ink); color: var(--t-accent); }
.nx-themed .sh-badge-sale { background: var(--t-err); color: #ffffff; }
.nx-themed .sh-stars { color: var(--t-line-strong); }
.nx-themed .sh-stars .on { color: var(--t-warn); }
.nx-themed .sh-stock.is-in { color: var(--t-ok-ink); }
.nx-themed .sh-stock.is-low { color: var(--t-warn-ink); }
.nx-themed .sh-stock.is-out { color: var(--t-err-ink); }
.nx-themed .sh-gallery-main { background: var(--t-surface); border-color: var(--t-line); }
.nx-themed .sh-option { border-color: var(--t-line-strong); border-radius: var(--t-radius-sm); transition: border-color .14s, box-shadow .14s; }
.nx-themed .sh-option:has(input:checked) { border-color: var(--t-accent); box-shadow: 0 0 0 1px var(--t-accent) inset; }
.nx-themed .sh-pay-box { border-color: var(--t-accent); }
.nx-themed .sh-order-row { box-shadow: var(--t-shadow); }
.nx-themed .sh-totals .is-total { color: var(--t-strong); }
.nx-themed .sh-login-hint a, .nx-themed .sh-accept a, .nx-themed .sh-order-row a { color: var(--t-accent-text); }
.nx-themed .sh-os-processing, .nx-themed .sh-os-shipped, .nx-themed .sh-ps-unpaid, .nx-themed .sh-rs-pending { background: var(--t-warn-bg); color: var(--t-warn-ink); }
.nx-themed .sh-os-completed, .nx-themed .sh-ps-paid { background: var(--t-ok-bg); color: var(--t-ok-ink); }
.nx-themed .sh-os-pending { background: var(--t-info-bg); color: var(--t-info-ink); }
.nx-themed .sh-os-cancelled, .nx-themed .sh-os-refunded, .nx-themed .sh-ps-refunded, .nx-themed .sh-rs-rejected { background: var(--t-err-bg); color: var(--t-err-ink); }

/* ---------- 4. FORUM ---------- */
.nx-themed.fr {
  --fr-bg: var(--t-bg); --fr-surface: var(--t-surface); --fr-soft: var(--t-soft); --fr-line: var(--t-line); --fr-line-2: var(--t-line-strong);
  --fr-text: var(--t-text); --fr-strong: var(--t-strong); --fr-muted: var(--t-muted); --fr-faint: var(--t-faint); --fr-link: var(--t-accent-text); --fr-top-link: var(--t-top-text);
  --fr-accent: var(--t-accent); --fr-btn-bg: var(--t-accent); --fr-btn-ink: var(--t-accent-ink); --fr-on-accent: var(--t-accent-ink);
  --fr-danger: var(--t-err); --fr-danger-hover: var(--t-err-ink);
  --fr-ok-bg: var(--t-ok-bg); --fr-ok-line: var(--t-ok-line); --fr-err-bg: var(--t-err-bg); --fr-err-line: var(--t-err-line);
  --fr-pin: var(--t-warn-ink); --fr-pin-bg: var(--t-warn-faint); --fr-pin-badge: var(--t-warn-bg); --fr-pin-line: var(--t-warn-line);
  --fr-lock-bg: var(--t-neutral-bg); --fr-lock-ink: var(--t-neutral-ink);
  --fr-radius: var(--t-radius); --fr-radius-sm: var(--t-radius-sm); --fr-shadow: var(--t-shadow); --fr-font: var(--t-font);
}
.nx-themed .fr-top { background: var(--t-top-bg); border-bottom-color: var(--t-top-line); }
.nx-themed .fr-brand { font-family: var(--t-head); font-weight: var(--t-head-weight); letter-spacing: var(--t-head-track); }
/* Το λογότυπο είναι σχεδιασμένο για σκούρο φόντο (λευκά γράμματα): στα ανοιχτά θέματα στη θέση του μπαίνει το εικονίδιο του Forum, όπως σε Αγγελίες / Freelance. */
[data-theme="slate"] .fr-brand img, [data-theme="ocean"] .fr-brand img, [data-theme="ivory"] .fr-brand img { display: none; }
[data-theme="slate"] .fr-brand::before, [data-theme="ocean"] .fr-brand::before, [data-theme="ivory"] .fr-brand::before {
  content: "\e537"; font-family: "Font Awesome 6 Free"; font-weight: 900; font-size: 20px; color: var(--t-accent-text); letter-spacing: 0; }
.nx-themed .fr-top-links a { padding: 6px 8px; border-radius: var(--t-radius-sm); transition: background-color .14s; }
.nx-themed .fr-top-links a:hover { background: var(--t-soft); text-decoration: none; }
.nx-themed .fr-crumbs a { color: var(--t-muted); }
.nx-themed .fr-crumbs a:hover { color: var(--t-accent-text); text-decoration: none; }
.nx-themed .fr-btn { font-weight: 600; transition: background-color .14s, border-color .14s; }
.nx-themed .fr-btn:hover { background: var(--t-accent-hover); }
.nx-themed .fr-btn.ghost:hover { background: var(--t-soft); }
.nx-themed .fr-btn.danger { background: transparent; border-color: var(--t-err-line); color: var(--t-err-ink) !important; }
.nx-themed .fr-btn.danger:hover { background: var(--t-err-bg); }
.nx-themed .fr-note.ok { color: var(--t-ok-ink); }
.nx-themed .fr-note.err { color: var(--t-err-ink); }
.nx-themed .fr-row { transition: background-color .14s; }
.nx-themed .fr-row:hover { background: var(--t-soft); }
.nx-themed .fr-row.is-pinned:hover { background: var(--t-warn-faint); }
.nx-themed .fr-ico { display: grid; place-items: center; width: 36px; height: 36px; border-radius: var(--t-radius-sm); background: var(--t-accent-soft); color: var(--t-accent-text); font-size: 16px; }
.nx-themed .fr-name { font-weight: 600; }
.nx-themed a.fr-name:hover { color: var(--t-accent-text) !important; text-decoration: none; }
.nx-themed .fr-stats b { color: var(--t-strong); }
.nx-themed .fr-pager a, .nx-themed .fr-pager span { border-radius: var(--t-radius-sm); border-color: var(--t-line); background: var(--t-surface); }
.nx-themed .fr-pager a:hover { border-color: var(--t-accent); text-decoration: none; }
.nx-themed .fr-pager .on { background: var(--t-accent); border-color: var(--t-accent); }
.nx-themed .fr-move select, .nx-themed .fr-form select, .nx-themed .fr-form input, .nx-themed .fr-form textarea { background: var(--t-surface); transition: border-color .14s, box-shadow .14s; }
.nx-themed .fr-move select:focus, .nx-themed .fr-form select:focus, .nx-themed .fr-form input:focus, .nx-themed .fr-form textarea:focus { outline: none; border-color: var(--t-accent); box-shadow: 0 0 0 3px var(--t-focus); }
.nx-themed .fr-author img { box-shadow: 0 0 0 1px var(--t-line); }
.nx-themed .fr-author b { color: var(--t-strong); }
.nx-themed .fr-text a { text-decoration: underline; text-underline-offset: 2px; }
.nx-themed .fr-link:hover { color: var(--t-text) !important; }
.nx-themed .fr-404 i { color: var(--t-accent-text); }
@media (max-width: 760px) {
  .nx-themed .fr-ico { width: 30px; height: 30px; font-size: 14px; }
  .nx-themed .fr-stats br { display: inline; }   /* «3 θέματα / 9 μηνύματα» σε δύο γραμμές — όχι κολλημένα */
  .nx-themed .fr-top-links a { padding: 6px; }
}

/* ---------- 5. ΜΙΚΡΕΣ ΠΙΝΕΛΙΕΣ ΑΝΑ ΘΕΜΑ ---------- */
/* Ivory: τίτλοι λίγο μεγαλύτεροι (η serif «γράφει» μικρότερη), γραμμή κάτω από τους τίτλους ενοτήτων. */
[data-theme="ivory"] .mk-brand, [data-theme="ivory"] .fr-brand { font-size: 20px; }
[data-theme="ivory"] .mk-block h2, [data-theme="ivory"] .mk-box h2 { padding-bottom: 8px; border-bottom: 1px solid var(--t-line); }
[data-theme="ivory"] .mk-block-head { border-bottom: 1px solid var(--t-line); margin-bottom: 12px; }
[data-theme="ivory"] .mk-block-head h2 { border-bottom: 0; padding-bottom: 8px; margin-bottom: 0; }
[data-theme="ivory"] .mk-state, [data-theme="ivory"] .fr-badge { border-radius: 3px; }
/* Graphite: η ζώνη τίτλου είναι επίπεδη κάρτα με μια γραμμή έμφασης αριστερά. */
[data-theme="graphite"] .mk-hero { border: 1px solid var(--t-line); box-shadow: inset 4px 0 0 var(--t-accent); }
[data-theme="graphite"] .wk-how li { background: var(--t-soft); }
[data-theme="graphite"] .mk-hero .mk-btn.ghost:hover { background: var(--t-soft); }
/* Midnight: λεπτή φωτεινή γραμμή στο πάνω μέρος κάθε κάρτας (βάθος χωρίς εφέ). */
[data-theme="midnight"] .mk-box, [data-theme="midnight"] .mk-card, [data-theme="midnight"] .wk-job, [data-theme="midnight"] .fr-list, [data-theme="midnight"] .fr-post, [data-theme="midnight"] .fr-card { box-shadow: inset 0 1px 0 rgba(255, 255, 255, .04), var(--t-shadow); }
/* Ocean: η κεφαλίδα «αιωρείται» ελαφρά πάνω από τη σελίδα. */
[data-theme="ocean"] .mk-top, [data-theme="ocean"] .fr-top { box-shadow: 0 1px 12px rgba(20, 51, 73, .06); }

@media (prefers-reduced-motion: reduce) {
  .nx-themed *, .nx-themed *::before, .nx-themed *::after { transition: none !important; }
}
