/* Προσαρμογές Tabler στα χρώματα και τη γραμματοσειρά του NeedWork */
:root, [data-bs-theme=light] {
  --tblr-primary: #1748a0; --tblr-primary-rgb: 23, 72, 160; --tblr-primary-text: #123c87;
  --tblr-font-sans-serif: 'Noto Sans', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --tblr-body-bg: #f6f8fc; --tblr-border-radius: 10px;
}
.btn-primary { --tblr-btn-bg: #1748a0; --tblr-btn-border-color: #1748a0; --tblr-btn-hover-bg: #123c87; --tblr-btn-hover-border-color: #123c87; }
.icon { width: 1.25em; height: 1.25em; vertical-align: -.2em; }
.avatar .icon { width: 1.4em; height: 1.4em; }
.nw-navbar { background: #0b2a5b !important; }
.nw-brand { color: #fff !important; font-weight: 700; font-size: 1.25rem; margin-inline-end: 1.5rem; }
.nw-brand b { color: #9cc0ff; } .nw-brand small { font-size: .75rem; font-weight: 400; color: #b9c9e6; margin-inline-start: .5rem; }
.nw-word::after, .nw-logo::after { content: ''; display: inline-block; width: .3em; height: .3em; border-radius: 50%; background: #f2a516; margin-inline-start: .08em; }
.nw-nav .nav-link { color: #dfe8f8 !important; padding: .5rem .75rem; border-radius: 8px; }
.nw-nav .nav-item.active .nav-link, .nw-nav .nav-link:hover { background: rgba(255,255,255,.1); color: #fff !important; }
.nw-logo { font-size: 2rem; font-weight: 700; color: #0b2a5b; } .nw-logo b { color: #1748a0; }
.nw-login { background: linear-gradient(180deg, #eef3fb, #f6f8fc); }
.nw-stat-active { box-shadow: 0 0 0 2px var(--tblr-primary) !important; }
.card-link:hover { text-decoration: none; }
.nw-table td { vertical-align: middle; }
.nw-photo { width: 96px; height: 96px; object-fit: cover; border-radius: 10px; border: 1px solid var(--tblr-border-color); }
.pre { white-space: pre-wrap; overflow-wrap: anywhere; }
.cats input[name^=label_], .cats input[name^=new_label_] { min-width: 130px; }
.cats .num { width: 70px; }
.datagrid { --tblr-datagrid-padding: 1.25rem; grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr)); }
@media (max-width: 767px) { .nw-brand small { display: none; } .nw-nav .nav-link-title { font-size: .85rem; } .page-header { margin-top: .5rem; } }

/* ---------- Ημερολόγιο ---------- */
.nw-cal { table-layout: fixed; }
.nw-cal th { text-align: center; font-size: .8rem; color: var(--tblr-secondary); }
.nw-cal td { height: 96px; vertical-align: top; padding: .3rem; }
.nw-cal td.nw-cal-empty { background: var(--tblr-bg-surface-secondary, #f6f8fc); }
.nw-cal td.nw-today { background: #eef3fb; box-shadow: inset 0 0 0 2px #1748a0; }
.nw-cal-day { display: inline-block; font-weight: 600; color: inherit; text-decoration: none; padding: 0 .3rem; border-radius: 6px; }
.nw-cal-day:hover { background: #dbe6f7; }
.nw-cal-ev { font-size: .72rem; line-height: 1.25; border-radius: 4px; padding: 1px 4px; margin-top: 2px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.nw-done { opacity: .55; text-decoration: line-through; }
@media (max-width: 767px) { .nw-cal td { height: 64px; } .nw-cal-ev { font-size: .62rem; } }
/* Φάκελοι πελατών (μετανάστευση) */
.nw-imm-clients{max-height:calc(100vh - 260px);overflow:auto}
@media (max-width:991px){.nw-imm-clients{max-height:260px}}
.nw-chip .form-selectgroup-label{padding:.2rem .6rem;font-size:.8rem}
.nw-docexp{display:inline-flex;align-items:center;gap:.4rem;margin-top:.35rem;font-size:.85rem}
.nw-na{opacity:.6}
.nw-renew{border-left:4px solid var(--tblr-orange)}
.nw-renew.nw-late{border-left-color:var(--tblr-red)}
.nw-imm-tabs{flex-wrap:wrap;border-bottom:0}
.nw-imm-tabs .nav-link{background:transparent}
.nw-imm-folder{border-top-left-radius:0}
.nw-imm-log{max-height:340px;overflow:auto}
.nw-cal-imm{display:block;text-decoration:none;color:inherit}
.nw-toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);z-index:2000;background:#1d273b;color:#fff;padding:.6rem 1rem;border-radius:8px;box-shadow:0 6px 24px rgba(0,0,0,.25);max-width:calc(100vw - 32px)}
.nw-toast-err{background:#b42318}
#v-dash.active{background:var(--tblr-primary);color:#fff}
