:root{
  /* ---- rdzeń UI ---- */
  --shell:#142E34;          /* tło całej ramki */
  --card:#163942;           /* karty, tabela, filtry */
  --line:#2A4950;           /* obramowania/liniowanie */

  /* akcenty wspólne */
  --chip:#1F3E45;           /* chipy/filtry */
  --chip-on:#2D7987;        /* akcent: przyciski, highlight, suwaki */

  /* scrollbary */
  --scroll:#2A4950;
  --scroll-thumb:#2D7987;

  /* ---- przyciski ---- */
  --btn-bg:#2D7987;
  --btn-fg:#ffffff;
  --btn-border:var(--line);

  /* ---- chipy pod numerem (Piętro/Budynek) ---- */
  --mini-chip-bg:#1d3f46;
  --mini-chip-fg:#bfe4ea;
  --mini-chip-border:var(--line);

  /* ---- ikonki udogodnień ---- */
  --amen-bg:#1d3f46;
  --amen-fg:#bfe4ea;
  --amen-border:var(--line);
  --amen-hover-bg:#25535c;

  /* ---- szybka nawigacja nad mapą ---- */
  --quicknav-chip-bg:#17353B;
  --quicknav-chip-fg:#dfe;
  --quicknav-chip-hover-bg:#21535d;
  --quicknav-chip-border:var(--line);

  /* ---- tabela ---- */
  --table-head-bg:#17353B;
  --table-head-fg:#EAF4F6;
  --table-row-border:var(--line);

  /* ---- filtry (kontener + pola) ---- */
  --filters-bg:var(--card);
  --filter-chip-bg:var(--chip);
  --filter-chip-border:var(--line);

  /* pola wejściowe (select/number) */
  --input-bg:#1d3f46;
  --input-fg:#eaf4f6;
  --input-border:var(--line);
  --input-placeholder:#a7c6cc;

  /* suwak (dual) */
  --range-track:#2A4950;
  --range-fill:#2D7987;
  --range-thumb:#2D7987;
  --range-thumb-border:#0b2227;

  /* ---- highlight listy (opcjonalnie) ---- */
  --pick-border: var(--chip-on);
  --pick-bg: rgba(45,121,135,.15);

  /* ---- MODAL (popup: rzut / historia) ---- */
  --modal-bg: var(--card);                  /* tło karty modala */
  --modal-fg: #EAF4F6;                      /* tekst w modalu */
  --modal-border: var(--line);              /* obramowanie modala */
  --modal-overlay: rgba(0,0,0,.45);         /* tło przyciemnienia */
  --modal-title-fg: #ffffff;                /* kolor tytułu */
  --modal-subtitle-fg: #dfe;                /* kolor podtytułu */
  --modal-head-bg: var(--table-head-bg);    /* tło nagłówka tabeli w modalu */
  --modal-head-fg: var(--table-head-fg);    /* tekst nagłówka tabeli w modalu */

  /* ---- NOWE: indywidualne kolory przycisków w modalu ---- */
  --modal-x-bg: var(--btn-bg);              /* tło przycisku zamknięcia (X) */
  --modal-x-fg: var(--btn-fg);              /* kolor X */
  --modal-x-border: var(--modal-border);    /* obramowanie X */

  --modal-btn-bg: var(--btn-bg);            /* tło przycisków w modalu (np. „Otwórz”) */
  --modal-btn-fg: var(--btn-fg);            /* tekst przycisków w modalu */
  --modal-btn-border: var(--btn-border);    /* obramowanie przycisków w modalu */
}





