/* ==========================================================================
   BusNaTrase.pl — skórka „Atrament + bursztyn" (szablon 2a) dla PANELU
   (logowanie + panel Subskrybenta/Autora/Admina). Ładowana PO user-panel.css
   i bnt-tokens.css — nadpisuje wyłącznie WYGLĄD istniejących selektorów
   .brc-up-*. Zero zmian treści i logiki (user-panel.js nietknięty).
   Wzorce wg panel-admin.css ze specyfikacji (topbar, zakładki, filtry,
   tabela, stany puste, odznaki). Tryb ciemny: <html data-theme="dark">.
   ========================================================================== */

/* ── Baza ────────────────────────────────────────────────────────────────── */

.brc-up-wrap,
.brc-up-wrap input,
.brc-up-wrap select,
.brc-up-wrap textarea,
.brc-up-wrap button,
.brc-up-wrap label,
.brc-up-wrap h2,
.brc-up-wrap h3,
.brc-up-wrap h4,
.brc-up-wrap h5,
.brc-up-wrap table {
	font-family: var(--bnt-font);
}

.brc-up-wrap { color: var(--bnt-text); color-scheme: light; }
[data-theme="dark"] .brc-up-wrap { color-scheme: dark; }

/* Twarde odcięcie od fontu motywu (v1.70.1) — jak w kalkulatorze */
#brc-up-root,
#brc-up-root *,
#brc-up-root *::before,
#brc-up-root *::after {
	font-family: var(--bnt-font) !important;
}

/* Ukryj paski przewijania w całym panelu (topbar/treść/modale/tabele) —
   przewijanie pozostaje funkcjonalne, znika tylko widoczny pasek (v1.70.5). */
#brc-up-root,
#brc-up-root * {
	scrollbar-width: none !important;      /* Firefox */
	-ms-overflow-style: none !important;   /* stare Edge/IE */
}
#brc-up-root::-webkit-scrollbar,
#brc-up-root *::-webkit-scrollbar {        /* Chrome/Safari/Edge */
	width: 0 !important;
	height: 0 !important;
	display: none !important;
}

.brc-up-panel { background: var(--bnt-panel-bg); }
.brc-up-backdrop { background: rgba(30, 34, 48, 0.6); }

.brc-up-muted { color: var(--bnt-text-helper); }

/* ── EKRAN LOGOWANIA (Subskrybent / Autor) ───────────────────────────────── */

.brc-up-login-card {
	max-width: 460px;
	margin: 7vh auto;
	background: var(--bnt-panel-bg);
	border: none;
	border-radius: var(--bnt-r-modal);
	box-shadow: var(--bnt-shadow-modal);
	padding: 34px 34px 30px;
}

.brc-up-logo-wrap {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 13px;
	margin-bottom: 22px;
}

.brc-up-login-title {
	font-size: var(--bnt-fs-title);
	font-weight: 700;
	color: var(--bnt-text);
	text-align: center;
	margin: 0 0 22px;
	letter-spacing: -0.3px;
}

.brc-up-pass-wrap { position: relative; }

.brc-up-show-pass {
	background: transparent;
	border: none;
	color: var(--bnt-text-placeholder);
	cursor: pointer;
	font-size: 16px;
}

.brc-up-show-pass:hover { color: var(--bnt-text); }

/* ── TOPBAR (nagłówek panelu) — atrament ─────────────────────────────────── */

.brc-up-header {
	background: var(--bnt-header-bg);
	color: var(--bnt-header-text);
	padding: 18px 32px;
	border-bottom: none;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
}

.brc-up-header-logo { display: flex; align-items: center; gap: 13px; text-decoration: none; }

