/**
 * Zamienniki i odpłatność — pełna wyszukiwarka (F7). Port 1:1 ze standalone skilla
 * lek-refundowane. Kolory/typografia VERBATIM ze skilla (petrol #0f4c54, plakietki
 * 65+ #2b86c5 / 18 #d83f9a / ciąża #7b54c4 — jawne odstępstwo od tokenów marki).
 *
 * ⚠ WSZYSTKIE klasy/ID = dedykowane `zmn-*` (decyzja usera 17.07.2026 — 100% izolacja,
 * zero współdzielonych nazw z motywem; wcześniej generyczne `.main`/`.row` motywu
 * wstrzykiwały padding-bottom:96px → rozdęte wiersze). Zmienne + font na wrapperze
 * `.zmn-full`, reszta to samodzielne unikalne klasy. Reset `body{}`/`*{}` ze standalone
 * świadomie pominięty (fałszowałby layout motywu).
 */

.zmn-full {
	--zmn-teal:#0f4c54; --zmn-teal2:#0b6b6b; --zmn-ink:#1c2b33; --zmn-muted:#6b7a83;
	--zmn-line:#e6e9ee; --zmn-bg:#f4f6f8; --zmn-card:#fff; --zmn-green:#1f8a4c; --zmn-greenbg:#e7f4ec;
	--zmn-bluebg:#e8eef5; --zmn-blue:#2b5c93; --zmn-orange:#c5631a; --zmn-orangebg:#fbeadd;
	color:var(--zmn-ink); line-height:1.45;
	font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}
.zmn-full *, .zmn-full *::before, .zmn-full *::after { box-sizing:border-box; }

