/* ============================================================================
   Nawigator Dotacji — JEDEN język wizualny całego serwisu (app.css)
   Nowy redesign (2026-06): navy + niebieski + limonka, Archivo/Public Sans.
   Spójny ze stroną główną i Pulpitem. Ładowany w <head> każdej strony.
   Klasy: .nd-* (nawigacja/przyciski/karty/plakietki/pola/tabele) — używaj ich
   zamiast lokalnych, żeby cały serwis wyglądał jak jeden produkt.
   ========================================================================== */
:root{
  --navy:#0C1A2E; --navy-2:#0A1626; --ink:#0F1B2D; --muted:#5B6776; --faint:#6D737D;
  --bg:#F4F6F9; --card:#fff; --border:#E4E8EE; --border-2:#EEF1F5; --surface-2:#F9FAFC;
  --blue:#2563EB; --blue-d:#1D4FD7; --blue-soft:#EAF1FE;
  --green:#2E7D32; --green-bg:#E7F4E6; --lime:#4E9A2F;
  --amber:#B9770E; --amber-bg:#FBF1DF; --red:#D03A3A; --red-bg:#FDECEC;
  --violet:#6D28A3; --violet-bg:#F0EAF8;
  --gray-bg:#EEF1F5;
  --fd:"Archivo",system-ui,-apple-system,Segoe UI,sans-serif;
  --fb:"Public Sans",system-ui,-apple-system,Segoe UI,sans-serif;
  --fm:"IBM Plex Mono",ui-monospace,monospace;
  --r-sm:8px; --r-md:11px; --r-lg:16px; --r-pill:999px;
  --sh-1:0 1px 3px rgba(12,26,46,.06); --sh-2:0 10px 26px rgba(12,26,46,.10); --sh-3:0 18px 44px rgba(7,18,33,.18);
  --maxw:1080px; --touch:44px;
}
.nd, body.nd{background:var(--bg);color:var(--ink);font:400 16px/1.6 var(--fb);-webkit-font-smoothing:antialiased}
.nd h1,.nd h2,.nd h3,.nd h4{font-family:var(--fd);margin:0;color:var(--ink);letter-spacing:-.01em}
.nd a{color:var(--blue);text-decoration:none}
.nd .mono{font-family:var(--fm);font-variant-numeric:tabular-nums}
.nd-wrap{max-width:var(--maxw);margin:0 auto;padding:0 22px}

/* ── Nagłówek / nawigacja ── */
.nd-nav{position:sticky;top:0;z-index:40;background:rgba(244,246,249,.88);backdrop-filter:blur(10px);border-bottom:1px solid var(--border-2)}
.nd-navrow{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 22px;max-width:var(--maxw);margin:0 auto}
.nd-logo{font-family:var(--fd);font-weight:800;font-size:19px;color:var(--ink);letter-spacing:.1px}
.nd-logo span{color:var(--blue)}
.nd-links{display:flex;align-items:center;gap:4px;flex-wrap:wrap}
.nd-links a{color:var(--muted);font-weight:600;font-size:14px;padding:8px 11px;border-radius:8px}
.nd-links a:hover{background:var(--gray-bg);color:var(--ink)}
.nd-links a.on{color:var(--ink);background:var(--gray-bg)}
.nd-links a.acct{color:var(--ink);border:1px solid var(--border)}

/* ── Przyciski ── */
.nd-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:0 20px;
  border-radius:var(--r-md);font:700 15px var(--fb);cursor:pointer;border:1px solid transparent;text-decoration:none;transition:background .15s,border-color .15s}
.nd-btn-pri{background:var(--blue);color:#fff;box-shadow:0 6px 18px rgba(37,99,235,.26)}
.nd-btn-pri:hover{background:var(--blue-d)}
.nd-btn-navy{background:var(--navy);color:#fff} .nd-btn-navy:hover{background:var(--ink)}
.nd-btn-gho{background:#fff;color:var(--ink);border-color:var(--border)} .nd-btn-gho:hover{border-color:var(--faint)}
.nd-btn-sm{min-height:38px;padding:0 14px;font-size:13.5px}

/* ── Karty / powierzchnie ── */
.nd-card{background:var(--card);border:1px solid var(--border);border-radius:var(--r-lg);padding:22px;box-shadow:var(--sh-1)}
.nd-hero h1{font-family:var(--fd);font-weight:800;font-size:42px;line-height:1.1;letter-spacing:-.015em}
.nd-eyebrow{display:inline-flex;align-items:center;gap:8px;font:700 12.5px var(--fb);letter-spacing:.06em;text-transform:uppercase;
  color:var(--blue);background:var(--blue-soft);border:1px solid #D5E3FB;padding:6px 12px;border-radius:var(--r-pill)}

/* ── Plakietki / pigułki ── */
.nd-badge{display:inline-flex;align-items:center;font:600 12px var(--fb);padding:3px 10px;border-radius:var(--r-pill);white-space:nowrap}
.nd-badge.open,.nd-badge.ok{background:var(--green-bg);color:var(--green)}
.nd-badge.soon,.nd-badge.warn{background:var(--amber-bg);color:var(--amber)}
.nd-badge.future{background:var(--violet-bg);color:var(--violet)}
.nd-badge.closed,.nd-badge.gray{background:var(--gray-bg);color:var(--faint)}
.nd-badge.info{background:var(--blue-soft);color:var(--blue-d)}

/* ── Pola formularza ── */
.nd-field{width:100%;min-height:46px;padding:11px 13px;border:1px solid var(--border);border-radius:var(--r-md);font:inherit;background:#fff;color:var(--ink)}
.nd-field:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px rgba(37,99,235,.18)}
.nd-label{display:block;font-weight:600;color:var(--ink);margin:0 0 6px;font-size:14px}

/* ── Tabele ── */
.nd-tbl{width:100%;border-collapse:collapse;background:var(--card)}
.nd-tbl th{font:600 11px var(--fb);letter-spacing:.06em;text-transform:uppercase;color:var(--faint);text-align:left;padding:13px 16px;border-bottom:1px solid var(--border)}
.nd-tbl td{padding:13px 16px;border-bottom:1px solid var(--border-2);font-size:14px;vertical-align:middle}
.nd-tbl tr:last-child td{border-bottom:none}

/* ── Stopka ── */
.nd-footer{border-top:1px solid var(--border);background:var(--card);margin-top:34px}
.nd-footer .nd-wrap{padding:24px 22px;color:var(--faint);font-size:14px;display:flex;flex-wrap:wrap;gap:8px 18px;align-items:center}
.nd-footer a{color:var(--muted);font-weight:600}

/* ── Pomocnicze ── */
.nd-muted{color:var(--muted)} .nd-faint{color:var(--faint)}
.nd-spin{display:inline-block;width:16px;height:16px;border:2px solid var(--border);border-top-color:var(--blue);border-radius:50%;animation:nd-s .8s linear infinite;vertical-align:-3px}
@keyframes nd-s{to{transform:rotate(360deg)}}

@media(max-width:560px){ .nd-links a:not(.acct){display:none} .nd-hero h1{font-size:29px} }

/* === vitals === (Core Web Vitals — nowe reguły tu, bez modyfikowania istniejących) */