.brc-up-greeting { font-size: 15px; color: #a9adbd; }
.brc-up-greeting strong { color: var(--bnt-header-text); font-weight: 600; }

.brc-up-header-user { display: flex; align-items: center; gap: 16px; }

/* „Wyloguj się →" — pigułka na atramencie */
.brc-up-logout-link {
	display: inline-flex;
	align-items: center;
	background: rgba(255, 255, 255, 0.12);
	color: var(--bnt-header-text) !important;
	border-radius: var(--bnt-r-pill);
	padding: 10px 16px;
	font-size: var(--bnt-fs-btn-sm);
	font-weight: 600;
	text-decoration: none !important;
	transition: background 0.15s;
}

.brc-up-logout-link:hover { background: rgba(255, 255, 255, 0.2); }

/* Dzwonek: emoji schowane, liniowa ikona przez maskę, bursztynowy licznik */
.brc-up-notif-bell {
	position: relative;
	width: 42px;
	height: 42px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.1);
	border: none;
	cursor: pointer;
	color: transparent;
	font-size: 0;
	line-height: 0;
	flex-shrink: 0;
}

.brc-up-notif-bell:hover { background: rgba(255, 255, 255, 0.2); }

.brc-up-notif-bell::before {
	content: "";
	position: absolute;
	inset: 10px;
	background: var(--bnt-header-text);
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9a6 6 0 1 1 12 0c0 5 2 6.2 2 6.2H4S6 14 6 9'/%3E%3Cpath d='M10 19a2.3 2.3 0 0 0 4 0'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9a6 6 0 1 1 12 0c0 5 2 6.2 2 6.2H4S6 14 6 9'/%3E%3Cpath d='M10 19a2.3 2.3 0 0 0 4 0'/%3E%3C/svg%3E") center / contain no-repeat;
}

.brc-up-notif-badge {
	position: absolute;
	top: -4px;
	right: -4px;
	min-width: 20px;
	height: 20px;
	border-radius: 10px;
	padding: 0 5px;
	background: var(--bnt-accent);
	color: var(--bnt-on-accent);
	font-size: 12px;
	font-weight: 700;
	line-height: 20px;
	text-align: center;
	border: 2px solid var(--bnt-header-bg);
	box-sizing: content-box;
}

/* Przełącznik dzień/noc w topbarze — przycisk wstrzykiwany przez bnt-panel-init.js */
.bnt-admin-theme {
	width: 42px;
	height: 42px;
	border-radius: 50%;
	border: none;
	cursor: pointer;
	background: rgba(255, 255, 255, 0.1);
	color: var(--bnt-header-text);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 18px;
	flex-shrink: 0;
}

.bnt-admin-theme:hover { background: rgba(255, 255, 255, 0.2); }

/* Pływający przełącznik — tylko ekran logowania (wstrzykiwany, gdy brak topbaru) */
.bnt-theme-toggle {
	position: fixed;
	top: 16px;
	right: 16px;
	z-index: 100001;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	border: none;
	cursor: pointer;
	background: var(--bnt-map-tile-bg);
	color: var(--bnt-map-tile-text);
	box-shadow: var(--bnt-shadow-tile);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 20px;
}

/* Logo (login + topbar) */
.bnt-logo-tile { width: 44px; height: 44px; display: block; flex-shrink: 0; }

.bnt-logo-word {
	font-size: 22px;
	font-weight: 700;
	letter-spacing: -0.4px;
	color: var(--bnt-text);
	line-height: 1;
	white-space: nowrap;
}