.zmn-wrap { max-width:920px; margin:0 auto; padding:8px 0 40px; }
.zmn-h1 { font-size:30px; margin:0 0 8px; color:var(--zmn-teal); letter-spacing:-.3px; line-height:1.2; }
.zmn-lead { color:#33454e; font-size:16px; max-width:640px; margin:0; }
.zmn-lead em { font-style:italic; }
.zmn-src { display:flex; gap:8px; align-items:center; color:var(--zmn-muted); font-size:13px; margin:14px 0 22px; }
.zmn-panel { background:#fbfcfd; border:1px solid var(--zmn-line); border-radius:18px; padding:22px; }
.zmn-fld { display:block; font-weight:600; font-size:14px; margin-bottom:8px; color:var(--zmn-ink); }
.zmn-searchbox { position:relative; }
.zmn-searchbox > svg { position:absolute; left:16px; top:50%; transform:translateY(-50%); opacity:.5; }
.zmn-q { width:100%; padding:16px 16px 16px 46px; font-size:17px; border:1px solid #d7dde3; border-radius:12px;
	background:#fff; outline:none; color:var(--zmn-ink); font-family:inherit; margin:0; }
.zmn-q:focus { border-color:var(--zmn-teal2); box-shadow:0 0 0 3px rgba(15,76,84,.12); }
.zmn-filters { display:flex; gap:8px; flex-wrap:wrap; margin:14px 0 4px; }
.zmn-filters button { border:1px solid #d7dde3; background:#fff; color:#3a4a53; border-radius:999px;
	padding:6px 14px; font-size:13px; cursor:pointer; font-family:inherit; margin:0; }
.zmn-filters button.on { background:var(--zmn-teal); border-color:var(--zmn-teal); color:#fff; }
.zmn-status { color:var(--zmn-muted); font-size:13px; margin:18px 2px 6px; }
.zmn-ghead { background:linear-gradient(135deg,var(--zmn-teal),var(--zmn-teal2)); color:#fff; border-radius:16px;
	padding:18px 22px; margin:18px 0 0; position:relative; overflow:hidden; }
.zmn-ov { font-size:11px; letter-spacing:2px; text-transform:uppercase; opacity:.8; }
.zmn-gh2 { margin:4px 0 2px; font-size:22px; letter-spacing:-.2px; color:#fff; line-height:1.25; }
.zmn-gsub { opacity:.85; font-size:13px; }
.zmn-rx { position:absolute; top:16px; right:18px; background:rgba(255,255,255,.16);
	padding:4px 12px; border-radius:8px; font-size:13px; letter-spacing:1px; }
.zmn-members { border:1px solid var(--zmn-line); border-top:none; border-radius:0 0 16px 16px;
	background:var(--zmn-card); padding:8px; margin:0 0 10px; }
.zmn-row { display:flex; align-items:center; gap:14px; padding:14px 14px; border-radius:12px; margin:0; }
.zmn-row + .zmn-row { border-top:1px solid var(--zmn-line); }
.zmn-main { flex:1; min-width:0; padding:0; margin:0; }
.zmn-nm { font-size:17px; font-weight:700; }
.zmn-tag { display:inline-block; font-size:10px; font-weight:700; letter-spacing:.5px; border-radius:6px;
	padding:2px 7px; margin-left:8px; vertical-align:middle; }
.zmn-cheap { background:var(--zmn-greenbg); color:var(--zmn-green); }
.zmn-part { background:#eef1f4; color:#5a6b74; }
.zmn-det { color:var(--zmn-muted); font-size:13.5px; margin-top:3px; }
.zmn-right { display:flex; align-items:center; gap:14px; flex:none; }
.zmn-odpl { font-size:13px; font-weight:700; border-radius:10px; padding:6px 10px; }
.zmn-o-b { background:var(--zmn-greenbg); color:var(--zmn-green); }
.zmn-o-r { background:var(--zmn-bluebg); color:var(--zmn-blue); }
.zmn-o-p { background:var(--zmn-bluebg); color:var(--zmn-blue); }
.zmn-o-f { background:var(--zmn-orangebg); color:var(--zmn-orange); }
.zmn-pay { text-align:right; min-width:120px; }
.zmn-v { font-size:21px; font-weight:800; }
.zmn-l { font-size:10px; letter-spacing:1px; color:var(--zmn-muted); text-transform:uppercase; }
.zmn-empty { color:var(--zmn-muted); padding:30px 6px; text-align:center; }
.zmn-clickable { cursor:pointer; }
.zmn-clickable:hover { background:#f7fafa; }
.zmn-open { background:#f2f7f8; }
.zmn-chev { color:var(--zmn-muted); font-size:13px; margin-left:2px; display:inline-block; transition:transform .15s; }
.zmn-open .zmn-chev { transform:rotate(180deg); }
.zmn-detail { border:1px solid var(--zmn-line); border-top:none; background:#fbfcfd; border-radius:0 0 10px 10px;
	margin:-2px 8px 8px; padding:14px 16px; }
.zmn-dgrid { display:grid; grid-template-columns:1fr 1fr; gap:4px 26px; margin-bottom:8px; }
.zmn-drow { display:flex; justify-content:space-between; gap:12px; border-bottom:1px dotted #e3e7ec; padding:5px 0; font-size:13.5px; }
.zmn-drow span { color:var(--zmn-muted); }
.zmn-drow b { text-align:right; }
.zmn-dblock { margin-top:10px; }
.zmn-blab { font-size:11px; letter-spacing:.4px; text-transform:uppercase; color:var(--zmn-muted); margin-bottom:3px; }
.zmn-btext { font-size:13.5px; background:#eef6ee; border-radius:8px; padding:9px 11px; white-space:pre-wrap; }
.zmn-btext.zmn-todo { background:var(--zmn-orangebg); color:var(--zmn-orange); font-style:italic; }
.zmn-uprow { display:flex; align-items:center; gap:10px; padding:4px 0; font-size:13.5px; }
.zmn-ubadge { font-size:11px; font-weight:700; border-radius:999px; padding:2px 10px; white-space:nowrap; min-width:74px; text-align:center; }
.zmn-yes { background:var(--zmn-greenbg); color:var(--zmn-green); }
.zmn-no { background:#eef1f4; color:#9aa6ae; }
.zmn-ubadges { display:flex; gap:6px; align-items:center; flex:none; }
.zmn-mini { font-size:11px; font-weight:800; border-radius:8px; padding:3px 8px; color:#fff; letter-spacing:.3px; white-space:nowrap; }
.zmn-b65 { background:#2b86c5; }
.zmn-d18 { background:#d83f9a; }
.zmn-cia { background:#7b54c4; }
@media (max-width:560px) { .zmn-dgrid { grid-template-columns:1fr; } }
.zmn-note { display:flex; gap:10px; background:#fbfcfd; border:1px solid var(--zmn-line); border-radius:14px;
	padding:14px 16px; color:#46555d; font-size:13px; margin-top:22px; }
.zmn-legend { margin-top:30px; }
.zmn-lh3 { font-size:18px; margin:0 0 10px; color:var(--zmn-ink); }
.zmn-lg { width:100%; border-collapse:collapse; font-size:13.5px; }
.zmn-lg th, .zmn-lg td { text-align:left; padding:9px 10px; border-bottom:1px solid var(--zmn-line); vertical-align:top; }
.zmn-lg th { color:var(--zmn-muted); font-weight:600; font-size:11px; letter-spacing:.5px; text-transform:uppercase; }
.zmn-sym { font-weight:800; color:var(--zmn-teal2); }
.zmn-warn { display:flex; gap:10px; background:var(--zmn-orangebg); border:1px solid #f1d6c2; border-radius:14px;
	padding:14px 16px; color:#7a4318; font-size:13.5px; margin-top:14px; }

/* Loader — podczas pobierania refundacja.json (~1 MB) input zablokowany + spinner. */
.zmn-searchbox .zmn-spin { position:absolute; right:16px; top:50%; margin-top:-8px; width:16px; height:16px;
	border:2px solid #d7dde3; border-top-color:var(--zmn-teal); border-radius:50%; display:none; animation:zmn-spin .7s linear infinite; }
.zmn-panel.zmn-loading .zmn-searchbox .zmn-spin { display:block; }
.zmn-panel.zmn-loading .zmn-q { color:var(--zmn-muted); cursor:progress; }
@keyframes zmn-spin { to { transform:rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .zmn-searchbox .zmn-spin { animation:none; } }