*{box-sizing:border-box}
.rmp-shell{background:var(--shell);border-radius:28px;padding:16px;color:#F3F3F3;font:14px/1.5 Inter,system-ui,-apple-system,sans-serif;display:flex;flex-direction:column;gap:12px}

/* SEKCJE */
.rmp-sec-title{font-weight:700;font-size:18px;color:#fff;margin:2px 0 6px}

/* MAPA + LISTA */
.rmp-map-list{display:flex;gap:20px;align-items:flex-start}
.rmp-map-module{flex:2;min-width:0}
.rmp-stage{position:relative;width:100%;aspect-ratio: var(--ab-ratio, auto);border-radius:20px;overflow:hidden}
.rmp-canvas{position:absolute;inset:0}
.rmp-bg{width:100%;height:100%;object-fit:cover;pointer-events:none;display:block;border-radius:20px}
.rmp-svg{position:absolute;inset:0;width:100%;height:100%}
/* stroke nadaje JS z ustawień */
.rmp-poly{stroke-width:1.5;transition:fill .15s ease, filter .15s ease}
.rmp-poly.hover{filter:drop-shadow(0 0 12px rgba(255,255,255,.8))}

/* QUICK NAV */
.rmp-quicknav{position:absolute;left:50%;top:8px;transform:translateX(-50%);z-index:5;display:flex;gap:8px;flex-wrap:wrap;justify-content:center}
.rmp-quicknav .chip{
  padding:6px 10px;border-radius:999px;
  background:var(--quicknav-chip-bg);
  border:1px solid var(--quicknav-chip-border);
  color:var(--quicknav-chip-fg);
  cursor:pointer;white-space:nowrap
}
.rmp-quicknav .chip:hover{background:var(--quicknav-chip-hover-bg)}
.rmp-quicknav:empty{display:none}
.rmp-back-btn{
  position:absolute;right:10px;top:10px;z-index:6;padding:6px 10px;border-radius:999px;
  background:var(--quicknav-chip-bg);
  border:1px solid var(--quicknav-chip-border);
  color:var(--quicknav-chip-fg);
  cursor:pointer
}

/* LEGENDA */
.rmp-legend{display:flex;gap:16px;align-items:center;color:#EAF4F6;margin-top:4px}
.rmp-dot{display:inline-block;width:12px;height:12px;border-radius:50%;border:1px solid #0005;margin-right:6px}

/* LISTA – 3 kolumny; pierwsza kolumna = numer + chipy + ikonki */
.rmp-light{flex:1;min-width:320px;max-width:420px}
.rmp-light-list{display:flex;flex-direction:column;gap:10px;overflow:auto;border-radius:14px}
.rmp-light-item{
  background:var(--card);border:1px solid var(--line);border-radius:14px;padding:10px;
  display:grid;grid-template-columns:90px 1fr 160px;gap:10px;align-items:center;
  position:relative; /* << DODANE dla overlay */
  isolation:isolate; /* << DODANE: osobny stacking context */
}
.rmp-num{display:inline-block;min-width:56px;max-width:56px;padding:4px 0;border-radius:999px;background:#e6f2f5;color:#0a2830;text-align:center;font-weight:700;font-size:15px}
.rmp-mini{display:flex;gap:6px;margin-top:6px;flex-wrap:wrap}
.rmp-mini .chip{
  padding:2px 8px;border-radius:999px;
  background:var(--mini-chip-bg);
  border:1px solid var(--mini-chip-border);
  font-size:11px;color:var(--mini-chip-fg);
  white-space:nowrap
}
.rmp-amen{display:flex;gap:4px;margin-top:6px;flex-wrap:nowrap}
.rmp-amen .ico{
  width:18px;height:18px;border-radius:6px;
  background:var(--amen-bg);
  border:1px solid var(--amen-border);
  display:flex;align-items:center;justify-content:center;
  font-size:11px;font-weight:800;color:var(--amen-fg);
  cursor:default;user-select:none;transition:background .15s
}
.rmp-amen .ico:hover{background:var(--amen-hover-bg)}

.rmp-col-mid{display:grid;grid-auto-rows:min-content;gap:6px;white-space:nowrap}
.rmp-col-mid label{display:block;font-size:12px;opacity:.85;margin-bottom:2px}
.rmp-col-last{display:grid;grid-template-rows:repeat(3,min-content);gap:6px;justify-items:stretch}
.rmp-badge{display:inline-block;text-align:center;padding:4px 8px;border-radius:999px;font-weight:700;font-size:12px;color:#002228;white-space:nowrap}
.rmp-badge.st-available{background:rgba(34,197,94,.25);color:#a9f0bf}
.rmp-badge.st-reserved{background:rgba(250,204,21,.25);color:#ffe38a}
.rmp-badge.st-sold{background:rgba(239,68,68,.28);color:#ffb3b3}
.rmp-btn{
  background:var(--btn-bg);
  border:1px solid var(--btn-border);
  color:var(--btn-fg);
  padding:6px 10px;border-radius:10px;cursor:pointer;white-space:nowrap
}
.rmp-btn.wide{width:100%}

/* TABELA */
.rmp-table-wrap{background:transparent;border-radius:16px;overflow:auto;max-height:700px}
.rmp-grid{width:100%;border-collapse:collapse;color:#EAF4F6;background:var(--card);border:1px solid var(--line);border-radius:14px}
.rmp-grid thead tr{
  position:sticky;top:0;
  background:var(--table-head-bg);
  color:var(--table-head-fg);
}

/* FIX modal: biała obwódka na tabeli historii */
.rmp-history{
  border: 1px solid var(--line) !important;
  border-collapse: collapse !important;
  border-spacing: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}
.rmp-history th,
.rmp-history td,
.rmp-history tr{
  box-shadow: none !important;
  border-color: var(--line) !important;
}


.rmp-grid th,.rmp-grid td{padding:10px 12px;border-bottom:1px solid var(--line);text-align:left;white-space:nowrap}
.rmp-grid th{font-weight:400}
.rmp-bool{font-weight:700}
.rmp-bool.ok{color:#93e5b0}
.rmp-bool.no{color:#ffb1b1}

/* TOOLTIP */
.rmp-tooltip{position:fixed;z-index:9999;min-width:180px;max-width:320px;background:#0F2A31;color:#fff;border:1px solid var(--line);border-radius:12px;padding:10px;box-shadow:0 14px 32px rgba(0,0,0,.45);pointer-events:none}

/* MODAL */
.rmp-modal[hidden]{display:none}
.rmp-modal{position:fixed;inset:0;z-index:10000}
.rmp-modal-backdrop{position:absolute;inset:0;background:var(--modal-overlay, rgba(0,0,0,.45))}
.rmp-modal-card{
  position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  width:min(900px,94vw);max-height:84vh;overflow:auto;
  background:var(--modal-bg, var(--card));
  border:1px solid var(--modal-border, var(--line));
  border-radius:16px;padding:12px;
  color:var(--modal-fg, #EAF4F6);
  box-shadow:0 20px 60px rgba(0,0,0,.5)
}
.rmp-modal-card header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}
.rmp-modal-title{font-family:Inter,system-ui,sans-serif;font-size:18px;font-weight:700;margin:0;color:var(--modal-title-fg,#fff)}
.rmp-modal-subtitle{margin:0 0 8px 0;font-weight:700;letter-spacing:.3px;color:var(--modal-subtitle-fg,inherit)}
/* Historia cen – sticky nagłówek wewnątrz modala */
.rmp-history thead tr{
  position:sticky;top:0;
  background:var(--modal-head-bg, var(--table-head-bg));
  color:var(--modal-head-fg, var(--table-head-fg));
}

/* ===== NOWE: przycisk zamknięcia (X) — niezależne kolory ===== */
.rmp-modal-x{
  background: var(--modal-x-bg, var(--btn-bg));
  color: var(--modal-x-fg, var(--btn-fg));
  border: 1px solid var(--modal-x-border, var(--modal-border, var(--line)));
  width:32px;height:32px;border-radius:10px;cursor:pointer
}

/* Przyciski w kontekście modala (np. „Otwórz”) — niezależne kolory */
.rmp-modal .rmp-btn{
  background: var(--modal-btn-bg, var(--btn-bg));
  color: var(--modal-btn-fg, var(--btn-fg));
  border: 1px solid var(--modal-btn-border, var(--btn-border));
}

.rmp-history{width:100%;border-collapse:collapse}
.rmp-history th,.rmp-history td{padding:8px 10px;border-bottom:1px solid var(--line);text-align:left}
.rmp-pdf-frame{width:100%;height:82vh;border:0;border-radius:8px;outline:none;background:#0b2227}
.rmp-pdf-fallback{margin-top:8px;display:block}

/* Custom scrollbars */
.rmp-light-list,
.rmp-modal-card,
.rmp-table-wrap{scrollbar-width:thin;scrollbar-color:var(--scroll-thumb) var(--scroll)}
.rmp-light-list::-webkit-scrollbar,
.rmp-modal-card::-webkit-scrollbar,
.rmp-table-wrap::-webkit-scrollbar{width:10px;height:10px}
.rmp-light-list::-webkit-scrollbar-track,
.rmp-modal-card::-webkit-scrollbar-track,
.rmp-table-wrap::-webkit-scrollbar-track{background:var(--scroll);border-radius:10px}
.rmp-light-list::-webkit-scrollbar-thumb,
.rmp-modal-card::-webkit-scrollbar-thumb,
.rmp-table-wrap::-webkit-scrollbar-thumb{background:var(--scroll-thumb);border-radius:10px}

/* highlight selected list row — PODMIANA JEDNEJ REGUŁY */
.rmp-light-item.rmp-picked{
  /* ramka widoczna z każdej strony (wewnątrz, nie outline) */
  box-shadow: inset 0 0 0 2px var(--pick-border, var(--chip-on,#2D7987));
}
.rmp-light-item.rmp-picked::after{
  /* delikatne pojaśnienie tła; kolor może nadpisać JS przez --pick-bg */
  content:"";
  position:absolute; inset:0; border-radius:14px; pointer-events:none;
  background:var(--pick-bg, rgba(45,121,135,.15));
  z-index:0; /* << DODANE: nakładka pod treścią */
}
/* << DODANE: treść wiersza nad nakładką */
.rmp-light-item > *{ position:relative; z-index:1; }

/* ===== FILTRY NAD TABELĄ (DUAL SLIDER) ===== */
.rmp-filters{
  display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:8px 10px;margin-bottom:10px;
  background:var(--filters-bg);
  border:1px solid var(--line);border-radius:12px;
}
.rmp-filter{
  display:flex;align-items:center;gap:8px;padding:6px 8px;
  border:1px solid var(--filter-chip-border);
  background:var(--filter-chip-bg);
  border-radius:10px;white-space:nowrap;
}
.rmp-filter--range{display:flex;align-items:center;gap:8px}
.rmp-filter--range > label{margin:0 4px 0 0;font-weight:700;color:#fff;min-width:140px}

/* inputs/selects w filtrach */
.rmp-filters input[type="number"],
.rmp-filters select{
  height:30px;padding:0 8px;border-radius:8px;
  border:1px solid var(--input-border);
  background:var(--input-bg);
  color:var(--input-fg);
  outline:none;
}
.rmp-filters input[type="number"]::placeholder{color:var(--input-placeholder)}
.rmp-filters input[type="number"]{width:88px}
.rmp-filters select{min-width:140px}

/* checkboxy (amenities) */
.rmp-filter input[type="checkbox"]{width:18px;height:18px;accent-color: var(--chip-on);cursor:pointer}

/* --- Podwójny suwak: jeden pasek, dwa uchwyty (nakładane) --- */
.rmp-dual{position:relative;display:inline-block;width:240px;height:22px}
.rmp-dual-track{position:absolute;left:0;right:0;top:50%;height:6px;transform:translateY(-50%);border-radius:999px;background:var(--range-track)}
.rmp-dual-range{position:absolute;top:50%;height:6px;transform:translateY(-50%);border-radius:999px;background:var(--range-fill);left:0;width:0}

/* dwa inputy range leżą jeden na drugim */
.rmp-dual input[type="range"]{
  position:absolute;left:0;top:0;width:100%;height:22px;margin:0;background:transparent;outline:0;
  -webkit-appearance:none;appearance:none;pointer-events:none;
}
/* bazowe warstwowanie; JS może to podmieniać (bring min/max) */
.rmp-dual input.min{ z-index:2 }
.rmp-dual input.max{ z-index:3 }

/* WebKit */
.rmp-dual input[type="range"]::-webkit-slider-runnable-track{height:6px;background:transparent}
.rmp-dual input[type="range"]::-webkit-slider-thumb{
  -webkit-appearance:none;width:14px;height:14px;border-radius:50%;
  background:var(--range-thumb);border:2px solid var(--range-thumb-border);margin-top:-4px;pointer-events:auto;
}
/* Firefox */
.rmp-dual input[type="range"]::-moz-range-track{height:6px;background:transparent}
.rmp-dual input[type="range"]::-moz-range-thumb{
  width:14px;height:14px;border-radius:50%;
  background:var(--range-thumb);border:2px solid var(--range-thumb-border);pointer-events:auto;
}
/* MS/Edge legacy */
.rmp-dual input[type="range"]::-ms-track{height:6px;border-color:transparent;color:transparent;background:transparent}
.rmp-dual input[type="range"]::-ms-thumb{
  width:14px;height:14px;border-radius:50%;
  background:var(--range-thumb);border:2px solid var(--range-thumb-border);pointer-events:auto;
}

/* drobne dopieszczenie typografii */
.rmp-filters label{ font-weight:400; color:#ffffff }

/* respons – przy mniejszej szerokości elementy elegancko się zawijają */
@media (max-width: 920px){
  .rmp-filters{ gap:8px }
  .rmp-dual{ width:200px }
  .rmp-filter--range > label{ min-width:120px }
}

/* Wymuszenie trzech linii filtrów */
.rmp-filters-row{width:100%;display:flex;align-items:center;gap:10px;flex-wrap:wrap}

/* Wyśrodkowanie myślników w miejscu przycisku */
.rmp-btn.rmp-disabled{
  display: inline-flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  pointer-events: none; /* na wszelki wypadek */
}

/* Niech „przycisk” z myślnikami ma pełną szerokość jak normalny wide */
.rmp-col-last .rmp-btn.rmp-disabled.wide{
  width: 100%;
}



/* obwódka od tego miejsca usuwana */
/* FIX: zbij białą „obwódkę” nadawaną globalnie przez motyw */
.rmp-grid{
  border: 1px solid var(--line) !important;
  border-collapse: collapse !important;
  border-spacing: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
}

/* Upewnij się, że wewnętrzne linie też nie biorą koloru z motywu */
.rmp-grid th,
.rmp-grid td,
.rmp-grid tr{
  box-shadow: none !important;
  border-color: var(--line) !important;
}

/* Gdyby motyw cieniował wrapper tabeli */
.rmp-table-wrap{
  box-shadow: none !important;
  background: transparent !important;
}