.brc-up-header .bnt-logo-word { color: var(--bnt-header-text); }
.bnt-logo-word-accent { color: var(--bnt-accent-text); }
.brc-up-header .bnt-logo-word-accent { color: var(--bnt-accent); }
.bnt-logo-word-tld { font-size: 16px; font-weight: 400; color: var(--bnt-text-secondary); }
.brc-up-header .bnt-logo-word-tld { color: #8b90a3; }

.brc-up-login-card .bnt-logo-tile { width: 54px; height: 54px; }
.brc-up-login-card .bnt-logo-word { font-size: 27px; }
.brc-up-login-card .bnt-logo-word-tld { font-size: 19px; }

/* ── ZAKŁADKI — podkreślenie bursztynem ──────────────────────────────────── */

.brc-up-tabs {
	background: var(--bnt-panel-bg);
	border-bottom: 1.5px solid var(--bnt-input-divider);
	padding: 0 24px;
	gap: 4px;
}

.brc-up-tab {
	background: none;
	border: none;
	border-bottom: 3px solid transparent;
	margin-bottom: -1.5px;
	border-radius: 0;
	padding: 17px 16px;
	font-size: 15px;
	font-weight: 600;
	color: var(--bnt-text-secondary);
	cursor: pointer;
}

.brc-up-tab:hover {
	background: none;
	color: var(--bnt-text);
}

.brc-up-tab.brc-up-tab-active {
	background: none;
	color: var(--bnt-text);
	font-weight: 700;
	border-bottom-color: var(--bnt-accent);
}

.brc-up-tab .brc-up-driver-ico { color: var(--bnt-text-secondary); }
.brc-up-tab.brc-up-tab-active .brc-up-driver-ico { color: var(--bnt-accent-text); }

.brc-up-tab-count {
	min-width: 22px;
	height: 22px;
	border-radius: 11px;
	padding: 0 6px;
	background: var(--bnt-accent);
	color: var(--bnt-on-accent);
	font-size: 13px;
	font-weight: 700;
	line-height: 22px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

/* ── TREŚĆ ZAKŁADEK / KARTY ──────────────────────────────────────────────── */

.brc-up-tab-pane { background: var(--bnt-panel-bg); padding: 28px 32px 40px; }

.brc-up-tab-desc {
	font-size: 15px;
	line-height: 1.55;
	color: var(--bnt-text-secondary);
}

.brc-up-card,
.brc-up-bus-form-card,
.brc-up-settings-section,
.brc-up-pending-ratings,
.brc-up-accepted-offers-section,
.brc-up-notify-block {
	background: var(--bnt-card-bg);
	border: none;
	border-radius: var(--bnt-r-card);
	padding: var(--bnt-pad-card);
	margin-bottom: var(--bnt-gap-card);
}

.brc-up-card-title,
.brc-up-settings-title {
	font-size: var(--bnt-fs-section);
	font-weight: 700;
	color: var(--bnt-text);
}

.brc-up-settings-desc {
	font-size: 14px;
	line-height: 1.5;
	color: var(--bnt-text-helper);
}

.brc-up-tab-toolbar { display: flex; align-items: center; gap: 16px; margin-bottom: var(--bnt-gap-card); }

/* ── POLA FORMULARZY ─────────────────────────────────────────────────────── */

.brc-up-field label {
	font-size: var(--bnt-fs-label);
	font-weight: 600;
	color: var(--bnt-text);
}

.brc-up-req { color: var(--bnt-accent-text); }

.brc-up-field input[type="text"],
.brc-up-field input[type="email"],
.brc-up-field input[type="tel"],
.brc-up-field input[type="number"],
.brc-up-field input[type="date"],
.brc-up-field input[type="time"],
.brc-up-field input[type="password"],
.brc-up-field select,
.brc-up-field textarea,
.brc-up-filter-input,
.brc-up-rate-comment,
.brc-up-price-val,
.brc-up-price-unit {
	font-family: var(--bnt-font);
	font-size: var(--bnt-fs-input);
	color: var(--bnt-text);
	background: var(--bnt-input-bg);
	border: 1.5px solid var(--bnt-input-border);
	border-radius: var(--bnt-r-input);
	padding: 12px 14px;
}

.brc-up-field input::placeholder,
.brc-up-field textarea::placeholder { color: var(--bnt-text-placeholder); }

.brc-up-field input:focus,
.brc-up-field select:focus,
.brc-up-field textarea:focus,
.brc-up-filter-input:focus {
	outline: none;
	border-color: var(--bnt-accent);
	box-shadow: var(--bnt-focus-ring);
}

.brc-up-field input[readonly] {
	background: var(--bnt-card-auto-bg);
	color: var(--bnt-text-secondary);
}

.brc-up-field small { font-size: var(--bnt-fs-helper); color: var(--bnt-text-helper); }

.brc-up-readonly-tag {
	padding: 3px 10px;
	border-radius: 999px;
	background: var(--bnt-card-auto-bg);
	color: var(--bnt-text-helper);
	font-size: 12px;
	font-weight: 600;
}

.brc-up-checkbox-label input[type="checkbox"],
.brc-up-f-type-label input[type="checkbox"] {
	width: 20px;
	height: 20px;
	border-radius: 6px;
	accent-color: var(--bnt-accent);
}

.brc-up-radio-label,
.brc-up-radio-line,
.brc-up-price-opt { color: var(--bnt-text); }

.brc-up-radio-label input,
.brc-up-radio-line input,
.brc-up-price-opt input { accent-color: var(--bnt-accent); }

.brc-up-radio-content strong { color: var(--bnt-text); }
.brc-up-radio-content small { color: var(--bnt-text-helper); }

/* Combobox Marka/Model */
.brc-up-combo-trigger {
	font-family: var(--bnt-font);
	font-size: var(--bnt-fs-input);
	color: var(--bnt-text);
	background: var(--bnt-input-bg);
	border: 1.5px solid var(--bnt-input-border);
	border-radius: var(--bnt-r-input);
	padding: 12px 14px;
}

.brc-up-combo-placeholder { color: var(--bnt-text-placeholder); }
.brc-up-combo-arrow { color: var(--bnt-text-secondary); }

.brc-up-combo-panel {
	background: var(--bnt-input-bg);
	border: 1.5px solid var(--bnt-input-border);
	border-radius: var(--bnt-r-input);
	box-shadow: 0 10px 24px rgba(30, 34, 48, 0.14);
}

.brc-up-combo-search {
	font-family: var(--bnt-font);
	border: 1.5px solid var(--bnt-input-border);
	border-radius: 8px;
	background: var(--bnt-panel-bg);
	color: var(--bnt-text);
}

.brc-up-combo-list li { color: var(--bnt-text); }
.brc-up-combo-list li:hover { background: var(--bnt-card-auto-bg); }
.brc-up-combo-add { color: var(--bnt-accent-text); }
.brc-up-combo-hint { color: var(--bnt-text-helper); font-weight: 400; }

/* ── PRZYCISKI ───────────────────────────────────────────────────────────── */

.brc-up-btn-primary {
	background: var(--bnt-accent);
	color: var(--bnt-on-accent);
	border: none;
	border-radius: 12px;
	font-family: var(--bnt-font);
	font-size: 16px;
	font-weight: 700;
	padding: 14px 28px;
	cursor: pointer;
	transition: background 0.15s, transform 0.15s;
}

.brc-up-btn-primary:hover {
	background: var(--bnt-accent-hover);
	color: var(--bnt-on-accent);
	transform: translateY(-1px);
}

.brc-up-btn-primary:disabled { opacity: 0.55; transform: none; }

/* Logowanie: duży wariant przycisku głównego */
#brc-up-login-btn {
	width: 100%;
	font-size: var(--bnt-fs-btn);
	border-radius: var(--bnt-r-btn);
	padding: 18px;
}

.brc-up-btn-secondary {
	background: transparent;
	color: var(--bnt-text);
	border: 1.5px solid var(--bnt-dash-border);
	border-radius: 10px;
	font-family: var(--bnt-font);
	font-size: 14px;
	font-weight: 600;
	padding: 10px 16px;
	cursor: pointer;
}

.brc-up-btn-secondary:hover {
	background: var(--bnt-card-auto-bg);
	color: var(--bnt-text);
	border-color: var(--bnt-dash-border);
}

.brc-up-btn-icon {
	background: transparent;
	color: var(--bnt-text-secondary);
	border: 1.5px solid var(--bnt-input-border);
	border-radius: 10px;
	min-width: 40px;
	min-height: 40px;
	cursor: pointer;
}

.brc-up-btn-icon:hover {
	background: var(--bnt-card-auto-bg);
	border-color: var(--bnt-dash-border);
}

/* „Złóż ofertę" / akcje w wierszach ofert — atrament z bursztynem */
.brc-up-offers-count-btn {
	background: var(--bnt-ink);
	color: var(--bnt-accent);
	border: none;
	font-weight: 700;
}

.brc-up-offers-count-btn:hover { background: #2a2f42; }

[data-theme="dark"] .brc-up-offers-count-btn {
	background: var(--bnt-accent);
	color: var(--bnt-on-accent);
}

.brc-up-wrap button:focus-visible {
	outline: none;
	box-shadow: var(--bnt-focus-ring);
}

/* ── FILTRY MARKETPLACE — scalone w jedną kartę ──────────────────────────── */

.brc-up-inq-filter-bar {
	background: var(--bnt-card-bg);
	border: none;
	border-radius: var(--bnt-r-card) var(--bnt-r-card) 0 0;
	padding: 20px 26px 10px;
	margin: 0;
}

.brc-up-inq-filter-bar2 {
	background: var(--bnt-card-bg);
	border: none;
	border-radius: 0 0 var(--bnt-r-card) var(--bnt-r-card);
	padding: 10px 26px 20px;
	margin: 0 0 var(--bnt-gap-card);
}

.brc-up-inq-filter-label {
	font-size: 14px;
	font-weight: 600;
	color: var(--bnt-text);
}

/* Pigułki promienia */
.brc-up-filter-btn {
	padding: 10px 18px;
	border-radius: 999px;
	border: 1.5px solid var(--bnt-input-border);
	background: var(--bnt-input-bg);
	color: var(--bnt-text-secondary);
	font-family: var(--bnt-font);
	font-size: 14px;
	font-weight: 600;
	cursor: pointer;
}

.brc-up-filter-btn:hover { border-color: var(--bnt-accent); color: var(--bnt-text); }

.brc-up-filter-btn.brc-up-filter-active {
	border-color: var(--bnt-accent);
	background: var(--bnt-accent);
	color: var(--bnt-on-accent);
	font-weight: 700;
}

.brc-up-inq-count-badge { font-size: 14px; color: var(--bnt-text-helper); }
.brc-up-f-type-label { font-size: 14px; font-weight: 600; color: var(--bnt-text); }
.brc-up-filter-input { padding: 10px 12px; font-size: 15px; }

/* ── STANY PUSTE — kafel z ikoną ─────────────────────────────────────────── */

.brc-up-empty { padding: 56px 0; }

.brc-up-empty-icon {
	width: 76px;
	height: 76px;
	border-radius: 22px;
	background: var(--bnt-accent-tile);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 34px;
	line-height: 1;
	color: var(--bnt-accent-text);
}

.brc-up-empty-icon .brc-up-driver-ico { width: 40px; height: 40px; color: var(--bnt-accent-text); }

.brc-up-empty p { font-size: 18px; font-weight: 600; color: var(--bnt-text); }
.brc-up-empty .brc-up-empty-hint { font-size: 15px; font-weight: 400; color: var(--bnt-text-helper); }

/* ── TABELE (marketplace / flota / kierowcy) ─────────────────────────────── */

.brc-up-inq-scroll {
	border: 1.5px solid var(--bnt-input-divider);
	border-radius: 16px;
	overflow: auto;
	background: var(--bnt-panel-bg);
}

.brc-up-inq-table { border: none; }

.brc-up-inq-table thead th {
	background: var(--bnt-card-bg);
	color: var(--bnt-text-secondary);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	padding: 14px 20px;
	border-bottom: none;
}

.brc-up-inq-table tbody td {
	font-size: 15px;
	color: var(--bnt-text);
	padding: 16px 20px;
	border-top: 1.5px solid var(--bnt-input-divider);
	border-bottom: none;
}

.brc-up-inq-table tbody tr:hover td { background: var(--bnt-card-auto-bg); }

.brc-up-route-cell .brc-up-arrow { color: var(--bnt-accent-text); }

/* Odznaki dystansu od bazy */
.brc-up-dist-badge {
	padding: 5px 12px;
	border-radius: 999px;
	font-size: 13px;
	font-weight: 700;
}

.brc-up-dist-near { background: #dcefe6; color: #24734f; }
.brc-up-dist-mid { background: var(--bnt-accent-tile); color: var(--bnt-accent-text); }
.brc-up-dist-100 { background: var(--bnt-accent-tile); color: var(--bnt-accent-text); }
.brc-up-dist-far { background: var(--bnt-card-auto-bg); color: var(--bnt-text-secondary); }

[data-theme="dark"] .brc-up-dist-near { background: #1f3a2e; color: #3fbd86; }

.brc-up-status-badge {
	padding: 5px 12px;
	border-radius: 999px;
	font-size: 13px;
	font-weight: 700;
}

.brc-up-drv-rate-badge {
	background: #dcefe6;
	color: #24734f;
	padding: 5px 12px;
	border-radius: 999px;
	font-size: 13px;
	font-weight: 700;
}

[data-theme="dark"] .brc-up-drv-rate-badge { background: #1f3a2e; color: #3fbd86; }

/* ── POWIADOMIENIA / AUTO-OFERTA / PRIORYTET ─────────────────────────────── */

.brc-up-notify-block-hdr { color: var(--bnt-text); }
.brc-up-notify-items td { border-color: var(--bnt-input-divider); color: var(--bnt-text); }

.brc-up-priority-list { border: 1.5px solid var(--bnt-input-divider); border-radius: var(--bnt-r-input); }
.brc-up-priority-item { border-bottom: 1.5px solid var(--bnt-input-divider); background: var(--bnt-panel-bg); color: var(--bnt-text); }
.brc-up-priority-handle { color: var(--bnt-text-placeholder); }

.brc-up-priority-up,
.brc-up-priority-down {
	background: transparent;
	border: 1.5px solid var(--bnt-input-border);
	border-radius: 8px;
	color: var(--bnt-text-secondary);
	cursor: pointer;
	min-width: 32px;
	min-height: 32px;
}

.brc-up-priority-up:hover,
.brc-up-priority-down:hover { border-color: var(--bnt-accent); color: var(--bnt-text); }

/* ── OCENY / GWIAZDKI ────────────────────────────────────────────────────── */

.brc-up-star-full { color: var(--bnt-accent-text); }
.brc-up-star-empty { color: var(--bnt-rail); }

.brc-up-star-half {
	background: linear-gradient(90deg, var(--bnt-accent-text) 50%, var(--bnt-rail) 50%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}

.brc-up-si-star { color: var(--bnt-rail); cursor: pointer; }
.brc-up-si-star.brc-up-si-on { color: var(--bnt-accent-text); }

.brc-up-stars-num { color: var(--bnt-text); font-weight: 600; }

.brc-up-rate-form {
	background: var(--bnt-panel-bg);
	border: 1.5px solid var(--bnt-input-divider);
	border-radius: var(--bnt-r-input);
}

.brc-up-rate-label { color: var(--bnt-text); font-weight: 600; }
.brc-up-rep-row { color: var(--bnt-text); border-color: var(--bnt-input-divider); }
.brc-up-rep-review { border-color: var(--bnt-input-divider); color: var(--bnt-text); }
.brc-up-rep-comment { color: var(--bnt-text-secondary); }

/* ── SEKCJA ADMINA (w Ustawieniach) — bursztynowa obwódka ────────────────── */

.brc-up-admin-section {
	border: 1.5px dashed var(--bnt-accent);
	background: var(--bnt-card-bg);
}

.brc-up-admin-badge {
	background: var(--bnt-ink);
	color: var(--bnt-accent);
	border-radius: 999px;
	padding: 4px 12px;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.05em;
}

.brc-up-admin-user-dropdown {
	background: var(--bnt-input-bg);
	border: 1.5px solid var(--bnt-input-border);
	border-radius: var(--bnt-r-input);
	box-shadow: 0 10px 24px rgba(30, 34, 48, 0.14);
	color: var(--bnt-text);
}

/* ── MODALE (szczegóły / edycja / hasło / SMS / ankieta) ─────────────────── */

#brc-up-details-overlay,
#brc-up-edit-inq-overlay,
#brc-up-pwd-overlay,
#brc-up-sms-overlay,
#brc-up-survey-overlay,
#brc-up-notif-overlay {
	background: rgba(30, 34, 48, 0.55);
}

.brc-up-details-modal,
.brc-up-pwd-modal,
.brc-up-survey-modal {
	background: var(--bnt-panel-bg);
	border: none;
	border-radius: var(--bnt-r-modal);
	box-shadow: var(--bnt-shadow-modal);
}

.brc-up-details-modal-hdr,
.brc-up-pwd-hdr {
	background: var(--bnt-header-bg);
	color: var(--bnt-header-text);
	border-bottom: none;
	border-radius: var(--bnt-r-modal) var(--bnt-r-modal) 0 0;
}

.brc-up-details-title,
.brc-up-pwd-hdr h3 {
	color: var(--bnt-header-text);
	font-size: var(--bnt-fs-title);
	font-weight: 700;
}

.brc-up-details-close-btn {
	background: rgba(255, 255, 255, 0.12);
	color: var(--bnt-header-text);
	border: none;
	border-radius: 50%;
	width: 36px;
	height: 36px;
	cursor: pointer;
	font-size: 18px;
}

.brc-up-details-close-btn:hover { background: rgba(255, 255, 255, 0.2); }

.brc-up-details-body { color: var(--bnt-text); }

.brc-up-details-body table th {
	background: var(--bnt-card-bg);
	color: var(--bnt-text-secondary);
	font-size: 13px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
}

.brc-up-details-body table td {
	color: var(--bnt-text);
	border-color: var(--bnt-input-divider);
}

.brc-up-pwd-intro { color: var(--bnt-text-secondary); }

.brc-up-pwd-box {
	background: var(--bnt-card-auto-bg);
	border: 1.5px solid var(--bnt-input-border);
	border-radius: var(--bnt-r-input);
}

.brc-up-pwd-value { color: var(--bnt-text); }

/* Pole kodu SMS ma style inline — dopasowanie kolorów wymaga !important (tylko wygląd) */
#brc-up-sms-code {
	background: var(--bnt-input-bg) !important;
	color: var(--bnt-text) !important;
	border: 1.5px solid var(--bnt-input-border) !important;
	border-radius: var(--bnt-r-input) !important;
	font-family: var(--bnt-font) !important;
}

/* Karta Google Calendar — inputy mają style inline (jw.) */
#brc-up-gcal-card input[type="text"] {
	background: var(--bnt-input-bg) !important;
	color: var(--bnt-text) !important;
	border: 1.5px solid var(--bnt-input-border) !important;
	border-radius: var(--bnt-r-input) !important;
	font-family: var(--bnt-font) !important;
}

#brc-up-gcal-card input[readonly] { background: var(--bnt-card-auto-bg) !important; }
#brc-up-gcal-card summary { color: var(--bnt-text) !important; }
#brc-up-gcal-card ol { color: var(--bnt-text-secondary) !important; }

/* ── Sekcja aplikacji mobilnej (Moje dane) — style inline w tabeli urządzeń ─ */

#brc-up-app-dev-tbl td { color: var(--bnt-text); }

.brc-up-app-logout,
#brc-up-app-logout-all {
	font-family: var(--bnt-font);
	font-weight: 600;
}

/* ── Komunikaty (notice bez stylów inline) ───────────────────────────────── */

.brc-up-notice {
	border-radius: var(--bnt-r-input);
	font-family: var(--bnt-font);
}

/* ── Mobile ──────────────────────────────────────────────────────────────── */

@media (max-width: 640px) {
	.brc-up-header { padding: 14px 16px; }
	.brc-up-tab-pane { padding: 18px 16px 28px; }
	.brc-up-tabs { padding: 0 8px; }
	.brc-up-login-card { margin: 4vh 16px; padding: 26px 20px; }
	.brc-up-greeting { display: none; }
	.brc-up-inq-filter-bar,
	.brc-up-inq-filter-bar2 { padding-left: 16px; padding-right: 16px; }
}
