.oszwm-map { position: relative; }

.oszwm-map__notice{
	background:#fff3cd;
	border:1px solid #ffeeba;
	padding:12px 14px;
}

.oszwm-map__svg svg{
	width:100%;
	height:auto;
	display:block;
}

/* Styl województw – wymagane: w SVG regiony mają mieć class="voiv" (albo my to łapiemy po data-voivodeship) */
.oszwm-map__svg [data-voivodeship]{
	fill:#cfeff2;               /* jasny turkus jak na screenie */
	stroke:#27a9b6;             /* turkusowy obrys */
	stroke-width:2;
	cursor:pointer;
	transition: fill .12s ease, stroke .12s ease, opacity .12s ease;
}

.oszwm-map__svg [data-voivodeship]:hover{
	fill:#bfe7eb;
}

.oszwm-map__svg [data-voivodeship].is-active{
	fill:#a6dde2;
	stroke:#1e9aa6;
}

/* MODAL */
.oszwm-modal{
	position:fixed;
	inset:0;
	z-index:9999;
	display:none;
}

.oszwm-modal.is-open{ display:block; }

.oszwm-modal__backdrop{
	position:absolute;
	inset:0;
	background:rgba(0,0,0,.35);
}

.oszwm-modal__panel{
	position:relative;
	background:#fff;
	width:min(680px, calc(100vw - 24px));
	margin:60px auto 24px;
	border-radius:3px;
	box-shadow:0 10px 30px rgba(0,0,0,.25);
	padding:18px 18px 14px;
}

.oszwm-modal__close{
	position:absolute;
	right:10px;
	top:8px;
	border:0;
	background:transparent;
	font-size:26px;
	line-height:1;
	cursor:pointer;
	color:#666;
}

.oszwm-modal__header{
	padding-right:28px;
	border-bottom:1px solid #e8e8e8;
	padding-bottom:10px;
	margin-bottom:12px;
}

.oszwm-modal__title{
	margin:0;
	font-size:22px;
	font-weight:700;
	color:#1f2a30;
}

/* AKORDEON */
.oszwm-accordion{
	border:1px solid #e5e5e5;
	border-radius:3px;
	overflow:hidden;
}

.oszwm-acc{
	border-top:1px solid #e5e5e5;
}
.oszwm-acc:first-child{ border-top:0; }

.oszwm-acc__head{
	display:flex;
	align-items:center;
	justify-content:space-between;
	padding:10px 12px;
	background:#f7f7f7;
	cursor:pointer;
	user-select:none;
	font-weight:600;
}

.oszwm-acc__chev{
	width:0;
	height:0;
	border-left:6px solid transparent;
	border-right:6px solid transparent;
	border-top:8px solid #666;  /* trójkąt jak na screenie */
	transition: transform .12s ease;
	margin-left:12px;
}

.oszwm-acc.is-open .oszwm-acc__chev{
	transform: rotate(180deg);
}

.oszwm-acc__body{
	display:none;
	padding:10px 12px 4px;
	background:#fff;
}

.oszwm-acc.is-open .oszwm-acc__body{
	display:block;
}

.oszwm-provider{
	padding:10px 0;
	border-top:1px solid #eee;
}
.oszwm-provider:first-child{ border-top:0; }

.oszwm-provider__name{
	font-weight:800;
	font-size:18px;
	margin:0 0 6px 0;
}

.oszwm-provider__row{
	margin:2px 0;
	color:#3a3a3a;
}

.oszwm-provider__row a{
	color:#2aa6b3;
	text-decoration:none;
}
.oszwm-provider__row a:hover{ text-decoration:underline; }

.oszwm-modal__loading,
.oszwm-modal__empty{
	padding:10px 0;
	color:#555;
}